summaryrefslogtreecommitdiff
path: root/tests/nnapi
diff options
context:
space:
mode:
Diffstat (limited to 'tests/nnapi')
-rw-r--r--tests/nnapi/CMakeLists.txt51
-rw-r--r--tests/nnapi/nnapi_gtest.skip.armv7l-linux57
-rw-r--r--tests/nnapi/nnapi_gtest.skip.armv7l-linux.acl_neon30
-rw-r--r--tests/nnapi/nnapi_gtest.skip.armv7l-linux.cpu (renamed from tests/nnapi/nnapi_gtest.skip.armv7l-linux.neurun)50
-rw-r--r--tests/nnapi/nnapi_gtest.skip.armv7l-linux.pacl38
-rw-r--r--tests/nnapi/nnapi_gtest.skip.armv7l-tizen60
-rw-r--r--tests/nnapi/nnapi_gtest.skip.noarch.interp72
-rw-r--r--tests/nnapi/nnapi_gtest.skip.x86_64-linux130
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/README.md11
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/include/TestHarness.h209
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/slicing.py167
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/test_generator.py775
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/conv_1_h3_w2_SAME.mod.py11
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/stdout.txt.expect41
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/depthwise_conv.bin.mod.py11
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/stdout.txt.expect43
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/explicit_add.mod.py7
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/stdout.txt.expect21
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_float/addfloat.mod.py8
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_float/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_float/stdout.txt.expect23
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_full/addfloat.mod.py22
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_full/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_full/stdout.txt.expect46
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/lstm.mod.py161
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/stdout.txt.expect75
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/averpoolfloat.mod.py20
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/stdout.txt.expect48
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/quantized.mod.py11
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/stdout.txt.expect40
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/stdout.txt.expect93
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/vts_full.mod.py19
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/addfloat.mod.py12
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/stdout.txt.expect103
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/stdout.txt.expect51
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/weird_add.mod.py29
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/tests/test.py328
-rw-r--r--tests/nnapi/nnapi_test_generator/android-p/vts_generator.py247
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/README.md408
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/cts_generator.py314
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/include/TestHarness.h426
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/spec_visualizer.py266
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/spec_viz_template.html438
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/test_generator.py1236
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/lstm_float.mod.py145
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/stderr.txt.expect3
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/stdout.txt.expect107
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/depthwise_conv2d_quant8.mod.py43
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/stderr.txt.expect3
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/stdout.txt.expect82
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/conv_float.mod.py35
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/stderr.txt.expect3
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/stdout.txt.expect85
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/mean_implicit.mod.py41
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/stderr.txt.expect3
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/stdout.txt.expect262
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/conv_float.mod.py52
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/stderr.txt.expect3
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/stdout.txt.expect1848
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/add_internal.mod.py71
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/stderr.txt.expect3
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/stdout.txt.expect98
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/conv_float.mod.py61
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/stderr.txt.expect3
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/stdout.txt.expect1848
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/conv_quant8.mod.py35
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/stderr.txt.expect3
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/stdout.txt.expect85
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/conv_float.mod.py44
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/stderr.txt.expect3
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/stdout.txt.expect3688
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/lstm_float.mod.py145
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/stdout.txt.expect322
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/depthwise_conv2d_quant8.mod.py43
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/stdout.txt.expect150
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/conv_float.mod.py35
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/stdout.txt.expect142
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/mean_implicit.mod.py41
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/stdout.txt.expect381
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/conv_float.mod.py52
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/stdout.txt.expect3548
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/add_internal.mod.py71
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/stdout.txt.expect312
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/conv_float.mod.py61
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/stdout.txt.expect3548
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/conv_quant8.mod.py35
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/stdout.txt.expect142
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/conv_float.mod.py46
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/stderr.txt.expect2
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/stdout.txt.expect7084
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/tests/test.py328
-rw-r--r--tests/nnapi/nnapi_test_generator/android-q-beta/vts_generator.py361
-rw-r--r--tests/nnapi/specs/Ex/argmax_ex_float_1.mod.py2
-rw-r--r--tests/nnapi/specs/Ex/argmax_ex_float_2.mod.py2
-rw-r--r--tests/nnapi/specs/Ex/argmax_ex_int32.mod.py2
-rw-r--r--tests/nnapi/specs/Ex/argmax_ex_neg_axis_float.mod.py2
-rw-r--r--tests/nnapi/specs/Ex/argmax_ex_neg_axis_int32.mod.py2
-rw-r--r--tests/nnapi/specs/Ex/argmax_ex_quant8.mod.py2
-rw-r--r--tests/nnapi/specs/Ex/argmax_ex_quant8_neg_axis.mod.py2
-rw-r--r--tests/nnapi/specs/Ex/gather_ex_2D_2D_float_1.mod.py22
-rw-r--r--tests/nnapi/specs/Ex/gather_ex_2D_2D_float_2.mod.py23
-rw-r--r--tests/nnapi/specs/Ex/gather_ex_2D_3D_float_1.mod.py22
-rw-r--r--tests/nnapi/specs/Ex/gather_ex_2D_3D_float_2.mod.py23
-rw-r--r--tests/nnapi/specs/Ex/gather_ex_3D_2D_float_1.mod.py29
-rw-r--r--tests/nnapi/specs/Ex/gather_ex_3D_2D_float_2.mod.py29
-rw-r--r--tests/nnapi/specs/Ex/gather_ex_3D_2D_float_3.mod.py26
-rw-r--r--tests/nnapi/specs/Ex/gather_ex_4D_float.mod.py41
-rw-r--r--tests/nnapi/specs/Ex/greater_equal_ex.mod.py35
-rw-r--r--tests/nnapi/specs/Ex/less_ex.mod.py35
-rw-r--r--tests/nnapi/specs/Ex/pack_ex_2D_float_1.mod.py (renamed from tests/nnapi/specs/Ex/pack_ex_3D_float_1.mod.py)8
-rw-r--r--tests/nnapi/specs/Ex/pack_ex_2D_float_2.mod.py (renamed from tests/nnapi/specs/Ex/pack_ex_3D_float_2.mod.py)10
-rw-r--r--tests/nnapi/specs/Ex/pack_ex_2D_int_1.mod.py (renamed from tests/nnapi/specs/Ex/pack_ex_3D_int_1.mod.py)8
-rw-r--r--tests/nnapi/specs/Ex/pack_ex_2D_int_2.mod.py (renamed from tests/nnapi/specs/Ex/pack_ex_3D_int_2.mod.py)10
-rw-r--r--tests/nnapi/specs/Ex/prelu_ex_broadcast_float_1.mod.py23
-rw-r--r--tests/nnapi/specs/Ex/prelu_ex_broadcast_quant8_1.mod.py24
-rw-r--r--tests/nnapi/specs/Ex/prelu_ex_float_2.mod.py22
-rw-r--r--tests/nnapi/specs/Ex/prelu_ex_quant8_1.mod.py23
-rw-r--r--tests/nnapi/specs/Ex/reduce_max_ex_2D_float.mod.py (renamed from tests/nnapi/specs/Ex/tensorflowmax_ex_2D_float.mod.py)2
-rw-r--r--tests/nnapi/specs/Ex/reduce_max_ex_2D_int32.mod.py (renamed from tests/nnapi/specs/Ex/tensorflowmax_ex_2D_int32.mod.py)2
-rw-r--r--tests/nnapi/specs/Ex/reduce_max_ex_4D_float_reducing_C.mod.py (renamed from tests/nnapi/specs/Ex/tensorflowmax_ex_4D_float_reducing_C.mod.py)2
-rw-r--r--tests/nnapi/specs/Ex/reduce_max_ex_4D_float_reducing_HW.mod.py (renamed from tests/nnapi/specs/Ex/tensorflowmax_ex_4D_float_reducing_HW.mod.py)2
-rw-r--r--tests/nnapi/specs/Ex/reduce_max_ex_float.mod.py (renamed from tests/nnapi/specs/Ex/tensorflowmax_ex_float.mod.py)2
-rw-r--r--tests/nnapi/specs/Ex/reduce_max_ex_float_1.mod.py (renamed from tests/nnapi/specs/Ex/tensorflowmax_ex_float_1.mod.py)2
-rw-r--r--tests/nnapi/specs/Ex/reduce_max_ex_float_2.mod.py (renamed from tests/nnapi/specs/Ex/tensorflowmax_ex_float_2.mod.py)2
-rw-r--r--tests/nnapi/specs/Ex/reduce_max_ex_quant8_1.mod.py (renamed from tests/nnapi/specs/Ex/tensorflowmax_ex_quant8_1.mod.py)2
-rw-r--r--tests/nnapi/specs/Ex/reduce_max_ex_quant8_2.mod.py (renamed from tests/nnapi/specs/Ex/tensorflowmax_ex_quant8_2.mod.py)2
-rw-r--r--tests/nnapi/specs/Ex/split_ex_1D_float.mod.py3
-rw-r--r--tests/nnapi/specs/Ex/split_ex_1D_int32.mod.py3
-rw-r--r--tests/nnapi/specs/Ex/split_ex_4D_float_1.mod.py3
-rw-r--r--tests/nnapi/specs/Ex/split_ex_4D_float_2.mod.py3
-rw-r--r--tests/nnapi/specs/Ex/split_ex_4D_float_3.mod.py3
-rw-r--r--tests/nnapi/specs/Ex/split_ex_4D_int32_1.mod.py3
-rw-r--r--tests/nnapi/specs/Ex/split_ex_4D_int32_2.mod.py3
-rw-r--r--tests/nnapi/specs/Ex/split_ex_4D_int32_3.mod.py3
-rw-r--r--tests/nnapi/specs/Ex/split_ex_4D_int32_4.mod.py3
-rw-r--r--tests/nnapi/specs/Ex/split_ex_4D_int32_5.mod.py3
-rw-r--r--tests/nnapi/specs/Ex/split_ex_4D_quant8.mod.py3
-rw-r--r--tests/nnapi/specs/Ex/transpose_conv_ex_float_4.mod.py56
-rw-r--r--tests/nnapi/specs/Ex/transpose_conv_ex_int_1.mod.py24
-rw-r--r--tests/nnapi/specs/Ex/transpose_conv_ex_int_2.mod.py25
-rw-r--r--tests/nnapi/specs/Ex/transpose_conv_ex_int_3.mod.py27
-rw-r--r--tests/nnapi/specs/Ex/unpack_ex_3D_float_1.mod.py8
-rw-r--r--tests/nnapi/specs/Ex/unpack_ex_3D_float_2.mod.py12
-rw-r--r--tests/nnapi/specs/Ex/unpack_ex_3D_int_1.mod.py8
-rw-r--r--tests/nnapi/specs/Ex/unpack_ex_3D_int_2.mod.py12
-rw-r--r--tests/nnapi/specs/V1_0/conv_1_h3_w2_SAME.mod.py2
-rw-r--r--tests/nnapi/specs/V1_0/conv_1_h3_w2_VALID.mod.py2
-rw-r--r--tests/nnapi/specs/V1_0/conv_3_h3_w2_SAME.mod.py2
-rw-r--r--tests/nnapi/specs/V1_0/conv_3_h3_w2_VALID.mod.py2
-rw-r--r--tests/nnapi/specs/V1_0/depthwise_conv.mod.py2
-rw-r--r--tests/nnapi/specs/V1_0/lstm3.mod.py1
-rw-r--r--tests/nnapi/specs/V1_0/lstm3_state.mod.py1
-rw-r--r--tests/nnapi/specs/V1_0/lstm3_state2.mod.py1
-rw-r--r--tests/nnapi/specs/V1_0/lstm3_state3.mod.py1
-rw-r--r--tests/nnapi/specs/V1_0/mobilenet_224_gender_basic_fixed.mod.py64
-rw-r--r--tests/nnapi/specs/V1_0/mobilenet_quantized.mod.py65
-rw-r--r--tests/nnapi/specs/V1_0/resize_bilinear.mod.py4
-rw-r--r--tests/nnapi/specs/V1_0/resize_bilinear_2.mod.py4
-rw-r--r--tests/nnapi/specs/V1_0/svdf_bias_present.mod.py138
-rwxr-xr-xtests/nnapi/specs/generate_test.sh2
-rw-r--r--tests/nnapi/src/TestValidation.cpp31
178 files changed, 32248 insertions, 476 deletions
diff --git a/tests/nnapi/CMakeLists.txt b/tests/nnapi/CMakeLists.txt
index d3c9cab4c..dc8ba865f 100644
--- a/tests/nnapi/CMakeLists.txt
+++ b/tests/nnapi/CMakeLists.txt
@@ -2,6 +2,20 @@ if (NOT BUILD_RUNTIME_NNAPI_TEST)
return()
endif(NOT BUILD_RUNTIME_NNAPI_TEST)
+if (GENERATE_RUNTIME_NNAPI_TESTS)
+ set(GENERATOR_SCRIPT "${CMAKE_CURRENT_SOURCE_DIR}/specs/generate_test.sh")
+ file(GLOB_RECURSE TEST_SPECS "${CMAKE_CURRENT_SOURCE_DIR}/specs/*.mod.py")
+ set(GENERATED_CPPS "${CMAKE_CURRENT_SOURCE_DIR}/src/generated/all_generated_V1_1_cts_tests.cpp"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src/generated/all_generated_V1_0_cts_tests.cpp"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src/generated/all_generated_Ex_cts_tests.cpp")
+ add_custom_command(OUTPUT ${GENERATED_CPPS}
+ COMMAND ${GENERATOR_SCRIPT}
+ DEPENDS ${GENERATOR_SCRIPT} ${TEST_SPECS}
+ COMMENT "Generating runtime nnapi tests")
+ add_custom_target(generate-runtime-nnapi-tests
+ DEPENDS ${GENERATED_CPPS})
+endif(GENERATE_RUNTIME_NNAPI_TESTS)
+
# Executable `runtime_run` (Dummy runner executable using NN API)
set(RUNTIME_NNAPI_TEST nnapi_gtest)
set(RUNTIME_NNAPI_TEST_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/TestMain.cpp
@@ -12,45 +26,38 @@ set(GENERATED_TEST_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/TestGenerated_V1_0.cpp
${CMAKE_CURRENT_SOURCE_DIR}/src/TestGenerated_V1_1.cpp
${CMAKE_CURRENT_SOURCE_DIR}/src/TestGenerated_Ex.cpp)
-# g++-6.3 can build TestGenerated_XXX.cpp.
-if (CMAKE_COMPILER_IS_GNUCC AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 6.3)
- set(RUNTIME_NNAPI_TEST_SRC ${RUNTIME_NNAPI_TEST_SRC} ${GENERATED_TEST_SRC})
-endif()
-
-# Both gbs and cross for tizen support building generated test
-if (OBS_BUILD)
- set(RUNTIME_NNAPI_TEST_SRC ${RUNTIME_NNAPI_TEST_SRC} ${GENERATED_TEST_SRC})
-endif()
+set(RUNTIME_NNAPI_TEST_SRC ${RUNTIME_NNAPI_TEST_SRC} ${GENERATED_TEST_SRC})
add_executable(${RUNTIME_NNAPI_TEST} ${RUNTIME_NNAPI_TEST_SRC})
+if (GENERATE_RUNTIME_NNAPI_TESTS)
+ add_dependencies(${RUNTIME_NNAPI_TEST} generate-runtime-nnapi-tests)
+endif(GENERATE_RUNTIME_NNAPI_TESTS)
+
nnfw_find_package(GTest)
-set(RUNTIME_NNAPI_TEST_SRC_INC ${NNFW_INCLUDE_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/include
+set(RUNTIME_NNAPI_TEST_SRC_INC ${CMAKE_CURRENT_SOURCE_DIR}/include
${CMAKE_CURRENT_SOURCE_DIR}/src)
target_include_directories(${RUNTIME_NNAPI_TEST} PRIVATE ${RUNTIME_NNAPI_TEST_SRC_INC})
if (BUILD_NEURUN)
- set(SKIPLIST_FILE_NAME ${RUNTIME_NNAPI_TEST}.skip.${TARGET_PLATFORM}.neurun)
-elseif (BUILD_PURE_ARM_COMPUTE)
set(SKIPLIST_FILE_NAME ${RUNTIME_NNAPI_TEST}.skip.${TARGET_PLATFORM})
+elseif (BUILD_PURE_ARM_COMPUTE)
+ set(SKIPLIST_FILE_NAME ${RUNTIME_NNAPI_TEST}.skip.${TARGET_PLATFORM}.pacl)
endif()
+target_link_libraries(${RUNTIME_NNAPI_TEST} nnfw_lib_nnapi)
target_link_libraries(${RUNTIME_NNAPI_TEST} gtest)
target_link_libraries(${RUNTIME_NNAPI_TEST} ${LIB_PTHREAD} dl)
-install(TARGETS nnapi_gtest DESTINATION unittest)
+install(TARGETS ${RUNTIME_NNAPI_TEST} DESTINATION unittest)
install(FILES ${SKIPLIST_FILE_NAME}
DESTINATION unittest
RENAME ${RUNTIME_NNAPI_TEST}.skip
OPTIONAL)
-# If build both runtime (pure_arm_compute and neurun) at once,
-# install both skiplist file as backup
-if (BUILD_NEURUN AND BUILD_PURE_ARM_COMPUTE)
- set(SKIPLIST_ALL_RUNTIME
- ${RUNTIME_NNAPI_TEST}.skip.${TARGET_PLATFORM}
- ${RUNTIME_NNAPI_TEST}.skip.${TARGET_PLATFORM}.neurun)
- install(FILES ${SKIPLIST_ALL_RUNTIME} DESTINATION unittest OPTIONAL)
-endif()
+# Install skiplist file for target as backup
+FILE(GLOB SKIPLIST_TARGET ${CMAKE_CURRENT_SOURCE_DIR}/${RUNTIME_NNAPI_TEST}.skip.${TARGET_PLATFORM}*)
+FILE(GLOB SKIPLIST_NOARCH ${CMAKE_CURRENT_SOURCE_DIR}/${RUNTIME_NNAPI_TEST}.skip.noarch.*)
+list(APPEND SKIPLIST_ALL_RUNTIME ${SKIPLIST_TARGET} ${SKIPLIST_NOARCH})
+install(FILES ${SKIPLIST_ALL_RUNTIME} DESTINATION unittest OPTIONAL)
diff --git a/tests/nnapi/nnapi_gtest.skip.armv7l-linux b/tests/nnapi/nnapi_gtest.skip.armv7l-linux
index 1c85418a9..124634a3f 100644
--- a/tests/nnapi/nnapi_gtest.skip.armv7l-linux
+++ b/tests/nnapi/nnapi_gtest.skip.armv7l-linux
@@ -1,44 +1,15 @@
-GeneratedTests.add_broadcast_quant8
-GeneratedTests.add_quant8
-GeneratedTests.argmax_ex_quant8*
-GeneratedTests.logical_not_ex*
-GeneratedTests.logistic_quant8_1
-GeneratedTests.logistic_quant8_2
-GeneratedTests.lsh_projection
-GeneratedTests.lsh_projection_2
-GeneratedTests.lsh_projection_weights_as_inputs
-GeneratedTests.lstm
-GeneratedTests.lstm2
-GeneratedTests.lstm2_state
-GeneratedTests.lstm2_state2
-GeneratedTests.lstm3
-GeneratedTests.lstm3_state
-GeneratedTests.lstm3_state2
-GeneratedTests.lstm3_state3
-GeneratedTests.lstm_state
-GeneratedTests.lstm_state2
-GeneratedTests.mul_broadcast_quant8
-GeneratedTests.mul_quant8
+#
+# Following tests will be skipped on armv7l-linux
+#
+# Not support operations
+GeneratedTests.lsh_projection*
+GeneratedTests.mobilenet*
+GeneratedTests.svdf*
+GeneratedTests.batch_to_space*
+GeneratedTests.space_to_batch*
+# Unexpected result
GeneratedTests.pack*
-GeneratedTests.svdf
-GeneratedTests.svdf2
-GeneratedTests.svdf_state
-ValidationTestCompilation.CreateExecution
-ValidationTestCompilation.Finish
-ValidationTestCompilation.SetPreference
-ValidationTestExecution.EventWait
-ValidationTestExecution.SetInput
-ValidationTestExecution.SetInputFromMemory
-ValidationTestExecution.SetOutput
-ValidationTestExecution.SetOutputFromMemory
-ValidationTestExecution.StartCompute
-ValidationTestIdentify.DuplicateInputs
-ValidationTestIdentify.DuplicateOutputs
-ValidationTestIdentify.InputIsOutput
-ValidationTestIdentify.OutputIsInput
-ValidationTestModel.AddOperand
-ValidationTestModel.CreateCompilation
-ValidationTestModel.Finish
-ValidationTestModel.IdentifyInputsAndOutputs
-ValidationTestModel.SetOperandValue
-ValidationTestModel.SetOperandValueFromMemory
+# Not support broadcast
+GeneratedTests.logical_or_ex_broadcast_4D_2D
+# Unsupported optional input that has shape
+GeneratedTests.lstm2*
diff --git a/tests/nnapi/nnapi_gtest.skip.armv7l-linux.acl_neon b/tests/nnapi/nnapi_gtest.skip.armv7l-linux.acl_neon
new file mode 100644
index 000000000..964696245
--- /dev/null
+++ b/tests/nnapi/nnapi_gtest.skip.armv7l-linux.acl_neon
@@ -0,0 +1,30 @@
+#
+# Following tests will be skipped on armv7l-linux acl_neon
+#
+# Not support operations
+TrivialTest.BroadcastMulTwo
+GeneratedTests.depth_to_space*
+GeneratedTests.dequantize
+GeneratedTests.embedding_lookup*
+GeneratedTests.hashtable_lookup*
+GeneratedTests.lsh_projection*
+GeneratedTests.mobilenet*
+GeneratedTests.reduce_min*
+GeneratedTests.space_to_depth*
+GeneratedTests.svdf*
+GeneratedTests.batch_to_space*
+GeneratedTests.space_to_batch*
+GeneratedTests.cast_ex*
+GeneratedTests.gather_ex*
+GeneratedTests.reduce_max_ex*
+GeneratedTests.topk_v2*
+# Unexpected result
+GeneratedTests.pack*
+# Float error
+GeneratedTests.exp_ex_1D_float
+GeneratedTests.exp_ex_2D_float
+# Unsupported optional input that has shape
+GeneratedTests.lstm2*
+# Unsupported data type
+GeneratedTests.argmax_ex_int32
+GeneratedTests.argmax_ex_neg_axis_int32
diff --git a/tests/nnapi/nnapi_gtest.skip.armv7l-linux.neurun b/tests/nnapi/nnapi_gtest.skip.armv7l-linux.cpu
index 59957ba60..39b7271ec 100644
--- a/tests/nnapi/nnapi_gtest.skip.armv7l-linux.neurun
+++ b/tests/nnapi/nnapi_gtest.skip.armv7l-linux.cpu
@@ -9,44 +9,16 @@ TrivialTest.BroadcastMulTwo
ValidationTestCompilation.SetPreference
ValidationTestCompilation.CreateExecution
ValidationTestCompilation.Finish
-ValidationTestIdentify.InputIsOutput
-ValidationTestIdentify.OutputIsInput
-ValidationTestIdentify.DuplicateInputs
-ValidationTestIdentify.DuplicateOutputs
-ValidationTestIdentify.Ok
ValidationTestExecution.SetInput
ValidationTestExecution.SetOutput
ValidationTestExecution.SetInputFromMemory
ValidationTestExecution.SetOutputFromMemory
ValidationTestExecution.StartCompute
ValidationTestExecution.EventWait
-GeneratedTests.add*
+GeneratedTests.add_broadcast*
+GeneratedTests.add_quant*
GeneratedTests.argmax*
-GeneratedTests.avg_pool_float_1
-GeneratedTests.avg_pool_float_2
-GeneratedTests.avg_pool_float_3
-GeneratedTests.avg_pool_float_4
-GeneratedTests.avg_pool_quant8_1
-GeneratedTests.avg_pool_quant8_2
-GeneratedTests.avg_pool_quant8_3
-GeneratedTests.avg_pool_quant8_4
-GeneratedTests.conv_float_channels
-GeneratedTests.conv_float_channels_weights_as_inputs
-GeneratedTests.conv_float_large
-GeneratedTests.conv_float_large_weights_as_inputs
-GeneratedTests.conv_float
-GeneratedTests.conv_float_weights_as_inputs
-GeneratedTests.conv_quant8_channels
-GeneratedTests.conv_quant8_channels_weights_as_inputs
-GeneratedTests.conv_quant8_large
-GeneratedTests.conv_quant8_large_weights_as_inputs
-GeneratedTests.conv_quant8
-GeneratedTests.conv_quant8_overflow
-GeneratedTests.conv_quant8_overflow_weights_as_inputs
-GeneratedTests.conv_quant8_weights_as_inputs
GeneratedTests.depth_to_space*
-GeneratedTests.depthwise_conv2d*
-GeneratedTests.depthwise_conv
GeneratedTests.dequantize
GeneratedTests.embedding_lookup
GeneratedTests.embedding_lookup_2d_nnfw
@@ -54,21 +26,17 @@ GeneratedTests.embedding_lookup_4d_nnfw
GeneratedTests.equal_ex*
GeneratedTests.exp_ex*
GeneratedTests.floor_
+GeneratedTests.greater_equal_ex*
GeneratedTests.hashtable_lookup*
GeneratedTests.l2_normalization*
GeneratedTests.l2_pool*
GeneratedTests.local_response_norm*
+GeneratedTests.less_ex*
GeneratedTests.logical_and_ex*
GeneratedTests.logical_or_ex*
GeneratedTests.logistic*
GeneratedTests.lsh_projection*
GeneratedTests.lstm*
-GeneratedTests.max_pool_float_1
-GeneratedTests.max_pool_float_2
-GeneratedTests.max_pool_float_3
-GeneratedTests.max_pool_quant8_1
-GeneratedTests.max_pool_quant8_2
-GeneratedTests.max_pool_quant8_3
GeneratedTests.mobilenet*
GeneratedTests.mul*
GeneratedTests.neg*
@@ -98,18 +66,10 @@ GeneratedTests.transpose*
GeneratedTests.cast_ex*
GeneratedTests.gather_ex*
GeneratedTests.strided_slice_ex*
-GeneratedTests.tensorflowmax_ex*
+GeneratedTests.reduce_max_ex*
GeneratedTests.reduce_sum_ex*
GeneratedTests.topk_v2*
-# Unhandled exception
-GeneratedTests.concat*
-GeneratedTests.fully_connected*
-GeneratedTests.reshape*
# Unexpected result
-GeneratedTests.avg_pool_quant8_5
-GeneratedTests.conv_quant8_2
-GeneratedTests.max_pool_quant8_4
-GeneratedTests.softmax*
GeneratedTests.split*
GeneratedTests.transpose_conv*
GeneratedTests.pack*
diff --git a/tests/nnapi/nnapi_gtest.skip.armv7l-linux.pacl b/tests/nnapi/nnapi_gtest.skip.armv7l-linux.pacl
new file mode 100644
index 000000000..c6c4f2694
--- /dev/null
+++ b/tests/nnapi/nnapi_gtest.skip.armv7l-linux.pacl
@@ -0,0 +1,38 @@
+GeneratedTests.greater_equal_ex*
+GeneratedTests.less_ex*
+GeneratedTests.lsh_projection
+GeneratedTests.lsh_projection_2
+GeneratedTests.lsh_projection_weights_as_inputs
+GeneratedTests.lstm
+GeneratedTests.lstm2
+GeneratedTests.lstm2_state
+GeneratedTests.lstm2_state2
+GeneratedTests.lstm3
+GeneratedTests.lstm3_state
+GeneratedTests.lstm3_state2
+GeneratedTests.lstm3_state3
+GeneratedTests.lstm_state
+GeneratedTests.lstm_state2
+GeneratedTests.prelu_ex_quant8_1
+GeneratedTests.prelu_ex_broadcast_quant8_1
+GeneratedTests.svdf*
+GeneratedTests.transpose_conv_ex_float_4
+ValidationTestCompilation.CreateExecution
+ValidationTestCompilation.Finish
+ValidationTestCompilation.SetPreference
+ValidationTestExecution.EventWait
+ValidationTestExecution.SetInput
+ValidationTestExecution.SetInputFromMemory
+ValidationTestExecution.SetOutput
+ValidationTestExecution.SetOutputFromMemory
+ValidationTestExecution.StartCompute
+ValidationTestIdentify.DuplicateInputs
+ValidationTestIdentify.DuplicateOutputs
+ValidationTestIdentify.InputIsOutput
+ValidationTestIdentify.OutputIsInput
+ValidationTestModel.AddOperand
+ValidationTestModel.CreateCompilation
+ValidationTestModel.Finish
+ValidationTestModel.IdentifyInputsAndOutputs
+ValidationTestModel.SetOperandValue
+ValidationTestModel.SetOperandValueFromMemory
diff --git a/tests/nnapi/nnapi_gtest.skip.armv7l-tizen b/tests/nnapi/nnapi_gtest.skip.armv7l-tizen
index ebb51de94..124634a3f 100644
--- a/tests/nnapi/nnapi_gtest.skip.armv7l-tizen
+++ b/tests/nnapi/nnapi_gtest.skip.armv7l-tizen
@@ -1,47 +1,15 @@
-GeneratedTests.lsh_projection
-GeneratedTests.lsh_projection_2
-GeneratedTests.lsh_projection_weights_as_inputs
-GeneratedTests.lstm
-GeneratedTests.lstm2
-GeneratedTests.lstm2_state
-GeneratedTests.lstm2_state2
-GeneratedTests.lstm3
-GeneratedTests.lstm3_state
-GeneratedTests.lstm3_state2
-GeneratedTests.lstm3_state3
-GeneratedTests.lstm_state
-GeneratedTests.lstm_state2
-GeneratedTests.notequal*
-GeneratedTests.prelu_ex*
-GeneratedTests.svdf
-GeneratedTests.svdf2
-GeneratedTests.svdf_state
-GeneratedTests.logical_not_ex*
-ValidationTestCompilation.CreateExecution
-ValidationTestCompilation.SetPreference
-ValidationTestIdentify.DuplicateInputs
-ValidationTestIdentify.DuplicateOutputs
-ValidationTestIdentify.InputIsOutput
-ValidationTestIdentify.OutputIsInput
-ValidationTestModel.AddOperand
-ValidationTestModel.CreateCompilation
-ValidationTestModel.Finish
-ValidationTestModel.IdentifyInputsAndOutputs
-ValidationTestModel.SetOperandValue
-ValidationTestModel.SetOperandValueFromMemory
-ValidationTestCompilation.Finish
-ValidationTestExecution.SetInput
-ValidationTestExecution.SetOutput
-ValidationTestExecution.SetInputFromMemory
-ValidationTestExecution.SetOutputFromMemory
-ValidationTestExecution.StartCompute
-ValidationTestExecution.EventWait
-GeneratedTests.add_broadcast_quant8
-GeneratedTests.add_quant8
-GeneratedTests.logical_and_ex*
-GeneratedTests.logical_or_ex*
-GeneratedTests.logistic_quant8_1
-GeneratedTests.logistic_quant8_2
-GeneratedTests.mul_broadcast_quant8
-GeneratedTests.mul_quant8
+#
+# Following tests will be skipped on armv7l-linux
+#
+# Not support operations
+GeneratedTests.lsh_projection*
+GeneratedTests.mobilenet*
+GeneratedTests.svdf*
+GeneratedTests.batch_to_space*
+GeneratedTests.space_to_batch*
+# Unexpected result
GeneratedTests.pack*
+# Not support broadcast
+GeneratedTests.logical_or_ex_broadcast_4D_2D
+# Unsupported optional input that has shape
+GeneratedTests.lstm2*
diff --git a/tests/nnapi/nnapi_gtest.skip.noarch.interp b/tests/nnapi/nnapi_gtest.skip.noarch.interp
new file mode 100644
index 000000000..6f97b8235
--- /dev/null
+++ b/tests/nnapi/nnapi_gtest.skip.noarch.interp
@@ -0,0 +1,72 @@
+#
+# Following tests will be skipped on x86_64-linux interpreter
+#
+# Not support operations
+TrivialTest.Broadcast*
+GeneratedTests.avg_pool_quant*
+GeneratedTests.concat_quant*
+GeneratedTests.conv_quant*
+GeneratedTests.depthwise_conv2d_quant*
+GeneratedTests.fully_connected_quant*
+GeneratedTests.max_pool_quant*
+GeneratedTests.softmax_quant*
+GeneratedTests.add_broadcast*
+GeneratedTests.add_quant*
+GeneratedTests.argmax*
+GeneratedTests.depth_to_space*
+GeneratedTests.dequantize
+GeneratedTests.embedding_lookup
+GeneratedTests.embedding_lookup_2d_nnfw
+GeneratedTests.embedding_lookup_4d_nnfw
+GeneratedTests.equal_ex*
+GeneratedTests.exp_ex*
+GeneratedTests.floor_
+GeneratedTests.greater_equal_ex*
+GeneratedTests.hashtable_lookup*
+GeneratedTests.l2_normalization*
+GeneratedTests.l2_pool*
+GeneratedTests.local_response_norm*
+GeneratedTests.less_ex*
+GeneratedTests.logical_and_ex*
+GeneratedTests.logical_or_ex*
+GeneratedTests.logistic*
+GeneratedTests.lsh_projection*
+GeneratedTests.lstm*
+GeneratedTests.mobilenet*
+GeneratedTests.mul*
+GeneratedTests.neg*
+GeneratedTests.notequal*
+GeneratedTests.prelu_ex*
+GeneratedTests.reduce_min*
+GeneratedTests.relu1*
+GeneratedTests.relu6*
+GeneratedTests.relu*
+GeneratedTests.resize_bilinear*
+GeneratedTests.rnn*
+GeneratedTests.rsqrt*
+GeneratedTests.mean*
+GeneratedTests.pad*
+GeneratedTests.space_to_depth*
+GeneratedTests.sqrt_ex*
+GeneratedTests.squared_difference_ex*
+GeneratedTests.svdf*
+GeneratedTests.tanh_
+GeneratedTests.batch_to_space*
+GeneratedTests.div_*
+GeneratedTests.space_to_batch*
+GeneratedTests.squeeze*
+GeneratedTests.strided_slice*
+GeneratedTests.sub*
+GeneratedTests.transpose*
+GeneratedTests.cast_ex*
+GeneratedTests.gather_ex*
+GeneratedTests.strided_slice_ex*
+GeneratedTests.reduce_max_ex*
+GeneratedTests.reduce_sum_ex*
+GeneratedTests.topk_v2*
+# Unexpected result
+GeneratedTests.split*
+GeneratedTests.transpose_conv*
+GeneratedTests.pack*
+GeneratedTests.unpack*
+GeneratedTests.logical_not_ex*
diff --git a/tests/nnapi/nnapi_gtest.skip.x86_64-linux b/tests/nnapi/nnapi_gtest.skip.x86_64-linux
index e87c4acf6..901a10391 100644
--- a/tests/nnapi/nnapi_gtest.skip.x86_64-linux
+++ b/tests/nnapi/nnapi_gtest.skip.x86_64-linux
@@ -1,88 +1,78 @@
#
# Following tests will be skipped on x86_64-linux
#
-# =====================
-# Fails in CPU fallback
-# =====================
-GeneratedTests.depth_to_space_float_1
-GeneratedTests.depth_to_space_float_2
-GeneratedTests.depth_to_space_float_3
-GeneratedTests.depth_to_space_quant8_1
-GeneratedTests.depth_to_space_quant8_2
+# Not support operations
+TrivialTest.AddTwo
+TrivialTest.AddThree
+TrivialTest.BroadcastAddTwo
+TrivialTest.BroadcastMulTwo
+ValidationTestCompilation.SetPreference
+ValidationTestCompilation.CreateExecution
+ValidationTestCompilation.Finish
+ValidationTestExecution.SetInput
+ValidationTestExecution.SetOutput
+ValidationTestExecution.SetInputFromMemory
+ValidationTestExecution.SetOutputFromMemory
+ValidationTestExecution.StartCompute
+ValidationTestExecution.EventWait
+GeneratedTests.add_broadcast*
+GeneratedTests.add_quant*
+GeneratedTests.argmax*
+GeneratedTests.depth_to_space*
+GeneratedTests.depthwise_conv2d_quant8*
GeneratedTests.dequantize
GeneratedTests.embedding_lookup
-GeneratedTests.exp_ex_1D_float
+GeneratedTests.embedding_lookup_2d_nnfw
+GeneratedTests.embedding_lookup_4d_nnfw
GeneratedTests.equal_ex*
-GeneratedTests.exp_ex_2D_float
+GeneratedTests.exp_ex*
GeneratedTests.floor_
-GeneratedTests.hashtable_lookup_float
-GeneratedTests.hashtable_lookup_quant8
-GeneratedTests.l2_normalization_2
-GeneratedTests.l2_normalization_large
-GeneratedTests.l2_normalization
-GeneratedTests.local_response_norm_float_1
-GeneratedTests.local_response_norm_float_2
-GeneratedTests.local_response_norm_float_3
-GeneratedTests.local_response_norm_float_4
+GeneratedTests.greater_equal_ex*
+GeneratedTests.hashtable_lookup*
+GeneratedTests.l2_normalization*
+GeneratedTests.l2_pool*
+GeneratedTests.less*
+GeneratedTests.local_response_norm*
GeneratedTests.logical_and_ex*
-GeneratedTests.lsh_projection_2
-GeneratedTests.lsh_projection
-GeneratedTests.lsh_projection_weights_as_inputs
-GeneratedTests.lstm2
-GeneratedTests.lstm2_state2
-GeneratedTests.lstm2_state
-GeneratedTests.lstm3
-GeneratedTests.lstm3_state2
-GeneratedTests.lstm3_state3
-GeneratedTests.lstm3_state
-GeneratedTests.lstm
-GeneratedTests.lstm_state2
-GeneratedTests.lstm_state
+GeneratedTests.logical_or_ex*
+GeneratedTests.logistic*
+GeneratedTests.lsh_projection*
+GeneratedTests.lstm*
+GeneratedTests.mobilenet*
+GeneratedTests.mul*
GeneratedTests.neg*
GeneratedTests.notequal*
GeneratedTests.prelu_ex*
-GeneratedTests.reduce_min_ex*
-GeneratedTests.relu1_float_1
-GeneratedTests.relu1_float_2
-GeneratedTests.relu1_quant8_1
-GeneratedTests.relu1_quant8_2
-GeneratedTests.rnn
-GeneratedTests.rnn_state
-GeneratedTests.rsqrt_ex_float_1
-GeneratedTests.space_to_depth_float_1
-GeneratedTests.space_to_depth_float_2
-GeneratedTests.space_to_depth_float_3
-GeneratedTests.space_to_depth_quant8_1
-GeneratedTests.space_to_depth_quant8_2
+GeneratedTests.reduce_min*
+GeneratedTests.relu1*
+GeneratedTests.relu6*
+GeneratedTests.relu*
+GeneratedTests.resize_bilinear*
+GeneratedTests.rnn*
+GeneratedTests.rsqrt*
+GeneratedTests.mean*
+GeneratedTests.pad*
+GeneratedTests.space_to_depth*
GeneratedTests.sqrt_ex*
GeneratedTests.squared_difference_ex*
-GeneratedTests.svdf2
-GeneratedTests.svdf
-GeneratedTests.svdf_state
-GeneratedTests.strided_slice_float_10
-GeneratedTests.strided_slice_float_1
-GeneratedTests.strided_slice_float_2
-GeneratedTests.strided_slice_float_3
-GeneratedTests.strided_slice_float_4
-GeneratedTests.strided_slice_float_5
-GeneratedTests.strided_slice_float_6
-GeneratedTests.strided_slice_float_7
-GeneratedTests.strided_slice_float_8
-GeneratedTests.strided_slice_float_9
-GeneratedTests.strided_slice
-GeneratedTests.tensorflowmax_ex*
+GeneratedTests.svdf*
+GeneratedTests.tanh_
+GeneratedTests.batch_to_space*
+GeneratedTests.div_*
+GeneratedTests.space_to_batch*
+GeneratedTests.squeeze*
+GeneratedTests.strided_slice*
+GeneratedTests.sub*
+GeneratedTests.transpose*
+GeneratedTests.cast_ex*
+GeneratedTests.gather_ex*
+GeneratedTests.strided_slice_ex*
+GeneratedTests.reduce_max_ex*
GeneratedTests.reduce_sum_ex*
-GeneratedTests.sub_broadcast_float
-GeneratedTests.logical_not_ex*
-TrivialTest.*
-ValidationTest.*
-ValidationTestModel.*
-ValidationTestCompilation.*
-ValidationTestIdentify.*
-ValidationTestExecution.*
-GeneratedTests.gather_ex_1D_quant8
-GeneratedTests.gather_ex_2D_quant8
+GeneratedTests.topk_v2*
+# Unexpected result
GeneratedTests.split*
GeneratedTests.transpose_conv*
GeneratedTests.pack*
GeneratedTests.unpack*
+GeneratedTests.logical_not_ex*
diff --git a/tests/nnapi/nnapi_test_generator/android-p/README.md b/tests/nnapi/nnapi_test_generator/android-p/README.md
new file mode 100644
index 000000000..469e467ea
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/README.md
@@ -0,0 +1,11 @@
+# nnapi test generator
+
+_nnapi test generator_ aims at generating NN public C API tests.
+
+To generate tests, run the following command.
+
+```
+$ tests/nnapi/specs/generate_test.sh
+```
+
+Original code is at https://android.googlesource.com/platform/frameworks/ml/+/efd22b6.
diff --git a/tests/nnapi/nnapi_test_generator/android-p/include/TestHarness.h b/tests/nnapi/nnapi_test_generator/android-p/include/TestHarness.h
new file mode 100644
index 000000000..1fcb0d661
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/include/TestHarness.h
@@ -0,0 +1,209 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Header-only library for various helpers of test harness
+ * See frameworks/ml/nn/runtime/test/TestGenerated.cpp for how this is used.
+ */
+#ifndef ANDROID_ML_NN_TOOLS_TEST_GENERATOR_TEST_HARNESS_H
+#define ANDROID_ML_NN_TOOLS_TEST_GENERATOR_TEST_HARNESS_H
+
+#include <gtest/gtest.h>
+
+#include <cmath>
+#include <functional>
+#include <map>
+#include <tuple>
+#include <vector>
+
+namespace generated_tests {
+
+constexpr const size_t gMaximumNumberOfErrorMessages = 10;
+
+typedef std::map<int, std::vector<float>> Float32Operands;
+typedef std::map<int, std::vector<int32_t>> Int32Operands;
+typedef std::map<int, std::vector<uint8_t>> Quant8Operands;
+typedef std::tuple<Float32Operands, // ANEURALNETWORKS_TENSOR_FLOAT32
+ Int32Operands, // ANEURALNETWORKS_TENSOR_INT32
+ Quant8Operands // ANEURALNETWORKS_TENSOR_QUANT8_ASYMM
+ >
+ MixedTyped;
+typedef std::pair<MixedTyped, MixedTyped> MixedTypedExampleType;
+
+template <typename T>
+struct MixedTypedIndex {};
+
+template <>
+struct MixedTypedIndex<float> {
+ static constexpr size_t index = 0;
+};
+template <>
+struct MixedTypedIndex<int32_t> {
+ static constexpr size_t index = 1;
+};
+template <>
+struct MixedTypedIndex<uint8_t> {
+ static constexpr size_t index = 2;
+};
+
+// Go through all index-value pairs of a given input type
+template <typename T>
+inline void for_each(const MixedTyped& idx_and_data,
+ std::function<void(int, const std::vector<T>&)> execute) {
+ for (auto& i : std::get<MixedTypedIndex<T>::index>(idx_and_data)) {
+ execute(i.first, i.second);
+ }
+}
+
+// non-const variant of for_each
+template <typename T>
+inline void for_each(MixedTyped& idx_and_data,
+ std::function<void(int, std::vector<T>&)> execute) {
+ for (auto& i : std::get<MixedTypedIndex<T>::index>(idx_and_data)) {
+ execute(i.first, i.second);
+ }
+}
+
+// internal helper for for_all
+template <typename T>
+inline void for_all_internal(
+ MixedTyped& idx_and_data,
+ std::function<void(int, void*, size_t)> execute_this) {
+ for_each<T>(idx_and_data, [&execute_this](int idx, std::vector<T>& m) {
+ execute_this(idx, static_cast<void*>(m.data()), m.size() * sizeof(T));
+ });
+}
+
+// Go through all index-value pairs of all input types
+// expects a functor that takes (int index, void *raw data, size_t sz)
+inline void for_all(MixedTyped& idx_and_data,
+ std::function<void(int, void*, size_t)> execute_this) {
+ for_all_internal<float>(idx_and_data, execute_this);
+ for_all_internal<int32_t>(idx_and_data, execute_this);
+ for_all_internal<uint8_t>(idx_and_data, execute_this);
+}
+
+// Const variant of internal helper for for_all
+template <typename T>
+inline void for_all_internal(
+ const MixedTyped& idx_and_data,
+ std::function<void(int, const void*, size_t)> execute_this) {
+ for_each<T>(idx_and_data, [&execute_this](int idx, const std::vector<T>& m) {
+ execute_this(idx, static_cast<const void*>(m.data()), m.size() * sizeof(T));
+ });
+}
+
+// Go through all index-value pairs (const variant)
+// expects a functor that takes (int index, const void *raw data, size_t sz)
+inline void for_all(
+ const MixedTyped& idx_and_data,
+ std::function<void(int, const void*, size_t)> execute_this) {
+ for_all_internal<float>(idx_and_data, execute_this);
+ for_all_internal<int32_t>(idx_and_data, execute_this);
+ for_all_internal<uint8_t>(idx_and_data, execute_this);
+}
+
+// Helper template - resize test output per golden
+template <typename ty, size_t tuple_index>
+void resize_accordingly_(const MixedTyped& golden, MixedTyped& test) {
+ std::function<void(int, const std::vector<ty>&)> execute =
+ [&test](int index, const std::vector<ty>& m) {
+ auto& t = std::get<tuple_index>(test);
+ t[index].resize(m.size());
+ };
+ for_each<ty>(golden, execute);
+}
+
+inline void resize_accordingly(const MixedTyped& golden, MixedTyped& test) {
+ resize_accordingly_<float, 0>(golden, test);
+ resize_accordingly_<int32_t, 1>(golden, test);
+ resize_accordingly_<uint8_t, 2>(golden, test);
+}
+
+template <typename ty, size_t tuple_index>
+void filter_internal(const MixedTyped& golden, MixedTyped* filtered,
+ std::function<bool(int)> is_ignored) {
+ for_each<ty>(golden,
+ [filtered, &is_ignored](int index, const std::vector<ty>& m) {
+ auto& g = std::get<tuple_index>(*filtered);
+ if (!is_ignored(index)) g[index] = m;
+ });
+}
+
+inline MixedTyped filter(const MixedTyped& golden,
+ std::function<bool(int)> is_ignored) {
+ MixedTyped filtered;
+ filter_internal<float, 0>(golden, &filtered, is_ignored);
+ filter_internal<int32_t, 1>(golden, &filtered, is_ignored);
+ filter_internal<uint8_t, 2>(golden, &filtered, is_ignored);
+ return filtered;
+}
+
+// Compare results
+#define VECTOR_TYPE(x) \
+ typename std::tuple_element<x, MixedTyped>::type::mapped_type
+#define VALUE_TYPE(x) VECTOR_TYPE(x)::value_type
+template <size_t tuple_index>
+void compare_(
+ const MixedTyped& golden, const MixedTyped& test,
+ std::function<void(VALUE_TYPE(tuple_index), VALUE_TYPE(tuple_index))>
+ cmp) {
+ for_each<VALUE_TYPE(tuple_index)>(
+ golden,
+ [&test, &cmp](int index, const VECTOR_TYPE(tuple_index) & m) {
+ const auto& test_operands = std::get<tuple_index>(test);
+ const auto& test_ty = test_operands.find(index);
+ ASSERT_NE(test_ty, test_operands.end());
+ for (unsigned int i = 0; i < m.size(); i++) {
+ SCOPED_TRACE(testing::Message()
+ << "When comparing element " << i);
+ cmp(m[i], test_ty->second[i]);
+ }
+ });
+}
+#undef VALUE_TYPE
+#undef VECTOR_TYPE
+inline void compare(const MixedTyped& golden, const MixedTyped& test, float fpRange = 1e-5f) {
+ size_t totalNumberOfErrors = 0;
+ compare_<0>(golden, test, [&totalNumberOfErrors, fpRange](float g, float t) {
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_NEAR(g, t, fpRange);
+ }
+ if (std::abs(g - t) > fpRange) {
+ totalNumberOfErrors++;
+ }
+ });
+ compare_<1>(golden, test, [&totalNumberOfErrors](int32_t g, int32_t t) {
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_EQ(g, t);
+ }
+ if (g != t) {
+ totalNumberOfErrors++;
+ }
+ });
+ compare_<2>(golden, test, [&totalNumberOfErrors](uint8_t g, uint8_t t) {
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_NEAR(g, t, 1);
+ }
+ if (std::abs(g - t) > 1) {
+ totalNumberOfErrors++;
+ }
+ });
+ EXPECT_EQ(size_t{0}, totalNumberOfErrors);
+}
+
+}; // namespace generated_tests
+
+#endif // ANDROID_ML_NN_TOOLS_TEST_GENERATOR_TEST_HARNESS_H
diff --git a/tests/nnapi/nnapi_test_generator/android-p/slicing.py b/tests/nnapi/nnapi_test_generator/android-p/slicing.py
new file mode 100644
index 000000000..f08e9d1a1
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/slicing.py
@@ -0,0 +1,167 @@
+#!/usr/bin/python3
+
+# Copyright 2017, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+"""Slicing the input Model file
+
+Invoked by ml/nn/runtime/test/specs/slicing.sh; this Python code is
+not intended to be invoked directly by the users. See that script for
+details on how to use the slicing tool is used.
+
+This script does the following work:
+
+Perform a topological sort similar to the test generator, except that:
+* It would stop at the N-th operation it encounters, and
+* Rename the output of the N-th operation to a model output, and
+* Name that as the output of the model.
+* Also only inputs and weights used by the submodel would be emitted.
+
+"""
+
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+import argparse
+from functools import reduce
+import math
+import os
+import struct
+import sys
+import contextlib
+import test_generator
+import pprint
+# Stuff from test generator
+from test_generator import Example
+from test_generator import Float32Scalar
+from test_generator import Input
+from test_generator import Int32Scalar
+from test_generator import Internal
+from test_generator import Model
+from test_generator import Output
+from test_generator import Parameter
+from test_generator import smart_open
+
+
+# Take a model from command line
+def import_source():
+ parser = argparse.ArgumentParser()
+ parser.add_argument("spec", help="the spec file")
+ parser.add_argument(
+ "-n", "--number",
+ help="number of operations in the sliced model. Default = 1",
+ default=1)
+ parser.add_argument(
+ "-m", "--model", help="the output model file", default="-")
+ parser.add_argument(
+ "-e", "--example", help="the output example file", default="-")
+ args = parser.parse_args()
+
+ if os.path.exists(args.spec):
+ test_generator.FileNames.SpecFile = os.path.basename(args.spec)
+ exec (open(args.spec).read())
+
+ return (args.model, args.example, args.number)
+
+
+# Slice till the Nth op the topological sort finds
+# the output of that op becomes the output of the model
+class slicing:
+
+ def __init__(self, threshold):
+ self.__nr_op_seen = 0
+ self.__threshold = threshold
+ self.__last_outs = []
+ self.__all_formatted_ops = []
+ self.__referenced_operands = set()
+
+ def format_as_py_op(self, op):
+ try:
+ fmt = op.PyDefinition()
+ except AttributeError: # not an op, but things like weights
+ return True
+ if fmt is not None:
+ self.__nr_op_seen += 1
+ if self.__nr_op_seen > self.__threshold:
+ return False
+ self.__last_outs = op.outs
+ for o in op.ins:
+ self.__referenced_operands.add(o)
+ for o in op.outs:
+ self.__referenced_operands.add(o)
+ self.__all_formatted_ops.append("model = model.%s" % fmt)
+ return True
+
+ def dump(self, model_file):
+ for x in self.__all_formatted_ops:
+ print(x, file=model_file)
+
+ def dump_example(self, example_file):
+ override = {}
+ # Make alias for the output variable
+ for lo in self.__last_outs:
+ override[lo.get_name()] = lo.type.get_nr_elements()
+ alias_def = """\
+# Alias for the output variable {operand_name}
+aliased_output{number} = {operand_name}
+"""
+ op = {
+ 'operand_name': lo.get_name(),
+ 'number': 0 # only support one output as of now
+ }
+ print (alias_def.format(**op), file=example_file)
+ Example.py_dump(example_file, override, self.__referenced_operands)
+
+ def format_operands(self):
+ # Dump operand definitions
+ op_definitions = []
+ for o in test_generator.Operand.operands.objects():
+ if o not in self.__referenced_operands:
+ continue
+ ty = o.type
+ raw_shape = ty.get_raw_shape()
+ op_def = """{op_name} = {operand}("{op_name}", "{element_type}", "{shape}" """
+ if isinstance(o, test_generator.Parameter):
+ op_def += """, {initializer})"""
+ init = o.initializer
+ py_operand_name = "Parameter"
+ else:
+ op_def += ")"
+ init = []
+ py_operand_name = "IgnoredOutput" if o in set(
+ self.__last_outs) else o.__class__.__name__
+
+ op = {
+ "element_type": ty.get_element_type(),
+ "shape": ty.get_raw_shape(),
+ "op_name": o.get_name(),
+ "operand": py_operand_name,
+ "initializer": init
+ }
+ op_definitions.append(op_def.format(**op))
+ return "\n".join(op_definitions)
+
+
+if __name__ == "__main__":
+ (model, example, number) = import_source()
+ s = slicing(int(number))
+
+ with smart_open(model) as model_file:
+ spec_file = " (from: %s)" % (test_generator.FileNames.SpecFile)
+ print("# Generated file%s. Do not edit" % (spec_file), file=model_file)
+ print("model = Model()", file=model_file)
+ test_generator.TopologicalSort(lambda x: s.format_as_py_op(x))
+ print(s.format_operands(), file=model_file)
+ s.dump(model_file)
+ with smart_open(example) as example_file:
+ s.dump_example(example_file)
diff --git a/tests/nnapi/nnapi_test_generator/android-p/test_generator.py b/tests/nnapi/nnapi_test_generator/android-p/test_generator.py
new file mode 100644
index 000000000..922ef7754
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/test_generator.py
@@ -0,0 +1,775 @@
+#!/usr/bin/python3
+
+# Copyright (c) 2018 Samsung Electronics Co., Ltd. All Rights Reserved
+# Copyright 2017, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+"""NN model compiler
+
+Compile models and examples into NDK-based CTS unit tests
+"""
+
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+import argparse
+from functools import reduce
+import math
+import os
+import struct
+import sys
+import contextlib
+import pprint
+import re
+
+@contextlib.contextmanager
+def smart_open(filename=None):
+ if filename and filename != '-':
+ fh = open(filename, 'w')
+ else:
+ fh = sys.stdout
+
+ try:
+ yield fh
+ finally:
+ if fh is not sys.stdout:
+ fh.close()
+
+class Phase(object):
+ def __init__(self):
+ self.__objects = []
+ self.__contents = []
+ self.__dict_of_objects = {}
+
+ def append(self, obj, x):
+ self.__objects.append(obj)
+ self.__contents.append(x)
+ self.__dict_of_objects[obj.ID()] = obj
+
+ def dump(self, filename):
+ for x in self.__contents:
+ print (" " + x + ";", file=filename)
+
+ def objects(self):
+ return self.__objects
+
+ def search(self, i):
+ return self.__dict_of_objects[i]
+
+# Tracking objects inside a model with a not necessarily unique name and
+# an unique number
+class NamedObject(object):
+ __serial = 0
+
+ def __init__(self, name = "NamedObject"):
+ self.__name = name
+ self.__id = NamedObject.serial()
+ NamedObject.__serial += 1
+
+ def ID(self):
+ return self.__id
+
+ def serial():
+ return NamedObject.__serial
+
+ def get_name(self):
+ return self.__name
+
+ def __str__(self):
+ return self.get_name()
+
+ def __hash__(self):
+ return self.__id
+
+# Object that can be traversed during topological sorting phase
+class Traversable(object):
+ def traversable(self):
+ return True
+
+class Nontraversable(object):
+ def traversable(self):
+ return False
+
+# Object that can take input from other objects
+class Uses(object):
+ all_uses = set()
+ def __init__(self, ins = []):
+ self.ins = ins.copy()
+ Uses.all_uses.add(self)
+ for i in ins:
+ i.outs.append(self)
+
+# Object that other objects takes its definition from
+class Definitions(object):
+ def __init__(self, outs = []):
+ self.outs = outs.copy()
+ for o in outs:
+ o.ins.append(self)
+
+class TypeLookup:
+ __type_lookup = {
+ "INT32": "int32_t",
+ "UINT32": "uint32_t",
+ "FLOAT32": "float",
+ "TENSOR_INT32": "int32_t",
+ "TENSOR_FLOAT32": "float",
+ "TENSOR_QUANT8_ASYMM": "uint8_t",
+# "OEM_SCALAR": this is service-defined.
+ "TENSOR_OEM_BYTE": "uint8_t",
+ }
+
+ def get_cpptype(nnapi_type):
+ return TypeLookup.__type_lookup[nnapi_type]
+
+ def is_float(nnapi_type):
+ return TypeLookup.get_cpptype(nnapi_type) == "float"
+
+ def get_size(nnapi_type):
+ return 1 if TypeLookup.get_cpptype(nnapi_type) == "uint8_t" else 4
+
+
+class Type(object):
+ __types = {}
+ __type_serial = 0 # types have their own numbering
+ def __init__(self, vt = None, shape = None):
+ self.__vt = vt
+ self.__shape = shape
+ if vt is None or shape is None:
+ self.__name = None
+ return
+
+ key = str(self)
+ if key not in Type.__types:
+ self.__id = Type.__type_serial
+ Type.__types[str(self)] = self
+ Type.__type_serial += 1
+ else:
+ self.__id = Type.__types[key].__id
+ self.__name = "type" + str(self.__id)
+
+ def get_shape(self):
+ return self.__shape
+
+ def get_element_type(self):
+ return self.__vt
+
+ def get_name(self):
+ return self.__name
+
+ def __str__(self):
+ return (", ".join([self.__vt, self.__shape]))
+
+ def __hash__(self):
+ return self.__id
+
+ def dump(filename):
+ for key, value in sorted(Type.__types.items()):
+ print (" OperandType " + str(value.__name) + "(Type::" + str(key) + ");", file=filename)
+
+ def get_raw_shape(self):
+ return self.__shape
+
+ def get_parsed_shape(self):
+ # Parse shape
+ if (self.__shape != "" and self.__shape != "{}"):
+ left, sep, right = self.__shape.partition('{')
+ real_shape, sep, right = right.partition('}')
+ shape = [int(x) for x in real_shape.split(",")]
+ # left now looks like "0.0f, 127.5f, "
+ scale, sep, zero_point = right.rpartition(',')
+ if scale == "":
+ if zero_point == "":
+ return real_shape, "0", "0"
+ return real_shape, zero_point, "0"
+ left, sep, scale = scale.partition(',')
+ return real_shape, scale.replace("f", ""), zero_point
+ else:
+ return "", "0", "0"
+
+ def get_nr_elements(self):
+ # Parse shape
+ nr_elements = 1
+ real_shape, scale, zero_point = self.get_parsed_shape()
+
+ if (real_shape != "" and real_shape != "{}"):
+ shape = [int(x) for x in real_shape.split(",")]
+ nr_elements = reduce((lambda x, y: x*y), shape)
+ return nr_elements
+
+ def get_size(self):
+ element_size = TypeLookup.get_size(self.__vt)
+ return self.get_nr_elements() * element_size
+
+# A value is a typed, named object
+class Value(NamedObject):
+ def __init__(self, name, vt):
+ NamedObject.__init__(self, name)
+ self.type = vt
+
+# An operand that can be fed into operations. Also, an operand is always
+# declared before operations.
+class Operand(Value):
+ # All operand declarations in string
+ operands = Phase()
+
+ def __init__(self, name, vt):
+ Value.__init__(self, name, vt)
+ def_string = (
+ "auto " + self.get_name() + " = "\
+ "model->addOperand(&" + vt.get_name() + ")")
+ Operand.operands.append(self, def_string)
+
+ # By default, produce nothing (when asked by the Topological Sort phase)
+ def Definition(self):
+ pass
+
+ def Reference(self):
+ return NamedObject.__str__(self)
+
+ # Print a set of operands in curly braces
+ def print_operands(operands):
+ return [ x.Reference() for x in operands ]
+
+ # Defined with the model or not
+ def is_weight(self):
+ return False
+
+# A user-declared input operand
+class Input(Operand, Definitions, Traversable):
+ # for enumerating inputs
+ __next_number = 0
+ # Holds reference to all Inputs; used by Topoligcal sort as starting nodes.
+ __inputs = set()
+
+ def __init__(self, name, vt, shape, increase_next_number=True):
+ Operand.__init__(self, name, Type(vt, shape))
+ Definitions.__init__(self)
+ Input.__inputs.add(self)
+ self.number = Input.__next_number
+ if increase_next_number is True:
+ Input.__next_number += 1
+
+ def lifetime(self):
+ return "MODEL_INPUT"
+
+ def is_internal(self):
+ return False
+
+ def get_inputs(exclude_internal = None):
+ if exclude_internal is not None:
+ external = { x for x in Input.__inputs if not x.is_internal() }
+ return external
+ else:
+ return Input.__inputs
+
+# A user-declared output operand
+class Output(Operand, Uses, Nontraversable):
+ # for enumerating outputs
+ __next_number = 0
+ __outputs = []
+
+ def __init__(self, name, vt, shape):
+ Operand.__init__(self, name, Type(vt, shape))
+ Uses.__init__(self)
+ Output.__outputs.append(self)
+ self.number = Output.__next_number
+ Output.__next_number += 1
+
+ def lifetime(self):
+ return "MODEL_OUTPUT"
+
+ # return all unique outputs in the original order
+ def get_outputs():
+ saw = set()
+ unique = [x for x in Output.__outputs if x not in saw and (saw.add(x) or True)]
+ return unique
+
+# An output that we don't want to compare the results
+class IgnoredOutput(Output):
+ __ignored = set()
+ def __init__(self, name, vt, shape):
+ Output.__init__(self, name, vt, shape)
+ IgnoredOutput.__ignored.add(self)
+ def gen_ignored():
+ ignored_func = """
+bool is_ignored(int i) {
+ static std::set<int> ignore = {%s};
+ return ignore.find(i) != ignore.end();
+}""" % ", ".join([str(x.number) for x in IgnoredOutput.__ignored])
+ return ignored_func
+
+class ModelArgument:
+ __arguments = []
+
+ def __init__(self, arg_type, arg_name):
+ self.__arg_type = arg_type
+ self.__arg_name = arg_name
+ ModelArgument.__arguments.append(" ".join([arg_type, arg_name]))
+
+ def get_arg_type(self):
+ return self.__arg_type
+
+ def get_arg_name(self):
+ return self.__arg_name
+
+ def get_arguments():
+ return ModelArgument.__arguments
+
+ def lifetime(self):
+ return "CONSTANT_COPY"
+
+# Print in C float literal format
+def pretty_print_as_float(x):
+ s = str(float(x))
+ if s.find(".") >= 0 or s.find("e") >= 0:
+ return s + "f"
+ else:
+ return s + ".0f"
+
+class Parameter(Input):
+ # TODO seems wrong that's an Input.
+ def __init__(self, name, vt, shape, initializer):
+ Input.__init__(self, name, vt, shape, False)
+ self.initializer = initializer
+ self.cpptype = TypeLookup.get_cpptype(vt)
+ def is_internal(self):
+ return True
+ def Definition(self):
+ init_name = self.get_name() + "_init"
+ initializer = [str(x) for x in self.initializer]
+ if self.cpptype == "float":
+ initializer = [ pretty_print_as_float(x) for x in initializer]
+ init = self.cpptype + " " + init_name + "[]"
+ init = "static " + init + " = {" + ", ".join(initializer) + "};"
+ args = [ self.get_name(), init_name,
+ "sizeof(" + self.cpptype + ") * " + str(len(self.initializer)) ]
+ stmt = "\n ".join([init,
+ "model->setOperandValue(" + ", ".join(args)+");"])
+ return stmt
+ def is_weight(self):
+ return True
+ def lifetime(self):
+ if Configuration.useSHM():
+ return "CONSTANT_REFERENCE"
+ else:
+ return "CONSTANT_COPY"
+
+class Int32Scalar(Parameter):
+ def __init__(self, name, value):
+ Parameter.__init__(self, name, "INT32", "{}", [value])
+
+class Float32Scalar(Parameter):
+ def __init__(self, name, value):
+ Parameter.__init__(self, name, "FLOAT32", "{}", [value])
+
+# A compiler-generated intermediate result from an operation
+class IntermediateResult(Operand, Definitions, Uses, Traversable):
+ def __init__(self, src: Value):
+ tmp_name = "tmp" + str(NamedObject.serial())
+ Operand.__init__(self, tmp_name, src.type)
+ Definitions.__init__(self)
+ Uses.__init__(self, [src])
+
+ def lifetime(self):
+ return "TEMPORARY_VARIABLE"
+
+# An explicitly declared intermediate result
+class Internal(Operand, Definitions, Uses, Traversable):
+ def __init__(self, name, vt, shape):
+ Operand.__init__(self, name, Type(vt, shape))
+ Definitions.__init__(self)
+ Uses.__init__(self)
+
+ def lifetime(self):
+ return "TEMPORARY_VARIABLE"
+
+# An operation in a model
+class Operation(Definitions, Uses, Traversable):
+ def __init__(self, optype, ins, outs):
+ self.type = ins[0].type
+ Definitions.__init__(self, outs)
+ Uses.__init__(self, ins)
+ self.optype = optype
+
+ def __str__(self):
+ inputs = [ str(x) for x in self.ins ]
+ return "Operation:" + self.optype + " " + ", ".join(inputs)
+
+ def Reference(self):
+ return "operation" + str(self.ID());
+
+ def Definition(self):
+ inputs = Operand.print_operands(self.ins);
+ outputs = Operand.print_operands(self.outs);
+ if re.search('_EX$', self.optype):
+ return "model->addOperationEx(ANEURALNETWORKS_"+self.optype+", " + \
+ "{"+", ".join(inputs)+"}, {" + ", ".join(outputs) + "});"
+ else:
+ return "model->addOperation(ANEURALNETWORKS_"+self.optype+", " + \
+ "{"+", ".join(inputs)+"}, {" + ", ".join(outputs) + "});"
+
+ # Get Python-ish dump for the op
+ def PyDefinition(self):
+ py_op_string = """Operation("{optype}", {inputs}).To({outputs})"""
+ inputs = [str(x) for x in Operand.print_operands(self.ins)]
+ inputs = ", ".join(inputs)
+ assert len(self.outs) <= 1
+ outputs = str(Operand.print_operands(self.outs)[0])
+ ops = {"optype": self.optype, "inputs": inputs, "outputs": outputs}
+ return py_op_string.format(**ops)
+
+# Main interface
+class Model(object):
+ __isRelaxed = False
+
+ def __init__(self):
+ self.__currentOp = None
+
+ # TODO turn this into generic binary operations
+ def Add(self, i1: Value, i2 = None) -> Operation:
+ ins = [i1]
+ if i2 is not None:
+ ins.append(i2)
+ if self.__currentOp is not None:
+ ir = IntermediateResult(self.__currentOp)
+ self.__currentOp = ir
+ ins.append(self.__currentOp)
+
+ op = Operation("ADD", ins, [])
+
+ self.__currentOp = op
+ return self
+
+ def Operation(self, op_name, *args):
+ ins = [i for i in args]
+ outs = []
+ op = Operation(op_name, ins, outs)
+ self.__currentOp = op
+ return self
+
+ def RawAdd(self, i1: Value, i2: Value, o = None) -> Operation:
+ ins = [i1, i2]
+ outs = []
+ if o is not None:
+ outs = [o]
+ op = Operation("ADD", ins, outs)
+
+ self.__currentOp = op
+ return self
+
+ # See CpuExecutor::executeOperation() for the arguments of each op
+ def AveragePool(self, input, padding, stride_width, stride_height, filter_width, filter_height, activation):
+ ins = [input, padding, stride_width,
+ stride_height, filter_width, filter_height, activation]
+ outs = []
+ op = Operation("AVERAGE_POOL_2D", ins, outs)
+ self.__currentOp = op
+ return self
+
+ def Concatenation(self, *args):
+ ins = [i for i in args]
+ outs = []
+ op = Operation("CONCATENATION", ins, outs)
+ self.__currentOp = op
+ return self
+
+ def Conv(self, filter, bias, input, padding, stride_width, stride_height, activation):
+ ins = [filter, bias, input, padding, stride_width,
+ stride_height, activation]
+ outs = []
+ op = Operation("CONV_2D", ins, outs)
+ self.__currentOp = op
+ return self
+
+ def DepthWiseConv(self, filter, bias, input, padding, stride_width, stride_height, depth_multiplier, activation):
+ ins = [filter, bias, input, padding, stride_width,
+ stride_height, depth_multiplier, activation]
+ outs = []
+ op = Operation("DEPTHWISE_CONV_2D", ins, outs)
+ self.__currentOp = op
+ return self
+
+ def FullyConnected(self, input, weights, bias, activation):
+ ins = [input, weights, bias, activation]
+ outs = []
+ op = Operation("FULLY_CONNECTED", ins, outs)
+ self.__currentOp = op
+ return self
+
+ def Logistic(self, input):
+ ins = [input]
+ outs = []
+ op = Operation("LOGISTIC", ins, outs)
+ self.__currentOp = op
+ return self
+
+ def L2Pool(self, input, padding, stride_width, stride_height, filter_width, filter_height, activation):
+ ins = [input, padding, stride_width,
+ stride_height, filter_width, filter_height, activation]
+ outs = []
+ op = Operation("L2_POOL_2D", ins, outs)
+ self.__currentOp = op
+ return self
+
+ def MaxPool(self, input, padding, stride_width, stride_height, filter_width, filter_height, activation):
+ ins = [input, padding, stride_width,
+ stride_height, filter_width, filter_height, activation]
+ outs = []
+ op = Operation("MAX_POOL_2D", ins, outs)
+ self.__currentOp = op
+ return self
+
+ def SoftMax(self, input, beta):
+ ins = [input, beta]
+ outs = []
+ op = Operation("SOFTMAX", ins, outs)
+ self.__currentOp = op
+ return self
+
+ def Reshape(self, input, shape):
+ ins = [input, shape]
+ outs = []
+ op = Operation("RESHAPE", ins, outs)
+ self.__currentOp = op
+ return self
+
+ def Out(self, o):
+ if (type(o) is list or type(o) is tuple):
+ for i in o:
+ self.__currentOp.outs.append(i)
+ i.ins.append(self.__currentOp)
+ else:
+ self.__currentOp.outs.append(o)
+ o.ins.append(self.__currentOp)
+ return self
+
+ def To(self, o:Value):
+ ret = Model.Out(self, o)
+ self.__currentOp = None
+ return self
+
+ def RelaxedExecution(self, isRelaxed):
+ Model.__isRelaxed = isRelaxed
+ return self
+
+ def isRelaxed():
+ return Model.__isRelaxed
+
+
+class FileNames:
+ SpecFile = ""
+
+class Example():
+ __examples = []
+ def __init__(self, list_of_examples):
+ Example.__examples.append(list_of_examples)
+
+ def dump_dict(d):
+ ret = []
+ for k, v in d.items():
+ key = str(k)
+ suffix = "f"
+ if type(k) is not int:
+ key = str(k.number)
+ if not TypeLookup.is_float(k.type.get_element_type()):
+ suffix = ""
+ init = ", ".join(
+ [str(i) + (suffix if str(i).find(".") != -1 else "") for i in v])
+ ret.append("{%s, {%s}}" % (key, init))
+ return ", ".join(ret)
+
+ def dump_mixed_types(d):
+ ret = []
+
+ float32_dict = {}
+ int32_dict = {}
+ uint8_dict = {}
+
+ for k, v in d.items():
+ key_id = k.ID() if type(k) is not int else k
+ ty = Operand.operands.search(key_id).type.get_element_type()
+ # find out type of the operand addressed by the key
+ if (ty == "TENSOR_FLOAT32"):
+ float32_dict[k] = v
+ elif (ty == "TENSOR_INT32"):
+ int32_dict[k] = v
+ elif (ty == "TENSOR_OEM_BYTE"):
+ uint8_dict[k] = v
+ elif (ty == "TENSOR_QUANT8_ASYMM"):
+ uint8_dict[k] = v
+ else:
+ print ("Unhandled type %s"%ty, file = sys.stderr)
+ assert 0 and "unsupported example type"
+
+ tuple_init = """\
+{{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{{float32_dict}}},
+ // int -> INT32 map
+ {{{int32_dict}}},
+ // int -> QUANT8_ASYMM map
+ {{{uint8_dict}}}
+}}"""
+ tuple_contents = {
+ 'float32_dict': Example.dump_dict(float32_dict),
+ 'int32_dict': Example.dump_dict(int32_dict),
+ 'uint8_dict': Example.dump_dict(uint8_dict)
+ }
+ return tuple_init.format(**tuple_contents)
+
+
+ def dump(example_file):
+ if len(Example.__examples) > 0:
+ spec_file = " (from: %s)" % (FileNames.SpecFile)
+ print ('// Generated file%s. Do not edit' % (spec_file),
+ file = example_file)
+ for i, o in Example.__examples:
+ print ('// Begin of an example', file = example_file)
+ print ('{', file = example_file)
+ inputs = Example.dump_mixed_types(i)
+ outputs = Example.dump_mixed_types(o)
+ print ('//Input(s)\n%s,' % inputs , file = example_file)
+ print ('//Output(s)\n%s' % outputs, file = example_file)
+ print ('}, // End of an example', file = example_file)
+
+ # Similar to dump_dict, but in python. Used by the slicing tool
+ # if referenced is not None, only print operands that are present there
+ def py_dump_dict(d, referenced):
+ ret = []
+ for k, v in d.items():
+ if referenced != None and k not in referenced:
+ continue
+ key = str(k)
+ init = pprint.pformat(v)
+ ret.append("%s: %s" % (key, init))
+ return ", ".join(ret)
+
+ # similar to dump, but in python. Used by the slicing tool
+ # if referenced is not None, only print operands that are present there
+ def py_dump(example_file, override, referenced):
+ if len(Example.__examples) > 0:
+ example_no = 0
+ example_template = """\
+input{no} = {{{inputs}}}
+# Only executed during data collection phase
+if collecting_data is True:
+ Example((input{no}, {{{outputs}}}))
+"""
+ for i, o in Example.__examples:
+ print ('# Begin of an example', file = example_file)
+ inputs = Example.py_dump_dict(i, referenced)
+ output_list = []
+ for k, v in override.items():
+ output_list.append("%s: [0] * %d" % (k, v))
+ outputs = ",".join(output_list)
+
+ # TODO: handle >1 outputs
+ for k, v in o.items():
+ assert k.number == 0
+ example_contents = {
+ 'no': example_no,
+ 'inputs': inputs,
+ 'outputs': outputs
+ }
+ print (example_template.format(**example_contents), file = example_file)
+
+
+def TopologicalSort(format_op):
+ start = Input.get_inputs().copy()
+ deps = { x: set(x.ins) for x in Uses.all_uses }
+
+ while len(start) > 0:
+ cur = start.pop()
+ if format_op(cur) is False:
+ return
+ distinct_outs = set(cur.outs)
+ for o in distinct_outs:
+ deps[o].remove(cur)
+ if len(deps[o]) == 0 and o.traversable():
+ start.add(o)
+
+class Configuration:
+ use_shm_for_weights = False
+ def useSHM():
+ return Configuration.use_shm_for_weights
+
+# Take a model from command line
+def import_source():
+ parser = argparse.ArgumentParser()
+ parser.add_argument("spec", help="the spec file")
+ parser.add_argument(
+ "-m", "--model", help="the output model file", default="-")
+ parser.add_argument(
+ "-e", "--example", help="the output example file", default="-")
+ args = parser.parse_args()
+
+ if os.path.exists(args.spec):
+ FileNames.SpecFile = os.path.basename(args.spec)
+ exec (open(args.spec).read())
+
+ return (args.model, args.example)
+
+
+def print_cts_op(model_file, op):
+ fmt = op.Definition()
+ if fmt is not None:
+ print (" %s" % fmt, file = model_file)
+ return True
+
+if __name__ == '__main__':
+ (model, example) = import_source()
+ # Boilerplate
+ args = ""
+ if len(ModelArgument.get_arguments()) > 0:
+ args = ", " + ", ".join(ModelArgument.get_arguments())
+
+ print("Output CTS model: %s" % model, file=sys.stderr)
+ print("Output example:" + example, file=sys.stderr)
+
+ with smart_open(model) as model_file:
+ spec_file = " (from: %s)" % (FileNames.SpecFile)
+
+ print ('// Generated file%s. Do not edit'%(spec_file), file = model_file)
+ print ("void CreateModel(Model *model" + args + ") {", file=model_file)
+
+ # Phase 0: types
+ Type.dump(model_file)
+ # Phase 1: add operands
+ print (" // Phase 1, operands", file=model_file)
+ Operand.operands.dump(model_file)
+
+ # Phase 2: operations
+ print (" // Phase 2, operations", file=model_file)
+ TopologicalSort(lambda x: print_cts_op(model_file, x))
+
+ # Phase 3: add inputs and outputs
+ print (" // Phase 3, inputs and outputs", file=model_file)
+ inputs = Operand.print_operands(Input.get_inputs(True));
+ outputs = Operand.print_operands(Output.get_outputs());
+ print (" model->identifyInputsAndOutputs(\n" +
+ " {"+", ".join(inputs)+"},\n {" + ", ".join(outputs) + "});",
+ file=model_file)
+
+ # Phase 4: set relaxed execution if needed
+ if (Model.isRelaxed()):
+ print (" // Phase 4: set relaxed execution", file=model_file)
+ print (" model->relaxComputationFloat32toFloat16(true);", file=model_file)
+
+ # Boilerplate
+ print (" assert(model->isValid());", file=model_file);
+ print ("}", file=model_file)
+ print (IgnoredOutput.gen_ignored(), file=model_file)
+
+ with smart_open(example) as example_file:
+ Example.dump(example_file)
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/conv_1_h3_w2_SAME.mod.py b/tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/conv_1_h3_w2_SAME.mod.py
new file mode 100644
index 000000000..8e93749e2
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/conv_1_h3_w2_SAME.mod.py
@@ -0,0 +1,11 @@
+i4 = Int32Scalar("b4", 1)
+i5 = Int32Scalar("b5", 1)
+i6 = Int32Scalar("b6", 1)
+i7 = Int32Scalar("b7", 0)
+i2 = Input("op2", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # input 0
+i3 = Output("op3", "TENSOR_FLOAT32", "{1, 8, 8, 1}") # output 0
+i0 = Parameter("op0", "TENSOR_FLOAT32", "{1, 3, 2, 3}", [-0.966213, -0.467474, -0.82203, -0.579455, 0.0278809, -0.79946, -0.684259, 0.563238, 0.37289, 0.738216, 0.386045, -0.917775, 0.184325, -0.270568, 0.82236, 0.0973683, -0.941308, -0.144706]) # parameters
+i1 = Parameter("op1", "TENSOR_FLOAT32", "{1}", [0]) # parameters
+model = Model()
+model = model.Conv(i2, i0, i1, i4, i5, i6, i7).To(i3)
+
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/stderr.txt.expect
new file mode 100644
index 000000000..c5a6e36b9
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output CTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/stdout.txt.expect
new file mode 100644
index 000000000..47d92b6b8
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_conv/stdout.txt.expect
@@ -0,0 +1,41 @@
+// Generated file (from: conv_1_h3_w2_SAME.mod.py). Do not edit
+void CreateModel(Model *model) {
+ OperandType type0(Type::INT32, {});
+ OperandType type3(Type::TENSOR_FLOAT32, {1, 3, 2, 3});
+ OperandType type2(Type::TENSOR_FLOAT32, {1, 8, 8, 1});
+ OperandType type1(Type::TENSOR_FLOAT32, {1, 8, 8, 3});
+ OperandType type4(Type::TENSOR_FLOAT32, {1});
+ // Phase 1, operands
+ auto b4 = model->addOperand(&type0);
+ auto b5 = model->addOperand(&type0);
+ auto b6 = model->addOperand(&type0);
+ auto b7 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto op0 = model->addOperand(&type3);
+ auto op1 = model->addOperand(&type4);
+ // Phase 2, operations
+ static int32_t b4_init[] = {1};
+ model->setOperandValue(b4, b4_init, sizeof(int32_t) * 1);
+ static int32_t b5_init[] = {1};
+ model->setOperandValue(b5, b5_init, sizeof(int32_t) * 1);
+ static int32_t b6_init[] = {1};
+ model->setOperandValue(b6, b6_init, sizeof(int32_t) * 1);
+ static int32_t b7_init[] = {0};
+ model->setOperandValue(b7, b7_init, sizeof(int32_t) * 1);
+ static float op0_init[] = {-0.966213f, -0.467474f, -0.82203f, -0.579455f, 0.0278809f, -0.79946f, -0.684259f, 0.563238f, 0.37289f, 0.738216f, 0.386045f, -0.917775f, 0.184325f, -0.270568f, 0.82236f, 0.0973683f, -0.941308f, -0.144706f};
+ model->setOperandValue(op0, op0_init, sizeof(float) * 18);
+ static float op1_init[] = {0.0f};
+ model->setOperandValue(op1, op1_init, sizeof(float) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op2, op0, op1, b4, b5, b6, b7}, {op3});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op2},
+ {op3});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/depthwise_conv.bin.mod.py b/tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/depthwise_conv.bin.mod.py
new file mode 100644
index 000000000..8738ee01b
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/depthwise_conv.bin.mod.py
@@ -0,0 +1,11 @@
+model = Model()
+i4 = Int32Scalar("b4", 1)
+i5 = Int32Scalar("b5", 1)
+i6 = Int32Scalar("b6", 1)
+i7 = Int32Scalar("b7", 1)
+i8 = Int32Scalar("b8", 0)
+i2 = Input("op2", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # input 0
+i3 = Output("op3", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # output 0
+i0 = Parameter("op0", "TENSOR_FLOAT32", "{1, 1, 1, 3}", [-0.966213, -0.467474, -0.82203]) # parameters
+i1 = Parameter("op1", "TENSOR_FLOAT32", "{3}", [0, 0, 0]) # parameters
+model = model.DepthWiseConv(i2, i0, i1, i4, i5, i6, i7, i8).To(i3)
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/stderr.txt.expect
new file mode 100644
index 000000000..c5a6e36b9
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output CTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/stdout.txt.expect
new file mode 100644
index 000000000..9a22cc3e3
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_depthwise_conv/stdout.txt.expect
@@ -0,0 +1,43 @@
+// Generated file (from: depthwise_conv.bin.mod.py). Do not edit
+void CreateModel(Model *model) {
+ OperandType type0(Type::INT32, {});
+ OperandType type2(Type::TENSOR_FLOAT32, {1, 1, 1, 3});
+ OperandType type1(Type::TENSOR_FLOAT32, {1, 8, 8, 3});
+ OperandType type3(Type::TENSOR_FLOAT32, {3});
+ // Phase 1, operands
+ auto b4 = model->addOperand(&type0);
+ auto b5 = model->addOperand(&type0);
+ auto b6 = model->addOperand(&type0);
+ auto b7 = model->addOperand(&type0);
+ auto b8 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type1);
+ auto op0 = model->addOperand(&type2);
+ auto op1 = model->addOperand(&type3);
+ // Phase 2, operations
+ static int32_t b4_init[] = {1};
+ model->setOperandValue(b4, b4_init, sizeof(int32_t) * 1);
+ static int32_t b5_init[] = {1};
+ model->setOperandValue(b5, b5_init, sizeof(int32_t) * 1);
+ static int32_t b6_init[] = {1};
+ model->setOperandValue(b6, b6_init, sizeof(int32_t) * 1);
+ static int32_t b7_init[] = {1};
+ model->setOperandValue(b7, b7_init, sizeof(int32_t) * 1);
+ static int32_t b8_init[] = {0};
+ model->setOperandValue(b8, b8_init, sizeof(int32_t) * 1);
+ static float op0_init[] = {-0.966213f, -0.467474f, -0.82203f};
+ model->setOperandValue(op0, op0_init, sizeof(float) * 3);
+ static float op1_init[] = {0.0f, 0.0f, 0.0f};
+ model->setOperandValue(op1, op1_init, sizeof(float) * 3);
+ model->addOperation(ANEURALNETWORKS_DEPTHWISE_CONV_2D, {op2, op0, op1, b4, b5, b6, b7, b8}, {op3});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op2},
+ {op3});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/explicit_add.mod.py b/tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/explicit_add.mod.py
new file mode 100644
index 000000000..b1c8f99a4
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/explicit_add.mod.py
@@ -0,0 +1,7 @@
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # input 0
+i2 = Output("op2", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # output 0
+i0 = Internal("op0", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # intermediate result
+model = Model()
+model = model.RawAdd(i1, i1).To(i0)
+model = model.RawAdd(i0, i1).To(i2)
+
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/stderr.txt.expect
new file mode 100644
index 000000000..c5a6e36b9
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output CTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/stdout.txt.expect
new file mode 100644
index 000000000..1221b7bda
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_explicit/stdout.txt.expect
@@ -0,0 +1,21 @@
+// Generated file (from: explicit_add.mod.py). Do not edit
+void CreateModel(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 8, 8, 3});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type0);
+ auto op0 = model->addOperand(&type0);
+ // Phase 2, operations
+ model->addOperation(ANEURALNETWORKS_ADD, {op1, op1}, {op0});
+ model->addOperation(ANEURALNETWORKS_ADD, {op0, op1}, {op2});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op2});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_float/addfloat.mod.py b/tests/nnapi/nnapi_test_generator/android-p/tests/P_float/addfloat.mod.py
new file mode 100644
index 000000000..f0e4f0430
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_float/addfloat.mod.py
@@ -0,0 +1,8 @@
+# model
+i1 = Input("operand1","TENSOR_FLOAT32", "{3,4}")
+i2 = Input("operand2","TENSOR_FLOAT32", "{3,4}")
+i3 = Input("operand3","TENSOR_FLOAT32", "{3,4}")
+o = Output("operand4","TENSOR_FLOAT32", "{3,4}")
+
+Model().Add(i1, i2).Add(i3).Out(o)
+
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_float/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_float/stderr.txt.expect
new file mode 100644
index 000000000..c5a6e36b9
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_float/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output CTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_float/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_float/stdout.txt.expect
new file mode 100644
index 000000000..eb8cc146b
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_float/stdout.txt.expect
@@ -0,0 +1,23 @@
+// Generated file (from: addfloat.mod.py). Do not edit
+void CreateModel(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {3,4});
+ // Phase 1, operands
+ auto operand1 = model->addOperand(&type0);
+ auto operand2 = model->addOperand(&type0);
+ auto operand3 = model->addOperand(&type0);
+ auto operand4 = model->addOperand(&type0);
+ auto tmp4 = model->addOperand(&type0);
+ // Phase 2, operations
+ model->addOperation(ANEURALNETWORKS_ADD, {operand1, operand2}, {tmp4});
+ model->addOperation(ANEURALNETWORKS_ADD, {operand3, tmp4}, {operand4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {operand1, operand2, operand3},
+ {operand4});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_full/addfloat.mod.py b/tests/nnapi/nnapi_test_generator/android-p/tests/P_full/addfloat.mod.py
new file mode 100644
index 000000000..dbe7701a1
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_full/addfloat.mod.py
@@ -0,0 +1,22 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{2}") # a vector of 2 float32s
+i2 = Input("op2", "TENSOR_FLOAT32", "{2}") # another vector of 2 float32s
+b0 = Int32Scalar("b0", 0) # an int32_t scalar bias
+i3 = Output("op3", "TENSOR_FLOAT32", "{2}")
+model = model.Operation("ADD", i1, i2, b0).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1.0, 2.0],
+ i2: # input 1
+ [3.0, 4.0]}
+
+output0 = {i3: # output 0
+ [4.0, 6.0]}
+
+# Instantiate an example
+Example((input0, output0))
+
+
+
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_full/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_full/stderr.txt.expect
new file mode 100644
index 000000000..c5a6e36b9
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_full/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output CTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_full/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_full/stdout.txt.expect
new file mode 100644
index 000000000..e3d2af3fa
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_full/stdout.txt.expect
@@ -0,0 +1,46 @@
+// Generated file (from: addfloat.mod.py). Do not edit
+void CreateModel(Model *model) {
+ OperandType type1(Type::INT32, {});
+ OperandType type0(Type::TENSOR_FLOAT32, {2});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type0);
+ auto b0 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type0);
+ // Phase 2, operations
+ static int32_t b0_init[] = {0};
+ model->setOperandValue(b0, b0_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_ADD, {op1, op2, b0}, {op3});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op3});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+// Generated file (from: addfloat.mod.py). Do not edit
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f}}, {1, {3.0f, 4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {4.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/lstm.mod.py b/tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/lstm.mod.py
new file mode 100644
index 000000000..cb1bf6010
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/lstm.mod.py
@@ -0,0 +1,161 @@
+#
+# Copyright (C) 2017 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# LSTM Test: No Cifg, No Peephole, No Projection, and No Clipping.
+
+model = Model()
+
+n_batch = 1
+n_input = 2
+# n_cell and n_output have the same size when there is no projection.
+n_cell = 4
+n_output = 4
+
+input = Input("input", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_input))
+
+input_to_input_weights = Input("input_to_input_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+input_to_forget_weights = Input("input_to_forget_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+input_to_cell_weights = Input("input_to_cell_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+input_to_output_weights = Input("input_to_output_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+
+recurrent_to_input_weights = Input("recurrent_to_intput_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+recurrent_to_forget_weights = Input("recurrent_to_forget_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+recurrent_to_cell_weights = Input("recurrent_to_cell_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+recurrent_to_output_weights = Input("recurrent_to_output_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+
+cell_to_input_weights = Input("cell_to_input_weights", "TENSOR_FLOAT32", "{0}")
+cell_to_forget_weights = Input("cell_to_forget_weights", "TENSOR_FLOAT32", "{0}")
+cell_to_output_weights = Input("cell_to_output_weights", "TENSOR_FLOAT32", "{0}")
+
+input_gate_bias = Input("input_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+forget_gate_bias = Input("forget_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+cell_gate_bias = Input("cell_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+output_gate_bias = Input("output_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+
+projection_weights = Input("projection_weights", "TENSOR_FLOAT32", "{0,0}")
+projection_bias = Input("projection_bias", "TENSOR_FLOAT32", "{0}")
+
+output_state_in = Input("output_state_in", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
+cell_state_in = Input("cell_state_in", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_cell))
+
+activation_param = Input("activation_param", "TENSOR_INT32", "{1}")
+cell_clip_param = Input("cell_clip_param", "TENSOR_FLOAT32", "{1}")
+proj_clip_param = Input("proj_clip_param", "TENSOR_FLOAT32", "{1}")
+
+scratch_buffer = IgnoredOutput("scratch_buffer", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, (n_cell * 4)))
+output_state_out = IgnoredOutput("output_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
+cell_state_out = IgnoredOutput("cell_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_cell))
+output = Output("output", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
+
+model = model.Operation("LSTM",
+ input,
+
+ input_to_input_weights,
+ input_to_forget_weights,
+ input_to_cell_weights,
+ input_to_output_weights,
+
+ recurrent_to_input_weights,
+ recurrent_to_forget_weights,
+ recurrent_to_cell_weights,
+ recurrent_to_output_weights,
+
+ cell_to_input_weights,
+ cell_to_forget_weights,
+ cell_to_output_weights,
+
+ input_gate_bias,
+ forget_gate_bias,
+ cell_gate_bias,
+ output_gate_bias,
+
+ projection_weights,
+ projection_bias,
+
+ output_state_in,
+ cell_state_in,
+
+ activation_param,
+ cell_clip_param,
+ proj_clip_param
+).To([scratch_buffer, output_state_out, cell_state_out, output])
+
+# Example 1. Input in operand 0,
+input0 = {input_to_input_weights: [-0.45018822, -0.02338299, -0.0870589, -0.34550029, 0.04266912, -0.15680569, -0.34856534, 0.43890524],
+ input_to_forget_weights: [0.09701663, 0.20334584, -0.50592935, -0.31343272, -0.40032279, 0.44781327, 0.01387155, -0.35593212],
+ input_to_cell_weights: [-0.50013041, 0.1370284, 0.11810488, 0.2013163, -0.20583314, 0.44344562, 0.22077113, -0.29909778],
+ input_to_output_weights: [-0.25065863, -0.28290087, 0.04613829, 0.40525138, 0.44272184, 0.03897077, -0.1556896, 0.19487578],
+
+ input_gate_bias: [0.,0.,0.,0.],
+ forget_gate_bias: [1.,1.,1.,1.],
+ cell_gate_bias: [0.,0.,0.,0.],
+ output_gate_bias: [0.,0.,0.,0.],
+
+ recurrent_to_input_weights: [
+ -0.0063535, -0.2042388, 0.31454784, -0.35746509, 0.28902304, 0.08183324,
+ -0.16555229, 0.02286911, -0.13566875, 0.03034258, 0.48091322,
+ -0.12528998, 0.24077177, -0.51332325, -0.33502164, 0.10629296],
+
+ recurrent_to_cell_weights: [
+ -0.3407414, 0.24443203, -0.2078532, 0.26320225, 0.05695659, -0.00123841,
+ -0.4744786, -0.35869038, -0.06418842, -0.13502428, -0.501764, 0.22830659,
+ -0.46367589, 0.26016325, -0.03894562, -0.16368064],
+
+ recurrent_to_forget_weights: [
+ -0.48684245, -0.06655136, 0.42224967, 0.2112639, 0.27654213, 0.20864892,
+ -0.07646349, 0.45877004, 0.00141793, -0.14609534, 0.36447752, 0.09196436,
+ 0.28053468, 0.01560611, -0.20127171, -0.01140004],
+
+ recurrent_to_output_weights: [
+ 0.43385774, -0.17194885, 0.2718237, 0.09215671, 0.24107647, -0.39835793,
+ 0.18212086, 0.01301402, 0.48572797, -0.50656658, 0.20047462, -0.20607421,
+ -0.51818722, -0.15390486, 0.0468148, 0.39922136],
+
+ cell_to_input_weights: [],
+ cell_to_forget_weights: [],
+ cell_to_output_weights: [],
+
+ projection_weights: [],
+ projection_bias: [],
+
+ activation_param: [4], # Tanh
+ cell_clip_param: [0.],
+ proj_clip_param: [0.],
+}
+
+# Instantiate examples
+# TODO: Add more examples after fixing the reference issue
+test_inputs = [
+ [2., 3.],
+# [3., 4.],[1., 1.]
+]
+golden_outputs = [
+ [-0.02973187, 0.1229473, 0.20885126, -0.15358765,],
+# [-0.03716109, 0.12507336, 0.41193449, -0.20860538],
+# [-0.15053082, 0.09120187, 0.24278517, -0.12222792]
+]
+
+for (input_tensor, output_tensor) in zip(test_inputs, golden_outputs):
+ output0 = {
+ scratch_buffer: [ 0 for x in range(n_batch * n_cell * 4) ],
+ cell_state_out: [ 0 for x in range(n_batch * n_cell) ],
+ output_state_out: [ 0 for x in range(n_batch * n_output) ],
+ output: output_tensor
+ }
+ input0[input] = input_tensor
+ input0[output_state_in] = [ 0 for _ in range(n_batch * n_output) ]
+ input0[cell_state_in] = [ 0 for _ in range(n_batch * n_cell) ]
+ Example((input0, output0))
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/stderr.txt.expect
new file mode 100644
index 000000000..c5a6e36b9
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output CTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/stdout.txt.expect
new file mode 100644
index 000000000..2ba320d77
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_lstm/stdout.txt.expect
@@ -0,0 +1,75 @@
+// Generated file (from: lstm.mod.py). Do not edit
+void CreateModel(Model *model) {
+ OperandType type5(Type::TENSOR_FLOAT32, {0,0});
+ OperandType type3(Type::TENSOR_FLOAT32, {0});
+ OperandType type9(Type::TENSOR_FLOAT32, {1, 16});
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2});
+ OperandType type6(Type::TENSOR_FLOAT32, {1, 4});
+ OperandType type8(Type::TENSOR_FLOAT32, {1});
+ OperandType type1(Type::TENSOR_FLOAT32, {4, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {4, 4});
+ OperandType type4(Type::TENSOR_FLOAT32, {4});
+ OperandType type7(Type::TENSOR_INT32, {1});
+ // Phase 1, operands
+ auto input = model->addOperand(&type0);
+ auto input_to_input_weights = model->addOperand(&type1);
+ auto input_to_forget_weights = model->addOperand(&type1);
+ auto input_to_cell_weights = model->addOperand(&type1);
+ auto input_to_output_weights = model->addOperand(&type1);
+ auto recurrent_to_intput_weights = model->addOperand(&type2);
+ auto recurrent_to_forget_weights = model->addOperand(&type2);
+ auto recurrent_to_cell_weights = model->addOperand(&type2);
+ auto recurrent_to_output_weights = model->addOperand(&type2);
+ auto cell_to_input_weights = model->addOperand(&type3);
+ auto cell_to_forget_weights = model->addOperand(&type3);
+ auto cell_to_output_weights = model->addOperand(&type3);
+ auto input_gate_bias = model->addOperand(&type4);
+ auto forget_gate_bias = model->addOperand(&type4);
+ auto cell_gate_bias = model->addOperand(&type4);
+ auto output_gate_bias = model->addOperand(&type4);
+ auto projection_weights = model->addOperand(&type5);
+ auto projection_bias = model->addOperand(&type3);
+ auto output_state_in = model->addOperand(&type6);
+ auto cell_state_in = model->addOperand(&type6);
+ auto activation_param = model->addOperand(&type7);
+ auto cell_clip_param = model->addOperand(&type8);
+ auto proj_clip_param = model->addOperand(&type8);
+ auto scratch_buffer = model->addOperand(&type9);
+ auto output_state_out = model->addOperand(&type6);
+ auto cell_state_out = model->addOperand(&type6);
+ auto output = model->addOperand(&type6);
+ // Phase 2, operations
+ model->addOperation(ANEURALNETWORKS_LSTM, {input, input_to_input_weights, input_to_forget_weights, input_to_cell_weights, input_to_output_weights, recurrent_to_intput_weights, recurrent_to_forget_weights, recurrent_to_cell_weights, recurrent_to_output_weights, cell_to_input_weights, cell_to_forget_weights, cell_to_output_weights, input_gate_bias, forget_gate_bias, cell_gate_bias, output_gate_bias, projection_weights, projection_bias, output_state_in, cell_state_in, activation_param, cell_clip_param, proj_clip_param}, {scratch_buffer, output_state_out, cell_state_out, output});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {input, input_to_input_weights, input_to_forget_weights, input_to_cell_weights, input_to_output_weights, recurrent_to_intput_weights, recurrent_to_forget_weights, recurrent_to_cell_weights, recurrent_to_output_weights, cell_to_input_weights, cell_to_forget_weights, cell_to_output_weights, input_gate_bias, forget_gate_bias, cell_gate_bias, output_gate_bias, projection_weights, projection_bias, output_state_in, cell_state_in, activation_param, cell_clip_param, proj_clip_param},
+ {scratch_buffer, output_state_out, cell_state_out, output});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {1, 2, 0};
+ return ignore.find(i) != ignore.end();
+}
+// Generated file (from: lstm.mod.py). Do not edit
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {2.0f, 3.0f}}, {1, {-0.45018822f, -0.02338299f, -0.0870589f, -0.34550029f, 0.04266912f, -0.15680569f, -0.34856534f, 0.43890524f}}, {2, {0.09701663f, 0.20334584f, -0.50592935f, -0.31343272f, -0.40032279f, 0.44781327f, 0.01387155f, -0.35593212f}}, {3, {-0.50013041f, 0.1370284f, 0.11810488f, 0.2013163f, -0.20583314f, 0.44344562f, 0.22077113f, -0.29909778f}}, {4, {-0.25065863f, -0.28290087f, 0.04613829f, 0.40525138f, 0.44272184f, 0.03897077f, -0.1556896f, 0.19487578f}}, {5, {-0.0063535f, -0.2042388f, 0.31454784f, -0.35746509f, 0.28902304f, 0.08183324f, -0.16555229f, 0.02286911f, -0.13566875f, 0.03034258f, 0.48091322f, -0.12528998f, 0.24077177f, -0.51332325f, -0.33502164f, 0.10629296f}}, {6, {-0.48684245f, -0.06655136f, 0.42224967f, 0.2112639f, 0.27654213f, 0.20864892f, -0.07646349f, 0.45877004f, 0.00141793f, -0.14609534f, 0.36447752f, 0.09196436f, 0.28053468f, 0.01560611f, -0.20127171f, -0.01140004f}}, {7, {-0.3407414f, 0.24443203f, -0.2078532f, 0.26320225f, 0.05695659f, -0.00123841f, -0.4744786f, -0.35869038f, -0.06418842f, -0.13502428f, -0.501764f, 0.22830659f, -0.46367589f, 0.26016325f, -0.03894562f, -0.16368064f}}, {8, {0.43385774f, -0.17194885f, 0.2718237f, 0.09215671f, 0.24107647f, -0.39835793f, 0.18212086f, 0.01301402f, 0.48572797f, -0.50656658f, 0.20047462f, -0.20607421f, -0.51818722f, -0.15390486f, 0.0468148f, 0.39922136f}}, {9, {}}, {10, {}}, {11, {}}, {12, {0.0f, 0.0f, 0.0f, 0.0f}}, {13, {1.0f, 1.0f, 1.0f, 1.0f}}, {14, {0.0f, 0.0f, 0.0f, 0.0f}}, {15, {0.0f, 0.0f, 0.0f, 0.0f}}, {16, {}}, {17, {}}, {18, {0, 0, 0, 0}}, {19, {0, 0, 0, 0}}, {21, {0.0f}}, {22, {0.0f}}},
+ // int -> INT32 map
+ {{20, {4}}},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{1, {0, 0, 0, 0}}, {2, {0, 0, 0, 0}}, {3, {-0.02973187f, 0.1229473f, 0.20885126f, -0.15358765f}}, {0, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/averpoolfloat.mod.py b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/averpoolfloat.mod.py
new file mode 100644
index 000000000..17d6e0a4f
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/averpoolfloat.mod.py
@@ -0,0 +1,20 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_QUANT8_ASYMM", "0.0f, 127.5f, {1, 2, 2, 1}")
+cons1 = Int32Scalar("cons1", 1)
+act = Int32Scalar("act", 0)
+o = Output("op3", "TENSOR_QUANT8_ASYMM", "0.0f, 127.5f, {1, 2, 2, 1}")
+model = model.Operation("AVERAGE_POOL", i1, cons1, cons1, cons1, cons1, cons1, act).To(o)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1, 2, 3, 4]}
+
+output0 = {o: # output 0
+ [1, 2, 3, 4]}
+
+# Instantiate an example
+Example((input0, output0))
+
+
+
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/stderr.txt.expect
new file mode 100644
index 000000000..c5a6e36b9
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output CTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/stdout.txt.expect
new file mode 100644
index 000000000..b4632d34d
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_avgpool/stdout.txt.expect
@@ -0,0 +1,48 @@
+// Generated file (from: averpoolfloat.mod.py). Do not edit
+void CreateModel(Model *model) {
+ OperandType type1(Type::INT32, {});
+ OperandType type0(Type::TENSOR_QUANT8_ASYMM, 0.0f, 127.5f, {1, 2, 2, 1});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto cons1 = model->addOperand(&type1);
+ auto act = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type0);
+ // Phase 2, operations
+ static int32_t cons1_init[] = {1};
+ model->setOperandValue(cons1, cons1_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_AVERAGE_POOL, {op1, cons1, cons1, cons1, cons1, cons1, act}, {op3});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op3});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+// Generated file (from: averpoolfloat.mod.py). Do not edit
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {1, 2, 3, 4}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {1, 2, 3, 4}}}
+}
+}, // End of an example
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/quantized.mod.py b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/quantized.mod.py
new file mode 100644
index 000000000..7ef623513
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/quantized.mod.py
@@ -0,0 +1,11 @@
+i4 = Int32Scalar("b4", 2)
+i5 = Int32Scalar("b5", 2)
+i6 = Int32Scalar("b6", 2)
+i7 = Int32Scalar("b7", 0)
+i2 = Input("op2", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 1}") # input 0
+i3 = Output("op3", "TENSOR_QUANT8_ASYMM", "{1, 1, 1, 1}") # output 0
+i0 = Parameter("op0", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 1}", [1, 1, 1, 1]) # parameters
+i1 = Parameter("op1", "TENSOR_INT32", "{1}", [0]) # parameters
+model = Model()
+model = model.Conv(i2, i0, i1, i4, i5, i6, i7).To(i3)
+
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/stderr.txt.expect
new file mode 100644
index 000000000..c5a6e36b9
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output CTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/stdout.txt.expect
new file mode 100644
index 000000000..6b28bdd54
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_quantized_conv/stdout.txt.expect
@@ -0,0 +1,40 @@
+// Generated file (from: quantized.mod.py). Do not edit
+void CreateModel(Model *model) {
+ OperandType type0(Type::INT32, {});
+ OperandType type3(Type::TENSOR_INT32, {1});
+ OperandType type2(Type::TENSOR_QUANT8_ASYMM, {1, 1, 1, 1});
+ OperandType type1(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 1});
+ // Phase 1, operands
+ auto b4 = model->addOperand(&type0);
+ auto b5 = model->addOperand(&type0);
+ auto b6 = model->addOperand(&type0);
+ auto b7 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto op0 = model->addOperand(&type1);
+ auto op1 = model->addOperand(&type3);
+ // Phase 2, operations
+ static int32_t b4_init[] = {2};
+ model->setOperandValue(b4, b4_init, sizeof(int32_t) * 1);
+ static int32_t b5_init[] = {2};
+ model->setOperandValue(b5, b5_init, sizeof(int32_t) * 1);
+ static int32_t b6_init[] = {2};
+ model->setOperandValue(b6, b6_init, sizeof(int32_t) * 1);
+ static int32_t b7_init[] = {0};
+ model->setOperandValue(b7, b7_init, sizeof(int32_t) * 1);
+ static uint8_t op0_init[] = {1, 1, 1, 1};
+ model->setOperandValue(op0, op0_init, sizeof(uint8_t) * 4);
+ static int32_t op1_init[] = {0};
+ model->setOperandValue(op1, op1_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op2, op0, op1, b4, b5, b6, b7}, {op3});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op2},
+ {op3});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/stderr.txt.expect
new file mode 100644
index 000000000..3decb4c1c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output VTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/stdout.txt.expect
new file mode 100644
index 000000000..14cd4f99d
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/stdout.txt.expect
@@ -0,0 +1,93 @@
+// Generated code. Do not edit
+// Create the model
+Model createTestModel() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 1},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::ADD,
+ .inputs = {0, 2, 1},
+ .outputs = {3},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {3};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 0, 0, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+// Generated file (from: vts_full.mod.py). Do not edit
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 8.0f, 10.0f, 12.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/vts_full.mod.py b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/vts_full.mod.py
new file mode 100644
index 000000000..4ad3b2e4b
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_full/vts_full.mod.py
@@ -0,0 +1,19 @@
+# Force VTS mode
+Configuration.vts = True
+# model
+model = Model()
+i0 = Input("operand0","TENSOR_FLOAT32", "{1, 2, 2, 1}")
+b0 = Int32Scalar("b0", 0)
+p0 = Parameter("p0", "TENSOR_FLOAT32", "{1, 2, 2, 1}", [5.0, 6.0, 7.0, 8.0])
+o = Output("out","TENSOR_FLOAT32", "{1, 2, 2, 1}")
+
+model.Operation("ADD", i0, p0, b0).To(o)
+
+input0 = {i0: # input 0
+ [1.0, 2.0, 3.0, 4.0]}
+
+output0 = {o: # output 0
+ [6.0, 8.0, 10.0, 12.0]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/addfloat.mod.py b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/addfloat.mod.py
new file mode 100644
index 000000000..976cb35ec
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/addfloat.mod.py
@@ -0,0 +1,12 @@
+# Force VTS mode
+Configuration.vts = True
+# model
+i1 = Input("operand1","TENSOR_FLOAT32", "{3,4}")
+i2 = Input("operand2","TENSOR_FLOAT32", "{3,4}")
+i3 = Input("operand3","TENSOR_FLOAT32", "{3,4}")
+Parameter("p1", "TENSOR_QUANT8_ASYMM", "{1, 2, 3}", [1, 2, 3, 4, 5, 6])
+Parameter("p2", "TENSOR_FLOAT32", "{}", [42.0])
+o = Output("operand4","TENSOR_FLOAT32", "{3,4}")
+
+Model().Add(i1, i2).Add(i3).Out(o)
+
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/stderr.txt.expect
new file mode 100644
index 000000000..3decb4c1c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output VTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/stdout.txt.expect
new file mode 100644
index 000000000..2e74d1fc0
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_vts_operands/stdout.txt.expect
@@ -0,0 +1,103 @@
+// Generated code. Do not edit
+// Create the model
+Model createTestModel() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {3,4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {3,4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {3,4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 3},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 6},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 6, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {3,4},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {3,4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::TEMPORARY_VARIABLE,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::ADD,
+ .inputs = {0, 1},
+ .outputs = {6},
+ },
+ {
+ .type = OperationType::ADD,
+ .inputs = {2, 6},
+ .outputs = {5},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1, 2};
+ const std::vector<uint32_t> outputIndexes = {5};
+ std::vector<uint8_t> operandValues = {
+ 1, 2, 3, 4, 5, 6, 0, 0, 40, 66
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/stderr.txt.expect
new file mode 100644
index 000000000..c5a6e36b9
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output CTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/stdout.txt.expect
new file mode 100644
index 000000000..fa67d68ac
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/stdout.txt.expect
@@ -0,0 +1,51 @@
+// Generated file (from: weird_add.mod.py). Do not edit
+void CreateModel(Model *model) {
+ OperandType type1(Type::INT32, {});
+ OperandType type0(Type::TENSOR_FLOAT32, {2});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type0);
+ auto b0 = model->addOperand(&type1);
+ auto tmp = model->addOperand(&type0);
+ auto tmp2 = model->addOperand(&type0);
+ auto op3 = model->addOperand(&type0);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static int32_t b0_init[] = {0};
+ model->setOperandValue(b0, b0_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_ADD, {op1, op2, b0}, {tmp});
+ model->addOperation(ANEURALNETWORKS_ADD, {tmp, op2, b0}, {tmp2});
+ model->addOperation(ANEURALNETWORKS_ADD, {tmp2, op4, b0}, {op3});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2, op4},
+ {op3});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+// Generated file (from: weird_add.mod.py). Do not edit
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f}}, {1, {3.0f, 4.0f}}, {2, {5.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {9.0f, 12.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/weird_add.mod.py b/tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/weird_add.mod.py
new file mode 100644
index 000000000..a230267a4
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/P_weird/weird_add.mod.py
@@ -0,0 +1,29 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{2}") # a vector of 2 float32s
+i2 = Input("op2", "TENSOR_FLOAT32", "{2}") # another vector of 2 float32s
+b0 = Int32Scalar("b0", 0) # an int32_t scalar bias
+tmp = Internal("tmp", "TENSOR_FLOAT32", "{2}")
+tmp2 = Internal("tmp2", "TENSOR_FLOAT32", "{2}")
+o3 = Output("op3", "TENSOR_FLOAT32", "{2}")
+i4 = Input("op4", "TENSOR_FLOAT32", "{2}") # another vector of 2 float32s
+model = model.Operation("ADD", i1, i2, b0).To(tmp)
+model = model.Operation("ADD", tmp, i2, b0).To(tmp2)
+model = model.Operation("ADD", tmp2, i4, b0).To(o3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1.0, 2.0],
+ i2: # input 1
+ [3.0, 4.0],
+ i4: # input 4
+ [5.0, 6.0]}
+
+output0 = {o3: # output 0
+ [9.0, 12.0]}
+
+# Instantiate an example
+Example((input0, output0))
+
+
+
diff --git a/tests/nnapi/nnapi_test_generator/android-p/tests/test.py b/tests/nnapi/nnapi_test_generator/android-p/tests/test.py
new file mode 100644
index 000000000..c987cf680
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/tests/test.py
@@ -0,0 +1,328 @@
+#!/usr/bin/python3
+
+# Copyright 2017, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+"""NN Model Test Compiler Test.
+
+Runs subdirectories of tests for the test generator/compiler.
+"""
+
+import filecmp
+import glob
+import os
+import re
+import shutil
+import subprocess
+import sys
+import unittest
+
+
+__author__ = 'Android'
+
+
+DOTTED_LINE = '................'
+
+class OrigFile:
+ OrigDir = None
+
+class TestGeneratorTests(unittest.TestCase):
+ """Class to contain all the unittest test cases.
+
+ Tests will be dynamically added to this class as methods.
+ No static tests, so this class is initially empty.
+
+ """
+ pass
+
+
+def GenerateTests(dir_name):
+ """Creates a test method that can be added as method to GenerateTests."""
+ cwd = os.getcwd()
+ def Test(self):
+ os.chdir(cwd)
+ ExecTest(dir_name, self)
+ return Test
+
+
+def AddUnitTests(test_dirs):
+ """Adds a test to Tests for each directory in test_dirs."""
+
+ for t in test_dirs:
+ # Must start with 'test_' according to unittest
+ test_name = 'test_%s' % t
+ test = GenerateTests(t)
+ # Add test as method to TestGeneratorTests with test_name as method name
+ setattr(TestGeneratorTests, test_name, test)
+
+
+class Options(object):
+ verbose = 0
+ cleanup = 1
+ update_cts = 0
+ zero_return = 0
+
+
+def CompareFiles(actual, expect):
+ """Compares actual and expect for equality."""
+ if not os.path.isfile(actual):
+ if Options.verbose:
+ print ('Could not find %s' % actual)
+ return False
+ if not os.path.isfile(expect):
+ if Options.verbose:
+ print ('Could not find %s' % expect)
+ return False
+
+ return filecmp.cmp(actual, expect, False)
+
+
+def CopyIfDifferent(src, dst):
+ """Updates dst if it is different from src."""
+ if not CompareFiles(src, dst):
+ if Options.verbose:
+ print ('Copying from %s to %s' % (src, dst))
+ shutil.copyfile(src, dst)
+
+
+def GetCommandLineArgs(filename):
+ """Extracts command line arguments from first comment line in a file."""
+ f = open(filename, 'r')
+ line = f.readline()
+ f.close()
+ if line[0] == '/' and line[1] == '/':
+ return line[2:].strip()
+ else:
+ return ''
+
+
+def ReadFileToStr(filename):
+ """Returns contents of file as a str."""
+ with open(filename, 'r') as f:
+ return f.read()
+
+
+def ReportIfDifferFromExpected(tests, name, file1, file2):
+ """Fails tests if file1 and file2 differ."""
+ if not CompareFiles(file1, file2):
+ if Options.verbose:
+ err_message = ('%s is different:\n'
+ 'expected:\n%s\n%s%s\n\n'
+ 'actual:\n%s\n%s%s\n') % (
+ name,
+ DOTTED_LINE, ReadFileToStr(file1), DOTTED_LINE,
+ DOTTED_LINE, ReadFileToStr(file2), DOTTED_LINE)
+ else:
+ err_message = '%s is different' % name
+ tests.fail(err_message)
+
+
+def GetRSFiles():
+ """Returns a list of files in cwd with extension '.rs' or '.fs'."""
+ rs_files = glob.glob('*.mod.py')
+ rs_files.sort()
+ return rs_files
+
+
+def GetOutDir():
+ return os.path.abspath(os.path.join(OrigFile.OrigDir, "../"))
+
+
+# Declare/define cache variable for GetOutDir to cache results
+# This way we only need to call subprocesses once to get the directory
+GetOutDir.cache = None
+
+
+def CreateCmd(run_vts):
+ """Creates the test command to run for the current test."""
+ cmd_string = ('%s/%s_generator.py'
+ ) % (GetOutDir(), "test" if not run_vts else "vts")
+ base_args = cmd_string.split()
+ rs_files = GetRSFiles()
+
+ # Extra command line arguments can be placed as // comments at the start of
+ # any .rs file. We automatically bundle up all of these extra args and invoke
+ # llvm-rs-cc with them.
+ extra_args_str = ''
+ for rs_file in rs_files:
+ extra_args_str += GetCommandLineArgs(rs_file)
+ extra_args = extra_args_str.split()
+
+ args = base_args + extra_args + rs_files
+ return args
+
+def Cleanup():
+ """Cleans up the cwd of any tmp files created in current test."""
+ try:
+ os.remove('stdout.txt')
+ os.remove('stderr.txt')
+ shutil.rmtree('tmp/')
+ except OSError:
+ pass
+
+
+def CheckTestResult(dir_name, subprocess_ret, tests, args):
+ """Checks the result of the subprocess command to see if it passed/failed.
+
+ If dir_name starts with 'F_', then subprocess is expected to fail.
+ If it instead succeeded, then this test is failed.
+ Vice versa with a dir_name starting with 'P_'.
+
+ Args:
+ dir_name: name of current directory/test name
+ subprocess_ret: return code of subprocess
+ tests: unittest, call tests.fail(reason) when failure
+ args: the arguments for the command that was run
+ """
+ if dir_name[0:2] == 'F_':
+ if subprocess_ret == 0:
+ if Options.verbose:
+ err_message = ('Command (%s) passed on invalid input\n'
+ 'stdout:\n%s\n%s%s\n') % (
+ ' '.join(args),
+ DOTTED_LINE, ReadFileToStr('stdout.txt'), DOTTED_LINE
+ )
+ else:
+ err_message = 'Command passed on invalid input'
+ tests.fail(err_message)
+ elif dir_name[0:2] == 'P_':
+ if subprocess_ret != 0:
+ if Options.verbose:
+ err_message = ('Command (%s) failed on valid input\n'
+ 'stderr:\n%s\n%s%s\n') % (
+ ' '.join(args),
+ DOTTED_LINE, ReadFileToStr('stderr.txt'), DOTTED_LINE
+ )
+ else:
+ err_message = 'Command failed on valid input'
+ tests.fail(err_message)
+ else:
+ tests.fail('Invalid test name: ' + dir_name +
+ ', should start with F_ or P_')
+
+
+
+def ExecTest(dir_name, tests):
+ """Executes an test generator test from dir_name."""
+
+ os.chdir(dir_name)
+ stdout_file = open('stdout.txt', 'w+')
+ stderr_file = open('stderr.txt', 'w+')
+ run_vts = (dir_name[2:5] == 'vts')
+ args = CreateCmd(run_vts)
+
+ if Options.verbose > 1:
+ print ('Executing:', ' '.join(args))
+
+ # Execute the command and check the resulting shell return value.
+ # All tests that are expected to FAIL have directory names that
+ # start with 'F_'. Other tests that are expected to PASS have
+ # directory names that start with 'P_'.
+ ret = 0
+ try:
+ ret = subprocess.call(args, stdout=stdout_file, stderr=stderr_file)
+ except OSError:
+ tests.fail('subprocess.call failed: ' + ' '.join(args))
+
+ stdout_file.close()
+ stderr_file.close()
+
+ CheckTestResult(dir_name, ret, tests, args)
+
+ ReportIfDifferFromExpected(tests, 'stdout', 'stdout.txt.expect', 'stdout.txt')
+ ReportIfDifferFromExpected(tests, 'stderr', 'stderr.txt.expect', 'stderr.txt')
+
+ if Options.cleanup:
+ Cleanup()
+
+
+def Usage():
+ """Print out usage information."""
+ print ('Usage: %s [OPTION]... [TESTNAME]...'
+ 'Renderscript Compiler Test Harness\n'
+ 'Runs TESTNAMEs (all tests by default)\n'
+ 'Available Options:\n'
+ ' -h, --help Help message\n'
+ ' -n, --no-cleanup Don\'t clean up after running tests\n'
+ ' -v, --verbose Verbose output. Enter multiple -v to get more verbose.\n'
+ ' -z, --zero-return Return 0 as exit code no matter if tests fail. Required for TreeHugger.\n'
+ ) % (sys.argv[0]),
+ return
+
+
+def main():
+ """Runs the unittest suite.
+
+ Parses command line arguments, adds test directories as tests.
+
+ Returns:
+ 0 if '-z' flag is set.
+ Else unittest.main() returns with its own error code.
+ """
+
+ OrigFile.OrigDir = os.path.dirname(os.path.abspath(__file__))
+ # Chdir to the directory this file is in since tests are in this directory
+ os.chdir(OrigFile.OrigDir)
+ files = []
+ for arg in sys.argv[1:]:
+ if arg in ('-h', '--help'):
+ Usage()
+ return 0
+ elif arg in ('-n', '--no-cleanup'):
+ Options.cleanup = 0
+ elif arg in ('-u', '--update-cts'):
+ Options.update_cts = 1
+ elif arg in ('-v', '--verbose'):
+ Options.verbose += 1
+ elif arg in ('-z', '--zero-return'):
+ Options.zero_return = 1
+ else:
+ # Test list to run
+ if os.path.isdir(arg):
+ files.append(arg)
+ else:
+ print >> sys.stderr, 'Invalid test or option: %s' % arg
+ return 1
+
+ if not files:
+ file_names = os.listdir('.')
+ # Test names must start with 'F_' or 'P_'
+ # 'F_' tests are expected to fail
+ # 'P_' tests are expected to pass
+ for f in file_names:
+ if os.path.isdir(f) and (f[0:2] == 'F_' or f[0:2] == 'P_'):
+ files.append(f)
+ files.sort()
+
+ AddUnitTests(files)
+
+ # verbosity=2 is necessary for PythonUnitTestRunner to parse the results
+ # Otherwise verbosity does not matter
+ # If Options.zero_return is set, do not let unittest.main() exit
+ # This is necessary in TreeHugger to distinguish between failing tests and
+ # failing to execute the python script
+ # If Options.zero_return is not set, let unittest.main() exit
+ # In this case it will return a non-zero code if any tests fail
+ unittest_exit = Options.zero_return == 0
+ unittest.main(verbosity=2,
+ argv=[sys.argv[0]] + ['TestGeneratorTests'],
+ exit=unittest_exit)
+
+ return 0
+
+
+if __name__ == '__main__':
+ sys.exit(main())
+
diff --git a/tests/nnapi/nnapi_test_generator/android-p/vts_generator.py b/tests/nnapi/nnapi_test_generator/android-p/vts_generator.py
new file mode 100644
index 000000000..ab34e2bda
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-p/vts_generator.py
@@ -0,0 +1,247 @@
+#!/usr/bin/python3
+
+# Copyright 2017, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+"""VTS testcase generator
+
+Implements VTS test backend. Shares most logic with the CTS test
+generator. Invoked by ml/nn/runtime/test/specs/generate_vts_tests.sh;
+See that script for details on how this script is used.
+
+"""
+
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+import argparse
+from functools import reduce
+import math
+import os
+import struct
+import sys
+import contextlib
+import test_generator
+import pprint
+# Stuff from test generator
+from test_generator import Configuration
+from test_generator import Example
+from test_generator import Float32Scalar
+from test_generator import IgnoredOutput
+from test_generator import Input
+from test_generator import Int32Scalar
+from test_generator import Internal
+from test_generator import Model
+from test_generator import Operand
+from test_generator import Output
+from test_generator import Parameter
+from test_generator import smart_open
+
+# Take a model from command line
+def import_source():
+ parser = argparse.ArgumentParser()
+ parser.add_argument("spec", help="the spec file")
+ parser.add_argument(
+ "-m", "--model", help="the output model file", default="-")
+ parser.add_argument(
+ "-e", "--example", help="the output example file", default="-")
+ args = parser.parse_args()
+
+ if os.path.exists(args.spec):
+ test_generator.FileNames.SpecFile = os.path.basename(args.spec)
+ exec (open(args.spec).read())
+
+ return (args.model, args.example)
+
+# Generate operands in VTS format
+def generate_vts_operands():
+ # Dump operand definitions
+ op_def = """\
+ {{
+ .type = OperandType::{operand_type},
+ .dimensions = {shape},
+ .numberOfConsumers = {no_consumers},
+ .scale = {scale},
+ .zeroPoint = {zero_point},
+ .lifetime = OperandLifeTime::{lifetime},
+ .location = {{.poolIndex = 0, .offset = {offset}, .length = {length}}},
+ }}"""
+ offset = 0
+ op_definitions = []
+ for o in Operand.operands.objects():
+ ty = o.type
+ no_consumers = len(o.outs) if o.traversable() else 0
+ lifetime = o.lifetime()
+ length = ty.get_size() if o.is_weight() else 0
+ real_shape, scale, zero_point = ty.get_parsed_shape()
+ scale = float(scale)
+ zero_point = int(zero_point)
+ op = {
+ "operand_type": ty.get_element_type(),
+ "shape": "{%s}" % real_shape,
+ "no_consumers": no_consumers,
+ "scale": test_generator.pretty_print_as_float(scale),
+ "zero_point": str(int(zero_point)),
+ "lifetime": lifetime,
+ "offset": offset if o.is_weight() else 0,
+ "length": length
+ }
+ offset += length
+ op_definitions.append(op_def.format(**op))
+
+ op_vec = """\
+ const std::vector<Operand> operands = {{
+{0}
+ }};""".format(",\n".join(op_definitions))
+ return op_vec
+
+# Generate VTS operand values
+def generate_vts_operand_values():
+ weights = [o for o in Operand.operands.objects() if o.is_weight()]
+ binit = []
+ for w in weights:
+ ty = w.type.get_element_type()
+ if ty == "TENSOR_QUANT8_ASYMM":
+ binit += w.initializer
+ elif ty in {"TENSOR_FLOAT32", "FLOAT32", "TENSOR_INT32", "INT32"}:
+ fmt = "f" if (ty == "TENSOR_FLOAT32" or ty == "FLOAT32") else "i"
+ for f in w.initializer:
+ binit += [int(x) for x in struct.pack(fmt, f)]
+ else:
+ assert 0 and "Unsupported VTS operand type"
+
+ init_defs = ", ".join([str(x) for x in binit])
+ if (init_defs != ""):
+ init_defs = "\n %s\n " % init_defs
+ byte_vec_fmt = """{%s}""" % init_defs
+ return byte_vec_fmt
+
+# Generate VTS operations
+class VTSOps(object):
+ vts_ops = []
+ def generate_vts_operation(op):
+ try:
+ opcode =op.optype
+ except AttributeError: # not an op, but things like weights
+ return
+ op_fmt = """\
+ {{
+ .type = OperationType::{op_code},
+ .inputs = {{{ins}}},
+ .outputs = {{{outs}}},
+ }}"""
+ op_content = {
+ 'op_code': op.optype,
+ 'op_type': op.type.get_element_type(),
+ 'ins': ", ".join([str(x.ID()) for x in op.ins]),
+ 'outs': ", ".join([str(x.ID()) for x in op.outs]),
+ }
+ VTSOps.vts_ops.append(op_fmt.format(**op_content))
+ return True
+
+def generate_vts_operations(model_file):
+ test_generator.TopologicalSort(lambda x: VTSOps.generate_vts_operation(x))
+ return ",\n".join(VTSOps.vts_ops)
+
+
+def generate_vts_model(model_file):
+ operand_values_fmt = ""
+ if Configuration.useSHM():
+ # Boilerplate code for passing weights in shared memory
+ operand_values_fmt = """\
+ std::vector<uint8_t> operandValues = {{}};
+ const uint8_t data[] = {operand_values};
+
+ // Allocate segment of android shared memory, wrapped in hidl_memory.
+ // This object will be automatically freed when sharedMemory is destroyed.
+ hidl_memory sharedMemory = allocateSharedMemory(sizeof(data));
+
+ // Mmap ashmem into usable address and hold it within the mappedMemory object.
+ // MappedMemory will automatically munmap the memory when it is destroyed.
+ sp<IMemory> mappedMemory = mapMemory(sharedMemory);
+
+ if (mappedMemory != nullptr) {{
+ // Retrieve the mmapped pointer.
+ uint8_t* mappedPointer =
+ static_cast<uint8_t*>(static_cast<void*>(mappedMemory->getPointer()));
+
+ if (mappedPointer != nullptr) {{
+ // Acquire the write lock for the shared memory segment, upload the data,
+ // and release the lock.
+ mappedMemory->update();
+ std::copy(data, data + sizeof(data), mappedPointer);
+ mappedMemory->commit();
+ }}
+ }}
+
+ const std::vector<hidl_memory> pools = {{sharedMemory}};
+"""
+ else:
+ # Passing weights via operandValues
+ operand_values_fmt = """\
+ std::vector<uint8_t> operandValues = {operand_values};
+ const std::vector<hidl_memory> pools = {{}};
+"""
+
+ operand_values_val = {
+ 'operand_values': generate_vts_operand_values()
+ }
+ operand_values = operand_values_fmt.format(**operand_values_val)
+ # operand_values = operand_values_fmt
+ model_fmt = """\
+// Generated code. Do not edit
+// Create the model
+Model createTestModel() {{
+{operand_decls}
+
+ const std::vector<Operation> operations = {{
+{operations}
+ }};
+
+ const std::vector<uint32_t> inputIndexes = {{{input_indices}}};
+ const std::vector<uint32_t> outputIndexes = {{{output_indices}}};
+{operand_values}
+ return {{
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,{relaxed_field}
+ }};
+}}
+"""
+ model = {
+ "operations": generate_vts_operations(sys.stdout),
+ "operand_decls": generate_vts_operands(),
+ "operand_values": operand_values,
+ "output_indices": ", ".join([str(i.ID()) for i in Output.get_outputs()]),
+ "input_indices": ", ".join([str(i.ID()) for i in Input.get_inputs(True)]),
+ "relaxed_field":
+ "\n .relaxComputationFloat32toFloat16 = true," if (Model.isRelaxed()) else ""
+ }
+ print(model_fmt.format(**model), file = model_file)
+
+def generate_vts(model_file):
+ generate_vts_model(model_file)
+ print (IgnoredOutput.gen_ignored(), file=model_file)
+
+if __name__ == "__main__":
+ (model, example) = import_source()
+ print("Output VTS model: %s" % model, file=sys.stderr)
+ print("Output example:" + example, file=sys.stderr)
+
+ with smart_open(model) as model_file:
+ generate_vts(model_file)
+ with smart_open(example) as example_file:
+ Example.dump(example_file)
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/README.md b/tests/nnapi/nnapi_test_generator/android-q-beta/README.md
new file mode 100644
index 000000000..62a6978cd
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/README.md
@@ -0,0 +1,408 @@
+# NN-API Test Generator
+
+Original code is at https://android.googlesource.com/platform/frameworks/ml/+/ee61649/nn/tools/test_generator/
+
+### Fix for neurun
+
+- Update path in this README.md file for neurun NNAPI frontend test
+ - `nn/runtime/test/specs/` => `tests/nnapi/specs/`
+ - $ANDROID_BUILD_TOP/frameworks/ml/nn/runtime/test/specs => $NNAS_PROJECT_PATH/tests/nnapi/specs
+ - Rebuild with mm afterwards => Rebuild afterwards (mm is not supported)
+
+---
+
+# Using the NN-API Test Generator
+
+## Prerequisites
+
+- Python3
+- Numpy
+
+## Writing a Test Specification
+
+You should create new test specs in `tests/nnapi/specs/<version>/` and name it with `.mod.py` suffix, so that other tools can automatically update the unit tests.
+
+### Specifying Operands
+
+#### Syntax
+
+```
+OperandType(name, (type, shape, <optional scale, zero point>), <optional initializer>)
+```
+
+For example,
+
+```Python
+# p1 is a 2-by-2 fp matrix parameter, with value [1, 2; 3, 4]
+p1 = Parameter("param", ("TENSOR_FLOAT32", [2, 2]), [1, 2, 3, 4])
+
+# i1 is a quantized input of shape (2, 256, 256, 3), with scale = 0.5, zero point = 128
+i1 = Input("input", ("TENSOR_QUANT8_ASYMM", [2, 256, 256, 3], 0.5, 128))
+
+# p2 is an Int32 scalar with value 1
+p2 = Int32Scalar("act", 1)
+```
+
+#### OperandType
+
+There are currently 10 operand types supported by the test generator.
+
+- Input
+- Output
+ * IgnoredOutput, will not compare results in the test
+- Parameter
+ * Int32Scalar, shorthand for parameter with type INT32
+ * Float32Scalar, shorthand for parameter with type FLOAT32
+ * Int32Vector, shorthand for 1-D TENSOR_INT32 parameter
+ * Float32Vector, shorthand for 1-D TENSOR_FLOAT32 parameter
+- Internal, for model with multiple operations
+
+### Specifying Models
+
+#### Instantiate a model
+
+```Python
+# Instantiate a model
+model = Model()
+
+# Instantiate a model with a name
+model2 = Model("model_name")
+```
+
+#### Add an operation
+
+```
+model.Operation(optype, i1, i2, ...).To(o1, o2, ...)
+```
+
+For example,
+
+```Python
+model.Operation("ADD", i1, i2, act).To(o1)
+```
+
+#### Use implicit operands
+
+Simple scalar and 1-D vector parameters can now be directly passed to Operation constructor, and test generator will deduce the operand type from the value provided.
+
+```Python
+model.Operation("MEAN", i1, [1], 0) # axis = [1], keep_dims = 0
+```
+
+Note that, for fp values, the initializer should all be Python fp numbers, e.g. use `1.0` or `1.` instead of `1` for implicit fp operands.
+
+### Specifying Inputs and Expected Outputs
+
+The combination of inputs and expected outputs is called an example for a given model. An example is defined like
+
+```Python
+# Example 1, separate dictionary for inputs and outputs
+input1 = {
+ i1: [1, 2],
+ i2: [3, 4]
+}
+output1 = {o1: [4, 6]}
+
+# Example 2, combined dictionary
+example2_values = {
+ i1: [5, 6],
+ i2: [7, 8],
+ o1: [12, 14]
+}
+
+# Instantiate an example
+Example((input1, output1), example2_values)
+```
+
+By default, examples will be attached to the most recent instantiated model. You can explicitly specify the target model, and optionally, the example name by
+
+```Python
+Example((input1, output1), example2_values, model=model, name="example_name")
+```
+
+### Specifying Variations
+
+You can add variations to the example so that the test generator can automatically create multiple tests. Currently, 6 types of variation are supported:
+
+- DefaultVariation, i.e. no variation
+- DataTypeConverter
+- DataLayoutConverter
+- AxisConverter
+- RelaxedModeConverter
+- ParameterAsInputConverter
+- ActivationConverter
+
+#### DataTypeConverter
+
+Convert input/parameter/output to the specified type, e.g. float32 -> quant8. The target data type for each operand to transform has to be explicitly specified. It is the spec writer's responsibility to ensure such conversion is valid.
+
+```Python
+converter = DataTypeConverter(name="variation_name").Identify({
+ op1: (target_type, target_scale, target_zero_point),
+ op2: (target_type, target_scale, target_zero_point),
+ ...
+})
+```
+
+#### DataLayoutConverter
+
+Convert input/parameter/output between NHWC and NCHW. The caller need to provide a list of target operands to transform, and also the data layout parameter to set.
+
+```Python
+converter = DataLayoutConverter(target_data_layout, name="variation_name").Identify(
+ [op1, op2, ..., layout_parameter]
+)
+```
+
+#### AxisConverter
+
+Transpose a certain axis in input/output to target position, and optionally remove some axis. The caller need to provide a list of target operands to transform, and also the axis parameter to set.
+
+```Python
+converter = AxisConverter(originalAxis, targetAxis, dimension, drop=[], name="variation_name").Identify(
+ [op1, op2, ..., axis_parameter]
+)
+```
+
+This model variation is for ops that apply calculation along certain axis, such as L2_NORMALIZATION, SOFTMAX, and CHANNEL_SHUFFLE. For example, consider L2_NORMALIZATION with input of shape [2, 3, 4, 5] along the last axis, i.e. axis = -1. The output shape would be the same as input. We can create a new model which will do the calculation along axis 0 by transposing input and output shape to [5, 2, 3, 4] and modify the axis parameter to 0. Such converter can be defined as
+
+```Python
+toAxis0 = AxisConverter(-1, 0, 4).Identify([input, output, axis])
+```
+
+The target axis can also be negative to test the negative indexing
+
+```Python
+toAxis0 = AxisConverter(-1, -4, 4).Identify([input, output, axis])
+```
+
+Consider the same L2_NORMALIZATION example, we can also create a new model with input/output of 2D shape [4, 5] by removing the first two dimension. This is essentially doing `new_input = input[0,0,:,:]` in numpy. Such converter can be defined as
+
+```Python
+toDim2 = AxisConverter(-1, -1, 4, drop=[0, 1]).Identify([input, output, axis])
+```
+
+If transposition and removal are specified at the same time, the converter will do transposition first and then remove the axis. For example, the following converter will result in shape [5, 4] and axis 0.
+
+```Python
+toDim2Axis0 = AxisConverter(-1, 2, 4, drop=[0, 1]).Identify([input, output, axis])
+```
+
+#### RelaxedModeConverter
+
+Convert the model to enable/disable relaxed computation.
+
+```Python
+converter = RelaxedModeConverter(is_relaxed, name="variation_name")
+```
+
+#### ParameterAsInputConverter
+
+Convert a certain parameter to model input, e.g. weight in CONV_2D. The caller need to provide a list of target operands to convert.
+
+```Python
+converter = ParameterAsInputConverter(name="variation_name").Identify(
+ [op1, op2, ...]
+)
+```
+
+#### ActivationConverter
+
+Convert the output by certain activation, the original activation is assumed to be NONE. The caller need to provide a list of target operands to transform, and also the activation parameter to set.
+
+```Python
+converter = ActivationConverter(name="variation_name").Identify(
+ [op1, op2, ..., act_parameter]
+)
+```
+
+#### Add variation to example
+
+Each example can have multiple groups of variations, and if so, will take the cartesian product of the groups. For example, suppose we declare a model with two groups, and each group has two variations: `[[default, nchw], [default, relaxed, quant8]]`. This will result in 6 examples: `[default, default], [default, relaxed], [default, quant8], [nchw, default], [nchw, relaxed], [nchw, quant8]`.
+
+Use `AddVariations` to add a group of variations to the example
+
+```Python
+# Add two groups of variations [default, nchw] and [default, relaxed, quant8]
+example.AddVariations(nchw).AddVariations(relaxed, quant8)
+```
+
+By default, when you add a group of variation, a unnamed default variation will be automatically included in the list. You can name the default variation by
+
+```Python
+example.AddVariations(nchw, defaultName="nhwc").AddVariations(relaxed, quant8)
+```
+
+Also, you can choose not to include default by
+
+```Python
+# Add two groups of variations [nchw] and [default, relaxed, quant8]
+example.AddVariations(nchw, includeDefault=False).AddVariations(relaxed, quant8)
+```
+
+The example above will result in 3 examples: `[nchw, default], [nchw, relaxed], [nchw, quant8]`.
+
+#### Some helper functions
+
+The test generator provides several helper functions or shorthands to add commonly used group of variations.
+
+```Python
+# Each following group of statements are equivalent
+
+# DataTypeConverter
+example.AddVariations(DataTypeConverter().Identify({op1: "TENSOR_FLOAT16", ...}))
+example.AddVariations("float16") # will apply to every TENSOR_FLOAT32 operands
+
+example.AddVariations(DataTypeConverter().Identify({op1: "TENSOR_INT32", ...}))
+example.AddVariations("int32") # will apply to every TENSOR_FLOAT32 operands
+
+# DataLayoutConverter
+example.AddVariations(DataLayoutConverter("nchw").Identify(op_list))
+example.AddVariations(("nchw", op_list))
+example.AddNchw(*op_list)
+
+# AxisConverter
+# original axis and dim are deduced from the op_list
+example.AddVariations(*[AxisConverter(origin, t, dim).Identify(op_list) for t in targets])
+example.AddAxis(targets, *op_list)
+
+example.AddVariations(*[
+ AxisConverter(origin, t, dim).Identify(op_list) for t in range(dim)
+ ], includeDefault=False)
+example.AddAllPositiveAxis(*op_list)
+
+example.AddVariations(*[
+ AxisConverter(origin, t, dim).Identify(op_list) for t in range(-dim, dim)
+ ], includeDefault=False)
+example.AddAllAxis(*op_list)
+
+drop = list(range(dim))
+drop.pop(origin)
+example.AddVariations(*[
+ AxisConverter(origin, origin, dim, drop[0:(dim-i)]).Identify(op_list) for i in dims])
+example.AddDims(dims, *op_list)
+
+example.AddVariations(*[
+ AxisConverter(origin, origin, dim, drop[0:i]).Identify(op_list) for i in range(dim)])
+example.AddAllDims(dims, *op_list)
+
+example.AddVariations(*[
+ AxisConverter(origin, j, dim, range(i)).Identify(op_list) \
+ for i in range(dim) for j in range(i, dim)
+ ], includeDefault=False)
+example.AddAllDimsAndPositiveAxis(dims, *op_list)
+
+example.AddVariations(*[
+ AxisConverter(origin, k, dim, range(i)).Identify(op_list) \
+ for i in range(dim) for j in range(i, dim) for k in [j, j - dim]
+ ], includeDefault=False)
+example.AddAllDimsAndAxis(dims, *op_list)
+
+# ParameterAsInputConverter
+example.AddVariations(ParameterAsInputConverter().Identify(op_list))
+example.AddVariations(("as_input", op_list))
+example.AddInput(*op_list)
+
+# RelaxedModeConverter
+example.Addvariations(RelaxedModeConverter(True))
+example.AddVariations("relaxed")
+example.AddRelaxed()
+
+# ActivationConverter
+example.AddVariations(ActivationConverter("relu").Identify(op_list))
+example.AddVariations(("relu", op_list))
+example.AddRelu(*op_list)
+
+example.AddVariations(
+ ActivationConverter("relu").Identify(op_list),
+ ActivationConverter("relu1").Identify(op_list),
+ ActivationConverter("relu6").Identify(op_list))
+example.AddVariations(
+ ("relu", op_list),
+ ("relu1", op_list),
+ ("relu6", op_list))
+example.AddAllActivations(*op_list)
+```
+
+### Specifying the Model Version
+
+If not explicitly specified, the minimal required HAL version will be inferred from the path, e.g. the models defined in `tests/nnapi/specs/V1_0/add.mod.py` will all have version `V1_0`. However there are several exceptions that a certain operation is under-tested in previous version and more tests are added in a later version. In this case, two methods are provided to set the version manually.
+
+#### Set the version when creating the model
+
+Use `IntroducedIn` to set the version of a model. All variations of the model will have the same version.
+
+```Python
+model_V1_0 = Model().IntroducedIn("V1_0")
+...
+# All variations of model_V1_0 will have the same version V1_0.
+Example(example, model=model_V1_0).AddVariations(var0, var1, ...)
+```
+
+#### Set the version overrides
+
+Use `Example.SetVersion` to override the model version for specific tests. The target tests are specified by names. This method can also override the version specified by `IntroducedIn`.
+
+```Python
+Example.SetVersion(<version>, testName0, testName1, ...)
+```
+
+This is useful when only a subset of variations has a different version.
+
+### Creating negative tests
+
+Negative test, also known as validation test, is a testing method that supplies invalid model or request, and expects the target framework or driver to fail gracefully. You can use `ExpectFailure` to tag a example as invalid.
+
+```Python
+Example.ExpectFailure()
+```
+
+### A Complete Example
+
+```Python
+# Declare input, output, and parameters
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 3, 4, 1}")
+f1 = Parameter("op2", "TENSOR_FLOAT32", "{1, 3, 3, 1}", [1, 4, 7, 2, 5, 8, 3, 6, 9])
+b1 = Parameter("op3", "TENSOR_FLOAT32", "{1}", [-200])
+act = Int32Scalar("act", 0)
+o1 = Output("op4", "TENSOR_FLOAT32", "{1, 3, 4, 1}")
+
+# Instantiate a model and add CONV_2D operation
+# Use implicit parameter for implicit padding and strides
+Model().Operation("CONV_2D", i1, f1, b1, 1, 1, 1, act, layout).To(o1)
+
+# Additional data type
+quant8 = DataTypeConverter().Identify({
+ i1: ("TENSOR_QUANT8_ASYMM", 0.5, 127),
+ f1: ("TENSOR_QUANT8_ASYMM", 0.5, 127),
+ b1: ("TENSOR_INT32", 0.25, 0),
+ o1: ("TENSOR_QUANT8_ASYMM", 1.0, 50)
+})
+
+# Instantiate an example
+example = Example({
+ i1: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
+ o1: [0, 0, 0, 0, 35, 112, 157, 0, 0, 34, 61, 0]
+})
+
+# Only use NCHW data layout
+example.AddNchw(i1, f1, o1, layout, includeDefault=False)
+
+# Add two more groups of variations
+example.AddInput(f1, b1).AddVariations("relaxed", quant8).AddAllActivations(o1, act)
+```
+
+The spec above will result in 24 tests.
+
+## Generate Tests
+
+Once you have your model ready, run
+
+```
+$NNAS_PROJECT_PATH/tests/nnapi/specs/generate_test.sh
+$NNAS_PROJECT_PATH/tests/nnapi/specs/generate_vts_test.sh
+```
+
+It will read and generate all CTS/VTS unit tests based on spec files in `tests/nnapi/specs/V1_*/*` if needed. CTS test generator is able to identify which spec files are modified since last generation and only regenerate those files to reduce compilation time. To force a regeneration, use `-f` flag. The VTS test generator will regenerate tests targeting the latest HAL version by default. Pass the `all` positional argument to override.
+
+Rebuild afterwards.
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/cts_generator.py b/tests/nnapi/nnapi_test_generator/android-q-beta/cts_generator.py
new file mode 100644
index 000000000..bb65762fc
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/cts_generator.py
@@ -0,0 +1,314 @@
+#!/usr/bin/python3
+
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+"""CTS testcase generator
+
+Implements CTS test backend. Invoked by ml/nn/runtime/test/specs/generate_tests.sh;
+See that script for details on how this script is used.
+
+"""
+
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+import argparse
+import math
+import os
+import re
+import sys
+import traceback
+
+# Stuff from test generator
+import test_generator as tg
+from test_generator import ActivationConverter
+from test_generator import BoolScalar
+from test_generator import Configuration
+from test_generator import DataTypeConverter
+from test_generator import DataLayoutConverter
+from test_generator import Example
+from test_generator import Float16Scalar
+from test_generator import Float32Scalar
+from test_generator import Float32Vector
+from test_generator import GetJointStr
+from test_generator import IgnoredOutput
+from test_generator import Input
+from test_generator import Int32Scalar
+from test_generator import Int32Vector
+from test_generator import Internal
+from test_generator import Model
+from test_generator import Operand
+from test_generator import Output
+from test_generator import Parameter
+from test_generator import ParameterAsInputConverter
+from test_generator import RelaxedModeConverter
+from test_generator import SmartOpen
+from test_generator import SymmPerChannelQuantParams
+
+def IndentedPrint(s, indent=2, *args, **kwargs):
+ print('\n'.join([" " * indent + i for i in s.split('\n')]), *args, **kwargs)
+
+# Take a model from command line
+def ParseCmdLine():
+ parser = argparse.ArgumentParser()
+ parser.add_argument("spec", help="the spec file/directory")
+ parser.add_argument(
+ "-m", "--model", help="the output model file/directory", default="-")
+ parser.add_argument(
+ "-e", "--example", help="the output example file/directory", default="-")
+ parser.add_argument(
+ "-t", "--test", help="the output test file/directory", default="-")
+ parser.add_argument(
+ "-f", "--force", help="force to regenerate all spec files", action="store_true")
+ args = parser.parse_args()
+ tg.FileNames.InitializeFileLists(args.spec, args.model, args.example, args.test)
+ Configuration.force_regenerate = args.force
+
+def NeedRegenerate():
+ if not all(os.path.exists(f) for f in \
+ [tg.FileNames.modelFile, tg.FileNames.exampleFile, tg.FileNames.testFile]):
+ return True
+ specTime = os.path.getmtime(tg.FileNames.specFile) + 10
+ modelTime = os.path.getmtime(tg.FileNames.modelFile)
+ exampleTime = os.path.getmtime(tg.FileNames.exampleFile)
+ testTime = os.path.getmtime(tg.FileNames.testFile)
+ if all(t > specTime for t in [modelTime, exampleTime, testTime]):
+ return False
+ return True
+
+# Write headers for generated files, which are boilerplate codes only related to filenames
+def InitializeFiles(model_fd, example_fd, test_fd):
+ specFileBase = os.path.basename(tg.FileNames.specFile)
+ fileHeader = """\
+// Generated from {spec_file}
+// DO NOT EDIT
+// clang-format off
+#include "{header}"
+"""
+ print(fileHeader.format(spec_file=specFileBase, header="TestGenerated.h"), file=test_fd)
+ print(fileHeader.format(spec_file=specFileBase, header="TestGenerated.h"), file=model_fd)
+ print(fileHeader.format(spec_file=specFileBase, header="TestHarness.h"), file=example_fd)
+
+# Dump is_ignored function for IgnoredOutput
+def DumpCtsIsIgnored(model, model_fd):
+ isIgnoredTemplate = """\
+bool {is_ignored_name}(int i) {{
+ static std::set<int> ignore = {{{ignored_index}}};
+ return ignore.find(i) != ignore.end();
+}}
+"""
+ print(isIgnoredTemplate.format(
+ ignored_index=tg.GetJointStr(model.GetIgnoredOutputs(), method=lambda x: str(x.index)),
+ is_ignored_name=str(model.isIgnoredFunctionName)), file=model_fd)
+
+# Dump Model file for Cts tests
+def DumpCtsModel(model, model_fd):
+ assert model.compiled
+ if model.dumped:
+ return
+ namespace = "generated_tests::{spec_name}".format(spec_name=tg.FileNames.specName)
+ print("namespace {namespace} {{\n".format(namespace=namespace), file=model_fd)
+ print("void %s(Model *model) {"%(model.createFunctionName), file=model_fd)
+
+ # Phase 0: types
+ for t in model.GetTypes():
+ if t.scale == 0.0 and t.zeroPoint == 0 and t.extraParams is None:
+ typeDef = "OperandType %s(Type::%s, %s);"%(t, t.type, t.GetDimensionsString())
+ else:
+ if t.extraParams is None or t.extraParams.hide:
+ typeDef = "OperandType %s(Type::%s, %s, %s, %d);"%(
+ t, t.type, t.GetDimensionsString(), tg.PrettyPrintAsFloat(t.scale), t.zeroPoint)
+ else:
+ assert t.type == "TENSOR_QUANT8_SYMM_PER_CHANNEL", "Unexpected model configuration. " \
+ "Extra params are currently expected for " \
+ "TENSOR_QUANT8_SYMM_PER_CHANNEL operand type. "
+ assert t.scale == 0.0 and t.zeroPoint == 0, "Scale and zero point are always zero for " \
+ "TENSOR_QUANT8_SYMM_PER_CHANNEL operands"
+ typeDef = "OperandType %s(Type::%s, %s, %s);"%(
+ t, t.type, t.GetDimensionsString(), t.extraParams.GetConstructor())
+
+ IndentedPrint(typeDef, file=model_fd)
+
+ # Phase 1: add operands
+ print(" // Phase 1, operands", file=model_fd)
+ for op in model.operands:
+ IndentedPrint("auto %s = model->addOperand(&%s);"%(op, op.type), file=model_fd)
+
+ # Phase 2: operations
+ print(" // Phase 2, operations", file=model_fd)
+ for p in model.GetParameters():
+ paramDef = "static %s %s[] = %s;\nmodel->setOperandValue(%s, %s, sizeof(%s) * %d);"%(
+ p.type.GetCppTypeString(), p.initializer, p.GetListInitialization(), p,
+ p.initializer, p.type.GetCppTypeString(), p.type.GetNumberOfElements())
+ IndentedPrint(paramDef, file=model_fd)
+ for op in model.operations:
+ IndentedPrint("model->addOperation(ANEURALNETWORKS_%s, {%s}, {%s});"%(
+ op.optype, tg.GetJointStr(op.ins), tg.GetJointStr(op.outs)), file=model_fd)
+
+ # Phase 3: add inputs and outputs
+ print (" // Phase 3, inputs and outputs", file=model_fd)
+ IndentedPrint("model->identifyInputsAndOutputs(\n {%s},\n {%s});"%(
+ tg.GetJointStr(model.GetInputs()), tg.GetJointStr(model.GetOutputs())), file=model_fd)
+
+ # Phase 4: set relaxed execution if needed
+ if (model.isRelaxed):
+ print (" // Phase 4: set relaxed execution", file=model_fd)
+ print (" model->relaxComputationFloat32toFloat16(true);", file=model_fd)
+
+ print (" assert(model->isValid());", file=model_fd)
+ print ("}\n", file=model_fd)
+ DumpCtsIsIgnored(model, model_fd)
+ print("}} // namespace {namespace}".format(namespace=namespace), file=model_fd)
+ model.dumped = True
+
+def DumpMixedType(operands, feedDict):
+ supportedTensors = [
+ "DIMENSIONS",
+ "TENSOR_FLOAT32",
+ "TENSOR_INT32",
+ "TENSOR_QUANT8_ASYMM",
+ "TENSOR_OEM_BYTE",
+ "TENSOR_QUANT16_SYMM",
+ "TENSOR_FLOAT16",
+ "TENSOR_BOOL8",
+ "TENSOR_QUANT8_SYMM_PER_CHANNEL",
+ "TENSOR_QUANT16_ASYMM",
+ "TENSOR_QUANT8_SYMM",
+ ]
+ typedMap = {t: [] for t in supportedTensors}
+ FeedAndGet = lambda op, d: op.Feed(d).GetListInitialization()
+ # group the operands by type
+ for operand in operands:
+ try:
+ typedMap[operand.type.type].append(FeedAndGet(operand, feedDict))
+ typedMap["DIMENSIONS"].append("{%d, {%s}}"%(
+ operand.index, GetJointStr(operand.dimensions)))
+ except KeyError as e:
+ traceback.print_exc()
+ sys.exit("Cannot dump tensor of type {}".format(operand.type.type))
+ mixedTypeTemplate = """\
+{{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> Dimensions map
+ .operandDimensions = {{{dimensions_map}}},
+ // int -> FLOAT32 map
+ .float32Operands = {{{float32_map}}},
+ // int -> INT32 map
+ .int32Operands = {{{int32_map}}},
+ // int -> QUANT8_ASYMM map
+ .quant8AsymmOperands = {{{uint8_map}}},
+ // int -> QUANT16_SYMM map
+ .quant16SymmOperands = {{{int16_map}}},
+ // int -> FLOAT16 map
+ .float16Operands = {{{float16_map}}},
+ // int -> BOOL8 map
+ .bool8Operands = {{{bool8_map}}},
+ // int -> QUANT8_SYMM_PER_CHANNEL map
+ .quant8ChannelOperands = {{{int8_map}}},
+ // int -> QUANT16_ASYMM map
+ .quant16AsymmOperands = {{{uint16_map}}},
+ // int -> QUANT8_SYMM map
+ .quant8SymmOperands = {{{quant8_symm_map}}},
+}}"""
+ return mixedTypeTemplate.format(
+ dimensions_map=tg.GetJointStr(typedMap.get("DIMENSIONS", [])),
+ float32_map=tg.GetJointStr(typedMap.get("TENSOR_FLOAT32", [])),
+ int32_map=tg.GetJointStr(typedMap.get("TENSOR_INT32", [])),
+ uint8_map=tg.GetJointStr(typedMap.get("TENSOR_QUANT8_ASYMM", []) +
+ typedMap.get("TENSOR_OEM_BYTE", [])),
+ int16_map=tg.GetJointStr(typedMap.get("TENSOR_QUANT16_SYMM", [])),
+ float16_map=tg.GetJointStr(typedMap.get("TENSOR_FLOAT16", [])),
+ int8_map=tg.GetJointStr(typedMap.get("TENSOR_QUANT8_SYMM_PER_CHANNEL", [])),
+ bool8_map=tg.GetJointStr(typedMap.get("TENSOR_BOOL8", [])),
+ uint16_map=tg.GetJointStr(typedMap.get("TENSOR_QUANT16_ASYMM", [])),
+ quant8_symm_map=tg.GetJointStr(typedMap.get("TENSOR_QUANT8_SYMM", []))
+ )
+
+# Dump Example file for Cts tests
+def DumpCtsExample(example, example_fd):
+ namespace = "generated_tests::{spec_name}".format(spec_name=tg.FileNames.specName)
+ print("namespace {namespace} {{\n".format(namespace=namespace), file=example_fd)
+ print("std::vector<::test_helper::MixedTypedExample>& get_%s() {" % (example.examplesName), file=example_fd)
+ print("static std::vector<::test_helper::MixedTypedExample> %s = {" % (example.examplesName), file=example_fd)
+ for inputFeedDict, outputFeedDict in example.feedDicts:
+ print ('// Begin of an example', file = example_fd)
+ print ('{\n.operands = {', file = example_fd)
+ inputs = DumpMixedType(example.model.GetInputs(), inputFeedDict)
+ outputs = DumpMixedType(example.model.GetOutputs(), outputFeedDict)
+ print ('//Input(s)\n%s,' % inputs , file = example_fd)
+ print ('//Output(s)\n%s' % outputs, file = example_fd)
+ print ('},', file = example_fd)
+ if example.expectedMultinomialDistributionTolerance is not None:
+ print ('.expectedMultinomialDistributionTolerance = %f' %
+ example.expectedMultinomialDistributionTolerance, file = example_fd)
+ print ('}, // End of an example', file = example_fd)
+ print("};", file=example_fd)
+ print("return %s;" % (example.examplesName), file=example_fd)
+ print("};", file=example_fd)
+ print("\n}} // namespace {namespace}".format(namespace=namespace), file=example_fd)
+
+# Dump Test file for Cts tests
+def DumpCtsTest(example, test_fd):
+ namespace = "generated_tests::{spec_name}".format(spec_name=tg.FileNames.specName)
+ testTemplate = """\
+namespace {namespace} {{
+
+void {create_model_name}(Model *model);
+bool {is_ignored_name}(int);
+std::vector<::test_helper::MixedTypedExample>& get_{examples_name}();
+
+TEST_F({test_case_name}, {test_name}) {{
+ execute({create_model_name},
+ {is_ignored_name},
+ get_{examples_name}());
+}}
+
+}} // namespace {namespace}
+"""
+ if example.model.version is not None and not example.expectFailure:
+ testTemplate += """\
+TEST_AVAILABLE_SINCE({version}, {test_name}, {namespace}::{create_model_name})\n"""
+
+ if example.expectFailure:
+ testCaseName = "GeneratedValidationTests"
+ elif example.model.hasDynamicOutputShape:
+ testCaseName = "DynamicOutputShapeTest"
+ else:
+ testCaseName = "GeneratedTests"
+
+ print(testTemplate.format(
+ test_case_name=testCaseName,
+ test_name=str(example.testName),
+ namespace=namespace,
+ create_model_name=str(example.model.createFunctionName),
+ is_ignored_name=str(example.model.isIgnoredFunctionName),
+ examples_name=str(example.examplesName),
+ version=example.model.version), file=test_fd)
+
+if __name__ == '__main__':
+ ParseCmdLine()
+ while tg.FileNames.NextFile():
+ if Configuration.force_regenerate or NeedRegenerate():
+ print("Generating CTS tests from spec %s" % tg.FileNames.specFile, file=sys.stderr)
+ exec(open(tg.FileNames.specFile, "r").read())
+ with SmartOpen(tg.FileNames.modelFile) as model_fd, \
+ SmartOpen(tg.FileNames.exampleFile) as example_fd, \
+ SmartOpen(tg.FileNames.testFile) as test_fd:
+ InitializeFiles(model_fd, example_fd, test_fd)
+ Example.DumpAllExamples(
+ DumpModel=DumpCtsModel, model_fd=model_fd,
+ DumpExample=DumpCtsExample, example_fd=example_fd,
+ DumpTest=DumpCtsTest, test_fd=test_fd)
+ else:
+ print("Skip file: %s" % tg.FileNames.specFile, file=sys.stderr)
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/include/TestHarness.h b/tests/nnapi/nnapi_test_generator/android-q-beta/include/TestHarness.h
new file mode 100644
index 000000000..3b4b26b16
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/include/TestHarness.h
@@ -0,0 +1,426 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Header-only library for various helpers of test harness
+ * See frameworks/ml/nn/runtime/test/TestGenerated.cpp for how this is used.
+ */
+#ifndef ANDROID_FRAMEWORKS_ML_NN_TOOLS_TEST_GENERATOR_TEST_HARNESS_H
+#define ANDROID_FRAMEWORKS_ML_NN_TOOLS_TEST_GENERATOR_TEST_HARNESS_H
+
+#include <gmock/gmock-matchers.h>
+#include <gtest/gtest.h>
+
+#include <cmath>
+#include <functional>
+#include <map>
+#include <tuple>
+#include <vector>
+
+namespace test_helper {
+
+constexpr const size_t gMaximumNumberOfErrorMessages = 10;
+
+// TODO: Figure out the build dependency to make including "CpuOperationUtils.h" work.
+inline void convertFloat16ToFloat32(const _Float16* input, std::vector<float>* output) {
+ for (size_t i = 0; i < output->size(); ++i) {
+ (*output)[i] = static_cast<float>(input[i]);
+ }
+}
+
+// This class is a workaround for two issues our code relies on:
+// 1. sizeof(bool) is implementation defined.
+// 2. vector<bool> does not allow direct pointer access via the data() method.
+class bool8 {
+ public:
+ bool8() : mValue() {}
+ /* implicit */ bool8(bool value) : mValue(value) {}
+ inline operator bool() const { return mValue != 0; }
+
+ private:
+ uint8_t mValue;
+};
+
+static_assert(sizeof(bool8) == 1, "size of bool8 must be 8 bits");
+
+typedef std::map<int, std::vector<uint32_t>> OperandDimensions;
+typedef std::map<int, std::vector<float>> Float32Operands;
+typedef std::map<int, std::vector<int32_t>> Int32Operands;
+typedef std::map<int, std::vector<uint8_t>> Quant8AsymmOperands;
+typedef std::map<int, std::vector<int16_t>> Quant16SymmOperands;
+typedef std::map<int, std::vector<_Float16>> Float16Operands;
+typedef std::map<int, std::vector<bool8>> Bool8Operands;
+typedef std::map<int, std::vector<int8_t>> Quant8ChannelOperands;
+typedef std::map<int, std::vector<uint16_t>> Quant16AsymmOperands;
+typedef std::map<int, std::vector<int8_t>> Quant8SymmOperands;
+struct MixedTyped {
+ static constexpr size_t kNumTypes = 9;
+ OperandDimensions operandDimensions;
+ Float32Operands float32Operands;
+ Int32Operands int32Operands;
+ Quant8AsymmOperands quant8AsymmOperands;
+ Quant16SymmOperands quant16SymmOperands;
+ Float16Operands float16Operands;
+ Bool8Operands bool8Operands;
+ Quant8ChannelOperands quant8ChannelOperands;
+ Quant16AsymmOperands quant16AsymmOperands;
+ Quant8SymmOperands quant8SymmOperands;
+};
+typedef std::pair<MixedTyped, MixedTyped> MixedTypedExampleType;
+
+// Mixed-typed examples
+typedef struct {
+ MixedTypedExampleType operands;
+ // Specifies the RANDOM_MULTINOMIAL distribution tolerance.
+ // If set to greater than zero, the input is compared as log-probabilities
+ // to the output and must be within this tolerance to pass.
+ float expectedMultinomialDistributionTolerance = 0.0;
+} MixedTypedExample;
+
+// Go through all index-value pairs of a given input type
+template <typename T>
+inline void for_each(const std::map<int, std::vector<T>>& idx_and_data,
+ std::function<void(int, const std::vector<T>&)> execute) {
+ for (auto& i : idx_and_data) {
+ execute(i.first, i.second);
+ }
+}
+
+// non-const variant of for_each
+template <typename T>
+inline void for_each(std::map<int, std::vector<T>>& idx_and_data,
+ std::function<void(int, std::vector<T>&)> execute) {
+ for (auto& i : idx_and_data) {
+ execute(i.first, i.second);
+ }
+}
+
+// Go through all index-value pairs of a given input type
+template <typename T>
+inline void for_each(const std::map<int, std::vector<T>>& golden,
+ std::map<int, std::vector<T>>& test,
+ std::function<void(int, const std::vector<T>&, std::vector<T>&)> execute) {
+ for_each<T>(golden, [&test, &execute](int index, const std::vector<T>& g) {
+ auto& t = test[index];
+ execute(index, g, t);
+ });
+}
+
+// Go through all index-value pairs of a given input type
+template <typename T>
+inline void for_each(
+ const std::map<int, std::vector<T>>& golden, const std::map<int, std::vector<T>>& test,
+ std::function<void(int, const std::vector<T>&, const std::vector<T>&)> execute) {
+ for_each<T>(golden, [&test, &execute](int index, const std::vector<T>& g) {
+ auto t = test.find(index);
+ ASSERT_NE(t, test.end());
+ execute(index, g, t->second);
+ });
+}
+
+// internal helper for for_all
+template <typename T>
+inline void for_all_internal(std::map<int, std::vector<T>>& idx_and_data,
+ std::function<void(int, void*, size_t)> execute_this) {
+ for_each<T>(idx_and_data, [&execute_this](int idx, std::vector<T>& m) {
+ execute_this(idx, static_cast<void*>(m.data()), m.size() * sizeof(T));
+ });
+}
+
+// Go through all index-value pairs of all input types
+// expects a functor that takes (int index, void *raw data, size_t sz)
+inline void for_all(MixedTyped& idx_and_data,
+ std::function<void(int, void*, size_t)> execute_this) {
+ for_all_internal(idx_and_data.float32Operands, execute_this);
+ for_all_internal(idx_and_data.int32Operands, execute_this);
+ for_all_internal(idx_and_data.quant8AsymmOperands, execute_this);
+ for_all_internal(idx_and_data.quant16SymmOperands, execute_this);
+ for_all_internal(idx_and_data.float16Operands, execute_this);
+ for_all_internal(idx_and_data.bool8Operands, execute_this);
+ for_all_internal(idx_and_data.quant8ChannelOperands, execute_this);
+ for_all_internal(idx_and_data.quant16AsymmOperands, execute_this);
+ for_all_internal(idx_and_data.quant8SymmOperands, execute_this);
+ static_assert(9 == MixedTyped::kNumTypes,
+ "Number of types in MixedTyped changed, but for_all function wasn't updated");
+}
+
+// Const variant of internal helper for for_all
+template <typename T>
+inline void for_all_internal(const std::map<int, std::vector<T>>& idx_and_data,
+ std::function<void(int, const void*, size_t)> execute_this) {
+ for_each<T>(idx_and_data, [&execute_this](int idx, const std::vector<T>& m) {
+ execute_this(idx, static_cast<const void*>(m.data()), m.size() * sizeof(T));
+ });
+}
+
+// Go through all index-value pairs (const variant)
+// expects a functor that takes (int index, const void *raw data, size_t sz)
+inline void for_all(const MixedTyped& idx_and_data,
+ std::function<void(int, const void*, size_t)> execute_this) {
+ for_all_internal(idx_and_data.float32Operands, execute_this);
+ for_all_internal(idx_and_data.int32Operands, execute_this);
+ for_all_internal(idx_and_data.quant8AsymmOperands, execute_this);
+ for_all_internal(idx_and_data.quant16SymmOperands, execute_this);
+ for_all_internal(idx_and_data.float16Operands, execute_this);
+ for_all_internal(idx_and_data.bool8Operands, execute_this);
+ for_all_internal(idx_and_data.quant8ChannelOperands, execute_this);
+ for_all_internal(idx_and_data.quant16AsymmOperands, execute_this);
+ for_all_internal(idx_and_data.quant8SymmOperands, execute_this);
+ static_assert(
+ 9 == MixedTyped::kNumTypes,
+ "Number of types in MixedTyped changed, but const for_all function wasn't updated");
+}
+
+// Helper template - resize test output per golden
+template <typename T>
+inline void resize_accordingly_(const std::map<int, std::vector<T>>& golden,
+ std::map<int, std::vector<T>>& test) {
+ for_each<T>(golden, test,
+ [](int, const std::vector<T>& g, std::vector<T>& t) { t.resize(g.size()); });
+}
+
+template <>
+inline void resize_accordingly_<uint32_t>(const OperandDimensions& golden,
+ OperandDimensions& test) {
+ for_each<uint32_t>(
+ golden, test,
+ [](int, const std::vector<uint32_t>& g, std::vector<uint32_t>& t) { t = g; });
+}
+
+inline void resize_accordingly(const MixedTyped& golden, MixedTyped& test) {
+ resize_accordingly_(golden.operandDimensions, test.operandDimensions);
+ resize_accordingly_(golden.float32Operands, test.float32Operands);
+ resize_accordingly_(golden.int32Operands, test.int32Operands);
+ resize_accordingly_(golden.quant8AsymmOperands, test.quant8AsymmOperands);
+ resize_accordingly_(golden.quant16SymmOperands, test.quant16SymmOperands);
+ resize_accordingly_(golden.float16Operands, test.float16Operands);
+ resize_accordingly_(golden.bool8Operands, test.bool8Operands);
+ resize_accordingly_(golden.quant8ChannelOperands, test.quant8ChannelOperands);
+ resize_accordingly_(golden.quant16AsymmOperands, test.quant16AsymmOperands);
+ resize_accordingly_(golden.quant8SymmOperands, test.quant8SymmOperands);
+ static_assert(9 == MixedTyped::kNumTypes,
+ "Number of types in MixedTyped changed, but resize_accordingly function wasn't "
+ "updated");
+}
+
+template <typename T>
+void filter_internal(const std::map<int, std::vector<T>>& golden,
+ std::map<int, std::vector<T>>* filtered, std::function<bool(int)> is_ignored) {
+ for_each<T>(golden, [filtered, &is_ignored](int index, const std::vector<T>& m) {
+ auto& g = *filtered;
+ if (!is_ignored(index)) g[index] = m;
+ });
+}
+
+inline MixedTyped filter(const MixedTyped& golden, std::function<bool(int)> is_ignored) {
+ MixedTyped filtered;
+ filter_internal(golden.operandDimensions, &filtered.operandDimensions, is_ignored);
+ filter_internal(golden.float32Operands, &filtered.float32Operands, is_ignored);
+ filter_internal(golden.int32Operands, &filtered.int32Operands, is_ignored);
+ filter_internal(golden.quant8AsymmOperands, &filtered.quant8AsymmOperands, is_ignored);
+ filter_internal(golden.quant16SymmOperands, &filtered.quant16SymmOperands, is_ignored);
+ filter_internal(golden.float16Operands, &filtered.float16Operands, is_ignored);
+ filter_internal(golden.bool8Operands, &filtered.bool8Operands, is_ignored);
+ filter_internal(golden.quant8ChannelOperands, &filtered.quant8ChannelOperands, is_ignored);
+ filter_internal(golden.quant16AsymmOperands, &filtered.quant16AsymmOperands, is_ignored);
+ filter_internal(golden.quant8SymmOperands, &filtered.quant8SymmOperands, is_ignored);
+ static_assert(9 == MixedTyped::kNumTypes,
+ "Number of types in MixedTyped changed, but compare function wasn't updated");
+ return filtered;
+}
+
+// Compare results
+template <typename T>
+void compare_(const std::map<int, std::vector<T>>& golden,
+ const std::map<int, std::vector<T>>& test, std::function<void(T, T)> cmp) {
+ for_each<T>(golden, test, [&cmp](int index, const std::vector<T>& g, const std::vector<T>& t) {
+ for (unsigned int i = 0; i < g.size(); i++) {
+ SCOPED_TRACE(testing::Message()
+ << "When comparing output " << index << " element " << i);
+ cmp(g[i], t[i]);
+ }
+ });
+}
+
+// TODO: Allow passing accuracy criteria from spec.
+// Currently we only need relaxed accuracy criteria on mobilenet tests, so we return the quant8
+// tolerance simply based on the current test name.
+inline int getQuant8AllowedError() {
+ const ::testing::TestInfo* const testInfo =
+ ::testing::UnitTest::GetInstance()->current_test_info();
+ const std::string testCaseName = testInfo->test_case_name();
+ const std::string testName = testInfo->name();
+ // We relax the quant8 precision for all tests with mobilenet:
+ // - CTS/VTS GeneratedTest and DynamicOutputShapeTest with mobilenet
+ // - VTS CompilationCachingTest and CompilationCachingSecurityTest except for TOCTOU tests
+ if (testName.find("mobilenet") != std::string::npos ||
+ (testCaseName.find("CompilationCaching") != std::string::npos &&
+ testName.find("TOCTOU") == std::string::npos)) {
+ return 2;
+ } else {
+ return 1;
+ }
+}
+
+inline void compare(const MixedTyped& golden, const MixedTyped& test, float fpAtol = 1e-5f,
+ float fpRtol = 1e-5f) {
+ int quant8AllowedError = getQuant8AllowedError();
+ for_each<uint32_t>(
+ golden.operandDimensions, test.operandDimensions,
+ [](int index, const std::vector<uint32_t>& g, const std::vector<uint32_t>& t) {
+ SCOPED_TRACE(testing::Message()
+ << "When comparing dimensions for output " << index);
+ EXPECT_EQ(g, t);
+ });
+ size_t totalNumberOfErrors = 0;
+ compare_<float>(golden.float32Operands, test.float32Operands,
+ [&totalNumberOfErrors, fpAtol, fpRtol](float expected, float actual) {
+ // Compute the range based on both absolute tolerance and relative tolerance
+ float fpRange = fpAtol + fpRtol * std::abs(expected);
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_NEAR(expected, actual, fpRange);
+ }
+ if (std::abs(expected - actual) > fpRange) {
+ totalNumberOfErrors++;
+ }
+ });
+ compare_<int32_t>(golden.int32Operands, test.int32Operands,
+ [&totalNumberOfErrors](int32_t expected, int32_t actual) {
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_EQ(expected, actual);
+ }
+ if (expected != actual) {
+ totalNumberOfErrors++;
+ }
+ });
+ compare_<uint8_t>(golden.quant8AsymmOperands, test.quant8AsymmOperands,
+ [&totalNumberOfErrors, quant8AllowedError](uint8_t expected, uint8_t actual) {
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_NEAR(expected, actual, quant8AllowedError);
+ }
+ if (std::abs(expected - actual) > quant8AllowedError) {
+ totalNumberOfErrors++;
+ }
+ });
+ compare_<int16_t>(golden.quant16SymmOperands, test.quant16SymmOperands,
+ [&totalNumberOfErrors](int16_t expected, int16_t actual) {
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_NEAR(expected, actual, 1);
+ }
+ if (std::abs(expected - actual) > 1) {
+ totalNumberOfErrors++;
+ }
+ });
+ compare_<_Float16>(golden.float16Operands, test.float16Operands,
+ [&totalNumberOfErrors, fpAtol, fpRtol](_Float16 expected, _Float16 actual) {
+ // Compute the range based on both absolute tolerance and relative
+ // tolerance
+ float fpRange = fpAtol + fpRtol * std::abs(static_cast<float>(expected));
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_NEAR(expected, actual, fpRange);
+ }
+ if (std::abs(static_cast<float>(expected - actual)) > fpRange) {
+ totalNumberOfErrors++;
+ }
+ });
+ compare_<bool8>(golden.bool8Operands, test.bool8Operands,
+ [&totalNumberOfErrors](bool expected, bool actual) {
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_EQ(expected, actual);
+ }
+ if (expected != actual) {
+ totalNumberOfErrors++;
+ }
+ });
+ compare_<int8_t>(golden.quant8ChannelOperands, test.quant8ChannelOperands,
+ [&totalNumberOfErrors, &quant8AllowedError](int8_t expected, int8_t actual) {
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_NEAR(expected, actual, quant8AllowedError);
+ }
+ if (std::abs(static_cast<int>(expected) - static_cast<int>(actual)) >
+ quant8AllowedError) {
+ totalNumberOfErrors++;
+ }
+ });
+ compare_<uint16_t>(golden.quant16AsymmOperands, test.quant16AsymmOperands,
+ [&totalNumberOfErrors](int16_t expected, int16_t actual) {
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_NEAR(expected, actual, 1);
+ }
+ if (std::abs(expected - actual) > 1) {
+ totalNumberOfErrors++;
+ }
+ });
+ compare_<int8_t>(golden.quant8SymmOperands, test.quant8SymmOperands,
+ [&totalNumberOfErrors, quant8AllowedError](int8_t expected, int8_t actual) {
+ if (totalNumberOfErrors < gMaximumNumberOfErrorMessages) {
+ EXPECT_NEAR(expected, actual, quant8AllowedError);
+ }
+ if (std::abs(static_cast<int>(expected) - static_cast<int>(actual)) >
+ quant8AllowedError) {
+ totalNumberOfErrors++;
+ }
+ });
+
+ static_assert(9 == MixedTyped::kNumTypes,
+ "Number of types in MixedTyped changed, but compare function wasn't updated");
+ EXPECT_EQ(size_t{0}, totalNumberOfErrors);
+}
+
+// Calculates the expected probability from the unnormalized log-probability of
+// each class in the input and compares it to the actual ocurrence of that class
+// in the output.
+inline void expectMultinomialDistributionWithinTolerance(const MixedTyped& test,
+ const MixedTypedExample& example) {
+ // TODO: These should be parameters but aren't currently preserved in the example.
+ const int kBatchSize = 1;
+ const int kNumClasses = 1024;
+ const int kNumSamples = 128;
+
+ std::vector<int32_t> output = test.int32Operands.at(0);
+ std::vector<int> class_counts;
+ class_counts.resize(kNumClasses);
+ for (int index : output) {
+ class_counts[index]++;
+ }
+ std::vector<float> input;
+ Float32Operands float32Operands = example.operands.first.float32Operands;
+ if (!float32Operands.empty()) {
+ input = example.operands.first.float32Operands.at(0);
+ } else {
+ std::vector<_Float16> inputFloat16 = example.operands.first.float16Operands.at(0);
+ input.resize(inputFloat16.size());
+ convertFloat16ToFloat32(inputFloat16.data(), &input);
+ }
+ for (int b = 0; b < kBatchSize; ++b) {
+ float probability_sum = 0;
+ const int batch_index = kBatchSize * b;
+ for (int i = 0; i < kNumClasses; ++i) {
+ probability_sum += expf(input[batch_index + i]);
+ }
+ for (int i = 0; i < kNumClasses; ++i) {
+ float probability =
+ static_cast<float>(class_counts[i]) / static_cast<float>(kNumSamples);
+ float probability_expected = expf(input[batch_index + i]) / probability_sum;
+ EXPECT_THAT(probability,
+ ::testing::FloatNear(probability_expected,
+ example.expectedMultinomialDistributionTolerance));
+ }
+ }
+}
+
+}; // namespace test_helper
+
+#endif // ANDROID_FRAMEWORKS_ML_NN_TOOLS_TEST_GENERATOR_TEST_HARNESS_H
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/spec_visualizer.py b/tests/nnapi/nnapi_test_generator/android-q-beta/spec_visualizer.py
new file mode 100644
index 000000000..73a9628b7
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/spec_visualizer.py
@@ -0,0 +1,266 @@
+#!/usr/bin/python3
+
+# Copyright 2019, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+"""Spec Visualizer
+
+Visualize python spec file for test generator.
+Invoked by ml/nn/runtime/test/specs/visualize_spec.sh;
+See that script for details on how this script is used.
+"""
+
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+import argparse
+import json
+import os
+import sys
+from string import Template
+
+# Stuff from test generator
+import test_generator as tg
+from test_generator import ActivationConverter
+from test_generator import BoolScalar
+from test_generator import Configuration
+from test_generator import DataTypeConverter
+from test_generator import DataLayoutConverter
+from test_generator import Example
+from test_generator import Float16Scalar
+from test_generator import Float32Scalar
+from test_generator import Float32Vector
+from test_generator import GetJointStr
+from test_generator import IgnoredOutput
+from test_generator import Input
+from test_generator import Int32Scalar
+from test_generator import Int32Vector
+from test_generator import Internal
+from test_generator import Model
+from test_generator import Operand
+from test_generator import Output
+from test_generator import Parameter
+from test_generator import ParameterAsInputConverter
+from test_generator import RelaxedModeConverter
+from test_generator import SymmPerChannelQuantParams
+
+
+TEMPLATE_FILE = os.path.join(os.path.dirname(os.path.realpath(__file__)), "spec_viz_template.html")
+global_graphs = dict()
+
+
+def FormatArray(data, is_scalar=False):
+ if is_scalar:
+ assert len(data) == 1
+ return str(data[0])
+ else:
+ return "[%s]" % (", ".join(str(i) for i in data))
+
+
+def FormatDict(data):
+ return "<br/>".join("<b>%s:</b> %s"%(k.capitalize(), v) for k, v in data.items())
+
+
+def GetOperandInfo(op):
+ op_info = {"lifetime": op.lifetime, "type": op.type.type}
+
+ if not op.type.IsScalar():
+ op_info["dimensions"] = FormatArray(op.type.dimensions)
+
+ if op.type.scale != 0:
+ op_info["scale"] = op.type.scale
+ op_info["zero point"] = op.type.zeroPoint
+ if op.type.type == "TENSOR_QUANT8_SYMM_PER_CHANNEL":
+ op_info["scale"] = FormatArray(op.type.extraParams.scales)
+ op_info["channel dim"] = op.type.extraParams.channelDim
+
+ return op_info
+
+
+def FormatOperand(op):
+ # All keys and values in op_info will appear in the tooltip. We only display the operand data
+ # if the length is less than 10. This should be convenient enough for most parameters.
+ op_info = GetOperandInfo(op)
+ if isinstance(op, Parameter) and len(op.value) <= 10:
+ op_info["data"] = FormatArray(op.value, op.type.IsScalar())
+
+ template = "<span class='tooltip'><span class='tooltipcontent'>{tooltip_content}</span><a href=\"{inpage_link}\">{op_name}</a></span>"
+ return template.format(
+ op_name=str(op),
+ tooltip_content=FormatDict(op_info),
+ inpage_link="#details-operands-%d" % (op.model_index),
+ )
+
+
+def GetSubgraph(example):
+ """Produces the nodes and edges information for d3 visualization."""
+
+ node_index_map = {}
+ topological_order = []
+
+ def AddToTopologicalOrder(op):
+ if op not in node_index_map:
+ node_index_map[op] = len(topological_order)
+ topological_order.append(op)
+
+ # Get the topological order, both operands and operations are treated the same.
+ # Given that the example.model.operations is already topologically sorted, here we simply
+ # iterate through and insert inputs and outputs.
+ for op in example.model.operations:
+ for i in op.ins:
+ AddToTopologicalOrder(i)
+ AddToTopologicalOrder(op)
+ for o in op.outs:
+ AddToTopologicalOrder(o)
+
+ # Assign layers to the nodes.
+ layers = {}
+ for node in topological_order:
+ layers[node] = max([layers[i] for i in node.ins], default=-1) + 1
+ for node in reversed(topological_order):
+ layers[node] = min([layers[o] for o in node.outs], default=layers[node]+1) - 1
+ num_layers = max(layers.values()) + 1
+
+ # Assign coordinates to the nodes. Nodes are equally spaced.
+ CoordX = lambda index: (index + 0.5) * 200 # 200px spacing horizontally
+ CoordY = lambda index: (index + 0.5) * 100 # 100px spacing vertically
+ coords = {}
+ layer_cnt = [0] * num_layers
+ for node in topological_order:
+ coords[node] = (CoordX(layer_cnt[layers[node]]), CoordY(layers[node]))
+ layer_cnt[layers[node]] += 1
+
+ # Create edges and nodes dictionaries for d3 visualization.
+ OpName = lambda idx: "operation%d" % idx
+ edges = []
+ nodes = []
+ for ind, op in enumerate(example.model.operations):
+ for tensor in op.ins:
+ edges.append({
+ "source": str(tensor),
+ "target": OpName(ind)
+ })
+ for tensor in op.outs:
+ edges.append({
+ "target": str(tensor),
+ "source": OpName(ind)
+ })
+ nodes.append({
+ "index": ind,
+ "id": OpName(ind),
+ "name": op.optype,
+ "group": 2,
+ "x": coords[op][0],
+ "y": coords[op][1],
+ })
+
+ for ind, op in enumerate(example.model.operands):
+ nodes.append({
+ "index": ind,
+ "id": str(op),
+ "name": str(op),
+ "group": 1,
+ "x": coords[op][0],
+ "y": coords[op][1],
+ })
+
+ return {"nodes": nodes, "edges": edges}
+
+
+# The following Get**Info methods will each return a list of dictionaries,
+# whose content will appear in the tables and sidebar views.
+def GetConfigurationsInfo(example):
+ return [{
+ "relaxed": str(example.model.isRelaxed),
+ "use shared memory": str(tg.Configuration.useSHM()),
+ "expect failure": str(example.expectFailure),
+ }]
+
+
+def GetOperandsInfo(example):
+ ret = []
+ for index, op in enumerate(example.model.operands):
+ ret.append({
+ "index": index,
+ "name": str(op),
+ "group": "operand"
+ })
+ ret[-1].update(GetOperandInfo(op))
+ if isinstance(op, Parameter):
+ ret[-1]["data"] = FormatArray(op.value, op.type.IsScalar())
+ elif isinstance(op, Input):
+ ret[-1]["data"] = FormatArray(example.feedDicts[0][0][op], op.type.IsScalar())
+ elif isinstance(op, Output) and not isinstance(op, IgnoredOutput):
+ ret[-1]["data"] = FormatArray(example.feedDicts[0][1][op], op.type.IsScalar())
+ return ret
+
+
+def GetOperationsInfo(example):
+ return [{
+ "index": index,
+ "name": op.optype,
+ "group": "operation",
+ "opcode": op.optype,
+ "inputs": ", ".join(FormatOperand(i) for i in op.ins),
+ "outputs": ", ".join(FormatOperand(o) for o in op.outs),
+ } for index,op in enumerate(example.model.operations)]
+
+
+# TODO: Remove the unused fd from the parameter.
+def ProcessExample(example, fd):
+ """Process an example and save the information into the global dictionary global_graphs."""
+
+ global global_graphs
+ print(" Processing variation %s" % example.testName)
+ global_graphs[str(example.testName)] = {
+ "subgraph": GetSubgraph(example),
+ "details": {
+ "configurations": GetConfigurationsInfo(example),
+ "operands": GetOperandsInfo(example),
+ "operations": GetOperationsInfo(example)
+ }
+ }
+
+
+def DumpHtml(spec_file, out_file):
+ """Dump the final HTML file by replacing entries from a template file."""
+
+ with open(TEMPLATE_FILE, "r") as template_fd:
+ html_template = template_fd.read()
+
+ with open(out_file, "w") as out_fd:
+ out_fd.write(Template(html_template).substitute(
+ spec_name=os.path.basename(spec_file),
+ graph_dump=json.dumps(global_graphs),
+ ))
+
+
+def ParseCmdLine():
+ parser = argparse.ArgumentParser()
+ parser.add_argument("spec", help="the spec file")
+ parser.add_argument("-o", "--out", help="the output html path", default="out.html")
+ args = parser.parse_args()
+ tg.FileNames.InitializeFileLists(args.spec, "-", "-", "-")
+ tg.FileNames.NextFile()
+ return os.path.abspath(args.spec), os.path.abspath(args.out)
+
+
+if __name__ == '__main__':
+ spec_file, out_file = ParseCmdLine()
+ print("Visualizing from spec: %s" % spec_file)
+ exec(open(spec_file, "r").read())
+ Example.DumpAllExamples(DumpExample=ProcessExample, example_fd=0)
+ DumpHtml(spec_file, out_file)
+ print("Output HTML file: %s" % out_file)
+
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/spec_viz_template.html b/tests/nnapi/nnapi_test_generator/android-q-beta/spec_viz_template.html
new file mode 100644
index 000000000..befe469dc
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/spec_viz_template.html
@@ -0,0 +1,438 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <title>$spec_name</title>
+ <style>
+ body {
+ font-family: "Roboto", sans-serif;
+ margin: 0;
+ height: 100%;
+ background-color: rgb(61, 65, 77);
+ }
+
+ #main {
+ width: 62%;
+ transition: 0.5s;
+ }
+
+ #main h1 {
+ padding: 20px;
+ color: #eee;
+ font-size: 24px;
+ }
+
+ .subgraph h3 {
+ text-transform: capitalize;
+ }
+
+ .subgraph {
+ padding: 20px;
+ margin: 20px;
+ border-radius: 10px;
+ background-color: #fff;
+ }
+
+ .subgraph table {
+ border-collapse: collapse;
+ border-spacing: 0;
+ }
+
+ .subgraph thead {
+ background-color: rgb(61, 65, 77);
+ color: white;
+ text-transform: capitalize;
+ }
+
+ .subgraph tbody tr:nth-child(odd) {
+ background-color: #f2f2f2;
+ }
+
+ .subgraph tbody tr:hover {
+ background-color: #d8d8d8;
+ }
+
+ .subgraph td {
+ border: 1px solid #ddd;
+ padding: 8px;
+ }
+
+ .subgraph select {
+ font-weight: bold;
+ text-transform: uppercase;
+ font-size: 18px;
+ color: black;
+ }
+
+ .subgraph svg {
+ background: white;
+ border: 1px solid #ccc;
+ }
+
+ .subgraph .edges line {
+ stroke: #333;
+ }
+
+ .subgraph .nodes text {
+ color: black;
+ pointer-events: none;
+ font-family: sans-serif;
+ font-size: 11px;
+ }
+
+ #sidebar {
+ height: 100%;
+ width: 38%;
+ position: fixed;
+ z-index: 1;
+ top: 0;
+ right: 0;
+ background-color: #eee;
+ overflow-x: hidden;
+ transition: 0.5s;
+ border-left: 1px solid #ccc;
+ }
+
+ #sidebar #sidebar-main {
+ padding: 50px;
+ }
+
+ #sidebar h1 {
+ margin-top: 6px;
+ margin-bottom: 24px;
+ font-weight: bold;
+ font-size: 18px;
+ text-transform: uppercase;
+ }
+
+ #sidebar .subtitle {
+ margin-bottom: 6px;
+ border-bottom: 1px solid #ccc;
+ padding-bottom: 4px;
+ font-weight: bold;
+ font-size: 12px;
+ text-transform: uppercase;
+ color: #555;
+ }
+
+ #sidebar .property {
+ display: block;
+ margin-bottom: 16px;
+ }
+
+ #sidebar .property_title {
+ float: left;
+ width: 80px;
+ margin-top: 0;
+ padding-top: 10px;
+ font-weight: bold;
+ font-size: 12px;
+ text-transform: uppercase;
+ color: #555;
+ }
+
+ #sidebar .property_text {
+ margin-top: 8px;
+ margin-left: 100px;
+ border: 1px solid #ccc;
+ border-radius: 2px;
+ padding: 8px;
+ font-size: 14px;
+ background-color: #fff;
+ }
+
+ #sidebar .closebtn {
+ position: absolute;
+ top: 0;
+ right: 25px;
+ font-size: 36px;
+ margin-left: 50px;
+ text-decoration: none;
+ color: #555;
+ }
+
+ .tooltip {
+ color: blue;
+ }
+
+ .tooltip .tooltipcontent {
+ visibility: hidden;
+ color: black;
+ background-color: #eee;
+ margin-top: 18px;
+ padding: 5px;
+ border: 1px solid #ccc;
+ border-radius: 4px;
+ position: absolute;
+ z-index: 1;
+ }
+
+ .tooltip:hover .tooltipcontent {
+ visibility: visible;
+ }
+ </style>
+ <link href="https://fonts.googleapis.com/css?family=Roboto&display=swap" rel="stylesheet" />
+ <script src="https://d3js.org/d3.v4.min.js"></script>
+ <script>
+ graphs = $graph_dump;
+ </script>
+</head>
+
+<body>
+ <div id="main">
+ <h1>$spec_name</h1>
+ <div class="subgraph" id="main-subgraph">
+ <label for="main-selector">Choose a subgraph: </label>
+ <select id="main-selector" onchange="renderSubgraph(this.value)"></select>
+ <div id="main-tables"></div>
+ <h3>Visual Graph</h3>
+ <svg id="subgraph-svg" width="100%" height="720"></svg>
+ </div>
+ </div>
+
+ <div id="sidebar">
+ <div id="sidebar-main">
+ </div>
+ </div>
+
+ <script>
+ // Render the sidebar view of a given node object.
+ // The node must have "name" and "group" fields available.
+ function renderSidebar(node) {
+ var sidebar = document.getElementById("sidebar-main");
+ sidebar.innerHTML = "";
+ if (node == null) return;
+
+ // Sidebar subtitle -- text taken from node.group.
+ var subtitle = document.createElement("p");
+ subtitle.classList.add("subtitle");
+ subtitle.innerHTML = node.group;
+ sidebar.appendChild(subtitle);
+
+ // Sidebar title -- text taken from node.name.
+ var title = document.createElement("h1");
+ title.innerHTML = node.name;
+ sidebar.appendChild(title);
+
+ // List all the other fields in sidebar.
+ var ignoredFields = ["name", "group"];
+ for (var property in node) {
+ if (ignoredFields.includes(property)) continue;
+
+ var propertyTitle = document.createElement("h2");
+ propertyTitle.classList.add("property_title");
+ propertyTitle.innerHTML = property;
+
+ var propertyText = document.createElement("p");
+ propertyText.classList.add("property_text");
+ propertyText.innerHTML = node[property];
+
+ var propertyDiv = document.createElement("div");
+ propertyDiv.classList.add("property");
+ propertyDiv.appendChild(propertyTitle);
+ propertyDiv.appendChild(propertyText);
+ sidebar.appendChild(propertyDiv);
+ }
+ }
+
+ // Render the SVG DAG visualization, from TFLite graph visualizer.
+ // https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/tools/visualize.py
+ //
+ // The node coordiates are pre-calculated from the python visualizer.
+ function renderSvg(subgraph) {
+ var data = graphs[subgraph]["subgraph"];
+ var svg = d3.select("#subgraph-svg");
+ svg.selectAll("*").remove();
+ var width = svg.attr("width");
+ var height = svg.attr("height");
+ // Make the graph scrollable.
+ svg = svg.call(d3.zoom().on("zoom", function () {
+ svg.attr("transform", d3.event.transform);
+ })).append("g");
+ var color = d3.scaleOrdinal(d3.schemeDark2);
+ var simulation = d3.forceSimulation()
+ .force("link", d3.forceLink().id(function (d) { return d.id; }))
+ .force("charge", d3.forceManyBody())
+ .force("center", d3.forceCenter(0.5 * width, 0.5 * height));
+ var edge = svg.append("g").attr("class", "edges").selectAll("line")
+ .data(data.edges).enter().append("path").attr("stroke", "black").attr("fill", "none")
+ // Make the node group
+ var node = svg.selectAll(".nodes")
+ .data(data.nodes)
+ .enter().append("g")
+ .attr("x", function (d) { return d.x })
+ .attr("y", function (d) { return d.y })
+ .attr("transform", function (d) {
+ return "translate( " + d.x + ", " + d.y + ")"
+ })
+ .attr("class", "nodes")
+ .call(d3.drag()
+ .on("start", function (d) {
+ if (!d3.event.active) simulation.alphaTarget(1.0).restart();
+ d.fx = d.x; d.fy = d.y;
+ })
+ .on("drag", function (d) {
+ d.fx = d3.event.x; d.fy = d3.event.y;
+ })
+ .on("end", function (d) {
+ if (!d3.event.active) simulation.alphaTarget(0);
+ d.fx = d.fy = null;
+ }));
+ // Within the group, draw a box for the node position and text
+ // on the side.
+ var node_width = 150;
+ var node_height = 30;
+ node.append("rect")
+ .attr("r", "5px")
+ .attr("width", function (d) { return d.group == 1 ? node_width : node_width + 50; })
+ .attr("height", node_height)
+ .attr("rx", function (d) { return d.group == 1 ? 1 : 10; })
+ .attr("stroke", "#000000")
+ .attr("fill", function (d) { return d.group == 1 ? "#dddddd" : "#000000"; })
+ .attr("onclick", function (d) {
+ return "renderSidebar(graphs." + subgraph + ".details." +
+ (d.group == 1 ? "operands" : "operations") + "[" +
+ d.index.toString() + "])";
+ });
+ node.append("text")
+ .text(function (d) { return d.name; })
+ .attr("x", 5)
+ .attr("y", 20)
+ .attr("fill", function (d) { return d.group == 1 ? "#000000" : "#eeeeee"; })
+ // Setup force parameters and update position callback
+ var node = svg.selectAll(".nodes")
+ .data(data.nodes);
+ // Bind the links
+ var name_to_g = {}
+ node.each(function (data, index, nodes) {
+ name_to_g[data.id] = this;
+ });
+ function proc(w, t) {
+ return parseInt(w.getAttribute(t));
+ }
+ edge.attr("d", function (d) {
+ function lerp(t, a, b) {
+ return (1.0 - t) * a + t * b;
+ }
+ var x1 = proc(name_to_g[d.source], "x") + node_width / 2;
+ var y1 = proc(name_to_g[d.source], "y") + node_height;
+ var x2 = proc(name_to_g[d.target], "x") + node_width / 2;
+ var y2 = proc(name_to_g[d.target], "y");
+ var s = "M " + x1 + " " + y1
+ + " C " + x1 + " " + lerp(.5, y1, y2)
+ + " " + x2 + " " + lerp(.5, y1, y2)
+ + " " + x2 + " " + y2
+ return s;
+ });
+ }
+
+ // Open a new window and present the full text data.
+ function showFullData(data) {
+ window.open().document.write(data);
+ }
+
+ // Renders a single table.
+ function renderTable(title, data, headers) {
+ var parent = document.getElementById("main-tables");
+
+ // Create heading.
+ var heading = document.createElement("h3");
+ heading.innerHTML = title;
+ parent.appendChild(heading);
+
+ // Filter out headers that do not appear in any data element.
+ headers = headers.filter(function (key) {
+ return data.some(function (elem) { return key in elem; });
+ });
+
+ // Render the table headers.
+ var table = document.createElement("table");
+ let header = table.createTHead().insertRow();
+ for (let key of headers) { header.insertCell().innerHTML = key; }
+
+ // Render the table body.
+ // Since the "data" field could be very large, we omit the full content and
+ // append a "View Full" button to the end.
+ var omittableFields = ["data"];
+ let body = table.createTBody();
+ for (const [index, elem] of data.entries()) {
+ let row = body.insertRow();
+ row.id = "details-" + title.toLowerCase() + "-" + index.toString();
+
+ for (let key of headers) {
+ var cell = row.insertCell();
+ var data = key in elem ? elem[key] : "-";
+ if (omittableFields.includes(key) && data.length > 100) {
+ // If the data exceeds the length limit, only print the first 80 and
+ // the last 20 characters.
+ data = data.substring(0, 80) + " ... " +
+ data.substring(data.length - 20, data.length) + " ";
+ cell.innerHTML = data;
+
+ // Append a "View Full" button to the end.
+ var href = document.createElement("a");
+ href.innerHTML = "View Full";
+ href.href = "javascript:void(0)";
+ href.onclick = function () { showFullData(elem[key]); };
+ cell.appendChild(href);
+ } else {
+ cell.innerHTML = data;
+ }
+ }
+ }
+ parent.appendChild(table);
+ }
+
+ function renderTables(subgraph) {
+ document.getElementById("main-tables").innerHTML = "";
+ renderTable("Configurations", graphs[subgraph].details.configurations, [
+ "relaxed",
+ "use shared memory",
+ "expect failure"
+ ]);
+ renderTable("Operands", graphs[subgraph].details.operands, [
+ "index",
+ "name",
+ "type",
+ "dimensions",
+ "scale",
+ "zero point",
+ "channel dim",
+ "lifetime",
+ "data"
+ ]);
+ renderTable("Operations", graphs[subgraph].details.operations, [
+ "index",
+ "opcode",
+ "inputs",
+ "outputs"
+ ]);
+ }
+
+ // Re-render all the information related to a subgraph.
+ // Invoked everytime when the main-selector changes.
+ function renderSubgraph(subgraph) {
+ renderTables(subgraph);
+ renderSvg(subgraph);
+ renderSidebar(null); // Clear sidebar.
+ }
+
+ // Renders the main-selector and the first subgraph choice in the main-selector.
+ // Only invoked once when the page gets loaded the first time.
+ function renderMain() {
+ var selector = document.getElementById("main-selector");
+ var first = true;
+ for (var subgraph in graphs) {
+ var option = document.createElement("option");
+ option.value = subgraph;
+ option.text = subgraph;
+ selector.appendChild(option);
+ if (first) {
+ first = false;
+ renderSubgraph(subgraph);
+ }
+ }
+ }
+ renderMain();
+ </script>
+</body>
+</html>
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/test_generator.py b/tests/nnapi/nnapi_test_generator/android-q-beta/test_generator.py
new file mode 100644
index 000000000..f49385c78
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/test_generator.py
@@ -0,0 +1,1236 @@
+#!/usr/bin/python3
+
+# Copyright 2017, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+"""NN model compiler
+
+Contain classes definition and utilify functions for compiling models and
+examples into NDK-based CTS and VTS unit tests.
+
+Used by cts_generator.py, vts_generator.py, and spec_visualizer.py
+"""
+
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+import argparse
+import copy
+from functools import reduce
+import itertools
+import math
+import os
+import re
+import struct
+import sys
+import contextlib
+import pprint
+import numpy as np
+
+def GetJointStr(l, sep=", ", method=str):
+ return sep.join([method(i) for i in l])
+
+# Print in C float literal format
+def PrettyPrintAsFloat(x):
+ s = str(float(x))
+ if s.find(".") >= 0 or s.find("e") >= 0:
+ return s + "f"
+ else:
+ return s + ".0f"
+
+# Transform from original type to float32
+def Dequantize(v, ty):
+ v -= ty.zeroPoint
+ if ty.scale != 0:
+ v *= ty.scale
+ if isinstance(ty.extraParams, SymmPerChannelQuantParams):
+ v *= ty.extraParams.GetScalesBroadcastArray(ty.dimensions)
+ return v
+
+# Transform float32 to target data type
+def Quantize(v, ty):
+ if ty.scale != 0:
+ v /= ty.scale
+ if isinstance(ty.extraParams, SymmPerChannelQuantParams):
+ v = v / ty.extraParams.GetScalesBroadcastArray(ty.dimensions)
+ v += ty.zeroPoint
+ if not ty.IsFloat():
+ v = np.round(v)
+ v = int(v) if np.isscalar(v) else v.astype(int)
+ if ty.type == "TENSOR_QUANT8_ASYMM":
+ v = np.minimum(np.maximum(v, 0), 255)
+ elif ty.type == "TENSOR_QUANT16_ASYMM":
+ v = np.minimum(np.maximum(v, 0), 65535)
+ elif ty.type == "TENSOR_QUANT8_SYMM_PER_CHANNEL":
+ v = np.minimum(np.maximum(v, -127), 127)
+ elif ty.type == "UINT32":
+ v = np.maximum(v, 0)
+ return v
+
+@contextlib.contextmanager
+def SmartOpen(filename=None, mode="w"):
+ if filename and filename != '-':
+ fh = open(filename, mode)
+ else:
+ fh = sys.stdout
+
+ try:
+ yield fh
+ finally:
+ if fh is not sys.stdout:
+ fh.close()
+
+# Tracking objects inside a model with a unique name
+class NamedObject:
+ existingNames = set()
+
+ def __init__(self, *args, sep="_", showZero=False, startsFrom=0, skipRenaming=False):
+ name = GetJointStr([i for i in args if i is not None and i != ""], sep=sep)
+ if skipRenaming:
+ self.name = name
+ return
+ # make the name unique by renaming with a suffix number
+ uniqueName = name if showZero is False else name + sep + str(startsFrom)
+ while uniqueName in self.__class__.existingNames:
+ startsFrom += 1
+ uniqueName = name + sep + str(startsFrom)
+ self.__class__.existingNames.add(uniqueName)
+ self.name = uniqueName
+
+ def __str__(self):
+ return self.name
+ __repr__ = __str__
+
+ # Since names are unique, objects with the same name are considered equal
+ def __eq__(self, other):
+ return isinstance(other, NamedObject) and self.name == other.name
+
+ def __ne__(self, other):
+ return not self.__eq__(other)
+
+ def __hash__(self):
+ return hash(self.name)
+
+ def __lt__(self, other):
+ return self.name < other.name
+
+# Types, operands should all have a unique name since they share the same namespace
+class NamedVariable(NamedObject):
+ existingNames = set()
+ def __init__(self, *args, sep="_", showZero=False, startsFrom=0, skipRenaming=False):
+ NamedObject.__init__(self, *args, sep=sep, showZero=showZero,
+ startsFrom=startsFrom, skipRenaming=skipRenaming)
+
+# Global variables in the spec namespace such as CreateModel, is_ignored, and examples
+class GlobalVariable(NamedVariable):
+ def __init__(self, *args, skipRenaming=False):
+ NamedObject.__init__(self, *args, startsFrom=1, skipRenaming=skipRenaming)
+
+# Each test should have a unique name, but will not conflict with variables
+class NamedTest(NamedObject):
+ existingNames = set()
+ def __init__(self, *args, startsFrom=0, skipRenaming=False):
+ NamedObject.__init__(self, *args, startsFrom=1, skipRenaming=skipRenaming)
+
+class Type(NamedVariable):
+ typesMap = dict()
+ typeLookup = {
+ "INT32": "int32_t",
+ "UINT32": "uint32_t",
+ "FLOAT32": "float",
+ "FLOAT16": "_Float16",
+ "TENSOR_INT32": "int32_t",
+ "TENSOR_FLOAT16": "_Float16",
+ "TENSOR_FLOAT32": "float",
+ "TENSOR_QUANT8_ASYMM": "uint8_t",
+ "TENSOR_QUANT8_SYMM": "int8_t",
+ "BOOL": "bool8",
+ "TENSOR_QUANT16_ASYMM": "uint16_t",
+ "TENSOR_QUANT16_SYMM": "int16_t",
+ "TENSOR_BOOL8": "bool8",
+ "TENSOR_QUANT8_SYMM_PER_CHANNEL": "int8_t",
+# "OEM_SCALAR": this is service-defined.
+ "TENSOR_OEM_BYTE": "uint8_t",
+ }
+
+ # types are named as "type0", "type1", ...
+ def __init__(self, vt, dimensions, scale, zeroPoint, name="type", skipRenaming=False,
+ extraParams=None):
+ NamedVariable.__init__(self, name, sep="", showZero=True, skipRenaming=skipRenaming)
+ self.type = vt
+ self.dimensions = dimensions
+ self.scale = float(scale)
+ self.zeroPoint = int(zeroPoint)
+ self.extraParams = extraParams
+
+ # Factory for Type object, only create a new Type if requested type does
+ # not have a match with all existing types
+ @staticmethod
+ def GetType(vt, dimensions, scale=0, zeroPoint=0, extraParams=None):
+ key = ",".join([vt, str(dimensions), str(scale), str(zeroPoint), str(extraParams)])
+ if key not in Type.typesMap:
+ Type.typesMap[key] = Type(vt, dimensions, scale, zeroPoint, extraParams=extraParams)
+ return Type.typesMap[key]
+
+ @staticmethod
+ def GetAllTypes():
+ # sort to ensure a stable order when dumping the code
+ return sorted(Type.typesMap.values())
+
+ # For backward-compatibility
+ @staticmethod
+ def GetTypeFromString(vt, shape, extraParams=None):
+ dimensions, scale, zeroPoint = Type.GetParsedShape(shape)
+ scale = float(scale)
+ zeroPoint = int(zeroPoint)
+ return Type.GetType(vt, dimensions, scale, zeroPoint, extraParams)
+
+ # For backward-compatibility
+ @staticmethod
+ def GetParsedShape(shape):
+ # Parse shape
+ if (shape != "" and shape != "{}"):
+ left, sep, right = shape.partition('{')
+ real_shape, sep, right = right.partition('}')
+ shape = [int(x) for x in real_shape.split(",")]
+ # left now looks like "0.0f, 127.5f, "
+ scale, sep, zero_point = right.rpartition(',')
+ if scale == "":
+ if zero_point == "":
+ return shape, "0", "0"
+ return shape, zero_point, "0"
+ left, sep, scale = scale.partition(',')
+ return shape, scale.replace("f", ""), zero_point
+ else:
+ return [], "0", "0"
+
+ def GetNumberOfElements(self):
+ return reduce(lambda x,y: x*y, self.dimensions, 1)
+
+ def GetCppTypeString(self):
+ return Type.typeLookup[self.type]
+
+ def IsFloat(self):
+ return self.GetCppTypeString() in ["float", "_Float16"]
+
+ def IsBool(self):
+ return self.GetCppTypeString() == "bool8"
+
+ def IsScalar(self):
+ return not self.type.startswith("TENSOR_")
+
+ def GetElementByteSize(self):
+ cppTypeString = self.GetCppTypeString()
+ if cppTypeString in ["uint8_t", "int8_t", "bool8"]:
+ return 1
+ elif cppTypeString in ["int16_t", "uint16_t", "_Float16"]:
+ return 2
+ else:
+ return 4
+
+ def GetByteSize(self):
+ return self.GetElementByteSize() * self.GetNumberOfElements()
+
+ def GetDimensionsString(self):
+ return "{" + GetJointStr(self.dimensions) + "}"
+
+ def GetSignatureTuple(self):
+ return (self.type, self.dimensions, self.scale, self.zeroPoint)
+
+ def ToUnspecifiedDim(self):
+ return Type.GetType(self.type, [0] * len(self.dimensions), self.scale, self.zeroPoint)
+
+# To track implicitly convertible parameter types
+class ImplicitParameter():
+ @staticmethod
+ def ImplicitConvertion(value):
+ if isinstance(value, Operand):
+ return value
+ for implicitType in ImplicitParameter.__subclasses__():
+ if implicitType.IsCompatible(value):
+ return implicitType("param", value)
+ assert False, "%s not supported for implicit parameter"%value
+
+
+# ExtraParams with per-channel quantization.
+class SymmPerChannelQuantParams():
+ def __init__(self, channelDim, scales, hide = False):
+ self.channelDim = channelDim
+ self.scales = scales
+ self.hide = hide
+
+ def GetScalesBroadcastArray(self, dimensions):
+ bshape = [1] * len(dimensions)
+ bshape[self.channelDim] = len(self.scales)
+ return np.array(self.scales).reshape(bshape)
+
+ def GetConstructor(self):
+ return "SymmPerChannelQuantParams({%s},%d)" % (
+ ", ".join(str(x) + "f" for x in self.scales), self.channelDim)
+
+ def GetVtsSetter(self):
+ return "channelQuant"
+
+ def GetVtsConstructor(self):
+ return "SymmPerChannelQuantParams{.scales={%s}, .channelDim=%d}" % (
+ ", ".join(str(x) + "f" for x in self.scales), self.channelDim)
+
+
+# An operand that can be fed into operations. Also, an operand is always
+# declared before operations.
+class Operand(NamedVariable):
+
+ def __init__(self, name, opType, value, backward=None, skipRenaming=False, extraParams=None):
+ NamedVariable.__init__(self, name, sep="", skipRenaming=skipRenaming)
+ if type(opType) is str:
+ self.type = Type.GetTypeFromString(opType, value, extraParams)
+ value = backward
+ else:
+ self.type = Type.GetType(*opType, extraParams=extraParams)
+ self.SetValue(value)
+ self.dimensions = self.type.dimensions
+ self.lifetime = "TEMPORARY_VARIABLE"
+ self.model_index = None
+ self.ins = []
+ self.outs = []
+
+ def SetValue(self, value):
+ self.value = value if type(value) is list or type(value) is tuple else [value]
+ return self
+
+ def SetValueFromNumpy(self, value):
+ self.value = value.flatten().tolist()
+ return self
+
+ def GetValueAsNumpy(self):
+ return np.array(self.value).reshape(self.type.dimensions)
+
+ # Print value as cpp-style list initialization
+ def GetListInitialization(self):
+ assert self.value is not None, \
+ "Trying to print operand %s with None value"%(str(self))
+ if self.type.IsFloat():
+ return "{%s}"%(GetJointStr(self.value, method=PrettyPrintAsFloat))
+ elif self.type.IsBool():
+ return "{%s}"%(GetJointStr(self.value, method=lambda v: "true" if v else "false"))
+ else:
+ return "{%s}"%(GetJointStr(self.value, method=lambda x: str(int(x))))
+
+ def ToUnspecifiedDim(self):
+ self.dimensions = self.type.dimensions
+ self.type = self.type.ToUnspecifiedDim()
+
+# Base class of user-defined input/output operand
+class InOut(Operand):
+
+ def __init__(self, name, opType, backward=None, skipRenaming=False, extraParams=None):
+ Operand.__init__(self, name, opType, backward, None, skipRenaming=skipRenaming, extraParams=extraParams)
+ self.lifetime = "MODEL_INPUT"
+ self.index = 0
+
+ def Feed(self, value):
+ self.SetValue(value[self] if type(value) is dict else value)
+ return self
+
+ def GetListInitialization(self):
+ return "{%d, %s}"%(self.index, super().GetListInitialization())
+
+# A user-declared input operand
+class Input(InOut):
+ def __init__(self, name, opType, backward=None, skipRenaming=False, extraParams=None):
+ InOut.__init__(self, name, opType, backward, skipRenaming=skipRenaming, extraParams=extraParams)
+ self.lifetime = "MODEL_INPUT"
+
+# A user-declared output operand
+class Output(InOut):
+ def __init__(self, name, opType, backward=None, skipRenaming=False):
+ InOut.__init__(self, name, opType, backward, skipRenaming=skipRenaming)
+ self.lifetime = "MODEL_OUTPUT"
+
+# An output that we don't want to compare the results
+class IgnoredOutput(Output):
+ def __init__(self, name, opType, backward=None, skipRenaming=False):
+ Output.__init__(self, name, opType, backward, skipRenaming=skipRenaming)
+ self.lifetime = "MODEL_OUTPUT"
+ def Feed(self, value):
+ numElements = reduce(lambda x,y: x*y, self.dimensions, 1)
+ self.value = [0 for x in range(numElements)]
+ return self
+
+# An explicitly declared parameter
+class Parameter(Operand):
+ def __init__(self, name, opType, value, backward=None, skipRenaming=False, extraParams=None):
+ Operand.__init__(self, name, opType, value, backward, skipRenaming=skipRenaming,
+ extraParams=extraParams)
+ self.initializer = NamedVariable(str(self) + "_init")
+ self.lifetime = "CONSTANT_REFERENCE" if Configuration.useSHM() else "CONSTANT_COPY"
+
+# A shortcut for parameters of INT32
+class Int32Scalar(Parameter, ImplicitParameter):
+ def __init__(self, name, value):
+ Parameter.__init__(self, name, ("INT32", []), int(value))
+ @staticmethod
+ def IsCompatible(value):
+ return type(value) is int
+
+# A shortcut for parameters of FLOAT16
+class Float16Scalar(Parameter, ImplicitParameter):
+ def __init__(self, name, value):
+ Parameter.__init__(self, name, ("FLOAT16", []), float(value))
+ @staticmethod
+ def IsCompatible(value):
+ return False
+
+# A shortcut for parameters of FLOAT32
+class Float32Scalar(Parameter, ImplicitParameter):
+ def __init__(self, name, value):
+ Parameter.__init__(self, name, ("FLOAT32", []), float(value))
+ @staticmethod
+ def IsCompatible(value):
+ return type(value) is float
+
+# A shortcut for parameters of BOOL
+class BoolScalar(Parameter, ImplicitParameter):
+ def __init__(self, name, value):
+ Parameter.__init__(self, name, ("BOOL", []), bool(value))
+ @staticmethod
+ def IsCompatible(value):
+ return type(value) is bool
+
+# A shortcut for parameter of 1-D TENSOR_INT32
+class Int32Vector(Parameter, ImplicitParameter):
+ def __init__(self, name, value):
+ Parameter.__init__(self, name, ("TENSOR_INT32", [len(value)]), [int(v) for v in value])
+ @staticmethod
+ def IsCompatible(value):
+ if type(value) is not list and type(value) is not tuple:
+ return False
+ return all(type(i) is int for i in value)
+
+# A shortcut for parameter of 1-D TENSOR_FLOAT32
+class Float32Vector(Parameter, ImplicitParameter):
+ def __init__(self, name, value):
+ Parameter.__init__(self, name, ("TENSOR_FLOAT32", [len(value)]), [float(v) for v in value])
+ @staticmethod
+ def IsCompatible(value):
+ if type(value) is not list and type(value) is not tuple:
+ return False
+ return all(type(i) is float for i in value)
+
+# An explicitly declared intermediate result
+class Internal(Operand):
+ def __init__(self, name, opType, backward=None, skipRenaming=False):
+ Operand.__init__(self, name, opType, backward, None, skipRenaming=skipRenaming)
+ self.lifetime = "TEMPORARY_VARIABLE"
+
+# An operation in a model, does not need a name
+class Operation:
+
+ def __init__(self, optype, ins, outs):
+ self.optype = optype
+ self.SetInputs(ins)
+ self.SetOutputs(outs)
+
+ # for the ease of debugging
+ def __str__(self):
+ insString = GetJointStr(self.ins)
+ outsString = GetJointStr(self.outs)
+ return "Operation %s: [%s] -> [%s]"%(self.optype, insString, outsString)
+ __repr__ = __str__
+
+ def SetInputs(self, ins):
+ self.ins = [ImplicitParameter.ImplicitConvertion(i) for i in ins]
+ return self
+
+ def SetOutputs(self, outs):
+ self.outs = list(outs)
+ return self
+
+# Main interface
+class Model:
+ models = list()
+
+ def __init__(self, name=None):
+ self.name = name
+ self.operations = []
+ self.operands = []
+ self.isRelaxed = False
+ self.compiled = False
+ self.dumped = False
+ self.hasDynamicOutputShape = False
+ self.version = FileNames.version
+ Model.models.append(self)
+
+ def WithSuffix(self, *args):
+ self.createFunctionName = GlobalVariable("CreateModel", self.name, *args)
+ self.createTestFunctionName = GlobalVariable("createTestModel", self.name, *args)
+ self.isIgnoredFunctionName = GlobalVariable("is_ignored", self.name, *args)
+ return self
+
+ def AddOperation(self, operation):
+ self.operations.append(operation)
+ for i in operation.ins:
+ if i not in self.operands:
+ self.operands.append(i)
+ for o in operation.outs:
+ if o not in self.operands:
+ self.operands.append(o)
+ return self
+
+ def Operation(self, op_name, *args):
+ return self.AddOperation(Operation(op_name, args, []))
+
+ def To(self, *args):
+ assert len(self.operations) > 0
+ if type(args[0]) is tuple or type(args[0]) is list:
+ outs = args[0]
+ else:
+ outs = args
+ self.operations[-1].SetOutputs(outs)
+ for o in outs:
+ if o not in self.operands:
+ self.operands.append(o)
+ return self
+
+ def RelaxedExecution(self, isRelaxed):
+ self.isRelaxed = isRelaxed
+ return self
+
+ def TestDynamicOutputShape(self, hasDynamicOutputShape):
+ self.hasDynamicOutputShape = hasDynamicOutputShape
+ return self
+
+ # Sets the version of the model in compliance tests. Set to None to disable the test.
+ def IntroducedIn(self, ver):
+ self.version = ver
+ return self
+
+ def GetTypes(self):
+ return sorted(list(set(op.type for op in self.operands)))
+
+ def GetInputs(self):
+ return [i for i in self.operands if isinstance(i, Input)]
+
+ def GetOutputs(self):
+ return [o for o in self.operands if isinstance(o, Output)]
+
+ def GetInputsIndex(self):
+ return [i for i,op in enumerate(self.operands) if isinstance(op, Input)]
+
+ def GetOutputsIndex(self):
+ return [o for o,op in enumerate(self.operands) if isinstance(op, Output)]
+
+ def GetIndexOfOperands(self, operands):
+ return [self.operands.index(i) for i in operands]
+
+ def GetIgnoredOutputs(self):
+ return [o for o in self.operands if isinstance(o, IgnoredOutput)]
+
+ def GetParameters(self):
+ return [p for p in self.operands if isinstance(p, Parameter)]
+
+ def GetEquivalentOperands(self, targets):
+ return [self.operands[self.operands.index(t)] for t in targets]
+
+ def UpdateEquivalentOperands(self, targets):
+ for t in targets:
+ self.operands[self.operands.index(t)] = t
+ return self
+
+ def SetOperandIndex(self):
+ for ind, i in enumerate(self.GetInputs()):
+ i.index = ind
+ for ind, o in enumerate(self.GetOutputs()):
+ o.index = ind
+ for ind, op in enumerate(self.operands):
+ op.model_index = ind
+ return self
+
+ def SetOperandInsAndOuts(self):
+ for op in self.operands:
+ op.ins = list()
+ op.outs = list()
+ for op in self.operations:
+ op.ins = self.GetEquivalentOperands(op.ins)
+ op.outs = self.GetEquivalentOperands(op.outs)
+ for i in op.ins:
+ i.outs.append(op)
+ for o in op.outs:
+ o.ins.append(op)
+ return self
+
+ def TopologicalSortHelper(self, op, deps, visited):
+ if op in visited:
+ assert op not in deps, "Cycle detected in the graph"
+ else:
+ visited.add(op)
+ for i in deps[op]:
+ self.TopologicalSortHelper(i, deps, visited)
+ self.operations.append(op)
+ deps.pop(op)
+
+ # Topological sort of the operations, and detect if there is a cycle is the graph
+ def TopologicalSort(self):
+ deps = {op: list() for op in self.operations}
+ [deps[o].append(i) for op in self.operands for o in op.outs for i in op.ins]
+ operations = self.operations.copy()
+ self.operations = []
+ visited = set()
+ for op in operations:
+ self.TopologicalSortHelper(op, deps, visited)
+
+ def SetOutputUnspecified(self):
+ for op in self.operands:
+ op.dimensions = op.type.dimensions
+ if self.hasDynamicOutputShape:
+ for op in self.GetOutputs():
+ op.ToUnspecifiedDim()
+ return self
+
+ def Compile(self):
+ if self.compiled:
+ return self
+ self.SetOperandIndex()
+ self.SetOperandInsAndOuts()
+ self.TopologicalSort()
+ self.SetOutputUnspecified()
+ # Do not check compliance for relaxed mode and dynamic output shape tests.
+ if self.isRelaxed or self.hasDynamicOutputShape:
+ self.IntroducedIn(None)
+ self.compiled = True
+ return self
+
+# To track implicitly convertible variation types
+class ImplicitVariation:
+ @staticmethod
+ def ImplicitConvertion(value):
+ if isinstance(value, ModelVariation):
+ return value
+ for implicitType in ImplicitVariation.__subclasses__():
+ value = value if type(value) is tuple or type(value) is list else [value]
+ if implicitType.IsCompatible(value[0]):
+ var = implicitType(value[0])
+ if len(value) > 1:
+ var.Identify(*value[1:])
+ return var
+ assert False, "%s not supported for implicit variation"%value[0]
+
+# The base class for model variations
+class ModelVariation:
+
+ def __init__(self, name=None):
+ self.targetOperands = {}
+ self.name = name
+
+ def ApplyToHelper(self, model, args, feedDicts, transform):
+ opVarList = []
+ for op in model.GetEquivalentOperands(sorted(args.keys())):
+ opVar = op
+ feedDictsVar = []
+ if isinstance(op, Input) or isinstance(op, Output):
+ for feedDict in feedDicts:
+ op_tmp = copy.deepcopy(op)
+ if op_tmp in feedDict[0]:
+ opVar = transform(op_tmp.Feed(feedDict[0]), args[op_tmp])
+ elif op_tmp in feedDict[1]:
+ opVar = transform(op_tmp.Feed(feedDict[1]), args[op_tmp])
+ else:
+ assert False
+ feedDictsVar.append(opVar.value)
+ assert type(op) == type(opVar), "Can not handle %s -> %s"%(type(op), type(opVar))
+ else:
+ opVar = transform(op, args[op])
+ # handle Parameter -> Input
+ if isinstance(opVar, Input) or isinstance(opVar, Output):
+ feedDictsVar = [opVar.value] * len(feedDicts)
+ if isinstance(opVar, Input) or isinstance(opVar, Output):
+ for feedDict, feedDictVar in zip(feedDicts, feedDictsVar):
+ if opVar in feedDict[1]:
+ feedDict[1][opVar] = feedDictVar
+ else:
+ feedDict[0][opVar] = feedDictVar
+ opVarList.append(opVar)
+ return opVarList
+
+ # Make a deepcopy of the model and feedDicts, and apply the change
+ def ApplyTo(self, modelOrigin, feedDictsOrigin):
+ model, feedDicts = copy.deepcopy((modelOrigin, feedDictsOrigin))
+ model.compiled = False
+ model.dumped = False
+
+ if not self.targetOperands:
+ self.AutoIdentify(model)
+
+ # get transformed operands and update feedDicts
+ operandsVar = self.ApplyToHelper(
+ model, self.targetOperands, feedDicts, self.TransformOperand)
+
+ model = self.TransformModel(model)
+ model.UpdateEquivalentOperands(operandsVar)
+ return model, feedDicts
+
+ def IdentifyOperands(self, args=None):
+ if args is None:
+ return self
+ self.targetOperands = args if type(args) is dict else {i: None for i in args}
+ return self
+
+ def Identify(self, operandArgs=None, paramArgs=None):
+ self.IdentifyOperands(operandArgs)
+ return self
+
+ # Set variation to its default name
+ def SetToDefaultName(self):
+ self.name = ""
+ return self
+
+ # Automatically select the target operand list
+ def AutoIdentify(self, model):
+ return self
+
+ # Transform operands that are marked by IdentifyOperands()
+ def TransformOperand(self, op, arg=None):
+ return op
+
+ # Transform the model
+ def TransformModel(self, model):
+ return model
+
+# Default variation that does nothing
+class DefaultVariation(ModelVariation):
+
+ def __init__(self, name=None):
+ ModelVariation.__init__(self, name=name)
+
+# Convert operand data type
+class DataTypeConverter(ModelVariation, ImplicitVariation):
+
+ def __init__(self, targetType=None, name=None):
+ ModelVariation.__init__(self, name=name)
+ if targetType is not None:
+ assert DataTypeConverter.IsCompatible(targetType)
+ self.targetType = targetType
+
+ @staticmethod
+ def IsCompatible(value):
+ return value.lower() in ["float16", "int32"]
+
+ def SetToDefaultName(self):
+ if self.targetType is not None:
+ self.name = self.targetType.lower()
+ return self
+ # get all target types
+ targetTypes = list(zip(*self.targetOperands.values()))[0]
+ if "TENSOR_QUANT8_SYMM_PER_CHANNEL" in targetTypes:
+ self.name = "channelQuant8"
+ elif "TENSOR_QUANT8_ASYMM" in targetTypes:
+ self.name = "quant8"
+ elif "TENSOR_INT32" in targetTypes:
+ self.name = "int32"
+ elif "TENSOR_FLOAT16" in targetTypes:
+ self.name = "float16"
+ else:
+ self.name = "float32"
+ return self
+
+ def AutoIdentify(self, model):
+ if self.targetType is not None:
+ # By default, select all the float32 tensors/scalars
+ targets = {op: ["TENSOR_" + self.targetType.upper()] \
+ for op in model.operands if op.type.type == "TENSOR_FLOAT32"}
+ targets.update({op: [self.targetType.upper()] \
+ for op in model.operands if op.type.type == "FLOAT32"})
+ self.Identify(targets)
+ return self
+
+ def TransformOperand(self, op, arg=None):
+ if len(arg) == 1:
+ typeTuple = (arg[0], op.type.dimensions)
+ else:
+ typeTuple = (arg[0], op.type.dimensions, *arg[1:])
+ # To handle Internal operands
+ if op.value is None or op.type.GetNumberOfElements() == 0:
+ op.type = Type.GetType(*typeTuple)
+ else:
+ v = Dequantize(op.GetValueAsNumpy().astype(np.float32), op.type)
+ op.type = Type.GetType(*typeTuple)
+ v = Quantize(v, op.type)
+ op.SetValueFromNumpy(v)
+ return op
+
+# Convert model to turn on/off relaxed computation
+class RelaxedModeConverter(ModelVariation, ImplicitVariation):
+
+ def __init__(self, isRelaxed=True, name=None):
+ ModelVariation.__init__(self, name=name)
+ if isinstance(isRelaxed, bool):
+ self.isRelaxed = isRelaxed
+ else:
+ assert RelaxedModeConverter.IsCompatible(isRelaxed.lower())
+ self.isRelaxed = True
+
+ @staticmethod
+ def IsCompatible(value):
+ return value.lower() in ["relaxed"]
+
+ def SetToDefaultName(self):
+ self.name = "relaxed" if self.isRelaxed else "float"
+ return self
+
+ def TransformModel(self, model):
+ model.RelaxedExecution(self.isRelaxed)
+ return model
+
+# Convert data layout between "NHWC" amd "NCHW"
+class DataLayoutConverter(ModelVariation, ImplicitVariation):
+
+ def __init__(self, targetLayout="nchw", name=None):
+ ModelVariation.__init__(self, name=name)
+ self.targetLayout = targetLayout.lower()
+ assert DataLayoutConverter.IsCompatible(self.targetLayout)
+ self.perm = (0, 3, 1, 2) if self.targetLayout == "nchw" else (0, 2, 3, 1)
+ self.param = True if self.targetLayout == "nchw" else False
+
+ @staticmethod
+ def IsCompatible(value):
+ return value.lower() in ["nhwc", "nchw"]
+
+ def SetToDefaultName(self):
+ self.name = self.targetLayout
+ return self
+
+ def TransformOperand(self, op, arg=None):
+ if len(op.type.dimensions) == 4:
+ # To handle Internal operands
+ if op.value is not None and op.type.GetNumberOfElements() != 0:
+ op.SetValueFromNumpy(op.GetValueAsNumpy().transpose(self.perm))
+ newDim = [op.type.dimensions[i] for i in self.perm]
+ op.type = Type.GetType(op.type.type, newDim, op.type.scale, op.type.zeroPoint)
+ elif len(op.type.dimensions) == 1 and len(op.value) == 4:
+ op.SetValueFromNumpy(op.GetValueAsNumpy()[list(self.perm)])
+ elif op.type.type == "BOOL":
+ op.SetValue(self.param)
+ else:
+ assert False, "%s not supported by DataLayoutConverter"%op
+ return op
+
+# Convert data by tansposing and removing axis
+class AxisConverter(ModelVariation):
+
+ def __init__(self, origin, target, dim, drop=[], name=None):
+ ModelVariation.__init__(self, name=name)
+ self.origin = origin
+ self.target = target
+ assert all(i >= -dim and i < dim for i in [self.origin, self.target])
+ self.dim = dim
+ self.perm = list(range(dim))
+ self.perm.insert(target if target >= 0 else target + dim, self.perm.pop(origin))
+ self.drop = [drop] if type(drop) is int else list(drop)
+ assert all(i >= -dim and i < dim for i in self.drop)
+ self.drop = [i if i >= 0 else i + dim for i in self.drop]
+ assert target not in self.drop and target + dim not in self.drop
+
+ def SetToDefaultName(self):
+ axis = self.target if self.target >= 0 else self.target + self.dim
+ axis -= sum(i < axis for i in self.drop)
+ neg = "" if self.target >= 0 else "_neg"
+ self.name = "dim%d_axis%d%s"%(self.dim - len(self.drop), axis, neg)
+ return self
+
+ def TransposeAxis(self, op):
+ if op.type.type == "INT32":
+ op.SetValue(self.target)
+ elif len(op.type.dimensions) == self.dim:
+ # To handle Internal operands
+ if op.value is not None:
+ op.SetValueFromNumpy(op.GetValueAsNumpy().transpose(self.perm))
+ newDim = [op.type.dimensions[i] for i in self.perm]
+ op.type = Type.GetType(op.type.type, newDim, op.type.scale, op.type.zeroPoint)
+ else:
+ assert False, "%s not supported by AxisConverter"%op
+ return op
+
+ def RemoveAxis(self, op):
+ if op.type.type == "INT32":
+ if op.value[0] >= 0:
+ op.SetValue(op.value[0] - sum(i < op.value[0] for i in self.drop))
+ else:
+ op.SetValue(op.value[0] + sum(i > (op.value[0] + self.dim) for i in self.drop))
+ elif len(op.type.dimensions) == self.dim:
+ if op.value is not None:
+ val = op.GetValueAsNumpy()
+ for i in sorted(self.drop, reverse=True):
+ val = np.take(val, 0, axis=i)
+ op.SetValueFromNumpy(val)
+ newDim = [op.type.dimensions[i] for i in range(self.dim) if i not in self.drop]
+ op.type = Type.GetType(op.type.type, newDim, op.type.scale, op.type.zeroPoint)
+ else:
+ assert False, "%s not supported by AxisConverter"%op
+ return op
+
+ def TransformOperand(self, op, arg=None):
+ op = self.TransposeAxis(op)
+ op = self.RemoveAxis(op)
+ return op
+
+# Convert a Parameter to Input
+class ParameterAsInputConverter(ModelVariation, ImplicitVariation):
+
+ def __init__(self, arg="as_input", prefix="weight", name=None):
+ ModelVariation.__init__(self, name=name)
+ assert ParameterAsInputConverter.IsCompatible(arg.lower())
+ self.prefix = prefix
+
+ @staticmethod
+ def IsCompatible(value):
+ return value.lower() in ["as_input"]
+
+ def SetToDefaultName(self):
+ self.name = self.prefix + "_as_input"
+ return self
+
+ def TransformOperand(self, op, arg=None):
+ assert isinstance(op, Parameter), "%s cannot be converted to Input."%type(op)
+ newop = Input(op.name, op.type.GetSignatureTuple(), skipRenaming=True, extraParams=op.type.extraParams)
+ newop.SetValue(op.value)
+ return newop
+
+# Convert Output based on activation
+class ActivationConverter(ModelVariation, ImplicitVariation):
+ # (Enum, low, high)
+ actMap = {
+ "none": (0, None, None),
+ "relu": (1, 0.0, None),
+ "relu1": (2, -1.0, 1.0),
+ "relu6": (3, 0.0, 6.0),
+ }
+ def __init__(self, act="relu", name=None):
+ ModelVariation.__init__(self, name=name)
+ self.act = act.lower()
+ assert ActivationConverter.IsCompatible(self.act)
+ self.enum = ActivationConverter.actMap[self.act][0]
+ self.low = ActivationConverter.actMap[self.act][1]
+ self.high = ActivationConverter.actMap[self.act][2]
+
+ @staticmethod
+ def IsCompatible(value):
+ return value.lower() in ActivationConverter.actMap.keys()
+
+ def SetToDefaultName(self):
+ self.name = self.act
+ return self
+
+ def TransformOperand(self, op, arg=None):
+ if op.type.type == "INT32": # activation enum
+ return op.SetValue(self.enum)
+ else:
+ assert isinstance(op, Output)
+ v = op.GetValueAsNumpy()
+ if self.low is not None:
+ low = Quantize(self.low, op.type)
+ v = np.maximum(v, low)
+ if self.high is not None:
+ high = Quantize(self.high, op.type)
+ v = np.minimum(v, high)
+ return op.SetValueFromNumpy(v)
+
+class DynamicOutputShapeConverter(ModelVariation):
+ def __init__(self, name=None):
+ ModelVariation.__init__(self, name=name)
+
+ def SetToDefaultName(self):
+ self.name = "dynamic_output_shape"
+ return self
+
+ def TransformModel(self, model):
+ model.TestDynamicOutputShape(True)
+ return model
+
+# An example is always attached to a model, and could have multiple variations
+class Example:
+ examples = []
+ versionOverrides = {}
+
+ def __init__(self, *args, model=None, name=None):
+ self.model = Model.models[-1] if model is None else model
+ self.name = name
+ self.expectedMultinomialDistributionTolerance = None
+ self.expectFailure = False
+ self.feedDicts = []
+ for feedDict in args:
+ if type(feedDict) is tuple or type(feedDict) is list:
+ self.feedDicts.append(feedDict)
+ elif type(feedDict) is dict:
+ self.feedDicts.append((
+ {i: feedDict[i] for i in self.model.GetInputs()},
+ {o: feedDict[o] for o in self.model.GetOutputs()}
+ ))
+ else:
+ assert False
+ if Configuration.test_dynamic_output_shape:
+ self.variations = [[DefaultVariation(), DynamicOutputShapeConverter()]]
+ else:
+ self.variations = []
+ Example.examples.append(self)
+
+ @staticmethod
+ def SetVersion(ver, *args):
+ for name in args:
+ Example.versionOverrides[name] = ver
+
+ # Main entrance of test generator
+ @staticmethod
+ def DumpAllExamples(DumpModel=None, model_fd=None,
+ DumpExample=None, example_fd=None,
+ DumpTest=None, test_fd=None):
+ Example.CombineAllExamples()
+ for example in Example.examples:
+ example.Dump(DumpModel, model_fd, DumpExample, example_fd, DumpTest, test_fd)
+
+ # Combine examples with the same model, same name, and same set of variations
+ @staticmethod
+ def CombineAllExamples():
+ modelMap = {}
+ newExamples = []
+ for example in Example.examples:
+ key = (example.model, example.name, tuple(tuple(e) for e in example.variations))
+ if key in modelMap:
+ modelMap[key].Combine(example)
+ else:
+ modelMap[key] = example
+ newExamples.append(example)
+ Example.examples = newExamples
+
+ def AddVariations(self, *args, includeDefault=True, defaultName=None):
+ self.variations.append([DefaultVariation(defaultName)] if includeDefault else [])
+ self.variations[-1].extend(ImplicitVariation.ImplicitConvertion(i) for i in args)
+ return self
+
+ def AddNchw(self, *args, includeDefault=True, defaultName="nhwc"):
+ var = DataLayoutConverter("nchw").Identify(args)
+ self.AddVariations(var, includeDefault=includeDefault, defaultName=defaultName)
+ return self
+
+ def AddRelaxed(self, isRelaxed=True, includeDefault=True, defaultName=None):
+ var = RelaxedModeConverter(isRelaxed)
+ self.AddVariations(var, includeDefault=includeDefault, defaultName=defaultName)
+ return self
+
+ def AddInput(self, *args, includeDefault=True, defaultName=None):
+ var = ParameterAsInputConverter().Identify(args)
+ self.AddVariations(var, includeDefault=includeDefault, defaultName=defaultName)
+ return self
+
+ def AddRelu(self, *args, includeDefault=True, defaultName=None):
+ var = ActivationConverter("relu").Identify(args)
+ self.AddVariations(var, includeDefault=includeDefault, defaultName=defaultName)
+ return self
+
+ def AddAllActivations(self, *args):
+ var = [ActivationConverter(i).Identify(args)
+ for i in sorted(ActivationConverter.actMap.keys())]
+ self.AddVariations(*var, includeDefault=False)
+ return self
+
+ def GuessOriginalAxisAndDim(self, *args):
+ origin = None
+ dim = None
+ for arg in args:
+ if arg.type.type == "INT32":
+ origin = arg.value[0]
+ else:
+ if dim is None:
+ dim = len(arg.type.dimensions)
+ else:
+ assert dim == len(arg.type.dimensions)
+ assert dim is not None
+ origin = dim - 1 if origin is None else origin
+ origin = origin + dim if origin < 0 else origin
+ return origin, dim
+
+ def AddAxis(self, axis, *args, includeDefault=True, defaultName=None):
+ origin, dim = self.GuessOriginalAxisAndDim(*args)
+ axis = [axis] if type(axis) is int else list(axis)
+ var = [AxisConverter(origin, a, dim).Identify(args) for a in axis]
+ self.AddVariations(*var, includeDefault=includeDefault, defaultName=defaultName)
+ return self
+
+ def AddAllPositiveAxis(self, *args):
+ origin, dim = self.GuessOriginalAxisAndDim(*args)
+ var = [AxisConverter(origin, a, dim).Identify(args) for a in range(dim)]
+ self.AddVariations(*var, includeDefault=False)
+ return self
+
+ def AddAllAxis(self, *args):
+ origin, dim = self.GuessOriginalAxisAndDim(*args)
+ var = [AxisConverter(origin, a, dim).Identify(args) for a in range(-dim, dim)]
+ self.AddVariations(*var, includeDefault=False)
+ return self
+
+ def AddDims(self, dims, *args, includeDefault=True, defaultName=None):
+ origin, dim = self.GuessOriginalAxisAndDim(*args)
+ dims = [dims] if type(dims) is int else list(dims)
+ drop = list(range(dim))
+ drop.pop(origin)
+ var = [AxisConverter(origin, origin, dim, drop[0:(dim-i)]).Identify(args) for i in dims]
+ self.AddVariations(*var, includeDefault=includeDefault, defaultName=defaultName)
+ return self
+
+ def AddAllDims(self, *args):
+ origin, dim = self.GuessOriginalAxisAndDim(*args)
+ drop = list(range(dim))
+ drop.pop(origin)
+ var = [AxisConverter(origin, origin, dim, drop[0:i]).Identify(args) for i in range(dim)]
+ self.AddVariations(*var, includeDefault=False)
+ return self
+
+ def AddAllDimsAndPositiveAxis(self, *args):
+ origin, dim = self.GuessOriginalAxisAndDim(*args)
+ var = [AxisConverter(origin, j, dim, range(i)).Identify(args) \
+ for i in range(dim) for j in range(i, dim)]
+ self.AddVariations(*var, includeDefault=False)
+ return self
+
+ def AddAllDimsAndAxis(self, *args):
+ origin, dim = self.GuessOriginalAxisAndDim(*args)
+ var = [AxisConverter(origin, k, dim, range(i)).Identify(args) \
+ for i in range(dim) for j in range(i, dim) for k in [j, j - dim]]
+ self.AddVariations(*var, includeDefault=False)
+ return self
+
+ def Combine(self, other):
+ assert self.model is other.model, "Only examples targetting the same model can be combined"
+ assert tuple(self.variations) == tuple(other.variations), \
+ "Only examples with the same set of variations can be combined"
+ assert self.name == other.name, "Only examples with the same name can be combined"
+ self.feedDicts.extend(other.feedDicts)
+ return self
+
+ def Dump(self, DumpModel, model_fd, DumpExample, example_fd, DumpTest, test_fd):
+ [v.SetToDefaultName() for vs in self.variations for v in vs if v.name is None]
+ for variationList in itertools.product(*self.variations):
+ # Apply variations
+ modelOrigin, feedDictsOrigin = self.model, self.feedDicts
+ self.model, self.feedDicts = copy.deepcopy((self.model, self.feedDicts))
+ for variation in variationList:
+ self.model, self.feedDicts = variation.ApplyTo(self.model, self.feedDicts)
+ # Concat names for test and examples
+ varNames = [v.name for v in variationList]
+ self.testName = NamedTest(FileNames.specName, self.model.name, self.name, *varNames)
+ self.examplesName = GlobalVariable("examples", self.model.name, self.name, *varNames)
+ if str(self.testName) in Example.versionOverrides:
+ self.model.IntroducedIn(Example.versionOverrides[str(self.testName)])
+ self.model.WithSuffix(*varNames).Compile()
+ # Dump files
+ if DumpModel is not None and model_fd is not None:
+ DumpModel(self.model, model_fd)
+ if DumpExample is not None and example_fd is not None:
+ DumpExample(self, example_fd)
+ if DumpTest is not None and test_fd is not None:
+ DumpTest(self, test_fd)
+ # Restore model and feedDicts before variation
+ self.model = modelOrigin
+ self.feedDicts = feedDictsOrigin
+ return self
+
+ # Specifies the RANDOM_MULTINOMIAL distribution tolerance.
+ # If set to greater than zero, the input is compared as log-probabilities
+ # to the output and must be within this tolerance to pass.
+ def WithMultinomialDistributionTolerance(self, expectedTolerance):
+ assert self.expectFailure is False
+ self.expectedMultinomialDistributionTolerance = expectedTolerance
+ return self
+
+ # Specifies that this example is expected to fail during compilation or execution.
+ def ExpectFailure(self):
+ assert self.expectedMultinomialDistributionTolerance is None
+ self.expectFailure = True
+ return self
+
+class FileNames:
+ specFiles = []
+ specNames = []
+ modelFiles = []
+ exampleFiles = []
+ testFiles = []
+ specFile = ""
+ specName = ""
+ modelFile = ""
+ exampleFile = ""
+ testFile = ""
+ version = ""
+ fileIndex = 0
+
+ @staticmethod
+ def InitializeFileLists(spec, model, example, test):
+ # get all spec files and target files
+ if os.path.isfile(spec):
+ FileNames.specFiles = [os.path.abspath(spec)]
+ elif os.path.isdir(spec):
+ FileNames.specFiles = sorted([os.path.abspath(os.path.join(spec, f))
+ for f in os.listdir(spec) if f.endswith(".mod.py")])
+ else:
+ assert False, "%s is neither a file or a directory"%spec
+ FileNames.specNames = [re.sub(r"\..*", "", os.path.basename(f))
+ for f in FileNames.specFiles]
+ FileNames.modelFiles = FileNames.ParseTargetFiles(model, ".model.cpp")
+ FileNames.exampleFiles = FileNames.ParseTargetFiles(example, ".example.cpp")
+ FileNames.testFiles = FileNames.ParseTargetFiles(test, ".mod.py.cpp")
+
+ @staticmethod
+ def ParseTargetFiles(arg, ext):
+ numFiles = len(FileNames.specFiles)
+ absPath = os.path.abspath(arg)
+ if os.path.isdir(arg):
+ target = [os.path.join(absPath, f + ext) for f in FileNames.specNames]
+ elif arg == "-":
+ target = ["-"] * numFiles
+ else:
+ target = [absPath] * numFiles
+ return target
+
+ @staticmethod
+ def NextFile():
+ if FileNames.fileIndex >= len(FileNames.specFiles):
+ return False
+ FileNames.specFile = FileNames.specFiles[FileNames.fileIndex]
+ FileNames.specName = FileNames.specNames[FileNames.fileIndex]
+ FileNames.modelFile = FileNames.modelFiles[FileNames.fileIndex]
+ FileNames.exampleFile = FileNames.exampleFiles[FileNames.fileIndex]
+ FileNames.testFile = FileNames.testFiles[FileNames.fileIndex]
+ FileNames.fileIndex += 1
+ NamedObject.existingNames = set()
+ NamedVariable.existingNames = set()
+ NamedTest.existingNames = set()
+ Type.typesMap = dict()
+ Model.models = list()
+ Example.examples = list()
+ Configuration.use_shm_for_weights = False
+
+ # Extract version from absolute file path.
+ versionMatch = re.findall(r"/V\d_\d/", FileNames.specFile)
+ if len(versionMatch) == 1:
+ FileNames.version = versionMatch[0].strip('/')
+ else:
+ FileNames.version = None
+ return True
+
+class Configuration:
+ use_shm_for_weights = False
+ force_regenerate = False
+ test_dynamic_output_shape = True
+
+ @staticmethod
+ def useSHM():
+ return Configuration.use_shm_for_weights
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/lstm_float.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/lstm_float.mod.py
new file mode 100644
index 000000000..60eec8280
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/lstm_float.mod.py
@@ -0,0 +1,145 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+
+n_batch = 1
+n_input = 2
+# n_cell and n_output have the same size when there is no projection.
+n_cell = 4
+n_output = 4
+
+input = Input("input", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_input))
+
+input_to_input_weights = Input("input_to_input_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+input_to_forget_weights = Input("input_to_forget_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+input_to_cell_weights = Input("input_to_cell_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+input_to_output_weights = Input("input_to_output_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+
+recurrent_to_input_weights = Input("recurrent_to_intput_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+recurrent_to_forget_weights = Input("recurrent_to_forget_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+recurrent_to_cell_weights = Input("recurrent_to_cell_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+recurrent_to_output_weights = Input("recurrent_to_output_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+
+cell_to_input_weights = Input("cell_to_input_weights", "TENSOR_FLOAT32", "{0}")
+cell_to_forget_weights = Input("cell_to_forget_weights", "TENSOR_FLOAT32", "{0}")
+cell_to_output_weights = Input("cell_to_output_weights", "TENSOR_FLOAT32", "{0}")
+
+input_gate_bias = Input("input_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+forget_gate_bias = Input("forget_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+cell_gate_bias = Input("cell_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+output_gate_bias = Input("output_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+
+projection_weights = Input("projection_weights", "TENSOR_FLOAT32", "{0,0}")
+projection_bias = Input("projection_bias", "TENSOR_FLOAT32", "{0}")
+
+output_state_in = Input("output_state_in", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
+cell_state_in = Input("cell_state_in", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_cell))
+
+activation_param = Int32Scalar("activation_param", 4) # Tanh
+cell_clip_param = Float32Scalar("cell_clip_param", 0.)
+proj_clip_param = Float32Scalar("proj_clip_param", 0.)
+
+scratch_buffer = IgnoredOutput("scratch_buffer", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, (n_cell * 4)))
+output_state_out = Output("output_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
+cell_state_out = Output("cell_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_cell))
+output = Output("output", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
+
+model = model.Operation("LSTM",
+ input,
+
+ input_to_input_weights,
+ input_to_forget_weights,
+ input_to_cell_weights,
+ input_to_output_weights,
+
+ recurrent_to_input_weights,
+ recurrent_to_forget_weights,
+ recurrent_to_cell_weights,
+ recurrent_to_output_weights,
+
+ cell_to_input_weights,
+ cell_to_forget_weights,
+ cell_to_output_weights,
+
+ input_gate_bias,
+ forget_gate_bias,
+ cell_gate_bias,
+ output_gate_bias,
+
+ projection_weights,
+ projection_bias,
+
+ output_state_in,
+ cell_state_in,
+
+ activation_param,
+ cell_clip_param,
+ proj_clip_param
+).To([scratch_buffer, output_state_out, cell_state_out, output])
+model = model.RelaxedExecution(True)
+
+# Example 1. Input in operand 0,
+input0 = {input_to_input_weights: [-0.45018822, -0.02338299, -0.0870589, -0.34550029, 0.04266912, -0.15680569, -0.34856534, 0.43890524],
+ input_to_forget_weights: [0.09701663, 0.20334584, -0.50592935, -0.31343272, -0.40032279, 0.44781327, 0.01387155, -0.35593212],
+ input_to_cell_weights: [-0.50013041, 0.1370284, 0.11810488, 0.2013163, -0.20583314, 0.44344562, 0.22077113, -0.29909778],
+ input_to_output_weights: [-0.25065863, -0.28290087, 0.04613829, 0.40525138, 0.44272184, 0.03897077, -0.1556896, 0.19487578],
+
+ input_gate_bias: [0.,0.,0.,0.],
+ forget_gate_bias: [1.,1.,1.,1.],
+ cell_gate_bias: [0.,0.,0.,0.],
+ output_gate_bias: [0.,0.,0.,0.],
+
+ recurrent_to_input_weights: [
+ -0.0063535, -0.2042388, 0.31454784, -0.35746509, 0.28902304, 0.08183324,
+ -0.16555229, 0.02286911, -0.13566875, 0.03034258, 0.48091322,
+ -0.12528998, 0.24077177, -0.51332325, -0.33502164, 0.10629296],
+
+ recurrent_to_cell_weights: [
+ -0.3407414, 0.24443203, -0.2078532, 0.26320225, 0.05695659, -0.00123841,
+ -0.4744786, -0.35869038, -0.06418842, -0.13502428, -0.501764, 0.22830659,
+ -0.46367589, 0.26016325, -0.03894562, -0.16368064],
+
+ recurrent_to_forget_weights: [
+ -0.48684245, -0.06655136, 0.42224967, 0.2112639, 0.27654213, 0.20864892,
+ -0.07646349, 0.45877004, 0.00141793, -0.14609534, 0.36447752, 0.09196436,
+ 0.28053468, 0.01560611, -0.20127171, -0.01140004],
+
+ recurrent_to_output_weights: [
+ 0.43385774, -0.17194885, 0.2718237, 0.09215671, 0.24107647, -0.39835793,
+ 0.18212086, 0.01301402, 0.48572797, -0.50656658, 0.20047462, -0.20607421,
+ -0.51818722, -0.15390486, 0.0468148, 0.39922136],
+
+ cell_to_input_weights: [],
+ cell_to_forget_weights: [],
+ cell_to_output_weights: [],
+
+ projection_weights: [],
+ projection_bias: [],
+}
+
+test_input = [2., 3.]
+output_state = [0, 0, 0, 0]
+cell_state = [0, 0, 0, 0]
+golden_output = [-0.02973187, 0.1229473, 0.20885126, -0.15358765,]
+output0 = {
+ scratch_buffer: [ 0 for x in range(n_batch * n_cell * 4) ],
+ cell_state_out: [ -0.145439, 0.157475, 0.293663, -0.277353 ],
+ output_state_out: [ -0.0297319, 0.122947, 0.208851, -0.153588 ],
+ output: golden_output
+}
+input0[input] = test_input
+input0[output_state_in] = output_state
+input0[cell_state_in] = cell_state
+Example((input0, output0))
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/stderr.txt.expect
new file mode 100644
index 000000000..7ac2240b2
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/stderr.txt.expect
@@ -0,0 +1,3 @@
+Output CTS model: -
+Output example:-
+Output CTS test: -
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/stdout.txt.expect
new file mode 100644
index 000000000..5fdca97d1
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_float/stdout.txt.expect
@@ -0,0 +1,107 @@
+// clang-format off
+// Generated file (from: lstm_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: lstm_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: lstm_float.mod.py). Do not edit
+#include "../../TestGenerated.h"
+
+namespace lstm_float {
+// Generated lstm_float test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace lstm_float
+
+void CreateModel(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {4, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {4, 4});
+ OperandType type3(Type::TENSOR_FLOAT32, {0});
+ OperandType type4(Type::TENSOR_FLOAT32, {4});
+ OperandType type5(Type::TENSOR_FLOAT32, {0, 0});
+ OperandType type6(Type::TENSOR_FLOAT32, {1, 4});
+ OperandType type7(Type::INT32, {});
+ OperandType type8(Type::FLOAT32, {});
+ OperandType type9(Type::TENSOR_FLOAT32, {1, 16});
+ // Phase 1, operands
+ auto input = model->addOperand(&type0);
+ auto input_to_input_weights = model->addOperand(&type1);
+ auto input_to_forget_weights = model->addOperand(&type1);
+ auto input_to_cell_weights = model->addOperand(&type1);
+ auto input_to_output_weights = model->addOperand(&type1);
+ auto recurrent_to_intput_weights = model->addOperand(&type2);
+ auto recurrent_to_forget_weights = model->addOperand(&type2);
+ auto recurrent_to_cell_weights = model->addOperand(&type2);
+ auto recurrent_to_output_weights = model->addOperand(&type2);
+ auto cell_to_input_weights = model->addOperand(&type3);
+ auto cell_to_forget_weights = model->addOperand(&type3);
+ auto cell_to_output_weights = model->addOperand(&type3);
+ auto input_gate_bias = model->addOperand(&type4);
+ auto forget_gate_bias = model->addOperand(&type4);
+ auto cell_gate_bias = model->addOperand(&type4);
+ auto output_gate_bias = model->addOperand(&type4);
+ auto projection_weights = model->addOperand(&type5);
+ auto projection_bias = model->addOperand(&type3);
+ auto output_state_in = model->addOperand(&type6);
+ auto cell_state_in = model->addOperand(&type6);
+ auto activation_param = model->addOperand(&type7);
+ auto cell_clip_param = model->addOperand(&type8);
+ auto proj_clip_param = model->addOperand(&type8);
+ auto scratch_buffer = model->addOperand(&type9);
+ auto output_state_out = model->addOperand(&type6);
+ auto cell_state_out = model->addOperand(&type6);
+ auto output = model->addOperand(&type6);
+ // Phase 2, operations
+ static int32_t activation_param_init[] = {4};
+ model->setOperandValue(activation_param, activation_param_init, sizeof(int32_t) * 1);
+ static float cell_clip_param_init[] = {0.0f};
+ model->setOperandValue(cell_clip_param, cell_clip_param_init, sizeof(float) * 1);
+ static float proj_clip_param_init[] = {0.0f};
+ model->setOperandValue(proj_clip_param, proj_clip_param_init, sizeof(float) * 1);
+ model->addOperation(ANEURALNETWORKS_LSTM, {input, input_to_input_weights, input_to_forget_weights, input_to_cell_weights, input_to_output_weights, recurrent_to_intput_weights, recurrent_to_forget_weights, recurrent_to_cell_weights, recurrent_to_output_weights, cell_to_input_weights, cell_to_forget_weights, cell_to_output_weights, input_gate_bias, forget_gate_bias, cell_gate_bias, output_gate_bias, projection_weights, projection_bias, output_state_in, cell_state_in, activation_param, cell_clip_param, proj_clip_param}, {scratch_buffer, output_state_out, cell_state_out, output});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {input, input_to_input_weights, input_to_forget_weights, input_to_cell_weights, input_to_output_weights, recurrent_to_intput_weights, recurrent_to_forget_weights, recurrent_to_cell_weights, recurrent_to_output_weights, cell_to_input_weights, cell_to_forget_weights, cell_to_output_weights, input_gate_bias, forget_gate_bias, cell_gate_bias, output_gate_bias, projection_weights, projection_bias, output_state_in, cell_state_in},
+ {scratch_buffer, output_state_out, cell_state_out, output});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {0};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {2.0f, 3.0f}}, {1, {-0.45018822f, -0.02338299f, -0.0870589f, -0.34550029f, 0.04266912f, -0.15680569f, -0.34856534f, 0.43890524f}}, {2, {0.09701663f, 0.20334584f, -0.50592935f, -0.31343272f, -0.40032279f, 0.44781327f, 0.01387155f, -0.35593212f}}, {3, {-0.50013041f, 0.1370284f, 0.11810488f, 0.2013163f, -0.20583314f, 0.44344562f, 0.22077113f, -0.29909778f}}, {4, {-0.25065863f, -0.28290087f, 0.04613829f, 0.40525138f, 0.44272184f, 0.03897077f, -0.1556896f, 0.19487578f}}, {5, {-0.0063535f, -0.2042388f, 0.31454784f, -0.35746509f, 0.28902304f, 0.08183324f, -0.16555229f, 0.02286911f, -0.13566875f, 0.03034258f, 0.48091322f, -0.12528998f, 0.24077177f, -0.51332325f, -0.33502164f, 0.10629296f}}, {6, {-0.48684245f, -0.06655136f, 0.42224967f, 0.2112639f, 0.27654213f, 0.20864892f, -0.07646349f, 0.45877004f, 0.00141793f, -0.14609534f, 0.36447752f, 0.09196436f, 0.28053468f, 0.01560611f, -0.20127171f, -0.01140004f}}, {7, {-0.3407414f, 0.24443203f, -0.2078532f, 0.26320225f, 0.05695659f, -0.00123841f, -0.4744786f, -0.35869038f, -0.06418842f, -0.13502428f, -0.501764f, 0.22830659f, -0.46367589f, 0.26016325f, -0.03894562f, -0.16368064f}}, {8, {0.43385774f, -0.17194885f, 0.2718237f, 0.09215671f, 0.24107647f, -0.39835793f, 0.18212086f, 0.01301402f, 0.48572797f, -0.50656658f, 0.20047462f, -0.20607421f, -0.51818722f, -0.15390486f, 0.0468148f, 0.39922136f}}, {9, {}}, {10, {}}, {11, {}}, {12, {0.0f, 0.0f, 0.0f, 0.0f}}, {13, {1.0f, 1.0f, 1.0f, 1.0f}}, {14, {0.0f, 0.0f, 0.0f, 0.0f}}, {15, {0.0f, 0.0f, 0.0f, 0.0f}}, {16, {}}, {17, {}}, {18, {0.0f, 0.0f, 0.0f, 0.0f}}, {19, {0.0f, 0.0f, 0.0f, 0.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}}, {1, {-0.0297319f, 0.122947f, 0.208851f, -0.153588f}}, {2, {-0.145439f, 0.157475f, 0.293663f, -0.277353f}}, {3, {-0.02973187f, 0.1229473f, 0.20885126f, -0.15358765f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, lstm_float) {
+ execute(lstm_float::CreateModel,
+ lstm_float::is_ignored,
+ lstm_float::examples);
+}
+
+#include "../generated/tests/lstm_float.mod.py.cpp"
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/depthwise_conv2d_quant8.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/depthwise_conv2d_quant8.mod.py
new file mode 100644
index 000000000..051780877
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/depthwise_conv2d_quant8.mod.py
@@ -0,0 +1,43 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+i1 = Input("op1", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 2}, 0.5f, 0")
+f1 = Input("op2", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 2}, 0.5f, 0")
+b1 = Input("op3", "TENSOR_INT32", "{2}, 0.25f, 0")
+pad0 = Int32Scalar("pad0", 0)
+act = Int32Scalar("act", 0)
+stride = Int32Scalar("stride", 1)
+cm = Int32Scalar("channelMultiplier", 1)
+output = Output("op4", "TENSOR_QUANT8_ASYMM", "{1,1,1,2}, 1.f, 0")
+
+model = model.Operation("DEPTHWISE_CONV_2D",
+ i1, f1, b1,
+ pad0, pad0, pad0, pad0,
+ stride, stride,
+ cm, act).To(output)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [4, 16, 4, 32, 4, 64, 4, 128],
+ f1:
+ [2, 4, 2, 0, 2, 2, 2, 0],
+ b1:
+ [0, 0]}
+# (i1 (depthconv) f1)
+output0 = {output: # output 0
+ [8, 48]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/stderr.txt.expect
new file mode 100644
index 000000000..7ac2240b2
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/stderr.txt.expect
@@ -0,0 +1,3 @@
+Output CTS model: -
+Output example:-
+Output CTS test: -
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/stdout.txt.expect
new file mode 100644
index 000000000..9c54412de
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_backward_compatibility_quant8/stdout.txt.expect
@@ -0,0 +1,82 @@
+// clang-format off
+// Generated file (from: depthwise_conv2d_quant8.mod.py). Do not edit
+// clang-format off
+// Generated file (from: depthwise_conv2d_quant8.mod.py). Do not edit
+// clang-format off
+// Generated file (from: depthwise_conv2d_quant8.mod.py). Do not edit
+#include "../../TestGenerated.h"
+
+namespace depthwise_conv2d_quant8 {
+// Generated depthwise_conv2d_quant8 test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace depthwise_conv2d_quant8
+
+void CreateModel(Model *model) {
+ OperandType type0(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 0);
+ OperandType type1(Type::TENSOR_INT32, {2}, 0.25f, 0);
+ OperandType type2(Type::INT32, {});
+ OperandType type3(Type::TENSOR_QUANT8_ASYMM, {1, 1, 1, 2}, 1.0f, 0);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type0);
+ auto op3 = model->addOperand(&type1);
+ auto pad0 = model->addOperand(&type2);
+ auto stride = model->addOperand(&type2);
+ auto channelMultiplier = model->addOperand(&type2);
+ auto act = model->addOperand(&type2);
+ auto op4 = model->addOperand(&type3);
+ // Phase 2, operations
+ static int32_t pad0_init[] = {0};
+ model->setOperandValue(pad0, pad0_init, sizeof(int32_t) * 1);
+ static int32_t stride_init[] = {1};
+ model->setOperandValue(stride, stride_init, sizeof(int32_t) * 1);
+ static int32_t channelMultiplier_init[] = {1};
+ model->setOperandValue(channelMultiplier, channelMultiplier_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_DEPTHWISE_CONV_2D, {op1, op2, op3, pad0, pad0, pad0, pad0, stride, stride, channelMultiplier, act}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2, op3},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {{2, {0, 0}}},
+ // int -> QUANT8_ASYMM map
+ {{0, {4, 16, 4, 32, 4, 64, 4, 128}}, {1, {2, 4, 2, 0, 2, 2, 2, 0}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {8, 48}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, depthwise_conv2d_quant8) {
+ execute(depthwise_conv2d_quant8::CreateModel,
+ depthwise_conv2d_quant8::is_ignored,
+ depthwise_conv2d_quant8::examples);
+}
+
+#include "../generated/tests/depthwise_conv2d_quant8.mod.py.cpp"
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/conv_float.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/conv_float.mod.py
new file mode 100644
index 000000000..f6b3e89ca
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/conv_float.mod.py
@@ -0,0 +1,35 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 3, 3, 1}")
+f1 = Parameter("op2", "TENSOR_FLOAT32", "{1, 2, 2, 1}", [.25, .25, .25, .25])
+b1 = Parameter("op3", "TENSOR_FLOAT32", "{1}", [0])
+pad0 = Int32Scalar("pad0", 0)
+act = Int32Scalar("act", 0)
+stride = Int32Scalar("stride", 1)
+output = Output("op4", "TENSOR_FLOAT32", "{1, 2, 2, 1}")
+
+model = model.Operation("CONV_2D", i1, f1, b1, pad0, pad0, pad0, pad0, stride, stride, act).To(output)
+model = model.RelaxedExecution(True)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1.0, 1.0, 1.0, 1.0, 0.5, 1.0, 1.0, 1.0, 1.0]}
+
+output0 = {output: # output 0
+ [.875, .875, .875, .875]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/stderr.txt.expect
new file mode 100644
index 000000000..7ac2240b2
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/stderr.txt.expect
@@ -0,0 +1,3 @@
+Output CTS model: -
+Output example:-
+Output CTS test: -
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/stdout.txt.expect
new file mode 100644
index 000000000..cb6c58a3c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_float/stdout.txt.expect
@@ -0,0 +1,85 @@
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+#include "../../TestGenerated.h"
+
+namespace conv_float {
+// Generated conv_float test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace conv_float
+
+void CreateModel(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 3, 3, 1});
+ OperandType type1(Type::TENSOR_FLOAT32, {1, 2, 2, 1});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto pad0 = model->addOperand(&type3);
+ auto stride = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type1);
+ // Phase 2, operations
+ static float op2_init[] = {0.25f, 0.25f, 0.25f, 0.25f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 4);
+ static float op3_init[] = {0.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t pad0_init[] = {0};
+ model->setOperandValue(pad0, pad0_init, sizeof(int32_t) * 1);
+ static int32_t stride_init[] = {1};
+ model->setOperandValue(stride, stride_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, pad0, pad0, pad0, pad0, stride, stride, act}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 0.5f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {0.875f, 0.875f, 0.875f, 0.875f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float) {
+ execute(conv_float::CreateModel,
+ conv_float::is_ignored,
+ conv_float::examples);
+}
+
+#include "../generated/tests/conv_float.mod.py.cpp"
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/mean_implicit.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/mean_implicit.mod.py
new file mode 100644
index 000000000..be7b22bdb
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/mean_implicit.mod.py
@@ -0,0 +1,41 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+i0 = Input("i0", ("TENSOR_FLOAT32", [2, 2])) # input 0
+
+o1 = Output("o1", ("TENSOR_FLOAT32", [1, 2])) # output for model1
+o2 = Output("o2", ("TENSOR_FLOAT32", [2, 1])) # output for model2
+o3 = Output("o3", ("TENSOR_FLOAT32", [1])) # output for model3
+
+model1 = Model().Operation("MEAN", i0, [0], 1).To(o1) # along axis 0, keep_dim=True
+model2 = Model().Operation("MEAN", i0, [1], 1).To(o2) # along axis 1, keep_dim=True
+model3 = Model().Operation("MEAN", i0, [0, 1], 0).To(o3) # along both axis, keep_dim=False
+
+inputs1 = {i0: [1, 2, 3, 4]}
+outputs11 = {o1: [4, 6]}
+outputs12 = {o2: [3, 7]}
+outputs13 = {o3: [10]}
+
+inputs2 = {i0: [-1, -2, -3, -4]}
+outputs21 = {o1: [-4, -6]}
+outputs22 = {o2: [-3, -7]}
+outputs23 = {o3: [-10]}
+
+Example((inputs1, outputs11), model=model1)
+Example((inputs1, outputs12), model=model2)
+Example((inputs1, outputs13), model=model3)
+
+Example((inputs2, outputs21), model=model1)
+Example((inputs2, outputs22), model=model2)
+Example((inputs2, outputs23), model=model3)
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/stderr.txt.expect
new file mode 100644
index 000000000..7ac2240b2
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/stderr.txt.expect
@@ -0,0 +1,3 @@
+Output CTS model: -
+Output example:-
+Output CTS test: -
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/stdout.txt.expect
new file mode 100644
index 000000000..feebbcc81
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_parameter/stdout.txt.expect
@@ -0,0 +1,262 @@
+// clang-format off
+// Generated file (from: mean_implicit.mod.py). Do not edit
+// clang-format off
+// Generated file (from: mean_implicit.mod.py). Do not edit
+// clang-format off
+// Generated file (from: mean_implicit.mod.py). Do not edit
+#include "../../TestGenerated.h"
+
+namespace mean_implicit {
+// Generated mean_implicit test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace mean_implicit
+
+void CreateModel(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {1, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {2, 1});
+ OperandType type3(Type::TENSOR_FLOAT32, {1});
+ OperandType type4(Type::TENSOR_INT32, {1});
+ OperandType type5(Type::INT32, {});
+ OperandType type6(Type::TENSOR_INT32, {2});
+ // Phase 1, operands
+ auto i0 = model->addOperand(&type0);
+ auto param = model->addOperand(&type4);
+ auto param1 = model->addOperand(&type5);
+ auto o1 = model->addOperand(&type1);
+ // Phase 2, operations
+ static int32_t param_init[] = {0};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_MEAN, {i0, param, param1}, {o1});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {i0},
+ {o1});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {4.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-1.0f, -2.0f, -3.0f, -4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-4.0f, -6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, mean_implicit) {
+ execute(mean_implicit::CreateModel,
+ mean_implicit::is_ignored,
+ mean_implicit::examples);
+}
+
+void CreateModel_2(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {1, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {2, 1});
+ OperandType type3(Type::TENSOR_FLOAT32, {1});
+ OperandType type4(Type::TENSOR_INT32, {1});
+ OperandType type5(Type::INT32, {});
+ OperandType type6(Type::TENSOR_INT32, {2});
+ // Phase 1, operands
+ auto i0 = model->addOperand(&type0);
+ auto param2 = model->addOperand(&type4);
+ auto param3 = model->addOperand(&type5);
+ auto o2 = model->addOperand(&type2);
+ // Phase 2, operations
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t param3_init[] = {1};
+ model->setOperandValue(param3, param3_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_MEAN, {i0, param2, param3}, {o2});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {i0},
+ {o2});
+ assert(model->isValid());
+}
+
+bool is_ignored_2(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_2 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {3.0f, 7.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-1.0f, -2.0f, -3.0f, -4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-3.0f, -7.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, mean_implicit_2) {
+ execute(mean_implicit::CreateModel_2,
+ mean_implicit::is_ignored_2,
+ mean_implicit::examples_2);
+}
+
+void CreateModel_3(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {1, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {2, 1});
+ OperandType type3(Type::TENSOR_FLOAT32, {1});
+ OperandType type4(Type::TENSOR_INT32, {1});
+ OperandType type5(Type::INT32, {});
+ OperandType type6(Type::TENSOR_INT32, {2});
+ // Phase 1, operands
+ auto i0 = model->addOperand(&type0);
+ auto param4 = model->addOperand(&type6);
+ auto param5 = model->addOperand(&type5);
+ auto o3 = model->addOperand(&type3);
+ // Phase 2, operations
+ static int32_t param4_init[] = {0, 1};
+ model->setOperandValue(param4, param4_init, sizeof(int32_t) * 2);
+ static int32_t param5_init[] = {0};
+ model->setOperandValue(param5, param5_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_MEAN, {i0, param4, param5}, {o3});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {i0},
+ {o3});
+ assert(model->isValid());
+}
+
+bool is_ignored_3(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_3 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {10.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-1.0f, -2.0f, -3.0f, -4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-10.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, mean_implicit_3) {
+ execute(mean_implicit::CreateModel_3,
+ mean_implicit::is_ignored_3,
+ mean_implicit::examples_3);
+}
+
+#include "../generated/tests/mean_implicit.mod.py.cpp"
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/conv_float.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/conv_float.mod.py
new file mode 100644
index 000000000..826f390c0
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/conv_float.mod.py
@@ -0,0 +1,52 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+f1 = Parameter("op2", "TENSOR_FLOAT32", "{2, 2, 2, 2}", [1, 2, 3, 4, 5, 6, 7, 8, 8, 7, 6, 5, 4, 3, 2, 1])
+b1 = Parameter("op3", "TENSOR_FLOAT32", "{1}", [-200])
+output = Output("op4", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+act = Int32Scalar("act", 0) # None activation
+layout = Int32Scalar("layout", 0) # NHWC
+
+model = model.Operation("CONV_2D", i1, f1, b1, 1, 1, 1, act, layout).To(output)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1, 2, 3, 4, 5, 6, 7, 8]}
+
+output0 = {output: # output 0
+ [204, 120, 94, 104, 70, 164, 23, 112]}
+
+quant8 = DataTypeConverter().Identify({
+ i1: ("TENSOR_QUANT8_ASYMM", 0.5, 128),
+ f1: ("TENSOR_QUANT8_ASYMM", 0.25, 128),
+ b1: ("TENSOR_INT32", 0.125, 0),
+ output: ("TENSOR_QUANT8_ASYMM", 2, 100)
+})
+
+# Instantiate an example
+Example(
+ (input0, output0)
+).AddVariations(
+ ("NCHW", [i1, f1, output], [layout])
+).AddVariations(
+ ("relu", [output], [act]),
+ ("relu6", [output], [act]),
+ includeDefault=False
+).AddVariations(
+ ("as_input", [f1])
+).AddVariations(
+ "relaxed", quant8
+)
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/stderr.txt.expect
new file mode 100644
index 000000000..7ac2240b2
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/stderr.txt.expect
@@ -0,0 +1,3 @@
+Output CTS model: -
+Output example:-
+Output CTS test: -
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/stdout.txt.expect
new file mode 100644
index 000000000..7d3cba69a
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_implicit_variation/stdout.txt.expect
@@ -0,0 +1,1848 @@
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+#include "../../TestGenerated.h"
+
+namespace conv_float {
+// Generated conv_float test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace conv_float
+
+void CreateModel_relu(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu) {
+ execute(conv_float::CreateModel_relu,
+ conv_float::is_ignored_relu,
+ conv_float::examples_relu);
+}
+
+void CreateModel_relu_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_relu_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu_relaxed) {
+ execute(conv_float::CreateModel_relu_relaxed,
+ conv_float::is_ignored_relu_relaxed,
+ conv_float::examples_relu_relaxed);
+}
+
+void CreateModel_relu_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu_quant8) {
+ execute(conv_float::CreateModel_relu_quant8,
+ conv_float::is_ignored_relu_quant8,
+ conv_float::examples_relu_quant8);
+}
+
+void CreateModel_relu_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu_weight_as_input) {
+ execute(conv_float::CreateModel_relu_weight_as_input,
+ conv_float::is_ignored_relu_weight_as_input,
+ conv_float::examples_relu_weight_as_input);
+}
+
+void CreateModel_relu_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_relu_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_relu_weight_as_input_relaxed,
+ conv_float::is_ignored_relu_weight_as_input_relaxed,
+ conv_float::examples_relu_weight_as_input_relaxed);
+}
+
+void CreateModel_relu_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_relu_weight_as_input_quant8,
+ conv_float::is_ignored_relu_weight_as_input_quant8,
+ conv_float::examples_relu_weight_as_input_quant8);
+}
+
+void CreateModel_relu6(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6) {
+ execute(conv_float::CreateModel_relu6,
+ conv_float::is_ignored_relu6,
+ conv_float::examples_relu6);
+}
+
+void CreateModel_relu6_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6_relaxed) {
+ execute(conv_float::CreateModel_relu6_relaxed,
+ conv_float::is_ignored_relu6_relaxed,
+ conv_float::examples_relu6_relaxed);
+}
+
+void CreateModel_relu6_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6_quant8) {
+ execute(conv_float::CreateModel_relu6_quant8,
+ conv_float::is_ignored_relu6_quant8,
+ conv_float::examples_relu6_quant8);
+}
+
+void CreateModel_relu6_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6_weight_as_input) {
+ execute(conv_float::CreateModel_relu6_weight_as_input,
+ conv_float::is_ignored_relu6_weight_as_input,
+ conv_float::examples_relu6_weight_as_input);
+}
+
+void CreateModel_relu6_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_relu6_weight_as_input_relaxed,
+ conv_float::is_ignored_relu6_weight_as_input_relaxed,
+ conv_float::examples_relu6_weight_as_input_relaxed);
+}
+
+void CreateModel_relu6_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_relu6_weight_as_input_quant8,
+ conv_float::is_ignored_relu6_weight_as_input_quant8,
+ conv_float::examples_relu6_weight_as_input_quant8);
+}
+
+void CreateModel_nchw_relu(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu) {
+ execute(conv_float::CreateModel_nchw_relu,
+ conv_float::is_ignored_nchw_relu,
+ conv_float::examples_nchw_relu);
+}
+
+void CreateModel_nchw_relu_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu_relaxed) {
+ execute(conv_float::CreateModel_nchw_relu_relaxed,
+ conv_float::is_ignored_nchw_relu_relaxed,
+ conv_float::examples_nchw_relu_relaxed);
+}
+
+void CreateModel_nchw_relu_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu_quant8) {
+ execute(conv_float::CreateModel_nchw_relu_quant8,
+ conv_float::is_ignored_nchw_relu_quant8,
+ conv_float::examples_nchw_relu_quant8);
+}
+
+void CreateModel_nchw_relu_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu_weight_as_input) {
+ execute(conv_float::CreateModel_nchw_relu_weight_as_input,
+ conv_float::is_ignored_nchw_relu_weight_as_input,
+ conv_float::examples_nchw_relu_weight_as_input);
+}
+
+void CreateModel_nchw_relu_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_nchw_relu_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_relu_weight_as_input_relaxed,
+ conv_float::examples_nchw_relu_weight_as_input_relaxed);
+}
+
+void CreateModel_nchw_relu_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_nchw_relu_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_relu_weight_as_input_quant8,
+ conv_float::examples_nchw_relu_weight_as_input_quant8);
+}
+
+void CreateModel_nchw_relu6(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6) {
+ execute(conv_float::CreateModel_nchw_relu6,
+ conv_float::is_ignored_nchw_relu6,
+ conv_float::examples_nchw_relu6);
+}
+
+void CreateModel_nchw_relu6_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6_relaxed) {
+ execute(conv_float::CreateModel_nchw_relu6_relaxed,
+ conv_float::is_ignored_nchw_relu6_relaxed,
+ conv_float::examples_nchw_relu6_relaxed);
+}
+
+void CreateModel_nchw_relu6_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6_quant8) {
+ execute(conv_float::CreateModel_nchw_relu6_quant8,
+ conv_float::is_ignored_nchw_relu6_quant8,
+ conv_float::examples_nchw_relu6_quant8);
+}
+
+void CreateModel_nchw_relu6_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6_weight_as_input) {
+ execute(conv_float::CreateModel_nchw_relu6_weight_as_input,
+ conv_float::is_ignored_nchw_relu6_weight_as_input,
+ conv_float::examples_nchw_relu6_weight_as_input);
+}
+
+void CreateModel_nchw_relu6_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_nchw_relu6_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_relu6_weight_as_input_relaxed,
+ conv_float::examples_nchw_relu6_weight_as_input_relaxed);
+}
+
+void CreateModel_nchw_relu6_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_nchw_relu6_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_relu6_weight_as_input_quant8,
+ conv_float::examples_nchw_relu6_weight_as_input_quant8);
+}
+
+#include "../generated/tests/conv_float.mod.py.cpp"
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/add_internal.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/add_internal.mod.py
new file mode 100644
index 000000000..28c4afc52
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/add_internal.mod.py
@@ -0,0 +1,71 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+
+i0 = Input("i0", ("TENSOR_FLOAT32", [2])) # input 0
+i1 = Input("i1", ("TENSOR_FLOAT32", [2])) # input 0
+i2 = Input("i2", ("TENSOR_FLOAT32", [2])) # input 0
+i3 = Input("i3", ("TENSOR_FLOAT32", [2])) # input 0
+i4 = Input("i4", ("TENSOR_FLOAT32", [2])) # input 0
+i5 = Input("i5", ("TENSOR_FLOAT32", [2])) # input 0
+i6 = Input("i6", ("TENSOR_FLOAT32", [2])) # input 0
+i7 = Input("i7", ("TENSOR_FLOAT32", [2])) # input 0
+i8 = Input("i8", ("TENSOR_FLOAT32", [2])) # input 0
+
+t0 = Internal("t0", ("TENSOR_FLOAT32", [2]))
+t1 = Internal("t1", ("TENSOR_FLOAT32", [2]))
+t2 = Internal("t2", ("TENSOR_FLOAT32", [2]))
+t3 = Internal("t3", ("TENSOR_FLOAT32", [2]))
+t4 = Internal("t4", ("TENSOR_FLOAT32", [2]))
+t5 = Internal("t5", ("TENSOR_FLOAT32", [2]))
+t6 = Internal("t6", ("TENSOR_FLOAT32", [2]))
+
+o0 = Output("o0", ("TENSOR_FLOAT32", [2]))
+o1 = Output("o1", ("TENSOR_FLOAT32", [2]))
+o2 = Output("o2", ("TENSOR_FLOAT32", [2]))
+
+p0 = Parameter("p0", ("TENSOR_FLOAT32", [2]), [0.0, 1.0])
+act = Int32Scalar("act", 0)
+
+model.Operation("ADD", o0, o1, act).To(o2)
+model.Operation("ADD", p0, t5, act).To(t6)
+model.Operation("ADD", i2, t0, act).To(t1)
+model.Operation("ADD", i6, p0, act).To(t5)
+model.Operation("ADD", i0, i1, act).To(t0)
+model.Operation("ADD", t1, t3, act).To(t4)
+model.Operation("ADD", t2, i5, act).To(t3)
+model.Operation("ADD", t4, t6, act).To(o0)
+model.Operation("ADD", i3, i4, act).To(t2)
+model.Operation("ADD", i7, i8, act).To(o1)
+
+inputs = {
+ i0: [0, 0],
+ i1: [0, 0],
+ i2: [0, 0],
+ i3: [0, 0],
+ i4: [0, 0],
+ i5: [0, 0],
+ i6: [0, 0],
+ i7: [0, 0],
+ i8: [0, 0]
+}
+
+outputs = {
+ o0: [0, 2],
+ o1: [0, 0],
+ o2: [0, 2]
+}
+
+Example((inputs, outputs))
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/stderr.txt.expect
new file mode 100644
index 000000000..7ac2240b2
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/stderr.txt.expect
@@ -0,0 +1,3 @@
+Output CTS model: -
+Output example:-
+Output CTS test: -
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/stdout.txt.expect
new file mode 100644
index 000000000..2e271c712
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_internal/stdout.txt.expect
@@ -0,0 +1,98 @@
+// clang-format off
+// Generated file (from: add_internal.mod.py). Do not edit
+// clang-format off
+// Generated file (from: add_internal.mod.py). Do not edit
+// clang-format off
+// Generated file (from: add_internal.mod.py). Do not edit
+#include "../../TestGenerated.h"
+
+namespace add_internal {
+// Generated add_internal test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace add_internal
+
+void CreateModel(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {2});
+ OperandType type1(Type::INT32, {});
+ // Phase 1, operands
+ auto o0 = model->addOperand(&type0);
+ auto o1 = model->addOperand(&type0);
+ auto act = model->addOperand(&type1);
+ auto o2 = model->addOperand(&type0);
+ auto p0 = model->addOperand(&type0);
+ auto t5 = model->addOperand(&type0);
+ auto t6 = model->addOperand(&type0);
+ auto i2 = model->addOperand(&type0);
+ auto t0 = model->addOperand(&type0);
+ auto t1 = model->addOperand(&type0);
+ auto i6 = model->addOperand(&type0);
+ auto i0 = model->addOperand(&type0);
+ auto i1 = model->addOperand(&type0);
+ auto t3 = model->addOperand(&type0);
+ auto t4 = model->addOperand(&type0);
+ auto t2 = model->addOperand(&type0);
+ auto i5 = model->addOperand(&type0);
+ auto i3 = model->addOperand(&type0);
+ auto i4 = model->addOperand(&type0);
+ auto i7 = model->addOperand(&type0);
+ auto i8 = model->addOperand(&type0);
+ // Phase 2, operations
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static float p0_init[] = {0.0f, 1.0f};
+ model->setOperandValue(p0, p0_init, sizeof(float) * 2);
+ model->addOperation(ANEURALNETWORKS_ADD, {i6, p0, act}, {t5});
+ model->addOperation(ANEURALNETWORKS_ADD, {p0, t5, act}, {t6});
+ model->addOperation(ANEURALNETWORKS_ADD, {i0, i1, act}, {t0});
+ model->addOperation(ANEURALNETWORKS_ADD, {i2, t0, act}, {t1});
+ model->addOperation(ANEURALNETWORKS_ADD, {i3, i4, act}, {t2});
+ model->addOperation(ANEURALNETWORKS_ADD, {t2, i5, act}, {t3});
+ model->addOperation(ANEURALNETWORKS_ADD, {t1, t3, act}, {t4});
+ model->addOperation(ANEURALNETWORKS_ADD, {t4, t6, act}, {o0});
+ model->addOperation(ANEURALNETWORKS_ADD, {i7, i8, act}, {o1});
+ model->addOperation(ANEURALNETWORKS_ADD, {o0, o1, act}, {o2});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {i2, i6, i0, i1, i5, i3, i4, i7, i8},
+ {o0, o1, o2});
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {0.0f, 0.0f}}, {1, {0.0f, 0.0f}}, {2, {0.0f, 0.0f}}, {3, {0.0f, 0.0f}}, {4, {0.0f, 0.0f}}, {5, {0.0f, 0.0f}}, {6, {0.0f, 0.0f}}, {7, {0.0f, 0.0f}}, {8, {0.0f, 0.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {0.0f, 2.0f}}, {1, {0.0f, 0.0f}}, {2, {0.0f, 2.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, add_internal) {
+ execute(add_internal::CreateModel,
+ add_internal::is_ignored,
+ add_internal::examples);
+}
+
+#include "../generated/tests/add_internal.mod.py.cpp"
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/conv_float.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/conv_float.mod.py
new file mode 100644
index 000000000..61f7c92ee
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/conv_float.mod.py
@@ -0,0 +1,61 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model("model_name")
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+f1 = Parameter("op2", "TENSOR_FLOAT32", "{2, 2, 2, 2}", [1, 2, 3, 4, 5, 6, 7, 8, 8, 7, 6, 5, 4, 3, 2, 1])
+b1 = Parameter("op3", "TENSOR_FLOAT32", "{1}", [-200])
+output = Output("op4", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+act = Int32Scalar("act", 0) # None activation
+layout = Int32Scalar("layout", 0) # NHWC
+pad = Int32Scalar("param", 1)
+stride0 = Int32Scalar("param1", 1)
+stride1 = Int32Scalar("param2", 1)
+
+model = model.Operation("CONV_2D", i1, f1, b1, pad, stride0, stride1, act, layout).To(output)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1, 2, 3, 4, 5, 6, 7, 8]}
+
+output0 = {output: # output 0
+ [204, 120, 94, 104, 70, 164, 23, 112]}
+
+quant8 = DataTypeConverter(name="quantized").Identify({
+ i1: ("TENSOR_QUANT8_ASYMM", 0.5, 128),
+ f1: ("TENSOR_QUANT8_ASYMM", 0.25, 128),
+ b1: ("TENSOR_INT32", 0.125, 0),
+ output: ("TENSOR_QUANT8_ASYMM", 2, 100)
+})
+nchw = DataLayoutConverter("NCHW", name="nchw_layout").Identify([i1, f1, output], [layout])
+relu = ActivationConverter("relu", name="act").Identify([output], [act])
+relu6 = ActivationConverter("relu6").Identify([output], [act])
+weight_as_input = ParameterAsInputConverter(name="w_as_input").Identify([f1])
+relax = RelaxedModeConverter(True, name="float_relaxed")
+
+# Instantiate an example
+# Will produce cartesian product of
+# [nhwc, nchw_layout] * [act, relu6] * [w_as_param, w_as_input] * [float, float_relaxed, quantized]
+# 24 variations
+Example(
+ (input0, output0), name="example_name"
+).AddVariations(
+ nchw, defaultName="nhwc"
+).AddVariations(
+ relu, relu6, includeDefault=False
+).AddVariations(
+ weight_as_input, defaultName="w_as_param"
+).AddVariations(
+ relax, quant8, defaultName="float"
+)
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/stderr.txt.expect
new file mode 100644
index 000000000..7ac2240b2
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/stderr.txt.expect
@@ -0,0 +1,3 @@
+Output CTS model: -
+Output example:-
+Output CTS test: -
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/stdout.txt.expect
new file mode 100644
index 000000000..8cc78fe5a
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_naming/stdout.txt.expect
@@ -0,0 +1,1848 @@
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+#include "../../TestGenerated.h"
+
+namespace conv_float {
+// Generated conv_float test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace conv_float
+
+void CreateModel_model_name_nhwc_act_w_as_param_float(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_param_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_param_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_act_w_as_param_float) {
+ execute(conv_float::CreateModel_model_name_nhwc_act_w_as_param_float,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_param_float,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_param_float);
+}
+
+void CreateModel_model_name_nhwc_act_w_as_param_float_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_param_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_param_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_act_w_as_param_float_relaxed) {
+ execute(conv_float::CreateModel_model_name_nhwc_act_w_as_param_float_relaxed,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_param_float_relaxed,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_param_float_relaxed);
+}
+
+void CreateModel_model_name_nhwc_act_w_as_param_quantized(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_param_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_param_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_act_w_as_param_quantized) {
+ execute(conv_float::CreateModel_model_name_nhwc_act_w_as_param_quantized,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_param_quantized,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_param_quantized);
+}
+
+void CreateModel_model_name_nhwc_act_w_as_input_float(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_input_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_input_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_act_w_as_input_float) {
+ execute(conv_float::CreateModel_model_name_nhwc_act_w_as_input_float,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_input_float,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_input_float);
+}
+
+void CreateModel_model_name_nhwc_act_w_as_input_float_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_input_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_input_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_act_w_as_input_float_relaxed) {
+ execute(conv_float::CreateModel_model_name_nhwc_act_w_as_input_float_relaxed,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_input_float_relaxed,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_input_float_relaxed);
+}
+
+void CreateModel_model_name_nhwc_act_w_as_input_quantized(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_input_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_input_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_act_w_as_input_quantized) {
+ execute(conv_float::CreateModel_model_name_nhwc_act_w_as_input_quantized,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_input_quantized,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_input_quantized);
+}
+
+void CreateModel_model_name_nhwc_relu6_w_as_param_float(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_param_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_param_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_relu6_w_as_param_float) {
+ execute(conv_float::CreateModel_model_name_nhwc_relu6_w_as_param_float,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_param_float,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_param_float);
+}
+
+void CreateModel_model_name_nhwc_relu6_w_as_param_float_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_param_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_param_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_relu6_w_as_param_float_relaxed) {
+ execute(conv_float::CreateModel_model_name_nhwc_relu6_w_as_param_float_relaxed,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_param_float_relaxed,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_param_float_relaxed);
+}
+
+void CreateModel_model_name_nhwc_relu6_w_as_param_quantized(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_param_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_param_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_relu6_w_as_param_quantized) {
+ execute(conv_float::CreateModel_model_name_nhwc_relu6_w_as_param_quantized,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_param_quantized,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_param_quantized);
+}
+
+void CreateModel_model_name_nhwc_relu6_w_as_input_float(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_input_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_input_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_relu6_w_as_input_float) {
+ execute(conv_float::CreateModel_model_name_nhwc_relu6_w_as_input_float,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_input_float,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_input_float);
+}
+
+void CreateModel_model_name_nhwc_relu6_w_as_input_float_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_input_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_input_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_relu6_w_as_input_float_relaxed) {
+ execute(conv_float::CreateModel_model_name_nhwc_relu6_w_as_input_float_relaxed,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_input_float_relaxed,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_input_float_relaxed);
+}
+
+void CreateModel_model_name_nhwc_relu6_w_as_input_quantized(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_input_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_input_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nhwc_relu6_w_as_input_quantized) {
+ execute(conv_float::CreateModel_model_name_nhwc_relu6_w_as_input_quantized,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_input_quantized,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_input_quantized);
+}
+
+void CreateModel_model_name_nchw_layout_act_w_as_param_float(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_param_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_param_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_act_w_as_param_float) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_act_w_as_param_float,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_param_float,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_param_float);
+}
+
+void CreateModel_model_name_nchw_layout_act_w_as_param_float_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_param_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_param_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_act_w_as_param_float_relaxed) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_act_w_as_param_float_relaxed,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_param_float_relaxed,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_param_float_relaxed);
+}
+
+void CreateModel_model_name_nchw_layout_act_w_as_param_quantized(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_param_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_param_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_act_w_as_param_quantized) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_act_w_as_param_quantized,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_param_quantized,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_param_quantized);
+}
+
+void CreateModel_model_name_nchw_layout_act_w_as_input_float(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_input_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_input_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_act_w_as_input_float) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_act_w_as_input_float,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_input_float,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_input_float);
+}
+
+void CreateModel_model_name_nchw_layout_act_w_as_input_float_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_input_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_input_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_act_w_as_input_float_relaxed) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_act_w_as_input_float_relaxed,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_input_float_relaxed,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_input_float_relaxed);
+}
+
+void CreateModel_model_name_nchw_layout_act_w_as_input_quantized(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_input_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_input_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_act_w_as_input_quantized) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_act_w_as_input_quantized,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_input_quantized,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_input_quantized);
+}
+
+void CreateModel_model_name_nchw_layout_relu6_w_as_param_float(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_param_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_param_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_relu6_w_as_param_float) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_relu6_w_as_param_float,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_param_float,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_param_float);
+}
+
+void CreateModel_model_name_nchw_layout_relu6_w_as_param_float_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_param_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_param_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_relu6_w_as_param_float_relaxed) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_relu6_w_as_param_float_relaxed,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_param_float_relaxed,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_param_float_relaxed);
+}
+
+void CreateModel_model_name_nchw_layout_relu6_w_as_param_quantized(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_param_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_param_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_relu6_w_as_param_quantized) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_relu6_w_as_param_quantized,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_param_quantized,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_param_quantized);
+}
+
+void CreateModel_model_name_nchw_layout_relu6_w_as_input_float(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_input_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_input_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_relu6_w_as_input_float) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_relu6_w_as_input_float,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_input_float,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_input_float);
+}
+
+void CreateModel_model_name_nchw_layout_relu6_w_as_input_float_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_input_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_input_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_relu6_w_as_input_float_relaxed) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_relu6_w_as_input_float_relaxed,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_input_float_relaxed,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_input_float_relaxed);
+}
+
+void CreateModel_model_name_nchw_layout_relu6_w_as_input_quantized(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_input_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_input_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_model_name_example_name_nchw_layout_relu6_w_as_input_quantized) {
+ execute(conv_float::CreateModel_model_name_nchw_layout_relu6_w_as_input_quantized,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_input_quantized,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_input_quantized);
+}
+
+#include "../generated/tests/conv_float.mod.py.cpp"
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/conv_quant8.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/conv_quant8.mod.py
new file mode 100644
index 000000000..f6b3e89ca
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/conv_quant8.mod.py
@@ -0,0 +1,35 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 3, 3, 1}")
+f1 = Parameter("op2", "TENSOR_FLOAT32", "{1, 2, 2, 1}", [.25, .25, .25, .25])
+b1 = Parameter("op3", "TENSOR_FLOAT32", "{1}", [0])
+pad0 = Int32Scalar("pad0", 0)
+act = Int32Scalar("act", 0)
+stride = Int32Scalar("stride", 1)
+output = Output("op4", "TENSOR_FLOAT32", "{1, 2, 2, 1}")
+
+model = model.Operation("CONV_2D", i1, f1, b1, pad0, pad0, pad0, pad0, stride, stride, act).To(output)
+model = model.RelaxedExecution(True)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1.0, 1.0, 1.0, 1.0, 0.5, 1.0, 1.0, 1.0, 1.0]}
+
+output0 = {output: # output 0
+ [.875, .875, .875, .875]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/stderr.txt.expect
new file mode 100644
index 000000000..7ac2240b2
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/stderr.txt.expect
@@ -0,0 +1,3 @@
+Output CTS model: -
+Output example:-
+Output CTS test: -
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/stdout.txt.expect
new file mode 100644
index 000000000..e0195afb1
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_quant8/stdout.txt.expect
@@ -0,0 +1,85 @@
+// clang-format off
+// Generated file (from: conv_quant8.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_quant8.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_quant8.mod.py). Do not edit
+#include "../../TestGenerated.h"
+
+namespace conv_quant8 {
+// Generated conv_quant8 test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace conv_quant8
+
+void CreateModel(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 3, 3, 1});
+ OperandType type1(Type::TENSOR_FLOAT32, {1, 2, 2, 1});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto pad0 = model->addOperand(&type3);
+ auto stride = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type1);
+ // Phase 2, operations
+ static float op2_init[] = {0.25f, 0.25f, 0.25f, 0.25f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 4);
+ static float op3_init[] = {0.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t pad0_init[] = {0};
+ model->setOperandValue(pad0, pad0_init, sizeof(int32_t) * 1);
+ static int32_t stride_init[] = {1};
+ model->setOperandValue(stride, stride_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, pad0, pad0, pad0, pad0, stride, stride, act}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 0.5f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {0.875f, 0.875f, 0.875f, 0.875f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_quant8) {
+ execute(conv_quant8::CreateModel,
+ conv_quant8::is_ignored,
+ conv_quant8::examples);
+}
+
+#include "../generated/tests/conv_quant8.mod.py.cpp"
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/conv_float.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/conv_float.mod.py
new file mode 100644
index 000000000..c5ec8bf4e
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/conv_float.mod.py
@@ -0,0 +1,44 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+f1 = Parameter("op2", "TENSOR_FLOAT32", "{2, 2, 2, 2}", [1, 2, 3, 4, 5, 6, 7, 8, 8, 7, 6, 5, 4, 3, 2, 1])
+b1 = Parameter("op3", "TENSOR_FLOAT32", "{1}", [-200])
+output = Output("op4", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+act = Int32Scalar("act", 0) # None activation
+layout = Int32Scalar("layout", 0) # NHWC
+pad = Int32Scalar("param", 1)
+stride0 = Int32Scalar("param1", 1)
+stride1 = Int32Scalar("param2", 1)
+
+model = model.Operation("CONV_2D", i1, f1, b1, pad, stride0, stride1, act, layout).To(output)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1, 2, 3, 4, 5, 6, 7, 8]}
+
+output0 = {output: # output 0
+ [204, 120, 94, 104, 70, 164, 23, 112]}
+
+quant8 = DataTypeConverter().Identify({
+ i1: ("TENSOR_QUANT8_ASYMM", 0.5, 128),
+ f1: ("TENSOR_QUANT8_ASYMM", 0.25, 128),
+ b1: ("TENSOR_INT32", 0.125, 0),
+ output: ("TENSOR_QUANT8_ASYMM", 2, 100)
+})
+
+# Instantiate an example
+Example((input0, output0)).AddNchw(i1, f1, output, layout).AddAllActivations(
+ output, act).AddInput(f1).AddVariations(RelaxedModeConverter(True), quant8)
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/stderr.txt.expect
new file mode 100644
index 000000000..7ac2240b2
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/stderr.txt.expect
@@ -0,0 +1,3 @@
+Output CTS model: -
+Output example:-
+Output CTS test: -
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/stdout.txt.expect
new file mode 100644
index 000000000..87e74f722
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_variation/stdout.txt.expect
@@ -0,0 +1,3688 @@
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+#include "../../TestGenerated.h"
+
+namespace conv_float {
+// Generated conv_float test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace conv_float
+
+void CreateModel_none(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_none(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_none) {
+ execute(conv_float::CreateModel_none,
+ conv_float::is_ignored_none,
+ conv_float::examples_none);
+}
+
+void CreateModel_none_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_none_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_none_relaxed) {
+ execute(conv_float::CreateModel_none_relaxed,
+ conv_float::is_ignored_none_relaxed,
+ conv_float::examples_none_relaxed);
+}
+
+void CreateModel_none_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_none_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_none_quant8) {
+ execute(conv_float::CreateModel_none_quant8,
+ conv_float::is_ignored_none_quant8,
+ conv_float::examples_none_quant8);
+}
+
+void CreateModel_none_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_none_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_none_weight_as_input) {
+ execute(conv_float::CreateModel_none_weight_as_input,
+ conv_float::is_ignored_none_weight_as_input,
+ conv_float::examples_none_weight_as_input);
+}
+
+void CreateModel_none_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_none_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_none_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_none_weight_as_input_relaxed,
+ conv_float::is_ignored_none_weight_as_input_relaxed,
+ conv_float::examples_none_weight_as_input_relaxed);
+}
+
+void CreateModel_none_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_none_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_none_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_none_weight_as_input_quant8,
+ conv_float::is_ignored_none_weight_as_input_quant8,
+ conv_float::examples_none_weight_as_input_quant8);
+}
+
+void CreateModel_relu(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu) {
+ execute(conv_float::CreateModel_relu,
+ conv_float::is_ignored_relu,
+ conv_float::examples_relu);
+}
+
+void CreateModel_relu_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_relu_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu_relaxed) {
+ execute(conv_float::CreateModel_relu_relaxed,
+ conv_float::is_ignored_relu_relaxed,
+ conv_float::examples_relu_relaxed);
+}
+
+void CreateModel_relu_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu_quant8) {
+ execute(conv_float::CreateModel_relu_quant8,
+ conv_float::is_ignored_relu_quant8,
+ conv_float::examples_relu_quant8);
+}
+
+void CreateModel_relu_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu_weight_as_input) {
+ execute(conv_float::CreateModel_relu_weight_as_input,
+ conv_float::is_ignored_relu_weight_as_input,
+ conv_float::examples_relu_weight_as_input);
+}
+
+void CreateModel_relu_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_relu_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_relu_weight_as_input_relaxed,
+ conv_float::is_ignored_relu_weight_as_input_relaxed,
+ conv_float::examples_relu_weight_as_input_relaxed);
+}
+
+void CreateModel_relu_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_relu_weight_as_input_quant8,
+ conv_float::is_ignored_relu_weight_as_input_quant8,
+ conv_float::examples_relu_weight_as_input_quant8);
+}
+
+void CreateModel_relu1(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu1(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu1) {
+ execute(conv_float::CreateModel_relu1,
+ conv_float::is_ignored_relu1,
+ conv_float::examples_relu1);
+}
+
+void CreateModel_relu1_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_relu1_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu1_relaxed) {
+ execute(conv_float::CreateModel_relu1_relaxed,
+ conv_float::is_ignored_relu1_relaxed,
+ conv_float::examples_relu1_relaxed);
+}
+
+void CreateModel_relu1_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu1_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {100, 100, 100, 100, 100, 100, 100, 100}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu1_quant8) {
+ execute(conv_float::CreateModel_relu1_quant8,
+ conv_float::is_ignored_relu1_quant8,
+ conv_float::examples_relu1_quant8);
+}
+
+void CreateModel_relu1_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu1_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu1_weight_as_input) {
+ execute(conv_float::CreateModel_relu1_weight_as_input,
+ conv_float::is_ignored_relu1_weight_as_input,
+ conv_float::examples_relu1_weight_as_input);
+}
+
+void CreateModel_relu1_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_relu1_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu1_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_relu1_weight_as_input_relaxed,
+ conv_float::is_ignored_relu1_weight_as_input_relaxed,
+ conv_float::examples_relu1_weight_as_input_relaxed);
+}
+
+void CreateModel_relu1_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu1_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {100, 100, 100, 100, 100, 100, 100, 100}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu1_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_relu1_weight_as_input_quant8,
+ conv_float::is_ignored_relu1_weight_as_input_quant8,
+ conv_float::examples_relu1_weight_as_input_quant8);
+}
+
+void CreateModel_relu6(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6) {
+ execute(conv_float::CreateModel_relu6,
+ conv_float::is_ignored_relu6,
+ conv_float::examples_relu6);
+}
+
+void CreateModel_relu6_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6_relaxed) {
+ execute(conv_float::CreateModel_relu6_relaxed,
+ conv_float::is_ignored_relu6_relaxed,
+ conv_float::examples_relu6_relaxed);
+}
+
+void CreateModel_relu6_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6_quant8) {
+ execute(conv_float::CreateModel_relu6_quant8,
+ conv_float::is_ignored_relu6_quant8,
+ conv_float::examples_relu6_quant8);
+}
+
+void CreateModel_relu6_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6_weight_as_input) {
+ execute(conv_float::CreateModel_relu6_weight_as_input,
+ conv_float::is_ignored_relu6_weight_as_input,
+ conv_float::examples_relu6_weight_as_input);
+}
+
+void CreateModel_relu6_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_relu6_weight_as_input_relaxed,
+ conv_float::is_ignored_relu6_weight_as_input_relaxed,
+ conv_float::examples_relu6_weight_as_input_relaxed);
+}
+
+void CreateModel_relu6_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {0};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_relu6_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_relu6_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_relu6_weight_as_input_quant8,
+ conv_float::is_ignored_relu6_weight_as_input_quant8,
+ conv_float::examples_relu6_weight_as_input_quant8);
+}
+
+void CreateModel_nchw_none(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_none(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_none) {
+ execute(conv_float::CreateModel_nchw_none,
+ conv_float::is_ignored_nchw_none,
+ conv_float::examples_nchw_none);
+}
+
+void CreateModel_nchw_none_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_none_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_none_relaxed) {
+ execute(conv_float::CreateModel_nchw_none_relaxed,
+ conv_float::is_ignored_nchw_none_relaxed,
+ conv_float::examples_nchw_none_relaxed);
+}
+
+void CreateModel_nchw_none_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_none_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_none_quant8) {
+ execute(conv_float::CreateModel_nchw_none_quant8,
+ conv_float::is_ignored_nchw_none_quant8,
+ conv_float::examples_nchw_none_quant8);
+}
+
+void CreateModel_nchw_none_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_none_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_none_weight_as_input) {
+ execute(conv_float::CreateModel_nchw_none_weight_as_input,
+ conv_float::is_ignored_nchw_none_weight_as_input,
+ conv_float::examples_nchw_none_weight_as_input);
+}
+
+void CreateModel_nchw_none_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_none_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_none_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_nchw_none_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_none_weight_as_input_relaxed,
+ conv_float::examples_nchw_none_weight_as_input_relaxed);
+}
+
+void CreateModel_nchw_none_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {0};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_none_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_none_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_nchw_none_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_none_weight_as_input_quant8,
+ conv_float::examples_nchw_none_weight_as_input_quant8);
+}
+
+void CreateModel_nchw_relu(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu) {
+ execute(conv_float::CreateModel_nchw_relu,
+ conv_float::is_ignored_nchw_relu,
+ conv_float::examples_nchw_relu);
+}
+
+void CreateModel_nchw_relu_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu_relaxed) {
+ execute(conv_float::CreateModel_nchw_relu_relaxed,
+ conv_float::is_ignored_nchw_relu_relaxed,
+ conv_float::examples_nchw_relu_relaxed);
+}
+
+void CreateModel_nchw_relu_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu_quant8) {
+ execute(conv_float::CreateModel_nchw_relu_quant8,
+ conv_float::is_ignored_nchw_relu_quant8,
+ conv_float::examples_nchw_relu_quant8);
+}
+
+void CreateModel_nchw_relu_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu_weight_as_input) {
+ execute(conv_float::CreateModel_nchw_relu_weight_as_input,
+ conv_float::is_ignored_nchw_relu_weight_as_input,
+ conv_float::examples_nchw_relu_weight_as_input);
+}
+
+void CreateModel_nchw_relu_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_nchw_relu_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_relu_weight_as_input_relaxed,
+ conv_float::examples_nchw_relu_weight_as_input_relaxed);
+}
+
+void CreateModel_nchw_relu_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {1};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_nchw_relu_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_relu_weight_as_input_quant8,
+ conv_float::examples_nchw_relu_weight_as_input_quant8);
+}
+
+void CreateModel_nchw_relu1(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu1(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu1) {
+ execute(conv_float::CreateModel_nchw_relu1,
+ conv_float::is_ignored_nchw_relu1,
+ conv_float::examples_nchw_relu1);
+}
+
+void CreateModel_nchw_relu1_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu1_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu1_relaxed) {
+ execute(conv_float::CreateModel_nchw_relu1_relaxed,
+ conv_float::is_ignored_nchw_relu1_relaxed,
+ conv_float::examples_nchw_relu1_relaxed);
+}
+
+void CreateModel_nchw_relu1_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu1_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {100, 100, 100, 100, 100, 100, 100, 100}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu1_quant8) {
+ execute(conv_float::CreateModel_nchw_relu1_quant8,
+ conv_float::is_ignored_nchw_relu1_quant8,
+ conv_float::examples_nchw_relu1_quant8);
+}
+
+void CreateModel_nchw_relu1_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu1_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu1_weight_as_input) {
+ execute(conv_float::CreateModel_nchw_relu1_weight_as_input,
+ conv_float::is_ignored_nchw_relu1_weight_as_input,
+ conv_float::examples_nchw_relu1_weight_as_input);
+}
+
+void CreateModel_nchw_relu1_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu1_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu1_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_nchw_relu1_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_relu1_weight_as_input_relaxed,
+ conv_float::examples_nchw_relu1_weight_as_input_relaxed);
+}
+
+void CreateModel_nchw_relu1_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {2};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu1_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {100, 100, 100, 100, 100, 100, 100, 100}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu1_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_nchw_relu1_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_relu1_weight_as_input_quant8,
+ conv_float::examples_nchw_relu1_weight_as_input_quant8);
+}
+
+void CreateModel_nchw_relu6(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6) {
+ execute(conv_float::CreateModel_nchw_relu6,
+ conv_float::is_ignored_nchw_relu6,
+ conv_float::examples_nchw_relu6);
+}
+
+void CreateModel_nchw_relu6_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op2_init[] = {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f};
+ model->setOperandValue(op2, op2_init, sizeof(float) * 16);
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6_relaxed) {
+ execute(conv_float::CreateModel_nchw_relu6_relaxed,
+ conv_float::is_ignored_nchw_relu6_relaxed,
+ conv_float::examples_nchw_relu6_relaxed);
+}
+
+void CreateModel_nchw_relu6_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static uint8_t op2_init[] = {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132};
+ model->setOperandValue(op2, op2_init, sizeof(uint8_t) * 16);
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6_quant8) {
+ execute(conv_float::CreateModel_nchw_relu6_quant8,
+ conv_float::is_ignored_nchw_relu6_quant8,
+ conv_float::examples_nchw_relu6_quant8);
+}
+
+void CreateModel_nchw_relu6_weight_as_input(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6_weight_as_input) {
+ execute(conv_float::CreateModel_nchw_relu6_weight_as_input,
+ conv_float::is_ignored_nchw_relu6_weight_as_input,
+ conv_float::examples_nchw_relu6_weight_as_input);
+}
+
+void CreateModel_nchw_relu6_weight_as_input_relaxed(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type0);
+ auto op2 = model->addOperand(&type1);
+ auto op3 = model->addOperand(&type2);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type0);
+ // Phase 2, operations
+ static float op3_init[] = {-200.0f};
+ model->setOperandValue(op3, op3_init, sizeof(float) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ // Phase 4: set relaxed execution
+ model->relaxComputationFloat32toFloat16(true);
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6_weight_as_input_relaxed) {
+ execute(conv_float::CreateModel_nchw_relu6_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_relu6_weight_as_input_relaxed,
+ conv_float::examples_nchw_relu6_weight_as_input_relaxed);
+}
+
+void CreateModel_nchw_relu6_weight_as_input_quant8(Model *model) {
+ OperandType type0(Type::TENSOR_FLOAT32, {1, 2, 2, 2});
+ OperandType type1(Type::TENSOR_FLOAT32, {2, 2, 2, 2});
+ OperandType type2(Type::TENSOR_FLOAT32, {1});
+ OperandType type3(Type::INT32, {});
+ OperandType type4(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 0.5f, 128);
+ OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 2, 2, 2}, 0.25f, 128);
+ OperandType type6(Type::TENSOR_INT32, {1}, 0.125f, 0);
+ OperandType type7(Type::TENSOR_QUANT8_ASYMM, {1, 2, 2, 2}, 2.0f, 100);
+ // Phase 1, operands
+ auto op1 = model->addOperand(&type4);
+ auto op2 = model->addOperand(&type5);
+ auto op3 = model->addOperand(&type6);
+ auto param = model->addOperand(&type3);
+ auto param1 = model->addOperand(&type3);
+ auto param2 = model->addOperand(&type3);
+ auto act = model->addOperand(&type3);
+ auto layout = model->addOperand(&type3);
+ auto op4 = model->addOperand(&type7);
+ // Phase 2, operations
+ static int32_t op3_init[] = {-1600};
+ model->setOperandValue(op3, op3_init, sizeof(int32_t) * 1);
+ static int32_t param_init[] = {1};
+ model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
+ static int32_t param1_init[] = {1};
+ model->setOperandValue(param1, param1_init, sizeof(int32_t) * 1);
+ static int32_t param2_init[] = {1};
+ model->setOperandValue(param2, param2_init, sizeof(int32_t) * 1);
+ static int32_t act_init[] = {3};
+ model->setOperandValue(act, act_init, sizeof(int32_t) * 1);
+ static int32_t layout_init[] = {1};
+ model->setOperandValue(layout, layout_init, sizeof(int32_t) * 1);
+ model->addOperation(ANEURALNETWORKS_CONV_2D, {op1, op2, op3, param, param1, param2, act, layout}, {op4});
+ // Phase 3, inputs and outputs
+ model->identifyInputsAndOutputs(
+ {op1, op2},
+ {op4});
+ assert(model->isValid());
+}
+
+bool is_ignored_nchw_relu6_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(GeneratedTests, conv_float_nchw_relu6_weight_as_input_quant8) {
+ execute(conv_float::CreateModel_nchw_relu6_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_relu6_weight_as_input_quant8,
+ conv_float::examples_nchw_relu6_weight_as_input_quant8);
+}
+
+#include "../generated/tests/conv_float.mod.py.cpp"
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/lstm_float.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/lstm_float.mod.py
new file mode 100644
index 000000000..60eec8280
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/lstm_float.mod.py
@@ -0,0 +1,145 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+
+n_batch = 1
+n_input = 2
+# n_cell and n_output have the same size when there is no projection.
+n_cell = 4
+n_output = 4
+
+input = Input("input", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_input))
+
+input_to_input_weights = Input("input_to_input_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+input_to_forget_weights = Input("input_to_forget_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+input_to_cell_weights = Input("input_to_cell_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+input_to_output_weights = Input("input_to_output_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_input))
+
+recurrent_to_input_weights = Input("recurrent_to_intput_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+recurrent_to_forget_weights = Input("recurrent_to_forget_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+recurrent_to_cell_weights = Input("recurrent_to_cell_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+recurrent_to_output_weights = Input("recurrent_to_output_weights", "TENSOR_FLOAT32", "{%d, %d}" % (n_cell, n_output))
+
+cell_to_input_weights = Input("cell_to_input_weights", "TENSOR_FLOAT32", "{0}")
+cell_to_forget_weights = Input("cell_to_forget_weights", "TENSOR_FLOAT32", "{0}")
+cell_to_output_weights = Input("cell_to_output_weights", "TENSOR_FLOAT32", "{0}")
+
+input_gate_bias = Input("input_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+forget_gate_bias = Input("forget_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+cell_gate_bias = Input("cell_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+output_gate_bias = Input("output_gate_bias", "TENSOR_FLOAT32", "{%d}"%(n_cell))
+
+projection_weights = Input("projection_weights", "TENSOR_FLOAT32", "{0,0}")
+projection_bias = Input("projection_bias", "TENSOR_FLOAT32", "{0}")
+
+output_state_in = Input("output_state_in", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
+cell_state_in = Input("cell_state_in", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_cell))
+
+activation_param = Int32Scalar("activation_param", 4) # Tanh
+cell_clip_param = Float32Scalar("cell_clip_param", 0.)
+proj_clip_param = Float32Scalar("proj_clip_param", 0.)
+
+scratch_buffer = IgnoredOutput("scratch_buffer", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, (n_cell * 4)))
+output_state_out = Output("output_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
+cell_state_out = Output("cell_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_cell))
+output = Output("output", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
+
+model = model.Operation("LSTM",
+ input,
+
+ input_to_input_weights,
+ input_to_forget_weights,
+ input_to_cell_weights,
+ input_to_output_weights,
+
+ recurrent_to_input_weights,
+ recurrent_to_forget_weights,
+ recurrent_to_cell_weights,
+ recurrent_to_output_weights,
+
+ cell_to_input_weights,
+ cell_to_forget_weights,
+ cell_to_output_weights,
+
+ input_gate_bias,
+ forget_gate_bias,
+ cell_gate_bias,
+ output_gate_bias,
+
+ projection_weights,
+ projection_bias,
+
+ output_state_in,
+ cell_state_in,
+
+ activation_param,
+ cell_clip_param,
+ proj_clip_param
+).To([scratch_buffer, output_state_out, cell_state_out, output])
+model = model.RelaxedExecution(True)
+
+# Example 1. Input in operand 0,
+input0 = {input_to_input_weights: [-0.45018822, -0.02338299, -0.0870589, -0.34550029, 0.04266912, -0.15680569, -0.34856534, 0.43890524],
+ input_to_forget_weights: [0.09701663, 0.20334584, -0.50592935, -0.31343272, -0.40032279, 0.44781327, 0.01387155, -0.35593212],
+ input_to_cell_weights: [-0.50013041, 0.1370284, 0.11810488, 0.2013163, -0.20583314, 0.44344562, 0.22077113, -0.29909778],
+ input_to_output_weights: [-0.25065863, -0.28290087, 0.04613829, 0.40525138, 0.44272184, 0.03897077, -0.1556896, 0.19487578],
+
+ input_gate_bias: [0.,0.,0.,0.],
+ forget_gate_bias: [1.,1.,1.,1.],
+ cell_gate_bias: [0.,0.,0.,0.],
+ output_gate_bias: [0.,0.,0.,0.],
+
+ recurrent_to_input_weights: [
+ -0.0063535, -0.2042388, 0.31454784, -0.35746509, 0.28902304, 0.08183324,
+ -0.16555229, 0.02286911, -0.13566875, 0.03034258, 0.48091322,
+ -0.12528998, 0.24077177, -0.51332325, -0.33502164, 0.10629296],
+
+ recurrent_to_cell_weights: [
+ -0.3407414, 0.24443203, -0.2078532, 0.26320225, 0.05695659, -0.00123841,
+ -0.4744786, -0.35869038, -0.06418842, -0.13502428, -0.501764, 0.22830659,
+ -0.46367589, 0.26016325, -0.03894562, -0.16368064],
+
+ recurrent_to_forget_weights: [
+ -0.48684245, -0.06655136, 0.42224967, 0.2112639, 0.27654213, 0.20864892,
+ -0.07646349, 0.45877004, 0.00141793, -0.14609534, 0.36447752, 0.09196436,
+ 0.28053468, 0.01560611, -0.20127171, -0.01140004],
+
+ recurrent_to_output_weights: [
+ 0.43385774, -0.17194885, 0.2718237, 0.09215671, 0.24107647, -0.39835793,
+ 0.18212086, 0.01301402, 0.48572797, -0.50656658, 0.20047462, -0.20607421,
+ -0.51818722, -0.15390486, 0.0468148, 0.39922136],
+
+ cell_to_input_weights: [],
+ cell_to_forget_weights: [],
+ cell_to_output_weights: [],
+
+ projection_weights: [],
+ projection_bias: [],
+}
+
+test_input = [2., 3.]
+output_state = [0, 0, 0, 0]
+cell_state = [0, 0, 0, 0]
+golden_output = [-0.02973187, 0.1229473, 0.20885126, -0.15358765,]
+output0 = {
+ scratch_buffer: [ 0 for x in range(n_batch * n_cell * 4) ],
+ cell_state_out: [ -0.145439, 0.157475, 0.293663, -0.277353 ],
+ output_state_out: [ -0.0297319, 0.122947, 0.208851, -0.153588 ],
+ output: golden_output
+}
+input0[input] = test_input
+input0[output_state_in] = output_state
+input0[cell_state_in] = cell_state
+Example((input0, output0))
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/stderr.txt.expect
new file mode 100644
index 000000000..3decb4c1c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output VTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/stdout.txt.expect
new file mode 100644
index 000000000..4ac72618c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_float/stdout.txt.expect
@@ -0,0 +1,322 @@
+// clang-format off
+// Generated file (from: lstm_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: lstm_float.mod.py). Do not edit
+// Generated from: lstm_float.mod.py.
+namespace lstm_float {
+// Generated lstm_float test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace lstm_float
+
+// Create the model
+Model createTestModel() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4, 4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4, 4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4, 4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4, 4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {0},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {0},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {0},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {0, 0},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {0},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 4},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::FLOAT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::FLOAT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 16},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 4},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 4},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 4},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::LSTM,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22},
+ .outputs = {23, 24, 25, 26},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19};
+ const std::vector<uint32_t> outputIndexes = {23, 24, 25, 26};
+ std::vector<uint8_t> operandValues = {
+ 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {0};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {2.0f, 3.0f}}, {1, {-0.45018822f, -0.02338299f, -0.0870589f, -0.34550029f, 0.04266912f, -0.15680569f, -0.34856534f, 0.43890524f}}, {2, {0.09701663f, 0.20334584f, -0.50592935f, -0.31343272f, -0.40032279f, 0.44781327f, 0.01387155f, -0.35593212f}}, {3, {-0.50013041f, 0.1370284f, 0.11810488f, 0.2013163f, -0.20583314f, 0.44344562f, 0.22077113f, -0.29909778f}}, {4, {-0.25065863f, -0.28290087f, 0.04613829f, 0.40525138f, 0.44272184f, 0.03897077f, -0.1556896f, 0.19487578f}}, {5, {-0.0063535f, -0.2042388f, 0.31454784f, -0.35746509f, 0.28902304f, 0.08183324f, -0.16555229f, 0.02286911f, -0.13566875f, 0.03034258f, 0.48091322f, -0.12528998f, 0.24077177f, -0.51332325f, -0.33502164f, 0.10629296f}}, {6, {-0.48684245f, -0.06655136f, 0.42224967f, 0.2112639f, 0.27654213f, 0.20864892f, -0.07646349f, 0.45877004f, 0.00141793f, -0.14609534f, 0.36447752f, 0.09196436f, 0.28053468f, 0.01560611f, -0.20127171f, -0.01140004f}}, {7, {-0.3407414f, 0.24443203f, -0.2078532f, 0.26320225f, 0.05695659f, -0.00123841f, -0.4744786f, -0.35869038f, -0.06418842f, -0.13502428f, -0.501764f, 0.22830659f, -0.46367589f, 0.26016325f, -0.03894562f, -0.16368064f}}, {8, {0.43385774f, -0.17194885f, 0.2718237f, 0.09215671f, 0.24107647f, -0.39835793f, 0.18212086f, 0.01301402f, 0.48572797f, -0.50656658f, 0.20047462f, -0.20607421f, -0.51818722f, -0.15390486f, 0.0468148f, 0.39922136f}}, {9, {}}, {10, {}}, {11, {}}, {12, {0.0f, 0.0f, 0.0f, 0.0f}}, {13, {1.0f, 1.0f, 1.0f, 1.0f}}, {14, {0.0f, 0.0f, 0.0f, 0.0f}}, {15, {0.0f, 0.0f, 0.0f, 0.0f}}, {16, {}}, {17, {}}, {18, {0.0f, 0.0f, 0.0f, 0.0f}}, {19, {0.0f, 0.0f, 0.0f, 0.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}}, {1, {-0.0297319f, 0.122947f, 0.208851f, -0.153588f}}, {2, {-0.145439f, 0.157475f, 0.293663f, -0.277353f}}, {3, {-0.02973187f, 0.1229473f, 0.20885126f, -0.15358765f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, lstm_float) {
+ generated_tests::Execute(device,
+ lstm_float::createTestModel,
+ lstm_float::is_ignored,
+ lstm_float::examples);
+}
+
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/depthwise_conv2d_quant8.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/depthwise_conv2d_quant8.mod.py
new file mode 100644
index 000000000..051780877
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/depthwise_conv2d_quant8.mod.py
@@ -0,0 +1,43 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+i1 = Input("op1", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 2}, 0.5f, 0")
+f1 = Input("op2", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 2}, 0.5f, 0")
+b1 = Input("op3", "TENSOR_INT32", "{2}, 0.25f, 0")
+pad0 = Int32Scalar("pad0", 0)
+act = Int32Scalar("act", 0)
+stride = Int32Scalar("stride", 1)
+cm = Int32Scalar("channelMultiplier", 1)
+output = Output("op4", "TENSOR_QUANT8_ASYMM", "{1,1,1,2}, 1.f, 0")
+
+model = model.Operation("DEPTHWISE_CONV_2D",
+ i1, f1, b1,
+ pad0, pad0, pad0, pad0,
+ stride, stride,
+ cm, act).To(output)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [4, 16, 4, 32, 4, 64, 4, 128],
+ f1:
+ [2, 4, 2, 0, 2, 2, 2, 0],
+ b1:
+ [0, 0]}
+# (i1 (depthconv) f1)
+output0 = {output: # output 0
+ [8, 48]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/stderr.txt.expect
new file mode 100644
index 000000000..3decb4c1c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output VTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/stdout.txt.expect
new file mode 100644
index 000000000..760430798
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_backward_compatibility_quant8/stdout.txt.expect
@@ -0,0 +1,150 @@
+// clang-format off
+// Generated file (from: depthwise_conv2d_quant8.mod.py). Do not edit
+// clang-format off
+// Generated file (from: depthwise_conv2d_quant8.mod.py). Do not edit
+// Generated from: depthwise_conv2d_quant8.mod.py.
+namespace depthwise_conv2d_quant8 {
+// Generated depthwise_conv2d_quant8 test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace depthwise_conv2d_quant8
+
+// Create the model
+Model createTestModel() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 4,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 2,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 1, 1, 2},
+ .numberOfConsumers = 0,
+ .scale = 1.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::DEPTHWISE_CONV_2D,
+ .inputs = {0, 1, 2, 3, 3, 3, 3, 4, 4, 5, 6},
+ .outputs = {7},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1, 2};
+ const std::vector<uint32_t> outputIndexes = {7};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {{2, {0, 0}}},
+ // int -> QUANT8_ASYMM map
+ {{0, {4, 16, 4, 32, 4, 64, 4, 128}}, {1, {2, 4, 2, 0, 2, 2, 2, 0}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {8, 48}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, depthwise_conv2d_quant8) {
+ generated_tests::Execute(device,
+ depthwise_conv2d_quant8::createTestModel,
+ depthwise_conv2d_quant8::is_ignored,
+ depthwise_conv2d_quant8::examples);
+}
+
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/conv_float.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/conv_float.mod.py
new file mode 100644
index 000000000..f6b3e89ca
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/conv_float.mod.py
@@ -0,0 +1,35 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 3, 3, 1}")
+f1 = Parameter("op2", "TENSOR_FLOAT32", "{1, 2, 2, 1}", [.25, .25, .25, .25])
+b1 = Parameter("op3", "TENSOR_FLOAT32", "{1}", [0])
+pad0 = Int32Scalar("pad0", 0)
+act = Int32Scalar("act", 0)
+stride = Int32Scalar("stride", 1)
+output = Output("op4", "TENSOR_FLOAT32", "{1, 2, 2, 1}")
+
+model = model.Operation("CONV_2D", i1, f1, b1, pad0, pad0, pad0, pad0, stride, stride, act).To(output)
+model = model.RelaxedExecution(True)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1.0, 1.0, 1.0, 1.0, 0.5, 1.0, 1.0, 1.0, 1.0]}
+
+output0 = {output: # output 0
+ [.875, .875, .875, .875]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/stderr.txt.expect
new file mode 100644
index 000000000..3decb4c1c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output VTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/stdout.txt.expect
new file mode 100644
index 000000000..ad54e14e2
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_float/stdout.txt.expect
@@ -0,0 +1,142 @@
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// Generated from: conv_float.mod.py.
+namespace conv_float {
+// Generated conv_float test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace conv_float
+
+// Create the model
+Model createTestModel() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 3, 3, 1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 4,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 2,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 1},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 3, 3, 3, 4, 4, 5},
+ .outputs = {6},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {6};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 62, 0, 0, 128, 62, 0, 0, 128, 62, 0, 0, 128, 62, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 0.5f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {0.875f, 0.875f, 0.875f, 0.875f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel,
+ conv_float::is_ignored,
+ conv_float::examples);
+}
+
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/mean_implicit.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/mean_implicit.mod.py
new file mode 100644
index 000000000..be7b22bdb
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/mean_implicit.mod.py
@@ -0,0 +1,41 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+i0 = Input("i0", ("TENSOR_FLOAT32", [2, 2])) # input 0
+
+o1 = Output("o1", ("TENSOR_FLOAT32", [1, 2])) # output for model1
+o2 = Output("o2", ("TENSOR_FLOAT32", [2, 1])) # output for model2
+o3 = Output("o3", ("TENSOR_FLOAT32", [1])) # output for model3
+
+model1 = Model().Operation("MEAN", i0, [0], 1).To(o1) # along axis 0, keep_dim=True
+model2 = Model().Operation("MEAN", i0, [1], 1).To(o2) # along axis 1, keep_dim=True
+model3 = Model().Operation("MEAN", i0, [0, 1], 0).To(o3) # along both axis, keep_dim=False
+
+inputs1 = {i0: [1, 2, 3, 4]}
+outputs11 = {o1: [4, 6]}
+outputs12 = {o2: [3, 7]}
+outputs13 = {o3: [10]}
+
+inputs2 = {i0: [-1, -2, -3, -4]}
+outputs21 = {o1: [-4, -6]}
+outputs22 = {o2: [-3, -7]}
+outputs23 = {o3: [-10]}
+
+Example((inputs1, outputs11), model=model1)
+Example((inputs1, outputs12), model=model2)
+Example((inputs1, outputs13), model=model3)
+
+Example((inputs2, outputs21), model=model1)
+Example((inputs2, outputs22), model=model2)
+Example((inputs2, outputs23), model=model3)
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/stderr.txt.expect
new file mode 100644
index 000000000..3decb4c1c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output VTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/stdout.txt.expect
new file mode 100644
index 000000000..f996d8470
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_parameter/stdout.txt.expect
@@ -0,0 +1,381 @@
+// clang-format off
+// Generated file (from: mean_implicit.mod.py). Do not edit
+// clang-format off
+// Generated file (from: mean_implicit.mod.py). Do not edit
+// Generated from: mean_implicit.mod.py.
+namespace mean_implicit {
+// Generated mean_implicit test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace mean_implicit
+
+// Create the model
+Model createTestModel() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2},
+ .numberOfConsumers = 3,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::MEAN,
+ .inputs = {0, 1, 2},
+ .outputs = {3},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {3};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {4.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-1.0f, -2.0f, -3.0f, -4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-4.0f, -6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, mean_implicit) {
+ generated_tests::Execute(device,
+ mean_implicit::createTestModel,
+ mean_implicit::is_ignored,
+ mean_implicit::examples);
+}
+
+// Create the model
+Model createTestModel_2() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2},
+ .numberOfConsumers = 3,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 1},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::MEAN,
+ .inputs = {0, 1, 2},
+ .outputs = {3},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {3};
+ std::vector<uint8_t> operandValues = {
+ 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_2(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_2 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {3.0f, 7.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-1.0f, -2.0f, -3.0f, -4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-3.0f, -7.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, mean_implicit_2) {
+ generated_tests::Execute(device,
+ mean_implicit::createTestModel_2,
+ mean_implicit::is_ignored_2,
+ mean_implicit::examples_2);
+}
+
+// Create the model
+Model createTestModel_3() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2},
+ .numberOfConsumers = 3,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 8},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::MEAN,
+ .inputs = {0, 1, 2},
+ .outputs = {3},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {3};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_3(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_3 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {10.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-1.0f, -2.0f, -3.0f, -4.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {-10.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, mean_implicit_3) {
+ generated_tests::Execute(device,
+ mean_implicit::createTestModel_3,
+ mean_implicit::is_ignored_3,
+ mean_implicit::examples_3);
+}
+
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/conv_float.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/conv_float.mod.py
new file mode 100644
index 000000000..826f390c0
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/conv_float.mod.py
@@ -0,0 +1,52 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+f1 = Parameter("op2", "TENSOR_FLOAT32", "{2, 2, 2, 2}", [1, 2, 3, 4, 5, 6, 7, 8, 8, 7, 6, 5, 4, 3, 2, 1])
+b1 = Parameter("op3", "TENSOR_FLOAT32", "{1}", [-200])
+output = Output("op4", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+act = Int32Scalar("act", 0) # None activation
+layout = Int32Scalar("layout", 0) # NHWC
+
+model = model.Operation("CONV_2D", i1, f1, b1, 1, 1, 1, act, layout).To(output)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1, 2, 3, 4, 5, 6, 7, 8]}
+
+output0 = {output: # output 0
+ [204, 120, 94, 104, 70, 164, 23, 112]}
+
+quant8 = DataTypeConverter().Identify({
+ i1: ("TENSOR_QUANT8_ASYMM", 0.5, 128),
+ f1: ("TENSOR_QUANT8_ASYMM", 0.25, 128),
+ b1: ("TENSOR_INT32", 0.125, 0),
+ output: ("TENSOR_QUANT8_ASYMM", 2, 100)
+})
+
+# Instantiate an example
+Example(
+ (input0, output0)
+).AddVariations(
+ ("NCHW", [i1, f1, output], [layout])
+).AddVariations(
+ ("relu", [output], [act]),
+ ("relu6", [output], [act]),
+ includeDefault=False
+).AddVariations(
+ ("as_input", [f1])
+).AddVariations(
+ "relaxed", quant8
+)
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/stderr.txt.expect
new file mode 100644
index 000000000..3decb4c1c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output VTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/stdout.txt.expect
new file mode 100644
index 000000000..7e100da9b
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_implicit_variation/stdout.txt.expect
@@ -0,0 +1,3548 @@
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// Generated from: conv_float.mod.py.
+namespace conv_float {
+// Generated conv_float test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace conv_float
+
+// Create the model
+Model createTestModel_relu() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu,
+ conv_float::is_ignored_relu,
+ conv_float::examples_relu);
+}
+
+// Create the model
+Model createTestModel_relu_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_relu_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu_relaxed,
+ conv_float::is_ignored_relu_relaxed,
+ conv_float::examples_relu_relaxed);
+}
+
+// Create the model
+Model createTestModel_relu_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu_quant8,
+ conv_float::is_ignored_relu_quant8,
+ conv_float::examples_relu_quant8);
+}
+
+// Create the model
+Model createTestModel_relu_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu_weight_as_input,
+ conv_float::is_ignored_relu_weight_as_input,
+ conv_float::examples_relu_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_relu_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_relu_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu_weight_as_input_relaxed,
+ conv_float::is_ignored_relu_weight_as_input_relaxed,
+ conv_float::examples_relu_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_relu_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu_weight_as_input_quant8,
+ conv_float::is_ignored_relu_weight_as_input_quant8,
+ conv_float::examples_relu_weight_as_input_quant8);
+}
+
+// Create the model
+Model createTestModel_relu6() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu6(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6,
+ conv_float::is_ignored_relu6,
+ conv_float::examples_relu6);
+}
+
+// Create the model
+Model createTestModel_relu6_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_relu6_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6_relaxed,
+ conv_float::is_ignored_relu6_relaxed,
+ conv_float::examples_relu6_relaxed);
+}
+
+// Create the model
+Model createTestModel_relu6_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu6_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6_quant8,
+ conv_float::is_ignored_relu6_quant8,
+ conv_float::examples_relu6_quant8);
+}
+
+// Create the model
+Model createTestModel_relu6_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu6_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6_weight_as_input,
+ conv_float::is_ignored_relu6_weight_as_input,
+ conv_float::examples_relu6_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_relu6_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_relu6_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6_weight_as_input_relaxed,
+ conv_float::is_ignored_relu6_weight_as_input_relaxed,
+ conv_float::examples_relu6_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_relu6_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu6_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6_weight_as_input_quant8,
+ conv_float::is_ignored_relu6_weight_as_input_quant8,
+ conv_float::examples_relu6_weight_as_input_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_relu() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu,
+ conv_float::is_ignored_nchw_relu,
+ conv_float::examples_nchw_relu);
+}
+
+// Create the model
+Model createTestModel_nchw_relu_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_relu_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu_relaxed,
+ conv_float::is_ignored_nchw_relu_relaxed,
+ conv_float::examples_nchw_relu_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_relu_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu_quant8,
+ conv_float::is_ignored_nchw_relu_quant8,
+ conv_float::examples_nchw_relu_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_relu_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu_weight_as_input,
+ conv_float::is_ignored_nchw_relu_weight_as_input,
+ conv_float::examples_nchw_relu_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_nchw_relu_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_relu_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_relu_weight_as_input_relaxed,
+ conv_float::examples_nchw_relu_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_relu_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_relu_weight_as_input_quant8,
+ conv_float::examples_nchw_relu_weight_as_input_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu6(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6,
+ conv_float::is_ignored_nchw_relu6,
+ conv_float::examples_nchw_relu6);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_relu6_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6_relaxed,
+ conv_float::is_ignored_nchw_relu6_relaxed,
+ conv_float::examples_nchw_relu6_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu6_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6_quant8,
+ conv_float::is_ignored_nchw_relu6_quant8,
+ conv_float::examples_nchw_relu6_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu6_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6_weight_as_input,
+ conv_float::is_ignored_nchw_relu6_weight_as_input,
+ conv_float::examples_nchw_relu6_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_relu6_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_relu6_weight_as_input_relaxed,
+ conv_float::examples_nchw_relu6_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu6_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_relu6_weight_as_input_quant8,
+ conv_float::examples_nchw_relu6_weight_as_input_quant8);
+}
+
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/add_internal.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/add_internal.mod.py
new file mode 100644
index 000000000..28c4afc52
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/add_internal.mod.py
@@ -0,0 +1,71 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+
+i0 = Input("i0", ("TENSOR_FLOAT32", [2])) # input 0
+i1 = Input("i1", ("TENSOR_FLOAT32", [2])) # input 0
+i2 = Input("i2", ("TENSOR_FLOAT32", [2])) # input 0
+i3 = Input("i3", ("TENSOR_FLOAT32", [2])) # input 0
+i4 = Input("i4", ("TENSOR_FLOAT32", [2])) # input 0
+i5 = Input("i5", ("TENSOR_FLOAT32", [2])) # input 0
+i6 = Input("i6", ("TENSOR_FLOAT32", [2])) # input 0
+i7 = Input("i7", ("TENSOR_FLOAT32", [2])) # input 0
+i8 = Input("i8", ("TENSOR_FLOAT32", [2])) # input 0
+
+t0 = Internal("t0", ("TENSOR_FLOAT32", [2]))
+t1 = Internal("t1", ("TENSOR_FLOAT32", [2]))
+t2 = Internal("t2", ("TENSOR_FLOAT32", [2]))
+t3 = Internal("t3", ("TENSOR_FLOAT32", [2]))
+t4 = Internal("t4", ("TENSOR_FLOAT32", [2]))
+t5 = Internal("t5", ("TENSOR_FLOAT32", [2]))
+t6 = Internal("t6", ("TENSOR_FLOAT32", [2]))
+
+o0 = Output("o0", ("TENSOR_FLOAT32", [2]))
+o1 = Output("o1", ("TENSOR_FLOAT32", [2]))
+o2 = Output("o2", ("TENSOR_FLOAT32", [2]))
+
+p0 = Parameter("p0", ("TENSOR_FLOAT32", [2]), [0.0, 1.0])
+act = Int32Scalar("act", 0)
+
+model.Operation("ADD", o0, o1, act).To(o2)
+model.Operation("ADD", p0, t5, act).To(t6)
+model.Operation("ADD", i2, t0, act).To(t1)
+model.Operation("ADD", i6, p0, act).To(t5)
+model.Operation("ADD", i0, i1, act).To(t0)
+model.Operation("ADD", t1, t3, act).To(t4)
+model.Operation("ADD", t2, i5, act).To(t3)
+model.Operation("ADD", t4, t6, act).To(o0)
+model.Operation("ADD", i3, i4, act).To(t2)
+model.Operation("ADD", i7, i8, act).To(o1)
+
+inputs = {
+ i0: [0, 0],
+ i1: [0, 0],
+ i2: [0, 0],
+ i3: [0, 0],
+ i4: [0, 0],
+ i5: [0, 0],
+ i6: [0, 0],
+ i7: [0, 0],
+ i8: [0, 0]
+}
+
+outputs = {
+ o0: [0, 2],
+ o1: [0, 0],
+ o2: [0, 2]
+}
+
+Example((inputs, outputs))
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/stderr.txt.expect
new file mode 100644
index 000000000..3decb4c1c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output VTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/stdout.txt.expect
new file mode 100644
index 000000000..c656504a1
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_internal/stdout.txt.expect
@@ -0,0 +1,312 @@
+// clang-format off
+// Generated file (from: add_internal.mod.py). Do not edit
+// clang-format off
+// Generated file (from: add_internal.mod.py). Do not edit
+// Generated from: add_internal.mod.py.
+namespace add_internal {
+// Generated add_internal test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace add_internal
+
+// Create the model
+Model createTestModel() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 10,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 2,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 8},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::TEMPORARY_VARIABLE,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::TEMPORARY_VARIABLE,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::TEMPORARY_VARIABLE,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::TEMPORARY_VARIABLE,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::TEMPORARY_VARIABLE,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::TEMPORARY_VARIABLE,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::TEMPORARY_VARIABLE,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::ADD,
+ .inputs = {10, 4, 2},
+ .outputs = {5},
+ },
+ {
+ .type = OperationType::ADD,
+ .inputs = {4, 5, 2},
+ .outputs = {6},
+ },
+ {
+ .type = OperationType::ADD,
+ .inputs = {11, 12, 2},
+ .outputs = {8},
+ },
+ {
+ .type = OperationType::ADD,
+ .inputs = {7, 8, 2},
+ .outputs = {9},
+ },
+ {
+ .type = OperationType::ADD,
+ .inputs = {17, 18, 2},
+ .outputs = {15},
+ },
+ {
+ .type = OperationType::ADD,
+ .inputs = {15, 16, 2},
+ .outputs = {13},
+ },
+ {
+ .type = OperationType::ADD,
+ .inputs = {9, 13, 2},
+ .outputs = {14},
+ },
+ {
+ .type = OperationType::ADD,
+ .inputs = {14, 6, 2},
+ .outputs = {0},
+ },
+ {
+ .type = OperationType::ADD,
+ .inputs = {19, 20, 2},
+ .outputs = {1},
+ },
+ {
+ .type = OperationType::ADD,
+ .inputs = {0, 1, 2},
+ .outputs = {3},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {7, 10, 11, 12, 16, 17, 18, 19, 20};
+ const std::vector<uint32_t> outputIndexes = {0, 1, 3};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 63
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {0.0f, 0.0f}}, {1, {0.0f, 0.0f}}, {2, {0.0f, 0.0f}}, {3, {0.0f, 0.0f}}, {4, {0.0f, 0.0f}}, {5, {0.0f, 0.0f}}, {6, {0.0f, 0.0f}}, {7, {0.0f, 0.0f}}, {8, {0.0f, 0.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {0.0f, 2.0f}}, {1, {0.0f, 0.0f}}, {2, {0.0f, 2.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, add_internal) {
+ generated_tests::Execute(device,
+ add_internal::createTestModel,
+ add_internal::is_ignored,
+ add_internal::examples);
+}
+
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/conv_float.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/conv_float.mod.py
new file mode 100644
index 000000000..61f7c92ee
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/conv_float.mod.py
@@ -0,0 +1,61 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model("model_name")
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+f1 = Parameter("op2", "TENSOR_FLOAT32", "{2, 2, 2, 2}", [1, 2, 3, 4, 5, 6, 7, 8, 8, 7, 6, 5, 4, 3, 2, 1])
+b1 = Parameter("op3", "TENSOR_FLOAT32", "{1}", [-200])
+output = Output("op4", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+act = Int32Scalar("act", 0) # None activation
+layout = Int32Scalar("layout", 0) # NHWC
+pad = Int32Scalar("param", 1)
+stride0 = Int32Scalar("param1", 1)
+stride1 = Int32Scalar("param2", 1)
+
+model = model.Operation("CONV_2D", i1, f1, b1, pad, stride0, stride1, act, layout).To(output)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1, 2, 3, 4, 5, 6, 7, 8]}
+
+output0 = {output: # output 0
+ [204, 120, 94, 104, 70, 164, 23, 112]}
+
+quant8 = DataTypeConverter(name="quantized").Identify({
+ i1: ("TENSOR_QUANT8_ASYMM", 0.5, 128),
+ f1: ("TENSOR_QUANT8_ASYMM", 0.25, 128),
+ b1: ("TENSOR_INT32", 0.125, 0),
+ output: ("TENSOR_QUANT8_ASYMM", 2, 100)
+})
+nchw = DataLayoutConverter("NCHW", name="nchw_layout").Identify([i1, f1, output], [layout])
+relu = ActivationConverter("relu", name="act").Identify([output], [act])
+relu6 = ActivationConverter("relu6").Identify([output], [act])
+weight_as_input = ParameterAsInputConverter(name="w_as_input").Identify([f1])
+relax = RelaxedModeConverter(True, name="float_relaxed")
+
+# Instantiate an example
+# Will produce cartesian product of
+# [nhwc, nchw_layout] * [act, relu6] * [w_as_param, w_as_input] * [float, float_relaxed, quantized]
+# 24 variations
+Example(
+ (input0, output0), name="example_name"
+).AddVariations(
+ nchw, defaultName="nhwc"
+).AddVariations(
+ relu, relu6, includeDefault=False
+).AddVariations(
+ weight_as_input, defaultName="w_as_param"
+).AddVariations(
+ relax, quant8, defaultName="float"
+)
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/stderr.txt.expect
new file mode 100644
index 000000000..3decb4c1c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output VTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/stdout.txt.expect
new file mode 100644
index 000000000..892700036
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_naming/stdout.txt.expect
@@ -0,0 +1,3548 @@
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// Generated from: conv_float.mod.py.
+namespace conv_float {
+// Generated conv_float test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace conv_float
+
+// Create the model
+Model createTestModel_model_name_nhwc_act_w_as_param_float() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_param_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_param_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_act_w_as_param_float) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_act_w_as_param_float,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_param_float,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_param_float);
+}
+
+// Create the model
+Model createTestModel_model_name_nhwc_act_w_as_param_float_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_param_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_param_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_act_w_as_param_float_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_act_w_as_param_float_relaxed,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_param_float_relaxed,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_param_float_relaxed);
+}
+
+// Create the model
+Model createTestModel_model_name_nhwc_act_w_as_param_quantized() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_param_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_param_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_act_w_as_param_quantized) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_act_w_as_param_quantized,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_param_quantized,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_param_quantized);
+}
+
+// Create the model
+Model createTestModel_model_name_nhwc_act_w_as_input_float() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_input_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_input_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_act_w_as_input_float) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_act_w_as_input_float,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_input_float,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_input_float);
+}
+
+// Create the model
+Model createTestModel_model_name_nhwc_act_w_as_input_float_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_input_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_input_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_act_w_as_input_float_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_act_w_as_input_float_relaxed,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_input_float_relaxed,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_input_float_relaxed);
+}
+
+// Create the model
+Model createTestModel_model_name_nhwc_act_w_as_input_quantized() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nhwc_act_w_as_input_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_act_w_as_input_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_act_w_as_input_quantized) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_act_w_as_input_quantized,
+ conv_float::is_ignored_model_name_nhwc_act_w_as_input_quantized,
+ conv_float::examples_model_name_example_name_nhwc_act_w_as_input_quantized);
+}
+
+// Create the model
+Model createTestModel_model_name_nhwc_relu6_w_as_param_float() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_param_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_param_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_relu6_w_as_param_float) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_relu6_w_as_param_float,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_param_float,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_param_float);
+}
+
+// Create the model
+Model createTestModel_model_name_nhwc_relu6_w_as_param_float_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_param_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_param_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_relu6_w_as_param_float_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_relu6_w_as_param_float_relaxed,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_param_float_relaxed,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_param_float_relaxed);
+}
+
+// Create the model
+Model createTestModel_model_name_nhwc_relu6_w_as_param_quantized() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_param_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_param_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_relu6_w_as_param_quantized) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_relu6_w_as_param_quantized,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_param_quantized,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_param_quantized);
+}
+
+// Create the model
+Model createTestModel_model_name_nhwc_relu6_w_as_input_float() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_input_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_input_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_relu6_w_as_input_float) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_relu6_w_as_input_float,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_input_float,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_input_float);
+}
+
+// Create the model
+Model createTestModel_model_name_nhwc_relu6_w_as_input_float_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_input_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_input_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_relu6_w_as_input_float_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_relu6_w_as_input_float_relaxed,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_input_float_relaxed,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_input_float_relaxed);
+}
+
+// Create the model
+Model createTestModel_model_name_nhwc_relu6_w_as_input_quantized() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nhwc_relu6_w_as_input_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nhwc_relu6_w_as_input_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nhwc_relu6_w_as_input_quantized) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nhwc_relu6_w_as_input_quantized,
+ conv_float::is_ignored_model_name_nhwc_relu6_w_as_input_quantized,
+ conv_float::examples_model_name_example_name_nhwc_relu6_w_as_input_quantized);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_act_w_as_param_float() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_param_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_param_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_act_w_as_param_float) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_act_w_as_param_float,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_param_float,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_param_float);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_act_w_as_param_float_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_param_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_param_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_act_w_as_param_float_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_act_w_as_param_float_relaxed,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_param_float_relaxed,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_param_float_relaxed);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_act_w_as_param_quantized() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_param_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_param_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_act_w_as_param_quantized) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_act_w_as_param_quantized,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_param_quantized,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_param_quantized);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_act_w_as_input_float() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_input_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_input_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_act_w_as_input_float) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_act_w_as_input_float,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_input_float,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_input_float);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_act_w_as_input_float_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_input_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_input_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_act_w_as_input_float_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_act_w_as_input_float_relaxed,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_input_float_relaxed,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_input_float_relaxed);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_act_w_as_input_quantized() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_act_w_as_input_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_act_w_as_input_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_act_w_as_input_quantized) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_act_w_as_input_quantized,
+ conv_float::is_ignored_model_name_nchw_layout_act_w_as_input_quantized,
+ conv_float::examples_model_name_example_name_nchw_layout_act_w_as_input_quantized);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_relu6_w_as_param_float() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_param_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_param_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_relu6_w_as_param_float) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_relu6_w_as_param_float,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_param_float,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_param_float);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_relu6_w_as_param_float_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_param_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_param_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_relu6_w_as_param_float_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_relu6_w_as_param_float_relaxed,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_param_float_relaxed,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_param_float_relaxed);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_relu6_w_as_param_quantized() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_param_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_param_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_relu6_w_as_param_quantized) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_relu6_w_as_param_quantized,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_param_quantized,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_param_quantized);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_relu6_w_as_input_float() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_input_float(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_input_float = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_relu6_w_as_input_float) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_relu6_w_as_input_float,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_input_float,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_input_float);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_relu6_w_as_input_float_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_input_float_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_input_float_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_relu6_w_as_input_float_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_relu6_w_as_input_float_relaxed,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_input_float_relaxed,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_input_float_relaxed);
+}
+
+// Create the model
+Model createTestModel_model_name_nchw_layout_relu6_w_as_input_quantized() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_model_name_nchw_layout_relu6_w_as_input_quantized(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_model_name_example_name_nchw_layout_relu6_w_as_input_quantized = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_model_name_example_name_nchw_layout_relu6_w_as_input_quantized) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_model_name_nchw_layout_relu6_w_as_input_quantized,
+ conv_float::is_ignored_model_name_nchw_layout_relu6_w_as_input_quantized,
+ conv_float::examples_model_name_example_name_nchw_layout_relu6_w_as_input_quantized);
+}
+
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/conv_quant8.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/conv_quant8.mod.py
new file mode 100644
index 000000000..f6b3e89ca
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/conv_quant8.mod.py
@@ -0,0 +1,35 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 3, 3, 1}")
+f1 = Parameter("op2", "TENSOR_FLOAT32", "{1, 2, 2, 1}", [.25, .25, .25, .25])
+b1 = Parameter("op3", "TENSOR_FLOAT32", "{1}", [0])
+pad0 = Int32Scalar("pad0", 0)
+act = Int32Scalar("act", 0)
+stride = Int32Scalar("stride", 1)
+output = Output("op4", "TENSOR_FLOAT32", "{1, 2, 2, 1}")
+
+model = model.Operation("CONV_2D", i1, f1, b1, pad0, pad0, pad0, pad0, stride, stride, act).To(output)
+model = model.RelaxedExecution(True)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1.0, 1.0, 1.0, 1.0, 0.5, 1.0, 1.0, 1.0, 1.0]}
+
+output0 = {output: # output 0
+ [.875, .875, .875, .875]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/stderr.txt.expect
new file mode 100644
index 000000000..3decb4c1c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output VTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/stdout.txt.expect
new file mode 100644
index 000000000..0df371ba0
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_quant8/stdout.txt.expect
@@ -0,0 +1,142 @@
+// clang-format off
+// Generated file (from: conv_quant8.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_quant8.mod.py). Do not edit
+// Generated from: conv_quant8.mod.py.
+namespace conv_quant8 {
+// Generated conv_quant8 test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace conv_quant8
+
+// Create the model
+Model createTestModel() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 3, 3, 1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 4,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 2,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 1},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 3, 3, 3, 4, 4, 5},
+ .outputs = {6},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {6};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 62, 0, 0, 128, 62, 0, 0, 128, 62, 0, 0, 128, 62, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 0.5f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {0.875f, 0.875f, 0.875f, 0.875f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_quant8) {
+ generated_tests::Execute(device,
+ conv_quant8::createTestModel,
+ conv_quant8::is_ignored,
+ conv_quant8::examples);
+}
+
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/conv_float.mod.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/conv_float.mod.py
new file mode 100644
index 000000000..c95696203
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/conv_float.mod.py
@@ -0,0 +1,46 @@
+# Copyright 2018, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+f1 = Parameter("op2", "TENSOR_FLOAT32", "{2, 2, 2, 2}", [1, 2, 3, 4, 5, 6, 7, 8, 8, 7, 6, 5, 4, 3, 2, 1])
+b1 = Parameter("op3", "TENSOR_FLOAT32", "{1}", [-200])
+output = Output("op4", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
+act = Int32Scalar("act", 0) # None activation
+layout = Int32Scalar("layout", 0) # NHWC
+pad = Int32Scalar("param", 1)
+stride0 = Int32Scalar("param1", 1)
+stride1 = Int32Scalar("param2", 1)
+
+model = model.Operation("CONV_2D", i1, f1, b1, pad, stride0, stride1, act, layout).To(output)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1, 2, 3, 4, 5, 6, 7, 8]}
+
+output0 = {output: # output 0
+ [204, 120, 94, 104, 70, 164, 23, 112]}
+
+quant8 = DataTypeConverter().Identify({
+ i1: ("TENSOR_QUANT8_ASYMM", 0.5, 128),
+ f1: ("TENSOR_QUANT8_ASYMM", 0.25, 128),
+ b1: ("TENSOR_INT32", 0.125, 0),
+ output: ("TENSOR_QUANT8_ASYMM", 2, 100)
+})
+relu = ActivationConverter("relu").Identify([output], [act])
+relu6 = ActivationConverter("relu6").Identify([output], [act])
+
+# Instantiate an example
+Example((input0, output0)).AddNchw(i1, f1, output, layout).AddAllActivations(
+ output, act).AddInput(f1).AddVariations(RelaxedModeConverter(True), quant8)
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/stderr.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/stderr.txt.expect
new file mode 100644
index 000000000..3decb4c1c
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/stderr.txt.expect
@@ -0,0 +1,2 @@
+Output VTS model: -
+Output example:-
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/stdout.txt.expect b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/stdout.txt.expect
new file mode 100644
index 000000000..6ae6401bf
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/P_vts_variation/stdout.txt.expect
@@ -0,0 +1,7084 @@
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// clang-format off
+// Generated file (from: conv_float.mod.py). Do not edit
+// Generated from: conv_float.mod.py.
+namespace conv_float {
+// Generated conv_float test
+#include "-"
+// Generated model constructor
+#include "-"
+} // namespace conv_float
+
+// Create the model
+Model createTestModel_none() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_none(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_none) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_none,
+ conv_float::is_ignored_none,
+ conv_float::examples_none);
+}
+
+// Create the model
+Model createTestModel_none_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_none_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_none_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_none_relaxed,
+ conv_float::is_ignored_none_relaxed,
+ conv_float::examples_none_relaxed);
+}
+
+// Create the model
+Model createTestModel_none_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_none_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_none_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_none_quant8,
+ conv_float::is_ignored_none_quant8,
+ conv_float::examples_none_quant8);
+}
+
+// Create the model
+Model createTestModel_none_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_none_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_none_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_none_weight_as_input,
+ conv_float::is_ignored_none_weight_as_input,
+ conv_float::examples_none_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_none_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_none_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_none_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_none_weight_as_input_relaxed,
+ conv_float::is_ignored_none_weight_as_input_relaxed,
+ conv_float::examples_none_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_none_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_none_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_none_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_none_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_none_weight_as_input_quant8,
+ conv_float::is_ignored_none_weight_as_input_quant8,
+ conv_float::examples_none_weight_as_input_quant8);
+}
+
+// Create the model
+Model createTestModel_relu() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu,
+ conv_float::is_ignored_relu,
+ conv_float::examples_relu);
+}
+
+// Create the model
+Model createTestModel_relu_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_relu_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu_relaxed,
+ conv_float::is_ignored_relu_relaxed,
+ conv_float::examples_relu_relaxed);
+}
+
+// Create the model
+Model createTestModel_relu_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu_quant8,
+ conv_float::is_ignored_relu_quant8,
+ conv_float::examples_relu_quant8);
+}
+
+// Create the model
+Model createTestModel_relu_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu_weight_as_input,
+ conv_float::is_ignored_relu_weight_as_input,
+ conv_float::examples_relu_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_relu_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_relu_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 120.0f, 94.0f, 104.0f, 70.0f, 164.0f, 23.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu_weight_as_input_relaxed,
+ conv_float::is_ignored_relu_weight_as_input_relaxed,
+ conv_float::examples_relu_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_relu_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 160, 147, 152, 135, 182, 112, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu_weight_as_input_quant8,
+ conv_float::is_ignored_relu_weight_as_input_quant8,
+ conv_float::examples_relu_weight_as_input_quant8);
+}
+
+// Create the model
+Model createTestModel_relu1() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu1(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu1) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu1,
+ conv_float::is_ignored_relu1,
+ conv_float::examples_relu1);
+}
+
+// Create the model
+Model createTestModel_relu1_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_relu1_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu1_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu1_relaxed,
+ conv_float::is_ignored_relu1_relaxed,
+ conv_float::examples_relu1_relaxed);
+}
+
+// Create the model
+Model createTestModel_relu1_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu1_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {100, 100, 100, 100, 100, 100, 100, 100}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu1_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu1_quant8,
+ conv_float::is_ignored_relu1_quant8,
+ conv_float::examples_relu1_quant8);
+}
+
+// Create the model
+Model createTestModel_relu1_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu1_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu1_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu1_weight_as_input,
+ conv_float::is_ignored_relu1_weight_as_input,
+ conv_float::examples_relu1_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_relu1_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_relu1_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu1_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu1_weight_as_input_relaxed,
+ conv_float::is_ignored_relu1_weight_as_input_relaxed,
+ conv_float::examples_relu1_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_relu1_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu1_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu1_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {100, 100, 100, 100, 100, 100, 100, 100}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu1_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu1_weight_as_input_quant8,
+ conv_float::is_ignored_relu1_weight_as_input_quant8,
+ conv_float::examples_relu1_weight_as_input_quant8);
+}
+
+// Create the model
+Model createTestModel_relu6() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu6(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6,
+ conv_float::is_ignored_relu6,
+ conv_float::examples_relu6);
+}
+
+// Create the model
+Model createTestModel_relu6_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0, 128, 64, 0, 0, 160, 64, 0, 0, 192, 64, 0, 0, 224, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 224, 64, 0, 0, 192, 64, 0, 0, 160, 64, 0, 0, 128, 64, 0, 0, 64, 64, 0, 0, 0, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_relu6_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6_relaxed,
+ conv_float::is_ignored_relu6_relaxed,
+ conv_float::examples_relu6_relaxed);
+}
+
+// Create the model
+Model createTestModel_relu6_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu6_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6_quant8,
+ conv_float::is_ignored_relu6_quant8,
+ conv_float::examples_relu6_quant8);
+}
+
+// Create the model
+Model createTestModel_relu6_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu6_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6_weight_as_input,
+ conv_float::is_ignored_relu6_weight_as_input,
+ conv_float::examples_relu6_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_relu6_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_relu6_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f}}, {1, {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 8.0f, 7.0f, 6.0f, 5.0f, 4.0f, 3.0f, 2.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6_weight_as_input_relaxed,
+ conv_float::is_ignored_relu6_weight_as_input_relaxed,
+ conv_float::examples_relu6_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_relu6_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_relu6_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_relu6_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 132, 134, 136, 138, 140, 142, 144}}, {1, {132, 136, 140, 144, 148, 152, 156, 160, 160, 156, 152, 148, 144, 140, 136, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_relu6_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_relu6_weight_as_input_quant8,
+ conv_float::is_ignored_relu6_weight_as_input_quant8,
+ conv_float::examples_relu6_weight_as_input_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_none() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_none(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_none) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_none,
+ conv_float::is_ignored_nchw_none,
+ conv_float::examples_nchw_none);
+}
+
+// Create the model
+Model createTestModel_nchw_none_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_none_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_none_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_none_relaxed,
+ conv_float::is_ignored_nchw_none_relaxed,
+ conv_float::examples_nchw_none_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_none_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_none_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_none_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_none_quant8,
+ conv_float::is_ignored_nchw_none_quant8,
+ conv_float::examples_nchw_none_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_none_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_none_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_none_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_none_weight_as_input,
+ conv_float::is_ignored_nchw_none_weight_as_input,
+ conv_float::examples_nchw_none_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_nchw_none_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_none_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_none_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_none_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_none_weight_as_input_relaxed,
+ conv_float::examples_nchw_none_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_none_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_none_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_none_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_none_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_none_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_none_weight_as_input_quant8,
+ conv_float::examples_nchw_none_weight_as_input_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_relu() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu,
+ conv_float::is_ignored_nchw_relu,
+ conv_float::examples_nchw_relu);
+}
+
+// Create the model
+Model createTestModel_nchw_relu_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_relu_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu_relaxed,
+ conv_float::is_ignored_nchw_relu_relaxed,
+ conv_float::examples_nchw_relu_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_relu_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu_quant8,
+ conv_float::is_ignored_nchw_relu_quant8,
+ conv_float::examples_nchw_relu_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_relu_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu_weight_as_input,
+ conv_float::is_ignored_nchw_relu_weight_as_input,
+ conv_float::examples_nchw_relu_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_nchw_relu_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_relu_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {204.0f, 94.0f, 70.0f, 23.0f, 120.0f, 104.0f, 164.0f, 112.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_relu_weight_as_input_relaxed,
+ conv_float::examples_nchw_relu_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_relu_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {202, 147, 135, 112, 160, 152, 182, 156}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_relu_weight_as_input_quant8,
+ conv_float::examples_nchw_relu_weight_as_input_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_relu1() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu1(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu1) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu1,
+ conv_float::is_ignored_nchw_relu1,
+ conv_float::examples_nchw_relu1);
+}
+
+// Create the model
+Model createTestModel_nchw_relu1_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_relu1_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu1_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu1_relaxed,
+ conv_float::is_ignored_nchw_relu1_relaxed,
+ conv_float::examples_nchw_relu1_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_relu1_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu1_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {100, 100, 100, 100, 100, 100, 100, 100}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu1_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu1_quant8,
+ conv_float::is_ignored_nchw_relu1_quant8,
+ conv_float::examples_nchw_relu1_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_relu1_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu1_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu1_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu1_weight_as_input,
+ conv_float::is_ignored_nchw_relu1_weight_as_input,
+ conv_float::examples_nchw_relu1_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_nchw_relu1_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_relu1_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu1_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu1_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_relu1_weight_as_input_relaxed,
+ conv_float::examples_nchw_relu1_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_relu1_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu1_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu1_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {100, 100, 100, 100, 100, 100, 100, 100}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu1_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu1_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_relu1_weight_as_input_quant8,
+ conv_float::examples_nchw_relu1_weight_as_input_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu6(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6,
+ conv_float::is_ignored_nchw_relu6,
+ conv_float::examples_nchw_relu6);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 64},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 64, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 68, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 72, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 76, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 80, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 84, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 128, 63, 0, 0, 64, 64, 0, 0, 160, 64, 0, 0, 224, 64, 0, 0, 0, 64, 0, 0, 128, 64, 0, 0, 192, 64, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 192, 64, 0, 0, 128, 64, 0, 0, 0, 64, 0, 0, 224, 64, 0, 0, 160, 64, 0, 0, 64, 64, 0, 0, 128, 63, 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_relu6_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6_relaxed,
+ conv_float::is_ignored_nchw_relu6_relaxed,
+ conv_float::examples_nchw_relu6_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 16},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 24, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 28, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 32, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 36, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132, 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu6_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6_quant8,
+ conv_float::is_ignored_nchw_relu6_quant8,
+ conv_float::examples_nchw_relu6_quant8);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6_weight_as_input() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu6_weight_as_input(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6_weight_as_input) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6_weight_as_input,
+ conv_float::is_ignored_nchw_relu6_weight_as_input,
+ conv_float::examples_nchw_relu6_weight_as_input);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6_weight_as_input_relaxed() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_FLOAT32,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 0, 0, 72, 195, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ .relaxComputationFloat32toFloat16 = true,
+ };
+}
+
+bool is_ignored_nchw_relu6_weight_as_input_relaxed(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input_relaxed = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f}}, {1, {1.0f, 3.0f, 5.0f, 7.0f, 2.0f, 4.0f, 6.0f, 8.0f, 8.0f, 6.0f, 4.0f, 2.0f, 7.0f, 5.0f, 3.0f, 1.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {{0, {6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f, 6.0f}}},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6_weight_as_input_relaxed) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6_weight_as_input_relaxed,
+ conv_float::is_ignored_nchw_relu6_weight_as_input_relaxed,
+ conv_float::examples_nchw_relu6_weight_as_input_relaxed);
+}
+
+// Create the model
+Model createTestModel_nchw_relu6_weight_as_input_quant8() {
+ const std::vector<Operand> operands = {
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 1,
+ .scale = 0.5f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {2, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 0.25f,
+ .zeroPoint = 128,
+ .lifetime = OperandLifeTime::MODEL_INPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ },
+ {
+ .type = OperandType::TENSOR_INT32,
+ .dimensions = {1},
+ .numberOfConsumers = 1,
+ .scale = 0.125f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 0, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 4, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 8, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 12, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 16, .length = 4},
+ },
+ {
+ .type = OperandType::INT32,
+ .dimensions = {},
+ .numberOfConsumers = 1,
+ .scale = 0.0f,
+ .zeroPoint = 0,
+ .lifetime = OperandLifeTime::CONSTANT_COPY,
+ .location = {.poolIndex = 0, .offset = 20, .length = 4},
+ },
+ {
+ .type = OperandType::TENSOR_QUANT8_ASYMM,
+ .dimensions = {1, 2, 2, 2},
+ .numberOfConsumers = 0,
+ .scale = 2.0f,
+ .zeroPoint = 100,
+ .lifetime = OperandLifeTime::MODEL_OUTPUT,
+ .location = {.poolIndex = 0, .offset = 0, .length = 0},
+ }
+ };
+
+ const std::vector<Operation> operations = {
+ {
+ .type = OperationType::CONV_2D,
+ .inputs = {0, 1, 2, 3, 4, 5, 6, 7},
+ .outputs = {8},
+ }
+ };
+
+ const std::vector<uint32_t> inputIndexes = {0, 1};
+ const std::vector<uint32_t> outputIndexes = {8};
+ std::vector<uint8_t> operandValues = {
+ 192, 249, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0
+ };
+ const std::vector<hidl_memory> pools = {};
+
+ return {
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,
+ };
+}
+
+bool is_ignored_nchw_relu6_weight_as_input_quant8(int i) {
+ static std::set<int> ignore = {};
+ return ignore.find(i) != ignore.end();
+}
+
+std::vector<MixedTypedExample> examples_nchw_relu6_weight_as_input_quant8 = {
+// Begin of an example
+{
+//Input(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {130, 134, 138, 142, 132, 136, 140, 144}}, {1, {132, 140, 148, 156, 136, 144, 152, 160, 160, 152, 144, 136, 156, 148, 140, 132}}}
+},
+//Output(s)
+{ // See tools/test_generator/include/TestHarness.h:MixedTyped
+ // int -> FLOAT32 map
+ {},
+ // int -> INT32 map
+ {},
+ // int -> QUANT8_ASYMM map
+ {{0, {103, 103, 103, 103, 103, 103, 103, 103}}}
+}
+}, // End of an example
+};
+
+TEST_F(NeuralnetworksHidlTest, conv_float_nchw_relu6_weight_as_input_quant8) {
+ generated_tests::Execute(device,
+ conv_float::createTestModel_nchw_relu6_weight_as_input_quant8,
+ conv_float::is_ignored_nchw_relu6_weight_as_input_quant8,
+ conv_float::examples_nchw_relu6_weight_as_input_quant8);
+}
+
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/tests/test.py b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/test.py
new file mode 100644
index 000000000..248fae3a4
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/tests/test.py
@@ -0,0 +1,328 @@
+#!/usr/bin/python3
+
+# Copyright 2017, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+"""NN Model Test Compiler Test.
+
+Runs subdirectories of tests for the test generator/compiler.
+"""
+
+import filecmp
+import glob
+import os
+import re
+import shutil
+import subprocess
+import sys
+import unittest
+
+
+__author__ = 'Android'
+
+
+DOTTED_LINE = '................'
+
+class OrigFile:
+ OrigDir = None
+
+class TestGeneratorTests(unittest.TestCase):
+ """Class to contain all the unittest test cases.
+
+ Tests will be dynamically added to this class as methods.
+ No static tests, so this class is initially empty.
+
+ """
+ pass
+
+
+def GenerateTests(dir_name):
+ """Creates a test method that can be added as method to GenerateTests."""
+ cwd = os.getcwd()
+ def Test(self):
+ os.chdir(cwd)
+ ExecTest(dir_name, self)
+ return Test
+
+
+def AddUnitTests(test_dirs):
+ """Adds a test to Tests for each directory in test_dirs."""
+
+ for t in test_dirs:
+ # Must start with 'test_' according to unittest
+ test_name = 'test_%s' % t
+ test = GenerateTests(t)
+ # Add test as method to TestGeneratorTests with test_name as method name
+ setattr(TestGeneratorTests, test_name, test)
+
+
+class Options(object):
+ verbose = 0
+ cleanup = 1
+ update_cts = 0
+ zero_return = 0
+
+
+def CompareFiles(actual, expect):
+ """Compares actual and expect for equality."""
+ if not os.path.isfile(actual):
+ if Options.verbose:
+ print ('Could not find %s' % actual)
+ return False
+ if not os.path.isfile(expect):
+ if Options.verbose:
+ print ('Could not find %s' % expect)
+ return False
+
+ return filecmp.cmp(actual, expect, False)
+
+
+def CopyIfDifferent(src, dst):
+ """Updates dst if it is different from src."""
+ if not CompareFiles(src, dst):
+ if Options.verbose:
+ print ('Copying from %s to %s' % (src, dst))
+ shutil.copyfile(src, dst)
+
+
+def GetCommandLineArgs(filename):
+ """Extracts command line arguments from first comment line in a file."""
+ f = open(filename, 'r')
+ line = f.readline()
+ f.close()
+ if line[0] == '/' and line[1] == '/':
+ return line[2:].strip()
+ else:
+ return ''
+
+
+def ReadFileToStr(filename):
+ """Returns contents of file as a str."""
+ with open(filename, 'r') as f:
+ return f.read()
+
+
+def ReportIfDifferFromExpected(tests, name, file1, file2):
+ """Fails tests if file1 and file2 differ."""
+ if not CompareFiles(file1, file2):
+ if Options.verbose:
+ err_message = ('%s is different:\n'
+ 'expected:\n%s\n%s%s\n\n'
+ 'actual:\n%s\n%s%s\n') % (
+ name,
+ DOTTED_LINE, ReadFileToStr(file1), DOTTED_LINE,
+ DOTTED_LINE, ReadFileToStr(file2), DOTTED_LINE)
+ else:
+ err_message = '%s is different' % name
+ tests.fail(err_message)
+
+
+def GetRSFiles():
+ """Returns a list of files in cwd with extension '.rs' or '.fs'."""
+ rs_files = glob.glob('*.mod.py')
+ rs_files.sort()
+ return rs_files
+
+
+def GetOutDir():
+ return os.path.abspath(os.path.join(OrigFile.OrigDir, "../"))
+
+
+# Declare/define cache variable for GetOutDir to cache results
+# This way we only need to call subprocesses once to get the directory
+GetOutDir.cache = None
+
+
+def CreateCmd(run_vts):
+ """Creates the test command to run for the current test."""
+ cmd_string = ('%s/%s_generator.py'
+ ) % (GetOutDir(), "cts" if not run_vts else "vts")
+ base_args = cmd_string.split()
+ rs_files = GetRSFiles()
+
+ # Extra command line arguments can be placed as // comments at the start of
+ # any .rs file. We automatically bundle up all of these extra args and invoke
+ # llvm-rs-cc with them.
+ extra_args_str = ''
+ for rs_file in rs_files:
+ extra_args_str += GetCommandLineArgs(rs_file)
+ extra_args = extra_args_str.split()
+
+ args = base_args + extra_args + rs_files
+ return args
+
+def Cleanup():
+ """Cleans up the cwd of any tmp files created in current test."""
+ try:
+ os.remove('stdout.txt')
+ os.remove('stderr.txt')
+ shutil.rmtree('tmp/')
+ except OSError:
+ pass
+
+
+def CheckTestResult(dir_name, subprocess_ret, tests, args):
+ """Checks the result of the subprocess command to see if it passed/failed.
+
+ If dir_name starts with 'F_', then subprocess is expected to fail.
+ If it instead succeeded, then this test is failed.
+ Vice versa with a dir_name starting with 'P_'.
+
+ Args:
+ dir_name: name of current directory/test name
+ subprocess_ret: return code of subprocess
+ tests: unittest, call tests.fail(reason) when failure
+ args: the arguments for the command that was run
+ """
+ if dir_name[0:2] == 'F_':
+ if subprocess_ret == 0:
+ if Options.verbose:
+ err_message = ('Command (%s) passed on invalid input\n'
+ 'stdout:\n%s\n%s%s\n') % (
+ ' '.join(args),
+ DOTTED_LINE, ReadFileToStr('stdout.txt'), DOTTED_LINE
+ )
+ else:
+ err_message = 'Command passed on invalid input'
+ tests.fail(err_message)
+ elif dir_name[0:2] == 'P_':
+ if subprocess_ret != 0:
+ if Options.verbose:
+ err_message = ('Command (%s) failed on valid input\n'
+ 'stderr:\n%s\n%s%s\n') % (
+ ' '.join(args),
+ DOTTED_LINE, ReadFileToStr('stderr.txt'), DOTTED_LINE
+ )
+ else:
+ err_message = 'Command failed on valid input'
+ tests.fail(err_message)
+ else:
+ tests.fail('Invalid test name: ' + dir_name +
+ ', should start with F_ or P_')
+
+
+
+def ExecTest(dir_name, tests):
+ """Executes an test generator test from dir_name."""
+
+ os.chdir(dir_name)
+ stdout_file = open('stdout.txt', 'w+')
+ stderr_file = open('stderr.txt', 'w+')
+ run_vts = (dir_name[2:5] == 'vts')
+ args = CreateCmd(run_vts)
+
+ if Options.verbose > 1:
+ print ('Executing:', ' '.join(args))
+
+ # Execute the command and check the resulting shell return value.
+ # All tests that are expected to FAIL have directory names that
+ # start with 'F_'. Other tests that are expected to PASS have
+ # directory names that start with 'P_'.
+ ret = 0
+ try:
+ ret = subprocess.call(args, stdout=stdout_file, stderr=stderr_file)
+ except OSError:
+ tests.fail('subprocess.call failed: ' + ' '.join(args))
+
+ stdout_file.close()
+ stderr_file.close()
+
+ CheckTestResult(dir_name, ret, tests, args)
+
+ ReportIfDifferFromExpected(tests, 'stdout', 'stdout.txt.expect', 'stdout.txt')
+ ReportIfDifferFromExpected(tests, 'stderr', 'stderr.txt.expect', 'stderr.txt')
+
+ if Options.cleanup:
+ Cleanup()
+
+
+def Usage():
+ """Print out usage information."""
+ print ('Usage: %s [OPTION]... [TESTNAME]...'
+ 'Renderscript Compiler Test Harness\n'
+ 'Runs TESTNAMEs (all tests by default)\n'
+ 'Available Options:\n'
+ ' -h, --help Help message\n'
+ ' -n, --no-cleanup Don\'t clean up after running tests\n'
+ ' -v, --verbose Verbose output. Enter multiple -v to get more verbose.\n'
+ ' -z, --zero-return Return 0 as exit code no matter if tests fail. Required for TreeHugger.\n'
+ ) % (sys.argv[0]),
+ return
+
+
+def main():
+ """Runs the unittest suite.
+
+ Parses command line arguments, adds test directories as tests.
+
+ Returns:
+ 0 if '-z' flag is set.
+ Else unittest.main() returns with its own error code.
+ """
+
+ OrigFile.OrigDir = os.path.dirname(os.path.abspath(__file__))
+ # Chdir to the directory this file is in since tests are in this directory
+ os.chdir(OrigFile.OrigDir)
+ files = []
+ for arg in sys.argv[1:]:
+ if arg in ('-h', '--help'):
+ Usage()
+ return 0
+ elif arg in ('-n', '--no-cleanup'):
+ Options.cleanup = 0
+ elif arg in ('-u', '--update-cts'):
+ Options.update_cts = 1
+ elif arg in ('-v', '--verbose'):
+ Options.verbose += 1
+ elif arg in ('-z', '--zero-return'):
+ Options.zero_return = 1
+ else:
+ # Test list to run
+ if os.path.isdir(arg):
+ files.append(arg)
+ else:
+ print >> sys.stderr, 'Invalid test or option: %s' % arg
+ return 1
+
+ if not files:
+ file_names = os.listdir('.')
+ # Test names must start with 'F_' or 'P_'
+ # 'F_' tests are expected to fail
+ # 'P_' tests are expected to pass
+ for f in file_names:
+ if os.path.isdir(f) and (f[0:2] == 'F_' or f[0:2] == 'P_'):
+ files.append(f)
+ files.sort()
+
+ AddUnitTests(files)
+
+ # verbosity=2 is necessary for PythonUnitTestRunner to parse the results
+ # Otherwise verbosity does not matter
+ # If Options.zero_return is set, do not let unittest.main() exit
+ # This is necessary in TreeHugger to distinguish between failing tests and
+ # failing to execute the python script
+ # If Options.zero_return is not set, let unittest.main() exit
+ # In this case it will return a non-zero code if any tests fail
+ unittest_exit = Options.zero_return == 0
+ unittest.main(verbosity=2,
+ argv=[sys.argv[0]] + ['TestGeneratorTests'],
+ exit=unittest_exit)
+
+ return 0
+
+
+if __name__ == '__main__':
+ sys.exit(main())
+
diff --git a/tests/nnapi/nnapi_test_generator/android-q-beta/vts_generator.py b/tests/nnapi/nnapi_test_generator/android-q-beta/vts_generator.py
new file mode 100644
index 000000000..2aa8731a0
--- /dev/null
+++ b/tests/nnapi/nnapi_test_generator/android-q-beta/vts_generator.py
@@ -0,0 +1,361 @@
+#!/usr/bin/python3
+
+# Copyright 2017, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+"""VTS testcase generator
+
+Implements VTS test backend. Shares most logic with the CTS test
+generator. Invoked by ml/nn/runtime/test/specs/generate_vts_tests.sh;
+See that script for details on how this script is used.
+
+"""
+
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+import argparse
+from functools import reduce
+import math
+import numpy as np
+import os
+import re
+import struct
+import contextlib
+import pprint
+
+# Stuff from test generator
+import test_generator as tg
+from test_generator import ActivationConverter
+from test_generator import BoolScalar
+from test_generator import Configuration
+from test_generator import DataTypeConverter
+from test_generator import DataLayoutConverter
+from test_generator import Example
+from test_generator import Float16Scalar
+from test_generator import Float32Scalar
+from test_generator import Float32Vector
+from test_generator import IgnoredOutput
+from test_generator import Input
+from test_generator import Int32Scalar
+from test_generator import Int32Vector
+from test_generator import Internal
+from test_generator import Model
+from test_generator import Operand
+from test_generator import Output
+from test_generator import Parameter
+from test_generator import ParameterAsInputConverter
+from test_generator import RelaxedModeConverter
+from test_generator import SmartOpen
+from test_generator import SymmPerChannelQuantParams
+
+# Dumping methods that shared with CTS generator
+from cts_generator import DumpCtsIsIgnored
+
+
+# TODO: Make this part of tg.Configuration?
+target_hal_version = None
+
+
+# Take a model from command line
+def ParseCmdLine():
+ parser = argparse.ArgumentParser()
+ parser.add_argument("spec", help="the spec file")
+ parser.add_argument(
+ "-m", "--model", help="the output model file", default="-")
+ parser.add_argument(
+ "-t", "--test", help="the output test file", default="-")
+ parser.add_argument(
+ "--target_hal_version",
+ help="the HAL version of the output",
+ required=True,
+ choices=["V1_0", "V1_1", "V1_2"])
+ args = parser.parse_args()
+ example = "-" # VTS generator does not generate examples. See cts_generator.py.
+ tg.FileNames.InitializeFileLists(
+ args.spec, args.model, example, args.test)
+ global target_hal_version
+ target_hal_version = args.target_hal_version
+
+# Generate operands in VTS format
+def generate_vts_operands(model):
+ # Dump operand definitions
+ op_def = """\
+ {{
+ .type = OperandType::{operand_type},
+ .dimensions = {shape},
+ .numberOfConsumers = {no_consumers},
+ .scale = {scale},
+ .zeroPoint = {zero_point},
+ .lifetime = OperandLifeTime::{lifetime},
+ .location = {{.poolIndex = 0, .offset = {offset}, .length = {length}}},{extraParams}
+ }}"""
+ offset = 0
+ op_definitions = []
+ extra_params_definitions = []
+ for index, o in enumerate(model.operands):
+ length = o.type.GetByteSize() if isinstance(o, Parameter) else 0
+ add_extra_params = o.type.extraParams is not None and not o.type.extraParams.hide
+ op = {
+ "operand_type": o.type.type,
+ "shape": o.type.GetDimensionsString(),
+ "no_consumers": len(o.outs),
+ "scale": tg.PrettyPrintAsFloat(o.type.scale),
+ "zero_point": str(int(o.type.zeroPoint)),
+ "lifetime": o.lifetime,
+ "offset": offset if isinstance(o, Parameter) else 0,
+ "length": length,
+ "extraParams": "" if not add_extra_params else "\n .extraParams = std::move(extraParams%d)," % (index,),
+ }
+ offset += length
+ op_definitions.append(op_def.format(**op))
+
+ extra_params_def = """\
+ Operand::ExtraParams extraParams{index};
+ extraParams{index}.{setMethodName}({param});
+"""
+
+ if add_extra_params:
+ ep = o.type.extraParams
+ op = {
+ "index": index,
+ "setMethodName": ep.GetVtsSetter(),
+ "param": ep.GetVtsConstructor(),
+ }
+ extra_params_definitions.append(extra_params_def.format(**op))
+
+ op_vec = """{0}\
+ const std::vector<Operand> operands = {{
+{1}
+ }};""".format(",\n".join(extra_params_definitions), ",\n".join(op_definitions))
+ return op_vec
+
+# Generate VTS operand values
+def generate_vts_operand_values(operands):
+ weights = [o for o in operands if isinstance(o, Parameter)]
+ binit = []
+ for w in weights:
+ ty = w.type.type
+ if ty == "TENSOR_QUANT8_ASYMM":
+ binit += w.value
+ elif ty == "TENSOR_QUANT8_SYMM_PER_CHANNEL" or ty == "TENSOR_QUANT8_SYMM":
+ binit += [struct.pack("b", value)[0] for value in w.value]
+ elif ty == "BOOL" or ty == "TENSOR_BOOL8":
+ binit += [1 if x else 0 for x in w.value]
+ elif ty == "TENSOR_FLOAT16" or ty == "FLOAT16":
+ for f in w.value:
+ # The pack format for float16 is not available until Python 3.6.
+ binit += [int(x) for x in np.float16(f).tostring()]
+ elif ty in {"TENSOR_FLOAT32", "FLOAT32", "TENSOR_INT32", "INT32", "TENSOR_QUANT16_ASYMM"}:
+ if ty in ["TENSOR_FLOAT32", "FLOAT32"]:
+ fmt = "f"
+ elif ty in ["TENSOR_INT32", "INT32"]:
+ fmt = "i"
+ elif ty == "TENSOR_QUANT16_ASYMM":
+ fmt = "H"
+ for f in w.value:
+ binit += [int(x) for x in struct.pack(fmt, f)]
+ else:
+ assert 0 and "Unsupported VTS operand type"
+
+ init_defs = ", ".join([str(x) for x in binit])
+ if (init_defs != ""):
+ init_defs = "\n %s\n " % init_defs
+ byte_vec_fmt = """{%s}""" % init_defs
+ return byte_vec_fmt
+
+# Generate VTS operations
+def generate_vts_operation(op, model):
+ op_fmt = """\
+ {{
+ .type = OperationType::{op_code},
+ .inputs = {{{ins}}},
+ .outputs = {{{outs}}},
+ }}"""
+ op_content = {
+ 'op_code': op.optype,
+ 'ins': tg.GetJointStr(model.GetIndexOfOperands(op.ins)),
+ 'outs': tg.GetJointStr(model.GetIndexOfOperands(op.outs))
+ }
+ return op_fmt.format(**op_content)
+
+def generate_vts_operations(model):
+ vts_ops = [generate_vts_operation(op, model) for op in model.operations]
+ return ",\n".join(vts_ops)
+
+def generate_vts_model(model, model_file):
+ operand_values_fmt = ""
+ if Configuration.useSHM():
+ # Boilerplate code for passing weights in shared memory
+ operand_values_fmt = """\
+ std::vector<uint8_t> operandValues = {{}};
+ const uint8_t data[] = {operand_values};
+
+ // Allocate segment of android shared memory, wrapped in hidl_memory.
+ // This object will be automatically freed when sharedMemory is destroyed.
+ hidl_memory sharedMemory = ::android::nn::allocateSharedMemory(sizeof(data));
+
+ // Mmap ashmem into usable address and hold it within the mappedMemory object.
+ // MappedMemory will automatically munmap the memory when it is destroyed.
+ sp<::android::hidl::memory::V1_0::IMemory> mappedMemory = mapMemory(sharedMemory);
+
+ if (mappedMemory != nullptr) {{
+ // Retrieve the mmapped pointer.
+ uint8_t* mappedPointer =
+ static_cast<uint8_t*>(static_cast<void*>(mappedMemory->getPointer()));
+
+ if (mappedPointer != nullptr) {{
+ // Acquire the write lock for the shared memory segment, upload the data,
+ // and release the lock.
+ mappedMemory->update();
+ std::copy(data, data + sizeof(data), mappedPointer);
+ mappedMemory->commit();
+ }}
+ }}
+
+ const std::vector<hidl_memory> pools = {{sharedMemory}};
+"""
+ else:
+ # Passing weights via operandValues
+ operand_values_fmt = """\
+ std::vector<uint8_t> operandValues = {operand_values};
+ const std::vector<hidl_memory> pools = {{}};
+"""
+
+ operand_values_val = {
+ 'operand_values': generate_vts_operand_values(model.operands)
+ }
+ operand_values = operand_values_fmt.format(**operand_values_val)
+ # operand_values = operand_values_fmt
+ model_fmt = """\
+// Create the model
+Model {create_test_model_name}() {{
+{operand_decls}
+
+ const std::vector<Operation> operations = {{
+{operations}
+ }};
+
+ const std::vector<uint32_t> inputIndexes = {{{input_indices}}};
+ const std::vector<uint32_t> outputIndexes = {{{output_indices}}};
+{operand_values}
+ return {{
+ .operands = operands,
+ .operations = operations,
+ .inputIndexes = inputIndexes,
+ .outputIndexes = outputIndexes,
+ .operandValues = operandValues,
+ .pools = pools,{relaxed_field}
+ }};
+}}
+"""
+ model_dict = {
+ "hal_version": target_hal_version,
+ "create_test_model_name": str(model.createTestFunctionName),
+ "operations": generate_vts_operations(model),
+ "operand_decls": generate_vts_operands(model),
+ "operand_values": operand_values,
+ "output_indices": tg.GetJointStr(model.GetOutputsIndex()),
+ "input_indices": tg.GetJointStr(model.GetInputsIndex()),
+ "relaxed_field":
+ "\n .relaxComputationFloat32toFloat16 = true," if (model.isRelaxed) else ""
+ }
+ print(model_fmt.format(**model_dict), file = model_file)
+
+def generate_vts(model, model_file):
+ assert model.compiled
+ # Do not generate DynamicOutputShapeTest for pre-1.2 VTS.
+ if model.hasDynamicOutputShape and target_hal_version < "V1_2":
+ return
+ namespace = "android::hardware::neuralnetworks::{hal_version}::generated_tests::{spec_name}".format(spec_name=tg.FileNames.specName, hal_version=target_hal_version)
+ print("namespace {namespace} {{\n".format(namespace=namespace), file=model_file)
+ generate_vts_model(model, model_file)
+ DumpCtsIsIgnored(model, model_file)
+ print("}} // namespace {namespace}".format(namespace=namespace), file=model_file)
+
+def generate_vts_test(example, test_file):
+ # Do not generate DynamicOutputShapeTest for pre-1.2 VTS.
+ if example.model.hasDynamicOutputShape and target_hal_version < "V1_2":
+ return
+
+ generated_vts_namespace = "android::hardware::neuralnetworks::{hal_version}::generated_tests::{spec_name}".format(spec_name=tg.FileNames.specName, hal_version=target_hal_version)
+ generated_cts_namespace = "generated_tests::{spec_name}".format(spec_name=tg.FileNames.specName)
+ testTemplate = """\
+namespace {generated_cts_namespace} {{
+
+std::vector<::test_helper::MixedTypedExample>& get_{examples_name}();
+
+}} // namespace {generated_cts_namespace}
+
+namespace {generated_vts_namespace} {{
+
+Model {create_model_name}();
+bool {is_ignored_name}(int);
+"""
+
+ if not example.expectFailure:
+ testTemplate += """
+TEST_F({test_case_name}, {test_name}) {{
+ Execute(device,
+ {create_model_name},
+ {is_ignored_name},
+ ::{generated_cts_namespace}::get_{examples_name}(){test_dynamic_output_shape});
+}}
+"""
+
+ testTemplate += """
+TEST_F(ValidationTest, {test_name}) {{
+ const Model model = {create_model_name}();
+ const std::vector<Request> requests = createRequests(::{generated_cts_namespace}::get_{examples_name}());
+ validateEverything(model, requests);
+}}
+
+}} // namespace {generated_vts_namespace}
+"""
+
+ print(testTemplate.format(
+ test_case_name="DynamicOutputShapeTest" if example.model.hasDynamicOutputShape \
+ else "NeuralnetworksHidlTest",
+ test_name=str(example.testName),
+ generated_vts_namespace=generated_vts_namespace,
+ generated_cts_namespace=generated_cts_namespace,
+ hal_version=target_hal_version,
+ create_model_name=str(example.model.createTestFunctionName),
+ is_ignored_name=str(example.model.isIgnoredFunctionName),
+ examples_name=str(example.examplesName),
+ test_dynamic_output_shape=", true" if example.model.hasDynamicOutputShape else "",
+ validation_method="validateFailure" if example.expectFailure else "validateEverything",
+ ), file=test_fd)
+
+def InitializeFiles(model_fd, test_fd):
+ specFileBase = os.path.basename(tg.FileNames.specFile)
+ fileHeader = """\
+// Generated from {spec_file}
+// DO NOT EDIT
+// clang-format off
+#include "GeneratedTests.h"
+""".format(spec_file=specFileBase)
+ print(fileHeader, file=model_fd)
+ print(fileHeader, file=test_fd)
+
+if __name__ == "__main__":
+ ParseCmdLine()
+ while tg.FileNames.NextFile():
+ print("Generating VTS tests from %s" % tg.FileNames.specFile)
+ exec (open(tg.FileNames.specFile, "r").read())
+ with SmartOpen(tg.FileNames.modelFile) as model_fd, \
+ SmartOpen(tg.FileNames.testFile) as test_fd:
+ InitializeFiles(model_fd, test_fd)
+ Example.DumpAllExamples(
+ DumpModel=generate_vts, model_fd=model_fd,
+ DumpTest=generate_vts_test, test_fd=test_fd)
diff --git a/tests/nnapi/specs/Ex/argmax_ex_float_1.mod.py b/tests/nnapi/specs/Ex/argmax_ex_float_1.mod.py
index e2255e004..dc29fb358 100644
--- a/tests/nnapi/specs/Ex/argmax_ex_float_1.mod.py
+++ b/tests/nnapi/specs/Ex/argmax_ex_float_1.mod.py
@@ -1,7 +1,7 @@
model = Model()
i1 = Input("input", "TENSOR_FLOAT32", "{1, 2, 2, 1}")
axis = Parameter("axis", "TENSOR_INT32", "{1}", [1])
-output = Output("output", "TENSOR_INT32", "{1, 1, 2, 1}")
+output = Output("output", "TENSOR_INT32", "{1, 2, 1}")
model = model.Operation("ARGMAX_EX", i1, axis).To(output)
diff --git a/tests/nnapi/specs/Ex/argmax_ex_float_2.mod.py b/tests/nnapi/specs/Ex/argmax_ex_float_2.mod.py
index 6f06bfd0b..8b6ed565f 100644
--- a/tests/nnapi/specs/Ex/argmax_ex_float_2.mod.py
+++ b/tests/nnapi/specs/Ex/argmax_ex_float_2.mod.py
@@ -1,7 +1,7 @@
model = Model()
i1 = Input("input", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
axis = Parameter("axis", "TENSOR_INT32", "{1}", [3])
-output = Output("output", "TENSOR_INT32", "{1, 2, 2, 1}")
+output = Output("output", "TENSOR_INT32", "{1, 2, 2}")
model = model.Operation("ARGMAX_EX", i1, axis).To(output)
diff --git a/tests/nnapi/specs/Ex/argmax_ex_int32.mod.py b/tests/nnapi/specs/Ex/argmax_ex_int32.mod.py
index f7f98afe2..b5d01dd85 100644
--- a/tests/nnapi/specs/Ex/argmax_ex_int32.mod.py
+++ b/tests/nnapi/specs/Ex/argmax_ex_int32.mod.py
@@ -1,7 +1,7 @@
model = Model()
i1 = Input("input", "TENSOR_INT32", "{1, 2, 2, 1}")
axis = Parameter("axis", "TENSOR_INT32", "{1}", [1])
-output = Output("output", "TENSOR_INT32", "{1, 1, 2, 1}")
+output = Output("output", "TENSOR_INT32", "{1, 2, 1}")
model = model.Operation("ARGMAX_EX", i1, axis).To(output)
diff --git a/tests/nnapi/specs/Ex/argmax_ex_neg_axis_float.mod.py b/tests/nnapi/specs/Ex/argmax_ex_neg_axis_float.mod.py
index b29cf1eb6..977cac061 100644
--- a/tests/nnapi/specs/Ex/argmax_ex_neg_axis_float.mod.py
+++ b/tests/nnapi/specs/Ex/argmax_ex_neg_axis_float.mod.py
@@ -1,7 +1,7 @@
model = Model()
i1 = Input("input", "TENSOR_FLOAT32", "{1, 2, 4, 1}")
axis = Parameter("axis", "TENSOR_INT32", "{1}", [-3])
-output = Output("output", "TENSOR_INT32", "{1, 1, 4, 1}")
+output = Output("output", "TENSOR_INT32", "{1, 4, 1}")
model = model.Operation("ARGMAX_EX", i1, axis).To(output)
diff --git a/tests/nnapi/specs/Ex/argmax_ex_neg_axis_int32.mod.py b/tests/nnapi/specs/Ex/argmax_ex_neg_axis_int32.mod.py
index ddc27b35a..9f448e08d 100644
--- a/tests/nnapi/specs/Ex/argmax_ex_neg_axis_int32.mod.py
+++ b/tests/nnapi/specs/Ex/argmax_ex_neg_axis_int32.mod.py
@@ -1,7 +1,7 @@
model = Model()
i1 = Input("input", "TENSOR_INT32", "{1, 2, 4, 1}")
axis = Parameter("axis", "TENSOR_INT32", "{1}", [-3])
-output = Output("output", "TENSOR_INT32", "{1, 1, 4, 1}")
+output = Output("output", "TENSOR_INT32", "{1, 4, 1}")
model = model.Operation("ARGMAX_EX", i1, axis).To(output)
diff --git a/tests/nnapi/specs/Ex/argmax_ex_quant8.mod.py b/tests/nnapi/specs/Ex/argmax_ex_quant8.mod.py
index fd3c5230b..c3131ef91 100644
--- a/tests/nnapi/specs/Ex/argmax_ex_quant8.mod.py
+++ b/tests/nnapi/specs/Ex/argmax_ex_quant8.mod.py
@@ -1,7 +1,7 @@
model = Model()
i1 = Input("input", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 1}, 0.5f, 2")
axis = Parameter("axis", "TENSOR_INT32", "{1}", [1])
-output = Output("output", "TENSOR_INT32", "{1, 1, 2, 1}")
+output = Output("output", "TENSOR_INT32", "{1, 2, 1}")
model = model.Operation("ARGMAX_EX", i1, axis).To(output)
diff --git a/tests/nnapi/specs/Ex/argmax_ex_quant8_neg_axis.mod.py b/tests/nnapi/specs/Ex/argmax_ex_quant8_neg_axis.mod.py
index c7ddc0e5d..9146d8f14 100644
--- a/tests/nnapi/specs/Ex/argmax_ex_quant8_neg_axis.mod.py
+++ b/tests/nnapi/specs/Ex/argmax_ex_quant8_neg_axis.mod.py
@@ -1,7 +1,7 @@
model = Model()
i1 = Input("input", "TENSOR_QUANT8_ASYMM", "{1, 2, 4, 1}, 0.5f, 5")
axis = Parameter("axis", "TENSOR_INT32", "{1}", [-3])
-output = Output("output", "TENSOR_INT32", "{1, 1, 4, 1}")
+output = Output("output", "TENSOR_INT32", "{1, 4, 1}")
model = model.Operation("ARGMAX_EX", i1, axis).To(output)
diff --git a/tests/nnapi/specs/Ex/gather_ex_2D_2D_float_1.mod.py b/tests/nnapi/specs/Ex/gather_ex_2D_2D_float_1.mod.py
new file mode 100644
index 000000000..9edc80deb
--- /dev/null
+++ b/tests/nnapi/specs/Ex/gather_ex_2D_2D_float_1.mod.py
@@ -0,0 +1,22 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{3,4}") # a vector of 12 float32s
+i2 = Input("op2", "TENSOR_INT32", "{1,2}") # another vector of 2 int32s
+axis = Int32Scalar("axis", 0)
+i3 = Output("op3", "TENSOR_FLOAT32", "{1,2,4}") # a vector of 8 float32s
+model = model.Operation("GATHER_EX", i1, i2, axis).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+ 7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789],
+ i2: # input 1
+ [1, 0]}
+
+output0 = {i3: # output 0
+ [7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/gather_ex_2D_2D_float_2.mod.py b/tests/nnapi/specs/Ex/gather_ex_2D_2D_float_2.mod.py
new file mode 100644
index 000000000..85fd43466
--- /dev/null
+++ b/tests/nnapi/specs/Ex/gather_ex_2D_2D_float_2.mod.py
@@ -0,0 +1,23 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{3,4}") # a vector of 12 float32s
+i2 = Input("op2", "TENSOR_INT32", "{1,2}") # another vector of 2 int32s
+axis = Int32Scalar("axis", 1)
+i3 = Output("op3", "TENSOR_FLOAT32", "{3,1,2}") # a vector of 6 float32s
+model = model.Operation("GATHER_EX", i1, i2, axis).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+ 7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789],
+ i2: # input 1
+ [1, 0]}
+
+output0 = {i3: # output 0
+ [4.123456789123456789, 3.123456789123456789,
+ 8.123456789123456789, 7.123456789123456789,
+ 18.123456789123456789, 2.123456789123456789]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/gather_ex_2D_3D_float_1.mod.py b/tests/nnapi/specs/Ex/gather_ex_2D_3D_float_1.mod.py
new file mode 100644
index 000000000..652016af5
--- /dev/null
+++ b/tests/nnapi/specs/Ex/gather_ex_2D_3D_float_1.mod.py
@@ -0,0 +1,22 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{3,4}") # a vector of 12 float32s
+i2 = Input("op2", "TENSOR_INT32", "{1,1,2}") # another vector of 2 int32s
+axis = Int32Scalar("axis", 0)
+i3 = Output("op3", "TENSOR_FLOAT32", "{1,1,2,4}") # a vector of 8 float32s
+model = model.Operation("GATHER_EX", i1, i2, axis).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+ 7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789],
+ i2: # input 1
+ [1, 0]}
+
+output0 = {i3: # output 0
+ [7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/gather_ex_2D_3D_float_2.mod.py b/tests/nnapi/specs/Ex/gather_ex_2D_3D_float_2.mod.py
new file mode 100644
index 000000000..850d330b9
--- /dev/null
+++ b/tests/nnapi/specs/Ex/gather_ex_2D_3D_float_2.mod.py
@@ -0,0 +1,23 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{3,4}") # a vector of 12 float32s
+i2 = Input("op2", "TENSOR_INT32", "{1,2,1}") # another vector of 2 int32s
+axis = Int32Scalar("axis", 1)
+i3 = Output("op3", "TENSOR_FLOAT32", "{3,1,2,1}") # a vector of 6 float32s
+model = model.Operation("GATHER_EX", i1, i2, axis).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+ 7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789],
+ i2: # input 1
+ [1, 0]}
+
+output0 = {i3: # output 0
+ [4.123456789123456789, 3.123456789123456789,
+ 8.123456789123456789, 7.123456789123456789,
+ 18.123456789123456789, 2.123456789123456789]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_1.mod.py b/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_1.mod.py
new file mode 100644
index 000000000..09db60294
--- /dev/null
+++ b/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_1.mod.py
@@ -0,0 +1,29 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{2,3,4}") # a vector of 24 float32s
+i2 = Input("op2", "TENSOR_INT32", "{1,2}") # another vector of 2 int32s
+axis = Int32Scalar("axis", 0)
+i3 = Output("op3", "TENSOR_FLOAT32", "{1,2,3,4}") # a vector of 24 float32s
+model = model.Operation("GATHER_EX", i1, i2, axis).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+ 7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+ 13.123456789123456789, 14.123456789123456789, 15.123456789123456789, 16.123456789123456789,
+ 17.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+ 12.123456789123456789, 28.123456789123456789, 29.123456789123456789, 21.123456789123456789],
+ i2: # input 1
+ [1, 0]}
+
+output0 = {i3: # output 0
+ [13.123456789123456789, 14.123456789123456789, 15.123456789123456789, 16.123456789123456789,
+ 17.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+ 12.123456789123456789, 28.123456789123456789, 29.123456789123456789, 21.123456789123456789,
+ 3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+ 7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_2.mod.py b/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_2.mod.py
new file mode 100644
index 000000000..bfdc83c58
--- /dev/null
+++ b/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_2.mod.py
@@ -0,0 +1,29 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{2,3,4}") # a vector of 24 float32s
+i2 = Input("op2", "TENSOR_INT32", "{2,1}") # another vector of 2 int32s
+axis = Int32Scalar("axis", 0)
+i3 = Output("op3", "TENSOR_FLOAT32", "{2,1,3,4}") # a vector of 24 float32s
+model = model.Operation("GATHER_EX", i1, i2, axis).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+ 7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+ 13.123456789123456789, 14.123456789123456789, 15.123456789123456789, 16.123456789123456789,
+ 17.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+ 12.123456789123456789, 28.123456789123456789, 29.123456789123456789, 21.123456789123456789],
+ i2: # input 1
+ [0, 0]}
+
+output0 = {i3: # output 0
+ [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+ 7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+ 3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+ 7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_3.mod.py b/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_3.mod.py
new file mode 100644
index 000000000..cfcd1b479
--- /dev/null
+++ b/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_3.mod.py
@@ -0,0 +1,26 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{2,3,4}") # a vector of 24 float32s
+i2 = Input("op2", "TENSOR_INT32", "{2,1}") # another vector of 2 int32s
+axis = Int32Scalar("axis", 2)
+i3 = Output("op3", "TENSOR_FLOAT32", "{2,3,2,1}") # a vector of 12 float32s
+model = model.Operation("GATHER_EX", i1, i2, axis).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+ 7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+ 2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+ 13.123456789123456789, 14.123456789123456789, 15.123456789123456789, 16.123456789123456789,
+ 17.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+ 12.123456789123456789, 28.123456789123456789, 29.123456789123456789, 21.123456789123456789],
+ i2: # input 1
+ [3, 1]}
+
+output0 = {i3: # output 0
+ [6.123456789123456789, 4.123456789123456789, 1.123456789123456789, 8.123456789123456789,
+ 11.123456789123456789, 18.123456789123456789, 16.123456789123456789, 14.123456789123456789,
+ 11.123456789123456789, 18.123456789123456789, 21.123456789123456789, 28.123456789123456789]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/gather_ex_4D_float.mod.py b/tests/nnapi/specs/Ex/gather_ex_4D_float.mod.py
new file mode 100644
index 000000000..38fa8d015
--- /dev/null
+++ b/tests/nnapi/specs/Ex/gather_ex_4D_float.mod.py
@@ -0,0 +1,41 @@
+# This test case is for 4d input gather operator.
+# The input shape is [1,2,3,4] and this test produces output
+# by referencing the data on axis 0 from the input to the indices value [0,0].
+# In this case, the output shape changeds to [2,2,3,4] because it uses [0,0] indices on the 0 axis,
+# and the data is configured as filling the 0th data of the input axis 0 twice.
+
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{1,2,3,4}") # a vector of 24 float32s
+i2 = Input("op2", "TENSOR_INT32", "{2}") # another vector of 2 int32s
+axis = Int32Scalar("axis", 0)
+i3 = Output("op3", "TENSOR_FLOAT32", "{2,2,3,4}") # a vector of 48 float32s
+model = model.Operation("GATHER_EX", i1, i2, axis).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1.123456789123456789, 2.123456789123456789, 3.123456789123456789, 4.123456789123456789,
+ 5.123456789123456789, 6.123456789123456789, 7.123456789123456789, 8.123456789123456789,
+ 9.123456789123456789, 10.123456789123456789, 11.123456789123456789, 12.123456789123456789,
+ 13.123456789123456789, 14.123456789123456789, 15.123456789123456789, 16.123456789123456789,
+ 17.123456789123456789, 18.123456789123456789, 19.123456789123456789, 20.123456789123456789,
+ 21.123456789123456789, 22.123456789123456789, 23.123456789123456789, 24.123456789123456789],
+ i2: # input 1
+ [0, 0]}
+
+output0 = {i3: # output 0
+ [1.123456789123456789, 2.123456789123456789, 3.123456789123456789, 4.123456789123456789,
+ 5.123456789123456789, 6.123456789123456789, 7.123456789123456789, 8.123456789123456789,
+ 9.123456789123456789, 10.123456789123456789, 11.123456789123456789, 12.123456789123456789,
+ 13.123456789123456789, 14.123456789123456789, 15.123456789123456789, 16.123456789123456789,
+ 17.123456789123456789, 18.123456789123456789, 19.123456789123456789, 20.123456789123456789,
+ 21.123456789123456789, 22.123456789123456789, 23.123456789123456789, 24.123456789123456789,
+ 1.123456789123456789, 2.123456789123456789, 3.123456789123456789, 4.123456789123456789,
+ 5.123456789123456789, 6.123456789123456789, 7.123456789123456789, 8.123456789123456789,
+ 9.123456789123456789, 10.123456789123456789, 11.123456789123456789, 12.123456789123456789,
+ 13.123456789123456789, 14.123456789123456789, 15.123456789123456789, 16.123456789123456789,
+ 17.123456789123456789, 18.123456789123456789, 19.123456789123456789, 20.123456789123456789,
+ 21.123456789123456789, 22.123456789123456789, 23.123456789123456789, 24.123456789123456789]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/greater_equal_ex.mod.py b/tests/nnapi/specs/Ex/greater_equal_ex.mod.py
new file mode 100644
index 000000000..7c62d568b
--- /dev/null
+++ b/tests/nnapi/specs/Ex/greater_equal_ex.mod.py
@@ -0,0 +1,35 @@
+#
+# Copyright (c) 2019 Samsung Electronics Co., Ltd. All Rights Reserved
+# Copyright (C) 2018 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{2, 1}")
+i2 = Input("op2", "TENSOR_FLOAT32", "{2}")
+i3 = Output("op3", "TENSOR_QUANT8_ASYMM", "{2, 2}, 1.0, 0")
+model = model.Operation("GREATER_EQUAL_EX", i1, i2).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [5, 10],
+ i2: # input 1
+ [10, 5]}
+
+output0 = {i3: # output 0
+ [0, 255, 255, 255]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/less_ex.mod.py b/tests/nnapi/specs/Ex/less_ex.mod.py
new file mode 100644
index 000000000..3ae15b62f
--- /dev/null
+++ b/tests/nnapi/specs/Ex/less_ex.mod.py
@@ -0,0 +1,35 @@
+#
+# Copyright (c) 2019 Samsung Electronics Co., Ltd. All Rights Reserved
+# Copyright (C) 2018 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{2, 1}")
+i2 = Input("op2", "TENSOR_FLOAT32", "{2}")
+i3 = Output("op3", "TENSOR_QUANT8_ASYMM", "{2, 2}, 1.0, 0")
+model = model.Operation("LESS_EX", i1, i2).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [5, 10],
+ i2: # input 1
+ [10, 5]}
+
+output0 = {i3: # output 0
+ [255, 0, 0, 0]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/pack_ex_3D_float_1.mod.py b/tests/nnapi/specs/Ex/pack_ex_2D_float_1.mod.py
index 3f3ea683f..06f6e6a7b 100644
--- a/tests/nnapi/specs/Ex/pack_ex_3D_float_1.mod.py
+++ b/tests/nnapi/specs/Ex/pack_ex_2D_float_1.mod.py
@@ -1,11 +1,11 @@
# Sample Stack or Pack model
model = Model()
-i1 = Input("input1", "TENSOR_FLOAT32", "{2, 3, 4}")
-i2 = Input("input2", "TENSOR_FLOAT32", "{2, 3, 4}")
-i3 = Input("input3", "TENSOR_FLOAT32", "{2, 3, 4}")
+i1 = Input("input1", "TENSOR_FLOAT32", "{6, 4}")
+i2 = Input("input2", "TENSOR_FLOAT32", "{6, 4}")
+i3 = Input("input3", "TENSOR_FLOAT32", "{6, 4}")
num = Int32Scalar("num_tensors", 3)
axis = Int32Scalar("axis", 0)
-out = Output("output", "TENSOR_FLOAT32", "{3, 2, 3, 4}")
+out = Output("output", "TENSOR_FLOAT32", "{3, 6, 4}")
model = model.Operation("PACK_EX", i1, i2, i3, num, axis).To(out)
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/pack_ex_3D_float_2.mod.py b/tests/nnapi/specs/Ex/pack_ex_2D_float_2.mod.py
index d0caa02cc..acc8c891f 100644
--- a/tests/nnapi/specs/Ex/pack_ex_3D_float_2.mod.py
+++ b/tests/nnapi/specs/Ex/pack_ex_2D_float_2.mod.py
@@ -1,11 +1,11 @@
# Sample Stack or Pack model
model = Model()
-i1 = Input("input1", "TENSOR_FLOAT32", "{2, 3, 4}")
-i2 = Input("input2", "TENSOR_FLOAT32", "{2, 3, 4}")
-i3 = Input("input3", "TENSOR_FLOAT32", "{2, 3, 4}")
+i1 = Input("input1", "TENSOR_FLOAT32", "{6, 4}")
+i2 = Input("input2", "TENSOR_FLOAT32", "{6, 4}")
+i3 = Input("input3", "TENSOR_FLOAT32", "{6, 4}")
num = Int32Scalar("num_tensors", 3)
-axis = Int32Scalar("axis", 2)
-out = Output("output", "TENSOR_FLOAT32", "{2, 3, 3, 4}")
+axis = Int32Scalar("axis", 1)
+out = Output("output", "TENSOR_FLOAT32", "{6, 3, 4}")
model = model.Operation("PACK_EX", i1, i2, i3, num, axis).To(out)
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/pack_ex_3D_int_1.mod.py b/tests/nnapi/specs/Ex/pack_ex_2D_int_1.mod.py
index 23b365957..0ffd6cf9d 100644
--- a/tests/nnapi/specs/Ex/pack_ex_3D_int_1.mod.py
+++ b/tests/nnapi/specs/Ex/pack_ex_2D_int_1.mod.py
@@ -1,11 +1,11 @@
# Sample Stack or Pack model
model = Model()
-i1 = Input("input1", "TENSOR_INT32", "{2, 3, 4}")
-i2 = Input("input2", "TENSOR_INT32", "{2, 3, 4}")
-i3 = Input("input3", "TENSOR_INT32", "{2, 3, 4}")
+i1 = Input("input1", "TENSOR_INT32", "{6, 4}")
+i2 = Input("input2", "TENSOR_INT32", "{6, 4}")
+i3 = Input("input3", "TENSOR_INT32", "{6, 4}")
num = Int32Scalar("num_tensors", 3)
axis = Int32Scalar("axis", 0)
-out = Output("output", "TENSOR_INT32", "{3, 2, 3, 4}")
+out = Output("output", "TENSOR_INT32", "{3, 6, 4}")
model = model.Operation("PACK_EX", i1, i2, i3, num, axis).To(out)
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/pack_ex_3D_int_2.mod.py b/tests/nnapi/specs/Ex/pack_ex_2D_int_2.mod.py
index 747fcc628..c9bdc419b 100644
--- a/tests/nnapi/specs/Ex/pack_ex_3D_int_2.mod.py
+++ b/tests/nnapi/specs/Ex/pack_ex_2D_int_2.mod.py
@@ -1,11 +1,11 @@
# Sample Stack or Pack model
model = Model()
-i1 = Input("input1", "TENSOR_INT32", "{2, 3, 4}")
-i2 = Input("input2", "TENSOR_INT32", "{2, 3, 4}")
-i3 = Input("input3", "TENSOR_INT32", "{2, 3, 4}")
+i1 = Input("input1", "TENSOR_INT32", "{6, 4}")
+i2 = Input("input2", "TENSOR_INT32", "{6, 4}")
+i3 = Input("input3", "TENSOR_INT32", "{6, 4}")
num = Int32Scalar("num_tensors", 3)
-axis = Int32Scalar("axis", 2)
-out = Output("output", "TENSOR_INT32", "{2, 3, 3, 4}")
+axis = Int32Scalar("axis", 1)
+out = Output("output", "TENSOR_INT32", "{6, 3, 4}")
model = model.Operation("PACK_EX", i1, i2, i3, num, axis).To(out)
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/prelu_ex_broadcast_float_1.mod.py b/tests/nnapi/specs/Ex/prelu_ex_broadcast_float_1.mod.py
new file mode 100644
index 000000000..23e363f5c
--- /dev/null
+++ b/tests/nnapi/specs/Ex/prelu_ex_broadcast_float_1.mod.py
@@ -0,0 +1,23 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{1, 2, 2, 3}") # a vector of input
+i2 = Input("op2", "TENSOR_FLOAT32", "{1, 1, 1, 3}") # a vector of alpha
+i3 = Output("op3", "TENSOR_FLOAT32", "{1, 2, 2, 3}") # a vector of output
+model = model.Operation("PRELU_EX", i1, i2).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [0.0, 0.0, 0.0,
+ 1.0, 1.0, 1.0,
+ -1.0, -1.0, -1.0,
+ -2.0, -2.0, -2.0],
+ i2: # input 1
+ [0.0, 1.0, 2.0]}
+
+output0 = {i3: # output 0
+ [0.0, 0.0, 0.0,
+ 1.0, 1.0, 1.0,
+ 0.0, -1.0, -2.0,
+ 0.0, -2.0, -4.0]}
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/prelu_ex_broadcast_quant8_1.mod.py b/tests/nnapi/specs/Ex/prelu_ex_broadcast_quant8_1.mod.py
new file mode 100644
index 000000000..5fc6884bc
--- /dev/null
+++ b/tests/nnapi/specs/Ex/prelu_ex_broadcast_quant8_1.mod.py
@@ -0,0 +1,24 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 3}, 1.0f, 2") # a vector of input
+i2 = Input("op2", "TENSOR_QUANT8_ASYMM", "{1, 1, 3}, 1.0f, 1") # a vector of alpha
+i3 = Output("op3", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 3}, 0.5f, 3") # a vector of output
+model = model.Operation("PRELU_EX", i1, i2).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [1, 1, 1,
+ 2, 2, 2,
+ 3, 3, 3,
+ 1, 2, 3],
+ i2: # input 1
+ [0, 1, 2]}
+
+output0 = {i3: # output 0
+ [5, 3, 1,
+ 3, 3, 3,
+ 5, 5, 5,
+ 5, 3, 5]}
+# Instantiate an example
+Example((input0, output0))
+
diff --git a/tests/nnapi/specs/Ex/prelu_ex_float_2.mod.py b/tests/nnapi/specs/Ex/prelu_ex_float_2.mod.py
deleted file mode 100644
index d2ebd2a0b..000000000
--- a/tests/nnapi/specs/Ex/prelu_ex_float_2.mod.py
+++ /dev/null
@@ -1,22 +0,0 @@
-# model
-model = Model()
-i1 = Input("op1", "TENSOR_FLOAT32", "{1, 2, 2, 1}") # a vector of input
-i2 = Input("op2", "TENSOR_FLOAT32", "{1, 2, 2, 1}") # a vector of alpha
-i3 = Output("op3", "TENSOR_FLOAT32", "{1, 2, 2, 1}") # a vector of output
-model = model.Operation("PRELU_EX", i1, i2).To(i3)
-
-# Example 1. Input in operand 0,
-input0 = {i1: # input 0
- [3.0, -2.0,
- -1.0, -2.0
- ],
- i2: # input 1
- [0.0, 1.0,
- 1.0, 2.0]}
-
-output0 = {i3: # output 0
- [3.0, -2.0,
- -1.0, -4.0
- ]}
-# Instantiate an example
-Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/prelu_ex_quant8_1.mod.py b/tests/nnapi/specs/Ex/prelu_ex_quant8_1.mod.py
new file mode 100644
index 000000000..9548f8255
--- /dev/null
+++ b/tests/nnapi/specs/Ex/prelu_ex_quant8_1.mod.py
@@ -0,0 +1,23 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 1}, 0.5f, 5") # a vector of input
+i2 = Input("op2", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 1}, 0.5f, 1") # a vector of alpha
+i3 = Output("op3", "TENSOR_QUANT8_ASYMM", "{1, 2, 2, 1}, 0.1f, 3") # a vector of output
+model = model.Operation("PRELU_EX", i1, i2).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+ [3, 1,
+ 7, 11
+ ],
+ i2: # input 1
+ [0, 1,
+ 2, 2]}
+
+output0 = {i3: # output 0
+ [8, 3,
+ 13, 33
+ ]}
+# Instantiate an example
+Example((input0, output0))
+
diff --git a/tests/nnapi/specs/Ex/tensorflowmax_ex_2D_float.mod.py b/tests/nnapi/specs/Ex/reduce_max_ex_2D_float.mod.py
index 6cf8d83e7..5df76cbdb 100644
--- a/tests/nnapi/specs/Ex/tensorflowmax_ex_2D_float.mod.py
+++ b/tests/nnapi/specs/Ex/reduce_max_ex_2D_float.mod.py
@@ -3,7 +3,7 @@ model = Model()
i1 = Input("input", "TENSOR_FLOAT32", "{3, 4}")
axis = Int32Scalar("axis", 1)
out1 = Output("output", "TENSOR_FLOAT32", "{3}")
-model = model.Operation("TENSORFLOW_MAX_EX", i1, axis).To(out1)
+model = model.Operation("REDUCE_MAX_EX", i1, axis).To(out1)
# Example 1. Input in operand 0, 1
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/tensorflowmax_ex_2D_int32.mod.py b/tests/nnapi/specs/Ex/reduce_max_ex_2D_int32.mod.py
index 940dab3c3..94e952646 100644
--- a/tests/nnapi/specs/Ex/tensorflowmax_ex_2D_int32.mod.py
+++ b/tests/nnapi/specs/Ex/reduce_max_ex_2D_int32.mod.py
@@ -3,7 +3,7 @@ model = Model()
i1 = Input("input", "TENSOR_INT32", "{3, 4}")
axis = Int32Scalar("axis", 1)
out1 = Output("output", "TENSOR_INT32", "{3}")
-model = model.Operation("TENSORFLOW_MAX_EX", i1, axis).To(out1)
+model = model.Operation("REDUCE_MAX_EX", i1, axis).To(out1)
# Example 1. Input in operand 0, 1
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/tensorflowmax_ex_4D_float_reducing_C.mod.py b/tests/nnapi/specs/Ex/reduce_max_ex_4D_float_reducing_C.mod.py
index 82a5dbb93..4143b4b4c 100644
--- a/tests/nnapi/specs/Ex/tensorflowmax_ex_4D_float_reducing_C.mod.py
+++ b/tests/nnapi/specs/Ex/reduce_max_ex_4D_float_reducing_C.mod.py
@@ -21,7 +21,7 @@ i1 = Input("input", "TENSOR_FLOAT32", "{%d, %d, %d, %d}" % (batch, rows, cols, d
axis = Parameter("axis", "TENSOR_INT32", "{2}", [3, -1])
output = Output("output", "TENSOR_FLOAT32", "{%d, %d, %d}" % (batch, rows, cols))
-model = model.Operation("TENSORFLOW_MAX_EX", i1, axis).To(output)
+model = model.Operation("REDUCE_MAX_EX", i1, axis).To(output)
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/tensorflowmax_ex_4D_float_reducing_HW.mod.py b/tests/nnapi/specs/Ex/reduce_max_ex_4D_float_reducing_HW.mod.py
index a12762055..e220df7a8 100644
--- a/tests/nnapi/specs/Ex/tensorflowmax_ex_4D_float_reducing_HW.mod.py
+++ b/tests/nnapi/specs/Ex/reduce_max_ex_4D_float_reducing_HW.mod.py
@@ -21,7 +21,7 @@ i1 = Input("input", "TENSOR_FLOAT32", "{%d, %d, %d, %d}" % (batch, rows, cols, d
axis = Parameter("axis", "TENSOR_INT32", "{4}", [1, 2, -3, -2])
output = Output("output", "TENSOR_FLOAT32", "{%d, %d}" % (batch, depth))
-model = model.Operation("TENSORFLOW_MAX_EX", i1, axis).To(output)
+model = model.Operation("REDUCE_MAX_EX", i1, axis).To(output)
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/tensorflowmax_ex_float.mod.py b/tests/nnapi/specs/Ex/reduce_max_ex_float.mod.py
index 6de220721..c6387ae3d 100644
--- a/tests/nnapi/specs/Ex/tensorflowmax_ex_float.mod.py
+++ b/tests/nnapi/specs/Ex/reduce_max_ex_float.mod.py
@@ -3,7 +3,7 @@ i1 = Input("input", "TENSOR_FLOAT32", "{1, 2, 2, 1}")
axis = Parameter("axis", "TENSOR_INT32", "{1}", [2])
output = Output("output", "TENSOR_FLOAT32", "{1, 2, 1}")
-model = model.Operation("TENSORFLOW_MAX_EX", i1, axis).To(output)
+model = model.Operation("REDUCE_MAX_EX", i1, axis).To(output)
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/tensorflowmax_ex_float_1.mod.py b/tests/nnapi/specs/Ex/reduce_max_ex_float_1.mod.py
index 42dc9d94b..7871c6123 100644
--- a/tests/nnapi/specs/Ex/tensorflowmax_ex_float_1.mod.py
+++ b/tests/nnapi/specs/Ex/reduce_max_ex_float_1.mod.py
@@ -3,7 +3,7 @@ i1 = Input("input", "TENSOR_FLOAT32", "{4, 3, 2}")
axis = Parameter("axis", "TENSOR_INT32", "{4}", [1, 0, -3, -3])
output = Output("output", "TENSOR_FLOAT32", "{2}")
-model = model.Operation("TENSORFLOW_MAX_EX", i1, axis).To(output)
+model = model.Operation("REDUCE_MAX_EX", i1, axis).To(output)
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/tensorflowmax_ex_float_2.mod.py b/tests/nnapi/specs/Ex/reduce_max_ex_float_2.mod.py
index 98c0d9d03..fb523b294 100644
--- a/tests/nnapi/specs/Ex/tensorflowmax_ex_float_2.mod.py
+++ b/tests/nnapi/specs/Ex/reduce_max_ex_float_2.mod.py
@@ -3,7 +3,7 @@ i1 = Input("input", "TENSOR_FLOAT32", "{4, 3, 2}")
axis = Parameter("axis", "TENSOR_INT32", "{2}", [0, 2])
output = Output("output", "TENSOR_FLOAT32", "{1, 3, 1}")
-model = model.Operation("TENSORFLOW_MAX_EX", i1, axis).To(output)
+model = model.Operation("REDUCE_MAX_EX", i1, axis).To(output)
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/tensorflowmax_ex_quant8_1.mod.py b/tests/nnapi/specs/Ex/reduce_max_ex_quant8_1.mod.py
index 8e85633b3..9cef1def4 100644
--- a/tests/nnapi/specs/Ex/tensorflowmax_ex_quant8_1.mod.py
+++ b/tests/nnapi/specs/Ex/reduce_max_ex_quant8_1.mod.py
@@ -3,7 +3,7 @@ i1 = Input("input", "TENSOR_QUANT8_ASYMM", "{4, 3, 2}, 0.8, 5")
axis = Parameter("axis", "TENSOR_INT32", "{4}", [1, 0, -3, -3])
output = Output("output", "TENSOR_QUANT8_ASYMM", "{2}, 0.8, 5")
-model = model.Operation("TENSORFLOW_MAX_EX", i1, axis).To(output)
+model = model.Operation("REDUCE_MAX_EX", i1, axis).To(output)
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/tensorflowmax_ex_quant8_2.mod.py b/tests/nnapi/specs/Ex/reduce_max_ex_quant8_2.mod.py
index 75138b14a..d59c11b0e 100644
--- a/tests/nnapi/specs/Ex/tensorflowmax_ex_quant8_2.mod.py
+++ b/tests/nnapi/specs/Ex/reduce_max_ex_quant8_2.mod.py
@@ -3,7 +3,7 @@ i1 = Input("input", "TENSOR_QUANT8_ASYMM", "{4, 3, 2}, 0.8, 5")
axis = Parameter("axis", "TENSOR_INT32", "{2}", [0, 2])
output = Output("output", "TENSOR_QUANT8_ASYMM", "{1, 3, 1}, 0.8, 5")
-model = model.Operation("TENSORFLOW_MAX_EX", i1, axis).To(output)
+model = model.Operation("REDUCE_MAX_EX", i1, axis).To(output)
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/split_ex_1D_float.mod.py b/tests/nnapi/specs/Ex/split_ex_1D_float.mod.py
index 97b61462e..137ece828 100644
--- a/tests/nnapi/specs/Ex/split_ex_1D_float.mod.py
+++ b/tests/nnapi/specs/Ex/split_ex_1D_float.mod.py
@@ -2,6 +2,7 @@
model = Model()
i1 = Input("op1", "TENSOR_FLOAT32", "{8}")
axis = Int32Scalar("axis", 0)
+num_out = Int32Scalar("num_out", 8)
i2 = Output("op2", "TENSOR_FLOAT32", "{1}")
i3 = Output("op3", "TENSOR_FLOAT32", "{1}")
i4 = Output("op4", "TENSOR_FLOAT32", "{1}")
@@ -11,7 +12,7 @@ i7 = Output("op7", "TENSOR_FLOAT32", "{1}")
i8 = Output("op8", "TENSOR_FLOAT32", "{1}")
i9 = Output("op9", "TENSOR_FLOAT32", "{1}")
-model = model.Operation("SPLIT_EX", axis, i1).To([i2, i3, i4, i5, i6, i7, i8, i9])
+model = model.Operation("SPLIT_EX", i1, axis, num_out).To([i2, i3, i4, i5, i6, i7, i8, i9])
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/split_ex_1D_int32.mod.py b/tests/nnapi/specs/Ex/split_ex_1D_int32.mod.py
index 378b37707..9bfc215f6 100644
--- a/tests/nnapi/specs/Ex/split_ex_1D_int32.mod.py
+++ b/tests/nnapi/specs/Ex/split_ex_1D_int32.mod.py
@@ -2,6 +2,7 @@
model = Model()
i1 = Input("op1", "TENSOR_INT32", "{8}")
axis = Int32Scalar("axis", 0)
+num_out = Int32Scalar("num_out", 8)
i2 = Output("op2", "TENSOR_INT32", "{1}")
i3 = Output("op3", "TENSOR_INT32", "{1}")
i4 = Output("op4", "TENSOR_INT32", "{1}")
@@ -11,7 +12,7 @@ i7 = Output("op7", "TENSOR_INT32", "{1}")
i8 = Output("op8", "TENSOR_INT32", "{1}")
i9 = Output("op9", "TENSOR_INT32", "{1}")
-model = model.Operation("SPLIT_EX", axis, i1).To([i2, i3, i4, i5, i6, i7, i8, i9])
+model = model.Operation("SPLIT_EX", i1, axis, num_out).To([i2, i3, i4, i5, i6, i7, i8, i9])
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/split_ex_4D_float_1.mod.py b/tests/nnapi/specs/Ex/split_ex_4D_float_1.mod.py
index 3059fae7c..2353a8a0f 100644
--- a/tests/nnapi/specs/Ex/split_ex_4D_float_1.mod.py
+++ b/tests/nnapi/specs/Ex/split_ex_4D_float_1.mod.py
@@ -2,9 +2,10 @@
model = Model()
i1 = Input("op1", "TENSOR_FLOAT32", "{2,2,2,2}")
axis = Int32Scalar("axis", 0)
+num_out = Int32Scalar("num_out", 2)
i2 = Output("op2", "TENSOR_FLOAT32", "{1,2,2,2}")
i3 = Output("op3", "TENSOR_FLOAT32", "{1,2,2,2}")
-model = model.Operation("SPLIT_EX", axis, i1).To([i2, i3])
+model = model.Operation("SPLIT_EX", i1, axis, num_out).To([i2, i3])
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/split_ex_4D_float_2.mod.py b/tests/nnapi/specs/Ex/split_ex_4D_float_2.mod.py
index faa59bc3c..30ecf2416 100644
--- a/tests/nnapi/specs/Ex/split_ex_4D_float_2.mod.py
+++ b/tests/nnapi/specs/Ex/split_ex_4D_float_2.mod.py
@@ -2,9 +2,10 @@
model = Model()
i1 = Input("op1", "TENSOR_FLOAT32", "{2,2,2,2}")
axis = Int32Scalar("axis", 3)
+num_out = Int32Scalar("num_out", 2)
i2 = Output("op2", "TENSOR_FLOAT32", "{2,2,2,1}")
i3 = Output("op3", "TENSOR_FLOAT32", "{2,2,2,1}")
-model = model.Operation("SPLIT_EX", axis, i1).To([i2, i3])
+model = model.Operation("SPLIT_EX", i1, axis, num_out).To([i2, i3])
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/split_ex_4D_float_3.mod.py b/tests/nnapi/specs/Ex/split_ex_4D_float_3.mod.py
index 2091e4b4a..1f7a07880 100644
--- a/tests/nnapi/specs/Ex/split_ex_4D_float_3.mod.py
+++ b/tests/nnapi/specs/Ex/split_ex_4D_float_3.mod.py
@@ -2,9 +2,10 @@
model = Model()
i1 = Input("op1", "TENSOR_FLOAT32", "{2,2,2,2}")
axis = Int32Scalar("axis", -4) # Negative axis
+num_out = Int32Scalar("num_out", 2)
i2 = Output("op2", "TENSOR_FLOAT32", "{1,2,2,2}")
i3 = Output("op3", "TENSOR_FLOAT32", "{1,2,2,2}")
-model = model.Operation("SPLIT_EX", axis, i1).To([i2, i3])
+model = model.Operation("SPLIT_EX", i1, axis, num_out).To([i2, i3])
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/split_ex_4D_int32_1.mod.py b/tests/nnapi/specs/Ex/split_ex_4D_int32_1.mod.py
index 3e9438f50..b1c6692ee 100644
--- a/tests/nnapi/specs/Ex/split_ex_4D_int32_1.mod.py
+++ b/tests/nnapi/specs/Ex/split_ex_4D_int32_1.mod.py
@@ -2,9 +2,10 @@
model = Model()
i1 = Input("op1", "TENSOR_INT32", "{2,2,2,2}")
axis = Int32Scalar("axis", 0)
+num_out = Int32Scalar("num_out", 2)
i2 = Output("op2", "TENSOR_INT32", "{1,2,2,2}")
i3 = Output("op3", "TENSOR_INT32", "{1,2,2,2}")
-model = model.Operation("SPLIT_EX", axis, i1).To([i2, i3])
+model = model.Operation("SPLIT_EX", i1, axis, num_out).To([i2, i3])
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/split_ex_4D_int32_2.mod.py b/tests/nnapi/specs/Ex/split_ex_4D_int32_2.mod.py
index 83253cb14..88a7cca48 100644
--- a/tests/nnapi/specs/Ex/split_ex_4D_int32_2.mod.py
+++ b/tests/nnapi/specs/Ex/split_ex_4D_int32_2.mod.py
@@ -2,9 +2,10 @@
model = Model()
i1 = Input("op1", "TENSOR_INT32", "{2,2,2,2}")
axis = Int32Scalar("axis", 1)
+num_out = Int32Scalar("num_out", 2)
i2 = Output("op2", "TENSOR_INT32", "{2,1,2,2}")
i3 = Output("op3", "TENSOR_INT32", "{2,1,2,2}")
-model = model.Operation("SPLIT_EX", axis, i1).To([i2, i3])
+model = model.Operation("SPLIT_EX", i1, axis, num_out).To([i2, i3])
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/split_ex_4D_int32_3.mod.py b/tests/nnapi/specs/Ex/split_ex_4D_int32_3.mod.py
index b20b2053b..6f5cc621b 100644
--- a/tests/nnapi/specs/Ex/split_ex_4D_int32_3.mod.py
+++ b/tests/nnapi/specs/Ex/split_ex_4D_int32_3.mod.py
@@ -2,9 +2,10 @@
model = Model()
i1 = Input("op1", "TENSOR_INT32", "{2,2,2,2}")
axis = Int32Scalar("axis", 2)
+num_out = Int32Scalar("num_out", 2)
i2 = Output("op2", "TENSOR_INT32", "{2,2,1,2}")
i3 = Output("op3", "TENSOR_INT32", "{2,2,1,2}")
-model = model.Operation("SPLIT_EX", axis, i1).To([i2, i3])
+model = model.Operation("SPLIT_EX", i1, axis, num_out).To([i2, i3])
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/split_ex_4D_int32_4.mod.py b/tests/nnapi/specs/Ex/split_ex_4D_int32_4.mod.py
index 3c255cc48..fb6710171 100644
--- a/tests/nnapi/specs/Ex/split_ex_4D_int32_4.mod.py
+++ b/tests/nnapi/specs/Ex/split_ex_4D_int32_4.mod.py
@@ -2,9 +2,10 @@
model = Model()
i1 = Input("op1", "TENSOR_INT32", "{2,2,2,2}")
axis = Int32Scalar("axis", 3)
+num_out = Int32Scalar("num_out", 2)
i2 = Output("op2", "TENSOR_INT32", "{2,2,2,1}")
i3 = Output("op3", "TENSOR_INT32", "{2,2,2,1}")
-model = model.Operation("SPLIT_EX", axis, i1).To([i2, i3])
+model = model.Operation("SPLIT_EX", i1, axis, num_out).To([i2, i3])
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/split_ex_4D_int32_5.mod.py b/tests/nnapi/specs/Ex/split_ex_4D_int32_5.mod.py
index 30e5e245d..338794855 100644
--- a/tests/nnapi/specs/Ex/split_ex_4D_int32_5.mod.py
+++ b/tests/nnapi/specs/Ex/split_ex_4D_int32_5.mod.py
@@ -2,9 +2,10 @@
model = Model()
i1 = Input("op1", "TENSOR_INT32", "{2,2,2,2}")
axis = Int32Scalar("axis", -4) # Negative axis
+num_out = Int32Scalar("num_out", 2)
i2 = Output("op2", "TENSOR_INT32", "{1,2,2,2}")
i3 = Output("op3", "TENSOR_INT32", "{1,2,2,2}")
-model = model.Operation("SPLIT_EX", axis, i1).To([i2, i3])
+model = model.Operation("SPLIT_EX", i1, axis, num_out).To([i2, i3])
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/split_ex_4D_quant8.mod.py b/tests/nnapi/specs/Ex/split_ex_4D_quant8.mod.py
index 46cb3ab78..a3dbffaa9 100644
--- a/tests/nnapi/specs/Ex/split_ex_4D_quant8.mod.py
+++ b/tests/nnapi/specs/Ex/split_ex_4D_quant8.mod.py
@@ -2,9 +2,10 @@
model = Model()
i1 = Input("op1", "TENSOR_QUANT8_ASYMM", "{2,2,2,2}, 0.5f, 1")
axis = Int32Scalar("axis", 0)
+num_out = Int32Scalar("num_out", 2)
i2 = Output("op2", "TENSOR_QUANT8_ASYMM", "{1,2,2,2}, 0.5f, 1")
i3 = Output("op3", "TENSOR_QUANT8_ASYMM", "{1,2,2,2}, 0.5f, 1")
-model = model.Operation("SPLIT_EX", axis, i1).To([i2, i3])
+model = model.Operation("SPLIT_EX", i1, axis, num_out).To([i2, i3])
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/Ex/transpose_conv_ex_float_4.mod.py b/tests/nnapi/specs/Ex/transpose_conv_ex_float_4.mod.py
new file mode 100644
index 000000000..71383b4c1
--- /dev/null
+++ b/tests/nnapi/specs/Ex/transpose_conv_ex_float_4.mod.py
@@ -0,0 +1,56 @@
+# model
+model = Model()
+i0 = Input("op_shape", "TENSOR_INT32", "{4}")
+weights = Input("ker", "TENSOR_FLOAT32", "{1, 3, 3, 1}")
+i1 = Input("in", "TENSOR_FLOAT32", "{1, 4, 4, 1}" )
+pad = Int32Scalar("pad_same", 1)
+s_x = Int32Scalar("stride_x", 2)
+s_y = Int32Scalar("stride_y", 2)
+i2 = Output("op", "TENSOR_FLOAT32", "{1, 8, 8, 1}")
+model = model.Operation("TRANSPOSE_CONV_EX", i0, weights, i1, pad, s_x, s_y).To(i2)
+
+batch = 1
+in_chans = 1
+out_chans = 1
+in_rows = 4
+in_cols = 4
+out_rows = 8
+out_cols = 8
+ker_rows = 3
+ker_cols = 3
+stride = 2
+# pad is 0 (left: 0 right: 1 top: 0 bottom: 1)
+input_table = [x for x in range(batch * in_rows * in_cols * in_chans)]
+kernel_table = [x for x in range(out_chans * ker_rows * ker_cols * in_chans)]
+out_table = [0 for x in range(batch * out_rows * out_cols * out_chans)]
+
+for i in range(batch):
+ for j in range(in_rows):
+ for k in range(in_cols):
+ for l in range(in_chans):
+ out_row_origin = j * stride
+ out_col_origin = k * stride
+ input_value = input_table[((i * in_rows + j) * in_cols + k) * in_chans + l]
+
+ for m in range(ker_rows):
+ for n in range(ker_cols):
+ for o in range(out_chans):
+ out_row = out_row_origin + m
+ out_col = out_col_origin + n
+ if (out_row < out_rows) and (out_col < out_cols) and (out_row >= 0) and (out_col >= 0):
+ kernel_value = kernel_table[((o * ker_rows + m) * ker_cols + n) * in_chans + l]
+ out_table[((i * out_rows + out_row) * out_cols + out_col) * out_chans + o] += (input_value * kernel_value)
+
+# Example 1. Input in operand 0,
+input0 = {i0: # output shape
+ [1, 8, 8, 1],
+ i1: # input 0
+ input_table,
+ weights: # input 1
+ kernel_table}
+
+output0 = {i2: # output 0
+ out_table}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/transpose_conv_ex_int_1.mod.py b/tests/nnapi/specs/Ex/transpose_conv_ex_int_1.mod.py
deleted file mode 100644
index fb8eb72be..000000000
--- a/tests/nnapi/specs/Ex/transpose_conv_ex_int_1.mod.py
+++ /dev/null
@@ -1,24 +0,0 @@
-# model
-model = Model()
-i0 = Input("op_shape", "TENSOR_INT32", "{4}")
-weights = Input("ker", "TENSOR_INT32", "{1, 3, 3, 1}")
-i1 = Input("in", "TENSOR_INT32", "{1, 4, 4, 1}" )
-pad = Int32Scalar("pad_same", 1)
-s_x = Int32Scalar("stride_x", 1)
-s_y = Int32Scalar("stride_y", 1)
-i2 = Output("op", "TENSOR_INT32", "{1, 4, 4, 1}")
-model = model.Operation("TRANSPOSE_CONV_EX", i0, weights, i1, pad, s_x, s_y).To(i2)
-
-# Example 1. Input in operand 0,
-input0 = {i0: # output shape
- [1, 4, 4, 1],
- i1: # input 0
- [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16],
- weights: # input 1
- [1, 2, 3, 4, 5, 6, 7, 8, 9]}
-
-output0 = {i2: # output 0
- [29, 62, 83, 75, 99, 192, 237, 198, 207, 372, 417, 330, 263, 446, 485, 365]}
-
-# Instantiate an example
-Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/transpose_conv_ex_int_2.mod.py b/tests/nnapi/specs/Ex/transpose_conv_ex_int_2.mod.py
deleted file mode 100644
index 9bf4b113d..000000000
--- a/tests/nnapi/specs/Ex/transpose_conv_ex_int_2.mod.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# model
-model = Model()
-i0 = Input("op_shape", "TENSOR_INT32", "{4}")
-weights = Input("ker", "TENSOR_INT32", "{1, 3, 3, 1}")
-i1 = Input("in", "TENSOR_INT32", "{1, 2, 2, 1}" )
-pad = Int32Scalar("pad_valid", 2)
-s_x = Int32Scalar("stride_x", 2)
-s_y = Int32Scalar("stride_y", 2)
-i2 = Output("op", "TENSOR_INT32", "{1, 5, 5, 1}")
-model = model.Operation("TRANSPOSE_CONV_EX", i0, weights, i1, pad, s_x, s_y).To(i2)
-
-# Example 1. Input in operand 0,
-input0 = {i0: # output shape
- [1, 5, 5, 1],
- i1: # input 0
- [1, 2, 3, 4],
- weights: # input 1
- [1, 2, 3, 4, 5, 6, 7, 8, 9]}
-
-output0 = {i2: # output 0
- [1, 2, 5, 4, 6, 4, 5, 14, 10, 12, 10, 14, 36,
- 24, 30, 12, 15, 34, 20, 24, 21, 24, 55, 32, 36]}
-
-# Instantiate an example
-Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/transpose_conv_ex_int_3.mod.py b/tests/nnapi/specs/Ex/transpose_conv_ex_int_3.mod.py
deleted file mode 100644
index e44480968..000000000
--- a/tests/nnapi/specs/Ex/transpose_conv_ex_int_3.mod.py
+++ /dev/null
@@ -1,27 +0,0 @@
-# model
-model = Model()
-i0 = Input("op_shape", "TENSOR_INT32", "{4}")
-weights = Input("ker", "TENSOR_INT32", "{2, 3, 3, 1}")
-i1 = Input("in", "TENSOR_INT32", "{1, 2, 2, 1}" )
-pad = Int32Scalar("pad_valid", 2)
-s_x = Int32Scalar("stride_x", 2)
-s_y = Int32Scalar("stride_y", 2)
-i2 = Output("op", "TENSOR_INT32", "{1, 5, 5, 2}")
-model = model.Operation("TRANSPOSE_CONV_EX", i0, weights, i1, pad, s_x, s_y).To(i2)
-
-# Example 1. Input in operand 0,
-input0 = {i0: # output shape
- [1, 5, 5, 2],
- i1: # input 0
- [1, 2, 3, 4],
- weights: # input 1
- [1, 3, 5, 7, 9, 11, 13, 15, 17, 2, 4, 6, 8, 10, 12, 14, 16, 18]}
-
-output0 = {i2: # output 0
- [1, 2, 3, 4, 7, 10, 6, 8, 10, 12, 7, 8, 9,
- 10, 25, 28, 18, 20, 22, 24, 16, 20, 24, 28, 62, 72,
- 42, 48, 54, 60, 21, 24, 27, 30, 61, 68, 36, 40, 44,
- 48, 39, 42, 45, 48, 103, 110, 60, 64, 68, 72]}
-
-# Instantiate an example
-Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/unpack_ex_3D_float_1.mod.py b/tests/nnapi/specs/Ex/unpack_ex_3D_float_1.mod.py
index e5cb38e4b..7e8ef6086 100644
--- a/tests/nnapi/specs/Ex/unpack_ex_3D_float_1.mod.py
+++ b/tests/nnapi/specs/Ex/unpack_ex_3D_float_1.mod.py
@@ -1,11 +1,11 @@
# Sample UnPack model, axis = 0
model = Model()
-input = Input("input", "TENSOR_FLOAT32", "{3, 2, 3, 4}")
+input = Input("input", "TENSOR_FLOAT32", "{3, 6, 4}")
axis = Int32Scalar("axis", 0)
num_splits = Int32Scalar("num_splits", 3)
-out1 = Output("output1", "TENSOR_FLOAT32", "{2, 3, 4}")
-out2 = Output("output2", "TENSOR_FLOAT32", "{2, 3, 4}")
-out3 = Output("output3", "TENSOR_FLOAT32", "{2, 3, 4}")
+out1 = Output("output1", "TENSOR_FLOAT32", "{6, 4}")
+out2 = Output("output2", "TENSOR_FLOAT32", "{6, 4}")
+out3 = Output("output3", "TENSOR_FLOAT32", "{6, 4}")
model = model.Operation("UNPACK_EX", input, num_splits, axis).To([out1, out2, out3])
input0 = {input: # input 0
diff --git a/tests/nnapi/specs/Ex/unpack_ex_3D_float_2.mod.py b/tests/nnapi/specs/Ex/unpack_ex_3D_float_2.mod.py
index 1d1045ae9..ed7800ad4 100644
--- a/tests/nnapi/specs/Ex/unpack_ex_3D_float_2.mod.py
+++ b/tests/nnapi/specs/Ex/unpack_ex_3D_float_2.mod.py
@@ -1,11 +1,11 @@
-# Sample UnPack model, axis = 2
+# Sample UnPack model, axis = 1
model = Model()
-input = Input("input", "TENSOR_FLOAT32", "{3, 2, 3, 4}")
-axis = Int32Scalar("axis", 2)
+input = Input("input", "TENSOR_FLOAT32", "{6, 3, 4}")
+axis = Int32Scalar("axis", 1)
num_splits = Int32Scalar("num_splits", 3)
-out1 = Output("output1", "TENSOR_FLOAT32", "{3, 2, 4}")
-out2 = Output("output2", "TENSOR_FLOAT32", "{3, 2, 4}")
-out3 = Output("output3", "TENSOR_FLOAT32", "{3, 2, 4}")
+out1 = Output("output1", "TENSOR_FLOAT32", "{6, 4}")
+out2 = Output("output2", "TENSOR_FLOAT32", "{6, 4}")
+out3 = Output("output3", "TENSOR_FLOAT32", "{6, 4}")
model = model.Operation("UNPACK_EX", input, num_splits, axis).To([out1, out2, out3])
input0 = {input: # input 0
diff --git a/tests/nnapi/specs/Ex/unpack_ex_3D_int_1.mod.py b/tests/nnapi/specs/Ex/unpack_ex_3D_int_1.mod.py
index 2a668cf7e..34e153bfc 100644
--- a/tests/nnapi/specs/Ex/unpack_ex_3D_int_1.mod.py
+++ b/tests/nnapi/specs/Ex/unpack_ex_3D_int_1.mod.py
@@ -1,11 +1,11 @@
# Sample UnPack model, axis = 0
model = Model()
-input = Input("input", "TENSOR_INT32", "{3, 2, 3, 4}")
+input = Input("input", "TENSOR_INT32", "{3, 6, 4}")
axis = Int32Scalar("axis", 0)
num_splits = Int32Scalar("num_splits", 3)
-out1 = Output("output1", "TENSOR_INT32", "{2, 3, 4}")
-out2 = Output("output2", "TENSOR_INT32", "{2, 3, 4}")
-out3 = Output("output3", "TENSOR_INT32", "{2, 3, 4}")
+out1 = Output("output1", "TENSOR_INT32", "{6, 4}")
+out2 = Output("output2", "TENSOR_INT32", "{6, 4}")
+out3 = Output("output3", "TENSOR_INT32", "{6, 4}")
model = model.Operation("UNPACK_EX", input, num_splits, axis).To([out1, out2, out3])
input0 = {input: # input 0
diff --git a/tests/nnapi/specs/Ex/unpack_ex_3D_int_2.mod.py b/tests/nnapi/specs/Ex/unpack_ex_3D_int_2.mod.py
index 115954972..db51351c5 100644
--- a/tests/nnapi/specs/Ex/unpack_ex_3D_int_2.mod.py
+++ b/tests/nnapi/specs/Ex/unpack_ex_3D_int_2.mod.py
@@ -1,11 +1,11 @@
-# Sample UnPack model, axis = 2
+# Sample UnPack model, axis = 1
model = Model()
-input = Input("input", "TENSOR_INT32", "{3, 2, 3, 4}")
-axis = Int32Scalar("axis", 2)
+input = Input("input", "TENSOR_INT32", "{6, 3, 4}")
+axis = Int32Scalar("axis", 1)
num_splits = Int32Scalar("num_splits", 3)
-out1 = Output("output1", "TENSOR_INT32", "{3, 2, 4}")
-out2 = Output("output2", "TENSOR_INT32", "{3, 2, 4}")
-out3 = Output("output3", "TENSOR_INT32", "{3, 2, 4}")
+out1 = Output("output1", "TENSOR_INT32", "{6, 4}")
+out2 = Output("output2", "TENSOR_INT32", "{6, 4}")
+out3 = Output("output3", "TENSOR_INT32", "{6, 4}")
model = model.Operation("UNPACK_EX", input, num_splits, axis).To([out1, out2, out3])
input0 = {input: # input 0
diff --git a/tests/nnapi/specs/V1_0/conv_1_h3_w2_SAME.mod.py b/tests/nnapi/specs/V1_0/conv_1_h3_w2_SAME.mod.py
index 34f2c49f9..45a356927 100644
--- a/tests/nnapi/specs/V1_0/conv_1_h3_w2_SAME.mod.py
+++ b/tests/nnapi/specs/V1_0/conv_1_h3_w2_SAME.mod.py
@@ -7,7 +7,7 @@ i2 = Input("op2", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # input 0
i3 = Output("op3", "TENSOR_FLOAT32", "{1, 8, 8, 1}") # output 0
i0 = Parameter("op0", "TENSOR_FLOAT32", "{1, 3, 2, 3}", [-0.966213, -0.467474, -0.82203, -0.579455, 0.0278809, -0.79946, -0.684259, 0.563238, 0.37289, 0.738216, 0.386045, -0.917775, 0.184325, -0.270568, 0.82236, 0.0973683, -0.941308, -0.144706]) # parameters
i1 = Parameter("op1", "TENSOR_FLOAT32", "{1}", [0]) # parameters
-model = model.Conv(i2, i0, i1, i4, i5, i6, i7).To(i3)
+model = model.Operation("CONV_2D", i2, i0, i1, i4, i5, i6, i7).To(i3)
input0 = {i2: [-0.869931, 0.644628, -0.918393, 0.153672, 0.868562, -0.358177, -0.134931, -0.247565, 0.22174, -0.259157, -0.284296, -0.538065, 0.765559, 0.41986, -0.556241, 0.658494, 0.214355, -0.850169, -0.252893, -0.478935, 0.530526, -0.0700663, -0.988729, -0.303061, 0.150845, 0.829915, 0.476349, 0.406537, -0.355343, 0.757145, -0.356362, 0.800482, -0.713861, 0.210483, -0.634303, 0.718236, -0.752038, 0.457547, -0.550769, -0.551178, 0.446766, -0.227462, 0.216348, -0.852806, -0.351486, 0.55906, -0.668493, -0.303493, -0.363763, -0.162837, 0.0701012, 0.756097, -0.142269, 0.329724, -0.656317, -0.998086, -0.652949, -0.40316, -0.893682, 0.432744, 0.612362, -0.869588, -0.71327, -0.398092, -0.0423559, 0.436576, -0.925272, 0.176549, 0.822904, 0.096833, -0.296802, -0.427195, 0.031654, -0.254479, 0.244905, 0.0948254, 0.643769, -0.90391, 0.352665, -0.901179, 0.266159, -0.968068, -0.615401, -0.388975, 0.939052, -0.116289, 0.107523, -0.0582711, 0.435172, 0.334675, 0.459711, 0.717436, 0.496627, -0.680175, -0.415066, 0.339848, 0.506004, -0.337808, -0.107218, -0.172496, 0.870638, 0.931872, -0.953884, 0.903042, 0.760078, 0.209727, -0.285384, -0.45514, 0.113194, 0.0756611, 0.0924435, -0.472863, 0.960609, -0.160385, -0.839445, 0.457097, 0.163348, 0.344867, -0.131619, 0.688715, -0.540827, 0.571259, -0.95587, 0.506164, -0.155839, 0.0789621, 0.756772, -0.662069, 0.242908, 0.460821, 0.177872, -0.289839, -0.640603, 0.702598, -0.506406, -0.568262, -0.0713716, 0.413792, 0.159673, -0.305208, 0.133816, -0.160254, 0.787323, -0.753244, 0.600721, 0.263186, -0.162387, 0.477962, -0.702951, -0.731036, -0.939481, -0.524519, 0.934072, -0.511637, -0.503499, 0.106236, -0.323684, 0.534444, -0.843745, 0.364171, 0.0370358, -0.168801, -0.404559, -0.814178, 0.91745, -0.334276, 0.66925, -0.801201, 0.156511, -0.427949, 0.379153, 0.818597, -0.649902, 0.427087, -0.586015, -0.559789, -0.833923, 0.0892409, -0.621251, 0.213826, 0.465509, 0.4704, 0.380261, 0.413067, 0.180822, 0.172866, 0.59614, 0.825575, 0.662916, -0.704381, -0.297631, 0.697778]}
diff --git a/tests/nnapi/specs/V1_0/conv_1_h3_w2_VALID.mod.py b/tests/nnapi/specs/V1_0/conv_1_h3_w2_VALID.mod.py
index 3a4a2a1aa..0e0974371 100644
--- a/tests/nnapi/specs/V1_0/conv_1_h3_w2_VALID.mod.py
+++ b/tests/nnapi/specs/V1_0/conv_1_h3_w2_VALID.mod.py
@@ -7,7 +7,7 @@ i2 = Input("op2", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # input 0
i3 = Output("op3", "TENSOR_FLOAT32", "{1, 6, 7, 1}") # output 0
i0 = Parameter("op0", "TENSOR_FLOAT32", "{1, 3, 2, 3}", [-0.966213, -0.467474, -0.82203, -0.579455, 0.0278809, -0.79946, -0.684259, 0.563238, 0.37289, 0.738216, 0.386045, -0.917775, 0.184325, -0.270568, 0.82236, 0.0973683, -0.941308, -0.144706]) # parameters
i1 = Parameter("op1", "TENSOR_FLOAT32", "{1}", [0]) # parameters
-model = model.Conv(i2, i0, i1, i4, i5, i6, i7).To(i3)
+model = model.Operation("CONV_2D", i2, i0, i1, i4, i5, i6, i7).To(i3)
input0 = {i2: [-0.869931, 0.644628, -0.918393, 0.153672, 0.868562, -0.358177, -0.134931, -0.247565, 0.22174, -0.259157, -0.284296, -0.538065, 0.765559, 0.41986, -0.556241, 0.658494, 0.214355, -0.850169, -0.252893, -0.478935, 0.530526, -0.0700663, -0.988729, -0.303061, 0.150845, 0.829915, 0.476349, 0.406537, -0.355343, 0.757145, -0.356362, 0.800482, -0.713861, 0.210483, -0.634303, 0.718236, -0.752038, 0.457547, -0.550769, -0.551178, 0.446766, -0.227462, 0.216348, -0.852806, -0.351486, 0.55906, -0.668493, -0.303493, -0.363763, -0.162837, 0.0701012, 0.756097, -0.142269, 0.329724, -0.656317, -0.998086, -0.652949, -0.40316, -0.893682, 0.432744, 0.612362, -0.869588, -0.71327, -0.398092, -0.0423559, 0.436576, -0.925272, 0.176549, 0.822904, 0.096833, -0.296802, -0.427195, 0.031654, -0.254479, 0.244905, 0.0948254, 0.643769, -0.90391, 0.352665, -0.901179, 0.266159, -0.968068, -0.615401, -0.388975, 0.939052, -0.116289, 0.107523, -0.0582711, 0.435172, 0.334675, 0.459711, 0.717436, 0.496627, -0.680175, -0.415066, 0.339848, 0.506004, -0.337808, -0.107218, -0.172496, 0.870638, 0.931872, -0.953884, 0.903042, 0.760078, 0.209727, -0.285384, -0.45514, 0.113194, 0.0756611, 0.0924435, -0.472863, 0.960609, -0.160385, -0.839445, 0.457097, 0.163348, 0.344867, -0.131619, 0.688715, -0.540827, 0.571259, -0.95587, 0.506164, -0.155839, 0.0789621, 0.756772, -0.662069, 0.242908, 0.460821, 0.177872, -0.289839, -0.640603, 0.702598, -0.506406, -0.568262, -0.0713716, 0.413792, 0.159673, -0.305208, 0.133816, -0.160254, 0.787323, -0.753244, 0.600721, 0.263186, -0.162387, 0.477962, -0.702951, -0.731036, -0.939481, -0.524519, 0.934072, -0.511637, -0.503499, 0.106236, -0.323684, 0.534444, -0.843745, 0.364171, 0.0370358, -0.168801, -0.404559, -0.814178, 0.91745, -0.334276, 0.66925, -0.801201, 0.156511, -0.427949, 0.379153, 0.818597, -0.649902, 0.427087, -0.586015, -0.559789, -0.833923, 0.0892409, -0.621251, 0.213826, 0.465509, 0.4704, 0.380261, 0.413067, 0.180822, 0.172866, 0.59614, 0.825575, 0.662916, -0.704381, -0.297631, 0.697778]}
diff --git a/tests/nnapi/specs/V1_0/conv_3_h3_w2_SAME.mod.py b/tests/nnapi/specs/V1_0/conv_3_h3_w2_SAME.mod.py
index d7df3a34f..3ba4bad52 100644
--- a/tests/nnapi/specs/V1_0/conv_3_h3_w2_SAME.mod.py
+++ b/tests/nnapi/specs/V1_0/conv_3_h3_w2_SAME.mod.py
@@ -7,7 +7,7 @@ i2 = Input("op2", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # input 0
i3 = Output("op3", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # output 0
i0 = Parameter("op0", "TENSOR_FLOAT32", "{3, 3, 2, 3}", [-0.966213, -0.579455, -0.684259, 0.738216, 0.184325, 0.0973683, -0.176863, -0.23936, -0.000233404, 0.055546, -0.232658, -0.316404, -0.012904, 0.320705, -0.326657, -0.919674, 0.868081, -0.824608, -0.467474, 0.0278809, 0.563238, 0.386045, -0.270568, -0.941308, -0.779227, -0.261492, -0.774804, -0.79665, 0.22473, -0.414312, 0.685897, -0.327792, 0.77395, -0.714578, -0.972365, 0.0696099, -0.82203, -0.79946, 0.37289, -0.917775, 0.82236, -0.144706, -0.167188, 0.268062, 0.702641, -0.412223, 0.755759, 0.721547, -0.43637, -0.274905, -0.269165, 0.16102, 0.819857, -0.312008]) # parameters
i1 = Parameter("op1", "TENSOR_FLOAT32", "{3}", [0, 0, 0]) # parameters
-model = model.Conv(i2, i0, i1, i4, i5, i6, i7).To(i3)
+model = model.Operation("CONV_2D", i2, i0, i1, i4, i5, i6, i7).To(i3)
input0 = {i2: [-0.869931, 0.644628, -0.918393, 0.153672, 0.868562, -0.358177, -0.134931, -0.247565, 0.22174, -0.259157, -0.284296, -0.538065, 0.765559, 0.41986, -0.556241, 0.658494, 0.214355, -0.850169, -0.252893, -0.478935, 0.530526, -0.0700663, -0.988729, -0.303061, 0.150845, 0.829915, 0.476349, 0.406537, -0.355343, 0.757145, -0.356362, 0.800482, -0.713861, 0.210483, -0.634303, 0.718236, -0.752038, 0.457547, -0.550769, -0.551178, 0.446766, -0.227462, 0.216348, -0.852806, -0.351486, 0.55906, -0.668493, -0.303493, -0.363763, -0.162837, 0.0701012, 0.756097, -0.142269, 0.329724, -0.656317, -0.998086, -0.652949, -0.40316, -0.893682, 0.432744, 0.612362, -0.869588, -0.71327, -0.398092, -0.0423559, 0.436576, -0.925272, 0.176549, 0.822904, 0.096833, -0.296802, -0.427195, 0.031654, -0.254479, 0.244905, 0.0948254, 0.643769, -0.90391, 0.352665, -0.901179, 0.266159, -0.968068, -0.615401, -0.388975, 0.939052, -0.116289, 0.107523, -0.0582711, 0.435172, 0.334675, 0.459711, 0.717436, 0.496627, -0.680175, -0.415066, 0.339848, 0.506004, -0.337808, -0.107218, -0.172496, 0.870638, 0.931872, -0.953884, 0.903042, 0.760078, 0.209727, -0.285384, -0.45514, 0.113194, 0.0756611, 0.0924435, -0.472863, 0.960609, -0.160385, -0.839445, 0.457097, 0.163348, 0.344867, -0.131619, 0.688715, -0.540827, 0.571259, -0.95587, 0.506164, -0.155839, 0.0789621, 0.756772, -0.662069, 0.242908, 0.460821, 0.177872, -0.289839, -0.640603, 0.702598, -0.506406, -0.568262, -0.0713716, 0.413792, 0.159673, -0.305208, 0.133816, -0.160254, 0.787323, -0.753244, 0.600721, 0.263186, -0.162387, 0.477962, -0.702951, -0.731036, -0.939481, -0.524519, 0.934072, -0.511637, -0.503499, 0.106236, -0.323684, 0.534444, -0.843745, 0.364171, 0.0370358, -0.168801, -0.404559, -0.814178, 0.91745, -0.334276, 0.66925, -0.801201, 0.156511, -0.427949, 0.379153, 0.818597, -0.649902, 0.427087, -0.586015, -0.559789, -0.833923, 0.0892409, -0.621251, 0.213826, 0.465509, 0.4704, 0.380261, 0.413067, 0.180822, 0.172866, 0.59614, 0.825575, 0.662916, -0.704381, -0.297631, 0.697778]}
diff --git a/tests/nnapi/specs/V1_0/conv_3_h3_w2_VALID.mod.py b/tests/nnapi/specs/V1_0/conv_3_h3_w2_VALID.mod.py
index a7ab91f33..545e9fdc6 100644
--- a/tests/nnapi/specs/V1_0/conv_3_h3_w2_VALID.mod.py
+++ b/tests/nnapi/specs/V1_0/conv_3_h3_w2_VALID.mod.py
@@ -7,7 +7,7 @@ i2 = Input("op2", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # input 0
i3 = Output("op3", "TENSOR_FLOAT32", "{1, 6, 7, 3}") # output 0
i0 = Parameter("op0", "TENSOR_FLOAT32", "{3, 3, 2, 3}", [-0.966213, -0.579455, -0.684259, 0.738216, 0.184325, 0.0973683, -0.176863, -0.23936, -0.000233404, 0.055546, -0.232658, -0.316404, -0.012904, 0.320705, -0.326657, -0.919674, 0.868081, -0.824608, -0.467474, 0.0278809, 0.563238, 0.386045, -0.270568, -0.941308, -0.779227, -0.261492, -0.774804, -0.79665, 0.22473, -0.414312, 0.685897, -0.327792, 0.77395, -0.714578, -0.972365, 0.0696099, -0.82203, -0.79946, 0.37289, -0.917775, 0.82236, -0.144706, -0.167188, 0.268062, 0.702641, -0.412223, 0.755759, 0.721547, -0.43637, -0.274905, -0.269165, 0.16102, 0.819857, -0.312008]) # parameters
i1 = Parameter("op1", "TENSOR_FLOAT32", "{3}", [0, 0, 0]) # parameters
-model = model.Conv(i2, i0, i1, i4, i5, i6, i7).To(i3)
+model = model.Operation("CONV_2D", i2, i0, i1, i4, i5, i6, i7).To(i3)
input0 = {i2: [-0.869931, 0.644628, -0.918393, 0.153672, 0.868562, -0.358177, -0.134931, -0.247565, 0.22174, -0.259157, -0.284296, -0.538065, 0.765559, 0.41986, -0.556241, 0.658494, 0.214355, -0.850169, -0.252893, -0.478935, 0.530526, -0.0700663, -0.988729, -0.303061, 0.150845, 0.829915, 0.476349, 0.406537, -0.355343, 0.757145, -0.356362, 0.800482, -0.713861, 0.210483, -0.634303, 0.718236, -0.752038, 0.457547, -0.550769, -0.551178, 0.446766, -0.227462, 0.216348, -0.852806, -0.351486, 0.55906, -0.668493, -0.303493, -0.363763, -0.162837, 0.0701012, 0.756097, -0.142269, 0.329724, -0.656317, -0.998086, -0.652949, -0.40316, -0.893682, 0.432744, 0.612362, -0.869588, -0.71327, -0.398092, -0.0423559, 0.436576, -0.925272, 0.176549, 0.822904, 0.096833, -0.296802, -0.427195, 0.031654, -0.254479, 0.244905, 0.0948254, 0.643769, -0.90391, 0.352665, -0.901179, 0.266159, -0.968068, -0.615401, -0.388975, 0.939052, -0.116289, 0.107523, -0.0582711, 0.435172, 0.334675, 0.459711, 0.717436, 0.496627, -0.680175, -0.415066, 0.339848, 0.506004, -0.337808, -0.107218, -0.172496, 0.870638, 0.931872, -0.953884, 0.903042, 0.760078, 0.209727, -0.285384, -0.45514, 0.113194, 0.0756611, 0.0924435, -0.472863, 0.960609, -0.160385, -0.839445, 0.457097, 0.163348, 0.344867, -0.131619, 0.688715, -0.540827, 0.571259, -0.95587, 0.506164, -0.155839, 0.0789621, 0.756772, -0.662069, 0.242908, 0.460821, 0.177872, -0.289839, -0.640603, 0.702598, -0.506406, -0.568262, -0.0713716, 0.413792, 0.159673, -0.305208, 0.133816, -0.160254, 0.787323, -0.753244, 0.600721, 0.263186, -0.162387, 0.477962, -0.702951, -0.731036, -0.939481, -0.524519, 0.934072, -0.511637, -0.503499, 0.106236, -0.323684, 0.534444, -0.843745, 0.364171, 0.0370358, -0.168801, -0.404559, -0.814178, 0.91745, -0.334276, 0.66925, -0.801201, 0.156511, -0.427949, 0.379153, 0.818597, -0.649902, 0.427087, -0.586015, -0.559789, -0.833923, 0.0892409, -0.621251, 0.213826, 0.465509, 0.4704, 0.380261, 0.413067, 0.180822, 0.172866, 0.59614, 0.825575, 0.662916, -0.704381, -0.297631, 0.697778]}
diff --git a/tests/nnapi/specs/V1_0/depthwise_conv.mod.py b/tests/nnapi/specs/V1_0/depthwise_conv.mod.py
index d88206fdd..5e7886d26 100644
--- a/tests/nnapi/specs/V1_0/depthwise_conv.mod.py
+++ b/tests/nnapi/specs/V1_0/depthwise_conv.mod.py
@@ -8,7 +8,7 @@ i2 = Input("op2", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # input 0
i3 = Output("op3", "TENSOR_FLOAT32", "{1, 8, 8, 3}") # output 0
i0 = Parameter("op0", "TENSOR_FLOAT32", "{1, 1, 1, 3}", [-0.966213, -0.467474, -0.82203]) # parameters
i1 = Parameter("op1", "TENSOR_FLOAT32", "{3}", [0, 0, 0]) # parameters
-model = model.DepthWiseConv(i2, i0, i1, i4, i5, i6, i7, i8).To(i3)
+model = model.Operation("DEPTHWISE_CONV_2D", i2, i0, i1, i4, i5, i6, i7, i8).To(i3)
input0 = {i2: [-0.869931, 0.644628, -0.918393, 0.153672, 0.868562, -0.358177, -0.134931, -0.247565, 0.22174, -0.259157, -0.284296, -0.538065, 0.765559, 0.41986, -0.556241, 0.658494, 0.214355, -0.850169, -0.252893, -0.478935, 0.530526, -0.0700663, -0.988729, -0.303061, 0.150845, 0.829915, 0.476349, 0.406537, -0.355343, 0.757145, -0.356362, 0.800482, -0.713861, 0.210483, -0.634303, 0.718236, -0.752038, 0.457547, -0.550769, -0.551178, 0.446766, -0.227462, 0.216348, -0.852806, -0.351486, 0.55906, -0.668493, -0.303493, -0.363763, -0.162837, 0.0701012, 0.756097, -0.142269, 0.329724, -0.656317, -0.998086, -0.652949, -0.40316, -0.893682, 0.432744, 0.612362, -0.869588, -0.71327, -0.398092, -0.0423559, 0.436576, -0.925272, 0.176549, 0.822904, 0.096833, -0.296802, -0.427195, 0.031654, -0.254479, 0.244905, 0.0948254, 0.643769, -0.90391, 0.352665, -0.901179, 0.266159, -0.968068, -0.615401, -0.388975, 0.939052, -0.116289, 0.107523, -0.0582711, 0.435172, 0.334675, 0.459711, 0.717436, 0.496627, -0.680175, -0.415066, 0.339848, 0.506004, -0.337808, -0.107218, -0.172496, 0.870638, 0.931872, -0.953884, 0.903042, 0.760078, 0.209727, -0.285384, -0.45514, 0.113194, 0.0756611, 0.0924435, -0.472863, 0.960609, -0.160385, -0.839445, 0.457097, 0.163348, 0.344867, -0.131619, 0.688715, -0.540827, 0.571259, -0.95587, 0.506164, -0.155839, 0.0789621, 0.756772, -0.662069, 0.242908, 0.460821, 0.177872, -0.289839, -0.640603, 0.702598, -0.506406, -0.568262, -0.0713716, 0.413792, 0.159673, -0.305208, 0.133816, -0.160254, 0.787323, -0.753244, 0.600721, 0.263186, -0.162387, 0.477962, -0.702951, -0.731036, -0.939481, -0.524519, 0.934072, -0.511637, -0.503499, 0.106236, -0.323684, 0.534444, -0.843745, 0.364171, 0.0370358, -0.168801, -0.404559, -0.814178, 0.91745, -0.334276, 0.66925, -0.801201, 0.156511, -0.427949, 0.379153, 0.818597, -0.649902, 0.427087, -0.586015, -0.559789, -0.833923, 0.0892409, -0.621251, 0.213826, 0.465509, 0.4704, 0.380261, 0.413067, 0.180822, 0.172866, 0.59614, 0.825575, 0.662916, -0.704381, -0.297631, 0.697778]}
diff --git a/tests/nnapi/specs/V1_0/lstm3.mod.py b/tests/nnapi/specs/V1_0/lstm3.mod.py
index a9d2bf884..3abbaa001 100644
--- a/tests/nnapi/specs/V1_0/lstm3.mod.py
+++ b/tests/nnapi/specs/V1_0/lstm3.mod.py
@@ -60,7 +60,6 @@ output_state_out = Output("output_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_
cell_state_out = Output("cell_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_cell))
output = Output("output", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
-# TODO: need support for more than one output
model = model.Operation("LSTM",
input,
diff --git a/tests/nnapi/specs/V1_0/lstm3_state.mod.py b/tests/nnapi/specs/V1_0/lstm3_state.mod.py
index 1fd91a91e..18a2d11f3 100644
--- a/tests/nnapi/specs/V1_0/lstm3_state.mod.py
+++ b/tests/nnapi/specs/V1_0/lstm3_state.mod.py
@@ -60,7 +60,6 @@ output_state_out = Output("output_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_
cell_state_out = Output("cell_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_cell))
output = Output("output", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
-# TODO: need support for more than one output
model = model.Operation("LSTM",
input,
diff --git a/tests/nnapi/specs/V1_0/lstm3_state2.mod.py b/tests/nnapi/specs/V1_0/lstm3_state2.mod.py
index bc6ae7e86..38be40645 100644
--- a/tests/nnapi/specs/V1_0/lstm3_state2.mod.py
+++ b/tests/nnapi/specs/V1_0/lstm3_state2.mod.py
@@ -60,7 +60,6 @@ output_state_out = Output("output_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_
cell_state_out = Output("cell_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_cell))
output = Output("output", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
-# TODO: need support for more than one output
model = model.Operation("LSTM",
input,
diff --git a/tests/nnapi/specs/V1_0/lstm3_state3.mod.py b/tests/nnapi/specs/V1_0/lstm3_state3.mod.py
index 40262c251..a0cd9df58 100644
--- a/tests/nnapi/specs/V1_0/lstm3_state3.mod.py
+++ b/tests/nnapi/specs/V1_0/lstm3_state3.mod.py
@@ -60,7 +60,6 @@ output_state_out = IgnoredOutput("output_state_out", "TENSOR_FLOAT32", "{%d, %d}
cell_state_out = IgnoredOutput("cell_state_out", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_cell))
output = Output("output", "TENSOR_FLOAT32", "{%d, %d}" % (n_batch, n_output))
-# TODO: need support for more than one output
model = model.Operation("LSTM",
input,
diff --git a/tests/nnapi/specs/V1_0/mobilenet_224_gender_basic_fixed.mod.py b/tests/nnapi/specs/V1_0/mobilenet_224_gender_basic_fixed.mod.py
index 390ccc35e..c08bb310b 100644
--- a/tests/nnapi/specs/V1_0/mobilenet_224_gender_basic_fixed.mod.py
+++ b/tests/nnapi/specs/V1_0/mobilenet_224_gender_basic_fixed.mod.py
@@ -1,3 +1,5 @@
+# Comment out: too large test. we can test mobilenet using frameworktest
+"""
# Passing weights via shared memory
Configuration.use_shm_for_weights = True
model = Model()
@@ -219,36 +221,36 @@ i81 = Internal("op81", "TENSOR_FLOAT32", "{1, 1, 1, 256}") # intermediate result
i82 = Internal("op82", "TENSOR_FLOAT32", "{1, 1, 1, 11}") # intermediate result
i83 = Parameter("op83", "TENSOR_FLOAT32", "{11}", [-0.0293549, -0.0835053, -0.228576, -0.0980885, -0.0370638, -0.195879, -0.0452258, 0.0371641, -0.0585841, -0.0984154, -0.141293]) # parameters
i84 = Parameter("op84", "TENSOR_FLOAT32", "{11, 1, 1, 256}", [0.0984852, 0.672424, 0.392549, -0.262182, 0.303914, -0.0118188, 0.027943, 0.0164078, 0.200583, -0.808626, 0.234772, -0.0253635, -0.198519, -0.176824, -0.580674, 0.0681573, -0.0134279, 0.172173, -0.284882, -0.0895141, 0.0142356, -0.0479431, 0.0736678, 0.00298977, 0.152355, -0.0370715, 0.463201, 0.0146613, 0.0971624, -0.0791196, 0.556621, -0.00950762, 0.0160531, 0.091037, 0.376353, -0.0996081, -0.0418334, -0.427482, -0.202679, -0.197079, 0.021873, -0.105617, 0.36447, 0.389277, 0.0429815, 0.0480496, -0.170086, -0.191548, -0.237921, 0.155838, -0.100796, 0.0539355, 0.103154, 0.0441985, -0.20672, 0.358565, -0.105794, -0.635905, 0.193301, 0.112419, -0.184668, 0.157954, -0.301095, -0.153072, -0.0535615, -0.0661999, -0.197056, -0.0835003, -0.074932, -0.111766, -0.356266, 0.649165, -0.0527003, -0.0597135, 0.109839, -0.270809, 0.0333183, -0.211454, 0.0594729, -0.166949, 0.21057, 0.224925, -0.222835, -0.0178217, 0.127268, 0.229248, 0.262987, 0.0318244, 0.293201, -0.361254, -0.0624992, -0.0696259, 0.0456531, -0.0287401, 0.0863351, -0.106142, 0.81137, 0.305728, 0.398482, -0.0190696, -0.133965, -0.223757, -0.153242, -0.261303, 0.111363, -0.113733, 0.0028724, -0.0878969, 0.0498853, -0.000613516, -0.0819123, -0.0154599, -0.0938842, -0.108295, 0.340323, -0.139579, -0.117066, 0.145283, -0.106254, 0.201248, -0.152479, 0.162457, -0.0751263, 0.00127508, -0.0218281, 0.126278, -0.100075, 0.426783, -0.108719, 0.207569, -0.327427, 0.277309, 0.0404061, -0.334901, 0.154047, -0.287619, 0.0161922, -0.00054208, -0.233675, 0.564603, 0.201628, 0.0510375, -0.16502, -0.0155493, -0.125359, -0.0996153, 0.0133961, -0.492208, 0.109118, -0.136327, 0.0252329, 0.0556799, -0.196804, -0.0612012, -0.0392273, 0.133385, 0.253763, -0.208136, -0.00507434, -0.0584744, 0.0855089, -0.00321895, -0.209376, 0.0618401, 0.0129248, -0.130721, -0.168413, 0.122652, 0.0927544, -0.180775, -0.0463842, -0.626248, -0.00596579, 0.0822374, -0.254325, -0.361624, 0.778701, -0.0705549, 0.40832, 0.0932269, 0.10348, 0.258843, -0.117135, 0.131713, -0.457018, -0.364692, 0.0741725, 0.168267, 0.0904773, -0.333243, 0.18358, -0.0407786, -0.0115824, 0.304328, 0.177285, 0.206312, -0.503914, 0.310439, 0.533919, 0.0925376, 0.449889, -0.45417, 0.89017, -0.00580558, 0.317744, 0.0176692, -0.0267303, -0.0657997, -0.333455, -0.0895455, -0.0203959, -0.329956, 0.0542947, -0.03533, 0.0496151, 0.145015, 0.135449, -0.239986, -0.442413, -0.0922021, 0.396803, 0.0695849, -0.00921835, 0.405834, 0.477558, 0.08952, 0.101425, -0.0264703, -0.124621, 0.070554, -0.101953, 0.224768, 0.021384, 0.293433, -0.297231, 0.0841252, 0.0290684, -0.211267, -0.116215, 0.433678, -0.626231, -0.139838, 0.0290375, -0.24486, 0.282119, -0.486426, -0.402424, -0.561959, -0.450933, 0.0501238, -0.194682, -0.231145, -0.210372, -0.0802564, -0.170723, -0.248902, -0.0122576, 0.0776341, 0.197615, 0.094212, 0.0318287, -0.237544, 0.135516, -0.537321, -0.0906906, 0.172587, 0.179816, 0.0792088, 0.354531, 0.0801259, 0.0145845, -0.14874, 0.0367363, -0.0733148, -0.125755, -0.252037, -0.101672, -0.14809, -0.188341, -0.264003, -0.201581, -0.0605842, 0.0142779, -0.322517, -0.130978, 0.301363, -0.276394, 0.0248554, -0.168732, 0.158651, 0.150037, -0.0472578, 0.241238, -0.109832, -0.500172, -0.0574687, 0.143137, 0.177313, 0.0489008, 0.24142, -0.0742049, -0.103464, -0.0383113, -0.0148622, -0.101849, 0.0425005, 0.0543708, 0.0710147, 0.169901, 0.304119, 0.180413, -0.330647, -0.250029, 0.0651902, 0.173465, -0.475872, 0.393697, 0.147345, -0.00802343, -0.0545821, -0.119, -0.0282713, 0.0414947, 0.0618215, -0.132909, 0.480818, -0.124287, -0.0484199, -0.344362, 0.071471, 0.267047, -0.279627, -0.289336, 0.0609794, 0.339502, -0.0956702, -0.361749, -0.0153208, -0.102628, 0.0936787, -0.130392, 0.348396, 0.200636, -0.249164, -0.177583, -0.0716032, 0.118703, 0.123365, -0.0366422, 0.231096, 0.0022177, 0.128202, 0.222367, -0.176409, -0.153065, -0.0287899, -0.355792, -0.543125, 0.177245, 0.116598, 0.0451388, -0.0286715, -0.174033, 0.476808, 0.298325, -0.0593149, -0.0491401, 0.0263619, 0.0565123, 0.0500395, -0.40961, -0.0481743, -0.0744737, -0.050528, -0.428685, -0.0457881, -0.105794, 0.0951161, -0.299268, -0.229566, -0.206985, -0.0780657, -0.0322681, 0.266195, -0.0781984, -0.598814, -0.280207, 0.0516518, -0.0447187, 0.0980521, 0.0216666, 0.038809, 0.147272, -0.357397, 0.0504251, 0.126596, -0.0935991, -0.142778, 0.0864683, -0.116768, -0.164657, -0.380078, 0.00184015, -0.0684899, -0.134349, 0.184285, -0.281853, -0.185581, 0.347765, 0.301739, -0.17311, -0.0586592, -0.253355, 0.135704, -0.025141, -0.398732, 0.176819, 0.164295, -0.0964961, 0.235867, -0.162969, -0.365092, 0.0342, 0.305977, 0.192868, -0.150942, 0.132645, 0.220341, -0.158242, -0.168888, 0.103491, -0.1672, 0.0127892, -0.0176947, 0.230234, -0.129157, -0.319789, -0.188887, 0.469657, 0.0599872, 0.173128, 0.207658, -0.257826, 0.422512, 0.0304435, -0.0700446, 0.00292699, -0.254277, -0.0987592, 0.0906241, -0.234816, 0.030083, -0.00973596, 0.120037, -0.317601, -0.12708, 0.102184, 0.0740557, 0.191923, 0.215419, 0.090792, -0.416807, -0.211088, -0.0667573, -0.042666, 0.00698668, -0.187608, 0.11397, 0.0282127, -0.0646227, -0.0786383, 0.338181, -0.158486, -0.0404435, -0.148313, 0.129857, 0.036822, 0.214085, 0.0271965, 0.0712011, -0.0142654, 0.21793, -0.101845, -0.0134659, -0.386899, -0.253225, -0.201138, -0.168, -0.111886, 0.149919, -0.252716, -0.312013, -0.494531, 0.20132, 0.1455, -0.0390248, -0.2497, 0.0187322, 0.212352, 0.176346, -0.0186768, -0.0587664, 0.140535, 0.130711, -0.048937, -0.0333832, 0.146999, -0.0536035, -0.210655, 0.277771, 0.136683, -0.458041, 0.106529, -0.152398, -0.0336699, 0.151721, -0.0533765, -0.168961, 0.175815, -0.24888, 0.0907924, -0.0133408, 0.175644, -0.0246879, -0.00687254, 0.185182, -0.256385, -0.163355, -0.256984, -0.315761, -0.181824, -0.0306672, 0.152588, -0.0713595, -0.0721906, -0.332328, -0.322698, -0.00929737, 0.0818944, 0.0742352, -0.166805, 0.0944738, -0.167636, 0.0871255, 0.0792785, 0.0354259, 0.293364, 0.215322, 0.272799, -0.0492312, -0.269483, -0.220346, -0.0881883, -0.105395, 0.170322, 0.0396378, 0.0702321, 0.0164758, -0.0229642, -0.120222, -0.00534489, 0.138123, -0.141178, 0.00600586, 0.0114309, 0.160046, -0.0782422, -0.221657, -0.222359, -0.0160572, -0.0427344, -0.0939852, 0.19013, 0.128755, 0.0826387, 0.0959137, -0.121338, 0.116419, -0.0815084, -0.148231, -0.102396, -0.302046, -0.0136386, 0.146457, -0.273797, -0.0766018, 0.103427, -0.0941844, -0.236219, -0.106905, 0.188707, -0.119065, -0.109619, -0.376718, -0.250552, -0.119213, -0.0698239, 0.0548951, -0.0984231, -0.274015, 0.0116218, -0.0560431, -0.0176495, 0.106143, 0.191658, -0.291245, 0.198666, -0.1415, 0.121305, 0.00787936, -0.161106, -0.0559996, -0.025235, -0.227444, 0.124586, 0.153714, 0.0339968, -0.0791643, -0.204395, -0.139891, -0.136988, -0.182275, 0.059441, -0.135392, -0.0206536, -0.177236, -0.0461415, 0.0707632, 0.279827, -0.00538458, -0.0227107, -0.0780397, 0.0654234, -0.00893195, -0.111956, -0.298613, -0.35016, 0.0515563, -0.257037, 0.139683, -0.0568245, -0.18912, 0.054686, 0.230304, 0.0682762, -0.104554, -0.267018, -0.00695182, -0.42745, -0.118246, 0.240312, -0.0283745, -0.0410208, -0.204045, 0.0536799, 0.158019, -0.217282, -0.255996, -0.130733, -0.0754242, -0.205957, -0.042236, -0.237091, -0.0547223, 0.318243, 0.114416, -0.135642, -0.0316242, -0.347453, 0.101281, 0.012845, -0.212307, 0.135502, -0.217902, -0.0520036, -0.169676, 0.0155753, -0.378887, -0.120698, 0.278682, -0.208085, 0.0188473, -0.167479, 0.3823, -0.262327, 0.0653896, 0.0837105, -0.175588, -0.172008, 0.279217, 0.109674, -0.0610411, -0.261709, -0.12329, -0.214598, 0.0449085, 0.0995378, 0.123743, -0.20637, 0.0336271, 0.179009, -0.103686, -0.0319235, 0.0991055, -0.15149, 0.11167, -0.0458526, -0.216373, 0.0944096, 0.257391, -0.138348, -0.0792016, 0.236858, -0.177544, 0.00179313, -0.0475954, -0.325425, -0.443611, 0.269018, 0.0823181, -0.189893, -0.00310759, 0.38809, -0.0297613, -0.0772569, 0.117555, -0.0146545, 0.24652, -0.124915, -0.0226053, -0.00351846, 0.123489, 0.374272, 0.00411916, -0.0530559, -0.459548, -0.068397, 0.351112, 0.20717, -0.169705, -0.191568, -0.0149611, -0.200327, -0.0366789, -0.000831896, 0.0329813, 0.0928899, -0.217083, -0.1015, -0.108356, -0.155276, -0.224902, -0.161009, -0.195741, -0.196345, 0.0696936, -0.0903938, 0.0346839, 0.0342342, 0.108802, 0.0224264, -0.116966, -0.0868056, 0.41173, -0.139741, 0.0816925, 0.0206459, -0.0857387, -0.0889723, 0.0252684, 0.122225, 0.281325, -0.0975601, -0.0890313, -0.202703, -0.232747, -0.16356, -0.109103, -0.000627448, -0.281988, 0.133017, 0.199669, -0.305566, -0.298914, -0.120265, -0.0757179, -0.298619, 0.183222, -0.142981, 0.0896671, 0.175904, 0.0175519, -0.16538, -0.0520677, -0.0670482, -0.00336189, -0.223379, -0.0609024, -0.27571, -0.0763393, 0.295597, 0.00951529, 0.127656, 0.323394, 0.321615, 0.184786, 0.120165, 0.0270615, 0.232585, -0.378135, 0.00705762, -0.152686, -0.25289, 0.0996134, 0.0515323, 0.0147273, -0.746546, -0.161453, 0.0907721, 0.015299, -0.0842891, -0.0432424, -0.523789, -0.271467, 0.0367782, -0.24899, 0.207861, 0.0755162, 0.173391, 0.222453, -0.113516, -0.24137, 0.100824, -0.0606065, 0.00548546, 0.0558509, -0.0575758, 0.245029, 0.178345, 0.143839, -0.244105, -0.172561, -0.338056, -0.127348, 0.31021, -0.115489, -0.0672434, -0.0625748, -0.180578, -0.227379, 0.11236, 0.10313, 0.166569, 0.158167, -0.0638876, 0.161796, 0.0371649, -0.328319, -0.336786, -0.211983, 0.0293737, -0.115773, 0.00937545, -0.246018, 0.35231, 0.195708, 0.0478146, -0.103948, -0.106301, 0.211148, 0.379093, 0.416716, -0.174341, -0.0187881, -0.510292, 0.0914475, 0.0227487, -0.100022, -0.141782, -0.0911218, 0.0475971, -0.244332, -0.0995312, -0.209683, 0.0118146, -0.333827, 0.0784702, 0.152256, -0.0219116, 0.138452, -0.0222356, -0.0565779, 0.158486, -0.24482, -0.00680468, 0.197839, 0.0154492, -0.00997484, -0.221046, -0.0717462, -0.174674, -0.121365, -0.225961, 0.0249583, -0.012674, -0.0461503, 0.326105, 0.159991, 0.0172039, -0.33672, -0.0282964, 0.340149, -0.102354, -0.32463, 0.0968813, 0.142316, -0.0457009, -0.449412, 0.010723, 0.234789, -0.0556804, 0.13699, 0.346469, 0.0485624, 0.158279, -0.064993, -0.103656, -0.058024, -0.160934, -0.154483, -0.208516, 0.171658, -0.105681, -0.0694062, -0.430509, 0.0281458, -0.145734, 0.00672611, -0.263346, 0.398998, -0.107815, 0.0612669, 0.229766, -0.0120696, 0.221093, -0.172262, 0.0251312, -0.0730561, -0.316371, 0.188185, -0.046221, -0.199885, 0.119867, 0.218638, -0.329465, -0.324384, -0.141421, 0.0441414, 0.0694141, 0.255176, 0.0668514, -0.0346173, -0.00232405, 0.194615, 0.281005, -0.0199741, 0.035436, 0.130112, -0.0913306, 0.329646, -0.0752686, 0.109595, 0.0791733, -0.0692778, 0.305223, -0.203791, 0.124741, 0.235692, 0.0366247, 0.0102351, 0.0518547, -0.0949171, 0.149521, -0.0588182, -0.0129089, -0.232551, -0.0145967, -0.0175136, -0.0871548, 0.0947253, 0.0243044, -0.0628619, -0.0492656, -0.299999, -0.217482, -0.140209, -0.0874081, 0.0812857, 0.0233994, -0.389155, 0.200308, -0.131029, 0.299059, -0.110117, -0.289113, -0.0365339, -0.233167, -0.108743, -0.261932, -0.159673, -0.106053, 0.199852, -0.106121, 0.0759607, 0.472064, -0.163932, -0.31763, 0.0104898, -0.0210451, -0.0787518, 0.155917, 0.102614, -0.0425018, 0.104758, 0.0857415, -0.155914, 0.239264, -0.144245, 0.0138479, -0.196582, -0.225119, 0.119061, 0.0667646, 0.0661826, -0.190163, 0.146226, 0.0857013, -0.39394, 0.00735058, 0.17735, 0.244409, 0.06301, 0.169556, -0.178062, 0.12862, 0.416925, 0.0967157, -0.00742805, -0.000430865, 0.151077, -0.135911, -0.259045, -0.367174, -0.13922, 0.23333, -0.219153, -0.101108, -0.108457, -0.0457349, -0.0666834, 0.222968, 0.0223704, 0.0866147, 0.0902093, 0.141006, 0.230202, 0.0586954, 0.26749, 0.0443342, 0.424975, -0.159726, -0.16713, -0.10332, 0.126135, 0.125221, 0.220837, -0.121812, -0.20649, 0.161173, -0.0608088, 0.751833, 0.177478, -0.107548, 0.0103489, -0.212986, 0.177713, -0.353158, -0.0872167, 0.126602, 0.0343864, 0.0116791, 0.0520713, 0.00361525, 0.194245, -0.114742, 0.020037, -0.114726, 0.126897, 0.039019, 0.445555, -0.0193091, 0.0637067, -0.128501, -0.0345904, 0.0988956, 0.178154, -0.0259671, -0.0257689, -0.091025, 0.0684302, 0.131971, 0.0459931, 0.278118, -0.0376653, -0.156248, -0.0789752, -0.160455, 0.353474, 0.0503084, -0.194132, 0.124681, -0.0915903, 0.117273, 0.0232574, -0.0337332, 0.0175596, -0.203004, 0.132872, -0.200533, 0.111507, 0.452312, 0.0770053, 0.201455, -0.267448, 0.0539831, -0.187271, -0.0896206, -0.0906231, 0.174122, 0.00151794, -0.44301, -0.038296, -0.179995, -0.0717158, -0.136493, -0.163935, -0.0208884, 0.361374, 0.219308, -0.0691815, 0.20319, -0.0567725, 0.272091, 0.228685, 0.0701021, -0.122392, -0.280011, 0.0584825, -0.054271, 0.00700558, 0.0727541, 0.0566045, -0.197892, 0.024467, -0.192888, -0.0819263, -0.0201281, 0.248612, 0.0373216, 0.0864792, 0.283391, 0.189835, 0.0781828, -0.0364776, -0.00516293, -0.136433, -0.0563264, 0.184467, -0.103843, 0.143026, 0.153189, -0.0523581, 0.213201, 0.144222, -0.368817, 0.150695, 0.0357488, 0.44351, -0.167891, 0.289154, -0.227813, -0.321075, 0.0209248, 0.00428332, 0.0969976, -0.108528, 0.0284129, 0.0762366, 0.107821, 0.119178, 0.213134, -0.061735, -0.172152, 0.161251, -0.0093495, 0.32946, 0.219039, -0.287137, -0.0450728, -0.0452836, -0.212494, -0.107495, -0.188338, 0.0459348, -0.0377559, -0.0839975, -0.00428969, -0.0232576, 0.0289588, 0.164926, -0.0425852, -0.0543849, 0.11673, 0.158114, 0.159165, 0.0941762, -0.0546047, 0.237165, -0.0486095, -0.146102, -0.196763, -0.300198, 0.0103576, -0.309314, -0.122579, -0.147076, -0.252579, -0.00101733, -0.288208, -0.22112, 0.311517, -0.112453, 0.129476, -0.324617, -0.122931, -0.123137, 0.000923043, -0.117103, 0.0235433, -0.271816, 0.141558, -0.057682, -0.120304, -0.106198, 0.0265892, 0.254805, 0.173984, -0.266907, 0.0103511, -0.0901396, -0.164973, -0.226945, 0.0137655, 0.0133529, -0.151525, 0.256784, 0.132003, 0.24828, -0.0647662, 0.143638, 0.0600663, -0.18841, -0.0538587, 0.293896, -0.103811, -0.389949, 0.073149, 0.102529, 0.00501293, 0.315232, 0.231291, -0.176493, -0.140862, -0.133106, 0.0161411, -0.210105, -0.125995, -0.0174128, 0.00283163, -0.16739, -0.00931349, -0.26984, -0.315777, -0.248987, -0.144968, 0.166966, 0.169746, -0.220713, -0.0312972, 0.156324, -0.0407818, -0.139328, -0.440265, -0.0850991, 0.188168, 0.106694, 0.154731, 0.159212, -0.200953, -0.037807, 0.36218, -0.123355, 0.396598, -0.036044, -0.071492, 0.189546, -0.115796, -0.0827317, -0.0544022, -0.222727, 0.0347514, -0.0295377, 0.101372, -0.0471416, 0.218466, -0.0403298, -0.0743297, -0.0607741, -0.0177818, -0.0976377, 0.182365, -0.26278, 0.0619466, 0.335466, -0.039433, -0.214658, -0.00413142, 0.118605, -0.0871774, -0.013047, -0.0139049, -0.0566686, -0.0765434, -0.0230406, -0.10839, -0.164259, -0.110342, -0.0567072, 0.0359454, 0.161352, -0.271192, 0.0673184, -0.0400687, -0.0291176, -0.0505437, -0.167017, -0.244246, 0.0127467, -0.188325, -0.171548, 0.0819252, -0.184143, -0.0280647, -0.175439, -0.0298673, 0.0928547, -0.114129, 0.160686, 0.124866, -0.0799349, -0.0461555, -0.0569828, -0.07544, -0.254674, 0.200119, 0.395232, -0.104755, -0.0705698, -0.168159, -0.363371, -0.28949, -0.157786, 0.0803677, 0.253256, 0.183266, -0.098531, -0.217913, -0.277753, -0.0412087, 0.0929791, 0.0416587, -0.393095, -0.194569, 0.115027, 0.00374004, -0.230992, 0.178052, 0.11554, -0.112156, -0.136296, 0.147941, 0.160641, -0.0988691, -0.156255, -0.183889, -0.198891, 0.0487718, -0.10064, 0.0618672, 0.129453, 0.245253, -0.0609817, -0.0423283, 0.209125, -0.00764558, -0.207093, 0.090427, 0.344761, -0.210035, 0.0190305, 0.177226, -0.478754, 0.102217, -0.0815951, 0.184152, -0.0708748, -0.288034, 0.212553, -0.00799922, 0.0402337, -0.0634731, -0.0157662, 0.0380505, 0.297157, -0.102219, 0.270945, -0.0364033, -0.223053, -0.313967, -0.256362, 0.00947424, 0.1584, 0.0508195, 0.127063, 0.161099, -0.176547, -0.06178, 0.28597, 0.0661753, 0.115497, -0.266217, 0.207641, 0.288968, -0.147556, 0.00127605, 0.25902, 0.0888035, -0.172818, 0.0106958, -0.259761, -0.0210704, 0.11259, 0.118585, -0.131654, 0.0889418, -0.141959, 0.0686276, 0.119914, -0.315549, -0.106624, 0.356014, 0.0856996, -0.121974, -0.0188067, -0.150179, -0.0971979, -0.15594, 0.15098, -0.111329, -0.258716, -0.390928, 0.105128, -0.170122, -0.114675, -0.119159, 0.0893049, 0.0829629, -0.174787, -0.020651, 0.059119, -0.120192, -0.192243, 0.22854, 0.0524963, -0.17855, 0.129937, 0.0181097, 0.151171, -0.104886, -0.195503, 0.166139, -0.132779, -0.0952646, -0.238117, -0.120478, 0.250843, 0.0198936, -0.16349, 0.00793157, -0.139775, 0.0621653, 0.102649, 0.0159358, -0.173693, 0.000424589, 0.0499097, -0.213681, 0.000829991, 0.0470139, -0.104087, -0.104971, 0.154429, -0.0514045, 0.021679, 0.0637851, 0.0263575, -0.0773971, 0.0792207, 0.0289109, -0.190421, -0.114429, -0.0980095, 0.0697401, -0.128251, 0.0884518, 0.215688, -0.503879, -0.0634976, -0.0256412, 0.26015, -0.082886, 0.0134682, -0.1982, 0.203755, 0.237095, -0.178199, -0.110421, -0.123333, 0.0505219, 0.0872408, 0.134674, -0.151414, -0.20904, 0.0162698, -0.0281258, -0.0696107, 0.0384256, -0.316446, -0.0999238, -0.0215575, -0.16317, -0.422117, -0.401993, 0.0318225, 0.179985, 0.0327708, 0.237595, 0.00156168, 0.190076, 0.0242173, -0.149916, -0.0292071, -0.0634601, -0.353369, 0.191598, 0.268846, 0.0919142, -0.0838139, 0.041469, 0.195228, -0.304184, -0.0524774, 0.0257366, -0.0669865, 0.0712212, -0.165418, -0.0485386, 0.135066, 0.178966, -0.315931, -0.160149, 0.198644, 0.117106, -0.130927, -0.254406, -0.151422, 0.0451171, 0.0421164, -0.120035, 0.0517401, 0.0150269, 0.0749926, 0.268662, -0.213943, -0.0568393, 0.122747, 0.154528, -0.0203424, -0.0819281, -0.201227, 0.155029, -0.285458, -0.081893, 0.141846, 0.12811, 0.17107, -0.262672, -0.112772, -0.186101, -0.257387, -0.169401, -0.263488, 0.370405, -0.462936, -0.188147, -0.332351, 0.0125391, 0.215156, -0.513405, -0.289543, -0.443262, -0.0851796, -0.157583, -0.22628, 0.0640168, 0.0691075, 0.169624, -0.0885214, 0.0678881, -0.178388, 0.11724, -0.0459048, 0.0283356, 0.135743, 0.21108, 0.197132, -0.298021, -0.127577, -0.0454851, -0.295987, -0.113867, 0.0862119, -0.0201072, -0.290276, 0.0147507, -0.247042, 0.420167, -0.376847, 0.203432, -0.158043, 0.0810597, -0.566199, 0.218187, -0.318247, -0.400209, -0.219316, -0.0448023, -0.357235, -0.26102, -0.303588, 0.00072887, -0.205802, -0.175228, -0.0968084, -0.0754828, 0.047413, 0.131296, -0.112247, 0.183774, 0.0840453, -0.0239575, 0.0597386, 0.0678879, 0.208753, -0.381256, 0.0543436, 0.0230677, -0.275275, 0.197361, 0.318349, 0.230976, -0.0475114, 0.0923948, 0.270554, 0.0193927, -0.0845898, -0.074267, -0.185875, 0.329959, -0.00671641, -0.19907, -0.208328, 0.089362, 0.0418336, -0.054819, 0.138547, 0.318673, 0.300046, -0.149823, -0.146389, -0.178329, 0.260826, -0.0446269, 0.22329, 0.0233915, -0.408598, -0.210239, -0.0839846, -0.210073, -0.203917, 0.333065, 0.0654963, -0.110438, 0.0976637, -0.171706, -0.0396424, 0.196927, 0.107167, -0.526091, -0.272819, -0.0621517, -0.360691, -0.0803204, -0.0894648, -0.215345, 0.0738301, -0.165395, -0.505362, -0.510371, 0.495546, 0.281085, -0.349988, -0.102217, 0.29955, 0.101695, 0.216987, 0.220804, -0.264158, 0.208857, 0.490646, -0.235616, 0.0697848, -0.0828848, -0.0676367, -0.137579, 0.0101326, -0.0646971, -0.245946, -0.0958766, -0.274682, -0.467907, 0.0970127, -0.254426, 0.03253, 0.0122821, -0.0339391, -0.364834, 0.164962, -0.180429, -0.378582, -0.00960021, -0.228418, -0.0264938, 0.0259812, -0.295185, -0.357585, -0.380096, 0.0525056, -0.233331, 0.13387, 0.105961, 0.243387, 0.258494, 0.0371437, 0.0632561, 0.110992, -0.208983, -0.185678, 0.292418, 0.0286353, -0.00408131, 0.102217, -0.136994, 0.0622825, 0.395963, -0.348133, -0.223302, 0.273627, -0.193556, 0.338264, -0.159462, -0.491361, 0.161778, 0.156135, 0.0641617, 0.0999903, -0.529532, -0.285966, -0.135576, 0.236579, -0.130519, -0.0764042, 0.493032, -0.0883978, 0.150384, 0.106229, 0.02975, 0.318695, 0.265394, 0.130223, -0.0455514, -0.115114, 0.107133, -0.250837, -0.0966183, -0.123644, 0.342727, -0.0986773, -0.0127951, -0.434297, -0.0685123, 0.0869741, -0.269507, 0.396272, 0.305987, 0.145169, -0.250147, 0.0425825, -0.27173, -0.0943471, -0.401917, -0.0518213, 0.220465, -0.00776957, -0.308669, 0.151246, 0.040435, -0.246938, 0.161326, -0.657021, -0.029663, -0.156154, -0.0231731, -0.0567502, -0.149723, -0.157589, -0.0150168, 0.143093, 0.0119803, -0.282194, 0.00609295, 0.133509, -0.238658, 0.469585, -0.15437, 0.123749, -0.438739, -0.235357, 0.196981, -0.178078, 0.179464, -0.360465, 0.146581, -0.0722637, -0.359168, -0.0213761, -0.0719016, 0.228349, 0.00872679, -0.0720084, 0.0129347, -0.0606057, 0.209901, 0.261428, 0.318637, 0.0668506, 0.262152, -0.188527, 0.017398, 0.238802, -0.119243, -0.335925, -0.0708997, 0.0131007, -0.183616, 0.139393, 0.229401, -0.0356139, 0.117969, -0.0359544, -0.0976415, -0.261919, -0.132652, 0.0511542, 0.0250922, -0.202336, 0.156581, -0.21006, -0.164616, 0.49608, -0.143283, 0.0167009, 0.0382558, -0.192059, -0.0298086, 0.16408, 0.0327906, -0.0112998, 0.107964, -0.805638, 0.341425, 0.104876, -0.379418, -0.16812, 0.0873235, -0.591176, 0.347932, -0.092094, -0.0951583, -0.079231, -0.102, 0.430467, -0.0629909, 0.103386, -0.394243, 0.0921294, -0.303268, -0.0878409, 0.0222568, 0.177541, 0.05269, -0.245371, -0.394972, 0.169095, -0.0322228, 0.0854907, -0.277685, 0.169834, -0.157112, -0.125601, -0.123642, 0.287326, -0.11461, -0.0400871, 0.0935002, -0.239499, -0.00406349, 0.116467, 0.195647, 0.0169376, 0.108949, -0.256211, 0.199251, -0.22503, 0.183724, -0.0459538, -0.0573185, -0.135267, -0.17563, -0.105615, -0.216777, 0.136895, -0.131041, 0.143448, 0.116321, 0.341659, 0.04663, -0.138582, 0.113484, 0.000281706, 0.183075, -0.205364, 0.217528, -0.0325774, -0.0481017, -0.00686094, -0.13989, 0.0995296, -0.476637, 0.120914, 0.178213, 0.11095, -0.154424, 0.169363, 0.288232, 0.105104, 0.440652, 0.0404736, -0.163574, -0.0724218, -0.174028, 0.137715, 0.255176, -0.133188, -0.10359, -0.150963, -0.0850369, 0.162774, -0.00694466, -0.523244, -0.400547, -0.11478, 0.0923003, 0.00922158, 0.165169, 0.114364, 0.396211, 0.0621255, 0.413189, 0.0759307, -0.148507, 0.243803, 0.066523, -0.0649491, 0.0867938, 0.134912, -0.44741, 0.133082, 0.0237098, -0.327549, -0.0172026, -0.104394, -0.204443, 0.0804548, -0.25669, -0.280141, 0.184742, -0.182915, -0.301567, -0.132653, -0.362342, -0.0867399, -0.248574, 0.018783, -0.0144377, -0.193732, -0.0568637, 0.0212203, 0.145462, -0.04467, 0.188485, -0.0192423, -0.162427, -0.431459, -0.316196, -0.0197834, 0.142554, 0.161446, -0.204556, 0.10123, 0.136505, -0.0421437, 0.0382004, -0.0105015, 0.26352, 0.128504, 0.220373, -0.0459283, -0.0794771, 0.126873, 0.102329, 0.160555, -0.344226, 0.11844, -0.152884, -0.369259, -0.732194, -0.285659, 0.27297, 0.0434638, -0.115029, -0.178296, -0.010171, -0.108856, 0.243398, -0.120003, 0.0617609, -0.0377697, 0.0882623, 0.317397, -0.142634, 0.0613519, 0.0625693, 0.29804, -0.276065, -0.283755, -0.0586926, 0.0609932, 0.172328, 0.380084, 0.0817355, -0.0889897, 0.16975, -0.0727911, 0.558122, 0.129139, 0.0967012, -0.00808779, -0.281368, 0.229454, -0.0657459, 0.110639, 0.0990761, -0.0734602, -0.124961, 0.120193, 0.0117927, -0.00164934, -0.068704, 0.0934271, -0.150389, 0.267866, 0.111924, 0.22073, -0.0826743, 0.0181881, 0.164808, 0.08553, 0.0064627, -0.100066, -0.196847, -0.260685, -0.161078, -0.0889612, 0.267343, -0.183189, 0.099878, 0.206179, -0.134037, -0.0753274, 0.073361, 0.123856, -0.11014, -0.23651, -0.079332, -0.179564, -0.0953625, 0.0816014, -0.0153009, 0.0216921, -0.214616, 0.0721763, -0.337629, 0.113998, 0.30383, 0.213949, 0.0748996, -0.154083, 0.082343, 0.0915755, -0.165324, -0.161256, -0.0732527, -0.0771391, -0.179746, 0.148814, -0.229269, -0.00684043, -0.0877735, -0.232043, 0.0358457, 0.0860737, -0.016937, 0.0052483, 0.203986, -0.0327027, 0.0828824, 0.0515511, -0.0446207, 0.0495584, 0.06504, -0.0502581, -0.0989093, -0.242931, -0.161322, 0.0412978, 0.0882053, -0.0868244, 0.0333411, 0.0033292, 0.0956053, 0.224343, -0.0605414, 0.200487, 0.139677, 0.0741737, 0.131144, -0.0156217, 0.119855, -0.0672591, 0.0646749, 0.0212678, -0.0612522, 0.127438, 0.165742, 0.149455, 0.120228, 0.245928, -0.536011, -0.0221017, 0.0210271, 0.196356, 0.0401149, -0.00733165, -0.270396, -0.00968083, -0.0709557, -0.120717, 0.140489, 0.0935343, -0.172696, 0.301435, -0.0935873, -0.0353977, 0.0539549, -0.0338224, -0.239903, -0.0209894, -0.17114, 0.267786, 0.20251, -0.0980189, -0.04852, -0.207071, -0.253257, -0.0564701, -0.0518127, -0.0537929, -0.390881, 0.0470064, 0.0306878, 0.104422, 0.150282, 0.0117885, -0.093087, -0.0377776, -0.0618607, -0.0869537, 0.137726, 0.0903727, 0.0346921, 0.0111, -0.241767, -0.201946, 0.09471, -0.156048, -0.0978701, -0.239229, -0.0308635, -0.122071, -0.433478, -0.0514787, -0.182472, -0.181954, 0.0416541, -0.0883368, 0.157402, -0.462445, -0.103609, -0.160994, -0.0133393, -0.096508, 0.100438, 0.00418135, -0.0122206, 0.172408, 0.0437795, -0.172367, -0.0189107, -0.0304423, 0.0780768, -0.116228, -0.0305065, -0.0440305, 0.00286725, -0.157059, 0.132452, -0.101883, -0.138483, 0.00723927, 0.0342281, 0.206677, -0.0770022, 0.0227105, -0.111016, -0.170921, 0.055846, 0.246527, -0.142554, -0.380108, -0.0346903, 0.138706, -0.176424, 0.112018, 0.0435032, -0.127998, -0.169885, -0.0509104, -0.0870096, -0.535699, -0.0638343, -0.0311837, 0.078099, -0.0342351, 0.0749799, 0.3883, -0.154977, 0.224178, 0.0550229, 0.107375, 0.33049, 0.0969202, 0.0756623, -0.233299, -0.104361, 0.442374, 0.0844492, 0.0705411, -0.140545, -0.0663961, -0.0728755, -0.0621244, -0.0819853, -0.112193, -0.176114, -0.0938139, -0.214228, 0.0190762, -0.213562, -0.190233, 0.133314, -0.148665, 0.0915799, 0.187216, -0.284974, 0.00733069, 0.0156916, 0.015107, 0.0318654, 0.346104, -0.124227, 0.137341, 0.0592528, -0.387351, -0.221991, 0.360592, -0.0931174, -0.0492834, 0.199867, -0.0852204, 0.150399, 0.0413833, 0.235906, -0.0706518, -0.166653, -0.0586646, -0.109711, -0.0823073, 0.257342, -0.224644, -0.430506, -0.105588, 0.0250296, -0.042311, -0.0996558, -0.115579, -0.286667, -0.154598, -0.137322, 0.176363, 0.088216, 0.161978, 0.255623, -0.0123169, -0.00387241, -0.318043, -0.21894, -0.412465, -0.415855, 0.255024, 0.361044, 0.0300423, -0.119439, 0.0657428, -0.238206, 0.340391, 0.201176, 0.102395, 0.216324, -0.121531, 0.265799, 0.0327802, 0.194072, -0.0792337, 0.456093, 0.0971469, -0.0170099, -0.0294468, -0.318039, -0.242527, -0.1083, 0.295943, -0.0284033, -0.156199, -0.20311, -0.075091, 0.528829, -0.165604, 0.0532403, 0.0505752, -0.413034, 0.175453, -0.0970195, -0.029351, 0.103333, 0.271092, 0.0511197, -0.182135, 0.112932, -0.32439, 0.294457, -0.0818895, 0.0914322, 0.185025, 0.0543957, -0.0167575, 0.504046, -0.0647153, -0.166975, 0.0248059, 0.0379442, 0.0980366, -0.178135, 0.143822, 0.45732, -0.0912428, -0.179338, 0.349726, -0.0596313, -0.299861, 0.112567, 0.0666395, 0.345303, 0.164124, -0.00265316, -0.0732412, 0.348079, -0.249414, 0.0465329, 0.0693596, 0.0799214, 0.000123214, 0.180679, 0.0912923, -0.300121, -0.288428, 0.150135, 0.112936, 0.104813, -0.0555879, -0.00205972, -0.0251151, -0.0788264, -0.016778, -0.110796, -0.083048, -0.212734, 0.288568, -0.114228, -0.113358, 0.110789, 0.118645, 0.133466, -0.0298552, -0.241374, 0.157257, 0.0861554, -0.0909277, 0.00156177, 0.106539, -0.209104, -0.106974, 0.0203283, -0.18111, -0.311602, -0.00371812, 0.0711113, -0.206721, 0.286076, 0.139713, 0.116621, 0.182792, 0.0246107, -0.17972, 0.041917, 0.0724635, 0.266344, 0.0989191, 0.0723898, 0.0257298, 0.104898, 0.0681826, -0.0704781, 0.00212139, -0.363547, 0.0274255, -0.106295, -0.363965, 0.127051, -0.0575343, -0.200952, -0.0666189, -0.139465, -0.0171747, 0.253794, -0.258602, -0.166356, -0.107649, 0.267331, 0.104521, -0.020921, -0.0780469, 0.125002, 0.0202556, -0.0899181, -0.126559, -0.297855, 0.121539, -0.0671643, -0.0444782, 0.334408, 0.0882725, -0.0879492, -0.00277655, -0.0616985, 0.0564236, -0.11618, -0.22836, 0.112953, 0.176082, 0.09988, -0.00635589, -0.114234, 0.241135, 0.0966775, -0.0961065, 0.137214, -0.0832349, -0.54299, -0.2335, -0.033801, -0.11505, -0.366386, -0.238099, -0.0951656, 0.263106, 0.129292, -0.14762, 0.0700404, 0.0195349, -0.286227, -0.273371, 0.0587288, -0.257152, -0.136248, -0.13336, -0.248086, 0.273973, -0.302625, -0.085841, -0.0839808, -0.130464, 0.252972, -0.0415149, -0.0695038, -0.091557, -0.262375, -0.0645785, 0.188566, -0.202261, -0.112712, 0.00631479, 0.0132917, -0.0130675, -0.302285, 0.0556928, -0.0211812, -0.0555546, 0.0291112, 0.168815, 0.143654, -0.00564186, -0.0614248, -0.0939664, 0.0959667, -0.209823, -0.103889, -0.206011, -0.0394793, 0.0545815, -0.0348762, -0.132075, -0.0489917, -0.177563, -0.164591, -0.0174372, -0.276844, -0.132214, -0.236278, -0.0614254, -0.230962, -0.409367, -0.08959, 0.182197, -0.341314, -0.0645579, -0.0161434, -0.166644, -0.0784324, -0.387537, 0.236617, -0.115318, -0.11315, -0.109817, -0.0949309, -0.253715, -0.254404, -0.0876592, -0.243118, -0.219172, 0.0341202, 0.0203343, 0.0435131, -0.0266338, 0.140304, -0.20669, -0.130739, 0.0213059, 0.182793, -0.0711616, -0.165651, -0.212373, -0.0972764, -0.284464, -0.0834676, -0.129573, -0.133945, 0.0684521, -0.133913, 0.165726, -0.176839, -0.0940447, -0.145421, -0.0471074, 0.00950449, 0.0308656, -0.00761046, -0.19397, -0.161623, 0.10975, -0.0398157, 0.00168868, 0.0626417, -0.118388, -0.134741, -0.243707, 0.146451, -0.165854, 0.0585878, 0.0269307, 0.163195, -0.197056, 0.0438799, -0.152668, -0.178631, -0.167278, 0.0258257, -0.22958, -0.101918, 0.0360034, -0.165612, -0.112482, -0.419959, -0.369384, 0.0468117, 0.202511, 0.161559, 0.0360435, -0.211843, 0.0480519, -0.252478, -0.0951382, 0.100791, -0.379245, -0.129869, -0.036501, 0.0685223, 0.0247177, -0.0751386, -0.12451, 0.244585, -0.0103249, -0.346383, -0.300614, 0.230366, -0.187795, -0.0326416, 0.0735751, -0.0136039, -0.0219528, 0.0629145, -0.0308739, -0.101514, -0.169444, 0.058706, -0.133274, -0.200294, -0.372511, -0.214898, -0.184366, 0.253648, -0.0362453, 0.0618937, 0.0838244, -0.0386255, 0.129191, -0.147435, -0.180809, -0.0797491, -0.286544, -0.273005, 0.116222, -0.255255, -0.0504643, -0.0567216, -0.0204081, 0.206331, -0.225266, -0.211665, -0.259216, -0.0676753, -0.176153, 0.285802, -0.00560349, -0.0253936, -0.182537, -0.344487, -0.341246, -0.171879, 0.24462, 0.015354, -0.0255803, -0.0855239, -0.151488, -0.0329621, 0.311794, 0.0889872, -0.142655, -0.00124048, 0.0175189, 0.0459686, 0.279491, -0.237445, 0.0570048, -0.00665275, -0.0558817, 0.0731352, 0.0291331, 0.0918153, 0.0276626, -0.135103, -0.303909, 0.0283329, -0.203482, -0.0849922, -0.284485, -0.214908, 0.0836636, -0.219738, 0.136157, 0.0332432, -0.143305, 0.0283252, -0.178703, -0.0742534, -0.153174, 0.02235, -0.0753622, -0.210102, -0.0915751, -0.0189732, -0.239039, -0.135349, -0.104589, -0.0658414, -0.183206, -0.123006, 0.0835748, -0.0703047, -0.207461, -0.274129, -0.225327, -0.113485, 0.13316, 0.0295303, -0.0958281]) # parameters
-model = model.Conv(i86, i2, i1, i87, i88, i89, i90).To(i0)
-model = model.DepthWiseConv(i0, i29, i28, i91, i92, i93, i94, i95).To(i27)
-model = model.Conv(i27, i32, i31, i96, i97, i98, i99).To(i30)
-model = model.DepthWiseConv(i30, i35, i34, i100, i101, i102, i103, i104).To(i33)
-model = model.Conv(i33, i38, i37, i105, i106, i107, i108).To(i36)
-model = model.DepthWiseConv(i36, i41, i40, i109, i110, i111, i112, i113).To(i39)
-model = model.Conv(i39, i44, i43, i114, i115, i116, i117).To(i42)
-model = model.DepthWiseConv(i42, i47, i46, i118, i119, i120, i121, i122).To(i45)
-model = model.Conv(i45, i50, i49, i123, i124, i125, i126).To(i48)
-model = model.DepthWiseConv(i48, i53, i52, i127, i128, i129, i130, i131).To(i51)
-model = model.Conv(i51, i56, i55, i132, i133, i134, i135).To(i54)
-model = model.DepthWiseConv(i54, i59, i58, i136, i137, i138, i139, i140).To(i57)
-model = model.Conv(i57, i62, i61, i141, i142, i143, i144).To(i60)
-model = model.DepthWiseConv(i60, i65, i64, i145, i146, i147, i148, i149).To(i63)
-model = model.Conv(i63, i68, i67, i150, i151, i152, i153).To(i66)
-model = model.DepthWiseConv(i66, i71, i70, i154, i155, i156, i157, i158).To(i69)
-model = model.Conv(i69, i74, i73, i159, i160, i161, i162).To(i72)
-model = model.DepthWiseConv(i72, i77, i76, i163, i164, i165, i166, i167).To(i75)
-model = model.Conv(i75, i80, i79, i168, i169, i170, i171).To(i78)
-model = model.DepthWiseConv(i78, i5, i4, i172, i173, i174, i175, i176).To(i3)
-model = model.Conv(i3, i8, i7, i177, i178, i179, i180).To(i6)
-model = model.DepthWiseConv(i6, i11, i10, i181, i182, i183, i184, i185).To(i9)
-model = model.Conv(i9, i14, i13, i186, i187, i188, i189).To(i12)
-model = model.DepthWiseConv(i12, i17, i16, i190, i191, i192, i193, i194).To(i15)
-model = model.Conv(i15, i20, i19, i195, i196, i197, i198).To(i18)
-model = model.DepthWiseConv(i18, i23, i22, i199, i200, i201, i202, i203).To(i21)
-model = model.Conv(i21, i26, i25, i204, i205, i206, i207).To(i24)
-model = model.AveragePool(i24, i208, i209, i210, i211, i212, i213).To(i81)
-model = model.Conv(i81, i84, i83, i214, i215, i216, i217).To(i82)
-model = model.Logistic(i82).To(i85)
+model = model.Operation("CONV_2D", i86, i2, i1, i87, i88, i89, i90).To(i0)
+model = model.Operation("DEPTHWISE_CONV_2D", i0, i29, i28, i91, i92, i93, i94, i95).To(i27)
+model = model.Operation("CONV_2D", i27, i32, i31, i96, i97, i98, i99).To(i30)
+model = model.Operation("DEPTHWISE_CONV_2D", i30, i35, i34, i100, i101, i102, i103, i104).To(i33)
+model = model.Operation("CONV_2D", i33, i38, i37, i105, i106, i107, i108).To(i36)
+model = model.Operation("DEPTHWISE_CONV_2D", i36, i41, i40, i109, i110, i111, i112, i113).To(i39)
+model = model.Operation("CONV_2D", i39, i44, i43, i114, i115, i116, i117).To(i42)
+model = model.Operation("DEPTHWISE_CONV_2D", i42, i47, i46, i118, i119, i120, i121, i122).To(i45)
+model = model.Operation("CONV_2D", i45, i50, i49, i123, i124, i125, i126).To(i48)
+model = model.Operation("DEPTHWISE_CONV_2D", i48, i53, i52, i127, i128, i129, i130, i131).To(i51)
+model = model.Operation("CONV_2D", i51, i56, i55, i132, i133, i134, i135).To(i54)
+model = model.Operation("DEPTHWISE_CONV_2D", i54, i59, i58, i136, i137, i138, i139, i140).To(i57)
+model = model.Operation("CONV_2D", i57, i62, i61, i141, i142, i143, i144).To(i60)
+model = model.Operation("DEPTHWISE_CONV_2D", i60, i65, i64, i145, i146, i147, i148, i149).To(i63)
+model = model.Operation("CONV_2D", i63, i68, i67, i150, i151, i152, i153).To(i66)
+model = model.Operation("DEPTHWISE_CONV_2D", i66, i71, i70, i154, i155, i156, i157, i158).To(i69)
+model = model.Operation("CONV_2D", i69, i74, i73, i159, i160, i161, i162).To(i72)
+model = model.Operation("DEPTHWISE_CONV_2D", i72, i77, i76, i163, i164, i165, i166, i167).To(i75)
+model = model.Operation("CONV_2D", i75, i80, i79, i168, i169, i170, i171).To(i78)
+model = model.Operation("DEPTHWISE_CONV_2D", i78, i5, i4, i172, i173, i174, i175, i176).To(i3)
+model = model.Operation("CONV_2D", i3, i8, i7, i177, i178, i179, i180).To(i6)
+model = model.Operation("DEPTHWISE_CONV_2D", i6, i11, i10, i181, i182, i183, i184, i185).To(i9)
+model = model.Operation("CONV_2D", i9, i14, i13, i186, i187, i188, i189).To(i12)
+model = model.Operation("DEPTHWISE_CONV_2D", i12, i17, i16, i190, i191, i192, i193, i194).To(i15)
+model = model.Operation("CONV_2D", i15, i20, i19, i195, i196, i197, i198).To(i18)
+model = model.Operation("DEPTHWISE_CONV_2D", i18, i23, i22, i199, i200, i201, i202, i203).To(i21)
+model = model.Operation("CONV_2D", i21, i26, i25, i204, i205, i206, i207).To(i24)
+model = model.Operation("AVERAGE_POOL_2D", i24, i208, i209, i210, i211, i212, i213).To(i81)
+model = model.Operation("CONV_2D", i81, i84, i83, i214, i215, i216, i217).To(i82)
+model = model.Operation("LOGISTIC", i82).To(i85)
# Example 1
input0 = { i86: [0.791841, 0.131271, 0.840444, 0.524133, 0.301398, 0.711596, 8.78908e-05, 0.358888, 0.156309, 0.273055, 0.143706, 0.663516, 0.817875, 0.0178006, 0.0663899, 0.38532, 0.108224, 0.120309, 0.252355, 0.468634, 0.535587, 0.372087, 0.0191815, 0.0750463, 0.896686, 0.564102, 0.781927, 0.138955, 0.876559, 0.672544, 0.47254, 0.685613, 0.864712, 0.678431, 0.681087, 0.954624, 0.707985, 0.0945955, 0.663676, 0.0174337, 0.514265, 0.0993437, 0.837646, 0.16886, 0.0206787, 0.460454, 0.298217, 0.0939906, 0.792089, 0.145739, 0.124991, 0.152928, 0.18507, 0.0910606, 0.886938, 0.703805, 0.738545, 0.0914867, 0.785625, 0.255978, 0.25971, 0.564347, 0.496365, 0.40138, 0.181351, 0.229051, 0.528806, 0.815946, 0.723594, 0.0782805, 0.417488, 0.357831, 0.699987, 0.110877, 0.706929, 0.361355, 0.44735, 0.51417, 0.234213, 0.49157, 0.754239, 0.35671, 0.90015, 0.368686, 0.162982, 0.467298, 0.712059, 0.73199, 0.394652, 0.216439, 0.0325005, 0.675254, 0.0965207, 0.919576, 0.46926, 0.923022, 0.0721544, 0.0620356, 0.570436, 0.418233, 0.734994, 0.626141, 0.189962, 0.680934, 0.576122, 0.377738, 0.927142, 0.31627, 0.0390065, 0.305891, 0.777981, 0.576827, 0.999185, 0.849222, 0.221597, 0.0529092, 0.741046, 0.810611, 0.641734, 0.2737, 0.0306115, 0.382373, 0.117532, 0.690233, 0.20231, 0.599944, 0.464123, 0.79606, 0.171281, 0.0924674, 0.502584, 0.689291, 0.549744, 0.951152, 0.579524, 0.796293, 0.971173, 0.903601, 0.376714, 0.915486, 0.521651, 0.888365, 0.355228, 0.648741, 0.900593, 0.48239, 0.317946, 0.524421, 0.99061, 0.842221, 0.102702, 0.679481, 0.588507, 0.7512, 0.177413, 0.762043, 0.63814, 0.509979, 0.245258, 0.97713, 0.206899, 0.0342631, 0.582589, 0.677466, 0.548678, 0.969459, 0.763207, 0.659911, 0.720006, 0.492729, 0.721137, 0.198181, 0.0767499, 0.279166, 0.563685, 0.578014, 0.284114, 0.0313309, 0.545107, 0.675547, 0.902745, 0.799514, 0.14417, 0.197687, 0.187282, 0.0420023, 0.238308, 0.154671, 0.243883, 0.777129, 0.291907, 0.959133, 0.166203, 0.355963, 0.831646, 0.308086, 0.148097, 0.342163, 0.366069, 0.669976, 0.482005, 0.50455, 0.114772, 0.909615, 0.592529, 0.819863, 0.7448, 0.733599, 0.0818953, 0.333677, 0.436425, 0.640028, 0.128689, 0.802751, 0.053884, 0.0968059, 0.0141547, 0.189447, 0.458282, 0.301719, 0.332669, 0.697625, 0.607359, 0.96581, 0.0482129, 0.658574, 0.283779, 0.428031, 0.120848, 0.387377, 0.169832, 0.0381746, 0.549549, 0.721105, 0.281996, 0.282577, 0.183188, 0.237784, 0.590087, 0.289398, 0.540784, 0.301099, 0.396178, 0.855404, 0.460563, 0.125632, 0.150601, 0.271058, 0.696146, 0.947483, 0.735739, 0.425141, 0.977515, 0.3452, 0.143326, 0.274614, 0.925826, 0.81308, 0.535078, 0.998599, 0.427464, 0.260845, 0.137486, 0.837797, 0.0631066, 0.0876196, 0.588056, 0.40014, 0.815027, 0.494389, 0.355774, 0.450119, 0.717888, 0.423054, 0.20979, 0.842124, 0.399906, 0.410846, 0.559933, 0.451017, 0.558568, 0.944169, 0.881834, 0.00384158, 0.103625, 0.309752, 0.40491, 0.98423, 0.303001, 0.486862, 0.394447, 0.108623, 0.258184, 0.172573, 0.0685831, 0.358462, 0.272746, 0.875298, 0.690985, 0.800497, 0.512517, 0.692277, 0.0706645, 0.259856, 0.37559, 0.213658, 0.53025, 0.405643, 0.656994, 0.228048, 0.247219, 0.300241, 0.700641, 0.0177141, 0.466215, 0.200764, 0.857363, 0.483106, 0.522657, 0.144218, 0.267424, 0.291684, 0.67167, 0.0357309, 0.265176, 0.520329, 0.556993, 0.984931, 0.183227, 0.335942, 0.992855, 0.175479, 0.425192, 0.826319, 0.433081, 0.727791, 0.245524, 0.0597154, 0.156634, 0.64591, 0.958063, 0.537418, 0.295089, 0.0732913, 0.742363, 0.642074, 0.826581, 0.682193, 0.852718, 0.999771, 0.315818, 0.571465, 0.491486, 0.235984, 0.0818711, 0.636604, 0.212895, 0.660947, 0.765877, 0.0767624, 0.73344, 0.679814, 0.36851, 0.915551, 0.0944369, 0.982257, 0.872403, 0.796865, 0.114389, 0.967463, 0.957193, 0.575821, 0.713856, 0.91271, 0.124751, 0.106865, 0.376894, 0.421127, 0.793781, 0.914849, 0.691005, 0.944351, 0.332563, 0.170314, 0.447437, 0.760359, 0.683639, 0.393852, 0.668889, 0.222266, 0.667067, 0.217586, 0.189967, 0.136813, 0.329066, 0.51118, 0.15714, 0.403605, 0.674683, 0.644709, 0.908952, 0.496509, 0.0120233, 0.245706, 0.0329395, 0.795719, 0.986633, 0.865211, 0.0771508, 0.487609, 0.241025, 0.669604, 0.477396, 0.428557, 0.0621134, 0.68842, 0.784684, 0.556526, 0.0546337, 0.498104, 0.944155, 0.975526, 0.0519842, 0.828273, 0.220436, 0.0973805, 0.639122, 0.750508, 0.236016, 0.866084, 0.276684, 0.992722, 0.183576, 0.535933, 0.792447, 0.142149, 0.988627, 0.818945, 0.724294, 0.276561, 0.745799, 0.390849, 0.752617, 0.732283, 0.401179, 0.683818, 0.660091, 0.844869, 0.287746, 0.187653, 0.968993, 0.541457, 0.543372, 0.775215, 0.92933, 0.475041, 0.306358, 0.783032, 0.593079, 0.119069, 0.869258, 0.970535, 0.351855, 0.558143, 0.969403, 0.412738, 0.264689, 0.482702, 0.789336, 0.437969, 0.159124, 0.426539, 0.198885, 0.0177727, 0.691272, 0.0595643, 0.359525, 0.6306, 0.149484, 0.994781, 0.845899, 0.811227, 0.82501, 0.27116, 0.7401, 0.190015, 0.458648, 0.841917, 0.328061, 0.231616, 0.510571, 0.0631396, 0.292842, 0.333388, 0.216002, 0.933854, 0.765494, 0.300234, 0.158843, 0.608681, 0.49692, 0.622592, 0.869762, 0.515378, 0.243813, 0.351183, 0.529368, 0.311112, 0.238909, 0.433752, 0.998878, 0.62677, 0.838139, 0.650211, 0.636101, 0.667345, 0.948906, 0.309283, 0.202239, 0.449868, 0.432025, 0.187258, 0.99759, 0.487673, 0.824721, 0.51251, 0.854737, 0.412896, 0.810302, 0.105718, 0.319232, 0.99164, 0.123529, 0.316028, 0.570233, 0.662391, 0.669733, 0.0749745, 0.66906, 0.00903542, 0.510595, 0.967114, 0.783757, 0.869923, 0.655048, 0.260669, 0.68839, 0.87354, 0.913864, 0.113415, 0.625024, 0.474351, 0.776453, 0.21527, 0.113414, 0.749888, 0.626217, 0.388871, 0.0309753, 0.475298, 0.422064, 0.460825, 0.32816, 0.955097, 0.627315, 0.792411, 0.00766529, 0.566721, 0.407374, 0.634685, 0.627003, 0.375373, 0.31221, 0.861205, 0.608589, 0.880119, 0.52554, 0.605035, 0.118977, 0.613206, 0.383087, 0.716612, 0.622154, 0.851895, 0.0783142, 0.475583, 0.21843, 0.584996, 0.938854, 0.62971, 0.813131, 0.892749, 0.798681, 0.795511, 0.0655248, 0.285758, 0.246531, 0.78642, 0.342706, 0.583047, 0.0344585, 0.144597, 0.251586, 0.915092, 0.863438, 0.647058, 0.0484427, 0.898403, 0.423501, 0.992785, 0.0703023, 0.799657, 0.665863, 0.0711288, 0.680655, 0.65026, 0.1549, 0.593819, 0.767113, 0.150623, 0.918489, 0.176067, 0.85076, 0.979277, 0.572358, 0.13148, 0.643712, 0.831597, 0.0992917, 0.272232, 0.694243, 0.335103, 0.241076, 0.246106, 0.942713, 0.432468, 0.789363, 0.458507, 0.339482, 0.0900444, 0.74853, 0.14387, 0.38917, 0.957029, 0.989021, 0.611135, 0.697256, 0.0395212, 0.549286, 0.985937, 0.312926, 0.527949, 0.354932, 0.589522, 0.936589, 0.198696, 0.480116, 0.992084, 0.407626, 0.139969, 0.0251239, 0.499093, 0.985195, 0.595041, 0.680062, 0.801376, 0.61929, 0.480137, 0.331, 0.345052, 0.859727, 0.588247, 0.295778, 0.0999083, 0.376957, 0.470159, 0.216982, 0.530417, 0.551786, 0.491341, 0.598367, 0.749522, 0.181984, 0.472262, 0.934373, 0.378052, 0.376463, 0.439012, 0.64088, 0.202156, 0.905179, 0.79377, 0.695248, 0.815266, 0.0739469, 0.620277, 0.889489, 0.361428, 0.37442, 0.936218, 0.255595, 0.112557, 0.398399, 0.11098, 0.222453, 0.265583, 0.0120594, 0.814637, 0.373474, 0.369039, 0.877383, 0.91715, 0.759644, 0.170179, 0.658204, 0.0327627, 0.837132, 0.225002, 0.0310278, 0.275552, 0.929744, 0.718458, 0.343128, 0.762734, 0.354592, 0.220131, 0.885119, 0.477841, 0.080636, 0.342969, 0.402588, 0.0586417, 0.866942, 0.657128, 0.135711, 0.23269, 0.885087, 0.301901, 0.0223638, 0.243521, 0.897715, 0.831138, 0.422695, 0.373375, 0.604348, 0.216366, 0.117223, 0.52669, 0.957595, 0.397123, 0.527852, 0.162748, 0.331502, 0.0476454, 0.493669, 0.45054, 0.0189271, 0.832804, 0.245005, 0.0257984, 0.806287, 0.573803, 0.554897, 0.242035, 0.551262, 0.807645, 0.697002, 0.236734, 0.0732667, 0.825466, 0.273506, 0.918823, 0.728595, 0.514056, 0.913061, 0.990209, 0.569672, 0.73299, 0.254236, 0.226596, 0.438448, 0.718309, 0.0261628, 0.522876, 0.13089, 0.518293, 0.489113, 0.856953, 0.859139, 0.0102561, 0.241273, 0.265863, 0.46517, 0.692028, 0.0965296, 0.357579, 0.0809109, 0.973039, 0.241768, 0.178742, 0.16546, 0.32408, 0.51216, 0.353633, 0.914092, 0.996733, 0.527617, 0.38878, 0.968574, 0.189173, 0.297074, 0.0769255, 0.329634, 0.999992, 0.376291, 0.353023, 0.968517, 0.936789, 0.839482, 0.141374, 0.287281, 0.899092, 0.276857, 0.701517, 0.705605, 0.694727, 0.709399, 0.150969, 0.838456, 0.872205, 0.251672, 0.0823043, 0.433517, 0.114241, 0.686941, 0.604298, 0.96366, 0.998541, 0.542768, 0.763697, 0.487684, 0.614873, 0.118265, 0.82044, 0.928577, 0.130926, 0.788807, 0.116383, 0.961747, 0.119231, 0.584441, 0.492563, 0.310756, 0.386993, 0.706782, 0.856075, 0.351463, 0.88558, 0.953703, 0.625848, 0.152387, 0.725336, 0.209592, 0.510357, 0.994541, 0.563889, 0.112611, 0.188244, 0.200779, 0.603122, 0.498709, 0.401355, 0.256663, 0.72548, 0.286149, 0.585824, 0.729582, 0.109245, 0.750599, 0.526262, 0.2682, 0.0439657, 0.940121, 0.51635, 0.563138, 0.648896, 0.626415, 0.326178, 0.514948, 0.792292, 0.132806, 0.0344517, 0.68247, 0.688457, 0.0830311, 0.822472, 0.421894, 0.363927, 0.258686, 0.469445, 0.484979, 0.261765, 0.0107293, 0.823743, 0.898295, 0.685985, 0.12627, 0.0935537, 0.710923, 0.221798, 0.466435, 0.204661, 0.419436, 0.888813, 0.812406, 0.0987169, 0.56719, 0.0848368, 0.415454, 0.0568779, 0.0836185, 0.591172, 0.222817, 0.084403, 0.443582, 0.511802, 0.291254, 0.57206, 0.538638, 0.0480104, 0.394755, 0.146417, 0.486177, 0.275562, 0.991969, 0.152291, 0.125037, 0.734148, 0.273974, 0.907751, 0.0557118, 0.625865, 0.540812, 0.404363, 0.683585, 0.817448, 0.880429, 0.0368383, 0.117144, 0.452914, 0.601129, 0.816468, 0.177218, 0.341007, 0.437119, 0.512966, 0.734273, 0.670025, 0.774994, 0.516255, 0.403913, 0.194468, 0.730509, 0.915396, 0.733057, 0.226151, 0.773553, 0.560888, 0.322723, 0.880917, 0.354637, 0.764857, 0.101728, 0.98936, 0.770464, 0.363922, 0.268453, 0.122471, 0.468997, 0.227406, 0.908916, 0.838655, 0.675934, 0.297773, 0.820353, 0.968448, 0.22299, 0.45603, 0.883587, 0.961793, 0.981808, 0.0918925, 0.289544, 0.0126749, 0.952685, 0.433636, 0.888319, 0.0345352, 0.0537092, 0.630984, 0.290415, 0.442073, 0.957977, 0.528899, 0.258949, 0.517977, 0.555961, 0.962038, 0.103875, 0.120518, 0.524644, 0.901207, 0.976801, 0.20839, 0.791273, 0.928386, 0.269995, 0.851301, 0.155978, 0.95959, 0.471912, 0.558651, 0.0792384, 0.305654, 0.0687847, 0.407363, 0.854473, 0.726835, 0.434604, 0.0319832, 0.258654, 0.228612, 0.88968, 0.233836, 0.187192, 0.0812797, 0.685767, 0.227064, 0.625626, 0.0418912, 0.091916, 0.893489, 0.906418, 0.343487, 0.259549, 0.500555, 0.49464, 0.358855, 0.453654, 0.625872, 0.260065, 0.526648, 0.270802, 0.629696, 0.652685, 0.886566, 0.0175723, 0.192974, 0.772648, 0.322638, 0.441971, 0.326457, 0.314981, 0.789898, 0.609642, 0.417324, 0.901833, 0.625863, 0.520122, 0.714596, 0.0476563, 0.130953, 0.230048, 0.938159, 0.560143, 0.0489532, 0.172541, 0.941601, 0.0195008, 0.262638, 0.882763, 0.515662, 0.696145, 0.0346089, 0.472647, 0.673146, 0.664696, 0.171615, 0.157088, 0.320476, 0.644456, 0.655435, 0.438065, 0.828032, 0.75158, 0.671098, 0.651288, 0.194411, 0.99512, 0.324144, 0.327449, 0.138816, 0.826698, 0.702613, 0.785437, 0.292426, 0.32113, 0.934188, 0.138683, 0.10368, 0.664516, 0.364206, 0.992479, 0.365432, 0.864658, 0.0582836, 0.220552, 0.603853, 0.0222399, 0.801677, 0.136697, 0.918184, 0.534017, 0.605448, 0.172941, 0.0832636, 0.820645, 0.321777, 0.828627, 0.184141, 0.824755, 0.859183, 0.0145646, 0.180491, 0.381069, 0.685228, 0.631852, 0.0338391, 0.361849, 0.424745, 0.051589, 0.293966, 0.844586, 0.0737949, 0.255997, 0.134207, 0.724875, 0.606424, 0.18282, 0.94089, 0.513781, 0.583085, 0.73825, 0.29708, 0.113687, 0.242324, 0.595915, 0.744452, 0.300691, 0.122135, 0.186776, 0.424907, 0.0548492, 0.926156, 0.784282, 0.487589, 0.708848, 0.421664, 0.91074, 0.414106, 0.257951, 0.598353, 0.511842, 0.822584, 0.659914, 0.734142, 0.129923, 0.893404, 0.499535, 0.376755, 0.351202, 0.181314, 0.467408, 0.125804, 0.750217, 0.325757, 0.0533974, 0.0611866, 0.927609, 0.146805, 0.00837644, 0.761909, 0.250079, 0.28004, 0.00418437, 0.875385, 0.502056, 0.121803, 0.876352, 0.964255, 0.661306, 0.945703, 0.697616, 0.375116, 0.379839, 0.991601, 0.204653, 0.23887, 0.944915, 0.363196, 0.538404, 0.260688, 0.0577462, 0.7928, 0.0965343, 0.0313786, 0.406476, 0.0356123, 0.920733, 0.384257, 0.396769, 0.565033, 0.816765, 0.0231784, 0.297517, 0.691497, 0.125348, 0.90672, 0.870792, 0.839266, 0.619161, 0.415235, 0.0855324, 0.317575, 0.0321516, 0.0459598, 0.779923, 0.208385, 0.319421, 0.719141, 0.235942, 0.931433, 0.738555, 0.498458, 0.716415, 0.422233, 0.889511, 0.689843, 0.00346445, 0.501386, 0.836507, 0.267413, 0.20589, 0.676368, 0.162917, 0.461109, 0.200088, 0.640686, 0.870575, 0.684988, 0.629306, 0.314908, 0.949392, 0.59184, 0.96408, 0.443349, 0.786204, 0.475125, 0.46335, 0.120098, 0.521526, 0.381189, 0.0282903, 0.338781, 0.0147252, 0.105385, 0.523878, 0.397474, 0.922144, 0.360621, 0.967328, 0.0795957, 0.614568, 0.941387, 0.256149, 0.460269, 0.275171, 0.156944, 0.160385, 0.190592, 0.972277, 0.995504, 0.0148588, 0.0328694, 0.288649, 0.624778, 0.815458, 0.0562352, 0.17142, 0.892587, 0.813621, 0.365365, 0.287373, 0.633701, 0.612011, 0.188615, 0.266795, 0.247953, 0.929241, 0.724582, 0.168495, 0.184623, 0.676937, 0.545181, 0.779166, 0.401639, 0.791977, 0.89885, 0.0700023, 0.323039, 0.916252, 0.666769, 0.430525, 0.521759, 0.251172, 0.18914, 0.166139, 0.550677, 0.489721, 0.273977, 0.209432, 0.941569, 0.688973, 0.534458, 0.705287, 0.445498, 0.432936, 0.674555, 0.152962, 0.350929, 0.623852, 0.104778, 0.921401, 0.0822757, 0.773417, 0.577079, 0.52454, 0.340603, 0.180518, 0.743391, 0.309313, 0.647283, 0.508779, 0.676723, 0.871975, 0.141776, 0.662358, 0.365894, 0.614934, 0.692909, 0.271235, 0.493481, 0.0191645, 0.433778, 0.82123, 0.440987, 0.17822, 0.158052, 0.351538, 0.904367, 0.932931, 0.771275, 0.683578, 0.147603, 0.612052, 0.238339, 0.370294, 0.377275, 0.618327, 0.23039, 0.025349, 0.881252, 0.656383, 0.848147, 0.158194, 0.925577, 0.715534, 0.566595, 0.46578, 0.953175, 0.910838, 0.422878, 0.810046, 0.0736497, 0.767067, 0.639362, 0.0337872, 0.0552913, 0.196417, 0.793722, 0.638354, 0.162484, 0.250245, 0.755271, 0.563528, 0.0426519, 0.331396, 0.686429, 0.573515, 0.580952, 0.0780432, 0.399008, 0.837097, 0.427702, 0.879839, 0.717721, 0.798127, 0.310848, 0.0969406, 0.112661, 0.0588716, 0.617045, 0.810882, 0.72268, 0.536256, 0.577522, 0.82076, 0.431478, 0.582098, 0.0867875, 0.0819969, 0.278815, 0.442372, 0.36417, 0.504359, 0.790864, 0.150706, 0.789597, 0.11971, 0.208723, 0.0420081, 0.439192, 0.32817, 0.510673, 0.453106, 0.131887, 0.963443, 0.46543, 0.417993, 0.515867, 0.501282, 0.358465, 0.0408286, 0.212398, 0.636908, 0.939945, 0.64096, 0.729772, 0.782885, 0.0180581, 0.292225, 0.0476142, 0.014517, 0.933166, 0.677903, 0.471022, 0.0626455, 0.34605, 0.729552, 0.0758758, 0.030948, 0.913585, 0.0579351, 0.604563, 0.661979, 0.380977, 0.931586, 0.10853, 0.219475, 0.534411, 0.323453, 0.191781, 0.529629, 0.24442, 0.0668745, 0.991815, 0.811953, 0.742443, 0.851713, 0.470675, 0.439336, 0.591621, 0.0528885, 0.293893, 0.247487, 0.153686, 0.712198, 0.308949, 0.888146, 0.483333, 0.958923, 0.773188, 0.111127, 0.931216, 0.00803783, 0.523384, 0.589483, 0.111122, 0.874195, 0.471779, 0.866746, 0.393314, 0.917975, 0.47388, 0.45923, 0.184881, 0.000267302, 0.118287, 0.294422, 0.478528, 0.798024, 0.819273, 0.134578, 0.833257, 0.754163, 0.0372118, 0.476365, 0.883108, 0.295347, 0.506178, 0.159185, 0.486809, 0.997655, 0.542137, 0.722696, 0.87696, 0.0533655, 0.576914, 0.635649, 0.843527, 0.996396, 0.633346, 0.0469884, 0.983361, 0.274715, 0.733967, 0.587163, 0.335545, 0.63203, 0.322497, 0.342558, 0.613547, 0.852798, 0.97598, 0.289202, 0.112494, 0.604807, 0.171367, 0.645325, 0.120826, 0.983477, 0.346941, 0.695627, 0.0933139, 0.0904035, 0.945534, 0.699159, 0.918074, 0.127972, 0.146117, 0.153176, 0.34932, 0.274975, 0.128079, 0.981156, 0.64941, 0.329935, 0.388786, 0.992289, 0.97107, 0.636135, 0.825807, 0.0221501, 0.778773, 0.886846, 0.607811, 0.814742, 0.371163, 0.143338, 0.833689, 0.548518, 0.0863777, 0.455333, 0.654521, 0.690034, 0.528876, 0.330968, 0.1821, 0.199122, 0.574718, 0.137327, 0.451855, 0.991012, 0.703202, 0.740871, 0.78313, 0.363101, 0.789682, 0.458018, 0.129508, 0.224462, 0.792609, 0.289557, 0.869839, 0.877946, 0.871263, 0.143763, 0.374451, 0.801211, 0.459942, 0.262103, 0.115882, 0.703586, 0.14139, 0.856733, 0.379291, 0.409448, 0.847103, 0.298199, 0.274674, 0.993469, 0.91734, 0.171558, 0.548496, 0.825017, 0.230367, 0.933356, 0.111477, 0.244218, 0.0821157, 0.655875, 0.509365, 0.202234, 0.879215, 0.517252, 0.642754, 0.680939, 0.590988, 0.466308, 0.0191027, 0.486767, 0.929551, 0.412309, 0.593949, 0.818184, 0.615371, 0.424783, 0.268686, 0.882975, 0.856814, 0.0412179, 0.62009, 0.509358, 0.773243, 0.669224, 0.101498, 0.155394, 0.236388, 0.279887, 0.139492, 0.908711, 0.0246424, 0.416223, 0.851026, 0.859623, 0.905136, 0.810206, 0.504903, 0.155452, 0.982737, 0.06796, 0.654384, 0.0777361, 0.726558, 0.162373, 0.707787, 0.0106446, 0.863501, 0.16515, 0.454644, 0.352805, 0.110448, 0.0987702, 0.38532, 0.831841, 0.7131, 0.884184, 0.49833, 0.403592, 0.136039, 0.402964, 0.75637, 0.852311, 0.226679, 0.677947, 0.539316, 0.90116, 0.150665, 0.326361, 0.69401, 0.642847, 0.637767, 0.0383073, 0.21091, 0.738813, 0.704299, 0.622894, 0.316864, 0.673828, 0.00453082, 0.998097, 0.477128, 0.561196, 0.143336, 0.852607, 0.0538591, 0.705491, 0.680765, 0.922218, 0.335589, 0.212406, 0.788774, 0.50572, 0.315882, 0.997041, 0.28049, 0.316806, 0.0301507, 0.0161073, 0.833198, 0.976399, 0.299819, 0.705579, 0.699842, 0.0229762, 0.547337, 0.576429, 0.586619, 0.580927, 0.704043, 0.712396, 0.704521, 0.461941, 0.271101, 0.300411, 0.543945, 0.83888, 0.927517, 0.696113, 0.806099, 0.61674, 0.565187, 0.262063, 0.584379, 0.651243, 0.769777, 0.964328, 0.824391, 0.418492, 0.44945, 0.828669, 0.383372, 0.643618, 0.112057, 0.90306, 0.952415, 0.135493, 0.445303, 0.10469, 0.876504, 0.780554, 0.304308, 0.92487, 0.112365, 0.761206, 0.0440797, 0.0245029, 0.39543, 0.200187, 0.24704, 0.990857, 0.880704, 0.231992, 0.475104, 0.572161, 0.657611, 0.671187, 0.00252225, 0.773633, 0.652176, 0.85746, 0.0924269, 0.33908, 0.0523477, 0.105062, 0.946441, 0.0981879, 0.720323, 0.823436, 0.372996, 0.567674, 0.0662654, 0.0282141, 0.265578, 0.973171, 0.666187, 0.161559, 0.18833, 0.692873, 0.0415668, 0.180542, 0.100651, 0.9122, 0.848933, 0.0986598, 0.413384, 0.600706, 0.921116, 0.417723, 0.915706, 0.4991, 0.235294, 0.642321, 0.294678, 0.459773, 0.821892, 0.521086, 0.820835, 0.420583, 0.0694356, 0.142045, 0.519777, 0.996035, 0.230064, 0.901462, 0.0570203, 0.936726, 0.0804466, 0.324219, 0.231704, 0.653857, 0.77686, 0.877787, 0.585532, 0.907335, 0.478509, 0.898244, 0.509399, 0.93998, 0.333457, 0.911111, 0.240376, 0.433741, 0.343811, 0.640166, 0.803994, 0.338771, 0.25318, 0.247124, 0.667644, 0.85778, 0.380125, 0.279352, 0.385812, 0.485787, 0.073276, 0.632746, 0.602181, 0.839795, 0.383827, 0.999008, 0.161368, 0.696009, 0.0803506, 0.0669083, 0.627762, 0.0293949, 0.575738, 0.783778, 0.894671, 0.0255047, 0.0312134, 0.995024, 0.966357, 0.060387, 0.11614, 0.910705, 0.97223, 0.288007, 0.859113, 0.538287, 0.901633, 0.114395, 0.80549, 0.119997, 0.913041, 0.96864, 0.847122, 0.376428, 0.304454, 0.3547, 0.763945, 0.994089, 0.131418, 0.210581, 0.741318, 0.327375, 0.965342, 0.417546, 0.37163, 0.279321, 0.0719678, 0.856568, 0.653297, 0.823873, 0.788634, 0.561447, 0.0368962, 0.164636, 0.45971, 0.243616, 0.552693, 0.91708, 0.407654, 0.684348, 0.788239, 0.739047, 0.641911, 0.293135, 0.614863, 0.454767, 0.555778, 0.294433, 0.29805, 0.788502, 0.0334243, 0.676237, 0.65361, 0.214046, 0.0177261, 0.189304, 0.498024, 0.118308, 0.963888, 0.407714, 0.629715, 0.396166, 0.385083, 0.681577, 0.950198, 0.644092, 0.728264, 0.376151, 0.982424, 0.917, 0.97048, 0.0279279, 0.144728, 0.372595, 0.796806, 0.345967, 0.513465, 0.617405, 0.637598, 0.399704, 0.708465, 0.681057, 0.753367, 0.882881, 0.0401207, 0.250032, 0.573113, 0.17008, 0.595031, 0.330492, 0.651312, 0.62463, 0.353036, 0.020142, 0.284584, 0.977296, 0.247234, 0.417433, 0.685337, 0.76027, 0.0594405, 0.160709, 0.559443, 0.00535314, 0.720624, 0.293242, 0.740578, 0.37522, 0.989147, 0.373445, 0.843482, 0.805096, 0.23085, 0.48666, 0.163527, 0.314849, 0.559939, 0.903911, 0.817242, 0.503036, 0.853727, 0.909022, 0.747273, 0.590485, 0.630844, 0.630728, 0.629548, 0.43543, 0.316281, 0.556645, 0.444374, 0.565821, 0.729194, 0.195997, 0.0265693, 0.986677, 0.203989, 0.176029, 0.0199535, 0.299316, 0.464491, 0.728061, 0.229464, 0.323904, 0.901236, 0.753814, 0.512545, 0.889499, 0.945957, 0.685098, 0.545315, 0.0216512, 0.540925, 0.774731, 0.883067, 0.629874, 0.0150073, 0.45581, 0.497568, 0.656032, 0.38256, 0.119854, 0.0818771, 0.0944882, 0.379706, 0.783539, 0.75417, 0.350797, 0.706184, 0.709958, 0.822739, 0.493493, 0.857186, 0.792274, 0.16993, 0.498329, 0.603569, 0.448396, 0.80538, 0.703538, 0.146, 0.491452, 0.983054, 0.010177, 0.471146, 0.929877, 0.705029, 0.140753, 0.420074, 0.502608, 0.278529, 0.0754144, 0.0367962, 0.640371, 0.951626, 0.76067, 0.091209, 0.850092, 0.792538, 0.621864, 0.158214, 0.675515, 0.3349, 0.142078, 0.358923, 0.880086, 0.795988, 0.250101, 0.156054, 0.307004, 0.455991, 0.682152, 0.665944, 0.239613, 0.246061, 0.606435, 0.691024, 0.825271, 0.854492, 0.00488661, 0.334328, 0.929062, 0.758144, 0.572786, 0.0638767, 0.185312, 0.561627, 0.3009, 0.312006, 0.291547, 0.111193, 0.81938, 0.789581, 0.608088, 0.344256, 0.39222, 0.305515, 0.344941, 0.925881, 0.900206, 0.403886, 0.039095, 0.950403, 0.866024, 0.252525, 0.661937, 0.706071, 0.205677, 0.688487, 0.229861, 0.621937, 0.864278, 0.965386, 0.0472875, 0.448469, 0.465542, 0.647983, 0.925366, 0.725641, 0.902711, 0.352396, 0.57343, 0.0987301, 0.988477, 0.403776, 0.655851, 0.564298, 0.191757, 0.909853, 0.817385, 0.944658, 0.429676, 0.617083, 0.386296, 0.789026, 0.503205, 0.696269, 0.430404, 0.591985, 0.743304, 0.324891, 0.990424, 0.921132, 0.425184, 0.995688, 0.839809, 0.644021, 0.0190031, 0.285654, 0.558158, 0.689764, 0.435316, 0.0569915, 0.340858, 0.394885, 0.365642, 0.631062, 0.530601, 0.712735, 0.990042, 0.281404, 0.668662, 0.679428, 0.471992, 0.596845, 0.982266, 0.257362, 0.50196, 0.130304, 0.254164, 0.112169, 0.838253, 0.570304, 0.436114, 0.11975, 0.870855, 0.558439, 0.368332, 0.858584, 0.414183, 0.954945, 0.802257, 0.818688, 0.857604, 0.901512, 0.619855, 0.698505, 0.00155338, 0.229836, 0.821184, 0.73179, 0.40613, 0.0514568, 0.795304, 0.474855, 0.586639, 0.285376, 0.937922, 0.796976, 0.644185, 0.250051, 0.262254, 0.224909, 0.322996, 0.312023, 0.657926, 0.773502, 0.0526391, 0.194886, 0.355555, 0.965753, 0.555937, 0.369659, 0.763032, 0.729601, 0.234942, 0.13263, 0.208587, 0.790927, 0.39756, 0.0963787, 0.35287, 0.90399, 0.714379, 0.332029, 0.110528, 0.192698, 0.11752, 0.356852, 0.340058, 0.45982, 0.258951, 0.37678, 0.641335, 0.806043, 0.132535, 0.734649, 0.554962, 0.286301, 0.634713, 0.58303, 0.564306, 0.142513, 0.293555, 0.340322, 0.805673, 0.422831, 0.851423, 0.977257, 0.740316, 0.0864667, 0.474178, 0.428437, 0.948543, 0.45573, 0.886006, 0.943641, 0.483835, 0.69031, 0.53496, 0.719321, 0.584282, 0.359293, 0.0660638, 0.802731, 0.593861, 0.0970506, 0.594245, 0.483069, 0.593339, 0.996173, 0.141448, 0.92018, 0.600887, 0.260395, 0.684758, 0.512614, 0.666603, 0.57535, 0.913307, 0.993897, 0.382855, 0.0805282, 0.806475, 0.130722, 0.259415, 0.724846, 0.22201, 0.588911, 0.96823, 0.477599, 0.612768, 0.389618, 0.931194, 0.914288, 0.216016, 0.26814, 0.686002, 0.360242, 0.706958, 0.469066, 0.717673, 0.76456, 0.929895, 0.318081, 0.495209, 0.47529, 0.533926, 0.122629, 0.266277, 0.998293, 0.301682, 0.268766, 0.521445, 0.897113, 0.140565, 0.82481, 0.54482, 0.0411331, 0.138178, 0.16028, 0.339749, 0.279758, 0.0690523, 0.229626, 0.773689, 0.985868, 0.50159, 0.802227, 0.863187, 0.895413, 0.496282, 0.565149, 0.990162, 0.679116, 0.0414271, 0.229311, 0.969948, 0.782062, 0.831456, 0.218894, 0.26371, 0.657502, 0.806402, 0.648849, 0.258534, 0.976998, 0.490664, 0.304466, 0.844254, 0.97523, 0.786658, 0.687765, 0.81279, 0.73874, 0.602575, 0.128759, 0.375526, 0.323907, 0.495158, 0.817866, 0.786536, 0.413495, 0.442395, 0.308477, 0.652321, 0.694181, 0.644425, 0.428442, 0.998757, 0.218575, 0.750969, 0.5844, 0.479108, 0.859069, 0.682045, 0.731818, 0.769043, 0.194212, 0.462301, 0.272821, 0.651029, 0.900891, 0.429824, 0.423801, 0.735368, 0.453367, 0.514288, 0.20012, 0.610554, 0.628963, 0.0701268, 0.839386, 0.454427, 0.892609, 0.966491, 0.524895, 0.52262, 0.997758, 0.181262, 0.546566, 0.901785, 0.546405, 0.803243, 0.529801, 0.385335, 0.578729, 0.326991, 0.976556, 0.248603, 0.301094, 0.0429519, 0.0164084, 0.450241, 0.654039, 0.00272868, 0.712623, 0.0130062, 0.00747252, 0.533141, 0.946142, 0.692075, 0.992352, 0.362955, 0.182655, 0.39437, 0.999539, 0.835556, 0.935062, 0.129013, 0.191655, 0.534981, 0.709061, 0.789354, 0.284771, 0.431047, 0.285171, 0.271077, 0.366255, 0.468024, 0.810362, 0.805887, 0.351508, 0.219024, 0.558153, 0.463561, 0.746664, 0.194695, 0.695571, 0.534415, 0.656065, 0.79305, 0.942087, 0.418493, 0.00941055, 0.163401, 0.103549, 0.733254, 0.858649, 0.329274, 0.530856, 0.213811, 0.315749, 0.364533, 0.580353, 0.840329, 0.857601, 0.958896, 0.28791, 0.796802, 0.330086, 0.795437, 0.218877, 0.350685, 0.361633, 0.265448, 0.805827, 0.668202, 0.460781, 0.946176, 0.618074, 0.558126, 0.723665, 0.899372, 0.203582, 0.598526, 0.272009, 0.150661, 0.508734, 0.457369, 0.0249552, 0.328787, 0.434246, 0.0548489, 0.516235, 0.531443, 0.794063, 0.204529, 0.519404, 0.153389, 0.552393, 0.830848, 0.750029, 0.437622, 0.255244, 0.713685, 0.636782, 0.965375, 0.840532, 0.422907, 0.63536, 0.647608, 0.518581, 0.480577, 0.918447, 0.555567, 0.650525, 0.765643, 0.987827, 0.987532, 0.653915, 0.88091, 0.654662, 0.413945, 0.972806, 0.178423, 0.777592, 0.490022, 0.789507, 0.96624, 0.253769, 0.433083, 0.545944, 0.241708, 0.141122, 0.713111, 0.249066, 0.392112, 0.884242, 0.0381838, 0.396806, 0.653674, 0.490497, 0.565764, 0.260669, 0.0874451, 0.585119, 0.165015, 0.956667, 0.525893, 0.523706, 0.00542197, 0.158665, 0.914547, 0.892813, 0.662642, 0.185382, 0.64453, 0.360967, 0.12203, 0.135463, 0.892902, 0.792004, 0.0943852, 0.590347, 0.553052, 0.901379, 0.380196, 0.39361, 0.691038, 0.0602027, 0.261203, 0.317452, 0.741232, 0.690551, 0.38444, 0.941376, 0.719326, 0.265698, 0.0284344, 0.663863, 0.434642, 0.175415, 0.155145, 0.795022, 0.802594, 0.53775, 0.383979, 0.627522, 0.960725, 0.582843, 0.103717, 0.829046, 0.191652, 0.746783, 0.32102, 0.443852, 0.643639, 0.912117, 0.882651, 0.719068, 0.171581, 0.0919251, 0.35425, 0.584854, 0.226458, 0.732623, 0.521055, 0.461375, 0.95405, 0.93298, 0.0117622, 0.00387392, 0.493186, 0.290839, 0.385281, 0.989674, 0.231794, 0.602307, 0.72179, 0.338036, 0.935942, 0.897179, 0.183423, 0.678317, 0.711053, 0.0193125, 0.410937, 0.507207, 0.173439, 0.39218, 0.64884, 0.679692, 0.344518, 0.956455, 0.912477, 0.895762, 0.245218, 0.909765, 0.886632, 0.162184, 0.842051, 0.587987, 0.0911946, 0.0616147, 0.991976, 0.754416, 0.925751, 0.104254, 0.427802, 0.67159, 0.0994975, 0.771514, 0.446055, 0.135193, 0.135505, 0.568103, 0.248988, 0.175478, 0.0694318, 0.777683, 0.403786, 0.713657, 0.129955, 0.944242, 0.947967, 0.898715, 0.104035, 0.10935, 0.447119, 0.239982, 0.0664569, 0.80167, 0.00730447, 0.808298, 0.899291, 0.912966, 0.394694, 0.719938, 0.869431, 0.349673, 0.92118, 0.392323, 0.306616, 0.623095, 0.801703, 0.902663, 0.243608, 0.795898, 0.913631, 0.222991, 0.813668, 0.470407, 0.644124, 0.82575, 0.714662, 0.0314611, 0.97902, 0.65823, 0.445888, 0.486358, 0.164978, 0.0376539, 0.250487, 0.726926, 0.137483, 0.165057, 0.486292, 0.0713929, 0.39403, 0.742192, 0.306382, 0.477877, 0.466838, 0.583454, 0.92042, 0.290258, 0.301665, 0.878339, 0.046988, 0.974246, 0.651198, 0.710518, 0.860777, 0.163627, 0.185359, 0.686777, 0.881123, 0.0163253, 0.425492, 0.689934, 0.62808, 0.73478, 0.270705, 0.642689, 0.557245, 0.883161, 0.430399, 0.81064, 0.538683, 0.415912, 0.199571, 0.999213, 0.103815, 0.195871, 0.373067, 0.589498, 0.282816, 0.171064, 0.368255, 0.34819, 0.204787, 0.78065, 0.954606, 0.285295, 0.67862, 0.313054, 0.158713, 0.701675, 0.898511, 0.385409, 0.769553, 0.552321, 0.277662, 0.577892, 0.825347, 0.865165, 0.720462, 0.451984, 0.326939, 0.342138, 0.551345, 0.419862, 0.746212, 0.910316, 0.742052, 0.757438, 0.405861, 0.503971, 0.944662, 0.360125, 0.00822654, 0.564533, 0.299163, 0.816413, 0.537946, 0.517861, 0.849585, 0.188971, 0.0634645, 0.0673212, 0.146342, 0.175278, 0.795673, 0.373777, 0.546286, 0.773253, 0.0912896, 0.506337, 0.933412, 0.320582, 0.3445, 0.872153, 0.175124, 0.405562, 0.886953, 0.9944, 0.811637, 0.692684, 0.793248, 0.307852, 0.116635, 0.74099, 0.0661277, 0.566807, 0.432869, 0.337176, 0.821848, 0.734541, 0.963709, 0.711432, 0.658906, 0.0891826, 0.377552, 0.8065, 0.0649709, 0.758778, 0.783087, 0.31149, 0.945898, 0.0985, 0.388848, 0.465363, 0.84646, 0.163045, 0.909335, 0.407798, 0.343222, 0.388481, 0.775582, 0.521063, 0.762849, 0.958468, 0.204207, 0.493618, 0.800463, 0.00552669, 0.0787602, 0.608685, 0.209282, 0.354252, 0.77908, 0.248923, 0.258977, 0.710994, 0.940551, 0.590085, 0.0249065, 0.560352, 0.39465, 0.0679778, 0.530731, 0.382096, 0.744742, 0.956843, 0.228906, 0.650365, 0.600112, 0.619173, 0.342611, 0.0347588, 0.892132, 0.083481, 0.232227, 0.120129, 0.820559, 0.829139, 0.101528, 0.859875, 0.317799, 0.449449, 0.41438, 0.873112, 0.992732, 0.660953, 0.985393, 0.177618, 0.583418, 0.478677, 0.880801, 0.465477, 0.114581, 0.185467, 0.946421, 0.510866, 0.463243, 0.467624, 0.352251, 0.593756, 0.0279382, 0.800112, 0.142995, 0.514325, 0.469238, 0.28473, 0.223652, 0.715997, 0.488095, 0.801699, 0.631788, 0.956418, 0.976292, 0.0937843, 0.133368, 0.37809, 0.587238, 0.545838, 0.0967338, 0.919094, 0.282771, 0.992767, 0.0407912, 0.841486, 0.0646004, 0.542386, 0.072265, 0.311254, 0.217099, 0.201156, 0.719131, 0.415653, 0.525554, 0.217228, 0.20288, 0.275595, 0.555147, 0.0505124, 0.173597, 0.127641, 0.629114, 0.794809, 0.060557, 0.927047, 0.197431, 0.0738419, 0.00370722, 0.545598, 0.933096, 0.511001, 0.530726, 0.97507, 0.532409, 0.13159, 0.320286, 0.326397, 0.00880228, 0.995005, 0.617147, 0.845487, 0.415267, 0.0459226, 0.454742, 0.645369, 0.423785, 0.843181, 0.196786, 0.494675, 0.510028, 0.562132, 0.123534, 0.138025, 0.11027, 0.284769, 0.195783, 0.999027, 0.351437, 0.993307, 0.288432, 0.0379774, 0.114064, 0.91708, 0.716298, 0.115793, 0.0531683, 0.686147, 0.077986, 0.0188457, 0.637753, 0.903638, 0.766706, 0.392183, 0.721581, 0.256664, 0.175902, 0.231257, 0.393836, 0.00843427, 0.334791, 0.618091, 0.510078, 0.299471, 0.334034, 0.28075, 0.0550865, 0.745136, 0.536174, 0.870911, 0.203483, 0.0980402, 0.349197, 0.412849, 0.935278, 0.0153529, 0.0651288, 0.809422, 0.564107, 0.803961, 0.0177405, 0.613071, 0.800291, 0.258902, 0.918228, 0.156976, 0.178348, 0.0908561, 0.89576, 0.992044, 0.726232, 0.780642, 0.937897, 0.62199, 0.160523, 0.739961, 0.94062, 0.469771, 0.70994, 0.00281299, 0.0805916, 0.402899, 0.984933, 0.655274, 0.886486, 0.612083, 0.661397, 0.881197, 0.937729, 0.650793, 0.539215, 0.964424, 0.989627, 0.338105, 0.622144, 0.118824, 0.0989292, 0.322776, 0.445588, 0.911383, 0.390822, 0.0203864, 0.232822, 0.461619, 0.663026, 0.32982, 0.756794, 0.610385, 0.0242097, 0.994838, 0.477536, 0.433771, 0.671218, 0.382746, 0.201504, 0.584247, 0.891399, 0.547265, 0.919655, 0.516605, 0.859649, 0.50646, 0.55505, 0.826467, 0.220646, 0.97932, 0.0688576, 0.58229, 0.548189, 0.0749138, 0.478794, 0.823197, 0.225188, 0.0161685, 0.71767, 0.676555, 0.54906, 0.851259, 0.110762, 0.0208955, 0.762172, 0.812562, 0.251429, 0.775334, 0.66187, 0.456114, 0.540954, 0.359825, 0.0929966, 0.613078, 0.69473, 0.350031, 0.230682, 0.073909, 0.364522, 0.568473, 0.501085, 0.424935, 0.818985, 0.857166, 0.916295, 0.701885, 0.0609002, 0.296466, 0.184376, 0.762703, 0.0838022, 0.759049, 0.853185, 0.809232, 0.802498, 0.716835, 0.311225, 0.867661, 0.293557, 0.213948, 0.545535, 0.960924, 0.255488, 0.195426, 0.515302, 0.971729, 0.944004, 0.854764, 0.64686, 0.807915, 0.755688, 0.971568, 0.224035, 0.101062, 0.205162, 0.842769, 0.964089, 0.961896, 0.531705, 0.857807, 0.0429816, 0.77319, 0.712875, 0.986951, 0.275632, 0.811121, 0.509338, 0.342154, 0.896854, 0.169781, 0.31657, 0.19919, 0.680331, 0.643143, 0.244623, 0.890083, 0.812999, 0.667182, 0.714316, 0.503336, 0.544116, 0.871858, 0.6963, 0.800237, 0.989315, 0.187384, 0.392903, 0.716434, 0.701279, 0.0526855, 0.866285, 0.367396, 0.66601, 0.338738, 0.0953665, 0.306527, 0.117144, 0.321205, 0.905984, 0.253406, 0.212369, 0.981002, 0.559785, 0.210445, 0.721006, 0.445134, 0.579764, 0.680618, 0.742718, 0.727408, 0.111223, 0.842617, 0.698718, 0.625936, 0.98341, 0.144354, 0.823984, 0.952947, 0.127075, 0.827679, 0.0251896, 0.251956, 0.655068, 0.753275, 0.360489, 0.988721, 0.511388, 0.272199, 0.699127, 0.690071, 0.0140954, 0.858805, 0.216496, 0.618667, 0.591202, 0.250346, 0.691095, 0.47548, 0.616506, 0.654329, 0.99823, 0.324044, 0.937373, 0.0172027, 0.821493, 0.672795, 0.664694, 0.616335, 0.497045, 0.419486, 0.117143, 0.296083, 0.517373, 0.604572, 0.738358, 0.312212, 0.203983, 0.0989904, 0.408029, 0.202268, 0.961834, 0.21801, 0.701251, 0.0124776, 0.739799, 0.330518, 0.544307, 0.721845, 0.0924289, 0.619021, 0.00489626, 0.357682, 0.0167915, 0.0139818, 0.230874, 0.219651, 0.108326, 0.305198, 0.878217, 0.0735699, 0.595523, 0.96629, 0.928103, 0.462759, 0.629168, 0.578629, 0.116303, 0.745272, 0.212191, 0.862487, 0.0226316, 0.643428, 0.712581, 0.399366, 0.362851, 0.637957, 0.170903, 0.334893, 0.767069, 0.926067, 0.19111, 0.829639, 0.0489744, 0.0718803, 0.772276, 0.0671379, 0.219526, 0.666425, 0.324516, 0.849223, 0.0444149, 0.0508325, 0.994352, 0.992029, 0.837827, 0.729395, 0.772436, 0.929232, 0.63574, 0.489766, 0.449699, 0.533129, 0.811033, 0.389346, 0.559836, 0.393563, 0.692987, 0.900019, 0.183969, 0.378872, 0.749458, 0.187582, 0.0738074, 0.715319, 0.183984, 0.739933, 0.931859, 0.123202, 0.80449, 0.943757, 0.363412, 0.844419, 0.987341, 0.445451, 0.184425, 0.885213, 0.12904, 0.227998, 0.857338, 0.619134, 0.0796953, 0.603121, 0.94235, 0.157178, 0.221489, 0.358134, 0.663804, 0.108247, 0.807823, 0.975851, 0.172652, 0.688951, 0.619695, 0.152105, 0.925419, 0.426855, 0.98555, 0.999436, 0.018817, 0.789437, 0.478625, 0.750359, 0.249799, 0.00447455, 0.220368, 0.602763, 0.0840897, 0.38022, 0.173056, 0.3414, 0.496965, 0.317232, 0.826596, 0.171061, 0.224177, 0.93226, 0.381889, 0.37478, 0.381204, 0.925264, 0.473476, 0.590457, 0.250811, 0.531595, 0.558642, 0.023216, 0.302092, 0.726639, 0.212013, 0.979149, 0.361128, 0.33014, 0.284158, 0.271395, 0.751215, 0.51771, 0.241838, 0.906616, 0.852835, 0.690813, 0.923208, 0.533442, 0.637914, 0.672593, 0.277868, 0.0871473, 0.443862, 0.327002, 0.653336, 0.363183, 0.638585, 0.307927, 0.875472, 0.924286, 0.440336, 0.166823, 0.74671, 0.484405, 0.473298, 0.782216, 0.18792, 0.154303, 0.658264, 0.375911, 0.258576, 0.65102, 0.352268, 0.105328, 0.689562, 0.647228, 0.958253, 0.921509, 0.320463, 0.75973, 0.516058, 0.326907, 0.398956, 0.696665, 0.386193, 0.0330367, 0.805989, 0.461668, 0.832142, 0.482986, 0.903818, 0.758131, 0.18437, 0.85459, 0.411093, 0.197721, 0.137124, 0.818522, 0.439978, 0.918848, 0.459881, 0.905069, 0.224842, 0.172502, 0.51133, 0.45367, 0.289531, 0.922129, 0.283209, 0.859298, 0.541385, 0.186997, 0.0963847, 0.242027, 0.317196, 0.249943, 0.956512, 0.795562, 0.447017, 0.758737, 0.597899, 0.0678205, 0.714589, 0.450639, 0.289431, 0.121322, 0.534766, 0.0952377, 0.612136, 0.572657, 0.260953, 0.967063, 0.837276, 0.326271, 0.22595, 0.548158, 0.948147, 0.458449, 0.164319, 0.337362, 0.640601, 0.234542, 0.6541, 0.553137, 0.437913, 0.675261, 0.826249, 0.378051, 0.299304, 0.198478, 0.979453, 0.947471, 0.213475, 0.887924, 0.323763, 0.387056, 0.59038, 0.0878572, 0.611317, 0.939023, 0.464749, 0.884521, 0.136075, 0.308545, 0.0501225, 0.46804, 0.656506, 0.53156, 0.185471, 0.588786, 0.866148, 0.43435, 0.25395, 0.560148, 0.365888, 0.697416, 0.684085, 0.236197, 0.858656, 0.857796, 0.772509, 0.424949, 0.980972, 0.27236, 0.31821, 0.378948, 0.302754, 0.624945, 0.375999, 0.326303, 0.904928, 0.632524, 0.0823725, 0.967724, 0.791641, 0.774254, 0.625037, 0.213603, 0.353812, 0.0860418, 0.751271, 0.773454, 0.00618982, 0.67233, 0.597448, 0.393159, 0.0497163, 0.475396, 0.566993, 0.980683, 0.288339, 0.96918, 0.884001, 0.832028, 0.144988, 0.294111, 0.49664, 0.117055, 0.259346, 0.821602, 0.061518, 0.736345, 0.425512, 0.369898, 0.211762, 0.693884, 0.676335, 0.0152524, 0.97211, 0.0433982, 0.366512, 0.888694, 0.955822, 0.889153, 0.0372125, 0.21345, 0.883083, 0.242744, 0.768975, 0.853045, 0.0945063, 0.858629, 0.799843, 0.450901, 0.446201, 0.692674, 0.115186, 0.897038, 0.850661, 0.208599, 0.157899, 0.355117, 0.555143, 0.667026, 0.00534716, 0.358461, 0.763451, 0.669782, 0.330498, 0.189446, 0.98289, 0.450107, 0.605622, 0.161092, 0.604846, 0.337464, 0.646855, 0.910536, 0.0654921, 0.106992, 0.40464, 0.391736, 0.851763, 0.491897, 0.402315, 0.334675, 0.084682, 0.248078, 0.961128, 0.731344, 0.565869, 0.894578, 0.519648, 0.751937, 0.44442, 0.614476, 0.407141, 0.807049, 0.620295, 0.47751, 0.0896978, 0.0534998, 0.522895, 0.534609, 0.395034, 0.845148, 0.254379, 0.41921, 0.656933, 0.878164, 0.578541, 0.745261, 0.57209, 0.144998, 0.417937, 0.705993, 0.653521, 0.179933, 0.267852, 0.888023, 0.202804, 0.881854, 0.733401, 0.569979, 0.965619, 0.116868, 0.765611, 0.0117354, 0.66067, 0.184871, 0.996124, 0.22134, 0.253103, 0.614095, 0.924677, 0.479717, 0.397747, 0.460996, 0.597254, 0.982537, 0.230638, 0.802576, 0.161248, 0.967605, 0.968063, 0.90488, 0.877759, 0.581426, 0.323351, 0.891146, 0.565997, 0.42863, 0.0265817, 0.185198, 0.433823, 0.923209, 0.616753, 0.082132, 0.797626, 0.471495, 0.601742, 0.803097, 0.935267, 0.580271, 0.85766, 0.913317, 0.452457, 0.988367, 0.784135, 0.906452, 0.085474, 0.578816, 0.305636, 0.650333, 0.879154, 0.678051, 0.00822624, 0.102976, 0.338909, 0.446611, 0.434003, 0.570668, 0.300273, 0.483605, 0.816909, 0.758663, 0.48808, 0.55355, 0.510856, 0.984661, 0.878827, 0.605359, 0.95541, 0.531169, 0.747942, 0.963056, 0.158588, 0.446416, 0.203324, 0.733546, 0.20617, 0.693553, 0.128812, 0.250175, 0.986887, 0.869491, 0.267422, 0.223943, 0.975318, 0.415954, 0.335685, 0.834873, 0.226776, 0.721708, 0.175894, 0.434294, 0.954723, 0.373049, 0.49672, 0.236456, 0.744485, 0.495852, 0.125034, 0.834052, 0.301719, 0.446698, 0.315242, 0.888832, 0.160571, 0.345245, 0.0832564, 0.0767585, 0.689498, 0.957219, 0.26761, 0.968276, 0.467476, 0.920767, 0.652193, 0.845709, 0.179733, 0.387691, 0.283818, 0.672523, 0.265497, 0.907044, 0.33555, 0.89252, 0.992113, 0.640206, 0.0964299, 0.170263, 0.723773, 0.879968, 0.554244, 0.485016, 0.840035, 0.683328, 0.660686, 0.878358, 0.897059, 0.414904, 0.756054, 0.273302, 0.822468, 0.852035, 0.651968, 0.602582, 0.946796, 0.555171, 0.669272, 0.938815, 0.197596, 0.523584, 0.573327, 0.796545, 0.937456, 0.048061, 0.544333, 0.467184, 0.430173, 0.775402, 0.952241, 0.142089, 0.629312, 0.666139, 0.0154637, 0.759027, 0.437917, 0.58459, 0.815763, 0.966364, 0.293571, 0.872789, 0.39528, 0.744223, 0.391567, 0.839123, 0.191041, 0.542033, 0.187362, 0.80233, 0.0946452, 0.423851, 0.972116, 0.937188, 0.499391, 0.242787, 0.205823, 0.280878, 0.131757, 0.924721, 0.688502, 0.26433, 0.558425, 0.0342803, 0.291342, 0.493633, 0.888612, 0.46967, 0.860545, 0.154498, 0.925012, 0.1687, 0.524462, 0.998458, 0.376503, 0.440609, 0.13213, 0.186003, 0.625476, 0.854618, 0.417362, 0.954802, 0.672711, 0.230013, 0.840147, 0.198032, 0.159848, 0.799946, 0.326989, 0.822754, 0.607978, 0.33105, 0.317631, 0.0692817, 0.597222, 0.710338, 0.656665, 0.690403, 0.691704, 0.233809, 0.680931, 0.628137, 0.299253, 0.690258, 0.74661, 0.896513, 0.939887, 0.726954, 0.7281, 0.423418, 0.350914, 0.388573, 0.0262691, 0.111094, 0.0155945, 0.911295, 0.253345, 0.832734, 0.329541, 0.215786, 0.794686, 0.590766, 0.103029, 0.0678239, 0.306235, 0.214924, 0.966952, 0.942075, 0.609991, 0.902089, 0.0930404, 0.241278, 0.979989, 0.99641, 0.835776, 0.333605, 0.239885, 0.773994, 0.905422, 0.622631, 0.132915, 0.875424, 0.997041, 0.510196, 0.0594318, 0.566395, 0.180253, 0.168608, 0.845103, 0.278105, 0.215273, 0.54686, 0.673526, 0.216569, 0.0567452, 0.457604, 0.52021, 0.513327, 0.898756, 0.709734, 0.552623, 0.0439586, 0.840305, 0.792597, 0.864871, 0.835436, 0.677993, 0.658806, 0.425473, 0.19661, 0.3182, 0.00621336, 0.661405, 0.795435, 0.930732, 0.747833, 0.183835, 0.0501365, 0.798479, 0.620259, 0.268471, 0.797801, 0.781326, 0.324357, 0.939805, 0.0559456, 0.767421, 0.755513, 0.0519764, 0.132493, 0.0248076, 0.304857, 0.841179, 0.291624, 0.368053, 0.863488, 0.92917, 0.526666, 0.373791, 0.0771637, 0.936361, 0.0211384, 0.0483962, 0.247142, 0.393017, 0.322973, 0.304369, 0.351668, 0.428691, 0.831733, 0.796247, 0.252503, 0.979405, 0.53587, 0.298145, 0.766767, 0.448849, 0.586296, 0.48682, 0.0229408, 0.971635, 0.0476733, 0.418205, 0.736875, 0.927284, 0.334773, 0.136525, 0.249275, 0.813632, 0.583152, 0.526065, 0.358386, 0.456534, 0.542725, 0.99574, 0.188249, 0.206639, 0.816704, 0.682333, 0.344471, 0.206846, 0.233427, 0.622954, 0.0839815, 0.0590858, 0.163643, 0.938242, 0.925145, 0.824585, 0.850146, 0.161545, 0.650623, 0.36668, 0.726433, 0.573498, 0.118839, 0.309652, 0.875825, 0.708539, 0.3994, 0.378292, 0.346823, 0.966397, 0.0341669, 0.748059, 0.550583, 0.885271, 0.840168, 0.712603, 0.763671, 0.118454, 0.106439, 0.663247, 0.877381, 0.710707, 0.247122, 0.438658, 0.770922, 0.474123, 0.500763, 0.315488, 0.119231, 0.652578, 0.520729, 0.468573, 0.273246, 0.992347, 0.475993, 0.239294, 0.40192, 0.815229, 0.0236239, 0.85648, 0.697711, 0.599634, 0.775674, 0.666996, 0.944384, 0.61399, 0.168068, 0.046793, 0.651445, 0.152846, 0.191041, 0.617886, 0.145447, 0.182264, 0.821485, 0.167448, 0.563202, 0.298918, 0.63115, 0.589014, 0.635087, 0.350239, 0.0969615, 0.664998, 0.721069, 0.55308, 0.627465, 0.858022, 0.195475, 0.233206, 0.842556, 0.844793, 0.860757, 0.460435, 0.361283, 0.428379, 0.429536, 0.982359, 0.197429, 0.520442, 0.388261, 0.544675, 0.567665, 0.417953, 0.400498, 0.987421, 0.426966, 0.574687, 0.0727614, 0.588935, 0.40437, 0.567111, 0.764138, 0.919409, 0.49954, 0.210881, 0.0138897, 0.807207, 0.40468, 0.926323, 0.356926, 0.686285, 0.781897, 0.0382501, 0.870871, 0.989177, 0.022897, 0.868981, 0.72859, 0.0963152, 0.36607, 0.158067, 0.982238, 0.921682, 0.947472, 0.746331, 0.824697, 0.834751, 0.0741107, 0.852303, 0.0662244, 0.0778359, 0.859693, 0.301823, 0.40863, 0.478555, 0.261194, 0.628854, 0.563349, 0.742922, 0.631935, 0.629782, 0.481529, 0.727923, 0.558879, 0.0496743, 0.771751, 0.635876, 0.594351, 0.496492, 0.305198, 0.386633, 0.0511966, 0.888565, 0.0525001, 0.0145788, 0.969231, 0.115474, 0.858109, 0.654224, 0.409081, 0.902949, 0.0205533, 0.373431, 0.271492, 0.783677, 0.809073, 0.176137, 0.0683039, 0.493189, 0.487658, 0.122231, 0.183799, 0.783245, 0.317946, 0.0118384, 0.490967, 0.177391, 0.511249, 0.438773, 0.405479, 0.456114, 0.237934, 0.424058, 0.448476, 0.992217, 0.0793886, 0.220207, 0.890814, 0.608875, 0.384056, 0.322394, 0.114703, 0.630404, 0.500499, 0.217064, 0.011879, 0.293389, 0.0328165, 0.0455728, 0.163443, 0.955574, 0.647403, 0.27716, 0.615788, 0.782945, 0.7538, 0.638152, 0.271617, 0.255083, 0.706809, 0.571695, 0.771807, 0.836542, 0.000567578, 0.264149, 0.510301, 0.103659, 0.277211, 0.810934, 0.713591, 0.847755, 0.129939, 0.191732, 0.575733, 0.427882, 0.306037, 0.798808, 0.43265, 0.570117, 0.610907, 0.371059, 0.194394, 0.869866, 0.0980053, 0.328966, 0.583839, 0.686702, 0.450148, 0.0825889, 0.639514, 0.934002, 0.176331, 0.870912, 0.884921, 0.892602, 0.83422, 0.332842, 0.655451, 0.995743, 0.123723, 0.0838874, 0.0735535, 0.328897, 0.776021, 0.663424, 0.842025, 0.165418, 0.796723, 0.994479, 0.777982, 0.988285, 0.81751, 0.232685, 0.796556, 0.134869, 0.937736, 0.730038, 0.102924, 0.797538, 0.398124, 0.2193, 0.941041, 0.178793, 0.370095, 0.456298, 0.10271, 0.88975, 0.554706, 0.938587, 0.00952443, 0.832839, 0.614512, 0.389695, 0.338475, 0.105779, 0.030013, 0.145834, 0.979163, 0.283427, 0.982259, 0.638209, 0.502113, 0.975792, 0.258517, 0.811306, 0.888677, 0.0226233, 0.686223, 0.281673, 0.075892, 0.380821, 0.354112, 0.739364, 0.00326506, 0.408601, 0.838882, 0.148927, 0.588438, 0.803971, 0.861352, 0.0281249, 0.142082, 0.980767, 0.4727, 0.318568, 0.732069, 0.767087, 0.408185, 0.275385, 0.746653, 0.302207, 0.328272, 0.980878, 0.237112, 0.279175, 0.05732, 0.949098, 0.95211, 0.41683, 0.913593, 0.585272, 0.731422, 0.831071, 0.523386, 0.2435, 0.402443, 0.96218, 0.330094, 0.506793, 0.667463, 0.0532463, 0.384656, 0.480892, 0.907828, 0.242703, 0.62508, 0.0628068, 0.412704, 0.859126, 0.46665, 0.839594, 0.196547, 0.885917, 0.52919, 0.845043, 0.997674, 0.742276, 0.150465, 0.312334, 0.371924, 0.823548, 0.776735, 0.933922, 0.822807, 0.488695, 0.694652, 0.841843, 0.29865, 0.216355, 0.606901, 0.811569, 0.402505, 0.469624, 0.871989, 0.410021, 0.540256, 0.459707, 0.929718, 0.490855, 0.206233, 0.100186, 0.851738, 0.35273, 0.129216, 0.0723206, 0.800592, 0.220906, 0.71523, 0.977059, 0.957233, 0.311989, 0.477305, 0.983293, 0.403222, 0.79318, 0.680981, 0.960544, 0.346573, 0.206157, 0.724948, 0.778475, 0.485141, 0.990731, 0.86454, 0.153972, 0.274695, 0.430869, 0.0343598, 0.396289, 0.360719, 0.935147, 0.398451, 0.552993, 0.791499, 0.726453, 0.216642, 0.33641, 0.911936, 0.98014, 0.0752805, 0.617927, 0.641831, 0.694679, 0.528714, 0.863448, 0.943898, 0.842945, 0.457326, 0.655613, 0.617851, 0.0624182, 0.917751, 0.153406, 0.00703155, 0.161815, 0.161192, 0.794526, 0.611304, 0.388697, 0.375908, 0.321482, 0.46238, 0.890841, 0.726304, 0.119445, 0.45945, 0.642372, 0.27819, 0.991807, 0.903393, 0.32075, 0.256834, 0.434594, 0.795423, 0.0743181, 0.0985843, 0.00851327, 0.742762, 0.580673, 0.495459, 0.752728, 0.533136, 0.0654414, 0.876363, 0.0468122, 0.196566, 0.61732, 0.373321, 0.188806, 0.427122, 0.488199, 0.594674, 0.560862, 0.0124738, 0.614262, 0.487562, 0.994964, 0.54029, 0.236196, 0.936407, 0.767081, 0.802202, 0.481116, 0.371681, 0.0662999, 0.881687, 0.0460712, 0.638318, 0.457029, 0.957172, 0.316483, 0.620507, 0.477535, 0.196048, 0.232071, 0.0761495, 0.484229, 0.281814, 0.918541, 0.842766, 0.645656, 0.977852, 0.253823, 0.0163168, 0.488694, 0.719363, 0.149927, 0.907923, 0.385506, 0.447903, 0.577078, 0.865281, 0.748615, 0.825646, 0.938315, 0.583101, 0.79978, 0.786278, 0.889857, 0.616162, 0.973753, 0.123688, 0.997866, 0.197926, 0.454422, 0.134615, 0.995783, 0.0901228, 0.372619, 0.633932, 0.573633, 0.29503, 0.40696, 0.692533, 0.418123, 0.08999, 0.621666, 0.610839, 0.319541, 0.130944, 0.863841, 0.79175, 0.387958, 0.311667, 0.314145, 0.880035, 0.195331, 0.102769, 0.077521, 0.348547, 0.778556, 0.0351196, 0.313872, 0.619104, 0.380903, 0.166721, 0.084808, 0.238924, 0.0855165, 0.590484, 0.303223, 0.439155, 0.388211, 0.748415, 0.599395, 0.871233, 0.551148, 0.168111, 0.341538, 0.216981, 0.589836, 0.0111858, 0.676537, 0.880288, 0.749203, 0.718391, 0.660749, 0.475023, 0.81667, 0.41358, 0.0460364, 0.458593, 0.636802, 0.474983, 0.435445, 0.913075, 0.755092, 0.548132, 0.761527, 0.0540475, 0.0404141, 0.384099, 0.962312, 0.0894471, 0.880373, 0.907926, 0.512747, 0.892662, 0.145532, 0.211194, 0.852958, 0.277697, 0.711003, 0.40561, 0.487462, 0.93438, 0.988322, 0.657402, 0.561201, 0.700019, 0.549434, 0.622157, 0.403026, 0.694054, 0.624761, 0.0266026, 0.661599, 0.152754, 0.548711, 0.620303, 0.693589, 0.0947435, 0.73273, 0.272588, 0.504322, 0.756621, 0.0512852, 0.296373, 0.858782, 0.0012049, 0.136039, 0.726055, 0.499283, 0.609583, 0.060158, 0.516988, 0.591727, 0.127641, 0.33049, 0.107105, 0.073845, 0.147858, 0.132661, 0.879463, 0.985763, 0.164884, 0.325925, 0.183114, 0.5153, 0.275172, 0.206799, 0.953775, 0.265559, 0.667223, 0.45182, 0.630925, 0.404591, 0.30674, 0.117535, 0.437484, 0.551694, 0.980916, 0.484019, 0.34339, 0.383797, 0.777714, 0.496557, 0.104148, 0.136362, 0.496879, 0.2592, 0.842034, 0.113755, 0.934215, 0.684111, 0.297187, 0.902223, 0.623226, 0.215905, 0.111469, 0.751581, 0.404772, 0.18181, 0.0458085, 0.9405, 0.207297, 0.936861, 0.916877, 0.511745, 0.588955, 0.081103, 0.414922, 0.827207, 0.304441, 0.367503, 0.883934, 0.941778, 0.170289, 0.781402, 0.736297, 0.755603, 0.256458, 0.140324, 0.931026, 0.226043, 0.488777, 0.532656, 0.886382, 0.0726266, 0.00147335, 0.967352, 0.9559, 0.0585412, 0.368839, 0.86124, 0.355364, 0.0318065, 0.672371, 0.34971, 0.416424, 0.804753, 0.770332, 0.422839, 0.932511, 0.78332, 0.140325, 0.520752, 0.687964, 0.590559, 0.27232, 0.564823, 0.470769, 0.791079, 0.538737, 0.0750123, 0.322227, 0.24511, 0.158453, 0.781853, 0.736341, 0.782021, 0.413774, 0.794788, 0.103546, 0.660628, 0.712196, 0.123067, 0.438179, 0.417233, 0.539498, 0.924306, 0.597289, 0.0455687, 0.995272, 0.33533, 0.576448, 0.553769, 0.404858, 0.148773, 0.985233, 0.0603152, 0.149942, 0.891444, 0.527585, 0.793543, 0.428866, 0.31304, 0.070286, 0.957161, 0.642738, 0.355503, 0.99813, 0.638407, 0.591191, 0.760062, 0.389171, 0.612085, 0.540977, 0.216573, 0.379186, 0.246497, 0.950577, 0.976035, 0.00247349, 0.416511, 0.705125, 0.659157, 0.202592, 0.94161, 0.536315, 0.375576, 0.575986, 0.474521, 0.220533, 0.81084, 0.70606, 0.378051, 0.644783, 0.509928, 0.189258, 0.903192, 0.926658, 0.229202, 0.530374, 0.755699, 0.935052, 0.75209, 0.42277, 0.307052, 0.744172, 0.414551, 0.601431, 0.203123, 0.970106, 0.447853, 0.774443, 0.550283, 0.531463, 0.454428, 0.624175, 0.80451, 0.0122733, 0.984326, 0.77515, 0.860882, 0.00545328, 0.644511, 0.513259, 0.256793, 0.424406, 0.480532, 0.55194, 0.858007, 0.867714, 0.618724, 0.0617085, 0.215776, 0.63076, 0.53226, 0.260894, 0.98903, 0.119926, 0.310574, 0.573305, 0.905882, 0.0615376, 0.220883, 0.192277, 0.461793, 0.39844, 0.4698, 0.68659, 0.164087, 0.559168, 0.188446, 0.0603457, 0.0778744, 0.0692135, 0.306004, 0.996223, 0.482311, 0.14447, 0.5473, 0.578195, 0.0243164, 0.268366, 0.853925, 0.741338, 0.510542, 0.787791, 0.342535, 0.46082, 0.695999, 0.300268, 0.35698, 0.085459, 0.620649, 0.508802, 0.977806, 0.14818, 0.771428, 0.692267, 0.638859, 0.821941, 0.474646, 0.819243, 0.053599, 0.0805181, 0.622247, 0.249756, 0.160091, 0.339989, 0.572766, 0.701115, 0.373954, 0.402776, 0.516323, 0.862228, 0.600366, 0.856622, 0.670096, 0.017159, 0.505392, 0.0971802, 0.634215, 0.798549, 0.836786, 0.878541, 0.782955, 0.610123, 0.800318, 0.742984, 0.792854, 0.858895, 0.530985, 0.201989, 0.614193, 0.250036, 0.0329096, 0.541469, 0.314625, 0.267206, 0.535112, 0.756444, 0.525629, 0.569525, 0.128482, 0.504332, 0.961639, 0.451456, 0.542839, 0.676709, 0.388083, 0.967815, 0.28566, 0.575298, 0.199581, 0.503048, 0.91344, 0.534635, 0.0923399, 0.216477, 0.766435, 0.625943, 0.188939, 0.166453, 0.675521, 0.107427, 0.525369, 0.392974, 0.71329, 0.053587, 0.716162, 0.719565, 0.318373, 0.722562, 0.133746, 0.518253, 0.653409, 0.239526, 0.677378, 0.337883, 0.059063, 0.103771, 0.565242, 0.219584, 0.667821, 0.823601, 0.0941707, 0.775054, 0.193914, 0.068389, 0.758509, 0.159793, 0.167676, 0.25734, 0.933402, 0.965449, 0.470546, 0.3762, 0.816548, 0.800427, 0.837739, 0.373602, 0.336122, 0.945839, 0.520147, 0.593223, 0.932222, 0.317687, 0.0448492, 0.661502, 0.678291, 0.0185625, 0.43597, 0.171614, 0.650499, 0.23122, 0.788721, 0.691268, 0.38924, 0.765713, 0.368306, 0.027837, 0.330792, 0.404094, 0.548701, 0.160988, 0.793108, 0.150796, 0.0184224, 0.726547, 0.262104, 0.854258, 0.931108, 0.286701, 0.131018, 0.282084, 0.519234, 0.131277, 0.677196, 0.765588, 0.0170084, 0.870373, 0.949925, 0.344269, 0.106134, 0.284501, 0.117467, 0.571933, 0.278027, 0.830683, 0.794426, 0.802415, 0.682303, 0.248905, 0.603236, 0.530809, 0.420478, 0.569727, 0.973215, 0.317705, 0.52998, 0.42522, 0.856434, 0.775098, 0.612858, 0.348566, 0.246178, 0.498915, 0.202352, 0.607909, 0.0290249, 0.605622, 0.598653, 0.319962, 0.362838, 0.981371, 0.570996, 0.872617, 0.638643, 0.760747, 0.172332, 0.697107, 0.396599, 0.331669, 0.534245, 0.980304, 0.438336, 0.939648, 0.951851, 0.243193, 0.263216, 0.346751, 0.352664, 0.565522, 0.522972, 0.648305, 0.569183, 0.619839, 0.791415, 0.191347, 0.596297, 0.859243, 0.281288, 0.231212, 0.93154, 0.321489, 0.192133, 0.153875, 0.101907, 0.930146, 0.0104959, 0.130838, 0.74774, 0.977053, 0.321188, 0.430843, 0.189028, 0.555248, 0.877483, 0.00888616, 0.455066, 0.0837809, 0.949844, 0.844458, 0.557468, 0.12781, 0.853863, 0.933043, 0.53722, 0.289994, 0.740046, 0.0865591, 0.513104, 0.978469, 0.187784, 0.703587, 0.0206445, 0.977205, 0.865323, 0.374663, 0.276854, 0.0620759, 0.210361, 0.253033, 0.569303, 0.899107, 0.84108, 0.437966, 0.872324, 0.907059, 0.0545911, 0.643914, 0.818937, 0.651434, 0.819382, 0.0167287, 0.745918, 0.956177, 0.212305, 0.108908, 0.377741, 0.930721, 0.54714, 0.0650606, 0.171071, 0.783276, 0.976184, 0.433602, 0.852014, 0.0186597, 0.159334, 0.252568, 0.742758, 0.677328, 0.656731, 0.535654, 0.67263, 0.330072, 0.179511, 0.429737, 0.722825, 0.0859345, 0.15145, 0.318227, 0.776601, 0.591421, 0.205821, 0.251174, 0.845826, 0.296537, 0.438482, 0.567676, 0.508687, 0.73799, 0.91896, 0.84002, 0.63714, 0.795617, 0.945293, 0.660635, 0.720161, 0.642968, 0.713816, 0.982925, 0.0943227, 0.446776, 0.233126, 0.686313, 0.252798, 0.614421, 0.407957, 0.564496, 0.198181, 0.352621, 0.03432, 0.784207, 0.103678, 0.741437, 0.652841, 0.691829, 0.368661, 0.412088, 0.633289, 0.550927, 0.605668, 0.409671, 0.276473, 0.801483, 0.0601193, 0.479828, 0.525028, 0.995852, 0.484342, 0.5934, 0.973162, 0.167221, 0.701611, 0.503665, 0.210718, 0.849848, 0.0729654, 0.552033, 0.907674, 0.541271, 0.20123, 0.219367, 0.396734, 0.910584, 0.389428, 0.308437, 0.678582, 0.7795, 0.62043, 0.717345, 0.897138, 0.955562, 0.0458908, 0.203156, 0.502305, 0.661072, 0.720254, 0.691286, 0.189975, 0.517452, 0.700525, 0.473886, 0.308164, 0.258712, 0.500066, 0.978486, 0.070673, 0.982826, 0.996819, 0.992306, 0.750977, 0.603368, 0.509356, 0.596632, 0.711075, 0.901693, 0.631545, 0.74325, 0.0678517, 0.472053, 0.80544, 0.332577, 0.52847, 0.784145, 0.929382, 0.408199, 0.37805, 0.9085, 0.989946, 0.230063, 0.756818, 0.456959, 0.564848, 0.837682, 0.606645, 0.826045, 0.764971, 0.4254, 0.255228, 0.176442, 0.541592, 0.0383729, 0.216528, 0.480499, 0.00584255, 0.552458, 0.173364, 0.392994, 0.782133, 0.937217, 0.0818183, 0.129732, 0.661808, 0.278623, 0.42883, 0.113099, 0.78603, 0.850019, 0.878083, 0.0210051, 0.718046, 0.645013, 0.134954, 0.367119, 0.907327, 0.749089, 0.201227, 0.947814, 0.429924, 0.344656, 0.920301, 0.54574, 0.0873397, 0.161313, 0.212593, 0.670147, 0.828216, 0.40527, 0.270828, 0.684729, 0.00894568, 0.017525, 0.857584, 0.831911, 0.355444, 0.0885186, 0.16125, 0.219739, 0.083562, 0.225856, 0.642688, 0.959339, 0.585117, 0.313103, 0.942706, 0.47125, 0.04174, 0.868185, 0.691651, 0.115435, 0.858834, 0.070767, 0.656556, 0.278267, 0.943871, 0.636004, 0.62193, 0.760602, 0.141458, 0.301863, 0.878847, 0.260272, 0.436808, 0.549506, 0.522095, 0.842824, 0.622312, 0.0894913, 0.536627, 0.57376, 0.507491, 0.267119, 0.646091, 0.641091, 0.566119, 0.437834, 0.615521, 0.790321, 0.780238, 0.0306823, 0.324406, 0.148009, 0.129943, 0.826998, 0.407336, 0.381937, 0.253466, 0.270639, 0.948253, 0.750944, 0.307795, 0.973567, 0.413926, 0.0101885, 0.998211, 0.962249, 0.622416, 0.0710249, 0.0819806, 0.0743988, 0.84601, 0.691164, 0.685333, 0.668754, 0.675898, 0.765744, 0.793243, 0.867064, 0.922397, 0.363611, 0.3963, 0.76194, 0.0416252, 0.865838, 0.427631, 0.821304, 0.0332679, 0.632924, 0.0972608, 0.584571, 0.890572, 0.0833811, 0.0501982, 0.415017, 0.581504, 0.37737, 0.716057, 0.137826, 0.37492, 0.569505, 0.153757, 0.233306, 0.197997, 0.307718, 0.777254, 0.211829, 0.551106, 0.732888, 0.836681, 0.0774476, 0.720612, 0.0758478, 0.706555, 0.497854, 0.171229, 0.376935, 0.349104, 0.146891, 0.269855, 0.128086, 0.260694, 0.860494, 0.383145, 0.82853, 0.190987, 0.550705, 0.0653792, 0.487985, 0.306168, 0.401766, 0.578184, 0.59628, 0.538351, 0.820714, 0.173859, 0.880567, 0.00212733, 0.377413, 0.81118, 0.0260755, 0.229782, 0.620876, 0.904938, 0.782493, 0.181994, 0.30039, 0.846472, 0.370099, 0.777706, 0.220626, 0.709231, 0.550022, 0.302602, 0.34935, 0.213974, 0.782877, 0.345519, 0.233449, 0.840186, 0.242156, 0.529018, 0.518134, 0.212812, 0.398608, 0.787973, 0.0135168, 0.478868, 0.833135, 0.692261, 0.916571, 0.448403, 0.720458, 0.969085, 0.775502, 0.190532, 0.199317, 0.486771, 0.839715, 0.975533, 0.707038, 0.629707, 0.554501, 0.951124, 0.722807, 0.780159, 0.178306, 0.826408, 0.769103, 0.674648, 0.531527, 0.501066, 0.294615, 0.26425, 0.104227, 0.779103, 0.188097, 0.251246, 0.678221, 0.323596, 0.924817, 0.478126, 0.698434, 0.666344, 0.728313, 0.804891, 0.105832, 0.702245, 0.127214, 0.361724, 0.231855, 0.533985, 0.390546, 0.147519, 0.130404, 0.101021, 0.175344, 0.900074, 0.0690384, 0.839916, 0.298388, 0.868831, 0.253131, 0.770954, 0.0973254, 0.0810165, 0.0360158, 0.480229, 0.554621, 0.0664773, 0.910996, 0.493534, 0.451332, 0.0733803, 0.590965, 0.83281, 0.95637, 0.301041, 0.195014, 0.600048, 0.377172, 0.12934, 0.152917, 0.24745, 0.193457, 0.499116, 0.908873, 0.301171, 0.272838, 0.381785, 0.62267, 0.97932, 0.794863, 0.907003, 0.471885, 0.603262, 0.736802, 0.876966, 0.667812, 0.340376, 0.788925, 0.889081, 0.624403, 0.329373, 0.289359, 0.85086, 0.484386, 0.667459, 0.881724, 0.7047, 0.30936, 0.712072, 0.803781, 0.0873292, 0.256712, 0.681333, 0.794373, 0.836645, 0.227533, 0.449342, 0.578331, 0.359461, 0.951998, 0.349693, 0.733305, 0.212919, 0.56575, 0.490442, 0.734411, 0.801308, 0.323216, 0.925937, 0.932465, 0.702191, 0.689425, 0.548882, 0.671576, 0.499659, 0.989929, 0.212353, 0.348017, 0.84331, 0.834755, 0.278097, 0.897702, 0.941198, 0.91133, 0.00614004, 0.238388, 0.448227, 0.618809, 0.138466, 0.388041, 0.457745, 0.742009, 0.70753, 0.320637, 0.329873, 0.752051, 0.689848, 0.810418, 0.659539, 0.119535, 0.422586, 0.330316, 0.129902, 0.69991, 0.25556, 0.989403, 0.762385, 0.655517, 0.926823, 0.186008, 0.471091, 0.581717, 0.116584, 0.111205, 0.521409, 0.0395977, 0.336983, 0.818073, 0.714302, 0.148646, 0.272808, 0.838615, 0.153176, 0.168221, 0.558182, 0.82624, 0.937945, 0.248246, 0.843212, 0.664871, 0.308959, 0.691776, 0.203333, 0.446136, 0.298831, 0.172589, 0.601197, 0.61045, 0.326337, 0.270748, 0.263793, 0.652502, 0.901041, 0.995958, 0.586851, 0.512593, 0.219412, 0.438089, 0.31753, 0.0161652, 0.0827927, 0.535625, 0.365465, 0.670418, 0.113629, 0.682373, 0.126157, 0.535467, 0.141072, 0.718386, 0.372858, 0.44713, 0.417665, 0.57813, 0.619787, 0.416969, 0.465585, 0.737977, 0.234892, 0.0967611, 0.824322, 0.189961, 0.243761, 0.255116, 0.620698, 0.307735, 0.211343, 0.167206, 0.324388, 0.789726, 0.714917, 0.278007, 0.246024, 0.111303, 0.0926666, 0.465172, 0.277434, 0.942427, 0.000364714, 0.296953, 0.528964, 0.120688, 0.779078, 0.435304, 0.396874, 0.819971, 0.816767, 0.807546, 0.695585, 0.587133, 0.0793149, 0.672106, 0.126437, 0.290589, 0.572299, 0.954352, 0.137102, 0.0322239, 0.160362, 0.098661, 0.261525, 0.693996, 0.765613, 0.0906752, 0.560577, 0.298069, 0.0358857, 0.208007, 0.30035, 0.314611, 0.0822887, 0.43365, 0.432997, 0.294052, 0.461014, 0.289126, 0.527946, 0.55843, 0.707958, 0.989021, 0.67065, 0.31208, 0.882033, 0.356563, 0.143575, 0.39391, 0.989768, 0.670452, 0.191913, 0.862726, 0.209854, 0.22389, 0.386431, 0.943268, 0.211982, 0.400653, 0.819452, 0.137472, 0.212021, 0.34023, 0.902901, 0.236404, 0.358529, 0.398488, 0.731032, 0.0810002, 0.68721, 0.761582, 0.536575, 0.0791034, 0.912254, 0.941131, 0.179732, 0.405205, 0.326498, 0.388041, 0.738087, 0.0453206, 0.850094, 0.990425, 0.562124, 0.528829, 0.669991, 0.269767, 0.651324, 0.076527, 0.471104, 0.944213, 0.76615, 0.864152, 0.221544, 0.13444, 0.744768, 0.66061, 0.853453, 0.243712, 0.662378, 0.831419, 0.279089, 0.723714, 0.673407, 0.322496, 0.249414, 0.0808028, 0.669178, 0.129126, 0.225351, 0.80709, 0.932651, 0.946436, 0.312796, 0.619974, 0.750565, 0.471067, 0.109912, 0.494185, 0.0164315, 0.819836, 0.538484, 0.58588, 0.701269, 0.256867, 0.398663, 0.751361, 0.216873, 0.569277, 0.305113, 0.413615, 0.708337, 0.897865, 0.99918, 0.00804, 0.0130421, 0.13172, 0.880096, 0.771592, 0.659678, 0.61829, 0.842695, 0.876267, 0.0873269, 0.388796, 0.62127, 0.403993, 0.0521579, 0.795213, 0.554273, 0.494142, 0.0852959, 0.0147486, 0.68282, 0.725617, 0.59583, 0.361159, 0.263347, 0.902028, 0.371777, 0.171678, 0.129875, 0.836056, 0.533855, 0.435758, 0.179898, 0.0617481, 0.634131, 0.432243, 0.537918, 0.264819, 0.490502, 0.502087, 0.261294, 0.460881, 0.796605, 0.685365, 0.73922, 0.414836, 0.13934, 0.335801, 0.928842, 0.128643, 0.690233, 0.931754, 0.589909, 0.0521498, 0.357284, 0.215132, 0.12519, 0.667059, 0.741028, 0.858196, 0.250268, 0.931752, 0.226455, 0.0926751, 0.900977, 0.72546, 0.128732, 0.395859, 0.383374, 0.145999, 0.255524, 0.908561, 0.0880098, 0.687142, 0.435483, 0.376106, 0.047316, 0.453296, 0.704014, 0.682668, 0.957836, 0.861988, 0.0790265, 0.859532, 0.812038, 0.424282, 0.386979, 0.717574, 0.879845, 0.690133, 0.038615, 0.651056, 0.145131, 0.365493, 0.0344689, 0.408053, 0.66932, 0.438042, 0.226078, 0.600565, 0.448246, 0.132582, 0.582608, 0.259319, 0.724597, 0.698481, 0.391032, 0.318994, 0.767922, 0.48811, 0.528084, 0.499119, 0.867388, 0.2441, 0.039396, 0.54157, 0.618235, 0.462272, 0.516772, 0.566249, 0.386605, 0.444759, 0.907246, 0.763911, 0.785003, 0.322037, 0.318618, 0.359412, 0.398723, 0.863641, 0.0867606, 0.852835, 0.176591, 0.920423, 0.141677, 0.52492, 0.658256, 0.75469, 0.164688, 0.10115, 0.977233, 0.163985, 0.501142, 0.339944, 0.572064, 0.259706, 0.934196, 0.132286, 0.159633, 0.478493, 0.340137, 0.777931, 0.768235, 0.587262, 0.183898, 0.0847388, 0.655122, 0.399469, 0.688903, 0.758979, 0.463119, 0.191444, 0.413135, 0.592141, 0.215283, 0.966305, 0.274424, 0.959315, 0.863006, 0.514405, 0.512454, 0.273139, 0.418159, 0.0225537, 0.616309, 0.0102618, 0.777998, 0.736739, 0.588183, 0.174512, 0.00154778, 0.809377, 0.841374, 0.597238, 0.162157, 0.644668, 0.893445, 0.564681, 0.245195, 0.773268, 0.402547, 0.409795, 0.573206, 0.873709, 0.9881, 0.23034, 0.344563, 0.174986, 0.311645, 0.786533, 0.271418, 0.771397, 0.162902, 0.426276, 0.267799, 0.373866, 0.123405, 0.870209, 0.714825, 0.00543591, 0.0400893, 0.780131, 0.241383, 0.0701372, 0.91969, 0.690341, 0.135406, 0.329318, 0.379639, 0.50552, 0.109923, 0.909374, 0.316821, 0.711275, 0.620121, 0.0197481, 0.643886, 0.0958327, 0.414528, 0.922054, 0.0507135, 0.272248, 0.902437, 0.0705583, 0.0356929, 0.68747, 0.462343, 0.0628224, 0.975121, 0.985913, 0.867299, 0.575736, 0.812543, 0.846538, 0.370523, 0.488339, 0.264663, 0.451796, 0.405147, 0.622412, 0.823059, 0.866325, 0.798976, 0.532499, 0.494897, 0.436404, 0.0862593, 0.95266, 0.35852, 0.834699, 0.0143271, 0.162523, 0.863941, 0.136128, 0.101709, 0.384516, 0.0672405, 0.235785, 0.345931, 0.480923, 0.108362, 0.688198, 0.663375, 0.0442804, 0.793499, 0.250479, 0.84077, 0.547606, 0.607305, 0.945874, 0.94773, 0.101684, 0.355956, 0.898357, 0.370004, 0.899053, 0.597031, 0.446462, 0.636742, 0.202748, 0.166338, 0.1694, 0.66574, 0.620938, 0.106766, 0.0254695, 0.220305, 0.678259, 0.354764, 0.483237, 0.935125, 0.0618308, 0.76038, 0.24248, 0.895524, 0.207504, 0.982442, 0.246557, 0.767985, 0.168583, 0.488733, 0.255555, 0.314345, 0.97827, 0.0474358, 0.550337, 0.374238, 0.990384, 0.11637, 0.558007, 0.553717, 0.101164, 0.128323, 0.826148, 0.686183, 0.632341, 0.442759, 0.213565, 0.305745, 0.980627, 0.611632, 0.821573, 0.164835, 0.800218, 0.136598, 0.0943636, 0.613361, 0.749911, 0.19825, 0.315868, 0.584715, 0.340269, 0.681216, 0.628213, 0.739377, 0.498469, 0.217486, 0.875165, 0.107256, 0.0388254, 0.684437, 0.648387, 0.759068, 0.0863455, 0.0356647, 0.475533, 0.457221, 0.814866, 0.155224, 0.159775, 0.225762, 0.844223, 0.887599, 0.0328769, 0.882558, 0.43301, 0.891047, 0.641237, 0.436625, 0.506043, 0.412549, 0.294326, 0.00107597, 0.198905, 0.823397, 0.258908, 0.640055, 0.114144, 0.94769, 0.68169, 0.0611514, 0.934918, 0.594428, 0.559658, 0.651315, 0.783615, 0.881746, 0.413528, 0.462815, 0.830706, 0.327034, 0.699745, 0.898011, 0.532332, 0.502941, 0.178127, 0.582383, 0.946175, 0.252039, 0.197491, 0.21839, 0.304603, 0.783971, 0.643806, 0.4803, 0.145688, 0.779963, 0.181941, 0.797857, 0.840552, 0.415948, 0.782541, 0.514972, 0.433902, 0.198357, 0.534732, 0.457025, 0.133016, 0.447026, 0.414561, 0.583342, 0.0479735, 0.85276, 0.523466, 0.111548, 0.88397, 0.62687, 0.69954, 0.0883176, 0.962754, 0.624452, 0.850527, 0.0484547, 0.451703, 0.0884455, 0.480931, 0.0402721, 0.390394, 0.313574, 0.515101, 0.233129, 0.526889, 0.24189, 0.10573, 0.810232, 0.297812, 0.269022, 0.0505037, 0.860077, 0.55559, 0.834222, 0.575633, 0.021159, 0.849752, 0.740829, 0.558883, 0.736135, 0.465014, 0.825803, 0.581932, 0.0871889, 0.986642, 0.832284, 0.38697, 0.765759, 0.899416, 0.843232, 0.531267, 0.433739, 0.966289, 0.846241, 0.00426384, 0.95494, 0.353395, 0.39295, 0.620015, 0.451371, 0.476604, 0.187976, 0.171317, 0.420016, 0.192102, 0.773659, 0.91198, 0.608269, 0.170778, 0.341426, 0.661402, 0.424353, 0.6424, 0.896002, 0.61916, 0.529042, 0.891919, 0.91544, 0.237337, 0.547919, 0.167059, 0.463118, 0.509404, 0.397028, 0.0424441, 0.279269, 0.033374, 0.381536, 0.26654, 0.909158, 0.0750624, 0.476824, 0.10118, 0.903691, 0.0563105, 0.380574, 0.113715, 0.379801, 0.165381, 0.242048, 0.930619, 0.730273, 0.105671, 0.248541, 0.0594918, 0.054523, 0.529601, 0.642662, 0.76983, 0.482375, 0.594625, 0.135894, 0.699304, 0.241644, 0.958944, 0.178967, 0.904528, 0.683951, 0.101332, 0.912811, 0.616354, 0.202038, 0.050257, 0.590397, 0.566977, 0.726602, 0.937506, 0.802981, 0.0549501, 0.673011, 0.583607, 0.881868, 0.996313, 0.763281, 0.376004, 0.736794, 0.885829, 0.377308, 0.647416, 0.222001, 0.899687, 0.000399166, 0.785371, 0.706067, 0.419677, 0.331527, 0.913849, 0.287799, 0.863842, 0.394116, 0.252452, 0.50452, 0.721638, 0.315363, 0.857111, 0.128289, 0.321032, 0.899571, 0.013474, 0.387252, 0.773403, 0.996704, 0.999318, 0.436876, 0.83472, 0.166456, 0.312107, 0.434034, 0.0173215, 0.507042, 0.529282, 0.21992, 0.940103, 0.57176, 0.210635, 0.271865, 0.368036, 0.378554, 0.933001, 0.22344, 0.268014, 0.332343, 0.773332, 0.607381, 0.452452, 0.346824, 0.437242, 0.751531, 0.631105, 0.646027, 0.113901, 0.372686, 0.710771, 0.877413, 0.804387, 0.627982, 0.0816407, 0.759812, 0.785542, 0.76272, 0.585159, 0.539945, 0.534011, 0.907124, 0.514477, 0.0602369, 0.859823, 0.0983746, 0.604961, 0.33828, 0.0922718, 0.833016, 0.934691, 0.237954, 0.183435, 0.425417, 0.410531, 0.912271, 0.282749, 0.592619, 0.120565, 0.603792, 0.0200075, 0.66565, 0.779393, 0.656786, 0.0482675, 0.400373, 0.25322, 0.15115, 0.457793, 0.416774, 0.0140241, 0.14431, 0.348996, 0.406658, 0.854026, 0.587938, 0.676665, 0.303858, 0.421046, 0.871677, 0.488381, 0.145231, 0.329375, 0.330104, 0.265049, 0.646151, 0.321822, 0.692473, 0.641129, 0.962209, 0.289868, 0.564468, 0.743103, 0.796955, 0.549788, 0.294766, 0.634667, 0.912357, 0.0590331, 0.0826667, 0.590767, 0.125625, 0.625491, 0.800706, 0.813995, 0.234459, 0.564327, 0.413291, 0.68746, 0.186044, 0.206155, 0.667765, 0.498724, 0.791174, 0.864356, 0.118522, 0.0642801, 0.111739, 0.417754, 0.83959, 0.988943, 0.120211, 0.479872, 0.941327, 0.559271, 0.578378, 0.779107, 0.678067, 0.461335, 0.127909, 0.221766, 0.857017, 0.234974, 0.5312, 0.435006, 0.307173, 0.10292, 0.833312, 0.459131, 0.438498, 0.0272183, 0.946388, 0.754151, 0.718232, 0.705287, 0.77261, 0.0954795, 0.709051, 0.660344, 0.876939, 0.757057, 0.953471, 0.794308, 0.0782602, 0.619402, 0.735706, 0.629598, 0.603956, 0.273298, 0.0906271, 0.180643, 0.875974, 0.469385, 0.0172323, 0.516847, 0.594435, 0.483427, 0.161724, 0.694752, 0.660991, 0.958244, 0.713839, 0.232535, 0.642906, 0.453343, 0.0259699, 0.668546, 0.979621, 0.412286, 0.351582, 0.521411, 0.222158, 0.0362529, 0.432446, 0.626985, 0.539545, 0.406467, 0.913475, 0.843376, 0.967379, 0.202197, 0.94961, 0.11005, 0.668596, 0.0677949, 0.1737, 0.720505, 0.220703, 0.550035, 0.770747, 0.855581, 0.607484, 0.690045, 0.507089, 0.121695, 0.634992, 0.594639, 0.0290535, 0.263052, 0.297266, 0.455815, 0.99085, 0.44507, 0.114915, 0.888266, 0.0216848, 0.120336, 0.973144, 0.872735, 0.992345, 0.927404, 0.156868, 0.73961, 0.184074, 0.859208, 0.64004, 0.302357, 0.291901, 0.106613, 0.132052, 0.894399, 0.269791, 0.450062, 0.340077, 0.629331, 0.235629, 0.089653, 0.412883, 0.900113, 0.281339, 0.478687, 0.4991, 0.637249, 0.888193, 0.404431, 0.735389, 0.543217, 0.665372, 0.104277, 0.0115973, 0.0760221, 0.42581, 0.116402, 0.52517, 0.16289, 0.719278, 0.0275049, 0.563258, 0.754053, 0.428043, 0.251288, 0.635316, 0.836843, 0.699439, 0.149634, 0.325126, 0.993622, 0.389127, 0.412413, 0.506132, 0.768242, 0.428553, 0.102398, 0.233465, 0.514597, 0.0857406, 0.211276, 0.0190255, 0.294531, 0.0834323, 0.327302, 0.742976, 0.706107, 0.913361, 0.85401, 0.0645883, 0.327679, 0.110592, 0.14578, 0.926463, 0.302773, 0.337391, 0.226428, 0.988777, 0.248064, 0.373741, 0.688498, 0.57615, 0.866976, 0.10375, 0.984208, 0.552134, 0.530496, 0.100562, 0.381206, 0.401954, 0.424405, 0.273553, 0.526922, 0.562716, 0.538475, 0.444868, 0.940651, 0.510176, 0.961141, 0.801338, 0.844992, 0.357811, 0.125, 0.0565314, 0.360065, 0.5808, 0.00103131, 0.445364, 0.907767, 0.648957, 0.0373842, 0.339993, 0.678008, 0.822738, 0.476965, 0.138021, 0.462472, 0.010953, 0.852434, 0.406233, 0.377486, 0.786894, 0.367656, 0.902125, 0.228506, 0.0884607, 0.454144, 0.0626972, 0.989365, 0.0664401, 0.946825, 0.687592, 0.683559, 0.228131, 0.88693, 0.184427, 0.356165, 0.172682, 0.648249, 0.00718054, 0.355028, 0.195836, 0.570653, 0.837798, 0.624247, 0.63765, 0.180403, 0.275514, 0.980999, 0.304085, 0.726668, 0.263012, 0.476592, 0.314497, 0.352536, 0.93333, 0.694555, 0.916235, 0.290485, 0.160748, 0.299706, 0.555438, 0.579219, 0.114588, 0.405392, 0.138082, 0.46718, 0.222959, 0.66349, 0.970223, 0.908511, 0.955852, 0.397103, 0.125646, 0.74287, 0.663413, 0.819174, 0.0557902, 0.538024, 0.981734, 0.82484, 0.316546, 0.524897, 0.136838, 0.17505, 0.450692, 0.141453, 0.35099, 0.543927, 0.481581, 0.76077, 0.556214, 0.280659, 0.624437, 0.39479, 0.76014, 0.689714, 0.586183, 0.333313, 0.782148, 0.217834, 0.787186, 0.516531, 0.159284, 0.176605, 0.933335, 0.512654, 0.414592, 0.977185, 0.330633, 0.390163, 0.833851, 0.178697, 0.435806, 0.33165, 0.150526, 0.0968346, 0.892193, 0.881156, 0.86083, 0.32752, 0.219283, 0.498117, 0.6107, 0.248277, 0.599805, 0.768165, 0.553606, 0.288643, 0.528303, 0.901746, 0.764183, 0.455745, 0.387556, 0.0928248, 0.609989, 0.945597, 0.364361, 0.940392, 0.0596991, 0.22698, 0.606877, 0.92329, 0.154676, 0.481196, 0.664357, 0.323176, 0.979333, 0.595477, 0.15909, 0.785875, 0.191812, 0.991284, 0.488776, 0.798016, 0.0327427, 0.145919, 0.348871, 0.825308, 0.177508, 0.0947293, 0.178007, 0.0258089, 0.459542, 0.900765, 0.185631, 0.753224, 0.835949, 0.476019, 0.418449, 0.159907, 0.635526, 0.19939, 0.464808, 0.166286, 0.813637, 0.715158, 0.899118, 0.926415, 0.829257, 0.488908, 0.346654, 0.939304, 0.337547, 0.0613047, 0.382953, 0.175986, 0.8827, 0.912719, 0.861593, 0.186233, 0.411177, 0.0560949, 0.604721, 0.132047, 0.336403, 0.770969, 0.120769, 0.0828647, 0.712818, 0.676046, 0.229989, 0.0665386, 0.533117, 0.262892, 0.80655, 0.389792, 0.0184218, 0.596974, 0.252876, 0.798406, 0.273866, 0.630499, 0.166514, 0.933421, 0.455705, 0.219386, 0.0802194, 0.963171, 0.556084, 0.129555, 0.23051, 0.768886, 0.303718, 0.652342, 0.682682, 0.746003, 0.798312, 0.88324, 0.256958, 0.428659, 0.7857, 0.981503, 0.994557, 0.206317, 0.280171, 0.19274, 0.0152624, 0.150316, 0.657604, 0.455652, 0.288921, 0.901448, 0.543475, 0.432654, 0.75324, 0.985192, 0.257068, 0.517374, 0.274911, 0.108556, 0.380111, 0.00175874, 0.491546, 0.372086, 0.28108, 0.360878, 0.293488, 0.244742, 0.210927, 0.938699, 0.433631, 0.456019, 0.325943, 0.633567, 0.711283, 0.119612, 0.277167, 0.0640342, 0.452501, 0.669847, 0.940001, 0.203586, 0.814233, 0.98656, 0.51456, 0.485865, 0.567411, 0.201055, 0.454202, 0.969252, 0.00566036, 0.578845, 0.29853, 0.232686, 0.475156, 0.00966334, 0.962894, 0.906029, 0.506608, 0.593363, 0.356936, 0.630766, 0.951057, 0.55187, 0.443026, 0.0803929, 0.365892, 0.276321, 0.00406996, 0.474201, 0.798014, 0.551764, 0.690219, 0.507894, 0.1067, 0.187027, 0.625773, 0.292099, 0.19579, 0.105589, 0.500117, 0.775274, 0.666072, 0.0817655, 0.0632198, 0.838135, 0.562056, 0.178746, 0.239655, 0.921649, 0.993835, 0.0284272, 0.283064, 0.884358, 0.0037693, 0.175753, 0.912022, 0.398886, 0.230738, 0.870265, 0.422453, 0.166136, 0.444403, 0.134394, 0.0243013, 0.57289, 0.215749, 0.203832, 0.862608, 0.199681, 0.17864, 0.679575, 0.381172, 0.368123, 0.28913, 0.612708, 0.948579, 0.224444, 0.452975, 0.809432, 0.770786, 0.25513, 0.770731, 0.77347, 0.394963, 0.810749, 0.0856477, 0.825576, 0.531417, 0.540847, 0.968534, 0.650507, 0.829096, 0.0741462, 0.83297, 0.182788, 0.586927, 0.64391, 0.278483, 0.369935, 0.35762, 0.751446, 0.348311, 0.750885, 0.891035, 0.962312, 0.162112, 0.742538, 0.59719, 0.826395, 0.60207, 0.624687, 0.682101, 0.92347, 0.880812, 0.223429, 0.0163193, 0.902673, 0.361036, 0.1315, 0.592649, 0.292352, 0.178773, 0.253377, 0.0387774, 0.643361, 0.845786, 0.754204, 0.364412, 0.688774, 0.543894, 0.626031, 0.129036, 0.43138, 0.864455, 0.499019, 0.167178, 0.972318, 0.897078, 0.434557, 0.264836, 0.663721, 0.91563, 0.36214, 0.268102, 0.702476, 0.217885, 0.371567, 0.801458, 0.453572, 0.348115, 0.779678, 0.109024, 0.156197, 0.457548, 0.818176, 0.887956, 0.371319, 0.340275, 0.113297, 0.72692, 0.0864579, 0.972086, 0.226355, 0.943158, 0.963383, 0.565491, 0.135682, 0.262048, 0.663787, 0.0371624, 0.416354, 0.761012, 0.596951, 0.613046, 0.0913029, 0.562425, 0.514882, 0.497304, 0.78304, 0.557374, 0.206304, 0.901521, 0.186182, 0.427212, 0.513115, 0.0477757, 0.483842, 0.043603, 0.220047, 0.69668, 0.443932, 0.510881, 0.205206, 0.121241, 0.979441, 0.754877, 0.740813, 0.588721, 0.212736, 0.218135, 0.752825, 0.216225, 0.0572983, 0.17229, 0.802782, 0.41308, 0.416236, 0.264691, 0.9516, 0.47015, 0.834422, 0.157561, 0.660617, 0.42175, 0.21121, 0.916822, 0.362644, 0.344465, 0.869498, 0.132344, 0.515614, 0.637452, 0.0856399, 0.702774, 0.632814, 0.994222, 0.813245, 0.324698, 0.261958, 0.512191, 0.314155, 0.0298459, 0.193722, 0.0246972, 0.845139, 0.216759, 0.12464, 0.416077, 0.615874, 0.966491, 0.485168, 0.79835, 0.910517, 0.361892, 0.268438, 0.195217, 0.475558, 0.415002, 0.264999, 0.937565, 0.981831, 0.0622473, 0.855345, 0.0823687, 0.935555, 0.259333, 0.314524, 0.519565, 0.440571, 0.238681, 0.921524, 0.325186, 0.579364, 0.768366, 0.23077, 0.141342, 0.159562, 0.291442, 0.608055, 0.935602, 0.690342, 0.128028, 0.263339, 0.818997, 0.50609, 0.0633179, 0.330733, 0.889486, 0.0222448, 0.0822985, 0.424211, 0.601327, 0.389043, 0.317734, 0.815557, 0.996757, 0.593428, 0.457296, 0.55754, 0.7118, 0.918263, 0.667889, 0.0416402, 0.927053, 0.684176, 0.361, 0.933606, 0.350922, 0.839093, 0.347744, 0.55185, 0.399171, 0.641256, 0.458768, 0.399365, 0.915305, 0.0905295, 0.769893, 0.873669, 0.533639, 0.737803, 0.873882, 0.79035, 0.460389, 0.959252, 0.0235075, 0.664966, 0.309276, 0.907091, 0.767865, 0.940397, 0.430394, 0.207188, 0.698954, 0.525385, 0.780439, 0.443817, 0.947394, 0.449379, 0.2446, 0.803833, 0.837961, 0.874072, 0.355932, 0.871123, 0.892925, 0.876261, 0.401232, 0.840419, 0.0846447, 0.245079, 0.753676, 0.621389, 0.908238, 0.0897526, 0.22832, 0.209713, 0.945288, 0.474243, 0.584965, 0.788261, 0.178892, 0.116444, 0.286751, 0.975243, 0.285705, 0.0762904, 0.762451, 0.287118, 0.361205, 0.43199, 0.84422, 0.313397, 0.927558, 0.628644, 0.296487, 0.987807, 0.564613, 0.450969, 0.948415, 0.190203, 0.621007, 0.552632, 0.52465, 0.334195, 0.2038, 0.975997, 0.191036, 0.932729, 0.901927, 0.372546, 0.785125, 0.219687, 0.0603403, 0.95474, 0.872343, 0.502369, 0.260347, 0.100719, 0.107591, 0.918544, 0.947276, 0.911697, 0.0857927, 0.0543282, 0.287237, 0.817589, 0.603739, 0.529234, 0.345922, 0.769665, 0.81464, 0.36659, 0.248734, 0.454401, 0.858325, 0.485563, 0.109681, 0.605191, 0.882583, 0.490471, 0.66374, 0.322778, 0.309942, 0.549554, 0.927963, 0.0336136, 0.601127, 0.341718, 0.434179, 0.288023, 0.244169, 0.644237, 0.199442, 0.791785, 0.609136, 0.932866, 0.499607, 0.97615, 0.0352206, 0.352143, 0.38461, 0.934046, 0.83575, 0.66898, 0.995401, 0.424422, 0.00196869, 0.0124084, 0.206138, 0.0381497, 0.183296, 0.362223, 0.646135, 0.270299, 0.646394, 0.479877, 0.362601, 0.405054, 0.817061, 0.620404, 0.923365, 0.0286819, 0.272914, 0.0550773, 0.795127, 0.272573, 0.419841, 0.436207, 0.00644269, 0.472745, 0.306172, 0.683208, 0.0846664, 0.278022, 0.937906, 0.736935, 0.391318, 0.635296, 0.453457, 0.359954, 0.187794, 0.0275754, 0.916056, 0.115623, 0.0890904, 0.236138, 0.579221, 0.792092, 0.985648, 0.816696, 0.427662, 0.978369, 0.891848, 0.889974, 0.97991, 0.199756, 0.910905, 0.643061, 0.779523, 0.195637, 0.316388, 0.585641, 0.476156, 0.60803, 0.728508, 0.711617, 0.353096, 0.806364, 0.30593, 0.805763, 0.503923, 0.435795, 0.659308, 0.765653, 0.596422, 0.787324, 0.903191, 0.918849, 0.984993, 0.533512, 0.1665, 0.0220359, 0.678531, 0.296687, 0.686673, 0.341881, 0.81616, 0.657489, 0.799677, 0.50715, 0.978349, 0.163066, 0.846449, 0.122153, 0.110569, 0.80878, 0.793933, 0.109858, 0.495731, 0.351193, 0.0320605, 0.52948, 0.994171, 0.291095, 0.158886, 0.694642, 0.827215, 0.779676, 0.468675, 0.864875, 0.961448, 0.419436, 0.271058, 0.250975, 0.989009, 0.732048, 0.24875, 0.674875, 0.211105, 0.560233, 0.845549, 0.772419, 0.361914, 0.327298, 0.0669711, 0.685546, 0.802015, 0.419861, 0.0906196, 0.690113, 0.92287, 0.813777, 0.401564, 0.969683, 0.806847, 0.561618, 0.109984, 0.353588, 0.183174, 0.296495, 0.113677, 0.151616, 0.160105, 0.572576, 0.952327, 0.640968, 0.00196501, 0.111049, 0.435984, 0.22377, 0.848953, 0.764457, 0.874029, 0.476708, 0.97932, 0.129035, 0.514941, 0.542317, 0.844183, 0.381789, 0.561663, 0.771794, 0.303102, 0.434983, 0.272583, 0.486209, 0.201214, 0.0226167, 0.451245, 0.355426, 0.0545809, 0.888966, 0.10582, 0.0706944, 0.791683, 0.403473, 0.56042, 0.0609565, 0.773855, 0.369322, 0.736534, 0.699121, 0.0289885, 0.823741, 0.555119, 0.20037, 0.905732, 0.718291, 0.0844641, 0.964405, 0.877972, 0.976542, 0.863431, 0.435554, 0.458124, 0.66085, 0.559653, 0.899991, 0.696537, 0.884407, 0.485241, 0.169693, 0.492214, 0.327817, 0.464557, 0.72688, 0.510636, 3.72256e-05, 0.640568, 0.634003, 0.599166, 0.244155, 0.485384, 0.368018, 0.224248, 0.17215, 0.608862, 0.050801, 0.709557, 0.168748, 0.545006, 0.0330671, 0.744038, 0.444494, 0.999193, 0.0136202, 0.667463, 0.966947, 0.341507, 0.122541, 0.553909, 0.110285, 0.341132, 0.00632731, 0.209161, 0.0710216, 0.725341, 0.385506, 0.366752, 0.852555, 0.0429621, 0.713515, 0.592362, 0.988586, 0.109851, 0.335065, 0.538086, 0.532595, 0.59895, 0.994938, 0.395045, 0.432586, 0.917574, 0.600706, 0.996087, 0.689497, 0.810614, 0.788031, 0.768774, 0.618556, 0.0169556, 0.700734, 0.827853, 0.824144, 0.324779, 0.0568658, 0.418598, 0.998419, 0.160677, 0.548672, 0.201268, 0.22995, 0.95029, 0.146139, 0.336814, 0.057686, 0.565388, 0.169347, 0.797201, 0.374061, 0.739456, 0.736939, 0.0534442, 0.998434, 0.0051399, 0.835541, 0.198279, 0.45296, 0.98264, 0.560263, 0.188885, 0.892668, 0.39621, 0.109386, 0.316836, 0.284272, 0.366511, 0.160651, 0.0262769, 0.257196, 0.854866, 0.284365, 0.366404, 0.330294, 0.535286, 0.363246, 0.971337, 0.444471, 0.511065, 0.193465, 0.631262, 0.111417, 0.0541947, 0.429366, 0.454222, 0.0146598, 0.371483, 0.544778, 0.385455, 0.0993689, 0.506556, 0.674363, 0.846479, 0.239483, 0.378822, 0.468172, 0.128559, 0.691275, 0.742371, 0.284059, 0.613244, 0.106969, 0.737075, 0.814352, 0.447224, 0.432634, 0.597521, 0.182805, 0.161794, 0.0734229, 0.517181, 0.892901, 0.411676, 0.196756, 0.89416, 0.129698, 0.977754, 0.506168, 0.474227, 0.486898, 0.486799, 0.141466, 0.427511, 0.301441, 0.472785, 0.930508, 0.181775, 0.049949, 0.354898, 0.904821, 0.950944, 0.04103, 0.901985, 0.414743, 0.357464, 0.518813, 0.650724, 0.0569143, 0.558344, 0.659814, 0.333305, 0.449404, 0.599986, 0.256237, 0.678698, 0.850326, 0.716557, 0.249928, 0.104894, 0.817699, 0.904429, 0.155052, 0.300824, 0.0647324, 0.378203, 0.42182, 0.934557, 0.303367, 0.127447, 0.63626, 0.484572, 0.360052, 0.774446, 0.975823, 0.63545, 0.696228, 0.649522, 0.389415, 0.670237, 0.423613, 0.511352, 0.0355687, 0.0215115, 0.632218, 0.47376, 0.248807, 0.288003, 0.873852, 0.315307, 0.769269, 0.688987, 0.61817, 0.728338, 0.163371, 0.487634, 0.820945, 0.990741, 0.931875, 0.435982, 0.377883, 0.24133, 0.380386, 0.814295, 0.0209269, 0.885169, 0.709465, 0.93636, 0.0794399, 0.162973, 0.189059, 0.364105, 0.87738, 0.187765, 0.69413, 0.368692, 0.665187, 0.560796, 0.868607, 0.733205, 0.186302, 0.15196, 0.528003, 0.120308, 0.320919, 0.960412, 0.881067, 0.295913, 0.628835, 0.807905, 0.661576, 0.341103, 0.249475, 0.900911, 0.594571, 0.725973, 0.359318, 0.724656, 0.557005, 0.00766138, 0.141964, 0.718821, 0.931195, 0.867777, 0.414506, 0.503894, 0.421022, 0.825651, 0.206141, 0.91292, 0.548944, 0.198744, 0.60538, 0.993888, 0.127873, 0.419187, 0.588483, 0.182965, 0.0140592, 0.0600551, 0.261279, 0.2509, 0.25292, 0.216752, 0.04289, 0.827798, 0.580436, 0.0296799, 0.00926336, 0.557311, 0.660548, 0.79703, 0.858165, 0.691386, 0.607407, 0.129743, 0.917318, 0.147724, 0.768431, 0.184998, 0.140749, 0.577814, 0.928866, 0.874441, 0.844962, 0.911559, 0.168025, 0.643675, 0.704571, 0.78985, 0.276804, 0.281197, 0.0338128, 0.407325, 0.248202, 0.239628, 0.830321, 0.891477, 0.916737, 0.655029, 0.142365, 0.967451, 0.59282, 0.212244, 0.949718, 0.288187, 0.362454, 0.674981, 0.301357, 0.554134, 0.535576, 0.627044, 0.731061, 0.0726705, 0.0078096, 0.879073, 0.604342, 0.517625, 0.254952, 0.423111, 0.246639, 0.177197, 0.0659997, 0.835938, 0.322095, 0.394152, 0.874921, 0.561595, 0.498812, 0.748584, 0.616486, 0.331368, 0.589113, 0.227836, 0.442071, 0.562138, 0.770235, 0.441344, 0.975359, 0.34946, 0.617164, 0.979317, 0.26282, 0.0133631, 0.436993, 0.850822, 0.176373, 0.633789, 0.0109913, 0.992509, 0.851532, 0.143701, 0.31525, 0.944126, 0.984413, 0.404519, 0.378241, 0.944833, 0.0635824, 0.96717, 0.596602, 0.912801, 0.194747, 0.312028, 0.407516, 0.854388, 0.811451, 0.785035, 0.865755, 0.696651, 0.62489, 0.582013, 0.0687964, 0.0169895, 0.559723, 0.176556, 0.687998, 0.437269, 0.910802, 0.780115, 0.427156, 0.760038, 0.583962, 0.630915, 0.381982, 0.912495, 0.595187, 0.839338, 0.957846, 0.359903, 0.816214, 0.806878, 0.983288, 0.724097, 0.39241, 0.33402, 0.546075, 0.91049, 0.738866, 0.557567, 0.341265, 0.94488, 0.977952, 0.856056, 0.500289, 0.00265159, 0.460949, 0.15744, 0.769394, 0.495677, 0.245077, 0.887521, 0.775622, 0.468344, 0.390112, 0.842494, 0.385402, 0.539452, 0.489353, 0.336008, 0.15959, 0.165115, 0.553005, 0.980836, 0.206596, 0.863876, 0.654002, 0.215715, 0.306183, 0.486224, 0.426681, 0.852498, 0.574104, 0.727996, 0.305048, 0.236096, 0.565487, 0.128005, 0.519435, 0.138282, 0.420805, 0.734288, 0.484306, 0.0296007, 0.127708, 0.633982, 0.318204, 0.426714, 0.118984, 0.358504, 0.432299, 0.242051, 0.598057, 0.424738, 0.694848, 0.704655, 0.922875, 0.326423, 0.390694, 0.0606628, 0.421118, 0.290532, 0.870364, 0.637565, 0.613844, 0.878634, 0.35141, 0.957963, 0.890242, 0.404047, 0.0760006, 0.865201, 0.907828, 0.524186, 0.396781, 0.445076, 0.406459, 0.664782, 0.146491, 0.97103, 0.586007, 0.138321, 0.839083, 0.814549, 0.789171, 0.456028, 0.920055, 0.784548, 0.397995, 0.719838, 0.616418, 0.35416, 0.676665, 0.132795, 0.933376, 0.312559, 0.485991, 0.51831, 0.191254, 0.251019, 0.354653, 0.722027, 0.978415, 0.984746, 0.828504, 0.2601, 0.282231, 0.275912, 0.97673, 0.441132, 0.462412, 0.521256, 0.0938004, 0.895448, 0.410385, 0.0433032, 0.862253, 0.711822, 0.804567, 0.943025, 0.591489, 0.223069, 0.838248, 0.628455, 0.946139, 0.131133, 0.602136, 0.38264, 0.985207, 0.0808959, 0.273875, 0.318797, 0.328903, 0.428212, 0.124446, 0.165636, 0.23997, 0.165155, 0.361324, 0.178443, 0.282322, 0.172854, 0.271868, 0.250238, 0.717937, 0.974338, 0.743888, 0.96678, 0.986844, 0.856045, 0.653421, 0.179241, 0.0740971, 0.0766304, 0.336375, 0.212894, 0.934211, 0.997278, 0.269538, 0.421702, 0.442992, 0.430517, 0.0223909, 0.388047, 0.203982, 0.198411, 0.746942, 0.923477, 0.791974, 0.334785, 0.293055, 0.252477, 0.930505, 0.477281, 0.974369, 0.542273, 0.0565671, 0.855793, 0.320822, 0.264207, 0.745842, 0.392368, 0.746509, 0.459824, 0.472743, 0.721712, 0.709905, 0.350475, 0.620184, 0.145545, 0.0473067, 0.432195, 0.294732, 0.140441, 0.960437, 0.415798, 0.0431584, 0.679308, 0.909568, 0.0640943, 0.188892, 0.104753, 0.745761, 0.436645, 0.270399, 0.226013, 0.504947, 0.669316, 0.820962, 0.535999, 0.273035, 0.337008, 0.203571, 0.114914, 0.260652, 0.282534, 0.965981, 0.571098, 0.393268, 0.0361742, 0.666332, 0.125355, 0.833944, 0.245563, 0.773657, 0.138083, 0.575615, 0.800172, 0.647944, 0.674765, 0.543427, 0.312599, 0.200428, 0.892622, 0.485047, 0.972385, 0.496801, 0.319, 0.720034, 0.889781, 0.167518, 0.651482, 0.361188, 0.198271, 0.199293, 0.102301, 0.252575, 0.460878, 0.609484, 0.456292, 0.784005, 0.472145, 0.428725, 0.468657, 0.746991, 0.402354, 0.139418, 0.804557, 0.233456, 0.393089, 0.881374, 0.501119, 0.783106, 0.206664, 0.0644822, 0.597583, 0.64018, 0.560844, 0.032219, 0.528946, 0.0442685, 0.997045, 0.538214, 0.979589, 0.229041, 0.871115, 0.71063, 0.112246, 0.859703, 0.332685, 0.631384, 0.948647, 0.898164, 0.40927, 0.267202, 0.0917065, 0.779611, 0.204703, 0.370609, 0.412853, 0.472051, 0.104356, 0.590126, 0.0634925, 0.104977, 0.48445, 0.218552, 0.204078, 0.257033, 0.411859, 0.939311, 0.751081, 0.261188, 0.446775, 0.632727, 0.217953, 0.376171, 0.875016, 0.381464, 0.490141, 0.220281, 0.0472918, 0.367374, 0.22742, 0.515624, 0.190072, 0.601286, 0.297674, 0.096679, 0.648618, 0.579397, 0.295318, 0.440695, 0.618294, 0.301135, 0.893181, 0.160605, 0.705197, 0.684114, 0.231152, 0.141517, 0.604802, 0.213413, 0.390435, 0.0895624, 0.807746, 0.77274, 0.397655, 0.936012, 0.247536, 0.200595, 0.743014, 0.105074, 0.203182, 0.732056, 0.283836, 0.399282, 0.936678, 0.593811, 0.849943, 0.312948, 0.135168, 0.764301, 0.816494, 0.720607, 0.03582, 0.23626, 0.224345, 0.849473, 0.694959, 0.000914197, 0.489516, 0.89354, 0.164496, 0.871999, 0.383981, 0.728333, 0.516825, 0.604732, 0.998215, 0.22903, 0.370376, 0.888036, 0.734281, 0.603638, 0.0482923, 0.481127, 0.263689, 0.665475, 0.0702011, 0.592302, 0.16822, 0.34008, 0.302855, 0.86014, 0.170547, 0.361272, 0.34135, 0.509187, 0.841397, 0.150502, 0.872685, 0.24873, 0.756792, 0.0825902, 0.153533, 0.361082, 0.570998, 0.933709, 0.3299, 0.107717, 0.677329, 0.349624, 0.575538, 0.804646, 0.908089, 0.127185, 0.2456, 0.118156, 0.375953, 0.41017, 0.575039, 0.623639, 0.101804, 0.0558454, 0.125484, 0.607622, 0.203948, 0.418327, 0.405499, 0.507386, 0.737731, 0.894946, 0.667289, 0.147949, 0.81825, 0.942886, 0.108505, 0.524192, 0.00685106, 0.652932, 0.867348, 0.447596, 0.803778, 0.714046, 0.801762, 0.414293, 0.727759, 0.00605316, 0.515224, 0.29596, 0.549072, 0.473334, 0.211385, 0.647646, 0.252182, 0.488966, 0.0630215, 0.56367, 0.988093, 0.66257, 0.908756, 0.363363, 0.852328, 0.310326, 0.535536, 0.0170825, 0.729327, 0.116874, 0.838879, 0.870218, 0.691357, 0.193253, 0.957675, 0.742277, 0.257731, 0.0763241, 0.553045, 0.799275, 0.768486, 0.845476, 0.271778, 0.330848, 0.878108, 0.861101, 0.230572, 0.365767, 0.364425, 0.0460902, 0.564315, 0.329199, 0.159647, 0.889362, 0.665056, 0.360699, 0.234941, 0.0333162, 0.743062, 0.465344, 0.425126, 0.0448667, 0.487174, 0.521977, 0.0537651, 0.806049, 0.279968, 0.39395, 0.645693, 0.403757, 0.590454, 0.00837271, 0.784342, 0.70525, 0.839753, 0.0341006, 0.12629, 0.0069515, 0.0778617, 0.28737, 0.381177, 0.70132, 0.764585, 0.17237, 0.0529595, 0.462094, 0.023213, 0.558201, 0.280587, 0.657852, 0.022757, 0.314341, 0.153706, 0.162868, 0.641745, 0.598052, 0.319029, 0.826756, 0.0320386, 0.38043, 0.641555, 0.235267, 0.725618, 0.42515, 0.323938, 0.347753, 0.476153, 0.257355, 0.886651, 0.154094, 0.224312, 0.920766, 0.492778, 0.385719, 0.759328, 0.977097, 0.559022, 0.884808, 0.699165, 0.481631, 0.515907, 0.501303, 0.0446112, 0.391572, 0.773959, 0.777541, 0.903734, 0.913829, 0.370903, 0.368487, 0.553682, 0.761292, 0.614349, 0.957474, 0.395824, 0.822164, 0.98039, 0.750599, 0.356927, 0.762398, 0.355322, 0.840202, 0.366736, 0.402031, 0.676999, 0.194498, 0.173499, 0.846403, 0.274069, 0.575318, 0.421541, 0.82154, 0.0089027, 0.493083, 0.370883, 0.680493, 0.995773, 0.148005, 0.763908, 0.345673, 0.930257, 0.0182135, 0.517633, 0.283785, 0.731326, 0.543859, 0.693829, 0.762018, 0.945229, 0.0558828, 0.222589, 0.978122, 0.390255, 0.865985, 0.974409, 0.792804, 0.0940792, 0.376653, 0.922032, 0.153586, 0.192909, 0.173532, 0.716163, 0.130845, 0.645625, 0.0888867, 0.536087, 0.97714, 0.89536, 0.67602, 0.0953925, 0.686974, 0.247298, 0.151452, 0.332873, 0.0981902, 0.988683, 0.412657, 0.0851397, 0.0318406, 0.510257, 0.668259, 0.517164, 0.0391547, 0.806276, 0.797526, 0.427589, 0.117561, 0.538082, 0.674851, 0.0979511, 0.0507985, 0.714029, 0.911853, 0.964538, 0.375582, 0.522158, 0.218965, 0.968945, 0.0646577, 0.559528, 0.101097, 0.327255, 0.695524, 0.261179, 0.069643, 0.359392, 0.14242, 0.983725, 0.659602, 0.611082, 0.0832276, 0.805646, 0.244534, 0.917801, 0.613117, 0.0805238, 0.580163, 0.65044, 0.389736, 0.372102, 0.0151678, 0.125226, 0.232792, 0.817115, 0.308677, 0.550586, 0.569279, 0.715612, 0.427575, 0.0844825, 0.148163, 0.752786, 0.863253, 0.803135, 0.383866, 0.366217, 0.946739, 0.647277, 0.0860237, 0.601253, 0.651199, 0.76133, 0.213472, 0.0704136, 0.345536, 0.182688, 0.819225, 0.349157, 0.266612, 0.754589, 0.65234, 0.519933, 0.951381, 0.587869, 0.447968, 0.0936515, 0.195183, 0.581064, 0.417971, 0.221355, 0.639969, 0.524327, 0.717288, 0.877326, 0.828831, 0.466257, 0.31155, 0.783436, 0.327745, 0.615294, 0.306666, 0.361565, 0.961635, 0.869163, 0.242875, 0.365518, 0.394293, 0.0124096, 0.870355, 0.505084, 0.457293, 0.73447, 0.521223, 0.738282, 0.887272, 0.904392, 0.222565, 0.270792, 0.553299, 0.803908, 0.0835112, 0.50363, 0.389321, 0.80033, 0.999442, 0.739336, 0.253486, 0.423819, 0.191611, 0.208143, 0.784414, 0.541643, 0.675212, 0.632842, 0.960044, 0.635753, 0.865634, 0.358805, 0.95182, 0.861882, 0.107108, 0.645361, 0.852852, 0.512897, 0.0423952, 0.968991, 0.101197, 0.357598, 0.983648, 0.332065, 0.549322, 0.945327, 0.954272, 0.765911, 0.211604, 0.132759, 0.789122, 0.283424, 0.848477, 0.152383, 0.238871, 0.993014, 0.804065, 0.364784, 0.634562, 0.700287, 0.266394, 0.463335, 0.393761, 0.905476, 0.264196, 0.398405, 0.174744, 0.476953, 0.576694, 0.0524362, 0.240431, 0.495561, 0.155262, 0.527025, 0.886564, 0.0654902, 0.150847, 0.427092, 0.903602, 0.171493, 0.636779, 0.514837, 0.306811, 0.28194, 0.255086, 0.326178, 0.276933, 0.376174, 0.979233, 0.826831, 0.118635, 0.910199, 0.566246, 0.234089, 0.0188039, 0.922586, 0.842611, 0.38541, 0.981104, 0.108803, 0.545946, 0.469737, 0.577147, 0.651099, 0.553758, 0.794908, 0.634391, 0.361312, 0.819246, 0.810993, 0.366507, 0.698215, 0.553286, 0.546802, 0.553614, 0.183637, 0.119029, 0.633808, 0.200805, 0.0372143, 0.97548, 0.966938, 0.785146, 0.917965, 0.42305, 0.795677, 0.31634, 0.597346, 0.550683, 0.21344, 0.416174, 0.578587, 0.165249, 0.481249, 0.38813, 0.320805, 0.940898, 0.595799, 0.667156, 0.524314, 0.574669, 0.555044, 0.338005, 0.485876, 0.88912, 0.982312, 0.164608, 0.215708, 0.0675536, 0.0081713, 0.0552409, 0.87401, 0.300918, 0.988349, 0.827005, 0.186376, 0.157681, 0.00302455, 0.169866, 0.471027, 0.558492, 0.655853, 0.912541, 0.0740924, 0.334979, 0.733308, 0.467699, 0.584625, 0.587347, 0.232699, 0.933024, 0.682288, 0.612663, 0.412829, 0.665977, 0.207301, 0.490511, 0.607697, 0.774543, 0.774809, 0.950977, 0.756992, 0.269366, 0.477028, 0.681323, 0.651992, 0.0885744, 0.748902, 0.516897, 0.451794, 0.836757, 0.122795, 0.361501, 0.153291, 0.933768, 0.740094, 0.542968, 0.610731, 0.0368064, 0.803068, 0.00482385, 0.734192, 0.644232, 0.402771, 0.791875, 0.890462, 0.44001, 0.0830733, 0.869611, 0.964678, 0.477981, 0.945277, 0.370107, 0.652578, 0.293131, 0.04376, 0.864256, 0.623258, 0.48307, 0.164201, 0.943638, 0.441348, 0.926081, 0.0267296, 0.472526, 0.854453, 0.0891213, 0.475857, 0.871879, 0.509499, 0.280201, 0.939867, 0.260134, 0.0308078, 0.661491, 0.956955, 0.156406, 0.716674, 0.683081, 0.590255, 0.675594, 0.674348, 0.67377, 0.638153, 0.160912, 0.150911, 0.702488, 0.4165, 0.764524, 0.690996, 0.190479, 0.791328, 0.239311, 0.207419, 0.848268, 0.204797, 0.7104, 0.842953, 0.896385, 0.779759, 0.705262, 0.0478738, 0.55702, 0.478191, 0.606844, 0.118996, 0.0225894, 0.54085, 0.343021, 0.218631, 0.397936, 0.406045, 0.714357, 0.74911, 0.828513, 0.568655, 0.680846, 0.401819, 0.0608094, 0.214434, 0.542424, 0.472403, 0.821633, 0.45271, 0.731169, 0.76499, 0.509922, 0.565094, 0.176391, 0.651348, 0.307081, 0.292411, 0.0471905, 0.534923, 0.706235, 0.620766, 0.808308, 0.962332, 0.251427, 0.670097, 0.185047, 0.77783, 0.545547, 0.214405, 0.523846, 0.28188, 0.805017, 0.712864, 0.956599, 0.362843, 0.470433, 0.772978, 0.858986, 0.143639, 0.891464, 0.513285, 0.482104, 0.132897, 0.719146, 0.921183, 0.0655506, 0.00946056, 0.198652, 0.173242, 0.730765, 0.501729, 0.207614, 0.217488, 0.122694, 0.479763, 0.390774, 0.250547, 0.653028, 0.806164, 0.239921, 0.898338, 0.305939, 0.191451, 0.648294, 0.15154, 0.801401, 0.301872, 0.745287, 0.226763, 0.331783, 0.73963, 0.94339, 0.539125, 0.344924, 0.402575, 0.509457, 0.292524, 0.105412, 0.448621, 0.741957, 0.410952, 0.356394, 0.889006, 0.403332, 0.678526, 0.833845, 0.812577, 0.985769, 0.036368, 0.29008, 0.570656, 0.557277, 0.0717374, 0.434824, 0.339859, 0.58858, 0.975325, 0.919597, 0.457951, 0.620135, 0.384427, 0.228209, 0.31669, 0.667723, 0.994115, 0.51765, 0.563327, 0.589836, 0.210515, 0.346323, 0.493738, 0.301921, 0.664338, 0.87641, 0.460502, 0.396923, 0.966443, 0.494459, 0.971593, 0.262549, 0.0694564, 0.172827, 0.382514, 0.968542, 0.274666, 0.00331836, 0.250202, 0.00344558, 0.0274703, 0.00688962, 0.215951, 0.461463, 0.513889, 0.270262, 0.786878, 0.751636, 0.935399, 0.20562, 0.348898, 0.894775, 0.783169, 0.934923, 0.399237, 0.460612, 0.511877, 0.331075, 0.32564, 0.878951, 0.747974, 0.804088, 0.69554, 0.678725, 0.100393, 0.907764, 0.30675, 0.419933, 0.549802, 0.514653, 0.913517, 0.316668, 0.52095, 0.267707, 0.52142, 0.421244, 0.877753, 0.219721, 0.96638, 0.390328, 0.514977, 0.156551, 0.683053, 0.313855, 0.0468885, 0.145941, 0.286755, 0.953429, 0.945449, 0.30043, 0.141133, 0.154855, 0.518679, 0.493933, 0.674391, 0.344393, 0.764361, 0.564702, 0.161935, 0.800611, 0.0110539, 0.570565, 0.51828, 0.890983, 0.305598, 0.704893, 0.752696, 0.705727, 0.769524, 0.32399, 0.364751, 0.623441, 0.620293, 0.116416, 0.788385, 0.636862, 0.189527, 0.63281, 0.152059, 0.575479, 0.761368, 0.290289, 0.0808718, 0.499316, 7.71683e-05, 0.4727, 0.317388, 0.860308, 0.864656, 0.448016, 0.56233, 0.411283, 0.652817, 0.826704, 0.59099, 0.669423, 0.212474, 0.0471869, 0.920933, 0.312141, 0.181511, 0.814098, 0.831468, 0.167068, 0.636611, 0.104285, 0.703134, 0.623731, 0.0243967, 0.839699, 0.342128, 0.424502, 0.623919, 0.764014, 0.644001, 0.995352, 0.297929, 0.821413, 0.241151, 0.0656122, 0.47265, 0.86186, 0.661683, 0.129377, 0.419626, 0.617842, 0.3183, 0.385351, 0.188848, 0.322851, 0.865621, 0.479505, 0.152292, 0.408311, 0.772338, 0.499745, 0.80009, 0.962285, 0.582576, 0.970549, 0.639813, 0.571203, 0.759291, 0.0960695, 0.53903, 0.227856, 0.763825, 0.0383792, 0.644669, 0.587712, 0.102593, 0.924982, 0.25159, 0.250572, 0.0802209, 0.383922, 0.106164, 0.56256, 0.173975, 0.207292, 0.410468, 0.953122, 0.836021, 0.637233, 0.157448, 0.711174, 0.279807, 0.530596, 0.901919, 0.827159, 0.492436, 0.835496, 0.507331, 0.196427, 0.420931, 0.845796, 0.762819, 0.0662774, 0.871291, 0.972134, 0.375973, 0.410125, 0.0517371, 0.612242, 0.107208, 0.566992, 0.970326, 0.677435, 0.930902, 0.235176, 0.192749, 0.923456, 0.886289, 0.027513, 0.645326, 0.771353, 0.963128, 0.99619, 0.0659412, 0.428019, 0.980823, 0.647443, 0.916983, 0.226263, 0.412835, 0.491762, 0.40497, 0.156026, 0.855684, 0.882071, 0.926891, 0.76975, 0.481481, 0.0161217, 0.00522831, 0.319988, 0.155074, 0.412051, 0.0933146, 0.0886088, 0.895277, 0.582174, 0.448018, 0.409235, 0.0669516, 0.132087, 0.666296, 0.00866833, 0.155096, 0.374669, 0.648701, 0.375146, 0.152913, 0.109636, 0.154415, 0.614108, 0.0916618, 0.909499, 0.579876, 0.0395756, 0.213966, 0.356406, 0.984556, 0.373228, 0.507934, 0.932854, 0.360523, 0.232493, 0.57162, 0.0595727, 0.658732, 0.247998, 0.366988, 0.504186, 0.992903, 0.223777, 0.597548, 0.75979, 0.687973, 0.162974, 0.679501, 0.155538, 0.283408, 0.673023, 0.107771, 0.376834, 0.864856, 0.52621, 0.321577, 0.175433, 0.00619351, 0.275832, 0.0907132, 0.0718382, 0.674084, 0.442669, 0.790168, 0.526573, 0.855596, 0.88713, 0.117057, 0.227912, 0.951747, 0.789088, 0.695195, 0.00615152, 0.961394, 0.0945758, 0.935776, 0.101446, 0.887727, 0.989453, 0.0320962, 0.32615, 0.47812, 0.69467, 0.303993, 0.882058, 0.000734467, 0.366207, 0.544315, 0.480295, 0.147126, 0.789424, 0.527295, 0.588564, 0.574151, 0.526338, 0.209439, 0.487335, 0.801044, 0.985004, 0.376859, 0.167142, 0.688227, 0.235405, 0.813848, 0.701136, 0.645054, 0.661662, 0.437714, 0.486964, 0.740157, 0.529264, 0.937413, 0.510578, 0.022128, 0.036041, 0.0699558, 0.117385, 0.316326, 0.885856, 0.0403546, 0.231338, 0.635229, 0.241592, 0.250467, 0.0945615, 0.800571, 0.0840602, 0.315926, 0.128503, 0.813934, 0.0258813, 0.17596, 0.332589, 0.669219, 0.705743, 0.671, 0.261769, 0.381551, 0.239807, 0.88429, 0.219624, 0.083958, 0.00626468, 0.818293, 0.606267, 0.40237, 0.417485, 0.591737, 0.527343, 0.479031, 0.801822, 0.658967, 0.716588, 0.744282, 0.155606, 0.469337, 0.766239, 0.290825, 0.558359, 0.71311, 0.285717, 0.749339, 0.627337, 0.191896, 0.271965, 0.566574, 0.400855, 0.0837091, 0.21823, 0.496795, 0.334895, 0.135946, 0.572812, 0.836966, 0.893186, 0.962159, 0.942248, 0.836315, 0.771091, 0.598405, 0.392909, 0.390642, 0.367415, 0.108506, 0.509422, 0.54232, 0.237082, 0.978606, 0.872314, 0.633089, 0.238001, 0.460591, 0.201899, 0.184534, 0.325397, 0.934418, 0.963759, 0.786507, 0.0375785, 0.647151, 0.829225, 0.742572, 0.135389, 0.542884, 0.855696, 0.97466, 0.215872, 0.0772942, 0.130509, 0.229885, 0.310712, 0.964669, 0.532942, 0.721281, 0.335187, 0.626803, 0.887096, 0.2246, 0.137863, 0.363398, 0.201565, 0.344398, 0.664164, 0.579189, 0.576948, 0.837698, 0.878516, 0.376328, 0.55172, 0.634133, 0.400293, 0.0209109, 0.20232, 0.102912, 0.366968, 0.563481, 0.282843, 0.398847, 0.843752, 0.294638, 0.154387, 0.671821, 0.058539, 0.404984, 0.885257, 0.518336, 0.8205, 0.537827, 0.95051, 0.381612, 0.404012, 0.964825, 0.380396, 0.274525, 0.222361, 0.494103, 0.532174, 0.367596, 0.0728736, 0.269724, 0.292736, 0.30423, 0.361644, 0.322779, 0.46089, 0.346687, 0.722558, 0.576871, 0.355958, 0.995846, 0.0720617, 0.859159, 0.0573213, 0.00642774, 0.815126, 0.432851, 0.528463, 0.632068, 0.386987, 0.979928, 0.17268, 0.356581, 0.361901, 0.76519, 0.767691, 0.237448, 0.92085, 0.970494, 0.0405644, 0.488781, 0.129028, 0.805264, 0.461414, 0.774707, 0.772119, 0.883158, 0.193649, 0.725189, 0.946668, 0.317352, 0.143978, 0.596241, 0.266404, 0.61899, 0.130789, 0.117894, 0.140445, 0.828193, 0.350748, 0.168147, 0.73843, 0.914863, 0.210849, 0.300128, 0.80821, 0.652808, 0.194055, 0.724624, 0.465249, 0.659502, 0.933436, 0.319047, 0.944818, 0.998419, 0.23791, 0.700198, 0.384879, 0.793092, 0.697484, 0.236586, 0.190138, 0.189159, 0.181015, 0.37148, 0.333317, 0.270334, 0.564374, 0.618572, 0.781573, 0.141661, 0.418931, 0.31021, 0.656223, 0.100783, 0.411129, 0.720769, 0.621313, 0.679977, 0.881772, 0.589841, 0.408094, 0.365121, 0.628722, 0.603232, 0.818907, 0.14653, 0.921324, 0.72214, 0.113515, 0.112672, 0.41947, 0.111943, 0.748427, 0.135856, 0.438782, 0.858249, 0.871748, 0.108394, 0.255696, 0.485165, 0.764928, 0.642615, 0.527349, 0.656961, 0.827604, 0.623513, 0.0672744, 0.759552, 0.0518418, 0.383462, 0.752072, 0.0236901, 0.881091, 0.237981, 0.00071645, 0.0996164, 0.822663, 0.501758, 0.741016, 0.632086, 0.438797, 0.871133, 0.317806, 0.047918, 0.715757, 0.382381, 0.935342, 0.339043, 0.523275, 0.0327271, 0.320565, 0.0870344, 0.823622, 0.319834, 0.153559, 0.594371, 0.267636, 0.698517, 0.138399, 0.39011, 0.277741, 0.860284, 0.499121, 0.835385, 0.68415, 0.366272, 0.382257, 0.463301, 0.74469, 0.341145, 0.816966, 0.128728, 0.67425, 0.44642, 0.377272, 0.383248, 0.0781609, 0.809464, 0.911476, 0.323137, 0.76409, 0.963659, 0.794773, 0.191325, 0.935969, 0.357465, 0.548294, 0.58069, 0.415215, 0.72179, 0.76476, 0.926536, 0.402793, 0.618887, 0.446004, 0.0953802, 0.859194, 0.177043, 0.10478, 0.202788, 0.749946, 0.931449, 0.563113, 0.23868, 0.649197, 0.86184, 0.327508, 0.267626, 0.735183, 0.750009, 0.252342, 0.0876918, 0.234842, 0.153437, 0.618, 0.180229, 0.975278, 0.923142, 0.369849, 0.707614, 0.824766, 0.554974, 0.323158, 0.414107, 0.584251, 0.225541, 0.410231, 0.0637928, 0.798973, 0.107233, 0.870988, 0.438926, 0.307955, 0.595037, 0.728912, 0.352082, 0.397782, 0.318208, 0.0216747, 0.306465, 0.414503, 0.367382, 0.750917, 0.164633, 0.62087, 0.702756, 0.805683, 0.281092, 0.871067, 0.274652, 0.582594, 0.249105, 0.877142, 0.129128, 0.499272, 0.343304, 0.878821, 0.400978, 0.154943, 0.0106663, 0.156787, 0.0905567, 0.141933, 0.86586, 0.131593, 0.760632, 0.273636, 0.213491, 0.926497, 0.981464, 0.442809, 0.314826, 0.0164317, 0.410826, 0.482253, 0.0714787, 0.495202, 0.505363, 0.597986, 0.173456, 0.592068, 0.895854, 0.180029, 0.0414354, 0.424477, 0.695132, 0.557805, 0.760983, 0.890888, 0.566274, 0.349029, 0.662938, 0.427012, 0.284279, 0.579002, 0.0998554, 0.185824, 0.919968, 0.350051, 0.335549, 0.799062, 0.411838, 0.269206, 0.369434, 0.654228, 0.287728, 0.698396, 0.743933, 0.792599, 0.537847, 0.521517, 0.347953, 0.0222605, 0.871713, 0.130449, 0.0415191, 0.409467, 0.681558, 0.149537, 0.463528, 0.642759, 0.330412, 0.609467, 0.645689, 0.260059, 0.423172, 0.200007, 0.841315, 0.899878, 0.48096, 0.763262, 0.262757, 0.61073, 0.0382123, 0.974216, 0.571543, 0.911999, 0.0921221, 0.561062, 0.224255, 0.622645, 0.868477, 0.722134, 0.418045, 0.584071, 0.867199, 0.81787, 0.358168, 0.622796, 0.723772, 0.410458, 0.0113081, 0.257779, 0.377846, 0.413835, 0.573993, 0.565759, 0.90793, 0.880657, 0.392036, 0.244096, 0.039189, 0.655473, 0.740594, 0.419871, 0.703066, 0.668243, 0.0899058, 0.00525947, 0.787991, 0.344101, 0.0696129, 0.526693, 0.632484, 0.375728, 0.541594, 0.302108, 0.943538, 0.839067, 0.910706, 0.255279, 0.357752, 0.0497454, 0.48508, 0.863901, 0.951625, 0.109146, 0.992858, 0.870187, 0.385033, 0.677675, 0.931436, 0.941014, 0.00521233, 0.105928, 0.379234, 0.939234, 0.53624, 0.384615, 0.00650715, 0.808601, 0.662308, 0.735212, 0.0695151, 0.479795, 0.929365, 0.701006, 0.834088, 0.578986, 0.744037, 0.0661025, 0.973867, 0.261607, 0.985263, 0.253784, 0.544204, 0.395415, 0.811786, 0.944674, 0.753067, 0.189604, 0.972342, 0.245785, 0.147862, 0.151078, 0.57075, 0.635751, 0.0225594, 0.345569, 0.71366, 0.725875, 0.899222, 0.403696, 0.782293, 0.0489821, 0.887563, 0.250663, 0.0903273, 0.819318, 0.253849, 0.0132522, 0.82073, 0.139879, 0.655119, 0.255256, 0.469931, 0.593655, 0.0965594, 0.732102, 0.728242, 0.0409236, 0.251098, 0.401525, 0.0154955, 0.510258, 0.110728, 0.152886, 0.542219, 0.0361622, 0.682425, 0.511941, 0.298943, 0.813534, 0.388954, 0.997212, 0.693391, 0.854456, 0.967423, 0.0728081, 0.156642, 0.81487, 0.0938402, 0.870291, 0.00359174, 0.202676, 0.257248, 0.234333, 0.943676, 0.106374, 0.133571, 0.617775, 0.246666, 0.0606647, 0.482131, 0.969785, 0.507517, 0.668117, 0.275743, 0.902052, 0.531065, 0.79073, 0.494458, 0.887946, 0.186152, 0.428784, 0.891797, 0.382117, 0.129718, 0.281837, 0.629808, 0.759124, 0.747099, 0.197973, 0.334452, 0.628123, 0.442394, 0.991491, 0.722564, 0.62702, 0.125107, 0.868864, 0.123806, 0.84943, 0.109148, 0.583516, 0.267467, 0.0877627, 0.356361, 0.183282, 0.460304, 0.472661, 0.808155, 0.075511, 0.805119, 0.183075, 0.761517, 0.0534024, 0.991497, 0.317623, 0.714449, 0.764721, 0.218848, 0.324785, 0.154461, 0.222869, 0.0563985, 0.297541, 0.266297, 0.542826, 0.215959, 0.640029, 0.988854, 0.128625, 0.314472, 0.439426, 0.000551791, 0.912863, 0.531367, 0.679102, 0.601362, 0.105811, 0.314219, 0.618917, 0.764213, 0.80435, 0.297977, 0.671961, 0.471981, 0.241108, 0.44709, 0.0413762, 0.34009, 0.78462, 0.57256, 0.956279, 0.143586, 0.51728, 0.199193, 0.258778, 0.759231, 0.491842, 0.74638, 0.447776, 0.67335, 0.207011, 0.381928, 0.864476, 0.533022, 0.330994, 0.124275, 0.609111, 0.597315, 0.620957, 0.607921, 0.366002, 0.726719, 0.267236, 0.29924, 0.772097, 0.515079, 0.666223, 0.87179, 0.442252, 0.151785, 0.90383, 0.23036, 0.754115, 0.116684, 0.814789, 0.68958, 0.90636, 0.172124, 0.7386, 0.155248, 0.0162329, 0.624234, 0.258763, 0.948516, 0.381014, 0.810977, 0.359154, 0.235406, 0.356012, 0.0572227, 0.804645, 0.537197, 0.0874575, 0.896756, 0.136418, 0.636846, 0.634131, 0.314875, 0.548805, 0.846664, 0.01975, 0.0153124, 0.100952, 0.505608, 0.441595, 0.195817, 0.0710239, 0.418799, 0.25282, 0.502326, 0.206681, 0.22771, 0.674104, 0.517355, 0.979707, 0.987148, 0.0530045, 0.20894, 0.768026, 0.00615492, 0.125182, 0.131701, 0.33811, 0.035456, 0.409955, 0.0982514, 0.512931, 0.639528, 0.757367, 0.180887, 0.0871219, 0.693054, 0.033327, 0.432908, 0.302984, 0.306617, 0.90297, 0.231033, 0.932071, 0.621631, 0.929752, 0.0404275, 0.227181, 0.861182, 0.480741, 0.422462, 0.615124, 0.915947, 0.688272, 0.607257, 0.1993, 0.186042, 0.61691, 0.891939, 0.496047, 0.781836, 0.199635, 0.182435, 0.612945, 0.894777, 0.879591, 0.660906, 0.685511, 0.788352, 0.958656, 0.150172, 0.0447784, 0.273053, 0.216175, 0.674368, 0.93646, 0.140018, 0.47613, 0.698821, 0.453178, 0.888401, 0.933526, 0.615275, 0.000670214, 0.959936, 0.496414, 0.213354, 0.210349, 0.839183, 0.51017, 0.556663, 0.925326, 0.329077, 0.184683, 0.193059, 0.656384, 0.325528, 0.632767, 0.126699, 0.925868, 0.509177, 0.17664, 0.356426, 0.678694, 0.236191, 0.33291, 0.977011, 0.476779, 0.718923, 0.919251, 0.929422, 0.29569, 0.517599, 0.615562, 0.240366, 0.76536, 0.261594, 0.063962, 0.0635975, 0.7285, 0.0742968, 0.332238, 0.812666, 0.695448, 0.45352, 0.573693, 0.913696, 0.859744, 0.56925, 0.212218, 0.455896, 0.61064, 0.844059, 0.128933, 0.716734, 0.348449, 0.456306, 0.910307, 0.820405, 0.452022, 0.510913, 0.258321, 0.742017, 0.731542, 0.0235238, 0.040882, 0.476367, 0.656551, 0.624292, 0.204659, 0.111937, 0.615081, 0.82015, 0.275911, 0.498798, 0.461723, 0.657982, 0.853992, 0.558108, 0.906463, 0.924759, 0.619716, 0.95225, 0.589059, 0.0982191, 0.751691, 0.211192, 0.671573, 0.260589, 0.588264, 0.0346792, 0.0482873, 0.510086, 0.349504, 0.660904, 0.826408, 0.0655397, 0.580624, 0.3739, 0.163301, 0.545839, 0.625426, 0.200927, 0.273938, 0.5373, 0.403679, 0.456807, 0.239441, 0.996926, 0.102652, 0.68999, 0.475656, 0.741837, 0.401398, 0.812666, 0.546468, 0.189733, 0.342652, 0.499778, 0.717045, 0.305709, 0.550696, 0.53988, 0.100314, 0.643375, 0.474279, 0.656759, 0.466198, 0.662595, 0.633828, 0.758396, 0.761698, 0.541539, 0.489411, 0.618273, 0.434244, 0.742823, 0.606137, 0.7101, 0.954731, 0.948781, 0.7361, 0.587935, 0.486731, 0.647607, 0.75671, 0.702835, 0.711711, 0.586863, 0.848073, 0.300948, 0.148951, 0.816649, 0.988274, 0.0570969, 0.1096, 0.337949, 0.976047, 0.719306, 0.483844, 0.0940332, 0.196285, 0.747962, 0.379384, 0.106179, 0.799456, 0.174423, 0.406282, 0.246921, 0.256564, 0.828962, 0.698113, 0.0399356, 0.765064, 0.0191448, 0.386214, 0.658786, 0.652422, 0.337354, 0.288205, 0.891075, 0.158086, 0.906013, 0.018156, 0.714958, 0.89861, 0.234953, 0.527373, 0.582787, 0.568185, 0.959503, 0.636878, 0.527452, 0.121195, 0.107195, 0.441484, 0.418231, 0.753505, 0.727609, 0.0541921, 0.485776, 0.503656, 0.433017, 0.29717, 0.392388, 0.301751, 0.315352, 0.874547, 0.575243, 0.246232, 0.825157, 0.464173, 0.680217, 0.390777, 0.822336, 0.212753, 0.787785, 0.510527, 0.467947, 0.241204, 0.521058, 0.0909303, 0.200768, 0.394032, 0.0165349, 0.805721, 0.72412, 0.770236, 0.0582422, 0.971895, 0.792536, 0.542421, 0.78991, 0.590295, 0.747239, 0.99464, 0.200602, 0.241855, 0.598453, 0.493848, 0.27987, 0.30733, 0.127177, 0.254606, 0.494435, 0.0841555, 0.576549, 0.145725, 0.0546114, 0.0362378, 0.957958, 0.288541, 0.0565653, 0.145986, 0.36743, 0.192862, 0.290345, 0.537247, 0.746676, 0.681115, 0.996155, 0.234617, 0.369617, 0.121955, 0.580465, 0.307617, 0.136119, 0.104037, 0.865525, 0.124501, 0.532013, 0.64481, 0.739872, 0.632477, 0.814801, 0.93168, 0.38521, 0.908957, 0.807734, 0.321802, 0.896562, 0.236808, 0.6599, 0.498504, 0.347144, 0.180491, 0.101337, 0.191679, 0.855543, 0.612942, 0.407704, 0.425052, 0.272515, 0.550212, 0.567009, 0.108733, 0.146584, 0.208679, 0.234469, 0.465162, 0.624395, 0.774398, 0.218611, 0.409766, 0.0898917, 0.161216, 0.148789, 0.183195, 0.0843108, 0.869797, 0.224993, 0.499894, 0.862288, 0.241025, 0.752014, 0.36165, 0.654792, 0.923862, 0.0966728, 0.789465, 0.159298, 0.740185, 0.77383, 0.991635, 0.713953, 0.367305, 0.040462, 0.623321, 0.927709, 0.756282, 0.606602, 0.113327, 0.413703, 0.0914552, 0.420561, 0.748681, 0.306706, 0.72615, 0.695731, 0.548968, 0.573537, 0.979815, 0.626213, 0.305221, 0.158659, 0.633565, 0.170755, 0.485148, 0.268398, 0.507022, 0.906592, 0.809645, 0.627242, 0.999936, 0.0216729, 0.980077, 0.52859, 0.0123064, 0.00232397, 0.972017, 0.382635, 0.121302, 0.493779, 0.567817, 0.911133, 0.0871138, 0.599627, 0.115265, 0.450287, 0.780666, 0.865141, 0.307955, 0.735813, 0.567671, 0.591114, 0.941282, 0.83531, 0.67837, 0.130881, 0.0951256, 0.502334, 0.261934, 0.857612, 0.0353245, 0.708687, 0.316288, 0.0805712, 0.457426, 0.680125, 0.0843126, 0.0490645, 0.231759, 0.578554, 0.330789, 0.8628, 0.824783, 0.166781, 0.862871, 0.81565, 0.505021, 0.885875, 0.460335, 0.865464, 0.447298, 0.876686, 0.0830998, 0.15168, 0.627932, 0.182174, 0.753408, 0.836232, 0.672615, 0.656261, 0.302819, 0.740058, 0.689478, 0.279968, 0.635182, 0.117409, 0.00626437, 0.456218, 0.807713, 0.251191, 0.820771, 0.77408, 0.174188, 0.711287, 0.754445, 0.273267, 0.767036, 0.730595, 0.522546, 0.88703, 0.361198, 0.0353319, 0.877134, 0.988986, 0.204904, 0.992377, 0.939382, 0.341524, 0.396681, 0.272108, 0.239635, 0.662509, 0.22789, 0.0619506, 0.616147, 0.938789, 0.775433, 0.990873, 0.339021, 0.779552, 0.117211, 0.712956, 0.717854, 0.131823, 0.595103, 0.0292718, 0.292804, 0.193673, 0.933603, 0.593664, 0.466499, 0.128053, 0.663693, 0.42322, 0.382425, 0.570339, 0.776564, 0.943218, 0.093447, 0.0682411, 0.69909, 0.443366, 0.317931, 0.84869, 0.183775, 0.312399, 0.945411, 0.463951, 0.432878, 0.145746, 0.188364, 0.188764, 0.457817, 0.572288, 0.537736, 0.738041, 0.459331, 0.64282, 0.0624071, 0.474108, 0.182366, 0.922296, 0.839323, 0.74715, 0.778098, 0.573252, 0.0640188, 0.944897, 0.64589, 0.999235, 0.590727, 0.337527, 0.59781, 0.0359797, 0.955797, 0.77844, 0.662479, 0.513896, 0.0163096, 0.747998, 0.0360402, 0.705696, 0.973208, 0.845952, 0.709785, 0.67494, 0.805323, 0.0969568, 0.325202, 0.0714327, 0.791022, 0.757233, 0.0614314, 0.740612, 0.605001, 0.413097, 0.954425, 0.600159, 0.873595, 0.0655813, 0.384691, 0.251813, 0.745998, 0.533274, 0.443477, 0.854914, 0.147696, 0.70125, 0.872174, 0.765999, 0.894347, 0.879889, 0.660996, 0.969646, 0.304701, 0.445453, 0.659715, 0.381944, 0.520705, 0.714079, 0.836213, 0.832662, 0.754242, 0.30226, 0.829836, 0.370085, 0.459174, 0.0184747, 0.338752, 0.174265, 0.0608699, 0.538762, 0.819461, 0.129266, 0.145965, 0.487517, 0.780537, 0.412783, 0.679595, 0.43848, 0.378472, 0.0195386, 0.773959, 0.261836, 0.370295, 0.33285, 0.803101, 0.536888, 0.787662, 0.209807, 0.592566, 0.648303, 0.390306, 0.103752, 0.986843, 0.929569, 0.71857, 0.957646, 0.910195, 0.0648032, 0.319069, 0.680391, 0.826063, 0.0757938, 0.561298, 0.857515, 0.794047, 0.899224, 0.712926, 0.401044, 0.117418, 0.600851, 0.190359, 0.249319, 0.20464, 0.662339, 0.52592, 0.0274111, 0.836938, 0.239578, 0.651635, 0.0611872, 0.0945418, 0.528391, 0.283961, 0.364771, 0.848008, 0.485995, 0.321334, 0.515475, 0.928903, 0.570365, 0.600579, 0.434511, 0.489399, 0.52756, 0.210483, 0.967534, 0.578201, 0.859337, 0.455444, 0.601162, 0.968564, 0.464987, 0.294394, 0.950558, 0.859097, 0.353452, 0.508704, 0.0572695, 0.878435, 0.497444, 0.712181, 0.603459, 0.294603, 0.0183161, 0.742282, 0.134371, 0.838665, 0.244169, 0.215071, 0.219618, 0.868365, 0.223855, 0.10396, 0.640758, 0.360926, 0.600482, 0.428329, 0.6458, 0.884642, 0.821694, 0.564888, 0.354406, 0.50628, 0.56707, 0.48061, 0.256565, 0.162061, 0.264642, 0.176, 0.797713, 0.695703, 0.0347149, 0.358338, 0.738206, 0.996526, 0.866617, 0.702375, 0.769468, 0.778317, 0.958645, 0.705213, 0.24094, 0.613293, 0.064266, 0.355869, 0.28731, 0.755503, 0.972533, 0.236803, 0.631452, 0.337084, 0.569386, 0.597535, 0.86532, 0.107403, 0.729218, 0.929612, 0.316315, 0.374365, 0.419137, 0.0346695, 0.22599, 0.765266, 0.762818, 0.421948, 0.776579, 0.048408, 0.82698, 0.0443337, 0.110848, 0.945854, 0.622762, 0.824669, 0.452839, 0.13288, 0.0346938, 0.00553679, 0.465445, 0.348694, 0.457617, 0.214636, 0.684004, 0.65387, 0.890835, 0.103985, 0.783019, 0.618773, 0.350593, 0.0775283, 0.444621, 0.218794, 0.241285, 0.958123, 0.489579, 0.432822, 0.568368, 0.913775, 0.943068, 0.627533, 0.603186, 0.540667, 0.744381, 0.875275, 0.844755, 0.0174166, 0.464942, 0.317896, 0.0332355, 0.458499, 0.205926, 0.903786, 0.750243, 0.567707, 0.98369, 0.371693, 0.669664, 0.531643, 0.180359, 0.361585, 0.00335906, 0.318602, 0.195698, 0.369699, 0.990901, 0.677709, 0.407581, 0.493613, 0.344604, 0.676065, 0.906602, 0.638278, 0.994109, 0.740991, 0.131499, 0.929675, 0.221182, 0.13649, 0.332655, 0.340143, 0.721501, 0.769877, 0.236854, 0.480517, 0.726663, 0.351297, 0.926842, 0.083694, 0.494518, 0.155554, 0.450391, 0.982103, 0.996747, 0.174879, 0.256117, 0.139142, 0.214806, 0.158685, 0.586095, 0.338354, 0.614175, 0.841028, 0.292725, 0.466278, 0.0118071, 0.42022, 0.359505, 0.181877, 0.96953, 0.00445722, 0.348085, 0.82084, 0.700947, 0.375728, 0.960564, 0.111186, 0.540983, 0.0949823, 0.171617, 0.212728, 0.16643, 0.196016, 0.587307, 0.275467, 0.522472, 0.771585, 0.949014, 0.143102, 0.695324, 0.161092, 0.927273, 0.191568, 0.942837, 0.993984, 0.625371, 0.679651, 0.228692, 0.0646917, 0.510172, 0.240227, 0.32828, 0.693107, 0.433269, 0.605574, 0.904861, 0.0463241, 0.834283, 0.688484, 0.656301, 0.58022, 0.4408, 0.103781, 0.630454, 0.322349, 0.896852, 0.449489, 0.0570403, 0.617251, 0.883792, 0.179986, 0.707624, 0.77835, 0.243734, 0.561266, 0.586223, 0.438363, 0.953877, 0.743421, 0.733121, 0.216126, 0.90829, 0.516516, 0.692057, 0.951343, 0.0675496, 0.316683, 0.244522, 0.792675, 0.376051, 0.0143059, 0.643436, 0.298803, 0.0576619, 0.380479, 0.746218, 0.287584, 0.187898, 0.920636, 0.194111, 0.34229, 0.790386, 0.14599, 0.556051, 0.705318, 0.656441, 0.496029, 0.542332, 0.1645, 0.492319, 0.954601, 0.177927, 0.276164, 0.22762, 0.32493, 0.91123, 0.896803, 0.654353, 0.157141, 0.224378, 0.91494, 0.162872, 0.678897, 0.993529, 0.637636, 0.694994, 0.0509588, 0.836324, 0.695569, 0.44761, 0.955311, 0.582084, 0.958026, 0.712391, 0.00320049, 0.538606, 0.332169, 0.857005, 0.414114, 0.96268, 0.274303, 0.415184, 0.523528, 0.721638, 0.599046, 0.242755, 0.615222, 0.843255, 0.470847, 0.920254, 0.316538, 0.274159, 0.8287, 0.274861, 0.824354, 0.437267, 0.277049, 0.332389, 0.190334, 0.331419, 0.109626, 0.502458, 0.182766, 0.297817, 0.732984, 0.640832, 0.555837, 0.914909, 0.468271, 0.467219, 0.40506, 0.520978, 0.656365, 0.11869, 0.456818, 0.559413, 0.144938, 0.74336, 0.584908, 0.537623, 0.674104, 0.943294, 0.659128, 0.237188, 0.146685, 0.53129, 0.0179168, 0.356908, 0.732138, 0.702265, 0.349355, 0.763519, 0.617723, 0.523395, 0.965883, 0.487675, 0.427342, 0.373506, 0.453232, 0.0394451, 0.369668, 0.00914111, 0.881545, 0.0724042, 0.927582, 0.324555, 0.0941736, 0.47234, 0.756342, 0.752158, 0.449889, 0.117064, 0.114565, 0.0045895, 0.327032, 0.387492, 0.425723, 0.862187, 0.222687, 0.766443, 0.367362, 0.690474, 0.178881, 0.135989, 0.114383, 0.825347, 0.341722, 0.782338, 0.308572, 0.293956, 0.387742, 0.0142812, 0.401329, 0.144238, 0.0495865, 0.356923, 0.156867, 0.170243, 0.718662, 0.912029, 0.834639, 0.215414, 0.0839454, 0.148086, 0.217804, 0.811317, 0.920402, 0.0586855, 0.0329758, 0.0263719, 0.658111, 0.574262, 0.692549, 0.68292, 0.913411, 0.240955, 0.186842, 0.284684, 0.117448, 0.637308, 0.957041, 0.16833, 0.719782, 0.102436, 0.379235, 0.122089, 0.602184, 0.485571, 0.84005, 0.105527, 0.469871, 0.248729, 0.00676744, 0.366441, 0.403439, 0.33634, 0.757695, 0.0786852, 0.836826, 0.78299, 0.0722696, 0.78057, 0.657075, 0.193909, 0.550114, 0.652188, 0.0142821, 0.229322, 0.934737, 0.149157, 0.88318, 0.774805, 0.964661, 0.643678, 0.360938, 0.778543, 0.157738, 0.103629, 0.931544, 0.380012, 0.121943, 0.238004, 0.760559, 0.725979, 0.53513, 0.766723, 0.0401009, 0.620393, 0.630249, 0.405008, 0.959788, 0.80575, 0.236967, 0.625684, 0.388467, 0.953654, 0.994125, 0.0230346, 0.507076, 0.210318, 0.0385301, 0.552732, 0.0265099, 0.222398, 0.423747, 0.272351, 0.834126, 0.99586, 0.0463798, 0.829511, 0.757224, 0.147362, 0.663439, 0.268156, 0.849856, 0.918821, 0.411856, 0.297368, 0.080905, 0.835083, 0.780202, 0.0422531, 0.447372, 0.737908, 0.102246, 0.729214, 0.224439, 0.428741, 0.222256, 0.306354, 0.629916, 0.00518644, 0.477361, 0.0474277, 0.467655, 0.686702, 0.817537, 0.504495, 0.518373, 0.146359, 0.252321, 0.203889, 0.910166, 0.531066, 0.313883, 0.2381, 0.545953, 0.216966, 0.418459, 0.912806, 0.176371, 0.438982, 0.240744, 0.0794779, 0.994595, 0.278453, 0.400769, 0.0782807, 0.889999, 0.418176, 0.347143, 0.273475, 0.205514, 0.759991, 0.903665, 0.409366, 0.0882369, 0.376072, 0.721938, 0.937471, 0.120882, 0.397291, 0.869296, 0.266098, 0.295355, 0.174629, 0.37502, 0.155379, 0.404924, 0.1164, 0.00462026, 0.763402, 0.496744, 0.298112, 0.951157, 0.713349, 0.0997802, 0.194445, 0.677812, 0.570464, 0.540525, 0.611322, 0.79392, 0.663679, 0.402192, 0.989105, 0.589964, 0.738755, 0.986626, 0.11957, 0.0732776, 0.240861, 0.186489, 0.512955, 0.432652, 0.0161617, 0.38682, 0.925296, 0.342052, 0.371361, 0.470874, 0.949556, 0.480838, 0.0379082, 0.9407, 0.0782391, 0.979132, 0.204998, 0.224844, 0.229374, 0.745913, 0.928883, 0.622481, 0.519469, 0.799578, 0.792531, 0.554854, 0.291082, 0.294391, 0.971212, 0.288005, 0.747603, 0.809856, 0.791771, 0.630849, 0.303592, 0.353968, 0.249254, 0.68871, 0.396236, 0.605167, 0.796824, 0.138875, 0.455243, 0.385981, 0.964006, 0.0848079, 0.792819, 0.869265, 0.803885, 0.935309, 0.417941, 0.203644, 0.956039, 0.64233, 0.35857, 0.39705, 0.811816, 0.728825, 0.685236, 0.0717718, 0.340452, 0.201315, 0.231661, 0.367571, 0.825858, 0.965742, 0.535537, 0.557745, 0.795049, 0.688065, 0.715029, 0.11602, 0.346939, 0.0779004, 0.610731, 0.0363135, 0.191785, 0.149359, 0.179063, 0.619259, 0.894837, 0.606516, 0.835649, 0.744404, 0.85976, 0.00801029, 0.314161, 0.530013, 0.78919, 0.798813, 0.198568, 0.13958, 0.455709, 0.618315, 0.192537, 0.0597794, 0.656235, 0.383071, 0.160273, 0.991552, 0.100751, 0.0272762, 0.953681, 0.965513, 0.169782, 0.0975637, 0.888773, 0.468986, 0.98299, 0.642847, 0.982967, 0.355461, 0.784416, 0.0804038, 0.104699, 0.0973213, 0.964221, 0.299878, 0.382839, 0.457528, 0.163674, 0.563012, 0.07733, 0.848005, 0.13214, 0.608961, 0.756853, 0.134063, 0.368275, 0.909723, 0.946898, 0.00995811, 0.850901, 0.0314379, 0.195158, 0.913039, 0.279981, 0.292827, 0.602928, 0.103975, 0.0230125, 0.417945, 0.518034, 0.787355, 0.912443, 0.628286, 0.711559, 0.47867, 0.145804, 0.528277, 0.425184, 0.487301, 0.22956, 0.212752, 0.781067, 0.256432, 0.554427, 0.289068, 0.796314, 0.411552, 0.322083, 0.409769, 0.910203, 0.400269, 0.344701, 0.35303, 0.44672, 0.792342, 0.303823, 0.494524, 0.229047, 0.818262, 0.96123, 0.206095, 0.984454, 0.278431, 0.345315, 0.504815, 0.0530352, 0.362624, 0.593876, 0.104974, 0.836431, 0.528722, 0.16591, 0.263385, 0.0849035, 0.980139, 0.618537, 0.822645, 0.247457, 0.209401, 0.262689, 0.450511, 0.650026, 0.803747, 0.725778, 0.832191, 0.194117, 0.576881, 0.986633, 0.933653, 0.387109, 0.566776, 0.297886, 0.608794, 0.0209304, 0.257444, 0.555433, 0.89687, 0.572963, 0.8439, 0.287748, 0.470621, 0.0169381, 0.262726, 0.681365, 0.0883942, 0.757639, 0.464354, 0.341893, 0.949142, 0.581639, 0.423602, 0.385882, 0.208789, 0.386493, 0.314197, 0.575431, 0.120347, 0.70004, 0.662324, 0.01264, 0.114641, 0.941158, 0.897689, 0.503811, 0.574991, 0.914898, 0.913198, 0.461668, 0.101269, 0.14161, 0.394222, 0.10442, 0.395801, 0.230198, 0.188025, 0.492823, 0.109863, 0.0250429, 0.969826, 0.133829, 0.234891, 0.0746836, 0.5961, 0.286069, 0.800607, 0.165306, 0.0433477, 0.322804, 0.222233, 0.295832, 0.257818, 0.0825347, 0.216227, 0.752737, 0.0751812, 0.645368, 0.632464, 0.626096, 0.621743, 0.232217, 0.628269, 0.318728, 0.325243, 0.057867, 0.698394, 0.189754, 0.334127, 0.424018, 0.268702, 0.30531, 0.530198, 0.823827, 0.643645, 0.462101, 0.847939, 0.563049, 0.261867, 0.571493, 0.262511, 0.791703, 0.957797, 0.328557, 0.646388, 0.157902, 0.372722, 0.101383, 0.734011, 0.477462, 0.321272, 0.0474629, 0.0760908, 0.114701, 0.746874, 0.373927, 0.337629, 0.977809, 0.672818, 0.395289, 0.681723, 0.0131544, 0.493766, 0.346927, 0.689504, 0.434476, 0.413359, 0.99947, 0.964719, 0.475063, 0.727556, 0.734707, 0.223579, 0.426226, 0.756575, 0.468032, 0.248982, 0.431785, 0.668905, 0.583883, 0.354555, 0.207369, 0.549294, 0.94, 0.459033, 0.502353, 0.958875, 0.562426, 0.0652912, 0.102932, 0.212556, 0.413588, 0.429526, 0.851667, 0.410742, 0.228292, 0.963911, 0.496349, 0.430071, 0.439852, 0.767093, 0.546101, 0.255007, 0.201509, 0.563849, 0.838783, 0.365303, 0.0655348, 0.800652, 0.978375, 0.810624, 0.211064, 0.62007, 0.428826, 0.573271, 0.750786, 0.0810026, 0.416919, 0.462141, 0.000943617, 0.977593, 0.861739, 0.884804, 0.350952, 0.240372, 0.379984, 0.452709, 0.853189, 0.87503, 0.677902, 0.572678, 0.10547, 0.296211, 0.862692, 0.092125, 0.81823, 0.257098, 0.42691, 0.366794, 0.0364343, 0.482036, 0.596226, 0.33398, 0.859671, 0.28293, 0.308289, 0.577807, 0.569985, 0.162831, 0.94961, 0.723335, 0.79226, 0.87131, 0.234758, 0.55269, 0.875409, 0.320202, 0.119095, 0.91847, 0.191865, 0.659438, 0.760577, 0.902728, 0.906769, 0.119967, 0.487316, 0.975686, 0.0340326, 0.65472, 0.309501, 0.381418, 0.530099, 0.753478, 0.93878, 0.678147, 0.688696, 0.00245004, 0.490236, 0.685161, 0.421622, 0.958775, 0.154161, 0.0930764, 0.234936, 0.198518, 0.423502, 0.870014, 0.952276, 0.955144, 0.842629, 0.836175, 0.832134, 0.538878, 0.22937, 0.885935, 0.241952, 0.319063, 0.70922, 0.269259, 0.0778196, 0.34701, 0.00989241, 0.0159236, 0.635993, 0.402755, 0.942878, 0.411093, 0.98434, 0.235589, 0.994109, 0.0852568, 0.134627, 0.209175, 0.509332, 0.236745, 0.731749, 0.354398, 0.781152, 0.751758, 0.177992, 0.710649, 0.435356, 0.605941, 0.729911, 0.695595, 0.210447, 0.0477255, 0.26159, 0.605423, 0.324117, 0.343792, 0.912852, 0.369955, 0.79601, 0.975273, 0.507518, 0.448687, 0.381703, 0.629233, 0.813722, 0.259551, 0.226481, 0.835694, 0.89278, 0.184935, 0.211618, 0.769111, 0.662097, 0.571907, 0.590063, 0.623795, 0.468348, 0.414587, 0.822965, 0.713424, 0.780369, 0.803439, 0.568014, 0.563408, 0.851325, 0.281048, 0.876279, 0.868437, 0.356462, 0.406371, 0.892966, 0.382094, 0.55697, 0.553828, 0.906916, 0.158109, 0.719806, 0.881736, 0.548851, 0.618368, 0.148101, 0.0724919, 0.537699, 0.208591, 0.239957, 0.963071, 0.0796868, 0.252854, 0.876368, 0.820898, 0.72598, 0.852893, 0.468395, 0.0790652, 0.694691, 0.418392, 0.99056, 0.297655, 0.996152, 0.0701952, 0.386079, 0.794964, 0.315134, 0.151314, 0.0534037, 0.66005, 0.544951, 0.926899, 0.49286, 0.351729, 0.615444, 0.744605, 0.140895, 0.969391, 0.675596, 0.490887, 0.421324, 0.473488, 0.0438011, 0.373039, 0.996306, 0.454424, 0.71002, 0.107729, 0.138564, 0.585049, 0.0476726, 0.419484, 0.255132, 0.378118, 0.838807, 0.7523, 0.954979, 0.903597, 0.611968, 0.0974334, 0.112477, 0.935068, 0.391622, 0.939205, 0.643313, 0.0548231, 0.915073, 0.43213, 0.102186, 0.559038, 0.993986, 0.420751, 0.340141, 0.715827, 0.699336, 0.353872, 0.792753, 0.965768, 0.702062, 0.322321, 0.135546, 0.528437, 0.900718, 0.735977, 0.817645, 0.27058, 0.518426, 0.488729, 0.896793, 0.0816079, 0.643914, 0.74724, 0.411665, 0.914873, 0.540361, 0.688787, 0.438461, 0.463882, 0.911583, 0.82772, 0.301927, 0.590404, 0.105204, 0.36647, 0.367514, 0.224721, 0.925065, 0.446643, 0.259639, 0.904391, 0.0983455, 0.130981, 0.875149, 0.636404, 0.376162, 0.127885, 0.755759, 0.604847, 0.507388, 0.604483, 0.97776, 0.27063, 0.757754, 0.40943, 0.475205, 0.165916, 0.243159, 0.35404, 0.65918, 0.941012, 0.17674, 0.538121, 0.474917, 0.60938, 0.440644, 0.168155, 0.721901, 0.0850913, 0.206669, 0.591958, 0.520876, 0.218974, 0.874243, 0.971393, 0.00567012, 0.357306, 0.0156748, 0.40943, 0.158562, 0.69115, 0.0883478, 0.312241, 0.0634005, 0.757253, 0.203473, 0.370921, 0.644864, 0.989725, 0.423615, 0.429686, 0.96982, 0.855455, 0.416648, 0.199682, 0.359497, 0.352384, 0.69602, 0.34028, 0.80014, 0.750196, 0.460324, 0.382704, 0.359189, 0.512177, 0.186704, 0.542782, 0.731731, 0.91864, 0.606535, 0.0746311, 0.763923, 0.388399, 0.519247, 0.955015, 0.0450288, 0.191685, 0.102118, 0.0870352, 0.940065, 0.458274, 0.850774, 0.739829, 0.798335, 0.446416, 0.0188362, 0.370395, 0.0983858, 0.102169, 0.514217, 0.290697, 0.272838, 0.0472025, 0.547151, 0.765991, 0.418189, 0.533692, 0.25021, 0.979033, 0.549196, 0.189791, 0.81571, 0.311049, 0.163646, 0.231815, 0.722312, 0.283984, 0.247224, 0.109344, 0.0676099, 0.945489, 0.192456, 0.845967, 0.332795, 0.61661, 0.319271, 0.900084, 0.0380171, 0.0324031, 0.627179, 0.587327, 0.0152705, 0.582405, 0.684816, 0.483042, 0.336544, 0.472563, 0.0322619, 0.724403, 0.646268, 0.0558811, 0.541398, 0.895589, 0.293008, 0.903387, 0.493332, 0.697902, 0.477073, 0.333856, 0.143396, 0.0932805, 0.275849, 0.655504, 0.624897, 0.717618, 0.605292, 0.424038, 0.306989, 0.324962, 0.45878, 0.976576, 0.991506, 0.0725176, 0.837343, 0.588093, 0.519565, 0.817018, 0.788645, 0.420119, 0.215411, 0.141267, 0.0376012, 0.460681, 0.361827, 0.995282, 0.905563, 0.0909029, 0.808559, 0.595975, 0.977723, 0.622259, 0.0849786, 0.642514, 0.853086, 0.812154, 0.696658, 0.671264, 0.692986, 0.269517, 0.847163, 0.496374, 0.48532, 0.983314, 0.709504, 0.944325, 0.717459, 0.150419, 0.320894, 0.164588, 0.119457, 0.663862, 0.528351, 0.160297, 0.543173, 0.289749, 0.706371, 0.759099, 0.456273, 0.583254, 0.882913, 0.575666, 0.655283, 0.234053, 0.263827, 0.807735, 0.869351, 0.633226, 0.744627, 0.391122, 0.176336, 0.667208, 0.538645, 0.972913, 0.675642, 0.0848427, 0.0397247, 0.66174, 0.240831, 0.148035, 0.388729, 0.742836, 0.902954, 0.285685, 0.45282, 0.125667, 0.253222, 0.886802, 0.258285, 0.754176, 0.354836, 0.877242, 0.561047, 0.20338, 0.263599, 0.601812, 0.833404, 0.166952, 0.827574, 0.0578827, 0.906011, 0.816079, 0.928142, 0.122575, 0.830498, 0.330445, 0.771716, 0.635982, 0.829167, 0.886338, 0.0943431, 0.803303, 0.541538, 0.511255, 0.863668, 0.404193, 0.536002, 0.487578, 0.712253, 0.692238, 0.44266, 0.863275, 0.598403, 0.926607, 0.529861, 0.487415, 0.126769, 0.999496, 0.798262, 0.374716, 0.867532, 0.957177, 0.936064, 0.00403304, 0.974509, 0.40569, 0.789351, 0.0955056, 0.0637894, 0.664924, 0.896185, 0.44127, 0.481997, 0.383161, 0.200857, 0.816596, 0.336022, 0.268181, 0.796397, 0.513889, 0.791563, 0.872379, 0.290329, 0.695973, 0.375641, 0.477351, 0.648416, 0.483137, 0.0231412, 0.880657, 0.634508, 0.234432, 0.25497, 0.108345, 0.661131, 0.734542, 0.496154, 0.933504, 0.780499, 0.418836, 0.222636, 0.844764, 0.597745, 0.462602, 0.162704, 0.714849, 0.298815, 0.284211, 0.598849, 0.122437, 0.900357, 0.880802, 0.623805, 0.637685, 0.105521, 0.697668, 0.29021, 0.613283, 0.344496, 0.557836, 0.262358, 0.723321, 0.857867, 0.219355, 0.173519, 0.254927, 0.452068, 0.733882, 0.128371, 0.53921, 0.842773, 0.200744, 0.808661, 0.356352, 0.380975, 0.110313, 0.343576, 0.917519, 0.269396, 0.145521, 0.749168, 0.783015, 0.360068, 0.652331, 0.216453, 0.229264, 0.0487651, 0.508933, 0.0552494, 0.486092, 0.179105, 0.629595, 0.690417, 0.985936, 0.589246, 0.0332772, 0.521238, 0.601636, 0.512677, 0.152481, 0.448167, 0.799148, 0.986308, 0.354621, 0.712387, 0.0206986, 0.289294, 0.738303, 0.100764, 0.799571, 0.539667, 0.932385, 0.21403, 0.444996, 0.622763, 0.137635, 0.830477, 0.301631, 0.694403, 0.662686, 0.485794, 0.937107, 0.25165, 0.18586, 0.656206, 0.721032, 0.335955, 0.586088, 0.465777, 0.668967, 0.0257542, 0.413625, 0.945949, 0.194406, 0.942379, 0.716879, 0.308961, 0.917595, 0.436479, 0.0311892, 0.120783, 0.0177039, 0.821967, 0.308052, 0.961341, 0.324881, 0.919124, 0.430241, 0.525789, 0.88756, 0.88067, 0.503975, 0.0487123, 0.0710132, 0.956585, 0.712219, 0.313906, 0.720764, 0.00444719, 0.114896, 0.57459, 0.980179, 0.128499, 0.470857, 0.955974, 0.56468, 0.923821, 0.19156, 0.616556, 0.198483, 0.546788, 0.78281, 0.670577, 0.760508, 0.109579, 0.460778, 0.835972, 0.0775543, 0.729754, 0.947057, 0.436774, 0.568689, 0.670996, 0.322469, 0.813586, 0.440571, 0.116003, 0.414831, 0.67704, 0.0157284, 0.585772, 0.361394, 0.457603, 0.0797914, 0.513506, 0.764773, 0.0246359, 0.974115, 0.694106, 0.0648179, 0.433138, 0.263551, 0.185633, 0.754115, 0.354349, 0.227196, 0.931046, 0.0731813, 0.300091, 0.736974, 0.781009, 0.0421925, 0.552624, 0.0631947, 0.581713, 0.933546, 0.0920806, 0.351353, 0.355516, 0.628235, 0.275462, 0.913275, 0.158415, 0.586904, 0.316023, 0.122767, 0.225402, 0.562004, 0.489399, 0.601167, 0.68016, 0.920806, 0.3201, 0.873, 0.170307, 0.559888, 0.348109, 0.629961, 0.767266, 0.421276, 0.929529, 0.708598, 0.22938, 0.0440367, 0.848638, 0.0428049, 0.252743, 0.0193065, 0.503607, 0.325506, 0.287519, 0.374286, 0.251823, 0.438668, 0.023447, 0.0734565, 0.378211, 0.248276, 0.9017, 0.523796, 0.0595612, 0.0253173, 0.441401, 0.437461, 0.887637, 0.710748, 0.475479, 0.227227, 0.658916, 0.659166, 0.964871, 0.770273, 0.899362, 0.191513, 0.547282, 0.998571, 0.943687, 0.738217, 0.526649, 0.067912, 0.384769, 0.0241023, 0.903523, 0.886881, 0.356369, 0.262555, 0.87154, 0.745538, 0.855665, 0.607144, 0.588464, 0.399931, 0.663382, 0.582526, 0.232184, 0.126784, 0.54676, 0.234503, 0.262531, 0.668196, 0.254086, 0.121672, 0.718222, 0.187247, 0.361491, 0.492809, 0.938355, 0.535587, 0.00922292, 0.136878, 0.670968, 0.710436, 0.62229, 0.708223, 0.259453, 0.482349, 0.290708, 0.151858, 0.349127, 0.259001, 0.271877, 0.902338, 0.789938, 0.437855, 0.125478, 0.358252, 0.786521, 0.420754, 0.658861, 0.0163478, 0.105161, 0.203591, 0.774375, 0.473021, 0.599754, 0.334038, 0.0959251, 0.470531, 0.119243, 0.113657, 0.0858567, 0.0181975, 0.0339619, 0.642201, 0.895081, 0.860213, 0.672983, 0.384996, 0.423965, 0.780832, 0.326618, 0.0349688, 0.525361, 0.241029, 0.178718, 0.640927, 0.858357, 0.890641, 0.11797, 0.592586, 0.800438, 0.260998, 0.750592, 0.715358, 0.0179428, 0.0456378, 0.581487, 0.287291, 0.768357, 0.502813, 0.488287, 0.69343, 0.0259953, 0.409564, 0.454791, 0.146126, 0.519897, 0.499388, 0.287014, 0.207348, 0.771959, 0.645787, 0.297462, 0.28361, 0.105186, 0.482753, 0.809022, 0.854729, 0.133819, 0.336536, 0.219343, 0.459939, 0.317168, 0.157819, 0.205831, 0.267773, 0.552205, 0.0871527, 0.0539443, 0.0259766, 0.775192, 0.689066, 0.577877, 0.317817, 0.761853, 0.535322, 0.461685, 0.651818, 0.89517, 0.144383, 0.643697, 0.951557, 0.0604552, 0.634357, 0.583163, 0.921442, 0.150374, 0.591284, 0.897311, 0.815218, 0.395696, 0.320972, 0.752767, 0.980248, 0.474563, 0.134607, 0.77258, 0.843649, 0.674173, 0.524785, 0.161748, 0.535902, 0.660756, 0.433184, 0.31268, 0.777464, 0.109717, 0.805761, 0.832127, 0.559389, 0.507908, 0.697832, 0.459661, 0.448527, 0.964555, 0.512994, 0.524819, 0.196892, 0.648324, 0.982221, 0.282745, 0.00992841, 0.758498, 0.490073, 0.842627, 0.258158, 0.272767, 0.400226, 0.610492, 0.544288, 0.273564, 0.988447, 0.817051, 0.605815, 0.511681, 0.416597, 0.11132, 0.329803, 0.411382, 0.144655, 0.705241, 0.265537, 0.553677, 0.119043, 0.5451, 0.559877, 0.743401, 0.222226, 0.25808, 0.827941, 0.834873, 0.829685, 0.153731, 0.238038, 0.306866, 0.0944361, 0.339559, 0.809345, 0.402423, 0.374995, 0.365251, 0.527857, 0.819625, 0.392417, 0.329393, 0.170145, 0.858625, 0.737087, 0.205577, 0.42929, 0.196763, 0.997353, 0.226181, 0.389221, 0.802482, 0.705276, 0.934375, 0.368473, 0.567592, 0.550568, 0.572299, 0.101953, 0.174655, 0.555237, 0.574632, 0.657468, 0.738106, 0.223913, 0.333262, 0.704456, 0.223142, 0.768767, 0.437104, 0.0278027, 0.0498141, 0.0119726, 0.439666, 0.994019, 0.80227, 0.566117, 0.285581, 0.806632, 0.796964, 0.363939, 0.070755, 0.279007, 0.168604, 0.673322, 0.678708, 0.0699169, 0.597309, 0.855873, 0.696652, 0.770829, 0.794169, 0.176425, 0.348368, 0.0412353, 0.578438, 0.474733, 0.777684, 0.16383, 0.224556, 0.468841, 0.369487, 0.61892, 0.488486, 0.854106, 0.653314, 0.104232, 0.443175, 0.822462, 0.915707, 0.507484, 0.70635, 0.693621, 0.306757, 0.779918, 0.635788, 0.234195, 0.514534, 0.803395, 0.0552052, 0.822434, 0.804407, 0.0622927, 0.10914, 0.41838, 0.735576, 0.34439, 0.729037, 0.78918, 0.488477, 0.519064, 0.286652, 0.512734, 0.833559, 0.00576855, 0.453959, 0.64032, 0.0760396, 0.926822, 0.224319, 0.265194, 0.802482, 0.322861, 0.429746, 0.569138, 0.648447, 0.74595, 0.861876, 0.702314, 0.374532, 0.350631, 0.146556, 0.0341286, 0.094743, 0.707971, 0.762888, 0.516107, 0.778746, 0.478407, 0.677862, 0.779092, 0.0937173, 0.0757762, 0.692174, 0.569725, 0.987113, 0.510313, 0.471568, 0.713331, 0.92913, 0.452878, 0.888942, 0.530988, 0.907967, 0.654409, 0.21239, 0.97151, 0.594865, 0.679568, 0.467381, 0.0556365, 0.129969, 0.800023, 0.43437, 0.203467, 0.478574, 0.756405, 0.949415, 0.378931, 0.179897, 0.0495461, 0.867269, 0.260723, 0.748442, 0.61383, 0.923404, 0.752083, 0.417138, 0.995403, 0.233821, 0.886093, 0.230389, 0.322411, 0.0361808, 0.339915, 0.657302, 0.906619, 0.199931, 0.770688, 0.644829, 0.985518, 0.525221, 0.493475, 0.0286236, 0.439242, 0.209735, 0.101835, 0.637201, 0.831662, 0.756119, 0.174718, 0.914269, 0.957915, 0.0208806, 0.169436, 0.754754, 0.273484, 0.522076, 0.455332, 0.91563, 0.313839, 0.660479, 0.510527, 0.833741, 0.46268, 0.809294, 0.741722, 0.168658, 0.978001, 0.149184, 0.735709, 0.522709, 0.479326, 0.613118, 0.830525, 0.0227621, 0.505576, 0.377747, 0.1913, 0.858142, 0.00790081, 0.851575, 0.0387322, 0.32718, 0.641125, 0.636967, 0.735984, 0.0245758, 0.728612, 0.522017, 0.313846, 0.866817, 0.221846, 0.5459, 0.42157, 0.126635, 0.178881, 0.303887, 0.92745, 0.955136, 0.590524, 0.35817, 0.804892, 0.279127, 0.640639, 0.969997, 0.3401, 0.379279, 0.573095, 0.784084, 0.724919, 0.526721, 0.233893, 0.300491, 0.473953, 0.560633, 0.915887, 0.188727, 0.96499, 0.283966, 0.310681, 0.327539, 0.096427, 0.428594, 0.782244, 0.285651, 0.924983, 0.898228, 0.966544, 0.847905, 0.209188, 0.0634488, 0.782668, 0.49904, 0.169958, 0.898914, 0.908876, 0.700203, 0.907172, 0.124395, 0.0290647, 0.256473, 0.0487889, 0.832138, 0.870097, 0.896979, 0.0979281, 0.419425, 0.246167, 0.92867, 0.793419, 0.486866, 0.0357821, 0.339683, 0.249494, 0.80475, 0.244975, 0.740229, 0.187267, 0.463109, 0.205894, 0.388738, 0.978894, 0.471492, 0.456544, 0.715454, 0.511397, 0.0495463, 0.205433, 0.60397, 0.988917, 0.733172, 0.887978, 0.886802, 0.932716, 0.127125, 0.595316, 0.304644, 0.576185, 0.642502, 0.850191, 0.668777, 0.989563, 0.425959, 0.355702, 0.233301, 0.862421, 0.117375, 0.100915, 0.0256044, 0.761887, 0.79053, 0.789986, 0.761832, 0.749213, 0.0912176, 0.088784, 0.951521, 0.881513, 0.842809, 0.971145, 0.0721858, 0.355696, 0.383446, 0.147876, 0.176785, 0.862082, 0.313441, 0.140238, 0.723286, 0.926468, 0.552427, 0.827319, 0.286137, 0.988371, 0.0219655, 0.337728, 0.00817745, 0.153742, 0.504816, 0.945675, 0.984808, 0.59934, 0.728762, 0.136799, 0.41137, 0.322069, 0.595073, 0.357691, 0.454214, 0.541163, 0.539565, 0.978184, 0.165992, 0.654794, 0.323778, 0.968373, 0.658925, 0.749794, 0.739035, 0.384683, 0.536995, 0.333679, 0.865163, 0.74353, 0.3922, 0.671401, 0.352177, 0.150295, 0.970785, 0.29962, 0.660788, 0.197748, 0.977711, 0.758596, 0.946852, 0.892975, 0.446841, 0.940762, 0.667322, 0.800427, 0.312651, 0.186342, 0.819286, 0.493216, 0.545115, 0.778504, 0.797159, 0.376478, 0.98896, 0.479383, 0.281122, 0.852965, 0.0572699, 0.721198, 0.301352, 0.130462, 0.6671, 0.800354, 0.891946, 0.523626, 0.275167, 0.870484, 0.82264, 0.57437, 0.829882, 0.321675, 0.772209, 0.654474, 0.398218, 0.109524, 0.403978, 0.413849, 0.579426, 0.591973, 0.762529, 0.856503, 0.674411, 0.398713, 0.797512, 0.099607, 0.433157, 0.136374, 0.764637, 0.908399, 0.672609, 0.439977, 0.100954, 0.93422, 0.0240447, 0.069266, 0.225199, 0.187255, 0.728396, 0.875993, 0.104968, 0.969209, 0.609646, 0.00564365, 0.502753, 0.431294, 0.66885, 0.695816, 0.0626746, 0.647059, 0.6223, 0.986112, 0.0272147, 0.626888, 0.678837, 0.558326, 0.947133, 0.0913324, 0.260489, 0.602543, 0.17503, 0.0521068, 0.290135, 0.521271, 0.884639, 0.49815, 0.593014, 0.0312677, 0.0158837, 0.382965, 0.680572, 0.258062, 0.883899, 0.814458, 0.120813, 0.866968, 0.972773, 0.620354, 0.511413, 0.180057, 0.146324, 0.641695, 0.986334, 0.350223, 0.0729314, 0.0992284, 0.283357, 0.919984, 0.240578, 0.622459, 0.268718, 0.148164, 0.193705, 0.708666, 0.656999, 0.28972, 0.209773, 0.528043, 0.468637, 0.0358156, 0.299129, 0.259809, 0.533727, 0.469928, 0.141334, 0.306205, 0.605487, 0.565809, 0.868145, 0.297265, 0.701073, 0.533545, 0.846218, 0.541661, 0.944032, 0.691853, 0.603265, 0.0399459, 0.692711, 0.32824, 0.402316, 0.424132, 0.266506, 0.868972, 0.109447, 0.249775, 0.784166, 0.0113776, 0.411315, 0.480772, 0.0472917, 0.556464, 0.0399193, 0.685194, 0.946098, 0.4144, 0.29149, 0.478439, 0.538894, 0.0534367, 0.381781, 0.371658, 0.277564, 0.215527, 0.797192, 0.218983, 0.25126, 0.0844661, 0.860819, 0.56643, 0.0382517, 0.233701, 0.302991, 0.691647, 0.150235, 0.247625, 0.228741, 0.635467, 0.152624, 0.963169, 0.922654, 0.766378, 0.333444, 0.362525, 0.675758, 0.42109, 0.279389, 0.393732, 0.445885, 0.125507, 0.275854, 0.897779, 0.224451, 0.604121, 0.622897, 0.136374, 0.606896, 0.827597, 0.429127, 0.897548, 0.941983, 0.989255, 0.509353, 0.505851, 0.0407215, 0.724423, 0.658362, 0.46157, 0.8577, 0.469323, 0.771896, 0.200368, 0.861432, 0.73596, 0.299543, 0.0188045, 0.453314, 0.685942, 0.561086, 0.265975, 0.263175, 0.72702, 0.423578, 0.245681, 0.506245, 0.564327, 0.914246, 0.470419, 0.974931, 0.462892, 0.399281, 0.185056, 0.413307, 0.8192, 0.888201, 0.868315, 0.573061, 0.00615268, 0.668579, 0.838993, 0.619337, 0.149363, 0.855573, 0.412548, 0.0649104, 0.264731, 0.25247, 0.92999, 0.177883, 0.192354, 0.187284, 0.615144, 0.25021, 0.617814, 0.849546, 0.589285, 0.214996, 0.567073, 0.00423686, 0.967902, 0.761565, 0.291421, 0.684, 0.428611, 0.324624, 0.522639, 0.406633, 0.716488, 0.944101, 0.157778, 0.306648, 0.341889, 0.848255, 0.301799, 0.67418, 0.94508, 0.146865, 0.041367, 0.24051, 0.910075, 0.887601, 0.137959, 0.872836, 0.334127, 0.158881, 0.983702, 0.239623, 0.679831, 0.767194, 0.294324, 0.211114, 0.904165, 0.052296, 0.226415, 0.404681, 0.287089, 0.133754, 0.451804, 0.236459, 0.716149, 0.74667, 0.154989, 0.578519, 0.628974, 0.288437, 0.263638, 0.25087, 0.967908, 0.96635, 0.596557, 0.902517, 0.846765, 0.482424, 0.295941, 0.536514, 0.827909, 0.220118, 0.0502084, 0.774865, 0.967328, 0.462489, 0.58572, 0.0887014, 0.321492, 0.51892, 0.470366, 0.0330294, 0.518588, 0.21838, 0.291623, 0.470716, 0.695058, 0.714625, 0.190646, 0.0231871, 0.281582, 0.468095, 0.205045, 0.0288922, 0.934656, 0.935327, 0.107926, 0.582314, 0.119016, 0.540747, 0.992215, 0.667739, 0.940446, 0.450382, 0.803589, 0.405663, 0.695985, 0.559924, 0.863922, 0.996253, 0.628522, 0.774343, 0.0609057, 0.742031, 0.573559, 0.891099, 0.55779, 0.179774, 0.153914, 0.686911, 0.427056, 0.259254, 0.210548, 0.614287, 0.487579, 0.659451, 0.488579, 0.376451, 0.605206, 0.900657, 0.790692, 0.761121, 0.147397, 0.795318, 0.255353, 0.934713, 0.154522, 0.0295818, 0.603662, 0.804485, 0.757634, 0.410537, 0.17362, 0.0996387, 0.440978, 0.275976, 0.189733, 0.891104, 0.850894, 0.723685, 0.092275, 0.269365, 0.104267, 0.698008, 0.556828, 0.711428, 0.261121, 0.960865, 0.417842, 0.633708, 0.963086, 0.376368, 0.229058, 0.203199, 0.0503907, 0.854779, 0.305427, 0.82535, 0.858066, 0.932523, 0.711383, 0.53411, 0.0314635, 0.432959, 0.842057, 0.432475, 0.453294, 0.79789, 0.975555, 0.0504897, 0.244885, 0.357642, 0.134659, 0.483704, 0.685202, 0.331816, 0.257082, 0.870629, 0.389445, 0.881769, 0.273335, 0.230795, 0.445922, 0.39336, 0.78925, 0.848591, 0.62275, 0.961237, 0.393189, 0.296289, 0.513323, 0.10086, 0.723271, 0.770201, 0.962873, 0.113967, 0.747678, 0.122865, 0.0753474, 0.0613695, 0.385465, 0.5711, 0.515398, 0.363743, 0.402684, 0.555656, 0.587572, 0.0699067, 0.70225, 0.863724, 0.942348, 0.437034, 0.357689, 0.459404, 0.155154, 0.773141, 0.465093, 0.393312, 0.51403, 0.675212, 0.2879, 0.162334, 0.914525, 0.826562, 0.811875, 0.498997, 0.986285, 0.130915, 0.666472, 0.341303, 0.189673, 0.74172, 0.220727, 0.445003, 0.695051, 0.296795, 0.368061, 0.443056, 0.720546, 0.759742, 0.121954, 0.727911, 0.912206, 0.957863, 0.645014, 0.341238, 0.860865, 0.232864, 0.767099, 0.61917, 0.187952, 0.512629, 0.843988, 0.915118, 0.540496, 0.295861, 0.0505123, 0.686434, 0.0882185, 0.262171, 0.420626, 0.350696, 0.746233, 0.928398, 0.761852, 0.97396, 0.514489, 0.472265, 0.845776, 0.601219, 0.805928, 0.474424, 0.803486, 0.240769, 0.911924, 0.267951, 0.777723, 0.361283, 0.771012, 0.148457, 0.46787, 0.418144, 0.629043, 0.737655, 0.282112, 0.00456141, 0.778242, 0.0999024, 0.7935, 0.0889299, 0.537175, 0.388826, 0.810697, 0.347182, 0.10621, 0.819707, 0.340037, 0.152333, 0.283279, 0.979276, 0.0344373, 0.147429, 0.619208, 0.65292, 0.88814, 0.934013, 0.582763, 0.215668, 0.450112, 0.308237, 0.118658, 0.997809, 0.680986, 0.463954, 0.554396, 0.75153, 0.595619, 0.105937, 0.774186, 0.375027, 0.0250026, 0.986005, 0.392617, 0.308179, 0.043807, 0.554291, 0.540267, 0.0184381, 0.779082, 0.376191, 0.165338, 0.0928612, 0.785754, 0.373029, 0.613713, 0.289496, 0.339712, 0.303308, 0.215463, 0.305553, 0.202537, 0.949914, 0.448179, 0.138853, 0.319808, 0.659447, 0.547816, 0.498334, 0.971879, 0.217961, 0.706793, 0.642109, 0.475035, 0.360916, 0.079352, 0.885504, 0.0837289, 0.193923, 0.382282, 0.692797, 0.482966, 0.613371, 0.188388, 0.515092, 0.482802, 0.106635, 0.0881122, 0.724642, 0.767621, 0.360897, 0.133009, 0.949843, 0.812019, 0.26449, 0.534689, 0.430324, 0.407389, 0.00824263, 0.0165155, 0.618694, 0.122889, 0.448866, 0.336765, 0.178415, 0.295317, 0.753804, 0.727945, 0.558352, 0.625571, 0.235639, 0.865961, 0.532891, 0.883289, 0.833618, 0.655229, 0.444043, 0.457365, 0.0660586, 0.47803, 0.502257, 0.72243, 0.790979, 0.935351, 0.914287, 0.718386, 0.794411, 0.795054, 0.599672, 0.819843, 0.828356, 0.455682, 0.293304, 0.104403, 0.453432, 0.0959749, 0.532267, 0.178598, 0.212675, 0.356589, 0.105227, 0.00837097, 0.495895, 0.669521, 0.200667, 0.18022, 0.428803, 0.809122, 0.400827, 0.85987, 0.418807, 0.94294, 0.0407713, 0.256012, 0.319734, 0.461881, 0.451634, 0.606438, 0.238249, 0.539151, 0.102726, 0.869729, 0.874945, 0.105987, 0.422048, 0.197332, 0.895269, 0.931491, 0.059015, 0.909954, 0.755381, 0.144851, 0.975514, 0.168514, 0.505131, 0.516318, 0.172756, 0.935684, 0.426949, 0.823466, 0.910205, 0.924367, 0.793256, 0.772964, 0.890707, 0.0971714, 0.428978, 0.516884, 0.714687, 0.545899, 0.483664, 0.360612, 0.652205, 0.236498, 0.801999, 0.123016, 0.528238, 0.964533, 0.771916, 0.936722, 0.596547, 0.818391, 0.307263, 0.660682, 0.0800409, 0.371235, 0.735035, 0.850496, 0.468993, 0.551387, 0.274825, 0.368857, 0.816828, 0.0681967, 0.946167, 0.718806, 0.0888603, 0.591699, 0.641283, 0.594397, 0.398665, 0.315722, 0.135859, 0.978853, 0.309079, 0.140261, 0.313691, 0.673345, 0.440642, 0.821303, 0.552961, 0.979481, 0.504034, 0.58892, 0.585527, 0.853985, 0.336332, 0.0911784, 0.466332, 0.905361, 0.819639, 0.893948, 0.869733, 0.298763, 0.91263, 0.622764, 0.540313, 0.398469, 0.962979, 0.383353, 0.160262, 0.703152, 0.779832, 0.795827, 0.810667, 0.439871, 0.641499, 0.785883, 0.318648, 0.853352, 0.766444, 0.706264, 0.335101, 0.624577, 0.37212, 0.201078, 0.37352, 0.851304, 0.491342, 0.825413, 0.133976, 0.846265, 0.915505, 0.907472, 0.755025, 0.261162, 0.420295, 0.994158, 0.693767, 0.0778706, 0.811818, 0.495303, 0.395107, 0.169426, 0.327305, 0.250433, 0.682925, 0.160715, 0.448879, 0.992313, 0.0539564, 0.550548, 0.196541, 0.706638, 0.815899, 0.75727, 0.422836, 0.0438398, 0.97144, 0.178127, 0.412192, 0.462741, 0.806464, 0.332466, 0.177072, 0.46366, 0.653041, 0.760624, 0.102086, 0.696651, 0.0980398, 0.434837, 0.153154, 0.516072, 0.872444, 0.20529, 0.110408, 0.836553, 0.785342, 0.0681476, 0.402417, 0.182108, 0.806673, 0.33937, 0.0178925, 0.00914763, 0.141008, 0.396542, 0.389862, 0.985174, 0.279027, 0.700033, 0.167493, 0.551906, 0.302566, 0.0497502, 0.0198132, 0.902196, 0.760487, 0.195984, 0.363775, 0.876091, 0.918512, 0.305526, 0.0707057, 0.3784, 0.146303, 0.376803, 0.368367, 0.128923, 0.140323, 0.05595, 0.726568, 0.327314, 0.828088, 0.535435, 0.705327, 0.592081, 0.634712, 0.146107, 0.279934, 0.480118, 0.486797, 0.783111, 0.251334, 0.452389, 0.531007, 0.132591, 0.300987, 0.515879, 0.777004, 0.493762, 0.357516, 0.0579536, 0.908164, 0.0571019, 0.528834, 0.0666216, 0.138407, 0.124962, 0.964148, 0.360372, 0.113073, 0.0409483, 0.34229, 0.615291, 0.694401, 0.23139, 0.608677, 0.0634488, 0.85828, 0.994858, 0.273237, 0.67353, 0.921285, 0.467996, 0.372084, 0.179355, 0.371782, 0.47465, 0.82362, 0.96306, 0.430145, 0.686474, 0.316809, 0.0679466, 0.850082, 0.689786, 0.982811, 0.276689, 0.138777, 0.627145, 0.0227534, 0.611696, 0.123369, 0.572623, 0.345923, 0.84582, 0.0345596, 0.518239, 0.347555, 0.453245, 0.710756, 0.064706, 0.544765, 0.46104, 0.24783, 0.799783, 0.48744, 0.0250994, 0.543547, 0.277255, 0.478538, 0.946262, 0.974664, 0.205728, 0.777003, 0.201277, 0.33814, 0.243907, 0.553557, 0.233149, 0.899776, 0.995486, 0.108742, 0.0942018, 0.0567805, 0.347665, 0.687884, 0.830904, 0.27803, 0.760594, 0.44421, 0.924831, 0.64463, 0.905892, 0.495716, 0.511623, 0.605581, 0.677949, 0.272243, 0.765111, 0.427617, 0.92866, 0.485402, 0.978395, 0.969747, 0.515605, 0.371774, 0.807003, 0.977104, 0.048981, 0.909226, 0.428103, 0.0229549, 0.118309, 0.599141, 0.857947, 0.974639, 0.897659, 0.0615562, 0.289933, 0.0276253, 0.473482, 0.711814, 0.194624, 4.80611e-05, 0.736741, 0.605372, 0.391581, 0.614274, 0.484809, 0.634995, 0.535787, 0.404942, 0.988702, 0.240248, 0.743364, 0.0838462, 0.187371, 0.174739, 0.477928, 0.382234, 0.148336, 0.354439, 0.54166, 0.507996, 0.804864, 0.21883, 0.121817, 0.0232491, 0.11177, 0.686514, 0.70907, 0.546844, 0.79575, 0.607758, 0.204538, 0.634101, 0.999171, 0.182992, 0.400803, 0.617142, 0.887625, 0.947406, 0.140956, 0.497278, 0.83746, 0.317648, 0.999817, 0.9142, 0.804219, 0.223033, 0.105793, 0.912205, 0.777269, 0.530467, 0.420292, 0.393993, 0.909749, 0.376047, 0.881531, 0.296851, 0.679283, 0.421624, 0.531365, 0.234937, 0.78704, 0.251236, 0.710318, 0.487208, 0.765078, 0.447392, 0.0101642, 0.548467, 0.574968, 0.452874, 0.860894, 0.0284263, 0.800348, 0.438501, 0.819314, 0.654027, 0.994083, 0.650283, 0.862997, 0.603083, 0.999607, 0.41725, 0.199425, 0.321242, 0.122539, 0.45267, 0.978689, 0.251487, 0.865512, 0.107143, 0.3163, 0.781222, 0.218965, 0.678676, 0.361759, 0.383299, 0.511072, 0.474337, 0.126522, 0.0144572, 0.743275, 0.339008, 0.588972, 0.619087, 0.143189, 0.0114255, 0.322651, 0.563701, 0.189263, 0.418681, 0.814716, 0.676409, 0.487035, 0.453306, 0.795916, 0.696411, 0.422332, 0.0126313, 0.508399, 0.110933, 0.546677, 0.539665, 0.00415484, 0.810452, 0.173893, 0.552889, 0.89214, 0.468457, 0.205398, 0.728536, 0.509075, 0.391114, 0.888057, 0.812956, 0.196968, 0.669791, 0.791387, 0.771562, 0.202315, 0.651431, 0.420198, 0.628602, 0.50791, 0.640779, 0.338275, 0.405885, 0.0964908, 0.79902, 0.922061, 0.493261, 0.216489, 0.543238, 0.333484, 0.755377, 0.576159, 0.969472, 0.522098, 0.457775, 0.598693, 0.330805, 0.863314, 0.831992, 0.748437, 0.616371, 0.264622, 0.259064, 0.865064, 0.764203, 0.252056, 0.119722, 0.114517, 0.342252, 0.880784, 0.281413, 0.205044, 0.840007, 0.255194, 0.834143, 0.871411, 0.16023, 0.320923, 0.0834858, 0.478612, 0.272666, 0.00756577, 0.879042, 0.071868, 0.746385, 0.41312, 0.242321, 0.0599442, 0.755287, 0.467244, 0.543174, 0.635324, 0.427335, 0.278091, 0.334103, 0.362711, 0.192493, 0.760886, 0.974795, 0.757204, 0.805059, 0.354442, 0.873249, 0.268084, 0.228769, 0.533957, 0.207452, 0.318189, 0.958777, 0.948857, 0.686822, 0.989912, 0.849037, 0.548661, 0.366009, 0.00317662, 0.804437, 0.158709, 0.42255, 0.367908, 0.402966, 0.224004, 0.251398, 0.622359, 0.752307, 0.767072, 0.851199, 0.706457, 0.189544, 0.297875, 0.403974, 0.663527, 0.366106, 0.662648, 0.429398, 0.499944, 0.453279, 0.162184, 0.0747734, 0.298532, 0.157023, 0.139665, 0.495046, 0.926777, 0.922881, 0.956901, 0.945996, 0.38083, 0.905667, 0.744382, 0.894385, 0.270544, 0.944221, 0.199435, 0.0738544, 0.350719, 0.500552, 0.938809, 0.427182, 0.545711, 0.63355, 0.520618, 0.347827, 0.751288, 0.861464, 0.959739, 0.575297, 0.422754, 0.205007, 0.500525, 0.711207, 0.490991, 0.306655, 0.142307, 0.313213, 0.877154, 0.0158508, 0.143379, 0.684596, 0.310244, 0.237449, 0.378082, 0.0469691, 0.436923, 0.881211, 0.119355, 0.59732, 0.758995, 0.0476668, 0.895984, 0.339286, 0.231267, 0.829895, 0.35967, 0.306362, 0.788418, 0.699965, 0.378785, 0.197394, 0.0500028, 0.67789, 0.497717, 0.443508, 0.457965, 0.103399, 0.628687, 0.35011, 0.704075, 0.876073, 0.911205, 0.576663, 0.947544, 0.365168, 0.797632, 0.785952, 0.893983, 0.582941, 0.827894, 0.448882, 0.73855, 0.607924, 0.950706, 0.511431, 0.200783, 0.548876, 0.244863, 0.932279, 0.810936, 0.0103678, 0.612129, 0.169734, 0.209493, 0.0879184, 0.442374, 0.401189, 0.105173, 0.345967, 0.182109, 0.36976, 0.09317, 0.970026, 0.643652, 0.962568, 0.848314, 0.393592, 0.902751, 0.854983, 0.078482, 0.825743, 0.122724, 0.758879, 0.329561, 0.0480038, 0.0714241, 0.412128, 0.242228, 0.721571, 0.472363, 0.661625, 0.606352, 0.593979, 0.809245, 0.32716, 0.924303, 0.870162, 0.323733, 0.0693531, 0.55446, 0.186764, 0.840536, 0.711154, 0.0941028, 0.293861, 0.131322, 0.167072, 0.992632, 0.0937776, 0.300854, 0.609393, 0.742901, 0.445719, 0.49257, 0.615199, 0.880634, 0.880552, 0.899752, 0.0147246, 0.226301, 0.182127, 0.94602, 0.296728, 0.955755, 0.536567, 0.140081, 0.430715, 0.022259, 0.587231, 0.589689, 0.755506, 0.392815, 0.354239, 0.539713, 0.272697, 0.917373, 0.746497, 0.684056, 0.523074, 0.557538, 0.995858, 0.779072, 0.139476, 0.106625, 0.357108, 0.611952, 0.581954, 0.726367, 0.758944, 0.0931899, 0.571819, 0.851852, 0.496957, 0.604608, 0.963661, 0.688038, 0.284632, 0.511381, 0.49557, 0.794898, 0.185432, 0.275114, 0.798329, 0.292664, 0.924401, 0.142738, 0.743984, 0.246694, 0.837575, 0.0657893, 0.856324, 0.877732, 0.433399, 0.897591, 0.059876, 0.828088, 0.364716, 0.138416, 0.991326, 0.377147, 0.376242, 0.751253, 0.325726, 0.531879, 0.154677, 0.0220212, 0.194491, 0.389655, 0.570077, 0.578739, 0.289017, 0.336876, 0.40144, 0.250632, 0.181667, 0.400037, 0.250547, 0.0483655, 0.336806, 0.970015, 0.297673, 0.668749, 0.500495, 0.539103, 0.996542, 0.34859, 0.0512221, 0.945941, 0.88657, 0.656174, 0.113437, 0.753097, 0.323058, 0.47051, 0.220096, 0.721297, 0.270871, 0.489782, 0.402427, 0.165052, 0.206266, 0.667431, 0.852144, 0.47244, 0.0671329, 0.458507, 0.781481, 0.743982, 0.214483, 0.702029, 0.177756, 0.704948, 0.551822, 0.194999, 0.885391, 0.770998, 0.696298, 0.870784, 0.756745, 0.744028, 0.968355, 0.229207, 0.923294, 0.338094, 0.00576244, 0.164907, 0.250586, 0.945024, 0.424857, 0.227656, 0.188152, 0.480328, 0.490762, 0.798034, 0.473941, 0.505145, 0.204663, 0.914953, 0.530389, 0.584498, 0.669886, 0.745894, 0.562383, 0.280916, 0.88575, 0.250918, 0.0274456, 0.696608, 0.911081, 0.158052, 0.996168, 0.789893, 0.508773, 0.476583, 0.773221, 0.0636369, 0.981401, 0.0452942, 0.0399631, 0.0125742, 0.0699655, 0.304051, 0.457593, 0.882599, 0.340307, 0.838223, 0.0610541, 0.653261, 0.490571, 0.985308, 0.800377, 0.250854, 0.19761, 0.0550185, 0.371155, 0.2663, 0.749814, 0.390379, 0.540894, 0.866225, 0.599341, 0.623863, 0.147507, 0.340541, 0.562505, 0.524171, 0.803077, 0.212648, 0.103451, 0.939081, 0.821543, 0.613976, 0.870403, 0.297362, 0.978688, 0.430094, 0.659263, 0.0556336, 0.957836, 0.355746, 0.310996, 0.350179, 0.930027, 0.411764, 0.249732, 0.864553, 0.642199, 0.364663, 0.672106, 0.827456, 0.313871, 0.167488, 0.931276, 0.966087, 0.374795, 0.433548, 0.52337, 0.978344, 0.190493, 0.0730634, 0.306037, 0.71492, 0.531433, 0.502825, 0.071328, 0.291312, 0.855648, 0.25017, 0.278271, 0.499139, 0.497774, 0.44888, 0.577385, 0.876234, 0.759508, 0.1953, 0.862256, 0.877218, 0.104284, 0.376674, 0.410412, 0.234124, 0.0318643, 0.864037, 0.927956, 0.703499, 0.956903, 0.552247, 0.658513, 0.573978, 0.270947, 0.742917, 0.660652, 0.816154, 4.32132e-05, 0.677011, 0.988374, 0.192157, 0.198066, 0.401928, 0.0106299, 0.942823, 0.929371, 0.369708, 0.314788, 0.0972919, 0.610464, 0.712952, 0.29258, 0.541078, 0.753934, 0.886256, 0.120093, 0.914417, 0.0949847, 0.466657, 0.246748, 0.769934, 0.129665, 0.740422, 0.0670465, 0.829317, 0.449931, 0.990937, 0.904759, 0.198826, 0.51592, 0.239497, 0.519742, 0.628357, 0.6759, 0.398503, 0.30371, 0.552565, 0.0333937, 0.733752, 0.625645, 0.464227, 0.488482, 0.757457, 0.637261, 0.310318, 0.964036, 0.909093, 0.115461, 0.148526, 0.555448, 0.922466, 0.343884, 0.419185, 0.356125, 0.213423, 0.0435329, 0.898867, 0.0891735, 0.641862, 0.213841, 0.208514, 0.831035, 0.0517722, 0.26471, 0.878577, 0.938453, 0.224824, 0.100465, 0.667, 0.870299, 0.766457, 0.931991, 0.362135, 0.424383, 0.782503, 0.487522, 0.910816, 0.323453, 0.164971, 0.922241, 0.785173, 0.912289, 0.634274, 0.810572, 0.425389, 0.690095, 0.417522, 0.593327, 0.773463, 0.2411, 0.946195, 0.384804, 0.249281, 0.104386, 0.888578, 0.68157, 0.0452774, 0.499313, 0.458826, 0.0660197, 0.178962, 0.800402, 0.89069, 0.302542, 0.498244, 0.569138, 0.967543, 0.116232, 0.747443, 0.11968, 0.28874, 0.730311, 0.704777, 0.974278, 0.651736, 0.201235, 0.88472, 0.462319, 0.338158, 0.618101, 0.0240971, 0.517106, 0.523773, 0.00687858, 0.449423, 0.674406, 0.0622918, 0.211566, 0.0119114, 0.890941, 0.856063, 0.704314, 0.605034, 0.576547, 0.00426751, 0.99426, 0.714742, 0.746024, 0.317009, 0.280869, 0.841606, 0.689827, 0.424418, 0.60691, 0.0523809, 0.318917, 0.463461, 0.56929, 0.396706, 0.642232, 0.437812, 0.0497973, 0.622397, 0.0107665, 0.157465, 0.956789, 0.345101, 0.509413, 0.178574, 0.567599, 0.467401, 0.0663775, 0.751779, 0.467074, 0.203206, 0.565589, 0.695089, 0.930904, 0.355701, 0.494375, 0.0548747, 0.995289, 0.738122, 0.966138, 0.74783, 0.331163, 0.547964, 0.750492, 0.0873614, 0.803391, 0.875753, 0.983908, 0.615168, 0.881782, 0.66364, 0.821011, 0.0437424, 0.158211, 0.81537, 0.254053, 0.0841519, 0.600394, 0.54709, 0.304293, 0.161425, 0.680684, 0.134827, 0.822791, 0.171279, 0.263711, 0.904173, 0.730721, 0.837627, 0.630713, 0.424171, 0.1436, 0.490414, 0.588829, 0.277178, 0.501833, 0.132825, 0.99945, 0.82426, 0.346863, 0.802016, 0.563137, 0.405649, 0.300828, 0.30626, 0.959529, 0.317436, 0.757366, 0.168739, 0.814747, 0.795999, 0.987332, 0.851515, 0.175644, 0.45275, 0.319911, 0.511743, 0.769124, 0.682705, 0.611449, 0.149342, 0.473472, 0.829222, 0.340482, 0.910498, 0.410818, 0.149561, 0.313595, 0.16491, 0.175943, 0.592428, 0.775068, 0.296364, 0.129827, 0.720047, 0.0424121, 0.0195966, 0.550885, 0.628628, 0.860307, 0.457882, 0.604149, 0.292863, 0.221377, 0.725782, 0.467317, 0.245825, 0.959323, 0.579488, 0.053509, 0.623069, 0.84234, 0.0756839, 0.490533, 0.535881, 0.78284, 0.003483, 0.294261, 0.577209, 0.85636, 0.848122, 0.215597, 0.401663, 0.499195, 0.383997, 0.0772853, 0.393267, 0.967649, 0.723874, 0.0134035, 0.417533, 0.616528, 0.275959, 0.542618, 0.0333001, 0.051544, 0.683903, 0.405466, 0.635196, 0.897953, 0.235144, 0.395946, 0.140848, 0.461057, 0.741495, 0.261481, 0.996666, 0.456418, 0.938732, 0.434404, 0.785783, 0.31698, 0.501701, 0.24481, 0.538954, 0.238666, 0.600782, 0.446896, 0.94859, 0.0814037, 0.211605, 0.892435, 0.65906, 0.074547, 0.991276, 0.711306, 0.0208342, 0.147429, 0.152632, 0.224157, 0.277968, 0.414186, 0.00208745, 0.775913, 0.571588, 0.758412, 0.828677, 0.0829325, 0.933862, 0.106283, 0.519618, 0.0881866, 0.224594, 0.0189084, 0.0659271, 0.974928, 0.82854, 0.134003, 0.738624, 0.543466, 0.0863006, 0.882607, 0.320078, 0.666928, 0.693226, 0.70438, 0.85448, 0.775868, 0.334582, 0.635723, 0.219116, 0.909936, 0.736899, 0.409991, 0.157747, 0.616639, 0.561564, 0.12609, 0.651409, 0.917947, 0.129513, 0.596813, 0.704076, 0.728928, 0.611481, 0.291842, 0.273992, 0.454171, 0.62646, 0.0388674, 0.625337, 0.817961, 0.500557, 0.812369, 0.344025, 0.509396, 0.309911, 0.128096, 0.278844, 0.596262, 0.530951, 0.952717, 0.289722, 0.787079, 0.746903, 0.685077, 0.412685, 0.055122, 0.39083, 0.929635, 0.933345, 0.0566744, 0.137104, 0.531075, 0.420183, 0.915949, 0.233181, 0.877726, 0.151468, 0.158288, 0.949597, 0.861046, 0.411398, 0.0607589, 0.860483, 0.747925, 0.417887, 0.542449, 0.541183, 0.0290597, 0.490308, 0.994314, 0.0288154, 0.448569, 0.29556, 0.254556, 0.214834, 0.994449, 0.455901, 0.424348, 0.0455689, 0.943316, 0.921489, 0.531744, 0.78504, 0.348116, 0.367114, 0.963063, 0.283874, 0.332566, 0.227099, 0.464252, 0.593859, 0.686899, 0.839795, 0.367608, 0.381914, 0.674551, 0.217788, 0.124624, 0.25339, 0.0966057, 0.753043, 0.918051, 0.699762, 0.646178, 0.37249, 0.285682, 0.518535, 0.551352, 0.067261, 0.299475, 0.302092, 0.0265967, 0.160134, 0.956269, 0.771048, 0.415498, 0.223088, 0.470771, 0.158735, 0.0508719, 0.796851, 0.71981, 0.334176, 0.402225, 0.734121, 0.411236, 0.28083, 0.604116, 0.284539, 0.109407, 0.392471, 0.223762, 0.757649, 0.751274, 0.726113, 0.788269, 0.0118473, 0.20756, 0.135646, 0.814533, 0.366708, 0.180041, 0.895747, 0.213798, 0.930997, 0.169217, 0.916498, 0.297585, 0.507309, 0.566975, 0.245468, 0.614427, 0.603645, 0.555494, 0.222661, 0.0870348, 0.76626, 0.615529, 0.986071, 0.61517, 0.504321, 0.0445614, 0.373633, 0.664185, 0.8271, 0.278683, 0.686827, 0.0810148, 0.0660232, 0.286511, 0.512195, 0.508847, 0.985641, 0.619457, 0.600938, 0.0439228, 0.161026, 0.163524, 0.830615, 0.640138, 0.122284, 0.79851, 0.586152, 0.804195, 0.624873, 0.599216, 0.0661066, 0.976798, 0.300219, 0.753325, 0.653453, 0.382173, 0.0178898, 0.318674, 0.492323, 0.765235, 0.727468, 0.564317, 0.225747, 0.0612711, 0.345757, 0.834737, 0.827275, 0.316303, 0.744176, 0.183844, 0.409722, 0.8062, 0.561327, 0.564014, 0.11746, 0.914365, 0.271437, 0.509299, 0.945122, 0.253176, 0.617672, 0.0162595, 0.310009, 0.492477, 0.304483, 0.766467, 0.748623, 0.11091, 0.903961, 0.985104, 0.736744, 0.0377434, 0.581304, 0.968533, 0.027765, 0.918994, 0.669358, 0.955353, 0.461749, 0.579524, 0.351479, 0.484179, 0.758077, 0.280257, 0.309951, 0.159065, 0.222593, 0.563052, 0.0881087, 0.597631, 0.396301, 0.590142, 0.140283, 0.14033, 0.963856, 0.430781, 0.598894, 0.453247, 0.043933, 0.5655, 0.296147, 0.920062, 0.790409, 0.898751, 0.365284, 0.899785, 0.49559, 0.357233, 0.456651, 0.913636, 0.0415706, 0.27083, 0.361005, 0.512235, 0.910817, 0.640769, 0.41952, 0.225875, 0.0826572, 0.872911, 0.779527, 0.425178, 0.230952, 0.792504, 0.538477, 0.518485, 0.759812, 0.775982, 0.267845, 0.151747, 0.0620934, 0.380695, 0.767428, 0.180766, 0.768072, 0.178788, 0.306042, 0.265824, 0.625785, 0.191432, 0.684929, 0.892178, 0.880488, 0.0335891, 0.624288, 0.321644, 0.997681, 0.676068, 0.576232, 0.0639671, 0.919977, 0.228481, 0.9968, 0.87273, 0.93279, 0.680226, 0.276056, 0.59775, 0.960059, 0.835946, 0.130988, 0.676691, 0.374077, 0.871108, 0.660882, 0.819851, 0.412905, 0.715654, 0.288157, 0.421731, 0.344712, 0.340205, 0.726632, 0.346875, 0.494607, 0.154577, 0.419996, 0.866988, 0.923872, 0.224584, 0.188632, 0.688256, 0.62134, 0.566141, 0.508034, 0.446173, 0.276762, 0.186727, 0.84382, 0.520522, 0.146267, 0.326724, 0.276408, 0.0433107, 0.775426, 0.0716586, 0.598046, 0.201579, 0.0470062, 0.110896, 0.742639, 0.733008, 0.964045, 0.234818, 0.00908989, 0.14847, 0.764839, 0.372257, 0.0732454, 0.736048, 0.530724, 0.611581, 0.704895, 0.978628, 0.104067, 0.0587821, 0.466607, 0.513859, 0.073367, 0.456279, 0.950761, 0.779717, 0.743702, 0.85057, 0.837475, 0.21548, 0.0758656, 0.572578, 0.0399919, 0.13249, 0.558964, 0.183807, 0.175215, 0.887784, 0.70033, 0.280512, 0.211932, 0.383173, 0.400913, 0.282131, 0.395625, 0.0756162, 0.0690113, 0.508337, 0.617142, 0.137114, 0.0948981, 0.495932, 0.789715, 0.685948, 0.883749, 0.648337, 0.769573, 0.521979, 0.0355754, 0.373375, 0.257872, 0.209324, 0.62097, 0.615032, 0.570179, 0.308089, 0.263833, 0.266339, 0.449532, 0.333846, 0.334076, 0.29857, 0.560688, 0.0930012, 0.407661, 0.733649, 0.435651, 0.0500815, 0.708807, 0.618053, 0.0498194, 0.576019, 0.905721, 0.751875, 0.283647, 0.132191, 0.572939, 0.792567, 0.598213, 0.861111, 0.231506, 0.249733, 0.918481, 0.896616, 0.595286, 0.445973, 0.125517, 0.341052, 0.633957, 0.170552, 0.961218, 0.633031, 0.957408, 0.513017, 0.849744, 0.692573, 0.341432, 0.603468, 0.120112, 0.924676, 0.963316, 0.0206015, 0.778159, 0.33578, 0.700126, 0.0166289, 0.653527, 0.508319, 0.244928, 0.144974, 0.805342, 0.142692, 0.276244, 0.90889, 0.243504, 0.815123, 0.643733, 0.249388, 0.87785, 0.397713, 0.726635, 0.901361, 0.373727, 0.308042, 0.332409, 0.457064, 0.621418, 0.501509, 0.708201, 0.624883, 0.843138, 0.139259, 0.0915826, 0.692634, 0.969916, 0.310174, 0.840849, 0.357211, 0.39896, 0.916974, 0.109918, 0.993132, 0.719899, 0.416538, 0.691254, 0.532508, 0.120668, 0.23541, 0.320957, 0.918355, 0.750493, 0.150184, 0.204495, 0.851455, 0.612642, 0.640601, 0.807641, 0.0322647, 0.611851, 0.693634, 0.291402, 0.814455, 0.273817, 0.485362, 0.354739, 0.0473627, 0.125383, 0.504974, 0.678705, 0.411693, 0.841946, 0.0586182, 0.769021, 0.148958, 0.540816, 0.0035579, 0.167399, 0.992512, 0.424822, 0.967926, 0.891685, 0.417781, 0.700522, 0.898224, 0.0247773, 0.755678, 0.719676, 0.841502, 0.404121, 0.791645, 0.415749, 0.386102, 0.2485, 0.849075, 0.217277, 0.283421, 0.393216, 0.928606, 0.899547, 0.408452, 0.345138, 0.293429, 0.701644, 0.971665, 0.68058, 0.69751, 0.0275219, 0.866652, 0.763843, 0.27899, 0.950548, 0.645158, 0.569168, 0.611048, 0.179961, 0.931273, 0.673296, 0.535193, 0.980806, 0.462838, 0.365812, 0.433387, 0.34521, 0.353489, 0.865886, 0.390057, 0.826091, 0.402746, 0.490749, 0.0730381, 0.88921, 0.548313, 0.568108, 0.446319, 0.976011, 0.0100278, 0.150469, 0.129043, 0.789769, 0.547251, 0.228088, 0.210507, 0.182635, 0.865737, 0.895096, 0.363658, 0.981409, 0.847858, 0.914729, 0.824938, 0.432977, 0.651361, 0.77585, 0.774417, 0.802889, 0.836025, 0.561158, 0.600279, 0.925, 0.690457, 0.781047, 0.805659, 0.900502, 0.0238837, 0.101743, 0.171844, 0.209899, 0.197662, 0.140042, 0.955598, 0.880282, 0.562671, 0.436887, 0.964637, 0.647575, 0.276856, 0.256236, 0.495836, 0.95714, 0.549969, 0.0156375, 0.0639922, 0.582348, 0.446425, 0.361302, 0.148736, 0.760943, 0.796099, 0.855681, 0.212617, 0.467775, 0.602453, 0.68756, 0.912814, 0.367024, 0.557372, 0.819638, 0.630635, 0.328515, 0.797586, 0.867159, 0.433949, 0.226666, 0.774877, 0.41631, 0.811486, 0.655874, 0.597928, 0.866057, 0.451696, 0.956782, 0.169419, 0.511258, 0.653091, 0.268976, 0.900806, 0.993532, 0.804963, 0.832374, 0.879101, 0.950586, 0.672735, 0.515634, 0.274928, 0.117228, 0.573043, 0.845599, 0.393487, 0.576845, 0.475925, 0.236152, 0.88211, 0.520927, 0.612104, 0.840932, 0.54499, 0.51173, 0.917307, 0.321128, 0.181292, 0.310309, 0.945798, 0.200201, 0.0525791, 0.751168, 0.409206, 0.83109, 0.0427054, 0.442786, 0.482222, 0.298017, 0.486019, 0.2301, 0.158034, 0.476069, 0.100636, 0.443695, 0.998788, 0.440997, 0.389098, 0.0823183, 0.473866, 0.932606, 0.219362, 0.611553, 0.928534, 0.707063, 0.0527836, 0.713546, 0.899773, 0.299491, 0.144848, 0.506873, 0.0747662, 0.482198, 0.957113, 0.0717272, 0.534383, 0.860147, 0.677232, 0.221148, 0.416428, 0.301721, 0.18942, 0.0665931, 0.412089, 0.713876, 0.549685, 0.740688, 0.160386, 0.461875, 0.988385, 0.549881, 0.336303, 0.546259, 0.891491, 0.534317, 0.138813, 0.926054, 0.271542, 0.27805, 0.534913, 0.00615897, 0.692222, 0.127229, 0.730899, 0.918962, 0.548539, 0.830681, 0.886659, 0.0198554, 0.214369, 0.944238, 0.469166, 0.9595, 0.714853, 0.754693, 0.632177, 0.136082, 0.214233, 0.148486, 0.142554, 0.71482, 0.610274, 0.939756, 0.921736, 0.0163028, 0.675795, 0.964418, 0.465224, 0.932563, 0.78443, 0.215089, 0.903087, 0.572354, 0.684852, 0.411951, 0.251114, 0.446106, 0.875319, 0.105901, 0.79616, 0.239362, 0.932456, 0.925477, 0.280446, 0.964613, 0.523841, 0.823652, 0.272638, 0.0929042, 0.253928, 0.73175, 0.440296, 0.471819, 0.750174, 0.205456, 0.403266, 0.433924, 0.0774383, 0.948408, 0.337614, 0.50142, 0.682877, 0.854771, 0.703206, 0.42341, 0.676134, 0.214581, 0.85109, 0.0440497, 0.943383, 0.95148, 0.722163, 0.236531, 0.378478, 0.583662, 0.947408, 0.870719, 0.615271, 0.222844, 0.298359, 0.539429, 0.674788, 0.0780377, 0.940042, 0.0124713, 0.489701, 0.2671, 0.65149, 0.736091, 0.10314, 0.208335, 0.344688, 0.854764, 0.960612, 0.172681, 0.403244, 0.606578, 0.558464, 0.750431, 0.251524, 0.869247, 0.884348, 0.739821, 0.886854, 0.917043, 0.240966, 0.611184, 0.67041, 0.0332811, 0.999595, 0.900896, 0.125225, 0.61326, 0.621172, 0.765687, 0.556, 0.906384, 0.79286, 0.0830869, 0.561454, 0.415814, 0.496362, 0.704361, 0.744402, 0.453154, 0.4897, 0.691936, 0.513089, 0.626925, 0.309659, 0.668496, 0.706798, 0.123579, 0.0452503, 0.701868, 0.68447, 0.322042, 0.755855, 0.353057, 0.954946, 0.297459, 0.554577, 0.0398144, 0.0716342, 0.911758, 0.0967312, 0.279211, 0.640686, 0.290193, 0.294131, 0.889354, 0.107775, 0.0859083, 0.955491, 0.750323, 0.301426, 0.0679114, 0.542268, 0.0971271, 0.175738, 0.939917, 0.740314, 0.757107, 0.601177, 0.0935744, 0.344923, 0.968417, 0.431867, 0.498361, 0.295489, 0.103358, 0.134519, 0.291735, 0.647672, 0.336172, 0.756561, 0.945544, 0.0282516, 0.341329, 0.743685, 0.298849, 0.205219, 0.242202, 0.87606, 0.827173, 0.984938, 0.854145, 0.190253, 0.609475, 0.311419, 0.988331, 0.666682, 0.9607, 0.643002, 0.0448832, 0.738248, 0.348618, 0.0763026, 0.888354, 0.517763, 0.109996, 0.0868614, 0.82533, 0.396627, 0.137868, 0.826429, 0.867586, 0.555135, 0.892493, 0.585946, 0.305518, 0.315007, 0.701989, 0.802518, 0.683298, 0.00264837, 0.679673, 0.709136, 0.142642, 0.533601, 0.346676, 0.942817, 0.45962, 0.524578, 0.0179627, 0.378634, 0.820991, 0.775419, 0.102314, 0.0266546, 0.143167, 0.265264, 0.218971, 0.146096, 0.635497, 0.717874, 0.110783, 0.560967, 0.300097, 0.204259, 0.897322, 0.668512, 0.235515, 0.173443, 0.734684, 0.780446, 0.572501, 0.406989, 0.315402, 0.796833, 0.0231761, 0.0218985, 0.298767, 0.475227, 0.754351, 0.967537, 0.664917, 0.980077, 0.21669, 0.416873, 0.21657, 0.476457, 0.814323, 0.984516, 0.871082, 0.304772, 0.324579, 0.0843155, 0.896098, 0.372684, 0.39024, 0.424434, 0.511256, 0.91814, 0.984691, 0.708243, 0.673182, 0.366004, 0.123732, 0.701677, 0.408152, 0.342148, 0.166041, 0.692533, 0.708754, 0.0508529, 0.0662668, 0.888426, 0.0280568, 0.201639, 0.71051, 0.984445, 0.204678, 0.555812, 0.956799, 0.734969, 0.19871, 0.823173, 0.262225, 0.394371, 0.631518, 0.47478, 0.0770741, 0.551515, 0.370017, 0.0741412, 0.0500548, 0.263441, 0.327276, 0.939112, 0.411624, 0.544791, 0.66275, 0.283403, 0.88434, 0.0294057, 0.316909, 0.0725998, 0.00835549, 0.809334, 0.849179, 0.375754, 0.957422, 0.85466, 0.217407, 0.542908, 0.175748, 0.504585, 0.976336, 0.491499, 0.778212, 0.366838, 0.178977, 0.0574047, 0.11183, 0.0680625, 0.415275, 0.142, 0.527739, 0.773302, 0.405801, 0.824558, 0.9404, 0.78715, 0.155868, 0.358388, 0.66603, 0.998367, 0.796693, 0.39847, 0.0166702, 0.760833, 0.947697, 0.773071, 0.430953, 0.199777, 0.440754, 0.789584, 0.402203, 0.290959, 0.136039, 0.407225, 0.886502, 0.224862, 0.534533, 0.504989, 0.57205, 0.289784, 0.0567022, 0.513797, 0.688991, 0.489846, 0.0791771, 0.355252, 0.0180781, 0.882109, 0.130447, 0.349479, 0.967927, 0.326071, 0.675689, 0.849642, 0.343251, 0.0138873, 0.172055, 0.573791, 0.713112, 0.642188, 0.231037, 0.482308, 0.429474, 0.817152, 0.604725, 0.576264, 0.590874, 0.530946, 0.060237, 0.834396, 0.25964, 0.513882, 0.330849, 0.367801, 0.4338, 0.96881, 0.392219, 0.891667, 0.0558481, 0.881091, 0.652911, 0.907213, 0.525012, 0.799427, 0.10591, 0.823859, 0.25909, 0.148185, 0.30551, 0.0979791, 0.823973, 0.493586, 0.510876, 0.405858, 0.44503, 0.0469695, 0.392873, 0.983446, 0.824499, 0.560729, 0.874036, 0.0364178, 0.0264234, 0.972361, 0.180638, 0.761379, 0.673746, 0.421156, 0.448217, 0.587261, 0.189683, 0.875711, 0.442644, 0.496144, 0.0587351, 0.819399, 0.298208, 0.283541, 0.997576, 0.355854, 0.83655, 0.728251, 0.55746, 0.840863, 0.746343, 0.640369, 0.902633, 0.3231, 0.536743, 0.60424, 0.858438, 0.402129, 0.119052, 0.197639, 0.545146, 0.0509377, 0.785403, 0.359014, 0.435355, 0.445491, 0.15645, 0.419904, 0.558313, 0.733979, 0.0500345, 0.259926, 0.829724, 0.704491, 0.118991, 0.0171485, 0.953601, 0.403183, 0.804015, 0.204906, 0.226606, 0.958313, 0.899884, 0.123221, 0.582415, 0.167405, 0.551889, 0.577661, 0.351546, 0.666651, 0.750385, 0.42224, 0.1394, 0.957366, 0.190762, 0.397029, 0.236701, 0.807296, 0.977773, 0.908144, 0.63838, 0.0202056, 0.102166, 0.0770063, 0.0896048, 0.592962, 0.331862, 0.290044, 0.753807, 0.844978, 0.220282, 0.524613, 0.674022, 0.804005, 0.564743, 0.0162725, 0.433844, 0.844632, 0.778595, 0.0121974, 0.939128, 0.352941, 0.965113, 0.785378, 0.281219, 0.0634396, 0.00429965, 0.401227, 0.198532, 0.40841, 0.845486, 0.311989, 0.00704158, 0.821301, 0.959929, 0.0583634, 0.574366, 0.432346, 0.0660277, 0.0407462, 0.716607, 0.279973, 0.968249, 0.118468, 0.0713564, 0.617792, 0.0364391, 0.789564, 0.931509, 0.646733, 0.894797, 0.0255862, 0.521541, 0.47941, 0.911951, 0.108453, 0.29824, 0.934456, 0.122792, 0.906146, 0.0347667, 0.885765, 0.236362, 0.66265, 0.325736, 0.250516, 0.00275351, 0.215824, 0.0109774, 0.500205, 0.619165, 0.268715, 0.00368781, 0.570198, 0.962896, 0.2447, 0.693203, 0.59192, 0.513152, 0.0424015, 0.44479, 0.974031, 0.487295, 0.577131, 0.385076, 0.72506, 0.595617, 0.595126, 0.671998, 0.797152, 0.735002, 0.561665, 0.751351, 0.437535, 0.316728, 0.927018, 0.724848, 0.670374, 0.828052, 0.200936, 0.600996, 0.979797, 0.234869, 0.0929985, 0.179676, 0.206935, 0.577415, 0.591904, 0.676284, 0.0182387, 0.133701, 0.390187, 0.492462, 0.569746, 0.556183, 0.300664, 0.128553, 0.386784, 0.929474, 0.90866, 0.0408087, 0.447141, 0.0394187, 0.210142, 0.800794, 0.249493, 0.1711, 0.775389, 0.321793, 0.497328, 0.920615, 0.72654, 0.987001, 0.865239, 0.168, 0.41209, 0.560018, 0.425795, 0.050327, 0.181931, 0.78959, 0.00529848, 0.302152, 0.214343, 0.445677, 0.448867, 0.325477, 0.395507, 0.307492, 0.0688672, 0.299394, 0.750222, 0.459083, 0.357636, 0.81627, 0.549338, 0.173428, 0.755245, 0.461379, 0.880511, 0.32672, 0.659535, 0.725552, 0.343132, 0.459094, 0.588021, 0.924431, 0.279072, 0.365516, 0.51584, 0.925071, 0.782208, 0.402797, 0.0848286, 0.894447, 0.25516, 0.71576, 0.209828, 0.625123, 0.719563, 0.156484, 0.788108, 0.0235596, 0.550313, 0.107401, 0.531978, 0.700822, 0.138419, 0.93222, 0.0250308, 0.761861, 0.600686, 0.927817, 0.590488, 0.544644, 0.689929, 0.646576, 0.45495, 0.250062, 0.285164, 0.0444433, 0.756472, 0.649678, 0.227151, 0.400516, 0.0890544, 0.599938, 0.0134461, 0.944401, 0.161036, 0.285342, 0.942577, 0.418774, 0.531273, 0.615817, 0.777693, 0.356737, 0.0277513, 0.311302, 0.322879, 0.733471, 0.687102, 0.519443, 0.324993, 0.996888, 0.600846, 0.88903, 0.447834, 0.484094, 0.857112, 0.308958, 0.114202, 0.618884, 0.887633, 0.181305, 0.521852, 0.839859, 0.360276, 0.357392, 0.978203, 0.00644566, 0.353331, 0.590259, 0.250829, 0.0271141, 0.972923, 0.46393, 0.828972, 0.455742, 0.0231219, 0.577045, 0.650473, 0.818425, 0.695791, 0.275232, 0.0350587, 0.773464, 0.0403544, 0.739522, 0.141117, 0.637566, 0.828575, 0.730955, 0.125611, 0.594952, 0.911731, 0.985904, 0.00857818, 0.427475, 0.931194, 0.966889, 0.369253, 0.459884, 0.266648, 0.312622, 0.456116, 0.977555, 0.289786, 0.116616, 0.345017, 0.330979, 0.392478, 0.756026, 0.324448, 0.247345, 0.377854, 0.844884, 0.220027, 0.29662, 0.661884, 0.330342, 0.545344, 0.536275, 0.308303, 0.598373, 0.768796, 0.154837, 0.463053, 0.538544, 0.868723, 0.881907, 0.882959, 0.841358, 0.0700229, 0.209758, 0.389461, 0.0936458, 0.712309, 0.267845, 0.255603, 0.558159, 0.657676, 0.413247, 0.523729, 0.139476, 0.31866, 0.108104, 0.748128, 0.373597, 0.202816, 0.380043, 0.19868, 0.232872, 0.894402, 0.0514955, 0.532503, 0.100772, 0.037074, 0.10981, 0.86109, 0.654005, 0.154299, 0.898359, 0.408183, 0.679988, 0.90754, 0.375236, 0.882333, 0.270426, 0.513036, 0.581996, 0.932715, 0.837767, 0.173011, 0.0419643, 0.574801, 0.0963259, 0.788492, 0.733621, 0.119557, 0.9871, 0.957762, 0.465913, 0.609707, 0.942469, 0.620195, 0.453049, 0.453488, 0.956275, 0.686171, 0.882992, 0.931574, 0.872779, 0.890029, 0.183952, 0.943933, 0.107183, 0.181155, 0.201269, 0.702818, 0.606594, 0.773789, 0.498294, 0.852091, 0.920335, 0.987666, 0.64869, 0.889185, 0.623223, 0.947191, 0.477914, 0.49591, 0.308485, 0.857547, 0.932055, 0.910387, 0.473953, 0.688625, 0.401032, 0.132168, 0.303434, 0.634216, 0.992237, 0.0731308, 0.041773, 0.511691, 0.25241, 0.554861, 0.455313, 0.678287, 0.530853, 0.225368, 0.43792, 0.532123, 0.485212, 0.637144, 0.960978, 0.95891, 0.0782347, 0.289332, 0.886921, 0.764571, 0.361793, 0.0746127, 0.993632, 0.694509, 0.623157, 0.130792, 0.893395, 0.0873223, 0.252372, 0.0040305, 0.724391, 0.942513, 0.678298, 0.78984, 0.726096, 0.251289, 0.365509, 0.697511, 0.182567, 0.384673, 0.0197732, 0.889548, 0.889591, 0.781046, 0.442412, 0.777671, 0.898534, 0.54291, 0.636089, 0.419532, 0.614074, 0.246672, 0.104112, 0.410356, 0.0850863, 0.732314, 0.576642, 0.983862, 0.245529, 0.905021, 0.423117, 0.642733, 0.0384267, 0.905644, 0.189703, 0.846216, 0.638472, 0.212359, 0.13522, 0.458133, 0.592051, 0.978257, 0.951733, 0.545079, 0.261652, 0.699546, 0.433683, 0.0664002, 0.436459, 0.705024, 0.609772, 0.324989, 0.266375, 0.318822, 0.168132, 0.120973, 0.0613638, 0.960365, 0.0411135, 0.79781, 0.37686, 0.161793, 0.267026, 0.0747603, 0.143638, 0.873175, 0.29606, 0.144062, 0.527469, 0.888221, 0.926065, 0.973356, 0.418015, 0.266929, 0.212153, 0.365911, 0.507319, 0.734776, 0.196497, 0.0282453, 0.599506, 0.672937, 0.521375, 0.131725, 0.949371, 0.1465, 0.146601, 0.199998, 0.234061, 0.179435, 0.073721, 0.658238, 0.692011, 0.294476, 0.636462, 0.811079, 0.447009, 0.346376, 0.540229, 0.142998, 0.809889, 0.149238, 0.623237, 0.440844, 0.446792, 0.050568, 0.954065, 0.122756, 0.970355, 0.434692, 0.602249, 0.879318, 0.781173, 0.921066, 0.854981, 0.87454, 0.358674, 0.27127, 0.584635, 0.267057, 0.0961367, 0.160083, 0.0938329, 0.585566, 0.703595, 0.767254, 0.714843, 0.172718, 0.392079, 0.000955963, 0.977616, 0.575433, 0.423307, 0.678327, 0.976696, 0.536711, 0.41057, 0.58762, 0.196584, 0.321225, 0.76111, 0.208201, 0.522568, 0.512635, 0.516359, 0.686973, 0.974234, 0.0214595, 0.346165, 0.445053, 0.551545, 0.831634, 0.661682, 0.129605, 0.67415, 0.779018, 0.420759, 0.199274, 0.570723, 0.596118, 0.338123, 0.821161, 0.63861, 0.855365, 0.197256, 0.887666, 0.464242, 0.362706, 0.609213, 0.830651, 0.676957, 0.941982, 0.649738, 0.0908446, 0.153289, 0.458819, 0.225334, 0.727708, 0.796149, 0.961531, 0.944226, 0.722972, 0.537162, 0.794307, 0.820672, 0.303677, 0.0092616, 0.150626, 0.278319, 0.401405, 0.119615, 0.775608, 0.257171, 0.144378, 0.630399, 0.201702, 0.994009, 0.545814, 0.0633206, 0.0854413, 0.0138782, 0.9435, 0.293533, 0.084039, 0.286295, 0.709022, 0.309837, 0.914594, 0.81354, 0.318379, 0.0720562, 0.796569, 0.581334, 0.448156, 0.590333, 0.638818, 0.90309, 0.907353, 0.267875, 0.739135, 0.0269618, 0.415492, 0.210443, 0.11701, 0.2802, 0.476753, 0.798298, 0.459586, 0.980068, 0.623407, 0.102737, 0.815412, 0.721706, 0.0192618, 0.622737, 0.410737, 0.966186, 0.451259, 0.178196, 0.590272, 0.632138, 0.0150193, 0.754371, 0.282721, 0.111791, 0.964293, 0.757311, 0.863531, 0.815876, 0.741579, 0.132043, 0.311717, 0.375529, 0.423573, 0.879152, 0.687964, 0.623009, 0.928642, 0.211231, 0.599021, 0.315594, 0.48983, 0.924192, 0.15759, 0.835065, 0.270752, 0.519572, 0.983971, 0.933466, 0.39281, 0.164771, 0.69996, 0.695087, 0.939934, 0.360593, 0.884087, 0.0705368, 0.195783, 0.840753, 0.640125, 0.608968, 0.660921, 0.391866, 0.560112, 0.279624, 0.130927, 0.379738, 0.29212, 0.0839564, 0.959167, 0.481734, 0.761034, 0.218957, 0.657724, 0.89205, 0.632027, 0.00426973, 0.901251, 0.611128, 0.93658, 0.192968, 0.800139, 0.734223, 0.257371, 0.583209, 0.205984, 0.306612, 0.732238, 0.767415, 0.306473, 0.301493, 0.655717, 0.806719, 0.185761, 0.108008, 0.369758, 0.5799, 0.39172, 0.586472, 0.912723, 0.996995, 0.328359, 0.728283, 0.913385, 0.458639, 0.487452, 0.315121, 0.487541, 0.689887, 0.334267, 0.261757, 0.554891, 0.74423, 0.81897, 0.199157, 0.92522, 0.795319, 0.29064, 0.734204, 0.428365, 0.64949, 0.83396, 0.468518, 0.322345, 0.887436, 0.679391, 0.793715, 0.627969, 0.549529, 0.216202, 0.935997, 0.303923, 0.0265268, 0.256032, 0.00753601, 0.740424, 0.765904, 0.448312, 0.0849806, 0.219901, 0.641763, 0.732962, 0.562491, 0.698137, 0.390629, 0.441117, 0.914715, 0.371376, 0.0270291, 0.565576, 0.872735, 0.283587, 0.300075, 0.428127, 0.765926, 0.601275, 0.116522, 0.184715, 0.0921416, 0.225001, 0.328041, 0.831487, 0.240143, 0.298623, 0.0183053, 0.423449, 0.173679, 0.532816, 0.174162, 0.724482, 0.338944, 0.634093, 0.825546, 0.598415, 0.712967, 0.281606, 0.626934, 0.972574, 0.749146, 0.521465, 0.817477, 0.820694, 0.674425, 0.822765, 0.76617, 0.0219426, 0.481244, 0.799323, 0.54821, 0.99158, 0.467712, 0.608509, 0.413756, 0.164914, 0.627942, 0.479727, 0.602386, 0.330174, 0.690089, 0.129653, 0.158252, 0.577024, 0.44558, 0.549267, 0.161021, 0.468495, 0.760144, 0.872291, 0.850721, 0.74684, 0.315013, 0.0820171, 0.195057, 0.229297, 0.0356003, 0.625246, 0.0778245, 0.998756, 0.947639, 0.607523, 0.434552, 0.989694, 0.815607, 0.941278, 0.861908, 0.999584, 0.989924, 0.492682, 0.622809, 0.0118228, 0.128034, 0.508684, 0.676673, 0.596012, 0.081458, 0.436571, 0.633841, 0.906294, 0.11493, 0.836429, 0.942813, 0.660931, 0.61251, 0.200747, 0.634191, 0.0971297, 0.9871, 0.525109, 0.957392, 0.849594, 0.838424, 0.43607, 0.786804, 0.250731, 0.565066, 0.0139926, 0.731502, 0.066213, 0.352713, 0.866957, 0.809287, 0.187923, 0.852455, 0.028073, 0.894598, 0.592446, 0.454888, 0.471943, 0.734707, 0.565559, 0.720943, 0.100021, 0.156881, 0.298176, 0.719757, 0.190602, 0.499897, 0.455767, 0.413476, 0.561167, 0.217268, 0.615113, 0.652399, 0.167765, 0.2394, 0.908603, 0.44359, 0.762971, 0.262683, 0.979575, 0.0046518, 0.78731, 0.560064, 0.409568, 0.470744, 0.221643, 0.172649, 0.916843, 0.840882, 0.494234, 0.796157, 0.82787, 0.0642344, 0.149631, 0.121883, 0.471611, 0.725665, 0.517188, 0.92359, 0.0724756, 0.167474, 0.974842, 0.429479, 0.582507, 0.753831, 0.941557, 0.652318, 0.999982, 0.880069, 0.170462, 0.642863, 0.297986, 0.754937, 0.715194, 0.382265, 0.0684199, 0.152803, 0.346498, 0.0980933, 0.539281, 0.313148, 0.329868, 0.659931, 0.460339, 0.756118, 0.948438, 0.47178, 0.608557, 0.943064, 0.972609, 0.731033, 0.0835427, 0.116397, 0.960032, 0.878928, 0.158863, 0.96914, 0.215856, 0.490591, 0.932403, 0.00532221, 0.56509, 0.184162, 0.071154, 0.187463, 0.67118, 0.224376, 0.812902, 0.587138, 0.414517, 0.906184, 0.212648, 0.83957, 0.0392536, 0.541782, 0.295983, 0.30007, 0.22822, 0.262378, 0.834384, 0.315133, 0.324306, 0.0557477, 0.82832, 0.928104, 0.367016, 0.649099, 0.0396088, 0.733263, 0.0114925, 0.189227, 0.435077, 0.57049, 0.209751, 0.99275, 0.0132314, 0.748614, 0.754128, 0.308886, 0.940483, 0.563096, 0.417193, 0.689936, 0.944569, 0.758204, 0.61821, 0.896863, 0.273171, 0.889657, 0.599449, 0.336948, 0.994484, 0.516204, 0.113564, 0.725726, 0.306077, 0.834276, 0.0798385, 0.390562, 0.851716, 0.38912, 0.49531, 0.305076, 0.258891, 0.553501, 0.114869, 0.0733474, 0.640746, 0.959401, 0.361267, 0.844638, 0.970882, 0.334052, 0.950295, 0.953569, 0.285906, 0.698312, 0.860996, 0.686962, 0.470302, 0.0658563, 0.74922, 0.986479, 0.719605, 0.58211, 0.0382286, 0.516559, 0.80634, 0.407344, 0.282383, 0.0815423, 0.020983, 0.956287, 0.95763, 0.13336, 0.944486, 0.0188899, 0.811448, 0.57224, 0.0696519, 0.588823, 0.595569, 0.857287, 0.626235, 0.0776045, 0.826725, 0.111139, 0.892575, 0.544137, 0.124404, 0.802925, 0.211684, 0.519513, 0.46979, 0.302065, 0.932356, 0.611625, 0.937576, 0.817479, 0.119266, 0.410209, 0.605702, 0.782327, 0.158269, 0.903792, 0.241192, 0.771094, 0.724703, 0.643881, 0.433215, 0.638512, 0.182143, 0.709728, 0.841723, 0.0507608, 0.327897, 0.344321, 0.722545, 0.447383, 0.285312, 0.0242404, 0.785832, 0.477245, 0.733531, 0.793145, 0.388553, 0.453201, 0.965354, 0.387875, 0.880384, 0.0192083, 0.372754, 0.802752, 0.500992, 0.20782, 0.025106, 0.937312, 0.161403, 0.325695, 0.554755, 0.921233, 0.969702, 0.177798, 0.635858, 0.228456, 0.517535, 0.764385, 0.0310674, 0.663643, 0.51201, 0.878013, 0.857616, 0.160906, 0.546719, 0.237824, 0.400096, 0.687779, 0.601709, 0.00459333, 0.649596, 0.29988, 0.0568715, 0.58124, 0.180596, 0.60101, 0.00389178, 0.328437, 0.333262, 0.284833, 0.716697, 0.651259, 0.730291, 0.290504, 0.574079, 0.447069, 0.201367, 0.407274, 0.237481, 0.850878, 0.274307, 0.303421, 0.518478, 0.917222, 0.0848286, 0.556413, 0.924497, 0.107259, 0.230666, 0.828556, 0.575067, 0.336448, 0.0485684, 0.0609157, 0.357136, 0.094745, 0.857984, 0.623518, 0.256357, 0.790221, 0.0788018, 0.380383, 0.91978, 0.18314, 0.287352, 0.907766, 0.390134, 0.512253, 0.569944, 0.661262, 0.365042, 0.72941, 0.746994, 0.526814, 0.56478, 0.578807, 0.427708, 0.893288, 0.447646, 0.31169, 0.741519, 0.172659, 0.315436, 0.407067, 0.065012, 0.604022, 0.241147, 0.28989, 0.25807, 0.834869, 0.56664, 0.0757672, 0.0614231, 0.922294, 0.699248, 0.478451, 0.210576, 0.868179, 0.0737086, 0.696861, 0.0934867, 0.103978, 0.213312, 0.12607, 0.647746, 0.0123185, 0.550134, 0.370287, 0.242576, 0.691588, 0.760269, 0.229541, 0.0712436, 0.670378, 0.148687, 0.352557, 0.792037, 0.723984, 0.78095, 0.0760833, 0.214986, 0.794623, 0.656526, 0.2657, 0.162698, 0.249672, 0.737294, 0.144896, 0.960271, 0.952706, 0.247689, 0.781195, 0.637473, 0.651339, 0.480488, 0.624827, 0.168967, 0.882051, 0.432428, 0.821382, 0.126006, 0.888336, 0.537809, 0.975249, 0.47041, 0.186036, 0.385578, 0.294402, 0.278556, 0.303968, 0.101222, 0.984892, 0.962658, 0.285753, 0.0867446, 0.267672, 0.944927, 0.619094, 0.109094, 0.586843, 0.441005, 0.572039, 0.686227, 0.825132, 0.807977, 0.464764, 0.270553, 0.566108, 0.20144, 0.82994, 0.277983, 0.127498, 0.980175, 0.490948, 0.588068, 0.842485, 0.73467, 0.300052, 0.794655, 0.709573, 0.633959, 0.617273, 0.277497, 0.231344, 0.576921, 0.330769, 0.387124, 0.559898, 0.489555, 0.262435, 0.897746, 0.942984, 0.696111, 0.330836, 0.258096, 0.18709, 0.250549, 0.695652, 0.00178437, 0.771559, 0.935707, 0.0570436, 0.222083, 0.0285951, 0.793577, 0.778705, 0.829804, 0.552224, 0.878264, 0.590307, 0.416663, 0.968305, 0.980497, 0.374351, 0.416178, 0.96846, 0.408325, 0.380784, 0.157902, 0.207659, 0.420486, 0.246321, 0.0205687, 0.728861, 0.415458, 0.545777, 0.763633, 0.120258, 0.486911, 0.969393, 0.286764, 0.336028, 0.286827, 0.585956, 0.450174, 0.0558024, 0.680114, 0.0793479, 0.48357, 0.602861, 0.775916, 0.0411381, 0.338329, 0.8924, 0.824861, 0.110559, 0.306005, 0.717528, 0.180393, 0.653016, 0.500991, 0.480166, 0.813107, 0.217375, 0.465885, 0.383509, 0.703033, 0.859691, 0.0195925, 0.834752, 0.734476, 0.955846, 0.580859, 0.953796, 0.654574, 0.44423, 0.0112598, 0.282579, 0.49631, 0.545955, 0.175376, 0.19637, 0.556494, 0.0788281, 0.634461, 0.415645, 0.240133, 0.131654, 0.937616, 0.802098, 0.447082, 0.781492, 0.655502, 0.0768588, 0.0264196, 0.440422, 0.340152, 0.848416, 0.18037, 0.996482, 0.529455, 0.77265, 0.795671, 0.27664, 0.596482, 0.156991, 0.0264286, 0.0321646, 0.313622, 0.66091, 0.102391, 0.247598, 0.633924, 0.366711, 0.67399, 0.770374, 0.305931, 0.694115, 0.218569, 0.688451, 0.395182, 0.254572, 0.667813, 0.0587792, 0.467662, 0.161722, 0.724485, 0.621927, 0.516418, 0.949979, 0.306452, 0.63481, 0.314079, 0.218101, 0.30225, 0.537741, 0.513449, 0.70897, 0.993491, 0.5555, 0.555535, 0.859809, 0.548939, 0.318943, 0.992481, 0.992319, 0.806028, 0.317697, 0.479037, 0.450285, 0.0430833, 0.68005, 0.241278, 0.785787, 0.848216, 0.442909, 0.731278, 0.507967, 0.644294, 0.384743, 0.490276, 0.514169, 0.028633, 0.382395, 0.158087, 0.888714, 0.0219941, 0.843342, 0.486631, 0.75527, 0.171793, 0.807343, 0.512682, 0.137995, 0.553477, 0.754692, 0.414911, 0.297277, 0.748853, 0.644971, 0.258304, 0.503775, 0.50907, 0.108981, 0.0239485, 0.974731, 0.0142304, 0.921031, 0.384431, 0.91562, 0.509847, 0.469516, 0.73212, 0.684066, 0.653302, 0.228694, 0.863653, 0.041899, 0.825711, 0.315551, 0.305999, 0.875391, 0.524647, 0.737578, 0.843897, 0.20596, 0.569398, 0.891875, 0.514638, 0.177141, 0.337022, 0.238634, 0.450862, 0.0958515, 0.0170952, 0.291028, 0.264376, 0.219396, 0.280907, 0.238399, 0.485541, 0.186888, 0.685824, 0.845492, 0.158039, 0.624817, 0.617941, 0.0335596, 0.929544, 0.283022, 0.913518, 0.824676, 0.748839, 0.210475, 0.80756, 0.550077, 0.540211, 0.593669, 0.817956, 0.590681, 0.580638, 0.863733, 0.369527, 0.522274, 0.970446, 0.27185, 0.244164, 0.848418, 0.317831, 0.796962, 0.39336, 0.61686, 0.443003, 0.886598, 0.296609, 0.79706, 0.505852, 0.135758, 0.729181, 0.568836, 0.228146, 0.628907, 0.557686, 0.210052, 0.666452, 0.369343, 0.637187, 0.913858, 0.0676483, 0.386314, 0.74614, 0.460027, 0.769665, 0.607163, 0.661136, 0.408317, 0.082415, 0.330202, 0.973103, 0.906002, 0.592822, 0.49552, 0.464728, 0.927377, 0.79601, 0.297257, 0.0802152, 0.875166, 0.965711, 0.828689, 0.935954, 0.222853, 0.960175, 0.885684, 0.0260691, 0.651986, 0.927343, 0.0823473, 0.951757, 0.760611, 0.54416, 0.835401, 0.210591, 0.0724783, 0.391011, 0.0143496, 0.293461, 0.194537, 0.91084, 0.504482, 0.841295, 0.905512, 0.225208, 0.449512, 0.622702, 0.560123, 0.890952, 0.169299, 0.381673, 0.84665, 0.948667, 0.987612, 0.729889, 0.908907, 0.365192, 0.338496, 0.735753, 0.527905, 0.468758, 0.0385625, 0.996785, 0.108748, 0.481158, 0.00839623, 0.466563, 0.865383, 0.409138, 0.460578, 0.360472, 0.0407806, 0.364375, 0.977482, 0.811772, 0.0990622, 0.933134, 0.163347, 0.939935, 0.630137, 0.256183, 0.983861, 0.724552, 0.303294, 0.914815, 0.482606, 0.912499, 0.660085, 0.366056, 0.746248, 0.219051, 0.104823, 0.102237, 0.629716, 0.958589, 0.513937, 0.156952, 0.837467, 0.279681, 0.417555, 0.618307, 0.933961, 0.710576, 0.64998, 0.591747, 0.18498, 0.645953, 0.30677, 0.125125, 0.041388, 0.801042, 0.424426, 0.351224, 0.513681, 0.175725, 0.36503, 0.312664, 0.106289, 0.530154, 0.864183, 0.0462141, 0.146542, 0.747002, 0.0271387, 0.847553, 0.374374, 0.141571, 0.804145, 0.781911, 0.908875, 0.640773, 0.942928, 0.932247, 0.0819903, 0.702697, 0.796138, 0.0998107, 0.477658, 0.71308, 0.230403, 0.39062, 0.412141, 0.560688, 0.0396883, 0.300266, 0.552077, 0.401183, 0.697795, 0.345155, 0.973869, 0.99401, 0.724117, 0.37781, 0.475506, 0.259888, 0.816185, 0.340527, 0.555918, 0.0614762, 0.327173, 0.33215, 0.879987, 0.638624, 0.462407, 0.911328, 0.848515, 0.101813, 0.337031, 0.589615, 0.444778, 0.939433, 0.452765, 0.164072, 0.313226, 0.121912, 0.964394, 0.545237, 0.119571, 0.320902, 0.32713, 0.297954, 0.92257, 0.581893, 0.605318, 0.454684, 0.981156, 0.680498, 0.646043, 0.848569, 0.727255, 0.26652, 0.192383, 0.924268, 0.114181, 0.210008, 0.0881303, 0.493128, 0.761511, 0.544935, 0.0904996, 0.304229, 0.668192, 0.129051, 0.620008, 0.710355, 0.804815, 0.858795, 0.328434, 0.638237, 0.922537, 0.37459, 0.580962, 0.856638, 0.108657, 0.759089, 0.48636, 0.233826, 0.646782, 0.608141, 0.078016, 0.112631, 0.870167, 0.79137, 0.224489, 0.0101558, 0.00762725, 0.0954137, 0.55212, 0.795537, 0.904098, 0.591631, 0.480995, 0.856099, 0.523218, 0.832067, 0.771458, 0.606072, 0.104547, 0.771592, 0.908995, 0.693579, 0.684904, 0.695537, 0.821532, 0.307386, 0.71525, 0.813333, 0.647794, 0.442722, 0.0453486, 0.348228, 0.40358, 0.278184, 0.64213, 0.0118423, 0.706857, 0.523328, 0.969652, 0.60106, 0.640635, 0.701873, 0.498151, 0.472944, 0.12873, 0.0483712, 0.644485, 0.717798, 0.396157, 0.246251, 0.0118826, 0.116676, 0.0344178, 0.484916, 0.170281, 0.0870461, 0.372743, 0.0366434, 0.618328, 0.228173, 0.487171, 0.753924, 0.711603, 0.2192, 0.00744546, 0.555475, 0.488775, 0.0123579, 0.0985529, 0.837939, 0.240533, 0.926339, 0.0881075, 0.593701, 0.751206, 0.0428366, 0.353683, 0.00202499, 0.95949, 0.0779273, 0.337559, 0.107304, 0.52039, 0.634236, 0.573349, 0.210973, 0.13295, 0.636381, 0.312231, 0.745826, 0.595705, 0.494064, 0.596859, 0.254767, 0.934892, 0.574779, 0.42702, 0.885871, 0.530271, 0.351459, 0.917716, 0.599362, 0.879352, 0.742866, 0.751279, 0.255945, 0.953363, 0.364924, 0.613204, 0.395512, 0.42505, 0.775299, 0.739922, 0.610164, 0.519186, 0.54946, 0.759337, 0.065786, 0.851736, 0.513869, 0.538094, 0.298297, 0.936134, 0.819454, 0.589035, 0.146889, 0.789904, 0.265699, 0.922212, 0.824522, 0.280013, 0.723715, 0.22222, 0.215838, 0.170854, 0.84406, 0.720984, 0.517679, 0.985518, 0.828351, 0.680872, 0.527865, 0.360798, 0.0171757, 0.335389, 0.127265, 0.0372285, 0.743543, 0.120925, 0.992412, 0.893428, 0.224306, 0.427493, 0.400916, 0.453714, 0.844501, 0.432694, 0.907014, 0.387987, 0.197357, 0.353356, 0.163248, 0.581933, 0.0802244, 0.101659, 0.948038, 0.298489, 0.487947, 0.805005, 0.292222, 0.104251, 0.262406, 0.756303, 0.0289556, 0.539178, 0.612408, 0.260213, 0.87181, 0.125249, 0.877138, 0.56453, 0.260431, 0.115406, 0.844685, 0.795905, 0.0845446, 0.403418, 0.203438, 0.501762, 0.04233, 0.883746, 0.888299, 0.0241302, 0.0477649, 0.678425, 0.973873, 0.875213, 0.255399, 0.554313, 0.509247, 0.810753, 0.662169, 0.0431242, 0.620963, 0.532629, 0.414566, 0.202682, 0.431377, 0.359614, 0.741483, 0.287146, 0.930683, 0.427412, 0.990319, 0.954914, 0.109501, 0.945121, 0.0656726, 0.528272, 0.865429, 0.813012, 0.804701, 0.178151, 0.987579, 0.367919, 0.455077, 0.816022, 0.662191, 0.843173, 0.677972, 0.838458, 0.669437, 0.130338, 0.0307111, 0.0626129, 0.65216, 0.89493, 0.682701, 0.687862, 0.930354, 0.989369, 0.127442, 0.7715, 0.142004, 0.203572, 0.797808, 0.69064, 0.515438, 0.824036, 0.480253, 0.429861, 0.193539, 0.0359497, 0.991032, 0.158966, 0.765634, 0.489247, 0.638873, 0.851344, 0.144914, 0.604943, 0.295531, 0.736863, 0.637076, 0.888163, 0.955339, 0.089028, 0.509549, 0.18744, 0.0881126, 0.240522, 0.971756, 0.0332888, 0.551699, 0.385016, 0.0123994, 0.288318, 0.0737334, 0.773612, 0.149373, 0.245974, 0.051311, 0.628455, 0.176365, 0.939546, 0.16157, 0.16799, 0.755808, 0.553828, 0.774415, 0.693948, 0.484905, 0.386581, 0.782892, 0.300995, 0.458443, 0.791017, 0.400073, 0.827436, 0.526291, 0.0786245, 0.169529, 0.645122, 0.897908, 0.615324, 0.0569726, 0.940118, 0.689557, 0.908606, 0.351026, 0.336397, 0.114568, 0.437256, 0.721008, 0.905267, 0.193115, 0.767424, 0.446772, 0.394282, 0.302813, 0.948594, 0.401708, 0.00299313, 0.768493, 0.755339, 0.614702, 0.329795, 0.336652, 0.37557, 0.681038, 0.22798, 0.624969, 0.297243, 0.592397, 0.0193065, 0.647642, 0.299208, 0.873181, 0.465653, 0.9561, 0.845995, 0.592208, 0.610495, 0.693635, 0.83781, 0.871429, 0.482782, 0.019577, 0.566867, 0.16798, 0.265707, 0.970517, 0.793594, 0.0707822, 0.517747, 0.0848429, 0.657993, 0.353269, 0.528811, 0.0576434, 0.789224, 0.142582, 0.136927, 0.275891, 0.613849, 0.631172, 0.43431, 0.708835, 0.24269, 0.652269, 0.838496, 0.810745, 0.443645, 0.990308, 0.716902, 0.915889, 0.53024, 0.0882673, 0.531856, 0.513347, 0.47327, 0.321808, 0.230628, 0.696743, 0.103835, 0.105626, 0.931232, 0.954198, 0.668827, 0.9736, 0.484766, 0.650168, 0.172564, 0.694854, 0.311507, 0.256866, 0.960496, 0.805261, 0.960536, 0.125208, 0.941721, 0.0252524, 0.811851, 0.0497205, 0.665747, 0.940021, 0.834874, 0.484493, 0.0483284, 0.930201, 0.92104, 0.920169, 0.489162, 0.107738, 0.590964, 0.857815, 0.108885, 0.703273, 0.98203, 0.526217, 0.391751, 0.424956, 0.959739, 0.427961, 0.55528, 0.678307, 0.89085, 0.564021, 0.0254301, 0.267811, 0.966403, 0.255753, 0.434848, 0.948481, 0.0797267, 0.107002, 0.613125, 0.308759, 0.951783, 0.482604, 0.212008, 0.920039, 0.437873, 0.914546, 0.495611, 0.158746, 0.679416, 0.251326, 0.132333, 0.0188234, 0.0826892, 0.0968132, 0.00930595, 0.216777, 0.107398, 0.439804, 0.945324, 0.200513, 0.127535, 0.774592, 0.456462, 0.710033, 0.528864, 0.691696, 0.234751, 0.483404, 0.848106, 0.973856, 0.879214, 0.277933, 0.723969, 0.533849, 0.724845, 0.0916249, 0.457768, 0.194096, 0.25009, 0.193369, 0.0138378, 0.0989235, 0.875745, 0.223662, 0.834419, 0.678243, 0.426739, 0.971297, 0.431455, 0.217424, 0.190131, 0.605275, 0.464854, 0.106896, 0.832803, 0.302449, 0.961006, 0.855226, 0.521602, 0.65972, 0.180617, 0.741415, 0.96466, 0.71623, 0.187566, 0.0841722, 0.0878926, 0.190294, 0.727046, 0.172442, 0.412167, 0.545072, 0.466853, 0.660928, 0.486961, 0.778572, 0.147888, 0.954745, 0.200231, 0.744128, 0.294402, 0.859378, 0.906787, 0.519812, 0.551985, 0.79456, 0.418839, 0.414822, 0.125102, 0.490049, 0.959723, 0.210006, 0.589855, 0.365312, 0.316106, 0.0577263, 0.237431, 0.0110919, 0.330336, 0.058622, 0.808817, 0.896923, 0.356248, 0.0971567, 0.334918, 0.842778, 0.112614, 0.669964, 0.666608, 0.682843, 0.737819, 0.141793, 0.276603, 0.0331375, 0.783688, 0.434657, 0.45442, 0.599295, 0.387187, 0.846923, 0.179479, 0.121494, 0.98973, 0.478073, 0.827297, 0.379425, 0.232607, 0.118598, 0.169086, 0.902703, 0.095138, 0.0735214, 0.683167, 0.9624, 0.130515, 0.488498, 0.62583, 0.00683649, 0.254995, 0.929025, 0.599082, 0.661573, 0.928941, 0.831784, 0.179927, 0.053024, 0.412189, 0.947525, 0.661833, 0.902597, 0.31522, 0.132675, 0.154595, 0.274591, 0.499663, 0.993421, 0.923582, 0.443526, 0.925272, 0.869103, 0.353508, 0.389103, 0.0583933, 0.426538, 0.700325, 0.290663, 0.778628, 0.587522, 0.252839, 0.230107, 0.730163, 0.829537, 0.207341, 0.445899, 0.875232, 0.318014, 0.74751, 0.975023, 0.014299, 0.17128, 0.457809, 0.14812, 0.0197848, 0.118775, 0.230753, 0.997848, 0.45795, 0.449937, 0.0894907, 0.547274, 0.948523, 0.630865, 0.624967, 0.498096, 0.501158, 0.211525, 0.286669, 0.0116561, 0.161249, 0.399316, 0.124989, 0.646028, 0.770584, 0.793763, 0.762284, 0.445668, 0.857498, 0.625118, 0.666783, 0.113078, 0.0596466, 0.185806, 0.591636, 0.635886, 0.450358, 0.587621, 0.5527, 0.747684, 0.248808, 0.667088, 0.383176, 0.358038, 0.790323, 0.9834, 0.668535, 0.869853, 0.933976, 0.787124, 0.811976, 0.515406, 0.937923, 0.879118, 0.755636, 0.8476, 0.0172126, 0.403315, 0.655652, 0.920229, 0.710497, 0.614395, 0.00722982, 0.430953, 0.345282, 0.103916, 0.355235, 0.904136, 0.79404, 0.0106131, 0.494148, 0.991351, 0.0350799, 0.630222, 0.000749717, 0.979426, 0.422986, 0.289786, 0.330692, 0.0552139, 0.0369849, 0.777986, 0.946767, 0.72669, 0.183823, 0.823817, 0.56029, 0.849984, 0.668362, 0.736155, 0.222733, 0.178803, 0.0433033, 0.0545745, 0.355848, 0.829792, 0.0321856, 0.900058, 0.565675, 0.264814, 0.565534, 0.967712, 0.903356, 0.598438, 0.281995, 0.721174, 0.912927, 0.309744, 0.555706, 0.939278, 0.397977, 0.882638, 0.406464, 0.101314, 0.310882, 0.69791, 0.61566, 0.770006, 0.534857, 0.264891, 0.275198, 0.285514, 0.387835, 0.915057, 0.307186, 0.99959, 0.929944, 0.518083, 0.406515, 0.511193, 0.111044, 0.490271, 0.984333, 0.322023, 0.525149, 0.574954, 0.377631, 0.980368, 0.482464, 0.376603, 0.918488, 0.47039, 0.198118, 0.966154, 0.975313, 0.0497318, 0.574031, 0.101026, 0.593685, 0.285728, 0.555814, 0.0161684, 0.465769, 0.392347, 0.268933, 0.219111, 0.0614982, 0.681534, 0.453335, 0.219628, 0.00521107, 0.531894, 0.0103605, 0.0160745, 0.706182, 0.105306, 0.639396, 0.913112, 0.169314, 0.46118, 0.530876, 0.530852, 0.144749, 0.061771, 0.345383, 0.793049, 0.930435, 0.0387522, 0.870827, 0.99605, 0.86432, 0.186146, 0.516547, 0.259903, 0.0542989, 0.354779, 0.633639, 0.369478, 0.883022, 0.831576, 0.503522, 0.259566, 0.10825, 0.720064, 0.0503783, 0.355704, 0.654066, 0.135843, 0.904345, 0.732615, 0.418578, 0.707522, 0.523412, 0.427052, 0.266195, 0.0485478, 0.151569, 0.234289, 0.86771, 0.691468, 0.976096, 0.322316, 0.474722, 0.930385, 0.247036, 0.0111069, 0.695143, 0.501857, 0.3928, 0.494987, 0.725543, 0.603904, 0.349952, 0.370164, 0.214488, 0.871452, 0.520086, 0.801125, 0.222537, 0.75987, 0.839324, 0.776784, 0.725548, 0.745395, 0.0295877, 0.150169, 0.111521, 0.291749, 0.86594, 0.667406, 0.624777, 0.519074, 0.0645655, 0.573982, 0.343976, 0.238698, 0.329343, 0.499002, 0.691519, 0.679615, 0.0686207, 0.444707, 0.650487, 0.862795, 0.501802, 0.165066, 0.791704, 0.15477, 0.794657, 0.705931, 0.0741224, 0.37554, 0.58899, 0.510674, 0.675896, 0.242068, 0.26872, 0.906989, 0.868277, 0.418305, 0.0849626, 0.843582, 0.185997, 0.0494805, 0.602731, 0.7365, 0.923882, 0.750356, 0.40581, 0.112037, 0.651375, 0.612261, 0.717376, 0.0812118, 0.275665, 0.476249, 0.473285, 0.739432, 0.143818, 0.183861, 0.532398, 0.41748, 0.921911, 0.788728, 0.779641, 0.807648, 0.246671, 0.0510445, 0.0254668, 0.156033, 0.932309, 0.763114, 0.254263, 0.457501, 0.461505, 0.440129, 0.344309, 0.995591, 0.760076, 0.730269, 0.986784, 0.73832, 0.87352, 0.537939, 0.0494327, 0.0392552, 0.0630789, 0.454545, 0.722735, 0.484011, 0.901769, 0.00145949, 0.545437, 0.466967, 0.412684, 0.327767, 0.433916, 0.368346, 0.782479, 0.392597, 0.742118, 0.611192, 0.622068, 0.186453, 0.279677, 0.221972, 0.379552, 0.888944, 0.304705, 0.497728, 0.318121, 0.92822, 0.693819, 0.434451, 0.0217611, 0.800265, 0.892447, 0.522391, 0.152433, 0.180016, 0.474903, 0.0238855, 0.588777, 0.583758, 0.317013, 0.499803, 0.340935, 0.545624, 0.828265, 0.901466, 0.717656, 0.929255, 0.08775, 0.234531, 0.44157, 0.739418, 0.686425, 0.589344, 0.1422, 0.474432, 0.632737, 0.715697, 0.0770064, 0.784035, 0.141011, 0.933972, 0.856698, 0.839336, 0.98125, 0.513388, 0.668878, 0.133803, 0.890941, 0.628038, 0.603997, 0.704268, 0.036449, 0.310906, 0.352725, 0.428873, 0.43815, 0.562343, 0.564143, 0.635723, 0.336465, 0.800038, 0.475138, 0.506607, 0.398739, 0.276327, 0.664221, 0.029289, 0.717647, 0.580891, 0.396879, 0.477323, 0.285387, 0.630561, 0.922368, 0.459898, 0.792469, 0.552005, 0.298405, 0.0882608, 0.741296, 0.351056, 0.632286, 0.0179663, 0.427562, 0.74226, 0.00450135, 0.400636, 0.25329, 0.663112, 0.20838, 0.935161, 0.228668, 0.989608, 0.182795, 0.763212, 0.931301, 0.0463401, 0.845698, 0.426351, 0.223439, 0.397415, 0.902058, 0.408063, 0.819568, 0.695039, 0.640855, 0.482843, 0.107455, 0.677767, 0.196258, 0.231481, 0.812896, 0.206368, 0.126421, 0.524307, 0.587915, 0.0986925, 0.59961, 0.606076, 0.880473, 0.0577288, 0.13447, 0.947586, 0.0571611, 0.213013, 0.489456, 0.435708, 0.969083, 0.942995, 0.681764, 0.896178, 0.300682, 0.832375, 0.5195, 0.333091, 0.0556431, 0.469664, 0.7462, 0.0570697, 0.204859, 0.0263461, 0.494899, 0.244498, 0.171041, 0.693177, 0.122295, 0.354362, 0.715442, 0.73101, 0.115082, 0.102726, 0.0862697, 0.436487, 0.562216, 0.453726, 0.569051, 0.646143, 0.106447, 0.940343, 0.491902, 0.180173, 0.471478, 0.246272, 0.75232, 0.6348, 0.0633012, 0.493141, 0.709767, 0.224286, 0.647168, 0.682731, 0.212962, 0.893845, 0.688404, 0.476236, 0.260774, 0.200194, 0.318474, 0.197934, 0.573814, 0.92719, 0.714944, 0.677063, 0.708418, 0.48033, 0.504772, 0.682564, 0.92862, 0.69065, 0.101651, 0.0757732, 0.00122868, 0.871525, 0.630305, 0.0794149, 0.633552, 0.015418, 0.737001, 0.0723624, 0.839766, 0.657991, 0.0813443, 0.407034, 0.0593015, 0.0496819, 0.460121, 0.404443, 0.355606, 0.424626, 0.959821, 0.0930389, 0.41632, 0.885564, 0.974195, 0.072074, 0.97165, 0.0287434, 0.580037, 0.951944, 0.886314, 0.557303, 0.137478, 0.91437, 0.293779, 0.313597, 0.762046, 0.34298, 0.947834, 0.05537, 0.348866, 0.0220232, 0.0761242, 0.483674, 0.543624, 0.660201, 0.0495366, 0.302063, 0.685885, 0.560935, 0.816931, 0.215362, 0.735803, 0.484398, 0.880909, 0.298182, 0.128468, 0.354139, 0.0527205, 0.9533, 0.465524, 0.395123, 0.707392, 0.863054, 0.769466, 0.0349387, 0.734949, 0.349819, 0.0670821, 0.553813, 0.415804, 0.118037, 0.451046, 0.464906, 0.374042, 0.489618, 0.313256, 0.502164, 0.748751, 0.0353211, 0.603173, 0.780302, 0.784802, 0.103803, 0.664729, 0.514665, 0.733879, 0.485716, 0.247943, 0.220476, 0.68938, 0.622017, 0.532858, 0.552822, 0.483941, 0.0735217, 0.395001, 0.0156244, 0.874974, 0.455845, 0.40001, 0.525399, 0.472578, 0.829458, 0.339706, 0.0085181, 0.569525, 0.941497, 0.443829, 0.801316, 0.184509, 0.487628, 0.891121, 0.00554423, 0.601123, 0.993802, 0.328686, 0.417133, 0.75797, 0.41597, 0.682396, 0.654455, 0.348509, 0.0974186, 0.508677, 0.434163, 0.848895, 0.700171, 0.430938, 0.495374, 0.870377, 0.136626, 0.0252389, 0.385227, 0.0386377, 0.918474, 0.975657, 0.0885951, 0.342444, 0.635184, 0.894417, 0.788663, 0.0108794, 0.899092, 0.42093, 0.854927, 0.216658, 0.66055, 0.928396, 0.0311457, 0.95406, 0.78459, 0.52698, 0.954647, 0.0553724, 0.112884, 0.199379, 0.575085, 0.952266, 0.252752, 0.531791, 0.127426, 0.829004, 0.773397, 0.524273, 0.709102, 0.536364, 0.647877, 0.833191, 0.17091, 0.273609, 0.623056, 0.573185, 0.21786, 0.378892, 0.939695, 0.037874, 0.830446, 0.571572, 0.65958, 0.607392, 0.632481, 0.121963, 0.517775, 0.620987, 0.345017, 0.769316, 0.257625, 0.0339667, 0.580798, 0.0237706, 0.127731, 0.555469, 0.0487686, 0.207704, 0.339207, 0.895657, 0.700992, 0.151549, 0.134486, 0.928575, 0.0443563, 0.709693, 0.981987, 0.450482, 0.488103, 0.913204, 0.369439, 0.484755, 0.612307, 0.309857, 0.473988, 0.835232, 0.100386, 0.551637, 0.577682, 0.397991, 0.841518, 0.532709, 0.141247, 0.409456, 0.786516, 0.826065, 0.64496, 0.536202, 0.344456, 0.277559, 0.830111, 0.390734, 0.450151, 0.0218602, 0.990687, 0.189214, 0.336835, 0.578587, 0.739667, 0.46232, 0.986131, 0.312953, 0.137354, 0.831438, 0.359346, 0.147321, 0.372741, 0.620005, 0.81637, 0.223003, 0.947173, 0.27233, 0.91975, 0.518553, 0.38585, 0.563678, 0.846023, 0.529032, 0.738313, 0.815021, 0.484458, 0.576681, 0.0926511, 0.0255715, 0.0670623, 0.780394, 0.0825894, 0.631561, 0.338682, 0.124318, 0.871413, 0.321059, 0.165747, 0.97701, 0.0734802, 0.189865, 0.104041, 0.893658, 0.457512, 0.436778, 0.88349, 0.821133, 0.372976, 0.19636, 0.650987, 0.508544, 0.146217, 0.314452, 0.302964, 0.869022, 0.69999, 0.384766, 0.656917, 0.0622906, 0.783322, 0.549016, 0.48294, 0.853204, 0.984512, 0.0309319, 0.845943, 0.438341, 0.737687, 0.282315, 0.431338, 0.601569, 0.889015, 0.289548, 0.43581, 0.100949, 0.000932943, 0.309186, 0.429961, 0.474935, 0.9183, 0.258138, 0.84934, 0.880087, 0.552398, 0.141286, 0.283584, 0.931196, 0.37491, 0.200074, 0.0740094, 0.848848, 0.704655, 0.414608, 0.152468, 0.907735, 0.772761, 0.0360872, 0.180056, 0.197521, 0.409589, 0.319259, 0.66497, 0.116785, 0.717584, 0.535645, 0.159959, 0.692151, 0.376607, 0.314093, 0.334771, 0.957417, 0.964038, 0.922174, 0.747482, 0.255195, 0.973346, 0.354712, 0.815583, 0.254272, 0.252127, 0.592754, 0.312424, 0.204188, 0.206599, 0.191229, 0.771721, 0.16871, 0.514607, 0.944417, 0.11727, 0.996607, 0.910027, 0.855123, 0.422208, 0.0914395, 0.753779, 0.39944, 0.822808, 0.864212, 0.541907, 0.0831886, 0.42194, 0.32566, 0.0259759, 0.843884, 0.328822, 0.290296, 0.842189, 0.00545835, 0.377651, 0.754198, 0.432982, 0.211467, 0.507297, 0.322964, 0.944953, 0.67269, 0.908696, 0.823821, 0.754947, 0.954246, 0.117408, 0.817159, 0.0698135, 0.895377, 0.818969, 0.470528, 0.571387, 0.947834, 0.595896, 0.487859, 0.0287326, 0.720533, 0.877903, 0.702942, 0.841893, 0.79942, 0.11582, 0.182782, 0.762298, 0.539455, 0.647334, 0.553466, 0.614602, 0.29902, 0.200425, 0.774054, 0.680762, 0.0497778, 0.227848, 0.589457, 0.764415, 0.738369, 0.823087, 0.0782207, 0.0477335, 0.664587, 0.962675, 0.666643, 0.392024, 0.985393, 0.43173, 0.951072, 0.317355, 0.636815, 0.982784, 0.199483, 0.100302, 0.0983773, 0.743348, 0.447584, 0.326214, 0.188603, 0.234952, 0.0836973, 0.193172, 0.339608, 0.0171846, 0.140456, 0.408248, 0.731662, 0.550608, 0.761596, 0.620372, 0.762473, 0.342705, 0.0431834, 0.879889, 0.949776, 0.0174416, 0.0430366, 0.689595, 0.862824, 0.897548, 0.571938, 0.221444, 0.0842679, 0.929114, 0.348507, 0.0102636, 0.221872, 0.998716, 0.354849, 0.0494321, 0.615513, 0.606909, 0.701758, 0.0548691, 0.917509, 0.813837, 0.891332, 0.454314, 0.512912, 0.115186, 0.321759, 0.0608864, 0.587886, 0.0310354, 0.131396, 0.810433, 0.325341, 0.795835, 0.559347, 0.532573, 0.649707, 0.667578, 0.474935, 0.492523, 0.474219, 0.719782, 0.719336, 0.166523, 0.0935351, 0.0290707, 0.627281, 0.120119, 0.337353, 0.833613, 0.529305, 0.160354, 0.192708, 0.517011, 0.393018, 0.266867, 0.67993, 0.2966, 0.0675627, 0.049884, 0.802648, 0.721408, 0.300104, 0.224207, 0.355234, 0.369416, 0.666041, 0.778924, 0.678344, 0.244476, 0.51117, 0.769703, 0.194689, 0.750743, 0.496835, 0.947952, 0.792589, 0.571899, 0.934115, 0.239655, 0.992504, 0.0846078, 0.618461, 0.649232, 0.295413, 0.94919, 0.274345, 0.509407, 0.271909, 0.000930362, 0.158036, 0.900723, 0.212063, 0.96839, 0.374585, 0.469782, 0.531897, 0.690381, 0.468584, 0.0359002, 0.261997, 0.899164, 0.13039, 0.6485, 0.378338, 0.221372, 0.575356, 0.600011, 0.333292, 0.472703, 0.744745, 0.292519, 0.902518, 0.736262, 0.39382, 0.193482, 0.218638, 0.37395, 0.455858, 0.112487, 0.750094, 0.714776, 0.528615, 0.715634, 0.307591, 0.507527, 0.270608, 0.783474, 0.503542, 0.188904, 0.256813, 0.367277, 0.0523162, 0.94068, 0.921846, 0.777667, 0.411176, 0.0133664, 0.206929, 0.893635, 0.624345, 0.776478, 0.649293, 0.505523, 0.296455, 0.183283, 0.13781, 0.639469, 0.903623, 0.731678, 0.320149, 0.627007, 0.936021, 0.864199, 0.517562, 0.286761, 0.17914, 0.0648794, 0.0978378, 0.500528, 0.712065, 0.171874, 0.561778, 0.630316, 0.337516, 0.998464, 0.808983, 0.350591, 0.628368, 0.912493, 0.871607, 0.849695, 0.422593, 0.658803, 0.83347, 0.447237, 0.798792, 0.294156, 0.105724, 0.0741703, 0.944466, 0.746695, 0.57705, 0.454319, 0.537558, 0.978656, 0.275082, 0.865394, 0.42905, 0.321618, 0.619303, 0.719888, 0.20614, 0.590662, 0.335587, 0.571819, 0.14077, 0.512955, 0.688468, 0.753296, 0.430348, 0.228874, 0.880236, 0.563226, 0.400975, 0.135245, 0.608373, 0.542516, 0.876987, 0.470293, 0.307949, 0.598335, 0.24133, 0.726464, 0.953135, 0.100928, 0.434708, 0.186309, 0.0502947, 0.38873, 0.837416, 0.947704, 0.691398, 0.0461486, 0.995426, 0.659582, 0.455137, 0.719528, 0.433284, 0.447412, 0.815005, 0.801782, 0.20814, 0.363933, 0.807072, 0.366598, 0.881259, 0.36765, 0.170048, 0.700181, 0.190792, 0.422015, 0.371692, 0.804004, 0.877961, 0.700853, 0.824119, 0.972574, 0.759579, 0.421504, 0.515063, 0.218148, 0.0687566, 0.304502, 0.897699, 0.928322, 0.797918, 0.863318, 0.360217, 0.762498, 0.992061, 0.472135, 0.166534, 0.581114, 0.66621, 0.195785, 0.0437133, 0.24186, 0.567203, 0.984934, 0.258978, 0.957256, 0.844922, 0.713605, 0.0541155, 0.887392, 0.0579775, 0.341528, 0.00656558, 0.412303, 0.0148872, 0.462868, 0.337523, 0.939532, 0.507882, 0.187285, 0.139041, 0.729862, 0.350465, 0.267288, 0.831128, 0.341595, 0.234875, 0.526828, 0.0478633, 0.297971, 0.444694, 0.0888507, 0.788782, 0.0197432, 0.879393, 0.0294991, 0.841766, 0.489023, 0.503464, 0.47285, 0.545518, 0.934726, 0.0409531, 0.421955, 0.501159, 0.273089, 0.581311, 0.74753, 0.302673, 0.294014, 0.301206, 0.22304, 0.735983, 0.567154, 0.774057, 0.0655665, 0.766488, 0.798884, 0.90914, 0.403654, 0.440633, 0.793028, 0.992759, 0.624937, 0.564271, 0.578377, 0.53693, 0.28699, 0.710963, 0.0154664, 0.361751, 0.447944, 0.376651, 0.976943, 0.197851, 0.547489, 0.227106, 0.456446, 0.742688, 0.989491, 0.368837, 0.0729938, 0.145014, 0.451494, 0.862849, 0.483792, 0.145617, 0.259996, 0.290529, 0.0574864, 0.315212, 0.256489, 0.250316, 0.41138, 0.882464, 0.746337, 0.812296, 0.463426, 0.31247, 0.913875, 0.204899, 0.197659, 0.624119, 0.145738, 0.828249, 0.173153, 0.821114, 0.224993, 0.880486, 0.393319, 0.5228, 0.324117, 0.970565, 0.822643, 0.711942, 0.265506, 0.962097, 0.0305713, 0.93128, 0.715791, 0.305274, 0.980283, 0.385826, 0.250016, 0.794107, 0.214281, 0.7842, 0.159098, 0.168762, 0.557931, 0.259428, 0.105516, 0.0894675, 0.069389, 0.453177, 0.831908, 0.126979, 0.827831, 0.302858, 0.123757, 0.87119, 0.925624, 0.530038, 0.571532, 0.39731, 0.345498, 0.689683, 0.182037, 0.91741, 0.545841, 0.312773, 0.309144, 0.0123853, 0.980819, 0.350091, 0.0961307, 0.0646169, 0.0719253, 0.947185, 0.887502, 0.506696, 0.372855, 0.245585, 0.219438, 0.444893, 0.271645, 0.654493, 0.915768, 0.386677, 0.311144, 0.735514, 0.275864, 0.900572, 0.574876, 0.377688, 0.92217, 0.704141, 0.501957, 0.144012, 0.490947, 0.283826, 0.778355, 0.328462, 0.478082, 0.486394, 0.932712, 0.536281, 0.644762, 0.157485, 0.700024, 0.816247, 0.883428, 0.477485, 0.0263772, 0.416996, 0.145468, 0.0296548, 0.289283, 0.283224, 0.128746, 0.966503, 0.526181, 0.764314, 0.606014, 0.56261, 0.316953, 0.402768, 0.459073, 0.973306, 0.294563, 0.837289, 0.466905, 0.0921972, 0.083203, 0.323473, 0.190788, 0.892925, 0.179937, 0.813307, 0.922673, 0.503515, 0.0126516, 0.413086, 0.278325, 0.47703, 0.939909, 0.492061, 0.395506, 0.790437, 0.989499, 0.801666, 0.741973, 0.256637, 0.16019, 0.368278, 0.955072, 0.263978, 0.588447, 0.787951, 0.0155537, 0.415966, 0.672965, 0.96584, 0.870968, 0.857937, 0.137439, 0.35347, 0.378724, 0.964373, 0.768734, 0.440575, 0.0405468, 0.767168, 0.551087, 0.638026, 0.632401, 0.130231, 0.722439, 0.201121, 0.990679, 0.241409, 0.405717, 0.0887516, 0.433311, 0.325229, 0.338765, 0.313306, 0.819185, 0.281072, 0.569576, 0.539048, 0.475869, 0.309965, 0.294609, 0.986804, 0.356367, 0.531965, 0.323966, 0.982108, 0.922606, 0.78987, 0.184678, 0.919313, 0.66172, 0.78001, 0.538111, 0.504061, 0.551569, 0.197561, 0.172693, 0.0875003, 0.504177, 0.536836, 0.494697, 0.273618, 0.909722, 0.328595, 0.520832, 0.490617, 0.12315, 0.68816, 0.315788, 0.722511, 0.162925, 0.490397, 0.457867, 0.0508113, 0.988206, 0.288068, 0.0844054, 0.229343, 0.288736, 0.274956, 0.162419, 0.567865, 0.0658495, 0.922953, 0.888595, 0.891891, 0.422081, 0.894278, 0.636198, 0.669447, 0.507817, 0.695411, 0.419091, 0.50959, 0.858347, 0.365119, 0.351961, 0.927468, 0.898844, 0.702686, 0.613672, 0.388132, 0.662109, 0.776763, 0.608112, 0.255512, 0.449684, 0.901849, 0.734983, 0.184068, 0.606383, 0.807874, 0.114904, 0.369849, 0.631545, 0.0902525, 0.35459, 0.629446, 0.755188, 0.00710723, 0.283259, 0.213081, 0.841356, 0.574098, 0.479044, 0.827427, 0.127553, 0.418677, 0.584996, 0.181074, 0.173117, 0.534258, 0.452522, 0.323254, 0.199639, 0.19934, 0.477959, 0.516973, 0.300863, 0.33596, 0.614113, 0.0463051, 0.806675, 0.716888, 0.560459, 0.78294, 0.588177, 0.108478, 0.871551, 0.122526, 0.879612, 0.323951, 0.964344, 0.272828, 0.599901, 0.780299, 0.878432, 0.827981, 0.862602, 0.238203, 0.995725, 0.807474, 0.859691, 0.745089, 0.427182, 0.584508, 0.815208, 0.0209309, 0.977772, 0.11708, 0.51597, 0.198436, 0.600696, 0.178902, 0.528177, 0.113928, 0.959053, 0.377403, 0.206195, 0.678897, 0.298803, 0.602845, 0.779048, 0.61736, 0.0538978, 0.922456, 0.251961, 0.344247, 0.0469277, 0.0997539, 0.134385, 0.433126, 0.917378, 0.501004, 0.432078, 0.609415, 0.399673, 0.840714, 0.648393, 0.975679, 0.488398, 0.707056, 0.917814, 0.241519, 0.151391, 0.217867, 0.455515, 0.736847, 0.276058, 0.429626, 0.458444, 0.809978, 0.3343, 0.212938, 0.391852, 0.982906, 0.188652, 0.94218, 0.573306, 0.858379, 0.646604, 0.996944, 0.8909, 0.284794, 0.27596, 0.900314, 0.264372, 0.403445, 0.460954, 0.367555, 0.513943, 0.756927, 0.901388, 0.744883, 0.419572, 0.0291924, 0.388149, 0.311144, 0.758906, 0.494793, 0.800513, 0.823058, 0.21676, 0.315118, 0.132913, 0.615567, 0.366563, 0.253824, 0.908813, 0.37287, 0.562833, 0.603878, 0.182627, 0.181748, 0.626329, 0.72973, 0.755745, 0.934465, 0.771756, 0.74092, 0.764703, 0.847717, 0.380055, 0.956026, 0.554559, 0.153008, 0.817651, 0.351589, 0.858646, 0.356547, 0.591945, 0.481525, 0.566407, 0.075726, 0.804183, 0.738637, 0.0518405, 0.615393, 0.18159, 0.705874, 0.270865, 0.214856, 0.715119, 0.421676, 0.312135, 0.0893758, 0.830401, 0.0118446, 0.790957, 0.000994886, 0.772949, 0.830426, 0.872599, 0.262893, 0.611248, 0.327013, 0.209951, 0.0868283, 0.657425, 0.586466, 0.42304, 0.311497, 0.00599936, 0.0047943, 0.314901, 0.459674, 0.832237, 0.593066, 0.533902, 0.986659, 0.532806, 0.334881, 0.331746, 0.682138, 0.403476, 0.157666, 0.0933196, 0.687572, 0.864067, 0.623627, 0.436928, 0.634422, 0.315886, 0.776535, 0.28992, 0.486322, 0.633281, 0.680106, 0.413941, 0.74878, 0.0557304, 0.746276, 0.253372, 0.677609, 0.03761, 0.841179, 0.462366, 0.140944, 0.666033, 0.444185, 0.896211, 0.745836, 0.837855, 0.781673, 0.992182, 0.759924, 0.149578, 0.801817, 0.23307, 0.983902, 0.279981, 0.436416, 0.408519, 0.977166, 0.486979, 0.616462, 0.717189, 0.78756, 0.979531, 0.211748, 0.281095, 0.808292, 0.452116, 0.505222, 0.211008, 0.0880939, 0.304145, 0.157218, 0.823591, 0.881477, 0.63282, 0.43668, 0.0421872, 0.92511, 0.208938, 0.595937, 0.319492, 0.386474, 0.912154, 0.86807, 0.973331, 0.576398, 0.423191, 0.191564, 0.271486, 0.166704, 0.59387, 0.846881, 0.603252, 0.726757, 0.283076, 0.252814, 0.0950604, 0.533592, 0.609895, 0.911565, 0.402955, 0.519665, 0.719536, 0.779983, 0.58922, 0.50628, 0.0937121, 0.535797, 0.385731, 0.117425, 0.265472, 0.237342, 0.166879, 0.377402, 0.387306, 0.370544, 0.680795, 0.182085, 0.472747, 0.681323, 0.799128, 0.401971, 0.824955, 0.541769, 0.0634075, 0.357216, 0.564308, 0.106465, 0.112271, 0.227668, 0.363854, 0.323736, 0.175635, 0.855609, 0.122859, 0.634043, 0.00744051, 0.443882, 0.918507, 0.910142, 0.482702, 0.0487369, 0.22982, 0.119722, 0.630875, 0.775613, 0.127926, 0.825253, 0.20214, 0.366558, 0.231207, 0.489712, 0.782439, 0.783108, 0.635982, 0.684556, 0.444892, 0.740059, 0.74257, 0.556034, 0.020627, 0.169975, 0.318743, 0.987251, 0.848496, 0.961086, 0.313144, 0.469643, 0.280877, 0.444973, 0.565544, 0.674149, 0.966, 0.840922, 0.624866, 0.898954, 0.360874, 0.333776, 0.416233, 0.964037, 0.995817, 0.8895, 0.101838, 0.213644, 0.672951, 0.367858, 0.473691, 0.849456, 0.0204076, 0.9011, 0.0515015, 0.311752, 0.42627, 0.612015, 0.03455, 0.36429, 0.809447, 0.0841483, 0.902302, 0.1439, 0.358429, 0.79011, 0.884318, 0.176961, 0.267724, 0.227391, 0.41377, 0.630351, 0.503522, 0.886437, 0.611218, 0.315786, 0.656199, 0.718377, 0.569848, 0.202811, 0.937216, 0.353074, 0.51868, 0.190367, 0.697473, 0.0124044, 0.554073, 0.251852, 0.839427, 0.0618167, 0.656978, 0.105702, 0.128592, 0.660755, 0.49681, 0.438251, 0.22643, 0.773987, 0.892038, 0.268779, 0.827232, 0.80203, 0.558867, 0.801823, 0.779758, 0.24148, 0.979899, 0.044897, 0.387513, 0.148037, 0.971127, 0.25907, 0.701731, 0.702838, 0.841079, 0.471461, 0.00816618, 0.763383, 0.845966, 0.390235, 0.479232, 0.272554, 0.428787, 0.630907, 0.144826, 0.795675, 0.885258, 0.877329, 0.260514, 0.88605, 0.251618, 0.0982398, 0.240143, 0.336942, 0.497409, 0.328716, 0.559073, 0.710497, 0.407214, 0.140225, 0.568899, 0.305758, 0.985192, 0.353355, 0.451623, 0.806361, 0.552935, 0.137101, 0.39632, 0.807873, 0.730659, 0.83679, 0.474723, 0.902925, 0.181643, 0.519008, 0.495691, 0.0574197, 0.399138, 0.376197, 0.728309, 0.563635, 0.429087, 0.900816, 0.738019, 0.664776, 0.472119, 0.866737, 0.672326, 0.820026, 0.55473, 0.543396, 0.430427, 0.0390094, 0.14597, 0.763778, 0.925085, 0.182753, 0.927547, 0.38596, 0.0845172, 0.686091, 0.470664, 0.633901, 0.379529, 0.808742, 0.677396, 0.660347, 0.824392, 0.138273, 0.913349, 0.282948, 0.182555, 0.195728, 0.0569882, 0.0180547, 0.285175, 0.141473, 0.891612, 0.916347, 0.170171, 0.0141192, 0.0746619, 0.848639, 0.88324, 0.224257, 0.398841, 0.446264, 0.367285, 0.394011, 0.593844, 0.421785, 0.0978993, 0.748422, 0.546064, 0.0749291, 0.679814, 0.773036, 0.190595, 0.9074, 0.132129, 0.589965, 0.310527, 0.312563, 0.496822, 0.0182632, 0.421471, 0.246528, 0.111739, 0.146622, 0.0458184, 0.499015, 0.370329, 0.38683, 0.239333, 0.81416, 0.292132, 0.932061, 0.155805, 0.0530965, 0.412611, 0.177749, 0.0743324, 0.679697, 0.990631, 0.772683, 0.658341, 0.633155, 0.595962, 0.101049, 0.0893765, 0.652252, 0.828871, 0.292416, 0.812544, 0.338977, 0.574637, 0.662387, 0.150282, 0.445916, 0.982466, 0.403631, 0.237927, 0.605144, 0.178157, 0.139473, 0.409146, 0.032356, 0.623801, 0.892386, 0.686936, 0.208553, 0.0746324, 0.429076, 0.804958, 0.551032, 0.0414786, 0.268112, 0.282896, 0.191952, 0.631162, 0.338374, 0.294875, 0.113726, 0.861872, 0.441595, 0.214191, 0.66156, 0.0493908, 0.373903, 0.351066, 0.754358, 0.203796, 0.232518, 0.936212, 0.894607, 0.733782, 0.499273, 0.352905, 0.785701, 0.269482, 0.964939, 0.0445552, 0.191663, 0.380432, 0.263502, 0.460111, 0.250836, 0.164842, 0.517637, 0.740929, 0.566001, 0.228714, 0.678602, 0.0194022, 0.737847, 0.959707, 0.463411, 0.945044, 0.68689, 0.833525, 0.149539, 0.47417, 0.681319, 0.351924, 0.58604, 0.693724, 0.549001, 0.267608, 0.17901, 0.308286, 0.317175, 0.303205, 0.276014, 0.180304, 0.111004, 0.313073, 0.119443, 0.966616, 0.503921, 0.516759, 0.928561, 0.0495854, 0.797306, 0.00506445, 0.953303, 0.680102, 0.609641, 0.4532, 0.604242, 0.592065, 0.555589, 0.885786, 0.379935, 0.840548, 0.747545, 0.713203, 0.0289334, 0.825641, 0.00517996, 0.31366, 0.102872, 0.00632973, 0.0294658, 0.937041, 0.744933, 0.429079, 0.2378, 0.532026, 0.395294, 0.887661, 0.17933, 0.440347, 0.296402, 0.00236916, 0.209272, 0.5654, 0.834848, 0.460221, 0.0318093, 0.123416, 0.671155, 0.508426, 0.638721, 0.279426, 0.977275, 7.68745e-05, 0.955426, 0.765669, 0.835244, 0.374852, 0.3037, 0.182404, 0.563928, 0.206628, 0.845717, 0.0740084, 0.534655, 0.948065, 0.860815, 0.727566, 0.592863, 0.611181, 0.51679, 0.878952, 0.225228, 0.506738, 0.912728, 0.750646, 0.352038, 0.663531, 0.717603, 0.263244, 0.312346, 0.900763, 0.3021, 0.710917, 0.801194, 0.275892, 0.135634, 0.013046, 0.143271, 0.706457, 0.4556, 0.880494, 0.323518, 0.914485, 0.948586, 0.837672, 0.268554, 0.492549, 0.835405, 0.424024, 0.251007, 0.670121, 0.894743, 0.936056, 0.878409, 0.516729, 0.980338, 0.858777, 0.515476, 0.806565, 0.459549, 0.673979, 0.0373015, 0.225456, 0.448623, 0.742773, 0.30995, 0.730075, 0.645957, 0.416948, 0.252095, 0.0891325, 0.269174, 0.277805, 0.0260466, 0.438988, 0.912189, 0.273474, 0.296135, 0.0327403, 0.410277, 0.885817, 0.672258, 0.957767, 0.0637427, 0.705864, 0.750885, 0.532208, 0.500071, 0.989295, 0.198371, 0.155448, 0.893755, 0.55062, 0.787393, 0.673014, 0.700156, 0.785568, 0.849068, 0.471647, 0.929353, 0.830086, 0.164187, 0.95872, 0.707694, 0.254694, 0.516321, 0.198168, 0.652784, 0.554721, 0.600844, 0.00513052, 0.777388, 0.267702, 0.554596, 0.966946, 0.982968, 0.91765, 0.572923, 0.505429, 0.544413, 0.920607, 0.277406, 0.358607, 0.644469, 0.802135, 0.417853, 0.0748436, 0.0656076, 0.667222, 0.00809094, 0.511886, 0.062951, 0.140421, 0.786651, 0.275054, 0.718954, 0.307897, 0.899251, 0.940873, 0.635788, 0.966653, 0.308592, 0.0912164, 0.996029, 0.440294, 0.025451, 0.57036, 0.0815001, 0.785151, 0.673662, 0.555222, 0.72086, 0.635426, 0.916495, 0.53304, 0.37754, 0.745192, 0.892548, 0.440584, 0.0808152, 0.658269, 0.417595, 0.821983, 0.454843, 0.510409, 0.443047, 0.455659, 0.0762574, 0.68442, 0.764375, 0.118305, 0.117737, 0.109274, 0.830061, 0.622865, 0.621019, 0.363026, 0.437709, 0.0458459, 0.748531, 0.896462, 0.0851837, 0.422135, 0.109305, 0.805803, 0.888655, 0.294698, 0.511156, 0.580689, 0.254876, 0.877237, 0.965993, 0.958119, 0.0194436, 0.340496, 0.74835, 0.988802, 0.571348, 0.766744, 0.511712, 0.408168, 0.162194, 0.877615, 0.343821, 0.702854, 0.795688, 0.0172876, 0.252809, 0.818424, 0.649099, 0.112949, 0.435633, 0.606987, 0.929316, 0.253601, 0.429676, 0.0881306, 0.712534, 0.337336, 0.693027, 0.22348, 0.347465, 0.360248, 0.0609941, 0.807739, 0.891838, 0.871452, 0.965494, 0.414782, 0.107206, 0.514451, 0.571409, 0.849897, 0.949761, 0.438625, 0.972175, 0.519867, 0.176188, 0.42903, 0.706912, 0.799488, 0.216814, 0.192208, 0.549729, 0.959527, 0.0193243, 0.142677, 0.561262, 0.472697, 0.45902, 0.461403, 0.247776, 0.421327, 0.882689, 0.0900163, 0.484854, 0.752666, 0.878102, 0.485377, 0.102796, 0.642061, 0.561637, 0.738313, 0.502398, 0.318698, 0.652747, 0.847825, 0.709615, 0.967789, 0.437439, 0.940151, 0.788328, 0.0527278, 0.207602, 0.332577, 0.143298, 0.963026, 0.905102, 0.325186, 0.321057, 0.996634, 0.787633, 0.2473, 0.612468, 0.680492, 0.77213, 0.651793, 0.112792, 0.600331, 0.0214044, 0.392964, 0.346418, 0.211294, 0.420163, 0.517522, 0.814278, 0.454198, 0.563263, 0.266748, 0.136205, 0.502684, 0.8188, 0.400989, 0.118937, 0.0411338, 0.858195, 0.834085, 0.902483, 0.263586, 0.238561, 0.107777, 0.535858, 0.239505, 0.277898, 0.735298, 0.950311, 0.216747, 0.0549665, 0.435693, 0.56972, 0.725088, 0.476098, 0.590023, 0.791093, 0.448307, 0.144103, 0.473148, 0.0971389, 0.527271, 0.84826, 0.451409, 0.624358, 0.790694, 0.58076, 0.947789, 0.847968, 0.268656, 0.0502452, 0.427562, 0.2381, 0.37817, 0.340982, 0.990372, 0.707389, 0.881687, 0.614775, 0.459538, 0.689486, 0.257183, 0.508028, 0.951647, 0.239295, 0.510228, 0.0355115, 0.674017, 0.650262, 0.629765, 0.172136, 0.664333, 0.319067, 0.626285, 0.760027, 0.918703, 0.394823, 0.0561703, 0.685326, 0.387615, 0.3077, 0.456536, 0.716168, 0.554496, 0.922222, 0.465481, 0.422972, 0.284398, 0.316601, 0.117767, 0.664932, 0.818385, 0.0772614, 0.797809, 0.565864, 0.806523, 0.502041, 0.986052, 0.40194, 0.853426, 0.923334, 0.229677, 0.409202, 0.103052, 0.803749, 0.741309, 0.584289, 0.17029, 0.813915, 0.486107, 0.335076, 0.0723319, 0.0648056, 0.0169297, 0.276338, 0.803466, 0.941484, 0.675518, 0.25859, 0.674748, 0.145562, 0.933589, 0.74698, 0.162899, 0.987096, 0.901738, 0.234055, 0.957422, 0.636644, 0.835198, 0.548654, 0.171008, 0.328339, 0.176741, 0.108074, 0.0648382, 0.973493, 0.0507243, 0.69277, 0.860223, 0.851903, 0.526105, 0.186676, 0.485972, 0.0915541, 0.123117, 0.263321, 0.114275, 0.471546, 0.910374, 0.840445, 0.435861, 0.472122, 0.510161, 0.0544588, 0.0254585, 0.84312, 0.822587, 0.761342, 0.096239, 0.519051, 0.109043, 0.331702, 0.0499664, 0.298945, 0.481621, 0.134952, 0.952646, 0.801653, 0.890752, 0.31178, 0.91065, 0.860964, 0.260392, 0.790841, 0.939215, 0.541865, 0.288362, 0.759087, 0.278885, 0.608133, 0.50618, 0.642822, 0.170413, 0.191113, 0.536587, 0.548019, 0.7547, 0.853169, 0.374626, 0.250609, 0.478192, 0.992317, 0.921845, 0.113108, 0.90873, 0.483042, 0.296314, 0.5585, 0.101148, 0.798438, 0.76298, 0.671514, 0.836567, 0.745829, 0.979008, 0.176332, 0.504983, 0.0675006, 0.37174, 0.730015, 0.949321, 0.963235, 0.114482, 0.798551, 0.8641, 0.155542, 0.43491, 0.529986, 0.0602692, 0.965662, 0.973488, 0.12901, 0.497966, 0.974907, 0.955867, 0.212779, 0.992117, 0.852558, 0.0952857, 0.867269, 0.690625, 0.686375, 0.74081, 0.668102, 0.536224, 0.0999359, 0.285415, 0.0213675, 0.186844, 0.539411, 0.46288, 0.785401, 0.481897, 0.307431, 0.325025, 0.326074, 0.806278, 0.430591, 0.723728, 0.173602, 0.962883, 0.816989, 0.903304, 0.469133, 0.604026, 0.0321729, 0.840409, 0.24737, 0.736421, 0.48015, 0.192789, 0.951041, 0.593976, 0.151651, 0.443673, 0.34385, 0.577428, 0.140803, 0.566435, 0.11966, 0.72859, 0.368858, 0.0577975, 0.34032, 0.609083, 0.256059, 0.348514, 0.0508468, 0.00316749, 0.555017, 0.655676, 0.737948, 0.567344, 0.362025, 0.146449, 0.00129713, 0.844723, 0.916729, 0.00308606, 0.0870135, 0.877402, 0.951417, 0.221822, 0.772431, 0.643395, 0.67301, 0.116911, 0.46719, 0.0669138, 0.130404, 0.619855, 0.801693, 0.774829, 0.989154, 0.856526, 0.302431, 0.648183, 0.215863, 0.804791, 0.201173, 0.336564, 0.97062, 0.288187, 0.507616, 0.646082, 0.733398, 0.224121, 0.504736, 0.00772472, 0.78743, 0.771164, 0.559108, 0.795581, 0.367603, 0.468444, 0.585013, 0.586772, 0.653175, 0.0160145, 0.522016, 0.58587, 0.209264, 0.458205, 0.616487, 0.117648, 0.115699, 0.583878, 0.794704, 0.221679, 0.911828, 0.968042, 0.718035, 0.594693, 0.188187, 0.937082, 0.670652, 0.205657, 0.0996074, 0.0260505, 0.26999, 0.74838, 0.934845, 0.677448, 0.560191, 0.176769, 0.066693, 0.506686, 0.430665, 0.821599, 0.92822, 0.44078, 0.443573, 0.292611, 0.189979, 0.925306, 0.973656, 0.949399, 0.719787, 0.570721, 0.182352, 0.844719, 0.435064, 0.588637, 0.999896, 0.549393, 0.767109, 0.014801, 0.486565, 0.840187, 0.808312, 0.18391, 0.234522, 0.584381, 0.37433, 0.29087, 0.0704586, 0.304292, 0.319893, 0.0587912, 0.845847, 0.00314954, 0.837245, 0.462001, 0.589969, 0.482115, 0.647743, 0.787038, 0.723061, 0.326683, 0.85121, 0.355814, 0.705157, 0.989882, 0.929909, 0.542999, 0.632499, 0.842266, 0.176936, 0.29883, 0.861086, 0.189718, 0.432002, 0.175787, 0.327401, 0.838435, 0.401861, 0.0125604, 0.203791, 0.444693, 0.187772, 0.152064, 0.815757, 0.684142, 0.813747, 0.823545, 0.134347, 0.291306, 0.637104, 0.536827, 0.947242, 0.627055, 0.850737, 0.447708, 0.827583, 0.200962, 0.420909, 0.828729, 0.430872, 0.907566, 0.491373, 0.260588, 0.101679, 0.0487735, 0.818573, 0.808401, 0.597819, 0.937844, 0.554982, 0.0817186, 0.637007, 0.208433, 0.684939, 0.678865, 0.938025, 0.0468879, 0.106424, 0.279055, 0.325352, 0.835876, 0.732463, 0.956187, 0.776323, 0.52492, 0.809183, 0.256638, 0.222042, 0.612182, 0.246364, 0.751067, 0.697015, 0.557753, 0.80429, 0.892181, 0.0235493, 0.392911, 0.251057, 0.936298, 0.842089, 0.561525, 0.810932, 0.104489, 0.108559, 0.939076, 0.522494, 0.901654, 0.253191, 0.0305009, 0.000174918, 0.548136, 0.269365, 0.374307, 0.779397, 0.889697, 0.265327, 0.530964, 0.40879, 0.0999762, 0.164271, 0.867453, 0.961738, 0.292759, 0.14762, 0.237227, 0.722776, 0.680346, 0.313074, 0.823815, 0.385996, 0.0297546, 0.425466, 0.579438, 0.0663015, 0.159994, 0.438489, 0.358821, 0.21364, 0.481726, 0.483257, 0.980104, 0.953453, 0.829254, 0.82761, 0.700659, 0.625401, 0.37035, 0.904741, 0.102187, 0.223586, 0.990634, 0.419582, 0.621645, 0.27542, 0.709467, 0.517586, 0.384775, 0.061399, 0.406794, 0.0198032, 0.170385, 0.152503, 0.249718, 0.611619, 0.353437, 0.585372, 0.778843, 0.748258, 0.00522621, 0.0147192, 0.0705208, 0.442315, 0.166621, 0.0496034, 0.00780444, 0.0572878, 0.759933, 0.574716, 0.93493, 0.971876, 0.62744, 0.626682, 0.0144254, 0.224486, 0.292508, 0.16733, 0.461605, 0.539995, 0.769798, 0.580077, 0.379058, 0.0096561, 0.717079, 0.43319, 0.478359, 0.383725, 0.973667, 0.551515, 0.159994, 0.331342, 0.89847, 0.104814, 0.186139, 0.791425, 0.513075, 0.207098, 0.705184, 0.959963, 0.109553, 0.0240362, 0.525282, 0.11477, 0.90424, 0.163693, 0.303969, 0.108482, 0.122791, 0.012939, 0.342588, 0.0272011, 0.600804, 0.921436, 0.512615, 0.0500179, 0.600177, 0.618209, 0.508877, 0.460674, 0.147336, 0.926143, 0.849058, 0.106621, 0.442745, 0.854984, 0.649785, 0.680815, 0.215518, 0.54041, 0.0592017, 0.213795, 0.275691, 0.692786, 0.812412, 0.730742, 0.0430776, 0.515699, 0.0471932, 0.268972, 0.191225, 0.162789, 0.859575, 0.457822, 0.82466, 0.0802463, 0.21362, 0.347316, 0.924177, 0.535158, 0.279048, 0.0177046, 0.212148, 0.809314, 0.92635, 0.0842272, 0.0464712, 0.156035, 0.113283, 0.633604, 0.586258, 0.138507, 0.106527, 0.485321, 0.696954, 0.563075, 0.0615132, 0.500333, 0.869193, 0.760761, 0.161124, 0.925194, 0.977073, 0.178616, 0.966401, 0.328208, 0.270984, 0.367092, 0.498169, 0.338269, 0.750939, 0.543984, 0.9023, 0.543534, 0.016312, 0.502658, 0.86578, 0.298257, 0.369636, 0.664773, 0.266585, 0.36256, 0.616225, 0.180534, 0.2579, 0.762294, 0.458767, 0.493684, 0.0541348, 0.688507, 0.401433, 0.704303, 0.893807, 0.474275, 0.750621, 0.337068, 0.789275, 0.0368413, 0.90707, 0.63747, 0.311911, 0.433968, 0.797275, 0.946471, 0.392497, 0.57048, 0.324949, 0.707479, 0.473632, 0.252424, 0.882691, 0.95303, 0.145117, 0.359622, 0.323966, 0.850115, 0.657502, 0.490679, 0.117636, 0.622882, 0.952931, 0.752963, 0.748988, 0.0824225, 0.220845, 0.518163, 0.384343, 0.325047, 0.0654623, 0.224933, 0.100739, 0.712389, 0.433919, 0.946161, 0.91136, 0.54095, 0.276587, 0.712972, 0.287296, 0.636123, 0.482552, 0.969401, 0.277553, 0.88716, 0.154472, 0.186099, 0.187503, 0.888573, 0.886183, 0.852393, 0.0354023, 0.218044, 0.439132, 0.0759184, 0.970972, 0.903231, 0.0863043, 0.841808, 0.877451, 0.212733, 0.780609, 0.260082, 0.148804, 0.211385, 0.736429, 0.447931, 0.73038, 0.613024, 0.925157, 0.411162, 0.519772, 0.771778, 0.0303801, 0.336019, 0.706645, 0.320265, 0.447593, 0.616613, 0.349174, 0.309556, 0.409711, 0.700563, 0.663469, 0.665177, 0.975724, 0.262737, 0.0576114, 0.456657, 0.202072, 0.548093, 0.70414, 0.00151419, 0.591219, 0.723603, 0.580681, 0.203495, 0.00301552, 0.363667, 0.701647, 0.0898662, 0.0175085, 0.57922, 0.481037, 0.511311, 0.517898, 0.638491, 0.19532, 0.116193, 0.45704, 0.94091, 0.892934, 0.458747, 0.0299241, 0.432842, 0.0990674, 0.388252, 0.218489, 0.303574, 0.489316, 0.909617, 0.38945, 0.348984, 0.625489, 0.0481935, 0.475787, 0.239942, 0.51331, 0.0755039, 0.459515, 0.973249, 0.74645, 0.206274, 0.17815, 0.417064, 0.636705, 0.60885, 0.17796, 0.203345, 0.682714, 0.642812, 0.184734, 0.405048, 0.907048, 0.291277, 0.0844157, 0.593001, 0.153298, 0.151499, 0.993113, 0.21695, 0.0255066, 0.360015, 0.647722, 0.707693, 0.923729, 0.152495, 0.132257, 0.818965, 0.0722895, 0.943851, 0.385379, 0.921495, 0.00638984, 0.547315, 0.841284, 0.407772, 0.86433, 0.810574, 0.0753104, 0.47821, 0.595804, 0.792667, 0.724536, 0.269371, 0.194357, 0.224023, 0.763775, 0.234777, 0.725786, 0.855229, 0.759268, 0.510267, 0.588473, 0.0172854, 0.4479, 0.664336, 0.50244, 0.298565, 0.412266, 0.70789, 0.258666, 0.669177, 0.97114, 0.794049, 0.652256, 0.552754, 0.640575, 0.19356, 0.0469088, 0.774715, 0.704023, 0.810834, 0.00158777, 0.0347898, 0.526573, 0.453529, 0.335324, 0.823378, 0.718534, 0.0208861, 0.435365, 0.705493, 0.174218, 0.983121, 0.564026, 0.750141, 0.545693, 0.592673, 0.0115324, 0.652051, 0.43416, 0.780084, 0.715096, 0.445158, 0.13432, 0.722025, 0.594671, 0.425649, 0.401439, 0.85149, 0.664776, 0.59369, 0.981758, 0.332022, 0.317091, 0.821814, 0.932877, 0.934732, 0.645572, 0.48562, 0.666455, 0.487356, 0.582273, 0.793477, 0.705752, 0.0679657, 0.539385, 0.92631, 0.140349, 0.419209, 0.613488, 0.186375, 0.497371, 0.654363, 0.605766, 0.353864, 0.521137, 0.365737, 0.922172, 0.260254, 0.904775, 0.158833, 0.871395, 0.0284482, 0.138727, 0.981333, 0.0385456, 0.825761, 0.899612, 0.695491, 0.599947, 0.107973, 0.904803, 0.784907, 0.348681, 0.0967727, 0.290476, 0.47869, 0.724451, 0.696268, 0.390858, 0.804403, 0.915155, 0.500381, 0.326014, 0.879121, 0.747531, 0.29866, 0.836154, 0.466789, 0.0554815, 0.521147, 0.0193921, 0.277637, 0.412436, 0.165975, 0.0933043, 0.396028, 0.364232, 0.894119, 0.662706, 0.844554, 0.627276, 0.510571, 0.775876, 0.559223, 0.140766, 0.132849, 0.630919, 0.993621, 0.312176, 0.762026, 0.269199, 0.421158, 0.995547, 0.1647, 0.281031, 0.242504, 0.124864, 0.0631884, 0.783051, 0.832809, 0.370051, 0.837016, 0.322727, 0.969841, 0.635818, 0.373681, 0.0906802, 0.285469, 0.452135, 0.74719, 0.1876, 0.530949, 0.301913, 0.181019, 0.758152, 0.435024, 0.439012, 0.0774962, 0.617846, 0.648043, 0.315735, 0.376518, 0.314902, 0.409523, 0.485949, 0.402967, 0.605442, 0.0406506, 0.784141, 0.846694, 0.41006, 0.013384, 0.366095, 0.78164, 0.0102839, 0.6342, 0.913823, 0.349234, 0.112328, 0.124363, 0.152649, 0.711797, 0.386605, 0.471072, 0.818652, 0.504349, 0.648708, 0.188056, 0.826415, 0.101712, 0.0379787, 0.661428, 0.260474, 0.259856, 0.530603, 0.696072, 0.889401, 0.908128, 0.651632, 0.509349, 0.590079, 0.522361, 0.235219, 0.952806, 0.273418, 0.305395, 0.688828, 0.666369, 0.413037, 0.686757, 0.505578, 0.356498, 0.431466, 0.609216, 0.642127, 0.988884, 0.674534, 0.793127, 0.875922, 0.804245, 0.555926, 0.180767, 0.591838, 0.536362, 0.0700143, 0.690774, 0.141717, 0.425298, 0.901915, 0.0963091, 0.310052, 0.294121, 0.601604, 0.097364, 0.708817, 0.0427036, 0.50961, 0.349314, 0.164607, 0.971869, 0.986749, 0.626938, 0.269309, 0.182684, 0.888293, 0.968728, 0.629877, 0.626314, 0.882564, 0.266396, 0.894487, 0.346194, 0.636177, 0.378728, 0.409531, 0.829683, 0.613478, 0.175034, 0.556522, 0.970561, 0.716135, 0.0405869, 0.705143, 0.649151, 0.0682475, 0.143428, 0.888939, 0.163392, 0.0536951, 0.966391, 0.157317, 0.601915, 0.818234, 0.274833, 0.644002, 0.17447, 0.132195, 0.603534, 0.102146, 0.0229057, 0.449928, 0.0959411, 0.404557, 0.313371, 0.0421685, 0.680261, 0.0663152, 0.655345, 0.748725, 0.124891, 0.822067, 0.253951, 0.124592, 0.698393, 0.164684, 0.616958, 0.824313, 0.964058, 0.238139, 0.402992, 0.382403, 0.457389, 0.0418984, 0.259257, 0.20708, 0.378181, 0.595022, 0.0855787, 0.672578, 0.582013, 0.0439431, 0.0288226, 0.100938, 0.615393, 0.731328, 0.656283, 0.330191, 0.182827, 0.390147, 0.714379, 0.176488, 0.990829, 0.809143, 0.568215, 0.303771, 0.91016, 0.44329, 0.593669, 0.722076, 0.560905, 0.560642, 0.513886, 0.855322, 0.607786, 0.781349, 0.548843, 0.546036, 0.124078, 0.237524, 0.867486, 0.357688, 0.338076, 0.786907, 0.20566, 0.353073, 0.898358, 0.177624, 0.284894, 0.527775, 0.264077, 0.748425, 0.554378, 0.590301, 0.143675, 0.410008, 0.416264, 0.763627, 0.815686, 0.639639, 0.361523, 0.567836, 0.550479, 0.606591, 0.0178056, 0.166134, 0.469154, 0.890778, 0.0870741, 0.641713, 0.272892, 0.142382, 0.157895, 0.875142, 0.817378, 0.115733, 0.650699, 0.954393, 0.190758, 0.719208, 0.797697, 0.581234, 0.217666, 0.76857, 0.870738, 0.635089, 0.532965, 0.237063, 0.396399, 0.317764, 0.844411, 0.594896, 0.985531, 0.965591, 0.148934, 0.533466, 0.326614, 0.0676991, 0.0409045, 0.259027, 0.619908, 0.460028, 0.0391452, 0.35105, 0.879854, 0.920177, 0.949852, 0.0869352, 0.110073, 0.313809, 0.47796, 0.539343, 0.510045, 0.512023, 0.0600525, 0.617031, 0.604771, 0.533327, 0.105267, 0.632391, 0.308386, 0.490456, 0.702948, 0.616332, 0.634406, 0.130287, 0.819221, 0.0894389, 0.171534, 0.980235, 0.455154, 0.551306, 0.661436, 0.899947, 0.78834, 0.168625, 0.0589216, 0.097285, 0.700832, 0.821703, 0.017523, 0.210227, 0.328355, 0.861135, 0.209952, 0.518591, 0.391321, 0.846423, 0.702223, 0.491477, 0.210212, 0.267899, 0.437041, 0.288857, 0.953474, 0.964247, 0.350472, 0.334289, 0.386696, 0.278018, 0.201989, 0.899821, 0.98322, 0.143034, 0.420224, 0.37725, 0.144546, 0.968261, 0.587383, 0.640063, 0.0493429, 0.694887, 0.972637, 0.832521, 0.234671, 0.810305, 0.190715, 0.257148, 0.678743, 0.067473, 0.194639, 0.311488, 0.24708, 0.162158, 0.728028, 0.551571, 0.95262, 0.292592, 0.342366, 0.383834, 0.317163, 0.88439, 0.196063, 0.645091, 0.728461, 0.328206, 0.423494, 0.765601, 0.382084, 0.256062, 0.598997, 0.839553, 0.0702839, 0.81107, 0.665389, 0.41877, 0.550256, 0.619956, 0.129191, 0.256608, 0.768557, 0.79812, 0.527826, 0.425846, 0.973146, 0.913008, 0.0309738, 0.129424, 0.385945, 0.48925, 0.36247, 0.651493, 0.239735, 0.113484, 0.885722, 0.827916, 0.692666, 0.0900508, 0.0624783, 0.297762, 0.910664, 0.641529, 0.812213, 0.669625, 0.695333, 0.864861, 0.696586, 0.240099, 0.873849, 0.267616, 0.0150577, 0.496142, 0.0181793, 0.315326, 0.117324, 0.403701, 0.624366, 0.856175, 0.000704271, 0.0208226, 0.518633, 0.494967, 0.0915335, 0.797735, 0.293147, 0.144645, 0.321851, 0.237865, 0.729335, 0.83753, 0.444805, 0.39933, 0.497946, 0.36823, 0.249807, 0.485935, 0.128588, 0.667983, 0.335525, 0.469585, 0.337843, 0.718907, 0.24901, 0.70854, 0.992345, 0.578137, 0.579341, 0.776219, 0.485066, 0.19798, 0.373463, 0.931199, 0.912336, 0.746203, 0.750536, 0.951535, 0.691765, 0.776318, 0.357287, 0.72839, 0.0249142, 0.628353, 0.239833, 0.109642, 0.772355, 0.648747, 0.489777, 0.56614, 0.774993, 0.547418, 0.991198, 0.271008, 0.496569, 0.621571, 0.299536, 0.00810245, 0.0864569, 0.533341, 0.783043, 0.809771, 0.597423, 0.412529, 0.79456, 0.52394, 0.82497, 0.3518, 0.941565, 0.157979, 0.479138, 0.496974, 0.938128, 0.209493, 0.950286, 0.836756, 0.558122, 0.521529, 0.232116, 0.33917, 0.596949, 0.93423, 0.0692899, 0.369535, 0.749326, 0.556352, 0.982935, 0.143458, 0.893278, 0.304947, 0.400386, 0.491137, 0.711417, 0.764818, 0.235418, 0.487678, 0.253228, 0.455756, 0.551269, 0.579563, 0.235527, 0.895806, 0.474983, 0.353294, 0.984331, 0.784567, 0.422001, 0.0192113, 0.528427, 0.574712, 0.140488, 0.506967, 0.86844, 0.138171, 0.418844, 0.551601, 0.700853, 0.41318, 0.921164, 0.788882, 0.329395, 0.992396, 0.0819402, 0.0071935, 0.992821, 0.985718, 0.314136, 0.200217, 0.314595, 0.599339, 0.0609108, 0.744403, 0.0657664, 0.808466, 0.432487, 0.245351, 0.456413, 0.955912, 0.0368268, 0.173992, 0.613383, 0.389589, 0.0655167, 0.492878, 0.697627, 0.128874, 0.11259, 0.422782, 0.252359, 0.0858661, 0.338557, 0.0700371, 0.342711, 0.716044, 0.174474, 0.800268, 0.620241, 0.678921, 0.315725, 0.563589, 0.679173, 0.312168, 0.190003, 0.263356, 0.443382, 0.160867, 0.293886, 0.369934, 0.621355, 0.178948, 0.799668, 0.168929, 0.886597, 0.157751, 0.827426, 0.998084, 0.709695, 0.994338, 0.448279, 0.640411, 0.928919, 0.459238, 0.067816, 0.605502, 0.244398, 0.608718, 0.214511, 0.12063, 0.945361, 0.509654, 0.0255167, 0.417937, 0.818315, 0.987609, 0.413759, 0.538989, 0.0248027, 0.454687, 0.0517092, 0.90271, 0.425484, 0.862402, 0.625027, 0.876214, 0.675517, 0.192748, 0.231229, 0.819236, 0.823086, 0.667963, 0.281389, 0.00746112, 0.968602, 0.317103, 0.477637, 0.0761143, 0.376027, 0.0466629, 0.191921, 0.73032, 0.252946, 0.267239, 0.0905882, 0.849323, 0.946896, 0.181835, 0.270043, 0.056533, 0.528718, 0.34072, 0.195902, 0.706542, 0.991418, 0.119169, 0.891355, 0.864471, 0.699044, 0.651331, 0.285457, 0.670664, 0.466954, 0.801451, 0.64839, 0.485259, 0.881206, 0.0398237, 0.933549, 0.257922, 0.587636, 0.112448, 0.0148977, 0.937841, 0.765008, 0.0828351, 0.816488, 0.960685, 0.61599, 0.859782, 0.290726, 0.513923, 0.063747, 0.370326, 0.159592, 0.468146, 0.651206, 0.310093, 0.298917, 0.359615, 0.972081, 0.705177, 0.171894, 0.737643, 0.264526, 0.228415, 0.206767, 0.215091, 0.888902, 0.566527, 0.838089, 0.28529, 0.609758, 0.708566, 0.81208, 0.433847, 0.126582, 0.937056, 0.757773, 0.690594, 0.392319, 0.550614, 0.392574, 0.670266, 0.49032, 0.205898, 0.831668, 0.190098, 0.291416, 0.317894, 0.0457926, 0.872519, 0.000115332, 0.729135, 0.741646, 0.453272, 0.604688, 0.0199639, 0.707024, 0.0497294, 0.686269, 0.671024, 0.220367, 0.825915, 0.326601, 0.392532, 0.357285, 0.518455, 0.859585, 0.73902, 0.143127, 0.2866, 0.345896, 0.0462287, 0.941818, 0.501028, 0.344384, 0.0554794, 0.324246, 0.848657, 0.356346, 0.285384, 0.952473, 0.814546, 0.330119, 0.788547, 0.741966, 0.377757, 0.155739, 0.551952, 0.689385, 0.323114, 0.512186, 0.440853, 0.684254, 0.655622, 0.160188, 0.87879, 0.94967, 0.611931, 0.577409, 0.254201, 0.266333, 0.61696, 0.718902, 0.726468, 0.998383, 0.0919312, 0.0664134, 0.828854, 0.472295, 0.842708, 0.64022, 0.305899, 0.0237165, 0.876209, 0.133535, 0.17101, 0.658875, 0.13261, 0.981066, 0.986838, 0.891752, 0.296951, 0.434631, 0.967742, 0.802787, 0.366509, 0.719581, 0.503294, 0.748413, 0.161317, 0.66709, 0.444871, 0.36463, 0.0446563, 0.874504, 0.127738, 0.347592, 0.398526, 0.0199116, 0.914809, 0.167554, 0.189426, 0.855066, 0.694113, 0.799023, 0.0902301, 0.676734, 0.0229465, 0.806434, 0.343859, 0.559115, 0.0432249, 0.659427, 0.354253, 0.616094, 0.411097, 0.806377, 0.77531, 0.741445, 0.000473142, 0.639601, 0.536549, 0.806591, 0.548107, 0.732347, 0.427543, 0.867243, 0.186006, 0.588977, 0.52012, 0.409918, 0.460944, 0.368319, 0.361351, 0.292433, 0.907614, 0.874799, 0.2355, 0.123767, 0.981005, 0.421588, 0.147668, 0.523858, 0.311282, 0.680003, 0.0692566, 0.999342, 0.261984, 0.655352, 0.133604, 0.5844, 0.426139, 0.854832, 0.438496, 0.675043, 0.420723, 0.445101, 0.86545, 0.208841, 0.121776, 0.906885, 0.66269, 0.123358, 0.921135, 0.54658, 0.461271, 0.0967301, 0.402302, 0.71524, 0.182779, 0.50309, 0.730806, 0.250203, 0.584698, 0.628875, 0.485839, 0.321928, 0.367213, 0.983743, 0.493145, 0.173286, 0.760994, 0.306477, 0.0946855, 0.11765, 0.526887, 0.35585, 0.801342, 0.417659, 0.481917, 0.816113, 0.0390786, 0.352499, 0.455266, 0.885476, 0.01811, 0.421414, 0.806737, 0.648411, 0.757006, 0.187066, 0.535292, 0.726305, 0.505754, 0.339057, 0.672727, 0.548889, 0.557402, 0.765191, 0.98779, 0.0785735, 0.687429, 0.437189, 0.437966, 0.0490676, 0.251836, 0.87836, 0.661856, 0.413129, 0.909673, 0.969351, 0.445319, 0.529583, 0.845193, 0.339396, 0.195819, 0.671612, 0.907388, 0.242167, 0.329103, 0.388934, 0.755661, 0.592306, 0.954056, 0.568219, 0.929298, 0.00538758, 0.386031, 0.431302, 0.260224, 0.779087, 0.657806, 0.0189166, 0.430028, 0.260458, 0.977439, 0.388769, 0.340334, 0.106024, 0.881939, 0.838445, 0.413673, 0.335674, 0.494271, 0.334412, 0.593359, 0.49516, 0.976, 0.153431, 0.413018, 0.164818, 0.252509, 0.742455, 0.713348, 0.0204139, 0.538596, 0.707846, 0.0221754, 0.522451, 0.0391039, 0.455664, 0.504789, 0.738907, 0.58575, 0.815157, 0.48306, 0.811862, 0.86745, 0.311792, 0.685545, 0.309708, 0.788836, 0.837826, 0.399528, 0.450462, 0.596774, 0.214621, 0.526566, 0.0688926, 0.448344, 0.120725, 0.315122, 0.787048, 0.963238, 0.340877, 0.199999, 0.079017, 0.864607, 0.764251, 0.718319, 0.111497, 0.279891, 0.115554, 0.262699, 0.890724, 0.353046, 0.810957, 0.866735, 0.00286452, 0.00347619, 0.270853, 0.614247, 0.561387, 0.0215133, 0.891057, 0.315399, 0.25655, 0.241741, 0.15039, 0.374129, 0.0691939, 0.799363, 0.744584, 0.61992, 0.83166, 0.591765, 0.336728, 0.581412, 0.928769, 0.559652, 0.882395, 0.652254, 0.26545, 0.0670024, 0.98697, 0.391175, 0.224069, 0.323982, 0.279011, 0.820496, 0.557159, 0.327779, 0.352074, 0.206076, 0.717108, 0.0965557, 0.138739, 0.227808, 0.563218, 0.48847, 0.945773, 0.234884, 0.858546, 0.159396, 0.385241, 0.623445, 0.596752, 0.443205, 0.887035, 0.640344, 0.0998492, 0.163499, 0.6304, 0.480013, 0.0448055, 0.312842, 0.841812, 0.0231258, 0.873638, 0.694296, 0.592714, 0.87127, 0.434592, 0.612617, 0.236753, 0.24755, 0.0956149, 0.579344, 0.68045, 0.817486, 0.547015, 0.0270583, 0.692874, 0.805408, 0.90689, 0.506499, 0.757605, 0.440627, 0.0319319, 0.878953, 0.327406, 0.0859084, 0.540661, 0.658303, 0.247164, 0.988378, 0.953815, 0.835087, 0.794337, 0.183549, 0.143762, 0.188967, 0.797925, 0.155226, 0.678526, 0.223761, 0.142341, 0.971828, 0.912707, 0.354852, 0.23376, 0.859434, 0.864688, 0.643642, 0.279002, 0.872146, 0.717845, 0.689394, 0.584934, 0.925325, 0.64485, 0.0868768, 0.440149, 0.0802374, 0.169745, 0.0772872, 0.148129, 0.838965, 0.500671, 0.233542, 0.289451, 0.157224, 0.24364, 0.412919, 0.0722526, 0.248199, 0.308479, 0.3912, 0.500142, 0.222, 0.0948341, 0.917636, 0.50172, 0.465381, 0.440189, 0.286679, 0.842397, 0.90052, 0.290512, 0.803082, 0.303241, 0.919119, 0.725945, 0.0349066, 0.211141, 0.395546, 0.763755, 0.733756, 0.871343, 0.243095, 0.366657, 0.0390919, 0.792521, 0.60397, 0.0279148, 0.943343, 0.253192, 0.238217, 0.342333, 0.923191, 0.98298, 0.872482, 0.833295, 0.0152523, 0.203533, 0.0602389, 0.705377, 0.515586, 0.44581, 0.648555, 0.401494, 0.496757, 0.352891, 0.657929, 0.882993, 0.490186, 0.240471, 0.249185, 0.932046, 0.323939, 0.947336, 0.550444, 0.28375, 0.75001, 0.942039, 0.701898, 0.0971857, 0.93847, 0.0757117, 0.681359, 0.378749, 0.63677, 0.242046, 0.691409, 0.543192, 0.541103, 0.0552468, 0.519849, 0.391595, 0.528859, 0.231188, 0.563127, 0.708664, 0.793334, 0.613483, 0.54913, 0.813614, 0.042799, 0.30788, 0.55394, 0.444663, 0.346912, 0.49824, 0.426941, 0.645794, 0.526599, 0.346327, 0.3573, 0.0900302, 0.883809, 0.404628, 0.868461, 0.923339, 0.749753, 0.537338, 0.460161, 0.660874, 0.0147659, 0.393392, 0.558639, 0.293429, 0.719359, 0.114173, 0.653513, 0.0139946, 0.954595, 0.286828, 0.0624148, 0.385569, 0.547447, 0.543222, 0.176947, 0.960972, 0.278089, 0.388656, 0.841098, 0.446601, 0.470455, 0.920701, 0.846298, 0.493898, 0.95992, 0.57772, 0.260233, 0.684009, 0.173487, 0.323381, 0.0104636, 0.288452, 0.551542, 0.651847, 0.78528, 0.0337595, 0.508202, 0.948789, 0.766963, 0.294237, 0.303095, 0.932342, 0.396169, 0.743192, 0.0843343, 0.635914, 0.158435, 0.330101, 0.74867, 0.848881, 0.136496, 0.289118, 0.6916, 0.272927, 0.290798, 0.904767, 0.31142, 0.166282, 0.36705, 0.549303, 0.469151, 0.0969193, 0.128408, 0.83649, 0.929419, 0.158906, 0.628187, 0.406191, 0.382885, 0.579948, 0.039028, 0.169621, 0.989329, 0.0815238, 0.923423, 0.60885, 0.106084, 0.394455, 0.628407, 0.943118, 0.295768, 0.94597, 0.502776, 0.282522, 0.212961, 0.592191, 0.217716, 0.84636, 0.813798, 0.330917, 0.40851, 0.811735, 0.507795, 0.192148, 0.476361, 0.696752, 0.976219, 0.0985664, 0.130977, 0.581818, 0.972998, 0.240433, 0.321268, 0.369408, 0.209879, 0.144105, 0.31964, 0.645313, 0.437016, 0.0419897, 0.375873, 0.0804421, 0.0512266, 0.0509438, 0.697631, 0.948479, 0.532177, 0.672666, 0.733022, 0.572237, 0.14163, 0.357718, 0.604449, 0.876126, 0.409308, 0.555404, 0.428393, 0.610674, 0.0540597, 0.103888, 0.733858, 0.499431, 0.325702, 0.33307, 0.412439, 0.536351, 0.10531, 0.465118, 0.83234, 0.0853166, 0.787354, 0.151916, 0.813868, 0.375883, 0.668342, 0.725351, 0.610602, 0.568374, 0.750339, 0.112482, 0.847242, 0.0451396, 0.75429, 0.959095, 0.112375, 0.235576, 0.10334, 0.259363, 0.108213, 0.284684, 0.264342, 0.543585, 0.57483, 0.617723, 0.626695, 0.932913, 0.742072, 0.2597, 0.877427, 0.377372, 0.801181, 0.846736, 0.326486, 0.903304, 0.756728, 0.68676, 0.916784, 0.615015, 0.63057, 0.196501, 0.463048, 0.636259, 0.369163, 0.754758, 0.112082, 0.112358, 0.975391, 0.87108, 0.442962, 0.051052, 0.955866, 0.965001, 0.0991575, 0.387232, 0.763433, 0.84831, 0.422091, 0.878841, 0.334149, 0.612291, 0.34583, 0.543017, 0.980456, 0.925603, 0.114561, 0.936859, 0.343194, 0.0879617, 0.895599, 0.196207, 0.95123, 0.0743102, 0.471337, 0.164966, 0.738517, 0.475985, 0.493499, 0.0356601, 0.0216095, 0.553481, 0.301842, 0.181291, 0.223093, 0.545786, 0.771299, 0.778807, 0.157046, 0.139492, 0.111831, 0.740367, 0.398365, 0.170494, 0.581992, 0.860194, 0.213607, 0.0784152, 0.415623, 0.100157, 0.352112, 0.675707, 0.531062, 0.183464, 0.661215, 0.300351, 0.440552, 0.585824, 0.716819, 0.631349, 0.327658, 0.405028, 0.859839, 0.104944, 0.160611, 0.0472555, 0.734982, 0.827174, 0.0545748, 0.893999, 0.808877, 0.679652, 0.465044, 0.750202, 0.436215, 0.822035, 0.317308, 0.262415, 0.918618, 0.863142, 0.574615, 0.660461, 0.43724, 0.909306, 0.972506, 0.723827, 0.248622, 0.163049, 0.386939, 0.106643, 0.994871, 0.855658, 0.455771, 0.164918, 0.30611, 0.908631, 0.688893, 0.7613, 0.261632, 0.00253999, 0.271221, 0.432736, 0.635471, 0.181422, 0.380618, 0.564341, 0.434719, 0.966238, 0.708924, 0.405715, 0.703709, 0.548696, 0.12822, 0.144822, 0.428797, 0.184346, 0.338066, 0.955262, 0.300652, 0.298374, 0.316968, 0.108116, 0.823357, 0.151366, 0.50352, 0.434533, 0.0268823, 0.233961, 0.430651, 0.169694, 0.562766, 0.420687, 0.74611, 0.366372, 0.836339, 0.530026, 0.186737, 0.938637, 0.875394, 0.425433, 0.772448, 0.667455, 0.764654, 0.0874587, 0.743262, 0.355979, 0.436202, 0.148673, 0.201261, 0.276859, 0.553841, 0.95306, 0.090599, 0.620788, 0.109106, 0.844815, 0.115852, 0.98086, 0.996081, 0.44014, 0.341718, 0.280627, 0.642585, 0.776772, 0.0884373, 0.524358, 0.442389, 0.571881, 0.502865, 0.14464, 0.701467, 0.68293, 0.463895, 0.0902899, 0.816324, 0.382356, 0.473168, 0.197288, 0.390467, 0.287006, 0.895552, 0.0384493, 0.353009, 0.908499, 0.194202, 0.671324, 0.816639, 0.0423796, 0.546441, 0.0342219, 0.289165, 0.797636, 0.800629, 0.0945803, 0.40729, 0.8805, 0.728001, 0.0598097, 0.0407465, 0.461957, 0.968095, 0.81558, 0.288942, 0.303981, 0.0932752, 0.225836, 0.424889, 0.477242, 0.424551, 0.214986, 0.14967, 0.839184, 0.698299, 0.245224, 0.534186, 0.609572, 0.98554, 0.264859, 0.921869, 0.515783, 0.609405, 0.666567, 0.642494, 0.454781, 0.0514512, 0.845558, 0.462281, 0.77345, 0.517576, 0.394532, 0.298696, 0.0637802, 0.939939, 0.897187, 0.64845, 0.654141, 0.5422, 0.378496, 0.112206, 0.0735552, 0.791746, 0.195783, 0.189425, 0.272562, 0.16373, 0.502485, 0.938173, 0.234381, 0.0216515, 0.098865, 0.784636, 0.327652, 0.758766, 0.239961, 0.673782, 0.215241, 0.0551604, 0.638107, 0.199927, 0.603767, 0.68115, 0.830862, 0.786071, 0.999128, 0.707448, 0.615595, 0.579995, 0.16302, 0.849775, 0.358486, 0.809041, 0.58912, 0.815306, 0.816334, 0.837699, 0.492808, 0.371968, 0.947081, 0.299125, 0.946594, 0.00616334, 0.495702, 0.605294, 0.240714, 0.070094, 0.621159, 0.906691, 0.116446, 0.538016, 0.558571, 0.578832, 0.694791, 0.053463, 0.386424, 0.997221, 0.625712, 0.979621, 0.413771, 0.369701, 0.906975, 0.895063, 0.542317, 0.77892, 0.195462, 0.531385, 0.29435, 0.223329, 0.989861, 0.640537, 0.435093, 0.579481, 0.403141, 0.00389478, 0.132103, 0.644417, 0.621178, 0.954442, 0.0298517, 0.698377, 0.0861056, 0.511701, 0.804046, 0.925313, 0.895933, 0.852232, 0.326931, 0.249424, 0.0391691, 0.764963, 0.307361, 0.340186, 0.860699, 0.00334707, 0.452865, 0.180791, 0.283536, 0.625822, 0.789606, 0.478775, 0.934851, 0.462845, 0.570526, 0.244256, 0.997985, 0.28044, 0.544024, 0.18943, 0.818593, 0.185194, 0.0231956, 0.866088, 0.926126, 0.397896, 0.332372, 0.358482, 0.0417129, 0.984173, 0.695827, 0.332034, 0.122609, 0.203093, 0.314443, 0.437393, 0.296373, 0.509336, 0.244107, 0.234058, 0.690037, 0.284188, 0.221039, 0.361181, 0.91032, 0.547321, 0.975328, 0.068128, 0.0801906, 0.528644, 0.524512, 0.177174, 0.894682, 0.955069, 0.552512, 0.672156, 0.198971, 0.669977, 0.418543, 0.876825, 0.414695, 0.238743, 0.275038, 0.163796, 0.509435, 0.713545, 0.173844, 0.524071, 0.0835044, 0.824222, 0.753913, 0.0644402, 0.900321, 0.815974, 0.836045, 0.847429, 0.471409, 0.326379, 0.629818, 0.444759, 0.350045, 0.912832, 0.884349, 0.549902, 0.242738, 0.850416, 0.0617729, 0.140373, 0.440812, 0.72903, 0.893515, 0.207915, 0.604921, 0.480557, 0.755408, 0.0180358, 0.154815, 0.557772, 0.487432, 0.845579, 0.00213903, 0.645807, 0.497907, 0.563857, 0.862445, 0.180516, 0.931488, 0.737159, 0.648239, 0.0344065, 0.538289, 0.956338, 0.850626, 0.98302, 0.586991, 0.617682, 0.914337, 0.960085, 0.893208, 0.00806309, 0.431762, 0.757136, 0.924223, 0.158815, 0.251725, 0.569288, 0.366741, 0.00675499, 0.292936, 0.92097, 0.94205, 0.0956674, 0.161022, 0.701299, 0.736288, 0.0344687, 0.241482, 0.102898, 0.277884, 0.780629, 0.744666, 0.332055, 0.388952, 0.764887, 0.264898, 0.479994, 0.123352, 0.0341801, 0.781711, 0.88336, 0.368756, 0.196185, 0.701533, 0.425115, 0.946277, 0.280047, 0.557773, 0.0789337, 0.958856, 0.986791, 0.202065, 0.169607, 0.395141, 0.0409483, 0.64695, 0.492192, 0.362814, 0.81448, 0.16285, 0.296021, 0.0499376, 0.190696, 0.63939, 0.0335765, 0.599953, 0.902445, 0.042125, 0.284877, 0.961642, 0.403516, 0.317403, 0.466792, 0.10303, 0.79637, 0.0808633, 0.939454, 0.371804, 0.197288, 0.996496, 0.0102507, 0.029832, 0.538724, 0.26238, 0.14706, 0.368093, 0.268087, 0.949004, 0.266385, 0.471935, 0.391111, 0.0526285, 0.109101, 0.197184, 0.84688, 0.909992, 0.599527, 0.384441, 0.770833, 0.693056, 0.888264, 0.435594, 0.258062, 0.459511, 0.496008, 0.236393, 0.172671, 0.467522, 0.0280065, 0.26842, 0.311446, 0.779192, 0.989998, 0.0225157, 0.736742, 0.40066, 0.422172, 0.789103, 0.494358, 0.880555, 0.196643, 0.615858, 0.294632, 0.214528, 0.876536, 0.103891, 0.0429321, 0.309648, 0.87223, 0.391974, 0.69175, 0.825653, 0.274149, 0.56648, 0.893573, 0.255601, 0.217857, 0.0863715, 0.33166, 0.545067, 0.720115, 0.308524, 0.763465, 0.898536, 0.434902, 0.580537, 0.182824, 0.221024, 0.0161732, 0.746002, 0.262537, 0.0377952, 0.417375, 0.529417, 0.225243, 0.78082, 0.504494, 0.628211, 0.882423, 0.577104, 0.207672, 0.6147, 0.693291, 0.0332987, 0.91873, 0.561389, 0.835958, 0.780318, 0.287622, 0.813036, 0.259987, 0.89446, 0.403804, 0.465006, 0.89041, 0.254563, 0.0405819, 0.308872, 0.332119, 0.398827, 0.314813, 0.00374371, 0.0162247, 0.943943, 0.593976, 0.503378, 0.571029, 0.518946, 0.99204, 0.301182, 0.746012, 0.205308, 0.0311136, 0.0600072, 0.628276, 0.0692109, 0.328635, 0.873159, 0.692923, 0.716217, 0.522212, 0.869064, 0.581255, 0.435035, 0.376923, 0.705279, 0.181347, 0.433562, 0.741623, 0.869501, 0.0269738, 0.366206, 0.703613, 0.198466, 0.317634, 0.301124, 0.0647373, 0.480298, 0.282097, 0.667181, 0.134705, 0.727296, 0.357044, 0.75068, 0.695344, 0.919044, 0.232232, 0.905678, 0.929539, 0.221667, 0.859635, 0.314313, 0.0181896, 0.207636, 0.0894953, 0.311575, 0.720474, 0.530752, 0.0443453, 0.438311, 0.134759, 0.954803, 0.0332241, 0.236766, 0.871747, 0.581201, 0.268526, 0.462712, 0.298389, 0.865605, 0.185796, 0.947704, 0.143154, 0.0242203, 0.92274, 0.70675, 0.0165168, 0.442303, 0.833985, 0.260064, 0.975228, 0.952075, 0.377776, 0.882164, 0.0293832, 0.640253, 0.439204, 0.280474, 0.145732, 0.581118, 0.451207, 0.255284, 0.781568, 0.324417, 0.52736, 0.416398, 0.415699, 0.111875, 0.249532, 0.440094, 0.36148, 0.344022, 0.568508, 0.380597, 0.774403, 0.522126, 0.24831, 0.656351, 0.457071, 0.559514, 0.464628, 0.212683, 0.185925, 0.191342, 0.793873, 0.694486, 0.726579, 0.449636, 0.34599, 0.914453, 0.934441, 0.297545, 0.504448, 0.947946, 0.601821, 0.561874, 0.960582, 0.354686, 0.122419, 0.109913, 0.504334, 0.343276, 0.412616, 0.348994, 0.0366128, 0.479268, 0.864824, 0.517947, 0.0820124, 0.305641, 0.301882, 0.0627611, 0.415498, 0.0371123, 0.0915617, 0.31759, 0.326098, 0.887276, 0.317074, 0.949069, 0.790414, 0.508064, 0.856512, 0.0717677, 0.155067, 0.458459, 0.464344, 0.858695, 0.237248, 0.424609, 0.0409658, 0.925551, 0.932285, 0.742581, 0.974907, 0.341533, 0.980469, 0.209856, 0.555253, 0.834628, 0.939695, 0.492141, 0.533083, 0.0770837, 0.224348, 0.85108, 0.395584, 0.734646, 0.535954, 0.675955, 0.460483, 0.779008, 0.179741, 0.992827, 0.222586, 0.236466, 0.292186, 0.141888, 0.651591, 0.264082, 0.535197, 0.725217, 0.472508, 0.315369, 0.0442671, 0.826404, 0.664442, 0.210318, 0.781154, 0.768779, 0.130535, 0.789821, 0.0872829, 0.000345506, 0.989456, 0.697414, 0.243103, 0.934252, 0.392799, 0.869709, 0.983473, 0.957166, 0.298384, 0.950966, 0.945291, 0.791484, 0.611383, 0.00773862, 0.546973, 0.743926, 0.309783, 0.593539, 0.000150709, 0.943393, 0.814505, 0.292044, 0.556328, 0.150154, 0.952166, 0.814909, 0.502722, 0.398686, 0.328962, 0.766985, 0.920527, 0.427594, 0.659691, 0.0124402, 0.469223, 0.830091, 0.673413, 0.413477, 0.957588, 0.749862, 0.318045, 0.387874, 0.489802, 0.790802, 0.496226, 0.977664, 0.313017, 0.512363, 0.0335574, 0.882417, 0.986866, 0.25166, 0.773055, 0.44442, 0.156512, 0.0503038, 0.258552, 0.717986, 0.452502, 0.495818, 0.883668, 0.882702, 0.373779, 0.356799, 0.484667, 0.812132, 0.187131, 0.157797, 0.212676, 0.26866, 0.40355, 0.824234, 0.740606, 0.306995, 0.317752, 0.423819, 0.517614, 0.196941, 0.571482, 0.925737, 0.123843, 0.129535, 0.400391, 0.491381, 0.650341, 0.72332, 0.196269, 0.630798, 0.495517, 0.622336, 0.988314, 0.0691449, 0.450294, 0.0676124, 0.168269, 0.207228, 0.489192, 0.6602, 0.687884, 0.0119344, 0.70527, 0.983733, 0.982384, 0.205083, 0.861384, 0.787663, 0.742554, 0.206209, 0.212616, 0.268012, 0.390901, 0.65883, 0.68938, 0.22444, 0.0192429, 0.388283, 0.429813, 0.556358, 0.683561, 0.386254, 0.782344, 0.588964, 0.55072, 0.748183, 0.204753, 0.096801, 0.747743, 0.441655, 0.365034, 0.845842, 0.495637, 0.728004, 0.500585, 0.998266, 0.683184, 0.529804, 0.279395, 0.0847966, 0.911018, 0.463934, 0.923531, 0.885698, 0.104163, 0.990858, 0.436038, 0.51552, 0.408262, 0.892803, 0.0476812, 0.0586898, 0.864969, 0.573018, 0.609611, 0.467167, 0.670962, 0.651588, 0.45333, 0.957268, 0.633035, 0.186001, 0.494991, 0.280636, 0.772204, 0.743438, 0.347833, 0.873078, 0.753847, 0.685593, 0.744352, 0.318947, 0.000933816, 0.106924, 0.536107, 0.639829, 0.206119, 0.290089, 0.514712, 0.274866, 0.871336, 0.802907, 0.922184, 0.118177, 0.310597, 0.953389, 0.0724043, 0.199281, 0.386491, 0.467763, 0.430769, 0.315458, 0.0265129, 0.467898, 0.250111, 0.804908, 0.191977, 0.645413, 0.472067, 0.135614, 0.461252, 0.734281, 0.59659, 0.825864, 0.532474, 0.998466, 0.969667, 0.331398, 0.448755, 0.00692174, 0.153388, 0.393273, 0.313802, 0.372704, 0.190606, 0.304895, 0.671254, 0.160957, 0.800807, 0.278713, 0.436136, 0.106469, 0.0285365, 0.897001, 0.580738, 0.370273, 0.419885, 0.868881, 0.631461, 0.549333, 0.883746, 0.397048, 0.169611, 0.149362, 0.262929, 0.866222, 0.738744, 0.553673, 0.940457, 0.507536, 0.449506, 0.715586, 0.734003, 0.949907, 0.975064, 0.962441, 0.675457, 0.78993, 0.359971, 0.308689, 0.734226, 0.754878, 0.441995, 0.58604, 0.888753, 0.541922, 0.804717, 0.939941, 0.511089, 0.059096, 0.309463, 0.186918, 0.349145, 0.377007, 0.192307, 0.250198, 0.843252, 0.868986, 0.39968, 0.238747, 0.845026, 0.511491, 0.279175, 0.386605, 0.606426, 0.254615, 0.901591, 0.0902917, 0.0290092, 0.847245, 0.113106, 0.0610486, 0.920226, 0.865475, 0.392629, 0.841488, 0.207402, 0.2355, 0.686044, 0.167998, 0.979337, 0.153475, 0.757106, 0.849751, 0.63244, 0.0188624, 0.560794, 0.992078, 0.0909231, 0.0885458, 0.849227, 0.996531, 0.536453, 0.446947, 0.88522, 0.364139, 0.460961, 0.474815, 0.398555, 0.864047, 0.648844, 0.986066, 0.317278, 0.45119, 0.457284, 0.862431, 0.200464, 0.586896, 0.507887, 0.478319, 0.253593, 0.142232, 0.22894, 0.790407, 0.717963, 0.45883, 0.525727, 0.610991, 0.0606806, 0.536986, 0.593655, 0.850723, 0.305421, 0.100182, 0.527007, 0.765736, 0.858126, 0.595021, 0.967857, 0.761493, 0.696527, 0.449307, 0.932336, 0.299135, 0.358472, 0.228388, 0.242661, 0.339309, 0.805666, 0.721293, 0.560974, 0.057952, 0.432618, 0.00532646, 0.247144, 0.933411, 0.288424, 0.65877, 0.111568, 0.52991, 0.246124, 0.816316, 0.989767, 0.425535, 0.357157, 0.804862, 0.0871632, 0.764356, 0.150044, 0.37453, 0.117095, 0.907181, 0.746269, 0.503772, 0.876714, 0.956733, 0.850514, 0.882735, 0.209248, 0.534389, 0.836352, 0.872055, 0.264027, 0.0105678, 0.784881, 0.523245, 0.530977, 0.249264, 0.296541, 0.313034, 0.0419802, 0.306476, 0.748028, 0.0510997, 0.394418, 0.0434473, 0.41069, 0.4958, 0.82988, 0.993508, 0.0226086, 0.536659, 0.601497, 0.278772, 0.317662, 0.683175, 0.428438, 0.955904, 0.626727, 0.707521, 0.901637, 0.531014, 0.868496, 0.566689, 0.0401177, 0.135806, 0.468599, 0.733522, 0.673194, 0.0231164, 0.690726, 0.727451, 0.481481, 0.190158, 0.961606, 0.270164, 0.115293, 0.0736417, 0.187547, 0.00130081, 0.20917, 0.529096, 0.872191, 0.168243, 0.0367341, 0.218131, 0.368563, 0.263263, 0.960075, 0.755443, 0.925066, 0.262938, 0.964269, 0.354926, 0.382723, 0.934509, 0.769771, 0.293814, 0.228827, 0.0643684, 0.454316, 0.968496, 0.502272, 0.89256, 0.451724, 0.410523, 0.113414, 0.435572, 0.491274, 0.150822, 0.0316294, 0.541724, 0.785892, 0.359348, 0.453757, 0.766495, 0.749102, 0.303961, 0.367119, 0.990696, 0.454912, 0.933072, 0.0308887, 0.486821, 0.424341, 0.731196, 0.432225, 0.992916, 0.214123, 0.644641, 0.372599, 0.951961, 0.0972326, 0.154543, 0.866991, 0.596344, 0.758693, 0.362703, 0.185587, 0.756834, 0.0522437, 0.406655, 0.286283, 0.624453, 0.65098, 0.126626, 0.50958, 0.676144, 0.241151, 0.704983, 0.00092231, 0.592649, 0.45497, 0.478202, 0.944385, 0.618972, 0.660407, 0.882134, 0.598851, 0.0721889, 0.428745, 0.0795186, 0.148123, 0.886525, 0.162734, 0.824951, 0.683045, 0.503343, 0.589938, 0.0723046, 0.115081, 0.0201089, 0.322682, 0.129508, 0.618312, 0.030028, 0.806149, 0.694088, 0.109434, 0.154758, 2.56987e-05, 0.204626, 0.616414, 0.226096, 0.386395, 0.779831, 0.901758, 0.163856, 0.648934, 0.338192, 0.202123, 0.5336, 0.730557, 0.558773, 0.824843, 0.727957, 0.620088, 0.878383, 0.0985933, 0.708119, 0.643123, 0.91529, 0.79023, 0.73863, 0.954561, 0.295152, 0.589698, 0.317382, 0.60369, 0.195049, 0.898866, 0.606234, 0.194511, 0.447969, 0.322482, 0.586575, 0.249628, 0.873322, 0.594945, 0.9835, 0.64875, 0.912699, 0.456709, 0.348595, 0.595872, 0.185971, 0.086924, 0.0262257, 0.695916, 0.941024, 0.461552, 0.323183, 0.707817, 0.253687, 0.608315, 0.477998, 0.897206, 0.653489, 0.749276, 0.393501, 0.354142, 0.854916, 0.460109, 0.41504, 0.584033, 0.952008, 0.361548, 0.784401, 0.377392, 0.20778, 0.587108, 0.689111, 0.0389034, 0.425034, 0.385394, 0.248345, 0.380086, 0.575475, 0.638013, 0.0801842, 0.0997491, 0.364944, 0.599061, 0.0702159, 0.0402721, 0.0991669, 0.493616, 0.412747, 0.800816, 0.758369, 0.665841, 0.902528, 0.0418127, 0.1759, 0.483507, 0.387907, 0.8783, 0.41027, 0.462613, 0.32364, 0.18377, 0.250224, 0.278371, 0.9717, 0.500004, 0.251009, 0.769054, 0.349166, 0.512457, 0.933079, 0.463936, 0.366296, 0.000990404, 0.654282, 0.879606, 0.564059, 0.270697, 0.806186, 0.341294, 0.777393, 0.590548, 0.978357, 0.653695, 0.707876, 0.715257, 0.499117, 0.769642, 0.018444, 0.425349, 0.191002, 0.653968, 0.892596, 0.0685558, 0.043615, 0.69562, 0.303121, 0.0711234, 0.614355, 0.97748, 0.155872, 0.843808, 0.283898, 0.023926, 0.798128, 0.291579, 0.512036, 0.640579, 0.0650972, 0.865339, 0.989509, 0.820208, 0.122347, 0.905576, 0.710012, 0.472021, 0.0729493, 0.8676, 0.351875, 0.597197, 0.923503, 0.344575, 0.00368959, 0.101002, 0.865642, 0.417901, 0.336183, 0.403366, 0.609777, 0.229407, 0.338873, 0.92018, 0.341668, 0.177561, 0.711885, 0.721438, 0.151257, 0.897723, 0.734261, 0.828299, 0.654796, 0.610168, 0.322614, 0.057609, 0.669868, 0.0351103, 0.497851, 0.899341, 0.659735, 0.833629, 0.247816, 0.647905, 0.818258, 0.997715, 0.784559, 0.648556, 0.283222, 0.885833, 0.00499132, 0.187462, 0.926025, 0.48638, 0.610984, 0.58284, 0.536159, 0.789185, 0.899492, 0.38008, 0.627457, 0.375201, 0.888226, 0.723031, 0.555612, 0.649365, 0.83337, 0.0822123, 0.740998, 0.257561, 0.0729339, 0.515953, 0.64114, 0.827667, 0.521557, 0.628335, 0.467915, 0.0776531, 0.362262, 0.379132, 0.280284, 0.810736, 0.361727, 0.49232, 0.689625, 0.304187, 0.627473, 0.633657, 0.794066, 0.63248, 0.210397, 0.102277, 0.928669, 0.483447, 0.40887, 0.913735, 0.483358, 0.503764, 0.254536, 0.596166, 0.143644, 0.904753, 0.0256079, 0.756253, 0.169432, 0.0729975, 0.109243, 0.0309298, 0.0890768, 0.869929, 0.756607, 0.814741, 0.150594, 0.470673, 0.498989, 0.398265, 0.94255, 0.868611, 0.461242, 0.43474, 0.621181, 0.447873, 0.952126, 0.903815, 0.324511, 0.478995, 0.682979, 0.621209, 0.292499, 0.358295, 0.129948, 0.804466, 0.0499845, 0.0481898, 0.782715, 0.542998, 0.765441, 0.113682, 0.134923, 0.899975, 0.155663, 0.208583, 0.484905, 0.821416, 0.268545, 0.481221, 0.584605, 0.861309, 0.920582, 0.871126, 0.269647, 0.439819, 0.126401, 0.482138, 0.625803, 0.0798102, 0.0392741, 0.517811, 0.426276, 0.713428, 0.287859, 0.831379, 0.464117, 0.3917, 0.574551, 0.0105812, 0.481456, 0.513039, 0.563318, 0.552785, 0.342518, 0.384482, 0.696738, 0.945141, 0.0719859, 0.302028, 0.604319, 0.954776, 0.36243, 0.290512, 0.504883, 0.379147, 0.125761, 0.161326, 0.591145, 0.566471, 0.217208, 0.553199, 0.667357, 0.376792, 0.607599, 0.0254957, 0.121186, 0.763961, 0.0768277, 0.35534, 0.838269, 0.985063, 0.357764, 0.181454, 0.141499, 0.897183, 0.286145, 0.249903, 0.334809, 0.966785, 0.149642, 0.289421, 0.916148, 0.35175, 0.317636, 0.806016, 0.190981, 0.813306, 0.395627, 0.95738, 0.0939752, 0.361082, 0.899597, 0.486998, 0.760254, 0.15083, 0.837766, 0.444012, 0.738797, 0.678772, 0.129165, 0.3699, 0.75069, 0.466849, 0.974521, 0.732234, 0.0783179, 0.724613, 0.218733, 0.831013, 0.583469, 0.0475636, 0.948548, 0.522795, 0.485984, 0.409257, 0.989019, 0.260101, 0.344105, 0.58524, 0.837142, 0.623739, 0.6157, 0.85168, 0.627927, 0.0602272, 0.505626, 0.955254, 0.570295, 0.558829, 0.600042, 0.999514, 0.833246, 0.24374, 0.0154709, 0.848761, 0.9958, 0.72799, 0.813976, 0.325564, 0.350278, 0.466454, 0.302844, 0.890359, 0.313658, 0.823481, 0.296992, 0.956713, 0.0910392, 0.650355, 0.557088, 0.095005, 0.352954, 0.156921, 0.309125, 0.71187, 0.141045, 0.256612, 0.310431, 0.679947, 0.431878, 0.373703, 0.0504158, 0.0102907, 0.974581, 0.277101, 0.864156, 0.628683, 0.67264, 0.842547, 0.160469, 0.983212, 0.103462, 0.479975, 0.32402, 0.739311, 0.379698, 0.634078, 0.997384, 0.824819, 0.541734, 0.348484, 0.725955, 0.731188, 0.642025, 0.440999, 0.0768537, 0.129418, 0.478026, 0.132223, 0.305538, 0.201746, 0.156575, 0.633534, 0.752542, 0.904999, 0.379745, 0.880192, 0.387398, 0.712953, 0.956166, 0.913473, 0.599241, 0.685988, 0.676363, 0.49636, 0.876042, 0.226236, 0.643089, 0.833073, 0.425287, 0.218588, 0.453172, 0.301031, 0.129325, 0.672147, 0.0501358, 0.767502, 0.791748, 0.0583502, 0.279158, 0.931757, 0.785566, 0.347409, 0.641288, 0.524969, 0.599637, 0.84177, 0.347914, 0.0694182, 0.564342, 0.968, 0.824233, 0.578435, 0.858182, 0.00754457, 0.187994, 0.688498, 0.556711, 0.882394, 0.801016, 0.986133, 0.656237, 0.265303, 0.681323, 0.0731858, 0.602838, 0.385357, 0.649846, 0.139613, 0.0904347, 0.404407, 0.207975, 0.973413, 0.701989, 0.824314, 0.0984482, 0.679328, 0.626865, 0.269018, 0.957835, 0.842923, 0.331784, 0.412132, 0.520471, 0.497815, 0.822525, 0.871805, 0.0733129, 0.425953, 0.796373, 0.966112, 0.0627229, 0.959532, 0.41307, 0.965177, 0.823462, 0.12273, 0.885688, 0.33166, 0.880389, 0.706374, 0.341835, 0.689376, 0.685831, 0.771321, 0.73638, 0.141495, 0.302706, 0.354543, 0.131411, 0.635745, 0.214079, 0.527011, 0.33498, 0.218695, 0.721317, 0.4567, 0.909037, 0.300844, 0.525485, 0.767189, 0.767813, 0.240571, 0.676688, 0.95017, 0.993843, 0.74748, 0.763925, 0.975675, 0.156042, 0.297274, 0.706146, 0.720106, 0.639694, 0.232139, 0.608569, 0.513802, 0.172265, 0.462801, 0.472826, 0.424445, 0.837643, 0.488186, 0.23021, 0.803263, 0.906617, 0.402349, 0.966051, 0.0956306, 0.220729, 0.557124, 0.220361, 0.393405, 0.773573, 0.246708, 0.505566, 0.283299, 0.772797, 0.374605, 0.734612, 0.5373, 0.281068, 0.757695, 0.218682, 0.981331, 0.599125, 0.542024, 0.428893, 0.420057, 0.118232, 0.207046, 0.65774, 0.964914, 0.858489, 0.734383, 0.369598, 0.347372, 0.784544, 0.773473, 0.869541, 0.893491, 0.362739, 0.663225, 0.860732, 0.67147, 0.952458, 0.466423, 0.387925, 0.778971, 0.114828, 0.998257, 0.0589432, 0.616061, 0.126458, 0.849906, 0.546542, 0.297723, 0.666959, 0.419942, 0.772989, 0.247082, 0.0619857, 0.988765, 0.970786, 0.262429, 0.856642, 0.0921937, 0.296052, 0.673798, 0.656831, 0.956036, 0.802563, 0.113222, 0.399848, 0.292586, 0.865429, 0.609193, 0.141084, 0.177469, 0.437117, 0.905161, 0.89846, 0.389897, 0.052486, 0.697587, 0.119383, 0.395026, 0.0976641, 0.496683, 0.7955, 0.210444, 0.279085, 0.195578, 0.520628, 0.779125, 0.394464, 0.453638, 0.574049, 0.112393, 0.778453, 0.442345, 0.888885, 0.226023, 0.360812, 0.781228, 0.788189, 0.282583, 0.685241, 0.835446, 0.524939, 0.361392, 0.540987, 0.395676, 0.566165, 0.939502, 0.955474, 0.18314, 0.3015, 0.270143, 0.659835, 0.836446, 0.292781, 0.814734, 0.532113, 0.111528, 0.459271, 0.196421, 0.787388, 0.103804, 0.870897, 0.359717, 0.585971, 0.163043, 0.451947, 0.926129, 0.789389, 0.166518, 0.00893984, 0.415228, 0.240198, 0.116047, 0.470002, 0.218984, 0.727727, 0.398721, 0.521073, 0.158229, 0.144604, 0.761999, 0.38401, 0.432494, 0.653375, 0.0730347, 0.616424, 0.280337, 0.862444, 0.440583, 0.559214, 0.147057, 0.704923, 0.93255, 0.263881, 0.534977, 0.920313, 0.064911, 0.106614, 0.624643, 0.555238, 0.784854, 0.727642, 0.203985, 0.826267, 0.800398, 0.904129, 0.518111, 0.605353, 0.996529, 0.118805, 0.730681, 0.419901, 0.562658, 0.871913, 0.293172, 0.764371, 0.633763, 0.569482, 0.157068, 0.353686, 0.682644, 0.593726, 0.215397, 0.144348, 0.466125, 0.649096, 0.545312, 0.0118634, 0.483801, 0.272915, 0.337477, 0.60647, 0.443478, 0.747968, 0.219216, 0.247628, 0.632165, 0.211532, 0.316309, 0.955708, 0.795433, 0.594182, 0.365671, 0.33438, 0.286422, 0.431039, 0.809342, 0.593367, 0.959696, 0.955307, 0.31016, 0.182294, 0.299192, 0.120918, 0.929864, 0.689391, 0.23631, 0.58615, 0.886487, 0.351416, 0.457955, 0.190829, 0.156397, 0.726705, 0.297811, 0.150887, 0.057679, 0.360501, 0.403437, 0.25916, 0.10528, 0.758308, 0.72983, 0.904402, 0.813209, 0.785291, 0.704828, 0.300872, 0.76364, 0.337292, 0.656557, 0.45731, 0.485393, 0.338694, 0.405888, 0.783928, 0.603029, 0.0763875, 0.498216, 0.0564534, 0.744232, 0.555828, 0.584224, 0.368689, 0.592171, 0.385448, 0.0590442, 0.567869, 0.0232154, 0.374745, 0.513172, 0.594496, 0.961366, 0.0157991, 0.13877, 0.711031, 0.995987, 0.231812, 0.695821, 0.702872, 0.556626, 0.705109, 0.329319, 0.493629, 0.576941, 0.449903, 0.822009, 0.168521, 0.619943, 0.017456, 0.710251, 0.310071, 0.0651204, 0.058773, 0.365577, 0.152726, 0.917356, 0.870767, 0.660269, 0.609751, 0.0838286, 0.804317, 0.816216, 0.485209, 0.581226, 0.524509, 0.942802, 0.329456, 0.593995, 0.322137, 0.413573, 0.54018, 0.613874, 0.845805, 0.539607, 0.0206375, 0.528865, 0.0821751, 0.34753, 0.910612, 0.466336, 0.838856, 0.861694, 0.0698929, 0.672051, 0.594492, 0.728451, 0.397881, 0.00461097, 0.702363, 0.188952, 0.939421, 0.946213, 0.960378, 0.389982, 0.520646, 0.24928, 0.29729, 0.337122, 0.690893, 0.427248, 0.188455, 0.795957, 0.474583, 0.981236, 0.151678, 0.41763, 0.165036, 0.371617, 0.235073, 0.30582, 0.133022, 0.735801, 0.451906, 0.839734, 0.668141, 0.896027, 0.981395, 0.884464, 0.0843179, 0.671041, 0.882248, 0.653632, 0.898526, 0.365433, 0.240294, 0.775207, 0.966018, 0.557077, 0.743962, 0.677631, 0.808168, 0.574465, 0.727681, 0.380411, 0.550759, 0.321366, 0.276032, 0.788655, 0.00279036, 0.993586, 0.980278, 0.765003, 0.725823, 0.862131, 0.0946915, 0.0364604, 0.340569, 0.735472, 0.571962, 0.214603, 0.595016, 0.857064, 0.874329, 0.417231, 0.582463, 0.667877, 0.197306, 0.123092, 0.884843, 0.403445, 0.440139, 0.747906, 0.93275, 0.814713, 0.80654, 0.391511, 0.360735, 0.555696, 0.765015, 0.66295, 0.575404, 0.648329, 0.500322, 0.783604, 0.21304, 0.960552, 0.980978, 0.539858, 0.13802, 0.28033, 0.39874, 0.227902, 0.209034, 0.770591, 0.301531, 0.368787, 0.801642, 0.279324, 0.907473, 0.501665, 0.307345, 0.968106, 0.933816, 0.459697, 0.770253, 0.581576, 0.0688806, 0.259007, 0.327849, 0.178024, 0.222708, 0.912022, 0.615995, 0.102392, 0.594242, 0.749859, 0.538833, 0.968877, 0.659977, 0.461957, 0.372547, 0.0160606, 0.228645, 0.782572, 0.405235, 0.387843, 0.914316, 0.751925, 0.236772, 0.729338, 0.561382, 0.553663, 0.725962, 0.519571, 0.440092, 0.168168, 0.206103, 0.377336, 0.334977, 0.883353, 0.216671, 0.877449, 0.838604, 0.273019, 0.597619, 0.366431, 0.915683, 0.655653, 0.252677, 0.886238, 0.542183, 0.502111, 0.608109, 0.326259, 0.0906759, 0.679254, 0.0147414, 0.777385, 0.00221018, 0.241277, 0.775484, 0.347707, 0.854678, 0.636974, 0.499864, 0.161999, 0.327853, 0.635921, 0.299185, 0.874256, 0.830407, 0.735375, 0.632697, 0.906426, 0.199595, 0.273056, 0.236413, 0.32598, 0.645958, 0.801011, 0.457271, 0.985472, 0.246888, 0.421704, 0.871138, 0.884915, 0.404577, 0.391836, 0.877224, 0.847255, 0.872369, 0.969852, 0.892759, 0.400235, 0.347586, 0.161509, 0.0347511, 0.13587, 0.455344, 0.995971, 0.712554, 0.553124, 0.106507, 0.0318053, 0.906824, 0.555715, 0.296352, 0.0706357, 0.446166, 0.952881, 0.586039, 0.745597, 0.888554, 0.602956, 0.515031, 0.28764, 0.0158423, 0.316142, 0.842837, 0.154322, 0.0279544, 0.410253, 0.306332, 0.824045, 0.919182, 0.935183, 0.0303386, 0.397972, 0.50727, 0.832767, 0.60966, 0.26604, 0.708126, 0.610427, 0.751626, 0.777763, 0.804541, 0.249522, 0.27554, 0.88482, 0.307588, 0.345245, 0.730903, 0.978285, 0.50753, 0.9094, 0.482313, 0.296566, 0.609479, 0.57509, 0.29013, 0.691454, 0.886938, 0.0939114, 0.841611, 0.489405, 0.910133, 0.919384, 0.145776, 0.53278, 0.960463, 0.703907, 0.735499, 0.180398, 0.744317, 0.739894, 0.974108, 0.253742, 0.10396, 0.185484, 0.309632, 0.30132, 0.453218, 0.950699, 0.171613, 0.2543, 0.431187, 0.0848507, 0.436987, 0.698256, 0.874196, 0.86954, 0.187222, 0.394914, 0.605215, 0.419544, 0.152479, 0.199695, 0.0773146, 0.682431, 0.502337, 0.569457, 0.709919, 0.720315, 0.444999, 0.449921, 0.914747, 0.725205, 0.0537083, 0.206684, 0.419841, 0.149202, 0.269791, 0.181819, 0.577072, 0.591886, 0.364795, 0.953729, 0.521686, 0.581989, 0.999322, 0.636341, 0.829721, 0.874806, 0.705226, 0.795947, 0.215506, 0.0102638, 0.0343296, 0.800241, 0.192067, 0.484436, 0.629007, 0.780006, 0.00131953, 0.485003, 0.942173, 0.120313, 0.341539, 0.214798, 0.188026, 0.692592, 0.713431, 0.691049, 0.630346, 0.4873, 0.571554, 0.787812, 0.331332, 0.0872181, 0.130659, 0.394247, 0.09801, 0.695021, 0.989159, 0.837546, 0.200426, 0.240456, 0.922907, 0.270908, 0.65915, 0.158174, 0.00334375, 0.746574, 0.851048, 0.587035, 0.0633085, 0.913169, 0.777554, 0.236667, 0.234207, 0.17911, 0.186361, 0.903656, 0.333015, 0.875141, 0.645586, 0.318849, 0.664855, 0.878928, 0.762863, 0.977254, 0.0172621, 0.201766, 0.862212, 0.574036, 0.244244, 0.731959, 0.40921, 0.494382, 0.193301, 0.570127, 0.151417, 0.74944, 0.126903, 0.185286, 0.453312, 0.936876, 0.327583, 0.134956, 0.50641, 0.459594, 0.424571, 0.990207, 0.064337, 0.106534, 0.526547, 0.8594, 0.332429, 0.0639371, 0.772424, 0.826797, 0.618949, 0.772937, 0.53056, 0.00973798, 0.39374, 0.884778, 0.245443, 0.06919, 0.594798, 0.184776, 0.364028, 0.873345, 0.580107, 0.158233, 0.0446554, 0.69395, 0.971424, 0.574679, 0.0773261, 0.944376, 0.12155, 0.287307, 0.176213, 0.518498, 0.232103, 0.792641, 0.297863, 0.276815, 0.561422, 0.994374, 0.191645, 0.804779, 0.981542, 0.636961, 0.643547, 0.744312, 0.604157, 0.847172, 0.579992, 0.496372, 0.858127, 0.369366, 0.205903, 0.730069, 0.479403, 0.868542, 0.136488, 0.90674, 0.529816, 0.781855, 0.0649976, 0.668096, 0.494856, 0.0638234, 0.360958, 0.552289, 0.238966, 0.49305, 0.190249, 0.761841, 0.407433, 0.80929, 0.555612, 0.483822, 0.471128, 0.262473, 0.321644, 0.437509, 0.671387, 0.307411, 0.121059, 0.720705, 0.932223, 0.898239, 0.599308, 0.125401, 0.368328, 0.353016, 0.328337, 0.937212, 0.514395, 0.17328, 0.359606, 0.711442, 0.232667, 0.26698, 0.491444, 0.74731, 0.930641, 0.797538, 0.863282, 0.2168, 0.502098, 0.721903, 0.553448, 0.466544, 0.303485, 0.294104, 0.183489, 0.65499, 0.802825, 0.935142, 0.984117, 0.383918, 0.188537, 0.331175, 0.550642, 0.471258, 0.762299, 0.919209, 0.745168, 0.914067, 0.0416888, 0.0975676, 0.0931216, 0.607324, 0.178878, 0.12279, 0.893096, 0.690991, 0.900308, 0.800631, 0.926555, 0.711897, 0.288533, 0.332376, 0.00905249, 0.84123, 0.960575, 0.0319604, 0.369096, 0.767044, 0.715626, 0.525262, 0.252224, 0.565997, 0.343859, 0.158063, 0.138894, 0.689129, 0.342809, 0.183794, 0.82614, 0.991731, 0.755848, 0.0108939, 0.714842, 0.800775, 0.560252, 0.692211, 0.694404, 0.311101, 0.135252, 0.866966, 0.38565, 0.347737, 0.106284, 0.93013, 0.586545, 0.264152, 0.446422, 0.705464, 0.185858, 0.488937, 0.251186, 0.840572, 0.14205, 0.364426, 0.469244, 0.570762, 0.552092, 0.426965, 0.841185, 0.132047, 0.375376, 0.887949, 0.541828, 0.647123, 0.560808, 0.495915, 0.0962973, 0.0385913, 0.553713, 0.874003, 0.474506, 0.000777658, 0.444272, 0.884977, 0.688203, 0.212003, 0.0802666, 0.235195, 0.397631, 0.0417011, 0.214066, 0.579276, 0.54287, 0.344086, 0.86551, 0.583989, 0.312997, 0.515879, 0.104037, 0.110049, 0.222868, 0.293697, 0.625381, 0.010964, 0.777401, 0.701773, 0.797638, 0.0793351, 0.820053, 0.407289, 0.226114, 0.90848, 0.0343324, 0.45694, 0.035028, 0.641701, 0.947505, 0.699581, 0.849871, 0.547629, 0.755379, 0.0390888, 0.311657, 0.812492, 0.020861, 0.0942137, 0.680174, 0.176826, 0.322858, 0.687073, 0.854345, 0.381066, 0.616549, 0.749572, 0.767614, 0.528256, 0.511663, 0.221588, 0.724295, 0.511734, 0.768513, 0.51312, 0.122633, 0.522321, 0.805992, 0.776932, 0.676213, 0.208613, 0.353855, 0.76291, 0.448692, 0.498069, 0.830893, 0.913691, 0.0222994, 0.0578672, 0.750894, 0.926357, 0.987307, 0.976556, 0.235189, 0.516564, 0.0200475, 0.906917, 0.350626, 0.213812, 0.283041, 0.589167, 0.68681, 0.561795, 0.992766, 0.942088, 0.310273, 0.490602, 0.949859, 0.275675, 0.522123, 0.719316, 0.370759, 0.365939, 0.598772, 0.626904, 0.0987906, 0.526551, 0.478697, 0.559602, 0.0273137, 0.148764, 0.271684, 0.965364, 0.363064, 0.987974, 0.650176, 0.617937, 0.00130275, 0.402278, 0.837153, 0.736941, 0.205603, 0.449054, 0.84464, 0.451436, 0.131468, 0.891429, 0.177098, 0.36259, 0.88528, 0.223152, 0.216514, 0.213914, 0.136098, 0.75117, 0.138026, 0.0987427, 0.792407, 0.0353701, 0.0906482, 0.639022, 0.622591, 0.895374, 0.26032, 0.345129, 0.0747699, 0.738453, 0.333885, 0.919971, 0.352252, 0.578604, 0.937149, 0.144683, 0.253752, 0.256942, 0.457853, 0.471414, 0.507352, 0.892234, 0.909228, 0.00329278, 0.0180677, 0.796181, 0.20146, 0.142061, 0.987358, 0.76974, 0.167349, 0.143547, 0.508355, 0.822919, 0.645006, 0.571511, 0.298048, 0.460747, 0.394257, 0.501418, 0.615513, 0.6513, 0.983713, 0.326694, 0.755208, 0.0988431, 0.0870775, 0.0398203, 0.249378, 0.542663, 0.732222, 0.704023, 0.435363, 0.7424, 0.901974, 0.688849, 0.0487533, 0.445071, 0.622934, 0.3675, 0.547532, 0.197576, 0.311719, 0.00565676, 0.819191, 0.392192, 0.819148, 0.805763, 0.294271, 0.6616, 0.427193, 0.136726, 0.601793, 0.094568, 0.911729, 0.16542, 0.0812021, 0.805632, 0.26551, 0.0902784, 0.308651, 0.32682, 0.215467, 0.96553, 0.789361, 0.449022, 0.445233, 0.0265775, 0.418994, 0.151084, 0.135968, 0.92182, 0.134002, 0.434998, 0.487732, 0.642278, 0.258272, 0.539513, 0.0268435, 0.741964, 0.540567, 0.621808, 0.408971, 0.768853, 0.570809, 0.969586, 0.282704, 0.925872, 0.325744, 0.362651, 0.833404, 0.232724, 0.403817, 0.567664, 0.952683, 0.0419014, 0.353897, 0.191945, 0.998043, 0.159514, 0.231205, 0.275391, 0.42408, 0.178731, 0.498255, 0.362033, 0.841557, 0.636187, 0.244842, 0.813572, 0.295401, 0.197305, 0.965915, 0.608717, 0.820573, 0.0090073, 0.478346, 0.0721363, 0.736803, 0.923146, 0.641174, 0.985651, 0.0365937, 0.515331, 0.473106, 0.390553, 0.252486, 0.731916, 0.374309, 0.223908, 0.637786, 0.925047, 0.526012, 0.98548, 0.924257, 0.312522, 0.133142, 0.0482379, 0.473875, 0.128306, 0.393488, 0.679431, 0.383353, 0.603976, 0.00586202, 0.272987, 0.797249, 0.898166, 0.445249, 0.0574907, 0.134751, 0.616874, 0.0232398, 0.175256, 0.321776, 0.1898, 0.449263, 0.33701, 0.10175, 0.206535, 0.10799, 0.169666, 0.462349, 0.454415, 0.392774, 0.900612, 0.192834, 0.0137032, 0.0178092, 0.555685, 0.224059, 0.35258, 0.887389, 0.485591, 0.617759, 0.623354, 0.340261, 0.878144, 0.891336, 0.701189, 0.880464, 0.381086, 0.00327111, 0.108989, 0.707695, 0.90182, 0.388077, 0.789142, 0.911373, 0.666312, 0.571874, 0.865994, 0.0116219, 0.114747, 0.870926, 0.859643, 0.00323219, 0.0135644, 0.823899, 0.051973, 0.264082, 0.998878, 0.0403321, 0.846126, 0.064427, 0.163861, 0.593141, 0.748308, 0.904944, 0.282592, 0.0527456, 0.886154, 0.626503, 0.528129, 0.230604, 0.824467, 0.140143, 0.0196574, 0.23524, 0.69417, 0.435249, 0.630171, 0.846594, 0.654387, 0.325503, 0.979048, 0.728364, 0.192634, 0.834208, 0.0565809, 0.804196, 0.0184922, 0.0137656, 0.782126, 0.147527, 0.0799028, 0.64633, 0.237645, 0.670488, 0.422177, 0.265002, 0.65076, 0.199112, 0.0910186, 0.816517, 0.518889, 0.6201, 0.412025, 0.492492, 0.491252, 0.985639, 0.7657, 0.150037, 0.147065, 0.0873867, 0.872067, 0.21046, 0.911581, 0.0925562, 0.519009, 0.969517, 0.0459625, 0.664883, 0.762107, 0.833484, 0.668001, 0.406106, 0.0284692, 0.356254, 0.170324, 0.927495, 0.317833, 0.00615591, 0.56578, 0.692096, 0.248763, 0.750471, 0.405881, 0.919707, 0.977053, 0.821874, 0.0312805, 0.471579, 0.268082, 0.880038, 0.870717, 0.963674, 0.206997, 0.415366, 0.549987, 0.846256, 0.34677, 0.20934, 0.542081, 0.112321, 0.675948, 0.518671, 0.656701, 0.621171, 0.548739, 0.837395, 0.936235, 0.273487, 0.421024, 0.145012, 0.0126815, 0.670202, 0.970681, 0.805192, 0.501387, 0.9467, 0.290478, 0.808476, 0.931461, 0.871901, 0.611392, 0.515823, 0.583067, 0.693718, 0.584383, 0.819427, 0.946328, 0.917942, 0.47207, 0.531398, 0.0807021, 0.767138, 0.66715, 0.642545, 0.946657, 0.216715, 0.510254, 0.654515, 0.497081, 0.48995, 0.538192, 0.201574, 0.752296, 0.391295, 0.305656, 0.20921, 0.330178, 0.984512, 0.931774, 0.769527, 0.906174, 0.284548, 0.421696, 0.819102, 0.255651, 0.544797, 0.810979, 0.912587, 0.673852, 0.750697, 0.233697, 0.35362, 0.956389, 0.959141, 0.0190663, 0.289421, 0.317616, 0.0699108, 0.235855, 0.784889, 0.136121, 0.486156, 0.112423, 0.363548, 0.149246, 0.175064, 0.439234, 0.801776, 0.286258, 0.728427, 0.17595, 0.307135, 0.935157, 0.749456, 0.193305, 0.368802, 0.720708, 0.338627, 0.204435, 0.865355, 0.0702231, 0.538829, 0.389271, 0.821794, 0.508844, 0.855184, 0.206595, 0.402728, 0.306347, 0.129643, 0.750954, 0.0773251, 0.333561, 0.37314, 0.617978, 0.144395, 0.382954, 0.704227, 0.357421, 0.129209, 0.83736, 0.975836, 0.272759, 0.780056, 0.571226, 0.540537, 0.169283, 0.071173, 0.448437, 0.343956, 0.106477, 0.787509, 0.88849, 0.0674257, 0.572059, 0.974853, 0.937704, 0.263151, 0.61667, 0.344633, 0.351047, 0.0186771, 0.344398, 0.19507, 0.559431, 0.583208, 0.827275, 0.0812181, 0.383126, 0.5464, 0.570708, 0.276859, 0.901026, 0.743717, 0.721394, 0.25876, 0.892386, 0.772171, 0.0512278, 0.51966, 0.847713, 0.897012, 0.826788, 0.00636873, 0.211952, 0.447471, 0.951253, 0.132729, 0.739933, 0.692215, 0.152446, 0.704046, 0.103456, 0.513915, 0.728064, 0.0417322, 0.189512, 0.181578, 0.37114, 0.862312, 0.405194, 0.00510079, 0.178813, 0.00954289, 0.94835, 0.298806, 0.608421, 0.667955, 0.997134, 0.663122, 0.763772, 0.185894, 0.262087, 0.974947, 0.640075, 0.898494, 0.864845, 0.960168, 0.134398, 0.971132, 0.613015, 0.486827, 0.939965, 0.3703, 0.105103, 0.0663184, 0.372946, 0.479501, 0.105647, 0.727137, 0.399131, 0.205576, 0.384866, 0.0618376, 0.817596, 0.0388573, 0.594512, 0.173804, 0.855658, 0.101565, 0.366431, 0.0515843, 0.371371, 0.722805, 0.404299, 0.590029, 0.0486788, 0.0769522, 0.192199, 0.89153, 0.0824779, 0.184488, 0.317731, 0.298764, 0.524211, 0.740081, 0.0751576, 0.677991, 0.645256, 0.821468, 0.959768, 0.664128, 0.776426, 0.760039, 0.514726, 0.0305994, 0.270476, 0.041064, 0.541011, 0.874955, 0.961098, 0.498787, 0.714625, 0.845608, 0.679769, 0.42589, 0.0675676, 0.150137, 0.868572, 0.918925, 0.62686, 0.765263, 0.159211, 0.0809829, 0.54262, 0.771211, 0.447672, 0.234558, 0.277458, 0.0216618, 0.629838, 0.701434, 0.417866, 0.896705, 0.361485, 0.0588967, 0.807243, 0.808105, 0.143687, 0.545155, 0.792441, 0.730585, 0.376137, 0.317132, 0.673849, 0.966338, 0.841097, 0.952571, 0.580044, 0.226831, 0.946181, 0.702304, 0.334078, 0.0722082, 0.112592, 0.116075, 0.573995, 0.972941, 0.384045, 0.591413, 0.578233, 0.0721871, 0.746136, 0.820278, 0.423675, 0.961072, 0.561365, 0.856365, 0.651747, 0.994307, 0.0627695, 0.612759, 0.657777, 0.147026, 0.383492, 0.604057, 0.542221, 0.57693, 0.485087, 0.96997, 0.584556, 0.0710188, 0.53617, 0.857877, 0.300881, 0.788797, 0.882248, 0.870584, 0.647004, 0.0800327, 0.292343, 0.696522, 0.226362, 0.736003, 0.0775605, 0.0155354, 0.399078, 0.46536, 0.892267, 0.321188, 0.594121, 0.0718052, 0.32176, 0.846072, 0.33626, 0.164579, 0.049256, 0.718731, 0.517533, 0.896032, 0.582994, 0.773891, 0.515742, 0.735114, 0.192266, 0.870132, 0.211024, 0.458395, 0.0646748, 0.816954, 0.9889, 0.747679, 0.428774, 0.0195346, 0.139605, 0.203366, 0.103588, 0.85924, 0.0981775, 0.221539, 0.0128668, 0.273743, 0.222276, 0.789723, 0.948841, 0.76955, 0.096254, 0.184291, 0.86163, 0.372266, 0.0883018, 0.940716, 0.346417, 0.376696, 0.921643, 0.206702, 0.828796, 0.209551, 0.811755, 0.789655, 0.463534, 0.785495, 0.582792, 0.08772, 0.960717, 0.41261, 0.541069, 0.560536, 0.160356, 0.216015, 0.722684, 0.650591, 0.643378, 0.821075, 0.245157, 0.206439, 0.391602, 0.97929, 0.826906, 0.202789, 0.0945328, 0.348373, 0.623106, 0.886295, 0.101004, 0.438883, 0.512111, 0.640436, 0.316134, 0.0976838, 0.775334, 0.860079, 0.430115, 0.209609, 0.454237, 0.531859, 0.00843881, 0.424001, 0.349336, 0.779242, 0.208718, 0.311589, 0.149421, 0.414515, 0.877802, 0.928613, 0.180454, 0.161653, 0.393545, 0.606784, 0.744265, 0.835414, 0.326639, 0.533545, 0.0654361, 0.738186, 0.917834, 0.151804, 0.515367, 0.58829, 0.00394297, 0.962013, 0.137931, 0.383815, 0.915434, 0.014898, 0.830232, 0.965526, 0.309276, 0.65653, 0.650565, 0.095314, 0.527773, 0.181954, 0.122552, 0.35269, 0.472954, 0.0123366, 0.432987, 0.284771, 0.870714, 0.204394, 0.715494, 0.421107, 0.76778, 0.353974, 0.645342, 0.285393, 0.87628, 0.0517254, 0.470937, 0.417002, 0.650161, 0.949794, 0.30027, 0.666194, 0.682279, 0.526796, 0.508713, 0.91281, 0.0628552, 0.113695, 0.912997, 0.769714, 0.857324, 0.313152, 0.664986, 0.21166, 0.247659, 0.237378, 0.727705, 0.200328, 0.305774, 0.203644, 0.822602, 0.37086, 0.232025, 0.695365, 0.270604, 0.319389, 0.193718, 0.682487, 0.359624, 0.750914, 0.825571, 0.927503, 0.764489, 0.84035, 0.113934, 0.0500237, 0.926019, 0.56567, 0.616827, 0.23388, 0.473759, 0.70013, 0.974772, 0.169055, 0.10647, 0.826032, 0.906048, 0.0714178, 0.987559, 0.274953, 0.128556, 0.700137, 0.0632663, 0.92487, 0.738529, 0.406588, 0.284953, 0.311487, 0.756152, 0.861598, 0.61967, 0.288971, 0.309857, 0.579817, 0.457184, 0.348044, 0.388976, 0.736399, 0.864035, 0.890982, 0.274802, 0.22692, 0.422194, 0.826935, 0.314869, 0.0339264, 0.0421313, 0.177218, 0.0207811, 0.132176, 0.286861, 0.823502, 0.0474397, 0.807458, 0.868916, 0.362884, 0.993984, 0.419491, 0.660039, 0.99099, 0.599047, 0.877648, 0.344249, 0.113648, 0.210306, 0.491341, 0.956818, 0.437145, 0.658771, 0.750698, 0.324197, 0.718631, 0.584393, 0.055116, 0.0249433, 0.521817, 0.777152, 0.757824, 0.150538, 0.0276715, 0.0475303, 0.996481, 0.828652, 0.939678, 0.840537, 0.279091, 0.328291, 0.200324, 0.352818, 0.581722, 0.419725, 0.403519, 0.49856, 0.768156, 0.67908, 0.520272, 0.778047, 0.933585, 0.548489, 0.357608, 0.251649, 0.611211, 0.728919, 0.525709, 0.135838, 0.603606, 0.625682, 0.0136436, 0.156557, 0.243296, 0.0818856, 0.856759, 0.173989, 0.231058, 0.5472, 0.126285, 0.720134, 0.758737, 0.679699, 0.915199, 0.826776, 0.219521, 0.584993, 0.241556, 0.783745, 0.202263, 0.793945, 0.271308, 0.577369, 0.548968, 0.335643, 0.444673, 0.473328, 0.651202, 0.631931, 0.587115, 0.735795, 0.601255, 0.961266, 0.339463, 0.232631, 0.922583, 0.292956, 0.35933, 0.853628, 0.306667, 0.00139812, 0.854761, 0.25882, 0.713127, 0.947542, 0.293397, 0.404635, 0.117932, 0.122836, 0.583413, 0.809211, 0.195561, 0.967682, 0.705693, 0.633366, 0.383304, 0.955578, 0.0568998, 0.879834, 0.654029, 0.531025, 0.54895, 0.37417, 0.536177, 0.466993, 0.480903, 0.663043, 0.389677, 0.169098, 0.643039, 0.532917, 0.456419, 0.893383, 0.713274, 0.802183, 0.648224, 0.00211824, 0.791559, 0.338353, 0.345956, 0.285798, 0.474201, 0.665453, 0.540921, 0.0428913, 0.862996, 0.750627, 0.275932, 0.709712, 0.524933, 0.757441, 0.536971, 0.629938, 0.223009, 0.839669, 0.961988, 0.0560968, 0.011461, 0.11266, 0.141584, 0.918288, 0.622703, 0.802097, 0.843312, 0.590929, 0.403981, 0.648432, 0.517367, 0.930954, 0.720151, 0.242404, 0.337773, 0.93929, 0.243685, 0.400477, 0.928123, 0.635857, 0.815884, 0.320734, 0.389107, 0.0263945, 0.240817, 0.00669968, 0.297484, 0.458402, 0.700029, 0.727746, 0.557621, 0.171227, 0.869515, 0.868918, 0.621846, 0.921996, 0.997787, 0.425811, 0.253914, 0.550426, 0.9278, 0.31154, 0.313836, 0.566579, 0.942595, 0.39588, 0.800495, 0.684254, 0.547619, 0.113869, 0.69799, 0.854356, 0.78815, 0.939179, 0.640633, 0.395235, 0.832261, 0.0404723, 0.221356, 0.183182, 0.654481, 0.149301, 0.757693, 0.603265, 0.0838338, 0.29521, 0.314195, 0.533095, 0.10218, 0.0232758, 0.855926, 0.579563, 0.914892, 0.464866, 0.844169, 0.152526, 0.672769, 0.502728, 0.974392, 0.570655, 0.655723, 0.59724, 0.614872, 0.199059, 0.605251, 0.186892, 0.0984888, 0.494894, 0.695916, 0.0597618, 0.759769, 0.230111, 0.563326, 0.0667818, 0.620895, 0.646685, 0.940375, 0.84536, 0.114677, 0.608223, 0.142101, 0.420423, 0.252474, 0.0604144, 0.875979, 0.905167, 0.0265054, 0.466251, 0.75565, 0.0740227, 0.877662, 0.650452, 0.92081, 0.3777, 0.626005, 0.907778, 0.516238, 0.611419, 0.226706, 0.371777, 0.376579, 0.966798, 0.682201, 0.506406, 0.0761719, 0.930662, 0.678035, 0.7321, 0.353314, 0.937612, 0.957416, 0.239887, 0.981352, 0.744812, 0.154989, 0.950178, 0.958441, 0.408084, 0.295179, 0.464794, 0.949799, 0.469583, 0.362328, 0.723564, 0.902623, 0.300571, 0.613874, 0.503863, 0.338771, 0.778864, 0.781723, 0.780094, 0.870503, 0.565277, 0.146562, 0.220441, 0.0403779, 0.570337, 0.525284, 0.813142, 0.604706, 0.774011, 0.463355, 0.404553, 0.707355, 0.628562, 0.204487, 0.164525, 0.0826636, 0.692862, 0.719929, 0.365481, 0.786214, 0.694265, 0.0199902, 0.586621, 0.267635, 0.972709, 0.757734, 0.602918, 0.143402, 0.414592, 0.125973, 0.287903, 0.958884, 0.960068, 0.0520962, 0.0517856, 0.8543, 0.704178, 0.0884781, 0.271183, 0.423453, 0.903875, 0.881974, 0.957884, 0.443705, 0.922107, 0.265558, 0.17788, 0.981575, 0.161273, 0.678772, 0.385417, 0.252879, 0.0682349, 0.249464, 0.873124, 0.849096, 0.947327, 0.678964, 0.777931, 0.816525, 0.0929126, 0.108118, 0.449243, 0.899974, 0.0665108, 0.5858, 0.531323, 0.927827, 0.0103511, 0.0709703, 0.98223, 0.142706, 0.842133, 0.911505, 0.504504, 0.110272, 0.692185, 0.269672, 0.0712576, 0.187133, 0.619414, 0.961262, 0.854949, 0.493323, 0.351446, 0.128194, 0.0557344, 0.653307, 0.130216, 0.988166, 0.253008, 0.152657, 0.88042, 0.120014, 0.798364, 0.0106696, 0.67923, 0.251691, 0.701816, 0.527149, 0.52756, 0.0415346, 0.383856, 0.00619447, 0.389934, 0.875241, 0.501905, 0.906452, 0.723437, 0.664307, 0.360348, 0.312127, 0.366683, 0.720471, 0.83222, 0.0103533, 0.519401, 0.257593, 0.302394, 0.207028, 0.568188, 0.316302, 0.0292051, 0.34822, 0.15207, 0.83051, 0.379777, 0.2471, 0.114589, 0.331163, 0.185262, 0.573429, 0.0430788, 0.363802, 0.840727, 0.353224, 0.609202, 0.64672, 0.706685, 0.504047, 0.820693, 0.801658, 0.0572598, 0.637391, 0.191445, 0.267491, 0.854911, 0.0953261, 0.852589, 0.716014, 0.822446, 0.512768, 0.352639, 0.0350068, 0.774418, 0.119878, 0.841299, 0.206156, 0.497147, 0.655733, 0.0179589, 0.837417, 0.269018, 0.104988, 0.695914, 0.633118, 0.245564, 0.636497, 0.201487, 0.0914673, 0.493446, 0.263571, 0.729389, 0.722021, 0.0341174, 0.308849, 0.518817, 0.00421491, 0.149905, 0.197745, 0.0727395, 0.680185, 0.734017, 0.626194, 0.853396, 0.983469, 0.888025, 0.643226, 0.688728, 0.0733777, 0.751326, 0.0737934, 0.815835, 0.434945, 0.0172566, 0.764255, 0.677955, 0.673818, 0.831331, 0.535208, 0.500875, 0.215157, 0.985641, 0.443511, 0.416833, 0.484668, 0.0193438, 0.573345, 0.225457, 0.927377, 0.0517498, 0.643728, 0.660206, 0.39357, 0.643083, 0.775607, 0.542725, 0.079272, 0.0208061, 0.390891, 0.671967, 0.331133, 0.25388, 0.896223, 0.645433, 0.799778, 0.797972, 0.488416, 0.156987, 0.845106, 0.285015, 0.770429, 0.372185, 0.728626, 0.736244, 0.118279, 0.550658, 0.30722, 0.561361, 0.886628, 0.923549, 0.304531, 0.218098, 0.394841, 0.0267663, 0.242774, 0.258786, 0.244238, 0.117854, 0.0932354, 0.2854, 0.464496, 0.00752329, 0.429269, 0.273578, 0.712826, 0.616639, 0.511301, 0.347792, 0.356546, 0.152697, 0.609434, 0.953238, 0.723729, 0.632691, 0.907658, 0.0527546, 0.707755, 0.419546, 0.535719, 0.872594, 0.0125693, 0.0043075, 0.130423, 0.895473, 0.788803, 0.490615, 0.147407, 0.132436, 0.680474, 0.0769968, 0.0233969, 0.22011, 0.0224425, 0.411541, 0.0301846, 0.165329, 0.755186, 0.301133, 0.937698, 0.450628, 0.49429, 0.221952, 0.659716, 0.635105, 0.322943, 0.108761, 0.63984, 0.0847122, 0.355704, 0.915998, 0.910214, 0.684879, 0.759497, 0.364458, 0.50224, 0.701672, 0.494477, 0.516754, 0.505819, 0.677254, 0.44494, 0.093918, 0.0450103, 0.470969, 0.61147, 0.142336, 0.20379, 0.252378, 0.701415, 0.41394, 0.389155, 0.575148, 0.0904997, 0.160174, 0.442228, 0.335517, 0.606848, 0.491457, 0.741488, 0.904751, 0.816057, 0.946159, 0.945805, 0.967881, 0.8091, 0.835975, 0.380987, 0.868559, 0.345182, 0.899446, 0.0734777, 0.332584, 0.212357, 0.546893, 0.294194, 0.0126306, 0.21435, 0.0615077, 0.518999, 0.758815, 0.564635, 0.499624, 0.644529, 0.220087, 0.171863, 0.147525, 0.540522, 0.00824396, 0.227479, 0.977094, 0.839567, 0.216683, 0.354336, 0.185727, 0.868563, 0.750004, 0.724345, 0.470594, 0.521224, 0.190473, 0.683208, 0.528662, 0.461864, 0.56832, 0.952714, 0.712739, 0.546274, 0.0122462, 0.275508, 0.918051, 0.526557, 0.681236, 0.398984, 0.63048, 0.354933, 0.403561, 0.101648, 0.0562702, 0.241833, 0.592405, 0.421249, 0.657693, 0.0846664, 0.234533, 0.0396919, 0.474402, 0.489025, 0.543942, 0.0897639, 0.580506, 0.289577, 0.0660818, 0.0762375, 0.628673, 0.506282, 0.0681379, 0.0899876, 0.796152, 0.818178, 0.16779, 0.790892, 0.043165, 0.414121, 0.99349, 0.684195, 0.311252, 0.302221, 0.675541, 0.270056, 0.959073, 0.326282, 0.664505, 0.559604, 0.0952867, 0.551741, 0.0928987, 0.561517, 0.407526, 0.937794, 0.303156, 0.4952, 0.705503, 0.537706, 0.635268, 0.5738, 0.94522, 0.322591, 0.3247, 0.529497, 0.757241, 0.321749, 0.142469, 0.882844, 0.573009, 0.116535, 0.523637, 0.565337, 0.513183, 0.103523, 0.879514, 0.144516, 0.619534, 0.919028, 0.341362, 0.888068, 0.772503, 0.723993, 0.411224, 0.541629, 0.256347, 0.0795694, 0.746589, 0.519741, 0.377331, 0.616379, 0.839363, 0.337203, 0.0567739, 0.9393, 0.0770384, 0.632138, 0.186337, 0.880371, 0.85753, 0.247797, 0.289247, 0.961378, 0.129725, 0.983914, 0.050808, 0.437132, 0.226872, 0.815869, 0.595999, 0.746545, 0.549781, 0.987117, 0.0934909, 0.126796, 0.64447, 0.718189, 0.048991, 0.611927, 0.686634, 0.100763, 0.742385, 0.0734721, 0.97888, 0.024929, 0.815125, 0.45628, 0.107423, 0.941999, 0.522722, 0.273253, 0.0154277, 0.730733, 0.578584, 0.364589, 0.857841, 0.901476, 0.0449603, 0.33454, 0.828717, 0.153718, 0.539485, 0.309033, 0.384265, 0.924793, 0.545885, 0.702045, 0.359185, 0.383262, 0.539557, 0.691854, 0.471785, 0.853779, 0.857287, 0.0927615, 0.60401, 0.0880085, 0.621144, 0.506072, 0.440031, 0.737594, 0.917021, 0.799029, 0.666887, 0.186601, 0.714612, 0.366976, 0.550683, 0.733676, 0.0375142, 0.967885, 0.252707, 0.707691, 0.115038, 0.225648, 0.467573, 0.958789, 0.881286, 0.17738, 0.290469, 0.295604, 0.413997, 0.637772, 0.727194, 0.330566, 0.627053, 0.583289, 0.740741, 0.773945, 0.342496, 0.533862, 0.870174, 0.989627, 0.873875, 0.561373, 0.441546, 0.708051, 0.268613, 0.26053, 0.509849, 0.507627, 0.98207, 0.684085, 0.181028, 0.906017, 0.00216948, 0.336878, 0.597817, 0.51993, 0.249721, 0.0256173, 0.208029, 0.143804, 0.611499, 0.32617, 0.7734, 0.0544934, 0.254328, 0.180442, 0.370125, 0.870335, 0.224201, 0.451518, 0.387688, 0.957677, 0.622975, 0.8907, 0.303326, 0.0985096, 0.895284, 0.489867, 0.806726, 0.884398, 0.277065, 0.0636961, 0.398198, 0.0958202, 0.312547, 0.964302, 0.757456, 0.892549, 0.256111, 0.0147848, 0.241539, 0.859771, 0.925692, 0.824503, 0.601704, 0.447839, 0.512976, 0.19286, 0.147443, 0.0169463, 0.979687, 0.567411, 0.827278, 0.0896635, 0.716312, 0.772048, 0.362417, 0.405062, 0.916391, 0.962836, 0.118004, 0.388326, 0.783519, 0.0244739, 0.781859, 0.433875, 0.986643, 0.282539, 0.00296915, 0.141867, 0.126083, 0.0856213, 0.620482, 0.241517, 0.441718, 0.133953, 0.602742, 0.119222, 0.0663478, 0.812402, 0.208449, 0.233881, 0.865819, 0.366654, 0.154105, 0.415295, 0.721995, 0.577181, 0.390623, 0.0315853, 0.738421, 0.980721, 0.573123, 0.0620009, 0.524203, 0.321561, 0.955075, 0.256743, 0.00204561, 0.953667, 0.472738, 0.0420401, 0.392787, 0.259279, 0.730203, 0.997399, 0.254064, 0.103841, 0.00265456, 0.874534, 0.593939, 0.983618, 0.5476, 0.0546917, 0.0322818, 0.250248, 0.304583, 0.311665, 0.696452, 0.329408, 0.994201, 0.409265, 0.00786796, 0.781897, 0.212029, 0.24925, 0.644273, 0.0803339, 0.528839, 0.964255, 0.920708, 0.535481, 0.900399, 0.357512, 0.975778, 0.838073, 0.497157, 0.273335, 0.966203, 0.791596, 0.688788, 0.0249902, 0.94414, 0.310898, 0.423375, 0.388014, 0.927173, 0.865875, 0.851401, 0.387537, 0.206307, 0.256625, 0.912294, 0.481787, 0.601942, 0.0410598, 0.903484, 0.68312, 0.748168, 0.920237, 0.793257, 0.152311, 0.594561, 0.656997, 0.69248, 0.69695, 0.972571, 0.543518, 0.879487, 0.923869, 0.091676, 0.134122, 0.912097, 0.707876, 0.0427013, 0.087932, 0.260906, 0.43408, 0.526185, 0.33047, 0.798255, 0.647453, 0.368317, 0.78966, 0.767112, 0.464327, 0.348322, 0.528336, 0.867542, 0.162588, 0.335524, 0.154495, 0.959609, 0.817976, 0.108975, 0.715679, 0.976916, 0.102865, 0.156351, 0.361452, 0.237886, 0.421522, 0.620469, 0.272403, 0.0409431, 0.269093, 0.810988, 0.643812, 0.222394, 0.651189, 0.900043, 0.938994, 0.488929, 0.0489833, 0.999099, 0.721957, 0.227903, 0.0947337, 0.0465675, 0.274118, 0.436387, 0.495401, 0.27126, 0.348366, 0.869134, 0.569686, 0.869595, 0.962246, 0.287962, 0.837559, 0.119458, 0.915843, 0.669699, 0.172183, 0.935518, 0.782555, 0.645365, 0.881284, 0.822506, 0.5936, 0.75008, 0.73816, 0.961731, 0.102539, 0.18431, 0.747774, 0.123972, 0.0437521, 0.203027, 0.585387, 0.415051, 0.121672, 0.647093, 0.880603, 0.105394, 0.882614, 0.718948, 0.541158, 0.974741, 0.045262, 0.127256, 0.373407, 0.10848, 0.885007, 0.309382, 0.359374, 0.0171696, 0.455111, 0.400381, 0.13168, 0.894455, 0.614822, 0.2029, 0.63639, 0.587735, 0.800371, 0.705013, 0.357067, 0.598852, 0.418176, 0.920631, 0.133357, 0.641344, 0.123774, 0.549626, 0.746176, 0.41312, 0.544176, 0.139924, 0.186859, 0.815729, 0.141528, 0.799317, 0.723028, 0.00646469, 0.306431, 0.193953, 0.880584, 0.441676, 0.503649, 0.100283, 0.36592, 0.00703817, 0.821632, 0.866334, 0.23857, 0.177503, 0.200214, 0.498202, 0.218265, 0.38326, 0.322585, 0.827902, 0.48848, 0.925217, 0.756711, 0.865992, 0.0998433, 0.546017, 0.329258, 0.206277, 0.362251, 0.4988, 0.699784, 0.876167, 0.407713, 0.966473, 0.699797, 0.0939646, 0.0193712, 0.890308, 0.509845, 0.104309, 0.0336535, 0.596791, 0.0518554, 0.539505, 0.663415, 0.199421, 0.660138, 0.12727, 0.0455535, 0.814605, 0.762778, 0.0691568, 0.0436918, 0.578214, 0.6505, 0.691882, 0.681034, 0.150299, 0.769346, 0.930997, 0.86266, 0.20747, 0.363362, 0.084075, 0.139273, 0.659603, 0.175426, 0.0886449, 0.0544458, 0.87465, 0.748701, 0.222579, 0.525007, 0.116009, 0.0784596, 0.97162, 0.958678, 0.220946, 0.810572, 0.940776, 0.759188, 0.528482, 0.832487, 0.830387, 0.979419, 0.798622, 0.125728, 0.595178, 0.0490897, 0.767816, 0.620371, 0.663792, 0.966933, 0.420774, 0.788886, 0.0220837, 0.30565, 0.14275, 0.245404, 0.90319, 0.507932, 0.690273, 0.908939, 0.115463, 0.686819, 0.417396, 0.150329, 0.0737752, 0.577233, 0.322931, 0.12717, 0.613882, 0.58847, 0.479238, 0.403759, 0.0771313, 0.106414, 0.673572, 0.350583, 0.344535, 0.68153, 0.460022, 0.15081, 0.729054, 0.58455, 0.31535, 0.885813, 0.420472, 0.0255402, 0.515425, 0.935814, 0.124837, 0.686423, 0.840649, 0.78662, 0.349033, 0.559209, 0.954029, 0.393045, 0.0646583, 0.370909, 0.4484, 0.431719, 0.706785, 0.388648, 0.637737, 0.0589366, 0.668077, 0.538074, 0.12675, 0.304515, 0.890387, 0.801784, 0.471512, 0.794736, 0.248499, 0.126123, 0.684644, 0.686978, 0.846712, 0.316026, 0.517567, 0.0262958, 0.584169, 0.509851, 0.288584, 0.679869, 0.0597293, 0.366682, 0.399531, 0.461923, 0.144886, 0.836279, 0.831469, 0.427781, 0.492023, 0.545547, 0.587171, 0.656915, 0.307317, 0.987408, 0.817642, 0.0436993, 0.32873, 0.934365, 0.52028, 0.896459, 0.741594, 0.471362, 0.847753, 0.328883, 0.772851, 0.307808, 0.296269, 0.297292, 0.159325, 0.603638, 0.917443, 0.312732, 0.524107, 0.840835, 0.0487732, 0.642619, 0.827288, 0.713174, 0.534953, 0.805813, 0.524788, 0.700008, 0.428503, 0.966822, 0.0931093, 0.522227, 0.97329, 0.317087, 0.108293, 0.293492, 0.920515, 0.391827, 0.817358, 0.730106, 0.41202, 0.825189, 0.620132, 0.644621, 0.266817, 0.399723, 0.791575, 0.110672, 0.72385, 0.275793, 0.794949, 0.892833, 0.200648, 0.807969, 0.645763, 0.751513, 0.11756, 0.42533, 0.92628, 0.114567, 0.607613, 0.668239, 0.100192, 0.114422, 0.352144, 0.507415, 0.882684, 0.873127, 0.506768, 0.344886, 0.833814, 0.0242183, 0.930751, 0.885974, 0.732036, 0.961444, 0.550254, 0.322358, 0.563877, 0.809922, 0.276575, 0.0562522, 0.143204, 0.289824, 0.200382, 0.972508, 0.774703, 0.843532, 0.246285, 0.159254, 0.157435, 0.575731, 0.803842, 0.149768, 0.365218, 0.263792, 0.0829507, 0.765149, 0.934117, 0.569531, 0.962897, 0.926989, 0.44059, 0.316736, 0.794048, 0.112996, 0.29266, 0.419849, 0.307225, 0.783262, 0.538579, 0.242878, 0.991289, 0.969825, 0.548047, 0.290566, 0.292351, 0.868032, 0.460246, 0.698321, 0.800126, 0.583279, 0.717189, 0.703257, 0.0884206, 0.175846, 0.27626, 0.859412, 0.358694, 0.639239, 0.140631, 0.704478, 0.417812, 0.0676671, 0.521065, 0.884021, 0.168365, 0.624165, 0.284287, 0.964878, 0.94158, 0.662307, 0.432806, 0.97545, 0.459688, 0.733035, 0.581206, 0.915372, 0.208417, 0.555513, 0.597207, 0.400138, 0.755858, 0.552204, 0.201865, 0.480121, 0.913508, 0.835636, 0.291581, 0.178903, 0.220853, 0.214738, 0.519559, 0.278173, 0.390957, 0.0395054, 0.00595424, 0.759536, 0.543856, 0.990689, 0.0938712, 0.0310068, 0.508122, 0.620263, 0.348884, 0.945497, 0.299965, 0.635908, 0.132086, 0.657791, 0.238095, 0.621725, 0.912678, 0.808336, 0.66988, 0.71485, 0.840787, 0.664992, 0.658862, 0.277171, 0.647297, 0.0421899, 0.954794, 0.0751451, 0.773294, 0.145824, 0.910845, 0.960064, 0.240367, 0.304227, 0.107258, 0.632377, 0.385348, 0.95717, 0.534541, 0.975734, 0.288228, 0.140664, 0.701792, 0.747395, 0.982609, 0.120717, 0.568635, 0.0653954, 0.841714, 0.91516, 0.479761, 0.534312, 0.681924, 0.935348, 0.201925, 0.113211, 0.117036, 0.80399, 0.43298, 0.69961, 0.340217, 0.35513, 0.614448, 0.0237451, 0.642954, 0.585243, 0.312187, 0.131821, 0.403962, 0.751647, 0.0439979, 0.754596, 0.44068, 0.204481, 0.293113, 0.543158, 0.523721, 0.0979635, 0.214104, 0.315379, 0.178005, 0.124782, 0.304416, 0.0750819, 0.352707, 0.548382, 0.600607, 0.0934735, 0.104828, 0.983191, 0.0757027, 0.534711, 0.0676276, 0.170516, 0.469788, 0.0840215, 0.885204, 0.674039, 0.187585, 0.196624, 0.531166, 0.0696874, 0.539674, 0.49392, 0.408729, 0.061994, 0.302405, 0.252941, 0.799968, 0.827175, 0.611391, 0.362369, 0.657713, 0.707267, 0.894151, 0.536904, 0.13435, 0.78815, 0.529078, 0.198909, 0.913081, 0.469675, 0.072014, 0.692494, 0.909327, 0.126075, 0.989177, 0.210604, 0.966014, 0.584509, 0.758058, 0.310283, 0.0453492, 0.424746, 0.37663, 0.96411, 0.200581, 0.586958, 0.091529, 0.265724, 0.681694, 0.324513, 0.669907, 0.58941, 0.440361, 0.528831, 0.105561, 0.973964, 0.654456, 0.970698, 0.284738, 0.549127, 0.428925, 0.348274, 0.622524, 0.270289, 0.500476, 0.847353, 0.507849, 0.157441, 0.230561, 0.944067, 0.985883, 0.69581, 0.141776, 0.377412, 0.401211, 0.444734, 0.980702, 0.675309, 0.875477, 0.794507, 0.349532, 0.170162, 0.624894, 0.417962, 0.415546, 0.36032, 0.757239, 0.257441, 0.913047, 0.659254, 0.145894, 0.666919, 0.0175704, 0.549286, 0.614001, 0.962877, 0.539759, 0.391621, 0.236881, 0.122099, 0.814604, 0.0891521, 0.482365, 0.554869, 0.138315, 0.963149, 0.429151, 0.203627, 0.236203, 0.170238, 0.998642, 0.801235, 0.388047, 0.768687, 0.27182, 0.673135, 0.399079, 0.85069, 0.684319, 0.986399, 0.631844, 0.927408, 0.737798, 0.995274, 0.66533, 0.245754, 0.472095, 0.290813, 0.810834, 0.313349, 0.447148, 0.571328, 0.627194, 0.57629, 0.713469, 0.422445, 0.949226, 0.902399, 0.0371075, 0.470613, 0.907833, 0.452794, 0.853629, 0.262033, 0.0207634, 0.816207, 0.446048, 0.893255, 0.265039, 0.0509093, 0.863866, 0.301752, 0.638668, 0.490167, 0.889994, 0.84687, 0.158144, 0.65982, 0.26235, 0.95718, 0.662398, 0.107077, 0.85311, 0.932123, 0.581673, 0.61381, 0.80501, 0.185818, 0.877686, 0.304985, 0.813848, 0.296963, 0.105196, 0.0412069, 0.590802, 0.476628, 0.203454, 0.987047, 0.856256, 0.237643, 0.989676, 0.216779, 0.923763, 0.323657, 0.198351, 0.241511, 0.280164, 0.591196, 0.859441, 0.679932, 0.743648, 0.947348, 0.351457, 0.103951, 0.14544, 0.331489, 0.720028, 0.460479, 0.973947, 0.432496, 0.117495, 0.542874, 0.85118, 0.521614, 0.832358, 0.589992, 0.262417, 0.865436, 0.28816, 0.657736, 0.751303, 0.883796, 0.419268, 0.517379, 0.00849907, 0.275356, 0.560118, 0.5704, 0.693962, 0.32664, 0.653743, 0.629599, 0.500192, 0.0437695, 0.408629, 0.652927, 0.727753, 0.726597, 0.673221, 0.737262, 0.359457, 0.939694, 0.59496, 0.776528, 0.336817, 0.514643, 0.410871, 0.461674, 0.661165, 0.88696, 0.0887153, 0.899074, 0.52993, 0.763246, 0.953701, 0.611576, 0.509133, 0.270107, 0.364873, 0.929217, 0.342699, 0.623959, 0.886126, 0.406349, 0.67395, 0.999035, 0.504545, 0.925682, 0.806084, 0.681021, 0.549536, 0.265445, 0.414815, 0.627838, 0.0808093, 0.723738, 0.0815012, 0.771236, 0.73842, 0.809941, 0.41711, 0.653149, 0.0462295, 0.172731, 0.062684, 0.499982, 0.384897, 0.323556, 0.644623, 0.195763, 0.832568, 0.871539, 0.0842767, 0.902823, 0.12852, 0.266654, 0.132603, 0.825525, 0.183502, 0.927431, 0.291925, 0.469783, 0.845891, 0.213524, 0.469971, 0.0519577, 0.273665, 0.0283654, 0.129275, 0.0133337, 0.455978, 0.754961, 0.790605, 0.839277, 0.00355995, 0.467845, 0.385371, 0.939362, 0.536838, 0.912425, 0.431739, 0.0786191, 0.3032, 0.71803, 0.0454604, 0.654944, 0.422661, 0.89835, 0.104968, 0.352199, 0.853833, 0.49648, 0.925281, 0.823627, 0.585987, 0.898465, 0.326791, 0.592133, 0.463077, 0.690367, 0.0534051, 0.696711, 0.879301, 0.226565, 0.843417, 0.774814, 0.848457, 0.440648, 0.724936, 0.545384, 0.710813, 0.574709, 0.326078, 0.513247, 0.399664, 0.9986, 0.17735, 0.073329, 0.537802, 0.280107, 0.92919, 0.141223, 0.263987, 0.044565, 0.565706, 0.730661, 0.172426, 0.298544, 0.73557, 0.499133, 0.655023, 0.884787, 0.927725, 0.540348, 0.732994, 0.416806, 0.683407, 0.672019, 0.226764, 0.559166, 0.880894, 0.211082, 0.351384, 0.803358, 0.0817335, 0.0290782, 0.431313, 0.433303, 0.294876, 0.248437, 0.494062, 0.316968, 0.239748, 0.418382, 0.758703, 0.819905, 0.33438, 0.24151, 0.820807, 0.376312, 0.0603143, 0.435946, 0.840847, 0.752812, 0.841729, 0.837204, 0.523985, 0.837111, 0.235468, 0.526222, 0.414712, 0.560508, 0.329657, 0.208302, 0.341473, 0.326454, 0.536594, 0.518118, 0.12619, 0.803484, 0.714879, 0.49794, 0.868055, 0.289, 0.0652668, 0.955847, 0.881797, 0.372157, 0.526866, 0.744218, 0.0102619, 0.667189, 0.296191, 0.55762, 0.462473, 0.231383, 0.00379398, 0.675219, 0.801112, 0.142568, 0.845674, 0.271624, 0.602504, 0.0880555, 0.332806, 0.906774, 0.0917857, 0.706064, 0.569323, 0.65879, 0.964485, 0.215885, 0.433708, 0.385675, 0.20189, 0.138252, 0.997569, 0.384503, 0.642629, 0.624547, 0.565289, 0.378957, 0.47499, 0.224468, 0.339102, 0.673985, 0.426598, 0.0212697, 0.765904, 0.162709, 0.184998, 0.765993, 0.322265, 0.501502, 0.736527, 0.963061, 0.938897, 0.934525, 0.91499, 0.813492, 0.591905, 0.00209281, 0.807754, 0.875947, 0.403504, 0.292973, 0.991515, 0.702833, 0.667988, 0.823181, 0.264541, 0.653264, 0.84179, 0.516506, 0.221366, 0.856864, 0.771658, 0.849874, 0.965903, 0.720022, 0.546299, 0.162553, 0.842109, 0.00376673, 0.965212, 0.708506, 0.735937, 0.451234, 0.990287, 0.190653, 0.173985, 0.678833, 0.142683, 0.752652, 0.902907, 0.752725, 0.456146, 0.875956, 0.274689, 0.724019, 0.286962, 0.755524, 0.243662, 0.678634, 0.545567, 0.366002, 0.424252, 0.753029, 0.161247, 0.308859, 0.768887, 0.503259, 0.251248, 0.274069, 0.123186, 0.257923, 0.553813, 0.328447, 0.432531, 0.409458, 0.781136, 0.354439, 0.929638, 0.641831, 0.736621, 0.414275, 0.850833, 0.787645, 0.166013, 0.86714, 0.815449, 0.576641, 0.108081, 0.411362, 0.425229, 0.44125, 0.782235, 0.524877, 0.695368, 0.166618, 0.928522, 0.784976, 0.672973, 0.872188, 0.940872, 0.580408, 0.638464, 0.462909, 0.459911, 0.32465, 0.809455, 0.560667, 0.380102, 0.861866, 0.109721, 0.0308464, 0.623274, 0.45616, 0.897797, 0.484541, 0.949567, 0.0837994, 0.23621, 0.212597, 0.439361, 0.728416, 0.27532, 0.26466, 0.808841, 0.421971, 0.696874, 0.828717, 0.504303, 0.662372, 0.327151, 0.184963, 0.666238, 0.781659, 0.282019, 0.487977, 0.275363, 0.092091, 0.535932, 0.49683, 0.467149, 0.502567, 0.840322, 0.286123, 0.930709, 0.983031, 0.557765, 0.265848, 0.207847, 0.509513, 0.635265, 0.566415, 0.286493, 0.311504, 0.0527314, 0.202769, 0.759897, 0.839499, 0.0422418, 0.808762, 0.860245, 0.867181, 0.199014, 0.878043, 0.0259532, 0.81451, 0.449817, 0.46622, 0.673454, 0.0773194, 0.801992, 0.0215891, 0.299486, 0.202662, 0.844368, 0.539223, 0.794393, 0.498429, 0.1719, 0.516754, 0.624653, 0.941274, 0.449317, 0.829167, 0.57099, 0.118988, 0.369464, 0.392911, 0.488977, 0.603277, 0.146521, 0.824633, 0.526214, 0.538801, 0.150353, 0.724502, 0.131537, 0.988849, 0.333432, 0.718172, 0.74426, 0.129661, 0.820868, 0.909861, 0.136001, 0.270309, 0.704288, 0.893886, 0.326444, 0.364767, 0.422896, 0.684922, 0.37052, 0.248242, 0.0453765, 0.0848157, 0.629291, 0.786327, 0.999893, 0.289456, 0.847154, 0.2287, 0.0663366, 0.127314, 0.0115147, 0.814405, 0.886679, 0.745017, 0.361332, 0.960407, 0.956814, 0.00031382, 0.0818927, 0.0792855, 0.305876, 0.129241, 0.370793, 0.872396, 0.160768, 0.369604, 0.968642, 0.983399, 0.219455, 0.368195, 0.479561, 0.736244, 0.853021, 0.263501, 0.331484, 0.421875, 0.820267, 0.824629, 0.180069, 0.979761, 0.685614, 0.151672, 0.368202, 0.935376, 0.723351, 0.947521, 0.812962, 0.0393219, 0.448852, 0.916772, 0.376377, 0.656037, 0.596934, 0.407713, 0.581081, 0.499572, 0.15246, 0.415338, 0.959572, 0.289051, 0.532543, 0.399378, 0.707961, 0.353649, 0.999977, 0.411315, 0.507638, 0.695433, 0.686485, 0.946923, 0.554696, 0.828731, 0.103839, 0.402531, 0.314835, 0.31834, 0.811244, 0.816987, 0.318343, 0.379974, 0.017095, 0.490605, 0.774623, 0.0256612, 0.771085, 0.337502, 0.798936, 0.485491, 0.384387, 0.934485, 0.128224, 0.881266, 0.55429, 0.0821492, 0.839872, 0.35792, 0.17427, 0.457722, 0.132874, 0.848926, 0.473386, 0.35084, 0.884521, 0.633309, 0.328557, 0.491455, 0.470415, 0.413116, 0.0545538, 0.0749842, 0.28592, 0.146577, 0.912355, 0.627379, 0.635914, 0.978279, 0.605406, 0.937944, 0.123009, 0.484798, 0.56439, 0.00739178, 0.711569, 0.079539, 0.985346, 0.678384, 0.86812, 0.433614, 0.80086, 0.320245, 0.592016, 0.37018, 0.835839, 0.925468, 0.536741, 0.229944, 0.53053, 0.871769, 0.73258, 0.973737, 0.703955, 0.412242, 0.67909, 0.893231, 0.482548, 0.033109, 0.127787, 0.85196, 0.763455, 0.725058, 0.637974, 0.95114, 0.736879, 0.540986, 0.537117, 0.662274, 0.465006, 0.174403, 0.825465, 0.537735, 0.26325, 0.960223, 0.393766, 0.0259233, 0.49806, 0.2551, 0.318262, 0.816348, 0.82046, 0.592883, 0.0831828, 0.545193, 0.645472, 0.727568, 0.391205, 0.865609, 0.22572, 0.593496, 0.711482, 0.181181, 0.871405, 0.461435, 0.629724, 0.146651, 0.187936, 0.653171, 0.522262, 0.564234, 0.0488697, 0.631423, 0.0656051, 0.277527, 0.395756, 0.835641, 0.125169, 0.031573, 0.827047, 0.76422, 0.70184, 0.536186, 0.719809, 0.392548, 0.248494, 0.0113598, 0.145692, 0.0715961, 0.00824071, 0.0893908, 0.908226, 0.688277, 0.597482, 0.42348, 0.933487, 0.448177, 0.940487, 0.287481, 0.471769, 0.837522, 0.754441, 0.774111, 0.726068, 0.186716, 0.424487, 0.799763, 0.784653, 0.0287716, 0.517704, 0.19538, 0.609822, 0.793181, 0.961625, 0.901127, 0.976353, 0.0431655, 0.544816, 0.293044, 0.845437, 0.614945, 0.377541, 0.571479, 0.0378839, 0.345483, 0.818315, 0.83208, 0.505378, 0.670653, 0.0233108, 0.649274, 0.980283, 0.0817684, 0.6392, 0.355697, 0.996377, 0.877605, 0.28135, 0.72108, 0.957454, 0.653142, 0.660603, 0.888257, 0.904027, 0.268201, 0.135722, 0.681844, 0.085175, 0.46722, 0.576889, 0.508221, 0.397492, 0.031058, 0.118869, 0.0649997, 0.497825, 0.4128, 0.475993, 0.787082, 0.697152, 0.0876402, 0.00368021, 0.879489, 0.362483, 0.893105, 0.504865, 0.667119, 0.263053, 0.677176, 0.669501, 0.219379, 0.786473, 0.233583, 0.778745, 0.565559, 0.210947, 0.416327, 0.292413, 0.241213, 0.666406, 0.0222339, 0.0350166, 0.648889, 0.733443, 0.88821, 0.055882, 0.0277956, 0.504415, 0.737115, 0.641023, 0.0619757, 0.0734278, 0.71448, 0.383871, 0.182692, 0.995474, 0.376517, 0.912033, 0.481474, 0.870682, 0.0162815, 0.317314, 0.813583, 0.968563, 0.436631, 0.278392, 0.225784, 0.723891, 0.412729, 0.771891, 0.299832, 0.50019, 0.522494, 0.625582, 0.247386, 0.0624364, 0.198028, 0.0965692, 0.615351, 0.921409, 0.234406, 0.977569, 0.362076, 0.0474897, 0.000719785, 0.32906, 0.480448, 0.0747429, 0.84337, 0.969968, 0.0750479, 0.327639, 0.749891, 0.813955, 0.544825, 0.901279, 0.630745, 0.593813, 0.321331, 0.552946, 0.604974, 0.486309, 0.808165, 0.79014, 0.411673, 0.374508, 0.526008, 0.438269, 0.591808, 0.899624, 0.589784, 0.422551, 0.726518, 0.385523, 0.0812598, 0.823857, 0.969916, 0.119352, 0.720789, 0.465167, 0.414751, 0.948992, 0.178657, 0.614829, 0.0262519, 0.835114, 0.9793, 0.447871, 0.297571, 0.602232, 0.13819, 0.0357472, 0.559548, 0.164173, 0.363394, 0.330852, 0.832982, 0.803092, 0.03183, 0.203531, 0.369255, 0.0189111, 0.742462, 0.849378, 0.0451305, 0.869346, 0.966823, 0.659599, 0.408523, 0.634494, 0.267026, 0.120147, 0.0942491, 0.803437, 0.820474, 0.0740196, 0.871302, 0.415977, 0.494594, 0.0293509, 0.33357, 0.704333, 0.599486, 0.444793, 0.907338, 0.517565, 0.266307, 0.642615, 0.630478, 0.382786, 0.207283, 0.138784, 0.361832, 0.00835775, 0.0247863, 0.346629, 0.801693, 0.638861, 0.690865, 0.572333, 0.472501, 0.0470447, 0.43521, 0.0716343, 0.0270219, 0.526611, 0.647479, 0.843117, 0.39167, 0.485885, 0.291377, 0.939419, 0.0395494, 0.312875, 0.305732, 0.641768, 0.381201, 0.278588, 0.0678477, 0.128049, 0.40274, 0.391973, 0.777331, 0.354055, 0.76454, 0.363069, 0.564766, 0.33317, 0.46361, 0.185451, 0.0263633, 0.936658, 0.352718, 0.457105, 0.854162, 0.862375, 0.988636, 0.732053, 0.661575, 0.910471, 0.378453, 0.778195, 0.693411, 0.385346, 0.474262, 0.843387, 0.0689777, 0.00299793, 0.8032, 0.795708, 0.547995, 0.151327, 0.46796, 0.809076, 0.539852, 0.230707, 0.0629656, 0.373144, 0.0845302, 0.0159617, 0.454861, 0.182251, 0.674457, 0.732855, 0.316629, 0.0511217, 0.392652, 0.0173745, 0.574732, 0.60335, 0.399655, 0.766155, 0.381027, 0.61383, 0.232291, 0.531796, 0.729258, 0.785192, 0.331604, 0.86379, 0.128494, 0.969683, 0.999763, 0.0998704, 0.573769, 0.187448, 0.674414, 0.194858, 0.953877, 0.201425, 0.543769, 0.308643, 0.792264, 0.398644, 0.708149, 0.289014, 0.819657, 0.253265, 0.837789, 0.304976, 0.575838, 0.435386, 0.579792, 0.739268, 0.155193, 0.228266, 0.687053, 0.52085, 0.0392726, 0.125017, 0.00318429, 0.687647, 0.47317, 0.341067, 0.763186, 0.42641, 0.926529, 0.331726, 0.531519, 0.752008, 0.104633, 0.666371, 0.933613, 0.833319, 0.925057, 0.601297, 0.432739, 0.773991, 0.254665, 0.271045, 0.488001, 0.98369, 0.765446, 0.00696623, 0.242701, 0.701162, 0.587165, 0.651144, 0.372115, 0.308176, 0.548135, 0.727489, 0.330426, 0.895366, 0.206513, 0.0489515, 0.764614, 0.495505, 0.110225, 0.722651, 0.438193, 0.801399, 0.548682, 0.434788, 0.175742, 0.785937, 0.75756, 0.330464, 0.865882, 0.302393, 0.181894, 0.779485, 0.430365, 0.782417, 0.314907, 0.481456, 0.857318, 0.0113857, 0.173096, 0.254854, 0.361403, 0.551114, 0.912298, 0.291188, 0.712132, 0.524902, 0.589849, 0.735236, 0.0515289, 0.161229, 0.245797, 0.944604, 0.631969, 0.265742, 0.197306, 0.0768234, 0.0194839, 0.0701168, 0.694827, 0.393103, 0.110566, 0.602244, 0.228535, 0.172539, 0.103389, 0.0175603, 0.543229, 0.204025, 0.114078, 0.516247, 0.972776, 0.206016, 0.495504, 0.902649, 0.521167, 0.273193, 0.779409, 0.899815, 0.200795, 0.884517, 0.2051, 0.942331, 0.928528, 0.42342, 0.153295, 0.813989, 0.944438, 0.830663, 0.28702, 0.608891, 0.400393, 0.0942167, 0.552048, 0.0156807, 0.531824, 0.87719, 0.202555, 0.940243, 0.242386, 0.851822, 0.878135, 0.16821, 0.131348, 0.230732, 0.597644, 0.745814, 0.181948, 0.532724, 0.906058, 0.386221, 0.273775, 0.837916, 0.338809, 0.295876, 0.432598, 0.0469732, 0.0388639, 0.225856, 0.889241, 0.875772, 0.490003, 0.573914, 0.903424, 0.0782142, 0.815816, 0.354702, 0.462083, 0.589756, 0.262515, 0.233802, 0.189547, 0.996142, 0.780253, 0.103435, 0.402775, 0.437038, 0.483267, 0.172879, 0.917637, 0.14663, 0.354259, 0.121247, 0.730811, 0.411633, 0.772367, 0.28071, 0.385159, 0.136306, 0.562222, 0.422636, 0.0900755, 0.0490742, 0.441638, 0.972136, 0.28366, 0.722472, 0.159515, 0.533905, 0.592363, 0.347499, 0.728473, 0.683163, 0.776232, 0.191833, 0.698048, 0.515704, 0.797297, 0.303258, 0.531089, 0.686102, 0.341439, 0.903674, 0.541508, 0.431689, 0.0165836, 0.331906, 0.646335, 0.534429, 0.405256, 0.0990474, 0.0653716, 0.93658, 0.54225, 0.889823, 0.274116, 0.786693, 0.460302, 0.492471, 0.16118, 0.0725846, 0.423202, 0.289644, 0.589097, 0.335348, 0.0187064, 0.898956, 0.644845, 0.161203, 0.322998, 0.709912, 0.613727, 0.883755, 0.257027, 0.417126, 0.765556, 0.185499, 0.899844, 0.432989, 0.941765, 0.290679, 0.552303, 0.5248, 0.867102, 0.843107, 0.194849, 0.178186, 0.890691, 0.762402, 0.98445, 0.896385, 0.138908, 0.541767, 0.465325, 0.148249, 0.791812, 0.643343, 0.266132, 0.514905, 0.385602, 0.551542, 0.767467, 0.191721, 0.194929, 0.763939, 0.480432, 0.262448, 0.656023, 0.862894, 0.0523637, 0.222938, 0.233722, 0.410409, 0.276134, 0.267563, 0.596115, 0.23797, 0.466054, 0.744026, 0.0609154, 0.67997, 0.942111, 0.491477, 0.397575, 0.115714, 0.975031, 0.339329, 0.783043, 0.620843, 0.67738, 0.0263275, 0.802089, 0.512084, 0.688234, 0.00734883, 0.729239, 0.951641, 0.572257, 0.274996, 0.963747, 0.653032, 0.40655, 0.374964, 0.317177, 0.0885474, 0.278359, 0.134799, 0.562288, 0.753961, 0.165827, 0.0501638, 0.0879694, 0.877446, 0.91488, 0.342373, 0.672112, 0.513737, 0.461238, 0.937427, 0.588051, 0.261043, 0.59019, 0.491552, 0.247191, 0.268557, 0.940984, 0.133495, 0.225512, 0.061612, 0.725114, 0.427663, 0.00527795, 0.692709, 0.13052, 0.401754, 0.650497, 0.93261, 0.834951, 0.819397, 0.0708086, 0.469795, 0.4609, 0.82386, 0.878738, 0.506777, 0.545598, 0.820291, 0.871072, 0.40302, 0.551472, 0.260097, 0.971456, 0.904821, 0.65532, 0.606182, 0.00195895, 0.923481, 0.0240523, 0.999963, 0.67457, 0.384125, 0.935217, 0.314049, 0.596162, 0.904788, 0.83433, 0.83861, 0.00678903, 0.0554508, 0.840524, 0.182566, 0.692484, 0.18624, 0.0356324, 0.219805, 0.082061, 0.252837, 0.896384, 0.913405, 0.0780995, 0.40322, 0.460075, 0.844018, 0.872995, 0.689628, 0.905133, 0.527041, 0.697146, 0.725787, 0.261525, 0.617749, 0.885002, 0.743966, 0.677214, 0.949382, 0.654274, 0.793361, 0.462747, 0.658381, 0.635382, 0.499737, 0.467287, 0.359796, 0.959459, 0.728091, 0.23242, 0.0901241, 0.122147, 0.59385, 0.725853, 0.472269, 0.152191, 0.283303, 0.957536, 0.643152, 0.739371, 0.887909, 0.90516, 0.380709, 0.682323, 0.059883, 0.168969, 0.296506, 0.710234, 0.0843966, 0.904016, 0.166514, 0.597223, 0.193536, 0.469915, 0.286458, 0.731118, 0.625388, 0.0429173, 0.539192, 0.0481399, 0.211433, 0.25051, 0.425512, 0.0181936, 0.121157, 0.9789, 0.520572, 0.400318, 0.58233, 0.761052, 0.604665, 0.944583, 0.39336, 0.227694, 0.96296, 0.876985, 0.0501449, 0.288584, 0.451995, 0.534457, 0.655872, 0.661063, 0.754428, 0.966692, 0.0150086, 0.104045, 0.095014, 0.868285, 0.0476501, 0.820102, 0.0679207, 0.801386, 0.845822, 0.439861, 0.857085, 0.102827, 0.87434, 0.562673, 0.120314, 0.144534, 0.871773, 0.094574, 0.246483, 0.235665, 0.833357, 0.85404, 0.848544, 0.0604521, 0.0186945, 0.795606, 0.682973, 0.649498, 0.657285, 0.0696037, 0.793504, 0.797787, 0.511502, 0.52392, 0.700018, 0.565786, 0.616767, 0.282619, 0.339069, 0.64898, 0.865851, 0.00999974, 0.0853183, 0.176463, 0.358187, 0.906751, 0.65451, 0.232918, 0.0523113, 0.308852, 0.506029, 0.0155211, 0.464285, 0.098526, 0.807842, 0.745457, 0.877439, 0.972399, 0.309026, 0.741423, 0.0863205, 0.127728, 0.578785, 0.272265, 0.688036, 0.289875, 0.478403, 0.149041, 0.612673, 0.169721, 0.0749017, 0.950864, 0.697547, 0.223317, 0.53656, 0.244241, 0.0230917, 0.469217, 0.321902, 0.918212, 0.14048, 0.497955, 0.137043, 0.446622, 0.0820836, 0.883689, 0.850482, 0.976799, 0.255676, 0.570913, 0.32842, 0.825705, 0.876435, 0.967062, 0.941922, 0.533506, 0.666526, 0.483001, 0.91087, 0.997286, 0.450467, 0.342494, 0.859067, 0.531275, 0.463573, 0.952184, 0.53284, 0.558022, 0.725426, 0.474411, 0.655587, 0.420087, 0.468508, 0.308208, 0.604864, 0.817855, 0.728975, 0.122265, 0.306047, 0.184579, 0.16592, 0.504201, 0.536009, 0.491814, 0.398283, 0.879826, 0.287263, 0.462895, 0.516067, 0.541015, 0.725253, 0.196295, 0.606033, 0.843471, 0.453701, 0.205685, 0.634091, 0.861297, 0.465242, 0.602618, 0.720813, 0.109542, 0.518306, 0.496782, 0.799802, 0.420652, 0.224371, 0.266482, 0.654803, 0.047895, 0.432791, 0.0991827, 0.772198, 0.32209, 0.330437, 0.185746, 0.140597, 0.306, 0.334362, 0.00169165, 0.816549, 0.0763457, 0.856974, 0.0709023, 0.476311, 0.587085, 0.829337, 0.505602, 0.119236, 0.796571, 0.684383, 0.815761, 0.696858, 0.709625, 0.174017, 0.203209, 0.42155, 0.532394, 0.0445279, 0.690665, 0.610445, 0.565935, 0.833406, 0.374485, 0.0464426, 0.573286, 0.104844, 0.0645017, 0.112781, 0.573605, 0.488074, 0.522915, 0.731857, 0.967717, 0.997032, 0.572101, 0.942378, 0.345968, 0.301739, 0.176546, 0.0560019, 0.0350762, 0.563506, 0.548198, 0.872069, 0.377967, 0.348896, 0.266325, 0.284741, 0.633524, 0.889082, 0.993557, 0.846756, 0.725345, 0.572848, 0.871653, 0.368854, 0.503869, 0.0727189, 0.0918519, 0.920518, 0.946622, 0.467996, 0.759991, 0.601632, 0.318524, 0.741685, 0.213693, 0.157869, 0.952439, 0.645408, 0.938636, 0.072953, 0.814662, 0.367685, 0.746321, 0.0308021, 0.555824, 0.540047, 0.98481, 0.451255, 0.231776, 0.571407, 0.114218, 0.740337, 0.644461, 0.705899, 0.000324034, 0.0669688, 0.704823, 0.816899, 0.258044, 0.846036, 0.831444, 0.329306, 0.0978028, 0.797346, 0.0860686, 0.500717, 0.404287, 0.665233, 0.212074, 0.0193281, 0.351646, 0.709888, 0.428712, 0.463282, 0.596454, 0.0112623, 0.369824, 0.993872, 0.660341, 0.867077, 0.238456, 0.718436, 0.707635, 0.478597, 0.493712, 0.946965, 0.679729, 0.747171, 0.192647, 0.220157, 0.616217, 0.274945, 0.410491, 0.670034, 0.529077, 0.422064, 0.449074, 0.50408, 0.797496, 0.365237, 0.829194, 0.941683, 0.684282, 0.0480276, 0.530699, 0.474956, 0.0512108, 0.272672, 0.0933672, 0.883944, 0.0853204, 0.864014, 0.989528, 0.346204, 0.668628, 0.0958885, 0.372699, 0.728539, 0.673392, 0.165501, 0.563271, 0.183946, 0.0750424, 0.755246, 0.937016, 0.644245, 0.746287, 0.831148, 0.0521238, 0.265193, 0.0866676, 0.350039, 0.339534, 0.180864, 0.196189, 0.381186, 0.790401, 0.997931, 0.998157, 0.0498226, 0.357231, 0.706713, 0.0320284, 0.745339, 0.549743, 0.640489, 0.798846, 0.222073, 0.708906, 0.17552, 0.817831, 0.576041, 0.0395129, 0.591903, 0.0668133, 0.266916, 0.582943, 0.480411, 0.102654, 0.0456304, 0.410205, 0.0901037, 0.104304, 0.577822, 0.724465, 0.928792, 0.983905, 0.0215146, 0.78416, 0.500699, 0.800233, 0.389331, 0.19249, 0.99276, 0.666015, 0.532314, 0.321296, 0.905419, 0.93963, 0.45092, 0.714422, 0.415709, 0.384093, 0.0577467, 0.158675, 0.378667, 0.800723, 0.363547, 0.997812, 0.561783, 0.148821, 0.770375, 0.830476, 0.667792, 0.305506, 0.846649, 0.687359, 0.382275, 0.374334, 0.383001, 0.014579, 0.333735, 0.396562, 0.977267, 0.806299, 0.698036, 0.682723, 0.727546, 0.274506, 0.22807, 0.0282678, 0.0096508, 0.245845, 0.669269, 0.210805, 0.657272, 0.257349, 0.882168, 0.56864, 0.0725941, 0.443277, 0.948587, 0.161456, 0.654467, 0.717582, 0.107923, 0.421968, 0.699075, 0.229357, 0.826711, 0.355575, 0.781551, 0.68971, 0.0588251, 0.403448, 0.732937, 0.0690303, 0.573226, 0.468383, 0.347646, 0.685601, 0.912646, 0.374278, 0.476829, 0.262196, 0.503916, 0.203185, 0.933735, 0.836232, 0.378327, 0.622366, 0.66969, 0.17668, 0.653573, 0.880322, 0.908573, 0.683539, 0.280947, 0.212366, 0.513669, 0.379096, 0.482158, 0.558209, 0.866087, 0.994374, 0.082474, 0.553292, 0.125581, 0.293149, 0.416828, 0.753735, 0.318881, 0.288113, 0.436025, 0.177524, 0.0651407, 0.162611, 0.302722, 0.808142, 0.387352, 0.928794, 0.484503, 0.970821, 0.993738, 0.985168, 0.882121, 0.333048, 0.7672, 0.554213, 0.975204, 0.00498456, 0.0589748, 0.567172, 0.797277, 0.22337, 0.976087, 0.569992, 0.968481, 0.931772, 0.534102, 0.487766, 0.158958, 0.382199, 0.640329, 0.88933, 0.258885, 0.716616, 0.388569, 0.622888, 0.518576, 0.312578, 0.877588, 0.77198, 0.253978, 0.450153, 0.0842559, 0.766154, 0.693676, 0.743777, 0.229778, 0.148903, 0.550572, 0.500557, 0.624845, 0.669729, 0.619281, 0.301052, 0.931496, 0.926573, 0.355867, 0.821787, 0.562358, 0.0748949, 0.927636, 0.840228, 0.0752844, 0.282079, 0.359595, 0.837961, 0.496845, 0.116626, 0.721654, 0.760899, 0.98996, 0.185363, 0.227649, 0.369601, 0.314955, 0.101791, 0.921601, 0.316116, 0.910024, 0.173297, 0.137118, 0.454023, 0.905088, 0.602478, 0.57654, 0.341757, 0.571889, 0.438844, 0.618136, 0.466023, 0.15874, 0.209441, 0.789919, 0.844397, 0.619178, 0.768327, 0.666072, 0.93239, 0.276612, 0.784224, 0.0826931, 0.0291408, 0.743507, 0.349243, 0.901697, 0.433116, 0.788764, 0.972337, 0.601347, 0.370131, 0.777478, 0.648265, 0.639736, 0.554009, 0.86256, 0.540843, 0.147768, 0.705168, 0.0272573, 0.66463, 0.939175, 0.940183, 0.644806, 0.941683, 0.98579, 0.4893, 0.424486, 0.0741436, 0.865929, 0.848053, 0.377642, 0.372867, 0.832198, 0.085784, 0.449933, 0.10641, 0.363953, 0.713693, 0.483051, 0.914744, 0.237893, 0.929199, 0.704769, 0.517149, 0.632056, 0.356342, 0.749495, 0.736436, 0.64935, 0.943998, 0.47263, 0.335078, 0.306414, 0.67485, 0.211166, 0.970188, 0.5774, 0.361373, 0.703422, 0.0155961, 0.132124, 0.744184, 0.843494, 0.427285, 0.049488, 0.556826, 0.487275, 0.99587, 0.125392, 0.0107001, 0.836028, 0.313925, 0.132863, 0.916593, 0.181805, 0.354308, 0.562205, 0.361136, 0.487999, 0.488793, 0.8746, 0.604234, 0.325402, 0.838701, 0.4072, 0.692251, 0.0839244, 0.151218, 0.666377, 0.333471, 0.489228, 0.288571, 0.0924642, 0.267739, 0.127873, 0.076535, 0.583941, 0.501515, 0.148763, 0.454595, 0.308205, 0.563837, 0.123453, 0.152495, 0.932308, 0.627603, 0.877615, 0.794499, 0.60423, 0.640577, 0.404485, 0.439997, 0.181546, 0.492963, 0.807206, 0.29167, 0.846094, 0.458601, 0.813685, 0.46568, 0.626272, 0.848856, 0.633707, 0.498661, 0.675078, 0.620549, 0.456073, 0.729302, 0.560664, 0.366745, 0.0020874, 0.970074, 0.125042, 0.264685, 0.132465, 0.112823, 0.988554, 0.722156, 0.0396353, 0.865664, 0.484429, 0.548686, 0.59103, 0.582476, 0.734894, 0.889404, 0.285218, 0.956761, 0.541518, 0.0898954, 0.227648, 0.442708, 0.3522, 0.893348, 0.120664, 0.882216, 0.378029, 0.401639, 0.450792, 0.268672, 0.52879, 0.435971, 0.211729, 0.526568, 0.99103, 0.904192, 0.11201, 0.513164, 0.656673, 0.0417688, 0.612218, 0.442739, 0.11838, 0.748262, 0.0553697, 0.870026, 0.552763, 0.751894, 0.0466498, 0.376235, 0.19962, 0.138471, 0.583898, 0.708559, 0.143441, 0.550168, 0.972127, 0.659844, 0.84563, 0.764332, 0.851975, 0.7284, 0.0798467, 0.136125, 0.246906, 0.286265, 0.667871, 0.393268, 0.484624, 0.482572, 0.458289, 0.479928, 0.798781, 0.59654, 0.597004, 0.966279, 0.548111, 0.901875, 0.0518197, 0.828546, 0.428622, 0.709387, 0.432428, 0.379198, 0.162804, 0.0395384, 0.51822, 0.121117, 0.306746, 0.0220598, 0.556756, 0.907205, 0.274725, 0.414212, 0.646132, 0.879867, 0.208859, 0.622705, 0.584889, 0.579855, 0.84896, 0.865105, 0.622523, 0.128977, 0.344812, 0.826247, 0.190077, 0.687314, 0.112438, 0.633044, 0.0851668, 0.312351, 0.0345673, 0.337747, 0.863044, 0.768314, 0.127261, 0.817728, 0.498857, 0.850444, 0.0438929, 0.344282, 0.59962, 0.48862, 0.843066, 0.0400887, 0.344755, 0.755413, 0.71701, 0.843423, 0.859438, 0.384985, 0.221923, 0.795133, 0.868294, 0.15968, 0.15446, 0.161986, 0.520422, 0.82244, 0.141847, 0.0142685, 0.231809, 0.166331, 0.296579, 0.519988, 0.898191, 0.986998, 0.581005, 0.764441, 0.246703, 0.962021, 0.305047, 0.385845, 0.558912, 0.734187, 0.486664, 0.727426, 0.645535, 0.77368, 0.620122, 0.549884, 0.151009, 0.719495, 0.198852, 0.663813, 0.0212, 0.590674, 0.339498, 0.910916, 0.67548, 0.704248, 0.10258, 0.378093, 0.504135, 0.731606, 0.37598, 0.524782, 0.305907, 0.840336, 0.0435258, 0.517255, 0.820124, 0.455485, 0.382279, 0.258978, 0.0118907, 0.574468, 0.000370391, 0.535995, 0.0437597, 0.494886, 0.529831, 0.371977, 0.878498, 0.592735, 0.579801, 0.213448, 0.136356, 0.502449, 0.421104, 0.0246227, 0.138632, 0.166079, 0.903021, 0.208556, 0.0275364, 0.59723, 0.572199, 0.612322, 0.0801436, 0.755741, 0.635786, 0.748222, 0.844535, 0.854072, 0.545856, 0.981599, 0.259136, 0.815326, 0.682794, 0.225271, 0.278167, 0.293423, 0.032971, 0.898458, 0.207444, 0.591989, 0.0866576, 0.137149, 0.56238, 0.566976, 0.805517, 0.0404672, 0.472306, 0.0942821, 0.972937, 0.467296, 0.270338, 0.710223, 0.244662, 0.664424, 0.592779, 0.305683, 0.242862, 0.706691, 0.916735, 0.306694, 0.768377, 0.868677, 0.908373, 0.768993, 0.927949, 0.468041, 0.460656, 0.400875, 0.434938, 0.290367, 0.232434, 0.357157, 0.0128459, 0.437152, 0.466177, 0.657715, 0.727624, 0.972282, 0.733378, 0.856529, 0.633336, 0.816966, 0.717271, 0.707479, 0.157193, 0.104709, 0.663118, 0.354479, 0.298013, 0.978317, 0.359396, 0.0353948, 0.935718, 0.491857, 0.268235, 0.777505, 0.228963, 0.541129, 0.393863, 0.55355, 0.269054, 0.14284, 0.766364, 0.968131, 0.948895, 0.106029, 0.4013, 0.321956, 0.410192, 0.578325, 0.692227, 0.727088, 0.493178, 0.583339, 0.79957, 0.483175, 0.369821, 0.685034, 0.481991, 0.172286, 0.589553, 0.816481, 0.517605, 0.878193, 0.710538, 0.899827, 0.268533, 0.584388, 0.76881, 0.526527, 0.896592, 0.274417, 0.46026, 0.795278, 0.807539, 0.968379, 0.234594, 0.0148252, 0.29242, 0.31012, 0.966512, 0.511125, 0.892265, 0.545913, 0.48244, 0.647221, 0.645802, 0.0762699, 0.41632, 0.274838, 0.434929, 0.950228, 0.544201, 0.954981, 0.0945208, 0.970956, 0.122549, 0.870073, 0.344364, 0.867787, 0.418752, 0.762004, 0.580309, 0.0475792, 0.867132, 0.830557, 0.409413, 0.670011, 0.593376, 0.289237, 0.269791, 0.178829, 0.505401, 0.565177, 0.753664, 0.318758, 0.258873, 0.825573, 0.0131477, 0.0329788, 0.191514, 0.406331, 0.55217, 0.911449, 0.42773, 0.912159, 0.743448, 0.329714, 0.174694, 0.599153, 0.725145, 0.489082, 0.122147, 0.922033, 0.0334803, 0.875512, 0.735841, 0.396567, 0.666394, 0.5934, 0.0900951, 0.546536, 0.132565, 0.030356, 0.108104, 0.318712, 0.905341, 0.561999, 0.00227073, 0.611036, 0.446425, 0.642674, 0.791669, 0.745705, 0.627445, 0.711358, 0.300592, 0.191491, 0.0734605, 0.926486, 0.971534, 0.216448, 0.358948, 0.797552, 0.688223, 0.902068, 0.327787, 0.538522, 0.0104212, 0.861041, 0.230189, 0.724042, 0.7413, 0.238936, 0.979917, 0.842628, 0.00761529, 0.276444, 0.728593, 0.721653, 0.466402, 0.493275, 0.850108, 0.957943, 0.0201826, 0.285425, 0.46538, 0.889115, 0.934114, 0.323059, 0.0640352, 0.412287, 0.069839, 0.815932, 0.535348, 0.618055, 0.282584, 0.645283, 0.256193, 0.831606, 0.61696, 0.478114, 0.330771, 0.0245916, 0.148101, 0.221962, 0.0699719, 0.418363, 0.136999, 0.272119, 0.332734, 0.323022, 0.651946, 0.230852, 0.57896, 0.445126, 0.241903, 0.782573, 0.212796, 0.912807, 0.713923, 0.184787, 0.17394, 0.45225, 0.0527854, 0.956684, 0.913021, 0.918269, 0.329428, 0.178272, 0.996181, 0.147719, 0.620964, 0.977922, 0.221524, 0.909216, 0.762584, 0.15674, 0.877335, 0.853397, 0.0209881, 0.00119366, 0.00917235, 0.837708, 0.98003, 0.749812, 0.238334, 0.290615, 0.765851, 0.827644, 0.0230157, 0.488133, 0.716798, 0.630641, 0.375724, 0.932843, 0.582879, 0.526096, 0.63768, 0.960393, 0.0611636, 0.287294, 0.339218, 0.255489, 0.160588, 0.361207, 0.864941, 0.117415, 0.914865, 0.925241, 0.934864, 0.363426, 0.06626, 0.883645, 0.548197, 0.988083, 0.687007, 0.922413, 0.416053, 0.584185, 0.454536, 0.966501, 0.468235, 0.473619, 0.564859, 0.781558, 0.292176, 0.913656, 0.234248, 0.390464, 0.223829, 0.936763, 0.222495, 0.00311183, 0.23431, 0.67509, 0.881006, 0.5757, 0.501437, 0.403494, 0.746247, 0.827228, 0.798622, 0.0268835, 0.620371, 0.315765, 0.256495, 0.232294, 0.524494, 0.701232, 0.966621, 0.399158, 0.877522, 0.50706, 0.848481, 0.571029, 0.844272, 0.269454, 0.264118, 0.566283, 0.584814, 0.798329, 0.806105, 0.693213, 0.652205, 0.523262, 0.666253, 0.102989, 0.989356, 0.618731, 0.535509, 0.736631, 0.433495, 0.15008, 0.0706011, 0.873053, 0.0523965, 0.918687, 0.393388, 0.172067, 0.930569, 0.0978199, 0.447101, 0.523367, 0.609299, 0.0901271, 0.890782, 0.307543, 0.945913, 0.997703, 0.108629, 0.348304, 0.348333, 0.00204869, 0.122618, 0.0938569, 0.794874, 0.305123, 0.364302, 0.728145, 0.274895, 0.00512434, 0.417486, 0.870662, 0.616409, 0.0514523, 0.394643, 0.0589114, 0.952772, 0.82066, 0.58701, 0.630937, 0.0806043, 0.153536, 0.753016, 0.673523, 0.116033, 0.795464, 0.774427, 0.161471, 0.514159, 0.352222, 0.175217, 0.947267, 0.238156, 0.696229, 0.673384, 0.800644, 0.805077, 0.833149, 0.910582, 0.903417, 0.719841, 0.535921, 0.321334, 0.731686, 0.165966, 0.29207, 0.0382712, 0.724159, 0.444494, 0.228684, 0.850965, 0.239151, 0.0766897, 0.939425, 0.355534, 0.732126, 0.647372, 0.0665641, 0.237258, 0.567454, 0.990579, 0.00466232, 0.404217, 0.99872, 0.846181, 0.708998, 0.264811, 0.137258, 0.390717, 0.646865, 0.578728, 0.940499, 0.398576, 0.791966, 0.847309, 0.910536, 0.305601, 0.223202, 0.671371, 0.575081, 0.418981, 0.718384, 0.785501, 0.714349, 0.993204, 0.220676, 0.0463192, 0.436105, 0.969991, 0.788946, 0.839453, 0.205625, 0.765504, 0.549265, 0.952862, 0.315553, 0.708387, 0.278794, 0.53273, 0.396267, 0.639137, 0.417389, 0.536962, 0.778538, 0.0704751, 0.209171, 0.421222, 0.329966, 0.958506, 0.362686, 0.781173, 0.36151, 0.992726, 0.739856, 0.404086, 0.955045, 0.335428, 0.317527, 0.033478, 0.266236, 0.329765, 0.898863, 0.892905, 0.548673, 0.974924, 0.222934, 0.300501, 0.803623, 0.657457, 0.0926151, 0.893657, 0.863848, 0.317299, 0.368237, 0.404105, 0.856653, 0.459946, 0.417223, 0.164491, 0.517928, 0.249446, 0.855886, 0.395833, 0.111271, 0.972095, 0.867095, 0.791977, 0.850217, 0.281371, 0.311965, 0.16241, 0.137629, 0.636136, 0.0583402, 0.614807, 0.164026, 0.869045, 0.278282, 0.215324, 0.506442, 0.530095, 0.164135, 0.813471, 0.420058, 0.375853, 0.688981, 0.976384, 0.179628, 0.620888, 0.952071, 0.17401, 0.682865, 0.607785, 0.472553, 0.0930836, 0.321095, 0.275772, 0.484247, 0.606148, 0.246217, 0.6663, 0.0347261, 0.38875, 0.963596, 0.570533, 0.0792511, 0.639529, 0.918089, 0.34228, 0.0651234, 0.847136, 0.048013, 0.0773289, 0.118597, 0.557397, 0.92688, 0.502407, 0.205696, 0.871466, 0.145665, 0.948064, 0.527651, 0.309527, 0.525342, 0.848226, 0.48169, 0.287602, 0.911198, 0.816496, 0.954854, 0.958746, 0.830337, 0.0193145, 0.234588, 0.708238, 0.96585, 0.281358, 0.748971, 0.846833, 0.150531, 0.149437, 0.59636, 0.132067, 0.684251, 0.00824953, 0.470071, 0.646633, 0.834605, 0.702461, 0.699978, 0.0397383, 0.0385084, 0.408672, 0.7886, 0.704932, 0.905495, 0.949505, 0.0158733, 0.0311443, 0.904186, 0.725075, 0.96919, 0.0891038, 0.721771, 0.812275, 0.0929913, 0.752498, 0.702842, 0.617272, 0.00415427, 0.195183, 0.0923236, 0.584529, 0.100009, 0.965539, 0.853122, 0.186088, 0.354098, 0.545862, 0.593046, 0.0472148, 0.431368, 0.951433, 0.350727, 0.128205, 0.011742, 0.15187, 0.379414, 0.370228, 0.704354, 0.446088, 0.390218, 0.0558316, 0.505985, 0.522278, 0.330331, 0.879995, 0.983962, 0.702965, 0.839292, 0.644988, 0.497466, 0.137148, 0.36727, 0.241909, 0.0717726, 0.163127, 0.356664, 0.945429, 0.525523, 0.407935, 0.895344, 0.271098, 0.564412, 0.279167, 0.332507, 0.0262576, 0.356067, 0.519654, 0.562258, 0.0140433, 0.775724, 0.14861, 0.501813, 0.644077, 0.507464, 0.039158, 0.227907, 0.564984, 0.0942694, 0.99136, 0.421523, 0.199493, 0.414941, 0.758915, 0.471849, 0.540802, 0.540249, 0.044356, 0.458094, 0.419721, 0.414693, 0.491922, 0.598583, 0.436652, 0.0778936, 0.871026, 0.18228, 0.703523, 0.95991, 0.736018, 0.884932, 0.372552, 0.633964, 0.505102, 0.701651, 0.120149, 0.705858, 0.846772, 0.356507, 0.453378, 0.488071, 0.455906, 0.818895, 0.768284, 0.749975, 0.424067, 0.763081, 0.4972, 0.525275, 0.436984, 0.720872, 0.841366, 0.603379, 0.203636, 0.247814, 0.0345843, 0.233446, 0.437879, 0.494484, 0.442268, 0.172725, 0.446337, 0.0668237, 0.622904, 0.650961, 0.235228, 0.578706, 0.00703805, 0.751831, 0.622382, 0.605212, 0.168761, 0.282641, 0.946553, 0.629277, 0.576287, 0.863389, 0.618427, 0.366435, 0.879814, 0.281041, 0.514958, 0.472468, 0.972822, 0.683152, 0.381074, 0.363323, 0.4224, 0.196619, 0.789101, 0.578645, 0.725778, 0.408127, 0.853077, 0.702061, 0.376187, 0.0197272, 0.72053, 0.0561716, 0.869047, 0.167927, 0.840342, 0.280166, 0.719879, 0.0903317, 0.970616, 0.716263, 0.962585, 0.967102, 0.478998, 0.400097, 0.0836012, 0.396025, 0.76018, 0.588775, 0.619031, 0.946067, 0.725609, 0.689145, 0.590953, 0.00765291, 0.828622, 0.00518687, 0.580943, 0.485026, 0.625951, 0.478734, 0.160152, 0.694386, 0.651113, 0.88445, 0.136163, 0.515494, 0.0715804, 0.999748, 0.0278632, 0.997742, 0.137615, 0.912324, 0.548444, 0.107588, 0.261158, 0.177504, 0.656161, 0.494523, 0.654332, 0.553197, 0.0268269, 0.429406, 0.4434, 0.530819, 0.951542, 0.86911, 0.75036, 0.423428, 0.35158, 0.0924659, 0.333847, 0.841109, 0.198169, 0.881253, 0.760105, 0.780111, 0.55177, 0.517346, 0.868177, 0.931512, 0.0381506, 0.922693, 0.988944, 0.40053, 0.821572, 0.782145, 0.443022, 0.820517, 0.00390795, 0.840286, 0.676976, 0.123703, 0.313046, 0.120498, 0.968606, 0.112176, 0.18899, 0.713064, 0.486598, 0.278596, 0.640871, 0.890861, 0.951679, 0.499786, 0.673355, 0.444727, 0.442644, 0.0730863, 0.812623, 0.493647, 0.603035, 0.376251, 0.116347, 0.130119, 0.398594, 0.123375, 0.475441, 0.179478, 0.152404, 0.984536, 0.733495, 0.460671, 0.821167, 0.326116, 0.373722, 0.00906352, 0.470281, 0.654762, 0.14537, 0.475416, 0.670019, 0.485323, 0.768884, 0.143904, 0.119491, 0.928004, 0.545244, 0.73309, 0.343575, 0.269428, 0.834233, 0.100279, 0.629533, 0.223478, 0.450849, 0.577506, 0.188136, 0.128219, 0.705481, 0.606171, 0.832358, 0.931524, 0.361377, 0.0558561, 0.361013, 0.732288, 0.730804, 0.219975, 0.413246, 0.621713, 0.940006, 0.570548, 0.0191787, 0.347977, 0.788357, 0.725187, 0.429053, 0.659885, 0.562865, 0.268399, 0.63032, 0.888551, 0.258158, 0.975291, 0.698359, 0.156681, 0.1022, 0.989513, 0.472163, 0.911954, 0.607903, 0.87819, 0.0606918, 0.507271, 0.921854, 0.623615, 0.915042, 0.24713, 0.543187, 0.110192, 0.451849, 0.163348, 0.462212, 0.841569, 0.0780443, 0.116758, 0.467247, 0.673064, 0.379408, 0.292629, 0.436334, 0.442518, 0.819146, 0.631085, 0.616979, 0.0483111, 0.4686, 0.37471, 0.830827, 0.619665, 0.795623, 0.102122, 0.489741, 0.0455496, 0.683585, 0.494164, 0.745055, 0.398608, 0.295058, 0.371217, 0.872504, 0.480796, 0.0173388, 0.219129, 0.980498, 0.0183539, 0.913636, 0.790602, 0.370361, 0.681016, 0.981706, 0.305975, 0.545098, 0.373718, 0.213687, 0.217866, 0.395677, 0.948431, 0.00718711, 0.457265, 0.320963, 0.522622, 0.519726, 0.717045, 0.415632, 0.701428, 0.152629, 0.895539, 0.947062, 0.656078, 0.127093, 0.542125, 0.635967, 0.835364, 0.0349438, 0.792948, 0.960612, 0.379756, 0.95115, 0.873927, 0.655596, 0.148976, 0.941628, 0.380821, 0.00826947, 0.409044, 0.657992, 0.0977822, 0.829968, 0.00873706, 0.848394, 0.265941, 0.382801, 0.977807, 0.101359, 0.965118, 0.448092, 0.655582, 0.952793, 0.868007, 0.221387, 0.0432116, 0.85909, 0.260964, 0.497213, 0.359838, 0.146938, 0.499124, 0.445027, 0.956239, 0.588245, 0.147695, 0.84798, 0.693045, 0.268923, 0.173119, 0.83999, 0.617523, 0.0598578, 0.34214, 0.13044, 0.152647, 0.56152, 0.413558, 0.617507, 0.812179, 0.822745, 0.2821, 0.143157, 0.454069, 0.765582, 0.366272, 0.78521, 0.903761, 0.719538, 0.262567, 0.483337, 0.0533463, 0.973436, 0.192161, 0.224715, 0.988409, 0.873201, 0.936524, 0.487589, 0.786111, 0.442394, 0.699116, 0.731332, 0.127783, 0.380516, 0.983647, 0.0366471, 0.812196, 0.815976, 0.314281, 0.0170025, 0.849733, 0.271804, 0.125294, 0.247795, 0.591157, 0.640856, 0.659722, 0.39571, 0.494928, 0.231015, 0.354281, 0.368856, 0.348567, 0.697968, 0.457834, 0.153735, 0.741447, 0.161638, 0.781368, 0.832466, 0.670395, 0.818395, 0.805167, 0.320835, 0.18359, 0.0279467, 0.511568, 0.585307, 0.460593, 0.881784, 0.0247689, 0.69081, 0.160754, 0.10876, 0.141596, 0.298767, 0.684746, 0.386982, 0.603978, 0.0342262, 0.192914, 0.535633, 0.689069, 0.574535, 0.382116, 0.541315, 0.60476, 0.0825558, 0.887844, 0.527358, 0.292189, 0.360623, 0.459004, 0.100286, 0.923335, 0.259623, 0.0195067, 0.076642, 0.794031, 0.438567, 0.738351, 0.0244942, 0.133518, 0.575819, 0.148434, 0.0901353, 0.685618, 0.644974, 0.427246, 0.391579, 0.824913, 0.828225, 0.260032, 0.938803, 0.77495, 0.230349, 0.478557, 0.411945, 0.970463, 0.458079, 0.220708, 0.471714, 0.531153, 0.424397, 0.737736, 0.885419, 0.194601, 0.11476, 0.68696, 0.0892846, 0.839981, 0.583536, 0.436056, 0.382743, 0.311323, 0.319753, 0.58397, 0.0815436, 0.380069, 0.18136, 0.267518, 0.830066, 0.0584171, 0.139266, 0.273065, 0.171726, 0.00458768, 0.222857, 0.925623, 0.900361, 0.51574, 0.596751, 0.813189, 0.197677, 0.0567514, 0.710202, 0.824086, 0.439462, 0.0231343, 0.218383, 0.791127, 0.0592606, 0.819213, 0.293942, 0.732215, 0.524439, 0.0745607, 0.566805, 0.327065, 0.297679, 0.863037, 0.192395, 0.550365, 0.505564, 0.721567, 0.235523, 0.190249, 0.704856, 0.610154, 0.63136, 0.50305, 0.0138194, 0.850425, 0.267358, 0.88102, 0.618658, 0.333025, 0.714303, 0.85966, 0.278003, 0.948647, 0.274045, 0.548061, 0.432696, 0.238113, 0.434919, 0.838559, 0.332847, 0.466082, 0.0999418, 0.714829, 0.23849, 0.189547, 0.300622, 0.378781, 0.412515, 0.085281, 0.376209, 0.130332, 0.394384, 0.513449, 0.14577, 0.878797, 0.344062, 0.0608711, 0.334307, 0.479975, 0.96941, 0.883748, 0.81579, 0.708103, 0.118562, 0.951975, 0.569436, 0.13403, 0.436409, 0.677935, 0.273193, 0.335325, 0.187648, 0.899499, 0.872155, 0.151509, 0.145164, 0.5847, 0.22331, 0.987865, 0.50343, 0.44699, 0.254158, 0.417958, 0.0958172, 0.812483, 0.61296, 0.545265, 0.717791, 0.344686, 0.970344, 0.26587, 0.27406, 0.696818, 0.659104, 0.0912778, 0.467363, 0.89569, 0.327195, 0.990539, 0.691432, 0.693244, 0.301676, 0.328546, 0.142788, 0.534478, 0.310121, 0.606257, 0.388767, 0.327255, 0.148937, 0.0259379, 0.411983, 0.26551, 0.321967, 0.306039, 0.228785, 0.706771, 0.257146, 0.530639, 0.100971, 0.490982, 0.171569, 0.690203, 0.0361563, 0.767452, 0.0241055, 0.819421, 0.184101, 0.535402, 0.620448, 0.37025, 0.911208, 0.0526985, 0.0206299, 0.58876, 0.78452, 0.492915, 0.906777, 0.186986, 0.87997, 0.917257, 0.688995, 0.343211, 0.734597, 0.22362, 0.368586, 0.0182799, 0.719629, 0.115835, 0.495449, 0.809409, 0.286502, 0.0485891, 0.184236, 0.439232, 0.667535, 0.00833676, 0.059481, 0.967009, 0.0198153, 0.264556, 0.00745546, 0.799353, 0.466681, 0.0255029, 0.678498, 0.910946, 0.324607, 0.464767, 0.552058, 0.18444, 0.0361328, 0.0227582, 0.0674545, 0.368733, 0.400464, 0.906985, 0.271797, 0.559386, 0.533035, 0.294351, 0.318373, 0.653618, 0.57181, 0.198214, 0.603756, 0.390974, 0.524731, 0.520782, 0.935463, 0.322266, 0.292861, 0.682226, 0.797106, 0.657701, 0.620764, 0.935634, 0.207937, 0.150121, 0.77422, 0.498341, 0.854207, 0.73603, 0.618928, 0.857614, 0.615123, 0.436601, 0.999654, 0.0346577, 0.382397, 0.23578, 0.159694, 0.802898, 0.849086, 0.173601, 0.566291, 0.503663, 0.000907791, 0.432908, 0.53626, 0.635057, 0.628095, 0.540216, 0.441974, 0.143542, 0.504998, 0.377366, 0.0626754, 0.982903, 0.132925, 0.0336424, 0.312857, 0.968753, 0.114558, 0.608768, 0.809536, 0.935645, 0.43272, 0.98957, 0.988015, 0.274683, 0.436491, 0.837444, 0.63347, 0.823653, 0.736343, 0.373134, 0.330846, 0.840348, 0.774259, 0.830891, 0.0710832, 0.795044, 0.0787441, 0.11598, 0.881855, 0.046912, 0.575393, 0.296416, 0.690396, 0.234348, 0.75564, 0.422779, 0.00751931, 0.495845, 0.840722, 0.742031, 0.378829, 0.0470899, 0.453174, 0.0802341, 0.469482, 0.574094, 0.592449, 0.765529, 0.053402, 0.0650745, 0.607268, 0.181792, 0.0122882, 0.412182, 0.403988, 0.50623, 0.206251, 0.594131, 0.00580781, 0.354479, 0.425606, 0.641162, 0.139522, 0.965019, 0.464224, 0.661, 0.400405, 0.244725, 0.210046, 0.760081, 0.366116, 0.941694, 0.457962, 0.452597, 0.00660253, 0.491631, 0.953025, 0.870781, 0.658575, 0.877662, 0.565561, 0.290575, 0.575348, 0.733281, 0.628795, 0.978421, 0.560043, 0.490786, 0.884137, 0.2642, 0.32807, 0.352803, 0.246648, 0.354934, 0.747577, 0.538506, 0.736983, 0.365859, 0.902217, 0.925401, 0.12419, 0.234035, 0.85746, 0.627068, 0.297742, 0.571606, 0.113314, 0.211255, 0.796477, 0.695486, 0.198958, 0.00534874, 0.838085, 0.717911, 0.843605, 0.90015, 0.196225, 0.847855, 0.970182, 0.0179115, 0.920947, 0.0310982, 0.0923537, 0.37261, 0.248712, 0.331397, 0.765657, 0.107262, 0.991801, 0.267758, 0.602164, 0.994922, 0.96184, 0.908249, 0.0253487, 0.468285, 0.225145, 0.507848, 0.231158, 0.826418, 0.487689, 0.431842, 0.216524, 0.873633, 0.6352, 0.332248, 0.176249, 0.771305, 0.764552, 0.585991, 0.137447, 0.640685, 0.550652, 0.652009, 0.0314484, 0.789505, 0.512971, 0.0248802, 0.933123, 0.063926, 0.875311, 0.905833, 0.163972, 0.451923, 0.0538253, 0.454843, 0.306446, 0.676538, 0.456339, 0.855465, 0.539155, 0.598855, 0.0534005, 0.597041, 0.535691, 0.206426, 0.877376, 0.476916, 0.980647, 0.79618, 0.0319222, 0.758395, 0.732991, 0.823359, 0.246999, 0.00202494, 0.960105, 0.695987, 0.708624, 0.90967, 0.823499, 0.580391, 0.657391, 0.72101, 0.0825454, 0.537206, 0.966665, 0.615661, 0.675438, 0.573968, 0.258932, 0.0796575, 0.214016, 0.720248, 0.205112, 0.932885, 0.350038, 0.78394, 0.674189, 0.712033, 0.0894086, 0.166538, 0.68876, 0.855589, 0.284384, 0.0357575, 0.225892, 0.801603, 0.957358, 0.308581, 0.877395, 0.895488, 0.394516, 0.689515, 0.333916, 0.416193, 0.953052, 0.650364, 0.394527, 0.755367, 0.396756, 0.704499, 0.0453959, 0.94101, 0.368692, 0.267167, 0.888319, 0.288094, 0.957726, 0.882679, 0.668571, 0.440301, 0.128254, 0.98723, 0.859162, 0.373156, 0.894042, 0.565849, 0.437508, 0.728492, 0.0955409, 0.250962, 0.926881, 0.48577, 0.353221, 0.98645, 0.506324, 0.0770055, 0.341273, 0.523949, 0.0977201, 0.782153, 0.97177, 0.0705393, 0.862642, 0.353276, 0.729284, 0.180151, 0.429601, 0.285683, 0.921411, 0.975469, 0.139252, 0.53892, 0.0100419, 0.785333, 0.395086, 0.282003, 0.110533, 0.502591, 0.680647, 0.899728, 0.722176, 0.608043, 0.119715, 0.361689, 0.201586, 0.752717, 0.312592, 0.689275, 0.848409, 0.248991, 0.921938, 0.554438, 0.901945, 0.827006, 0.426345, 0.576863, 0.964859, 0.806244, 0.0234316, 0.665693, 0.551361, 0.252924, 0.213853, 0.15006, 0.741355, 0.172567, 0.828515, 0.605658, 0.869355, 0.271804, 0.0344066, 0.290958, 0.976558, 0.694829, 0.14866, 0.889921, 0.543477, 0.646464, 0.439362, 0.894357, 0.867245, 0.425842, 0.82009, 0.273842, 0.43805, 0.559275, 0.202145, 0.316164, 0.214817, 0.605823, 0.101551, 0.994712, 0.241246, 0.124724, 0.778991, 0.229642, 0.432384, 0.0791583, 0.460771, 0.280549, 0.897206, 0.986457, 0.649935, 0.0944081, 0.55202, 0.368493, 0.20841, 0.320486, 0.799556, 0.136362, 0.652654, 0.913601, 0.805755, 0.731705, 0.781295, 0.731737, 0.452055, 0.117141, 0.455526, 0.802994, 0.899669, 0.589887, 0.564842, 0.281019, 0.844517, 0.0374629, 0.729554, 0.200922, 0.100941, 0.939185, 0.277081, 0.567922, 0.453395, 0.241402, 0.659322, 0.5809, 0.449243, 0.532492, 0.289835, 0.0836161, 0.157201, 0.236284, 0.0372842, 0.776088, 0.0816245, 0.260832, 0.770074, 0.112621, 0.226661, 0.845001, 0.781261, 0.680766, 0.109199, 0.453802, 0.773556, 0.270642, 0.838856, 0.495279, 0.0995587, 0.96076, 0.570524, 0.139087, 0.35498, 0.283695, 0.398509, 0.638504, 0.305007, 0.727488, 0.982274, 0.723471, 0.757266, 0.717239, 0.842543, 0.144779, 0.52728, 0.376157, 0.375466, 0.383735, 0.0684799, 0.75257, 0.241517, 0.189292, 0.510436, 0.882453, 0.395124, 0.629403, 0.71659, 0.164524, 0.856016, 0.29599, 0.00388109, 0.0455246, 0.553535, 0.31949, 0.606457, 0.314088, 0.168787, 0.866016, 0.17326, 0.985027, 0.840441, 0.162676, 0.308419, 0.17278, 0.630288, 0.286061, 0.390912, 0.565466, 0.482973, 0.590098, 0.363479, 0.858017, 0.324386, 0.0734636, 0.171853, 0.285879, 0.677045, 0.746952, 0.362523, 0.277648, 0.640389, 0.542529, 0.884883, 0.873881, 0.57068, 0.12913, 0.0727719, 0.490731, 0.193608, 0.537301, 0.174337, 0.167731, 0.251585, 0.7421, 0.695198, 0.0714191, 0.753958, 0.175875, 0.333626, 0.410325, 0.0853843, 0.0373917, 0.165545, 0.585172, 0.653036, 0.197596, 0.708798, 0.891825, 0.0530165, 0.317699, 0.0242943, 0.828267, 0.298553, 0.606522, 0.40722, 0.3028, 0.428068, 0.413235, 0.290394, 0.928764, 0.138489, 0.621233, 0.473565, 0.502569, 0.915934, 0.852129, 0.958256, 0.833769, 0.330935, 0.285965, 0.39583, 0.34437, 0.79406, 0.695471, 0.489019, 0.647326, 0.887059, 0.196765, 0.800299, 0.577649, 0.162322, 0.197486, 0.532213, 0.17609, 0.339781, 0.803967, 0.969291, 0.562249, 0.311154, 0.108128, 0.0232262, 0.254611, 0.541964, 0.302667, 0.0340515, 0.856238, 0.0921222, 0.0162616, 0.0129496, 0.643613, 0.668873, 0.949685, 0.243754, 0.160607, 0.66376, 0.100144, 0.406273, 0.901384, 0.821828, 0.449341, 0.323655, 0.659461, 0.335132, 0.713815, 0.876345, 0.860541, 0.8655, 0.118372, 0.915771, 0.264669, 0.186303, 0.987255, 0.0511815, 0.242539, 0.481547, 0.238834, 0.90557, 0.610321, 0.0153901, 0.0686374, 0.990621, 0.155924, 0.237609, 0.867834, 0.402889, 0.234611, 0.502406, 0.454898, 0.033149, 0.963711, 0.29053, 0.00613623, 0.713888, 0.83206, 0.544744, 0.912221, 0.418114, 0.104555, 0.852651, 0.239303, 0.533597, 0.0633394, 0.369369, 0.0363332, 0.738775, 0.129987, 0.989882, 0.0903476, 0.67066, 0.984484, 0.731707, 0.204108, 0.262011, 0.790277, 0.407431, 0.695728, 0.515828, 0.80544, 0.396803, 0.738432, 0.300266, 0.41094, 0.0174427, 0.792764, 0.962807, 0.19489, 0.392264, 0.0250602, 0.549187, 0.423237, 0.990243, 0.0709377, 0.279543, 0.441153, 0.829393, 0.79389, 0.342466, 0.556978, 0.723297, 0.61761, 0.474607, 0.703597, 0.314514, 0.436039, 0.0284574, 0.919066, 0.361321, 0.144575, 0.0145018, 0.0113933, 0.0174701, 0.987526, 0.630435, 0.0479874, 0.858087, 0.84096, 0.0279664, 0.991547, 0.971255, 0.693827, 0.213036, 0.983827, 0.0670754, 0.502464, 0.67391, 0.860976, 0.0579069, 0.652105, 0.516673, 0.177516, 0.788812, 0.691486, 0.243459, 0.318354, 0.642212, 0.233111, 0.16263, 0.780506, 0.277115, 0.476356, 0.927041, 0.945656, 0.757738, 0.343521, 0.0523147, 0.987188, 0.49376, 0.980823, 0.160174, 0.376507, 0.530395, 0.364825, 0.615636, 0.646437, 0.843024, 0.17215, 0.358871, 0.477917, 0.647662, 0.298575, 0.85336, 0.225717, 0.324678, 0.0683453, 0.0224925, 0.677301, 0.503955, 0.529906, 0.91943, 0.167513, 0.547852, 0.696627, 0.922141, 0.647636, 0.107806, 0.412627, 0.714917, 0.27587, 0.337171, 0.704684, 0.575313, 0.124983, 0.370637, 0.0729516, 0.532589, 0.976727, 0.819767, 0.749335, 0.26185, 0.0511744, 0.887902, 0.655393, 0.923195, 0.487177, 0.289932, 0.95037, 0.331985, 0.272447, 0.912072, 0.0122396, 0.0228211, 0.0912927, 0.543144, 0.130772, 0.67181, 0.279073, 0.28372, 0.215929, 0.517065, 0.12952, 0.393084, 0.262185, 0.249635, 0.145934, 0.807771, 0.289482, 0.200324, 0.681676, 0.971608, 0.65552, 0.748534, 0.732571, 0.670498, 0.0325363, 0.580648, 0.656321, 0.387915, 0.124873, 0.75155, 0.968077, 0.857231, 0.749537, 0.769885, 0.735312, 0.705178, 0.716916, 0.315119, 0.225334, 0.781481, 0.628665, 0.261255, 0.279811, 0.238185, 0.604197, 0.543634, 0.277021, 0.0191785, 0.718772, 0.196327, 0.372165, 0.355685, 0.62155, 0.834478, 0.651207, 0.284066, 0.210423, 0.258764, 0.91941, 0.888097, 0.59582, 0.58614, 0.491729, 0.624123, 0.103061, 0.704686, 0.45165, 0.816415, 0.334252, 0.641878, 0.237831, 0.406237, 0.727529, 0.870321, 0.337048, 0.880207, 0.285846, 0.645347, 0.797818, 0.259991, 0.939288, 0.578513, 0.781581, 0.375879, 0.879636, 0.0595484, 0.0972308, 0.85256, 0.428763, 0.741762, 0.01782, 0.870616, 0.815716, 0.442021, 0.48371, 0.892933, 0.0430317, 0.578327, 0.728407, 0.32479, 0.479309, 0.411943, 0.0872487, 0.835479, 0.483019, 0.895263, 0.783879, 0.51492, 0.795512, 0.724458, 0.917798, 0.282119, 0.729926, 0.40114, 0.985559, 0.332845, 0.746442, 0.433681, 0.0434488, 0.0174582, 0.895252, 0.0738798, 0.79687, 0.868855, 0.351842, 0.397739, 0.325166, 0.0802933, 0.535825, 0.531884, 0.844924, 0.130376, 0.803715, 0.126476, 0.192147, 0.494812, 0.237002, 0.857296, 0.309453, 0.0581357, 0.0837743, 0.639852, 0.354632, 0.459995, 0.246271, 0.262474, 0.735014, 0.143103, 0.267747, 0.0753686, 0.739178, 0.056982, 0.000799715, 0.892406, 0.0882378, 0.307848, 0.803027, 0.379611, 0.85492, 0.759238, 0.163213, 0.702486, 0.882134, 0.186, 0.313584, 0.00636078, 0.0902764, 0.279897, 0.002731, 0.0761079, 0.384237, 0.510629, 0.265343, 0.752802, 0.315032, 0.826784, 0.882114, 0.684061, 0.19909, 0.436137, 0.092918, 0.797831, 0.473867, 0.427897, 0.651829, 0.47013, 0.678715, 0.702407, 0.751334, 0.898704, 0.503614, 0.391591, 0.818978, 0.809887, 0.173134, 0.11457, 0.499702, 0.119411, 0.432502, 0.447374, 0.110724, 0.887832, 0.373947, 0.923572, 0.58658, 0.105036, 0.395687, 0.779106, 0.0784555, 0.651793, 0.605048, 0.538188, 0.660321, 0.145508, 0.648324, 0.802861, 0.702262, 0.881059, 0.0741259, 0.590445, 0.383188, 0.706176, 0.325079, 0.0229505, 0.592123, 0.184454, 0.0730534, 0.185963, 0.558702, 0.375218, 0.213493, 0.738839, 0.729522, 0.775799, 0.368516, 0.408319, 0.816075, 0.444964, 0.700222, 0.969873, 0.507899, 0.395838, 0.572048, 0.691337, 0.0971932, 0.75407, 0.397584, 0.545701, 0.517708, 0.0109691, 0.24587, 0.163002, 0.247222, 0.602707, 0.274294, 0.220517, 0.687453, 0.625314, 0.354336, 0.0765008, 0.63092, 0.0958511, 0.992166, 0.890581, 0.145185, 0.692677, 0.461927, 0.833639, 0.289073, 0.419842, 0.583822, 0.615317, 0.443634, 0.756505, 0.576425, 0.453629, 0.555153, 0.910312, 0.3237, 0.533967, 0.513721, 0.0136397, 0.684138, 0.297949, 0.787737, 0.763512, 0.764406, 0.236147, 0.821422, 0.0213322, 0.666233, 0.849554, 0.11414, 0.192536, 0.285084, 0.653564, 0.434286, 0.786304, 0.528907, 0.761106, 0.0746288, 0.239765, 0.514716, 0.902441, 0.607569, 0.112535, 0.584006, 0.745105, 0.4699, 0.368743, 0.080726, 0.255656, 0.869604, 0.845947, 0.415419, 0.304072, 0.911197, 0.884525, 0.510308, 0.0487977, 0.0136579, 0.289214, 0.584306, 0.22658, 0.586476, 0.46972, 0.498366, 0.0254632, 0.302498, 0.0300933, 0.951936, 0.588805, 0.687054, 0.612769, 0.238319, 0.920395, 0.820834, 0.359552, 0.772723, 0.179063, 0.129578, 0.686681, 0.433922, 0.272652, 0.870841, 0.185005, 0.169098, 0.809957, 0.737317, 0.978393, 0.75442, 0.326429, 0.574537, 0.731576, 0.427291, 0.0750111, 0.457059, 0.365844, 0.982787, 0.713434, 0.626172, 0.943071, 0.0118104, 0.65924, 0.858937, 0.674435, 0.824603, 0.196461, 0.47366, 0.91418, 0.262746, 0.0576108, 0.27483, 0.0246422, 0.0231248, 0.963983, 0.69429, 0.817413, 0.260235, 0.198479, 0.673689, 0.437309, 0.387193, 0.425213, 0.181452, 0.290977, 0.316833, 0.998587, 0.931413, 0.601316, 0.278275, 0.456332, 0.895515, 0.50595, 0.147378, 0.719282, 0.00545705, 0.799354, 0.371468, 0.175213, 0.00978514, 0.648104, 0.140326, 0.558741, 0.850327, 0.530164, 0.424834, 0.132659, 0.627704, 0.105294, 0.319888, 0.500085, 0.170711, 0.538634, 0.372466, 0.946422, 0.705489, 0.870202, 0.789601, 0.169897, 0.182741, 0.391257, 0.79137, 0.926907, 0.13628, 0.704615, 0.283963, 0.434937, 0.629526, 0.0748007, 0.295045, 0.28707, 0.34446, 0.0169352, 0.554462, 0.528898, 0.34901, 0.736192, 0.718325, 0.718091, 0.726318, 0.436983, 0.573098, 0.725244, 0.921197, 0.518262, 0.827842, 0.0278995, 0.510658, 0.957951, 0.922278, 0.0271964, 0.11938, 0.248752, 0.0871802, 0.164434, 0.76044, 0.47576, 0.309438, 0.596115, 0.636404, 0.862279, 0.359065, 0.961984, 0.153274, 0.856665, 0.428014, 0.0413247, 0.246481, 0.725885, 0.866403, 0.91884, 0.000633561, 0.287143, 0.561318, 0.00102842, 0.603613, 0.787054, 0.938665, 0.270061, 0.452229, 0.159402, 0.112165, 0.145411, 0.250973, 0.0143143, 0.919613, 0.010381, 0.365027, 0.865447, 0.723604, 0.165974, 0.845208, 0.666214, 0.339759, 0.945371, 0.351369, 0.374229, 0.796259, 0.630932, 0.0399321, 0.868337, 0.771841, 0.773753, 0.360378, 0.795727, 0.907178, 0.549629, 0.202363, 0.93144, 0.957635, 0.829509, 0.596325, 0.0036505, 0.791142, 0.673159, 0.950541, 0.0915305, 0.315443, 0.990222, 0.885324, 0.460653, 0.857475, 0.696758, 0.502075, 0.229629, 0.137468, 0.563552, 0.844787, 0.639077, 0.121934, 0.0153792, 0.118298, 0.768082, 0.181479, 0.966914, 0.518583, 0.607825, 0.868244, 0.0226285, 0.125735, 0.305763, 0.57073, 0.0768162, 0.0807106, 0.969461, 0.218329, 0.938805, 0.299221, 0.371175, 0.51509, 0.524831, 0.231765, 0.583423, 0.782201, 0.452083, 0.568586, 0.859447, 0.549287, 0.540983, 0.328377, 0.397845, 0.650473, 0.940715, 0.297151, 0.384308, 0.00248369, 0.830295, 0.329032, 0.438871, 0.324094, 0.936792, 0.967745, 0.980783, 0.531688, 0.132704, 0.222562, 0.0313415, 0.918055, 0.17073, 0.95063, 0.0851412, 0.680607, 0.410405, 0.340138, 0.805791, 0.781496, 0.812348, 0.804547, 0.427944, 0.351167, 0.22775, 0.423274, 0.145577, 0.794884, 0.958136, 0.0637143, 0.698572, 0.539314, 0.551179, 0.609488, 0.925665, 0.614639, 0.637752, 0.663022, 0.241247, 0.0815666, 0.42624, 0.402996, 0.501672, 0.75054, 0.970453, 0.55942, 0.961818, 0.127586, 0.195195, 0.432428, 0.642632, 0.280214, 0.381199, 0.222965, 0.04361, 0.231427, 0.750528, 0.592084, 0.178209, 0.427117, 0.432842, 0.360393, 0.564562, 0.837777, 0.739208, 0.66282, 0.57374, 0.349421, 0.300318, 0.952045, 0.214642, 0.608816, 0.276419, 0.981838, 0.924332, 0.470357, 0.784598, 0.234197, 0.386811, 0.337882, 0.22286, 0.362129, 0.044151, 0.439697, 0.376008, 0.492033, 0.110027, 0.404034, 0.92845, 0.883454, 9.20955e-06, 0.427804, 0.625631, 0.945112, 0.443768, 0.617487, 0.552308, 0.874938, 0.240181, 0.156624, 0.763623, 0.0994235, 0.313841, 0.458318, 0.617322, 0.818676, 0.760326, 0.206138, 0.600317, 0.676339, 0.913658, 0.522778, 0.13781, 0.529129, 0.676201, 0.0997124, 0.825882, 0.342245, 0.701089, 0.419201, 0.216893, 0.596375, 0.970032, 0.35936, 0.397763, 0.351533, 0.425464, 0.490964, 0.914249, 0.894091, 0.118882, 0.0726074, 0.508444, 0.662858, 0.225404, 0.373918, 0.538371, 0.352321, 0.520999, 0.620749, 0.216278, 0.185088, 0.13693, 0.904191, 0.128102, 0.444181, 0.673541, 0.824811, 0.0298134, 0.525013, 0.809707, 0.161747, 0.709675, 0.803454, 0.23123, 0.691511, 0.437803, 0.446471, 0.470057, 0.127524, 0.376906, 0.0964944, 0.215639, 0.743227, 0.840237, 0.726717, 0.492798, 0.398671, 0.816375, 0.358903, 0.856632, 0.337391, 0.300591, 0.945666, 0.613881, 0.420898, 0.815055, 0.48278, 0.542244, 0.329735, 0.485236, 0.462731, 0.052929, 0.959346, 0.439004, 0.214346, 0.978555, 0.0373361, 0.0145994, 0.971468, 0.82311, 0.599798, 0.627661, 0.945441, 0.900095, 0.21355, 0.582631, 0.168009, 0.887485, 0.483977, 0.731445, 0.868779, 0.973907, 0.617269, 0.142719, 0.493231, 0.211385, 0.959368, 0.985605, 0.1044, 0.658787, 0.268061, 0.627579, 0.726954, 0.754517, 0.854008, 0.238922, 0.765741, 0.665729, 0.354013, 0.152634, 0.373761, 0.547785, 0.225744, 0.278346, 0.182884, 0.574961, 0.491564, 0.806318, 0.670477, 0.971696, 0.637222, 0.682487, 0.0696124, 0.611466, 0.711547, 0.378591, 0.959788, 0.224027, 0.357015, 0.409039, 0.977697, 0.0639567, 0.99189, 0.344892, 0.518262, 0.133529, 0.89597, 0.708624, 0.939704, 0.362208, 0.743186, 0.407725, 0.753125, 0.33541, 0.232519, 0.586176, 0.494532, 0.154323, 0.28919, 0.218706, 0.971498, 0.769848, 0.199773, 0.199842, 0.832263, 0.298279, 0.161605, 0.830388, 0.45103, 0.449516, 0.216712, 0.406236, 0.390806, 0.527003, 0.720394, 0.965764, 0.47614, 0.491749, 0.605551, 0.920255, 0.561416, 0.850835, 0.716615, 0.577531, 0.234504, 0.196767, 0.309561, 0.0540015, 0.236115, 0.0647383, 0.94031, 0.782261, 0.193652, 0.897891, 0.822425, 0.776651, 0.961456, 0.6151, 0.325957, 0.156517, 0.385579, 0.144628, 0.100468, 0.386446, 0.665891, 0.917745, 0.440557, 0.966559, 0.906212, 0.0991053, 0.442167, 0.514038, 0.136895, 0.389679, 0.878286, 0.987036, 0.647489, 0.772652, 0.0596531, 0.137768, 0.867434, 0.0248745, 0.507673, 0.993101, 0.00956828, 0.296852, 0.897351, 0.14875, 0.323651, 0.0732329, 0.673215, 0.0435495, 0.893435, 0.282982, 0.918068, 0.409819, 0.743783, 0.104833, 0.939149, 0.609604, 0.684542, 0.796889, 0.887128, 0.0552839, 0.549993, 0.940735, 0.977522, 0.0892621, 0.276351, 0.653479, 0.117041, 0.393059, 0.0378214, 0.991785, 0.784296, 0.405971, 0.676139, 0.812947, 0.631336, 0.754924, 0.67995, 0.607849, 0.0195246, 0.758245, 0.0117788, 0.859992, 0.196167, 0.465584, 0.188559, 0.782512, 0.840836, 0.587122, 0.466824, 0.620506, 0.60335, 0.980952, 0.266406, 0.137192, 0.487811, 0.452897, 0.450012, 0.491876, 0.0906254, 0.796341, 0.589543, 0.563734, 0.0342728, 0.551774, 0.782854, 0.122009, 0.234738, 0.644906, 0.452563, 0.132356, 0.743137, 0.207254, 0.837961, 0.267638, 0.266158, 0.895388, 0.883835, 0.679257, 0.239133, 0.626719, 0.627379, 0.249918, 0.219559, 0.913258, 0.214489, 0.563058, 0.309849, 0.588892, 0.849314, 0.892735, 0.0153528, 0.825552, 0.594559, 0.887532, 0.447185, 0.862193, 0.982494, 0.420673, 0.425409, 0.245566, 0.423263, 0.973329, 0.536092, 0.0281592, 0.632002, 0.0483676, 0.695143, 0.703635, 0.940282, 0.594419, 0.135663, 0.835342, 0.0167258, 0.62401, 0.364911, 0.182246, 0.990571, 0.686539, 0.686448, 0.617893, 0.800968, 0.0837678, 0.0733075, 0.973099, 0.967344, 0.567045, 0.211758, 0.535945, 0.189859, 0.242974, 0.213595, 0.737839, 0.8066, 0.548361, 0.851537, 0.382127, 0.184277, 0.08541, 0.739887, 0.27149, 0.936032, 0.337244, 0.106314, 0.399024, 0.0629548, 0.433659, 0.999772, 0.537112, 0.345139, 0.949056, 0.238801, 0.891697, 0.505647, 0.933695, 0.265259, 0.542074, 0.815094, 0.642507, 0.998236, 0.637564, 0.550156, 0.606018, 0.873737, 0.317555, 0.730636, 0.844028, 0.0390197, 0.842812, 0.480561, 0.691286, 0.00295733, 0.919325, 0.473461, 0.784858, 0.814156, 0.0912686, 0.403945, 0.28338, 0.585214, 0.645965, 0.317993, 0.939089, 0.783608, 0.835148, 0.638605, 0.629331, 0.171287, 0.250434, 0.635279, 0.213497, 0.694413, 0.0707755, 0.983926, 0.973839, 0.349415, 0.953162, 0.200589, 0.154119, 0.771383, 0.836393, 0.706541, 0.674026, 0.1878, 0.385638, 0.912494, 0.504632, 0.0466343, 0.450686, 0.845616, 0.710788, 0.0947787, 0.479396, 0.412178, 0.37111, 0.71844, 0.564508, 0.382976, 0.258863, 0.647761, 0.734297, 0.393745, 0.315436, 0.601107, 0.817479, 0.942905, 0.0972653, 0.788756, 0.843212, 0.592457, 0.703508, 0.550176, 0.370677, 0.352558, 0.201701, 0.608106, 0.480642, 0.815508, 0.921177, 0.7606, 0.208658, 0.197253, 0.79362, 0.0647093, 0.846116, 0.12328, 0.976125, 0.849035, 0.175173, 0.103671, 0.621033, 0.541288, 0.804469, 0.565353, 0.788961, 0.70966, 0.11589, 0.172359, 0.956232, 0.00444929, 0.952664, 0.920222, 0.156244, 0.0964654, 0.58569, 0.313021, 0.0865403, 0.973574, 0.485838, 0.294507, 0.709875, 0.0764558, 0.857014, 0.672743, 0.728314, 0.185804, 0.478334, 0.284808, 0.212212, 0.75047, 0.07419, 0.878726, 0.303373, 0.157442, 0.832152, 0.358087, 0.0877035, 0.220242, 0.00752386, 0.943168, 0.0944187, 0.335775, 0.875908, 0.00341338, 0.902309, 0.637416, 0.218752, 0.331346, 0.540993, 0.805102, 0.267758, 0.0702342, 0.573947, 0.986206, 0.637667, 0.313183, 0.406677, 0.69629, 0.820912, 0.632487, 0.449504, 0.601832, 0.188476, 0.869593, 0.666638, 0.0179505, 0.687915, 0.0492094, 0.769238, 0.204836, 0.588908, 0.437742, 0.59448, 0.00915766, 0.720968, 0.828406, 0.829383, 0.0352128, 0.179024, 0.358655, 0.926073, 0.397781, 0.103781, 0.113197, 0.829407, 0.919549, 0.163854, 0.507403, 0.657788, 0.151868, 0.636554, 0.116516, 0.810623, 0.361253, 0.132407, 0.909135, 0.531187, 0.291935, 0.788969, 0.839437, 0.950706, 0.20696, 0.234068, 0.429527, 0.929159, 0.920396, 0.37527, 0.256818, 0.714332, 0.779368, 0.437543, 0.786339, 0.190171, 0.431068, 0.0201946, 0.694304, 0.250447, 0.456195, 0.390567, 0.436, 0.222168, 0.132072, 0.160953, 0.40152, 0.869772, 0.107552, 0.450487, 0.499401, 0.598804, 0.742389, 0.0348395, 0.863944, 0.605634, 0.377078, 0.814854, 0.60815, 0.157984, 0.320349, 0.582299, 0.861435, 0.485736, 0.0720602, 0.636357, 0.165244, 0.0488178, 0.559464, 0.385086, 0.237701, 0.931245, 0.307075, 0.993439, 0.578477, 0.419532, 0.302884, 0.66098, 0.00921507, 0.828726, 0.436555, 0.276156, 0.389469, 0.866946, 0.04639, 0.561253, 0.221024, 0.989742, 0.105593, 0.29141, 0.481599, 0.0652974, 0.23962, 0.700024, 0.162525, 0.616694, 0.818685, 0.928904, 0.575266, 0.994048, 0.264861, 0.399138, 0.378382, 0.784798, 0.958837, 0.966213, 0.000872461, 0.0700252, 0.261724, 0.382432, 0.726177, 0.856526, 0.55035, 0.148673, 0.010882, 0.85469, 0.490462, 0.86233, 0.919517, 0.379194, 0.484635, 0.747023, 0.29862, 0.62039, 0.391917, 0.882988, 0.129953, 0.848137, 0.570856, 0.396335, 0.742932, 0.665201, 0.708586, 0.689406, 0.785374, 0.749921, 0.141877, 0.894856, 0.906826, 0.416775, 0.391618, 0.530175, 0.385679, 0.0676853, 0.104955, 0.598074, 0.657765, 0.712316, 0.810347, 0.445948, 0.758438, 0.690593, 0.189248, 0.148497, 0.238736, 0.91429, 0.811374, 0.699704, 0.0222553, 0.462092, 0.0176483, 0.315804, 0.646342, 0.152988, 0.935727, 0.185243, 0.317748, 0.657791, 0.127194, 0.771139, 0.310894, 0.442085, 0.976524, 0.852047, 0.940219, 0.227883, 0.0737196, 0.321444, 0.715404, 0.862237, 0.623349, 0.390471, 0.716934, 0.183341, 0.684268, 0.828615, 0.44467, 0.854221, 0.303279, 0.00474047, 0.746008, 0.990403, 0.0245057, 0.892543, 0.333438, 0.645945, 0.894897, 0.537852, 0.0365033, 0.51783, 0.190039, 0.556986, 0.25483, 0.354558, 0.00457464, 0.570015, 0.30223, 0.282845, 0.252269, 0.222274, 0.630466, 0.730861, 0.470052, 0.0677504, 0.346821, 0.173333, 0.42684, 0.204224, 0.498089, 0.373997, 0.535713, 0.338757, 0.577109, 0.265868, 0.634154, 0.785207, 0.166153, 0.955728, 0.25402, 0.116213, 0.0915607, 0.865838, 0.645909, 0.593727, 0.128846, 0.0245891, 0.968786, 0.760299, 0.147346, 0.815896, 0.960407, 0.14677, 0.22147, 0.257619, 0.670644, 0.399816, 0.463644, 0.369857, 0.855528, 0.647237, 0.257168, 0.806647, 0.207128, 0.155278, 0.932385, 0.842062, 0.926278, 0.710952, 0.516185, 0.902378, 0.299687, 0.540293, 0.644212, 0.451105, 0.950815, 0.0739414, 0.197949, 0.351032, 0.234098, 0.191684, 0.522057, 0.511787, 0.250952, 0.233442, 0.623991, 0.727221, 0.626169, 0.825453, 0.685542, 0.327878, 0.194404, 0.650026, 0.199135, 0.813948, 0.726281, 0.476963, 0.449556, 0.688463, 0.948903, 0.128969, 0.997454, 0.881724, 0.492254, 0.721315, 0.0634852, 0.978964, 0.313024, 0.94243, 0.175312, 0.635139, 0.272767, 0.330437, 0.567331, 0.923177, 0.606822, 0.114219, 0.227044, 0.627984, 0.146989, 0.406714, 0.550754, 0.311881, 0.155117, 0.515884, 0.54031, 0.422817, 0.619403, 0.966624, 0.117989, 0.140872, 0.924545, 0.82679, 0.48987, 0.302746, 0.931573, 0.769272, 0.596746, 0.858332, 0.99427, 0.60916, 0.92109, 0.902344, 0.322089, 0.891114, 0.861235, 0.0447001, 0.140763, 0.810269, 0.760182, 0.835655, 0.0852238, 0.0204504, 0.180674, 0.232077, 0.702038, 0.092814, 0.641924, 0.642582, 0.926926, 0.433865, 0.37269, 0.771032, 0.582382, 0.257629, 0.19077, 0.892117, 0.180281, 0.101532, 0.166997, 0.0283434, 0.468934, 0.603733, 0.109284, 0.423224, 0.392599, 0.400548, 0.931693, 0.19806, 0.427202, 0.743382, 0.622772, 0.890371, 0.169439, 0.60091, 0.436395, 0.557217, 0.870708, 0.395755, 0.994234, 0.936305, 0.80959, 0.408934, 0.636522, 0.365479, 0.266042, 0.791631, 0.824197, 0.216946, 0.229634, 0.680746, 0.781349, 0.168808, 0.841236, 0.153844, 0.980929, 0.0426859, 0.464202, 0.167075, 0.523266, 0.934005, 0.936896, 0.826264, 0.044715, 0.438219, 0.34769, 0.626727, 0.439684, 0.831946, 0.484933, 0.404827, 0.260654, 0.81202, 0.174004, 0.787851, 0.455138, 0.655473, 0.109901, 0.890659, 0.947074, 0.361157, 0.16539, 0.58113, 0.564428, 0.895702, 0.547181, 0.441325, 0.694036, 0.0577419, 0.159258, 0.737418, 0.651805, 0.128015, 0.922053, 0.445111, 0.0784964, 0.452877, 0.447184, 0.813371, 0.522148, 0.115545, 0.756981, 0.454446, 0.063932, 0.498896, 0.609644, 0.322579, 0.498747, 0.657123, 0.658618, 0.653773, 0.233941, 0.679365, 0.068694, 0.393955, 0.281882, 0.343787, 0.971124, 0.425295, 0.88358, 0.678806, 0.571204, 0.252578, 0.42372, 0.270893, 0.24403, 0.481379, 0.0432195, 0.256206, 0.658633, 0.573123, 0.765552, 0.506332, 0.301392, 0.162464, 0.533705, 0.823675, 0.111261, 0.557734, 0.784037, 0.0099777, 0.015297, 0.290589, 0.0453075, 0.78254, 0.279832, 0.389579, 0.557797, 0.93069, 0.098577, 0.161702, 0.0175863, 0.160465, 0.249734, 0.452553, 0.754312, 0.594882, 0.596358, 0.491436, 0.396948, 0.760428, 0.288846, 0.243815, 0.338206, 0.793308, 0.965915, 0.0172737, 0.445257, 0.322325, 0.772404, 0.654016, 0.80926, 0.776535, 0.304082, 0.0630144, 0.583282, 0.846366, 0.499674, 0.299911, 0.513443, 0.545478, 0.0164018, 0.725634, 0.253983, 0.561844, 0.980391, 0.735945, 0.816901, 0.974125, 0.384052, 0.813821, 0.469815, 0.948957, 0.970426, 0.470512, 0.23746, 0.229858, 0.52859, 0.826144, 0.994975, 0.0484827, 0.9569, 0.414816, 0.186097, 0.344149, 0.92083, 0.90155, 0.446289, 0.220355, 0.233272, 0.604058, 0.0654023, 0.179335, 0.0837292, 0.770125, 0.205524, 0.475131, 0.631108, 0.358362, 0.746616, 0.660189, 0.117527, 0.111248, 0.131471, 0.613953, 0.813998, 0.658308, 0.0130244, 0.277711, 0.276137, 0.76768, 0.29524, 0.0903824, 0.940259, 0.887613, 0.058253, 0.814281, 0.489991, 0.329663, 0.0230103, 0.912906, 0.668551, 0.661821, 0.877177, 0.834014, 0.0399352, 0.00101552, 0.871034, 0.14299, 0.665033, 0.894723, 0.793121, 0.291678, 0.446687, 0.970797, 0.246298, 0.542464, 0.479604, 0.851147, 0.740605, 0.312288, 0.730644, 0.754502, 0.558063, 0.992145, 0.468094, 0.222104, 0.139942, 0.689898, 0.192548, 0.688286, 0.0736191, 0.676422, 0.277903, 0.0473723, 0.328127, 0.843367, 0.22378, 0.430559, 0.30508, 0.440893, 0.782238, 0.00392183, 0.859052, 0.337715, 0.345673, 0.585426, 0.765532, 0.00776284, 0.824311, 0.455099, 0.544381, 0.462037, 0.784649, 0.859314, 0.543724, 0.127025, 0.618281, 0.669525, 0.779777, 0.296608, 0.159788, 0.113799, 0.926704, 0.793592, 0.326342, 0.970287, 0.479055, 0.556199, 0.9544, 0.248976, 0.227611, 0.731636, 0.147031, 0.883422, 0.785642, 0.849175, 0.584176, 0.95449, 0.656298, 0.920753, 0.0539454, 0.806535, 0.939187, 0.359771, 0.72007, 0.881336, 0.481058, 0.88465, 0.126115, 0.633827, 0.566964, 0.973076, 0.29133, 0.460039, 0.0727633, 0.227582, 0.215589, 0.432656, 0.675801, 0.937676, 0.0110957, 0.215127, 0.651935, 0.119513, 0.797525, 0.535864, 0.173114, 0.65133, 0.332392, 0.192153, 0.943845, 0.859665, 0.996203, 0.658336, 0.939141, 0.281987, 0.691982, 0.382253, 0.484265, 0.111423, 0.0783975, 0.209906, 0.338327, 0.696582, 0.458292, 0.921108, 0.230857, 0.469616, 0.788192, 0.605087, 0.330865, 0.202253, 0.885138, 0.398612, 0.174863, 0.344729, 0.245864, 0.0829636, 0.587539, 0.94773, 0.400121, 0.638613, 0.474506, 0.859106, 0.432006, 0.463063, 0.262733, 0.428857, 0.249494, 0.872689, 0.151902, 0.786426, 0.285359, 0.688028, 0.36568, 0.0731272, 0.586232, 0.776614, 0.0946996, 0.486384, 0.80218, 0.293806, 0.881017, 0.208664, 0.693056, 0.420064, 0.787199, 0.747993, 0.165428, 0.739872, 0.00293114, 0.267649, 0.330248, 0.202902, 0.778428, 0.535537, 0.0925189, 0.696239, 0.200978, 0.518677, 0.652183, 0.0965469, 0.0867163, 0.219582, 0.662279, 0.00280588, 0.272441, 0.00465201, 0.676683, 0.825306, 0.141091, 0.95705, 0.804377, 0.512947, 0.32589, 0.201093, 0.868994, 0.229481, 0.545692, 0.022053, 0.149268, 0.56327, 0.200395, 0.846691, 0.645707, 0.098429, 0.332268, 0.77089, 0.544161, 0.534925, 0.0404122, 0.15222, 0.00219823, 0.857041, 0.598994, 0.706285, 0.00155841, 0.660715, 0.187972, 0.639581, 0.452117, 0.491033, 0.0578531, 0.772023, 0.947644, 0.0997224, 0.00814886, 0.798098, 0.425449, 0.190257, 0.705707, 0.574332, 0.959989, 0.647748, 0.585037, 0.936321, 0.0581099, 0.237389, 0.151609, 0.996003, 0.792569, 0.0978881, 0.951228, 0.301671, 0.779645, 0.0288584, 0.037397, 0.945627, 0.304568, 0.426189, 0.4257, 0.279629, 0.819273, 0.666387, 0.630945, 0.220709, 0.404553, 0.0883133, 0.463987, 0.212745, 0.214379, 0.61238, 0.977878, 0.210322, 0.923227, 0.992948, 0.123616, 0.53986, 0.292867, 0.477867, 0.369048, 0.328313, 0.49386, 0.656201, 0.824022, 0.0282923, 0.286493, 0.711301, 0.883975, 0.455991, 0.673695, 0.818143, 0.613079, 0.0335363, 0.0680771, 0.668399, 0.503759, 0.264248, 0.903885, 0.843643, 0.0533691, 0.560798, 0.631014, 0.857126, 0.633154, 0.516262, 0.265955, 0.143606, 0.935716, 0.0741677, 0.648374, 0.720572, 0.337443, 0.384864, 0.966169, 0.501034, 0.352625, 0.597608, 0.173608, 0.29504, 0.778325, 0.966678, 0.284452, 0.169445, 0.538185, 0.919894, 0.956887, 0.964023, 0.763123, 0.709229, 0.866486, 0.448187, 0.628869, 0.0399799, 0.450391, 0.924285, 0.438688, 0.022503, 0.770717, 0.570704, 0.0638541, 0.677098, 0.944873, 0.116451, 0.917285, 0.2318, 0.336039, 0.0499738, 0.696717, 0.948234, 0.605339, 0.45729, 0.843917, 0.287549, 0.663221, 0.167949, 0.094581, 0.90674, 0.185287, 0.776953, 0.268195, 0.014379, 0.501671, 0.753098, 0.650432, 0.534088, 0.889096, 0.949667, 0.0219556, 0.214308, 0.224668, 0.154131, 0.368965, 0.122133, 0.65116, 0.197679, 0.783807, 0.270285, 0.694187, 0.95038, 0.110979, 0.242191, 0.213992, 0.13952, 0.931086, 0.226877, 0.305606, 0.979378, 0.953768, 0.241063, 0.124948, 0.105372, 0.218845, 0.637486, 0.362314, 0.857944, 0.582592, 0.502794, 0.114551, 0.237904, 0.924022, 0.864367, 0.231353, 0.44384, 0.323362, 0.76038, 0.423856, 0.452531, 0.0115742, 0.46815, 0.48013, 0.0473933, 0.438219, 0.129854, 0.706835, 0.436701, 0.400324, 0.0583846, 0.940718, 0.975561, 0.507812, 0.190554, 0.893113, 0.636696, 0.118974, 0.53061, 0.607902, 0.914011, 0.143261, 0.0857454, 0.770538, 0.0139434, 0.407664, 0.92041, 0.157959, 0.584356, 0.969034, 0.339759, 0.642837, 0.681889, 0.223098, 0.661695, 0.0705865, 0.259975, 0.00655343, 0.277794, 0.037764, 0.333258, 0.0823079, 0.552069, 0.188632, 0.85048, 0.248655, 0.508736, 0.989409, 0.676781, 0.992566, 0.856983, 0.257727, 0.182448, 0.0497544, 0.310994, 0.743109, 0.874533, 0.943384, 0.632456, 0.359589, 0.795129, 0.983523, 0.841, 0.482241, 0.61151, 0.556987, 0.246489, 0.258235, 0.87155, 0.433148, 0.694615, 0.658671, 0.984038, 0.61421, 0.33806, 0.815241, 0.539621, 0.977415, 0.82646, 0.430315, 0.633469, 0.350096, 0.630504, 0.334125, 0.919803, 0.307272, 0.337716, 0.644142, 0.444452, 0.250146, 0.497466, 0.170974, 0.993792, 0.113174, 0.905625, 0.962882, 0.473052, 0.927356, 0.874466, 0.918066, 0.0378646, 0.00216351, 0.516137, 0.92798, 0.366644, 0.979269, 0.951728, 0.939299, 0.756642, 0.696261, 0.129648, 0.937637, 0.500117, 0.688063, 0.582785, 0.161508, 0.424508, 0.866168, 0.777887, 0.613746, 0.684095, 0.547183, 0.757883, 0.926348, 0.346787, 0.786552, 0.717098, 0.845607, 0.198555, 0.745752, 0.497787, 0.19327, 0.453797, 0.438268, 0.0426972, 0.622592, 0.496309, 0.0136058, 0.229186, 0.689517, 0.333235, 0.160382, 0.793794, 0.750165, 0.19645, 0.718008, 0.125284, 0.21572, 0.589293, 0.973847, 0.0785087, 0.0198053, 0.454311, 0.368018, 0.379007, 0.0581889, 0.344199, 0.814206, 0.481824, 0.155735, 0.692866, 0.191024, 0.553743, 0.826572, 0.897576, 0.992562, 0.56565, 0.254903, 0.670156, 0.252855, 0.218925, 0.178696, 0.140874, 0.525638, 0.116564, 0.806125, 0.958895, 0.308583, 0.204709, 0.0891942, 0.561715, 0.334925, 0.45576, 0.301204, 0.830934, 0.387709, 0.591454, 0.847475, 0.19337, 0.671108, 0.739031, 0.176061, 0.301973, 0.0669643, 0.73126, 0.028597, 0.362926, 0.762928, 0.633278, 0.746555, 0.282621, 0.677689, 0.0583414, 0.444705, 0.293137, 0.854232, 0.795338, 0.665034, 0.195256, 0.234747, 0.150547, 0.58638, 0.449964, 0.901731, 0.12916, 0.167021, 0.5046, 0.749535, 0.706862, 0.221479, 0.292998, 0.151705, 0.433615, 0.087336, 0.954833, 0.473797, 0.839106, 0.572769, 0.641167, 0.78574, 0.736492, 0.448075, 0.608816, 0.743468, 0.0280638, 0.27064, 0.404634, 0.506965, 0.435358, 0.477639, 0.00992643, 0.977332, 0.14674, 0.434715, 0.47873, 0.143352, 0.543109, 0.189631, 0.707195, 0.186987, 0.426414, 0.374762, 0.961331, 0.0627827, 0.507393, 0.538008, 0.715081, 0.0486075, 0.046958, 0.1885, 0.498497, 0.590686, 0.375021, 0.0493965, 0.87902, 0.0749071, 0.559669, 0.743872, 0.23736, 0.435335, 0.161112, 0.295725, 0.070784, 0.601639, 0.373585, 0.490168, 0.60244, 0.685891, 0.788243, 0.761859, 0.43799, 0.897879, 0.557984, 0.154428, 0.141681, 0.836575, 0.27661, 0.611036, 0.341046, 0.238751, 0.0575928, 0.96499, 0.784873, 0.391325, 0.669215, 0.813261, 0.136233, 0.191541, 0.0882364, 0.264766, 0.645055, 0.344129, 0.0731303, 0.555086, 0.499143, 0.779818, 0.00924445, 0.34994, 0.309598, 0.216979, 0.247651, 0.835235, 0.615547, 0.527414, 0.797394, 0.677455, 0.675774, 0.00242763, 0.443769, 0.542442, 0.480859, 0.296827, 0.818849, 0.480649, 0.967986, 0.848345, 0.867917, 0.0943004, 0.913108, 0.619542, 0.783462, 0.512367, 0.313758, 0.0485785, 0.90419, 0.190018, 0.626179, 0.535686, 0.854101, 0.583291, 0.452416, 0.379689, 0.918079, 0.66777, 0.154128, 0.367591, 0.666413, 0.335948, 0.836923, 0.876434, 0.921662, 0.256027, 0.503321, 0.574414, 0.598992, 0.618266, 0.302425, 0.0550202, 0.391808, 0.352064, 0.566041, 0.128833, 0.563173, 0.743693, 0.593108, 0.399454, 0.674834, 0.205011, 0.875525, 0.772046, 0.765087, 0.80139, 0.530288, 0.146983, 0.791488, 0.348383, 0.530773, 0.85473, 0.686642, 0.0243471, 0.0860245, 0.318361, 0.332882, 0.986241, 0.73623, 0.694229, 0.349744, 0.274173, 0.244774, 0.974007, 0.909, 0.646432, 0.858665, 0.908377, 0.346717, 0.721945, 0.473378, 0.240438, 0.690158, 0.790779, 0.121759, 0.224026, 0.437467, 0.421195, 0.750327, 0.598979, 0.19742, 0.866705, 0.0759297, 0.769428, 0.591641, 0.617373, 0.397108, 0.236631, 0.819696, 0.463099, 0.0384623, 0.56491, 0.799657, 0.409825, 0.0211287, 0.399213, 0.860971, 0.21247, 0.529959, 0.995821, 0.319635, 0.318951, 0.249199, 0.912273, 0.880425, 0.453482, 0.744753, 0.947907, 0.850558, 0.873718, 0.694035, 0.182624, 0.979205, 0.220903, 0.831905, 0.765287, 0.627847, 0.60698, 0.00014169, 0.266254, 0.468853, 0.546685, 0.711686, 0.570707, 0.815501, 0.816111, 0.274253, 0.230299, 0.410759, 0.912284, 0.340372, 0.655273, 0.984131, 0.928951, 0.301123, 0.811709, 0.607374, 0.629956, 0.958786, 0.42334, 0.966065, 0.23172, 0.0514258, 0.729242, 0.33187, 0.0577545, 0.940886, 0.81556, 0.706079, 0.521733, 0.762507, 0.126839, 0.39848, 0.348391, 0.759298, 0.797595, 0.864869, 0.678706, 0.552319, 0.0781707, 0.836225, 0.431585, 0.299173, 0.446646, 0.273999, 0.889, 0.613147, 0.90554, 0.316265, 0.805125, 0.351913, 0.246921, 0.992693, 0.285047, 0.418111, 0.614795, 0.148183, 0.915623, 0.0824796, 0.97153, 0.342076, 0.226939, 0.409704, 0.144162, 0.645093, 0.104499, 0.523058, 0.30061, 0.417962, 0.850426, 0.576325, 0.159152, 0.841744, 0.281478, 0.701127, 0.602403, 0.137689, 0.0968616, 0.138916, 0.925421, 0.142064, 0.568757, 0.0363991, 0.220104, 0.823729, 0.377243, 0.382477, 0.791612, 0.132756, 0.633164, 0.844557, 0.484731, 0.432837, 0.0358545, 0.434492, 0.696509, 0.27217, 0.872712, 0.689914, 0.526976, 0.00845231, 0.717582, 0.646745, 0.964498, 0.260307, 0.460807, 0.799241, 0.495831, 0.534291, 0.337725, 0.0201459, 0.0588205, 0.099626, 0.0445335, 0.631459, 0.421706, 0.737725, 0.15237, 0.522567, 0.354908, 0.462786, 0.960176, 0.749139, 0.0917709, 0.368801, 0.835182, 0.30741, 0.305869, 0.0499054, 0.344192, 0.0774335, 0.345958, 0.374308, 0.469739, 0.181264, 0.129416, 0.110752, 0.121005, 0.478941, 0.965105, 0.107185, 0.804921, 0.918202, 0.948278, 0.625083, 0.69052, 0.714591, 0.525246, 0.51034, 0.47609, 0.776902, 0.851069, 0.18501, 0.703499, 0.337351, 0.596395, 0.0415835, 0.792511, 0.571984, 0.821413, 0.445606, 0.458539, 0.951438, 0.127543, 0.397203, 0.91401, 0.542644, 0.08584, 0.773343, 0.246973, 0.804756, 0.523513, 0.134362, 0.444727, 0.336684, 0.7137, 0.0018896, 0.716948, 0.874143, 0.750324, 0.117239, 0.263621, 0.339174, 0.865795, 0.0901357, 0.157137, 0.220915, 0.000640357, 0.847563, 0.899636, 0.0691022, 0.105871, 0.760859, 0.976666, 0.909564, 0.193656, 0.737687, 0.811764, 0.0487426, 0.812717, 0.864286, 0.643114, 0.388686, 0.242115, 0.35791, 0.0845, 0.917465, 0.855177, 0.966218, 0.647099, 0.847149, 0.6222, 0.639152, 0.0962149, 0.599481, 0.37997, 0.512591, 0.24068, 0.207296, 0.923443, 0.00410921, 0.114458, 0.284364, 0.653197, 0.427076, 0.718724, 0.481602, 0.175418, 0.581547, 0.695499, 0.0131583, 0.381376, 0.989818, 0.921505, 0.627384, 0.151569, 0.232453, 0.356891, 0.47682, 0.962142, 0.392632, 0.789847, 0.945584, 0.846705, 0.610754, 0.408712, 0.0529858, 0.168715, 0.0349119, 0.782198, 0.175419, 0.433237, 0.746159, 0.607084, 0.198991, 0.249497, 0.337107, 0.944549, 0.921506, 0.991261, 0.559888, 0.316679, 0.301507, 0.239754, 0.0968068, 0.614661, 0.521572, 0.519729, 0.908341, 0.03586, 0.618171, 0.836746, 0.873387, 0.608938, 0.409483, 0.555192, 0.249651, 0.650548, 0.223973, 0.78059, 0.411687, 0.83924, 0.269758, 0.00621065, 0.990223, 0.671403, 0.706867, 0.798772, 0.487375, 0.788655, 0.606103, 0.910993, 0.805561, 0.342278, 0.991981, 0.992517, 0.87053, 0.0522469, 0.570367, 0.235565, 0.168307, 0.957502, 0.341051, 0.984299, 0.944804, 0.701308, 0.208552, 0.46789, 0.0798323, 0.247649, 0.965581, 0.991729, 0.469432, 0.317762, 0.764117, 0.0861203, 0.738733, 0.739078, 0.418193, 0.252833, 0.0136712, 0.194591, 0.0823039, 0.351238, 0.634819, 0.289065, 0.522258, 0.100051, 0.628743, 0.802032, 0.0512145, 0.539622, 0.79265, 0.378523, 0.339629, 0.320432, 0.575917, 0.368186, 0.602909, 0.12064, 0.217229, 0.747264, 0.765453, 0.479258, 0.168903, 0.687945, 0.424234, 0.0182483, 0.535874, 0.440657, 0.759257, 0.525349, 0.119938, 0.261061, 0.0862075, 0.445322, 0.36843, 0.532416, 0.972018, 0.350263, 0.274387, 0.13524, 0.767913, 0.682112, 0.186862, 0.675467, 0.64265, 0.719899, 0.822824, 0.978052, 0.376683, 0.0465045, 0.344499, 0.156657, 0.480702, 0.0107018, 0.0210955, 0.754463, 0.579424, 0.811882, 0.267681, 0.656261, 0.55529, 0.114898, 0.381888, 0.412306, 0.166698, 0.540337, 0.422237, 0.225848, 0.319184, 0.359518, 0.0697977, 0.490755, 0.351974, 0.408113, 0.413704, 0.0233192, 0.502726, 0.0808228, 0.253266, 0.393719, 0.233204, 0.541699, 0.510262, 0.653899, 0.727227, 0.299199, 0.606695, 0.745681, 0.233805, 0.650707, 0.938541, 0.626558, 0.163539, 0.181739, 0.585307, 0.72919, 0.207946, 0.393336, 0.0598465, 0.142842, 0.503608, 0.0107723, 0.769077, 0.73303, 0.557175, 0.174763, 0.446938, 0.254235, 0.276446, 0.340177, 0.467342, 0.246174, 0.319751, 0.0668283, 0.695673, 0.680345, 0.0935564, 0.267785, 0.761973, 0.778107, 0.206745, 0.501926, 0.851717, 0.0171054, 0.58509, 0.44091, 0.168636, 0.922044, 0.398684, 0.85791, 0.329332, 0.0421944, 0.0811428, 0.178988, 0.0217178, 0.867476, 0.0242361, 0.054365, 0.0350767, 0.858391, 0.513896, 0.58669, 0.0422648, 0.660024, 0.892557, 0.618048, 0.167999, 0.374249, 0.61947, 0.234545, 0.301993, 0.664666, 0.307192, 0.830035, 0.16981, 0.647669, 0.210328, 0.55722, 0.725259, 0.227851, 0.746418, 0.143219, 0.578732, 0.912123, 0.627189, 0.951027, 0.0741806, 0.785681, 0.474788, 0.501871, 0.586705, 0.356456, 0.994087, 0.702202, 0.110053, 0.939102, 0.978551, 0.547684, 0.537043, 0.463263, 0.79543, 0.544923, 0.488685, 0.446546, 0.0184627, 0.838136, 0.506632, 0.424576, 0.66903, 0.99525, 0.446845, 0.433408, 0.068933, 0.888118, 0.885535, 0.823443, 0.911199, 0.15379, 0.173262, 0.194629, 0.991104, 0.419665, 0.141868, 0.976054, 0.0904315, 0.481936, 0.933807, 0.812616, 0.31648, 0.707818, 0.211447, 0.391328, 0.393768, 0.208413, 0.0949373, 0.340323, 0.930488, 0.377775, 0.320927, 0.600667, 0.183198, 0.604513, 0.876236, 0.293807, 0.6533, 0.8053, 0.0456367, 0.79004, 0.519155, 0.940581, 0.539176, 0.360457, 0.845534, 0.230465, 0.0660766, 0.641243, 0.360056, 0.281113, 0.347411, 0.44536, 0.221333, 0.344579, 0.931765, 0.332007, 0.567415, 0.75061, 0.77218, 0.259708, 0.234034, 0.197387, 0.290365, 0.330381, 0.473265, 0.869024, 0.330283, 0.585211, 0.784976, 0.0936646, 0.622822, 0.515882, 0.154393, 0.931172, 0.351259, 0.0384373, 0.348363, 0.183751, 0.45849, 0.368929, 0.00469111, 0.870597, 0.684903, 0.368441, 0.0478761, 0.488639, 0.0835063, 0.952199, 0.643149, 0.892231, 0.216109, 0.751933, 0.18647, 0.390735, 0.198425, 0.941996, 0.757303, 0.723334, 0.706664, 0.0554332, 0.490989, 0.950898, 0.0629882, 0.261767, 0.112804, 0.113924, 0.238037, 0.270354, 0.751243, 0.380492, 0.740241, 0.207205, 0.0989996, 0.84937, 0.488469, 0.708236, 0.238914, 0.598806, 0.724916, 0.398191, 0.144674, 0.906878, 0.157843, 0.297494, 0.412601, 0.794125, 0.477363, 0.379034, 0.00671669, 0.646993, 0.271325, 0.465328, 0.746437, 0.149025, 0.679058, 0.281474, 0.520522, 0.415491, 0.0136646, 0.524842, 0.874952, 0.466775, 0.245805, 0.893021, 0.468606, 0.571214, 0.336392, 0.492457, 0.527156, 0.41838, 0.89118, 0.143941, 0.192362, 0.548482, 0.267326, 0.550028, 0.0937403, 0.460918, 0.928665, 0.391746, 0.334116, 0.845814, 0.45314, 0.563016, 0.343298, 0.508847, 0.54797, 0.720585, 0.995596, 0.469857, 0.797195, 0.0758571, 0.193271, 0.399435, 0.286663, 0.0153666, 0.725576, 0.505342, 0.702736, 0.574938, 0.360447, 0.293658, 0.00267113, 0.90265, 0.0410623, 0.12695, 0.825533, 0.666178, 0.0493994, 0.315431, 0.275716, 0.672728, 0.336946, 0.153213, 0.333597, 0.156937, 0.352507, 0.781166, 0.441395, 0.711237, 0.319494, 0.253406, 0.980385, 0.27169, 0.610252, 0.0315895, 0.173092, 0.294815, 0.24346, 0.501749, 0.671395, 0.174916, 0.269241, 0.271962, 0.490413, 0.91111, 0.347766, 0.612575, 0.0220016, 0.807224, 0.485833, 0.930981, 0.982028, 0.41133, 0.8265, 0.338231, 0.858166, 0.866513, 0.184553, 0.0287946, 0.924813, 0.584187, 0.929221, 0.202744, 0.109128, 0.469215, 0.71036, 0.938545, 0.0344073, 0.425781, 0.128227, 0.876826, 0.251219, 0.615095, 0.308785, 0.985871, 0.202102, 0.762202, 0.989555, 0.110346, 0.78657, 0.322666, 0.425638, 0.4092, 0.929239, 0.409257, 0.916413, 0.0362295, 0.345098, 0.804149, 0.291017, 0.865797, 0.550924, 0.558234, 0.631668, 0.661393, 0.706274, 0.121489, 0.155439, 0.0155989, 0.343656, 0.900521, 0.176187, 0.408318, 0.968061, 0.936298, 0.00851265, 0.877008, 0.228096, 0.959744, 0.514649, 0.133714, 0.0895707, 0.240558, 0.727993, 0.0857289, 0.298125, 0.209947, 0.160823, 0.29274, 0.0399278, 0.957869, 0.603791, 0.221571, 0.799041, 0.736731, 0.484513, 0.196295, 0.808976, 0.320616, 0.308682, 0.0439747, 0.842259, 0.0977955, 0.0833671, 0.503262, 0.851656, 0.479866, 0.950625, 0.411628, 0.219651, 0.522312, 0.976037, 0.383527, 0.691701, 0.9642, 0.161143, 0.0314316, 0.724831, 0.985053, 0.997432, 0.15179, 0.829539, 0.730971, 0.143914, 0.179806, 0.987131, 0.210939, 0.206804, 0.309737, 0.848782, 0.93808, 0.322453, 0.925034, 0.481564, 0.320244, 0.0992068, 0.43445, 0.0556858, 0.734951, 0.0993144, 0.714255, 0.0302214, 0.932355, 0.251016, 0.933741, 0.254321, 0.144415, 0.625023, 0.92362, 0.586254, 0.355336, 0.94009, 0.695213, 0.931397, 0.618968, 0.739586, 0.103737, 0.368076, 0.220176, 0.883225, 0.222019, 0.0677259, 0.303266, 0.968175, 0.552004, 0.115311, 0.0455872, 0.684416, 0.900796, 0.792241, 0.617604, 0.356265, 0.919644, 0.61758, 0.0280784, 0.575976, 0.560994, 0.620322, 0.665619, 0.91024, 0.737454, 0.754261, 0.0779842, 0.520832, 0.974872, 0.19936, 0.766045, 0.212369, 0.449112, 0.532945, 0.52625, 0.638304, 0.420285, 0.865498, 0.100521, 0.108552, 0.0484256, 0.638022, 0.556459, 0.830696, 0.665436, 0.357766, 0.462635, 0.858165, 0.0240363, 0.805024, 0.632522, 0.616207, 0.809035, 0.831974, 0.919004, 0.168812, 0.133027, 0.211103, 0.0454932, 0.179853, 0.964951, 0.260681, 0.856561, 0.50412, 0.200919, 0.713513, 0.963631, 0.148498, 0.455128, 0.470364, 0.374871, 0.834743, 0.0342008, 0.627801, 0.676421, 0.229822, 0.947038, 0.197101, 0.813979, 0.558724, 0.677722, 0.61336, 0.842315, 0.505677, 0.203234, 0.944472, 0.273246, 0.472616, 0.731367, 0.385469, 0.038378, 0.0210421, 0.8101, 0.771924, 0.724295, 0.69712, 0.231483, 0.766871, 0.22118, 0.952272, 0.793797, 0.344759, 0.848569, 0.619039, 0.381783, 0.515454, 0.212298, 0.864574, 0.102096, 0.759013, 0.0348328, 0.530797, 0.854771, 0.404852, 0.750551, 0.406793, 0.379375, 0.555641, 0.157567, 0.193177, 0.845328, 0.157988, 0.592267, 0.832538, 0.464178, 0.227504, 0.0803521, 0.49972, 0.993602, 0.782846, 0.729766, 0.306847, 0.769817, 0.641094, 0.547556, 0.166469, 0.997491, 0.330004, 0.697845, 0.50871, 0.937293, 0.284859, 0.164627, 0.446595, 0.249429, 0.12309, 0.334094, 0.437629, 0.515888, 0.098429, 0.52362, 0.880512, 0.736821, 0.599419, 0.551261, 0.534756, 0.863241, 0.640294, 0.376647, 0.702365, 0.311803, 0.762398, 0.439358, 0.601853, 0.165669, 0.9539, 0.896226, 0.461351, 0.383213, 0.455631, 0.0290472, 0.116985, 0.48155, 0.554937, 0.942049, 0.712137, 0.710326, 0.804921, 0.181305, 0.606548, 0.389173, 0.368416, 0.542916, 0.666213, 0.0234955, 0.190332, 0.907848, 0.595852, 0.57392, 0.633509, 0.598628, 0.720329, 0.0172913, 0.814983, 0.656013, 0.762097, 0.571442, 0.557574, 0.366098, 0.307833, 0.378715, 0.365035, 0.227814, 0.471622, 0.0541737, 0.609736, 0.642234, 0.866126, 0.324962, 0.226084, 0.89159, 0.480385, 0.508564, 0.93119, 0.0433976, 0.713315, 0.914745, 0.798368, 0.780862, 0.969165, 0.175906, 0.19473, 0.61445, 0.934252, 0.0185282, 0.24897, 0.277972, 0.723536, 0.566537, 0.0233552, 0.923078, 0.581616, 0.316423, 0.24501, 0.698762, 0.69784, 0.424567, 0.189484, 0.387559, 0.932004, 0.966823, 0.0538948, 0.412291, 0.725883, 0.866159, 0.215323, 0.655808, 0.156526, 0.277802, 0.434198, 0.208185, 0.627663, 0.837767, 0.698486, 0.868006, 0.557899, 0.532694, 0.890736, 0.338171, 0.95361, 0.731255, 0.51718, 0.097908, 0.604915, 0.387281, 0.873079, 0.709184, 0.705164, 0.0409565, 0.441308, 0.321482, 0.494341, 0.670925, 0.426667, 0.408377, 0.395348, 0.584804, 0.27815, 0.869304, 0.4718, 0.215857, 0.620928, 0.212542, 0.478639, 0.218803, 0.291689, 0.128241, 0.993284, 0.92956, 0.675266, 0.836845, 0.646884, 0.457059, 0.154723, 0.381244, 0.725699, 0.0512737, 0.283163, 0.256986, 0.120155, 0.105429, 0.841173, 0.817785, 0.496723, 0.963866, 0.549727, 0.919526, 0.215732, 0.394426, 0.517125, 0.531066, 0.861426, 0.557868, 0.0129223, 0.140279, 0.103462, 0.674733, 0.8508, 0.143007, 0.594329, 0.310337, 0.469411, 0.662791, 0.199112, 0.982426, 0.98463, 0.962226, 0.937973, 0.16067, 0.245988, 0.104573, 0.182241, 0.68625, 0.069606, 0.465912, 0.231955, 0.466497, 0.855007, 0.360995, 0.824617, 0.770135, 0.913424, 0.13453, 0.435888, 0.550898, 0.534564, 0.0788811, 0.972792, 0.855578, 0.582295, 0.0749266, 0.0526137, 0.935008, 0.687653, 0.00945538, 0.706855, 0.667849, 0.517686, 0.418906, 0.789432, 0.8065, 0.629954, 0.985267, 0.688833, 0.00845489, 0.0939969, 0.272987, 0.510031, 0.562054, 0.933702, 0.415083, 0.782134, 0.897633, 0.633468, 0.994013, 0.580576, 0.00873444, 0.832382, 0.986717, 0.743726, 0.582978, 0.73837, 0.0521541, 0.727402, 0.476097, 0.480672, 0.953124, 0.866351, 0.602734, 0.605534, 0.704575, 0.845739, 0.249312, 0.400276, 0.441239, 0.63189, 0.418332, 0.872115, 0.9682, 0.144187, 0.633727, 0.197865, 0.456069, 0.697859, 0.175897, 0.128784, 0.906407, 0.0165433, 0.116214, 0.420433, 0.106288, 0.885471, 0.195202, 0.0122948, 0.347396, 0.231516, 0.079076, 0.942653, 0.722066, 0.676564, 0.243936, 0.80042, 0.370243, 0.655602, 0.504644, 0.908901, 0.435098, 0.85424, 0.565821, 0.980889, 0.122889, 0.802084, 0.761899, 0.531931, 0.802322, 0.0340665, 0.820782, 0.52478, 0.657767, 0.710471, 0.968145, 0.315111, 0.356929, 0.72612, 0.380387, 0.157531, 0.771541, 0.281162, 0.773407, 0.153415, 0.699645, 0.138378, 0.243136, 0.0163576, 0.205247, 0.690435, 0.147783, 0.0530863, 0.930954, 0.375418, 0.741039, 0.350249, 0.369976, 0.700277, 0.879363, 0.965882, 0.934557, 0.454716, 0.884906, 0.968857, 0.5108, 0.111213, 0.111757, 0.380992, 0.788635, 0.825531, 0.483706, 0.325941, 0.547729, 0.116752, 0.483973, 0.561566, 0.0476853, 0.288421, 0.650054, 0.276799, 0.379037, 0.860518, 0.0228963, 0.288618, 0.881359, 0.604251, 0.927271, 0.614673, 0.0643546, 0.436028, 0.288054, 0.652952, 0.209591, 0.773054, 0.345684, 0.435882, 0.496525, 0.733283, 0.310134, 0.661542, 0.481354, 0.799479, 0.999455, 0.00901059, 0.60553, 0.847005, 0.2234, 0.170015, 0.055915, 0.648482, 0.603476, 0.263597, 0.650536, 0.548014, 0.095071, 0.242958, 0.314119, 0.893043, 0.312585, 0.361183, 0.45584, 0.538559, 0.355636, 0.743869, 2.96342e-05, 0.421807, 0.909309, 0.290235, 0.502632, 0.784674, 0.187569, 0.308071, 0.267185, 0.387117, 0.830383, 0.699576, 0.861807, 0.635586, 0.0797072, 0.982407, 0.197537, 0.389593, 0.210325, 0.0925069, 0.853925, 0.66364, 0.142711, 0.72401, 0.41041, 0.293595, 0.180084, 0.857877, 0.22609, 0.0536478, 0.0149311, 0.792549, 0.16302, 0.117321, 0.212745, 0.0973031, 0.432302, 0.334026, 0.209042, 0.753679, 0.762934, 0.708298, 0.0171909, 0.0571178, 0.54626, 0.0221952, 0.242029, 0.0918763, 0.989952, 0.184176, 0.392578, 0.534408, 0.277992, 0.426756, 0.698145, 0.969953, 0.195217, 0.846796, 0.726991, 0.6899, 0.967913, 0.62467, 0.434259, 0.618726, 0.754401, 0.177388, 0.528281, 0.726961, 0.963401, 0.0707188, 0.0444969, 0.479264, 0.24116, 0.422797, 0.320627, 0.615334, 0.544112, 0.330703, 0.591762, 0.155187, 0.472551, 0.714999, 0.532782, 0.528907, 0.513376, 0.86704, 0.0328651, 0.727746, 0.325856, 0.618814, 0.629094, 0.280548, 0.717686, 0.757481, 0.410286, 0.709102, 0.522417, 0.639293, 0.555453, 0.719215, 0.900213, 0.0793727, 0.916506, 0.44328, 0.352898, 0.398034, 0.384751, 0.161074, 0.7696, 0.770671, 0.538404, 0.0318024, 0.437774, 0.0593149, 0.70262, 0.369751, 0.38269, 0.585291, 0.899732, 0.398359, 0.159842, 0.765145, 0.297718, 0.265596, 0.52447, 0.414421, 0.428482, 0.557065, 0.559619, 0.842593, 0.956909, 0.816163, 0.195375, 0.931258, 0.465971, 0.424543, 0.774653, 0.590041, 0.0739423, 0.196671, 0.307677, 0.261933, 0.0285516, 0.738984, 0.354039, 0.391523, 0.397201, 0.664987, 0.805306, 0.937924, 0.880471, 0.341039, 0.924895, 0.869036, 0.413439, 0.541304, 0.292062, 0.426397, 0.964427, 0.208438, 0.438794, 0.577651, 0.300885, 0.461668, 0.405974, 0.0812924, 0.175145, 0.178804, 0.441197, 0.948142, 0.847824, 0.335842, 0.725334, 0.311568, 0.652327, 0.0200386, 0.284258, 0.876683, 0.890234, 0.993462, 0.43376, 0.638062, 0.88501, 0.72586, 0.156183, 0.0465424, 0.769994, 0.183733, 0.64696, 0.645721, 0.376613, 0.220952, 0.835697, 0.980755, 0.3631, 0.471998, 0.555526, 0.95436, 0.108197, 0.235975, 0.505983, 0.483132, 0.937686, 0.981442, 0.78427, 0.97735, 0.831985, 0.510713, 0.314267, 0.000832427, 0.288103, 0.398739, 0.209325, 0.783176, 0.102928, 0.251047, 0.954025, 0.0499731, 0.505271, 0.794893, 0.0162987, 0.95054, 0.230905, 0.113767, 0.266758, 0.869384, 0.128996, 0.78173, 0.337336, 0.171694, 0.541244, 0.881261, 0.276736, 0.552753, 0.808098, 0.025242, 0.265823, 0.97056, 0.980095, 0.09552, 0.41776, 0.645108, 0.60675, 0.722814, 0.71645, 0.554537, 0.396683, 0.610738, 0.927738, 0.676049, 0.41029, 0.553841, 0.503551, 0.409644, 0.0463647, 0.214084, 0.508941, 0.841484, 0.0321953, 0.927781, 0.934039, 0.377543, 0.437581, 0.0498346, 0.472919, 0.0323662, 0.111413, 0.0808458, 0.0368907, 0.627915, 0.992583, 0.360955, 0.647195, 0.0489745, 0.623311, 0.0431752, 0.767147, 0.818697, 0.103949, 0.868243, 0.0448967, 0.822708, 0.204724, 0.605053, 0.91675, 0.744936, 0.868857, 0.743858, 0.0523163, 0.623608, 0.42094, 0.0573949, 0.172074, 0.511883, 0.964499, 0.853567, 0.315642, 0.655739, 0.204765, 0.0406335, 0.673253, 0.984438, 0.820486, 0.564025, 0.315305, 0.629325, 0.460477, 0.00706145, 0.320799, 0.571476, 0.361183, 0.938008, 0.965623, 0.601531, 0.649039, 0.571339, 0.234161, 0.305591, 0.215976, 0.516389, 0.959338, 0.650377, 0.111133, 0.199876, 0.574731, 0.316545, 0.0982121, 0.674108, 0.530823, 0.878089, 0.16988, 0.619327, 0.481569, 0.792752, 0.839371, 0.788766, 0.902313, 0.815574, 0.0821149, 0.232334, 0.60097, 0.359872, 0.573477, 0.838035, 0.363156, 0.215208, 0.0890882, 0.216272, 0.233223, 0.209986, 0.252158, 0.0550161, 0.0262118, 0.0775798, 0.529402, 0.150711, 0.919968, 0.131453, 0.507233, 0.262521, 0.0827009, 0.436821, 0.808552, 0.250228, 0.213137, 0.459742, 0.594686, 0.0496132, 0.314262, 0.308954, 0.741435, 0.404692, 0.0113842, 0.228259, 0.521657, 0.354893, 0.533571, 0.990354, 0.0535394, 0.704199, 0.107439, 0.706493, 0.966148, 0.262109, 0.366967, 0.194762, 0.0522012, 0.668898, 0.709822, 0.642879, 0.697398, 0.868102, 0.309041, 0.214379, 0.566242, 0.304703, 0.504027, 0.687267, 0.186212, 0.602461, 0.0249466, 0.786558, 0.305553, 0.491429, 0.661511, 0.0946824, 0.137817, 0.174723, 0.60314, 0.271917, 0.845652, 0.576868, 0.800857, 0.927972, 0.185335, 0.397098, 0.207879, 0.254672, 0.395767, 0.677578, 0.689829, 0.399777, 0.609087, 0.550189, 0.660056, 0.594321, 0.982477, 0.419657, 0.752959, 0.410347, 0.604976, 0.934088, 0.832204, 0.231608, 0.960599, 0.884443, 0.924598, 0.553883, 0.907342, 0.290755, 0.264968, 0.573887, 0.659652, 0.720379, 0.608417, 0.0284497, 0.378218, 0.26479, 0.916425, 0.407464, 0.528473, 0.48941, 0.328966, 0.398123, 0.562249, 0.0747244, 0.48064, 0.498243, 0.783406, 0.798375, 0.958975, 0.79876, 0.0211302, 0.410217, 0.518641, 0.132979, 0.847882, 0.990361, 0.987076, 0.799242, 0.648283, 0.59208, 0.296394, 0.756467, 0.944225, 0.0765554, 0.600636, 0.317597, 0.541923, 0.310111, 0.114584, 0.176047, 0.83561, 0.642901, 0.363241, 0.331812, 0.925724, 0.843066, 0.426798, 0.314231, 0.62937, 0.00519717, 0.359633, 0.132014, 0.112669, 0.468842, 0.718372, 0.148742, 0.351903, 0.245704, 0.794502, 0.876104, 0.30645, 0.935792, 0.28211, 0.24046, 0.195609, 0.276916, 0.687715, 0.490041, 0.501194, 0.153291, 0.0829542, 0.164332, 0.468091, 0.0247278, 0.394173, 0.210914, 0.86059, 0.339874, 0.61321, 0.930054, 0.556142, 0.159933, 0.00420368, 0.652075, 0.667575, 0.289459, 0.730602, 0.555569, 0.944058, 0.97697, 0.917328, 0.433618, 0.887698, 0.29905, 0.271253, 0.247104, 0.239831, 0.858059, 0.460138, 0.633534, 0.0551935, 0.2281, 0.338819, 0.474196, 0.014922, 0.228013, 0.136836, 0.406081, 0.0531204, 0.98602, 0.599853, 0.0315795, 0.325749, 0.0364954, 0.314839, 0.865815, 0.233163, 0.660901, 0.272757, 0.721703, 0.0143465, 0.0771391, 0.286474, 0.000510703, 0.985903, 0.0929513, 0.474664, 0.650234, 0.972448, 0.617551, 0.247075, 0.877322, 0.649853, 0.662885, 0.219109, 0.375737, 0.905421, 0.459193, 0.928444, 0.411585, 0.0962024, 0.944366, 0.269214, 0.401052, 0.513182, 0.810974, 0.557663, 0.759865, 0.509085, 0.921738, 0.121149, 0.484349, 0.529608, 0.638714, 0.535673, 0.774346, 0.853434, 0.420625, 0.860491, 0.648348, 0.15337, 0.84287, 0.794019, 0.392978, 0.274666, 0.462768, 0.961056, 0.236077, 0.100099, 0.896931, 0.307691, 0.279006, 0.598285, 0.116766, 0.42967, 0.686491, 0.92182, 0.473785, 0.171836, 0.463263, 0.333596, 0.10533, 0.65519, 0.110283, 0.576726, 0.870012, 0.828654, 0.298535, 0.116733, 0.500204, 0.471227, 0.490484, 0.885683, 0.238032, 0.625088, 0.512383, 0.555377, 0.384792, 0.867605, 0.576642, 0.201817, 0.14677, 0.130611, 0.681495, 0.658775, 0.265814, 0.928467, 0.332115, 0.853925, 0.29802, 0.642942, 0.226712, 0.253215, 0.351142, 0.998212, 0.028135, 0.802334, 0.0519587, 0.982477, 0.655262, 0.526479, 0.313167, 0.413869, 0.350746, 0.653669, 0.283342, 0.999014, 0.904547, 0.417504, 0.214072, 0.356605, 0.169751, 0.991036, 0.584668, 0.847046, 0.549047, 0.969677, 0.312476, 0.873823, 0.901067, 0.935559, 0.497459, 0.347855, 0.472104, 0.515479, 0.923861, 0.594239, 0.935341, 0.138412, 0.534849, 0.138707, 0.646969, 0.0588493, 0.460917, 0.335397, 0.163272, 0.813929, 0.695145, 0.185964, 0.295093, 0.789526, 0.98727, 0.972209, 0.201822, 0.361339, 0.117944, 0.0268668, 0.600853, 0.833237, 0.132332, 0.410353, 0.011527, 0.650644, 0.134855, 0.743185, 0.734788, 0.451774, 0.655363, 0.14838, 0.984824, 0.805629, 0.879287, 0.16018, 0.588786, 0.957526, 0.850179, 0.852263, 0.60276, 0.693684, 0.185038, 0.827625, 0.304756, 0.359668, 0.975668, 0.00979758, 0.165051, 0.538797, 0.62155, 0.925761, 0.518746, 0.0949743, 0.798904, 0.0996748, 0.258126, 0.241501, 0.0231525, 0.50768, 0.861858, 0.95564, 0.674394, 0.48676, 0.442908, 0.54732, 0.855726, 0.727641, 0.276677, 0.00767715, 0.264663, 0.824018, 0.334708, 0.309031, 0.856454, 0.912137, 0.980128, 0.953356, 0.239518, 0.904269, 0.105412, 0.120604, 0.971261, 0.632819, 0.399633, 0.74892, 0.0397495, 0.990884, 0.659839, 0.787128, 0.0371576, 0.233544, 0.615285, 0.330857, 0.541825, 0.821655, 0.358368, 0.754652, 0.605243, 0.409314, 0.743172, 0.120013, 0.152825, 0.833333, 0.954085, 0.397493, 0.754619, 0.0291426, 0.265614, 0.499785, 0.503684, 0.063207, 0.958214, 0.758642, 0.882101, 0.746943, 0.40887, 0.598289, 0.148958, 0.01237, 0.470252, 0.770874, 0.282855, 0.196647, 0.182888, 0.775261, 0.603524, 0.64581, 0.211286, 0.928953, 0.0808277, 0.94412, 0.793587, 0.189275, 0.228528, 0.452367, 0.134137, 0.191626, 0.740312, 0.371979, 0.306545, 0.111149, 0.947749, 0.670048, 0.401308, 0.814009, 0.557634, 0.765922, 0.305189, 0.0691121, 0.206145, 0.972946, 0.483041, 0.674879, 0.64419, 0.440743, 0.603566, 0.299055, 0.770067, 0.0277483, 0.822632, 0.899626, 0.0947621, 0.623652, 0.385972, 0.295955, 0.988109, 0.292027, 0.24126, 0.851533, 0.928924, 0.506672, 0.485787, 0.167212, 0.0648757, 0.90929, 0.588648, 0.144438, 0.477218, 0.744802, 0.369811, 0.879862, 0.776209, 0.658917, 0.260289, 0.449339, 0.156398, 0.825112, 0.0244576, 0.0114107, 0.143369, 0.936058, 0.91859, 0.766248, 0.22063, 0.0354328, 0.18146, 0.303906, 0.0585913, 0.873195, 0.820437, 0.520642, 0.301715, 0.445923, 0.772482, 0.53381, 0.850808, 0.936274, 0.709723, 0.811877, 0.0333295, 0.308054, 0.574707, 0.0104636, 0.225917, 0.0125933, 0.390455, 0.52888, 0.694311, 0.633775, 0.493789, 0.453533, 0.204401, 0.542741, 0.0427775, 0.47859, 0.747509, 0.975907, 0.243713, 0.0750013, 0.810944, 0.978885, 0.634111, 0.181389, 0.0870874, 0.558881, 0.507689, 0.844796, 0.290514, 0.0966477, 0.701067, 0.126584, 0.143832, 0.861762, 0.593865, 0.569792, 0.663625, 0.0383406, 0.285857, 0.967887, 0.388321, 0.730572, 0.0502237, 0.370907, 0.599961, 0.704411, 0.997353, 0.313822, 0.837331, 0.560436, 0.966545, 0.564464, 0.530616, 0.222637, 0.883258, 0.405127, 0.766165, 0.970267, 0.605508, 0.27344, 0.417443, 0.6804, 0.899621, 0.943515, 0.697902, 0.917226, 0.585366, 0.867522, 0.288848, 0.332414, 0.418357, 0.765176, 0.58805, 0.689675, 0.918882, 0.223019, 0.0301171, 0.45733, 0.23023, 0.997342, 0.708967, 0.690235, 0.778435, 0.186999, 0.0062136, 0.799721, 0.288684, 0.145258, 0.715006, 0.567267, 0.191902, 0.222308, 0.16527, 0.141028, 0.498656, 0.471809, 0.812105, 0.410669, 0.122852, 0.538152, 0.985828, 0.14648, 0.815531, 0.822378, 0.285319, 0.340083, 0.335656, 0.874195, 0.399742, 0.145658, 0.383607, 0.571692, 0.061859, 0.0808494, 0.970098, 0.66054, 0.387502, 0.879439, 0.771714, 0.323171, 0.769871, 0.901997, 0.668459, 0.155517, 0.0328072, 0.72767, 0.367528, 0.934856, 0.80916, 0.186836, 0.511356, 0.875518, 0.629981, 0.120147, 0.217666, 0.503442, 0.364572, 0.530868, 0.733359, 0.0985443, 0.781528, 0.600487, 0.734789, 0.259964, 0.420761, 0.690644, 0.762461, 0.357923, 0.374403, 0.0213049, 0.480311, 0.93855, 0.743486, 0.193385, 0.358376, 0.89866, 0.995547, 0.597713, 0.787219, 0.184868, 0.885802, 0.871711, 0.276687, 0.0774475, 0.559774, 0.639416, 0.82337, 0.264089, 0.961965, 0.505332, 0.43159, 0.343287, 0.966538, 0.292866, 0.851804, 0.573717, 0.241853, 0.529008, 0.368493, 0.178781, 0.485219, 0.152118, 0.215771, 0.95961, 0.239652, 0.0222711, 0.41502, 0.544832, 0.340101, 0.791993, 0.810729, 0.454822, 0.278915, 0.487453, 0.956725, 0.745353, 0.971265, 0.282904, 0.335591, 0.0607439, 0.528187, 0.462494, 0.367153, 0.648365, 0.477752, 0.957297, 0.5961, 0.46201, 0.470777, 0.682839, 0.617738, 0.494029, 0.8018, 0.75107, 0.0747347, 0.312343, 0.818323, 0.242369, 0.824779, 0.0967584, 0.602757, 0.453952, 0.347854, 0.911595, 0.709323, 0.603896, 0.560401, 0.98434, 0.0364084, 0.129774, 0.190367, 0.509978, 0.885952, 0.511804, 0.184469, 0.931065, 0.754266, 0.35684, 0.950373, 0.9612, 0.518543, 0.327415, 0.541612, 0.855774, 0.613072, 0.851914, 0.653144, 0.648377, 0.367146, 0.254005, 0.533603, 0.340066, 0.0406995, 0.642052, 0.331147, 0.827025, 0.000408638, 0.85964, 0.620224, 0.107599, 0.0787695, 0.586626, 0.441973, 0.758552, 0.193283, 0.590967, 0.373918, 0.954407, 0.750803, 0.590125, 0.916398, 0.289596, 0.893226, 0.641432, 0.864426, 0.165384, 0.959013, 0.172217, 0.201353, 0.565754, 0.0103648, 0.399282, 0.191406, 0.147727, 0.64197, 0.419365, 0.80361, 0.806011, 0.253815, 0.385829, 0.318207, 0.752515, 0.290406, 0.594081, 0.103586, 0.103909, 0.727477, 0.145286, 0.702887, 0.639973, 0.906371, 0.954972, 0.688807, 0.537407, 0.36753, 0.611981, 0.56082, 0.548586, 0.626795, 0.75437, 0.454324, 0.281335, 0.932877, 0.0556889, 0.431626, 0.823033, 0.746636, 0.884209, 0.755189, 0.150605, 0.251293, 0.273213, 0.32985, 0.157047, 0.253227, 0.882795, 0.751524, 0.86565, 0.980124, 0.458957, 0.0259092, 0.139669, 0.73587, 0.48146, 0.564327, 0.418925, 0.15718, 0.599346, 0.0948768, 0.548157, 0.983815, 0.896747, 0.93467, 0.12094, 0.653166, 0.445269, 0.987496, 0.89148, 0.432709, 0.00386192, 0.423232, 0.744804, 0.449125, 0.0268778, 0.38598, 0.229567, 0.307825, 0.15474, 0.61837, 0.0342545, 0.101533, 0.167021, 0.850369, 0.925965, 0.0288318, 0.968488, 0.986427, 0.143009, 0.555865, 0.715264, 0.352634, 0.292474, 0.225275, 0.405263, 0.809803, 0.0659627, 0.329628, 0.397733, 0.385378, 0.860776, 0.250435, 0.689519, 0.522654, 0.64017, 0.682935, 0.461006, 0.63006, 0.80172, 0.73188, 0.256695, 0.662023, 0.348731, 0.922653, 0.919557, 0.425762, 0.910753, 0.75513, 0.518977, 0.739286, 0.664524, 0.224873, 0.651623, 0.706705, 0.156789, 0.478963, 0.118234, 0.101867, 0.105066, 0.42649, 0.120927, 0.0114221, 0.382267, 0.901766, 0.0430191, 0.507606, 0.57271, 0.44979, 0.199321, 0.826183, 0.0436905, 0.623164, 0.754249, 0.179847, 0.609664, 0.938128, 0.0994121, 0.415671, 0.993652, 0.714302, 0.993769, 0.840236, 0.920536, 0.667547, 0.334224, 0.543902, 0.701776, 0.37346, 0.955404, 0.838328, 0.15956, 0.434229, 0.0100381, 0.863377, 0.342316, 0.307566, 0.830467, 0.663271, 0.152056, 0.893691, 0.938791, 0.818353, 0.0938728, 0.341518, 0.94682, 0.843918, 0.0174661, 0.385148, 0.0616036, 0.395143, 0.346758, 0.748034, 0.887631, 0.447507, 0.0868775, 0.625436, 0.599049, 0.160688, 0.542005, 0.0673281, 0.301457, 0.865826, 0.449351, 0.815057, 0.278228, 0.453133, 0.625479, 0.369853, 0.752237, 0.616496, 0.964257, 0.538866, 0.97705, 0.779135, 0.107661, 0.141694, 0.293515, 0.97431, 0.309492, 0.339334, 0.668479, 0.701346, 0.612186, 0.388952, 0.489523, 0.337777, 0.335632, 0.021722, 0.608576, 0.571344, 0.00593222, 0.570806, 0.748318, 0.0684743, 0.166752, 0.228047, 0.931145, 0.471832, 0.672698, 0.0547746, 0.20706, 0.515942, 0.685615, 0.718145, 0.45582, 0.609663, 0.43809, 0.501516, 0.802087, 0.706998, 0.87524, 0.719174, 0.724364, 0.750863, 0.0439049, 0.184696, 0.50599, 0.434176, 0.860739, 0.427148, 0.11695, 0.770119, 0.955365, 0.385201, 0.762092, 0.154867, 0.349278, 0.0588391, 0.680864, 0.197148, 0.923099, 0.648124, 0.261028, 0.380421, 0.897241, 0.776916, 0.498693, 0.278177, 0.513424, 0.182462, 0.640768, 0.87773, 0.640719, 0.984933, 0.0608642, 0.461069, 0.90336, 0.697298, 0.0887178, 0.738091, 0.847818, 0.345321, 0.678449, 0.0661008, 0.222803, 0.15153, 0.976997, 0.63716, 0.399377, 0.17271, 0.519796, 0.0767646, 0.960392, 0.0281541, 0.824571, 0.11165, 0.158792, 0.196758, 0.672518, 0.386981, 0.81231, 0.814184, 0.0779816, 0.201569, 0.212442, 0.35373, 0.776933, 0.18751, 0.891843, 0.179971, 0.648483, 0.649158, 0.633252, 0.364332, 0.955416, 0.954116, 0.460376, 0.719585, 0.71924, 0.379218, 0.302536, 0.468745, 0.833374, 0.11807, 0.236876, 0.265245, 0.786198, 0.616682, 0.176263, 0.16878, 0.746592, 0.325369, 0.93201, 0.210689, 0.404906, 0.0811554, 0.130468, 0.717783, 0.779477, 0.767393, 0.258517, 0.329721, 0.777283, 0.832453, 0.407952, 0.219291, 0.787133, 0.908551, 0.804323, 0.63265, 0.871746, 0.28071, 0.292123, 0.665286, 0.486935, 0.833672, 0.330147, 0.74882, 0.921321, 0.0570516, 0.994558, 0.18646, 0.930969, 0.963765, 0.611787, 0.816732, 0.255255, 0.127493, 0.653724, 0.67634, 0.963859, 0.884945, 0.545391, 0.259864, 0.976026, 0.848169, 0.190596, 0.934318, 0.780122, 0.54417, 0.269209, 0.04525, 0.961655, 0.988442, 0.299954, 0.287465, 0.621607, 0.319467, 0.418552, 0.306947, 0.826193, 0.967477, 0.708696, 0.23199, 0.839541, 0.855875, 0.376691, 0.35591, 0.0623152, 0.364152, 0.0163067, 0.414714, 0.367221, 0.916573, 0.783944, 0.953854, 0.429259, 0.821322, 0.182304, 0.861738, 0.892593, 0.363974, 0.940841, 0.414829, 0.96554, 0.0697756, 0.808214, 0.279903, 0.753596, 0.170598, 0.662963, 0.506491, 0.989795, 0.833547, 0.0964362, 0.217928, 0.182511, 0.916405, 0.929663, 0.892808, 0.960704, 0.622028, 0.0328625, 0.875278, 0.671331, 0.120736, 0.484243, 0.661575, 0.262103, 0.989783, 0.529199, 0.53198, 0.642562, 0.659543, 0.535853, 0.0279862, 0.927086, 0.226503, 0.766204, 0.67968, 0.664501, 0.000147433, 0.747497, 0.57694, 0.56268, 0.743567, 0.846374, 0.228906, 0.881546, 0.35777, 0.535058, 0.867154, 0.423761, 0.435927, 0.385817, 0.22335, 0.731321, 0.565765, 0.729349, 0.657976, 0.223232, 0.134646, 0.757165, 0.977772, 0.13174, 0.489814, 0.390622, 0.030793, 0.526329, 0.937251, 0.329882, 0.849362, 0.0605701, 0.628265, 0.254025, 0.839644, 0.388817, 0.0326272, 0.808323, 0.704152, 0.322941, 0.216104, 0.241679, 0.909248, 0.878167, 0.486013, 0.556686, 0.223157, 0.556652, 0.378219, 0.378978, 0.412863, 0.00537912, 0.888955, 0.239765, 0.738339, 0.795672, 0.0115921, 0.342575, 0.526488, 0.161514, 0.679725, 0.45338, 0.350966, 0.0698645, 0.371294, 0.802938, 0.119685, 0.112734, 0.539275, 0.32482, 0.324537, 0.102019, 0.26908, 0.869889, 0.939194, 0.010289, 0.937126, 0.869746, 0.355097, 0.895072, 0.358766, 0.787611, 0.631421, 0.489595, 0.906862, 0.934934, 0.159889, 0.327911, 0.248797, 0.994135, 0.637473, 0.162049, 0.317193, 0.100519, 0.731889, 0.178731, 0.147433, 0.553671, 0.0860994, 0.0637024, 0.230915, 0.396349, 0.0496842, 0.668902, 0.468149, 0.744955, 0.731002, 0.869422, 0.0487048, 0.395655, 0.983973, 0.967485, 0.909141, 0.590347, 0.550386, 0.229202, 0.809708, 0.401689, 0.269933, 0.357436, 0.40813, 0.715089, 0.483819, 0.523768, 0.730117, 0.0273757, 0.38216, 0.376063, 0.0495842, 0.540363, 0.403137, 0.435207, 0.962374, 0.243001, 0.2155, 0.116579, 0.00596777, 0.499365, 0.464358, 0.941541, 0.0129719, 0.707456, 0.12581, 0.845498, 0.768457, 0.837357, 0.511282, 0.255564, 0.426139, 0.80073, 0.764699, 0.477662, 0.489556, 0.0937584, 0.680824, 0.194003, 0.910425, 0.344751, 0.473603, 0.342575, 0.945425, 0.232417, 0.469331, 0.858076, 0.600164, 0.572563, 0.935231, 0.844502, 0.435598, 0.259354, 0.345243, 0.575524, 0.856887, 0.769067, 0.0561712, 0.861937, 0.477175, 0.642632, 0.989681, 0.657354, 0.495374, 0.890809, 0.361776, 0.753478, 0.352576, 0.316028, 0.55934, 0.748111, 0.0242301, 0.63698, 0.95354, 0.999331, 0.499351, 0.0964141, 0.0932584, 0.181925, 0.470591, 0.58111, 0.473299, 0.568515, 0.159936, 0.352641, 0.986706, 0.39087, 0.791791, 0.197131, 0.905259, 0.438271, 0.353538, 0.471969, 0.954098, 0.654215, 0.316385, 0.374373, 0.124096, 0.296559, 0.0191982, 0.253671, 0.453193, 0.957264, 0.851118, 0.131151, 0.824015, 0.0761794, 0.939823, 0.557335, 0.298368, 0.652939, 0.446571, 0.202696, 0.741027, 0.822296, 0.932177, 0.232095, 0.206957, 0.822518, 0.393793, 0.251782, 0.131201, 0.0727387, 0.770932, 0.354888, 0.00648049, 0.372038, 0.303916, 0.788783, 0.779157, 0.445444, 0.474583, 0.485494, 0.324881, 0.0291973, 0.993241, 0.15197, 0.429672, 0.635156, 0.0466568, 0.493696, 0.484205, 0.899548, 0.673079, 0.887542, 0.068839, 0.956253, 0.11191, 0.43216, 0.726792, 0.324185, 0.961165, 0.315227, 0.123589, 0.320405, 0.341128, 0.008635, 0.213393, 0.86098, 0.895268, 0.500419, 0.356494, 0.222006, 0.245306, 0.020221, 0.851059, 0.808538, 0.436756, 0.218902, 0.672502, 0.212524, 0.096553, 0.441897, 0.72069, 0.506839, 0.0231929, 0.295169, 0.937824, 0.411616, 0.317353, 0.535467, 0.289522, 0.0975993, 0.573829, 0.894906, 0.912567, 0.503889, 0.40862, 0.87605, 0.513327, 0.897704, 0.79112, 0.00330601, 0.301307, 0.924933, 0.210136, 0.399789, 0.383247, 0.7213, 0.465368, 0.379037, 0.222073, 0.290803, 0.75425, 0.896244, 0.661921, 0.113953, 0.175, 0.801437, 0.0791816, 0.438189, 0.554194, 0.698299, 0.533362, 0.559726, 0.945257, 0.389805, 0.45708, 0.937364, 0.980872, 0.268851, 0.709539, 0.0834161, 0.363897, 0.664832, 0.179982, 0.401349, 0.603644, 0.707299, 0.804133, 0.983241, 0.311261, 0.345365, 0.706893, 0.648039, 0.565055, 0.858242, 0.421955, 0.677403, 0.158963, 0.997875, 0.695644, 0.743536, 0.861741, 0.963077, 0.783475, 0.314471, 0.909776, 0.13434, 0.00685226, 0.315992, 0.505044, 0.884214, 0.448849, 0.0145242, 0.142816, 0.911866, 0.721801, 0.682015, 0.459583, 0.150321, 0.679745, 0.502825, 0.746225, 0.323068, 0.425318, 0.879868, 0.0165599, 0.176365, 0.500729, 0.138804, 0.834064, 0.471713, 0.836846, 0.232585, 0.285301, 0.211742, 0.229187, 0.782864, 0.312932, 0.312711, 0.578149, 0.620285, 0.991363, 0.346231, 0.267146, 0.979091, 0.288597, 0.963832, 0.244004, 0.943013, 0.74329, 0.783499, 0.245982, 0.664863, 0.396302, 0.302394, 0.754113, 0.151776, 0.758769, 0.500095, 0.5571, 0.489359, 0.793128, 0.493564, 0.0816229, 0.292844, 0.940675, 0.647185, 0.324899, 0.271784, 0.25973, 0.580248, 0.882846, 0.344809, 0.806539, 0.619961, 0.977769, 0.810815, 0.525316, 0.391413, 0.284474, 0.661297, 0.0822648, 0.556091, 0.872535, 0.320108, 0.228955, 0.759105, 0.284027, 0.698262, 0.817571, 0.904471, 0.232707, 0.178595, 0.225731, 0.136551, 0.661829, 0.689704, 0.420479, 0.179358, 0.495817, 0.195059, 0.661894, 0.960159, 0.374729, 0.172821, 0.433865, 0.896433, 0.274884, 0.101668, 0.0195123, 0.945159, 0.932629, 0.678708, 0.49671, 0.195285, 0.736573, 0.69074, 0.98924, 0.0231014, 0.866265, 0.0593382, 0.920476, 0.55871, 0.790958, 0.374598, 0.308956, 0.203835, 0.13896, 0.163524, 0.61125, 0.800125, 0.604689, 0.38293, 0.239883, 0.366654, 0.275717, 0.879044, 0.0345125, 0.0253883, 0.968474, 0.56119, 0.535113, 0.482592, 0.286101, 0.254786, 0.131018, 0.273073, 0.469337, 0.835887, 0.304907, 0.206999, 0.321034, 0.24286, 0.337337, 0.482167, 0.648614, 0.356313, 0.406781, 0.554926, 0.0955417, 0.934744, 0.741193, 0.969687, 0.0340277, 0.883645, 0.0500965, 0.850189, 0.147868, 0.618493, 0.054891, 0.410866, 0.303067, 0.768236, 0.407313, 0.369819, 0.36136, 0.912514, 0.383098, 0.462211, 0.330407, 0.368682, 0.450357, 0.427571, 0.727853, 0.910354, 0.470153, 0.294346, 0.841256, 0.71934, 0.774548, 0.231094, 0.485361, 0.129264, 0.872633, 0.808079, 0.54418, 0.661798, 0.354002, 0.115732, 0.338149, 0.685062, 0.88414, 0.240032, 0.0920179, 0.384616, 0.241623, 0.90478, 0.84621, 0.693784, 0.94463, 0.656525, 0.261012, 0.212651, 0.470449, 0.525292, 0.997417, 0.635873, 0.644776, 0.915483, 0.712238, 0.989577, 0.104516, 0.37643, 0.0156817, 0.549739, 0.353259, 0.567545, 0.320195, 0.851348, 0.289467, 0.883448, 0.385313, 0.975386, 0.766049, 0.170221, 0.704467, 0.728959, 0.612054, 0.828066, 0.840407, 0.409382, 0.760033, 0.967005, 0.194654, 0.34006, 0.213734, 0.0905185, 0.500102, 0.971728, 0.621986, 0.684992, 0.128856, 0.837135, 0.918145, 0.190976, 0.911247, 0.0514864, 0.80624, 0.408798, 0.220493, 0.224521, 0.877322, 0.0385099, 0.614169, 0.88817, 0.229666, 0.721188, 0.264943, 0.47653, 0.567368, 0.902633, 0.535977, 0.253827, 0.640493, 0.308578, 0.658295, 0.111301, 0.873223, 0.555314, 0.812779, 0.00807135, 0.66976, 0.212383, 0.659653, 0.751593, 0.615185, 0.41265, 0.447981, 0.646186, 0.939346, 0.368446, 0.206647, 0.463926, 0.309895, 0.588963, 0.331488, 0.236124, 0.832178, 0.892812, 0.460671, 0.857674, 0.941492, 0.633461, 0.0486092, 0.749437, 0.570053, 0.880335, 0.562532, 0.70153, 0.655857, 0.925519, 0.877252, 0.659761, 0.711964, 0.565728, 0.348877, 0.726564, 0.483625, 0.244734, 0.159083, 0.69571, 0.261487, 0.896328, 0.816056, 0.285894, 0.327687, 0.716706, 0.124344, 0.0265256, 0.203348, 0.398197, 0.47497, 0.500634, 0.964644, 0.376745, 0.840805, 0.849704, 0.953422, 0.71555, 0.72831, 0.337122, 0.945125, 0.388672, 0.455131, 0.118639, 0.0304581, 0.591968, 0.812254, 0.782987, 0.433481, 0.846389, 0.864012, 0.171962, 0.162654, 0.266689, 0.391112, 0.978379, 0.0346552, 0.586952, 0.031833, 0.289047, 0.415365, 0.596916, 0.530372, 0.87871, 0.959697, 0.972931, 0.363648, 0.96167, 0.487289, 0.112012, 0.539674, 0.236667, 0.777703, 0.00697131, 0.0309734, 0.230873, 0.947152, 0.476038, 0.183969, 0.228085, 0.849571, 0.275421, 0.286444, 0.735786, 0.0521317, 0.299832, 0.905572, 0.895332, 0.366051, 0.411741, 0.537879, 0.419337, 0.079378, 0.805156, 0.793631, 0.0965928, 0.598531, 0.598318, 0.773153, 0.436538, 0.994977, 0.208626, 0.294514, 0.520345, 0.647471, 0.699797, 0.013547, 0.54276, 0.482843, 0.861626, 0.406481, 0.8596, 0.860219, 0.489928, 0.647189, 0.663616, 0.220261, 0.961611, 0.923143, 0.501189, 0.317585, 0.36669, 0.0416075, 0.654256, 0.596517, 0.802064, 0.45533, 0.000281196, 0.991567, 0.588185, 0.0750981, 0.444266, 0.631594, 0.834741, 0.532738, 0.204862, 0.00149195, 0.582887, 0.843941, 0.706665, 0.439569, 0.0554153, 0.618165, 0.0763626, 0.576006, 0.781224, 0.16191, 0.192681, 0.0672024, 0.149948, 0.798083, 0.134072, 0.37307, 0.726517, 0.411759, 0.0727131, 0.979837, 0.260264, 0.838751, 0.77407, 0.377062, 0.584006, 0.283138, 0.481253, 0.158843, 0.215801, 0.149508, 0.759539, 0.25145, 0.802058, 0.366407, 0.553301, 0.372751, 0.540117, 0.888902, 0.332264, 0.644533, 0.974196, 0.828204, 0.156058, 0.680516, 0.113255, 0.609647, 0.258563, 0.858746, 0.201673, 0.325294, 0.996466, 0.581742, 0.270683, 0.00505102, 0.405913, 0.373273, 0.368075, 0.338605, 0.382544, 0.185442, 0.0716168, 0.642014, 0.735161, 0.231736, 0.280926, 0.806458, 0.288724, 0.927298, 0.866443, 0.74659, 0.582568, 0.189337, 0.139825, 0.558644, 0.938737, 0.424728, 0.419706, 0.432514, 0.606433, 0.464234, 0.070579, 0.01948, 0.0443568, 0.648825, 0.537498, 0.536141, 0.282356, 0.81914, 0.77952, 0.716556, 0.785401, 0.422103, 0.122599, 0.758018, 0.884172, 0.876852, 0.219623, 0.179689, 0.0147427, 0.975805, 0.295704, 0.764913, 0.195597, 0.222327, 0.726522, 0.44143, 0.756984, 0.147425, 0.44931, 0.678357, 0.309006, 0.912911, 0.956464, 0.809775, 0.100437, 0.231838, 0.995658, 0.831089, 0.567412, 0.140523, 0.0208844, 0.47221, 0.434762, 0.369761, 0.122273, 0.93022, 0.427289, 0.00138968, 0.919055, 0.394731, 0.170408, 0.5272, 0.580728, 0.172421, 0.738614, 0.858706, 0.515514, 0.936177, 0.110865, 0.329799, 0.144704, 0.394163, 0.437431, 0.0769508, 0.726508, 0.275889, 0.935542, 0.509661, 0.99689, 0.904397, 0.0337019, 0.775803, 0.380429, 0.569091, 0.190502, 0.245785, 0.880573, 0.600758, 0.47721, 0.391609, 0.412372, 0.897756, 0.919213, 0.370103, 0.141054, 1.20191e-05, 0.365291, 0.212163, 0.229545, 0.586162, 0.595195, 0.134095, 0.623336, 0.227264, 0.234759, 0.702092, 0.45902, 0.891786, 0.525516, 0.0639256, 0.796936, 0.706818, 0.850832, 0.953001, 0.556, 0.486836, 0.590989, 0.949839, 0.587092, 0.180256, 0.0184283, 0.486817, 0.311688, 0.249696, 0.963459, 0.370298, 0.8425, 0.403054, 0.752779, 0.932325, 0.648017, 0.731718, 0.0381195, 0.170692, 0.391021, 0.611984, 0.144065, 0.244927, 0.0581516, 0.128183, 0.511728, 0.653593, 0.866311, 0.796827, 0.521031, 0.931203, 0.721434, 0.872993, 0.409144, 0.515814, 0.513196, 0.107652, 0.270955, 0.937846, 0.433211, 0.354637, 0.0366308, 0.227131, 0.403311, 0.920548, 0.808059, 0.438508, 0.0492272, 0.606517, 0.410118, 0.736848, 0.644825, 0.516166, 0.0807724, 0.990559, 0.954847, 0.266734, 0.591672, 0.329617, 0.887104, 0.623414, 0.812345, 0.431342, 0.688292, 0.426681, 0.733457, 0.674946, 0.409627, 0.779863, 0.0219157, 0.531316, 0.888139, 0.334436, 0.667037, 0.458643, 0.295736, 0.918199, 0.815375, 0.869937, 0.00293661, 0.0102475, 0.937571, 0.328071, 0.36619, 0.197613, 0.338288, 0.480335, 0.642143, 0.0975859, 0.431129, 0.410333, 0.466688, 0.367867, 0.328595, 0.452947, 0.281265, 0.112837, 0.175668, 0.0962016, 0.733594, 0.176017, 0.931858, 0.61507, 0.738507, 0.994837, 0.0268085, 0.528805, 0.33309, 0.380145, 0.331328, 0.0147547, 0.823919, 0.339264, 0.797164, 0.347199, 0.307953, 0.195341, 0.637957, 0.37147, 0.116191, 0.740541, 0.231847, 0.740459, 0.682739, 0.713985, 0.10958, 0.756749, 0.516334, 0.919339, 0.152182, 0.29618, 0.192737, 0.212312, 0.19894, 0.500458, 0.693438, 0.175143, 0.212807, 0.558498, 0.844056, 0.598588, 0.589126, 0.233124, 0.46378, 0.170068, 0.0432387, 0.0578934, 0.671602, 0.648146, 0.72269, 0.411652, 0.562052, 0.266995, 0.730292, 0.833077, 0.364173, 0.384425, 0.754691, 0.520318, 0.384952, 0.561649, 0.716546, 0.563515, 0.391405, 0.473887, 0.807366, 0.455498, 0.797823, 0.99329, 0.0566501, 0.474465, 0.263827, 0.527949, 0.826321, 0.546833, 0.761573, 0.161726, 0.477097, 0.387216, 0.00908078, 0.342699, 0.590716, 0.612891, 0.381776, 0.286736, 0.138769, 0.426118, 0.630125, 0.114435, 0.022749, 0.167659, 0.115384, 0.722943, 0.219961, 0.915897, 0.876669, 0.175827, 0.0939754, 0.675282, 0.163174, 0.91795, 0.282888, 0.492402, 0.946611, 0.554716, 0.942357, 0.208018, 0.263696, 0.791903, 0.937721, 0.09841, 0.675157, 0.996191, 0.0226336, 0.67563, 0.88438, 0.346829, 0.514374, 0.418684, 0.565869, 0.78322, 0.790592, 0.73859, 0.146951, 0.399049, 0.0563276, 0.743575, 0.935618, 0.706072, 0.285999, 0.645951, 0.553035, 0.19193, 0.702908, 0.432067, 0.897954, 0.984509, 0.420495, 0.93247, 0.834486, 0.168918, 0.744768, 0.811155, 0.501421, 0.633726, 0.323166, 0.740346, 0.140135, 0.655225, 0.0429154, 0.186313, 0.15005, 0.0254319, 0.296293, 0.440591, 0.310251, 0.796307, 0.171079, 0.447977, 0.891993, 0.490897, 0.258092, 0.319501, 0.332444, 0.606872, 0.979289, 0.707228, 0.171903, 0.521651, 0.0343072, 0.499281, 0.092603, 0.996022, 0.204854, 0.381848, 0.546358, 0.488753, 0.917605, 0.0666593, 0.416414, 0.969993, 0.567659, 0.661384, 0.898857, 0.0449544, 0.135001, 0.685978, 0.720896, 0.345444, 0.919905, 0.970294, 0.448231, 0.513812, 0.346224, 0.368123, 0.685517, 0.395256, 0.682131, 0.304535, 0.129473, 0.792542, 0.79066, 0.477583, 0.129269, 0.133367, 0.322014, 0.863826, 0.527786, 0.617268, 0.267729, 0.451918, 0.547666, 0.886851, 0.219427, 0.24168, 0.276449, 0.359385, 0.224571, 0.211978, 0.826226, 0.686937, 0.483489, 0.118527, 0.076641, 0.052633, 0.808651, 0.0522376, 0.824982, 0.337232, 0.188409, 0.453277, 0.916369, 0.923392, 0.252049, 0.170647, 0.445271, 0.196551, 0.232924, 0.787748, 0.109796, 0.615006, 0.982263, 0.0633428, 0.681307, 0.151348, 0.374495, 0.884825, 0.153523, 0.470031, 0.439075, 0.451554, 0.898641, 0.19146, 0.414453, 0.183566, 0.0184529, 0.277495, 0.222426, 0.804856, 0.412671, 0.603429, 0.725025, 0.300665, 0.0885731, 0.55064, 0.97189, 0.469399, 0.61324, 0.890766, 0.142142, 0.491928, 0.0740167, 0.624685, 0.651399, 0.0930465, 0.14016, 0.399946, 0.368041, 0.378598, 0.626114, 0.277339, 0.65447, 0.945918, 0.480228, 0.976482, 0.519389, 0.708988, 0.490985, 0.0277287, 0.546813, 0.30012, 0.822819, 0.288361, 0.580487, 0.988715, 0.996758, 0.120198, 0.588552, 0.372554, 0.669815, 0.540238, 0.31336, 0.991082, 0.68981, 0.742698, 0.232958, 0.254088, 0.808317, 0.0617008, 0.68953, 0.695233, 0.686344, 0.869441, 0.978004, 0.00859007, 0.772477, 0.812442, 0.214557, 0.802496, 0.163306, 0.177761, 0.464414, 0.47685, 0.434799, 0.607867, 0.570816, 0.960285, 0.461333, 0.303739, 0.176515, 0.360075, 0.81964, 0.827713, 0.0612792, 0.0166165, 0.826839, 0.16666, 0.178995, 0.420688, 0.390429, 0.715626, 0.487459, 0.403873, 0.624145, 0.421205, 0.670543, 0.481124, 0.54779, 0.52255, 0.0584929, 0.657646, 0.206261, 0.197449, 0.29716, 0.767754, 0.866218, 0.763391, 0.52885, 0.891186, 0.628071, 0.152637, 0.902212, 0.0273998, 0.151154, 0.65819, 0.230012, 0.432827, 0.406489, 0.525832, 0.796426, 0.0745825, 0.867294, 0.531743, 0.920105, 0.270408, 0.278391, 0.143686, 0.0993648, 0.573185, 0.037966, 0.527293, 0.47524, 0.579917, 0.590847, 0.774383, 0.231358, 0.617451, 0.0489643, 0.835647, 0.498334, 0.404771, 0.70137, 0.529698, 0.85204, 0.636195, 0.369463, 0.414361, 0.165747, 0.532382, 0.112811, 0.246537, 0.354534, 0.382025, 0.222022, 0.715132, 0.456273, 0.896151, 0.784903, 0.0295712, 0.301331, 0.995529, 0.65379, 0.162802, 0.998677, 0.762339, 0.980458, 0.819869, 0.846046, 0.851623, 0.171729, 0.152807, 0.424439, 0.324728, 0.483842, 0.352168, 0.302195, 0.504997, 0.0173178, 0.714817, 0.174607, 0.280562, 0.0418441, 0.864934, 0.339356, 0.00350309, 0.252601, 0.221072, 0.388686, 0.851341, 0.0158434, 0.622924, 0.741444, 0.588701, 0.841873, 0.309563, 0.650706, 0.110386, 0.371108, 0.366786, 0.204512, 0.271584, 0.0732657, 0.0488429, 0.267072, 0.58363, 0.795581, 0.478233, 0.801881, 0.89168, 0.156593, 0.54992, 0.817708, 0.237794, 0.0235752, 0.293729, 0.466128, 0.191812, 0.025816, 0.416069, 0.74633, 0.135171, 0.193046, 0.263051, 0.0185888, 0.0255881, 0.817849, 0.717857, 0.883062, 0.68031, 0.232177, 0.885226, 0.719076, 0.943462, 0.774649, 0.0353471, 0.170481, 0.114228, 0.881744, 0.0325668, 0.0889019, 0.328576, 0.0250801, 0.61062, 0.791818, 0.042517, 0.538554, 0.755303, 0.397703, 0.169893, 0.0481056, 0.795939, 0.0761528, 0.341664, 0.793874, 0.238545, 0.0823149, 0.916699, 0.94509, 0.919353, 0.640574, 0.327297, 0.994329, 0.565157, 0.965312, 0.57068, 0.325908, 0.822986, 0.637845, 0.106812, 0.288664, 0.000280415, 0.462714, 0.94019, 0.688605, 0.2141, 0.220406, 0.932058, 0.900517, 0.961201, 0.353682, 0.0134808, 0.947345, 0.351386, 0.895641, 0.650239, 0.302241, 0.499506, 0.030298, 0.757766, 0.125468, 0.315489, 0.0304711, 0.309228, 0.56651, 0.0440132, 0.245361, 0.454452, 0.64075, 0.0924665, 0.126414, 0.196168, 0.997471, 0.760789, 0.424195, 0.594977, 0.207334, 0.708264, 0.0392481, 0.133198, 0.736111, 0.844827, 0.523823, 0.593987, 0.416252, 0.0167493, 0.890991, 0.601037, 0.281004, 0.24087, 0.66464, 0.864845, 0.945065, 0.234776, 0.284041, 0.399313, 0.476435, 0.339889, 0.00814128, 0.0337326, 0.198256, 0.826663, 0.312544, 0.429936, 0.567452, 0.823396, 0.448132, 0.514092, 0.467839, 0.882552, 0.168643, 0.254434, 0.79187, 0.927874, 0.900874, 0.167309, 0.427338, 0.932403, 0.766785, 0.231561, 0.133529, 0.00477333, 0.985558, 0.227331, 0.866009, 0.969119, 0.0362453, 0.842505, 0.906709, 0.967231, 0.494966, 0.0577779, 0.996638, 0.163748, 0.817862, 0.824771, 0.175573, 0.513421, 0.39277, 0.906579, 0.54055, 0.851661, 0.333983, 0.879314, 0.550784, 0.300129, 0.589179, 0.504992, 0.418578, 0.964773, 0.0316574, 0.286033, 0.23432, 0.322326, 0.0590002, 0.666221, 0.233421, 0.216785, 0.263413, 0.883685, 0.673656, 0.134459, 0.0308802, 0.686496, 0.776702, 0.758612, 0.645055, 0.723295, 0.871401, 0.262998, 0.190512, 0.341973, 0.945545, 0.114799, 0.804076, 0.647282, 0.48961, 0.62273, 0.846765, 0.891106, 0.48904, 0.581319, 0.00704831, 0.674611, 0.395743, 0.767623, 0.313934, 0.431812, 0.307768, 0.278318, 0.952107, 0.538664, 0.675371, 0.672763, 0.835563, 0.237913, 0.333882, 0.527918, 0.271057, 0.639353, 0.111164, 0.85953, 0.838041, 0.774141, 0.962816, 0.272035, 0.81665, 0.593591, 0.310545, 0.870241, 0.279337, 0.330605, 0.877284, 0.520274, 0.296165, 0.711201, 0.641985, 0.0489538, 0.0712451, 0.887277, 0.154994, 0.221739, 0.876242, 0.0356585, 0.428483, 0.837244, 0.173529, 0.66835, 0.755205, 0.398871, 0.345334, 0.12228, 0.19509, 0.304864, 0.255771, 0.734434, 0.7724, 0.730117, 0.796747, 0.417643, 0.569641, 0.502623, 0.328753, 0.858583, 0.990092, 0.275007, 0.923961, 0.438773, 0.146837, 0.510396, 0.539952, 0.0501829, 0.64086, 0.875995, 0.935705, 0.412992, 0.562118, 0.442682, 0.973155, 0.473943, 0.676603, 0.863844, 0.87501, 0.545267, 0.338438, 0.967789, 0.0523696, 0.300151, 0.58506, 0.490291, 0.647978, 0.664205, 0.549048, 0.736857, 0.0173515, 0.698325, 0.160941, 0.359318, 0.160925, 0.569788, 0.133554, 0.0942726, 0.207233, 0.726874, 0.174369, 0.24083, 0.656282, 0.503842, 0.0740461, 0.496514, 0.261925, 0.465108, 0.169835, 0.564814, 0.877148, 0.0175314, 0.0211451, 0.629332, 0.248965, 0.668303, 0.197435, 0.391905, 0.352134, 0.331264, 0.90149, 0.257259, 0.0813841, 0.0399163, 0.792019, 0.387755, 0.201367, 0.0151784, 0.513423, 0.585728, 0.0105189, 0.223943, 0.248908, 0.659531, 0.861605, 0.411425, 0.0371997, 0.33768, 0.810674, 0.0911325, 0.805898, 0.310135, 0.538922, 0.959327, 0.0575719, 0.10032, 0.394009, 0.238023, 0.917953, 0.859144, 0.816647, 0.208772, 0.145089, 0.529068, 0.745421, 0.48935, 0.761454, 0.614997, 0.154428, 0.536519, 0.151021, 0.0787678, 0.86659, 0.881324, 0.55984, 0.659421, 0.647602, 0.812297, 0.159516, 0.0479314, 0.234965, 0.240048, 0.951764, 0.218511, 0.11362, 0.657955, 0.280555, 0.905338, 0.822578, 0.180551, 0.319624, 0.250925, 0.191614, 0.496626, 0.0332085, 0.641516, 0.566172, 0.179212, 0.537525, 0.113642, 0.730111, 0.329651, 0.150623, 0.378651, 0.0484126, 0.676304, 0.121143, 0.712375, 0.302806, 0.485029, 0.471278, 0.462295, 0.1531, 0.322728, 0.713649, 0.678131, 0.334441, 0.141824, 0.176085, 0.36499, 0.0708497, 0.45882, 0.20669, 0.0474943, 0.43842, 0.516284, 0.594318, 0.875291, 0.153793, 0.737812, 0.170561, 0.923815, 0.907882, 0.512332, 0.722701, 0.370129, 0.603691, 0.196788, 0.892866, 0.362655, 0.55953, 0.824129, 0.250474, 0.556085, 0.431808, 0.128446, 0.26744, 0.244952, 0.189547, 0.576773, 0.917766, 0.84623, 0.594782, 0.680705, 0.988671, 0.0481905, 0.137674, 0.714443, 0.532153, 0.310852, 0.843688, 0.934825, 0.0629238, 0.993139, 0.142027, 0.0320124, 0.0518313, 0.114066, 0.0712663, 0.646594, 0.844838, 0.171494, 0.662638, 0.815908, 0.809541, 0.67866, 0.0357709, 0.266772, 0.206819, 0.502557, 0.339673, 0.217025, 0.53615, 0.956099, 0.66959, 0.207329, 0.914755, 0.898438, 0.655533, 0.444381, 0.304079, 0.287243, 0.287973, 0.774938, 0.0563981, 0.127154, 0.508492, 0.393986, 0.749432, 0.036603, 0.660682, 0.809726, 0.451685, 0.279454, 0.0326374, 0.300253, 0.0110367, 0.609701, 0.471395, 0.332119, 0.437578, 0.43588, 0.0996411, 0.126195, 0.885371, 0.594247, 0.456797, 0.113052, 0.505541, 0.232079, 0.929253, 0.333387, 0.209212, 0.746411, 0.482957, 0.532837, 0.919979, 0.437855, 0.175411, 0.463638, 0.880244, 0.744835, 0.546536, 0.612644, 0.484625, 0.288318, 0.135661, 0.214567, 0.83766, 0.62984, 0.700477, 0.398816, 0.150959, 0.527268, 0.666571, 0.394123, 0.00844103, 0.52856, 0.935265, 0.764811, 0.20486, 0.128771, 0.901865, 0.297184, 0.418478, 0.0462558, 0.387355, 0.528544, 0.450452, 0.227042, 0.0849481, 0.364143, 0.108157, 0.311307, 0.971291, 0.152913, 0.233171, 0.501068, 0.388727, 0.54036, 0.528268, 0.967951, 0.32463, 0.112689, 0.0762757, 0.569825, 0.851812, 0.883149, 0.695108, 0.96731, 0.685907, 0.841211, 0.560393, 0.448472, 0.48896, 0.323559, 0.618597, 0.513798, 0.694817, 0.287827, 0.586571, 0.380688, 0.306745, 0.0100176, 0.263236, 0.836942, 0.448779, 0.655984, 0.243875, 0.485407, 0.56637, 0.693995, 0.0750122, 0.679938, 0.38921, 0.105836, 0.474113, 0.908511, 0.114192, 0.529503, 0.739903, 0.376307, 0.766913, 0.891882, 0.952218, 0.596948, 0.124917, 0.119852, 0.681285, 0.11056, 0.0421997, 0.0740387, 0.846792, 0.171963, 0.226138, 0.447823, 0.423381, 0.119162, 0.0963041, 0.897442, 0.571307, 0.84302, 0.502465, 0.110057, 0.923009, 0.80842, 0.102467, 0.807205, 0.906988, 0.00687938, 0.0845105, 0.193596, 0.772054, 0.895773, 0.182554, 0.0749097, 0.36914, 0.947626, 0.935897, 0.709873, 0.460564, 0.320383, 0.285843, 0.411644, 0.587284, 0.571001, 0.201918, 0.696921, 0.663395, 0.117765, 0.433447, 0.119632, 0.45053, 0.11587, 0.648144, 0.653318, 0.0132917, 0.524782, 0.283608, 0.122124, 0.5259, 0.391915, 0.287969, 0.266864, 0.493395, 0.986789, 0.397913, 0.0892273, 0.122315, 0.197488, 0.239375, 0.142441, 0.713533, 0.339869, 0.809532, 0.715427, 0.698948, 0.623316, 0.0641153, 0.769319, 0.0695443, 0.0855769, 0.658299, 0.0899478, 0.0601225, 0.722062, 0.421102, 0.333026, 0.870482, 0.931882, 0.229236, 0.364981, 0.887809, 0.978826, 0.014522, 0.340128, 0.981108, 0.842573, 0.201703, 0.745958, 0.227492, 0.761999, 0.295944, 0.729199, 0.187346, 0.943026, 0.0105494, 0.39783, 0.583415, 0.243335, 0.541508, 0.578077, 0.295405, 0.0814667, 0.529202, 0.988785, 0.394976, 0.68877, 0.229253, 0.0849348, 0.0339687, 0.370966, 0.707144, 0.980882, 0.365654, 0.697787, 0.591989, 0.0293919, 0.638661, 0.0675529, 0.384984, 0.639085, 0.70715, 0.463815, 0.751835, 0.237533, 0.935665, 0.698684, 0.530724, 0.560631, 0.899975, 0.852685, 0.787844, 0.779743, 0.744731, 0.138768, 0.526725, 0.493108, 0.926152, 0.368556, 0.929163, 0.641783, 0.511469, 0.393187, 0.0824426, 0.431576, 0.622319, 0.548548, 0.035575, 0.825666, 0.269376, 0.0913602, 0.372635, 0.38487, 0.0906382, 0.315676, 0.0645145, 0.447505, 0.905866, 0.296598, 0.855463, 0.609323, 0.59174, 0.795297, 0.624946, 0.329668, 0.332246, 0.732409, 0.843695, 0.236205, 0.692938, 0.965589, 0.56019, 0.538383, 0.761268, 0.48515, 0.421152, 0.547355, 0.609943, 0.823565, 0.732828, 0.64059, 0.857855, 0.513389, 0.254, 0.755954, 0.416683, 0.317996, 0.293253, 0.664124, 0.941729, 0.150869, 0.512851, 0.898977, 0.624365, 0.817087, 0.336162, 0.477889, 0.966191, 0.313993, 0.133734, 0.661253, 0.849473, 0.715564, 0.510133, 0.75148, 0.604027, 0.632663, 0.135236, 0.599463, 0.0327076, 0.857848, 0.145505, 0.992245, 0.20774, 0.0786172, 0.312129, 0.0971802, 0.904136, 0.359232, 0.832288, 0.362956, 0.630257, 0.191595, 0.9119, 0.616889, 0.819632, 0.437823, 0.878439, 0.311629, 0.405242, 0.583834, 0.607413, 0.695011, 0.253874, 0.288259, 0.563804, 0.648179, 0.359066, 0.50901, 0.687083, 0.205109, 0.193449, 0.759391, 0.328667, 0.656092, 0.206288, 0.0623738, 0.450473, 0.47376, 0.439961, 0.381667, 0.096583, 0.84527, 0.686133, 0.163243, 0.978766, 0.59959, 0.647816, 0.259232, 0.896248, 0.0680054, 0.362097, 0.902687, 0.097296, 0.488055, 0.58164, 0.403066, 0.579204, 0.855055, 0.750976, 0.376216, 0.633781, 0.256236, 0.388568, 0.0867576, 0.0117217, 0.194627, 0.200052, 0.694049, 0.824496, 0.360713, 0.723254, 0.595559, 0.923657, 0.59036, 0.6563, 0.177194, 0.792463, 0.171986, 0.479814, 0.0912182, 0.62897, 0.913829, 0.798994, 0.716449, 0.548011, 0.684962, 0.797857, 0.762225, 0.237444, 0.591305, 0.601787, 0.848342, 0.496632, 0.289776, 0.899311, 0.429076, 0.396456, 0.770349, 0.370505, 0.097602, 0.182601, 0.911995, 0.915318, 0.590273, 0.964508, 0.478509, 0.767288, 0.466258, 0.0502008, 0.0988117, 0.626614, 0.220539, 0.633559, 0.0282357, 0.555049, 0.594994, 0.165034, 0.595876, 0.610316, 0.822023, 0.424342, 0.171725, 0.356189, 0.420226, 0.3426, 0.9266, 0.174428, 0.0605539, 0.344594, 0.520125, 0.935027, 0.207641, 0.420421, 0.0941734, 0.445178, 0.778392, 0.729336, 0.0113313, 0.747309, 0.0232427, 0.400348, 0.831972, 0.31958, 0.821585, 0.804603, 0.160086, 0.0857735, 0.811761, 0.0733643, 0.705643, 0.24753, 0.754742, 0.694147, 0.950033, 0.696942, 0.90747, 0.797599, 0.591987, 0.0650946, 0.847517, 0.276937, 0.823598, 0.50711, 0.42896, 0.0995254, 0.945282, 0.715105, 0.629399, 0.263378, 0.0254412, 0.647343, 0.849229, 0.474649, 0.369794, 0.559946, 0.577379, 0.817203, 0.589239, 0.595788, 0.387239, 0.0224561, 0.43111, 0.922646, 0.148943, 0.104584, 0.902042, 0.502038, 0.987925, 0.97373, 0.951235, 0.449732, 0.581847, 0.747052, 0.124775, 0.488138, 0.355401, 0.773033, 0.494585, 0.496174, 0.69698, 0.379714, 0.694903, 0.077038, 0.685187, 0.515888, 0.739523, 0.85641, 0.526524, 0.796094, 0.204457, 0.105733, 0.745853, 0.844415, 0.588465, 0.478419, 0.1446, 0.202476, 0.667741, 0.494301, 0.0335055, 0.120191, 0.0084502, 0.989238, 0.306892, 0.509825, 0.564446, 0.490707, 0.224671, 0.930068, 0.121323, 0.377139, 0.999044, 0.646334, 0.171395, 0.418921, 0.846088, 0.462129, 0.965202, 0.407284, 0.14838, 0.239469, 0.799115, 0.787609, 0.606225, 0.0471999, 0.573742, 0.157793, 0.318201, 0.213735, 0.0707531, 0.554441, 0.947575, 0.0495039, 0.446243, 0.0464633, 0.612654, 0.415336, 0.0389473, 0.741115, 0.700916, 0.592345, 0.427995, 0.584374, 0.473134, 0.722755, 0.734312, 0.957571, 0.123449, 0.826485, 0.0270396, 0.745278, 0.482321, 0.214278, 0.25277, 0.375662, 0.41588, 0.961684, 0.819722, 0.135851, 0.766622, 0.0878297, 0.928593, 0.122511, 0.580273, 0.434781, 0.474652, 0.731661, 0.901691, 0.147487, 0.658038, 0.48893, 0.12693, 0.533371, 0.0841936, 0.363146, 0.828549, 0.539438, 0.786856, 0.351054, 0.731142, 0.233761, 0.931138, 0.806257, 0.807374, 0.172688, 0.828602, 0.953915, 0.473652, 0.382548, 0.357981, 0.5963, 0.265732, 0.914037, 0.188111, 0.74128, 0.743633, 0.247761, 0.158465, 0.52252, 0.800593, 0.512861, 0.333242, 0.986477, 0.26932, 0.561066, 0.904287, 0.320868, 0.838198, 0.88361, 0.133302, 0.930164, 0.750391, 0.187244, 0.491315, 0.0982396, 0.284781, 0.388216, 0.354819, 0.940943, 0.431945, 0.865286, 0.0681679, 0.154232, 0.622275, 0.768949, 0.765559, 0.624581, 0.608164, 0.415398, 0.0569954, 0.617883, 0.22415, 0.889372, 0.535689, 0.576916, 0.296475, 0.829001, 0.824504, 0.0861363, 0.390256, 0.26195, 0.386549, 0.464313, 0.584617, 0.427067, 0.830522, 0.141594, 0.268901, 0.321917, 0.995861, 0.234313, 0.752381, 0.199834, 0.643007, 0.242113, 0.342142, 0.645541, 0.513711, 0.947553, 0.202209, 0.69997, 0.732298, 0.546207, 0.909885, 0.441927, 0.621059, 0.133464, 0.683791, 0.602374, 0.917825, 0.744225, 0.478784, 0.19923, 0.277641, 0.871182, 0.902672, 0.931098, 0.534009, 0.193389, 0.798878, 0.992723, 0.877838, 0.895002, 0.516418, 0.99492, 0.451821, 0.118106, 0.285755, 0.93387, 0.712791, 0.713099, 0.157295, 0.447819, 0.789059, 0.972432, 0.740688, 0.28434, 0.589186, 0.751243, 0.449302, 0.776258, 0.921298, 0.741599, 0.510316, 0.642133, 0.802657, 0.184818, 0.956007, 0.707658, 0.653938, 0.0425206, 0.869644, 0.241867, 0.59502, 0.399322, 0.650882, 0.84735, 0.107822, 0.481473, 0.994608, 0.831817, 0.624027, 0.75346, 0.203081, 0.0454528, 0.615748, 0.420401, 0.536439, 0.246667, 0.562155, 0.0642064, 0.762507, 0.207881, 0.918567, 0.935136, 0.95591, 0.112227, 0.643769, 0.072078, 0.467719, 0.216183, 0.0826399, 0.887609, 0.373829, 0.898391, 0.365567, 0.0825346, 0.647592, 0.882828, 0.85406, 0.412205, 0.0338052, 0.205062, 0.736613, 0.638607, 0.611988, 0.490074, 0.144148, 0.391377, 0.164745, 0.664129, 0.61886, 0.404987, 0.590734, 0.750537, 0.943542, 0.877202, 0.0189034, 0.431634, 0.553794, 0.150283, 0.921783, 0.142319, 0.711886, 0.702466, 0.446256, 0.947935, 0.897201, 0.182397, 0.784559, 0.27897, 0.976729, 0.718449, 0.733462, 0.845627, 0.370785, 0.169054, 0.367375, 0.0667599, 0.441103, 0.522313, 0.943191, 0.228149, 0.703903, 0.141448, 0.0483062, 0.402232, 0.210588, 0.735638, 0.529482, 0.692995, 0.305162, 0.946559, 0.655759, 0.512732, 0.958042, 0.0325353, 0.39025, 0.582741, 0.737131, 0.383514, 0.740761, 0.0172872, 0.0496383, 0.379124, 0.0443368, 0.700332, 0.504416, 0.975272, 0.257555, 0.95874, 0.630045, 0.782987, 0.339182, 0.0107481, 0.205458, 0.755836, 0.551076, 0.0750751, 0.823827, 0.392427, 0.462071, 0.293287, 0.183514, 0.583074, 0.492738, 0.407717, 0.559001, 0.454406, 0.0872644, 0.198206, 0.973656, 0.910874, 0.628127, 0.147729, 0.296648, 0.410129, 0.458397, 0.304627, 0.314145, 0.0842917, 0.854725, 0.98295, 0.995142, 0.12097, 0.0855334, 0.58699, 0.495223, 0.981343, 0.667315, 0.607667, 0.880606, 0.203245, 0.807278, 0.15376, 0.789492, 0.217277, 0.0948716, 0.150338, 0.198203, 0.396679, 0.524842, 0.934821, 0.391884, 0.535226, 0.139255, 0.890324, 0.819746, 0.0691174, 0.568563, 0.961456, 0.729993, 0.59617, 0.458534, 0.890504, 0.490753, 0.502552, 0.2698, 0.353599, 0.170654, 0.978598, 0.79202, 0.847386, 0.112152, 0.256585, 0.280995, 0.347462, 0.155091, 0.457856, 0.915769, 0.427935, 0.279657, 0.199543, 0.030673, 0.490789, 0.412269, 0.980538, 0.455362, 0.236022, 0.672848, 0.0843078, 0.473051, 0.584604, 0.333791, 0.872939, 0.884161, 0.82561, 0.671148, 0.804559, 0.0571492, 0.506491, 0.587321, 0.320331, 0.105971, 0.0656528, 0.192821, 0.273989, 0.818754, 0.606188, 0.69404, 0.186976, 0.287752, 0.646347, 0.498658, 0.293975, 0.509989, 0.0678056, 0.317477, 0.14645, 0.694471, 0.75618, 0.740541, 0.108958, 0.705042, 0.972045, 0.987658, 0.00562353, 0.73289, 0.478175, 0.444326, 0.481034, 0.486778, 0.833366, 0.186433, 0.207425, 0.66315, 0.254926, 0.344074, 0.828795, 0.0652598, 0.204524, 0.608561, 0.0659682, 0.365835, 0.755454, 0.18244, 0.0311781, 0.336347, 0.441798, 0.907119, 0.919638, 0.831951, 0.55613, 0.0567533, 0.566532, 0.950928, 0.951063, 0.637377, 0.233777, 0.719936, 0.806261, 0.974567, 0.94225, 0.597856, 0.697234, 0.691378, 0.49689, 0.907236, 0.607242, 0.18597, 0.183143, 0.0962611, 0.184931, 0.000833121, 0.487038, 0.714777, 0.0601879, 0.106848, 0.0454389, 0.275154, 0.0362009, 0.652776, 0.647269, 0.0451591, 0.222329, 0.873698, 0.771548, 0.49427, 0.494441, 0.448411, 0.955785, 0.709217, 0.116396, 0.391161, 0.383969, 0.267803, 0.31987, 0.242902, 0.642496, 0.60187, 0.360532, 0.938925, 0.510473, 0.260975, 0.902704, 0.748941, 0.277152, 0.630993, 0.933111, 0.491047, 0.48199, 0.482289, 0.453252, 0.3532, 0.715598, 0.0922259, 0.724063, 0.194187, 0.0173517, 0.278226, 0.0569869, 0.157893, 0.722153, 0.0673078, 0.139394, 0.00138647, 0.314579, 0.527069, 0.400797, 0.338557, 0.0446162, 0.262916, 0.85003, 0.280461, 0.150433, 0.805651, 0.57948, 0.0258817, 0.0567081, 0.733717, 0.116632, 0.938169, 0.0276677, 0.243835, 0.00157272, 0.693641, 0.540975, 0.564382, 0.285459, 0.346625, 0.316888, 0.757294, 0.0934159, 0.481623, 0.543655, 0.964689, 0.635952, 0.919444, 0.79599, 0.76748, 0.163268, 0.448353, 0.0920454, 0.32188, 0.554036, 0.844806, 0.522827, 0.458522, 0.0213779, 0.0584381, 0.113687, 0.223912, 0.145314, 0.0649469, 0.439308, 0.38745, 0.629751, 0.197155, 0.278737, 0.0481005, 0.670399, 0.686822, 0.925355, 0.350732, 0.61908, 0.688475, 0.278723, 0.538385, 0.0759035, 0.189597, 0.247853, 0.0854431, 0.70223, 0.0481766, 0.112708, 0.885024, 0.145418, 0.342815, 0.570951, 0.615716, 0.838364, 0.229125, 0.914869, 0.0807566, 0.841244, 0.801064, 0.100729, 0.825629, 0.435581, 0.333583, 0.87399, 0.873529, 0.186217, 0.296313, 0.730403, 0.248867, 0.0047435, 0.503056, 0.379944, 0.735921, 0.806074, 0.696736, 0.3877, 0.635475, 0.821489, 0.997038, 0.773904, 0.697325, 0.0823173, 0.989297, 0.534374, 0.395458, 0.779097, 0.251209, 0.536462, 0.378766, 0.838378, 0.819028, 0.0134496, 0.49593, 0.907435, 0.305601, 0.673914, 0.910395, 0.37772, 0.731496, 0.534258, 0.165475, 0.942286, 0.350023, 0.864445, 0.532633, 0.635889, 0.808484, 0.781158, 0.957145, 0.584252, 0.122449, 0.203071, 0.272199, 0.846977, 0.565184, 0.915573, 0.471642, 0.0657705, 0.107319, 0.745156, 0.182566, 0.676648, 0.0963369, 0.0250064, 0.900877, 0.841255, 0.649461, 0.64128, 0.924952, 0.977799, 0.511202, 0.927327, 0.722476, 0.612947, 0.0327017, 0.688698, 0.570857, 0.0987894, 0.725083, 0.391378, 0.538569, 0.28648, 0.861244, 0.0274032, 0.815053, 0.824076, 0.942452, 0.527812, 0.578409, 0.129797, 0.510809, 0.0820612, 0.931813, 0.491563, 0.791236, 0.790234, 0.901141, 0.789327, 0.907997, 0.142342, 0.528214, 0.716877, 0.958462, 0.954974, 0.242113, 0.919851, 0.251386, 0.56156, 0.682846, 0.308639, 0.115634, 0.967474, 0.429962, 0.0486278, 0.55142, 0.351646, 0.548327, 0.530753, 0.104318, 0.0895818, 0.307136, 0.536774, 0.106918, 0.421321, 0.666497, 0.711117, 0.289704, 0.787347, 0.948744, 0.549595, 0.936131, 0.136233, 0.610194, 0.186622, 0.27585, 0.571027, 0.586027, 0.837927, 0.193882, 0.35946, 0.175026, 0.0824834, 0.0126935, 0.339797, 0.818046, 0.439991, 0.269957, 0.137731, 0.33262, 0.491249, 0.767624, 0.256845, 0.398864, 0.258536, 0.271324, 0.982432, 0.439209, 0.740897, 0.353588, 0.799446, 0.810211, 0.415814, 0.794809, 0.320497, 0.252934, 0.795301, 0.588321, 0.753028, 0.165118, 0.324748, 0.510637, 0.799677, 0.243883, 0.767565, 0.0532222, 0.247092, 0.069637, 0.928513, 0.753128, 0.305723, 0.702824, 0.382697, 0.441858, 0.72836, 0.186217, 0.858214, 0.617516, 0.589245, 0.482866, 0.120475, 0.795432, 0.564749, 0.483426, 0.980871, 0.786813, 0.69169, 0.403745, 0.745458, 0.918907, 0.403531, 0.451615, 0.0550625, 0.783483, 0.424662, 0.428934, 0.671318, 0.568676, 0.0994755, 0.938827, 0.542863, 0.738337, 0.873928, 0.419431, 0.337526, 0.629237, 0.679101, 0.622262, 0.320956, 0.0626878, 0.999204, 0.951498, 0.0958139, 0.50477, 0.0680271, 0.676681, 0.407226, 0.447046, 0.503213, 0.538867, 0.741814, 0.0891491, 0.531931, 0.813284, 0.659832, 0.361232, 0.935574, 0.0579028, 0.797737, 0.316299, 0.840737, 0.198096, 0.176278, 0.523454, 0.749724, 0.865867, 0.163428, 0.611741, 0.785425, 0.776603, 0.719072, 0.164897, 0.66426, 0.297643, 0.493834, 0.161139, 0.144617, 0.856268, 0.829604, 0.846565, 0.145734, 0.698211, 0.970246, 0.766181, 0.468508, 0.888683, 0.971707, 0.572371, 0.465724, 0.0273943, 0.0190296, 0.125226, 0.5102, 0.31494, 0.232586, 0.709194, 0.990483, 0.579528, 0.430838, 0.649575, 0.961249, 0.814985, 0.349948, 0.970205, 0.873427, 0.396802, 0.0647769, 0.455932, 0.916176, 0.343859, 0.073931, 0.150787, 0.32747, 0.881908, 0.963701, 0.280559, 0.0145761, 0.211231, 0.13017, 0.712058, 0.686147, 0.653135, 0.273876, 0.297828, 0.706835, 0.64975, 0.829058, 0.207557, 0.24807, 0.0674541, 0.933501, 0.95747, 0.501197, 0.764878, 0.809991, 0.109319, 0.97374, 0.294305, 0.65838, 0.997028, 0.385114, 0.187525, 0.164058, 0.787641, 0.334825, 0.2028, 0.868044, 0.0966004, 0.103965, 0.162358, 0.846588, 0.658266, 0.671984, 0.007802, 0.186191, 0.14611, 0.718566, 0.581245, 0.234107, 0.0916243, 0.149704, 0.100661, 0.137573, 0.260829, 0.733083, 0.582407, 0.0161812, 0.905822, 0.0470349, 0.643669, 0.185742, 0.911995, 0.767803, 0.072931, 0.491999, 0.032019, 0.201497, 0.796155, 0.447767, 0.202882, 0.659047, 0.860667, 0.231065, 0.348377, 0.626993, 0.261161, 0.612507, 0.93157, 0.617792, 0.0418991, 0.250086, 0.833258, 0.48148, 0.39641, 0.603641, 0.692034, 0.160123, 0.515866, 0.417584, 0.89555, 0.779499, 0.3432, 0.245985, 0.102742, 0.736205, 0.99383, 0.876987, 0.250527, 0.37881, 0.299656, 0.159117, 0.173121, 0.810005, 0.550245, 0.183481, 0.836829, 0.369465, 0.0784068, 0.21991, 0.743373, 0.382761, 0.0534794, 0.0327177, 0.851849, 0.54143, 0.884582, 0.811702, 0.262948, 0.798388, 0.262586, 0.12314, 0.431092, 0.599366, 0.15252, 0.718778, 0.386064, 0.974922, 0.196319, 0.945306, 0.676892, 0.32944, 0.0230613, 0.791914, 0.845819, 0.344745, 0.757456, 0.332878, 0.0475688, 0.409226, 0.363361, 0.103045, 0.351446, 0.256201, 0.859651, 0.0347259, 0.278092, 0.598939, 0.056031, 0.119117, 0.267192, 0.747133, 0.651704, 0.822329, 0.883514, 0.747336, 0.394452, 0.391557, 0.883501, 0.628572, 0.349799, 0.0699412, 0.242391, 0.347295, 0.309552, 0.936614, 0.96757, 0.673689, 0.457238, 0.102201, 0.0283051, 0.756324, 0.89344, 0.393054, 0.843095, 0.0201433, 0.0508908, 0.928129, 0.678484, 0.966097, 0.970277, 0.0487653, 0.99047, 0.427686, 0.101749, 0.389994, 0.801796, 0.9433, 0.27742, 0.122309, 0.812336, 0.304178, 0.404869, 0.145225, 0.763077, 0.349284, 0.973616, 0.941684, 0.966734, 0.482917, 0.792331, 0.40256, 0.228404, 0.241401, 0.530716, 0.775069, 0.611068, 0.877061, 0.00822817, 0.944816, 0.671341, 0.597713, 0.1963, 0.191041, 0.863042, 0.97787, 0.266656, 0.944135, 0.153973, 0.84478, 0.934518, 0.0101324, 0.896805, 0.925821, 0.808599, 0.506862, 0.834502, 0.206873, 0.616657, 0.190184, 0.110574, 0.309445, 0.678084, 0.68764, 0.0803695, 0.102537, 0.330622, 0.409365, 0.830257, 0.920365, 0.109779, 0.928976, 0.242173, 0.0872111, 0.976005, 0.427813, 0.208303, 0.0669568, 0.339877, 0.526027, 0.623694, 0.0909495, 0.662156, 0.83307, 0.748714, 0.496375, 0.928164, 0.0888929, 0.966127, 0.701186, 0.290311, 0.955522, 0.817517, 0.574922, 0.118915, 0.123963, 0.931446, 0.173343, 0.0673987, 0.0796155, 0.509616, 0.27848, 0.647366, 0.845342, 0.894016, 0.135002, 0.14444, 0.801373, 0.631623, 0.304413, 0.172931, 0.851753, 0.397908, 0.858392, 0.603678, 0.983564, 0.206338, 0.985833, 0.0389553, 0.968582, 0.0316138, 0.52255, 0.940026, 0.480945, 0.204097, 0.800486, 0.387806, 0.811569, 0.327236, 0.364931, 0.0161828, 0.755807, 0.808606, 0.153863, 0.677506, 0.639948, 0.728528, 0.545357, 0.874714, 0.633961, 0.672314, 0.854193, 0.333972, 0.275265, 0.505065, 0.0390262, 0.546134, 0.748211, 0.483414, 0.238871, 0.086358, 0.211785, 0.333985, 0.616154, 0.407236, 0.470474, 0.369164, 0.905938, 0.751004, 0.576953, 0.359972, 0.525121, 0.180454, 0.125343, 0.682514, 0.540055, 0.262287, 0.613434, 0.20555, 0.268176, 0.944076, 0.683887, 0.304354, 0.525964, 0.0563507, 0.186128, 0.901076, 0.376996, 0.418124, 0.846206, 0.701657, 0.6163, 0.409259, 0.603853, 0.989163, 0.990951, 0.140016, 0.577198, 0.0717203, 0.190814, 0.570447, 0.0848522, 0.394837, 0.0410504, 0.90176, 0.386076, 0.440847, 0.190578, 0.412392, 0.305423, 0.387254, 0.877219, 0.858702, 0.16202, 0.249316, 0.0931462, 0.851088, 0.986627, 0.140982, 0.280751, 0.758626, 0.628956, 0.711465, 0.568046, 0.00580886, 0.863143, 0.888469, 0.819644, 0.504548, 0.564843, 0.579675, 0.942337, 0.765505, 0.408913, 0.692154, 0.206791, 0.397213, 0.131126, 0.395996, 0.438039, 0.883587, 0.370056, 0.711419, 0.905807, 0.664689, 0.234771, 0.604785, 0.0235357, 0.321959, 0.146825, 0.588254, 0.904173, 0.884088, 0.173588, 0.441115, 0.256385, 0.219919, 0.337976, 0.348612, 0.723518, 0.13678, 0.872432, 0.758708, 0.0651159, 0.397546, 0.0789455, 0.494306, 0.997313, 0.4093, 0.128159, 0.450131, 0.424133, 0.936298, 0.556522, 0.111565, 0.886528, 0.538497, 0.742189, 0.988109, 0.770794, 0.36197, 0.929169, 0.654865, 0.735449, 0.0882158, 0.121988, 0.812405, 0.0323147, 0.356516, 0.743183, 0.49272, 0.502774, 0.530402, 0.80063, 0.927351, 0.881046, 0.97202, 0.172543, 0.158431, 0.354625, 0.732495, 0.665111, 0.118994, 0.654775, 0.908427, 0.49957, 0.111015, 0.907592, 0.549344, 0.0501071, 0.310785, 0.295828, 0.780552, 0.87482, 0.143214, 0.285174, 0.742135, 0.235012, 0.922698, 0.700166, 0.864935, 0.449539, 0.00129627, 0.461474, 0.59276, 0.212348, 0.510781, 0.659891, 0.462252, 0.0869465, 0.369206, 0.512066, 0.868178, 0.875224, 0.23292, 0.56033, 0.471704, 0.697728, 0.587438, 0.691271, 0.357137, 0.198208, 0.893252, 0.88539, 0.885235, 0.657946, 0.968727, 0.157589, 0.547534, 0.690851, 0.76294, 0.598798, 0.0940266, 0.866911, 0.462136, 0.62536, 0.473049, 0.78864, 0.949104, 0.205362, 0.266732, 0.20068, 0.22428, 0.579975, 0.85568, 0.385347, 0.366773, 0.699094, 0.12392, 0.710276, 0.814907, 0.672587, 0.234216, 0.318904, 0.731612, 0.94729, 0.5885, 0.832636, 0.975877, 0.668734, 0.486714, 0.905976, 0.317388, 0.853022, 0.65888, 0.896131, 0.0888655, 0.677008, 0.354645, 0.277106, 0.680412, 0.244873, 0.604277, 0.730003, 0.755222, 0.807247, 0.306295, 0.947223, 0.571953, 0.6879, 0.67177, 0.425921, 0.817848, 0.484288, 0.917376, 0.920418, 0.412034, 0.377941, 0.765428, 0.904247, 0.3247, 0.638179, 0.00771101, 0.744418, 0.976353, 0.313007, 0.941025, 0.567758, 0.814006, 0.631265, 0.861989, 0.00451235, 0.573643, 0.302395, 0.014097, 0.402934, 0.184395, 0.106216, 0.40854, 0.668758, 0.0545764, 0.0553679, 0.139938, 0.129192, 0.387968, 0.457384, 0.565187, 0.517776, 0.0817044, 0.408435, 0.278675, 0.909138, 0.015214, 0.329972, 0.575212, 0.375611, 0.0032542, 0.968081, 0.679393, 0.771907, 0.998229, 0.0978324, 0.152322, 0.657974, 0.0424364, 0.898498, 0.00781248, 0.966604, 0.555214, 0.538572, 0.138067, 0.245444, 0.70275, 0.375037, 0.359377, 0.521197, 0.839466, 0.309528, 0.820303, 0.408387, 0.491143, 0.388267, 0.294487, 0.0337572, 0.460792, 0.142401, 0.635061, 0.338179, 0.79421, 0.0821413, 0.713417, 0.119723, 0.40366, 0.214843, 0.277811, 0.500774, 0.760807, 0.505912, 0.860669, 0.0112127, 0.98156, 0.533639, 0.158576, 0.558546, 0.412941, 0.800568, 0.299821, 0.698518, 0.618905, 0.474764, 0.862655, 0.797544, 0.0687973, 0.0207867, 0.213764, 0.171063, 0.863256, 0.881686, 0.207783, 0.879188, 0.037853, 0.455884, 0.453878, 0.290796, 0.0655869, 0.405618, 0.00459906, 0.305834, 0.672784, 0.411524, 0.625711, 0.823909, 0.950785, 0.164711, 0.0981265, 0.507428, 0.198156, 0.855555, 0.151924, 0.0468619, 0.184465, 0.0490477, 0.110812, 0.179069, 0.534728, 0.537124, 0.0209009, 0.0639172, 0.688472, 0.299513, 0.786082, 0.0106266, 0.652687, 0.469544, 0.0120093, 0.805626, 0.247813, 0.808545, 0.0770186, 0.289019, 0.784351, 0.666679, 0.39459, 0.24278, 0.699469, 0.576991, 0.248606, 0.40172, 0.524148, 0.729291, 0.848295, 0.865359, 0.528305, 0.980017, 0.780771, 0.632278, 0.00220072, 0.898266, 0.124942, 0.418234, 0.794272, 0.283826, 0.55652, 0.701737, 0.863986, 0.430347, 0.265604, 0.54903, 0.439853, 0.500332, 0.523264, 0.424742, 0.360083, 0.307529, 0.782259, 0.181462, 0.1145, 0.189727, 0.925073, 0.898144, 0.426075, 0.4916, 0.855005, 0.137732, 0.596704, 0.223484, 0.593847, 0.309636, 0.362375, 0.578144, 0.994404, 0.597797, 0.931226, 0.670181, 0.0432512, 0.153872, 0.35103, 0.315945, 0.538562, 0.932876, 0.377005, 0.544964, 0.338992, 0.795902, 0.197154, 0.672297, 0.490805, 0.590352, 0.250013, 0.845371, 0.447785, 0.335133, 0.646024, 0.2021, 0.605049, 0.691671, 0.206017, 0.731294, 0.640739, 0.765759, 0.370657, 0.0312338, 0.197648, 0.824302, 0.619517, 0.613733, 0.827673, 0.658405, 0.0745359, 0.971399, 0.0159525, 0.955448, 0.0116033, 0.943235, 0.272295, 0.531009, 0.466417, 0.962721, 0.531325, 0.970817, 0.342374, 0.372079, 0.140249, 0.679542, 0.973079, 0.601624, 0.365839, 0.620408, 0.345363, 0.595607, 0.288867, 0.559873, 0.414348, 0.682725, 0.0607263, 0.0944081, 0.618428, 0.752767, 0.773098, 0.928129, 0.886303, 0.268078, 0.22035, 0.159019, 0.756596, 0.618913, 0.223985, 0.745674, 0.0350222, 0.737339, 0.233143, 0.943329, 0.58761, 0.0675672, 0.184227, 0.441476, 0.215799, 0.983103, 0.17817, 0.499477, 0.0125585, 0.108036, 0.0168981, 0.792401, 0.08275, 0.113531, 0.0458031, 0.835127, 0.769068, 0.260122, 0.697836, 0.259229, 0.436322, 0.886532, 0.048632, 0.0479159, 0.0720011, 0.526291, 0.676736, 0.753908, 0.101618, 0.335222, 0.316349, 0.388356, 0.667449, 0.190856, 0.52523, 0.932477, 0.903691, 0.387469, 0.902516, 0.898816, 0.405547, 0.806302, 0.460635, 0.979476, 0.336249, 0.383538, 0.512612, 0.860613, 0.835158, 0.406269, 0.473369, 0.0954731, 0.454457, 0.385452, 0.87065, 0.502873, 0.823331, 0.402513, 0.0186827, 0.892463, 0.760045, 0.69478, 0.041612, 0.660795, 0.342862, 0.595638, 0.130851, 0.099257, 0.120403, 0.980318, 0.366255, 0.328121, 0.150642, 0.809234, 0.612507, 0.552784, 0.0610674, 0.302397, 0.19588, 0.474791, 0.834239, 0.625413, 0.0552931, 0.251426, 0.469178, 0.04744, 0.975585, 0.826749, 0.958573, 0.406457, 0.211197, 0.759212, 0.175226, 0.851629, 0.611174, 0.638489, 0.925408, 0.416981, 0.371532, 0.77157, 0.921326, 0.603638, 0.784612, 0.394229, 0.241148, 0.271205, 0.481803, 0.799405, 0.036087, 0.175162, 0.696693, 0.469841, 0.486332, 0.966725, 0.768314, 0.751339, 0.390397, 0.228439, 0.553128, 0.942552, 0.200973, 0.526934, 0.886443, 0.923001, 0.248618, 0.425527, 0.709908, 0.90811, 0.892864, 0.0945733, 0.341522, 0.837068, 0.400341, 0.823601, 0.341407, 0.993676, 0.773236, 0.300178, 0.396217, 0.944661, 0.55428, 0.282266, 0.028602, 0.684893, 0.781507, 0.124207, 0.724927, 0.028357, 0.251368, 0.536366, 0.573445, 0.308141, 0.440888, 0.650418, 0.651798, 0.0451078, 0.699159, 0.962452, 0.847135, 0.862229, 0.653956, 0.895986, 0.843736, 0.393805, 0.223378, 0.372848, 0.252978, 0.895763, 0.508724, 0.721902, 0.147755, 0.693241, 0.44614, 0.764728, 0.548472, 0.532634, 0.948304, 0.299262, 0.6434, 0.0420454, 0.996188, 0.583344, 0.485099, 0.948438, 0.243411, 0.819856, 0.369474, 0.655671, 0.0592489, 0.0543621, 0.993549, 0.311992, 0.671202, 0.212992, 0.131394, 0.533834, 0.335838, 0.679306, 0.523942, 0.074431, 0.886281, 0.770568, 0.654036, 0.933765, 0.937995, 0.372563, 0.841528, 0.188379, 0.228937, 0.828668, 0.39616, 0.413786, 0.697796, 0.618801, 0.0265031, 0.551609, 0.515108, 0.245815, 0.151793, 0.655353, 0.517303, 0.847651, 0.471491, 0.6685, 0.514759, 0.242699, 0.858416, 0.637236, 0.11225, 0.181223, 0.959921, 0.469161, 0.18669, 0.168928, 0.000697603, 0.376498, 0.65994, 0.409595, 0.564361, 0.602178, 0.70382, 0.877324, 0.551369, 0.178609, 0.978868, 0.502309, 0.0340832, 0.247358, 0.652003, 0.392224, 0.478071, 0.753149, 0.333342, 0.582696, 0.283487, 0.495504, 0.595418, 0.0904018, 0.585908, 0.0328579, 0.99048, 0.613487, 0.609382, 0.605551, 0.0569953, 0.189185, 0.429995, 0.955398, 0.505957, 0.73145, 0.61423, 0.588236, 0.58305, 0.0533574, 0.101198, 0.581949, 0.66963, 0.448777, 0.768895, 0.643032, 0.304342, 0.189424, 0.253976, 0.319645, 0.741379, 0.259629, 0.455083, 0.149009, 0.296796, 0.651832, 0.115124, 0.348416, 0.568379, 0.44429, 0.630183, 0.250472, 0.524372, 0.956228, 0.235359, 0.37149, 0.563646, 0.985041, 0.339083, 0.00591837, 0.336901, 0.13234, 0.629991, 0.741838, 0.179552, 0.857007, 0.825316, 0.142745, 0.0195872, 0.663252, 0.0308009, 0.95679, 0.486118, 0.162211, 0.941189, 0.215582, 0.773495, 0.452049, 0.0825298, 0.312025, 0.312332, 0.102718, 0.00433459, 0.0168344, 0.842451, 0.569562, 0.888201, 0.327072, 0.401624, 0.832171, 0.672292, 0.610303, 0.795345, 0.433221, 0.544712, 0.237545, 0.767694, 0.343271, 0.992533, 0.741302, 0.183655, 0.0421285, 0.928359, 0.25151, 0.834844, 0.461125, 0.866202, 0.914736, 0.675099, 0.631222, 0.665714, 0.573919, 0.915292, 0.798542, 0.177166, 0.514498, 0.882526, 0.101341, 0.634753, 0.843519, 0.570457, 0.226903, 0.716373, 0.040913, 0.630804, 0.494964, 0.601292, 0.846046, 0.0174172, 0.46755, 0.0332544, 0.110311, 0.84702, 0.849973, 0.856198, 0.785795, 0.354674, 0.782393, 0.930543, 0.0125036, 0.301069, 0.591966, 0.519331, 0.116692, 0.181888, 0.251217, 0.788606, 0.0137773, 0.255872, 0.591144, 0.862128, 0.249039, 0.0641142, 0.697651, 0.647981, 0.0663405, 0.0303, 0.108705, 0.925369, 0.332775, 0.0243789, 0.896468, 0.448633, 0.511638, 0.105575, 0.0886638, 0.0498761, 0.782248, 0.34918, 0.0128387, 0.160853, 0.735607, 0.279319, 0.0873188, 0.629893, 0.755911, 0.921293, 0.457801, 0.73937, 0.729324, 0.373976, 0.678172, 0.607887, 0.564579, 0.701282, 0.660622, 0.587753, 0.672583, 0.675394, 0.652153, 0.808644, 0.689712, 0.359753, 0.234674, 0.892729, 0.913404, 0.499294, 0.596976, 0.360313, 0.201506, 0.462168, 0.38058, 0.482462, 0.522578, 0.584784, 0.982469, 0.523538, 0.744513, 0.483653, 0.114149, 0.693467, 0.457098, 0.38871, 0.37314, 0.705251, 0.94976, 0.434253, 0.592257, 0.335648, 0.240914, 0.682171, 0.140619, 0.782256, 0.502838, 0.379335, 0.884377, 0.00497879, 0.632287, 0.242756, 0.991024, 0.873668, 0.321323, 0.201198, 0.00319217, 0.152522, 0.500503, 0.0321389, 0.360202, 0.394758, 0.56698, 0.359528, 0.381789, 0.315304, 0.960853, 0.903119, 0.353078, 0.15645, 0.213577, 0.0903123, 0.826641, 0.605427, 0.746317, 0.322645, 0.868287, 0.151039, 0.254095, 0.182594, 0.364951, 0.737455, 0.691678, 0.898399, 0.000732542, 0.248012, 0.349148, 0.569901, 0.452226, 0.515371, 0.302485, 0.347357, 0.123955, 0.469894, 0.330666, 0.663855, 0.143615, 0.261839, 0.803338, 0.868671, 0.682263, 0.246076, 0.113804, 0.708683, 0.449585, 0.482124, 0.365102, 0.177578, 0.731094, 0.600148, 0.611593, 0.205905, 0.882991, 0.887807, 0.922277, 0.224486, 0.160939, 0.0871117, 0.69155, 0.0134491, 0.0853617, 0.196541, 0.206459, 0.947997, 0.333451, 0.389338, 0.0890182, 0.299461, 0.731301, 0.630373, 0.185242, 0.441689, 0.180832, 0.560951, 0.38455, 0.623194, 0.580431, 0.265926, 0.599774, 0.534595, 0.679334, 0.835523, 0.221747, 0.626694, 0.80204, 0.726532, 0.742793, 0.791996, 0.909271, 0.785695, 0.801973, 0.289567, 0.416437, 0.873448, 0.0779163, 0.646142, 0.863765, 0.973106, 0.481713, 0.306551, 0.697726, 0.0755091, 0.298716, 0.0598534, 0.702293, 0.211307, 0.915152, 0.310151, 0.262061, 0.597905, 0.155325, 0.401069, 0.387548, 0.158868, 0.12185, 0.230751, 0.323125, 0.46201, 0.382306, 0.822698, 0.502208, 0.875634, 0.546919, 0.858633, 0.104027, 0.277316, 0.351157, 0.769473, 0.592918, 0.272187, 0.38216, 0.838504, 0.361207, 0.684142, 0.971113, 0.602431, 0.00208178, 0.676511, 0.919325, 0.164403, 0.143945, 0.180004, 0.58075, 0.973844, 0.741869, 0.999857, 0.0169106, 0.671591, 0.537973, 0.171692, 0.261065, 0.924552, 0.368675, 0.00814049, 0.233023, 0.540569, 0.505196, 0.327395, 0.888035, 0.22145, 0.722096, 0.381902, 0.0368577, 0.150889, 0.724966, 0.396629, 0.799571, 0.094748, 0.552577, 0.252088, 0.204257, 0.809496, 0.330689, 0.98061, 0.0898285, 0.303362, 0.347282, 0.241588, 0.623002, 0.470105, 0.796742, 0.495913, 0.931737, 0.32535, 0.0388156, 0.97914, 0.909124, 0.649404, 0.767606, 0.753396, 0.35215, 0.941861, 0.93643, 0.433868, 0.20656, 0.120542, 0.221083, 0.41337, 0.0942159, 0.961272, 0.230308, 0.957303, 0.900571, 0.866549, 0.499876, 0.343048, 0.555759, 0.386027, 0.926825, 0.0727304, 0.386093, 0.647028, 0.712647, 0.727604, 0.690124, 0.108712, 0.178468, 0.0411527, 0.724617, 0.559902, 0.062367, 0.93262, 0.528495, 0.708706, 0.75693, 0.978897, 0.830077, 0.0205915, 0.884267, 0.171194, 0.444059, 0.509467, 0.164957, 0.758619, 0.412541, 0.340623, 0.395828, 0.613924, 0.670326, 0.49157, 0.562591, 0.889637, 0.774551, 0.238951, 0.689965, 0.403226, 0.0101909, 0.63063, 0.694367, 0.715743, 0.452086, 0.433565, 0.526304, 0.749933, 0.397791, 0.920038, 0.309825, 0.405743, 0.95665, 0.435092, 0.239381, 0.58089, 0.89111, 0.769719, 0.684106, 0.333506, 0.0439281, 0.660142, 0.661301, 0.49023, 0.079462, 0.691252, 0.623664, 0.346586, 0.967734, 0.330367, 0.475246, 0.707362, 0.295545, 0.774153, 0.639437, 0.686184, 0.45172, 0.564618, 0.356746, 0.400369, 0.409768, 0.147848, 0.389762, 0.647711, 0.0625404, 0.69911, 0.776906, 0.946781, 0.126086, 0.35563, 0.682276, 0.156443, 0.816989, 0.489514, 0.337157, 0.237935, 0.262935, 0.573797, 0.605099, 0.996849, 0.157335, 0.640406, 0.201796, 0.258889, 0.169679, 0.372656, 0.890571, 0.141793, 0.952647, 0.19912, 0.0986685, 0.837219, 0.231743, 0.166329, 0.358461, 0.16411, 0.304759, 0.0675818, 0.0716336, 0.70638, 0.756794, 0.520327, 0.508684, 0.246657, 0.666337, 0.136267, 0.29245, 0.433688, 0.882437, 0.431607, 0.468901, 0.841016, 0.0502369, 0.285901, 0.813383, 0.514364, 0.433242, 0.146407, 0.940796, 0.171346, 0.221461, 0.867377, 0.216934, 0.552228, 0.45611, 0.917649, 0.321481, 0.61029, 0.0959728, 0.436011, 0.152552, 0.526612, 0.978915, 0.0586536, 0.521181, 0.757215, 0.34051, 0.141117, 0.693102, 0.434253, 0.459614, 0.557028, 0.00349169, 0.728583, 0.442637, 0.576415, 0.185731, 0.543305, 0.527449, 0.478752, 0.387701, 0.0757474, 0.467792, 0.111125, 0.892577, 0.265495, 0.185827, 0.541454, 0.439251, 0.728464, 0.120708, 0.122473, 0.130466, 0.875577, 0.0863882, 0.834825, 0.649316, 0.334043, 0.909384, 0.341323, 0.0491015, 0.815392, 0.0309161, 0.587517, 0.631605, 0.972673, 0.0821971, 0.127742, 0.354403, 0.448749, 0.492077, 0.133726, 0.344919, 0.451413, 0.639855, 0.211991, 0.738967, 0.556907, 0.526736, 0.507465, 0.303413, 0.651308, 0.367555, 0.643425, 0.86316, 0.294116, 0.919841, 0.849688, 0.121847, 0.696514, 0.778465, 0.451666, 0.307937, 0.47853, 0.564549, 0.847828, 0.806186, 0.596311, 0.592267, 0.779436, 0.0840583, 0.785821, 0.171637, 0.0334959, 0.429124, 0.737065, 0.50365, 0.745145, 0.743668, 0.982665, 0.911391, 0.671417, 0.626701, 0.291563, 0.517938, 0.516245, 0.0801527, 0.567097, 0.367505, 0.922839, 0.439014, 0.53182, 0.578468, 0.149689, 0.669688, 0.97581, 0.715261, 0.584185, 0.148229, 0.199314, 0.185977, 0.730802, 0.104037, 0.639689, 0.739299, 0.198473, 0.767699, 0.853707, 0.19065, 0.529447, 0.766285, 0.66186, 0.921171, 0.549118, 0.892584, 0.840488, 0.178862, 0.927226, 0.890344, 0.62377, 0.86714, 0.460387, 0.392646, 0.471308, 0.800714, 0.782617, 0.634291, 0.179337, 0.407751, 0.252144, 0.82712, 0.632213, 0.0723105, 0.18076, 0.68329, 0.693678, 0.313102, 0.156329, 0.394112, 0.662618, 0.508978, 0.897664, 0.999901, 0.791451, 0.581513, 0.790202, 0.907885, 0.248239, 0.6598, 0.606133, 0.675442, 0.667401, 0.151201, 0.155847, 0.0127462, 0.745108, 0.0528394, 0.713167, 0.471145, 0.12397, 0.884378, 0.083084, 0.0953668, 0.606258, 0.836271, 0.148819, 0.57087, 0.0425285, 0.166045, 0.183413, 0.700694, 0.623195, 0.757091, 0.440645, 0.0596429, 0.249881, 0.602575, 0.950073, 0.451812, 0.164828, 0.0182645, 0.11402, 0.975934, 0.426403, 0.715862, 0.805848, 0.262033, 0.785654, 0.239822, 0.678738, 0.866985, 0.08376, 0.571485, 0.0679907, 0.437592, 0.356353, 0.821237, 0.354842, 0.853205, 0.872567, 0.184443, 0.127188, 0.853291, 0.18183, 0.952172, 0.212465, 0.975464, 0.304758, 0.5734, 0.170927, 0.296267, 0.0125493, 0.291528, 0.00192874, 0.3964, 0.957282, 0.511497, 0.233394, 0.623138, 0.859947, 0.080578, 0.909789, 0.846534, 0.414356, 0.403885, 0.0692069, 0.920154, 0.0644305, 0.977542, 0.585973, 0.337576, 0.776913, 0.622741, 0.199003, 0.712303, 0.640121, 0.101498, 0.884389, 0.228357, 0.468964, 0.155111, 0.440082, 0.488965, 0.830177, 0.454889, 0.209705, 0.677652, 0.411443, 0.440909, 0.741252, 0.010858, 0.75862, 0.0255627, 0.106067, 0.50874, 0.527138, 0.759874, 0.287933, 0.166317, 0.961957, 0.892252, 0.397093, 0.885714, 0.396317, 0.633364, 0.560446, 0.514592, 0.641407, 0.347794, 0.162266, 0.758312, 0.0736515, 0.198958, 0.306381, 0.346772, 0.117421, 0.0688292, 0.227756, 0.374787, 0.439756, 0.0762597, 0.140795, 0.746462, 0.806024, 0.178773, 0.293483, 0.397699, 0.460144, 0.135792, 0.614245, 0.587954, 0.420387, 0.699406, 0.587129, 0.283204, 0.281297, 0.795374, 0.114985, 0.745571, 0.352045, 0.0611762, 0.593975, 0.192326, 0.113619, 0.867458, 0.567034, 0.280148, 0.41742, 0.140169, 0.783424, 0.12378, 0.0268995, 0.67683, 0.607597, 0.102353, 0.423897, 0.43861, 0.977933, 0.0404341, 0.0481451, 0.542879, 0.275053, 0.832638, 0.513499, 0.244118, 0.914467, 0.709417, 0.651207, 0.797396, 0.162939, 0.733169, 0.481811, 0.466419, 0.885944, 0.988476, 0.93639, 0.394164, 0.635034, 0.755194, 0.854726, 0.301369, 0.124011, 0.189902, 0.824301, 0.451238, 0.890921, 0.400186, 0.707203, 0.401668, 0.282433, 0.577071, 0.534646, 0.957866, 0.826413, 0.426026, 0.0910196, 0.588473, 0.0319855, 0.474734, 0.78612, 0.524206, 0.350851, 0.270021, 0.978624, 0.523786, 0.240499, 0.260164, 0.789584, 0.65675, 0.201923, 0.948229, 0.649666, 0.927211, 0.040211, 0.41337, 0.77551, 0.571141, 0.686762, 0.156277, 0.226256, 0.933085, 0.706712, 0.639384, 0.627922, 0.526238, 0.927197, 0.225351, 0.103548, 0.549622, 0.292483, 0.626381, 0.803683, 0.226612, 0.473502, 0.525893, 0.320801, 0.581936, 0.0611407, 0.447279, 0.233025, 0.821232, 0.795829, 0.286259, 0.341609, 0.144731, 0.110285, 0.140597, 0.0625647, 0.960759, 0.162913, 0.940253, 0.95897, 0.802897, 0.738006, 0.502822, 0.960198, 0.585094, 0.971332, 0.975069, 0.319401, 0.97369, 0.849848, 0.823669, 0.252366, 0.175272, 0.568308, 0.0696765, 0.0346971, 0.734827, 0.374973, 0.455794, 0.168271, 0.384961, 0.0177511, 0.609373, 0.909626, 0.14768, 0.888394, 0.359283, 0.319978, 0.948521, 0.271924, 0.27314, 0.600558, 0.242389, 0.0542751, 0.0572893, 0.683381, 0.810487, 0.425903, 0.441715, 0.726695, 0.281386, 0.821817, 0.40055, 0.715599, 0.857166, 0.392479, 0.730487, 0.968301, 0.491452, 0.316442, 0.494362, 0.0133906, 0.958286, 0.809101, 0.181718, 0.0236134, 0.281216, 0.38442, 0.578918, 0.636792, 0.0555437, 0.767418, 0.575868, 0.980857, 0.368326, 0.784954, 0.159947, 0.545253, 0.635897, 0.412699, 0.804465, 0.309414, 0.769159, 0.95191, 0.496597, 0.145394, 0.223412, 0.310794, 0.0891287, 0.556778, 0.562303, 0.762924, 0.774332, 0.90256, 0.880377, 0.237701, 0.833076, 0.464439, 0.961118, 0.315651, 0.248011, 0.197734, 0.743461, 0.894968, 0.888755, 0.191371, 0.0606955, 0.779843, 0.67044, 0.000701003, 0.847468, 0.110179, 0.345346, 0.596703, 0.366331, 0.491411, 0.43866, 0.88716, 0.942445, 0.341056, 0.374603, 0.189615, 0.734346, 0.477594, 0.306855, 0.314374, 0.905783, 0.545652, 0.525045, 0.897234, 0.137442, 0.0158416, 0.815698, 0.516642, 0.744205, 0.750442, 0.409368, 0.748892, 0.0140665, 0.0825914, 0.450686, 0.518803, 0.0387293, 0.995793, 0.677971, 0.184414, 0.490881, 0.564195, 0.130463, 0.274728, 0.0517014, 0.795809, 0.496882, 0.0917907, 0.961887, 0.568578, 0.0785582, 0.10867, 0.660636, 0.919073, 0.0513685, 0.197261, 0.995502, 0.211636, 0.42973, 0.178131, 0.943105, 0.241031, 0.740778, 0.736333, 0.0758931, 0.471215, 0.691511, 0.617629, 0.982214, 0.388555, 0.372131, 0.402224, 0.169748, 0.996091, 0.854671, 0.0438401, 0.344562, 0.42399, 0.170027, 0.853375, 0.0901204, 0.0216403, 0.237151, 0.119388, 0.597195, 0.312474, 0.670449, 0.92445, 0.661728, 0.530687, 0.865478, 0.848771, 0.933046, 0.610892, 0.649236, 0.254884, 0.0716313, 0.312273, 0.0567216, 0.616856, 0.248198, 0.549667, 0.225755, 0.725631, 0.397707, 0.622773, 0.362331, 0.68781, 0.0602003, 0.826523, 0.724918, 0.734515, 0.391861, 0.733534, 0.178399, 0.564966, 0.591202, 0.0472756, 0.569476, 0.301053, 0.445811, 0.835684, 0.193328, 0.56886, 0.983536, 0.995492, 0.931116, 0.591528, 0.292752, 0.514855, 0.600805, 0.467793, 0.241835, 0.764401, 0.563282, 0.863718, 0.144303, 0.231504, 0.00520572, 0.278638, 0.19954, 0.379569, 0.0475114, 0.104026, 0.763559, 0.846914, 0.85017, 0.14415, 0.750602, 0.272317, 0.254685, 0.167263, 0.131831, 0.663505, 0.36003, 0.334448, 0.362862, 0.60826, 0.057726, 0.0704663, 0.941601, 0.341211, 0.54861, 0.232092, 0.661149, 0.605109, 0.339767, 0.535967, 0.961068, 0.175784, 0.992689, 0.900477, 0.284569, 0.119902, 0.354833, 0.176419, 0.084993, 0.230209, 0.934694, 0.0071083, 0.257565, 0.961404, 0.451827, 0.673569, 0.190417, 0.149317, 0.592344, 0.45611, 0.609225, 0.260743, 0.753217, 0.776916, 0.722043, 0.73019, 0.281829, 0.82717, 0.575628, 0.213365, 0.00978711, 0.378466, 0.349125, 0.244571, 0.471582, 0.803671, 0.997812, 0.0521185, 0.612033, 0.449384, 0.512475, 0.722084, 0.0717956, 0.458755, 0.760821, 0.844698, 0.374668, 0.400767, 0.709865, 0.113621, 0.714132, 0.970394, 0.707974, 0.883892, 0.290158, 0.0600632, 0.639521, 0.0197071, 0.0703243, 0.540964, 0.490692, 0.540472, 0.4527, 0.43367, 0.470396, 0.639226, 0.454894, 0.161796, 0.283119, 0.389119, 0.99098, 0.354374, 0.306925, 0.571848, 0.987829, 0.654278, 0.942796, 0.626379, 0.425776, 0.10538, 0.235674, 0.302389, 0.38002, 0.788549, 0.135715, 0.919757, 0.288126, 0.499033, 0.454735, 0.314993, 0.564696, 0.755851, 0.311844, 0.88601, 0.624923, 0.597122, 0.6463, 0.599467, 0.618822, 0.0339805, 0.535648, 0.505867, 0.0283788, 0.927671, 0.32945, 0.349241, 0.118857, 0.802099, 0.479279, 0.343102, 0.0556478, 0.0645085, 0.138695, 0.501754, 0.601575, 0.465747, 0.645858, 0.0488047, 0.567975, 0.634429, 0.095771, 0.263161, 0.125117, 0.896023, 0.416766, 0.0760043, 0.904781, 0.503658, 0.596885, 0.917895, 0.446839, 0.845408, 0.347075, 0.726262, 0.0325798, 0.596209, 0.67089, 0.420953, 0.364253, 0.566215, 0.0240224, 0.299557, 0.755112, 0.518478, 0.172691, 0.440801, 0.993724, 0.403926, 0.686368, 0.0119942, 0.0752334, 0.569332, 0.586567, 0.84281, 0.690945, 0.964742, 0.601104, 0.734396, 0.548406, 0.764456, 0.805043, 0.51092, 0.760391, 0.173881, 0.0235308, 0.356031, 0.53105, 0.086914, 0.664032, 0.571966, 0.92573, 0.59094, 0.927327, 0.692028, 0.842902, 0.67167, 0.276918, 0.467458, 0.752591, 0.9499, 0.467204, 0.447911, 0.474744, 0.388578, 0.557763, 0.883731, 0.794943, 0.429311, 0.63033, 0.709716, 0.0540243, 0.458512, 0.54981, 0.388782, 0.634203, 0.68688, 0.989504, 0.904139, 0.661675, 0.749267, 0.372069, 0.0318962, 0.4609, 0.517865, 0.886023, 0.787396, 0.0912821, 0.229197, 0.2815, 0.770678, 0.3427, 0.390274, 0.810432, 0.265945, 0.837044, 0.366723, 0.549445, 0.909393, 0.654305, 0.68561, 0.582384, 0.0771761, 0.68467, 0.246603, 0.516234, 0.679899, 0.0538224, 0.35085, 0.541939, 0.257065, 0.523613, 0.750268, 0.281682, 0.761999, 0.187258, 0.935161, 0.726177, 0.983635, 0.213881, 0.837402, 0.0311317, 0.713501, 0.0597453, 0.069166, 0.616787, 0.237867, 0.898007, 0.291914, 0.639359, 0.344517, 0.662031, 0.990589, 0.746652, 0.299035, 0.282434, 0.592909, 0.269854, 0.598541, 0.60132, 0.93501, 0.279348, 0.952177, 0.3203, 0.237311, 0.449025, 0.112849, 0.347608, 0.603105, 0.0826972, 0.0645104, 0.654211, 0.787298, 0.183199, 0.136849, 0.421642, 0.457025, 0.177792, 0.292448, 0.622044, 0.450702, 0.622207, 0.74748, 0.111626, 0.540305, 0.357124, 0.112576, 0.0920041, 0.901445, 0.591537, 0.120162, 0.277792, 0.85936, 0.644468, 0.964015, 0.121913, 0.46483, 0.90891, 0.317464, 0.450741, 0.135112, 0.64213, 0.491018, 0.896948, 0.0406019, 0.380772, 0.500875, 0.40253, 0.150461, 0.526617, 0.431422, 0.953507, 0.872597, 0.60421, 0.581048, 0.649227, 0.351248, 0.0962856, 0.527706, 0.62949, 0.297496, 0.424442, 0.211807, 0.191928, 0.978057, 0.659203, 0.424782, 0.321244, 0.309401, 0.155644, 0.018394, 0.981963, 0.790722, 0.315559, 0.132894, 0.540455, 0.673194, 0.166135, 0.963324, 0.991482, 0.606148, 0.641684, 0.321732, 0.357962, 0.419031, 0.524566, 0.121163, 0.167526, 0.419093, 0.773295, 0.591982, 0.177544, 0.221321, 0.79453, 0.187352, 0.945812, 0.230775, 0.759209, 0.223633, 0.782123, 0.762374, 0.554152, 0.758007, 0.646692, 0.164805, 0.439458, 0.668481, 0.394392, 0.310737, 0.520953, 0.23468, 0.329919, 0.42598, 0.826062, 0.677959, 0.270117, 0.964114, 0.835354, 0.184171, 0.94592, 0.538805, 0.21293, 0.674282, 0.613245, 0.627513, 0.657674, 0.272839, 0.0842785, 0.950948, 0.373451, 0.439554, 0.159792, 0.0401004, 0.0151278, 0.903084, 0.297656, 0.379113, 0.211713, 0.0208064, 0.14493, 0.347375, 0.385924, 0.00268695, 0.12542, 0.739048, 0.676817, 0.736418, 0.227088, 0.412102, 0.198277, 0.410965, 0.91409, 0.717919, 0.215226, 0.667909, 0.442317, 0.10207, 0.381269, 0.427142, 0.333933, 0.245708, 0.329177, 0.461323, 0.664618, 0.0679301, 0.544018, 0.674657, 0.178317, 0.459781, 0.89711, 0.276327, 0.784713, 0.27331, 0.487891, 0.180568, 0.96831, 0.323182, 0.0866663, 0.512143, 0.919757, 0.393651, 0.789092, 0.29094, 0.188134, 0.560856, 0.955586, 0.0718635, 0.0269404, 0.203678, 0.983172, 0.51758, 0.968003, 0.331021, 0.830203, 0.0181279, 0.0141556, 0.697402, 0.0525922, 0.514023, 0.508186, 0.256969, 0.933136, 0.200218, 0.0110242, 0.860594, 0.0303397, 0.157889, 0.392822, 0.374512, 0.400553, 0.270855, 0.568008, 0.558921, 0.956101, 0.744385, 0.719175, 0.916029, 0.884867, 0.247502, 0.073517, 0.780392, 0.279199, 0.827558, 0.339382, 0.584516, 0.79727, 0.0643695, 0.0317724, 0.435497, 0.180505, 0.76243, 0.195217, 0.82011, 0.101829, 0.0997807, 0.953348, 0.15367, 0.104359, 0.487753, 0.343762, 0.654727, 0.132477, 0.999045, 0.406191, 0.598411, 0.860789, 0.306506, 0.138799, 0.339544, 0.527326, 0.564002, 0.97529, 0.0840793, 0.471393, 0.818627, 0.0416602, 0.460369, 0.651059, 0.369103, 0.943312, 0.53025, 0.120124, 0.658747, 0.284755, 0.0118443, 0.647365, 0.619388, 0.0555024, 0.031167, 0.836224, 0.107065, 0.655598, 0.0652551, 0.949251, 0.0430759, 0.348073, 0.468649, 0.282215, 0.823767, 0.621657, 0.301013, 0.447086, 0.569542, 0.477536, 0.276875, 0.473196, 0.646234, 0.140407, 0.661602, 0.48413, 0.640481, 0.1237, 0.807747, 0.34507, 0.155209, 0.724469, 0.129897, 0.261054, 0.797226, 0.141759, 0.660291, 0.178049, 0.635802, 0.642498, 0.335264, 0.0986802, 0.560285, 0.258029, 0.408848, 0.963392, 0.127648, 0.522938, 0.343361, 0.0591521, 0.538662, 0.723705, 0.143253, 0.406725, 0.762505, 0.858145, 0.652872, 0.0751902, 0.474162, 0.456277, 0.420937, 0.770795, 0.574915, 0.536308, 0.594785, 0.40898, 0.288524, 0.871027, 0.942149, 0.359192, 0.677768, 0.464186, 0.863689, 0.403723, 0.152206, 0.0318572, 0.206376, 0.383112, 0.939003, 0.279417, 0.864818, 0.921036, 0.530947, 0.255451, 0.0888463, 0.990938, 0.118905, 0.692524, 0.256951, 0.289297, 0.747234, 0.592557, 0.135735, 0.703777, 0.207975, 0.274076, 0.793419, 0.416538, 0.679037, 0.569987, 0.425747, 0.448826, 0.807602, 0.338074, 0.925081, 0.120731, 0.206021, 0.102171, 0.131164, 0.779013, 0.883488, 0.326324, 0.21583, 0.147292, 0.430501, 0.599133, 0.772507, 0.327405, 0.226773, 0.384921, 0.881793, 0.238704, 0.345292, 0.255344, 0.91225, 0.181126, 0.550924, 0.132555, 0.510167, 0.95588, 0.940686, 0.436938, 0.789056, 0.0285278, 0.966325, 0.352782, 0.213606, 0.282055, 0.961657, 0.0717836, 0.150889, 0.0156478, 0.382351, 0.732958, 0.973349, 0.805664, 0.566904, 0.594289, 0.286691, 0.700367, 0.182755, 0.647849, 0.162256, 0.478529, 0.963923, 0.711276, 0.863389, 0.882019, 0.820617, 0.0506087, 0.794141, 0.714298, 0.573767, 0.567374, 0.30751, 0.807773, 0.192612, 0.906685, 0.711471, 0.35731, 0.619318, 0.732762, 0.400525, 0.828465, 0.862046, 0.53438, 0.819672, 0.937958, 0.360399, 0.997121, 0.717269, 0.685371, 0.47348, 0.806581, 0.727519, 0.315085, 0.601397, 0.269334, 0.568207, 0.027692, 0.703402, 0.170218, 0.500086, 0.607612, 0.573989, 0.0406072, 0.183721, 0.861845, 0.70674, 0.117189, 0.176553, 0.317406, 0.904584, 0.333126, 0.164825, 0.313377, 0.37939, 0.118558, 0.436089, 0.251973, 0.253981, 0.108738, 0.219032, 0.716901, 0.172093, 0.616285, 0.264775, 0.23992, 0.896254, 0.295272, 0.791905, 0.656538, 0.0384521, 0.196358, 0.736726, 0.415566, 0.240984, 0.70861, 0.610987, 0.733977, 0.124111, 0.0136321, 0.919147, 0.0704665, 0.843662, 0.964286, 0.506136, 0.692433, 0.935884, 0.990476, 0.22058, 0.875116, 0.897394, 0.111069, 0.534619, 0.581804, 0.846851, 0.611967, 0.499796, 0.429545, 0.798909, 0.315004, 0.942182, 0.428862, 0.614155, 0.966451, 0.974008, 0.441044, 0.859631, 0.444931, 0.918694, 0.247554, 0.201709, 0.925149, 0.778544, 0.42768, 0.613957, 0.688951, 0.873456, 0.504223, 0.845928, 0.986889, 0.539666, 0.656433, 0.749198, 0.584904, 0.40616, 0.652864, 0.129738, 0.997156, 0.548049, 0.866048, 0.0787458, 0.0794804, 0.728205, 0.884015, 0.212964, 0.0511247, 0.207538, 0.336783, 0.421898, 0.793931, 0.6185, 0.676942, 0.727137, 0.832176, 0.960208, 0.228816, 0.578622, 0.0726547, 0.863936, 0.728756, 0.895077, 0.713311, 0.109769, 0.704642, 0.95281, 0.839504, 0.945565, 0.190666, 0.933363, 0.632555, 0.550899, 0.802728, 0.057105, 0.894612, 0.38568, 0.135467, 0.0176021, 0.327382, 0.358374, 0.447524, 0.228588, 0.811691, 0.661628, 0.546452, 0.350899, 0.00507256, 0.471622, 0.907124, 0.628432, 0.96551, 0.190372, 0.671076, 0.714566, 0.4601, 0.701459, 0.927465, 0.628752, 0.142717, 0.412611, 0.730583, 0.343111, 0.34992, 0.440681, 0.642637, 0.222177, 0.431251, 0.50514, 0.125927, 0.754476, 0.00296051, 0.568277, 0.900355, 0.326807, 0.138109, 0.836854, 0.667035, 0.540292, 0.112458, 0.713526, 0.800975, 0.337264, 0.29358, 0.593161, 0.265627, 0.0889931, 0.857896, 0.330727, 0.841462, 0.908689, 0.60503, 0.477598, 0.298034, 0.911471, 0.608683, 0.398816, 0.983949, 0.240758, 0.606816, 0.602618, 0.160728, 0.352549, 0.718983, 0.462568, 0.805229, 0.252996, 0.73863, 0.000422414, 0.812615, 0.724826, 0.443087, 0.290496, 0.393446, 0.992466, 0.0837757, 0.00583894, 0.930767, 0.536693, 0.811747, 0.0511222, 0.708225, 0.901528, 0.2509, 0.444992, 0.397405, 0.542782, 0.122836, 0.861212, 0.249062, 0.174464, 0.050134, 0.378451, 0.571994, 0.881506, 0.0499796, 0.787135, 0.22121, 0.645498, 0.436943, 0.787478, 0.460505, 0.68293, 0.991135, 0.88287, 0.722825, 0.796469, 0.5201, 0.956356, 0.67584, 0.693191, 0.730392, 0.121242, 0.709526, 0.544418, 0.262852, 0.487887, 0.514067, 0.0911956, 0.0860523, 0.474676, 0.585426, 0.310218, 0.886219, 0.290739, 0.0282541, 0.656092, 0.928931, 0.941969, 0.10195, 0.818213, 0.781855, 0.433706, 0.311066, 0.339732, 0.496567, 0.65566, 0.485256, 0.497272, 0.364859, 0.126097, 0.0740863, 0.405792, 0.0969492, 0.4864, 0.210317, 0.711933, 0.0635027, 0.0361123, 0.493013, 0.946083, 0.0066597, 0.546463, 0.0163349, 0.0228225, 0.977677, 0.0772557, 0.306093, 0.310278, 0.665144, 0.383851, 0.330056, 0.883021, 0.689747, 0.546534, 0.0734483, 0.411925, 0.797349, 0.228309, 0.233533, 0.796033, 0.0030193, 0.513364, 0.368626, 0.930374, 0.725822, 0.0219896, 0.299541, 0.140862, 0.315275, 0.783451, 0.944752, 0.606796, 0.873046, 0.326616, 0.371542, 0.855865, 0.425102, 0.861019, 0.352546, 0.525911, 0.751078, 0.668595, 0.953006, 0.759148, 0.366194, 0.28042, 0.972413, 0.168339, 0.757616, 0.166174, 0.777926, 0.093088, 0.329875, 0.255593, 0.359008, 0.111147, 0.542383, 0.859861, 0.772084, 0.377405, 0.117666, 0.391373, 0.132639, 0.854042, 0.286216, 0.35719, 0.798284, 0.360051, 0.795723, 0.465997, 0.561341, 0.460214, 0.769956, 0.749655, 0.152443, 0.183006, 0.242389, 0.0737898, 0.68665, 0.192032, 0.263023, 0.616373, 0.857243, 0.640726, 0.0621201, 0.162099, 0.492626, 0.53992, 0.299509, 0.154796, 0.779567, 0.290502, 0.00579967, 0.124107, 0.472051, 0.000434841, 0.235547, 0.712911, 0.488378, 0.26475, 0.814806, 0.0754994, 0.406514, 0.683893, 0.548816, 0.387705, 0.331393, 0.411969, 0.0160922, 0.0911969, 0.815596, 0.432159, 0.661646, 0.228131, 0.16644, 0.540622, 0.806374, 0.91399, 0.0151226, 0.327789, 0.486473, 0.0520317, 0.489694, 0.369283, 0.577062, 0.590977, 0.745221, 0.882706, 0.723975, 0.866051, 0.766082, 0.480659, 0.737826, 0.189252, 0.618888, 0.359069, 0.790591, 0.406381, 0.910825, 0.252672, 0.731272, 0.13744, 0.412974, 0.733391, 0.347641, 0.871649, 0.626397, 0.251238, 0.814955, 0.884079, 0.954014, 0.38571, 0.0546944, 0.098018, 0.349328, 0.865735, 0.68303, 0.25361, 0.50894, 0.152982, 0.42769, 0.476476, 0.411445, 0.739538, 0.20844, 0.908736, 0.946669, 0.957216, 0.830711, 0.285214, 0.430605, 0.123387, 0.366716, 0.0966705, 0.171379, 0.140106, 0.00523692, 0.483994, 0.836323, 0.000203898, 0.847099, 0.199114, 0.0786781, 0.498113, 0.472991, 0.430339, 0.717644, 0.771445, 0.933048, 0.650317, 0.592575, 0.69774, 0.841689, 0.470272, 0.255145, 0.642192, 0.683545, 0.129527, 0.7225, 0.143363, 0.700158, 0.573115, 0.496788, 0.672769, 0.528652, 0.516476, 0.797372, 0.205896, 0.624819, 0.940306, 0.799173, 0.89588, 0.981444, 0.294351, 0.285886, 0.871644, 0.728298, 0.525132, 0.696356, 0.328752, 0.0683865, 0.107999, 0.448041, 0.0561753, 0.256848, 0.845314, 0.000561138, 0.024717, 0.214498, 0.0110802, 0.842329, 0.191831, 0.55362, 0.577487, 0.47658, 0.926408, 0.825722, 0.734621, 0.517285, 0.18766, 0.531805, 0.932464, 0.867263, 0.870883, 0.0587472, 0.339046, 0.788978, 0.519536, 0.980831, 0.917215, 0.314639, 0.345936, 0.737894, 0.163836, 0.911963, 0.306258, 0.853049, 0.819763, 0.834382, 0.118071, 0.0517382, 0.741186, 0.218079, 0.718497, 0.216362, 0.358845, 0.0262473, 0.573432, 0.877798, 0.434158, 0.689208, 0.28387, 0.631236, 0.0276151, 0.569504, 0.451447, 0.569556, 0.142046, 0.125314, 0.685423, 0.874892, 0.661033, 0.0480938, 0.678272, 0.225373, 0.420258, 0.940519, 0.991653, 0.22264, 0.0383297, 0.087134, 0.72526, 0.221824, 0.0761745, 0.109705, 0.455931, 0.181691, 0.958014, 0.829454, 0.840142, 0.822616, 0.41962, 0.278158, 0.911439, 0.83333, 0.528914, 0.972686, 0.057116, 0.885617, 0.426003, 0.0722767, 0.205997, 0.460486, 0.750409, 0.467783, 0.622696, 0.218373, 0.443269, 0.325559, 0.152971, 0.971439, 0.109743, 0.14042, 0.370876, 0.936533, 0.572726, 0.981721, 0.710409, 0.666631, 0.783337, 0.279378, 0.82056, 0.5105, 0.383959, 0.929276, 0.158211, 0.0924422, 0.448461, 0.995812, 0.199213, 0.340225, 0.458053, 0.434526, 0.143288, 0.0727889, 0.601088, 0.174134, 0.742817, 0.25083, 0.148017, 0.816632, 0.283205, 0.684135, 0.708765, 0.656708, 0.231398, 0.101216, 0.948646, 0.974955, 0.13018, 0.249274, 0.251885, 0.4138, 0.0993538, 0.870605, 0.607726, 0.53469, 0.425744, 0.534512, 0.422424, 0.707954, 0.806989, 0.833396, 0.612742, 0.129842, 0.818643, 0.784665, 0.328811, 0.254497, 0.425704, 0.198761, 0.00636503, 0.331532, 0.0979688, 0.217644, 0.631499, 0.153504, 0.47421, 0.000996381, 0.643052, 0.421039, 0.886781, 0.469619, 0.599094, 0.519344, 0.829217, 0.295929, 0.459046, 0.929458, 0.482433, 0.454514, 0.781803, 0.701602, 0.400688, 0.289321, 0.834496, 0.563524, 0.858043, 0.797295, 0.185198, 0.002268, 0.792045, 0.137388, 0.201848, 0.206613, 0.576547, 0.281215, 0.969594, 0.729729, 0.811817, 0.368265, 0.305238, 0.140258, 0.817175, 0.580202, 0.146454, 0.0976395, 0.0116953, 0.692592, 0.0456688, 0.787763, 0.911869, 0.190774, 0.0421205, 0.742239, 0.215383, 0.634856, 0.217612, 0.976046, 0.629438, 0.575507, 0.991286, 0.739136, 0.515219, 0.152072, 0.06971, 0.671442, 0.550124, 0.315606, 0.669713, 0.579424, 0.0432335, 0.220854, 0.386082, 0.900995, 0.261122, 0.430265, 0.161644, 0.129911, 0.724532, 0.232359, 0.169264, 0.17024, 0.300017, 0.0453636, 0.588913, 0.901443, 0.697316, 0.847893, 0.0753857, 0.427729, 0.968554, 0.813486, 0.86194, 0.752806, 0.900089, 0.857901, 0.486216, 0.906749, 0.107639, 0.783365, 0.542632, 0.811905, 0.359218, 0.896544, 0.966524, 0.161207, 0.205371, 0.821549, 0.521102, 0.830914, 0.40505, 0.522809, 0.126623, 0.604354, 0.045568, 0.210009, 0.580072, 0.0603523, 0.0196878, 0.248134, 0.901776, 0.80374, 0.344628, 0.926973, 0.0793407, 0.476877, 0.909748, 0.574286, 0.192875, 0.89499, 0.549265, 0.122798, 0.202247, 0.754604, 0.627077, 0.489349, 0.471488, 0.362998, 0.510526, 0.285607, 0.292884, 0.857883, 0.818358, 0.998242, 0.986864, 0.393744, 0.701509, 0.308962, 0.787377, 0.310688, 0.551803, 0.439958, 0.427111, 0.430914, 0.125983, 0.955682, 0.506946, 0.475104, 0.42386, 0.743888, 0.254028, 0.393156, 0.79219, 0.0677401, 0.586007, 0.594929, 0.0176444, 0.0772566, 0.320507, 0.992986, 0.207901, 0.528106, 0.136103, 0.191147, 0.708463, 0.328756, 0.935148, 0.0558156, 0.10463, 0.698945, 0.1983, 0.0516235, 0.976899, 0.190763, 0.506738, 0.903816, 0.470891, 0.579311, 0.459764, 0.870779, 0.467084, 0.202093, 0.382113, 0.758982, 0.543233, 0.646937, 0.275654, 0.4393, 0.333932, 0.0695708, 0.156887, 0.721319, 0.984171, 0.252371, 0.983907, 0.775737, 0.0589212, 0.445042, 0.461394, 0.466213, 0.373344, 0.930697, 0.406812, 0.662108, 0.122191, 0.247269, 0.258097, 0.0407154, 0.855269, 0.235527, 0.876875, 0.805798, 0.0807154, 0.960267, 0.689527, 0.920841, 0.452028, 0.313812, 0.507496, 0.101225, 0.765568, 0.952103, 0.210943, 0.792417, 0.812604, 0.530017, 0.117172, 0.413165, 0.65056, 0.774613, 0.0447885, 0.16903, 0.413123, 0.5215, 0.463947, 0.454876, 0.409058, 0.839745, 0.048039, 0.922402, 0.865291, 0.903217, 0.825776, 0.258469, 0.306235, 0.280674, 0.499215, 0.0321913, 0.43813, 0.648241, 0.863866, 0.961258, 0.872787, 0.965832, 0.280185, 0.867821, 0.333726, 0.546419, 0.560417, 0.93491, 0.710542, 0.261666, 0.798367, 0.168999, 0.920242, 0.726819, 0.377246, 0.395024, 0.274166, 0.264527, 0.20049, 0.359811, 0.804623, 0.00360393, 0.73255, 0.771133, 0.170565, 0.68284, 0.331344, 0.706333, 0.462146, 0.469002, 0.305191, 0.539346, 0.233156, 0.404299, 0.942348, 0.245893, 0.373266, 0.47572, 0.421276, 0.307568, 0.854683, 0.774993, 0.945097, 0.829606, 0.405773, 0.87252, 0.176255, 0.87888, 0.279033, 0.506288, 0.510867, 0.853068, 0.0954172, 0.0451458, 0.0464311, 0.0171631, 0.0558304, 0.65644, 0.343285, 0.537229, 0.456696, 0.749976, 0.0701074, 0.0709438, 0.790112, 0.47651, 0.491217, 0.568951, 0.87156, 0.176341, 0.40739, 0.495322, 0.275302, 0.770716, 0.278422, 0.0661859, 0.905895, 0.362887, 0.899367, 0.921387, 0.0564634, 0.573581, 0.156361, 0.0436128, 0.108496, 0.831278, 0.815231, 0.0652065, 0.40572, 0.295175, 0.548291, 0.517641, 0.536337, 0.686713, 0.413358, 0.130384, 0.0510004, 0.582349, 0.747402, 0.307916, 0.353884, 0.462563, 0.542269, 0.207305, 0.173616, 0.291938, 0.634112, 0.907511, 0.0626015, 0.879159, 0.429013, 0.504899, 0.934654, 0.116295, 0.136615, 0.31684, 0.58602, 0.458877, 0.368319, 0.682573, 0.372163, 0.178365, 0.78596, 0.271155, 0.742319, 0.621476, 0.111365, 0.34581, 0.831871, 0.500833, 0.507965, 0.572682, 0.0626494, 0.0098932, 0.233187, 0.884227, 0.110608, 0.665661, 0.691152, 0.136284, 0.178324, 0.858383, 0.428119, 0.864211, 0.707418, 0.657407, 0.381127, 0.189932, 0.312904, 0.0789875, 0.900363, 0.283227, 0.904997, 0.116342, 0.708026, 0.49802, 0.670096, 0.299116, 0.884948, 0.470176, 0.774387, 0.642584, 0.305323, 0.804183, 0.888465, 0.818885, 0.410525, 0.425071, 0.726494, 0.430591, 0.709948, 0.412813, 0.323481, 0.208116, 0.777231, 0.116319, 0.332237, 0.0846122, 0.770269, 0.352339, 0.601469, 0.556197, 0.733306, 0.0663171, 0.862323, 0.544184, 0.0272064, 0.165657, 0.788109, 0.673075, 0.315027, 0.159948, 0.506468, 0.652056, 0.000920887, 0.215675, 0.464952, 0.743509, 0.351673, 0.602006, 0.367186, 0.177594, 0.941535, 0.306144, 0.378103, 0.212491, 0.997629, 0.80487, 0.127841, 0.619001, 0.833757, 0.697103, 0.0588221, 0.7419, 0.792471, 0.832259, 0.036171, 0.468769, 0.389836, 0.255074, 0.196213, 0.736734, 0.478865, 0.723545, 0.5987, 0.291994, 0.49389, 0.121163, 0.592705, 0.65, 0.34932, 0.369126, 0.0713003, 0.122628, 0.844854, 0.635947, 0.374196, 0.358014, 0.481653, 0.700881, 0.0205248, 0.13835, 0.807291, 0.735876, 0.759992, 0.472683, 0.302549, 0.787, 0.225814, 0.185531, 0.231139, 0.935187, 0.403908, 0.64596, 0.34262, 0.357467, 0.10672, 0.305625, 0.52338, 0.827492, 0.955765, 0.790972, 0.177031, 0.927101, 0.810977, 0.499514, 0.322676, 0.57625, 0.372786, 0.382195, 0.988088, 0.618742, 0.425023, 0.673301, 0.241715, 0.174997, 0.5439, 0.170907, 0.349194, 0.820161, 0.233589, 0.318476, 0.197934, 0.699364, 0.637542, 0.465011, 0.0187581, 0.190163, 0.756208, 0.472132, 0.4868, 0.723026, 0.379682, 0.365346, 0.894813, 0.751082, 0.480833, 0.928701, 0.128808, 0.830305, 0.100163, 0.90188, 0.911492, 0.466998, 0.433854, 0.015408, 0.167343, 0.642858, 0.455742, 0.610448, 0.326629, 0.421488, 0.458191, 0.637302, 0.533665, 0.812558, 0.969173, 0.326991, 0.126867, 0.848999, 0.716219, 0.981126, 0.327416, 0.284432, 0.792503, 0.694015, 0.248582, 0.770959, 0.751586, 0.38134, 0.965801, 0.505019, 0.14646, 0.374775, 0.321738, 0.458752, 0.377833, 0.519381, 0.679915, 0.458723, 0.0370693, 0.849639, 0.396516, 0.83156, 0.444756, 0.797976, 0.995591, 0.538567, 0.689927, 0.45096, 0.868299, 0.811123, 0.293234, 0.721305, 0.177166, 0.894952, 0.62641, 0.687413, 0.694175, 0.304217, 0.0136684, 0.890674, 0.899722, 0.637766, 0.528021, 0.801501, 0.792564, 0.538398, 0.877006, 0.264564, 0.407734, 0.645108, 0.18197, 0.152754, 0.815848, 0.577899, 0.703031, 0.242478, 0.894567, 0.96087, 0.408947, 0.315054, 0.302289, 0.478926, 0.669814, 0.959103, 0.344021, 0.658806, 0.448365, 0.838467, 0.779806, 0.865458, 0.41381, 0.893845, 0.457803, 0.889834, 0.946956, 0.933004, 0.83567, 0.136374, 0.049155, 0.3097, 0.251154, 0.305113, 0.799089, 0.300594, 0.582202, 0.31084, 0.385809, 0.144171, 0.434686, 0.754535, 0.53353, 0.522426, 0.0434329, 0.91338, 0.660406, 0.150252, 0.90375, 0.0102227, 0.729369, 0.461165, 0.506007, 0.308079, 0.47514, 0.12175, 0.886592, 0.0350306, 0.606862, 0.313458, 0.750547, 0.0801592, 0.457862, 0.533468, 0.885263, 0.198575, 0.309171, 0.305542, 0.199726, 0.793719, 0.804498, 0.0358066, 0.978661, 0.827523, 0.35161, 0.762326, 0.535313, 0.938559, 0.4503, 0.112569, 0.66282, 0.370995, 0.569321, 0.119367, 0.501329, 0.846056, 0.539359, 0.839922, 0.442332, 0.884, 0.0591876, 0.539168, 0.984781, 0.871205, 0.0854703, 0.717857, 0.232444, 0.457933, 0.649101, 0.148704, 0.670437, 0.443175, 0.302435, 0.0377366, 0.454601, 0.336314, 0.81688, 0.261152, 0.498628, 0.759005, 0.567544, 0.632342, 0.690219, 0.845594, 0.531945, 0.691674, 0.595055, 0.725202, 0.537517, 0.711232, 0.993834, 0.441047, 0.990451, 0.799802, 0.961666, 0.457168, 0.709478, 0.980607, 0.844829, 0.405211, 0.223999, 0.852146, 0.773323, 0.842033, 0.317416, 0.397522, 0.824772, 0.453149, 0.0522264, 0.614552, 0.81791, 0.225596, 0.99387, 0.0682345, 0.614353, 0.742055, 0.618717, 0.663419, 0.321116, 0.901984, 0.11989, 0.235557, 0.356499, 0.577774, 0.555067, 0.0863137, 0.472922, 0.884758, 0.824288, 0.498867, 0.994645, 0.868219, 0.6208, 0.947028, 0.212622, 0.59932, 0.79759, 0.668395, 0.427304, 0.690056, 0.439286, 0.0700809, 0.27491, 0.0755251, 0.442506, 0.657334, 0.264498, 0.671154, 0.166596, 0.269773, 0.107788, 0.349553, 0.695793, 0.703822, 0.215588, 0.204637, 0.0798103, 0.763996, 0.0612667, 0.571063, 0.0526654, 0.515163, 0.953367, 0.775436, 0.312229, 0.296158, 0.900139, 0.483289, 0.254503, 0.935625, 0.478267, 0.316831, 0.115587, 0.442304, 0.0596865, 0.19508, 0.774136, 0.988787, 0.60814, 0.00981545, 0.398596, 0.768476, 0.906271, 0.46773, 0.256136, 0.618474, 0.179652, 0.888705, 0.586942, 0.321217, 0.651605, 0.862069, 0.114186, 0.17861, 0.0417655, 0.176729, 0.42583, 0.82061, 0.860383, 0.193185, 0.404549, 0.379155, 0.485282, 0.016342, 0.693068, 0.125953, 0.658611, 0.270833, 0.285506, 0.32126, 0.739323, 0.437358, 0.150252, 0.733181, 0.690758, 0.520076, 0.700211, 0.579535, 0.0495254, 0.283641, 0.536096, 0.418035, 0.63815, 0.294261, 0.48992, 0.734675, 0.552556, 0.620045, 0.589756, 0.671385, 0.886652, 0.0971896, 0.66922, 0.695882, 0.347832, 0.371098, 0.856624, 0.691958, 0.407796, 0.932549, 0.342606, 0.288123, 0.489522, 0.231401, 0.387611, 0.0551225, 0.375943, 0.224691, 0.289555, 0.455238, 0.0430309, 0.584177, 0.146183, 0.680249, 0.347606, 0.763452, 0.530888, 0.387532, 0.282439, 0.255751, 0.36775, 0.925498, 0.971201, 0.926978, 0.627056, 0.665154, 0.454747, 0.341733, 0.32008, 0.168399, 0.423126, 0.299849, 0.820325, 0.723267, 0.0637205, 0.918364, 0.158676, 0.589659, 0.316966, 0.592171, 0.207242, 0.661177, 0.752052, 0.804279, 0.292697, 0.605208, 0.250544, 0.125328, 0.645588, 0.868387, 0.857539, 0.686003, 0.45299, 0.536528, 0.924602, 0.984829, 0.255735, 0.313742, 0.226247, 0.185502, 0.827408, 0.497741, 0.848919, 0.316295, 0.843783, 0.710022, 0.638775, 0.371836, 0.164846, 0.250868, 0.832528, 0.335575, 0.968559, 0.149633, 0.203899, 0.788485, 0.0398888, 0.67515, 0.0586368, 0.772751, 0.109719, 0.762025, 0.710197, 0.316576, 0.594539, 0.80667, 0.0368775, 0.0513186, 0.970405, 0.561416, 0.249725, 0.585635, 0.532354, 0.125889, 0.156559, 0.572113, 0.358728, 0.600729, 0.361381, 0.970288, 0.851343, 0.490879, 0.458854, 0.0291644, 0.549936, 0.301511, 0.746525, 0.502274, 0.835356, 0.422023, 0.516765, 0.96343, 0.574654, 0.40334, 0.265409, 0.453785, 0.400419, 0.17958, 0.356209, 0.48938, 0.565072, 0.307234, 0.285915, 0.647999, 0.719095, 0.910425, 0.823406, 0.916754, 0.961534, 0.779739, 0.136354, 0.32201, 0.332292, 0.109666, 0.00891325, 0.877549, 0.618466, 0.063447, 0.668056, 0.273041, 0.327224, 0.878953, 0.474336, 0.503986, 0.803222, 0.786647, 0.244807, 0.724198, 0.433548, 0.0616928, 0.470861, 0.39902, 0.13408, 0.679739, 0.1709, 0.880907, 0.982239, 0.688888, 0.293035, 0.570804, 0.382169, 0.063379, 0.0784823, 0.875044, 0.769845, 0.225419, 0.296662, 0.875628, 0.344728, 0.20352, 0.923303, 0.331475, 0.346848, 0.833991, 0.685642, 0.227788, 0.628054, 0.262699, 0.732654, 0.15477, 0.327979, 0.651856, 0.47106, 0.636137, 0.572486, 0.183852, 0.104058, 0.987281, 0.336027, 0.72372, 0.8582, 0.58961, 0.743704, 0.578231, 0.542347, 0.423738, 0.381478, 0.084426, 0.662044, 0.652717, 0.443199, 0.392809, 0.30298, 0.790753, 0.328842, 0.75938, 0.0488912, 0.899114, 0.559141, 0.0631922, 0.0118264, 0.723217, 0.275262, 0.136921, 0.864023, 0.662238, 0.306619, 0.0893467, 0.888845, 0.185989, 0.526927, 0.0147209, 0.160433, 0.775214, 0.863504, 0.0621255, 0.134734, 0.553247, 0.241655, 0.77989, 0.909935, 0.721599, 0.563924, 0.204608, 0.393781, 0.12511, 0.447523, 0.324561, 0.967459, 0.0631283, 0.35271, 0.833536, 0.852548, 0.517544, 0.40873, 0.646201, 0.595205, 0.971308, 0.166952, 0.985942, 0.591575, 0.244875, 0.693938, 0.113778, 0.759724, 0.813694, 0.393444, 0.343845, 0.103497, 0.121951, 0.233799, 0.762405, 0.500507, 0.919505, 0.456497, 0.840675, 0.604321, 0.543137, 0.0211698, 0.0758669, 0.12913, 0.549984, 0.263862, 0.0346989, 0.335107, 0.835223, 0.566316, 0.0244453, 0.578691, 0.664038, 0.650779, 0.164656, 0.627452, 0.722843, 0.800206, 0.116107, 0.0203035, 0.374407, 0.965705, 0.0110325, 0.998024, 0.783014, 0.0832406, 0.335642, 0.774395, 0.371153, 0.941007, 0.63636, 0.0240382, 0.959488, 0.923166, 0.439688, 0.864186, 0.699498, 0.344454, 0.179774, 0.936647, 0.731408, 0.816577, 0.687972, 0.617568, 0.928552, 0.971177, 0.134631, 0.168535, 0.699836, 0.321496, 0.319605, 0.618294, 0.514369, 0.945269, 0.88228, 0.407133, 0.750522, 0.205377, 0.202692, 0.875734, 0.951163, 0.591304, 0.174682, 0.34534, 0.552553, 0.280804, 0.363245, 0.114267, 0.906492, 0.882822, 0.24086, 0.426481, 0.235711, 0.312802, 0.262856, 0.936412, 0.24493, 0.597656, 0.659288, 0.357394, 0.685456, 0.791699, 0.887432, 0.346623, 0.111041, 0.207639, 0.739972, 0.419978, 0.845298, 0.0778717, 0.724928, 0.706066, 0.860665, 0.160268, 0.244845, 0.463204, 0.498739, 0.588374, 0.368338, 0.0892011, 0.107076, 0.478193, 0.631327, 0.811656, 0.464272, 0.421894, 0.137954, 0.410764, 0.435121, 0.24257, 0.527901, 0.404133, 0.0545035, 0.742448, 0.442365, 0.863438, 0.789441, 0.394402, 0.00613398, 0.867081, 0.00384251, 0.511533, 0.57806, 0.888777, 0.0259426, 0.793212, 0.609102, 0.301156, 0.0877352, 0.828016, 0.561448, 0.0595132, 0.471967, 0.893999, 0.668739, 0.847616, 0.743314, 0.743303, 0.0722257, 0.140424, 0.275918, 0.625615, 0.764147, 0.139934, 0.725906, 0.0909708, 0.698548, 0.546715, 0.123564, 0.610412, 0.474304, 0.925668, 0.0509514, 0.0574054, 0.899886, 0.65906, 0.999451, 0.656265, 0.036704, 0.878708, 0.887585, 0.305513, 0.367564, 0.978791, 0.31831, 0.669875, 0.367108, 0.772971, 0.0896797, 0.833546, 0.793242, 0.490412, 0.889564, 0.0859814, 0.381787, 0.00539598, 0.700407, 0.131112, 0.632591, 0.732806, 0.816641, 0.178393, 0.077443, 0.973116, 0.734785, 0.324847, 0.528034, 0.349091, 0.574272, 0.89613, 0.621639, 0.0487464, 0.677461, 0.830756, 0.657379, 0.526372, 0.365305, 0.369929, 0.868658, 0.136915, 0.507724, 0.921089, 0.313955, 0.350456, 0.927952, 0.00628777, 0.550445, 0.164051, 0.730685, 0.0247993, 0.1408, 0.265129, 0.905673, 0.779407, 0.092088, 0.22462, 0.578342, 0.805298, 0.677176, 0.9582, 0.79486, 0.627776, 0.662102, 0.439483, 0.268846, 0.189297, 0.394185, 0.429062, 0.614969, 0.167243, 0.788504, 0.0661483, 0.721089, 0.774584, 0.316421, 0.681918, 0.245269, 0.29937, 0.840421, 0.722573, 0.0120884, 0.265541, 0.146931, 0.953688, 0.562294, 0.991365, 0.840994, 0.720479, 0.179228, 0.223416, 0.458426, 0.99785, 0.337146, 0.816261, 0.481227, 0.553636, 0.297855, 0.538486, 0.608309, 0.721136, 0.833913, 0.24333, 0.910893, 0.727897, 0.109237, 0.593581, 0.874631, 0.0709713, 0.796996, 0.925099, 0.586683, 0.96676, 0.351985, 0.751722, 0.356668, 0.669211, 0.489198, 0.293081, 0.311791, 0.924245, 0.841715, 0.466269, 0.889917, 0.45499, 0.886618, 0.529714, 0.492143, 0.895005, 0.320168, 0.372601, 0.914721, 0.0800021, 0.848954, 0.00908589, 0.918013, 0.281478, 0.544026, 0.664106, 0.0375566, 0.312872, 0.0342114, 0.942924, 0.138984, 0.332442, 0.871673, 0.525317, 0.418497, 0.790423, 0.723684, 0.873188, 0.318098, 0.467299, 0.157948, 0.0454114, 0.32999, 0.787019, 0.884097, 0.285882, 0.358632, 0.144098, 0.719018, 0.719071, 0.697976, 0.186055, 0.501236, 0.884748, 0.632005, 0.430949, 0.387263, 0.805957, 0.193986, 0.347255, 0.0570445, 0.006797, 0.500401, 0.294487, 0.0680388, 0.805326, 0.181984, 0.0501751, 0.0766015, 0.526423, 0.188243, 0.414886, 0.592165, 0.753081, 0.730982, 0.165123, 0.107674, 0.423133, 0.228369, 0.224986, 0.577592, 0.635908, 0.943174, 0.335085, 0.836889, 0.342952, 0.167118, 0.624525, 0.856313, 0.921166, 0.801291, 0.758801, 0.637488, 0.680047, 0.303448, 0.869554, 0.290099, 0.474593, 0.672515, 0.0637003, 0.186288, 0.625233, 0.399161, 0.722362, 0.423572, 0.942582, 0.0886553, 0.212074, 0.0391753, 0.861589, 0.400305, 0.10486, 0.384078, 0.202166, 0.672622, 0.91722, 0.603885, 0.672414, 0.846603, 0.333102, 0.486922, 0.907598, 0.867504, 0.56478, 0.767009, 0.848718, 0.124062, 0.551917, 0.941137, 0.346769, 0.657047, 0.289148, 0.388219, 0.626385, 0.697405, 0.0377644, 0.908079, 0.668569, 0.119673, 0.215121, 0.376058, 0.0374965, 0.386697, 0.563823, 0.885494, 0.243946, 0.355869, 0.257652, 0.046335, 0.916384, 0.680229, 0.464651, 0.709885, 0.484906, 0.91259, 0.498101, 0.223619, 0.153989, 0.111489, 0.505192, 0.601299, 0.564115, 0.898977, 0.600714, 0.444093, 0.538388, 0.330582, 0.12034, 0.0536305, 0.0222202, 0.742813, 0.546253, 0.791928, 0.069975, 0.196255, 0.765296, 0.205934, 0.893889, 0.844343, 0.777305, 0.937906, 0.392683, 0.414534, 0.0414895, 0.387903, 0.954064, 0.802791, 0.537087, 0.532209, 0.887904, 0.594908, 0.586865, 0.0547664, 0.40019, 0.481301, 0.709963, 0.0121169, 0.828262, 0.965955, 0.949611, 0.65088, 0.448005, 0.993904, 0.164882, 0.354858, 0.367886, 0.426567, 0.687085, 0.605885, 0.508063, 0.58993, 0.248294, 0.74219, 0.969719, 0.202111, 0.89544, 0.583348, 0.823776, 0.439039, 0.421996, 0.720746, 0.897236, 0.374662, 0.872577, 0.105817, 0.720689, 0.824346, 0.158175, 0.395905, 0.100654, 0.707863, 0.423092, 0.157991, 0.156658, 0.702542, 0.296186, 0.458731, 0.150583, 0.885817, 0.199738, 0.898556, 0.716553, 0.420452, 0.31157, 0.149567, 0.683278, 0.46182, 0.718851, 0.244332, 0.33307, 0.757627, 0.553181, 0.311749, 0.123247, 0.919328, 0.847211, 0.0841077, 0.898785, 0.0570432, 0.779025, 0.330567, 0.559177, 0.25126, 0.82179, 0.0735284, 0.657439, 0.0731305, 0.0511692, 0.280545, 0.0772603, 0.676196, 0.293328, 0.115305, 0.891287, 0.679459, 0.174581, 0.695196, 0.123975, 0.785274, 0.242571, 0.479348, 0.765869, 0.336896, 0.782724, 0.708965, 0.775772, 0.772306, 0.736247, 0.8866, 0.873607, 0.905697, 0.765402, 0.161844, 0.960967, 0.972999, 0.422707, 0.8069, 0.948782, 0.565063, 0.693451, 0.602445, 0.814243, 0.916487, 0.268815, 0.95423, 0.546828, 0.277289, 0.946279, 0.646002, 0.093949, 0.782924, 0.274266, 0.993749, 0.910229, 0.0989096, 0.35894, 0.274044, 0.384003, 0.338796, 0.0555018, 0.726783, 0.908397, 0.405586, 0.0936273, 0.957714, 0.888016, 0.874309, 0.793413, 0.871222, 0.518545, 0.972874, 0.0078246, 0.985028, 0.984621, 0.590917, 0.386753, 0.585227, 0.381218, 0.625137, 0.100634, 0.919112, 0.293435, 0.495189, 0.510776, 0.298816, 0.095965, 0.103011, 0.447301, 0.125291, 0.928486, 0.882791, 0.783282, 0.00272597, 0.68653, 0.108257, 0.946475, 0.496814, 0.328259, 0.104734, 0.619026, 0.34315, 0.0453975, 0.755696, 0.962885, 0.239685, 0.187631, 0.964565, 0.765593, 0.672336, 0.090252, 0.210921, 0.680636, 0.218681, 0.0107781, 0.522013, 0.325851, 0.1911, 0.420952, 0.029574, 0.351209, 0.129009, 0.563426, 0.227105, 0.07612, 0.487968, 0.83752, 0.735883, 0.666915, 0.445869, 0.791671, 0.281661, 0.928018, 0.669721, 0.682338, 0.79125, 0.356164, 0.462099, 0.855418, 0.214802, 0.902109, 0.953848, 0.410862, 0.36956, 0.421996, 0.934848, 0.106823, 0.308401, 0.14928, 0.72386, 0.0378415, 0.663265, 0.00682835, 0.633184, 0.534593, 0.0156501, 0.151601, 0.211653, 0.468096, 0.905673, 0.805541, 0.749493, 0.208294, 0.97087, 0.943601, 0.969517, 0.384328, 0.922651, 0.940334, 0.204516, 0.715793, 0.26435, 0.89528, 0.855626, 0.9497, 0.379236, 0.668378, 0.852895, 0.187018, 0.975123, 0.506262, 0.0583515, 0.0810914, 0.47934, 0.00242032, 0.768933, 0.557646, 0.43155, 0.112644, 0.78149, 0.854212, 0.843992, 0.849422, 0.611063, 0.182226, 0.330712, 0.180957, 0.819837, 0.802097, 0.422339, 0.297575, 0.172512, 0.0700954, 0.972202, 0.101391, 0.507276, 0.0169995, 0.0254523, 0.954711, 0.10593, 0.883098, 0.346894, 0.751155, 0.244221, 0.416072, 0.824888, 0.904692, 0.125086, 0.185577, 0.19544, 0.723256, 0.24917, 0.48036, 0.973321, 0.0213415, 0.441908, 0.433604, 0.74882, 0.148368, 0.0724756, 0.856612, 0.523868, 0.9712, 0.558063, 0.982476, 0.0572319, 0.653012, 0.346464, 0.933288, 0.876528, 0.421949, 0.0778321, 0.197076, 0.18523, 0.155189, 0.824885, 0.153041, 0.352194, 0.714309, 0.0207662, 0.0519233, 0.549587, 0.521096, 0.529766, 0.927778, 0.210935, 0.803238, 0.451755, 0.799907, 0.21564, 0.95605, 0.9331, 0.845079, 0.029185, 0.655086, 0.359136, 0.59256, 0.279384, 0.297993, 0.464518, 0.449132, 0.829833, 0.485665, 0.661307, 0.203452, 0.053043, 0.897858, 0.606581, 0.831515, 0.334763, 0.437941, 0.406986, 0.975581, 0.456347, 0.579385, 0.0273983, 0.470545, 0.446877, 0.611386, 0.449618, 0.0843964, 0.0108698, 0.306468, 0.059336, 0.550231, 0.336181, 0.531002, 0.152256, 0.824983, 0.345761, 0.135409, 0.885335, 0.665116, 0.669245, 0.538414, 0.0691357, 0.536132, 0.29768, 0.414128, 0.745982, 0.629456, 0.325496, 0.853354, 0.973727, 0.176844, 0.113371, 0.286286, 0.468106, 0.0649777, 0.526946, 0.785171, 0.766632, 0.0625148, 0.438023, 0.693556, 0.846619, 0.706524, 0.334763, 0.0467728, 0.297823, 0.985897, 0.150503, 0.915487, 0.951665, 0.972201, 0.700895, 0.216043, 0.662013, 0.797464, 0.473218, 0.994398, 0.906182, 0.459944, 0.966297, 0.233741, 0.136611, 0.961101, 0.842715, 0.818375, 0.697074, 0.386101, 0.360208, 0.261699, 0.95886, 0.309039, 0.0493484, 0.153351, 0.752365, 0.792846, 0.940465, 0.37238, 0.314019, 0.0514882, 0.821461, 0.844165, 0.493629, 0.988331, 0.368021, 0.38424, 0.92453, 0.229737, 0.958241, 0.702214, 0.405154, 0.560592, 0.597024, 0.786127, 0.0597326, 0.0428245, 0.297238, 0.49482, 0.399929, 0.724312, 0.107373, 0.36756, 0.325617, 0.981816, 0.485813, 0.633366, 0.711929, 0.873733, 0.638776, 0.109222, 0.430409, 0.774384, 0.974168, 0.104081, 0.590271, 0.129647, 0.133071, 0.341982, 0.298487, 0.509727, 0.256758, 0.0396291, 0.661724, 0.503199, 0.105958, 0.187221, 0.312695, 0.993555, 0.127059, 0.0448764, 0.855391, 0.702581, 0.0203665, 0.827487, 0.289003, 0.499851, 0.383601, 0.677723, 0.809673, 0.382683, 0.904806, 0.991494, 0.951881, 0.520166, 0.901293, 0.747227, 0.423873, 0.481918, 0.427671, 0.326114, 0.341688, 0.685606, 0.518872, 0.530867, 0.835228, 0.810857, 0.620203, 0.507715, 0.632993, 0.82505, 0.578728, 0.700222, 0.83451, 0.492908, 0.638573, 0.573057, 0.00891188, 0.713448, 0.925986, 0.0393316, 0.0335817, 0.790412, 0.0323502, 0.307637, 0.352329, 0.922402, 0.516065, 0.861165, 0.806933, 0.678143, 0.772472, 0.367841, 0.902365, 0.71558, 0.458232, 0.967204, 0.179482, 0.0361507, 0.94922, 0.162945, 0.628609, 0.877003, 0.470757, 0.410595, 0.0216603, 0.460343, 0.858546, 0.363512, 0.607368, 0.515995, 0.530213, 0.0367822, 0.532001, 0.571669, 0.397947, 0.487743, 0.213033, 0.749217, 0.8274, 0.737503, 0.657423, 0.0312227, 0.781163, 0.886139, 0.331717, 0.55673, 0.986234, 0.253588, 0.810303, 0.520106, 0.419689, 0.0699049, 0.153596, 0.794232, 0.0483519, 0.83783, 0.597201, 0.516072, 0.844409, 0.385921, 0.611924, 0.955325, 0.519208, 0.373878, 0.629046, 0.690831, 0.697245, 0.119742, 0.056846, 0.456071, 0.799117, 0.527102, 0.150697, 0.842322, 0.214973, 0.744237, 0.456457, 0.482834, 0.745881, 0.411206, 0.617174, 0.420588, 0.286817, 0.0496779, 0.730341, 0.34842, 0.250543, 0.740527, 0.303643, 0.281129, 0.1872, 0.4808, 0.716071, 0.983636, 0.449663, 0.698014, 0.73312, 0.622484, 0.85485, 0.409041, 0.720464, 0.675804, 0.559418, 0.920296, 0.754098, 0.638082, 0.234053, 0.018729, 0.362872, 0.652148, 0.620817, 0.369305, 0.38631, 0.930427, 0.641007, 0.109921, 0.623183, 0.352949, 0.874117, 0.448717, 0.455285, 0.345244, 0.451122, 0.948271, 0.556486, 0.602188, 0.776034, 0.482165, 0.7329, 0.197306, 0.0657418, 0.0654793, 0.5727, 0.807578, 0.999897, 0.161097, 0.509372, 0.61751, 0.0745205, 0.678902, 0.179759, 0.159726, 0.587556, 0.3301, 0.491297, 0.921946, 0.985123, 0.86514, 0.881982, 0.566821, 0.621254, 0.103478, 0.788699, 0.904587, 0.877758, 0.643877, 0.153881, 0.524796, 0.375401, 0.951869, 0.948358, 0.833498, 0.593298, 0.0201101, 0.126275, 0.765023, 0.904025, 0.648421, 0.707049, 0.0150131, 0.7442, 0.5978, 0.925498, 0.310578, 0.151377, 0.90317, 0.540783, 0.159372, 0.602278, 0.358967, 0.514979, 0.557601, 0.848365, 0.61464, 0.369268, 0.684617, 0.872303, 0.136651, 0.611522, 0.869738, 0.512325, 0.217256, 0.178135, 0.223219, 0.0219734, 0.756035, 0.245299, 0.210532, 0.133664, 0.341583, 0.316551, 0.723035, 0.551892, 0.734721, 0.0922746, 0.946082, 0.967512, 0.578441, 0.132522, 0.717207, 0.624223, 0.760253, 0.184065, 0.990692, 0.566182, 0.14733, 0.861481, 0.801199, 0.263972, 0.374555, 0.258605, 0.67979, 0.201417, 0.715122, 0.570144, 0.566226, 0.158468, 0.04718, 0.0937663, 0.266541, 0.601237, 0.69566, 0.144284, 0.9475, 0.474596, 0.0888045, 0.416191, 0.702359, 0.867205, 0.424696, 0.591265, 0.908696, 0.257274, 0.648302, 0.198409, 0.695839, 0.931819, 0.660077, 0.215693, 0.45629, 0.894729, 0.983438, 0.183173, 0.56049, 0.539245, 0.996379, 0.370151, 0.250879, 0.402447, 0.432257, 0.0674984, 0.31702, 0.731698, 0.668893, 0.808452, 0.109053, 0.508808, 0.342527, 0.513582, 0.123082, 0.785695, 0.732745, 0.268861, 0.250659, 0.545527, 0.857127, 0.41173, 0.804247, 0.111304, 0.413358, 0.296181, 0.672227, 0.115622, 0.225399, 0.864891, 0.962351, 0.814655, 0.521629, 0.396566, 0.552732, 0.19779, 0.156093, 0.384171, 0.253139, 0.722354, 0.599587, 0.411506, 0.288726, 0.129142, 0.326284, 0.528871, 0.231405, 0.931537, 0.910982, 0.74273, 0.179939, 0.393404, 0.204973, 0.700174, 0.602977, 0.562797, 0.792018, 0.0424811, 0.235302, 0.992325, 0.176502, 0.554295, 0.0324226, 0.284686, 0.00700358, 0.325967, 0.340064, 0.383622, 0.296746, 0.387355, 0.990186, 0.108578, 0.221806, 0.64229, 0.818318, 0.312632, 0.867823, 0.883808, 0.599856, 0.509203, 0.0152882, 0.136774, 0.848128, 0.213386, 0.487014, 0.95346, 0.789232, 0.611782, 0.426443, 0.405727, 0.86852, 0.305588, 0.195924, 0.695828, 0.935965, 0.641291, 0.688478, 0.813829, 0.615355, 0.735923, 0.42909, 0.541464, 0.346598, 0.25247, 0.673428, 0.981367, 0.997846, 0.297658, 0.0142858, 0.80571, 0.267435, 0.377597, 0.81435, 0.492265, 0.628247, 0.187726, 0.11812, 0.716165, 0.694685, 0.346032, 0.913525, 0.253758, 0.515381, 0.214674, 0.956031, 0.957614, 0.0872555, 0.199956, 0.430683, 0.157594, 0.562096, 0.392935, 0.511123, 0.920476, 0.868776, 0.576936, 0.0278721, 0.219658, 0.774331, 0.625886, 0.0082881, 0.997553, 0.329826, 0.832248, 0.996308, 0.388564, 0.729274, 0.323474, 0.425097, 0.301228, 0.299065, 0.983669, 0.400248, 0.503789, 0.813026, 0.136986, 0.151817, 0.729839, 0.764368, 0.0280042, 0.264067, 0.900445, 0.231267, 0.502126, 0.565454, 0.843213, 0.579648, 0.789364, 0.669677, 0.04461, 0.684907, 0.425413, 0.288632, 0.00395595, 0.542435, 0.216071, 0.18917, 0.970851, 0.419426, 0.237613, 0.730309, 0.199577, 0.732611, 0.744815, 0.58676, 0.671423, 0.494676, 0.225424, 0.70758, 0.996235, 0.964135, 0.802666, 0.312883, 0.135183, 0.846743, 0.260284, 0.716979, 0.567487, 0.0730147, 0.542468, 0.659719, 0.155479, 0.770085, 0.992266, 0.353544, 0.774101, 0.965537, 0.998775, 0.34354, 0.0773092, 0.453505, 0.669693, 0.353933, 0.753243, 0.944286, 0.652485, 0.737946, 0.392414, 0.325862, 0.728856, 0.83094, 0.749988, 0.801557, 0.613172, 0.808371, 0.986402, 0.715234, 0.240682, 0.392313, 0.891651, 0.259872, 0.0986346, 0.86297, 0.106848, 0.776397, 0.553577, 0.215339, 0.0441361, 0.265432, 0.0720464, 0.284713, 0.0283263, 0.53634, 0.493958, 0.476731, 0.0943269, 0.773665, 0.991534, 0.50939, 0.335962, 0.06123, 0.417067, 0.800443, 0.519171, 0.427361, 0.217762, 0.0510568, 0.36815, 0.563254, 0.854689, 0.335899, 0.171498, 0.548312, 0.195189, 0.0535248, 0.865462, 0.87322, 0.866146, 0.85746, 0.102272, 0.150039, 0.0667764, 0.445532, 0.170749, 0.406866, 0.75219, 0.969756, 0.816015, 0.35656, 0.071648, 0.612682, 0.153806, 0.150379, 0.58119, 0.54882, 0.376379, 0.555642, 0.97008, 0.252967, 0.10617, 0.38813, 0.256052, 0.606034, 0.330212, 0.385566, 0.508587, 0.750938, 0.031118, 0.423059, 0.244267, 0.20265, 0.787553, 0.366797, 0.711147, 0.505731, 0.757017, 0.45655, 0.651996, 0.284821, 0.0598917, 0.99037, 0.931341, 0.112815, 0.0909045, 0.187748, 0.791663, 0.827594, 0.804124, 0.925645, 0.887251, 0.393529, 0.191947, 0.408688, 0.804312, 0.66514, 0.115176, 0.285518, 0.204117, 0.157981, 0.463733, 0.479301, 0.856981, 0.937528, 0.411315, 0.863007, 0.699701, 0.229089, 0.950686, 0.867727, 0.971115, 0.885927, 0.844345, 0.076912, 0.869651, 0.76921, 0.0378565, 0.622212, 0.493562, 0.608605, 0.831141, 0.971259, 0.905759, 0.874348, 0.69186, 0.148418, 0.337865, 0.22719, 0.412224, 0.186524, 0.814085, 0.692819, 0.586107, 0.345021, 0.872031, 0.185449, 0.00439599, 0.335658, 0.0405403, 0.741025, 0.725927, 0.154015, 0.137111, 0.0232265, 0.930676, 0.654835, 0.908547, 0.094071, 0.990514, 0.437413, 0.743797, 0.00788466, 0.446104, 0.246498, 0.666793, 0.819619, 0.102986, 0.852622, 0.788565, 0.62364, 0.791175, 0.42685, 0.0765536, 0.100236, 0.446536, 0.33308, 0.905593, 0.584922, 0.0234402, 0.895991, 0.595334, 0.681095, 0.407522, 0.546711, 0.57838, 0.888381, 0.288598, 0.899159, 0.270344, 0.813493, 0.655682, 0.578521, 0.467381, 0.691264, 0.716711, 0.504354, 0.141709, 0.422382, 0.40133, 0.346244, 0.171395, 0.605301, 0.869774, 0.495527, 0.705591, 0.561917, 0.776828, 0.0685969, 0.73957, 0.647541, 0.608498, 0.924928, 0.947169, 0.456873, 0.00828233, 0.0954775, 0.700587, 0.520686, 0.257912, 0.92712, 0.326307, 0.821409, 0.981017, 0.0119735, 0.870095, 0.265674, 0.122687, 0.125838, 0.255999, 0.593459, 0.239397, 0.0350162, 0.743425, 0.985695, 0.291538, 0.507485, 0.272803, 0.541422, 0.653463, 0.402406, 0.627482, 0.12628, 0.749723, 0.115818, 0.35766, 0.501103, 0.606518, 0.907292, 0.489708, 0.141918, 0.211133, 0.233792, 0.138817, 0.0188088, 0.425801, 0.396851, 0.817976, 0.917922, 0.89365, 0.465329, 0.69366, 0.987449, 0.899463, 0.785092, 0.204321, 0.461154, 0.410804, 0.388639, 0.0825985, 0.135478, 0.20132, 0.422745, 0.390548, 0.489493, 0.253859, 0.482277, 0.666313, 0.839463, 0.405183, 0.55627, 0.100002, 0.895627, 0.721706, 0.628305, 0.0710177, 0.160533, 0.22906, 0.730038, 0.616375, 0.352401, 0.201681, 0.197307, 0.81351, 0.982901, 0.576121, 0.835851, 0.813159, 0.405018, 0.981582, 0.757436, 0.311719, 0.48819, 0.0826216, 0.990143, 0.699225, 0.189513, 0.504728, 0.686396, 0.527798, 0.183832, 0.843663, 0.286397, 0.694677, 0.535705, 0.0570376, 0.615431, 0.0534782, 0.415158, 0.909671, 0.215951, 0.160384, 0.56208, 0.326519, 0.0202129, 0.986293, 0.598507, 0.533435, 0.731775, 0.938914, 0.501171, 0.451895, 0.665232, 0.387985, 0.505002, 0.250808, 0.701774, 0.383783, 0.798534, 0.218294, 0.402173, 0.516096, 0.997964, 0.222554, 0.853627, 0.263625, 0.451092, 0.520025, 0.756755, 0.668227, 0.420038, 0.967938, 0.175036, 0.459307, 0.967397, 0.509015, 0.159399, 0.436078, 0.532903, 0.0923253, 0.749582, 0.427083, 0.128942, 0.766158, 0.287336, 0.570364, 0.216147, 0.477547, 0.695998, 0.547537, 0.942974, 0.0292585, 0.589732, 0.513919, 0.615032, 0.0166233, 0.381025, 0.585116, 0.438534, 0.240048, 0.656944, 0.828787, 0.260304, 0.0184595, 0.676453, 0.421382, 0.746309, 0.737324, 0.307824, 0.359532, 0.438462, 0.0557004, 0.384388, 0.351528, 0.258295, 0.677667, 0.809185, 0.0118964, 0.679571, 0.186422, 0.132335, 0.553132, 0.856355, 0.337596, 0.174414, 0.00509927, 0.44934, 0.327064, 0.790492, 0.398911, 0.574262, 0.153893, 0.514169, 0.691686, 0.858967, 0.573273, 0.668025, 0.979862, 0.893851, 0.657798, 0.0585913, 0.589984, 0.0942525, 0.372763, 0.285639, 0.14401, 0.263325, 0.463679, 0.527697, 0.446536, 0.360917, 0.384701, 0.0506526, 0.721321, 0.597825, 0.0214683, 0.11416, 0.700745, 0.79477, 0.0921258, 0.785929, 0.0259505, 0.194054, 0.305135, 0.432538, 0.599081, 0.281118, 0.5734, 0.724326, 0.400447, 0.22191, 0.438663, 0.133757, 0.0668173, 0.478327, 0.995522, 0.545614, 0.293205, 0.663079, 0.86955, 0.150913, 0.363281, 0.193324, 0.450551, 0.220092, 0.426935, 0.183398, 0.926087, 0.00888572, 0.00780228, 0.814242, 0.790096, 0.137877, 0.211914, 0.667349, 0.494069, 0.655491, 0.362551, 0.054272, 0.881904, 0.0506702, 0.676432, 0.181077, 0.573144, 0.836107, 0.773527, 0.984899, 0.23801, 0.821837, 0.941972, 0.867295, 0.123919, 0.333527, 0.285781, 0.263757, 0.904559, 0.544361, 0.509233, 0.605513, 0.663093, 0.79277, 0.62842, 0.304771, 0.783085, 0.186073, 0.43221, 0.529232, 0.0314923, 0.994417, 0.576632, 0.0437377, 0.733374, 0.932039, 0.125679, 0.451923, 0.79018, 0.477478, 0.483779, 0.532409, 0.27873, 0.875928, 0.571014, 0.583013, 0.891833, 0.620377, 0.271269, 0.330521, 0.979837, 0.700779, 0.249666, 0.951454, 0.240501, 0.749557, 0.126723, 0.347458, 0.563714, 0.825771, 0.0300354, 0.183928, 0.428681, 0.953028, 0.631215, 0.965704, 0.273817, 0.265083, 0.430852, 0.417258, 0.613196, 0.423968, 0.0680174, 0.638343, 0.363991, 0.169832, 0.0779664, 0.495797, 0.0923707, 0.0147055, 0.647875, 0.998512, 0.880195, 0.665924, 0.222713, 0.552008, 0.906499, 0.952438, 0.316669, 0.497773, 0.606909, 0.0373035, 0.973113, 0.749352, 0.672115, 0.0371679, 0.0221643, 0.153936, 0.324902, 0.116732, 0.199502, 0.453173, 0.140486, 0.857874, 0.500424, 0.561531, 0.646703, 0.0439429, 0.947895, 0.161695, 0.637395, 0.682654, 0.0346284, 0.040631, 0.429956, 0.46522, 0.801661, 0.399987, 0.0208613, 0.348847, 0.475412, 0.796777, 0.540579, 0.357489, 0.0746613, 0.213067, 0.761432, 0.0143938, 0.646772, 0.919113, 0.255361, 0.979193, 0.868147, 0.154713, 0.778923, 0.286271, 0.428898, 0.857063, 0.00948257, 0.772213, 0.907271, 0.843089, 0.230618, 0.9172, 0.943433, 0.368784, 0.0593151, 0.197673, 0.935532, 0.0678369, 0.940027, 0.08405, 0.547681, 0.507156, 0.884479, 0.719812, 0.722796, 0.819992, 0.0880767, 0.143816, 0.470205, 0.363248, 0.260774, 0.471419, 0.315017, 0.085655, 0.850258, 0.952386, 0.116359, 0.905662, 0.376133, 0.247312, 0.375566, 0.0750932, 0.750727, 0.600567, 0.38088, 0.260095, 0.122676, 0.416322, 0.344845, 0.271798, 0.864271, 0.863079, 0.57887, 0.0920866, 0.763279, 0.378082, 0.575777, 0.487278, 0.377556, 0.415196, 0.816426, 0.978372, 0.774955, 0.306551, 0.936601, 0.242495, 0.380497, 0.0283852, 0.429017, 0.187186, 0.940919, 0.868282, 0.132747, 0.427618, 0.0868148, 0.449171, 0.157487, 0.855666, 0.743791, 0.565989, 0.0300736, 0.153334, 0.286405, 0.976528, 0.542745, 0.973117, 0.327521, 0.500886, 0.362997, 0.905621, 0.530701, 0.670396, 0.264269, 0.0230654, 0.332958, 0.34225, 0.114581, 0.160618, 0.626045, 0.897061, 0.0454061, 0.463853, 0.994645, 0.455889, 0.569284, 0.538186, 0.293597, 0.854565, 0.729241, 0.868935, 0.32124, 0.680401, 0.30655, 0.976241, 0.947252, 0.43007, 0.93592, 0.813614, 0.129284, 0.299743, 0.443032, 0.111744, 0.814934, 0.126161, 0.234231, 0.42606, 0.182855, 0.49952, 0.947077, 0.519476, 0.127596, 0.58245, 0.685402, 0.323423, 0.845971, 0.170554, 0.106695, 0.247107, 0.84115, 0.538526, 0.990646, 0.750535, 0.515641, 0.666909, 0.805849, 0.375607, 0.108081, 0.706109, 0.45729, 0.852729, 0.398563, 0.633165, 0.445097, 0.88811, 0.115462, 0.391862, 0.77775, 0.662464, 0.310253, 0.65022, 0.383526, 0.866334, 0.477081, 0.750928, 0.904093, 0.955062, 0.855731, 0.381278, 0.986175, 0.119963, 0.0139481, 0.867997, 0.980113, 0.0376974, 0.67347, 0.735159, 0.289926, 0.783574, 0.384761, 0.232743, 0.298739, 0.511803, 0.0774394, 0.282291, 0.835873, 0.385259, 0.692952, 0.475552, 0.820027, 0.241047, 0.25828, 0.596372, 0.655784, 0.493115, 0.36083, 0.296977, 0.325491, 0.300083, 0.214548, 0.520312, 0.224524, 0.157033, 0.505183, 0.567012, 0.0926136, 0.709242, 0.910198, 0.941818, 0.806985, 0.578555, 0.442866, 0.74562, 0.512557, 0.889682, 0.988818, 0.245681, 0.377054, 0.954408, 0.383965, 0.188972, 0.529379, 0.815615, 0.562475, 0.847996, 0.776091, 0.151217, 0.380486, 0.713626, 0.539941, 0.260308, 0.828106, 0.842803, 0.559088, 0.369566, 0.551427, 0.158416, 0.476782, 0.966928, 0.928356, 0.501102, 0.99043, 0.0912297, 0.818995, 0.820435, 0.887529, 0.236475, 0.986218, 0.419954, 0.043222, 0.566057, 0.605133, 0.02538, 0.486661, 0.71177, 0.580676, 0.61295, 0.804704, 0.113879, 0.96885, 0.345662, 0.200206, 0.10503, 0.362518, 0.334527, 0.323805, 0.447663, 0.747838, 0.786654, 0.420119, 0.526687, 0.0287588, 0.693505, 0.423247, 0.061824, 0.887531, 0.325806, 0.00556715, 0.75787, 0.21453, 0.851873, 0.551226, 0.450655, 0.550821, 0.24018, 0.482584, 0.195766, 0.22553, 0.707355, 0.379226, 0.096144, 0.607049, 0.905306, 0.734175, 0.667554, 0.392769, 0.39463, 0.67916, 0.281361, 0.66691, 0.117686, 0.826537, 0.200226, 0.731425, 0.926141, 0.515001, 0.367618, 0.588697, 0.440898, 0.69464, 0.467509, 0.499914, 0.467499, 0.451169, 0.0231868, 0.22663, 0.457808, 0.0399817, 0.323167, 0.721905, 0.0529664, 0.169948, 0.673992, 0.466347, 0.385812, 0.785695, 0.84239, 0.319007, 0.820188, 0.234389, 0.625299, 0.0252847, 0.59125, 0.456074, 0.37046, 0.384022, 0.56234, 0.181446, 0.712361, 0.54405, 0.263049, 0.635011, 0.951016, 0.3358, 0.879353, 0.0831292, 0.0842165, 0.0232483, 0.395973, 0.785624, 0.585341, 0.567839, 0.404285, 0.29226, 0.748867, 0.393779, 0.213787, 0.149072, 0.109442, 0.736842, 0.564606, 0.331428, 0.291899, 0.675978, 0.836395, 0.706679, 0.564943, 0.12472, 0.808345, 0.30535, 0.275445, 0.298057, 0.279457, 0.97645, 0.816883, 0.914561, 0.892189, 0.77112, 0.613258, 0.783793, 0.502306, 0.205586, 0.4358, 0.340456, 0.426298, 0.313759, 0.225679, 0.438416, 0.930064, 0.882277, 0.725139, 0.54135, 0.354032, 0.632378, 0.665131, 0.910576, 0.338133, 0.413062, 0.148235, 0.4137, 0.201197, 0.927081, 0.572361, 0.142785, 0.588912, 0.599713, 0.719765, 0.108914, 0.745517, 0.978794, 0.748982, 0.349309, 0.929206, 0.549384, 0.492809, 0.258113, 0.878477, 0.953323, 0.889002, 0.495883, 0.952265, 0.322544, 0.504439, 0.978133, 0.706179, 0.357271, 0.564249, 0.532395, 0.697648, 0.760478, 0.181389, 0.159854, 0.796149, 0.102953, 0.829313, 0.579002, 0.195884, 0.929353, 0.454893, 0.330432, 0.556409, 0.226399, 0.19401, 0.781442, 0.00908038, 0.342131, 0.612928, 0.107233, 0.898847, 0.905318, 0.625553, 0.429657, 0.377211, 0.362926, 0.775476, 0.664609, 0.240606, 0.673913, 0.24566, 0.3759, 0.30294, 0.238277, 0.309649, 0.158961, 0.268136, 0.0474387, 0.0249614, 0.502213, 0.835242, 0.808086, 0.0587386, 0.0279884, 0.373568, 0.179991, 0.837421, 0.183592, 0.162894, 0.441337, 0.83694, 0.383792, 0.452136, 0.162437, 0.189275, 0.249038, 0.705957, 0.346687, 0.822571, 0.153658, 0.441246, 0.894684, 0.768269, 0.386205, 0.2928, 0.243175, 0.497614, 0.204097, 0.229398, 0.0688555, 0.72533, 0.910051, 0.751693, 0.801424, 0.357692, 0.140261, 0.576602, 0.235305, 0.351963, 0.864571, 0.848564, 0.742295, 0.301651, 0.533631, 0.139609, 0.457968, 0.903583, 0.0587152, 0.127043, 0.240497, 0.850801, 0.730677, 0.443789, 0.243372, 0.705738, 0.602757, 0.767775, 0.335897, 0.0712162, 0.448794, 0.47651, 0.76841, 0.237581, 0.765044, 0.52708, 0.948902, 0.666026, 0.963973, 0.939841, 0.848581, 0.029732, 0.930066, 0.490798, 0.631854, 0.984634, 0.742517, 0.200003, 0.625618, 0.678956, 0.584002, 0.71094, 0.523336, 0.681997, 0.361293, 0.812933, 0.459831, 0.350654, 0.946357, 0.854295, 0.798742, 0.473338, 0.288282, 0.117292, 0.583824, 0.889357, 0.0131608, 0.500116, 0.628454, 0.0224112, 0.348022, 0.719283, 0.90583, 0.499719, 0.663154, 0.000967554, 0.170538, 0.0428783, 0.896685, 0.643987, 0.273411, 0.78688, 0.396023, 0.626472, 0.215756, 0.844723, 0.872213, 0.410202, 0.878054, 0.674196, 0.287355, 0.492367, 0.137073, 0.0237426, 0.388965, 0.629704, 0.687775, 0.334195, 0.32888, 0.442265, 0.909167, 0.437461, 0.372817, 0.885616, 0.874001, 0.809981, 0.651169, 0.530512, 0.917954, 0.441524, 0.762291, 0.880403, 0.737363, 0.708009, 0.600234, 0.528857, 0.968567, 0.468732, 0.720534, 0.724765, 0.67854, 0.835982, 0.405137, 0.197206, 0.142327, 0.867971, 0.920047, 0.690973, 0.339469, 0.633086, 0.176185, 0.776793, 0.322005, 0.182915, 0.00502998, 0.148064, 0.906332, 0.267127, 0.705925, 0.898904, 0.835066, 0.132771, 0.7174, 0.54423, 0.392887, 0.884388, 0.742055, 0.816903, 0.322242, 0.845872, 0.465193, 0.209498, 0.795287, 0.691878, 0.790636, 0.693203, 0.643963, 0.15282, 0.984348, 0.570035, 0.466674, 0.152595, 0.802262, 0.478275, 0.514444, 0.44056, 0.33875, 0.539541, 0.671539, 0.967589, 0.253503, 0.302934, 0.410017, 0.210206, 0.580143, 0.0563475, 0.693325, 0.944428, 0.084813, 0.9124, 0.615986, 0.939101, 0.800773, 0.880769, 0.256613, 0.413419, 0.966736, 0.710748, 0.21007, 0.456469, 0.160282, 0.597707, 0.239246, 0.177383, 0.537376, 0.160526, 0.316377, 0.790776, 0.777723, 0.470773, 0.843404, 0.0261224, 0.811399, 0.038649, 0.818928, 0.0582613, 0.674766, 0.508751, 0.898782, 0.0919244, 0.75635, 0.499773, 0.365075, 0.750378, 0.127403, 0.281425, 0.909092, 0.838663, 0.851529, 0.564507, 0.381524, 0.963769, 0.499829, 0.132106, 0.561772, 0.913486, 0.840092, 0.393176, 0.648487, 0.519296, 0.664618, 0.268991, 0.252152, 0.283572, 0.673352, 0.27139, 0.503949, 0.993029, 0.413596, 0.24433, 0.23055, 0.704351, 0.0230931, 0.84791, 0.00476671, 0.818885, 0.454821, 0.726305, 0.767912, 0.817841, 0.999974, 0.590962, 0.977082, 0.968455, 0.519364, 0.514248, 0.971315, 0.951993, 0.472547, 0.700405, 0.549309, 0.552369, 0.0456289, 0.585039, 0.854381, 0.0383671, 0.141601, 0.66116, 0.790092, 0.912461, 0.044778, 0.666423, 0.461235, 0.540005, 0.817538, 0.601107, 0.411045, 0.205044, 0.733088, 0.00062296, 0.36983, 0.138776, 0.937605, 0.193134, 0.56797, 0.544194, 0.231138, 0.725802, 0.480193, 0.575373, 0.484463, 0.975497, 0.0100739, 0.968146, 0.768475, 0.635657, 0.435189, 0.629053, 0.221428, 0.232516, 0.306875, 0.836148, 0.796361, 0.100233, 0.587085, 0.0760022, 0.55652, 0.726717, 0.0816417, 0.139665, 0.528876, 0.896761, 0.571698, 0.11319, 0.56549, 0.345951, 0.0661693, 0.845047, 0.890938, 0.412432, 0.996887, 0.0935362, 0.576111, 0.872789, 0.456589, 0.026871, 0.30534, 0.327539, 0.982649, 0.518664, 0.522286, 0.726954, 0.661363, 0.586535, 0.462767, 0.511343, 0.533509, 0.43612, 0.146776, 0.151319, 0.584294, 0.239675, 0.826119, 0.280354, 0.514849, 0.519899, 0.389866, 0.577378, 0.839103, 0.0943049, 0.961246, 0.188205, 0.096847, 0.0871042, 0.622268, 0.821903, 0.360083, 0.903953, 0.497596, 0.478317, 0.765328, 0.795846, 0.61934, 0.447344, 0.794528, 0.887741, 0.0749957, 0.110563, 0.60998, 0.329275, 0.516203, 0.292358, 0.592168, 0.125333, 0.837721, 0.222245, 0.566869, 0.626346, 0.0951495, 0.821676, 0.0171195, 0.468955, 0.843058, 0.0427089, 0.290602, 0.531874, 0.675561, 0.759463, 0.776708, 0.97121, 0.552055, 0.91365, 0.795505, 0.432957, 0.945928, 0.629969, 0.706315, 0.10789, 0.631945, 0.560697, 0.286696, 0.847755, 0.5106, 0.616399, 0.458012, 0.66941, 0.394222, 0.441996, 0.931881, 0.6098, 0.814459, 0.801516, 0.479609, 0.916285, 0.491031, 0.52531, 0.630179, 0.707767, 0.18495, 0.11281, 0.217438, 0.649659, 0.257633, 0.190622, 0.461525, 0.53659, 0.548985, 0.935432, 0.468119, 0.528654, 0.288002, 0.86274, 0.583306, 0.837442, 0.744019, 0.00205006, 0.101775, 0.117706, 0.39285, 0.812016, 0.718513, 0.608292, 0.369581, 0.509854, 0.841733, 0.589126, 0.0334576, 0.886984, 0.903502, 0.134757, 0.0234959, 0.621053, 0.833687, 0.908372, 0.355786, 0.594968, 0.278546, 0.0616916, 0.991928, 0.816218, 0.791833, 0.934049, 0.865326, 0.0253704, 0.349297, 0.663226, 0.357989, 0.680557, 0.802511, 0.429642, 0.883689, 0.783824, 0.67522, 0.697438, 0.120879, 0.729575, 0.00486169, 0.942129, 0.125739, 0.663795, 0.00914756, 0.711479, 0.998232, 0.822952, 0.473205, 0.335837, 0.136472, 0.609196, 0.318704, 0.161532, 0.568412, 0.0233597, 0.906629, 0.873049, 0.731596, 0.613444, 0.0593645, 0.63478, 0.814573, 0.0340471, 0.0763958, 0.363773, 0.790524, 0.807419, 0.584907, 0.397459, 0.869917, 0.147044, 0.169051, 0.713994, 0.455301, 0.993618, 0.736364, 0.429536, 0.233719, 0.660053, 0.65125, 0.12594, 0.0831675, 0.784556, 0.382005, 0.601863, 0.567812, 0.312718, 0.976143, 0.853011, 0.610176, 0.700731, 0.0871456, 0.338224, 0.885135, 0.504926, 0.45179, 0.849376, 0.95661, 0.655126, 0.70496, 0.805156, 0.462604, 0.592633, 0.390113, 0.118923, 0.637586, 0.025129, 0.62638, 0.689463, 0.773287, 0.531734, 0.795471, 0.358706, 0.262297, 0.200212, 0.538472, 0.111887, 0.100556, 0.480524, 0.392042, 0.385916, 0.316496, 0.702092, 0.3041, 0.388474, 0.0657167, 0.983429, 0.138827, 0.750319, 0.257262, 0.58212, 0.902273, 0.455071, 0.864611, 0.882043, 0.0805284, 0.328308, 0.292215, 0.45982, 0.410047, 0.304071, 0.930239, 0.563922, 0.238724, 0.901428, 0.395368, 0.748328, 0.863523, 0.699313, 0.14609, 0.802765, 0.725857, 0.111176, 0.778348, 0.100649, 0.934328, 0.626439, 0.0632857, 0.863918, 0.300232, 0.211113, 0.965086, 0.526931, 0.547023, 0.961509, 0.438035, 0.219677, 0.223246, 0.467086, 0.763893, 0.322219, 0.332271, 0.701771, 0.0221609, 0.48011, 0.331815, 0.525376, 0.0581144, 0.12665, 0.568667, 0.444604, 0.652657, 0.623396, 0.79662, 0.00975556, 0.891481, 0.496778, 0.352577, 0.720776, 0.70058, 0.187884, 0.388072, 0.274114, 0.114906, 0.778608, 0.194883, 0.909946, 0.997911, 0.0186819, 0.374863, 0.787027, 0.512095, 0.500573, 0.120213, 0.358705, 0.215354, 0.251092, 0.562016, 0.448529, 0.171838, 0.0396383, 0.514233, 0.513974, 0.791807, 0.830635, 0.649071, 0.0641319, 0.968229, 0.580936, 0.14864, 0.574407, 0.0467385, 0.3524, 0.582797, 0.764113, 0.192708, 0.168954, 0.591749, 0.614163, 0.199349, 0.340908, 0.985934, 0.62084, 0.968246, 0.57038, 0.92467, 0.726849, 0.624844, 0.665523, 0.886327, 0.132568, 0.498797, 0.425351, 0.477744, 0.935619, 0.260727, 0.946411, 0.905412, 0.481464, 0.609082, 0.132837, 0.313348, 0.812787, 0.489934, 0.126657, 0.567723, 0.197598, 0.0267277, 0.457983, 0.404278, 0.983718, 0.0943151, 0.819164, 0.519075, 0.889077, 0.910087, 0.968704, 0.0729851, 0.696807, 0.0655221, 0.750525, 0.891697, 0.965248, 0.493765, 0.305968, 0.111152, 0.913344, 0.52132, 0.215332, 0.446812, 0.642562, 0.316112, 0.634171, 0.206858, 0.412666, 0.783655, 0.223874, 0.214292, 0.228773, 0.0170766, 0.854296, 0.501929, 0.362381, 0.89997, 0.863746, 0.951309, 0.745953, 0.301861, 0.223935, 0.746708, 0.0834991, 0.828797, 0.90307, 0.715688, 0.218957, 0.960773, 0.46454, 0.0591914, 0.66914, 0.398428, 0.118712, 0.0315554, 0.485259, 0.378371, 0.185238, 0.523267, 0.902114, 0.437574, 0.784998, 0.878045, 0.578451, 0.64194, 0.808302, 0.337437, 0.507242, 0.834155, 0.378338, 0.0677763, 0.635153, 0.0311098, 0.581117, 0.0917316, 0.494079, 0.20769, 0.0238931, 0.0650699, 0.0744345, 0.705953, 0.284797, 0.453965, 0.365721, 0.905599, 0.332815, 0.137703, 0.492798, 0.431644, 0.230892, 0.0976786, 0.497994, 0.849518, 0.510788, 0.0512111, 0.413285, 0.981149, 0.799329, 0.912977, 0.411737, 0.175266, 0.0162868, 0.437307, 0.827285, 0.998476, 0.623463, 0.659742, 0.396828, 0.618946, 0.107416, 0.494369, 0.361829, 0.607361, 0.0737961, 0.69223, 0.35132, 0.200138, 0.520147, 0.656058, 0.327483, 0.846206, 0.425823, 0.8901, 0.15337, 0.628552, 0.126219, 0.585266, 0.909236, 0.278323, 0.129568, 0.0375425, 0.613099, 0.827206, 0.307324, 0.329171, 0.715313, 0.336085, 0.0274621, 0.198092, 0.938599, 0.0772011, 0.294892, 0.512744, 0.089627, 0.0421751, 0.0118223, 0.31073, 0.770852, 0.536522, 0.059069, 0.56233, 0.088411, 0.076111, 0.031168, 0.631453, 0.44039, 0.943973, 0.576273, 0.20395, 0.135953, 0.0106208, 0.216673, 0.931502, 0.0495763, 0.597698, 0.597646, 0.491867, 0.248687, 0.243881, 0.0237097, 0.694195, 0.786182, 0.981708, 0.275827, 0.323773, 0.443118, 0.674906, 0.320792, 0.360525, 0.873703, 0.695221, 0.76985, 0.790831, 0.86997, 0.045759, 0.516379, 0.743353, 0.0742389, 0.964091, 0.296322, 0.556038, 0.940668, 0.551205, 0.358508, 0.657447, 0.799673, 0.492495, 0.284206, 0.991219, 0.660055, 0.837689, 0.377476, 0.432817, 0.226188, 0.475938, 0.378378, 0.291231, 0.716247, 0.509335, 0.0457365, 0.976215, 0.043596, 0.159073, 0.329412, 0.087858, 0.764277, 0.421929, 0.4978, 0.0620849, 0.623438, 0.237322, 0.297502, 0.86469, 0.51249, 0.183782, 0.379948, 0.574941, 0.248499, 0.183998, 0.934304, 0.15599, 0.537776, 0.822229, 0.802189, 0.655585, 0.00750821, 0.0626426, 0.292754, 0.498728, 0.728805, 0.657789, 0.843344, 0.850275, 0.223317, 0.922173, 0.407713, 0.0507778, 0.635838, 0.727573, 0.961397, 0.106634, 0.938564, 0.71468, 0.798185, 0.84374, 0.696797, 0.485912, 0.960621, 0.0816286, 0.17049, 0.714688, 0.0476964, 0.135115, 0.153788, 0.2184, 0.267659, 0.0849586, 0.189475, 0.130633, 0.876729, 0.455935, 0.641272, 0.0132095, 0.975701, 0.777732, 0.271581, 0.129144, 0.852597, 0.677346, 0.71834, 0.160533, 0.12054, 0.0630788, 0.972361, 0.843149, 0.816396, 0.275598, 0.64788, 0.208262, 0.127042, 0.702926, 0.0505036, 0.873385, 0.221025, 0.984649, 0.577352, 0.639605, 0.322605, 0.250405, 0.984464, 0.818028, 0.672574, 0.621214, 0.0918164, 0.12095, 0.252448, 0.710752, 0.469303, 0.6018, 0.733434, 0.52322, 0.410691, 0.385672, 0.201854, 0.0862988, 0.0298816, 0.370035, 0.219729, 0.0726707, 0.0866237, 0.316337, 0.876509, 0.477838, 0.920677, 0.826762, 0.211238, 0.0135761, 0.228637, 0.844486, 0.962545, 0.940982, 0.0631598, 0.323485, 0.0861547, 0.841514, 0.375765, 0.467707, 0.336049, 0.674912, 0.07832, 0.89714, 0.88253, 0.288133, 0.0825826, 0.130463, 0.289422, 0.382404, 0.352322, 0.945798, 0.788903, 0.152637, 0.382991, 0.878203, 0.125118, 0.468765, 0.566938, 0.791704, 0.752722, 0.0589502, 0.169835, 0.432356, 0.457663, 0.497164, 0.624532, 0.949889, 0.228649, 0.344103, 0.295122, 0.0317235, 0.565761, 0.0469677, 0.963813, 0.671784, 0.52826, 0.127347, 0.251045, 0.578931, 0.242764, 0.00486782, 0.188777, 0.792218, 0.791818, 0.907704, 0.0898959, 0.759028, 0.36183, 0.901095, 0.755006, 0.33788, 0.904409, 0.300434, 0.0996702, 0.177243, 0.0702578, 0.935815, 0.20728, 0.418299, 0.602555, 0.895595, 0.469956, 0.245849, 0.0353629, 0.534024, 0.422565, 0.931913, 0.675508, 0.376668, 0.63693, 0.95662, 0.877581, 0.577555, 0.0498293, 0.31831, 0.520131, 0.53852, 0.693178, 0.45666, 0.227345, 0.66616, 0.342917, 0.13955, 0.878439, 0.191593, 0.154664, 0.328999, 0.342149, 0.383607, 0.936534, 0.963995, 0.699574, 0.527155, 0.636315, 0.312233, 0.203408, 0.929949, 0.0791683, 0.61232, 0.319537, 0.955306, 0.509218, 0.114131, 0.869919, 0.035276, 0.818544, 0.293381, 0.481256, 0.349804, 0.098767, 0.84718, 0.788674, 0.149179, 0.338152, 0.108682, 0.0449744, 0.138881, 0.00605887, 0.811871, 0.520997, 0.886976, 0.127615, 0.0331085, 0.942922, 0.614076, 0.0759743, 0.390041, 0.529303, 0.511758, 0.895567, 0.948853, 0.433576, 0.17309, 0.652144, 0.0288429, 0.342657, 0.454861, 0.646342, 0.753379, 0.708448, 0.632343, 0.840109, 0.389132, 0.136653, 0.190046, 0.597401, 0.155061, 0.521456, 0.639845, 0.355061, 0.206304, 0.124109, 0.289374, 0.819008, 0.610052, 0.00159884, 0.605796, 0.0967719, 0.966663, 0.205166, 0.298949, 0.567913, 0.208008, 0.793465, 0.655996, 0.794862, 0.436975, 0.935848, 0.61181, 0.338816, 0.737157, 0.712815, 0.253938, 0.530953, 0.803682, 0.275016, 0.290807, 0.858666, 0.826177, 0.119083, 0.776663, 0.504533, 0.322858, 0.427753, 0.745725, 0.639632, 0.650729, 0.575988, 0.393773, 0.449192, 0.310235, 0.150806, 0.692183, 0.235024, 0.983001, 0.314622, 0.945062, 0.0764785, 0.61788, 0.906432, 0.881992, 0.438869, 0.400672, 0.658858, 0.0604561, 0.926554, 0.426711, 0.602234, 0.104497, 0.199815, 0.103513, 0.662379, 0.226066, 0.0101929, 0.742598, 0.652809, 0.10637, 0.153118, 0.140593, 0.168109, 0.179682, 0.00302799, 0.186447, 0.32944, 0.302015, 0.898168, 0.570514, 0.691865, 0.663872, 0.99749, 0.91487, 0.758193, 0.387378, 0.0602731, 0.227863, 0.370452, 0.775759, 0.708117, 0.711626, 0.643531, 0.228441, 0.13471, 0.747542, 0.916811, 0.815666, 0.0417707, 0.414724, 0.667125, 0.867545, 0.703499, 0.100023, 0.893888, 0.923414, 0.157799, 0.507501, 0.823401, 0.38602, 0.591168, 0.711305, 0.998878, 0.605571, 0.204845, 0.97374, 0.197952, 0.257173, 0.729155, 0.666006, 0.497514, 0.0428708, 0.752168, 0.154699, 0.828572, 0.212338, 0.30994, 0.707759, 0.82363, 0.676404, 0.137495, 0.0627531, 0.232994, 0.143842, 0.704448, 0.546854, 0.982679, 0.277961, 0.79428, 0.163905, 0.207904, 0.86609, 0.855661, 0.152206, 0.960195, 0.125017, 0.142374, 0.450204, 0.710121, 0.246666, 0.588894, 0.981368, 0.527033, 0.394608, 0.349601, 0.221471, 0.293904, 0.336037, 0.00259696, 0.699489, 0.161962, 0.571639, 0.892842, 0.914197, 0.28676, 0.281609, 0.994657, 0.639364, 0.603787, 0.539887, 0.785149, 0.460243, 0.37672, 0.132444, 0.887442, 0.866378, 0.232449, 0.72669, 0.755273, 0.430215, 0.194615, 0.131255, 0.566025, 0.770472, 0.722037, 0.164613, 0.168985, 0.913707, 0.711705, 0.918756, 0.322963, 0.49093, 0.579027, 0.865533, 0.769857, 0.313123, 0.805174, 0.448557, 0.178727, 0.649516, 0.264805, 0.373405, 0.949695, 0.4949, 0.321312, 0.368868, 0.498668, 0.772344, 0.232678, 0.791155, 0.741142, 0.958026, 0.561081, 0.388229, 0.948016, 0.595783, 0.920074, 0.0243532, 0.585051, 0.976676, 0.583785, 0.217646, 0.374358, 0.667096, 0.192653, 0.627001, 0.890845, 0.139863, 0.531645, 0.0704259, 0.46927, 0.773745, 0.934911, 0.164283, 0.934369, 0.782979, 0.453403, 0.0303334, 0.426107, 0.93287, 0.9735, 0.154466, 0.112923, 0.350711, 0.432676, 0.323113, 0.50943, 0.630948, 0.137959, 0.930709, 0.853858, 0.617902, 0.752889, 0.818451, 0.204078, 0.445972, 0.883571, 0.29343, 0.504448, 0.643829, 0.380958, 0.683129, 0.902781, 0.30215, 0.717228, 0.0341791, 0.335812, 0.0400368, 0.506984, 0.682838, 0.658386, 0.396279, 0.481036, 0.597432, 0.695264, 0.498466, 0.57108, 0.576224, 0.237881, 0.537692, 0.669681, 0.861073, 0.339143, 0.128874, 0.758498, 0.590967, 0.609758, 0.1918, 0.787835, 0.0733111, 0.386826, 0.270046, 0.550001, 0.854969, 0.185734, 0.714339, 0.316777, 0.607318, 0.0160249, 0.640761, 0.913706, 0.24314, 0.24657, 0.645394, 0.612006, 0.820106, 0.640932, 0.749067, 0.188238, 0.760935, 0.215138, 0.671003, 0.662455, 0.222162, 0.33339, 0.92759, 0.659331, 0.74537, 0.721369, 0.534219, 0.88334, 0.0572954, 0.79585, 0.276496, 0.505335, 0.819837, 0.689644, 0.70926, 0.59755, 0.901053, 0.900456, 0.0376507, 0.121934, 0.354706, 0.381737, 0.479468, 0.355909, 0.174316, 0.181837, 0.313877, 0.334222, 0.207634, 0.327185, 0.726592, 0.700012, 0.00398625, 0.358816, 0.798144, 0.305795, 0.422172, 0.596942, 0.526189, 0.305732, 0.0507706, 0.949991, 0.699761, 0.888091, 0.196203, 0.276968, 0.358945, 0.87025, 0.541177, 0.239796, 0.89137, 0.934846, 0.47618, 0.019426, 0.839516, 0.251267, 0.75769, 0.768516, 0.519644, 0.250475, 0.818662, 0.291886, 0.019663, 0.425612, 0.580393, 0.885728, 0.113159, 0.653428, 0.550446, 0.23838, 0.551808, 0.959538, 0.841172, 0.848139, 0.65274, 0.648367, 0.893737, 0.865221, 0.0342293, 0.271677, 0.65207, 0.674937, 0.374037, 0.27464, 0.0804224, 0.26228, 0.945206, 0.388134, 0.699125, 0.324448, 0.753384, 0.732933, 0.371485, 0.695354, 0.32375, 0.191551, 0.0347926, 0.0962695, 0.212859, 0.485581, 0.387944, 0.854283, 0.976668, 0.266977, 0.172495, 0.579628, 0.894021, 0.390852, 0.485798, 0.881021, 0.408174, 0.137029, 0.0635737, 0.740292, 0.0122054, 0.716796, 0.287173, 0.530409, 0.595257, 0.18799, 0.335254, 0.958158, 0.436372, 0.0948741, 0.374735, 0.476342, 0.891142, 0.347581, 0.22424, 0.112034, 0.865894, 0.327254, 0.570148, 0.055232, 0.15246, 0.812931, 0.187759, 0.158984, 0.297219, 0.0251392, 0.341505, 0.658094, 0.612514, 0.381531, 0.887536, 0.708922, 0.951087, 0.971615, 0.257677, 0.160405, 0.738208, 0.385831, 0.0891363, 0.0535125, 0.883081, 0.226629, 0.895362, 0.0838472, 0.606598, 0.617891, 0.942248, 0.0165184, 0.367718, 0.841899, 0.120951, 0.668887, 0.610117, 0.548597, 0.303294, 0.97241, 0.217284, 0.331522, 0.155917, 0.955807, 0.140771, 0.0817281, 0.152859, 0.0663303, 0.588881, 0.45401, 0.529076, 0.728947, 0.14698, 0.417969, 0.572019, 0.618527, 0.0167997, 0.0227421, 0.730966, 0.265919, 0.867031, 0.206636, 0.267057, 0.142021, 0.977823, 0.939898, 0.755495, 0.0845602, 0.247048, 0.772434, 0.236113, 0.332354, 0.133507, 0.955107, 0.980707, 0.235108, 0.928933, 0.826946, 0.893378, 0.141928, 0.329898, 0.493367, 0.370846, 0.143658, 0.00202746, 0.679575, 0.585135, 0.714419, 0.36591, 0.0545446, 0.107256, 0.422153, 0.190365, 0.621623, 0.305493, 0.808021, 0.393654, 0.0540119, 0.86019, 0.292196, 0.790964, 0.107455, 0.340372, 0.617566, 0.853727, 0.0310108, 0.720649, 0.35964, 0.0115787, 0.0613885, 0.879281, 0.152947, 0.786291, 0.220739, 0.514787, 0.308396, 0.417215, 0.971446, 0.747835, 0.513741, 0.239153, 0.626783, 0.404352, 0.485722, 0.548899, 0.162911, 0.520282, 0.671437, 0.555578, 0.357543, 0.731693, 0.928549, 0.905165, 0.313252, 0.961054, 0.842681, 0.559669, 0.63635, 0.461326, 0.411086, 0.530294, 0.140501, 0.87088, 0.0101158, 0.547086, 0.175221, 0.540607, 0.500827, 0.937612, 0.323788, 0.274769, 0.0202466, 0.314251, 0.841809, 0.41639, 0.981335, 0.550772, 0.0144147, 0.806042, 0.444206, 0.373938, 0.694654, 0.869487, 0.328589, 0.325989, 0.211454, 0.733658, 0.280569, 0.967328, 0.436483, 0.175311, 0.493676, 0.277896, 0.827926, 0.639886, 0.901391, 0.596811, 0.691325, 0.836249, 0.25949, 0.623802, 0.959036, 0.139302, 0.126115, 0.695212, 0.625436, 0.823793, 0.33582, 0.0311073, 0.263335, 0.360626, 0.500309, 0.624226, 0.714741, 0.951524, 0.500566, 0.226305, 0.753058, 0.660043, 0.637268, 0.247431, 0.644939, 0.589004, 0.135806, 0.549984, 0.834647, 0.630019, 0.146096, 0.930873, 0.95415, 0.853141, 0.958451, 0.863476, 0.217199, 0.59804, 0.272421, 0.960765, 0.416773, 0.0416794, 0.565417, 0.898356, 0.439586, 0.632754, 0.523673, 0.321099, 0.776491, 0.690107, 0.283122, 0.0153155, 0.0767199, 0.316719, 0.993109, 0.508936, 0.582169, 0.321623, 0.844378, 0.475753, 0.796866, 0.453595, 0.713937, 0.917951, 0.486903, 0.485272, 0.566186, 0.840784, 0.547778, 0.197835, 0.707853, 0.0653836, 0.342131, 0.59209, 0.584128, 0.963081, 0.354824, 0.71979, 0.148018, 0.778586, 0.135654, 0.0463006, 0.560683, 0.213356, 0.394918, 0.51796, 0.287214, 0.897186, 0.717927, 0.431383, 0.935475, 0.588724, 0.156565, 0.721329, 0.0595823, 0.46983, 0.156027, 0.0231713, 0.133631, 0.0109753, 0.532869, 0.349927, 0.487912, 0.358322, 0.139167, 0.598273, 0.679047, 0.184063, 0.519092, 0.625679, 0.60103, 0.783507, 0.311387, 0.177798, 0.0633276, 0.360676, 0.457058, 0.563934, 0.967651, 0.0826769, 0.00685052, 0.458695, 0.694655, 0.600191, 0.698508, 0.827872, 0.151557, 0.960818, 0.0786889, 0.761128, 0.903934, 0.322106, 0.246907, 0.535726, 0.816486, 0.797461, 0.724812, 0.313288, 0.209304, 0.690814, 0.00881371, 0.820364, 0.647531, 0.158463, 0.295231, 0.75686, 0.52148, 0.925354, 0.996306, 0.994077, 0.950929, 0.668927, 0.193741, 0.711666, 0.754405, 0.205479, 0.0333758, 0.881362, 0.596171, 0.0336671, 0.268492, 0.0564118, 0.608191, 0.25073, 0.504501, 0.535716, 0.694344, 0.35986, 0.514343, 0.651793, 0.86104, 0.575599, 0.88146, 0.536594, 0.224893, 0.931368, 0.645742, 0.0264881, 0.157655, 0.661512, 0.293198, 0.779997, 0.896589, 0.499772, 0.0891904, 0.530555, 0.688447, 0.907232, 0.556538, 0.680706, 0.912112, 0.693081, 0.159184, 0.675044, 0.742653, 0.563608, 0.856565, 0.188295, 0.807417, 0.237631, 0.62816, 0.61084, 0.554166, 0.0068842, 0.444902, 0.381657, 0.606606, 0.346843, 0.927536, 0.216415, 0.960973, 0.196831, 0.723094, 0.915932, 0.408041, 0.936323, 0.807819, 0.675618, 0.636721, 0.270937, 0.735941, 0.189361, 0.315193, 0.245696, 0.664268, 0.735748, 0.173677, 0.809368, 0.913082, 0.541734, 0.178922, 0.0545169, 0.649474, 0.88468, 0.0566645, 0.177642, 0.479071, 0.659481, 0.0257169, 0.907861, 0.479456, 0.152425, 0.302627, 0.0409482, 0.34204, 0.85816, 0.526716, 0.773709, 0.480385, 0.498402, 0.488388, 0.175127, 0.413145, 0.658467, 0.869233, 0.750651, 0.708544, 0.557844, 0.680534, 0.551274, 0.636, 0.616331, 0.994595, 0.533047, 0.46812, 0.83225, 0.844266, 0.204587, 0.641098, 0.332966, 0.136553, 0.658664, 0.337022, 0.773921, 0.472624, 0.859956, 0.426666, 0.283833, 0.461272, 0.809071, 0.628312, 0.630704, 0.317496, 0.166126, 0.892486, 0.00430007, 0.00942372, 0.751673, 0.632624, 0.390288, 0.363411, 0.243234, 0.684022, 0.350832, 0.0353484, 0.750161, 0.705702, 0.537362, 0.41485, 0.331047, 0.997107, 0.784934, 0.338367, 0.819223, 0.739058, 0.360845, 0.32228, 0.304302, 0.964012, 0.813109, 0.264232, 0.280438, 0.46333, 0.0201669, 0.595788, 0.975322, 0.873393, 0.126217, 0.60345, 0.286267, 0.67071, 0.820844, 0.460882, 0.734792, 0.306117, 0.706839, 0.998932, 0.805255, 0.725007, 0.395518, 0.687883, 0.51383, 0.01043, 0.420077, 0.720032, 0.24608, 0.584036, 0.248156, 0.217733, 0.197825, 0.000519127, 0.898562, 0.083093, 0.978477, 0.144212, 0.553447, 0.00280658, 0.108937, 0.0422978, 0.812926, 0.208478, 0.458945, 0.645374, 0.431019, 0.052305, 0.110701, 0.484866, 0.388538, 0.975449, 0.32165, 0.768631, 0.341433, 0.162662, 0.495283, 0.313763, 0.76239, 0.247348, 0.588679, 0.747693, 0.18162, 0.866697, 0.887435, 0.43091, 0.185098, 0.650646, 0.96517, 0.764861, 0.208918, 0.758799, 0.671678, 0.828623, 0.851287, 0.945618, 0.170334, 0.633327, 0.379662, 0.874017, 0.0534979, 0.44164, 0.932428, 0.0312905, 0.406336, 0.228884, 0.122527, 0.483334, 0.731855, 0.734141, 0.887326, 0.942772, 0.445553, 0.828676, 0.103279, 0.161905, 0.678867, 0.148354, 0.887371, 0.617493, 0.958594, 0.501664, 0.528139, 0.973888, 0.347961, 0.448014, 0.335346, 0.697505, 0.787289, 0.0700397, 0.106526, 0.415613, 0.0440243, 0.120018, 0.267311, 0.581838, 0.803008, 0.57569, 0.314399, 0.761148, 0.0271103, 0.948228, 0.159833, 0.264391, 0.824001, 0.767562, 0.919574, 0.106003, 0.417103, 0.748968, 0.406296, 0.926414, 0.673791, 0.932979, 0.0938298, 0.813315, 0.861851, 0.302881, 0.557386, 0.276823, 0.0363473, 0.326655, 0.92094, 0.117535, 0.608588, 0.751379, 0.659397, 0.922751, 0.295826, 0.662205, 0.385391, 0.864506, 0.20537, 0.336669, 0.522039, 0.983507, 0.817523, 0.317454, 0.539499, 0.101561, 0.822734, 0.176609, 0.0133603, 0.836252, 0.968958, 0.146352, 0.300826, 0.565188, 0.57764, 0.153698, 0.967762, 0.717343, 0.865264, 0.125627, 0.318489, 0.978283, 0.637769, 0.451065, 0.987542, 0.596472, 0.552366, 0.647461, 0.863899, 0.817172, 0.60458, 0.563881, 0.261542, 0.605088, 0.267668, 0.858997, 0.062567, 0.163623, 0.541057, 0.152194, 0.321293, 0.150754, 0.706254, 0.309005, 0.510549, 0.237623, 0.990975, 0.398258, 0.622684, 0.500228, 0.689494, 0.937762, 0.231227, 0.796004, 0.249561, 0.662257, 0.175869, 0.940583, 0.11868, 0.108467, 0.00355987, 0.801821, 0.960053, 0.206508, 0.0319452, 0.21876, 0.0320969, 0.690034, 0.894622, 0.377359, 0.987851, 0.841586, 0.166087, 0.466118, 0.36914, 0.588008, 0.166193, 0.243228, 0.0962444, 0.914416, 0.112919, 0.865626, 0.917752, 0.18967, 0.495992, 0.409698, 0.956721, 0.655777, 0.366935, 0.451237, 0.0336591, 0.597537, 0.729895, 0.933683, 0.747495, 0.242842, 0.733821, 0.325877, 0.573726, 0.283331, 0.437443, 0.77622, 0.644359, 0.210571, 0.82264, 0.173423, 0.236414, 0.24517, 0.362943, 0.715997, 0.482509, 0.241853, 0.827222, 0.666046, 0.626988, 0.246454, 0.568862, 0.972462, 0.708927, 0.129856, 0.597723, 0.97496, 0.413029, 0.337928, 0.943675, 0.653626, 0.972777, 0.598935, 0.0566712, 0.876356, 0.614742, 0.849901, 0.316001, 0.161447, 0.853611, 0.00645767, 0.606836, 0.747936, 0.125026, 0.125517, 0.84846, 0.4219, 0.910054, 0.259172, 0.73551, 0.908055, 0.800021, 0.613516, 0.827135, 0.4591, 0.385619, 0.702226, 0.815595, 0.274222, 0.342133, 0.159873, 0.698813, 0.242246, 0.747493, 0.825599, 0.342742, 0.571876, 0.618704, 0.0520652, 0.0488784, 0.951388, 0.827011, 0.257575, 0.899737, 0.675098, 0.786007, 0.947872, 0.220126, 0.394217, 0.230291, 0.815844, 0.530422, 0.920339, 0.563101, 0.328669, 0.0554478, 0.625222, 0.976902, 0.224994, 0.444574, 0.862091, 0.738029, 0.535614, 0.410976, 0.131416, 0.152513, 0.433533, 0.363121, 0.777556, 0.0393402, 0.77959, 0.646262, 0.637031, 0.455674, 0.249158, 0.608989, 0.466823, 0.760638, 0.667691, 0.789573, 0.7937, 0.0611302, 0.544423, 0.0422076, 0.402138, 0.87025, 0.69898, 0.795973, 0.0644478, 0.311235, 0.420594, 0.548076, 0.660818, 0.437931, 0.598268, 0.640167, 0.0306512, 0.709823, 0.504726, 0.138497, 0.815641, 0.761596, 0.601683, 0.30541, 0.28802, 0.223101, 0.049064, 0.378858, 0.312118, 0.673797, 0.285427, 0.0145132, 0.77588, 0.842179, 0.702699, 0.872948, 0.531603, 0.606845, 0.25431, 0.585463, 0.941533, 0.306215, 0.583604, 0.271493, 0.108136, 0.372856, 0.399096, 0.237461, 0.74132, 0.472761, 0.365717, 0.939339, 0.0739496, 0.57482, 0.34303, 0.221022, 0.790876, 0.11543, 0.779532, 0.0456825, 0.140028, 0.310828, 0.944378, 0.39217, 0.619247, 0.385917, 0.540877, 0.949759, 0.472127, 0.827582, 0.410104, 0.253109, 0.526111, 0.682869, 0.266621, 0.227526, 0.784668, 0.712683, 0.760375, 0.214349, 0.967766, 0.239999, 0.172715, 0.250994, 0.993223, 0.730586, 0.324532, 0.207587, 0.665345, 0.395415, 0.181013, 0.537802, 0.34828, 0.162476, 0.480095, 0.876674, 0.439372, 0.785432, 0.0203158, 0.570823, 0.963498, 0.402567, 0.909907, 0.606901, 0.32069, 0.168083, 0.0552018, 0.171833, 0.883225, 0.911166, 0.989238, 0.643792, 0.0876833, 0.497366, 0.0391143, 0.982985, 0.678125, 0.740735, 0.391678, 0.83025, 0.8895, 0.706485, 0.162528, 0.536452, 0.575643, 0.192419, 0.0820395, 0.462196, 0.904244, 0.432438, 0.371109, 0.0141529, 0.335974, 0.273617, 0.28088, 0.579158, 0.855597, 0.0309763, 0.220642, 0.813886, 0.297333, 0.651621, 0.0109932, 0.0257023, 0.275789, 0.477455, 0.698262, 0.780415, 0.545663, 0.372264, 0.549103, 0.246443, 0.962574, 0.0914624, 0.456858, 0.41112, 0.918784, 0.72038, 0.515839, 0.132978, 0.371473, 0.747621, 0.933631, 0.015056, 0.673797, 0.0771618, 0.609213, 0.649701, 0.933946, 0.226445, 0.430041, 0.876818, 0.0845608, 0.881974, 0.215235, 0.83455, 0.786135, 0.737094, 0.427343, 0.912624, 0.069267, 0.0816051, 0.2506, 0.507685, 0.235479, 0.711272, 0.825633, 0.58141, 0.0794911, 0.620859, 0.329306, 0.0119017, 0.106674, 0.23155, 0.0596855, 0.605844, 0.770002, 0.622888, 0.76007, 0.569407, 0.290351, 0.555176, 0.205316, 0.351891, 0.7017, 0.544441, 0.129238, 0.107956, 0.444828, 0.553731, 0.884072, 0.480326, 0.416969, 0.785289, 0.410502, 0.00826378, 0.431934, 0.998456, 0.233627, 0.507864, 0.285601, 0.844032, 0.286312, 0.396679, 0.717884, 0.961531, 0.11234, 0.880527, 0.504979, 0.267628, 0.172393, 0.420261, 0.559234, 0.634317, 0.524828, 0.00943912, 0.951068, 0.904872, 0.581567, 0.0740622, 0.828133, 0.482231, 0.125118, 0.0417098, 0.298903, 0.204699, 0.00935577, 0.484651, 0.694955, 0.564987, 0.560743, 0.719082, 0.447489, 0.217865, 0.353221, 0.865043, 0.790954, 0.260239, 0.524727, 0.792833, 0.0672077, 0.667036, 0.105864, 0.68807, 0.999467, 0.593298, 0.146567, 0.289339, 0.631646, 0.26246, 0.415804, 0.530709, 0.823074, 0.476407, 0.00307427, 0.705422, 0.0120725, 0.304214, 0.917697, 0.592769, 0.0764513, 0.544957, 0.968635, 0.401258, 0.621596, 0.337831, 0.799542, 0.826744, 0.723547, 0.792237, 0.468728, 0.132873, 0.524227, 0.965479, 0.739429, 0.901234, 0.567083, 0.315987, 0.228559, 0.513327, 0.285659, 0.604675, 0.427648, 0.345918, 0.296984, 0.590084, 0.703401, 0.1831, 0.707313, 0.0410708, 0.473386, 0.907264, 0.528752, 0.81663, 0.590208, 0.033293, 0.932312, 0.379052, 0.357581, 0.257937, 0.886998, 0.30427, 0.201665, 0.258415, 0.629557, 0.526584, 0.717717, 0.992605, 0.582512, 0.859669, 0.990447, 0.137361, 0.179532, 0.77959, 0.675441, 0.592123, 0.716406, 0.417769, 0.834476, 0.589954, 0.517081, 0.390805, 0.591431, 0.445001, 0.409755, 0.140016, 0.374135, 0.125935, 0.541378, 0.886082, 0.160457, 0.720008, 0.255203, 0.686246, 0.130463, 0.309388, 0.117829, 0.302849, 0.162766, 0.812961, 0.638556, 0.0938669, 0.99757, 0.534274, 0.284855, 0.704709, 0.505292, 0.27232, 0.22415, 0.192001, 0.18286, 0.754513, 0.318402, 0.88675, 0.385372, 0.320284, 0.538758, 0.298244, 0.775506, 0.361091, 0.398002, 0.698587, 0.591924, 0.863561, 0.55393, 0.337657, 0.706471, 0.638426, 0.0175023, 0.749578, 0.224943, 0.352789, 0.138568, 0.635246, 0.518563, 0.331428, 0.387995, 0.687786, 0.0272836, 0.574935, 0.993065, 0.488469, 0.75833, 0.224193, 0.10441, 0.24138, 0.309069, 0.991912, 0.297144, 1.24243e-05, 0.956606, 0.155435, 0.801928, 0.00748076, 0.211659, 0.530047, 0.169149, 0.379619, 0.541412, 0.0941778, 0.226117, 0.343829, 0.78411, 0.964835, 0.661392, 0.322789, 0.68766, 0.508442, 0.764577, 0.479622, 0.366466, 0.75998, 0.756816, 0.738645, 0.284067, 0.96874, 0.91511, 0.175682, 0.022082, 0.916111, 0.0049284, 0.271859, 0.485214, 0.783551, 0.721535, 0.490036, 0.556404, 0.577775, 0.495591, 0.09079, 0.889282, 0.396698, 0.32623, 0.378662, 0.89265, 0.0203042, 0.904788, 0.84036, 0.989236, 0.734799, 0.534322, 0.813772, 0.729349, 0.120081, 0.64732, 0.341254, 0.211279, 0.301084, 0.2112, 0.254672, 0.270536, 0.302479, 0.165598, 0.363984, 0.595284, 0.397747, 0.0786652, 0.816884, 0.677035, 0.163011, 0.428865, 0.261262, 0.161525, 0.820249, 0.449973, 0.502118, 0.870741, 0.872425, 0.549107, 0.093493, 0.293108, 0.407806, 0.0290223, 0.415517, 0.550318, 0.189582, 0.401833, 0.500474, 0.802816, 0.908242, 0.0547127, 0.477145, 0.659132, 0.376985, 0.399163, 0.139739, 0.268315, 0.618914, 0.283807, 0.0454501, 0.401464, 0.658063, 0.245998, 0.523662, 0.00372331, 0.70967, 0.238583, 0.678783, 0.423037, 0.755315, 0.535826, 0.416763, 0.983476, 0.270984, 0.790093, 0.887908, 0.532165, 0.503925, 0.550084, 0.806392, 0.593717, 0.452279, 0.796592, 0.554949, 0.0265816, 0.725485, 0.655859, 0.173116, 0.140496, 0.964536, 0.241896, 0.577612, 0.480463, 0.201199, 0.672386, 0.6272, 0.78803, 0.504123, 0.082894, 0.423626, 0.49161, 0.756764, 0.12343, 0.507778, 0.385329, 0.400582, 0.672109, 0.287395, 0.355353, 0.0229364, 0.504916, 0.747238, 0.492063, 0.0902071, 0.581785, 0.0497485, 0.178017, 0.591023, 0.0277203, 0.798361, 0.976042, 0.3078, 0.85762, 0.658656, 0.425106, 0.0774957, 0.193401, 0.598397, 0.557949, 0.750814, 0.590794, 0.0128073, 0.565158, 0.597502, 0.447526, 0.241906, 0.420288, 0.774951, 0.300938, 0.18762, 0.309934, 0.507038, 0.942326, 0.107535, 0.817324, 0.169265, 0.401484, 0.0672086, 0.146513, 0.38801, 0.699678, 0.928292, 0.1585, 0.189847, 0.218258, 0.997386, 0.807761, 0.429214, 0.922135, 0.732114, 0.315095, 0.0135532, 0.125392, 0.0740355, 0.899277, 0.160085, 0.793358, 0.0858927, 0.395255, 0.286439, 0.620215, 0.335846, 0.663155, 0.333771, 0.604071, 0.00871753, 0.876666, 0.129331, 0.956528, 0.0982035, 0.828907, 0.894696, 0.684195, 0.698587, 0.485445, 0.548052, 0.268406, 0.0960809, 0.999609, 0.105991, 0.600666, 0.0580121, 0.459656, 0.692681, 0.360651, 0.941943, 0.796676, 0.677869, 0.839906, 0.813682, 0.413039, 0.180618, 0.176448, 0.0840036, 0.687712, 0.759733, 0.931299, 0.110492, 0.22682, 0.999694, 0.990125, 0.0176829, 0.379297, 0.213525, 0.362231, 0.612688, 0.0793717, 0.407156, 0.63851, 0.877408, 0.342648, 0.74956, 0.335767, 0.724994, 0.626303, 0.430143, 0.855555, 0.458094, 0.178266, 0.579633, 0.0305432, 0.182081, 0.200173, 0.502698, 0.470588, 0.196118, 0.52229, 0.655738, 0.203167, 0.0850935, 0.107051, 0.684899, 0.0779629, 0.998, 0.805075, 0.466293, 0.811035, 0.0127426, 0.877579, 0.382167, 0.208238, 0.193264, 0.581621, 0.74473, 0.362614, 0.563278, 0.807022, 0.456634, 0.452991, 0.495488, 0.464415, 0.149532, 0.241338, 0.72833, 0.707539, 0.507903, 0.582288, 0.42852, 0.152086, 0.718713, 0.977795, 0.660267, 0.640717, 0.490115, 0.304021, 0.164872, 0.336759, 0.572142, 0.948436, 0.363279, 0.079069, 0.987311, 0.435656, 0.564604, 0.00193385, 0.791747, 0.402436, 0.706287, 0.238848, 0.915714, 0.174906, 0.965938, 0.0384408, 0.918158, 0.513198, 0.29182, 0.0658808, 0.954564, 0.70594, 0.170079, 0.0330911, 0.0433405, 0.598742, 0.472153, 0.696886, 0.325759, 0.0567848, 0.350115, 0.133799, 0.76163, 0.779429, 0.446678, 0.611299, 0.625526, 0.639065, 0.73732, 0.963087, 0.345357, 0.965977, 0.751335, 0.590881, 0.684322, 0.68226, 0.828329, 0.128378, 0.877101, 0.733654, 0.015523, 0.360709, 0.0707062, 0.0786413, 0.809354, 0.981508, 0.976154, 0.790231, 0.172446, 0.727283, 0.534363, 0.92872, 0.769091, 0.815536, 0.525322, 0.264115, 0.979644, 0.376391, 0.468697, 0.318961, 0.798537, 0.780037, 0.0233127, 0.98107, 0.167618, 0.52514, 0.407053, 0.454821, 0.457579, 0.443139, 0.122531, 0.898809, 0.408107, 0.0924378, 0.762959, 0.50518, 0.647983, 0.546704, 0.749073, 0.39872, 0.917352, 0.977788, 0.985947, 0.717616, 0.770878, 0.216882, 0.527066, 0.388122, 0.807191, 0.0642288, 0.72412, 0.186179, 0.448087, 0.856582, 0.0722809, 0.12798, 0.921263, 0.682491, 0.910814, 0.214291, 0.00368035, 0.711403, 0.956773, 0.93008, 0.372449, 0.345067, 0.250683, 0.941182, 0.85771, 0.969274, 0.722491, 0.18259, 0.607606, 0.524986, 0.00420109, 0.15941, 0.0776245, 0.56232, 0.569107, 0.464477, 0.332502, 0.556105, 0.134392, 0.989199, 0.213231, 0.675439, 0.296878, 0.765381, 0.294682, 0.868181, 0.192154, 0.280048, 0.785932, 0.794206, 0.716621, 0.491201, 0.750607, 0.568602, 0.968887, 0.530632, 0.466478, 0.846657, 0.686268, 0.997402, 0.397548, 0.955002, 0.663621, 0.2972, 0.367026, 0.228433, 0.529092, 0.710098, 0.567397, 0.983211, 0.0139249, 0.136422, 0.396022, 0.737076, 0.125274, 0.44975, 0.962357, 0.797143, 0.582861, 0.5527, 0.274522, 0.310848, 0.107026, 0.565651, 0.300736, 0.904682, 0.263527, 0.806907, 0.65984, 0.414182, 0.1636, 0.615943, 0.0715306, 0.785954, 0.828757, 0.660765, 0.0757584, 0.120611, 0.97223, 0.461112, 0.313375, 0.630749, 0.321526, 0.539842, 0.193604, 0.600617, 0.505401, 0.578991, 0.85863, 0.262772, 0.240262, 0.481997, 0.693685, 0.872617, 0.664167, 0.357806, 0.69779, 0.144749, 0.0603708, 0.346813, 0.871866, 0.418938, 0.582604, 0.122422, 0.731071, 0.0382756, 0.606676, 0.558107, 0.572594, 0.938878, 0.511932, 0.092367, 0.861729, 0.385881, 0.809785, 0.66054, 0.504926, 0.949541, 0.594529, 0.621222, 0.857473, 0.689365, 0.257566, 0.198218, 0.724715, 0.535962, 0.544353, 0.984481, 0.182449, 0.878939, 0.650007, 0.673402, 0.269187, 0.600569, 0.617209, 0.537987, 0.664277, 0.0861642, 0.156208, 0.109356, 0.685213, 0.646577, 0.859734, 0.240261, 0.0272754, 0.334729, 0.845619, 0.560034, 0.712505, 0.411602, 0.121457, 0.855901, 0.451466, 0.184801, 0.21999, 0.967509, 0.646905, 0.638598, 0.057186, 0.32916, 0.0871855, 0.0478142, 0.707339, 0.287566, 0.480243, 0.754268, 0.48237, 0.39079, 0.845006, 0.823381, 0.0915864, 0.932019, 0.573948, 0.394927, 0.507394, 0.732169, 0.228346, 0.926473, 0.532532, 0.152355, 0.776304, 0.679865, 0.920439, 0.0158594, 0.89487, 0.659647, 0.871782, 0.560851, 0.57435, 0.3083, 0.663412, 0.757481, 0.960128, 0.452001, 0.887086, 0.442016, 0.92099, 0.0110993, 0.365542, 0.929865, 0.656568, 0.174363, 0.615039, 0.539452, 0.806939, 0.0893947, 0.413348, 0.864007, 0.205508, 0.390376, 0.533917, 0.439459, 0.905103, 0.341882, 0.624755, 0.397079, 0.541082, 0.0682523, 0.983015, 0.443842, 0.629982, 0.282008, 0.386631, 0.0396435, 0.478885, 0.4212, 0.181879, 0.689716, 0.609262, 0.521219, 0.856247, 0.939949, 0.240021, 0.665151, 0.0608336, 0.359835, 0.431747, 0.691869, 0.591311, 0.388467, 0.588822, 0.502485, 0.877954, 0.583312, 0.670907, 0.379027, 0.450994, 0.016911, 0.740099, 0.379876, 0.66288, 0.0689599, 0.25757, 0.454995, 0.960567, 0.200728, 0.325239, 0.913429, 0.041381, 0.859662, 0.895766, 0.790458, 0.106767, 0.703295, 0.191236, 0.204426, 0.684595, 0.691486, 0.175409, 0.524724, 0.367155, 0.867933, 0.741568, 0.569575, 0.176538, 0.285695, 0.455791, 0.187718, 0.362868, 0.552052, 0.247035, 0.391779, 0.987161, 0.4793, 0.0774468, 0.968417, 0.763525, 0.285887, 0.482418, 0.759539, 0.234663, 0.735722, 0.813635, 0.447822, 0.324047, 0.180318, 0.0297703, 0.454804, 0.21158, 0.457381, 0.890023, 0.900955, 0.840244, 0.706408, 0.178501, 0.763669, 0.372941, 0.710012, 0.671042, 0.822437, 0.227934, 0.297541, 0.9467, 0.0488573, 0.825662, 0.929774, 0.805125, 0.16774, 0.366645, 0.459201, 0.917446, 0.104398, 0.0573441, 0.685905, 0.637186, 0.18841, 0.237238, 0.367388, 0.612208, 0.538027, 0.245563, 0.448944, 0.946351, 0.078478, 0.96132, 0.653643, 0.649054, 0.463215, 0.646464, 0.635334, 0.959491, 0.00335262, 0.182497, 0.954482, 0.106696, 0.197427, 0.499572, 0.274776, 0.751705, 0.434975, 0.0485731, 0.165528, 0.01801, 0.422813, 0.305316, 0.470734, 0.374091, 0.139333, 0.470029, 0.896567, 0.339369, 0.473794, 0.41436, 0.610052, 0.124939, 0.881318, 0.486986, 0.660467, 0.891443, 0.195453, 0.974218, 0.846444, 0.926831, 0.344164, 0.0419922, 0.803992, 0.743913, 0.554845, 0.0106056, 0.418169, 0.41055, 0.829961, 0.665717, 0.408672, 0.747485, 0.136918, 0.560109, 0.72498, 0.517661, 0.437334, 0.245188, 0.410817, 0.0930914, 0.601875, 0.912221, 0.208718, 0.544533, 0.838509, 0.959712, 0.0127595, 0.0623689, 0.310829, 0.591135, 0.883425, 0.24215, 0.0995855, 0.313635, 0.0410957, 0.918939, 0.783048, 0.0153892, 0.12018, 0.32194, 0.815532, 0.0266919, 0.722792, 0.233864, 0.34853, 0.0631725, 0.627564, 0.0811205, 0.871095, 0.741563, 0.361075, 0.325906, 0.464204, 0.397942, 0.486534, 0.922494, 0.832773, 0.626561, 0.529538, 0.314284, 0.638165, 0.9011, 0.900388, 0.244313, 0.839225, 0.0761662, 0.834317, 0.320673, 0.474447, 0.217126, 0.193795, 0.168358, 0.438687, 0.198715, 0.46446, 0.771117, 0.862153, 0.851919, 0.807231, 0.491553, 0.760402, 0.340707, 0.0607091, 0.361827, 0.619789, 0.110278, 0.590294, 0.957111, 0.744611, 0.559881, 0.994887, 0.919425, 0.637753, 0.533503, 0.450887, 0.175615, 0.634571, 0.797628, 0.178719, 0.699851, 0.658949, 0.906386, 0.438896, 0.0417218, 0.438413, 0.826829, 0.841082, 0.980786, 0.927255, 0.138567, 0.820165, 0.313088, 0.0878685, 0.692968, 0.797086, 0.0908378, 0.318713, 0.633711, 0.525103, 0.190014, 0.310485, 0.597693, 0.655324, 0.267112, 0.518204, 0.715525, 0.486913, 0.783756, 0.0793533, 0.359718, 0.230675, 0.199174, 0.215922, 0.102897, 0.186138, 0.836079, 0.910483, 0.694167, 0.813909, 0.199938, 0.408655, 0.119606, 0.887828, 0.333976, 0.205177, 0.609055, 0.76697, 0.387091, 0.614617, 0.60186, 0.546753, 0.765856, 0.457407, 0.630233, 0.866919, 0.937295, 0.214419, 0.367671, 0.98412, 0.748556, 0.214578, 0.270122, 0.847595, 0.912332, 0.294221, 0.339163, 0.320192, 0.0850987, 0.133728, 0.795094, 0.359125, 0.715362, 0.493328, 0.405118, 0.387583, 0.225176, 0.175518, 0.644012, 0.179279, 0.198195, 0.384717, 0.611793, 0.385488, 0.491305, 0.998748, 0.146324, 0.81189, 0.203875, 0.495301, 0.619699, 0.542314, 0.964081, 0.651557, 0.115988, 0.661655, 0.712517, 0.0501672, 0.326884, 0.109749, 0.896658, 0.1904, 0.380272, 0.514918, 0.863364, 0.685467, 0.996615, 0.499541, 0.673198, 0.942305, 0.691121, 0.205226, 0.231887, 0.743837, 0.13908, 0.907879, 0.743439, 0.143676, 0.305427, 0.24824, 0.608515, 0.439296, 0.847471, 0.789528, 0.51187, 0.254966, 0.685155, 0.585688, 0.989821, 0.946481, 0.450107, 0.922811, 0.555053, 0.329394, 0.39229, 0.131353, 0.450519, 0.81199, 0.630134, 0.460913, 0.670854, 0.895434, 0.726601, 0.471248, 0.750922, 0.0946608, 0.710068, 0.697105, 0.733508, 0.220683, 0.666638, 0.0952539, 0.630399, 0.154864, 0.766862, 0.355345, 0.790745, 0.281507, 0.164292, 0.650522, 0.629903, 0.981355, 0.145751, 0.799657, 0.0196028, 0.724183, 0.125143, 0.719542, 0.924714, 0.615013, 0.922675, 0.904591, 0.624601, 0.139733, 0.369898, 0.278809, 0.219397, 0.777665, 0.559285, 0.713929, 0.736891, 0.766342, 0.658174, 0.645476, 0.251764, 0.610972, 0.496852, 0.683424, 0.989308, 0.956882, 0.497361, 0.429103, 0.416429, 0.662068, 0.0963544, 0.551931, 0.889057, 0.167578, 0.638879, 0.0980833, 0.0518262, 0.646338, 0.165541, 0.564348, 0.8532, 0.376433, 0.893288, 0.394515, 0.699307, 0.569125, 0.954349, 0.292597, 0.56059, 0.526105, 0.862391, 0.235818, 0.797581, 0.172794, 0.854972, 0.561266, 0.0256928, 0.88453, 0.777506, 0.538351, 0.594944, 0.78804, 0.906662, 0.377078, 0.135404, 0.126215, 0.412107, 0.440339, 0.460594, 0.244971, 0.907837, 0.165576, 0.220725, 0.893386, 0.595752, 0.0477381, 0.171484, 0.756221, 0.107375, 0.651348, 0.340616, 0.785978, 0.498044, 0.460329, 0.180839, 0.568633, 0.0654769, 0.156544, 0.637076, 0.699879, 0.982172, 0.538528, 0.745358, 0.839453, 0.417995, 0.636056, 0.528779, 0.780283, 0.335406, 0.201206, 0.642997, 0.382086, 0.907109, 0.124882, 0.306389, 0.130438, 0.926737, 0.83236, 0.635197, 0.0893036, 0.300226, 0.409036, 0.330194, 0.525545, 0.500854, 0.486374, 0.493427, 0.323961, 0.581634, 0.481929, 0.169736, 0.302538, 0.355156, 0.180988, 0.224372, 0.887529, 0.0694339, 0.458228, 0.92593, 0.814719, 0.138363, 0.552697, 0.531863, 0.886667, 0.476801, 0.156363, 0.861231, 0.7417, 0.890515, 0.130867, 0.126969, 0.343434, 0.952659, 0.432004, 0.565955, 0.987161, 0.753083, 0.911315, 0.741906, 0.708598, 0.843306, 0.381457, 0.84063, 0.711479, 0.495271, 0.632042, 0.32002, 0.38246, 0.810932, 0.217966, 0.731042, 0.575892, 0.781178, 0.617689, 0.128939, 0.150718, 0.806429, 0.704081, 0.575492, 0.190971, 0.134197, 0.937842, 0.98535, 0.809467, 0.779322, 0.858818, 0.548991, 0.312554, 0.274714, 0.986938, 0.524766, 0.187022, 0.865706, 0.530344, 0.872097, 0.401882, 0.891508, 0.313377, 0.957398, 0.108127, 0.602892, 0.699594, 0.674728, 0.351897, 0.414457, 0.594854, 0.995978, 0.880093, 0.393842, 0.861727, 0.87038, 0.320563, 0.509479, 0.842871, 0.272854, 0.189172, 0.796218, 0.596634, 0.205636, 0.742273, 0.742419, 0.760309, 0.729056, 0.0437783, 0.445359, 0.0322238, 0.184335, 0.988407, 0.512953, 0.550221, 0.771869, 0.381686, 0.85382, 0.426408, 0.120799, 0.0645409, 0.0328801, 0.0570775, 0.444643, 0.269454, 0.500089, 0.373609, 0.504251, 0.910849, 0.253371, 0.994127, 0.938921, 0.951095, 0.852516, 0.0903004, 0.486111, 0.17418, 0.271288, 0.612032, 0.997632, 0.53036, 0.611951, 0.0641582, 0.396866, 0.919247, 0.640878, 0.770191, 0.481362, 0.409374, 0.2625, 0.319186, 0.928482, 0.472299, 0.0358065, 0.49353, 0.322652, 0.0382739, 0.798662, 0.966877, 0.326344, 0.0953948, 0.400169, 0.510833, 0.0684865, 0.83235, 0.696809, 0.974604, 0.668398, 0.122265, 0.369233, 0.955626, 0.188605, 0.480427, 0.286203, 0.320616, 0.954954, 0.782486, 0.186486, 0.105481, 0.945421, 0.767992, 0.356977, 0.669292, 0.0116432, 0.260886, 0.553776, 0.143967, 0.565441, 0.924606, 0.376176, 0.735383, 0.240687, 0.230876, 0.124107, 0.399972, 0.151305, 0.16136, 0.643358, 0.165622, 0.174629, 0.514337, 0.815659, 0.115184, 0.699359, 0.694579, 0.909514, 0.952258, 0.586617, 0.806359, 0.430576, 0.172374, 0.404369, 0.101979, 0.201102, 0.066589, 0.372448, 0.990175, 0.636888, 0.158449, 0.59424, 0.801662, 0.477782, 0.0196779, 0.800519, 0.226145, 0.147307, 0.925814, 0.629851, 0.858079, 0.529705, 0.96928, 0.135855, 0.121891, 0.475163, 0.444364, 0.391397, 0.0779118, 0.566445, 0.251613, 0.389013, 0.802393, 0.392058, 0.299606, 0.302262, 0.732294, 0.019227, 0.473395, 0.412521, 0.76701, 0.0892253, 0.703217, 0.349949, 0.122614, 0.105802, 0.327151, 0.425376, 0.117406, 0.395957, 0.217755, 0.0362698, 0.351134, 0.108123, 0.679722, 0.578639, 0.757755, 0.782326, 0.993839, 0.383555, 0.786901, 0.637786, 0.890523, 0.0454754, 0.653257, 0.84477, 0.490936, 0.204621, 0.775073, 0.683816, 0.675775, 0.859286, 0.0484595, 0.470092, 0.223353, 0.565578, 0.862822, 0.568036, 0.518957, 0.667993, 0.412956, 0.177394, 0.643091, 0.926192, 0.710928, 0.906935, 0.340001, 0.307947, 0.537978, 0.583401, 0.448395, 0.83372, 0.50821, 0.281675, 0.437248, 0.831335, 0.379171, 0.528369, 0.0386753, 0.439311, 0.57382, 0.640347, 0.979313, 0.0362142, 0.830339, 0.344896, 0.385437, 0.974212, 0.240347, 0.122867, 0.422403, 0.586582, 0.356558, 0.238593, 0.216972, 0.487292, 0.688729, 0.646868, 0.886362, 0.139602, 0.8453, 0.497696, 0.311339, 0.426771, 0.880241, 0.881009, 0.686507, 0.204272, 0.00691477, 0.401115, 0.393756, 0.910776, 0.889087, 0.237115, 0.797237, 0.705786, 0.307576, 0.0129004, 0.222088, 0.596397, 0.684274, 0.438425, 0.404496, 0.790856, 0.61561, 0.764173, 0.996443, 0.449856, 0.388379, 0.164582, 0.450946, 0.136325, 0.104272, 0.159408, 0.943254, 0.231601, 0.96012, 0.122654, 0.77375, 0.698247, 0.635342, 0.695868, 0.517988, 0.905835, 0.449273, 0.1554, 0.328498, 0.342687, 0.789064, 0.90011, 0.346621, 0.77674, 0.424599, 0.279622, 0.861007, 0.400212, 0.707104, 0.305798, 0.226575, 0.548174, 0.256156, 0.266986, 0.160528, 0.331082, 0.354184, 0.363671, 0.458763, 0.970597, 0.934086, 0.424846, 0.788564, 0.0627965, 0.262678, 0.912137, 0.761774, 0.34604, 0.116035, 0.486341, 0.660035, 0.428965, 0.682454, 0.857807, 0.209625, 0.853028, 0.790084, 0.824912, 0.0883281, 0.906446, 0.120536, 0.157414, 0.269506, 0.418842, 0.768363, 0.905914, 0.233608, 0.63689, 0.128794, 0.300428, 0.754335, 0.784397, 0.408365, 0.201501, 0.100617, 0.213767, 0.296005, 0.992797, 0.283339, 0.447858, 0.263813, 0.59937, 0.883649, 0.135107, 0.363725, 0.629425, 0.934755, 0.432171, 0.571044, 0.78362, 0.732185, 0.502777, 0.850255, 0.950607, 0.879127, 0.344331, 0.828602, 0.725226, 0.685943, 0.380096, 0.191079, 0.817829, 0.680173, 0.0223915, 0.252598, 0.0514904, 0.561978, 0.32495, 0.605516, 0.0450375, 0.0375528, 0.509012, 0.253094, 0.958415, 0.914325, 0.465613, 0.202329, 0.664152, 0.133459, 0.69897, 0.788707, 0.00200394, 0.0945128, 0.359398, 0.797491, 0.368139, 0.194859, 0.544294, 0.43436, 0.61703, 0.727634, 0.593148, 0.624451, 0.991047, 0.145967, 0.0313034, 0.167285, 0.241529, 0.322303, 0.451572, 0.942235, 0.970542, 0.56176, 0.993246, 0.0279265, 0.377604, 0.16416, 0.375309, 0.369389, 0.119511, 0.120647, 0.301037, 0.073944, 0.789161, 0.181405, 0.887082, 0.956426, 0.902397, 0.739655, 0.508133, 0.0747696, 0.391219, 0.228832, 0.800251, 0.869061, 0.597398, 0.201573, 0.477442, 0.66435, 0.690299, 0.32831, 0.0570044, 0.636411, 0.768536, 0.115984, 0.0367252, 0.16301, 0.698855, 0.0880642, 0.209967, 0.571202, 0.909398, 0.928888, 0.503773, 0.447952, 0.488892, 0.322869, 0.662932, 0.898899, 0.117182, 0.857915, 0.744107, 0.824755, 0.920689, 0.758126, 0.297619, 0.521496, 0.2284, 0.0751337, 0.867074, 0.518767, 0.358837, 0.00144092, 0.0497619, 0.0668159, 0.388102, 0.383741, 0.110213, 0.532467, 0.596091, 0.00134374, 0.833005, 0.474105, 0.343856, 0.99895, 0.242376, 0.0767005, 0.751615, 0.490932, 0.907981, 0.638962, 0.792366, 0.30173, 0.333721, 0.0544114, 0.326532, 0.408815, 0.738012, 0.0674122, 0.599458, 0.772409, 0.479695, 0.357774, 0.783448, 0.48809, 0.254677, 0.586735, 0.357024, 0.327491, 0.785926, 0.23041, 0.644132, 0.413049, 0.735151, 0.867416, 0.928182, 0.788073, 0.632708, 0.68678, 0.31539, 0.30885, 0.894032, 0.0544455, 0.673054, 0.425651, 0.203765, 0.0151665, 0.672158, 0.86361, 0.0568408, 0.448561, 0.0297595, 0.381173, 0.227334, 0.723746, 0.375939, 0.305096, 0.666427, 0.952864, 0.741191, 0.642785, 0.0175393, 0.252206, 0.190683, 0.704187, 0.942112, 0.07693, 0.994348, 0.329894, 0.609689, 0.50401, 0.729247, 0.520244, 0.000946484, 0.541776, 0.138247, 0.186836, 0.391014, 0.0731181, 0.670878, 0.0338262, 0.590797, 0.698486, 0.444108, 0.539547, 0.173782, 0.262909, 0.231219, 0.256835, 0.845156, 0.632973, 0.346624, 0.60681, 0.0932223, 0.251465, 0.0825293, 0.265202, 0.734433, 0.166266, 0.753448, 0.258316, 0.813767, 0.701849, 0.476919, 0.756122, 0.950176, 0.455397, 0.409883, 0.992775, 0.584045, 0.558231, 0.585266, 0.648186, 0.530603, 0.71656, 0.800558, 0.833787, 0.232484, 0.339823, 0.318783, 0.337165, 0.364923, 0.823954, 0.360866, 0.715251, 0.5378, 0.864293, 0.422829, 0.233751, 0.190532, 0.984108, 0.0647921, 0.735035, 0.0907616, 0.0666643, 0.0924067, 0.502576, 0.511322, 0.345263, 0.264773, 0.96058, 0.0867236, 0.179448, 0.838338, 0.236504, 0.288376, 0.579939, 0.747783, 0.960027, 0.905078, 0.424557, 0.281381, 0.750459, 0.652348, 0.439034, 0.999016, 0.117254, 0.369881, 0.55118, 0.113318, 0.350891, 0.615329, 0.647776, 0.74371, 0.596626, 0.83351, 0.498064, 0.0450331, 0.220228, 0.020771, 0.680722, 0.75407, 0.601801, 0.0530075, 0.462111, 0.519968, 0.792487, 0.581101, 0.0211003, 0.229924, 0.78715, 0.727014, 0.915237, 0.631788, 0.799126, 0.546876, 0.742726, 0.670435, 0.304231, 0.879851, 0.995614, 0.766319, 0.42179, 0.558265, 0.817397, 0.995562, 0.285287, 0.260675, 0.929824, 0.807761, 0.162499, 0.397752, 0.709695, 0.286947, 0.096302, 0.590545, 0.755536, 0.83637, 0.185184, 0.10565, 0.187634, 0.615155, 0.81464, 0.332655, 0.290453, 0.434497, 0.8873, 0.409133, 0.881288, 0.331319, 0.515638, 0.731008, 0.40766, 0.398138, 0.447024, 0.0110212, 0.43768, 0.0142694, 0.909536, 0.476164, 0.173389, 0.188101, 0.647039, 0.183863, 0.677867, 0.782275, 0.47767, 0.425961, 0.419715, 0.130223, 0.363212, 0.802346, 0.31485, 0.460572, 0.470326, 0.432771, 0.592056, 0.432036, 0.703806, 0.149798, 0.398114, 0.799945, 0.911993, 0.650931, 0.532968, 0.460181, 0.140933, 0.802706, 0.727349, 0.369486, 0.15512, 0.503928, 0.974148, 0.937846, 0.207428, 0.901552, 0.165991, 0.398288, 0.277009, 0.429129, 0.176726, 0.380608, 0.755432, 0.442744, 0.705476, 0.521909, 0.167085, 0.0421919, 0.105396, 0.153568, 0.608793, 0.590906, 0.268729, 0.19125, 0.830014, 0.185807, 0.890209, 0.83474, 0.310515, 0.195112, 0.982706, 0.189772, 0.700988, 0.214694, 0.774826, 0.327473, 0.868802, 0.16681, 0.58841, 0.881917, 0.117363, 0.599747, 0.158003, 0.517942, 0.432007, 0.648865, 0.0624208, 0.0122082, 0.329588, 0.504368, 0.0203229, 0.139813, 0.394387, 0.12387, 0.181334, 0.868906, 0.526532, 0.880958, 0.413481, 0.982045, 0.471394, 0.538444, 0.730804, 0.85219, 0.400402, 0.251662, 0.937787, 0.00174408, 0.652608, 0.261504, 0.388878, 0.868629, 0.537448, 0.0981852, 0.948251, 0.633976, 0.645068, 0.25576, 0.548145, 0.0116775, 0.592169, 0.143432, 0.330232, 0.241711, 0.970109, 0.852308, 0.852483, 0.151413, 0.591363, 0.384637, 0.549586, 0.60464, 0.895377, 0.579498, 0.466505, 0.945094, 0.767294, 0.252708, 0.622607, 0.382841, 0.493243, 0.549084, 0.690041, 0.0365459, 0.69902, 0.239746, 0.54563, 0.670083, 0.548381, 0.0894636, 0.445598, 0.664948, 0.477631, 0.585061, 0.606681, 0.676272, 0.827953, 0.969431, 0.426087, 0.181042, 0.335697, 0.0937029, 0.0367387, 0.228312, 0.0617288, 0.335622, 0.944988, 0.296869, 0.756548, 0.0404717, 0.677043, 0.762679, 0.700488, 0.318338, 0.0365351, 0.612665, 0.376546, 0.209593, 0.512024, 0.12407, 0.279746, 0.755882, 0.111437, 0.299563, 0.997316, 0.723257, 0.636209, 0.226971, 0.0659718, 0.140536, 0.255796, 0.564739, 0.588969, 0.168314, 0.543733, 0.924602, 0.244122, 0.543139, 0.0785925, 0.194683, 0.899421, 0.403202, 0.0356301, 0.681685, 0.887435, 0.856302, 0.193578, 0.496868, 0.467903, 0.0387348, 0.638649, 0.90526, 0.324396, 0.247047, 0.169258, 0.266024, 0.986432, 0.521846, 0.49993, 0.637412, 0.797028, 0.699123, 0.835982, 0.739283, 0.708695, 0.107002, 0.732937, 0.844857, 0.174538, 0.22849, 0.222638, 0.796332, 0.933367, 0.759566, 0.513495, 0.803074, 0.107489, 0.399826, 0.656787, 0.106884, 0.210021, 0.094437, 0.435416, 0.60731, 0.1567, 0.841264, 0.0968264, 0.306852, 0.345901, 0.141018, 0.159966, 0.821595, 0.320059, 0.0656764, 0.0505248, 0.432913, 0.747983, 0.750045, 0.0417933, 0.138653, 0.137631, 0.320256, 0.584708, 0.0532872, 0.318578, 0.63761, 0.564704, 0.154647, 0.642569, 0.622576, 0.244021, 0.87078, 0.500933, 0.00645393, 0.0539389, 0.0485263, 0.796574, 0.793253, 0.732992, 0.645884, 0.379617, 0.555762, 0.00629676, 0.259832, 0.798554, 0.0315776, 0.450822, 0.101757, 0.809952, 0.313552, 0.783575, 0.0359134, 0.948098, 0.161367, 0.525707, 0.0963111, 0.132763, 0.22445, 0.461381, 0.713727, 0.943816, 0.658751, 0.327083, 0.794496, 0.198395, 0.841364, 0.116349, 0.370534, 0.542816, 0.72763, 0.374359, 0.533259, 0.887736, 0.0196068, 0.502101, 0.412768, 0.0106867, 0.678288, 0.858775, 0.335465, 0.730297, 0.992653, 0.717325, 0.507287, 0.187472, 0.877163, 0.52541, 0.183381, 0.0743946, 0.258771, 0.848135, 0.805477, 0.316745, 0.453276, 0.266309, 0.110357, 0.153075, 0.690539, 0.201145, 0.920943, 0.507428, 0.445467, 0.78514, 0.616036, 0.258572, 0.942877, 0.760505, 0.238735, 0.466058, 0.0212599, 0.657658, 0.555341, 0.803491, 0.0782692, 0.220241, 0.944674, 0.000973093, 0.749505, 0.106599, 0.15009, 0.0835378, 0.181226, 0.0515253, 0.88494, 0.102723, 0.974932, 0.231358, 0.467657, 0.183007, 0.920526, 0.288254, 0.830973, 0.553001, 0.93022, 0.414924, 0.376628, 0.334164, 0.609779, 0.539633, 0.80234, 0.775187, 0.0439149, 0.813741, 0.556876, 0.465937, 0.181576, 0.14384, 0.859396, 0.191365, 0.364365, 0.95841, 0.298458, 0.179076, 0.287059, 0.478908, 0.737661, 0.301259, 0.0961071, 0.672842, 0.783623, 0.118186, 0.166335, 0.26924, 0.453664, 0.688125, 0.947874, 0.36531, 0.0269986, 0.218112, 0.512163, 0.191052, 0.299443, 0.730737, 0.226903, 0.340436, 0.403929, 0.0852968, 0.480171, 0.603748, 0.421509, 0.435747, 0.406636, 0.0178122, 0.322006, 0.0404101, 0.860913, 0.0730553, 0.88948, 0.177384, 0.517096, 0.718766, 0.2512, 0.602436, 0.0417423, 0.475102, 0.720779, 0.626538, 0.283841, 0.238276, 0.987086, 0.591778, 0.1842, 0.520921, 0.153227, 0.556522, 0.146511, 0.604621, 0.116201, 0.0737713, 0.543386, 0.0369681, 0.398191, 0.0236996, 0.0167607, 0.615953, 0.127181, 0.454078, 0.636039, 0.919659, 0.951307, 0.888242, 0.880994, 0.433766, 0.676223, 0.777643, 0.0852578, 0.170134, 0.903301, 0.82682, 0.888324, 0.258651, 0.321851, 0.740333, 0.136134, 0.246879, 0.00224358, 0.157725, 0.199889, 0.569027, 0.0310247, 0.275402, 0.729987, 0.688425, 0.604258, 0.760276, 0.957512, 0.564194, 0.463683, 0.340383, 0.285583, 0.500558, 0.304194, 0.357911, 0.84807, 0.99273, 0.226164, 0.709829, 0.166442, 0.915231, 0.798527, 0.125432, 0.222153, 0.496277, 0.100268, 0.333152, 0.83063, 0.779307, 0.581274, 0.550133, 0.998805, 0.885069, 0.393751, 0.692026, 0.537398, 0.584291, 0.0203061, 0.0124475, 0.161726, 0.785518, 0.160358, 0.76372, 0.783276, 0.969793, 0.844359, 0.856301, 0.721894, 0.978718, 0.130515, 0.89933, 0.448584, 0.122808, 0.515401, 0.787199, 0.438048, 0.395707, 0.598831, 0.772227, 0.944482, 0.892404, 0.820393, 0.716444, 0.723121, 0.0701328, 0.716947, 0.886684, 0.009141, 0.412401, 0.473811, 0.178099, 0.446003, 0.567898, 0.980485, 0.411368, 0.300427, 0.554554, 0.326299, 0.914831, 0.00431922, 0.989365, 0.461677, 0.304597, 0.861639, 0.503709, 0.919688, 0.86521, 0.858752, 0.401042, 0.499406, 0.999762, 0.145825, 0.11521, 0.425163, 0.265864, 0.630985, 0.740153, 0.338885, 0.484607, 0.677764, 0.00381102, 0.809534, 0.145251, 0.541035, 0.0462432, 0.0662148, 0.506739, 0.689138, 0.725102, 0.560043, 0.920058, 0.707384, 0.0907164, 0.575176, 0.591147, 0.76119, 0.977688, 0.594382, 0.0568761, 0.334937, 0.0236219, 0.247397, 0.82412, 0.250413, 0.563062, 0.126827, 0.614318, 0.45863, 0.570689, 0.0717203, 0.71442, 0.852698, 0.319204, 0.673932, 0.66984, 0.791503, 0.0991388, 0.727569, 0.673013, 0.531488, 0.973541, 0.490356, 0.689448, 0.51114, 0.0510635, 0.144568, 0.0488804, 0.907358, 0.630259, 0.801694, 0.690012, 0.142377, 0.376682, 0.144956, 0.824021, 0.721665, 0.938729, 0.947014, 0.950303, 0.625824, 0.0518692, 0.372296, 0.696759, 0.477766, 0.38459, 0.218042, 0.858416, 0.115892, 0.0320822, 0.495412, 0.862494, 0.819502, 0.941878, 0.0387679, 0.794199, 0.820976, 0.248613, 0.308583, 0.0627562, 0.479179, 0.460774, 0.427001, 0.032369, 0.998002, 0.690198, 0.301801, 0.276364, 0.710231, 0.893871, 0.785995, 0.365127, 0.272635, 0.606906, 0.886356, 0.683694, 0.267291, 0.218239, 0.217794, 0.879303, 0.800404, 0.753908, 0.381, 0.38011, 0.868807, 0.915108, 0.679771, 0.425887, 0.232021, 0.3732, 0.524585, 0.227168, 0.332095, 0.159611, 0.474157, 0.834698, 0.119122, 0.703672, 0.472869, 0.642509, 0.454468, 0.677509, 0.14933, 0.0275297, 0.886753, 0.183027, 0.504664, 0.13094, 0.471414, 0.291249, 0.0897135, 0.883799, 0.948179, 0.209196, 0.261283, 0.434814, 0.764381, 0.333649, 0.323645, 0.732802, 0.754794, 0.772194, 0.888666, 0.794492, 0.470613, 0.180972, 0.533535, 0.638344, 0.0309298, 0.473841, 0.572842, 0.911616, 0.0359518, 0.504784, 0.864904, 0.791921, 0.952028, 0.14703, 0.482688, 0.38138, 0.689176, 0.358107, 0.964222, 0.664341, 0.364756, 0.462358, 0.871348, 0.811468, 0.805107, 0.372945, 0.709743, 0.126389, 0.891431, 0.437558, 0.570483, 0.788012, 0.964243, 0.258805, 0.280408, 0.0702566, 0.657459, 0.683867, 0.0888091, 0.55652, 0.70077, 0.444457, 0.487276, 0.205754, 0.659927, 0.926596, 0.445687, 0.20498, 0.548544, 0.343877, 0.512677, 0.990822, 0.6532, 0.268565, 0.962165, 0.327383, 0.674243, 0.228823, 0.998085, 0.227313, 0.800336, 0.718163, 0.782706, 0.941869, 0.33199, 0.849003, 0.194824, 0.902575, 0.501552, 0.518239, 0.150476, 0.448765, 0.211319, 0.158607, 0.640021, 0.952545, 0.717359, 0.280481, 0.909379, 0.908767, 0.528414, 0.974888, 0.276211, 0.92698, 0.835883, 0.901567, 0.666688, 0.529453, 0.465804, 0.294289, 0.139984, 0.999112, 0.844271, 0.662428, 0.792039, 0.183089, 0.797879, 0.297615, 0.108843, 0.128322, 0.827902, 0.416487, 0.236675, 0.806017, 0.279535, 0.652342, 0.610113, 0.371188, 0.216679, 0.402532, 0.969157, 0.301669, 0.0383836, 0.499437, 0.118573, 0.362627, 0.18339, 0.222873, 0.526366, 0.147472, 0.993054, 0.565005, 0.29172, 0.547762, 0.852949, 0.357201, 0.491189, 0.863435, 0.518439, 0.0594226, 0.109189, 0.945859, 0.739604, 0.143206, 0.435732, 0.553778, 0.0035747, 0.772776, 0.505716, 0.153306, 0.664995, 0.832633, 0.565863, 0.665123, 0.666381, 0.394328, 0.0855326, 0.573496, 0.885602, 0.390953, 0.708925, 0.786931, 0.522786, 0.291825, 0.0634514, 0.928188, 0.168637, 0.253001, 0.862502, 0.929582, 0.646378, 0.989392, 0.521706, 0.0178385, 0.694728, 0.202491, 0.549003, 0.909403, 0.406013, 0.387248, 0.760753, 0.852096, 0.358302, 0.245531, 0.71053, 0.811774, 0.92079, 0.810023, 0.174339, 0.536559, 0.00591831, 0.374183, 0.616586, 0.940266, 0.100919, 0.198732, 0.598882, 0.608117, 0.930093, 0.521744, 0.822235, 0.549358, 0.149835, 0.344036, 0.650126, 0.0347386, 0.0659594, 0.775347, 0.632604, 0.896795, 0.944731, 0.051625, 0.328262, 0.489635, 0.771074, 0.520485, 0.445573, 0.99153, 0.453152, 0.74483, 0.359229, 0.842507, 0.754794, 0.050389, 0.469458, 0.345899, 0.724442, 0.1258, 0.997286, 0.542507, 0.734243, 0.218028, 0.57567, 0.0840791, 0.831345, 0.572729, 0.638681, 0.46461, 0.21553, 0.496753, 0.651072, 0.728837, 0.383105, 0.913925, 0.608814, 0.69361, 0.284668, 0.580892, 0.0829319, 0.996964, 0.694332, 0.0266658, 0.343305, 0.860466, 0.410865, 0.344897, 0.076182, 0.0945845, 0.606471, 0.910185, 0.440777, 0.83356, 0.415651, 0.470332, 0.577427, 0.286812, 0.458414, 0.154092, 0.726048, 0.448766, 0.536047, 0.881113, 0.0834768, 0.680602, 0.100508, 0.614056, 0.920217, 0.554259, 0.0771404, 0.200639, 0.997162, 0.711893, 0.580785, 0.517384, 0.236981, 0.961531, 0.262726, 0.0279213, 0.601705, 0.922513, 0.457747, 0.622179, 0.586986, 0.815665, 0.740151, 0.71075, 0.744337, 0.267282, 0.714992, 0.995485, 0.373861, 0.330064, 0.707927, 0.4794, 0.467112, 0.517784, 0.750343, 0.301888, 0.31469, 0.143334, 0.016394, 0.929898, 0.610353, 0.378339, 0.961137, 0.286113, 0.998841, 0.619241, 0.847544, 0.140022, 0.6554, 0.212334, 0.92588, 0.11685, 0.480002, 0.927651, 0.285044, 0.888313, 0.171126, 0.561373, 0.458234, 0.157669, 0.777138, 0.418818, 0.404983, 0.0466326, 0.101271, 0.143908, 0.0234543, 0.405157, 0.947144, 0.028322, 0.325914, 0.475486, 0.338324, 0.607948, 0.869158, 0.907468, 0.930774, 0.501023, 0.925042, 0.454899, 0.946359, 0.125395, 0.471872, 0.620577, 0.155292, 0.566721, 0.671337, 0.265429, 0.752127, 0.50987, 0.618642, 0.715742, 0.694601, 0.625403, 0.52693, 0.0518873, 0.419928, 0.668601, 0.949508, 0.540852, 0.554487, 0.52369, 0.28843, 0.488686, 0.200984, 0.837579, 0.269874, 0.195823, 0.515413, 0.578064, 0.745128, 0.331575, 0.588522, 0.490486, 0.931496, 0.802797, 0.924865, 0.356336, 0.581246, 0.328024, 0.60922, 0.0407957, 0.0587663, 0.0332815, 0.469145, 0.40867, 0.857537, 0.807716, 0.386968, 0.0427086, 0.204949, 0.7688, 0.440749, 0.346744, 0.121736, 0.269309, 0.882475, 0.570572, 0.919927, 0.163374, 0.0382734, 0.244256, 0.608912, 0.0744772, 0.199804, 0.0177384, 0.562952, 0.724068, 0.548369, 0.709908, 0.267533, 0.423085, 0.801727, 0.891623, 0.508236, 0.449655, 0.168635, 0.266666, 0.618473, 0.574547, 0.568718, 0.0749061, 0.977498, 0.230497, 0.773333, 0.433951, 0.753883, 0.359061, 0.395892, 0.999135, 0.979185, 0.935089, 0.717506, 0.0794712, 0.110681, 0.261232, 0.0781289, 0.506005, 0.0258885, 0.03633, 0.102523, 0.975296, 0.238929, 0.651561, 0.875218, 0.0468139, 0.754441, 0.384344, 0.236493, 0.424086, 0.92452, 0.605211, 0.542885, 0.213593, 0.888459, 0.645171, 0.444662, 0.34014, 0.0488637, 0.468849, 0.154743, 0.641403, 0.614473, 0.382053, 0.732735, 0.060139, 0.575865, 0.906177, 0.233673, 0.972487, 0.608601, 0.109103, 0.933532, 0.383431, 0.982875, 0.75572, 0.920607, 0.260268, 0.967597, 0.165602, 0.145568, 0.794938, 0.645477, 0.894148, 0.488078, 0.829059, 0.909446, 0.952965, 0.994641, 0.184752, 0.862099, 0.449358, 0.498181, 0.803842, 0.499511, 0.74574, 0.345415, 0.335949, 0.917581, 0.502464, 0.757405, 0.556406, 0.802122, 0.494112, 0.204485, 0.280133, 0.250274, 0.0719013, 0.350682, 0.320498, 0.0652321, 0.0980936, 0.858129, 0.633885, 0.687396, 0.0741431, 0.921754, 0.821764, 0.548975, 0.291379, 0.210214, 0.251713, 0.56441, 0.831934, 0.194279, 0.984741, 0.983676, 0.500923, 0.88643, 0.446535, 0.31721, 0.43667, 0.138071, 0.777664, 0.899611, 0.679442, 0.977321, 0.48769, 0.698537, 0.114834, 0.732036, 0.935299, 0.443224, 0.606917, 0.00343731, 0.918788, 0.179939, 0.179491, 0.0933978, 0.308888, 0.835705, 0.883739, 0.0795075, 0.108373, 0.444887, 0.0272249, 0.665521, 0.936684, 0.918134, 0.506515, 0.0310974, 0.318531, 0.334573, 0.95934, 0.773097, 0.870414, 0.622534, 0.772598, 0.267527, 0.957514, 0.321456, 0.433731, 0.0378987, 0.303143, 0.946338, 0.771424, 0.968829, 0.0182637, 0.153095, 0.791273, 0.0869237, 0.908045, 0.285497, 0.456298, 0.319449, 0.948262, 0.0108198, 0.0791605, 0.138426, 0.0493138, 0.297055, 0.831732, 0.846622, 0.977141, 0.666201, 0.0894669, 0.474935, 0.597488, 0.745701, 0.998088, 0.259435, 0.448089, 0.757547, 0.695585, 0.928415, 0.254816, 0.391428, 0.239077, 0.343674, 0.707079, 0.840506, 0.855248, 0.0720463, 0.273765, 0.414277, 0.28574, 0.872958, 0.600764, 0.707009, 0.152044, 0.749205, 0.736148, 0.0434453, 0.480865, 0.290354, 0.081511, 0.704921, 0.592041, 0.987253, 0.236817, 0.218098, 0.636332, 0.166966, 0.141217, 0.616854, 0.883307, 0.90587, 0.213539, 0.0203048, 0.152704, 0.665115, 0.331953, 0.917368, 0.185204, 0.344195, 0.0684662, 0.827963, 0.697345, 0.382241, 0.11038, 0.432941, 0.0522772, 0.340995, 0.790436, 0.221271, 0.153565, 0.7529, 0.439033, 0.0688691, 0.942102, 0.0991886, 0.861902, 0.653214, 0.533909, 0.946111, 0.811667, 0.835058, 0.906783, 0.889796, 0.180832, 0.747069, 0.189066, 0.928808, 0.902241, 0.374762, 0.307401, 0.595117, 0.357318, 0.669907, 0.244712, 0.977176, 0.107172, 0.459304, 0.942739, 0.601034, 0.351095, 0.969381, 0.70954, 0.474592, 0.849265, 0.319091, 0.325441, 0.810371, 0.382643, 0.231443, 0.896858, 0.619304, 0.712551, 0.818118, 0.583754, 0.744646, 0.948482, 0.26386, 0.649881, 0.762572, 0.191877, 0.00646703, 0.357565, 0.514021, 0.272099, 0.404912, 0.744339, 0.0570981, 0.188718, 0.488049, 0.910256, 0.381391, 0.780401, 0.249811, 0.898262, 0.562622, 0.544915, 0.995939, 0.163083, 0.700276, 0.339799, 0.371208, 0.256466, 0.207121, 0.838345, 0.116212, 0.215533, 0.0896088, 0.765079, 0.746264, 0.458304, 0.562406, 0.53256, 0.401652, 0.902194, 0.728271, 0.401179, 0.68653, 0.982712, 0.970421, 0.776619, 0.335532, 0.57628, 0.283883, 0.337312, 0.587295, 0.605534, 0.257679, 0.977735, 0.606707, 0.384693, 0.148313, 0.91652, 0.876226, 0.200527, 0.159544, 0.478128, 0.788105, 0.168764, 0.820108, 0.639652, 0.313061, 0.300923, 0.00679751, 0.128614, 0.743182, 0.591579, 0.227884, 0.276947, 0.353419, 0.449458, 0.857557, 0.311474, 0.168574, 0.231684, 0.973643, 0.467229, 0.401413, 0.824339, 0.648709, 0.992076, 0.561148, 0.539587, 0.88606, 0.0101625, 0.321866, 0.0864855, 0.823361, 0.171294, 0.851256, 0.904512, 0.868669, 0.461754, 0.337381, 0.805864, 0.282016, 0.256525, 0.367835, 0.36925, 0.323166, 0.544029, 0.260691, 0.487742, 0.501015, 0.871728, 0.816517, 0.177717, 0.349107, 0.9712, 0.445068, 0.554921, 0.853349, 0.642411, 0.274062, 0.393994, 0.405508, 0.979283, 0.947317, 0.1413, 0.804752, 0.282827, 0.00433583, 0.209862, 0.805964, 0.240927, 0.923283, 0.29844, 0.577112, 0.197106, 0.941629, 0.0260883, 0.783104, 0.428877, 0.375769, 0.47005, 0.618762, 0.129121, 0.96162, 0.133023, 0.757693, 0.521303, 0.425115, 0.895157, 0.548349, 0.789657, 0.773709, 0.814288, 0.219591, 0.927035, 0.554026, 0.73962, 0.228319, 0.985027, 0.203205, 0.670233, 0.845321, 0.122509, 0.525979, 0.774974, 0.35449, 0.0202482, 0.0553284, 0.718248, 0.968736, 0.775884, 0.872025, 0.249245, 0.223508, 0.373448, 0.873227, 0.818622, 0.170087, 0.45397, 0.211645, 0.0912735, 0.885725, 0.408843, 0.816578, 0.947253, 0.660385, 0.905483, 0.438485, 0.592493, 0.964808, 0.390944, 0.434461, 0.624856, 0.494029, 0.540508, 0.51451, 0.897778, 0.271091, 0.917262, 0.832085, 0.908695, 0.363763, 0.280258, 0.0206989, 0.938979, 0.264247, 0.348786, 0.136345, 0.504444, 0.774869, 0.446413, 0.991975, 0.810845, 0.0198101, 0.938085, 0.121592, 0.246139, 0.872632, 0.00349399, 0.447693, 0.619095, 0.773532, 0.911036, 0.313008, 0.423558, 0.266044, 0.0985083, 0.357055, 0.249961, 0.00837236, 0.668355, 0.946894, 0.287958, 0.49005, 0.613826, 0.459912, 0.761238, 0.504224, 0.905499, 0.786928, 0.609886, 0.457182, 0.319103, 0.00407148, 0.0451923, 0.938474, 0.69964, 0.761635, 0.648927, 0.743729, 0.341382, 0.0405512, 0.434753, 0.430363, 0.737545, 0.753841, 0.309877, 0.682698, 0.52824, 0.282921, 0.0398223, 0.108494, 0.275523, 0.193035, 0.0649202, 0.32645, 0.571398, 0.111497, 0.743052, 0.880672, 0.623785, 0.780881, 0.928861, 0.939333, 0.535115, 0.481065, 0.557964, 0.791385, 0.131174, 0.427806, 0.380435, 0.128044, 0.667008, 0.743779, 0.0241728, 0.433819, 0.787634, 0.808397, 0.162604, 0.601796, 0.322157, 0.166734, 0.544991, 0.012839, 0.352769, 0.575641, 0.785877, 0.464232, 0.436805, 0.816211, 0.677876, 0.200392, 0.967292, 0.822277, 0.510058, 0.959157, 0.532251, 0.173079, 0.0579285, 0.426559, 0.493084, 0.85396, 0.68958, 0.332149, 0.727335, 0.301874, 0.53545, 0.648203, 0.113179, 0.500634, 0.736473, 0.228937, 0.615063, 0.89921, 0.275833, 0.685858, 0.63812, 0.426503, 0.327029, 0.0407834, 0.571616, 0.798809, 0.61719, 0.627599, 0.667153, 0.511011, 0.301111, 0.214023, 0.745447, 0.897346, 0.869188, 0.404666, 0.25638, 0.738289, 0.95814, 0.39046, 0.690222, 0.486324, 0.681128, 0.454494, 0.131966, 0.299781, 0.435809, 0.64067, 0.127576, 0.0933634, 0.516857, 0.534826, 0.062432, 0.254201, 0.370317, 0.276649, 0.212643, 0.0365374, 0.215861, 0.98183, 0.558461, 0.882114, 0.760298, 0.0230026, 0.212627, 0.452885, 0.863122, 0.501076, 0.261205, 0.526928, 0.0882687, 0.382562, 0.799093, 0.217433, 0.872696, 0.352978, 0.162366, 0.200554, 0.0853807, 0.617135, 0.803623, 0.053892, 0.768681, 0.72646, 0.186899, 0.233063, 0.44126, 0.351109, 0.51456, 0.471347, 0.14898, 0.237901, 0.390519, 0.401825, 0.0780749, 0.927048, 0.277374, 0.403331, 0.817587, 0.272252, 0.55869, 0.0700548, 0.837055, 0.658314, 0.258131, 0.386913, 0.161075, 0.198577, 0.105789, 0.364399, 0.561513, 0.907905, 0.23445, 0.876724, 0.287997, 0.337503, 0.580209, 0.700581, 0.893672, 0.303112, 0.400399, 0.900429, 0.960338, 0.205897, 0.13644, 0.606848, 0.278969, 0.444764, 0.277917, 0.727935, 0.261535, 0.76446, 0.263156, 0.361122, 0.377576, 0.66583, 0.203896, 0.242684, 0.131856, 0.00691427, 0.384593, 0.0738922, 0.796443, 0.386714, 0.646815, 0.0465242, 0.37696, 0.839695, 0.516433, 0.51168, 0.735366, 0.313122, 0.926391, 0.38615, 0.328949, 0.908023, 0.022474, 0.944344, 0.0855576, 0.181333, 0.705536, 0.551495, 0.789005, 0.991004, 0.867341, 0.156493, 0.204584, 0.325171, 0.358104, 0.966632, 0.916216, 0.350342, 0.26379, 0.185092, 0.676694, 0.788359, 0.260773, 0.629055, 0.77337, 0.381681, 0.890435, 0.818667, 0.998066, 0.220561, 0.702782, 0.321089, 0.120623, 0.391574, 0.0824004, 0.335235, 0.0896565, 0.319899, 0.973759, 0.109473, 0.682094, 0.108171, 0.465936, 0.67167, 0.637918, 0.541815, 0.766935, 0.0189718, 0.879942, 0.270628, 0.932306, 0.983927, 0.0468443, 0.628777, 0.0181506, 0.380767, 0.826538, 0.733648, 0.45519, 0.821057, 0.513454, 0.348211, 0.693584, 0.148583, 0.977117, 0.430738, 0.61182, 0.418308, 0.673495, 0.3394, 0.427247, 0.810305, 0.184395, 0.153866, 0.265563, 0.478276, 0.120549, 0.392185, 0.297863, 0.344672, 0.334586, 0.0398942, 0.285567, 0.654178, 0.00459614, 0.57217, 0.942972, 0.775396, 0.709488, 0.86794, 0.515648, 0.594831, 0.381757, 0.757027, 0.727035, 0.786055, 0.203072, 0.276466, 0.158124, 0.808501, 0.102053, 0.997998, 0.928943, 0.339197, 0.422558, 0.403526, 0.811289, 0.682467, 0.519364, 0.985631, 0.695145, 0.87326, 0.520205, 0.0111355, 0.809212, 0.0752159, 0.687829, 0.760943, 0.459425, 0.892339, 0.879954, 0.778171, 0.923641, 0.146616, 0.560208, 0.94499, 0.682062, 0.835312, 0.575422, 0.554996, 0.397026, 0.97177, 0.0242832, 0.0925651, 0.987186, 0.936212, 0.206866, 0.80444, 0.38113, 0.501063, 0.843346, 0.864754, 0.684651, 0.226487, 0.832008, 0.500568, 0.268452, 0.35985, 0.482842, 0.351491, 0.117092, 0.616672, 0.950603, 0.442528, 0.108993, 0.147171, 0.0811919, 0.620192, 0.164973, 0.570533, 0.344352, 0.227946, 0.706041, 0.319002, 0.836146, 0.431537, 0.373224, 0.830264, 0.859218, 0.135633, 0.204645, 0.497329, 0.476283, 0.898832, 0.318157, 0.0518413, 0.787788, 0.749823, 0.990882, 0.310739, 0.373329, 0.00699056, 0.763808, 0.189834, 0.993723, 0.323071, 0.556897, 0.955455, 0.871199, 0.783104, 0.84266, 0.657628, 0.118837, 0.396545, 0.836526, 0.421213, 0.796618, 0.92848, 0.196703, 0.453052, 0.21279, 0.0781732, 0.290214, 0.85674, 0.450393, 0.269058, 0.231177, 0.382764, 0.150857, 0.959229, 0.350774, 0.219011, 0.505458, 0.0262893, 0.753044, 0.193166, 0.164141, 0.228447, 0.950066, 0.1562, 0.465342, 0.0933231, 0.51868, 0.467452, 0.320578, 0.333187, 0.750958, 0.609314, 0.557419, 0.632221, 0.911576, 0.051691, 0.838721, 0.592503, 0.556489, 0.28693, 0.79994, 0.186534, 0.137593, 0.565969, 0.208817, 0.616289, 0.111668, 0.339988, 0.298029, 0.709292, 0.373836, 0.480828, 0.379162, 0.882696, 0.413005, 0.128272, 0.557877, 0.0916656, 0.323702, 0.727149, 0.385419, 0.945602, 0.924983, 0.5581, 0.605596, 0.00841205, 0.790584, 0.679761, 0.0157527, 0.882751, 0.856038, 0.822924, 0.199808, 0.208543, 0.319852, 0.804386, 0.835573, 0.428316, 0.0441746, 0.401189, 0.973443, 0.693568, 0.77892, 0.426246, 0.578862, 0.884189, 0.881808, 0.99988, 0.41897, 0.635222, 0.243414, 0.687665, 0.662656, 0.921206, 0.931552, 0.487752, 0.954991, 0.770023, 0.413163, 0.166651, 0.146153, 0.552683, 0.359568, 0.430048, 0.495043, 0.355809, 0.985572, 0.696166, 0.513866, 0.838096, 0.926908, 0.421392, 0.394051, 0.298775, 0.957049, 0.44277, 0.295917, 0.321999, 0.200425, 0.376574, 0.0706394, 0.976208, 0.712279, 0.127169, 0.991754, 0.270863, 0.363507, 0.373852, 0.349077, 0.713998, 0.160536, 0.535705, 0.457604, 0.505169, 0.824704, 0.239087, 0.257304, 0.202766, 0.236109, 0.332589, 0.0238311, 0.260527, 0.00371746, 0.412384, 0.482204, 0.711049, 0.4693, 0.184225, 0.831808, 0.268629, 0.687246, 0.364263, 0.320361, 0.605563, 0.431841, 0.571692, 0.918598, 0.0189125, 0.722953, 0.197843, 0.644876, 0.860719, 0.254702, 0.158021, 0.393331, 0.535694, 0.272737, 0.770715, 0.362387, 0.197682, 0.387888, 0.71038, 0.663247, 0.556153, 0.138118, 0.327036, 0.891755, 0.444031, 0.171477, 0.106749, 0.920795, 0.886496, 0.0492393, 0.945329, 0.577699, 0.973865, 0.329843, 0.520608, 0.396895, 0.319288, 0.903879, 0.962445, 0.653325, 0.0848507, 0.393099, 0.458913, 0.981772, 0.942494, 0.0410877, 0.285956, 0.595612, 0.942453, 0.446092, 0.83528, 0.898894, 0.062709, 0.0657916, 0.484063, 0.8508, 0.227725, 0.752846, 0.92173, 0.480526, 0.0964081, 0.948487, 0.193416, 0.682024, 0.501548, 0.862019, 0.614713, 0.950482, 0.70864, 0.359331, 0.0469288, 0.657403, 0.203831, 0.687638, 0.222811, 0.483744, 0.529177, 0.621497, 0.485951, 0.534666, 0.446161, 0.250163, 0.889559, 0.166582, 0.920422, 0.769784, 0.547718, 0.465831, 0.10656, 0.235391, 0.0369706, 0.431307, 0.772417, 0.529851, 0.114619, 0.484428, 0.241478, 0.419788, 0.499923, 0.554834, 0.228483, 0.18014, 0.0919056, 0.280975, 0.164224, 0.0682185, 0.887408, 0.997653, 0.945901, 0.949911, 0.986903, 0.713256, 0.930299, 0.875153, 0.134418, 0.0864959, 0.197977, 0.762442, 0.89542, 0.951293, 0.908159, 0.960262, 0.356559, 0.542306, 0.308836, 0.31353, 0.83746, 0.914564, 0.932738, 0.716796, 0.95133, 0.977492, 0.835335, 0.811688, 0.867739, 0.658936, 0.534261, 0.465219, 0.946242, 0.0916335, 0.15547, 0.0837199, 0.328251, 0.353232, 0.52683, 0.0530961, 0.844124, 0.49339, 0.574155, 0.259173, 0.807415, 0.742004, 0.367564, 0.532553, 0.355819, 0.160348, 0.812619, 0.682341, 0.460134, 0.472149, 0.877119, 0.691216, 0.716469, 0.732743, 0.101109, 0.163486, 0.426536, 0.00438677, 0.341102, 0.127627, 0.974165, 0.451785, 0.582795, 0.960278, 0.215978, 0.30271, 0.728424, 0.39953, 0.0907827, 0.140596, 0.666724, 0.509406, 0.639216, 0.583129, 0.639649, 0.0487489, 0.962468, 0.586461, 0.255437, 0.357483, 0.248231, 0.824475, 0.35872, 0.298363, 0.756249, 0.968111, 0.654413, 0.55423, 0.273308, 0.790274, 0.789088, 0.582524, 0.988269, 0.613496, 0.497697, 0.664909, 0.158875, 0.686242, 0.792637, 0.5494, 0.390752, 0.0232917, 0.816841, 0.393919, 0.803319, 0.025962, 0.236398, 0.771318, 0.0280134, 0.955289, 0.870184, 0.803725, 0.90259, 0.579897, 0.72182, 0.831769, 0.756231, 0.0269657, 0.0572628, 0.795962, 0.63808, 0.792817, 0.465746, 0.29455, 0.256751, 0.349447, 0.205934, 0.214258, 0.587056, 0.0334117, 0.65442, 0.568748, 0.40156, 0.797245, 0.00572588, 0.777739, 0.526307, 0.909452, 0.799369, 0.861574, 0.86602, 0.345673, 0.709272, 0.198909, 0.454914, 0.951196, 0.302842, 0.956016, 0.202018, 0.627276, 0.42665, 0.357785, 0.389542, 0.391284, 0.852638, 0.275424, 0.524347, 0.232507, 0.0251263, 0.857599, 0.184222, 0.165429, 0.778964, 0.595748, 0.84945, 0.0479109, 0.573057, 0.973021, 0.0168931, 0.263429, 0.247403, 0.214808, 0.758783, 0.608823, 0.450129, 0.46428, 0.296656, 0.54451, 0.202912, 0.955391, 0.410756, 0.478998, 0.161717, 0.74582, 0.984672, 0.631941, 0.845032, 0.865216, 0.734043, 0.913582, 0.74956, 0.913796, 0.852189, 0.0526545, 0.620136, 0.335249, 0.891606, 0.04877, 0.11121, 0.237891, 0.610885, 0.951454, 0.425678, 0.855927, 0.70552, 0.906134, 0.962957, 0.760637, 0.48084, 0.472374, 0.296373, 0.679627, 0.0545963, 0.308886, 0.0136083, 0.0843587, 0.750473, 0.0169516, 0.408982, 0.487306, 0.44847, 0.497858, 0.166848, 0.536904, 0.0238632, 0.532125, 0.608967, 0.880586, 0.916938, 0.466882, 0.183992, 0.99038, 0.969359, 0.704156, 0.0707591, 0.311747, 0.643952, 0.961373, 0.117798, 0.0127019, 0.568872, 0.611655, 0.132922, 0.122016, 0.328011, 0.667601, 0.41521, 0.84017, 0.951388, 0.438889, 0.998321, 0.246801, 0.857503, 0.549359, 0.448145, 0.910791, 0.663354, 0.466896, 0.969398, 0.185962, 0.606303, 0.351741, 0.554721, 0.211537, 0.287294, 0.450199, 0.0845679, 0.895073, 0.950543, 0.112979, 0.366648, 0.353683, 0.839115, 0.78919, 0.730804, 0.0128286, 0.782073, 0.679974, 0.938358, 0.917862, 0.893455, 0.40637, 0.708488, 0.0402671, 0.466489, 0.830445, 0.207765, 0.633953, 0.885332, 0.186791, 0.322338, 0.471009, 0.195981, 0.806484, 0.0898016, 0.342517, 0.402745, 0.897323, 0.50386, 0.886677, 0.775764, 0.340886, 0.0178599, 0.071966, 0.355321, 0.526534, 0.571361, 0.891612, 0.535703, 0.680975, 0.375466, 0.473323, 0.346191, 0.150443, 0.0793787, 0.736522, 0.156608, 0.723893, 0.0418027, 0.244151, 0.281301, 0.242679, 0.962778, 0.659296, 0.0406442, 0.745364, 0.0491158, 0.207134, 0.29123, 0.390656, 0.851116, 0.775254, 0.676169, 0.775072, 0.201753, 0.911746, 0.916252, 0.490718, 0.47074, 0.208377, 0.437142, 0.190671, 0.317374, 0.716163, 0.155438, 0.211228, 0.0992648, 0.734662, 0.622772, 0.682174, 0.364472, 0.426553, 0.54833, 0.561615, 0.346359, 0.0637497, 0.134678, 0.516024, 0.838203, 0.0333728, 0.999817, 0.405307, 0.882846, 0.523026, 0.247645, 0.700042, 0.597067, 0.846675, 0.41602, 0.968026, 0.0935502, 0.0795948, 0.222172, 0.311875, 0.522947, 0.532991, 0.691376, 0.456124, 0.307415, 0.151083, 0.518461, 0.975926, 0.788788, 0.992122, 0.442011, 0.221183, 0.126321, 0.491181, 0.0782218, 0.00835354, 0.0153873, 0.849414, 0.781973, 0.72006, 0.0754405, 0.270888, 0.23216, 0.678088, 0.781213, 0.0681483, 0.973903, 0.567992, 0.305081, 0.25545, 0.31452, 0.601257, 0.0730959, 0.324151, 0.679678, 0.466336, 0.0866749, 0.148334, 0.844256, 0.597887, 0.420549, 0.485273, 0.84316, 0.266977, 0.782732, 0.518613, 0.175381, 0.831228, 0.0826966, 0.95727, 0.272967, 0.904909, 0.714836, 0.852345, 0.0263536, 0.55001, 0.376085, 0.527171, 0.848943, 0.596237, 0.213725, 0.360239, 0.989413, 0.793701, 0.144587, 0.422074, 0.252385, 0.035152, 0.121605, 0.66383, 0.218948, 0.928759, 0.123024, 0.18125, 0.927481, 0.736012, 0.825113, 0.464479, 0.947227, 0.524561, 0.591668, 0.562223, 0.0891991, 0.870499, 0.248908, 0.251128, 0.185599, 0.0911438, 0.0606068, 0.418797, 0.251509, 0.0401454, 0.708806, 0.362404, 0.10882, 0.205306, 0.338228, 0.567909, 0.956244, 0.404162, 0.100574, 0.675315, 0.321541, 0.167381, 0.054955, 0.45024, 0.308185, 0.180924, 0.018628, 0.206415, 0.486079, 0.789622, 0.683993, 0.186931, 0.989305, 0.795853, 0.311741, 0.433837, 0.36134, 0.469609, 0.650928, 0.000152883, 0.296594, 0.552277, 0.822009, 0.412609, 0.805788, 0.340937, 0.118595, 0.714683, 0.0813911, 0.669685, 0.89432, 0.735282, 0.333414, 0.800931, 0.866457, 0.11765, 0.0291047, 0.68426, 0.97027, 0.898661, 0.509765, 0.452202, 0.609894, 0.874029, 0.651235, 0.967725, 0.371908, 0.719054, 0.459508, 0.361349, 0.248698, 0.988409, 0.832164, 0.267637, 0.852097, 0.27578, 0.145816, 0.0521819, 0.497729, 0.438889, 0.946071, 0.244535, 0.044904, 0.395039, 0.220939, 0.225013, 0.907887, 0.439219, 0.108259, 0.573008, 0.327463, 0.513467, 0.384904, 0.394456, 0.627174, 0.525882, 0.105474, 0.546369, 0.324586, 0.128633, 0.279543, 0.308454, 0.399267, 0.501467, 0.555036, 0.482513, 0.648467, 0.44224, 0.0430528, 0.0470284, 0.303334, 0.11172, 0.344984, 0.728024, 0.968193, 0.998746, 0.714951, 0.22583, 0.304332, 0.311972, 0.203844, 0.932815, 0.729309, 0.910439, 0.59709, 0.248474, 0.929357, 0.966751, 0.407996, 0.79199, 0.314115, 0.334815, 0.463686, 0.271123, 0.792893, 0.0220363, 0.0470036, 0.364282, 0.7702, 0.761336, 0.365589, 0.232697, 0.426116, 0.767974, 0.942658, 0.533315, 0.187012, 0.272715, 0.512104, 0.0753536, 0.920745, 0.749625, 0.397315, 0.440973, 0.157731, 0.142438, 0.366963, 0.98238, 0.778702, 0.666278, 0.119054, 0.702818, 0.131588, 0.316012, 0.10308, 0.343372, 0.015803, 0.746052, 0.537793, 0.179641, 0.347586, 0.038689, 0.0419869, 0.121337, 0.274554, 0.660173, 0.391787, 0.197452, 0.448393, 0.83109, 0.000621278, 0.0744846, 0.520339, 0.0639139, 0.052574, 0.945808, 0.286307, 0.210483, 0.543927, 0.0473871, 0.292822, 0.540231, 0.961765, 0.0334788, 0.73264, 0.0930378, 0.116691, 0.416015, 0.275887, 0.591091, 0.201551, 0.812337, 0.122688, 0.81739, 0.214905, 0.327088, 0.826873, 0.231944, 0.0714683, 0.100988, 0.796134, 0.625878, 0.148388, 0.651136, 0.2714, 0.777948, 0.526884, 0.23928, 0.177201, 0.556602, 0.443363, 0.711407, 0.412621, 0.390755, 0.652081, 0.553327, 0.348046, 0.690167, 0.139136, 0.638676, 0.719849, 0.969193, 0.226688, 0.0559289, 0.179877, 0.349542, 0.154048, 0.859177, 0.348149, 0.129761, 0.0752452, 0.75169, 0.209575, 0.0382844, 0.33134, 0.217399, 0.76794, 0.247522, 0.137297, 0.742603, 0.930618, 0.252263, 0.277657, 0.190196, 0.960708, 0.955557, 0.954958, 0.126494, 0.885494, 0.153457, 0.508318, 0.577839, 0.0704635, 0.131583, 0.432711, 0.587058, 0.16253, 0.691451, 0.512166, 0.644221, 0.0817846, 0.174534, 0.0211406, 0.982946, 0.897297, 0.143828, 0.250435, 0.315898, 0.485206, 0.346533, 0.906953, 0.658875, 0.901944, 0.353259, 0.649786, 0.98355, 0.96192, 0.0486344, 0.0733306, 0.530502, 0.51493, 0.669462, 0.712869, 0.443836, 0.375251, 0.616511, 0.17634, 0.679968, 0.23312, 0.86475, 0.0923384, 0.445303, 0.0426846, 0.466083, 0.115238, 0.634103, 0.145757, 0.964278, 0.368903, 0.282854, 0.857168, 0.262771, 0.544067, 0.975218, 0.114069, 0.564343, 0.00196608, 0.255016, 0.121178, 0.555693, 0.384026, 0.541916, 0.862135, 0.861063, 0.061127, 0.401126, 0.0718832, 0.592997, 0.221712, 0.665091, 0.392748, 0.0284544, 0.00480383, 0.331763, 0.258329, 0.907294, 0.882583, 0.747399, 0.149289, 0.684526, 0.0928661, 0.47255, 0.509291, 0.159447, 0.0495326, 0.176567, 0.875763, 0.282266, 0.461443, 0.304288, 0.954562, 0.0246622, 0.910701, 0.259072, 0.235545, 0.589303, 0.0198529, 0.633738, 0.603969, 0.125811, 0.946871, 0.849569, 0.219594, 0.871518, 0.0852934, 0.487085, 0.587286, 0.0324913, 0.694259, 0.833348, 0.088147, 0.335614, 0.856393, 0.99062, 0.0129477, 0.29039, 0.652248, 0.494523, 0.620483, 0.337184, 0.307545, 0.909197, 0.948583, 0.735265, 0.121434, 0.20092, 0.794952, 0.811182, 0.638097, 0.0519457, 0.754894, 0.681289, 0.931989, 0.187526, 0.854531, 0.400485, 0.0750136, 0.417656, 0.00785688, 0.353627, 0.874442, 0.914037, 0.549368, 0.961301, 0.693744, 0.560381, 0.186382, 0.892252, 0.132605, 0.851413, 0.528603, 0.855361, 0.900714, 0.381003, 0.367088, 0.446593, 0.0565229, 0.730683, 0.798101, 0.00584498, 0.337595, 0.548247, 0.292728, 0.704436, 0.235424, 0.980487, 0.266191, 0.721307, 0.333607, 0.517506, 0.0155455, 0.570335, 0.935535, 0.697771, 0.529979, 0.389916, 0.0594917, 0.48949, 0.859058, 0.573714, 0.0524481, 0.800078, 0.276035, 0.461155, 0.609801, 0.56982, 0.532928, 0.647428, 0.385473, 0.529303, 0.90532, 0.0749909, 0.311591, 0.406808, 0.250333, 0.428554, 0.0954362, 0.299415, 0.23062, 0.0758303, 0.330095, 0.864771, 0.802615, 0.0790398, 0.795515, 0.924973, 0.997844, 0.231854, 0.400956, 0.624391, 0.33233, 0.265495, 0.70581, 0.278682, 0.0577491, 0.61073, 0.849807, 0.122588, 0.740201, 0.465677, 0.232248, 0.362477, 0.916382, 0.206151, 0.342154, 0.969134, 0.29218, 0.048263, 0.849728, 0.855132, 0.311117, 0.299375, 0.513553, 0.993093, 0.981964, 0.313915, 0.361531, 0.297721, 0.265988, 0.287707, 0.648229, 0.185482, 0.824324, 0.237209, 0.695025, 0.0765719, 0.751906, 0.774135, 0.146658, 0.193966, 0.0945798, 0.814675, 0.676216, 0.522658, 0.172905, 0.891806, 0.612833, 0.860443, 0.0138056, 0.41671, 0.111926, 0.897906, 0.616594, 0.0187485, 0.377173, 0.2049, 0.313285, 0.34492, 0.761399, 0.48825, 0.977209, 0.376702, 0.232358, 0.710273, 0.614304, 0.752861, 0.473428, 0.619673, 0.996026, 0.857368, 0.280089, 0.589473, 0.347378, 0.761665, 0.234101, 0.891007, 0.963599, 0.537103, 0.6287, 0.928706, 0.159532, 0.422172, 0.472491, 0.503188, 0.407906, 0.965226, 0.0893149, 0.0742298, 0.511836, 0.0566646, 0.989978, 0.810493, 0.607607, 0.350978, 0.532754, 0.590771, 0.652036, 0.519291, 0.028445, 0.295716, 0.554999, 0.532723, 0.648494, 0.958449, 0.989351, 0.986528, 0.85819, 0.129323, 0.645523, 0.701979, 0.961875, 0.77837, 0.37565, 0.6681, 0.938844, 0.150579, 0.733476, 0.83588, 0.414966, 0.279319, 0.271954, 0.697562, 0.328876, 0.473416, 0.507454, 0.492868, 0.942246, 0.0539982, 0.889359, 0.562326, 0.0874451, 0.634312, 0.0570977, 0.828171, 0.640236, 0.369778, 0.225997, 0.478475, 0.604702, 0.7699, 0.564844, 0.170982, 0.772329, 0.104521, 0.646618, 0.910601, 0.471964, 0.640794, 0.772525, 0.377406, 0.427506, 0.246801, 0.767264, 0.435218, 0.909188, 0.578062, 0.728639, 0.281208, 0.986284, 0.389003, 0.883398, 0.592691, 0.212958, 0.299002, 0.0623587, 0.732634, 0.909699, 0.157832, 0.94244, 0.344185, 0.515051, 0.526997, 0.184985, 0.230327, 0.848123, 0.375193, 0.663042, 0.216331, 0.0996718, 0.845606, 0.845052, 0.245986, 0.505333, 0.18181, 0.659141, 0.0854387, 0.0770834, 0.854145, 0.0621484, 0.650899, 0.0464725, 0.862467, 0.562941, 0.695814, 0.107036, 0.525648, 0.489519, 0.667978, 0.541843, 0.965847, 0.813297, 0.973964, 0.832747, 0.633505, 0.29484, 0.925737, 0.671868, 0.782548, 0.0406698, 0.0388169, 0.530286, 0.945494, 0.385998, 0.426855, 0.708667, 0.446111, 0.675056, 0.754651, 0.49899, 0.000123706, 0.82139, 0.634399, 0.5122, 0.0436464, 0.59634, 0.210051, 0.892268, 0.939437, 0.768522, 0.829532, 0.0121239, 0.793321, 0.677915, 0.402389, 0.381086, 0.23661, 0.700266, 0.272838, 0.799273, 0.142421, 0.421968, 0.454904, 0.125529, 0.328087, 0.53168, 0.571942, 0.745459, 0.517662, 0.185116, 0.400209, 0.306928, 0.784875, 0.206251, 0.800349, 0.998392, 0.319547, 0.652783, 0.307645, 0.46269, 0.29107, 0.272444, 0.460975, 0.0228258, 0.727633, 0.101851, 0.839993, 0.155526, 0.663295, 0.00431488, 0.963233, 0.272761, 0.94667, 0.220149, 0.654932, 0.260382, 0.372564, 0.208659, 0.808699, 0.366168, 0.978037, 0.637084, 0.397285, 0.341259, 0.193716, 0.518331, 0.711828, 0.16307, 0.859098, 0.154016, 0.712408, 0.780152, 0.321595, 0.964141, 0.146146, 0.026113, 0.442154, 0.883813, 0.0235895, 0.0497293, 0.514756, 0.763943, 0.510599, 0.748551, 0.987939, 0.556698, 0.756057, 0.94576, 0.325178, 0.953888, 0.683355, 0.365568, 0.904735, 0.799573, 0.0678182, 0.415067, 0.776265, 0.608494, 0.392023, 0.633459, 0.985935, 0.0337849, 0.565807, 0.546233, 0.428603, 0.203867, 0.674154, 0.510406, 0.863566, 0.82298, 0.82407, 0.626021, 0.998042, 0.543192, 0.728762, 0.33349, 0.908589, 0.633196, 0.87327, 0.841696, 0.0274701, 0.6926, 0.585719, 0.0407735, 0.752691, 0.732556, 0.36135, 0.39899, 0.473126, 0.957789, 0.491305, 0.716153, 0.268729, 0.0228071, 0.940054, 0.500136, 0.522634, 0.792832, 0.998733, 0.0497923, 0.354264, 0.900295, 0.08666, 0.0213953, 0.116608, 0.207397, 0.855374, 0.616082, 0.49466, 0.845885, 0.563914, 0.638902, 0.330478, 0.703766, 0.974715, 0.0469293, 0.704443, 0.965969, 0.566873, 0.364951, 0.329615, 0.326412, 0.708717, 0.623441, 0.805946, 0.111684, 0.289626, 0.360422, 0.858949, 0.833835, 0.145493, 0.851671, 0.576223, 0.0612911, 0.311278, 0.544059, 0.655213, 0.98384, 0.17825, 0.58869, 0.902854, 0.623592, 0.996593, 0.255208, 0.938732, 0.187494, 0.930822, 0.731068, 0.313847, 0.997787, 0.484787, 0.0690296, 0.972855, 0.761277, 0.837678, 0.21026, 0.0938839, 0.605135, 0.40101, 0.698054, 0.870501, 0.566661, 0.377853, 0.734238, 0.528549, 0.536111, 0.828237, 0.353234, 0.0212073, 0.995206, 0.997322, 0.801091, 0.253836, 0.422774, 0.439376, 0.30424, 0.725407, 0.661256, 0.000934579, 0.536666, 0.372358, 0.554708, 0.566091, 0.478092, 0.149034, 0.866995, 0.257266, 0.356091, 0.514894, 0.866604, 0.0946213, 0.674661, 0.360633, 0.0235747, 0.44877, 0.196386, 0.0110327, 0.564695, 0.256307, 0.465752, 0.940587, 0.157807, 0.752528, 0.236261, 0.334061, 0.824516, 0.750611, 0.171739, 0.955024, 0.155174, 0.811317, 0.151852, 0.370083, 0.137807, 0.62584, 0.676249, 0.126773, 0.269, 0.0133221, 0.0409992, 0.909648, 0.92545, 0.692274, 0.808631, 5.22226e-05, 0.445186, 0.907233, 0.646883, 0.380297, 0.145854, 0.0366033, 0.543275, 0.589321, 0.770368, 0.76493, 0.907667, 0.013469, 0.45581, 0.407324, 0.400907, 0.64677, 0.800205, 0.974743, 0.199658, 0.476778, 0.155743, 0.511614, 0.29068, 0.129454, 0.403126, 0.133288, 0.828854, 0.797533, 0.0408515, 0.929734, 0.89193, 0.489751, 0.242435, 0.0353366, 0.884019, 0.413616, 0.625557, 0.165755, 0.965712, 0.211118, 0.0516026, 0.728871, 0.343795, 0.936064, 0.882308, 0.508928, 0.0317102, 0.522808, 0.989725, 0.468226, 0.900931, 0.518687, 0.0558699, 0.827276, 0.939467, 0.824394, 0.396372, 0.463108, 0.991826, 0.867848, 0.163382, 0.341291, 0.0408896, 0.891399, 0.946901, 0.648964, 0.331905, 0.106113, 0.294778, 0.5142, 0.821597, 0.980835, 0.251497, 0.404104, 0.796816, 0.907509, 0.224666, 0.740501, 0.746964, 0.154066, 0.24623, 0.965865, 0.0257201, 0.349377, 0.19348, 0.774477, 0.673669, 0.00334104, 0.197086, 0.693573, 0.451286, 0.630362, 0.479849, 0.549777, 0.499125, 0.77955, 0.420615, 0.904979, 0.818498, 0.315175, 0.676506, 0.559792, 0.710228, 0.535712, 0.206535, 0.671435, 0.94613, 0.018489, 0.536387, 0.171385, 0.531761, 0.107144, 0.440946, 0.467984, 0.114912, 0.644664, 0.947846, 0.189076, 0.79553, 0.489926, 0.84867, 0.44369, 0.748664, 0.491966, 0.424008, 0.900913, 0.345689, 0.170591, 0.778731, 0.289108, 0.563852, 0.272435, 0.398348, 0.917094, 0.672414, 0.0790704, 0.965411, 0.752036, 0.858433, 0.598492, 0.416661, 0.838474, 0.0743478, 0.332426, 0.265022, 0.817673, 0.0111449, 0.97324, 0.585007, 0.965854, 0.703864, 0.430449, 0.126915, 0.263827, 0.713899, 0.788896, 0.459829, 0.74091, 0.25231, 0.656755, 0.878163, 0.0135091, 0.971193, 0.0679634, 0.695175, 0.635316, 0.81517, 0.816021, 0.859318, 0.185514, 0.536759, 0.0854268, 0.0198438, 0.396785, 0.165767, 0.021142, 0.844817, 0.278006, 0.248765, 0.215202, 0.650363, 0.421792, 0.0231004, 0.381938, 0.322261, 0.95927, 0.587418, 0.890705, 0.0918716, 0.756206, 0.307385, 0.363735, 0.449385, 0.214686, 0.498561, 0.553097, 0.771608, 0.0452504, 0.789986, 0.784346, 0.671845, 0.347079, 0.892937, 0.771831, 0.244026, 0.422099, 0.647207, 0.55745, 0.341059, 0.986261, 0.854703, 0.632232, 0.168835, 0.122339, 0.748749, 0.417043, 0.334404, 0.760741, 0.0747617, 0.0674361, 0.909866, 0.548944, 0.228904, 0.307954, 0.432871, 0.758219, 0.912944, 0.874557, 0.204402, 0.608711, 0.892022, 0.584904, 0.693536, 0.143239, 0.147304, 0.65105, 0.61727, 0.310902, 0.268455, 0.232825, 0.242917, 0.284695, 0.425098, 0.823516, 0.103411, 0.37422, 0.627118, 0.165332, 0.0996086, 0.229779, 0.704111, 0.247478, 0.442131, 0.230572, 0.254941, 0.668633, 0.00632709, 0.902998, 0.14493, 0.185539, 0.988112, 0.743908, 0.576387, 0.270589, 0.810955, 0.519569, 0.587609, 0.154675, 0.930571, 0.336278, 0.791468, 0.680265, 0.156684, 0.9047, 0.836809, 0.0627824, 0.779515, 0.951883, 0.0402845, 0.667585, 0.0596659, 0.00554327, 0.174659, 0.559528, 0.71804, 0.827254, 0.752481, 0.254988, 0.257062, 0.243701, 0.52447, 0.419191, 0.246754, 0.560454, 0.954979, 0.106195, 0.312706, 0.821995, 0.691169, 0.733579, 0.614484, 0.395418, 0.398191, 0.796054, 0.729584, 0.871194, 0.798215, 0.714881, 0.62515, 0.868716, 0.233857, 0.604042, 0.989776, 0.68056, 0.588099, 0.468001, 0.410207, 0.703179, 0.0518371, 0.371548, 0.244777, 0.676483, 0.448314, 0.817105, 0.261293, 0.0560965, 0.305512, 0.410769, 0.53507, 0.810238, 0.487978, 0.717539, 0.229925, 0.755798, 0.849829, 0.935615, 0.479142, 0.956455, 0.178576, 0.306604, 0.590131, 0.461184, 0.726295, 0.339509, 0.931755, 0.51469, 0.562869, 0.233045, 0.669005, 0.458389, 0.304234, 0.998437, 0.802958, 0.00287254, 0.549664, 0.405988, 0.669151, 0.931069, 0.443184, 0.786795, 0.563031, 0.904177, 0.564392, 0.0695452, 0.537668, 0.898558, 0.161831, 0.94417, 0.0660374, 0.272476, 0.884633, 0.448868, 0.216023, 0.879965, 0.536118, 0.0129657, 0.918419, 0.731987, 0.238858, 0.919786, 0.633086, 0.3979, 0.991612, 0.0248761, 0.466187, 0.518563, 0.00135427, 0.783371, 0.81312, 0.845813, 0.440608, 0.268748, 0.177056, 0.534299, 0.744045, 0.5338, 0.0960609, 0.770534, 0.195621, 0.664168, 0.810979, 0.291199, 0.379753, 0.270422, 0.386728, 0.634924, 0.124886, 0.0528745, 0.0441749, 0.62043, 0.362443, 0.594055, 0.239577, 0.378929, 0.00362681, 0.899329, 0.741276, 0.310037, 0.591128, 0.59827, 0.701737, 0.754295, 0.901834, 0.366462, 0.424326, 0.578993, 0.973271, 0.979568, 0.329886, 0.417171, 0.600718, 0.829349, 0.140139, 0.591929, 0.360373, 0.710421, 0.20802, 0.45779, 0.946281, 0.804943, 0.347426, 0.0933944, 0.0850293, 0.678406, 0.500757, 0.801478, 0.856268, 0.772649, 0.625221, 0.811458, 0.674832, 0.201819, 0.348209, 0.829938, 0.351239, 0.767899, 0.236525, 0.879076, 0.307544, 0.588421, 0.994447, 0.484925, 0.322582, 0.136779, 0.0596135, 0.985532, 0.823767, 0.348197, 0.839272, 0.446138, 0.0600339, 0.188546, 0.784976, 0.924112, 0.0285873, 0.2615, 0.420199, 0.484778, 0.314624, 0.650726, 0.741877, 0.348454, 0.493312, 0.868449, 0.16494, 0.101972, 0.150256, 0.642995, 0.609494, 0.211414, 0.170353, 0.155403, 0.973829, 0.218438, 0.771411, 0.533138, 0.256995, 0.508021, 0.386629, 0.875839, 0.471398, 0.259714, 0.046088, 0.661181, 0.109682, 0.953305, 0.426744, 0.318613, 0.131064, 0.528107, 0.901909, 0.704159, 0.390971, 0.117592, 0.340228, 0.0271295, 0.0343565, 0.65433, 0.630972, 0.643468, 0.956491, 0.290683, 0.210351, 0.0684726, 0.879056, 0.538815, 0.73113, 0.321552, 0.789439, 0.0220458, 0.681739, 0.658808, 0.0207763, 0.399012, 0.442289, 0.0081904, 0.965355, 0.968383, 0.505478, 0.734544, 0.456459, 0.946505, 0.5838, 0.0841368, 0.871819, 0.966062, 0.529957, 0.0685184, 0.505448, 0.00104559, 0.519425, 0.0994998, 0.94876, 0.187865, 0.0478558, 0.203239, 0.121373, 0.380502, 0.476708, 0.253908, 0.760487, 0.524501, 0.00378336, 0.424938, 0.396477, 0.988718, 0.675748, 0.897479, 0.393099, 0.192654, 0.24022, 0.818951, 0.452006, 0.470301, 0.511348, 0.152986, 0.816335, 0.827905, 0.900473, 0.526164, 0.522903, 0.597298, 0.855704, 0.0843944, 0.271079, 0.261082, 0.632587, 0.215406, 0.735931, 0.963066, 0.369052, 0.331391, 0.856121, 0.926687, 0.872205, 0.193515, 0.658951, 0.213902, 0.419573, 0.842185, 0.972646, 0.928725, 0.825522, 0.374839, 0.380365, 0.477968, 0.43664, 0.792471, 0.373677, 0.928721, 0.891099, 0.00457181, 0.0151176, 0.155974, 0.231442, 0.888252, 0.593933, 0.567595, 0.742686, 0.450106, 0.46405, 0.972927, 0.700518, 0.746699, 0.672083, 0.7745, 0.258898, 0.492833, 0.345259, 0.117912, 0.813262, 0.287436, 0.766698, 0.397228, 0.71379, 0.912584, 0.623629, 0.998045, 0.335258, 0.305145, 0.922401, 0.233494, 0.402921, 0.793861, 0.317098, 0.854625, 0.932591, 0.448019, 0.188165, 0.358034, 0.628645, 0.592274, 0.728908, 0.664309, 0.236272, 0.782148, 0.406931, 0.464944, 0.687448, 0.641086, 0.653573, 0.698409, 0.722093, 0.0807905, 0.14551, 0.774841, 0.112036, 0.611869, 0.378101, 0.968302, 0.935715, 0.591888, 0.379607, 0.0465486, 0.756377, 0.708986, 0.162911, 0.185895, 0.292757, 0.222649, 0.0541529, 0.66727, 0.148261, 0.798123, 0.53794, 0.791816, 0.339215, 0.750851, 0.928108, 0.202508, 0.174139, 0.879858, 0.785746, 0.37254, 0.0724217, 0.890984, 0.506575, 0.179996, 0.493687, 0.274805, 0.829046, 0.685959, 0.222078, 0.477704, 0.457378, 0.123367, 0.307678, 0.958242, 0.328171, 0.704138, 0.505905, 0.442728, 0.478052, 0.188494, 0.819543, 0.695942, 0.418202, 0.905725, 0.539901, 0.822009, 0.590204, 0.986972, 0.658684, 0.653203, 0.759507, 0.153342, 0.230653, 0.975424, 0.492179, 0.773185, 0.984421, 0.591061, 0.304929, 0.285553, 0.248724, 0.868777, 0.165803, 0.571886, 0.0382151, 0.737778, 0.496819, 0.593074, 0.543781, 0.870749, 0.473773, 0.385994, 0.181543, 0.983263, 0.749487, 0.768961, 0.869838, 0.424798, 0.212381, 0.91479, 0.908922, 0.88557, 0.0849491, 0.332601, 0.994214, 0.0708667, 0.68541, 0.683132, 0.47715, 0.463184, 0.377995, 0.739698, 0.854983, 0.416695, 0.0590477, 0.0277457, 0.972863, 0.56666, 0.982644, 0.0616205, 0.317295, 0.610883, 0.49001, 0.969976, 0.473553, 0.144414, 0.163364, 0.263974, 0.0800355, 0.799327, 0.215528, 0.555437, 0.355901, 0.095414, 0.526159, 0.922489, 0.884723, 0.552319, 0.221846, 0.342006, 0.833543, 0.0961636, 0.854414, 0.225768, 0.345182, 0.467698, 0.2331, 0.752314, 0.782751, 0.838056, 0.897655, 0.394737, 0.709481, 0.431709, 0.640688, 0.374215, 0.415891, 0.177086, 0.849688, 0.495799, 0.413364, 0.869047, 0.302828, 0.384615, 0.777178, 0.999214, 0.972958, 0.295983, 0.653377, 0.977729, 0.91197, 0.676175, 0.567707, 0.747602, 0.942602, 0.00302163, 0.354911, 0.0682867, 0.876355, 0.603126, 0.307834, 0.0845982, 0.140071, 0.575807, 0.137581, 0.130204, 0.730814, 0.488753, 0.1717, 0.535585, 0.18301, 0.974918, 0.355627, 0.240771, 0.32037, 0.36747, 0.969411, 0.097091, 0.634293, 0.281204, 0.857913, 0.684348, 0.657576, 0.267203, 0.0507833, 0.543298, 0.663755, 0.915279, 0.223358, 0.122932, 0.530327, 0.307423, 0.577205, 0.0229419, 0.538232, 0.85606, 0.55781, 0.890343, 0.316649, 0.0318871, 0.000642694, 0.935739, 0.358688, 0.536053, 0.793839, 0.917359, 0.790575, 0.199029, 0.404584, 0.839985, 0.453373, 0.312628, 0.838703, 0.485974, 0.436318, 0.958224, 0.235372, 0.765102, 0.909398, 0.414794, 0.297755, 0.969311, 0.880834, 0.257721, 0.455292, 0.0254474, 0.338577, 0.11561, 0.970854, 0.768593, 0.930545, 0.109438, 0.217873, 0.716096, 0.447394, 0.848354, 0.899927, 0.582273, 0.354063, 0.410766, 0.543359, 0.718875, 0.82564, 0.917152, 0.503246, 0.995162, 0.718001, 0.945581, 0.435387, 0.203257, 0.650221, 0.801618, 0.219279, 0.0379758, 0.61318, 0.404316, 0.496502, 0.203822, 0.799091, 0.696386, 0.540442, 0.494644, 0.612522, 0.820322, 0.642791, 0.74066, 0.762133, 0.71405, 0.424672, 0.0449132, 0.179444, 0.0435775, 0.471613, 0.209735, 0.921058, 0.115136, 0.403898, 0.610307, 0.704204, 0.0167934, 0.460815, 0.262622, 0.856886, 0.587343, 0.801911, 0.183914, 0.185664, 0.0466625, 0.269531, 0.262823, 0.437082, 0.220476, 0.614148, 0.594051, 0.854244, 0.745051, 0.28351, 0.034429, 0.308382, 0.505497, 0.0232656, 0.493913, 0.34385, 0.0164371, 0.769361, 0.0158044, 0.474548, 0.0477609, 0.762977, 0.493348, 0.108953, 0.206988, 0.397475, 0.486607, 0.257376, 0.360176, 0.283457, 0.293826, 0.280395, 0.185887, 0.528896, 0.571727, 0.861589, 0.962315, 0.290201, 0.405897, 0.509888, 0.81183, 0.0305172, 0.914301, 0.381285, 0.522811, 0.342282, 0.337673, 0.378216, 0.153737, 0.853185, 0.566533, 0.731384, 0.0867227, 0.309118, 0.241587, 0.513134, 0.95369, 0.465721, 0.260558, 0.835028, 0.113438, 0.342119, 0.425102, 0.293586, 0.744854, 0.682647, 0.115621, 0.589579, 0.201552, 0.673105, 0.27366, 0.874928, 0.380599, 0.657444, 0.156169, 0.427213, 0.640715, 0.668032, 0.522963, 0.11628, 0.992925, 0.324943, 0.897585, 0.547061, 0.43195, 0.524784, 0.293176, 0.0135561, 0.256651, 0.783486, 0.825907, 0.274228, 0.7481, 0.547017, 0.42749, 0.999425, 0.0670568, 0.00511866, 0.731329, 0.972605, 0.708638, 0.228876, 0.0474373, 0.885787, 0.217058, 0.402035, 0.433456, 0.169397, 0.462544, 0.275932, 0.608642, 0.566552, 0.528844, 0.99498, 0.64558, 0.896656, 0.925517, 0.570801, 0.760168, 0.346442, 0.887954, 0.734144, 0.110051, 0.251261, 0.458466, 0.472215, 0.857166, 0.173167, 0.293479, 0.923124, 0.158581, 0.613774, 0.129953, 0.171725, 0.0886381, 0.460035, 0.0062677, 0.824812, 0.750263, 0.353371, 0.39708, 0.461503, 0.981582, 0.99504, 0.374635, 0.707599, 0.756032, 0.340171, 0.854328, 0.592721, 0.925933, 0.249643, 0.983378, 0.619575, 0.595765, 0.556694, 0.916095, 0.0959277, 0.0916626, 0.219815, 0.473381, 0.401479, 0.360776, 0.203101, 0.279391, 0.68334, 0.285407, 0.289709, 0.786986, 0.00396632, 0.953997, 0.264644, 0.719435, 0.491971, 0.282312, 0.521394, 0.39459, 0.787033, 0.360966, 0.61271, 0.0769574, 0.640273, 0.725047, 0.066325, 0.83893, 0.913585, 0.686559, 0.634176, 0.494692, 0.901601, 0.974235, 0.95669, 0.294684, 0.102111, 0.573252, 0.368238, 0.431652, 0.709033, 0.53859, 0.74427, 0.0197083, 0.654015, 0.740016, 0.290272, 0.891679, 0.472455, 0.345248, 0.128804, 0.152924, 0.618935, 0.736109, 0.158865, 0.415915, 0.364294, 0.414978, 0.388488, 0.0551452, 0.16907, 0.256867, 0.499739, 0.751166, 0.144495, 0.898076, 0.155751, 0.776259, 0.467601, 0.46448, 0.623566, 0.721487, 0.767064, 0.743511, 0.205517, 0.835401, 0.580185, 0.884513, 0.434778, 0.0642024, 0.342705, 0.248814, 0.970129, 0.0709074, 0.322985, 0.539647, 0.912792, 0.339331, 0.368452, 0.179004, 0.407487, 0.716975, 0.851857, 0.51384, 0.490104, 0.0778379, 0.108685, 0.161458, 0.11773, 0.448846, 0.828538, 0.584346, 0.153791, 0.493178, 0.310083, 0.0396996, 0.145746, 0.743706, 0.0227019, 0.394465, 0.0852307, 0.842261, 0.74815, 0.222245, 0.438022, 0.854282, 0.633587, 0.316247, 0.464999, 0.948878, 0.667656, 0.820542, 0.34369, 0.215555, 0.946595, 0.721601, 0.22043, 0.261352, 0.612186, 0.870671, 0.714755, 0.36966, 0.175521, 0.237019, 0.000851959, 0.906143, 0.833103, 0.638396, 0.601893, 0.926978, 0.390023, 0.255927, 0.451647, 0.834361, 0.652625, 0.401701, 0.99337, 0.667848, 0.659488, 0.124219, 0.486276, 0.548035, 0.400169, 0.151954, 0.17069, 0.416361, 0.0465857, 0.759331, 0.628014, 0.108069, 0.755979, 0.0579521, 0.101546, 0.0659961, 0.505494, 0.954371, 0.361013, 0.536745, 0.868043, 0.59628, 0.372852, 0.461984, 0.851089, 0.307691, 0.240107, 0.196247, 0.985667, 0.758297, 0.543791, 0.257839, 0.915945, 0.732074, 0.0586091, 0.629994, 0.445587, 0.434561, 0.360788, 0.89158, 0.871263, 0.496539, 0.965595, 0.532112, 0.17287, 0.774456, 0.702859, 0.980716, 0.72158, 0.750644, 0.520465, 0.689206, 0.00144652, 0.146425, 0.567374, 0.710851, 0.884231, 0.861781, 0.765327, 0.206968, 0.771618, 0.444785, 0.239685, 0.0222081, 0.525997, 0.318925, 0.917438, 0.963911, 0.294071, 0.523117, 0.128301, 0.328972, 0.139177, 0.363254, 0.24417, 0.0443521, 0.973206, 0.848795, 0.606445, 0.404438, 0.618627, 0.660174, 0.414985, 0.67641, 0.577587, 0.190155, 0.270518, 0.393263, 0.294353, 0.88946, 0.221099, 0.85264, 0.101308, 0.659589, 0.439255, 0.781684, 0.572417, 0.212141, 0.716473, 0.582686, 0.403213, 0.794935, 0.309954, 0.067165, 0.796011, 0.516649, 0.0718782, 0.0992761, 0.507827, 0.0684038, 0.666391, 0.884733, 0.183418, 0.490677, 0.661127, 0.617068, 0.85481, 0.398186, 0.476335, 0.388993, 0.167819, 0.509307, 0.0938016, 0.0734592, 0.248536, 0.989461, 0.273933, 0.509542, 0.433594, 0.963002, 0.0171066, 0.504101, 0.524548, 0.233202, 0.782803, 0.820336, 0.767046, 0.259418, 0.651923, 0.956426, 0.216327, 0.47554, 0.273976, 0.616272, 0.955602, 0.735892, 0.995032, 0.000578952, 0.979426, 0.939597, 0.546853, 0.761098, 0.259445, 0.920414, 0.749957, 0.195534, 0.0838292, 0.325312, 0.925283, 0.697592, 0.995375, 0.0368342, 0.398746, 0.554275, 0.395625, 0.387227, 0.103134, 0.982489, 0.851634, 0.697924, 0.0178833, 0.507153, 0.0122278, 0.23025, 0.648683, 0.400998, 0.195654, 0.675248, 0.252502, 0.991594, 0.784603, 0.544893, 0.615543, 0.152306, 0.322445, 0.793154, 0.915662, 0.983772, 0.763142, 0.57135, 0.82519, 0.202078, 0.522719, 0.885207, 0.275491, 0.595655, 0.818549, 0.0524568, 0.250328, 0.880077, 0.322784, 0.572431, 0.215638, 0.878305, 0.383094, 0.74717, 0.145541, 0.0785346, 0.999607, 0.882858, 0.356455, 0.678831, 0.541308, 0.811356, 0.105513, 0.366959, 0.350074, 0.390021, 0.0786344, 0.599412, 0.398567, 0.973736, 0.703613, 0.435228, 0.686653, 0.538779, 0.7215, 0.482741, 0.615045, 0.559884, 0.257104, 0.69479, 0.893027, 0.473533, 0.328841, 0.489412, 0.671038, 0.0651754, 0.490045, 0.0542036, 0.887402, 0.874585, 0.00341829, 0.89898, 0.618432, 0.950719, 0.174197, 0.883646, 0.0387309, 0.928414, 0.786324, 0.0760994, 0.341326, 0.301425, 0.977251, 0.8747, 0.446584, 0.386461, 0.396124, 0.877713, 0.148695, 0.526064, 0.152571, 0.599459, 0.326556, 0.144899, 0.0794079, 0.691528, 0.787482, 0.985864, 0.230712, 0.512173, 0.670602, 0.42419, 0.392844, 0.62434, 0.0253744, 0.245074, 0.940214, 0.962911, 0.771694, 0.975384, 0.434182, 0.188041, 0.884865, 0.126492, 0.439198, 0.27441, 0.975909, 0.20862, 0.908787, 0.0162853, 0.820684, 0.351949, 0.516667, 0.0583989, 0.916234, 0.610965, 0.917754, 0.75513, 0.606843, 0.719708, 0.337624, 0.0756874, 0.729834, 0.231996, 0.992609, 0.682814, 0.531456, 0.909809, 0.0926208, 0.494448, 0.359783, 0.607765, 0.946855, 0.270242, 0.283128, 0.324045, 0.481104, 0.576593, 0.522148, 0.942568, 0.38905, 0.331622, 0.00690282, 0.0136987, 0.986947, 0.455013, 0.191329, 0.244427, 0.216666, 0.983571, 0.742834, 0.76621, 0.739938, 0.158041, 0.453855, 0.814879, 0.172858, 0.726555, 0.383684, 0.560341, 0.714618, 0.277704, 0.830432, 0.166897, 0.825986, 0.860308, 0.360711, 0.419045, 0.637577, 0.495151, 0.20889, 0.586641, 0.0216315, 0.428847, 0.580844, 0.935929, 0.270237, 0.919914, 0.080893, 0.676047, 0.275461, 0.727691, 0.417885, 0.84971, 0.483685, 0.500607, 0.0224612, 0.922548, 0.336375, 0.994413, 0.0786807, 0.989071, 0.164141, 0.816234, 0.752992, 0.844229, 0.333462, 0.871827, 0.845022, 0.408043, 0.174995, 0.402443, 0.247912, 0.760893, 0.958729, 0.390989, 0.323057, 0.599271, 0.919247, 0.944151, 0.875851, 0.663034, 0.85682, 0.528876, 0.722132, 0.298359, 0.443992, 0.549704, 0.491908, 0.121226, 0.589618, 0.756258, 0.423677, 0.274582, 0.14371, 0.339394, 0.575378, 0.203654, 0.0561348, 0.0263823, 0.730298, 0.605367, 0.852316, 0.737382, 0.276795, 0.0408388, 0.366526, 0.949913, 0.240951, 0.902703, 0.685708, 0.138125, 0.414444, 0.457696, 0.752413, 0.430569, 0.904826, 0.698174, 0.708283, 0.538915, 0.230378, 0.52034, 0.714914, 0.108449, 0.648489, 0.612991, 0.471486, 0.267029, 0.680143, 0.933346, 0.940395, 0.652139, 0.0067817, 0.88264, 0.505585, 0.420107, 0.460078, 0.0731711, 0.718455, 0.0584943, 0.894402, 0.998216, 0.183412, 0.995003, 0.190485, 0.410254, 0.378028, 0.194847, 0.897731, 0.126729, 0.223848, 0.405301, 0.48036, 0.28306, 0.731551, 0.217869, 0.17749, 0.284244, 0.280107, 0.940153, 0.806977, 0.0378991, 0.420325, 0.667665, 0.07608, 0.826678, 0.728906, 0.499561, 0.58638, 0.156616, 0.416205, 0.956702, 0.883833, 0.292335, 0.346829, 0.0405572, 0.18781, 0.915004, 0.518918, 0.781497, 0.468654, 0.261209, 0.971299, 0.266337, 0.482536, 0.0581405, 0.311585, 0.995574, 0.535754, 0.421429, 0.457745, 0.114087, 0.0277285, 0.53857, 0.55278, 0.291556, 0.423342, 0.639879, 0.761468, 0.379133, 0.580781, 0.647024, 0.966475, 0.363773, 0.352841, 0.994402, 0.66689, 0.96636, 0.0824195, 0.453254, 0.722302, 0.75103, 0.351102, 0.933818, 0.632064, 0.806556, 0.617393, 0.460752, 0.842769, 0.439656, 0.693975, 0.809105, 0.495239, 0.936034, 0.968222, 0.0669405, 0.651868, 0.553302, 0.856937, 0.586286, 0.398986, 0.843976, 0.381932, 0.204986, 0.454772, 0.635495, 0.788241, 0.579793, 0.784523, 0.711034, 0.120702, 0.865627, 0.850707, 0.236543, 0.488028, 0.499958, 0.193758, 0.950078, 0.463927, 0.553199, 0.682081, 0.103961, 0.787376, 0.170691, 0.94369, 0.412624, 0.821339, 0.490102, 0.1178, 0.318214, 0.279096, 0.273385, 0.234091, 0.0329628, 0.568795, 0.99155, 0.202706, 0.833978, 0.397504, 0.148435, 0.128027, 0.00865821, 0.920576, 0.617613, 0.556491, 0.277433, 0.922053, 0.253828, 0.261701, 0.922062, 0.527259, 0.254352, 0.0882278, 0.269511, 0.829041, 0.981663, 0.543658, 0.734067, 0.0305914, 0.150435, 0.425536, 0.734781, 0.766622, 0.354839, 0.905933, 0.0114792, 0.920432, 0.305249, 0.549855, 0.226855, 0.507703, 0.878084, 0.855841, 0.415489, 0.0967012, 0.0705745, 0.948124, 0.112601, 0.668636, 0.832847, 0.598723, 0.134116, 0.416556, 0.782924, 0.821437, 0.799143, 0.224983, 0.601066, 0.59193, 0.463013, 0.35248, 0.175495, 0.421776, 0.114031, 0.924254, 0.629984, 0.146712, 0.965943, 0.216638, 0.153906, 0.589181, 0.748575, 0.238596, 0.777913, 0.107996, 0.542583, 0.216307, 0.327313, 0.67431, 0.911768, 0.720548, 0.685776, 0.538077, 0.164609, 0.761278, 0.372187, 0.10697, 0.0469801, 0.713064, 0.175164, 0.363707, 0.402513, 0.61414, 0.0445109, 0.352064, 0.196112, 0.332916, 0.277907, 0.926622, 0.501156, 0.193773, 0.654004, 0.877652, 0.136468, 0.0841603, 0.900932, 0.487381, 0.872843, 0.128697, 0.0326086, 0.238987, 0.959209, 0.838067, 0.415121, 0.54681, 0.908723, 0.586238, 0.252606, 0.465217, 0.663561, 0.929449, 0.872382, 0.130099, 0.619685, 0.110434, 0.819971, 0.555038, 0.242786, 0.0414619, 0.691008, 0.167812, 0.425525, 0.204575, 0.802411, 0.193472, 0.00331085, 0.325937, 0.33384, 0.231158, 0.471596, 0.283891, 0.961667, 0.80617, 0.391424, 0.328921, 0.55692, 0.943881, 0.589228, 0.578214, 0.0285151, 0.279367, 0.454733, 0.0858754, 0.791617, 0.265243, 0.244759, 0.0300598, 0.391804, 0.772079, 0.707331, 0.529046, 0.240202, 0.687263, 0.794243, 0.619298, 0.593131, 0.462572, 0.525417, 0.963625, 0.594954, 0.863234, 0.0445225, 0.530425, 0.179533, 0.280874, 0.734682, 0.578481, 0.766435, 0.66733, 0.780478, 0.92408, 0.713012, 0.910428, 0.915277, 0.938228, 0.0791011, 0.172629, 0.510816, 0.571722, 0.700757, 0.51459, 0.146138, 0.572696, 0.543248, 0.196256, 0.210629, 0.307071, 0.113425, 0.0253573, 0.276641, 0.874393, 0.542933, 0.0449171, 0.64137, 0.907429, 0.453603, 0.904712, 0.815911, 0.0278734, 0.659648, 0.523139, 0.674296, 0.392313, 0.0491121, 0.943228, 0.649367, 0.483467, 0.353026, 0.706945, 0.634937, 0.553236, 0.10229, 0.159277, 0.121844, 0.898335, 0.0309602, 0.635292, 0.621516, 0.673105, 0.0247392, 0.544543, 0.957866, 0.730262, 0.789455, 0.456272, 0.752565, 0.538326, 0.241237, 0.0172564, 0.0886359, 0.919896, 0.898584, 0.1415, 0.391898, 0.369437, 0.401157, 0.0449611, 0.380616, 0.86737, 0.5042, 0.0118761, 0.025319, 0.127751, 0.704699, 0.187504, 0.221951, 0.346842, 0.941551, 0.241693, 0.730141, 0.678747, 0.105955, 0.138252, 0.595356, 0.173004, 0.0262196, 0.608228, 0.735464, 0.65623, 0.658145, 0.903512, 0.0619312, 0.307118, 0.523098, 0.38022, 0.182865, 0.205431, 0.554103, 0.689677, 0.687046, 0.398688, 0.220187, 0.987921, 0.806736, 0.18512, 0.100951, 0.0318992, 0.395293, 0.894413, 0.391095, 0.536072, 0.365466, 0.900981, 0.44976, 0.745292, 0.00269919, 0.161792, 0.804464, 0.402976, 0.514242, 0.894882, 0.467178, 0.443345, 0.557251, 0.662993, 0.169558, 0.177831, 0.340122, 0.230403, 0.7209, 0.900017, 0.348684, 0.760011, 0.586478, 0.540105, 0.959653, 0.258187, 0.557428, 0.81617, 0.470539, 0.350093, 0.924689, 0.396413, 0.605822, 0.809761, 0.393909, 0.847537, 0.760716, 0.965154, 0.274259, 0.423478, 0.578721, 0.626461, 0.482197, 0.47902, 0.112662, 0.300021, 0.952363, 0.871049, 0.164691, 0.587641, 0.986854, 0.785386, 0.685767, 0.361704, 0.383185, 0.718012, 0.887985, 0.816043, 0.151235, 0.807262, 0.923368, 0.170587, 0.0453598, 0.354248, 0.818845, 0.433263, 0.459893, 0.101068, 0.332779, 0.312316, 0.575915, 0.346561, 0.57309, 0.651234, 0.787049, 0.875996, 0.781741, 0.281502, 0.851361, 0.700611, 0.788317, 0.162706, 0.274352, 0.204869, 0.538933, 0.612158, 0.986538, 0.293636, 0.253022, 0.983186, 0.69333, 0.4558, 0.57389, 0.541949, 0.242896, 0.315584, 0.128803, 0.619416, 0.73207, 0.49515, 0.414852, 0.221251, 0.32171, 0.450767, 0.613941, 0.0635788, 0.365669, 0.0673486, 0.657975, 0.809637, 0.831814, 0.767476, 0.113712, 0.67349, 0.00897053, 0.0243029, 0.113721, 0.958285, 0.931447, 0.245056, 0.226525, 0.633526, 0.0713207, 0.450486, 0.320382, 0.247415, 0.346027, 0.95667, 0.680298, 0.646958, 0.160396, 0.103668, 0.334639, 0.0190628, 0.180642, 0.996745, 0.848917, 0.45189, 0.828155, 0.695767, 0.222793, 0.506566, 0.869116, 0.530392, 0.367377, 0.268675, 0.864288, 0.485946, 0.43006, 0.641621, 0.332084, 0.976041, 0.460188, 0.860068, 0.435064, 0.115542, 0.30856, 0.187088, 0.0506429, 0.702233, 0.146119, 0.954782, 0.0949941, 0.740496, 0.531023, 0.161372, 0.388384, 0.990412, 0.515755, 0.55135, 0.599431, 0.615233, 0.112216, 0.882591, 0.73124, 0.606734, 0.0380082, 0.54616, 0.361464, 0.261464, 0.608565, 0.204731, 0.622548, 0.260873, 0.829266, 0.681501, 0.472059, 0.248992, 0.109236, 0.643807, 0.559218, 0.499386, 0.0776536, 0.690507, 0.0131072, 0.00128421, 0.859237, 0.953749, 0.492431, 0.983477, 0.451742, 0.282001, 0.84973, 0.412843, 0.815722, 0.571076, 0.928998, 0.00366933, 0.565809, 0.02758, 0.426682, 0.0234673, 0.0315049, 0.507217, 0.112427, 0.223982, 0.77988, 0.0847727, 0.616534, 0.869932, 0.0127468, 0.00376011, 0.212537, 0.266691, 0.583224, 0.191814, 0.892874, 0.219661, 0.847788, 0.596181, 0.326485, 0.131051, 0.502695, 0.1665, 0.191719, 0.430664, 0.770787, 0.80924, 0.415358, 0.362276, 0.992043, 0.212586, 0.10825, 0.480884, 0.578593, 0.283246, 0.498406, 0.846395, 0.995079, 0.196608, 0.204897, 0.576864, 0.484274, 0.722582, 0.439047, 0.707682, 0.961247, 0.257391, 0.409792, 0.970793, 0.369866, 0.813647, 0.260741, 0.578559, 0.98362, 0.760652, 0.748633, 0.729462, 0.70189, 0.595779, 0.896848, 0.153314, 0.304294, 0.392959, 0.580822, 0.196154, 0.0693971, 0.493143, 0.445022, 0.0757038, 0.744543, 0.586538, 0.107481, 0.633554, 0.323894, 0.382525, 0.864584, 0.348254, 0.482544, 0.904677, 0.0130212, 0.708715, 0.548724, 0.89729, 0.269458, 0.720173, 0.651139, 0.443372, 0.851238, 0.932782, 0.588859, 0.411447, 0.0490516, 0.260104, 0.597765, 0.550021, 0.999469, 0.429038, 0.161861, 0.955556, 0.315843, 0.331969, 0.726946, 0.743858, 0.460919, 0.863003, 0.299829, 0.648156, 0.409192, 0.282788, 0.876251, 0.411816, 0.302483, 0.400292, 0.851434, 0.451902, 0.831296, 0.560187, 0.596311, 0.775953, 0.101386, 0.506111, 0.0104792, 0.00547416, 0.252678, 0.17857, 0.78436, 0.657489, 0.0389345, 0.466887, 0.405835, 0.604221, 0.0771849, 0.64215, 0.354854, 0.103845, 0.22058, 0.162561, 0.438923, 0.211571, 0.299419, 0.434235, 0.66236, 0.560895, 0.245476, 0.67336, 0.740411, 0.412394, 0.0717185, 0.128178, 0.27888, 0.236083, 0.364672, 0.0376948, 0.448312, 0.641603, 0.871354, 0.137495, 0.588375, 0.916368, 0.734254, 0.0942038, 0.762401, 0.808585, 0.592534, 0.335929, 0.520638, 0.851411, 0.69917, 0.461936, 0.520234, 0.47287, 0.903557, 0.52273, 0.570016, 0.690135, 0.0334597, 0.544777, 0.936128, 0.750147, 0.427645, 0.287573, 0.273406, 0.569816, 0.890769, 0.926121, 0.916869, 0.639991, 0.554234, 0.73795, 0.727385, 0.380851, 0.220515, 0.786247, 0.980673, 0.0897098, 0.494517, 0.447723, 0.524713, 0.480446, 0.930906, 0.886619, 0.745773, 0.42244, 0.839893, 0.680388, 0.137976, 0.224613, 0.556411, 0.237616, 0.90556, 0.205239, 0.311139, 0.3102, 0.499394, 0.679864, 0.647738, 0.314856, 0.348947, 0.916257, 0.938318, 0.347793, 0.642121, 0.0115018, 0.507953, 0.678153, 0.536422, 0.284329, 0.308285, 0.106443, 0.130605, 0.0707415, 0.207012, 0.569307, 0.744861, 0.895839, 0.763779, 0.856683, 0.251718, 0.0933365, 0.832461, 0.544165, 0.255046, 0.792613, 0.792149, 0.882607, 0.614716, 0.144427, 0.130996, 0.402445, 0.732257, 0.198873, 0.559896, 0.457659, 0.780888, 0.0565166, 0.420061, 0.85289, 0.0339575, 0.851365, 0.915661, 0.734664, 0.313297, 0.0537396, 0.192802, 0.0936432, 0.0149107, 0.599219, 0.823639, 0.71537, 0.703168, 0.578299, 0.419909, 0.527863, 0.266757, 0.178719, 0.00179818, 0.391777, 0.480779, 0.21292, 0.33087, 0.82191, 0.16913, 0.393736, 0.815357, 0.158662, 0.759544, 0.0917913, 0.502571, 0.626879, 0.866529, 0.0145252, 0.750456, 0.347476, 0.308043, 0.112856, 0.243447, 0.0808196, 0.207538, 0.532262, 0.957601, 0.414993, 0.0212746, 0.51757, 0.750652, 0.120918, 0.198828, 0.767442, 0.0509944, 0.310467, 0.867684, 0.143594, 0.269652, 0.166788, 0.0482729, 0.959377, 0.0227016, 0.381065, 0.0466958, 0.706408, 0.822551, 0.351691, 0.758189, 0.916421, 0.335477, 0.568934, 0.0950658, 0.0215652, 0.0393662, 0.859198, 0.828, 0.525979, 0.347294, 0.351906, 0.305357, 0.512158, 0.772087, 0.48377, 0.371976, 0.123643, 0.705157, 0.721921, 0.467902, 0.987688, 0.931075, 0.881334, 0.799335, 0.898644, 0.421681, 0.0452764, 0.769417, 0.652862, 0.919228, 0.327836, 0.915252, 0.542893, 0.995346, 0.464939, 0.385581, 0.755661, 0.0462519, 0.438096, 0.716777, 0.0873773, 0.519387, 0.72837, 0.644616, 0.81641, 0.770924, 0.456952, 0.998386, 0.27846, 0.289119, 0.696656, 0.00923793, 0.845503, 0.260857, 0.699512, 0.0275932, 0.315732, 0.0285291, 0.94531, 0.339671, 0.936523, 0.78267, 0.282767, 0.89977, 0.778833, 0.793924, 0.468636, 0.898903, 0.974987, 0.165838, 0.8451, 0.100429, 0.33006, 0.341665, 0.664152, 0.534129, 0.448803, 0.872411, 0.834794, 0.599272, 0.520897, 0.0577161, 0.0906672, 0.527342, 0.618991, 0.362663, 0.958124, 0.685386, 0.545507, 0.353392, 0.359803, 0.354475, 0.960168, 0.405825, 0.557439, 0.273456, 0.0278656, 0.762911, 0.565401, 0.230271, 0.0322394, 0.188624, 0.593584, 0.964253, 0.802663, 0.282211, 0.0111207, 0.142253, 0.513156, 0.942532, 0.393904, 0.126776, 0.385484, 0.0694841, 0.0850033, 0.745054, 0.0341894, 0.31932, 0.528118, 0.358518, 0.765269, 0.414043, 0.208501, 0.932321, 0.266267, 0.977639, 0.394195, 0.550205, 0.507989, 0.138608, 0.0975725, 0.715032, 0.458535, 0.524329, 0.326665, 0.276661, 0.864643, 0.0214222, 0.664928, 0.115379, 0.710931, 0.618722, 0.841434, 0.38875, 0.394257, 0.949326, 0.653783, 0.0534453, 0.345023, 0.282792, 0.195276, 0.423252, 0.622851, 0.713911, 0.127509, 0.311566, 0.245728, 0.85966, 0.575867, 0.0689418, 0.0952579, 0.586971, 0.243941, 0.0834489, 0.255213, 0.213337, 0.862964, 0.334737, 0.405149, 0.172359, 0.188284, 0.780944, 0.485417, 0.251398, 0.599116, 0.586665, 0.409307, 0.580595, 0.103454, 0.320942, 0.486805, 0.197634, 0.20807, 0.908571, 0.132826, 0.382863, 0.212925, 0.246455, 0.619471, 0.117344, 0.558972, 0.0580035, 0.711549, 0.155809, 0.663877, 0.424317, 0.610468, 0.930087, 0.172949, 0.00517805, 0.582138, 0.195799, 0.861302, 0.598117, 0.451871, 0.448281, 0.158697, 0.000542584, 0.334286, 0.788786, 0.157838, 0.477899, 0.97582, 0.242801, 0.848349, 0.332519, 0.0980363, 0.427908, 0.345233, 0.367508, 0.350688, 0.843337, 0.235817, 0.405097, 0.436821, 0.667814, 0.361552, 0.280638, 0.855458, 0.261004, 0.747798, 0.757861, 0.540364, 0.175219, 0.279659, 0.446355, 0.365813, 0.267402, 0.698932, 0.879136, 0.743106, 0.291694, 0.991212, 0.12792, 0.474301, 0.0353802, 0.311849, 0.707376, 0.0604965, 0.212644, 0.0846226, 0.0892034, 0.161925, 0.436091, 0.436157, 0.482554, 0.370197, 0.91565, 0.799866, 0.649117, 0.465609, 0.434417, 0.258765, 0.185015, 0.480145, 0.174129, 0.928315, 0.25319, 0.401189, 0.802245, 0.780487, 0.494216, 0.336273, 0.767529, 0.768242, 0.152223, 0.0521661, 0.21053, 0.882708, 0.347742, 0.374891, 0.0797832, 0.581046, 0.206673, 0.0560839, 0.595372, 0.136616, 0.357512, 0.0209166, 0.0016705, 0.93445, 0.206748, 0.824873, 0.788357, 0.55925, 0.920285, 0.582929, 0.702822, 0.36813, 0.447606, 0.6106, 0.634253, 0.207762, 0.427202, 0.500577, 0.389809, 0.19959, 0.681723, 0.120753, 0.786173, 0.543604, 0.979328, 0.376943, 0.918816, 0.452252, 0.00499074, 0.635706, 0.35694, 0.867121, 0.791436, 0.880958, 0.680748, 0.831066, 0.293691, 0.887553, 0.187268, 0.715575, 0.844413, 0.637634, 0.73157, 0.859324, 0.407261, 0.737167, 0.422764, 0.923301, 0.649342, 0.170625, 0.366718, 0.942043, 0.238334, 0.470234, 0.884955, 0.060161, 0.181418, 0.646665, 0.341334, 0.108285, 0.698794, 0.235432, 0.880182, 0.787166, 0.0924313, 0.567718, 0.245406, 0.839764, 0.298682, 0.283608, 0.396466, 0.346695, 0.666372, 0.578194, 0.354995, 0.742842, 0.32011, 0.980964, 0.00271253, 0.69714, 0.910403, 0.920273, 0.485676, 0.697684, 0.0695238, 0.687605, 0.203331, 0.435267, 0.257599, 0.860991, 0.882308, 0.795157, 0.698597, 0.322865, 0.903791, 0.684318, 0.664499, 0.669392, 0.780595, 0.557328, 0.293327, 0.265196, 0.289732, 0.326938, 0.92325, 0.551842, 0.426428, 0.305414, 0.755801, 0.824476, 0.442615, 0.0180313, 0.35833, 0.454835, 0.539032, 0.274815, 0.764296, 0.564245, 0.325704, 0.508451, 0.0271415, 0.581645, 0.694036, 0.641851, 0.834904, 0.150452, 0.526213, 0.0506494, 0.513135, 0.12368, 0.71454, 0.438677, 0.465832, 0.786114, 0.838098, 0.751306, 0.188757, 0.146228, 0.743609, 0.245643, 0.97717, 0.412334, 0.144464, 0.529573, 0.455666, 0.400118, 0.253627, 0.581757, 0.542677, 0.790956, 0.586529, 0.0948754, 0.718301, 0.668166, 0.327256, 0.563516, 0.48726, 0.489141, 0.569486, 0.262042, 0.309541, 0.626612, 0.745274, 0.751799, 0.529559, 0.455644, 0.748598, 0.946315, 0.8265, 0.414619, 0.984799, 0.161437, 0.821717, 0.28339, 0.72679, 0.154853, 0.871201, 0.0711385, 0.102505, 0.726382, 0.491184, 0.573875, 0.615597, 0.356484, 0.909637, 0.486158, 0.810938, 0.564761, 0.460728, 0.852867, 0.366667, 0.41533, 0.0148784, 0.972416, 0.534227, 0.798354, 0.795607, 0.976434, 0.355941, 0.910177, 0.159594, 0.0438041, 0.654905, 0.395871, 0.115006, 0.540252, 0.577534, 0.962924, 0.945156, 0.360973, 0.0926194, 0.24857, 0.795894, 0.13686, 0.454092, 0.865174, 0.98353, 0.635807, 0.934014, 0.5153, 0.517563, 0.926611, 0.454739, 0.0372238, 0.360538, 0.91321, 0.799502, 0.271155, 0.221958, 0.548051, 0.907589, 0.794299, 0.961704, 0.673944, 0.0175033, 0.492384, 0.918665, 0.637901, 0.199075, 0.726617, 0.311334, 0.879681, 0.987701, 0.719458, 0.393797, 0.855523, 0.826618, 0.689592, 0.688999, 0.697588, 0.780641, 0.0636748, 0.140083, 0.958032, 0.892292, 0.577225, 0.519504, 0.0735575, 0.74484, 0.964864, 0.219465, 0.868061, 0.549526, 0.634009, 0.0171299, 0.257061, 0.919109, 0.302247, 0.664563, 0.797629, 0.464015, 0.310099, 0.019177, 0.357502, 0.620309, 0.239394, 0.917188, 0.785023, 0.131056, 0.727617, 0.530709, 0.578615, 0.201885, 0.278196, 0.518636, 0.235054, 0.522682, 0.19339, 0.0846954, 0.4492, 0.323331, 0.707992, 0.523493, 0.940948, 0.723369, 0.390074, 0.774236, 0.433164, 0.0979982, 0.0709218, 0.103836, 0.422072, 0.986132, 0.169095, 0.0657681, 0.259039, 0.396461, 0.854803, 0.0914236, 0.557688, 0.527779, 0.371118, 0.0822192, 0.302785, 0.655894, 0.88463, 0.375363, 0.52466, 0.466245, 0.38354, 0.455769, 0.901777, 0.0759798, 0.876514, 0.4332, 0.566397, 0.765223, 0.640635, 0.102071, 0.799557, 0.939988, 0.195413, 0.0748973, 0.00976407, 0.51755, 0.508755, 0.919853, 0.935985, 0.563762, 0.93531, 0.426331, 0.77547, 0.812972, 0.191429, 0.16026, 0.56597, 0.435486, 0.768526, 0.101867, 0.406524, 0.823415, 0.222716, 0.154984, 0.116542, 0.763154, 0.771641, 0.902853, 0.543089, 0.352641, 0.258023, 0.647828, 0.140055, 0.0542513, 0.0372325, 0.649413, 0.978192, 0.832517, 0.896181, 0.472388, 0.443075, 0.140154, 0.0761419, 0.666329, 0.950345, 0.823171, 0.370979, 0.65291, 0.408132, 0.948844, 0.155691, 0.914282, 0.301515, 0.461811, 0.795944, 0.239535, 0.664828, 0.6233, 0.145132, 0.37435, 0.886511, 0.317883, 0.518877, 0.518151, 0.536818, 0.643334, 0.0808949, 0.068941, 0.138229, 0.729329, 0.853963, 0.746799, 0.711397, 0.570258, 0.83942, 0.905887, 0.400872, 0.345677, 0.914797, 0.332045, 0.292297, 0.940083, 0.563066, 0.617197, 0.569981, 0.25026, 0.0677223, 0.867086, 0.961472, 0.660134, 0.0674513, 0.525426, 0.632111, 0.602913, 0.506025, 0.554512, 0.0680667, 0.918949, 0.358327, 0.578486, 0.348154, 0.390886, 0.755981, 0.715591, 0.33099, 0.385277, 0.89233, 0.200971, 0.252035, 0.200555, 0.0110863, 0.862266, 0.0333783, 0.211591, 0.23431, 0.821902, 0.540553, 0.185168, 0.420759, 0.631121, 0.900911, 0.190397, 0.52558, 0.538736, 0.971211, 0.120859, 0.135918, 0.839331, 0.273747, 0.759608, 0.394084, 0.436614, 0.976545, 0.962145, 0.94815, 0.600011, 0.0810576, 0.582324, 0.912166, 0.096998, 0.536383, 0.297478, 0.200268, 0.205488, 0.200496, 0.031067, 0.834057, 0.667748, 0.874206, 0.0351124, 0.0630484, 0.860482, 0.26558, 0.879304, 0.617219, 0.0774375, 0.196608, 0.934267, 0.75751, 0.296633, 0.0225115, 0.189789, 0.214884, 0.449621, 0.0468889, 0.155538, 0.431228, 0.958695, 0.741599, 0.213075, 0.209571, 0.592277, 0.766705, 0.72382, 0.708333, 0.960869, 0.810145, 0.379104, 0.339159, 0.674899, 0.188226, 0.952889, 0.595141, 0.11762, 0.380935, 0.608181, 0.201387, 0.884799, 0.483553, 0.916809, 0.735928, 0.281482, 0.00455585, 0.462535, 0.380936, 0.0936541, 0.487765, 0.675265, 0.510321, 0.921262, 0.500261, 0.782013, 0.310351, 0.128784, 0.437556, 0.28149, 0.841472, 0.758188, 0.622538, 0.850795, 0.372449, 0.0142433, 0.703519, 0.530403, 0.246252, 0.915198, 0.0578612, 0.816753, 0.985853, 0.286485, 0.690584, 0.419702, 0.403298, 0.22708, 0.446561, 0.954207, 0.252224, 0.00337301, 0.338911, 0.92823, 0.102058, 0.702199, 0.773641, 0.413213, 0.175673, 0.502506, 0.745158, 0.485363, 0.627887, 0.983253, 0.535411, 0.0960549, 0.806528, 0.727513, 0.204301, 0.561324, 0.593839, 0.204487, 0.0195615, 0.584486, 0.809775, 0.0141238, 0.484117, 0.200835, 0.215795, 0.243407, 0.365022, 0.689046, 0.217585, 0.07781, 0.852946, 0.00244379, 0.191489, 0.516965, 0.064143, 0.848968, 0.220109, 0.402326, 0.4353, 0.318334, 0.859112, 0.197103, 0.120497, 0.577541, 0.935029, 0.347344, 0.678479, 0.0344002, 0.646592, 0.799282, 0.650723, 0.0183968, 0.371303, 0.462043, 0.518063, 0.902786, 0.616112, 0.524261, 0.0796001, 0.709403, 0.265955, 0.0488311, 0.615803, 0.509311, 0.483271, 0.620407, 0.447288, 0.908265, 0.223942, 0.576624, 0.3599, 0.505111, 0.61968, 0.883126, 0.655734, 0.0432178, 0.997728, 0.64409, 0.849678, 0.734431, 0.745452, 0.62498, 0.463477, 0.495921, 0.794164, 0.853491, 0.311384, 0.904331, 0.129272, 0.287849, 0.448194, 0.193666, 0.322777, 0.251713, 0.881793, 0.0970413, 0.233054, 0.347529, 0.463414, 0.611134, 0.878204, 0.157578, 0.188353, 0.456962, 0.747669, 0.869698, 0.564151, 0.0328977, 0.519942, 0.831659, 0.799956, 0.264594, 0.277307, 0.585456, 0.364483, 0.0277267, 0.527506, 0.984514, 0.195863, 0.546274, 0.452644, 0.709574, 0.94972, 0.420405, 0.617003, 0.535575, 0.145515, 0.251569, 0.579092, 0.979789, 0.582783, 0.683675, 0.547612, 0.873507, 0.832615, 0.0464497, 0.221379, 0.207657, 0.85259, 0.373575, 0.249047, 0.960638, 0.54802, 0.610878, 0.409865, 0.476497, 0.413089, 0.313342, 0.480978, 0.205176, 0.0268723, 0.844218, 0.418675, 0.922538, 0.244907, 0.958208, 0.961732, 0.672194, 0.092853, 0.311077, 0.0946453, 0.363624, 0.474164, 0.603574, 0.833505, 0.533449, 0.256537, 0.225558, 0.226048, 0.538559, 0.638723, 0.805419, 0.14832, 0.897226, 0.373224, 0.369662, 0.484443, 0.115926, 0.685181, 0.967777, 0.479863, 0.517747, 0.0585734, 0.506837, 0.275404, 0.866345, 0.502318, 0.0955882, 0.335369, 0.745772, 0.63887, 0.736681, 0.638938, 0.83989, 0.676867, 0.243325, 0.143963, 0.493835, 0.76239, 0.502014, 0.389397, 0.84351, 0.617143, 0.171437, 0.865222, 0.310702, 0.990583, 0.663565, 0.59032, 0.887284, 0.0442938, 0.232086, 0.845838, 0.623216, 0.134591, 0.245323, 0.202399, 0.730686, 0.29686, 0.73742, 0.182036, 0.891799, 0.996495, 0.991935, 0.963694, 0.61934, 0.87183, 0.942809, 0.552179, 0.0926725, 0.169732, 0.722361, 0.495521, 0.254044, 0.0840458, 0.889859, 0.923809, 0.134491, 0.486075, 0.102635, 0.499984, 0.992553, 0.0564187, 0.797292, 0.241622, 0.0486058, 0.801535, 0.31539, 0.0143841, 0.362139, 0.980739, 0.300859, 0.391281, 0.167751, 0.7215, 0.427135, 0.351335, 0.933799, 0.140761, 0.7363, 0.465188, 0.828012, 0.649004, 0.520969, 0.574344, 0.501355, 0.952165, 0.93164, 0.509089, 0.526875, 0.71231, 0.718113, 0.670296, 0.280508, 0.434312, 0.946176, 0.62393, 0.398959, 0.698747, 0.0204612, 0.79547, 0.652899, 0.455246, 0.486616, 0.867367, 0.493178, 0.355426, 0.210206, 0.228179, 0.651399, 0.0161561, 0.140239, 0.155556, 0.574745, 0.999008, 0.86796, 0.860705, 0.246552, 0.503608, 0.445886, 0.0580185, 0.800574, 0.437075, 0.573912, 0.0424352, 0.604857, 0.264873, 0.34638, 0.435088, 0.316541, 0.161882, 0.426731, 0.802425, 0.499536, 0.328287, 0.133744, 0.42007, 0.720955, 0.0136993, 0.647566, 0.973718, 0.901711, 0.175931, 0.878922, 0.93672, 0.133331, 0.79393, 0.0764088, 0.916768, 0.260156, 0.666782, 0.321252, 0.233666, 0.186357, 0.304028, 0.707395, 0.178687, 0.0232966, 0.922896, 0.526882, 0.81221, 0.945092, 0.138419, 0.0952502, 0.625846, 0.213548, 0.422367, 0.602847, 0.231354, 0.538758, 0.797799, 0.654113, 0.287098, 0.276612, 0.659605, 0.532692, 0.514879, 0.525104, 0.242574, 0.442326, 0.822493, 0.107437, 0.280184, 0.37356, 0.309485, 0.511257, 0.761947, 0.557022, 0.520128, 0.694639, 0.110733, 0.137554, 0.338047, 0.999134, 0.27477, 0.916114, 0.770727, 0.0976081, 0.676984, 0.825778, 0.759363, 0.729444, 0.0242647, 0.0258947, 0.154187, 0.47188, 0.0445769, 0.0121177, 0.843762, 0.291093, 0.309643, 0.485361, 0.198252, 0.572985, 0.033286, 0.739473, 0.545352, 0.211468, 0.858458, 0.405647, 0.258037, 0.912533, 0.61541, 0.567429, 0.93901, 0.704859, 0.0118469, 0.703613, 0.517348, 0.540871, 0.729027, 0.850876, 0.440293, 0.553048, 0.61358, 0.00979307, 0.316454, 0.720052, 0.503127, 0.47962, 0.421531, 0.0151173, 0.438838, 0.197708, 0.780987, 0.812092, 0.382447, 0.424093, 0.385472, 0.550044, 0.656086, 0.268404, 0.851007, 0.310699, 0.937935, 0.870147, 0.80102, 0.961378, 0.696737, 0.38453, 0.800148, 0.16592, 0.884815, 0.413447, 0.617014, 0.524054, 0.739236, 0.666972, 0.710395, 0.687772, 0.859121, 0.388768, 0.718233, 0.388154, 0.476246, 0.944478, 0.970432, 0.691643, 0.464942, 0.0394952, 0.927023, 0.410307, 0.629788, 0.223931, 0.0297518, 0.933033, 0.163113, 0.336661, 0.32108, 0.359461, 0.947965, 0.872167, 0.322335, 0.764382, 0.750062, 0.225013, 0.0805743, 0.534038, 0.0233317, 0.158118, 0.805001, 0.296921, 0.788203, 0.729876, 0.951557, 0.303947, 0.251502, 0.494804, 0.644525, 0.936817, 0.324311, 0.637434, 0.565348, 0.0717788, 0.0867897, 0.737313, 0.402824, 0.0963357, 0.106229, 0.94528, 0.764048, 0.247693, 0.443471, 0.940045, 0.493419, 0.735704, 0.944935, 0.991131, 0.062571, 0.0335439, 0.0746373, 0.623001, 0.809056, 0.503777, 0.446029, 0.933175, 0.965526, 0.063913, 0.673178, 0.59794, 0.0840257, 0.25734, 0.908005, 0.583821, 0.752881, 0.472197, 0.967097, 0.264547, 0.0486276, 0.173953, 0.338983, 0.706356, 0.884443, 0.569925, 0.287352, 0.237714, 0.630705, 0.035348, 0.908494, 0.315352, 0.273475, 0.277392, 0.25668, 0.368349, 0.519099, 0.0555855, 0.633588, 0.882294, 0.863841, 0.298166, 0.799546, 0.846736, 0.511809, 0.599913, 0.473183, 0.481996, 0.877521, 0.0442833, 0.940653, 0.369215, 0.818309, 0.73849, 0.634953, 0.712853, 0.26148, 0.0692014, 0.831899, 0.685415, 0.283157, 0.736262, 0.67264, 0.190786, 0.0676505, 0.707078, 0.581308, 0.67221, 0.11386, 0.457312, 0.392375, 0.439219, 0.769211, 0.561258, 0.866343, 0.397924, 0.523627, 0.0617751, 0.831688, 0.512164, 0.821152, 0.502621, 0.0959835, 0.555967, 0.042713, 0.0924852, 0.508336, 0.473067, 0.451851, 0.992751, 0.641368, 0.299594, 0.320116, 0.454368, 0.436705, 0.601497, 0.135846, 0.484692, 0.284487, 0.540245, 0.190384, 0.54509, 0.143587, 0.629552, 0.324553, 0.595499, 0.844717, 0.201874, 0.814576, 0.197463, 0.986802, 0.148523, 0.567081, 0.136555, 0.780773, 0.204797, 0.118722, 0.881193, 0.432444, 0.280083, 0.0217249, 0.54529, 0.503856, 0.89004, 0.470679, 0.676714, 0.457365, 0.255248, 0.923055, 0.0443761, 0.552984, 0.142928, 0.69265, 0.0879481, 0.295874, 0.567054, 0.0142062, 0.929392, 0.908689, 0.448321, 0.651092, 0.0557385, 0.101893, 0.399297, 0.48606, 0.527425, 0.00356473, 0.616862, 0.211265, 0.984485, 0.567244, 0.317252, 0.751636, 0.987065, 0.152741, 0.0829415, 0.00948974, 0.0764865, 0.859403, 0.667688, 0.408172, 0.960244, 0.804079, 0.938819, 0.21643, 0.122151, 0.416281, 0.707288, 0.297755, 0.370217, 0.0417245, 0.56875, 0.115263, 0.633719, 0.459242, 0.319668, 0.101516, 0.535005, 0.687743, 0.0977507, 0.0834855, 0.251136, 0.233068, 0.596992, 0.833053, 0.584381, 0.519565, 0.192852, 0.592033, 0.382766, 0.0436281, 0.923847, 0.921051, 0.590964, 0.619312, 0.568616, 0.613199, 0.467516, 0.991839, 0.944851, 0.991241, 0.134093, 0.950621, 0.430953, 0.441657, 0.46819, 0.393092, 0.0628691, 0.0521101, 0.452955, 0.189459, 0.779002, 0.9959, 0.26145, 0.673013, 0.794916, 0.103836, 0.465761, 0.85105, 0.985666, 0.836831, 0.516769, 0.716464, 0.19357, 0.242615, 0.382491, 0.313633, 0.848997, 0.859264, 0.727595, 0.29825, 0.899589, 0.584103, 0.926454, 0.690807, 0.439755, 0.340988, 0.258296, 0.931776, 0.0256324, 0.316941, 0.757241, 0.844794, 0.694142, 0.881089, 0.874026, 0.690994, 0.789913, 0.00531765, 0.940563, 0.723211, 0.12176, 0.131234, 0.731573, 0.495006, 0.0516717, 0.604952, 0.369937, 0.843237, 0.920012, 0.628829, 0.420778, 0.973326, 0.15281, 0.00139745, 0.853154, 0.851795, 0.741038, 0.117861, 0.882016, 0.509814, 0.516959, 0.907246, 0.697692, 0.668194, 0.846559, 0.576253, 0.922104, 0.359445, 0.0611456, 0.206406, 0.105926, 0.154387, 0.585589, 0.437756, 0.3165, 0.587017, 0.0847536, 0.886007, 0.119009, 0.979246, 0.213609, 0.465853, 0.272178, 0.439809, 0.988716, 0.488015, 0.417512, 0.518881, 0.288539, 0.903198, 0.787729, 0.454393, 0.262874, 0.894397, 0.153654, 0.400079, 0.643713, 0.123454, 0.844473, 0.372163, 0.877639, 0.833295, 0.549217, 0.685982, 0.127869, 0.95698, 0.779552, 0.128356, 0.259681, 0.0754659, 0.0835692, 0.537261, 0.817103, 0.614817, 0.0325292, 0.0207384, 0.827517, 0.808246, 0.26346, 0.803749, 0.15587, 0.74223, 0.634925, 0.773878, 0.131699, 0.450653, 0.981115, 0.00958384, 0.287704, 0.443703, 0.216868, 0.792684, 0.907434, 0.378667, 0.165051, 0.748475, 0.136135, 0.659939, 0.958408, 0.744024, 0.725204, 0.632248, 0.299641, 0.922975, 0.919256, 0.230537, 0.691596, 0.249633, 0.0888904, 0.892798, 0.710505, 0.943026, 0.386294, 0.600829, 0.676397, 0.132339, 0.0813851, 0.785415, 0.732045, 0.721045, 0.343798, 0.718697, 0.441188, 0.322981, 0.121907, 0.806755, 0.597458, 0.64584, 0.717871, 0.209593, 0.598041, 0.350003, 0.445812, 0.613345, 0.437672, 0.382453, 0.131631, 0.66655, 0.401186, 0.0837397, 0.446507, 0.726394, 0.681641, 0.586691, 0.248831, 0.449398, 0.930469, 0.0666129, 0.780538, 0.589497, 0.840138, 0.564973, 0.0612079, 0.821556, 0.554189, 0.799224, 0.736642, 0.269208, 0.292914, 0.596551, 0.729427, 0.49402, 0.773192, 0.219683, 0.824812, 0.840631, 0.0501591, 0.134543, 0.583413, 0.791894, 0.986005, 0.862345, 0.915087, 0.369461, 0.588393, 0.512686, 0.678814, 0.458227, 0.806283, 0.701131, 0.571952, 0.702168, 0.202198, 0.519259, 0.172496, 0.599499, 0.147234, 0.02575, 0.97035, 0.898833, 0.874705, 0.79621, 0.980984, 0.656772, 0.751776, 0.251058, 0.763427, 0.224289, 0.295172, 0.00522108, 0.762511, 0.787555, 0.00467026, 0.128477, 0.701758, 0.978284, 0.00768466, 0.865646, 0.841283, 0.524041, 0.375165, 0.674822, 0.0847203, 0.0682938, 0.969406, 0.195572, 0.551269, 0.985086, 0.622014, 0.424878, 0.097507, 0.140416, 0.838827, 0.485533, 0.737476, 0.735698, 0.0454709, 0.311185, 0.0898184, 0.795013, 0.529925, 0.474088, 0.344048, 0.943813, 0.527794, 0.324931, 0.961191, 0.267476, 0.603167, 0.178598, 0.7503, 0.987956, 0.555531, 0.215508, 0.382784, 0.656302, 0.993506, 0.842078, 0.372415, 0.266801, 0.156394, 0.831571, 0.137432, 0.624203, 0.835836, 0.606334, 0.838089, 0.694928, 0.856823, 0.180364, 0.338147, 0.759741, 0.206241, 0.829618, 0.9061, 0.597172, 0.11924, 0.358647, 0.142011, 0.945087, 0.474836, 0.648693, 0.86104, 0.47665, 0.757002, 0.494125, 0.868545, 0.306198, 0.639508, 0.704826, 0.995186, 0.175675, 0.0806422, 0.138095, 0.0881491, 0.428765, 0.451255, 0.918603, 0.262482, 0.2982, 0.537161, 0.838592, 0.235128, 0.0353797, 0.884897, 0.940754, 0.79639, 0.946324, 0.569961, 0.303534, 0.0571423, 0.278763, 0.40931, 0.675236, 0.728678, 0.247318, 0.198361, 0.892861, 0.188737, 0.340076, 0.194367, 0.0645981, 0.873336, 0.00749971, 0.569247, 0.633541, 0.959514, 0.089256, 0.203743, 0.228359, 0.584494, 0.550622, 0.897252, 0.383225, 0.45936, 0.866613, 0.125279, 0.120562, 0.0766141, 0.816719, 0.0671213, 0.440454, 0.45157, 0.0530044, 0.413946, 0.0535851, 0.0575507, 0.45907, 0.923819, 0.491762, 0.0633612, 0.468905, 0.884023, 0.0176603, 0.736134, 0.205456, 0.646979, 0.390688, 0.112598, 0.275741, 0.0894479, 0.51998, 0.810482, 0.403162, 0.555734, 0.0242944, 0.110794, 0.829616, 0.683351, 0.391986, 0.502472, 0.0781493, 0.15912, 0.478358, 0.570563, 0.0540207, 0.967255, 0.342681, 0.274707, 0.333183, 0.43953, 0.535844, 0.783524, 0.0546468, 0.30066, 0.066254, 0.483775, 0.161847, 0.782927, 0.0172688, 0.0646114, 0.669899, 0.714202, 0.679073, 0.0763925, 0.816612, 0.201151, 0.571907, 0.321925, 0.37268, 0.299367, 0.126555, 0.934309, 0.903748, 0.444695, 0.564585, 0.64596, 0.506742, 0.202397, 0.893715, 0.388493, 0.2197, 0.143169, 0.699541, 0.701281, 0.432727, 0.955981, 0.0870339, 0.489724, 0.886849, 0.473284, 0.824864, 0.941409, 0.70849, 0.950999, 0.456397, 0.084792, 0.59477, 0.326086, 0.244944, 0.984625, 0.424332, 0.903711, 0.721101, 0.0111986, 0.305794, 0.311496, 0.515195, 0.239026, 0.536631, 0.366645, 0.394777, 0.3873, 0.328341, 0.609614, 0.389689, 0.391797, 0.434262, 0.556263, 0.287584, 0.188432, 0.956155, 0.304082, 0.503736, 0.915129, 0.954323, 0.412722, 0.506281, 0.194787, 0.490927, 0.264479, 0.254388, 0.849598, 0.801772, 0.620258, 0.0071051, 0.454038, 0.0346459, 0.57328, 0.549966, 0.162462, 0.229432, 0.563818, 0.431203, 0.451108, 0.239087, 0.0223499, 0.767006, 0.941499, 0.909868, 0.4759, 0.289608, 0.382406, 0.69978, 0.324804, 0.829982, 0.57533, 0.581939, 0.0393368, 0.579975, 0.639501, 0.285916, 0.518992, 0.443243, 0.951329, 0.569127, 0.97862, 0.386882, 0.195255, 0.181794, 0.809233, 0.560124, 0.668163, 0.513488, 0.0876116, 0.943987, 0.436513, 0.743975, 0.383052, 0.277199, 0.598564, 0.138906, 0.31616, 0.560288, 0.463073, 0.731662, 0.869975, 0.123616, 0.634357, 0.354597, 0.120499, 0.383482, 0.846482, 0.967433, 0.108526, 0.584536, 0.555393, 0.73107, 0.749304, 0.688501, 0.400935, 0.772408, 0.104643, 0.756827, 0.94838, 0.756186, 0.362544, 0.627231, 0.848773, 0.432341, 0.65668, 0.735194, 0.850105, 0.062755, 0.146389, 0.317991, 0.0737026, 0.67427, 0.485489, 0.270793, 0.787026, 0.0720512, 0.987549, 0.0569218, 0.255272, 0.68926, 0.608096, 0.633461, 0.648547, 0.769407, 0.830182, 0.322531, 0.144775, 0.779242, 0.845269, 0.0243326, 0.0405723, 0.873524, 0.753952, 0.972986, 0.510371, 0.476096, 0.159424, 0.701166, 0.376896, 0.858272, 0.565385, 0.250291, 0.610069, 0.620679, 0.458904, 0.720255, 0.616195, 0.227057, 0.0542266, 0.848246, 0.70316, 0.535677, 0.900922, 0.920894, 0.146911, 0.3533, 0.561009, 0.284157, 0.174043, 0.656678, 0.196008, 0.199449, 0.0442609, 0.680369, 0.428183, 0.262736, 0.743547, 0.488797, 0.981806, 0.64651, 0.838369, 0.870618, 0.980026, 0.0422801, 0.422279, 0.988454, 0.667217, 0.749536, 0.0917313, 0.902354, 0.0681661, 0.0282509, 0.19348, 0.377296, 0.932179, 0.576296, 0.735157, 0.795614, 0.136861, 0.703529, 0.132033, 0.950966, 0.307774, 0.363944, 0.115775, 0.281715, 0.937972, 0.143547, 0.930937, 0.438592, 0.489861, 0.8832, 0.123867, 0.381358, 0.391431, 0.0780478, 0.509486, 0.425146, 0.303328, 0.133067, 0.198759, 0.692799, 0.0851842, 0.897908, 0.741917, 0.512414, 0.345901, 0.0204231, 0.272198, 0.727947, 0.626249, 0.173805, 0.652727, 0.101894, 0.750636, 0.49131, 0.6225, 0.748916, 0.134644, 0.80854, 0.496879, 0.173762, 0.370642, 0.534129, 0.163196, 0.185132, 0.442204, 0.0942393, 0.167814, 0.214614, 0.435669, 0.551141, 0.146443, 0.590189, 0.0431735, 0.233042, 0.438819, 0.306157, 0.130507, 0.824651, 0.913926, 0.0630085, 0.513333, 0.316679, 0.0334001, 0.961398, 0.424998, 0.871981, 0.0704637, 0.798644, 0.853883, 0.957443, 0.0902814, 0.531197, 0.622826, 0.969367, 0.566445, 0.329525, 0.656435, 0.937621, 0.160278, 0.5453, 0.724801, 0.0263785, 0.651574, 0.780021, 0.62934, 0.347304, 0.495063, 0.162784, 0.364913, 0.163988, 0.305767, 0.70278, 0.407849, 0.0919207, 0.317498, 0.73957, 0.199775, 0.834567, 0.101468, 0.400429, 0.818875, 0.950692, 0.285147, 0.143908, 0.818654, 0.683222, 0.829862, 0.892098, 0.716362, 0.414078, 0.18835, 0.992772, 0.511298, 0.220548, 0.0635921, 0.297934, 0.807925, 0.607986, 0.0877825, 0.132301, 0.728175, 0.812418, 0.898057, 0.653904, 0.960266, 0.320779, 0.445331, 0.776218, 0.409451, 0.359341, 0.524256, 0.028275, 0.977368, 0.301357, 0.696436, 0.0459401, 0.76983, 0.601018, 0.340728, 0.408712, 0.568339, 0.407496, 0.58856, 0.0757559, 0.35058, 0.00837173, 0.00562885, 0.975881, 0.810547, 0.488337, 0.312578, 0.98549, 0.851896, 0.322023, 0.34399, 0.23832, 0.258811, 0.823943, 0.0716831, 0.988663, 0.0460019, 0.275174, 0.810075, 0.619748, 0.0901874, 0.033642, 0.566351, 0.712041, 0.313472, 0.0923219, 0.986056, 0.673149, 0.878125, 0.140528, 0.166762, 0.994571, 0.894365, 0.774653, 0.417661, 0.666718, 0.898203, 0.227722, 0.598469, 0.928879, 0.379994, 0.984697, 0.231839, 0.310736, 0.341496, 0.459493, 0.302215, 0.641954, 0.898099, 0.0209997, 0.737949, 0.0626889, 0.831237, 0.0313842, 0.180131, 0.601948, 0.797174, 0.0884408, 0.642245, 0.459643, 0.893664, 0.40371, 0.658711, 0.881245, 0.591686, 0.878759, 0.755583, 0.204975, 0.306776, 0.73216, 0.791955, 0.514798, 0.337436, 0.783948, 0.0557404, 0.452276, 0.84683, 0.145528, 0.220488, 0.241047, 0.557556, 0.415007, 0.242669, 0.360846, 0.522166, 0.292326, 0.587668, 0.638592, 0.436138, 0.110713, 0.196891, 0.591566, 0.283637, 0.0102975, 0.387574, 0.479553, 0.741745, 0.678875, 0.937641, 0.609497, 0.32044, 0.00940666, 0.127061, 0.194438, 0.905781, 0.860754, 0.445213, 0.854932, 0.729661, 0.136819, 0.0108726, 0.980453, 0.0270293, 0.139369, 0.793899, 0.642188, 0.86674, 0.279443, 0.79022, 0.867757, 0.0843141, 0.995867, 0.537412, 0.753968, 0.607794, 0.944857, 0.190186, 0.0997002, 0.984877, 0.0701893, 0.576752, 0.0580847, 0.0867438, 0.444684, 0.916767, 0.213647, 0.749927, 0.738357, 0.845744, 0.362546, 0.648168, 0.398376, 0.949009, 0.863117, 0.027939, 0.85657, 0.591879, 0.193953, 0.502273, 0.599404, 0.375159, 0.512255, 0.267081, 0.511835, 0.955413, 0.0697231, 0.724459, 0.352424, 0.947933, 0.664158, 0.698859, 0.803828, 0.504431, 0.751099, 0.590227, 0.280099, 0.584827, 0.0923306, 0.203134, 0.702428, 0.218551, 0.319046, 0.412581, 0.398295, 0.378101, 0.241449, 0.45341, 0.670537, 0.602427, 0.378714, 0.790711, 0.374994, 0.462503, 0.0953595, 0.548471, 0.0991406, 0.949991, 0.822281, 0.531369, 0.324175, 0.730305, 0.736284, 0.138818, 0.0894012, 0.311242, 0.840171, 0.119094, 0.801153, 0.569853, 0.590313, 0.758391, 0.266365, 0.395676, 0.236105, 0.583137, 0.442199, 0.426346, 0.268307, 0.336632, 0.793279, 0.468524, 0.52161, 0.496028, 0.689862, 0.434917, 0.476048, 0.703495, 0.527915, 0.701419, 0.640665, 0.471923, 0.509542, 0.801378, 0.937335, 0.378823, 0.876191, 0.870085, 0.0750793, 0.749023, 0.135718, 0.0954842, 0.990025, 0.114978, 0.232678, 0.927843, 0.107381, 0.0494472, 0.810999, 0.610688, 0.500701, 0.281554, 0.146244, 0.0468897, 0.238109, 0.622833, 0.668599, 0.338654, 0.704283, 0.726535, 0.00568137, 0.0550614, 0.375877, 0.629756, 0.208639, 0.197606, 0.322134, 0.102052, 0.141556, 0.865068, 0.609663, 0.618753, 0.5473, 0.75936, 0.799073, 0.951893, 0.223308, 0.385897, 0.709781, 0.661421, 0.677739, 0.922779, 0.855047, 0.899517, 0.914109, 0.980888, 0.0344011, 0.188345, 0.701074, 0.94298, 0.218323, 0.332275, 0.0500087, 0.176891, 0.896834, 0.193207, 0.977044, 0.3858, 0.619537, 0.437899, 0.0960618, 0.795966, 0.628384, 0.0776769, 0.795065, 0.404605, 0.613843, 0.837637, 0.175999, 0.512611, 0.600492, 0.0617713, 0.897539, 0.77196, 0.126898, 0.0734735, 0.109476, 0.127198, 0.573614, 0.00498635, 0.651288, 0.950238, 0.503129, 0.553157, 0.156796, 0.197561, 0.435144, 0.334538, 0.96178, 0.917661, 0.834138, 0.287505, 0.727459, 0.157645, 0.447587, 0.0999288, 0.049521, 0.400007, 0.134395, 0.942935, 0.516067, 0.505666, 0.175857, 0.136792, 0.974526, 0.853546, 0.55864, 0.357897, 0.258976, 0.935017, 0.33172, 0.702221, 0.590312, 0.972901, 0.968517, 0.653598, 0.499361, 0.843778, 0.717343, 0.819272, 0.0534352, 0.738794, 0.865196, 0.952694, 0.546635, 0.233636, 0.351183, 0.735601, 0.96854, 0.366732, 0.823323, 0.490432, 0.226938, 0.485313, 0.345484, 0.892524, 0.501069, 0.964373, 0.335591, 0.879288, 0.18686, 0.0321524, 0.75162, 0.93297, 0.630067, 0.90457, 0.4632, 0.480852, 0.0442153, 0.44118, 0.317977, 0.616316, 0.879621, 0.458411, 0.144191, 0.641805, 0.947707, 0.431239, 0.449253, 0.268696, 0.52497, 0.320578, 0.743107, 0.0864674, 0.682139, 0.968487, 0.665753, 0.213749, 0.352546, 0.910324, 0.20406, 0.923442, 0.370019, 0.0305328, 0.0703193, 0.684224, 0.682035, 0.235759, 0.0598054, 0.153728, 0.933166, 0.959948, 0.714164, 0.968741, 0.527351, 0.259318, 0.595798, 0.343745, 0.695488, 0.135958, 0.855851, 0.136124, 0.770493, 0.441507, 0.488841, 0.81911, 0.78977, 0.0110584, 0.109171, 0.266597, 0.821372, 0.660634, 0.318648, 0.566565, 0.788814, 0.45255, 0.871084, 0.0325625, 0.129959, 0.773467, 0.376836, 0.281526, 0.121645, 0.107249, 0.341292, 0.925537, 0.545791, 0.290171, 0.0491037, 0.519666, 0.192151, 0.630722, 0.760955, 0.175683, 0.166529, 0.882514, 0.992895, 0.783557, 0.225989, 0.732245, 0.942898, 0.66103, 0.865137, 0.397328, 0.857736, 0.750886, 0.474988, 0.337379, 0.789872, 0.125787, 0.478338, 0.831392, 0.824986, 0.888459, 0.827697, 0.289947, 0.741771, 0.573338, 0.652634, 0.517717, 0.579062, 0.348018, 0.00771095, 0.339708, 0.440065, 0.484628, 0.95306, 0.700092, 0.141648, 0.102574, 0.636408, 0.193749, 0.013662, 0.0382704, 0.902556, 0.986144, 0.0240769, 0.775517, 0.895917, 0.48779, 0.235743, 0.756005, 0.603748, 0.343958, 0.336382, 0.521828, 0.631383, 0.931337, 0.0306554, 0.719708, 0.90717, 0.607976, 0.588364, 0.378322, 0.767749, 0.728055, 0.207107, 0.587616, 0.634505, 0.701187, 0.126658, 0.762471, 0.430484, 0.093472, 0.493245, 0.399296, 0.0229555, 0.940902, 0.889504, 0.447475, 0.109747, 0.752437, 0.163893, 0.814091, 0.625132, 0.578121, 0.831421, 0.102199, 0.0416217, 0.836125, 0.0918715, 0.959896, 0.0926651, 0.959124, 0.849847, 0.553316, 0.102173, 0.723574, 0.727884, 0.480109, 0.137392, 0.213244, 0.0733534, 0.974065, 0.230907, 0.639206, 0.594454, 0.991072, 0.98572, 0.293588, 0.79368, 0.029905, 0.384468, 0.589754, 0.710729, 0.254933, 0.615357, 0.0573365, 0.463609, 0.989581, 0.400036, 0.540456, 0.37337, 0.235228, 0.849844, 0.385581, 0.742108, 0.283697, 0.927321, 0.612357, 0.324445, 0.662181, 0.954055, 0.741108, 0.219976, 0.69014, 0.845905, 0.787315, 0.993019, 0.40631, 0.421558, 0.393458, 0.402337, 0.22323, 0.570397, 0.204724, 0.69529, 0.629551, 0.384306, 0.477271, 0.951049, 0.629508, 0.00393453, 0.676047, 0.219835, 0.899089, 0.072471, 0.151961, 0.67556, 0.0710069, 0.752718, 0.494007, 0.129299, 0.680351, 0.445954, 0.377099, 0.315048, 0.898073, 0.100339, 0.547383, 0.689143, 0.727338, 0.0878929, 0.805415, 0.0332215, 0.0135245, 0.968045, 0.470475, 0.426812, 0.151168, 0.327002, 0.0746566, 0.694102, 0.249846, 0.53805, 0.1441, 0.466625, 0.363997, 0.580457, 0.753993, 0.97815, 0.74302, 0.961015, 0.470217, 0.6599, 0.56503, 0.324455, 0.816659, 0.875343, 0.383594, 0.820232, 0.861688, 0.492614, 0.23466, 0.0433097, 0.829025, 0.217438, 0.790776, 0.0391246, 0.81177, 0.311744, 0.52641, 0.63995, 0.877915, 0.373086, 0.439808, 0.18672, 0.589243, 0.588398, 0.481351, 0.678122, 0.0946417, 0.102651, 0.125072, 0.475044, 0.895553, 0.236166, 0.338332, 0.639829, 0.173296, 0.892164, 0.246241, 0.53134, 0.357817, 0.395977, 0.652176, 0.473679, 0.45795, 0.341496, 0.477644, 0.789266, 0.35552, 0.872661, 0.688363, 0.0498584, 0.671786, 0.517444, 0.565655, 0.414789, 0.118537, 0.313813, 0.812885, 0.653228, 0.679541, 0.84281, 0.935871, 0.363317, 0.731685, 0.386262, 0.627775, 0.631725, 0.663584, 0.242816, 0.129252, 0.334088, 0.850846, 0.942745, 0.85427, 0.603297, 0.633843, 0.697019, 0.305404, 0.612945, 0.852006, 0.614222, 0.345229, 0.789779, 0.0566866, 0.0562014, 0.660246, 0.307533, 0.33637, 0.0899305, 0.416154, 0.151361, 0.770565, 0.48958, 0.604568, 0.825134, 0.13394, 0.82566, 0.567464, 0.751875, 0.659559, 0.758812, 0.817692, 0.483871, 0.520196, 0.535844, 0.775365, 0.227697, 0.36938, 0.833216, 0.254575, 0.762152, 0.741347, 0.545219, 0.441746, 0.849555, 0.594417, 0.300895, 0.124644, 0.131122, 0.593037, 0.436388, 0.41736, 0.283297, 0.759466, 0.837342, 0.481078, 0.864737, 0.917869, 0.529607, 0.238303, 0.621135, 0.884823, 0.45449, 0.86557, 0.235833, 0.416272, 0.554211, 0.554456, 0.705827, 0.012815, 0.854081, 0.718499, 0.356533, 0.202595, 0.935999, 0.244963, 0.519483, 0.152643, 0.893804, 0.636804, 0.96507, 0.56994, 0.446239, 0.744207, 0.728589, 0.218044, 0.345814, 0.760004, 0.560206, 0.145292, 0.867799, 0.446157, 0.551633, 0.674266, 0.29103, 0.365323, 0.397435, 0.065432, 0.211588, 0.655559, 0.973423, 0.51257, 0.404396, 0.664652, 0.0237282, 0.57849, 0.763437, 0.683453, 0.446456, 0.0926756, 0.11274, 0.211531, 0.422243, 0.945334, 0.697837, 0.0741882, 0.634644, 0.236934, 0.322322, 0.522515, 0.636193, 0.877149, 0.247213, 0.374506, 0.844406, 0.440529, 0.309886, 0.479818, 0.946139, 0.643806, 0.281207, 0.482617, 0.849676, 0.813769, 0.710806, 0.946587, 0.565293, 0.82707, 0.678064, 0.441115, 0.149597, 0.648184, 0.816263, 0.109848, 0.900922, 0.933684, 0.217823, 0.565672, 0.594669, 0.188874, 0.551345, 0.899023, 0.00244778, 0.678969, 0.828241, 0.401308, 0.811662, 0.315149, 0.909772, 0.857309, 0.82949, 0.921723, 0.914055, 0.30077, 0.138511, 0.260424, 0.593307, 0.135603, 0.22236, 0.83948, 0.474553, 0.620751, 0.406678, 0.718506, 0.07157, 0.279514, 0.0359867, 0.228832, 0.987212, 0.342517, 0.576881, 0.13873, 0.08103, 0.0102425, 0.393001, 0.607157, 0.593528, 0.723289, 0.240303, 0.353078, 0.700454, 0.813112, 0.473639, 0.970229, 0.807953, 0.359786, 0.698703, 0.295981, 0.886268, 0.877439, 0.295527, 0.869798, 0.900195, 0.979531, 0.00316615, 0.37165, 0.303764, 0.763804, 0.0960253, 0.410254, 0.449359, 0.031615, 0.604923, 0.115525, 0.650832, 0.361404, 0.296024, 0.832259, 0.346458, 0.322406, 0.430431, 0.238739, 0.456459, 0.309478, 0.772186, 0.253587, 0.701643, 0.254196, 0.877354, 0.30961, 0.877492, 0.453411, 0.971726, 0.656834, 0.682272, 0.0405702, 0.68186, 0.028651, 0.799801, 0.918522, 0.727565, 0.33074, 0.785966, 0.972694, 0.781375, 0.987683, 0.0937511, 0.984581, 0.822636, 0.853316, 0.233179, 0.804334, 0.545647, 0.941473, 0.429909, 0.157613, 0.042413, 0.0882351, 0.0386067, 0.168782, 0.106085, 0.851197, 0.118448, 0.534217, 0.787002, 0.307399, 0.180329, 0.942904, 0.976713, 0.796245, 0.673216, 0.665704, 0.0614658, 0.39687, 0.0665469, 0.690911, 0.961947, 0.431956, 0.518961, 0.112723, 0.764305, 0.169623, 0.216358, 0.0508767, 0.0368147, 0.513833, 0.285068, 0.312922, 0.0283073, 0.528693, 0.901117, 0.00231425, 0.455522, 0.134293, 0.20798, 0.0685364, 0.465098, 0.513741, 0.590951, 0.585929, 0.39238, 0.813761, 0.234718, 0.00798184, 0.589921, 0.1209, 0.544092, 0.0728818, 0.986865, 0.963078, 0.434846, 0.0592174, 0.988931, 0.148709, 0.554836, 0.681992, 0.248978, 0.771741, 0.477407, 0.24027, 0.578471, 0.399146, 0.940467, 0.0342766, 0.487298, 0.484237, 0.86446, 0.54988, 0.920788, 0.482808, 0.384468, 0.323015, 0.0640676, 0.590045, 0.847143, 0.262915, 0.15837, 0.346961, 0.903005, 0.0904639, 0.398354, 0.353884, 0.381244, 0.724662, 0.659623, 0.905798, 0.484195, 0.883331, 0.686008, 0.777975, 0.580637, 0.746604, 0.266623, 0.129117, 0.287785, 0.467636, 0.077441, 0.444312, 0.0606906, 0.606737, 0.587066, 0.708817, 0.133486, 0.623995, 0.390257, 0.466193, 0.572793, 0.793069, 0.923973, 0.885275, 0.613505, 0.621508, 0.278417, 0.544427, 0.227023, 0.579488, 0.944205, 0.554251, 0.92258, 0.368187, 0.0617916, 0.485602, 0.847412, 0.262056, 0.605826, 0.79763, 0.386413, 0.240654, 0.126525, 0.152372, 0.790945, 0.890004, 0.49452, 0.310679, 0.569422, 0.557446, 0.0972526, 0.974292, 0.319327, 0.170425, 0.158451, 0.181292, 0.324343, 0.482575, 0.23888, 0.0473619, 0.712567, 0.894911, 0.333934, 0.636447, 0.421969, 0.464149, 0.728045, 0.694584, 0.332859, 0.27852, 0.224442, 0.500255, 0.11779, 0.872372, 0.111546, 0.288005, 0.248654, 0.767496, 0.548099, 0.00729712, 0.530681, 0.672828, 0.675277, 0.00641172, 0.693643, 0.201998, 0.8822, 0.71006, 0.845775, 0.219052, 0.526977, 0.683796, 0.0651949, 0.885758, 0.0993864, 0.7521, 0.486963, 0.565048, 0.0380388, 0.78097, 0.423225, 0.232267, 0.752506, 0.935552, 0.991302, 0.363166, 0.166649, 0.553225, 0.766028, 0.726783, 0.234747, 0.651213, 0.0501403, 0.215555, 0.721124, 0.526623, 0.107751, 0.0986246, 0.350576, 0.632459, 0.806925, 0.986724, 0.503427, 0.89563, 0.135046, 0.131089, 0.13042, 0.680536, 0.194616, 0.0838534, 0.340484, 0.584794, 0.529969, 0.90306, 0.970121, 0.774843, 0.740918, 0.631843, 0.849509, 0.827182, 0.119973, 0.0955378, 0.075458, 0.834584, 0.532189, 0.665657, 0.805814, 0.858219, 0.730203, 0.196198, 0.566032, 0.603753, 0.159033, 0.0184471, 0.162071, 0.318345, 0.343281, 0.497409, 0.538695, 0.250598, 0.774254, 0.0926591, 0.833227, 0.453374, 0.854888, 0.828887, 0.803833, 0.258102, 0.847914, 0.578454, 0.85191, 0.0348968, 0.00709585, 0.430207, 0.526198, 0.938686, 0.730122, 0.661965, 0.496286, 0.926161, 0.190591, 0.775205, 0.462369, 0.0878296, 0.179312, 0.806409, 0.990705, 0.716664, 0.785454, 0.284018, 0.750923, 0.688451, 0.675176, 0.0552854, 0.137542, 0.795408, 0.799335, 0.72947, 0.559885, 0.681329, 0.892869, 0.337649, 0.877184, 0.775649, 0.355719, 0.99419, 0.348827, 0.352518, 0.524771, 0.253467, 0.338579, 0.580983, 0.803195, 0.522006, 0.523621, 0.670412, 0.492276, 0.671907, 0.0820314, 0.0755928, 0.904965, 0.893803, 0.188026, 0.509634, 0.975302, 0.249063, 0.179232, 0.32184, 0.00170983, 0.291098, 0.82429, 0.185485, 0.999333, 0.275786, 0.947017, 0.93035, 0.957691, 0.809511, 0.0708173, 0.214065, 0.982884, 0.606091, 0.332046, 0.773362, 0.253258, 0.396683, 0.542991, 0.532282, 0.0806511, 0.258931, 0.907905, 0.572239, 0.781055, 0.165028, 0.963063, 0.751667, 0.0629895, 0.0533429, 0.313023, 0.679359, 0.254258, 0.653318, 0.309982, 0.908514, 0.508617, 0.387468, 0.964641, 0.296241, 0.766548, 0.103427, 0.549489, 0.520825, 0.326314, 0.236405, 0.0752578, 0.064323, 0.936622, 0.64045, 0.273236, 0.777044, 0.829876, 0.795377, 0.0883918, 0.606991, 0.18328, 0.202031, 0.601384, 0.834526, 0.668589, 0.679766, 0.515227, 0.0901979, 0.457051, 0.68674, 0.727562, 0.227659, 0.709396, 0.436637, 0.474253, 0.0137946, 0.0644583, 0.254809, 0.0233766, 0.0756732, 0.726718, 0.15911, 0.850898, 0.434646, 0.44796, 0.053404, 0.900504, 0.587858, 0.423076, 0.720507, 0.334164, 0.706948, 0.909105, 0.300613, 0.604851, 0.86867, 0.271388, 0.669847, 0.0167656, 0.861554, 0.077821, 0.733018, 0.348124, 0.599139, 0.771288, 0.062589, 0.740457, 0.00565081, 0.589702, 0.182778, 0.820999, 0.593757, 0.761818, 0.335597, 0.935937, 0.858532, 0.0631401, 0.343626, 0.3535, 0.921326, 0.388196, 0.795474, 0.819477, 0.871345, 0.715264, 0.236699, 0.0888337, 0.460016, 0.717278, 0.241951, 0.572598, 0.138847, 0.761385, 0.689444, 0.336782, 0.402254, 0.253664, 0.957427, 0.609713, 0.950624, 0.304603, 0.610227, 0.525213, 0.0259711, 0.316714, 0.572127, 0.82157, 0.407217, 0.529548, 0.330687, 0.987616, 0.135846, 0.169265, 0.460935, 0.0892792, 0.0736386, 0.487791, 0.278372, 0.44187, 0.683973, 0.77193, 0.787922, 0.945419, 0.372715, 0.0631618, 0.94083, 0.0148512, 0.672022, 0.775876, 0.0020973, 0.322331, 0.185871, 0.0218866, 0.601585, 0.0541359, 0.28853, 0.557182, 0.61673, 0.00376734, 0.175793, 0.210734, 0.157517, 0.710277, 0.190945, 0.143232, 0.806647, 0.154759, 0.262934, 0.630335, 0.231349, 0.7522, 0.00389908, 0.723769, 0.959224, 0.291919, 0.347028, 0.714319, 0.229783, 0.233013, 0.723434, 0.717867, 0.0989735, 0.750173, 0.0774084, 0.864228, 0.655428, 0.848505, 0.514754, 0.45118, 0.269854, 0.650527, 0.967951, 0.220624, 0.597638, 0.717378, 0.329439, 0.131894, 0.464656, 0.566333, 0.482473, 0.969188, 0.259669, 0.230619, 0.901337, 0.443747, 0.662217, 0.332049, 0.0475301, 0.249253, 0.114379, 0.285178, 0.904313, 0.0910859, 0.800636, 0.677768, 0.291465, 0.308626, 0.182143, 0.37033, 0.912108, 0.888104, 0.595926, 0.354441, 0.231607, 0.00429094, 0.752775, 0.155457, 0.613871, 0.229395, 0.996085, 0.564239, 0.948173, 0.331992, 0.611012, 0.0780731, 0.283474, 0.794546, 0.147155, 0.865008, 0.310865, 0.65613, 0.819575, 0.836494, 0.434378, 0.332479, 0.462109, 0.802556, 0.557888, 0.894007, 0.84688, 0.658564, 0.439436, 0.157999, 0.0187777, 0.668829, 0.0981938, 0.406871, 0.0598554, 0.0440665, 0.7231, 0.627785, 0.228452, 0.369441, 0.818003, 0.949541, 0.309793, 0.426666, 0.953626, 0.310622, 0.636521, 0.0078374, 0.52237, 0.546259, 0.14587, 0.127715, 0.77997, 0.19584, 0.0460907, 0.222583, 0.245641, 0.0744197, 0.062041, 0.154346, 0.294956, 0.0346921, 0.961903, 0.596522, 0.920379, 0.637078, 0.452331, 0.037705, 0.300133, 0.392585, 0.444479, 0.809781, 0.91904, 0.34609, 0.337059, 0.772944, 0.509076, 0.813418, 0.743843, 0.832422, 0.513355, 0.737389, 0.909522, 0.400143, 0.989196, 0.706781, 0.936147, 0.967412, 0.0790019, 0.683452, 0.0513959, 0.0220148, 0.445829, 0.379712, 0.436938, 0.262968, 0.71458, 0.521984, 0.29096, 0.910776, 0.182706, 0.990957, 0.762616, 0.838326, 0.975322, 0.0426235, 0.157322, 0.529008, 0.718687, 0.720107, 0.106729, 0.108269, 0.495979, 0.141722, 0.351645, 0.839378, 0.345489, 0.526144, 0.367063, 0.462042, 0.591808, 0.661215, 0.576531, 0.48666, 0.768595, 0.00274219, 0.362288, 0.914434, 0.242182, 0.17169, 0.231551, 0.380276, 0.119062, 0.122866, 0.943268, 0.736052, 0.581239, 0.601212, 0.280017, 0.0845222, 0.405734, 0.386272, 0.835841, 0.481437, 0.902706, 0.729822, 0.483459, 0.516436, 0.320269, 0.0900959, 0.854665, 0.425034, 0.658621, 0.672968, 0.274236, 0.159773, 0.155908, 0.908024, 0.874571, 0.157201, 0.479119, 0.924767, 0.865331, 0.243567, 0.17988, 0.560174, 0.899771, 0.880168, 0.492128, 0.545013, 0.0557516, 0.213721, 0.433411, 0.926724, 0.555485, 0.66838, 0.314699, 0.973913, 0.419982, 0.162812, 0.718897, 0.824389, 0.0573174, 0.267585, 0.263586, 0.535152, 0.429409, 0.279717, 0.216125, 0.421766, 0.358811, 0.738326, 0.293389, 0.291716, 0.610258, 0.347914, 0.274395, 0.623084, 0.84017, 0.809506, 0.328248, 0.0550458, 0.154956, 0.779291, 0.965005, 0.829546, 0.582364, 0.803129, 0.394827, 0.327245, 0.863805, 0.827684, 0.444272, 0.463576, 0.477969, 0.310528, 0.356725, 0.163275, 0.767826, 0.406951, 0.993501, 0.480717, 0.851361, 0.822044, 0.115931, 0.246821, 0.892049, 0.318809, 0.0882003, 0.156773, 0.678496, 0.495272, 0.571106, 0.703626, 0.813238, 0.636719, 0.674915, 0.60579, 0.370936, 0.685799, 0.868517, 0.537657, 0.942709, 0.46806, 0.956807, 0.047549, 0.332575, 0.603114, 0.314875, 0.378283, 0.657079, 0.439649, 0.949845, 0.190255, 0.557969, 0.0978686, 0.180199, 0.0712606, 0.42219, 0.24346, 0.74311, 0.51032, 0.339512, 0.96454, 0.85125, 0.904598, 0.709244, 0.909396, 0.604158, 0.0167792, 0.824189, 0.131455, 0.506255, 0.424453, 0.887814, 0.523445, 0.949804, 0.642764, 0.39447, 0.549367, 0.430829, 0.708628, 0.0988114, 0.882531, 0.137133, 0.460929, 0.0122454, 0.514485, 0.472725, 0.860747, 0.424559, 0.127027, 0.443558, 0.248595, 0.963645, 0.824439, 0.829111, 0.253433, 0.88862, 0.337656, 0.398615, 0.074632, 0.504647, 0.173831, 0.780968, 0.0923362, 0.136717, 0.512784, 0.317403, 0.0866651, 0.621285, 0.410034, 0.153893, 0.377459, 0.698771, 0.0795732, 0.346077, 0.512959, 0.761268, 0.94475, 0.961858, 0.483854, 0.660332, 0.92906, 0.611741, 0.581595, 0.311685, 0.929314, 0.9404, 0.41046, 0.276307, 0.00848755, 0.969586, 0.222466, 0.824088, 0.226543, 0.0996573, 0.932443, 0.152814, 0.0705176, 0.101769, 0.0654273, 0.14785, 0.00966242, 0.904179, 0.0265705, 0.147682, 0.966167, 0.735643, 0.458483, 0.361496, 0.140284, 0.994168, 0.384072, 0.12949, 0.256833, 0.961848, 0.297969, 0.135262, 0.554605, 0.971555, 0.118056, 0.123181, 0.938647, 0.69431, 0.735165, 0.0754149, 0.777311, 0.580156, 0.284853, 0.0186222, 0.877017, 0.166516, 0.872438, 0.837276, 0.177283, 0.209166, 0.930639, 0.992038, 0.071956, 0.302043, 0.989175, 0.331572, 0.810496, 0.721497, 0.249547, 0.88981, 0.126121, 0.26953, 0.183717, 0.438436, 0.0113474, 0.23086, 0.982592, 0.561045, 0.987936, 0.216965, 0.136639, 0.890613, 0.575762, 0.621453, 0.00423407, 0.281635, 0.630328, 0.762428, 0.586908, 0.336568, 0.157239, 0.0181237, 0.278881, 0.280268, 0.310723, 0.107755, 0.794932, 0.94234, 0.82636, 0.0447968, 0.0484417, 0.764108, 0.486863, 0.123541, 0.408821, 0.548363, 0.565195, 0.993258, 0.340211, 0.101428, 0.639352, 0.0331267, 0.722798, 0.968099, 0.44833, 0.104309, 0.432915, 0.514847, 0.180713, 0.255512, 0.149729, 0.709521, 0.278671, 0.630209, 0.720918, 0.666975, 0.0961393, 0.977855, 0.177188, 0.898692, 0.325751, 0.0991652, 0.758603, 0.940151, 0.62894, 0.235112, 0.312575, 0.710541, 0.773737, 0.58237, 0.874781, 0.639464, 0.290089, 0.569295, 0.164518, 0.657867, 0.786519, 0.491751, 0.466474, 0.966587, 0.881463, 0.84333, 0.0278504, 0.966788, 0.754078, 0.055957, 0.426219, 0.398211, 0.832891, 0.424339, 0.388594, 0.689108, 0.640693, 0.443203, 0.244257, 0.563948, 0.875906, 0.00518997, 0.676692, 0.159401, 0.0246055, 0.464375, 0.65923, 0.219716, 0.503831, 0.717623, 0.15368, 0.504457, 0.719898, 0.765235, 0.800815, 0.0451803, 0.825401, 0.609148, 0.935513, 0.389204, 0.698918, 0.770326, 0.975974, 0.909186, 0.18634, 0.163325, 0.703226, 0.823482, 0.88745, 0.530157, 0.377282, 0.412649, 0.0550173, 0.56406, 0.965351, 0.588554, 0.479646, 0.433134, 0.36783, 0.83208, 0.0279519, 0.059072, 0.317357, 0.579981, 0.417228, 0.868393, 0.719391, 0.307402, 0.987383, 0.0988718, 0.623523, 0.533682, 0.102385, 0.0310876, 0.142984, 0.248113, 0.947057, 0.394611, 0.366998, 0.564097, 0.405845, 0.721784, 0.0687225, 0.412298, 0.655871, 0.213394, 0.179709, 0.212455, 0.514997, 0.6472, 0.204435, 0.423867, 0.531151, 0.845199, 0.968685, 0.52798, 0.805347, 0.780149, 0.823828, 0.0588349, 0.236761, 0.921897, 0.21372, 0.595434, 0.87177, 0.599367, 0.106801, 0.575967, 0.318829, 0.450477, 0.150316, 0.296109, 0.499768, 0.47738, 0.128069, 0.0715869, 0.72745, 0.528861, 0.495088, 0.265099, 0.539606, 0.0896716, 0.468149, 0.705684, 0.828803, 0.351793, 0.872687, 0.0503727, 0.057916, 0.543063, 0.570048, 0.973978, 0.116472, 0.960034, 0.302765, 0.534159, 0.446823, 0.571178, 0.788278, 0.685542, 0.624223, 0.845715, 0.325013, 0.0851581, 0.143677, 0.514044, 0.67958, 0.106702, 0.0944046, 0.538803, 0.450271, 0.749616, 0.443358, 0.989337, 0.591366, 0.729911, 0.507205, 0.573434, 0.230006, 0.81932, 0.557344, 0.00369812, 0.729565, 0.668036, 0.679606, 0.307034, 0.771778, 0.194125, 0.295945, 0.262545, 0.482182, 0.879381, 0.909916, 0.379052, 0.596569, 0.348802, 0.0713749, 0.659126, 0.8039, 0.904802, 0.998137, 0.188463, 0.304638, 0.180875, 0.851244, 0.89946, 0.364322, 0.482404, 0.769585, 0.684069, 0.357839, 0.927881, 0.849572, 0.0148404, 0.173851, 0.55656, 0.0420279, 0.469893, 0.929734, 0.373059, 0.867094, 0.562266, 0.869882, 0.803044, 0.824802, 0.591238, 0.645355, 0.654374, 0.739676, 0.569853, 0.592839, 0.578108, 0.172859, 0.161045, 0.307407, 0.687171, 0.315771, 0.777463, 0.395209, 0.389749, 0.142843, 0.382948, 0.139211, 0.713281, 0.559466, 0.543633, 0.550603, 0.632542, 0.550871, 0.247174, 0.389212, 0.753951, 0.384542, 0.000148124, 0.72436, 0.56891, 0.57391, 0.512715, 0.898969, 0.594874, 0.557189, 0.908967, 0.617391, 0.392906, 0.653329, 0.777935, 0.58031, 0.625075, 0.242305, 0.1198, 0.122227, 0.111774, 0.722752, 0.879915, 0.782339, 0.934779, 0.0186954, 0.0362658, 0.947503, 0.841379, 0.336723, 0.185926, 0.738201, 0.428007, 0.903615, 0.866105, 0.475728, 0.202284, 0.272111, 0.0571659, 0.210737, 0.476015, 0.469073, 0.0611642, 0.0665944, 0.325353, 0.964703, 0.0953343, 0.0682228, 0.83638, 0.601042, 0.0126703, 0.201357, 0.0904805, 0.297979, 0.474657, 0.638882, 0.981478, 0.99664, 0.430499, 0.252657, 0.736575, 0.490264, 0.767054, 0.211742, 0.864591, 0.260054, 0.809009, 0.913942, 0.30213, 0.753506, 0.457655, 0.370254, 0.214893, 0.736468, 0.476589, 0.346709, 0.295778, 0.79027, 0.842565, 0.728237, 0.848804, 0.24776, 0.108304, 0.887907, 0.523082, 0.888509, 0.693114, 0.514055, 0.00202371, 0.440257, 0.811403, 0.459141, 0.765207, 0.898165, 0.946443, 0.925234, 0.941297, 0.688213, 0.815815, 0.0213245, 0.0624914, 0.248203, 0.331839, 0.861401, 0.550611, 0.0653023, 0.254555, 0.4925, 0.0976798, 0.858426, 0.53645, 0.00381209, 0.568045, 0.534942, 0.721444, 0.276038, 0.11547, 0.260258, 0.710199, 0.640796, 0.620652, 0.63514, 0.284293, 0.713824, 0.415793, 0.649285, 0.0575196, 0.618474, 0.596102, 0.864243, 0.864486, 0.116281, 0.00390904, 0.846489, 0.874261, 0.713002, 0.921523, 0.433395, 0.0862394, 0.536478, 0.793742, 0.755592, 0.185232, 0.791599, 0.848238, 0.789237, 0.697622, 0.103263, 0.456274, 0.368645, 0.835412, 0.321818, 0.974223, 0.583227, 0.305607, 0.010266, 0.149779, 0.627738, 0.696854, 0.347965, 0.351781, 0.284056, 0.317928, 0.872251, 0.543762, 0.892236, 0.973598, 0.738517, 0.174874, 0.251516, 0.754915, 0.822497, 0.407258, 0.763458, 0.587331, 0.177994, 0.795502, 0.526714, 0.243223, 0.47884, 0.538333, 0.296961, 0.689567, 0.284069, 0.150483, 0.29841, 0.83895, 0.163957, 0.550412, 0.759699, 0.228623, 0.358266, 0.764388, 0.0343603, 0.573761, 0.0995418, 0.256265, 0.447006, 0.584478, 0.868124, 0.996181, 0.460933, 0.969999, 0.117898, 0.830214, 0.832377, 0.0981657, 0.752475, 0.0130955, 0.591671, 0.945099, 0.173983, 0.834611, 0.321708, 0.00127714, 0.45433, 0.956984, 0.554794, 0.0443828, 0.0564657, 0.0607032, 0.206122, 0.0508211, 0.193611, 0.885675, 0.248248, 0.0177595, 0.46287, 0.511605, 0.217043, 0.766855, 0.748022, 0.506122, 0.284082, 0.56234, 0.0373831, 0.736352, 0.374462, 0.503192, 0.920619, 0.679205, 0.298362, 0.952551, 0.0242068, 0.670969, 0.207361, 0.757293, 0.818589, 0.712484, 0.51068, 0.953238, 0.740579, 0.484941, 0.703389, 0.0998717, 0.693497, 0.277543, 0.412835, 0.0898437, 0.17018, 0.380656, 0.67726, 0.829685, 0.160571, 0.982515, 0.0105622, 0.178074, 0.180181, 0.985837, 0.04553, 0.879438, 0.39348, 0.541605, 0.105272, 0.509245, 0.45921, 0.186196, 0.364205, 0.440382, 0.648964, 0.406605, 0.885256, 0.739323, 0.846065, 0.773372, 0.42297, 0.39465, 0.547566, 0.846827, 0.783635, 0.698584, 0.802073, 0.115203, 0.715732, 0.796066, 0.590882, 0.793278, 0.583701, 0.370246, 0.0525421, 0.62654, 0.226048, 0.203063, 0.363741, 0.0796044, 0.302193, 0.104387, 0.719226, 0.363957, 0.156718, 0.416547, 0.0413003, 0.0534442, 0.689326, 0.495003, 0.581874, 0.94833, 0.590377, 0.86838, 0.165258, 0.396636, 0.370142, 0.756148, 0.895842, 0.788295, 0.292392, 0.0942366, 0.207767, 0.521764, 0.786284, 0.656198, 0.900616, 0.036613, 0.101972, 0.588965, 0.468545, 0.398949, 0.192605, 0.442695, 0.866613, 0.490497, 0.938659, 0.163865, 0.658106, 0.728801, 0.232202, 0.794796, 0.51414, 0.101016, 0.237841, 0.109641, 0.315046, 0.845791, 0.275807, 0.588913, 0.520171, 0.707007, 0.601738, 0.617549, 0.688958, 0.0586862, 0.253376, 0.311548, 0.811601, 0.345321, 0.883751, 0.240324, 0.83187, 0.156642, 0.296653, 0.671268, 0.820915, 0.31121, 0.37509, 0.161503, 0.694744, 0.600375, 0.599661, 0.468312, 0.28947, 0.374086, 0.119787, 0.063204, 0.955248, 0.251944, 0.977308, 0.237282, 0.563092, 0.441562, 0.0589088, 0.711063, 0.604121, 0.642621, 0.66315, 0.831686, 0.971107, 0.498149, 0.797319, 0.287449, 0.660532, 0.543949, 0.923563, 0.0116415, 0.438079, 0.760688, 0.367991, 0.674523, 0.954855, 0.0322069, 0.716675, 0.293589, 0.880414, 0.360645, 0.787416, 0.371654, 0.662933, 0.622078, 0.703166, 0.720878, 0.63169, 0.146368, 0.206037, 0.786252, 0.843981, 0.603251, 0.0284235, 0.329744, 0.0306811, 0.331363, 0.965364, 0.20077, 0.499229, 0.303143, 0.0352855, 0.0362593, 0.768574, 0.851408, 0.139309, 0.235714, 0.358162, 0.642589, 0.887479, 0.636, 0.92517, 0.233587, 0.701345, 0.860022, 0.467247, 0.999242, 0.613187, 0.543184, 0.309764, 0.884758, 0.594529, 0.00921185, 0.257275, 0.555912, 0.230975, 0.940304, 0.0342401, 0.886004, 0.987629, 0.290885, 0.0431279, 0.192952, 0.184686, 0.510438, 0.399143, 0.293712, 0.0965965, 0.521944, 0.635594, 0.109729, 0.668824, 0.907203, 0.0184083, 0.123525, 0.353211, 0.0878773, 0.735733, 0.439931, 0.821095, 0.414072, 0.790761, 0.999123, 0.0736174, 0.201622, 0.258622, 0.721344, 0.504993, 0.685997, 0.118691, 0.191002, 0.831992, 0.690067, 0.0679851, 0.80831, 0.659104, 0.731067, 0.352092, 0.293331, 0.957118, 0.345333, 0.348707, 0.692154, 0.47406, 0.670504, 0.893248, 0.658411, 0.791697, 0.131207, 0.146328, 0.454866, 0.259299, 0.019731, 0.633885, 0.485144, 0.867405, 0.102936, 0.282226, 0.154727, 0.209302, 0.642264, 0.91506, 0.64719, 0.417825, 0.242511, 0.971619, 0.500971, 0.564887, 0.0283391, 0.460881, 0.413526, 0.23318, 0.620868, 0.117714, 0.476234, 0.0324641, 0.347729, 0.844452, 0.111522, 0.495495, 0.171264, 0.240243, 0.309112, 0.063638, 0.346869, 0.958359, 0.884077, 0.817148, 0.343429, 0.176891, 0.222144, 0.472591, 0.534492, 0.381877, 0.826799, 0.694224, 0.836962, 0.253868, 0.222637, 0.938627, 0.344025, 0.531818, 0.886584, 0.136461, 0.883926, 0.6252, 0.450213, 0.675853, 0.833127, 0.531458, 0.219885, 0.516905, 0.538804, 0.270947, 0.8083, 0.342117, 0.164903, 0.717373, 0.259723, 0.34928, 0.0031411, 0.477951, 0.76696, 0.631356, 0.56084, 0.393835, 0.62975, 0.442054, 0.760919, 0.438761, 0.588724, 0.394976, 0.740429, 0.892797, 0.890638, 0.889373, 0.479524, 0.898522, 0.252899, 0.601043, 0.340232, 0.507867, 0.604934, 0.673391, 0.864168, 0.761415, 0.0193604, 0.917449, 0.0233324, 0.176041, 0.79358, 0.759087, 0.00338592, 0.418596, 0.946881, 0.836999, 0.783908, 0.536279, 0.0901404, 0.37536, 0.727554, 0.362474, 0.32167, 0.552061, 0.938832, 0.698234, 0.990923, 0.172385, 0.99277, 0.99088, 0.834197, 0.509995, 0.885742, 0.305868, 0.881945, 0.593989, 0.280978, 0.738778, 0.446081, 0.484508, 0.620926, 0.292129, 0.526718, 0.665401, 0.189873, 0.877087, 0.701434, 0.686591, 0.819066, 0.581826, 0.452287, 0.648421, 0.814646, 0.711528, 0.67888, 0.803137, 0.335464, 0.433189, 0.248543, 0.863502, 0.093987, 0.920554, 0.610589, 0.803123, 0.507438, 0.213006, 0.635474, 0.897421, 0.425198, 0.959406, 0.744501, 0.544635, 0.85241, 0.886215, 0.581579, 0.0143649, 0.787452, 0.528399, 0.927382, 0.666474, 0.88946, 0.171892, 0.908565, 0.72192, 0.623877, 0.319243, 0.442565, 0.560949, 0.629502, 0.731693, 0.893384, 0.529135, 0.465402, 0.643891, 0.432774, 0.237178, 0.729202, 0.254623, 0.793939, 0.0540441, 0.916015, 0.547684, 0.291954, 0.378851, 0.992345, 0.675009, 0.445953, 0.451707, 0.384178, 0.64188, 0.966359, 0.386137, 0.329766, 0.638585, 0.351205, 0.217723, 0.409932, 0.798015, 0.376577, 0.911426, 0.896666, 0.0532622, 0.364394, 0.978061, 0.431195, 0.655887, 0.511757, 0.676384, 0.0226849, 0.429696, 0.27891, 0.1292, 0.442489, 0.101619, 0.760526, 0.811433, 0.0115432, 0.0957934, 0.519178, 0.058131, 0.0607445, 0.570893, 0.486126, 0.334195, 0.16865, 0.194041, 0.15197, 0.39907, 0.39531, 0.66054, 0.368456, 0.744452, 0.746989, 0.158254, 0.426506, 0.60924, 0.647154, 0.222331, 0.364358, 0.37559, 0.91225, 0.516574, 0.0581788, 0.335011, 0.0888585, 0.491322, 0.991695, 0.236961, 0.223844, 0.438208, 0.566438, 0.816695, 0.97718, 0.151424, 0.991711, 0.762377, 0.884529, 0.524874, 0.70195, 0.0683297, 0.629884, 0.721056, 0.136015, 0.181119, 0.776701, 0.628543, 0.843678, 0.925435, 0.0315292, 0.723458, 0.0801435, 0.347634, 0.0693801, 0.271896, 0.419464, 0.389288, 0.809939, 0.119708, 0.961704, 0.0539787, 0.0928968, 0.494872, 0.742237, 0.632632, 0.427045, 0.99255, 0.38223, 0.944426, 0.55129, 0.120628, 0.199883, 0.114481, 0.695233, 0.549377, 0.48581, 0.469033, 0.0897173, 0.972331, 0.207159, 0.605164, 0.251204, 0.0292478, 0.249625, 0.851037, 0.985599, 0.851117, 0.492, 0.128298, 0.587453, 0.492101, 0.542004, 0.596331, 0.130162, 0.132661, 0.114587, 0.446182, 0.62133, 0.345193, 0.970332, 0.304415, 0.711366, 0.593442, 0.238918, 0.49472, 0.219047, 0.882048, 0.655913, 0.0858985, 0.0448975, 0.744293, 0.559759, 0.727168, 0.948462, 0.872775, 0.887675, 0.97566, 0.602118, 0.59441, 0.365167, 0.0178453, 0.677012, 0.000469322, 0.462239, 0.406242, 0.220816, 0.534038, 0.754588, 0.988072, 0.674532, 0.984156, 0.938116, 0.726921, 0.0813114, 0.0698321, 0.53369, 0.52899, 0.373353, 0.715339, 0.648526, 0.203647, 0.679892, 0.138689, 0.717086, 0.130382, 0.641169, 0.935975, 0.234003, 0.785587, 0.524012, 0.350948, 0.867169, 0.516038, 0.0972155, 0.204833, 0.44361, 0.272956, 0.963037, 0.311152, 0.604657, 0.142892, 0.141633, 0.619187, 0.29317, 0.726191, 0.443992, 0.251751, 0.403269, 0.093485, 0.0333194, 0.732796, 0.45749, 0.688286, 0.440866, 0.408456, 0.973198, 0.229783, 0.31757, 0.330477, 0.461278, 0.373952, 0.51402, 0.759988, 0.542619, 0.329818, 0.51143, 0.70557, 0.257815, 0.989691, 0.832469, 0.635778, 0.73187, 0.878585, 0.435296, 0.303173, 0.834875, 0.581567, 0.99194, 0.406117, 0.0915859, 0.05272, 0.331072, 0.508428, 0.794462, 0.19633, 0.768132, 0.293733, 0.295751, 0.191498, 0.257508, 0.0606061, 0.469303, 0.875147, 0.663145, 0.588876, 0.072709, 0.648664, 0.92418, 0.366776, 0.49849, 0.546391, 0.0735117, 0.0646461, 0.717583, 0.552678, 0.00543609, 0.180325, 0.506415, 0.602656, 0.281583, 0.251179, 0.251321, 0.747652, 0.802051, 0.236779, 0.834184, 0.510039, 0.0827592, 0.390959, 0.662091, 0.397174, 0.175574, 0.260066, 0.166856, 0.195407, 0.185696, 0.895769, 0.525751, 0.877596, 0.0125126, 0.482765, 0.872977, 0.825291, 0.444211, 0.503061, 0.559385, 0.877482, 0.292179, 0.816029, 0.50973, 0.714857, 0.0713315, 0.325027, 0.209972, 0.342602, 0.958246, 0.553407, 0.0536296, 0.775703, 0.716464, 0.574337, 0.88593, 0.56053, 0.185352, 0.988696, 0.0619346, 0.673126, 0.242359, 0.710365, 0.117933, 0.13089, 0.269189, 0.825123, 0.782908, 0.876054, 0.618151, 0.0318198, 0.191444, 0.671135, 0.709634, 0.691659, 0.871847, 0.449904, 0.614982, 0.754703, 0.295812, 0.436184, 0.460485, 0.559034, 0.971071, 0.0835596, 0.325722, 0.683165, 0.486895, 0.625746, 0.606516, 0.970145, 0.806648, 0.219093, 0.2069, 0.625969, 0.874585, 0.8453, 0.535089, 0.788458, 0.149386, 0.526117, 0.79274, 0.16895, 0.502175, 0.233237, 0.738958, 0.282391, 0.973136, 0.32103, 0.765401, 0.513252, 0.637431, 0.614987, 0.634239, 0.841921, 0.988349, 0.518761, 0.400584, 0.37837, 0.669983, 0.825831, 0.865357, 0.0415287, 0.632536, 0.461784, 0.96576, 0.105234, 0.437686, 0.389517, 0.158363, 0.927401, 0.24937, 0.270551, 0.0975506, 0.305709, 0.359394, 0.130371, 0.374196, 0.344173, 0.519781, 0.993596, 0.544894, 0.131868, 0.128031, 0.901344, 0.176863, 0.464752, 0.646638, 0.326548, 0.587591, 0.247731, 0.89514, 0.224064, 0.0250704, 0.442619, 0.38589, 0.752707, 0.462433, 0.663886, 0.275957, 0.986956, 0.482773, 0.262438, 0.522622, 0.138242, 0.438995, 0.862814, 0.143452, 0.0950212, 0.881319, 0.576341, 0.298245, 0.879771, 0.194538, 0.455735, 0.435099, 0.890082, 0.173699, 0.895137, 0.939618, 0.174012, 0.910283, 0.120991, 0.280603, 0.320783, 0.189493, 0.933469, 0.449997, 0.741839, 0.955152, 0.53903, 0.336764, 0.183585, 0.372795, 0.0701182, 0.904878, 0.899548, 0.475179, 0.618857, 0.832811, 0.655082, 0.99559, 0.690304, 0.712506, 0.174392, 0.727426, 0.0838329, 0.937813, 0.0924383, 0.0719185, 0.23245, 0.927018, 0.105399, 0.10073, 0.634962, 0.772058, 0.755873, 0.894292, 0.0164735, 0.232915, 0.264722, 0.69504, 0.201968, 0.851764, 0.985482, 0.676076, 0.711461, 0.212235, 0.542927, 0.192808, 0.790123, 0.735341, 0.0462154, 0.597233, 0.275964, 0.497216, 0.72545, 0.576124, 0.182752, 0.400787, 0.0880176, 0.154409, 0.28781, 0.80831, 0.800509, 0.484427, 0.389254, 0.679824, 0.817012, 0.195804, 0.351946, 0.407288, 0.460556, 0.788487, 0.434113, 0.0804973, 0.650214, 0.851455, 0.0790833, 0.674424, 0.19845, 0.940721, 0.228667, 0.584472, 0.103982, 0.170653, 0.974974, 0.577703, 0.717665, 0.558994, 0.467201, 0.981192, 0.911936, 0.452082, 0.567041, 0.589434, 0.247865, 0.0231813, 0.947266, 0.343523, 0.0990505, 0.721825, 0.770362, 0.9321, 0.716394, 0.378036, 0.340831, 0.922086, 0.367607, 0.227732, 0.754128, 0.467512, 0.185746, 0.712086, 0.827322, 0.874163, 0.80717, 0.47347, 0.266213, 0.237322, 0.697254, 0.287224, 0.287679, 0.708701, 0.447164, 0.966912, 0.0886931, 0.559857, 0.450786, 0.0322091, 0.518248, 0.218225, 0.0868987, 0.848535, 0.945032, 0.160127, 0.514129, 0.430556, 0.663002, 0.00521174, 0.352251, 0.348137, 0.899454, 0.296413, 0.508459, 0.592558, 0.708089, 0.98805, 0.142662, 0.813717, 0.0965165, 0.340975, 0.57454, 0.055429, 0.679794, 0.748739, 0.26523, 0.811711, 0.0803593, 0.689267, 0.948111, 0.261202, 0.0712096, 0.673757, 0.94536, 0.862339, 0.702204, 0.303758, 0.918833, 0.390345, 0.171957, 0.833633, 0.0352809, 0.0619804, 0.0634282, 0.839622, 0.830667, 0.87572, 0.974781, 0.932585, 0.428813, 0.0104468, 0.972434, 0.820552, 0.950346, 0.117655, 0.523806, 0.422234, 0.302305, 0.090535, 0.795667, 0.779505, 0.47993, 0.624446, 0.516996, 0.705758, 0.0779813, 0.645648, 0.691177, 0.252693, 0.597603, 0.0376277, 0.712566, 0.319926, 0.306324, 0.180171, 0.495661, 0.348016, 0.722844, 0.938575, 0.810016, 0.79415, 0.0286016, 0.341867, 0.586811, 0.908918, 0.617296, 0.194261, 0.489661, 0.58256, 0.272265, 0.464972, 0.261022, 0.992713, 0.084131, 0.861791, 0.939094, 0.666077, 0.557338, 0.76821, 0.918701, 0.945593, 0.222807, 0.631304, 0.491077, 0.631885, 0.960694, 0.555827, 0.0440505, 0.349719, 0.0220607, 0.964515, 0.721428, 0.802072, 0.475958, 0.537504, 0.470392, 0.839894, 0.129662, 0.753762, 0.478501, 0.344349, 0.554631, 0.646709, 0.475004, 0.569789, 0.661667, 0.550246, 0.864076, 0.322903, 0.193854, 0.449472, 0.0489499, 0.776404, 0.171195, 0.0490578, 0.387318, 0.471987, 0.281251, 0.530484, 0.871881, 0.00738331, 0.756389, 0.366249, 0.523742, 0.955334, 0.900337, 0.862764, 0.0251068, 0.807591, 0.329, 0.655859, 0.43806, 0.967088, 0.856614, 0.564868, 0.263827, 0.88379, 0.394052, 0.331613, 0.129589, 0.961031, 0.313168, 0.748675, 0.301716, 0.642899, 0.530788, 0.429123, 0.957201, 0.566146, 0.333744, 0.575132, 0.883897, 0.735218, 0.301634, 0.415317, 0.541749, 0.510866, 0.940398, 0.709419, 0.166982, 0.694368, 0.300638, 0.409976, 0.826152, 0.0791525, 0.430932, 0.556051, 0.16027, 0.659595, 0.299579, 0.982933, 0.218503, 0.622171, 0.22258, 0.710604, 0.0246091, 0.514223, 0.722444, 0.991928, 0.149312, 0.191685, 0.309154, 0.747623, 0.13437, 0.31049, 0.612046, 0.270341, 0.00458145, 0.359804, 0.439719, 0.190176, 0.723132, 0.64264, 0.263273, 0.862144, 0.76636, 0.860399, 0.963442, 0.113827, 0.937807, 0.697795, 0.340797, 0.0702309, 0.466482, 0.21466, 0.103165, 0.600706, 0.765315, 0.816003, 0.00213699, 0.880588, 0.300601, 0.697652, 0.706224, 0.405168, 0.735619, 0.503161, 0.823492, 0.297079, 0.993075, 0.1272, 0.928639, 0.766022, 0.862957, 0.115023, 0.37654, 0.997056, 0.442415, 0.10121, 0.576175, 0.568001, 0.054658, 0.539375, 0.0369961, 0.233537, 0.45195, 0.69698, 0.491197, 0.83229, 0.749307, 0.956535, 0.461022, 0.608285, 0.0708996, 0.858763, 0.83665, 0.0540675, 0.176012, 0.0782618, 0.383573, 0.10049, 0.17039, 0.837669, 0.824347, 0.672561, 0.226258, 0.993359, 0.828738, 0.745087, 0.847143, 0.214562, 0.0966094, 0.292813, 0.172754, 0.690461, 0.306624, 0.493792, 0.082351, 0.463749, 0.709288, 0.77587, 0.769697, 0.258762, 0.552895, 0.691946, 0.428443, 0.803173, 0.319662, 0.70558, 0.684336, 0.772958, 0.192036, 0.91128, 0.784571, 0.00169756, 0.0220194, 0.691098, 0.303216, 0.715526, 0.616449, 0.889499, 0.601632, 0.858683, 0.379488, 0.623479, 0.063779, 0.975611, 0.107904, 0.325446, 0.917735, 0.647174, 0.169204, 0.445308, 0.50126, 0.888059, 0.530384, 0.323393, 0.209886, 0.0370801, 0.766925, 0.760249, 0.801241, 0.198717, 0.582479, 0.344044, 0.893696, 0.388924, 0.729045, 0.469392, 0.857614, 0.558328, 0.953396, 0.201699, 0.729881, 0.0783627, 0.866433, 0.807658, 0.25476, 0.333156, 0.22571, 0.150533, 0.199606, 0.0655663, 0.745986, 0.0226287, 0.567979, 0.759151, 0.232618, 0.607517, 0.743174, 0.540987, 0.762208, 0.0955089, 0.559815, 0.951449, 0.401348, 0.331212, 0.642409, 0.807065, 0.0274912, 0.191121, 0.221269, 0.0196289, 0.0883137, 0.401632, 0.536547, 0.354751, 0.208566, 0.655834, 0.5751, 0.592522, 0.254354, 0.473421, 0.594959, 0.592251, 0.917631, 0.16714, 0.0527308, 0.120719, 0.145502, 0.748346, 0.073153, 0.613902, 0.262683, 0.655453, 0.64941, 0.00870569, 0.664284, 0.865813, 0.311702, 0.0668387, 0.514261, 0.612054, 0.439666, 0.145043, 0.697004, 0.736379, 0.5541, 0.51808, 0.248846, 0.324673, 0.546084, 0.341804, 0.397126, 0.901601, 0.811299, 0.234554, 0.983733, 0.835457, 0.656698, 0.556549, 0.543326, 0.446011, 0.446224, 0.556029, 0.813568, 0.832785, 0.342328, 0.99177, 0.465976, 0.435072, 0.154672, 0.132097, 0.196764, 0.669401, 0.0425384, 0.0923796, 0.534846, 0.313129, 0.650769, 0.895801, 0.329439, 0.111618, 0.0561264, 0.401462, 0.876942, 0.751772, 0.626181, 0.811451, 0.370353, 0.988758, 0.772378, 0.198887, 0.911808, 0.338299, 0.733134, 0.523288, 0.274299, 0.0417327, 0.214103, 0.267197, 0.777308, 0.207001, 0.648355, 0.191525, 0.566804, 0.933276, 0.487603, 0.819337, 0.707737, 0.217949, 0.46097, 0.360888, 0.865464, 0.448872, 0.503242, 0.752233, 0.986821, 0.546211, 0.0769288, 0.558356, 0.24947, 0.449025, 0.945505, 0.776708, 0.741667, 0.204081, 0.385307, 0.853636, 0.992854, 0.736488, 0.066858, 0.77241, 0.593993, 0.60012, 0.992664, 0.871801, 0.0559049, 0.872657, 0.88195, 0.775283, 0.626557, 0.949173, 0.141391, 0.756121, 0.463127, 0.794921, 0.179207, 0.686091, 0.924453, 0.957064, 0.562544, 0.199546, 0.506354, 0.686503, 0.498402, 0.994487, 0.727037, 0.39265, 0.766344, 0.404101, 0.0747312, 0.199944, 0.718873, 0.556318, 0.742083, 0.271842, 0.894729, 0.37571, 0.312619, 0.984724, 0.674071, 0.131572, 0.754846, 0.57373, 0.624965, 0.31371, 0.430913, 0.0704488, 0.389447, 0.0172197, 0.551376, 0.0406306, 0.737618, 0.725938, 0.148273, 0.695974, 0.686078, 0.829045, 0.964759, 0.609736, 0.820877, 0.971562, 0.787693, 0.163315, 0.346086, 0.219964, 0.300065, 0.727209, 0.976838, 0.827079, 0.233998, 0.657966, 0.205213, 0.933434, 0.418687, 0.921342, 0.826052, 0.959587, 0.228782, 0.714562, 0.939341, 0.880912, 0.368531, 0.759872, 0.198899, 0.183194, 0.858083, 0.858741, 0.296783, 0.411624, 0.588002, 0.718193, 0.0850838, 0.182008, 0.174099, 0.844767, 0.447305, 0.362803, 0.44193, 0.384677, 0.926375, 0.205336, 0.553223, 0.438452, 0.511155, 0.487039, 0.0977765, 0.399715, 0.386486, 0.70692, 0.882859, 0.468372, 0.957847, 0.3876, 0.776125, 0.158929, 0.922795, 0.839811, 0.619146, 0.549494, 0.0531412, 0.0756902, 0.497634, 0.169805, 0.102454, 0.120973, 0.978255, 0.872794, 0.126948, 0.0909931, 0.271697, 0.381201, 0.514382, 0.243212, 0.599241, 0.77792, 0.773524, 0.672781, 0.487241, 0.0839376, 0.391357, 0.476453, 0.0362453, 0.2344, 0.312296, 0.874476, 0.424861, 0.508472, 0.0558742, 0.0344206, 0.520736, 0.822892, 0.0290548, 0.119493, 0.723907, 0.67696, 0.361477, 0.136354, 0.437292, 0.406212, 0.0337393, 0.914554, 0.770004, 0.0112404, 0.170742, 0.316886, 0.212726, 0.820511, 0.16808, 0.548176, 0.370641, 0.191594, 0.456723, 0.269329, 0.802692, 0.582023, 0.704971, 0.097267, 0.874061, 0.545042, 0.248182, 0.60387, 0.0681193, 0.77384, 0.598909, 0.302987, 0.325852, 0.0673554, 0.11917, 0.749633, 0.355096, 0.643983, 0.0612776, 0.413992, 0.0139508, 0.722052, 0.315302, 0.287624, 0.354419, 0.0825466, 0.0346354, 0.415257, 0.198645, 0.316376, 0.639655, 0.943921, 0.798084, 0.798457, 0.698719, 0.381064, 0.144777, 0.498166, 0.886078, 0.353141, 0.949453, 0.710696, 0.966272, 0.29046, 0.215821, 0.932166, 0.277124, 0.508371, 0.849439, 0.0589401, 0.199342, 0.684583, 0.513649, 0.0423359, 0.898127, 0.691819, 0.398893, 0.0518767, 0.668939, 0.351535, 0.629585, 0.833358, 0.898651, 0.508718, 0.125405, 0.964831, 0.880354, 0.267236, 0.713629, 0.273668, 0.324527, 0.642784, 0.659036, 0.995745, 0.588816, 0.503675, 0.382374, 0.910729, 0.0355149, 0.611326, 0.554885, 0.735088, 0.0116437, 0.423462, 0.572976, 0.352222, 0.991798, 0.515002, 0.229352, 0.499804, 0.0845002, 0.41998, 0.599966, 0.160524, 0.394522, 0.971303, 0.580399, 0.392318, 0.42332, 0.783143, 0.512804, 0.626817, 0.42784, 0.869087, 0.2468, 0.678014, 0.658944, 0.20067, 0.461268, 0.92506, 0.451263, 0.766105, 0.212103, 0.703272, 0.218508, 0.688644, 0.413297, 0.599667, 0.195505, 0.34711, 0.125653, 0.671712, 0.455277, 0.430877, 0.136527, 0.848753, 0.417919, 0.530157, 0.0739151, 0.586103, 0.485083, 0.204155, 0.046138, 0.895842, 0.658664, 0.859067, 0.989272, 0.32699, 0.60984, 0.61495, 0.408844, 0.961566, 0.0553046, 0.547022, 0.879174, 0.162621, 0.119264, 0.687481, 0.426132, 0.733945, 0.492731, 0.53976, 0.421309, 0.543462, 0.937871, 0.356429, 0.721671, 0.96829, 0.66883, 0.62982, 0.488102, 0.885906, 0.408379, 0.445873, 0.0458212, 0.816757, 0.978667, 0.484184, 0.0821203, 0.00863886, 0.775971, 0.94334, 0.847172, 0.298308, 0.810391, 0.223445, 0.206679, 0.105182, 0.416122, 0.437131, 0.100253, 0.850094, 0.555826, 0.789377, 0.953452, 0.736583, 0.57701, 0.00567146, 0.615353, 0.215437, 0.723756, 0.10222, 0.960171, 0.678917, 0.186895, 0.107598, 0.345352, 0.909776, 0.0311485, 0.244998, 0.291455, 0.0696102, 0.765578, 0.67159, 0.792059, 0.866026, 0.337893, 0.410551, 0.325039, 0.870761, 0.932909, 0.926541, 0.123433, 0.228789, 0.515803, 0.77022, 0.260285, 0.943768, 0.166832, 0.42901, 0.790805, 0.484536, 0.850543, 0.129168, 0.525561, 0.836864, 0.670899, 0.989392, 0.40615, 0.84195, 0.703529, 0.0277729, 0.970586, 0.578251, 0.712678, 0.998142, 0.909949, 0.105793, 0.70533, 0.0624429, 0.749519, 0.866561, 0.236314, 0.663275, 0.732815, 0.869669, 0.976787, 0.357853, 0.53248, 0.426877, 0.753899, 0.617453, 0.698508, 0.68922, 0.494785, 0.149783, 0.0995106, 0.40116, 0.503474, 0.373518, 0.0836477, 0.13425, 0.21681, 0.118726, 0.634819, 0.977089, 0.265256, 0.748042, 0.888691, 0.787634, 0.809536, 0.644835, 0.29316, 0.327593, 0.0160854, 0.125146, 0.275558, 0.523259, 0.516161, 0.20558, 0.539658, 0.134941, 0.227353, 0.0504165, 0.336375, 0.681371, 0.703282, 0.228959, 0.960439, 0.132553, 0.638413, 0.432722, 0.249623, 0.119023, 0.863847, 0.845593, 0.733617, 0.564818, 0.354842, 0.317251, 0.846096, 0.673276, 0.967712, 0.476869, 0.933322, 0.380587, 0.738658, 0.950401, 0.740611, 0.217912, 0.497239, 0.645424, 0.0460094, 0.31764, 0.495142, 0.66771, 0.920877, 0.204059, 0.979247, 0.0579065, 0.00885498, 0.754811, 0.0516429, 0.055936, 0.34907, 0.766974, 0.458223, 0.712893, 0.721489, 0.74117, 0.113732, 0.159755, 0.306196, 0.287906, 0.0586668, 0.227036, 0.375864, 0.731875, 0.261966, 0.703742, 0.551798, 0.259109, 0.0335273, 0.469508, 0.872367, 0.269142, 0.919286, 0.0388054, 0.382238, 0.972526, 0.505148, 0.552892, 0.83519, 0.00472243, 0.968694, 0.964798, 0.746429, 0.186531, 0.624439, 0.311215, 0.0425672, 0.144405, 0.28095, 0.620576, 0.89762, 0.148073, 0.765404, 0.999952, 0.955194, 0.880677, 0.551894, 0.0689755, 0.944031, 0.443773, 0.782756, 0.310599, 0.753234, 0.391641, 0.110407, 0.0777928, 0.532599, 0.65657, 0.752063, 0.58651, 0.273044, 0.204238, 0.894772, 0.330859, 0.647798, 0.221537, 0.618673, 0.513573, 0.892098, 0.354175, 0.32973, 0.44207, 0.643923, 0.0657749, 0.544895, 0.822677, 0.201704, 0.318968, 0.01588, 0.387015, 0.346915, 0.62158, 0.502372, 0.668671, 0.947056, 0.94263, 0.514519, 0.970057, 0.71259, 0.0564903, 0.670559, 0.415756, 0.190109, 0.754052, 0.479532, 0.802145, 0.878031, 0.792649, 0.97403, 0.416255, 0.727476, 0.165484, 0.217993, 0.988402, 0.0679934, 0.435791, 0.638089, 0.723752, 0.872205, 0.432567, 0.398599, 0.601029, 0.961794, 0.113623, 0.745874, 0.0571676, 0.0533746, 0.0395844, 0.203789, 0.989465, 0.0442559, 0.422949, 0.249979, 0.30196, 0.25443, 0.571869, 0.657256, 0.465526, 0.21422, 0.624284, 0.664228, 0.505148, 0.801648, 0.86753, 0.353587, 0.667585, 0.574137, 0.45417, 0.326524, 0.170598, 0.684429, 0.594146, 0.883172, 0.00597591, 0.507128, 0.668825, 0.857399, 0.238628, 0.344619, 0.921385, 0.390454, 0.767467, 0.526448, 0.209308, 0.482941, 0.0592267, 0.16138, 0.649495, 0.875742, 0.189382, 0.575094, 0.0628197, 0.804806, 0.973028, 0.644706, 0.995757, 0.367492, 0.407543, 0.692324, 0.111098, 0.165432, 0.905684, 0.750752, 0.968726, 0.596715, 0.170166, 0.33299, 0.00352108, 0.140982, 0.33248, 0.151946, 0.835857, 0.260298, 0.329285, 0.503132, 0.891641, 0.0309688, 0.686558, 0.930664, 0.652069, 0.906784, 0.655034, 0.508219, 0.530145, 0.0808804, 0.186955, 0.731151, 0.559371, 0.914596, 0.751523, 0.892675, 0.591954, 0.727949, 0.667489, 0.371732, 0.0235313, 0.382307, 0.782786, 0.803038, 0.0337037, 0.759655, 0.782478, 0.0433699, 0.17195, 0.983183, 0.0282266, 0.537087, 0.66325, 0.57343, 0.963328, 0.601718, 0.834538, 0.867519, 0.974822, 0.379965, 0.896917, 0.861391, 0.270236, 0.187672, 0.646133, 0.419483, 0.907196, 0.338165, 0.0257366, 0.504104, 0.565183, 0.714826, 0.00315621, 0.0881414, 0.539258, 0.685598, 0.249477, 0.106901, 0.880652, 0.467278, 0.162514, 0.891133, 0.794572, 0.000827441, 0.227503, 0.549867, 0.844087, 0.792277, 0.236174, 0.760025, 0.172165, 0.00446258, 0.738857, 0.730426, 0.485266, 0.291554, 0.369628, 0.671225, 0.137284, 0.140493, 0.811242, 0.519306, 0.303478, 0.639524, 0.193834, 0.144751, 0.198503, 0.322032, 0.820268, 0.854904, 0.410045, 0.621214, 0.854527, 0.458774, 0.647537, 0.445168, 0.575495, 0.317267, 0.998118, 0.224215, 0.895092, 0.435073, 0.863703, 0.635868, 0.659358, 0.803934, 0.319564, 0.0792921, 0.224559, 0.223369, 0.519262, 0.0365442, 0.629175, 0.240582, 0.385111, 0.693782, 0.149806, 0.823158, 0.769552, 0.78699, 0.665843, 0.110583, 0.593072, 0.931465, 0.339334, 0.995643, 0.361876, 0.908706, 0.455961, 0.296954, 0.248799, 0.843042, 0.757229, 0.544311, 0.381377, 0.915678, 0.969917, 0.18056, 0.633374, 0.959469, 0.792785, 0.978871, 0.298855, 0.654883, 0.550835, 0.488215, 0.579131, 0.865617, 0.837995, 0.651112, 0.80166, 0.297399, 0.78068, 0.250189, 0.81908, 0.667668, 0.314874, 0.462695, 0.834969, 0.994565, 0.101436, 0.608893, 0.754995, 0.667686, 0.608132, 0.949893, 0.942439, 0.113526, 0.655998, 0.406024, 0.0651648, 0.945811, 0.743999, 0.150349, 0.224319, 0.0521876, 0.0219746, 0.888158, 0.800638, 0.765049, 0.296809, 0.92984, 0.612383, 0.55553, 0.392979, 0.454009, 0.526442, 0.898217, 0.37843, 0.932444, 0.151336, 0.602143, 0.546911, 0.98982, 0.327695, 0.255483, 0.497197, 0.668865, 0.350015, 0.588987, 0.920687, 0.974143, 0.855903, 0.903463, 0.653577, 0.815682, 0.950908, 0.438637, 0.00769402, 0.308675, 0.998112, 0.586912, 0.110359, 0.354577, 0.696572, 0.366189, 0.188528, 0.298549, 0.636802, 0.060719, 0.133377, 0.893643, 0.477545, 0.324431, 0.0917787, 0.997444, 0.338215, 0.21877, 0.621238, 0.612159, 0.897854, 0.761928, 0.655464, 0.516508, 0.386329, 0.456673, 0.895152, 0.194767, 0.980796, 0.395748, 0.783539, 0.520146, 0.551608, 0.745029, 0.154286, 0.309419, 0.755306, 0.504286, 0.0142801, 0.420135, 0.722898, 0.821541, 0.179877, 0.399128, 0.656364, 0.153503, 0.632952, 0.93078, 0.24482, 0.12708, 0.503946, 0.965516, 0.763884, 0.827007, 0.968163, 0.263956, 0.694266, 0.573084, 0.777834, 0.155003, 0.547457, 0.922914, 0.0898469, 0.102103, 0.984725, 0.679942, 0.807202, 0.82757, 0.731029, 0.809984, 0.10444, 0.137751, 0.088757, 0.665421, 0.354944, 0.68699, 0.368189, 0.7585, 0.978332, 0.0331932, 0.961104, 0.036009, 0.410524, 0.788157, 0.707072, 0.394044, 0.0692635, 0.979939, 0.27294, 0.358806, 0.192622, 0.4507, 0.748704, 0.247296, 0.878215, 0.395735, 0.116569, 0.678133, 0.523666, 0.116462, 0.0450298, 0.884906, 0.946411, 0.905795, 0.239766, 0.744178, 0.864674, 0.600205, 0.23557, 0.793186, 0.709741, 0.389478, 0.720254, 0.822208, 0.234686, 0.550661, 0.136569, 0.581818, 0.491411, 0.0752614, 0.205601, 0.0167381, 0.421298, 0.764442, 0.0171872, 0.172914, 0.673424, 0.315788, 0.851922, 0.881794, 0.785323, 0.327871, 0.670798, 0.766904, 0.564501, 0.726402, 0.0814526, 0.757423, 0.144176, 0.187301, 0.434783, 0.23245, 0.672692, 0.333969, 0.829689, 0.933773, 0.339591, 0.862948, 0.5749, 0.900262, 0.73103, 0.186806, 0.350651, 0.870933, 0.721535, 0.37476, 0.50296, 0.152629, 0.982446, 0.81711, 0.102984, 0.224948, 0.95851, 0.754144, 0.137815, 0.61963, 0.393328, 0.458565, 0.542409, 0.422276, 0.863659, 0.692765, 0.940446, 0.479611, 0.196775, 0.0839665, 0.320951, 0.587056, 0.45924, 0.778098, 0.622774, 0.290534, 0.512412, 0.0832628, 0.766276, 0.760224, 0.0564326, 0.467499, 0.741098, 0.121712, 0.0810672, 0.0909302, 0.335258, 0.769957, 0.867494, 0.916659, 0.345656, 0.226352, 0.40573, 0.476093, 0.607439, 0.400266, 0.187752, 0.963017, 0.815361, 0.0973165, 0.160789, 0.638864, 0.139204, 0.559465, 0.93341, 0.263078, 0.942776, 0.0153435, 0.231091, 0.673392, 0.63059, 0.18909, 0.0191485, 0.886081, 0.86486, 0.148113, 0.0820599, 0.0157417, 0.924182, 0.132114, 0.125733, 0.30346, 0.308734, 0.954042, 0.585159, 0.284965, 0.327968, 0.255368, 0.379835, 0.969258, 0.633694, 0.919243, 0.0458492, 0.635932, 0.397332, 0.288385, 0.907132, 0.00302684, 0.482494, 0.631764, 0.387833, 0.795207, 0.0300032, 0.663524, 0.899644, 0.664472, 0.168047, 0.150681, 0.433692, 0.542278, 0.0288503, 0.128063, 0.40074, 0.212265, 0.486038, 0.924121, 0.355241, 0.449506, 0.7156, 0.207991, 0.953381, 0.809205, 0.313129, 0.195995, 0.649473, 0.459197, 0.158379, 0.302819, 0.701419, 0.681182, 0.698063, 0.17504, 0.871989, 0.680003, 0.65117, 0.698771, 0.61352, 0.803916, 0.010114, 0.846744, 0.228342, 0.995165, 0.608888, 0.843031, 0.247895, 0.364018, 0.468815, 0.675551, 0.186589, 0.48162, 0.342694, 0.38233, 0.349958, 0.166936, 0.26509, 0.907016, 0.905385, 0.777616, 0.399376, 0.272609, 0.400588, 0.199563, 0.525106, 0.39659, 0.124749, 0.611521, 0.924923, 0.318051, 0.173597, 0.708517, 0.114291, 0.450762, 0.719288, 0.577154, 0.262858, 0.622216, 0.482128, 0.391707, 0.944732, 0.210622, 0.0868526, 0.0241349, 0.818769, 0.201008, 0.591625, 0.607778, 0.650676, 0.208491, 0.934444, 0.705194, 0.274327, 0.853312, 0.0570209, 0.158762, 0.968459, 0.557991, 0.376927, 0.0348551, 0.359051, 0.440901, 0.749227, 0.814309, 0.829274, 0.425025, 0.436305, 0.701279, 0.311615, 0.763631, 0.42415, 0.0272155, 0.517186, 0.798847, 0.740948, 0.178524, 0.119816, 0.659664, 0.275078, 0.333098, 0.772992, 0.0615561, 0.0946026, 0.17025, 0.364631, 0.14993, 0.579287, 0.478926, 0.35614, 0.927322, 0.0338156, 0.312057, 0.0528351, 0.051598, 0.542136, 0.676923, 0.187734, 0.405661, 0.935259, 0.0904673, 0.624009, 0.16051, 0.6656, 0.506345, 0.920895, 0.431514, 0.912401, 0.75231, 0.720978, 0.276488, 0.960488, 0.333447, 0.793667, 0.94685, 0.778957, 0.626865, 0.293164, 0.958117, 0.0912412, 0.532753, 0.0334823, 0.981575, 0.783156, 0.515076, 0.52798, 0.325697, 0.734427, 0.858838, 0.750756, 0.77533, 0.835655, 0.0591921, 0.734253, 0.941809, 0.831376, 0.463972, 0.530686, 0.353341, 0.483996, 0.602564, 0.222382, 0.97027, 0.898463, 0.364311, 0.851978, 0.141098, 0.327123, 0.617082, 0.644931, 0.86876, 0.736332, 0.565139, 0.811522, 0.398173, 0.841776, 0.858903, 0.83216, 0.831254, 0.801072, 0.100523, 0.569488, 0.369805, 0.712837, 0.765152, 0.154792, 0.953785, 0.199436, 0.298907, 0.817079, 0.0777453, 0.306883, 0.79892, 0.298705, 0.335315, 0.459788, 0.18998, 0.347822, 0.496791, 0.782749, 0.579375, 0.629859, 0.760899, 0.24263, 0.903779, 0.641997, 0.767871, 0.486727, 0.380535, 0.823305, 0.546105, 0.210259, 0.350411, 0.319371, 0.703495, 0.0388703, 0.888008, 0.223666, 0.264767, 0.487172, 0.0499301, 0.639737, 0.815608, 0.580698, 0.967961, 0.745559, 0.541315, 0.765711, 0.376151, 0.385906, 0.685164, 0.755746, 0.3303, 0.508632, 0.362014, 0.127399, 0.914393, 0.761036, 0.0528031, 0.670941, 0.384801, 0.44075, 0.754592, 0.9947, 0.608693, 0.161242, 0.754208, 0.474214, 0.345606, 0.771122, 0.531007, 0.149091, 0.0657207, 0.326845, 0.439334, 0.784645, 0.720818, 0.258805, 0.343428, 0.637885, 0.0827685, 0.39513, 0.925853, 0.0312068, 0.163843, 0.983136, 0.551929, 0.184303, 0.69171, 0.288535, 0.880705, 0.685089, 0.46196, 0.240781, 0.234958, 0.753081, 0.985398, 0.915627, 0.283294, 0.793807, 0.289058, 0.209614, 0.416559, 0.959514, 0.903148, 0.305969, 0.955588, 0.259555, 0.224086, 0.156081, 0.534712, 0.604497, 0.610424, 0.332198, 0.257572, 0.12916, 0.0687468, 0.831499, 0.62096, 0.572576, 0.716722, 0.767641, 0.534015, 0.0135136, 0.91111, 0.460403, 0.548833, 0.669269, 0.783693, 0.518675, 0.377206, 0.884586, 0.810017, 0.912431, 0.192926, 0.863331, 0.56807, 0.614778, 0.880361, 0.261284, 0.288423, 0.126633, 0.29487, 0.694761, 0.779481, 0.716876, 0.378049, 0.657953, 0.204218, 0.496597, 0.994978, 0.542497, 0.079833, 0.849108, 0.448209, 0.667724, 0.618385, 0.740615, 0.550231, 0.109703, 0.446934, 0.580084, 0.0957419, 0.599407, 0.612611, 0.603736, 0.333509, 0.168628, 0.337423, 0.7554, 0.839855, 0.440986, 0.0899992, 0.307834, 0.546041, 0.855516, 0.656322, 0.7718, 0.694913, 0.0648656, 0.491048, 0.7489, 0.12655, 0.545464, 0.018184, 0.812458, 0.866595, 0.103517, 0.636715, 0.671445, 0.713342, 0.371498, 0.800884, 0.877138, 0.475207, 0.0848736, 0.648431, 0.536069, 0.652911, 0.284277, 0.803859, 0.0484337, 0.50652, 0.0398949, 0.479366, 0.120236, 0.32288, 0.749295, 0.580263, 0.767637, 0.672611, 0.393901, 0.777995, 0.889774, 0.624877, 0.756535, 0.00571682, 0.513941, 0.548558, 0.72907, 0.231662, 0.844679, 0.591023, 0.839903, 0.481472, 0.676318, 0.198008, 0.75681, 0.645876, 0.562686, 0.079962, 0.169139, 0.286892, 0.100562, 0.429251, 0.253854, 0.350135, 0.39899, 0.686675, 0.322439, 0.526083, 0.794266, 0.934693, 0.478445, 0.101997, 0.851451, 0.829357, 0.243839, 0.390292, 0.388305, 0.552538, 0.370908, 0.578443, 0.198918, 0.504473, 0.183195, 0.754082, 0.378272, 0.722134, 0.761737, 0.523804, 0.231593, 0.568605, 0.287656, 0.742644, 0.755678, 0.645733, 0.58888, 0.535038, 0.105255, 0.922569, 0.950013, 0.780757, 0.382734, 0.352771, 0.85794, 0.133944, 0.560458, 0.631823, 0.44393, 0.291665, 0.496848, 0.845192, 0.710818, 0.058463, 0.474545, 0.712372, 0.0456705, 0.606829, 0.669204, 0.353969, 0.620841, 0.728018, 0.219443, 0.235813, 0.254554, 0.314446, 0.59158, 0.746337, 0.254853, 0.45596, 0.481081, 0.633749, 0.73213, 0.623932, 0.946175, 0.828381, 0.949588, 0.581629, 0.337972, 0.06381, 0.194401, 0.0309433, 0.960873, 0.631665, 0.0771852, 0.158121, 0.731532, 0.34285, 0.594808, 0.280501, 0.881476, 0.224315, 0.706794, 0.742863, 0.105461, 0.676151, 0.337508, 0.207194, 0.600399, 0.136105, 0.926055, 0.165974, 0.140703, 0.800153, 0.323374, 0.0896541, 0.654905, 0.072488, 0.607162, 0.0506916, 0.697011, 0.473891, 0.880713, 0.110731, 0.0598434, 0.83014, 0.225518, 0.145203, 0.768439, 0.026211, 0.419088, 0.802136, 0.942558, 0.210761, 0.831386, 0.650558, 0.0736329, 0.127142, 0.463057, 0.292362, 0.0285124, 0.283766, 0.435857, 0.726721, 0.0779182, 0.498829, 0.559289, 0.199677, 0.513753, 0.139156, 0.425093, 0.160535, 0.817125, 0.123229, 0.847384, 0.828925, 0.0110141, 0.622069, 0.2447, 0.284562, 0.389288, 0.809355, 0.574809, 0.670684, 0.457213, 0.149171, 0.448983, 0.789663, 0.0770385, 0.331893, 0.835118, 0.874993, 0.537364, 0.90296, 0.194646, 0.554327, 0.413262, 0.686287, 0.0460736, 0.657312, 0.667965, 0.986008, 0.372767, 0.660598, 0.781281, 0.768111, 0.146487, 0.970999, 0.123628, 0.239487, 0.434452, 0.9391, 0.838563, 0.702661, 0.824352, 0.341867, 0.403821, 0.724461, 0.980311, 0.188418, 0.0484973, 0.605844, 0.87872, 0.868193, 0.202999, 0.694913, 0.275642, 0.250358, 0.740812, 0.841174, 0.988914, 0.981867, 0.00333478, 0.614899, 0.184444, 0.328618, 0.963147, 0.493104, 0.593076, 0.114963, 0.373047, 0.313624, 0.807956, 0.0866033, 0.800743, 0.71014, 0.937928, 0.329274, 0.292652, 0.341297, 0.416849, 0.287444, 0.727679, 0.724495, 0.0434232, 0.239289, 0.522142, 0.29313, 0.275679, 0.570131, 0.773577, 0.821627, 0.822114, 0.244051, 0.960265, 0.82899, 0.894021, 0.569527, 0.416546, 0.183194, 0.15653, 0.227623, 0.28034, 0.203311, 0.437247, 0.911898, 0.119247, 0.719101, 0.280853, 0.937291, 0.50856, 0.424669, 0.433576, 0.994411, 0.546783, 0.397445, 0.881072, 0.504712, 0.297616, 0.406185, 0.210026, 0.621007, 0.356914, 0.642402, 0.126357, 0.815523, 0.309994, 0.237093, 0.622791, 0.26855, 0.126356, 0.17314, 0.290044, 0.17338, 0.302987, 0.0448135, 0.67497, 0.469662, 0.914101, 0.142401, 0.897664, 0.472217, 0.495884, 0.549, 0.132171, 0.248441, 0.510462, 0.389556, 0.2354, 0.629603, 0.872555, 0.0493606, 0.0725572, 0.376942, 0.751133, 0.618445, 0.712209, 0.347773, 0.483322, 0.584708, 0.0706037, 0.0963956, 0.179324, 0.783534, 0.757523, 0.554968, 0.414064, 0.382571, 0.12167, 0.409857, 0.126992, 0.0497454, 0.537536, 0.044531, 0.445929, 0.341687, 0.669602, 0.0432625, 0.761958, 0.331426, 0.324327, 0.251563, 0.0129412, 0.360202, 0.130586, 0.940089, 0.695765, 0.286493, 0.605139, 0.384726, 0.890997, 0.646292, 0.845314, 0.770079, 0.782947, 0.901444, 0.95964, 0.586765, 0.594756, 0.147127, 0.496968, 0.957409, 0.723964, 0.663662, 0.31232, 0.866906, 0.333128, 0.489326, 0.331988, 0.617437, 0.0578985, 0.592175, 0.275489, 0.892077, 0.564233, 0.279844, 0.0438687, 0.739232, 0.768333, 0.2198, 0.991895, 0.819663, 0.506983, 0.111369, 0.867805, 0.978645, 0.717804, 0.690495, 0.330825, 0.806611, 0.716774, 0.905406, 0.229175, 0.424245, 0.931656, 0.554977, 0.408551, 0.762738, 0.435672, 0.865603, 0.791919, 0.0992489, 0.159783, 0.497971, 0.451001, 0.26398, 0.914848, 0.294899, 0.611104, 0.813629, 0.159112, 0.289609, 0.189781, 0.100203, 0.00218531, 0.619137, 0.556688, 0.617244, 0.199415, 0.840917, 0.112093, 0.0597368, 0.590946, 0.167967, 0.0545969, 0.673482, 0.139997, 0.98981, 0.877854, 0.45269, 0.983928, 0.314507, 0.621934, 0.80674, 0.701665, 0.848201, 0.500142, 0.681047, 0.216517, 0.68729, 0.854486, 0.788196, 0.274461, 0.786415, 0.431206, 0.372595, 0.510444, 0.593515, 0.718559, 0.885887, 0.866836, 0.0371313, 0.810007, 0.871523, 0.698879, 0.371323, 0.191039, 0.537038, 0.960647, 0.254478, 0.897432, 0.694227, 0.167212, 0.113439, 0.664799, 0.763649, 0.546014, 0.830362, 0.612029, 0.506648, 0.841873, 0.861451, 0.428097, 0.890039, 0.516876, 0.491963, 0.93884, 0.378404, 0.884525, 0.323906, 0.828282, 0.102281, 0.585777, 0.027535, 0.891171, 0.501899, 0.288433, 0.454675, 0.582245, 0.735327, 0.0265284, 0.384378, 0.924647, 0.130409, 0.0828567, 0.00890599, 0.678779, 0.615555, 0.069379, 0.157736, 0.192191, 0.286016, 0.0344896, 0.836338, 0.920767, 0.428389, 0.716931, 0.124982, 0.905061, 0.213815, 0.283816, 0.967598, 0.763338, 0.766874, 0.522257, 0.91158, 0.540527, 0.0323609, 0.811738, 0.893974, 0.0661371, 0.680707, 0.910926, 0.0449852, 0.801076, 0.286747, 0.965164, 0.309269, 0.724278, 0.874435, 0.845933, 0.289633, 0.1259, 0.265294, 0.466266, 0.144441, 0.701114, 0.484066, 0.118355, 0.0350617, 0.377718, 0.430922, 0.990826, 0.826193, 0.545904, 0.345839, 0.0789937, 0.281095, 0.748537, 0.532293, 0.123628, 0.830699, 0.222947, 0.928491, 0.405731, 0.709187, 0.581953, 0.0634311, 0.280612, 0.0257072, 0.460992, 0.0175489, 0.184961, 0.480011, 0.184844, 0.272508, 0.208068, 0.240318, 0.480907, 0.397661, 0.197304, 0.514379, 0.682133, 0.835306, 0.133983, 0.240427, 0.776184, 0.715199, 0.515536, 0.757504, 0.105235, 0.408316, 0.98075, 0.494859, 0.189793, 0.840125, 0.186288, 0.273149, 0.697799, 0.440657, 0.755024, 0.29632, 0.0655284, 0.182251, 0.423769, 0.136593, 0.156609, 0.0729708, 0.501816, 0.93482, 0.525891, 0.213114, 0.547868, 0.668326, 0.504127, 0.605789, 0.87385, 0.287723, 0.141654, 0.154971, 0.603998, 0.958831, 0.616316, 0.696878, 0.16593, 0.884261, 0.652659, 0.619816, 0.78266, 0.969088, 0.262262, 0.99525, 0.894344, 0.329002, 0.486264, 0.491973, 0.245971, 0.338964, 0.487509, 0.637083, 0.556442, 0.369561, 0.7682, 0.741506, 0.0148511, 0.110189, 0.660813, 0.896278, 0.0660888, 0.365283, 0.384459, 0.626001, 0.105742, 0.335175, 0.122741, 0.937633, 0.841694, 0.184531, 0.341765, 0.987346, 0.066847, 0.953777, 0.339168, 0.381597, 0.105309, 0.0876349, 0.105715, 0.704842, 0.55161, 0.559171, 0.687293, 0.658392, 0.999134, 0.106751, 0.712417, 0.77874, 0.256541, 0.594729, 0.251902, 0.147832, 0.788117, 0.890049, 0.864009, 0.0474648, 0.393876, 0.52962, 0.532864, 0.3692, 0.0773447, 0.806042, 0.275049, 0.606734, 0.340569, 0.862035, 0.907584, 0.162131, 0.233687, 0.562201, 0.981415, 0.928342, 0.122804, 0.823976, 0.184586, 0.156561, 0.292509, 0.975062, 0.833452, 0.142523, 0.166308, 0.200379, 0.548413, 0.469655, 0.607216, 0.0779073, 0.317011, 0.860167, 0.650872, 0.362243, 0.536813, 0.424811, 0.267452, 0.34468, 0.0123388, 0.903273, 0.961784, 0.83874, 0.638318, 0.492336, 0.0909165, 0.359403, 0.963458, 0.0616303, 0.565071, 0.35294, 0.086659, 0.692219, 0.13438, 0.42499, 0.369364, 0.69069, 0.644828, 0.477503, 0.299398, 0.541722, 0.69283, 0.632501, 0.00306792, 0.0483982, 0.882961, 0.51907, 0.141715, 0.459418, 0.191355, 0.971781, 0.141313, 0.257873, 0.9303, 0.630052, 0.605048, 0.819116, 0.581039, 0.28248, 0.643367, 0.730733, 0.326217, 0.739549, 0.348881, 0.437051, 0.848351, 0.199802, 0.443829, 0.555329, 0.599613, 0.0723815, 0.782875, 0.441, 0.859947, 0.0311278, 0.511227, 0.778796, 0.901747, 0.759793, 0.550004, 0.201596, 0.662721, 0.955202, 0.404327, 0.679435, 0.197671, 0.685506, 0.769799, 0.475121, 0.605155, 0.702198, 0.441649, 0.198031, 0.808838, 0.5642, 0.0110931, 0.301183, 0.174863, 0.155583, 0.0786712, 0.62277, 0.85596, 0.0640452, 0.597892, 0.6303, 0.583965, 0.170196, 0.490898, 0.111661, 0.377785, 0.148729, 0.0764751, 0.510136, 0.577573, 0.35216, 0.457893, 0.131651, 0.0674973, 0.400704, 0.26385, 0.28382, 0.488834, 0.982769, 0.977161, 0.486142, 0.426614, 0.756323, 0.687557, 0.280973, 0.777007, 0.0214047, 0.532722, 0.814832, 0.844896, 0.810531, 0.15238, 0.481408, 0.252198, 0.641424, 0.490777, 0.45379, 0.407933, 0.556685, 0.392659, 0.344904, 0.892815, 0.442315, 0.457526, 0.283864, 0.573172, 0.252106, 0.889373, 0.0959851, 0.485266, 0.56632, 0.755285, 0.116206, 0.0879613, 0.88384, 0.208538, 0.586969, 0.544328, 0.434613, 0.888554, 0.311024, 0.863446, 0.188419, 0.609841, 0.0758603, 0.0637179, 0.308095, 0.801903, 0.450507, 0.467786, 0.0278549, 0.66171, 0.446835, 0.25888, 0.668963, 0.0646442, 0.179912, 0.437277, 0.90624, 0.948291, 0.104249, 0.874975, 0.380445, 0.49662, 0.00583912, 0.63552, 0.0421233, 0.233686, 0.882509, 0.617947, 0.0601858, 0.813047, 0.215782, 0.596862, 0.957235, 0.535076, 0.0786324, 0.255989, 0.926716, 0.682072, 0.0922327, 0.290346, 0.549256, 0.405545, 0.309677, 0.628118, 0.604299, 0.38654, 0.256896, 0.825052, 0.72912, 0.45662, 0.324713, 0.362083, 0.567061, 0.79357, 0.69459, 0.0113587, 0.94402, 0.290002, 0.729962, 0.197591, 0.674741, 0.497621, 0.773008, 0.502734, 0.571341, 0.838387, 0.324542, 0.963401, 0.741953, 0.958939, 0.10931, 0.139844, 0.993872, 0.565773, 0.679312, 0.0471499, 0.204902, 0.947279, 0.208953, 0.251513, 0.63701, 0.0478966, 0.650567, 0.261162, 0.391348, 0.030731, 0.71075, 0.656933, 0.952349, 0.591575, 0.017522, 0.728526, 0.264305, 0.337627, 0.149399, 0.872799, 0.779262, 0.297888, 0.337437, 0.588511, 0.376096, 0.309665, 0.979529, 0.85919, 0.638385, 0.343725, 0.632841, 0.125036, 0.740403, 0.72003, 0.214014, 0.370201, 0.555011, 0.17778, 0.601526, 0.734616, 0.439846, 0.132179, 0.095331, 0.523829, 0.0351053, 0.0512562, 0.296228, 0.981164, 0.0543974, 0.34006, 0.210961, 0.0556726, 0.962318, 0.0939309, 0.516581, 0.628765, 0.602055, 0.684933, 0.21763, 0.142926, 0.0353188, 0.306516, 0.458799, 0.413334, 0.0436211, 0.57727, 0.953413, 0.161229, 0.8501, 0.0916226, 0.269427, 0.91748, 0.574193, 0.899598, 0.319444, 0.233433, 0.648605, 0.690887, 0.983802, 0.0207619, 0.298203, 0.848647, 0.0157108, 0.878187, 0.772797, 0.160191, 0.798175, 0.0680941, 0.304792, 0.0833616, 0.714442, 0.627836, 0.0309248, 0.759876, 0.0660692, 0.622789, 0.602247, 0.822516, 0.286038, 0.0927557, 0.422667, 0.546066, 0.0457439, 0.204376, 0.512364, 0.4758, 0.206259, 0.161087, 0.545031, 0.0515958, 0.450428, 0.75845, 0.0201123, 0.181248, 0.844833, 0.21848, 0.483734, 0.812416, 0.981927, 0.0559635, 0.115077, 0.897971, 0.523059, 0.703528, 0.767036, 0.554893, 0.488185, 0.535006, 0.797307, 0.638141, 0.523118, 0.176801, 0.216229, 0.505141, 0.382202, 0.822446, 0.238033, 0.000277854, 0.264681, 0.738855, 0.297957, 0.326263, 0.426843, 0.921162, 0.900661, 0.888326, 0.824683, 0.877769, 0.0626536, 0.801865, 0.084674, 0.751356, 0.232566, 0.0636655, 0.365036, 0.978918, 0.998175, 0.595347, 0.872441, 0.843013, 0.550284, 0.112336, 0.0195829, 0.749011, 0.990358, 0.305964, 0.366854, 0.444114, 0.111154, 0.807868, 0.52786, 0.525456, 0.553126, 0.485843, 0.466757, 0.193964, 0.122533, 0.306315, 0.203339, 0.529981, 0.136092, 0.810034, 0.438329, 0.348119, 0.32752, 0.765696, 0.659981, 0.299019, 0.20003, 0.22669, 0.832525, 0.538563, 0.563979, 0.48955, 0.149843, 0.719718, 0.62427, 0.264455, 0.481612, 0.106369, 0.745398, 0.968375, 0.495988, 0.400647, 0.770756, 0.322593, 0.326873, 0.25276, 0.417912, 0.76998, 0.638416, 0.665478, 0.962782, 0.961164, 0.839027, 0.219606, 0.684202, 0.962211, 0.0565806, 0.665497, 0.126568, 0.821387, 0.426374, 0.888736, 0.280979, 0.40441, 0.449909, 0.685115, 0.764469, 0.687274, 0.781109, 0.393814, 0.0475992, 0.165983, 0.724644, 0.460645, 0.200301, 0.916552, 0.212703, 0.547837, 0.00781687, 0.0249964, 0.207673, 0.477714, 0.567627, 0.899241, 0.153251, 0.955403, 0.970569, 0.997858, 0.752693, 0.392974, 0.842982, 0.306313, 0.0425919, 0.510512, 0.251106, 0.472173, 0.1914, 0.930749, 0.775218, 0.691618, 0.963536, 0.298038, 0.982468, 0.650224, 0.36777, 0.976604, 0.298366, 0.415434, 0.0719724, 0.9851, 0.446777, 0.502681, 0.535599, 0.0658757, 0.677791, 0.997595, 0.83343, 0.785185, 0.228516, 0.690948, 0.121957, 0.581649, 0.593838, 0.306382, 0.133295, 0.452292, 0.522665, 0.756939, 0.315004, 0.182419, 0.654039, 0.275704, 0.977242, 0.501399, 0.489595, 0.833172, 0.704274, 0.980769, 0.638236, 0.478103, 0.537539, 0.737008, 0.572928, 0.19145, 0.658329, 0.156334, 0.944287, 0.679241, 0.404867, 0.766855, 0.521703, 0.166728, 0.914696, 0.866328, 0.48321, 0.512178, 0.257116, 0.713401, 0.507879, 0.0522681, 0.694809, 0.119729, 0.215353, 0.848758, 0.267479, 0.280395, 0.321514, 0.905568, 0.294922, 0.133331, 0.733498, 0.386997, 0.172241, 0.832129, 0.313627, 0.807737, 0.732755, 0.214301, 0.963792, 0.874799, 0.222574, 0.210106, 0.511397, 0.570735, 0.957265, 0.869915, 0.606136, 0.0732058, 0.234833, 0.850227, 0.249415, 0.652435, 0.387416, 0.878995, 0.232929, 0.831395, 0.212343, 0.430933, 0.580873, 0.783224, 0.310255, 0.809713, 0.260027, 0.0845431, 0.165741, 0.278104, 0.711014, 0.800481, 0.878116, 0.243189, 0.352771, 0.0612841, 0.413917, 0.467947, 0.442886, 0.0588046, 0.0964151, 0.358584, 0.627281, 0.257136, 0.134019, 0.243915, 0.613396, 0.475635, 0.581989, 0.528766, 0.396408, 0.547891, 0.815438, 0.982647, 0.645256, 0.266519, 0.96154, 0.463393, 0.728307, 0.731172, 0.556617, 0.19503, 0.341295, 0.455572, 0.740281, 0.185829, 0.925094, 0.362876, 0.114177, 0.782391, 0.37643, 0.798906, 0.953667, 0.762082, 0.014657, 0.122138, 0.127993, 0.320434, 0.241728, 0.35324, 0.772408, 0.333324, 0.178056, 0.281275, 0.281805, 0.68461, 0.292989, 0.873566, 0.535667, 0.341327, 0.761019, 0.959403, 0.4896, 0.609321, 0.248797, 0.185441, 0.0270256, 0.170015, 0.75439, 0.288386, 0.564582, 0.0222456, 0.463749, 0.206792, 0.962644, 0.643758, 0.587204, 0.0469728, 0.699921, 0.222869, 0.29055, 0.15115, 0.626993, 0.960964, 0.469697, 0.573563, 0.650817, 0.119187, 0.399504, 0.514426, 0.739538, 0.30274, 0.579294, 0.620414, 0.809761, 0.355991, 0.785923, 0.00897206, 0.656859, 0.0617263, 0.115124, 0.523844, 0.680298, 0.582897, 0.906579, 0.685952, 0.681651, 0.165907, 0.547198, 0.562837, 0.930629, 0.0213666, 0.328399, 0.704386, 0.796115, 0.068072, 0.956054, 0.374939, 0.726748, 0.620003, 0.0746187, 0.839367, 0.0709211, 0.302125, 0.139077, 0.966599, 0.214637, 0.100745, 0.0111777, 0.364859, 0.784851, 0.490575, 0.830201, 0.353925, 0.52514, 0.184955, 0.725045, 0.692005, 0.751114, 0.91373, 0.00291698, 0.183436, 0.942894, 0.667646, 0.227563, 0.446547, 0.092398, 0.403965, 0.181365, 0.224128, 0.456113, 0.93516, 0.286571, 0.448873, 0.254616, 0.0234942, 0.381599, 0.167409, 0.531255, 0.43117, 0.947885, 0.689665, 0.358446, 0.99491, 0.1528, 0.820309, 0.322453, 0.845845, 0.702546, 0.389202, 0.69712, 0.858937, 0.923114, 0.394433, 0.144911, 0.855152, 0.665982, 0.640551, 0.139194, 0.195617, 0.144379, 0.791576, 0.565324, 0.544417, 0.336372, 0.384354, 0.41409, 0.50561, 0.176046, 0.929189, 0.242993, 0.611226, 0.220806, 0.182804, 0.567333, 0.897341, 0.166296, 0.568052, 0.868234, 0.993518, 0.531125, 0.974952, 0.34009, 0.00118497, 0.721142, 0.909258, 0.583536, 0.570128, 0.250796, 0.589652, 0.9133, 0.95001, 0.227505, 0.984849, 0.315529, 0.767328, 0.398994, 0.12537, 0.0418404, 0.530614, 0.716528, 0.398305, 0.701367, 0.44568, 0.276829, 0.645333, 0.835415, 0.0465233, 0.224956, 0.667437, 0.152279, 0.492711, 0.731436, 0.231145, 0.16636, 0.252344, 0.641588, 0.924098, 0.780297, 0.447466, 0.270129, 0.519677, 0.711927, 0.666198, 0.528732, 0.397797, 0.94731, 0.47105, 0.169681, 0.0689022, 0.909454, 0.48887, 0.338298, 0.864493, 0.727502, 0.989843, 0.00595985, 0.954904, 0.428008, 0.331139, 0.235197, 0.893303, 0.445351, 0.830387, 0.254327, 0.968733, 0.649004, 0.693966, 0.585433, 0.889678, 0.320023, 0.777071, 0.858482, 0.986065, 0.318021, 0.841677, 0.509663, 0.495693, 0.600332, 0.906159, 0.349668, 0.696006, 0.995319, 0.684848, 0.771808, 0.175734, 0.0168563, 0.963885, 0.256553, 0.360876, 0.759457, 0.401408, 0.981954, 0.626502, 0.563023, 0.659433, 0.910864, 0.558888, 0.507613, 0.510995, 0.727248, 0.68819, 0.193195, 0.303283, 0.502424, 0.885505, 0.735989, 0.652483, 0.230644, 0.850919, 0.131194, 0.0236364, 0.335627, 0.7323, 0.298706, 0.780775, 0.694135, 0.273734, 0.331162, 0.132365, 0.976536, 0.802124, 0.232805, 0.730333, 0.176602, 0.51351, 0.851469, 0.880454, 0.490637, 0.445693, 0.331288, 0.551407, 0.781109, 0.0924386, 0.976995, 0.133824, 0.779658, 0.277526, 0.285495, 0.716245, 0.64469, 0.446768, 0.94155, 0.0654177, 0.245474, 0.471065, 0.796581, 0.239434, 0.905379, 0.0354931, 0.155393, 0.997709, 0.346793, 0.171411, 0.801898, 0.533516, 0.187127, 0.926988, 0.656354, 0.629434, 0.495656, 0.226093, 0.858517, 0.68242, 0.70426, 0.939288, 0.526619, 0.526184, 0.266593, 0.686914, 0.00155542, 0.927718, 0.04613, 0.95066, 0.763412, 0.0642208, 0.0229945, 0.619014, 0.612731, 0.480407, 0.823741, 0.444178, 0.233648, 0.351313, 0.18131, 0.261641, 0.378168, 0.781103, 0.77266, 0.335612, 0.721479, 0.586627, 0.918034, 0.667742, 0.911525, 0.834869, 0.979858, 0.105877, 0.68092, 0.291748, 0.717349, 0.0445674, 0.0143131, 0.0117362, 0.281285, 0.46247, 0.495847, 0.735287, 0.088833, 0.479189, 0.542617, 0.292785, 0.659989, 0.336397, 0.632401, 0.420709, 0.00250625, 0.709559, 0.110518, 0.351807, 0.185619, 0.655246, 0.298226, 0.238629, 0.0408697, 0.960399, 0.867659, 0.254167, 0.175976, 0.181935, 0.476168, 0.666971, 0.181789, 0.18922, 0.293109, 0.40944, 0.587306, 0.047309, 0.383197, 0.11214, 0.492445, 0.303954, 0.896018, 0.920548, 0.186454, 0.956295, 0.174857, 0.259837, 0.213495, 0.330886, 0.322003, 0.62633, 0.471895, 0.984244, 0.72708, 0.532441, 0.199213, 0.0806102, 0.365985, 0.889816, 0.327471, 0.791387, 0.031357, 0.111667, 0.642776, 0.808755, 0.263011, 0.729673, 0.281746, 0.418753, 0.0178116, 0.221522, 0.981707, 0.993976, 0.291144, 0.5504, 0.437406, 0.839687, 0.248528, 0.434314, 0.886793, 0.301432, 0.699775, 0.539329, 0.88398, 0.928958, 0.576982, 0.682972, 0.0963353, 0.459443, 0.314181, 0.723099, 0.674171, 0.771388, 0.376967, 0.699611, 0.640212, 0.457369, 0.0925651, 0.563241, 0.3704, 0.593069, 0.401959, 0.0378746, 0.816992, 0.854208, 0.494584, 0.516438, 0.752953, 0.291509, 0.556481, 0.113466, 0.406382, 0.870468, 0.308661, 0.508829, 0.0782531, 0.784794, 0.873834, 0.0796295, 0.332769, 0.618955, 0.317678, 0.517487, 0.969253, 0.808632, 0.51958, 0.0830913, 0.0379246, 0.239989, 0.688237, 0.287361, 0.627135, 0.194175, 0.925559, 0.200431, 0.20995, 0.142007, 0.816057, 0.450422, 0.152835, 0.86489, 0.541712, 0.148234, 0.998775, 0.823314, 0.499182, 0.440296, 0.331616, 0.426489, 0.696471, 0.268979, 0.334777, 0.975781, 0.389977, 0.663315, 0.276437, 0.27795, 0.642763, 0.790189, 0.0402131, 0.0615905, 0.791676, 0.707201, 0.311094, 0.863777, 0.353634, 0.267153, 0.785566, 0.195712, 0.969889, 0.785286, 0.795823, 0.868895, 0.300683, 0.0619177, 0.649635, 0.408871, 0.508251, 0.47058, 0.817351, 0.281847, 0.590995, 0.700125, 0.507325, 0.940381, 0.213701, 0.589021, 0.791475, 0.202392, 0.0609428, 0.613555, 0.180216, 0.196492, 0.678086, 0.193892, 0.973438, 0.702902, 0.0149802, 0.956909, 0.694691, 0.690709, 0.606087, 0.235772, 0.837038, 0.018357, 0.453154, 0.685738, 0.252985, 0.167596, 0.957168, 0.162042, 0.701536, 0.258119, 0.243023, 0.287879, 0.915982, 0.297634, 0.740599, 0.613924, 0.0530076, 0.0705584, 0.311554, 0.781782, 0.0491582, 0.361963, 0.963385, 0.94931, 0.522734, 0.508282, 0.574593, 0.733251, 0.305097, 0.951962, 0.90494, 0.271572, 0.41666, 0.735302, 0.470283, 0.474879, 0.888888, 0.500184, 0.83993, 0.101616, 0.353366, 0.336758, 0.220401, 0.267699, 0.731965, 0.701568, 0.134716, 0.843125, 0.583155, 0.92675, 0.662535, 0.937861, 0.963641, 0.43113, 0.179293, 0.271057, 0.989385, 0.102155, 0.909557, 0.393676, 0.0970826, 0.369484, 0.28362, 0.89565, 0.365745, 0.786246, 0.912654, 0.847388, 0.310394, 0.965121, 0.765785, 0.122156, 0.0317397, 0.521194, 0.685856, 0.649231, 0.187277, 0.696647, 0.290668, 0.599364, 0.619346, 0.0922423, 0.74544, 0.829272, 0.998726, 0.507624, 0.179443, 0.466956, 0.0595983, 0.211277, 0.897726, 0.64407, 0.459841, 0.352153, 0.357459, 0.317043, 0.922847, 0.788995, 0.192469, 0.790991, 0.981335, 0.483017, 0.131913, 0.610957, 0.275227, 0.2941, 0.158151, 0.481018, 0.64167, 0.631444, 0.628155, 0.525741, 0.851589, 0.83897, 0.969717, 0.800086, 0.315871, 0.341646, 0.906146, 0.252658, 0.482959, 0.23568, 0.782886, 0.687143, 0.244124, 0.151301, 0.422368, 0.586512, 0.262556, 0.160689, 0.127373, 0.887785, 0.868947, 0.912987, 0.332867, 0.301728, 0.712994, 0.979397, 0.363192, 0.114619, 0.682255, 0.141706, 0.320313, 0.856347, 0.578575, 0.881893, 0.448112, 0.968206, 0.0184664, 0.944073, 0.0712266, 0.65535, 0.00525782, 0.968056, 0.956909, 0.406435, 0.937493, 0.207579, 0.559663, 0.4413, 0.533044, 0.375814, 0.809769, 0.830527, 0.136295, 0.648902, 0.252054, 0.628484, 0.908412, 0.883995, 0.0913548, 0.176676, 0.750068, 0.57081, 0.718888, 0.122341, 0.963544, 0.313369, 0.151373, 0.478553, 0.427352, 0.141612, 0.901883, 0.112199, 0.0637606, 0.8183, 0.692998, 0.169271, 0.526569, 0.75107, 0.579626, 0.985856, 0.360326, 0.397701, 0.610527, 0.522891, 0.504134, 0.601123, 0.180686, 0.895381, 0.0553699, 0.845222, 0.540461, 0.445749, 0.203239, 0.0839599, 0.574058, 0.208464, 0.159438, 0.510487, 0.53153, 0.965698, 0.432833, 0.960601, 0.0314765, 0.356788, 0.592935, 0.202284, 0.0420978, 0.769117, 0.351933, 0.305801, 0.951143, 0.720038, 0.979939, 0.13027, 0.127677, 0.15707, 0.666171, 0.282351, 0.408165, 0.101669, 0.37713, 0.289386, 0.825685, 0.772972, 0.287087, 0.483195, 0.518193, 0.857148, 0.231962, 0.342772, 0.514379, 0.205219, 0.673235, 0.129295, 0.344384, 0.380353, 0.128981, 0.415241, 0.221281, 0.552054, 0.0728381, 0.0211884, 0.889232, 0.820747, 0.364529, 0.881878, 0.775155, 0.471228, 0.783677, 0.687301, 0.0473796, 0.75559, 0.207462, 0.728033, 0.143192, 0.311165, 0.0687048, 0.0506925, 0.331048, 0.230187, 0.828601, 0.547144, 0.741586, 0.67625, 0.452529, 0.0214194, 0.237796, 0.668306, 0.337735, 0.246399, 0.83663, 0.815895, 0.328788, 0.846376, 0.326103, 0.300141, 0.703082, 0.161504, 0.270621, 0.358893, 0.092777, 0.634171, 0.747569, 0.880028, 0.421774, 0.83451, 0.0289538, 0.601804, 0.0682301, 0.838697, 0.421283, 0.0107802, 0.924154, 0.744722, 0.649421, 0.29553, 0.382578, 0.912939, 0.124705, 0.425581, 0.505076, 0.627919, 0.357637, 0.878916, 0.423384, 0.382756, 0.990056, 0.976844, 0.828146, 0.0293946, 0.650928, 0.00351939, 0.218963, 0.861339, 0.0983828, 0.419058, 0.265909, 0.905529, 0.26981, 0.282951, 0.879036, 0.911603, 0.904584, 0.258169, 0.999342, 0.967355, 0.302176, 0.712034, 0.0535345, 0.878392, 0.791693, 0.0788202, 0.124117, 0.946683, 0.228736, 0.814142, 0.222778, 0.400231, 0.233423, 0.193474, 0.344432, 0.114617, 0.491859, 0.778117, 0.160341, 0.512593, 0.199137, 0.406493, 0.093878, 0.531607, 0.57685, 0.0429921, 0.140615, 0.232808, 0.792075, 0.695901, 0.515208, 0.723303, 0.120167, 0.0848111, 0.0257059, 0.069167, 0.0962686, 0.815963, 0.623719, 0.322465, 0.0436557, 0.0457932, 0.880397, 0.248271, 0.799595, 0.942299, 0.327552, 0.546092, 0.845722, 0.249952, 0.165359, 0.818325, 0.31515, 0.324321, 0.599571, 0.569378, 0.185475, 0.946115, 0.752457, 0.209583, 0.680331, 0.149508, 0.727546, 0.883316, 0.169385, 0.461399, 0.423986, 0.483602, 0.587853, 0.38961, 0.742984, 0.573985, 0.643779, 0.918392, 0.0212002, 0.983966, 0.601392, 0.914242, 0.578249, 0.0785484, 0.284722, 0.612524, 0.305447, 0.879861, 0.571116, 0.340345, 0.77051, 0.196389, 0.523607, 0.19175, 0.947384, 0.196434, 0.452568, 0.156455, 0.691206, 0.724007, 0.329117, 0.503925, 0.129639, 0.598567, 0.646797, 0.318501, 0.969771, 0.290599, 0.451135, 0.582563, 0.366916, 0.433685, 0.675702, 0.702015, 0.148669, 0.485186, 0.99228, 0.314424, 0.0300252, 0.500173, 0.11492, 0.15507, 0.0347326, 0.406929, 0.127201, 0.506661, 0.254545, 0.248539, 0.0441037, 0.988872, 0.976104, 0.541646, 0.37743, 0.507879, 0.0503406, 0.939495, 0.885026, 0.409377, 0.0565382, 0.892767, 0.558826, 0.280748, 0.462651, 0.936694, 0.477156, 0.534092, 0.259836, 0.0493089, 0.14547, 0.572022, 0.615188, 0.441674, 0.783068, 0.6781, 0.230618, 0.647285, 0.59767, 0.0127817, 0.3306, 0.897164, 0.656878, 0.595638, 0.485695, 0.988592, 0.803959, 0.157477, 0.188967, 0.321743, 0.248873, 0.882845, 0.157493, 0.364844, 0.719777, 0.989941, 0.0849237, 0.805028, 0.200688, 0.221226, 0.763431, 0.833604, 0.580838, 0.279532, 0.427327, 0.488258, 0.516944, 0.897521, 0.086223, 0.834054, 0.885842, 0.854962, 0.309542, 0.674509, 0.343226, 0.988286, 0.471698, 0.0734752, 0.437736, 0.126389, 0.873189, 0.307488, 0.910877, 0.378279, 0.600488, 0.256123, 0.0336207, 0.795893, 0.566673, 0.248597, 0.502109, 0.361798, 0.257769, 0.534063, 0.249482, 0.129576, 0.788627, 0.011144, 0.46344, 0.932547, 0.660116, 0.050771, 0.272999, 0.851341, 0.458077, 0.261602, 0.144189, 0.549428, 0.452305, 0.334867, 0.471445, 0.521803, 0.35048, 0.681348, 0.597689, 0.265137, 0.012798, 0.552491, 0.748532, 0.954552, 0.951256, 0.450892, 0.264925, 0.467626, 0.718889, 0.436329, 0.269176, 0.00866137, 0.397007, 0.29693, 0.689002, 0.446116, 0.659732, 0.658286, 0.453444, 0.871203, 0.0085921, 0.104667, 0.253307, 0.513151, 0.839097, 0.269905, 0.846144, 0.682346, 0.345175, 0.257712, 0.920847, 0.015, 0.527813, 0.55833, 0.544131, 0.248702, 0.275199, 0.818973, 0.378529, 0.113632, 0.587611, 0.763347, 0.252203, 0.00116456, 0.725082, 0.646987, 0.207479, 0.648843, 0.957664, 0.750242, 0.0976647, 0.239976, 0.0863225, 0.672624, 0.57292, 0.700872, 0.0781549, 0.0614034, 0.693625, 0.213332, 0.211861, 0.149414, 0.163842, 0.429011, 0.599788, 0.603976, 0.952084, 0.214137, 0.522412, 0.0912155, 0.656561, 0.191533, 0.845911, 0.248849, 0.294503, 0.492611, 0.372581, 0.214887, 0.452217, 0.377597, 0.289727, 0.566185, 0.126835, 0.300616, 0.853052, 0.911649, 0.475767, 0.135621, 0.869745, 0.513815, 0.569568, 0.917429, 0.894771, 0.252062, 0.318876, 0.533912, 0.602982, 0.429067, 0.788358, 0.17136, 0.336137, 0.844681, 0.58513, 0.351575, 0.734729, 0.0366377, 0.475571, 0.371119, 0.277795, 0.461627, 0.873762, 0.263099, 0.447481, 0.312437, 0.0437438, 0.962217, 0.132691, 0.570783, 0.294223, 0.631041, 0.526803, 0.987261, 0.487454, 0.0726847, 0.543884, 0.0053687, 0.881964, 0.998775, 0.612637, 0.937348, 0.676706, 0.976233, 0.0637702, 0.847239, 0.136188, 0.0431565, 0.926459, 0.32152, 0.32446, 0.512036, 0.69745, 0.0294216, 0.0855434, 0.815068, 0.546145, 0.927886, 0.379195, 0.254471, 0.944315, 0.322588, 0.957175, 0.282346, 0.659034, 0.0201403, 0.0719348, 0.945103, 0.534361, 0.411844, 0.765219, 0.067882, 0.278189, 0.0868578, 0.163579, 0.665753, 0.113592, 0.112568, 0.10699, 0.0595734, 0.162962, 0.918671, 0.224692, 0.0819119, 0.454791, 0.569074, 0.571892, 0.647528, 0.34026, 0.193834, 0.121119, 0.220117, 0.846289, 0.264911, 0.0330401, 0.0684504, 0.904016, 0.69732, 0.724082, 0.869786, 0.152701, 0.106843, 0.648375, 0.534446, 0.318278, 0.213744, 0.693214, 0.0563572, 0.839421, 0.172291, 0.692026, 0.0745269, 0.886434, 0.243813, 0.0512777, 0.321178, 0.13266, 0.982236, 0.40121, 0.584256, 0.895731, 0.304286, 0.105001, 0.339316, 0.885125, 0.853868, 0.0440071, 0.819516, 0.48869, 0.628928, 0.33235, 0.307699, 0.58554, 0.0375623, 0.472584, 0.518456, 0.266189, 0.85068, 0.268341, 0.96792, 0.419352, 0.1173, 0.177419, 0.345789, 0.162403, 0.0234518, 0.869624, 0.71387, 0.0198971, 0.531024, 0.215712, 0.405516, 0.0474058, 0.420991, 0.944478, 0.738921, 0.14787, 0.54363, 0.446904, 0.163239, 0.456148, 0.844835, 0.145833, 0.625621, 0.971887, 0.727065, 0.328642, 0.320998, 0.0701854, 0.140327, 0.240073, 0.680661, 0.399884, 0.228593, 0.759478, 0.426611, 0.950217, 0.428955, 0.45019, 0.908847, 0.471782, 0.389483, 0.695342, 0.337059, 0.770883, 0.838181, 0.210233, 0.0595027, 0.904492, 0.00351462, 0.565647, 0.982774, 0.149771, 0.0637599, 0.405145, 0.445735, 0.816068, 0.538072, 0.430753, 0.348029, 0.831015, 0.0380645, 0.158113, 0.651193, 0.333812, 0.0819951, 0.962705, 0.745059, 0.914157, 0.0793309, 0.747745, 0.224942, 0.46577, 0.220276, 0.825112, 0.980792, 0.556163, 0.588705, 0.271999, 0.116405, 0.708346, 0.168837, 0.518623, 0.346737, 0.655913, 0.734508, 0.873901, 0.540134, 0.0243613, 0.395516, 0.189993, 0.853518, 0.493774, 0.142472, 0.531821, 0.443036, 0.274065, 0.322846, 0.0353078, 0.837069, 0.406647, 0.273343, 0.21152, 0.637631, 0.482531, 0.52177, 0.2741, 0.682133, 0.0352195, 0.430186, 0.8561, 0.663455, 0.211103, 0.854863, 0.468608, 0.356419, 0.509518, 0.62751, 0.793734, 0.526289, 0.547531, 0.335063, 0.625628, 0.367247, 0.329412, 0.884946, 0.220805, 0.149462, 0.236733, 0.437201, 0.581038, 0.807608, 0.707072, 0.67478, 0.974621, 0.753644, 0.124537, 0.942944, 0.515231, 0.601375, 0.927873, 0.794737, 0.355005, 0.677403, 0.108838, 0.275615, 0.131303, 0.689428, 0.777147, 0.327886, 0.975205, 0.257742, 0.97645, 0.682553, 0.122908, 0.331947, 0.42261, 0.338974, 0.0225699, 0.570415, 0.635975, 0.163886, 0.593781, 0.861384, 0.592634, 0.466178, 0.154522, 0.568408, 0.607836, 0.776125, 0.962187, 0.67819, 0.0891308, 0.150665, 0.166416, 0.729866, 0.328638, 0.520148, 0.375362, 0.443706, 0.647937, 0.310221, 0.965876, 0.469779, 0.823885, 0.274833, 0.316625, 0.226207, 0.536463, 0.847172, 0.683087, 0.151119, 0.542337, 0.197068, 0.832676, 0.0322242, 0.168607, 0.784136, 0.800374, 0.393773, 0.339262, 0.318185, 0.359085, 0.737433, 0.578348, 0.754185, 0.43222, 0.759138, 0.179196, 0.218247, 0.604319, 0.484122, 0.342351, 0.15649, 0.329544, 0.968702, 0.921633, 0.365857, 0.0214546, 0.934058, 0.282105, 0.82954, 0.246377, 0.222097, 0.341538, 0.58899, 0.309089, 0.157814, 0.112673, 0.746926, 0.611638, 0.206396, 0.479152, 0.492632, 0.562217, 0.651548, 0.497202, 0.969626, 0.508606, 0.580386, 0.387848, 0.85588, 0.021174, 0.114449, 0.343018, 0.523163, 0.724753, 0.716847, 0.598035, 0.87584, 0.83408, 0.538258, 0.255923, 0.324454, 0.655085, 0.57429, 0.550904, 0.68564, 0.650388, 0.284076, 0.741694, 0.582598, 0.31984, 0.317297, 0.282127, 0.253139, 0.0262349, 0.27491, 0.895392, 0.576654, 0.710636, 0.353244, 0.595169, 0.288046, 0.45929, 0.360504, 0.0847704, 0.661651, 0.360278, 0.565211, 0.340817, 0.423077, 0.182081, 0.420885, 0.823542, 0.884483, 0.678122, 0.850341, 0.115289, 0.403558, 0.748946, 0.723952, 0.00194501, 0.521547, 0.706713, 0.542025, 0.511056, 0.595664, 0.385158, 0.788109, 0.823781, 0.946641, 0.0869575, 0.885374, 0.0929692, 0.282388, 0.19181, 0.344959, 0.265325, 0.762568, 0.239918, 0.775536, 0.536382, 0.675624, 0.784612, 0.469719, 0.811278, 0.148115, 0.325118, 0.401762, 0.112758, 0.932467, 0.149154, 0.956423, 0.469938, 0.258067, 0.239403, 0.222177, 0.329883, 0.336914, 0.719498, 0.0763891, 0.0435183, 0.71227, 0.997935, 0.763495, 0.715784, 0.0608482, 0.155195, 0.834585, 0.869089, 0.999609, 0.789348, 0.384231, 0.890897, 0.380875, 0.594219, 0.815373, 0.673195, 0.619164, 0.407296, 0.227292, 0.518035, 0.155214, 0.480509, 0.835703, 0.251825, 0.720069, 0.612969, 0.830241, 0.547686, 0.0471758, 0.0784273, 0.416132, 0.540376, 0.217496, 0.313601, 0.625845, 0.0872483, 0.848773, 0.285885, 0.372968, 0.690592, 0.67525, 0.0975763, 0.22521, 0.419661, 0.484302, 0.279406, 0.189793, 0.99352, 0.489158, 0.737016, 0.561644, 0.0129174, 0.84917, 0.735305, 0.878209, 0.725973, 0.366662, 0.230208, 0.339701, 0.565154, 0.467896, 0.657671, 0.487067, 0.705041, 0.440978, 0.729998, 0.199224, 0.328137, 0.14812, 0.773305, 0.359092, 0.356545, 0.562114, 0.714331, 0.573768, 0.32319, 0.946686, 0.290456, 0.456035, 0.312373, 0.829563, 0.721841, 0.341316, 0.847362, 0.893612, 0.895206, 0.808026, 0.11987, 0.343496, 0.627386, 0.190805, 0.3352, 0.56177, 0.769637, 0.754866, 0.0338124, 0.816776, 0.676171, 0.0304451, 0.758759, 0.378565, 0.457934, 0.23191, 0.319193, 0.714472, 0.41122, 0.365741, 0.22797, 0.506934, 0.268159, 0.421016, 0.896935, 0.699606, 0.970328, 0.312996, 0.786921, 0.775494, 0.0332552, 0.667787, 0.966997, 0.933915, 0.169752, 0.188917, 0.96328, 0.624588, 0.0359824, 0.225685, 0.291476, 0.5152, 0.0620432, 0.00369823, 0.62943, 0.583583, 0.97948, 0.676751, 0.117789, 0.553108, 0.584581, 0.0896354, 0.656394, 0.126621, 0.624566, 0.45226, 0.360525, 0.66226, 0.457774, 0.766773, 0.117905, 0.68308, 0.21678, 0.122781, 0.707784, 0.530599, 0.122162, 0.65119, 0.823386, 0.940991, 0.207807, 0.329127, 0.860951, 0.551366, 0.830482, 0.615333, 0.160315, 0.85203, 0.748065, 0.894926, 0.430614, 0.00411698, 0.975764, 0.496664, 0.746566, 0.538874, 0.886717, 0.652903, 0.321574, 0.873388, 0.754763, 0.628639, 0.533674, 0.302541, 0.602323, 0.430416, 0.94908, 0.292064, 0.477345, 0.337788, 0.617156, 0.923061, 0.492171, 0.532951, 0.773264, 0.0554359, 0.232772, 0.217784, 0.0165228, 0.887589, 0.990668, 0.121263, 0.191839, 0.697681, 0.689844, 0.435574, 0.238431, 0.21188, 0.771684, 0.813501, 0.295074, 0.753822, 0.283023, 0.116061, 0.109815, 0.34854, 0.228258, 0.917577, 0.936318, 0.719136, 0.627008, 0.290248, 0.273571, 0.309747, 0.998204, 0.999586, 0.143504, 0.308188, 0.914165, 0.202398, 0.517918, 0.0418613, 0.00625668, 0.594584, 0.44866, 0.426179, 0.259366, 0.195162, 0.778245, 0.829782, 0.432879, 0.853082, 0.720255, 0.862675, 0.27348, 0.612262, 0.217127, 0.643844, 0.908318, 0.742459, 0.756025, 0.727934, 0.644897, 0.492537, 0.727896, 0.212918, 0.514331, 0.820046, 0.590255, 0.174711, 0.431646, 0.276477, 0.0405892, 0.715193, 0.449519, 0.906522, 0.621376, 0.0503141, 0.97553, 0.832326, 0.727575, 0.967561, 0.40575, 0.665467, 0.175575, 0.257853, 0.776247, 0.116415, 0.830292, 0.153735, 0.875794, 0.682263, 0.477441, 0.242043, 0.316703, 0.391689, 0.700265, 0.848909, 0.204354, 0.702249, 0.503154, 0.277355, 0.491703, 0.822928, 0.765257, 0.292318, 0.101989, 0.289665, 0.83507, 0.149712, 0.726482, 0.636965, 0.491852, 0.672152, 0.0257181, 0.277221, 0.0365796, 0.617739, 0.784594, 0.210728, 0.719884, 0.618546, 0.0621452, 0.671866, 0.325799, 0.0721333, 0.00566608, 0.451301, 0.909247, 0.422503, 0.957009, 0.991108, 0.0397077, 0.301983, 0.297236, 0.467481, 0.948317, 0.968396, 0.652605, 0.344135, 0.309752, 0.190503, 0.606621, 0.27058, 0.116304, 0.312, 0.0764449, 0.350404, 0.240971, 0.799348, 0.899711, 0.122545, 0.784379, 0.877913, 0.251779, 0.311578, 0.326848, 0.248869, 0.200661, 0.896651, 0.0230978, 0.403657, 0.972373, 0.76107, 0.360943, 0.873258, 0.75699, 0.98436, 0.975581, 0.339908, 0.0502815, 0.398836, 0.549227, 0.833793, 0.841285, 0.579242, 0.0494795, 0.0122801, 0.656708, 0.508653, 0.985266, 0.173516, 0.804665, 0.558906, 0.888237, 0.870707, 0.396705, 0.737786, 0.429249, 0.820259, 0.347267, 0.314842, 0.646713, 0.486638, 0.106182, 0.610525, 0.284259, 0.808261, 0.279249, 0.558611, 0.419055, 0.933694, 0.927874, 0.212084, 0.530335, 0.597555, 0.376588, 0.966603, 0.908474, 0.21774, 0.45999, 0.0880853, 0.257713, 0.420641, 0.523394, 0.963878, 0.317493, 0.390739, 0.999927, 0.261827, 0.915155, 0.147217, 0.226079, 0.210811, 0.924862, 0.719825, 0.63024, 0.556891, 0.286605, 0.932826, 0.203718, 0.69941, 0.244328, 0.163412, 0.882965, 0.782171, 0.560417, 0.985394, 0.572545, 0.0643758, 0.379096, 0.355619, 0.444694, 0.172803, 0.252421, 0.287592, 0.554304, 0.750925, 0.582436, 0.709757, 0.458762, 0.769239, 0.894216, 0.504458, 0.924531, 0.901206, 0.746323, 0.0365078, 0.533222, 0.619761, 0.699668, 0.76796, 0.652278, 0.345191, 0.445502, 0.78572, 0.637482, 0.642379, 0.902138, 0.356315, 0.0206236, 0.214261, 0.962538, 0.333282, 0.703234, 0.0400771, 0.593779, 0.0750121, 0.589034, 0.570307, 0.0122357, 0.231655, 0.559805, 0.823308, 0.963708, 0.754108, 0.734388, 0.101353, 0.303654, 0.964648, 0.532303, 0.685543, 0.977904, 0.281432, 0.580814, 0.315792, 0.730555, 0.391481, 0.771007, 0.809532, 0.243718, 0.514558, 0.653127, 0.240548, 0.922023, 0.762384, 0.798677, 0.0513616, 0.802956, 0.845462, 0.0811823, 0.192813, 0.582311, 0.226245, 0.480867, 0.373309, 0.668357, 0.554323, 0.221669, 0.293095, 0.170885, 0.369216, 0.861891, 0.0903646, 0.608813, 0.653833, 0.707802, 0.93812, 0.566926, 0.260698, 0.297984, 0.267603, 0.130237, 0.448459, 0.399144, 0.606496, 0.823424, 0.107738, 0.337029, 0.380577, 0.896837, 0.398403, 0.751783, 0.637511, 0.843949, 0.253551, 0.683301, 0.744298, 0.0966335, 0.704624, 0.317678, 0.839543, 0.877993, 0.422029, 0.492129, 0.164136, 0.71169, 0.853503, 0.874012, 0.911242, 0.463979, 0.57413, 0.238607, 0.0707812, 0.635761, 0.258682, 0.558912, 0.00813576, 0.909634, 0.902105, 0.487712, 0.131959, 0.922792, 0.415813, 0.480931, 0.211557, 0.265499, 0.740622, 0.721032, 0.882587, 0.4154, 0.871322, 0.529191, 0.94779, 0.837873, 0.633955, 0.361985, 0.300756, 0.295236, 0.97158, 0.0107261, 0.720439, 0.423649, 0.36981, 0.955399, 0.0836756, 0.758839, 0.735046, 0.52096, 0.0960638, 0.820243, 0.634862, 0.655774, 0.703882, 0.0539417, 0.590383, 0.0339599, 0.695313, 0.635042, 0.0430869, 0.128552, 0.72793, 0.422591, 0.629823, 0.575309, 0.686091, 0.204312, 0.771282, 0.202309, 0.972021, 0.943678, 0.521917, 0.916424, 0.782824, 0.2343, 0.740007, 0.866494, 0.335054, 0.471311, 0.453799, 0.567741, 0.335944, 0.577245, 0.81055, 0.0376232, 0.249293, 0.617434, 0.195287, 0.533622, 0.695026, 0.106478, 0.254421, 0.22592, 0.328622, 0.724656, 0.311924, 0.64578, 0.0845344, 0.0672177, 0.292095, 0.421916, 0.717418, 0.602544, 0.658155, 0.425879, 0.388379, 0.387705, 0.414084, 0.249436, 0.737999, 0.440861, 0.469498, 0.643737, 0.926567, 0.168103, 0.912737, 0.44983, 0.761354, 0.70971, 0.461735, 0.716239, 0.94361, 0.481279, 0.497743, 0.841223, 0.625982, 0.369029, 0.955912, 0.103134, 0.257649, 0.0677644, 0.551804, 0.287404, 0.535048, 0.94676, 0.940998, 0.731118, 0.487944, 0.429823, 0.519651, 0.507745, 0.726266, 0.673864, 0.328724, 0.76548, 0.867712, 0.767068, 0.222795, 0.0630727, 0.432802, 0.269174, 0.274281, 0.475448, 0.860368, 0.181595, 0.460972, 0.253384, 0.199747, 0.85067, 0.256039, 0.407108, 0.536273, 0.830839, 0.493328, 0.930773, 0.185389, 0.667034, 0.954132, 0.770057, 0.0570016, 0.357668, 0.51673, 0.248197, 0.448142, 0.209801, 0.466072, 0.449465, 0.857624, 0.341148, 0.996611, 0.932119, 0.807806, 0.608877, 0.0886362, 0.669081, 0.0425297, 0.379729, 0.431256, 0.591004, 0.32401, 0.364102, 0.0112252, 0.577283, 0.61104, 0.389568, 0.0618338, 0.489641, 0.784731, 0.798139, 0.582719, 0.53593, 0.675573, 0.0236412, 0.757729, 0.247307, 0.140043, 0.842903, 0.212953, 0.698981, 0.637433, 0.957588, 0.706099, 0.609729, 0.387273, 0.803494, 0.627456, 0.352881, 0.629117, 0.770967, 0.349952, 0.794217, 0.460269, 0.289858, 0.427424, 0.859604, 0.614877, 0.627268, 0.289232, 0.680268, 0.804652, 0.695936, 0.543098, 0.823489, 0.516873, 0.728121, 0.216566, 0.92983, 0.587176, 0.552859, 0.988048, 0.112148, 0.825353, 0.213509, 0.316869, 0.0798808, 0.946805, 0.42924, 0.404865, 0.407178, 0.170639, 0.829338, 0.82508, 0.313421, 0.113583, 0.0264537, 0.156781, 0.490163, 0.24183, 0.527696, 0.296247, 0.597739, 0.49373, 0.805524, 0.81522, 0.207776, 0.070541, 0.873843, 0.358434, 0.356914, 0.821749, 0.172439, 0.308093, 0.0832385, 0.813647, 0.678579, 0.342968, 0.64811, 0.14488, 0.120402, 0.44961, 0.95508, 0.361503, 0.535717, 0.518889, 0.100048, 0.404472, 0.19506, 0.386073, 0.473854, 0.641773, 0.236702, 0.0550125, 0.590603, 0.5527, 0.341272, 0.431917, 0.420711, 0.794005, 0.681318, 0.13312, 0.935004, 0.323219, 0.778307, 0.859016, 0.415393, 0.468577, 0.211118, 0.438695, 0.123158, 0.637092, 0.460244, 0.598071, 0.231173, 0.016797, 0.334836, 0.138386, 0.560526, 0.0835137, 0.60421, 0.700779, 0.83187, 0.294512, 0.51337, 0.0202051, 0.174129, 0.923679, 0.472313, 0.52481, 0.724994, 0.28695, 0.0204447, 0.931106, 0.310566, 0.853471, 0.105913, 0.860516, 0.877959, 0.307981, 0.846917, 0.633876, 0.676709, 0.952519, 0.669374, 0.82699, 0.646989, 0.322494, 0.411912, 0.211543, 0.853364, 0.212531, 0.699592, 0.851319, 0.166323, 0.314704, 0.180119, 0.0511063, 0.703247, 0.456749, 0.0952764, 0.333696, 0.689204, 0.446771, 0.568659, 0.3105, 0.627604, 0.27507, 0.344802, 0.517481, 0.683402, 0.719146, 0.0515266, 0.958567, 0.415007, 0.962756, 0.814256, 0.816333, 0.158331, 0.820954, 0.261193, 0.347959, 0.221901, 0.127494, 0.543496, 0.837035, 0.819778, 0.218426, 0.673528, 0.509844, 0.457907, 0.0202857, 0.71613, 0.256688, 0.631295, 0.0699392, 0.520135, 0.0924218, 0.836843, 0.188659, 0.367028, 0.757746, 0.185398, 0.626506, 0.419708, 0.291774, 0.462497, 0.561037, 0.557264, 0.324388, 0.818497, 0.589801, 0.957563, 0.86074, 0.0473976, 0.209955, 0.332045, 0.408941, 0.381801, 0.67951, 0.593068, 0.013784, 0.290742, 0.711, 0.262272, 0.835702, 0.92988, 0.227408, 0.392522, 0.0874849, 0.174771, 0.388741, 0.38575, 0.685479, 0.0320136, 0.396033, 0.214761, 0.613196, 0.0915487, 0.54813, 0.320967, 0.492146, 0.964279, 0.618353, 0.615633, 0.801621, 0.723783, 0.165171, 0.754033, 0.151565, 0.622612, 0.282483, 0.425882, 0.0526811, 0.699048, 0.37748, 0.617965, 0.244653, 0.487206, 0.954366, 0.487909, 0.0487261, 0.253659, 0.965087, 0.55919, 0.232056, 0.995675, 0.96729, 0.34866, 0.694014, 0.686933, 0.206105, 0.987857, 0.00528206, 0.934499, 0.861199, 0.162609, 0.422528, 0.721059, 0.401983, 0.219342, 0.547353, 0.467702, 0.426866, 0.0985705, 0.301489, 0.636567, 0.609446, 0.778716, 0.199101, 0.141631, 0.408992, 0.15862, 0.951258, 0.370879, 0.113898, 0.677033, 0.633627, 0.657546, 0.230455, 0.201419, 0.186193, 0.409626, 0.685885, 0.389648, 0.511679, 0.355286, 0.892571, 0.102479, 0.769516, 0.546067, 0.185712, 0.148104, 0.963418, 0.589483, 0.458965, 0.635108, 0.979402, 0.114336, 0.459704, 0.763414, 0.148888, 0.775504, 0.915703, 0.291144, 0.313944, 0.712198, 0.551069, 0.610023, 0.550448, 0.0949958, 0.787097, 0.333915, 0.897527, 0.386582, 0.667075, 0.443497, 0.71539, 0.131661, 0.648665, 0.626672, 0.895059, 0.180754, 0.616166, 0.828719, 0.135838, 0.0110219, 0.774477, 0.14943, 0.0979744, 0.379332, 0.568952, 0.749321, 0.00246856, 0.559976, 0.210275, 0.697018, 0.840576, 0.850855, 0.686321, 0.484197, 0.94107, 0.787591, 0.0515763, 0.856728, 0.498463, 0.856106, 0.875068, 0.608193, 0.753641, 0.847357, 0.238942, 0.174096, 0.124826, 0.703822, 0.414074, 0.856259, 0.15821, 0.233124, 0.0811753, 0.570522, 0.217, 0.0858566, 0.536606, 0.0525788, 0.47397, 0.307299, 0.893432, 0.273713, 0.0921186, 0.163628, 0.774949, 0.0383822, 0.971339, 0.227033, 0.630513, 0.521304, 0.771722, 0.752037, 0.227997, 0.951463, 0.915167, 0.745911, 0.960752, 0.921913, 0.677775, 0.506006, 0.660425, 0.737013, 0.234304, 0.650567, 0.285645, 0.627549, 0.724179, 0.735362, 0.751054, 0.742892, 0.5349, 0.0340623, 0.654263, 0.114409, 0.0739177, 0.78117, 0.766772, 0.284805, 0.882784, 0.770684, 0.65742, 0.266355, 0.948033, 0.377346, 0.230501, 0.54382, 0.334071, 0.186995, 0.23143, 0.0947131, 0.955076, 0.568663, 0.258273, 0.294791, 0.326614, 0.710372, 0.157307, 0.257738, 0.820396, 0.67441, 0.380863, 0.57792, 0.232758, 0.0620197, 0.350386, 0.258487, 0.902477, 0.228053, 0.248016, 0.662936, 0.700286, 0.193155, 0.670281, 0.772846, 0.678572, 0.586518, 0.87227, 0.381207, 0.96242, 0.824641, 0.584737, 0.68552, 0.22591, 0.0063159, 0.249958, 0.619253, 0.442369, 0.343834, 0.458693, 0.78975, 0.996348, 0.716623, 0.910166, 0.142621, 0.596729, 0.366853, 0.390577, 0.974675, 0.772302, 0.699393, 0.411428, 0.52734, 0.645652, 0.760538, 0.199266, 0.417639, 0.931522, 0.284259, 0.682519, 0.188477, 0.635607, 0.370065, 0.538539, 0.633446, 0.688715, 0.94006, 0.477396, 0.86209, 0.054199, 0.855804, 0.410172, 0.251128, 0.830972, 0.282699, 0.383014, 0.117019, 0.640977, 0.973587, 0.481625, 0.611474, 0.990382, 0.5059, 0.672565, 0.0202108, 0.582947, 0.0136221, 0.178035, 0.368841, 0.81812, 0.769489, 0.644509, 0.37348, 0.120281, 0.823506, 0.693859, 0.463414, 0.182675, 0.865192, 0.0276884, 0.496397, 0.964378, 0.641822, 0.677764, 0.412708, 0.00292643, 0.670148, 0.86073, 0.536736, 0.21797, 0.149772, 0.359512, 0.956203, 0.599491, 0.175738, 0.123739, 0.00688263, 0.0907703, 0.600065, 0.720228, 0.757179, 0.704742, 0.147682, 0.168863, 0.68926, 0.817109, 0.665291, 0.675294, 0.869075, 0.338797, 0.400802, 0.757248, 0.184531, 0.0769999, 0.845662, 0.236621, 0.113821, 0.745335, 0.226766, 0.100512, 0.356874, 0.500064, 0.99653, 0.841126, 0.417973, 0.793745, 0.0796873, 0.99213, 0.878007, 0.661723, 0.654042, 0.355236, 0.772393, 0.572179, 0.12688, 0.26505, 0.98449, 0.449076, 0.641671, 0.204734, 0.622518, 0.221602, 0.685798, 0.83397, 0.307166, 0.377713, 0.446752, 0.633034, 0.208031, 0.831139, 0.322364, 0.23388, 0.926244, 0.582568, 0.15845, 0.593766, 0.0726884, 0.738815, 0.966635, 0.922058, 0.465648, 0.797606, 0.647969, 0.76734, 0.110426, 0.0755897, 0.0728861, 0.640038, 0.157715, 0.670731, 0.00872158, 0.72429, 0.439391, 0.338223, 0.810034, 0.871096, 0.365613, 0.818626, 0.919099, 0.383008, 0.792088, 0.166972, 0.624496, 0.356871, 0.501678, 0.639525, 0.840328, 0.412824, 0.0932329, 0.111289, 0.724415, 0.623654, 0.53872, 0.659724, 0.753525, 0.837912, 0.161788, 0.382286, 0.884168, 0.794045, 0.523351, 0.556366, 0.0513674, 0.41215, 0.271863, 0.885614, 0.831207, 0.0969816, 0.915898, 0.563384, 0.893467, 0.829464, 0.242205, 0.729995, 0.39411, 0.453822, 0.775291, 0.785893, 0.678241, 0.765576, 0.697497, 0.869171, 0.854339, 0.987105, 0.0597787, 0.0108559, 0.921626, 0.742091, 0.419284, 0.945689, 0.236553, 0.863462, 0.576416, 0.802249, 0.155175, 0.676429, 0.744429, 0.658288, 0.213687, 0.667174, 0.891232, 0.551984, 0.302685, 0.414941, 0.293601, 0.00106408, 0.0241778, 0.00180441, 0.00668921, 0.224079, 0.932823, 0.790372, 0.117324, 0.668195, 0.0171749, 0.851547, 0.441639, 0.563881, 0.186563, 0.43539, 0.505915, 0.86787, 0.371474, 0.139565, 0.33326, 0.576365, 0.7019, 0.77176, 0.210137, 0.439934, 0.630084, 0.119083, 0.263833, 0.909826, 0.137509, 0.906319, 0.0842959, 0.646533, 0.932021, 0.970351, 0.583306, 0.833753, 0.846507, 0.253477, 0.119003, 0.00558582, 0.001398, 0.883284, 0.269051, 0.694504, 0.922912, 0.236143, 0.680205, 0.0310032, 0.0323088, 0.557608, 0.110848, 0.456599, 0.912836, 0.892128, 0.206123, 0.314372, 0.257554, 0.976526, 0.893388, 0.470747, 0.215682, 0.885755, 0.0257514, 0.666208, 0.788347, 0.893589, 0.625256, 0.521227, 0.48823, 0.452164, 0.7592, 0.288722, 0.704164, 0.333967, 0.0249497, 0.373069, 0.140549, 0.868282, 0.710221, 0.804359, 0.38871, 0.0400849, 0.718373, 0.895892, 0.318676, 0.475759, 0.220205, 0.152593, 0.66422, 0.182417, 0.454496, 0.612757, 0.960192, 0.106337, 0.352851, 0.653202, 0.574667, 0.0754936, 0.0805307, 0.0864846, 0.970072, 0.779454, 0.799679, 0.375467, 0.0837045, 0.333977, 0.162421, 0.249397, 0.100598, 0.866754, 0.963817, 0.929224, 0.330761, 0.81857, 0.620179, 0.144541, 0.200187, 0.390916, 0.470811, 0.201679, 0.328561, 0.685465, 0.606776, 0.746216, 0.238537, 0.664041, 0.504179, 0.528982, 0.775587, 0.597509, 0.703819, 0.465856, 0.719608, 0.699046, 0.500017, 0.652985, 0.77198, 0.874632, 0.258022, 0.316531, 0.263782, 0.985455, 0.128295, 0.221651, 0.725959, 0.65969, 0.135669, 0.59214, 0.185946, 0.549432, 0.265365, 0.415855, 0.581584, 0.859672, 0.813966, 0.396238, 0.695556, 0.532895, 0.297105, 0.337337, 0.891178, 0.114393, 0.593805, 0.907801, 0.174794, 0.372857, 0.0248354, 0.263824, 0.572763, 0.0982025, 0.864261, 0.834625, 0.337708, 0.189469, 0.361923, 0.625785, 0.261108, 0.775844, 0.852493, 0.0949709, 0.0979683, 0.934444, 0.0544419, 0.283204, 0.416359, 0.0434888, 0.92381, 0.343553, 0.0769861, 0.589362, 0.82132, 0.0485852, 0.896658, 0.0316668, 0.707779, 0.680386, 0.980316, 0.970593, 0.987526, 0.109227, 0.691583, 0.887017, 0.349748, 0.835415, 0.36057, 0.252305, 0.106924, 0.661509, 0.762768, 0.507334, 0.400594, 0.0321928, 0.914954, 0.066717, 0.513402, 0.910172, 0.0616166, 0.335694, 0.39358, 0.127995, 0.311314, 0.339676, 0.688501, 0.709888, 0.062848, 0.682497, 0.540525, 0.718128, 0.794207, 0.0441771, 0.986113, 0.136567, 0.355656, 0.999445, 0.15004, 0.381088, 0.0203178, 0.0824093, 0.556949, 0.905727, 0.474253, 0.0837329, 0.118499, 0.84057, 0.352348, 0.753817, 0.153472, 0.168021, 0.548498, 0.886833, 0.443833, 0.381542, 0.855886, 0.691931, 0.892762, 0.100045, 0.638215, 0.188494, 0.00818149, 0.875871, 0.532124, 0.586146, 0.815154, 0.944589, 0.274561, 0.906582, 0.00776694, 0.66117, 0.579047, 0.987331, 0.427147, 0.375723, 0.31839, 0.200724, 0.106331, 0.762523, 0.408919, 0.219073, 0.549145, 0.146873, 0.702442, 0.267826, 0.171143, 0.471984, 0.298283, 0.819285, 0.828251, 0.384217, 0.221415, 0.548437, 0.598658, 0.517612, 0.715119, 0.942431, 0.428131, 0.103713, 0.718112, 0.545915, 0.905434, 0.0417096, 0.864922, 0.0919797, 0.199275, 0.00664503, 0.938453, 0.927443, 0.435517, 0.765285, 0.949314, 0.257499, 0.663638, 0.950816, 0.5058, 0.0153361, 0.850979, 0.538474, 0.547083, 0.170574, 0.463045, 0.362734, 0.813406, 0.199206, 0.322996, 0.981702, 0.132911, 0.561486, 0.727108, 0.384904, 0.972872, 0.609987, 0.146484, 0.945631, 0.98901, 0.630719, 0.385017, 0.622342, 0.551934, 0.938095, 0.333759, 0.424097, 0.816664, 0.586314, 0.592952, 0.903655, 0.699977, 0.880342, 0.778092, 0.605997, 0.208481, 0.57197, 0.150941, 0.382229, 0.343875, 0.446767, 0.0609308, 0.309189, 0.955356, 0.452305, 0.158355, 0.895658, 0.420931, 0.868014, 0.571878, 0.498291, 0.934939, 0.116603, 0.104431, 0.192855, 0.337519, 0.880644, 0.164783, 0.417785, 0.390948, 0.947713, 0.033545, 0.102575, 0.974468, 0.709245, 0.898776, 0.726694, 0.251227, 0.760285, 0.86575, 0.706157, 0.112987, 0.529949, 0.21792, 0.564668, 0.307695, 0.419375, 0.688999, 0.617501, 0.445752, 0.277257, 0.715238, 0.304063, 0.132491, 0.0770358, 0.622772, 0.691975, 0.84441, 0.622969, 0.6856, 0.51067, 0.95175, 0.565329, 0.280985, 0.297438, 0.248585, 0.660183, 0.797266, 0.4799, 0.0123372, 0.845429, 0.841494, 0.918484, 0.14736, 0.176414, 0.776317, 0.995957, 0.403513, 0.3656, 0.421816, 0.856609, 0.861975, 0.974229, 0.021713, 0.568926, 0.122837, 0.415271, 0.632128, 0.0654283, 0.0762905, 0.548621, 0.179276, 0.738465, 0.893959, 0.994393, 0.174888, 0.319457, 0.400915, 0.907595, 0.632721, 0.796498, 0.862756, 0.0020552, 0.133031, 0.649062, 0.204599, 0.446987, 0.160217, 0.478109, 0.142825, 0.0620559, 0.278049, 0.748039, 0.755827, 0.923555, 0.345105, 0.648536, 0.686537, 0.971725, 0.464599, 0.760275, 0.105162, 0.983246, 0.00604525, 0.140177, 0.905, 0.938368, 0.550615, 0.762948, 0.358636, 0.189097, 0.860389, 0.848237, 0.331012, 0.135174, 0.43077, 0.377338, 0.0258247, 0.840109, 0.447487, 0.100205, 0.558228, 0.343605, 0.711903, 0.242802, 0.812641, 0.501949, 0.239866, 0.406506, 0.795585, 0.690768, 0.0181014, 0.597976, 0.627273, 0.50937, 0.121486, 0.0436525, 0.197956, 0.25864, 0.819611, 0.783811, 0.406142, 0.304749, 0.599887, 0.720109, 0.251736, 0.473498, 0.522691, 0.863379, 0.858623, 0.934269, 0.36418, 0.0841608, 0.788856, 0.686599, 0.829538, 0.164947, 0.844065, 0.993576, 0.724929, 0.692888, 0.251, 0.807681, 0.564336, 0.35226, 0.776656, 0.394954, 0.371132, 0.294816, 0.638015, 0.194861, 0.183644, 0.163626, 0.383555, 0.747841, 0.487575, 0.27055, 0.425705, 0.835043, 0.0680608, 0.228085, 0.653843, 0.21128, 0.590651, 0.577416, 0.308909, 0.764115, 0.705085, 0.22404, 0.931519, 0.562128, 0.522182, 0.366499, 0.0674083, 0.679526, 0.0604887, 0.730983, 0.993301, 0.556663, 0.0421419, 0.589714, 0.704518, 0.68187, 0.243529, 0.443112, 0.537233, 0.662457, 0.630459, 0.879828, 0.495696, 0.788551, 0.699764, 0.943416, 0.287901, 0.312387, 0.185625, 0.68931, 0.444885, 0.887877, 0.365092, 0.71022, 0.276571, 0.539053, 0.432607, 0.692496, 0.781982, 0.720861, 0.169869, 0.481523, 0.625876, 0.961458, 0.0592874, 0.301462, 0.151786, 0.736584, 0.258375, 0.347829, 0.65187, 0.345502, 0.957465, 0.841177, 0.907116, 0.976527, 0.560808, 0.100525, 0.10193, 0.0819206, 0.539046, 0.0109153, 0.439407, 0.154654, 0.679919, 0.806437, 0.162809, 0.648396, 0.205724, 0.272304, 0.0924056, 0.157329, 0.315478, 0.439663, 0.688246, 0.2127, 0.850182, 0.0128729, 0.0903344, 0.171465, 0.0104714, 0.750506, 0.454575, 0.689295, 0.238364, 0.261256, 0.239745, 0.546799, 0.469137, 0.372374, 0.339013, 0.547718, 0.829973, 0.276864, 0.538141, 0.105929, 0.170644, 0.421469, 0.840333, 0.956239, 0.672689, 0.451812, 0.58031, 0.357299, 0.215684, 0.519496, 0.460056, 0.716747, 0.491304, 0.229834, 0.127486, 0.905092, 0.555906, 0.0721259, 0.041581, 0.510215, 0.395276, 0.438857, 0.94381, 0.626606, 0.184174, 0.915979, 0.215971, 0.154997, 0.864942, 0.0988611, 0.251944, 0.864195, 0.886574, 0.0456422, 0.916006, 0.264125, 0.859057, 0.245051, 0.706641, 0.10155, 0.243685, 0.389626, 0.185941, 0.688391, 0.768579, 0.488701, 0.739821, 0.679663, 0.348402, 0.409395, 0.0091656, 0.160903, 0.0804745, 0.51335, 0.301049, 0.0231793, 0.204497, 0.386904, 0.0312164, 0.356758, 0.706266, 0.0686764, 0.0684509, 0.563464, 0.104772, 0.119621, 0.377996, 0.359239, 0.837839, 0.45694, 0.503392, 0.830893, 0.645893, 0.808829, 0.406021, 0.423789, 0.884968, 0.677216, 0.188494, 0.0565997, 0.483745, 0.220211, 0.782445, 0.651556, 0.816596, 0.196575, 0.688753, 0.482428, 0.586265, 0.539181, 0.206743, 0.288573, 0.441543, 0.0807429, 0.61317, 0.215667, 0.701933, 0.228446, 0.577729, 0.736862, 0.921574, 0.318777, 0.446166, 0.00249746, 0.42165, 0.194976, 0.565887, 0.993061, 0.240508, 0.453809, 0.997439, 0.474129, 0.886124, 0.225129, 0.606746, 0.998707, 0.232559, 0.0422347, 0.262956, 0.672915, 0.211194, 0.341752, 0.219858, 0.84216, 0.918537, 0.490828, 0.386068, 0.231688, 0.91578, 0.669895, 0.388457, 0.181955, 0.504756, 0.598224, 0.0739774, 0.72259, 0.664891, 0.89631, 0.272059, 0.397199, 0.204638, 0.300248, 0.0328023, 0.389526, 0.856474, 0.0912415, 0.236462, 0.718316, 0.738118, 0.0460803, 0.807778, 0.647155, 0.400048, 0.376813, 0.485327, 0.986201, 0.866023, 0.124365, 0.245155, 0.385591, 0.333758, 0.415666, 0.433378, 0.925816, 0.719244, 0.065929, 0.678957, 0.0103201, 0.547205, 0.219298, 0.935709, 0.017852, 0.865221, 0.0904996, 0.276277, 0.828221, 0.426476, 0.80664, 0.652762, 0.810459, 0.281391, 0.161404, 0.301521, 0.302399, 0.0308812, 0.811819, 0.688969, 0.923022, 0.306926, 0.62788, 0.59629, 0.240553, 0.0901609, 0.0165326, 0.94753, 0.345511, 0.0972646, 0.960353, 0.639537, 0.271484, 0.660993, 0.400956, 0.897515, 0.110177, 0.196591, 0.28291, 0.97968, 0.9634, 0.748608, 0.954301, 0.264691, 0.939441, 0.382081, 0.708375, 0.711272, 0.61525, 0.9727, 0.632167, 0.0635572, 0.874455, 0.187718, 0.674742, 0.0422768, 0.00512436, 0.432706, 0.479179, 0.198661, 0.459669, 0.733175, 0.762433, 0.987435, 0.986954, 0.632057, 0.0256972, 0.264978, 0.0691882, 0.609645, 0.761305, 0.339233, 0.0253089, 0.0726548, 0.402878, 0.53039, 0.464782, 0.104477, 0.0790445, 0.688595, 0.924308, 0.230273, 0.0648814, 0.528301, 0.0705961, 0.399499, 0.343114, 0.302305, 0.151242, 0.0299219, 0.985795, 0.762433, 0.310035, 0.946421, 0.783076, 0.80776, 0.759192, 0.623617, 0.73097, 0.65107, 0.957996, 0.400192, 0.751235, 0.189983, 0.986402, 0.911553, 0.0981043, 0.87139, 0.197119, 0.146904, 0.905052, 0.0864646, 0.183412, 0.873011, 0.458889, 0.35564, 0.775034, 0.124453, 0.738635, 0.953718, 0.889123, 0.691987, 0.987672, 0.4107, 0.892616, 0.684998, 0.863265, 0.0425638, 0.90798, 0.106003, 0.340602, 0.919752, 0.260214, 0.0680068, 0.489028, 0.102956, 0.958904, 0.531019, 0.663626, 0.968338, 0.580892, 0.712355, 0.128102, 0.890613, 0.637565, 0.930356, 0.737044, 0.859221, 0.986567, 0.399964, 0.0870206, 0.661551, 0.281999, 0.222849, 0.655717, 0.920301, 0.614943, 0.677214, 0.33046, 0.567663, 0.853335, 0.32623, 0.777185, 0.559091, 0.552188, 0.619115, 0.0102889, 0.637657, 0.702025, 0.880334, 0.266588, 0.395937, 0.376869, 0.27901, 0.512039, 0.410283, 0.0673083, 0.0520634, 0.649678, 0.00357422, 0.141621, 0.794679, 0.0380337, 0.223083, 0.488931, 0.60701, 0.725548, 0.974076, 0.151649, 0.416018, 0.715222, 0.893282, 0.672605, 0.0753095, 0.561179, 0.0467337, 0.110497, 0.366252, 0.208156, 0.76351, 0.401775, 0.930952, 0.349385, 0.121233, 0.0279252, 0.613772, 0.927652, 0.490538, 0.393573, 0.836098, 0.0222542, 0.990171, 0.520922, 0.196606, 0.646755, 0.115132, 0.00654864, 0.798696, 0.679517, 0.113255, 0.157396, 0.852971, 0.55404, 0.29054, 0.350618, 0.725176, 0.0539168, 0.624628, 0.515153, 0.593488, 0.367925, 0.010023, 0.605986, 0.355383, 0.495606, 0.273268, 0.465714, 0.771026, 0.768542, 0.867831, 0.395598, 0.394169, 0.862229, 0.41805, 0.389145, 0.84222, 0.350594, 0.0898763, 0.54263, 0.30973, 0.0341653, 0.715797, 0.0584596, 0.724317, 0.661337, 0.665782, 0.389317, 0.312689, 0.943407, 0.582541, 0.904562, 0.217721, 0.648274, 0.619905, 0.841299, 0.427722, 0.482571, 0.0606806, 0.919532, 0.814801, 0.0741254, 0.937703, 0.030512, 0.244253, 0.659673, 0.18727, 0.671907, 0.331276, 0.883269, 0.765625, 0.603335, 0.603434, 0.716936, 0.968526, 0.074639, 0.208396, 0.0261722, 0.112852, 0.559216, 0.280051, 0.840165, 0.772825, 0.639054, 0.321138, 0.169607, 0.424415, 0.0907678, 0.136643, 0.521352, 0.649788, 0.630384, 0.0436767, 0.137933, 0.984635, 0.778038, 0.403808, 0.652748, 0.939979, 0.592971, 0.451965, 0.965087, 0.979144, 0.847556, 0.529275, 0.346044, 0.0697041, 0.363227, 0.0204759, 0.190434, 0.369636, 0.0437434, 0.560413, 0.240726, 0.843342, 0.373273, 0.857142, 0.535516, 0.280448, 0.100715, 0.0128236, 0.633847, 0.372356, 0.353266, 0.990752, 0.306887, 0.429416, 0.178416, 0.53182, 0.526097, 0.732644, 0.216363, 0.638996, 0.111085, 0.19813, 0.519994, 0.812839, 0.975136, 0.504073, 0.518966, 0.180944, 0.0496752, 0.701867, 0.488269, 0.716748, 0.184546, 0.512495, 0.761167, 0.697101, 0.304955, 0.511194, 0.554395, 0.262005, 0.755659, 0.124621, 0.414152, 0.146795, 0.964882, 0.139361, 0.342751, 0.473251, 0.137934, 0.581996, 0.766002, 0.328939, 0.984061, 0.458676, 0.0301047, 0.953052, 0.316643, 0.582869, 0.677505, 0.216975, 0.181675, 0.324635, 0.561192, 0.893183, 0.895312, 0.686326, 0.219969, 0.590357, 0.177063, 0.333892, 0.451406, 0.834775, 0.326919, 0.288777, 0.452857, 0.301572, 0.404564, 0.28453, 0.745707, 0.262772, 0.372933, 0.146127, 0.986781, 0.210229, 0.25186, 0.257708, 0.352966, 0.608253, 0.400728, 0.113505, 0.406653, 0.136362, 0.782824, 0.270184, 0.030661, 0.491218, 0.377122, 0.803226, 0.836448, 0.86283, 0.912815, 0.531513, 0.778374, 0.0229733, 0.808477, 0.812527, 0.04851, 0.114582, 0.365908, 0.224707, 0.87229, 0.25335, 0.480678, 0.771355, 0.844184, 0.276701, 0.91784, 0.398595, 0.795584, 0.427373, 0.147385, 0.901279, 0.909746, 0.507502, 0.412628, 0.944328, 0.966222, 0.375699, 0.89249, 0.262635, 0.278157, 0.459272, 0.921578, 0.890149, 0.543985, 0.892832, 0.186102, 0.983704, 0.546099, 0.309482, 0.986482, 0.767514, 0.08101, 0.836228, 0.131367, 0.746135, 0.00965489, 0.145888, 0.943013, 0.215062, 0.178234, 0.460253, 0.488205, 0.061198, 0.504047, 0.267959, 0.316017, 0.554742, 0.656633, 0.778005, 0.49826, 0.167624, 0.528963, 0.482193, 0.89901, 0.822549, 0.479874, 0.65603, 0.466686, 0.771283, 0.549574, 0.949751, 0.402474, 0.00182143, 0.0884202, 0.353422, 0.44906, 0.803841, 0.925841, 0.923201, 0.537734, 0.321972, 0.377491, 0.726946, 0.356182, 0.478594, 0.871006, 0.354972, 0.629241, 0.136013, 0.135282, 0.917863, 0.831401, 0.718899, 0.307374, 0.891555, 0.150281, 0.468951, 0.148366, 0.575577, 0.716896, 0.444223, 0.78969, 0.93541, 0.760058, 0.540905, 0.964043, 0.0171063, 0.39869, 0.224293, 0.934343, 0.365121, 0.364891, 0.42817, 0.235662, 0.46574, 0.531042, 0.621616, 0.649751, 0.576603, 0.0734606, 0.620751, 0.127296, 0.00635519, 0.305983, 0.076342, 0.495677, 0.562979, 0.508511, 0.812624, 0.307106, 0.122217, 0.413897, 0.409494, 0.919129, 0.615194, 0.375754, 0.874112, 0.272596, 0.936665, 0.585845, 0.505604, 0.888888, 0.63179, 0.847612, 0.236553, 0.576794, 0.86346, 0.607459, 0.975899, 0.739587, 0.388672, 0.700388, 0.994525, 0.609612, 0.905807, 0.235086, 0.0540026, 0.966042, 0.270291, 0.502012, 0.86695, 0.164866, 0.0548146, 0.238537, 0.747805, 0.32025, 0.0936289, 0.840122, 0.111128, 0.932048, 0.280194, 0.120439, 0.0918159, 0.0826257, 0.553689, 0.244285, 0.125624, 0.281038, 0.654053, 0.884274, 0.0580714, 0.338571, 0.501211, 0.645873, 0.82703, 0.7876, 0.812349, 0.9168, 0.241476, 0.537967, 0.062039, 0.665578, 0.547241, 0.465356, 0.867855, 0.521594, 0.0769235, 0.0369526, 0.705496, 0.71834, 0.919237, 0.1668, 0.685412, 0.70845, 0.547079, 0.682376, 0.158527, 0.183392, 0.969974, 0.635421, 0.656028, 0.793447, 0.0408104, 0.757823, 0.104907, 0.198083, 0.902505, 0.15909, 0.4763, 0.342744, 0.832242, 0.400666, 0.643322, 0.787608, 0.000399353, 0.476601, 0.394971, 0.0931529, 0.621979, 0.736769, 0.1838, 0.919627, 0.465261, 0.247757, 0.670256, 0.144105, 0.421988, 0.571865, 0.936538, 0.416873, 0.4175, 0.475867, 0.803234, 0.98123, 0.249467, 0.799148, 0.77949, 0.999975, 0.900311, 0.291606, 0.00782618, 0.0601554, 0.282416, 0.0800648, 0.882891, 0.907917, 0.661172, 0.459114, 0.488762, 0.537694, 0.657679, 0.727417, 0.349662, 0.198227, 0.941466, 0.271296, 0.977564, 0.119668, 0.604557, 0.464826, 0.117033, 0.843198, 0.336332, 0.857577, 0.163204, 0.64604, 0.724511, 0.3183, 0.830594, 0.302087, 0.152319, 0.0437645, 0.0787377, 0.496651, 0.154927, 0.345418, 0.646263, 0.613318, 0.245296, 0.114565, 0.533264, 0.15273, 0.653966, 0.395528, 0.26212, 0.188835, 0.68635, 0.229349, 0.398208, 0.9319, 0.381751, 0.0209623, 0.943169, 0.866172, 0.155764, 0.898351, 0.823702, 0.0191588, 0.661247, 0.931646, 0.400447, 0.994346, 0.341126, 0.564498, 0.624447, 0.158792, 0.808065, 0.679964, 0.485722, 0.779868, 0.067149, 0.388791, 0.581165, 0.354829, 0.85431, 0.933481, 0.168851, 0.000294656, 0.856926, 0.997469, 0.353068, 0.943656, 0.384281, 0.318365, 0.976918, 0.137135, 0.695559, 0.567548, 0.241029, 0.00823528, 0.93008, 0.738601, 0.620383, 0.166429, 0.903855, 0.551089, 0.83635, 0.309258, 0.667892, 0.0232796, 0.735321, 0.546513, 0.111919, 0.394206, 0.904596, 0.00708398, 0.32197, 0.15307, 0.460674, 0.546714, 0.71124, 0.880599, 0.149789, 0.161291, 0.393216, 0.266991, 0.488378, 0.703033, 0.48592, 0.740042, 0.434032, 0.698467, 0.263984, 0.0416684, 0.977174, 0.383117, 0.221453, 0.899662, 0.807155, 0.462059, 0.888809, 0.623808, 0.0997352, 0.433326, 0.661246, 0.343671, 0.291103, 0.990272, 0.825014, 0.745993, 0.523319, 0.472344, 0.0555014, 0.431283, 0.493758, 0.998934, 0.2667, 0.970814, 0.872602, 0.446468, 0.871257, 0.0794379, 0.155252, 0.82933, 0.574495, 0.585308, 0.581221, 0.220756, 0.281271, 0.817061, 0.656363, 0.288968, 0.945296, 0.378223, 0.990441, 0.585566, 0.358747, 0.709879, 0.83303, 0.0129373, 0.971915, 0.656242, 0.353935, 0.953862, 0.285984, 0.478817, 0.450383, 0.251035, 0.695874, 0.0156363, 0.991913, 0.0198609, 0.537361, 0.860761, 0.673861, 0.373493, 0.602062, 0.0114897, 0.287357, 0.265764, 0.349716, 0.554349, 0.00616973, 0.970814, 0.837191, 0.643539, 0.112861, 0.184371, 0.0154453, 0.72955, 0.0828188, 0.845026, 0.0601916, 0.880928, 0.283457, 0.175913, 0.936213, 0.0927206, 0.35249, 0.735381, 0.969044, 0.37677, 0.228734, 0.496109, 0.637784, 0.00295316, 0.841655, 0.975194, 0.489921, 0.876785, 0.752131, 0.876938, 0.753426, 0.531065, 0.0916247, 0.178488, 0.728463, 0.142101, 0.910096, 0.674422, 0.681664, 0.740674, 0.0603205, 0.628937, 0.76967, 0.518407, 0.609922, 0.501698, 0.539959, 0.278785, 0.211401, 0.80414, 0.891716, 0.262146, 0.0971195, 0.380371, 0.546597, 0.0837777, 0.930768, 0.229421, 0.875001, 0.445601, 0.872772, 0.958337, 0.78924, 0.443299, 0.823673, 0.00935907, 0.743904, 0.235989, 0.309456, 0.603649, 0.148912, 0.290181, 0.904612, 0.610951, 0.512436, 0.467655, 0.845492, 0.206641, 0.710138, 0.0959027, 0.148078, 0.863241, 0.0265704, 0.478677, 0.871582, 0.406062, 0.374668, 0.378334, 0.623243, 0.472581, 0.173382, 0.179565, 0.945537, 0.172663, 0.854806, 0.440089, 0.592258, 0.221576, 0.309153, 0.811548, 0.661643, 0.215244, 0.787424, 0.315975, 0.845402, 0.44165, 0.394172, 0.296902, 0.156559, 0.778107, 0.20306, 0.349658, 0.771635, 0.862133, 0.0375458, 0.511418, 0.226177, 0.925131, 0.711151, 0.545341, 0.534673, 0.186163, 0.379189, 0.4613, 0.108788, 0.399324, 0.37091, 0.96608, 0.624196, 0.602313, 0.00545327, 0.389537, 0.0303548, 0.362548, 0.593127, 0.80781, 0.634135, 0.03911, 0.131299, 0.379449, 0.0279775, 0.359845, 0.731879, 0.0169809, 0.170011, 0.140762, 0.278804, 0.0750271, 0.106302, 0.59557, 0.909087, 0.0572952, 0.652158, 0.805364, 0.175926, 0.189026, 0.864383, 0.786211, 0.767197, 0.718582, 0.153246, 0.960772, 0.0481537, 0.594105, 0.23968, 0.46001, 0.759285, 0.325942, 0.305964, 0.284812, 0.80936, 0.600545, 0.571067, 0.535677, 0.373421, 0.0752662, 0.757014, 0.841804, 0.886108, 0.249164, 0.0348715, 0.883352, 0.705347, 0.629279, 0.196914, 0.340224, 0.617199, 0.390929, 0.271045, 0.512861, 0.900765, 0.265655, 0.811987, 0.647324, 0.236222, 0.0818048, 0.190853, 0.000218703, 0.50519, 0.00105905, 0.762038, 0.0207905, 0.994609, 0.617184, 0.873554, 0.0965242, 0.713469, 0.702956, 0.767263, 0.228942, 0.777586, 0.0391998, 0.990284, 0.304829, 0.308069, 0.389208, 0.422205, 0.264052, 0.122489, 0.00340829, 0.777628, 0.163683, 0.650151, 0.322333, 0.920432, 0.79389, 0.617836, 0.660512, 0.830666, 0.597568, 0.558382, 0.671335, 0.862849, 0.420052, 0.461348, 0.749726, 0.984223, 0.60897, 0.850785, 0.837481, 0.856733, 0.165479, 0.940752, 0.7099, 0.371881, 0.0919674, 0.141736, 0.227378, 0.200822, 0.639784, 0.247916, 0.572339, 0.743998, 0.605198, 0.0173636, 0.187632, 0.405288, 0.446981, 0.722107, 0.435873, 0.181586, 0.106386, 0.0896067, 0.307722, 0.219436, 0.429529, 0.344989, 0.362277, 0.0593035, 0.763482, 0.445489, 0.330653, 0.364106, 0.385999, 0.918634, 0.132045, 0.109024, 0.0785774, 0.622362, 0.381878, 0.0150794, 0.316541, 0.0111919, 0.536969, 0.598133, 0.477955, 0.700706, 0.789294, 0.401944, 0.645036, 0.384389, 0.723184, 0.240664, 0.357563, 0.16782, 0.191381, 0.15069, 0.478654, 0.231836, 0.923415, 0.549508, 0.944393, 0.499945, 0.95037, 0.0860303, 0.679979, 0.869618, 0.435324, 0.827285, 0.816131, 0.913721, 0.354395, 0.634003, 0.509328, 0.861692, 0.614431, 0.200596, 0.964208, 0.657615, 0.311227, 0.412868, 0.459556, 0.389972, 0.639212, 0.402353, 0.696483, 0.0435619, 0.285246, 0.262497, 0.467145, 0.236525, 0.913868, 0.123966, 0.873677, 0.780057, 0.0459068, 0.360648, 0.838724, 0.409429, 0.932976, 0.381423, 0.307034, 0.550048, 0.872205, 0.56814, 0.750442, 0.113688, 0.370818, 0.214654, 0.0508989, 0.346999, 0.145708, 0.283303, 0.306971, 0.228532, 0.11092, 0.706493, 0.517462, 0.936693, 0.840298, 0.361782, 0.477729, 0.94521, 0.411169, 0.995889, 0.123281, 0.946468, 0.804008, 0.794051, 0.857532, 0.313439, 0.573503, 0.514412, 0.750911, 0.660566, 0.55739, 0.97204, 0.0753414, 0.954399, 0.159923, 0.692097, 0.203624, 0.927947, 0.690131, 0.251044, 0.697366, 0.168819, 0.673313, 0.274458, 0.147431, 0.332768, 0.985573, 0.505472, 0.397147, 0.392911, 0.632329, 0.868903, 0.880853, 0.670591, 0.628933, 0.543024, 0.52413, 0.820767, 0.311598, 0.248859, 0.742366, 0.141775, 0.25742, 0.0757426, 0.850661, 0.0659472, 0.384148, 0.420724, 0.973471, 0.942875, 0.722862, 0.250896, 0.00551143, 0.0414477, 0.600163, 0.32764, 0.0839769, 0.608694, 0.692732, 0.940255, 0.272977, 0.636382, 0.0139347, 0.00104183, 0.0386415, 0.971171, 0.146773, 0.00540592, 0.131402, 0.0815217, 0.77673, 0.697122, 0.934273, 0.560839, 0.623937, 0.158716, 0.313411, 0.931876, 0.0802085, 0.865537, 0.114872, 0.515546, 0.581057, 0.0749937, 0.383747, 0.873575, 0.611048, 0.517091, 0.417579, 0.724859, 0.959788, 0.0533205, 0.339808, 0.0167258, 0.165728, 0.411227, 0.959074, 0.849294, 0.336029, 0.95474, 0.956261, 0.393124, 0.0194744, 0.000992737, 0.54519, 0.701655, 0.349581, 0.409216, 0.131143, 0.466281, 0.873485, 0.166993, 0.202028, 0.59162, 0.852567, 0.775583, 0.22694, 0.11181, 0.270426, 0.592845, 0.0238296, 0.827968, 0.214972, 0.175604, 0.798684, 0.13578, 0.851981, 0.994326, 0.373355, 0.324792, 0.545002, 0.710066, 0.847072, 0.440287, 0.50767, 0.978756, 0.316187, 0.162747, 0.237358, 0.596382, 0.204115, 0.104693, 0.496969, 0.192991, 0.94269, 0.125823, 0.424083, 0.296575, 0.970382, 0.766013, 0.928947, 0.799516, 0.641478, 0.769511, 0.154549, 0.56211, 0.783829, 0.603426, 0.336835, 0.425253, 0.825161, 0.775855, 0.611405, 0.0330463, 0.33534, 0.363623, 0.656339, 0.341059, 0.294683, 0.072706, 0.467624, 0.857905, 0.586907, 0.127862, 0.0958836, 0.41597, 0.484593, 0.375203, 0.0235657, 0.898615, 0.92354, 0.268047, 0.217567, 0.998058, 0.790891, 0.264616, 0.643863, 0.69957, 0.224748, 0.0755962, 0.35056, 0.131899, 0.542324, 0.368258, 0.645118, 0.163377, 0.714073, 0.487837, 0.758985, 0.57821, 0.822528, 0.519542, 0.841026, 0.572584, 0.0756279, 0.143607, 0.385603, 0.728936, 0.341502, 0.841468, 0.753492, 0.468463, 0.252173, 0.346816, 0.453043, 0.897406, 0.455856, 0.381292, 0.970106, 0.712188, 0.225131, 0.145392, 0.192588, 0.736191, 0.52139, 0.49617, 0.640443, 0.0726618, 0.480087, 0.690714, 0.282055, 0.894357, 0.617277, 0.152901, 0.243754, 0.656954, 0.406464, 0.122146, 0.240153, 0.256626, 0.822585, 0.934248, 0.506646, 0.694571, 0.166801, 0.635915, 0.365792, 0.439549, 0.444856, 0.478435, 0.742428, 0.275742, 0.820728, 0.516879, 0.198363, 0.501988, 0.858141, 0.539035, 0.856738, 0.00251694, 0.48064, 0.0702053, 0.172868, 0.392388, 0.106483, 0.335064, 0.320851, 0.803738, 0.939155, 0.235864, 0.468474, 0.462578, 0.29897, 0.494682, 0.965463, 0.424026, 0.385577, 0.813073, 0.215964, 0.849215, 0.0119733, 0.587684, 0.28297, 0.878928, 0.3545, 0.839369, 0.211762, 0.505819, 0.390852, 0.754333, 0.627557, 0.514172, 0.47467, 0.494604, 0.390526, 0.0615872, 0.687667, 0.28645, 0.00341233, 0.514379, 0.453768, 0.352923, 0.548501, 0.803326, 0.355522, 0.969599, 0.323054, 0.0563699, 0.649562, 0.847051, 0.414793, 0.296222, 0.0415952, 0.561045, 0.663737, 0.73908, 0.344458, 0.38393, 0.538131, 0.564966, 0.80075, 0.0590656, 0.339149, 0.122435, 0.52556, 0.928764, 0.0608846, 0.747374, 0.716633, 0.957798, 0.818284, 0.277545, 0.465612, 0.569795, 0.598696, 0.251668, 0.0703928, 0.499936, 0.41683, 0.822097, 0.998107, 0.134309, 0.155362, 0.424333, 0.971144, 0.135916, 0.137756, 0.855301, 0.950257, 0.526271, 0.230157, 0.195093, 0.071293, 0.368317, 0.148256, 0.0478854, 0.820473, 0.390425, 0.868324, 0.581325, 0.798427, 0.681233, 0.649855, 0.461053, 0.449711, 0.452545, 0.351996, 0.117592, 0.259018, 0.696514, 0.173728, 0.651144, 0.99512, 0.226474, 0.499346, 0.724982, 0.812642, 0.786676, 0.258136, 0.121056, 0.70422, 0.354921, 0.340765, 0.740536, 0.588562, 0.822997, 0.231297, 0.149709, 0.990806, 0.868476, 0.296367, 0.396294, 0.0670195, 0.950553, 0.638583, 0.266305, 0.842912, 0.703177, 0.422618, 0.911208, 0.939006, 0.957994, 0.109891, 0.877659, 0.609161, 0.177602, 0.267662, 0.111445, 0.98173, 0.947085, 0.437708, 0.947995, 0.458174, 0.339516, 0.151839, 0.987987, 0.477754, 0.53734, 0.865415, 0.287151, 0.826549, 0.877143, 0.263663, 0.178255, 0.291243, 0.598879, 0.959213, 0.723151, 0.225439, 0.376546, 0.615932, 0.251752, 0.400445, 0.633658, 0.958621, 0.702791, 0.954957, 0.318743, 0.459994, 0.257323, 0.754593, 0.471568, 0.511838, 0.742679, 0.658338, 0.630268, 0.727203, 0.160336, 0.196, 0.751544, 0.938162, 0.567098, 0.949888, 0.355567, 0.965457, 0.0857119, 0.486897, 0.278068, 0.548048, 0.224767, 0.0499265, 0.0183716, 0.909204, 0.528779, 0.476961, 0.50481, 0.0480282, 0.388792, 0.362907, 0.469301, 0.541633, 0.880414, 0.184411, 0.441109, 0.657236, 0.728948, 0.264312, 0.640115, 0.0896601, 0.298694, 0.436818, 0.962136, 0.744225, 0.488834, 0.95336, 0.192223, 0.484707, 0.945129, 0.44818, 0.605894, 0.601704, 0.617095, 0.39637, 0.759154, 0.718362, 0.704336, 0.474691, 0.117038, 0.376634, 0.371886, 0.860787, 0.421998, 0.317667, 0.23051, 0.681704, 0.0047523, 0.439035, 0.547683, 0.745078, 0.282497, 0.608041, 0.988396, 0.647564, 0.51635, 0.374832, 0.817182, 0.449299, 0.256153, 0.858, 0.898385, 0.311486, 0.823174, 0.40091, 0.134722, 0.305494, 0.564294, 0.898109, 0.0811435, 0.615287, 0.190389, 0.239776, 0.0787815, 0.833256, 0.714881, 0.994731, 0.241663, 0.772977, 0.111288, 0.493099, 0.792154, 0.00464981, 0.852142, 0.667936, 0.336471, 0.673554, 0.22382, 0.889906, 0.0776155, 0.523798, 0.76821, 0.143542, 0.797831, 0.40701, 0.520776, 0.382292, 0.712893, 0.2759, 0.191533, 0.835125, 0.0941685, 0.162417, 0.635805, 0.383042, 0.971267, 0.0176181, 0.246271, 0.700082, 0.141054, 0.182837, 0.0250806, 0.176226, 0.49263, 0.559441, 0.187575, 0.292103, 0.92846, 0.789409, 0.393551, 0.377547, 0.947155, 0.128638, 0.452715, 0.0434053, 0.863882, 0.642877, 0.950036, 0.617336, 0.722055, 0.193565, 0.799629, 0.437422, 0.351018, 0.773917, 0.995013, 0.18258, 0.934327, 0.198648, 0.119767, 0.584644, 0.590204, 0.7835, 0.232693, 0.577164, 0.732372, 0.446173, 0.306383, 0.00327525, 0.816126, 0.282531, 0.134947, 0.289544, 0.718327, 0.907322, 0.254399, 0.621861, 0.314335, 0.375737, 0.0506785, 0.313753, 0.931691, 0.0180866, 0.83853, 0.81125, 0.971104, 0.145964, 0.396113, 0.524393, 0.970057, 0.325058, 0.406099, 0.540443, 0.298112, 0.958321, 0.729839, 0.248967, 0.8588, 0.487625, 0.455911, 0.845357, 0.00339663, 0.560143, 0.949738, 0.923877, 0.845575, 0.978285, 0.984827, 0.96773, 0.552703, 0.729922, 0.845661, 0.513045, 0.806496, 0.648893, 0.162614, 0.0328184, 0.75913, 0.156401, 0.449324, 0.67392, 0.0152599, 0.261176, 0.353996, 0.899338, 0.496926, 0.464873, 0.049658, 0.967735, 0.425144, 0.899519, 0.570731, 0.286559, 0.380081, 0.476342, 0.704329, 0.171593, 0.628955, 0.477934, 0.965496, 0.152881, 0.207124, 0.502824, 0.944706, 0.74156, 0.256649, 0.0892003, 0.0853848, 0.728572, 0.450564, 0.953785, 0.0167663, 0.309596, 0.901346, 0.864796, 0.200647, 0.0863206, 0.167901, 0.717276, 0.480477, 0.670538, 0.682435, 0.0977151, 0.0338763, 0.0147863, 0.661508, 0.904189, 0.648901, 0.956698, 0.41554, 0.172787, 0.595283, 0.431342, 0.293568, 0.785942, 0.919609, 0.166602, 0.320775, 0.528073, 0.0990903, 0.265096, 0.438566, 0.547424, 0.576834, 0.928281, 0.901388, 0.376757, 0.0205771, 0.904413, 0.584102, 0.206187, 0.590228, 0.182499, 0.292812, 0.526085, 0.899114, 0.335858, 0.875331, 0.655488, 0.63314, 0.464719, 0.269843, 0.887705, 0.373332, 0.563933, 0.0850486, 0.920482, 0.845155, 0.129019, 0.401493, 0.833988, 0.0971413, 0.440951, 0.806517, 0.117265, 0.485826, 0.24519, 0.842618, 0.771493, 0.619761, 0.476138, 0.61296, 0.378665, 0.255981, 0.747436, 0.0223136, 0.664901, 0.797449, 0.853001, 0.978497, 0.530371, 0.50038, 0.152446, 0.577182, 0.817145, 0.667901, 0.865757, 0.0738946, 0.0579322, 0.564019, 0.903349, 0.105812, 0.365451, 0.234994, 0.516525, 0.926631, 0.662471, 0.505573, 0.690623, 0.684882, 0.123012, 0.411239, 0.565191, 0.854881, 0.0537899, 0.892327, 0.69524, 0.282411, 0.22138, 0.838472, 0.647229, 0.69415, 0.593122, 0.711694, 0.333028, 0.292645, 0.471287, 0.873539, 0.112766, 0.0980646, 0.550198, 0.0688095, 0.287355, 0.250152, 0.424834, 0.542063, 0.82079, 0.295398, 0.332226, 0.873103, 0.542578, 0.796689, 0.461834, 0.426734, 0.13495, 0.0356655, 0.992334, 0.906661, 0.306737, 0.194348, 0.943622, 0.685089, 0.924932, 0.718253, 0.73489, 0.0170687, 0.787715, 0.860696, 0.351521, 0.208491, 0.697224, 0.747865, 0.635574, 0.379693, 0.837117, 0.710662, 0.00432677, 0.229939, 0.867585, 0.358378, 0.330032, 0.733357, 0.467798, 0.782565, 0.365293, 0.2413, 0.57351, 0.770883, 0.392699, 0.383293, 0.308602, 0.960606, 0.271709, 0.512113, 0.914453, 0.66306, 0.151019, 0.637687, 0.163423, 0.534973, 0.483551, 0.921052, 0.410297, 0.0939397, 0.508608, 0.985296, 0.890239, 0.732254, 0.699869, 0.350539, 0.832559, 0.533377, 0.0323833, 0.982445, 0.197072, 0.538365, 0.0025993, 0.163348, 0.802389, 0.719949, 0.449735, 0.532396, 0.574884, 0.2336, 0.782294, 0.738726, 0.75876, 0.829218, 0.0187037, 0.617774, 0.709808, 0.889014, 0.796174, 0.717802, 0.585036, 0.603948, 0.627945, 0.969691, 0.926295, 0.722668, 0.951171, 0.27665, 0.179878, 0.833592, 0.159347, 0.804025, 0.633766, 0.316839, 0.534361, 0.0940644, 0.407393, 0.400498, 0.766562, 0.172892, 0.209141, 0.759968, 0.577934, 0.854032, 0.573314, 0.244756, 0.282187, 0.912426, 0.989598, 0.875222, 0.681764, 0.47806, 0.160706, 0.591462, 0.66708, 0.054528, 0.581186, 0.816524, 0.760334, 0.215596, 0.0671788, 0.602943, 0.468351, 0.777716, 0.412426, 0.69171, 0.267339, 0.625768, 0.617816, 0.0703638, 0.751811, 0.738653, 0.0221117, 0.849286, 0.823695, 0.637441, 0.31406, 0.607907, 0.51686, 0.943545, 0.679253, 0.0307176, 0.862303, 0.0419296, 0.502102, 0.491889, 0.726784, 0.250574, 0.539501, 0.790374, 0.996973, 0.392414, 0.189252, 0.14281, 0.178591, 0.462199, 0.27548, 0.559133, 0.187847, 0.145499, 0.699106, 0.313703, 0.2329, 0.24947, 0.508881, 0.467391, 0.867357, 0.0583741, 0.668682, 0.188203, 0.302144, 0.437842, 0.835275, 0.951587, 0.853957, 0.662607, 0.341119, 0.778616, 0.0206911, 0.172403, 0.574422, 0.120645, 0.307521, 0.65196, 0.188896, 0.387661, 0.766046, 0.892257, 0.955558, 0.316392, 0.136856, 0.333727, 0.986896, 0.608826, 0.970487, 0.676149, 0.288542, 0.25434, 0.961327, 0.51671, 0.809868, 0.651024, 0.209427, 0.828585, 0.785459, 0.236438, 0.453734, 0.599005, 0.298851, 0.582575, 0.989621, 0.395471, 0.893503, 0.38376, 0.536306, 0.415724, 0.861456, 0.3366, 0.0312893, 0.190346, 0.396119, 0.697469, 0.994934, 0.128262, 0.419153, 0.671446, 0.0398925, 0.876904, 0.62958, 0.944477, 0.619219, 0.201925, 0.80216, 0.86131, 0.105909, 0.623381, 0.549769, 0.211667, 0.968921, 0.782577, 0.680614, 0.00695279, 0.433972, 0.0643976, 0.339294, 0.429445, 0.0375942, 0.824152, 0.0257821, 0.94974, 0.429498, 0.263656, 0.223601, 0.786552, 0.182119, 0.406113, 0.129883, 0.0898836, 0.933753, 0.217537, 0.29338, 0.268674, 0.327087, 0.454318, 0.276973, 0.646845, 0.87259, 0.413006, 0.988415, 0.720624, 0.804014, 0.847937, 0.176427, 0.964545, 0.190957, 0.869556, 0.790345, 0.43425, 0.177486, 0.448294, 0.845207, 0.578581, 0.505744, 0.461785, 0.831601, 0.447018, 0.197002, 0.265265, 0.225108, 0.0833506, 0.395207, 0.553318, 0.548843, 0.932681, 0.864908, 0.460695, 0.959091, 0.926696, 0.779957, 0.536611, 0.636922, 0.40484, 0.200688, 0.217747, 0.0599353, 0.779543, 0.57964, 0.0783717, 0.541801, 0.0562739, 0.564573, 0.826421, 0.264191, 0.320995, 0.26849, 0.954359, 0.869601, 0.0734364, 0.519532, 0.499068, 0.456206, 0.886625, 0.825898, 0.444915, 0.680324, 0.0939236, 0.356988, 0.448587, 0.718458, 0.234452, 0.36613, 0.282905, 0.0892427, 0.560307, 0.0178707, 0.431653, 0.367383, 0.370834, 0.532423, 0.490484, 0.2183, 0.935119, 0.818088, 0.940187, 0.278941, 0.443191, 0.478899, 0.107819, 0.958645, 0.348994, 0.108032, 0.890401, 0.213198, 0.0298222, 0.428392, 0.875241, 0.225698, 0.795573, 0.217211, 0.0181693, 0.102138, 0.670195, 0.833803, 0.249095, 0.0644382, 0.183264, 0.055327, 0.34412, 0.916767, 0.619247, 0.931403, 0.77136, 0.839997, 0.876792, 0.090668, 0.207728, 0.994736, 0.0285567, 0.0944899, 0.50845, 0.156887, 0.0141242, 0.302653, 0.597414, 0.928757, 0.372808, 0.835983, 0.604138, 0.530675, 0.692292, 0.299225, 0.407303, 0.17708, 0.581985, 0.516017, 0.966934, 0.160866, 0.430206, 0.834298, 0.615807, 0.154265, 0.0234658, 0.0651562, 0.828005, 0.252543, 0.85958, 0.489373, 0.0177778, 0.207443, 0.751971, 0.843683, 0.406198, 0.736118, 0.65596, 0.621032, 0.754299, 0.758707, 0.0285996, 0.698346, 0.090256, 0.65823, 0.387805, 0.520675, 0.638833, 0.144534, 0.0137919, 0.173456, 0.00782472, 0.399208, 0.464339, 0.0133367, 0.92029, 0.50911, 0.78332, 0.0126389, 0.944962, 0.699823, 0.863908, 0.628106, 0.371214, 0.440421, 0.934672, 0.0256003, 0.81409, 0.803173, 0.632829, 0.677038, 0.700546, 0.933585, 0.569808, 0.788691, 0.55276, 0.794442, 0.451989, 0.334972, 0.181076, 0.0991012, 0.562334, 0.560958, 0.932214, 0.244108, 0.966396, 0.815003, 0.210763, 0.918568, 0.253558, 0.133928, 0.752249, 0.990286, 0.984486, 0.725318, 0.470781, 0.242256, 0.440868, 0.416847, 0.884916, 0.716285, 0.863908, 0.15809, 0.880761, 0.433683, 0.633511, 0.552547, 0.111377, 0.151011, 0.615799, 0.522434, 0.539279, 0.265123, 0.407127, 0.853945, 0.41649, 0.682944, 0.354664, 0.222762, 0.128292, 0.725612, 0.190819, 0.945783, 0.424301, 0.827427, 0.242931, 0.267628, 0.460562, 0.876041, 0.42958, 0.505738, 0.460771, 0.268692, 0.374312, 0.485857, 0.42256, 0.68238, 0.378584, 0.38224, 0.250217, 0.657907, 0.760952, 0.427835, 0.668097, 0.814126, 0.680257, 0.958357, 0.556202, 0.831808, 0.461898, 0.0379653, 0.030702, 0.583122, 0.528302, 0.899793, 0.289771, 0.912226, 0.0366062, 0.69732, 0.545396, 0.864096, 0.859456, 0.338904, 0.336195, 0.932924, 0.2239, 0.241701, 0.551533, 0.543849, 0.0833371, 0.552945, 0.130344, 0.887318, 0.0753924, 0.748455, 0.857814, 0.162206, 0.77325, 0.107328, 0.223164, 0.323524, 0.836608, 0.927458, 0.136319, 0.178003, 0.465426, 0.68789, 0.742066, 0.365342, 0.665927, 0.126526, 0.622908, 0.205135, 0.841494, 0.910807, 0.269525, 0.166037, 0.604826, 0.877741, 0.339587, 0.106844, 0.224326, 0.173063, 0.313145, 0.599577, 0.79985, 0.409741, 0.74418, 0.16675, 0.683554, 0.392779, 0.619441, 0.471352, 0.834384, 0.614718, 0.872245, 0.234561, 0.326976, 0.314452, 0.88116, 0.0115019, 0.699577, 0.283755, 0.820075, 0.142817, 0.296488, 0.109529, 0.0916776, 0.483715, 0.0887671, 0.28953, 0.508167, 0.62469, 0.161046, 0.495873, 0.732922, 0.380595, 0.883255, 0.0997583, 0.827542, 0.551911, 0.708546, 0.233081, 0.396506, 0.562756, 0.237265, 0.519324, 0.450772, 0.460418, 0.978431, 0.813139, 0.970238, 0.548929, 0.367882, 0.397659, 0.453543, 0.259446, 0.345573, 0.343475, 0.301507, 0.709123, 0.375367, 0.618997, 0.483399, 0.999581, 0.91137, 0.000650729, 0.728203, 0.199909, 0.541405, 0.366193, 0.591566, 0.74248, 0.847444, 0.1818, 0.368208, 0.318079, 0.587773, 0.971922, 0.135016, 0.277245, 0.755322, 0.782739, 0.901244, 0.168333, 0.963281, 0.303083, 0.279084, 0.69983, 0.135039, 0.750534, 0.315619, 0.114457, 0.76844, 0.431874, 0.494145, 0.0207518, 0.253657, 0.80844, 0.280064, 0.433059, 0.688001, 0.445098, 0.733557, 0.561655, 0.855851, 0.386489, 0.637624, 0.168769, 0.804168, 0.415863, 0.660961, 0.729496, 0.847697, 0.412275, 0.346749, 0.653185, 0.501166, 0.0999276, 0.0776018, 0.803858, 0.137053, 0.396814, 0.264231, 0.0674385, 0.445475, 0.980143, 0.210441, 0.243263, 0.216573, 0.958617, 0.694359, 0.148892, 0.229197, 0.335392, 0.423843, 0.178855, 0.415413, 0.0358149, 0.579731, 0.700792, 0.914333, 0.85334, 0.0785062, 0.0482632, 0.963727, 0.170779, 0.648669, 0.362862, 0.835782, 0.369952, 0.385661, 0.504311, 0.916275, 0.602668, 0.663616, 0.513957, 0.873483, 0.495562, 0.33248, 0.649582, 0.0375281, 0.285771, 0.223602, 0.415968, 0.0469861, 0.311527, 0.589832, 0.696851, 0.507855, 0.223775, 0.0416614, 0.619463, 0.495802, 0.879608, 0.278164, 0.914285, 0.236087, 0.736617, 0.88685, 0.510509, 0.496804, 0.473422, 0.408415, 0.603875, 0.0797587, 0.768391, 0.593124, 0.546585, 0.262834, 0.281042, 0.459584, 0.173093, 0.602033, 0.30103, 0.165304, 0.0213275, 0.980875, 0.120081, 0.342542, 0.0518216, 0.731458, 0.191318, 0.773785, 0.24661, 0.217768, 0.612652, 0.973506, 0.273143, 0.914329, 0.837165, 0.801158, 0.671485, 0.00732313, 0.481713, 0.428169, 0.241406, 0.772142, 0.259145, 0.62506, 0.143326, 0.87671, 0.302519, 0.97961, 0.540028, 0.193667, 0.140499, 0.938559, 0.162144, 0.437091, 0.261038, 0.458394, 0.562715, 0.588731, 0.850573, 0.702459, 0.36892, 0.750344, 0.840476, 0.907573, 0.412686, 0.782853, 0.70378, 0.174329, 0.0954385, 0.16047, 0.869342, 0.0441803, 0.18642, 0.668284, 0.264554, 0.385327, 0.854955, 0.819063, 0.471354, 0.678031, 0.376733, 0.0982298, 0.438167, 0.293879, 0.92393, 0.69696, 0.725893, 0.317032, 0.203411, 0.65363, 0.49608, 0.658154, 0.842702, 0.313104, 0.863964, 0.855449, 0.218583, 0.623755, 0.0426666, 0.952675, 0.652668, 0.979785, 0.261897, 0.632642, 0.386615, 0.773058, 0.815306, 0.133311, 0.922995, 0.751383, 0.271896, 0.853526, 0.299945, 0.872168, 0.43469, 0.76393, 0.104357, 0.252107, 0.178744, 0.0254154, 0.0121536, 0.566338, 0.800853, 0.208862, 0.483347, 0.334656, 0.107808, 0.281412, 0.500319, 0.927732, 0.699393, 0.650721, 0.386036, 0.312013, 0.249287, 0.0132821, 0.896976, 0.337049, 0.693979, 0.807182, 0.948462, 0.208668, 0.720983, 0.225851, 0.918379, 0.728314, 0.677805, 0.171668, 0.64968, 0.922009, 0.484325, 0.647646, 0.835169, 0.302394, 0.278037, 0.187053, 0.450665, 0.851355, 0.895482, 0.536796, 0.915332, 0.982553, 0.939195, 0.908274, 0.640734, 0.526159, 0.987063, 0.561802, 0.432246, 0.961466, 0.608891, 0.261753, 0.57967, 0.380521, 0.0978926, 0.133828, 0.125992, 0.589354, 0.413223, 0.162819, 0.872708, 0.364546, 0.638731, 0.884653, 0.622718, 0.0430716, 0.0603181, 0.499674, 0.0564261, 0.939255, 0.938424, 0.0362947, 0.880209, 0.979, 0.585052, 0.3654, 0.280154, 0.683502, 0.68845, 0.554585, 0.745996, 0.733725, 0.529199, 0.441838, 0.634349, 0.900637, 0.812677, 0.211902, 0.826391, 0.792779, 0.769211, 0.848819, 0.720352, 0.74029, 0.265414, 0.0206869, 0.902535, 0.817578, 0.533248, 0.492245, 0.802497, 0.937129, 0.629572, 0.322584, 0.738333, 0.757755, 0.575196, 0.379416, 0.672236, 0.712214, 0.876568, 0.821622, 0.451208, 0.457679, 0.630899, 0.965935, 0.181881, 0.32953, 0.248688, 0.605226, 0.696451, 0.503154, 0.911905, 0.705517, 0.855191, 0.928214, 0.41761, 0.616507, 0.5642, 0.780828, 0.966177, 0.648054, 0.733489, 0.797892, 0.935768, 0.774451, 0.337367, 0.0918411, 0.639816, 0.200888, 0.0232862, 0.392057, 0.541138, 0.868435, 0.0935901, 0.373805, 0.0292326, 0.632368, 0.469387, 0.132166, 0.577847, 0.00155223, 0.0252468, 0.585503, 0.743681, 0.228514, 0.401641, 0.118074, 0.0817157, 0.52752, 0.0696408, 0.470273, 0.490671, 0.970841, 0.458247, 0.635328, 0.00276626, 0.316413, 0.419444, 0.292113, 0.823948, 0.0268925, 0.618504, 0.639367, 0.365153, 0.449928, 0.556959, 0.71793, 0.0204331, 0.412344, 0.87819, 0.327939, 0.312845, 0.838894, 0.566002, 0.433753, 0.994723, 0.640206, 0.0466234, 0.710895, 0.737575, 0.787048, 0.747796, 0.0245469, 0.116564, 0.865837, 0.0551101, 0.579056, 0.339799, 0.20624, 0.158054, 0.489429, 0.533097, 0.994276, 0.760484, 0.0930767, 0.119221, 0.373164, 0.115098, 0.390313, 0.525111, 0.258839, 0.888985, 0.108926, 0.878784, 0.879588, 0.5868, 0.596448, 0.281762, 0.496528, 0.404005, 0.914844, 0.89073, 0.563902, 0.553464, 0.182609, 0.784416, 0.677185, 0.0168709, 0.214446, 0.0308244, 0.00672971, 0.233529, 0.28171, 0.522376, 0.352466, 0.919316, 0.828716, 0.930794, 0.779163, 0.794395, 0.690658, 0.854013, 0.915137, 0.364633, 0.341119, 0.0224899, 0.65358, 0.215617, 0.0267426, 0.9482, 0.320538, 0.701167, 0.343636, 0.400683, 0.74544, 0.283001, 0.663068, 0.397258, 0.380092, 0.959899, 0.891996, 0.539061, 0.647997, 0.77335, 0.449796, 0.063318, 0.423011, 0.850814, 0.159287, 0.0083325, 0.406502, 0.950196, 0.365803, 0.0626204, 0.287745, 0.980158, 0.286673, 0.0085185, 0.00846485, 0.80549, 0.0776918, 0.299683, 0.118333, 0.564421, 0.138695, 0.794155, 0.787339, 0.650925, 0.362174, 0.808774, 0.429166, 0.0522014, 0.64772, 0.11187, 0.669222, 0.876807, 0.319318, 0.87249, 0.926642, 0.376485, 0.938455, 0.102091, 0.379409, 0.6545, 0.265923, 0.330364, 0.813973, 0.388237, 0.90402, 0.826352, 0.552258, 0.817111, 0.209886, 0.266258, 0.793415, 0.322234, 0.720448, 0.48194, 0.22206, 0.477152, 0.335076, 0.993003, 0.493297, 0.2343, 0.234164, 0.988364, 0.475453, 0.944354, 0.572656, 0.81982, 0.841225, 0.300953, 0.80228, 0.692862, 0.45582, 0.608203, 0.0223268, 0.544142, 0.48409, 0.883958, 0.859681, 0.945984, 0.776398, 0.833004, 0.686266, 0.353201, 0.936881, 0.3648, 0.728375, 0.252332, 0.667343, 0.620504, 0.667671, 0.274578, 0.798505, 0.918431, 0.127858, 0.450921, 0.10913, 0.86227, 0.495973, 0.553919, 0.0476738, 0.897428, 0.282044, 0.0762915, 0.522753, 0.36765, 0.443482, 0.636019, 0.698052, 0.0145264, 0.304865, 0.0610866, 0.998783, 0.325839, 0.827785, 0.179754, 0.00522982, 0.542933, 0.035591, 0.394302, 0.966684, 0.482807, 0.0839868, 0.695327, 0.376071, 0.721095, 0.685043, 0.960016, 0.223145, 0.855048, 0.501232, 0.0944823, 0.698887, 0.85304, 0.759519, 0.829787, 0.803766, 0.143614, 0.384703, 0.0724454, 0.497892, 0.162596, 0.49557, 0.0117661, 0.670604, 0.206836, 0.591222, 0.695109, 0.790669, 0.110832, 0.333949, 0.662575, 0.0585832, 0.85838, 0.735202, 0.79964, 0.848775, 0.461166, 0.133284, 0.0752046, 0.532981, 0.922539, 0.972658, 0.129547, 0.247307, 0.833091, 0.961799, 0.825765, 0.477902, 0.974688, 0.025077, 0.44261, 0.190338, 0.889398, 0.106471, 0.15423, 0.565496, 0.258079, 0.405506, 0.637308, 0.769219, 0.204806, 0.96938, 0.894214, 0.873387, 0.207823, 0.48801, 0.236858, 0.763161, 0.544051, 0.613768, 0.428753, 0.554566, 0.656197, 0.297499, 0.478763, 0.0976514, 0.59537, 0.579078, 0.0819789, 0.654088, 0.925821, 0.525639, 0.484559, 0.619819, 0.847242, 0.771479, 0.0087186, 0.455569, 0.214935, 0.911306, 0.632993, 0.832396, 0.928761, 0.674419, 0.761091, 0.812115, 0.895513, 0.87407, 0.877751, 0.207037, 0.215039, 0.916875, 0.326794, 0.262319, 0.0425866, 0.175073, 0.684167, 0.724021, 0.844524, 0.618179, 0.849266, 0.9983, 0.732457, 0.457777, 0.39765, 0.580307, 0.35046, 0.805789, 0.346821, 0.645252, 0.639165, 0.460699, 0.469279, 0.666495, 0.381163, 0.117864, 0.811299, 0.0922506, 0.171651, 0.820672, 0.475703, 0.874998, 0.24256, 0.341205, 0.73704, 0.457847, 0.440887, 0.175341, 0.807219, 0.986352, 0.248882, 0.954343, 0.166271, 0.775489, 0.622371, 0.372043, 0.191437, 0.515043, 0.344614, 0.165677, 0.411226, 0.359628, 0.608428, 0.311358, 0.0926872, 0.278223, 0.406027, 0.277742, 0.303786, 0.359265, 0.759172, 0.728643, 0.815346, 0.444012, 0.525172, 0.266253, 0.181554, 0.113638, 0.371597, 0.526024, 0.939392, 0.582793, 0.699262, 0.193345, 0.440089, 0.0957679, 0.65982, 0.83131, 0.121418, 0.954625, 0.124645, 0.678378, 0.876522, 0.468095, 0.542474, 0.533214, 0.866372, 0.780074, 0.989091, 0.431179, 0.565459, 0.216981, 0.0853234, 0.838334, 0.864885, 0.687704, 0.967232, 0.582386, 0.139376, 0.524288, 0.882608, 0.751836, 0.584906, 0.280211, 0.422397, 0.0946807, 0.647679, 0.455189, 0.0861948, 0.733463, 0.978775, 0.018109, 0.511789, 0.905584, 0.152733, 0.760864, 0.529059, 0.680823, 0.652798, 0.75089, 0.185731, 0.398219, 0.0925079, 0.455324, 0.925171, 0.278169, 0.0289997, 0.00579375, 0.545702, 0.827669, 0.846042, 0.112142, 0.830135, 0.0707057, 0.823006, 0.58776, 0.837205, 0.841997, 0.969016, 0.623585, 0.708216, 0.45952, 0.886268, 0.563773, 0.184274, 0.166326, 0.813176, 0.745364, 0.0702331, 0.4599, 0.429664, 0.364169, 0.283908, 0.839553, 0.149715, 0.064362, 0.666133, 0.542712, 0.0985222, 0.805338, 0.372754, 0.62279, 0.208252, 0.31167, 0.662493, 0.741929, 0.60662, 0.303545, 0.873878, 0.832027, 0.741637, 0.780812, 0.985012, 0.138755, 0.170565, 0.831754, 0.333998, 0.296058, 0.515891, 0.163649, 0.873358, 0.773499, 0.99773, 0.76183, 0.197894, 0.351665, 0.485613, 0.00191917, 0.591469, 0.859371, 0.683942, 0.448589, 0.898636, 0.938772, 0.421771, 0.0206661, 0.591344, 0.559504, 0.347369, 0.650871, 0.232122, 0.646934, 0.366716, 0.217148, 0.0276472, 0.344373, 0.086544, 0.123203, 0.742502, 0.232899, 0.502286, 0.438192, 0.0821565, 0.19761, 0.272053, 0.669708, 0.803645, 0.436057, 0.480031, 0.285902, 0.347965, 0.265545, 0.203791, 0.0780581, 0.372543, 0.468054, 0.38697, 0.46109, 0.227524, 0.639341, 0.407162, 0.292364, 0.264987, 0.77532, 0.335171, 0.466698, 0.0218887, 0.173082, 0.381662, 0.19919, 0.975095, 0.745291, 0.730873, 0.439737, 0.510066, 0.847857, 0.524264, 0.12422, 0.316082, 0.181008, 0.485218, 0.0875008, 0.376509, 0.120733, 0.0210153, 0.412181, 0.399375, 0.405339, 0.778421, 0.0183537, 0.109468, 0.207663, 0.680579, 0.199971, 0.111591, 0.815966, 0.711327, 0.980347, 0.154883, 0.524286, 0.758173, 0.196185, 0.596499, 0.566757, 0.702571, 0.12603, 0.907757, 0.145578, 0.827116, 0.85263, 0.749245, 0.377216, 0.991406, 0.341737, 0.65783, 0.710799, 0.276245, 0.21397, 0.653395, 0.60759, 0.428054, 0.223166, 0.289404, 0.779153, 0.264097, 0.333161, 0.518189, 0.511508, 0.0301043, 0.700396, 0.296287, 0.0730226, 0.0626335, 0.708054, 0.407603, 0.0478065, 0.687654, 0.970479, 0.931644, 0.188487, 0.749045, 0.259967, 0.348934, 0.915613, 0.783626, 0.642778, 0.30499, 0.982318, 0.233114, 0.439615, 0.500804, 0.422079, 0.834522, 0.936686, 0.674656, 0.750855, 0.241206, 0.495153, 0.706212, 0.22935, 0.655109, 0.274586, 0.916446, 0.26678, 0.69987, 0.525289, 0.235553, 0.724885, 0.870327, 0.771253, 0.545269, 0.241219, 0.354546, 0.324689, 0.496322, 0.820226, 0.794634, 0.151333, 0.299279, 0.730443, 0.39681, 0.375833, 0.506248, 0.314417, 0.106419, 0.309005, 0.0118986, 0.352038, 0.975727, 0.596796, 0.050637, 0.621501, 0.352225, 0.222378, 0.594895, 0.147632, 0.35089, 0.772587, 0.419115, 0.897692, 0.382616, 0.684076, 0.0216641, 0.882061, 0.563223, 0.169828, 0.337242, 0.180684, 0.831768, 0.000880582, 0.035212, 0.380242, 0.321027, 0.20206, 0.30052, 0.0940876, 0.409633, 0.12443, 0.0371241, 0.169491, 0.922009, 0.716664, 0.963839, 0.103883, 0.989453, 0.22687, 0.94148, 0.245776, 0.659306, 0.909624, 0.621806, 0.264493, 0.670412, 0.221511, 0.79922, 0.168689, 0.989254, 0.130889, 0.508618, 0.908252, 0.975679, 0.728257, 0.522825, 0.0801624, 0.375765, 0.0563316, 0.893081, 0.542348, 0.737506, 0.48611, 0.984519, 0.0078226, 0.81894, 0.764225, 0.915142, 0.579383, 0.673858, 0.942977, 0.55327, 0.0198962, 0.727537, 0.757616, 0.20476, 0.795402, 0.265199, 0.720311, 0.29669, 0.670042, 0.838673, 0.0593059, 0.643605, 0.270137, 0.107003, 0.400765, 0.340219, 0.0106881, 0.346084, 0.221771, 0.5477, 0.145729, 0.647225, 0.215053, 0.142598, 0.861337, 0.909449, 0.510385, 0.943163, 0.166127, 0.633206, 0.910521, 0.178354, 0.92209, 0.227964, 0.356388, 0.128171, 0.174726, 0.785485, 0.575592, 0.274269, 0.611314, 0.751373, 0.931777, 0.689917, 0.738703, 0.705754, 0.839984, 0.087151, 0.0827527, 0.135115, 0.29786, 0.156464, 0.360025, 0.275173, 0.816818, 0.175458, 0.728818, 0.279461, 0.146934, 0.812872, 0.569866, 0.0566355, 0.0806752, 0.198211, 0.112924, 0.48319, 0.320613, 0.0158336, 0.120042, 0.950126, 0.0492626, 0.12184, 0.379713, 0.728355, 0.701685, 0.953788, 0.111446, 0.534288, 0.460916, 0.348581, 0.0491475, 0.84858, 0.00138538, 0.492785, 0.779054, 0.994262, 0.433473, 0.602259, 0.0411816, 0.142509, 0.804109, 0.0784028, 0.807498, 0.860025, 0.583898, 0.214806, 0.37402, 0.187868, 0.383618, 0.486166, 0.184232, 0.706437, 0.877481, 0.19742, 0.7042, 0.249755, 0.564731, 0.474408, 0.183711, 0.474954, 0.381775, 0.113742, 0.480437, 0.982564, 0.000426251, 0.206507, 0.357601, 0.0764998, 0.307462, 0.13654, 0.723176, 0.980171, 0.148159, 0.587817, 0.532939, 0.991298, 0.881553, 0.685757, 0.0848166, 0.404382, 0.481173, 0.0891813, 0.608265, 0.373653, 0.165365, 0.0949041, 0.938192, 0.527496, 0.689969, 0.251991, 0.816745, 0.537979, 0.632852, 0.801855, 0.51635, 0.72296, 0.830555, 0.280027, 0.602003, 0.0849229, 0.99122, 0.0768961, 0.496196, 0.308519, 0.100239, 0.194686, 0.255449, 0.492251, 0.400271, 0.517834, 0.414514, 0.302919, 0.19172, 0.842483, 0.536281, 0.700811, 0.0290133, 0.890229, 0.413407, 0.0349808, 0.500724, 0.542962, 0.0994638, 0.669554, 0.647204, 0.423555, 0.691766, 0.201164, 0.330492, 0.580948, 0.76759, 0.745527, 0.803631, 0.54167, 0.2282, 0.185509, 0.12553, 0.229768, 0.303903, 0.670466, 0.801704, 0.377607, 0.841936, 0.381325, 0.582298, 0.133827, 0.519022, 0.0639882, 0.31382, 0.381568, 0.982314, 0.55829, 0.833623, 0.746109, 0.630393, 0.353753, 0.192484, 0.945326, 0.65395, 0.791256, 0.155652, 0.731879, 0.251792, 0.403846, 0.527225, 0.943291, 0.459221, 0.560742, 0.340407, 0.224403, 0.00743414, 0.762825, 0.612189, 0.0859213, 0.670368, 0.84152, 0.756552, 0.913609, 0.130314, 0.344554, 0.751845, 0.182745, 0.64356, 0.123482, 0.0696099, 0.149629, 0.358217, 0.293502, 0.45525, 0.135931, 0.157483, 0.267527, 0.160255, 0.245916, 0.83299, 0.911332, 0.816536, 0.977977, 0.97271, 0.163029, 0.345785, 0.126773, 0.815453, 0.350847, 0.970734, 0.392701, 0.244312, 0.0199651, 0.874517, 0.800012, 0.476579, 0.0127928, 0.378158, 0.692009, 0.587867, 0.281408, 0.623901, 0.328944, 0.541419, 0.539783, 0.757558, 0.148147, 0.0681028, 0.85519, 0.562344, 0.681205, 0.416375, 0.569483, 0.511124, 0.230555, 0.969944, 0.520844, 0.555162, 0.955413, 0.107302, 0.691061, 0.47665, 0.949219, 0.237087, 0.522283, 0.743928, 0.425981, 0.702944, 0.515884, 0.8432, 0.596011, 0.550869, 0.695034, 0.122294, 0.630313, 0.246141, 0.516009, 0.949877, 0.165293, 0.947501, 0.912248, 0.169362, 0.29496, 0.733054, 0.500297, 0.632604, 0.44588, 0.740171, 0.262932, 0.582571, 0.227411, 0.301401, 0.327583, 0.522596, 0.527579, 0.121228, 0.00864084, 0.330013, 0.165413, 0.0277039, 0.706386, 0.407959, 0.751436, 0.378717, 0.199228, 0.766191, 0.184537, 0.202327, 0.788221, 0.55589, 0.382068, 0.760043, 0.432347, 0.816282, 0.895474, 0.107054, 0.425757, 0.0939529, 0.818596, 0.92217, 0.88338, 0.413655, 0.144898, 0.123842, 0.300132, 0.0172145, 0.323029, 0.770783, 0.338488, 0.659724, 0.397907, 0.841668, 0.0248078, 0.560817, 0.75631, 0.216071, 0.945316, 0.756295, 0.618953, 0.293676, 0.713934, 0.260252, 0.599536, 0.0450698, 0.992442, 0.614849, 0.77318, 0.216432, 0.541778, 0.726992, 0.295268, 0.176633, 0.532288, 0.313879, 0.555873, 0.405705, 0.153774, 0.667703, 0.594061, 0.0580947, 0.604919, 0.588593, 0.653251, 0.173753, 0.838343, 0.441918, 0.387072, 0.744385, 0.419127, 0.506196, 0.645351, 0.454678, 0.925833, 0.143292, 0.660574, 0.722864, 0.63793, 0.0788522, 0.363169, 0.564739, 0.191534, 0.259257, 0.0347999, 0.6413, 0.101712, 0.449541, 0.370545, 0.997122, 0.540823, 0.0884563, 0.208965, 0.613264, 0.985142, 0.40103, 0.919549, 0.224497, 0.616591, 0.593156, 0.801722, 0.223876, 0.206958, 0.501691, 0.551562, 0.74282, 0.181208, 0.771393, 0.393918, 0.922321, 0.638577, 0.376863, 0.0401266, 0.816643, 0.785584, 0.203166, 0.878251, 0.65944, 0.882809, 0.0863928, 0.745687, 0.40847, 0.832032, 0.0809256, 0.094153, 0.361189, 0.812077, 0.234691, 0.42694, 0.200852, 0.975523, 0.354141, 0.421757, 0.0774215, 0.070992, 0.421937, 0.633423, 0.283779, 0.81905, 0.794535, 0.0960576, 0.629297, 0.535167, 0.508523, 0.527075, 0.999334, 0.0173005, 0.311656, 0.923278, 0.0455971, 0.444995, 0.133671, 0.680912, 0.155071, 0.723781, 0.461663, 0.93426, 0.329707, 0.714499, 0.169596, 0.67502, 0.391618, 0.118416, 0.33398, 0.968866, 0.0195507, 0.450389, 0.214882, 0.355019, 0.551473, 0.393801, 0.539777, 0.73026, 0.361477, 0.220424, 0.300348, 0.617481, 0.886439, 0.397227, 0.525943, 0.850235, 0.740317, 0.998272, 0.976569, 0.341928, 0.160851, 0.429201, 0.457287, 0.309672, 0.580991, 0.273954, 0.326242, 0.0643254, 0.573575, 0.287755, 0.686969, 0.984569, 0.554197, 0.7274, 0.216069, 0.621872, 0.643813, 0.876882, 0.468438, 0.0936584, 0.513361, 0.670193, 0.532297, 0.104199, 0.423867, 0.224115, 0.798091, 0.177146, 0.555254, 0.248109, 0.160211, 0.0221616, 0.132389, 0.999707, 0.965038, 0.554444, 0.565595, 0.237503, 0.00169962, 0.229568, 0.682788, 0.764481, 0.0487813, 0.864486, 0.904476, 0.0525319, 0.898714, 0.0173873, 0.985162, 0.436532, 0.582763, 0.0158723, 0.789094, 0.786233, 0.410659, 0.604324, 0.475477, 0.319492, 0.220243, 0.169876, 0.0914102, 0.233776, 0.732329, 0.939244, 0.553129, 0.601285, 0.405567, 0.959259, 0.236196, 0.516522, 0.139614, 0.981068, 0.229505, 0.571244, 0.406352, 0.746558, 0.521592, 0.187013, 0.701303, 0.783859, 0.704499, 0.567539, 0.448151, 0.841309, 0.811219, 0.580277, 0.538911, 0.893996, 0.232525, 0.888414, 0.736725, 0.417165, 0.211215, 0.310771, 0.70188, 0.507595, 0.510334, 0.913556, 0.0478733, 0.575113, 0.630415, 0.990332, 0.57646, 0.546378, 0.92641, 0.623053, 0.321859, 0.0157159, 0.295079, 0.127641, 0.923763, 0.613171, 0.164406, 0.28307, 0.340805, 0.228384, 0.55602, 0.994059, 0.187031, 0.10987, 0.144074, 0.143496, 0.338501, 0.505964, 0.168797, 0.48837, 0.784524, 0.758003, 0.605508, 0.949441, 0.971073, 0.259546, 0.810502, 0.805251, 0.892052, 0.720263, 0.100148, 0.497694, 0.46166, 0.857795, 0.27426, 0.11979, 0.329579, 0.182483, 0.167435, 0.955931, 0.189914, 0.28703, 0.813201, 0.854609, 0.273005, 0.137551, 0.752829, 0.538577, 0.0628072, 0.776421, 0.537499, 0.0547614, 0.885418, 0.920425, 0.788888, 0.00927441, 0.722344, 0.369018, 0.121754, 0.455063, 0.424021, 0.113252, 0.324646, 0.694949, 0.669383, 0.0572191, 0.570372, 0.659508, 0.152914, 0.142012, 0.920393, 0.38614, 0.467542, 0.35072, 0.281447, 0.944685, 0.215558, 0.454926, 0.536026, 0.44778, 0.920869, 0.638052, 0.534191, 0.0641143, 0.828026, 0.873776, 0.164457, 0.552525, 0.207604, 0.452393, 0.205054, 0.895241, 0.0895964, 0.248367, 0.781899, 0.44924, 0.754355, 0.103789, 0.208486, 0.242908, 0.121276, 0.127973, 0.402872, 0.442435, 0.525921, 0.0637256, 0.0361188, 0.571006, 0.606648, 0.947884, 0.760438, 0.0309971, 0.196711, 0.95827, 0.364995, 0.33025, 0.844207, 0.597559, 0.239721, 0.643562, 0.696375, 0.264842, 0.788867, 0.547416, 0.116078, 0.00181673, 0.0610323, 0.35044, 0.722475, 0.201206, 0.589462, 0.514436, 0.524413, 0.54, 0.150274, 0.987583, 0.190674, 0.20016, 0.523651, 0.494359, 0.791559, 0.283106, 0.677997, 0.872868, 0.967687, 0.512397, 0.392591, 0.0656109, 0.782488, 0.429386, 0.412632, 0.358234, 0.116172, 0.221527, 0.694443, 0.799309, 0.0969967, 0.851847, 0.153804, 0.876318, 0.731137, 0.121943, 0.177912, 0.927979, 0.532124, 0.107388, 0.111061, 0.839484, 0.604183, 0.502345, 0.0353025, 0.556722, 0.736888, 0.170137, 0.966485, 0.196674, 0.34073, 0.840239, 0.314031, 0.254273, 0.888353, 0.667272, 0.653667, 0.950473, 0.95575, 0.589813, 0.242019, 0.386154, 0.720908, 0.0230627, 0.131933, 0.860859, 0.275647, 0.457245, 0.51807, 0.362195, 0.668601, 0.402841, 0.943437, 0.654454, 0.244928, 0.628289, 0.186225, 0.908723, 0.809243, 0.841236, 0.71593, 0.348131, 0.505465, 0.889749, 0.234725, 0.792285, 0.277952, 0.301562, 0.885563, 0.410757, 0.80986, 0.0936623, 0.879623, 0.538852, 0.69582, 0.387751, 0.30954, 0.124704, 0.771897, 0.565482, 0.509211, 0.356417, 0.114909, 0.090619, 0.514345, 0.965393, 0.844088, 0.618682, 0.523679, 0.791183, 0.00318767, 0.634567, 0.370863, 0.869661, 0.835118, 0.851767, 0.418507, 0.0536338, 0.185084, 0.183014, 0.528634, 0.381339, 0.344865, 0.290802, 0.867557, 0.473365, 0.563617, 0.00453586, 0.365663, 0.379836, 0.12498, 0.56141, 0.68537, 0.451273, 0.884056, 0.858573, 0.736995, 0.987575, 0.524262, 0.902263, 0.0411267, 0.293483, 0.626195, 0.411771, 0.310665, 0.290257, 0.410445, 0.0286189, 0.362421, 0.195714, 0.965872, 0.96694, 0.361025, 0.66546, 0.278483, 0.918264, 0.261512, 0.548885, 0.71121, 0.00362248, 0.182363, 0.474657, 0.48244, 0.0516065, 0.158192, 0.97494, 0.699373, 0.909023, 0.707281, 0.473288, 0.169886, 0.0643692, 0.0449337, 0.659065, 0.937262, 0.381404, 0.825512, 0.65109, 0.125254, 0.732339, 0.601261, 0.697315, 0.303673, 0.522208, 0.0152708, 0.507449, 0.783954, 0.28115, 0.295958, 0.622733, 0.786373, 0.39511, 0.159152, 0.251225, 0.603123, 0.745414, 0.653556, 0.748722, 0.730079, 0.340812, 0.664719, 0.40022, 0.182874, 0.37144, 0.0832018, 0.811496, 0.674253, 0.739171, 0.845764, 0.178027, 0.545391, 0.540179, 0.948017, 0.135733, 0.504476, 0.486853, 0.835047, 0.231292, 0.25473, 0.00212214, 0.212284, 0.472472, 0.112381, 0.418387, 0.0418642, 0.611147, 0.0643578, 0.206525, 0.804208, 0.573227, 0.663163, 0.164013, 0.914674, 0.305367, 0.903968, 0.0232696, 0.563987, 0.560816, 0.414911, 0.400634, 0.131686, 0.0193554, 0.607752, 0.164197, 0.567341, 0.42141, 0.83941, 0.460983, 0.985455, 0.870885, 0.202614, 0.968553, 0.80669, 0.372927, 0.788877, 0.357564, 0.0966117, 0.306816, 0.336928, 0.040926, 0.436574, 0.510561, 0.969237, 0.239551, 0.731059, 0.90222, 0.965847, 0.608129, 0.0812972, 0.353123, 0.015714, 0.0231182, 0.0392268, 0.0738136, 0.58702, 0.171462, 0.370901, 0.678717, 0.468467, 0.410735, 0.673824, 0.158814, 0.533841, 0.916291, 0.029516, 0.9556, 0.664704, 0.102852, 0.948735, 0.754373, 0.643268, 0.0982024, 0.942864, 0.274011, 0.476923, 0.106461, 0.225548, 0.313291, 0.329554, 0.851883, 0.314722, 0.938837, 0.322335, 0.585171, 0.0277564, 0.318626, 0.629204, 0.532407, 0.740747, 0.919904, 0.420374, 0.724614, 0.108623, 0.738651, 0.907322, 0.0670096, 0.311997, 0.852269, 0.702452, 0.127123, 0.901492, 0.693842, 0.839737, 0.339155, 0.147633, 0.355625, 0.145871, 0.115069, 0.957674, 0.560687, 0.064264, 0.506556, 0.554516, 0.73012, 0.409934, 0.802327, 0.998475, 0.647414, 0.127543, 0.265695, 0.578531, 0.1327, 0.355447, 0.558171, 0.00598838, 0.940226, 0.369519, 0.586139, 0.55968, 0.636518, 0.857409, 0.963241, 0.0116475, 0.667325, 0.407958, 0.335186, 0.479968, 0.270378, 0.919637, 0.826009, 0.199082, 0.322783, 0.39992, 0.758611, 0.255333, 0.302068, 0.902525, 0.500197, 0.855985, 0.500728, 0.314063, 0.0381636, 0.557419, 0.152195, 0.803799, 0.84627, 0.10769, 0.345615, 0.269928, 0.609945, 0.279088, 0.200761, 0.766667, 0.731349, 0.335105, 0.254386, 0.53166, 0.194555, 0.521007, 0.162585, 0.449878, 0.100261, 0.622192, 0.509137, 0.121375, 0.315335, 0.485973, 0.434955, 0.754392, 0.924451, 0.458096, 0.0209212, 0.639647, 0.311079, 0.402749, 0.679186, 0.332598, 0.730444, 0.10064, 0.637107, 0.389819, 0.607408, 0.646883, 0.347521, 0.168656, 0.866111, 0.0461562, 0.777592, 0.120227, 0.862783, 0.189477, 0.263367, 0.283009, 0.013176, 0.836167, 0.131011, 0.181339, 0.388115, 0.713889, 0.58026, 0.978099, 0.560269, 0.474457, 0.251467, 0.736789, 0.85937, 0.438229, 0.805346, 0.576954, 0.589921, 0.165357, 0.898489, 0.469481, 0.179003, 0.560535, 0.101505, 0.997484, 0.817597, 0.456714, 0.517765, 0.539166, 0.0549501, 0.13851, 0.144562, 0.84891, 0.426885, 0.102703, 0.0221969, 0.899891, 0.827862, 0.020504, 0.987958, 0.346579, 0.014053, 0.872403, 0.367345, 0.0392524, 0.917112, 0.680638, 0.315322, 0.0444468, 0.704286, 0.47484, 0.262109, 0.713528, 0.0696204, 0.553667, 0.0572242, 0.222615, 0.421279, 0.954459, 0.630813, 0.498017, 0.613005, 0.162239, 0.469291, 0.739683, 0.429791, 0.156983, 0.430067, 0.630572, 0.743539, 0.228513, 0.609373, 0.423079, 0.674534, 0.951026, 0.170747, 0.676115, 0.341737, 0.420619, 0.880342, 0.561069, 0.486017, 0.533275, 0.16003, 0.99196, 0.802565, 0.635778, 0.75065, 0.540375, 0.208002, 0.0790226, 0.300026, 0.26242, 0.485571, 0.80065, 0.739541, 0.533718, 0.456979, 0.028113, 0.991271, 0.862795, 0.484163, 0.430773, 0.255418, 0.398744, 0.113383, 0.426061, 0.362484, 0.568603, 0.0652797, 0.253389, 0.717145, 0.48661, 0.802034, 0.926832, 0.611447, 0.619769, 0.683132, 0.819905, 0.103712, 0.199142, 0.511242, 0.853235, 0.0824173, 0.110265, 0.447908, 0.710412, 0.934489, 0.272197, 0.0303202, 0.256232, 0.0225588, 0.481865, 0.236125, 0.0195839, 0.993028, 0.580165, 0.666793, 0.269172, 0.176457, 0.796069, 0.165905, 0.634858, 0.254795, 0.859056, 0.103369, 0.949433, 0.792508, 0.378716, 0.944026, 0.227297, 0.8783, 0.323629, 0.621736, 0.914955, 0.823668, 0.299256, 0.123202, 0.617012, 0.446672, 0.953833, 0.613775, 0.0391566, 0.554599, 0.91968, 0.275098, 0.833774, 0.953738, 0.583018, 0.746144, 0.533393, 0.405325, 0.679003, 0.37107, 0.328953, 0.44203, 0.0994147, 0.18665, 0.657475, 0.288277, 0.930274, 0.418843, 0.469237, 0.35161, 0.12955, 0.089204, 0.532626, 0.812124, 0.436089, 0.0448819, 0.512143, 0.059357, 0.0345068, 0.469822, 0.253855, 0.620757, 0.0337107, 0.956324, 0.146751, 0.460174, 0.509127, 0.882615, 0.589425, 0.759984, 0.981331, 0.683049, 0.310719, 0.729234, 0.122272, 0.586035, 0.991812, 0.582853, 0.453523, 0.181746, 0.892268, 0.334669, 0.986757, 0.817444, 0.590081, 0.850383, 0.595176, 0.240762, 0.8305, 0.149676, 0.437148, 0.542704, 0.671214, 0.0366027, 0.663488, 0.531283, 0.121862, 0.640571, 0.165648, 0.461287, 0.273252, 0.844644, 0.825103, 0.148409, 0.251839, 0.446473, 0.0960271, 0.00706158, 0.630802, 0.848176, 0.375203, 0.0320539, 0.130486, 0.149418, 0.183657, 0.455004, 0.8082, 0.269266, 0.957152, 0.557931, 0.0748252, 0.749464, 0.504835, 0.81596, 0.34321, 0.477582, 0.801332, 0.461577, 0.926013, 0.661129, 0.649922, 0.452354, 0.218746, 0.905802, 0.0605009, 0.418734, 0.501866, 0.635877, 0.705736, 0.181324, 0.104941, 0.832578, 0.874072, 0.141237, 0.142201, 0.280765, 0.5323, 0.674359, 0.652151, 0.190034, 0.967754, 0.696816, 0.969444, 0.0220326, 0.687023, 0.37009, 0.285545, 0.181625, 0.831447, 0.835206, 0.575393, 0.0947767, 0.445169, 0.507885, 0.425157, 0.613484, 0.682745, 0.0263245, 0.665957, 0.0166366, 0.65463, 0.789293, 0.0336617, 0.164098, 0.924421, 0.132713, 0.456148, 0.574763, 0.668189, 0.489693, 0.0441914, 0.518647, 0.214696, 0.112737, 0.44819, 0.303738, 0.399455, 0.546151, 0.158835, 0.00180918, 0.262032, 0.384566, 0.89461, 0.164237, 0.818893, 0.49971, 0.120254, 0.23836, 0.029748, 0.995163, 0.226978, 0.0484893, 0.231094, 0.305973, 0.71215, 0.822466, 0.0508578, 0.997569, 0.898337, 0.817448, 0.874781, 0.689182, 0.973867, 0.628597, 0.620877, 0.45498, 0.717818, 0.938396, 0.427875, 0.366748, 0.776689, 0.96113, 0.76588, 0.85267, 0.0487189, 0.683232, 0.042304, 0.781456, 0.0592676, 0.129742, 0.571455, 0.768879, 0.703165, 0.0624367, 0.190833, 0.0241882, 0.805154, 0.335558, 0.910022, 0.332639, 0.323955, 0.228345, 0.887001, 0.980327, 0.870543, 0.990502, 0.265794, 0.694965, 0.00930077, 0.731371, 0.223209, 0.405306, 0.109496, 0.965509, 0.958465, 0.840793, 0.889724, 0.064064, 0.451945, 0.206655, 0.38059, 0.106237, 0.491083, 0.93959, 0.487393, 0.232154, 0.915776, 0.171781, 0.493335, 0.474649, 0.698498, 0.530765, 0.52425, 0.449313, 0.81784, 0.483302, 0.73427, 0.962126, 0.718749, 0.446763, 0.893096, 0.725123, 0.466613, 0.83961, 0.98493, 0.537082, 0.0800491, 0.405409, 0.983864, 0.39792, 0.0114679, 0.150705, 0.100391, 0.290206, 0.898127, 0.587066, 0.0429559, 0.659294, 0.850143, 0.00734813, 0.101774, 0.717331, 0.0820413, 0.13315, 0.0223735, 0.142763, 0.376158, 0.962344, 0.257931, 0.30701, 0.286801, 0.0103284, 0.777624, 0.125984, 0.134889, 0.924669, 0.237833, 0.227038, 0.514285, 0.805988, 0.143093, 0.529449, 0.15169, 0.351351, 0.736351, 0.308342, 0.294531, 0.708191, 0.99304, 0.84248, 0.503519, 0.0269532, 0.358566, 0.0602081, 0.411598, 0.285303, 0.273901, 0.905446, 0.798683, 0.0151927, 0.052071, 0.0621774, 0.130585, 0.704555, 0.915636, 0.711788, 0.158899, 0.629154, 0.324008, 0.95695, 0.281377, 0.940854, 0.80062, 0.912882, 0.284001, 0.559985, 0.201188, 0.583779, 0.0224731, 0.306439, 0.248416, 0.00758427, 0.557572, 0.942114, 0.554073, 0.937692, 0.458901, 0.215002, 0.737547, 0.530686, 0.190635, 0.80603, 0.979828, 0.256353, 0.976253, 0.736808, 0.65022, 0.349429, 0.637669, 0.397362, 0.00712503, 0.690147, 0.985218, 0.834008, 0.347133, 0.602926, 0.823941, 0.970718, 0.234268, 0.506128, 0.989503, 0.883743, 0.717558, 0.475378, 0.367747, 0.718978, 0.589846, 0.768416, 0.666121, 0.412887, 0.199796, 0.57815, 0.188739, 0.589283, 0.92877, 0.852514, 0.773125, 0.359723, 0.627715, 0.0199192, 0.0866482, 0.843929, 0.967316, 0.926631, 0.911379, 0.937028, 0.0500699, 0.738367, 0.70269, 0.168276, 0.48319, 0.120307, 0.949687, 0.192057, 0.264129, 0.314993, 0.369187, 0.462775, 0.31784, 0.324946, 0.0102614, 0.793894, 0.402858, 0.530403, 0.79561, 0.81572, 0.942598, 0.211626, 0.227524, 0.0135033, 0.859035, 0.32734, 0.573035, 0.982225, 0.0224267, 0.347177, 0.71185, 0.261203, 0.359006, 0.97465, 0.929987, 0.318933, 0.0621373, 0.380474, 0.573457, 0.926413, 0.716498, 0.888477, 0.893428, 0.547621, 0.40203, 0.478106, 0.282419, 0.989463, 0.927382, 0.43853, 0.0925404, 0.574581, 0.68347, 0.666289, 0.0394626, 0.0910755, 0.061274, 0.462583, 0.222248, 0.734661, 0.586794, 0.921215, 0.0876263, 0.486106, 0.713872, 0.893221, 0.143838, 0.639398, 0.848009, 0.280608, 0.670753, 0.486026, 0.879492, 0.195502, 0.446925, 0.148831, 0.311913, 0.826572, 0.0745106, 0.967327, 0.176825, 0.837993, 0.901025, 0.145146, 0.102935, 0.183943, 0.441984, 0.890556, 0.985702, 0.43369, 0.0862162, 0.639421, 0.782565, 0.343339, 0.938177, 0.260718, 0.632064, 0.717315, 0.587037, 0.450545, 0.886596, 0.730935, 0.292592, 0.239379, 0.890215, 0.304032, 0.515059, 0.699912, 0.194646, 0.0724452, 0.952158, 0.948487, 0.864882, 0.194389, 0.666615, 0.0957282, 0.922265, 0.248937, 0.635332, 0.714348, 0.989062, 0.0572661, 0.272326, 0.521135, 0.0849775, 0.868695, 0.835632, 0.249649, 0.318595, 0.119722, 0.142894, 0.682807, 0.267935, 0.657104, 0.436956, 0.0389745, 0.22653, 0.410546, 0.725259, 0.747194, 0.0454387, 0.44659, 0.139582, 0.785488, 0.0223576, 0.0735775, 0.13351, 0.296764, 0.618207, 0.940226, 0.354419, 0.514127, 0.314087, 0.953654, 0.0748327, 0.191724, 0.895162, 0.665453, 0.696588, 0.432883, 0.899274, 0.867747, 0.120454, 0.891239, 0.749333, 0.891805, 0.788669, 0.953287, 0.416784, 0.521032, 0.704389, 0.0472966, 0.0240078, 0.0331113, 0.406872, 0.473289, 0.924241, 0.667755, 0.0811827, 0.454321, 0.15741, 0.497819, 0.716903, 0.444339, 0.395287, 0.464974, 0.12151, 0.404004, 0.0934605, 0.441825, 0.697486, 0.351276, 0.442934, 0.220947, 0.86621, 0.223565, 0.116137, 0.807875, 0.29863, 0.170471, 0.411124, 0.744533, 0.193647, 0.717145, 0.342939, 0.221676, 0.232901, 0.341465, 0.446438, 0.300425, 0.374265, 0.658203, 0.822078, 0.496284, 0.199386, 0.989217, 0.0821325, 0.275467, 0.277882, 0.893707, 0.405232, 0.567861, 0.8975, 0.18138, 0.308309, 0.477461, 0.984025, 0.830471, 0.42237, 0.364545, 0.516352, 0.841026, 0.67769, 0.487623, 0.273439, 0.971741, 0.466953, 0.273495, 0.846301, 0.166227, 0.95255, 0.210152, 0.682805, 0.751633, 0.3129, 0.909138, 0.825527, 0.659544, 0.908908, 0.580157, 0.876501, 0.607299, 0.242618, 0.818114, 0.00131603, 0.776379, 0.188393, 0.30809, 0.544675, 0.869784, 0.413121, 0.518545, 0.116167, 0.649879, 0.964, 0.677545, 0.927208, 0.933423, 0.275191, 0.434273, 0.124179, 0.466204, 0.276987, 0.936144, 0.750637, 0.238819, 0.738644, 0.463506, 0.969592, 0.447774, 0.591227, 0.609234, 0.98293, 0.640797, 0.390193, 0.444909, 0.788283, 0.587941, 0.157216, 0.00131569, 0.779473, 0.429672, 0.54189, 0.831539, 0.970397, 0.684854, 0.487185, 0.531324, 0.832011, 0.777649, 0.804686, 0.675394, 0.923088, 0.308004, 0.428661, 0.555492, 0.861357, 0.628359, 0.316157, 0.817916, 0.374223, 0.970965, 0.795997, 0.510906, 0.672588, 0.424412, 0.175958, 0.769263, 0.497293, 0.196555, 0.0611545, 0.00530789, 0.965853, 0.570024, 0.360339, 0.187082, 0.748634, 0.190719, 0.806228, 0.0352233, 0.192849, 0.965821, 0.00679308, 0.99123, 0.73737, 0.775546, 0.0977013, 0.308288, 0.431117, 0.153415, 0.804882, 0.669997, 0.670311, 0.612123, 0.782227, 0.11331, 0.154333, 0.296159, 0.174976, 0.0483842, 0.24777, 0.620132, 0.861002, 0.334178, 0.866623, 0.361461, 0.710116, 0.0635535, 0.249805, 0.549268, 0.362231, 0.239818, 0.378997, 0.681933, 0.933777, 0.291056, 0.456954, 0.18463, 0.540136, 0.0437274, 0.734342, 0.366618, 0.269954, 0.310104, 0.732228, 0.0728633, 0.989473, 0.252805, 0.0756632, 0.0375949, 0.0332494, 0.324117, 0.932543, 0.326445, 0.805994, 0.269755, 0.072031, 0.821557, 0.943744, 0.640986, 0.750658, 0.69089, 0.809074, 0.374401, 0.779458, 0.494652, 0.539367, 0.648802, 0.904723, 0.91116, 0.539082, 0.538251, 0.134833, 0.387795, 0.64978, 0.599567, 0.417636, 0.551634, 0.322439, 0.340208, 0.912534, 0.733872, 0.579219, 0.0793208, 0.626329, 0.905718, 0.582516, 0.92312, 0.50702, 0.414618, 0.334607, 0.825264, 0.171573, 0.571544, 0.596331, 0.111448, 0.190892, 0.00608648, 0.961301, 0.06295, 0.700943, 0.104887, 0.665655, 0.150576, 0.368126, 0.560471, 0.811381, 0.670625, 0.687407, 0.206057, 0.554732, 0.792035, 0.238631, 0.967303, 0.229403, 0.820224, 0.403868, 0.334452, 0.410095, 0.141435, 0.385321, 0.78013, 0.120142, 0.131125, 0.531591, 0.284758, 0.225754, 0.821743, 0.479127, 0.670744, 0.0632617, 0.190213, 0.342228, 0.611834, 0.147144, 0.749315, 0.812352, 0.220116, 0.0743763, 0.798754, 0.186146, 0.653518, 0.952988, 0.224036, 0.979533, 0.0512328, 0.855497, 0.970378, 0.330205, 0.893624, 0.951954, 0.446248, 0.241224, 0.358395, 0.823622, 0.575698, 0.0235875, 0.340075, 0.599497, 0.358554, 0.928837, 0.306355, 0.571435, 0.719717, 0.165151, 0.0797963, 0.831695, 0.88422, 0.601322, 0.247884, 0.628228, 0.498607, 0.00621075, 0.915399, 0.143344, 0.116065, 0.94494, 0.466709, 0.317744, 0.344857, 0.0949592, 0.964505, 0.35357, 0.303505, 0.606102, 0.0665468, 0.225249, 0.458599, 0.970461, 0.395171, 0.422658, 0.679472, 0.410228, 0.19959, 0.842336, 0.668081, 0.664293, 0.402229, 0.812145, 0.272561, 0.502467, 0.770362, 0.929647, 0.15165, 0.276435, 0.342583, 0.433105, 0.282908, 0.745474, 0.516557, 0.0118625, 0.317457, 0.148295, 0.685141, 0.588302, 0.16608, 0.0774353, 0.635194, 0.218951, 0.0168833, 0.00626268, 0.868376, 0.931036, 0.320997, 0.459506, 0.295636, 0.0551453, 0.0681321, 0.559253, 0.677468, 0.157699, 0.577135, 0.802595, 0.706154, 0.559748, 0.797186, 0.0456973, 0.774654, 0.734378, 0.0919026, 0.7873, 0.372076, 0.469205, 0.00575541, 0.192196, 0.13782, 0.392825, 0.552584, 0.257179, 0.414549, 0.910588, 0.105094, 0.759801, 0.0528332, 0.990542, 0.569218, 0.576016, 0.799242, 0.278953, 0.231101, 0.297748, 0.878379, 0.943777, 0.53018, 0.84597, 0.940981, 0.00342711, 0.218818, 0.980644, 0.0654761, 0.172279, 0.818572, 0.474842, 0.929259, 0.350181, 0.912524, 0.651795, 0.788866, 0.0493693, 0.730662, 0.931843, 0.318642, 0.311007, 0.922937, 0.175911, 0.475047, 0.366807, 0.110681, 0.384554, 0.185636, 0.749514, 0.861982, 0.164914, 0.52161, 0.410423, 0.247525, 0.700921, 0.452227, 0.750821, 0.39097, 0.280601, 0.471775, 0.35919, 0.14004, 0.731463, 0.476488, 0.337308, 0.330169, 0.527366, 0.850729, 0.655397, 0.0842694, 0.0643169, 0.962994, 0.26068, 0.153789, 0.273396, 0.85484, 0.965423, 0.394847, 0.433896, 0.115241, 0.390524, 0.405932, 0.938156, 0.198021, 0.738096, 0.0385308, 0.617535, 0.802318, 0.573192, 0.763268, 0.0779548, 0.320115, 0.748815, 0.291995, 0.389855, 0.614649, 0.514202, 0.205235, 0.0963104, 0.503745, 0.31952, 0.355385, 0.942694, 0.929783, 0.0220208, 0.459694, 0.84832, 0.941392, 0.737276, 0.262519, 0.227443, 0.253201, 0.228847, 0.0953443, 0.556171, 0.166964, 0.270108, 0.926642, 0.654498, 0.140178, 0.306913, 0.990324, 0.580342, 0.0324181, 0.623065, 0.646986, 0.898798, 0.976565, 0.119017, 0.688754, 0.998727, 0.222624, 0.943651, 0.273386, 0.48019, 0.207396, 0.128925, 0.878636, 0.562034, 0.057086, 0.624526, 0.257558, 0.394908, 0.295239, 0.577043, 0.395199, 0.504665, 0.328583, 0.98399, 0.397759, 0.0383109, 0.665752, 0.429645, 0.767314, 0.928769, 0.76124, 0.902218, 0.146777, 0.350768, 0.680122, 0.296311, 0.468029, 0.826814, 0.101591, 0.664039, 0.801716, 0.147115, 0.108351, 0.116276, 0.861291, 0.167491, 0.946289, 0.693907, 0.313647, 0.777845, 0.263364, 0.139229, 0.740363, 0.989704, 0.432943, 0.570094, 0.322981, 0.476946, 0.49074, 0.958952, 0.578021, 0.0932085, 0.821197, 0.205692, 0.692186, 0.875159, 0.402558, 0.900931, 0.816728, 0.616854, 0.522478, 0.487102, 0.517616, 0.915677, 0.66723, 0.310415, 0.80434, 0.766109, 0.0184057, 0.894138, 0.499064, 0.192616, 0.985936, 0.665655, 0.455956, 0.457536, 0.85326, 0.284357, 0.201585, 0.474892, 0.598309, 0.856298, 0.797672, 0.542194, 0.875995, 0.796188, 0.571213, 0.548237, 0.57115, 0.336469, 0.693064, 0.414336, 0.998054, 0.423767, 0.346776, 0.0062636, 0.631417, 0.913248, 0.554041, 0.873048, 0.717099, 0.190542, 0.445506, 0.465368, 0.566584, 0.901952, 0.890297, 0.186303, 0.77379, 0.897066, 0.537364, 0.924561, 0.156125, 0.573204, 0.105287, 0.468789, 0.491821, 0.711121, 0.0273963, 0.498252, 0.143125, 0.925854, 0.497041, 0.57547, 0.242062, 0.012427, 0.969893, 0.436162, 0.0943087, 0.433064, 0.47741, 0.391195, 0.762221, 0.699659, 0.218952, 0.472897, 0.602302, 0.665468, 0.889846, 0.438605, 0.3467, 0.0341724, 0.264448, 0.00160433, 0.598278, 0.261374, 0.707071, 0.478422, 0.240603, 0.33752, 0.616253, 0.769533, 0.0996562, 0.279065, 0.30718, 0.293483, 0.978438, 0.909758, 0.133283, 0.964745, 0.476413, 0.0521153, 0.917585, 0.343908, 0.707254, 0.969343, 0.138905, 0.796633, 0.268497, 0.0173456, 0.814986, 0.388645, 0.951678, 0.481828, 0.174195, 0.552913, 0.648707, 0.461039, 0.631946, 0.392304, 0.700226, 0.924364, 0.139219, 0.0778452, 0.143639, 0.698261, 0.889259, 0.0129595, 0.830755, 0.660252, 0.459239, 0.846976, 0.991724, 0.278637, 0.34602, 0.600882, 0.811927, 0.968476, 0.747932, 0.24639, 0.742693, 0.445385, 0.341478, 0.324177, 0.0706899, 0.944761, 0.434242, 0.489379, 0.38672, 0.837475, 0.152152, 0.222192, 0.895271, 0.52972, 0.16663, 0.918529, 0.591741, 0.329087, 0.583589, 0.542022, 0.265522, 0.683751, 0.628837, 0.0971741, 0.157937, 0.518461, 0.593073, 0.534005, 0.037028, 0.273651, 0.423647, 0.578465, 0.507036, 0.493013, 0.21444, 0.209466, 0.603251, 0.0092898, 0.244992, 0.422513, 0.201632, 0.761322, 0.0846159, 0.397488, 0.826415, 0.813036, 0.379624, 0.540605, 0.599324, 0.763757, 0.588955, 0.872442, 0.0215331, 0.566805, 0.294548, 0.897124, 0.864667, 0.357449, 0.381755, 0.0890578, 0.781388, 0.683016, 0.769563, 0.443538, 0.467661, 0.270731, 0.754169, 0.0640097, 0.0685592, 0.574631, 0.00559693, 0.167295, 0.671187, 0.303472, 0.396746, 0.302382, 0.42929, 0.426672, 0.452811, 0.287465, 0.271403, 0.237308, 0.0238095, 0.183345, 0.995383, 0.713626, 0.151027, 0.812641, 0.0540519, 0.437533, 0.97883, 0.238399, 0.0276459, 0.360596, 0.136596, 0.325483, 0.437352, 0.684789, 0.458391, 0.45358, 0.802771, 0.878323, 0.88142, 0.571143, 0.787027, 0.774071, 0.724934, 0.280951, 0.955159, 0.855806, 0.0902775, 0.773264, 0.438617, 0.71604, 0.341795, 0.419745, 0.394258, 0.357691, 0.863999, 0.721997, 0.57028, 0.249531, 0.732312, 0.533183, 0.965219, 0.880907, 0.448262, 0.98237, 0.117052, 0.179045, 0.454526, 0.442181, 0.992582, 0.0774046, 0.551523, 0.997961, 0.871994, 0.44388, 0.853182, 0.267528, 0.351673, 0.0835476, 0.378, 0.738866, 0.402109, 0.578633, 0.511909, 0.287581, 0.701261, 0.368233, 0.703063, 0.499874, 0.0787218, 0.710596, 0.23429, 0.413396, 0.132403, 0.229315, 0.561188, 0.201001, 0.25111, 0.290239, 0.905979, 0.110316, 0.499715, 0.486985, 0.455562, 0.514485, 0.584096, 0.877169, 0.0979117, 0.963374, 0.415713, 0.0709176, 0.805822, 0.821558, 0.973488, 0.520248, 0.688989, 0.475652, 0.971518, 0.506942, 0.989807, 0.656753, 0.970419, 0.180893, 0.61649, 0.0237053, 0.242801, 0.337562, 0.233161, 0.392797, 0.990294, 0.199084, 0.057447, 0.671158, 0.747917, 0.668573, 0.0453435, 0.176139, 0.910425, 0.923741, 0.00176215, 0.296061, 0.478025, 0.181573, 0.036164, 0.702192, 0.0313901, 0.113348, 0.58428, 0.46213, 0.221134, 0.932671, 0.764427, 0.415765, 0.449912, 0.529514, 0.227868, 0.796867, 0.314191, 0.197278, 0.187912, 0.845347, 0.26772, 0.384787, 0.163984, 0.577743, 0.497061, 0.135861, 0.676472, 0.960896, 0.784094, 0.033677, 0.380924, 0.530175, 0.16563, 0.0695512, 0.349952, 0.151569, 0.344746, 0.0157297, 0.223123, 0.0640751, 0.495658, 0.310503, 0.692738, 0.612032, 0.567547, 0.857889, 0.670522, 0.685647, 0.383845, 0.0197798, 0.136059, 0.574925, 0.691993, 0.667442, 0.180047, 0.873677, 0.360731, 0.651153, 0.958467, 0.645701, 0.975104, 0.560409, 0.745208, 0.00676351, 0.586728, 0.304043, 0.880682, 0.221041, 0.15046, 0.239141, 0.249258, 0.196454, 0.245214, 0.684362, 0.0960514, 0.970904, 0.609519, 0.952968, 0.899556, 0.3414, 0.932593, 0.475766, 0.364046, 0.117809, 0.676439, 0.286498, 0.429399, 0.601948, 0.148346, 0.68029, 0.645234, 0.771374, 0.52105, 0.883415, 0.34897, 0.102868, 0.202091, 0.613328, 0.804702, 0.764001, 0.921364, 0.202624, 0.277871, 0.152549, 0.382469, 0.275849, 0.910749, 0.710937, 0.561205, 0.416221, 0.536861, 0.322434, 0.525319, 0.200341, 0.686401, 0.319362, 0.351195, 0.153495, 0.420281, 0.337442, 0.273369, 0.320972, 0.804164, 0.308775, 0.120205, 0.286141, 0.275005, 0.642853, 0.363757, 0.233674, 0.212187, 0.630722, 0.377742, 0.0663688, 0.949916, 0.320369, 0.857173, 0.449386, 0.285215, 0.371606, 0.0249118, 0.432057, 0.866585, 0.0182799, 0.277595, 0.511672, 0.657466, 0.470694, 0.876574, 0.21915, 0.314551, 0.879418, 0.925947, 0.214252, 0.235867, 0.867334, 0.585355, 0.236343, 0.0142805, 0.709999, 0.117742, 0.292881, 0.336431, 0.788103, 0.110984, 0.702093, 0.137928, 0.244125, 0.3929, 0.855334, 0.219038, 0.456583, 0.689839, 0.111941, 0.471571, 0.291894, 0.638545, 0.292937, 0.497642, 0.597071, 0.74203, 0.723507, 0.459369, 0.662521, 0.745359, 0.0500914, 0.795045, 0.422697, 0.380711, 0.512343, 0.660764, 0.61535, 0.486847, 0.816118, 0.00446232, 0.834289, 0.0770077, 0.103084, 0.0484243, 0.214223, 0.166285, 0.62742, 0.0472456, 0.837196, 0.116198, 0.719539, 0.365788, 0.604195, 0.216756, 0.506324, 0.964941, 0.758881, 0.287923, 0.242855, 0.845738, 0.813966, 0.267799, 0.0919762, 0.925327, 0.951424, 0.0960476, 0.566278, 0.316084, 0.341953, 0.899627, 0.417059, 0.175193, 0.0221171, 0.312482, 0.686303, 0.0341158, 0.736901, 0.178985, 0.0339552, 0.8749, 0.599127, 0.196911, 0.00325751, 0.308875, 0.0649545, 0.969831, 0.964767, 0.202674, 0.889139, 0.968017, 0.8597, 0.595312, 0.901864, 0.557683, 0.536565, 0.386705, 0.393704, 0.739662, 0.021824, 0.288998, 0.872303, 0.202635, 0.333721, 0.0343226, 0.725161, 0.521797, 0.115912, 0.393879, 0.326283, 0.654359, 0.626146, 0.979221, 0.763695, 0.274333, 0.0993109, 0.300461, 0.535933, 0.354048, 0.417858, 0.969487, 0.391937, 0.0182954, 0.426009, 0.160548, 0.253601, 0.321055, 0.81261, 0.672767, 0.332482, 0.688431, 0.492724, 0.278023, 0.395292, 0.994346, 0.990038, 0.940437, 0.987702, 0.897383, 0.618082, 0.145988, 0.880935, 0.842363, 0.125139, 0.116849, 0.460842, 0.314178, 0.043245, 0.4142, 0.89175, 0.574041, 0.931528, 0.0336511, 0.56791, 0.71331, 0.895303, 0.891334, 0.68638, 0.327461, 0.548034, 0.543829, 0.684925, 0.253966, 0.102468, 0.520761, 0.0809975, 0.131117, 0.154081, 0.0567908, 0.648202, 0.0766852, 0.823876, 0.897105, 0.70522, 0.764765, 0.875013, 0.135578, 0.404278, 0.523236, 0.255683, 0.512845, 0.938046, 0.856716, 0.468823, 0.804831, 0.355443, 0.0695988, 0.98588, 0.466855, 0.369401, 0.86012, 0.909353, 0.749526, 0.953432, 0.231657, 0.0795231, 0.118461, 0.163754, 0.230921, 0.911695, 0.87489, 0.488234, 0.551272, 0.905874, 0.730349, 0.759735, 0.560559, 0.615156, 0.648054, 0.896412, 0.953343, 0.150539, 0.139232, 0.843768, 0.395228, 0.457077, 0.945858, 0.537195, 0.127711, 0.831302, 0.60837, 0.672555, 0.187146, 0.217717, 0.420651, 0.435428, 0.44673, 0.665936, 0.451481, 0.975464, 0.983256, 0.754789, 0.454815, 0.947708, 0.636952, 0.795338, 0.289539, 0.359336, 0.632853, 0.0136475, 0.298275, 0.745858, 0.686665, 0.843021, 0.213234, 0.14509, 0.0492505, 0.70451, 0.579702, 0.756544, 0.186221, 0.904439, 0.622428, 0.261804, 0.230037, 0.483166, 0.842863, 0.64908, 0.412451, 0.195573, 0.397488, 0.542667, 0.973308, 0.508496, 0.718492, 0.527095, 0.0736815, 0.49691, 0.258268, 0.112948, 0.0283789, 0.120366, 0.971176, 0.437164, 0.779575, 0.253816, 0.287045, 0.849195, 0.152545, 0.351503, 0.972983, 0.190885, 0.392457, 0.0147285, 0.219052, 0.0749137, 0.130611, 0.835668, 0.992439, 0.842531, 0.551067, 0.804734, 0.308835, 0.933938, 0.943624, 0.637959, 0.421375, 0.64275, 0.521519, 0.203072, 0.935172, 0.877969, 0.188652, 0.399836, 0.405885, 0.398434, 0.72053, 0.706255, 0.275481, 0.893655, 0.401233, 0.866799, 0.387276, 0.0657183, 0.442247, 0.609669, 0.576605, 0.344086, 0.44144, 0.913102, 0.398888, 0.968562, 0.573847, 0.0929474, 0.958679, 0.563598, 0.642657, 0.0945982, 0.482204, 0.904375, 0.994957, 0.802897, 0.502411, 0.84817, 0.963312, 0.445155, 0.916581, 0.249594, 0.963417, 0.257998, 0.506907, 0.432447, 0.645067, 0.993154, 0.35397, 0.291207, 0.805341, 0.784517, 0.0604069, 0.0838133, 0.27463, 0.0784429, 0.18857, 0.502832, 0.0992244, 0.912633, 0.117638, 0.590154, 0.666609, 0.0591217, 0.255805, 0.77494, 0.491763, 0.191678, 0.103678, 0.0159232, 0.152233, 0.715904, 0.679012, 0.7397, 0.090081, 0.21494, 0.507191, 0.174881, 0.571327, 0.104085, 0.152587, 0.641194, 0.928891, 0.570947, 0.971235, 0.229893, 0.319219, 0.805914, 0.221738, 0.28536, 0.821369, 0.839343, 0.417271, 0.801295, 0.610942, 0.669377, 0.162577, 0.402268, 0.127565, 0.404972, 0.849395, 0.657328, 0.94097, 0.398055, 0.170477, 0.705278, 0.988333, 0.251353, 0.792618, 0.486964, 0.815419, 0.341093, 0.0126532, 0.410235, 0.55881, 0.0887572, 0.763223, 0.313562, 0.631297, 0.245806, 0.577398, 0.0776973, 0.61505, 0.397992, 0.0350695, 0.648541, 0.727337, 0.936424, 0.517721, 0.111229, 0.913763, 0.592251, 0.00559626, 0.559341, 0.994376, 0.416614, 0.292548, 0.202029, 0.0229131, 0.480779, 0.657034, 0.742421, 0.532592, 0.702188, 0.749077, 0.859528, 0.310363, 0.426907, 0.797739, 0.488193, 0.813929, 0.38762, 0.28087, 0.735248, 0.0859911, 0.871615, 0.0778746, 0.924287, 0.738598, 0.615197, 0.758289, 0.353542, 0.609701, 0.884774, 0.418233, 0.321753, 0.364006, 0.123441, 0.391384, 0.828042, 0.199458, 0.0170972, 0.311899, 0.602985, 0.927549, 0.353119, 0.735897, 0.610741, 0.504227, 0.621832, 0.410354, 0.441631, 0.22674, 0.0221614, 0.826528, 0.100437, 0.610663, 0.852608, 0.24596, 0.596498, 0.289481, 0.401341, 0.0212896, 0.954353, 0.126383, 0.388487, 0.86353, 0.530459, 0.859083, 0.966511, 0.795838, 0.990489, 0.908049, 0.696744, 0.130696, 0.653053, 0.323704, 0.501594, 0.476333, 0.125171, 0.86815, 0.962872, 0.800502, 0.967837, 0.605911, 0.543959, 0.377618, 0.639163, 0.0913697, 0.944725, 0.388407, 0.836197, 0.608426, 0.00363455, 0.365028, 0.912473, 0.615499, 0.978168, 0.821505, 0.777072, 0.0574939, 0.0304424, 0.931179, 0.163111, 0.0839781, 0.361373, 0.618165, 0.387367, 0.499838, 0.0465583, 0.109394, 0.909945, 0.103316, 0.0633438, 0.928474, 0.151977, 0.727656, 0.270818, 0.330468, 0.498373, 0.352822, 0.744426, 0.94411, 0.805679, 0.562243, 0.731822, 0.682423, 0.445707, 0.714585, 0.215232, 0.611213, 0.53818, 0.120947, 0.0604359, 0.317274, 0.170441, 0.197338, 0.111559, 0.438467, 0.807278, 0.0341178, 0.661611, 0.104411, 0.553421, 0.940274, 0.567132, 0.756098, 0.9386, 0.096182, 0.928292, 0.687291, 0.269224, 0.0413027, 0.987283, 0.224203, 0.363323, 0.553496, 0.295024, 0.953036, 0.343879, 0.401579, 0.182595, 0.761384, 0.289736, 0.0878732, 0.478722, 0.643365, 0.116882, 0.172611, 0.771067, 0.222788, 0.909552, 0.744369, 0.0590302, 0.310517, 0.741929, 0.791745, 0.9682, 0.0820786, 0.711899, 0.0155918, 0.0208627, 0.879141, 0.602773, 0.377763, 0.961243, 0.858891, 0.548141, 0.472792, 0.46125, 0.000115944, 0.57931, 0.404151, 0.259395, 0.941644, 0.473876, 0.80341, 0.55139, 0.462402, 0.34294, 0.433134, 0.354584, 0.546915, 0.0810531, 0.971719, 0.100658, 0.11246, 0.646787, 0.82041, 0.535585, 0.093344, 0.811832, 0.0267991, 0.117219, 0.835432, 0.737747, 0.854519, 0.81372, 0.0821774, 0.787324, 0.644162, 0.445221, 0.413507, 0.830886, 0.0991985, 0.164089, 0.962671, 0.727787, 0.423429, 0.72256, 0.96671, 0.447832, 0.733062, 0.450399, 0.538211, 0.41307, 0.958651, 0.649948, 0.149403, 0.568052, 0.947765, 0.770423, 0.326301, 0.012517, 0.288425, 0.655866, 0.682063, 0.570179, 0.118495, 0.954162, 0.688585, 0.24033, 0.603098, 0.18776, 0.732199, 0.701395, 0.96712, 0.324475, 0.626275, 0.628983, 0.762816, 0.721907, 0.23464, 0.109477, 0.322375, 0.164724, 0.619672, 0.290712, 0.628885, 0.18272, 0.696498, 0.625579, 0.911595, 0.0962853, 0.751789, 0.0270006, 0.947332, 0.696595, 0.0363827, 0.74882, 0.481896, 0.431251, 0.877495, 0.284251, 0.15089, 0.0553474, 0.923986, 0.169439, 0.656966, 0.387588, 0.857278, 0.174838, 0.29654, 0.392849, 0.513939, 0.656664, 0.10045, 0.378594, 0.328626, 0.839265, 0.0391475, 0.224348, 0.0736716, 0.576007, 0.686996, 0.990826, 0.751486, 0.218788, 0.256935, 0.601321, 0.914903, 0.150567, 0.638969, 0.581219, 0.372882, 0.957224, 0.852324, 0.461872, 0.268735, 0.647408, 0.536274, 0.0426807, 0.617604, 0.015211, 0.950039, 0.0523193, 0.471668, 0.679202, 0.929816, 0.165255, 0.315943, 0.686393, 0.595025, 0.949278, 0.538595, 0.303422, 0.0740217, 0.501687, 0.731599, 0.571007, 0.119565, 0.65584, 0.598696, 0.63467, 0.776305, 0.562427, 0.313772, 0.928061, 0.450614, 0.960383, 0.855092, 0.992951, 0.0154827, 0.0779528, 0.730416, 0.322916, 0.233521, 0.0831729, 0.356272, 0.673177, 0.720174, 0.505821, 0.260221, 0.309618, 0.671653, 0.0610973, 0.444349, 0.688994, 0.709228, 0.410851, 0.406549, 0.437169, 0.256708, 0.562061, 0.270783, 0.349388, 0.0272204, 0.195832, 0.136048, 0.510488, 0.657729, 0.485408, 0.189335, 0.628932, 0.370586, 0.799635, 0.938806, 0.956182, 0.350723, 0.828468, 0.953248, 0.10736, 0.758159, 0.434707, 0.63785, 0.506331, 0.38516, 0.997164, 0.386713, 0.265962, 0.367723, 0.103524, 0.577439, 0.501831, 0.451098, 0.480994, 0.0405122, 0.174294, 0.837503, 0.341736, 0.388626, 0.381439, 0.712605, 0.876063, 0.175593, 0.00248847, 0.439806, 0.634979, 0.966749, 0.090913, 0.358547, 0.430334, 0.799127, 0.719711, 0.287019, 0.20864, 0.19331, 0.474922, 0.0376009, 0.0341275, 0.0874646, 0.982185, 0.676308, 0.748173, 0.942651, 0.111877, 0.631365, 0.85004, 0.495776, 0.199792, 0.602691, 0.827331, 0.996597, 0.183644, 0.486967, 0.324724, 0.555411, 0.690267, 0.693458, 0.35693, 0.244766, 0.44147, 0.385816, 0.975314, 0.992426, 0.744957, 0.764903, 0.849005, 0.861171, 0.692125, 0.456767, 0.508464, 0.776381, 0.450884, 0.51987, 0.345787, 0.256052, 0.779928, 0.0568505, 0.831422, 0.476321, 0.538945, 0.106334, 0.706746, 0.0853278, 0.183265, 0.1092, 0.0367683, 0.631005, 0.0128032, 0.405197, 0.292649, 0.834136, 0.933866, 0.0126851, 0.553596, 0.397056, 0.854291, 0.105993, 0.572903, 0.640369, 0.13378, 0.653865, 0.0556563, 0.73828, 0.623158, 0.541798, 0.470322, 0.313415, 0.777172, 0.462445, 0.736641, 0.15414, 0.759531, 0.330711, 0.522968, 0.288768, 0.387064, 0.259262, 0.6222, 0.845375, 0.753184, 0.955956, 0.582769, 0.882583, 0.605337, 0.793343, 0.842571, 0.119, 0.621153, 0.67241, 0.660594, 0.0719063, 0.802956, 0.0299832, 0.805772, 0.197772, 0.108709, 0.0596038, 0.361572, 0.109106, 0.0504262, 0.379068, 0.135993, 0.932123, 0.655711, 0.467488, 0.953651, 0.995183, 0.600547, 0.579435, 0.361683, 0.883898, 0.957224, 0.414232, 0.859719, 0.675841, 0.859598, 0.737493, 0.422068, 0.380431, 0.615861, 0.395193, 0.93744, 0.938338, 0.212604, 0.15612, 0.842522, 0.143106, 0.788143, 0.351586, 0.680701, 0.0892752, 0.172652, 0.377726, 0.931982, 0.426281, 0.410915, 0.330425, 0.564319, 0.490617, 0.654643, 0.00690133, 0.0815571, 0.522269, 0.024506, 0.0677792, 0.992591, 0.31626, 0.568166, 0.167079, 0.0595757, 0.779459, 0.486391, 0.935332, 0.128365, 0.999419, 0.919318, 0.88351, 0.374481, 0.641246, 0.540668, 0.546789, 0.919843, 0.888966, 0.253205, 0.082144, 0.0527624, 0.405415, 0.777987, 0.554768, 0.587669, 0.294094, 0.555695, 0.472644, 0.638553, 0.917157, 0.73733, 0.0576607, 0.521733, 0.515638, 0.149688, 0.76494, 0.691338, 0.853385, 0.396735, 0.135935, 0.0166418, 0.206788, 0.997894, 0.342916, 0.55061, 0.0754545, 0.0201314, 0.251448, 0.639895, 0.0700902, 0.766749, 0.561373, 0.153651, 0.797279, 0.555698, 0.694349, 0.0948617, 0.703878, 0.844539, 0.0398525, 0.559561, 0.812489, 0.915344, 0.489303, 0.109182, 0.679305, 0.76255, 0.9383, 0.253246, 0.680216, 0.0110565, 0.618663, 0.689689, 0.163132, 0.0493963, 0.49011, 0.958381, 0.983173, 0.855168, 0.760666, 0.178369, 0.00199092, 0.607146, 0.279149, 0.599521, 0.827971, 0.237027, 0.351067, 0.296445, 0.372319, 0.256365, 0.313126, 0.381475, 0.132621, 0.855192, 0.786922, 0.619528, 0.628451, 0.587853, 0.0535287, 0.761674, 0.545655, 0.14277, 0.934656, 0.473947, 0.440523, 0.63071, 0.494316, 0.726436, 0.769289, 0.668158, 0.39968, 0.179117, 0.83941, 0.0741787, 0.196486, 0.529427, 0.65171, 0.565489, 0.091988, 0.803926, 0.326504, 0.469101, 0.164344, 0.700227, 0.401462, 0.316418, 0.956057, 0.591453, 0.951575, 0.995776, 0.51148, 0.700014, 0.960786, 0.614441, 0.429915, 0.660289, 0.025473, 0.93263, 0.700426, 0.744124, 0.378079, 0.318421, 0.612451, 0.905505, 0.894334, 0.969661, 0.76068, 0.111572, 0.995026, 0.866487, 0.6214, 0.450522, 0.807505, 0.450048, 0.0979121, 0.969788, 0.046331, 0.480078, 0.0681263, 0.37238, 0.331279, 0.774952, 0.886629, 0.0322941, 0.658397, 0.963058, 0.731739, 0.436177, 0.973296, 0.306804, 0.214159, 0.938776, 0.293845, 0.474659, 0.0141862, 0.0132554, 0.339886, 0.798059, 0.218099, 0.311044, 0.889401, 0.47282, 0.482657, 0.17873, 0.903616, 0.947343, 0.384226, 0.437886, 0.891671, 0.168244, 0.0821683, 0.918306, 0.68467, 0.27137, 0.175523, 0.986191, 0.99138, 0.306749, 0.992668, 0.655103, 0.441743, 0.964043, 0.515631, 0.75838, 0.2101, 0.25686, 0.237985, 0.629618, 0.0135306, 0.0943133, 0.611178, 0.329292, 0.654048, 0.681409, 0.391284, 0.611702, 0.854192, 0.395516, 0.124073, 0.544719, 0.0211423, 0.944481, 0.469952, 0.73843, 0.995262, 0.189854, 0.726325, 0.152935, 0.420038, 0.0152348, 0.297722, 0.21551, 0.856999, 0.429922, 0.733841, 0.256103, 0.1931, 0.503399, 0.930168, 0.668618, 0.219196, 0.515633, 0.530485, 0.542396, 0.572251, 0.731562, 0.483968, 0.380541, 0.380553, 0.0215347, 0.883127, 0.0273358, 0.89078, 0.916494, 0.454347, 0.527829, 0.507785, 0.0478597, 0.563378, 0.616642, 0.0074503, 0.290186, 0.602187, 0.179113, 0.961316, 0.928421, 0.391013, 0.590035, 0.0624214, 0.0821742, 0.770818, 0.152966, 0.524695, 0.113039, 0.988545, 0.303614, 0.0996593, 0.482933, 0.529027, 0.393564, 0.243453, 0.864431, 0.544316, 0.757896, 0.57916, 0.398254, 0.558485, 0.601869, 0.468, 0.713684, 0.126366, 0.782666, 0.854537, 0.0155665, 0.496068, 0.680507, 0.529421, 0.717767, 0.24828, 0.664336, 0.900595, 0.630351, 0.14928, 0.714254, 0.251655, 0.563342, 0.402903, 0.715264, 0.207282, 0.918101, 0.592773, 0.0692932, 0.0514421, 0.0780173, 0.873395, 0.204864, 0.75043, 0.159181, 0.386723, 0.698629, 0.365307, 0.384159, 0.742745, 0.229768, 0.801563, 0.462753, 0.700254, 0.0858789, 0.242187, 0.933512, 0.477361, 0.0657471, 0.944888, 0.0747551, 0.203376, 0.0691697, 0.538435, 0.829061, 0.65918, 0.471535, 0.44385, 0.607346, 0.926966, 0.513643, 0.914418, 0.125999, 0.0390181, 0.488024, 0.640222, 0.0809229, 0.0292556, 0.886372, 0.15527, 0.434866, 0.78704, 0.050664, 0.169771, 0.0945192, 0.00428554, 0.527147, 0.714936, 0.511054, 0.216053, 0.234769, 0.0535851, 0.450229, 0.939208, 0.428055, 0.909624, 0.0451906, 0.838102, 0.0949935, 0.526808, 0.100957, 0.599204, 0.20424, 0.323692, 0.169839, 0.703684, 0.116666, 0.0306695, 0.365019, 0.381662, 0.104124, 0.915699, 0.886522, 0.271398, 0.281559, 0.0668022, 0.402649, 0.430309, 0.395822, 0.64094, 0.133712, 0.639176, 0.856029, 0.72744, 0.208855, 0.720241, 0.412243, 0.875964, 0.519342, 0.756396, 0.60035, 0.63725, 0.893206, 0.313324, 0.420214, 0.334377, 0.0604622, 0.717698, 0.183966, 0.504313, 0.763231, 0.619038, 0.866789, 0.171457, 0.919811, 0.424679, 0.885576, 0.0701226, 0.123179, 0.396825, 0.649088, 0.848186, 0.316389, 0.362565, 0.865504, 0.782406, 0.921865, 0.552542, 0.753322, 0.0596514, 0.701613, 0.640246, 0.240584, 0.248258, 0.277888, 0.196749, 0.383629, 0.235176, 0.624186, 0.0494645, 0.56708, 0.264282, 0.916124, 0.953176, 0.0732884, 0.0341454, 0.384885, 0.815925, 0.289558, 0.0723223, 0.0782428, 0.354908, 0.838946, 0.829841, 0.947262, 0.304285, 0.806128, 0.0247178, 0.236912, 0.989356, 0.842223, 0.87976, 0.487751, 0.512436, 0.895716, 0.027243, 0.676653, 0.662825, 0.810001, 0.585047, 0.860084, 0.946514, 0.00889925, 0.761715, 0.601329, 0.949837, 0.889462, 0.669818, 0.61214, 0.443721, 0.526107, 0.765669, 0.449521, 0.419699, 0.345418, 0.0806505, 0.440493, 0.13885, 0.156493, 0.292409, 0.396526, 0.521697, 0.929818, 0.954097, 0.868602, 0.312119, 0.977433, 0.898196, 0.743006, 0.902996, 0.785161, 0.393288, 0.902601, 0.130492, 0.0191844, 0.232752, 0.509778, 0.123395, 0.622873, 0.277308, 0.69595, 0.716329, 0.961681, 0.946271, 0.893484, 0.0615568, 0.417046, 0.236197, 0.0636924, 0.641134, 0.969274, 0.251438, 0.784564, 0.271554, 0.359259, 0.123831, 0.270473, 0.901638, 0.950994, 0.160282, 0.629517, 0.916716, 0.639394, 0.225, 0.520646, 0.577397, 0.424217, 0.481537, 0.209618, 0.980867, 0.973294, 0.106634, 0.349323, 0.692033, 0.728899, 0.247615, 0.912327, 0.644278, 0.258974, 0.741965, 0.437609, 0.42484, 0.0738021, 0.311847, 0.548849, 0.110502, 0.954575, 0.111587, 0.947695, 0.465286, 0.0231469, 0.520316, 0.0585843, 0.450655, 0.27101, 0.809019, 0.559178, 0.105629, 0.772859, 0.416773, 0.511276, 0.0302692, 0.909653, 0.84874, 0.561421, 0.331931, 0.317488, 0.71822, 0.334825, 0.189305, 0.809674, 0.383952, 0.42976, 0.163802, 0.364921, 0.554067, 0.854067, 0.895681, 0.224681, 0.0461515, 0.210409, 0.405695, 0.210234, 0.896022, 0.416252, 0.379688, 0.0404849, 0.262162, 0.736689, 0.929544, 0.0224726, 0.165999, 0.404505, 0.856974, 0.302964, 0.245277, 0.221148, 0.116983, 0.487788, 0.478373, 0.323024, 0.99257, 0.554101, 0.743092, 0.109451, 0.71124, 0.809317, 0.386675, 0.88938, 0.987189, 0.0506929, 0.736438, 0.277834, 0.728736, 0.812051, 0.588502, 0.496814, 0.327882, 0.350621, 0.442151, 0.800165, 0.959016, 0.199712, 0.288561, 0.625356, 0.0663741, 0.16253, 0.540014, 0.0530989, 0.725205, 0.666362, 0.669788, 0.75412, 0.560063, 0.381198, 0.46331, 0.69749, 0.880856, 0.11325, 0.56145, 0.551666, 0.303476, 0.930746, 0.493665, 0.0393743, 0.208011, 0.0926338, 0.085625, 0.541639, 0.0913621, 0.334134, 0.564333, 0.248172, 0.80962, 0.852913, 0.654567, 0.718814, 0.372071, 0.938999, 0.511519, 0.515802, 0.997772, 0.785145, 0.11178, 0.0164981, 0.79932, 0.0111799, 0.210068, 0.81141, 0.704657, 0.697119, 0.00637811, 0.127444, 0.783655, 0.181962, 0.488771, 0.180929, 0.742406, 0.951332, 0.442068, 0.781665, 0.953388, 0.883542, 0.761271, 0.519147, 0.351601, 0.330865, 0.425916, 0.506969, 0.2123, 0.678322, 0.069484, 0.376491, 0.0808396, 0.272536, 0.639588, 0.0474258, 0.475981, 0.430449, 0.105085, 0.178061, 0.179986, 0.669677, 0.613189, 0.512817, 0.00236322, 0.986869, 0.528479, 0.125615, 0.605176, 0.415238, 0.419945, 0.157577, 0.0262994, 0.0123918, 0.524661, 0.671977, 0.084633, 0.800645, 0.503123, 0.155638, 0.454508, 0.651908, 0.66678, 0.565682, 0.432033, 0.326811, 0.0729654, 0.47984, 0.481572, 0.199118, 0.736326, 0.665823, 0.391671, 0.408702, 0.209706, 0.459449, 0.141601, 0.946343, 0.728172, 0.711024, 0.948224, 0.670107, 0.905047, 0.779312, 0.603412, 0.558603, 0.115324, 0.72896, 0.343519, 0.724847, 0.0545496, 0.172527, 0.460869, 0.154799, 0.777705, 0.768706, 0.127243, 0.0575518, 0.56434, 0.875226, 0.0368527, 0.581871, 0.836586, 0.0309622, 0.122295, 0.764266, 0.507662, 0.0430015, 0.54627, 0.968345, 0.896402, 0.988119, 0.651644, 0.469269, 0.860165, 0.0467171, 0.119166, 0.382994, 0.775127, 0.330595, 0.00564631, 0.792798, 0.27756, 0.635727, 0.969351, 0.339394, 0.386299, 0.50311, 0.501594, 0.450898, 0.129224, 0.897076, 0.569154, 0.859665, 0.0457243, 0.786076, 0.815472, 0.401849, 0.0443366, 0.667972, 0.858227, 0.0339023, 0.38162, 0.364467, 0.546809, 0.792158, 0.896732, 0.338401, 0.790985, 0.709323, 0.389329, 0.412661, 0.267131, 0.570449, 0.41529, 0.455563, 0.584359, 0.361192, 0.689631, 0.148885, 0.565805, 0.912932, 0.799891, 0.140446, 0.490216, 0.46693, 0.731235, 0.0714677, 0.87303, 0.51681, 0.0520606, 0.93384, 0.724988, 0.34197, 0.593085, 0.725204, 0.528663, 0.542755, 0.545362, 0.589811, 0.974497, 0.933991, 0.302597, 0.612706, 0.235915, 0.858704, 0.558845, 0.531967, 0.390625, 0.137459, 0.873559, 0.400807, 0.012224, 0.484347, 0.335695, 0.532124, 0.792587, 0.379314, 0.0136789, 0.427216, 0.549887, 0.132834, 0.552848, 0.202254, 0.371912, 0.358651, 0.58261, 0.436477, 0.224322, 0.701961, 0.699412, 0.0974816, 0.691123, 0.652295, 0.0158443, 0.487528, 0.438068, 0.227273, 0.513123, 0.097225, 0.945677, 0.643387, 0.610069, 0.814074, 0.728981, 0.176358, 0.187068, 0.417991, 0.0292344, 0.854177, 0.858445, 0.952635, 0.0906597, 0.54569, 0.718818, 0.99294, 0.228028, 0.0292397, 0.61293, 0.275814, 0.512207, 0.163246, 0.0122796, 0.031737, 0.341767, 0.216047, 0.139495, 0.188192, 0.621195, 0.797469, 0.104665, 0.731331, 0.975936, 0.889107, 0.135412, 0.736147, 0.834163, 0.905084, 0.22627, 0.80387, 0.0210373, 0.661656, 0.345425, 0.939666, 0.421124, 0.701128, 0.374584, 0.10811, 0.757839, 0.49641, 0.657283, 0.132898, 0.853988, 0.108884, 0.692365, 0.574381, 0.416176, 0.317909, 0.13654, 0.390142, 0.722439, 0.0488129, 0.635142, 0.783404, 0.0589331, 0.0413732, 0.16019, 0.846985, 0.968052, 0.84166, 0.549916, 0.300047, 0.423671, 0.298409, 0.581053, 0.924904, 0.701728, 0.20165, 0.507981, 0.70413, 0.615116, 0.712667, 0.26879, 0.471878, 0.0874282, 0.731852, 0.87302, 0.80928, 0.694741, 0.652464, 0.465504, 0.395786, 0.160542, 0.598191, 0.429329, 0.704256, 0.374392, 0.746214, 0.0233449, 0.654639, 0.0349414, 0.00683532, 0.278451, 0.796978, 0.357104, 0.0156055, 0.158203, 0.871539, 0.469787, 0.132897, 0.349076, 0.73376, 0.0119042, 0.171374, 0.695413, 0.325416, 0.642164, 0.251904, 0.87876, 0.456654, 0.666775, 0.6687, 0.520977, 0.377512, 0.994112, 0.320774, 0.360039, 0.919251, 0.491349, 0.587866, 0.70591, 0.899371, 0.366001, 0.858993, 0.149257, 0.946509, 0.165769, 0.571561, 0.857243, 0.324397, 0.799916, 0.119903, 0.38724, 0.519052, 0.331488, 0.560134, 0.852444, 0.940917, 0.313066, 0.0774066, 0.928305, 0.974356, 0.910505, 0.850625, 0.365606, 0.971177, 0.0528662, 0.362559, 0.509423, 0.875696, 0.299147, 0.868427, 0.0039314, 0.34909, 0.0799048, 0.834776, 0.883081, 0.49742, 0.304393, 0.60627, 0.195296, 0.904527, 0.492664, 0.678657, 0.794073, 0.96278, 0.0713241, 0.519281, 0.886132, 0.958058, 0.0883916, 0.664776, 0.882585, 0.113846, 0.0913884, 0.988083, 0.742503, 0.203616, 0.170706, 0.342501, 0.812241, 0.479815, 0.287091, 0.797085, 0.173639, 0.39054, 0.573799, 0.429264, 0.464452, 0.793, 0.837476, 0.949658, 0.16387, 0.847986, 0.589639, 0.348009, 0.621442, 0.466354, 0.82176, 0.21911, 0.496997, 0.410376, 0.251014, 0.221496, 0.583801, 0.0422436, 0.746097, 0.936768, 0.0179766, 0.281008, 0.375702, 0.344484, 0.0107574, 0.837914, 0.0589023, 0.556087, 0.596397, 0.498273, 0.639891, 0.101969, 0.443676, 0.316228, 0.58433, 0.280776, 0.823466, 0.476449, 0.0868284, 0.503147, 0.7468, 0.734962, 0.485219, 0.280746, 0.0357745, 0.0618097, 0.523439, 0.18097, 0.120984, 0.878572, 0.174271, 0.942672, 0.856728, 0.0185821, 0.607996, 0.439849, 0.983726, 0.340202, 0.056741, 0.228597, 0.168307, 0.777143, 0.421289, 0.479623, 0.0292844, 0.700163, 0.946515, 0.663362, 0.0439645, 0.939458, 0.448791, 0.128492, 0.836196, 0.679991, 0.225344, 0.490306, 0.225636, 0.297498, 0.357109, 0.325808, 0.784908, 0.989303, 0.996555, 0.651505, 0.162203, 0.397522, 0.00785712, 0.824634, 0.931041, 0.841834, 0.0629619, 0.347198, 0.279424, 0.782931, 0.216024, 0.781053, 0.610348, 0.106273, 0.310082, 0.496607, 0.167085, 0.237712, 0.51644, 0.655786, 0.157309, 0.419842, 0.866477, 0.0680756, 0.987071, 0.237696, 0.0920581, 0.162765, 0.869637, 0.00581341, 0.561312, 0.37681, 0.918244, 0.923747, 0.345497, 0.118504, 0.954044, 0.486536, 0.705112, 0.0107289, 0.0997009, 0.584292, 0.814548, 0.295217, 0.422746, 0.638047, 0.991411, 0.0414895, 0.264283, 0.92863, 0.537146, 0.837495, 0.063343, 0.0125096, 0.465855, 0.222677, 0.211889, 0.321458, 0.14737, 0.139611, 0.930517, 0.189931, 0.204486, 0.105795, 0.344059, 0.649703, 0.483116, 0.833087, 0.931833, 0.873272, 0.488936, 0.729881, 0.0375505, 0.388399, 0.763125, 0.165755, 0.0216007, 0.770192, 0.272306, 0.216977, 0.370487, 0.828848, 0.645115, 0.498873, 0.419112, 0.578879, 0.766108, 0.457062, 0.566512, 0.0419029, 0.0249131, 0.959833, 0.973717, 0.471592, 0.232222, 0.238165, 0.97537, 0.489763, 0.998287, 0.680591, 0.207046, 0.429929, 0.169956, 0.670421, 0.73972, 0.353622, 0.441594, 0.419911, 0.263872, 0.0498089, 0.813765, 0.470915, 0.819718, 0.449614, 0.946796, 0.591326, 0.939916, 0.679555, 0.92406, 0.144002, 0.0820027, 0.924349, 0.617001, 0.985386, 0.686784, 0.505408, 0.566169, 0.164351, 0.766942, 0.0591424, 0.158236, 0.840936, 0.771826, 0.570361, 0.384152, 0.223917, 0.992899, 0.567184, 0.549263, 0.179237, 0.633187, 0.101612, 0.0585411, 0.485621, 0.438939, 0.866184, 0.156396, 0.718994, 0.365662, 0.752446, 0.906147, 0.107901, 0.214145, 0.761709, 0.66301, 0.859022, 0.312942, 0.209947, 0.78767, 0.70115, 0.63421, 0.808469, 0.218522, 0.899243, 0.338673, 0.402534, 0.643909, 0.953206, 0.145768, 0.877047, 0.195736, 0.0413286, 0.854383, 0.899998, 0.571806, 0.412295, 0.141662, 0.26884, 0.615193, 0.102438, 0.4244, 0.298273, 0.464611, 0.909593, 0.939816, 0.768945, 0.652107, 0.448032, 0.991791, 0.659261, 0.0223205, 0.537184, 0.781411, 0.223751, 0.770998, 0.435699, 0.395948, 0.363257, 0.848033, 0.987993, 0.403496, 0.905348, 0.64754, 0.937878, 0.0317852, 0.372872, 0.855145, 0.863334, 0.00879159, 0.353361, 0.390425, 0.27679, 0.61777, 0.301791, 0.0775752, 0.993317, 0.433401, 0.964675, 0.652717, 0.918207, 0.385286, 0.730553, 0.146572, 0.367731, 0.123737, 0.506913, 0.783507, 0.0319109, 0.577727, 0.641786, 0.918864, 0.0881872, 0.217138, 0.151036, 0.652563, 0.919869, 0.265934, 0.064997, 0.527071, 0.519617, 0.648192, 0.438752, 0.0952445, 0.174509, 0.579974, 0.933857, 0.038362, 0.379932, 0.609649, 0.804567, 0.821148, 0.556734, 0.890532, 0.560089, 0.74925, 0.578395, 0.229507, 0.582763, 0.739994, 0.18902, 0.162725, 0.964016, 0.63295, 0.781545, 0.350326, 0.149459, 0.594382, 0.833603, 0.323194, 0.665038, 0.193284, 0.910884, 0.0383404, 0.953567, 0.599549, 0.0964137, 0.758202, 0.98538, 0.19992, 0.242626, 0.185377, 0.399657, 0.16926, 0.621697, 0.138662, 0.585958, 0.372343, 0.705057, 0.535386, 0.876265, 0.221161, 0.679675, 0.70328, 0.14226, 0.223886, 0.492413, 0.328784, 0.0019295, 0.0618598, 0.32195, 0.792413, 0.974461, 0.258373, 0.546162, 0.638832, 0.193545, 0.718397, 0.297724, 0.87448, 0.281254, 0.401263, 0.732132, 0.840846, 0.51548, 0.477188, 0.520529, 0.0574211, 0.879896, 0.825221, 0.823569, 0.450494, 0.643669, 0.738295, 0.637289, 0.747925, 0.1375, 0.584215, 0.486092, 0.980283, 0.834996, 0.0355096, 0.000402285, 0.39892, 0.475797, 0.677773, 0.903426, 0.786041, 0.948753, 0.758994, 0.300903, 0.948204, 0.980958, 0.24324, 0.224714, 0.476874, 0.998334, 0.253935, 0.695822, 0.771502, 0.260869, 0.404175, 0.613603, 0.412185, 0.482095, 0.701283, 0.399169, 0.393656, 0.7898, 0.373355, 0.349326, 0.0763198, 0.755844, 0.970799, 0.702633, 0.9694, 0.806628, 0.283078, 0.635329, 0.261826, 0.613068, 0.427522, 0.906394, 0.838702, 0.0584486, 0.93759, 0.279747, 0.613374, 0.726184, 0.570557, 0.132885, 0.157892, 0.661021, 0.624447, 0.238375, 0.265631, 0.210045, 0.20074, 0.554434, 0.462112, 0.961678, 0.774916, 0.828709, 0.160807, 0.387183, 0.854869, 0.772969, 0.800111, 0.146033, 0.430107, 0.473189, 0.871752, 0.414768, 0.63419, 0.371186, 0.169567, 0.113154, 0.785562, 0.485109, 0.640857, 0.438677, 0.088096, 0.861557, 0.669475, 0.0899299, 0.68428, 0.953528, 0.944065, 0.318532, 0.568949, 0.97022, 0.241968, 0.438976, 0.706167, 0.484883, 0.723827, 0.649034, 0.98121, 0.462545, 0.718383, 0.397894, 0.330632, 0.337969, 0.235948, 0.152374, 0.987381, 0.0938732, 0.30328, 0.891918, 0.271634, 0.277232, 0.386458, 0.299482, 0.0179493, 0.530283, 0.25965, 0.76149, 0.792983, 0.764066, 0.811147, 0.579048, 0.285016, 0.732108, 0.0827798, 0.529541, 0.587462, 0.345881, 0.0788342, 0.766859, 0.777163, 0.0787395, 0.318288, 0.104054, 0.901717, 0.224164, 0.831469, 0.958816, 0.571994, 0.20373, 0.446843, 0.103416, 0.469303, 0.585657, 0.528659, 0.589496, 0.741476, 0.223181, 0.576454, 0.280938, 0.942264, 0.78115, 0.906357, 0.497306, 0.997612, 0.128139, 0.520737, 0.813598, 0.562275, 0.988924, 0.391404, 0.44395, 0.627078, 0.594139, 0.299362, 0.151443, 0.840365, 0.280755, 0.212267, 0.401839, 0.605054, 0.57246, 0.111736, 0.591323, 0.34224, 0.684317, 0.581794, 0.996372, 0.255064, 0.327143, 0.0313873, 0.502993, 0.573032, 0.0913457, 0.7693, 0.460883, 0.609705, 0.508603, 0.32091, 0.665962, 0.592396, 0.919613, 0.8542, 0.288894, 0.884967, 0.990343, 0.240901, 0.0860902, 0.722785, 0.281888, 0.502922, 0.430888, 0.196899, 0.865514, 0.830811, 0.345966, 0.620081, 0.363402, 0.61164, 0.331896, 0.493554, 0.759704, 0.0400446, 0.487329, 0.825074, 0.462664, 0.95134, 0.585477, 0.0819551, 0.024318, 0.277774, 0.909848, 0.313303, 0.636655, 0.873505, 0.286556, 0.333964, 0.736289, 0.381869, 0.770467, 0.804935, 0.178941, 0.888171, 0.918411, 0.44095, 0.617121, 0.951869, 0.581627, 0.691829, 0.895297, 0.196821, 0.688995, 0.860461, 0.618282, 0.280913, 0.641262, 0.0850014, 0.582677, 0.352706, 0.132268, 0.195049, 0.0168379, 0.894165, 0.905649, 0.227368, 0.214574, 0.794269, 0.479328, 0.286995, 0.388914, 0.171636, 0.169882, 0.136362, 0.052331, 0.202716, 0.624452, 0.378773, 0.314778, 0.23387, 0.00301555, 0.72689, 0.737593, 0.128541, 0.473689, 0.91113, 0.0552363, 0.839909, 0.776099, 0.925945, 0.977754, 0.594462, 0.840629, 0.829297, 0.0733164, 0.629317, 0.807152, 0.487663, 0.752347, 0.19413, 0.675738, 0.0783495, 0.735455, 0.451829, 0.243855, 0.223202, 0.635667, 0.598798, 0.396199, 0.74669, 0.977885, 0.634633, 0.0819732, 0.552457, 0.834431, 0.928032, 0.560666, 0.450888, 0.309971, 0.899419, 0.0437204, 0.545207, 0.439469, 0.126718, 0.78781, 0.332239, 0.805375, 0.470927, 0.430111, 0.922911, 0.556821, 0.71086, 0.522538, 0.59139, 0.374755, 0.933486, 0.711548, 0.963196, 0.153702, 0.11815, 0.989622, 0.0472076, 0.641319, 0.384259, 0.261419, 0.958408, 0.479235, 0.339818, 0.981219, 0.432372, 0.610901, 0.712508, 0.094701, 0.660963, 0.0658332, 0.937364, 0.741942, 0.157425, 0.603666, 0.847272, 0.673403, 0.737276, 0.735831, 0.908019, 0.0509612, 0.325314, 0.474769, 0.979748, 0.758369, 0.460515, 0.25145, 0.970487, 0.862656, 0.364827, 0.731362, 0.466785, 0.648431, 0.537698, 0.187376, 0.798932, 0.635509, 0.805815, 0.240966, 0.226872, 0.505037, 0.863647, 0.701438, 0.85284, 0.414368, 0.501964, 0.608772, 0.0189699, 0.540045, 0.863871, 0.105737, 0.355939, 0.822397, 0.391781, 0.913539, 0.461184, 0.416663, 0.609891, 0.967796, 0.764992, 0.888574, 0.849941, 0.736768, 0.183908, 0.937005, 0.805695, 0.861486, 0.832524, 0.729004, 0.765262, 0.520346, 0.115059, 0.870998, 0.361088, 0.513614, 0.842225, 0.0881088, 0.292429, 0.137908, 0.356444, 0.599227, 0.301219, 0.0408697, 0.480646, 0.681125, 0.189021, 0.685976, 0.945816, 0.260809, 0.10544, 0.367217, 0.305965, 0.352297, 0.531191, 0.041613, 0.37311, 0.0421497, 0.190846, 0.569045, 0.0161333, 0.50502, 0.288929, 0.0668288, 0.194221, 0.338985, 0.815525, 0.287069, 0.306393, 0.651041, 0.840396, 0.865013, 0.64269, 0.992619, 0.779065, 0.853414, 0.278578, 0.855896, 0.0876856, 0.658969, 0.199614, 0.0981758, 0.678445, 0.783786, 0.936603, 0.551777, 0.523649, 0.163702, 0.70052, 0.945307, 0.156769, 0.235407, 0.355036, 0.954613, 0.587805, 0.347914, 0.325659, 0.952508, 0.718319, 0.332959, 0.503972, 0.770691, 0.571798, 0.211117, 0.872724, 0.225197, 0.343215, 0.172587, 0.778286, 0.941321, 0.846916, 0.634631, 0.502396, 0.696883, 0.320475, 0.00211559, 0.48145, 0.150909, 0.237578, 0.349145, 0.212481, 0.124726, 0.129041, 0.151703, 0.895788, 0.667502, 0.201572, 0.786089, 0.148381, 0.152508, 0.312843, 0.0899695, 0.914312, 0.62648, 0.105145, 0.96813, 0.376314, 0.155949, 0.956938, 0.822807, 0.582056, 0.589151, 0.743151, 0.501574, 0.653275, 0.0697762, 0.54845, 0.905452, 0.612918, 0.398713, 0.21043, 0.497297, 0.629791, 0.491014, 0.25102, 0.324733, 0.876637, 0.221174, 0.164433, 0.304469, 0.207277, 0.666364, 0.209962, 0.854519, 0.544456, 0.380603, 0.515054, 0.116261, 0.721621, 0.263809, 0.745411, 0.94723, 0.0715318, 0.0988318, 0.834298, 0.678132, 0.257814, 0.18577, 0.655749, 0.874559, 0.475069, 0.777368, 0.920175, 0.433812, 0.392358, 0.967079, 0.094701, 0.542215, 0.516423, 0.162233, 0.280253, 0.782812, 0.483115, 0.809369, 0.929462, 0.504624, 0.920034, 0.188641, 0.452626, 0.509906, 0.070377, 0.908057, 0.042267, 0.877117, 0.918825, 0.787805, 0.997339, 0.195188, 0.908248, 0.0861618, 0.199936, 0.895063, 0.476756, 0.115844, 0.0640491, 0.392435, 0.494361, 0.509511, 0.293985, 0.0741485, 0.0754649, 0.719831, 0.281555, 0.787704, 0.353963, 0.961797, 0.345935, 0.0333126, 0.575006, 0.1463, 0.49132, 0.215853, 0.233856, 0.372685, 0.705419, 0.745246, 0.189824, 0.893101, 0.147042, 0.742171, 0.487025, 0.968412, 0.902037, 0.34699, 0.103765, 0.163472, 0.351792, 0.408973, 0.987175, 0.749758, 0.708926, 0.0282582, 0.675637, 0.877405, 0.440848, 0.46761, 0.404586, 0.498625, 0.741978, 0.890635, 0.606071, 0.132024, 0.521916, 0.274432, 0.636984, 0.177254, 0.854536, 0.590174, 0.0104405, 0.751678, 0.838834, 0.531277, 0.396504, 0.334877, 0.983738, 0.820574, 0.452551, 0.111009, 0.923228, 0.919036, 0.000190886, 0.640469, 0.694707, 0.825114, 0.373546, 0.396162, 0.25915, 0.699044, 0.469011, 0.351018, 0.751517, 0.0135174, 0.499949, 0.301832, 0.860023, 0.106183, 0.552073, 0.645349, 0.766318, 0.296837, 0.0505084, 0.780736, 0.263128, 0.115076, 0.43891, 0.362991, 0.500796, 0.154705, 0.69483, 0.599993, 0.0731594, 0.578293, 0.985218, 0.943442, 0.246202, 0.085457, 0.974608, 0.740269, 0.13506, 0.532824, 0.126926, 0.205299, 0.162119, 0.630172, 0.785893, 0.084874, 0.354642, 0.957355, 0.575205, 0.816908, 0.275245, 0.657655, 0.709045, 0.0740773, 0.072105, 0.250221, 0.454954, 0.787529, 0.852794, 0.221947, 0.723994, 0.525126, 0.191795, 0.10192, 0.65747, 0.595842, 0.865054, 0.129639, 0.780963, 0.454539, 0.471482, 0.433569, 0.150568, 0.0643218, 0.864143, 0.405488, 0.985996, 0.9868, 0.840035, 0.493108, 0.578922, 0.716618, 0.521337, 0.43809, 0.168781, 0.685721, 0.241985, 0.508433, 0.87115, 0.73972, 0.52165, 0.5967, 0.682724, 0.424041, 0.45458, 0.11836, 0.640508, 0.00572994, 0.423046, 0.55627, 0.640683, 0.932487, 0.457145, 0.797803, 0.936772, 0.245257, 0.516073, 0.842246, 0.768496, 0.820881, 0.84557, 0.257549, 0.201377, 0.787107, 0.843035, 0.741106, 0.950916, 0.0673781, 0.764331, 0.392215, 0.867684, 0.208666, 0.767705, 0.807338, 0.955783, 0.911108, 0.821371, 0.754469, 0.118085, 0.483238, 0.752593, 0.78099, 0.716943, 0.290101, 0.667643, 0.058115, 0.865124, 0.494295, 0.599276, 0.729424, 0.563727, 0.120082, 0.471502, 0.525764, 0.363146, 0.796546, 0.194646, 0.335098, 0.593727, 0.993955, 0.193552, 0.282172, 0.344447, 0.188144, 0.367341, 0.369837, 0.167983, 0.231762, 0.309907, 0.569787, 0.783164, 0.0142529, 0.731876, 0.686713, 0.429142, 0.163084, 0.685502, 0.152035, 0.340327, 0.653107, 0.854134, 0.545174, 0.280415, 0.246839, 0.910729, 0.44662, 0.37323, 0.933784, 0.11956, 0.753155, 0.41805, 0.727492, 0.296936, 0.114884, 0.653231, 0.552082, 0.0770612, 0.802197, 0.543453, 0.308937, 0.752614, 0.0418398, 0.840589, 0.239802, 0.832301, 0.621549, 0.495012, 0.775235, 0.84562, 0.790266, 0.875287, 0.842682, 0.782191, 0.207096, 0.434501, 0.16516, 0.25881, 0.882546, 0.0520791, 0.910952, 0.550428, 0.979296, 0.822338, 0.693308, 0.010686, 0.386402, 0.867304, 0.939875, 0.560713, 0.270201, 0.443515, 0.119218, 0.391537, 0.792742, 0.230883, 0.612542, 0.578704, 0.6343, 0.00493186, 0.962376, 0.814058, 0.128649, 0.159273, 0.126206, 0.950942, 0.0415704, 0.686412, 0.843708, 0.384128, 0.704849, 0.325643, 0.88536, 0.107272, 0.934188, 0.859817, 0.81426, 0.483232, 0.343538, 0.186065, 0.238609, 0.773701, 0.976711, 0.554868, 0.445094, 0.463711, 0.772335, 0.37477, 0.335995, 0.448906, 0.888065, 0.892437, 0.462752, 0.275714, 0.848819, 0.728886, 0.298102, 0.35338, 0.137639, 0.135059, 0.906505, 0.238063, 0.805348, 0.126255, 0.920968, 0.930728, 0.551014, 0.920872, 0.739565, 0.542894, 0.10619, 0.204478, 0.771847, 0.902597, 0.355718, 0.911566, 0.0575367, 0.562718, 0.891847, 0.7837, 0.997554, 0.569518, 0.495948, 0.710388, 0.738174, 0.466616, 0.401706, 0.248976, 0.258626, 0.83484, 0.216465, 0.0729643, 0.164988, 0.837252, 0.442034, 0.296171, 0.798832, 0.0558175, 0.863475, 0.77015, 0.39575, 0.304668, 0.0203643, 0.20633, 0.695167, 0.919692, 0.436391, 0.963263, 0.303426, 0.193292, 0.768452, 0.45916, 0.699389, 0.690452, 0.651119, 0.888002, 0.355534, 0.198755, 0.803778, 0.870089, 0.809225, 0.0915294, 0.0459957, 0.986851, 0.250905, 0.190439, 0.429193, 0.370636, 0.336584, 0.384537, 0.768718, 0.0982904, 0.95832, 0.840603, 0.542528, 0.286739, 0.540849, 0.752271, 0.513449, 0.766535, 0.102456, 0.334374, 0.634429, 0.0449059, 0.56841, 0.937627, 0.216849, 0.359826, 0.693254, 0.502889, 0.693115, 0.506843, 0.872625, 0.424638, 0.174276, 0.363718, 0.536146, 0.355215, 0.0546224, 0.90829, 0.967318, 0.693203, 0.97595, 0.79812, 0.924415, 0.5999, 0.732423, 0.481824, 0.0390074, 0.858689, 0.0819876, 0.135897, 0.0322327, 0.314027, 0.601123, 0.00499386, 0.610211, 0.0319087, 0.0406788, 0.801345, 0.696581, 0.366098, 0.266956, 0.21206, 0.904011, 0.118976, 0.00920613, 0.69959, 0.829873, 0.943921, 0.558463, 0.60533, 0.724935, 0.549891, 0.733106, 0.530256, 0.694571, 0.713422, 0.611106, 0.072951, 0.404777, 0.0158893, 0.161346, 0.693612, 0.518936, 0.878131, 0.703876, 0.611929, 0.408529, 0.768275, 0.808623, 0.959361, 0.326656, 0.83589, 0.521971, 0.977083, 0.867278, 0.395405, 0.736166, 0.0280796, 0.940964, 0.732938, 0.217135, 0.780848, 0.725279, 0.613338, 0.546845, 0.810228, 0.647924, 0.525042, 0.971578, 0.335967, 0.588887, 0.928548, 0.957302, 0.787647, 0.0901167, 0.175435, 0.704188, 0.00509918, 0.839273, 0.954534, 0.310311, 0.744614, 0.598133, 0.511078, 0.294883, 0.821891, 0.658491, 0.223005, 0.0152977, 0.822106, 0.11655, 0.380148, 0.53276, 0.511126, 0.512797, 0.365613, 0.777057, 0.733977, 0.522855, 0.281136, 0.89646, 0.467778, 0.361306, 0.0228623, 0.286544, 0.409327, 0.497749, 0.822417, 0.136394, 0.682058, 0.916336, 0.910317, 0.232289, 0.639161, 0.580547, 0.602081, 0.0719611, 0.291157, 0.40773, 0.0201031, 0.728334, 0.458429, 0.362484, 0.996845, 0.366949, 0.586223, 0.681143, 0.0242279, 0.620375, 0.51662, 0.93688, 0.538165, 0.912697, 0.791674, 0.713292, 0.433204, 0.0843528, 0.697764, 0.43884, 0.891681, 0.689411, 0.791984, 0.224784, 0.349407, 0.375761, 0.335028, 0.311385, 0.750942, 0.616441, 0.844438, 0.251643, 0.660741, 0.0805609, 0.769433, 0.407609, 0.132638, 0.0332942, 0.675042, 0.809139, 0.519062, 0.00151899, 0.721963, 0.579542, 0.248223, 0.860977, 0.123355, 0.208809, 0.771286, 0.181604, 0.49451, 0.0744826, 0.72343, 0.847404, 0.0304009, 0.491753, 0.330725, 0.48852, 0.452269, 0.56276, 0.352293, 0.731438, 0.789613, 0.198553, 0.411078, 0.284744, 0.471403, 0.464478, 0.799206, 0.728932, 0.884635, 0.590945, 0.0569764, 0.0725263, 0.342085, 0.370218, 0.639383, 0.932643, 0.171662, 0.675389, 0.508058, 0.678454, 0.75074, 0.292735, 0.0321314, 0.152056, 0.887809, 0.0336618, 0.0938312, 0.37829, 0.0992418, 0.539253, 0.748581, 0.308604, 0.135415, 0.22339, 0.970354, 0.579154, 0.484325, 0.259782, 0.0175138, 0.504341, 0.768727, 0.704132, 0.736099, 0.924297, 0.123621, 0.331132, 0.764928, 0.142885, 0.630501, 0.754362, 0.643633, 0.675589, 0.793947, 0.264666, 0.293463, 0.86976, 0.13139, 0.910967, 0.579427, 0.775444, 0.509456, 0.568785, 0.481629, 0.534621, 0.963375, 0.926956, 0.596428, 0.695135, 0.976368, 0.985007, 0.219229, 0.18263, 0.0330791, 0.794537, 0.36597, 0.521017, 0.437158, 0.501348, 0.751041, 0.766312, 0.46439, 0.00366036, 0.599896, 0.398209, 0.76599, 0.95793, 0.364972, 0.493257, 0.452247, 0.712015, 0.024297, 0.225755, 0.527445, 0.844692, 0.587732, 0.0250402, 0.337706, 0.908794, 0.589894, 0.831098, 0.270304, 0.638438, 0.0316758, 0.573326, 0.0306914, 0.946889, 0.0775509, 0.42889, 0.250056, 0.316976, 0.456179, 0.917887, 0.917448, 0.11967, 0.591144, 0.352981, 0.849511, 0.465982, 0.00976796, 0.697137, 0.320775, 0.530182, 0.791732, 0.781348, 0.630783, 0.570108, 0.867648, 0.0258425, 0.147678, 0.39056, 0.0981929, 0.982114, 0.44062, 0.879375, 0.964472, 0.459122, 0.957155, 0.656362, 0.142271, 0.0621468, 0.791664, 0.472776, 0.618339, 0.864549, 0.778153, 0.311727, 0.398461, 0.455023, 0.973779, 0.999543, 0.414123, 0.709867, 0.440624, 0.951762, 0.0568399, 0.97083, 0.712216, 0.921851, 0.479456, 0.253647, 0.613246, 0.975682, 0.761829, 0.831174, 0.868983, 0.420924, 0.264717, 0.547227, 0.346723, 0.856154, 0.492, 0.0520774, 0.555698, 0.717819, 0.154834, 0.102231, 0.516433, 0.418083, 0.455069, 0.0905887, 0.961797, 0.277239, 0.187967, 0.462781, 0.346729, 0.31986, 0.58213, 0.605526, 0.480522, 0.178034, 0.59996, 0.0820642, 0.372264, 0.154094, 0.685137, 0.926591, 0.506341, 0.374656, 0.949043, 0.820158, 0.912711, 0.150832, 0.141389, 0.806484, 0.668464, 0.569262, 0.194434, 0.805651, 0.338127, 0.0445907, 0.553085, 0.585123, 0.859129, 0.267628, 0.430494, 0.236305, 0.602553, 0.93172, 0.958859, 0.815454, 0.737249, 0.665764, 0.827119, 0.467034, 0.47401, 0.125334, 0.0909302, 0.884802, 0.880571, 0.552597, 0.568278, 0.899672, 0.900913, 0.390872, 0.267432, 0.678024, 0.734613, 0.379154, 0.00800285, 0.575992, 0.471158, 0.371449, 0.303787, 0.430055, 0.533649, 0.533947, 0.595581, 0.537309, 0.077545, 0.190509, 0.378629, 0.744644, 0.797956, 0.979207, 0.112392, 0.237731, 0.948207, 0.518345, 0.801375, 0.30987, 0.590398, 0.97661, 0.474416, 0.703823, 0.520864, 0.965192, 0.119271, 0.558809, 0.640866, 0.288936, 0.910419, 0.741629, 0.424635, 0.779616, 0.768092, 0.507772, 0.504063, 0.316496, 0.541074, 0.68036, 0.538136, 0.579494, 0.294867, 0.308948, 0.80587, 0.463329, 0.251374, 0.663507, 0.943482, 0.363929, 0.555071, 0.709577, 0.430258, 0.342018, 0.102579, 0.203525, 0.95593, 0.601485, 0.790328, 0.662096, 0.957734, 0.845471, 0.108412, 0.46634, 0.252193, 0.643831, 0.11127, 0.376411, 0.023525, 0.287631, 0.994963, 0.658874, 0.0210645, 0.603629, 0.622803, 0.0472722, 0.315973, 0.923111, 0.717089, 0.922971, 0.104088, 0.0062942, 0.789094, 0.625341, 0.224942, 0.398873, 0.910434, 0.932619, 0.768445, 0.323064, 0.738007, 0.53752, 0.502822, 0.593059, 0.385173, 0.96417, 0.664428, 0.115134, 0.841562, 0.030039, 0.146718, 0.870019, 0.602876, 0.338186, 0.479086, 0.729154, 0.910322, 0.650492, 0.345689, 0.668121, 0.427259, 0.57197, 0.869793, 0.576452, 0.244191, 0.0571584, 0.825081, 0.596242, 0.0448514, 0.42959, 0.951414, 0.72456, 0.00677971, 0.872711, 0.671347, 0.192745, 0.968447, 0.56047, 0.920649, 0.752342, 0.966234, 0.613444, 0.033573, 0.468321, 0.844581, 0.775329, 0.122645, 0.02613, 0.344292, 0.310932, 0.790536, 0.389491, 0.869365, 0.826368, 0.0173728, 0.189828, 0.523768, 0.117784, 0.0199382, 0.532736, 0.754888, 0.469754, 0.294376, 0.0780923, 0.126736, 0.660983, 0.430775, 0.21072, 0.63831, 0.379654, 0.361582, 0.230799, 0.113835, 0.267163, 0.117418, 0.136472, 0.938982, 0.265427, 0.255827, 0.515764, 0.607022, 0.533919, 0.463674, 0.415789, 0.63417, 0.0901891, 0.294229, 0.604955, 0.424594, 0.0620128, 0.11916, 0.112472, 0.996593, 0.84225, 0.327968, 0.714541, 0.304632, 0.164565, 0.741463, 0.112919, 0.502746, 0.90645, 0.752368, 0.974846, 0.549887, 0.108335, 0.600625, 0.681496, 0.713924, 0.934521, 0.978134, 0.407894, 0.343613, 0.440783, 0.664972, 0.838276, 0.0019049, 0.019787, 0.50369, 0.259691, 0.403031, 0.557228, 0.479232, 0.690514, 0.0048832, 0.0951374, 0.00396124, 0.664695, 0.700051, 0.761949, 0.415953, 0.234898, 0.852, 0.639213, 0.30993, 0.909582, 0.89205, 0.673465, 0.934445, 0.95726, 0.867526, 0.604767, 0.91859, 0.478939, 0.268658, 0.756328, 0.969407, 0.0815263, 0.0577255, 0.9332, 0.39228, 0.531781, 0.1917, 0.195857, 0.540173, 0.00600479, 0.869316, 0.545209, 0.645048, 0.43061, 0.206057, 0.442541, 0.0948908, 0.946553, 0.674933, 0.950173, 0.263825, 0.495335, 0.668037, 0.803664, 0.777506, 0.989808, 0.513813, 0.962018, 0.611008, 0.0673268, 0.999634, 0.238826, 0.653811, 0.939171, 0.571092, 0.408408, 0.189841, 0.35669, 0.922076, 0.191623, 0.38311, 0.713345, 0.670143, 0.97811, 0.271622, 0.943943, 0.824031, 0.206058, 0.461943, 0.297259, 0.698813, 0.663358, 0.557625, 0.315034, 0.347587, 0.460004, 0.826429, 0.838686, 0.852591, 0.320376, 0.00415945, 0.685438, 0.600111, 0.241398, 0.840719, 0.960097, 0.422577, 0.98152, 0.286617, 0.771774, 0.874038, 0.250729, 0.800102, 0.56279, 0.311846, 0.111826, 0.778888, 0.691236, 0.534948, 0.288923, 0.0833545, 0.447614, 0.86312, 0.477696, 0.901524, 0.433181, 0.191154, 0.281116, 0.212128, 0.731244, 0.538579, 0.620449, 0.704903, 0.460499, 0.37742, 0.823034, 0.237254, 0.55763, 0.316825, 0.0284923, 0.794764, 0.0689214, 0.620568, 0.818483, 0.049073, 0.520155, 0.80956, 0.403729, 0.0384824, 0.884952, 0.381709, 0.169691, 0.379571, 0.844339, 0.784253, 0.515285, 0.196288, 0.0223558, 0.373821, 0.782384, 0.303983, 0.864093, 0.774289, 0.240766, 0.58568, 0.328797, 0.126315, 0.841865, 0.283418, 0.748826, 0.270055, 0.12889, 0.570367, 0.217194, 0.323025, 0.565146, 0.457298, 0.222445, 0.98836, 0.492686, 0.293779, 0.0162616, 0.774602, 0.565758, 0.357465, 0.516019, 0.137609, 0.0597346, 0.394048, 0.452074, 0.0817901, 0.906816, 0.499637, 0.694108, 0.481, 0.30652, 0.220167, 0.978509, 0.174359, 0.983153, 0.68811, 0.0781752, 0.643734, 0.835491, 0.025745, 0.537208, 0.550764, 0.146115, 0.444928, 0.855384, 0.636416, 0.361787, 0.898798, 0.385655, 0.515164, 0.246801, 0.984843, 0.650865, 0.413739, 0.475613, 0.346935, 0.579753, 0.517482, 0.00844559, 0.326494, 0.150286, 0.622365, 0.753325, 0.916103, 0.556752, 0.274754, 0.626378, 0.523771, 0.0342807, 0.600559, 0.274172, 0.210256, 0.606753, 0.578822, 0.318668, 0.39041, 0.683452, 0.375313, 0.353341, 0.58294, 0.925155, 0.140171, 0.0646038, 0.450619, 0.199829, 0.500982, 0.631797, 0.777428, 0.0981268, 0.600188, 0.682762, 0.161681, 0.159471, 0.908154, 0.851515, 0.395125, 0.637718, 0.105254, 0.419895, 0.0359921, 0.370579, 0.42579, 0.29233, 0.456937, 0.0862449, 0.180989, 0.0550971, 0.981704, 0.22094, 0.303764, 0.690003, 0.136119, 0.218901, 0.346908, 0.332063, 0.275067, 0.364109, 0.5226, 0.700079, 0.856375, 0.262692, 0.848152, 0.0964617, 0.183504, 0.121691, 0.562524, 0.859729, 0.326392, 0.463397, 0.879175, 0.603054, 0.446576, 0.0491054, 0.341939, 0.947599, 0.238099, 0.361434, 0.277334, 0.0844512, 0.444674, 0.521843, 0.323605, 0.743892, 0.417587, 0.539746, 0.838717, 0.522419, 0.944407, 0.303898, 0.0965467, 0.738773, 0.204419, 0.488576, 0.0935113, 0.395192, 0.138957, 0.374688, 0.643051, 0.384333, 0.246379, 0.440989, 0.522972, 0.598874, 0.3693, 0.754691, 0.00516612, 0.0332441, 0.745578, 0.500539, 0.167944, 0.499101, 0.0951122, 0.557973, 0.320253, 0.299863, 0.00852917, 0.866493, 0.804178, 0.661775, 0.872044, 0.148866, 0.631578, 0.748701, 0.825885, 0.224996, 0.581948, 0.11067, 0.143304, 0.031682, 0.392887, 0.167357, 0.382367, 0.311425, 0.201765, 0.0485107, 0.362529, 0.403489, 0.858543, 0.425199, 0.65105, 0.61213, 0.0104368, 0.0959071, 0.866512, 0.0848124, 0.808674, 0.395662, 0.27686, 0.173812, 0.188937, 0.0759889, 0.698132, 0.406877, 0.946371, 0.29629, 0.636286, 0.205707, 0.610048, 0.153584, 0.804778, 0.979005, 0.435582, 0.0617383, 0.852159, 0.345466, 0.317229, 0.331469, 0.26471, 0.25735, 0.278036, 0.473363, 0.168857, 0.458015, 0.0207869, 0.433927, 0.663217, 0.134433, 0.208947, 0.636476, 0.280646, 0.0840033, 0.969425, 0.70312, 0.718875, 0.301033, 0.987558, 0.755513, 0.356862, 0.84162, 0.336091, 0.60303, 0.803903, 0.429738, 0.826224, 0.0821901, 0.720067, 0.388101, 0.904775, 0.176448, 0.707284, 0.0962457, 0.86433, 0.804201, 0.403867, 0.835983, 0.258573, 0.128271, 0.795915, 0.598073, 0.384385, 0.893598, 0.13519, 0.349795, 0.391911, 0.364873, 0.363213, 0.0324984, 0.353857, 0.0263627, 0.821102, 0.238852, 0.155727, 0.831169, 0.923858, 0.777412, 0.698669, 0.746724, 0.376989, 0.366644, 0.961419, 0.272156, 0.144976, 0.240225, 0.129988, 0.229844, 0.0692617, 0.413399, 0.309317, 0.375905, 0.639856, 0.20138, 0.574299, 0.218684, 0.251975, 0.704074, 0.160467, 0.066386, 0.0657724, 0.818871, 0.616836, 0.993455, 0.722543, 0.71007, 0.12334, 0.022833, 0.322339, 0.423563, 0.265318, 0.499809, 0.789941, 0.187409, 0.839217, 0.682156, 0.102909, 0.319399, 0.911683, 0.479359, 0.567347, 0.712737, 0.709301, 0.92589, 0.665616, 0.690399, 0.703394, 0.229336, 0.781397, 0.891572, 0.839947, 0.276139, 0.00983069, 0.627141, 0.491705, 0.941038, 0.256982, 0.846472, 0.165488, 0.889032, 0.458546, 0.155815, 0.707996, 0.274945, 0.459801, 0.243167, 0.445849, 0.19494, 0.453255, 0.867502, 0.735341, 0.142157, 0.710191, 0.362551, 0.42352, 0.0612732, 0.359541, 0.780752, 0.663786, 0.0623036, 0.586138, 0.480311, 0.269546, 0.428785, 0.860652, 0.525945, 0.849798, 0.198831, 0.512015, 0.276636, 0.808629, 0.618659, 0.347047, 0.296567, 0.6308, 0.891711, 0.728909, 0.00615773, 0.580163, 0.761194, 0.890536, 0.979987, 0.803402, 0.128086, 0.875911, 0.830572, 0.72082, 0.45184, 0.895492, 0.953345, 0.518064, 0.981779, 0.46652, 0.232154, 0.712889, 0.0240985, 0.486057, 0.886377, 0.800894, 0.364092, 0.183536, 0.556499, 0.137635, 0.772141, 0.00157282, 0.796502, 0.540139, 0.350468, 0.212424, 0.729362, 0.545618, 0.278264, 0.545053, 0.0649081, 0.211462, 0.858909, 0.44332, 0.0306744, 0.568006, 0.430571, 0.103188, 0.753411, 0.60898, 0.654854, 0.0538912, 0.934674, 0.399954, 0.195588, 0.619179, 0.0197198, 0.915685, 0.22772, 0.209736, 0.256244, 0.63981, 0.852806, 0.640165, 0.244563, 0.666166, 0.107168, 0.0646473, 0.948008, 0.0879691, 0.163075, 0.0113279, 0.647452, 0.648633, 0.934379, 0.48736, 0.112774, 0.833852, 0.01571, 0.0490363, 0.55119, 0.821667, 0.630919, 0.725307, 0.851313, 0.67138, 0.958159, 0.35837, 0.44038, 0.223307, 0.456454, 0.707208, 0.14199, 0.497361, 0.727194, 0.098994, 0.341493, 0.287234, 0.685074, 0.871397, 0.118388, 0.649109, 0.648334, 0.745055, 0.311592, 0.467422, 0.0227754, 0.26709, 0.854419, 0.892129, 0.527672, 0.404777, 0.196179, 0.586777, 0.58063, 0.293115, 0.421652, 0.507975, 0.368012, 0.0571903, 0.808171, 0.81496, 0.162705, 0.453734, 0.130286, 0.703768, 0.230519, 0.500453, 0.601802, 0.812536, 0.953156, 0.505225, 0.372403, 0.866647, 0.362258, 0.130303, 0.0960682, 0.883785, 0.884231, 0.572242, 0.573087, 0.0649872, 0.904235, 0.493275, 0.484062, 0.0326532, 0.145145, 0.177581, 0.914643, 0.150563, 0.415583, 0.874436, 0.938479, 0.225047, 0.76867, 0.535047, 0.944481, 0.741913, 0.850204, 0.719304, 0.921887, 0.025558, 0.364053, 0.905346, 0.839574, 0.64003, 0.37887, 0.657531, 0.975924, 0.848139, 0.835465, 0.346445, 0.596387, 0.0921106, 0.525727, 0.642527, 0.726617, 0.267825, 0.470306, 0.53443, 0.39647, 0.361847, 0.168555, 0.880501, 0.851166, 0.77163, 0.3534, 0.862777, 0.617816, 0.889374, 0.139884, 0.213892, 0.457168, 0.662212, 0.919846, 0.891103, 0.58003, 0.25251, 0.179788, 0.727992, 0.0942184, 0.673038, 0.738826, 0.677809, 0.0223256, 0.431998, 0.491778, 0.998121, 0.0459948, 0.0863441, 0.0226274, 0.346567, 0.910443, 0.53951, 0.632083, 0.141175, 0.841427, 0.0937164, 0.219005, 0.598953, 0.254778, 0.272004, 0.990294, 0.284358, 0.629232, 0.654993, 0.890749, 0.490674, 0.467832, 0.810197, 0.67584, 0.484549, 0.0355721, 0.810278, 0.359813, 0.503325, 0.60993, 0.177014, 0.266437, 0.82521, 0.700959, 0.580357, 0.0329066, 0.477505, 0.975919, 0.765812, 0.513353, 0.759346, 0.896418, 0.514122, 0.762671, 0.481069, 0.781122, 0.308061, 0.0188265, 0.336858, 0.428663, 0.290707, 0.39264, 0.203424, 0.771924, 0.0579965, 0.338418, 0.329157, 0.54683, 0.443618, 0.809492, 0.252591, 0.841314, 0.65044, 0.233733, 0.618145, 0.169619, 0.110788, 0.574787, 0.803592, 0.95607, 0.809714, 0.954832, 0.523285, 0.934249, 0.822042, 0.888136, 0.135298, 0.603218, 0.217902, 0.923115, 0.963834, 0.046993, 0.846042, 0.43431, 0.632692, 0.815737, 0.812383, 0.756145, 0.86021, 0.591091, 0.26494, 0.475869, 0.332984, 0.111581, 0.0923473, 0.263092, 0.536261, 0.461894, 0.237639, 0.0173009, 0.835964, 0.34082, 0.346269, 0.910341, 0.730623, 0.842476, 0.314167, 0.588686, 0.426967, 0.787806, 0.917108, 0.109982, 0.838064, 0.55325, 0.783717, 0.471997, 0.985364, 0.951281, 0.190212, 0.0488774, 0.198929, 0.503557, 0.556964, 0.235304, 0.691374, 0.294346, 0.0434012, 0.881617, 0.485982, 0.122715, 0.551463, 0.123022, 0.868927, 0.450013, 0.267355, 0.878404, 0.0635946, 0.195266, 0.674102, 0.684999, 0.554888, 0.00565896, 0.98166, 0.484559, 0.276923, 0.51482, 0.0482194, 0.445814, 0.363586, 0.609221, 0.82734, 0.134562, 0.639819, 0.422786, 0.715642, 0.586397, 0.00108825, 0.44231, 0.957283, 0.799705, 0.606493, 0.1704, 0.616888, 0.963721, 0.179014, 0.926394, 0.728839, 0.841263, 0.954068, 0.0573998, 0.90095, 0.957842, 0.706108, 0.39455, 0.604754, 0.139079, 0.412901, 0.157284, 0.594666, 0.332763, 0.901724, 0.727433, 0.859325, 0.311124, 0.805005, 0.131634, 0.638805, 0.0480423, 0.745349, 0.283945, 0.926438, 0.169615, 0.867695, 0.403487, 0.859359, 0.703778, 0.190037, 0.138594, 0.538213, 0.999882, 0.114442, 0.798489, 0.604526, 0.236565, 0.33969, 0.365351, 0.655584, 0.767672, 0.338211, 0.31313, 0.93109, 0.551706, 0.794758, 0.013099, 0.313884, 0.628301, 0.679539, 0.285262, 0.0200561, 0.493443, 0.576638, 0.218604, 0.284279, 0.398139, 0.445677, 0.354171, 0.660415, 0.747057, 0.662667, 0.560981, 0.0589827, 0.569345, 0.315776, 0.775442, 0.196486, 0.468511, 0.487565, 0.575478, 0.98576, 0.203644, 0.628232, 0.291471, 0.109699, 0.601743, 0.641302, 0.333487, 0.0835407, 0.924504, 0.855606, 0.810444, 0.442251, 0.206098, 0.188314, 0.649688, 0.577481, 0.400175, 0.396002, 0.339203, 0.989435, 0.0520413, 0.509233, 0.413266, 0.648791, 0.990687, 0.691524, 0.169735, 0.138492, 0.286327, 0.630889, 0.582814, 0.097934, 0.599507, 0.690031, 0.260219, 0.790027, 0.415555, 0.515342, 0.734153, 0.257156, 0.911997, 0.120776, 0.849259, 0.271723, 0.147105, 0.667802, 0.869832, 0.546765, 0.534638, 0.637949, 0.67855, 0.261329, 0.250368, 0.975991, 0.0352188, 0.616371, 0.897824, 0.251035, 0.194803, 0.923669, 0.0536966, 0.215195, 0.930365, 0.770669, 0.756988, 0.356637, 0.363472, 0.223229, 0.288866, 0.552404, 0.594253, 0.00666013, 0.568736, 0.0266256, 0.916363, 0.950948, 0.658631, 0.689048, 0.189652, 0.318544, 0.878162, 0.909667, 0.40504, 0.298761, 0.784087, 0.318184, 0.880637, 0.846613, 0.738347, 0.627163, 0.516213, 0.625051, 0.66359, 0.320635, 0.0559965, 0.874822, 0.162004, 0.309508, 0.418486, 0.19779, 0.822498, 0.241683, 0.0172514, 0.195514, 0.493682, 0.360261, 0.494828, 0.067534, 0.412249, 0.772915, 0.183354, 0.110332, 0.426438, 0.509137, 0.244624, 0.810335, 0.307242, 0.726412, 0.693609, 0.425482, 0.524024, 0.758772, 0.295339, 0.325908, 0.47107, 0.46494, 0.486571, 0.669965, 0.0729339, 0.684364, 0.021, 0.5094, 0.9029, 0.802745, 0.89819, 0.0294257, 0.845204, 0.690231, 0.641065, 0.85395, 0.758954, 0.626043, 0.769634, 0.36309, 0.313959, 0.821471, 0.800556, 0.666344, 0.098059, 0.451004, 0.587051, 0.581232, 0.914306, 0.391562, 0.359505, 0.349091, 0.549276, 0.113745, 0.15211, 0.95436, 0.717475, 0.167853, 0.886064, 0.517029, 0.698867, 0.411079, 0.43198, 0.339307, 0.635614, 0.157554, 0.387891, 0.0659931, 0.261794, 0.537798, 0.990654, 0.401801, 0.0789838, 0.64179, 0.567052, 0.870907, 0.160964, 0.736256, 0.805436, 0.873336, 0.916254, 0.144057, 0.00286148, 0.893824, 0.917897, 0.135173, 0.122999, 0.54781, 0.24783, 0.631928, 0.146863, 0.0823505, 0.829648, 0.716739, 0.947225, 0.58018, 0.583302, 0.00997576, 0.950082, 0.0683284, 0.557343, 0.232008, 0.894867, 0.87242, 0.971891, 0.340741, 0.234086, 0.063568, 0.281589, 0.388354, 0.631478, 0.330577, 0.819587, 0.361625, 0.0495101, 0.276587, 0.379001, 0.881574, 0.57234, 0.854303, 0.0354648, 0.214783, 0.0275671, 0.227575, 0.838316, 0.84354, 0.826011, 0.115646, 0.715474, 0.388171, 0.0533561, 0.0273449, 0.864577, 0.724575, 0.584559, 0.0478402, 0.385348, 0.288855, 0.745594, 0.473685, 0.067597, 0.0966291, 0.309623, 0.746176, 0.884663, 0.851867, 0.717935, 0.323082, 0.260631, 0.638873, 0.909799, 0.378827, 0.250598, 0.669078, 0.358743, 0.944822, 0.516899, 0.650863, 0.914101, 0.919328, 0.104253, 0.778744, 0.614235, 0.959365, 0.471582, 0.75461, 0.131796, 0.518513, 0.796229, 0.22335, 0.358356, 0.834743, 0.151196, 0.228007, 0.731939, 0.690158, 0.619762, 0.908891, 0.00935599, 0.151689, 0.895069, 0.583814, 0.739853, 0.10738, 0.507382, 0.76196, 0.945943, 0.224541, 0.655233, 0.340339, 0.286659, 0.198468, 0.455985, 0.202928, 0.102759, 0.117635, 0.987162, 0.513448, 0.0515212, 0.387943, 0.164047, 0.110183, 0.341008, 0.710716, 0.785942, 0.78434, 0.473991, 0.354403, 0.24259, 0.818226, 0.572671, 0.257936, 0.368975, 0.622038, 0.759281, 0.215874, 0.371487, 0.213655, 0.0225308, 0.514941, 0.90473, 0.470511, 0.549805, 0.95397, 0.862688, 0.975287, 0.302472, 0.00857932, 0.281589, 0.310911, 0.0253471, 0.575671, 0.49977, 0.17398, 0.351441, 0.747175, 0.905322, 0.509491, 0.690312, 0.486756, 0.777155, 0.430102, 0.606543, 0.368131, 0.682621, 0.630395, 0.852992, 0.974505, 0.196192, 0.48224, 0.837796, 0.554905, 0.667964, 0.495827, 0.38629, 0.223386, 0.26684, 0.505895, 0.115652, 0.620934, 0.315365, 0.103573, 0.417029, 0.430385, 0.169628, 0.770794, 0.589168, 0.587536, 0.335873, 0.835063, 0.501202, 0.677467, 0.383526, 0.68742, 0.581883, 0.344688, 0.00554769, 0.716246, 0.418168, 0.390993, 0.368735, 0.904264, 0.485587, 0.645208, 0.819884, 0.713942, 0.684267, 0.0213335, 0.715631, 0.559475, 0.547555, 0.39113, 0.0695155, 0.585026, 0.799126, 0.128797, 0.709349, 0.539211, 0.553569, 0.507888, 0.457815, 0.107576, 0.0641052, 0.283917, 0.973872, 0.0788143, 0.923277, 0.242687, 0.0207217, 0.208356, 0.482252, 0.584101, 0.43033, 0.665051, 0.220115, 0.0187984, 0.00274392, 0.722993, 0.840627, 0.971185, 0.270766, 0.107335, 0.658131, 0.77923, 0.878906, 0.522251, 0.270766, 0.0552041, 0.930282, 0.0679173, 0.694456, 0.878168, 0.495982, 0.110033, 0.723934, 0.122868, 0.15146, 0.610685, 0.161229, 0.788125, 0.596026, 0.396793, 0.823102, 0.0834243, 0.731238, 0.875904, 0.0024461, 0.0510364, 0.892, 0.77279, 0.449158, 0.039458, 0.0988294, 0.752611, 0.521684, 0.0262497, 0.639185, 0.0395647, 0.78477, 0.0504738, 0.517867, 0.950685, 0.0890516, 0.333973, 0.907944, 0.894111, 0.651692, 0.523152, 0.510844, 0.614001, 0.0605636, 0.193996, 0.223573, 0.688479, 0.980567, 0.902811, 0.280912, 0.162531, 0.0540762, 0.414345, 0.817166, 0.300617, 0.0784998, 0.0191517, 0.288846, 0.650191, 0.128051, 0.766181, 0.234693, 0.631353, 0.515858, 0.395164, 0.48482, 0.741345, 0.224187, 0.623646, 0.50843, 0.947179, 0.921144, 0.0411876, 0.0620683, 0.300789, 0.127641, 0.99347, 0.194463, 0.799161, 0.134198, 0.194098, 0.192386, 0.950583, 0.779795, 0.577767, 0.772097, 0.881238, 0.438153, 0.352816, 0.613207, 0.820944, 0.610075, 0.0102571, 0.722896, 0.845245, 0.563335, 0.194757, 0.704358, 0.112646, 0.576978, 0.636203, 0.177122, 0.962064, 0.140906, 0.909349, 0.724073, 0.437111, 0.919171, 0.265218, 0.483642, 0.657541, 0.689893, 0.592511, 0.299259, 0.671936, 0.725063, 0.906748, 0.908616, 0.691344, 0.733322, 0.0358387, 0.0145384, 0.0194284, 0.371836, 0.666234, 0.520111, 0.0156337, 0.932628, 0.295622, 0.0178778, 0.251465, 0.881716, 0.889716, 0.515676, 0.824123, 0.325642, 0.813515, 0.143581, 0.652969, 0.119205, 0.142467, 0.326919, 0.72218, 0.189729, 0.367562, 0.376117, 0.517343, 0.160571, 0.652061, 0.982528, 0.967784, 0.67242, 0.899708, 0.134544, 0.241151, 0.3378, 0.369193, 0.0187582, 0.71399, 0.624092, 0.727593, 0.16902, 0.377871, 0.210523, 0.827917, 0.852145, 0.808643, 0.104473, 0.586986, 0.394308, 0.507487, 0.541712, 0.894871, 0.112282, 0.311991, 0.755083, 0.860908, 0.143703, 0.694696, 0.410443, 0.701204, 0.754024, 0.247181, 0.464045, 0.439513, 0.787088, 0.263565, 0.136725, 0.184538, 0.903104, 0.2926, 0.500458, 0.281775, 0.896249, 0.288564, 0.363984, 0.487971, 0.901011, 0.716427, 0.729958, 0.441464, 0.0228345, 0.109672, 0.0767572, 0.372363, 0.928338, 0.937909, 0.992874, 0.76931, 0.96157, 0.785619, 0.0455519, 0.352093, 0.114345, 0.0485703, 0.0705642, 0.986669, 0.259092, 0.214464, 0.785229, 0.287832, 0.367194, 0.587579, 0.63899, 0.769462, 0.0196606, 0.311204, 0.180387, 0.0998978, 0.625155, 0.78767, 0.694034, 0.30335, 0.152637, 0.594031, 0.983387, 0.012683, 0.360469, 0.343095, 0.890132, 0.373022, 0.613124, 0.0664975, 0.866854, 0.509899, 0.521016, 0.591964, 0.163959, 0.293403, 0.495289, 0.21112, 0.254242, 0.928399, 0.957892, 0.976767, 0.277183, 0.507005, 0.154241, 0.481073, 0.880563, 0.882597, 0.589448, 0.180488, 0.26247, 0.311174, 0.717911, 0.149071, 0.269492, 0.178879, 0.677134, 0.819556, 0.0559708, 0.426378, 0.108577, 0.00154718, 0.819687, 0.363181, 0.532661, 0.123272, 0.394626, 0.85865, 0.0046781, 0.048084, 0.920112, 0.166069, 0.920547, 0.412907, 0.138344, 0.876265, 0.0688749, 0.0969028, 0.644361, 0.169685, 0.335652, 0.705437, 0.143203, 0.647942, 0.680218, 0.966092, 0.408209, 0.317951, 0.33836, 0.763171, 0.705177, 0.0616689, 0.102783, 0.377501, 0.12131, 0.889664, 0.851413, 0.666999, 0.0267393, 0.890247, 0.437947, 0.07473, 0.314552, 0.491806, 0.724258, 0.937625, 0.994299, 0.157432, 0.077267, 0.956389, 0.923912, 0.119921, 0.759951, 0.472597, 0.868388, 0.111203, 0.0456212, 0.619121, 0.870144, 0.387855, 0.341935, 0.292578, 0.508057, 0.862987, 0.434029, 0.128391, 0.644022, 0.932877, 0.0802235, 0.778851, 0.837766, 0.21515, 0.902426, 0.0803018, 0.0451043, 0.979109, 0.127859, 0.437255, 0.954738, 0.281417, 0.886565, 0.120915, 0.747099, 0.878146, 0.890052, 0.57775, 0.920686, 0.92972, 0.637755, 0.645211, 0.834063, 0.0340221, 0.646686, 0.623421, 0.85634, 0.786195, 0.16432, 0.326467, 0.181429, 0.986865, 0.669251, 0.804039, 0.510411, 0.015761, 0.692227, 0.843232, 0.923616, 0.48712, 0.749108, 0.585923, 0.557237, 0.212273, 0.829083, 0.732269, 0.569164, 0.109997, 0.785893, 0.442765, 0.679718, 0.500834, 0.321716, 0.203084, 0.723897, 0.0615703, 0.787114, 0.72705, 0.475697, 0.96277, 0.178659, 0.32012, 0.503377, 0.435492, 0.572015, 0.128768, 0.516791, 0.10983, 0.755166, 0.620428, 0.991006, 0.80475, 0.38448, 0.771185, 0.721985, 0.786759, 0.696493, 0.607626, 0.679078, 0.430349, 0.113553, 0.556384, 0.397408, 0.527625, 0.338182, 0.445802, 0.273999, 0.884071, 0.823653, 0.94114, 0.0951649, 0.696848, 0.460765, 0.15284, 0.922747, 0.871428, 0.139821, 0.00466255, 0.848562, 0.425235, 0.621252, 0.549582, 0.879424, 0.0986899, 0.805771, 0.521052, 0.486152, 0.313243, 0.0180174, 0.9112, 0.776452, 0.80454, 0.39278, 0.0340876, 0.983415, 0.0694965, 0.987536, 0.932105, 0.484271, 0.913353, 0.369432, 0.0209533, 0.518407, 0.850771, 0.498852, 0.682342, 0.372398, 0.164069, 0.152215, 0.0418867, 0.163156, 0.674762, 0.177445, 0.779985, 0.812932, 0.54534, 0.701747, 0.471655, 0.473376, 0.901218, 0.462879, 0.610169, 0.862822, 0.65, 0.911136, 0.834596, 0.4788, 0.236055, 0.470912, 0.319184, 0.49711, 0.105028, 0.74884, 0.329586, 0.28499, 0.222683, 0.572896, 0.446851, 0.502052, 0.669934, 0.138281, 0.368421, 0.161535, 0.645895, 0.0415182, 0.158503, 0.910143, 0.120797, 0.871673, 0.507205, 0.639364, 0.646757, 0.801356, 0.745394, 0.538818, 0.315332, 0.893748, 0.170985, 0.454368, 0.179982, 0.556947, 0.92625, 0.876332, 0.796983, 0.597766, 0.118834, 0.288336, 0.00902861, 0.597508, 0.13627, 0.918916, 0.678764, 0.0748315, 0.632011, 0.0165748, 0.0782079, 0.691913, 0.376937, 0.254107, 0.570884, 0.664063, 0.12492, 0.213602, 0.727811, 0.201032, 0.510617, 0.925473, 0.227767, 0.693433, 0.977334, 0.985919, 0.0955417, 0.924307, 0.566221, 0.797246, 0.0834255, 0.863745, 0.0138646, 0.234444, 0.175842, 0.927442, 0.0297915, 0.658783, 0.170299, 0.254717, 0.080356, 0.133733, 0.763135, 0.609988, 0.443638, 0.767418, 0.571825, 0.176435, 0.667801, 0.990997, 0.191781, 0.458619, 0.958853, 0.610158, 0.624669, 0.811651, 0.712555, 0.243122, 0.824353, 0.877148, 0.204267, 0.959502, 0.737188, 0.886727, 0.700872, 0.510737, 0.357619, 0.760414, 0.206601, 0.987029, 0.139643, 0.999218, 0.345107, 0.455409, 0.444326, 0.0753852, 0.745219, 0.734076, 0.908799, 0.0200817, 0.786224, 0.703674, 0.459613, 0.621943, 0.138336, 0.764446, 0.633774, 0.680809, 0.449635, 0.0719145, 0.761931, 0.494351, 0.257352, 0.409355, 0.473932, 0.959385, 0.271198, 0.552431, 0.525504, 0.598449, 0.595013, 0.32543, 0.316847, 0.790654, 0.650512, 0.698785, 0.681656, 0.609515, 0.853596, 0.678602, 0.312949, 0.175424, 0.912109, 0.318198, 0.0746615, 0.548998, 0.772536, 0.0958111, 0.233971, 0.407245, 0.61385, 0.636117, 0.486725, 0.551383, 0.144315, 0.199175, 0.601006, 0.195937, 0.697408, 0.646259, 0.448521, 0.41616, 0.463405, 0.644677, 0.359831, 0.412282, 0.256679, 0.465395, 0.298716, 0.576465, 0.315947, 0.450115, 0.726528, 0.766532, 0.568148, 0.345948, 0.741316, 0.977101, 0.22995, 0.092362, 0.275642, 0.143517, 0.256864, 0.81646, 0.667261, 0.565341, 0.667376, 0.857814, 0.948847, 0.606078, 0.374988, 0.351117, 0.0576456, 0.591925, 0.619963, 0.760534, 0.47216, 0.761783, 0.412779, 0.114894, 0.739858, 0.305439, 0.460004, 0.752199, 0.275571, 0.927707, 0.351944, 0.663135, 0.00334564, 0.582296, 0.0938497, 0.770812, 0.463215, 0.989269, 0.735711, 0.303654, 0.107126, 0.558942, 0.503576, 0.458912, 0.713015, 0.714765, 0.917074, 0.986127, 0.0473922, 0.970784, 0.716859, 0.183494, 0.918147, 0.923901, 0.993174, 0.586096, 0.278638, 0.151621, 0.874674, 0.522265, 0.272625, 0.820591, 0.0666701, 0.107058, 0.648372, 0.760414, 0.884554, 0.059045, 0.171872, 0.294926, 0.0595009, 0.825139, 0.373394, 0.644776, 0.754324, 0.0544411, 0.899969, 0.959131, 0.383885, 0.769346, 0.0776174, 0.318224, 0.377208, 0.376724, 0.369616, 0.59647, 0.578749, 0.409885, 0.531794, 0.36398, 0.70295, 0.189707, 0.897684, 0.221662, 0.299438, 0.110271, 0.676171, 0.558928, 0.532229, 0.771429, 0.405497, 0.771621, 0.715442, 0.178534, 0.984104, 0.111374, 0.0962679, 0.320358, 0.422318, 0.598903, 0.507563, 0.989016, 0.166151, 0.598786, 0.567608, 0.162307, 0.484981, 0.670278, 0.0314683, 0.897491, 0.0720178, 0.755144, 0.424002, 0.189968, 0.279647, 0.649401, 0.690684, 0.430014, 0.168234, 0.471749, 0.908376, 0.318989, 0.378047, 0.470537, 0.676383, 0.214086, 0.0488364, 0.436373, 0.312044, 0.734522, 0.808162, 0.273472, 0.462544, 0.32724, 0.0261346, 0.942444, 0.706858, 0.295395, 0.960221, 0.129805, 0.840379, 0.311513, 0.279213, 0.384314, 0.836912, 0.564845, 0.0953655, 0.979802, 0.35287, 0.923853, 0.376366, 0.303277, 0.0191299, 0.984847, 0.989031, 0.0148695, 0.507571, 0.305033, 0.780096, 0.99445, 0.437325, 0.677658, 0.724669, 0.721161, 0.992662, 0.790512, 0.0212762, 0.773491, 0.139351, 0.682911, 0.838645, 0.716991, 0.965125, 0.12593, 0.137419, 0.111096, 0.745214, 0.683809, 0.0115195, 0.240242, 0.815814, 0.487353, 0.227699, 0.136303, 0.602072, 0.794579, 0.220322, 0.480858, 0.115225, 0.157831, 0.429576, 0.306031, 0.0233022, 0.749157, 0.229859, 0.275899, 0.973788, 0.50898, 0.329544, 0.237412, 0.576228, 0.176119, 0.0808705, 0.632687, 0.0664463, 0.932916, 0.757007, 0.503162, 0.881075, 0.804913, 0.698248, 0.0966182, 0.985987, 0.0333883, 0.0548697, 0.0313378, 0.370456, 0.373595, 0.0445245, 0.572873, 0.0755044, 0.283707, 0.649732, 0.109311, 0.984903, 0.0381455, 0.0132352, 0.322137, 0.188456, 0.867793, 0.74778, 0.886352, 0.2751, 0.980411, 0.829127, 0.748694, 0.803083, 0.0653596, 0.986497, 0.772165, 0.505447, 0.518452, 0.791482, 0.668375, 0.581173, 0.783544, 0.716063, 0.955502, 0.2883, 0.962456, 0.711843, 0.124468, 0.790633, 0.983245, 0.862075, 0.162591, 0.33502, 0.577174, 0.343908, 0.367677, 0.225406, 0.0430848, 0.334844, 0.462063, 0.864885, 0.717092, 0.169577, 0.605596, 0.735193, 0.5393, 0.287271, 0.277606, 0.650465, 0.220211, 0.935788, 0.630324, 0.979109, 0.0830748, 0.693549, 0.342863, 0.278943, 0.727048, 0.39119, 0.309273, 0.759766, 0.0824832, 0.625185, 0.200219, 0.244177, 0.733927, 0.975549, 0.289963, 0.119918, 0.224893, 0.952579, 0.451229, 0.860666, 0.700345, 0.447346, 0.00181113, 0.952813, 0.959839, 0.36252, 0.530121, 0.461269, 0.54261, 0.883025, 0.871242, 0.460213, 0.362716, 0.976735, 0.36581, 0.290767, 0.919499, 0.638504, 0.422942, 0.300979, 0.261442, 0.244254, 0.939152, 0.646268, 0.79873, 0.22899, 0.337646, 0.450362, 0.704914, 0.306518, 0.354007, 0.687272, 0.655243, 0.244792, 0.799828, 0.0928204, 0.666103, 0.884498, 0.955203, 0.522784, 0.27796, 0.0209405, 0.820827, 0.453013, 0.101963, 0.528367, 0.639644, 0.811813, 0.76978, 0.247719, 0.0354135, 0.905917, 0.601452, 0.459166, 0.191727, 0.438274, 0.670012, 0.299358, 0.622696, 0.627664, 0.999268, 0.343241, 0.703173, 0.794576, 0.895694, 0.313623, 0.598373, 0.496664, 0.687066, 0.754277, 0.346263, 0.69346, 0.598999, 0.654974, 0.0704743, 0.116748, 0.145191, 0.780739, 0.381612, 0.51129, 0.719282, 0.724501, 0.74263, 0.103365, 0.0587005, 0.485191, 0.32691, 0.787762, 0.839321, 0.330616, 0.853304, 0.923892, 0.68512, 0.779334, 0.584438, 0.481314, 0.0105376, 0.303712, 0.316489, 0.427301, 0.560182, 0.737369, 0.572481, 0.495963, 0.167189, 0.23871, 0.854727, 0.627752, 0.389423, 0.852365, 0.380096, 0.322055, 0.8113, 0.454465, 0.992769, 0.98815, 0.272523, 0.602177, 0.122823, 0.432782, 0.101932, 0.79152, 0.679658, 0.0491258, 0.913776, 0.343202, 0.175034, 0.805583, 0.240973, 0.549299, 0.729888, 0.588345, 0.564187, 0.981299, 0.686898, 0.738476, 0.358315, 0.944322, 0.822422, 0.84533, 0.834876, 0.823454, 0.45766, 0.836877, 0.609717, 0.545318, 0.878127, 0.911519, 0.714443, 0.0778165, 0.696779, 0.0303045, 0.368364, 0.584011, 0.612042, 0.536962, 0.588786, 0.577894, 0.024653, 0.744226, 0.944098, 0.539099, 0.857989, 0.514487, 0.433228, 0.446744, 0.0715383, 0.705576, 0.0301129, 0.450418, 0.945505, 0.670988, 0.467019, 0.0876018, 0.660721, 0.754755, 0.0441223, 0.898232, 0.848917, 0.15667, 0.756819, 0.251943, 0.822477, 0.942001, 0.720629, 0.163266, 0.219495, 0.706376, 0.818512, 0.767663, 0.763705, 0.17625, 0.360164, 0.0937215, 0.310482, 0.355263, 0.0528329, 0.934358, 0.223503, 0.276768, 0.0332421, 0.577549, 0.0133042, 0.710759, 0.0246291, 0.0773239, 0.803711, 0.385237, 0.0962977, 0.153847, 0.22997, 0.917154, 0.259281, 0.0829079, 0.162123, 0.669634, 0.199903, 0.763024, 0.00849927, 0.84348, 0.159901, 0.77094, 0.117335, 0.412064, 0.818697, 0.416284, 0.38796, 0.483608, 0.334034, 0.581573, 0.636486, 0.231355, 0.488069, 0.772965, 0.795275, 0.893995, 0.78465, 0.33249, 0.138793, 0.419504, 0.346615, 0.561949, 0.836677, 0.716381, 0.324875, 0.704881, 0.509466, 0.486337, 0.589495, 0.503, 0.962225, 0.375876, 0.781881, 0.881115, 0.0271652, 0.536851, 0.914244, 0.0898586, 0.681218, 0.0421879, 0.558257, 0.792735, 0.936975, 0.220094, 0.838276, 0.432229, 0.657287, 0.000557041, 0.87876, 0.0462447, 0.0766155, 0.434478, 0.540778, 0.266958, 0.305681, 0.35341, 0.982716, 0.853999, 0.168278, 0.209823, 0.23564, 0.387844, 0.496483, 0.389447, 0.800901, 0.238034, 0.271112, 0.235406, 0.475446, 0.510581, 0.509755, 0.0306164, 0.773892, 0.0682994, 0.593298, 0.70023, 0.305391, 0.527503, 0.986504, 0.468877, 0.363031, 0.590614, 0.670856, 0.117848, 0.270858, 0.297653, 0.798311, 0.0598164, 0.01179, 0.0885904, 0.875096, 0.795287, 0.0327647, 0.887023, 0.49768, 0.66212, 0.742214, 0.363779, 0.44344, 0.768532, 0.412874, 0.632337, 0.242044, 0.0973732, 0.141231, 0.73618, 0.164057, 0.421549, 0.151926, 0.41925, 0.77361, 0.0907304, 0.169231, 0.741289, 0.70494, 0.301844, 0.236005, 0.0108597, 0.988762, 0.977511, 0.617033, 0.827478, 0.908315, 0.509449, 0.971713, 0.480515, 0.0456441, 0.885103, 0.987939, 0.597081, 0.506577, 0.638603, 0.210043, 0.0482548, 0.218189, 0.364151, 0.992051, 0.391723, 0.937119, 0.251871, 0.957992, 0.284341, 0.782485, 0.81023, 0.607596, 0.489848, 0.643257, 0.931433, 0.0258066, 0.126333, 0.42508, 0.0350583, 0.372974, 0.0678014, 0.658473, 0.896184, 0.797337, 0.0153604, 0.773966, 0.25911, 0.409394, 0.545123, 0.27523, 0.226616, 0.00803445, 0.117953, 0.542646, 0.148404, 0.800338, 0.795688, 0.375284, 0.413708, 0.750514, 0.463614, 0.724324, 0.966648, 0.317077, 0.311322, 0.695846, 0.28184, 0.984164, 0.0139568, 0.698512, 0.763251, 0.399808, 0.673187, 0.87423, 0.525077, 0.955267, 0.585872, 0.226821, 0.901486, 0.814495, 0.554943, 0.469786, 0.549271, 0.737929, 0.397005, 0.852182, 0.988831, 0.085674, 0.309818, 0.790014, 0.0789381, 0.768044, 0.898577, 0.679431, 0.972011, 0.920214, 0.18101, 0.275299, 0.531952, 0.652698, 0.100951, 0.0367618, 0.605456, 0.0197282, 0.910065, 0.711466, 0.84257, 0.27857, 0.953812, 0.855451, 0.547478, 0.648171, 0.684109, 0.98443, 0.756279, 0.0136925, 0.792284, 0.640487, 0.913982, 0.401468, 0.58301, 0.200603, 0.550865, 0.908127, 0.360074, 0.717536, 0.214011, 0.306599, 0.729123, 0.366054, 0.167277, 0.250172, 0.808669, 0.754737, 0.164529, 0.501607, 0.894202, 0.216327, 0.0453906, 0.446236, 0.48948, 0.67534, 0.830515, 0.473338, 0.976086, 0.23739, 0.827288, 0.98029, 0.660839, 0.63133, 0.480636, 0.814671, 0.335541, 0.598103, 0.835169, 0.574495, 0.462844, 0.218605, 0.196126, 0.178365, 0.428876, 0.729528, 0.865073, 0.314056, 0.185457, 0.653795, 0.436069, 0.678548, 0.848748, 0.470352, 0.205871, 0.0437198, 0.292583, 0.49679, 0.666188, 0.40126, 0.877809, 0.08233, 0.474202, 0.800116, 0.168554, 0.686721, 0.901693, 0.0413626, 0.474672, 0.463282, 0.864081, 0.570513, 0.910049, 0.464346, 0.898423, 0.645147, 0.115714, 0.189242, 0.869391, 0.546112, 0.729097, 0.568821, 0.336011, 0.968012, 0.0388515, 0.75613, 0.744529, 0.857462, 0.269142, 0.0672414, 0.454014, 0.500959, 0.987362, 0.737475, 0.404587, 0.345277, 0.518067, 0.245681, 0.140775, 0.927901, 0.166827, 0.850512, 0.918311, 0.988633, 0.767776, 0.467392, 0.051576, 0.404199, 0.373537, 0.777711, 0.926308, 0.437101, 0.596457, 0.968791, 0.323633, 0.468815, 0.973583, 0.37288, 0.80413, 0.29805, 0.199406, 0.307082, 0.940399, 0.881414, 0.477804, 0.957487, 0.00851349, 0.051291, 0.068923, 0.0366955, 0.336837, 0.707748, 0.0157435, 0.937564, 0.143265, 0.247996, 0.145816, 0.969541, 0.0425528, 0.0957087, 0.79162, 0.719365, 0.184057, 0.00303612, 0.164905, 0.419136, 0.185199, 0.593213, 0.151001, 0.146827, 0.338696, 0.344155, 0.227585, 0.00513494, 0.460116, 0.98544, 0.552033, 0.128287, 0.23807, 0.56195, 0.824506, 0.189258, 0.050227, 0.60951, 0.51519, 0.487767, 0.0468177, 0.880155, 0.451121, 0.274183, 0.199084, 0.389995, 0.203297, 0.209891, 0.322086, 0.80289, 0.0594358, 0.56246, 0.507736, 0.937147, 0.723294, 0.322261, 0.579476, 0.315868, 0.781141, 0.920919, 0.755381, 0.785117, 0.640189, 0.893114, 0.159824, 0.391023, 0.605418, 0.844595, 0.131717, 0.453106, 0.0354193, 0.782969, 0.937506, 0.21625, 0.907617, 0.898652, 0.981229, 0.551583, 0.273739, 0.186611, 0.649192, 0.686602, 0.922376, 0.402637, 0.441532, 0.207293, 0.651441, 0.556587, 0.762731, 0.89997, 0.731379, 0.862775, 0.427437, 0.309512, 0.661231, 0.800463, 0.884022, 0.338439, 0.159422, 0.522647, 0.733258, 0.756267, 0.793723, 0.537743, 0.647818, 0.449444, 0.939879, 0.0966314, 0.201966, 0.904184, 0.224987, 0.783014, 0.409826, 0.258782, 0.719051, 0.892906, 0.918176, 0.237974, 0.143519, 0.480685, 0.946013, 0.0711188, 0.229829, 0.929101, 0.572001, 0.842208, 0.632482, 0.680829, 0.0865911, 0.761439, 0.89428, 0.592355, 0.0671137, 0.98381, 0.853176, 0.824508, 0.267632, 0.892326, 0.32836, 0.418551, 0.346941, 0.882806, 0.309085, 0.282074, 0.982606, 0.261556, 0.249706, 0.0223953, 0.327736, 0.167582, 0.556684, 0.484188, 0.0893175, 0.255542, 0.457398, 0.334597, 0.255648, 0.0795601, 0.386407, 0.988893, 0.830851, 0.193508, 0.310472, 0.654364, 0.0670938, 0.112389, 0.880854, 0.353868, 0.690126, 0.255283, 0.390743, 0.332614, 0.0466242, 0.292756, 0.860734, 0.623766, 0.539129, 0.515861, 0.75701, 0.832037, 0.84632, 0.438671, 0.221459, 0.156299, 0.734671, 0.311118, 0.068164, 0.169287, 0.44764, 0.578644, 0.964037, 0.589212, 0.532715, 0.227103, 0.754949, 0.763223, 0.627145, 0.888786, 0.514252, 0.490693, 0.0111548, 0.0732617, 0.151022, 0.549105, 0.516264, 0.862733, 0.375128, 0.870217, 0.831778, 0.910208, 0.23067, 0.906488, 0.954314, 0.870618, 0.133721, 0.952172, 0.946163, 0.80043, 0.597841, 0.811577, 0.60672, 0.867176, 0.353186, 0.275191, 0.23565, 0.882186, 0.551459, 0.589618, 0.879264, 0.948948, 0.0572349, 0.36607, 0.519015, 0.31113, 0.543603, 0.449493, 0.616014, 0.989401, 0.839872, 0.667913, 0.490344, 0.701474, 0.744178, 0.234312, 0.544897, 0.0978574, 0.481315, 0.922963, 0.102181, 0.455316, 0.526248, 0.268792, 0.322846, 0.878355, 0.584459, 0.359044, 0.31167, 0.37407, 0.266124, 0.503871, 0.414904, 0.635525, 0.9518, 0.509755, 0.169408, 0.0472026, 0.667826, 0.992603, 0.251529, 0.114493, 0.679204, 0.480373, 0.18788, 0.870213, 0.992654, 0.534436, 0.941352, 0.0244387, 0.780228, 0.42067, 0.632817, 0.660344, 0.35694, 0.0250982, 0.217571, 0.414648, 0.492479, 0.207949, 0.599503, 0.297134, 0.563982, 0.437704, 0.899191, 0.758265, 0.0920194, 0.571411, 0.124159, 0.519195, 0.404076, 0.907871, 0.131346, 0.226601, 0.978353, 0.897656, 0.366342, 0.550962, 0.487607, 0.293029, 0.184642, 0.0524754, 0.567065, 0.978196, 0.318724, 0.478241, 0.706945, 0.419912, 0.756709, 0.421248, 0.654794, 0.140818, 0.0487424, 0.017824, 0.495759, 0.538872, 0.717103, 0.0712224, 0.824614, 0.639925, 0.578716, 0.12625, 0.0856402, 0.205179, 0.999377, 0.0688811, 0.410998, 0.810521, 0.669731, 0.33862, 0.394065, 0.533385, 0.142005, 0.443029, 0.290606, 0.929948, 0.901129, 0.476085, 0.621577, 0.637656, 0.608621, 0.762401, 0.58521, 0.663044, 0.300784, 0.816918, 0.509167, 0.080701, 0.442533, 0.062607, 0.52675, 0.544716, 0.341901, 0.394151, 0.150043, 0.268943, 0.105657, 0.515799, 0.975377, 0.283571, 0.67471, 0.380002, 0.841592, 0.311632, 0.0575393, 0.389877, 0.26193, 0.538756, 0.316056, 0.263691, 0.20521, 0.354642, 0.296586, 0.551078, 0.575484, 0.0839746, 0.392119, 0.756555, 0.502667, 0.458518, 0.00460051, 0.266237, 0.880153, 0.537387, 0.342953, 0.0895121, 0.47646, 0.707822, 0.892626, 0.957136, 0.570837, 0.505494, 0.658229, 0.684948, 0.921795, 0.894423, 0.13942, 0.44968, 0.825582, 0.902669, 0.376736, 0.0870701, 0.565238, 0.270674, 0.708481, 0.830713, 0.902815, 0.414868, 0.549203, 0.464674, 0.245451, 0.435281, 0.00176975, 0.754087, 0.735445, 0.0837703, 0.303677, 0.411996, 0.0742324, 0.425401, 0.572173, 0.0837011, 0.579745, 0.929229, 0.762363, 0.865219, 0.769798, 0.116447, 0.661699, 0.16947, 0.39375, 0.84314, 0.0903207, 0.788996, 0.398276, 0.00100532, 0.448497, 0.165718, 0.197389, 0.962928, 0.644996, 0.637676, 0.871885, 0.230402, 0.922665, 0.588452, 0.993352, 0.76889, 0.0436841, 0.972861, 0.802777, 0.467909, 0.86727, 0.184278, 0.789986, 0.457721, 0.325289, 0.794625, 0.443401, 0.308017, 0.715126, 0.517875, 0.693416, 0.736179, 0.316858, 0.142924, 0.721139, 0.521596, 0.236532, 0.507966, 0.608778, 0.96292, 0.558893, 0.651695, 0.137494, 0.755832, 0.771333, 0.878684, 0.405341, 0.00297893, 0.86097, 0.473275, 0.596905, 0.451374, 0.205335, 0.235015, 0.616377, 0.66013, 0.906755, 0.804357, 0.632587, 0.194849, 0.61264, 0.184936, 0.0597735, 0.303249, 0.949588, 0.0657283, 0.777175, 0.684766, 0.0628117, 0.611167, 0.183913, 0.745564, 0.833274, 0.135848, 0.981644, 0.551356, 0.905484, 0.169549, 0.272377, 0.681274, 0.797146, 0.27877, 0.301439, 0.410783, 0.285266, 0.144248, 0.833021, 0.611345, 0.524433, 0.829463, 0.0606167, 0.292792, 0.830006, 0.301647, 0.492409, 0.0382006, 0.997249, 0.50477, 0.683585, 0.996514, 0.560837, 0.767123, 0.00676823, 0.101117, 0.810901, 0.146895, 0.868268, 0.542988, 0.133829, 0.852774, 0.920998, 0.117943, 0.741353, 0.288714, 0.0230389, 0.401274, 0.796168, 0.577941, 0.259857, 0.552797, 0.197413, 0.842157, 0.832985, 0.125974, 0.0554495, 0.317629, 0.240185, 0.216632, 0.403821, 0.554579, 0.955922, 0.173677, 0.286429, 0.621043, 0.724967, 0.666616, 0.0555232, 0.265642, 0.85446, 0.860972, 0.281179, 0.37778, 0.814466, 0.785219, 0.767731, 0.360001, 0.7588, 0.669505, 0.779305, 0.471352, 0.275894, 0.773946, 0.387764, 0.353426, 0.815332, 0.610091, 0.0198395, 0.883935, 0.460346, 0.162273, 0.997625, 0.951337, 0.695928, 0.759933, 0.401278, 0.856218, 0.276184, 0.504109, 0.76299, 0.825496, 0.340869, 0.245508, 0.758234, 0.295632, 0.717019, 0.520062, 0.563225, 0.284643, 0.339057, 0.909208, 0.919052, 0.675407, 0.0378963, 0.67125, 0.618967, 0.969515, 0.845679, 0.863896, 0.915108, 0.675248, 0.663042, 0.751497, 0.296159, 0.731409, 0.0285581, 0.429313, 0.515649, 0.638039, 0.458869, 0.131941, 0.979324, 0.798137, 0.862869, 0.900293, 0.732474, 0.0705629, 0.270529, 0.498765, 0.607826, 0.500047, 0.676414, 0.756136, 0.190196, 0.686842, 0.65908, 0.76664, 0.831188, 0.887319, 0.191147, 0.98713, 0.736585, 0.971298, 0.342997, 0.912222, 0.628565, 0.345245, 0.691291, 0.899544, 0.79744, 0.16101, 0.425983, 0.572252, 0.788322, 0.417363, 0.244534, 0.488441, 0.921632, 0.37453, 0.736699, 0.352986, 0.674132, 0.780165, 0.642586, 0.730052, 0.787112, 0.728426, 0.572247, 0.03463, 0.68244, 0.73817, 0.75052, 0.537633, 0.939482, 0.995564, 0.0787703, 0.00219422, 0.380415, 0.811731, 0.0605845, 0.138851, 0.729498, 0.199837, 0.399193, 0.472924, 0.695298, 0.413797, 0.101758, 0.562025, 0.0636009, 0.394252, 0.318197, 0.481093, 0.735629, 0.883258, 0.511363, 0.0960127, 0.570261, 0.168865, 0.789992, 0.409975, 0.408898, 0.60817, 0.710565, 0.534163, 0.292034, 0.222824, 0.495537, 0.892074, 0.478677, 0.389163, 0.597385, 0.837123, 0.672154, 0.682096, 0.32456, 0.0964614, 0.0890683, 0.486375, 0.667079, 0.454212, 0.421606, 0.966446, 0.0669027, 0.0634238, 0.395007, 0.402031, 0.548816, 0.16586, 0.904213, 0.440969, 0.216063, 0.629673, 0.932029, 0.81584, 0.053853, 0.797816, 0.169428, 0.132681, 0.594715, 0.812022, 0.549036, 0.842683, 0.420224, 0.404203, 0.0583616, 0.0230985, 0.40045, 0.125443, 0.503097, 0.278942, 0.476684, 0.912539, 0.474602, 0.21935, 0.54441, 0.345139, 0.994644, 0.566553, 0.0520835, 0.808824, 0.603088, 0.415181, 0.546723, 0.0136869, 0.612214, 0.796772, 0.629557, 0.979886, 0.383687, 0.044898, 0.278622, 0.343954, 0.216075, 0.966239, 0.422888, 0.170783, 0.514171, 0.401367, 0.543856, 0.595471, 0.82722, 0.283978, 0.0922692, 0.932564, 0.0598004, 0.594301, 0.116594, 0.203614, 0.351593, 0.0684048, 0.0777549, 0.879696, 0.00430396, 0.909826, 0.0465579, 0.33161, 0.0236601, 0.17313, 0.365709, 0.408294, 0.601167, 0.482956, 0.372955, 0.400157, 0.0255608, 0.715832, 0.928293, 0.590281, 0.930925, 0.314273, 0.357687, 0.451469, 0.32756, 0.120092, 0.410322, 0.95425, 0.845381, 0.0681171, 0.372794, 0.342892, 0.732141, 0.867536, 0.874434, 0.85772, 0.60432, 0.0885038, 0.404264, 0.398074, 0.119433, 0.638316, 0.755464, 0.709284, 0.628798, 0.835598, 0.904575, 0.336293, 0.714058, 0.554574, 0.900748, 0.46594, 0.59166, 0.664044, 0.388797, 0.277636, 0.651409, 0.83225, 0.464688, 0.85777, 0.440545, 0.539436, 0.2756, 0.232104, 0.370369, 0.0403602, 0.465258, 0.109327, 0.0761089, 0.632137, 0.649382, 0.769321, 0.385889, 0.727804, 0.722116, 0.316823, 0.55617, 0.178259, 0.82641, 0.825978, 0.959284, 0.00369669, 0.678182, 0.484151, 0.778799, 0.802664, 0.686154, 0.668922, 0.753168, 0.58172, 0.940841, 0.150399, 0.310802, 0.478986, 0.86857, 0.0529694, 0.628518, 0.816007, 0.638773, 0.0276212, 0.504084, 0.00824906, 0.206548, 0.959743, 0.453159, 0.302913, 0.465664, 0.837696, 0.307528, 0.546657, 0.606967, 0.719644, 0.764328, 0.268436, 0.179318, 0.000796436, 0.0185983, 0.702706, 0.237367, 0.295528, 0.657002, 0.487574, 0.274441, 0.947329, 0.816869, 0.755226, 0.832704, 0.508501, 0.759611, 0.743919, 0.552021, 0.584527, 0.353846, 0.997122, 0.273265, 0.528766, 0.694072, 0.278199, 0.270164, 0.507998, 0.569064, 0.71648, 0.520015, 0.494647, 0.547632, 0.053048, 0.54686, 0.460557, 0.893281, 0.0826122, 0.780413, 0.318118, 0.327702, 0.948741, 0.749454, 0.379775, 0.197342, 0.441201, 0.487044, 0.102453, 0.62077, 0.208023, 0.59954, 0.437963, 0.645729, 0.280912, 0.23066, 0.895854, 0.158095, 0.365078, 0.0328177, 0.331309, 0.852248, 0.713241, 0.805001, 0.68867, 0.126665, 0.66136, 0.0456048, 0.275175, 0.728597, 0.876747, 0.703472, 0.569631, 0.991902, 0.580252, 0.222799, 0.721635, 0.389082, 0.34485, 0.898645, 0.780462, 0.519908, 0.538189, 0.774642, 0.833867, 0.93958, 0.926064, 0.411182, 0.539883, 0.854669, 0.773631, 0.0848835, 0.89232, 0.025475, 0.350189, 0.176215, 0.0607147, 0.541975, 0.822398, 0.984168, 0.796827, 0.526517, 0.147365, 0.461512, 0.880727, 0.0231515, 0.962392, 0.617255, 0.258091, 0.84885, 0.393485, 0.704886, 0.922723, 0.688269, 0.407139, 0.935418, 0.571042, 0.11942, 0.982132, 0.824296, 0.312048, 0.103785, 0.983351, 0.16652, 0.271652, 0.57492, 0.200661, 0.611072, 0.836853, 0.745464, 0.414009, 0.772654, 0.579234, 0.0370925, 0.283828, 0.803075, 0.221144, 0.0312848, 0.598398, 0.965683, 0.0336897, 0.107113, 0.729821, 0.087041, 0.543042, 0.358967, 0.518301, 0.156004, 0.306046, 0.633751, 0.199647, 0.522865, 0.107152, 0.169999, 0.431278, 0.978252, 0.193718, 0.943982, 0.237834, 0.2771, 0.9646, 0.762601, 0.207008, 0.645238, 0.150583, 0.423062, 0.717546, 0.0563815, 0.962171, 0.638373, 0.705042, 0.534317, 0.58723, 0.554048, 0.238623, 0.295577, 0.885911, 0.0529201, 0.898848, 0.370815, 0.583385, 0.996378, 0.618232, 0.641957, 0.316822, 0.56646, 0.421175, 0.0101171, 0.292266, 0.574045, 0.615887, 0.591589, 0.681195, 0.551657, 0.80939, 0.86992, 0.283634, 0.963932, 0.286, 0.68426, 0.177203, 0.0885207, 0.618486, 0.133223, 0.437307, 0.952512, 0.939701, 0.351882, 0.956029, 0.360258, 0.931521, 0.505386, 0.33155, 0.855847, 0.110569, 0.594976, 0.175584, 0.200721, 0.519908, 0.598791, 0.718774, 0.802696, 0.418697, 0.0505992, 0.82239, 0.82677, 0.737835, 0.997216, 0.87038, 0.469017, 0.213352, 0.0833311, 0.955601, 0.732695, 0.43127, 0.314403, 0.108329, 0.782133, 0.748727, 0.559826, 0.978846, 0.858408, 0.6793, 0.993276, 0.809714, 0.583099, 0.309991, 0.0698749, 0.868124, 0.0655025, 0.148763, 0.786372, 0.173378, 0.143929, 0.129673, 0.870449, 0.423094, 0.996349, 0.932729, 0.351846, 0.944564, 0.186328, 0.458144, 0.646232, 0.840148, 0.0521953, 0.490151, 0.861728, 0.945871, 0.123322, 0.0219116, 0.694025, 0.549486, 0.787336, 0.731366, 0.95245, 0.765569, 0.337117, 0.978759, 0.981853, 0.596123, 0.426706, 0.546525, 0.265562, 0.453131, 0.208441, 0.549061, 0.750872, 0.093735, 0.888499, 0.994944, 0.177307, 0.254411, 0.457744, 0.34775, 0.133779, 0.929043, 0.0944183, 0.138461, 0.218889, 0.63263, 0.880749, 0.211545, 0.567309, 0.913402, 0.282153, 0.43556, 0.630123, 0.965008, 0.692314, 0.772579, 0.0808181, 0.46651, 0.974586, 0.638555, 0.460937, 0.905597, 0.19107, 0.17764, 0.894252, 0.414824, 0.352195, 0.207721, 0.73078, 0.609946, 0.590582, 0.410915, 0.488869, 0.825836, 0.737748, 0.326396, 0.800481, 0.253808, 0.761464, 0.44629, 0.802371, 0.48098, 0.754115, 0.864285, 0.179325, 0.238373, 0.138004, 0.27962, 0.932364, 0.80228, 0.0271451, 0.987216, 0.629104, 0.0498651, 0.995528, 0.600753, 0.175326, 0.474049, 0.0378203, 0.83367, 0.13611, 0.13769, 0.139143, 0.914651, 0.243489, 0.77545, 0.161589, 0.58287, 0.687041, 0.247851, 0.18179, 0.910724, 0.823587, 0.0550599, 0.427548, 0.936595, 0.0205633, 0.0179543, 0.663135, 0.270309, 0.080666, 0.83573, 0.604453, 0.766691, 0.010323, 0.957523, 0.390917, 0.159005, 0.448106, 0.431302, 0.137943, 0.571494, 0.0941859, 0.971891, 0.44257, 0.596926, 0.815116, 0.209047, 0.528437, 0.868364, 0.857529, 0.265967, 0.0264147, 0.427806, 0.479732, 0.936526, 0.134279, 0.932668, 0.842761, 0.950844, 0.928037, 0.902087, 0.631585, 0.242776, 0.0651731, 0.703864, 0.570125, 0.395168, 0.00144219, 0.198232, 0.0439579, 0.103995, 0.209509, 0.977651, 0.522272, 0.0326016, 0.0587909, 0.714106, 0.375312, 0.600653, 0.799133, 0.256873, 0.0646299, 0.226333, 0.481605, 0.197983, 0.877393, 0.819033, 0.117936, 0.773533, 0.309804, 0.322527, 0.485049, 0.29339, 0.578335, 0.661432, 0.190533, 0.111928, 0.307344, 0.336837, 0.231922, 0.0420848, 0.514988, 0.985584, 0.59564, 0.859343, 0.428762, 0.918974, 0.782172, 0.881984, 0.616943, 0.709915, 0.143853, 0.516046, 0.84039, 0.0616408, 0.856248, 0.0715974, 0.178598, 0.0788329, 0.214251, 0.501827, 0.10165, 0.149686, 0.568122, 0.526522, 0.588385, 0.649552, 0.802502, 0.914132, 0.184306, 0.79369, 0.00410956, 0.599341, 0.761062, 0.317949, 0.572229, 0.772129, 0.414773, 0.867983, 0.275066, 0.577239, 0.86939, 0.126182, 0.530422, 0.536293, 0.216343, 0.433691, 0.577769, 0.4999, 0.211479, 0.690396, 0.908978, 0.357924, 0.475413, 0.888614, 0.594871, 0.805686, 0.824012, 0.565476, 0.447597, 0.742646, 0.601787, 0.214971, 0.414767, 0.814431, 0.860898, 0.660798, 0.923988, 0.873648, 0.475515, 0.271393, 0.445084, 0.401211, 0.824812, 0.526915, 0.506517, 0.838271, 0.552343, 0.410306, 0.976452, 0.160352, 0.145517, 0.329589, 0.508718, 0.433945, 0.62697, 0.666669, 0.301417, 0.600519, 0.140122, 0.0342462, 0.749468, 0.362294, 0.573222, 0.940565, 0.606496, 0.800919, 0.0969009, 0.612881, 0.328299, 0.202667, 0.478386, 0.061613, 0.0408247, 0.113888, 0.264164, 0.181642, 0.830401, 0.919018, 0.707304, 0.660754, 0.173174, 0.725508, 0.258154, 0.0935418, 0.880605, 0.979335, 0.979478, 0.463536, 0.775126, 0.521115, 0.381796, 0.813129, 0.879217, 0.0569293, 0.64193, 0.0681011, 0.421784, 0.1403, 0.94013, 0.10248, 0.649367, 0.941418, 0.670194, 0.888578, 0.765968, 0.320945, 0.685102, 0.852353, 0.389216, 0.834381, 0.786971, 0.4331, 0.0486131, 0.460831, 0.812581, 0.588036, 0.0386062, 0.769703, 0.605088, 0.722163, 0.0314492, 0.832922, 0.903044, 0.231055, 0.728042, 0.110897, 0.431594, 0.309462, 0.11294, 0.0670814, 0.625663, 0.425656, 0.177113, 0.438086, 0.951453, 0.415572, 0.824223, 0.31294, 0.957691, 0.808175, 0.659531, 0.397838, 0.501979, 0.139841, 0.838215, 0.588624, 0.183401, 0.835496, 0.268936, 0.320515, 0.808754, 0.881535, 0.641655, 0.868639, 0.538035, 0.383658, 0.81925, 0.244493, 0.868118, 0.108817, 0.930293, 0.625395, 0.821832, 0.189743, 0.751963, 0.544101, 0.505598, 0.537047, 0.661969, 0.933226, 0.466824, 0.47114, 0.918811, 0.750851, 0.671081, 0.821295, 0.945188, 0.943402, 0.306194, 0.875262, 0.344571, 0.28533, 0.358017, 0.510657, 0.819928, 0.811225, 0.575014, 0.200153, 0.442748, 0.781176, 0.117917, 0.0319228, 0.330275, 0.430613, 0.395767, 0.941447, 0.249399, 0.55878, 0.976363, 0.707941, 0.539029, 0.929557, 0.661428, 0.531866, 0.216032, 0.775277, 0.613841, 0.630223, 0.690056, 0.159605, 0.172662, 0.648255, 0.627551, 0.890362, 0.820532, 0.166492, 0.872343, 0.4956, 0.427278, 0.768214, 0.0719299, 0.987919, 0.360018, 0.288648, 0.409812, 0.386399, 0.00474841, 0.843279, 0.300295, 0.367316, 0.521666, 0.00945934, 0.928267, 0.716858, 0.269648, 0.23232, 0.86501, 0.374387, 0.612416, 0.953231, 0.226648, 0.0856993, 0.160165, 0.0797144, 0.221482, 0.431156, 0.413296, 0.358701, 0.418836, 0.283429, 0.534095, 0.367291, 0.394108, 0.667079, 0.456069, 0.78066, 0.155554, 0.132467, 0.394805, 0.595467, 0.0211626, 0.651095, 0.655613, 0.177805, 0.124999, 0.807011, 0.634552, 0.0271443, 0.288895, 0.906153, 0.448306, 0.0305001, 0.502583, 0.770978, 0.594258, 0.0445926, 0.76084, 0.440544, 0.137063, 0.662651, 0.711555, 0.653516, 0.0763224, 0.637551, 0.0517443, 0.0645197, 0.913255, 0.555985, 0.133238, 0.980545, 0.290299, 0.303275, 0.300487, 0.467988, 0.338358, 0.602253, 0.175903, 0.658607, 0.137025, 0.463191, 0.0167984, 0.533693, 0.458243, 0.284057, 0.0650987, 0.700486, 0.122906, 0.832178, 0.858904, 0.833125, 0.885373, 0.415651, 0.545531, 0.113715, 0.482108, 0.118734, 0.96855, 0.965216, 0.981809, 0.845925, 0.714154, 0.7886, 0.836292, 0.415452, 0.781196, 0.904018, 0.243951, 0.7855, 0.670328, 0.713856, 0.126852, 0.169495, 0.794933, 0.239344, 0.794406, 0.523669, 0.117212, 0.790886, 0.439327, 0.376101, 0.271754, 0.0610157, 0.86614, 0.0221538, 0.89961, 0.632884, 0.923022, 0.231558, 0.315743, 0.7219, 0.549763, 0.337929, 0.312484, 0.962081, 0.36933, 0.948569, 0.801396, 0.410944, 0.425275, 0.532603, 0.0630479, 0.690848, 0.223495, 0.149753, 0.922555, 0.686001, 0.793803, 0.972618, 0.896042, 0.612586, 0.204122, 0.700157, 0.871581, 0.00910096, 0.373863, 0.236761, 0.302365, 0.505682, 0.420966, 0.557633, 0.607625, 0.0651274, 0.627289, 0.331521, 0.185134, 0.518712, 0.308724, 0.811741, 0.251559, 0.568634, 0.914078, 0.604802, 0.164206, 0.381585, 0.4562, 0.395127, 0.740485, 0.326243, 0.160696, 0.483046, 0.2234, 0.0760913, 0.091152, 0.116994, 0.673546, 0.651748, 0.232191, 0.172033, 0.830639, 0.533481, 0.651716, 0.0933954, 0.258903, 0.199218, 0.319521, 0.952921, 0.538796, 0.607854, 0.493173, 0.313999, 0.097214, 0.137803, 0.0880292, 0.582761, 0.0501668, 0.264903, 0.732472, 0.039704, 0.00950285, 0.688666, 0.885808, 0.562967, 0.663141, 0.0436381, 0.381255, 0.536207, 0.627869, 0.501329, 0.671545, 0.66127, 0.473033, 0.732092, 0.203037, 0.876202, 0.601081, 0.524588, 0.421899, 0.691385, 0.869965, 0.944745, 0.377468, 0.0368267, 0.896866, 0.90816, 0.138054, 0.287083, 0.335218, 0.941943, 0.0479425, 0.470131, 0.00903862, 0.275327, 0.573073, 0.513652, 0.728636, 0.459603, 0.847832, 0.0503086, 0.748406, 0.706157, 0.517583, 0.0141996, 0.414979, 0.08405, 0.402525, 0.233583, 0.0878202, 0.209633, 0.496619, 0.901065, 0.0438425, 0.538073, 0.423226, 0.408765, 0.915521, 0.182872, 0.61773, 0.853257, 0.636302, 0.764843, 0.278297, 0.351968, 0.209274, 0.400615, 0.491891, 0.454867, 0.937252, 0.392006, 0.307152, 0.160138, 0.647409, 0.313708, 0.904029, 0.0805075, 0.123685, 0.541003, 0.62969, 0.966634, 0.789415, 0.89396, 0.326296, 0.837853, 0.478753, 0.794071, 0.420256, 0.971584, 0.259005, 0.530313, 0.0114982, 0.162983, 0.464409, 0.864759, 0.5617, 0.332869, 0.0481572, 0.701619, 0.0315991, 0.640619, 0.160601, 0.0622128, 0.96043, 0.983107, 0.953527, 0.864518, 0.218876, 0.954606, 0.428151, 0.903055, 0.568602, 0.937188, 0.98872, 0.85357, 0.030049, 0.767508, 0.830182, 0.512175, 0.590847, 0.662972, 0.0807161, 0.158365, 0.999249, 0.567872, 0.954536, 0.642529, 0.830874, 0.957597, 0.402465, 0.677928, 0.612069, 0.696666, 0.840936, 0.595151, 0.578211, 0.685434, 0.944613, 0.239791, 0.251588, 0.188414, 0.288159, 0.630142, 0.315011, 0.977375, 0.15699, 0.716794, 0.214411, 0.573798, 0.811806, 0.81383, 0.959703, 0.899141, 0.608386, 0.221686, 0.984997, 0.904847, 0.151414, 0.588994, 0.515622, 0.111433, 0.917686, 0.972467, 0.581991, 0.392258, 0.633952, 0.524463, 0.381312, 0.817605, 0.980241, 0.318238, 0.53001, 0.27213, 0.467488, 0.294794, 0.798982, 0.669384, 0.719301, 0.958382, 0.804702, 0.141455, 0.560358, 0.542309, 0.00725739, 0.446341, 0.249821, 0.949181, 0.941526, 0.993123, 0.0814309, 0.156428, 0.296623, 0.763557, 0.859472, 0.720457, 0.733383, 0.569087, 0.0409618, 0.309238, 0.332018, 0.262818, 0.721738, 0.0768555, 0.746524, 0.850146, 0.714619, 0.162055, 0.917288, 0.785032, 0.554666, 0.320327, 0.439398, 0.957625, 0.944559, 0.0686576, 0.257077, 0.970626, 0.62337, 0.867643, 0.667705, 0.93922, 0.00102708, 0.00206041, 0.595461, 0.432175, 0.367634, 0.649383, 0.402521, 0.3633, 0.261763, 0.587614, 0.504025, 0.190015, 0.627813, 0.397097, 0.788601, 0.725343, 0.554026, 0.83152, 0.495644, 0.277014, 0.388641, 0.762496, 0.374025, 0.86129, 0.0407293, 0.584523, 0.544645, 0.871006, 0.617099, 0.447033, 0.710581, 0.84883, 0.481444, 0.311391, 0.581752, 0.344506, 0.745902, 0.0426611, 0.162753, 0.704493, 0.250898, 0.68663, 0.796968, 0.581858, 0.991296, 0.704103, 0.732113, 0.428668, 0.622033, 0.617142, 0.422555, 0.526939, 0.939926, 0.48753, 0.607909, 0.0481371, 0.708371, 0.026737, 0.235826, 0.0291002, 0.119347, 0.211346, 0.230851, 0.279482, 0.519222, 0.39127, 0.626721, 0.603084, 0.339094, 0.142595, 0.696528, 0.284544, 0.24334, 0.573797, 0.203033, 0.180646, 0.7183, 0.675145, 0.326594, 0.765995, 0.545793, 0.885235, 0.229569, 0.396105, 0.963607, 0.29157, 0.100511, 0.380513, 0.297258, 0.36894, 0.306344, 0.80289, 0.893432, 0.766634, 0.227175, 0.287085, 0.606253, 0.575777, 0.337349, 0.71287, 0.565895, 0.88872, 0.631308, 0.142192, 0.343971, 0.290115, 0.172617, 0.125252, 0.850873, 0.375555, 0.132906, 0.209471, 0.941131, 0.0870937, 0.830269, 0.406239, 0.110883, 0.558027, 0.643672, 0.204696, 0.281936, 0.193102, 0.981494, 0.293286, 0.762034, 0.119543, 0.500904, 0.0199665, 0.781367, 0.813823, 0.685262, 0.270013, 0.317096, 0.123699, 0.842954, 0.164216, 0.0241652, 0.589907, 0.707067, 0.894229, 0.275417, 0.83801, 0.690485, 0.834596, 0.617023, 0.0834039, 0.603464, 0.623476, 0.436211, 0.980066, 0.0226747, 0.79512, 0.235173, 0.354364, 0.281109, 0.917475, 0.782733, 0.98023, 0.282638, 0.437491, 0.733053, 0.468777, 0.470778, 0.234974, 0.851907, 0.514415, 0.554819, 0.461715, 0.98942, 0.643724, 0.0663051, 0.390555, 0.038522, 0.174123, 0.697024, 0.819552, 0.280796, 0.709868, 0.860632, 0.906449, 0.374823, 0.719379, 0.735071, 0.798275, 0.291949, 0.695889, 0.380973, 0.125914, 0.954415, 0.239392, 0.226089, 0.177524, 0.829654, 0.648409, 0.40236, 0.204048, 0.861321, 0.318195, 0.444191, 0.946016, 0.933354, 0.695845, 0.157571, 0.3451, 0.828508, 0.263626, 0.514817, 0.946433, 0.572556, 0.595014, 0.954246, 0.578397, 0.274419, 0.398533, 0.677832, 0.756134, 0.518582, 0.934838, 0.926696, 0.408439, 0.357739, 0.333876, 0.559884, 0.614297, 0.371403, 0.11742, 0.960378, 0.883136, 0.481486, 0.184133, 0.58541, 0.607515, 0.0308657, 0.917573, 0.0647184, 0.258382, 0.18783, 0.924871, 0.686562, 0.657322, 0.431049, 0.241608, 0.147015, 0.920292, 0.383998, 0.304657, 0.282625, 0.302467, 0.546403, 0.436642, 0.91491, 0.717142, 0.217742, 0.158671, 0.814419, 0.837199, 0.994399, 0.263271, 0.581781, 0.12564, 0.137798, 0.0892224, 0.404939, 0.858036, 0.176193, 0.856965, 0.00815598, 0.449133, 0.129093, 0.0774662, 0.873704, 0.444002, 0.138117, 0.944524, 0.622295, 0.902876, 0.0370288, 0.418928, 0.659432, 0.0333929, 0.267613, 0.976323, 0.211061, 0.170965, 0.80337, 0.140518, 0.0104873, 0.0498906, 0.529262, 0.464673, 0.867122, 0.975732, 0.199705, 0.187325, 0.0741305, 0.551017, 0.470653, 0.0212216, 0.808663, 0.771354, 0.596296, 0.724894, 0.793356, 0.336402, 0.309215, 0.255515, 0.710968, 0.363766, 0.805144, 0.998737, 0.76862, 0.98081, 0.507679, 0.582929, 0.981082, 0.507978, 0.0752734, 0.0377054, 0.938455, 0.525395, 0.140897, 0.355304, 0.662316, 0.599575, 0.802774, 0.553816, 0.591719, 0.410345, 0.745233, 0.722667, 0.509046, 0.908693, 0.850967, 0.0324016, 0.924513, 0.157167, 0.739413, 0.37459, 0.839959, 0.923021, 0.412234, 0.0345796, 0.903386, 0.524018, 0.844048, 0.742732, 0.0567757, 0.501753, 0.00601583, 0.672038, 0.575995, 0.514017, 0.0965867, 0.368068, 0.876781, 0.455834, 0.988867, 0.320823, 0.791238, 0.685618, 0.688263, 0.30172, 0.154157, 0.38967, 0.893093, 0.682824, 0.491578, 0.147365, 0.422887, 0.77626, 0.196574, 0.152135, 0.458944, 0.434116, 0.541536, 0.766819, 0.655184, 0.196817, 0.505151, 0.757189, 0.954487, 0.579187, 0.216767, 0.964215, 0.839978, 0.670988, 0.331055, 0.182331, 0.703817, 0.744852, 0.524631, 0.582248, 0.387029, 0.936402, 0.452148, 0.226594, 0.451548, 0.482084, 0.11335, 0.130897, 0.375126, 0.585692, 0.641658, 0.597116, 0.714599, 0.679359, 0.821281, 0.529628, 0.552795, 0.833701, 0.553135, 0.376353, 0.418704, 0.667053, 0.593472, 0.0308925, 0.825259, 0.48765, 0.134168, 0.44145, 0.959864, 0.0557883, 0.588004, 0.141181, 0.256054, 0.351418, 0.793767, 0.427475, 0.274212, 0.834324, 0.604863, 0.208494, 0.158566, 0.0249299, 0.657403, 0.737942, 0.533073, 0.942514, 0.474294, 0.213768, 0.930265, 0.840173, 0.347749, 0.885124, 0.751381, 0.553558, 0.306672, 0.634265, 0.0902744, 0.747288, 0.23759, 0.0710373, 0.047687, 0.158565, 0.691001, 0.651163, 0.841605, 0.509969, 0.177072, 0.368876, 0.254477, 0.0600976, 0.247018, 0.307013, 0.470346, 0.856977, 0.486844, 0.0455714, 0.684224, 0.0756216, 0.835829, 0.419441, 0.550001, 0.583555, 0.399605, 0.171784, 0.469342, 0.97022, 0.857533, 0.0112206, 0.467318, 0.48188, 0.492544, 0.86111, 0.177766, 0.268772, 0.506046, 0.763479, 0.333753, 0.484561, 0.88045, 0.738057, 0.766067, 0.776356, 0.00245242, 0.436079, 0.0633805, 0.415047, 0.424136, 0.460834, 0.285765, 0.242759, 0.948502, 0.476294, 0.306081, 0.432637, 0.242089, 0.492189, 0.751988, 0.732986, 0.25638, 0.298272, 0.499268, 0.794713, 0.594566, 0.789394, 0.205432, 0.887851, 0.380283, 0.351148, 0.277007, 0.173036, 0.518288, 0.599575, 0.549851, 0.0718886, 0.878768, 0.976984, 0.904287, 0.404998, 0.246444, 0.486814, 0.33542, 0.384795, 0.312766, 0.551052, 0.832833, 0.964851, 0.112455, 0.34335, 0.827286, 0.468636, 0.968977, 0.199412, 0.753429, 0.669971, 0.299026, 0.945928, 0.580359, 0.747843, 0.953723, 0.318124, 0.460227, 0.40709, 0.327655, 0.5047, 0.683002, 0.0211267, 0.503006, 0.917106, 0.391914, 0.998695, 0.720124, 0.186802, 0.188715, 0.447346, 0.961447, 0.966021, 0.595159, 0.0295533, 0.821429, 0.451973, 0.577396, 0.469745, 0.543003, 0.561706, 0.925863, 0.0838483, 0.288927, 0.948506, 0.481951, 0.214777, 0.692486, 0.23302, 0.645125, 0.698085, 0.3244, 0.00853607, 0.50614, 0.654027, 0.579495, 0.292898, 0.648634, 0.833606, 0.884226, 0.148754, 0.950711, 0.331601, 0.572725, 0.642462, 0.957883, 0.0358616, 0.855363, 0.350406, 0.546699, 0.67605, 0.925901, 0.872315, 0.816289, 0.159165, 0.856594, 0.349519, 0.422961, 0.358601, 0.361202, 0.0431684, 0.891921, 0.224032, 0.232555, 0.683654, 0.943001, 0.159989, 0.32933, 0.649271, 0.963157, 0.478735, 0.500318, 0.100967, 0.596231, 0.323051, 0.287573, 0.208628, 0.149283, 0.0828627, 0.730904, 0.802556, 0.693205, 0.617672, 0.895647, 0.127091, 0.957333, 0.0131387, 0.252134, 0.479621, 0.508372, 0.28919, 0.786126, 0.333306, 0.51313, 0.145698, 0.901917, 0.96923, 0.850668, 0.750444, 0.673972, 0.312499, 0.976766, 0.155382, 0.617215, 0.661184, 0.731335, 0.33314, 0.00343491, 0.196903, 0.672564, 0.339787, 0.433247, 0.308537, 0.491999, 0.50052, 0.0471497, 0.852182, 0.400892, 0.964917, 0.121747, 0.910889, 0.965982, 0.581256, 0.1072, 0.680748, 0.0555249, 0.448541, 0.660725, 0.700136, 0.823149, 0.541174, 0.597859, 0.160044, 0.727947, 0.735551, 0.617442, 0.970376, 0.99503, 0.780881, 0.295009, 0.376218, 0.805222, 0.645669, 0.11074, 0.953806, 0.0242301, 0.750982, 0.514704, 0.5657, 0.368459, 0.54815, 0.329717, 0.414719, 0.666947, 0.675185, 0.0672083, 0.659835, 0.877681, 0.974564, 0.329524, 0.923178, 0.515386, 0.441206, 0.725525, 0.250916, 0.682244, 0.170287, 0.403503, 0.308291, 0.395623, 0.767037, 0.0206959, 0.862882, 0.873123, 0.428151, 0.156571, 0.24359, 0.521552, 0.278707, 0.720586, 0.103661, 0.734499, 0.908199, 0.11442, 0.239555, 0.951843, 0.124057, 0.764645, 0.257158, 0.92787, 0.0870966, 0.403574, 0.562358, 0.996112, 0.910104, 0.297306, 0.45252, 0.292735, 0.510299, 0.830176, 0.12918, 0.259885, 0.524489, 0.672908, 0.093028, 0.242972, 0.166893, 0.273353, 0.599158, 0.356853, 0.732843, 0.103803, 0.895193, 0.357082, 0.0386378, 0.987084, 0.350177, 0.301136, 0.586194, 0.15287, 0.539825, 0.396232, 0.931566, 0.409499, 0.344459, 0.0367832, 0.560898, 0.890848, 0.482983, 0.77089, 0.487851, 0.699821, 0.877822, 0.80039, 0.751955, 0.739457, 0.640459, 0.869741, 0.945419, 0.931186, 0.441144, 0.364651, 0.879771, 0.202563, 0.500254, 0.928054, 0.991443, 0.783682, 0.451575, 0.507351, 0.714173, 0.818625, 0.60254, 0.317403, 0.3855, 0.336991, 0.00133882, 0.0361199, 0.186633, 0.107588, 0.314715, 0.29347, 0.888815, 0.531259, 0.838933, 0.948802, 0.875055, 0.612094, 0.326938, 0.413269, 0.11842, 0.0209559, 0.583947, 0.432853, 0.811403, 0.689931, 0.266728, 0.27297, 0.698449, 0.734146, 0.7829, 0.753814, 0.194505, 0.0899534, 0.656829, 0.0137207, 0.955975, 0.395685, 0.55713, 0.97066, 0.147817, 0.931832, 0.545807, 0.500586, 0.655721, 0.590013, 0.0331138, 0.345493, 0.828562, 0.856873, 0.0159198, 0.378047, 0.787885, 0.402999, 0.496351, 0.618542, 0.296037, 0.523252, 0.199806, 0.874143, 0.589831, 0.293539, 0.0993665, 0.694305, 0.403531, 0.932365, 0.0359973, 0.650053, 0.475801, 0.606347, 0.297803, 0.233503, 0.793415, 0.744092, 0.829684, 0.165114, 0.319328, 0.214302, 0.321992, 0.133982, 0.589505, 0.391096, 0.164082, 0.755471, 0.910588, 0.246127, 0.566981, 0.400291, 0.455368, 0.360917, 0.680342, 0.221744, 0.903978, 0.743636, 0.228905, 0.7694, 0.99255, 0.23331, 0.143171, 0.174363, 0.828049, 0.0932809, 0.214401, 0.759514, 0.334247, 0.868765, 0.682726, 0.202166, 0.0248352, 0.599662, 0.614277, 0.456066, 0.935424, 0.764551, 0.97608, 0.714571, 0.452008, 0.384825, 0.265579, 0.924438, 0.472544, 0.44634, 0.964771, 0.727533, 0.0392375, 0.803777, 0.506951, 0.0858723, 0.284566, 0.572916, 0.831223, 0.527367, 0.430055, 0.645944, 0.905373, 0.694997, 0.595465, 0.904301, 0.228418, 0.838301, 0.644333, 0.987351, 0.0155199, 0.266114, 0.595526, 0.740514, 0.730127, 0.511462, 0.147132, 0.723015, 0.861887, 0.135874, 0.517908, 0.49663, 0.428724, 0.345783, 0.41971, 0.5259, 0.31237, 0.636449, 0.0762187, 0.553017, 0.785511, 0.23417, 0.520302, 0.0106807, 0.818606, 0.411141, 0.11986, 0.489176, 0.10744, 0.0908673, 0.0190166, 0.28363, 0.531797, 0.915454, 0.401515, 0.869094, 0.142864, 0.857725, 0.286094, 0.155983, 0.544001, 0.097237, 0.804455, 0.451285, 0.638986, 0.229406, 0.911183, 0.127759, 0.100493, 0.923189, 0.439978, 0.218921, 0.902318, 0.872992, 0.0758135, 0.723589, 0.425318, 0.605319, 0.336365, 0.714893, 0.788778, 0.0648718, 0.505498, 0.922362, 0.733696, 0.159567, 0.0580725, 0.979141, 0.222945, 0.68021, 0.720481, 0.417248, 0.540786, 0.918592, 0.774705, 0.0538489, 0.480015, 0.0992691, 0.916992, 0.743738, 0.339782, 0.0836222, 0.0728764, 0.0105342, 0.676257, 0.825676, 0.768047, 0.255021, 0.965637, 0.0560355, 0.332061, 0.685223, 0.642247, 0.604461, 0.179018, 0.829109, 0.573856, 0.693878, 0.927343, 0.622609, 0.172197, 0.0989473, 0.140669, 0.767246, 0.463837, 0.893652, 0.763666, 0.959632, 0.0820774, 0.158949, 0.846587, 0.981103, 0.439481, 0.848754, 0.392567, 0.776011, 0.17427, 0.823469, 0.00488921, 0.637263, 0.398956, 0.418484, 0.280438, 0.262279, 0.703354, 0.464967, 0.00209161, 0.976941, 0.24688, 0.966388, 0.522709, 0.863451, 0.643606, 0.680348, 0.700682, 0.697095, 0.159629, 0.168901, 0.988826, 0.27654, 0.370214, 0.304424, 0.546366, 0.962145, 0.434981, 0.13419, 0.812772, 0.850664, 0.765539, 0.593282, 0.88781, 0.366307, 0.423486, 0.830649, 0.848593, 0.890174, 0.59606, 0.124577, 0.0116874, 0.0796542, 0.15658, 0.417686, 0.0698055, 0.653551, 0.644604, 0.620626, 0.920253, 0.450845, 0.435975, 0.0288537, 0.963141, 0.050949, 0.464791, 0.898443, 0.0748599, 0.0796603, 0.952003, 0.814862, 0.483537, 0.818661, 0.174355, 0.3693, 0.769965, 0.411787, 0.570768, 0.00840454, 0.264794, 0.606351, 0.512022, 0.306872, 0.971752, 0.817324, 0.202587, 0.242578, 0.607889, 0.616934, 0.120978, 0.74438, 0.210367, 0.067249, 0.324255, 0.241723, 0.522241, 0.926163, 0.743968, 0.461381, 0.00381675, 0.142315, 0.562517, 0.302568, 0.312824, 0.875651, 0.424954, 0.302876, 0.69249, 0.377015, 0.56414, 0.522892, 0.348428, 0.650261, 0.658012, 0.21629, 0.418835, 0.202507, 0.925388, 0.52659, 0.402961, 0.580876, 0.183709, 0.641399, 0.825876, 0.115844, 0.509208, 0.442995, 0.643152, 0.325416, 0.745719, 0.930997, 0.429934, 0.842501, 0.315051, 0.930339, 0.421552, 0.0406437, 0.194395, 0.979417, 0.196005, 0.459418, 0.837538, 0.892313, 0.558789, 0.259116, 0.511931, 0.988011, 0.925103, 0.629429, 0.923004, 0.225344, 0.188839, 0.135982, 0.199065, 0.836222, 0.610291, 0.188366, 0.280982, 0.412775, 0.486768, 0.521274, 0.447508, 0.674142, 0.766363, 0.84946, 0.138023, 0.894015, 0.551769, 0.459831, 0.629775, 0.967962, 0.166656, 0.11692, 0.230943, 0.914559, 0.253356, 0.257224, 0.0365, 0.242121, 0.758501, 0.775766, 0.331163, 0.107237, 0.439971, 0.521181, 0.486016, 0.689438, 0.940671, 0.343961, 0.636371, 0.857439, 0.708101, 0.0647187, 0.463431, 0.0744246, 0.740449, 0.183769, 0.140942, 0.166013, 0.559759, 0.550765, 0.82458, 0.553142, 0.672139, 0.429642, 0.25702, 0.678835, 0.809112, 0.689459, 0.412666, 0.133956, 0.724851, 0.407923, 0.216539, 0.576855, 0.820825, 0.349875, 0.518718, 0.271224, 0.231833, 0.757653, 0.0895289, 0.257958, 0.912803, 0.0139883, 0.344305, 0.100899, 0.695395, 0.961772, 0.314913, 0.532151, 0.0283038, 0.366278, 0.0283777, 0.272278, 0.103625, 0.964489, 0.238313, 0.269668, 0.632904, 0.29736, 0.368477, 0.106029, 0.650432, 0.364907, 0.586893, 0.242471, 0.118621, 0.604534, 0.660508, 0.439595, 0.847147, 0.347881, 0.763572, 0.368871, 0.898759, 0.318257, 0.812952, 0.670345, 0.432463, 0.0923226, 0.217449, 0.525968, 0.133824, 0.302355, 0.644307, 0.0201002, 0.706517, 0.036478, 0.482702, 0.157479, 0.530659, 0.162151, 0.956726, 0.909987, 0.256089, 0.543585, 0.754504, 0.4189, 0.616675, 0.382668, 0.445062, 0.550738, 0.44239, 0.440681, 0.782925, 0.673463, 0.721832, 0.608257, 0.75857, 0.828145, 0.326748, 0.456011, 0.445707, 0.891813, 0.892112, 0.843948, 0.324528, 0.337412, 0.696943, 0.0881224, 0.513478, 0.385583, 0.241667, 0.0386527, 0.801009, 0.740472, 0.579326, 0.0885084, 0.249975, 0.973349, 0.716268, 0.90273, 0.384742, 0.195964, 0.277899, 0.597481, 0.480783, 0.241156, 0.663277, 0.551371, 0.578432, 0.473187, 0.938191, 0.434135, 0.133075, 0.761996, 0.389936, 0.172719, 0.611525, 0.204329, 0.263872, 0.727619, 0.100638, 0.763588, 0.237667, 0.133217, 0.104672, 0.190663, 0.0767215, 0.201889, 0.751326, 0.997555, 0.715038, 0.713715, 0.376388, 0.987886, 0.0617841, 0.661246, 0.652291, 0.0923544, 0.0308808, 0.501141, 0.736117, 0.712257, 0.656811, 0.64766, 0.984208, 0.0851364, 0.806212, 0.498606, 0.802776, 0.734658, 0.475529, 0.16211, 0.660125, 0.800007, 0.391612, 0.597028, 0.512106, 0.245036, 0.118873, 0.615805, 0.986868, 0.054786, 0.0454046, 0.640423, 0.736197, 0.814998, 0.194092, 0.562153, 0.317739, 0.389143, 0.78137, 0.135982, 0.997584, 0.168038, 0.68237, 0.66544, 0.935733, 0.0448366, 0.807947, 0.548399, 0.188544, 0.596718, 0.499102, 0.725755, 0.517412, 0.415171, 0.799607, 0.91989, 0.00617531, 0.325688, 0.884327, 0.390274, 0.365613, 0.345935, 0.964806, 0.977122, 0.896192, 0.00709287, 0.128217, 0.553729, 0.869597, 0.426966, 0.42264, 0.899114, 0.248113, 0.327942, 0.0200032, 0.650956, 0.852009, 0.553268, 0.282942, 0.368654, 0.255745, 0.706839, 0.122648, 0.637827, 0.742952, 0.917863, 0.981202, 0.849317, 0.451939, 0.299898, 0.604877, 0.582485, 0.406244, 0.280508, 0.378976, 0.8962, 0.155116, 0.705341, 0.853393, 0.796647, 0.835826, 0.537941, 0.356798, 0.406637, 0.220824, 0.821627, 0.213582, 0.158235, 0.418182, 0.512412, 0.867661, 0.143291, 0.328164, 0.420325, 0.952297, 0.523191, 0.778869, 0.17798, 0.148116, 0.896001, 0.838819, 0.334348, 0.680348, 0.233557, 0.358931, 0.777211, 0.455152, 0.353307, 0.427389, 0.694479, 0.454388, 0.503183, 0.459568, 0.14898, 0.751231, 0.339429, 0.976507, 0.397279, 0.365305, 0.730641, 0.314821, 0.299901, 0.0442625, 0.530148, 0.124517, 0.36441, 0.711645, 0.150867, 0.119311, 0.803493, 0.577025, 0.154133, 0.855526, 0.167556, 0.0726803, 0.986192, 0.711038, 0.700279, 0.101081, 0.376973, 0.339022, 0.714614, 0.845482, 0.748709, 0.590311, 0.549802, 0.88379, 0.90665, 0.599165, 0.318602, 0.450632, 0.614344, 0.599932, 0.993133, 0.488163, 0.981342, 0.660076, 0.357435, 0.838049, 0.275362, 0.527635, 0.33595, 0.725304, 0.201363, 0.415586, 0.477069, 0.183765, 0.842161, 0.71911, 0.0501112, 0.140767, 0.0630424, 0.727841, 0.255242, 0.215203, 0.878294, 0.80831, 0.55843, 0.849316, 0.602507, 0.429003, 0.926976, 0.496692, 0.848701, 0.387426, 0.897372, 0.985553, 0.917961, 0.620809, 0.210813, 0.713325, 0.407355, 0.608745, 0.64716, 0.0910119, 0.663932, 0.22989, 0.39938, 0.888425, 0.249655, 0.62257, 0.16863, 0.467721, 0.254101, 0.246962, 0.483187, 0.145163, 0.762424, 0.678772, 0.581166, 0.497457, 0.807209, 0.618063, 0.928199, 0.405722, 0.0639033, 0.304547, 0.721251, 0.0532577, 0.312875, 0.0208994, 0.28299, 0.245854, 0.24187, 0.195145, 0.426554, 0.590713, 0.926482, 0.884256, 0.244717, 0.640514, 0.888139, 0.869076, 0.375902, 0.611445, 0.103326, 0.871283, 0.349523, 0.0435, 0.407227, 0.47896, 0.26037, 0.117671, 0.643218, 0.735592, 0.0501995, 0.0539877, 0.731132, 0.647197, 0.121368, 0.755002, 0.00942637, 0.239114, 0.305674, 0.732567, 0.10165, 0.584198, 0.81425, 0.0772014, 0.202098, 0.143637, 0.916334, 0.370711, 0.913067, 0.401011, 0.419061, 0.202868, 0.402323, 0.715266, 0.0427013, 0.101992, 0.757109, 0.472456, 0.655636, 0.512524, 0.149225, 0.45658, 0.662492, 0.772303, 0.439502, 0.892644, 0.557149, 0.370436, 0.685567, 0.0729638, 0.255043, 0.255935, 0.6723, 0.61798, 0.242036, 0.791978, 0.827763, 0.0960702, 0.891181, 0.0336213, 0.140845, 0.223115, 0.640207, 0.334803, 0.441755, 0.475937, 0.490464, 0.304141, 0.495447, 0.721345, 0.161497, 0.760148, 0.399392, 0.341925, 0.501023, 0.683928, 0.862598, 0.291447, 0.176142, 0.746436, 0.348092, 0.924732, 0.667015, 0.148705, 0.169056, 0.232397, 0.416639, 0.830783, 0.0892667, 0.39345, 0.911377, 0.392667, 0.48043, 0.888646, 0.740502, 0.20495, 0.691639, 0.236369, 0.837036, 0.699674, 0.704523, 0.766803, 0.112831, 0.235875, 0.237561, 0.379964, 0.72585, 0.18868, 0.559117, 0.652368, 0.0557769, 0.059707, 0.280615, 0.970609, 0.254852, 0.425911, 0.64626, 0.532695, 0.988222, 0.236712, 0.721678, 0.936648, 0.281807, 0.977457, 0.567822, 0.537675, 0.266395, 0.964645, 0.424837, 0.396668, 0.876003, 0.177933, 0.847145, 0.220712, 0.145708, 0.970514, 0.839388, 0.339196, 0.203088, 0.0440583, 0.0574227, 0.822016, 0.151891, 0.00814889, 0.143404, 0.500437, 0.884329, 0.727449, 0.84794, 0.507022, 0.0639527, 0.926338, 0.562486, 0.584309, 0.785913, 0.476427, 0.223219, 0.906634, 0.921264, 0.663747, 0.568191, 0.0982033, 0.300347, 0.570192, 0.160566, 0.386881, 0.693185, 0.799988, 0.314383, 0.193663, 0.0463569, 0.86968, 0.940207, 0.610665, 0.134416, 0.0176809, 0.297985, 0.731683, 0.302342, 0.513029, 0.998688, 0.790487, 0.0817636, 0.123725, 0.570267, 0.435789, 0.319516, 0.0293822, 0.805744, 0.805451, 0.279035, 0.220198, 0.106837, 0.509024, 0.641325, 0.366067, 0.552911, 0.467587, 0.832667, 0.386892, 0.0388026, 0.81917, 0.970622, 0.860976, 0.769095, 0.512708, 0.87943, 0.694737, 0.869173, 0.705601, 0.317065, 0.104031, 0.941113, 0.037946, 0.652652, 0.450996, 0.494027, 0.509294, 0.350889, 0.296385, 0.135312, 0.945387, 0.199201, 0.500907, 0.645031, 0.564879, 0.422849, 0.830481, 0.527812, 0.587382, 0.519882, 0.958029, 0.152792, 0.216143, 0.334917, 0.80129, 0.427097, 0.747404, 0.743926, 0.689253, 0.850445, 0.445943, 0.854219, 0.0215406, 0.153485, 0.327062, 0.123348, 0.023221, 0.410068, 0.276339, 0.544041, 0.760288, 0.56301, 0.365529, 0.236871, 0.352406, 0.0326252, 0.0420352, 0.254531, 0.250577, 0.395593, 0.569709, 0.79069, 0.593037, 0.877957, 0.674513, 0.673686, 0.105089, 0.885284, 0.997107, 0.1188, 0.442964, 0.284258, 0.570847, 0.347612, 0.0810332, 0.306508, 0.0429041, 0.556203, 0.0786733, 0.00551572, 0.683756, 0.129694, 0.615503, 0.877287, 0.815159, 0.22483, 0.156588, 0.0199058, 0.742073, 0.155857, 0.417716, 0.514476, 0.482413, 0.506929, 0.841076, 0.524109, 0.196613, 0.577095, 0.964816, 0.867181, 0.599843, 0.641219, 0.310672, 0.353755, 0.0254282, 0.55567, 0.143545, 0.730299, 0.118997, 0.0797341, 0.430796, 0.346511, 0.781069, 0.890301, 0.174282, 0.850414, 0.416127, 0.969729, 0.382448, 0.662187, 0.424187, 0.181018, 0.701277, 0.831499, 0.569624, 0.133955, 0.775872, 0.714001, 0.0324761, 0.51312, 0.994919, 0.0251474, 0.128787, 0.565303, 0.973401, 0.891416, 0.444574, 0.125922, 0.449134, 0.963217, 0.647622, 0.0650193, 0.885061, 0.00146885, 0.580925, 0.473301, 0.610966, 0.0525989, 0.435777, 0.0144924, 0.0593824, 0.0571613, 0.974562, 0.431726, 0.915335, 0.445885, 0.375113, 0.326323, 0.983566, 0.760216, 0.234949, 0.155379, 0.252256, 0.0425016, 0.183463, 0.0574654, 0.343602, 0.764554, 0.0194104, 0.680357, 0.471967, 0.482903, 0.470674, 0.925088, 0.552035, 0.865305, 0.411616, 0.654372, 0.0357468, 0.122863, 0.940946, 0.817483, 0.499309, 0.970009, 0.498721, 0.0211476, 0.796745, 0.225094, 0.5829, 0.455718, 0.168262, 0.0890872, 0.0821087, 0.190761, 0.961716, 0.169272, 0.984354, 0.627827, 0.832658, 0.915731, 0.0453027, 0.685062, 0.796526, 0.952043, 0.553551, 0.644408, 0.443399, 0.514475, 0.132787, 0.697997, 0.871876, 0.559355, 0.114595, 0.161937, 0.614778, 0.508195, 0.905827, 0.59435, 0.249659, 0.133382, 0.274239, 0.886799, 0.699829, 0.828538, 0.649996, 0.621314, 0.687555, 0.0425832, 0.321515, 0.582666, 0.0872077, 0.933264, 0.100484, 0.728426, 0.592195, 0.825828, 0.951506, 0.557535, 0.67833, 0.601763, 0.263594, 0.124196, 0.492818, 0.942032, 0.831677, 0.982675, 0.163366, 0.903401, 0.589087, 0.822523, 0.946225, 0.397165, 0.17114, 0.366518, 0.378886, 0.45086, 0.221762, 0.42617, 0.22721, 0.0202198, 0.42354, 0.815119, 0.980494, 0.226656, 0.565361, 0.72072, 0.213007, 0.850502, 0.302439, 0.0923598, 0.318314, 0.650614, 0.177618, 0.416822, 0.0751303, 0.624968, 0.836197, 0.337152, 0.381186, 0.544312, 0.650402, 0.270946, 0.432987, 0.0311186, 0.737032, 0.186079, 0.611923, 0.215221, 0.23069, 0.356222, 0.317295, 0.71885, 0.733882, 0.459614, 0.155991, 0.262909, 0.0556322, 0.538095, 0.24667, 0.0529361, 0.653603, 0.00330699, 0.73626, 0.113499, 0.977045, 0.433087, 0.380206, 0.507099, 0.604064, 0.210001, 0.189443, 0.606213, 0.70066, 0.421405, 0.668883, 0.050616, 0.174679, 0.216191, 0.429013, 0.534606, 0.323534, 0.374716, 0.575614, 0.66395, 0.277489, 0.593676, 0.985517, 0.901258, 0.965618, 0.860015, 0.696336, 0.0827566, 0.592141, 0.40765, 0.150809, 0.229297, 0.134465, 0.717002, 0.493493, 0.922087, 0.530128, 0.41164, 0.0119914, 0.827675, 0.473716, 0.312342, 0.783842, 0.0437826, 0.655025, 0.5513, 0.357709, 0.771197, 0.681697, 0.383887, 0.395078, 0.469344, 0.868204, 0.328039, 0.503278, 0.571864, 0.0658645, 0.647429, 0.143174, 0.904441, 0.303786, 0.563792, 0.522408, 0.683271, 0.880676, 0.0166372, 0.276394, 0.0119003, 0.915804, 0.0259784, 0.523413, 0.718726, 0.486712, 0.930253, 0.371854, 0.0817778, 0.599925, 0.517217, 0.645896, 0.68982, 0.0358662, 0.940957, 0.356864, 0.66361, 0.971261, 0.263755, 0.880846, 0.440412, 0.59978, 0.15946, 0.0938822, 0.227498, 0.897745, 0.55373, 0.00787538, 0.652575, 0.302825, 0.997172, 0.164793, 0.56798, 0.315879, 0.646925, 0.0511829, 0.0249178, 0.0895109, 0.986492, 0.312031, 0.462938, 0.794628, 0.068469, 0.0678267, 0.496929, 0.14935, 0.466244, 0.981542, 0.610265, 0.756993, 0.801997, 0.223039, 0.498384, 0.320208, 0.329293, 0.0501127, 0.989374, 0.990738, 0.961756, 0.491521, 0.565403, 0.15118, 0.107286, 0.342324, 0.0564451, 0.196986, 0.666347, 0.898007, 0.794515, 0.78884, 0.230405, 0.20826, 0.327789, 0.640502, 0.566369, 0.791109, 0.84558, 0.803727, 0.981758, 0.680637, 0.437065, 0.221462, 0.908891, 0.55648, 0.498584, 0.772053, 0.571191, 0.893482, 0.34016, 0.151153, 0.703093, 0.960266, 0.427182, 0.76267, 0.682852, 0.900989, 0.682592, 0.557239, 0.856957, 0.304229, 0.357378, 0.977871, 0.466437, 0.66609, 0.18864, 0.754117, 0.86586, 0.744536, 0.878788, 0.306162, 0.669649, 0.598818, 0.644598, 0.177399, 0.927432, 0.578985, 0.384865, 0.387055, 0.872127, 0.820513, 0.5167, 0.0404335, 0.251028, 0.864299, 0.854716, 0.00788787, 0.329696, 0.277862, 0.059871, 0.964623, 0.301036, 0.856873, 0.303553, 0.246653, 0.829699, 0.245794, 0.638091, 0.196928, 0.450233, 0.265502, 0.638673, 0.820313, 0.692505, 0.26187, 0.210528, 0.83633, 0.00635626, 0.614559, 0.104998, 0.707099, 0.956968, 0.223384, 0.846147, 0.711675, 0.472535, 0.521083, 0.544865, 0.980233, 0.27125, 0.949522, 0.778742, 0.355291, 0.826126, 0.731626, 0.179577, 0.568426, 0.542278, 0.104136, 0.289748, 0.243144, 0.629661, 0.0759973, 0.233128, 0.192321, 0.773358, 0.794866, 0.846724, 0.490382, 0.452209, 0.452119, 0.209811, 0.771172, 0.0137926, 0.581328, 0.29578, 0.261849, 0.458448, 0.164983, 0.146459, 0.929715, 0.645353, 0.917462, 0.907967, 0.966155, 0.824325, 0.0940256, 0.97221, 0.383456, 0.311891, 0.533091, 0.634659, 0.742608, 0.163834, 0.114541, 0.922736, 0.109495, 0.178339, 0.487904, 0.648954, 0.684241, 0.16625, 0.445562, 0.673903, 0.0859252, 0.126856, 0.387942, 0.169866, 0.629438, 0.506087, 0.759372, 0.902355, 0.229161, 0.996228, 0.477016, 0.938824, 0.884247, 0.168796, 0.227945, 0.6192, 0.58942, 0.373129, 0.937472, 0.811925, 0.446544, 0.239153, 0.715383, 0.106531, 0.0316509, 0.130184, 0.587686, 0.586905, 0.473046, 0.799028, 0.569113, 0.313323, 0.529295, 0.814431, 0.524405, 0.638863, 0.420881, 0.935429, 0.712566, 0.764537, 0.229777, 0.694943, 0.584713, 0.208398, 0.333168, 0.176028, 0.466462, 0.56498, 0.413803, 0.148963, 0.559727, 0.0554545, 0.128145, 0.242096, 0.234113, 0.042183, 0.323769, 0.442763, 0.610392, 0.101455, 0.219017, 0.325968, 0.699561, 0.931567, 0.653069, 0.275124, 0.395588, 0.226311, 0.798339, 0.108119, 0.832235, 0.527387, 0.0410892, 0.844508, 0.186494, 0.337552, 0.627381, 0.267372, 0.991461, 0.690213, 0.695331, 0.0153019, 0.159658, 0.649657, 0.187354, 0.924875, 0.260669, 0.474225, 0.50578, 0.613507, 0.440053, 0.903643, 0.028104, 0.701285, 0.392058, 0.830173, 0.0663342, 0.934034, 0.356377, 0.313686, 0.0937587, 0.866284, 0.927016, 0.23924, 0.983261, 0.384249, 0.914655, 0.756388, 0.490309, 0.792666, 0.173106, 0.652794, 0.900278, 0.166199, 0.366032, 0.993017, 0.201876, 0.838224, 0.431544, 0.186205, 0.990122, 0.227314, 0.32672, 0.843638, 0.587606, 0.994955, 0.673793, 0.939636, 0.34401, 0.0929562, 0.483755, 0.00794636, 0.781863, 0.67067, 0.710165, 0.252352, 0.671768, 0.67911, 0.669496, 0.362743, 0.699145, 0.394767, 0.392629, 0.683332, 0.579736, 0.502725, 0.112535, 0.649659, 0.0463693, 0.726066, 0.798391, 0.16099, 0.535843, 0.493985, 0.212056, 0.291682, 0.934227, 0.661133, 0.814381, 0.192099, 0.572097, 0.34012, 0.226153, 0.817926, 0.123818, 0.683802, 0.640872, 0.603235, 0.849095, 0.750859, 0.42374, 0.222286, 0.82559, 0.777879, 0.34939, 0.4112, 0.826705, 0.337027, 0.799973, 0.000958123, 0.0875518, 0.755571, 0.202961, 0.702712, 0.501555, 0.818176, 0.00330532, 0.818856, 0.71221, 0.000500498, 0.153684, 0.237695, 0.417713, 0.8748, 0.893179, 0.982045, 0.429539, 0.741997, 0.292911, 0.0634303, 0.312663, 0.208602, 0.954402, 0.352523, 0.044081, 0.550157, 0.214102, 0.847674, 0.289649, 0.513429, 0.450314, 0.819657, 0.212665, 0.853312, 0.991389, 0.312814, 0.200088, 0.603983, 0.413039, 0.00539337, 0.0391682, 0.0985879, 0.837159, 0.102358, 0.363972, 0.553923, 0.376628, 0.80532, 0.491601, 0.184874, 0.11025, 0.67703, 0.593797, 0.195557, 0.145756, 0.679163, 0.0324885, 0.265745, 0.33161, 0.873777, 0.634638, 0.908656, 0.107826, 0.502514, 0.279305, 0.163612, 0.807596, 0.939629, 0.699609, 0.484153, 0.700102, 0.117146, 0.215443, 0.483145, 0.13176, 0.134584, 0.913199, 0.599423, 0.272955, 0.192264, 0.00365402, 0.25263, 0.192026, 0.0405651, 0.485668, 0.407445, 0.728536, 0.924742, 0.673144, 0.837039, 0.185345, 0.971447, 0.714345, 0.526862, 0.589391, 0.287087, 0.175721, 0.658951, 0.810848, 0.839415, 0.873788, 0.794288, 0.66059, 0.0965063, 0.167245, 0.24648, 0.0280972, 0.958082, 0.359086, 0.783201, 0.92109, 0.0647022, 0.522174, 0.227242, 0.302585, 0.956363, 0.239163, 0.0169744, 0.706166, 0.552493, 0.251071, 0.281932, 0.74269, 0.0509778, 0.707718, 0.908914, 0.584765, 0.404017, 0.0703691, 0.783477, 0.588686, 0.490385, 0.480844, 0.601782, 0.873125, 0.278685, 0.894893, 0.436574, 0.933266, 0.0404084, 0.799115, 0.410105, 0.0453886, 0.787509, 0.71924, 0.79232, 0.75664, 0.910624, 0.496162, 0.160523, 0.28118, 0.715159, 0.737146, 0.777853, 0.0303673, 0.00722299, 0.635187, 0.0576644, 0.770801, 0.110177, 0.00520291, 0.718079, 0.991158, 0.80526, 0.505923, 0.0243759, 0.314903, 0.0646168, 0.391038, 0.832974, 0.988515, 0.819772, 0.977661, 0.600815, 0.136723, 0.360897, 0.627892, 0.540068, 0.484779, 0.488839, 0.203719, 0.0488199, 0.788927, 0.501189, 0.170689, 0.0660145, 0.355081, 0.428183, 0.935023, 0.728545, 0.820263, 0.747069, 0.0244261, 0.736778, 0.0585081, 0.774807, 0.628749, 0.282975, 0.646311, 0.70732, 0.833819, 0.769264, 0.0292635, 0.385005, 0.835433, 0.584842, 0.269172, 0.453312, 0.811241, 0.146775, 0.514722, 0.626373, 0.984302, 0.0626056, 0.71144, 0.382443, 0.672491, 0.231363, 0.8256, 0.616714, 0.123098, 0.543026, 0.295349, 0.490021, 0.162363, 0.989856, 0.20914, 0.554875, 0.0999906, 0.910785, 0.661969, 0.0957499, 0.88802, 0.604018, 0.538319, 0.957755, 0.509128, 0.391562, 0.0206262, 0.907441, 0.457181, 0.955013, 0.387873, 0.0210598, 0.367796, 0.0859406, 0.22748, 0.03433, 0.541917, 0.0211158, 0.409897, 0.893971, 0.636963, 0.139376, 0.716417, 0.655806, 0.266559, 0.915389, 0.465934, 0.850601, 0.679295, 0.325744, 0.513572, 0.0306958, 0.0691112, 0.0871462, 0.451225, 0.718832, 0.371649, 0.443805, 0.502832, 0.406052, 0.197183, 0.994581, 0.914941, 0.180228, 0.239949, 0.593192, 0.552682, 0.502817, 0.87574, 0.284447, 0.729085, 0.808843, 0.0950477, 0.0729399, 0.667365, 0.985147, 0.178874, 0.431809, 0.549626, 0.491808, 0.685666, 0.851442, 0.526548, 0.930647, 0.998229, 0.536009, 0.0224966, 0.00988495, 0.629436, 0.976495, 0.56915, 0.461985, 0.739192, 0.283142, 0.590759, 0.0472357, 0.915142, 0.955991, 0.394271, 0.88164, 0.469591, 0.402637, 0.275159, 0.553982, 0.994032, 0.437168, 0.556088, 0.11567, 0.029193, 0.211848, 0.893864, 0.2361, 0.051841, 0.747276, 0.629714, 0.309363, 0.311942, 0.125599, 0.618932, 0.129755, 0.712699, 0.00356724, 0.106508, 0.0318713, 0.293758, 0.66347, 0.0143746, 0.591908, 0.0909588, 0.475048, 0.580249, 0.0754684, 0.346492, 0.562383, 0.676824, 0.444289, 0.182256, 0.89727, 0.586247, 0.216869, 0.243678, 0.592218, 0.845122, 0.101391, 0.160053, 0.719847, 0.237375, 0.377315, 0.537735, 0.524195, 0.130184, 0.588906, 0.0480896, 0.727814, 0.403256, 0.831867, 0.293048, 0.953633, 0.230206, 0.085901, 0.5664, 0.977159, 0.401211, 0.966178, 0.445442, 0.528728, 0.372189, 0.207416, 0.441281, 0.205967, 0.999735, 0.653867, 0.316896, 0.0416405, 0.0594561, 0.469194, 0.453907, 0.273697, 0.648805, 0.613758, 0.758674, 0.617143, 0.00235473, 0.159211, 0.765624, 0.919078, 0.906094, 0.117163, 0.706089, 0.751481, 0.427165, 0.573756, 0.111476, 0.953272, 0.665605, 0.695696, 0.976775, 0.255332, 0.637538, 0.0171614, 0.623989, 0.0639173, 0.555162, 0.589097, 0.572766, 0.431985, 0.948581, 0.659237, 0.81728, 0.335381, 0.419219, 0.536905, 0.660527, 0.695107, 0.703172, 0.204621, 0.55642, 0.922037, 0.913286, 0.774999, 0.946345, 0.713038, 0.33237, 0.665116, 0.210062, 0.483028, 0.700388, 0.881672, 0.89731, 0.838172, 0.0173835, 0.475631, 0.987371, 0.821474, 0.0554212, 0.55502, 0.357483, 0.316623, 0.300882, 0.916118, 0.134941, 0.291192, 0.8647, 0.704981, 0.647032, 0.642376, 0.572168, 0.764463, 0.430775, 0.759481, 0.195913, 0.725846, 0.66451, 0.414738, 0.313332, 0.598017, 0.650904, 0.52075, 0.381366, 0.776094, 0.26672, 0.40296, 0.621293, 0.920891, 0.634812, 0.669575, 0.174638, 0.504139, 0.601727, 0.184741, 0.98621, 0.963394, 0.0736871, 0.497811, 0.568394, 0.990391, 0.990926, 0.255887, 0.681178, 0.963114, 0.672425, 0.293293, 0.90469, 0.658146, 0.883987, 0.938543, 0.357932, 0.350685, 0.634712, 0.803173, 0.933822, 0.561869, 0.078421, 0.03377, 0.699357, 0.268766, 0.569036, 0.100409, 0.751346, 0.863191, 0.812587, 0.939063, 0.935909, 0.356535, 0.402327, 0.448619, 0.0798998, 0.0874934, 0.850393, 0.8261, 0.845429, 0.0608912, 0.460046, 0.915542, 0.794026, 0.2375, 0.176328, 0.233985, 0.0459265, 0.0925049, 0.469532, 0.104287, 0.0382714, 0.584239, 0.275631, 0.931689, 0.66653, 0.445012, 0.506552, 0.674013, 0.442549, 0.579111, 0.727182, 0.857951, 0.433216, 0.667478, 0.888192, 0.253487, 0.907697, 0.063528, 0.627395, 0.0530657, 0.252441, 0.306642, 0.378893, 0.514284, 0.113086, 0.641139, 0.0640446, 0.076686, 0.490099, 0.140404, 0.929355, 0.493549, 0.0752527, 0.559863, 0.625959, 0.347811, 0.0744179, 0.563211, 0.573803, 0.0636248, 0.812252, 0.267392, 0.100076, 0.439025, 0.302034, 0.344197, 0.982206, 0.650226, 0.654336, 0.393512, 0.220125, 0.803531, 0.269609, 0.426412, 0.965719, 0.230667, 0.889539, 0.532781, 0.717546, 0.227704, 0.859822, 0.765987, 0.734943, 0.0360507, 0.54699, 0.735232, 0.865057, 0.859511, 0.376633, 0.882564, 0.579947, 0.113221, 0.83282, 0.541157, 0.847104, 0.993415, 0.659034, 0.622417, 0.17779, 0.413297, 0.301806, 0.358908, 0.725212, 0.865409, 0.693159, 0.532789, 0.648088, 0.83576, 0.574132, 0.83344, 0.608122, 0.0206343, 0.421513, 0.686792, 0.518635, 0.614134, 0.860307, 0.779351, 0.426095, 0.970546, 0.810036, 0.692905, 0.666609, 0.612682, 0.130808, 0.502312, 0.023076, 0.688183, 0.775546, 0.351484, 0.619863, 0.725958, 0.778766, 0.791133, 0.85453, 0.0677412, 0.755906, 0.72252, 0.577958, 0.140604, 0.567497, 0.407786, 0.769519, 0.86806, 0.191907, 0.233901, 0.06372, 0.154035, 0.256789, 0.469125, 0.798345, 0.622035, 0.386632, 0.0779187, 0.351657, 0.652488, 0.778141, 0.372804, 0.857006, 0.330288, 0.709349, 0.690749, 0.28821, 0.54631, 0.165476, 0.577188, 0.156165, 0.392205, 0.925488, 0.768479, 0.0520163, 0.104604, 0.0372363, 0.531063, 0.266405, 0.72102, 0.566195, 0.266847, 0.576198, 0.423682, 0.478424, 0.248557, 0.368749, 0.965115, 0.844862, 0.81823, 0.504955, 0.804212, 0.567169, 0.00756038, 0.608908, 0.930227, 0.314526, 0.62899, 0.58888, 0.360393, 0.98636, 0.635971, 0.274053, 0.942382, 0.854473, 0.963533, 0.692537, 0.799372, 0.481354, 0.518208, 0.695557, 0.582804, 0.541781, 0.281654, 0.643284, 0.476456, 0.0208474, 0.380957, 0.0174194, 0.807173, 0.505201, 0.188807, 0.73891, 0.603733, 0.817934, 0.154823, 0.418004, 0.089249, 0.940777, 0.862959, 0.226419, 0.678874, 0.309632, 0.753683, 0.825072, 0.401445, 0.277864, 0.992829, 0.135828, 0.118742, 0.875836, 0.909088, 0.769799, 0.548372, 0.111686, 0.887402, 0.411827, 0.37357, 0.37249, 0.535817, 0.542136, 0.306913, 0.00612676, 0.244442, 0.916463, 0.723786, 0.469681, 0.366887, 0.218949, 0.993562, 0.10128, 0.855725, 0.955623, 0.744774, 0.159688, 0.351155, 0.695517, 0.129436, 0.55007, 0.445845, 0.732346, 0.30669, 0.418204, 0.622782, 0.943753, 0.80241, 0.234182, 0.853018, 0.95815, 0.0599405, 0.540154, 0.011261, 0.670714, 0.720759, 0.384776, 0.406652, 0.776178, 0.663601, 0.629138, 0.796056, 0.0846683, 0.560962, 0.104969, 0.286167, 0.379489, 0.135788, 0.980782, 0.217574, 0.361004, 0.601871, 0.364071, 0.662785, 0.283351, 0.625509, 0.907533, 0.230547, 0.105341, 0.187095, 0.659358, 0.542944, 0.914125, 0.593741, 0.00460789, 0.536677, 0.617605, 0.674914, 0.169949, 0.0447656, 0.706795, 0.831657, 0.959785, 0.841278, 0.188848, 0.568619, 0.140764, 0.148216, 0.868931, 0.516512, 0.738313, 0.693395, 0.594614, 0.287306, 0.938827, 0.708445, 0.854706, 0.752348, 0.799616, 0.0257541, 0.383012, 0.869477, 0.0234215, 0.476798, 0.586688, 0.904846, 0.923289, 0.263486, 0.459633, 0.978429, 0.688351, 0.0709777, 0.841215, 0.735626, 0.178871, 0.315524, 0.250976, 0.489735, 0.158802, 0.674123, 0.550604, 0.0189668, 0.564541, 0.797432, 0.18335, 0.905517, 0.45373, 0.581615, 0.87558, 0.972685, 0.267873, 0.393001, 0.119467, 0.0286767, 0.183137, 0.582576, 0.705721, 0.375103, 0.950031, 0.814518, 0.466996, 0.890245, 0.211236, 0.0253737, 0.253186, 0.382147, 0.565145, 0.531588, 0.491809, 0.481327, 0.0730178, 0.0979293, 0.737724, 0.538231, 0.268321, 0.383432, 0.078791, 0.515034, 0.244902, 0.676438, 0.34142, 0.981412, 0.0728127, 0.950487, 0.818435, 0.529703, 0.246925, 0.554012, 0.0694732, 0.834821, 0.824937, 0.296421, 0.747051, 0.690936, 0.306165, 0.948284, 0.0515413, 0.171419, 0.201856, 0.0509489, 0.0628976, 0.614766, 0.0308054, 0.49657, 0.686851, 0.653665, 0.186123, 0.805688, 0.33959, 0.445287, 0.142232, 0.371605, 0.681636, 0.441053, 0.904414, 0.410428, 0.47256, 0.162206, 0.142547, 0.891477, 0.126649, 0.00963837, 0.902017, 0.840981, 0.958291, 0.850666, 0.246335, 0.650503, 0.650334, 0.698674, 0.326043, 0.267565, 0.141239, 0.43157, 0.612756, 0.943698, 0.803956, 0.194803, 0.895302, 0.266704, 0.112431, 0.203755, 0.051201, 0.379072, 0.0170236, 0.596579, 0.328785, 0.768887, 0.972819, 0.974327, 0.188665, 0.008891, 0.860699, 0.422386, 0.531748, 0.027172, 0.213328, 0.325634, 0.994365, 0.199092, 0.678904, 0.623296, 0.497055, 0.0492969, 0.326377, 0.156372, 0.648821, 0.498767, 0.767369, 0.951213, 0.557371, 0.448982, 0.562124, 0.352221, 0.471582, 0.186278, 0.491317, 0.41716, 0.677821, 0.385444, 0.63037, 0.296433, 0.0899407, 0.0487928, 0.578887, 0.815803, 0.689649, 0.261851, 0.252038, 0.37926, 0.667175, 0.732286, 0.00749894, 0.012018, 0.728976, 0.340358, 0.726787, 0.0126228, 0.0844123, 0.300078, 0.619279, 0.900787, 0.800688, 0.558176, 0.937416, 0.732996, 0.743198, 0.447094, 0.866121, 0.477469, 0.467666, 0.92351, 0.572643, 0.773355, 0.858272, 0.913547, 0.00876636, 0.497344, 0.937264, 0.960613, 0.873036, 0.308764, 0.170865, 0.865535, 0.495567, 0.134872, 0.778007, 0.499843, 0.0313207, 0.456921, 0.323303, 0.504609, 0.352537, 0.198514, 0.620026, 0.0658834, 0.207019, 0.685177, 0.100808, 0.457405, 0.0977736, 0.585276, 0.641454, 0.104167, 0.635023, 0.725897, 0.51809, 0.786746, 0.448747, 0.376423, 0.673121, 0.0684879, 0.923983, 0.0449011, 0.537136, 0.114841, 0.549288, 0.750526, 0.11157, 0.448892, 0.953918, 0.205836, 0.987109, 0.390195, 0.402934, 0.29101, 0.145598, 0.0904446, 0.508479, 0.899575, 0.335628, 0.205328, 0.612887, 0.838188, 0.724113, 0.418279, 0.355856, 0.601943, 0.626041, 0.341544, 0.42137, 0.720236, 0.026311, 0.768529, 0.562989, 0.80661, 0.240361, 0.904136, 0.657071, 0.800744, 0.198787, 0.472487, 0.530819, 0.120024, 0.87302, 0.186508, 0.389849, 0.0884889, 0.468343, 0.270116, 0.0577192, 0.362591, 0.154844, 0.873442, 0.861372, 0.684509, 0.887037, 0.560456, 0.481647, 0.946096, 0.327903, 0.625961, 0.221942, 0.643654, 0.952271, 0.355433, 0.621739, 0.667939, 0.951968, 0.740857, 0.364482, 0.387577, 0.316803, 0.832348, 0.396577, 0.976845, 0.562211, 0.945433, 0.182286, 0.187513, 0.43601, 0.178474, 0.286544, 0.316904, 0.963928, 0.790494, 0.509314, 0.372089, 0.781143, 0.58786, 0.717809, 0.870357, 0.560268, 0.792536, 0.0338459, 0.0956249, 0.769001, 0.169085, 0.906055, 0.867625, 0.726361, 0.926679, 0.751265, 0.720305, 0.0716507, 0.425972, 0.0601926, 0.0424241, 0.0579652, 0.0815104, 0.454462, 0.697332, 0.69622, 0.382199, 0.382578, 0.510138, 0.295342, 0.657292, 0.558957, 0.279807, 0.70899, 0.894805, 0.355121, 0.0950023, 0.917664, 0.112727, 0.305631, 0.495151, 0.807186, 0.984091, 0.298012, 0.364434, 0.230468, 0.312518, 0.491191, 0.351394, 0.551979, 0.394254, 0.0731474, 0.395123, 0.571293, 0.330406, 0.0159654, 0.378904, 0.130546, 0.521402, 0.796156, 0.640325, 0.300186, 0.764442, 0.911224, 0.676175, 0.913732, 0.509067, 0.0551023, 0.937267, 0.174653, 0.435427, 0.65437, 0.135888, 0.989697, 0.787868, 0.821589, 0.488962, 0.0703476, 0.611484, 0.711801, 0.481169, 0.319423, 0.734781, 0.505285, 0.424958, 0.956943, 0.40072, 0.576567, 0.0459604, 0.0758141, 0.892585, 0.495602, 0.505073, 0.601984, 0.0296972, 0.801903, 0.424139, 0.617366, 0.954686, 0.191347, 0.768388, 0.36253, 0.65362, 0.765267, 0.979896, 0.500005, 0.232125, 0.541841, 0.362593, 0.154752, 0.327212, 0.84854, 0.170198, 0.92936, 0.0235973, 0.84099, 0.786756, 0.666204, 0.8138, 0.384289, 0.642254, 0.141085, 0.223595, 0.309771, 0.0179205, 0.607475, 0.355032, 0.209158, 0.242304, 0.0504485, 0.756668, 0.713193, 0.70217, 0.497415, 0.0634329, 0.120869, 0.880211, 0.119807, 0.878749, 0.685392, 0.650712, 0.0388514, 0.324076, 0.790914, 0.895817, 0.354683, 0.058055, 0.555214, 0.786784, 0.978338, 0.95984, 0.201696, 0.480538, 0.697051, 0.403472, 0.941783, 0.347462, 0.897183, 0.937269, 0.446034, 0.203126, 0.0735603, 0.842093, 0.270609, 0.532021, 0.110406, 0.439537, 0.986692, 0.762553, 0.0800624, 0.162521, 0.0787149, 0.688771, 0.882489, 0.687954, 0.418764, 0.289934, 0.727295, 0.0213109, 0.110143, 0.207256, 0.601022, 0.374144, 0.382161, 0.321523, 0.427436, 0.15197, 0.298821, 0.650907, 0.583441, 0.210527, 0.53983, 0.657975, 0.440817, 0.410976, 0.428073, 0.0240063, 0.135289, 0.984294, 0.859798, 0.701082, 0.285167, 0.481218, 0.468787, 0.557557, 0.419577, 0.423646, 0.406614, 0.794404, 0.630884, 0.418622, 0.21816, 0.744289, 0.0166752, 0.633789, 0.394236, 0.880665, 0.378953, 0.153176, 0.482406, 0.171829, 0.156358, 0.387583, 0.0319509, 0.212256, 0.904435, 0.907839, 0.831724, 0.480049, 0.451513, 0.628216, 0.46601, 0.401016, 0.580009, 0.544344, 0.925404, 0.451591, 0.350011, 0.0560693, 0.551604, 0.153178, 0.670187, 0.672673, 0.26853, 0.508881, 0.583921, 0.353768, 0.433873, 0.694867, 0.625415, 0.92178, 0.348364, 0.15958, 0.512416, 0.078001, 0.602934, 0.494176, 0.968622, 0.69839, 0.196948, 0.912552, 0.770323, 0.556439, 0.951618, 0.102979, 0.12159, 0.927202, 0.800828, 0.866306, 0.657199, 0.555737, 0.149462, 0.680874, 0.103636, 0.169904, 0.0268314, 0.414021, 0.436971, 0.227315, 0.16451, 0.605249, 0.88505, 0.540535, 0.263318, 0.377439, 0.180303, 0.295118, 0.518736, 0.711831, 0.744802, 0.202304, 0.068588, 0.981359, 0.49585, 0.233852, 0.769629, 0.633789, 0.859414, 0.510856, 0.571438, 0.788673, 0.339717, 0.820124, 0.584874, 0.535427, 0.489859, 0.789376, 0.00524708, 0.162477, 0.630305, 0.0310249, 0.958694, 0.403822, 0.580953, 0.652561, 0.861327, 0.206028, 0.995499, 0.471084, 0.850632, 0.529751, 0.167537, 0.212884, 0.8901, 0.472001, 0.922586, 0.654296, 0.637635, 0.26019, 0.824502, 0.720869, 0.167189, 0.385145, 0.521459, 0.824526, 0.941269, 0.783275, 0.940337, 0.833575, 0.485754, 0.497875, 0.522086, 0.396419, 0.506003, 0.223568, 0.378713, 0.524771, 0.627774, 0.379961, 0.0113596, 0.90562, 0.262278, 0.440791, 0.122275, 0.277647, 0.728027, 0.777318, 0.142085, 0.735699, 0.200232, 0.216511, 0.342314, 0.77208, 0.969821, 0.24888, 0.828207, 0.651368, 0.13482, 0.479871, 0.430622, 0.974602, 0.967598, 0.511278, 0.478787, 0.953568, 0.228034, 0.938029, 0.574486, 0.576503, 0.367655, 0.688902, 0.240765, 0.755151, 0.511214, 0.413689, 0.874389, 0.766239, 0.733195, 0.528584, 0.809898, 0.385999, 0.434193, 0.39561, 0.810905, 0.928129, 0.415032, 0.028492, 0.428988, 0.1721, 0.850928, 0.464735, 0.582068, 0.735104, 0.822143, 0.377147, 0.190491, 0.669161, 0.80899, 0.64389, 0.0351567, 0.354281, 0.581205, 0.791919, 0.502238, 0.952955, 0.40031, 0.535811, 0.930929, 0.512594, 0.084743, 0.453881, 0.425436, 0.286444, 0.977658, 0.684313, 0.160129, 0.182474, 0.235804, 0.828497, 0.836865, 0.660182, 0.818085, 0.861015, 0.500214, 0.0116115, 0.208374, 0.0988077, 0.357043, 0.538201, 0.806053, 0.652063, 0.806284, 0.896305, 0.774853, 0.328033, 0.84799, 0.0949448, 0.450385, 0.2535, 0.347378, 0.648877, 0.573409, 0.727559, 0.0924425, 0.701239, 0.138866, 0.106181, 0.4891, 0.616478, 0.572372, 0.742498, 0.844443, 0.0704961, 0.74343, 0.6042, 0.030248, 0.708378, 0.690297, 0.247331, 0.206112, 0.381753, 0.135333, 0.805018, 0.0659857, 0.36753, 0.789684, 0.19796, 0.553318, 0.440364, 0.51726, 0.0164073, 0.957443, 0.573192, 0.801326, 0.60658, 0.105812, 0.523577, 0.557767, 0.667081, 0.0984848, 0.699305, 0.0611913, 0.482328, 0.860499, 0.132132, 0.951346, 0.113375, 0.308959, 0.368957, 0.43369, 0.349244, 0.867766, 0.700065, 0.89433, 0.441894, 0.938852, 0.693054, 0.289863, 0.924269, 0.385195, 0.239487, 0.153881, 0.735591, 0.526503, 0.180008, 0.393228, 0.972246, 0.980854, 0.381101, 0.739409, 0.189131, 0.918227, 0.112858, 0.313625, 0.429922, 0.851084, 0.93912, 0.200137, 0.0985903, 0.595777, 0.591349, 0.207404, 0.459318, 0.647488, 0.419908, 0.820103, 0.105258, 0.795565, 0.225743, 0.816474, 0.621592, 0.275532, 0.0624432, 0.207009, 0.677055, 0.124676, 0.769083, 0.881069, 0.776066, 0.83893, 0.664457, 0.298255, 0.714483, 0.223298, 0.907889, 0.883852, 0.36537, 0.0423008, 0.321646, 0.386671, 0.89863, 0.354835, 0.117708, 0.784395, 0.141213, 0.489182, 0.927361, 0.662235, 0.724094, 0.947106, 0.461434, 0.379633, 0.675269, 0.895639, 0.443398, 0.872905, 0.7078, 0.602856, 0.615553, 0.828447, 0.983407, 0.867956, 0.960234, 0.854225, 0.95768, 0.846006, 0.993106, 0.652087, 0.80718, 0.387303, 0.568787, 0.960863, 0.527272, 0.977914, 0.558636, 0.517497, 0.289314, 0.400167, 0.955215, 0.967584, 0.890482, 0.761053, 0.644388, 0.0896281, 0.946905, 0.44007, 0.401923, 0.632901, 0.875976, 0.82693, 0.747322, 0.94296, 0.584106, 0.734379, 0.859386, 0.348528, 0.955978, 0.974558, 0.858937, 0.590861, 0.0371461, 0.322847, 0.21362, 0.0409147, 0.159066, 0.63671, 0.979201, 0.587865, 0.901966, 0.559122, 0.230168, 0.803065, 0.364141, 0.255879, 0.538784, 0.923088, 0.368559, 0.161817, 0.699224, 0.936226, 0.886078, 0.404526, 0.994803, 0.359979, 0.690947, 0.387693, 0.212088, 0.0593306, 0.0811423, 0.00384553, 0.130928, 0.949701, 0.983692, 0.959441, 0.232713, 0.422024, 0.0384694, 0.202225, 0.725466, 0.0943787, 0.927419, 0.366823, 0.0977647, 0.949396, 0.067692, 0.694956, 0.665991, 0.481763, 0.387406, 0.331822, 0.457642, 0.795502, 0.604977, 0.510923, 0.425644, 0.623727, 0.529629, 0.547543, 0.331643, 0.818541, 0.441864, 0.271722, 0.653498, 0.149501, 0.639891, 0.057536, 0.276263, 0.387051, 0.109804, 0.994598, 0.546664, 0.931055, 0.516266, 0.647591, 0.59613, 0.828497, 0.86839, 0.953553, 0.991558, 0.486381, 0.681546, 0.547796, 0.34338, 0.85507, 0.272332, 0.184842, 0.375237, 0.658012, 0.268606, 0.299662, 0.54102, 0.0892637, 0.681033, 0.563877, 0.604934, 0.272235, 0.225994, 0.396576, 0.50135, 0.213292, 0.151713, 0.169749, 0.182846, 0.0746022, 0.0525105, 0.512076, 0.350676, 0.386923, 0.0716417, 0.706776, 0.531437, 0.733413, 0.601435, 0.543231, 0.193002, 0.839681, 0.363113, 0.138547, 0.525965, 0.0105383, 0.415747, 0.562991, 0.0844708, 0.723957, 0.0968893, 0.142935, 0.146374, 0.638781, 0.103927, 0.537742, 0.400325, 0.427032, 0.435209, 0.918748, 0.638748, 0.554367, 0.661079, 0.66048, 0.963742, 0.920779, 0.284612, 0.0524512, 0.962995, 0.298949, 0.659297, 0.783819, 0.138867, 0.536478, 0.680169, 0.449397, 0.200154, 0.638287, 0.0127073, 0.689898, 0.86008, 0.488335, 0.116243, 0.794503, 0.910228, 0.591959, 0.426112, 0.141723, 0.203937, 0.843474, 0.0230569, 0.570641, 0.84311, 0.808082, 0.236676, 0.2775, 0.179525, 0.840489, 0.879903, 0.30792, 0.28674, 0.366845, 0.48468, 0.547914, 0.463143, 0.0684909, 0.936271, 0.770543, 0.624828, 0.424174, 0.792742, 0.507997, 0.331753, 0.39199, 0.763454, 0.0202253, 0.542059, 0.19315, 0.71053, 0.0529077, 0.27654, 0.167861, 0.901709, 0.909553, 0.663971, 0.417682, 0.218154, 0.768768, 0.0387871, 0.981962, 0.0566515, 0.668589, 0.396987, 0.11578, 0.0283513, 0.950349, 0.204337, 0.323745, 0.184177, 0.624042, 0.770279, 0.00786911, 0.95886, 0.570679, 0.785266, 0.425791, 0.710022, 0.0491318, 0.550038, 0.797806, 0.411732, 0.0264604, 0.487609, 0.412082, 0.903675, 0.93333, 0.280415, 0.554696, 0.733814, 0.1412, 0.0161727, 0.228676, 0.629394, 0.227567, 0.93656, 0.462834, 0.276516, 0.529687, 0.737354, 0.560569, 0.894543, 0.202988, 0.999051, 0.60471, 0.0443098, 0.112014, 0.660049, 0.284839, 0.505573, 0.644383, 0.332208, 0.29167, 0.000343225, 0.268097, 0.852227, 0.599293, 0.36666, 0.103163, 0.448847, 0.130198, 0.426567, 0.43813, 0.770131, 0.453424, 0.626394, 0.799118, 0.410953, 0.713702, 0.10277, 0.680933, 0.739307, 0.589131, 0.896462, 0.885072, 0.0622041, 0.0877848, 0.45064, 0.316362, 0.240547, 0.601225, 0.0695273, 0.578184, 0.729456, 0.401378, 0.0416692, 0.197792, 0.0641177, 0.785206, 0.571652, 0.879141, 0.880788, 0.539646, 0.555385, 0.382785, 0.718479, 0.0366768, 0.572852, 0.590954, 0.118257, 0.602162, 0.0795446, 0.835167, 0.75432, 0.898464, 0.658787, 0.450769, 0.940301, 0.90206, 0.563925, 0.134816, 0.0533965, 0.468155, 0.370117, 0.313159, 0.379347, 0.453397, 0.664017, 0.106684, 0.402152, 0.995593, 0.238902, 0.235804, 0.499983, 0.597113, 0.500353, 0.67415, 0.455596, 0.723423, 0.0586574, 0.435994, 0.342112, 0.611722, 0.24995, 0.568201, 0.773938, 0.791357, 0.470812, 0.692584, 0.697293, 0.701657, 0.971693, 0.300333, 0.211367, 0.184905, 0.915232, 0.424476, 0.239299, 0.621922, 0.801317, 0.615525, 0.659105, 0.177266, 0.314794, 0.348309, 0.984988, 0.844802, 0.0415893, 0.0307191, 0.109317, 0.456472, 0.0414806, 0.00614883, 0.996687, 0.280178, 0.217272, 0.375418, 0.657176, 0.952215, 0.514172, 0.473665, 0.559307, 0.665895, 0.762992, 0.371533, 0.404242, 0.574514, 0.349613, 0.259723, 0.682176, 0.325401, 0.913383, 0.752729, 0.956178, 0.0677681, 0.486769, 0.503736, 0.67392, 0.893188, 0.322593, 0.22014, 0.579357, 0.926983, 0.308941, 0.974191, 0.779624, 0.718414, 0.715724, 0.917279, 0.862888, 0.354193, 0.0711811, 0.107897, 0.94193, 0.408568, 0.890099, 0.829855, 0.881492, 0.22875, 0.0127978, 0.011247, 0.519295, 0.583926, 0.6766, 0.234748, 0.7012, 0.511272, 0.465539, 0.540992, 0.858866, 0.235691, 0.948146, 0.611724, 0.63148, 0.80454, 0.569192, 0.549704, 0.677574, 0.988443, 0.712659, 0.425419, 0.514053, 0.792905, 0.715539, 0.798611, 0.567692, 0.241777, 0.852295, 0.913802, 0.694366, 0.470208, 0.152784, 0.757416, 0.362365, 0.850051, 0.00264538, 0.460383, 0.213732, 0.531885, 0.433104, 0.0523126, 0.318962, 0.903564, 0.213849, 0.708347, 0.505023, 0.208189, 0.959419, 0.86761, 0.292633, 0.32004, 0.214158, 0.687243, 0.375985, 0.778947, 0.633588, 0.860767, 0.437353, 0.806654, 0.753497, 0.257359, 0.153327, 0.79372, 0.511514, 0.726074, 0.778678, 0.640024, 0.0935934, 0.612531, 0.845934, 0.856668, 0.159275, 0.0983851, 0.0338585, 0.0816387, 0.838208, 0.872847, 0.111055, 0.357432, 0.84666, 0.940788, 0.620127, 0.560973, 0.868608, 0.717113, 0.692519, 0.314356, 0.857225, 0.900682, 0.0181035, 0.00961911, 0.00612036, 0.825358, 0.725927, 0.62857, 0.168422, 0.898292, 0.747193, 0.0170086, 0.59325, 0.784296, 0.556686, 0.901377, 0.147478, 0.223836, 0.0801547, 0.869065, 0.429919, 0.106709, 0.762799, 0.985216, 0.927093, 0.559394, 0.420103, 0.231195, 0.193386, 0.150465, 0.162097, 0.353569, 0.171717, 0.77536, 0.655196, 0.144188, 0.757612, 0.673119, 0.809927, 0.505693, 0.518122, 0.16988, 0.103265, 0.917911, 0.672638, 0.278119, 0.33887, 0.672864, 0.167051, 0.917979, 0.946587, 0.151668, 0.0545913, 0.385106, 0.389816, 0.700828, 0.839174, 0.0119766, 0.0238333, 0.669581, 0.0673994, 0.565316, 0.561096, 0.577632, 0.169086, 0.804048, 0.761263, 0.981231, 0.979064, 0.152146, 0.503983, 0.957075, 0.232238, 0.693598, 0.312898, 0.782981, 0.984722, 0.75545, 0.460171, 0.0354336, 0.52951, 0.43004, 0.171406, 0.532135, 0.9776, 0.0985025, 0.898747, 0.72394, 0.726622, 0.670149, 0.130097, 0.406665, 0.420195, 0.523834, 0.809445, 0.700112, 0.822798, 0.816938, 0.978374, 0.542424, 0.12232, 0.645704, 0.531084, 0.789407, 0.639392, 0.294385, 0.370609, 0.736607, 0.450306, 0.745892, 0.466696, 0.0479832, 0.931319, 0.471393, 0.378464, 0.685517, 0.385303, 0.0793513, 0.65543, 0.141782, 0.883142, 0.298444, 0.999721, 0.710185, 0.779161, 0.343306, 0.754517, 0.746347, 0.768358, 0.556462, 0.298095, 0.0073683, 0.949943, 0.967652, 0.227505, 0.629643, 0.0353548, 0.959066, 0.612231, 0.501148, 0.828908, 0.245115, 0.884333, 0.712314, 0.95553, 0.326572, 0.984838, 0.966299, 0.127249, 0.885119, 0.410498, 0.203113, 0.927698, 0.161315, 0.768913, 0.999001, 0.71119, 0.832512, 0.950797, 0.730997, 0.87339, 0.754119, 0.379897, 0.155136, 0.995455, 0.960437, 0.521546, 0.325177, 0.975384, 0.864303, 0.774282, 0.470459, 0.854358, 0.213583, 0.149578, 0.0029431, 0.645778, 0.157656, 0.31494, 0.675235, 0.798073, 0.883995, 0.826306, 0.382837, 0.00961885, 0.948502, 0.715269, 0.507345, 0.316638, 0.123658, 0.0380885, 0.0760055, 0.244934, 0.844188, 0.97335, 0.369245, 0.746758, 0.63331, 0.0253718, 0.214573, 0.820219, 0.191801, 0.0849191, 0.811435, 0.979755, 0.491341, 0.047972, 0.654638, 0.875591, 0.458108, 0.127132, 0.741734, 0.503403, 0.619794, 0.52892, 0.400461, 0.567607, 0.225805, 0.972737, 0.818295, 0.892317, 0.779674, 0.737902, 0.857006, 0.23724, 0.754698, 0.839711, 0.804661, 0.14683, 0.890841, 0.952665, 0.684101, 0.692381, 0.77351, 0.362895, 0.797268, 0.365331, 0.564682, 0.512197, 0.231953, 0.724453, 0.739392, 0.953193, 0.352544, 0.873279, 0.108286, 0.574154, 0.124608, 0.297452, 0.343713, 0.705411, 0.471638, 0.568462, 0.0870916, 0.95709, 0.705516, 0.947715, 0.28019, 0.348241, 0.89545, 0.166359, 0.927557, 0.090227, 0.535189, 0.29296, 0.383784, 0.363511, 0.385727, 0.624506, 0.208662, 0.517785, 0.9226, 0.627992, 0.756734, 0.71849, 0.904747, 0.474553, 0.104712, 0.466847, 0.845483, 0.23704, 0.875972, 0.795674, 0.813228, 0.561381, 0.217489, 0.379153, 0.9217, 0.120657, 0.212865, 0.339643, 0.402998, 0.337485, 0.837689, 0.71588, 0.820437, 0.137161, 0.734836, 0.43384, 0.390606, 0.76863, 0.902485, 0.653448, 0.586886, 0.11454, 0.237244, 0.491758, 0.285477, 0.473126, 0.492431, 0.875863, 0.222312, 0.214462, 0.53967, 0.572137, 0.456285, 0.791134, 0.700224, 0.0943796, 0.485968, 0.820876, 0.71187, 0.87956, 0.322256, 0.289008, 0.642231, 0.562762, 0.590441, 0.844272, 0.533532, 0.431432, 0.84989, 0.525721, 0.621898, 0.954284, 0.822625, 0.185374, 0.818666, 0.213296, 0.461567, 0.181689, 0.473609, 0.431153, 0.573114, 0.0406941, 0.582626, 0.905356, 0.930616, 0.954859, 0.983171, 0.596248, 0.4527, 0.47677, 0.924188, 0.98532, 0.695984, 0.476758, 0.386629, 0.0126092, 0.146338, 0.565628, 0.578453, 0.289324, 0.30088, 0.539916, 0.93363, 0.0704658, 0.109648, 0.214744, 0.595283, 0.33294, 0.950965, 0.929428, 0.813884, 0.618206, 0.864781, 0.18343, 0.14465, 0.963859, 0.957667, 0.492841, 0.798349, 0.586916, 0.0313671, 0.265043, 0.89578, 0.173169, 0.285286, 0.173418, 0.156524, 0.688003, 0.572639, 0.106593, 0.731564, 0.421688, 0.449339, 0.523175, 0.62286, 0.185018, 0.652623, 0.547864, 0.357667, 0.84197, 0.423256, 0.953343, 0.106257, 0.0739082, 0.738384, 0.857672, 0.634112, 0.294086, 0.733901, 0.359825, 0.74773, 0.196471, 0.700408, 0.97943, 0.912977, 0.962321, 0.577774, 0.964198, 0.962612, 0.56931, 0.455372, 0.481912, 0.722396, 0.48471, 0.956901, 0.329356, 0.220315, 0.421001, 0.924976, 0.361622, 0.25113, 0.0609949, 0.557615, 0.960276, 0.974457, 0.556058, 0.258683, 0.30762, 0.875404, 0.879741, 0.557299, 0.840141, 0.677022, 0.429622, 0.629197, 0.566561, 0.734285, 0.660293, 0.375673, 0.296674, 0.00365564, 0.330919, 0.864809, 0.52764, 0.341352, 0.0446571, 0.772668, 0.315053, 0.563374, 0.174156, 0.823374, 0.1807, 0.948436, 0.890809, 0.71882, 0.182657, 0.353268, 0.745919, 0.448371, 0.458774, 0.596618, 0.640457, 0.25174, 0.152258, 0.0895677, 0.950536, 0.346543, 0.407567, 0.999578, 0.808697, 0.146934, 0.0503009, 0.957366, 0.471509, 0.769222, 0.56417, 0.00688867, 0.701474, 0.240237, 0.142249, 0.0375286, 0.426234, 0.363617, 0.0834601, 0.0836809, 0.200853, 0.241534, 0.447741, 0.714228, 0.954587, 0.420323, 0.571062, 0.972781, 0.100924, 0.184836, 0.376265, 0.69656, 0.142651, 0.992868, 0.649462, 0.690062, 0.842583, 0.786338, 0.256428, 0.122638, 0.224826, 0.611269, 0.948878, 0.0471729, 0.110879, 0.868052, 0.712388, 0.165319, 0.0485212, 0.727872, 0.788025, 0.44366, 0.554184, 0.355091, 0.457588, 0.457669, 0.0702683, 0.645146, 0.656114, 0.471351, 0.947632, 0.839267, 0.79427, 0.525043, 0.623998, 0.0718313, 0.0994423, 0.253284, 0.700895, 0.0620533, 0.834881, 0.183217, 0.204566, 0.483247, 0.68356, 0.654929, 0.325982, 0.0694041, 0.974176, 0.297671, 0.366199, 0.633409, 0.23664, 0.852447, 0.174777, 0.615545, 0.463499, 0.702313, 0.83723, 0.984157, 0.984313, 0.324485, 0.539787, 0.0217852, 0.903172, 0.0657557, 0.936454, 0.286387, 0.864025, 0.893007, 0.760028, 0.0631858, 0.527295, 0.650481, 0.674018, 0.870867, 0.226225, 0.635691, 0.694291, 0.796474, 0.325277, 0.230096, 0.990246, 0.862474, 0.611415, 0.837348, 0.667471, 0.893468, 0.137006, 0.805157, 0.727722, 0.575047, 0.0812447, 0.00332892, 0.0433659, 0.785997, 0.791497, 0.533775, 0.808561, 0.372525, 0.969321, 0.387242, 0.654623, 0.131302, 0.95441, 0.678156, 0.741826, 0.0784754, 0.995653, 0.142764, 0.0116793, 0.355654, 0.588896, 0.826082, 0.99155, 0.741596, 0.414717, 0.705101, 0.974348, 0.912202, 0.665971, 0.231464, 0.0922351, 0.848757, 0.805882, 0.51685, 0.688406, 0.737106, 0.396799, 0.172867, 0.511846, 0.899687, 0.22167, 0.928006, 0.271104, 0.324211, 0.514791, 0.171087, 0.997203, 0.959142, 0.890799, 0.941474, 0.853, 0.724237, 0.258315, 0.720872, 0.614316, 0.971943, 0.58439, 0.856296, 0.0299103, 0.110145, 0.850125, 0.448778, 0.709144, 0.941761, 0.759252, 0.471517, 0.544703, 0.9945, 0.82029, 0.900237, 0.0946534, 0.253158, 0.285683, 0.178263, 0.202297, 0.693995, 0.698544, 0.162467, 0.715778, 0.43853, 0.176624, 0.608896, 0.400533, 0.663253, 0.22253, 0.324155, 0.305958, 0.19465, 0.048463, 0.980281, 0.759648, 0.806053, 0.0957803, 0.330134, 0.645568, 0.678518, 0.105757, 0.278402, 0.4611, 0.116674, 0.648524, 0.354427, 0.593176, 0.826524, 0.378395, 0.74313, 0.0645038, 0.046516, 0.10157, 0.582681, 0.480452, 0.427569, 0.373421, 0.792701, 0.809276, 0.516038, 0.481245, 0.365289, 0.297136, 0.768756, 0.460179, 0.195181, 0.497868, 0.645771, 0.691792, 0.212452, 0.802635, 0.967529, 0.202553, 0.404711, 0.186143, 0.870516, 0.214961, 0.606942, 0.659521, 0.773491, 0.41635, 0.118373, 0.827707, 0.935168, 0.906606, 0.416938, 0.0941418, 0.184616, 0.0854075, 0.742107, 0.0377408, 0.0394036, 0.624772, 0.334759, 0.709317, 0.690739, 0.430583, 0.0661632, 0.795665, 0.143397, 0.0264727, 0.430718, 0.564947, 0.501005, 0.795074, 0.688456, 0.0758276, 0.114967, 0.318109, 0.268243, 0.491039, 0.029096, 0.19893, 0.454914, 0.508715, 0.880154, 0.950762, 0.717665, 0.270697, 0.918787, 0.40797, 0.629369, 0.572733, 0.160172, 0.133892, 0.459015, 0.753191, 0.705489, 0.947349, 0.890487, 0.259758, 0.268497, 0.0972714, 0.0695712, 0.932958, 0.519835, 0.306024, 0.330323, 0.532885, 0.287885, 0.357825, 0.844217, 0.25325, 0.934947, 0.587595, 0.779412, 0.0936196, 0.331646, 0.167257, 0.861833, 0.338368, 0.360992, 0.672436, 0.181959, 0.386948, 0.674912, 0.413251, 0.558263, 0.911673, 0.862047, 0.91121, 0.045779, 0.0691727, 0.814198, 0.332049, 0.121373, 0.967023, 0.963251, 0.307342, 0.134534, 0.7198, 0.192787, 0.297363, 0.0821706, 0.66607, 0.148892, 0.0083189, 0.722758, 0.802759, 0.4492, 0.611604, 0.728216, 0.898171, 0.999513, 0.513938, 0.449756, 0.574561, 0.494023, 0.214097, 0.0930019, 0.279293, 0.600591, 0.14003, 0.851867, 0.133887, 0.947935, 0.449993, 0.04731, 0.459171, 0.311677, 0.620215, 0.606521, 0.97574, 0.0868678, 0.354204, 0.413799, 0.949669, 0.827198, 0.0239478, 0.979115, 0.846768, 0.403074, 0.580696, 0.341495, 0.606055, 0.0822114, 0.468938, 0.515763, 0.156409, 0.457546, 0.83558, 0.34622, 0.317464, 0.4094, 0.0774554, 0.359015, 0.34625, 0.499322, 0.0888448, 0.909101, 0.0453446, 0.000850094, 0.295581, 0.401917, 0.716063, 0.428869, 0.921903, 0.888364, 0.184599, 0.776387, 0.810191, 0.392834, 0.153734, 0.203344, 0.837668, 0.976633, 0.847462, 0.874881, 0.668662, 0.652816, 0.914987, 0.00451315, 0.981843, 0.328409, 0.258969, 0.538078, 0.559569, 0.683026, 0.276111, 0.308796, 0.890213, 0.327725, 0.61278, 0.00449197, 0.346267, 0.692164, 0.392556, 0.422186, 0.475265, 0.120223, 0.925079, 0.5976, 0.752428, 0.858827, 0.249243, 0.173745, 0.626284, 0.0927299, 0.0349499, 0.875995, 0.0166703, 0.184881, 0.188308, 0.9454, 0.491007, 0.974666, 0.233835, 0.258856, 0.831252, 0.816365, 0.406586, 0.580223, 0.0649543, 0.638888, 0.248592, 0.21366, 0.441546, 0.634155, 0.996909, 0.609874, 0.890964, 0.455623, 0.746403, 0.781809, 0.889497, 0.941262, 0.243813, 0.851309, 0.682001, 0.303302, 0.83347, 0.701662, 0.838946, 0.485931, 0.0549321, 0.320827, 0.444271, 0.0381938, 0.735022, 0.70405, 0.516336, 0.0875818, 0.966047, 0.51303, 0.131951, 0.568519, 0.283458, 0.936966, 0.340116, 0.837635, 0.938004, 0.713295, 0.388906, 0.143626, 0.0348835, 0.214307, 0.730334, 0.350882, 0.0980965, 0.673089, 0.773921, 0.823503, 0.695154, 0.733075, 0.746001, 0.572553, 0.978582, 0.670927, 0.130238, 0.7828, 0.0441233, 0.96649, 0.112834, 0.782979, 0.26588, 0.804274, 0.560883, 0.60293, 0.425478, 0.42237, 0.893522, 0.971839, 0.510324, 0.945489, 0.793186, 0.641643, 0.480637, 0.904342, 0.4877, 0.412663, 0.427252, 0.327909, 0.731806, 0.545454, 0.726311, 0.791445, 0.134922, 0.618404, 0.916366, 0.626868, 0.176367, 0.438304, 0.0124284, 0.38679, 0.0709086, 0.523552, 0.359128, 0.931022, 0.273408, 0.805746, 0.836785, 0.896942, 0.929909, 0.472329, 0.546212, 0.559585, 0.828755, 0.132333, 0.273131, 0.767111, 0.867155, 0.568318, 0.402194, 0.80677, 0.874407, 0.706021, 0.743277, 0.147495, 0.497984, 0.0228355, 0.018538, 0.848837, 0.574097, 0.0909596, 0.193292, 0.0255437, 0.201144, 0.554184, 0.475002, 0.796415, 0.489669, 0.357315, 0.100423, 0.705043, 0.0197173, 0.762717, 0.143447, 0.204091, 0.196282, 0.3405, 0.266557, 0.988108, 0.454827, 0.493077, 0.555779, 0.28388, 0.488911, 0.292256, 0.265432, 0.0628563, 0.100546, 0.939694, 0.432897, 0.786097, 0.551135, 0.569943, 0.58404, 0.546083, 0.92622, 0.651898, 0.320026, 0.219867, 0.649951, 0.506432, 0.844216, 0.249193, 0.523493, 0.529749, 0.0274718, 0.473925, 0.667786, 0.583479, 0.777275, 0.764091, 0.286952, 0.177703, 0.226733, 0.219178, 0.98811, 0.871416, 0.380711, 0.460821, 0.8267, 0.0635667, 0.299989, 0.333724, 0.925175, 0.84771, 0.0957246, 0.818235, 0.657102, 0.742433, 0.918443, 0.89082, 0.816633, 0.379226, 0.0953685, 0.889036, 0.0915369, 0.108673, 0.776449, 0.411121, 0.0971075, 0.428249, 0.952901, 0.448069, 0.289354, 0.848445, 0.816563, 0.857344, 0.127785, 0.0876948, 0.704475, 0.458588, 0.0695453, 0.561227, 0.403416, 0.0340543, 0.695906, 0.721814, 0.545271, 0.692094, 0.449162, 0.0101133, 0.955742, 0.0744578, 0.0230509, 0.80775, 0.37216, 0.306166, 0.140889, 0.147295, 0.0910706, 0.228604, 0.0629362, 0.105301, 0.976443, 0.784602, 0.85427, 0.319584, 0.839332, 0.36463, 0.820518, 0.53021, 0.737608, 0.157278, 0.291652, 0.521901, 0.878088, 0.362409, 0.348868, 0.316342, 0.85833, 0.747563, 0.859804, 0.899792, 0.501878, 0.342417, 0.548447, 0.436572, 0.78287, 0.796021, 0.60547, 0.712261, 0.719629, 0.732916, 0.0691805, 0.913756, 0.423561, 0.0999369, 0.343425, 0.892776, 0.080708, 0.80676, 0.373842, 0.55274, 0.405536, 0.775874, 0.157916, 0.178894, 0.907335, 0.831711, 0.773824, 0.353116, 0.213652, 0.480229, 0.762299, 0.200408, 0.45256, 0.883378, 0.36445, 0.50118, 0.812127, 0.636674, 0.716257, 0.26549, 0.733552, 0.0164629, 0.852164, 0.730687, 0.142062, 0.538074, 0.470815, 0.373797, 0.656745, 0.939293, 0.825732, 0.193692, 0.271752, 0.878585, 0.897819, 0.0510397, 0.226767, 0.970232, 0.452866, 0.348396, 0.755521, 0.79419, 0.887324, 0.252607, 0.461492, 0.982379, 0.981183, 0.000563909, 0.166662, 0.947894, 0.555107, 0.343203, 0.814985, 0.100717, 0.130978, 0.887828, 0.0660569, 0.0786789, 0.50107, 0.546827, 0.555532, 0.301241, 0.347113, 0.682008, 0.833179, 0.912085, 0.434421, 0.0203689, 0.369309, 0.965034, 0.564557, 0.903803, 0.916688, 0.561587, 0.485956, 0.188589, 0.630288, 0.553069, 0.0818616, 0.549482, 0.737253, 0.972696, 0.619968, 0.91962, 0.648584, 0.285313, 0.139861, 0.978674, 0.855924, 0.770446, 0.320651, 0.0907761, 0.353458, 0.797755, 0.796704, 0.363182, 0.0477224, 0.377253, 0.988718, 0.422171, 0.0410823, 0.0648559, 0.860767, 0.0158402, 0.773974, 0.0878536, 0.866743, 0.433906, 0.954403, 0.717973, 0.516224, 0.188245, 0.646973, 0.289479, 0.608346, 0.480279, 0.00959032, 0.638653, 0.789162, 0.222084, 0.89853, 0.193127, 0.871977, 0.505576, 0.789938, 0.468664, 0.518494, 0.437183, 0.909318, 0.559601, 0.226763, 0.640364, 0.401715, 0.348778, 0.455293, 0.291447, 0.112201, 0.479516, 0.639978, 0.632286, 0.39995, 0.343699, 0.766534, 0.0903324, 0.465614, 0.00699166, 0.33698, 0.995661, 0.598812, 0.0409469, 0.849873, 0.549859, 0.227782, 0.573034, 0.875245, 0.574172, 0.315462, 0.64763, 0.734943, 0.23191, 0.0181727, 0.349757, 0.842983, 0.928829, 0.210515, 0.52014, 0.24415, 0.00709784, 0.298236, 0.70972, 0.775037, 0.131526, 0.254659, 0.109642, 0.902058, 0.0810867, 0.894335, 0.864379, 0.829596, 0.246748, 0.566536, 0.411108, 0.521713, 0.569299, 0.0919209, 0.729979, 0.407958, 0.944501, 0.556948, 0.457221, 0.885695, 0.932005, 0.585057, 0.901422, 0.313922, 0.666369, 0.394859, 0.0751098, 0.477243, 0.614728, 0.631539, 0.372708, 0.407733, 0.942874, 0.579093, 0.909681, 0.860376, 0.093909, 0.530909, 0.896598, 0.389745, 0.372498, 0.229945, 0.686302, 0.0808744, 0.0809309, 0.664149, 0.506449, 0.595882, 0.554841, 0.422232, 0.134856, 0.709975, 0.353235, 0.122968, 0.0801314, 0.499966, 0.0260317, 0.643237, 0.610541, 0.958465, 0.833629, 0.54053, 0.789644, 0.359161, 0.817851, 0.374599, 0.559545, 0.20301, 0.35341, 0.820238, 0.041116, 0.919098, 0.191215, 0.717778, 0.739251, 0.472893, 0.144513, 0.631646, 0.620376, 0.226243, 0.641126, 0.438453, 0.138248, 0.386422, 0.222032, 0.427272, 0.741038, 0.358608, 0.676207, 0.659127, 0.77423, 0.0056963, 0.303172, 0.376431, 0.266839, 0.0571987, 0.67568, 0.418615, 0.945006, 0.214421, 0.78264, 0.504071, 0.7178, 0.341034, 0.630461, 0.447086, 0.0439287, 0.8875, 0.544724, 0.112584, 0.998354, 0.9809, 0.258963, 0.191181, 0.0560489, 0.257646, 0.846637, 0.626145, 0.195457, 0.824605, 0.752355, 0.945746, 0.740393, 0.653025, 0.136753, 0.586021, 0.475397, 0.0714114, 0.147559, 0.8442, 0.380127, 0.738006, 0.609101, 0.188612, 0.632001, 0.603794, 0.537657, 0.177305, 0.852774, 0.966591, 0.665321, 0.503393, 0.210565, 0.715953, 0.387927, 0.0440149, 0.339485, 0.0823881, 0.367538, 0.767779, 0.884345, 0.109396, 0.63223, 0.412455, 0.178465, 0.0507706, 0.485121, 0.294607, 0.370991, 0.944419, 0.136482, 0.845479, 0.121908, 0.191002, 0.131244, 0.00622841, 0.567604, 0.212976, 0.36287, 0.607975, 0.431318, 0.40082, 0.709974, 0.804813, 0.952521, 0.276572, 0.17742, 0.105584, 0.888779, 0.683337, 0.170643, 0.440185, 0.543874, 0.119981, 0.589082, 0.186223, 0.982259, 0.231994, 0.810508, 0.552301, 0.237806, 0.198615, 0.805346, 0.0238344, 0.0928923, 0.0785491, 0.430659, 0.537014, 0.930875, 0.471287, 0.0484842, 0.969099, 0.793085, 0.884125, 0.952769, 0.647739, 0.559867, 0.924879, 0.0319831, 0.586215, 0.321531, 0.831833, 0.939589, 0.638587, 0.903751, 0.375221, 0.404078, 0.809914, 0.909374, 0.26586, 0.631018, 0.429911, 0.675685, 0.794163, 0.618099, 0.691647, 0.903324, 0.728971, 0.846593, 0.6666, 0.741252, 0.570946, 0.46837, 0.179672, 0.774219, 0.384656, 0.849555, 0.533305, 0.590401, 0.964318, 0.457615, 0.321516, 0.0208775, 0.373421, 0.510021, 0.982442, 0.232421, 0.750315, 0.361089, 0.397923, 0.206362, 0.214752, 0.33211, 0.914989, 0.600919, 0.650647, 0.763654, 0.2461, 0.190174, 0.333671, 0.317425, 0.933695, 0.9784, 0.960239, 0.194299, 0.450556, 0.10371, 0.524373, 0.345593, 0.850267, 0.935772, 0.649672, 0.901208, 0.486565, 0.108914, 0.464129, 0.88974, 0.476738, 0.797901, 0.831085, 0.966915, 0.0264328, 0.932948, 0.251282, 0.85788, 0.404111, 0.0912275, 0.668941, 0.0964484, 0.215694, 0.511941, 0.0665426, 0.731441, 0.599129, 0.605807, 0.207614, 0.572226, 0.832813, 0.456038, 0.407284, 0.561743, 0.3099, 0.647478, 0.836336, 0.176686, 0.0205143, 0.93403, 0.766272, 0.573602, 0.218061, 0.796744, 0.913891, 0.827296, 0.259705, 0.245004, 0.891785, 0.872052, 0.599454, 0.563108, 0.0328248, 0.0883664, 0.525946, 0.947825, 0.921859, 0.622588, 0.222157, 0.185422, 0.693733, 0.000926891, 0.652556, 0.488593, 0.0708218, 0.291109, 0.0743702, 0.139774, 0.851221, 0.610232, 0.411828, 0.513488, 0.982313, 0.874602, 0.122241, 0.617891, 0.716313, 0.183879, 0.21519, 0.479264, 0.840607, 0.0509966, 0.967678, 0.564133, 0.0912643, 0.140889, 0.93038, 0.887509, 0.222076, 0.574473, 0.910053, 0.3291, 0.0677432, 0.161977, 0.637396, 0.472756, 0.650265, 0.265576, 0.628293, 0.360273, 0.0922663, 0.894224, 0.669931, 0.322352, 0.149659, 0.53929, 0.266515, 0.0519883, 0.985195, 0.210595, 0.86933, 0.44075, 0.431001, 0.326156, 0.0404525, 0.596557, 0.638746, 0.738458, 0.403545, 0.986486, 0.582298, 0.868717, 0.501291, 0.929942, 0.445173, 0.781671, 0.923339, 0.0751635, 0.128539, 0.319603, 0.187612, 0.211502, 0.453255, 0.30613, 0.902157, 0.730254, 0.431835, 0.953954, 0.279854, 0.530319, 0.586014, 0.277366, 0.538647, 0.462936, 0.875658, 0.143087, 0.355321, 0.424377, 0.566115, 0.768805, 0.0632722, 0.227152, 0.794137, 0.834637, 0.399366, 0.376948, 0.060539, 0.175033, 0.934245, 0.00284063, 0.900301, 0.560909, 0.446826, 0.397935, 0.152239, 0.389596, 0.758969, 0.72322, 0.551895, 0.617212, 0.942954, 0.616343, 0.321175, 0.613545, 0.397637, 0.734759, 0.319936, 0.642448, 0.410287, 0.933028, 0.799424, 0.599313, 0.879514, 0.679369, 0.407169, 0.397339, 0.512815, 0.329459, 0.304717, 0.0825684, 0.146401, 0.374815, 0.92173, 0.13524, 0.935348, 0.0647594, 0.0038909, 0.200255, 0.751794, 0.201043, 0.236771, 0.18696, 0.480723, 0.808138, 0.062058, 0.170385, 0.0915421, 0.276257, 0.338185, 0.675228, 0.777146, 0.610218, 0.0298378, 0.437848, 0.0347487, 0.812859, 0.421852, 0.557814, 0.990453, 0.426372, 0.858653, 0.288976, 0.659399, 0.844169, 0.225242, 0.455817, 0.172944, 0.354925, 0.27737, 0.606244, 0.966951, 0.650472, 0.396416, 0.211964, 0.187634, 0.0160894, 0.0821767, 0.59884, 0.817367, 0.847383, 0.0300615, 0.0574575, 0.548312, 0.751748, 0.194943, 0.589198, 0.879761, 0.721534, 0.470941, 0.468215, 0.715272, 0.810768, 0.646068, 0.901215, 0.955512, 0.743163, 0.962022, 0.374871, 0.80422, 0.690661, 0.0250751, 0.79563, 0.102893, 0.322101, 0.0690305, 0.940337, 0.641574, 0.650997, 0.491007, 0.817132, 0.0148011, 0.403251, 0.992396, 0.188816, 0.376219, 0.10534, 0.177642, 0.431083, 0.86558, 0.892058, 0.779712, 0.449729, 0.389934, 0.992887, 0.931071, 0.864745, 0.779918, 0.596726, 0.585226, 0.352476, 0.826316, 0.127054, 0.478924, 0.110383, 0.580022, 0.82421, 0.800809, 0.865504, 0.910334, 0.0467139, 0.919823, 0.380784, 0.0631186, 0.508982, 0.801985, 0.175551, 0.451541, 0.372707, 0.226567, 0.570796, 0.125396, 0.943644, 0.401429, 0.989618, 0.242919, 0.97873, 0.47496, 0.063345, 0.77485, 0.292343, 0.0468066, 0.836154, 0.879952, 0.804999, 0.274545, 0.265815, 0.949376, 0.652124, 0.415027, 0.772576, 0.223914, 0.958858, 0.163547, 0.673092, 0.398409, 0.178012, 0.368437, 0.902936, 0.0266671, 0.825638, 0.0887684, 0.704695, 0.00433382, 0.77782, 0.559835, 0.233247, 0.227651, 0.358069, 0.749393, 0.117542, 0.433086, 0.211494, 0.340984, 0.24799, 0.786604, 0.269659, 0.432376, 0.312364, 0.719123, 0.370674, 0.00847289, 0.807866, 0.863069, 0.100777, 0.536513, 0.423337, 0.231107, 0.586951, 0.567401, 0.427884, 0.73487, 0.208975, 0.353041, 0.247483, 0.456553, 0.736874, 0.94209, 0.264569, 0.210946, 0.639523, 0.079536, 0.678965, 0.573502, 0.43078, 0.444149, 0.296157, 0.664199, 0.729483, 0.317224, 0.862687, 0.906606, 0.281476, 0.507251, 0.204797, 0.908557, 0.86077, 0.207878, 0.670553, 0.439633, 0.866356, 0.645031, 0.163276, 0.77942, 0.875031, 0.377858, 0.308918, 0.811035, 0.691951, 0.738388, 0.508979, 0.601705, 0.0702119, 0.263637, 0.109569, 0.867348, 0.603911, 0.0351418, 0.90264, 0.359667, 0.92715, 0.487009, 0.558423, 0.59962, 0.3381, 0.00260816, 0.2917, 0.347709, 0.674063, 0.773833, 0.0174277, 0.129053, 0.173304, 0.940745, 0.419558, 0.00326372, 0.40297, 0.96468, 0.509424, 0.67384, 0.0882732, 0.110611, 0.522027, 0.864685, 0.306044, 0.87055, 0.0679443, 0.481999, 0.18915, 0.695993, 0.331741, 0.850465, 0.512519, 0.419894, 0.39356, 0.476141, 0.370136, 0.262703, 0.247899, 0.850707, 0.486571, 0.011581, 0.45049, 0.232171, 0.440695, 0.00337811, 0.925948, 0.319457, 0.884806, 0.311409, 0.852698, 0.63994, 0.568866, 0.267045, 0.223009, 0.313733, 0.629241, 0.129372, 0.579141, 0.904992, 0.385199, 0.330084, 0.0683533, 0.248661, 0.0791767, 0.515006, 0.444598, 0.200089, 0.881632, 0.62213, 0.977745, 0.394738, 0.527943, 0.910211, 0.704782, 0.794402, 0.78068, 0.00189873, 0.836006, 0.29421, 0.541889, 0.798596, 0.636402, 0.918368, 0.892159, 0.501628, 0.585471, 0.786059, 0.142041, 0.416124, 0.556017, 0.965452, 0.826374, 0.27872, 0.717857, 0.909668, 0.341899, 0.0586162, 0.320897, 0.10592, 0.756336, 0.277543, 0.782822, 0.636118, 0.0536134, 0.937309, 0.388455, 0.346383, 0.447704, 0.987638, 0.677626, 0.843047, 0.944787, 0.898766, 0.432687, 0.816114, 0.405026, 0.704707, 0.0453077, 0.829558, 0.303178, 0.342896, 0.767674, 0.2017, 0.147938, 0.458819, 0.727087, 0.341563, 0.574069, 0.279976, 0.434043, 0.629108, 0.838056, 0.281801, 0.15954, 0.533016, 0.161662, 0.97801, 0.87128, 0.634115, 0.774679, 0.225399, 0.749904, 0.486693, 0.99924, 0.620515, 0.305748, 0.22576, 0.726796, 0.918976, 0.786063, 0.375058, 0.181839, 0.391005, 0.79399, 0.960566, 0.0754091, 0.855213, 0.42244, 0.310224, 0.203215, 0.491572, 0.67097, 0.285214, 0.0858207, 0.438187, 0.503256, 0.879449, 0.33861, 0.582943, 0.172445, 0.947563, 0.619313, 0.621448, 0.112419, 0.53002, 0.896355, 0.611235, 0.546437, 0.934089, 0.444589, 0.585632, 0.563237, 0.216405, 0.0073357, 0.932245, 0.38411, 0.69195, 0.695525, 0.560935, 0.258023, 0.537613, 0.74352, 0.180963, 0.355721, 0.13062, 0.573029, 0.548766, 0.373238, 0.183068, 0.789831, 0.838845, 0.918679, 0.5173, 0.452515, 0.821234, 0.231247, 0.00733139, 0.798577, 0.602046, 0.468893, 0.101449, 0.362702, 0.968019, 0.198854, 0.0733694, 0.959848, 0.67011, 0.806687, 0.78752, 0.0224502, 0.541197, 0.42703, 0.536542, 0.593846, 0.281127, 0.746273, 0.913023, 0.827128, 0.852095, 0.159293, 0.296859, 0.950085, 0.210788, 0.885017, 0.273105, 0.425117, 0.815194, 0.428134, 0.914246, 0.128769, 0.469691, 0.717688, 0.0313141, 0.968659, 0.920771, 0.149099, 0.367242, 0.352186, 0.778338, 0.456717, 0.844881, 0.217232, 0.953702, 0.138595, 0.776925, 0.237162, 0.0112592, 0.12796, 0.379588, 0.31727, 0.0842268, 0.549664, 0.0946314, 0.084875, 0.507039, 0.822972, 0.59034, 0.686113, 0.0621147, 0.3072, 0.694008, 0.554752, 0.702632, 0.711288, 0.817532, 0.323501, 0.0892521, 0.902616, 0.537902, 0.0875294, 0.120766, 0.119613, 0.707762, 0.724657, 0.150481, 0.257149, 0.689427, 0.450747, 0.976963, 0.149166, 0.627768, 0.0403627, 0.0942667, 0.773643, 0.126306, 0.569131, 0.196301, 0.872196, 0.389558, 0.668807, 0.495927, 0.086254, 0.571141, 0.766913, 0.626801, 0.587774, 0.725417, 0.00918404, 0.822281, 0.207662, 0.058398, 0.25222, 0.786782, 0.299126, 0.255607, 0.57141, 0.931478, 0.407586, 0.977963, 0.223107, 0.54599, 0.282617, 0.913212, 0.62677, 0.165772, 0.155456, 0.518098, 0.931691, 0.200463, 0.096959, 0.946527, 0.845319, 0.284366, 0.733283, 0.153038, 0.321763, 0.360312, 0.995035, 0.958094, 0.195862, 0.46631, 0.189629, 0.302557, 0.945048, 0.643645, 0.13327, 0.371641, 0.819777, 0.57319, 0.553086, 0.471611, 0.00809229, 0.369703, 0.784892, 0.306595, 0.591466, 0.907076, 0.525374, 0.200636, 0.956976, 0.494712, 0.415214, 0.273887, 0.006213, 0.778764, 0.25197, 0.197293, 0.530253, 0.270816, 0.542919, 0.865151, 0.161401, 0.599639, 0.425171, 0.02092, 0.252805, 0.936007, 0.452521, 0.804941, 0.257674, 0.47651, 0.290657, 0.877264, 0.2645, 0.0344232, 0.176063, 0.719805, 0.462195, 0.149023, 0.525856, 0.465283, 0.753542, 0.12032, 0.304783, 0.918456, 0.378908, 0.518244, 0.439006, 0.77231, 0.568517, 0.964053, 0.0689595, 0.504969, 0.785789, 0.0910465, 0.387359, 0.304203, 0.165416, 0.852903, 0.49645, 0.110255, 0.604735, 0.150103, 0.558969, 0.768177, 0.051041, 0.736039, 0.0896563, 0.417839, 0.893887, 0.604943, 0.330641, 0.221515, 0.0743126, 0.824649, 0.461708, 0.504435, 0.582551, 0.159506, 0.389979, 0.68579, 0.8831, 0.346473, 0.38616, 0.00216954, 0.0552161, 0.457719, 0.867273, 0.554183, 0.172436, 0.649613, 0.692574, 0.979692, 0.350168, 0.124738, 0.771034, 0.296946, 0.911974, 0.81801, 0.368762, 0.722024, 0.767779, 0.327289, 0.401161, 0.855711, 0.156584, 0.568558, 0.728227, 0.400495, 0.78513, 0.818739, 0.456153, 0.097777, 0.905695, 0.781541, 0.452064, 0.366879, 0.351342, 0.583155, 0.603932, 0.405335, 0.998143, 0.917378, 0.487447, 0.254047, 0.188246, 0.64938, 0.182407, 0.473846, 0.17883, 0.0205566, 0.48272, 0.126721, 0.0308788, 0.457392, 0.848312, 0.812729, 0.677913, 0.340886, 0.497855, 0.728041, 0.16448, 0.108282, 0.23469, 0.711535, 0.883408, 0.191181, 0.183052, 0.646282, 0.374632, 0.471404, 0.230154, 0.445262, 0.155405, 0.106815, 0.927205, 0.876595, 0.852655, 0.187916, 0.719432, 0.964222, 0.0317673, 0.211245, 0.390158, 0.199502, 0.764087, 0.489397, 0.262862, 0.375746, 0.766732, 0.227395, 0.827619, 0.924451, 0.964898, 0.890601, 0.194575, 0.00461227, 0.405292, 0.828893, 0.423598, 0.325351, 0.41934, 0.316225, 0.735053, 0.268635, 0.234122, 0.302902, 0.901617, 0.595159, 0.378335, 0.794058, 0.475479, 0.234191, 0.568599, 0.862924, 0.108729, 0.684379, 0.634164, 0.627819, 0.403464, 0.714119, 0.311638, 0.558869, 0.899291, 0.942521, 0.70004, 0.281052, 0.587603, 0.594774, 0.82425, 0.402055, 0.336297, 0.49131, 0.0355295, 0.20571, 0.0773773, 0.0854871, 0.590875, 0.465248, 0.573695, 0.514803, 0.0374262, 0.634345, 0.889226, 0.815978, 0.695728, 0.586232, 0.258294, 0.237564, 0.669203, 0.586342, 0.290764, 0.0272068, 0.224519, 0.454707, 0.312868, 0.162063, 0.49107, 0.389977, 0.825339, 0.669316, 0.364957, 0.746349, 0.937063, 0.895906, 0.45993, 0.415207, 0.777136, 0.570434, 0.410112, 0.94222, 0.337142, 0.638576, 0.0790274, 0.645746, 0.495093, 0.0112824, 0.457787, 0.0427242, 0.546968, 0.346656, 0.899557, 0.375191, 0.762052, 0.156298, 0.0423364, 0.54216, 0.901158, 0.6859, 0.149723, 0.260315, 0.429589, 0.282768, 0.84107, 0.912924, 0.105573, 0.899135, 0.316069, 0.388782, 0.214574, 0.520231, 0.644219, 0.809056, 0.164912, 0.90789, 0.654766, 0.753898, 0.715918, 0.212526, 0.210772, 0.656654, 0.555379, 0.874011, 0.0593176, 0.806727, 0.297839, 0.8511, 0.117454, 0.955629, 0.757795, 0.0158988, 0.333015, 0.753903, 0.848117, 0.441142, 0.458952, 0.589017, 0.926075, 0.37727, 0.771108, 0.696034, 0.566547, 0.298096, 0.860689, 0.626973, 0.305328, 0.390657, 0.407119, 0.342068, 0.348203, 0.346508, 0.522355, 0.482273, 0.407676, 0.404382, 0.30361, 0.568368, 0.871924, 0.485865, 0.26557, 0.135717, 0.358373, 0.312095, 0.663044, 0.287236, 0.374043, 0.0501449, 0.239964, 0.52668, 0.884362, 0.145246, 0.0841258, 0.660448, 0.821908, 0.400395, 0.232616, 0.56343, 0.290434, 0.608942, 0.331562, 0.0353069, 0.83608, 0.509274, 0.921468, 0.264453, 0.540291, 0.652523, 0.699866, 0.211111, 0.0818981, 0.755813, 0.590837, 0.104546, 0.715796, 0.261986, 0.73191, 0.0513411, 0.642299, 0.577822, 0.413361, 0.415893, 0.312461, 0.299206, 0.695782, 0.722502, 0.566072, 0.455906, 0.204741, 0.381895, 0.414785, 0.961251, 0.0785839, 0.251855, 0.297642, 0.52355, 0.202696, 0.233333, 0.816203, 0.302117, 0.0354591, 0.302033, 0.313475, 0.480165, 0.372702, 0.491462, 0.476555, 0.938915, 0.0948726, 0.289336, 0.479208, 0.65302, 0.820664, 0.138595, 0.898718, 0.0787371, 0.572545, 0.0301605, 0.712573, 0.382798, 0.710102, 0.306245, 0.288292, 0.0149951, 0.477971, 0.663424, 0.995834, 0.30158, 0.296989, 0.598632, 0.784215, 0.765998, 0.999818, 0.653874, 0.826555, 0.179131, 0.78748, 0.502525, 0.153814, 0.638521, 0.885808, 0.730842, 0.612152, 0.237592, 0.265346, 0.605184, 0.409794, 0.958669, 0.887942, 0.842166, 0.67466, 0.217852, 0.303594, 0.217622, 0.719919, 0.294258, 0.502798, 0.968737, 0.711519, 0.146334, 0.901055, 0.342814, 0.515048, 0.156569, 0.480063, 0.762152, 0.146304, 0.91738, 0.512755, 0.74993, 0.614057, 0.498649, 0.832608, 0.138007, 0.0635518, 0.90737, 0.984678, 0.792356, 0.439238, 0.920941, 0.467957, 0.997167, 0.780395, 0.498664, 0.830492, 0.176103, 0.875214, 0.62277, 0.645844, 0.207281, 0.123563, 0.591686, 0.780432, 0.0129608, 0.791339, 0.942195, 0.49052, 0.49108, 0.402874, 0.975778, 0.851602, 0.539155, 0.801932, 0.290795, 0.548088, 0.573889, 0.0428229, 0.297403, 0.366614, 0.0775476, 0.398522, 0.15321, 0.124954, 0.875133, 0.851476, 0.0164045, 0.963777, 0.657369, 0.74879, 0.451537, 0.519164, 0.948713, 0.516193, 0.169243, 0.885918, 0.123151, 0.454701, 0.471602, 0.918203, 0.150973, 0.184077, 0.0324483, 0.750839, 0.993702, 0.547591, 0.900177, 0.613035, 0.911406, 0.486874, 0.839213, 0.532897, 0.205058, 0.120355, 0.956325, 0.200277, 0.995595, 0.301477, 0.27882, 0.81556, 0.682971, 0.159015, 0.281016, 0.215435, 0.665187, 0.821636, 0.709168, 0.731362, 0.355398, 0.828751, 0.485887, 0.622877, 0.832851, 0.00500767, 0.205263, 0.610187, 0.0793023, 0.942119, 0.965432, 0.882908, 0.419753, 0.623326, 0.559083, 0.0768554, 0.478461, 0.635069, 0.652805, 0.563948, 0.961552, 0.478587, 0.149986, 0.781196, 0.27784, 0.322648, 0.496072, 0.445879, 0.854785, 0.665529, 0.451308, 0.423746, 0.323325, 0.387398, 0.333302, 0.548933, 0.609913, 0.399075, 0.342851, 0.703824, 0.697605, 0.249703, 0.33358, 0.208028, 0.368541, 0.674104, 0.366247, 0.711366, 0.64422, 0.731571, 0.756717, 0.182663, 0.063741, 0.544396, 0.460685, 0.681695, 0.523088, 0.975995, 0.391259, 0.269248, 0.956278, 0.956123, 0.33244, 0.284253, 0.940698, 0.789579, 0.642366, 0.869707, 0.914349, 0.200234, 0.685062, 0.366813, 0.592963, 0.176426, 0.94228, 0.990111, 0.197891, 0.942487, 0.157776, 0.851431, 0.809682, 0.14956, 0.204497, 0.606793, 0.210414, 0.626229, 0.274956, 0.0589762, 0.542507, 0.423364, 0.193907, 0.692688, 0.130227, 0.732838, 0.592308, 0.0463694, 0.244651, 0.196437, 0.431101, 0.245558, 0.445836, 0.423409, 0.340895, 0.77525, 0.0941416, 0.326716, 0.956279, 0.749079, 0.0113159, 0.741488, 0.272533, 0.740601, 0.381669, 0.9757, 0.0633884, 0.0507312, 0.813466, 0.312817, 0.831893, 0.0735946, 0.565494, 0.375287, 0.923022, 0.326449, 0.238649, 0.493041, 0.717581, 0.558414, 0.311803, 0.410783, 0.820905, 0.92364, 0.916962, 0.720033, 0.553118, 0.487445, 0.308895, 0.309555, 0.43254, 0.699058, 0.43688, 0.625924, 0.698767, 0.117668, 0.918938, 0.346946, 0.0425424, 0.944571, 0.677862, 0.99643, 0.799117, 0.194624, 0.656236, 0.18612, 0.964324, 0.490419, 0.948009, 0.755962, 0.26376, 0.431221, 0.369431, 0.203499, 0.471946, 0.102859, 0.387421, 0.321703, 0.815841, 0.209385, 0.337212, 0.880437, 0.562884, 0.702048, 0.000459374, 0.783616, 0.52945, 0.974002, 0.445899, 0.614568, 0.717301, 0.712262, 0.804264, 0.488487, 0.885669, 0.587038, 0.653692, 0.387325, 0.519875, 0.588843, 0.715098, 0.330496, 0.605493, 0.207392, 0.856513, 0.990133, 0.892779, 0.487827, 0.515743, 0.342204, 0.762723, 0.701436, 0.112907, 0.52613, 0.580736, 0.939468, 0.810839, 0.292307, 0.0776587, 0.353387, 0.211921, 0.983335, 0.509046, 0.720184, 0.929707, 0.962867, 0.325599, 0.21685, 0.700793, 0.610453, 0.806198, 0.306915, 0.424551, 0.535444, 0.543655, 0.43802, 0.111197, 0.520964, 0.375032, 0.751728, 0.87544, 0.0540034, 0.540669, 0.318817, 0.98065, 0.620196, 0.969598, 0.523801, 0.13368, 0.895382, 0.967372, 0.0376354, 0.564836, 0.32494, 0.988143, 0.718526, 0.422607, 0.656999, 0.198147, 0.268907, 0.772404, 0.891959, 0.400608, 0.244192, 0.102446, 0.68491, 0.306202, 0.757514, 0.508371, 0.966817, 0.354025, 0.98087, 0.631283, 0.333821, 0.129576, 0.00903872, 0.219943, 0.690989, 0.702476, 0.94906, 0.589556, 0.181258, 0.900491, 0.316564, 0.0748155, 0.315486, 0.832598, 0.931692, 0.750243, 0.324454, 0.299902, 0.458279, 0.960857, 0.42153, 0.208215, 0.997338, 0.947857, 0.022519, 0.757379, 0.707325, 0.113124, 0.352403, 0.502426, 0.987138, 0.272896, 0.203509, 0.26698, 0.697656, 0.653962, 0.308136, 0.41509, 0.790229, 0.3041, 0.421952, 0.051838, 0.422688, 0.233201, 0.762426, 0.0997682, 0.307766, 0.410076, 0.324199, 0.183727, 0.543223, 0.656292, 0.389546, 0.906389, 0.299238, 0.875743, 0.708753, 0.661783, 0.845525, 0.454504, 0.254718, 0.400637, 0.0231452, 0.500626, 0.704305, 0.744324, 0.112412, 0.283358, 0.191706, 0.281803, 0.747076, 0.605198, 0.184819, 0.666309, 0.799229, 0.0776687, 0.0802222, 0.312765, 0.946827, 0.0596306, 0.667841, 0.884433, 0.51361, 0.228784, 0.996955, 0.692894, 0.350533, 0.236139, 0.210733, 0.0519904, 0.565338, 0.496377, 0.834963, 0.151537, 0.675795, 0.765246, 0.197451, 0.830342, 0.705628, 0.633288, 0.0790493, 0.51424, 0.472419, 0.336734, 0.931291, 0.771549, 0.78136, 0.0825076, 0.865056, 0.764332, 0.213556, 0.709222, 0.0986586, 0.472112, 0.908587, 0.422681, 0.772503, 0.0943595, 0.0677044, 0.511535, 0.015377, 0.829827, 0.0513216, 0.0310989, 0.39529, 0.408324, 0.660395, 0.429288, 0.996907, 0.557591, 0.164672, 0.456345, 0.347624, 0.599917, 0.374569, 0.201176, 0.663327, 0.297464, 0.0500502, 0.737515, 0.729015, 0.14747, 0.946795, 0.659139, 0.271387, 0.556344, 0.816534, 0.581452, 0.731536, 0.354551, 0.791237, 0.561444, 0.388968, 0.355855, 0.490382, 0.437563, 0.119889, 0.0421211, 0.695471, 0.53896, 0.63328, 0.475862, 0.7677, 0.155043, 0.552161, 0.1977, 0.213232, 0.902141, 0.963417, 0.928794, 0.67945, 0.741175, 0.970789, 0.413755, 0.33189, 0.179538, 0.031885, 0.305146, 0.00171725, 0.473425, 0.928786, 0.0217968, 0.720502, 0.282527, 0.147384, 0.505182, 0.932958, 0.827321, 0.611847, 0.295508, 0.813456, 0.786285, 0.942785, 0.0452294, 0.0344326, 0.934324, 0.692599, 0.110871, 0.894507, 0.116253, 0.437586, 0.0585453, 0.0240826, 0.993231, 0.542855, 0.501712, 0.0721433, 0.0994377, 0.998065, 0.708815, 0.89808, 0.533229, 0.403015, 0.612847, 0.047366, 0.148115, 0.562168, 0.394409, 0.608027, 0.0267424, 0.290254, 0.47847, 0.686004, 0.732128, 0.42657, 0.788678, 0.772223, 0.62925, 0.759383, 0.452272, 0.0417733, 0.815828, 0.502242, 0.777239, 0.190182, 0.797986, 0.347557, 0.270428, 0.32897, 0.203132, 0.065833, 0.192312, 0.712893, 0.0878632, 0.450295, 0.348962, 0.324327, 0.848166, 0.902288, 0.103475, 0.0515426, 0.120736, 0.086399, 0.50396, 0.624497, 0.108548, 0.877673, 0.150397, 0.192996, 0.414415, 0.630816, 0.760576, 0.913109, 0.359354, 0.378046, 0.213008, 0.215852, 0.758265, 0.954744, 0.774403, 0.185868, 0.722292, 0.376673, 0.8275, 0.417598, 0.829849, 0.506043, 0.619417, 0.130901, 0.906095, 0.639795, 0.42788, 0.455821, 0.0438123, 0.501677, 0.346877, 0.619034, 0.745127, 0.567403, 0.975417, 0.229503, 0.194782, 0.603565, 0.239533, 0.535431, 0.167969, 0.113333, 0.246095, 0.140613, 0.873381, 0.911245, 0.634745, 0.19174, 0.406336, 0.20855, 0.620873, 0.823239, 0.0645393, 0.340056, 0.765581, 0.39219, 0.982776, 0.305914, 0.919302, 0.538892, 0.311472, 0.987755, 0.778656, 0.510709, 0.230951, 0.294692, 0.43749, 0.517912, 0.583967, 0.331689, 0.358365, 0.908121, 0.951953, 0.532865, 0.487829, 0.888651, 0.738156, 0.00227695, 0.409016, 0.29978, 0.277166, 0.0951966, 0.521998, 0.802438, 0.217107, 0.622685, 0.836014, 0.343891, 0.882098, 0.458475, 0.692639, 0.599496, 0.839918, 0.0620356, 0.800176, 0.0710426, 0.366246, 0.912615, 0.846913, 0.601073, 0.109573, 0.461957, 0.0704047, 0.502957, 0.264197, 0.242234, 0.066548, 0.562283, 0.428924, 0.298302, 0.838083, 0.782405, 0.891001, 0.553726, 0.0370573, 0.504141, 0.152362, 0.333185, 0.595767, 0.0645192, 0.206343, 0.645988, 0.046566, 0.0362076, 0.650496, 0.369786, 0.0155528, 0.186184, 0.136588, 0.197887, 0.316526, 0.205125, 0.932632, 0.331489, 0.962175, 0.220918, 0.814224, 0.401887, 0.631963, 0.935164, 0.230002, 0.374688, 0.510809, 0.553638, 0.170291, 0.500819, 0.636374, 0.681217, 0.701833, 0.998451, 0.726489, 0.430992, 0.502006, 0.642544, 0.744813, 0.993198, 0.205778, 0.26555, 0.332985, 0.190966, 0.43116, 0.134929, 0.74008, 0.218884, 0.0331861, 0.571262, 0.305478, 0.575809, 0.0896732, 0.996754, 0.355575, 0.309409, 0.382043, 0.165226, 0.814685, 0.942625, 0.817264, 0.439602, 0.824015, 0.235209, 0.771575, 0.216991, 0.875284, 0.63444, 0.766869, 0.714013, 0.00575976, 0.21631, 0.54574, 0.800772, 0.262503, 0.0049781, 0.852463, 0.505458, 0.751669, 0.544636, 0.541515, 0.418763, 0.809507, 0.357748, 0.0707932, 0.879101, 0.256054, 0.618641, 0.0207241, 0.987606, 0.603628, 0.263369, 0.0998284, 0.531484, 0.287135, 0.680079, 0.646468, 0.588465, 0.612844, 0.959933, 0.454027, 0.998903, 0.0750708, 0.484747, 0.137809, 0.30644, 0.476446, 0.764898, 0.729106, 0.865087, 0.404021, 0.566862, 0.916184, 0.0323896, 0.282523, 0.119637, 0.228027, 0.35099, 0.28294, 0.0240002, 0.916164, 0.511294, 0.531937, 0.973902, 0.744645, 0.198595, 0.473359, 0.612051, 0.761291, 0.0676087, 0.0364221, 0.769576, 0.256146, 0.62122, 0.286872, 0.749406, 0.196533, 0.901199, 0.860322, 0.0700879, 0.521278, 0.292573, 0.778591, 0.719234, 0.648337, 0.404644, 0.0845634, 0.138832, 0.515428, 0.159667, 0.283869, 0.176462, 0.334045, 0.857806, 0.219812, 0.208473, 0.832307, 0.54852, 0.540312, 0.279597, 0.743404, 0.805927, 0.115561, 0.639214, 0.13402, 0.144308, 0.283228, 0.744692, 0.884469, 0.843563, 0.912334, 0.0275226, 0.579395, 0.546761, 0.495795, 0.79755, 0.921985, 0.00752239, 0.97616, 0.0725076, 0.434346, 0.303505, 0.023725, 0.227658, 0.277927, 0.748995, 0.0630237, 0.204613, 0.586421, 0.244571, 0.592176, 0.703014, 0.722145, 0.439465, 0.127182, 0.424489, 0.172089, 0.226009, 0.17294, 0.199361, 0.278068, 0.79068, 0.840652, 0.853706, 0.960016, 0.614518, 0.960822, 0.997946, 0.977777, 0.339633, 0.676073, 0.941484, 0.34342, 0.829122, 0.796571, 0.370971, 0.390502, 0.900768, 0.545817, 0.155374, 0.900034, 0.613687, 0.622225, 0.207122, 0.428731, 0.347693, 0.610224, 0.747305, 0.9997, 0.574436, 0.0225464, 0.537181, 0.553919, 0.854886, 0.63086, 0.294037, 0.886799, 0.31187, 0.596727, 0.651751, 0.721402, 0.724773, 0.938274, 0.69281, 0.94695, 0.0887053, 0.260229, 0.0861957, 0.214669, 0.700685, 0.524997, 0.687995, 0.683631, 0.139977, 0.971096, 0.631791, 0.347941, 0.520404, 0.765819, 0.491614, 0.113508, 0.326125, 0.770543, 0.239641, 0.239453, 0.971334, 0.905452, 0.082197, 0.933207, 0.208841, 0.5037, 0.425159, 0.585294, 0.926005, 0.0331262, 0.119668, 0.538155, 0.733354, 0.566248, 0.842198, 0.760044, 0.410168, 0.674897, 0.330128, 0.997969, 0.954744, 0.679404, 0.5157, 0.155845, 0.743917, 0.108803, 0.16691, 0.70057, 0.114365, 0.248203, 0.45853, 0.201686, 0.297007, 0.129577, 0.997773, 0.432945, 0.277097, 0.876064, 0.539257, 0.405073, 0.596889, 0.686738, 0.719723, 0.842702, 0.647837, 0.979422, 0.106926, 0.103007, 0.539072, 0.726352, 0.607404, 0.364316, 0.135479, 0.505432, 0.462888, 0.282019, 0.660833, 0.577395, 0.0872616, 0.895474, 0.0309444, 0.246224, 0.326139, 0.0961142, 0.844835, 0.466664, 0.397518, 0.166221, 0.255632, 0.783326, 0.637884, 0.180354, 0.344443, 0.959245, 0.418229, 0.242485, 0.0763008, 0.300853, 0.183773, 0.792928, 0.9729, 0.358994, 0.500392, 0.336267, 0.745157, 0.915073, 0.931092, 0.0871831, 0.101795, 0.487572, 0.230753, 0.0285775, 0.660948, 0.175747, 0.13355, 0.259681, 0.442442, 0.992228, 0.451146, 0.798398, 0.715722, 0.730391, 0.0104432, 0.0911216, 0.646872, 0.514239, 0.431686, 0.409231, 0.449391, 0.731215, 0.95104, 0.126263, 0.289025, 0.924131, 0.501361, 0.71892, 0.704512, 0.460507, 0.445345, 0.20252, 0.619948, 0.181668, 0.610762, 0.252248, 0.364614, 0.98668, 0.427278, 0.213482, 0.0645361, 0.605884, 0.538641, 0.386122, 0.838646, 0.877546, 0.463743, 0.466673, 0.139024, 0.39403, 0.662316, 0.606556, 0.457391, 0.1327, 0.815707, 0.0351553, 0.129269, 0.992484, 0.134357, 0.964223, 0.670463, 0.914454, 0.278057, 0.373945, 0.810388, 0.794334, 0.769387, 0.645876, 0.762126, 0.954626, 0.0443219, 0.682765, 0.222122, 0.62291, 0.0248144, 0.31431, 0.749545, 0.428863, 0.573547, 0.165765, 0.329579, 0.258269, 0.211796, 0.798198, 0.775917, 0.0498462, 0.0225739, 0.41106, 0.418993, 0.708065, 0.798057, 0.358689, 0.974601, 0.946496, 0.748159, 0.440356, 0.962265, 0.324581, 0.558731, 0.714919, 0.18392, 0.353212, 0.590955, 0.698877, 0.455575, 0.71087, 0.213767, 0.933595, 0.468522, 0.921713, 0.486236, 0.490256, 0.665164, 0.273319, 0.370377, 0.331048, 0.939203, 0.887592, 0.121029, 0.566328, 0.601967, 0.581702, 0.920826, 0.121328, 0.651494, 0.354383, 0.839414, 0.503693, 0.372105, 0.592742, 0.438147, 0.621782, 0.354364, 0.503378, 0.871103, 0.782457, 0.378147, 0.431539, 0.0724265, 0.985554, 0.295643, 0.417093, 0.750814, 0.610749, 0.0368025, 0.186401, 0.919098, 0.989517, 0.675107, 0.11146, 0.719372, 0.775524, 0.60422, 0.0053235, 0.969482, 0.469206, 0.0535987, 0.835375, 0.279203, 0.338218, 0.569804, 0.497755, 0.636261, 0.0337694, 0.0218546, 0.36575, 0.619811, 0.409943, 0.0115243, 0.809308, 0.359385, 0.937377, 0.523961, 0.658996, 0.237549, 0.495443, 0.478506, 0.932587, 0.141647, 0.39376, 0.34401, 0.457826, 0.951581, 0.706873, 0.27061, 0.950437, 0.884162, 0.146736, 0.0204652, 0.592723, 0.056428, 0.0783631, 0.269389, 0.0591661, 0.0287375, 0.0193022, 0.40157, 0.00981542, 0.967253, 0.564831, 0.256039, 0.486816, 0.110971, 0.5415, 0.295467, 0.0365363, 0.183209, 0.868703, 0.592161, 0.375432, 0.844109, 0.925935, 0.0326413, 0.634369, 0.509423, 0.582345, 0.909867, 0.156127, 0.0352869, 0.870373, 0.469511, 0.282328, 0.570077, 0.968871, 0.955915, 0.834278, 0.890698, 0.901735, 0.519432, 0.0488613, 0.154037, 0.287447, 0.359883, 0.985389, 0.52664, 0.0570452, 0.851597, 0.894827, 0.0408393, 0.49287, 0.987677, 0.886312, 0.499923, 0.285968, 0.314708, 0.485444, 0.741816, 0.290477, 0.733859, 0.236378, 0.256612, 0.155221, 0.782483, 0.73168, 0.87311, 0.879609, 0.884024, 0.677188, 0.955055, 0.692199, 0.352102, 0.691087, 0.988245, 0.322867, 0.0380597, 0.77284, 0.203456, 0.730323, 0.761791, 0.400378, 0.874002, 0.547934, 0.953313, 0.219876, 0.100409, 0.768741, 0.635169, 0.82405, 0.0826316, 0.34113, 0.022735, 0.370105, 0.137198, 0.155422, 0.727368, 0.463257, 0.969237, 0.145959, 0.233517, 0.362324, 0.669382, 0.558766, 0.68986, 0.57231, 0.498823, 0.736345, 0.576362, 0.50987, 0.666443, 0.651084, 0.706354, 0.805967, 0.141184, 0.205241, 0.0468586, 0.717799, 0.30578, 0.692125, 0.916982, 0.513778, 0.818624, 0.0158147, 0.188299, 0.919569, 0.312238, 0.165987, 0.693178, 0.559865, 0.366556, 0.370438, 0.315617, 0.46419, 0.0519459, 0.31128, 0.528658, 0.0779606, 0.474219, 0.547363, 0.999653, 0.485361, 0.222646, 0.0112261, 0.16428, 0.648535, 0.653179, 0.193476, 0.98362, 0.466786, 0.841197, 0.0880118, 0.849756, 0.663088, 0.605092, 0.878049, 0.405664, 0.523132, 0.968847, 0.637803, 0.827179, 0.649504, 0.080405, 0.557131, 0.380966, 0.654977, 0.953605, 0.634304, 0.255329, 0.580189, 0.28379, 0.34013, 0.69615, 0.152203, 0.162791, 0.907203, 0.104816, 0.164774, 0.404359, 0.640923, 0.731013, 0.841513, 0.0663143, 0.424773, 0.379522, 0.524056, 0.182205, 0.0263843, 0.429137, 0.611556, 0.289765, 0.690918, 0.499398, 0.191333, 0.990329, 0.602522, 0.591796, 0.265113, 0.99066, 0.559795, 0.202085, 0.210071, 0.600537, 0.619323, 0.889541, 0.905362, 0.09818, 0.787055, 0.878502, 0.916668, 0.420763, 0.271097, 0.378082, 0.233722, 0.957123, 0.172673, 0.664395, 0.141372, 0.163182, 0.553433, 0.39348, 0.985466, 0.408348, 0.533142, 0.432394, 0.437719, 0.775577, 0.934864, 0.328533, 0.767522, 0.427572, 0.385896, 0.529203, 0.141147, 0.303762, 0.870935, 0.00144801, 0.524013, 0.0421703, 0.47047, 0.100445, 0.585934, 0.354223, 0.0834647, 0.913464, 0.581204, 0.627656, 0.440589, 0.99519, 0.726606, 0.230397, 0.451295, 0.591147, 0.315129, 0.212771, 0.986914, 0.597935, 0.639038, 0.171403, 0.884961, 0.85331, 0.0958421, 0.556571, 0.541104, 0.931672, 0.768871, 0.883653, 0.2884, 0.607495, 0.370771, 0.0263914, 0.221665, 0.579561, 0.0560537, 0.688331, 0.000530883, 0.763235, 0.113872, 0.670869, 0.382168, 0.951064, 0.230139, 0.0884889, 0.829555, 0.493269, 0.517877, 0.101586, 0.953319, 0.785498, 0.0463504, 0.375515, 0.105873, 0.838429, 0.639821, 0.277366, 0.193883, 0.450743, 0.84173, 0.188137, 0.65757, 0.570521, 0.561549, 0.982546, 0.268574, 0.0361614, 0.239571, 0.861502, 0.919403, 0.649889, 0.876869, 0.514662, 0.110274, 0.237857, 0.44978, 0.852857, 0.290724, 0.73828, 0.762216, 0.693903, 0.131173, 0.0502922, 0.017719, 0.141964, 0.37693, 0.758384, 0.453515, 0.961074, 0.906867, 0.597192, 0.0880735, 0.0932788, 0.0197004, 0.327367, 0.733527, 0.957174, 0.478613, 0.141557, 0.125371, 0.0670994, 0.609486, 0.0344699, 0.955827, 0.312528, 0.790934, 0.719149, 0.774618, 0.124207, 0.989422, 0.347883, 0.431302, 0.524219, 0.122455, 0.732618, 0.568935, 0.695886, 0.934012, 0.152918, 0.265866, 0.0329838, 0.995673, 0.26983, 0.800392, 0.555461, 0.340995, 0.489039, 0.277231, 0.781677, 0.10935, 0.187688, 0.26424, 0.761925, 0.89656, 0.697504, 0.363112, 0.793524, 0.125838, 0.694469, 0.768287, 0.184716, 0.957278, 0.685834, 0.0891029, 0.432854, 0.229721, 0.541634, 0.636061, 0.363804, 0.0615026, 0.852762, 0.234804, 0.124602, 0.463749, 0.583845, 0.21873, 0.358247, 0.554411, 0.519895, 0.952891, 0.492718, 0.675224, 0.732572, 0.598998, 0.40537, 0.429348, 0.797104, 0.212902, 0.257982, 0.309314, 0.895807, 0.207998, 0.0374725, 0.693981, 0.293132, 0.564519, 0.0386697, 0.286437, 0.890079, 0.555628, 0.952875, 0.7022, 0.710103, 0.295732, 0.947625, 0.655212, 0.454, 0.750466, 0.495312, 0.915, 0.177233, 0.792406, 0.325984, 0.698772, 0.995777, 0.462132, 0.530278, 0.451316, 0.266119, 0.429365, 0.576811, 0.599757, 0.38522, 0.0168795, 0.821437, 0.195268, 0.904495, 0.795734, 0.504767, 0.342887, 0.16251, 0.809289, 0.141759, 0.560768, 0.876467, 0.107043, 0.910884, 0.490546, 0.525436, 0.986358, 0.367851, 0.121117, 0.199685, 0.0494851, 0.204553, 0.33997, 0.26258, 0.443446, 0.535725, 0.392264, 0.0102544, 0.821591, 0.00237562, 0.335985, 0.988922, 0.140888, 0.752345, 0.0470223, 0.668686, 0.954664, 0.751732, 0.893064, 0.301303, 0.239239, 0.461059, 0.725767, 0.806086, 0.854317, 0.5304, 0.0725539, 0.784497, 0.547176, 0.13796, 0.468485, 0.560381, 0.604325, 0.979507, 0.416763, 0.477392, 0.978413, 0.0129352, 0.395437, 0.630093, 0.523866, 0.0329022, 0.7092, 0.917279, 0.721076, 0.587595, 0.768258, 0.805407, 0.965405, 0.435104, 0.308071, 0.358265, 0.944223, 0.611082, 0.704231, 0.963482, 0.0616783, 0.855464, 0.561312, 0.600447, 0.305126, 0.84011, 0.9094, 0.553137, 0.0964839, 0.174591, 0.934101, 0.531598, 0.424645, 0.217711, 0.296364, 0.0409469, 0.80714, 0.612858, 0.457655, 0.837201, 0.455085, 0.0633057, 0.088044, 0.656438, 0.668495, 0.219115, 0.405178, 0.92651, 0.195594, 0.196805, 0.486918, 0.746504, 0.528198, 0.881192, 0.148688, 0.0588538, 0.980801, 0.639967, 0.0963921, 0.940596, 0.567153, 0.916391, 0.132241, 0.75758, 0.833991, 0.255245, 0.835937, 0.91713, 0.900663, 0.54841, 0.788422, 0.207004, 0.0122745, 0.696936, 0.276365, 0.0921305, 0.372153, 0.289798, 0.354533, 0.66541, 0.719798, 0.892655, 0.691821, 0.158771, 0.391436, 0.961205, 0.229076, 0.517206, 0.70443, 0.955892, 0.673987, 0.345913, 0.947138, 0.332982, 0.470211, 0.0789133, 0.699266, 0.595584, 0.714101, 0.531917, 0.654689, 0.0830353, 0.929533, 0.77689, 0.395469, 0.738087, 0.614115, 0.383841, 0.0892102, 0.930917, 0.026924, 0.148354, 0.593354, 0.587583, 0.836964, 0.275544, 0.374362, 0.994229, 0.281204, 0.678332, 0.335057, 0.327262, 0.179402, 0.120084, 0.387661, 0.130125, 0.46928, 0.168189, 0.475752, 0.0491798, 0.192861, 0.660905, 0.327744, 0.220833, 0.33993, 0.730424, 0.0926077, 0.432199, 0.584865, 0.248809, 0.884808, 0.295352, 0.432771, 0.108191, 0.812276, 0.842286, 0.578389, 0.676405, 0.0438432, 0.667044, 0.350506, 0.642416, 0.127809, 0.361473, 0.386797, 0.638381, 0.834927, 0.894648, 0.047081, 0.945455, 0.768864, 0.625907, 0.411053, 0.366987, 0.736365, 0.770482, 0.721603, 0.105652, 0.356595, 0.455968, 0.324094, 0.64266, 0.557477, 0.70733, 0.856852, 0.437905, 0.968905, 0.709853, 0.636114, 0.0656424, 0.698599, 0.0163767, 0.0795992, 0.749982, 0.581594, 0.0975152, 0.9089, 0.45852, 0.408901, 0.651383, 0.0822779, 0.836105, 0.173849, 0.424383, 0.0234746, 0.921112, 0.040811, 0.0759405, 0.485741, 0.52121, 0.355386, 0.926052, 0.181826, 0.30377, 0.941976, 0.95971, 0.830878, 0.292631, 0.856022, 0.581403, 0.347075, 0.710355, 0.194496, 0.789651, 0.0972559, 0.658947, 0.49509, 0.530718, 0.535513, 0.800662, 0.106724, 0.0886827, 0.6503, 0.948656, 0.30601, 0.550014, 0.495767, 0.285114, 0.561632, 0.525229, 0.150295, 0.858642, 0.304058, 0.3444, 0.593324, 0.0674996, 0.974289, 0.751881, 0.867504, 0.496053, 0.0249461, 0.881343, 0.255988, 0.567881, 0.286744, 0.391873, 0.213207, 0.42003, 0.322785, 0.0545056, 0.812156, 0.521479, 0.0131528, 0.904396, 0.294556, 0.591013, 0.898646, 0.705362, 0.736616, 0.438744, 0.976117, 0.542808, 0.683477, 0.785221, 0.789859, 0.482724, 0.846109, 0.944255, 0.0918593, 0.509805, 0.327315, 0.930139, 0.0844249, 0.544293, 0.241036, 0.712018, 0.861089, 0.214794, 0.114647, 0.568504, 0.641023, 0.749465, 0.421019, 0.790446, 0.231891, 0.219589, 0.135377, 0.207071, 0.437452, 0.530619, 0.150124, 0.896802, 0.843331, 0.639401, 0.508767, 0.907281, 0.236526, 0.103391, 0.722656, 0.270883, 0.00526338, 0.753016, 0.881599, 0.282624, 0.967756, 0.211178, 0.19713, 0.186052, 0.450799, 0.883309, 0.715028, 0.491312, 0.270213, 0.784341, 0.876818, 0.462363, 0.645861, 0.30365, 0.726425, 0.0850515, 0.685352, 0.532666, 0.470819, 0.932496, 0.94819, 0.513388, 0.911458, 0.596679, 0.520154, 0.47787, 0.326133, 0.685435, 0.0874477, 0.285027, 0.136082, 0.810023, 0.60069, 0.818495, 0.28603, 0.406306, 0.0927686, 0.326538, 0.975186, 0.318257, 0.0757217, 0.275155, 0.17117, 0.740422, 0.573987, 0.748141, 0.443699, 0.935381, 0.601052, 0.0418846, 0.878326, 0.217061, 0.0981728, 0.58808, 0.948826, 0.547458, 0.0465522, 0.847922, 0.99061, 0.923358, 0.906015, 0.850834, 0.892246, 0.921648, 0.066566, 0.461191, 0.465599, 0.717356, 0.0347364, 0.631967, 0.734621, 0.579385, 0.890705, 0.540239, 0.492844, 0.807834, 0.921383, 0.809126, 0.315515, 0.646601, 0.611443, 0.594705, 0.853509, 0.348828, 0.430188, 0.957612, 0.196061, 0.523718, 0.469192, 0.0806763, 0.874672, 0.0198086, 0.485019, 0.918249, 0.918366, 0.850406, 0.53594, 0.862073, 0.821116, 0.249198, 0.934817, 0.629983, 0.40828, 0.153033, 0.0810286, 0.231719, 0.204541, 0.200261, 0.911439, 0.377936, 0.474523, 0.511993, 0.325127, 0.767908, 0.583156, 0.76049, 0.93169, 0.115439, 0.687285, 0.170706, 0.0405119, 0.579923, 0.865023, 0.220679, 0.917032, 0.382647, 0.702412, 0.41282, 0.274478, 0.866148, 0.183507, 0.57446, 0.375441, 0.45569, 0.208625, 0.14938, 0.0611816, 0.243342, 0.560659, 0.944514, 0.404453, 0.0324093, 0.332591, 0.898494, 0.171232, 0.369558, 0.795901, 0.689747, 0.261825, 0.720138, 0.579142, 0.959401, 0.537123, 0.910328, 0.496331, 0.632759, 0.924125, 0.411323, 0.332008, 0.8967, 0.832014, 0.776114, 0.711136, 0.673534, 0.0745876, 0.471501, 0.195611, 0.612842, 0.0282559, 0.823752, 0.976105, 0.932805, 0.760794, 0.0621428, 0.628563, 0.584414, 0.768426, 0.449936, 0.705981, 0.977829, 0.450984, 0.0627631, 0.464332, 0.0233331, 0.312305, 0.291767, 0.258894, 0.817472, 0.563718, 0.137744, 0.865692, 0.0516371, 0.755392, 0.0605751, 0.0490613, 0.626908, 0.654016, 0.926472, 0.913711, 0.793858, 0.605462, 0.668132, 0.150249, 0.938324, 0.892364, 0.361715, 0.354309, 0.275277, 0.292327, 0.263327, 0.246885, 0.053911, 0.344328, 0.769497, 0.117803, 0.401169, 0.446425, 0.617244, 0.808714, 0.5676, 0.923967, 0.41764, 0.510277, 0.287133, 0.134195, 0.766656, 0.0675931, 0.0816631, 0.318533, 0.685589, 0.591801, 0.251821, 0.168309, 0.260068, 0.839235, 0.915906, 0.850297, 0.66456, 0.685349, 0.266596, 0.785865, 0.316785, 0.294974, 0.611602, 0.94221, 0.765787, 0.734532, 0.454038, 0.522938, 0.96581, 0.349161, 0.194434, 0.234143, 0.794695, 0.762943, 0.0179404, 0.583041, 0.93006, 0.676737, 0.286451, 0.651952, 0.76715, 0.994021, 0.39291, 0.067219, 0.326723, 0.142595, 0.173758, 0.43416, 0.647532, 0.155302, 0.00369675, 0.258427, 0.969955, 0.268434, 0.714482, 0.420572, 0.0461504, 0.73216, 0.495917, 0.274553, 0.3161, 0.734696, 0.394434, 0.35067, 0.268173, 0.546141, 0.981829, 0.787362, 0.0957461, 0.251503, 0.839941, 0.165754, 0.122106, 0.407269, 0.465419, 0.855948, 0.538086, 0.0458484, 0.594903, 0.363308, 0.357769, 0.301892, 0.825676, 0.162865, 0.962774, 0.546735, 0.468579, 0.0618353, 0.642104, 0.979241, 0.670648, 0.69273, 0.253065, 0.16028, 0.700921, 0.95779, 0.415338, 0.901947, 0.29087, 0.714962, 0.519017, 0.984094, 0.951783, 0.900632, 0.981329, 0.894282, 0.529182, 0.378445, 0.56871, 0.0689003, 0.0399039, 0.529544, 0.877385, 0.77251, 0.377698, 0.597938, 0.460408, 0.784951, 0.740924, 0.00140497, 0.698268, 0.0734738, 0.889424, 0.0381724, 0.249256, 0.192611, 0.68401, 0.903465, 0.926387, 0.541491, 0.383938, 0.661396, 0.545428, 0.463807, 0.533043, 0.289835, 0.737829, 0.0166068, 0.47506, 0.0718027, 0.261786, 0.265741, 0.0532142, 0.353357, 0.306935, 0.984029, 0.214661, 0.675077, 0.325474, 0.0362308, 0.417308, 0.965288, 0.985633, 0.316755, 0.0538064, 0.864297, 0.233185, 0.974441, 0.822031, 0.76036, 0.580201, 0.101086, 0.292477, 0.455895, 0.21985, 0.66523, 0.545336, 0.555505, 0.748404, 0.362257, 0.0125992, 0.975642, 0.924374, 0.300842, 0.373651, 0.237157, 0.352575, 0.933896, 0.150759, 0.286007, 0.954847, 0.833998, 0.0443636, 0.889021, 0.644727, 0.172689, 0.73169, 0.710619, 0.558868, 0.483938, 0.280546, 0.70036, 0.987537, 0.338002, 0.749245, 0.765183, 0.601736, 0.463893, 0.435195, 0.268802, 0.765699, 0.235015, 0.610494, 0.115031, 0.701436, 0.804844, 0.996034, 0.977349, 0.982549, 0.56652, 0.974234, 0.0909494, 0.602784, 0.709772, 0.178061, 0.0478865, 0.372929, 0.905772, 0.833844, 0.773746, 0.589488, 0.592565, 0.713169, 0.154453, 0.519199, 0.516459, 0.814036, 0.828599, 0.237314, 0.346486, 0.619685, 0.677282, 0.832089, 0.160742, 0.58959, 0.367144, 0.877192, 0.401572, 0.068229, 0.0901807, 0.62183, 0.447372, 0.100731, 0.0367002, 0.830608, 0.785898, 0.326059, 0.776924, 0.367243, 0.523875, 0.652359, 0.823244, 0.345527, 0.850052, 0.177941, 0.570479, 0.979535, 0.315231, 0.343327, 0.820243, 0.643288, 0.841785, 0.272791, 0.598479, 0.488962, 0.896656, 0.716403, 0.888622, 0.869405, 0.520231, 0.205996, 0.445072, 0.190542, 0.5427, 0.525401, 0.290195, 0.675408, 0.491442, 0.477095, 0.212288, 0.119685, 0.307718, 0.298429, 0.0103334, 0.40656, 0.203992, 0.737477, 0.140582, 0.0138539, 0.696118, 0.270023, 0.710319, 0.624232, 0.956015, 0.73854, 0.214321, 0.899826, 0.155828, 0.0456123, 0.193526, 0.16787, 0.951217, 0.714801, 0.563744, 0.316542, 0.460755, 0.36157, 0.536868, 0.123611, 0.611604, 0.0805006, 0.593761, 0.463433, 0.578698, 0.981508, 0.285077, 0.568689, 0.122225, 0.810219, 0.421639, 0.529817, 0.814263, 0.721685, 0.26282, 0.983978, 0.852334, 0.834045, 0.31579, 0.590571, 0.776926, 0.717894, 0.325214, 0.914004, 0.571561, 0.962669, 0.872205, 0.715484, 0.141387, 0.898256, 0.245442, 0.00690491, 0.264613, 0.563598, 0.84102, 0.508624, 0.181626, 0.173448, 0.735778, 0.305023, 0.415642, 0.248116, 0.114118, 0.511834, 0.69202, 0.414072, 0.973577, 0.376243, 0.699143, 0.656045, 0.221311, 0.112149, 0.327161, 0.441988, 0.628914, 0.463092, 0.721788, 0.614185, 0.177694, 0.742627, 0.431882, 0.0890311, 0.507928, 0.100382, 0.296299, 0.636947, 0.291389, 0.364851, 0.668439, 0.879033, 0.344257, 0.609353, 0.415145, 0.215987, 0.753769, 0.769825, 0.427056, 0.880189, 0.77748, 0.318549, 0.566751, 0.681715, 0.703175, 0.394852, 0.189239, 0.221894, 0.52115, 0.0926394, 0.420422, 0.308635, 0.716731, 0.434997, 0.751326, 0.137572, 0.945996, 0.203424, 0.0646801, 0.636693, 0.239542, 0.240282, 0.418196, 0.0572711, 0.0709934, 0.349739, 0.295569, 0.345298, 0.756442, 0.356749, 0.475677, 0.212771, 0.803339, 0.657724, 0.0995816, 0.863861, 0.34778, 0.419936, 0.361357, 0.238835, 0.620249, 0.316184, 0.182584, 0.494993, 0.631117, 0.393286, 0.833995, 0.98722, 0.835306, 0.0729873, 0.149028, 0.322858, 0.219534, 0.443027, 0.894205, 0.999529, 0.914801, 0.63717, 0.478458, 0.799458, 0.992817, 0.843361, 0.868118, 0.0456673, 0.761873, 0.903886, 0.662665, 0.755355, 0.847703, 0.973704, 0.186082, 0.974756, 0.303198, 0.952711, 0.45242, 0.159349, 0.780025, 0.355679, 0.574793, 0.0102476, 0.752373, 0.246213, 0.00751543, 0.243853, 0.828987, 0.927389, 0.000967662, 0.215161, 0.906265, 0.257344, 0.117601, 0.30718, 0.169319, 0.404844, 0.360279, 0.683556, 0.57955, 0.385579, 0.274966, 0.0336187, 0.266425, 0.751518, 0.21888, 0.177437, 0.98156, 0.0279228, 0.235836, 0.994914, 0.937093, 0.0218233, 0.283259, 0.941252, 0.365088, 0.43569, 0.426335, 0.150931, 0.0249422, 0.659588, 0.469616, 0.841131, 0.321451, 0.0960266, 0.111795, 0.0411948, 0.666625, 0.159542, 0.102567, 0.0382657, 0.802677, 0.813833, 0.775476, 0.982349, 0.420094, 0.549191, 0.343159, 0.0776193, 0.956408, 0.254944, 0.567026, 0.0243003, 0.0329019, 0.210384, 0.27898, 0.727169, 0.592041, 0.314954, 0.839651, 0.707783, 0.559892, 0.784291, 0.977474, 0.486061, 0.453918, 0.5327, 0.646156, 0.606962, 0.426937, 0.444103, 0.260286, 0.337848, 0.430102, 0.598767, 0.784523, 0.242006, 0.472945, 0.0433889, 0.06967, 0.236836, 0.548881, 0.883244, 0.451034, 0.86139, 0.620741, 0.406395, 0.442029, 0.854033, 0.0424505, 0.127542, 0.0737809, 0.739017, 0.749057, 0.767756, 0.624435, 0.0685933, 0.0363357, 0.785819, 0.94934, 0.618505, 0.167897, 0.610146, 0.906818, 0.464915, 0.94703, 0.215139, 0.196322, 0.884601, 0.184787, 0.0147347, 0.695557, 0.882105, 0.938693, 0.69243, 0.277382, 0.470088, 0.0651881, 0.0809175, 0.0210149, 0.27701, 0.208657, 0.712748, 0.835842, 0.539177, 0.794017, 0.979136, 0.463491, 0.46603, 0.272159, 0.0587519, 0.343745, 0.0594342, 0.11452, 0.13373, 0.249941, 0.866703, 0.718719, 0.634638, 0.238383, 0.422729, 0.508818, 0.0343279, 0.211444, 0.726286, 0.364323, 0.673365, 0.90412, 0.143546, 0.0870725, 0.518883, 0.238802, 0.994439, 0.724867, 0.0577984, 0.0638713, 0.918263, 0.00591694, 0.709488, 0.199183, 0.582836, 0.0810226, 0.776759, 0.747521, 0.553668, 0.301735, 0.109321, 0.00419767, 0.930506, 0.661101, 0.577049, 0.272885, 0.114674, 0.299321, 0.101196, 0.884958, 0.523925, 0.330126, 0.303359, 0.404469, 0.0285216, 0.742822, 0.36941, 0.711034, 0.605484, 0.201626, 0.582907, 0.789505, 0.729289, 0.953198, 0.961727, 0.298915, 0.0811433, 0.092407, 0.712373, 0.100408, 0.859939, 0.231836, 0.369344, 0.27811, 0.86206, 0.0686547, 0.871463, 0.00279706, 0.402605, 0.88835, 0.109759, 0.84698, 0.287661, 0.446631, 0.360749, 0.637728, 0.339026, 0.0748655, 0.295142, 0.311845, 0.081733, 0.670569, 0.23095, 0.00812294, 0.00117778, 0.148767, 0.445743, 0.845989, 0.990733, 0.741713, 0.322031, 0.287333, 0.879225, 0.631874, 0.37337, 0.512687, 0.126233, 0.677371, 0.0669676, 0.994743, 0.46719, 0.278884, 0.769474, 0.116861, 0.489663, 0.148669, 0.259306, 0.00307888, 0.319387, 0.329526, 0.903629, 0.00739835, 0.660976, 0.457794, 0.720988, 0.933501, 0.70156, 0.825779, 0.0104466, 0.723503, 0.994294, 0.80497, 0.0837229, 0.0371602, 0.518077, 0.341169, 0.898467, 0.4119, 0.974203, 0.528178, 0.275806, 0.558864, 0.590083, 0.36069, 0.5985, 0.550322, 0.00322284, 0.964272, 0.692101, 0.295236, 0.598529, 0.416191, 0.880071, 0.320906, 0.928028, 0.735064, 0.268047, 0.388567, 0.736775, 0.883189, 0.121597, 0.650398, 0.614589, 0.606027, 0.298794, 0.274833, 0.401772, 0.645119, 0.343854, 0.61125, 0.40705, 0.28375, 0.18865, 0.0334682, 0.715168, 0.883912, 0.902918, 0.349881, 0.950771, 0.915172, 0.604889, 0.191305, 0.207965, 0.674039, 0.472276, 0.792574, 0.0424723, 0.845108, 0.71869, 0.986904, 0.484774, 0.0673107, 0.53096, 0.40897, 0.428653, 0.690819, 0.417753, 0.38642, 0.650099, 0.472372, 0.0180191, 0.322664, 0.73082, 0.632719, 0.460792, 0.794263, 0.0748028, 0.661996, 0.976789, 0.544277, 0.121436, 0.578298, 0.620466, 0.748716, 0.291072, 0.911739, 0.0700601, 0.63404, 0.106162, 0.0312323, 0.891399, 0.572174, 0.443902, 0.462337, 0.945991, 0.39687, 0.375296, 0.325718, 0.795836, 0.19911, 0.585768, 0.390344, 0.381199, 0.364747, 0.0326072, 0.470277, 0.306731, 0.250549, 0.931713, 0.963179, 0.470011, 0.339578, 0.835582, 0.63943, 0.0303026, 0.277513, 0.474861, 0.89772, 0.298515, 0.990435, 0.304965, 0.422295, 0.39287, 0.161606, 0.789675, 0.123178, 0.941126, 0.277487, 0.507002, 0.680308, 0.857293, 0.44714, 0.824616, 0.017484, 0.477551, 0.058476, 0.984209, 0.508838, 0.247145, 0.37202, 0.552131, 0.769, 0.20338, 0.661238, 0.99676, 0.348304, 0.297804, 0.894703, 0.508963, 0.0230383, 0.0835866, 0.0690568, 0.295055, 0.149184, 0.17607, 0.547003, 0.0141352, 0.618915, 0.654163, 0.356946, 0.0135127, 0.814264, 0.486929, 0.753879, 0.356074, 0.969044, 0.0302966, 0.959771, 0.998317, 0.632366, 0.00700747, 0.839543, 0.571449, 0.100513, 0.702013, 0.728682, 0.180028, 0.69867, 0.74286, 0.153003, 0.953248, 0.451781, 0.170989, 0.471099, 0.90267, 0.0117114, 0.721415, 0.745257, 0.677499, 0.849621, 0.117456, 0.486243, 0.297787, 0.333589, 0.538246, 0.659511, 0.983609, 0.0277514, 0.246375, 0.0891166, 0.325694, 0.993423, 0.794188, 0.347804, 0.167151, 0.719761, 0.917062, 0.617931, 0.234647, 0.181319, 0.416131, 0.537011, 0.917685, 0.579161, 0.451282, 0.35259, 0.37269, 0.217509, 0.0594936, 0.100888, 0.890128, 0.471953, 0.36669, 0.032169, 0.480751, 0.374217, 0.627174, 0.163406, 0.584003, 0.595819, 0.231716, 0.99713, 0.658608, 0.877558, 0.982247, 0.93675, 0.402589, 0.323494, 0.736381, 0.969406, 0.424023, 0.19835, 0.723081, 0.46446, 0.315328, 0.482378, 0.040066, 0.0948702, 0.494517, 0.401831, 0.864262, 0.622606, 0.45558, 0.592151, 0.221398, 0.234553, 0.419324, 0.0279188, 0.521746, 0.298299, 0.810423, 0.197255, 0.678615, 0.707791, 0.120415, 0.0367126, 0.401109, 0.708377, 0.316304, 0.652421, 0.0174278, 0.724053, 0.47594, 0.891617, 0.878212, 0.839345, 0.377355, 0.594664, 0.440637, 0.25196, 0.22677, 0.429425, 0.4201, 0.361566, 0.243301, 0.946008, 0.093391, 0.895967, 0.110418, 0.120055, 0.575129, 0.753429, 0.304101, 0.19964, 0.570396, 0.983574, 0.988702, 0.883311, 0.80188, 0.233527, 0.634443, 0.261782, 0.979174, 0.134869, 0.765734, 0.532329, 0.0429464, 0.408526, 0.924187, 0.350389, 0.73086, 0.462601, 0.714236, 0.992274, 0.439305, 0.806862, 0.290555, 0.29422, 0.973654, 0.0324598, 0.550384, 0.852523, 0.494517, 0.358827, 0.659189, 0.0456365, 0.2858, 0.109651, 0.915952, 0.0814468, 0.0690716, 0.574275, 0.993968, 0.853809, 0.345226, 0.187669, 0.328723, 0.567144, 0.448212, 0.817997, 0.105359, 0.584556, 0.190573, 0.0355504, 0.990292, 0.619409, 0.183897, 0.826743, 0.885364, 0.972115, 0.949095, 0.0520858, 0.381193, 0.762117, 0.64437, 0.105142, 0.679353, 0.717334, 0.912706, 0.0658206, 0.693812, 0.0166813, 0.51631, 0.520799, 0.0187077, 0.338061, 0.958623, 0.747098, 0.70519, 0.417181, 0.427818, 0.415098, 0.714567, 0.985927, 0.0210712, 0.461272, 0.354264, 0.265013, 0.519558, 0.116331, 0.535868, 0.352515, 0.151883, 0.197769, 0.0134653, 0.191709, 0.991597, 0.487075, 0.116496, 0.653735, 0.244293, 0.504451, 0.624997, 0.575076, 0.547174, 0.0165865, 0.968418, 0.531341, 0.535861, 0.680424, 0.532573, 0.950493, 0.602586, 0.155387, 0.350366, 0.960529, 0.868087, 0.914379, 0.738191, 0.265445, 0.766265, 0.911954, 0.424649, 0.354205, 0.666029, 0.912105, 0.886417, 0.231325, 0.0355263, 0.950339, 0.507061, 0.271066, 0.831718, 0.27213, 0.346277, 0.823456, 0.792705, 0.997281, 0.497942, 0.478723, 0.0544625, 0.705731, 0.943926, 0.0637384, 0.24178, 0.220038, 0.73526, 0.349917, 0.683923, 0.259271, 0.309605, 0.179657, 0.982663, 0.979263, 0.915554, 0.486691, 0.554517, 0.669794, 0.253162, 0.093543, 0.669497, 0.609819, 0.98844, 0.138513, 0.309594, 0.876058, 0.66811, 0.638072, 0.212735, 0.340255, 0.690781, 0.583122, 0.159234, 0.589236, 0.693139, 0.349297, 0.587949, 0.887529, 0.728229, 0.136892, 0.262204, 0.662484, 0.28472, 0.622015, 0.207545, 0.510029, 0.60721, 0.038113, 0.31417, 0.615402, 0.448743, 0.154446, 0.872305, 0.143924, 0.251979, 0.880669, 0.598887, 0.571896, 0.515851, 0.952398, 0.124642, 0.168786, 0.441385, 0.598686, 0.723883, 0.579736, 0.527448, 0.523717, 0.838053, 0.149124, 0.673669, 0.14229, 0.386783, 0.889584, 0.598184, 0.513162, 0.594427, 0.721933, 0.643449, 0.695772, 0.899081, 0.664523, 0.139265, 0.945223, 0.219066, 0.405808, 0.263777, 0.412627, 0.0857935, 0.889626, 0.926571, 0.87758, 0.198609, 0.856981, 0.869558, 0.305647, 0.812331, 0.692538, 0.451703, 0.951932, 0.495356, 0.864734, 0.902125, 0.569037, 0.520535, 0.216667, 0.255297, 0.591851, 0.543922, 0.611041, 0.786669, 0.088188, 0.985764, 0.842065, 0.58106, 0.620247, 0.605754, 0.975696, 0.954957, 0.608862, 0.655566, 0.674444, 0.698734, 0.156191, 0.145641, 0.672113, 0.18538, 0.0873615, 0.443558, 0.299587, 0.819442, 0.150055, 0.880069, 0.172834, 0.653473, 0.391496, 0.118508, 0.565083, 0.935051, 0.523522, 0.55255, 0.576251, 0.911273, 0.320996, 0.419382, 0.108884, 0.629189, 0.90214, 0.379324, 0.993774, 0.656224, 0.710223, 0.953051, 0.514451, 0.682708, 0.652504, 0.77341, 0.645461, 0.0391939, 0.471361, 0.760638, 0.854566, 0.697731, 0.0321098, 0.452528, 0.512962, 0.481702, 0.59688, 0.167095, 0.706933, 0.655891, 0.0525858, 0.222633, 0.113384, 0.558338, 0.0295255, 0.653678, 0.599873, 0.880331, 0.827267, 0.664861, 0.150684, 0.283206, 0.753851, 0.836932, 0.439752, 0.213542, 0.679184, 0.288703, 0.290065, 0.45681, 0.0810904, 0.998415, 0.900188, 0.0149383, 0.886106, 0.984188, 0.733709, 0.844325, 0.680569, 0.908838, 0.372753, 0.774053, 0.911128, 0.747994, 0.574793, 0.782937, 0.0510561, 0.506438, 0.464558, 0.588053, 0.439998, 0.2672, 0.513888, 0.269463, 0.702044, 0.317576, 0.216274, 0.031019, 0.558371, 0.708373, 0.0640268, 0.315883, 0.475111, 0.649129, 0.563481, 0.526673, 0.0235617, 0.860234, 0.244788, 0.736804, 0.512987, 0.539436, 0.0233963, 0.602965, 0.635571, 0.133214, 0.901046, 0.557304, 0.950225, 0.212929, 0.0560788, 0.565201, 0.433351, 0.870745, 0.437179, 0.958209, 0.215859, 0.509427, 0.320626, 0.619849, 0.491132, 0.0804033, 0.668352, 0.47902, 0.139108, 0.232216, 0.128463, 0.13565, 0.950811, 0.346151, 0.447842, 0.878921, 0.132984, 0.506792, 0.777438, 0.0717582, 0.713886, 0.201366, 0.0557625, 0.578446, 0.896453, 0.987899, 0.719708, 0.615456, 0.0890016, 0.738222, 0.118148, 0.0637626, 0.708409, 0.208099, 0.210579, 0.513177, 0.316742, 0.798657, 0.250799, 0.862258, 0.08806, 0.128748, 0.918765, 0.534242, 0.67558, 0.799917, 0.785529, 0.823307, 0.620837, 0.908448, 0.791941, 0.280674, 0.0792215, 0.61188, 0.939193, 0.874396, 0.248804, 0.165018, 0.935119, 0.252039, 0.433913, 0.230363, 0.645287, 0.0865046, 0.630551, 0.329475, 0.585583, 0.316526, 0.041871, 0.402855, 0.432552, 0.59056, 0.727475, 0.204989, 0.17798, 0.300884, 0.476527, 0.694128, 0.581187, 0.343164, 0.545756, 0.447758, 0.359712, 0.376672, 0.343796, 0.914163, 0.477172, 0.193058, 0.0193624, 0.429995, 0.548162, 0.118708, 0.0308346, 0.556546, 0.259306, 0.49907, 0.0918193, 0.600778, 0.301899, 0.684721, 0.347618, 0.0539441, 0.645642, 0.256792, 0.739836, 0.720385, 0.993516, 0.018852, 0.611061, 0.591492, 0.331202, 0.494316, 0.686017, 0.583879, 0.334357, 0.827355, 0.75122, 0.938576, 0.0462259, 0.480235, 0.941855, 0.703965, 0.825785, 0.511577, 0.547982, 0.65266, 0.195514, 0.762747, 0.754568, 0.672253, 0.67758, 0.918976, 0.0389931, 0.329636, 0.041438, 0.475509, 0.947122, 0.0900319, 0.721723, 0.331855, 0.474696, 0.0360539, 0.752195, 0.838539, 0.12994, 0.846914, 0.654886, 0.59994, 0.16267, 0.205384, 0.168954, 0.984104, 0.90327, 0.863875, 0.242552, 0.895462, 0.305136, 0.288444, 0.610684, 0.755873, 0.63405, 0.33295, 0.364817, 0.758494, 0.595479, 0.0847344, 0.179335, 0.980152, 0.815415, 0.109462, 0.483747, 0.429614, 0.216308, 0.795251, 0.632138, 0.0943184, 0.416516, 0.0922638, 0.142128, 0.786848, 0.942409, 0.81263, 0.720261, 0.152464, 0.356029, 0.854222, 0.931994, 0.1807, 0.916695, 0.199493, 0.0979094, 0.544592, 0.933433, 0.0671128, 0.365203, 0.658035, 0.431006, 0.146817, 0.593439, 0.706674, 0.995432, 0.785801, 0.269154, 0.468617, 0.359843, 0.690938, 0.443121, 0.0479989, 0.801794, 0.61063, 0.266135, 0.163648, 0.308716, 0.533489, 0.8515, 0.836461, 0.159344, 0.691289, 0.957633, 0.029623, 0.156255, 0.974458, 0.296656, 0.292426, 0.342406, 0.409721, 0.618199, 0.772889, 0.264086, 0.277807, 0.100902, 0.16407, 0.245145, 0.739411, 0.261475, 0.0857188, 0.742533, 0.88102, 0.770895, 0.354722, 0.187596, 0.562033, 0.71665, 0.869772, 0.154177, 0.810222, 0.0378963, 0.84708, 0.513031, 0.355424, 0.26396, 0.0493565, 0.0843991, 0.226172, 0.773675, 0.175576, 0.687945, 0.552908, 0.947004, 0.0715233, 0.034247, 0.112635, 0.793135, 0.402288, 0.543981, 0.00907678, 0.508435, 0.922146, 0.306007, 0.74684, 0.241617, 0.539046, 0.83593, 0.125505, 0.989815, 0.253745, 0.100077, 0.246528, 0.188176, 0.0689867, 0.0343654, 0.130735, 0.648559, 0.259024, 0.778773, 0.89595, 0.108323, 0.0792606, 0.947738, 0.92438, 0.285765, 0.0786912, 0.314013, 0.196006, 0.444298, 0.0252209, 0.505793, 0.160503, 0.179412, 0.532002, 0.294424, 0.272184, 0.766327, 0.395353, 0.816067, 0.196421, 0.497539, 0.878986, 0.0961405, 0.820007, 0.249975, 0.195096, 0.17911, 0.534018, 0.202452, 0.833013, 0.407809, 0.409207, 0.0293441, 0.159373, 0.97974, 0.797579, 0.585338, 0.205244, 0.939742, 0.188395, 0.856593, 0.987226, 0.741505, 0.188762, 0.399772, 0.527054, 0.168712, 0.648863, 0.76007, 0.888695, 0.474122, 0.54378, 0.850162, 0.00695785, 0.70291, 0.749108, 0.276164, 0.47393, 0.83693, 0.141871, 0.516607, 0.670846, 0.665674, 0.541732, 0.78388, 0.708681, 0.682724, 0.259671, 0.869733, 0.758025, 0.0200481, 0.794448, 0.681449, 0.925119, 0.734508, 0.950064, 0.574124, 0.019148, 0.249436, 0.619557, 0.500477, 0.0232975, 0.734679, 0.660496, 0.22638, 0.378174, 0.723271, 0.0617378, 0.517085, 0.324872, 0.625275, 0.17625, 0.745463, 0.0504503, 0.470506, 0.781117, 0.213397, 0.817098, 0.25337, 0.896663, 0.160532, 0.658547, 0.46961, 0.914045, 0.471251, 0.93375, 0.343209, 0.302037, 0.307772, 0.604093, 0.745497, 0.562435, 0.0445669, 0.660057, 0.307442, 0.596101, 0.38788, 0.5832, 0.477978, 0.578257, 0.66501, 0.494558, 0.931155, 0.338653, 0.63374, 0.355696, 0.159734, 0.312081, 0.707564, 0.89523, 0.485531, 0.0931612, 0.76101, 0.451376, 0.837182, 0.593376, 0.289006, 0.751113, 0.283227, 0.747966, 0.855681, 0.689777, 0.735593, 0.926367, 0.71427, 0.874113, 0.901599, 0.00239164, 0.0607418, 0.256944, 0.683404, 0.468545, 0.115099, 0.194632, 0.892871, 0.433851, 0.996485, 0.622798, 0.595824, 0.702424, 0.51244, 0.342794, 0.122775, 0.617851, 0.0492106, 0.60586, 0.690809, 0.358781, 0.849572, 0.408017, 0.846986, 0.41019, 0.0670375, 0.106252, 0.758986, 0.510894, 0.73255, 0.0907279, 0.9959, 0.392184, 0.779877, 0.736487, 0.74064, 0.105182, 0.708333, 0.588861, 0.899197, 0.547862, 0.57261, 0.997025, 0.769819, 0.00366789, 0.815132, 0.431208, 0.778708, 0.359116, 0.121065, 0.215232, 0.338811, 0.964539, 0.422779, 0.621301, 0.30488, 0.11085, 0.532405, 0.416646, 0.914285, 0.653672, 0.401255, 0.949251, 0.974299, 0.146397, 0.0662309, 0.476871, 0.0422005, 0.800192, 0.099558, 0.975073, 0.413739, 0.291759, 0.881841, 0.714534, 0.286928, 0.468234, 0.550947, 0.40592, 0.72912, 0.25504, 0.501294, 0.93432, 0.0385952, 0.348364, 0.718752, 0.692493, 0.104062, 0.606665, 0.407537, 0.737115, 0.371631, 0.611629, 0.37884, 0.0858408, 0.934316, 0.908099, 0.565021, 0.0567954, 0.775883, 0.197617, 0.234176, 0.969888, 0.201691, 0.594068, 0.429932, 0.081072, 0.611016, 0.593793, 0.451607, 0.794435, 0.721078, 0.420073, 0.859341, 0.717363, 0.747458, 0.406955, 0.0364475, 0.663231, 0.291466, 0.470375, 0.0047093, 0.532695, 0.982304, 0.0546338, 0.43695, 0.549221, 0.0228999, 0.313636, 0.724177, 0.569925, 0.721449, 0.952554, 0.309281, 0.593856, 0.506905, 0.48428, 0.478447, 0.0746817, 0.252027, 0.946105, 0.553573, 0.615992, 0.478797, 0.613452, 0.678677, 0.551615, 0.798669, 0.355127, 0.186931, 0.139173, 0.242292, 0.441654, 0.330708, 0.962091, 0.267849, 0.915209, 0.788517, 0.692206, 0.847091, 0.384341, 0.228045, 0.815585, 0.975597, 0.491128, 0.959654, 0.319, 0.517584, 0.857105, 0.670844, 0.900283, 0.667352, 0.988426, 0.451664, 0.805026, 0.283802, 0.73142, 0.0960275, 0.071514, 0.0449618, 0.898698, 0.699349, 0.650716, 0.737359, 0.697591, 0.239759, 0.242478, 0.773937, 0.598934, 0.562279, 0.990877, 0.542295, 0.706523, 0.0400013, 0.751255, 0.914907, 0.704425, 0.791048, 0.132692, 0.388448, 0.209881, 0.80192, 0.692122, 0.857476, 0.271173, 0.777848, 0.443368, 0.373062, 0.153535, 0.249409, 0.092942, 0.00638641, 0.777268, 0.7686, 0.478498, 0.887034, 0.378683, 0.894564, 0.367347, 0.0834392, 0.497305, 0.95591, 0.814606, 0.474987, 0.000995387, 0.350213, 0.689531, 0.0988024, 0.968241, 0.860767, 0.394065, 0.599377, 0.227755, 0.146452, 0.582612, 0.516709, 0.520141, 0.634226, 0.108507, 0.498854, 0.424619, 0.780326, 0.80567, 0.629687, 0.127723, 0.0336893, 0.631424, 0.666024, 0.866805, 0.287554, 0.523238, 0.183463, 0.417182, 0.400929, 0.886631, 0.160494, 0.128828, 0.0407184, 0.447326, 0.17435, 0.0237744, 0.987539, 0.722343, 0.676694, 0.0529974, 0.629661, 0.379117, 0.626704, 0.462754, 0.325253, 0.154611, 0.601948, 0.959109, 0.544204, 0.363885, 0.105403, 0.219433, 0.496932, 0.315283, 0.41122, 0.196829, 0.451421, 0.893969, 0.510993, 0.0063349, 0.951801, 0.129267, 0.807773, 0.847764, 0.76398, 0.233071, 0.468183, 0.0976127, 0.0472951, 0.298605, 0.469274, 0.134112, 0.67559, 0.12472, 0.327388, 0.928126, 0.382105, 0.311168, 0.625371, 0.0629552, 0.438605, 0.779704, 0.793958, 0.309734, 0.179684, 0.258045, 0.602858, 0.189726, 0.485729, 0.675793, 0.269612, 0.223249, 0.244902, 0.318763, 0.0615377, 0.390682, 0.477955, 0.0818311, 0.985299, 0.433035, 0.845484, 0.439238, 0.585415, 0.28516, 0.399402, 0.524232, 0.786048, 0.0700261, 0.8799, 0.899489, 0.903616, 0.271186, 0.0209665, 0.88615, 0.585638, 0.601248, 0.630287, 0.736329, 0.0780644, 0.418635, 0.242044, 0.823358, 0.963733, 0.970264, 0.0206052, 0.36637, 0.32973, 0.0733889, 0.0924538, 0.0537379, 0.089988, 0.293227, 0.167674, 0.170407, 0.369805, 0.162376, 0.0768395, 0.401258, 0.0205944, 0.214655, 0.565842, 0.0722265, 0.527809, 0.891475, 0.742952, 0.914229, 0.383209, 0.56968, 0.741784, 0.125203, 0.168684, 0.0958699, 0.359097, 0.299145, 0.419792, 0.0619757, 0.222475, 0.815539, 0.0333095, 0.272609, 0.851514, 0.283708, 0.525649, 0.148378, 0.561638, 0.817438, 0.145619, 0.262795, 0.692642, 0.231738, 0.444971, 0.428266, 0.842754, 0.0453067, 0.412802, 0.259347, 0.574169, 0.535283, 0.922358, 0.446502, 0.834965, 0.321975, 0.502065, 0.723217, 0.494265, 0.155392, 0.126007, 0.296005, 0.679054, 0.806038, 0.535309, 0.0206131, 0.792164, 0.77221, 0.680747, 0.149021, 0.466388, 0.794513, 0.370934, 0.632748, 0.253375, 0.966416, 0.0559242, 0.257231, 0.235184, 0.00847955, 0.405919, 0.663183, 0.947921, 0.560889, 0.524148, 0.736809, 0.108796, 0.435435, 0.706312, 0.0904993, 0.826288, 0.796573, 0.846489, 0.989677, 0.759413, 0.535015, 0.60565, 0.51432, 0.68337, 0.695341, 0.901442, 0.662793, 0.487029, 0.350308, 0.831463, 0.821471, 0.857085, 0.783135, 0.781994, 0.26521, 0.76974, 0.948408, 0.25824, 0.175769, 0.413641, 0.120984, 0.41467, 0.154133, 0.447632, 0.262196, 0.233872, 0.027248, 0.456559, 0.564264, 0.195967, 0.87957, 0.712771, 0.570181, 0.683408, 0.344589, 0.608551, 0.928497, 0.978937, 0.665815, 0.191938, 0.913725, 0.229831, 0.276609, 0.996722, 0.0614733, 0.756541, 0.150352, 0.81332, 0.364726, 0.698872, 0.0488913, 0.488767, 0.658977, 0.177127, 0.449505, 0.889814, 0.945673, 0.479735, 0.669513, 0.212768, 0.377593, 0.81207, 0.118393, 0.147627, 0.102521, 0.878881, 0.412474, 0.603358, 0.526986, 0.386922, 0.209253, 0.987137, 0.718463, 0.717605, 0.806746, 0.380589, 0.0898503, 0.340875, 0.0599232, 0.816005, 0.284385, 0.268579, 0.15688, 0.660675, 0.249349, 0.735313, 0.979476, 0.696837, 0.984901, 0.307522, 0.708236, 0.0849013, 0.297076, 0.359044, 0.0566235, 0.732831, 0.24032, 0.440776, 0.903334, 0.349843, 0.551364, 0.198349, 0.965711, 0.74446, 0.65457, 0.858117, 0.72294, 0.273375, 0.246046, 0.489922, 0.68976, 0.369694, 0.72915, 0.65725, 0.30668, 0.396834, 0.269671, 0.897012, 0.969904, 0.322165, 0.28877, 0.403919, 0.745858, 0.0508711, 0.275434, 0.968689, 0.508743, 0.895674, 0.415087, 0.888818, 0.935279, 0.393171, 0.691673, 0.634202, 0.406149, 0.437993, 0.444085, 0.382038, 0.36729, 0.37336, 0.41162, 0.0275015, 0.338587, 0.524497, 0.0507328, 0.647831, 0.627665, 0.76997, 0.949813, 0.688768, 0.87357, 0.386311, 0.609754, 0.474682, 0.776409, 0.7274, 0.429997, 0.326422, 0.991154, 0.563406, 0.797949, 0.806496, 0.472436, 0.861442, 0.241235, 0.115021, 0.841425, 0.067718, 0.855504, 0.869459, 0.818138, 0.47471, 0.305221, 0.985908, 0.741069, 0.0359858, 0.548461, 0.851616, 0.00124529, 0.831263, 0.524583, 0.700077, 0.486439, 0.690473, 0.139002, 0.25776, 0.724213, 0.784629, 0.361253, 0.559542, 0.51449, 0.149615, 0.258914, 0.275199, 0.385751, 0.220086, 0.0419866, 0.608323, 0.733945, 0.795928, 0.12021, 0.151217, 0.0478011, 0.861415, 0.555441, 0.0348796, 0.0723636, 0.827777, 0.332871, 0.887277, 0.877651, 0.0785353, 0.197532, 0.322672, 0.000916138, 0.940004, 0.753226, 0.804484, 0.975536, 0.192233, 0.384034, 0.881944, 0.292808, 0.368571, 0.18698, 0.992044, 0.354451, 0.527305, 0.348339, 0.773856, 0.23059, 0.0443612, 0.558384, 0.000874037, 0.274346, 0.280431, 0.764785, 0.380712, 0.254584, 0.902307, 0.97328, 0.573603, 0.95614, 0.360903, 0.934183, 0.339851, 0.789651, 0.882639, 0.0225178, 0.462162, 0.960021, 0.932408, 0.041856, 0.999388, 0.857339, 0.537505, 0.44124, 0.101818, 0.438442, 0.570012, 0.847642, 0.425616, 0.606355, 0.494681, 0.907646, 0.858777, 0.40926, 0.926747, 0.809049, 0.338416, 0.239173, 0.467034, 0.209364, 0.232802, 0.973714, 0.760907, 0.496914, 0.319526, 0.22954, 0.338775, 0.593522, 0.908391, 0.00225433, 0.613819, 0.263566, 0.90629, 0.0143624, 0.762406, 0.515316, 0.706617, 0.342984, 0.52917, 0.400909, 0.801304, 0.214512, 0.201463, 0.697807, 0.534033, 0.267793, 0.830113, 0.602329, 0.660705, 0.770421, 0.340517, 0.251196, 0.290911, 0.524877, 0.159722, 0.670449, 0.995454, 0.511623, 0.298313, 0.944021, 0.0948249, 0.73058, 0.838334, 0.643656, 0.783853, 0.583298, 0.455548, 0.230939, 0.457534, 0.00278924, 0.6042, 0.360588, 0.922623, 0.644665, 0.103884, 0.96859, 0.548638, 0.0705228, 0.5299, 0.499172, 0.201098, 0.378225, 0.24914, 0.198072, 0.822918, 0.622897, 0.568341, 0.98089, 0.620874, 0.963039, 0.895195, 0.292738, 0.0731504, 0.445395, 0.572362, 0.373684, 0.484523, 0.441638, 0.132963, 0.569192, 0.0756962, 0.572306, 0.884098, 0.556036, 0.0122078, 0.848378, 0.880924, 0.186021, 0.181906, 0.149379, 0.907829, 0.0792597, 0.65573, 0.371839, 0.658314, 0.973877, 0.626929, 0.853348, 0.538424, 0.119907, 0.104601, 0.447656, 0.338296, 0.416, 0.00649671, 0.567067, 0.586761, 0.457382, 0.0565516, 0.0336257, 0.882286, 0.879863, 0.123068, 5.65988e-05, 0.217614, 0.170666, 0.0279886, 0.994332, 0.406638, 0.55916, 0.955373, 0.498295, 0.462271, 0.2479, 0.233727, 0.507336, 0.255721, 0.723603, 0.911872, 0.226847, 0.749499, 0.086894, 0.506925, 0.822442, 0.0512878, 0.111878, 0.21249, 0.0178278, 0.123097, 0.912115, 0.915155, 0.506104, 0.527865, 0.922091, 0.39081, 0.644601, 0.908082, 0.562287, 0.0780806, 0.735341, 0.744356, 0.845752, 0.103222, 0.407326, 0.515565, 0.0541111, 0.890123, 0.00640169, 0.533819, 0.49394, 0.958385, 0.0709909, 0.805157, 0.218626, 0.395703, 0.344168, 0.722025, 0.446, 0.712189, 0.921133, 0.0254779, 0.646931, 0.654103, 0.365839, 0.776464, 0.524957, 0.455485, 0.811014, 0.992469, 0.814505, 0.134269, 0.780882, 0.106967, 0.426112, 0.0496123, 0.881183, 0.765958, 0.506653, 0.943266, 0.278787, 0.40261, 0.66606, 0.139293, 0.0228334, 0.425202, 0.167311, 0.943914, 0.779232, 0.327429, 0.693353, 0.668736, 0.286584, 0.262277, 0.478177, 0.259639, 0.0183194, 0.305498, 0.561589, 0.251985, 0.340317, 0.874261, 0.637282, 0.514902, 0.273802, 0.8099, 0.441, 0.535816, 0.474427, 0.388549, 0.793907, 0.996526, 0.439355, 0.466316, 0.830795, 0.671577, 0.807265, 0.401645, 0.541625, 0.00881933, 0.740642, 0.231504, 0.292738, 0.939252, 0.59696, 0.74875, 0.913195, 0.326506, 0.076236, 0.574883, 0.133972, 0.890266, 0.984688, 0.140902, 0.128486, 0.117951, 0.431119, 0.426284, 0.415743, 0.922487, 0.745546, 0.840077, 0.49333, 0.663276, 0.773438, 0.171853, 0.975787, 0.791077, 0.633345, 0.773184, 0.744493, 0.539753, 0.902543, 0.414323, 0.608237, 0.222546, 0.348496, 0.099356, 0.278749, 0.251611, 0.520344, 0.112646, 0.200462, 0.744055, 0.168325, 0.635503, 0.671938, 0.229579, 0.555053, 0.623382, 0.468171, 0.850039, 0.701759, 0.640127, 0.129329, 0.570423, 0.912828, 0.884657, 0.00423518, 0.955386, 0.742899, 0.0653215, 0.37956, 0.960933, 0.418469, 0.509939, 0.993672, 0.0861226, 0.650177, 0.192774, 0.42669, 0.598282, 0.879146, 0.531295, 0.529316, 0.306005, 0.21197, 0.311037, 0.00723488, 0.0537805, 0.987387, 0.948944, 0.326299, 0.292817, 0.833299, 0.233572, 0.450509, 0.0697152, 0.268766, 0.962614, 0.0761093, 0.268078, 0.0977896, 0.0284287, 0.356428, 0.864834, 0.310785, 0.362303, 0.164077, 0.756474, 0.42537, 0.0927695, 0.0604679, 0.823764, 0.323885, 0.761985, 0.864902, 0.11623, 0.397535, 0.718254, 0.637596, 0.490933, 0.269322, 0.660851, 0.652692, 0.61003, 0.589594, 0.706991, 0.261704, 0.333875, 0.898269, 0.483735, 0.660443, 0.305574, 0.676744, 0.0208565, 0.863915, 0.0416533, 0.880769, 0.641593, 0.826679, 0.536049, 0.650721, 0.926316, 0.452664, 0.13573, 0.0310741, 0.781587, 0.637631, 0.589902, 0.0853312, 0.0971944, 0.829053, 0.467658, 0.613862, 0.98756, 0.58061, 0.268108, 0.511828, 0.774297, 0.423103, 0.182906, 0.257511, 0.170173, 0.785892, 0.763226, 0.53282, 0.423058, 0.447917, 0.88953, 0.832336, 0.742542, 0.319188, 0.194562, 0.694791, 0.762418, 0.49335, 0.0660767, 0.0274218, 0.151684, 0.84565, 0.221872, 0.31347, 0.967216, 0.737638, 0.804929, 0.637495, 0.213278, 0.908625, 0.576544, 0.771004, 0.987418, 0.0409891, 0.467138, 0.617153, 0.736946, 0.867113, 0.951811, 0.154648, 0.740801, 0.270877, 0.853842, 0.00386076, 0.316807, 0.857982, 0.226176, 0.318465, 0.700062, 0.554091, 0.315492, 0.243599, 0.165242, 0.0287095, 0.471605, 0.269506, 0.0481783, 0.267451, 0.816572, 0.315644, 0.807287, 0.744161, 0.670262, 0.993573, 0.169422, 0.233041, 0.0409642, 0.815066, 0.169667, 0.170602, 0.0370063, 0.401435, 0.660011, 0.665482, 0.803983, 0.199319, 0.252062, 0.352841, 0.479694, 0.227764, 0.451998, 0.790808, 0.0903161, 0.909742, 0.535406, 0.251591, 0.633483, 0.263571, 0.0240886, 0.996613, 0.276152, 0.302253, 0.985316, 0.240864, 0.154651, 0.965778, 0.773741, 0.235246, 0.371968, 0.249547, 0.0566258, 0.471484, 0.877786, 0.972836, 0.639844, 0.0631808, 0.969798, 0.524733, 0.321179, 0.310998, 0.256906, 0.614546, 0.647912, 0.232712, 0.420284, 0.655213, 0.936621, 0.851222, 0.451812, 0.400019, 0.0840677, 0.290769, 0.243043, 0.902345, 0.432773, 0.184514, 0.420329, 0.845841, 0.599513, 0.526012, 0.951629, 0.165279, 0.150241, 0.117574, 0.636763, 0.684123, 0.715864, 0.587858, 0.025171, 0.354233, 0.297314, 0.8812, 0.844317, 0.819331, 0.880256, 0.74756, 0.980348, 0.629663, 0.268299, 0.465652, 0.324411, 0.455475, 0.225096, 0.790657, 0.484869, 0.368002, 0.95576, 0.335719, 0.423297, 0.0927763, 0.886378, 0.814155, 0.477265, 0.561966, 0.335924, 0.670047, 0.630704, 0.64197, 0.656276, 0.231895, 0.337536, 0.269058, 0.369385, 0.12747, 0.399863, 0.852, 0.636525, 0.2598, 0.307778, 0.493378, 0.0167589, 0.484461, 0.967248, 0.677949, 0.0127936, 0.543639, 0.885348, 0.978461, 0.845458, 0.789074, 0.957692, 0.310436, 0.191076, 0.999502, 0.334978, 0.170537, 0.817536, 0.618543, 0.555896, 0.0646441, 0.263872, 0.850947, 0.0523041, 0.536365, 0.408294, 0.562754, 0.271821, 0.765559, 0.794759, 0.10703, 0.00708059, 0.918917, 0.306319, 0.341069, 0.880398, 0.763809, 0.197381, 0.480464, 0.530267, 0.385899, 0.723375, 0.277873, 0.466349, 0.979985, 0.389348, 0.781419, 0.0531951, 0.469381, 0.459414, 0.799205, 0.0248302, 0.044803, 0.469655, 0.0129992, 0.61234, 0.894183, 0.783739, 0.904596, 0.866173, 0.351728, 0.228115, 0.0738683, 0.975912, 0.654697, 0.0676095, 0.245336, 0.296884, 0.431285, 0.894518, 0.295938, 0.621898, 0.486347, 0.382868, 0.261768, 0.454453, 0.694242, 0.229356, 0.414457, 0.756957, 0.375901, 0.986627, 0.662565, 0.979746, 0.459894, 0.478174, 0.0255572, 0.92557, 0.386836, 0.747861, 0.778869, 0.868357, 0.143423, 0.645793, 0.753509, 0.630005, 0.790593, 0.0570299, 0.433423, 0.130058, 0.11803, 0.0206789, 0.875954, 0.377795, 0.992081, 0.268633, 0.352508, 0.339212, 0.647901, 0.310948, 0.200319, 0.00643757, 0.941193, 0.49454, 0.03072, 0.420265, 0.975198, 0.773332, 0.869828, 0.673919, 0.780288, 0.527735, 0.478272, 0.0950875, 0.774917, 0.782396, 0.107367, 0.0598637, 0.00169379, 0.467261, 0.324674, 0.478194, 0.674764, 0.303398, 0.294699, 0.822782, 0.982428, 0.564287, 0.266489, 0.597584, 0.701892, 0.923458, 0.215085, 0.172613, 0.0817669, 0.543924, 0.847161, 0.845239, 0.321743, 0.868944, 0.232951, 0.0944018, 0.364834, 0.518375, 0.0074743, 0.798166, 0.119923, 0.728442, 0.0592487, 0.0585591, 0.645181, 0.250932, 0.285384, 0.701103, 0.998062, 0.504218, 0.284519, 0.0731458, 0.87343, 0.936796, 0.797734, 0.18008, 0.574698, 0.99614, 0.297293, 0.576629, 0.485442, 0.158327, 0.118332, 0.361367, 0.443002, 0.17552, 0.383444, 0.445807, 0.970911, 0.000348134, 0.00648888, 0.38191, 0.150335, 0.863533, 0.414863, 0.297503, 0.0815298, 0.858219, 0.236893, 0.613212, 0.618372, 0.97567, 0.114038, 0.624537, 0.0851054, 0.62879, 0.865654, 0.737639, 0.559916, 0.0729778, 0.183217, 0.977971, 0.0806749, 0.561561, 0.778839, 0.992282, 0.0630433, 0.481675, 0.205386, 0.187635, 0.0660333, 0.890362, 0.0724167, 0.993708, 0.723064, 0.820016, 0.0462525, 0.0191416, 0.0581466, 0.398842, 0.575788, 0.472682, 0.549188, 0.678496, 0.980795, 0.511205, 0.136541, 0.0410053, 0.800786, 0.155533, 0.0848418, 0.314689, 0.735425, 0.905364, 0.296371, 0.543801, 0.960839, 0.385233, 0.905602, 0.631929, 0.287987, 0.92218, 0.0226908, 0.426345, 0.93523, 0.765834, 0.692233, 0.987488, 0.576867, 0.316875, 0.844857, 0.521633, 0.270659, 0.835086, 0.0609623, 0.910122, 0.536354, 0.0832229, 0.414926, 0.724235, 0.884801, 0.341323, 0.628771, 0.40228, 0.349041, 0.307317, 0.981899, 0.713284, 0.246379, 0.505779, 0.495778, 0.505811, 0.611465, 0.907194, 0.629933, 0.12562, 0.405745, 0.352262, 0.524062, 0.267971, 0.466107, 0.721615, 0.807413, 0.348904, 0.167614, 0.578447, 0.935748, 0.0450163, 0.507162, 0.951889, 0.966317, 0.0877336, 0.431193, 0.876919, 0.950456, 0.900372, 0.158262, 0.33375, 0.0467862, 0.47814, 0.703455, 0.745038, 0.0469431, 0.791596, 0.368633, 0.340442, 0.355314, 0.334377, 0.175813, 0.456324, 0.700898, 0.915227, 0.440953, 0.0391988, 0.766786, 0.178846, 0.68907, 0.189534, 0.562301, 0.410683, 0.272582, 0.677843, 0.282324, 0.309716, 0.834704, 0.50158, 0.823312, 0.206172, 0.902249, 0.472739, 0.647539, 0.715614, 0.475139, 0.638383, 0.341666, 0.627013, 0.315206, 0.0682273, 0.0606975, 0.882019, 0.701052, 0.246667, 0.104804, 0.0455308, 0.285911, 0.220354, 0.56322, 0.393112, 0.578118, 0.744302, 0.689929, 0.518555, 0.870048, 0.890522, 0.889417, 0.325999, 0.494022, 0.233695, 0.952726, 0.0385373, 0.407067, 0.0347279, 0.19312, 0.753918, 0.515723, 0.797076, 0.566544, 0.695808, 0.968721, 0.113709, 0.0948931, 0.409733, 0.479719, 0.280147, 0.616622, 0.769387, 0.238637, 0.470991, 0.108955, 0.382733, 0.148666, 0.860224, 0.63555, 0.573585, 0.259686, 0.89585, 0.684758, 0.50128, 0.842045, 0.127411, 0.00251116, 0.353822, 0.168303, 0.235039, 0.507299, 0.389384, 0.466725, 0.807075, 0.0934202, 0.32084, 0.0965382, 0.000680077, 0.479738, 0.555253, 0.297796, 0.927839, 0.747806, 0.915874, 0.591448, 0.306583, 0.647932, 0.223656, 0.461806, 0.367503, 0.315465, 0.278264, 0.739667, 0.253012, 0.363668, 0.65443, 0.64289, 0.622744, 0.241148, 0.818162, 0.183644, 0.45706, 0.243083, 0.028495, 0.789955, 0.743086, 0.0981896, 0.41838, 0.209638, 0.962447, 0.262913, 0.313897, 0.27735, 0.0684438, 0.84612, 0.950009, 0.67067, 0.111097, 0.0312597, 0.543855, 0.675642, 0.875872, 0.106393, 0.105223, 0.754994, 0.630024, 0.206925, 0.165979, 0.546183, 0.747854, 0.425707, 0.115175, 0.162343, 0.0306342, 0.929389, 0.338631, 0.358558, 0.62614, 0.440899, 0.711497, 0.214624, 0.551539, 0.119272, 0.954884, 0.626478, 0.3612, 0.584047, 0.769484, 0.359127, 0.160751, 0.734744, 0.677129, 0.839935, 0.316505, 0.292216, 0.776418, 0.598551, 0.487589, 0.0491978, 0.310085, 0.403593, 0.88392, 0.649444, 0.164407, 0.0451848, 0.628468, 0.947493, 0.0589229, 0.937404, 0.0709359, 0.338652, 0.428097, 0.547914, 0.144509, 0.972245, 0.933511, 0.75426, 0.406064, 0.169455, 0.356325, 0.286159, 0.279474, 0.778376, 0.842366, 0.847085, 0.920419, 0.73594, 0.624887, 0.427434, 0.38396, 0.683614, 0.25583, 0.119329, 0.302285, 0.510922, 0.173838, 0.20548, 0.916401, 0.294471, 0.869802, 0.307878, 0.909924, 0.954921, 0.367555, 0.839034, 0.279102, 0.0433055, 0.968763, 0.2089, 0.676989, 0.581373, 0.624941, 0.560735, 0.744382, 0.0730278, 0.453458, 0.0570532, 0.268415, 0.307563, 0.641737, 0.106627, 0.0561247, 0.66462, 0.175538, 0.915098, 0.502369, 0.888687, 0.334271, 0.746737, 0.954022, 0.0798754, 0.00328626, 0.928035, 0.463675, 0.178931, 0.0495312, 0.444595, 0.320406, 0.891997, 0.127164, 0.707062, 0.768988, 0.163014, 0.242369, 0.525906, 0.74129, 0.698391, 0.54179, 0.911614, 0.260523, 0.787305, 0.133587, 0.518382, 0.87535, 0.865569, 0.0253879, 0.0277266, 0.211298, 0.722448, 0.691866, 0.060618, 0.129667, 0.49899, 0.415236, 0.0318108, 0.512726, 0.0938632, 0.0161872, 0.319841, 0.716943, 0.642935, 0.214237, 0.290147, 0.795971, 0.373505, 0.028079, 0.144618, 0.704154, 0.12628, 0.461725, 0.482941, 0.0128279, 0.851411, 0.440899, 0.326729, 0.468245, 0.145899, 0.326815, 0.876144, 0.920086, 0.809058, 0.232627, 0.803387, 0.442804, 0.939601, 0.945181, 0.55998, 0.528004, 0.649126, 0.699537, 0.332909, 0.256248, 0.839875, 0.726439, 0.426984, 0.616964, 0.871088, 0.237828, 0.890082, 0.896479, 0.892103, 0.421173, 0.740644, 0.281891, 0.0524454, 0.447202, 0.510898, 0.0801364, 0.570049, 0.600878, 0.0826094, 0.94344, 0.445363, 0.446237, 0.197255, 0.45926, 0.885508, 0.812071, 0.424999, 0.339396, 0.61542, 0.801851, 0.580263, 0.0226934, 0.313388, 0.578829, 0.374605, 0.784718, 0.578807, 0.211513, 0.928041, 0.965184, 0.284469, 0.112641, 0.832183, 0.838636, 0.00177267, 0.765646, 0.25224, 0.55226, 0.539089, 0.664783, 0.981227, 0.760706, 0.0514444, 0.0934847, 0.0465348, 0.558286, 0.907634, 0.382844, 0.574478, 0.0398199, 0.388391, 0.228121, 0.713064, 0.882326, 0.61628, 0.455327, 0.122208, 0.926622, 0.765222, 0.929361, 0.855264, 0.078441, 0.31893, 0.621053, 0.453362, 0.153213, 0.46565, 0.227835, 0.291579, 0.194077, 0.93233, 0.989632, 0.919703, 0.832392, 0.792795, 0.550827, 0.886083, 0.846107, 0.35329, 0.0121923, 0.451933, 0.663498, 0.997557, 0.468175, 0.916588, 0.309966, 0.645232, 0.087717, 0.39257, 0.630981, 0.519081, 0.582607, 0.91818, 0.61363, 0.186096, 0.532463, 0.731188, 0.909257, 0.805161, 0.0685559, 0.780836, 0.509562, 0.778068, 0.572497, 0.835978, 0.24032, 0.353555, 0.859011, 0.604704, 0.623506, 0.679616, 0.536171, 0.830041, 0.610155, 0.827619, 0.0802732, 0.192093, 0.254594, 0.0635951, 0.557926, 0.157881, 0.994781, 0.390153, 0.339989, 0.953151, 0.624543, 0.934007, 0.262501, 0.524387, 0.699062, 0.253728, 0.37125, 0.727105, 0.767199, 0.882345, 0.955355, 0.362745, 0.350257, 0.246785, 0.593549, 0.24824, 0.891887, 0.893343, 0.815335, 0.628436, 0.0511543, 0.0537873, 0.783568, 0.567237, 0.463775, 0.0825298, 0.305697, 0.816257, 0.818698, 0.472745, 0.265784, 0.606642, 0.504678, 0.0895341, 0.157104, 0.752828, 0.0362217, 0.551417, 0.848644, 0.263882, 0.960596, 0.773697, 0.124055, 0.0506841, 0.792589, 0.215727, 0.111101, 0.415109, 0.145027, 0.889637, 0.497904, 0.361074, 0.755449, 0.442404, 0.482078, 0.802638, 0.671628, 0.0367703, 0.565128, 0.594261, 0.490843, 0.0935567, 0.701285, 0.388274, 0.116071, 0.481517, 0.955268, 0.933249, 0.952566, 0.160955, 0.40389, 0.893398, 0.875578, 0.768152, 0.999904, 0.537894, 0.414038, 0.260777, 0.887919, 0.452562, 0.83896, 0.999787, 0.312943, 0.604865, 0.391353, 0.24266, 0.631627, 0.347626, 0.480514, 0.475706, 0.39494, 0.0940579, 0.0860045, 0.6199, 0.400146, 0.584296, 0.38691, 0.411376, 0.282076, 0.570497, 0.993794, 0.956034, 0.286617, 0.566959, 0.235066, 0.49901, 0.698238, 0.750195, 0.171546, 0.434758, 0.383917, 0.863634, 0.912861, 0.555333, 0.0149524, 0.486947, 0.0901688, 0.175708, 0.755796, 0.28411, 0.874395, 0.46586, 0.461822, 0.982737, 0.884454, 0.341579, 0.938815, 0.21413, 0.0163947, 0.0823033, 0.0262485, 0.00922418, 0.88355, 0.489256, 0.426046, 0.0142034, 0.686425, 0.108414, 0.960633, 0.172541, 0.288127, 0.65564, 0.544026, 0.844684, 0.782802, 0.685936, 0.899165, 0.38209, 0.262186, 0.958105, 0.827502, 0.174824, 0.406955, 0.857473, 0.373162, 0.0842634, 0.320952, 0.454719, 0.757906, 0.595194, 0.367628, 0.800223, 0.781486, 0.600837, 0.470053, 0.242958, 0.2793, 0.403083, 0.941732, 0.81935, 0.373362, 0.378287, 0.338918, 0.365397, 0.781183, 0.0988392, 0.877452, 0.957223, 0.78754, 0.660712, 0.368955, 0.94748, 0.026127, 0.434759, 0.401086, 0.610533, 0.951442, 0.197315, 0.209682, 0.859322, 0.00838967, 0.439858, 0.750969, 0.145801, 0.836012, 0.466286, 0.147904, 0.326764, 0.607017, 0.177294, 0.672328, 0.652166, 0.592166, 0.833207, 0.183496, 0.733261, 0.397153, 0.618445, 0.000366746, 0.957096, 0.533765, 0.940296, 0.207919, 0.365332, 0.647942, 0.759587, 0.292352, 0.813574, 0.76171, 0.218685, 0.093226, 0.740719, 0.587936, 0.577583, 0.736006, 0.969154, 0.952238, 0.133613, 0.758389, 0.696985, 0.582668, 0.875353, 0.76639, 0.559415, 0.605933, 0.0389316, 0.373498, 0.935082, 0.0809153, 0.711166, 0.600307, 0.295324, 0.74056, 0.58386, 0.664908, 0.0252907, 0.0884693, 0.430309, 0.708101, 0.293711, 0.240815, 0.188063, 0.188553, 0.0168749, 0.741539, 0.869527, 0.130696, 0.81571, 0.41825, 0.428448, 0.460647, 0.649009, 0.486002, 0.233451, 0.93064, 0.971417, 0.601498, 0.455405, 0.801179, 0.434047, 0.672158, 0.519798, 0.815082, 0.441363, 0.303562, 0.250718, 0.208747, 0.387846, 0.175246, 0.418738, 0.801075, 0.92771, 0.0658916, 0.868843, 0.837644, 0.186486, 0.381567, 0.885882, 0.340495, 0.208673, 0.130966, 0.513921, 0.458802, 0.10599, 0.0299906, 0.0404579, 0.865976, 0.757386, 0.334387, 0.379078, 0.163035, 0.241718, 0.110571, 0.360631, 0.736642, 0.777862, 0.67759, 0.937055, 0.234795, 0.150221, 0.913065, 0.592081, 0.0576773, 0.790348, 0.46455, 0.907578, 0.456741, 0.450005, 0.470878, 0.0554506, 0.431759, 2.01181e-05, 0.564749, 0.997117, 0.994438, 0.682621, 0.447522, 0.757602, 0.695597, 0.726673, 0.54065, 0.625737, 0.406653, 0.784196, 0.441998, 0.259794, 0.532077, 0.693751, 0.404864, 0.15539, 0.274393, 0.0451235, 0.346709, 0.715367, 0.551049, 0.974224, 0.252859, 0.722708, 0.238935, 0.504082, 0.841338, 0.505651, 0.096663, 0.167197, 0.70518, 0.419434, 0.0954384, 0.834063, 0.924045, 0.250123, 0.838178, 0.515398, 0.394269, 0.973769, 0.544868, 0.220531, 0.348264, 0.471231, 0.910399, 0.371692, 0.239035, 0.283137, 0.0198341, 0.633999, 0.017749, 0.0224845, 0.847823, 0.0703067, 0.269342, 0.816295, 0.139635, 0.216818, 0.738104, 0.925015, 0.582532, 0.454695, 0.514741, 0.151348, 0.247303, 0.71083, 0.616979, 0.380606, 0.558457, 0.952899, 0.837502, 0.434478, 0.107341, 0.00448188, 0.639574, 0.276825, 0.629249, 0.450228, 0.626403, 0.29188, 0.969095, 0.836786, 0.445677, 0.29231, 0.407464, 0.610164, 0.169872, 0.966892, 0.984232, 0.383148, 0.397382, 0.54027, 0.641753, 0.0268946, 0.953218, 0.912571, 0.647995, 0.254991, 0.953846, 0.662719, 0.892033, 0.486095, 0.555143, 0.0331859, 0.213047, 0.669907, 0.28687, 0.382696, 0.0998005, 0.509422, 0.183319, 0.347713, 0.241957, 0.64566, 0.331424, 0.134321, 0.73305, 0.12066, 0.0805394, 0.920498, 0.397307, 0.20363, 0.777729, 0.947299, 0.177939, 0.880234, 0.571719, 0.300867, 0.941472, 0.0483151, 0.80732, 0.400853, 0.431369, 0.645346, 0.416123, 0.568809, 0.267143, 0.880516, 0.78577, 0.785678, 0.0851067, 0.00255534, 0.157757, 0.662201, 0.915377, 0.723373, 0.352179, 0.835847, 0.512865, 0.762769, 0.0225603, 0.438353, 0.681039, 0.505969, 0.195328, 0.2453, 0.28594, 0.367198, 0.845016, 0.872612, 0.582698, 0.998599, 0.0558282, 0.723992, 0.984305, 0.598939, 0.677151, 0.595001, 0.211244, 0.397399, 0.220043, 0.403597, 0.164711, 0.49826, 0.229316, 0.549678, 0.640938, 0.824668, 0.0610166, 0.968765, 0.809941, 0.127634, 0.179147, 0.613843, 0.782951, 0.43243, 0.852956, 0.588353, 0.31927, 0.930154, 0.776681, 0.371916, 0.0454076, 0.517232, 0.417526, 0.464681, 0.334236, 0.977484, 0.56186, 0.446042, 0.863181, 0.764683, 0.722893, 0.19873, 0.452124, 0.423359, 0.250521, 0.0408669, 0.714988, 0.454818, 0.722377, 0.442493, 0.743869, 0.750445, 0.00896603, 0.999637, 0.859306, 0.622052, 0.00984311, 0.915339, 0.839071, 0.622021, 0.178664, 0.655102, 0.43843, 0.00882884, 0.874868, 0.0839007, 0.0698086, 0.770121, 0.0338071, 0.106887, 0.0125524, 0.0927738, 0.284345, 0.368431, 0.520371, 0.804542, 0.859059, 0.698052, 0.900442, 0.635178, 0.752663, 0.819541, 0.265296, 0.761921, 0.898906, 0.347021, 0.27233, 0.978199, 0.971507, 0.731056, 0.139336, 0.902561, 0.313997, 0.130853, 0.724506, 0.406152, 0.00781752, 0.217576, 0.477282, 0.696602, 0.631149, 0.200357, 0.552317, 0.485827, 0.687642, 0.400412, 0.0935699, 0.622655, 0.320318, 0.821327, 0.0553166, 0.191568, 0.105451, 0.923379, 0.865514, 0.457129, 0.329753, 0.373028, 0.0105954, 0.344259, 0.895799, 0.513171, 0.803857, 0.845156, 0.147428, 0.123813, 0.662467, 0.552214, 0.858177, 0.740461, 0.649366, 0.420809, 0.244729, 0.956317, 0.726337, 0.546206, 0.468602, 0.761364, 0.0537975, 0.375349, 0.821161, 0.0733319, 0.517111, 0.535727, 0.38521, 0.787484, 0.796368, 0.647965, 0.105453, 0.254369, 0.33338, 0.647677, 0.0612522, 0.741927, 0.349987, 0.179408, 0.6048, 0.153559, 0.354355, 0.363531, 0.37749, 0.469923, 0.381003, 0.372826, 0.366789, 0.672025, 0.523813, 0.116648, 0.612683, 0.397663, 0.134278, 0.0901552, 0.748652, 0.916673, 0.273518, 0.47875, 0.777335, 0.967673, 0.650504, 0.19722, 0.417324, 0.463681, 0.631837, 0.261126, 0.705794, 0.512245, 0.308212, 0.876678, 0.122392, 0.628208, 0.0640057, 0.279337, 0.175907, 0.968879, 0.588489, 0.329921, 0.931216, 0.221119, 0.966651, 0.584124, 0.358656, 0.329617, 0.141585, 0.727031, 0.123368, 0.961685, 0.80185, 0.790325, 0.319885, 0.830949, 0.875482, 0.774923, 0.382228, 0.901703, 0.530953, 0.866276, 0.410903, 0.132908, 0.5954, 0.163553, 0.220279, 0.35274, 0.965362, 0.27438, 0.613329, 0.890423, 0.601048, 0.764333, 0.90703, 0.608397, 0.832686, 0.274695, 0.634447, 0.359276, 0.904883, 0.926244, 0.00519944, 0.784488, 0.216816, 0.154995, 0.637794, 0.0546875, 0.137245, 0.243194, 0.861401, 0.800531, 0.12871, 0.622076, 0.608614, 0.2866, 0.746462, 0.774047, 0.315987, 0.524368, 0.159866, 0.368889, 0.0969622, 0.163438, 0.725631, 0.807078, 0.925556, 0.434968, 0.533191, 0.918657, 0.964278, 0.828131, 0.371973, 0.654585, 0.493809, 0.284604, 0.136881, 0.891064, 0.570485, 0.200445, 0.646669, 0.868014, 0.08682, 0.768373, 0.781637, 0.466424, 0.257744, 0.459711, 0.311552, 0.127242, 0.865274, 0.384451, 0.335898, 0.273185, 0.481254, 0.963494, 0.93857, 0.886942, 0.614986, 0.460825, 0.255676, 0.894295, 0.374841, 0.907363, 0.00195316, 0.275656, 0.709047, 0.526044, 0.719791, 0.0798555, 0.357383, 0.606549, 0.45923, 0.706147, 0.509634, 0.113529, 0.765745, 0.22959, 0.682917, 0.701335, 0.304154, 0.876052, 0.858176, 0.929161, 0.204912, 0.26973, 0.013806, 0.781078, 0.387176, 0.502847, 0.290296, 0.836649, 0.705063, 0.946561, 0.376247, 0.556752, 0.703012, 0.314943, 0.111907, 0.933476, 0.354623, 0.949927, 0.342079, 0.696365, 0.262628, 0.099443, 0.47574, 0.265505, 0.0510212, 0.0982934, 0.0999286, 0.449118, 0.883339, 0.967085, 0.955657, 0.376495, 0.869, 0.47896, 0.23083, 0.814084, 0.904404, 0.696811, 0.451695, 0.611052, 0.0439806, 0.122199, 0.0251573, 0.243319, 0.254371, 0.636349, 0.119272, 0.0607113, 0.248429, 0.806315, 0.894438, 0.546285, 0.863981, 0.44801, 0.0201322, 0.290848, 0.958003, 0.313714, 0.928208, 0.979005, 0.242459, 0.562001, 0.877748, 0.449589, 0.277236, 0.365184, 0.926922, 0.736471, 0.263271, 0.966279, 0.124347, 0.137125, 0.390781, 0.589505, 0.19321, 0.183549, 0.714863, 0.150356, 0.0459436, 0.152114, 0.824315, 0.677068, 0.113147, 0.218698, 0.282096, 0.401187, 0.0399562, 0.423185, 0.724604, 0.938288, 0.233997, 0.635381, 0.25946, 0.0593494, 0.193472, 0.897208, 0.311766, 0.719876, 0.405388, 0.20024, 0.435234, 0.792184, 0.897751, 0.941537, 0.455808, 0.175604, 0.990314, 0.399315, 0.339168, 0.601757, 0.538986, 0.122057, 0.637897, 0.947413, 0.912787, 0.51636, 0.761283, 0.49637, 0.424128, 0.555598, 0.170605, 0.323017, 0.666083, 0.114823, 0.790652, 0.341084, 0.737507, 0.745447, 0.0290631, 0.269597, 0.170961, 0.563971, 0.122285, 0.814161, 0.732418, 0.0886575, 0.238797, 0.203901, 0.274167, 0.0434857, 0.746683, 0.855452, 0.45143, 0.318749, 0.164572, 0.691934, 0.0904443, 0.582871, 0.741812, 0.303127, 0.295444, 0.0657427, 0.53616, 0.330586, 0.946181, 0.205412, 0.0506996, 0.658036, 0.321776, 0.785606, 0.675734, 0.898579, 0.389835, 0.344278, 0.499876, 0.87039, 0.486042, 0.128081, 0.983264, 0.0132197, 0.997429, 0.0517228, 0.817453, 0.90482, 0.482922, 0.562401, 0.79105, 0.0639654, 0.0137915, 0.8553, 0.990751, 0.06176, 0.793787, 0.488596, 0.320254, 0.172518, 0.70721, 0.241924, 0.0797175, 0.224385, 0.774535, 0.45973, 0.196836, 0.978669, 0.200328, 0.174035, 0.284143, 0.690624, 0.812423, 0.883215, 0.710838, 0.205723, 0.313969, 0.414089, 0.923223, 0.0447278, 0.303542, 0.530226, 0.396591, 0.946516, 0.580364, 0.0480212, 0.950906, 0.321324, 0.0490739, 0.19271, 0.186925, 0.190458, 0.217935, 0.279079, 0.701741, 0.822059, 0.665425, 0.879266, 0.550173, 0.799985, 0.772671, 0.227032, 0.241123, 0.173069, 0.628549, 0.487161, 0.387292, 0.77329, 0.838473, 0.505906, 0.0632759, 0.214405, 0.137743, 0.720014, 0.806922, 0.796701, 0.52869, 0.423776, 0.140956, 0.4748, 0.412897, 0.347936, 0.0529069, 0.989484, 0.0128336, 0.564307, 0.0052823, 0.824553, 0.596908, 0.521481, 0.121875, 0.336453, 0.318245, 0.497799, 0.0122771, 0.214458, 0.0498897, 0.129829, 0.0144892, 0.647091, 0.77252, 0.117643, 0.782651, 0.426921, 0.860579, 0.915341, 0.259429, 0.470326, 0.0109178, 0.0174838, 0.847082, 0.788038, 0.0903463, 0.897862, 0.279333, 0.100074, 0.314668, 0.440822, 0.165319, 0.470265, 0.233672, 0.584429, 0.969813, 0.906782, 0.873632, 0.122227, 0.731775, 0.409216, 0.757996, 0.244736, 0.201908, 0.291042, 0.0708636, 0.742604, 0.294348, 0.892837, 0.505908, 0.119993, 0.337955, 0.16956, 0.514808, 0.385131, 0.844181, 0.569758, 0.636196, 0.290218, 0.262795, 0.59575, 0.378289, 0.18943, 0.530439, 0.877016, 0.504115, 0.744198, 0.931448, 0.729929, 0.81529, 0.151229, 0.998913, 0.683131, 0.533626, 0.98593, 0.789981, 0.0445395, 0.591837, 0.640817, 0.852281, 0.252853, 0.827442, 0.907725, 0.102757, 0.154082, 0.426429, 0.181066, 0.121804, 0.301885, 0.52507, 0.364617, 0.736206, 0.27141, 0.767552, 0.624946, 0.169726, 0.397797, 0.598205, 0.404912, 0.240592, 0.910604, 0.638112, 0.939611, 0.858809, 0.0343435, 0.783867, 0.477592, 0.609369, 0.493529, 0.080321, 0.0363176, 0.218583, 0.637044, 0.823448, 0.547286, 0.380453, 0.822243, 0.234039, 0.707453, 0.172201, 0.416438, 0.114823, 0.936148, 0.594684, 0.113408, 0.552317, 0.570245, 0.888815, 0.0233248, 0.039044, 0.655267, 0.137629, 0.776311, 0.980918, 0.655818, 0.501625, 0.0939003, 0.251409, 0.829194, 0.23166, 0.779821, 0.726178, 0.480105, 0.407399, 0.600394, 0.942736, 0.743737, 0.0551799, 0.962286, 0.0436438, 0.331146, 0.416607, 0.65115, 0.759709, 0.418019, 0.294796, 0.349766, 0.798081, 0.337856, 0.4491, 0.882495, 0.695294, 0.595625, 0.752904, 0.990689, 0.232347, 0.34245, 0.136882, 0.306638, 0.0838308, 0.415441, 0.827331, 0.857429, 0.275774, 0.417677, 0.954315, 0.833945, 0.929689, 0.759664, 0.00218092, 0.0914797, 0.684926, 0.437745, 0.639114, 0.378457, 0.561354, 0.26847, 0.521602, 0.692652, 0.563274, 0.561891, 0.0305475, 0.89507, 0.399713, 0.0675574, 0.104589, 0.814862, 0.812869, 0.245546, 0.735254, 0.158187, 0.613588, 0.135882, 0.637868, 0.968308, 0.496096, 0.539877, 0.238747, 0.781662, 0.0322914, 0.560642, 0.892621, 0.415119, 0.776161, 0.673384, 0.0767484, 0.676924, 0.302974, 0.383223, 0.543464, 0.962444, 0.0686625, 0.575793, 0.46524, 0.258082, 0.226922, 0.678342, 0.616491, 0.222386, 0.0482167, 0.954957, 0.731126, 0.750062, 0.869887, 0.125806, 0.14666, 0.973101, 0.56538, 0.477578, 0.581036, 0.905772, 0.146275, 0.145673, 0.6169, 0.774936, 0.324981, 0.755871, 0.548047, 0.908285, 0.989573, 0.384762, 0.171821, 0.193951, 0.633262, 0.543976, 0.67202, 0.978979, 0.504997, 0.722625, 0.282309, 0.481227, 0.540674, 0.128014, 0.038791, 0.199907, 0.193449, 0.239077, 0.575561, 0.186136, 0.210012, 0.731633, 0.274126, 0.725303, 0.613663, 0.00822674, 0.963265, 0.139653, 0.689404, 0.54929, 0.870192, 0.347242, 0.374234, 0.826712, 0.801345, 0.941538, 0.113853, 0.968834, 0.543264, 0.24821, 0.918565, 0.76508, 0.723339, 0.3206, 0.377777, 0.31583, 0.843659, 0.0774698, 0.504317, 0.205468, 0.780123, 0.0157715, 0.930318, 0.871669, 0.144924, 0.953773, 0.017101, 0.148008, 0.263657, 0.363006, 0.338895, 0.606832, 0.206961, 0.150894, 0.234902, 0.638176, 0.348061, 0.326417, 0.134896, 0.747952, 0.993909, 0.842481, 0.0685452, 0.762195, 0.511804, 0.300961, 0.513149, 0.360493, 0.889725, 0.324002, 0.310859, 0.982326, 0.0466702, 0.593704, 0.473467, 0.924189, 0.880248, 0.495106, 0.927142, 0.377748, 0.706322, 0.804293, 0.0720817, 0.540124, 0.0865108, 0.224245, 0.850507, 0.660529, 0.179725, 0.49826, 0.369576, 0.255032, 0.540571, 0.695954, 0.302765, 0.369215, 0.214657, 0.946945, 0.125324, 0.775449, 0.921719, 0.397591, 0.287938, 0.371397, 0.917927, 0.551756, 0.121148, 0.0306337, 0.654094, 0.518487, 0.658671, 0.121926, 0.0492066, 0.148802, 0.490335, 0.134516, 0.382621, 0.23552, 0.358663, 0.466818, 0.635814, 0.207731, 0.376355, 0.54403, 0.873778, 0.71168, 0.26768, 0.0789914, 0.828967, 0.973269, 0.358554, 0.74177, 0.572445, 0.917102, 0.326703, 0.796317, 0.352011, 0.703486, 0.594356, 0.856993, 0.84417, 0.557007, 0.744967, 0.78415, 0.423279, 0.000984909, 0.647776, 0.740817, 0.914564, 0.461189, 0.77823, 0.136048, 0.475483, 0.5123, 0.554478, 0.962615, 0.982408, 0.0706779, 0.11223, 0.583584, 0.273575, 0.225014, 0.144659, 0.361406, 0.491196, 0.478521, 0.081707, 0.0301563, 0.444406, 0.358035, 0.719774, 0.863879, 0.123985, 0.79374, 0.632618, 0.113078, 0.612772, 0.62851, 0.622898, 0.502184, 0.727925, 0.778663, 0.819516, 0.746609, 0.98635, 0.698937, 0.1097, 0.318558, 0.779733, 0.890602, 0.917645, 0.611887, 0.45478, 0.576885, 0.443948, 0.667736, 0.0438628, 0.135404, 0.969112, 0.292939, 0.235428, 0.779689, 0.0654341, 0.113275, 0.0231172, 0.824732, 0.241197, 0.611541, 0.561196, 0.483876, 0.00924277, 0.72585, 0.0944964, 0.256522, 0.407835, 0.355858, 0.144608, 0.412801, 0.300103, 0.707576, 0.340839, 0.00384349, 0.20214, 0.815478, 0.0877837, 0.175005, 0.407143, 0.737904, 0.615384, 0.264751, 0.0491118, 0.105714, 0.310845, 0.0893253, 0.454752, 0.738792, 0.767073, 0.0513467, 0.55891, 0.415492, 0.352081, 0.668057, 0.173346, 0.591706, 0.396506, 0.701327, 0.762703, 0.198313, 0.367465, 0.233534, 0.936811, 0.32238, 0.921656, 0.257443, 0.966172, 0.877198, 0.457192, 0.0243984, 0.526178, 0.554127, 0.884106, 0.894318, 0.356031, 0.671404, 0.696101, 0.320449, 0.568093, 0.617295, 0.164693, 0.350625, 0.383226, 0.0108135, 0.248181, 0.583379, 0.377071, 0.692598, 0.506324, 0.277783, 0.441357, 0.911937, 0.592934, 0.454812, 0.902189, 0.76761, 0.200745, 0.124683, 0.258897, 0.0483087, 0.438118, 0.588599, 0.605622, 0.134144, 0.368316, 0.832876, 0.125596, 0.660043, 0.789469, 0.686678, 0.343531, 0.107777, 0.919302, 0.0344328, 0.976639, 0.652386, 0.645979, 0.644524, 0.165309, 0.806666, 0.164919, 0.897345, 0.761959, 0.4564, 0.63335, 0.10737, 0.831791, 0.629525, 0.742249, 0.730717, 0.477335, 0.351989, 0.213288, 0.888119, 0.957805, 0.525586, 0.557116, 0.768024, 0.00384484, 0.280657, 0.890381, 0.0863566, 0.506043, 0.230096, 0.124454, 0.40966, 0.72538, 0.416017, 0.857093, 0.139743, 0.647419, 0.684714, 0.117144, 0.130084, 0.216183, 0.814623, 0.00856023, 0.346146, 0.105752, 0.757444, 0.379316, 0.235754, 0.180546, 0.315897, 0.266971, 0.30603, 0.464522, 0.537007, 0.0650385, 0.664919, 0.558193, 0.870485, 0.814455, 0.10381, 0.618141, 0.209624, 0.0183247, 0.315218, 0.510714, 0.911416, 0.666801, 0.560948, 0.257764, 0.141677, 0.772748, 0.378741, 0.0294, 0.943343, 0.968386, 0.630751, 0.469737, 0.687592, 0.589797, 0.603339, 0.127696, 0.516254, 0.129981, 0.203356, 0.548175, 0.190491, 0.29231, 0.327737, 0.534063, 0.357824, 0.506308, 0.566082, 0.410452, 0.893481, 0.841993, 0.23095, 0.625385, 0.882701, 0.817725, 0.865872, 0.399528, 0.0597314, 0.588846, 0.599071, 0.203499, 0.424063, 0.404593, 0.871065, 0.918456, 0.252408, 0.659317, 0.928511, 0.643643, 0.529205, 0.176178, 0.68171, 0.145582, 0.614251, 0.0378445, 0.195719, 0.340559, 0.38689, 0.463108, 0.469367, 0.180748, 0.259177, 0.279443, 0.85095, 0.983037, 0.00437248, 0.567231, 0.163868, 0.814096, 0.918738, 0.361555, 0.298008, 0.809231, 0.751634, 0.499868, 0.437117, 0.0794018, 0.671718, 0.980115, 0.474996, 0.663312, 0.42995, 0.255926, 0.373481, 0.433671, 0.934134, 0.552791, 0.778007, 0.496655, 0.815432, 0.743138, 0.647624, 0.62516, 0.422604, 0.344029, 0.987558, 0.749323, 0.934349, 0.705713, 0.721724, 0.139055, 0.190689, 0.0513739, 0.8871, 0.0976423, 0.0129031, 0.903139, 0.259316, 0.639287, 0.00283311, 0.676172, 0.0815618, 0.686434, 0.782848, 0.892786, 0.711916, 0.157514, 0.237505, 0.991095, 0.746823, 0.724759, 0.738336, 0.516411, 0.200567, 0.569235, 0.674083, 0.359822, 0.225426, 0.852373, 0.661127, 0.323018, 0.227818, 0.0834445, 0.796956, 0.914307, 0.061523, 0.333107, 0.825767, 0.682765, 0.559472, 0.934191, 0.482074, 0.437265, 0.887334, 0.745784, 0.167249, 0.491538, 0.221516, 0.737791, 0.741839, 0.909253, 0.056869, 0.232827, 0.5376, 0.173416, 0.941524, 0.993636, 0.700648, 0.0409675, 0.394662, 0.0675375, 0.298768, 0.953611, 0.232216, 0.969508, 0.0117371, 0.479528, 0.371552, 0.177228, 0.729354, 0.00619975, 0.940133, 0.974401, 0.385155, 0.00112071, 0.600007, 0.171806, 0.890442, 0.555444, 0.513182, 0.587277, 0.42137, 0.556605, 0.968129, 0.277854, 0.18552, 0.512399, 0.721237, 0.970731, 0.842254, 0.254123, 0.915771, 0.599749, 0.540368, 0.0909383, 0.222427, 0.00798128, 0.275542, 0.852573, 0.172977, 0.665911, 0.305373, 0.890036, 0.1658, 0.050611, 0.199428, 0.93813, 0.315431, 0.400092, 0.58941, 0.217099, 0.683975, 0.446791, 0.44217, 0.375851, 0.81193, 0.929381, 0.61943, 0.283778, 0.292124, 0.520079, 0.612808, 0.503171, 0.0519591, 0.781982, 0.0112063, 0.426082, 0.731963, 0.457992, 0.456833, 0.243453, 0.989789, 0.706306, 0.329734, 0.990201, 0.900563, 0.0176693, 0.610208, 0.328353, 0.515748, 0.487477, 0.727222, 0.244993, 0.109078, 0.9493, 0.164468, 0.623749, 0.550423, 0.837159, 0.614272, 0.98444, 0.202044, 0.974959, 0.213957, 0.0106738, 0.17913, 0.0573865, 0.898056, 0.400389, 0.228625, 0.100919, 0.571154, 0.557923, 0.588339, 0.713439, 0.954356, 0.612362, 0.31241, 0.108665, 0.483927, 0.134253, 0.0373658, 0.200006, 0.0884437, 0.875433, 0.0193375, 0.925027, 0.948458, 0.0449223, 0.470591, 0.468375, 0.766846, 0.986304, 0.0576001, 0.0450738, 0.8804, 0.856861, 0.376115, 0.832475, 0.277332, 0.462522, 0.396504, 0.129171, 0.0882361, 0.565923, 0.872913, 0.095828, 0.473219, 0.335848, 0.858329, 0.535445, 0.726678, 0.873368, 0.823086, 0.652207, 0.980642, 0.569979, 0.924064, 0.287433, 0.409364, 0.442375, 0.111637, 0.151033, 0.516042, 0.124917, 0.0960117, 0.810186, 0.999034, 0.660116, 0.811946, 0.982929, 0.798113, 0.319457, 0.109237, 0.997054, 0.103119, 0.888453, 0.66031, 0.963913, 0.336695, 0.406176, 0.771933, 0.364443, 0.339033, 0.229561, 0.883676, 0.562639, 0.0927408, 0.733701, 0.674673, 0.240753, 0.423767, 0.0745625, 0.424083, 0.0612876, 0.0606274, 0.187531, 0.486008, 0.682745, 0.509585, 0.431587, 0.553392, 0.188209, 0.958802, 0.60708, 0.864467, 0.28405, 0.313113, 0.257204, 0.401804, 0.48159, 0.943549, 0.341534, 0.978812, 0.345999, 0.853777, 0.505901, 0.336448, 0.348729, 0.0783527, 0.585875, 0.360183, 0.0983696, 0.203078, 0.638107, 0.636812, 0.622545, 0.301667, 0.778487, 0.46337, 0.955994, 0.365957, 0.519406, 0.0875206, 0.105982, 0.459095, 0.850821, 0.351398, 0.231456, 0.786247, 0.807717, 0.10981, 0.293254, 0.278256, 0.224314, 0.248935, 0.0625637, 0.25175, 0.859811, 0.475158, 0.648331, 0.186225, 0.728881, 0.473795, 0.0749256, 0.618376, 0.344138, 0.710286, 0.033892, 0.601635, 0.477196, 0.0579297, 0.414087, 0.999735, 0.467269, 0.57317, 0.487919, 0.688687, 0.99023, 0.952865, 0.342888, 0.162112, 0.779636, 0.606866, 0.879109, 0.102022, 0.136183, 0.202889, 0.880669, 0.1599, 0.630564, 0.32756, 0.673156, 0.217449, 0.983035, 0.73512, 0.181484, 0.645252, 0.104394, 0.409139, 0.184051, 0.53203, 0.523733, 0.512527, 0.237084, 0.833945, 0.564631, 0.76993, 0.465717, 0.213226, 0.784222, 0.791822, 0.38873, 0.529419, 0.939541, 0.72214, 0.152588, 0.88955, 0.294117, 0.306257, 0.622878, 0.116946, 0.93452, 0.783403, 0.970702, 0.145569, 0.877434, 0.18653, 0.878954, 0.425119, 0.145386, 0.723857, 0.82325, 0.271551, 0.897703, 0.688842, 0.47597, 0.344448, 0.676271, 0.239445, 0.176618, 0.599697, 0.869274, 0.752876, 0.248275, 0.459451, 0.303438, 0.943959, 0.0233897, 0.689079, 0.131307, 0.276802, 0.252533, 0.216595, 0.260804, 0.615085, 0.165933, 0.932283, 0.0189436, 0.908477, 0.197883, 0.169859, 0.936382, 0.862876, 0.0519827, 0.946605, 0.860519, 0.837886, 0.807913, 0.259528, 0.75109, 0.319037, 0.945713, 0.614323, 0.0918232, 0.770758, 0.82073, 0.290179, 0.416657, 0.741327, 0.978016, 0.28442, 0.739228, 0.546107, 0.621335, 0.920388, 0.829804, 0.177259, 0.742716, 0.447198, 0.0543332, 0.571825, 0.307415, 0.00593027, 0.25037, 0.459257, 0.0344686, 0.856461, 0.415075, 0.192247, 0.882257, 0.782471, 0.078356, 0.478558, 0.983452, 0.665169, 0.907616, 0.575121, 0.952039, 0.583118, 0.317617, 0.508727, 0.09096, 0.863859, 0.509512, 0.0303329, 0.180813, 0.779974, 0.727272, 0.346672, 0.650674, 0.327377, 0.0122835, 0.43268, 0.0605496, 0.614263, 0.880262, 0.412614, 0.131595, 0.391251, 0.363229, 0.114194, 0.252032, 0.129373, 0.984332, 0.771638, 0.92286, 0.552292, 0.326887, 0.600196, 0.149717, 0.185568, 0.854102, 0.48371, 0.242598, 0.0710319, 0.41665, 0.579909, 0.0500394, 0.380013, 0.940424, 0.805382, 0.56579, 0.241516, 0.612358, 0.0355655, 0.426345, 0.13804, 0.575098, 0.526564, 0.45933, 0.0160067, 0.681902, 0.581776, 0.751469, 0.201621, 0.807885, 0.0914784, 0.559148, 0.446081, 0.477345, 0.606354, 0.7551, 0.22431, 0.450545, 0.80186, 0.67739, 0.603162, 0.282654, 0.40956, 0.088474, 0.179383, 0.0108372, 0.988068, 0.0397988, 0.859434, 0.948113, 0.586718, 0.806934, 0.545269, 0.546839, 0.990151, 0.319847, 0.767399, 0.0515536, 0.481835, 0.821892, 0.0410275, 0.48091, 0.758984, 0.0180316, 0.537854, 0.444937, 0.126727, 0.235564, 0.523965, 0.345516, 0.274046, 0.917508, 0.760029, 0.524916, 0.0662717, 0.0170895, 0.358614, 0.683861, 0.943013, 0.156716, 0.844151, 0.663587, 0.866454, 0.0168145, 0.826592, 0.82983, 0.207432, 0.547981, 0.407784, 0.94554, 0.184781, 0.721642, 0.454674, 0.00892544, 0.270488, 0.590793, 0.77615, 0.577345, 0.841434, 0.0208134, 0.316179, 0.654635, 0.130885, 0.856055, 0.531487, 0.837832, 0.892117, 0.303436, 0.892567, 0.257625, 0.345777, 0.439492, 0.339525, 0.680547, 0.924257, 0.556761, 0.360527, 0.0373072, 0.691515, 0.849526, 0.401483, 0.248336, 0.500587, 0.507617, 0.68883, 0.777038, 0.579384, 0.314063, 0.45054, 0.692744, 0.922073, 0.363166, 0.379201, 0.898792, 0.874305, 0.489274, 0.495039, 0.168172, 0.713977, 0.285693, 0.636691, 0.461037, 0.958287, 0.386788, 0.606482, 0.943823, 0.393971, 0.806899, 0.969267, 0.265483, 0.00688445, 0.126971, 0.889896, 0.163123, 0.180998, 0.659284, 0.277068, 0.738994, 0.261025, 0.620284, 0.981023, 0.878212, 0.584194, 0.433478, 0.172546, 0.239582, 0.900551, 0.731722, 0.72525, 0.0364797, 0.380943, 0.0560819, 0.636758, 0.379458, 0.496245, 0.201124, 0.525029, 0.097513, 0.713223, 0.777213, 0.321315, 0.588017, 0.137905, 0.0308744, 0.407071, 0.417575, 0.691682, 0.449768, 0.210941, 0.168387, 0.547847, 0.0190578, 0.358626, 0.217944, 0.266789, 0.384814, 0.178275, 0.319187, 0.176099, 0.648581, 0.132654, 0.59147, 0.441681, 0.193602, 0.64019, 0.224163, 0.521791, 0.229483, 0.400564, 0.859051, 0.990699, 0.756986, 0.661818, 0.273199, 0.481812, 0.379571, 0.62626, 0.75063, 0.267153, 0.0848633, 0.57962, 0.153337, 0.505616, 0.816552, 0.72844, 0.873409, 0.0295758, 0.382443, 0.235175, 0.720607, 0.255155, 0.742532, 0.87929, 0.132569, 0.0199717, 0.658568, 0.425309, 0.163051, 0.57509, 0.512819, 0.882217, 0.110785, 0.121593, 0.499359, 0.501363, 0.0110796, 0.350897, 0.792638, 0.507977, 0.0209075, 0.276143, 0.508, 0.00724977, 0.103344, 0.209396, 0.0231938, 0.515563, 0.107003, 0.277002, 0.527344, 0.592236, 0.117529, 0.308302, 0.1221, 0.588145, 0.955425, 0.296622, 0.570674, 0.23232, 0.461135, 0.61222, 0.582919, 0.644999, 0.643474, 0.903756, 0.920346, 0.745006, 0.116656, 0.11924, 0.766236, 0.656377, 0.0764579, 0.108666, 0.240429, 0.0280635, 0.441572, 0.190907, 0.429092, 0.0417142, 0.390164, 0.856827, 0.039781, 0.569936, 0.573069, 0.430331, 0.791502, 0.660886, 0.659253, 0.477999, 0.255375, 0.842358, 0.0236607, 0.200562, 0.731403, 0.761028, 0.173075, 0.0320001, 0.596479, 0.00482521, 0.721248, 0.260674, 0.0856477, 0.505605, 0.684763, 0.274704, 0.314994, 0.0977564, 0.0548509, 0.428415, 0.755969, 0.202471, 0.54318, 0.762787, 0.239097, 0.502653, 0.0991959, 0.866603, 0.710436, 0.624354, 0.231825, 0.895833, 0.707724, 0.704006, 0.588331, 0.512995, 0.490282, 0.102971, 0.644206, 0.278309, 0.619492, 0.10739, 0.031569, 0.229596, 0.459631, 0.6857, 0.819448, 0.0975513, 0.148909, 0.526895, 0.499892, 0.753641, 0.627101, 0.794425, 0.665003, 0.219606, 0.597999, 0.538522, 0.062112, 0.383639, 0.236073, 0.59815, 0.540973, 0.908751, 0.7413, 0.2057, 0.70532, 0.245086, 0.530658, 0.134414, 0.195691, 0.276764, 0.944645, 0.239167, 0.146722, 0.97706, 0.396387, 0.193859, 0.735596, 0.458095, 0.590589, 0.220982, 0.713774, 0.577566, 0.864676, 0.699872, 0.154451, 0.929021, 0.951376, 0.506626, 0.164632, 0.595988, 0.0653519, 0.108536, 0.254216, 0.831912, 0.57108, 0.840132, 0.293258, 0.300906, 0.213836, 0.687519, 0.125429, 0.0154527, 0.0319853, 0.942009, 0.146573, 0.804681, 0.247562, 0.040849, 0.0813666, 0.297249, 0.176232, 0.295414, 0.551832, 0.649087, 0.780787, 0.247937, 0.597096, 0.0236449, 0.879439, 0.889063, 0.397344, 0.91092, 0.603655, 0.521426, 0.195081, 0.26693, 0.27918, 0.198366, 0.254383, 0.215563, 0.767551, 0.295591, 0.674947, 0.0420507, 0.423799, 0.825114, 0.950827, 0.622371, 0.712773, 0.245555, 0.576014, 0.414811, 0.288255, 0.119534, 0.62588, 0.700754, 0.749591, 0.956372, 0.648471, 0.592476, 0.838473, 0.842345, 0.4325, 0.47928, 0.455091, 0.926852, 0.783866, 0.377821, 0.963088, 0.0190461, 0.769527, 0.0576378, 0.902081, 0.409815, 0.564548, 0.136893, 0.809001, 0.432426, 0.975666, 0.973344, 0.611916, 0.963548, 0.340273, 0.873961, 0.36428, 0.740172, 0.467133, 0.524688, 0.934967, 0.370723, 0.361181, 0.356284, 0.000200186, 0.796003, 0.831472, 0.285829, 0.511629, 0.275481, 0.788226, 0.983344, 0.772781, 0.914294, 0.8378, 0.892115, 0.372784, 0.299782, 0.321983, 0.574391, 0.270408, 0.565983, 0.754949, 0.658373, 0.304438, 0.918812, 0.31163, 0.900469, 0.172526, 0.85195, 0.303503, 0.317889, 0.352573, 0.651841, 0.745108, 0.227289, 0.983212, 0.742816, 0.371624, 0.120159, 0.0976097, 0.930425, 0.458614, 0.845312, 0.714786, 0.199871, 0.113015, 0.26686, 0.431549, 0.0113646, 0.640045, 0.355533, 0.529051, 0.179699, 0.0987579, 0.999858, 0.0752601, 0.850005, 0.674929, 0.567078, 0.35619, 0.345429, 0.242207, 0.487314, 0.516147, 0.693737, 0.0315665, 0.546881, 0.989227, 0.437677, 0.398134, 0.189141, 0.236878, 0.563278, 0.221663, 0.177436, 0.881522, 0.0182119, 0.382613, 0.59822, 0.666022, 0.429921, 0.738024, 0.0451276, 0.39517, 0.959361, 0.302131, 0.0510049, 0.0609704, 0.240774, 0.303435, 0.89799, 0.0217171, 0.463106, 0.37171, 0.636875, 0.436676, 0.601809, 0.733721, 0.861151, 0.64748, 0.437599, 0.935772, 0.0365896, 0.6243, 0.0631108, 0.36212, 0.220988, 0.47579, 0.688549, 0.991528, 0.344518, 0.197676, 0.473154, 0.174777, 0.682596, 0.560983, 0.655032, 0.302366, 0.274753, 0.245009, 0.404786, 0.99377, 0.426709, 0.845011, 0.970397, 0.931478, 0.444876, 0.0903494, 0.696205, 0.17419, 0.293931, 0.87711, 0.315322, 0.506828, 0.35034, 0.758811, 0.854096, 0.973935, 0.738458, 0.390207, 0.0589456, 0.966723, 0.0260099, 0.965222, 0.427509, 0.90527, 0.344511, 0.689796, 0.456483, 0.223026, 0.1372, 0.0515334, 0.640919, 0.351446, 0.477286, 0.865731, 0.978304, 0.736284, 0.312658, 0.16982, 0.777655, 0.136753, 0.993783, 0.283717, 0.206131, 0.549611, 0.445301, 0.542021, 0.238171, 0.842911, 0.362444, 0.75791, 0.836408, 0.292169, 0.885162, 0.93835, 0.144114, 0.0772436, 0.326158, 0.844657, 0.244554, 0.122619, 0.20847, 0.649231, 0.342979, 0.893815, 0.113022, 0.60074, 0.325661, 0.0136643, 0.525173, 0.132422, 0.187629, 0.332155, 0.0305176, 0.13807, 0.276103, 0.949142, 0.161537, 0.0181558, 0.935399, 0.229618, 0.683962, 0.213664, 0.426524, 0.583467, 0.65502, 0.470636, 0.859739, 0.316601, 0.667715, 0.138434, 0.359214, 0.0113959, 0.807722, 0.605412, 0.766416, 0.317377, 0.479528, 0.880543, 0.741589, 0.244249, 0.132463, 0.699367, 0.717938, 0.786699, 0.600406, 0.984877, 0.735642, 0.897786, 0.849399, 0.474007, 0.72506, 0.660477, 0.440065, 0.598694, 0.513666, 0.639673, 0.49764, 0.652242, 0.166539, 0.518156, 0.397441, 0.0180683, 0.368824, 0.0028388, 0.49821, 0.560417, 0.595594, 0.387247, 0.78124, 0.178909, 0.400339, 0.0589393, 0.536067, 0.886363, 0.844398, 0.123283, 0.212658, 0.201029, 0.734139, 0.167901, 0.0869218, 0.27254, 0.608849, 0.219371, 0.681524, 0.579072, 0.725842, 0.227678, 0.0397728, 0.348688, 0.483874, 0.441994, 0.83314, 0.741778, 0.862656, 0.289275, 0.549896, 0.690008, 0.40435, 0.332849, 0.057495, 0.190851, 0.0614963, 0.372094, 0.494503, 0.223638, 0.121088, 0.694385, 0.164, 0.978939, 0.0265477, 0.783247, 0.364793, 0.0140538, 0.113429, 0.0859375, 0.272075, 0.511651, 0.208955, 0.148247, 0.776097, 0.266488, 0.136438, 0.738454, 0.611663, 0.56791, 0.833214, 0.959146, 0.358978, 0.207743, 0.537063, 0.437717, 0.60199, 0.383474, 0.213916, 0.125251, 0.78066, 0.482704, 0.134592, 0.880776, 0.801872, 0.208513, 0.960464, 0.947722, 0.641671, 0.202998, 0.475369, 0.12731, 0.0263268, 0.650302, 0.363487, 0.603842, 0.0697654, 0.533586, 0.720898, 0.663448, 0.584509, 0.0694609, 0.924275, 0.822067, 0.375415, 0.799756, 0.694115, 0.580293, 0.334283, 0.0922166, 0.171261, 0.71009, 0.695641, 0.983752, 0.204798, 0.725317, 0.501215, 0.326378, 0.0791494, 0.801844, 0.0524501, 0.538012, 0.731976, 0.639471, 0.191962, 0.938879, 0.854176, 0.626389, 0.435476, 0.213822, 0.28105, 0.511943, 0.920372, 0.966166, 0.818484, 0.491012, 0.188083, 0.632422, 0.123717, 0.568356, 0.165152, 0.172649, 0.46527, 0.78615, 0.675015, 0.306201, 0.158993, 0.0792014, 0.967042, 0.729708, 0.488759, 0.417579, 0.836831, 0.0639718, 0.0951642, 0.407389, 0.247113, 0.057035, 0.91239, 0.768096, 0.133332, 0.06445, 0.319766, 0.0494294, 0.36631, 0.409032, 0.150527, 0.341765, 0.972424, 0.773659, 0.0102969, 0.0621577, 0.510706, 0.412811, 0.5055, 0.460341, 0.530126, 0.577187, 0.143287, 0.0889278, 0.24435, 0.954416, 0.333653, 0.793141, 0.422005, 0.360843, 0.186255, 0.144739, 0.663774, 0.248813, 0.194538, 0.957817, 0.891305, 0.201715, 0.449246, 0.286602, 0.438681, 0.063516, 0.86176, 0.607669, 0.458845, 0.192139, 0.467602, 0.498938, 0.528959, 0.628244, 0.307133, 0.502113, 0.790074, 0.439137, 0.297278, 0.0855112, 0.993146, 0.341803, 0.429483, 0.489207, 0.097826, 0.387804, 0.105836, 0.832144, 0.686801, 0.353345, 0.270722, 0.453971, 0.166628, 0.360213, 0.586645, 0.592227, 0.87898, 0.619847, 0.470664, 0.494789, 0.124589, 0.814768, 0.105868, 0.570889, 0.53332, 0.0484772, 0.234767, 0.0405342, 0.312458, 0.28473, 0.960765, 0.0786981, 0.942417, 0.804688, 0.336259, 0.63046, 0.23329, 0.851628, 0.887926, 0.999308, 0.300862, 0.792434, 0.0593845, 0.426165, 0.474874, 0.432486, 0.646565, 0.225466, 0.332777, 0.908149, 0.719494, 0.284807, 0.835582, 0.311455, 0.0362688, 0.31152, 0.128829, 0.397832, 0.285144, 0.20932, 0.988974, 0.50815, 0.0308556, 0.302613, 0.0360845, 0.524814, 0.768544, 0.705382, 0.199072, 0.607121, 0.136406, 0.470687, 0.203016, 0.729325, 0.333073, 0.746358, 0.195277, 0.304061, 0.487599, 0.871167, 0.722015, 0.267789, 0.977434, 0.393249, 0.522215, 0.666793, 0.892122, 0.623572, 0.937274, 0.206294, 0.758486, 0.23332, 0.906251, 0.812943, 0.987073, 0.748163, 0.552509, 0.0403306, 0.812408, 0.628796, 0.653199, 0.349886, 0.51297, 0.401466, 0.746051, 0.644171, 0.919166, 0.453167, 0.544111, 0.864165, 0.227377, 0.78908, 0.275189, 0.635981, 0.716067, 0.586381, 0.632425, 0.399512, 0.105899, 0.260164, 0.107326, 0.780907, 0.443946, 0.470192, 0.540053, 0.0619289, 0.471238, 0.824157, 0.531286, 0.448794, 0.908165, 0.274989, 0.418133, 0.898903, 0.143515, 0.836127, 0.0344939, 0.662182, 0.179498, 0.327589, 0.796382, 0.810047, 0.734709, 0.881899, 0.47577, 0.215189, 0.00626095, 0.797087, 0.119078, 0.38015, 0.463575, 0.0306364, 0.873173, 0.806818, 0.573985, 0.648762, 0.430314, 0.512317, 0.605053, 0.330103, 0.648338, 0.995127, 0.764925, 0.836998, 0.410201, 0.871226, 0.388434, 0.644309, 0.849519, 0.0508844, 0.868112, 0.662296, 0.28919, 0.582254, 0.758399, 0.138326, 0.774859, 0.065396, 0.848847, 0.0188271, 0.283098, 0.622852, 0.778154, 0.880147, 0.260418, 0.940757, 0.815913, 0.524643, 0.330396, 0.276408, 0.205845, 0.84478, 0.392218, 0.735127, 0.043299, 0.849097, 0.518467, 0.586761, 0.250364, 0.500118, 0.662909, 0.934101, 0.00782292, 0.452582, 0.335459, 0.981512, 0.272505, 0.727543, 0.136702, 0.494222, 0.378457, 0.0540869, 0.631997, 0.0824607, 0.16458, 0.797114, 0.0161222, 0.269075, 0.326394, 0.782215, 0.861174, 0.581392, 0.754731, 0.0722561, 0.583109, 0.497678, 0.0217069, 0.442749, 0.274421, 0.740624, 0.871762, 0.593714, 0.817941, 0.920725, 0.663765, 0.885732, 0.607902, 0.819708, 0.927395, 0.774414, 0.59827, 0.463188, 0.709475, 0.514606, 0.983765, 0.958663, 0.0928098, 0.0947121, 0.0565686, 0.616457, 0.135232, 0.419006, 0.660529, 0.857965, 0.951692, 0.597543, 0.114092, 0.0280256, 0.40186, 0.346991, 0.0407271, 0.831748, 0.205171, 0.420474, 0.48008, 0.757137, 0.687575, 0.806059, 0.213349, 0.716053, 0.441288, 0.217007, 0.420978, 0.523437, 0.404101, 0.834459, 0.580157, 0.481358, 0.867783, 0.00923892, 0.6734, 0.813537, 0.0828359, 0.266422, 0.680127, 0.0949555, 0.753066, 0.293837, 0.484535, 0.642965, 0.73337, 0.813223, 0.0288107, 0.0860963, 0.766266, 0.983775, 0.343079, 0.782403, 0.0921881, 0.977474, 0.108858, 0.982138, 0.325952, 0.971741, 0.675473, 0.875188, 0.0120778, 0.662449, 0.594604, 0.399967, 0.58295, 0.927819, 0.420584, 0.212146, 0.120091, 0.447372, 0.192807, 0.166516, 0.810726, 0.639078, 0.504555, 0.895836, 0.260907, 0.331909, 0.308899, 0.676879, 0.41273, 0.00506582, 0.428657, 0.805133, 0.103065, 0.121083, 0.375458, 0.520363, 0.604543, 0.429635, 0.438148, 0.760166, 0.766464, 0.0438251, 0.740575, 0.0293269, 0.183323, 0.00930769, 0.698414, 0.896991, 0.61929, 0.436696, 0.441205, 0.622654, 0.615977, 0.756678, 0.128649, 0.749992, 0.872171, 0.797274, 0.130622, 0.478863, 0.446768, 0.89785, 0.513121, 0.194588, 0.231796, 0.954301, 0.576324, 0.0562747, 0.61085, 0.577743, 0.545555, 0.363614, 0.843892, 0.400062, 0.717187, 0.740086, 0.528511, 0.779256, 0.745451, 0.589778, 0.977115, 0.251186, 0.916301, 0.761167, 0.0847637, 0.0230334, 0.14641, 0.725114, 0.618926, 0.432685, 0.561266, 0.128284, 0.887923, 0.045822, 0.493046, 0.143171, 0.671241, 0.679747, 0.335673, 0.115841, 0.93615, 0.339681, 0.247698, 0.0401278, 0.889537, 0.260072, 0.173812, 0.0365525, 0.204306, 0.84639, 0.832188, 0.141863, 0.0520722, 0.107015, 0.752642, 0.866039, 0.517256, 0.701401, 0.395515, 0.711873, 0.646394, 0.264936, 0.0187599, 0.369458, 0.904164, 0.0935391, 0.174715, 0.14083, 0.239559, 0.89748, 0.934013, 0.787458, 0.246227, 0.702091, 0.615122, 0.398795, 0.894223, 0.340275, 0.647777, 0.0492552, 0.907233, 0.504857, 0.501728, 0.626655, 0.648525, 0.194499, 0.0128158, 0.73601, 0.401778, 0.41494, 0.102481, 0.2945, 0.236058, 0.293323, 0.465413, 0.281178, 0.137138, 0.7493, 0.371651, 0.946542, 0.323555, 0.0745932, 0.157936, 0.998219, 0.877153, 0.125826, 0.324891, 0.34621, 0.241885, 0.676998, 0.931328, 0.930489, 0.250319, 0.602469, 0.834009, 0.346904, 0.101225, 0.546648, 0.554059, 0.376143, 0.295871, 0.833185, 0.204503, 0.186921, 0.863372, 0.822428, 0.603087, 0.921182, 0.704988, 0.142363, 0.221817, 0.639942, 0.279948, 0.502842, 0.754451, 0.218131, 0.848244, 0.500334, 0.724128, 0.524567, 0.380775, 0.143284, 0.412951, 0.667918, 0.515343, 0.381574, 0.080528, 0.262058, 0.890428, 0.312059, 0.464009, 0.584185, 0.52156, 0.21197, 0.651816, 0.167206, 0.884292, 0.720491, 0.917117, 0.821234, 0.167817, 0.857364, 0.149155, 0.268429, 0.775817, 0.427542, 0.892723, 0.352895, 0.66515, 0.474889, 0.375345, 0.225294, 0.804309, 0.875738, 0.486721, 0.122004, 0.722886, 0.297956, 0.0397858, 0.515044, 0.87911, 0.211498, 0.442214, 0.634027, 0.851447, 0.0666484, 0.0393785, 0.553852, 0.528016, 0.674943, 0.191433, 0.438034, 0.629693, 0.90824, 0.248927, 0.0244725, 0.905935, 0.566168, 0.33751, 0.178979, 0.300227, 0.601985, 0.873492, 0.738763, 0.502438, 0.319074, 0.113825, 0.183288, 0.899694, 0.767436, 0.468309, 0.709561, 0.86515, 0.487377, 0.21688, 0.684647, 0.576559, 0.863409, 0.550658, 0.566675, 0.882127, 0.742264, 0.798776, 0.0203523, 0.252537, 0.322721, 0.56767, 0.56067, 0.504041, 0.398241, 0.796125, 0.850756, 0.0350052, 0.644953, 0.674127, 0.206868, 0.860659, 0.199265, 0.857225, 0.429107, 0.822651, 0.665956, 0.00757618, 0.743728, 0.793881, 0.356099, 0.50414, 0.659538, 0.0998927, 0.790683, 0.0348981, 0.379323, 0.151468, 0.498949, 0.208541, 0.87533, 0.924126, 0.964347, 0.317048, 0.421789, 0.704327, 0.664026, 0.533839, 0.392701, 0.140075, 0.987913, 0.03069, 0.313169, 0.354796, 0.269842, 0.78199, 0.287759, 0.339711, 0.303852, 0.412044, 0.00941863, 0.975561, 0.854622, 0.160671, 0.154996, 0.864365, 0.835893, 0.248002, 0.618884, 0.713282, 0.00944035, 0.961391, 0.335907, 0.929753, 0.998946, 0.556517, 0.412419, 0.233943, 0.947435, 0.375575, 0.319604, 0.716044, 0.162663, 0.637383, 0.806768, 0.0856161, 0.956034, 0.245337, 0.551991, 0.851346, 0.254167, 0.744982, 0.564446, 0.429007, 0.870564, 0.376924, 0.904205, 0.885564, 0.214906, 0.183022, 0.925709, 0.357906, 0.288384, 0.605114, 0.614396, 0.396703, 0.0197939, 0.243897, 0.975216, 0.704497, 0.476525, 0.548474, 0.359391, 0.0163667, 0.666657, 0.311121, 0.0940198, 0.941416, 0.325115, 0.975641, 0.658675, 0.00407639, 0.365521, 0.692277, 0.372779, 0.200639, 0.674376, 0.380635, 0.531602, 0.693364, 0.227682, 0.84193, 0.950013, 0.451081, 0.514958, 0.670572, 0.711082, 0.364604, 0.648132, 0.523288, 0.450453, 0.53099, 0.988543, 0.669159, 0.830524, 0.290807, 0.140858, 0.799549, 0.583342, 0.257869, 0.59006, 0.217784, 0.197247, 0.938884, 0.36196, 0.844371, 0.0248709, 0.883103, 0.370168, 0.398312, 0.311908, 0.47474, 0.822861, 0.707444, 0.9443, 0.239513, 0.771527, 0.297216, 0.811968, 0.469184, 0.306376, 0.400149, 0.147905, 0.682306, 0.293364, 0.364349, 0.688556, 0.585631, 0.805093, 0.424534, 0.0733822, 0.543836, 0.733804, 0.649467, 0.30935, 0.685181, 0.858836, 0.517044, 0.47701, 0.638474, 0.0184836, 0.225102, 0.315323, 0.797589, 0.0778301, 0.0475099, 0.87561, 0.75544, 0.904796, 0.945879, 0.028123, 0.344476, 0.386814, 0.896624, 0.798412, 0.766277, 0.939873, 0.12153, 0.217026, 0.527635, 0.175489, 0.494636, 0.904428, 0.655793, 0.541505, 0.642757, 0.972037, 0.130352, 0.911651, 0.223711, 0.0406087, 0.381063, 0.746494, 0.827658, 0.0772224, 0.272106, 0.987622, 0.0052656, 0.606502, 0.85071, 0.0231136, 0.0652533, 0.857008, 0.00692946, 0.0733086, 0.367627, 0.315969, 0.292009, 0.232548, 0.994711, 0.998285, 0.308188, 0.584667, 0.752991, 0.191141, 0.240298, 0.0564915, 0.605211, 0.0147917, 0.550111, 0.206021, 0.244289, 0.135031, 0.237319, 0.40131, 0.26777, 0.532085, 0.177655, 0.868724, 0.485011, 0.371253, 0.185282, 0.644731, 0.622103, 0.855553, 0.56232, 0.417923, 0.787789, 0.91939, 0.491437, 0.520566, 0.59465, 0.701258, 0.458588, 0.472785, 0.430358, 0.641993, 0.278947, 0.81911, 0.706891, 0.29567, 0.705872, 0.354766, 0.00397476, 0.866153, 0.226897, 0.505979, 0.164834, 0.809293, 0.149693, 0.523287, 0.740916, 0.132538, 0.931738, 0.0903063, 0.371996, 0.907401, 0.813538, 0.92406, 0.307826, 0.60004, 0.969938, 0.744216, 0.926652, 0.526372, 0.741083, 0.948732, 0.82016, 0.185162, 0.575103, 0.210604, 0.514917, 0.845905, 0.323327, 0.40058, 0.0702564, 0.92683, 0.293106, 0.57313, 0.577772, 0.290759, 0.159196, 0.683577, 0.834745, 0.949849, 0.255035, 0.222031, 0.821555, 0.158011, 0.254514, 0.951792, 0.312939, 0.623394, 0.0596259, 0.860424, 0.183174, 0.730661, 0.955133, 0.836548, 0.779002, 0.0728992, 0.383247, 0.452559, 0.655328, 0.622909, 0.308009, 0.599691, 0.475055, 0.49587, 0.310641, 0.138457, 0.551152, 0.426814, 0.300667, 0.703175, 0.352065, 0.538981, 0.860645, 0.90593, 0.127653, 0.710765, 0.822372, 0.208033, 0.445604, 0.188133, 0.589692, 0.726903, 0.465544, 0.00409995, 0.987988, 0.979211, 0.24932, 0.704111, 0.730765, 0.534288, 0.235308, 0.744655, 0.943391, 0.38814, 0.462258, 0.826034, 0.109031, 0.628534, 0.511483, 0.0223714, 0.0708374, 0.630432, 0.300738, 0.919946, 0.463439, 0.558466, 0.78058, 0.37532, 0.98128, 0.528785, 0.737494, 0.6098, 0.695515, 0.122953, 0.646288, 0.385564, 0.737697, 0.131926, 0.414746, 0.0422695, 0.574735, 0.49658, 0.800849, 0.687207, 0.792034, 0.0924931, 0.386161, 0.663946, 0.395455, 0.106021, 0.74884, 0.681213, 0.908718, 0.421009, 0.58296, 0.000902615, 0.963181, 0.664368, 0.495164, 0.611767, 0.765692, 0.0809122, 0.452475, 0.934372, 0.979904, 0.915181, 0.398806, 0.221098, 0.129262, 0.421468, 0.622208, 0.0266502, 0.0698893, 0.666035, 0.0788684, 0.644953, 0.905166, 0.32171, 0.158854, 0.264691, 0.776421, 0.54107, 0.437091, 0.534772, 0.127446, 0.98168, 0.750536, 0.477281, 0.0383675, 0.474524, 0.732434, 0.471001, 0.300117, 0.397921, 0.269747, 0.655277, 0.901436, 0.907577, 0.225375, 0.479693, 0.200836, 0.177513, 0.0870924, 0.722634, 0.892637, 0.784116, 0.921343, 0.826337, 0.287859, 0.023142, 0.854584, 0.507308, 0.198762, 0.997025, 0.423951, 0.281525, 0.619001, 0.382824, 0.0785872, 0.468601, 0.511196, 0.346127, 0.952124, 0.148085, 0.437411, 0.945594, 0.395731, 0.160254, 0.489413, 0.754752, 0.3042, 0.653328, 0.387466, 0.548743, 0.42956, 0.739894, 0.832006, 0.138709, 0.0494386, 0.981079, 0.386781, 0.207027, 0.515991, 0.0338838, 0.842002, 0.399235, 0.95634, 0.715616, 0.5179, 0.959534, 0.559731, 0.0923886, 0.477529, 0.548104, 0.597878, 0.897928, 0.192379, 0.241017, 0.927968, 0.0923328, 0.469445, 0.319189, 0.766991, 0.672913, 0.802884, 0.335926, 0.454531, 0.549084, 0.483673, 0.493887, 0.413477, 0.651473, 0.875949, 0.922685, 0.880461, 0.779535, 0.967865, 0.122564, 0.0563977, 0.231148, 0.898896, 0.408888, 0.14527, 0.914878, 0.0976806, 0.56189, 0.61785, 0.668755, 0.481494, 0.799514, 0.508923, 0.0842405, 0.32201, 0.125059, 0.995587, 0.152596, 0.0496574, 0.261351, 0.0341027, 0.933704, 0.243774, 0.550941, 0.186483, 0.518109, 0.125313, 0.672872, 0.153328, 0.886958, 0.913331, 0.91518, 0.847563, 0.923794, 0.988247, 0.58427, 0.146684, 0.151417, 0.656044, 0.40859, 0.14817, 0.685165, 0.445984, 0.19485, 0.432712, 0.209893, 0.0505005, 0.790353, 0.5032, 0.081458, 0.0603039, 0.640263, 0.0914454, 0.777219, 0.460987, 0.138563, 0.382623, 0.842088, 0.641148, 0.54497, 0.326583, 0.0199233, 0.925389, 0.605686, 0.167242, 0.266449, 0.189608, 0.68873, 6.97044e-05, 0.272176, 0.534916, 0.286065, 0.699928, 0.0199234, 0.118455, 0.702812, 0.0438006, 0.602831, 0.301757, 0.0114333, 0.362431, 0.170829, 0.889331, 0.959898, 0.220713, 0.942668, 0.473341, 0.245121, 0.401105, 0.908635, 0.764165, 0.345782, 0.2635, 0.766043, 0.535833, 0.884238, 0.697501, 0.241719, 0.647971, 0.382307, 0.0776414, 0.543534, 0.625013, 0.303934, 0.942436, 0.958443, 0.100776, 0.251232, 0.603529, 0.396556, 0.923066, 0.548554, 0.220382, 0.548643, 0.274279, 0.164581, 0.95505, 0.25951, 0.261906, 0.577789, 0.741105, 0.43178, 0.671708, 0.331355, 0.39507, 0.410122, 0.310539, 0.631777, 0.990829, 0.458913, 0.384965, 0.000951788, 0.666651, 0.684922, 0.515917, 0.43763, 0.390086, 0.340545, 0.8425, 0.847068, 0.611617, 0.701035, 0.806373, 0.139428, 0.123705, 0.370887, 0.356397, 0.270458, 0.179828, 0.510626, 0.705079, 0.188944, 0.453232, 0.207811, 0.0473841, 0.876157, 0.352782, 0.992691, 0.990362, 0.614067, 0.341219, 0.109603, 0.434749, 0.409946, 0.926753, 0.927122, 0.196243, 0.78931, 0.242777, 0.0833232, 0.048814, 0.673235, 0.786945, 0.132571, 0.754882, 0.730221, 0.351982, 0.810955, 0.215565, 0.733762, 0.419478, 0.0429883, 0.0152969, 0.877608, 0.643404, 0.386359, 0.692136, 0.485291, 0.294757, 0.62227, 0.432487, 0.823588, 0.597304, 0.390734, 0.130017, 0.0323171, 0.0681704, 0.542906, 0.147647, 0.510956, 0.343039, 0.304513, 0.470067, 0.780405, 0.708418, 0.895061, 0.317382, 0.698365, 0.49651, 0.805618, 0.876528, 0.159333, 0.084484, 0.885828, 0.568193, 0.715078, 0.0726656, 0.720662, 0.242088, 0.407123, 0.740762, 0.100173, 0.344778, 0.183769, 0.447317, 0.274635, 0.796297, 0.660071, 0.587159, 0.136121, 0.0276473, 0.0709116, 0.836785, 0.274939, 0.87, 0.829027, 0.530006, 0.11207, 0.787696, 0.560119, 0.734515, 0.587682, 0.87197, 0.625314, 0.658184, 0.624214, 0.0705072, 0.297713, 0.76411, 0.877976, 0.045017, 0.263096, 0.297053, 0.609203, 0.441216, 0.742644, 0.327943, 0.288434, 0.101241, 0.259137, 0.565927, 0.268681, 0.10388, 0.615863, 0.883317, 0.522543, 0.460196, 0.504551, 0.0737397, 0.357484, 0.872328, 0.235187, 0.662268, 0.987824, 0.912386, 0.829971, 0.851458, 0.0526801, 0.520847, 0.366275, 0.227224, 0.551578, 0.0471393, 0.377022, 0.727276, 0.811789, 0.325827, 0.381726, 0.267145, 0.564409, 0.647686, 0.797945, 0.387828, 0.481548, 0.50858, 0.915173, 0.12693, 0.455427, 0.449081, 0.384271, 0.374061, 0.097169, 0.420527, 0.245558, 0.49597, 0.179161, 0.182186, 0.284332, 0.862269, 0.905787, 0.824996, 0.0911025, 0.850194, 0.305712, 0.538812, 0.680032, 0.825729, 0.774434, 0.00497431, 0.739186, 0.89747, 0.350157, 0.839806, 0.162065, 0.0315357, 0.171089, 0.309725, 0.509352, 0.897451, 0.254073, 0.589491, 0.18473, 0.779303, 0.287892, 0.529953, 0.698098, 0.498781, 0.17027, 0.807804, 0.713066, 0.443851, 0.147509, 0.476324, 0.0849093, 0.293804, 0.316159, 0.851617, 0.785632, 0.278999, 0.922958, 0.918628, 0.00110848, 0.855476, 0.939888, 0.838905, 0.454722, 0.049078, 0.0690804, 0.811063, 0.237738, 0.285593, 0.724508, 0.752612, 0.465725, 0.543701, 0.245843, 0.613217, 0.889532, 0.783317, 0.923225, 0.363409, 0.861243, 0.94711, 0.845222, 0.297557, 0.828068, 0.162559, 0.895627, 0.482789, 0.956056, 0.960334, 0.525915, 0.864784, 0.243446, 0.132257, 0.0355159, 0.48747, 0.13702, 0.0487109, 0.958976, 0.682305, 0.697404, 0.517756, 0.271305, 0.348725, 0.514959, 0.146714, 0.706208, 0.65107, 0.496005, 0.363852, 0.899967, 0.815151, 0.974469, 0.0844418, 0.440561, 0.911199, 0.762465, 0.597601, 0.24989, 0.42485, 0.688378, 0.997864, 0.133362, 0.259394, 0.0406596, 0.0860533, 0.158273, 0.158292, 0.797543, 0.538996, 0.480008, 0.422689, 0.182056, 0.669835, 0.363054, 0.146077, 0.902395, 0.629381, 0.0684445, 0.366411, 0.905245, 0.95533, 0.787215, 0.90363, 0.421145, 0.389334, 0.812495, 0.655009, 0.873205, 0.454083, 0.371221, 0.417499, 0.137931, 0.798543, 0.713944, 0.34444, 0.591934, 0.568805, 0.305445, 0.0535376, 0.873742, 0.429269, 0.166098, 0.168313, 0.404932, 0.0374966, 0.0669818, 0.89088, 0.0404485, 0.443517, 0.260303, 0.19161, 0.765812, 0.365226, 0.611378, 0.235126, 0.363451, 0.892738, 0.529157, 0.651125, 0.153076, 0.649078, 0.969791, 0.276867, 0.753009, 0.198297, 0.683023, 0.052406, 0.0254117, 0.00338464, 0.973576, 0.674069, 0.836126, 0.182508, 0.996128, 0.424246, 0.782711, 0.621323, 0.897955, 0.267909, 0.127903, 0.956464, 0.223168, 0.85823, 0.726266, 0.384882, 0.133664, 0.527722, 0.780722, 0.687852, 0.360357, 0.668218, 0.408891, 0.668433, 0.239858, 0.364373, 0.746525, 0.0194728, 0.346705, 0.0229462, 0.458635, 0.268359, 0.901841, 0.668297, 0.306051, 0.256688, 0.134941, 0.56859, 0.604442, 0.454286, 0.507528, 0.847724, 0.214442, 0.392379, 0.632621, 0.906297, 0.458079, 0.433776, 0.30273, 0.884566, 0.421768, 0.935194, 0.0921849, 0.423245, 0.615781, 0.869782, 0.739985, 0.762898, 0.655259, 0.332713, 0.79574, 0.0642832, 0.691164, 0.511502, 0.80821, 0.970405, 0.416269, 0.291265, 0.652546, 0.635271, 0.807694, 0.0431208, 0.493358, 0.256506, 0.976263, 0.23967, 0.126852, 0.497923, 0.747758, 0.289456, 0.0884913, 0.715343, 0.261956, 0.829906, 0.0533743, 0.505959, 0.246809, 0.0982734, 0.187019, 0.253518, 0.565694, 0.882792, 0.261432, 0.96548, 0.565113, 0.573391, 0.954133, 0.0158304, 0.605275, 0.278867, 0.557482, 0.0823503, 0.975507, 0.917146, 0.659914, 0.545931, 0.159105, 0.0839864, 0.994018, 0.938603, 0.0114792, 0.381102, 0.592332, 0.493459, 0.623574, 0.209693, 0.23726, 0.0727749, 0.584468, 0.987599, 0.685465, 0.904302, 0.660279, 0.0156542, 0.880792, 0.995401, 0.432219, 0.766088, 0.951417, 0.29196, 0.250044, 0.644601, 0.185979, 0.278347, 0.560231, 0.503529, 0.669737, 0.204006, 0.659249, 0.588698, 0.258539, 0.917531, 0.526103, 0.294503, 0.749646, 0.893066, 0.0400344, 0.933276, 0.298697, 0.332565, 0.120745, 0.32405, 0.437418, 0.343717, 0.275915, 0.687726, 0.378401, 0.116547, 0.0586583, 0.954957, 0.354961, 0.459451, 0.381851, 0.242585, 0.0527297, 0.387011, 0.78615, 0.679871, 0.0969096, 0.974251, 0.375427, 0.981451, 0.424016, 0.52282, 0.211821, 0.144911, 0.012798, 0.378344, 0.350074, 0.027395, 0.614111, 0.622761, 0.760705, 0.565331, 0.695602, 0.246383, 0.0715231, 0.665014, 0.342275, 0.446794, 0.632261, 0.8071, 0.230686, 0.472806, 0.495188, 0.0590397, 0.0258673, 0.994041, 0.0284946, 0.67796, 0.3943, 0.868992, 0.901415, 0.830276, 0.81449, 0.372918, 0.427919, 0.0609839, 0.498254, 0.928328, 0.969557, 0.00875862, 0.531724, 0.2854, 0.690292, 0.93172, 0.440842, 0.107637, 0.604463, 0.104505, 0.456251, 0.124982, 0.0394257, 0.90127, 0.178092, 0.270394, 0.674221, 0.410829, 0.341818, 0.681168, 0.190791, 0.254102, 0.245402, 0.680993, 0.119661, 0.880911, 0.0174896, 0.766244, 0.714052, 0.255102, 0.31572, 0.00887071, 0.335468, 0.0266612, 0.986794, 0.609976, 0.66684, 0.877991, 0.144678, 0.423934, 0.703842, 0.225452, 0.911991, 0.309387, 0.673259, 0.172029, 0.329916, 0.502351, 0.690981, 0.170024, 0.88533, 0.624785, 0.321363, 0.685606, 0.91955, 0.592923, 0.54156, 0.365244, 0.829578, 0.436584, 0.412874, 0.735137, 0.791498, 0.301722, 0.381989, 0.688878, 0.512202, 0.182662, 0.603295, 0.895481, 0.364057, 0.677434, 0.507175, 0.654368, 0.653867, 0.528956, 0.374771, 0.98773, 0.595307, 0.783905, 0.601861, 0.463332, 0.932498, 0.739323, 0.545642, 0.5791, 0.622483, 0.532126, 0.668479, 0.306928, 0.0195272, 0.453952, 0.614024, 0.410677, 0.0155925, 0.826704, 0.423931, 0.836678, 0.438924, 0.740696, 0.561482, 0.0893214, 0.288994, 0.571401, 0.677957, 0.380046, 0.276863, 0.342851, 0.0509712, 0.114583, 0.525371, 0.209344, 0.902236, 0.395247, 0.754452, 0.69313, 0.966128, 0.444688, 0.36747, 0.259551, 0.027126, 0.882527, 0.448274, 0.260347, 0.55595, 0.747249, 0.615728, 0.41376, 0.34802, 0.2875, 0.429296, 0.736503, 0.677609, 0.327682, 0.0887324, 0.331813, 0.711874, 0.918619, 0.872923, 0.0742797, 0.85766, 0.0707066, 0.534841, 0.921731, 0.0263108, 0.0598999, 0.37799, 0.499211, 0.676225, 0.464623, 0.253417, 0.130598, 0.924041, 0.0560727, 0.897775, 0.45905, 0.142797, 0.894595, 0.469825, 0.872596, 0.0691726, 0.14761, 0.644502, 0.427733, 0.694703, 0.823281, 0.869951, 0.71473, 0.493258, 0.536883, 0.255269, 0.293427, 0.831841, 0.680813, 0.0206072, 0.677639, 0.5316, 0.473076, 0.102568, 0.630431, 0.0832135, 0.289184, 0.798372, 0.231469, 0.0982872, 0.567834, 0.650897, 0.677726, 0.691671, 0.962228, 0.844364, 0.942152, 0.726276, 0.344664, 0.26788, 0.147159, 0.296549, 0.861301, 0.36695, 0.118315, 0.416061, 0.967727, 0.87995, 0.982524, 0.740762, 0.0335848, 0.851658, 0.698516, 0.865528, 0.369151, 0.183144, 0.629342, 0.775286, 0.265997, 0.0241675, 0.581314, 0.708552, 0.612795, 0.745523, 0.232616, 0.977005, 0.0635075, 0.763925, 0.468835, 0.213136, 0.00100157, 0.252305, 0.844795, 0.164959, 0.982506, 0.191049, 0.0285206, 0.487858, 0.178453, 0.270045, 0.825004, 0.207762, 0.170568, 0.948178, 0.0335208, 0.823119, 0.469793, 0.712395, 0.251105, 0.259527, 0.621902, 0.553753, 0.660528, 0.862246, 0.782147, 0.347054, 0.119024, 0.360907, 0.0204292, 0.972423, 0.626333, 0.78352, 0.775083, 0.782187, 0.584635, 0.630985, 0.146018, 0.208324, 0.206896, 0.59348, 0.934518, 0.506731, 0.546564, 0.469744, 0.244292, 0.539307, 0.335306, 0.309056, 0.232766, 0.898153, 0.0408301, 0.464669, 0.316146, 0.982274, 0.322839, 0.165663, 0.562336, 0.347879, 0.469302, 0.743295, 0.591931, 0.654187, 0.341286, 0.204763, 0.795382, 0.208074, 0.0120431, 0.590175, 0.775931, 0.676866, 0.324001, 0.399278, 0.183638, 0.585804, 0.689186, 0.757816, 0.147845, 0.347157, 0.0264234, 0.309659, 0.890931, 0.965132, 0.640717, 0.772183, 0.443222, 0.221438, 0.142323, 0.0950673, 0.280891, 0.400968, 0.442616, 0.145378, 0.795143, 0.5753, 0.634607, 0.748196, 0.486195, 0.69369, 0.81566, 0.00878605, 0.994677, 0.781603, 0.854253, 0.487573, 0.11681, 0.187154, 0.482745, 0.428969, 0.540055, 0.71439, 0.765667, 0.470962, 0.986268, 0.977392, 0.817257, 0.582757, 0.182142, 0.391291, 0.561361, 0.704339, 0.941356, 0.0553637, 0.460717, 0.020215, 0.899266, 0.106616, 0.777086, 0.732166, 0.159011, 0.290419, 0.56689, 0.00779044, 0.892882, 0.133409, 0.101799, 0.186129, 0.6709, 0.115771, 0.945025, 0.360708, 0.26327, 0.84268, 0.0845632, 0.342377, 0.959354, 0.715668, 0.940337, 0.646759, 0.658464, 0.170854, 0.0401572, 0.898814, 0.428535, 0.846646, 0.0622173, 0.481759, 0.805686, 0.930578, 0.474452, 0.908406, 0.808462, 0.834165, 0.452788, 0.719645, 0.274831, 0.652777, 0.554878, 0.892961, 0.207743, 0.27354, 0.288798, 0.131028, 0.800323, 0.291063, 0.555386, 0.391184, 0.666883, 0.823652, 0.402678, 0.481177, 0.982194, 0.446464, 0.19942, 0.0584617, 0.252946, 0.128255, 0.850211, 0.21515, 0.492428, 0.694589, 0.741449, 0.546204, 0.696326, 0.446408, 0.112463, 0.666474, 0.939459, 0.385872, 0.628081, 0.0464086, 0.630165, 0.0892842, 0.605734, 0.768762, 0.10757, 0.17385, 0.561266, 0.182718, 0.114847, 0.290036, 0.321573, 0.355856, 0.340549, 0.602114, 0.184965, 0.420035, 0.962014, 0.0199467, 0.873264, 0.39637, 0.0883592, 0.815046, 0.335132, 0.926742, 0.498382, 0.755187, 0.8201, 0.118857, 0.970355, 0.496689, 0.656959, 0.345073, 0.755824, 0.106491, 0.909558, 0.929634, 0.851547, 0.674076, 0.791228, 0.31031, 0.506334, 0.788087, 0.0272701, 0.528601, 0.77785, 0.742108, 0.938537, 0.618618, 0.457377, 0.525991, 0.365887, 0.23779, 0.31306, 0.676006, 0.407159, 0.339719, 0.995224, 0.99883, 0.565039, 0.916343, 0.0829878, 0.0640497, 0.951538, 0.459887, 0.659082, 0.0152949, 0.793012, 0.120974, 0.860868, 0.547291, 0.619261, 0.125329, 0.296842, 0.95894, 0.213264, 0.0800837, 0.814934, 0.0128622, 0.977173, 0.473298, 0.692574, 0.362815, 0.511559, 0.765763, 0.337082, 0.292514, 0.759194, 0.658489, 0.413138, 0.208933, 0.447627, 0.704491, 0.418062, 0.100603, 0.0684665, 0.876975, 0.00887432, 0.494588, 0.206948, 0.822848, 0.675951, 0.51903, 0.0624831, 0.887231, 0.126942, 0.910038, 0.136196, 0.257017, 0.73025, 0.804383, 0.842607, 0.358013, 0.635618, 0.208468, 0.463756, 0.321807, 0.586821, 0.538498, 0.812904, 0.969209, 0.332872, 0.857647, 0.901719, 0.545676, 0.902948, 0.185258, 0.025943, 0.763974, 0.861203, 0.95305, 0.529824, 0.2482, 0.726529, 0.464223, 0.946856, 0.133834, 0.696507, 0.0994677, 0.89814, 0.748362, 0.0262708, 0.667601, 0.590863, 0.403922, 0.117761, 0.386821, 0.80546, 0.334043, 0.314829, 0.200278, 0.306342, 0.52356, 0.474637, 0.106998, 0.9278, 0.675965, 0.663403, 0.101462, 0.583559, 0.0462734, 0.0352671, 0.90461, 0.790007, 0.758405, 0.841091, 0.0926943, 0.137215, 0.368548, 0.0705626, 0.545258, 0.117584, 0.498161, 0.5439, 0.0980244, 0.359515, 0.554699, 0.666477, 0.204211, 0.189021, 0.905762, 0.951077, 0.117013, 0.697655, 0.611902, 0.44213, 0.715191, 0.806257, 0.954509, 0.809172, 0.270034, 0.204865, 0.943159, 0.061596, 0.246246, 0.344185, 0.703708, 0.472256, 0.0147259, 0.0013571, 0.538292, 0.225187, 0.168966, 0.136675, 0.712792, 0.870868, 0.0291048, 0.826463, 0.636307, 0.195244, 0.337975, 0.40808, 0.901738, 0.538553, 0.770498, 0.738043, 0.503139, 0.0658936, 0.979355, 0.402137, 0.673127, 0.531231, 0.628136, 0.490108, 0.303373, 0.329643, 0.181567, 0.707066, 0.961684, 0.260575, 0.862115, 0.457136, 0.565408, 0.701363, 0.512112, 0.271181, 0.575812, 0.163291, 0.0146806, 0.303805, 0.0322961, 0.999351, 0.129029, 0.752638, 0.806291, 0.554292, 0.493333, 0.653076, 0.476907, 0.387074, 0.495866, 0.578622, 0.440685, 0.14802, 0.962741, 0.143877, 0.320731, 0.364887, 0.453192, 0.134608, 0.157618, 0.0746771, 0.521106, 0.353175, 0.271908, 0.265794, 0.511907, 0.65059, 0.628124, 0.125845, 0.448902, 0.0130005, 0.362455, 0.112936, 0.440093, 0.829233, 0.990599, 0.383463, 0.801014, 0.803162, 0.650828, 0.4055, 0.247662, 0.601687, 0.674877, 0.0954853, 0.373485, 0.259122, 0.350152, 0.504605, 0.0422898, 0.208451, 0.0145286, 0.481845, 0.650191, 0.26052, 0.523836, 0.961735, 0.42511, 0.508254, 0.635915, 0.866391, 0.597371, 0.894346, 0.34847, 0.564543, 0.783321, 0.165085, 0.482795, 0.480497, 0.312681, 0.699649, 0.405702, 0.299391, 0.393185, 0.580065, 0.942902, 0.36436, 0.135167, 0.860861, 0.437486, 0.349081, 0.0743343, 0.912358, 0.962811, 0.191964, 0.318093, 0.0134003, 0.388102, 0.491684, 0.94616, 0.489305, 0.674996, 0.684999, 0.300016, 0.657807, 0.85814, 0.0886809, 0.493227, 0.710839, 0.0607668, 0.0573066, 0.699759, 0.899117, 0.146274, 0.673067, 0.20316, 0.993279, 0.333727, 0.331023, 0.70526, 0.585366, 0.327836, 0.514168, 0.734879, 0.220123, 0.646333, 0.410052, 0.833534, 0.308118, 0.94664, 0.825775, 0.311175, 0.817723, 0.318438, 0.623486, 0.466668, 0.346387, 0.444601, 0.0431827, 0.226344, 0.712988, 0.742142, 0.998481, 0.169476, 0.743603, 0.956298, 0.714877, 0.849463, 0.878594, 0.712209, 0.180689, 0.970106, 0.258083, 0.0762421, 0.843759, 0.789727, 0.32206, 0.404498, 0.157956, 0.711342, 0.764646, 0.573514, 0.669096, 0.0169577, 0.98374, 0.872292, 0.927651, 0.920891, 0.421191, 0.739768, 0.48246, 0.0226258, 0.844997, 0.400884, 0.628137, 0.459454, 0.158492, 0.350767, 0.259643, 0.634974, 0.101789, 0.287066, 0.275365, 0.344751, 0.1319, 0.569736, 0.802776, 0.185886, 0.877973, 0.742424, 0.283848, 0.0628755, 0.548388, 0.968877, 0.196969, 0.993194, 0.737554, 0.421841, 0.133346, 0.323018, 0.678151, 0.539794, 0.528593, 0.621648, 0.800984, 0.362695, 0.666673, 0.297796, 0.35114, 0.952972, 0.996985, 0.804617, 0.769111, 0.211362, 0.071003, 0.273445, 0.389167, 0.672436, 0.524423, 0.360221, 0.220799, 0.417743, 0.600825, 0.861874, 0.325058, 0.37374, 0.978478, 0.743612, 0.515629, 0.446762, 0.140657, 0.974692, 0.589504, 0.307988, 0.357815, 0.074559, 0.595603, 0.174361, 0.516269, 0.857666, 0.921461, 0.3509, 0.914908, 0.385497, 0.594327, 0.132143, 0.00243453, 0.821895, 0.447849, 0.956253, 0.176787, 0.382489, 0.174103, 0.625296, 0.62577, 0.212753, 0.4215, 0.510081, 0.0451632, 0.787763, 0.0877071, 0.157109, 0.433643, 0.0546049, 0.126395, 0.764879, 0.401122, 0.314145, 0.721691, 0.189557, 0.953835, 0.397051, 0.274993, 0.639607, 0.00120164, 0.824579, 0.283382, 0.925793, 0.670764, 0.847156, 0.922985, 0.293448, 0.737972, 0.340344, 0.776504, 0.0259891, 0.0778378, 0.468436, 0.512705, 0.420573, 0.741593, 0.527772, 0.497272, 0.485672, 0.313134, 0.790152, 0.00858696, 0.865896, 0.345584, 0.261287, 0.00731203, 0.0949803, 0.776545, 0.774847, 0.331482, 0.418394, 0.915572, 0.309631, 0.224686, 0.183097, 0.60949, 0.308622, 0.216153, 0.115206, 0.974212, 0.763856, 0.0501892, 0.542696, 0.447503, 0.907984, 0.407614, 0.956497, 0.412391, 0.112248, 0.934585, 0.615769, 0.449886, 0.948145, 0.0341262, 0.791654, 0.876766, 0.918833, 0.677323, 0.573616, 0.68512, 0.063904, 0.744852, 0.889233, 0.300993, 0.355698, 0.51711, 0.191152, 0.39697, 0.135644, 0.379379, 0.263374, 0.005119, 0.801305, 0.148226, 0.129027, 0.75879, 0.926024, 0.077719, 0.12664, 0.784643, 0.422217, 0.483238, 0.86804, 0.982853, 0.0542705, 0.74908, 0.902672, 0.371814, 0.707943, 0.923811, 0.38666, 0.0241011, 0.65662, 0.269029, 0.402267, 0.325552, 0.232426, 0.0581101, 0.905211, 0.675483, 0.0774212, 0.039581, 0.131205, 0.749617, 0.0566855, 0.739756, 0.06836, 0.00835598, 0.0254742, 0.0447429, 0.233396, 0.482392, 0.447588, 0.643709, 0.832638, 0.670232, 0.043071, 0.578531, 0.662282, 0.286894, 0.423193, 0.0552578, 0.852691, 0.713245, 0.470162, 0.668054, 0.667899, 0.574541, 0.131059, 0.91276, 0.818326, 0.11599, 0.851034, 0.593224, 0.155014, 0.514159, 0.592336, 0.562494, 0.196258, 0.252103, 0.340876, 0.911879, 0.175632, 0.546079, 0.182363, 0.454414, 0.604122, 0.297298, 0.653722, 0.761407, 0.47926, 0.816178, 0.235929, 0.639344, 0.739464, 0.938616, 0.286809, 0.327739, 0.461707, 0.208154, 0.482954, 0.0509468, 0.142706, 0.89284, 0.237463, 0.586393, 0.800339, 0.560887, 0.295807, 0.330318, 0.0670258, 0.351697, 0.381988, 0.94602, 0.591504, 0.3632, 0.717619, 0.697342, 0.250028, 0.693048, 0.222405, 0.665521, 0.334338, 0.84925, 0.15161, 0.21402, 0.370436, 0.613952, 0.285156, 0.399465, 0.146095, 0.0125152, 0.0118508, 0.0156256, 0.740666, 0.437696, 0.403523, 0.850049, 0.927105, 0.0708434, 0.127489, 0.397059, 0.850749, 0.0904292, 0.796167, 0.0869627, 0.552714, 0.516711, 0.629009, 0.704758, 0.101544, 0.780694, 0.622194, 0.969904, 0.247187, 0.825026, 0.809368, 0.690484, 0.925001, 0.564509, 0.0470862, 0.865373, 0.137115, 0.273268, 0.847244, 0.504767, 0.336853, 0.144934, 0.068843, 0.52291, 0.23538, 0.577555, 0.16187, 0.0370332, 0.72807, 0.432009, 0.426133, 0.462264, 0.939607, 0.235215, 0.811247, 0.556375, 0.87118, 0.569085, 0.878304, 0.983183, 0.852026, 0.46259, 0.307348, 0.963419, 0.843539, 0.845906, 0.587644, 0.765891, 0.991794, 0.809161, 0.429153, 0.14479, 0.211685, 0.194344, 0.692745, 0.973786, 0.33619, 0.0689954, 0.793661, 0.139201, 0.541078, 0.112971, 0.278525, 0.967265, 0.738958, 0.434821, 0.0140112, 0.963971, 0.590263, 0.114507, 0.635127, 0.677356, 0.893178, 0.315607, 0.955298, 0.00820178, 0.00425983, 0.0551395, 0.111696, 0.516583, 0.272322, 0.468827, 0.217675, 0.311107, 0.751291, 0.915763, 0.28836, 0.792332, 0.0851952, 0.0043993, 0.20719, 0.865429, 0.432253, 0.558345, 0.0984699, 0.967917, 0.491382, 0.782148, 0.699392, 0.392874, 0.468504, 0.924621, 0.5672, 0.111487, 0.814167, 0.00100346, 0.66217, 0.885473, 0.420846, 0.0417279, 0.695533, 0.117853, 0.234109, 0.731629, 0.736747, 0.560958, 0.470938, 0.982085, 0.962364, 0.327289, 0.704605, 0.595809, 0.757899, 0.270644, 0.783712, 0.639928, 0.550749, 0.735806, 0.0453388, 0.719945, 0.457517, 0.578951, 0.955582, 0.244602, 0.368397, 0.0534791, 0.619606, 0.936891, 0.909496, 0.544918, 0.830714, 0.472908, 0.741619, 0.747178, 0.944943, 0.890203, 0.653188, 0.820486, 0.885751, 0.942118, 0.995787, 0.722743, 0.215096, 0.275333, 0.450616, 0.0303903, 0.0745061, 0.348647, 0.927486, 0.730308, 0.508685, 0.869741, 0.000199261, 0.586344, 0.0536505, 0.0119296, 0.0923863, 0.545536, 0.0608853, 0.380569, 0.912787, 0.0686252, 0.371146, 0.466165, 0.926151, 0.608997, 0.753636, 0.664229, 0.383292, 0.852328, 0.571204, 0.036878, 0.25953, 0.563706, 0.894019, 0.857279, 0.816177, 0.714966, 0.574699, 0.860752, 0.972654, 0.784208, 0.756852, 0.457417, 0.717886, 0.713831, 0.153024, 0.644426, 0.695995, 0.286087, 0.980746, 0.843952, 0.982575, 0.856584, 0.209565, 0.481541, 0.169354, 0.69629, 0.209612, 0.327471, 0.0551323, 0.509702, 0.237023, 0.45776, 0.208377, 0.669919, 0.578195, 0.870464, 0.53013, 0.304846, 0.826025, 0.7725, 0.690408, 0.499287, 0.885399, 0.467045, 0.0825642, 0.439889, 0.53252, 0.298833, 0.677996, 0.351126, 0.570108, 0.735968, 0.185331, 0.572396, 0.0718335, 0.043388, 0.960652, 0.244946, 0.840251, 0.0970145, 0.765337, 0.07533, 0.11174, 0.0798366, 0.563998, 0.547384, 0.685283, 0.698292, 0.0698455, 0.764944, 0.166621, 0.717051, 0.73781, 0.793447, 0.139141, 0.025704, 0.0299312, 0.127013, 0.665322, 0.252495, 0.702525, 0.461675, 0.788524, 0.892694, 0.109942, 0.756784, 0.182836, 0.155042, 0.266305, 0.508443, 0.285882, 0.784535, 0.818626, 0.928909, 0.333389, 0.758663, 0.313839, 0.301623, 0.360218, 0.310982, 0.927235, 0.35376, 0.552454, 0.290489, 0.02134, 0.225831, 0.122543, 0.108653, 0.938176, 0.282131, 0.757113, 0.66138, 0.134962, 0.887678, 0.229384, 0.300449, 0.337241, 0.668107, 0.575062, 0.393382, 0.0596951, 0.338745, 0.18376, 0.416311, 0.308475, 0.268968, 0.24063, 0.842395, 0.70662, 0.383827, 0.154508, 0.382982, 0.001046, 0.8198, 0.534798, 0.233568, 0.733703, 0.48442, 0.63067, 0.7776, 0.816091, 0.791681, 0.891629, 0.246947, 0.931949, 0.171218, 0.981435, 0.809544, 0.430647, 0.742869, 0.302689, 0.805772, 0.915023, 0.573546, 0.0655189, 0.819092, 0.647007, 0.367672, 0.436398, 0.497045, 0.27714, 0.586413, 0.291069, 0.359957, 0.422829, 0.189001, 0.291317, 0.472965, 0.985665, 0.202703, 0.874949, 0.915435, 0.124988, 0.314792, 0.81394, 0.303742, 0.35381, 0.122282, 0.745956, 0.209447, 0.257211, 0.927826, 0.907156, 0.461426, 0.106361, 0.954715, 0.644834, 0.663264, 0.723763, 0.802764, 0.452491, 0.690445, 0.0763885, 0.100535, 0.954263, 0.485459, 0.315302, 0.412006, 0.312095, 0.955058, 0.838809, 0.443168, 0.675165, 0.00597348, 0.396078, 0.926727, 0.668074, 0.215526, 0.776938, 0.932685, 0.179367, 0.0769971, 0.888411, 0.872208, 0.00631209, 0.278515, 0.491077, 0.878372, 0.701497, 0.265719, 0.592272, 0.415172, 0.867962, 0.859485, 0.587776, 0.178753, 0.490393, 0.470901, 0.677936, 0.763239, 0.332961, 0.953333, 0.942395, 0.0136726, 0.39762, 0.0989805, 0.617236, 0.155618, 0.440091, 0.91059, 0.814133, 0.756409, 0.975529, 0.572451, 0.844711, 0.950252, 0.990381, 0.761324, 0.180284, 0.206011, 0.0900117, 0.0221842, 0.331012, 0.270904, 0.958312, 0.389324, 0.324624, 0.301003, 0.0224642, 0.00124109, 0.874292, 0.717028, 0.295782, 0.0209107, 0.0302121, 0.892169, 0.503364, 0.320226, 0.272315, 0.65038, 0.784421, 0.0888919, 0.250147, 0.0424563, 0.560304, 0.432983, 0.501894, 0.437084, 0.489585, 0.314804, 0.183821, 0.181711, 0.0583365, 0.852978, 0.844904, 0.339829, 0.1833, 0.349819, 0.223401, 0.550625, 0.638733, 0.270964, 0.2392, 0.718568, 0.220275, 0.299293, 0.385766, 0.436482, 0.0886527, 0.173392, 0.18101, 0.300184, 0.122931, 0.23347, 0.674402, 0.19252, 0.8956, 0.748266, 0.746077, 0.533762, 0.246848, 0.219544, 0.689732, 0.295174, 0.244165, 0.203912, 0.925367, 0.998724, 0.727769, 0.372718, 0.559335, 0.731244, 0.775813, 0.818395, 0.410829, 0.0362289, 0.688645, 0.317817, 0.637866, 0.72063, 0.320848, 0.424657, 0.0157628, 0.14882, 0.345892, 0.162934, 0.193426, 0.00402687, 0.115824, 0.582711, 0.857726, 0.38583, 0.0702833, 0.35083, 0.0715505, 0.777583, 0.035525, 0.362197, 0.860771, 0.963233, 0.641075, 0.374879, 0.896295, 0.0165354, 0.91491, 0.830022, 0.49169, 0.583116, 0.577071, 0.133575, 0.443, 0.39942, 0.288246, 0.292011, 0.557059, 0.673048, 0.00417844, 0.211666, 0.0893447, 0.935207, 0.77357, 0.877631, 0.262308, 0.209458, 0.757559, 0.259865, 0.709038, 0.342092, 0.887604, 0.800483, 0.0608916, 0.0624347, 0.296387, 0.227653, 0.0905725, 0.96811, 0.876155, 0.712574, 0.475495, 0.837954, 0.82326, 0.901368, 0.978379, 0.374155, 0.3437, 0.820785, 0.852968, 0.554892, 0.45926, 0.714185, 0.580378, 0.530148, 0.254213, 0.950919, 0.314368, 0.424304, 0.388183, 0.244002, 0.306542, 0.570451, 0.164858, 0.609034, 0.184189, 0.451433, 0.269775, 0.17716, 0.391834, 0.00178003, 0.891679, 0.671473, 0.711705, 0.117475, 0.783716, 0.915749, 0.984903, 0.263905, 0.655211, 0.347225, 0.361571, 0.412794, 0.00185498, 0.206817, 0.884916, 0.186854, 0.38828, 0.0828301, 0.375498, 0.666243, 0.658897, 0.876611, 0.412295, 0.697257, 0.115523, 0.316816, 0.476403, 0.766361, 0.852835, 0.306754, 0.22442, 0.0357394, 0.409191, 0.333454, 0.164335, 0.987705, 0.411213, 0.234983, 0.158057, 0.43634, 0.658609, 0.174127, 0.020123, 0.437261, 0.0184341, 0.89343, 0.79349, 0.980645, 0.692591, 0.148737, 0.330185, 0.754389, 0.642548, 0.817865, 0.880654, 0.422831, 0.446075, 0.21881, 0.984493, 0.0661338, 0.461624, 0.105358, 0.534487, 0.213864, 0.148391, 0.951034, 0.271586, 0.559914, 0.879341, 0.602874, 0.220543, 0.476639, 0.435103, 0.105406, 0.310206, 0.793802, 0.151404, 0.487077, 0.172264, 0.960269, 0.713114, 0.999871, 0.420094, 0.515271, 0.451883, 0.479245, 0.348492, 0.990736, 0.308586, 0.63651, 0.808384, 0.561693, 0.0413513, 0.681456, 0.610626, 0.534659, 0.496177, 0.3667, 0.900975, 0.894569, 0.79565, 0.0186271, 0.989815, 0.991297, 0.779106, 0.519002, 0.487239, 0.869723, 0.00462705, 0.184937, 0.668712, 0.917448, 0.725175, 0.562443, 0.428636, 0.303813, 0.647251, 0.921253, 0.47985, 0.0837471, 0.744928, 0.861585, 0.839156, 0.834023, 0.264347, 0.302752, 0.647836, 0.310652, 0.287339, 0.22281, 0.58143, 0.0492512, 0.388226, 0.636916, 0.701096, 0.45844, 0.612194, 0.0897263, 0.613092, 0.21763, 0.251719, 0.581469, 0.842173, 0.104907, 0.852448, 0.8234, 0.164362, 0.888597, 0.0204464, 0.835671, 0.761565, 0.556342, 0.796369, 0.586651, 0.669905, 0.670633, 0.182719, 0.77019, 0.404177, 0.553797, 0.414769, 0.961517, 0.743827, 0.58166, 0.514762, 0.0927369, 0.201122, 0.510801, 0.338126, 0.992696, 0.803498, 0.648466, 0.729269, 0.455494, 0.115187, 0.33076, 0.453352, 0.475997, 0.0203883, 0.594224, 0.0339375, 0.020838, 0.55651, 0.404537, 0.949745, 0.854326, 0.651165, 0.104005, 0.694183, 0.00834956, 0.78608, 0.815726, 0.459997, 0.122715, 0.765904, 0.40332, 0.685294, 0.494859, 0.746013, 0.174657, 0.503882, 0.560745, 0.223367, 0.625813, 0.415538, 0.399038, 0.395755, 0.275441, 0.36147, 0.201579, 0.401547, 0.408787, 0.884887, 0.616629, 0.889319, 0.656236, 0.938783, 0.0637644, 0.973361, 0.879687, 0.529342, 0.568434, 0.431322, 0.62737, 0.974513, 0.845337, 0.996259, 0.159408, 0.631976, 0.643702, 0.665687, 0.139823, 0.843702, 0.246161, 0.76084, 0.728958, 0.535128, 0.136276, 0.184521, 0.904256, 0.294465, 0.778551, 0.377506, 0.787573, 0.436552, 0.320794, 0.965536, 0.692609, 0.618321, 0.786625, 0.790937, 0.634893, 0.207891, 0.643817, 0.222708, 0.425659, 0.674078, 0.504861, 0.131684, 0.0188377, 0.937917, 0.293583, 0.334396, 0.266537, 0.92676, 0.326858, 0.525026, 0.266233, 0.0477181, 0.598097, 0.0946177, 0.684865, 0.384384, 0.699691, 0.278586, 0.401219, 0.0221756, 0.792018, 0.497166, 0.515238, 0.695679, 0.719962, 0.349851, 0.440469, 0.567658, 0.624902, 0.576608, 0.635863, 0.0877794, 0.94749, 0.273357, 0.763191, 0.958012, 0.434347, 0.983312, 0.422428, 0.193906, 0.190518, 0.40998, 0.114308, 0.774496, 0.120317, 0.660065, 0.344058, 0.376515, 0.00188368, 0.498159, 0.136415, 0.97349, 0.360057, 0.468954, 0.677129, 0.988489, 0.100758, 0.987906, 0.0793113, 0.699757, 0.254688, 0.0192848, 0.0246752, 0.314687, 0.519168, 0.949958, 0.199203, 0.660482, 0.364254, 0.665527, 0.0424076, 0.0105091, 0.807254, 0.778683, 0.47006, 0.749578, 0.122787, 0.379606, 0.320607, 0.239831, 0.992628, 0.400976, 0.513473, 0.469938, 0.166511, 0.318388, 0.0512289, 0.16053, 0.677713, 0.995624, 0.0188381, 0.130674, 0.188496, 0.529163, 0.29398, 0.686658, 0.685019, 0.682503, 0.725215, 0.289632, 0.132913, 0.511885, 0.0148312, 0.820994, 0.652437, 0.130145, 0.911327, 0.627165, 0.103867, 0.13767, 0.110062, 0.406208, 0.590038, 0.0765644, 0.559362, 0.531457, 0.91515, 0.297759, 0.739756, 0.300428, 0.246681, 0.666189, 0.100013, 0.321947, 0.596659, 0.853213, 0.375101, 0.263643, 0.299012, 0.630002, 0.690559, 0.653102, 0.231595, 0.623702, 0.400381, 0.179103, 0.985133, 0.263407, 0.0276057, 0.792905, 0.94982, 0.788521, 0.444738, 0.0369177, 0.157686, 0.0208841, 0.338507, 0.235028, 0.135567, 0.898262, 0.663315, 0.304737, 0.401189, 0.501241, 0.346704, 0.560141, 0.881806, 0.243489, 0.639263, 0.599862, 0.253706, 0.854068, 0.133819, 0.405036, 0.311781, 0.401806, 0.872806, 0.321202, 0.752558, 0.175346, 0.378333, 0.323489, 0.383771, 0.858183, 0.0325355, 0.928269, 0.673296, 0.673749, 0.0901323, 0.72412, 0.649832, 0.135227, 0.35764, 0.288569, 0.254955, 0.443867, 0.517818, 0.297254, 0.590647, 0.107932, 0.449047, 0.882344, 0.225252, 0.433855, 0.762601, 0.696592, 0.944478, 0.811902, 0.446042, 0.739057, 0.916647, 0.560893, 0.481298, 0.0512294, 0.189685, 0.938124, 0.743038, 0.663919, 0.277515, 0.00490406, 0.105191, 0.745067, 0.610129, 0.875308, 0.0198431, 0.170976, 0.345018, 0.489012, 0.552749, 0.874204, 0.308591, 0.503163, 0.669615, 0.734265, 0.792719, 0.0165101, 0.760995, 0.821754, 0.223009, 0.757844, 0.830483, 0.132646, 0.61682, 0.837773, 0.0240728, 0.790019, 0.77177, 0.882421, 0.166526, 0.735692, 0.546135, 0.843767, 0.896736, 0.590712, 0.445507, 0.34464, 0.181952, 0.66194, 0.347118, 0.176585, 0.0663742, 0.581223, 0.470515, 0.0402068, 0.440101, 0.653776, 0.171315, 0.948476, 0.252551, 0.0267077, 0.214988, 0.906711, 0.658821, 0.0954548, 0.905208, 0.406649, 0.654212, 0.915519, 0.393234, 0.731812, 0.180086, 0.511531, 0.218638, 0.552076, 0.168674, 0.702122, 0.368917, 0.235562, 0.753486, 0.697328, 0.404258, 0.206343, 0.751382, 0.0744253, 0.776965, 0.0942195, 0.437631, 0.488783, 0.39511, 0.685955, 0.416878, 0.634365, 0.152642, 0.840603, 0.21257, 0.0627066, 0.353281, 0.884653, 0.151442, 0.193807, 0.063635, 0.631978, 0.149031, 0.655747, 0.888465, 0.900787, 0.929788, 0.851687, 0.715223, 0.342302, 0.90168, 0.137161, 0.46594, 0.816812, 0.965853, 0.765433, 0.369141, 0.463996, 0.964662, 0.732006, 0.173873, 0.882535, 0.648797, 0.0182048, 0.90321, 0.821726, 0.288565, 0.144074, 0.852497, 0.242443, 0.69388, 0.252887, 0.172532, 0.883051, 0.679245, 0.494158, 0.346952, 0.533348, 0.911159, 0.654162, 0.814161, 0.435313, 0.514984, 0.599249, 0.0797151, 0.805843, 0.65486, 0.931116, 0.816697, 0.581251, 0.586563, 0.836913, 0.898794, 0.95048, 0.313502, 0.387805, 0.630518, 0.418309, 0.310879, 0.866792, 0.470594, 0.207069, 0.699711, 0.794977, 0.242894, 0.478062, 0.642866, 0.530757, 0.97951, 0.654546, 0.9611, 0.424048, 0.461523, 0.819456, 0.464958, 0.680896, 0.818617, 0.60735, 0.873149, 0.554147, 0.948287, 0.677049, 0.628649, 0.389143, 0.219843, 0.206531, 0.382141, 0.97292, 0.436913, 0.527146, 0.584415, 0.638428, 0.964012, 0.67869, 0.743408, 0.364167, 0.935989, 0.319598, 0.97166, 0.531958, 0.226696, 0.676763, 0.908528, 0.616405, 0.678407, 0.183517, 0.449191, 0.0941468, 0.824995, 0.488591, 0.668747, 0.271305, 0.360296, 0.156978, 0.335918, 0.25947, 0.87536, 0.00516358, 0.634068, 0.327899, 0.106054, 0.845073, 0.81707, 0.388142, 0.70198, 0.0181476, 0.0736673, 0.187835, 0.512911, 0.175033, 0.97524, 0.849162, 0.14661, 0.928972, 0.732933, 0.844496, 0.751822, 0.919395, 0.542603, 0.356712, 0.742917, 0.647308, 0.462918, 0.434674, 0.553079, 0.0235603, 0.632526, 0.735501, 0.422099, 0.443653, 0.0204179, 0.815156, 0.233638, 0.628604, 0.0116476, 0.153278, 0.837472, 0.830971, 0.363338, 0.861741, 0.160206, 0.394161, 0.175412, 0.137136, 0.26409, 0.517597, 0.689166, 0.37129, 0.442019, 0.0914687, 0.37218, 0.930533, 0.889082, 0.483711, 0.377526, 0.252849, 0.838257, 0.801246, 0.848188, 0.361704, 0.488574, 0.148598, 0.294871, 0.266487, 0.774182, 0.187339, 0.0941953, 0.164017, 0.936422, 0.50731, 0.074095, 0.854587, 0.649322, 0.345458, 0.445889, 0.81422, 0.244509, 0.682901, 0.749852, 0.111593, 0.213816, 0.452847, 0.39045, 0.0703317, 0.804879, 0.0454746, 0.11173, 0.541566, 0.757812, 0.901329, 0.1559, 0.437596, 0.0668889, 0.51318, 0.239489, 0.991694, 0.00890407, 0.776454, 0.480847, 0.867292, 0.178512, 0.487028, 0.394301, 0.312336, 0.706071, 0.0676136, 0.417828, 0.144306, 0.467616, 0.535511, 0.451438, 0.732587, 0.81661, 0.17244, 0.239007, 0.384814, 0.519206, 0.946842, 0.745977, 0.0109876, 0.417681, 0.973558, 0.434035, 0.264324, 0.423259, 0.180296, 0.0602802, 0.905666, 0.297782, 0.704718, 0.0523451, 0.398693, 0.312, 0.714856, 0.176388, 0.922254, 0.997358, 0.112195, 0.505402, 0.848362, 0.213936, 0.846666, 0.609299, 0.833808, 0.693092, 0.548613, 0.66066, 0.86805, 0.787334, 0.00247236, 0.402374, 0.378345, 0.372522, 0.963886, 0.938627, 0.364029, 0.555715, 0.450016, 0.896565, 0.786311, 0.628032, 0.768357, 0.220717, 0.0791959, 0.588705, 0.937854, 0.306802, 0.358237, 0.625344, 0.776782, 0.813199, 0.045975, 0.4, 0.233179, 0.983195, 0.305067, 0.0694271, 0.359581, 0.067716, 0.885032, 0.273982, 0.570772, 0.888602, 0.219557, 0.378408, 0.241539, 0.258022, 0.475525, 0.857438, 0.948276, 0.00303445, 0.0524761, 0.0211743, 0.909011, 0.621567, 0.679538, 0.126809, 0.972133, 0.108976, 0.0159989, 0.977282, 0.392157, 0.291527, 0.222998, 0.324908, 0.242965, 0.20673, 0.514523, 0.480699, 0.692138, 0.382866, 0.21629, 0.841046, 0.268402, 0.76586, 0.874557, 0.814671, 0.581949, 0.0393721, 0.376769, 0.0832735, 0.0114397, 0.462073, 0.0464791, 0.468276, 0.815788, 0.062347, 0.0712963, 0.579323, 0.550473, 0.811739, 0.48989, 0.681401, 0.185871, 0.0397111, 0.880335, 0.347317, 0.613371, 0.207223, 0.587868, 0.66271, 0.370936, 0.385676, 0.564103, 0.32319, 0.203513, 0.20325, 0.28876, 0.636782, 0.133005, 0.154924, 0.814053, 0.577972, 0.590152, 0.74786, 0.733135, 0.93969, 0.357774, 0.361943, 0.823137, 0.81813, 0.331541, 0.784539, 0.634332, 0.897261, 0.232585, 0.260344, 0.585753, 0.949643, 0.394603, 0.629096, 0.571147, 0.250446, 0.639285, 0.874115, 0.0845131, 0.901405, 0.448808, 0.879161, 0.853172, 0.657264, 0.455202, 0.674769, 0.792406, 0.221688, 0.210912, 0.504814, 0.64103, 0.040465, 0.551683, 0.0399134, 0.985258, 0.566315, 0.153864, 0.558317, 0.920538, 0.504803, 0.0154709, 0.930551, 0.699332, 0.359302, 0.597273, 0.749038, 0.54641, 0.475377, 0.532226, 0.282638, 0.686299, 0.904624, 0.711049, 0.286856, 0.165259, 0.793737, 0.947973, 0.442122, 0.585861, 0.00375097, 0.477529, 0.966832, 0.0255681, 0.850698, 0.208501, 0.157569, 0.908811, 0.427259, 0.585685, 0.358088, 0.820059, 0.636096, 0.678087, 0.111219, 0.658997, 0.0135983, 0.230142, 0.956578, 0.0798112, 0.792803, 0.00995865, 0.621058, 0.859901, 0.940691, 0.485983, 0.766231, 0.617424, 0.768601, 0.459799, 0.0779353, 0.470563, 0.414345, 0.882353, 0.838752, 0.969884, 0.365109, 0.427634, 0.842743, 0.629724, 0.376985, 0.291547, 0.205478, 0.918634, 0.0106153, 0.675243, 0.503538, 0.311834, 0.363575, 0.685241, 0.612219, 0.243538, 0.0523428, 0.255861, 0.726771, 0.547785, 0.657322, 0.822952, 0.531548, 0.509373, 0.400932, 0.486141, 0.24589, 0.523337, 0.620198, 0.672751, 0.436069, 0.750501, 0.150979, 0.777565, 0.255165, 0.25547, 0.417277, 0.127728, 0.790892, 0.231964, 0.251233, 0.515786, 0.733995, 0.755056, 0.212614, 0.140287, 0.506838, 0.548005, 0.50844, 0.828861, 0.738998, 0.66115, 0.493259, 0.0879833, 0.0818416, 0.359093, 0.144662, 0.34801, 0.566687, 0.431741, 0.0395252, 0.972612, 0.173369, 0.282916, 0.0209703, 0.454247, 0.781002, 0.555626, 0.755128, 0.508045, 0.968286, 0.567804, 0.720546, 0.716028, 0.210509, 0.764112, 0.220195, 0.179263, 0.993463, 0.981587, 0.376688, 0.49655, 0.416868, 0.750882, 0.581115, 0.528931, 0.649702, 0.552172, 0.199754, 0.21184, 0.300756, 0.00206194, 0.790112, 0.661196, 0.407876, 0.121373, 0.0288388, 0.537629, 0.491145, 0.200387, 0.489174, 0.265322, 0.715038, 0.932368, 0.28523, 0.542864, 0.384893, 0.855611, 0.483112, 0.808174, 0.124034, 0.571804, 0.357685, 0.182198, 0.345442, 0.70914, 0.554292, 0.516797, 0.976609, 0.143118, 0.00196754, 0.389125, 0.304913, 0.896352, 0.137209, 0.897262, 0.174488, 0.945255, 0.738199, 0.446846, 0.651386, 0.103271, 0.015566, 0.669168, 0.111878, 0.720844, 0.571162, 0.414152, 0.632662, 0.124961, 0.117036, 0.547065, 0.769056, 0.212571, 0.127038, 0.653646, 0.600641, 0.894887, 0.391917, 0.510365, 0.0804136, 0.546756, 0.572669, 0.211586, 0.247839, 0.195546, 0.607518, 0.502233, 0.434904, 0.699243, 0.350656, 0.0359477, 0.491685, 0.0887684, 0.0941827, 0.722759, 0.115717, 0.266468, 0.631221, 0.157107, 0.198286, 0.226469, 0.159666, 0.128377, 0.218301, 0.361379, 0.4007, 0.533851, 0.557404, 0.0466327, 0.645502, 0.153742, 0.554059, 0.9425, 0.0661787, 0.0320266, 0.871934, 0.63689, 0.395157, 0.301419, 0.191002, 0.0203157, 0.362925, 0.418706, 0.109352, 0.127928, 0.735726, 0.85121, 0.217985, 0.72121, 0.606717, 0.969741, 0.350378, 0.945544, 0.665039, 0.496837, 0.745786, 0.686947, 0.558355, 0.651492, 0.196427, 0.381324, 0.481085, 0.270371, 0.737005, 0.542791, 0.664317, 0.845877, 0.106086, 0.599747, 0.805139, 0.314063, 0.920153, 0.890399, 0.0157717, 0.344151, 0.773477, 0.927122, 0.572308, 0.925828, 0.759559, 0.0634648, 0.278847, 0.786123, 0.896158, 0.79095, 0.0878904, 0.815251, 0.845217, 0.412765, 0.41615, 0.333214, 0.410225, 0.321003, 0.905244, 0.012862, 0.114231, 0.668392, 0.91973, 0.45456, 0.505116, 0.521361, 0.888924, 0.715811, 0.718758, 0.0619728, 0.0916167, 0.0335274, 0.0624644, 0.4784, 0.429709, 0.58511, 0.677507, 0.0806693, 0.591992, 0.246494, 0.967231, 0.527379, 0.561387, 0.253546, 0.0427814, 0.737071, 0.796151, 0.0255074, 0.105284, 0.827983, 0.535238, 0.844796, 0.841525, 0.591672, 0.0766255, 0.0881285, 0.704453, 0.671481, 0.768818, 0.111716, 0.71122, 0.950354, 0.899784, 0.433181, 0.40691, 0.503999, 0.422504, 0.581437, 0.797081, 0.531882, 0.0998619, 0.48154, 0.370861, 0.00221245, 0.410198, 0.391688, 0.947599, 0.228708, 0.0315346, 0.927713, 0.779427, 0.911971, 0.30753, 0.865715, 0.0593138, 0.350164, 0.301878, 0.72946, 0.431283, 0.357232, 0.212766, 0.71931, 0.515632, 0.816957, 0.191838, 0.775153, 0.432858, 0.959898, 0.634488, 0.622311, 0.599992, 0.512847, 0.997908, 0.939193, 0.581875, 0.560387, 0.78185, 0.285982, 0.280553, 0.308816, 0.134468, 0.321772, 0.110574, 0.489362, 0.872673, 0.0193961, 0.460953, 0.84901, 0.668887, 0.189664, 0.000549057, 0.161837, 0.72935, 0.709209, 0.00228495, 0.596407, 0.122947, 0.984808, 0.8726, 0.308435, 0.233373, 0.669192, 0.461376, 0.114877, 0.00838577, 0.926238, 0.315023, 0.307728, 0.753198, 0.415399, 0.349156, 0.421721, 0.0862714, 0.665752, 0.498863, 0.127277, 0.337532, 0.936022, 0.437087, 0.717495, 0.745443, 0.117998, 0.250283, 0.280285, 0.582203, 0.392373, 0.0847275, 0.337317, 0.314002, 0.329854, 0.0470029, 0.407913, 0.977614, 0.688895, 0.559196, 0.334343, 0.510806, 0.209277, 0.737387, 0.226032, 0.0296062, 0.338569, 0.0356785, 0.378598, 0.479794, 0.963596, 0.357715, 0.494336, 0.0956445, 0.278095, 0.225147, 0.379982, 0.8188, 0.950299, 0.0545482, 0.635316, 0.0816566, 0.989249, 0.00408357, 0.905033, 0.367877, 0.0417027, 0.972755, 0.457357, 0.692385, 0.150804, 0.26182, 0.725535, 0.960612, 0.11631, 0.971702, 0.0398852, 0.726893, 0.594899, 0.653482, 0.785575, 0.983186, 0.900966, 0.765669, 0.654914, 0.916507, 0.928975, 0.553837, 0.457753, 0.58964, 0.00780929, 0.282989, 0.202425, 0.158142, 0.310862, 0.507121, 0.657615, 0.884899, 0.234023, 0.0502052, 0.0933516, 0.573893, 0.736496, 0.248577, 0.57518, 0.344975, 0.130153, 0.655958, 0.763193, 0.218772, 0.680001, 0.597525, 0.0542872, 0.409138, 0.573627, 0.120364, 0.738672, 0.725271, 0.936735, 0.224608, 0.188548, 0.496173, 0.929599, 0.00923076, 0.565452, 0.0899691, 0.919553, 0.475673, 0.318576, 0.220193, 0.535904, 0.347333, 0.443615, 0.145647, 0.258849, 0.855244, 0.357146, 0.624343, 0.692086, 0.846721, 0.961042, 0.148, 0.0624468, 0.559837, 0.334245, 0.728384, 0.0147112, 0.406731, 0.422222, 0.936485, 0.0063763, 0.209485, 0.709123, 0.625679, 0.80454, 0.830715, 0.860449, 0.583985, 0.764824, 0.287307, 0.885473, 0.57181, 0.155419, 0.153509, 0.188338, 0.398051, 0.0866237, 0.512296, 0.502992, 0.35682, 0.289414, 0.170634, 0.490584, 0.959767, 0.860544, 0.413453, 0.810313, 0.0113791, 0.519471, 0.731116, 0.199219, 0.81898, 0.374283, 0.783708, 0.931345, 0.294982, 0.120297, 0.276786, 0.982351, 0.649792, 0.466978, 0.67864, 0.878387, 0.358194, 0.113574, 0.792296, 0.685458, 0.182877, 0.898499, 0.724257, 0.0528478, 0.374871, 0.809123, 0.338506, 0.360038, 0.288583, 0.578386, 0.464609, 0.371332, 0.355915, 0.771267, 0.588021, 0.0448652, 0.875129, 0.513044, 0.33325, 0.715725, 0.247601, 0.141509, 0.831008, 0.98756, 0.649571, 0.86587, 0.163103, 0.340718, 0.865083, 0.0677505, 0.216519, 0.570092, 0.975661, 0.0302013, 0.975612, 0.942977, 0.00373243, 0.640335, 0.53276, 0.245543, 0.12357, 0.131662, 0.896766, 0.171882, 0.37124, 0.19251, 0.582918, 0.894718, 0.0180517, 0.368494, 0.356654, 0.293119, 0.437928, 0.99279, 0.587389, 0.373991, 0.118354, 0.703704, 0.214441, 0.944031, 0.757169, 0.459805, 0.710348, 0.290625, 0.642241, 0.908912, 0.597383, 0.847746, 0.266141, 0.954442, 0.786096, 0.584809, 0.872451, 0.189283, 0.590112, 0.103202, 0.561726, 0.22862, 0.865938, 0.571098, 0.296255, 0.722207, 0.804941, 0.428624, 0.240523, 0.545486, 0.597495, 0.793655, 0.976565, 0.941642, 0.929814, 0.246966, 0.763846, 0.914594, 0.306194, 0.82581, 0.946183, 0.1705, 0.569774, 0.340134, 0.506855, 0.99366, 0.66201, 0.526022, 0.00202823, 0.532165, 0.973131, 0.653596, 0.551471, 0.760754, 0.0511451, 0.797115, 0.455992, 0.317481, 0.212322, 0.352279, 0.314062, 0.595491, 0.397062, 0.652924, 0.790962, 0.976547, 0.0622074, 0.33661, 0.646198, 0.542818, 0.281868, 0.203457, 0.652231, 0.123915, 0.501028, 0.480124, 0.160761, 0.134233, 0.743564, 0.415994, 0.288894, 0.833903, 0.712921, 0.727619, 0.64625, 0.225502, 0.291045, 0.905906, 0.528167, 0.742347, 0.486641, 0.335503, 0.766211, 0.338197, 0.937293, 0.367452, 0.207395, 0.375009, 0.355053, 0.961887, 0.240556, 0.525981, 0.0458107, 0.0874091, 0.612792, 0.0990322, 0.745701, 0.147858, 0.312751, 0.911464, 0.324989, 0.495886, 0.348204, 0.426207, 0.863553, 0.581139, 0.965369, 0.595424, 0.699875, 0.773731, 0.341878, 0.930402, 0.279704, 0.401378, 0.747993, 0.435297, 0.768118, 0.563954, 0.016211, 0.884873, 0.500864, 0.918371, 0.763598, 0.776229, 0.619362, 0.703753, 0.584146, 0.603731, 0.712628, 0.27401, 0.567779, 0.491112, 0.896256, 0.763065, 0.0339006, 0.848141, 0.6502, 0.73823, 0.541453, 0.350801, 0.0428536, 0.164055, 0.108277, 0.341676, 0.15516, 0.24938, 0.426811, 0.697442, 0.907769, 0.497783, 0.99617, 0.552364, 0.864926, 0.5084, 0.488835, 0.204708, 0.772011, 0.500959, 0.988587, 0.653905, 0.0344443, 0.518279, 0.231005, 0.618156, 0.50635, 0.58547, 0.416673, 0.876748, 0.318371, 0.708886, 0.49613, 0.700261, 0.93264, 0.116976, 0.486153, 0.192922, 0.85528, 0.86345, 0.520997, 0.02331, 0.458086, 0.223506, 0.577211, 0.552242, 0.0102861, 0.160216, 0.57318, 0.424467, 0.437013, 0.736506, 0.835531, 0.0998913, 0.0845583, 0.972808, 0.784317, 0.72042, 0.0886273, 0.42117, 0.395213, 0.234131, 0.885903, 0.169609, 0.451673, 0.0327804, 0.199422, 0.311461, 0.603402, 0.382815, 0.518431, 0.413673, 0.598206, 0.364313, 0.779445, 0.341969, 0.167242, 0.590968, 0.292988, 0.225162, 0.20739, 0.938427, 0.669011, 0.969483, 0.387452, 0.249334, 0.542592, 0.384693, 0.134744, 0.428328, 0.701529, 0.481345, 0.920091, 0.904572, 0.840509, 0.0919866, 0.206846, 0.852618, 0.584072, 0.955355, 0.741576, 0.629663, 0.612411, 0.667856, 0.845727, 0.675872, 0.594167, 0.975577, 0.8698, 0.158647, 0.703157, 0.584215, 0.00491956, 0.798266, 0.8218, 0.414095, 0.993723, 0.890489, 0.708743, 0.668226, 0.810432, 0.262654, 0.832021, 0.115476, 0.00390665, 0.362986, 0.492119, 0.870461, 0.269166, 0.172225, 0.564672, 0.400391, 0.740482, 0.906482, 0.328487, 0.989471, 0.151229, 0.859692, 0.25861, 0.0940253, 0.13692, 0.0757249, 0.998619, 0.842025, 0.322892, 0.286659, 0.381916, 0.985287, 0.515331, 0.916071, 0.528695, 0.211765, 0.390794, 0.496102, 0.12651, 0.0528892, 0.503706, 0.988945, 0.845423, 0.107962, 0.402534, 0.0852831, 0.066165, 0.829246, 0.828779, 0.536622, 0.289877, 0.872261, 0.524916, 0.931103, 0.00457239, 0.620804, 0.348598, 0.918016, 0.381111, 0.282309, 0.172538, 0.127281, 0.960613, 0.736746, 0.264226, 0.419735, 0.830129, 0.544679, 0.472383, 0.404834, 0.398699, 0.0316545, 0.892427, 0.50956, 0.457152, 0.529312, 0.9592, 0.888618, 0.804808, 0.159292, 0.436697, 0.209112, 0.422998, 0.426475, 0.663998, 0.292566, 0.161049, 0.703247, 0.495259, 0.343341, 0.251313, 0.77333, 0.0113886, 0.601211, 0.576168, 0.0706262, 0.360842, 0.647657, 0.856267, 0.411357, 0.908686, 0.35822, 0.325975, 0.825719, 0.765477, 0.801352, 0.203915, 0.63614, 0.228641, 0.770325, 0.946778, 0.818214, 0.914332, 0.905681, 0.352022, 0.994568, 0.614553, 0.952883, 0.335177, 0.926303, 0.969833, 0.0983308, 0.838996, 0.182769, 0.979836, 0.486662, 0.602633, 0.626398, 0.159378, 0.216179, 0.544848, 0.0878025, 0.244399, 0.546144, 0.966008, 0.621244, 0.96941, 0.603416, 0.33022, 0.803729, 0.289634, 0.259416, 0.931589, 0.638398, 0.0338544, 0.0435814, 0.257008, 0.812442, 0.727103, 0.126367, 0.682423, 0.458193, 0.00417282, 0.223973, 0.0692229, 0.62723, 0.0117099, 0.590087, 0.818927, 0.247285, 0.42548, 0.733347, 0.0664999, 0.39956, 0.883227, 0.695966, 0.816119, 0.0305324, 0.756018, 0.689714, 0.894324, 0.0645479, 0.196347, 0.155635, 0.672791, 0.344293, 0.423109, 0.415881, 0.204927, 0.665713, 0.579229, 0.658633, 0.845824, 0.985636, 0.426899, 0.807134, 0.839088, 0.0107139, 0.14249, 0.51986, 0.714971, 0.0845383, 0.571933, 0.590329, 0.107127, 0.438811, 0.165975, 0.76789, 0.290438, 0.705135, 0.026361, 0.529545, 0.823216, 0.388826, 0.615675, 0.517143, 0.566942, 0.703386, 0.444429, 0.6027, 0.200455, 0.722011, 0.422342, 0.181544, 0.279475, 0.582627, 0.498877, 0.42955, 0.426562, 0.103993, 0.285546, 0.414382, 0.265607, 0.541157, 0.223715, 0.138597, 0.608746, 0.470125, 0.985783, 0.150817, 0.46392, 0.000200871, 0.787561, 0.0966264, 0.348749, 0.645341, 0.560252, 0.170749, 0.285654, 0.0573061, 0.626963, 0.665299, 0.949342, 0.368927, 0.616642, 0.899843, 0.560864, 0.0500526, 0.636431, 0.609077, 0.221059, 0.944734, 0.83399, 0.197986, 0.102107, 0.304868, 0.99269, 0.393463, 0.547096, 0.749555, 0.866702, 0.54016, 0.761694, 0.00293374, 0.259535, 0.912372, 0.271655, 0.816248, 0.868964, 0.0294961, 0.104257, 0.86573, 0.276186, 0.707999, 0.92271, 0.841975, 0.526159, 0.534731, 0.685051, 0.563805, 0.538375, 0.00772071, 0.285702, 0.187482, 0.54118, 0.971558, 0.88197, 0.894442, 0.934236, 0.878159, 0.599847, 0.540383, 0.816625, 0.00306986, 0.708378, 0.447841, 0.0120822, 0.323399, 0.465694, 0.471394, 0.863878, 0.430542, 0.463848, 0.297583, 0.863157, 0.564637, 0.355597, 0.793509, 0.147592, 0.953117, 0.950615, 0.643658, 0.940714, 0.0628789, 0.205232, 0.204428, 0.969652, 0.767973, 0.0415497, 0.932636, 0.0573255, 0.733433, 0.350563, 0.903375, 0.719947, 0.911418, 0.0659568, 0.259685, 0.610348, 0.0463574, 0.554181, 0.940194, 0.651812, 0.196356, 0.344841, 0.834639, 0.430794, 0.953926, 0.465358, 0.739098, 0.26821, 0.378973, 0.690384, 0.581762, 0.270614, 0.797406, 0.42754, 0.290747, 0.979932, 0.654372, 0.354304, 0.0665159, 0.429663, 0.565186, 0.0834735, 0.404492, 0.835542, 0.110146, 0.231637, 0.0152121, 0.763023, 0.0616657, 0.450835, 0.10849, 0.300411, 0.931281, 0.498653, 0.688545, 0.78672, 0.464066, 0.291882, 0.311086, 0.482199, 0.275523, 0.0585518, 0.668633, 0.508012, 0.127602, 0.51531, 0.718507, 0.769994, 0.672421, 0.879333, 0.274856, 0.874205, 0.243628, 0.329747, 0.706719, 0.951337, 0.39424, 0.319537, 0.615233, 0.666551, 0.140004, 0.986185, 0.24362, 0.260255, 0.775704, 0.318598, 0.634543, 0.373432, 0.23914, 0.960406, 0.700363, 0.0150745, 0.207158, 0.0973178, 0.172616, 0.133483, 0.854305, 0.968142, 0.998083, 0.729599, 0.737585, 0.00674988, 0.0817041, 0.506241, 0.544573, 0.615566, 0.858829, 0.45843, 0.792255, 0.183437, 0.863698, 0.648547, 0.13791, 0.392648, 0.921829, 0.562101, 0.709357, 0.650223, 0.425849, 0.447496, 0.464585, 0.318584, 0.239279, 0.894132, 0.0399246, 0.574067, 0.00205177, 0.339859, 0.272871, 0.711183, 0.870697, 0.674962, 0.529911, 0.676338, 0.71056, 0.658444, 0.29523, 0.23069, 0.817284, 0.0576263, 0.555746, 0.868494, 0.0366979, 0.742614, 0.865596, 0.159675, 0.37778, 0.17525, 0.425312, 0.847687, 0.37265, 0.474997, 0.838556, 0.698778, 0.435983, 0.241735, 0.639332, 0.090232, 0.815012, 0.469081, 0.090894, 0.759303, 0.644909, 0.382755, 0.509077, 0.905721, 0.848911, 0.00579584, 0.517374, 0.314455, 0.090473, 0.73679, 0.666728, 0.961911, 0.990351, 0.33643, 0.0883509, 0.300408, 0.0702269, 0.844034, 0.569015, 0.465901, 0.0748921, 0.197839, 0.380249, 0.759736, 0.405091, 0.220558, 0.805229, 0.958237, 0.745353, 0.725116, 0.596741, 0.604463, 0.415037, 0.42541, 0.498128, 0.186665, 0.405051, 0.28792, 0.0203449, 0.195992, 0.921243, 0.191876, 0.818855, 0.975756, 0.748671, 0.813616, 0.987465, 0.082691, 0.231378, 0.199104, 0.202423, 0.367678, 0.291812, 0.763446, 0.986363, 0.865835, 0.776336, 0.964528, 0.451582, 0.281876, 0.82759, 0.804063, 0.020807, 0.0420121, 0.869471, 0.897517, 0.842594, 0.538692, 0.639519, 0.00635103, 0.939893, 0.668518, 0.521784, 0.58292, 0.00522094, 0.664122, 0.16847, 0.321834, 0.331613, 0.83081, 0.395113, 0.781049, 0.693139, 0.348966, 0.150701, 0.664904, 0.654168, 0.996648, 0.0939377, 0.724414, 0.937661, 0.560264, 0.319581, 0.762135, 0.0923492, 0.965276, 0.0243539, 0.100302, 0.244656, 0.531123, 0.71056, 0.166116, 0.469231, 0.210765, 0.206743, 0.962878, 0.607144, 0.305528, 0.453014, 0.727968, 0.176804, 0.116808, 0.00258623, 0.89623, 0.817662, 0.868491, 0.270113, 0.699267, 0.90892, 0.336316, 0.210581, 0.0204948, 0.791701, 0.31052, 0.24179, 0.553815, 0.590352, 0.723638, 0.912787, 0.402025, 0.36912, 0.141353, 0.351457, 0.0349154, 0.523278, 0.112241, 0.260141, 0.982615, 0.234799, 0.395018, 0.522477, 0.053424, 0.107475, 0.363252, 0.204558, 0.855529, 0.929576, 0.647918, 0.135676, 0.15198, 0.404128, 0.433395, 0.166823, 0.670806, 0.0906192, 0.851992, 0.694199, 0.671856, 0.597631, 0.20906, 0.179516, 0.0647193, 0.0296873, 0.834149, 0.136419, 0.706952, 0.664221, 0.548566, 0.401391, 0.526223, 0.224918, 0.445352, 0.0370809, 0.176695, 0.541017, 0.796263, 0.796275, 0.913017, 0.949191, 0.619724, 0.51641, 0.906705, 0.142056, 0.967786, 0.423085, 0.482451, 0.288789, 0.836869, 0.120046, 0.528131, 0.625834, 0.234306, 0.196148, 0.119733, 0.734559, 0.965229, 0.562937, 0.787852, 0.675926, 0.029867, 0.241398, 0.802881, 0.927945, 0.923412, 0.381762, 0.643686, 0.0761685, 0.838634, 0.467641, 0.681804, 0.63528, 0.653475, 0.975469, 0.380416, 0.320755, 0.993272, 0.548512, 0.135106, 0.923513, 0.465571, 0.3169, 0.167756, 0.257546, 0.433034, 0.739972, 0.960899, 0.608396, 0.930492, 0.735647, 0.463604, 0.362737, 0.884576, 0.926171, 0.0598129, 0.632085, 0.565815, 0.0310972, 0.752345, 0.818162, 0.308334, 0.175584, 0.750346, 0.0552021, 0.265004, 0.233168, 0.593114, 0.834025, 0.276204, 0.138598, 0.197715, 0.178756, 0.667517, 0.416278, 0.821277, 0.358993, 0.968456, 0.0335809, 0.266034, 0.882204, 0.522069, 0.630596, 0.211127, 0.740852, 0.747831, 0.0644943, 0.0345094, 0.329728, 0.41275, 0.21704, 0.490708, 0.985969, 0.392695, 0.907899, 0.643262, 0.0143452, 0.791734, 0.23178, 0.290934, 0.105063, 0.399584, 0.159166, 0.614385, 0.935482, 0.252265, 0.466793, 0.0633298, 0.622608, 0.764519, 0.392718, 0.438837, 0.389323, 0.591578, 0.989194, 0.527337, 0.660731, 0.889085, 0.619298, 0.600918, 0.379091, 0.741526, 0.0862965, 0.492049, 0.88669, 0.95967, 0.521622, 0.252513, 0.864143, 0.909911, 0.2173, 0.478902, 0.358323, 0.643247, 0.284693, 0.266228, 0.163657, 0.983907, 0.336515, 0.651207, 0.961555, 0.363472, 0.325315, 0.621677, 0.352404, 0.326053, 0.231271, 0.249802, 0.278977, 0.832877, 0.722816, 0.599307, 0.812224, 0.853521, 0.896083, 0.896791, 0.0556386, 0.532463, 0.0892749, 0.741247, 0.425154, 0.827661, 0.463396, 0.333345, 0.36799, 0.0731207, 0.998054, 0.756167, 0.985519, 0.155195, 0.574123, 0.128731, 0.15453, 0.663942, 0.15609, 0.647585, 0.497078, 0.138329, 0.20556, 0.707234, 0.0701173, 0.32703, 0.0736788, 0.151086, 0.034621, 0.775824, 0.395119, 0.491423, 0.811292, 0.555471, 0.399263, 0.896201, 0.168861, 0.580457, 0.837932, 0.670103, 0.050994, 0.293822, 0.124163, 0.339868, 0.979219, 0.544389, 0.519155, 0.508206, 0.184331, 0.584999, 0.730872, 0.980492, 0.536113, 0.616493, 0.275979, 0.0288866, 0.40827, 0.578146, 0.19725, 0.265708, 0.22907, 0.149651, 0.979306, 0.981751, 0.0337527, 0.940704, 0.636961, 0.66884, 0.397068, 0.600011, 0.322185, 0.247842, 0.903778, 0.465529, 0.0182291, 0.741215, 0.355892, 0.809661, 0.148362, 0.846179, 0.303348, 0.790928, 0.0170574, 0.607165, 0.876478, 0.00035118, 0.014497, 0.0108556, 0.919901, 0.994195, 0.163055, 0.90789, 0.909241, 0.701163, 0.157759, 0.389993, 0.65642, 0.604372, 0.822426, 0.741058, 0.516607, 0.996425, 0.672762, 0.20792, 0.565459, 0.693866, 0.289497, 0.925893, 0.928514, 0.86954, 0.775174, 0.112372, 0.134064, 0.43187, 0.779967, 0.741867, 0.813394, 0.928731, 0.498083, 0.917405, 0.498005, 0.789323, 0.586336, 0.44808, 0.104959, 0.827014, 0.229818, 0.888603, 0.847413, 0.940034, 0.593459, 0.431248, 0.566338, 0.367776, 0.802815, 0.564667, 0.703991, 0.836249, 0.214939, 0.29843, 0.843575, 0.548418, 0.00429634, 0.260532, 0.783796, 0.0827653, 0.909126, 0.753129, 0.112608, 0.600541, 0.664346, 0.23046, 0.743698, 0.327555, 0.151545, 0.700316, 0.315323, 0.643648, 0.580651, 0.121066, 0.592839, 0.484781, 0.467554, 0.179179, 0.604391, 0.717236, 0.745805, 0.502522, 0.0460628, 0.447133, 0.580186, 0.93037, 0.321131, 0.100553, 0.954835, 0.267758, 0.502147, 0.534792, 0.211809, 0.160501, 0.171858, 0.88894, 0.798534, 0.194293, 0.400821, 0.0234603, 0.119979, 0.824951, 0.360874, 0.518219, 0.415773, 0.45019, 0.455195, 0.585127, 0.256568, 0.204331, 0.414101, 0.69395, 0.2381, 0.261185, 0.209752, 0.0115052, 0.112926, 0.943212, 0.574441, 0.514057, 0.544136, 0.576757, 0.946525, 0.855984, 0.366236, 0.616032, 0.825127, 0.854987, 0.464268, 0.305881, 0.10641, 0.686624, 0.43191, 0.839187, 0.375332, 0.915516, 0.764687, 0.680906, 0.909116, 0.631644, 0.324785, 0.758552, 0.500855, 0.236844, 0.986931, 0.0211137, 0.695021, 0.901116, 0.308871, 0.216388, 0.304568, 0.0111088, 0.617964, 0.244016, 0.895608, 0.116573, 0.38365, 0.109429, 0.440777, 0.376023, 0.630833, 0.0729521, 0.827809, 0.150113, 0.87315, 0.281883, 0.115363, 0.0853128, 0.933364, 0.65708, 0.017312, 0.872395, 0.247909, 0.868631, 0.779587, 0.454693, 0.431712, 0.325233, 0.901397, 0.367187, 0.718744, 0.407726, 0.792426, 0.254828, 0.267451, 0.809714, 0.88461, 0.54456, 0.824247, 0.518043, 0.800778, 0.445437, 0.014163, 0.64314, 0.79269, 0.436548, 0.204399, 0.311823, 0.656984, 0.0499323, 0.662787, 0.174967, 0.701401, 0.922061, 0.436045, 0.884565, 0.992981, 0.412914, 0.295808, 0.601825, 0.948338, 0.0759658, 0.902624, 0.40913, 0.284306, 0.651176, 0.86046, 0.0900332, 0.412146, 0.613414, 0.501614, 0.118202, 0.679276, 0.254333, 0.797349, 0.865418, 0.727564, 0.891665, 0.00370642, 0.566895, 0.701209, 0.995844, 0.030836, 0.813926, 0.501887, 0.260956, 0.184355, 0.258789, 0.960773, 0.941786, 0.707603, 0.324272, 0.728184, 0.412306, 0.114169, 0.95476, 0.224615, 0.515423, 0.348148, 0.501832, 0.879398, 0.744902, 0.723606, 0.101973, 0.773845, 0.947844, 0.414223, 0.842809, 0.10853, 0.0228851, 0.672875, 0.807232, 0.0990737, 0.293034, 0.0116935, 0.294261, 0.71371, 0.566896, 0.665978, 0.0574669, 0.383927, 0.292232, 0.659186, 0.25795, 0.667451, 0.922412, 0.65384, 0.299946, 0.225055, 0.904578, 0.571749, 0.438771, 0.13227, 0.584159, 0.327093, 0.838427, 0.252241, 0.608643, 0.637982, 0.284738, 0.60947, 0.23709, 0.895966, 0.130962, 0.881189, 0.16436, 0.490026, 0.348695, 0.344268, 0.611604, 0.0924971, 0.659324, 0.258519, 0.323436, 0.218884, 0.717656, 0.563147, 0.491481, 0.638029, 0.187785, 0.527152, 0.409818, 0.0796029, 0.550197, 0.106779, 0.863336, 0.89693, 0.672314, 0.461292, 0.534388, 0.838775, 0.760253, 0.794555, 0.175541, 0.46315, 0.0430115, 0.292334, 0.409738, 0.534336, 0.607629, 0.259045, 0.853545, 0.822796, 0.438134, 0.277195, 0.375651, 0.692985, 0.707428, 0.295825, 0.974419, 0.556508, 0.493008, 0.456633, 0.441367, 0.91749, 0.93552, 0.71973, 0.381575, 0.108175, 0.287838, 0.723426, 0.688044, 0.409911, 0.826705, 0.399584, 0.045195, 0.522587, 0.974563, 0.560133, 0.165759, 0.223891, 0.104598, 0.596698, 0.350797, 0.751825, 0.806949, 0.0926424, 0.9807, 0.234214, 0.476828, 0.627716, 0.334558, 0.659462, 0.292002, 0.215695, 0.478504, 0.842043, 0.208658, 0.574693, 0.706193, 0.182325, 0.514058, 0.742052, 0.430874, 0.655785, 0.776095, 0.427489, 0.573386, 0.132211, 0.724419, 0.374021, 0.642952, 0.509729, 0.174314, 0.152859, 0.840252, 0.820897, 0.913226, 0.760157, 0.289457, 0.784954, 0.302112, 0.801207, 0.453753, 0.789927, 0.649221, 0.528698, 0.871934, 0.72262, 0.880094, 0.514637, 0.905289, 0.822404, 0.475876, 0.145079, 0.277701, 0.582699, 0.0200736, 0.699082, 0.623793, 0.549057, 0.379624, 0.984244, 0.970339, 0.497237, 0.381554, 0.359354, 0.00120478, 0.719147, 0.286087, 0.465576, 0.0458521, 0.667311, 0.509316, 0.871826, 0.437869, 0.568979, 0.380274, 0.165264, 0.59324, 0.399523, 0.182252, 0.345438, 0.586487, 0.114168, 0.84029, 0.208268, 0.782768, 0.271256, 0.813751, 0.778691, 0.386482, 0.445026, 0.344706, 0.295499, 0.917742, 0.017588, 0.442123, 0.89954, 0.651926, 0.6297, 0.0820331, 0.29287, 0.0730486, 0.469891, 0.930979, 0.751474, 0.914331, 0.540801, 0.561634, 0.848007, 0.373144, 0.313446, 0.0753001, 0.970079, 0.561994, 0.239609, 0.536868, 0.315583, 0.554862, 0.756354, 0.145848, 0.666259, 0.124349, 0.31953, 0.438672, 0.27094, 0.711085, 0.531289, 0.877004, 0.265989, 0.631045, 0.88132, 0.685856, 0.261297, 0.496775, 0.710571, 0.104709, 0.498863, 0.355969, 0.610158, 0.17301, 0.978776, 0.750499, 0.115035, 0.918091, 0.402919, 0.634628, 0.852173, 0.406181, 0.798554, 0.621079, 0.824542, 0.0592027, 0.792443, 0.931727, 0.218676, 0.739214, 0.680902, 0.662684, 0.584827, 0.0308682, 0.753073, 0.629906, 0.961798, 0.0154862, 0.509855, 0.50579, 0.154932, 0.445066, 0.797666, 0.0980351, 0.381174, 0.610172, 0.672341, 0.132992, 0.622815, 0.452504, 0.857514, 0.747917, 0.783866, 0.236015, 0.615881, 0.34953, 0.474907, 0.569256, 0.589659, 0.98423, 0.13752, 0.333018, 0.357911, 0.480973, 0.0646463, 0.793046, 0.644213, 0.974062, 0.707243, 0.273168, 0.491179, 0.548453, 0.508097, 0.322258, 0.719144, 0.219058, 0.254633, 0.452233, 0.763223, 0.21776, 0.850223, 0.575237, 0.776773, 0.796148, 0.292721, 0.547291, 0.34993, 0.540902, 0.247358, 0.632989, 0.658463, 0.648706, 0.468378, 0.41613, 0.0584094, 0.458238, 0.49945, 0.368629, 0.158795, 0.86675, 0.187539, 0.247226, 0.314224, 0.259569, 0.837135, 0.0354982, 0.312818, 0.674403, 0.265776, 0.682042, 0.259623, 0.933283, 0.912524, 0.619224, 0.472372, 0.474608, 0.38423, 0.760945, 0.220489, 0.783338, 0.00802285, 0.423839, 0.782985, 0.724448, 0.947651, 0.272443, 0.459552, 0.041788, 0.183062, 0.965342, 0.190206, 0.84062, 0.274621, 0.885556, 0.550416, 0.154001, 0.186097, 0.855902, 0.673944, 0.470926, 0.960764, 0.148265, 0.484413, 0.363845, 0.869619, 0.376051, 0.768723, 0.25102, 0.508597, 0.368859, 0.313424, 0.297966, 0.124184, 0.526412, 0.100375, 0.0850555, 0.209241, 0.985646, 0.467479, 0.741716, 0.880919, 0.239868, 0.125569, 0.766085, 0.414694, 0.155826, 0.661832, 0.898435, 0.32218, 0.182857, 0.588117, 0.905859, 0.222751, 0.713234, 0.960351, 0.570073, 0.26031, 0.501943, 0.0928177, 0.993911, 0.193006, 0.664554, 0.955191, 0.589961, 0.230473, 0.584139, 0.324643, 0.764747, 0.783914, 0.371301, 0.633118, 0.312599, 0.821442, 0.867296, 0.828298, 0.789692, 0.755405, 0.748992, 0.628563, 0.901995, 0.48306, 0.0464854, 0.0322784, 0.96636, 0.974842, 0.0860964, 0.440699, 0.161384, 0.865728, 0.0869808, 0.797345, 0.517103, 0.436557, 0.192385, 0.0218754, 0.701476, 0.0983975, 0.165935, 0.0729489, 0.661953, 0.124412, 0.973386, 0.526955, 0.710206, 0.917344, 0.944149, 0.568388, 0.933564, 0.286672, 0.980303, 0.907433, 0.875405, 0.743237, 0.402325, 0.0567592, 0.832722, 0.179377, 0.801224, 0.883203, 0.381213, 0.0258982, 0.117356, 0.960031, 0.984689, 0.625665, 0.0881564, 0.115545, 0.0249928, 0.497614, 0.234678, 0.227404, 0.400364, 0.233352, 0.585983, 0.946101, 0.717634, 0.938645, 0.923234, 0.626302, 0.755186, 0.822275, 0.931542, 0.0205411, 0.278447, 0.635083, 0.13394, 0.555069, 0.350612, 0.128086, 0.889004, 0.676447, 0.636477, 0.225248, 0.556167, 0.377751, 0.574902, 0.424374, 0.253218, 0.60506, 0.726014, 0.384679, 0.380904, 0.57604, 0.176138, 0.613727, 0.88269, 0.620452, 0.942352, 0.559772, 0.914514, 0.0597413, 0.783225, 0.124257, 0.147811, 0.99078, 0.22325, 0.0241154, 0.308585, 0.462974, 0.550367, 0.949106, 0.580759, 0.253475, 0.758766, 0.7966, 0.801193, 0.537815, 0.148124, 0.958577, 0.370819, 0.877432, 0.271177, 0.61121, 0.169104, 0.279981, 0.721685, 0.424901, 0.462961, 0.74627, 0.537585, 0.869691, 0.420511, 0.458058, 0.799109, 0.344508, 0.169611, 0.0256076, 0.819881, 0.468481, 0.382126, 0.576242, 0.328457, 0.2908, 0.92422, 0.246153, 0.174499, 0.162325, 0.848084, 0.813024, 0.598717, 0.081141, 0.699845, 0.616717, 0.427305, 0.258407, 0.812078, 0.599774, 0.441849, 0.871452, 0.921642, 0.0925834, 0.663771, 0.806246, 0.0799521, 0.53988, 0.802581, 0.822449, 0.227303, 0.629688, 0.769725, 0.6312, 0.776404, 0.0563044, 0.668515, 0.10632, 0.482832, 0.664467, 0.17943, 0.155185, 0.498768, 0.624199, 0.891363, 0.413369, 0.329932, 0.972195, 0.919222, 0.0372321, 0.172684, 0.962581, 0.176423, 0.655037, 0.535664, 0.0590107, 0.150341, 0.532048, 0.327029, 0.119509, 0.288328, 0.421066, 0.550553, 0.0739355, 0.489525, 0.29824, 0.0957491, 0.26151, 0.2643, 0.13023, 0.0565316, 0.589529, 0.963704, 0.896324, 0.778048, 0.125465, 0.716692, 0.737858, 0.397445, 0.913826, 0.144997, 0.371797, 0.783237, 0.038625, 0.305142, 0.445822, 0.352947, 0.940223, 0.519356, 0.119558, 0.221171, 0.752677, 0.465037, 0.433192, 0.951326, 0.00174407, 0.000852478, 0.326694, 0.836998, 0.551499, 0.290006, 0.938063, 0.742529, 0.98151, 0.777035, 0.258349, 0.673026, 0.963895, 0.179765, 0.396741, 0.528501, 0.282647, 0.77735, 0.0371651, 0.905108, 0.540387, 0.0731417, 0.626844, 0.594055, 0.287718, 0.793243, 0.668974, 0.387761, 0.83005, 0.682245, 0.707271, 0.934249, 0.774444, 0.538811, 0.204792, 0.475236, 0.778051, 0.368142, 0.819584, 0.583842, 0.114981, 0.819753, 0.425623, 0.982429, 0.492697, 0.686498, 0.461096, 0.90238, 0.202892, 0.490347, 0.322927, 0.202239, 0.297956, 0.951061, 0.130693, 0.694167, 0.553036, 0.839263, 0.694583, 0.422681, 0.703303, 0.639276, 0.407163, 0.599419, 0.951824, 0.525206, 0.75019, 0.106609, 0.0389167, 0.489264, 0.225616, 0.0821625, 0.293815, 0.0319412, 0.655122, 0.168102, 0.81337, 0.806153, 0.802901, 0.660158, 0.00617115, 0.109757, 0.62557, 0.0245337, 0.311922, 0.398968, 0.480767, 0.580234, 0.680186, 0.824447, 0.775051, 0.112181, 0.575273, 0.868062, 0.93091, 0.615659, 0.186859, 0.231254, 0.66266, 0.168416, 0.615304, 0.612983, 0.911719, 0.498838, 0.955301, 0.993775, 0.40017, 0.540156, 0.873754, 0.0377319, 0.582286, 0.444224, 0.990661, 0.601351, 0.746164, 0.840231, 0.9379, 0.548204, 0.78896, 0.458155, 0.309218, 0.666261, 0.284855, 0.622254, 0.457914, 0.921579, 0.74251, 0.636525, 0.644134, 0.774124, 0.15566, 0.889489, 0.743138, 0.9135, 0.477348, 0.605992, 0.57831, 0.466674, 0.752416, 0.877237, 0.278309, 0.753585, 0.871845, 0.901358, 0.0586715, 0.434308, 0.117971, 0.755632, 0.00294837, 0.566496, 0.246941, 0.53662, 0.478259, 0.974853, 0.556342, 0.00517481, 0.523726, 0.684089, 0.739755, 0.486899, 0.544261, 0.264827, 0.877572, 0.87167, 0.262036, 0.139675, 0.515183, 0.157899, 0.913045, 0.798245, 0.0503126, 0.505807, 0.983327, 0.705224, 0.517085, 0.261182, 0.0446573, 0.227707, 0.352375, 0.0515031, 0.754243, 0.698194, 0.180565, 0.439551, 0.83348, 0.670013, 0.237351, 0.609419, 0.397373, 0.576492, 0.961343, 0.719049, 0.927943, 0.989281, 0.34384, 0.787242, 0.538397, 0.347012, 0.0220672, 0.423566, 0.907935, 0.477733, 0.20742, 0.859281, 0.117473, 0.909488, 0.247089, 0.553861, 0.928132, 0.89112, 0.816372, 0.0238718, 0.752407, 0.438752, 0.122816, 0.665924, 0.277893, 0.554107, 0.284287, 0.70918, 0.297723, 0.260358, 0.0712148, 0.848991, 0.49641, 0.440257, 0.628057, 0.124644, 0.100055, 0.380851, 0.622258, 0.657038, 0.901209, 0.123963, 0.841385, 0.303333, 0.09721, 0.884663, 0.714303, 0.46114, 0.545124, 0.780385, 0.316296, 0.680153, 0.115062, 0.502013, 0.552295, 0.796584, 0.566508, 0.930178, 0.52719, 0.801343, 0.0935308, 0.27279, 0.595946, 0.174402, 0.770938, 0.322567, 0.170058, 0.970148, 0.757813, 0.0681377, 0.0450165, 0.602497, 0.782329, 0.950679, 0.782467, 0.0432937, 0.291854, 0.809315, 0.178888, 0.423167, 0.435534, 0.359823, 0.428627, 0.333091, 0.124443, 0.350348, 0.191246, 0.617864, 0.799096, 0.426804, 0.772329, 0.43208, 0.906347, 0.257781, 0.716487, 0.180127, 0.623993, 0.672109, 0.239313, 0.488359, 0.479487, 0.29074, 0.392749, 0.827346, 0.705263, 0.265863, 0.982821, 0.989852, 0.37734, 0.392601, 0.534571, 0.376238, 0.962671, 0.740355, 0.154218, 0.866869, 0.60661, 0.471131, 0.789162, 0.679582, 0.818826, 0.519382, 0.199361, 0.454289, 0.0818061, 0.67688, 0.430039, 0.215616, 0.812701, 0.776465, 0.243733, 0.461079, 0.424431, 0.64718, 0.867117, 0.639368, 0.455398, 0.363037, 0.137118, 0.754838, 0.932655, 0.0862599, 0.699841, 0.377795, 0.570325, 0.251683, 0.547029, 0.0242767, 0.371165, 0.55267, 0.869402, 0.0202103, 0.994045, 0.360752, 0.619197, 0.0180576, 0.56193, 0.957328, 0.246113, 0.868871, 0.242305, 0.546781, 0.906181, 0.643265, 0.433022, 0.663056, 0.0471264, 0.446656, 0.0022702, 0.666057, 0.0669204, 0.215709, 0.493289, 0.904332, 0.385009, 0.334148, 0.0627965, 0.954187, 0.0200881, 0.443694, 0.880873, 0.266442, 0.771994, 0.950973, 0.605418, 0.636895, 0.543338, 0.908259, 0.706086, 0.777986, 0.744501, 0.3056, 0.379276, 0.178968, 0.0348583, 0.658162, 0.24641, 0.966883, 0.961268, 0.656626, 0.415952, 0.993531, 0.974672, 0.412589, 0.347602, 0.820219, 0.254617, 0.562052, 0.645303, 0.0206252, 0.494782, 0.459434, 0.484668, 0.243249, 0.657745, 0.54916, 0.704609, 0.900557, 0.385821, 0.309218, 0.685758, 0.518557, 0.778011, 0.914133, 0.619028, 0.206377, 0.844328, 0.299949, 0.630885, 0.407831, 0.305057, 0.828275, 0.171423, 0.639153, 0.0211753, 0.484988, 0.26194, 0.631163, 0.913255, 0.450585, 0.715113, 0.825757, 0.0933041, 0.10379, 0.601412, 0.444863, 0.439811, 0.783182, 0.177187, 0.693553, 0.554622, 0.612014, 0.224615, 0.983296, 0.288059, 0.101529, 0.64367, 0.559435, 0.682705, 0.12073, 0.18114, 0.131592, 0.923007, 0.447648, 0.557072, 0.801549, 0.0532496, 0.793354, 0.937405, 0.731906, 0.112107, 0.783417, 0.740857, 0.542819, 0.562909, 0.499708, 0.666301, 0.0777642, 0.0500464, 0.938406, 0.457906, 0.857416, 0.494227, 0.53519, 0.192868, 0.175715, 0.309725, 0.691308, 0.483656, 0.779537, 0.798791, 0.794647, 0.71655, 0.133094, 0.732047, 0.797287, 0.522583, 0.764146, 0.715243, 0.4782, 0.25779, 0.605541, 0.235435, 0.743776, 0.945808, 0.663589, 0.965508, 0.6862, 0.640684, 0.536796, 0.94945, 0.680628, 0.916401, 0.0312525, 0.00242753, 0.610207, 0.261788, 0.0549341, 0.253116, 0.882896, 0.521907, 0.222643, 0.509067, 0.0546337, 0.445881, 0.534023, 0.690115, 0.714786, 0.613419, 0.524532, 0.374039, 0.868862, 0.841833, 0.580182, 0.626474, 0.204511, 0.137264, 0.232003, 0.747401, 0.189743, 0.297985, 0.714165, 0.711, 0.272648, 0.857174, 0.692015, 0.361292, 0.960424, 0.8561, 0.474445, 0.490332, 0.784748, 0.606424, 0.602914, 0.0474436, 0.699929, 0.0130786, 0.0139364, 0.864881, 0.529146, 0.708899, 0.654413, 0.919844, 0.40379, 0.201353, 0.0891713, 0.893179, 0.602878, 0.580059, 0.94724, 0.837759, 0.140837, 0.850607, 0.0862325, 0.706289, 0.569529, 0.452111, 0.4408, 0.936718, 0.432451, 0.378841, 0.970505, 0.46226, 0.642439, 0.329122, 0.129285, 0.868897, 0.245408, 0.75177, 0.0482141, 0.691092, 0.305157, 0.142369, 0.111204, 0.760218, 0.533274, 0.705933, 0.0305452, 0.813882, 0.905629, 0.0983319, 0.153983, 0.449431, 0.583974, 0.084071, 0.953052, 0.0759673, 0.133519, 0.871546, 0.0149097, 0.362542, 0.243673, 0.902765, 0.596286, 0.496029, 0.419529, 0.178434, 0.544694, 0.572879, 0.00291786, 0.885841, 0.851934, 0.841815, 0.9137, 0.516152, 0.720424, 0.965318, 0.596111, 0.796458, 0.585497, 0.295585, 0.60769, 0.350821, 0.54872, 0.992727, 0.632096, 0.448442, 0.705593, 0.582052, 0.217162, 0.34433, 0.82011, 0.408773, 0.224744, 0.859523, 0.238972, 0.430238, 0.425408, 0.885283, 0.924164, 0.986667, 0.152407, 0.093156, 0.997408, 0.90935, 0.358718, 0.412118, 0.172524, 0.8443, 0.0170455, 0.329667, 0.237855, 0.220471, 0.746387, 0.886045, 0.902062, 0.104344, 0.672009, 0.184057, 0.754634, 0.58176, 0.252119, 0.312642, 0.700702, 0.583266, 0.67987, 0.253873, 0.790255, 0.538543, 0.536032, 0.817753, 0.181572, 0.620293, 0.442388, 0.0175395, 0.0635097, 0.939067, 0.834639, 0.341639, 0.295838, 0.551145, 0.846727, 0.656249, 0.89565, 0.187729, 0.4568, 0.180518, 0.078222, 0.594297, 0.377796, 0.828102, 0.381405, 0.674002, 0.695807, 0.870921, 0.330099, 0.488697, 0.594359, 0.964025, 0.824489, 0.611639, 0.569748, 0.171683, 0.828723, 0.672401, 0.319036, 0.589223, 0.335221, 0.899901, 0.670486, 0.648361, 0.693741, 0.0196683, 0.814988, 0.197128, 0.823435, 0.613918, 0.0564868, 0.538383, 0.543875, 0.43771, 0.554109, 0.425805, 0.924813, 0.526049, 0.211858, 0.449276, 0.215117, 0.311793, 0.729418, 0.695139, 0.6163, 0.0563601, 0.335898, 0.283512, 0.304323, 0.415524, 0.436292, 0.926189, 0.123186, 0.0775493, 0.914466, 0.491747, 0.699727, 0.534681, 0.151101, 0.790599, 0.910126, 0.616692, 0.0518067, 0.150926, 0.760992, 0.974495, 0.454028, 0.122438, 0.0878844, 0.584389, 0.823148, 0.242497, 0.543378, 0.00668937, 0.604642, 0.744074, 0.386286, 0.665456, 0.354583, 0.903609, 0.672396, 0.443259, 0.41297, 0.209507, 0.700784, 0.883033, 0.161942, 0.0380805, 0.547087, 0.603664, 0.227137, 0.786679, 0.991841, 0.802047, 0.958698, 0.834265, 0.0367579, 0.192053, 0.586892, 0.352888, 0.578534, 0.350098, 0.195541, 0.604039, 0.854957, 0.213435, 0.681606, 0.867585, 0.667161, 0.309064, 0.614989, 0.589832, 0.559675, 0.948118, 0.394093, 0.268181, 0.240831, 0.957907, 0.16221, 0.573655, 0.245809, 0.393561, 0.173222, 0.220485, 0.0905068, 0.976427, 0.553997, 0.674146, 0.522876, 0.693774, 0.422856, 0.271173, 0.590398, 0.206753, 0.320659, 0.0796568, 0.207148, 0.722146, 0.563162, 0.490106, 0.174794, 0.587179, 0.554677, 0.183096, 0.372976, 0.209802, 0.662634, 0.455443, 0.970574, 0.585647, 0.927992, 0.422745, 0.641704, 0.0534836, 0.248369, 0.95498, 0.420947, 0.130937, 0.819082, 0.861819, 0.336658, 0.835567, 0.833752, 0.182832, 0.0678623, 0.491491, 0.107036, 0.537015, 0.313987, 0.611333, 0.648266, 0.226446, 0.570042, 0.212956, 0.493341, 0.0463949, 0.153225, 0.309417, 0.349475, 0.484731, 0.619564, 0.30544, 0.014575, 0.433738, 0.696053, 0.336016, 0.566659, 0.894815, 0.579978, 0.0669475, 0.428598, 0.892975, 0.0402705, 0.785657, 0.94177, 0.091456, 0.233186, 0.196609, 0.233832, 0.881768, 0.639201, 0.908186, 0.84707, 0.0163121, 0.298263, 0.168425, 0.226827, 0.820643, 0.908381, 0.61557, 0.211805, 0.780831, 0.194359, 0.0705504, 0.582305, 0.732502, 0.985155, 0.0436473, 0.00890268, 0.916767, 0.429273, 0.252931, 0.614374, 0.145934, 0.670483, 0.549671, 0.785289, 2.93743e-05, 0.137783, 0.938396, 0.175775, 0.414527, 0.237105, 0.241415, 0.646765, 0.457782, 0.0118686, 0.262429, 0.938411, 0.667787, 0.637551, 0.242764, 0.0024736, 0.393944, 0.857581, 0.432828, 0.68576, 0.462804, 0.464417, 0.127953, 0.40975, 0.308381, 0.92354, 0.341217, 0.369738, 0.819888, 0.0619571, 0.464809, 0.180899, 0.893546, 0.719092, 0.4782, 0.195465, 0.524857, 0.910797, 0.418687, 0.676008, 0.722386, 0.382214, 0.266871, 0.353728, 0.689718, 0.343171, 0.349328, 0.00456414, 0.23785, 0.777065, 0.130103, 0.553448, 0.958773, 0.583879, 0.105877, 0.297427, 0.706365, 0.0778059, 0.443982, 0.50586, 0.865588, 0.653115, 0.160897, 0.544656, 0.785115, 0.329742, 0.37091, 0.890802, 0.946412, 0.447079, 0.904402, 0.441834, 0.770383, 0.351896, 0.873653, 0.634946, 0.257757, 0.108805, 0.732341, 0.284968, 0.428779, 0.927488, 0.275254, 0.569032, 0.287706, 0.29044, 0.819326, 0.344959, 0.146929, 0.158939, 0.765505, 0.881878, 0.642616, 0.670341, 0.627242, 0.329185, 0.722018, 0.0301519, 0.337114, 0.653654, 0.842816, 0.0860576, 0.407936, 0.137672, 0.670754, 0.528559, 0.23469, 0.936103, 0.0203531, 0.475141, 0.117577, 0.533649, 0.870852, 0.667815, 0.73863, 0.137096, 0.133825, 0.0636257, 0.559701, 0.841388, 0.535773, 0.453817, 0.433776, 0.0598496, 0.513973, 0.5093, 0.0180754, 0.98395, 0.833081, 0.485592, 0.811734, 0.18781, 0.580459, 0.076301, 0.350521, 0.574399, 0.332405, 0.183742, 0.396749, 0.475677, 0.0206206, 0.206502, 0.414385, 0.161111, 0.546898, 0.233877, 0.824058, 0.654947, 0.570591, 0.254589, 0.623835, 0.667015, 0.199154, 0.406655, 0.432944, 0.797167, 0.628682, 0.061103, 0.793747, 0.629969, 0.222357, 0.758716, 0.961138, 0.367806, 0.252356, 0.805622, 0.681745, 0.414079, 0.42583, 0.616815, 0.510683, 0.856474, 0.186378, 0.741048, 0.171764, 0.208999, 0.924836, 0.232717, 0.811693, 0.942641, 0.745966, 0.708809, 0.301825, 0.717967, 0.370973, 0.833606, 0.32192, 0.334108, 0.569589, 0.397638, 0.743032, 0.724037, 0.422332, 0.672696, 0.437039, 0.294883, 0.797207, 0.974999, 0.0105471, 0.817756, 0.673138, 0.745646, 0.781353, 0.747134, 0.788207, 0.339826, 0.342609, 0.892701, 0.543509, 0.812048, 0.703814, 0.245834, 0.0604217, 0.66825, 0.736493, 0.914088, 0.0879902, 0.339839, 0.695309, 0.754951, 0.648037, 0.616954, 0.114367, 0.332567, 0.708419, 0.458937, 0.151418, 0.599519, 0.363702, 0.454054, 0.581712, 0.785629, 0.989615, 0.760428, 0.240069, 0.00655536, 0.944711, 0.433271, 0.902965, 0.901049, 0.275896, 0.499283, 0.79581, 0.537644, 0.678685, 0.730111, 0.805495, 0.488374, 0.190397, 0.611975, 0.914667, 0.560022, 0.458485, 0.173837, 0.7671, 0.756481, 0.342856, 0.809272, 0.835281, 0.817596, 0.716775, 0.798158, 0.285878, 0.813139, 0.776708, 0.381543, 0.184735, 0.848678, 0.666811, 0.368846, 0.0221904, 0.0784168, 0.973761, 0.304635, 0.563078, 0.444378, 0.529288, 0.950592, 0.366114, 0.461055, 0.994619, 0.461829, 0.025944, 0.113505, 0.253799, 0.439465, 0.262466, 0.63443, 0.295602, 0.130677, 0.791247, 0.232451, 0.326196, 0.348603, 0.100527, 0.14841, 0.16522, 0.919308, 0.379063, 0.44667, 0.824501, 0.379424, 0.416885, 0.182292, 0.713288, 0.597596, 0.569307, 0.800017, 0.68274, 0.455561, 0.238474, 0.300262, 0.169274, 0.753954, 0.38291, 0.579325, 0.375995, 0.470719, 0.0681019, 0.785805, 0.18757, 0.0616957, 0.17398, 0.996339, 0.218284, 0.434152, 0.0494018, 0.535415, 0.763225, 0.602223, 0.875339, 0.075351, 0.455301, 0.238316, 0.319386, 0.71196, 0.910622, 0.307543, 0.130202, 0.449451, 0.525929, 0.5612, 0.95917, 0.223535, 0.839161, 0.265646, 0.0342633, 0.690053, 0.540579, 0.623804, 0.0897791, 0.510019, 0.953491, 0.0901769, 0.252437, 0.0026872, 0.554937, 0.920422, 0.799388, 0.848727, 0.217254, 0.380818, 0.221324, 0.0738856, 0.000122714, 0.437933, 0.52941, 0.299864, 0.785771, 0.0549682, 0.888237, 0.0667256, 0.232171, 0.465281, 0.0760895, 0.41759, 0.533014, 0.645651, 0.224713, 0.75912, 0.6478, 0.237161, 0.922038, 0.216678, 0.39973, 0.344895, 0.339365, 0.407429, 0.976207, 0.130966, 0.87633, 0.170724, 0.384754, 0.2943, 0.948898, 0.931034, 0.495715, 0.971691, 0.244995, 0.377086, 0.568675, 0.458, 0.38225, 0.502437, 0.205303, 0.342002, 0.692816, 0.675023, 0.356523, 0.342073, 0.385802, 0.501364, 0.5792, 0.474233, 0.998386, 0.781904, 0.954279, 0.906955, 0.253836, 0.148687, 0.506651, 0.868825, 0.17903, 0.47435, 0.554572, 0.0868281, 0.280746, 0.573773, 0.565284, 0.107667, 0.828001, 0.61411, 0.991063, 0.376834, 0.695195, 0.214454, 0.927982, 0.0260029, 0.447002, 0.27579, 0.180025, 0.540228, 0.373212, 0.231209, 0.639406, 0.743067, 0.980555, 0.804219, 0.020596, 0.527276, 0.155662, 0.0171594, 0.0934418, 0.359313, 0.632162, 0.635465, 0.741116, 0.0324823, 0.0609536, 0.143551, 0.332689, 0.327101, 0.656394, 0.743249, 0.824207, 0.838604, 0.206603, 0.60942, 0.0466874, 0.34153, 0.396803, 0.0863154, 0.938587, 0.115326, 0.832928, 0.76383, 0.0477996, 0.589591, 0.517357, 0.00153371, 0.230895, 0.0164503, 0.857105, 0.109765, 0.568341, 0.876423, 0.191798, 0.469835, 0.45924, 0.355071, 0.418041, 0.0948443, 0.829732, 0.661499, 0.506711, 0.544885, 0.31725, 0.107178, 0.47551, 0.502825, 0.387776, 0.622294, 0.426275, 0.0617072, 0.55118, 0.5217, 0.55258, 0.61173, 0.928234, 0.507576, 0.727792, 0.374178, 0.818812, 0.0222083, 0.323577, 0.947573, 0.68111, 0.996513, 0.863556, 0.864499, 0.981838, 0.418183, 0.874134, 0.650143, 0.326361, 0.295483, 0.57914, 0.543618, 0.632917, 0.775706, 0.746207, 0.849637, 0.429899, 0.351495, 0.268899, 0.767588, 0.714059, 0.499168, 0.469066, 0.25488, 0.93542, 0.744678, 0.376386, 0.821541, 0.0215523, 0.726469, 0.999386, 0.323576, 0.116576, 0.791993, 0.967267, 0.33244, 0.929941, 0.655886, 0.850531, 0.929637, 0.652231, 0.147383, 0.313992, 0.5893, 0.327567, 0.186722, 0.416446, 0.23665, 0.068951, 0.0902886, 0.206437, 0.466131, 0.994251, 0.640948, 0.477065, 0.625764, 0.114972, 0.082417, 0.780419, 0.093996, 0.328218, 0.934135, 0.660206, 0.805122, 0.547285, 0.413155, 0.851648, 0.958469, 0.105686, 0.999529, 0.764199, 0.232699, 0.534876, 0.900669, 0.336866, 0.117499, 0.737167, 0.410377, 0.24998, 0.416482, 0.293996, 0.504759, 0.156092, 0.767367, 0.256123, 0.372485, 0.149028, 0.158947, 0.911312, 0.5435, 0.558564, 0.644299, 0.991434, 0.515469, 0.911864, 0.357269, 0.481236, 0.132541, 0.801901, 0.874397, 0.375827, 0.273718, 0.778889, 0.266327, 0.201597, 0.941098, 0.402948, 0.0144779, 0.79957, 0.176809, 0.126298, 0.441617, 0.883792, 0.9105, 0.778926, 0.438753, 0.118097, 0.724643, 0.383404, 0.059517, 0.66822, 0.0947962, 0.314721, 0.184681, 0.674995, 0.0978911, 0.369492, 0.0086417, 0.0186125, 0.687743, 0.282032, 0.1884, 0.823876, 0.262698, 0.618405, 0.847498, 0.34163, 0.745071, 0.650708, 0.34235, 0.62163, 0.851984, 0.445671, 0.215015, 0.460495, 0.430149, 0.307774, 0.799374, 0.199636, 0.103411, 0.158742, 0.194763, 0.366357, 0.587163, 0.991611, 0.536064, 0.967775, 0.683945, 0.0165994, 0.685153, 0.169493, 0.820166, 0.674759, 0.0652209, 0.617074, 0.0719827, 0.733189, 0.577215, 0.548849, 0.214184, 0.329439, 0.489709, 0.240344, 0.773691, 0.462625, 0.832751, 0.49877, 0.905665, 0.300145, 0.227945, 0.319922, 0.796124, 0.336471, 0.26384, 0.172915, 0.301686, 0.907982, 0.669673, 0.618241, 0.461905, 0.685511, 0.0330184, 0.353584, 0.756152, 0.907153, 0.45808, 0.762273, 0.969434, 0.197383, 0.530418, 0.646489, 0.601396, 0.929437, 0.279697, 0.942927, 0.72955, 0.855701, 0.834375, 0.699459, 0.0306069, 0.459645, 0.19041, 0.0968616, 0.646082, 0.401555, 0.0303573, 0.729982, 0.715356, 0.169817, 0.32259, 0.368546, 0.481556, 0.887325, 0.815447, 0.210569, 0.114777, 0.244363, 0.563674, 0.0993083, 0.926382, 0.579515, 0.604385, 0.165098, 0.978543, 0.986523, 0.0502906, 0.0766624, 0.539851, 0.403884, 0.182008, 0.389088, 0.273846, 0.858585, 0.593202, 0.929929, 0.940485, 0.970789, 0.168345, 0.593503, 0.722867, 0.559876, 0.0913571, 0.364557, 0.657325, 0.481733, 0.175144, 0.893575, 0.224465, 0.149952, 0.715092, 0.367577, 0.661431, 0.0943229, 0.887027, 0.96493, 0.493631, 0.0305581, 0.245535, 0.816682, 0.137657, 0.864905, 0.0327525, 0.841194, 0.0310711, 0.298508, 0.151638, 0.0939599, 0.760116, 0.867874, 0.825902, 0.28888, 0.0181206, 0.107323, 0.0196653, 0.676588, 0.96792, 0.245701, 0.417712, 0.215411, 0.794073, 0.753198, 0.866174, 0.757581, 0.160835, 0.962818, 0.368402, 0.757416, 0.317145, 0.945184, 0.523144, 0.961954, 0.211074, 0.995428, 0.689133, 0.388254, 0.163847, 0.132398, 0.578267, 0.688608, 0.448164, 0.149111, 0.670419, 0.770153, 0.265796, 0.119313, 0.00952636, 0.333354, 0.32457, 0.944522, 0.472341, 0.330589, 0.777376, 0.139584, 0.321974, 0.999896, 0.900484, 0.404496, 0.307012, 0.620225, 0.70123, 0.0738496, 0.187599, 0.834358, 0.0936031, 0.0677084, 0.77745, 0.57673, 0.514984, 0.676642, 0.907798, 0.281646, 0.732466, 0.236927, 0.718766, 0.30445, 0.182738, 0.136704, 0.369467, 0.804445, 0.539138, 0.237853, 0.695964, 0.00461763, 0.805089, 0.762751, 0.582421, 0.895735, 0.657319, 0.191711, 0.635133, 0.909233, 0.779651, 0.768555, 0.243218, 0.589038, 0.00521608, 0.212619, 0.618466, 0.345604, 0.512069, 0.400544, 0.721577, 0.078069, 0.803117, 0.681361, 0.145508, 0.445484, 0.13027, 0.975213, 0.335138, 0.676329, 0.584055, 0.328533, 0.777367, 0.375314, 0.500871, 0.274031, 0.758347, 0.850875, 0.0516321, 0.119776, 0.659553, 0.148233, 0.58129, 0.281835, 0.0653736, 0.609858, 0.785661, 0.427834, 0.509185, 0.554398, 0.0800974, 0.834723, 0.788448, 0.829264, 0.11242, 0.044501, 0.717812, 0.496454, 0.552878, 0.91177, 0.838499, 0.214569, 0.136391, 0.377353, 0.978933, 0.0964667, 0.770986, 0.0456969, 0.729294, 0.622665, 0.867686, 0.593344, 0.131652, 0.710065, 0.05886, 0.449821, 0.931761, 0.517155, 0.242112, 0.671254, 0.417985, 0.666281, 0.268961, 0.739002, 0.516142, 0.45308, 0.146306, 0.748715, 0.503656, 0.910697, 0.335632, 0.696612, 0.654792, 0.862619, 0.0682346, 0.770083, 0.978355, 0.401244, 0.00176029, 0.558156, 0.916832, 0.97322, 0.549838, 0.19869, 0.438463, 0.0156057, 0.83977, 0.105383, 0.299166, 0.99335, 0.581013, 0.0940476, 0.798757, 0.118182, 0.266796, 0.488131, 0.645558, 0.0384786, 0.304939, 0.35961, 0.986439, 0.843547, 0.3697, 0.852451, 0.794843, 0.0546904, 0.790721, 0.933048, 0.314777, 0.0438145, 0.931903, 0.61199, 0.78707, 0.275311, 0.894913, 0.260589, 0.489388, 0.99467, 0.961118, 0.330167, 0.875786, 0.0565952, 0.838825, 0.811146, 0.0279812, 0.544337, 0.103276, 0.0303973, 0.384458, 0.948577, 0.633818, 0.954165, 0.852837, 0.201179, 0.919404, 0.615282, 0.18759, 0.496785, 0.896411, 0.606767, 0.994157, 0.0166269, 0.50311, 0.495421, 0.300193, 0.524407, 0.123501, 0.970621, 0.705828, 0.424686, 0.236783, 0.233107, 0.0735741, 0.462477, 0.318771, 0.953457, 0.001118, 0.637781, 0.518401, 0.545005, 0.213403, 0.915296, 0.414932, 0.320413, 0.543889, 0.176325, 0.546838, 0.104671, 0.578876, 0.962853, 0.817569, 0.00301906, 0.0428612, 0.164119, 0.502298, 0.538741, 0.401706, 0.587071, 0.662706, 0.359987, 0.343828, 0.503272, 0.672525, 0.338472, 0.59923, 0.489641, 0.800391, 0.266119, 0.773703, 0.026278, 0.450742, 0.0257071, 0.215092, 0.20344, 0.837094, 0.271702, 0.754091, 0.229151, 0.958711, 0.0210307, 0.245963, 0.238919, 0.584489, 0.923226, 0.493625, 0.63361, 0.394205, 0.171767, 0.203015, 0.276054, 0.577253, 0.195312, 0.999466, 0.0352015, 0.48984, 0.434269, 0.207206, 0.796542, 0.0923338, 0.505757, 0.9232, 0.620437, 0.584372, 0.785207, 0.736546, 0.208744, 0.477267, 0.909428, 0.406968, 0.119203, 0.0915666, 0.950761, 0.242588, 0.776786, 0.0918372, 0.47149, 0.838527, 0.267107, 0.336596, 0.276568, 0.91368, 0.357471, 0.714987, 0.860658, 0.199195, 0.738763, 0.475023, 0.572437, 0.0687734, 0.175211, 0.564366, 0.382863, 0.778606, 0.0920013, 0.951513, 0.763532, 0.878139, 0.639052, 0.518825, 0.389098, 0.745893, 0.896298, 0.845904, 0.627195, 0.440325, 0.661317, 0.0685766, 0.505553, 0.257586, 0.573869, 0.70068, 0.44151, 0.342163, 0.953214, 0.504308, 0.128572, 0.985638, 0.695045, 0.624689, 0.879732, 0.792932, 0.540714, 0.490834, 0.111954, 0.793822, 0.00736275, 0.400705, 0.783914, 0.282839, 0.163008, 0.968853, 0.331046, 0.0971297, 0.316015, 0.306883, 0.363191, 0.71868, 0.16235, 0.236233, 0.170476, 0.954109, 0.557757, 0.987404, 0.0342678, 0.301085, 0.130566, 8.99479e-06, 0.492714, 0.449972, 0.429922, 0.707314, 0.453587, 0.144354, 0.811004, 0.412175, 0.443095, 0.224612, 0.565932, 0.932614, 0.830064, 0.057281, 0.518328, 0.783682, 0.548909, 0.499433, 0.326037, 0.347833, 0.305309, 0.574449, 0.616677, 0.461319, 0.452558, 0.382742, 0.278652, 0.450522, 0.0402624, 0.783456, 0.929137, 0.888308, 0.249146, 0.457229, 0.822089, 0.548378, 0.805055, 0.391676, 0.691428, 0.644834, 0.844889, 0.353146, 0.0929275, 0.157428, 0.515319, 0.208275, 0.495904, 0.723555, 0.122964, 0.36962, 0.41214, 0.306746, 0.329619, 0.196846, 0.454874, 0.789508, 0.28634, 0.941138, 0.569559, 0.721007, 0.626095, 0.879066, 0.78383, 0.429235, 0.168256, 0.127681, 0.878632, 0.614135, 0.680096, 0.708349, 0.922148, 0.123667, 0.617842, 0.53446, 0.786944, 0.284737, 0.951959, 0.0950369, 0.190759, 0.139618, 0.533479, 0.63933, 0.268021, 0.798943, 0.337936, 0.405574, 0.943102, 0.714451, 0.83261, 0.443561, 0.260152, 0.942133, 0.853385, 0.189669, 0.573713, 0.752624, 0.00792817, 0.834036, 0.917539, 0.46164, 0.92198, 0.706737, 0.180156, 0.926683, 0.462895, 0.977159, 0.283718, 0.363913, 0.402255, 0.770423, 0.415978, 0.828699, 0.41718, 0.302832, 0.288217, 0.631554, 0.326558, 0.566064, 0.828802, 0.123279, 0.327377, 0.397165, 0.308697, 0.702286, 0.45401, 0.969257, 0.136402, 0.86909, 0.0581259, 0.843663, 0.0837092, 0.289501, 0.913223, 0.927754, 0.0428233, 0.728459, 0.242074, 0.798512, 0.342475, 0.0846666, 0.158902, 0.717872, 0.814997, 0.833233, 0.696543, 0.0359532, 0.156974, 0.32208, 0.410787, 0.561302, 0.399088, 0.305644, 0.931902, 0.95712, 0.701232, 0.685619, 0.955853, 0.538418, 0.646915, 0.146731, 0.65422, 0.418238, 0.0750841, 0.350242, 0.358565, 0.358744, 0.183739, 0.405738, 0.835397, 0.683115, 0.883714, 0.557802, 0.710694, 0.783548, 0.493122, 0.814222, 0.168881, 0.749967, 0.00642282, 0.861179, 0.118478, 0.80518, 0.87412, 0.899408, 0.933523, 0.481826, 0.521988, 0.414407, 0.651312, 0.81063, 0.359634, 0.592237, 0.495092, 0.186289, 0.140337, 0.989699, 0.719063, 0.295893, 0.86223, 0.645697, 0.119774, 0.673202, 0.123001, 0.937681, 0.0759322, 0.80301, 0.107765, 0.512171, 0.0884891, 0.496683, 0.526593, 0.925926, 0.142882, 0.535131, 0.59712, 0.602905, 0.272904, 0.909842, 0.458215, 0.474302, 0.940236, 0.99925, 0.856123, 0.0648635, 0.33895, 0.0851604, 0.861585, 0.994629, 0.270295, 0.253986, 0.932597, 0.656535, 0.544405, 0.163579, 0.00565768, 0.425538, 0.217728, 0.94399, 0.533269, 0.364052, 0.980067, 0.812952, 0.959092, 0.93408, 0.435034, 0.129125, 0.744507, 0.751672, 0.448497, 0.778792, 0.695853, 0.747038, 0.0730961, 0.903926, 0.736134, 0.198268, 0.906906, 0.88627, 0.872989, 0.943695, 0.435863, 0.987455, 0.0591982, 0.924001, 0.255637, 0.323308, 0.318667, 0.873032, 0.867264, 0.48634, 0.294825, 0.804789, 0.183232, 0.643134, 0.617333, 0.983185, 0.689889, 0.762106, 0.235854, 0.923138, 0.0670237, 0.0938047, 0.129591, 0.114159, 0.210244, 0.125066, 0.724633, 0.791673, 0.985511, 0.787778, 0.14163, 0.528792, 0.21738, 0.612279, 0.888867, 0.193273, 0.665858, 0.918939, 0.467632, 0.955895, 0.762796, 0.440253, 0.331188, 0.529962, 0.773693, 0.400064, 0.337817, 0.477382, 0.83776, 0.754275, 0.653156, 0.330874, 0.416658, 0.163485, 0.564096, 0.589732, 0.114851, 0.558719, 0.0660067, 0.687986, 0.140014, 0.207164, 0.467089, 0.945626, 0.834166, 0.10679, 0.678549, 0.236083, 0.19538, 0.91674, 0.497997, 0.145263, 0.832838, 0.370289, 0.445591, 0.0804101, 0.994883, 0.600678, 0.785424, 0.556163, 0.944177, 0.672062, 0.913911, 0.719992, 0.21344, 0.424073, 0.504163, 0.179541, 0.694425, 0.704981, 0.719038, 0.664638, 0.675743, 0.00904641, 0.12478, 0.364036, 0.802474, 0.416197, 0.0907069, 0.350004, 0.737557, 0.854752, 0.979428, 0.6801, 0.00163546, 0.940433, 0.944515, 0.0478948, 0.828965, 0.0247498, 0.140715, 0.878443, 0.373219, 0.15744, 0.0684821, 0.238656, 0.62082, 0.396778, 0.75656, 0.183271, 0.199846, 0.859093, 0.729, 0.114022, 0.713058, 0.251534, 0.399791, 0.343449, 0.481608, 0.351112, 0.821257, 0.762525, 0.826417, 0.854871, 0.898275, 0.261042, 0.446316, 0.134348, 0.589654, 0.626137, 0.627859, 0.644243, 0.900311, 0.312348, 0.686388, 0.0638275, 0.942398, 0.997995, 0.519926, 0.108917, 0.474283, 0.459815, 0.0173454, 0.403841, 0.695965, 0.16122, 0.687384, 0.263314, 0.615264, 0.95124, 0.0679664, 0.440981, 0.374297, 0.8821, 0.764221, 0.201789, 0.749617, 0.333827, 0.367097, 0.072781, 0.299826, 0.828564, 0.0228201, 0.416227, 0.265307, 0.076264, 0.998028, 0.404334, 0.2468, 0.721791, 0.0487748, 0.840049, 0.122938, 0.473641, 0.18489, 0.8881, 0.890702, 0.402479, 0.359522, 0.166983, 0.12043, 0.104968, 0.7571, 0.316185, 0.427233, 0.456899, 0.789597, 0.306429, 0.686463, 0.914225, 0.148214, 0.386535, 0.661416, 0.0010132, 0.592672, 0.646657, 0.515067, 0.920167, 0.160818, 0.249605, 0.352428, 0.0756006, 0.753631, 0.803908, 0.562435, 0.944115, 0.516684, 0.667722, 0.722846, 0.0901999, 0.102956, 0.310629, 0.0718126, 0.939718, 0.0015867, 0.287318, 0.640484, 0.570949, 0.091604, 0.898546, 0.659228, 0.0322266, 0.803713, 0.0606192, 0.0440694, 0.66509, 0.0678347, 0.915303, 0.916844, 0.916624, 0.486296, 0.793855, 0.650598, 0.514116, 0.139537, 0.414233, 0.374154, 0.102838, 0.15141, 0.840178, 0.196955, 0.459359, 0.0665979, 0.371865, 0.847088, 0.865833, 0.938104, 0.299027, 0.841662, 0.327934, 0.845796, 0.148307, 0.207255, 0.807801, 0.447583, 0.491865, 0.667041, 0.802269, 0.797326, 0.198915, 0.649828, 0.483347, 0.267933, 0.836389, 0.356822, 0.847785, 0.929989, 0.514498, 0.181326, 0.165689, 0.948193, 0.728615, 0.594231, 0.812535, 0.174641, 0.950378, 0.482942, 0.967358, 0.0275906, 0.0311752, 0.614367, 0.970778, 0.164847, 0.209201, 0.66234, 0.102931, 0.799752, 0.543935, 0.630354, 0.873262, 0.544798, 0.660557, 0.891737, 0.567577, 0.939348, 0.78186, 0.0686499, 0.225852, 0.893362, 0.540483, 0.504786, 0.628149, 0.0838464, 0.377603, 0.743475, 0.96083, 0.45757, 0.221401, 0.592731, 0.618268, 0.771072, 0.0765574, 0.0476341, 0.635026, 0.383667, 0.916712, 0.171473, 0.378175, 0.239185, 0.324705, 0.257922, 0.870206, 0.360061, 0.531246, 0.408343, 0.487231, 0.978677, 0.207524, 0.00673317, 0.899411, 0.737445, 0.844541, 0.433296, 0.610042, 0.538669, 0.310229, 0.586103, 0.0650336, 0.120229, 0.32721, 0.329803, 0.941069, 0.384618, 0.755424, 0.147826, 0.643201, 0.0737775, 0.665542, 0.461143, 0.0717486, 0.187379, 0.799762, 0.743815, 0.914302, 0.972338, 0.0624001, 0.143945, 0.935498, 0.167011, 0.627861, 0.0730065, 0.610473, 0.917775, 0.21292, 0.80276, 0.975205, 0.309135, 0.689936, 0.795602, 0.703413, 0.905654, 0.443426, 0.785175, 0.884934, 0.451337, 0.185263, 0.906834, 0.238523, 0.581382, 0.844035, 0.630555, 0.450307, 0.107293, 0.798729, 0.712429, 0.606065, 0.0508112, 0.751825, 0.293466, 0.696673, 0.687424, 0.949014, 0.635518, 0.260788, 0.664012, 0.503692, 0.254894, 0.47687, 0.453398, 0.879328, 0.258936, 0.0584603, 0.328501, 0.836817, 0.158116, 0.0338683, 0.948123, 0.565302, 0.866665, 0.320561, 0.385397, 0.147682, 0.061885, 0.475893, 0.687086, 0.878538, 0.149937, 0.439654, 0.45665, 0.69964, 0.27501, 0.55027, 0.168487, 0.75805, 0.935977, 0.580474, 0.878249, 0.566541, 0.58974, 0.252357, 0.74584, 0.785329, 0.471127, 0.0698617, 0.987713, 0.272423, 0.329089, 0.131877, 0.270149, 0.0129784, 0.684912, 0.833625, 0.219229, 0.0552668, 0.99617, 0.833919, 0.755143, 0.632745, 0.195254, 0.238367, 0.665154, 0.150129, 0.13481, 0.542367, 0.770813, 0.974124, 0.927066, 0.921943, 0.754261, 0.241053, 0.03664, 0.538456, 0.332408, 0.509011, 0.868528, 0.373223, 0.185156, 0.173616, 0.0959532, 0.717941, 0.498915, 0.985696, 0.287694, 0.597918, 0.731743, 0.675398, 0.698306, 0.439155, 0.518567, 0.895002, 0.512035, 0.569751, 0.409759, 0.253181, 0.0834103, 0.111383, 0.538176, 0.917993, 0.690836, 0.89454, 0.647424, 0.696855, 0.924478, 0.0391853, 0.279857, 0.737514, 0.441775, 0.0284395, 0.656948, 0.0281428, 0.119077, 0.164105, 0.605908, 0.936884, 0.318437, 0.111724, 0.322787, 0.982408, 0.97011, 0.72668, 0.099519, 0.144687, 0.617189, 0.925421, 0.674846, 0.222799, 0.47666, 0.928695, 0.935499, 0.828436, 0.46032, 0.24613, 0.417807, 0.746523, 0.638837, 0.342988, 0.110714, 0.550722, 0.759884, 0.60739, 0.692204, 0.0526183, 0.177483, 0.437292, 0.493735, 0.631113, 0.525569, 0.753399, 0.157499, 0.308851, 0.644157, 0.072486, 0.55973, 0.0907334, 0.857988, 0.656363, 0.841934, 0.953069, 0.632553, 0.747385, 0.417105, 0.153193, 0.248604, 0.868737, 0.929238, 0.163154, 0.0623951, 0.506774, 0.985715, 0.597852, 0.61086, 0.51979, 0.429638, 0.723483, 0.571642, 0.709711, 0.0975933, 0.39613, 0.438011, 0.449673, 0.44669, 0.91548, 0.833362, 0.808329, 0.530815, 0.0326424, 0.568272, 0.0961351, 0.461136, 0.226645, 0.657493, 0.951434, 0.395262, 0.0437565, 0.505344, 0.86249, 0.49411, 0.0507871, 0.14814, 0.340194, 0.265498, 0.0754856, 0.19997, 0.837598, 0.0296773, 0.936372, 0.779978, 0.495378, 0.367692, 0.479471, 0.805453, 0.485373, 0.0953336, 0.14572, 0.579649, 0.239343, 0.243335, 0.403262, 0.633629, 0.0682983, 0.712714, 0.341858, 0.501027, 0.772609, 0.35328, 0.625386, 0.385904, 0.614652, 0.811551, 0.176481, 0.316492, 0.816493, 0.819353, 0.948973, 0.298714, 0.721146, 0.780835, 0.878107, 0.572032, 0.830147, 0.519363, 0.958325, 0.527391, 0.716759, 0.501259, 0.493692, 0.872762, 0.628699, 0.804758, 0.33735, 0.862575, 0.614228, 0.868128, 0.179866, 0.153829, 0.735529, 0.310759, 0.75861, 0.955902, 0.996456, 0.0155119, 0.868818, 0.200885, 0.674882, 0.239315, 0.888505, 0.811764, 0.467074, 0.0994684, 0.107193, 0.44433, 0.579151, 0.176343, 0.983351, 0.768789, 0.831046, 0.482872, 0.90771, 0.934568, 0.38876, 0.504796, 0.547039, 0.351825, 0.215924, 0.80159, 0.231762, 0.113694, 0.98638, 0.485296, 0.593716, 0.0785382, 0.744536, 0.735809, 0.597734, 0.701177, 0.718768, 0.72438, 0.794393, 0.332094, 0.686298, 0.354777, 0.498037, 0.965321, 0.793343, 0.601226, 0.59768, 0.546122, 0.854092, 0.542572, 0.416698, 0.882084, 0.449068, 0.0742358, 0.930291, 0.935775, 0.428394, 0.805404, 0.909318, 0.708399, 0.679808, 0.555537, 0.909858, 0.110007, 0.697008, 0.226286, 0.30794, 0.053389, 0.0916701, 0.168651, 0.675089, 0.137463, 0.361724, 0.664645, 0.695049, 0.332835, 0.23099, 0.864152, 0.419861, 0.083713, 0.990716, 0.00623633, 0.864072, 0.22218, 0.813389, 0.103877, 0.6216, 0.350807, 0.681206, 0.350022, 0.0559396, 0.609546, 0.103462, 0.451129, 0.173092, 0.928536, 0.761367, 0.625893, 0.999792, 0.794129, 0.610381, 0.611992, 0.759012, 0.861958, 0.0441375, 0.371323, 0.402609, 0.889682, 0.210105, 0.430555, 0.813706, 0.827418, 0.934669, 0.346201, 0.303894, 0.425123, 0.727389, 0.813788, 0.323004, 0.562072, 0.826403, 0.990877, 0.73152, 0.0854499, 0.302683, 0.326324, 0.885827, 0.407247, 0.965275, 0.990593, 0.607219, 0.784183, 0.877393, 0.17006, 0.806105, 0.436142, 0.43005, 0.210671, 0.583769, 0.271482, 0.679246, 0.739748, 0.223993, 0.73148, 0.460188, 0.341485, 0.179936, 0.114199, 0.562467, 0.210406, 0.274018, 0.0734009, 0.259328, 0.51934, 0.175807, 0.474026, 0.518619, 0.373289, 0.295022, 0.153322, 0.272974, 0.33554, 0.115575, 0.369072, 0.216294, 0.561812, 0.423946, 0.339774, 0.812142, 0.0389147, 0.728159, 0.406847, 0.0073503, 0.93889, 0.472488, 0.333231, 0.516892, 0.00982252, 0.0442528, 0.398625, 0.537754, 0.939892, 0.952943, 0.718147, 0.70743, 0.478117, 0.659833, 0.547758, 0.0547595, 0.0507752, 0.11535, 0.384005, 0.354978, 0.759896, 0.664564, 0.997026, 0.188457, 0.713732, 0.940001, 0.983527, 0.30942, 0.482499, 0.0291149, 0.0502972, 0.869711, 0.605827, 0.880391, 0.559943, 0.799703, 0.163051, 0.810344, 0.689329, 0.374283, 0.987522, 0.427716, 0.912901, 0.888009, 0.15132, 0.0403356, 0.483226, 0.151659, 0.534256, 0.199749, 0.334739, 0.294661, 0.0827428, 0.916822, 0.509013, 0.639294, 0.619049, 0.423424, 0.00960821, 0.152704, 0.584539, 0.97645, 0.830753, 0.563711, 0.756433, 0.206827, 0.452723, 0.46099, 0.615499, 0.891377, 0.14176, 0.441772, 0.7399, 0.963869, 0.351896, 0.797338, 0.717526, 0.558598, 0.200473, 0.0566216, 0.766157, 0.547293, 0.768586, 0.831479, 0.655012, 0.326318, 0.758386, 0.993428, 0.490431, 0.794475, 0.818778, 0.284037, 0.931828, 0.148299, 0.795698, 0.770279, 0.61012, 0.712323, 0.627313, 0.692585, 0.713857, 0.575104, 0.0705564, 0.384126, 0.813143, 0.870509, 0.260943, 0.0687908, 0.461427, 0.280083, 0.110856, 0.980626, 0.909306, 0.423537, 0.788898, 0.827466, 0.792313, 0.198289, 0.54203, 0.32424, 0.348408, 0.856534, 0.506747, 0.97225, 0.0550984, 0.0555453, 0.141956, 0.633462, 0.715796, 0.72804, 0.111788, 0.713685, 0.655457, 0.872259, 0.281724, 0.153277, 0.656518, 0.5761, 0.811273, 0.741021, 0.346319, 0.168153, 0.97488, 0.205865, 0.454107, 0.178165, 0.873168, 0.798471, 0.409507, 0.327403, 0.381364, 0.110272, 0.933571, 0.848571, 0.362224, 0.591039, 0.731441, 0.71913, 0.469547, 0.360276, 0.356864, 0.0109086, 0.109288, 0.51789, 0.232499, 0.302433, 0.533526, 0.633215, 0.389799, 0.534496, 0.673074, 0.80854, 0.192882, 0.319299, 0.107454, 0.251623, 0.00296579, 0.665672, 0.847694, 0.43587, 0.867145, 0.701412, 0.0231152, 0.461606, 0.199226, 0.533613, 0.765012, 0.820115, 0.706689, 0.734028, 0.0886849, 0.735587, 0.600506, 0.823775, 0.0373341, 0.812563, 0.2348, 0.825182, 0.997076, 0.566187, 0.566244, 0.690071, 0.290938, 0.832857, 0.45413, 0.924864, 0.747998, 0.961952, 0.967087, 0.00745362, 0.886759, 0.229773, 0.0123162, 0.13285, 0.586293, 0.285238, 0.330433, 0.581045, 0.0791134, 0.335392, 0.196941, 0.2336, 0.895863, 0.0548771, 0.187895, 0.0521924, 0.394677, 0.96342, 0.0864298, 0.347099, 0.551305, 0.0642886, 0.363123, 0.311614, 0.0681629, 0.90542, 0.61787, 0.559809, 0.640655, 0.146883, 0.726802, 0.653222, 0.825089, 0.367256, 0.658711, 0.530255, 0.142158, 0.335159, 0.576883, 0.815347, 0.538353, 0.42229, 0.578867, 0.121993, 0.186007, 0.915189, 0.922611, 0.112167, 0.876108, 0.82817, 0.871104, 0.192003, 0.124431, 0.802664, 0.512239, 0.163601, 0.460128, 0.79289, 0.509116, 0.287871, 0.664928, 0.444367, 0.513435, 0.543775, 0.836336, 0.057896, 0.801931, 0.213453, 0.774068, 0.821788, 0.169053, 0.0413279, 0.765749, 0.321284, 0.726605, 0.761212, 0.304786, 0.296818, 0.720861, 0.200606, 0.326656, 0.17193, 0.691957, 0.226087, 0.444533, 0.906708, 0.671676, 0.429218, 0.363985, 0.184063, 0.738182, 0.461176, 0.137039, 0.357278, 0.521567, 0.908227, 0.0501428, 0.0269577, 0.0479135, 0.65737, 0.738163, 0.742666, 0.59487, 0.222037, 0.525651, 0.0985925, 0.241994, 0.331669, 0.206876, 0.654418, 0.550447, 0.28119, 0.00454971, 0.245784, 0.259463, 0.129567, 0.280369, 0.979685, 0.294002, 0.124807, 0.850743, 0.91553, 0.109716, 0.387582, 0.834544, 0.66271, 0.0471684, 0.64241, 0.835814, 0.86512, 0.325619, 0.31638, 0.279696, 0.881424, 0.487695, 0.776307, 0.84578, 0.537472, 0.877102, 0.140269, 0.747971, 0.897241, 0.379206, 0.220176, 0.349415, 0.0128732, 0.994032, 0.909643, 0.155572, 0.77627, 0.11818, 0.263707, 0.900637, 0.335768, 0.322971, 0.360847, 0.614925, 0.0892853, 0.881562, 0.17091, 0.941587, 0.930328, 0.304348, 0.970301, 0.84352, 0.763354, 0.562173, 0.351434, 0.581137, 0.685157, 0.781364, 0.035766, 0.761083, 0.152155, 0.71605, 0.976006, 0.969557, 0.293685, 0.0549842, 0.133562, 0.82613, 0.967592, 0.846296, 0.211786, 0.467714, 0.670399, 0.893941, 0.260086, 0.00617443, 0.736166, 0.336154, 0.924484, 0.0194528, 0.472163, 0.947271, 0.843659, 0.637149, 0.974735, 0.296876, 0.669006, 0.569546, 0.20116, 0.654917, 0.546547, 0.820704, 0.605349, 0.673724, 0.556966, 0.070143, 0.0166695, 0.467624, 0.660667, 0.494119, 0.857361, 0.884427, 0.805896, 0.269175, 0.318624, 0.0725401, 0.680126, 0.076112, 0.815093, 0.637355, 0.378459, 0.555372, 0.318617, 0.664214, 0.498975, 0.839348, 0.928194, 0.885326, 0.382787, 0.55833, 0.632732, 0.699359, 0.939815, 0.0526236, 0.084209, 0.243343, 0.679591, 0.121869, 0.37269, 0.0869808, 0.56071, 0.161165, 0.350729, 0.286705, 0.658271, 0.0525391, 0.460454, 0.952039, 0.763749, 0.252623, 0.514233, 0.630456, 0.11327, 0.142385, 0.09471, 0.910605, 0.159448, 0.025932, 0.193778, 0.734099, 0.347049, 0.715323, 0.331636, 0.492643, 0.172658, 0.544111, 0.678647, 0.82822, 0.890233, 0.538535, 0.193232, 0.628986, 0.637995, 0.181863, 0.503949, 0.46497, 0.272194, 0.581389, 0.531691, 0.804678, 0.678814, 0.799185, 0.779134, 0.299096, 0.280952, 0.524904, 0.422067, 0.86106, 0.739144, 0.437234, 0.410388, 0.270291, 0.754206, 0.559645, 0.25864, 0.0243176, 0.770453, 0.56095, 0.898787, 0.245929, 0.681202, 0.95394, 0.569529, 0.452469, 0.975237, 0.896771, 0.223286, 0.989632, 0.292195, 0.18598, 0.0775047, 0.0462231, 0.121657, 0.765414, 0.940138, 0.320731, 0.956966, 0.617806, 0.848577, 0.770346, 0.54212, 0.422321, 0.488888, 0.157264, 0.0614975, 0.235589, 0.31519, 0.615688, 0.0252402, 0.620932, 0.429205, 0.78533, 0.296248, 0.861138, 0.41389, 0.87524, 0.411513, 0.888992, 0.191521, 0.177546, 0.770683, 0.412321, 0.99239, 0.168588, 0.152511, 0.68212, 0.931234, 0.395882, 0.834497, 0.313145, 0.826681, 0.71435, 0.20711, 0.170136, 0.527598, 0.591789, 0.655174, 0.908624, 0.637615, 0.847109, 0.0362419, 0.457725, 0.127153, 0.710776, 0.095789, 0.0364299, 0.971963, 0.503109, 0.907669, 0.00268601, 0.0376114, 0.330092, 0.00216109, 0.391222, 0.788424, 0.506559, 0.387133, 0.152886, 0.933285, 0.227926, 0.882869, 0.733733, 0.822269, 0.0970804, 0.255417, 0.15843, 0.301121, 0.801318, 0.703989, 0.438714, 0.813886, 0.647927, 0.818138, 0.840587, 0.979557, 0.64096, 0.148562, 0.241392, 0.805949, 0.188091, 0.983173, 0.629896, 0.0623323, 0.172154, 0.276237, 0.484383, 0.976235, 0.650926, 0.748822, 0.523162, 0.132491, 0.983323, 0.826655, 0.622063, 0.927223, 0.986423, 0.422319, 0.857705, 0.614299, 0.195418, 0.75345, 0.753493, 0.82528, 0.695535, 0.871959, 0.198182, 0.252445, 0.0848789, 0.0246484, 0.155478, 0.766652, 0.521933, 0.050651, 0.000431992, 0.366988, 0.361293, 0.215211, 0.0113326, 0.415247, 0.16039, 0.854401, 0.429871, 0.88418, 0.339746, 0.560085, 0.0304348, 0.0195183, 0.0423525, 0.39167, 0.416544, 0.57624, 0.960926, 0.722137, 0.548531, 0.972245, 0.0661971, 0.661878, 0.328153, 0.744898, 0.565517, 0.606903, 0.846644, 0.471272, 0.331511, 0.503534, 0.248501, 0.447479, 0.500011, 0.568788, 0.739181, 0.962357, 0.160933, 0.647045, 0.419411, 0.902111, 0.0363436, 0.876261, 0.992914, 0.201877, 0.491814, 0.935375, 0.495645, 0.480016, 0.250264, 0.746046, 0.387599, 0.332632, 0.699724, 0.160943, 0.18238, 0.157698, 0.0555704, 0.0943856, 0.815176, 0.95347, 0.438966, 0.719201, 0.146659, 0.499255, 0.647801, 0.592177, 0.223986, 0.121259, 0.212785, 0.682767, 0.662474, 0.744542, 0.145665, 0.0513408, 0.263725, 0.633071, 0.719178, 0.751036, 0.845591, 0.445084, 0.0600563, 0.484062, 0.0302693, 0.0467352, 0.290252, 0.568309, 0.130947, 0.00218117, 0.358267, 0.976421, 0.69907, 0.802502, 0.298183, 0.0968203, 0.179036, 0.928288, 0.104217, 0.414126, 0.850352, 0.421163, 0.54415, 0.166134, 0.902478, 0.17836, 0.405866, 0.50712, 0.335796, 0.715559, 0.135021, 0.105094, 0.787175, 0.367156, 0.395401, 0.164392, 0.39428, 0.604062, 0.947249, 0.884381, 0.654034, 0.423842, 0.013755, 0.455803, 0.836788, 0.998852, 0.891757, 0.806675, 0.183851, 0.501819, 0.0742693, 0.462696, 0.912391, 0.490791, 0.3255, 0.920401, 0.209304, 0.0509929, 0.00198485, 0.713042, 0.705819, 0.221963, 0.625561, 0.990062, 0.87923, 0.0403516, 0.902873, 0.587933, 0.74762, 0.219974, 0.522457, 0.651021, 0.185259, 0.401079, 0.527382, 0.41003, 0.255617, 0.204435, 0.184973, 0.23386, 0.764599, 0.814429, 0.232333, 0.949143, 0.285716, 0.571215, 0.194195, 0.127978, 0.220286, 0.699305, 0.301491, 0.780858, 0.456808, 0.381645, 0.580219, 0.913607, 0.18016, 0.551105, 0.599133, 0.8982, 0.288888, 0.129585, 0.155321, 0.906122, 0.132426, 0.627033, 0.0943135, 0.90147, 0.744035, 0.956401, 0.286716, 0.92634, 0.869586, 0.197875, 0.245068, 0.797152, 0.243978, 0.0029176, 0.536576, 0.448313, 0.578926, 0.576594, 0.0279766, 0.140589, 0.531467, 0.731435, 0.722225, 0.793909, 0.438038, 0.0416411, 0.356844, 0.802197, 0.879949, 0.78601, 0.54284, 0.284302, 0.082457, 0.297974, 0.432173, 0.516112, 0.362222, 0.805553, 0.910032, 0.14728, 0.317529, 0.40087, 0.259343, 0.567768, 0.541162, 0.135919, 0.924043, 0.389049, 0.126096, 0.0763522, 0.614717, 0.236133, 0.143414, 0.641401, 0.341851, 0.822335, 0.360423, 0.635841, 0.692367, 0.865551, 0.628575, 0.123744, 0.688649, 0.543258, 0.527071, 0.396863, 0.283506, 0.649493, 0.174779, 0.462425, 0.999697, 0.0520634, 0.155628, 0.934503, 0.347624, 0.387869, 0.850368, 0.704923, 0.803748, 0.93635, 0.284214, 0.292087, 0.490883, 0.63007, 0.479258, 0.63344, 0.913521, 0.820823, 0.519035, 0.155867, 0.0218023, 0.435236, 0.440155, 0.312685, 0.923886, 0.729272, 0.779987, 0.41635, 0.995626, 0.655923, 0.113123, 0.107358, 0.309989, 0.890005, 0.0393405, 0.566035, 0.718976, 0.0419229, 0.806378, 0.184939, 0.718635, 0.426383, 0.199313, 0.597232, 0.207885, 0.0979516, 0.18374, 0.650931, 0.508527, 0.868066, 0.374399, 0.763201, 0.389844, 0.851939, 0.102532, 0.569876, 0.641274, 0.512953, 0.5503, 0.38177, 0.952295, 0.845207, 0.627583, 0.154942, 0.918327, 0.383177, 0.0323818, 0.118195, 0.597676, 0.74541, 0.756755, 0.29324, 0.236624, 0.324037, 0.313808, 0.785109, 0.436458, 0.166312, 0.269294, 0.657411, 0.342839, 0.791003, 0.413033, 0.095342, 0.562967, 0.929033, 0.372442, 0.318249, 0.457151, 0.0845246, 0.541658, 0.360231, 0.511668, 0.412251, 0.912032, 0.505069, 0.262456, 0.737895, 0.274547, 0.0442639, 0.926439, 0.948311, 0.691462, 0.442879, 0.8754, 0.245462, 0.964447, 0.153074, 0.873637, 0.885767, 0.438426, 0.724104, 0.189726, 0.894894, 0.685126, 0.66051, 0.421584, 0.60197, 0.663103, 0.256222, 0.0951405, 0.253675, 0.742905, 0.732114, 0.972861, 0.646337, 0.206869, 0.933182, 0.460643, 0.617571, 0.155458, 0.685424, 0.921464, 0.112495, 0.0326442, 0.777823, 0.114861, 0.930235, 0.518505, 0.828133, 0.472568, 0.187044, 0.437994, 0.0758454, 0.970258, 0.627685, 0.702015, 0.22676, 0.311245, 0.904505, 0.980784, 0.152715, 0.896043, 0.796668, 0.758406, 0.778774, 0.697944, 0.00945681, 0.396067, 0.238081, 0.571738, 0.488675, 0.825316, 0.61304, 0.791359, 0.102336, 0.233998, 0.800525, 0.71137, 0.336429, 0.163301, 0.557184, 0.586251, 0.672416, 0.244185, 0.399021, 0.637515, 0.958232, 0.483219, 0.337786, 0.136581, 0.473416, 0.215908, 0.18168, 0.693056, 0.23042, 0.883538, 0.374635, 0.211695, 0.595548, 0.820593, 0.344573, 0.282011, 0.454332, 0.327038, 0.000917402, 0.0549154, 0.365315, 0.439875, 0.0844648, 0.254007, 0.794073, 0.308154, 0.437934, 0.276972, 0.919355, 0.0261948, 0.769438, 0.2641, 0.198885, 0.966101, 0.559764, 0.123938, 0.199953, 0.0299818, 0.653197, 0.614793, 0.475555, 0.324656, 0.281644, 0.796215, 0.648613, 0.532154, 0.334535, 0.157352, 0.888127, 0.184127, 0.766378, 0.966347, 0.972827, 0.161384, 0.789465, 0.161954, 0.643703, 0.959713, 0.186375, 0.356035, 0.98124, 0.890085, 0.951176, 0.738523, 0.567806, 0.788211, 0.697128, 0.158079, 0.615107, 0.175742, 0.00087403, 0.682844, 0.770078, 0.900257, 0.603647, 0.256177, 0.292316, 0.0521886, 0.733072, 0.732903, 0.15466, 0.859994, 0.749214, 0.81277, 0.690821, 0.0871517, 0.536864, 0.61165, 0.911363, 0.291076, 0.990806, 0.465582, 0.42672, 0.650891, 0.346158, 0.365325, 0.65537, 0.155177, 0.342061, 0.766712, 0.324513, 0.677385, 0.454501, 0.619278, 0.585384, 0.277829, 0.780265, 0.205013, 0.115243, 0.475227, 0.798551, 0.347859, 0.513611, 0.91549, 0.346032, 0.476028, 0.940483, 0.896188, 0.472846, 0.834689, 0.933848, 0.0773943, 0.730155, 0.647934, 0.484447, 0.0799081, 0.602382, 0.846805, 0.667573, 0.839229, 0.826398, 0.605332, 0.618392, 0.0509072, 0.0207609, 0.224265, 0.909765, 0.198481, 0.868754, 0.374745, 0.878138, 0.813178, 0.141953, 0.67433, 0.707803, 0.241497, 0.55633, 0.0970334, 0.704567, 0.322991, 0.759508, 0.789822, 0.253608, 0.450525, 0.678693, 0.673853, 0.4521, 0.121972, 0.72688, 0.545481, 0.818882, 0.514336, 0.26292, 0.0151278, 0.00732674, 0.939697, 0.263827, 0.171886, 0.585323, 0.899954, 0.0765824, 0.633741, 0.111016, 0.404388, 0.0727737, 0.470588, 0.268918, 0.499059, 0.748549, 0.41052, 0.0837198, 0.379509, 0.689658, 0.943127, 0.469812, 0.66954, 0.631608, 0.189718, 0.824274, 0.542368, 0.364657, 0.398373, 0.182024, 0.563191, 0.000463342, 0.053823, 0.482991, 0.678146, 0.855849, 0.253442, 0.230127, 0.869565, 0.832267, 0.143135, 0.865522, 0.122105, 0.697407, 0.393396, 0.594313, 0.723475, 0.507965, 0.163211, 0.353912, 0.170464, 0.69387, 0.677314, 0.0352086, 0.76777, 0.270768, 0.72994, 0.780155, 0.162973, 0.437177, 0.30326, 0.841017, 0.969776, 0.84691, 0.998957, 0.0803233, 0.34654, 0.626189, 0.256172, 0.169087, 0.011458, 0.141743, 0.985929, 0.305722, 0.42469, 0.770609, 0.895321, 0.345501, 0.0372501, 0.174137, 0.0892318, 0.149059, 0.217592, 0.980435, 0.372879, 0.801079, 0.611124, 0.55515, 0.71853, 0.777703, 0.282011, 0.677403, 0.284747, 0.893636, 0.526491, 0.578273, 0.605364, 0.536548, 0.876358, 0.977666, 0.82618, 0.327431, 0.43535, 0.976921, 0.365204, 0.360949, 0.661694, 0.3788, 0.303999, 0.833506, 0.769931, 0.984484, 0.830619, 0.596813, 0.256631, 0.342354, 0.211741, 0.480985, 0.156707, 0.194089, 0.294124, 0.0229276, 0.152847, 0.20838, 0.735298, 0.29585, 0.580515, 0.179788, 0.961631, 0.664593, 0.228788, 0.988589, 0.740765, 0.692283, 0.633887, 0.591812, 0.631869, 0.482088, 0.182103, 0.194961, 0.932069, 0.815949, 0.97663, 0.00321936, 0.416946, 0.751696, 0.276315, 0.42461, 0.162478, 0.122763, 0.976472, 0.197001, 0.249816, 0.0988475, 0.0492697, 0.170823, 0.308457, 0.566725, 0.969683, 0.82008, 0.443133, 0.290308, 0.712629, 0.104436, 0.271146, 0.433486, 0.162777, 0.295001, 0.00706051, 0.159164, 0.982884, 0.785968, 0.563684, 0.878506, 0.996777, 0.184828, 0.860534, 0.460421, 0.405588, 0.231332, 0.454473, 0.177382, 0.69441, 0.980233, 0.0406836, 0.770267, 0.490676, 0.228413, 0.484287, 0.106554, 0.76049, 0.572014, 0.435451, 0.31732, 0.036037, 0.846877, 0.618015, 0.478935, 0.386394, 0.878349, 0.921997, 0.425029, 0.0446865, 0.86969, 0.0922333, 0.196239, 0.756767, 0.560272, 0.807042, 0.309844, 0.74002, 0.381336, 0.794198, 0.544657, 0.384193, 0.884803, 0.364934, 0.241674, 0.207013, 0.7099, 0.58936, 0.876078, 0.398796, 0.508855, 0.352048, 0.837214, 0.108648, 0.733437, 0.141866, 0.713733, 0.481324, 0.99968, 0.279308, 0.693086, 0.12665, 0.680087, 0.913595, 0.979134, 0.929132, 0.088604, 0.0657521, 0.3873, 0.514501, 0.487289, 0.97546, 0.316114, 0.19143, 0.178553, 0.350775, 0.00432832, 0.197521, 0.611761, 0.738909, 0.35769, 0.888571, 0.985438, 0.196313, 0.227811, 0.230726, 0.491513, 0.590531, 0.588628, 0.597536, 0.127964, 0.709513, 0.998737, 0.657883, 0.380948, 0.638691, 0.935765, 0.724699, 0.634965, 0.0997543, 0.0848483, 0.563561, 0.224521, 0.68957, 0.018406, 0.973272, 0.245803, 0.0521846, 0.95593, 0.838984, 0.575486, 0.689339, 0.293988, 0.172232, 0.749088, 0.105492, 0.782773, 0.982242, 0.512855, 0.666952, 0.564991, 0.426079, 0.268583, 0.200784, 0.935242, 0.0378196, 0.447407, 0.547996, 0.965037, 0.934715, 0.440276, 0.958489, 0.173333, 0.123474, 0.0802499, 0.424981, 0.494363, 0.798343, 0.566251, 0.243821, 0.264189, 0.0951665, 0.537235, 0.53466, 0.976458, 0.268952, 0.749503, 0.154052, 0.436807, 0.25866, 0.958374, 0.899719, 0.439639, 0.0587805, 0.0208674, 0.917651, 0.921434, 0.165194, 0.760968, 0.671524, 0.0727238, 0.918638, 0.648259, 0.658971, 0.584858, 0.840813, 0.847814, 0.170104, 0.91862, 0.313914, 0.335469, 0.162633, 0.645348, 0.855711, 0.104972, 0.0329765, 0.396648, 0.400214, 0.603795, 0.384633, 0.859126, 0.0937945, 0.375272, 0.872602, 0.979902, 0.785618, 0.0772138, 0.540503, 0.09794, 0.17693, 0.641151, 0.763509, 0.631704, 0.794396, 0.120896, 0.070601, 0.157818, 0.489285, 0.119313, 0.715391, 0.540251, 0.254123, 0.952205, 0.546296, 0.493261, 0.229487, 0.0423695, 0.413891, 0.619045, 0.0137289, 0.963241, 0.068086, 0.877313, 0.576835, 0.893131, 0.800452, 0.796079, 0.0524707, 0.363082, 0.933241, 0.237574, 0.997836, 0.441316, 0.79692, 0.809117, 0.967089, 0.799937, 0.398065, 0.00212683, 0.469694, 0.885177, 0.341553, 0.13186, 0.91821, 0.358324, 0.310943, 0.145477, 0.830015, 0.589568, 0.44769, 0.674439, 0.162346, 0.237803, 0.540769, 0.451391, 0.598529, 0.282071, 0.293301, 0.0604747, 0.510597, 0.73881, 0.228732, 0.0567351, 0.455859, 0.19745, 0.553058, 0.564941, 0.775575, 0.693834, 0.258503, 0.237224, 0.339459, 0.14242, 0.239592, 0.783003, 0.050519, 0.515439, 0.325062, 0.78496, 0.983896, 0.947207, 0.728585, 0.21937, 0.7966, 0.668894, 0.434569, 0.880538, 0.0181109, 0.577499, 0.379877, 0.168695, 0.123193, 0.935591, 0.106843, 0.157375, 0.413981, 0.661202, 0.418603, 0.301505, 0.12235, 0.217523, 0.291922, 0.390134, 0.534702, 0.670236, 0.890481, 0.20324, 0.206657, 0.552903, 0.392794, 0.902983, 0.962504, 0.797904, 0.635953, 0.292137, 0.180469, 0.484039, 0.39552, 0.744105, 0.913101, 0.0137772, 0.124353, 0.197006, 0.406842, 0.622996, 0.142235, 0.996856, 0.434001, 0.656566, 0.59283, 0.176573, 0.144062, 0.852539, 0.500089, 0.869166, 0.11969, 0.586362, 0.422721, 0.246049, 0.159578, 0.00497406, 0.740171, 0.0764762, 0.430388, 0.87774, 0.908127, 0.985444, 0.14588, 0.722973, 0.733219, 0.191227, 0.443189, 0.0640015, 0.517273, 0.0306847, 0.373219, 0.351447, 0.770752, 0.746587, 0.551821, 0.809159, 0.59491, 0.188787, 0.112883, 0.566536, 0.819566, 0.410144, 0.54271, 0.332758, 0.615145, 0.191363, 0.489615, 0.354987, 0.960338, 0.623565, 0.957175, 0.505025, 0.642512, 0.473598, 0.375494, 0.998481, 0.785355, 0.110431, 0.431049, 0.751209, 0.349683, 0.422449, 0.711056, 0.56415, 0.548511, 0.723139, 0.553406, 0.781189, 0.933916, 0.198305, 0.713925, 0.996284, 0.129174, 0.197931, 0.686833, 0.179496, 0.503734, 0.588643, 0.891453, 0.104466, 0.295562, 0.501657, 0.354877, 0.850596, 0.144988, 0.513696, 0.675075, 0.547987, 0.958786, 0.816923, 0.482653, 0.0852548, 0.71496, 0.112995, 0.0584912, 0.0640326, 0.443337, 0.0521254, 0.932508, 0.682979, 0.780754, 0.153132, 0.520997, 0.593065, 0.879744, 0.829637, 0.580643, 0.618082, 0.560511, 0.971666, 0.0485484, 0.734169, 0.770737, 0.93916, 0.755172, 0.105978, 0.488665, 0.199998, 0.971012, 0.230891, 0.429226, 0.469178, 0.0224203, 0.439181, 0.635167, 0.162624, 0.102113, 0.499927, 0.989104, 0.323647, 0.520266, 0.182815, 0.894651, 0.183042, 0.184294, 0.371266, 0.923951, 0.297685, 0.661793, 0.162735, 0.54869, 0.612413, 0.849253, 0.0796882, 0.93868, 0.905974, 0.201802, 0.467066, 0.015462, 0.145179, 0.895501, 0.0399703, 0.73783, 0.928015, 0.290037, 0.0127794, 0.660176, 0.768915, 0.0611624, 0.59375, 0.197471, 0.993766, 0.668543, 0.561358, 0.705228, 0.193655, 0.340477, 0.175667, 0.411412, 0.495274, 0.20456, 0.439602, 0.429848, 0.789995, 0.668581, 0.140415, 0.755966, 0.878249, 0.0220638, 0.623944, 0.79379, 0.950259, 0.253693, 0.434523, 0.950525, 0.149035, 0.700093, 0.780686, 0.744102, 0.173265, 0.627226, 0.549647, 0.0228237, 0.473883, 0.00742775, 0.0821427, 0.379757, 0.344386, 0.736901, 0.339416, 0.262134, 0.38348, 0.101302, 0.152379, 0.0496804, 0.152217, 0.249193, 0.363546, 0.962433, 0.692226, 0.23119, 0.268991, 0.250231, 0.0950519, 0.351426, 0.646594, 0.341355, 0.997766, 0.510319, 0.72302, 0.552213, 0.207419, 0.750046, 0.70985, 0.420369, 0.985432, 0.909247, 0.205197, 0.478539, 0.512852, 0.672696, 0.971522, 0.556539, 0.780706, 0.889015, 0.544833, 0.498118, 0.272023, 0.018144, 0.746029, 0.083547, 0.980626, 0.699201, 0.461987, 0.624705, 0.563836, 0.708676, 0.492007, 0.687247, 0.993667, 0.446995, 0.197628, 0.599036, 0.0752622, 0.529617, 0.191455, 0.00515825, 0.127586, 0.312099, 0.223878, 0.00231979, 0.129675, 0.0727625, 0.909658, 0.524597, 0.937275, 0.827607, 0.736921, 0.494255, 0.291899, 0.453238, 0.396438, 0.0703756, 0.172434, 0.939525, 0.790865, 0.0328456, 0.588702, 0.217977, 0.412422, 0.460639, 0.465881, 0.0243425, 0.00895228, 0.0425363, 0.992284, 0.447183, 0.216484, 0.122755, 0.617058, 0.0431797, 0.692331, 0.818024, 0.825901, 0.88796, 0.0218601, 0.86947, 0.484876, 0.199033, 0.20534, 0.861005, 0.626784, 0.959516, 0.179813, 0.275457, 0.479256, 0.632075, 0.293118, 0.516963, 0.995624, 0.269653, 0.510676, 0.806218, 0.839128, 0.0744236, 0.00414232, 0.0808256, 0.290425, 0.850942, 0.251608, 0.432648, 0.254348, 0.729562, 0.130449, 0.0496187, 0.118903, 0.445543, 0.575739, 0.299474, 0.887744, 0.177957, 0.931709, 0.688859, 0.678725, 0.0825151, 0.561248, 0.0944602, 0.101246, 0.881836, 0.641342, 0.759043, 0.661163, 0.729505, 0.00116935, 0.951158, 0.651216, 0.582024, 0.183692, 0.0574782, 0.719584, 0.920926, 0.894845, 0.0250875, 0.236701, 0.0276926, 0.757403, 0.359298, 0.903896, 0.857549, 0.391836, 0.860684, 0.385672, 0.866655, 0.0525078, 0.199139, 0.734153, 0.113567, 0.962971, 0.696906, 0.109213, 0.732915, 0.519414, 0.254859, 0.563371, 0.802798, 0.703578, 0.219371, 0.326014, 0.51395, 0.0520437, 0.808046, 0.157353, 0.717751, 0.106514, 0.63996, 0.100496, 0.806815, 0.535318, 0.949571, 0.315457, 0.718858, 0.0144244, 0.493562, 0.679857, 0.537302, 0.257917, 0.248231, 0.970416, 0.215747, 0.260754, 0.705911, 0.337085, 0.0810561, 0.131216, 0.0964396, 0.0581134, 0.0652655, 0.367965, 0.570519, 0.543193, 0.485556, 0.877042, 0.68437, 0.0970229, 0.839031, 0.687555, 0.421574, 0.0072242, 0.112718, 0.376165, 0.256039, 0.905163, 0.481015, 0.976688, 0.44672, 0.505033, 0.827824, 0.871342, 0.612695, 0.368103, 0.316908, 0.0808598, 0.949908, 0.746749, 0.193154, 0.203643, 0.482257, 0.355387, 0.839368, 0.38212, 0.693222, 0.121367, 0.856845, 0.596884, 0.142164, 0.904448, 0.891239, 0.552777, 0.621616, 0.821323, 0.246115, 0.446838, 0.507474, 0.88037, 0.979186, 0.63586, 0.4092, 0.563701, 0.672052, 0.220747, 0.802606, 0.912292, 0.479805, 0.81934, 0.395447, 0.820209, 0.0807894, 0.0823812, 0.838224, 0.122338, 0.419926, 0.366944, 0.976147, 0.308975, 0.0502506, 0.164821, 0.508505, 0.05446, 0.417526, 0.674822, 0.451643, 0.738939, 0.907528, 0.139576, 0.815772, 0.604352, 0.335576, 0.629058, 0.739361, 0.339942, 0.654086, 0.983225, 0.800515, 0.421016, 0.242199, 0.705033, 0.667766, 0.607148, 0.883339, 0.129436, 0.960134, 0.416758, 0.782157, 0.575662, 0.310401, 0.280256, 0.0103829, 0.299996, 0.696368, 0.778568, 0.785373, 0.35414, 0.713419, 0.774064, 0.672779, 0.0335733, 0.0260403, 0.309257, 0.56561, 0.823762, 0.885718, 0.478146, 0.727463, 0.404819, 0.294524, 0.418617, 0.525707, 0.600867, 0.300731, 0.946569, 0.433926, 0.913954, 0.374384, 0.24482, 0.422946, 0.608803, 0.834739, 0.999752, 0.62248, 0.311682, 0.193417, 0.952556, 0.9488, 0.267526, 0.0338157, 0.334645, 0.70904, 0.713905, 0.845518, 0.213907, 0.321207, 0.15708, 0.65225, 0.746379, 0.192876, 0.503195, 0.77888, 0.070674, 0.316134, 0.72445, 0.695228, 0.152465, 0.545359, 0.400305, 0.498732, 0.216983, 0.484399, 0.0943073, 0.207141, 0.537247, 0.330498, 0.883461, 0.714721, 0.961275, 0.59487, 0.0636283, 0.737567, 0.6383, 0.483291, 0.247155, 0.857567, 0.631703, 0.429701, 0.454042, 0.714251, 0.979674, 0.665489, 0.53912, 0.523109, 0.0549938, 0.924437, 0.392357, 0.635091, 0.179913, 0.23256, 0.721207, 0.490126, 0.984059, 0.825843, 0.748589, 0.554943, 0.340699, 0.133856, 0.446496, 0.667434, 0.103882, 0.195872, 0.294135, 0.935846, 0.0890971, 0.544157, 0.563039, 0.46606, 0.1378, 0.654452, 0.122944, 0.073661, 0.553047, 0.32019, 0.897619, 0.564044, 0.470212, 0.491478, 0.692478, 0.059955, 0.690505, 0.585268, 0.839648, 0.487905, 0.795444, 0.855615, 0.588132, 0.493212, 0.313429, 0.301619, 0.958473, 0.705264, 0.508996, 0.709552, 0.363808, 0.236151, 0.641981, 0.379334, 0.588468, 0.920788, 0.247678, 0.724616, 0.126874, 0.411534, 0.467776, 0.176375, 0.902795, 0.257912, 0.523172, 0.12205, 0.64428, 0.690845, 0.807008, 0.400226, 0.055123, 0.691599, 0.329486, 0.490543, 0.471629, 0.946182, 0.383887, 0.624581, 0.514031, 0.356098, 0.479177, 0.270793, 0.522778, 0.541909, 0.188393, 0.770944, 0.727937, 0.586735, 0.812681, 0.00823873, 0.780915, 0.842566, 0.97061, 0.177203, 0.508702, 0.62454, 0.342503, 0.483114, 0.722538, 0.80982, 0.639306, 0.664388, 0.225568, 0.414917, 0.693165, 0.569524, 0.35426, 0.312786, 0.726347, 0.0639119, 0.476121, 0.192057, 0.543966, 0.590539, 0.231263, 0.686497, 0.98829, 0.75142, 0.564079, 0.0198914, 0.0859048, 0.452964, 0.7643, 0.932101, 0.979583, 0.186903, 0.385352, 0.517286, 0.552364, 0.903872, 0.248989, 0.197119, 0.424309, 0.969977, 0.524458, 0.471119, 0.833608, 0.980825, 0.28423, 0.212905, 0.259927, 0.709319, 0.952739, 0.400923, 0.346101, 0.557426, 0.345971, 0.696839, 0.369703, 0.74033, 0.317726, 0.810623, 0.00095053, 0.511518, 0.55232, 0.852479, 0.186896, 0.984056, 0.35133, 0.733324, 0.333542, 0.891915, 0.892631, 0.859045, 0.629717, 0.95311, 0.973292, 0.870052, 0.376442, 0.955109, 0.878706, 0.831966, 0.904439, 0.090226, 0.457511, 0.508178, 0.757862, 0.315269, 0.299051, 0.00307837, 0.0503489, 0.461593, 0.383666, 0.9412, 0.62874, 0.322915, 0.594926, 0.234609, 0.975646, 0.386876, 0.144096, 0.197405, 0.017263, 0.00194336, 0.529636, 0.490175, 0.0740788, 0.730821, 0.934975, 0.0852962, 0.961476, 0.628018, 0.171702, 0.469954, 0.360609, 0.554185, 0.470818, 0.161318, 0.890747, 0.729567, 0.839131, 0.757475, 0.885114, 0.861754, 0.684986, 0.822687, 0.190117, 0.0288109, 0.101413, 0.356411, 0.606827, 0.984595, 0.250643, 0.562617, 0.509067, 0.606134, 0.143183, 0.753764, 0.42892, 0.00569317, 0.331559, 0.228103, 0.856878, 0.139, 0.802178, 0.652949, 0.0898696, 0.349402, 0.0576169, 0.501473, 0.957921, 0.404505, 0.285333, 0.363342, 0.624577, 0.210267, 0.534573, 0.711512, 0.414286, 0.437086, 0.21548, 0.673452, 0.172285, 0.789582, 0.171501, 0.545055, 0.368777, 0.840091, 0.0795685, 0.443115, 0.937032, 0.97631, 0.833763, 0.350579, 0.612087, 0.241638, 0.604022, 0.205365, 0.0910252, 0.500496, 0.0618943, 0.306671, 0.135412, 0.879524, 0.727931, 0.311255, 0.613369, 0.553155, 0.97048, 0.286825, 0.65849, 0.328945, 0.926423, 0.222118, 0.770134, 0.00497807, 0.241586, 0.371391, 0.0499316, 0.860676, 0.388414, 0.0490442, 0.841403, 0.788269, 0.00710306, 0.591672, 0.476099, 0.863898, 0.646663, 0.26467, 0.865229, 0.878215, 0.745007, 0.18261, 0.321436, 0.0869906, 0.121174, 0.386345, 0.367444, 0.336269, 0.749858, 0.297982, 0.698849, 0.853547, 0.935968, 0.94279, 0.950681, 0.197965, 0.396266, 0.129254, 0.931324, 0.523649, 0.499535, 0.509434, 0.386011, 0.546035, 0.683498, 0.811974, 0.667707, 0.0393593, 0.255919, 0.924579, 0.871657, 0.469282, 0.042623, 0.227752, 0.805485, 0.536926, 0.982236, 0.336951, 0.155744, 0.252055, 0.0254342, 0.727967, 0.272359, 0.47154, 0.953559, 0.0391744, 0.231566, 0.79129, 0.799607, 0.0838479, 0.33954, 0.943043, 0.791206, 0.953935, 0.534319, 0.243267, 0.029661, 0.485159, 0.671489, 0.31243, 0.0255479, 0.0498638, 0.67887, 0.749428, 0.3063, 0.264987, 0.566766, 0.486102, 0.384858, 0.344514, 0.0420542, 0.740293, 0.456772, 0.555114, 0.5424, 0.343212, 0.54725, 0.634486, 0.501399, 0.788969, 0.647696, 0.711318, 0.21642, 0.552437, 0.860784, 0.483015, 0.102228, 0.0410136, 0.700498, 0.496406, 0.934693, 0.992023, 0.765688, 0.423802, 0.538972, 0.0667414, 0.390147, 0.11476, 0.598344, 0.638864, 0.0181589, 0.28639, 0.496866, 0.217171, 0.59036, 0.0793986, 0.899908, 0.830652, 0.164535, 0.614489, 0.125172, 0.702629, 0.765871, 0.0599793, 0.736008, 0.804631, 0.588334, 0.874484, 0.0219589, 0.665231, 0.021349, 0.763559, 0.271918, 0.895048, 0.360778, 0.154612, 0.756385, 0.791282, 0.761342, 0.48507, 0.333422, 0.561764, 0.337604, 0.863646, 0.569103, 0.225558, 0.959984, 0.302282, 0.482395, 0.492459, 0.546571, 0.0969414, 0.295959, 0.114857, 0.588218, 0.158047, 0.582859, 0.128798, 0.350742, 0.23493, 0.355987, 0.948633, 0.24425, 0.48679, 0.781629, 0.613991, 0.00259594, 0.832076, 0.226109, 0.353453, 0.293911, 0.53209, 0.280915, 0.312423, 0.853643, 0.735621, 0.786695, 0.558889, 0.826306, 0.824058, 0.865441, 0.691746, 0.984011, 0.953064, 0.768883, 0.075343, 0.644279, 0.606134, 0.637826, 0.96824, 0.867386, 0.662157, 0.282204, 0.854771, 0.575143, 0.760855, 0.425274, 0.526426, 0.51551, 0.173752, 0.250269, 0.0718145, 0.86036, 0.972755, 0.922556, 0.786071, 0.912873, 0.308962, 0.807096, 0.6535, 0.994705, 0.073716, 0.618295, 0.492507, 0.553491, 0.769549, 0.466125, 0.671833, 0.596665, 0.376966, 0.976303, 0.114262, 0.33294, 0.311872, 0.832442, 0.030041, 0.560114, 0.489543, 0.172893, 0.02074, 0.0487108, 0.709956, 0.714885, 0.499625, 0.505481, 0.0465617, 0.778833, 0.564333, 0.178409, 0.811857, 0.610094, 0.486218, 0.126869, 0.663186, 0.852589, 0.551538, 0.398321, 0.599403, 0.761502, 0.448972, 0.0349859, 0.381255, 0.459973, 0.357422, 0.591028, 0.551849, 0.780519, 0.399729, 0.992049, 0.610586, 0.167629, 0.913926, 0.00525993, 0.463541, 0.687116, 0.0301318, 0.998411, 0.303014, 0.389526, 0.191397, 0.0485435, 0.645825, 0.0644446, 0.545485, 0.803161, 0.527352, 0.0392867, 0.402408, 0.180068, 0.342006, 0.122349, 0.494184, 0.816004, 0.141213, 0.887642, 0.677055, 0.81867, 0.0713925, 0.294113, 0.243646, 0.0916459, 0.415963, 0.102229, 0.675766, 0.648715, 0.3249, 0.023914, 0.716525, 0.520458, 0.55829, 0.0192804, 0.792391, 0.327761, 0.00986895, 0.926089, 0.641364, 0.556168, 0.679491, 0.359651, 0.765137, 0.448557, 0.832623, 0.531892, 0.0401571, 0.820219, 0.4483, 0.399641, 0.0522186, 0.498818, 0.941872, 0.152986, 0.719836, 0.646759, 0.773646, 0.525147, 0.67968, 0.0677296, 0.414053, 0.191738, 0.137422, 0.112622, 0.36914, 0.935913, 0.118887, 0.431148, 0.79774, 0.266562, 0.29987, 0.487814, 0.632592, 0.728103, 0.788662, 0.928283, 0.680062, 0.92501, 0.572043, 0.837907, 0.377004, 0.260299, 0.419454, 0.434112, 0.812986, 0.867119, 0.906811, 0.929856, 0.252947, 0.365709, 0.176834, 0.270347, 0.821275, 0.788086, 0.746725, 0.527146, 0.773846, 0.34274, 0.972822, 0.419464, 0.873507, 0.508657, 0.930039, 0.0300526, 0.0276344, 0.742487, 0.920272, 0.667396, 0.636921, 0.356219, 0.421662, 0.97804, 0.795539, 0.691565, 0.449484, 0.927937, 0.446389, 0.31938, 0.963623, 0.977388, 0.267271, 0.981866, 0.178604, 0.927389, 0.692281, 0.398067, 0.26157, 0.275562, 0.740463, 0.0300114, 0.644454, 0.020473, 0.823367, 0.476134, 0.91428, 0.690258, 0.430381, 0.132247, 0.134522, 0.792323, 0.414874, 0.579072, 0.216163, 0.333439, 0.500119, 0.302189, 0.223479, 0.353756, 0.26351, 0.323033, 0.345635, 0.494739, 0.773011, 0.202248, 0.675009, 0.44436, 0.10568, 0.792557, 0.273839, 0.771164, 0.217629, 0.0117101, 0.447494, 0.262039, 0.0729463, 0.168122, 0.932708, 0.523333, 0.661263, 0.588571, 0.436633, 0.464305, 0.792759, 0.0922854, 0.226091, 0.457019, 0.991399, 0.297617, 0.891445, 0.674486, 0.610306, 0.458768, 0.346884, 0.859144, 0.394789, 0.505957, 0.756246, 0.927334, 0.18868, 0.446175, 0.889549, 0.810579, 0.129489, 0.935933, 0.791653, 0.800206, 0.492832, 0.247432, 0.333932, 0.865335, 0.850728, 0.0397239, 0.430762, 0.678164, 0.607935, 0.812988, 0.472954, 0.654096, 0.195102, 0.589594, 0.259284, 0.0235512, 0.816587, 0.913337, 0.626546, 0.197613, 0.960908, 0.448535, 0.826306, 0.974263, 0.237144, 0.283808, 0.76009, 0.774733, 0.521747, 0.093365, 0.56867, 0.974468, 0.82523, 0.486585, 0.0876118, 0.844382, 0.184445, 0.902508, 0.914591, 0.315663, 0.223033, 0.0797762, 0.520933, 0.80171, 0.558458, 0.19027, 0.0600096, 0.837953, 0.27773, 0.311072, 0.689664, 0.961714, 0.178571, 0.0782305, 0.255316, 0.852218, 0.284925, 0.169079, 0.247419, 0.428893, 0.509164, 0.529034, 0.0932099, 0.532579, 0.00556066, 0.661644, 0.0307554, 0.588391, 0.179421, 0.0119119, 0.514301, 0.259695, 0.626493, 0.379885, 0.511277, 0.279113, 0.353348, 0.972152, 0.166663, 0.838509, 0.422474, 0.171259, 0.400788, 0.601623, 0.470386, 0.503779, 0.62779, 0.82932, 0.895982, 0.0824422, 0.789089, 0.727913, 0.474258, 0.0497131, 0.00955813, 0.252122, 0.890049, 0.337881, 0.484709, 0.273788, 0.999112, 0.740117, 0.404148, 0.190148, 0.903226, 0.491247, 0.303718, 0.118576, 0.880404, 0.710057, 0.814665, 0.056526, 0.873991, 0.807616, 0.7606, 0.0980763, 0.479651, 0.469628, 0.721994, 0.798353, 0.189775, 0.655126, 0.36509, 0.369786, 0.315095, 0.343931, 0.983116, 0.555985, 0.225449, 0.566013, 0.125261, 0.0206297, 0.899223, 0.397869, 0.0086109, 0.528844, 0.36998, 0.419304, 0.352928, 0.398114, 0.738457, 0.229685, 0.322922, 0.991783, 0.993516, 0.00377801, 0.661103, 0.680122, 0.948009, 0.924472, 0.246157, 0.993241, 0.395537, 0.130494, 0.379061, 0.482428, 0.606916, 0.342766, 0.693158, 0.90456, 0.303971, 0.784298, 0.821562, 0.0634914, 0.851069, 0.0973823, 0.972907, 0.873059, 0.820636, 0.629946, 0.118271, 0.211263, 0.720244, 0.337837, 0.928264, 0.318676, 0.131561, 0.40809, 0.0659858, 0.79075, 0.274425, 0.156597, 0.514231, 0.366287, 0.996598, 0.681998, 0.57301, 0.165393, 0.163006, 0.53473, 0.155232, 0.802874, 0.490654, 0.442575, 0.646104, 0.0417704, 0.400137, 0.842228, 0.255275, 0.282046, 0.268781, 0.100579, 0.949506, 0.651639, 0.33989, 0.28822, 0.796744, 0.960923, 0.811584, 0.205499, 0.250308, 0.674535, 0.863348, 0.802493, 0.281164, 0.288604, 0.801861, 0.756335, 0.182745, 0.26038, 0.639078, 0.0118065, 0.771779, 0.749096, 0.756532, 0.576785, 0.699314, 0.716363, 0.387166, 0.684195, 0.227072, 0.599258, 0.374418, 0.515709, 0.0850697, 0.216767, 0.388641, 0.35353, 0.390818, 0.488494, 0.875992, 0.55097, 0.979684, 0.66537, 0.322002, 0.956732, 0.989972, 0.759803, 0.68069, 0.302221, 0.524167, 0.193841, 0.561364, 0.881131, 0.126314, 0.221103, 0.831082, 0.732482, 0.306293, 0.25238, 0.518912, 0.664075, 0.854708, 0.410863, 0.422132, 0.790214, 0.624666, 0.826667, 0.742433, 0.643664, 0.257051, 0.291887, 0.30994, 0.984902, 0.34293, 0.417699, 0.973489, 0.18253, 0.335018, 0.645121, 0.853594, 0.142092, 0.00140872, 0.438017, 0.660029, 0.0439089, 0.760549, 0.17638, 0.867179, 0.568021, 0.248953, 0.203794, 0.929354, 0.796162, 0.150492, 0.294376, 0.0365475, 0.7358, 0.580934, 0.745314, 0.621556, 0.555663, 0.947511, 0.940511, 0.595953, 0.669709, 0.0868572, 0.368872, 0.529678, 0.761891, 0.79758, 0.840227, 0.285224, 0.909886, 0.446478, 0.330743, 0.776215, 0.836051, 0.88733, 0.874798, 0.272198, 0.738723, 0.0737272, 0.918806, 0.127292, 0.524442, 0.132595, 0.787819, 0.517401, 0.642899, 0.378123, 0.841222, 0.585387, 0.621287, 0.0283291, 0.808297, 0.0812849, 0.850406, 0.460515, 0.767217, 0.322963, 0.192544, 0.716186, 0.193532, 0.484245, 0.673234, 0.847921, 0.225627, 0.848513, 0.40118, 0.849782, 0.418573, 0.347771, 0.855674, 0.0714761, 0.195996, 0.00437628, 0.352138, 0.473055, 0.70412, 0.621735, 0.178853, 0.371567, 0.653595, 0.189244, 0.351817, 0.899764, 0.235987, 0.221373, 0.458357, 0.340361, 0.684854, 0.408874, 0.777796, 0.969712, 0.85128, 0.348101, 0.801514, 0.458754, 0.713774, 0.682207, 0.416362, 0.954578, 0.0584264, 0.85257, 0.563311, 0.122204, 0.882302, 0.171371, 0.490891, 0.329193, 0.913678, 0.65997, 0.310574, 0.623693, 0.473249, 0.640358, 0.608075, 0.222066, 0.707867, 0.117805, 0.117652, 0.17752, 0.173416, 0.539982, 0.510867, 0.672772, 0.250098, 0.371021, 0.10894, 0.314708, 0.604465, 0.783892, 0.552285, 0.82579, 0.439523, 0.653172, 0.629957, 0.622902, 0.0065166, 0.841154, 0.0814163, 0.0985239, 0.593193, 0.22948, 0.531344, 0.481579, 0.767712, 0.166649, 0.841859, 0.683126, 0.867295, 0.832777, 0.973099, 0.0271803, 0.947553, 0.00621338, 0.0738052, 0.535525, 0.050823, 0.518615, 0.187707, 0.436181, 0.0177505, 0.947396, 0.319046, 0.0448127, 0.886991, 0.269284, 0.582218, 0.107443, 0.126828, 0.419803, 0.349143, 0.90281, 0.104078, 0.178948, 0.84054, 0.65621, 0.504473, 0.16552, 0.561898, 0.493207, 0.230607, 0.147987, 0.308696, 0.956418, 0.546902, 0.957827, 0.792695, 0.311232, 0.903448, 0.340009, 0.933647, 0.701222, 0.800572, 0.965257, 0.851995, 0.732689, 0.156221, 0.651537, 0.650012, 0.486839, 0.916366, 0.262605, 0.340967, 0.600215, 0.0109303, 0.884928, 0.705577, 0.662114, 0.463401, 0.305938, 0.598698, 0.156752, 0.0471922, 0.577322, 0.214467, 0.720244, 0.641074, 0.425668, 0.882058, 0.855877, 0.759533, 0.428873, 0.442939, 0.34863, 0.559511, 0.546673, 0.889679, 0.705352, 0.331606, 0.722972, 0.191987, 0.880071, 0.121, 0.229362, 0.900354, 0.160051, 0.416177, 0.746829, 0.373132, 0.907209, 0.476464, 0.981733, 0.442532, 0.783611, 0.437506, 0.388315, 0.615209, 0.107328, 0.0905414, 0.771929, 0.901086, 0.778449, 0.553645, 0.303516, 0.966506, 0.787031, 0.111003, 0.876478, 0.877366, 0.998614, 0.0275316, 0.126583, 0.333877, 0.320575, 0.695409, 0.367766, 0.0619515, 0.558233, 0.667851, 0.362001, 0.511192, 0.593832, 0.104918, 0.223187, 0.95935, 0.586756, 0.552799, 0.688142, 0.959247, 0.302578, 0.829863, 0.37575, 0.906485, 0.689028, 0.319606, 0.248993, 0.0570994, 0.725527, 0.0163315, 0.246428, 0.288259, 0.936057, 0.019056, 0.577446, 0.892901, 0.976875, 0.260174, 0.101546, 0.909216, 0.888497, 0.890482, 0.443225, 0.147186, 0.948733, 0.169857, 0.302271, 0.593198, 0.180348, 0.969808, 0.84065, 0.38528, 0.509264, 0.623012, 0.416222, 0.765992, 0.591265, 0.703121, 0.0857105, 0.129768, 0.345686, 0.911736, 0.521593, 0.583656, 0.495557, 0.524357, 0.611519, 0.0110056, 0.81857, 0.847559, 0.451589, 0.986858, 0.231394, 0.986387, 0.47108, 0.0798482, 0.0484913, 0.566229, 0.289017, 0.529059, 0.591231, 0.97866, 0.322908, 0.0274567, 0.296049, 0.974199, 0.0491088, 0.231948, 0.261758, 0.163036, 0.78452, 0.282729, 0.20247, 0.031378, 0.764975, 0.660229, 0.284101, 0.601626, 0.375652, 0.268876, 0.122623, 0.801724, 0.211906, 0.116186, 0.679825, 0.999403, 0.119206, 0.251004, 0.77768, 0.54229, 0.0891417, 0.691306, 0.0877097, 0.25466, 0.578414, 0.614318, 0.542089, 0.377539, 0.854583, 0.933576, 0.202052, 0.152883, 0.220008, 0.757031, 0.629259, 0.263746, 0.725689, 0.536366, 0.978988, 0.777539, 0.813108, 0.817181, 0.530806, 0.0939171, 0.242994, 0.874139, 0.747708, 0.807063, 0.0350361, 0.533946, 0.319516, 0.680287, 0.436791, 0.739375, 0.740547, 0.154306, 0.701016, 0.00234878, 0.939335, 0.862891, 0.593673, 0.719357, 0.181157, 0.0885877, 0.485182, 0.700532, 0.114159, 0.956177, 0.0805812, 0.302443, 0.117464, 0.783196, 0.639125, 0.753739, 0.379389, 0.502846, 0.583664, 0.0196653, 0.250722, 0.39182, 0.721552, 0.66313, 0.295055, 0.342602, 0.889733, 0.388999, 0.861722, 0.831452, 0.988328, 0.477979, 0.415305, 0.526842, 0.71775, 0.810882, 0.688081, 0.388987, 0.201506, 0.0903916, 0.66571, 0.401052, 0.655103, 0.869451, 0.980343, 0.369992, 0.164526, 0.113849, 0.420296, 0.0916802, 0.928891, 0.538109, 0.956781, 0.343222, 0.298249, 0.0215474, 0.545035, 0.830245, 0.662835, 0.104736, 0.0493058, 0.93374, 0.0414065, 0.833949, 0.138226, 0.557654, 0.594962, 0.22009, 0.722154, 0.8246, 0.0997313, 0.599946, 0.708322, 0.198689, 0.614759, 0.469621, 0.984223, 0.770478, 0.595345, 0.0143708, 0.261983, 0.103563, 0.207683, 0.996445, 0.583387, 0.87197, 0.399747, 0.15654, 0.356559, 0.839196, 0.0784418, 0.671753, 0.392062, 0.205537, 0.0189803, 0.807179, 0.495353, 0.00446501, 0.964691, 0.229715, 0.971734, 0.7399, 0.398118, 0.189112, 0.725908, 0.0376952, 0.471589, 0.734895, 0.749929, 0.456986, 0.251562, 0.695605, 0.485735, 0.911215, 0.0309049, 0.462976, 0.234532, 0.275878, 0.828262, 0.147824, 0.829732, 0.367973, 0.271491, 0.671973, 0.725092, 0.575875, 0.314053, 0.283632, 0.776727, 0.567926, 0.487624, 0.00710749, 0.4581, 0.507153, 0.438787, 0.599484, 0.0630961, 0.446721, 0.147339, 0.880934, 0.764336, 0.533937, 0.705525, 0.424653, 0.742123, 0.0696696, 0.199586, 0.495463, 0.182899, 0.864884, 0.141033, 0.713732, 0.670125, 0.39876, 0.200447, 0.935647, 0.142121, 0.823798, 0.894973, 0.0688477, 0.444488, 0.237844, 0.652158, 0.0583972, 0.672934, 0.0409217, 0.449197, 0.998904, 0.017062, 0.527327, 0.594482, 0.919851, 0.642763, 0.0166157, 0.146743, 0.202536, 0.710072, 0.220063, 0.42262, 0.401871, 0.442955, 0.0388413, 0.825911, 0.455906, 0.645273, 0.552892, 0.421103, 0.255049, 0.211356, 0.0938391, 0.370987, 0.923417, 0.411729, 0.215158, 0.660066, 0.518895, 0.116835, 0.258864, 0.502941, 0.547548, 0.534453, 0.621126, 0.135573, 0.674448, 0.425275, 0.899835, 0.438131, 0.711096, 0.616808, 0.376458, 0.379622, 0.00695235, 0.652446, 0.864579, 0.82628, 0.069206, 0.261676, 0.148714, 0.232246, 0.795325, 0.213598, 0.575413, 0.0716856, 0.649749, 0.359545, 0.548619, 0.190285, 0.290353, 0.285725, 0.531256, 0.748506, 0.612982, 0.166108, 0.804547, 0.0111855, 0.930841, 0.5736, 0.951222, 0.990194, 0.149537, 0.857895, 0.866818, 0.48156, 0.697083, 0.892048, 0.106432, 0.282388, 0.106496, 0.644213, 0.0825565, 0.99033, 0.74448, 0.912348, 0.513386, 0.618006, 0.0383737, 0.629989, 0.319011, 0.0181079, 0.986454, 0.349811, 0.314267, 0.240873, 0.167084, 0.290668, 0.660774, 0.918395, 0.257655, 0.7115, 0.440883, 0.0940582, 0.212359, 0.338975, 0.533599, 0.62604, 0.165259, 0.864207, 0.664372, 0.441045, 0.633473, 0.430536, 0.293942, 0.467641, 0.330037, 0.211291, 0.855025, 0.724142, 0.746025, 0.381033, 0.145113, 0.661244, 0.00047397, 0.318483, 0.125864, 0.154241, 0.951409, 0.296145, 0.144645, 0.916007, 0.45091, 0.329749, 0.68544, 0.271914, 0.968292, 0.538024, 0.362295, 0.226466, 0.720538, 0.446668, 0.55843, 0.984257, 0.57587, 0.435172, 0.465055, 0.974807, 0.879132, 0.606958, 0.272897, 0.928581, 0.163117, 0.338888, 0.187483, 0.777955, 0.0344172, 0.847382, 0.0359137, 0.82887, 0.0367074, 0.985197, 0.761066, 0.763216, 0.307284, 0.436844, 0.348138, 0.655239, 0.949047, 0.489637, 0.187679, 0.562968, 0.992744, 0.527728, 0.596024, 0.742456, 0.803745, 0.56077, 0.64699, 0.512688, 0.804106, 0.528222, 0.78619, 0.046336, 0.858301, 0.221091, 0.0275115, 0.614239, 0.584934, 0.894209, 0.433158, 0.397711, 0.54934, 0.238469, 0.756508, 0.461006, 0.536856, 0.61681, 0.904252, 0.957949, 0.00946035, 0.98205, 0.281272, 0.749333, 0.207199, 0.33586, 0.5621, 0.494833, 0.0953187, 0.264148, 0.978974, 0.624195, 0.422894, 0.574342, 0.586763, 0.407432, 0.671367, 0.691812, 0.0354768, 0.544334, 0.53725, 0.0523175, 0.931544, 0.696832, 0.535487, 0.562655, 0.978433, 0.9759, 0.6137, 0.88824, 0.634806, 0.91389, 0.802327, 0.788886, 0.29587, 0.359461, 0.330227, 0.192235, 0.33422, 0.166573, 0.410696, 0.173734, 0.914069, 0.295933, 0.119086, 0.408076, 0.538984, 0.142058, 0.00935989, 0.315463, 0.342517, 0.674444, 0.228584, 0.153145, 0.126419, 0.0146576, 0.543831, 0.399264, 0.266148, 0.897295, 0.42099, 0.45644, 0.951078, 0.933947, 0.152281, 0.893732, 0.0116767, 0.38166, 0.5368, 0.093994, 0.363905, 0.302806, 0.186361, 0.985696, 0.314611, 0.209669, 0.392243, 0.111831, 0.918114, 0.601192, 0.889127, 0.0664733, 0.877663, 0.237696, 0.48902, 0.00822174, 0.95089, 0.287086, 0.587423, 0.605854, 0.321565, 0.997006, 0.313941, 0.326961, 0.607774, 0.336284, 0.663275, 0.745426, 0.921719, 0.364348, 0.777875, 0.393044, 0.10163, 0.00308402, 0.0668498, 0.279901, 0.65965, 0.642138, 0.747309, 0.328212, 0.623957, 0.398941, 0.207494, 0.841148, 0.612283, 0.223398, 0.73807, 0.529274, 0.265768, 0.958483, 0.286796, 0.53327, 0.0956185, 0.52155, 0.912272, 0.812075, 0.76738, 0.724869, 0.0703279, 0.571684, 0.576001, 0.558419, 0.535236, 0.510872, 0.995674, 0.879704, 0.166254, 0.842393, 0.37984, 0.923193, 0.956935, 0.0477059, 0.0734965, 0.874884, 0.849077, 0.207027, 0.124655, 0.309133, 0.6932, 0.546135, 0.8569, 0.563165, 0.73295, 0.385436, 0.857465, 0.891117, 0.938905, 0.13618, 0.632439, 0.684117, 0.501954, 0.0890991, 0.288565, 0.17376, 0.0915308, 0.653107, 0.845979, 0.789127, 0.439814, 0.22862, 0.806013, 0.233774, 0.943114, 0.954302, 0.933807, 0.657556, 0.164121, 0.624513, 0.782399, 0.166331, 0.425038, 0.112441, 0.055798, 0.480522, 0.108632, 0.212424, 0.109991, 0.972284, 0.766122, 0.798159, 0.280962, 0.403135, 0.73327, 0.600336, 0.610574, 0.540811, 0.895212, 0.162785, 0.76752, 0.397826, 0.746574, 0.65947, 0.0890833, 0.174131, 0.348146, 0.89503, 0.787937, 0.829608, 0.263003, 0.521369, 0.879155, 0.269169, 0.142506, 0.0333792, 0.704816, 0.721753, 0.795799, 0.399332, 0.0642958, 0.838391, 0.203988, 0.703254, 0.578773, 0.260028, 0.244866, 0.0521185, 0.0643188, 0.902621, 0.333046, 0.34006, 0.763157, 0.438156, 0.995069, 0.503676, 0.0424489, 0.954542, 0.0501422, 0.72261, 0.180772, 0.405272, 0.905464, 0.397728, 0.481824, 0.219146, 0.18593, 0.361789, 0.540865, 0.212726, 0.0145311, 0.996108, 0.949028, 0.0313359, 0.892986, 0.209844, 0.0204217, 0.143729, 0.149781, 0.80839, 0.601906, 0.314669, 0.644023, 0.318997, 0.290432, 0.292971, 0.279199, 0.246305, 0.302936, 0.588377, 0.427576, 0.422404, 0.640749, 0.590413, 0.797506, 0.391294, 0.845834, 0.737661, 0.455596, 0.996297, 0.935487, 0.888209, 0.196764, 0.214778, 0.665268, 0.13161, 0.279638, 0.435887, 0.395731, 0.542431, 0.181147, 0.143058, 0.344884, 0.341706, 0.420025, 0.95141, 0.199822, 0.649671, 0.977817, 0.719646, 0.873828, 0.214876, 0.217572, 0.904443, 0.804816, 0.0704537, 0.332569, 0.244298, 0.30215, 0.0706434, 0.782896, 0.100429, 0.986729, 0.104373, 0.221871, 0.686011, 0.903187, 0.658629, 0.00593545, 0.66306, 0.510265, 0.824122, 0.66244, 0.845467, 0.979222, 0.107885, 0.158799, 0.903068, 0.939234, 0.412399, 0.324726, 0.16968, 0.910127, 0.107273, 0.316888, 0.835599, 0.0330597, 0.573721, 0.86464, 0.717939, 0.649407, 0.89027, 0.806881, 0.663934, 0.571069, 0.949662, 0.857635, 0.0942166, 0.656745, 0.316127, 0.137846, 0.358969, 0.747496, 0.427922, 0.584548, 0.43169, 0.454915, 0.356048, 0.00170449, 0.26271, 0.0553734, 0.712526, 0.699642, 0.626845, 0.216316, 0.59791, 0.914564, 0.73967, 0.0456612, 0.0303278, 0.619759, 0.93395, 0.0345666, 0.34491, 0.161455, 0.433299, 0.898209, 0.591036, 0.0803389, 0.331712, 0.921816, 0.856827, 0.236875, 0.618282, 0.893639, 0.698095, 0.228753, 0.946864, 0.45136, 0.298134, 0.207007, 0.0854858, 0.119187, 0.635895, 0.52909, 0.69962, 0.127592, 0.15653, 0.23986, 0.733369, 0.544024, 0.0871906, 0.494791, 0.802796, 0.657784, 0.229278, 0.667806, 0.661302, 0.796142, 0.904963, 0.366172, 0.545317, 0.669708, 0.810318, 0.459827, 0.486483, 0.74267, 0.624436, 0.818295, 0.371175, 0.497552, 0.521131, 0.984321, 0.125459, 0.422566, 0.176894, 0.597355, 0.387584, 0.390039, 0.676318, 0.76024, 0.682459, 0.887529, 0.982262, 0.546939, 0.666575, 0.121634, 0.128986, 0.848621, 0.563456, 0.610312, 0.655875, 0.10287, 0.271705, 0.709657, 0.360677, 0.166403, 0.944628, 0.479802, 0.410072, 0.350689, 0.387629, 0.32527, 0.204866, 0.32971, 0.323529, 0.0405677, 0.715867, 0.373414, 0.0464384, 0.41172, 0.453869, 0.764397, 0.907818, 0.0541775, 0.399667, 0.238141, 0.697363, 0.459104, 0.250045, 0.838594, 0.50154, 0.573339, 0.159081, 0.844144, 0.0314762, 0.454688, 0.785239, 0.801135, 0.639101, 0.373761, 0.48864, 0.649401, 0.786162, 0.124549, 0.817864, 0.819934, 0.827829, 0.49073, 0.233411, 0.0887261, 0.494884, 0.578041, 0.633325, 0.430376, 0.480944, 0.530314, 0.969412, 0.826959, 0.884511, 0.820284, 0.233308, 0.999118, 0.0519965, 0.825901, 0.708105, 0.734174, 0.448959, 0.195161, 0.804685, 0.680453, 0.506802, 0.246122, 0.9991, 0.281302, 0.14217, 0.358793, 0.729983, 0.614269, 0.799955, 0.877031, 0.305935, 0.780001, 0.713362, 0.920822, 0.264835, 0.710924, 0.990316, 0.842847, 0.852389, 0.972967, 0.76547, 0.10173, 0.48786, 0.0459325, 0.255809, 0.956663, 0.180142, 0.998191, 0.997955, 0.185299, 0.602267, 0.491361, 0.875398, 0.0658466, 0.567658, 0.997795, 0.591734, 0.249337, 0.552591, 0.647966, 0.805961, 0.851738, 0.377059, 0.530383, 0.653499, 0.107055, 0.487349, 0.676637, 0.829513, 0.649088, 0.626673, 0.922129, 0.771083, 0.249981, 0.459453, 0.26202, 0.249224, 0.692789, 0.934312, 0.7581, 0.334683, 0.925708, 0.0535473, 0.549126, 0.174379, 0.890911, 0.469886, 0.0168745, 0.225596, 0.490898, 0.665503, 0.56331, 0.785783, 0.406198, 0.648971, 0.556845, 0.968865, 0.584668, 0.0468998, 0.303567, 0.1311, 0.638951, 0.717894, 0.915575, 0.173391, 0.671815, 0.366176, 0.741083, 0.560976, 0.528959, 0.503424, 0.313394, 0.317896, 0.122852, 0.790566, 0.588063, 0.867979, 0.901013, 0.286144, 0.519279, 0.268692, 0.789779, 0.986381, 0.147227, 0.483949, 0.29949, 0.9893, 0.183272, 0.651737, 0.0700821, 0.513175, 0.321574, 0.533289, 0.0188718, 0.283338, 0.658904, 0.450936, 0.308419, 0.238598, 0.491723, 0.3378, 0.674554, 0.317872, 0.833756, 0.404867, 0.858322, 0.951014, 0.462002, 0.213524, 0.907227, 0.966018, 0.943972, 0.240083, 0.824311, 0.0136299, 0.0415106, 0.211277, 0.823492, 0.0955109, 0.491925, 0.489097, 0.131855, 0.576084, 0.185541, 0.367526, 0.639359, 0.10945, 0.0304542, 0.134525, 0.79432, 0.803408, 0.75494, 0.265617, 0.272427, 0.898437, 0.179157, 0.418492, 0.0192533, 0.712957, 0.414789, 0.460179, 0.354575, 0.403837, 0.799037, 0.597008, 0.965766, 0.334546, 0.166894, 0.473735, 0.464255, 0.640725, 0.569866, 0.333975, 0.219429, 0.153702, 0.753632, 0.451345, 0.43749, 0.994772, 0.956143, 0.0781375, 0.9015, 0.260371, 0.52886, 0.104433, 0.320454, 0.0454706, 0.856138, 0.426182, 0.69376, 0.766984, 0.84683, 0.490401, 0.682308, 0.0449822, 0.754187, 0.0369971, 0.911769, 0.0797669, 0.417506, 0.231764, 0.647801, 0.823268, 0.544316, 0.0549245, 0.225344, 0.793053, 0.820461, 0.931705, 0.50056, 0.459531, 0.192332, 0.799059, 0.620209, 0.0882766, 0.796886, 0.388648, 0.695499, 0.480631, 0.975325, 0.396253, 0.0500061, 0.13329, 0.765852, 0.0275982, 0.229545, 0.748629, 0.612383, 0.47132, 0.918444, 0.708658, 0.247371, 0.20317, 0.415411, 0.336757, 0.971761, 0.460052, 0.458069, 0.410259, 0.624179, 0.843347, 0.588644, 0.281138, 0.400356, 0.0439346, 0.376624, 0.92801, 0.287149, 0.0609871, 0.665996, 0.503455, 0.746663, 0.532239, 0.642501, 0.791451, 0.560526, 0.943232, 0.384689, 0.512636, 0.507541, 0.274697, 0.559578, 0.340455, 0.13262, 0.318885, 0.441004, 0.668159, 0.0839833, 0.894819, 0.141383, 0.158399, 0.78188, 0.923151, 0.0128941, 0.374007, 0.77666, 0.876198, 0.389595, 0.0871047, 0.996259, 0.845139, 0.687196, 0.121923, 0.445344, 0.963142, 0.117184, 0.909071, 0.582335, 0.0248982, 0.273772, 0.864425, 0.652238, 0.678229, 0.549301, 0.430469, 0.432778, 0.972329, 0.0430739, 0.230677, 0.378969, 0.770843, 0.571774, 0.253866, 0.232173, 0.771504, 0.379452, 0.650724, 0.885934, 0.759265, 0.685853, 0.209983, 0.991538, 0.312572, 0.124554, 0.93123, 0.465089, 0.426527, 0.364899, 0.444177, 0.538276, 0.981309, 0.509641, 0.680088, 0.688518, 0.722841, 0.0184349, 0.955936, 0.817036, 0.412555, 0.0763725, 0.523845, 0.00403837, 0.786148, 0.962713, 0.0550463, 0.960108, 0.411254, 0.537216, 0.32681, 0.10792, 0.477548, 0.262875, 0.423429, 0.898253, 0.690482, 0.871238, 0.569451, 0.48595, 0.927744, 0.389064, 0.480579, 0.610086, 0.339745, 0.967366, 0.247182, 0.629689, 0.479802, 0.289142, 0.957839, 0.290307, 0.0344763, 0.25645, 0.200464, 0.654806, 0.617545, 0.408059, 0.304512, 0.925965, 0.838382, 0.373956, 0.633223, 0.619079, 0.148073, 0.118666, 0.443222, 0.432855, 0.885924, 0.148833, 0.787847, 0.239637, 0.871192, 0.984566, 0.623271, 0.487293, 0.0352336, 0.457538, 0.928901, 0.850248, 0.431738, 0.36331, 0.645589, 0.498171, 0.794208, 0.0849365, 0.527237, 0.767714, 0.328182, 0.374523, 0.444516, 0.0559615, 0.0419167, 0.845386, 0.5857, 0.865954, 0.0309568, 0.453031, 0.00774489, 0.474677, 0.424881, 0.425867, 0.606955, 0.713672, 0.567942, 0.640633, 0.780415, 0.581821, 0.848634, 0.775869, 0.71623, 0.997316, 0.584945, 0.828567, 0.808222, 0.0395258, 0.594642, 0.764727, 0.997978, 0.24524, 0.373046, 0.176825, 0.308495, 0.766623, 0.467008, 0.606107, 0.288612, 0.231055, 0.808635, 0.472013, 0.368067, 0.696817, 0.278501, 0.101347, 0.0829357, 0.6004, 0.215608, 0.368665, 0.846323, 0.0981594, 0.313847, 0.433136, 0.689086, 0.824282, 0.727438, 0.108271, 0.748229, 0.337563, 0.425716, 0.868851, 0.180594, 0.860347, 0.978163, 0.191819, 0.936035, 0.873956, 0.588142, 0.240084, 0.282904, 0.998058, 0.115019, 0.666553, 0.573109, 0.651596, 0.736717, 0.175013, 0.603761, 0.50385, 0.607941, 0.0299177, 0.993083, 0.388408, 0.654143, 0.231389, 0.166839, 0.313691, 0.212742, 0.345719, 0.653166, 0.239532, 0.048652, 0.463448, 0.442667, 0.648099, 0.0208802, 0.614332, 0.737179, 0.167007, 0.0763713, 0.533591, 0.268109, 0.492427, 0.375391, 0.681049, 0.606853, 0.139883, 0.105637, 0.76219, 0.468941, 0.0529323, 0.828829, 0.937117, 0.433731, 0.289874, 0.892131, 0.19397, 0.0132927, 0.35071, 0.709076, 0.9679, 0.341529, 0.348603, 0.415816, 0.228108, 0.488989, 0.333788, 0.161957, 0.570714, 0.508283, 0.465879, 0.277558, 0.794945, 0.0121472, 0.427985, 0.665044, 0.833469, 0.94267, 0.33806, 0.285193, 0.723311, 0.974406, 0.695304, 0.460532, 0.675224, 0.0901268, 0.647891, 0.962078, 0.758498, 0.0277073, 0.980495, 0.884625, 0.0327249, 0.768726, 0.724125, 0.745225, 0.00158805, 0.938205, 0.606819, 0.742826, 0.255673, 0.421963, 0.371387, 0.432566, 0.0239052, 0.885388, 0.181065, 0.920133, 0.506331, 0.233921, 0.168982, 0.561517, 0.58763, 0.431242, 0.487615, 0.745375, 0.371755, 0.775379, 0.290286, 0.498143, 0.0404679, 0.00843829, 0.488149, 0.801368, 0.606526, 0.118841, 0.488715, 0.458259, 0.900423, 0.257545, 0.743129, 0.0907666, 0.986963, 0.369976, 0.607443, 0.651521, 0.900842, 0.618528, 0.100974, 0.442052, 0.61976, 0.560051, 0.24266, 0.150083, 0.436379, 0.095813, 0.079459, 0.791146, 0.850643, 0.11496, 0.0699083, 0.143467, 0.054094, 0.287862, 0.368917, 0.665334, 0.278383, 0.762243, 0.453091, 0.861052, 0.862359, 0.418895, 0.373134, 0.0971329, 0.264926, 0.75727, 0.858821, 0.427618, 0.914274, 0.467849, 0.919047, 0.172397, 0.16596, 0.326933, 0.489623, 0.439691, 0.747162, 0.803337, 0.862075, 0.27494, 0.90832, 0.0928894, 0.0353712, 0.627672, 0.297624, 0.423108, 0.926387, 0.606557, 0.590447, 0.809819, 0.79839, 0.624967, 0.974975, 0.336289, 0.424392, 0.353217, 0.555949, 0.801565, 0.237361, 0.818772, 0.767745, 0.706867, 0.786984, 0.367558, 0.697085, 0.95369, 0.782313, 0.901393, 0.802397, 0.979802, 0.53119, 0.431988, 0.473957, 0.278091, 0.577054, 0.561467, 0.278046, 0.484842, 0.798062, 0.523014, 0.887974, 0.549188, 0.264482, 0.967209, 0.439549, 0.287108, 0.489645, 0.0468009, 0.576898, 0.975522, 0.720684, 0.754914, 0.227268, 0.352387, 0.928097, 0.0313694, 0.258029, 0.241354, 0.0709821, 0.954653, 0.0894702, 0.356928, 0.676296, 0.919929, 0.793819, 0.761619, 0.742586, 0.677755, 0.631662, 0.690294, 0.528917, 0.844844, 0.386891, 0.451643, 0.894426, 0.152653, 0.988929, 0.4543, 0.766829, 0.82622, 0.360857, 0.88979, 0.438321, 0.147023, 0.0806725, 0.995685, 0.463487, 0.953199, 0.289579, 0.808851, 0.146665, 0.745513, 0.231612, 0.838304, 0.10183, 0.286207, 0.882168, 0.532409, 0.477905, 0.540575, 0.873101, 0.190819, 0.497637, 0.655335, 0.32515, 0.904345, 0.330202, 0.743194, 0.143097, 0.0565959, 0.044624, 0.519861, 0.108242, 0.282962, 0.533308, 0.237235, 0.289047, 0.0643234, 0.0227788, 0.75774, 0.990309, 0.354389, 0.394248, 0.485096, 0.0518331, 0.175479, 0.0172035, 0.918304, 0.83998, 0.294807, 0.139766, 0.63909, 0.766865, 0.331524, 0.178873, 0.858263, 0.104528, 0.506799, 0.25516, 0.0557155, 0.0896441, 0.476819, 0.0679275, 0.523957, 0.623747, 0.101086, 0.707701, 0.347366, 0.40146, 0.926623, 0.793363, 0.5183, 0.353883, 0.0170278, 0.550552, 0.566898, 0.761358, 0.969432, 0.0830791, 0.409803, 0.233851, 0.461094, 0.61238, 0.663356, 0.838447, 0.0936641, 0.896317, 0.0342364, 0.605435, 0.594078, 0.142495, 0.224693, 0.266037, 0.968376, 0.250094, 0.634636, 0.152495, 0.374344, 0.766249, 0.514728, 0.236246, 0.394472, 0.714031, 0.394143, 0.298254, 0.706938, 0.16714, 0.651014, 0.933411, 0.678186, 0.666454, 0.357514, 0.694775, 0.693118, 0.67172, 0.198115, 0.332186, 0.629232, 0.784186, 0.37814, 0.771727, 0.447776, 0.705953, 0.496304, 0.814896, 0.656693, 0.53542, 0.261516, 0.406417, 0.531009, 0.0275669, 0.448455, 0.680984, 0.772053, 0.665164, 0.644186, 0.270284, 0.949715, 0.977336, 0.2282, 0.113808, 0.547055, 0.59781, 0.00346764, 0.659073, 0.967426, 0.723033, 0.570098, 0.959023, 0.758847, 0.0443661, 0.329846, 0.180227, 0.640039, 0.418957, 0.31487, 0.171225, 0.359142, 0.663463, 0.0361466, 0.466258, 0.355709, 0.0728117, 0.0561539, 0.302612, 0.966088, 0.312772, 0.572468, 0.950502, 0.140537, 0.804575, 0.143191, 0.554696, 0.31913, 0.313319, 0.415355, 0.557689, 0.868706, 0.568624, 0.322493, 0.960727, 0.800806, 0.97337, 0.636029, 0.854868, 0.0316508, 0.537545, 0.62288, 0.126693, 0.638876, 0.22898, 0.88884, 0.322239, 0.408508, 0.876548, 0.283979, 0.229775, 0.197694, 0.756162, 0.605596, 0.475759, 0.716177, 0.313979, 0.824405, 0.431531, 0.93625, 0.29437, 0.57963, 0.942052, 0.0665976, 0.532284, 0.782766, 0.899503, 0.601734, 0.974714, 0.453663, 0.399994, 0.601611, 0.0351596, 0.350032, 0.950207, 0.964415, 0.958216, 0.639434, 0.420463, 0.185442, 0.382668, 0.504688, 0.523907, 0.402958, 0.790744, 0.411467, 0.731239, 0.899588, 0.0667593, 0.528711, 0.85476, 0.116003, 0.922713, 0.609319, 0.224816, 0.243179, 0.699852, 0.437211, 0.993828, 0.434946, 0.0437369, 0.40611, 0.188708, 0.147626, 0.956368, 0.375801, 0.739141, 0.0106513, 0.877191, 0.48731, 0.898436, 0.833442, 0.862006, 0.301964, 0.148368, 0.151504, 0.407424, 0.449227, 0.149134, 0.118857, 0.88912, 0.176878, 0.699557, 0.496226, 0.442326, 0.930008, 0.922029, 0.961842, 0.763233, 0.817566, 0.59639, 0.0646593, 0.537041, 0.860439, 0.801642, 0.030929, 0.190828, 0.41728, 0.622681, 0.632888, 0.59156, 0.769584, 0.37493, 0.17385, 0.0626788, 0.304964, 0.374021, 0.53998, 0.688026, 0.732396, 0.682658, 0.778569, 0.658455, 0.541922, 0.944647, 0.193992, 0.347534, 0.954737, 0.226359, 0.606846, 0.259203, 0.525089, 0.554629, 0.911144, 0.761243, 0.814348, 0.641373, 0.946439, 0.316011, 0.114762, 0.534172, 0.192506, 0.241857, 0.392134, 0.60636, 0.854794, 0.805252, 0.409614, 0.612887, 0.123575, 0.839406, 0.302633, 0.649842, 0.0356233, 0.742045, 0.413918, 0.745436, 0.459173, 0.297346, 0.169182, 0.793266, 0.0856126, 0.935399, 0.235959, 0.10074, 0.654248, 0.0952724, 0.663783, 0.996306, 0.709982, 0.905973, 0.888761, 0.720037, 0.25771, 0.848951, 0.976113, 0.63487, 0.565978, 0.908386, 0.273005, 0.848013, 0.978949, 0.908749, 0.601055, 0.186663, 0.992795, 0.425448, 0.967182, 0.602136, 0.643628, 0.0584813, 0.460012, 0.448426, 0.171141, 0.556465, 0.580555, 0.872362, 0.449653, 0.156139, 0.212328, 0.998929, 0.847401, 0.504401, 0.516766, 0.571697, 0.217583, 0.222284, 0.213078, 0.647338, 0.673887, 0.426729, 0.308536, 0.755475, 0.114233, 0.132511, 0.801619, 0.337967, 0.596502, 0.243033, 0.0515908, 0.982832, 0.349651, 0.427672, 0.97232, 0.259496, 0.291335, 0.570966, 0.664706, 0.301763, 0.633364, 0.54933, 0.877609, 0.125295, 0.984686, 0.28117, 0.886473, 0.218579, 0.323286, 0.287905, 0.880335, 0.559238, 0.726381, 0.238366, 0.41792, 0.995409, 0.322266, 0.0953773, 0.446585, 0.0716302, 0.721718, 0.746432, 0.961932, 0.112667, 0.757459, 0.654223, 0.848422, 0.697044, 0.423866, 0.929048, 0.111573, 0.582656, 0.0200577, 0.44937, 0.553144, 0.74263, 0.794523, 0.830143, 0.740351, 0.741544, 0.356784, 0.963254, 0.15918, 0.939537, 0.80688, 0.237186, 0.190782, 0.558923, 0.615213, 0.293705, 0.904548, 0.79284, 0.185429, 0.00810836, 0.721038, 0.564903, 0.268942, 0.257018, 0.0530519, 0.527247, 0.920222, 0.820124, 0.111895, 0.109811, 0.587158, 0.429519, 0.591644, 0.254192, 0.350801, 0.299972, 0.882022, 0.817647, 0.633054, 0.606266, 0.990079, 0.139097, 0.724972, 0.0772518, 0.67211, 0.700957, 0.202332, 0.481672, 0.90614, 0.310924, 0.19062, 0.0712553, 0.00612124, 0.782944, 0.0744189, 0.0263658, 0.305614, 0.248776, 0.0458998, 0.260601, 0.555472, 0.221336, 0.49202, 0.110911, 0.618794, 0.414334, 0.752921, 0.870457, 0.343256, 0.218376, 0.154645, 0.757857, 0.652319, 0.890323, 0.629723, 0.101674, 0.783192, 0.0596106, 0.144572, 0.474774, 0.174112, 0.195932, 0.493227, 0.112646, 0.996225, 0.134407, 0.881545, 0.450861, 0.310567, 0.509461, 0.521029, 0.269803, 0.897753, 0.0652435, 0.791288, 0.408702, 0.77576, 0.4061, 0.034406, 0.302217, 0.270236, 0.168705, 0.992101, 0.521785, 0.662134, 0.308386, 0.196541, 0.663632, 0.98909, 0.146276, 0.0388228, 0.705712, 0.244185, 0.845867, 0.113058, 0.0871161, 0.212426, 0.379537, 0.207442, 0.889858, 0.125029, 0.596035, 0.0982994, 0.452979, 0.313197, 0.208453, 0.313032, 0.181714, 0.725375, 0.158508, 0.79157, 0.0516266, 0.233432, 0.884625, 0.536409, 0.56068, 0.00272319, 0.409232, 0.628506, 0.806752, 0.458667, 0.292, 0.469911, 0.616007, 0.0677015, 0.479823, 0.237522, 0.375919, 0.311802, 0.41963, 0.361113, 0.739867, 0.799933, 0.920616, 0.868819, 0.0492135, 0.805827, 0.348683, 0.735856, 0.439831, 0.48462, 0.648015, 0.52143, 0.919378, 0.641207, 0.362818, 0.585762, 0.655237, 0.825461, 0.45015, 0.102988, 0.989794, 0.264378, 0.935502, 0.861179, 0.704196, 0.414725, 0.944714, 0.172455, 0.303253, 0.816398, 0.279285, 0.905868, 0.659504, 0.811797, 0.745049, 0.5312, 0.853933, 0.334082, 0.541627, 0.242702, 0.347521, 0.889458, 0.0294332, 0.984726, 0.996691, 0.67806, 0.496936, 0.548464, 0.973525, 0.839863, 0.0487781, 0.111969, 0.466638, 0.886713, 0.965632, 0.976538, 0.292486, 0.660092, 0.255806, 0.0997183, 0.0844828, 0.432525, 0.930895, 0.808542, 0.374321, 0.418907, 0.145023, 0.238337, 0.621779, 0.647911, 0.408323, 0.110784, 0.680445, 0.167629, 0.633968, 0.38811, 0.445281, 0.0107516, 0.489654, 0.885342, 0.587052, 0.0225841, 0.976548, 0.129556, 0.56597, 0.102489, 0.432207, 0.743853, 0.120321, 0.494494, 0.225072, 0.224017, 0.395315, 0.257046, 0.387203, 0.423059, 0.554966, 0.737481, 0.377376, 0.489935, 0.173226, 0.861628, 0.0333025, 0.0932294, 0.00671683, 0.827265, 0.663642, 0.540409, 0.99617, 0.725174, 0.190944, 0.728644, 0.579892, 0.748321, 0.617871, 0.130579, 0.245324, 0.203039, 0.821786, 0.0717586, 0.704972, 0.966078, 0.898646, 0.398553, 0.973942, 0.461521, 0.0644376, 0.30631, 0.383316, 0.891258, 0.259913, 0.169668, 0.714982, 0.615635, 0.559467, 0.616616, 0.770833, 0.169926, 0.388598, 0.208993, 0.278535, 0.554226, 0.0827589, 0.706816, 0.126392, 0.690821, 0.676062, 0.121265, 0.896982, 0.0388845, 0.670777, 0.708964, 0.994758, 0.341129, 0.37529, 0.101514, 0.153307, 0.842892, 0.477475, 0.0283206, 0.947715, 0.905052, 0.0397956, 0.738682, 0.0172491, 0.398329, 0.207674, 0.819838, 0.503421, 0.781826, 0.135193, 0.294824, 0.816439, 0.763956, 0.720865, 0.834563, 0.162494, 0.301494, 0.10709, 0.370368, 0.927791, 0.500762, 0.14252, 0.741825, 0.278368, 0.0206278, 0.182151, 0.971885, 0.137581, 0.483364, 0.384977, 0.696589, 0.340396, 0.745152, 0.802406, 0.203352, 0.919363, 0.753524, 0.372803, 0.449986, 0.696786, 0.535036, 0.499219, 0.0314585, 0.647437, 0.727908, 0.921411, 0.32227, 0.957174, 0.272344, 0.282078, 0.445171, 0.144022, 0.299585, 0.813071, 0.678695, 0.567202, 0.812063, 0.405263, 0.9, 0.992405, 0.396305, 0.92526, 0.276566, 0.546944, 0.75437, 0.531069, 0.586935, 0.916611, 0.137257, 0.828234, 0.0554768, 0.450604, 0.998812, 0.294749, 0.163121, 0.282978, 0.334924, 0.259305, 0.15947, 0.0787569, 0.754918, 0.886703, 0.0111505, 0.906784, 0.050589, 0.22299, 0.066966, 0.374187, 0.169991, 0.0816437, 0.170185, 0.882675, 0.270558, 0.0356211, 0.376503, 0.715536, 0.350391, 0.162741, 0.288581, 0.635397, 0.566589, 0.534105, 0.475434, 0.178913, 0.928208, 0.252494, 0.615583, 0.251827, 0.19447, 0.961938, 0.305609, 0.593316, 0.847266, 0.744115, 0.612543, 0.24277, 0.20847, 0.477976, 0.0518278, 0.0152872, 0.631431, 0.0549163, 0.328825, 0.59685, 0.558903, 0.683194, 0.255128, 0.115275, 0.952675, 0.264164, 0.193556, 0.246357, 0.198612, 0.681457, 0.270092, 0.714036, 0.817953, 0.636855, 0.283205, 0.131918, 0.841106, 0.123482, 0.028812, 0.995828, 0.384277, 0.843682, 0.764375, 0.567424, 0.941897, 0.951325, 0.18631, 0.667919, 0.738847, 0.62275, 0.964064, 0.995357, 0.425137, 0.906932, 0.688342, 0.0471274, 0.164173, 0.310808, 0.0994296, 0.318221, 0.293541, 0.00581898, 0.87577, 0.906742, 0.498474, 0.178821, 0.302167, 0.0999429, 0.135979, 0.0169123, 0.183307, 0.073467, 0.511984, 0.389584, 0.422023, 0.548747, 0.496203, 0.820108, 0.837884, 0.0116966, 0.75667, 0.306426, 0.446261, 0.740293, 0.0617691, 0.731056, 0.921502, 0.111565, 0.553342, 0.90181, 0.588966, 0.899782, 0.838532, 0.548925, 0.626024, 0.59153, 0.869307, 0.331242, 0.0256317, 0.757944, 0.374959, 0.695617, 0.340961, 0.834587, 0.998895, 0.879709, 0.437381, 0.99448, 0.735159, 0.659503, 0.5298, 0.93604, 0.186548, 0.0753599, 0.32131, 0.252669, 0.101402, 0.651554, 0.885193, 0.0628296, 0.919042, 0.110233, 0.70135, 0.309103, 0.884887, 0.243368, 0.720378, 0.0672109, 0.523772, 0.270488, 0.307305, 0.263874, 0.70498, 0.464827, 0.695951, 0.914524, 0.0221541, 0.287136, 0.3114, 0.389098, 0.385562, 0.975716, 0.170828, 0.217957, 0.927547, 0.910391, 0.653454, 0.0758241, 0.820644, 0.0665078, 0.110731, 0.882233, 0.20648, 0.952657, 0.32112, 0.952035, 0.224238, 0.927685, 0.680405, 0.139316, 0.378105, 0.381615, 0.594834, 0.471939, 0.408969, 0.491383, 0.454735, 0.768353, 0.353205, 0.80698, 0.251159, 0.0118578, 0.266174, 0.961116, 0.670582, 0.62263, 0.503359, 0.857653, 0.182818, 0.4892, 0.803616, 0.218005, 0.743287, 0.0763764, 0.908062, 0.328088, 0.842997, 0.59184, 0.559818, 0.0614147, 0.159875, 0.489821, 0.744524, 0.82447, 0.809519, 0.875425, 0.67424, 0.938252, 0.527641, 0.235542, 0.700584, 0.430199, 0.964745, 0.731701, 0.342589, 0.0273191, 0.0354802, 0.294863, 0.263651, 0.030499, 0.501893, 0.769643, 0.211326, 0.584002, 0.80953, 0.341599, 0.308817, 0.438602, 0.993219, 0.346702, 0.457499, 0.414148, 0.882384, 0.855597, 0.0641278, 0.42825, 0.273324, 0.4623, 0.668859, 0.63831, 0.857007, 0.845658, 0.146669, 0.211893, 0.502162, 0.799475, 0.65045, 0.305315, 0.274964, 0.182841, 0.954136, 0.463376, 0.834691, 0.0184708, 0.398692, 0.864279, 0.953113, 0.890904, 0.333008, 0.215403, 0.375784, 0.95605, 0.383674, 0.378765, 0.405168, 0.171666, 0.545179, 0.669923, 0.384985, 0.801676, 0.350565, 0.00337708, 0.631043, 0.0519745, 0.71121, 0.642583, 0.145279, 0.712888, 0.284956, 0.0921465, 0.577798, 0.34649, 0.937083, 0.929081, 0.612238, 0.490393, 0.0424106, 0.599653, 0.707806, 0.804232, 0.965361, 0.327246, 0.666762, 0.021784, 0.682931, 0.681838, 0.0724264, 0.205187, 0.668736, 0.473539, 0.961394, 0.729708, 0.024514, 0.566873, 0.497288, 0.558562, 0.138497, 0.941736, 0.972125, 0.111753, 0.288791, 0.912262, 0.559286, 0.185214, 0.7715, 0.989913, 0.376245, 0.060584, 0.154194, 0.978276, 0.882586, 0.0247684, 0.738887, 0.630539, 0.190555, 0.525523, 0.83807, 0.291769, 0.91042, 0.282253, 0.921474, 0.0236699, 0.277483, 0.104831, 0.939341, 0.476085, 0.689769, 0.736036, 0.206843, 0.382487, 0.0348795, 0.177103, 0.91728, 0.838084, 0.137021, 0.733489, 0.526792, 0.589004, 0.574598, 0.165783, 0.880822, 0.0123784, 0.288395, 0.101822, 0.0803773, 0.335963, 0.638068, 0.233806, 0.417383, 0.952079, 0.606481, 0.817961, 0.921173, 0.70529, 0.132949, 0.366304, 0.157502, 0.788171, 0.456362, 0.934255, 0.467461, 0.616087, 0.431466, 0.0107934, 0.0281284, 0.125773, 0.648653, 0.462969, 0.850999, 0.108886, 0.269924, 0.958876, 0.0607822, 0.377576, 0.0159777, 0.215239, 0.551793, 0.605937, 0.769733, 0.902639, 0.422435, 0.850766, 0.738137, 0.242012, 0.739853, 0.295256, 0.072313, 0.00499006, 0.134117, 0.0619816, 0.384254, 0.779899, 0.414359, 0.0622828, 0.868238, 0.879185, 0.720135, 0.599743, 0.67316, 0.627264, 0.788426, 0.520692, 0.77885, 0.521608, 0.419226, 0.125957, 0.948685, 0.456223, 0.122047, 0.968073, 0.745772, 0.0444724, 0.404498, 0.703905, 0.553675, 0.332, 0.936517, 0.608138, 0.651625, 0.525357, 0.0418359, 0.896627, 0.0912335, 0.267571, 0.553597, 0.354797, 0.241745, 0.338559, 0.066604, 0.0190339, 0.894, 0.586077, 0.766166, 0.435573, 0.00517216, 0.644431, 0.920422, 0.30956, 0.739591, 0.614317, 0.153654, 0.314762, 0.737547, 0.413188, 0.764076, 0.930615, 0.109515, 0.146156, 0.669901, 0.704036, 0.444418, 0.162992, 0.974594, 0.71312, 0.0301947, 0.153717, 0.411245, 0.950341, 0.164568, 0.687654, 0.521892, 0.639889, 0.277799, 0.0132736, 0.157706, 0.910418, 0.936465, 0.573647, 0.267704, 0.00714697, 0.182185, 0.741549, 0.475334, 0.28607, 0.674605, 0.105207, 0.667732, 0.472204, 0.297792, 0.955608, 0.137354, 0.581651, 0.0227979, 0.434107, 0.593207, 0.117993, 0.382285, 0.578991, 0.00468433, 0.489849, 0.482814, 0.601705, 0.784944, 0.687895, 0.809286, 0.503371, 0.224533, 0.982967, 0.935806, 0.83864, 0.765722, 0.78486, 0.255872, 0.573153, 0.57346, 0.666158, 0.0866073, 0.608673, 0.8369, 0.802918, 0.380381, 0.80692, 0.930134, 0.545355, 0.826637, 0.0235991, 0.296427, 0.264481, 0.0334558, 0.940874, 0.644491, 0.145155, 0.931148, 0.516667, 0.737245, 0.426548, 0.456089, 0.275857, 0.826369, 0.0312548, 0.162226, 0.835581, 0.0551627, 0.235584, 0.737127, 0.757186, 0.535057, 0.388136, 0.804533, 0.520342, 0.239397, 0.0111184, 0.886874, 0.671199, 0.0102062, 0.525171, 0.54132, 0.197769, 0.966243, 0.242902, 0.30363, 0.483834, 0.420135, 0.799298, 0.688168, 0.079587, 0.545242, 0.378923, 0.388659, 0.544782, 0.562912, 0.756239, 0.241471, 0.084162, 0.917187, 0.724327, 0.594817, 0.357432, 0.197771, 0.421488, 0.60364, 0.153701, 0.216854, 0.854795, 0.793797, 0.864704, 0.249874, 0.392237, 0.0893547, 0.126951, 0.162292, 0.348888, 0.104106, 0.459023, 0.360549, 0.225123, 0.619885, 0.556321, 0.533507, 0.369956, 0.707384, 0.00900924, 0.571209, 0.369161, 0.433963, 0.125497, 0.447801, 0.998385, 0.00721151, 0.596754, 0.198993, 0.544076, 0.256515, 0.824956, 0.395937, 0.82036, 0.724246, 0.274992, 0.931312, 0.211844, 0.888995, 0.567783, 0.403347, 0.0233643, 0.305413, 0.18654, 0.202946, 0.277751, 0.00679857, 0.621933, 0.714503, 0.903398, 0.857239, 0.841092, 0.167112, 0.2957, 0.53974, 0.124685, 0.303459, 0.940138, 0.0796079, 0.508971, 0.384426, 0.855042, 0.285243, 0.549414, 0.476934, 0.781292, 0.48505, 0.27334, 0.0602828, 0.829215, 0.457946, 0.466487, 0.246539, 0.81927, 0.426943, 0.114767, 0.780408, 0.16347, 0.0984895, 0.877369, 0.457513, 0.212888, 0.284341, 0.487792, 0.509021, 0.895808, 0.76787, 0.440658, 0.363798, 0.681661, 0.474451, 0.600067, 0.954591, 0.0890766, 0.730658, 0.224916, 0.921279, 0.376547, 0.260774, 0.601968, 0.4237, 0.739528, 0.145402, 0.41468, 0.152907, 0.47141, 0.119075, 0.273265, 0.950216, 0.55966, 0.968888, 0.939802, 0.776441, 0.668253, 0.771813, 0.722996, 0.23648, 0.343948, 0.347981, 0.552765, 0.375207, 0.924972, 0.592547, 0.508824, 0.496403, 0.0940674, 0.944428, 0.56447, 0.301115, 0.889245, 0.0223575, 0.763835, 0.267003, 0.500808, 0.824617, 0.838881, 0.944627, 0.496405, 0.14692, 0.315796, 0.77764, 0.240432, 0.306096, 0.292526, 0.296885, 0.373744, 0.346349, 0.322487, 0.883683, 0.16284, 0.0647008, 0.329655, 0.410038, 0.560839, 0.828523, 0.851761, 0.369957, 0.864426, 0.871436, 0.0633008, 0.16101, 0.615145, 0.148793, 0.322985, 0.330853, 0.868008, 0.43142, 0.811799, 0.135211, 0.458559, 0.108207, 0.695897, 0.315194, 0.637078, 0.563875, 0.597988, 0.427874, 0.689716, 0.471646, 0.725956, 0.622428, 0.471164, 0.823061, 0.505723, 0.297301, 0.0265635, 0.527678, 0.743072, 0.48214, 0.138272, 0.398495, 0.0859242, 0.460059, 0.942352, 0.898106, 0.798673, 0.187484, 0.357981, 0.431898, 0.41474, 0.394494, 0.884989, 0.993217, 0.713402, 0.680949, 0.753447, 0.262199, 0.475949, 0.581497, 0.997133, 0.387826, 0.403276, 0.275721, 0.380806, 0.209255, 0.60866, 0.623474, 0.543617, 0.241541, 0.425924, 0.428409, 0.397315, 0.09587, 0.620919, 0.126089, 0.38629, 0.610477, 0.374492, 0.338553, 0.218924, 0.806786, 0.832234, 0.80869, 0.294897, 0.376391, 0.153017, 0.653983, 0.208456, 0.726007, 0.602219, 0.791533, 0.33923, 0.97356, 0.577972, 0.265774, 0.206974, 0.962825, 0.950871, 0.0578961, 0.610349, 0.646963, 0.375467, 0.729135, 0.546659, 0.170292, 0.332371, 0.710321, 0.522126, 0.0930859, 0.264027, 0.470624, 0.581995, 0.676597, 0.280836, 0.689249, 0.787284, 0.949667, 0.642154, 0.417964, 0.455748, 0.208287, 0.859757, 0.481885, 0.804135, 0.056898, 0.693433, 0.160249, 0.837059, 0.0546828, 0.798152, 0.839746, 0.605187, 0.183213, 0.2599, 0.383068, 0.851459, 0.306443, 0.309147, 0.0381959, 0.719869, 0.242022, 0.22479, 0.994963, 0.366324, 0.717579, 0.217008, 0.431604, 0.594694, 0.624695, 0.814518, 0.961515, 0.475361, 0.578813, 0.84533, 0.305233, 0.0790036, 0.658456, 0.686757, 0.567089, 0.792823, 0.831184, 0.937264, 0.764091, 0.679602, 0.0103403, 0.948929, 0.241996, 0.657831, 0.453863, 0.714861, 0.241192, 0.924878, 0.632439, 0.105144, 0.788324, 0.810018, 0.210902, 0.550243, 0.486251, 0.0913733, 0.798959, 0.194691, 0.411302, 0.279607, 0.577979, 0.719798, 0.638684, 0.17349, 0.298712, 0.993729, 0.441379, 0.844718, 0.685629, 0.455068, 0.330483, 0.265889, 0.368193, 0.0688269, 0.138687, 0.627119, 0.355442, 0.805071, 0.807763, 0.673589, 0.000873119, 0.0354007, 0.230154, 0.831104, 0.833678, 0.469663, 0.214547, 0.758954, 0.590854, 0.341966, 0.875465, 0.478901, 0.2021, 0.666199, 0.600773, 0.00324002, 0.554362, 0.686026, 0.908726, 0.46423, 0.77122, 0.838512, 0.157614, 0.527408, 0.991745, 0.990287, 0.947701, 0.173036, 0.682941, 0.424896, 0.441374, 0.899804, 0.82589, 0.080801, 0.358268, 0.226601, 0.12377, 0.471976, 0.593304, 0.251538, 0.217325, 0.084385, 0.820333, 0.929372, 0.3018, 0.868119, 0.354941, 0.817628, 0.854257, 0.465488, 0.87711, 0.467136, 0.536533, 0.761141, 0.0176133, 0.824427, 0.35775, 0.883069, 0.926057, 0.468452, 0.736605, 0.595839, 0.863943, 0.714158, 0.7314, 0.893097, 0.438854, 0.327221, 0.791686, 0.5375, 0.87044, 0.509864, 0.707702, 0.246594, 0.600985, 0.769923, 0.937123, 0.487803, 0.162059, 0.945864, 0.783905, 0.935941, 0.466245, 0.857716, 0.507292, 0.899158, 0.673879, 0.673613, 0.288398, 0.6941, 0.738393, 0.55069, 0.976364, 0.118459, 0.237908, 0.31801, 0.695152, 0.806048, 0.996444, 0.271285, 0.430659, 0.0847206, 0.505409, 0.964534, 0.533697, 0.402601, 0.636051, 0.905861, 0.187011, 0.162622, 0.13625, 0.217484, 0.331014, 0.178526, 0.700494, 0.669568, 0.551995, 0.186994, 0.512293, 0.888964, 0.693861, 0.254946, 0.111767, 0.617156, 0.00432868, 0.736541, 0.538015, 0.924411, 0.703041, 0.356651, 0.82463, 0.338636, 0.337042, 0.589604, 0.446137, 0.928251, 0.223612, 0.308999, 0.336899, 0.448885, 0.973801, 0.697394, 0.0422027, 0.0897108, 0.399189, 0.703481, 0.543053, 0.72385, 0.159818, 0.782179, 0.304272, 0.826399, 0.0707951, 0.26092, 0.365618, 0.413427, 0.84302, 0.131124, 0.556202, 0.706646, 0.780119, 0.104328, 0.946335, 0.0637464, 0.0732376, 0.0595677, 0.525762, 0.987167, 0.32953, 0.815905, 0.478352, 0.296297, 0.625132, 0.553781, 0.592135, 0.28049, 0.192426, 0.23416, 0.817321, 0.826737, 0.0622751, 0.576221, 0.270625, 0.899673, 0.699229, 0.466704, 0.721756, 0.969387, 0.805635, 0.169292, 0.939678, 0.470333, 0.951276, 0.605481, 0.258478, 0.482099, 0.709427, 0.666574, 0.685317, 0.601123, 0.850523, 0.159515, 0.781839, 0.895366, 0.200522, 0.31974, 0.0524494, 0.529465, 0.551828, 0.73694, 0.922469, 0.218472, 0.734122, 0.688273, 0.864047, 0.130662, 0.786044, 0.220167, 0.607686, 0.312601, 0.641538, 0.567144, 0.828449, 0.619842, 0.83648, 0.611485, 0.898507, 0.411619, 0.583162, 0.530753, 0.83583, 0.626444, 0.557886, 0.180592, 0.198511, 0.232223, 0.526427, 0.615557, 0.411498, 0.273077, 0.74293, 0.835388, 0.270267, 0.805291, 0.0972044, 0.241121, 0.736203, 0.663411, 0.363918, 0.458822, 0.80512, 0.605458, 0.375393, 0.862337, 0.0593959, 0.253904, 0.536793, 0.589653, 0.933257, 0.953445, 0.568967, 0.210733, 0.555606, 0.432325, 0.646601, 0.93889, 0.614317, 0.560362, 0.710996, 0.210809, 0.379712, 0.887, 0.163997, 0.56018, 0.0240339, 0.49022, 0.742717, 0.519842, 0.586268, 0.78603, 0.636755, 0.582241, 0.796528, 0.259907, 0.0745921, 0.655932, 0.0389202, 0.0726865, 0.864875, 0.312982, 0.452136, 0.7015, 0.247177, 0.27854, 0.0632686, 0.0813697, 0.279874, 0.586784, 0.461093, 0.0778263, 0.662647, 0.357942, 0.710333, 0.956567, 0.898341, 0.174392, 0.00585557, 0.884456, 0.278071, 0.685814, 0.560874, 0.94756, 0.24619, 0.854, 0.353335, 0.254453, 0.792681, 0.305647, 0.99284, 0.270542, 0.588071, 0.653879, 0.685535, 0.740965, 0.0128991, 0.972981, 0.982195, 0.784451, 0.123193, 0.432136, 0.529464, 0.763657, 0.226716, 0.210642, 0.417861, 0.656148, 0.579897, 0.856393, 0.218321, 0.771127, 0.0338039, 0.567034, 0.630268, 0.908676, 0.521216, 0.701863, 0.514884, 0.421301, 0.752762, 0.524206, 0.117344, 0.173013, 0.612242, 0.394583, 0.865125, 0.752344, 0.315942, 0.142906, 0.665908, 0.907319, 0.524857, 0.0720145, 0.193825, 0.889935, 0.315781, 0.207526, 0.418102, 0.116293, 0.271694, 0.733742, 0.187469, 0.694859, 0.83994, 0.948731, 0.0598494, 0.586697, 0.493972, 0.955683, 0.37149, 0.199311, 0.146326, 0.601498, 0.946194, 0.831491, 0.320438, 0.801112, 0.484785, 0.0333543, 0.74116, 0.226681, 0.0447326, 0.315809, 0.303605, 0.497916, 0.967853, 0.710093, 0.961844, 0.316589, 0.923962, 0.206211, 0.632804, 0.702471, 0.293214, 0.459488, 0.240221, 0.273956, 0.214241, 0.895807, 0.428641, 0.0928225, 0.264767, 0.997019, 0.616878, 0.680763, 0.0939435, 0.418914, 0.0206921, 0.388642, 0.503535, 0.993482, 0.274211, 0.604227, 0.20554, 0.0823207, 0.484587, 0.132433, 0.165187, 0.74246, 0.905328, 0.870367, 0.747256, 0.0635862, 0.301832, 0.420023, 0.538413, 0.796804, 0.275343, 0.671668, 0.422441, 0.153756, 0.107716, 0.520214, 0.680467, 0.621875, 0.0994287, 0.251441, 0.410875, 0.341878, 0.0305172, 0.893489, 0.542774, 0.881573, 0.159878, 0.978881, 0.530476, 0.611658, 0.782136, 0.62399, 0.753435, 0.238884, 0.9115, 0.241982, 0.619147, 0.842602, 0.209986, 0.741427, 0.477977, 0.339636, 0.688182, 0.194028, 0.726511, 0.743978, 0.0382991, 0.737422, 0.0462307, 0.12968, 0.467882, 0.0295334, 0.712377, 0.446366, 0.0486053, 0.30363, 0.410012, 0.74849, 0.349723, 0.890933, 0.670958, 0.639506, 0.993475, 0.399773, 0.984779, 0.551193, 0.743251, 0.596086, 0.118846, 0.197895, 0.403803, 0.159353, 0.643236, 0.127084, 0.483102, 0.490118, 0.918884, 0.181435, 0.747842, 0.677603, 0.667513, 0.238327, 0.67862, 0.658214, 0.612771, 0.296302, 0.166472, 0.161012, 0.588091, 0.197845, 0.513839, 0.833909, 0.463192, 0.950884, 0.0533873, 0.432471, 0.863352, 0.822684, 0.0342464, 0.225652, 0.702801, 0.86235, 0.473653, 0.988191, 0.227529, 0.878562, 0.0485657, 0.0471784, 0.458532, 0.650269, 0.845933, 0.591122, 0.513426, 0.551219, 0.791989, 0.794158, 0.810032, 0.257106, 0.767354, 0.499332, 0.254888, 0.903956, 0.117117, 0.116458, 0.452096, 0.850185, 0.544318, 0.326435, 0.215906, 0.740467, 0.401712, 0.567547, 0.887705, 0.435517, 0.378752, 0.758246, 0.375751, 0.448469, 0.176343, 0.0144379, 0.624023, 0.489881, 0.593496, 0.989702, 0.244849, 0.175646, 0.173303, 0.586476, 0.99795, 0.79035, 0.374323, 0.698993, 0.921009, 0.290843, 0.183281, 0.4822, 0.576796, 0.789544, 0.0994564, 0.508556, 0.109639, 0.733261, 0.140442, 0.787, 0.254106, 0.0559873, 0.606764, 0.401688, 0.68709, 0.13815, 0.029515, 0.00818356, 0.782633, 0.181943, 0.0634527, 0.683833, 0.00813154, 0.486167, 0.854093, 0.191719, 0.86377, 0.609881, 0.515957, 0.487769, 0.0271336, 0.73167, 0.234502, 0.0613808, 0.961206, 0.999486, 0.823175, 0.300045, 0.354843, 0.246346, 0.123407, 0.347522, 0.354241, 0.694702, 0.323798, 0.0366013, 0.538566, 0.729588, 0.992623, 0.218945, 0.406589, 0.0438158, 0.155472, 0.970552, 0.409469, 0.153691, 0.0203969, 0.275005, 0.701389, 0.42303, 0.147195, 0.368979, 0.604133, 0.126673, 0.67592, 0.105526, 0.54339, 0.871531, 0.394669, 0.126213, 0.599392, 0.431891, 0.988939, 0.567489, 0.496111, 0.368918, 0.470483, 0.0421722, 0.675878, 0.603576, 0.44158, 0.992638, 0.836131, 0.420694, 0.741066, 0.403237, 0.574347, 0.648549, 0.250641, 0.798726, 0.891189, 0.0422597, 0.51827, 0.739092, 0.202508, 0.619545, 0.450979, 0.966478, 0.176743, 0.693801, 0.65698, 0.986479, 0.579998, 0.428425, 0.639208, 0.652359, 0.396176, 0.268982, 0.0115209, 0.689203, 0.0668897, 0.38583, 0.245746, 0.761784, 0.45692, 0.302772, 0.461184, 0.501472, 0.559463, 0.287875, 0.129634, 0.470875, 0.672356, 0.663933, 0.381709, 0.528953, 0.761458, 0.652946, 0.669969, 0.982658, 0.602676, 0.479083, 0.536523, 0.330208, 0.194745, 0.641579, 0.840228, 0.450018, 0.692135, 0.355857, 0.455585, 0.486695, 0.584968, 0.206563, 0.965777, 0.303506, 0.934809, 0.458971, 0.810761, 0.75679, 0.975268, 0.210766, 0.248278, 0.0802836, 0.694557, 0.559991, 0.919831, 0.898269, 0.423921, 0.402418, 0.862905, 0.383914, 0.088649, 0.355223, 0.0554185, 0.300398, 0.409473, 0.931162, 0.553423, 0.310724, 0.709629, 0.308529, 0.307363, 0.659964, 0.00663364, 0.258103, 0.360775, 0.663727, 0.490966, 0.940088, 0.396988, 0.564506, 0.315455, 0.959141, 0.057101, 0.0195982, 0.519149, 0.901276, 0.48174, 0.139353, 0.0851095, 0.0280393, 0.256546, 0.121875, 0.00495883, 0.999756, 0.657477, 0.571574, 0.5227, 0.694834, 0.946927, 0.366485, 0.434974, 0.478532, 0.412874, 0.867329, 0.0975095, 0.0271852, 0.778299, 0.565213, 0.53727, 0.290105, 0.791131, 0.0144325, 0.275715, 0.581405, 0.501518, 0.0129648, 0.297322, 0.275774, 0.0750361, 0.154392, 0.0974631, 0.309081, 0.172081, 0.848699, 0.840117, 0.0103903, 0.968982, 0.600323, 0.259561, 0.572473, 0.82728, 0.432188, 0.78679, 0.764765, 0.0234963, 0.280857, 0.206387, 0.519519, 0.241991, 0.586645, 0.045972, 0.089996, 0.133891, 0.608837, 0.00619712, 0.895718, 0.439825, 0.63276, 0.785436, 0.992793, 0.604488, 0.204594, 0.115584, 0.116164, 0.93579, 0.706941, 0.211937, 0.0692218, 0.3304, 0.318649, 0.710189, 0.982268, 0.116389, 0.298634, 0.411521, 0.954601, 0.72633, 0.550592, 0.251087, 0.462077, 0.817913, 0.384922, 0.762362, 0.322915, 0.389228, 0.225212, 0.713655, 0.349589, 0.764699, 0.166066, 0.374613, 0.508018, 0.58467, 0.736121, 0.68524, 0.160013, 0.364459, 0.120574, 0.190756, 0.318128, 0.35933, 0.184048, 0.0399303, 0.980637, 0.560814, 0.303475, 0.797824, 0.816656, 0.394171, 0.031498, 0.373127, 0.553551, 0.547722, 0.311606, 0.814148, 0.82553, 0.506601, 0.102923, 0.624813, 0.991727, 0.936333, 0.487983, 0.170005, 0.669482, 0.921824, 0.350938, 0.117821, 0.710319, 0.244534, 0.927799, 0.126162, 0.322003, 0.900591, 0.717494, 0.551761, 0.806162, 0.835034, 0.763623, 0.108624, 0.00990392, 0.902354, 0.824175, 0.554519, 0.885359, 0.308364, 0.572235, 0.63138, 0.335896, 0.605877, 0.46389, 0.806253, 0.766758, 0.526007, 0.397714, 0.60308, 0.93283, 0.545794, 0.660899, 0.604516, 0.29167, 0.214183, 0.0573974, 0.229982, 0.979779, 0.368175, 0.434765, 0.415207, 0.418815, 0.354797, 0.403499, 0.871134, 0.644369, 0.644598, 0.471213, 0.956022, 0.431544, 0.586249, 0.139016, 0.702862, 0.187983, 0.944175, 0.589743, 0.901744, 0.875612, 0.146502, 0.581585, 0.0458156, 0.538324, 0.52507, 0.767346, 0.948295, 0.0187263, 0.305238, 0.544379, 0.814933, 0.391502, 0.130744, 0.953611, 0.394568, 0.272426, 0.649744, 0.861592, 0.835051, 0.482925, 0.245874, 0.290328, 0.287375, 0.837873, 0.0066875, 0.413453, 0.262712, 0.0880322, 0.243793, 0.82881, 0.6031, 0.306577, 0.42487, 0.969813, 0.914381, 0.00901938, 0.856536, 0.71473, 0.831734, 0.0200897, 0.247702, 0.746342, 0.306575, 0.206043, 0.574619, 0.828791, 0.723755, 0.93929, 0.852708, 0.405139, 0.414797, 0.542813, 0.290311, 0.125276, 0.931837, 0.0717161, 0.791285, 0.14805, 0.836408, 0.398334, 0.485683, 0.682892, 0.0932766, 0.404823, 0.644894, 0.346455, 0.427197, 0.259743, 0.597138, 0.0679476, 0.0289522, 0.849093, 0.350032, 0.454357, 0.603621, 0.907092, 0.404162, 0.351306, 0.270505, 0.653166, 0.769691, 0.938824, 0.473653, 0.434848, 0.342873, 0.318166, 0.543479, 0.856732, 0.153989, 0.879561, 0.870354, 0.422029, 0.839287, 0.124407, 0.465203, 0.460858, 0.989059, 0.679192, 0.946028, 0.846782, 0.918742, 0.314033, 0.49666, 0.0920023, 0.843132, 0.839722, 0.272321, 0.979717, 0.348738, 0.444116, 0.983432, 0.795065, 0.794573, 0.671099, 0.511916, 0.0563633, 0.559247, 0.533963, 0.50525, 0.711275, 0.802424, 0.917303, 0.122918, 0.80023, 0.559959, 0.257324, 0.13848, 0.171588, 0.0874861, 0.0871963, 0.72098, 0.515483, 0.279985, 0.00499612, 0.225363, 0.238013, 0.269871, 0.990479, 0.766968, 0.999129, 0.715754, 0.00825198, 0.37617, 0.665278, 0.747982, 0.828414, 0.71452, 0.469985, 0.859196, 0.535797, 0.775488, 0.415358, 0.720911, 0.368545, 0.401326, 0.745221, 0.153016, 0.578119, 0.548487, 0.0108803, 0.525463, 0.85297, 0.401923, 0.125322, 0.0132056, 0.673783, 0.392176, 0.0484537, 0.983614, 0.733353, 0.648133, 0.103747, 0.619905, 0.345302, 0.53134, 0.687227, 0.370661, 0.177329, 0.362335, 0.898738, 0.123485, 0.136967, 0.888547, 0.21683, 0.366909, 0.653203, 0.335775, 0.869464, 0.0816942, 0.902404, 0.457509, 0.530483, 0.803953, 0.0166294, 0.13743, 0.636046, 0.0234916, 0.713996, 0.333192, 0.0889455, 0.0801999, 0.722104, 0.823817, 0.418968, 0.642144, 0.537163, 0.63819, 0.32562, 0.221282, 0.62735, 0.0201243, 0.838979, 0.577024, 0.339198, 0.791407, 0.250698, 0.22916, 0.506478, 0.184422, 0.345273, 0.0775661, 0.735546, 0.783081, 0.563042, 0.52338, 0.578283, 0.92201, 0.331034, 0.417922, 0.818801, 0.356291, 0.542004, 0.544088, 0.803525, 0.212841, 0.731448, 0.612983, 0.748431, 0.253143, 0.231774, 0.294001, 0.593668, 0.265074, 0.553367, 0.866867, 0.18076, 0.662788, 0.629639, 0.73018, 0.467859, 0.808596, 0.644864, 0.022537, 0.0364958, 0.54453, 0.592496, 0.43437, 0.952427, 0.218378, 0.244185, 0.436451, 0.71122, 0.593662, 0.835231, 0.0332252, 0.378105, 0.497219, 0.984476, 0.0730146, 0.472074, 0.48317, 0.139109, 0.593514, 0.340308, 0.619867, 0.28969, 0.00251761, 0.908032, 0.224354, 0.849769, 0.550466, 0.821944, 0.162849, 0.738565, 0.68601, 0.509678, 0.0200363, 0.507831, 0.866033, 0.638294, 0.116883, 0.843762, 0.889224, 0.260872, 0.18303, 0.130803, 0.769403, 0.414257, 0.0478247, 0.275858, 0.874808, 0.409034, 0.986896, 0.182275, 0.906189, 0.483678, 0.215844, 0.0907204, 0.0648673, 0.252829, 0.832949, 0.100708, 0.156126, 0.813764, 0.398981, 0.812887, 0.120614, 0.500278, 0.308537, 0.920879, 0.581683, 0.475571, 0.385586, 0.592255, 0.598037, 0.948205, 0.90025, 0.599848, 0.608096, 0.0367805, 0.990955, 0.68853, 0.548609, 0.294576, 0.30996, 0.883756, 0.967547, 0.218314, 0.511624, 0.590131, 0.0163507, 0.871621, 0.818298, 0.161421, 0.275694, 0.214449, 0.616178, 0.996522, 0.30145, 0.462069, 0.015384, 0.977253, 0.57646, 0.0811966, 0.271921, 0.924299, 0.106255, 0.0241342, 0.766667, 0.950522, 0.577713, 0.27764, 0.668152, 0.270199, 0.332724, 0.0121983, 0.600661, 0.555089, 0.530421, 0.72221, 0.380044, 0.653603, 0.89445, 0.0928122, 0.594942, 0.328926, 0.976484, 0.42039, 0.996746, 0.860078, 0.867956, 0.0398631, 0.806536, 0.0995371, 0.658456, 0.0472054, 0.66889, 0.540563, 0.532939, 0.865011, 0.401918, 0.820783, 0.0920071, 0.0658646, 0.253436, 0.263612, 0.669429, 0.296443, 0.706652, 0.351249, 0.91166, 0.913569, 0.788687, 0.234301, 0.831165, 0.980835, 0.203369, 0.373045, 0.423267, 0.670498, 0.802715, 0.936269, 0.78477, 0.915481, 0.113364, 0.601332, 0.310504, 0.743434, 0.765364, 0.603253, 0.483632, 0.125628, 0.289788, 0.997899, 0.503365, 0.726792, 0.800784, 0.450583, 0.269655, 0.444556, 0.555119, 0.93947, 0.533848, 0.0782537, 0.157712, 0.85099, 0.327261, 0.832598, 0.510364, 0.912637, 0.539609, 0.350554, 0.854618, 0.946954, 0.386823, 0.714464, 0.00204045, 0.968002, 0.48749, 0.562856, 0.427489, 0.848607, 0.493587, 0.826042, 0.445187, 0.0619741, 0.101287, 0.526013, 0.194595, 0.775672, 0.486149, 0.272355, 0.127834, 0.743296, 0.150596, 0.681096, 0.57281, 0.0672587, 0.255456, 0.841653, 0.872262, 0.649119, 0.123757, 0.179241, 0.875755, 0.647584, 0.705624, 0.648403, 0.0508813, 0.829607, 0.695577, 0.916696, 0.689075, 0.911448, 0.135606, 0.549444, 0.281353, 0.391995, 0.832494, 0.742705, 0.712778, 0.475071, 0.288333, 0.174372, 0.26146, 0.537422, 0.0596647, 0.608866, 0.423589, 0.609099, 0.143077, 0.919032, 0.902764, 0.595446, 0.380225, 0.321925, 0.647344, 0.812108, 0.969231, 0.761545, 0.619274, 0.187524, 0.799921, 0.307736, 0.389503, 0.250851, 0.576744, 0.470898, 0.520214, 0.247824, 0.875442, 0.458726, 0.0483422, 0.0345533, 0.246986, 0.764085, 0.0722482, 0.215028, 0.157917, 0.943235, 0.568253, 0.611883, 0.703953, 0.744177, 0.376982, 0.929422, 0.731934, 0.569088, 0.520327, 0.860078, 0.472155, 0.927979, 0.40246, 0.326026, 0.51597, 0.488182, 0.0903602, 0.810176, 0.98767, 0.306279, 0.222395, 0.449744, 0.341067, 0.923371, 0.805345, 0.880787, 0.354113, 0.520321, 0.125835, 0.354522, 0.886473, 0.879818, 0.166946, 0.800076, 0.493049, 0.755293, 0.121424, 0.36928, 0.475916, 0.60888, 0.419866, 0.486128, 0.953577, 0.0166693, 0.897612, 0.76408, 0.29579, 0.90232, 0.27467, 0.846143, 0.599024, 0.852155, 0.620326, 0.937455, 0.956604, 0.914655, 0.0814477, 0.467409, 0.0893654, 0.789564, 0.944074, 0.788553, 0.244569, 0.168005, 0.779147, 0.51142, 0.62443, 0.395262, 0.0596324, 0.654439, 0.168753, 0.99687, 0.657187, 0.760906, 0.915153, 0.467333, 0.436316, 0.528364, 0.482071, 0.810865, 0.561541, 0.835901, 0.61142, 0.748716, 0.00598633, 0.996771, 0.112488, 0.376406, 0.822818, 0.341099, 0.432226, 0.804915, 0.211529, 0.815314, 0.635673, 0.109762, 0.288317, 0.798835, 0.995449, 0.973567, 0.656728, 0.689204, 0.0583982, 0.118429, 0.828065, 0.00536045, 0.138903, 0.209343, 0.0480099, 0.443857, 0.125573, 0.681736, 0.407285, 0.0818151, 0.375224, 0.190126, 0.868232, 0.93468, 0.822556, 0.127266, 0.104354, 0.508798, 0.343762, 0.966641, 0.994762, 0.520799, 0.283876, 0.185071, 0.569375, 0.195671, 0.38562, 0.875036, 0.954734, 0.266918, 0.280726, 0.385349, 0.134495, 0.420917, 0.463568, 0.252675, 0.310618, 0.712974, 0.172954, 0.451586, 0.208031, 0.374081, 0.507844, 0.45277, 0.52935, 0.38675, 0.181988, 0.627821, 0.296563, 0.458081, 0.679424, 0.107427, 0.957737, 0.499756, 0.510599, 0.511263, 0.204941, 0.783688, 0.748013, 0.313695, 0.822132, 0.877007, 0.932383, 0.57994, 0.511188, 0.744959, 0.231559, 0.98697, 0.686656, 0.349502, 0.727331, 0.0570541, 0.460354, 0.317294, 0.29985, 0.614703, 0.897589, 0.672334, 0.80712, 0.203369, 0.739073, 0.663163, 0.840658, 0.442582, 0.972734, 0.822226, 0.0408981, 0.60215, 0.469584, 0.439678, 0.12661, 0.695087, 0.738005, 0.730278, 0.848876, 0.615831, 0.978384, 0.539188, 0.34485, 0.244979, 0.79015, 0.202316, 0.493524, 0.749691, 0.888322, 0.942176, 0.967565, 0.343653, 0.772204, 0.516119, 0.0458385, 0.0860436, 0.669792, 0.528784, 0.0186552, 0.970551, 0.674466, 0.185799, 0.569726, 0.392632, 0.0565441, 0.884705, 0.436255, 0.205135, 0.0951112, 0.516395, 0.902937, 0.820844, 0.619476, 0.454277, 0.630864, 0.972527, 0.257479, 0.554272, 0.339491, 0.948593, 0.330156, 0.894974, 0.82963, 0.0822031, 0.408084, 0.223281, 0.916071, 0.689165, 0.464661, 0.634858, 0.181302, 0.229017, 0.210696, 0.151731, 0.0317992, 0.222419, 0.788384, 0.105893, 0.850989, 0.0346799, 0.0334926, 0.135013, 0.437604, 0.507569, 0.0101919, 0.19781, 0.554976, 0.412081, 0.75034, 0.0838736, 0.184646, 0.414339, 0.690666, 0.68731, 0.913875, 0.102824, 0.284373, 0.542406, 0.0448331, 0.68077, 0.290499, 0.263842, 0.479761, 0.275982, 0.294421, 0.876497, 0.0382377, 0.149754, 0.114487, 0.34663, 0.724447, 0.389409, 0.802181, 0.512255, 0.871142, 0.817144, 0.943827, 0.888949, 0.629429, 0.287183, 0.249371, 0.872029, 0.585722, 0.11813, 0.520707, 0.791212, 0.552112, 0.589188, 0.38551, 0.242621, 0.661368, 0.0682262, 0.634157, 0.443192, 0.203633, 0.201176, 0.584291, 0.950453, 0.259034, 0.761136, 0.772442, 0.611783, 0.862685, 0.913769, 0.772802, 0.908552, 0.248499, 0.516554, 0.896326, 0.192584, 0.666127, 0.291131, 0.67864, 0.450392, 0.798543, 0.856595, 0.274009, 0.811873, 0.621547, 0.252523, 0.863666, 0.964819, 0.911717, 0.223313, 0.529873, 0.464219, 0.846257, 0.592794, 0.347513, 0.259943, 0.875496, 0.314201, 0.0395176, 0.201387, 0.527071, 0.572934, 0.965283, 0.164273, 0.722183, 0.670461, 0.573421, 0.0891485, 0.390577, 0.114763, 0.349043, 0.614023, 0.199395, 0.767955, 0.963946, 0.997774, 0.871356, 0.422047, 0.703578, 0.295348, 0.613672, 0.29313, 0.836419, 0.0611616, 0.99903, 0.775352, 0.829162, 0.103054, 0.523498, 0.961165, 0.692672, 0.932918, 0.618085, 0.772023, 0.371329, 0.0404679, 0.928768, 0.111364, 0.0583651, 0.88597, 0.18057, 0.66822, 0.981161, 0.336133, 0.762795, 0.594076, 0.375663, 0.799212, 0.635779, 0.0445139, 0.0620577, 0.767288, 0.979813, 0.291096, 0.268214, 0.89948, 0.0465171, 0.186285, 0.775602, 0.260225, 0.933776, 0.462414, 0.831417, 0.520135, 0.124447, 0.695567, 0.831564, 0.0788556, 0.565818, 0.94302, 0.45306, 0.0770404, 0.302754, 0.423112, 0.962129, 0.514299, 0.36983, 0.491933, 0.656737, 0.165862, 0.130265, 0.298323, 0.132495, 0.615909, 0.0133612, 0.352362, 0.660888, 0.45423, 0.657297, 0.79193, 0.93095, 0.845148, 0.24055, 0.415642, 0.950532, 0.906417, 0.38877, 0.276392, 0.191902, 0.824704, 0.291277, 0.370849, 0.416511, 0.829611, 0.0220368, 0.425669, 0.18961, 0.285454, 0.551285, 0.227607, 0.444496, 0.974809, 0.0600968, 0.211983, 0.581975, 0.00425177, 0.960302, 0.64041, 0.494323, 0.541578, 0.119043, 0.943748, 0.966992, 0.209228, 0.60463, 0.127989, 0.104585, 0.436124, 0.740095, 0.361377, 0.907628, 0.974453, 0.91908, 0.492144, 0.0683203, 0.419664, 0.345833, 0.212963, 0.250144, 0.632806, 0.910376, 0.451072, 0.871015, 0.611367, 0.871778, 0.910306, 0.119627, 0.984545, 0.318298, 0.868194, 0.818802, 0.575346, 0.149502, 0.254122, 0.175093, 0.415803, 0.843205, 0.803958, 0.554162, 0.713087, 0.379507, 0.664716, 0.618683, 0.98676, 0.941917, 0.694065, 0.339624, 0.0668197, 0.683359, 0.97611, 0.588092, 0.107186, 0.686056, 0.382191, 0.188653, 0.404279, 0.44653, 0.123, 0.0146833, 0.440021, 0.725741, 0.124184, 0.83591, 0.538041, 0.0555726, 0.591682, 0.346451, 0.293581, 0.0507477, 0.354474, 0.408784, 0.175109, 0.67453, 0.161961, 0.622366, 0.586914, 0.0823875, 0.727024, 0.70076, 0.888525, 0.930183, 0.821958, 0.589729, 0.943463, 0.710158, 0.96339, 0.622963, 0.58137, 0.9565, 0.927559, 0.885087, 0.870896, 0.234865, 0.551913, 0.723878, 0.827738, 0.970025, 0.216431, 0.722694, 0.230254, 0.130758, 0.217069, 0.321699, 0.236559, 0.734331, 0.248787, 0.24723, 0.870885, 0.9878, 0.265207, 0.563228, 0.766959, 0.852504, 0.280999, 0.00920061, 0.739933, 0.0973193, 0.921099, 0.81306, 0.335371, 0.715043, 0.696763, 0.223199, 0.257661, 0.384619, 0.384785, 0.0556174, 0.529579, 0.83923, 0.293077, 0.187327, 0.120192, 0.652666, 0.11147, 0.100827, 0.655984, 0.742341, 0.838797, 0.120838, 0.707987, 0.677343, 0.565744, 0.538032, 0.015161, 0.274831, 0.30208, 0.886585, 0.739963, 0.700467, 0.456345, 0.219709, 0.926903, 0.232933, 0.19907, 0.102168, 0.11887, 0.0908123, 0.366894, 0.789954, 0.460337, 0.322457, 0.883223, 0.948383, 0.784219, 0.863504, 0.764734, 0.759244, 0.988275, 0.864745, 0.953824, 0.31822, 0.314996, 0.882982, 0.815942, 0.485903, 0.0115252, 0.684831, 0.614017, 0.0873085, 0.52319, 0.0558119, 0.55041, 0.310008, 0.850893, 0.725259, 0.488155, 0.116138, 0.762803, 0.0302866, 0.645977, 0.287585, 0.21666, 0.309405, 0.674184, 0.816923, 0.905169, 0.101181, 0.123499, 0.351557, 0.0405134, 0.878338, 0.015469, 0.866496, 0.0844565, 0.490755, 0.669352, 0.085941, 0.152457, 0.238297, 0.472498, 0.438051, 0.757135, 0.149849, 0.431595, 0.912593, 0.089832, 0.634364, 0.0177313, 0.741192, 0.523192, 0.912263, 0.0871267, 0.627257, 0.935303, 0.0816778, 0.251181, 0.624053, 0.395471, 0.42887, 0.54241, 0.742145, 0.424883, 0.51269, 0.935702, 0.301565, 0.119601, 0.38729, 0.261783, 0.402373, 0.728986, 0.348084, 0.997016, 0.0222313, 0.698249, 0.034954, 0.185386, 0.95165, 0.546179, 0.651428, 0.26796, 0.0685543, 0.55737, 0.283411, 0.767661, 0.0244081, 0.685367, 0.947972, 0.034217, 0.726605, 0.698051, 0.426886, 0.801432, 0.756371, 0.407575, 0.836811, 0.686345, 0.859593, 0.523643, 0.351548, 0.765494, 0.176591, 0.516729, 0.777242, 0.108195, 0.81436, 0.277935, 0.877531, 0.708538, 0.730981, 0.540901, 0.184072, 0.845363, 0.0416249, 0.739659, 0.738858, 0.402735, 0.791638, 0.526591, 0.867771, 0.41814, 0.295131, 0.044962, 0.0655176, 0.0198664, 0.106658, 0.954147, 0.966123, 0.82762, 0.632706, 0.140776, 0.989987, 0.845963, 0.226568, 0.486297, 0.988705, 0.572034, 0.439592, 0.706967, 0.393107, 0.143573, 0.697269, 0.104599, 0.698352, 0.867078, 0.492137, 0.383308, 0.0374334, 0.731598, 0.932175, 0.816022, 0.76578, 0.125882, 0.377018, 0.138172, 0.622443, 0.232894, 0.396606, 0.378826, 0.468683, 0.603877, 0.51426, 0.918394, 0.808697, 0.583117, 0.983041, 0.0401852, 0.279656, 0.634658, 0.0174982, 0.652553, 0.657667, 0.804523, 0.0146742, 0.0437468, 0.502127, 0.825505, 0.082082, 0.85776, 0.748285, 0.367666, 0.583369, 0.83577, 0.489429, 0.452757, 0.272175, 0.778049, 0.642109, 0.946722, 0.448775, 0.924783, 0.120213, 0.560099, 0.6108, 0.404566, 0.322061, 0.894217, 0.871752, 0.934318, 0.540806, 0.715612, 0.245321, 0.693621, 0.536857, 0.947538, 0.549564, 0.00690011, 0.581177, 0.159086, 0.578516, 0.277567, 0.0780366, 0.205541, 0.783508, 0.339408, 0.621534, 0.294725, 0.568251, 0.550272, 0.959998, 0.306617, 0.983857, 0.643051, 0.201416, 0.379511, 0.0911273, 0.00867392, 0.689255, 0.00360455, 0.89881, 0.969304, 0.730101, 0.141655, 0.669899, 0.454591, 0.547034, 0.143947, 0.187448, 0.773797, 0.261486, 0.561844, 0.839189, 0.824408, 0.169363, 0.253418, 0.819671, 0.622918, 0.631451, 0.685432, 0.399756, 0.124523, 0.922578, 0.506742, 0.127644, 0.673104, 0.231756, 0.429476, 0.651572, 0.147774, 0.694393, 0.845516, 0.917211, 0.93802, 0.312698, 0.810501, 0.123674, 0.203391, 0.0207843, 0.623855, 0.828925, 0.637242, 0.201973, 0.181628, 0.711198, 0.852358, 0.0979782, 0.986842, 0.391859, 0.303603, 0.900008, 0.929104, 0.921181, 0.530946, 0.259832, 0.648264, 0.569696, 0.436142, 0.546196, 0.0834616, 0.939629, 0.232199, 0.573199, 0.39586, 0.254669, 0.243346, 0.304382, 0.654493, 0.560111, 0.781565, 0.635758, 0.507616, 0.75214, 0.476468, 0.647811, 0.527588, 0.0332494, 0.366896, 0.531055, 0.0697664, 0.777532, 0.536011, 0.722944, 0.0900476, 0.57308, 0.913552, 0.176855, 0.906393, 0.694757, 0.437899, 0.286775, 0.3538, 0.187071, 0.404394, 0.130317, 0.865417, 0.317758, 0.725547, 0.652804, 0.305662, 0.320363, 0.332596, 0.17036, 0.152259, 0.691891, 0.560425, 0.189973, 0.540408, 0.577431, 0.720768, 0.402886, 0.285252, 0.266165, 0.474568, 0.116938, 0.540145, 0.420395, 0.830567, 0.420468, 0.253555, 0.950871, 0.100956, 0.614152, 0.519237, 0.139785, 0.455553, 0.183753, 0.986065, 0.411425, 0.305915, 0.429603, 0.841138, 0.561344, 0.436388, 0.610828, 0.15472, 0.675246, 0.853011, 0.965463, 0.621879, 0.406218, 0.329405, 0.717781, 0.433035, 0.0178493, 0.718941, 0.10781, 0.441911, 0.174089, 0.430148, 0.32203, 0.197737, 0.277149, 0.537757, 0.298766, 0.612162, 0.741896, 0.575298, 0.396661, 0.756537, 0.0430394, 0.109055, 0.536147, 0.770903, 0.364357, 0.22412, 0.554143, 0.905576, 0.403468, 0.905772, 0.4869, 0.640775, 0.643692, 0.274591, 0.943092, 0.225239, 0.276099, 0.531784, 0.0124671, 0.0565806, 0.266562, 0.0155241, 0.625282, 0.909237, 0.103068, 0.469269, 0.653213, 0.125399, 0.448836, 0.950663, 0.593978, 0.182179, 0.633481, 0.498007, 0.776594, 0.507905, 0.749718, 0.971869, 0.674292, 0.135901, 0.204592, 0.309865, 0.472272, 0.902697, 0.243614, 0.48535, 0.421191, 0.484195, 0.147626, 0.663167, 0.422793, 0.0577459, 0.0945983, 0.308984, 0.689708, 0.954331, 0.163813, 0.522568, 0.413598, 0.704285, 0.14746, 0.200504, 0.303418, 0.233206, 0.244352, 0.316168, 0.636593, 0.233694, 0.386377, 0.285191, 0.132191, 0.888384, 0.0673355, 0.273624, 0.710301, 0.497124, 0.211171, 0.245496, 0.260614, 0.751294, 0.134577, 0.988738, 0.0417233, 0.493367, 0.0692844, 0.0922724, 0.800404, 0.0343097, 0.34494, 0.339203, 0.384323, 0.958678, 0.795491, 0.447462, 0.321355, 0.517795, 0.587684, 0.344861, 0.259348, 0.960066, 0.469398, 0.142309, 0.706147, 0.354212, 0.707038, 0.0158585, 0.440891, 0.749678, 0.523209, 0.0270166, 0.131271, 0.386052, 0.802055, 0.394042, 0.853838, 0.135632, 0.155355, 0.553912, 0.276347, 0.929328, 0.264493, 0.570699, 0.437027, 0.7571, 0.825212, 0.940382, 0.108118, 0.38541, 0.3061, 0.216764, 0.772938, 0.510621, 0.632783, 0.23145, 0.290395, 0.568904, 0.786351, 0.105085, 0.444512, 0.805947, 0.66873, 0.78683, 0.216537, 0.937454, 0.427521, 0.0749362, 0.560645, 0.447932, 0.2315, 0.143913, 0.822126, 0.246609, 0.881098, 0.850086, 0.686795, 0.00215024, 0.5587, 0.613078, 0.35141, 0.159527, 0.89901, 0.37716, 0.5231, 0.0457704, 0.808698, 0.301096, 0.218873, 0.236171, 0.114397, 0.619328, 0.217334, 0.47348, 0.858687, 0.202401, 0.370079, 0.618376, 0.23096, 0.524045, 0.185272, 0.128056, 0.745207, 0.232581, 0.247388, 0.830298, 0.522178, 0.751212, 0.595712, 0.957827, 0.484628, 0.210787, 0.531757, 0.487252, 0.231507, 0.0111242, 0.83636, 0.0214627, 0.735164, 0.793203, 0.357078, 0.744416, 0.336283, 0.0429804, 0.287745, 0.640177, 0.844866, 0.426414, 0.0408242, 0.0431777, 0.984603, 0.000617907, 0.232387, 0.416756, 0.419424, 0.471341, 0.685176, 0.201536, 0.899329, 0.407221, 0.824743, 0.314813, 0.976795, 0.179168, 0.190919, 0.0478787, 0.133257, 0.196867, 0.25424, 0.345138, 0.975666, 0.547967, 0.822544, 0.842198, 0.145387, 0.980333, 0.969722, 0.385827, 0.742174, 0.992562, 0.778518, 0.737936, 0.874408, 0.93019, 0.848756, 0.10286, 0.411697, 0.513535, 0.100505, 0.235844, 0.0712042, 0.780822, 0.65207, 0.106151, 0.843968, 0.137026, 0.19359, 0.470046, 0.685024, 0.801273, 0.443104, 0.840353, 0.303245, 0.94544, 0.626175, 0.313943, 0.371233, 0.510667, 0.753433, 0.472468, 0.482272, 0.355332, 0.423747, 0.303537, 0.745258, 0.322039, 0.899848, 0.42553, 0.516047, 0.190752, 0.130942, 0.305774, 0.442567, 0.827156, 0.42771, 0.838491, 0.561399, 0.98035, 0.922267, 0.467943, 0.535141, 0.83542, 0.0678746, 0.339785, 0.497421, 0.837094, 0.635399, 0.0376445, 0.290444, 0.953545, 0.815358, 0.015509, 0.0934704, 0.0117289, 0.471379, 0.211196, 0.50282, 0.304326, 0.677232, 0.464641, 0.263981, 0.406351, 0.501177, 0.90898, 0.123073, 0.456577, 0.616319, 0.329018, 0.36137, 0.235127, 0.449414, 0.0533181, 0.124245, 0.823626, 0.181028, 0.0965832, 0.515334, 0.0578094, 0.430617, 0.476579, 0.892971, 0.24295, 0.894233, 0.633983, 0.451852, 0.486397, 0.0788665, 0.314991, 0.961955, 0.721795, 0.925039, 0.136851, 0.285745, 0.0426938, 0.00889496, 0.379703, 0.435715, 0.306528, 0.800782, 0.510652, 0.700367, 0.415429, 0.499462, 0.659518, 0.615336, 0.0678577, 0.104654, 0.0371008, 0.726568, 0.523198, 0.581961, 0.47025, 0.212008, 0.935105, 0.620384, 0.634939, 0.535458, 0.0439939, 0.476947, 0.385057, 0.589417, 0.500308, 0.640718, 0.441176, 0.820168, 0.124298, 0.149802, 0.96686, 0.932195, 0.791948, 0.751393, 0.452534, 0.107434, 0.821382, 0.977205, 0.477527, 0.834642, 0.149939, 0.207407, 0.729512, 0.991264, 0.327756, 0.860948, 0.0246052, 0.582887, 0.528856, 0.0216231, 0.871167, 0.992184, 0.394165, 0.99151, 0.351569, 0.167225, 0.736738, 0.726891, 0.889942, 0.830547, 0.497418, 0.180943, 0.239298, 0.249516, 0.351323, 0.23906, 0.633892, 0.797763, 0.256025, 0.740394, 0.794716, 0.548886, 0.94153, 0.426771, 0.964263, 0.602134, 0.157692, 0.51221, 0.883211, 0.459695, 0.624687, 0.677619, 0.524757, 0.567082, 0.965132, 0.615383, 0.363414, 0.178103, 0.382568, 0.605458, 0.704619, 0.23453, 0.704259, 0.791189, 0.747455, 0.201132, 0.48362, 0.517318, 0.865407, 0.376693, 0.27156, 0.273983, 0.439398, 0.679456, 0.616666, 0.956534, 0.222882, 0.548331, 0.427016, 0.688625, 0.316475, 0.0797888, 0.197334, 0.825732, 0.046541, 0.667399, 0.995749, 0.747012, 0.193808, 0.12538, 0.340587, 0.460038, 0.090228, 0.169801, 0.593597, 0.0286974, 0.277012, 0.0333368, 0.555538, 0.64682, 0.664105, 0.112142, 0.972264, 0.589269, 0.437943, 0.077566, 0.637009, 0.399174, 0.289606, 0.639596, 0.676414, 0.835179, 0.44786, 0.0174114, 0.392065, 0.12716, 0.821315, 0.0340378, 0.193213, 0.348501, 0.901849, 0.0942689, 0.735283, 0.00792822, 0.844442, 0.107897, 0.583495, 0.883682, 0.684787, 0.569863, 0.096334, 0.655823, 0.686633, 0.405986, 0.00363057, 0.440372, 0.0493766, 0.377997, 0.965714, 0.323141, 0.138127, 0.870226, 0.502981, 0.864036, 0.930167, 0.24043, 0.617038, 0.171409, 0.498145, 0.325839, 0.0213956, 0.62056, 0.948913, 0.378266, 0.0567162, 0.451742, 0.875486, 0.681645, 0.924886, 0.359523, 0.828532, 0.33314, 0.981575, 0.6529, 0.198985, 0.356704, 0.730095, 0.689353, 0.80525, 0.86304, 0.019015, 0.98754, 0.361893, 0.842485, 0.793509, 0.301799, 0.201418, 0.0551384, 0.509297, 0.193336, 0.171306, 0.830488, 0.12314, 0.109343, 0.916502, 0.589594, 0.957195, 0.710631, 0.353375, 0.839165, 0.31661, 0.810285, 0.89454, 0.426378, 0.268367, 0.54897, 0.945698, 0.102724, 0.132359, 0.993314, 0.624269, 0.633677, 0.304598, 0.865015, 0.737248, 0.887137, 0.635383, 0.790786, 0.986307, 0.0834649, 0.308325, 0.773805, 0.693736, 0.869477, 0.378664, 0.166997, 0.548414, 0.591115, 0.207419, 0.678926, 0.306532, 0.882389, 0.330757, 0.66696, 0.0226264, 0.293737, 0.549755, 0.190018, 0.428002, 0.0330888, 0.78409, 0.850576, 0.0957443, 0.75285, 0.183112, 0.318606, 0.679375, 0.0513686, 0.784358, 0.680503, 0.936123, 0.19679, 0.342259, 0.857399, 0.497498, 0.373449, 0.963185, 0.061194, 0.67867, 0.319073, 0.944838, 0.945182, 0.375355, 0.664758, 0.660519, 0.924169, 0.330604, 0.490298, 0.0174605, 0.814949, 0.557866, 0.631376, 0.738338, 0.428307, 0.967856, 0.545299, 0.840206, 0.680977, 0.156847, 0.734255, 0.367661, 0.642721, 0.508084, 0.887059, 0.217669, 0.90437, 0.983986, 0.560042, 0.932969, 0.313569, 0.855987, 0.538502, 0.275809, 0.883581, 0.620688, 0.0784743, 0.223647, 0.824707, 0.715881, 0.314945, 0.816051, 0.503688, 0.338043, 0.150112, 0.930396, 0.155001, 0.0774007, 0.0745277, 0.707445, 0.853576, 0.620116, 0.702835, 0.660482, 0.459573, 0.815874, 0.884924, 0.779751, 0.764061, 0.107455, 0.229721, 0.0151863, 0.932072, 0.666714, 0.500362, 0.68834, 0.597092, 0.708239, 0.970872, 0.857097, 0.685983, 0.955755, 0.190806, 0.0163263, 0.487328, 0.186357, 0.434234, 0.864356, 0.954898, 0.121264, 0.741515, 0.134672, 0.998451, 0.412249, 0.636198, 0.333825, 0.394477, 0.563415, 0.834848, 0.0771076, 0.835773, 0.56283, 0.0627276, 0.36464, 0.982207, 0.736576, 0.286206, 0.171741, 0.467778, 0.467378, 0.745612, 0.8679, 0.36728, 0.441325, 0.936111, 0.635793, 0.832643, 0.584554, 0.0834765, 0.614986, 0.34952, 0.0930057, 0.504816, 0.946701, 0.89807, 0.38719, 0.146971, 0.76105, 0.00644369, 0.463738, 0.826216, 0.18824, 0.289021, 0.803412, 0.743778, 0.0281653, 0.750498, 0.790439, 0.0265427, 0.289931, 0.268671, 0.946377, 0.167911, 0.820347, 0.763946, 0.201094, 0.144418, 0.413465, 0.667066, 0.557799, 0.935135, 0.675409, 0.0583699, 0.902752, 0.702898, 0.24328, 0.75703, 0.958257, 0.743549, 0.126296, 0.265276, 0.729513, 0.962756, 0.123353, 0.143048, 0.263312, 0.690127, 0.859566, 0.485524, 0.0239273, 0.00151717, 0.0723809, 0.602373, 0.762771, 0.640783, 0.475153, 0.192226, 0.904081, 0.375573, 0.953741, 0.281071, 0.614488, 0.396497, 0.295024, 0.650256, 0.201304, 0.500559, 0.439527, 0.453997, 0.0177716, 0.239765, 0.86825, 0.600484, 0.0629735, 0.179571, 0.813547, 0.422881, 0.635806, 0.957556, 0.151832, 0.571374, 0.897366, 0.110469, 0.798898, 0.881717, 0.31844, 0.645391, 0.912229, 0.0643488, 0.084613, 0.726527, 0.216498, 0.906139, 0.853988, 0.84643, 0.941913, 0.594186, 0.633076, 0.753172, 0.502716, 0.363552, 0.506002, 0.313169, 0.135435, 0.816577, 0.667825, 0.627015, 0.251642, 0.781796, 0.856541, 0.294344, 0.119712, 0.356421, 0.362389, 0.146107, 0.910781, 0.762419, 0.39919, 0.336941, 0.92832, 0.415532, 0.089885, 0.516, 0.530227, 0.327444, 0.83888, 0.413443, 0.459605, 0.171019, 0.981721, 0.137748, 0.489884, 0.352895, 0.955072, 0.82157, 0.103319, 0.927083, 0.532581, 0.316902, 0.637615, 0.013524, 0.785173, 0.551048, 0.201483, 0.38202, 0.67241, 0.771687, 0.531025, 0.826922, 0.468332, 0.0624375, 0.0825748, 0.244726, 0.0474653, 0.295925, 0.19707, 0.963282, 0.0333516, 0.451775, 0.832708, 0.715401, 0.4051, 0.96577, 0.940278, 0.14701, 0.555778, 0.0758023, 0.0197387, 0.439182, 0.770812, 0.271119, 0.984473, 0.964287, 0.245488, 0.152525, 0.761959, 0.455694, 0.550487, 0.522703, 0.754432, 0.050449, 0.255882, 0.46119, 0.0253107, 0.761951, 0.267347, 0.485221, 0.620061, 0.543256, 0.95605, 0.947825, 0.0579034, 0.97709, 0.377694, 0.84545, 0.0448161, 0.613559, 0.105458, 0.0365728, 0.129131, 0.954268, 0.031975, 0.0117617, 0.889931, 0.594795, 0.510126, 0.0368811, 0.525887, 0.291737, 0.585558, 0.337933, 0.4318, 0.555003, 0.678292, 0.443403, 0.0961935, 0.0921452, 0.745526, 0.240156, 0.164814, 0.957537, 0.879883, 0.950124, 0.636305, 0.220515, 0.205567, 0.189646, 0.538752, 0.290674, 0.32938, 0.797885, 0.510492, 0.630532, 0.0980946, 0.240802, 0.898951, 0.831824, 0.255786, 0.87384, 0.566666, 0.102045, 0.334717, 0.973228, 0.431538, 0.148153, 0.528583, 0.680616, 0.376027, 0.119179, 0.366423, 0.920142, 0.556832, 0.519105, 0.206382, 0.757003, 0.021572, 0.612761, 0.451421, 0.0577189, 0.669513, 0.830178, 0.612823, 0.60906, 0.825019, 0.993897, 0.0701606, 0.153628, 0.61948, 0.808924, 0.423015, 0.98627, 0.671347, 0.225241, 0.267217, 0.658016, 0.681039, 0.60694, 0.54466, 0.417781, 0.0437905, 0.146063, 0.74165, 0.571657, 0.989927, 0.535368, 0.072208, 0.145779, 0.706269, 0.585279, 0.754385, 0.61125, 0.197921, 0.79298, 0.739187, 0.599358, 0.513894, 0.574557, 0.69983, 0.849722, 0.776265, 0.175063, 0.131493, 0.707275, 0.507535, 0.730282, 0.652986, 0.742082, 0.17585, 0.654827, 0.82512, 0.58306, 0.935568, 0.102209, 0.802158, 0.520895, 0.851372, 0.483173, 0.384515, 0.0963455, 0.366792, 0.91588, 0.157587, 0.636136, 0.819416, 0.684009, 0.98648, 0.0268828, 0.120039, 0.763116, 0.310086, 0.328987, 0.161907, 0.82533, 0.2567, 0.953775, 0.4694, 0.778376, 0.554404, 0.986563, 0.819607, 0.377642, 0.318059, 0.918451, 0.426894, 0.516104, 0.0522369, 0.126048, 0.660289, 0.484337, 0.956744, 0.286428, 0.0413375, 0.896751, 0.870654, 0.200405, 0.631848, 0.824929, 0.0500405, 0.627212, 0.434032, 0.564735, 0.89303, 0.623865, 0.0888084, 0.403164, 0.808939, 0.415461, 0.892036, 0.796837, 0.914876, 0.74146, 0.0978747, 0.936716, 0.89141, 0.0777628, 0.318249, 0.715764, 0.132868, 0.578082, 0.629962, 0.93883, 0.697048, 0.083048, 0.423943, 0.196325, 0.610782, 0.67452, 0.482867, 0.253195, 0.487306, 0.918178, 0.836293, 0.518131, 0.604459, 0.16633, 0.730498, 0.21196, 0.499088, 0.0243054, 0.398041, 0.937355, 0.313733, 0.0234008, 0.484782, 0.209581, 0.0270179, 0.538044, 0.714142, 0.372622, 0.227493, 0.706833, 0.960303, 0.429944, 0.840859, 0.405883, 0.381973, 0.0148768, 0.497663, 0.213393, 0.561021, 0.348902, 0.786089, 0.28272, 0.86897, 0.531537, 0.661053, 0.189288, 0.74971, 0.325308, 0.918797, 0.813701, 0.228766, 0.824648, 0.292886, 0.710634, 0.0932822, 0.215401, 0.0661168, 0.074035, 0.119914, 0.25693, 0.787931, 0.672028, 0.809371, 0.624077, 0.98712, 0.770035, 0.812618, 0.11387, 0.797945, 0.586221, 0.227731, 0.0190717, 0.911422, 0.289266, 0.104082, 0.772593, 0.365488, 0.933498, 0.286594, 0.0819389, 0.588701, 0.812149, 0.308459, 0.281146, 0.633226, 0.580048, 0.437438, 0.398447, 0.129135, 0.4693, 0.155483, 0.55256, 0.639354, 0.900999, 0.441239, 0.951415, 0.993208, 0.0965534, 0.457934, 0.874072, 0.146623, 0.365402, 0.859546, 0.876866, 0.608724, 0.454491, 0.840641, 0.638527, 0.654233, 0.698724, 0.706963, 0.979879, 0.296499, 0.873044, 0.996017, 0.634044, 0.769548, 0.177342, 0.667196, 0.70298, 0.640204, 0.827305, 0.377461, 0.67522, 0.661258, 0.516612, 0.203282, 0.0711081, 0.313474, 0.281737, 0.307195, 0.047267, 0.0455222, 0.755168, 0.87994, 0.360752, 0.209819, 0.710788, 0.0622891, 0.617599, 0.229477, 0.863717, 0.852072, 0.115508, 0.736702, 0.190183, 0.152829, 0.0356765, 0.472027, 0.491483, 0.122155, 0.494228, 0.137175, 0.547976, 0.195646, 0.0121695, 0.73299, 0.309884, 0.560044, 0.987009, 0.430698, 0.00382474, 0.814072, 0.470584, 0.347878, 0.941325, 0.230163, 0.64553, 0.700458, 0.848281, 0.339537, 0.1447, 0.552574, 0.0186459, 0.461755, 0.598745, 0.185845, 0.228224, 0.782785, 0.269419, 0.560944, 0.59951, 0.325321, 0.418616, 0.69145, 0.107765, 0.0735108, 0.641734, 0.784847, 0.710308, 0.894437, 0.711628, 0.64592, 0.10606, 0.768545, 0.182833, 0.0521074, 0.373284, 0.836888, 0.812419, 0.428769, 0.0369999, 0.107018, 0.534173, 0.297168, 0.171209, 0.447395, 0.350044, 0.713297, 0.355536, 0.771001, 0.540365, 0.768313, 0.980241, 0.502351, 0.307796, 0.707297, 0.230677, 0.237729, 0.848202, 0.778981, 0.747103, 0.875742, 0.528053, 0.931245, 0.6015, 5.17358e-05, 0.643154, 0.974905, 0.506503, 0.538104, 0.794559, 0.464988, 0.775557, 0.509155, 0.383407, 0.334673, 0.252116, 0.934364, 0.508817, 0.316989, 0.249102, 0.482309, 0.421111, 0.5004, 0.946172, 0.275846, 0.00794803, 0.80494, 0.53359, 0.193383, 0.868671, 0.22597, 0.741639, 0.0730955, 0.418945, 0.391232, 0.798867, 0.611787, 0.961968, 0.740611, 0.259884, 0.318891, 0.807088, 0.735529, 0.856915, 0.475515, 0.36784, 0.574426, 0.41317, 0.252748, 0.869888, 0.265862, 0.586496, 0.279353, 0.936098, 0.999699, 0.578387, 0.12723, 0.368401, 0.634045, 0.748139, 0.409005, 0.88407, 0.0502159, 0.995984, 0.0912325, 0.0429103, 0.970043, 0.0216342, 0.0568862, 0.360242, 0.833031, 0.179521, 0.59828, 0.701973, 0.387729, 0.667839, 0.115342, 0.775766, 0.246466, 0.310886, 0.186815, 0.291886, 0.566824, 0.926555, 0.292389, 0.66239, 0.363306, 0.67926, 0.111689, 0.734432, 0.711458, 0.14954, 0.00754289, 0.62662, 0.825252, 0.149637, 0.947528, 0.459901, 0.045079, 0.939959, 0.433388, 0.70712, 0.961558, 0.95893, 0.721015, 0.874506, 0.832101, 0.282481, 0.90934, 0.761407, 0.392322, 0.159559, 0.94197, 0.870158, 0.03336, 0.256874, 0.0622876, 0.529925, 0.987597, 0.405906, 0.0755638, 0.528436, 0.783823, 0.528075, 0.703557, 0.92635, 0.560757, 0.490081, 0.703722, 0.937953, 0.359367, 0.793429, 0.410178, 0.670041, 0.80674, 0.00688808, 0.16676, 0.106225, 0.444607, 0.193202, 0.522418, 0.386556, 0.670946, 0.02345, 0.914917, 0.666931, 0.116329, 0.668862, 0.0387895, 0.528626, 0.759742, 0.0109455, 0.707786, 0.960788, 0.786994, 0.659212, 0.730779, 0.551935, 0.0823566, 0.352984, 0.0386925, 0.276281, 0.36703, 0.831537, 0.360835, 0.977842, 0.191179, 0.236736, 0.539506, 0.812653, 0.420959, 0.314764, 0.681369, 0.922514, 0.0198208, 0.254843, 0.290766, 0.0609381, 0.79257, 0.956871, 0.293394, 0.883664, 0.692588, 0.959669, 0.515316, 0.103004, 0.526106, 0.937301, 0.755371, 0.363085, 0.949461, 0.64215, 0.955915, 0.449413, 0.499907, 0.581976, 0.937035, 0.168617, 0.98217, 0.795014, 0.418159, 0.589456, 0.71694, 0.618336, 0.917788, 0.795414, 0.148801, 0.93661, 0.452789, 0.460439, 0.39141, 0.1485, 0.569739, 0.969689, 0.286177, 0.288925, 0.121401, 0.689391, 0.800055, 0.58403, 0.0913524, 0.721822, 0.820777, 0.627701, 0.848366, 0.430608, 0.568319, 0.24714, 0.456631, 0.474619, 0.182914, 0.16318, 0.969156, 0.0715661, 0.357084, 0.489423, 0.441219, 0.641865, 0.0972819, 0.281715, 0.892366, 0.666108, 0.407355, 0.793999, 0.767004, 0.849207, 0.594093, 0.591909, 0.185094, 0.481622, 0.130339, 0.207815, 0.633715, 0.0950679, 0.304213, 0.777771, 0.566875, 0.650894, 0.908, 0.715623, 0.453709, 0.494873, 0.164986, 0.136478, 0.844892, 0.351003, 0.529236, 0.357621, 0.540397, 0.501937, 0.783928, 0.325222, 0.21133, 0.0124853, 0.0514517, 0.123201, 0.483255, 0.897414, 0.827372, 0.383265, 0.749082, 0.144005, 0.832858, 0.419486, 0.812362, 0.354209, 0.750605, 0.725897, 0.311671, 0.898322, 0.139518, 0.375711, 0.648342, 0.938626, 0.503861, 0.388468, 0.340517, 0.443478, 0.938442, 0.586266, 0.274055, 0.0277146, 0.27798, 0.134791, 0.323235, 0.460063, 0.206483, 0.990425, 0.285144, 0.0296279, 0.887272, 0.677299, 0.189501, 0.50649, 0.362349, 0.57537, 0.493371, 0.749639, 0.984641, 0.545836, 0.75374, 0.841115, 0.961771, 0.377901, 0.079646, 0.36752, 0.70832, 0.41948, 0.616419, 0.619567, 0.797896, 0.971316, 0.992549, 0.977303, 0.233725, 0.0465331, 0.443758, 0.68886, 0.809364, 0.720206, 0.473988, 0.0438189, 0.394437, 0.843318, 0.673354, 0.247272, 0.716884, 0.465691, 0.67913, 0.103581, 0.247044, 0.776397, 0.713336, 0.0857064, 0.733572, 0.00824115, 0.973825, 0.0054631, 0.690264, 0.131226, 0.202669, 0.419127, 0.0808313, 0.90791, 0.00845407, 0.553777, 0.333988, 0.10771, 0.864626, 0.900613, 0.358792, 0.213129, 0.9265, 0.916642, 0.305348, 0.0714905, 0.448046, 0.0165338, 0.781888, 0.657568, 0.380822, 0.285861, 0.747746, 0.336165, 0.122518, 0.109034, 0.196583, 0.53702, 0.332354, 0.675378, 0.457182, 0.586038, 0.0790538, 0.39616, 0.451382, 0.212597, 0.0578382, 0.394242, 0.250448, 0.192612, 0.987726, 0.149995, 0.48443, 0.22735, 0.0562007, 0.397844, 0.571009, 0.0596158, 0.533837, 0.772239, 0.37539, 0.636339, 0.084022, 0.910418, 0.385733, 0.842044, 0.358594, 0.927797, 0.0216316, 0.834033, 0.151185, 0.65671, 0.264563, 0.683936, 0.562267, 0.240411, 0.860032, 0.0446961, 0.936807, 0.477205, 0.860825, 0.2123, 0.284143, 0.0455541, 0.694883, 0.0617012, 0.575504, 0.269704, 0.346369, 0.339188, 0.480336, 0.985856, 0.0546475, 0.626681, 0.361976, 0.626888, 0.055417, 0.82409, 0.710263, 0.128441, 0.595352, 0.22604, 0.43445, 0.837705, 0.104783, 0.0511415, 0.190961, 0.596936, 0.053452, 0.304174, 0.57171, 0.353215, 0.010488, 0.246816, 0.0932122, 0.612738, 0.501998, 0.586356, 0.396924, 0.0936036, 0.924441, 0.505925, 0.262601, 0.32949, 0.00111347, 0.46364, 0.507593, 0.121674, 0.538844, 0.855018, 0.41841, 0.103038, 0.549434, 0.966196, 0.951207, 0.0533569, 0.445739, 0.378899, 0.160229, 0.638584, 0.873784, 0.57244, 0.935941, 0.258489, 0.0491446, 0.467041, 0.898167, 0.338616, 0.500514, 0.301561, 0.863336, 0.848966, 0.390039, 0.28318, 0.410614, 0.256398, 0.105856, 0.0358722, 0.961555, 0.341872, 0.891291, 0.659691, 0.798237, 0.568368, 0.181049, 0.953716, 0.66974, 0.321753, 0.730963, 0.800236, 0.615347, 0.926229, 0.771897, 0.718593, 0.760681, 0.967301, 0.773375, 0.860493, 0.443775, 0.436871, 0.244916, 0.970733, 0.0458495, 0.577526, 0.279178, 0.934203, 0.268333, 0.192285, 0.210131, 0.710649, 0.353909, 0.836996, 0.777894, 0.230633, 0.228066, 0.708844, 0.474627, 0.302571, 0.701639, 0.0487951, 0.379025, 0.836639, 0.684808, 0.994508, 0.926402, 0.300223, 0.53037, 0.905855, 0.0893086, 0.714568, 0.901778, 0.666019, 0.266441, 0.730149, 0.393682, 0.430029, 0.208461, 0.794102, 0.79503, 0.586481, 0.903543, 0.241359, 0.456652, 0.00214802, 0.312227, 0.582326, 0.615416, 0.0558838, 0.923502, 0.706949, 0.559163, 0.948034, 0.328065, 0.951462, 0.868804, 0.147185, 0.91278, 0.779487, 0.816029, 0.639607, 0.305077, 0.918527, 0.197986, 0.294465, 0.892737, 0.539866, 0.420432, 0.122988, 0.835, 0.898758, 0.386068, 0.101431, 0.589552, 0.489902, 0.26309, 0.533791, 0.356569, 0.0118044, 0.953867, 0.26857, 0.186294, 0.0452774, 0.421917, 0.493784, 0.414785, 0.721879, 0.912289, 0.658226, 0.844909, 0.296203, 0.168926, 0.240677, 0.680888, 0.341393, 0.440625, 0.934391, 0.269084, 0.382079, 0.353045, 0.892814, 0.46388, 0.136527, 0.666674, 0.149175, 0.878254, 0.525858, 0.803983, 0.407269, 0.369408, 0.37673, 0.98668, 0.700055, 0.158113, 0.597962, 0.632887, 0.709538, 0.950499, 0.429259, 0.657987, 0.0603, 0.78455, 0.817818, 0.670467, 0.45188, 0.533857, 0.398086, 0.237219, 0.748755, 0.657383, 0.536506, 0.399018, 0.87733, 0.342198, 0.758642, 0.509341, 0.293924, 0.060145, 0.504314, 0.568298, 0.178665, 0.953087, 0.42456, 0.666576, 0.569727, 0.721221, 0.824107, 0.796511, 0.626571, 0.255025, 0.225761, 0.59357, 0.690361, 0.686626, 0.746304, 0.184284, 0.648282, 0.819329, 0.952076, 0.448158, 0.0332633, 0.852651, 0.531981, 0.896184, 0.737609, 0.560398, 0.353053, 0.307972, 0.485161, 0.300442, 0.942142, 0.73065, 0.979565, 0.927786, 0.118953, 0.528236, 0.659064, 0.284041, 0.624441, 0.229304, 0.73557, 0.880571, 0.339063, 0.708249, 0.826763, 0.210482, 0.136053, 0.0496121, 0.466992, 0.822229, 0.191336, 0.304231, 0.620374, 0.0859391, 0.223158, 0.2694, 0.193214, 0.261619, 0.014816, 0.17563, 0.554757, 0.674788, 0.741212, 0.766272, 0.914706, 0.615055, 0.160788, 0.637888, 0.430139, 0.464245, 0.380538, 0.892205, 0.335936, 0.921497, 0.846967, 0.00290858, 0.91668, 0.307019, 0.489716, 0.890401, 0.680415, 0.846589, 0.337138, 0.486051, 0.356143, 0.666638, 0.146973, 0.760682, 0.262908, 0.0927556, 0.390415, 0.960416, 0.195444, 0.515854, 0.310233, 0.52904, 0.765056, 0.512377, 0.989755, 0.487331, 0.367056, 0.0187709, 0.541553, 0.373764, 0.932688, 0.0389721, 0.484621, 0.199486, 0.400526, 0.0814984, 0.180155, 0.911501, 0.694136, 0.34408, 0.78081, 0.368966, 0.398434, 0.37802, 0.945652, 0.911507, 0.655942, 0.36852, 0.44883, 0.583638, 0.982306, 0.17161, 0.94737, 0.51886, 0.0805748, 0.981497, 0.46145, 0.0340455, 0.632266, 0.685372, 0.67774, 0.694415, 0.949281, 0.0680856, 0.513159, 0.0697832, 0.360516, 0.970561, 0.320675, 0.95767, 0.0560639, 0.139137, 0.886109, 0.880892, 0.968041, 0.616826, 0.553778, 0.379093, 0.538205, 0.513793, 0.958085, 0.959205, 0.907414, 0.932649, 0.22889, 0.98758, 0.0628116, 0.955119, 0.271644, 0.801689, 0.011347, 0.646311, 0.745771, 0.47517, 0.600875, 0.294792, 0.764504, 0.554181, 0.472776, 0.0642935, 0.606999, 0.775537, 0.408396, 0.281776, 0.340066, 0.0262481, 0.565226, 0.611996, 0.969395, 0.9418, 0.719319, 0.796495, 0.823326, 0.225035, 0.739689, 0.451779, 0.0521533, 0.449227, 0.959449, 0.961225, 0.660242, 0.920841, 0.416676, 0.797053, 0.655847, 0.608478, 0.900489, 0.165995, 0.738849, 0.27131, 0.801538, 0.94637, 0.370646, 0.679767, 0.494438, 0.378872, 0.35697, 0.359024, 0.303692, 0.275711, 0.323702, 0.512316, 0.371951, 0.533268, 0.685444, 0.40831, 0.771926, 0.748736, 0.540789, 0.642759, 0.538328, 0.647328, 0.291415, 0.874469, 0.834747, 0.857975, 0.968321, 0.990562, 0.263434, 0.639832, 0.441566, 0.0726332, 0.340444, 0.752048, 0.349807, 0.730568, 0.789266, 0.811853, 0.513046, 0.899613, 0.516308, 0.497525, 0.234687, 0.237778, 0.165675, 0.762917, 0.451826, 0.615823, 0.662717, 0.457509, 0.158498, 0.577316, 0.35561, 0.330589, 0.700955, 0.841483, 0.163454, 0.193675, 0.662746, 0.991028, 0.736513, 0.560741, 0.216299, 0.708886, 0.122411, 0.901935, 0.113462, 0.504369, 0.0346855, 0.435608, 0.862252, 0.75051, 0.151968, 0.911389, 0.652589, 0.267185, 0.157826, 0.190982, 0.335694, 0.688365, 0.911853, 0.706414, 0.704084, 0.973135, 0.838225, 0.104534, 0.0721, 0.0749146, 0.326383, 0.87291, 0.402227, 0.401096, 0.412568, 0.0246242, 0.525776, 0.188117, 0.00442395, 0.494337, 0.519534, 0.110586, 0.173421, 0.20723, 0.318541, 0.73166, 0.681771, 0.870382, 0.710488, 0.206312, 0.15444, 0.147928, 0.97648, 0.596264, 0.363473, 0.606857, 0.88176, 0.745383, 0.923696, 0.965812, 0.753421, 0.641137, 0.611174, 0.459111, 0.66334, 0.954044, 0.489173, 0.948543, 0.150962, 0.0701563, 0.8108, 0.350131, 0.713544, 0.498818, 0.200341, 0.186501, 0.64419, 0.586686, 0.745698, 0.686946, 0.673159, 0.556574, 0.410714, 0.738815, 0.696961, 0.858431, 0.10813, 0.81019, 0.787369, 0.737881, 0.260082, 0.542611, 0.309025, 0.235043, 0.964064, 0.234988, 0.87565, 0.675234, 0.493421, 0.833309, 0.910046, 0.856748, 0.339225, 0.537402, 0.105541, 0.614716, 0.374233, 0.66333, 0.098417, 0.627339, 0.415579, 0.821638, 0.705974, 0.463912, 0.0648303, 0.954619, 0.350892, 0.126585, 0.970619, 0.883343, 0.712869, 0.203829, 0.0761472, 0.932658, 0.868495, 0.268359, 0.406852, 0.936335, 0.885286, 0.426577, 0.814333, 0.487315, 0.266312, 0.874065, 0.113086, 0.0879669, 0.358795, 0.731274, 0.780572, 0.762504, 0.396417, 0.0754197, 0.0542, 0.257103, 0.856874, 0.369736, 0.27032, 0.99483, 0.778053, 0.212175, 0.180389, 0.341515, 0.978491, 0.341037, 0.70969, 0.0857076, 0.897486, 0.113346, 0.940731, 0.503259, 0.766457, 0.272352, 0.251583, 0.19934, 0.747792, 0.244096, 0.355233, 0.747844, 0.238513, 0.74016, 0.735271, 0.488837, 0.937653, 0.974487, 0.888443, 0.251202, 0.571489, 0.864624, 0.638694, 0.971124, 0.943243, 0.702042, 0.779263, 0.257991, 0.234725, 0.065335, 0.924497, 0.227651, 0.597242, 0.893316, 0.720336, 0.697012, 0.733315, 0.628808, 0.801178, 0.168906, 0.414159, 0.26456, 0.418753, 0.0699098, 0.657538, 0.407016, 0.0388166, 0.0684677, 0.0342391, 0.790733, 0.9259, 0.796201, 0.705881, 0.0255235, 0.719836, 0.33844, 0.186822, 0.566064, 0.675268, 0.0149093, 0.606167, 0.350088, 0.10668, 0.446297, 0.0843774, 0.790409, 0.717251, 0.559988, 0.257403, 0.425087, 0.376849, 0.584526, 0.476961, 0.776508, 0.800178, 0.680013, 0.412751, 0.202657, 0.826877, 0.486285, 0.00149935, 0.390268, 0.758384, 0.905976, 0.768315, 0.253647, 0.983081, 0.00663012, 0.202434, 0.178113, 0.116399, 0.039723, 0.6561, 0.391824, 0.297508, 0.588924, 0.923464, 0.00537664, 0.836237, 0.964078, 0.828544, 0.150285, 0.963379, 0.966769, 0.570818, 0.181068, 0.17895, 0.909913, 0.865376, 0.40041, 0.849182, 0.743446, 0.970249, 0.00954235, 0.73294, 0.406437, 0.731526, 0.470572, 0.905462, 0.153149, 0.069615, 0.0179346, 0.196463, 0.115977, 0.577559, 0.370076, 0.357853, 0.229909, 0.43031, 0.865533, 0.0289437, 0.44876, 0.538148, 0.542429, 0.678139, 0.305213, 0.265633, 0.203731, 0.731977, 0.504254, 0.791669, 0.248444, 0.00427831, 0.728808, 0.422607, 0.0443968, 0.412837, 0.77262, 0.838393, 0.724063, 0.57939, 0.650184, 0.952033, 0.531606, 0.510049, 0.280466, 0.661898, 0.298809, 0.937598, 0.908492, 0.538353, 0.188075, 0.716075, 0.303379, 0.361017, 0.462339, 0.855308, 0.064749, 0.741943, 0.66316, 0.861273, 0.665325, 0.922275, 0.198738, 0.648602, 0.816523, 0.602193, 0.65667, 0.462498, 0.293423, 0.266133, 0.597445, 0.830623, 0.540784, 0.98207, 0.0532956, 0.676609, 0.167312, 0.646478, 0.841116, 0.891341, 0.48221, 0.0474615, 0.958032, 0.472501, 0.0507142, 0.321953, 0.241055, 0.888323, 0.736603, 0.796845, 0.785677, 0.707954, 0.0422941, 0.491214, 0.695153, 0.431698, 0.0973597, 0.69562, 0.231038, 0.160969, 0.472323, 0.296825, 0.0143042, 0.647385, 0.472272, 0.0449773, 0.0375269, 0.340891, 0.182227, 0.0961762, 0.0278703, 0.0500822, 0.320766, 0.612475, 0.765363, 0.129653, 0.993632, 0.597538, 0.671239, 0.898884, 0.136976, 0.654171, 0.877248, 0.430103, 0.510388, 0.00281405, 0.579553, 0.675898, 0.283895, 0.547819, 0.797886, 0.956798, 0.916383, 0.0430432, 0.773556, 0.682857, 0.00983586, 0.959418, 0.380881, 0.413192, 0.909154, 0.671533, 0.465914, 0.158052, 0.534799, 0.0888263, 0.0101368, 0.928351, 0.0414402, 0.319122, 0.133462, 0.961109, 0.741489, 0.785996, 0.169425, 0.559779, 0.944418, 0.782808, 0.852151, 0.00149579, 0.205381, 0.446745, 0.842947, 0.29455, 0.787455, 0.0536224, 0.193258, 0.366233, 0.11789, 0.639724, 0.541375, 0.786406, 0.526812, 0.843084, 0.0228975, 0.0407159, 0.917178, 0.247129, 0.399214, 0.601143, 0.47783, 0.0326244, 0.0280982, 0.994886, 0.039664, 0.757133, 0.83938, 0.120956, 0.174113, 0.313512, 0.636826, 0.576719, 0.953172, 0.195074, 0.577762, 0.476535, 0.569366, 0.350372, 0.156191, 0.411399, 0.153506, 0.935683, 0.473002, 0.440206, 0.119016, 0.645946, 0.0209994, 0.504743, 0.675811, 0.379955, 0.335104, 0.805845, 0.115485, 0.324205, 0.347445, 0.398456, 0.0608475, 0.695133, 0.963092, 0.852476, 0.728553, 0.634305, 0.808109, 0.705899, 0.855941, 0.224381, 0.875126, 0.257128, 0.00800127, 0.129995, 0.999965, 0.713339, 0.110972, 0.237753, 0.0847136, 0.68729, 0.162604, 0.859784, 0.742029, 0.847837, 0.313516, 0.136476, 0.878395, 0.938595, 0.599178, 0.951067, 0.21406, 0.561472, 0.739648, 0.850327, 0.0271676, 0.0405028, 0.641079, 0.260596, 0.254249, 0.702193, 0.960725, 0.38681, 0.846363, 0.517851, 0.90948, 0.107653, 0.779072, 0.931403, 0.105728, 0.178626, 0.463024, 0.145339, 0.216668, 0.818549, 0.783054, 0.80364, 0.11403, 0.871478, 0.613073, 0.246428, 0.69674, 0.646755, 0.74023, 0.361362, 0.957374, 0.322948, 0.592186, 0.687559, 0.767892, 0.918306, 0.85567, 0.374087, 0.0485491, 0.415257, 0.571648, 0.956083, 0.543928, 0.366023, 0.228243, 0.439239, 0.732554, 0.162414, 0.893113, 0.442318, 0.873651, 0.486249, 0.975333, 0.021467, 0.0117069, 0.45745, 0.760263, 0.397957, 0.40605, 0.977974, 0.268662, 0.991085, 0.862039, 0.851756, 0.134341, 0.868184, 0.347163, 0.695905, 0.620275, 0.268942, 0.776129, 0.805826, 0.020793, 0.922417, 0.703328, 0.66502, 0.651994, 0.442992, 0.199149, 0.163923, 0.516534, 0.830496, 0.436574, 0.350105, 0.624314, 0.385537, 0.00687786, 0.0963305, 0.162069, 0.431528, 0.662414, 0.420444, 0.27102, 0.515764, 0.384239, 0.747993, 0.0230769, 0.301118, 0.183377, 0.717655, 0.425752, 0.605783, 0.259882, 0.543188, 0.952181, 0.853013, 0.382584, 0.279875, 0.337507, 0.790354, 0.140324, 0.00178103, 0.89052, 0.981606, 0.967049, 0.469, 0.270805, 0.892961, 0.441842, 0.258373, 0.2039, 0.750057, 0.132035, 0.970401, 0.245466, 0.277798, 0.621281, 0.256343, 0.289629, 0.214118, 0.733642, 0.226264, 0.223815, 0.933411, 0.0981471, 0.244844, 0.705185, 0.612502, 0.459645, 0.231061, 0.180095, 0.683949, 0.62148, 0.273106, 0.420026, 0.138759, 0.0501066, 0.21252, 0.694149, 0.119514, 0.974127, 0.571826, 0.0811982, 0.60171, 0.841024, 0.616945, 0.24451, 0.320739, 0.80335, 0.230985, 0.881866, 0.205061, 0.070866, 0.409333, 0.862503, 0.28329, 0.110689, 0.574015, 0.772147, 0.572682, 0.640735, 0.757784, 0.628274, 0.694181, 0.417125, 0.029089, 0.0211161, 0.759778, 0.699903, 0.505733, 0.346615, 0.165152, 0.966993, 0.974606, 0.358874, 0.21057, 0.596211, 0.428221, 0.695422, 0.534236, 0.912104, 0.354949, 0.082759, 0.381062, 0.0662933, 0.515534, 0.170889, 0.215113, 0.279478, 0.507817, 0.842307, 0.341165, 0.0252222, 0.700538, 0.694553, 0.191996, 0.166709, 0.712132, 0.0224051, 0.77722, 0.930428, 0.373895, 0.895222, 0.994022, 0.657036, 0.172438, 0.784169, 0.419275, 0.791009, 0.777573, 0.39067, 0.624302, 0.359934, 0.612963, 0.706313, 0.111959, 0.0390335, 0.970666, 0.666958, 0.471559, 0.484552, 0.314426, 0.472257, 0.904414, 0.944772, 0.412989, 0.976617, 0.572601, 0.862967, 0.313269, 0.229798, 0.23277, 0.83076, 0.588171, 0.912323, 0.793586, 0.710813, 0.16191, 0.587905, 0.00747314, 0.634314, 0.98659, 0.0590751, 0.294304, 0.120698, 0.406781, 0.901869, 0.917492, 0.781419, 0.644313, 0.895011, 0.105034, 0.231572, 0.831534, 0.409516, 0.0972754, 0.128893, 0.0207831, 0.36514, 0.680242, 0.995298, 0.813521, 0.17838, 0.666933, 0.657365, 0.734068, 0.745543, 0.176226, 0.246687, 0.178081, 0.389388, 0.37581, 0.616925, 0.777974, 0.235395, 0.639782, 0.372604, 0.629282, 0.549173, 0.837367, 0.152404, 0.530772, 0.00985781, 0.240783, 0.159127, 0.586533, 0.742018, 0.102374, 0.570525, 0.414934, 0.944272, 0.3101, 0.7438, 0.424261, 0.982069, 0.159292, 0.594847, 0.481841, 0.350749, 0.940426, 0.593612, 0.749338, 0.238546, 0.779049, 0.494601, 0.111275, 0.494378, 0.428584, 0.296693, 0.53248, 0.153693, 0.088863, 0.529992, 0.136403, 0.222496, 0.0779707, 0.130267, 0.58797, 0.170469, 0.688227, 0.0272089, 0.476707, 0.51153, 0.197059, 0.205029, 0.107399, 0.631572, 0.218695, 0.145721, 0.562572, 0.639606, 0.919694, 0.277057, 0.473889, 0.553769, 0.806082, 0.533948, 0.982034, 0.575968, 0.44451, 0.0864928, 0.141039, 0.698115, 0.357452, 0.810979, 0.959997, 0.111074, 0.190409, 0.353476, 0.890042, 0.984756, 0.402445, 0.173425, 0.456301, 0.305938, 0.570571, 0.502218, 0.790741, 0.174554, 0.158844, 0.873969, 0.224072, 0.512449, 0.960338, 0.19284, 0.282728, 0.200631, 0.987078, 0.17059, 0.899308, 0.738105, 0.770904, 0.685526, 0.567407, 0.929639, 0.889502, 0.986333, 0.507396, 0.454575, 0.946174, 0.000128393, 0.97613, 0.247681, 0.223189, 0.130846, 0.503126, 0.00977749, 0.257345, 0.156397, 0.262276, 0.601337, 0.111028, 0.219943, 0.0214403, 0.879047, 0.974838, 0.526578, 0.995052, 0.573951, 0.738533, 0.745115, 0.576467, 0.478822, 0.345538, 0.952433, 0.429159, 0.965597, 0.0971296, 0.876261, 0.540817, 0.953571, 0.606756, 0.648853, 0.296477, 0.316441, 0.763382, 0.628519, 0.719841, 0.317647, 0.224754, 0.905354, 0.133716, 0.511366, 0.684844, 0.0750072, 0.60444, 0.197361, 0.058035, 0.362226, 0.92726, 0.435769, 0.405334, 0.15729, 0.747457, 0.11012, 0.923759, 0.631698, 0.529456, 0.480963, 0.997847, 0.0915321, 0.552318, 0.942094, 0.155205, 0.321001, 0.88759, 0.614815, 0.452906, 0.980156, 0.988733, 0.530218, 0.830658, 0.786017, 0.772253, 0.777924, 0.55863, 0.282608, 0.189867, 0.112464, 0.449778, 0.186788, 0.0719575, 0.451825, 0.634827, 0.408563, 0.28201, 0.590164, 0.624124, 0.290393, 0.411561, 0.505042, 0.226456, 0.100228, 0.155996, 0.200603, 0.626228, 0.824954, 0.629744, 0.544411, 0.311014, 0.862041, 0.427736, 0.539546, 0.845024, 0.316539, 0.93555, 0.0783485, 0.158411, 0.881053, 0.213352, 0.729507, 0.202396, 0.510654, 0.815964, 0.247689, 0.303486, 0.914875, 0.973396, 0.322303, 0.565204, 0.712887, 0.404316, 0.574151, 0.810808, 0.585602, 0.953374, 0.463926, 0.438665, 0.886745, 0.957678, 0.43447, 0.0935005, 0.0438857, 0.193685, 0.788244, 0.0893059, 0.969534, 0.0802372, 0.059717, 0.807384, 0.822331, 0.633693, 0.833317, 0.387917, 0.505188, 0.461769, 0.213152, 0.0342209, 0.325889, 0.138084, 0.559839, 0.70969, 0.366358, 0.295135, 0.398068, 0.192014, 0.166762, 0.143056, 0.364799, 0.466608, 0.615921, 0.80872, 0.106005, 0.105853, 0.0739101, 0.880153, 0.411685, 0.31732, 0.959769, 0.154294, 0.756141, 0.63009, 0.141698, 0.49859, 0.42693, 0.739907, 0.0242807, 0.116376, 0.60273, 0.920794, 0.312465, 0.193958, 0.0546883, 0.277781, 0.954336, 0.12488, 0.454498, 0.989237, 0.179482, 0.0193954, 0.520011, 0.5112, 0.420542, 0.511111, 0.527766, 0.746887, 0.405658, 0.823256, 0.795496, 0.878712, 0.929097, 0.31443, 0.0562202, 0.542419, 0.365227, 0.621199, 0.390671, 0.842298, 0.0553187, 0.183106, 0.752693, 0.783371, 0.0239456, 0.401386, 0.6085, 0.487029, 0.414038, 0.106318, 0.587626, 0.600169, 0.863234, 0.564907, 0.878195, 0.858119, 0.800449, 0.304501, 0.349082, 0.85689, 0.240666, 0.914041, 0.920501, 0.0946677, 0.296726, 0.647105, 0.157593, 0.738604, 0.777838, 0.822456, 0.121005, 0.0835438, 0.00650387, 0.190033, 0.970416, 0.710227, 0.497362, 0.146237, 0.169611, 0.50219, 0.195827, 0.0658138, 0.917113, 0.693886, 0.617656, 0.668504, 0.0501968, 0.77622, 0.278322, 0.411264, 0.38033, 0.291897, 0.584225, 0.511621, 0.636816, 0.00325911, 0.552845, 0.487012, 0.295391, 0.351319, 0.330664, 0.504898, 0.268667, 0.273362, 0.158858, 0.342329, 0.346874, 0.586149, 0.415282, 0.367159, 0.281282, 0.394212, 0.649718, 0.701435, 0.575093, 0.987478, 0.543518, 0.60293, 0.585194, 0.0846587, 0.993948, 0.519088, 0.392095, 0.573498, 0.493422, 0.63178, 0.383882, 0.198191, 0.894283, 0.528548, 0.599863, 0.636292, 0.10397, 0.6732, 0.364287, 0.809858, 0.560692, 0.994631, 0.4384, 0.842604, 0.652818, 0.776153, 0.339616, 0.516514, 0.143501, 0.257708, 0.760231, 0.926892, 0.185963, 0.565086, 0.140491, 0.0228559, 0.00735798, 0.813714, 0.425085, 0.911598, 0.426543, 0.151993, 0.793393, 0.628017, 0.434025, 0.254041, 0.546806, 0.312753, 0.530425, 0.470881, 0.956417, 0.829595, 0.570299, 0.49159, 0.505353, 0.179936, 0.617646, 0.0823811, 0.132929, 0.5014, 0.290813, 0.957392, 0.797293, 0.304657, 0.727281, 0.333453, 0.641057, 0.111023, 0.0091141, 0.17541, 0.286548, 0.0893028, 0.00954593, 0.0441531, 0.880874, 0.831576, 0.216571, 0.339205, 0.411432, 0.815293, 0.69624, 0.636377, 0.0785996, 0.0102724, 0.591968, 0.496091, 0.847951, 0.609832, 0.0627377, 0.249463, 0.612134, 0.544395, 0.463748, 0.40182, 0.61142, 0.271422, 0.314641, 0.831937, 0.175664, 0.945095, 0.978263, 0.313427, 0.922018, 0.280094, 0.539594, 0.187436, 0.332567, 0.386781, 0.809014, 0.053213, 0.576812, 0.254369, 0.862251, 0.381249, 0.767665, 0.176679, 0.349803, 0.80332, 0.718744, 0.178139, 0.555278, 0.384449, 0.815755, 0.933792, 0.61947, 0.957829, 0.233526, 0.382213, 0.304502, 0.948054, 0.485502, 0.580438, 0.696949, 0.0937883, 0.728815, 0.676401, 0.305457, 0.157044, 0.136247, 0.626979, 0.563179, 0.188353, 0.454238, 0.288522, 0.755235, 0.866475, 0.979532, 0.91483, 0.601608, 0.74356, 0.904399, 0.814325, 0.334625, 0.440071, 0.349416, 0.156377, 0.22615, 0.208253, 0.275315, 0.94069, 0.297708, 0.801272, 0.236748, 0.785785, 0.139803, 0.163611, 0.788068, 0.120665, 0.10143, 0.964675, 0.807978, 0.375503, 0.719976, 0.0627234, 0.744448, 0.148521, 0.670968, 0.564889, 0.967662, 0.138617, 0.586044, 0.580505, 0.482541, 0.555217, 0.0987674, 0.111251, 0.162678, 0.231221, 0.0836387, 0.76811, 0.286222, 0.40711, 0.980047, 0.764288, 0.657563, 0.763509, 0.96356, 0.606738, 0.563903, 0.0720881, 0.306462, 0.556852, 0.976887, 0.995086, 0.70922, 0.112916, 0.321314, 0.944721, 0.212512, 0.796404, 0.935032, 0.656479, 0.265373, 0.671016, 0.0253296, 0.132415, 0.437462, 0.399299, 0.142063, 0.965011, 0.552034, 0.59333, 0.12919, 0.567946, 0.15816, 0.947786, 0.462562, 0.496888, 0.734393, 0.598166, 0.00171491, 0.898537, 0.755027, 0.291732, 0.862137, 0.519213, 0.493989, 0.776933, 0.0761662, 0.613793, 0.493426, 0.159023, 0.235848, 0.589783, 0.332266, 0.849369, 0.651109, 0.127742, 0.29675, 0.273595, 0.687917, 0.442929, 0.931522, 0.561769, 0.0636195, 0.906886, 0.477365, 0.672938, 0.861644, 0.0969883, 0.0387793, 0.870088, 0.736888, 0.889562, 0.249274, 0.60556, 0.668005, 0.110343, 0.100921, 0.0862836, 0.703271, 0.629034, 0.485964, 0.417137, 0.393032, 0.0188766, 0.728669, 0.29715, 0.0372549, 0.670083, 0.984021, 0.919079, 0.565775, 0.355215, 0.207795, 0.278668, 0.466946, 0.344781, 0.250272, 0.400208, 0.399751, 0.590169, 0.789912, 0.85021, 0.12721, 0.851221, 0.182549, 0.319829, 0.0236746, 0.140023, 0.122837, 0.922413, 0.215876, 0.421003, 0.335499, 0.588046, 0.148991, 0.955343, 0.707926, 0.0355906, 0.383157, 0.115756, 0.781074, 0.624957, 0.852997, 0.819437, 0.688536, 0.540103, 0.00235164, 0.133666, 0.536905, 0.854726, 0.0536206, 0.0376954, 0.102685, 0.680753, 0.451366, 0.918893, 0.476345, 0.0675023, 0.760103, 0.0714962, 0.866499, 0.490291, 0.12542, 0.482161, 0.631525, 0.443632, 0.819449, 0.136307, 0.703275, 0.0271129, 0.47967, 0.38198, 0.592568, 0.934314, 0.716009, 0.832238, 0.786019, 0.555664, 0.00513192, 0.28334, 0.542588, 0.304002, 0.259903, 0.393253, 0.62914, 0.485006, 0.4082, 0.09165, 0.471402, 0.343116, 0.995312, 0.42106, 0.575573, 0.6356, 0.996344, 0.0922824, 0.0503404, 0.861474, 0.971098, 0.531618, 0.278897, 0.694201, 0.739111, 0.417865, 0.347274, 0.0560049, 0.776491, 0.29693, 0.352665, 0.851979, 0.462535, 0.925921, 0.635194, 0.749285, 0.474837, 0.0422809, 0.250704, 0.0542927, 0.960633, 0.504724, 0.71587, 0.512241, 0.579656, 0.274177, 0.59571, 0.0450952, 0.325116, 0.133309, 0.00706547, 0.0769446, 0.133744, 0.727747, 0.636273, 0.515981, 0.3346, 0.969261, 0.751505, 0.0726293, 0.090784, 0.992285, 0.297629, 0.156763, 0.11701, 0.798585, 0.153628, 0.876391, 0.60225, 0.0345976, 0.867972, 0.604693, 0.7169, 0.980062, 0.56994, 0.652737, 0.492232, 0.216526, 0.134844, 0.328194, 0.349324, 0.652535, 0.0983934, 0.267568, 0.476328, 0.940637, 0.618916, 0.645229, 0.564712, 0.361145, 0.719035, 0.7945, 0.35482, 0.832579, 0.395652, 0.961265, 0.444648, 0.569746, 0.842745, 0.608784, 0.506809, 0.333537, 0.789048, 0.228185, 0.0515458, 0.98826, 0.0079848, 0.912117, 0.650609, 0.193825, 0.409119, 0.290398, 0.529025, 0.485192, 0.665535, 0.513694, 0.305503, 0.431641, 0.155585, 0.349066, 0.194616, 0.0609608, 0.7737, 0.365058, 0.947661, 0.113823, 0.485191, 0.270988, 0.340072, 0.599013, 0.0691046, 0.0280304, 0.470698, 0.217867, 0.27945, 0.627204, 0.417909, 0.642555, 0.920911, 0.216709, 0.704156, 0.662401, 0.179275, 0.0822332, 0.169142, 0.382683, 0.0331443, 0.847433, 0.262524, 0.856625, 0.98401, 0.342673, 0.0682913, 0.0991218, 0.597256, 0.713984, 0.0756392, 0.156673, 0.741148, 0.529208, 0.550065, 0.956161, 0.209575, 0.621153, 0.0550376, 0.722213, 0.34307, 0.887517, 0.961557, 0.286025, 0.0360352, 0.963817, 0.57112, 0.792167, 0.874987, 0.936579, 0.458739, 0.221819, 0.0484225, 0.665387, 0.220781, 0.578058, 0.385384, 0.883892, 0.248328, 0.196923, 0.763805, 0.834794, 0.760918, 0.317117, 0.980345, 0.901547, 0.502061, 0.196929, 0.0528333, 0.189622, 0.67401, 0.194932, 0.819875, 0.626089, 0.99374, 0.724266, 0.00707075, 0.0384145, 0.377771, 0.958005, 0.739583, 0.0563767, 0.202651, 0.367577, 0.698997, 0.0820815, 0.882301, 0.616544, 0.0582296, 0.949367, 0.491598, 0.511587, 0.74732, 0.947975, 0.761361, 0.383735, 0.525491, 0.996303, 0.950501, 0.0831566, 0.885541, 0.450013, 0.010177, 0.825059, 0.258228, 0.93181, 0.228712, 0.259199, 0.233653, 0.820137, 0.929304, 0.123893, 0.989354, 0.592356, 0.3745, 0.71626, 0.765341, 0.395999, 0.840106, 0.115831, 0.320817, 0.270444, 0.182095, 0.112124, 0.0783929, 0.499542, 0.30114, 0.596813, 0.468669, 0.889689, 0.478028, 0.543028, 0.272562, 0.595185, 0.667194, 0.60921, 0.29821, 0.26297, 0.66534, 0.865841, 0.12424, 0.908586, 0.934559, 0.156946, 0.96181, 0.342982, 0.0481719, 0.542999, 0.427977, 0.761714, 0.837432, 0.0189111, 0.334859, 0.763214, 0.959384, 0.00574281, 0.445965, 0.535224, 0.635295, 0.197553, 0.636564, 0.539617, 0.666011, 0.234288, 0.355765, 0.053203, 0.709216, 0.0888354, 0.475347, 0.464947, 0.202297, 0.797056, 0.392016, 0.936453, 0.308735, 0.502893, 0.675965, 0.940242, 0.757746, 0.555337, 0.534555, 0.0817575, 0.403504, 0.755465, 0.315231, 0.862395, 0.842581, 0.316213, 0.149369, 0.296974, 0.036262, 0.807712, 0.482911, 0.28549, 0.335535, 0.0817643, 0.636789, 0.404951, 0.469242, 0.308286, 0.25039, 0.237834, 0.586363, 0.133399, 0.886036, 0.776181, 0.465954, 0.0859602, 0.113114, 0.52154, 0.580957, 0.949964, 0.621371, 0.868865, 0.385465, 0.491927, 0.768945, 0.389671, 0.868688, 0.0854205, 0.549694, 0.139308, 0.424174, 0.0325483, 0.802686, 0.508515, 0.697088, 0.603539, 0.728966, 0.937695, 0.288556, 0.686755, 0.56678, 0.577736, 0.9149, 0.145155, 0.809056, 0.479846, 0.792542, 0.235605, 0.289845, 0.339546, 0.948304, 0.374576, 0.312527, 0.0241412, 0.0254658, 0.102198, 0.99887, 0.755931, 0.771815, 0.221894, 0.650446, 0.522338, 0.647594, 0.343701, 0.35394, 0.145472, 0.780817, 0.0928448, 0.920876, 0.0360954, 0.19768, 0.158536, 0.58765, 0.0930221, 0.478469, 0.80627, 0.61792, 0.367957, 0.749602, 0.54134, 0.431034, 0.0941319, 0.153414, 0.435797, 0.411997, 0.393457, 0.408773, 0.253482, 0.136788, 0.479941, 0.698831, 0.440438, 0.267989, 0.324515, 0.345774, 0.647049, 0.474003, 0.432191, 0.668224, 0.314087, 0.903054, 0.920958, 0.76844, 0.13128, 0.392562, 0.620915, 0.252017, 0.880444, 0.556165, 0.011176, 0.899954, 0.0411076, 0.0495049, 0.250841, 0.404541, 0.358772, 0.0987615, 0.718135, 0.475056, 0.344506, 0.933108, 0.610929, 0.0210743, 0.761055, 0.583257, 0.285506, 0.963131, 0.714188, 0.650956, 0.917127, 0.718439, 0.487927, 0.494666, 0.502551, 0.319778, 0.818145, 0.0373288, 0.500038, 0.643328, 0.343029, 0.0312736, 0.439563, 0.516751, 0.418804, 0.404099, 0.799441, 0.383659, 0.497928, 0.0884743, 0.834432, 0.448695, 0.174522, 0.969026, 0.0567128, 0.811041, 0.436852, 0.669133, 0.956817, 0.934233, 0.999377, 0.46376, 0.904531, 0.990048, 0.844536, 0.344221, 0.327283, 0.672179, 0.447807, 0.629699, 0.468759, 0.552807, 0.439826, 0.27493, 0.71894, 0.434387, 0.745172, 0.958573, 0.281854, 0.730554, 0.601443, 0.591778, 0.784222, 0.380494, 0.776479, 0.745254, 0.282708, 0.171382, 0.0901646, 0.580693, 0.0139402, 0.225617, 0.351103, 0.132169, 0.420177, 0.346412, 0.169704, 0.348524, 0.747227, 0.216859, 0.496962, 0.795404, 0.645949, 0.362256, 0.941042, 0.965377, 0.857509, 0.0768885, 0.00932251, 0.683445, 0.511655, 0.00601335, 0.120911, 0.161513, 0.211679, 0.787344, 0.874349, 0.717985, 0.502714, 0.166127, 0.265323, 0.702488, 0.680595, 0.834315, 0.033373, 0.945105, 0.688605, 0.733733, 0.799686, 0.110531, 0.957362, 0.872062, 0.537134, 0.594211, 0.543484, 0.559464, 0.664876, 0.121834, 0.208257, 0.623329, 0.231384, 0.351651, 0.28177, 0.677623, 0.159049, 0.0789706, 0.649168, 0.708874, 0.429019, 0.806167, 0.322563, 0.856619, 0.0595638, 0.955667, 0.877296, 0.63245, 0.554974, 0.997797, 0.655268, 0.0881875, 0.774129, 0.228393, 0.280366, 0.840425, 0.288769, 0.137836, 0.822214, 0.812979, 0.268801, 0.431051, 0.743164, 0.449795, 0.0280965, 0.813509, 0.753704, 0.752745, 0.40483, 0.209138, 0.136398, 0.547444, 0.952821, 0.145824, 0.921534, 0.675708, 0.0968346, 0.429042, 0.90069, 0.880692, 0.660973, 0.762841, 0.043475, 0.548615, 0.351768, 0.487706, 0.837525, 0.858942, 0.426968, 0.693482, 0.834067, 0.178751, 0.916725, 0.312368, 0.952488, 0.336711, 0.571418, 0.886898, 0.640941, 0.1806, 0.55419, 0.590488, 0.83163, 0.14007, 0.403142, 0.887247, 0.342949, 0.88435, 0.171615, 0.209037, 0.268949, 0.0488915, 0.431707, 0.229817, 0.641149, 0.00553621, 0.0360574, 0.35453, 0.904074, 0.495435, 0.780787, 0.196379, 0.810491, 0.837112, 0.189245, 0.359259, 0.275542, 0.299573, 0.220301, 0.866422, 0.507245, 0.487767, 0.243448, 0.698851, 0.588256, 0.0844826, 0.907929, 0.819771, 0.342594, 0.215029, 0.41934, 0.00178745, 0.273484, 0.364893, 0.236331, 0.574799, 0.557957, 0.481694, 0.426242, 0.406354, 0.286845, 0.293724, 0.178113, 0.00349964, 0.932298, 0.545826, 0.777305, 0.10292, 0.167152, 0.30941, 0.785231, 0.0760898, 0.625054, 0.589052, 0.847903, 0.111181, 0.177771, 0.500524, 0.842363, 0.114009, 0.612185, 0.878975, 0.955185, 0.399446, 0.0946839, 0.540699, 0.915803, 0.442323, 0.56911, 0.55533, 0.401268, 0.284556, 0.101289, 0.983081, 0.835117, 0.606981, 0.372049, 0.496544, 0.226489, 0.279214, 0.914644, 0.937939, 0.281129, 0.389272, 0.968187, 0.635215, 0.487692, 0.909698, 0.844426, 0.1477, 0.226635, 0.521511, 0.370946, 0.150209, 0.729102, 0.367415, 0.761533, 0.615057, 0.692156, 0.667996, 0.0963341, 0.914547, 0.691541, 0.151564, 0.945305, 0.0662834, 0.366292, 0.551977, 0.291646, 0.679143, 0.851856, 0.791583, 0.503778, 0.023168, 0.412157, 0.247637, 0.912395, 0.00945087, 0.758841, 0.376842, 0.467647, 0.404122, 0.276024, 0.202679, 0.829769, 0.0542804, 0.265896, 0.631932, 0.761238, 0.277217, 0.316484, 0.497037, 0.117953, 0.268658, 0.438275, 0.908489, 0.463122, 0.633023, 0.00544212, 0.53295, 0.127467, 0.784857, 0.871983, 0.454343, 0.13975, 0.279066, 0.334803, 0.446106, 0.897049, 0.351662, 0.51381, 0.321255, 0.350486, 0.101246, 0.54997, 0.183608, 0.305128, 0.233735, 0.822038, 0.771658, 0.200972, 0.40196, 0.562487, 0.108847, 0.718786, 0.0755256, 0.961698, 0.585156, 0.970544, 0.361813, 0.987947, 0.344862, 0.964177, 0.014727, 0.0226188, 0.807721, 0.137678, 0.148848, 0.662738, 0.741941, 0.190003, 0.997506, 0.717802, 0.00164524, 0.200278, 0.512166, 0.930637, 0.228209, 0.220154, 0.441296, 0.425959, 0.693154, 0.421103, 0.106279, 0.521333, 0.347792, 0.023648, 0.67607, 0.418503, 0.139156, 0.650666, 0.168607, 0.539383, 0.793094, 0.177687, 0.295956, 0.926763, 0.126443, 0.478607, 0.199744, 0.936475, 0.710082, 0.088558, 0.223505, 0.853099, 0.271153, 0.934545, 0.604885, 0.523008, 0.430345, 0.632033, 0.676408, 0.492389, 0.494581, 0.315705, 0.407379, 0.417697, 0.675943, 0.168078, 0.382832, 0.379915, 0.269397, 0.761822, 0.981925, 0.146796, 0.799504, 0.381602, 0.705672, 0.422183, 0.210244, 0.0850634, 0.582337, 0.934588, 0.466793, 0.6366, 0.826037, 0.574077, 0.553228, 0.924906, 0.922825, 0.66238, 0.162232, 0.224305, 0.0519152, 0.855643, 0.366552, 0.152796, 0.00665957, 0.915834, 0.826795, 0.978109, 0.69574, 0.190423, 0.850852, 0.192516, 0.0265149, 0.523871, 0.855658, 0.277339, 0.476368, 0.0804248, 0.892567, 0.533843, 0.422648, 0.909866, 0.12791, 0.597845, 0.625991, 0.927966, 0.319578, 0.139636, 0.392265, 0.104043, 0.931437, 0.0622179, 0.616482, 0.184848, 0.301881, 0.633924, 0.848496, 0.011613, 0.558658, 0.742868, 0.176664, 0.498611, 0.744262, 0.0285374, 0.418136, 0.825301, 0.42586, 0.974819, 0.719124, 0.433044, 0.870553, 0.627664, 0.854485, 0.518249, 0.590694, 0.704523, 0.450934, 0.0700942, 0.0874604, 0.337147, 0.492185, 0.8885, 0.621986, 0.168248, 0.837084, 0.944791, 0.719689, 0.927206, 0.844932, 0.989313, 0.724708, 0.653446, 0.365233, 0.0451572, 0.432647, 0.165102, 0.795004, 0.126218, 0.239627, 0.0155477, 0.935287, 0.989966, 0.30067, 0.337323, 0.612089, 0.935274, 0.847273, 0.291589, 0.726199, 0.768206, 0.872156, 0.87183, 0.354196, 0.634677, 0.445589, 0.397467, 0.869365, 0.347935, 0.638584, 0.508064, 0.0356273, 0.640255, 0.195039, 0.121921, 0.170327, 0.236788, 0.525543, 0.380477, 0.640126, 0.966145, 0.0275385, 0.483208, 0.380622, 0.621541, 0.642745, 0.557541, 0.822002, 0.303046, 0.416204, 0.779118, 0.387479, 0.96399, 0.464379, 0.864708, 0.614493, 0.801388, 0.146563, 0.713396, 0.0371329, 0.746244, 0.641826, 0.108604, 0.364927, 0.363469, 0.0106725, 0.823084, 0.851167, 0.273869, 0.227434, 0.435503, 0.0165272, 0.630164, 0.896852, 0.773881, 0.0413545, 0.558784, 0.483894, 0.774959, 0.0977034, 0.135825, 0.728994, 0.00489014, 0.599283, 0.261376, 0.341713, 0.687273, 0.203976, 0.152216, 0.63596, 0.821107, 0.599782, 0.0429922, 0.175607, 0.691483, 0.571165, 0.123619, 0.338721, 0.41125, 0.827582, 0.259272, 0.954404, 0.711268, 0.158892, 0.723477, 0.26951, 0.709728, 0.938119, 0.832301, 0.737552, 0.519661, 0.416426, 0.882457, 0.453152, 0.115849, 0.271428, 0.0334407, 0.936773, 0.508819, 0.555718, 0.377546, 0.517199, 0.864394, 0.0810964, 0.797491, 0.349751, 0.662266, 0.46162, 0.619854, 0.354706, 0.628023, 0.671643, 0.000773542, 0.846307, 0.542696, 0.592178, 0.0777423, 0.634771, 0.682495, 0.261238, 0.508481, 0.984641, 0.959791, 0.741369, 0.32138, 0.535256, 0.847494, 0.86677, 0.8867, 0.432765, 0.760854, 0.158056, 0.991061, 0.737626, 0.526399, 0.923892, 0.541165, 0.65592, 0.179625, 0.726484, 0.498102, 0.733978, 0.228333, 0.193556, 0.189515, 0.240356, 0.232233, 0.507678, 0.345721, 0.324308, 0.790667, 0.946143, 0.993343, 0.137192, 0.0727121, 0.716761, 0.691615, 0.478477, 0.394535, 0.115059, 0.474343, 0.762372, 0.0948848, 0.196792, 0.492499, 0.29865, 0.455808, 0.484853, 0.835931, 0.895271, 0.305977, 0.382993, 0.87606, 0.602305, 0.775395, 0.127797, 0.927046, 0.506469, 0.495949, 0.40417, 0.379146, 0.423219, 0.0446891, 0.398602, 0.689065, 0.847912, 0.550092, 0.89121, 0.00920063, 0.576135, 0.0883344, 0.592445, 0.956837, 0.828345, 0.174842, 0.807681, 0.429489, 0.505379, 0.807906, 0.536595, 0.478865, 0.0814109, 0.490502, 0.121416, 0.800612, 0.391844, 0.954796, 0.231231, 0.0557827, 0.887462, 0.998108, 0.25508, 0.83718, 0.405546, 0.906978, 0.235831, 0.574562, 0.2957, 0.188627, 0.185206, 0.819698, 0.693555, 0.442004, 0.169963, 0.426534, 0.425901, 0.543655, 0.969529, 0.933518, 0.145669, 0.759227, 0.915676, 0.273991, 0.729098, 0.31145, 0.0192084, 0.511204, 0.77779, 0.25558, 0.464314, 0.273419, 0.727192, 0.134382, 0.976244, 0.775359, 0.518023, 0.189192, 0.803747, 0.211738, 0.600633, 0.851521, 0.584827, 0.44586, 0.901889, 0.310346, 0.12561, 0.979792, 0.540059, 0.307323, 0.359533, 0.790244, 0.672675, 0.0738207, 0.945995, 0.354888, 0.714272, 0.614953, 0.580057, 0.0454896, 0.773029, 0.276525, 0.400251, 0.777706, 0.216194, 0.731417, 0.391679, 0.900286, 0.541262, 0.0339563, 0.392093, 0.702863, 0.434141, 0.942108, 0.110307, 0.927712, 0.777655, 0.119819, 0.400947, 0.535523, 0.279621, 0.994394, 0.496025, 0.45035, 0.737689, 0.304766, 0.789883, 0.691568, 0.0935304, 0.915671, 0.72731, 0.729875, 0.649525, 0.141318, 0.264691, 0.311853, 0.843073, 0.0702589, 0.689202, 0.469382, 0.0296724, 0.786056, 0.983078, 0.0617036, 0.888933, 0.608236, 0.338423, 0.862757, 0.259319, 0.711308, 0.48213, 0.483573, 0.73203, 0.599131, 0.427597, 0.449767, 0.662143, 0.142532, 0.74296, 0.355283, 0.5316, 0.937622, 0.38181, 0.601194, 0.93952, 0.299073, 0.0300616, 0.636648, 0.564301, 0.0981288, 0.830984, 0.0247317, 0.70846, 0.443461, 0.168187, 0.751938, 0.0515943, 0.191639, 0.940248, 0.46713, 0.00027386, 0.688898, 0.138161, 0.815352, 0.645526, 0.728443, 0.774305, 0.284412, 0.112302, 0.824175, 0.709396, 0.473611, 0.546887, 0.133892, 0.615861, 0.408212, 0.343921, 0.503693, 0.823462, 0.00885317, 0.734236, 0.777598, 0.708333, 0.4036, 0.253607, 0.435411, 0.100474, 0.110289, 0.217749, 0.515388, 0.633986, 0.024931, 0.637958, 0.735677, 0.934728, 0.493779, 0.16506, 0.453233, 0.587303, 0.14519, 0.482511, 0.474612, 0.402911, 0.471623, 0.00747627, 0.0555732, 0.977537, 0.412581, 0.394904, 0.80255, 0.977978, 0.0657417, 0.644969, 0.842881, 0.30897, 0.263598, 0.626181, 0.459894, 0.621051, 0.0663734, 0.00782845, 0.634455, 0.798101, 0.760185, 0.452868, 0.627108, 0.755537, 0.630484, 0.575739, 0.637636, 0.916605, 0.285008, 0.0181095, 0.718673, 0.279337, 0.520797, 0.326475, 0.0360228, 0.0481964, 0.0094155, 0.624682, 0.978486, 0.300725, 0.560873, 0.857252, 0.898491, 0.0261796, 0.935442, 0.00226439, 0.369742, 0.901717, 0.199691, 0.49845, 0.724823, 0.539641, 0.541844, 0.436235, 0.217045, 0.480357, 0.505569, 0.8483, 0.966082, 0.244648, 0.378249, 0.188199, 0.795171, 0.945042, 0.190996, 0.607762, 0.107782, 0.77143, 0.564195, 0.895802, 0.281813, 0.214475, 0.424026, 0.948014, 0.630798, 0.936923, 0.884403, 0.409745, 0.585478, 0.793767, 0.476362, 0.379856, 0.717676, 0.412765, 0.276357, 0.990492, 0.272063, 0.178426, 0.695097, 0.336698, 0.993225, 0.988549, 0.557652, 0.65713, 0.293518, 0.208687, 0.172545, 0.96807, 0.934269, 0.230664, 0.896686, 0.314386, 0.527961, 0.462698, 0.797798, 0.151281, 0.638963, 0.295506, 0.349582, 0.883782, 0.672516, 0.621829, 0.285226, 0.759997, 0.757289, 0.543576, 0.0625032, 0.850267, 0.557823, 0.772413, 0.138459, 0.373712, 0.480045, 0.030689, 0.641374, 0.782408, 0.168057, 0.360421, 0.199623, 0.115377, 0.813596, 0.678358, 0.342444, 0.26582, 0.00591525, 0.283163, 0.407682, 0.785782, 0.0977254, 0.160728, 0.762813, 0.573479, 0.898984, 0.0405639, 0.420568, 0.275309, 0.623229, 0.341443, 0.765046, 0.864441, 0.27867, 0.0692433, 0.062564, 0.649539, 0.422946, 0.851217, 0.947537, 0.350746, 0.673897, 0.720034, 0.00890734, 0.963641, 0.852696, 0.550347, 0.0843111, 0.258905, 0.0346203, 0.0211018, 0.717017, 0.457505, 0.54584, 0.483439, 0.176523, 0.464043, 0.408288, 0.221654, 0.997748, 0.920986, 0.234864, 0.784818, 0.786941, 0.382804, 0.0270011, 0.241091, 0.106924, 0.40364, 0.447491, 0.366943, 0.796474, 0.186059, 0.503018, 0.735243, 0.903425, 0.975389, 0.678276, 0.495448, 0.604736, 0.197145, 0.961042, 0.647923, 0.686651, 0.0193707, 0.452604, 0.327127, 0.91481, 0.903362, 0.53074, 0.854814, 0.581991, 0.317361, 0.229803, 0.48692, 0.63633, 0.987766, 0.714006, 0.230898, 0.650067, 0.547455, 0.541696, 0.0752586, 0.713999, 0.245399, 0.231803, 0.582825, 0.710767, 0.593871, 0.131555, 0.900225, 0.519546, 0.485698, 0.805788, 0.956696, 0.109453, 0.633426, 0.0845869, 0.178138, 0.217805, 0.507283, 0.688616, 0.559781, 0.134245, 0.854137, 0.854356, 0.683975, 0.685215, 0.370101, 0.692283, 0.692915, 0.857771, 0.199484, 0.308744, 0.539065, 0.769612, 0.0965434, 0.412466, 0.584648, 0.56389, 0.902638, 0.255939, 0.599727, 0.72638, 0.805014, 0.733429, 0.0323149, 0.357784, 0.859215, 0.841399, 0.0476339, 0.354678, 0.373714, 0.268403, 0.633773, 0.643707, 0.431396, 0.356627, 0.319686, 0.884927, 0.43825, 0.123213, 0.917867, 0.887923, 0.476999, 0.320888, 0.850616, 0.460518, 0.984096, 0.708742, 0.602617, 0.242342, 0.0822375, 0.769586, 0.859953, 0.986874, 0.271621, 0.381774, 0.580256, 0.806828, 0.653448, 0.175783, 0.720684, 0.604432, 0.810283, 0.82537, 0.777029, 0.190185, 0.881346, 0.123456, 0.4169, 0.312984, 0.71109, 0.379802, 0.702901, 0.91573, 0.138463, 0.893744, 0.904974, 0.148429, 0.868553, 0.021413, 0.325659, 0.321182, 0.458394, 0.9185, 0.657111, 0.391165, 0.423989, 0.692714, 0.204703, 0.548315, 0.337581, 0.597745, 0.118339, 0.58786, 0.27224, 0.377868, 0.518281, 0.669602, 0.114614, 0.453017, 0.65691, 0.260958, 0.429086, 0.919754, 0.632038, 0.464322, 0.427757, 0.390527, 0.698182, 0.529399, 0.535967, 0.860006, 0.86582, 0.87482, 0.414901, 0.828315, 0.790706, 0.584447, 0.137916, 0.0666782, 0.626311, 0.339679, 0.806634, 0.664283, 0.893367, 0.192582, 0.0922133, 0.0631515, 0.975556, 0.796498, 0.135178, 0.537959, 0.78077, 0.663352, 0.0141877, 0.825989, 0.0777304, 0.948731, 0.420816, 0.811672, 0.666337, 0.142219, 0.604513, 0.880968, 0.369619, 0.720551, 0.950459, 0.203459, 0.254215, 0.187391, 0.872013, 0.540719, 0.835673, 0.760819, 0.801522, 0.537615, 0.469476, 0.200005, 0.383686, 0.903821, 0.719678, 0.643503, 0.742222, 0.660802, 0.622005, 0.115279, 0.80868, 0.410083, 0.602116, 0.196751, 0.695222, 0.623775, 0.424857, 0.0827443, 0.302176, 0.818945, 0.54384, 0.937174, 0.66109, 0.218779, 0.231331, 0.745365, 0.698025, 0.99938, 0.836967, 0.741806, 0.577539, 0.34268, 0.863178, 0.116269, 0.904559, 0.155217, 0.703401, 0.170877, 0.254972, 0.819891, 0.728599, 0.7314, 0.0494436, 0.395706, 0.750079, 0.510133, 0.131256, 0.706587, 0.716959, 0.672644, 0.572409, 0.134055, 0.8016, 0.948409, 0.685077, 0.883509, 0.42391, 0.0802641, 0.396451, 0.680006, 0.796024, 0.737545, 0.779766, 0.874185, 0.185475, 0.224181, 0.726417, 0.262177, 0.983726, 0.998792, 0.601068, 0.0632906, 0.266559, 0.994812, 0.368607, 0.338329, 0.857998, 0.394432, 0.00395892, 0.403091, 0.975504, 0.23115, 0.882397, 0.817858, 0.40079, 0.304486, 0.19727, 0.0403942, 0.84796, 0.121088, 0.0914703, 0.970986, 0.187894, 0.260465, 0.0981842, 0.129235, 0.0053786, 0.202048, 0.431041, 0.182747, 0.118168, 0.327375, 0.134632, 0.0938664, 0.541778, 0.893052, 0.677389, 0.60834, 0.104955, 0.455115, 0.462641, 0.21083, 0.554428, 0.513763, 0.414927, 0.152386, 0.137165, 0.304633, 0.785922, 0.0616525, 0.872498, 0.526546, 0.243628, 0.59958, 0.763127, 0.392787, 0.239071, 0.497765, 0.938576, 0.758766, 0.105476, 0.583509, 0.107149, 0.072246, 0.0686736, 0.491876, 0.222793, 0.242647, 0.392899, 0.134979, 0.0411305, 0.521578, 0.297438, 0.809898, 0.0138163, 0.470257, 0.904504, 0.0581343, 0.797919, 0.116889, 0.775738, 0.835381, 0.353088, 0.0392369, 0.0841973, 0.620153, 0.839601, 0.659522, 0.698976, 0.210228, 0.0302424, 0.397398, 0.800551, 0.427025, 0.15325, 0.0813214, 0.433884, 0.0652032, 0.804778, 0.296914, 0.0291595, 0.437946, 0.131204, 0.29828, 0.220672, 0.467927, 0.177905, 0.290324, 0.0388322, 0.542294, 0.776009, 0.824298, 0.735709, 0.153466, 0.400214, 0.708594, 0.453441, 0.594539, 0.692301, 0.488494, 0.45268, 0.854562, 0.415268, 0.613101, 0.717661, 0.668751, 0.835263, 0.500444, 0.293188, 0.446861, 0.261365, 0.618792, 0.839053, 0.147956, 0.556072, 0.757753, 0.455075, 0.869194, 0.273371, 0.8442, 0.0187834, 0.650478, 0.766219, 0.00604557, 0.799275, 0.480036, 0.342347, 0.804639, 0.109157, 0.700395, 0.144913, 0.0896981, 0.104342, 0.996452, 0.802804, 0.904757, 0.267159, 0.268582, 0.257929, 0.64107, 0.0970939, 0.139546, 0.79182, 0.587922, 0.820792, 0.710431, 0.813237, 0.237078, 0.844224, 0.844752, 0.775276, 0.279869, 0.527013, 0.00486709, 0.29619, 0.0297883, 0.596303, 0.617605, 0.795947, 0.97924, 0.77399, 0.800557, 0.621752, 0.24925, 0.00137245, 0.889115, 0.296036, 0.690818, 0.0984665, 0.733391, 0.993227, 0.00142601, 0.0876534, 0.626902, 0.783111, 0.391165, 0.348762, 0.0616425, 0.584172, 0.278297, 0.186677, 0.313632, 0.630907, 0.659842, 0.000195905, 0.0848633, 0.994714, 0.252779, 0.282139, 0.743638, 0.171873, 0.661953, 0.248161, 0.717851, 0.760843, 0.345918, 0.862501, 0.671703, 0.64076, 0.693063, 0.366835, 0.968806, 0.804512, 0.301244, 0.328024, 0.874884, 0.47607, 0.00138562, 0.956339, 0.654877, 0.213509, 0.301763, 0.66921, 0.327652, 0.0984915, 0.461783, 0.308599, 0.526057, 0.261795, 0.490774, 0.711595, 0.120919, 0.423112, 0.529085, 0.460559, 0.346745, 0.813399, 0.210967, 0.871596, 0.437, 0.0797882, 0.319964, 0.453486, 0.312109, 0.616004, 0.717271, 0.497556, 0.696008, 0.325173, 0.998081, 0.0344036, 0.470713, 0.595906, 0.503973, 0.768447, 0.0669863, 0.75852, 0.0691862, 0.904392, 0.526621, 0.454254, 0.282096, 0.61511, 0.520861, 0.929658, 0.316033, 0.122634, 0.778338, 0.781493, 0.699447, 0.374198, 0.300907, 0.908406, 0.420848, 0.292415, 0.365145, 0.260794, 0.827939, 0.0225802, 0.885312, 0.371748, 0.0942798, 0.163306, 0.345233, 0.584805, 0.00530463, 0.543839, 0.686881, 0.731238, 0.202015, 0.766038, 0.817129, 0.759973, 0.74491, 0.249627, 0.33974, 0.86768, 0.873101, 0.538603, 0.897788, 0.488417, 0.803839, 0.60539, 0.801472, 0.546895, 0.896886, 0.722128, 0.337904, 0.664771, 0.411652, 0.00687161, 0.162172, 0.883211, 0.82153, 0.814886, 0.45111, 0.0546196, 0.859811, 0.000270441, 0.793295, 0.873731, 0.942733, 0.186087, 0.70483, 0.963201, 0.600287, 0.455936, 0.540894, 0.988648, 0.849189, 0.708664, 0.0118315, 0.598502, 0.332059, 0.688875, 0.307857, 0.850157, 0.0282664, 0.142987, 0.630389, 0.627275, 0.247403, 0.324155, 0.990004, 0.982975, 0.0650682, 0.890491, 0.694133, 0.0698983, 0.00596018, 0.186113, 0.955229, 0.474459, 0.587411, 0.105645, 0.634679, 0.578154, 0.789058, 0.221689, 0.317176, 0.513465, 0.949536, 0.187694, 0.720225, 0.637694, 0.564973, 0.863555, 0.656051, 0.425104, 0.72279, 0.0150462, 0.769399, 0.995999, 0.383894, 0.884713, 0.82651, 0.133181, 0.343152, 0.432729, 0.379639, 0.797775, 0.577667, 0.993345, 0.715517, 0.0591047, 0.0951223, 0.291318, 0.567864, 0.611515, 0.326818, 0.0252071, 0.0706829, 0.550466, 0.229062, 0.368205, 0.0114132, 0.726769, 0.995834, 0.00206917, 0.361047, 0.229185, 0.704359, 0.708189, 0.763087, 0.418145, 0.166241, 0.467016, 0.199175, 0.749868, 0.230697, 0.919803, 0.173331, 0.703199, 0.238424, 0.36542, 0.733332, 0.865953, 0.406924, 0.376155, 0.504744, 0.324332, 0.795637, 0.876924, 0.150811, 0.284575, 0.606989, 0.668304, 0.773779, 0.400718, 0.461116, 0.0356158, 0.828637, 0.230266, 0.933551, 0.452046, 0.23424, 0.147727, 0.584319, 0.246715, 0.778469, 0.751298, 0.142385, 0.497668, 0.820541, 0.520754, 0.635979, 0.995609, 0.777778, 0.73501, 0.635293, 0.753446, 0.382544, 0.432099, 0.609674, 0.60688, 0.357035, 0.241933, 0.270505, 0.919522, 0.155695, 0.92069, 0.413791, 0.170884, 0.459599, 0.287268, 0.376801, 0.303515, 0.170855, 0.0423617, 0.842472, 0.495546, 0.404054, 0.0946646, 0.275245, 0.957405, 0.659572, 0.330991, 0.217615, 0.259105, 0.365855, 0.623508, 0.358096, 0.366259, 0.115222, 0.683045, 0.116525, 0.418933, 0.73935, 0.046771, 0.626346, 0.544816, 0.206997, 0.136698, 0.50891, 0.465636, 0.973117, 0.0879731, 0.496635, 0.0528215, 0.256656, 0.150501, 0.172589, 0.446358, 0.668215, 0.281295, 0.639564, 0.600982, 0.689498, 0.172988, 0.311158, 0.596166, 0.914397, 0.691011, 0.828275, 0.751661, 0.126823, 0.595763, 0.476016, 0.438493, 0.85836, 0.055756, 0.1724, 0.354587, 0.36832, 0.0914993, 0.370013, 0.65743, 0.313155, 0.369982, 0.760313, 0.830683, 0.453527, 0.085066, 0.0648175, 0.732424, 0.986999, 0.77105, 0.173702, 0.0774072, 0.787711, 0.479358, 0.0513305, 0.439819, 0.868344, 0.730487, 0.293238, 0.420022, 0.124757, 0.0971248, 0.740998, 0.257308, 0.354677, 0.752762, 0.368821, 0.825613, 0.237673, 0.650889, 0.779095, 0.680979, 0.954989, 0.477473, 0.29367, 0.709763, 0.449627, 0.312359, 0.236185, 0.0620183, 0.0817302, 0.675886, 0.727033, 0.803278, 0.919081, 0.153602, 0.185638, 0.059088, 0.635481, 0.681467, 0.955608, 0.584436, 0.267903, 0.972799, 0.970777, 0.668493, 0.0944233, 0.904109, 0.32312, 0.523612, 0.38511, 0.668045, 0.368678, 0.391273, 0.497355, 0.0173796, 0.171289, 0.111696, 0.894711, 0.456682, 0.11279, 0.0153473, 0.736969, 0.660566, 0.0133941, 0.419917, 0.526311, 0.7516, 0.899376, 0.842206, 0.652725, 0.504881, 0.937657, 0.105858, 0.898005, 0.181238, 0.511456, 0.573173, 0.51929, 0.648309, 0.20973, 0.354556, 0.375805, 0.188542, 0.0110647, 0.960757, 0.050705, 0.0815619, 0.782723, 0.314808, 0.40585, 0.0328103, 0.456401, 0.222684, 0.266882, 0.679273, 0.116498, 0.105427, 0.375314, 0.886496, 0.133358, 0.58684, 0.983258, 0.105889, 0.234651, 0.525368, 0.659181, 0.193151, 0.781094, 0.975721, 0.75392, 0.539964, 0.574357, 0.389485, 0.00738067, 0.949821, 0.276828, 0.0109401, 0.10862, 0.744617, 0.526253, 0.331845, 0.613306, 0.260269, 0.129338, 0.171237, 0.00535067, 0.252849, 0.115543, 0.656546, 0.380222, 0.669431, 0.696468, 0.0788784, 0.269542, 0.731211, 0.891437, 0.686094, 0.643402, 0.946833, 0.852984, 0.855147, 0.0741065, 0.735505, 0.628903, 0.164329, 0.828951, 0.93577, 0.416256, 0.720396, 0.820992, 0.68111, 0.675366, 0.635796, 0.0421593, 0.558648, 0.397164, 0.841473, 0.357881, 0.101455, 0.625198, 0.317364, 0.0309509, 0.949349, 0.429982, 0.740296, 0.83634, 0.431143, 0.551933, 0.669405, 0.989428, 0.520325, 0.0122792, 0.347439, 0.792887, 0.14999, 0.835497, 0.0626093, 0.780253, 0.353592, 0.0868309, 0.851044, 0.532502, 0.290523, 0.0931025, 0.0303709, 0.286026, 0.347305, 0.710572, 0.868018, 0.382781, 0.672354, 0.422583, 0.267142, 0.0534792, 0.626161, 0.709761, 0.146052, 0.0549357, 0.25044, 0.545147, 0.817305, 0.528971, 0.214889, 0.933382, 0.677984, 0.212322, 0.617944, 0.200769, 0.63663, 0.473708, 0.843618, 0.0158016, 0.789755, 0.369974, 0.129889, 0.6002, 0.0639386, 0.26817, 0.192894, 0.47349, 0.128915, 0.531, 0.836731, 0.00176826, 0.171285, 0.301016, 0.491037, 0.684083, 0.442135, 0.62612, 0.334639, 0.630786, 0.108427, 0.922433, 0.211707, 0.934806, 0.353681, 0.846479, 0.224087, 0.0387647, 0.912567, 0.352177, 0.639788, 0.85912, 0.580208, 0.209145, 0.648709, 0.780819, 0.276763, 0.570481, 0.92891, 0.360862, 0.313299, 0.9281, 0.641601, 0.531437, 0.611739, 0.348233, 0.328984, 0.460753, 0.786445, 0.561262, 0.586937, 0.914711, 0.295035, 0.522733, 0.178518, 0.193203, 0.067031, 0.0952899, 0.44979, 0.451621, 0.300487, 0.726786, 0.534888, 0.156079, 0.180306, 0.568849, 0.609314, 0.63499, 0.75209, 0.641635, 0.791956, 0.674595, 0.0351817, 0.683243, 0.10263, 0.903683, 0.7759, 0.886257, 0.625032, 0.827247, 0.297826, 0.00176633, 0.619953, 0.464783, 0.921148, 0.67926, 0.528511, 0.577298, 0.163977, 0.264389, 0.789901, 0.0141889, 0.532587, 0.236263, 0.129726, 0.605237, 0.583784, 0.0723834, 0.738629, 0.687056, 0.0506192, 0.2465, 0.958154, 0.0971148, 0.78452, 0.985721, 0.310138, 0.540363, 0.168563, 0.881159, 0.547955, 0.194954, 0.0955894, 0.879779, 0.438003, 0.672806, 0.924577, 0.224892, 0.670132, 0.480454, 0.354263, 0.67239, 0.0954662, 0.236402, 0.583413, 0.0585043, 0.477896, 0.603105, 0.0429229, 0.504042, 0.206812, 0.0616322, 0.835752, 0.66132, 0.624212, 0.531751, 0.681237, 0.557261, 0.779206, 0.521052, 0.0583492, 0.814716, 0.767002, 0.0346656, 0.957944, 0.145976, 0.446197, 0.393021, 0.871972, 0.520205, 0.468223, 0.263578, 0.810964, 0.319026, 0.642277, 0.270199, 0.225704, 0.897925, 0.197058, 0.336161, 0.657704, 0.0432936, 0.743068, 0.206791, 0.537499, 0.0734435, 0.674593, 0.559151, 0.416683, 0.810173, 0.652502, 0.00259192, 0.421945, 0.777675, 0.173665, 0.811577, 0.631349, 0.71241, 0.099652, 0.0575853, 0.196091, 0.769379, 0.833208, 0.286898, 0.0482026, 0.106219, 0.0961621, 0.631901, 0.221729, 0.546256, 0.226065, 0.538867, 0.780143, 0.690409, 0.547232, 0.373159, 0.495359, 0.878823, 0.53195, 0.929734, 0.433977, 0.717026, 0.97011, 0.45834, 0.63122, 0.676207, 0.457788, 0.491343, 0.299583, 0.326815, 0.733564, 0.820148, 0.727172, 0.755076, 0.625684, 0.564744, 0.759587, 0.101223, 0.90051, 0.265415, 0.687357, 0.898139, 0.485221, 0.729456, 0.869902, 0.198439, 0.209563, 0.339186, 0.323029, 0.0600406, 0.887052, 0.228774, 0.780437, 0.201377, 0.358911, 0.471789, 0.931232, 0.941895, 0.546953, 0.966439, 0.836993, 0.976292, 0.183496, 0.20134, 0.345574, 0.764903, 0.944351, 0.0855852, 0.276308, 0.917877, 0.207373, 0.0956428, 0.656021, 0.955109, 0.866709, 0.317181, 0.880536, 0.105305, 0.802864, 0.83936, 0.85476, 0.541733, 0.172791, 0.901183, 0.0787686, 0.17047, 0.695448, 0.628866, 0.310038, 0.980721, 0.519745, 0.314494, 0.838773, 0.817105, 0.956199, 0.497561, 0.440748, 0.866263, 0.130101, 0.585493, 0.64134, 0.545642, 0.543746, 0.634721, 0.692108, 0.104547, 0.48778, 0.525365, 0.222945, 0.0415997, 0.503657, 0.120902, 0.0969362, 0.627469, 0.779534, 0.44861, 0.350597, 0.345213, 0.683907, 0.679977, 0.840668, 0.790789, 0.893772, 0.51972, 0.844986, 0.474268, 0.886176, 0.676864, 0.435934, 0.848231, 0.532467, 0.648873, 0.968256, 0.61548, 0.79997, 0.589352, 0.759299, 0.0874378, 0.416241, 0.919548, 0.491485, 0.505018, 0.354504, 0.807806, 0.255302, 0.175807, 0.537194, 0.113588, 0.210534, 0.937963, 0.0289638, 0.649871, 0.0415402, 0.985796, 0.408788, 0.868951, 0.368989, 0.249701, 0.386199, 0.505068, 0.766356, 0.121093, 0.0671078, 0.253398, 0.69509, 0.905225, 0.17466, 0.101305, 0.239099, 0.413984, 0.283976, 0.22179, 0.416776, 0.639288, 0.0832629, 0.935949, 0.242455, 0.307911, 0.942863, 0.517647, 0.511876, 0.980054, 0.105804, 0.294665, 0.375717, 0.299203, 0.0041073, 0.692539, 0.980715, 0.289277, 0.998179, 0.249108, 0.175353, 0.642178, 0.413443, 0.818611, 0.360028, 0.07985, 0.348019, 0.288372, 0.934103, 0.493211, 0.161424, 0.58625, 0.101337, 0.248807, 0.744097, 0.485165, 0.407927, 0.502129, 0.254136, 0.478751, 0.42083, 0.248873, 0.424183, 0.77324, 0.215235, 0.953848, 0.815983, 0.158094, 0.391452, 0.911929, 0.646365, 0.359223, 0.680833, 0.785218, 0.355855, 0.892665, 0.340406, 0.520206, 0.443302, 0.71346, 0.263724, 0.994689, 0.940092, 0.937445, 0.427203, 0.086859, 0.916273, 0.886754, 0.376372, 0.590542, 0.703157, 0.644814, 0.0973851, 0.764644, 0.766873, 0.78788, 0.501908, 0.915237, 0.325129, 0.805438, 0.677256, 0.994908, 0.56436, 0.362835, 0.565735, 0.429897, 0.875547, 0.504688, 0.244607, 0.830024, 0.483786, 0.777301, 0.496426, 0.631197, 0.9522, 0.158597, 0.672437, 0.600779, 0.147453, 0.691156, 0.938142, 0.881237, 0.842964, 0.382955, 0.171285, 0.936033, 0.72643, 0.382905, 0.698039, 0.926544, 0.439297, 0.0560052, 0.279561, 0.160687, 0.459306, 0.321321, 0.73143, 0.713356, 0.898014, 0.300067, 0.327653, 0.921897, 0.18009, 0.153996, 0.222553, 0.235365, 0.496638, 0.845838, 0.484972, 0.574097, 0.278898, 0.280513, 0.639917, 0.00846011, 0.576826, 0.514818, 0.905084, 0.194731, 0.995362, 0.651051, 0.0309386, 0.260537, 0.969857, 0.281356, 0.676183, 0.902037, 0.152027, 0.0789176, 0.0313313, 0.276369, 0.528068, 0.240229, 0.96577, 0.466625, 0.809421, 0.716923, 0.496516, 0.928267, 0.466881, 0.314971, 0.701822, 0.877596, 0.975407, 0.259825, 0.346589, 0.518496, 0.464989, 0.631272, 0.999335, 0.85388, 0.106687, 0.544377, 0.496506, 0.0495288, 0.557982, 0.659796, 0.714556, 0.861876, 0.53801, 0.341512, 0.977187, 0.774364, 0.0222033, 0.682623, 0.213629, 0.915206, 0.856457, 0.829606, 0.495821, 0.440149, 0.134, 0.91534, 0.127665, 0.135935, 0.796209, 0.947672, 0.606545, 0.95812, 0.805233, 0.522448, 0.281149, 0.784618, 0.528592, 0.231617, 0.344436, 0.623061, 0.25302, 0.386911, 0.370523, 0.630385, 0.700022, 0.727151, 0.534839, 0.133714, 0.421592, 0.140723, 0.070464, 0.775013, 0.153538, 0.829366, 0.459244, 0.828389, 0.547179, 0.950638, 0.71957, 0.508546, 0.873755, 0.11234, 0.845236, 0.801012, 0.347623, 0.937428, 0.0476699, 0.246573, 0.154953, 0.838394, 0.398271, 0.717012, 0.00336201, 0.666849, 0.942137, 0.503052, 0.923131, 0.172334, 0.0475491, 0.967214, 0.542301, 0.699006, 0.449127, 0.322264, 0.292825, 0.115944, 0.785234, 0.0267876, 0.0219151, 0.0816941, 0.429375, 0.291332, 0.316293, 0.381101, 0.637254, 0.0153958, 0.157349, 0.464019, 0.4051, 0.43946, 0.806448, 0.526227, 0.17687, 0.750141, 0.659381, 0.995801, 0.582237, 0.481447, 0.0463786, 0.985857, 0.44112, 0.85009, 0.872144, 0.958045, 0.0223657, 0.373458, 0.132445, 0.609049, 0.198428, 0.00217104, 0.12125, 0.71728, 0.909938, 0.867929, 0.0668491, 0.148454, 0.266331, 0.267368, 0.565304, 0.238869, 0.560016, 0.697578, 0.163684, 0.956766, 0.985476, 0.865582, 0.457229, 0.824121, 0.716539, 0.535521, 0.190561, 0.532445, 0.440451, 0.196858, 0.568288, 0.697552, 0.0656491, 0.238439, 0.348217, 0.508543, 0.0735468, 0.91486, 0.388206, 0.196435, 0.635512, 0.730833, 0.584855, 0.536759, 0.630322, 0.0524932, 0.583308, 0.65385, 0.183771, 0.847247, 0.274343, 0.687695, 0.543999, 0.462012, 0.127895, 0.541794, 0.773117, 0.111856, 0.330496, 0.0557353, 0.108308, 0.933698, 0.422001, 0.062609, 0.840392, 0.174242, 0.763923, 0.238557, 0.990698, 0.5489, 0.814017, 0.712998, 0.348819, 0.92057, 0.77589, 0.405501, 0.987185, 0.586148, 0.0340775, 0.874879, 0.528434, 0.463603, 0.174784, 0.466188, 0.560802, 0.682338, 0.818371, 0.833119, 0.70543, 0.403955, 0.309361, 0.841809, 0.0837514, 0.0658028, 0.635184, 0.478617, 0.819805, 0.241208, 0.402354, 0.371352, 0.574236, 0.879457, 0.694758, 0.0255712, 0.217473, 0.030704, 0.502755, 0.590585, 0.713211, 0.587852, 0.765876, 0.919681, 0.548157, 0.660895, 0.900054, 0.712622, 0.283203, 0.495466, 0.11754, 0.139739, 0.902674, 0.465694, 0.719928, 0.514653, 0.820026, 0.113656, 0.188105, 0.961152, 0.5188, 0.130029, 0.0159896, 0.827994, 0.605139, 0.934137, 0.835487, 0.436506, 0.181797, 0.398376, 0.365892, 0.24449, 0.563175, 0.768978, 0.218127, 0.588646, 0.924228, 0.298714, 0.553758, 0.283015, 0.785156, 0.645116, 0.193191, 0.602467, 0.0834046, 0.845722, 0.162275, 0.700826, 0.734836, 0.364575, 0.529733, 0.166439, 0.125427, 0.333995, 0.169423, 0.664584, 0.197292, 0.0436679, 0.320572, 0.655961, 0.720951, 0.51083, 0.22972, 0.715727, 0.638601, 0.144037, 0.937777, 0.927911, 0.123267, 0.929121, 0.0972168, 0.725653, 0.323356, 0.751896, 0.198276, 0.158348, 0.868324, 0.131178, 0.899521, 0.198024, 0.431845, 0.994101, 0.891005, 0.85, 0.839544, 0.544451, 0.176621, 0.601967, 0.0216223, 0.537717, 0.290386, 0.633253, 0.845378, 0.0437701, 0.993162, 0.0854528, 0.851031, 0.386806, 0.798763, 0.0330196, 0.732928, 0.309405, 0.959024, 0.0200453, 0.506768, 0.891905, 0.229395, 0.644895, 0.220381, 0.819345, 0.844336, 0.827662, 0.75855, 0.258202, 0.705638, 0.0214844, 0.194284, 0.650836, 0.551501, 0.109274, 0.99566, 0.436286, 0.245548, 0.545725, 0.556864, 0.0177391, 0.433361, 0.0733969, 0.318562, 0.734191, 0.541346, 0.584533, 0.654032, 0.480747, 0.0396135, 0.440329, 0.438634, 0.787352, 0.196885, 0.999867, 0.780408, 0.148673, 0.672902, 0.0855072, 0.542285, 0.817219, 0.344624, 0.869507, 0.0972594, 0.738224, 0.678642, 0.610263, 0.513905, 0.327563, 0.595982, 0.300305, 0.367507, 0.385162, 0.512591, 0.0331952, 0.457096, 0.77215, 0.237526, 0.532184, 0.172633, 0.0760759, 0.764021, 0.656615, 0.250267, 0.913947, 0.0693472, 0.811476, 0.0654472, 0.180779, 0.25495, 0.491045, 0.243572, 0.688457, 0.302134, 0.995999, 0.0877077, 0.290827, 0.421128, 0.930957, 0.122838, 0.602823, 0.267248, 0.819376, 0.378619, 0.10743, 0.646243, 0.0390166, 0.485882, 0.410412, 0.0314222, 0.445647, 0.668752, 0.584085, 0.14271, 0.193579, 0.235109, 0.155165, 0.802243, 0.222773, 0.593747, 0.649464, 0.383544, 0.391871, 0.680344, 0.369907, 0.650128, 0.840548, 0.0512257, 0.845229, 0.0324772, 0.820746, 0.507174, 0.143959, 0.948798, 0.202721, 0.336271, 0.124466, 0.030435, 0.17137, 0.152208, 0.159802, 0.96511, 0.20956, 0.710096, 0.520639, 0.655321, 0.225285, 0.464752, 0.502103, 0.0716045, 0.852669, 0.477213, 0.531703, 0.843568, 0.178469, 0.47283, 0.13775, 0.932464, 0.195978, 0.352279, 0.458219, 0.88598, 0.401532, 0.33308, 0.289794, 0.490644, 0.0128116, 0.917066, 0.430907, 0.845364, 0.9673, 0.111233, 0.380055, 0.0719343, 0.995952, 0.67487, 0.369355, 0.452539, 0.138657, 0.77244, 0.0423, 0.872063, 0.779729, 0.0243229, 0.0438687, 0.677882, 0.85632, 0.548454, 0.823104, 0.0494186, 0.311531, 0.583488, 0.46654, 0.946371, 0.416478, 0.380618, 0.978415, 0.360331, 0.934685, 0.507023, 0.563155, 0.0599655, 0.468624, 0.207611, 0.729588, 0.987562, 0.0986833, 0.186597, 0.486791, 0.186946, 0.32957, 0.139015, 0.439042, 0.33656, 0.710923, 0.847317, 0.755213, 0.679668, 0.512238, 0.246794, 0.130706, 0.972152, 0.380354, 0.97653, 0.86102, 0.633842, 0.541387, 0.573967, 0.662506, 0.581571, 0.324206, 0.325255, 0.167391, 0.533735, 0.210881, 0.557627, 0.0425774, 0.248431, 0.609063, 0.411411, 0.0296826, 0.107329, 0.470474, 0.219309, 0.377342, 0.487793, 0.128537, 0.383163, 0.155686, 0.160019, 0.563484, 0.427877, 0.855583, 0.944766, 0.625127, 0.428711, 0.548492, 0.845844, 0.974884, 0.0283575, 0.928495, 0.314943, 0.704869, 0.434655, 0.792576, 0.302688, 0.887315, 0.448706, 0.360527, 0.61462, 0.386755, 0.456536, 0.913248, 0.562782, 0.834938, 0.417069, 0.936944, 0.175957, 0.0292056, 0.165132, 0.860349, 0.920219, 0.887488, 0.981758, 0.664164, 0.208711, 0.837174, 0.0690807, 0.285295, 0.0465079, 0.450513, 0.909982, 0.195234, 0.598476, 0.0319583, 0.562492, 0.593147, 0.0953558, 0.922204, 0.855676, 0.180321, 0.944682, 0.886156, 0.785763, 0.0513129, 0.584269, 0.481476, 0.594496, 0.31895, 0.862149, 0.761318, 0.830565, 0.477565, 0.704674, 0.448482, 0.0647326, 0.576446, 0.0936495, 0.0290601, 0.531201, 0.805988, 0.617532, 0.311513, 0.940009, 0.548031, 0.289231, 0.713648, 0.168361, 0.438717, 0.710118, 0.956462, 0.719465, 0.121624, 0.997186, 0.243058, 0.572056, 0.33345, 0.0567612, 0.784417, 0.15373, 0.194629, 0.838849, 0.365281, 0.853493, 0.937009, 0.884989, 0.912643, 0.615399, 0.171796, 0.508634, 0.801327, 0.793735, 0.898612, 0.144338, 0.763831, 0.0432119, 0.444554, 0.690018, 0.0769864, 0.258341, 0.299487, 0.462314, 0.612981, 0.61242, 0.270474, 0.687894, 0.15412, 0.945785, 0.304665, 0.527352, 0.862864, 0.814089, 0.355384, 0.0585086, 0.685452, 0.696904, 0.327063, 0.507143, 0.264042, 0.606223, 0.191667, 0.841703, 0.217113, 0.118348, 0.826108, 0.827688, 0.607877, 0.683131, 0.0545193, 0.745739, 0.389008, 0.866404, 0.262548, 0.408929, 0.44413, 0.726945, 0.139415, 0.863922, 0.729537, 0.193518, 0.573765, 0.217033, 0.0911973, 0.455508, 0.0853736, 0.883664, 0.918828, 0.0206688, 0.322978, 0.691095, 0.599105, 0.657169, 0.0346459, 0.883606, 0.603325, 0.00704693, 0.34111, 0.575056, 0.293797, 0.659662, 0.0266977, 0.343559, 0.73245, 0.568653, 0.976468, 0.40845, 0.574158, 0.583174, 0.262365, 0.27649, 0.783194, 0.96572, 0.638504, 0.0109963, 0.297281, 0.95719, 0.857866, 0.118023, 0.823408, 0.193587, 0.336572, 0.649514, 0.195704, 0.64884, 0.727483, 0.280076, 0.391448, 0.319339, 0.656744, 0.682944, 0.849771, 0.527175, 0.986829, 0.431986, 0.50676, 0.205591, 0.94704, 0.00324137, 0.76835, 0.494667, 0.0566577, 0.638742, 0.956018, 0.584582, 0.756424, 0.646476, 0.277489, 0.762332, 0.997635, 0.813419, 0.836437, 0.6161, 0.484459, 0.680175, 0.962532, 0.253346, 0.549721, 0.527324, 0.678575, 0.817699, 0.228619, 0.051797, 0.272214, 0.422288, 0.809362, 0.614724, 0.46797, 0.709692, 0.975017, 0.360894, 0.0906186, 0.297165, 0.152778, 0.831593, 0.685158, 0.714934, 0.31502, 0.988036, 0.917857, 0.297085, 0.630157, 0.965444, 0.969337, 0.822654, 0.239443, 0.983868, 0.247457, 0.765808, 0.578277, 0.162221, 0.090011, 0.125098, 0.453486, 0.602982, 0.997495, 0.535055, 0.298486, 0.74823, 0.0878896, 0.297253, 0.505105, 0.246785, 0.702703, 0.953522, 0.992123, 0.730079, 0.885203, 0.872968, 0.136767, 0.0848781, 0.20931, 0.241017, 0.490057, 0.850751, 0.255625, 0.383044, 0.253957, 0.17459, 0.904922, 0.933217, 0.563103, 0.615326, 0.298383, 0.730389, 0.990698, 0.797211, 0.0405547, 0.0917579, 0.383499, 0.47776, 0.569275, 0.761912, 0.91392, 0.563875, 0.646229, 0.823883, 0.818332, 0.376973, 0.685708, 0.562361, 0.313728, 0.451813, 0.0814237, 0.261835, 0.603268, 0.546794, 0.226541, 0.770576, 0.326147, 0.652414, 0.149648, 0.749899, 0.932337, 0.143466, 0.363197, 0.885366, 0.361895, 0.28782, 0.196789, 0.208795, 0.863102, 0.402006, 0.972238, 0.128598, 0.573996, 0.897687, 0.367745, 0.981472, 0.958369, 0.341549, 0.568072, 0.63617, 0.66779, 0.301268, 0.0970404, 0.395191, 0.562295, 0.940136, 0.972699, 0.40398, 0.808631, 0.946714, 0.501458, 0.102879, 0.0850953, 0.107325, 0.985752, 0.822408, 0.145373, 0.678183, 0.890433, 0.379324, 0.673399, 0.315857, 0.387693, 0.267464, 0.399486, 0.563653, 0.948893, 0.996971, 0.312536, 0.224712, 0.195422, 0.862912, 0.8311, 0.111842, 0.0215436, 0.014879, 0.108368, 0.341035, 0.0922098, 0.246749, 0.0802057, 0.403072, 0.73072, 0.0258649, 0.3814, 0.0909907, 0.965118, 0.317121, 0.550146, 0.918783, 0.800225, 0.499974, 0.881534, 0.822591, 0.768862, 0.264584, 0.53143, 0.686706, 0.75677, 0.585163, 0.528601, 0.788635, 0.571163, 0.349808, 0.470605, 0.881969, 0.191596, 0.920181, 0.914795, 0.498367, 0.570864, 0.867099, 0.512945, 0.279374, 0.953339, 0.612305, 0.729747, 0.687118, 0.644624, 0.621666, 0.451161, 0.380568, 0.366232, 0.652734, 0.936622, 0.892705, 0.160316, 0.266727, 0.387105, 0.656982, 0.791355, 0.850267, 0.173026, 0.616806, 0.911728, 0.373296, 0.511997, 0.599183, 0.0201844, 0.183038, 0.225816, 0.083518, 0.304678, 0.127526, 0.365757, 0.469518, 0.0323771, 0.891389, 0.576512, 0.236756, 0.459983, 0.496918, 0.903592, 0.939872, 0.190675, 0.320497, 0.0203818, 0.150569, 0.0856717, 0.0852438, 0.361675, 0.531786, 0.532727, 0.800923, 0.0737097, 0.499973, 0.313016, 0.42983, 0.72471, 0.254885, 0.967803, 0.816051, 0.754813, 0.595467, 0.939499, 0.73407, 0.0328131, 0.117256, 0.801046, 0.98091, 0.0316226, 0.735494, 0.97615, 0.928681, 0.66647, 0.92542, 0.772282, 0.525005, 0.0113489, 0.662231, 0.647464, 0.691623, 0.878107, 0.986174, 0.750473, 0.725888, 0.972051, 0.269137, 0.967739, 0.345124, 0.525215, 0.00230173, 0.876499, 0.713296, 0.206258, 0.148654, 0.492083, 0.170662, 0.540144, 0.797632, 0.845735, 0.0901862, 0.725708, 0.962217, 0.765269, 0.136793, 0.655495, 0.973011, 0.721749, 0.505018, 0.898978, 0.1419, 0.787899, 0.405809, 0.275214, 0.865547, 0.216191, 0.980591, 0.0639681, 0.868678, 0.834204, 0.426262, 0.629369, 0.109223, 0.0778093, 0.100758, 0.468726, 0.55479, 0.990777, 0.786453, 0.720513, 0.123705, 0.737568, 0.2643, 0.142287, 0.298431, 0.470926, 0.26009, 0.771193, 0.558194, 0.813712, 0.318702, 0.703376, 0.271103, 0.474335, 0.766687, 0.0102456, 0.553279, 0.921765, 0.527138, 0.939181, 0.17783, 0.618403, 0.55028, 0.770801, 0.918018, 0.0156285, 0.0582344, 0.419305, 0.440191, 0.800206, 0.372418, 0.710976, 0.22981, 0.753679, 0.105767, 0.595989, 0.481063, 0.430187, 0.398237, 0.920512, 0.782136, 0.90022, 0.183508, 0.991203, 0.103273, 0.937175, 0.931229, 0.463889, 0.37013, 0.107878, 0.833853, 0.822181, 0.457514, 0.368197, 0.12845, 0.275395, 0.831697, 0.14058, 0.91069, 0.1159, 0.507011, 0.187544, 0.255681, 0.85009, 0.597002, 0.201436, 0.0758791, 0.121787, 0.843484, 0.992153, 0.0290397, 0.420884, 0.541761, 0.234377, 0.584748, 0.214682, 0.454908, 0.373232, 0.705042, 0.0846849, 0.676359, 0.391221, 0.0726224, 0.818027, 0.845553, 0.359103, 0.399189, 0.532295, 0.591965, 0.0638131, 0.830835, 0.620067, 0.0838342, 0.938791, 0.550718, 0.00248069, 0.935693, 0.743766, 0.359448, 0.230411, 0.381636, 0.960077, 0.652757, 0.00918726, 0.592932, 0.372511, 0.389753, 0.993675, 0.384581, 0.343378, 0.00957446, 0.561085, 0.188613, 0.901168, 0.745008, 0.386326, 0.760493, 0.263977, 0.943769, 0.0411888, 0.466905, 0.793125, 0.81984, 0.325548, 0.766207, 0.368973, 0.446107, 0.572874, 0.455362, 0.108699, 0.371513, 0.951581, 0.193994, 0.018419, 0.60699, 0.615651, 0.148897, 0.0329962, 0.869811, 0.659208, 0.471403, 0.279857, 0.449411, 0.926895, 0.0170235, 0.333788, 0.132859, 0.159284, 0.894341, 0.438885, 0.477194, 0.353768, 0.2066, 0.918251, 0.0471047, 0.723558, 0.413295, 0.102194, 0.32278, 0.607575, 0.328097, 0.141306, 0.63415, 0.381959, 0.638005, 0.267259, 0.381353, 0.609073, 0.94418, 0.0949181, 0.0779184, 0.831966, 0.0372947, 0.458696, 0.325194, 0.480357, 0.811655, 0.534986, 0.464123, 0.753483, 0.657256, 0.435935, 0.488373, 0.783909, 0.991293, 0.373999, 0.371571, 0.292291, 0.226431, 0.0552599, 0.72983, 0.530037, 0.592297, 0.922314, 0.535397, 0.848662, 0.320842, 0.461469, 0.697733, 0.699023, 0.387278, 0.187353, 0.91391, 0.146173, 0.821822, 0.744637, 0.049221, 0.00713855, 0.845146, 0.473476, 0.780767, 0.511241, 0.702851, 0.183109, 0.751074, 0.908804, 0.648501, 0.723216, 0.804815, 0.357459, 0.992428, 0.540083, 0.201443, 0.542932, 0.0260532, 0.41567, 0.803766, 0.377759, 0.0282258, 0.873163, 0.771989, 0.135332, 0.429786, 0.899436, 0.503036, 0.46967, 0.0314196, 0.168672, 0.6573, 0.61836, 0.296532, 0.75275, 0.440724, 0.477417, 0.101412, 0.672003, 0.808464, 0.214804, 0.679745, 0.375457, 0.122195, 0.0725861, 0.149689, 0.432308, 0.171043, 0.836608, 0.828204, 0.16157, 0.606298, 0.540329, 0.737885, 0.10423, 0.193228, 0.384045, 0.579478, 0.572002, 0.357053, 0.647583, 0.804919, 0.657946, 0.78592, 0.205077, 0.0635974, 0.356279, 0.0302115, 0.112462, 0.5329, 0.0353439, 0.883937, 0.867497, 0.732951, 0.534466, 0.166197, 0.343865, 0.233998, 0.677171, 0.900603, 0.319964, 0.0777299, 0.293807, 0.92375, 0.665116, 0.511788, 0.569408, 0.183141, 0.241797, 0.328806, 0.773182, 0.506117, 0.903332, 0.0634056, 0.966247, 0.109753, 0.676579, 0.615518, 0.022722, 0.794906, 0.333341, 0.100288, 0.965705, 0.175894, 0.672127, 0.92922, 0.400484, 0.99517, 0.296742, 0.70313, 0.653463, 0.630647, 0.3, 0.25781, 0.502493, 0.692245, 0.164286, 0.901121, 0.777933, 0.499881, 0.310926, 0.945782, 0.485547, 0.133376, 0.682151, 0.992685, 0.492031, 0.440652, 0.289835, 0.801857, 0.148922, 0.797449, 0.297553, 0.235087, 0.673506, 0.701569, 0.274506, 0.664335, 0.348808, 0.0858898, 0.891046, 0.86499, 0.56995, 0.122645, 0.32221, 0.722885, 0.647581, 0.291142, 0.879507, 0.117262, 0.159482, 0.395556, 0.766304, 0.00745551, 0.95851, 0.953378, 0.725128, 0.149534, 0.0715187, 0.428435, 0.087609, 0.619377, 0.780261, 0.924924, 0.289078, 0.479124, 0.0779071, 0.551067, 0.0981934, 0.160841, 0.921033, 0.772312, 0.915264, 0.181145, 0.311038, 0.638103, 0.942361, 0.944867, 0.356726, 0.806764, 0.848946, 0.0495556, 0.831846, 0.148647, 0.282114, 0.146988, 0.494403, 0.281035, 0.863299, 0.501103, 0.326049, 0.223236, 0.828293, 0.205454, 0.766755, 0.605667, 0.610746, 0.0220558, 0.442917, 0.970086, 0.738035, 0.659323, 0.757438, 0.77343, 0.982792, 0.653796, 0.162166, 0.111772, 0.0154878, 0.398852, 0.553334, 0.186396, 0.523945, 0.522701, 0.76907, 0.0846576, 0.205697, 0.108288, 0.32589, 0.975228, 0.593238, 0.960279, 0.275291, 0.354261, 0.480216, 0.318182, 0.849524, 0.143325, 0.700827, 0.342653, 0.536966, 0.157807, 0.578958, 0.983365, 0.471684, 0.812554, 0.592856, 0.61995, 0.755793, 0.124307, 0.830922, 0.983727, 0.545654, 0.141342, 0.96937, 0.900402, 0.199047, 0.687875, 0.466796, 0.106049, 0.523671, 0.858705, 0.51011, 0.837409, 0.357153, 0.617167, 0.144112, 0.598025, 0.321082, 0.407618, 0.383217, 0.831688, 0.518964, 0.31747, 0.153182, 0.0169523, 0.219738, 0.130376, 0.0114876, 0.0131408, 0.227636, 0.862836, 0.87053, 0.0494288, 0.934751, 0.313082, 0.844151, 0.881587, 0.873415, 0.93892, 0.522037, 0.538872, 0.239712, 0.0700234, 0.497359, 0.824724, 0.060273, 0.255059, 0.804214, 0.0385446, 0.686466, 0.0236183, 0.367231, 0.912675, 0.980003, 0.550162, 0.160156, 0.740405, 0.591668, 0.283903, 0.518298, 0.0992232, 0.833306, 0.0356076, 0.479255, 0.219035, 0.125489, 0.106494, 0.751202, 0.672062, 0.0275192, 0.415199, 0.945351, 0.162596, 0.526399, 0.156734, 0.313128, 0.152892, 0.290877, 0.306564, 0.881553, 0.534238, 0.118855, 0.453356, 0.907232, 0.0990579, 0.403085, 0.582612, 0.8524, 0.642647, 0.917638, 0.690479, 0.708151, 0.946478, 0.220274, 0.604333, 0.374995, 0.085968, 0.450081, 0.23202, 0.619388, 0.172781, 0.371988, 0.904045, 0.197943, 0.700031, 0.574309, 0.0590342, 0.917979, 0.619084, 0.471351, 0.977649, 0.152323, 0.787392, 0.0169904, 0.955696, 0.361285, 0.999772, 0.0413336, 0.00745567, 0.834509, 0.618306, 0.191782, 0.490097, 0.866924, 0.881582, 0.185547, 0.646587, 0.53591, 0.0810783, 0.641288, 0.0908556, 0.281889, 0.360082, 0.0169111, 0.148972, 0.335747, 0.924505, 0.6449, 0.42539, 0.241403, 0.527155, 0.854003, 0.917513, 0.930921, 0.940182, 0.546018, 0.480607, 0.567392, 0.24036, 0.260858, 0.755869, 0.696928, 0.889399, 0.635946, 0.979741, 0.645656, 0.841219, 0.57826, 0.547416, 0.437659, 0.227435, 0.354821, 0.475219, 0.602813, 0.9542, 0.426673, 0.190239, 0.787201, 0.83574, 0.222938, 0.223357, 0.943922, 0.307732, 0.407235, 0.772202, 0.823804, 0.907674, 0.469757, 0.644941, 0.944729, 0.678936, 0.182763, 0.669295, 0.261396, 0.732253, 0.324244, 0.812283, 0.199705, 0.551836, 0.20551, 0.622396, 0.515947, 0.830756, 0.950204, 0.37391, 0.994554, 0.921947, 0.89421, 0.650081, 0.0513643, 0.564519, 0.166337, 0.963208, 0.0222917, 0.143124, 0.285645, 0.60238, 0.754984, 0.484512, 0.00350181, 0.634146, 0.53443, 0.207476, 0.47257, 0.328493, 0.606535, 0.557861, 0.508002, 0.839055, 0.2215, 0.393696, 0.41709, 0.633709, 0.880473, 0.312146, 0.991068, 0.0422319, 0.427465, 0.317993, 0.321067, 0.482519, 0.939097, 0.93866, 0.18651, 0.0218747, 0.498072, 0.920035, 0.775045, 0.138467, 0.00783922, 0.928655, 0.645646, 0.829622, 0.692938, 0.207094, 0.0186484, 0.40103, 0.359273, 0.166751, 0.0197518, 0.157962, 0.00489814, 0.450554, 0.834233, 0.7104, 0.499501, 0.591914, 0.568131, 0.151023, 0.201974, 0.678773, 0.0498054, 0.707166, 0.215978, 0.941606, 0.251902, 0.838026, 0.764797, 0.185298, 0.244075, 0.335499, 0.0638809, 0.858298, 0.0786895, 0.416929, 0.850201, 0.431233, 0.145361, 0.0391591, 0.744356, 0.962381, 0.298952, 0.214611, 0.539385, 0.299848, 0.476192, 0.818564, 0.489667, 0.149053, 0.453578, 0.69312, 0.489025, 0.384821, 0.0507784, 0.528422, 0.167769, 0.0695061, 0.362341, 0.310005, 0.0874438, 0.0182253, 0.416149, 0.889368, 0.867267, 0.782126, 0.673169, 0.0351738, 0.427632, 0.206792, 0.739605, 0.0657612, 0.328473, 0.0386429, 0.797805, 0.753864, 0.468673, 0.896956, 0.608983, 0.140393, 0.858324, 0.690824, 0.0963475, 0.860534, 0.155646, 0.610728, 0.791791, 0.647572, 0.867231, 0.536277, 0.167431, 0.509598, 0.292278, 0.673647, 0.760399, 0.135678, 0.236575, 0.0918812, 0.50639, 0.00361561, 0.470789, 0.150309, 0.445664, 0.640191, 0.251783, 0.869104, 0.303484, 0.45136, 0.105541, 0.124908, 0.349515, 0.46051, 0.536571, 0.910595, 0.662813, 0.569908, 0.255237, 0.426836, 0.680352, 0.429791, 0.79238, 0.256657, 0.25979, 0.91802, 0.770557, 0.746647, 0.786927, 0.834828, 0.665623, 0.718874, 0.282906, 0.0994461, 0.637917, 0.0317004, 0.729398, 0.618314, 0.346005, 0.652679, 0.960861, 0.614272, 0.218315, 0.722266, 0.334078, 0.490082, 0.759666, 0.0824943, 0.246811, 0.501582, 0.437904, 0.669119, 0.469253, 0.497209, 0.366719, 0.268422, 0.125883, 0.392855, 0.642103, 0.100537, 0.696517, 0.686808, 0.658717, 0.0527048, 0.492001, 0.144315, 0.0806398, 0.916123, 0.0947704, 0.698308, 0.641307, 0.149544, 0.0495856, 0.806163, 0.758025, 0.686753, 0.817656, 0.545491, 0.0896702, 0.283765, 0.362967, 0.771175, 0.895561, 0.270495, 0.373034, 0.750738, 0.315994, 0.386214, 0.37898, 0.823998, 0.417079, 0.704027, 0.311309, 0.902728, 0.612723, 0.954697, 0.787412, 0.259005, 0.555986, 0.345166, 0.154027, 0.285371, 0.479638, 0.938153, 0.827424, 0.417747, 0.131627, 0.585372, 0.276595, 0.338166, 0.888816, 0.205515, 0.724796, 0.30414, 0.675818, 0.760469, 0.438074, 0.515091, 0.0415316, 0.865371, 0.64607, 0.549665, 0.415766, 0.969352, 0.74064, 0.820653, 0.683802, 0.745104, 0.638719, 0.950003, 0.612648, 0.80751, 0.811646, 0.28429, 0.435325, 0.164869, 0.506926, 0.625481, 0.875001, 0.250263, 0.119058, 0.410753, 0.362809, 0.520447, 0.532355, 0.30614, 0.990048, 0.246524, 0.596864, 0.429183, 0.960561, 0.725848, 0.114912, 0.282102, 0.560757, 0.367448, 0.537203, 0.976068, 0.685703, 0.918309, 0.234538, 0.490541, 0.929749, 0.660109, 0.919554, 0.423967, 0.528061, 0.912007, 0.977372, 0.895536, 0.577261, 0.911036, 0.542754, 0.79095, 0.196632, 0.382023, 0.211566, 0.218488, 0.123244, 0.540393, 0.0934283, 0.421639, 0.668694, 0.18205, 0.861314, 0.865269, 0.0239912, 0.0644175, 0.161088, 0.0976057, 0.495183, 0.497982, 0.642607, 0.800152, 0.779988, 0.631244, 0.892617, 0.277899, 0.689278, 0.0372923, 0.659564, 0.729482, 0.947426, 0.879573, 0.219491, 0.259561, 0.713637, 0.759587, 0.728768, 0.227487, 0.682074, 0.0508287, 0.365871, 0.0115379, 0.0253321, 0.724254, 0.784426, 0.605822, 0.79863, 0.0920109, 0.264806, 0.529715, 0.280521, 0.0806833, 0.573684, 0.263211, 0.98225, 0.697906, 0.0727361, 0.422524, 0.892327, 0.215485, 0.150975, 0.272374, 0.254977, 0.0471687, 0.854011, 0.905523, 0.487369, 0.671862, 0.309957, 0.0326223, 0.15492, 0.485134, 0.906009, 0.00797781, 0.312363, 0.351138, 0.807354, 0.433191, 0.994537, 0.152766, 0.336247, 0.821376, 0.568848, 0.334488, 0.34449, 0.113985, 0.716185, 0.0828765, 0.31891, 0.0101528, 0.398173, 0.653834, 0.101553, 0.0429466, 0.794195, 0.598342, 0.0329396, 0.26652, 0.534885, 0.178991, 0.393045, 0.945898, 0.236378, 0.875477, 0.843853, 0.738825, 0.957059, 0.883943, 0.377353, 0.779163, 0.819641, 0.39917, 0.0942807, 0.404984, 0.717679, 0.969535, 0.642952, 0.0152037, 0.322173, 0.740293, 0.735752, 0.934312, 0.617279, 0.447043, 0.197315, 0.216372, 0.514738, 0.175573, 0.991895, 0.247655, 0.675527, 0.825682, 0.0679679, 0.711012, 0.397803, 0.261216, 0.561776, 0.555192, 0.295563, 0.389618, 0.989129, 0.737709, 0.433677, 0.961196, 0.878383, 0.500939, 0.758256, 0.653572, 0.451451, 0.115132, 0.192219, 0.939038, 0.635529, 0.477316, 0.804115, 0.00827723, 0.487808, 0.412956, 0.713571, 0.67833, 0.267152, 0.752279, 0.944106, 0.337772, 0.94516, 0.0482466, 0.300545, 0.00893618, 0.116131, 0.729364, 0.872157, 0.973988, 0.834828, 0.349206, 0.793585, 0.908499, 0.0230343, 0.871465, 0.90529, 0.623719, 0.156356, 0.274895, 0.170041, 0.815941, 0.489124, 0.266382, 0.180785, 0.639142, 0.180608, 0.694559, 0.655653, 0.558426, 0.311658, 0.150371, 0.685133, 0.75854, 0.416914, 0.0211004, 0.106531, 0.675141, 0.386412, 0.616957, 0.702496, 0.751583, 0.823503, 0.232479, 0.518833, 0.88042, 0.449801, 0.873537, 0.403454, 0.748868, 0.540153, 0.135152, 0.319178, 0.976757, 0.762667, 0.303477, 0.460385, 0.627705, 0.66124, 0.225106, 0.957666, 0.854031, 0.662319, 0.251712, 0.104927, 0.238142, 0.532306, 0.0441043, 0.154565, 0.0345476, 0.83563, 0.913591, 0.810374, 0.182844, 0.244655, 0.863284, 0.309717, 0.916182, 0.487567, 0.931449, 0.251717, 0.724678, 0.606854, 0.189304, 0.673796, 0.0773815, 0.889599, 0.256576, 0.362145, 0.920125, 0.611832, 0.0974827, 0.963835, 0.347465, 0.368334, 0.0557915, 0.51206, 0.950342, 0.284642, 0.125789, 0.910985, 0.369621, 0.461925, 0.580513, 0.0226002, 0.905911, 0.757851, 0.00114986, 0.86232, 0.625117, 0.771487, 0.689423, 0.918658, 0.863122, 0.525129, 0.031389, 0.599619, 0.960601, 0.840296, 0.534162, 0.81502, 0.540934, 0.159492, 0.814338, 0.723885, 0.090235, 0.576617, 0.338563, 0.36344, 0.592914, 0.0181945, 0.00990845, 0.179302, 0.248085, 0.0174004, 0.569925, 0.282361, 0.59425, 0.876042, 0.991342, 0.385033, 0.423606, 0.605631, 0.754561, 0.447055, 0.542943, 0.144129, 0.227229, 0.814315, 0.645272, 0.0350435, 0.177281, 0.217253, 0.108555, 0.0933903, 0.638201, 0.319816, 0.465517, 0.396075, 0.559073, 0.731407, 0.652334, 0.415819, 0.463731, 0.898378, 0.781612, 0.853351, 0.567849, 0.0676322, 0.972681, 0.271317, 0.227251, 0.91604, 0.227314, 0.10091, 0.139674, 0.879678, 0.0618158, 0.93691, 0.858663, 0.656639, 0.416152, 0.197135, 0.846068, 0.416782, 0.711312, 0.991886, 0.380021, 0.793923, 0.7898, 0.391976, 0.72784, 0.823548, 0.703683, 0.0557875, 0.106768, 0.376691, 0.993151, 0.47171, 0.526288, 0.812549, 0.131579, 0.653928, 0.788616, 0.581642, 0.868925, 0.205821, 0.39915, 0.296946, 0.966696, 0.644619, 0.289385, 0.212465, 0.806189, 0.285725, 0.534083, 0.327135, 0.669993, 0.131962, 0.319439, 0.661052, 0.826859, 0.698392, 0.439574, 0.317291, 0.433467, 0.466467, 0.702061, 0.0260792, 0.103434, 0.463534, 0.238455, 0.0238458, 0.149948, 0.994296, 0.784839, 0.277535, 0.289423, 0.610954, 0.0181285, 0.267422, 0.570679, 0.0927, 0.18874, 0.104791, 0.361917, 0.48399, 0.469215, 0.89176, 0.0340089, 0.848645, 0.796003, 0.698686, 0.83429, 0.249566, 0.20247, 0.0560978, 0.532086, 0.00241042, 0.978845, 0.653804, 0.171889, 0.14379, 0.970395, 0.190568, 0.817508, 0.534476, 0.545703, 0.238863, 0.248701, 0.439671, 0.872105, 0.0711503, 0.109641, 0.663663, 0.879851, 0.404459, 0.670435, 0.35154, 0.787346, 0.353047, 0.307953, 0.623819, 0.917576, 0.217974, 0.953093, 0.530778, 0.0942481, 0.544627, 0.156973, 0.455068, 0.846388, 0.843091, 0.357362, 0.739226, 0.713216, 0.738706, 0.382027, 0.446798, 0.297191, 0.55579, 0.950182, 0.654786, 0.745809, 0.969976, 0.0328249, 0.444964, 0.788204, 0.882919, 0.218934, 0.227815, 0.952823, 0.622917, 0.952082, 0.600167, 0.770613, 0.0856661, 0.590275, 0.371377, 0.192921, 0.450472, 0.897739, 0.579872, 0.629459, 0.797775, 0.512651, 0.220825, 0.662543, 0.215113, 0.408932, 0.117188, 0.0488343, 0.624517, 0.547773, 0.980149, 0.143366, 0.146225, 0.814327, 0.779139, 0.603293, 0.712174, 0.25335, 0.759281, 0.726628, 0.0954946, 0.507432, 0.619316, 0.61139, 0.0073343, 0.811255, 0.451277, 0.40173, 0.725122, 0.869911, 0.793965, 0.905632, 0.908934, 0.727874, 0.442662, 0.177654, 0.0428857, 0.176376, 0.586001, 0.490787, 0.681465, 0.876579, 0.476623, 0.0891462, 0.748424, 0.173574, 0.922245, 0.368648, 0.0713835, 0.909052, 0.121269, 0.164625, 0.221131, 0.741261, 0.998728, 0.210454, 0.592318, 0.953165, 0.799059, 0.652669, 0.627318, 0.354413, 0.12043, 0.947838, 0.861037, 0.760182, 0.117874, 0.911965, 0.781214, 0.667469, 0.729352, 0.821422, 0.809641, 0.0766209, 0.481135, 0.450774, 0.249029, 0.484877, 0.41154, 0.368076, 0.273665, 0.17875, 0.800276, 0.606232, 0.833419, 0.431604, 0.417373, 0.342649, 0.259456, 0.17573, 0.608306, 0.255278, 0.221354, 0.844619, 0.383746, 0.408302, 0.280374, 0.443266, 0.472583, 0.614341, 0.99775, 0.511718, 0.598597, 0.21895, 0.572983, 0.680042, 0.346485, 0.376984, 0.485663, 0.368217, 0.0719982, 0.621932, 0.716446, 0.497886, 0.308174, 0.772743, 0.377591, 0.118699, 0.361724, 0.145399, 0.322687, 0.435509, 0.874113, 0.823203, 0.0697124, 0.71379, 0.680413, 0.43251, 0.849853, 0.442805, 0.718404, 0.57, 0.976774, 0.131632, 0.442071, 0.217625, 0.0987891, 0.818226, 0.409763, 0.251333, 0.361336, 0.229466, 0.414572, 0.967588, 0.38856, 0.453527, 0.168258, 0.121589, 0.259288, 0.708411, 0.92906, 0.756081, 0.926194, 0.171172, 0.0627588, 0.426189, 0.901095, 0.509919, 0.140936, 0.811498, 0.477058, 0.00490302, 0.647061, 0.474544, 0.195222, 0.786194, 0.808953, 0.540596, 0.97078, 0.0126724, 0.0650848, 0.0433997, 0.0312905, 0.899887, 0.939005, 0.223059, 0.834616, 0.722675, 0.594256, 0.954715, 0.37608, 0.64524, 0.335348, 0.515949, 0.401999, 0.393233, 0.0490024, 0.0250427, 0.187972, 0.384919, 0.833782, 0.783104, 0.977303, 0.158729, 0.333586, 0.0502338, 0.801494, 0.291031, 0.49816, 0.958078, 0.479391, 0.835572, 0.320777, 0.706245, 0.396989, 0.411453, 0.667117, 0.919936, 0.298127, 0.468245, 0.62581, 0.125593, 0.0927706, 0.600427, 0.153621, 0.306354, 0.0734575, 0.456476, 0.455768, 0.844137, 0.0233551, 0.43679, 0.133455, 0.296743, 0.148274, 0.36981, 0.170767, 0.695778, 0.743133, 0.809318, 0.583172, 0.49528, 0.706006, 0.859869, 0.286241, 0.924451, 0.199671, 0.840548, 0.236104, 0.100701, 0.937621, 0.780132, 0.276649, 0.134453, 0.0898831, 0.0197874, 0.388934, 0.532583, 0.532269, 0.280046, 0.413882, 0.614893, 0.860659, 0.85073, 0.835906, 0.243669, 0.781437, 0.657171, 0.640155, 0.636711, 0.246225, 0.400486, 0.437177, 0.732831, 0.886331, 0.0484648, 0.784466, 0.307803, 0.78296, 0.435225, 0.040348, 0.10938, 0.085782, 0.912009, 0.690018, 0.845696, 0.763105, 0.27025, 0.578797, 0.69952, 0.571293, 0.476323, 0.389342, 0.0964858, 0.69871, 0.847456, 0.989922, 0.765655, 0.499258, 0.935291, 0.200629, 0.421518, 0.992777, 0.919894, 0.0312754, 0.200879, 0.13463, 0.439071, 0.962482, 0.118074, 0.739496, 0.561802, 0.295868, 0.0610594, 0.0495111, 0.0437061, 0.907812, 0.384339, 0.0956576, 0.238232, 0.59842, 0.398248, 0.0494056, 0.795226, 0.675948, 0.927738, 0.416942, 0.456946, 0.80176, 0.488236, 0.678677, 0.180541, 0.979995, 0.514626, 0.928086, 0.766595, 0.660089, 0.830318, 0.62411, 0.573957, 0.189075, 0.411805, 0.211143, 0.542054, 0.139239, 0.688617, 0.765168, 0.653583, 0.0153753, 0.138088, 0.710597, 0.874174, 0.369406, 0.753912, 0.0326591, 0.532357, 0.948062, 0.760923, 0.334434, 0.023816, 0.0403458, 0.531485, 0.68693, 0.444792, 0.116474, 0.00305501, 0.979432, 0.858887, 0.896419, 0.55056, 0.494668, 0.283919, 0.309247, 0.517832, 0.752532, 0.239866, 0.179353, 0.637841, 0.491144, 0.573195, 0.472105, 0.525877, 0.864037, 0.133561, 0.511198, 0.700817, 0.403014, 0.92291, 0.903589, 0.767714, 0.321063, 0.817249, 0.196288, 0.0313713, 0.0379668, 0.444515, 0.0305067, 0.560237, 0.486024, 0.300577, 0.287569, 0.622349, 0.496723, 0.125681, 0.527687, 0.956522, 0.752448, 0.188189, 0.997759, 0.600438, 0.0332686, 0.961283, 0.813999, 0.552099, 0.852963, 0.404257, 0.645259, 0.112288, 0.228243, 0.886161, 0.949725, 0.300789, 0.452646, 0.961252, 0.97437, 0.699202, 0.895913, 0.185787, 0.757885, 0.627126, 0.992427, 0.48017, 0.947875, 0.897657, 0.98695, 0.942724, 0.51713, 0.926083, 0.298111, 0.152125, 0.67908, 0.318174, 0.211883, 0.636607, 0.836706, 0.278385, 0.077398, 0.969227, 0.246706, 0.697787, 0.0180306, 0.690303, 0.943149, 0.827064, 0.237975, 0.946178, 0.987358, 0.339291, 0.279195, 0.111103, 0.341787, 0.772583, 0.146264, 0.497895, 0.936975, 0.836435, 0.621066, 0.79411, 0.035769, 0.0600016, 0.995965, 0.449941, 0.105262, 0.103016, 0.677542, 0.848522, 0.0144764, 0.272691, 0.99499, 0.0246795, 0.394497, 0.432227, 0.905833, 0.14186, 0.223843, 0.837145, 0.884101, 0.0958894, 0.278607, 0.306735, 0.277072, 0.121907, 0.846329, 0.928566, 0.494188, 0.866881, 0.82777, 0.40037, 0.0298162, 0.454833, 0.0557116, 0.568425, 0.716013, 0.625131, 0.359461, 0.167985, 0.768185, 0.954992, 0.567223, 0.297983, 0.302766, 0.909732, 0.0675928, 0.0475448, 0.612588, 0.454469, 0.0555836, 0.0137198, 0.679233, 0.997264, 0.670852, 0.98384, 0.79776, 0.444311, 0.299769, 0.415529, 0.428637, 0.0172332, 0.107078, 0.176099, 0.238645, 0.383938, 0.26459, 0.193779, 0.169667, 0.744224, 0.852553, 0.398356, 0.0836121, 0.254284, 0.0210508, 0.700994, 0.110569, 0.642708, 0.909614, 0.255123, 0.0434409, 0.196863, 0.489927, 0.814851, 0.0462726, 0.345261, 0.0971585, 0.125154, 0.320215, 0.650961, 0.870661, 0.0648448, 0.505123, 0.615948, 0.281158, 0.0647115, 0.931344, 0.149243, 0.904606, 0.280679, 0.491131, 0.177151, 0.661114, 0.922054, 0.926097, 0.177883, 0.316882, 0.685586, 0.127404, 0.898184, 0.173397, 0.435682, 0.238084, 0.38306, 0.482842, 0.392207, 0.730058, 0.920396, 0.5362, 0.523487, 0.159495, 0.621999, 0.987929, 0.171821, 0.732103, 0.860741, 0.614877, 0.0981477, 0.794807, 0.936615, 0.265722, 0.76072, 0.0555835, 0.465874, 0.838684, 0.13283, 0.544939, 0.562257, 0.538816, 0.0887406, 0.845126, 0.0543769, 0.479723, 0.0172412, 0.190061, 0.896127, 0.621624, 0.909402, 0.984097, 0.868161, 0.464493, 0.588519, 0.0339487, 0.510743, 0.457221, 0.51175, 0.906448, 0.506998, 0.128875, 0.371335, 0.719548, 0.244392, 0.164222, 0.460635, 0.736981, 0.386091, 0.74204, 0.23905, 0.790501, 0.125684, 0.59015, 0.142645, 0.55644, 0.0467885, 0.00931126, 0.345958, 0.903315, 0.307665, 0.22823, 0.803552, 0.781198, 0.545732, 0.203391, 0.71276, 0.196048, 0.453246, 0.171651, 0.763062, 0.691391, 0.203338, 0.47249, 0.88801, 0.398356, 0.459257, 0.505327, 0.807932, 0.249673, 0.941125, 0.584451, 0.551284, 0.614088, 0.302869, 0.293274, 0.641043, 0.379531, 0.95633, 0.545617, 0.984686, 0.0236969, 0.34287, 0.640143, 0.0201265, 0.509974, 0.98276, 0.628205, 0.613, 0.736292, 0.871173, 0.434412, 0.0964367, 0.715149, 0.0651578, 0.858076, 0.970373, 0.697583, 0.0511957, 0.1312, 0.0485288, 0.522365, 0.540259, 0.048487, 0.718387, 0.494992, 0.554173, 0.0165956, 0.37798, 0.536323, 0.352967, 0.980283, 0.811323, 0.993776, 0.888372, 0.577185, 0.325079, 0.687499, 0.302191, 0.760436, 0.258223, 0.407045, 0.642952, 0.186617, 0.217038, 0.300392, 0.909526, 0.825396, 0.669611, 0.243431, 0.830297, 0.519504, 0.740907, 0.017328, 0.619513, 0.198669, 0.951779, 0.000801512, 0.461046, 0.237398, 0.0297098, 0.458399, 0.0106786, 0.940433, 0.901133, 0.118996, 0.86597, 0.600847, 0.500417, 0.669039, 0.597425, 0.863528, 0.177502, 0.928123, 0.0235643, 0.0162282, 0.431811, 0.0247326, 0.46343, 0.117594, 0.705301, 0.993842, 0.128674, 0.351389, 0.583711, 0.744332, 0.0290085, 0.601058, 0.896482, 0.145603, 0.26196, 0.510078, 0.42398, 0.847985, 0.694315, 0.84136, 0.425329, 0.777447, 0.480603, 0.442984, 0.248403, 0.967697, 0.0191499, 0.797625, 0.650762, 0.504973, 0.793651, 0.371018, 0.0922546, 0.377238, 0.068083, 0.212269, 0.881175, 0.0865724, 0.60714, 0.20614, 0.495879, 0.869379, 0.798335, 0.817325, 0.407834, 0.684409, 0.994383, 0.458125, 0.160241, 0.985585, 0.602732, 0.990763, 0.94435, 0.650575, 0.654134, 0.792205, 0.669694, 0.212634, 0.649366, 0.601599, 0.152201, 0.406112, 0.41898, 0.932211, 0.833933, 0.629197, 0.460935, 0.877179, 0.464883, 0.492687, 0.978639, 0.590143, 0.695603, 0.8976, 0.989153, 0.850627, 0.776675, 0.858904, 0.262062, 0.572785, 0.468946, 0.249937, 0.38188, 0.504424, 0.564753, 0.761964, 0.380359, 0.22803, 0.0788631, 0.489809, 0.971161, 0.619884, 0.0317643, 0.516531, 0.625844, 0.236571, 0.615007, 0.599899, 0.751722, 0.685894, 0.354725, 0.740931, 0.968282, 0.888018, 0.621882, 0.924862, 0.527046, 0.347151, 0.212002, 0.572193, 0.117247, 0.194615, 0.095253, 0.0201087, 0.098146, 0.310113, 0.323643, 0.894278, 0.369888, 0.810741, 0.172767, 0.709853, 0.516814, 0.548164, 0.888336, 0.0797477, 0.24525, 0.938654, 0.502689, 0.295827, 0.119806, 0.289672, 0.961867, 0.741689, 0.292624, 0.945117, 0.71285, 0.699524, 0.804372, 0.210751, 0.982166, 0.418573, 0.589543, 0.938117, 0.337398, 0.723417, 0.610449, 0.0908809, 0.0543101, 0.654165, 0.663814, 0.14508, 0.741849, 0.396282, 0.526416, 0.655926, 0.192024, 0.718833, 0.15958, 0.677303, 0.733393, 0.404192, 0.124883, 0.0175574, 0.544939, 0.601568, 0.361211, 0.443735, 0.193085, 0.323427, 0.634401, 0.976123, 0.208605, 0.422247, 0.780503, 0.0134489, 0.0751375, 0.54448, 0.0500473, 0.869196, 0.0016913, 0.506276, 0.924825, 0.949871, 0.83844, 0.00014734, 0.637409, 0.949198, 0.519147, 0.186983, 0.0327156, 0.79524, 0.256879, 0.204747, 0.0328527, 0.88794, 0.632243, 0.0589014, 0.254368, 0.918402, 0.117684, 0.893522, 0.276757, 0.856862, 0.517076, 0.263484, 0.974121, 0.0329834, 0.0341347, 0.590086, 0.860627, 0.0518987, 0.291223, 0.166075, 0.180794, 0.939487, 0.330483, 0.295762, 0.818621, 0.464363, 0.88698, 0.662816, 0.113086, 0.876906, 0.233095, 0.602022, 0.605284, 0.372794, 0.81424, 0.0330449, 0.204503, 0.25696, 0.691717, 0.278742, 0.0521629, 0.675656, 0.188969, 0.00757971, 0.13839, 0.810708, 0.871205, 0.158449, 0.194538, 0.259537, 0.277723, 0.791728, 0.960963, 0.701475, 0.944527, 0.440489, 0.657244, 0.630292, 0.661049, 0.282093, 0.241272, 0.425455, 0.105716, 0.78398, 0.834028, 0.772558, 0.987713, 0.869861, 0.398555, 0.640129, 0.479359, 0.082363, 0.836305, 0.799196, 0.0100903, 0.709837, 0.52487, 0.630181, 0.338377, 0.549398, 0.35527, 0.403584, 0.550187, 0.922802, 0.323531, 0.413257, 0.64132, 0.892639, 0.237584, 0.0482399, 0.518739, 0.0191092, 0.48928, 0.60362, 0.418672, 0.79729, 0.222655, 0.663298, 0.11272, 0.189199, 0.261977, 0.624759, 0.247813, 0.321991, 0.869541, 0.0345437, 0.705514, 0.236079, 0.0751642, 0.0265965, 0.750211, 0.956067, 0.700557, 0.643285, 0.358891, 0.299891, 0.119464, 0.632929, 0.0396922, 0.416897, 0.857252, 0.358908, 0.820325, 0.226221, 0.00299245, 0.873745, 0.121183, 0.0709516, 0.328258, 0.311731, 0.787461, 0.130027, 0.422927, 0.850793, 0.128519, 0.0353783, 0.912582, 0.92066, 0.50438, 0.566446, 0.330203, 0.428012, 0.962995, 0.658071, 0.273066, 0.392982, 0.240056, 0.282333, 0.281442, 0.734583, 0.360461, 0.824135, 0.660209, 0.776367, 0.28154, 0.465446, 0.950371, 0.219994, 0.315196, 0.906205, 0.255356, 0.126619, 0.398926, 0.122939, 0.757885, 0.431244, 0.952485, 0.0897354, 0.0735005, 0.223834, 0.993829, 0.910219, 0.939369, 0.209587, 0.247965, 0.378534, 0.43695, 0.593372, 0.176592, 0.550697, 0.13481, 0.938469, 0.153942, 0.513803, 0.129937, 0.925577, 0.873291, 0.0110865, 0.599096, 0.164479, 0.993353, 0.306322, 0.761716, 0.19688, 0.738774, 0.101273, 0.375798, 0.871668, 0.651067, 0.752728, 0.317489, 0.860593, 0.151999, 0.834951, 0.0131671, 0.213692, 0.131601, 0.948809, 0.386539, 0.735252, 0.63589, 0.597934, 0.153738, 0.207024, 0.414825, 0.0393166, 0.656596, 0.633114, 0.71046, 0.515206, 0.725811, 0.956858, 0.96653, 0.307947, 0.81287, 0.231269, 0.443008, 0.866685, 0.330293, 0.630222, 0.610747, 0.537684, 0.520227, 0.196919, 0.622207, 0.476517, 0.113564, 0.894873, 0.092264, 0.263747, 0.620474, 0.035461, 0.0751112, 0.142827, 0.96917, 0.453922, 0.370087, 0.860608, 0.692643, 0.349574, 0.88413, 0.349871, 0.138777, 0.696332, 0.512382, 0.453479, 0.0715139, 0.962642, 0.117193, 0.755279, 0.0467926, 0.951346, 0.932626, 0.708602, 0.591814, 0.0766236, 0.911442, 0.684024, 0.676403, 0.423532, 0.918271, 0.744965, 0.592189, 0.449637, 0.982688, 0.150236, 0.267047, 0.621663, 0.00228062, 0.788285, 0.370236, 0.495627, 0.294375, 0.406271, 0.892055, 0.952665, 0.0619688, 0.786144, 0.154908, 0.182073, 0.265545, 0.838363, 0.0994781, 0.384246, 0.0825485, 0.307077, 0.920718, 0.0360689, 0.0136542, 0.516079, 0.785751, 0.622565, 0.838129, 0.934121, 0.890701, 0.949006, 0.505474, 0.576906, 0.270199, 0.493857, 0.486989, 0.158093, 0.346061, 0.78021, 0.846452, 0.0833809, 0.954651, 0.355517, 0.903562, 0.1996, 0.705845, 0.258689, 0.744718, 0.167873, 0.978481, 0.998333, 0.737268, 0.879358, 0.554217, 0.501416, 0.712734, 0.36335, 0.133565, 0.717549, 0.450434, 0.2594, 0.571242, 0.95148, 0.309606, 0.0138764, 0.616544, 0.0912953, 0.285406, 0.542064, 0.899954, 0.349686, 0.847954, 0.194902, 0.974816, 0.711702, 0.590018, 0.40569, 0.0615247, 0.860793, 0.951327, 0.325705, 0.20677, 0.902547, 0.377651, 0.372405, 0.150593, 0.694874, 0.196005, 0.460057, 0.948702, 0.868886, 0.668987, 0.744096, 0.134359, 0.121742, 0.968874, 0.657978, 0.642594, 0.131876, 0.630214, 0.806247, 0.865757, 0.902028, 0.445547, 0.298948, 0.469114, 0.0150796, 0.0826065, 0.425651, 0.31539, 0.0164835, 0.782148, 0.316098, 0.331723, 0.35115, 0.663207, 0.874859, 0.472857, 0.299885, 0.303156, 0.353277, 0.85299, 0.305924, 0.753377, 0.687635, 0.721103, 0.0175073, 0.131642, 0.793767, 0.895199, 0.168561, 0.0137051, 0.741135, 0.521726, 0.669587, 0.869922, 0.399693, 0.975729, 0.785194, 0.223006, 0.47353, 0.396348, 0.577172, 0.164608, 0.187767, 0.40811, 0.0538205, 0.879997, 0.0382984, 0.660866, 0.0198569, 0.127509, 0.00440152, 0.733446, 0.313383, 0.870143, 0.779805, 0.869333, 0.30661, 0.734021, 0.0171242, 0.989702, 0.893072, 0.961857, 0.578993, 0.37131, 0.339649, 0.893034, 0.993413, 0.890027, 0.985948, 0.732727, 0.144102, 0.176959, 0.205401, 0.91985, 0.618145, 0.425502, 0.232627, 0.822216, 0.664413, 0.661354, 0.0736633, 0.167671, 0.100399, 0.757384, 0.067736, 0.760572, 0.0928382, 0.962066, 0.459678, 0.979835, 0.194456, 0.752379, 0.16628, 0.373694, 0.804512, 0.985093, 0.541025, 0.476111, 0.581787, 0.999706, 0.242947, 0.0282187, 0.0515976, 0.663627, 0.467204, 0.544393, 0.0968091, 0.246363, 0.553636, 0.504417, 0.531388, 0.686031, 0.0876361, 0.428347, 0.376407, 0.554175, 0.561901, 0.202451, 0.920244, 0.259299, 0.542616, 0.483982, 0.549205, 0.54552, 0.207978, 0.352002, 0.705705, 0.532275, 0.179278, 0.428465, 0.134763, 0.659402, 0.0057269, 0.801147, 0.646996, 0.383481, 0.861122, 0.323674, 0.0827917, 0.584816, 0.364272, 0.643767, 0.763442, 0.542709, 0.583704, 0.13157, 0.472268, 0.840147, 0.298832, 0.197026, 0.609529, 0.299575, 0.779332, 0.105797, 0.946181, 0.374778, 0.157552, 0.855743, 0.949876, 0.75281, 0.97056, 0.328316, 0.278471, 0.338026, 0.290353, 0.331418, 0.105357, 0.107911, 0.209987, 0.204651, 0.150709, 0.274328, 0.737791, 0.997707, 0.179658, 0.493024, 0.65032, 0.415079, 0.753049, 0.277085, 0.467552, 0.872592, 0.711235, 0.764987, 0.962283, 0.916678, 0.933345, 0.16943, 0.705291, 0.305846, 0.932473, 0.417927, 0.630764, 0.954316, 0.242577, 0.65197, 0.527587, 0.322707, 0.167167, 0.82909, 0.392693, 0.114201, 0.49168, 0.601137, 0.725202, 0.55052, 0.871408, 0.183662, 0.194188, 0.766514, 0.390563, 0.53373, 0.411142, 0.11287, 0.496191, 0.237936, 0.0864019, 0.170401, 0.498972, 0.52159, 0.31857, 0.483729, 0.363289, 0.431386, 0.113659, 0.480874, 0.575185, 0.142799, 0.745861, 0.882621, 0.682881, 0.521802, 0.844527, 0.202177, 0.0689832, 0.439121, 0.0190587, 0.401935, 0.54349, 0.182965, 0.39918, 0.824962, 0.149391, 0.941701, 0.688548, 0.843249, 0.61073, 0.186105, 0.425176, 0.0335142, 0.078846, 0.894642, 0.150805, 0.871669, 0.983689, 0.569739, 0.120006, 0.23462, 0.546894, 0.985899, 0.111177, 0.778787, 0.0306535, 0.530043, 0.934035, 0.600232, 0.795862, 0.000255291, 0.899834, 0.799882, 0.6844, 0.909917, 0.526249, 0.784017, 0.508718, 0.603375, 0.101162, 0.504013, 0.89333, 0.249172, 0.983046, 0.425236, 0.314616, 0.210964, 0.86667, 0.422713, 0.889854, 0.630856, 0.250198, 0.10653, 0.532989, 0.341159, 0.503815, 0.042197, 0.116202, 0.139078, 0.00744486, 0.484724, 0.100958, 0.428136, 0.781813, 0.933248, 0.913441, 0.566981, 0.211166, 0.222149, 0.303675, 0.521641, 0.907715, 0.386349, 0.534989, 0.388098, 0.0928392, 0.741067, 0.453121, 0.120637, 0.344422, 0.28851, 0.42738, 0.221189, 0.558106, 0.616776, 0.927745, 0.71598, 0.960932, 0.211125, 0.795583, 0.218155, 0.327569, 0.97426, 0.366298, 0.132889, 0.273736, 0.784914, 0.57263, 0.600575, 0.592524, 0.612454, 0.233136, 0.181411, 0.298813, 0.983425, 0.931825, 0.432271, 0.375455, 0.348776, 0.704192, 0.3458, 0.469054, 0.206761, 0.545479, 0.319201, 0.0283074, 0.524172, 0.790276, 0.350788, 0.491273, 0.855947, 0.456643, 0.766323, 0.859359, 0.506045, 0.203754, 0.56715, 0.666739, 0.918874, 0.272368, 0.729093, 0.265262, 0.99749, 0.521925, 0.137931, 0.093001, 0.851225, 0.666747, 0.382704, 0.350107, 0.60679, 0.40621, 0.866533, 0.432777, 0.948598, 0.0121469, 0.71365, 0.519644, 0.292866, 0.383114, 0.724785, 0.476142, 0.457834, 0.435974, 0.722377, 0.268621, 0.794421, 0.028675, 0.659385, 0.128917, 0.412119, 0.0739568, 0.036621, 0.145276, 0.13657, 0.860479, 0.0404693, 0.790565, 0.465281, 0.355455, 0.849531, 0.919323, 0.0617039, 0.315882, 0.703688, 0.010304, 0.89633, 0.486141, 0.998679, 0.242657, 0.577039, 0.0329449, 0.848627, 0.932338, 0.109061, 0.719444, 0.0570264, 0.712136, 0.66945, 0.220701, 0.648711, 0.886529, 0.611644, 0.307003, 0.0654794, 0.00418425, 0.574744, 0.326092, 0.390828, 0.805966, 0.671923, 0.843696, 0.631535, 0.46795, 0.259107, 0.660515, 0.679202, 0.176025, 0.0569527, 0.0855054, 0.780762, 0.312956, 0.973318, 0.0683091, 0.840799, 0.24185, 0.225479, 0.369804, 0.209389, 0.757325, 0.648027, 0.781705, 0.0523023, 0.29403, 0.354478, 0.65567, 0.0788939, 0.645401, 0.201949, 0.761682, 0.0419674, 0.39134, 0.966735, 0.928743, 0.330331, 0.516785, 0.878995, 0.288281, 0.932334, 0.523682, 0.715837, 0.465523, 0.545675, 0.985006, 0.118815, 0.346305, 0.922536, 0.315067, 0.974697, 0.0746082, 0.745428, 0.712839, 0.25902, 0.27883, 0.680903, 0.256771, 0.248894, 0.120108, 0.0671847, 0.119086, 0.172175, 0.286801, 0.174667, 0.1063, 0.95757, 0.0951392, 0.0908864, 0.688181, 0.487435, 0.883682, 0.682503, 0.125781, 0.617355, 0.132983, 0.211431, 0.839752, 0.141492, 0.0747301, 0.879295, 0.705781, 0.487312, 0.236955, 0.471991, 0.784116, 0.672602, 0.580948, 0.560414, 0.724544, 0.883303, 0.95667, 0.617553, 0.29172, 0.0741911, 0.961876, 0.42648, 0.246887, 0.286034, 0.794506, 0.58938, 0.750983, 0.554592, 0.734428, 0.458975, 0.450334, 0.255665, 0.1741, 0.673493, 0.123515, 0.125788, 0.738598, 0.164642, 0.865752, 0.69991, 0.356539, 0.137902, 0.711637, 0.0666647, 0.985536, 0.979876, 0.628472, 0.68901, 0.0651761, 0.880762, 0.134784, 0.456508, 0.610558, 0.164991, 0.687468, 0.802499, 0.266486, 0.113039, 0.249944, 0.829623, 0.190044, 0.0325146, 0.385954, 0.103577, 0.432229, 0.658499, 0.518404, 0.288699, 0.800206, 0.305622, 0.658524, 0.569329, 0.682139, 0.389223, 0.986657, 0.638365, 0.683896, 0.734146, 0.467965, 0.863144, 0.349018, 0.857988, 0.519195, 0.137434, 0.198396, 0.47824, 0.33314, 0.58306, 0.819482, 0.131867, 0.978421, 0.634582, 0.191915, 0.302606, 0.795154, 0.808797, 0.101746, 0.191043, 0.382334, 0.0742625, 0.299295, 0.416325, 0.696179, 0.615711, 0.743909, 0.938272, 0.496033, 0.66508, 0.321946, 0.70886, 0.341679, 0.80148, 0.766432, 0.224154, 0.95704, 0.522049, 0.100194, 0.153635, 0.183131, 0.938512, 0.501546, 0.701983, 0.0469377, 0.306475, 0.462542, 0.892279, 0.77836, 0.122795, 0.955546, 0.679641, 0.343777, 0.744099, 0.620283, 0.0510458, 0.621126, 0.497496, 0.0615522, 0.994788, 0.116699, 0.174825, 0.84207, 0.147225, 0.56432, 0.459457, 0.783872, 0.6876, 0.226885, 0.793955, 0.763438, 0.460798, 0.929226, 0.484258, 0.947753, 0.809431, 0.146492, 0.872402, 0.92335, 0.44157, 0.70711, 0.290489, 0.568933, 0.86936, 0.315753, 0.0230588, 0.140049, 0.542548, 0.794032, 0.0363069, 0.263593, 0.78054, 0.0612037, 0.0121797, 0.881876, 0.517335, 0.173431, 0.646599, 0.277209, 0.553398, 0.0854287, 0.283189, 0.575213, 0.129925, 0.257416, 0.798785, 0.944648, 0.950456, 0.0976221, 0.365262, 0.605363, 0.918504, 0.64519, 0.673155, 0.027879, 0.219172, 0.48537, 0.65908, 0.280854, 0.424895, 0.881106, 0.788609, 0.178011, 0.274207, 0.574707, 0.305934, 0.349095, 0.94066, 0.356352, 0.114581, 0.253141, 0.984931, 0.876784, 0.228779, 0.359667, 0.387525, 0.564695, 0.0347474, 0.0232462, 0.92298, 0.845051, 0.142808, 0.323234, 0.0942305, 0.720866, 0.475697, 0.77392, 0.229708, 0.362771, 0.140601, 0.543391, 0.209958, 0.385444, 0.356594, 0.404747, 0.875072, 0.920314, 0.93781, 0.542478, 0.999612, 0.649792, 0.464563, 0.71913, 0.067716, 0.892564, 0.511679, 0.120239, 0.94121, 0.939246, 0.158685, 0.554051, 0.608282, 0.59656, 0.0820175, 0.288989, 0.0551669, 0.60417, 0.183301, 0.695141, 0.457712, 0.2546, 0.851147, 0.433316, 0.381404, 0.408653, 0.302199, 0.181817, 0.139157, 0.687415, 0.717399, 0.543787, 0.903703, 0.635132, 0.308985, 0.639285, 0.746764, 0.395103, 0.220186, 0.449086, 0.430574, 0.446683, 0.840254, 0.948244, 0.594952, 0.977248, 0.600554, 0.154041, 0.411787, 0.634164, 0.174319, 0.0357253, 0.477696, 0.209104, 0.789559, 0.809459, 0.322492, 0.521382, 0.679866, 0.042858, 0.906839, 0.182991, 0.109828, 0.652227, 0.134167, 0.156985, 0.797595, 0.901733, 0.173423, 0.511025, 0.991431, 0.748042, 0.258461, 0.247526, 0.443121, 0.642915, 0.40633, 0.178967, 0.956317, 0.118498, 0.77716, 0.84374, 0.615613, 0.775724, 0.128556, 0.047564, 0.482233, 0.869486, 0.912726, 0.712969, 0.589686, 0.915699, 0.127395, 0.0243428, 0.796528, 0.0271926, 0.276897, 0.854741, 0.273008, 0.409598, 0.272909, 0.611109, 0.385579, 0.855294, 0.0808233, 0.895329, 0.788063, 0.397411, 0.538612, 0.643484, 0.363602, 0.845004, 0.505217, 0.859102, 0.80703, 0.928915, 0.903243, 0.116869, 0.973045, 0.781131, 0.825223, 0.604321, 0.125879, 0.334724, 0.47945, 0.344978, 0.993253, 0.0462239, 0.136637, 0.135684, 0.905821, 0.709746, 0.703002, 0.824723, 0.503736, 0.309801, 0.257925, 0.446654, 0.284797, 0.492379, 0.43401, 0.0674284, 0.495682, 0.787423, 0.247764, 0.806895, 0.693029, 0.93894, 0.369134, 0.0293536, 0.397517, 0.434083, 0.280603, 0.457201, 0.265151, 0.617149, 0.409492, 0.471634, 0.576589, 0.519764, 0.0372819, 0.614149, 0.209851, 0.962954, 0.721739, 0.861157, 0.667498, 0.190374, 0.18033, 0.161539, 0.722929, 0.0673748, 0.466838, 0.636999, 0.439436, 0.414309, 0.471628, 0.119459, 0.791597, 0.0954365, 0.81868, 0.179773, 0.951307, 0.442901, 0.415485, 0.592253, 0.596485, 0.0820338, 0.454377, 0.314596, 0.7888, 0.733904, 0.388865, 0.737712, 0.628816, 0.0052384, 0.921227, 0.200301, 0.875352, 0.675662, 0.708127, 0.0445684, 0.801732, 0.220593, 0.195389, 0.031508, 0.138105, 0.004039, 0.801566, 0.220978, 0.0527361, 0.420341, 0.152275, 0.257702, 0.662879, 0.195477, 0.477988, 0.149647, 0.360582, 0.252035, 0.837836, 0.202909, 0.0443178, 0.124772, 0.519917, 0.792469, 0.950344, 0.556252, 0.393459, 0.626201, 0.895579, 0.0857474, 0.663377, 0.689754, 0.360722, 0.476277, 0.22723, 0.460077, 0.472823, 0.088477, 0.208273, 0.753047, 0.142233, 0.592708, 0.147864, 0.785634, 0.0503793, 0.721425, 0.94303, 0.121167, 0.892101, 0.815383, 0.703281, 0.446439, 0.121052, 0.880847, 0.736922, 0.594894, 0.0383547, 0.411381, 0.800388, 0.530794, 0.948522, 0.803177, 0.0677633, 0.938261, 0.162068, 0.25666, 0.0170452, 0.509109, 0.598514, 0.750054, 0.700235, 0.166511, 0.132547, 0.0892302, 0.268259, 0.519604, 0.323998, 0.888942, 0.884842, 0.464882, 0.964561, 0.298755, 0.926063, 0.704481, 0.577166, 0.878532, 0.323947, 0.649356, 0.108289, 0.438164, 0.0072268, 0.276634, 0.460823, 0.106675, 0.510821, 0.080038, 0.381653, 0.884968, 0.442802, 0.426584, 0.207201, 0.75459, 0.302402, 0.131164, 0.747887, 0.796919, 0.310198, 0.886895, 0.827975, 0.385015, 0.133066, 0.140414, 0.303026, 0.322819, 0.335723, 0.235426, 0.243013, 0.913023, 0.846627, 0.128839, 0.803731, 0.678621, 0.775961, 0.255289, 0.623905, 0.422038, 0.501386, 0.52264, 0.633341, 0.262209, 0.642365, 0.403741, 0.0553783, 0.33729, 0.625458, 0.121564, 0.908396, 0.0465776, 0.0216111, 0.165593, 0.819747, 0.156041, 0.454712, 0.634647, 0.717452, 0.791361, 0.16383, 0.876477, 0.298547, 0.0967544, 0.306887, 0.376036, 0.921137, 0.449657, 0.643716, 0.36668, 0.853546, 0.0979937, 0.608885, 0.127596, 0.274848, 0.477162, 0.355337, 0.203537, 0.196091, 0.0411482, 0.7056, 0.0659719, 0.559514, 0.120639, 0.91403, 0.699591, 0.0606869, 0.286808, 0.147464, 0.0819117, 0.471353, 0.238771, 0.0024005, 0.850257, 0.450605, 0.170032, 0.541669, 0.234009, 0.716294, 0.313126, 0.943393, 0.866585, 0.145735, 0.394582, 0.68414, 0.363647, 0.256421, 0.0112904, 0.0966522, 0.996209, 0.211737, 0.367466, 0.29625, 0.876097, 0.632086, 0.739723, 0.68968, 0.352125, 0.757828, 0.755, 0.341412, 0.991008, 0.0579852, 0.0432854, 0.0779292, 0.346145, 0.434658, 0.345201, 0.246648, 0.117396, 0.49991, 0.448512, 0.223898, 0.359364, 0.402891, 0.374578, 0.556938, 0.0631965, 0.818556, 0.191346, 0.99804, 0.812671, 0.383271, 0.477208, 0.287621, 0.32783, 0.404819, 0.360004, 0.48539, 0.730465, 0.842978, 0.840347, 0.176263, 0.725395, 0.913036, 0.579613, 0.190412, 0.393441, 0.179916, 0.97419, 0.205657, 0.882818, 0.751801, 0.663449, 0.282115, 0.309451, 0.684265, 0.925508, 0.907791, 0.644116, 0.594189, 0.270316, 0.928215, 0.270332, 0.535511, 0.0507398, 0.628708, 0.85227, 0.45383, 0.929312, 0.677593, 0.484119, 0.976435, 0.97058, 0.461061, 0.0915939, 0.341794, 0.211881, 0.734182, 0.578379, 0.505584, 0.253547, 0.575241, 0.403074, 0.554885, 0.791949, 0.551603, 0.192511, 0.62504, 0.352356, 0.467595, 0.955976, 0.430357, 0.1926, 0.869406, 0.636174, 0.391593, 0.737206, 0.488382, 0.711914, 0.713012, 0.718183, 0.130062, 0.203195, 0.185301, 0.721868, 0.382154, 0.225553, 0.830909, 0.549502, 0.887707, 0.564624, 0.707833, 0.861514, 0.692271, 0.223948, 0.0848766, 0.069706, 0.774395, 0.241254, 0.0330149, 0.0621875, 0.830338, 0.711968, 0.825082, 0.765116, 0.410175, 0.468473, 0.723556, 0.53847, 0.721592, 0.688386, 0.996853, 0.495969, 0.308593, 0.130009, 0.136017, 0.186983, 0.773281, 0.464971, 0.267662, 0.366385, 0.706133, 0.352993, 0.381277, 0.927696, 0.436281, 0.115097, 0.224903, 0.182432, 0.324585, 0.853631, 0.962648, 0.426183, 0.972765, 0.754619, 0.932642, 0.0397336, 0.405386, 0.185493, 0.196159, 0.280581, 0.81349, 0.0566108, 0.913126, 0.864805, 0.864243, 0.839135, 0.65982, 0.310596, 0.0306325, 0.719261, 0.91392, 0.682861, 0.286705, 0.495547, 0.837516, 0.877889, 0.103057, 0.0915095, 0.041526, 0.913605, 0.0120425, 0.430544, 0.3469, 0.424993, 0.271809, 0.640018, 0.978747, 0.519083, 0.591846, 0.453999, 0.818611, 0.561709, 0.490296, 0.764526, 0.345333, 0.465684, 0.501756, 0.646381, 0.303442, 0.487852, 0.302947, 0.759262, 0.705049, 0.359549, 0.0306396, 0.521511, 0.855995, 0.763526, 0.301525, 0.0211847, 0.801818, 0.440616, 0.187869, 0.286936, 0.653456, 0.0863641, 0.687108, 0.987247, 0.582493, 0.0787707, 0.215817, 0.152722, 0.727039, 0.680357, 0.157492, 0.0874165, 0.29075, 0.849083, 0.709289, 0.307685, 0.373957, 0.604046, 0.249798, 0.922869, 0.355248, 0.11615, 0.0781376, 0.575865, 0.376602, 0.829088, 0.135778, 0.1659, 0.155543, 0.593435, 0.392356, 0.0452224, 0.474088, 0.291258, 0.989302, 0.340455, 0.341552, 0.0144077, 0.769514, 0.964297, 0.549967, 0.0488852, 0.613462, 0.675892, 0.757522, 0.724489, 0.571236, 0.14291, 0.406721, 0.343369, 0.0858385, 0.186502, 0.806342, 0.539056, 0.536357, 0.904026, 0.70836, 0.450419, 0.713453, 0.0945273, 0.54752, 0.162833, 0.154616, 0.148919, 0.963524, 0.307454, 0.735734, 0.213009, 0.552391, 0.433575, 0.775243, 0.98033, 0.318374, 0.00285737, 0.99413, 0.500573, 0.0649286, 0.85529, 0.957998, 0.514092, 0.375678, 0.958082, 0.0966625, 0.86574, 0.0921497, 0.627249, 0.901373, 0.223073, 0.863927, 0.883334, 0.461885, 0.0646166, 0.653075, 0.366411, 0.61753, 0.919812, 0.851461, 0.591763, 0.173021, 0.742659, 0.258634, 0.999868, 0.633771, 0.734484, 0.126218, 0.322469, 0.609085, 0.391892, 0.294525, 0.0657253, 0.283494, 0.0219703, 0.274235, 0.199938, 0.140622, 0.0261972, 0.0954744, 0.252706, 0.125962, 0.591655, 0.351266, 0.951874, 0.0331499, 0.639152, 0.524904, 0.811898, 0.753506, 0.806572, 0.573111, 0.860953, 0.718553, 0.222265, 0.472788, 0.17718, 0.790505, 0.196329, 0.958922, 0.474081, 0.842605, 0.541059, 0.744722, 0.900755, 0.269413, 0.252577, 0.199723, 0.538515, 0.63466, 0.824158, 0.993387, 0.687465, 0.577214, 0.986416, 0.171009, 0.711906, 0.801219, 0.101932, 0.265538, 0.517818, 0.815548, 0.361354, 0.51904, 0.983438, 0.463077, 0.167169, 0.883352, 0.170694, 0.935116, 0.732944, 0.0358385, 0.269548, 0.838122, 0.986801, 0.338054, 0.0736178, 0.583174, 0.823464, 0.292892, 0.619814, 0.429944, 0.205241, 0.601124, 0.975362, 0.115201, 0.441878, 0.399484, 0.145629, 0.613184, 0.31096, 0.175023, 0.922024, 0.223168, 0.676566, 0.196824, 0.154837, 0.366641, 0.0328393, 0.806666, 0.81512, 0.967253, 0.317381, 0.31028, 0.203464, 0.87059, 0.721569, 0.640017, 0.985287, 0.553971, 0.111783, 0.187386, 0.0354623, 0.123158, 0.277595, 0.895027, 0.499938, 0.826473, 0.645091, 0.861861, 0.362853, 0.53105, 0.0392038, 0.963459, 0.314704, 0.299601, 0.0288469, 0.647459, 0.561967, 0.551995, 0.0351248, 0.231971, 0.726246, 0.124732, 0.443812, 0.0468727, 0.59497, 0.0819643, 0.617699, 0.367713, 0.796483, 0.0771232, 0.556894, 0.444883, 0.969592, 0.733371, 0.169334, 0.308866, 0.459915, 0.833199, 0.086676, 0.0771984, 0.96669, 0.567968, 0.322198, 0.098317, 0.207871, 0.242587, 0.293557, 0.0314135, 0.7136, 0.689609, 0.357997, 0.76835, 0.761416, 0.513577, 0.0437506, 0.248481, 0.8781, 0.938893, 0.452103, 0.803518, 0.939733, 0.49525, 0.635703, 0.592329, 0.723816, 0.383401, 0.730649, 0.824321, 0.616737, 0.0221482, 0.73448, 0.55418, 0.4532, 0.35911, 0.165987, 0.549263, 0.713057, 0.970698, 0.0558401, 0.0478223, 0.501555, 0.877499, 0.323109, 0.527453, 0.138095, 0.54054, 0.151781, 0.410274, 0.182295, 0.288251, 0.982909, 0.511266, 0.461464, 0.648477, 0.188035, 0.520581, 0.239408, 0.491809, 0.718919, 0.0938332, 0.285729, 0.106841, 0.606726, 0.490935, 0.86651, 0.180865, 0.985614, 0.159484, 0.0834094, 0.0251471, 0.881426, 0.634299, 0.803784, 0.124723, 0.363128, 0.96287, 0.48943, 0.689214, 0.565162, 0.0180327, 0.718634, 0.835039, 0.711085, 0.140549, 0.549321, 0.581991, 0.0430252, 0.622331, 0.608388, 0.798413, 0.0259461, 0.939007, 0.80905, 0.393104, 0.592326, 0.919957, 0.0515215, 0.21022, 0.816602, 0.902884, 0.570879, 0.64424, 0.585107, 0.0248819, 0.179805, 0.978196, 0.102385, 0.613371, 0.917875, 0.0269309, 0.837388, 0.103777, 0.177646, 0.0352003, 0.548149, 0.326652, 0.889184, 0.156289, 0.0854004, 0.0193054, 0.928428, 0.396445, 0.381079, 0.296542, 0.554379, 0.854839, 0.97794, 0.454189, 0.133098, 0.240306, 0.279264, 0.377384, 0.777238, 0.124053, 0.745216, 0.726462, 0.361903, 0.568819, 0.211092, 0.505899, 0.976372, 0.182271, 0.293568, 0.00238258, 0.856982, 0.183392, 0.18003, 0.713097, 0.977668, 0.100877, 0.349218, 0.147611, 0.315809, 0.603447, 0.64022, 0.0857591, 0.896518, 0.651759, 0.139246, 0.55121, 0.595465, 0.690662, 0.923067, 0.732652, 0.460265, 0.892629, 0.958834, 0.8925, 0.174999, 0.546506, 0.0428178, 0.250985, 0.237769, 0.8357, 0.707597, 0.419884, 0.668426, 0.418209, 0.0162044, 0.563968, 0.656426, 0.262716, 0.377029, 0.146079, 0.117027, 0.115488, 0.683381, 0.875439, 0.87393, 0.140898, 0.537138, 0.444611, 0.797474, 0.317486, 0.972075, 0.394308, 0.329786, 0.605717, 0.49305, 0.764609, 0.958847, 0.113853, 0.450245, 0.760901, 0.933014, 0.050825, 0.134767, 0.855269, 0.502479, 0.898026, 0.391195, 0.0719292, 0.636708, 0.688786, 0.10816, 0.0163563, 0.251003, 0.197639, 0.880459, 0.441534, 0.131779, 0.815068, 0.88632, 0.426271, 0.0119967, 0.14107, 0.626235, 0.738132, 0.617686, 0.949852, 0.257557, 0.0580807, 0.51944, 0.162752, 0.840121, 0.320176, 0.446263, 0.574496, 0.46924, 0.481378, 0.117363, 0.528148, 0.536896, 0.810889, 0.0764278, 0.158937, 0.85015, 0.898797, 0.592393, 0.771639, 0.801977, 0.114191, 0.339039, 0.0259773, 0.680674, 0.419337, 0.599168, 0.0757838, 0.512989, 0.732161, 0.507442, 0.869276, 0.321673, 0.731624, 0.383285, 0.38206, 0.801143, 0.438091, 0.560173, 0.660212, 0.23746, 0.731079, 0.318417, 0.36504, 0.876286, 0.736329, 0.791173, 0.956445, 0.323262, 0.947492, 0.473555, 0.485068, 0.740577, 0.113883, 0.542844, 0.99052, 0.314031, 0.70648, 0.257082, 0.215745, 0.745425, 0.745272, 0.113282, 0.846858, 0.424482, 0.829325, 0.165168, 0.514918, 0.695552, 0.301505, 0.702294, 0.632457, 0.095175, 0.179056, 0.469551, 0.118574, 0.0442971, 0.684475, 0.449821, 0.864671, 0.567892, 0.576176, 0.632051, 0.885669, 0.204395, 0.0971353, 0.352499, 0.738907, 0.466793, 0.496468, 0.351037, 0.243115, 0.911098, 0.227332, 0.644997, 0.637867, 0.332965, 0.208059, 0.216949, 0.46867, 0.886851, 0.227812, 0.671073, 0.474314, 0.763482, 0.925339, 0.0540861, 0.972279, 0.28742, 0.325972, 0.0267175, 0.266578, 0.0406248, 0.576108, 0.113293, 0.8665, 0.628075, 0.516012, 0.780659, 0.810629, 0.660676, 0.0992584, 0.352639, 0.394222, 0.15539, 0.373866, 0.365409, 0.501467, 0.90406, 0.632545, 0.806643, 0.140516, 0.111344, 0.320082, 0.192266, 0.267615, 0.354809, 0.875555, 0.0405757, 0.307203, 0.691234, 0.0835093, 0.543558, 0.716852, 0.671519, 0.265425, 0.366704, 0.787857, 0.372456, 0.659346, 0.244761, 0.395423, 0.353887, 0.654218, 0.880588, 0.62891, 0.478918, 0.030856, 0.744313, 0.196252, 0.381714, 0.832991, 0.572231, 0.960189, 0.257614, 0.253268, 0.797496, 0.69877, 0.926288, 0.079237, 0.609679, 0.648218, 0.735571, 0.440182, 0.864101, 0.161878, 0.159404, 0.415711, 0.593876, 0.995945, 0.140339, 0.572495, 0.841811, 0.657716, 0.19231, 0.0181406, 0.807133, 0.566996, 0.608455, 0.224459, 0.4223, 0.435267, 0.662959, 0.886933, 0.183438, 0.692375, 0.779116, 0.8541, 0.664286, 0.929841, 0.964775, 0.422457, 0.929662, 0.878484, 0.767223, 0.537799, 0.79105, 0.453013, 0.658287, 0.888925, 0.0472853, 0.736983, 0.0629988, 0.772934, 0.225754, 0.783285, 0.548115, 0.751911, 0.740392, 0.144652, 0.950571, 0.562828, 0.510774, 0.61591, 0.776793, 0.909532, 0.761456, 0.0999396, 0.688207, 0.97207, 0.318053, 0.355286, 0.771431, 0.750133, 0.516243, 0.190795, 0.427775, 0.283418, 0.286814, 0.401656, 0.346635, 0.352157, 0.937786, 0.024645, 0.278092, 0.432369, 0.449559, 0.62551, 0.740431, 0.543411, 0.897199, 0.303562, 0.259347, 0.200149, 0.680107, 0.192251, 0.0760841, 0.840244, 0.172685, 0.892975, 0.352777, 0.549554, 0.0523146, 0.303126, 0.0260337, 0.036535, 0.980034, 0.102809, 0.814378, 0.835065, 0.386273, 0.6071, 0.0930895, 0.871808, 0.193911, 0.430767, 0.885207, 0.254736, 0.00908399, 0.998593, 0.604866, 0.973251, 0.193466, 0.463873, 0.27736, 0.0773324, 0.849132, 0.844, 0.125167, 0.938337, 0.785522, 0.444699, 0.140913, 0.0915302, 0.467264, 0.67407, 0.203647, 0.558308, 0.314105, 0.241028, 0.205094, 0.477013, 0.631483, 0.169874, 0.146013, 0.185098, 0.0824085, 0.306384, 0.0702848, 0.0203417, 0.131966, 0.792877, 0.360839, 0.266718, 0.232539, 0.250638, 0.476562, 0.477389, 0.849534, 0.802507, 0.943572, 0.641526, 0.845753, 0.219046, 0.651024, 0.99469, 0.202947, 0.821584, 0.433272, 0.215533, 0.391946, 0.229529, 0.835089, 0.0849454, 0.455666, 0.998175, 0.634306, 0.0763347, 0.567693, 0.796136, 0.446085, 0.73937, 0.522221, 0.790854, 0.802317, 0.442015, 0.575168, 0.600855, 0.666882, 0.381843, 0.601493, 0.544687, 0.733424, 0.406066, 0.573913, 0.19919, 0.582, 0.0550953, 0.569645, 0.0875205, 0.126882, 0.543065, 0.927089, 0.168898, 0.986988, 0.906766, 0.908712, 0.178763, 0.849812, 0.687846, 0.923719, 0.105701, 0.833577, 0.865992, 0.208242, 0.224616, 0.900711, 0.593214, 0.914112, 0.377051, 0.427738, 0.379995, 0.00788512, 0.0284525, 0.286179, 0.861688, 0.1796, 0.703761, 0.67592, 0.0535396, 0.0522033, 0.723248, 0.305373, 0.105823, 0.219043, 0.0185547, 0.502168, 0.45647, 0.710568, 0.323213, 0.390663, 0.324126, 0.753844, 0.257257, 0.00722329, 0.805279, 0.399644, 0.00685557, 0.565763, 0.931747, 0.306555, 0.376521, 0.635822, 0.323792, 0.616773, 0.0146792, 0.164804, 0.35065, 0.150957, 0.754849, 0.833571, 0.987182, 0.469289, 0.492988, 0.680896, 0.502522, 0.222399, 0.962471, 0.631338, 0.725246, 0.817241, 0.117617, 0.0647289, 0.149253, 0.17814, 0.937932, 0.228594, 0.997632, 0.00808709, 0.975811, 0.268736, 0.0984531, 0.998211, 0.735972, 0.443816, 0.855411, 0.0915925, 0.865221, 0.618293, 0.515434, 0.563065, 0.863216, 0.952183, 0.259968, 0.703818, 0.0249326, 0.8609, 0.219079, 0.667082, 0.525095, 0.327602, 0.223916, 0.0785055, 0.149047, 0.929653, 0.959718, 0.4298, 0.52351, 0.411019, 0.911005, 0.605485, 0.681659, 0.363473, 0.269242, 0.0177429, 0.690073, 0.81481, 0.521546, 0.218472, 0.316103, 0.874616, 0.909483, 0.813413, 0.0632681, 0.277424, 0.690147, 0.851992, 0.0892098, 0.688557, 0.937125, 0.833351, 0.113076, 0.903101, 0.176372, 0.105112, 0.479078, 0.434056, 0.577398, 0.386865, 0.367798, 0.026212, 0.899348, 0.585439, 0.236936, 0.622744, 0.0752682, 0.221239, 0.894639, 0.218937, 0.975631, 0.096821, 0.0284117, 0.072328, 0.0827532, 0.787252, 0.515446, 0.81932, 0.582593, 0.191294, 0.42557, 0.629784, 0.362662, 0.946834, 0.845638, 0.994889, 0.692884, 0.153913, 0.0978367, 0.613994, 0.48708, 0.859723, 0.916252, 0.328909, 0.102319, 0.812725, 0.227103, 0.405228, 0.523504, 0.243892, 0.859925, 0.801817, 0.0011166, 0.975437, 0.273452, 0.564827, 0.449715, 0.036097, 0.292633, 0.68235, 0.00398159, 0.87888, 0.403724, 0.356468, 0.506308, 0.367138, 0.458221, 0.924481, 0.950841, 0.530794, 0.150865, 0.43758, 0.0344036, 0.00665103, 0.082743, 0.866126, 0.20521, 0.73732, 0.591323, 0.573932, 0.935947, 0.579041, 0.618868, 0.262846, 0.596978, 0.116659, 0.0239183, 0.68981, 0.695968, 0.225083, 0.411562, 0.580573, 0.52255, 0.428126, 0.307788, 0.0858744, 0.940854, 0.0113875, 0.754918, 0.88299, 0.559396, 0.340941, 0.519733, 0.39149, 0.555568, 0.744767, 0.878541, 0.790263, 0.974643, 0.41797, 0.211371, 0.620027, 0.0685091, 0.535988, 0.637239, 0.529062, 0.576366, 0.794985, 0.621648, 0.439529, 0.504987, 0.242352, 0.346939, 0.529057, 0.0434876, 0.505588, 0.542285, 0.146307, 0.712506, 0.363234, 0.628982, 0.313431, 0.750136, 0.874787, 0.596567, 0.0311857, 0.839364, 0.995601, 0.576761, 0.687218, 0.885489, 0.58522, 0.44643, 0.585192, 0.570862, 0.0743739, 0.0430503, 0.509719, 0.154523, 0.88849, 0.33323, 0.132801, 0.0657563, 0.392214, 0.291483, 0.691657, 0.719635, 0.14432, 0.628194, 0.510175, 0.772377, 0.0521979, 0.614788, 0.863319, 0.116435, 0.13198, 0.541235, 0.607762, 0.179594, 0.109577, 0.466121, 0.0622991, 0.201895, 0.168892, 0.380382, 0.75734, 0.53331, 0.734033, 0.043109, 0.346835, 0.730065, 0.288959, 0.455534, 0.680757, 0.684472, 0.383187, 0.655883, 0.651751, 0.272637, 0.460788, 0.756032, 0.345337, 0.486229, 0.614304, 0.442909, 0.25913, 0.432749, 0.211558, 0.742106, 0.495101, 0.197951, 0.801089, 0.224768, 0.861973, 0.389373, 0.920927, 0.55556, 0.85315, 0.719037, 0.447062, 0.742733, 0.357599, 0.389938, 0.709586, 0.975127, 0.122511, 0.834877, 0.70683, 0.924272, 0.981302, 0.949697, 0.939456, 0.29405, 0.611033, 0.0782227, 0.654357, 0.452443, 0.0590294, 0.320334, 0.254831, 0.262204, 0.202811, 0.77546, 0.613065, 0.831814, 0.936336, 0.147728, 0.400054, 0.169029, 0.0624219, 0.742198, 0.123529, 0.766895, 0.979775, 0.49911, 0.64663, 0.912194, 0.207431, 0.829884, 0.185013, 0.556736, 0.0521908, 0.515951, 0.587696, 0.667938, 0.465566, 0.780172, 0.839661, 0.533201, 0.736327, 0.443875, 0.187566, 0.914724, 0.903275, 0.048623, 0.638303, 0.424, 0.897581, 0.664215, 0.199464, 0.941401, 0.89244, 0.984834, 0.672877, 0.863197, 0.824398, 0.851614, 0.345036, 0.992657, 0.209134, 0.0919466, 0.557075, 0.033277, 0.33972, 0.189897, 0.315651, 0.272392, 0.838766, 0.478908, 0.996954, 0.611741, 0.547869, 0.0702573, 0.75574, 0.322897, 0.404965, 0.123521, 0.858347, 0.833113, 0.129333, 0.627266, 0.0282441, 0.18176, 0.831762, 0.43121, 0.164116, 0.764437, 0.242359, 0.944137, 0.527344, 0.0566526, 0.801946, 0.882477, 0.270734, 0.744573, 0.264837, 0.310905, 0.203049, 0.598361, 0.722903, 0.294378, 0.480961, 0.231185, 0.623784, 0.0165777, 0.911747, 0.836799, 0.40649, 0.370294, 0.0891179, 0.777113, 0.0462116, 0.600887, 0.833337, 0.126701, 0.749949, 0.609225, 0.533643, 0.25853, 0.497521, 0.000704963, 0.6763, 0.835601, 0.557648, 0.218548, 0.7903, 0.333088, 0.998962, 0.692565, 0.608204, 0.672425, 0.186048, 0.228699, 0.615913, 0.474062, 0.0190515, 0.166839, 0.276867, 0.789744, 0.359525, 0.457662, 0.672122, 0.170369, 0.901702, 0.294395, 0.373035, 0.597311, 0.400003, 0.280115, 0.643847, 0.139061, 0.384005, 0.931499, 0.811971, 0.308691, 0.0389924, 0.83356, 0.570812, 0.618889, 0.670241, 0.0155265, 0.474782, 0.122035, 0.331081, 0.507853, 0.195582, 0.342751, 0.259943, 0.917701, 0.66449, 0.743213, 0.893463, 0.364383, 0.442529, 0.163537, 0.283688, 0.807777, 0.611442, 0.454316, 0.22006, 0.953012, 0.156561, 0.566899, 0.312106, 0.475521, 0.210756, 0.920142, 0.137471, 0.669088, 0.0585373, 0.836081, 0.191608, 0.254845, 0.486011, 0.075566, 0.622073, 0.210472, 0.0907429, 0.425509, 0.16353, 0.523425, 0.54579, 0.368517, 0.535908, 0.0875819, 0.680664, 0.329899, 0.532038, 0.089285, 0.85776, 0.777489, 0.859216, 0.288147, 0.983525, 0.203696, 0.165571, 0.809551, 0.636441, 0.776048, 0.226028, 0.721532, 0.62279, 0.698789, 0.285756, 0.212431, 0.957557, 0.196306, 0.54497, 0.40739, 0.559639, 0.966, 0.950159, 0.226812, 0.253332, 0.544645, 0.216067, 0.613898, 0.963088, 0.853584, 0.16471, 0.428458, 0.85613, 0.732022, 0.744422, 0.202531, 0.0674777, 0.037437, 0.755197, 0.0188698, 0.569553, 0.700514, 0.561545, 0.861676, 0.217073, 0.15402, 0.106327, 0.765353, 0.167019, 0.894573, 0.936287, 0.602059, 0.416865, 0.0755147, 0.00253465, 0.123654, 0.542248, 0.556168, 0.293051, 0.075411, 0.195429, 0.302439, 0.780352, 0.845063, 0.559801, 0.580377, 0.871613, 0.761807, 0.790887, 0.31054, 0.355577, 0.383535, 0.771371, 0.942595, 0.370097, 0.711186, 0.304642, 0.950213, 0.740567, 0.412174, 0.692508, 0.770162, 0.296496, 0.158796, 0.377169, 0.642188, 0.921547, 0.275625, 0.750651, 0.595328, 0.163743, 0.760417, 0.69372, 0.74179, 0.950827, 0.20372, 0.085737, 0.812048, 0.852176, 0.906627, 0.380317, 0.00976704, 0.00843117, 0.333703, 0.718039, 0.585602, 0.119216, 0.085977, 0.218696, 0.479175, 0.981356, 0.403643, 0.195815, 0.470633, 0.599814, 0.642532, 0.0590197, 0.190236, 0.437582, 0.656899, 0.910241, 0.702452, 0.58384, 0.80942, 0.867268, 0.53488, 0.219692, 0.00706689, 0.663453, 0.808216, 0.601974, 0.376532, 0.83036, 0.629283, 0.883264, 0.193387, 0.0443994, 0.0761849, 0.997602, 0.197784, 0.699003, 0.896512, 0.171291, 0.109706, 0.142077, 0.40578, 0.95964, 0.248552, 0.285008, 0.830174, 0.964721, 0.775325, 0.321831, 0.604808, 0.754044, 0.64506, 0.562077, 0.542853, 0.513915, 0.448492, 0.196941, 0.656907, 0.0488933, 0.617255, 0.580532, 0.0304698, 0.282691, 0.925985, 0.278908, 0.608455, 0.247628, 0.264545, 0.874203, 0.0352378, 0.378687, 0.978938, 0.708673, 0.83408, 0.333302, 0.406912, 0.47241, 0.532175, 0.846942, 0.230808, 0.498074, 0.737747, 0.838437, 0.827828, 0.372765, 0.716195, 0.0031591, 0.60139, 0.239205, 0.362793, 0.368054, 0.0469707, 0.243922, 0.917699, 0.330605, 0.884813, 0.964747, 0.714459, 0.0288523, 0.872513, 0.892936, 0.110412, 0.671794, 0.0569587, 0.392471, 0.0335411, 0.546055, 0.620579, 0.996046, 0.629146, 0.720871, 0.424433, 0.18234, 0.970005, 0.37306, 0.193882, 0.16579, 0.67068, 0.344031, 0.673785, 0.677497, 0.116794, 0.612862, 0.430412, 0.0718545, 0.965153, 0.0675488, 0.420747, 0.0240714, 0.560629, 0.736834, 0.202314, 0.168625, 0.879575, 0.350342, 0.0633921, 0.320659, 0.651919, 0.93551, 0.0287724, 0.401608, 0.619234, 0.440252, 0.46345, 0.187329, 0.766523, 0.953905, 0.11476, 0.877794, 0.540893, 0.711903, 0.870188, 0.605244, 0.580351, 0.475272, 0.200008, 0.334535, 0.951009, 0.148014, 0.660032, 0.282946, 0.293743, 0.640482, 0.295294, 0.43565, 0.459423, 0.369859, 0.14906, 0.100024, 0.979403, 0.619681, 0.225737, 0.159481, 0.166316, 0.431837, 0.702767, 0.00762606, 0.382219, 0.821446, 0.665227, 0.665509, 0.393431, 0.174661, 0.247567, 0.352685, 0.0757953, 0.447083, 0.00220328, 0.94772, 0.172234, 0.659594, 0.182595, 0.658573, 0.926163, 0.395575, 0.833623, 0.586329, 0.446466, 0.248359, 0.43228, 0.286672, 0.637918, 0.818844, 0.505608, 0.924497, 0.876322, 0.486439, 0.492004, 0.116082, 0.419319, 0.371351, 0.112833, 0.799946, 0.813323, 0.627463, 0.626841, 0.212818, 0.080466, 0.45839, 0.936047, 0.330806, 0.396407, 0.128132, 0.337196, 0.508015, 0.276482, 0.469119, 0.416351, 0.418221, 0.256517, 0.433233, 0.0633748, 0.64523, 0.375232, 0.772746, 0.748978, 0.231822, 0.0306966, 0.482867, 0.600628, 0.639023, 0.564375, 0.263144, 0.690557, 0.978581, 0.779492, 0.344248, 0.563673, 0.919689, 0.139741, 0.746071, 0.48462, 0.771355, 0.508453, 0.877165, 0.881915, 0.329949, 0.271941, 0.992272, 0.955772, 0.592646, 0.0958913, 0.971883, 0.32395, 0.668041, 0.726392, 0.607352, 0.451372, 0.248852, 0.681079, 0.348441, 0.389822, 0.947261, 0.859747, 0.0752741, 0.00475409, 0.880169, 0.495632, 0.552549, 0.932897, 0.0370653, 0.158477, 0.396098, 0.336555, 0.147542, 0.244161, 0.800122, 0.161507, 0.317774, 0.747631, 0.105783, 0.913389, 0.217816, 0.689807, 0.407019, 0.387921, 0.796469, 0.778097, 0.99188, 0.842639, 0.973156, 0.0750759, 0.391345, 0.249398, 0.235551, 0.732391, 0.421792, 0.113257, 0.563915, 0.58631, 0.111841, 0.869968, 0.0037584, 0.941006, 0.686305, 0.589205, 0.320806, 0.729806, 0.580344, 0.939498, 0.209748, 0.925537, 0.189512, 0.311534, 0.942974, 0.611348, 0.755157, 0.968464, 0.94105, 0.154846, 0.0839139, 0.374204, 0.440558, 0.488214, 0.665687, 0.783799, 0.543538, 0.363276, 0.600286, 0.387724, 0.768738, 0.244694, 0.98572, 0.11021, 0.674951, 0.360568, 0.0993691, 0.121901, 0.218621, 0.87908, 0.625172, 0.286251, 0.0200376, 0.130153, 0.309825, 0.509561, 0.624001, 0.0635901, 0.799018, 0.570478, 0.359543, 0.383777, 0.922699, 0.00686779, 0.699793, 0.7135, 0.52636, 0.183373, 0.200387, 0.414875, 0.638781, 0.685314, 0.696136, 0.654266, 0.635831, 0.8221, 0.0593308, 0.455524, 0.565491, 0.394954, 0.0464883, 0.623067, 0.949965, 0.902042, 0.947205, 0.1711, 0.937498, 0.0470314, 0.432514, 0.295752, 0.728123, 0.246107, 0.518614, 0.159337, 0.0283117, 0.680406, 0.30313, 0.944064, 0.603427, 0.584558, 0.279374, 0.221425, 0.0173622, 0.351158, 0.873431, 0.59189, 0.333288, 0.803731, 0.455546, 0.324609, 0.587345, 0.510321, 0.265491, 0.916252, 0.205887, 0.2905, 0.756927, 0.62592, 0.701707, 0.524933, 0.0732553, 0.701777, 0.365049, 0.557713, 0.00681914, 0.281786, 0.52879, 0.291129, 0.53505, 0.700351, 0.0604884, 0.340905, 0.778127, 0.329368, 0.778571, 0.584514, 0.407648, 0.39103, 0.395246, 0.670026, 0.638777, 0.969351, 0.500163, 0.680367, 0.508428, 0.115356, 0.804179, 0.953212, 0.572265, 0.371534, 0.103027, 0.0456428, 0.210913, 0.179688, 0.493465, 0.565033, 0.283612, 0.607693, 0.906922, 0.837819, 0.899815, 0.0851523, 0.626258, 0.41873, 0.667188, 0.273192, 0.653154, 0.46232, 0.586902, 0.907028, 0.989101, 0.396109, 0.242971, 0.711676, 0.0384654, 0.572655, 0.233847, 0.139856, 0.809284, 0.381491, 0.442258, 0.818172, 0.546706, 0.368972, 0.346516, 0.0577279, 0.212582, 0.44512, 0.943408, 0.812529, 0.258691, 0.994612, 0.622952, 0.85047, 0.978712, 0.555412, 0.785713, 0.0686208, 0.790245, 0.635581, 0.326273, 0.324096, 0.1216, 0.588925, 0.937101, 0.0580164, 0.532749, 0.753574, 0.298395, 0.708837, 0.925584, 0.314537, 0.0199974, 0.914857, 0.0709083, 0.365013, 0.766875, 0.253048, 0.446831, 0.739593, 0.943318, 0.948265, 0.854331, 0.964466, 0.591531, 0.763801, 0.927365, 0.071033, 0.904064, 0.224232, 0.593028, 0.508106, 0.866237, 0.17225, 0.218926, 0.529941, 0.0546165, 0.475684, 0.428893, 0.849621, 0.779129, 0.998162, 0.39752, 0.46901, 0.103009, 0.0545734, 0.815139, 0.357352, 0.271335, 0.713358, 0.100985, 0.464451, 0.163076, 0.401539, 0.438434, 0.549619, 0.479359, 0.851188, 0.699579, 0.745942, 0.425003, 0.481552, 0.143529, 0.952757, 0.983489, 0.617207, 0.534987, 0.481627, 0.45129, 0.727141, 0.438207, 0.716823, 0.475713, 0.6761, 0.191068, 0.0135497, 0.371372, 0.950274, 0.132142, 0.138519, 0.431744, 0.044696, 0.143351, 0.964098, 0.0737461, 0.2113, 0.851505, 0.495653, 0.431771, 0.725464, 0.130739, 0.915484, 0.146845, 0.285753, 0.998684, 0.707186, 0.00516941, 0.26057, 0.103101, 0.0908891, 0.290059, 0.672285, 0.0566395, 0.749191, 0.56508, 0.480546, 0.925915, 0.889116, 0.753385, 0.151551, 0.829278, 0.622423, 0.281648, 0.981675, 0.789335, 0.648073, 0.330195, 0.706532, 0.991695, 0.624727, 0.912806, 0.222264, 0.686186, 0.292185, 0.62477, 0.551049, 0.296795, 0.260681, 0.249491, 0.887398, 0.312407, 0.3111, 0.450064, 0.228129, 0.300622, 0.0268301, 0.357236, 0.372048, 0.394023, 0.611144, 0.1639, 0.263486, 0.52356, 0.373948, 0.755847, 0.342152, 0.409573, 0.53276, 0.668326, 0.889879, 0.0864506, 0.355495, 0.878126, 0.726512, 0.903876, 0.000187004, 0.358175, 0.140873, 0.775369, 0.018159, 0.196947, 0.095644, 0.105281, 0.645324, 0.428589, 0.0170538, 0.848981, 0.494392, 0.433215, 0.735048, 0.611888, 0.892693, 0.231126, 0.653006, 0.958474, 0.801838, 0.813979, 0.646147, 0.650979, 0.389706, 0.915836, 0.451289, 0.143266, 0.738046, 0.423176, 0.282744, 0.690591, 0.570777, 0.255477, 0.337051, 0.77689, 0.277745, 0.539835, 0.459001, 0.909962, 0.265262, 0.34509, 0.321861, 0.0539542, 0.846826, 0.996099, 0.481874, 0.708116, 0.850162, 0.369266, 0.094268, 0.0749089, 0.958772, 0.514745, 0.121995, 0.636401, 0.62874, 0.163716, 0.969632, 0.981522, 0.473334, 0.496228, 0.0480764, 0.764567, 0.937061, 0.929395, 0.363888, 0.282947, 0.938167, 0.428342, 0.768651, 0.907915, 0.974172, 0.398318, 0.16123, 0.409964, 0.803203, 0.740767, 0.891692, 0.39842, 0.523639, 0.314543, 0.456075, 0.150667, 0.279852, 0.422093, 0.465474, 0.264575, 0.677157, 0.544893, 0.904432, 0.99908, 0.793004, 0.775158, 0.432617, 0.484001, 0.931907, 0.734817, 0.409538, 0.818343, 0.172727, 0.640275, 0.508192, 0.492913, 0.169585, 0.15526, 0.31094, 0.510842, 0.799051, 0.0744766, 0.95865, 0.0787125, 0.187659, 0.744356, 0.424918, 0.651432, 0.399407, 0.422122, 0.234407, 0.867176, 0.0031812, 0.576058, 0.0765145, 0.430805, 0.847064, 0.614349, 0.521165, 0.811179, 0.0851852, 0.863514, 0.540318, 0.190077, 0.876957, 0.0796464, 0.14774, 0.355131, 0.0387811, 0.844614, 0.428063, 0.737132, 0.591586, 0.497913, 0.904092, 0.235953, 0.787808, 0.147862, 0.0467231, 0.767655, 0.578869, 0.141525, 0.226493, 0.276889, 0.375777, 0.597596, 0.509915, 0.911535, 0.155048, 0.0807722, 0.593731, 0.475499, 0.534079, 0.326091, 0.456234, 0.469692, 0.386506, 0.376216, 0.130604, 0.871723, 0.63914, 0.269276, 0.26115, 0.0649642, 0.927679, 0.428795, 0.422493, 0.512882, 0.805651, 0.17752, 0.645434, 0.574177, 0.74434, 0.134506, 0.924828, 0.449199, 0.616417, 0.0897774, 0.563852, 0.0430616, 0.766246, 0.984203, 0.251402, 0.502739, 0.70647, 0.253403, 0.840979, 0.00160235, 0.626249, 0.688034, 0.276211, 0.0338151, 0.721406, 0.184782, 0.0933805, 0.469703, 0.0579994, 0.973281, 0.328976, 0.0224026, 0.0120294, 0.952645, 0.434664, 0.510599, 0.468921, 0.849224, 0.0732937, 0.307609, 0.105425, 0.930987, 0.830965, 0.143655, 0.827359, 0.24991, 0.547596, 0.58949, 0.630434, 0.272995, 0.910347, 0.553301, 0.398667, 0.37172, 0.565485, 0.312348, 0.0207811, 0.0938434, 0.431078, 0.874804, 0.0382148, 0.245888, 0.916753, 0.0281113, 0.975986, 0.928301, 0.898875, 0.284067, 0.455321, 0.519795, 0.410715, 0.728965, 0.509349, 0.0262562, 0.377225, 0.647666, 0.102608, 0.483928, 0.985199, 0.332942, 0.862284, 0.539911, 0.776392, 0.362682, 0.944709, 0.952443, 0.0163763, 0.0530153, 0.584523, 0.452316, 0.346231, 0.769532, 0.359455, 0.698313, 0.333678, 0.0630267, 0.0613665, 0.292989, 0.136602, 0.657469, 0.514898, 0.0925696, 0.245946, 0.399356, 0.00502625, 0.113463, 0.298903, 0.0883632, 0.593901, 0.940429, 0.715745, 0.557883, 0.442471, 0.600357, 0.558476, 0.381213, 0.713004, 0.700084, 0.63013, 0.853213, 0.459162, 0.514956, 0.191383, 0.415676, 0.554952, 0.36569, 0.562775, 0.398038, 0.34118, 0.379005, 0.0318352, 0.369871, 0.0846944, 0.571178, 0.662504, 0.0934849, 0.609795, 0.0044253, 0.248656, 0.713574, 0.145329, 0.375437, 0.997878, 0.0519915, 0.707906, 0.751402, 0.537598, 0.275107, 0.726846, 0.950406, 0.120217, 0.510785, 0.28646, 0.99745, 0.662108, 0.037174, 0.704815, 0.96889, 0.585646, 0.621016, 0.253529, 0.702981, 0.384114, 0.493708, 0.946507, 0.349568, 0.308275, 0.657793, 0.260429, 0.703277, 0.224442, 0.178678, 0.0533109, 0.408747, 0.222425, 0.259758, 0.201722, 0.481596, 0.461603, 0.583516, 0.548155, 0.557014, 0.950552, 0.438872, 0.339406, 0.982351, 0.545019, 0.876471, 0.379414, 0.817809, 0.116976, 0.740747, 0.541459, 0.650105, 0.010522, 0.411823, 0.790107, 0.581072, 0.493902, 0.178236, 0.0510262, 0.793219, 0.721524, 0.0202778, 0.967812, 0.442783, 0.585765, 0.506299, 0.455301, 0.982905, 0.218136, 0.367442, 0.711311, 0.951539, 0.511261, 0.559317, 0.741668, 0.0389977, 0.0124546, 0.923073, 0.634987, 0.710564, 0.714429, 0.154461, 0.314793, 0.270273, 0.48032, 0.678968, 0.650322, 0.120074, 0.154, 0.863101, 0.660725, 0.989582, 0.851138, 0.171238, 0.468959, 0.564795, 0.0262704, 0.613367, 0.899521, 0.186535, 0.390592, 0.451016, 0.561485, 0.742754, 0.323051, 0.382154, 0.0792466, 0.735059, 0.606898, 0.294006, 0.912585, 0.5191, 0.117282, 0.878891, 0.0961379, 0.838315, 0.405403, 0.858181, 0.989743, 0.729755, 0.162535, 0.67851, 0.542451, 0.405107, 0.0865721, 0.707122, 0.15019, 0.240717, 0.39602, 0.613774, 0.487051, 0.670991, 0.57201, 0.674157, 0.371978, 0.34165, 0.825731, 0.420471, 0.581756, 0.685447, 0.377548, 0.361245, 0.640912, 0.874889, 0.109935, 0.718771, 0.38296, 0.608281, 0.491219, 0.216237, 0.729194, 0.340244, 0.603779, 0.921871, 0.329327, 0.208833, 0.924213, 0.421747, 0.531276, 0.00795173, 0.918173, 0.0789264, 0.130723, 0.910299, 0.0848694, 0.754063, 0.17522, 0.484633, 0.0412105, 0.0334952, 0.62661, 0.0299762, 0.371506, 0.524782, 0.650564, 0.70848, 0.506701, 0.200102, 0.215629, 0.0784514, 0.504449, 0.709497, 0.149314, 0.28348, 0.216472, 0.0615314, 0.71074, 0.717697, 0.105789, 0.88394, 0.257676, 0.912471, 0.853964, 0.0569171, 0.832451, 0.206953, 0.0555372, 0.18866, 0.120599, 0.79349, 0.0556901, 0.0996212, 0.669235, 0.929572, 0.743434, 0.3225, 0.588423, 0.883245, 0.458549, 0.667092, 0.362529, 0.133026, 0.891944, 0.292762, 0.0656984, 0.891433, 0.156739, 0.778279, 0.829316, 0.00918652, 0.754315, 0.40035, 0.0286117, 0.470567, 0.461861, 0.893933, 0.0322868, 0.86838, 0.960487, 0.747865, 0.164985, 0.543611, 0.924465, 0.0648404, 0.354452, 0.850454, 0.635748, 0.359546, 0.729677, 0.170065, 0.835594, 0.241911, 0.612096, 0.298257, 0.656033, 0.736473, 0.570684, 0.141063, 0.65175, 0.732718, 0.998333, 0.642224, 0.195743, 0.812069, 0.565661, 0.0111318, 0.864431, 0.850898, 0.0313304, 0.183694, 0.867757, 0.823855, 0.31423, 0.273361, 0.0860176, 0.983894, 0.0956444, 0.66443, 0.887831, 0.286919, 0.843797, 0.119932, 0.497116, 0.571003, 0.682796, 0.866104, 0.440773, 0.384498, 0.788672, 0.171808, 0.309293, 0.700145, 0.451478, 0.416702, 0.38524, 0.690447, 0.229804, 0.851363, 0.993086, 0.466875, 0.593496, 0.812165, 0.22422, 0.897163, 0.592888, 0.409687, 0.367272, 0.606949, 0.0418853, 0.902139, 0.515622, 0.879613, 0.0087846, 0.495049, 0.758792, 0.574896, 0.97937, 0.42588, 0.4043, 0.396314, 0.698346, 0.867443, 0.957644, 0.580143, 0.158789, 0.806535, 0.292822, 0.575212, 0.440745, 0.394654, 0.97793, 0.315495, 0.365574, 0.989251, 0.149957, 0.646115, 0.47268, 0.445343, 0.363087, 0.198103, 0.0885023, 0.590964, 0.786558, 0.757322, 0.875607, 0.415867, 0.233232, 0.408189, 0.328638, 0.98307, 0.689366, 0.271193, 0.40178, 0.916204, 0.396797, 0.736722, 0.487217, 0.53466, 0.418768, 0.493619, 0.526003, 0.207898, 0.3513, 0.764979, 0.184003, 0.630575, 0.284706, 0.812363, 0.89832, 0.810347, 0.157824, 0.414233, 0.834702, 0.482118, 0.613242, 0.798075, 0.405224, 0.102532, 0.362188, 0.771588, 0.783701, 0.306191, 0.458318, 0.21087, 0.843597, 0.048031, 0.025925, 0.119953, 0.110736, 0.00805772, 0.945727, 0.170829, 0.942903, 0.957509, 0.914612, 0.277685, 0.0998828, 0.157159, 0.477879, 0.620781, 0.454242, 0.09695, 0.800274, 0.669118, 0.0545194, 0.0747449, 0.959952, 0.561033, 0.35094, 0.640937, 0.72153, 0.940412, 0.493563, 0.782122, 0.0391054, 0.560916, 0.602838, 0.369561, 0.288648, 0.285488, 0.175487, 0.354876, 0.0420985, 0.385587, 0.91713, 0.256593, 0.310404, 0.218336, 0.340142, 0.154145, 0.274297, 0.306909, 0.643085, 0.727223, 0.015141, 0.473561, 0.637071, 0.586807, 0.57735, 0.994438, 0.203348, 0.400903, 0.376024, 0.397213, 0.118403, 0.326235, 0.238752, 0.378954, 0.327215, 0.484799, 0.536918, 0.88017, 0.361464, 0.350449, 0.188614, 0.136302, 0.679481, 0.28402, 0.172178, 0.422458, 0.603042, 0.49143, 0.043025, 0.0261847, 0.257402, 0.455479, 0.72791, 0.28391, 0.116325, 0.432857, 0.336493, 0.0302461, 0.678545, 0.929686, 0.902836, 0.244853, 0.85614, 0.666575, 0.720534, 0.891851, 0.249178, 0.685972, 0.837344, 0.916753, 0.228053, 0.600715, 0.939043, 0.461278, 0.295011, 0.475544, 0.480572, 0.931025, 0.014823, 0.275961, 0.0728855, 0.184995, 0.435816, 0.131878, 0.102206, 0.63762, 0.00180148, 0.831552, 0.872646, 0.0593314, 0.388552, 0.809018, 0.618149, 0.288378, 0.0156647, 0.744867, 0.201755, 0.00170218, 0.737832, 0.447234, 0.239707, 0.764839, 0.355098, 0.917599, 0.0452707, 0.766898, 0.606773, 0.351303, 0.354268, 0.837914, 0.833773, 0.0415325, 0.689535, 0.970246, 0.245289, 0.170493, 0.785941, 0.611172, 0.99488, 0.255219, 0.144579, 0.667399, 0.143206, 0.787674, 0.886961, 0.263737, 0.183517, 0.390872, 0.56748, 0.078612, 0.774178, 0.0704361, 0.726794, 0.744586, 0.0216967, 0.946146, 0.027991, 0.545636, 0.46659, 0.812134, 0.386265, 0.955681, 0.662299, 0.481497, 0.430118, 0.996269, 0.957166, 0.433195, 0.933126, 0.997205, 0.41795, 0.830028, 0.778497, 0.871957, 0.872685, 0.627754, 0.590224, 0.503084, 0.26531, 0.842474, 0.985117, 0.813906, 0.697348, 0.567247, 0.348052, 0.539768, 0.885292, 0.83726, 0.647066, 0.504051, 0.853265, 0.684865, 0.432105, 0.564111, 0.479551, 0.660563, 0.191942, 0.535453, 0.0981221, 0.283992, 0.235373, 0.285301, 0.0336606, 0.0267226, 0.797876, 0.293447, 0.272971, 0.416199, 0.319188, 0.655346, 0.528362, 0.200321, 0.218261, 0.210511, 0.563691, 0.803145, 0.311688, 0.0458166, 0.781406, 0.414209, 0.723707, 0.279047, 0.563268, 0.903739, 0.975284, 0.358803, 0.116477, 0.928829, 0.0524135, 0.929989, 0.223963, 0.239982, 0.686052, 0.0841157, 0.491084, 0.947208, 0.686472, 0.659798, 0.70586, 0.325346, 0.593309, 0.526232, 0.691239, 0.880092, 0.871785, 0.00576415, 0.154296, 0.316782, 0.832757, 0.891824, 0.712168, 0.256573, 0.314953, 0.731322, 0.69323, 0.410329, 0.0598054, 0.0633719, 0.153841, 0.191406, 0.917982, 0.782984, 0.950621, 0.431821, 0.475662, 0.930644, 0.43351, 0.0779847, 0.143985, 0.275326, 0.980414, 0.0562501, 0.855428, 0.354228, 0.509527, 0.411792, 0.0680083, 0.364961, 0.0390038, 0.266477, 0.0988358, 0.846641, 0.882675, 0.309469, 0.0565254, 0.642614, 0.374367, 0.737144, 0.992361, 0.268723, 0.611044, 0.291866, 0.415973, 0.473206, 0.753897, 0.378031, 0.678003, 0.200336, 0.449631, 0.171387, 0.34159, 0.766647, 0.668858, 0.226873, 0.977119, 0.949211, 0.505311, 0.477781, 0.258112, 0.0192562, 0.829727, 0.199369, 0.0769564, 0.721004, 0.273987, 0.579016, 0.478694, 0.929445, 0.81796, 0.347308, 0.1142, 0.478117, 0.614233, 0.0158434, 0.926876, 0.464126, 0.583562, 0.126896, 0.913065, 0.15919, 0.593088, 0.271819, 0.85154, 0.293742, 0.435965, 0.118852, 0.0890801, 0.285569, 0.100301, 0.66851, 0.363812, 0.556509, 0.982328, 0.568594, 0.362003, 0.549044, 0.682929, 0.0830196, 0.219488, 0.32431, 0.306314, 0.845461, 0.317929, 0.513239, 0.469761, 0.0866943, 0.971634, 0.749946, 0.312276, 0.110921, 0.790912, 0.0906199, 0.365027, 0.693894, 0.290282, 0.113001, 0.624913, 0.988962, 0.66503, 0.351687, 0.776399, 0.16496, 0.976108, 0.768692, 0.950021, 0.0137268, 0.782994, 0.989928, 0.92683, 0.529316, 0.392654, 0.954002, 0.571183, 0.923659, 0.111812, 0.0981338, 0.122619, 0.622718, 0.591275, 0.273072, 0.814748, 0.0196948, 0.843352, 0.00885786, 0.193041, 0.584187, 0.777858, 0.952638, 0.0184829, 0.656321, 0.0363939, 0.359728, 0.662433, 0.638927, 0.909029, 0.354032, 0.65834, 0.10391, 0.224123, 0.477069, 0.661853, 0.330598, 0.791712, 0.533738, 0.408965, 0.894608, 0.95827, 0.737298, 0.735627, 0.727397, 0.210358, 0.0177663, 0.802234, 0.839811, 0.382884, 0.525836, 0.634119, 0.541241, 0.517584, 0.0919362, 0.123339, 0.193696, 0.56937, 0.0724227, 0.539913, 0.60809, 0.275282, 0.202694, 0.0724591, 0.331825, 0.964982, 0.714297, 0.181775, 0.97801, 0.310005, 0.274382, 0.255482, 0.74804, 0.656908, 0.352639, 0.237788, 0.763843, 0.0898946, 0.0556271, 0.945395, 0.233283, 0.459549, 0.291393, 0.380366, 0.00761878, 0.754733, 0.445453, 0.383008, 0.953107, 0.801082, 0.77968, 0.778829, 0.00416506, 0.028506, 0.408037, 0.0167465, 0.231224, 0.0218634, 0.802864, 0.432155, 0.374266, 0.6581, 0.13919, 0.334472, 0.817559, 0.534311, 0.0921687, 0.885542, 0.921301, 0.335071, 0.196437, 0.336152, 0.305071, 0.000878531, 0.940655, 0.918713, 0.697764, 0.224071, 0.179097, 0.609544, 0.178313, 0.672489, 0.576281, 0.374879, 0.490673, 0.0209759, 0.977082, 0.977767, 0.645734, 0.264889, 0.425193, 0.876967, 0.513684, 0.893216, 0.942787, 0.958608, 0.240452, 0.454345, 0.378708, 0.630916, 0.597085, 0.873556, 0.561133, 0.601752, 0.999286, 0.10868, 0.935995, 0.419598, 0.619687, 0.21474, 0.375042, 0.946096, 0.37599, 0.572168, 0.256488, 0.430483, 0.689666, 0.447373, 0.344317, 0.31939, 0.745312, 0.184443, 0.810819, 0.688951, 0.886608, 0.823717, 0.535063, 0.503938, 0.923031, 0.217417, 0.521355, 0.963095, 0.857502, 0.103348, 0.764154, 0.317005, 0.202662, 0.171049, 0.00759843, 0.685194, 0.191648, 0.861524, 0.452244, 0.42509, 0.375843, 0.487236, 0.594071, 0.144758, 0.391594, 0.375469, 0.0870385, 0.847586, 0.185147, 0.596277, 0.183901, 0.00842619, 0.592075, 0.573614, 0.843781, 0.142902, 0.15364, 0.646929, 0.0892638, 0.622267, 0.891082, 0.96448, 0.694048, 0.58694, 0.709285, 0.724762, 0.577442, 0.539584, 0.169461, 0.257079, 0.182425, 0.790564, 0.271816, 0.478529, 0.111367, 0.411876, 0.107244, 0.885156, 0.140449, 0.340984, 0.669242, 0.409775, 0.417205, 0.222673, 0.716909, 0.278746, 0.0974982, 0.351324, 0.644261, 0.605993, 0.959356, 0.709013, 0.221732, 0.426471, 0.486874, 0.943151, 0.573228, 0.20139, 0.0056907, 0.56611, 0.712727, 0.914089, 0.43214, 0.712815, 0.815321, 0.0330771, 0.094264, 0.909579, 0.642416, 0.006873, 0.41765, 0.701491, 0.541806, 0.626139, 0.127387, 0.901576, 0.236642, 0.472672, 0.395314, 0.732611, 0.387834, 0.830261, 0.395911, 0.764832, 0.932663, 0.784981, 0.404438, 0.180541, 0.995126, 0.124877, 0.0750531, 0.775687, 0.152062, 0.599499, 0.0665797, 0.862486, 0.568055, 0.169529, 0.207695, 0.341386, 0.416456, 0.301757, 0.942727, 0.574895, 0.0317433, 0.449472, 0.834351, 0.00770673, 0.299701, 0.361295, 0.280399, 0.74131, 0.0203017, 0.794719, 0.334522, 0.237113, 0.311298, 0.294878, 0.478388, 0.421921, 0.157156, 0.31681, 0.314472, 0.606741, 0.811527, 0.796103, 0.310328, 0.151267, 0.100948, 0.557801, 0.496497, 0.243911, 0.718503, 0.971905, 0.883, 0.547776, 0.347316, 0.782998, 0.684509, 0.480502, 0.0783967, 0.0692244, 0.947015, 0.629444, 0.870759, 0.193753, 0.827108, 0.447125, 0.0796941, 0.755518, 0.00448889, 0.457882, 0.500657, 0.880133, 0.965818, 0.139194, 0.87915, 0.746309, 0.381925, 0.997604, 0.571539, 0.757676, 0.346344, 0.021274, 0.614877, 0.0489256, 0.812085, 0.649245, 0.65368, 0.59189, 0.411203, 0.135296, 0.144665, 0.538057, 0.75719, 0.0142835, 0.260769, 0.0672047, 0.613627, 0.287363, 0.264982, 0.129293, 0.361468, 0.0549015, 0.557387, 0.845291, 0.698132, 0.818284, 0.1126, 0.193457, 0.646869, 0.597663, 0.544439, 0.17282, 0.782441, 0.770151, 0.709623, 0.343153, 0.552879, 0.548038, 0.752989, 0.549972, 0.672095, 0.87582, 0.955548, 0.311044, 0.912004, 0.249169, 0.753995, 0.702344, 0.906776, 0.63884, 0.202816, 0.245157, 0.903338, 0.687757, 0.68334, 0.36402, 0.586169, 0.178845, 0.088714, 0.855479, 0.831101, 0.236207, 0.342863, 0.0615278, 0.0731346, 0.891181, 0.76257, 0.816886, 0.310601, 0.535123, 0.459628, 0.551505, 0.571281, 0.709753, 0.0292223, 0.593478, 0.107417, 0.316914, 0.567733, 0.462745, 0.243221, 0.270869, 0.655028, 0.47336, 0.619956, 0.643538, 0.275546, 0.11702, 0.33149, 0.755853, 0.855251, 0.0386841, 0.0435289, 0.109853, 0.293621, 0.371091, 0.431532, 0.563657, 0.159055, 0.85303, 0.64411, 0.714508, 0.975522, 0.875886, 0.262888, 0.826408, 0.583355, 0.523709, 0.193719, 0.410391, 0.991841, 0.183163, 0.639219, 0.172018, 0.838954, 0.588928, 0.661519, 0.662144, 0.422971, 0.1109, 0.0253813, 0.47453, 0.640467, 0.793112, 0.557496, 0.379137, 0.999332, 0.858455, 0.309814, 0.134333, 0.0132461, 0.82194, 0.439918, 0.987648, 0.279281, 0.164631, 0.147135, 0.902111, 0.184585, 0.482819, 0.0707794, 0.159107, 0.30131, 0.993267, 0.245424, 0.37454, 0.35634, 0.122597, 0.938857, 0.693804, 0.348595, 0.92542, 0.0348975, 0.225595, 0.370385, 0.486661, 0.777579, 0.244736, 0.462099, 0.913458, 0.829255, 0.121728, 0.720604, 0.901608, 0.826562, 0.61733, 0.434164, 0.283134, 0.158365, 0.186713, 0.773638, 0.00277137, 0.815615, 0.11357, 0.449243, 0.918311, 0.671511, 0.406604, 0.172264, 0.864247, 0.28041, 0.201363, 0.533451, 0.254058, 0.588508, 0.587943, 0.552362, 0.340251, 0.501069, 0.175259, 0.717303, 0.152411, 0.485068, 0.860247, 0.316549, 0.0997113, 0.788903, 0.00377454, 0.897165, 0.731088, 0.72421, 0.983197, 0.709219, 0.722073, 0.900025, 0.948974, 0.837514, 0.686165, 0.457643, 0.245526, 0.189808, 0.118665, 0.209807, 0.763101, 0.715023, 0.598781, 0.965135, 0.868997, 0.223561, 0.670716, 0.99781, 0.145113, 0.266044, 0.719911, 0.58673, 0.529704, 0.404348, 0.728003, 0.889631, 0.524128, 0.472478, 0.40759, 0.46659, 0.257081, 0.657219, 0.37316, 0.133779, 0.939127, 0.644057, 0.925486, 0.0304648, 0.746252, 0.836801, 0.269247, 0.547866, 0.0164205, 0.714248, 0.253847, 0.724494, 0.77699, 0.0604745, 0.971237, 0.249226, 0.580107, 0.828316, 0.460406, 0.606842, 0.456018, 0.237932, 0.42174, 0.694471, 0.687645, 0.837182, 0.875367, 0.756231, 0.0400628, 0.789693, 0.14741, 0.371227, 0.575896, 0.926123, 0.459602, 0.581003, 0.385102, 0.154742, 0.37969, 0.22614, 0.308876, 0.850189, 0.163223, 0.599109, 0.373049, 0.856136, 0.371121, 0.965673, 0.577745, 0.639973, 0.123351, 0.870461, 0.754086, 0.236437, 0.720433, 0.0527095, 0.29122, 0.547433, 0.882622, 0.940694, 0.194832, 0.0750346, 0.0610123, 0.310287, 0.341471, 0.983267, 0.375502, 0.876803, 0.287406, 0.748471, 0.594963, 0.628531, 0.438567, 0.665441, 0.672503, 0.506363, 0.308025, 0.655934, 0.994362, 0.824733, 0.961195, 0.746385, 0.0960097, 0.310106, 0.453354, 0.381799, 0.109705, 0.104281, 0.868622, 0.501508, 0.11718, 0.500258, 0.948738, 0.471366, 0.780311, 0.532016, 0.49108, 0.549401, 0.00727923, 0.81396, 0.771862, 0.0687179, 0.210695, 0.560634, 0.701196, 0.200612, 0.241739, 0.264693, 0.375663, 0.00471052, 0.734523, 0.203789, 0.0913241, 0.425225, 0.876708, 0.0238135, 0.509967, 0.876341, 0.549541, 0.469744, 0.0518966, 0.160679, 0.0455441, 0.889455, 0.757726, 0.758576, 0.437118, 0.392305, 0.0345043, 0.92864, 0.732631, 0.548112, 0.373253, 0.617855, 0.339635, 0.0494614, 0.36108, 0.744314, 0.422427, 0.463968, 0.564526, 0.653425, 0.780431, 0.716295, 0.238265, 0.584077, 0.265653, 0.463058, 0.732914, 0.0885101, 0.291173, 0.173535, 0.765263, 0.480756, 0.648483, 0.0151566, 0.414509, 0.220405, 0.50928, 0.0271092, 0.12019, 0.944946, 0.817961, 0.493538, 0.369312, 0.354326, 0.287443, 0.030618, 0.357926, 0.316122, 0.362009, 0.668179, 0.341988, 0.268399, 0.621757, 0.573012, 0.492584, 0.972075, 0.0498279, 0.281859, 0.228451, 0.393648, 0.324706, 0.709167, 0.964169, 0.233573, 0.34167, 0.609674, 0.0458664, 0.760891, 0.443914, 0.246326, 0.899665, 0.0959899, 0.49794, 0.477643, 0.65378, 0.732796, 0.321912, 0.620424, 0.941089, 0.913828, 0.72776, 0.0321257, 0.75628, 0.274313, 0.611542, 0.128138, 0.695211, 0.926982, 0.720654, 0.588312, 0.495734, 0.123597, 0.228186, 0.66672, 0.0573115, 0.260192, 0.213768, 0.769004, 0.967237, 0.382545, 0.834618, 0.0757735, 0.712371, 0.935933, 0.796569, 0.599636, 0.612858, 0.463462, 0.78504, 0.717045, 0.374879, 0.707674, 0.208134, 0.591191, 0.765945, 0.155521, 0.232395, 0.654584, 0.214316, 0.735305, 0.0839292, 0.848127, 0.710719, 0.941026, 0.874579, 0.769307, 0.301192, 0.197223, 0.217495, 0.625208, 0.924223, 0.109125, 0.321889, 0.316792, 0.179218, 0.716343, 0.280709, 0.72566, 0.739555, 0.264069, 0.657673, 0.853048, 0.803091, 0.820985, 0.651857, 0.931743, 0.510448, 0.387036, 0.93948, 0.739968, 0.156606, 0.774725, 0.724864, 0.838277, 0.340938, 0.197131, 0.455342, 0.208851, 0.0474198, 0.489681, 0.718457, 0.20933, 0.107909, 0.885783, 0.176625, 0.123576, 0.406788, 0.630986, 0.0527968, 0.147339, 0.826964, 0.76672, 0.911876, 0.663619, 0.195413, 0.979305, 0.587192, 0.736023, 0.878371, 0.872901, 0.704097, 0.165629, 0.0568425, 0.335889, 0.229509, 0.0537321, 0.334414, 0.692468, 0.260873, 0.0967046, 0.52543, 0.533514, 0.553588, 0.13187, 0.630808, 0.609632, 0.963756, 0.557915, 0.219282, 0.784697, 0.967045, 0.00652943, 0.736587, 0.0784029, 0.81302, 0.148816, 0.953596, 0.502145, 0.097795, 0.905445, 0.779644, 0.283433, 0.29729, 0.0683082, 0.574513, 0.251414, 0.467007, 0.228528, 0.469036, 0.807922, 0.0549555, 0.416164, 0.904429, 0.227143, 0.465156, 0.604122, 0.574088, 0.934791, 0.108433, 0.852014, 0.907469, 0.945096, 0.459356, 0.667031, 0.281934, 0.637253, 0.932625, 0.804203, 0.0843158, 0.963223, 0.887788, 0.305144, 0.944713, 0.776812, 0.594855, 0.478587, 0.0797217, 0.036862, 0.896295, 0.0297441, 0.0766876, 0.7874, 0.150145, 0.884818, 0.14161, 0.485735, 0.364699, 0.329101, 0.0938824, 0.708327, 0.931794, 0.665628, 0.892828, 0.439991, 0.6202, 0.169928, 0.925779, 0.018304, 0.739203, 0.940643, 0.505835, 0.243505, 0.0885657, 0.727978, 0.385604, 0.704526, 0.0057521, 0.237235, 0.363028, 0.787715, 0.880617, 0.535948, 0.459587, 0.856384, 0.0469387, 0.0326529, 0.898075, 0.361336, 0.908772, 0.558115, 0.6705, 0.739076, 0.673523, 0.54199, 0.7216, 0.706949, 0.4299, 0.693178, 0.118263, 0.627025, 0.246125, 0.452557, 0.819869, 0.939203, 0.465305, 0.626229, 0.107427, 0.286635, 0.214797, 0.521525, 0.472208, 0.754895, 0.375884, 0.148967, 0.498511, 0.774345, 0.83256, 0.812576, 0.249913, 0.802774, 0.87416, 0.120424, 0.530108, 0.829449, 0.813338, 0.580094, 0.897474, 0.515633, 0.857695, 0.353416, 0.426706, 0.786654, 0.676372, 0.774821, 0.623743, 0.0176362, 0.530675, 0.531131, 0.834187, 0.550216, 0.0224422, 0.0538156, 0.656118, 0.902216, 0.83654, 0.64387, 0.305327, 0.0589362, 0.496555, 0.562009, 0.343018, 0.847697, 0.182216, 0.0835304, 0.477091, 0.341358, 0.909489, 0.844192, 0.250927, 0.933091, 0.0520628, 0.40084, 0.672863, 0.87823, 0.442065, 0.0937743, 0.88828, 0.237486, 0.63274, 0.909439, 0.382021, 0.905333, 0.869442, 0.230645, 0.729319, 0.0606626, 0.631403, 0.194657, 0.10353, 0.722611, 0.877988, 0.629357, 0.183838, 0.649866, 0.877232, 0.724609, 0.595428, 0.429649, 0.425882, 0.213661, 0.898753, 0.901602, 0.665194, 0.27595, 0.956716, 0.023234, 0.967866, 0.662391, 0.780798, 0.762026, 0.136363, 0.406325, 0.111442, 0.770045, 0.198666, 0.8796, 0.865666, 0.321917, 0.415935, 0.983409, 0.222184, 0.950112, 0.38876, 0.286987, 0.291493, 0.240819, 0.649202, 0.862471, 0.291304, 0.970219, 0.862215, 0.0320834, 0.192766, 0.590521, 0.635422, 0.9835, 0.228775, 0.188603, 0.0157858, 0.70571, 0.307928, 0.113621, 0.696907, 0.588957, 0.282671, 0.0120755, 0.166472, 0.958485, 0.157565, 0.0117145, 0.175625, 0.532964, 0.213409, 0.4184, 0.26797, 0.0135374, 0.190527, 0.848565, 0.087241, 0.171327, 0.929766, 0.352087, 0.163126, 0.194579, 0.708994, 0.59182, 0.201136, 0.264034, 0.126743, 0.0568339, 0.462297, 0.426802, 0.439699, 0.303216, 0.697761, 0.118959, 0.995954, 0.349346, 0.375857, 0.711591, 0.57804, 0.650406, 0.289833, 0.962389, 0.469556, 0.645988, 0.543234, 0.219211, 0.617346, 0.709983, 0.0910768, 0.391303, 0.981123, 0.805719, 0.805006, 0.798241, 0.485463, 0.173305, 0.9613, 0.00920269, 0.961719, 0.467961, 0.245859, 0.305431, 0.148351, 0.167167, 0.436692, 0.922042, 0.492883, 0.24934, 0.308159, 0.99099, 0.9951, 0.244618, 0.131421, 0.342017, 0.822735, 0.142372, 0.811411, 0.0409804, 0.721215, 0.861459, 0.766847, 0.284534, 0.264093, 0.675163, 0.664999, 0.665671, 0.745024, 0.771032, 0.483728, 0.898326, 0.521523, 0.249476, 0.258946, 0.257854, 0.0855351, 0.216374, 0.809722, 0.495059, 0.133953, 0.199373, 0.301335, 0.710782, 0.0216161, 0.274523, 0.260882, 0.545702, 0.625261, 0.748891, 0.800363, 0.534662, 0.284751, 0.757313, 0.964026, 0.256365, 0.321775, 0.209238, 0.988314, 0.762191, 0.337054, 0.861542, 0.235185, 0.476932, 0.437778, 0.914141, 0.402043, 0.380551, 0.905735, 0.638406, 0.773127, 0.309329, 0.0671007, 0.795017, 0.799532, 0.00364822, 0.369172, 0.875997, 0.600051, 0.882769, 0.396643, 0.189659, 0.725344, 0.825717, 0.2182, 0.786751, 0.506846, 0.242098, 0.672779, 0.317106, 0.627122, 0.509488, 0.675008, 0.89748, 0.219216, 0.145694, 0.290574, 0.718498, 0.983559, 0.420981, 0.119246, 0.663962, 0.470443, 0.667008, 0.579719, 0.571089, 0.997056, 0.626232, 0.773617, 0.939652, 0.446185, 0.111748, 0.967741, 0.652235, 0.397335, 0.494093, 0.51104, 0.397897, 0.670147, 0.846698, 0.0213984, 0.550662, 0.288313, 0.750895, 0.193161, 0.050176, 0.280056, 0.390065, 0.199181, 0.451561, 0.564859, 0.325755, 0.408679, 0.998351, 0.974254, 0.526062, 0.0957082, 0.219961, 0.812711, 0.958309, 0.272282, 0.161978, 0.338449, 0.557122, 0.870514, 0.628552, 0.840722, 0.0219039, 0.0575009, 0.185114, 0.0819644, 0.337032, 0.0216506, 0.982923, 0.891166, 0.0296416, 0.132156, 0.913832, 0.79417, 0.422663, 0.239595, 0.62447, 0.112625, 0.762766, 0.912618, 0.689301, 0.0103053, 0.84427, 0.89194, 0.0801654, 0.115514, 0.935909, 0.404519, 0.116629, 0.437316, 0.456131, 0.937935, 0.48319, 0.14409, 0.379065, 0.0453652, 0.579558, 0.1382, 0.282545, 0.602832, 0.983994, 0.862103, 0.428647, 0.6004, 0.783887, 0.89323, 0.787228, 0.280172, 0.404725, 0.333178, 0.702263, 0.177241, 0.731057, 0.195261, 0.258201, 0.35049, 0.72335, 0.509525, 0.153213, 0.0179785, 0.911976, 0.571066, 0.028932, 0.693651, 0.986674, 0.952026, 0.533778, 0.238231, 0.772806, 0.0107944, 0.285385, 0.104306, 0.58825, 0.499696, 0.775419, 0.316042, 0.972347, 0.61327, 0.0776558, 0.568497, 0.424756, 0.685905, 0.256827, 0.574769, 0.357528, 0.594186, 0.326758, 0.420383, 0.294078, 0.643391, 0.549081, 0.276275, 0.330507, 0.067916, 0.653988, 0.781768, 0.884367, 0.240856, 0.280531, 0.709184, 0.369147, 0.0581054, 0.486437, 0.290935, 0.105259, 0.0815294, 0.866518, 0.650869, 0.703351, 0.869202, 0.468616, 0.568117, 0.975868, 0.271798, 0.0865298, 0.894777, 0.256255, 0.322548, 0.614776, 0.658665, 0.0100567, 0.249481, 0.422542, 0.3974, 0.499621, 0.50149, 0.879339, 0.649601, 0.455446, 0.658601, 0.719479, 0.837564, 0.0624449, 0.902218, 0.225339, 0.350457, 0.489363, 0.763642, 0.243925, 0.657255, 0.0705136, 0.0489285, 0.186975, 0.439029, 0.346806, 0.694161, 0.502898, 0.98227, 0.680688, 0.960858, 0.208254, 0.511671, 0.716765, 0.711505, 0.911834, 0.626555, 0.0469704, 0.673963, 0.218715, 0.339074, 0.968538, 0.257862, 0.942298, 0.538326, 0.492178, 0.165233, 0.691901, 0.903309, 0.524838, 0.926782, 0.193413, 0.802709, 0.711884, 0.0240081, 0.140502, 0.0563052, 0.584991, 0.319483, 0.0546981, 0.910044, 0.812915, 0.747399, 0.417452, 0.857698, 0.210939, 0.168606, 0.231105, 0.336397, 0.868238, 0.866334, 0.0218861, 0.990205, 0.246814, 0.644786, 0.269771, 0.392032, 0.239372, 0.437806, 0.772413, 0.0163668, 0.0532537, 0.920045, 0.33141, 0.514837, 0.871406, 0.397055, 0.498462, 0.591409, 0.0411478, 0.676721, 0.118477, 0.83862, 0.707243, 0.420312, 0.444369, 0.783343, 0.00486774, 0.869095, 0.132895, 0.899124, 0.428715, 0.2236, 0.961385, 0.273355, 0.138576, 0.852518, 0.500557, 0.480699, 0.44492, 0.784342, 0.661856, 0.695567, 0.572185, 0.111332, 0.256081, 0.819809, 0.322147, 0.404687, 0.943613, 0.706108, 0.951866, 0.261504, 0.782387, 0.760186, 0.0156952, 0.815611, 0.178297, 0.471005, 0.611869, 0.116486, 0.0850198, 0.104099, 0.604362, 0.745123, 0.15129, 0.548693, 0.445766, 0.479616, 0.253791, 0.765529, 0.558392, 0.847801, 0.898313, 0.627633, 0.0950122, 0.842727, 0.375165, 0.406892, 0.196276, 0.650598, 0.527738, 0.343633, 0.234852, 0.361932, 0.787421, 0.669053, 0.902753, 0.254946, 0.694282, 0.609353, 0.523103, 0.146424, 0.157292, 0.107735, 0.721125, 0.279951, 0.969449, 0.129756, 0.59466, 0.656208, 0.666184, 0.384704, 0.840437, 0.165976, 0.439087, 0.0224346, 0.563953, 0.496244, 0.486372, 0.923374, 0.00637722, 0.833891, 0.430868, 0.476303, 0.526871, 0.85095, 0.346899, 0.59411, 0.150974, 0.487017, 0.180168, 0.32126, 0.398172, 0.874478, 0.0562483, 0.645354, 0.520445, 0.576221, 0.145211, 0.132088, 0.639109, 0.835965, 0.712716, 0.101905, 0.962231, 0.904648, 0.245937, 0.338644, 0.768588, 0.219802, 0.785703, 0.684242, 0.00758828, 0.344332, 0.845255, 0.343437, 0.479491, 0.00184634, 0.867279, 0.692014, 0.431415, 0.333164, 0.726412, 0.620137, 0.706249, 0.7203, 0.470956, 0.816513, 0.695551, 0.791482, 0.770726, 0.395524, 0.624206, 0.815844, 0.0873979, 0.611708, 0.256229, 0.822988, 0.259085, 0.441877, 0.392015, 0.0981093, 0.88807, 0.019005, 0.108683, 0.651687, 0.100758, 0.325939, 0.269713, 0.948986, 0.825146, 0.564144, 0.770639, 0.485206, 0.416936, 0.0984107, 0.771148, 0.266221, 0.44929, 0.304169, 0.0864227, 0.119333, 0.609946, 0.352228, 0.803194, 0.0700682, 0.180989, 0.290626, 0.654246, 0.873521, 0.195073, 0.0980244, 0.32034, 0.14283, 0.213314, 0.572725, 0.811518, 0.904587, 0.431793, 0.472596, 0.701579, 0.165594, 0.788756, 0.55967, 0.412133, 0.673068, 0.475394, 0.423188, 0.998463, 0.134837, 0.440722, 0.283467, 0.519767, 0.827366, 0.616524, 0.269592, 0.0610548, 0.214388, 0.310935, 0.813268, 0.614236, 0.305517, 0.0430781, 0.620736, 0.641705, 0.895556, 0.3765, 0.982094, 0.845038, 0.981563, 0.744293, 0.291727, 0.00362085, 0.717874, 0.725714, 0.542053, 0.320815, 0.258247, 0.240783, 0.290881, 0.296439, 0.715697, 0.0383373, 0.384729, 0.428255, 0.454301, 0.434624, 0.666046, 0.186181, 0.230389, 0.706728, 0.559589, 0.941174, 0.54638, 0.252105, 0.210496, 0.370935, 0.469081, 0.65679, 0.246057, 0.593924, 0.828955, 0.715542, 0.584473, 0.265623, 0.443921, 0.883346, 0.60509, 0.288227, 0.636306, 0.497498, 0.0708454, 0.835096, 0.627698, 0.328114, 0.316023, 0.5014, 0.921875, 0.54686, 0.0416384, 0.157481, 0.838317, 0.935189, 0.269667, 0.167253, 0.588981, 0.209506, 0.663613, 0.158796, 0.720612, 0.0420776, 0.36182, 0.501057, 0.195321, 0.655048, 0.320891, 0.495573, 0.589786, 0.931608, 0.467956, 0.0568821, 0.382032, 0.761145, 0.288557, 0.36101, 0.125653, 0.182641, 0.334124, 0.157218, 0.762846, 0.149435, 0.999255, 0.4778, 0.553885, 0.0677615, 0.931818, 0.016556, 0.803526, 0.0220922, 0.631252, 0.199443, 0.400167, 0.582883, 0.765045, 0.577627, 0.547879, 0.823248, 0.180415, 0.998187, 0.783894, 0.211209, 0.533494, 0.754303, 0.65733, 0.133927, 0.828414, 0.792878, 0.411378, 0.744205, 0.527533, 0.903261, 0.426149, 0.224438, 0.52951, 0.398703, 0.127338, 0.630412, 0.688104, 0.339014, 0.553921, 0.34712, 0.62277, 0.038325, 0.410101, 0.171616, 0.806647, 0.679862, 0.823435, 0.517721, 0.176172, 0.960146, 0.0800634, 0.487031, 0.0279664, 0.0173489, 0.0645565, 0.268324, 0.165998, 0.971805, 0.421874, 0.536972, 0.0730187, 0.845134, 0.3398, 0.305973, 0.0977254, 0.836375, 0.289279, 0.753972, 0.641238, 0.946321, 0.962601, 0.67325, 0.257082, 0.533891, 0.8623, 0.788637, 0.946002, 0.431869, 0.292219, 0.32183, 0.897805, 0.677521, 0.902471, 0.314869, 0.252362, 0.405313, 0.600214, 0.805096, 0.202731, 0.959067, 0.32637, 0.180819, 0.700432, 0.477366, 0.78468, 0.807295, 0.666499, 0.760154, 0.708467, 0.353349, 0.832866, 0.408311, 0.0210555, 0.297889, 0.612174, 0.759349, 0.589077, 0.993623, 0.142461, 0.334269, 0.560127, 0.848384, 0.151291, 0.404091, 0.0174518, 0.464505, 0.730424, 0.103645, 0.280192, 0.143918, 0.450896, 0.957061, 0.545256, 0.857519, 0.262689, 0.979739, 0.403343, 0.957957, 0.853007, 0.150011, 0.856873, 0.842149, 0.310354, 0.828174, 0.173182, 0.671715, 0.608794, 0.457571, 0.991531, 0.196842, 0.854958, 0.916562, 0.205036, 0.502097, 0.545073, 0.990717, 0.660022, 0.160164, 0.334036, 0.487408, 0.524314, 0.786715, 0.778241, 0.291536, 0.259401, 0.338952, 0.829521, 0.0694723, 0.375024, 0.141045, 0.580219, 0.487215, 0.409129, 0.557917, 0.241972, 0.316169, 0.910911, 0.686209, 0.00985684, 0.467838, 0.493742, 0.671694, 0.823553, 0.842008, 0.433344, 0.294061, 0.188521, 0.92429, 0.538474, 0.750357, 0.88262, 0.568984, 0.595121, 0.84028, 0.00421434, 0.776732, 0.335066, 0.409157, 0.0208589, 0.497187, 0.612949, 0.250027, 0.522101, 0.300015, 0.58257, 0.240747, 0.572784, 0.690404, 0.953512, 0.0912815, 0.0733098, 0.68624, 0.794803, 0.696063, 0.60953, 0.815455, 0.625078, 0.714355, 0.772728, 0.479029, 0.626334, 0.474357, 0.914993, 0.75467, 0.745836, 0.63729, 0.19669, 0.0905315, 0.893427, 0.849832, 0.912964, 0.382397, 0.71154, 0.808354, 0.893045, 0.456135, 0.393691, 0.863108, 0.761282, 0.991937, 0.573704, 0.690977, 0.3117, 0.567825, 0.306727, 0.326662, 0.491348, 0.399847, 0.77062, 0.405923, 0.918753, 0.258499, 0.902771, 0.73017, 0.637004, 0.585638, 0.605306, 0.115159, 0.118974, 0.432776, 0.488925, 0.66015, 0.350921, 0.18767, 0.973977, 0.723712, 0.339241, 0.379722, 0.536957, 0.624038, 0.497347, 0.944084, 0.159237, 0.777434, 0.289676, 0.511357, 0.39244, 0.415509, 0.890435, 0.595442, 0.47797, 0.466247, 0.66677, 0.451693, 0.580417, 0.25935, 0.643025, 0.380881, 0.944449, 0.650725, 0.165078, 0.702137, 0.704296, 0.752474, 0.936447, 0.868422, 0.262513, 0.0232052, 0.555611, 0.74614, 0.398948, 0.195334, 0.0348564, 0.583205, 0.423472, 0.0960633, 0.733525, 0.99676, 0.487536, 0.296982, 0.20456, 0.571804, 0.868799, 0.749744, 0.621992, 0.759803, 0.0618532, 0.253088, 0.445758, 0.650843, 0.648296, 0.750919, 0.0334708, 0.297256, 0.310481, 0.532567, 0.404802, 0.377319, 0.542259, 0.12443, 0.790325, 0.444367, 0.452441, 0.217944, 0.424292, 0.115662, 0.61383, 0.245621, 0.747123, 0.830206, 0.369922, 0.865725, 0.651759, 0.461403, 0.145014, 0.225638, 0.346928, 0.0338172, 0.143913, 0.235113, 0.753127, 0.939304, 0.684814, 0.633211, 0.960311, 0.489829, 0.883591, 0.474476, 0.173168, 0.804425, 0.121522, 0.153494, 0.0543107, 0.204177, 0.602172, 0.536432, 0.323885, 0.439595, 0.0364584, 0.520795, 0.635875, 0.199897, 0.194836, 0.741096, 0.971576, 0.194318, 0.181178, 0.326358, 0.633951, 0.632444, 0.361302, 0.29806, 0.942541, 0.87561, 0.230811, 0.0783732, 0.657944, 0.96467, 0.170779, 0.45759, 0.261792, 0.567791, 0.403396, 0.628791, 0.323723, 0.227396, 0.506212, 0.872135, 0.210903, 0.194407, 0.54982, 0.577773, 0.461273, 0.450567, 0.976968, 0.508873, 0.450128, 0.881639, 0.688893, 0.0998914, 0.966041, 0.53252, 0.0757306, 0.502864, 0.275422, 0.687194, 0.348087, 0.35807, 0.171159, 0.972887, 0.863733, 0.813569, 0.51552, 0.197781, 0.802414, 0.524504, 0.533703, 0.619684, 0.333113, 0.0153569, 0.907485, 0.44377, 0.428598, 0.183857, 0.982795, 0.238431, 0.208793, 0.321625, 0.380313, 0.568526, 0.930941, 0.677121, 0.544023, 0.419881, 0.388237, 0.011026, 0.121431, 0.239208, 0.189497, 0.659145, 0.109031, 0.142288, 0.555917, 0.99295, 0.786536, 0.0710536, 0.768471, 0.161077, 0.719407, 0.513358, 0.472459, 0.130592, 0.878847, 0.372559, 0.987415, 0.819368, 0.896491, 0.293905, 0.983938, 0.549059, 0.398498, 0.596892, 0.997351, 0.691984, 0.0992515, 0.953706, 0.353985, 0.967347, 0.595026, 0.175495, 0.593134, 0.333987, 0.199959, 0.124917, 0.367774, 0.688183, 0.826602, 0.00830476, 0.875706, 0.41639, 0.337927, 0.448663, 0.243666, 0.707968, 0.88552, 0.1651, 0.309453, 0.0265487, 0.970021, 0.872214, 0.456927, 0.635171, 0.243996, 0.693179, 0.997546, 0.220315, 0.00512867, 0.503069, 0.980794, 0.546817, 0.83832, 0.572533, 0.859018, 0.129256, 0.64796, 0.531453, 0.0151519, 0.954558, 0.50729, 0.690222, 0.0997272, 0.254811, 0.410683, 0.578204, 0.764459, 0.252579, 0.725538, 0.393329, 0.326625, 0.918815, 0.227689, 0.538058, 0.445234, 0.778616, 0.793048, 0.00585421, 0.475651, 0.0352852, 0.858657, 0.290356, 0.37671, 0.469648, 0.251567, 0.624495, 0.450786, 0.374024, 0.145673, 0.67222, 0.351939, 0.813303, 0.56368, 0.215226, 0.0814795, 0.960962, 0.355566, 0.435692, 0.396444, 0.641797, 0.253165, 0.932764, 0.280643, 0.831266, 0.852321, 0.563509, 0.451012, 0.864254, 0.171573, 0.787336, 0.701232, 0.583738, 0.185954, 0.367937, 0.158504, 0.0161709, 0.86806, 0.939253, 0.267748, 0.352643, 0.426932, 0.189601, 0.911403, 0.50837, 0.732431, 0.985006, 0.269347, 0.958147, 0.855181, 0.883161, 0.956014, 0.974718, 0.707734, 0.52887, 0.991762, 0.0393665, 0.105822, 0.141936, 0.504212, 0.476858, 0.584185, 0.0764541, 0.180425, 0.558995, 0.895737, 0.768966, 0.165616, 0.304485, 0.575581, 0.874015, 0.398608, 0.0082093, 0.0736755, 0.0499443, 0.581033, 0.874252, 0.876927, 0.991794, 0.672979, 0.650433, 0.286385, 0.946385, 0.358745, 0.243017, 0.655395, 0.163383, 0.242879, 0.0232899, 0.464411, 0.409471, 0.679895, 0.997155, 0.029812, 0.159658, 0.370295, 0.27686, 0.211441, 0.936067, 0.155365, 0.83717, 0.603396, 0.61765, 0.493705, 0.945561, 0.893608, 0.258562, 0.736011, 0.144251, 0.364804, 0.282035, 0.709481, 0.193582, 0.313855, 0.2994, 0.742215, 0.360354, 0.981149, 0.350727, 0.402133, 0.388844, 0.583267, 0.070153, 0.21933, 0.716418, 0.249012, 0.0757469, 0.0186221, 0.646731, 0.0770813, 0.265132, 0.578124, 0.368505, 0.645117, 0.513793, 0.838181, 0.00636151, 0.121437, 0.274747, 0.617832, 0.628392, 0.681296, 0.513797, 0.0434236, 0.154694, 0.975077, 0.590228, 0.987464, 0.402142, 0.714017, 0.563677, 0.624326, 0.658532, 0.847364, 0.379046, 0.666956, 0.211503, 0.164405, 0.0785213, 0.795591, 0.436383, 0.168083, 0.656521, 0.09148, 0.862772, 0.573072, 0.711908, 0.60611, 0.526567, 0.198538, 0.868665, 0.537465, 0.842959, 0.00195253, 0.827145, 0.977914, 0.479378, 0.255765, 0.377757, 0.266293, 0.264698, 0.374865, 0.406781, 0.788782, 0.457216, 0.607319, 0.663994, 0.932821, 0.688466, 0.920392, 0.82204, 0.905654, 0.299072, 0.98596, 0.259191, 0.359024, 0.511, 0.640021, 0.0260404, 0.228917, 0.480962, 0.0145337, 0.891536, 0.75293, 0.500486, 0.595336, 0.697801, 0.936754, 0.871415, 0.901875, 0.90638, 0.356738, 0.0370333, 0.842833, 0.246147, 0.663604, 0.986032, 0.848929, 0.805214, 0.400486, 0.834942, 0.0638208, 0.67463, 0.111669, 0.585896, 0.743536, 0.746684, 0.914686, 0.518284, 0.63239, 0.283595, 0.181878, 0.890666, 0.305306, 0.202127, 0.433876, 0.111278, 0.604247, 0.440199, 0.812756, 0.739672, 0.814564, 0.246007, 0.240815, 0.808788, 0.496448, 0.180202, 0.935318, 0.100369, 0.279289, 0.520393, 0.686972, 0.409546, 0.718325, 0.7967, 0.622775, 0.307297, 0.153473, 0.445662, 0.0112306, 0.823669, 0.69551, 0.398283, 0.711707, 0.053126, 0.14718, 0.894394, 0.0492904, 0.21273, 0.196796, 0.478175, 0.227983, 0.814148, 0.488083, 0.452984, 0.658198, 0.517192, 0.383138, 0.0411468, 0.658421, 0.254412, 0.834593, 0.78294, 0.639942, 0.360754, 0.849921, 0.433348, 0.0629977, 0.251698, 0.00425808, 0.0742739, 0.590643, 0.852995, 0.44001, 0.802642, 0.186821, 0.770974, 0.787275, 0.702866, 0.947383, 0.0997299, 0.738891, 0.119124, 0.482181, 0.281371, 0.586083, 0.991044, 0.356575, 0.342173, 0.873849, 0.974298, 0.30734, 0.181679, 0.754, 0.203723, 0.32117, 0.124177, 0.430788, 0.76273, 0.0252674, 0.571264, 0.620615, 0.864177, 0.144175, 0.758325, 0.644709, 0.952742, 0.461476, 0.401015, 0.439588, 0.520973, 0.165119, 0.845272, 0.382533, 0.697601, 0.298341, 0.517291, 0.687995, 0.831807, 0.406744, 0.00147834, 0.0503307, 0.0969225, 0.812963, 0.300985, 0.0614599, 0.296362, 0.255696, 0.469395, 0.302228, 0.682409, 0.855154, 0.318436, 0.731659, 0.898572, 0.196598, 0.709197, 0.0914218, 0.70073, 0.624826, 0.687569, 0.503143, 0.546211, 0.965121, 0.78538, 0.59169, 0.785625, 0.743999, 0.500571, 0.657924, 0.0492368, 0.031132, 0.373758, 0.517738, 0.559081, 0.509297, 0.338738, 0.512054, 0.754298, 0.384323, 0.525394, 0.923157, 0.188505, 0.297817, 0.0560293, 0.465045, 0.591416, 0.0247203, 0.890947, 0.614514, 0.684119, 0.751641, 0.333143, 0.995364, 0.699339, 0.847508, 0.909596, 0.210375, 0.0579457, 0.252702, 0.834395, 0.21708, 0.831192, 0.173178, 0.026883, 0.450337, 0.162823, 0.554947, 0.418359, 0.330839, 0.541603, 0.947367, 0.827405, 0.199467, 0.792635, 0.217672, 0.814948, 0.422815, 0.797286, 0.230456, 0.151905, 0.955378, 0.245243, 0.869898, 0.0846103, 0.966006, 0.358681, 0.231625, 0.0742771, 0.925698, 0.39544, 0.163441, 0.0563207, 0.375602, 0.192107, 0.983945, 0.0693443, 0.459649, 0.0862239, 0.0300678, 0.580992, 0.100373, 0.687713, 0.723878, 0.49037, 0.332304, 0.772052, 0.663358, 0.547988, 0.416127, 0.983808, 0.897234, 0.234652, 0.873977, 0.726734, 0.516347, 0.0135771, 0.0687126, 0.898031, 0.745826, 0.945414, 0.596578, 0.250961, 0.680425, 0.70184, 0.3849, 0.235968, 0.650414, 0.174933, 0.871153, 0.376684, 0.740842, 0.896868, 0.203744, 0.228205, 0.368293, 0.851204, 0.779779, 0.390117, 0.196098, 0.334587, 0.965125, 0.258294, 0.994362, 0.552795, 0.00458971, 0.627195, 0.144484, 0.0193671, 0.172626, 0.863175, 0.681595, 0.424902, 0.995404, 0.866294, 0.594732, 0.0967612, 0.363474, 0.553648, 0.166862, 0.754552, 0.377603, 0.687499, 0.702658, 0.715975, 0.940931, 0.0106362, 0.403338, 0.644233, 0.518175, 0.588178, 0.778881, 0.97979, 0.932757, 0.285407, 0.0743181, 0.806927, 0.169634, 0.388293, 0.29852, 0.45683, 0.0809973, 0.995686, 0.796594, 0.442121, 0.355805, 0.286648, 0.292238, 0.337873, 0.596707, 0.419495, 0.945673, 0.0221655, 0.00437317, 0.258344, 0.594591, 0.435367, 0.240169, 0.0165289, 0.223482, 0.0831526, 0.834681, 0.10958, 0.00299531, 0.239054, 0.820969, 0.40539, 0.9016, 0.940475, 0.436835, 0.150688, 0.0904121, 0.168206, 0.997886, 0.072182, 0.26026, 0.911627, 0.17641, 0.862734, 0.969125, 0.647594, 0.0418974, 0.604534, 0.644808, 0.337931, 0.175766, 0.149241, 0.0669352, 0.498339, 0.588808, 0.207361, 0.633391, 0.676561, 0.332095, 0.392212, 0.386744, 0.313642, 0.581496, 0.587427, 0.812137, 0.838925, 0.553267, 0.239962, 0.883877, 0.277647, 0.615999, 0.277633, 0.654658, 0.569249, 0.264581, 0.285088, 0.919378, 0.310061, 0.154421, 0.81211, 0.0805758, 0.537273, 0.718268, 0.78967, 0.168712, 0.672929, 0.188122, 0.542312, 0.889333, 0.750834, 0.792864, 0.665908, 0.355375, 0.0248623, 0.859699, 0.901034, 0.978931, 0.979496, 0.611859, 0.626397, 0.109279, 0.536334, 0.403299, 0.261629, 0.214884, 0.23765, 0.365601, 0.292705, 0.757067, 0.668028, 0.777016, 0.437371, 0.959043, 0.928364, 0.623429, 0.278643, 0.767776, 0.606668, 0.41287, 0.525901, 0.20721, 0.824017, 0.00833184, 0.340564, 0.477853, 0.646877, 0.437629, 0.272634, 0.977585, 0.720644, 0.767572, 0.251215, 0.519238, 0.458834, 0.257776, 0.190404, 0.419795, 0.833873, 0.0831019, 0.23368, 0.200893, 0.789614, 0.879695, 0.0838073, 0.444594, 0.880399, 0.864939, 0.0978044, 0.66689, 0.973639, 0.918454, 0.0414451, 0.998649, 0.301783, 0.988848, 0.780013, 0.405024, 0.102775, 0.826986, 0.547494, 0.361771, 0.775435, 0.888387, 0.640246, 0.894718, 0.291769, 0.968296, 0.0865464, 0.374765, 0.886514, 0.686886, 0.00595553, 0.295335, 0.0480263, 0.312763, 0.128689, 0.779346, 0.541304, 0.611078, 0.182802, 0.678796, 0.851202, 0.377671, 0.601242, 0.0745997, 0.594458, 0.267097, 0.561975, 0.451893, 0.17634, 0.113208, 0.186267, 0.501896, 0.169807, 0.935481, 0.646633, 0.698092, 0.0125801, 0.89294, 0.0404446, 0.19095, 0.164982, 0.0281738, 0.764832, 0.199218, 0.335745, 0.847957, 0.704248, 0.0827675, 0.551416, 0.318433, 0.0174397, 0.974683, 0.355133, 0.659525, 0.299524, 0.0348649, 0.0830367, 0.892005, 0.484873, 0.35453, 0.303067, 0.0449598, 0.677799, 0.0645166, 0.210052, 0.949441, 0.769507, 0.369312, 0.131324, 0.585159, 0.432039, 0.857668, 0.587967, 0.905259, 0.230036, 0.324217, 0.97751, 0.484565, 0.629018, 0.225109, 0.273108, 0.0643733, 0.968138, 0.272667, 0.280672, 0.172835, 0.25218, 0.572744, 0.658715, 0.373569, 0.0822719, 0.467123, 0.478136, 0.441749, 0.928454, 0.675788, 0.0515112, 0.326865, 0.717996, 0.791608, 0.835636, 0.62661, 0.752345, 0.355879, 0.301332, 0.592752, 0.674709, 0.8171, 0.475421, 0.993677, 0.349471, 0.464499, 0.290476, 0.754061, 0.286752, 0.864602, 0.0794103, 0.744692, 0.902555, 0.243577, 0.541223, 0.17843, 0.990312, 0.398339, 0.645027, 0.548395, 0.843345, 0.648185, 0.435208, 0.886112, 0.4496, 0.906236, 0.411202, 0.590934, 0.954434, 0.235815, 0.281263, 0.548929, 0.153537, 0.184205, 0.7991, 0.677191, 0.436472, 0.644432, 0.266107, 0.611344, 0.479622, 0.51194, 0.219136, 0.853853, 0.436816, 0.6076, 0.59187, 0.491823, 0.839212, 0.0891322, 0.79803, 0.291623, 0.234777, 0.181739, 0.611303, 0.898885, 0.197685, 0.864132, 0.812749, 0.881813, 0.532308, 0.775868, 0.86234, 0.203799, 0.11907, 0.63381, 0.525241, 0.917297, 0.822734, 0.0351789, 0.783906, 0.197773, 0.0485804, 0.730865, 0.154961, 0.362621, 0.572194, 0.351583, 0.708539, 0.477232, 0.584068, 0.677132, 0.428083, 0.546457, 0.77613, 0.312815, 0.775791, 0.100256, 0.738037, 0.709004, 0.548878, 0.761758, 0.958375, 0.964517, 0.887815, 0.612814, 0.498814, 0.164157, 0.170602, 0.235105, 0.487629, 0.307261, 0.596674, 0.947006, 0.473144, 0.397058, 0.153987, 0.92083, 0.535958, 0.0851835, 0.282776, 0.563342, 0.0861208, 0.311185, 0.867459, 0.810231, 0.131134, 0.769348, 0.221934, 0.908438, 0.355699, 0.0335063, 0.512362, 0.989534, 0.164223, 0.144575, 0.123998, 0.635566, 0.761381, 0.690244, 0.377104, 0.966984, 0.927097, 0.221802, 0.840417, 0.656228, 0.886511, 0.0520425, 0.933234, 0.960195, 0.410967, 0.0131046, 0.98945, 0.410679, 0.416786, 0.335773, 0.867022, 0.473227, 0.218017, 0.824167, 0.042242, 0.286993, 0.479034, 0.0468841, 0.0240143, 0.752881, 0.832831, 0.550008, 0.659603, 0.283631, 0.445006, 0.0618597, 0.795936, 0.605933, 0.622893, 0.118388, 0.0121302, 0.75759, 0.366031, 0.721477, 0.850805, 0.330059, 0.395251, 0.855987, 0.291648, 0.194895, 0.844415, 0.632958, 0.10251, 0.356481, 0.264689, 0.439693, 0.495715, 0.394411, 0.996949, 0.170269, 0.638766, 0.199071, 0.931374, 0.70971, 0.226326, 0.393906, 0.0564923, 0.0181645, 0.114254, 0.756949, 0.0379847, 0.0607238, 0.766953, 0.23202, 0.368807, 0.173989, 0.408378, 0.948673, 0.650679, 0.152183, 0.0212014, 0.0289645, 0.0329749, 0.284794, 0.0103853, 0.242957, 0.598746, 0.0915884, 0.416697, 0.397829, 0.110467, 0.245823, 0.405882, 0.99591, 0.21921, 0.610271, 0.807742, 0.299738, 0.64813, 0.275229, 0.526575, 0.585021, 0.846538, 0.828594, 0.107584, 0.758753, 0.45955, 0.203831, 0.907287, 0.742649, 0.375063, 0.846021, 0.429571, 0.606226, 0.687485, 0.911635, 0.37944, 0.630247, 0.92855, 0.744963, 0.0724244, 0.364864, 0.547149, 0.265658, 0.0431736, 0.640118, 0.409493, 0.416564, 0.965693, 0.868874, 0.681317, 0.813757, 0.456762, 0.807098, 0.135874, 0.728657, 0.109546, 0.884686, 0.296474, 0.278131, 0.702295, 0.0818165, 0.154129, 0.459227, 0.863289, 0.185109, 0.549708, 0.103023, 0.321497, 0.840481, 0.967839, 0.971399, 0.195059, 0.876058, 0.0751044, 0.80548, 0.0878057, 0.933578, 0.578939, 0.212132, 0.66614, 0.541055, 0.794425, 0.940204, 0.312221, 0.578872, 0.249227, 0.682941, 0.936471, 0.233682, 0.497073, 0.855049, 0.727995, 0.122327, 0.860892, 0.92598, 0.103458, 0.271832, 0.541797, 0.353715, 0.746916, 0.119324, 0.621795, 0.776785, 0.0376066, 0.606235, 0.98535, 0.540997, 0.403493, 0.516905, 0.242495, 0.317253, 0.44587, 0.427675, 0.451131, 0.825751, 0.432025, 0.917243, 0.142327, 0.793069, 0.247703, 0.171014, 0.15947, 0.772607, 0.232115, 0.514799, 0.483581, 0.577916, 0.665164, 0.959653, 0.898639, 0.862961, 0.414654, 0.131458, 0.171707, 0.221476, 0.927684, 0.943996, 0.914863, 0.970896, 0.446371, 0.938255, 0.666103, 0.0893337, 0.909624, 0.637013, 0.775433, 0.468151, 0.116681, 0.277571, 0.0764407, 0.162423, 0.384658, 0.920455, 0.387538, 0.779293, 0.593171, 0.372044, 0.476376, 0.176086, 0.524137, 0.0438486, 0.595312, 0.321621, 0.401834, 0.750315, 0.357228, 0.526045, 0.44901, 0.662365, 0.476719, 0.322529, 0.516499, 0.708421, 0.735793, 0.0104833, 0.00532161, 0.463197, 0.98893, 0.221206, 0.418423, 0.321729, 0.799445, 0.293395, 0.265432, 0.287705, 0.628185, 0.00118771, 0.25694, 0.0278366, 0.159475, 0.803109, 0.498007, 0.944893, 0.0641895, 0.717842, 0.641131, 0.441682, 0.0740112, 0.0526145, 0.887327, 0.938251, 0.0894169, 0.0215554, 0.197522, 0.752314, 0.639109, 0.268944, 0.189877, 0.250059, 0.973319, 0.00784774, 0.182758, 0.0961477, 0.145629, 0.0574231, 0.289511, 0.427288, 0.59409, 0.809736, 0.593583, 0.826503, 0.0167115, 0.0395654, 0.175921, 0.918072, 0.988553, 0.195865, 0.0493576, 0.256882, 0.0993088, 0.267146, 0.370154, 0.612375, 0.240145, 0.368014, 0.974433, 0.817853, 0.255606, 0.5134, 0.888767, 0.376799, 0.301158, 0.807284, 0.674619, 0.710718, 0.407684, 0.364833, 0.683545, 0.551968, 0.0888487, 0.10451, 0.562518, 0.706546, 0.0930773, 0.0180842, 0.271144, 0.807563, 0.897958, 0.2587, 0.616013, 0.805699, 0.599381, 0.368372, 0.351136, 0.829284, 0.260464, 0.0157136, 0.516772, 0.42577, 0.189366, 0.951162, 0.870767, 0.96263, 0.717807, 0.0699912, 0.409069, 0.258555, 0.44689, 0.952556, 0.650453, 0.0565907, 0.944194, 0.794816, 0.349263, 0.111698, 0.0893996, 0.333501, 0.918001, 0.16194, 0.0164505, 0.899396, 0.361277, 0.556422, 0.99869, 0.182667, 0.442393, 0.996485, 0.710526, 0.292991, 0.498181, 0.609877, 0.486425, 0.313886, 0.949695, 0.989009, 0.863366, 0.155735, 0.0421055, 0.496073, 0.535372, 0.438363, 0.526073, 0.700835, 0.148732, 0.446968, 0.0329374, 0.193337, 0.155741, 0.714287, 0.411356, 0.865726, 0.681642, 0.162871, 0.574011, 0.631729, 0.896857, 0.669892, 0.825005, 0.0815891, 0.563653, 0.476689, 0.251805, 0.972645, 0.197786, 0.981898, 0.207308, 0.901507, 0.0791852, 0.124701, 0.418809, 0.83853, 0.512213, 0.0912239, 0.0111224, 0.300854, 0.897104, 0.849134, 0.489731, 0.0449163, 0.541635, 0.324326, 0.943505, 0.921968, 0.118138, 0.760508, 0.376111, 0.0268056, 0.173483, 0.0219624, 0.382466, 0.869401, 0.52782, 0.270667, 0.00334581, 0.65812, 0.494211, 0.941646, 0.80405, 0.507431, 0.183213, 0.403965, 0.243346, 0.857107, 0.348323, 0.0825182, 0.113305, 0.365823, 0.740004, 0.959118, 0.472712, 0.804029, 0.95695, 0.184744, 0.237458, 0.607636, 0.653327, 0.887677, 0.443347, 0.897552, 0.808931, 0.770809, 0.450934, 0.192356, 0.88196, 0.731589, 0.659181, 0.454563, 0.427396, 0.643558, 0.119666, 0.162486, 0.865478, 0.973537, 0.005524, 0.501481, 0.676537, 0.572447, 0.650847, 0.320487, 0.131539, 0.631316, 0.775465, 0.973387, 0.48632, 0.908495, 0.863751, 0.501378, 0.217811, 0.551988, 0.458329, 0.926665, 0.796882, 0.53953, 0.673495, 0.759102, 0.559385, 0.870888, 0.917354, 0.664628, 0.591642, 0.721897, 0.81984, 0.348603, 0.618429, 0.393732, 0.612639, 0.559268, 0.594818, 0.0240865, 0.919583, 0.951564, 0.912822, 0.834258, 0.227765, 0.858413, 0.558966, 0.99628, 0.210777, 0.190269, 0.489516, 0.886066, 0.797631, 0.721393, 0.648251, 0.123166, 0.292298, 0.342009, 0.978376, 0.340087, 0.705938, 0.340266, 0.735755, 0.386855, 0.924698, 0.364137, 0.909995, 0.0349718, 0.60813, 0.140911, 0.0576143, 0.461955, 0.563707, 0.118206, 0.568721, 0.390357, 0.201702, 0.828934, 0.212367, 0.604297, 0.340181, 0.35123, 0.143424, 0.795792, 0.566785, 0.805546, 0.770922, 0.719113, 0.0990554, 0.522208, 0.634463, 0.874989, 0.48286, 0.604899, 0.245499, 0.742334, 0.144995, 0.511141, 0.273659, 0.832553, 0.761872, 0.187341, 0.0158627, 0.68155, 0.612817, 0.29456, 0.387387, 0.823899, 0.620883, 0.673587, 0.196102, 0.328783, 0.0783226, 0.117904, 0.909313, 0.223046, 0.784899, 0.788061, 0.829547, 0.569972, 0.590199, 0.759869, 0.851828, 0.624583, 0.784306, 0.275525, 0.951656, 0.269522, 0.61056, 0.767513, 0.546942, 0.609999, 0.330411, 0.971002, 0.415065, 0.630046, 0.138175, 0.809245, 0.781137, 0.885986, 0.952628, 0.18252, 0.0135932, 0.925388, 0.802527, 0.711905, 0.459045, 0.469015, 0.454683, 0.803198, 0.738985, 0.589639, 0.729487, 0.0206505, 0.0471438, 0.555607, 0.647299, 0.710894, 0.0232273, 0.473536, 0.992742, 0.138496, 0.551738, 0.395757, 0.0232328, 0.776831, 0.40743, 0.126116, 0.762352, 0.856934, 0.938773, 0.49775, 0.815219, 0.247492, 0.936613, 0.516516, 0.55747, 0.999511, 0.645613, 0.704286, 0.552449, 0.451766, 0.287689, 0.48226, 0.430813, 0.165118, 0.618992, 0.241117, 0.314003, 0.0530261, 0.728283, 0.376294, 0.125774, 0.137133, 0.151684, 0.828655, 0.241104, 0.893395, 0.908325, 0.991044, 0.639374, 0.962975, 0.891643, 0.271515, 0.423306, 0.84826, 0.677847, 0.288955, 0.772833, 0.922881, 0.58682, 0.769327, 0.389095, 0.431119, 0.777751, 0.148845, 0.961312, 0.659001, 0.0589023, 0.141155, 0.19504, 0.000765664, 0.816062, 0.427383, 0.250311, 0.715713, 0.857908, 0.298356, 0.810578, 0.413091, 0.0148862, 0.915761, 0.147426, 0.356771, 0.166736, 0.0924138, 0.400727, 0.262604, 0.740243, 0.543766, 0.941331, 0.298581, 0.045212, 0.998012, 0.270978, 0.364636, 0.573023, 0.443122, 0.835473, 0.155941, 0.104697, 0.907616, 0.99258, 0.798865, 0.26, 0.648707, 0.805339, 0.406667, 0.67507, 0.974242, 0.664198, 0.758657, 0.0178747, 0.738077, 0.241809, 0.659722, 0.440549, 0.282782, 0.306465, 0.0758013, 0.14522, 0.191062, 0.772218, 0.321738, 0.802261, 0.739133, 0.911742, 0.405674, 0.453852, 0.790895, 0.228438, 0.133695, 0.0672329, 0.271262, 0.602318, 0.496663, 0.839782, 0.765948, 0.762234, 0.572786, 0.678214, 0.367012, 0.054096, 0.634219, 0.389622, 0.140702, 0.262828, 0.736748, 0.109723, 0.403525, 0.347585, 0.218126, 0.661328, 0.216073, 0.839315, 0.389476, 0.173967, 0.6853, 0.972736, 0.316608, 0.91018, 0.733169, 0.836239, 0.79083, 0.289316, 0.900352, 0.337066, 0.19927, 0.252872, 0.0403512, 0.334056, 0.0458046, 0.0125463, 0.518202, 0.131157, 0.891323, 0.101934, 0.745387, 0.0230805, 0.840668, 0.509314, 0.817136, 0.846837, 0.179772, 0.110293, 0.863004, 0.0407414, 0.15709, 0.723, 0.749676, 0.599542, 0.539487, 0.475971, 0.903518, 0.562761, 0.176217, 0.237273, 0.183964, 0.532962, 0.593046, 0.408261, 0.17082, 0.281051, 0.722534, 0.821272, 0.287547, 0.273163, 0.736222, 0.270509, 0.289959, 0.992854, 0.502057, 0.599229, 0.132384, 0.629982, 0.995445, 0.437534, 0.366953, 0.374743, 0.170458, 0.602025, 0.467811, 0.144916, 0.938602, 0.0962815, 0.587758, 0.580466, 0.0733088, 0.418199, 0.247033, 0.625023, 0.32498, 0.975208, 0.204406, 0.637679, 0.6115, 0.0876326, 0.603851, 0.447662, 0.64321, 0.673376, 0.964428, 0.0946905, 0.195538, 0.878627, 0.338571, 0.0178136, 0.476829, 0.554766, 0.411815, 0.449492, 0.0729066, 0.969491, 0.359562, 0.494517, 0.484236, 0.919227, 0.600618, 0.625219, 0.794333, 0.805586, 0.666122, 0.965683, 0.528569, 0.891717, 0.140393, 0.79759, 0.577391, 0.763289, 0.20801, 0.177661, 0.371169, 0.548201, 0.846194, 0.732316, 0.986391, 0.0623603, 0.172577, 0.159146, 0.768465, 0.658948, 0.531107, 0.221383, 0.436848, 0.430568, 0.0506848, 0.700965, 0.515319, 0.699194, 0.20634, 0.210227, 0.3904, 0.857165, 0.157405, 0.961468, 0.495033, 0.184921, 0.846398, 0.330724, 0.634038, 0.189147, 0.450485, 0.187222, 0.404023, 0.00236388, 0.931786, 0.135573, 0.602142, 0.618866, 0.252505, 0.54096, 0.852662, 0.739679, 0.097013, 0.480278, 0.783236, 0.765232, 0.190613, 0.394705, 0.132664, 0.997013, 0.99244, 0.254413, 0.434662, 0.0958931, 0.317958, 0.274899, 0.0537962, 0.536602, 0.946362, 0.637584, 0.48559, 0.726569, 0.566276, 0.296169, 0.64028, 0.349356, 0.470348, 0.755729, 0.446221, 0.0269839, 0.0272818, 0.660063, 0.360886, 0.0748171, 0.233837, 0.522727, 0.147242, 0.679103, 0.0294322, 0.0387432, 0.103845, 0.968886, 0.713026, 0.583265, 0.525373, 0.332164, 0.733758, 0.127217, 0.599796, 0.964788, 0.981505, 0.164519, 0.730032, 0.858293, 0.659433, 0.170366, 0.972842, 0.913257, 0.715129, 0.538941, 0.779474, 0.241045, 0.736057, 0.561962, 0.0228246, 0.896983, 0.948562, 0.558583, 0.019025, 0.158188, 0.873232, 0.242444, 0.943358, 0.375036, 0.246231, 0.665553, 0.113559, 0.682651, 0.451092, 0.763624, 0.958767, 0.520576, 0.860918, 0.606418, 0.771554, 0.691394, 0.00944814, 0.654227, 0.630449, 0.997169, 0.102747, 0.927235, 0.765837, 0.641497, 0.467332, 0.759331, 0.607432, 0.104646, 0.813646, 0.736717, 0.538414, 0.660265, 0.562663, 0.787445, 0.863065, 0.685598, 0.701698, 0.799293, 0.882257, 0.596097, 0.838928, 0.720528, 0.723564, 0.443364, 0.773785, 0.157988, 0.492769, 0.500118, 0.229944, 0.268233, 0.704697, 0.21838, 0.563423, 0.521119, 0.187359, 0.703179, 0.539207, 0.18224, 0.308922, 0.597369, 0.576366, 0.525489, 0.940259, 0.413666, 0.654303, 0.379866, 0.152853, 0.318109, 0.169557, 0.301647, 0.948932, 0.198906, 0.563176, 0.808374, 0.794709, 0.281876, 0.51802, 0.504197, 0.979889, 0.134977, 0.0674366, 0.571003, 0.0545859, 0.852502, 0.817411, 0.277611, 0.850023, 0.86635, 0.843949, 0.767062, 0.0243032, 0.832766, 0.103435, 0.766998, 0.0809732, 0.868137, 0.0436018, 0.767215, 0.944113, 0.26165, 0.535751, 0.891189, 0.613507, 0.230717, 0.826793, 0.90983, 0.902705, 0.2274, 0.0591369, 0.0952792, 0.76841, 0.271257, 0.892712, 0.858496, 0.559836, 0.746414, 0.649751, 0.923867, 0.267264, 0.476589, 0.98997, 0.382942, 0.643292, 0.980777, 0.235266, 0.0795356, 0.206256, 0.392724, 0.00524073, 0.726938, 0.22979, 0.175653, 0.370933, 0.754208, 0.518768, 0.0731024, 0.374884, 0.526815, 0.820789, 0.698781, 0.684112, 0.947069, 0.528096, 0.812364, 0.726435, 0.275394, 0.937842, 0.677265, 0.805396, 0.649637, 0.666419, 0.121323, 0.0619148, 0.726193, 0.8854, 0.835788, 0.411723, 0.550008, 0.193728, 0.201855, 0.484289, 0.227465, 0.620363, 0.098864, 0.847027, 0.889017, 0.961642, 0.284766, 0.71569, 0.210706, 0.268288, 0.654382, 0.933237, 0.608494, 0.297602, 0.985109, 0.341269, 0.574067, 0.951014, 0.381361, 0.0390001, 0.132829, 0.400454, 0.623617, 0.391841, 0.147822, 0.559094, 0.753036, 0.176367, 0.468801, 0.916402, 0.505478, 0.0937695, 0.3424, 0.265769, 0.84268, 0.799894, 0.612063, 0.615141, 0.652949, 0.514943, 0.659052, 0.381337, 0.0512221, 0.894979, 0.214731, 0.300755, 0.317488, 0.539459, 0.943168, 0.74588, 0.951298, 0.374936, 0.788679, 0.522414, 0.262568, 0.380122, 0.950226, 0.80637, 0.695311, 0.663997, 0.651776, 0.567625, 0.637554, 0.88283, 0.502462, 0.651799, 0.304513, 0.744262, 0.630791, 0.874436, 0.468431, 0.468395, 0.156895, 0.752278, 0.444929, 0.313451, 0.772185, 0.686227, 0.266354, 0.352239, 0.556416, 0.175538, 0.886954, 0.80055, 0.592855, 0.117733, 0.890135, 0.694178, 0.143462, 0.183786, 0.111361, 0.751949, 0.910558, 0.177295, 0.617773, 0.980424, 0.186026, 0.934027, 0.782383, 0.998444, 0.570814, 0.463394, 0.625836, 0.678522, 0.186423, 0.421975, 0.51969, 0.56891, 0.241427, 0.587216, 0.431899, 0.61606, 0.250613, 0.313678, 0.402734, 0.15466, 0.503842, 0.558041, 0.614553, 0.870482, 0.590434, 0.816333, 0.825288, 0.867169, 0.04316, 0.321845, 0.739151, 0.221427, 0.175579, 0.754401, 0.316374, 0.190673, 0.272849, 0.603555, 0.673068, 0.0751547, 0.268687, 0.216717, 0.867664, 0.468306, 0.817736, 0.375376, 0.747197, 0.262925, 0.884748, 0.481215, 0.531307, 0.40478, 0.727778, 0.232204, 0.0111088, 0.109155, 0.225445, 0.95549, 0.580218, 0.0179345, 0.230458, 0.90268, 0.128021, 0.606634, 0.212615, 0.643174, 0.420191, 0.966698, 0.148805, 0.936902, 0.427286, 0.922583, 0.954008, 0.489383, 0.595573, 0.862088, 0.972187, 0.766681, 0.154849, 0.939441, 0.342115, 0.317699, 0.824605, 0.534231, 0.770833, 0.198245, 0.404023, 0.180527, 0.715574, 0.271331, 0.48273, 0.209219, 0.530061, 0.190801, 0.503903, 0.335641, 0.623987, 0.261913, 0.710136, 0.52045, 0.965192, 0.0952744, 0.121001, 0.031291, 0.641217, 0.498995, 0.98109, 0.553887, 0.115804, 0.0791406, 0.0481144, 0.451669, 0.504631, 0.139138, 0.305004, 0.706337, 0.667417, 0.824515, 0.863433, 0.758306, 0.838828, 0.0628382, 0.386401, 0.444192, 0.772499, 0.59096, 0.143982, 0.455908, 0.797249, 0.754216, 0.89061, 0.0942095, 0.499635, 0.913581, 0.599755, 0.249166, 0.564834, 0.398485, 0.0133317, 0.653655, 0.397257, 0.136592, 0.818902, 0.449319, 0.801893, 0.610453, 0.264237, 0.221726, 0.337326, 0.35534, 0.925313, 0.197837, 0.36576, 0.24177, 0.369551, 0.862368, 0.927855, 0.186939, 0.281315, 0.444484, 0.970839, 0.530399, 0.663522, 0.480791, 0.298823, 0.834414, 0.000362955, 0.394165, 0.076971, 0.0220796, 0.428804, 0.889852, 0.85644, 0.208431, 0.493519, 0.643436, 0.661069, 0.777199, 0.837695, 0.726576, 0.312783, 0.344399, 0.430382, 0.235437, 0.83473, 0.172753, 0.526748, 0.885962, 0.904429, 0.487373, 0.220492, 0.999547, 0.0381287, 0.0554077, 0.266235, 0.690878, 0.0281044, 0.742065, 0.212958, 0.194056, 0.224718, 0.566314, 0.0771658, 0.213819, 0.513215, 0.282513, 0.362161, 0.318223, 0.442504, 0.419344, 0.238926, 0.997876, 0.386875, 0.832378, 0.0568294, 0.950657, 0.294634, 0.594692, 0.936411, 0.143774, 0.912139, 0.0267354, 0.235006, 0.64102, 0.491119, 0.00979097, 0.128689, 0.112191, 0.698623, 0.314074, 0.018156, 0.894285, 0.51748, 0.494384, 0.121172, 0.676978, 0.220353, 0.551305, 0.360828, 0.591426, 0.477987, 0.856079, 0.568853, 0.32561, 0.326201, 0.436064, 0.724033, 0.0356362, 0.790356, 0.458894, 0.329052, 0.613057, 0.922875, 0.980869, 0.634058, 0.0913828, 0.471529, 0.678107, 0.72559, 0.619647, 0.285882, 0.723729, 0.215217, 0.381512, 0.522362, 0.999275, 0.941393, 0.5391, 0.346071, 0.11983, 0.938514, 0.893123, 0.149674, 0.216018, 0.62274, 0.590566, 0.453861, 0.585271, 0.159612, 0.832163, 0.688786, 0.878436, 0.768609, 0.0182591, 0.521624, 0.242915, 0.319346, 0.895387, 0.680631, 0.586943, 0.36178, 0.195096, 0.940498, 0.0713945, 0.784851, 0.452908, 0.014823, 0.380542, 0.769342, 0.334072, 0.542043, 0.073854, 0.831959, 0.192065, 0.772846, 0.0207625, 0.695405, 0.122613, 0.0689288, 0.0774109, 0.402734, 0.918181, 0.492536, 0.943891, 0.396396, 0.338269, 0.174756, 0.858506, 0.706656, 0.232598, 0.902888, 0.0232391, 0.933194, 0.840573, 0.432253, 0.994002, 0.237402, 0.540469, 0.890985, 0.600949, 0.0360909, 0.994874, 0.247599, 0.528897, 0.132192, 0.559757, 0.354476, 0.608939, 0.0500324, 0.221974, 0.725789, 0.916872, 0.975481, 0.47478, 0.476658, 0.718356, 0.557299, 0.507325, 0.638196, 0.371043, 0.169353, 0.94656, 0.00855371, 0.233763, 0.725029, 0.404322, 0.772414, 0.15335, 0.550963, 0.849622, 0.733453, 0.0758419, 0.683996, 0.503317, 0.970196, 0.521742, 0.68888, 0.468305, 0.0719073, 0.678399, 0.290667, 0.75198, 0.0459418, 0.157773, 0.245017, 0.637026, 0.984097, 0.739316, 0.740636, 0.514009, 0.565287, 0.688721, 0.913287, 0.382862, 0.967688, 0.0467683, 0.424222, 0.127091, 0.927243, 0.897798, 0.287813, 0.0502903, 0.686632, 0.683619, 0.814509, 0.0899549, 0.381423, 0.527956, 0.685924, 0.420243, 0.704938, 0.65919, 0.648959, 0.94251, 0.459588, 0.25664, 0.848237, 0.887238, 0.746489, 0.893294, 0.295475, 0.0295005, 0.371808, 0.0415862, 0.544484, 0.14464, 0.793934, 0.782912, 0.0538201, 0.557197, 0.0630537, 0.838322, 0.134248, 0.553618, 0.645032, 0.354804, 0.617168, 0.876732, 0.130592, 0.679223, 0.156673, 0.12631, 0.148912, 0.926549, 0.372323, 0.496342, 0.904119, 0.747807, 0.696363, 0.275942, 0.596396, 0.375462, 0.012028, 0.548492, 0.989382, 0.475792, 0.459052, 0.100197, 0.258228, 0.912339, 0.810651, 0.868541, 0.680623, 0.0184828, 0.128553, 0.0682615, 0.761748, 0.993481, 0.716995, 0.273896, 0.452432, 0.442725, 0.699469, 0.324601, 0.248393, 0.531693, 0.774441, 0.942833, 0.184796, 0.129317, 0.90462, 0.692213, 0.248467, 0.585284, 0.988108, 0.0619278, 0.0377834, 0.696714, 0.932663, 0.302306, 0.480454, 0.239548, 0.267572, 0.34719, 0.0419092, 0.747019, 0.904019, 0.286885, 0.848883, 0.935396, 0.334755, 0.21997, 0.151156, 0.127164, 0.303261, 0.496119, 0.747873, 0.825951, 0.362257, 0.195735, 0.127633, 0.0361607, 0.22829, 0.264407, 0.254855, 0.61719, 0.820758, 0.930943, 0.22506, 0.0200303, 0.792105, 0.652014, 0.966935, 0.57851, 0.712762, 0.388077, 0.60813, 0.624291, 0.928777, 0.870221, 0.784416, 0.53137, 0.819399, 0.849431, 0.971249, 0.373368, 0.52572, 0.934896, 0.184968, 0.796003, 0.930155, 0.336169, 0.694969, 0.305976, 0.513695, 0.873715, 0.923034, 0.116645, 0.320457, 0.112744, 0.395056, 0.483268, 0.403615, 0.246422, 0.112713, 0.955845, 0.530588, 0.378185, 0.203345, 0.49863, 0.981093, 0.593413, 0.856221, 0.647784, 0.34789, 0.538461, 0.176787, 0.760408, 0.681924, 0.610988, 0.707563, 0.299869, 0.734003, 0.1127, 0.0834526, 0.0220461, 0.117956, 0.0304949, 0.320282, 0.515334, 0.132549, 0.405509, 0.761268, 0.180804, 0.585011, 0.675927, 0.933179, 0.583383, 0.181295, 0.858632, 0.61501, 0.115127, 0.160397, 0.286001, 0.0365904, 0.612176, 0.890251, 0.855244, 0.544736, 0.600654, 0.192526, 0.207142, 0.585061, 0.723241, 0.0305854, 0.906201, 0.300921, 0.658964, 0.968552, 0.278554, 0.0310787, 0.717203, 0.248136, 0.630781, 0.270253, 0.289819, 0.734087, 0.720263, 0.171219, 0.899631, 0.564664, 0.0258576, 0.519758, 0.644002, 0.701642, 0.869865, 0.786975, 0.717549, 0.0491178, 0.434058, 0.394163, 0.885417, 0.727599, 0.785278, 0.242689, 0.492116, 0.85453, 0.155595, 0.728303, 0.856938, 0.399704, 0.241284, 0.850065, 0.922071, 0.877973, 0.168211, 0.851038, 0.157012, 0.303181, 0.356058, 0.583792, 0.191925, 0.941222, 0.492563, 0.144931, 0.223785, 0.814394, 0.338385, 0.540184, 0.774187, 0.119114, 0.206181, 0.735758, 0.575481, 0.158476, 0.547546, 0.279155, 0.878953, 0.495945, 0.576014, 0.457666, 0.222405, 0.193601, 0.204385, 0.90942, 0.722909, 0.115831, 0.996332, 0.116538, 0.109814, 0.789295, 0.787046, 0.276958, 0.493615, 0.708681, 0.859758, 0.212426, 0.441307, 0.0215186, 0.382688, 0.349373, 0.830311, 0.364945, 0.78871, 0.092119, 0.411143, 0.180855, 0.643677, 0.274428, 0.928137, 0.301677, 0.238322, 0.631149, 0.876727, 0.617039, 0.819574, 0.320929, 0.566256, 0.091213, 0.720415, 0.451016, 0.841243, 0.0637418, 0.773849, 0.523216, 0.129316, 0.228553, 0.83839, 0.720857, 0.4508, 0.729326, 0.283889, 0.521687, 0.670042, 0.310788, 0.237641, 0.198172, 0.857647, 0.590305, 0.486897, 0.895551, 0.976329, 0.0461186, 0.764466, 0.156225, 0.150065, 0.121629, 0.339321, 0.864672, 0.0475929, 0.181843, 0.930669, 0.749646, 0.413713, 0.758736, 0.265734, 0.811058, 0.83143, 0.148884, 0.814754, 0.00183105, 0.304799, 0.281774, 0.381291, 0.598088, 0.963552, 0.423599, 0.30476, 0.107936, 0.817804, 0.930188, 0.0292939, 0.859812, 0.991556, 0.336604, 0.782314, 0.388782, 0.295328, 0.884533, 0.257462, 0.300516, 0.591447, 0.723904, 0.326247, 0.146774, 0.97647, 0.297485, 0.589497, 0.970214, 0.0410628, 0.921568, 0.62248, 0.339269, 0.495581, 0.0767454, 0.966806, 0.0589158, 0.396406, 0.995582, 0.745146, 0.0589678, 0.0342307, 0.431874, 0.567572, 0.336451, 0.244786, 0.460678, 0.862148, 0.97088, 0.511187, 0.802736, 0.30921, 0.617095, 0.445207, 0.0750825, 0.394839, 0.222186, 0.367263, 0.00337537, 0.627881, 0.134698, 0.665422, 0.879893, 0.622672, 0.0302323, 0.885841, 0.537989, 0.911056, 0.278257, 0.716116, 0.269452, 0.979533, 0.410223, 0.618212, 0.317339, 0.719066, 0.905226, 0.95324, 0.957791, 0.250142, 0.522632, 0.360267, 0.357336, 0.776491, 0.882933, 0.100169, 0.116828, 0.166653, 0.768858, 0.850701, 0.0346909, 0.375351, 0.318612, 0.881048, 0.778074, 0.45394, 0.19884, 0.211993, 0.998809, 0.286914, 0.757266, 0.413899, 0.240068, 0.399836, 0.000750573, 0.158225, 0.279642, 0.761147, 0.492584, 0.684564, 0.0415782, 0.476355, 0.126179, 0.116378, 0.0221162, 0.97848, 0.891277, 0.45055, 0.782095, 0.156758, 0.794473, 0.618912, 0.531278, 0.602697, 0.399455, 0.702711, 0.263113, 0.0445142, 0.753808, 0.37428, 0.223015, 0.836329, 0.606861, 0.735915, 0.142172, 0.587444, 0.767676, 0.170938, 0.590825, 0.152644, 0.675136, 0.514966, 0.869304, 0.124112, 0.770372, 0.892914, 0.0584586, 0.0171729, 0.441062, 0.706832, 0.840641, 0.812824, 0.782498, 0.530312, 0.0831706, 0.606121, 0.082016, 0.988946, 0.872385, 0.134207, 0.35928, 0.712274, 0.225883, 0.218709, 0.332244, 0.338422, 0.117309, 0.372851, 0.463702, 0.45301, 0.0303854, 0.231422, 0.697024, 0.482024, 0.0043619, 0.884546, 0.530352, 0.722058, 0.657565, 0.596428, 0.221456, 0.47345, 0.447847, 0.486759, 0.913181, 0.218909, 0.837963, 0.381696, 0.285305, 0.795781, 0.876721, 0.726653, 0.877756, 0.25639, 0.326533, 0.0298693, 0.242767, 0.284716, 0.0232318, 0.408906, 0.192667, 0.874931, 0.000391752, 0.660105, 0.207311, 0.813546, 0.00368367, 0.867223, 0.68173, 0.451206, 0.20393, 0.130545, 0.513202, 0.373289, 0.04779, 0.591133, 0.360522, 0.828792, 0.204391, 0.261686, 0.840183, 0.753748, 0.950143, 0.54666, 0.394118, 0.625572, 0.318039, 0.074424, 0.168893, 0.760687, 0.81346, 0.447106, 0.127068, 0.881654, 0.533629, 0.0562974, 0.0354889, 0.865537, 0.685353, 0.326312, 0.0881701, 0.868933, 0.603044, 0.645942, 0.644711, 0.657063, 0.480383, 0.246866, 0.183549, 0.0892146, 0.441892, 0.531132, 0.954091, 0.159256, 0.0835811, 0.493946, 0.476517, 0.942527, 0.408721, 0.00653435, 0.0834318, 0.524329, 0.186832, 0.629579, 0.172714, 0.0858283, 0.0689363, 0.34424, 0.782379, 0.0185725, 0.584837, 0.174917, 0.487611, 0.445817, 0.886239, 0.468502, 0.476558, 0.229707, 0.129198, 0.272364, 0.0300387, 0.101355, 0.136276, 0.358289, 0.987152, 0.239242, 0.682611, 0.661904, 0.0805846, 0.14475, 0.775397, 0.910405, 0.1246, 0.222585, 0.058568, 0.072662, 0.85029, 0.368821, 0.360277, 0.569662, 0.465136, 0.295499, 0.757381, 0.561263, 0.152508, 0.579781, 0.762937, 0.865448, 0.315933, 0.0928943, 0.355187, 0.705349, 0.28899, 0.378469, 0.625726, 0.386859, 0.00989368, 0.203887, 0.379569, 0.405408, 0.269942, 0.574519, 0.546921, 0.307467, 0.83233, 0.27854, 0.484269, 0.506514, 0.766033, 0.202428, 0.705517, 0.468779, 0.462951, 0.917114, 0.0420313, 0.63035, 0.690599, 0.0984404, 0.365548, 0.498503, 0.0900206, 0.446141, 0.784607, 0.971757, 0.862731, 0.720257, 0.779566, 0.252187, 0.140158, 0.292969, 0.943034, 0.249158, 0.540571, 0.14069, 0.322399, 0.332654, 0.872873, 0.10853, 0.0938648, 0.195022, 0.108344, 0.647948, 0.0539708, 0.841677, 0.903013, 0.847462, 0.817227, 0.834615, 0.440096, 0.284655, 0.966755, 0.884198, 0.0708221, 0.448811, 0.114418, 0.655087, 0.550545, 0.619192, 0.382552, 0.635639, 0.0903912, 0.80223, 0.885799, 0.994593, 0.636088, 0.130848, 0.320617, 0.751163, 0.374591, 0.494888, 0.744976, 0.348855, 0.350868, 0.705441, 0.742399, 0.336918, 0.180846, 0.0451081, 0.68227, 0.515551, 0.0282521, 0.26814, 0.170132, 0.103779, 0.221597, 0.568927, 0.237043, 0.541676, 0.74259, 0.492674, 0.763025, 0.511421, 0.85459, 0.776193, 0.690783, 0.492501, 0.419218, 0.140563, 0.171486, 0.772961, 0.983848, 0.565914, 0.830099, 0.688199, 0.469671, 0.425257, 0.248831, 0.229074, 0.853564, 0.589752, 0.947709, 0.729819, 0.236991, 0.551146, 0.225102, 0.181392, 0.706441, 0.0775105, 0.0841077, 0.35211, 0.978525, 0.218744, 0.750949, 0.704113, 0.449898, 0.966484, 0.0106887, 0.820635, 0.236401, 0.880151, 0.271564, 0.610231, 0.88292, 0.367338, 0.395313, 0.988624, 0.579237, 0.585322, 0.820054, 0.511555, 0.530661, 0.986911, 0.414232, 0.437382, 0.650508, 0.925384, 0.733178, 0.985954, 0.526044, 0.0999448, 0.223699, 0.661449, 0.275497, 0.595932, 0.0252661, 0.358223, 0.00490222, 0.00723672, 0.450841, 0.913175, 0.664549, 0.09219, 0.813527, 0.874422, 0.87645, 0.261922, 0.181881, 0.41414, 0.879238, 0.32461, 0.315214, 0.464158, 0.237772, 0.500516, 0.0593136, 0.878194, 0.0388181, 0.269684, 0.555233, 0.208229, 0.735903, 0.43728, 0.203055, 0.55765, 0.262298, 0.280388, 0.616353, 0.664842, 0.224197, 0.649632, 0.633621, 0.380696, 0.0245201, 0.483146, 0.221768, 0.441952, 0.959894, 0.0493276, 0.616725, 0.104681, 0.230533, 0.707058, 0.500384, 0.05228, 0.134377, 0.0405846, 0.369997, 0.747358, 0.345489, 0.926711, 0.307617, 0.229975, 0.713876, 0.644125, 0.119532, 0.878276, 0.992438, 0.958023, 0.439826, 0.681482, 0.419516, 0.488463, 0.180604, 0.0648086, 0.753004, 0.881174, 0.0430597, 0.792289, 0.384788, 0.165759, 0.953536, 0.941777, 0.103897, 0.358685, 0.223135, 0.700617, 0.645657, 0.199259, 0.724836, 0.258711, 0.771646, 0.623592, 0.7923, 0.525011, 0.79812, 0.917418, 0.0408786, 0.70516, 0.685949, 0.845311, 0.848584, 0.816048, 0.577728, 0.0632474, 0.0337705, 0.749029, 0.354352, 0.115613, 0.405688, 0.354145, 0.0960672, 0.545181, 0.128382, 0.707834, 0.777129, 0.455415, 0.291398, 0.202387, 0.312735, 0.231164, 0.915044, 0.105688, 0.992714, 0.475474, 0.547683, 0.536471, 0.12417, 0.890503, 0.969704, 0.398818, 0.652417, 0.43562, 0.459029, 0.526732, 0.623382, 0.328677, 0.629836, 0.921082, 0.18711, 0.214384, 0.233311, 0.226147, 0.797971, 0.534456, 0.256337, 0.689548, 0.193202, 0.503527, 0.132612, 0.0113974, 0.561125, 0.951401, 0.642326, 0.713237, 0.257228, 0.287788, 0.0727935, 0.992315, 0.492784, 0.753093, 0.787538, 0.302604, 0.276507, 0.421724, 0.53667, 0.521195, 0.914161, 0.477701, 0.667751, 0.834651, 0.719402, 0.622925, 0.610117, 0.0918504, 0.827973, 0.776474, 0.997031, 0.604986, 0.693104, 0.920856, 0.953291, 0.753704, 0.937652, 0.49416, 0.0343811, 0.210229, 0.718012, 0.00326219, 0.662774, 0.545044, 0.605222, 0.793254, 0.812442, 0.223717, 0.222193, 0.414127, 0.109099, 0.0470771, 0.81452, 0.52753, 0.40668, 0.862339, 0.45624, 0.403171, 0.949618, 0.0508641, 0.107696, 0.548259, 0.703493, 0.77282, 0.897441, 0.960316, 0.375285, 0.672975, 0.0594269, 0.211847, 0.596767, 0.375966, 0.264368, 0.153689, 0.43175, 0.334658, 0.792881, 0.712137, 0.255055, 0.835249, 0.19435, 0.523901, 0.747742, 0.021932, 0.825722, 0.12995, 0.746476, 0.0302897, 0.143445, 0.633426, 0.667043, 0.062095, 0.378326, 0.992086, 0.460239, 0.868868, 0.510366, 0.870358, 0.384342, 0.225636, 0.0825906, 0.0475967, 0.202343, 0.63943, 0.753755, 0.00888219, 0.92597, 0.4676, 0.526284, 0.312375, 0.526216, 0.663695, 0.0312666, 0.102075, 0.0150701, 0.693283, 0.997117, 0.954093, 0.815279, 0.763802, 0.725875, 0.292492, 0.344055, 0.627345, 0.522168, 0.621334, 0.333947, 0.1424, 0.165267, 0.499736, 0.746754, 0.79877, 0.776785, 0.557139, 0.0425215, 0.90292, 0.316732, 0.869703, 0.785483, 0.0158521, 0.94999, 0.484853, 0.980765, 0.216394, 0.536688, 0.882527, 0.29969, 0.474124, 0.660068, 0.978133, 0.562514, 0.922584, 0.106834, 0.561946, 0.898387, 0.53585, 0.520597, 0.411147, 0.0280199, 0.0521744, 0.98895, 0.0385853, 0.0455102, 0.970508, 0.256327, 0.0389597, 0.624331, 0.274006, 0.378284, 0.33111, 0.482736, 0.923735, 0.0209944, 0.931935, 0.435454, 0.174434, 0.346234, 0.317617, 0.850623, 0.278118, 0.927707, 0.513877, 0.381132, 0.44689, 0.930011, 0.607872, 0.928808, 0.299398, 0.203065, 0.120989, 0.316432, 0.383152, 0.842135, 0.704556, 0.118635, 0.422995, 0.000466669, 0.147807, 0.502291, 0.993403, 0.601303, 0.222253, 0.0296877, 0.0284052, 0.87341, 0.233206, 0.0381863, 0.700907, 0.689801, 0.399134, 0.784999, 0.63014, 0.865453, 0.287433, 0.990328, 0.882574, 0.0774038, 0.778073, 0.484293, 0.738884, 0.684839, 0.468305, 0.0653757, 0.997647, 0.0303581, 0.0133819, 0.670839, 0.505136, 0.607782, 0.915422, 0.861656, 0.149417, 0.707365, 0.602442, 0.647925, 0.511412, 0.956392, 0.726319, 0.30591, 0.561806, 0.297597, 0.527965, 0.43694, 0.773655, 0.763751, 0.493458, 0.224437, 0.938869, 0.546626, 0.641176, 0.676299, 0.120913, 0.244841, 0.913733, 0.392493, 0.380461, 0.917425, 0.346866, 0.946269, 0.115818, 0.19961, 0.900466, 0.0815982, 0.91916, 0.461648, 0.865653, 0.983458, 0.810979, 0.762103, 0.384499, 0.572888, 0.156534, 0.281532, 0.862645, 0.278199, 0.337823, 0.407339, 0.193315, 0.384848, 0.986914, 0.819812, 0.828864, 0.658969, 0.424426, 0.0739355, 0.947452, 0.368272, 0.402025, 0.242601, 0.693957, 0.215303, 0.814995, 0.265798, 0.0264865, 0.286466, 0.015661, 0.583045, 0.291179, 0.669322, 0.511267, 0.229816, 0.131331, 0.730827, 0.74252, 0.93343, 0.720619, 0.612438, 0.259147, 0.112357, 0.586765, 0.0858606, 0.153671, 0.773048, 0.822479, 0.443573, 0.55486, 0.910416, 0.85707, 0.0148852, 0.853716, 0.228104, 0.513679, 0.951789, 0.727959, 0.200735, 0.210806, 0.125079, 0.228391, 0.209873, 0.237775, 0.108994, 0.446076, 0.221169, 0.834191, 0.98984, 0.0542308, 0.58488, 0.315972, 0.254531, 0.828329, 0.904021, 0.875414, 0.150553, 0.0298306, 0.215226, 0.586307, 0.417627, 0.479362, 0.172838, 0.5259, 0.908004, 0.0605249, 0.859353, 0.828878, 0.984935, 0.39564, 0.749108, 0.526107, 0.157768, 0.336767, 0.580207, 0.598838, 0.755481, 0.144988, 0.698507, 0.464909, 0.344876, 0.172977, 0.468696, 0.668333, 0.919779, 0.232349, 0.715044, 0.280844, 0.1119, 0.676872, 0.209419, 0.0207841, 0.770692, 0.610173, 0.803793, 0.47074, 0.186878, 0.269158, 0.749201, 0.540574, 0.915717, 0.523814, 0.571266, 0.10382, 0.811718, 0.731922, 0.468545, 0.708574, 0.323435, 0.610058, 0.45889, 0.356482, 0.981413, 0.812081, 0.802843, 0.140016, 0.27479, 0.879972, 0.976442, 0.0214847, 0.606645, 0.452834, 0.33259, 0.259304, 0.324395, 0.22969, 0.0908657, 0.994912, 0.00520821, 0.219624, 0.419453, 0.820987, 0.279137, 0.787163, 0.742862, 0.702888, 0.0585412, 0.17378, 0.803108, 0.967417, 0.554914, 0.676712, 0.801808, 0.203466, 0.917554, 0.547952, 0.110401, 0.566604, 0.000901547, 0.428874, 0.410979, 0.882269, 0.568531, 0.204807, 0.158472, 0.797748, 0.923136, 0.626076, 0.995379, 0.970147, 0.636004, 0.256138, 0.263984, 0.0188201, 0.836662, 0.891073, 0.815278, 0.213562, 0.265101, 0.287762, 0.853247, 0.162469, 0.27606, 0.396637, 0.0501615, 0.519138, 0.364286, 0.0357294, 0.34329, 0.43058, 0.134315, 0.399785, 0.243176, 0.897879, 0.0347835, 0.977129, 0.964701, 0.992374, 0.5317, 0.855217, 0.0626301, 0.720206, 0.157749, 0.331044, 0.119822, 0.361034, 0.657655, 0.734292, 0.487953, 0.878978, 0.348533, 0.361729, 0.655813, 0.495023, 0.407889, 0.922945, 0.903442, 0.38402, 0.512097, 0.429171, 0.506999, 0.895231, 0.182171, 0.618858, 0.88438, 0.296033, 0.481725, 0.858442, 0.493233, 0.151025, 0.16046, 0.180032, 0.441936, 0.211194, 0.7617, 0.867114, 0.199935, 0.743809, 0.637003, 0.808767, 0.561247, 0.776601, 0.43555, 0.188716]}
@@ -256,4 +258,4 @@ input0 = { i86: [0.791841, 0.131271, 0.840444, 0.524133, 0.301398, 0.711596, 8.7
output0 = {i85: [0.605085, 0.0733608, 0.0200205, 0.114568, 0.178815, 0.0580576, 0.123144, 0.232838, 0.0916902, 0.111395, 0.138349]}
Example((input0, output0))
-
+"""
diff --git a/tests/nnapi/specs/V1_0/mobilenet_quantized.mod.py b/tests/nnapi/specs/V1_0/mobilenet_quantized.mod.py
index 3f9684950..3a49f0719 100644
--- a/tests/nnapi/specs/V1_0/mobilenet_quantized.mod.py
+++ b/tests/nnapi/specs/V1_0/mobilenet_quantized.mod.py
@@ -1,3 +1,5 @@
+# Comment out: too large test. we can test mobilenet using frameworktest
+"""
# Passing weights via shared memory
Configuration.use_shm_for_weights = True
model = Model()
@@ -222,40 +224,41 @@ i83 = Parameter("op83", "TENSOR_INT32", "{1001}, 0.000139550233143, 0", [-4628,
i84 = Parameter("op84", "TENSOR_QUANT8_ASYMM", "{1001, 1, 1, 1024}, 0.00593112036586, 66", [65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 66, 65, 65, 65, 66, 66, 65, 65, 65, 66, 66, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 66, 65, 66, 65, 65, 65, 65, 65, 66, 66, 65, 65, 66, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 66, 65, 65, 65, 65, 66, 65, 65, 66, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 66, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 66, 66, 65, 65, 65, 66, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 66, 66, 65, 65, 66, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 66, 65, 66, 65, 65, 66, 65, 65, 66, 65, 65, 66, 66, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 66, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 66, 65, 65, 65, 66, 65, 65, 66, 65, 65, 65, 65, 66, 66, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 66, 65, 65, 65, 65, 66, 65, 66, 65, 65, 66, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 66, 65, 66, 65, 65, 65, 65, 65, 65, 65, 66, 66, 66, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 66, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 66, 65, 66, 65, 65, 66, 65, 65, 66, 66, 65, 66, 65, 66, 65, 65, 65, 65, 65, 65, 66, 66, 65, 65, 65, 66, 65, 65, 65, 66, 66, 66, 65, 65, 65, 65, 66, 65, 65, 66, 65, 65, 66, 66, 65, 65, 65, 66, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 66, 66, 65, 65, 65, 66, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 66, 65, 65, 65, 66, 65, 65, 66, 65, 66, 66, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 66, 65, 66, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 66, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 66, 65, 65, 66, 65, 65, 66, 66, 66, 65, 66, 66, 65, 65, 65, 65, 65, 66, 65, 65, 65, 66, 65, 65, 66, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 66, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 66, 66, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 66, 65, 66, 65, 65, 66, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 66, 66, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 66, 66, 65, 65, 65, 65, 65, 66, 65, 66, 65, 65, 65, 65, 65, 65, 66, 66, 65, 65, 65, 66, 65, 65, 66, 65, 65, 65, 65, 65, 66, 65, 65, 66, 66, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 66, 65, 66, 66, 66, 65, 65, 65, 65, 65, 65, 66, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 66, 65, 66, 65, 66, 65, 66, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 66, 66, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 66, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 66, 66, 65, 66, 65, 66, 66, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 66, 65, 66, 65, 65, 65, 65, 66, 66, 65, 65, 66, 65, 65, 66, 65, 65, 65, 65, 65, 66, 66, 65, 65, 65, 66, 65, 66, 66, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 66, 65, 65, 65, 66, 65, 66, 65, 65, 65, 65, 65, 65, 65, 66, 66, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 66, 65, 66, 65, 65, 65, 65, 66, 65, 66, 65, 65, 65, 65, 65, 66, 65, 65, 65, 66, 65, 66, 65, 65, 65, 65, 65, 65, 65, 66, 65, 65, 65, 54, 62, 53, 66, 54, 50, 59, 72, 57, 50, 75, 65, 55, 72, 73, 57, 72, 61, 44, 69, 56, 64, 64, 58, 56, 52, 75, 70, 72, 50, 76, 65, 71, 71, 54, 62, 58, 88, 51, 56, 86, 54, 75, 114, 64, 74, 67, 72, 64, 67, 62, 55, 62, 89, 67, 57, 56, 78, 65, 75, 107, 101, 69, 75, 55, 71, 83, 71, 70, 85, 72, 66, 55, 74, 54, 68, 70, 58, 60, 78, 50, 58, 66, 90, 70, 63, 74, 100, 63, 57, 57, 67, 56, 57, 69, 64, 67, 98, 64, 62, 76, 48, 53, 57, 79, 78, 52, 50, 74, 56, 57, 63, 82, 67, 70, 67, 63, 84, 59, 66, 49, 64, 58, 53, 79, 57, 78, 60, 64, 50, 86, 60, 65, 65, 64, 55, 83, 62, 64, 82, 75, 64, 71, 67, 52, 78, 81, 60, 63, 63, 73, 52, 58, 46, 46, 64, 69, 45, 61, 83, 67, 57, 65, 66, 49, 56, 49, 54, 58, 62, 71, 49, 65, 61, 53, 63, 66, 80, 61, 54, 66, 58, 52, 53, 76, 57, 80, 68, 94, 67, 65, 51, 65, 64, 70, 69, 54, 77, 82, 37, 59, 75, 57, 51, 57, 51, 68, 54, 55, 70, 66, 57, 57, 61, 69, 64, 69, 65, 51, 65, 35, 51, 61, 60, 69, 90, 71, 65, 49, 47, 66, 71, 67, 68, 53, 59, 87, 59, 58, 79, 77, 80, 52, 49, 75, 78, 65, 66, 62, 82, 73, 57, 64, 69, 66, 77, 61, 77, 82, 44, 65, 56, 61, 49, 74, 87, 51, 78, 52, 62, 68, 75, 55, 74, 53, 54, 72, 65, 63, 64, 64, 63, 63, 58, 77, 68, 52, 61, 85, 53, 67, 67, 66, 52, 49, 58, 72, 65, 54, 51, 58, 77, 90, 79, 66, 62, 57, 101, 63, 61, 44, 56, 61, 55, 78, 51, 58, 63, 61, 65, 63, 47, 74, 55, 59, 72, 50, 68, 58, 74, 76, 73, 46, 64, 71, 63, 60, 69, 65, 84, 73, 75, 60, 125, 58, 58, 55, 59, 57, 64, 78, 52, 51, 66, 114, 76, 62, 59, 71, 66, 59, 48, 58, 56, 51, 97, 60, 47, 86, 69, 52, 63, 69, 48, 76, 73, 69, 58, 85, 70, 46, 63, 48, 68, 62, 72, 58, 78, 82, 77, 73, 92, 106, 55, 64, 54, 59, 53, 54, 64, 61, 70, 52, 57, 60, 46, 66, 61, 68, 63, 53, 56, 68, 50, 64, 73, 64, 59, 69, 78, 65, 67, 62, 60, 50, 67, 80, 70, 85, 61, 66, 60, 58, 59, 68, 75, 57, 56, 57, 58, 63, 66, 47, 76, 54, 68, 55, 54, 75, 69, 138, 85, 49, 51, 53, 85, 73, 73, 56, 54, 58, 73, 52, 58, 59, 55, 77, 84, 83, 52, 49, 65, 64, 57, 69, 59, 43, 64, 62, 65, 50, 59, 60, 60, 66, 59, 78, 47, 60, 55, 50, 70, 90, 55, 62, 60, 97, 49, 58, 72, 59, 64, 75, 74, 64, 63, 59, 66, 69, 64, 67, 70, 72, 60, 69, 138, 73, 63, 64, 62, 75, 59, 74, 94, 69, 84, 58, 61, 76, 65, 95, 60, 126, 61, 60, 76, 74, 79, 65, 65, 69, 70, 80, 59, 57, 65, 52, 88, 58, 55, 76, 79, 66, 49, 51, 66, 62, 80, 60, 77, 49, 96, 54, 56, 53, 52, 48, 80, 71, 55, 60, 86, 68, 73, 65, 65, 71, 79, 59, 69, 76, 86, 73, 98, 63, 45, 73, 106, 61, 63, 61, 84, 105, 80, 53, 50, 63, 103, 51, 92, 66, 50, 71, 66, 64, 65, 65, 59, 60, 72, 82, 64, 74, 65, 77, 105, 69, 60, 59, 79, 51, 72, 49, 75, 77, 58, 66, 60, 77, 63, 65, 68, 69, 58, 74, 55, 95, 83, 56, 67, 65, 68, 59, 53, 75, 65, 63, 60, 67, 68, 76, 68, 80, 56, 68, 45, 52, 64, 78, 66, 77, 75, 72, 106, 47, 78, 76, 77, 63, 60, 64, 75, 89, 123, 66, 68, 57, 71, 77, 60, 47, 76, 54, 60, 64, 65, 61, 100, 60, 72, 54, 49, 62, 80, 87, 62, 55, 51, 58, 57, 51, 77, 59, 65, 58, 60, 57, 93, 52, 69, 70, 64, 63, 63, 62, 87, 63, 75, 51, 60, 68, 59, 68, 60, 52, 67, 69, 75, 51, 65, 59, 68, 64, 51, 79, 85, 104, 50, 59, 62, 72, 71, 65, 95, 56, 62, 58, 74, 103, 64, 68, 59, 110, 67, 57, 57, 58, 55, 51, 75, 75, 54, 70, 54, 64, 66, 61, 59, 71, 65, 55, 61, 65, 57, 69, 70, 76, 60, 70, 44, 64, 62, 59, 46, 74, 83, 66, 65, 80, 54, 73, 90, 61, 59, 68, 66, 58, 54, 53, 53, 70, 64, 54, 74, 56, 72, 74, 57, 61, 69, 72, 49, 65, 57, 102, 61, 71, 68, 70, 67, 54, 42, 79, 59, 81, 58, 42, 73, 53, 63, 52, 58, 66, 51, 61, 85, 55, 95, 66, 63, 106, 61, 57, 63, 60, 64, 72, 53, 63, 47, 49, 70, 64, 63, 67, 67, 71, 60, 61, 72, 50, 67, 64, 56, 70, 125, 46, 64, 81, 76, 59, 53, 55, 59, 77, 74, 66, 52, 64, 44, 72, 61, 39, 91, 62, 93, 61, 55, 54, 52, 70, 75, 58, 78, 62, 62, 71, 71, 62, 53, 77, 47, 47, 59, 81, 82, 69, 73, 55, 65, 67, 67, 83, 63, 64, 58, 69, 54, 54, 73, 52, 67, 60, 68, 56, 63, 66, 76, 84, 62, 68, 71, 65, 55, 55, 61, 64, 78, 64, 76, 53, 63, 68, 67, 55, 92, 71, 68, 58, 49, 100, 63, 73, 65, 54, 83, 64, 98, 58, 71, 97, 53, 56, 50, 56, 63, 61, 74, 50, 65, 66, 84, 72, 58, 57, 75, 76, 78, 46, 81, 101, 63, 70, 82, 62, 50, 53, 84, 56, 77, 62, 63, 71, 64, 67, 73, 70, 67, 57, 64, 68, 74, 72, 47, 62, 48, 86, 61, 60, 61, 82, 56, 67, 66, 64, 69, 59, 61, 68, 57, 57, 72, 89, 71, 48, 66, 68, 58, 46, 102, 74, 74, 69, 67, 59, 58, 92, 53, 64, 65, 75, 68, 51, 99, 79, 52, 54, 70, 63, 72, 80, 60, 70, 60, 80, 72, 64, 57, 73, 66, 68, 62, 77, 56, 62, 68, 61, 76, 59, 58, 54, 82, 85, 73, 70, 55, 58, 75, 67, 50, 61, 55, 50, 70, 124, 63, 66, 73, 62, 112, 71, 69, 61, 56, 54, 57, 60, 70, 58, 56, 73, 60, 56, 69, 60, 59, 68, 73, 60, 62, 74, 75, 53, 62, 81, 64, 69, 65, 58, 85, 54, 99, 60, 60, 93, 69, 47, 68, 68, 58, 62, 75, 58, 55, 67, 57, 64, 46, 72, 69, 53, 56, 56, 91, 63, 59, 54, 64, 61, 71, 58, 67, 66, 74, 110, 57, 88, 67, 48, 61, 66, 71, 71, 63, 62, 76, 78, 60, 60, 50, 88, 83, 52, 64, 60, 106, 71, 61, 58, 66, 71, 47, 65, 68, 96, 48, 65, 66, 60, 58, 60, 88, 56, 62, 60, 59, 71, 64, 55, 59, 66, 53, 58, 54, 67, 49, 61, 69, 65, 43, 60, 52, 58, 60, 61, 68, 54, 63, 67, 35, 87, 67, 68, 69, 59, 62, 54, 65, 58, 72, 95, 63, 71, 59, 61, 64, 56, 77, 77, 57, 57, 54, 60, 64, 96, 53, 77, 76, 72, 64, 57, 60, 69, 72, 76, 54, 63, 70, 67, 57, 70, 59, 54, 80, 61, 105, 56, 58, 56, 50, 75, 91, 65, 60, 90, 69, 59, 65, 70, 92, 100, 74, 45, 53, 69, 62, 118, 60, 107, 69, 57, 75, 44, 48, 59, 66, 56, 60, 67, 74, 50, 75, 86, 59, 73, 83, 78, 62, 57, 75, 44, 50, 49, 46, 62, 65, 67, 73, 60, 60, 61, 76, 53, 49, 56, 62, 76, 53, 67, 50, 62, 84, 61, 75, 62, 66, 69, 66, 79, 57, 78, 60, 66, 53, 68, 74, 74, 67, 78, 75, 69, 65, 63, 83, 84, 92, 68, 58, 56, 66, 71, 60, 54, 60, 67, 62, 51, 89, 75, 69, 61, 73, 81, 53, 65, 62, 78, 60, 120, 71, 58, 55, 62, 73, 78, 40, 56, 76, 70, 79, 51, 41, 72, 63, 68, 57, 66, 74, 69, 72, 63, 65, 65, 65, 68, 66, 56, 64, 73, 55, 55, 105, 63, 54, 64, 123, 105, 88, 72, 61, 74, 66, 60, 58, 93, 62, 71, 63, 54, 60, 69, 86, 64, 66, 73, 49, 63, 58, 65, 70, 73, 56, 54, 66, 64, 56, 62, 84, 56, 77, 70, 60, 63, 71, 69, 60, 51, 62, 58, 85, 46, 57, 62, 82, 67, 83, 54, 51, 39, 59, 60, 78, 63, 55, 132, 102, 55, 70, 54, 74, 80, 71, 64, 50, 50, 71, 63, 66, 62, 58, 54, 65, 71, 62, 67, 57, 46, 57, 59, 51, 54, 57, 64, 60, 55, 55, 64, 64, 64, 62, 63, 69, 52, 64, 61, 86, 83, 68, 63, 66, 68, 73, 73, 64, 54, 77, 56, 81, 95, 82, 62, 54, 52, 73, 68, 58, 93, 66, 67, 102, 61, 53, 53, 58, 60, 50, 71, 88, 86, 46, 67, 53, 54, 54, 101, 66, 83, 58, 53, 47, 79, 63, 65, 77, 61, 56, 58, 54, 63, 55, 75, 94, 54, 98, 67, 66, 55, 55, 65, 52, 58, 87, 67, 70, 74, 103, 59, 76, 60, 54, 73, 69, 82, 65, 62, 78, 49, 58, 54, 56, 70, 73, 63, 75, 50, 59, 70, 67, 69, 57, 59, 143, 48, 56, 63, 68, 66, 62, 74, 63, 62, 76, 61, 75, 61, 82, 72, 55, 62, 59, 59, 55, 60, 94, 65, 91, 58, 85, 68, 75, 68, 60, 49, 61, 75, 57, 55, 70, 83, 70, 55, 68, 58, 75, 61, 80, 71, 60, 87, 74, 73, 157, 80, 57, 68, 77, 61, 73, 63, 48, 67, 69, 65, 85, 63, 85, 59, 69, 70, 77, 59, 50, 90, 58, 65, 70, 68, 83, 53, 93, 69, 68, 58, 59, 61, 63, 71, 62, 54, 42, 64, 49, 43, 48, 76, 70, 61, 55, 55, 63, 48, 80, 56, 43, 55, 61, 47, 48, 69, 60, 64, 61, 70, 51, 70, 68, 72, 63, 72, 64, 65, 63, 62, 84, 64, 54, 64, 77, 57, 89, 84, 68, 59, 58, 67, 55, 62, 61, 70, 102, 90, 65, 68, 61, 56, 55, 38, 74, 75, 57, 76, 54, 61, 79, 50, 59, 68, 87, 78, 57, 74, 54, 103, 76, 70, 66, 48, 63, 64, 49, 85, 57, 61, 86, 59, 58, 75, 53, 62, 50, 66, 61, 63, 58, 56, 65, 52, 71, 63, 55, 53, 68, 85, 54, 50, 49, 76, 59, 52, 56, 45, 58, 45, 55, 78, 111, 73, 53, 63, 64, 66, 105, 66, 60, 63, 59, 56, 44, 80, 61, 69, 58, 47, 54, 76, 50, 58, 50, 65, 69, 88, 68, 63, 79, 69, 56, 51, 69, 74, 63, 85, 60, 64, 102, 67, 63, 70, 53, 66, 75, 68, 76, 59, 70, 51, 65, 60, 56, 53, 59, 76, 64, 62, 72, 66, 63, 41, 48, 71, 51, 80, 69, 70, 77, 68, 91, 67, 60, 60, 76, 59, 59, 70, 54, 78, 69, 65, 58, 75, 56, 60, 43, 55, 80, 65, 44, 74, 62, 62, 61, 59, 62, 63, 65, 80, 58, 65, 71, 62, 68, 54, 99, 62, 52, 59, 75, 62, 87, 69, 57, 58, 80, 68, 60, 49, 58, 52, 80, 49, 62, 74, 61, 61, 64, 55, 54, 55, 52, 57, 81, 57, 82, 78, 59, 93, 44, 57, 70, 76, 61, 72, 56, 70, 74, 58, 61, 63, 69, 72, 101, 55, 48, 68, 57, 70, 74, 50, 58, 66, 69, 66, 70, 54, 81, 72, 86, 48, 63, 61, 60, 60, 71, 78, 63, 60, 50, 55, 74, 70, 60, 73, 61, 55, 73, 55, 48, 69, 52, 70, 61, 64, 56, 61, 101, 61, 54, 55, 72, 53, 64, 95, 59, 51, 68, 76, 78, 50, 49, 59, 69, 69, 55, 66, 57, 45, 63, 66, 60, 57, 54, 61, 73, 63, 81, 54, 55, 53, 81, 55, 44, 71, 57, 71, 65, 83, 41, 62, 59, 84, 79, 60, 50, 62, 64, 53, 68, 55, 56, 64, 77, 61, 55, 78, 49, 84, 75, 76, 62, 56, 77, 60, 64, 67, 75, 69, 62, 75, 58, 73, 47, 63, 56, 60, 58, 60, 64, 77, 95, 83, 65, 73, 63, 54, 52, 83, 57, 71, 64, 108, 91, 54, 80, 64, 73, 39, 65, 43, 65, 69, 72, 66, 57, 52, 64, 79, 45, 89, 70, 90, 59, 71, 72, 76, 57, 77, 75, 64, 92, 73, 60, 58, 49, 69, 55, 86, 82, 51, 114, 77, 85, 62, 74, 50, 94, 64, 58, 75, 46, 61, 62, 77, 62, 66, 68, 67, 69, 48, 79, 48, 82, 52, 60, 75, 63, 70, 61, 68, 63, 81, 60, 58, 50, 93, 73, 58, 66, 79, 69, 57, 99, 67, 53, 62, 64, 76, 60, 60, 47, 64, 59, 77, 60, 52, 56, 62, 73, 89, 88, 48, 81, 69, 63, 57, 67, 65, 74, 70, 75, 64, 73, 74, 51, 68, 50, 70, 76, 62, 80, 57, 77, 66, 54, 95, 55, 77, 61, 85, 62, 70, 65, 58, 40, 74, 57, 74, 69, 88, 63, 61, 66, 56, 51, 62, 60, 73, 89, 54, 63, 61, 61, 64, 65, 54, 56, 85, 49, 56, 76, 56, 78, 61, 48, 59, 74, 71, 68, 72, 62, 63, 74, 65, 74, 65, 102, 50, 53, 79, 49, 64, 70, 63, 62, 56, 61, 58, 54, 56, 89, 99, 93, 66, 71, 65, 47, 60, 54, 70, 47, 74, 61, 49, 61, 93, 46, 74, 52, 57, 64, 46, 114, 84, 75, 58, 79, 66, 73, 70, 110, 55, 60, 86, 61, 74, 50, 50, 50, 88, 59, 89, 71, 64, 54, 62, 58, 66, 64, 63, 58, 58, 65, 80, 56, 64, 69, 62, 71, 70, 73, 66, 67, 64, 53, 76, 75, 59, 62, 83, 83, 64, 61, 61, 82, 67, 107, 99, 61, 46, 46, 83, 61, 71, 58, 69, 81, 62, 71, 60, 67, 65, 49, 62, 47, 106, 65, 69, 58, 65, 62, 72, 56, 70, 71, 61, 74, 50, 61, 74, 70, 69, 96, 71, 74, 72, 80, 70, 60, 53, 58, 70, 73, 55, 52, 59, 101, 75, 77, 76, 42, 64, 62, 61, 63, 76, 47, 57, 48, 57, 66, 52, 73, 40, 65, 62, 67, 61, 63, 44, 46, 58, 66, 49, 65, 58, 57, 49, 65, 55, 77, 75, 57, 73, 58, 59, 59, 82, 94, 77, 41, 72, 70, 65, 93, 58, 61, 53, 61, 75, 56, 54, 52, 57, 52, 61, 53, 107, 53, 60, 66, 51, 54, 65, 79, 105, 54, 79, 67, 52, 56, 121, 36, 117, 63, 151, 75, 61, 79, 61, 64, 63, 60, 69, 69, 59, 62, 74, 92, 69, 47, 70, 59, 60, 52, 52, 63, 57, 66, 79, 69, 79, 55, 62, 69, 63, 57, 83, 70, 62, 62, 50, 46, 61, 64, 95, 66, 74, 56, 52, 73, 67, 53, 51, 55, 54, 58, 76, 71, 61, 62, 81, 47, 87, 77, 64, 70, 54, 75, 78, 64, 65, 66, 79, 46, 64, 45, 50, 93, 59, 59, 76, 69, 61, 63, 54, 127, 72, 59, 47, 69, 57, 61, 84, 48, 74, 56, 69, 69, 72, 47, 77, 69, 76, 105, 67, 54, 61, 71, 62, 78, 54, 53, 70, 57, 65, 51, 60, 87, 62, 78, 56, 44, 61, 49, 62, 75, 68, 54, 70, 73, 62, 47, 83, 61, 57, 63, 99, 88, 66, 64, 72, 62, 89, 63, 66, 81, 68, 49, 34, 79, 68, 55, 91, 80, 64, 54, 58, 66, 70, 52, 87, 50, 61, 66, 60, 125, 56, 64, 81, 71, 66, 59, 49, 66, 78, 55, 83, 54, 76, 65, 48, 43, 54, 56, 75, 79, 78, 87, 87, 53, 67, 63, 59, 87, 51, 71, 58, 57, 68, 72, 79, 70, 61, 63, 62, 56, 63, 65, 72, 72, 61, 63, 64, 62, 54, 75, 78, 79, 57, 68, 67, 70, 63, 108, 60, 60, 57, 75, 107, 59, 58, 84, 91, 49, 76, 97, 74, 76, 60, 46, 90, 68, 76, 43, 58, 95, 55, 62, 98, 74, 36, 60, 64, 63, 64, 59, 62, 56, 51, 79, 136, 62, 72, 61, 65, 66, 74, 146, 61, 48, 56, 77, 76, 70, 78, 56, 65, 63, 63, 68, 48, 66, 76, 56, 55, 69, 50, 77, 49, 81, 50, 72, 44, 68, 43, 76, 77, 81, 99, 49, 84, 63, 100, 62, 61, 70, 63, 70, 75, 75, 58, 77, 71, 53, 51, 72, 63, 49, 62, 79, 68, 98, 81, 70, 73, 77, 65, 58, 59, 47, 50, 74, 52, 63, 68, 63, 61, 60, 57, 77, 60, 76, 50, 90, 65, 58, 65, 53, 68, 62, 51, 58, 55, 64, 64, 56, 73, 54, 65, 58, 50, 61, 84, 46, 60, 63, 129, 69, 80, 72, 45, 75, 65, 65, 66, 83, 53, 65, 62, 57, 55, 58, 64, 63, 58, 44, 68, 57, 82, 63, 71, 53, 41, 50, 61, 80, 59, 51, 48, 65, 42, 47, 78, 71, 44, 56, 67, 90, 70, 55, 49, 80, 65, 69, 91, 59, 60, 69, 67, 44, 74, 69, 59, 58, 57, 58, 62, 83, 65, 56, 56, 54, 70, 73, 75, 57, 69, 64, 79, 83, 111, 51, 76, 53, 64, 54, 107, 76, 79, 56, 62, 48, 72, 74, 69, 48, 47, 55, 73, 63, 68, 62, 85, 77, 55, 59, 54, 47, 70, 64, 45, 75, 66, 44, 48, 50, 83, 78, 68, 67, 77, 60, 59, 62, 51, 75, 41, 93, 65, 49, 63, 60, 64, 89, 62, 51, 92, 70, 53, 71, 61, 59, 61, 40, 53, 67, 54, 78, 71, 61, 62, 56, 58, 56, 50, 75, 57, 54, 60, 73, 70, 53, 74, 69, 41, 70, 64, 59, 66, 68, 62, 63, 72, 63, 62, 51, 73, 52, 57, 81, 67, 50, 49, 51, 57, 62, 80, 57, 77, 85, 54, 49, 58, 74, 64, 52, 51, 56, 53, 86, 65, 56, 64, 80, 63, 75, 61, 37, 64, 97, 65, 76, 57, 71, 55, 62, 64, 58, 71, 64, 64, 60, 58, 54, 58, 72, 64, 62, 57, 56, 59, 68, 65, 60, 49, 80, 58, 66, 68, 62, 68, 68, 67, 64, 55, 54, 57, 51, 60, 50, 81, 66, 51, 59, 62, 67, 55, 65, 70, 58, 63, 71, 60, 54, 53, 69, 86, 78, 57, 63, 68, 59, 55, 65, 80, 85, 60, 62, 59, 96, 63, 48, 63, 50, 56, 64, 72, 64, 64, 37, 54, 60, 82, 70, 65, 56, 69, 66, 66, 47, 62, 60, 67, 68, 63, 47, 58, 55, 87, 63, 67, 63, 65, 80, 74, 87, 58, 65, 58, 72, 48, 83, 56, 58, 73, 68, 55, 64, 79, 52, 67, 58, 56, 92, 59, 66, 50, 49, 78, 74, 77, 71, 62, 49, 80, 58, 55, 73, 75, 65, 64, 55, 81, 64, 82, 57, 67, 56, 61, 76, 75, 78, 70, 67, 69, 58, 60, 78, 62, 61, 80, 70, 79, 68, 61, 82, 61, 66, 69, 74, 60, 91, 54, 64, 52, 65, 77, 71, 64, 78, 62, 77, 69, 94, 76, 77, 51, 60, 100, 62, 46, 75, 81, 58, 70, 68, 60, 69, 78, 65, 76, 58, 106, 55, 64, 62, 56, 65, 62, 64, 54, 69, 68, 77, 56, 66, 63, 67, 57, 66, 86, 61, 54, 78, 73, 69, 56, 57, 60, 65, 65, 46, 91, 57, 86, 71, 61, 58, 98, 66, 53, 73, 64, 58, 80, 69, 58, 89, 72, 42, 71, 43, 81, 66, 73, 69, 73, 78, 62, 93, 71, 68, 64, 68, 72, 110, 78, 61, 106, 61, 66, 51, 56, 57, 74, 95, 57, 60, 70, 88, 57, 67, 63, 78, 52, 75, 54, 60, 76, 54, 67, 67, 101, 65, 75, 45, 51, 64, 57, 73, 91, 83, 65, 60, 63, 48, 82, 71, 73, 67, 62, 89, 90, 68, 65, 107, 63, 65, 68, 69, 65, 69, 61, 57, 65, 65, 69, 81, 60, 78, 58, 82, 56, 60, 64, 69, 51, 58, 74, 88, 52, 64, 43, 61, 64, 64, 58, 71, 67, 67, 59, 67, 71, 78, 86, 57, 69, 99, 86, 72, 64, 73, 72, 52, 51, 67, 57, 55, 73, 59, 75, 61, 46, 74, 45, 57, 67, 54, 66, 73, 82, 65, 80, 65, 59, 49, 65, 72, 58, 53, 65, 65, 61, 71, 68, 43, 78, 66, 58, 67, 52, 61, 56, 45, 62, 64, 64, 66, 64, 62, 76, 57, 53, 59, 70, 55, 64, 60, 61, 54, 82, 110, 81, 72, 71, 60, 80, 56, 65, 57, 78, 53, 73, 66, 78, 62, 63, 57, 59, 62, 62, 62, 74, 46, 61, 66, 58, 77, 70, 44, 79, 68, 67, 89, 113, 92, 135, 54, 128, 62, 68, 79, 62, 61, 73, 74, 53, 53, 60, 63, 48, 62, 53, 70, 60, 57, 56, 53, 62, 50, 67, 51, 92, 51, 96, 79, 66, 68, 63, 64, 80, 72, 64, 63, 57, 61, 65, 53, 48, 78, 66, 50, 56, 66, 69, 64, 48, 76, 92, 70, 66, 51, 56, 81, 70, 53, 58, 64, 64, 107, 73, 59, 79, 71, 73, 69, 71, 61, 86, 59, 62, 60, 63, 69, 74, 57, 45, 59, 62, 130, 55, 56, 60, 49, 53, 59, 79, 54, 68, 79, 55, 49, 66, 65, 54, 56, 90, 99, 52, 61, 39, 54, 62, 64, 64, 71, 59, 80, 62, 73, 60, 88, 56, 61, 67, 52, 79, 69, 71, 57, 55, 78, 58, 55, 69, 63, 99, 81, 64, 64, 88, 78, 66, 63, 60, 73, 76, 54, 58, 78, 75, 67, 72, 89, 61, 60, 60, 57, 57, 60, 61, 87, 53, 54, 61, 50, 62, 51, 82, 133, 78, 51, 69, 65, 54, 59, 57, 70, 84, 68, 56, 71, 52, 73, 73, 83, 41, 57, 72, 84, 64, 46, 72, 63, 73, 58, 75, 58, 66, 62, 59, 50, 65, 59, 57, 65, 64, 60, 55, 56, 93, 70, 59, 81, 60, 76, 73, 72, 47, 102, 62, 88, 53, 52, 74, 67, 41, 115, 60, 73, 66, 99, 78, 65, 72, 66, 65, 55, 57, 52, 65, 68, 57, 58, 87, 62, 88, 65, 61, 69, 66, 50, 60, 65, 71, 78, 73, 69, 54, 67, 51, 57, 57, 93, 100, 66, 75, 70, 50, 64, 69, 139, 51, 65, 65, 48, 56, 68, 52, 73, 79, 67, 62, 54, 77, 61, 54, 74, 45, 65, 85, 84, 70, 67, 55, 64, 84, 68, 52, 56, 47, 58, 81, 81, 52, 60, 79, 79, 63, 78, 73, 76, 59, 114, 68, 61, 75, 64, 82, 75, 61, 59, 58, 60, 56, 86, 64, 70, 81, 58, 67, 51, 75, 57, 70, 55, 70, 55, 62, 85, 52, 57, 55, 82, 66, 41, 79, 76, 92, 43, 60, 59, 51, 63, 57, 45, 82, 70, 84, 51, 67, 61, 61, 64, 76, 69, 77, 72, 58, 67, 124, 55, 55, 55, 55, 91, 69, 67, 52, 58, 56, 69, 58, 76, 62, 73, 60, 60, 66, 55, 63, 89, 76, 43, 72, 65, 73, 70, 64, 55, 89, 69, 59, 30, 62, 49, 66, 74, 69, 53, 60, 50, 53, 67, 81, 66, 67, 62, 56, 70, 76, 61, 64, 82, 65, 80, 50, 69, 61, 61, 52, 88, 53, 63, 58, 66, 65, 74, 68, 52, 61, 66, 56, 78, 120, 60, 69, 57, 60, 47, 122, 61, 49, 58, 66, 61, 42, 71, 81, 68, 54, 51, 78, 71, 61, 56, 84, 69, 69, 67, 64, 70, 57, 68, 51, 51, 65, 59, 81, 73, 94, 92, 66, 65, 78, 66, 49, 56, 59, 61, 82, 68, 87, 44, 75, 67, 70, 51, 63, 73, 48, 61, 62, 90, 64, 66, 50, 74, 72, 55, 59, 75, 57, 58, 72, 56, 58, 64, 48, 66, 59, 55, 45, 42, 66, 84, 62, 53, 51, 58, 65, 63, 52, 73, 83, 60, 65, 64, 64, 57, 75, 68, 67, 66, 60, 92, 72, 60, 77, 47, 76, 65, 59, 80, 73, 78, 59, 58, 56, 62, 91, 62, 57, 69, 59, 66, 67, 59, 54, 47, 68, 69, 57, 64, 67, 55, 54, 62, 50, 69, 70, 65, 59, 81, 54, 55, 67, 52, 54, 56, 62, 79, 71, 62, 47, 67, 77, 53, 65, 58, 63, 56, 51, 65, 61, 70, 70, 53, 59, 76, 68, 71, 70, 58, 62, 66, 72, 85, 103, 64, 83, 54, 72, 70, 53, 66, 64, 54, 53, 65, 60, 64, 67, 70, 70, 66, 61, 66, 64, 71, 65, 55, 51, 71, 63, 64, 68, 52, 74, 47, 49, 73, 64, 83, 50, 54, 74, 67, 66, 54, 67, 61, 73, 67, 75, 42, 52, 66, 67, 69, 69, 57, 79, 68, 69, 48, 67, 62, 59, 69, 60, 71, 50, 60, 55, 60, 68, 70, 55, 59, 57, 50, 79, 68, 77, 64, 55, 99, 56, 66, 44, 71, 70, 75, 59, 67, 52, 75, 63, 62, 81, 58, 98, 60, 51, 65, 66, 55, 54, 51, 62, 71, 61, 51, 68, 86, 63, 58, 66, 57, 62, 72, 73, 71, 48, 78, 85, 55, 46, 53, 68, 56, 63, 62, 56, 63, 62, 66, 67, 58, 65, 60, 64, 88, 58, 115, 78, 54, 46, 65, 62, 56, 73, 67, 60, 65, 128, 46, 51, 63, 85, 58, 54, 67, 65, 67, 65, 50, 94, 72, 63, 49, 46, 56, 61, 59, 62, 52, 79, 69, 67, 52, 65, 62, 84, 131, 66, 73, 61, 74, 71, 69, 53, 65, 61, 67, 69, 60, 65, 81, 62, 69, 84, 51, 70, 64, 80, 72, 66, 94, 61, 58, 74, 64, 56, 78, 72, 88, 84, 51, 57, 48, 54, 83, 72, 40, 65, 58, 49, 80, 59, 60, 112, 62, 45, 60, 58, 65, 47, 57, 65, 53, 61, 66, 55, 54, 61, 85, 55, 60, 79, 56, 59, 59, 46, 57, 83, 59, 59, 84, 60, 52, 59, 59, 85, 76, 63, 82, 54, 49, 72, 64, 51, 45, 73, 66, 56, 85, 38, 89, 53, 63, 79, 69, 56, 64, 46, 55, 81, 54, 67, 87, 65, 40, 57, 70, 61, 56, 69, 78, 56, 72, 69, 83, 63, 48, 82, 71, 65, 82, 56, 66, 58, 76, 72, 71, 72, 82, 88, 60, 52, 81, 69, 81, 55, 53, 62, 58, 83, 62, 61, 64, 63, 66, 72, 62, 74, 89, 56, 61, 48, 65, 53, 72, 90, 64, 64, 47, 68, 59, 77, 66, 65, 72, 74, 72, 50, 72, 47, 36, 63, 61, 71, 66, 68, 60, 57, 91, 69, 98, 75, 59, 63, 61, 64, 66, 69, 64, 74, 68, 66, 61, 59, 54, 70, 102, 53, 65, 58, 77, 73, 69, 67, 69, 50, 52, 85, 63, 52, 66, 61, 59, 54, 96, 61, 67, 72, 65, 92, 85, 73, 70, 54, 60, 77, 68, 87, 63, 111, 63, 116, 61, 110, 65, 56, 63, 67, 57, 96, 53, 81, 50, 50, 36, 66, 33, 68, 70, 54, 70, 56, 76, 75, 83, 48, 56, 81, 46, 87, 59, 69, 74, 75, 61, 60, 57, 92, 57, 55, 50, 53, 75, 70, 57, 76, 55, 57, 66, 76, 52, 76, 59, 48, 82, 53, 68, 67, 69, 75, 39, 60, 52, 55, 94, 65, 63, 77, 57, 51, 61, 84, 61, 68, 60, 64, 81, 65, 89, 39, 60, 62, 69, 71, 154, 47, 69, 68, 59, 54, 71, 73, 62, 65, 63, 42, 52, 67, 48, 96, 80, 61, 49, 64, 56, 57, 58, 50, 93, 61, 68, 60, 94, 76, 74, 57, 41, 48, 55, 83, 59, 74, 60, 55, 62, 57, 59, 49, 87, 63, 61, 58, 59, 51, 101, 94, 62, 54, 61, 77, 72, 68, 68, 58, 74, 52, 54, 56, 76, 53, 64, 81, 42, 76, 61, 76, 50, 64, 68, 72, 63, 66, 87, 62, 114, 70, 63, 89, 69, 56, 66, 48, 63, 74, 75, 67, 53, 60, 62, 79, 83, 69, 56, 81, 46, 59, 60, 73, 78, 52, 95, 44, 70, 58, 60, 55, 44, 63, 54, 70, 91, 54, 82, 57, 59, 76, 59, 62, 65, 53, 53, 82, 52, 73, 96, 59, 67, 64, 44, 67, 63, 50, 105, 84, 69, 61, 78, 72, 59, 59, 57, 56, 65, 49, 68, 56, 67, 50, 49, 55, 69, 57, 132, 61, 61, 64, 89, 56, 63, 57, 69, 39, 87, 51, 65, 51, 65, 69, 57, 89, 64, 70, 62, 69, 79, 69, 138, 91, 80, 73, 97, 72, 72, 59, 64, 95, 91, 51, 55, 46, 83, 55, 53, 76, 60, 105, 64, 64, 48, 62, 66, 64, 64, 59, 73, 67, 82, 109, 74, 88, 56, 99, 60, 87, 66, 79, 74, 79, 77, 69, 68, 49, 67, 60, 88, 77, 74, 77, 72, 77, 59, 45, 58, 89, 74, 62, 68, 81, 70, 68, 60, 53, 62, 73, 61, 46, 60, 54, 75, 51, 65, 65, 62, 85, 57, 70, 57, 71, 66, 78, 55, 50, 79, 91, 70, 68, 58, 50, 60, 57, 76, 76, 48, 63, 51, 115, 62, 89, 76, 83, 69, 59, 91, 54, 52, 84, 42, 51, 106, 65, 76, 39, 69, 67, 60, 63, 63, 75, 54, 80, 66, 66, 57, 53, 81, 41, 76, 70, 72, 83, 71, 66, 71, 83, 76, 65, 48, 55, 54, 51, 76, 42, 65, 67, 89, 55, 76, 82, 66, 59, 68, 57, 83, 65, 84, 80, 48, 65, 58, 59, 70, 67, 59, 68, 65, 48, 54, 88, 59, 78, 49, 87, 64, 59, 54, 107, 67, 78, 57, 51, 61, 82, 57, 78, 74, 66, 61, 64, 57, 62, 60, 54, 49, 62, 66, 51, 61, 86, 66, 72, 54, 47, 46, 52, 65, 48, 98, 51, 52, 68, 67, 60, 57, 53, 93, 56, 42, 54, 50, 88, 69, 74, 65, 66, 65, 67, 53, 57, 89, 58, 72, 64, 94, 77, 52, 55, 56, 89, 56, 53, 67, 50, 59, 37, 65, 54, 52, 54, 65, 104, 56, 58, 51, 61, 52, 75, 43, 64, 104, 61, 55, 75, 60, 74, 56, 55, 84, 59, 76, 73, 86, 59, 63, 56, 67, 54, 62, 33, 87, 63, 73, 76, 64, 59, 67, 55, 54, 58, 64, 58, 65, 52, 62, 53, 61, 62, 66, 78, 61, 61, 58, 94, 61, 71, 67, 50, 61, 75, 67, 76, 49, 52, 74, 67, 86, 58, 81, 60, 66, 74, 106, 65, 83, 52, 44, 64, 61, 55, 75, 64, 63, 43, 59, 82, 64, 52, 51, 70, 57, 79, 72, 68, 52, 52, 68, 36, 113, 62, 58, 72, 71, 53, 76, 63, 68, 77, 81, 65, 55, 57, 52, 60, 83, 57, 72, 65, 74, 74, 66, 81, 90, 55, 49, 63, 54, 56, 73, 70, 67, 39, 51, 44, 68, 148, 57, 59, 51, 68, 69, 51, 77, 58, 92, 65, 69, 65, 57, 59, 50, 64, 97, 73, 51, 83, 69, 66, 55, 61, 78, 49, 66, 56, 62, 68, 68, 66, 68, 79, 71, 72, 53, 74, 104, 45, 72, 66, 82, 94, 105, 64, 71, 68, 61, 80, 69, 69, 78, 87, 63, 59, 61, 86, 65, 54, 73, 70, 59, 70, 72, 59, 61, 60, 62, 76, 57, 56, 71, 65, 80, 60, 51, 73, 60, 53, 102, 74, 60, 62, 62, 53, 56, 64, 60, 69, 53, 54, 58, 60, 82, 65, 87, 66, 93, 82, 59, 59, 76, 59, 96, 70, 56, 44, 69, 56, 79, 73, 72, 55, 81, 55, 91, 67, 40, 51, 57, 35, 60, 81, 62, 66, 46, 67, 52, 80, 51, 67, 67, 59, 82, 83, 41, 62, 63, 72, 55, 76, 71, 68, 45, 61, 63, 60, 68, 58, 74, 57, 63, 75, 60, 60, 93, 63, 66, 67, 66, 65, 69, 87, 62, 54, 72, 56, 75, 54, 64, 48, 53, 56, 105, 56, 56, 49, 74, 59, 41, 56, 86, 116, 69, 75, 62, 63, 62, 93, 56, 79, 68, 63, 85, 77, 67, 61, 93, 70, 56, 90, 62, 88, 78, 48, 64, 66, 51, 71, 64, 60, 69, 56, 63, 85, 66, 72, 76, 64, 90, 76, 74, 55, 56, 71, 32, 62, 64, 55, 86, 59, 59, 84, 67, 67, 55, 77, 57, 65, 59, 61, 60, 61, 68, 62, 70, 63, 46, 63, 67, 60, 65, 62, 71, 57, 75, 69, 60, 61, 82, 53, 88, 51, 54, 71, 64, 63, 51, 78, 47, 66, 68, 55, 44, 69, 59, 78, 51, 75, 83, 53, 76, 70, 50, 52, 46, 60, 90, 66, 53, 55, 74, 91, 84, 79, 74, 69, 68, 100, 81, 56, 60, 69, 131, 92, 50, 72, 93, 59, 78, 108, 62, 59, 68, 60, 51, 61, 72, 66, 58, 55, 60, 50, 50, 65, 61, 73, 74, 65, 66, 82, 50, 93, 65, 84, 98, 48, 55, 59, 60, 55, 64, 67, 97, 52, 79, 63, 46, 57, 55, 65, 56, 57, 73, 46, 58, 89, 66, 57, 72, 55, 88, 37, 47, 57, 60, 99, 74, 92, 99, 59, 54, 103, 70, 69, 73, 69, 95, 45, 50, 80, 48, 71, 88, 70, 86, 101, 84, 47, 64, 64, 61, 59, 71, 52, 76, 85, 77, 87, 64, 51, 58, 63, 62, 50, 72, 82, 58, 81, 78, 61, 62, 55, 63, 66, 52, 61, 50, 58, 69, 48, 74, 59, 71, 45, 43, 47, 64, 69, 80, 58, 65, 64, 83, 71, 37, 62, 62, 68, 89, 91, 64, 60, 64, 73, 55, 75, 67, 41, 52, 60, 50, 61, 123, 72, 51, 65, 56, 39, 48, 53, 68, 60, 62, 67, 66, 60, 60, 78, 67, 58, 48, 68, 64, 119, 73, 57, 69, 53, 123, 58, 90, 76, 47, 77, 88, 58, 62, 63, 86, 69, 56, 47, 77, 69, 62, 52, 47, 64, 73, 66, 56, 64, 49, 50, 56, 64, 50, 65, 79, 55, 75, 55, 67, 66, 57, 72, 48, 57, 93, 47, 58, 52, 64, 115, 74, 48, 69, 61, 52, 63, 83, 68, 82, 78, 58, 70, 24, 69, 46, 76, 63, 95, 51, 74, 58, 65, 67, 57, 76, 57, 55, 58, 57, 86, 70, 60, 58, 69, 52, 76, 62, 78, 52, 82, 70, 74, 57, 64, 55, 55, 70, 70, 53, 66, 65, 53, 56, 92, 63, 55, 56, 56, 99, 86, 77, 45, 80, 66, 65, 65, 90, 48, 61, 60, 47, 63, 68, 67, 73, 58, 79, 89, 57, 70, 75, 51, 89, 69, 79, 83, 79, 64, 57, 71, 57, 53, 60, 64, 65, 52, 71, 87, 80, 86, 55, 91, 82, 53, 74, 75, 70, 67, 67, 50, 140, 68, 77, 65, 50, 75, 75, 59, 48, 55, 60, 106, 86, 46, 58, 61, 50, 63, 63, 91, 48, 94, 56, 52, 61, 49, 72, 62, 54, 71, 66, 85, 61, 57, 56, 77, 55, 51, 97, 45, 79, 45, 69, 60, 64, 66, 69, 83, 63, 49, 67, 94, 69, 51, 80, 51, 53, 51, 83, 104, 48, 76, 60, 64, 54, 60, 60, 91, 57, 50, 52, 97, 53, 55, 65, 80, 62, 77, 72, 50, 54, 113, 56, 74, 62, 56, 80, 63, 67, 56, 54, 57, 54, 55, 64, 62, 80, 77, 46, 78, 68, 88, 58, 53, 95, 75, 65, 80, 75, 68, 62, 75, 78, 89, 57, 77, 61, 71, 75, 57, 49, 71, 71, 61, 75, 48, 68, 50, 62, 69, 63, 77, 59, 58, 52, 115, 71, 89, 61, 72, 77, 77, 69, 64, 34, 58, 58, 44, 61, 49, 70, 67, 56, 85, 82, 59, 73, 48, 85, 66, 84, 59, 56, 53, 65, 65, 61, 60, 65, 71, 85, 72, 73, 78, 52, 66, 67, 62, 62, 77, 71, 62, 60, 60, 49, 74, 56, 55, 63, 59, 62, 70, 61, 64, 60, 90, 64, 62, 62, 63, 90, 70, 51, 54, 51, 52, 74, 59, 61, 69, 71, 44, 52, 61, 86, 48, 56, 48, 65, 64, 61, 57, 73, 71, 56, 49, 77, 65, 60, 68, 65, 76, 62, 70, 70, 124, 93, 61, 41, 68, 71, 78, 70, 68, 53, 49, 81, 67, 60, 66, 62, 69, 75, 102, 91, 67, 68, 47, 64, 89, 67, 42, 67, 81, 66, 61, 71, 72, 71, 62, 69, 55, 60, 57, 47, 97, 77, 75, 49, 67, 53, 84, 63, 68, 68, 68, 56, 62, 65, 74, 54, 50, 54, 52, 52, 61, 59, 58, 62, 70, 88, 70, 71, 53, 71, 86, 69, 68, 71, 76, 62, 81, 75, 73, 53, 61, 58, 63, 61, 43, 66, 50, 77, 53, 97, 57, 66, 49, 68, 71, 80, 56, 76, 70, 83, 53, 85, 58, 64, 65, 70, 57, 65, 56, 41, 61, 59, 118, 51, 63, 81, 67, 51, 51, 76, 58, 57, 40, 56, 70, 69, 68, 74, 82, 59, 71, 61, 82, 89, 52, 69, 69, 66, 82, 51, 66, 66, 73, 54, 55, 83, 100, 64, 64, 69, 54, 85, 156, 60, 65, 45, 65, 57, 56, 68, 58, 87, 66, 66, 67, 63, 79, 45, 47, 82, 65, 59, 51, 80, 62, 62, 66, 71, 60, 90, 58, 60, 64, 59, 44, 120, 78, 62, 61, 49, 48, 88, 47, 69, 59, 46, 55, 98, 89, 72, 67, 61, 55, 55, 67, 70, 79, 55, 66, 62, 93, 75, 45, 61, 50, 55, 90, 56, 49, 43, 59, 77, 61, 52, 67, 85, 70, 67, 62, 63, 75, 73, 81, 94, 77, 49, 39, 44, 63, 75, 67, 75, 57, 53, 51, 59, 71, 57, 80, 78, 70, 61, 106, 62, 57, 59, 60, 52, 52, 59, 61, 85, 69, 77, 78, 53, 54, 75, 56, 93, 67, 53, 66, 57, 61, 66, 70, 61, 65, 62, 70, 70, 58, 55, 66, 57, 57, 62, 77, 48, 59, 62, 85, 58, 59, 79, 77, 45, 61, 67, 60, 60, 83, 51, 86, 83, 67, 56, 55, 46, 60, 72, 86, 62, 55, 54, 82, 76, 54, 75, 47, 78, 45, 57, 43, 75, 60, 130, 66, 52, 73, 69, 83, 63, 60, 75, 169, 46, 82, 52, 48, 70, 73, 74, 76, 65, 72, 81, 75, 48, 60, 62, 80, 78, 60, 61, 75, 57, 45, 67, 62, 62, 66, 64, 58, 60, 58, 50, 63, 48, 63, 72, 59, 46, 82, 59, 80, 44, 57, 54, 51, 81, 73, 55, 70, 56, 66, 76, 93, 55, 94, 60, 53, 69, 58, 66, 72, 49, 75, 75, 64, 52, 44, 53, 54, 61, 61, 58, 68, 64, 75, 60, 79, 74, 59, 65, 89, 67, 68, 48, 65, 61, 55, 64, 71, 95, 81, 62, 53, 57, 45, 57, 68, 52, 54, 63, 67, 80, 67, 76, 79, 92, 57, 49, 43, 80, 54, 77, 85, 75, 57, 55, 76, 48, 63, 48, 56, 102, 120, 63, 47, 80, 57, 59, 56, 54, 59, 59, 48, 47, 51, 59, 67, 65, 65, 82, 44, 56, 55, 74, 52, 63, 58, 56, 78, 65, 78, 54, 87, 63, 52, 58, 52, 52, 61, 63, 45, 56, 64, 67, 79, 57, 62, 51, 77, 45, 58, 68, 59, 65, 108, 38, 51, 89, 53, 68, 62, 66, 58, 56, 98, 81, 74, 86, 66, 71, 80, 66, 47, 61, 70, 81, 65, 82, 77, 42, 63, 64, 51, 60, 75, 60, 64, 74, 57, 57, 68, 81, 66, 64, 62, 70, 89, 69, 68, 58, 59, 59, 52, 72, 83, 64, 73, 77, 45, 52, 54, 52, 93, 62, 80, 62, 68, 73, 55, 50, 52, 68, 61, 64, 53, 67, 83, 79, 53, 49, 54, 75, 70, 71, 79, 66, 56, 67, 84, 89, 82, 53, 62, 47, 50, 71, 34, 66, 53, 60, 71, 161, 59, 67, 75, 47, 63, 51, 53, 92, 48, 64, 62, 61, 60, 77, 77, 56, 48, 75, 72, 55, 96, 80, 56, 83, 75, 86, 47, 90, 62, 66, 69, 56, 74, 51, 66, 48, 61, 57, 53, 67, 63, 55, 61, 73, 70, 66, 94, 83, 74, 62, 68, 69, 56, 70, 65, 66, 54, 77, 61, 74, 35, 73, 57, 48, 63, 57, 43, 67, 49, 64, 88, 100, 59, 72, 89, 70, 64, 69, 71, 84, 63, 58, 119, 51, 50, 58, 52, 63, 70, 60, 58, 56, 62, 83, 63, 68, 76, 62, 66, 56, 94, 54, 67, 55, 53, 45, 74, 51, 52, 60, 68, 55, 54, 61, 87, 54, 67, 53, 73, 56, 76, 65, 49, 62, 70, 75, 60, 52, 65, 69, 83, 79, 72, 45, 59, 80, 70, 104, 67, 74, 66, 67, 59, 78, 65, 79, 69, 48, 64, 63, 55, 52, 58, 51, 57, 86, 79, 104, 50, 69, 66, 70, 76, 51, 61, 77, 51, 65, 59, 67, 89, 60, 69, 79, 47, 57, 53, 52, 63, 72, 105, 112, 77, 88, 55, 56, 60, 65, 82, 53, 55, 67, 47, 47, 56, 47, 58, 72, 77, 63, 90, 68, 104, 57, 76, 60, 51, 82, 60, 66, 91, 78, 85, 61, 67, 58, 55, 51, 72, 106, 42, 72, 65, 66, 78, 74, 80, 64, 80, 68, 55, 60, 106, 73, 60, 86, 77, 70, 49, 86, 83, 61, 63, 50, 46, 58, 63, 55, 64, 87, 74, 57, 81, 55, 72, 66, 72, 67, 51, 62, 66, 46, 74, 48, 60, 56, 54, 62, 49, 54, 56, 59, 71, 54, 37, 62, 55, 54, 73, 57, 78, 67, 61, 72, 53, 89, 62, 79, 54, 59, 60, 52, 66, 52, 52, 48, 50, 72, 60, 80, 59, 61, 85, 60, 64, 95, 74, 60, 57, 57, 68, 59, 72, 58, 79, 75, 54, 50, 91, 52, 66, 57, 79, 39, 63, 62, 54, 49, 60, 47, 50, 83, 61, 57, 72, 88, 56, 70, 62, 60, 53, 60, 104, 57, 53, 93, 48, 63, 72, 77, 69, 57, 65, 65, 77, 72, 114, 95, 45, 73, 69, 96, 58, 67, 62, 61, 63, 74, 61, 84, 60, 56, 56, 81, 61, 72, 116, 59, 69, 79, 65, 62, 58, 40, 72, 54, 56, 68, 47, 62, 74, 53, 58, 61, 73, 88, 57, 53, 55, 63, 80, 62, 49, 57, 47, 58, 63, 81, 62, 68, 52, 61, 69, 94, 45, 44, 94, 130, 77, 68, 57, 58, 72, 57, 86, 47, 67, 85, 51, 76, 64, 57, 66, 80, 101, 98, 76, 72, 63, 88, 76, 100, 53, 63, 40, 55, 54, 53, 54, 76, 58, 73, 56, 84, 75, 54, 87, 53, 79, 60, 59, 51, 68, 73, 46, 79, 77, 85, 58, 55, 57, 56, 56, 78, 76, 51, 60, 68, 71, 61, 57, 73, 62, 39, 79, 76, 79, 50, 48, 90, 64, 93, 98, 90, 70, 53, 54, 46, 52, 58, 73, 69, 61, 67, 74, 55, 66, 72, 70, 81, 73, 64, 88, 48, 64, 59, 51, 59, 63, 66, 54, 65, 74, 79, 138, 82, 78, 75, 66, 67, 63, 63, 69, 65, 74, 60, 56, 57, 63, 57, 66, 60, 87, 67, 62, 74, 59, 57, 54, 63, 47, 61, 98, 65, 74, 67, 62, 63, 67, 34, 53, 82, 80, 93, 76, 79, 57, 59, 61, 41, 77, 114, 60, 63, 78, 74, 65, 60, 76, 44, 59, 48, 56, 51, 65, 55, 69, 47, 79, 61, 71, 60, 65, 58, 59, 73, 55, 73, 62, 61, 72, 63, 90, 67, 48, 50, 66, 65, 55, 78, 70, 81, 51, 54, 73, 74, 84, 69, 71, 66, 83, 70, 76, 77, 65, 59, 63, 38, 57, 71, 71, 61, 76, 48, 66, 47, 41, 73, 58, 69, 60, 52, 112, 53, 69, 65, 52, 72, 59, 45, 45, 64, 69, 50, 83, 80, 43, 59, 65, 67, 63, 59, 63, 62, 58, 58, 56, 73, 69, 80, 61, 100, 73, 65, 58, 70, 101, 82, 50, 79, 59, 66, 61, 67, 78, 60, 55, 56, 76, 59, 76, 60, 65, 70, 59, 71, 64, 76, 70, 51, 57, 61, 52, 74, 65, 56, 66, 65, 64, 64, 83, 58, 73, 71, 52, 62, 58, 81, 65, 56, 49, 65, 51, 107, 76, 64, 62, 78, 69, 68, 55, 58, 69, 61, 89, 127, 56, 52, 55, 79, 62, 57, 71, 56, 94, 53, 93, 50, 50, 93, 49, 78, 59, 50, 63, 70, 52, 67, 64, 77, 70, 57, 75, 76, 98, 59, 61, 61, 61, 71, 68, 46, 49, 65, 52, 47, 35, 47, 80, 48, 60, 57, 57, 75, 66, 61, 74, 79, 44, 70, 68, 55, 66, 61, 50, 73, 74, 94, 44, 65, 62, 51, 59, 63, 68, 45, 60, 62, 73, 76, 58, 71, 57, 62, 65, 97, 64, 59, 64, 66, 66, 120, 63, 71, 63, 59, 40, 83, 80, 59, 56, 73, 62, 68, 64, 64, 64, 75, 64, 61, 64, 50, 61, 70, 54, 65, 63, 71, 53, 92, 61, 55, 63, 78, 56, 51, 61, 68, 73, 56, 58, 66, 72, 98, 89, 65, 54, 57, 53, 72, 66, 63, 90, 74, 61, 62, 52, 69, 82, 75, 153, 64, 53, 51, 74, 61, 50, 56, 83, 73, 77, 84, 59, 76, 63, 85, 57, 66, 74, 51, 77, 83, 60, 87, 73, 56, 59, 51, 66, 66, 80, 60, 62, 68, 55, 56, 68, 53, 58, 84, 97, 97, 69, 67, 77, 94, 76, 82, 81, 57, 94, 55, 61, 67, 75, 60, 52, 73, 80, 77, 50, 54, 54, 47, 69, 69, 64, 69, 66, 62, 74, 98, 78, 77, 49, 54, 53, 62, 70, 109, 55, 68, 68, 61, 67, 52, 74, 68, 59, 67, 77, 95, 50, 76, 57, 64, 74, 54, 62, 60, 50, 68, 65, 52, 48, 72, 77, 55, 59, 64, 68, 53, 84, 58, 63, 57, 56, 54, 62, 60, 73, 46, 71, 65, 76, 67, 58, 56, 71, 53, 95, 92, 53, 53, 64, 43, 70, 61, 82, 62, 57, 53, 53, 71, 54, 60, 69, 66, 54, 74, 71, 61, 91, 69, 53, 63, 56, 51, 77, 83, 59, 47, 53, 80, 68, 56, 70, 58, 71, 92, 46, 81, 78, 70, 73, 47, 86, 108, 60, 54, 89, 47, 62, 55, 57, 53, 71, 60, 63, 59, 67, 65, 72, 60, 67, 65, 73, 48, 75, 61, 60, 76, 79, 60, 81, 64, 53, 59, 61, 79, 78, 57, 63, 47, 81, 64, 52, 69, 59, 62, 64, 52, 68, 58, 45, 66, 56, 59, 54, 63, 109, 65, 51, 58, 68, 60, 69, 56, 52, 83, 66, 50, 71, 51, 59, 68, 67, 62, 60, 48, 82, 58, 61, 51, 65, 57, 71, 71, 62, 85, 53, 61, 64, 62, 69, 66, 68, 75, 73, 66, 54, 83, 79, 69, 61, 79, 59, 90, 55, 105, 60, 59, 42, 61, 72, 78, 52, 67, 78, 89, 60, 84, 61, 50, 52, 56, 82, 68, 71, 80, 63, 69, 58, 67, 59, 76, 58, 53, 64, 94, 76, 52, 95, 61, 68, 69, 70, 56, 71, 83, 73, 55, 76, 62, 74, 64, 88, 84, 67, 55, 85, 49, 37, 111, 60, 57, 57, 81, 59, 66, 67, 79, 71, 63, 66, 54, 80, 75, 68, 95, 77, 118, 62, 62, 73, 76, 59, 62, 60, 82, 44, 65, 61, 61, 50, 75, 54, 60, 73, 75, 75, 66, 49, 57, 59, 75, 52, 55, 78, 63, 68, 63, 54, 56, 71, 67, 58, 79, 63, 66, 59, 53, 66, 70, 72, 59, 71, 69, 72, 55, 67, 58, 60, 63, 68, 80, 61, 56, 59, 78, 56, 68, 54, 48, 67, 72, 58, 52, 53, 65, 65, 71, 106, 43, 68, 51, 77, 78, 63, 100, 62, 59, 55, 80, 73, 62, 80, 55, 61, 59, 72, 80, 50, 63, 67, 100, 79, 48, 76, 46, 67, 80, 85, 75, 66, 62, 54, 119, 70, 65, 72, 62, 54, 74, 53, 77, 41, 63, 49, 84, 64, 59, 45, 53, 47, 66, 64, 75, 57, 57, 68, 66, 59, 64, 69, 44, 53, 77, 58, 64, 55, 69, 77, 81, 70, 57, 57, 53, 91, 61, 89, 47, 71, 55, 55, 76, 61, 53, 60, 56, 98, 61, 47, 63, 56, 67, 54, 80, 75, 61, 57, 79, 86, 87, 68, 84, 62, 49, 60, 65, 56, 55, 60, 70, 84, 72, 51, 73, 52, 76, 76, 70, 74, 69, 69, 64, 95, 78, 57, 58, 78, 77, 81, 78, 83, 67, 66, 62, 85, 67, 51, 92, 81, 81, 66, 52, 71, 58, 93, 54, 61, 67, 69, 62, 63, 86, 40, 62, 56, 79, 51, 94, 60, 66, 56, 93, 61, 67, 41, 66, 63, 67, 63, 82, 46, 73, 46, 95, 64, 72, 75, 63, 57, 88, 79, 82, 110, 80, 60, 77, 50, 62, 56, 64, 67, 49, 76, 93, 60, 59, 71, 52, 52, 60, 59, 78, 60, 46, 69, 76, 76, 56, 59, 102, 69, 75, 85, 92, 66, 68, 57, 76, 69, 72, 69, 58, 54, 59, 72, 52, 53, 93, 72, 74, 60, 55, 51, 48, 38, 75, 55, 48, 63, 56, 64, 60, 72, 94, 144, 88, 82, 71, 57, 77, 70, 38, 63, 64, 59, 77, 73, 57, 71, 65, 53, 45, 71, 49, 88, 66, 66, 62, 56, 62, 49, 64, 106, 73, 92, 70, 51, 55, 59, 63, 60, 90, 54, 108, 64, 63, 55, 51, 64, 58, 67, 89, 83, 60, 54, 63, 72, 80, 84, 66, 55, 61, 54, 62, 91, 73, 62, 75, 74, 84, 61, 66, 71, 45, 85, 59, 60, 68, 63, 60, 61, 73, 74, 89, 50, 72, 46, 48, 62, 74, 79, 77, 67, 72, 60, 84, 82, 64, 63, 63, 57, 85, 67, 55, 59, 76, 44, 63, 61, 55, 61, 59, 75, 64, 65, 60, 68, 72, 62, 72, 55, 54, 74, 65, 75, 63, 58, 64, 72, 67, 65, 63, 41, 56, 55, 69, 67, 63, 67, 62, 60, 56, 54, 60, 49, 59, 63, 61, 65, 84, 63, 54, 103, 55, 71, 90, 70, 58, 54, 101, 60, 47, 53, 61, 72, 60, 66, 55, 86, 63, 80, 52, 53, 47, 62, 61, 80, 73, 68, 54, 58, 64, 80, 60, 75, 59, 55, 69, 87, 69, 73, 82, 70, 73, 50, 69, 54, 48, 75, 59, 68, 73, 67, 67, 75, 73, 47, 64, 53, 66, 61, 50, 63, 64, 49, 112, 63, 78, 72, 52, 59, 78, 62, 75, 77, 52, 126, 67, 62, 68, 60, 71, 65, 57, 67, 64, 54, 76, 53, 51, 59, 60, 67, 88, 97, 58, 51, 72, 49, 59, 53, 50, 49, 68, 52, 67, 56, 56, 57, 58, 57, 75, 67, 60, 68, 68, 58, 84, 66, 58, 72, 58, 51, 59, 59, 65, 76, 71, 61, 65, 54, 64, 59, 48, 88, 64, 62, 64, 62, 92, 52, 68, 64, 64, 67, 71, 53, 60, 58, 66, 62, 106, 70, 88, 54, 47, 65, 72, 71, 63, 82, 63, 75, 54, 97, 69, 79, 63, 63, 71, 60, 52, 68, 56, 75, 55, 74, 80, 57, 75, 70, 75, 72, 48, 58, 59, 54, 69, 81, 59, 70, 62, 72, 118, 85, 65, 58, 60, 37, 60, 63, 63, 57, 62, 73, 66, 58, 66, 53, 39, 148, 53, 59, 65, 74, 43, 87, 84, 81, 82, 54, 59, 59, 69, 69, 58, 61, 67, 54, 44, 55, 82, 84, 83, 72, 61, 71, 69, 50, 58, 83, 54, 70, 71, 60, 57, 65, 65, 66, 71, 86, 78, 54, 73, 38, 108, 60, 89, 80, 67, 58, 60, 56, 44, 70, 84, 72, 63, 69, 75, 63, 68, 63, 60, 70, 60, 65, 60, 62, 90, 62, 86, 62, 96, 56, 68, 75, 69, 78, 111, 88, 61, 63, 65, 52, 70, 96, 71, 46, 64, 60, 69, 69, 65, 63, 85, 58, 68, 74, 52, 68, 69, 60, 79, 47, 72, 44, 61, 55, 74, 66, 55, 71, 73, 49, 46, 55, 48, 61, 38, 68, 55, 58, 69, 74, 72, 55, 74, 51, 64, 79, 78, 48, 64, 65, 57, 79, 67, 56, 71, 56, 42, 69, 73, 53, 56, 70, 51, 54, 84, 47, 51, 90, 63, 58, 67, 65, 84, 72, 78, 70, 59, 59, 51, 78, 58, 81, 47, 70, 84, 88, 66, 66, 54, 74, 64, 83, 136, 98, 45, 78, 52, 76, 72, 64, 46, 62, 71, 76, 68, 58, 62, 71, 54, 59, 63, 94, 51, 60, 72, 68, 74, 63, 61, 87, 67, 59, 88, 63, 65, 79, 70, 60, 60, 80, 53, 44, 84, 65, 76, 61, 48, 53, 66, 67, 65, 56, 78, 63, 49, 99, 64, 62, 89, 75, 77, 66, 60, 53, 89, 76, 67, 56, 72, 67, 83, 38, 61, 61, 83, 80, 62, 81, 62, 71, 101, 64, 82, 72, 66, 71, 49, 91, 51, 79, 58, 77, 78, 80, 78, 70, 70, 62, 52, 76, 66, 55, 66, 49, 106, 71, 72, 57, 47, 58, 79, 61, 77, 72, 101, 63, 85, 83, 59, 58, 50, 58, 67, 64, 76, 64, 60, 85, 80, 62, 71, 69, 56, 67, 87, 53, 63, 100, 65, 71, 62, 83, 60, 67, 51, 57, 55, 61, 52, 63, 58, 62, 82, 66, 74, 70, 57, 63, 92, 54, 69, 68, 60, 62, 61, 56, 93, 58, 59, 60, 58, 86, 63, 55, 84, 56, 89, 50, 75, 70, 75, 77, 61, 69, 89, 77, 61, 59, 57, 64, 83, 54, 79, 73, 83, 48, 76, 47, 63, 43, 66, 65, 69, 59, 58, 59, 59, 56, 74, 80, 66, 55, 81, 58, 68, 65, 57, 58, 88, 37, 76, 59, 55, 76, 68, 88, 53, 68, 79, 68, 57, 71, 63, 57, 73, 72, 58, 61, 74, 63, 59, 67, 50, 58, 70, 56, 63, 110, 74, 56, 59, 60, 74, 55, 91, 60, 56, 59, 86, 79, 59, 88, 52, 68, 58, 56, 84, 57, 72, 52, 112, 59, 64, 61, 60, 74, 70, 77, 75, 66, 73, 62, 113, 71, 62, 54, 78, 47, 57, 47, 79, 56, 88, 50, 83, 39, 83, 58, 46, 49, 62, 51, 80, 77, 50, 79, 59, 61, 68, 72, 66, 56, 98, 73, 58, 60, 63, 79, 58, 63, 51, 83, 69, 79, 69, 55, 53, 46, 61, 54, 63, 83, 67, 74, 66, 98, 72, 66, 49, 48, 74, 56, 59, 63, 56, 84, 65, 75, 70, 65, 81, 44, 56, 58, 71, 57, 59, 65, 54, 68, 67, 50, 62, 57, 74, 48, 83, 47, 54, 62, 64, 74, 81, 51, 67, 66, 79, 68, 72, 56, 47, 74, 75, 92, 82, 77, 55, 47, 57, 61, 52, 67, 61, 85, 49, 43, 57, 70, 60, 40, 82, 66, 54, 42, 79, 71, 100, 63, 63, 69, 81, 81, 53, 61, 68, 48, 64, 62, 90, 52, 62, 67, 69, 64, 61, 80, 76, 58, 92, 43, 73, 83, 72, 84, 64, 67, 46, 57, 85, 57, 66, 70, 89, 82, 64, 76, 79, 89, 59, 60, 53, 76, 58, 48, 54, 65, 81, 46, 53, 56, 148, 58, 59, 55, 61, 57, 65, 60, 58, 64, 73, 68, 69, 82, 73, 60, 53, 70, 87, 64, 69, 64, 54, 68, 54, 49, 64, 54, 46, 68, 59, 62, 63, 88, 56, 64, 58, 67, 53, 70, 49, 55, 58, 63, 51, 69, 59, 62, 85, 66, 57, 60, 92, 89, 58, 75, 84, 55, 47, 50, 52, 64, 69, 75, 80, 73, 60, 64, 72, 61, 65, 77, 102, 64, 51, 71, 69, 70, 68, 67, 70, 82, 62, 71, 62, 61, 61, 61, 77, 65, 59, 64, 62, 57, 59, 64, 54, 67, 60, 77, 70, 55, 50, 60, 62, 81, 62, 66, 65, 57, 62, 71, 57, 53, 64, 49, 49, 63, 84, 57, 71, 53, 54, 77, 60, 102, 54, 40, 59, 62, 68, 67, 66, 58, 66, 59, 58, 65, 54, 74, 59, 55, 56, 50, 64, 59, 80, 52, 56, 54, 68, 89, 57, 95, 71, 59, 58, 80, 58, 56, 79, 81, 64, 68, 77, 71, 83, 61, 59, 59, 107, 67, 96, 71, 70, 74, 70, 60, 80, 83, 61, 96, 84, 70, 53, 96, 72, 63, 72, 58, 58, 62, 64, 53, 77, 67, 61, 42, 60, 107, 56, 89, 79, 54, 55, 54, 64, 84, 60, 70, 77, 88, 49, 55, 73, 52, 46, 75, 76, 95, 72, 57, 64, 51, 63, 57, 52, 64, 74, 54, 65, 52, 116, 67, 57, 62, 60, 60, 69, 61, 59, 50, 69, 77, 57, 69, 74, 40, 63, 71, 56, 66, 69, 62, 72, 102, 93, 54, 58, 50, 65, 83, 54, 102, 66, 76, 76, 71, 58, 67, 57, 49, 73, 98, 58, 63, 62, 62, 63, 71, 71, 58, 63, 88, 61, 70, 63, 61, 60, 59, 83, 56, 58, 61, 84, 77, 43, 56, 63, 91, 67, 59, 54, 60, 60, 60, 76, 51, 76, 56, 108, 65, 66, 72, 55, 55, 55, 58, 59, 52, 65, 68, 60, 60, 67, 96, 56, 60, 71, 51, 78, 100, 41, 66, 68, 68, 67, 64, 69, 64, 72, 64, 50, 64, 101, 68, 57, 50, 83, 62, 63, 62, 71, 84, 74, 69, 62, 97, 69, 54, 95, 62, 50, 55, 44, 54, 58, 47, 64, 68, 64, 57, 69, 60, 77, 55, 60, 96, 59, 90, 66, 61, 55, 85, 59, 66, 63, 60, 73, 72, 62, 60, 58, 55, 52, 49, 42, 59, 52, 51, 57, 66, 53, 50, 91, 76, 33, 62, 60, 58, 120, 66, 78, 73, 65, 76, 68, 57, 98, 80, 71, 58, 61, 69, 62, 78, 58, 78, 79, 76, 99, 88, 54, 84, 73, 73, 52, 71, 55, 75, 71, 60, 42, 44, 61, 73, 74, 59, 70, 59, 59, 54, 64, 53, 55, 63, 74, 70, 54, 99, 51, 63, 46, 57, 64, 55, 66, 84, 97, 56, 59, 43, 56, 52, 57, 58, 65, 92, 38, 73, 74, 61, 76, 56, 49, 83, 76, 73, 66, 40, 81, 93, 61, 64, 91, 102, 78, 97, 82, 73, 58, 48, 70, 60, 105, 47, 53, 64, 79, 85, 72, 72, 91, 69, 69, 67, 59, 65, 59, 71, 75, 51, 65, 50, 56, 59, 78, 69, 56, 64, 54, 68, 87, 58, 67, 65, 60, 61, 66, 64, 100, 51, 55, 76, 67, 60, 73, 85, 46, 59, 59, 95, 78, 105, 55, 60, 61, 70, 87, 105, 79, 62, 59, 66, 44, 67, 115, 76, 54, 60, 72, 79, 73, 74, 61, 69, 68, 49, 72, 59, 62, 53, 62, 60, 59, 56, 66, 44, 60, 68, 65, 58, 55, 57, 39, 85, 75, 62, 71, 50, 61, 64, 62, 69, 69, 60, 56, 70, 59, 97, 49, 62, 66, 67, 52, 102, 67, 60, 44, 91, 76, 43, 63, 63, 77, 54, 45, 74, 62, 89, 63, 64, 85, 75, 46, 59, 54, 72, 63, 67, 81, 102, 78, 61, 98, 72, 64, 46, 72, 65, 60, 60, 51, 71, 57, 60, 60, 53, 70, 46, 62, 111, 49, 69, 73, 61, 58, 61, 53, 65, 61, 100, 60, 69, 109, 90, 71, 88, 40, 59, 49, 75, 52, 62, 59, 63, 69, 73, 71, 65, 61, 65, 57, 56, 64, 94, 63, 64, 56, 93, 73, 48, 63, 59, 69, 85, 58, 61, 69, 54, 67, 61, 48, 55, 67, 60, 85, 65, 49, 61, 63, 67, 66, 65, 79, 54, 62, 69, 54, 58, 71, 54, 51, 57, 57, 65, 79, 54, 77, 84, 61, 64, 81, 67, 68, 58, 89, 81, 45, 60, 58, 66, 92, 47, 81, 60, 67, 92, 73, 66, 73, 51, 72, 75, 39, 63, 69, 55, 75, 54, 61, 80, 72, 92, 75, 53, 82, 55, 58, 40, 61, 56, 89, 34, 60, 57, 47, 79, 63, 69, 72, 62, 82, 60, 59, 76, 62, 97, 59, 76, 59, 71, 63, 64, 75, 73, 67, 54, 55, 45, 88, 52, 45, 50, 62, 72, 74, 71, 68, 69, 50, 43, 59, 78, 100, 99, 86, 64, 54, 81, 68, 106, 58, 65, 68, 65, 55, 58, 52, 69, 55, 74, 64, 61, 61, 58, 58, 68, 49, 76, 91, 65, 70, 61, 56, 56, 50, 61, 50, 59, 52, 52, 55, 46, 67, 62, 70, 76, 57, 68, 92, 54, 63, 67, 63, 62, 62, 58, 64, 49, 60, 62, 53, 79, 55, 61, 55, 80, 58, 65, 75, 103, 85, 51, 58, 52, 108, 64, 55, 77, 78, 63, 101, 86, 74, 64, 78, 58, 49, 59, 79, 89, 58, 58, 49, 57, 57, 51, 54, 55, 67, 60, 82, 50, 52, 51, 77, 69, 65, 69, 76, 65, 51, 60, 70, 48, 59, 57, 64, 77, 53, 54, 84, 82, 53, 72, 82, 72, 50, 68, 61, 66, 56, 63, 63, 42, 56, 115, 60, 71, 46, 69, 73, 62, 70, 68, 69, 54, 57, 58, 74, 78, 61, 51, 71, 63, 46, 52, 68, 52, 101, 80, 74, 64, 69, 60, 56, 92, 69, 57, 53, 50, 44, 57, 49, 68, 55, 49, 84, 56, 78, 68, 103, 50, 59, 95, 65, 92, 67, 72, 86, 80, 89, 58, 61, 47, 67, 59, 56, 61, 70, 59, 56, 79, 62, 47, 52, 79, 76, 53, 66, 96, 73, 61, 61, 66, 60, 59, 75, 59, 55, 63, 70, 62, 62, 67, 91, 56, 56, 61, 57, 61, 73, 55, 70, 65, 40, 68, 73, 60, 70, 59, 81, 68, 67, 62, 69, 66, 60, 59, 70, 69, 51, 66, 68, 63, 56, 58, 65, 55, 79, 55, 57, 57, 58, 74, 77, 61, 61, 57, 57, 49, 60, 62, 63, 66, 46, 82, 73, 62, 45, 68, 65, 65, 74, 62, 54, 59, 61, 108, 66, 113, 70, 58, 61, 69, 64, 65, 87, 72, 65, 64, 61, 55, 65, 61, 88, 92, 62, 69, 69, 63, 72, 66, 80, 57, 70, 54, 97, 59, 72, 69, 74, 57, 47, 54, 67, 76, 60, 55, 57, 59, 56, 52, 91, 60, 59, 70, 71, 61, 51, 64, 66, 52, 51, 91, 61, 112, 62, 88, 53, 61, 59, 54, 62, 72, 56, 82, 72, 52, 51, 83, 47, 58, 52, 70, 61, 45, 122, 60, 61, 63, 65, 71, 70, 58, 69, 57, 70, 60, 53, 67, 48, 61, 60, 78, 71, 73, 74, 57, 58, 58, 79, 54, 61, 79, 84, 51, 68, 88, 67, 69, 48, 59, 81, 63, 60, 52, 61, 128, 70, 56, 63, 61, 65, 117, 64, 63, 67, 95, 98, 78, 59, 60, 58, 69, 79, 55, 59, 51, 46, 56, 62, 69, 122, 58, 44, 52, 62, 55, 62, 60, 71, 67, 54, 62, 56, 100, 80, 64, 64, 85, 61, 57, 66, 65, 88, 64, 60, 49, 57, 55, 71, 82, 63, 46, 73, 62, 49, 68, 61, 60, 66, 65, 57, 61, 50, 43, 67, 59, 63, 53, 65, 76, 65, 64, 70, 44, 85, 51, 58, 60, 60, 96, 68, 46, 74, 57, 73, 59, 61, 48, 61, 79, 64, 73, 64, 68, 72, 71, 68, 60, 52, 63, 64, 62, 64, 65, 73, 49, 46, 67, 81, 56, 66, 56, 95, 65, 54, 52, 95, 51, 65, 79, 72, 60, 64, 102, 59, 65, 72, 70, 61, 71, 56, 68, 79, 65, 58, 109, 57, 120, 82, 58, 54, 69, 54, 66, 59, 69, 68, 61, 51, 47, 74, 83, 51, 82, 50, 60, 61, 72, 76, 67, 65, 52, 59, 59, 65, 44, 48, 52, 70, 68, 60, 74, 55, 57, 98, 65, 60, 75, 89, 65, 60, 53, 58, 87, 76, 73, 50, 83, 57, 55, 61, 87, 70, 63, 54, 62, 76, 68, 90, 63, 72, 102, 58, 60, 118, 58, 58, 45, 48, 56, 84, 62, 60, 69, 54, 59, 62, 69, 71, 60, 79, 76, 59, 50, 75, 63, 66, 50, 63, 104, 51, 81, 74, 87, 69, 60, 66, 70, 59, 58, 102, 62, 110, 74, 65, 55, 57, 86, 70, 78, 62, 61, 53, 62, 60, 63, 63, 61, 102, 131, 66, 54, 55, 76, 53, 47, 68, 62, 47, 81, 73, 63, 59, 64, 55, 70, 58, 59, 58, 81, 84, 60, 61, 70, 65, 50, 81, 59, 61, 65, 72, 70, 54, 89, 72, 56, 69, 53, 81, 43, 66, 43, 65, 55, 60, 72, 61, 60, 53, 60, 57, 73, 69, 67, 68, 68, 76, 57, 59, 64, 62, 70, 56, 57, 77, 38, 79, 42, 89, 64, 58, 62, 56, 62, 56, 57, 58, 49, 69, 82, 55, 73, 77, 60, 61, 55, 70, 66, 57, 64, 70, 63, 55, 76, 63, 67, 130, 68, 99, 84, 55, 69, 52, 66, 50, 66, 74, 86, 70, 49, 48, 65, 90, 54, 73, 75, 64, 71, 83, 55, 63, 80, 79, 61, 79, 58, 62, 56, 58, 57, 80, 62, 64, 51, 55, 63, 64, 43, 79, 65, 65, 51, 59, 63, 73, 57, 64, 52, 72, 46, 53, 50, 57, 58, 71, 72, 74, 61, 61, 91, 57, 56, 67, 81, 65, 54, 82, 61, 49, 53, 63, 72, 92, 73, 79, 47, 67, 77, 61, 83, 55, 76, 63, 103, 53, 61, 55, 83, 86, 44, 71, 55, 73, 66, 64, 52, 60, 67, 68, 54, 57, 65, 59, 61, 101, 63, 57, 49, 68, 78, 79, 72, 46, 58, 91, 80, 82, 60, 82, 93, 83, 59, 64, 66, 72, 54, 85, 92, 67, 62, 65, 54, 63, 52, 66, 56, 59, 49, 52, 91, 51, 62, 99, 97, 63, 52, 77, 60, 65, 84, 69, 67, 55, 63, 65, 57, 43, 61, 42, 57, 79, 59, 59, 65, 62, 78, 63, 57, 55, 50, 86, 54, 80, 82, 75, 73, 58, 47, 79, 43, 77, 52, 56, 50, 57, 51, 70, 79, 80, 59, 95, 93, 53, 65, 71, 85, 68, 53, 65, 97, 78, 66, 67, 54, 64, 70, 57, 50, 52, 44, 57, 68, 72, 59, 55, 79, 70, 67, 50, 73, 77, 54, 58, 48, 69, 59, 49, 87, 60, 56, 65, 54, 71, 55, 52, 67, 60, 72, 57, 46, 66, 55, 67, 76, 59, 68, 69, 60, 65, 45, 52, 69, 61, 74, 49, 69, 49, 64, 85, 69, 59, 59, 51, 93, 60, 63, 65, 69, 66, 61, 60, 59, 83, 51, 62, 75, 58, 68, 70, 65, 53, 60, 50, 74, 68, 96, 50, 82, 58, 81, 100, 49, 69, 74, 60, 62, 84, 71, 61, 72, 70, 67, 59, 52, 57, 68, 50, 63, 56, 63, 90, 56, 64, 72, 78, 56, 64, 77, 62, 63, 59, 51, 70, 50, 49, 50, 57, 63, 69, 62, 61, 57, 69, 73, 55, 79, 60, 63, 63, 55, 51, 43, 68, 56, 60, 63, 61, 59, 64, 55, 39, 64, 56, 102, 67, 63, 73, 65, 113, 54, 78, 76, 51, 69, 63, 78, 99, 64, 83, 69, 56, 73, 69, 61, 52, 57, 62, 67, 58, 61, 72, 68, 62, 63, 63, 65, 61, 68, 66, 49, 66, 67, 51, 71, 68, 52, 67, 64, 65, 90, 75, 52, 63, 58, 63, 68, 57, 66, 63, 65, 71, 70, 73, 96, 66, 73, 104, 55, 64, 77, 54, 68, 91, 58, 92, 68, 63, 68, 54, 67, 61, 75, 68, 63, 56, 52, 66, 73, 56, 60, 58, 52, 76, 68, 68, 59, 76, 70, 67, 61, 60, 62, 97, 73, 60, 59, 58, 63, 69, 68, 73, 80, 88, 46, 61, 60, 58, 66, 47, 92, 55, 84, 88, 59, 56, 96, 54, 51, 55, 71, 70, 58, 55, 68, 57, 69, 55, 59, 72, 64, 54, 78, 90, 52, 53, 74, 54, 69, 55, 54, 53, 61, 66, 95, 48, 39, 54, 57, 57, 67, 93, 72, 73, 78, 59, 62, 80, 77, 66, 59, 59, 75, 85, 41, 61, 78, 50, 70, 63, 69, 71, 58, 54, 72, 88, 67, 62, 63, 53, 97, 69, 79, 56, 56, 63, 64, 56, 58, 52, 56, 60, 56, 52, 55, 72, 78, 90, 63, 57, 49, 73, 55, 54, 62, 60, 50, 55, 73, 83, 54, 61, 74, 77, 67, 60, 63, 66, 62, 55, 67, 78, 49, 58, 72, 96, 64, 65, 71, 65, 55, 61, 53, 49, 41, 72, 94, 67, 69, 56, 70, 67, 65, 51, 66, 78, 60, 53, 60, 73, 62, 66, 78, 51, 65, 53, 56, 61, 56, 103, 54, 54, 69, 68, 82, 59, 57, 58, 78, 67, 63, 46, 57, 68, 70, 64, 87, 57, 66, 54, 66, 58, 67, 81, 57, 63, 54, 72, 64, 68, 54, 61, 77, 71, 64, 58, 63, 49, 64, 77, 81, 56, 67, 56, 63, 71, 109, 65, 49, 54, 66, 107, 53, 68, 92, 78, 60, 62, 53, 54, 62, 65, 48, 56, 46, 107, 76, 58, 63, 82, 68, 56, 73, 64, 80, 72, 46, 63, 75, 95, 65, 58, 98, 63, 55, 96, 60, 77, 74, 75, 77, 65, 57, 57, 75, 60, 93, 57, 56, 50, 61, 71, 62, 70, 61, 58, 54, 54, 51, 69, 73, 54, 68, 60, 60, 69, 68, 51, 55, 82, 72, 70, 88, 56, 71, 63, 52, 66, 58, 49, 68, 68, 58, 51, 87, 76, 64, 57, 68, 68, 63, 59, 100, 57, 70, 67, 69, 58, 71, 68, 50, 66, 86, 58, 61, 54, 84, 78, 90, 43, 59, 68, 58, 66, 63, 86, 58, 55, 83, 61, 45, 50, 81, 56, 68, 63, 75, 65, 53, 66, 53, 51, 103, 74, 70, 59, 61, 70, 68, 61, 65, 46, 66, 60, 61, 84, 70, 51, 62, 64, 70, 79, 78, 55, 68, 63, 72, 60, 57, 56, 66, 62, 70, 56, 85, 58, 52, 54, 50, 107, 68, 67, 89, 105, 74, 76, 64, 57, 63, 63, 83, 75, 66, 81, 61, 52, 84, 69, 67, 85, 70, 52, 41, 114, 71, 68, 59, 80, 70, 69, 75, 70, 62, 65, 67, 61, 60, 56, 63, 63, 66, 53, 66, 69, 78, 72, 72, 64, 83, 41, 54, 52, 67, 62, 82, 59, 64, 63, 72, 60, 59, 64, 75, 87, 54, 119, 61, 92, 93, 62, 66, 74, 70, 68, 45, 44, 57, 55, 56, 65, 54, 58, 68, 90, 120, 54, 56, 60, 75, 77, 61, 64, 69, 66, 81, 80, 79, 58, 78, 64, 59, 46, 78, 111, 71, 72, 64, 69, 49, 71, 65, 50, 51, 63, 68, 56, 72, 49, 61, 66, 61, 54, 68, 68, 83, 63, 52, 64, 57, 66, 55, 56, 66, 78, 63, 49, 61, 66, 66, 61, 73, 58, 96, 66, 59, 57, 52, 59, 67, 72, 58, 81, 60, 114, 49, 63, 86, 70, 49, 68, 64, 77, 63, 88, 58, 64, 90, 87, 59, 59, 48, 76, 59, 57, 62, 59, 56, 79, 65, 70, 75, 134, 63, 48, 52, 68, 63, 58, 65, 61, 74, 57, 85, 60, 57, 68, 62, 57, 75, 73, 89, 66, 63, 84, 53, 74, 69, 64, 60, 50, 79, 64, 62, 66, 45, 77, 66, 54, 57, 71, 66, 86, 56, 66, 68, 61, 52, 51, 68, 59, 50, 56, 45, 71, 75, 74, 48, 62, 73, 61, 70, 66, 61, 63, 62, 69, 60, 61, 63, 97, 52, 72, 78, 58, 55, 54, 89, 57, 65, 81, 70, 72, 88, 59, 65, 58, 48, 61, 96, 65, 68, 60, 63, 72, 56, 59, 50, 71, 71, 56, 59, 53, 54, 49, 52, 69, 73, 59, 72, 108, 60, 53, 65, 68, 66, 79, 65, 55, 67, 54, 52, 82, 68, 78, 84, 90, 64, 61, 56, 83, 61, 60, 74, 59, 53, 63, 46, 60, 60, 61, 46, 51, 73, 62, 48, 56, 65, 99, 88, 58, 63, 71, 65, 66, 59, 73, 61, 74, 52, 56, 85, 100, 68, 60, 61, 61, 67, 55, 56, 62, 76, 54, 50, 59, 52, 76, 55, 57, 82, 109, 60, 60, 58, 54, 56, 67, 56, 56, 56, 51, 77, 62, 85, 51, 68, 62, 88, 60, 58, 71, 77, 47, 62, 63, 62, 52, 68, 62, 59, 77, 62, 62, 61, 57, 57, 70, 61, 77, 62, 64, 65, 62, 77, 61, 77, 54, 66, 63, 77, 62, 66, 67, 70, 54, 72, 100, 71, 54, 56, 58, 60, 67, 71, 62, 63, 57, 96, 76, 69, 83, 58, 67, 58, 81, 70, 76, 61, 65, 68, 81, 78, 90, 52, 61, 61, 55, 56, 89, 113, 79, 53, 85, 57, 62, 90, 42, 59, 62, 53, 82, 81, 72, 78, 49, 60, 56, 63, 72, 66, 61, 60, 69, 57, 67, 44, 81, 60, 100, 76, 52, 70, 58, 66, 92, 69, 83, 79, 68, 58, 56, 81, 64, 62, 86, 77, 100, 66, 57, 78, 67, 62, 57, 58, 68, 60, 75, 59, 60, 64, 68, 70, 64, 85, 73, 59, 65, 60, 62, 72, 67, 88, 52, 68, 65, 53, 69, 42, 52, 80, 59, 72, 54, 50, 68, 64, 83, 73, 61, 64, 53, 66, 65, 63, 109, 76, 58, 67, 86, 69, 70, 77, 57, 56, 50, 68, 58, 69, 64, 64, 73, 86, 67, 68, 57, 75, 52, 43, 51, 58, 54, 55, 56, 84, 75, 63, 64, 53, 63, 58, 87, 63, 59, 62, 75, 84, 94, 55, 65, 65, 66, 62, 58, 65, 65, 64, 64, 55, 59, 110, 55, 75, 94, 67, 57, 69, 69, 50, 62, 60, 64, 60, 48, 84, 58, 88, 70, 64, 64, 88, 70, 65, 83, 69, 66, 66, 53, 55, 66, 52, 58, 55, 81, 63, 72, 59, 72, 69, 53, 62, 58, 36, 61, 77, 37, 59, 49, 56, 71, 66, 74, 72, 47, 58, 54, 74, 57, 63, 70, 64, 58, 86, 88, 61, 63, 82, 61, 57, 68, 65, 70, 59, 56, 74, 69, 54, 54, 68, 86, 50, 67, 67, 37, 64, 70, 67, 60, 75, 77, 69, 70, 55, 62, 45, 59, 50, 65, 58, 86, 65, 68, 73, 81, 65, 65, 74, 61, 67, 62, 61, 72, 78, 59, 64, 68, 87, 71, 67, 54, 53, 85, 80, 62, 71, 63, 88, 49, 104, 80, 64, 76, 76, 48, 71, 59, 53, 49, 77, 65, 60, 72, 65, 78, 67, 75, 59, 67, 74, 79, 57, 68, 60, 59, 64, 79, 62, 63, 83, 78, 67, 67, 59, 67, 62, 65, 47, 86, 75, 56, 77, 75, 75, 64, 64, 63, 58, 81, 59, 47, 67, 54, 106, 53, 70, 58, 59, 73, 69, 60, 69, 64, 39, 56, 66, 77, 83, 78, 104, 45, 62, 58, 76, 41, 64, 114, 59, 68, 54, 61, 71, 51, 60, 55, 59, 75, 57, 69, 53, 57, 67, 62, 68, 35, 63, 55, 51, 64, 49, 106, 74, 53, 64, 64, 69, 56, 57, 48, 53, 63, 60, 85, 55, 62, 61, 62, 82, 66, 68, 65, 61, 54, 95, 53, 65, 66, 62, 84, 55, 51, 64, 63, 67, 70, 53, 78, 57, 54, 53, 62, 63, 113, 54, 67, 61, 64, 44, 62, 62, 67, 78, 52, 70, 65, 69, 89, 71, 43, 94, 54, 77, 64, 71, 72, 82, 81, 45, 63, 75, 66, 55, 57, 102, 54, 48, 66, 66, 65, 78, 76, 58, 59, 66, 63, 69, 49, 55, 67, 62, 66, 63, 65, 59, 76, 67, 92, 70, 72, 66, 53, 79, 71, 58, 55, 64, 60, 71, 54, 68, 84, 65, 67, 56, 46, 76, 54, 77, 59, 64, 62, 57, 50, 48, 64, 99, 59, 58, 51, 50, 51, 55, 91, 84, 56, 71, 82, 55, 85, 51, 63, 85, 78, 65, 60, 57, 67, 69, 69, 69, 57, 62, 55, 77, 69, 50, 62, 69, 78, 130, 85, 65, 62, 73, 61, 77, 72, 51, 57, 63, 64, 66, 67, 73, 68, 38, 50, 64, 77, 69, 68, 53, 68, 50, 64, 57, 59, 69, 61, 58, 62, 66, 75, 70, 57, 73, 112, 64, 66, 68, 62, 102, 66, 55, 52, 125, 79, 65, 64, 81, 101, 54, 110, 73, 59, 59, 57, 90, 47, 47, 92, 74, 60, 65, 54, 60, 87, 72, 50, 52, 55, 61, 76, 65, 58, 72, 62, 66, 72, 65, 69, 64, 72, 62, 57, 58, 71, 71, 82, 78, 66, 50, 68, 60, 69, 71, 74, 66, 55, 82, 68, 57, 92, 61, 81, 55, 49, 50, 67, 70, 60, 58, 64, 66, 55, 73, 65, 64, 70, 64, 93, 122, 80, 51, 66, 83, 73, 45, 63, 66, 73, 76, 74, 51, 63, 54, 66, 55, 63, 72, 56, 66, 75, 61, 54, 77, 64, 39, 53, 65, 64, 71, 68, 58, 56, 58, 87, 65, 60, 59, 71, 67, 60, 69, 72, 60, 60, 58, 63, 59, 54, 58, 56, 90, 72, 73, 70, 70, 61, 62, 65, 73, 55, 84, 57, 72, 61, 58, 72, 63, 119, 78, 60, 49, 58, 69, 87, 45, 66, 74, 73, 56, 49, 71, 67, 68, 50, 57, 69, 57, 98, 51, 79, 70, 62, 69, 78, 84, 135, 59, 34, 56, 47, 64, 65, 56, 61, 59, 66, 61, 76, 52, 59, 57, 86, 68, 66, 73, 61, 62, 64, 61, 70, 95, 66, 73, 54, 83, 75, 58, 56, 51, 56, 85, 54, 69, 65, 66, 56, 62, 72, 76, 62, 35, 74, 63, 77, 60, 52, 49, 47, 64, 63, 58, 70, 71, 67, 53, 58, 71, 62, 53, 68, 78, 67, 57, 48, 58, 56, 61, 112, 66, 67, 73, 51, 82, 67, 63, 83, 85, 56, 62, 68, 58, 65, 132, 58, 60, 56, 74, 78, 44, 66, 60, 56, 65, 60, 76, 67, 59, 93, 57, 69, 100, 70, 53, 68, 62, 49, 83, 82, 62, 75, 63, 57, 74, 50, 65, 77, 63, 116, 48, 86, 55, 57, 70, 62, 56, 65, 66, 59, 57, 68, 50, 67, 72, 66, 57, 67, 52, 59, 83, 56, 74, 75, 76, 52, 57, 86, 67, 83, 60, 81, 70, 69, 68, 72, 88, 82, 63, 46, 60, 66, 67, 63, 59, 62, 62, 63, 65, 57, 57, 63, 71, 80, 82, 45, 88, 64, 71, 74, 49, 56, 69, 54, 61, 56, 59, 83, 72, 64, 51, 59, 107, 51, 71, 54, 96, 63, 56, 65, 113, 48, 53, 62, 53, 67, 68, 61, 62, 59, 58, 65, 64, 82, 62, 54, 65, 64, 60, 69, 63, 60, 60, 63, 73, 45, 69, 66, 78, 52, 60, 44, 78, 68, 75, 67, 55, 56, 78, 77, 68, 70, 88, 70, 93, 55, 53, 72, 75, 97, 57, 70, 71, 63, 60, 69, 80, 64, 72, 76, 63, 87, 51, 66, 52, 81, 59, 75, 56, 61, 60, 40, 60, 71, 73, 75, 58, 90, 61, 50, 70, 63, 58, 61, 68, 72, 69, 65, 69, 56, 89, 94, 69, 56, 51, 68, 83, 56, 62, 66, 60, 66, 80, 71, 61, 71, 86, 61, 51, 67, 77, 65, 61, 55, 64, 69, 52, 67, 77, 71, 71, 68, 85, 64, 55, 63, 82, 60, 72, 67, 68, 63, 68, 68, 79, 53, 75, 74, 57, 64, 80, 89, 58, 61, 48, 71, 63, 64, 67, 64, 60, 62, 70, 60, 75, 66, 65, 86, 61, 124, 48, 52, 64, 41, 73, 66, 49, 72, 55, 94, 76, 49, 48, 59, 68, 69, 53, 91, 78, 81, 56, 55, 67, 70, 51, 49, 72, 59, 58, 63, 70, 96, 54, 79, 87, 95, 52, 70, 65, 71, 75, 74, 58, 66, 65, 61, 68, 60, 47, 74, 57, 63, 42, 58, 91, 49, 61, 87, 67, 77, 62, 62, 66, 58, 64, 67, 70, 56, 97, 49, 54, 63, 59, 78, 46, 61, 73, 78, 47, 74, 60, 57, 75, 59, 56, 73, 59, 56, 65, 59, 64, 60, 59, 64, 68, 52, 54, 65, 78, 66, 71, 62, 88, 68, 67, 53, 75, 61, 47, 56, 75, 88, 68, 62, 54, 68, 47, 67, 70, 54, 73, 66, 64, 56, 59, 56, 92, 77, 49, 64, 70, 71, 60, 105, 63, 61, 68, 103, 56, 58, 67, 79, 65, 58, 68, 64, 53, 48, 90, 66, 66, 42, 62, 83, 65, 60, 75, 72, 60, 69, 78, 58, 56, 64, 75, 57, 65, 63, 56, 61, 90, 72, 69, 62, 69, 72, 78, 63, 55, 45, 100, 74, 118, 105, 55, 64, 61, 55, 57, 67, 62, 80, 86, 52, 73, 95, 46, 52, 87, 68, 63, 74, 70, 68, 57, 55, 57, 104, 72, 64, 68, 69, 60, 54, 65, 57, 69, 68, 67, 58, 59, 52, 39, 62, 76, 94, 51, 65, 58, 70, 53, 62, 57, 53, 40, 61, 84, 71, 87, 57, 91, 72, 61, 64, 65, 84, 52, 62, 66, 79, 81, 76, 76, 63, 56, 68, 56, 99, 68, 134, 59, 72, 80, 54, 45, 58, 63, 54, 80, 66, 65, 89, 81, 55, 68, 54, 64, 72, 87, 69, 56, 53, 56, 93, 66, 67, 64, 67, 61, 61, 69, 63, 57, 67, 73, 83, 54, 51, 68, 59, 126, 72, 72, 56, 53, 54, 105, 62, 77, 59, 65, 89, 56, 57, 63, 55, 48, 67, 56, 72, 68, 59, 51, 53, 68, 88, 68, 48, 59, 61, 53, 64, 59, 75, 62, 74, 59, 74, 88, 74, 65, 109, 89, 58, 75, 47, 77, 64, 80, 68, 43, 74, 62, 74, 63, 55, 91, 52, 83, 68, 55, 68, 51, 65, 49, 55, 60, 53, 54, 60, 56, 63, 66, 60, 65, 69, 74, 60, 63, 75, 59, 74, 62, 69, 80, 73, 85, 62, 56, 56, 62, 74, 63, 60, 89, 77, 59, 71, 71, 64, 65, 77, 99, 63, 70, 51, 50, 70, 84, 67, 51, 48, 51, 63, 52, 69, 77, 102, 60, 46, 44, 74, 62, 85, 64, 66, 65, 62, 51, 75, 65, 85, 69, 63, 77, 67, 57, 59, 56, 63, 69, 71, 104, 57, 73, 66, 51, 57, 78, 66, 52, 67, 54, 58, 69, 77, 67, 60, 91, 57, 59, 68, 64, 65, 56, 89, 66, 77, 66, 65, 65, 59, 67, 62, 47, 59, 66, 44, 49, 111, 43, 71, 88, 61, 94, 59, 60, 58, 66, 55, 51, 66, 76, 73, 67, 90, 69, 55, 69, 56, 67, 55, 79, 100, 64, 58, 85, 53, 74, 100, 56, 57, 63, 57, 63, 70, 74, 54, 55, 55, 60, 68, 67, 66, 66, 70, 61, 54, 63, 62, 58, 98, 60, 55, 38, 64, 54, 58, 73, 63, 61, 49, 86, 63, 56, 95, 67, 88, 68, 62, 65, 79, 74, 65, 52, 64, 61, 64, 47, 64, 63, 55, 66, 104, 130, 75, 52, 55, 61, 52, 87, 51, 86, 68, 57, 70, 61, 66, 58, 70, 64, 89, 63, 66, 50, 108, 70, 67, 59, 63, 61, 81, 50, 49, 68, 64, 75, 66, 67, 80, 58, 64, 68, 66, 76, 53, 42, 71, 47, 58, 56, 59, 64, 78, 46, 69, 75, 70, 63, 55, 72, 61, 45, 58, 48, 47, 66, 66, 75, 73, 63, 64, 64, 58, 105, 67, 50, 74, 79, 59, 78, 72, 78, 46, 68, 58, 53, 65, 75, 51, 72, 86, 66, 47, 71, 67, 83, 62, 59, 64, 77, 115, 61, 54, 68, 65, 76, 65, 69, 59, 56, 54, 93, 72, 73, 53, 59, 87, 66, 80, 70, 47, 68, 61, 52, 74, 58, 70, 57, 67, 57, 77, 55, 67, 60, 61, 57, 72, 51, 66, 67, 72, 56, 82, 65, 56, 69, 65, 55, 66, 59, 66, 57, 76, 59, 66, 56, 70, 71, 53, 76, 63, 65, 68, 67, 67, 56, 62, 55, 47, 59, 70, 67, 71, 72, 57, 47, 63, 59, 85, 48, 67, 82, 63, 79, 71, 63, 65, 93, 50, 59, 63, 55, 56, 84, 77, 57, 64, 61, 69, 58, 49, 69, 39, 90, 58, 70, 54, 75, 120, 64, 57, 52, 54, 86, 42, 47, 67, 50, 48, 67, 66, 84, 74, 66, 67, 53, 49, 67, 75, 52, 70, 98, 63, 61, 67, 61, 66, 61, 62, 69, 71, 64, 50, 69, 73, 42, 57, 68, 63, 53, 79, 55, 59, 50, 44, 64, 66, 71, 56, 61, 52, 68, 42, 70, 65, 75, 56, 71, 57, 63, 58, 54, 66, 90, 79, 58, 79, 77, 52, 76, 78, 72, 45, 66, 76, 65, 62, 70, 53, 53, 102, 67, 71, 60, 80, 81, 62, 62, 83, 122, 55, 58, 63, 92, 50, 86, 62, 64, 49, 67, 62, 69, 61, 67, 63, 76, 58, 63, 63, 70, 52, 63, 47, 52, 75, 58, 53, 59, 66, 57, 65, 83, 57, 76, 57, 51, 61, 59, 77, 83, 69, 79, 105, 69, 65, 50, 61, 58, 52, 44, 61, 61, 76, 83, 60, 53, 76, 57, 63, 99, 104, 66, 58, 100, 58, 47, 67, 91, 70, 68, 59, 64, 51, 76, 46, 55, 58, 53, 72, 65, 56, 64, 71, 75, 58, 68, 62, 61, 67, 57, 71, 59, 63, 98, 71, 66, 56, 65, 46, 69, 87, 71, 58, 57, 78, 76, 40, 62, 51, 46, 59, 63, 59, 68, 57, 59, 71, 82, 65, 55, 48, 80, 66, 56, 50, 83, 97, 64, 43, 62, 52, 62, 74, 61, 76, 71, 63, 69, 46, 62, 66, 53, 60, 70, 56, 69, 71, 52, 48, 42, 66, 44, 67, 64, 60, 53, 65, 89, 71, 50, 67, 43, 120, 56, 60, 85, 95, 61, 69, 55, 70, 79, 58, 49, 50, 71, 61, 60, 60, 37, 45, 81, 69, 46, 80, 65, 60, 64, 71, 51, 70, 60, 65, 70, 57, 69, 63, 55, 57, 88, 79, 74, 65, 50, 58, 75, 56, 83, 56, 50, 56, 57, 70, 65, 65, 64, 74, 97, 58, 64, 82, 64, 57, 66, 70, 55, 83, 62, 89, 75, 56, 66, 59, 65, 52, 54, 62, 61, 60, 44, 65, 44, 68, 62, 62, 53, 63, 67, 60, 60, 51, 57, 73, 58, 61, 52, 96, 50, 54, 64, 78, 71, 94, 64, 60, 45, 90, 60, 73, 72, 64, 65, 55, 49, 67, 61, 50, 51, 80, 92, 75, 73, 60, 75, 58, 60, 73, 61, 64, 70, 60, 64, 60, 64, 58, 69, 82, 51, 69, 66, 48, 64, 58, 62, 72, 58, 66, 99, 62, 60, 66, 68, 64, 64, 59, 69, 68, 60, 55, 55, 82, 55, 61, 66, 59, 60, 62, 69, 69, 68, 43, 54, 58, 96, 70, 59, 62, 65, 61, 52, 64, 109, 66, 76, 86, 87, 66, 92, 60, 78, 54, 78, 68, 62, 58, 71, 56, 55, 60, 72, 86, 71, 55, 52, 48, 71, 80, 91, 70, 69, 109, 103, 79, 71, 70, 87, 57, 62, 62, 66, 55, 63, 66, 52, 73, 76, 73, 86, 72, 63, 64, 60, 75, 40, 81, 58, 65, 64, 63, 93, 100, 70, 69, 62, 67, 55, 60, 70, 81, 69, 65, 58, 67, 80, 67, 86, 50, 68, 60, 86, 46, 61, 106, 49, 53, 55, 60, 69, 61, 71, 63, 55, 54, 65, 85, 58, 54, 65, 60, 62, 61, 76, 50, 66, 65, 56, 84, 64, 63, 71, 69, 70, 53, 64, 43, 53, 66, 67, 60, 54, 60, 54, 62, 69, 67, 78, 64, 73, 55, 113, 73, 90, 73, 55, 92, 77, 56, 76, 60, 72, 70, 55, 89, 55, 66, 50, 68, 87, 128, 60, 60, 72, 57, 69, 60, 55, 68, 66, 65, 92, 54, 73, 88, 63, 55, 55, 60, 82, 67, 72, 69, 52, 73, 55, 60, 62, 59, 56, 50, 55, 47, 83, 66, 63, 53, 47, 79, 65, 52, 67, 59, 52, 79, 45, 61, 81, 50, 62, 75, 61, 83, 52, 63, 56, 70, 71, 51, 73, 68, 76, 74, 58, 67, 62, 106, 73, 69, 68, 72, 67, 62, 63, 52, 53, 60, 58, 61, 64, 60, 56, 56, 58, 62, 78, 74, 48, 58, 57, 53, 68, 55, 68, 64, 61, 45, 53, 88, 69, 55, 66, 51, 64, 70, 59, 56, 64, 67, 63, 54, 81, 82, 60, 54, 58, 59, 113, 48, 69, 58, 70, 57, 63, 59, 56, 57, 57, 75, 76, 80, 72, 61, 73, 85, 59, 67, 61, 76, 64, 88, 83, 79, 67, 50, 65, 55, 74, 55, 72, 59, 58, 56, 69, 121, 79, 59, 54, 69, 83, 61, 63, 48, 84, 58, 73, 59, 61, 62, 61, 74, 53, 71, 57, 65, 69, 67, 52, 100, 65, 48, 55, 72, 60, 52, 65, 60, 67, 64, 49, 79, 84, 64, 65, 81, 67, 52, 91, 66, 55, 88, 82, 58, 72, 68, 58, 59, 77, 63, 54, 98, 46, 74, 60, 67, 59, 59, 61, 73, 52, 95, 58, 91, 84, 56, 74, 68, 86, 66, 54, 69, 56, 72, 54, 75, 64, 68, 47, 76, 113, 100, 54, 52, 54, 81, 60, 72, 69, 53, 52, 79, 79, 61, 63, 63, 65, 56, 72, 59, 70, 77, 65, 66, 68, 62, 72, 66, 61, 67, 58, 64, 80, 81, 64, 68, 70, 57, 67, 70, 54, 59, 63, 70, 79, 57, 59, 55, 69, 81, 77, 50, 63, 62, 66, 50, 53, 72, 60, 72, 62, 48, 84, 87, 65, 114, 47, 46, 59, 49, 116, 66, 56, 57, 80, 85, 38, 67, 71, 68, 49, 47, 63, 64, 48, 63, 61, 74, 56, 52, 48, 76, 62, 66, 54, 62, 102, 117, 60, 58, 52, 65, 80, 57, 51, 57, 63, 57, 72, 53, 70, 64, 43, 66, 64, 56, 77, 53, 58, 85, 69, 98, 62, 55, 67, 56, 81, 74, 61, 70, 97, 60, 51, 72, 72, 68, 101, 53, 53, 93, 57, 57, 52, 71, 61, 63, 66, 40, 55, 58, 98, 61, 60, 74, 60, 62, 63, 60, 64, 79, 68, 51, 70, 47, 67, 52, 47, 59, 70, 83, 59, 67, 61, 79, 53, 74, 60, 55, 85, 57, 63, 63, 55, 62, 61, 63, 63, 45, 58, 77, 57, 64, 51, 73, 52, 61, 78, 60, 63, 59, 75, 60, 45, 59, 74, 138, 73, 69, 66, 63, 79, 58, 62, 55, 69, 66, 58, 74, 64, 94, 54, 90, 66, 64, 59, 88, 46, 75, 48, 57, 53, 51, 54, 52, 73, 59, 50, 73, 54, 61, 63, 60, 54, 71, 78, 50, 59, 116, 67, 70, 60, 66, 71, 64, 65, 56, 73, 78, 63, 57, 59, 69, 68, 79, 66, 62, 60, 65, 107, 63, 68, 83, 73, 76, 67, 60, 78, 68, 53, 53, 43, 61, 72, 62, 74, 62, 52, 74, 100, 52, 61, 55, 86, 52, 68, 70, 78, 74, 59, 87, 100, 53, 64, 54, 59, 70, 61, 53, 61, 60, 71, 64, 61, 61, 52, 62, 59, 57, 58, 55, 61, 52, 55, 54, 55, 54, 54, 64, 48, 57, 61, 68, 59, 51, 53, 55, 62, 65, 58, 51, 62, 70, 51, 72, 83, 50, 77, 71, 59, 61, 50, 59, 57, 49, 52, 58, 81, 83, 61, 67, 58, 75, 64, 61, 89, 75, 98, 89, 60, 69, 70, 55, 76, 81, 62, 58, 59, 56, 53, 67, 66, 51, 56, 58, 72, 50, 51, 80, 56, 66, 84, 58, 64, 68, 76, 53, 62, 55, 53, 66, 64, 87, 68, 63, 52, 74, 55, 62, 52, 66, 82, 51, 58, 80, 99, 67, 54, 85, 68, 75, 64, 80, 62, 59, 55, 54, 53, 45, 74, 65, 69, 56, 71, 57, 72, 59, 73, 49, 60, 55, 70, 56, 76, 61, 55, 75, 56, 60, 71, 60, 64, 63, 74, 68, 66, 58, 57, 68, 64, 129, 74, 60, 58, 77, 69, 70, 58, 70, 51, 62, 55, 61, 66, 78, 74, 84, 57, 75, 69, 64, 57, 65, 60, 58, 67, 73, 60, 61, 66, 73, 72, 69, 61, 59, 68, 105, 64, 62, 59, 73, 84, 52, 68, 67, 92, 75, 52, 57, 64, 65, 66, 68, 61, 82, 107, 64, 52, 63, 87, 69, 54, 55, 66, 78, 65, 95, 63, 68, 70, 53, 63, 57, 55, 72, 74, 60, 47, 79, 59, 74, 52, 63, 56, 65, 78, 87, 54, 66, 57, 65, 52, 51, 67, 56, 89, 45, 57, 49, 55, 72, 64, 68, 56, 61, 62, 54, 60, 45, 68, 61, 64, 61, 57, 57, 83, 54, 56, 96, 59, 80, 78, 59, 56, 58, 52, 61, 69, 68, 61, 48, 72, 56, 69, 89, 79, 58, 53, 100, 62, 52, 62, 67, 54, 70, 60, 64, 68, 84, 76, 52, 50, 68, 59, 100, 59, 58, 64, 70, 53, 52, 42, 72, 59, 54, 52, 64, 56, 49, 67, 65, 62, 107, 73, 65, 56, 60, 92, 70, 65, 69, 60, 48, 100, 55, 57, 60, 72, 60, 61, 43, 54, 61, 58, 55, 58, 67, 105, 58, 65, 58, 52, 60, 53, 73, 58, 63, 64, 44, 52, 64, 60, 42, 54, 75, 71, 74, 53, 65, 73, 56, 66, 78, 80, 47, 58, 86, 61, 60, 81, 78, 58, 81, 61, 64, 83, 57, 65, 68, 76, 62, 45, 77, 57, 59, 58, 76, 59, 56, 70, 67, 66, 90, 82, 49, 64, 69, 59, 39, 75, 116, 67, 59, 67, 67, 67, 62, 65, 67, 66, 63, 71, 68, 86, 90, 89, 58, 67, 77, 73, 70, 71, 60, 65, 39, 41, 64, 61, 68, 74, 82, 59, 75, 59, 56, 77, 82, 55, 45, 65, 63, 104, 59, 45, 58, 47, 73, 120, 54, 61, 62, 54, 75, 52, 73, 98, 66, 48, 58, 54, 56, 73, 61, 68, 62, 53, 86, 55, 48, 57, 65, 58, 64, 60, 61, 76, 73, 63, 69, 68, 93, 60, 94, 102, 60, 61, 62, 49, 95, 52, 58, 52, 51, 61, 60, 60, 49, 95, 54, 45, 71, 73, 59, 110, 67, 48, 66, 50, 54, 74, 56, 68, 60, 79, 61, 62, 56, 60, 62, 56, 78, 70, 54, 69, 66, 102, 64, 44, 70, 72, 41, 59, 61, 68, 75, 81, 79, 62, 78, 68, 103, 56, 63, 63, 67, 76, 67, 47, 57, 57, 61, 67, 52, 69, 49, 72, 68, 85, 62, 59, 58, 50, 94, 57, 72, 57, 38, 72, 72, 65, 65, 59, 61, 58, 62, 60, 45, 68, 45, 68, 57, 79, 86, 79, 67, 48, 59, 62, 62, 94, 72, 102, 66, 57, 54, 51, 48, 48, 35, 86, 56, 64, 59, 67, 64, 79, 81, 61, 62, 71, 70, 67, 65, 60, 70, 58, 50, 72, 55, 48, 110, 71, 84, 86, 79, 112, 67, 79, 74, 93, 71, 67, 65, 70, 79, 55, 76, 84, 73, 55, 59, 57, 60, 51, 71, 48, 64, 65, 87, 53, 66, 66, 54, 81, 62, 95, 68, 65, 64, 82, 72, 63, 67, 63, 70, 54, 67, 57, 67, 74, 36, 57, 62, 68, 59, 64, 57, 97, 87, 57, 59, 87, 61, 94, 50, 61, 64, 59, 79, 63, 64, 63, 55, 83, 60, 107, 78, 54, 72, 63, 51, 43, 51, 65, 114, 106, 58, 84, 60, 62, 62, 40, 65, 67, 72, 55, 68, 58, 58, 51, 72, 71, 61, 73, 55, 64, 79, 56, 80, 75, 53, 86, 58, 60, 68, 54, 51, 63, 67, 69, 72, 75, 61, 84, 68, 66, 69, 92, 65, 62, 53, 60, 60, 75, 78, 69, 76, 81, 60, 65, 67, 69, 72, 63, 64, 47, 64, 86, 52, 77, 81, 55, 48, 81, 65, 54, 57, 47, 61, 50, 61, 53, 92, 66, 87, 60, 82, 65, 69, 67, 59, 72, 65, 59, 62, 73, 70, 56, 64, 55, 62, 90, 121, 66, 66, 84, 59, 76, 50, 71, 57, 51, 76, 93, 50, 51, 62, 56, 103, 62, 90, 78, 54, 59, 36, 55, 62, 70, 67, 75, 74, 65, 72, 62, 37, 65, 72, 59, 70, 70, 62, 61, 61, 61, 90, 60, 51, 69, 67, 57, 71, 61, 58, 56, 61, 75, 68, 72, 66, 66, 70, 91, 62, 71, 112, 73, 64, 58, 52, 62, 54, 50, 73, 55, 62, 57, 61, 56, 78, 65, 53, 63, 71, 100, 49, 62, 49, 49, 55, 55, 69, 69, 56, 65, 58, 69, 62, 75, 54, 60, 64, 62, 72, 58, 45, 58, 65, 60, 58, 75, 40, 72, 62, 62, 100, 71, 71, 84, 66, 66, 72, 58, 106, 82, 81, 51, 48, 72, 67, 71, 63, 61, 64, 73, 101, 56, 83, 61, 58, 58, 68, 59, 68, 60, 65, 83, 64, 56, 76, 80, 68, 60, 72, 77, 68, 65, 70, 57, 76, 46, 46, 67, 82, 64, 65, 50, 57, 75, 75, 60, 61, 77, 82, 54, 60, 106, 79, 49, 81, 87, 68, 76, 77, 50, 84, 87, 59, 61, 54, 67, 54, 57, 60, 65, 68, 50, 81, 101, 67, 63, 68, 88, 59, 58, 56, 107, 56, 59, 60, 57, 50, 50, 61, 65, 61, 65, 83, 60, 66, 73, 57, 68, 72, 70, 82, 49, 59, 56, 48, 59, 54, 73, 53, 79, 71, 58, 64, 64, 61, 81, 64, 72, 70, 64, 90, 53, 58, 52, 55, 70, 91, 70, 57, 69, 71, 56, 72, 67, 74, 76, 44, 62, 65, 60, 61, 50, 61, 66, 50, 72, 58, 58, 64, 64, 62, 75, 74, 52, 76, 51, 58, 58, 88, 66, 58, 69, 50, 55, 51, 76, 77, 73, 67, 68, 58, 103, 81, 53, 76, 68, 65, 60, 75, 59, 68, 66, 82, 74, 77, 51, 48, 56, 69, 57, 67, 69, 90, 59, 63, 81, 57, 59, 82, 67, 61, 59, 64, 58, 54, 61, 93, 76, 66, 63, 52, 72, 66, 49, 67, 83, 61, 97, 69, 73, 72, 71, 66, 41, 68, 57, 56, 71, 51, 51, 66, 50, 69, 60, 67, 63, 87, 53, 50, 67, 93, 75, 73, 90, 56, 60, 58, 92, 72, 51, 78, 83, 64, 65, 91, 68, 74, 51, 61, 98, 82, 66, 62, 57, 45, 65, 53, 67, 68, 59, 57, 62, 65, 71, 63, 75, 112, 71, 75, 50, 62, 85, 48, 56, 52, 68, 57, 55, 60, 57, 57, 65, 69, 63, 74, 91, 60, 63, 69, 69, 62, 74, 65, 67, 82, 58, 49, 63, 57, 49, 51, 82, 61, 67, 52, 51, 60, 65, 47, 64, 60, 83, 53, 66, 59, 72, 63, 55, 73, 64, 58, 55, 64, 59, 55, 63, 50, 66, 64, 59, 57, 65, 57, 87, 70, 67, 72, 58, 51, 71, 72, 59, 64, 71, 101, 63, 65, 77, 63, 61, 59, 59, 75, 57, 63, 72, 66, 68, 88, 76, 90, 56, 71, 58, 88, 69, 55, 58, 98, 48, 51, 61, 70, 70, 63, 57, 73, 63, 57, 73, 62, 73, 79, 65, 73, 55, 63, 64, 82, 65, 72, 68, 60, 72, 70, 76, 86, 64, 75, 49, 55, 98, 73, 56, 64, 61, 63, 84, 63, 65, 61, 77, 57, 112, 75, 57, 69, 95, 58, 60, 58, 63, 71, 32, 64, 63, 74, 77, 64, 54, 66, 74, 70, 76, 71, 57, 83, 57, 59, 64, 69, 60, 67, 71, 57, 71, 56, 65, 64, 61, 57, 59, 78, 54, 71, 70, 77, 71, 58, 41, 57, 79, 73, 64, 65, 80, 54, 44, 73, 56, 64, 66, 59, 53, 62, 65, 46, 35, 58, 77, 55, 51, 55, 84, 84, 59, 79, 84, 68, 71, 100, 63, 75, 69, 62, 63, 69, 68, 61, 64, 77, 66, 53, 83, 95, 47, 62, 33, 88, 94, 90, 64, 62, 63, 85, 58, 45, 76, 49, 52, 65, 61, 53, 59, 63, 58, 85, 68, 49, 73, 74, 115, 79, 63, 63, 61, 79, 124, 58, 62, 62, 48, 97, 53, 70, 87, 73, 80, 53, 51, 64, 60, 55, 76, 99, 84, 109, 56, 64, 48, 60, 55, 54, 83, 74, 59, 72, 48, 59, 63, 88, 63, 93, 94, 63, 47, 56, 63, 63, 57, 50, 53, 58, 59, 59, 59, 73, 94, 57, 77, 60, 75, 70, 67, 70, 78, 65, 65, 58, 60, 65, 61, 63, 78, 62, 66, 57, 53, 54, 54, 56, 59, 64, 76, 55, 92, 58, 75, 69, 59, 58, 77, 74, 63, 64, 70, 54, 63, 71, 52, 50, 80, 58, 70, 58, 59, 65, 69, 68, 65, 64, 57, 88, 48, 48, 53, 53, 92, 59, 85, 57, 56, 59, 61, 75, 68, 109, 74, 65, 67, 52, 54, 44, 78, 59, 64, 72, 82, 66, 54, 62, 52, 54, 74, 68, 69, 57, 41, 74, 87, 63, 66, 54, 54, 76, 64, 70, 55, 111, 78, 58, 70, 65, 57, 53, 68, 83, 83, 60, 63, 63, 58, 64, 65, 83, 65, 52, 55, 63, 60, 127, 77, 72, 114, 55, 99, 64, 91, 56, 68, 68, 65, 57, 47, 107, 65, 99, 91, 56, 80, 57, 78, 45, 69, 85, 66, 70, 65, 64, 76, 98, 66, 54, 85, 59, 75, 65, 66, 70, 62, 61, 63, 66, 76, 73, 57, 64, 66, 86, 51, 73, 64, 62, 80, 70, 41, 54, 55, 41, 57, 59, 60, 48, 96, 78, 66, 58, 66, 46, 100, 62, 62, 32, 88, 65, 74, 61, 58, 71, 66, 51, 57, 51, 61, 71, 103, 54, 77, 69, 55, 79, 77, 90, 53, 70, 69, 77, 74, 56, 74, 68, 50, 57, 77, 50, 70, 66, 59, 63, 63, 66, 61, 63, 56, 55, 86, 56, 80, 64, 55, 68, 66, 55, 79, 70, 50, 74, 86, 66, 63, 71, 51, 53, 67, 45, 87, 59, 102, 78, 63, 64, 69, 64, 54, 68, 50, 55, 46, 87, 64, 79, 69, 74, 60, 65, 68, 62, 53, 94, 82, 56, 93, 79, 40, 72, 60, 65, 75, 60, 45, 58, 59, 64, 80, 66, 53, 66, 63, 56, 58, 56, 57, 106, 49, 62, 60, 67, 45, 72, 63, 62, 52, 45, 100, 76, 81, 71, 68, 91, 59, 64, 57, 72, 48, 67, 73, 94, 73, 68, 59, 51, 85, 67, 83, 52, 69, 57, 42, 58, 63, 67, 57, 43, 51, 70, 77, 61, 54, 78, 66, 61, 66, 99, 59, 78, 58, 55, 60, 59, 60, 73, 92, 73, 62, 71, 64, 58, 67, 63, 68, 73, 58, 64, 73, 46, 63, 93, 61, 56, 66, 84, 55, 58, 69, 66, 58, 61, 86, 59, 72, 64, 57, 73, 63, 77, 54, 47, 48, 84, 59, 56, 62, 66, 83, 56, 55, 66, 92, 60, 61, 54, 43, 71, 68, 92, 74, 70, 75, 87, 67, 57, 74, 58, 79, 71, 79, 66, 72, 61, 52, 61, 68, 75, 58, 66, 52, 79, 78, 55, 63, 59, 91, 58, 53, 72, 51, 62, 59, 53, 73, 62, 63, 64, 63, 65, 47, 69, 83, 56, 71, 50, 68, 64, 58, 54, 70, 73, 69, 58, 62, 52, 42, 69, 52, 42, 84, 44, 48, 76, 55, 104, 55, 59, 70, 83, 67, 81, 63, 67, 71, 64, 63, 87, 73, 55, 63, 75, 57, 53, 49, 80, 61, 65, 55, 65, 110, 59, 76, 64, 63, 51, 59, 62, 68, 61, 59, 65, 57, 67, 59, 84, 64, 48, 71, 65, 68, 87, 65, 62, 62, 72, 73, 59, 59, 63, 68, 56, 72, 68, 59, 68, 73, 63, 70, 94, 62, 70, 61, 69, 54, 72, 61, 54, 62, 74, 61, 84, 92, 60, 89, 65, 72, 51, 50, 53, 61, 73, 80, 73, 109, 65, 58, 59, 69, 76, 71, 116, 64, 45, 61, 49, 68, 59, 49, 63, 59, 64, 57, 59, 68, 58, 56, 67, 62, 66, 92, 57, 70, 47, 80, 71, 67, 71, 63, 59, 57, 72, 66, 53, 57, 69, 55, 59, 67, 81, 63, 58, 64, 55, 87, 61, 57, 80, 52, 60, 54, 77, 71, 92, 63, 66, 78, 59, 54, 59, 42, 65, 85, 63, 98, 62, 70, 71, 80, 58, 57, 84, 95, 60, 60, 65, 61, 61, 54, 72, 64, 59, 62, 74, 60, 84, 63, 55, 74, 90, 59, 60, 65, 69, 65, 65, 50, 66, 59, 73, 58, 58, 60, 50, 63, 52, 61, 59, 60, 67, 52, 51, 59, 62, 54, 60, 54, 65, 53, 61, 64, 55, 68, 59, 61, 46, 65, 73, 38, 63, 68, 63, 66, 53, 60, 76, 93, 76, 61, 55, 59, 54, 73, 63, 109, 75, 64, 73, 53, 75, 88, 66, 71, 58, 65, 54, 81, 61, 79, 54, 83, 58, 50, 63, 65, 53, 66, 64, 89, 78, 55, 80, 75, 59, 65, 63, 55, 70, 56, 71, 48, 65, 66, 59, 70, 41, 82, 71, 72, 87, 51, 62, 61, 56, 61, 54, 58, 74, 87, 58, 70, 62, 66, 75, 110, 58, 60, 50, 77, 68, 75, 69, 63, 71, 56, 61, 62, 120, 76, 50, 75, 63, 54, 77, 71, 49, 56, 36, 59, 78, 64, 87, 61, 77, 86, 75, 74, 79, 93, 61, 67, 78, 43, 75, 60, 61, 76, 57, 59, 60, 54, 61, 47, 53, 69, 70, 57, 52, 75, 54, 80, 72, 50, 51, 62, 53, 62, 66, 62, 59, 64, 58, 85, 74, 52, 65, 79, 64, 67, 74, 64, 55, 46, 54, 57, 85, 51, 73, 56, 67, 45, 50, 79, 97, 87, 60, 54, 107, 93, 88, 64, 58, 72, 49, 66, 57, 74, 76, 51, 61, 64, 62, 62, 78, 73, 87, 66, 57, 85, 66, 73, 71, 66, 57, 76, 65, 48, 62, 75, 68, 56, 61, 55, 66, 50, 97, 96, 66, 53, 79, 59, 67, 59, 51, 63, 83, 80, 80, 61, 101, 72, 64, 61, 62, 54, 65, 56, 63, 64, 69, 65, 88, 80, 74, 78, 58, 53, 85, 71, 73, 47, 61, 66, 63, 52, 65, 61, 59, 82, 53, 75, 83, 46, 48, 72, 70, 62, 52, 65, 57, 74, 74, 55, 53, 59, 67, 126, 85, 65, 47, 53, 75, 68, 64, 81, 69, 55, 89, 52, 70, 58, 70, 62, 90, 70, 102, 72, 57, 48, 63, 80, 65, 79, 75, 56, 52, 64, 57, 55, 115, 55, 64, 55, 65, 56, 68, 67, 77, 84, 78, 50, 51, 63, 59, 75, 55, 63, 60, 90, 61, 59, 81, 80, 50, 70, 58, 65, 58, 63, 55, 77, 63, 53, 47, 64, 72, 56, 52, 60, 65, 54, 66, 60, 77, 53, 57, 96, 58, 63, 60, 64, 64, 58, 70, 57, 63, 62, 72, 67, 68, 69, 61, 49, 71, 65, 65, 50, 55, 62, 92, 61, 62, 81, 66, 60, 57, 88, 98, 68, 60, 46, 52, 62, 62, 92, 60, 52, 69, 66, 80, 102, 59, 50, 43, 55, 47, 71, 58, 72, 59, 74, 79, 65, 55, 86, 99, 68, 53, 58, 57, 65, 62, 52, 61, 71, 55, 68, 82, 72, 60, 69, 71, 58, 78, 63, 69, 69, 69, 73, 50, 59, 56, 62, 57, 66, 68, 52, 56, 76, 104, 84, 60, 75, 61, 73, 66, 58, 66, 88, 52, 91, 64, 55, 82, 55, 64, 47, 57, 70, 57, 77, 51, 61, 88, 55, 56, 67, 86, 77, 77, 62, 69, 57, 60, 58, 66, 49, 58, 57, 99, 64, 77, 66, 65, 57, 83, 55, 50, 67, 52, 59, 78, 83, 55, 58, 104, 60, 70, 70, 52, 50, 61, 76, 98, 70, 111, 66, 81, 79, 80, 66, 57, 86, 70, 51, 73, 44, 77, 89, 71, 63, 63, 47, 87, 120, 87, 60, 57, 60, 54, 71, 81, 92, 69, 57, 70, 56, 63, 45, 71, 84, 56, 78, 66, 74, 81, 55, 62, 74, 51, 82, 114, 53, 62, 68, 71, 66, 76, 72, 69, 59, 55, 67, 62, 47, 68, 69, 66, 68, 63, 64, 56, 56, 44, 72, 64, 79, 59, 67, 58, 67, 51, 79, 62, 77, 56, 69, 92, 58, 73, 53, 70, 40, 54, 80, 60, 71, 70, 58, 73, 90, 52, 48, 72, 82, 85, 81, 56, 42, 66, 61, 70, 55, 47, 60, 72, 61, 64, 64, 65, 72, 106, 58, 53, 75, 59, 73, 67, 71, 51, 50, 70, 113, 64, 46, 75, 69, 59, 59, 63, 52, 68, 62, 90, 124, 80, 54, 80, 61, 61, 56, 43, 55, 55, 105, 74, 69, 58, 70, 53, 53, 54, 63, 67, 70, 76, 48, 47, 60, 67, 60, 65, 53, 67, 62, 46, 62, 73, 59, 60, 77, 54, 61, 60, 64, 62, 78, 56, 63, 62, 56, 66, 55, 70, 65, 54, 56, 71, 70, 64, 64, 69, 74, 66, 68, 59, 69, 59, 64, 67, 73, 65, 67, 70, 63, 68, 68, 53, 70, 56, 57, 63, 45, 57, 55, 57, 83, 50, 61, 129, 61, 59, 69, 52, 67, 61, 81, 54, 59, 51, 63, 81, 67, 64, 79, 68, 73, 53, 61, 71, 49, 65, 69, 84, 61, 65, 76, 67, 63, 63, 67, 66, 72, 67, 74, 61, 67, 63, 69, 70, 58, 81, 57, 71, 51, 70, 53, 68, 67, 57, 56, 76, 68, 96, 60, 68, 58, 60, 69, 58, 52, 53, 95, 60, 74, 69, 62, 57, 74, 61, 52, 62, 80, 76, 85, 88, 64, 59, 77, 70, 71, 48, 72, 59, 49, 90, 69, 70, 74, 75, 67, 62, 59, 68, 95, 58, 68, 45, 47, 61, 64, 64, 63, 48, 56, 61, 76, 59, 104, 44, 61, 58, 67, 64, 88, 52, 74, 71, 58, 71, 64, 60, 79, 70, 74, 59, 45, 59, 79, 61, 76, 60, 57, 100, 55, 49, 78, 65, 58, 76, 89, 65, 58, 52, 61, 72, 70, 88, 75, 57, 80, 66, 74, 58, 58, 68, 70, 68, 117, 59, 89, 60, 56, 61, 53, 45, 62, 58, 59, 66, 81, 57, 59, 70, 64, 59, 64, 70, 64, 61, 56, 77, 60, 68, 83, 63, 51, 73, 73, 80, 71, 75, 79, 61, 88, 56, 79, 67, 67, 69, 67, 70, 70, 65, 63, 82, 78, 61, 97, 62, 68, 63, 61, 58, 56, 80, 74, 75, 59, 75, 66, 52, 73, 61, 74, 61, 51, 62, 81, 55, 68, 71, 60, 43, 62, 53, 102, 58, 55, 71, 49, 73, 71, 56, 59, 43, 51, 63, 69, 45, 58, 66, 73, 90, 69, 70, 58, 77, 58, 66, 63, 72, 63, 75, 55, 64, 65, 67, 61, 59, 63, 91, 71, 78, 61, 50, 60, 64, 72, 73, 74, 66, 61, 56, 67, 68, 69, 60, 66, 66, 61, 75, 74, 71, 81, 65, 62, 53, 61, 60, 89, 62, 52, 63, 65, 72, 54, 77, 121, 63, 66, 60, 78, 70, 81, 65, 62, 66, 53, 73, 73, 49, 90, 66, 59, 49, 83, 68, 67, 69, 58, 52, 60, 73, 52, 53, 69, 47, 66, 71, 58, 56, 53, 63, 65, 62, 41, 61, 59, 45, 66, 61, 74, 64, 58, 105, 64, 54, 66, 55, 50, 80, 73, 54, 63, 78, 88, 68, 59, 69, 77, 72, 64, 61, 70, 40, 61, 62, 62, 58, 58, 105, 68, 69, 57, 64, 59, 72, 64, 60, 60, 57, 56, 66, 53, 66, 62, 61, 89, 76, 61, 83, 46, 63, 53, 64, 53, 79, 44, 57, 67, 77, 53, 47, 57, 60, 65, 54, 59, 67, 53, 57, 57, 57, 90, 58, 73, 62, 79, 70, 60, 58, 51, 69, 59, 64, 76, 92, 55, 70, 54, 60, 58, 66, 60, 57, 63, 61, 64, 83, 88, 60, 61, 56, 66, 67, 57, 78, 94, 69, 65, 85, 88, 70, 61, 56, 73, 84, 57, 62, 54, 52, 50, 65, 74, 45, 68, 58, 60, 76, 65, 52, 77, 69, 74, 70, 68, 63, 51, 66, 57, 67, 53, 59, 70, 57, 49, 61, 73, 90, 91, 57, 76, 88, 49, 75, 58, 46, 55, 70, 73, 96, 60, 101, 69, 49, 59, 61, 64, 66, 60, 78, 67, 84, 77, 58, 61, 72, 67, 63, 67, 77, 69, 77, 100, 50, 64, 47, 62, 76, 61, 59, 66, 79, 69, 72, 61, 67, 80, 91, 53, 58, 46, 72, 68, 72, 46, 60, 62, 64, 117, 101, 64, 67, 53, 85, 71, 45, 62, 70, 49, 60, 75, 64, 66, 66, 56, 69, 56, 66, 76, 99, 65, 62, 68, 65, 64, 48, 67, 50, 64, 79, 57, 113, 56, 75, 89, 63, 68, 64, 59, 65, 60, 78, 69, 45, 65, 58, 43, 61, 55, 70, 86, 63, 60, 53, 60, 67, 46, 59, 69, 69, 81, 69, 80, 56, 73, 64, 50, 64, 60, 60, 80, 82, 57, 75, 59, 69, 53, 60, 74, 64, 65, 67, 64, 62, 66, 56, 71, 67, 58, 47, 61, 67, 68, 96, 52, 70, 65, 73, 47, 63, 61, 83, 82, 54, 111, 59, 67, 62, 73, 48, 75, 47, 96, 65, 67, 62, 41, 43, 67, 49, 63, 62, 54, 98, 61, 80, 70, 61, 63, 78, 76, 49, 90, 85, 33, 56, 51, 71, 72, 50, 81, 60, 58, 57, 66, 59, 58, 64, 68, 68, 48, 42, 48, 83, 57, 56, 45, 56, 62, 38, 62, 56, 54, 62, 63, 71, 86, 60, 51, 78, 63, 94, 79, 49, 86, 54, 105, 77, 70, 53, 69, 85, 70, 70, 68, 52, 49, 81, 76, 66, 62, 60, 56, 103, 61, 82, 51, 67, 68, 80, 71, 74, 60, 51, 54, 64, 66, 87, 79, 64, 90, 66, 62, 57, 55, 76, 59, 92, 78, 62, 52, 53, 59, 68, 64, 63, 74, 56, 58, 60, 76, 62, 77, 64, 68, 74, 71, 89, 53, 87, 83, 81, 51, 80, 74, 47, 63, 61, 52, 70, 64, 59, 60, 64, 42, 95, 96, 64, 64, 62, 78, 70, 99, 85, 83, 76, 51, 57, 67, 60, 55, 64, 83, 74, 79, 66, 89, 52, 66, 63, 63, 64, 62, 85, 71, 65, 71, 54, 70, 62, 63, 104, 50, 58, 68, 60, 57, 64, 80, 57, 87, 61, 85, 56, 58, 85, 78, 55, 58, 52, 62, 84, 58, 56, 77, 60, 80, 47, 55, 82, 72, 60, 60, 47, 62, 55, 87, 69, 65, 101, 54, 69, 75, 53, 63, 84, 55, 75, 64, 53, 66, 60, 62, 57, 55, 53, 87, 96, 61, 69, 62, 76, 80, 126, 64, 49, 70, 66, 82, 48, 71, 58, 55, 62, 89, 80, 61, 74, 60, 84, 57, 65, 49, 64, 41, 58, 76, 58, 48, 87, 61, 61, 68, 72, 53, 60, 73, 86, 48, 70, 58, 71, 62, 58, 40, 41, 64, 66, 56, 68, 52, 66, 66, 53, 58, 55, 68, 67, 67, 69, 74, 73, 94, 55, 83, 59, 63, 63, 58, 53, 69, 59, 61, 81, 49, 63, 67, 70, 55, 45, 53, 75, 63, 57, 82, 64, 66, 59, 59, 63, 41, 64, 61, 56, 68, 51, 83, 55, 73, 69, 69, 69, 70, 66, 63, 66, 89, 69, 55, 58, 58, 90, 66, 82, 67, 57, 85, 61, 69, 65, 54, 45, 74, 102, 58, 65, 75, 54, 66, 69, 67, 68, 70, 77, 46, 87, 58, 75, 69, 57, 75, 56, 83, 68, 76, 68, 94, 55, 51, 69, 82, 62, 53, 72, 76, 59, 68, 76, 88, 75, 75, 71, 63, 66, 67, 76, 52, 64, 64, 72, 67, 55, 63, 64, 68, 74, 86, 76, 71, 69, 75, 55, 81, 53, 50, 67, 54, 60, 62, 66, 57, 53, 81, 54, 72, 51, 60, 86, 65, 72, 53, 69, 107, 56, 60, 69, 117, 67, 92, 53, 82, 49, 65, 53, 60, 43, 67, 63, 52, 54, 85, 57, 60, 55, 63, 55, 63, 94, 68, 58, 56, 79, 70, 54, 73, 64, 64, 82, 66, 82, 46, 57, 90, 73, 71, 63, 53, 64, 59, 72, 37, 82, 73, 65, 56, 52, 84, 91, 74, 73, 81, 70, 67, 87, 61, 75, 68, 49, 72, 86, 99, 54, 44, 54, 68, 58, 75, 80, 96, 58, 71, 77, 75, 62, 55, 70, 66, 51, 66, 65, 50, 69, 61, 62, 54, 50, 97, 81, 58, 79, 81, 81, 66, 59, 81, 45, 69, 75, 68, 74, 67, 59, 49, 64, 65, 48, 58, 50, 67, 58, 73, 59, 62, 75, 83, 74, 54, 103, 86, 102, 65, 51, 45, 54, 85, 61, 85, 71, 55, 69, 88, 64, 73, 60, 57, 62, 82, 54, 81, 70, 65, 66, 72, 51, 96, 33, 57, 49, 78, 77, 55, 48, 56, 50, 82, 56, 66, 69, 66, 58, 61, 47, 57, 74, 68, 61, 46, 55, 69, 83, 49, 53, 68, 58, 68, 53, 66, 63, 51, 60, 56, 85, 70, 64, 52, 67, 64, 78, 64, 56, 63, 77, 86, 54, 34, 41, 80, 48, 51, 60, 70, 50, 69, 60, 49, 50, 72, 52, 56, 68, 82, 46, 52, 67, 73, 96, 69, 67, 57, 76, 55, 88, 93, 50, 81, 59, 39, 65, 63, 67, 58, 51, 55, 64, 53, 59, 51, 60, 51, 65, 69, 69, 89, 41, 70, 63, 59, 61, 63, 65, 53, 52, 49, 58, 88, 68, 65, 74, 89, 62, 60, 65, 77, 60, 69, 76, 80, 59, 69, 47, 71, 74, 80, 50, 50, 75, 62, 67, 57, 58, 69, 75, 61, 90, 76, 46, 67, 64, 61, 98, 59, 84, 73, 91, 59, 59, 63, 71, 74, 68, 71, 65, 74, 56, 65, 60, 74, 81, 55, 124, 63, 70, 56, 82, 63, 55, 66, 57, 85, 67, 61, 61, 60, 50, 46, 53, 84, 73, 56, 67, 51, 58, 79, 68, 55, 76, 62, 53, 105, 107, 56, 64, 70, 53, 67, 53, 59, 68, 53, 60, 52, 97, 71, 77, 57, 66, 65, 73, 60, 70, 68, 66, 58, 71, 60, 76, 54, 84, 64, 65, 70, 57, 67, 69, 62, 59, 65, 68, 64, 62, 67, 80, 69, 65, 71, 64, 71, 78, 62, 70, 81, 52, 65, 68, 57, 63, 63, 63, 57, 64, 62, 65, 45, 66, 45, 84, 56, 57, 60, 63, 52, 77, 55, 94, 65, 138, 58, 86, 69, 58, 61, 60, 56, 50, 70, 59, 53, 121, 50, 61, 60, 71, 60, 55, 79, 74, 50, 52, 64, 66, 61, 62, 60, 81, 53, 66, 56, 51, 69, 65, 69, 86, 68, 51, 66, 68, 73, 78, 68, 64, 61, 67, 98, 50, 87, 59, 70, 97, 67, 79, 64, 68, 59, 73, 52, 73, 65, 59, 63, 55, 57, 112, 68, 73, 63, 65, 52, 57, 71, 73, 65, 67, 62, 51, 66, 97, 63, 51, 97, 67, 80, 43, 77, 67, 61, 62, 49, 48, 63, 60, 63, 62, 89, 57, 57, 60, 54, 66, 52, 70, 60, 58, 56, 62, 57, 60, 57, 63, 59, 70, 70, 70, 61, 74, 74, 85, 59, 70, 75, 60, 82, 69, 60, 67, 58, 59, 57, 74, 54, 55, 65, 71, 67, 56, 70, 56, 68, 62, 71, 55, 76, 52, 67, 63, 72, 67, 51, 65, 103, 53, 62, 63, 88, 105, 62, 64, 85, 53, 66, 76, 56, 84, 67, 55, 64, 66, 52, 59, 64, 60, 64, 62, 57, 51, 62, 64, 81, 66, 74, 47, 64, 59, 64, 86, 114, 68, 57, 68, 59, 61, 64, 56, 71, 57, 62, 61, 67, 65, 55, 65, 61, 97, 64, 63, 59, 68, 61, 49, 63, 62, 46, 53, 70, 67, 62, 110, 64, 66, 50, 53, 73, 61, 71, 62, 72, 67, 62, 58, 73, 69, 62, 103, 64, 57, 58, 66, 67, 90, 71, 93, 56, 61, 64, 78, 81, 95, 70, 62, 62, 52, 57, 77, 89, 49, 58, 100, 54, 61, 70, 54, 55, 58, 77, 58, 70, 59, 61, 61, 70, 55, 77, 80, 69, 49, 66, 64, 48, 53, 71, 82, 64, 110, 60, 55, 59, 44, 68, 65, 74, 70, 60, 50, 58, 67, 60, 68, 66, 89, 63, 72, 121, 69, 67, 65, 74, 50, 92, 65, 81, 54, 74, 61, 79, 57, 70, 83, 80, 75, 58, 85, 62, 104, 58, 55, 70, 66, 76, 71, 57, 67, 73, 56, 70, 50, 76, 87, 51, 61, 65, 65, 69, 63, 56, 69, 67, 65, 59, 57, 52, 72, 47, 57, 88, 69, 60, 69, 65, 66, 56, 57, 55, 53, 74, 87, 57, 75, 51, 49, 56, 58, 48, 63, 64, 63, 62, 63, 83, 65, 61, 50, 70, 86, 66, 55, 83, 69, 56, 67, 50, 63, 59, 52, 66, 64, 72, 57, 80, 122, 68, 53, 56, 75, 77, 64, 65, 64, 67, 70, 95, 57, 56, 71, 51, 107, 56, 57, 62, 60, 74, 72, 67, 76, 59, 83, 73, 72, 58, 84, 73, 59, 83, 72, 49, 66, 77, 74, 79, 63, 60, 70, 58, 69, 50, 53, 59, 73, 66, 60, 56, 72, 54, 69, 58, 76, 61, 54, 68, 55, 59, 53, 63, 57, 60, 67, 69, 66, 54, 73, 66, 109, 73, 80, 60, 69, 71, 53, 76, 62, 53, 61, 53, 51, 70, 61, 69, 60, 57, 48, 83, 90, 70, 60, 69, 50, 58, 57, 79, 61, 77, 60, 75, 58, 60, 56, 70, 100, 67, 56, 61, 44, 69, 55, 48, 73, 69, 60, 44, 74, 55, 70, 80, 62, 57, 58, 64, 73, 106, 74, 90, 58, 59, 63, 63, 69, 64, 56, 48, 69, 64, 72, 69, 78, 77, 61, 53, 65, 63, 69, 63, 65, 59, 66, 76, 64, 59, 59, 68, 54, 64, 75, 72, 62, 52, 64, 55, 59, 67, 65, 53, 65, 49, 83, 79, 63, 78, 106, 62, 63, 67, 61, 76, 66, 62, 57, 51, 66, 66, 64, 52, 66, 84, 59, 64, 57, 58, 91, 97, 49, 57, 65, 109, 84, 73, 48, 55, 78, 65, 53, 60, 61, 69, 80, 60, 63, 60, 69, 64, 55, 62, 58, 82, 67, 57, 56, 66, 81, 68, 69, 54, 56, 73, 62, 55, 62, 63, 58, 64, 42, 58, 101, 60, 67, 64, 70, 60, 61, 60, 70, 55, 63, 94, 70, 71, 65, 39, 68, 70, 49, 49, 64, 85, 58, 51, 86, 92, 69, 67, 70, 57, 53, 72, 51, 57, 67, 58, 69, 92, 52, 68, 46, 60, 54, 57, 62, 70, 53, 86, 68, 64, 61, 112, 66, 84, 74, 69, 80, 75, 71, 60, 80, 81, 49, 79, 84, 64, 65, 80, 68, 57, 66, 65, 62, 58, 78, 85, 56, 77, 49, 63, 68, 60, 66, 68, 80, 48, 54, 74, 44, 72, 65, 76, 66, 96, 63, 89, 69, 70, 63, 67, 67, 76, 55, 75, 66, 54, 45, 72, 64, 57, 67, 61, 62, 59, 94, 63, 61, 63, 69, 65, 71, 63, 54, 73, 68, 56, 72, 76, 47, 69, 64, 78, 69, 59, 74, 73, 72, 67, 67, 58, 61, 51, 75, 52, 73, 71, 59, 70, 60, 65, 54, 59, 60, 62, 70, 58, 66, 66, 97, 55, 56, 61, 63, 67, 54, 70, 69, 89, 55, 55, 62, 64, 59, 64, 61, 110, 53, 71, 90, 63, 73, 94, 66, 65, 66, 59, 72, 88, 64, 70, 51, 58, 73, 64, 69, 56, 56, 58, 52, 59, 77, 49, 65, 54, 72, 46, 69, 54, 55, 55, 63, 66, 63, 72, 70, 69, 56, 75, 57, 56, 75, 70, 89, 67, 58, 55, 69, 64, 57, 57, 81, 71, 99, 64, 78, 77, 60, 63, 88, 79, 54, 68, 70, 56, 55, 65, 53, 64, 69, 56, 67, 58, 55, 85, 85, 75, 61, 57, 85, 57, 57, 68, 90, 59, 54, 77, 70, 58, 76, 76, 63, 66, 69, 112, 97, 62, 62, 56, 73, 61, 62, 88, 64, 43, 61, 74, 63, 53, 62, 60, 54, 81, 67, 53, 56, 58, 69, 75, 57, 71, 75, 66, 57, 79, 98, 65, 70, 52, 58, 61, 59, 59, 49, 72, 67, 61, 51, 69, 75, 59, 50, 65, 118, 46, 77, 74, 54, 70, 70, 64, 62, 67, 58, 72, 77, 52, 69, 67, 65, 71, 62, 75, 56, 79, 67, 73, 91, 75, 56, 69, 68, 137, 75, 59, 73, 74, 52, 80, 72, 75, 63, 72, 55, 58, 59, 53, 83, 82, 76, 47, 61, 69, 61, 65, 56, 52, 60, 58, 90, 47, 78, 58, 53, 38, 66, 56, 57, 75, 55, 60, 76, 74, 64, 76, 88, 62, 76, 59, 79, 59, 79, 75, 60, 63, 97, 53, 65, 50, 82, 86, 64, 56, 50, 57, 54, 68, 90, 63, 56, 61, 54, 133, 66, 62, 59, 58, 71, 95, 49, 90, 60, 73, 82, 63, 74, 43, 62, 98, 94, 55, 55, 56, 69, 78, 76, 72, 95, 59, 67, 61, 65, 52, 51, 51, 52, 76, 60, 64, 59, 69, 90, 63, 91, 99, 81, 62, 67, 72, 65, 57, 61, 55, 47, 58, 71, 62, 58, 70, 40, 57, 62, 81, 63, 60, 56, 51, 60, 55, 57, 86, 66, 71, 60, 56, 69, 76, 73, 45, 49, 67, 73, 54, 49, 55, 70, 65, 82, 80, 53, 58, 69, 70, 67, 53, 61, 113, 77, 56, 50, 76, 66, 63, 58, 52, 55, 52, 48, 83, 57, 65, 62, 66, 52, 65, 52, 77, 66, 63, 51, 59, 67, 85, 62, 70, 75, 71, 80, 58, 73, 71, 58, 68, 60, 69, 65, 70, 54, 63, 60, 107, 58, 65, 63, 100, 54, 63, 42, 62, 67, 89, 49, 67, 62, 46, 72, 73, 64, 52, 99, 70, 49, 65, 62, 61, 63, 56, 99, 70, 71, 40, 53, 73, 54, 71, 69, 49, 57, 69, 59, 71, 106, 64, 48, 68, 55, 71, 61, 58, 63, 58, 55, 80, 75, 81, 54, 66, 99, 60, 51, 60, 71, 48, 55, 67, 74, 63, 66, 62, 63, 80, 75, 71, 55, 65, 48, 80, 68, 90, 56, 82, 88, 49, 58, 44, 67, 61, 62, 54, 72, 59, 84, 72, 76, 54, 72, 75, 90, 86, 47, 63, 68, 40, 47, 63, 61, 87, 79, 59, 59, 66, 64, 72, 77, 75, 61, 62, 50, 54, 78, 52, 67, 50, 60, 59, 81, 139, 80, 63, 56, 60, 66, 75, 69, 73, 74, 67, 57, 58, 56, 66, 56, 81, 64, 70, 63, 62, 89, 51, 67, 76, 64, 74, 50, 56, 87, 60, 59, 80, 66, 60, 64, 62, 59, 61, 53, 51, 66, 62, 58, 54, 69, 52, 89, 64, 70, 61, 68, 78, 63, 59, 56, 64, 65, 53, 56, 66, 52, 76, 79, 56, 51, 59, 66, 75, 50, 51, 66, 58, 72, 80, 57, 86, 41, 85, 74, 69, 73, 59, 48, 93, 75, 50, 58, 80, 54, 54, 60, 75, 92, 61, 52, 68, 115, 48, 51, 97, 69, 61, 75, 57, 68, 57, 78, 79, 70, 65, 73, 70, 66, 62, 76, 75, 52, 50, 60, 78, 75, 74, 75, 64, 48, 45, 68, 51, 82, 92, 55, 63, 48, 76, 48, 67, 54, 52, 64, 53, 65, 70, 49, 57, 56, 63, 67, 55, 63, 86, 61, 61, 51, 49, 66, 70, 74, 61, 85, 65, 74, 82, 79, 58, 65, 56, 71, 55, 78, 59, 59, 61, 60, 71, 77, 61, 79, 78, 72, 66, 75, 63, 56, 76, 60, 52, 34, 61, 66, 69, 70, 74, 56, 65, 61, 65, 53, 55, 67, 62, 44, 73, 53, 56, 63, 78, 69, 51, 63, 61, 67, 44, 58, 62, 67, 70, 61, 66, 77, 79, 63, 71, 82, 59, 61, 78, 65, 79, 60, 59, 62, 60, 52, 61, 59, 69, 49, 87, 69, 57, 96, 62, 57, 58, 64, 65, 111, 55, 61, 63, 84, 74, 64, 60, 52, 73, 67, 53, 59, 58, 76, 45, 61, 63, 56, 71, 62, 61, 45, 65, 71, 57, 101, 68, 68, 81, 51, 66, 43, 77, 60, 60, 52, 56, 58, 52, 82, 56, 65, 66, 62, 78, 65, 64, 69, 92, 56, 87, 69, 89, 64, 82, 52, 79, 66, 70, 58, 57, 60, 53, 63, 57, 53, 65, 68, 62, 59, 64, 48, 59, 78, 69, 67, 72, 55, 44, 66, 64, 64, 66, 43, 56, 66, 86, 55, 77, 69, 63, 90, 72, 51, 78, 91, 56, 69, 59, 53, 62, 91, 65, 57, 65, 41, 63, 56, 54, 60, 60, 57, 89, 78, 59, 57, 61, 73, 65, 53, 50, 66, 72, 60, 57, 59, 70, 52, 67, 77, 45, 51, 87, 65, 58, 59, 64, 65, 85, 55, 62, 57, 65, 77, 63, 72, 50, 65, 69, 53, 76, 90, 69, 62, 56, 81, 63, 67, 74, 55, 59, 58, 78, 54, 58, 64, 59, 63, 64, 66, 90, 53, 62, 92, 68, 69, 57, 72, 58, 65, 67, 64, 68, 64, 72, 63, 72, 62, 68, 50, 42, 58, 84, 72, 103, 55, 52, 70, 50, 54, 69, 63, 60, 56, 65, 93, 59, 60, 68, 66, 67, 77, 62, 57, 72, 71, 80, 102, 46, 64, 59, 91, 59, 54, 64, 91, 57, 56, 61, 58, 65, 48, 88, 51, 48, 79, 66, 60, 46, 61, 66, 50, 64, 81, 62, 61, 67, 101, 113, 58, 45, 53, 76, 62, 59, 57, 52, 50, 86, 77, 77, 72, 60, 69, 45, 57, 60, 55, 74, 68, 65, 64, 59, 75, 67, 39, 56, 62, 73, 54, 53, 61, 47, 69, 55, 61, 68, 62, 49, 52, 66, 50, 75, 71, 56, 46, 65, 60, 64, 57, 66, 61, 58, 58, 77, 76, 72, 84, 62, 98, 53, 82, 98, 50, 85, 69, 55, 63, 65, 76, 86, 72, 62, 42, 65, 77, 55, 61, 72, 70, 87, 71, 61, 69, 50, 52, 60, 46, 93, 66, 83, 62, 50, 65, 72, 68, 58, 59, 56, 64, 59, 60, 57, 66, 49, 45, 59, 62, 54, 70, 79, 63, 63, 40, 63, 54, 68, 53, 62, 62, 84, 75, 83, 64, 48, 65, 73, 82, 46, 50, 73, 85, 87, 69, 55, 60, 69, 61, 94, 54, 74, 76, 82, 60, 87, 51, 51, 60, 77, 66, 59, 75, 60, 100, 91, 89, 82, 41, 83, 65, 53, 60, 62, 68, 64, 48, 66, 40, 77, 74, 82, 74, 67, 73, 50, 58, 52, 56, 44, 73, 91, 54, 56, 63, 94, 70, 67, 81, 57, 48, 50, 56, 63, 58, 58, 58, 51, 62, 78, 88, 53, 63, 42, 66, 70, 57, 61, 92, 46, 65, 85, 90, 82, 48, 71, 66, 63, 81, 78, 78, 73, 70, 61, 58, 90, 67, 87, 53, 57, 59, 59, 97, 72, 58, 54, 102, 86, 61, 108, 58, 80, 56, 64, 56, 60, 108, 64, 51, 63, 82, 67, 60, 52, 68, 59, 65, 55, 77, 52, 66, 70, 66, 51, 90, 50, 64, 68, 59, 127, 68, 81, 47, 60, 49, 52, 43, 61, 71, 49, 70, 67, 69, 71, 68, 72, 68, 54, 61, 61, 85, 42, 49, 57, 61, 71, 62, 84, 50, 57, 52, 53, 130, 51, 80, 97, 55, 59, 61, 94, 73, 28, 57, 84, 70, 68, 64, 60, 65, 73, 87, 51, 62, 57, 57, 60, 112, 73, 59, 59, 56, 66, 77, 78, 48, 67, 46, 63, 73, 57, 51, 75, 72, 74, 58, 77, 69, 57, 57, 76, 54, 66, 68, 60, 48, 50, 55, 67, 74, 54, 49, 72, 52, 68, 65, 77, 70, 74, 61, 73, 52, 108, 64, 68, 55, 75, 50, 82, 69, 46, 80, 88, 47, 50, 82, 80, 64, 80, 88, 74, 46, 56, 80, 72, 59, 61, 66, 68, 60, 65, 78, 52, 58, 75, 66, 67, 65, 54, 56, 48, 75, 66, 54, 61, 76, 41, 81, 58, 64, 82, 95, 69, 59, 62, 50, 61, 52, 70, 64, 77, 69, 41, 73, 51, 50, 55, 53, 83, 71, 63, 77, 40, 61, 77, 84, 55, 86, 121, 47, 57, 68, 74, 63, 92, 57, 70, 74, 52, 42, 53, 55, 78, 62, 80, 77, 74, 91, 81, 85, 66, 49, 44, 63, 66, 73, 57, 67, 74, 46, 67, 56, 69, 85, 57, 50, 51, 66, 63, 58, 59, 73, 58, 70, 77, 54, 65, 67, 55, 54, 57, 75, 68, 65, 59, 55, 79, 78, 62, 73, 58, 98, 94, 33, 78, 47, 64, 87, 43, 61, 59, 49, 63, 46, 62, 78, 58, 70, 106, 74, 83, 73, 59, 84, 61, 54, 78, 96, 60, 58, 64, 61, 52, 53, 56, 53, 68, 88, 64, 44, 67, 60, 51, 62, 48, 72, 67, 55, 75, 52, 54, 50, 68, 93, 52, 58, 45, 53, 80, 68, 64, 76, 63, 59, 70, 59, 46, 77, 67, 62, 77, 53, 69, 63, 74, 58, 65, 62, 83, 58, 73, 84, 71, 63, 57, 89, 63, 61, 58, 55, 51, 67, 90, 45, 59, 90, 91, 68, 63, 70, 54, 77, 68, 74, 43, 69, 62, 71, 57, 75, 78, 64, 57, 48, 73, 118, 55, 57, 71, 52, 52, 51, 82, 38, 66, 59, 67, 86, 56, 60, 65, 53, 55, 66, 64, 50, 71, 65, 62, 82, 60, 95, 61, 57, 73, 65, 79, 65, 62, 69, 72, 65, 110, 45, 71, 55, 55, 79, 60, 77, 109, 61, 61, 43, 48, 60, 44, 71, 109, 66, 77, 59, 61, 41, 62, 63, 70, 64, 49, 63, 58, 78, 60, 85, 73, 88, 50, 85, 58, 67, 63, 54, 61, 67, 69, 83, 69, 62, 84, 55, 72, 45, 46, 59, 61, 46, 69, 62, 73, 47, 87, 63, 51, 57, 78, 66, 93, 55, 49, 73, 58, 43, 59, 98, 30, 66, 63, 97, 74, 55, 58, 44, 61, 72, 81, 104, 80, 72, 60, 63, 71, 49, 42, 51, 77, 30, 55, 58, 86, 76, 85, 55, 66, 53, 58, 78, 67, 58, 54, 75, 56, 74, 91, 66, 70, 90, 60, 65, 67, 38, 53, 102, 77, 76, 63, 64, 50, 79, 70, 78, 60, 53, 84, 59, 48, 65, 40, 55, 67, 69, 59, 36, 70, 83, 78, 59, 53, 33, 75, 64, 53, 63, 59, 59, 92, 68, 73, 68, 51, 69, 57, 51, 55, 62, 44, 86, 59, 54, 81, 60, 64, 62, 68, 61, 70, 66, 77, 79, 63, 70, 60, 96, 91, 78, 76, 58, 57, 62, 61, 69, 54, 122, 47, 68, 54, 43, 79, 60, 64, 76, 44, 67, 66, 59, 76, 50, 61, 81, 65, 63, 73, 42, 65, 49, 48, 59, 64, 57, 70, 72, 71, 53, 83, 51, 52, 75, 72, 63, 94, 88, 40, 54, 40, 65, 42, 57, 60, 56, 66, 93, 76, 54, 61, 58, 68, 85, 72, 64, 75, 82, 48, 66, 70, 84, 57, 63, 92, 61, 52, 87, 68, 72, 79, 77, 55, 77, 83, 60, 69, 55, 56, 50, 73, 47, 57, 55, 73, 80, 48, 82, 62, 64, 64, 58, 87, 51, 55, 64, 57, 67, 55, 110, 58, 80, 89, 54, 46, 97, 57, 63, 66, 47, 83, 62, 58, 57, 58, 45, 62, 78, 87, 49, 71, 52, 46, 46, 65, 62, 48, 76, 60, 53, 59, 68, 48, 107, 72, 56, 62, 76, 78, 65, 66, 71, 67, 65, 62, 47, 92, 49, 56, 93, 64, 61, 54, 85, 67, 72, 60, 54, 52, 50, 54, 74, 58, 62, 63, 67, 60, 80, 76, 50, 84, 66, 56, 83, 80, 77, 69, 78, 90, 60, 48, 60, 50, 73, 80, 61, 53, 49, 101, 66, 88, 68, 68, 95, 51, 47, 56, 56, 78, 54, 51, 54, 65, 56, 50, 76, 108, 58, 70, 61, 79, 50, 87, 79, 54, 62, 69, 66, 55, 89, 48, 66, 78, 67, 67, 52, 76, 69, 62, 80, 69, 68, 78, 47, 66, 63, 82, 67, 40, 49, 71, 53, 53, 55, 78, 68, 55, 82, 51, 53, 64, 63, 58, 66, 55, 58, 79, 63, 71, 66, 60, 60, 69, 57, 92, 45, 53, 59, 73, 69, 55, 63, 65, 49, 50, 63, 62, 70, 66, 66, 56, 57, 45, 81, 58, 47, 89, 53, 65, 47, 65, 64, 42, 73, 50, 70, 72, 63, 61, 68, 59, 57, 57, 69, 54, 66, 68, 84, 71, 53, 86, 74, 50, 59, 56, 66, 80, 70, 114, 112, 70, 51, 58, 56, 60, 55, 87, 90, 98, 64, 78, 62, 90, 66, 56, 63, 64, 76, 65, 49, 48, 66, 102, 83, 55, 55, 61, 75, 77, 62, 66, 66, 53, 74, 86, 64, 53, 38, 83, 68, 88, 81, 38, 70, 59, 71, 81, 72, 63, 64, 72, 61, 60, 56, 63, 63, 70, 83, 59, 64, 57, 92, 75, 46, 44, 78, 63, 49, 99, 84, 60, 78, 122, 83, 77, 95, 73, 50, 57, 66, 48, 55, 79, 66, 81, 79, 84, 52, 56, 118, 92, 71, 60, 70, 76, 45, 78, 68, 59, 94, 57, 59, 68, 89, 55, 49, 62, 69, 64, 69, 77, 108, 57, 72, 63, 93, 70, 87, 54, 50, 63, 78, 112, 66, 83, 68, 47, 41, 61, 60, 63, 75, 105, 57, 46, 67, 85, 56, 89, 75, 66, 64, 52, 80, 57, 67, 71, 56, 51, 48, 70, 57, 70, 69, 52, 129, 59, 66, 80, 65, 60, 56, 81, 48, 76, 69, 68, 56, 50, 48, 53, 72, 57, 76, 63, 66, 73, 56, 57, 88, 72, 67, 63, 61, 89, 58, 54, 62, 64, 54, 54, 48, 60, 55, 102, 78, 69, 67, 56, 53, 51, 61, 78, 69, 71, 58, 51, 52, 55, 70, 95, 54, 52, 62, 58, 69, 65, 61, 68, 59, 51, 63, 91, 71, 99, 61, 70, 51, 61, 64, 62, 64, 74, 56, 87, 51, 79, 58, 55, 74, 58, 91, 59, 47, 53, 69, 69, 61, 67, 73, 74, 85, 65, 72, 65, 68, 92, 86, 63, 77, 71, 53, 73, 80, 60, 68, 63, 67, 64, 54, 79, 59, 47, 107, 57, 59, 59, 81, 66, 50, 68, 57, 68, 48, 49, 67, 78, 72, 67, 65, 86, 66, 63, 66, 83, 76, 47, 60, 65, 46, 108, 66, 48, 71, 65, 68, 75, 57, 83, 49, 54, 66, 67, 60, 62, 55, 97, 62, 56, 62, 56, 74, 83, 63, 79, 33, 60, 83, 69, 65, 116, 71, 66, 59, 58, 81, 61, 67, 68, 73, 61, 52, 75, 65, 66, 66, 62, 65, 62, 87, 39, 59, 63, 70, 60, 71, 61, 56, 67, 71, 77, 40, 62, 91, 83, 72, 64, 58, 52, 57, 60, 52, 53, 63, 63, 44, 61, 72, 68, 78, 90, 69, 73, 73, 47, 49, 44, 61, 64, 97, 48, 81, 53, 55, 61, 78, 72, 54, 52, 63, 81, 64, 65, 62, 72, 64, 64, 66, 65, 77, 57, 52, 58, 35, 62, 87, 57, 65, 56, 64, 40, 76, 72, 76, 69, 87, 55, 57, 54, 44, 60, 57, 67, 69, 66, 61, 54, 69, 74, 48, 116, 59, 77, 92, 59, 49, 65, 65, 68, 66, 55, 57, 59, 67, 86, 54, 67, 78, 69, 57, 53, 62, 50, 72, 64, 69, 46, 52, 60, 52, 61, 85, 56, 73, 54, 60, 98, 120, 50, 55, 67, 58, 59, 55, 58, 60, 60, 55, 56, 86, 52, 79, 73, 59, 64, 48, 53, 57, 52, 51, 53, 66, 57, 48, 61, 70, 71, 44, 91, 92, 51, 55, 57, 53, 70, 54, 48, 72, 58, 59, 87, 72, 118, 70, 64, 56, 91, 58, 66, 56, 119, 62, 65, 42, 40, 85, 66, 54, 57, 78, 53, 67, 56, 85, 68, 69, 55, 86, 61, 59, 68, 73, 57, 63, 82, 86, 63, 68, 70, 73, 71, 67, 73, 63, 88, 59, 67, 62, 50, 74, 59, 46, 107, 68, 61, 59, 61, 46, 57, 66, 67, 63, 74, 49, 62, 63, 47, 60, 61, 95, 65, 53, 58, 71, 77, 49, 70, 97, 85, 74, 67, 55, 64, 64, 96, 69, 74, 32, 68, 41, 82, 61, 63, 50, 63, 58, 70, 73, 71, 49, 59, 67, 60, 56, 72, 76, 71, 59, 60, 60, 46, 48, 73, 100, 68, 73, 60, 56, 61, 55, 63, 58, 63, 71, 58, 53, 64, 62, 65, 49, 75, 71, 55, 63, 68, 68, 83, 61, 62, 46, 46, 64, 72, 76, 49, 50, 56, 81, 55, 60, 44, 70, 55, 88, 59, 81, 52, 52, 42, 72, 70, 55, 79, 75, 113, 57, 58, 73, 77, 50, 65, 77, 56, 102, 65, 72, 86, 73, 74, 54, 62, 67, 60, 93, 68, 41, 42, 57, 74, 77, 114, 77, 64, 73, 62, 62, 59, 63, 62, 90, 59, 60, 59, 43, 50, 37, 51, 55, 55, 109, 66, 55, 68, 55, 54, 87, 48, 85, 72, 55, 79, 41, 49, 59, 57, 82, 79, 44, 68, 77, 53, 85, 82, 59, 51, 51, 66, 67, 70, 59, 62, 73, 57, 66, 59, 75, 58, 88, 54, 56, 46, 54, 57, 65, 69, 76, 63, 52, 57, 67, 51, 57, 58, 68, 64, 61, 64, 63, 64, 59, 73, 76, 59, 61, 59, 56, 56, 68, 70, 77, 49, 81, 66, 90, 67, 63, 65, 52, 74, 47, 83, 49, 38, 56, 83, 53, 56, 61, 65, 52, 44, 105, 112, 77, 44, 41, 77, 58, 52, 80, 64, 63, 52, 69, 58, 51, 61, 82, 69, 46, 53, 75, 92, 66, 53, 63, 49, 69, 51, 42, 72, 53, 62, 57, 69, 63, 75, 70, 51, 82, 56, 67, 59, 74, 60, 71, 59, 58, 103, 76, 63, 50, 55, 64, 71, 80, 60, 80, 63, 81, 77, 51, 62, 60, 74, 67, 61, 86, 57, 78, 65, 43, 75, 52, 65, 56, 66, 98, 64, 80, 34, 65, 66, 58, 58, 54, 66, 56, 62, 71, 51, 65, 63, 69, 70, 62, 63, 82, 61, 102, 76, 64, 104, 78, 47, 62, 132, 60, 48, 45, 70, 65, 61, 52, 60, 104, 64, 76, 83, 88, 64, 59, 99, 67, 63, 49, 51, 68, 67, 65, 61, 94, 67, 72, 68, 71, 49, 55, 61, 55, 60, 63, 54, 46, 74, 66, 69, 72, 60, 98, 71, 75, 70, 86, 64, 62, 72, 60, 61, 52, 56, 65, 99, 62, 49, 52, 54, 89, 76, 58, 42, 63, 58, 62, 66, 83, 70, 71, 104, 79, 55, 53, 42, 96, 64, 78, 65, 50, 64, 60, 71, 86, 68, 62, 90, 69, 55, 68, 68, 71, 46, 45, 83, 53, 62, 60, 59, 56, 63, 60, 74, 52, 102, 76, 98, 56, 61, 46, 99, 84, 53, 51, 84, 51, 64, 137, 67, 61, 51, 61, 64, 46, 60, 91, 73, 70, 56, 63, 112, 63, 59, 56, 52, 61, 65, 56, 78, 71, 83, 57, 73, 64, 53, 77, 61, 77, 65, 65, 51, 43, 48, 67, 62, 51, 61, 71, 50, 56, 80, 68, 76, 50, 93, 77, 53, 59, 64, 91, 57, 91, 63, 61, 79, 60, 69, 45, 76, 77, 49, 63, 91, 37, 65, 83, 48, 73, 69, 63, 54, 79, 70, 50, 51, 71, 64, 77, 56, 75, 68, 51, 65, 78, 96, 51, 91, 63, 57, 52, 50, 86, 78, 97, 61, 57, 84, 66, 111, 81, 64, 78, 77, 56, 58, 53, 59, 65, 68, 47, 56, 57, 70, 46, 50, 52, 65, 44, 55, 71, 98, 70, 63, 40, 45, 57, 65, 54, 50, 62, 85, 148, 54, 49, 57, 60, 48, 73, 57, 56, 53, 50, 78, 66, 72, 57, 74, 44, 52, 58, 78, 80, 81, 60, 73, 90, 62, 66, 40, 66, 68, 63, 102, 65, 65, 65, 58, 73, 63, 67, 81, 61, 66, 54, 73, 60, 46, 66, 68, 68, 62, 70, 68, 87, 55, 74, 66, 57, 65, 54, 50, 54, 62, 57, 40, 67, 69, 87, 61, 75, 49, 55, 61, 57, 71, 46, 54, 66, 61, 52, 85, 61, 61, 88, 52, 61, 58, 49, 85, 74, 64, 76, 75, 86, 56, 89, 52, 78, 50, 74, 83, 59, 74, 58, 69, 56, 47, 81, 66, 51, 68, 45, 45, 64, 66, 76, 72, 74, 55, 83, 63, 51, 69, 84, 55, 62, 62, 54, 82, 51, 67, 46, 47, 57, 67, 59, 79, 87, 52, 58, 77, 59, 51, 56, 67, 52, 95, 53, 69, 60, 96, 100, 93, 93, 56, 57, 66, 87, 93, 68, 52, 50, 123, 50, 58, 65, 58, 85, 65, 72, 68, 64, 52, 56, 71, 50, 75, 67, 68, 65, 63, 76, 57, 52, 85, 103, 50, 65, 72, 63, 71, 83, 66, 59, 47, 61, 73, 61, 58, 72, 73, 76, 65, 51, 96, 82, 42, 68, 57, 68, 77, 92, 46, 45, 68, 69, 46, 88, 48, 66, 60, 48, 43, 65, 88, 59, 79, 40, 78, 50, 67, 66, 71, 36, 57, 100, 71, 70, 48, 56, 52, 56, 64, 63, 75, 51, 53, 58, 80, 61, 48, 77, 60, 51, 89, 66, 80, 48, 70, 115, 55, 82, 55, 57, 69, 44, 57, 72, 44, 57, 64, 54, 58, 63, 54, 68, 87, 54, 86, 83, 53, 81, 61, 59, 67, 63, 92, 46, 86, 96, 65, 64, 49, 71, 67, 56, 95, 63, 88, 60, 78, 70, 38, 72, 59, 66, 59, 50, 72, 52, 79, 70, 54, 56, 40, 65, 66, 87, 55, 60, 64, 32, 85, 140, 73, 51, 92, 60, 55, 63, 78, 59, 73, 54, 78, 86, 84, 57, 56, 68, 48, 63, 87, 51, 57, 88, 65, 60, 68, 42, 80, 53, 80, 58, 87, 87, 58, 60, 89, 59, 72, 58, 57, 77, 57, 58, 50, 51, 95, 65, 69, 53, 111, 89, 76, 61, 106, 43, 82, 60, 66, 64, 62, 50, 65, 68, 50, 89, 71, 72, 87, 72, 52, 78, 73, 83, 54, 86, 80, 57, 74, 45, 59, 55, 74, 70, 75, 63, 102, 58, 53, 58, 54, 49, 81, 59, 51, 65, 99, 75, 68, 59, 49, 47, 120, 70, 75, 71, 77, 46, 61, 90, 82, 68, 60, 98, 59, 69, 83, 65, 52, 49, 89, 76, 111, 57, 40, 57, 50, 68, 50, 61, 52, 67, 58, 77, 71, 59, 54, 47, 73, 74, 77, 59, 82, 54, 65, 48, 45, 53, 48, 65, 85, 95, 62, 48, 69, 51, 55, 77, 70, 96, 41, 56, 66, 50, 56, 55, 80, 59, 85, 52, 49, 41, 77, 75, 69, 66, 70, 96, 72, 55, 74, 45, 69, 65, 93, 85, 73, 80, 83, 78, 65, 64, 66, 50, 50, 35, 79, 68, 65, 55, 63, 75, 55, 67, 80, 42, 61, 61, 75, 92, 62, 96, 55, 65, 43, 61, 43, 126, 63, 52, 79, 85, 44, 65, 60, 75, 65, 87, 46, 68, 85, 56, 66, 65, 107, 71, 86, 50, 73, 66, 81, 68, 61, 47, 47, 63, 73, 43, 73, 51, 47, 77, 53, 80, 56, 55, 72, 79, 108, 65, 69, 59, 77, 49, 57, 68, 82, 56, 27, 81, 97, 60, 73, 89, 93, 66, 112, 59, 68, 66, 65, 94, 45, 50, 61, 78, 62, 67, 48, 67, 61, 82, 55, 58, 69, 78, 44, 82, 81, 62, 54, 74, 54, 34, 58, 73, 68, 68, 58, 56, 75, 65, 63, 58, 91, 45, 65, 49, 62, 52, 67, 54, 61, 52, 55, 72, 73, 89, 55, 56, 62, 43, 55, 62, 79, 61, 76, 61, 88, 75, 51, 56, 55, 49, 62, 55, 100, 61, 50, 45, 54, 46, 50, 45, 72, 79, 68, 43, 65, 54, 65, 63, 60, 62, 42, 77, 56, 61, 55, 64, 67, 88, 75, 47, 49, 69, 53, 87, 63, 59, 74, 58, 82, 39, 66, 72, 69, 67, 61, 91, 56, 55, 79, 46, 48, 45, 47, 74, 62, 74, 50, 78, 68, 56, 54, 62, 55, 62, 53, 42, 72, 64, 60, 92, 64, 73, 71, 63, 64, 90, 76, 97, 68, 72, 70, 55, 55, 57, 61, 48, 73, 83, 53, 66, 81, 73, 52, 72, 60, 97, 79, 47, 61, 55, 93, 49, 55, 67, 89, 68, 92, 43, 55, 52, 66, 70, 85, 73, 55, 66, 64, 47, 56, 67, 78, 61, 66, 67, 58, 56, 74, 53, 82, 82, 75, 66, 55, 70, 57, 71, 57, 58, 70, 88, 72, 67, 59, 61, 83, 59, 61, 47, 58, 35, 66, 53, 67, 50, 74, 56, 67, 87, 53, 58, 56, 76, 63, 73, 53, 73, 50, 81, 90, 57, 54, 51, 59, 55, 57, 58, 68, 68, 75, 66, 76, 62, 50, 98, 102, 70, 73, 71, 65, 74, 72, 60, 62, 57, 57, 63, 79, 68, 73, 66, 76, 70, 91, 80, 75, 78, 50, 57, 72, 71, 61, 74, 88, 65, 50, 67, 62, 66, 88, 56, 70, 56, 63, 60, 55, 69, 78, 67, 55, 61, 74, 59, 63, 65, 57, 69, 64, 59, 67, 64, 61, 59, 81, 59, 76, 60, 58, 63, 75, 49, 52, 73, 53, 85, 78, 44, 65, 80, 60, 78, 65, 59, 74, 56, 51, 94, 62, 60, 78, 72, 67, 60, 66, 93, 53, 68, 92, 56, 66, 83, 62, 75, 69, 52, 64, 62, 61, 56, 61, 66, 64, 59, 77, 81, 65, 56, 52, 58, 71, 59, 58, 61, 63, 65, 63, 54, 41, 69, 59, 64, 50, 57, 52, 74, 103, 99, 67, 62, 60, 58, 61, 94, 53, 58, 63, 68, 122, 88, 62, 51, 68, 54, 70, 55, 54, 46, 57, 63, 48, 62, 58, 66, 61, 65, 93, 53, 55, 69, 77, 79, 66, 56, 58, 75, 86, 56, 53, 53, 61, 123, 58, 89, 62, 58, 59, 57, 70, 72, 69, 97, 61, 52, 53, 53, 58, 53, 76, 48, 59, 57, 65, 64, 104, 68, 67, 59, 58, 52, 61, 75, 66, 66, 71, 55, 65, 56, 63, 59, 67, 98, 88, 63, 63, 70, 59, 64, 67, 67, 62, 94, 58, 58, 57, 72, 49, 77, 59, 55, 64, 47, 58, 53, 57, 57, 58, 56, 69, 57, 118, 61, 60, 54, 70, 65, 73, 67, 51, 56, 93, 78, 62, 96, 58, 73, 87, 60, 70, 83, 58, 85, 75, 41, 55, 60, 66, 61, 56, 68, 61, 48, 73, 64, 68, 106, 59, 54, 63, 54, 82, 56, 52, 83, 60, 64, 59, 58, 80, 57, 61, 69, 67, 53, 69, 58, 56, 61, 60, 72, 67, 58, 55, 60, 73, 55, 55, 81, 70, 48, 58, 67, 64, 58, 55, 76, 109, 68, 76, 82, 77, 58, 59, 73, 58, 73, 67, 78, 58, 80, 57, 50, 61, 75, 62, 48, 68, 55, 61, 50, 72, 57, 55, 72, 55, 72, 51, 53, 61, 63, 61, 67, 61, 57, 65, 67, 69, 56, 55, 81, 58, 97, 69, 61, 61, 59, 74, 47, 52, 89, 61, 63, 56, 56, 64, 70, 75, 67, 47, 69, 72, 47, 64, 69, 58, 63, 55, 71, 60, 55, 61, 54, 67, 64, 63, 56, 98, 64, 83, 58, 61, 69, 72, 56, 58, 82, 72, 48, 57, 62, 50, 60, 65, 66, 61, 63, 59, 57, 62, 59, 57, 64, 102, 58, 62, 64, 55, 57, 39, 79, 58, 63, 59, 65, 80, 53, 68, 67, 58, 69, 73, 58, 61, 52, 59, 72, 64, 68, 88, 67, 67, 85, 57, 56, 69, 63, 87, 60, 72, 87, 66, 55, 59, 76, 102, 80, 71, 72, 58, 71, 50, 62, 56, 67, 72, 53, 58, 57, 54, 53, 56, 68, 65, 77, 52, 52, 71, 64, 62, 50, 87, 84, 65, 112, 95, 60, 62, 63, 67, 62, 68, 58, 65, 71, 70, 108, 61, 65, 62, 62, 51, 51, 55, 59, 79, 73, 61, 78, 46, 79, 52, 71, 72, 62, 82, 62, 66, 63, 61, 77, 71, 59, 55, 75, 55, 81, 47, 72, 85, 75, 66, 49, 52, 60, 63, 56, 75, 54, 73, 65, 54, 55, 53, 88, 60, 74, 50, 64, 62, 63, 47, 67, 66, 59, 60, 74, 104, 66, 62, 75, 67, 58, 53, 76, 61, 52, 68, 57, 69, 63, 54, 56, 75, 63, 48, 75, 60, 54, 90, 60, 57, 59, 55, 46, 62, 56, 59, 64, 84, 55, 63, 52, 69, 78, 58, 72, 56, 60, 59, 67, 76, 53, 72, 83, 60, 75, 50, 67, 68, 63, 68, 49, 82, 58, 83, 96, 82, 81, 48, 58, 65, 59, 63, 67, 64, 77, 61, 61, 65, 57, 66, 56, 68, 81, 62, 57, 71, 67, 56, 53, 58, 68, 82, 55, 50, 62, 57, 75, 74, 66, 69, 53, 58, 67, 58, 57, 66, 60, 61, 50, 68, 74, 91, 89, 73, 75, 64, 57, 53, 46, 74, 51, 58, 112, 67, 77, 61, 55, 64, 58, 42, 57, 63, 85, 61, 70, 92, 91, 62, 75, 93, 82, 48, 82, 58, 57, 62, 57, 57, 84, 81, 76, 58, 72, 57, 73, 63, 46, 57, 87, 61, 76, 70, 55, 80, 63, 78, 56, 59, 87, 84, 61, 72, 53, 72, 101, 66, 73, 53, 64, 59, 70, 52, 68, 55, 72, 69, 65, 70, 96, 74, 70, 83, 65, 88, 66, 69, 71, 66, 59, 51, 58, 58, 62, 61, 67, 56, 51, 109, 62, 67, 66, 58, 85, 58, 82, 75, 90, 69, 52, 71, 57, 55, 88, 98, 57, 96, 51, 53, 54, 79, 61, 62, 47, 51, 54, 88, 63, 68, 54, 74, 57, 83, 56, 66, 73, 62, 62, 53, 67, 56, 98, 72, 62, 53, 62, 65, 65, 58, 111, 60, 64, 78, 58, 59, 52, 69, 69, 58, 56, 70, 75, 70, 55, 62, 64, 69, 73, 65, 59, 58, 117, 63, 63, 58, 65, 62, 55, 59, 64, 70, 58, 55, 82, 63, 46, 61, 73, 81, 70, 61, 83, 88, 59, 48, 90, 71, 59, 61, 80, 58, 65, 63, 62, 67, 74, 60, 54, 66, 65, 48, 81, 88, 64, 70, 64, 58, 94, 71, 84, 68, 69, 58, 90, 68, 65, 97, 71, 57, 58, 74, 64, 59, 66, 59, 51, 66, 63, 80, 50, 66, 59, 55, 86, 75, 54, 56, 59, 71, 53, 63, 43, 92, 57, 90, 78, 63, 65, 56, 61, 58, 59, 71, 77, 75, 63, 65, 64, 91, 63, 48, 64, 53, 62, 61, 62, 51, 64, 66, 60, 56, 61, 60, 53, 64, 52, 60, 63, 49, 66, 64, 65, 53, 62, 65, 57, 65, 83, 56, 59, 56, 55, 58, 59, 66, 65, 49, 65, 60, 60, 47, 62, 52, 67, 65, 84, 55, 68, 75, 53, 61, 61, 65, 69, 95, 54, 71, 63, 69, 65, 59, 75, 76, 78, 74, 71, 66, 61, 68, 55, 75, 53, 61, 99, 73, 97, 71, 62, 53, 60, 62, 106, 79, 57, 63, 68, 73, 47, 63, 73, 55, 56, 62, 64, 68, 61, 61, 58, 65, 64, 60, 50, 50, 76, 70, 63, 75, 82, 77, 62, 71, 67, 62, 70, 66, 74, 67, 106, 67, 65, 99, 54, 61, 59, 80, 59, 63, 61, 57, 50, 56, 78, 62, 56, 85, 64, 62, 52, 54, 66, 59, 60, 73, 58, 70, 62, 73, 76, 57, 56, 63, 63, 72, 74, 96, 70, 64, 58, 62, 57, 62, 81, 60, 55, 59, 96, 84, 88, 71, 100, 55, 62, 74, 61, 72, 66, 68, 53, 62, 70, 70, 58, 49, 68, 57, 70, 62, 66, 64, 59, 65, 51, 69, 60, 56, 60, 88, 55, 72, 66, 72, 64, 79, 77, 54, 73, 53, 80, 94, 63, 59, 83, 58, 60, 57, 55, 86, 71, 53, 66, 69, 56, 77, 62, 57, 70, 62, 103, 95, 76, 67, 61, 69, 66, 47, 63, 80, 61, 57, 69, 92, 60, 62, 61, 51, 71, 67, 71, 86, 81, 64, 48, 64, 68, 54, 73, 59, 53, 44, 75, 68, 124, 47, 86, 64, 52, 77, 55, 58, 69, 55, 68, 66, 43, 54, 57, 58, 75, 77, 63, 88, 65, 53, 57, 58, 53, 58, 57, 56, 60, 65, 56, 78, 61, 59, 60, 62, 56, 86, 84, 68, 60, 56, 64, 62, 64, 62, 108, 66, 66, 61, 56, 80, 53, 68, 57, 61, 78, 57, 53, 60, 71, 70, 64, 59, 51, 60, 76, 50, 72, 54, 56, 64, 63, 65, 75, 55, 59, 69, 68, 76, 62, 63, 57, 62, 54, 45, 82, 60, 65, 50, 150, 70, 96, 64, 60, 55, 78, 78, 78, 73, 62, 73, 62, 74, 91, 76, 83, 66, 64, 66, 62, 58, 62, 60, 55, 85, 74, 72, 57, 54, 96, 57, 55, 57, 60, 80, 63, 45, 57, 71, 56, 58, 58, 56, 52, 91, 67, 92, 83, 63, 71, 56, 71, 69, 59, 70, 52, 54, 84, 62, 55, 55, 54, 74, 57, 92, 67, 68, 68, 63, 74, 75, 68, 55, 63, 62, 65, 77, 60, 67, 94, 71, 60, 69, 63, 58, 60, 58, 69, 72, 52, 51, 64, 55, 62, 107, 77, 58, 61, 93, 58, 56, 60, 54, 57, 56, 50, 63, 68, 57, 59, 65, 93, 66, 48, 63, 51, 80, 55, 78, 83, 65, 89, 67, 123, 81, 56, 56, 63, 80, 74, 58, 55, 56, 62, 59, 75, 112, 57, 49, 62, 82, 70, 59, 101, 74, 64, 61, 65, 65, 56, 74, 62, 74, 58, 90, 61, 56, 62, 62, 51, 62, 60, 59, 65, 69, 75, 64, 70, 59, 56, 67, 50, 69, 68, 54, 71, 54, 60, 69, 65, 70, 65, 82, 58, 79, 52, 76, 61, 55, 71, 63, 58, 55, 63, 58, 88, 52, 66, 57, 48, 69, 60, 82, 55, 70, 62, 78, 67, 45, 56, 80, 61, 73, 49, 59, 74, 63, 69, 69, 50, 63, 87, 81, 62, 55, 61, 75, 55, 58, 87, 59, 58, 65, 93, 73, 96, 67, 61, 70, 78, 95, 53, 59, 55, 97, 51, 68, 93, 60, 57, 68, 72, 69, 107, 68, 55, 65, 72, 57, 74, 77, 52, 64, 55, 71, 64, 59, 59, 46, 69, 69, 70, 92, 55, 62, 65, 59, 62, 67, 60, 64, 87, 61, 51, 90, 65, 58, 106, 56, 53, 73, 70, 112, 105, 55, 59, 62, 69, 43, 64, 77, 61, 62, 57, 68, 86, 62, 56, 58, 58, 54, 55, 48, 68, 77, 66, 58, 69, 65, 57, 52, 54, 61, 56, 61, 55, 60, 57, 80, 61, 70, 68, 62, 63, 50, 65, 57, 49, 59, 68, 70, 66, 55, 61, 69, 65, 59, 49, 103, 63, 59, 63, 58, 62, 55, 64, 74, 45, 65, 62, 64, 53, 59, 67, 54, 55, 56, 72, 59, 66, 59, 66, 60, 55, 64, 75, 78, 69, 53, 56, 58, 142, 63, 57, 63, 56, 65, 98, 82, 57, 101, 61, 59, 75, 57, 70, 81, 59, 67, 56, 67, 62, 48, 73, 70, 74, 76, 62, 58, 63, 70, 54, 68, 49, 60, 52, 61, 68, 70, 58, 70, 46, 70, 63, 46, 65, 53, 56, 58, 64, 52, 63, 56, 50, 76, 65, 81, 76, 62, 61, 65, 63, 60, 69, 52, 76, 71, 94, 54, 60, 57, 70, 62, 69, 62, 52, 61, 64, 61, 77, 51, 68, 61, 84, 57, 65, 59, 68, 69, 54, 66, 69, 53, 71, 63, 68, 59, 67, 48, 64, 65, 78, 94, 64, 67, 60, 50, 72, 48, 64, 54, 73, 69, 65, 64, 69, 70, 95, 67, 67, 55, 60, 59, 62, 62, 63, 64, 57, 109, 58, 81, 55, 71, 58, 64, 80, 55, 68, 58, 60, 66, 60, 63, 55, 51, 70, 63, 62, 60, 78, 68, 62, 52, 72, 50, 55, 59, 62, 98, 62, 43, 53, 77, 71, 69, 65, 107, 65, 55, 60, 71, 62, 66, 66, 81, 78, 64, 74, 69, 93, 63, 60, 59, 63, 61, 68, 57, 49, 57, 62, 67, 55, 57, 74, 70, 81, 71, 57, 59, 45, 68, 51, 60, 60, 48, 79, 56, 78, 56, 92, 53, 54, 77, 61, 67, 53, 57, 78, 59, 77, 50, 72, 59, 58, 65, 61, 75, 69, 75, 71, 52, 70, 59, 66, 56, 73, 86, 59, 54, 59, 62, 76, 59, 55, 84, 57, 60, 60, 61, 63, 66, 69, 71, 71, 60, 79, 49, 77, 80, 62, 78, 56, 68, 63, 72, 56, 77, 76, 62, 61, 55, 60, 56, 66, 67, 57, 73, 75, 63, 62, 56, 69, 59, 60, 60, 56, 63, 48, 63, 68, 70, 82, 61, 65, 63, 67, 57, 64, 86, 74, 75, 50, 55, 58, 39, 62, 58, 82, 73, 65, 81, 48, 61, 65, 72, 71, 91, 87, 82, 51, 84, 61, 65, 77, 63, 86, 63, 44, 50, 49, 69, 62, 64, 73, 72, 61, 71, 75, 55, 47, 63, 84, 71, 64, 80, 75, 70, 73, 67, 49, 78, 70, 53, 56, 68, 64, 89, 58, 79, 77, 54, 71, 67, 62, 67, 109, 67, 101, 84, 66, 76, 46, 77, 67, 52, 65, 73, 52, 66, 74, 61, 61, 94, 99, 69, 63, 70, 47, 55, 43, 62, 82, 52, 78, 87, 55, 81, 58, 50, 83, 70, 57, 52, 51, 71, 59, 58, 58, 99, 77, 62, 53, 86, 67, 44, 46, 58, 64, 55, 77, 54, 52, 61, 71, 64, 57, 48, 55, 59, 49, 64, 56, 47, 58, 59, 59, 77, 56, 71, 69, 59, 73, 52, 61, 78, 64, 119, 81, 80, 53, 73, 58, 72, 64, 50, 71, 58, 90, 70, 81, 69, 107, 56, 60, 92, 56, 54, 64, 60, 59, 66, 64, 71, 85, 62, 74, 65, 97, 53, 48, 52, 90, 65, 75, 71, 61, 51, 60, 78, 55, 58, 54, 71, 73, 53, 63, 56, 59, 53, 82, 94, 46, 56, 60, 51, 60, 61, 83, 53, 66, 56, 62, 69, 68, 60, 71, 51, 82, 65, 109, 90, 58, 52, 46, 68, 75, 57, 59, 104, 63, 59, 75, 87, 59, 62, 73, 64, 49, 48, 58, 69, 89, 50, 69, 81, 56, 59, 59, 55, 71, 59, 56, 81, 85, 63, 74, 62, 53, 64, 76, 53, 64, 81, 57, 61, 58, 46, 47, 58, 67, 74, 51, 81, 60, 55, 67, 50, 65, 62, 61, 73, 64, 68, 53, 82, 53, 40, 63, 87, 68, 64, 97, 62, 53, 49, 66, 60, 48, 55, 98, 61, 75, 89, 65, 40, 68, 54, 71, 59, 77, 57, 54, 71, 72, 71, 65, 59, 59, 68, 42, 52, 64, 63, 87, 69, 82, 62, 38, 58, 52, 57, 89, 48, 59, 58, 68, 72, 55, 44, 78, 62, 84, 55, 74, 89, 97, 64, 60, 55, 76, 77, 56, 64, 65, 66, 43, 57, 87, 71, 59, 55, 42, 63, 61, 49, 47, 58, 58, 61, 69, 37, 54, 62, 96, 63, 53, 62, 57, 90, 48, 72, 63, 55, 72, 59, 79, 78, 101, 69, 62, 79, 83, 50, 59, 66, 47, 63, 56, 61, 58, 73, 60, 74, 61, 65, 54, 54, 56, 72, 85, 63, 74, 62, 73, 69, 77, 56, 69, 60, 58, 54, 62, 70, 68, 75, 67, 79, 73, 57, 59, 50, 70, 82, 74, 71, 63, 54, 48, 116, 94, 60, 65, 81, 56, 78, 54, 57, 69, 30, 67, 96, 65, 45, 59, 35, 87, 62, 55, 59, 80, 92, 94, 88, 72, 72, 73, 68, 114, 86, 55, 78, 65, 85, 55, 49, 50, 71, 68, 61, 57, 136, 69, 57, 65, 82, 56, 66, 71, 69, 62, 80, 44, 65, 60, 69, 65, 56, 67, 84, 59, 56, 83, 65, 46, 54, 69, 65, 50, 65, 66, 64, 75, 49, 61, 54, 63, 70, 60, 49, 76, 71, 59, 76, 82, 70, 45, 78, 52, 56, 71, 73, 66, 49, 55, 68, 74, 79, 75, 64, 71, 60, 61, 52, 42, 66, 66, 51, 60, 48, 52, 73, 74, 53, 74, 67, 65, 77, 88, 52, 57, 48, 73, 64, 62, 53, 83, 69, 62, 64, 66, 70, 61, 67, 62, 59, 65, 45, 104, 58, 87, 49, 85, 84, 65, 82, 67, 53, 70, 82, 59, 67, 74, 61, 59, 70, 55, 55, 97, 63, 54, 55, 52, 52, 89, 50, 59, 53, 71, 58, 91, 56, 45, 63, 72, 48, 94, 64, 70, 69, 48, 58, 63, 54, 67, 83, 76, 61, 52, 89, 60, 80, 113, 50, 66, 71, 71, 127, 67, 76, 60, 53, 81, 69, 57, 84, 72, 57, 64, 74, 66, 84, 58, 80, 51, 56, 54, 95, 65, 65, 55, 50, 43, 43, 56, 48, 60, 59, 40, 57, 58, 63, 71, 88, 88, 94, 66, 56, 65, 77, 66, 72, 66, 56, 75, 56, 66, 71, 103, 56, 67, 81, 94, 78, 80, 71, 62, 64, 78, 73, 60, 87, 67, 62, 52, 60, 56, 72, 94, 82, 59, 62, 58, 77, 61, 64, 61, 58, 56, 63, 56, 85, 65, 81, 50, 67, 145, 59, 61, 68, 28, 63, 74, 63, 61, 86, 42, 60, 68, 69, 73, 64, 54, 74, 57, 57, 60, 67, 58, 52, 62, 70, 52, 61, 70, 67, 60, 73, 74, 59, 63, 62, 58, 62, 69, 46, 56, 78, 65, 78, 58, 52, 88, 83, 63, 53, 68, 60, 71, 62, 69, 53, 63, 58, 53, 56, 62, 60, 47, 58, 59, 56, 86, 57, 83, 55, 80, 52, 71, 49, 59, 75, 54, 68, 80, 71, 63, 63, 77, 63, 59, 53, 67, 53, 56, 78, 48, 102, 74, 61, 67, 66, 67, 75, 54, 68, 67, 84, 51, 51, 57, 44, 69, 60, 59, 64, 56, 50, 64, 53, 67, 62, 65, 61, 65, 56, 53, 85, 60, 69, 58, 63, 63, 111, 65, 67, 57, 79, 54, 69, 51, 70, 57, 61, 63, 54, 84, 70, 61, 54, 52, 59, 52, 48, 71, 67, 81, 69, 61, 53, 64, 53, 75, 78, 81, 72, 59, 65, 56, 68, 52, 124, 59, 65, 57, 68, 64, 59, 70, 74, 69, 73, 50, 67, 98, 80, 67, 80, 86, 75, 67, 53, 57, 91, 70, 62, 64, 65, 65, 87, 75, 59, 62, 51, 54, 77, 45, 69, 42, 61, 57, 67, 58, 65, 94, 57, 64, 75, 52, 61, 78, 66, 82, 48, 46, 77, 73, 59, 66, 61, 63, 43, 68, 59, 80, 61, 67, 92, 69, 67, 51, 83, 57, 63, 57, 64, 72, 81, 64, 60, 57, 38, 61, 66, 47, 50, 68, 85, 66, 53, 99, 87, 52, 54, 67, 55, 68, 75, 65, 86, 72, 55, 69, 68, 58, 62, 76, 65, 48, 56, 65, 46, 102, 75, 52, 61, 71, 51, 58, 75, 54, 76, 61, 59, 58, 68, 68, 53, 66, 76, 55, 64, 48, 65, 61, 67, 51, 42, 55, 64, 89, 60, 86, 76, 73, 69, 72, 80, 58, 83, 61, 61, 62, 58, 65, 71, 80, 63, 60, 44, 74, 51, 64, 65, 63, 61, 75, 65, 54, 74, 56, 51, 69, 59, 55, 62, 83, 79, 66, 65, 65, 49, 94, 70, 74, 68, 62, 53, 63, 57, 76, 49, 59, 58, 75, 67, 67, 71, 55, 63, 118, 77, 86, 88, 78, 52, 66, 45, 71, 66, 63, 72, 61, 62, 75, 66, 69, 59, 65, 73, 59, 59, 55, 66, 70, 70, 83, 57, 60, 64, 80, 62, 55, 67, 75, 82, 67, 61, 53, 75, 63, 73, 68, 79, 74, 62, 63, 49, 57, 68, 74, 59, 49, 67, 53, 57, 58, 64, 68, 64, 69, 70, 64, 64, 86, 63, 59, 57, 80, 49, 64, 62, 80, 74, 56, 62, 63, 54, 63, 57, 70, 106, 69, 66, 56, 52, 77, 59, 67, 62, 49, 56, 99, 76, 58, 73, 56, 74, 72, 72, 66, 59, 78, 67, 60, 60, 66, 62, 72, 52, 84, 47, 85, 60, 60, 63, 87, 66, 82, 61, 55, 64, 66, 60, 69, 71, 56, 67, 74, 64, 61, 67, 53, 49, 77, 65, 63, 61, 66, 55, 47, 78, 63, 67, 60, 75, 55, 64, 60, 51, 56, 56, 59, 50, 97, 62, 79, 45, 57, 69, 70, 65, 64, 104, 75, 63, 69, 62, 58, 71, 59, 53, 76, 74, 57, 68, 112, 64, 53, 72, 70, 57, 56, 53, 71, 64, 77, 90, 96, 65, 77, 64, 52, 58, 92, 59, 59, 67, 59, 76, 80, 54, 80, 63, 79, 90, 77, 88, 57, 57, 67, 57, 56, 50, 69, 70, 70, 58, 77, 55, 70, 63, 66, 78, 67, 43, 67, 62, 52, 61, 72, 51, 75, 59, 97, 54, 68, 73, 66, 51, 88, 51, 74, 70, 76, 44, 66, 53, 72, 74, 58, 81, 60, 56, 50, 50, 57, 60, 71, 58, 67, 55, 73, 59, 52, 68, 111, 63, 67, 63, 62, 77, 62, 63, 87, 55, 56, 63, 87, 59, 84, 57, 61, 62, 89, 71, 66, 62, 84, 76, 65, 51, 96, 56, 76, 60, 67, 83, 81, 66, 69, 53, 69, 83, 76, 80, 57, 56, 116, 64, 57, 52, 51, 68, 60, 59, 66, 55, 58, 55, 80, 63, 85, 67, 78, 91, 95, 62, 74, 54, 60, 58, 59, 54, 58, 84, 62, 67, 57, 50, 68, 47, 59, 77, 55, 72, 49, 58, 71, 74, 76, 77, 54, 60, 68, 68, 59, 85, 80, 77, 66, 73, 49, 58, 55, 62, 77, 56, 67, 64, 57, 54, 55, 104, 83, 75, 52, 66, 75, 68, 61, 68, 53, 58, 42, 79, 83, 64, 68, 44, 84, 74, 58, 60, 60, 90, 53, 90, 59, 56, 66, 65, 124, 68, 65, 70, 67, 90, 54, 54, 57, 68, 51, 59, 54, 124, 69, 61, 73, 69, 72, 72, 79, 57, 58, 83, 68, 54, 58, 64, 65, 63, 72, 56, 58, 75, 77, 56, 61, 64, 48, 77, 66, 57, 49, 60, 76, 59, 69, 68, 86, 67, 62, 50, 63, 74, 58, 57, 74, 59, 90, 61, 65, 41, 64, 65, 58, 44, 62, 94, 71, 65, 85, 74, 59, 55, 54, 71, 54, 49, 69, 70, 61, 63, 43, 43, 51, 66, 59, 61, 73, 93, 80, 52, 54, 74, 84, 58, 65, 58, 74, 71, 61, 61, 57, 71, 78, 47, 63, 59, 79, 57, 102, 47, 96, 58, 64, 107, 84, 70, 67, 58, 79, 64, 65, 52, 67, 52, 51, 61, 58, 71, 118, 57, 57, 65, 73, 60, 110, 69, 63, 69, 69, 59, 108, 63, 55, 49, 59, 67, 70, 74, 67, 70, 60, 63, 63, 79, 70, 79, 91, 58, 57, 68, 82, 56, 127, 68, 52, 58, 83, 113, 64, 84, 59, 54, 79, 66, 56, 59, 69, 61, 60, 73, 84, 55, 67, 63, 59, 75, 65, 79, 50, 66, 53, 55, 64, 79, 48, 72, 53, 62, 66, 56, 62, 56, 79, 84, 56, 116, 65, 61, 36, 55, 78, 48, 63, 61, 62, 56, 66, 78, 68, 43, 58, 68, 66, 56, 88, 48, 72, 59, 64, 56, 77, 54, 73, 69, 56, 54, 56, 72, 58, 59, 57, 83, 84, 63, 61, 55, 54, 58, 59, 71, 56, 61, 61, 67, 70, 92, 119, 105, 56, 47, 63, 60, 67, 63, 65, 67, 81, 65, 57, 61, 50, 62, 66, 53, 58, 68, 59, 63, 57, 50, 51, 59, 59, 48, 70, 67, 53, 73, 64, 67, 60, 70, 50, 66, 72, 65, 40, 75, 46, 63, 66, 55, 67, 48, 69, 59, 76, 63, 61, 65, 69, 62, 72, 65, 60, 72, 61, 50, 68, 76, 59, 55, 76, 61, 74, 56, 73, 56, 62, 54, 61, 66, 52, 66, 71, 63, 60, 58, 91, 60, 70, 59, 51, 63, 58, 80, 60, 106, 55, 62, 68, 55, 48, 81, 62, 85, 71, 62, 51, 59, 59, 72, 69, 52, 72, 59, 75, 59, 76, 59, 76, 74, 59, 54, 56, 70, 62, 72, 52, 61, 60, 63, 51, 99, 57, 67, 50, 69, 58, 60, 70, 69, 68, 49, 55, 54, 86, 73, 66, 73, 48, 55, 62, 62, 42, 69, 59, 63, 55, 62, 78, 65, 85, 84, 57, 58, 89, 51, 55, 60, 78, 120, 62, 55, 67, 64, 66, 52, 58, 80, 66, 60, 52, 69, 88, 57, 59, 74, 71, 62, 61, 55, 73, 57, 51, 37, 66, 61, 90, 54, 60, 63, 57, 68, 61, 51, 70, 60, 61, 65, 59, 84, 63, 56, 110, 77, 77, 65, 55, 64, 68, 49, 73, 68, 74, 101, 76, 64, 87, 68, 57, 74, 53, 62, 73, 68, 52, 67, 63, 59, 53, 66, 55, 53, 48, 61, 78, 70, 58, 52, 54, 56, 61, 67, 66, 54, 51, 67, 74, 65, 70, 75, 46, 54, 65, 64, 74, 60, 45, 57, 76, 87, 55, 67, 65, 54, 61, 57, 67, 68, 76, 53, 107, 70, 61, 59, 75, 60, 57, 68, 55, 66, 63, 59, 84, 78, 57, 51, 65, 50, 47, 56, 57, 48, 60, 44, 59, 57, 51, 57, 50, 80, 48, 63, 68, 72, 56, 58, 67, 58, 63, 56, 66, 60, 60, 81, 52, 82, 56, 71, 50, 65, 58, 62, 56, 79, 51, 57, 66, 73, 71, 66, 76, 67, 77, 64, 76, 64, 92, 68, 62, 64, 69, 54, 50, 66, 59, 51, 66, 66, 55, 88, 65, 58, 61, 69, 59, 71, 68, 78, 96, 67, 58, 77, 62, 61, 66, 59, 102, 69, 57, 83, 55, 71, 53, 72, 67, 83, 50, 56, 69, 55, 55, 65, 71, 53, 74, 51, 67, 54, 71, 65, 61, 65, 101, 64, 68, 70, 57, 50, 68, 65, 95, 51, 78, 57, 71, 67, 54, 60, 70, 70, 59, 61, 53, 72, 55, 63, 52, 55, 58, 65, 60, 60, 62, 73, 64, 71, 56, 78, 62, 61, 66, 60, 67, 64, 51, 54, 76, 55, 54, 103, 60, 66, 66, 64, 61, 61, 65, 63, 66, 69, 65, 76, 87, 63, 118, 70, 62, 61, 64, 59, 63, 62, 51, 54, 64, 54, 59, 71, 69, 78, 77, 61, 67, 57, 65, 49, 49, 69, 61, 52, 60, 56, 73, 68, 57, 73, 68, 63, 58, 79, 52, 65, 75, 79, 59, 61, 53, 75, 53, 61, 54, 73, 68, 51, 66, 56, 56, 71, 70, 59, 73, 63, 93, 120, 57, 63, 66, 73, 61, 65, 49, 91, 78, 55, 61, 90, 48, 71, 61, 83, 62, 63, 60, 59, 103, 71, 51, 78, 68, 62, 78, 55, 59, 45, 49, 75, 113, 72, 59, 61, 71, 64, 70, 64, 63, 59, 58, 64, 54, 65, 56, 63, 76, 58, 58, 86, 63, 63, 65, 47, 72, 57, 50, 61, 61, 55, 69, 63, 60, 46, 53, 62, 55, 60, 82, 57, 59, 58, 64, 61, 54, 60, 99, 54, 58, 68, 63, 65, 102, 63, 59, 73, 71, 53, 66, 55, 54, 57, 54, 63, 61, 62, 78, 80, 71, 55, 70, 53, 63, 67, 68, 60, 70, 71, 65, 78, 74, 53, 47, 66, 61, 45, 83, 44, 65, 55, 107, 67, 73, 57, 55, 60, 79, 39, 66, 79, 71, 47, 63, 62, 91, 59, 76, 77, 59, 68, 56, 61, 56, 50, 58, 61, 87, 57, 51, 61, 104, 60, 60, 54, 54, 92, 60, 60, 63, 59, 64, 51, 63, 58, 47, 73, 78, 85, 68, 49, 74, 53, 50, 60, 52, 53, 72, 60, 55, 95, 61, 65, 58, 72, 47, 72, 80, 62, 74, 56, 70, 54, 82, 57, 77, 59, 70, 56, 55, 65, 83, 69, 53, 61, 73, 84, 56, 57, 61, 59, 74, 50, 62, 59, 60, 89, 81, 74, 62, 69, 64, 65, 81, 57, 66, 64, 69, 84, 66, 58, 64, 82, 107, 71, 83, 63, 63, 92, 43, 65, 69, 63, 66, 65, 104, 75, 53, 60, 63, 94, 64, 56, 62, 68, 57, 51, 83, 135, 67, 60, 48, 61, 80, 44, 74, 75, 52, 82, 50, 62, 63, 68, 53, 66, 61, 58, 75, 83, 63, 64, 66, 63, 67, 45, 59, 66, 74, 48, 58, 60, 59, 61, 91, 96, 68, 46, 62, 50, 55, 67, 64, 68, 75, 100, 71, 67, 73, 57, 65, 51, 65, 75, 67, 65, 54, 56, 91, 71, 79, 74, 68, 77, 72, 56, 66, 52, 60, 65, 56, 86, 67, 72, 72, 50, 78, 53, 74, 58, 88, 73, 58, 67, 96, 91, 61, 54, 57, 67, 88, 59, 77, 66, 66, 68, 108, 64, 96, 57, 79, 74, 83, 85, 57, 52, 83, 57, 53, 72, 72, 51, 86, 59, 77, 57, 96, 51, 55, 54, 47, 63, 83, 62, 76, 56, 57, 82, 63, 64, 52, 63, 78, 58, 75, 81, 61, 62, 54, 58, 63, 58, 85, 46, 87, 72, 58, 53, 69, 51, 117, 52, 62, 68, 67, 107, 58, 82, 56, 66, 59, 58, 59, 54, 61, 56, 54, 61, 82, 85, 81, 79, 61, 68, 59, 43, 57, 69, 60, 61, 55, 59, 70, 76, 50, 70, 53, 67, 65, 54, 57, 94, 48, 38, 60, 63, 102, 40, 65, 65, 49, 85, 74, 55, 57, 68, 81, 63, 51, 51, 60, 108, 101, 62, 64, 53, 71, 49, 74, 67, 84, 57, 83, 55, 58, 72, 78, 62, 54, 57, 77, 75, 63, 72, 69, 61, 69, 58, 70, 58, 67, 39, 68, 81, 124, 79, 63, 51, 53, 68, 63, 79, 59, 74, 76, 74, 73, 69, 51, 82, 62, 65, 59, 55, 57, 64, 55, 68, 69, 67, 67, 84, 75, 65, 53, 67, 76, 58, 52, 84, 71, 63, 57, 49, 68, 57, 60, 70, 81, 56, 61, 56, 70, 56, 59, 51, 90, 64, 52, 65, 77, 68, 57, 80, 75, 62, 65, 57, 68, 77, 87, 90, 61, 58, 77, 58, 51, 61, 64, 57, 66, 63, 74, 56, 76, 61, 79, 69, 54, 56, 72, 53, 68, 93, 56, 65, 57, 65, 59, 54, 76, 74, 59, 71, 66, 88, 52, 62, 62, 69, 67, 66, 57, 67, 50, 57, 64, 65, 64, 54, 79, 59, 58, 65, 53, 86, 66, 65, 59, 69, 55, 107, 84, 77, 53, 79, 62, 59, 59, 59, 68, 61, 62, 75, 92, 67, 50, 44, 51, 64, 51, 58, 95, 52, 44, 76, 59, 66, 58, 52, 54, 82, 96, 82, 91, 65, 52, 66, 54, 112, 62, 54, 59, 60, 55, 72, 56, 78, 59, 68, 55, 77, 106, 55, 55, 72, 59, 70, 73, 62, 66, 71, 59, 57, 55, 75, 72, 55, 84, 74, 63, 53, 58, 48, 52, 53, 67, 59, 88, 62, 78, 63, 91, 49, 71, 73, 41, 57, 53, 68, 87, 55, 49, 66, 78, 62, 78, 67, 58, 52, 66, 63, 66, 78, 67, 64, 86, 80, 59, 100, 67, 62, 59, 53, 59, 45, 53, 55, 66, 73, 69, 63, 57, 68, 56, 88, 65, 68, 82, 63, 67, 89, 42, 69, 61, 61, 70, 66, 70, 81, 71, 70, 68, 67, 72, 66, 53, 54, 64, 67, 75, 60, 64, 52, 73, 53, 67, 55, 70, 70, 61, 52, 62, 57, 59, 64, 59, 53, 68, 64, 66, 71, 51, 72, 63, 63, 50, 45, 56, 72, 50, 51, 64, 67, 70, 55, 67, 46, 54, 89, 86, 59, 73, 74, 64, 59, 65, 74, 82, 77, 61, 68, 65, 63, 76, 63, 56, 70, 65, 99, 74, 76, 66, 51, 67, 49, 91, 92, 62, 59, 86, 69, 56, 62, 45, 66, 70, 51, 67, 75, 53, 58, 61, 51, 70, 60, 64, 53, 84, 57, 78, 58, 59, 54, 52, 68, 76, 65, 63, 57, 62, 66, 78, 68, 60, 73, 89, 50, 67, 57, 66, 60, 61, 64, 85, 60, 67, 75, 47, 73, 53, 66, 59, 54, 77, 56, 72, 67, 71, 58, 65, 63, 72, 65, 82, 71, 55, 79, 66, 58, 55, 62, 100, 61, 53, 70, 56, 62, 58, 50, 60, 48, 62, 84, 64, 107, 56, 66, 60, 61, 60, 58, 72, 72, 60, 70, 72, 56, 53, 135, 75, 78, 60, 69, 77, 66, 58, 70, 63, 64, 94, 60, 105, 75, 80, 52, 55, 57, 71, 61, 55, 52, 64, 53, 77, 57, 67, 67, 80, 60, 73, 62, 59, 62, 72, 56, 42, 53, 50, 66, 68, 58, 61, 65, 64, 84, 62, 67, 72, 78, 68, 65, 87, 63, 82, 71, 54, 60, 76, 68, 73, 83, 64, 62, 79, 66, 68, 71, 72, 60, 61, 69, 72, 55, 65, 46, 66, 71, 69, 61, 55, 90, 68, 62, 68, 74, 65, 62, 54, 64, 63, 50, 61, 62, 109, 59, 66, 80, 59, 59, 71, 75, 63, 77, 47, 61, 67, 59, 70, 81, 62, 70, 69, 62, 70, 107, 57, 79, 63, 48, 73, 57, 68, 58, 54, 64, 66, 61, 68, 49, 64, 98, 56, 80, 65, 49, 58, 38, 61, 55, 63, 96, 57, 63, 49, 54, 60, 58, 56, 46, 55, 68, 56, 67, 57, 64, 56, 77, 56, 65, 65, 62, 57, 85, 88, 74, 66, 61, 58, 48, 57, 63, 58, 48, 63, 61, 50, 75, 54, 65, 64, 85, 50, 67, 120, 60, 60, 62, 80, 55, 50, 57, 68, 62, 66, 77, 64, 64, 69, 55, 71, 53, 77, 69, 50, 92, 72, 85, 87, 69, 67, 85, 58, 62, 66, 83, 61, 71, 57, 58, 63, 67, 62, 65, 56, 65, 62, 96, 60, 52, 58, 93, 60, 73, 71, 60, 52, 87, 61, 66, 62, 86, 67, 76, 49, 102, 65, 65, 59, 62, 54, 59, 61, 77, 79, 82, 65, 55, 71, 59, 92, 85, 82, 69, 69, 58, 70, 58, 132, 75, 79, 61, 59, 56, 54, 59, 67, 64, 79, 46, 73, 58, 75, 52, 72, 58, 53, 74, 61, 91, 51, 70, 64, 69, 62, 55, 57, 83, 36, 61, 64, 52, 41, 118, 75, 54, 68, 85, 64, 70, 80, 68, 72, 79, 53, 53, 70, 61, 84, 56, 92, 61, 67, 78, 52, 89, 65, 65, 87, 54, 69, 64, 49, 85, 56, 45, 58, 65, 46, 63, 67, 80, 67, 55, 76, 80, 53, 64, 71, 69, 78, 63, 64, 54, 58, 59, 62, 73, 74, 59, 68, 58, 82, 57, 69, 72, 68, 57, 88, 48, 65, 63, 68, 75, 62, 59, 55, 83, 55, 72, 57, 75, 66, 58, 52, 57, 58, 67, 89, 70, 57, 66, 83, 90, 58, 75, 55, 60, 86, 68, 54, 75, 91, 46, 58, 81, 83, 63, 74, 49, 109, 50, 57, 66, 60, 60, 56, 67, 54, 71, 68, 57, 39, 56, 72, 73, 53, 54, 75, 59, 88, 52, 71, 61, 57, 84, 50, 84, 57, 73, 72, 56, 55, 55, 62, 70, 61, 49, 46, 58, 79, 74, 59, 60, 70, 59, 99, 65, 61, 60, 61, 67, 61, 82, 68, 57, 60, 66, 73, 49, 77, 46, 64, 74, 59, 70, 65, 78, 65, 63, 65, 57, 72, 72, 64, 96, 53, 54, 72, 125, 113, 63, 48, 68, 86, 62, 71, 60, 62, 69, 81, 102, 66, 62, 78, 76, 70, 69, 69, 59, 93, 72, 50, 78, 47, 71, 62, 72, 53, 72, 68, 60, 68, 71, 69, 98, 62, 93, 46, 65, 95, 57, 44, 76, 56, 62, 53, 53, 58, 58, 90, 58, 83, 53, 81, 64, 58, 64, 68, 53, 67, 59, 89, 66, 63, 65, 52, 74, 58, 55, 58, 55, 56, 72, 54, 53, 56, 51, 66, 69, 49, 60, 74, 70, 64, 55, 77, 57, 133, 66, 57, 58, 55, 50, 52, 57, 75, 63, 51, 57, 64, 73, 65, 60, 46, 82, 43, 56, 53, 71, 46, 57, 66, 70, 63, 75, 62, 57, 63, 42, 66, 76, 103, 59, 76, 65, 62, 78, 65, 66, 55, 71, 66, 64, 96, 77, 63, 59, 73, 74, 49, 84, 44, 48, 59, 60, 64, 53, 69, 53, 58, 66, 91, 63, 119, 107, 64, 57, 67, 49, 67, 101, 92, 62, 70, 61, 70, 61, 51, 67, 100, 57, 69, 53, 54, 61, 60, 67, 68, 108, 73, 93, 61, 64, 43, 41, 49, 45, 61, 70, 47, 57, 64, 56, 70, 63, 50, 54, 78, 47, 60, 64, 67, 49, 79, 83, 68, 72, 56, 73, 92, 63, 49, 60, 55, 57, 66, 74, 51, 57, 59, 60, 66, 50, 66, 71, 61, 52, 106, 53, 65, 57, 84, 58, 46, 60, 59, 77, 67, 72, 54, 58, 64, 66, 45, 88, 36, 66, 53, 58, 67, 67, 75, 144, 65, 60, 69, 62, 66, 42, 65, 60, 72, 55, 72, 49, 95, 64, 80, 65, 62, 71, 50, 66, 62, 62, 72, 55, 57, 57, 62, 50, 59, 53, 63, 55, 51, 79, 61, 57, 72, 52, 77, 72, 83, 70, 54, 105, 53, 60, 49, 53, 79, 48, 79, 54, 57, 60, 70, 57, 83, 57, 75, 69, 59, 61, 52, 59, 60, 57, 45, 69, 62, 72, 57, 59, 73, 69, 70, 66, 57, 64, 56, 79, 92, 57, 53, 98, 76, 60, 71, 60, 70, 82, 102, 72, 76, 79, 58, 61, 59, 50, 91, 85, 64, 61, 62, 56, 52, 88, 75, 62, 116, 54, 60, 67, 67, 63, 50, 59, 63, 59, 76, 60, 78, 70, 78, 66, 54, 62, 74, 60, 56, 54, 60, 76, 66, 122, 65, 71, 61, 55, 51, 72, 98, 60, 68, 63, 80, 70, 74, 62, 60, 63, 70, 66, 66, 50, 61, 69, 59, 73, 78, 51, 60, 46, 55, 65, 65, 90, 62, 65, 49, 95, 96, 43, 65, 61, 70, 54, 76, 55, 76, 85, 68, 67, 58, 74, 58, 53, 62, 48, 67, 61, 64, 68, 74, 125, 82, 61, 59, 68, 71, 95, 81, 66, 58, 54, 58, 75, 68, 44, 54, 77, 71, 49, 62, 70, 56, 49, 65, 58, 60, 53, 47, 68, 61, 55, 64, 59, 54, 53, 52, 74, 53, 70, 85, 48, 59, 78, 71, 54, 77, 64, 68, 89, 74, 58, 57, 67, 69, 59, 57, 68, 61, 57, 69, 59, 53, 68, 69, 61, 71, 78, 51, 55, 64, 60, 58, 83, 63, 74, 55, 58, 60, 73, 78, 71, 52, 99, 61, 65, 48, 51, 54, 54, 57, 78, 68, 58, 71, 43, 68, 60, 56, 54, 79, 71, 109, 66, 62, 63, 61, 64, 70, 63, 60, 57, 61, 70, 70, 56, 64, 66, 48, 85, 47, 50, 48, 63, 71, 58, 62, 93, 49, 47, 64, 51, 65, 53, 61, 71, 87, 52, 68, 61, 79, 57, 52, 70, 63, 66, 76, 65, 73, 50, 57, 92, 77, 88, 62, 54, 66, 86, 62, 53, 82, 57, 53, 51, 65, 85, 54, 48, 55, 53, 68, 77, 55, 84, 62, 80, 78, 74, 56, 65, 70, 55, 86, 62, 55, 77, 69, 63, 69, 65, 39, 69, 71, 75, 52, 63, 90, 61, 71, 61, 64, 65, 61, 69, 73, 61, 55, 54, 59, 48, 65, 42, 64, 71, 64, 68, 55, 49, 56, 58, 43, 81, 63, 70, 50, 74, 54, 49, 63, 111, 68, 77, 60, 90, 76, 63, 54, 60, 52, 66, 87, 71, 58, 99, 93, 83, 79, 75, 60, 75, 57, 63, 44, 51, 62, 55, 64, 65, 57, 54, 60, 61, 76, 55, 78, 59, 56, 63, 61, 77, 58, 53, 93, 69, 65, 51, 78, 76, 67, 59, 59, 76, 66, 55, 109, 62, 63, 65, 59, 78, 61, 70, 50, 81, 65, 55, 62, 69, 64, 68, 53, 64, 65, 75, 62, 57, 62, 64, 49, 66, 72, 72, 60, 58, 75, 93, 70, 82, 66, 57, 62, 95, 52, 64, 53, 60, 68, 61, 77, 48, 71, 51, 86, 61, 58, 64, 61, 83, 55, 57, 68, 109, 55, 53, 61, 53, 97, 63, 56, 53, 80, 70, 63, 58, 41, 84, 74, 52, 51, 82, 85, 66, 84, 53, 78, 43, 57, 56, 52, 50, 68, 59, 71, 62, 86, 61, 71, 56, 49, 111, 82, 71, 63, 58, 48, 72, 64, 57, 72, 68, 77, 79, 60, 46, 64, 83, 47, 46, 66, 57, 54, 75, 76, 56, 46, 66, 61, 57, 77, 145, 69, 51, 51, 91, 69, 65, 62, 58, 57, 66, 67, 103, 65, 68, 45, 68, 65, 73, 62, 47, 55, 90, 72, 99, 64, 82, 55, 81, 81, 76, 69, 87, 55, 59, 68, 49, 68, 63, 74, 72, 119, 48, 65, 53, 85, 63, 68, 90, 66, 58, 72, 73, 63, 58, 47, 86, 65, 68, 64, 67, 66, 59, 60, 72, 48, 80, 64, 61, 58, 80, 61, 61, 58, 61, 51, 54, 60, 72, 68, 61, 51, 84, 53, 71, 49, 70, 58, 66, 67, 60, 60, 63, 83, 51, 60, 70, 87, 71, 45, 58, 45, 95, 50, 43, 59, 50, 60, 74, 118, 50, 125, 54, 62, 62, 58, 62, 65, 87, 96, 56, 57, 61, 44, 68, 87, 49, 65, 51, 98, 66, 66, 60, 60, 62, 55, 55, 56, 50, 84, 75, 102, 61, 93, 69, 69, 83, 69, 57, 62, 98, 51, 63, 60, 69, 73, 50, 72, 69, 61, 67, 89, 66, 90, 71, 50, 85, 65, 87, 63, 60, 62, 68, 75, 53, 59, 67, 66, 77, 60, 69, 80, 64, 46, 73, 41, 70, 59, 69, 42, 62, 49, 81, 57, 50, 53, 63, 59, 70, 59, 68, 61, 52, 58, 82, 68, 74, 67, 62, 72, 56, 61, 65, 71, 55, 76, 85, 49, 55, 55, 58, 63, 80, 54, 70, 77, 79, 55, 61, 90, 58, 65, 62, 91, 68, 64, 61, 66, 66, 58, 64, 57, 51, 53, 88, 54, 79, 55, 67, 48, 41, 81, 62, 68, 49, 81, 67, 107, 72, 64, 77, 72, 85, 55, 74, 71, 62, 55, 71, 52, 73, 67, 90, 55, 76, 82, 76, 51, 65, 53, 137, 64, 40, 77, 83, 51, 67, 74, 42, 46, 56, 84, 70, 93, 59, 58, 58, 48, 69, 79, 58, 54, 62, 76, 96, 68, 53, 78, 79, 60, 69, 93, 58, 58, 61, 56, 61, 63, 60, 61, 62, 65, 50, 66, 70, 56, 60, 64, 59, 54, 77, 61, 86, 52, 44, 57, 76, 53, 53, 55, 76, 65, 54, 49, 61, 97, 71, 55, 92, 51, 61, 55, 50, 63, 55, 60, 57, 73, 72, 76, 60, 62, 51, 71, 52, 44, 50, 64, 80, 73, 68, 58, 77, 99, 101, 74, 64, 45, 60, 54, 70, 94, 62, 50, 68, 72, 59, 70, 78, 63, 88, 63, 63, 57, 65, 76, 64, 74, 61, 83, 54, 67, 93, 54, 73, 40, 58, 95, 69, 82, 75, 69, 58, 59, 61, 53, 63, 75, 52, 54, 58, 71, 49, 86, 51, 74, 56, 51, 65, 108, 60, 63, 69, 54, 78, 59, 67, 59, 65, 68, 58, 66, 56, 71, 66, 71, 48, 77, 61, 59, 64, 56, 74, 68, 55, 79, 58, 54, 66, 66, 92, 51, 99, 96, 58, 37, 65, 56, 71, 79, 60, 60, 89, 61, 66, 56, 74, 78, 71, 48, 75, 69, 84, 82, 60, 47, 75, 55, 62, 61, 87, 56, 69, 66, 49, 68, 49, 49, 65, 121, 98, 78, 64, 75, 66, 79, 83, 53, 61, 66, 60, 64, 53, 60, 50, 80, 44, 52, 69, 72, 60, 76, 68, 56, 59, 66, 52, 63, 63, 55, 49, 47, 70, 76, 61, 65, 69, 54, 63, 60, 69, 70, 57, 59, 54, 59, 81, 75, 73, 57, 75, 64, 59, 57, 67, 68, 79, 77, 64, 49, 77, 62, 69, 104, 56, 74, 56, 72, 65, 87, 62, 71, 52, 57, 68, 34, 83, 62, 63, 61, 60, 63, 40, 61, 59, 61, 59, 54, 62, 42, 60, 69, 93, 65, 100, 63, 56, 80, 57, 74, 63, 71, 71, 75, 51, 56, 60, 72, 60, 58, 65, 80, 72, 54, 85, 74, 80, 52, 56, 71, 64, 58, 75, 74, 62, 84, 64, 35, 66, 74, 57, 55, 51, 58, 65, 55, 53, 65, 79, 68, 46, 63, 75, 72, 72, 46, 74, 88, 65, 95, 66, 60, 81, 80, 62, 47, 45, 59, 64, 73, 56, 73, 53, 61, 78, 67, 57, 63, 69, 51, 52, 51, 57, 65, 71, 57, 54, 51, 56, 77, 51, 68, 65, 50, 57, 87, 61, 74, 69, 49, 73, 56, 59, 76, 60, 68, 87, 79, 122, 75, 53, 72, 65, 70, 73, 48, 64, 55, 67, 66, 34, 61, 53, 52, 61, 80, 56, 83, 83, 67, 64, 59, 60, 90, 58, 55, 48, 65, 70, 70, 60, 63, 57, 66, 77, 52, 63, 50, 67, 67, 64, 67, 62, 54, 69, 57, 61, 60, 80, 66, 50, 72, 81, 52, 63, 75, 54, 76, 84, 75, 65, 62, 58, 65, 61, 61, 63, 72, 64, 54, 91, 63, 66, 28, 50, 122, 57, 54, 68, 62, 55, 62, 57, 71, 72, 52, 52, 46, 99, 89, 53, 56, 57, 64, 76, 59, 69, 77, 56, 76, 70, 66, 63, 54, 46, 65, 83, 64, 58, 73, 61, 58, 84, 53, 76, 64, 73, 47, 46, 63, 60, 74, 60, 62, 57, 64, 37, 66, 71, 68, 60, 79, 65, 67, 58, 67, 48, 59, 50, 77, 59, 68, 68, 54, 108, 77, 53, 64, 59, 77, 62, 50, 60, 77, 54, 86, 57, 65, 79, 95, 80, 61, 50, 89, 65, 80, 64, 63, 78, 59, 48, 62, 67, 63, 62, 76, 66, 62, 58, 65, 63, 58, 68, 57, 79, 51, 68, 75, 52, 52, 61, 64, 67, 49, 54, 74, 116, 66, 79, 113, 87, 63, 40, 61, 71, 54, 88, 76, 55, 55, 60, 77, 62, 59, 50, 68, 60, 65, 72, 38, 67, 59, 60, 59, 53, 55, 58, 61, 54, 100, 90, 64, 68, 60, 91, 73, 78, 56, 63, 60, 66, 72, 67, 78, 91, 77, 48, 100, 41, 74, 70, 61, 56, 58, 54, 60, 62, 50, 98, 58, 59, 64, 78, 56, 90, 60, 55, 82, 59, 64, 54, 99, 66, 55, 73, 97, 61, 87, 66, 65, 77, 61, 53, 64, 56, 69, 73, 73, 64, 56, 73, 79, 68, 69, 112, 58, 63, 62, 58, 57, 44, 59, 61, 62, 55, 91, 73, 90, 61, 101, 66, 73, 47, 65, 67, 54, 81, 55, 55, 50, 62, 64, 63, 92, 123, 85, 55, 69, 79, 66, 65, 58, 57, 54, 50, 67, 71, 63, 51, 52, 77, 86, 82, 62, 56, 63, 48, 98, 54, 62, 72, 55, 92, 75, 87, 55, 66, 67, 67, 67, 59, 62, 80, 61, 62, 74, 75, 99, 69, 60, 53, 73, 76, 48, 52, 69, 62, 61, 63, 68, 56, 110, 68, 67, 61, 77, 59, 64, 42, 52, 73, 76, 67, 71, 97, 95, 64, 91, 72, 71, 60, 61, 43, 53, 73, 48, 79, 50, 62, 50, 68, 62, 57, 56, 53, 57, 51, 77, 61, 45, 64, 61, 72, 77, 53, 40, 86, 60, 69, 70, 61, 46, 88, 113, 69, 111, 68, 56, 80, 71, 82, 57, 98, 85, 53, 64, 36, 97, 72, 71, 50, 57, 70, 107, 73, 50, 61, 63, 70, 79, 75, 63, 60, 53, 59, 68, 41, 71, 66, 80, 67, 59, 95, 62, 79, 66, 58, 79, 89, 48, 65, 71, 67, 65, 82, 50, 59, 99, 61, 71, 101, 77, 130, 61, 76, 58, 62, 61, 59, 61, 70, 55, 63, 62, 66, 62, 68, 70, 51, 74, 62, 61, 71, 49, 74, 60, 54, 56, 58, 52, 68, 68, 67, 68, 74, 77, 70, 74, 62, 63, 63, 61, 59, 59, 50, 67, 57, 48, 63, 64, 67, 55, 67, 72, 55, 60, 62, 88, 80, 96, 74, 73, 57, 62, 52, 58, 65, 64, 64, 58, 53, 52, 52, 60, 62, 64, 50, 60, 75, 58, 49, 85, 60, 74, 64, 48, 87, 67, 80, 62, 60, 118, 61, 58, 76, 63, 83, 78, 80, 66, 86, 62, 58, 69, 55, 71, 75, 60, 60, 66, 57, 66, 71, 69, 50, 60, 63, 75, 83, 62, 60, 53, 60, 42, 45, 88, 55, 62, 46, 66, 58, 48, 83, 55, 62, 61, 60, 49, 77, 71, 56, 62, 60, 42, 65, 114, 74, 61, 54, 67, 63, 63, 64, 54, 46, 88, 66, 58, 62, 55, 65, 76, 60, 58, 76, 57, 77, 72, 58, 81, 70, 56, 48, 49, 80, 52, 67, 56, 69, 87, 52, 56, 78, 83, 66, 51, 46, 77, 61, 62, 56, 74, 94, 60, 58, 95, 56, 57, 65, 67, 62, 70, 59, 65, 75, 67, 63, 68, 104, 59, 61, 67, 65, 56, 55, 85, 63, 45, 76, 44, 108, 57, 74, 56, 70, 79, 52, 61, 44, 56, 60, 53, 91, 65, 58, 100, 63, 71, 63, 74, 58, 98, 55, 94, 58, 82, 60, 72, 68, 68, 56, 50, 63, 50, 82, 68, 63, 78, 58, 66, 62, 63, 67, 103, 70, 72, 89, 62, 65, 41, 65, 67, 43, 75, 42, 74, 63, 51, 53, 65, 48, 70, 62, 91, 74, 72, 77, 56, 67, 76, 78, 53, 61, 46, 82, 74, 68, 82, 55, 89, 64, 72, 69, 74, 82, 59, 94, 52, 42, 52, 64, 57, 78, 69, 83, 82, 69, 77, 60, 80, 63, 82, 54, 69, 81, 59, 66, 73, 66, 47, 61, 70, 55, 85, 101, 83, 65, 67, 71, 90, 78, 54, 65, 83, 59, 39, 43, 65, 57, 73, 71, 55, 70, 59, 69, 75, 59, 69, 54, 72, 69, 60, 53, 59, 52, 70, 61, 76, 49, 85, 61, 84, 74, 59, 71, 68, 70, 66, 61, 57, 74, 64, 51, 73, 56, 61, 60, 68, 60, 56, 107, 63, 58, 69, 63, 56, 68, 83, 73, 52, 58, 59, 93, 58, 85, 61, 71, 82, 57, 56, 63, 58, 68, 64, 52, 72, 34, 80, 54, 47, 76, 51, 78, 60, 52, 77, 86, 97, 71, 66, 61, 81, 66, 65, 69, 65, 74, 60, 60, 64, 67, 59, 67, 55, 69, 57, 66, 60, 69, 68, 102, 66, 56, 73, 54, 81, 78, 63, 67, 78, 64, 54, 42, 72, 68, 56, 69, 54, 67, 72, 77, 59, 78, 67, 49, 63, 68, 59, 56, 59, 64, 59, 69, 82, 46, 96, 72, 64, 76, 98, 63, 60, 54, 53, 70, 66, 53, 72, 71, 56, 59, 56, 59, 70, 78, 64, 61, 63, 56, 64, 92, 64, 60, 90, 56, 67, 71, 50, 60, 58, 47, 61, 80, 53, 56, 68, 55, 50, 70, 71, 85, 57, 97, 68, 67, 59, 56, 76, 72, 51, 79, 48, 59, 57, 63, 54, 55, 64, 62, 52, 51, 119, 90, 50, 59, 66, 58, 64, 43, 70, 69, 61, 62, 61, 55, 90, 47, 61, 85, 57, 40, 76, 80, 70, 42, 64, 61, 42, 67, 63, 69, 64, 83, 66, 61, 71, 47, 72, 89, 55, 63, 67, 48, 61, 67, 70, 62, 69, 65, 72, 53, 82, 55, 63, 65, 68, 51, 53, 44, 114, 70, 54, 57, 64, 59, 67, 69, 56, 70, 79, 65, 59, 94, 80, 48, 57, 57, 41, 58, 63, 68, 75, 71, 70, 82, 41, 75, 66, 54, 78, 72, 66, 77, 70, 71, 73, 60, 52, 52, 80, 53, 71, 64, 53, 73, 61, 67, 66, 43, 56, 85, 50, 66, 53, 55, 70, 71, 57, 59, 70, 84, 50, 80, 77, 67, 77, 55, 85, 97, 47, 52, 68, 68, 75, 65, 61, 65, 54, 67, 101, 72, 65, 95, 85, 67, 60, 60, 57, 54, 60, 59, 61, 57, 57, 62, 60, 54, 51, 74, 84, 64, 91, 61, 85, 59, 67, 53, 38, 80, 59, 62, 98, 71, 77, 72, 69, 62, 56, 47, 75, 86, 52, 54, 100, 58, 67, 80, 63, 51, 42, 104, 77, 85, 59, 57, 56, 58, 71, 51, 52, 51, 59, 60, 55, 93, 71, 60, 53, 44, 65, 47, 63, 63, 96, 104, 47, 61, 45, 71, 62, 114, 55, 66, 48, 66, 56, 68, 41, 80, 82, 48, 76, 67, 67, 68, 51, 72, 63, 52, 57, 60, 70, 80, 47, 59, 45, 67, 51, 84, 68, 58, 63, 65, 60, 74, 79, 66, 67, 53, 93, 62, 73, 49, 69, 74, 63, 74, 46, 53, 57, 53, 68, 52, 52, 56, 61, 52, 57, 88, 77, 74, 70, 63, 62, 60, 57, 51, 66, 56, 93, 73, 71, 66, 71, 96, 53, 56, 50, 51, 62, 76, 87, 59, 56, 51, 69, 60, 109, 138, 52, 63, 63, 93, 81, 49, 62, 73, 49, 53, 62, 90, 53, 72, 56, 54, 80, 45, 49, 47, 61, 77, 83, 105, 52, 78, 68, 66, 60, 69, 55, 68, 89, 82, 42, 48, 52, 75, 45, 55, 97, 52, 76, 71, 83, 57, 76, 56, 52, 65, 50, 59, 60, 77, 76, 66, 82, 53, 69, 53, 54, 56, 68, 76, 53, 65, 68, 66, 63, 83, 68, 45, 60, 63, 55, 61, 76, 65, 56, 66, 63, 64, 73, 58, 55, 83, 52, 67, 75, 49, 78, 74, 68, 74, 58, 53, 86, 65, 52, 59, 53, 113, 72, 83, 74, 48, 59, 74, 124, 70, 113, 62, 76, 87, 50, 82, 66, 81, 94, 66, 69, 53, 85, 69, 82, 50, 75, 41, 93, 59, 50, 66, 57, 63, 65, 83, 60, 62, 81, 72, 71, 50, 54, 61, 77, 67, 68, 69, 59, 79, 64, 64, 73, 64, 70, 58, 66, 63, 64, 86, 67, 93, 95, 37, 58, 81, 99, 102, 64, 73, 66, 48, 79, 48, 61, 63, 57, 57, 63, 63, 77, 63, 62, 48, 73, 61, 69, 59, 58, 83, 59, 60, 61, 45, 61, 66, 63, 66, 68, 70, 79, 68, 62, 67, 59, 66, 53, 64, 74, 55, 49, 52, 41, 81, 62, 78, 55, 57, 62, 62, 71, 72, 67, 64, 83, 64, 68, 50, 77, 67, 72, 60, 70, 58, 66, 57, 54, 41, 61, 75, 65, 59, 63, 68, 53, 56, 77, 56, 58, 55, 62, 75, 53, 67, 78, 74, 133, 82, 53, 91, 54, 82, 76, 64, 78, 61, 54, 54, 71, 63, 70, 67, 70, 58, 102, 64, 65, 54, 75, 83, 54, 51, 81, 71, 55, 52, 63, 72, 86, 56, 85, 60, 78, 55, 61, 48, 64, 58, 49, 73, 51, 59, 110, 71, 71, 55, 65, 50, 67, 78, 123, 71, 59, 58, 58, 78, 76, 60, 50, 50, 69, 76, 77, 70, 76, 93, 93, 73, 50, 73, 68, 86, 55, 48, 71, 67, 67, 62, 68, 66, 70, 55, 44, 53, 89, 43, 70, 55, 81, 51, 53, 71, 56, 57, 66, 69, 73, 97, 69, 61, 81, 75, 51, 51, 62, 62, 64, 59, 67, 66, 58, 81, 60, 105, 61, 55, 75, 54, 61, 50, 81, 61, 53, 89, 51, 81, 66, 67, 61, 59, 69, 74, 60, 67, 62, 70, 45, 56, 71, 49, 94, 56, 56, 52, 71, 73, 93, 86, 69, 60, 78, 61, 54, 69, 57, 49, 68, 65, 59, 84, 53, 49, 85, 52, 68, 50, 76, 61, 114, 62, 69, 83, 74, 60, 49, 64, 48, 71, 65, 71, 72, 57, 67, 55, 63, 53, 49, 67, 60, 73, 67, 71, 53, 54, 68, 54, 61, 58, 35, 81, 78, 71, 61, 66, 73, 47, 78, 78, 50, 60, 69, 75, 71, 57, 53, 61, 71, 61, 56, 73, 73, 62, 80, 53, 93, 51, 86, 85, 66, 65, 69, 72, 62, 66, 64, 60, 58, 59, 106, 92, 55, 53, 71, 60, 83, 52, 41, 77, 76, 59, 52, 70, 53, 63, 54, 76, 63, 64, 69, 78, 77, 68, 60, 62, 65, 55, 70, 79, 65, 68, 69, 54, 78, 76, 64, 72, 59, 80, 52, 55, 65, 50, 54, 59, 72, 72, 78, 55, 66, 79, 65, 52, 65, 59, 72, 119, 69, 65, 80, 70, 54, 63, 61, 53, 59, 41, 58, 53, 71, 84, 57, 72, 61, 62, 78, 62, 57, 80, 56, 74, 88, 52, 45, 104, 63, 57, 56, 55, 68, 63, 70, 47, 73, 59, 71, 103, 52, 77, 67, 61, 61, 55, 57, 66, 55, 37, 54, 66, 73, 60, 67, 54, 57, 82, 66, 62, 65, 56, 70, 53, 46, 72, 58, 59, 64, 64, 41, 61, 75, 65, 72, 61, 81, 70, 57, 44, 82, 66, 74, 80, 63, 77, 55, 65, 70, 74, 73, 62, 67, 74, 70, 36, 116, 71, 62, 56, 56, 62, 60, 54, 77, 46, 62, 61, 57, 50, 46, 71, 75, 58, 47, 49, 69, 60, 90, 58, 78, 50, 56, 81, 62, 68, 69, 58, 69, 61, 74, 72, 57, 62, 63, 34, 110, 92, 72, 61, 63, 48, 46, 68, 58, 37, 66, 59, 65, 79, 68, 52, 74, 64, 76, 80, 65, 79, 74, 62, 141, 103, 69, 49, 53, 60, 59, 46, 73, 63, 53, 54, 66, 70, 86, 75, 71, 74, 55, 58, 61, 43, 61, 83, 70, 60, 46, 62, 53, 60, 71, 108, 81, 48, 86, 46, 74, 50, 45, 74, 62, 65, 47, 64, 71, 57, 72, 67, 53, 42, 90, 53, 63, 79, 66, 88, 91, 69, 60, 46, 60, 60, 53, 79, 43, 66, 80, 61, 57, 65, 66, 55, 79, 74, 59, 61, 61, 82, 74, 68, 68, 62, 77, 68, 54, 59, 99, 63, 49, 76, 62, 89, 108, 58, 106, 55, 56, 82, 82, 62, 71, 98, 68, 63, 63, 40, 60, 94, 63, 78, 63, 62, 64, 39, 58, 59, 42, 87, 75, 66, 54, 100, 68, 86, 54, 64, 44, 71, 59, 67, 52, 77, 78, 57, 59, 66, 64, 78, 88, 46, 96, 83, 57, 67, 70, 66, 46, 57, 50, 75, 62, 63, 60, 47, 65, 54, 92, 83, 62, 69, 53, 77, 88, 67, 88, 72, 55, 68, 60, 73, 71, 73, 76, 53, 79, 69, 57, 81, 66, 64, 44, 64, 71, 73, 57, 63, 66, 69, 65, 95, 69, 72, 65, 73, 71, 61, 47, 55, 76, 103, 70, 64, 77, 32, 72, 67, 54, 53, 74, 52, 39, 26, 88, 69, 50, 58, 71, 67, 58, 84, 56, 80, 60, 41, 67, 42, 51, 60, 48, 38, 67, 47, 45, 53, 76, 58, 59, 88, 56, 93, 53, 78, 49, 80, 55, 64, 64, 83, 53, 68, 52, 51, 47, 82, 70, 56, 87, 76, 54, 74, 59, 56, 58, 62, 53, 59, 74, 69, 68, 53, 63, 47, 49, 73, 67, 89, 54, 69, 45, 69, 74, 70, 76, 69, 55, 68, 77, 84, 84, 43, 110, 80, 83, 107, 71, 60, 92, 53, 64, 72, 85, 76, 94, 77, 50, 69, 57, 49, 48, 78, 64, 62, 53, 64, 65, 74, 51, 57, 81, 61, 47, 62, 62, 61, 86, 60, 53, 56, 59, 95, 74, 58, 40, 87, 63, 49, 76, 95, 67, 64, 65, 59, 68, 72, 65, 60, 83, 52, 67, 89, 66, 74, 78, 69, 62, 70, 91, 41, 79, 73, 47, 73, 51, 72, 59, 54, 59, 95, 58, 52, 66, 83, 76, 57, 112, 54, 59, 50, 75, 78, 57, 78, 70, 69, 49, 69, 65, 64, 132, 76, 52, 65, 82, 61, 78, 59, 74, 64, 60, 70, 77, 87, 93, 58, 80, 77, 79, 56, 73, 70, 72, 64, 81, 57, 70, 77, 86, 70, 96, 83, 79, 52, 39, 66, 68, 74, 113, 62, 47, 61, 58, 68, 80, 48, 70, 68, 75, 68, 80, 56, 97, 75, 57, 47, 61, 52, 81, 63, 94, 55, 42, 57, 47, 75, 110, 49, 80, 84, 86, 77, 66, 71, 73, 82, 55, 58, 74, 41, 58, 69, 75, 68, 68, 52, 88, 90, 71, 62, 61, 32, 86, 53, 84, 52, 43, 61, 70, 66, 64, 82, 84, 73, 66, 67, 79, 62, 51, 66, 63, 94, 57, 61, 68, 58, 70, 45, 32, 61, 69, 65, 49, 72, 82, 91, 54, 73, 61, 94, 48, 56, 90, 36, 50, 107, 56, 60, 61, 65, 57, 80, 57, 49, 61, 67, 48, 82, 76, 42, 39, 74, 49, 72, 62, 59, 61, 56, 61, 54, 73, 56, 70, 79, 52, 60, 94, 78, 125, 71, 49, 63, 67, 85, 51, 63, 76, 44, 94, 87, 70, 57, 75, 55, 77, 67, 61, 54, 52, 75, 85, 48, 116, 55, 81, 60, 67, 46, 75, 113, 63, 95, 62, 71, 51, 57, 96, 89, 109, 58, 69, 70, 47, 61, 63, 81, 66, 61, 56, 62, 70, 52, 76, 52, 65, 62, 75, 70, 56, 62, 74, 47, 73, 59, 72, 87, 78, 90, 55, 60, 41, 77, 154, 47, 66, 69, 90, 64, 62, 112, 70, 64, 56, 55, 56, 59, 59, 47, 68, 56, 56, 44, 62, 66, 59, 43, 65, 53, 77, 85, 65, 41, 52, 70, 59, 68, 50, 59, 91, 68, 73, 49, 80, 48, 78, 61, 48, 51, 61, 98, 49, 72, 60, 50, 58, 42, 75, 68, 66, 59, 70, 82, 95, 50, 60, 96, 67, 51, 59, 82, 56, 49, 55, 62, 82, 46, 62, 49, 56, 76, 73, 62, 60, 76, 63, 77, 78, 64, 54, 58, 64, 54, 69, 56, 73, 74, 77, 68, 59, 67, 64, 81, 64, 98, 74, 65, 54, 82, 89, 60, 72, 54, 74, 59, 60, 45, 63, 51, 72, 67, 45, 73, 71, 64, 58, 54, 87, 55, 76, 65, 57, 53, 55, 61, 104, 81, 65, 65, 68, 55, 70, 66, 51, 67, 58, 64, 55, 96, 75, 57, 61, 64, 59, 76, 74, 46, 51, 64, 70, 55, 78, 72, 58, 76, 69, 56, 80, 57, 85, 53, 52, 70, 69, 58, 63, 64, 68, 68, 56, 53, 68, 61, 72, 57, 70, 60, 69, 53, 59, 55, 74, 78, 73, 80, 67, 62, 52, 60, 105, 62, 72, 74, 57, 78, 57, 59, 55, 60, 68, 65, 59, 50, 66, 63, 61, 72, 49, 50, 86, 39, 60, 42, 61, 63, 53, 45, 67, 55, 66, 70, 69, 56, 58, 114, 73, 119, 77, 65, 70, 71, 54, 66, 64, 56, 55, 53, 45, 68, 77, 85, 56, 57, 45, 72, 75, 52, 64, 78, 61, 68, 64, 87, 63, 91, 57, 59, 47, 66, 59, 59, 66, 50, 71, 63, 55, 61, 61, 68, 72, 50, 62, 43, 55, 72, 51, 63, 68, 75, 72, 66, 78, 59, 74, 70, 50, 65, 73, 62, 65, 52, 56, 70, 66, 80, 95, 51, 54, 62, 60, 55, 73, 58, 79, 83, 56, 67, 61, 67, 55, 71, 54, 50, 77, 61, 78, 49, 89, 56, 60, 57, 54, 60, 95, 72, 49, 49, 61, 75, 52, 60, 97, 55, 51, 51, 82, 65, 55, 78, 81, 67, 80, 63, 70, 51, 77, 67, 67, 56, 62, 56, 63, 57, 58, 62, 60, 73, 87, 64, 64, 64, 61, 69, 79, 99, 78, 45, 49, 55, 57, 66, 48, 53, 83, 77, 65, 74, 51, 68, 49, 61, 64, 42, 56, 55, 86, 70, 121, 102, 59, 44, 64, 60, 50, 63, 66, 52, 57, 69, 60, 77, 85, 51, 65, 71, 45, 62, 75, 71, 91, 85, 72, 70, 60, 68, 75, 65, 78, 107, 61, 48, 67, 66, 57, 66, 64, 75, 49, 51, 74, 63, 74, 54, 87, 83, 62, 55, 73, 68, 64, 55, 54, 88, 74, 55, 74, 87, 61, 62, 58, 70, 67, 69, 87, 79, 40, 86, 56, 72, 79, 60, 55, 81, 65, 89, 60, 79, 80, 63, 55, 73, 82, 56, 90, 54, 55, 56, 78, 65, 126, 67, 84, 41, 67, 64, 86, 59, 59, 69, 58, 79, 53, 74, 56, 104, 61, 62, 72, 74, 55, 46, 60, 65, 55, 60, 85, 48, 70, 98, 74, 59, 66, 79, 59, 56, 77, 48, 56, 77, 70, 50, 41, 66, 50, 66, 83, 58, 84, 64, 52, 68, 68, 59, 60, 57, 49, 94, 59, 60, 52, 65, 67, 39, 71, 139, 84, 97, 53, 76, 64, 54, 44, 53, 72, 49, 78, 76, 46, 66, 77, 51, 66, 64, 57, 105, 69, 75, 80, 57, 50, 61, 52, 65, 100, 51, 63, 105, 51, 84, 50, 41, 78, 52, 49, 59, 59, 102, 46, 55, 62, 76, 54, 70, 69, 92, 63, 72, 76, 77, 71, 47, 72, 62, 64, 60, 54, 58, 53, 48, 56, 63, 68, 50, 67, 57, 47, 57, 86, 54, 58, 54, 68, 60, 64, 52, 61, 105, 51, 73, 47, 79, 45, 70, 81, 85, 84, 54, 87, 68, 76, 80, 63, 62, 64, 78, 69, 67, 50, 72, 63, 62, 67, 57, 86, 71, 68, 41, 76, 53, 55, 77, 53, 63, 58, 47, 62, 54, 54, 94, 65, 76, 63, 53, 61, 90, 88, 63, 82, 64, 81, 85, 63, 75, 69, 69, 56, 69, 57, 78, 78, 67, 53, 55, 63, 53, 57, 52, 66, 53, 53, 63, 73, 44, 53, 68, 81, 67, 52, 66, 61, 52, 66, 41, 51, 82, 49, 73, 81, 51, 71, 59, 57, 62, 72, 118, 89, 78, 83, 51, 66, 49, 82, 65, 70, 57, 87, 72, 81, 83, 56, 56, 59, 53, 67, 68, 67, 65, 58, 56, 53, 72, 54, 60, 79, 65, 50, 68, 58, 71, 70, 67, 86, 56, 80, 37, 85, 79, 51, 64, 70, 63, 59, 70, 68, 61, 94, 71, 62, 81, 97, 72, 82, 55, 76, 63, 57, 72, 48, 73, 59, 56, 73, 76, 79, 64, 65, 72, 56, 71, 71, 75, 84, 63, 98, 47, 81, 62, 43, 58, 95, 67, 65, 68, 80, 52, 53, 63, 62, 67, 87, 55, 101, 53, 59, 76, 69, 78, 120, 74, 54, 64, 62, 49, 66, 63, 83, 66, 64, 79, 59, 92, 91, 53, 73, 78, 54, 65, 65, 46, 56, 74, 67, 53, 65, 57, 41, 63, 85, 89, 60, 68, 74, 95, 53, 51, 59, 68, 65, 71, 75, 67, 65, 80, 61, 78, 60, 78, 75, 84, 87, 60, 62, 48, 35, 82, 80, 68, 71, 65, 51, 69, 76, 54, 58, 61, 63, 69, 61, 63, 94, 49, 56, 58, 86, 87, 62, 57, 74, 43, 66, 146, 58, 67, 71, 60, 77, 76, 56, 55, 63, 44, 58, 71, 48, 73, 46, 46, 56, 60, 74, 65, 71, 48, 53, 49, 59, 85, 77, 76, 61, 64, 74, 87, 95, 41, 55, 56, 52, 84, 61, 52, 49, 56, 70, 75, 68, 59, 82, 55, 72, 72, 54, 69, 83, 59, 57, 70, 98, 52, 83, 48, 78, 43, 43, 136, 36, 99, 61, 61, 80, 48, 133, 73, 97, 65, 59, 58, 50, 55, 67, 45, 72, 57, 74, 72, 52, 46, 100, 63, 66, 47, 57, 76, 82, 54, 57, 64, 83, 68, 38, 72, 91, 75, 89, 69, 59, 85, 123, 50, 57, 76, 64, 50, 51, 122, 89, 47, 56, 53, 58, 47, 52, 45, 58, 79, 63, 63, 57, 68, 76, 90, 50, 57, 74, 88, 53, 63, 56, 73, 45, 54, 52, 81, 67, 61, 72, 63, 74, 63, 69, 87, 70, 57, 46, 77, 52, 69, 42, 65, 63, 68, 60, 81, 65, 64, 78, 67, 113, 52, 58, 100, 58, 52, 68, 47, 58, 65, 65, 81, 73, 59, 62, 42, 56, 53, 51, 58, 61, 37, 63, 75, 72, 58, 65, 55, 59, 54, 74, 47, 57, 55, 66, 75, 57, 65, 61, 58, 63, 90, 87, 66, 76, 44, 99, 46, 72, 69, 65, 51, 77, 83, 49, 63, 72, 56, 39, 55, 60, 69, 70, 50, 45, 71, 67, 74, 57, 55, 69, 62, 99, 55, 78, 59, 63, 59, 54, 60, 64, 64, 58, 51, 67, 85, 105, 67, 84, 73, 61, 51, 62, 60, 45, 61, 68, 50, 90, 57, 59, 94, 63, 55, 81, 68, 77, 64, 59, 73, 56, 82, 63, 59, 53, 76, 80, 58, 73, 63, 93, 58, 62, 65, 83, 56, 79, 49, 63, 74, 64, 67, 61, 74, 62, 57, 80, 59, 62, 55, 56, 66, 63, 73, 70, 61, 46, 49, 72, 64, 71, 74, 62, 69, 58, 51, 78, 43, 78, 51, 103, 66, 61, 34, 67, 54, 63, 48, 67, 53, 74, 121, 62, 101, 68, 80, 79, 81, 62, 61, 61, 70, 66, 60, 42, 74, 85, 64, 56, 67, 61, 55, 67, 75, 67, 48, 75, 53, 89, 53, 60, 102, 51, 68, 71, 57, 78, 65, 69, 66, 98, 67, 67, 73, 48, 54, 66, 59, 59, 57, 53, 71, 50, 82, 74, 59, 77, 59, 75, 72, 59, 59, 66, 106, 63, 54, 62, 53, 48, 71, 77, 80, 91, 69, 48, 50, 64, 85, 65, 85, 57, 60, 64, 67, 57, 69, 77, 54, 58, 83, 51, 63, 60, 68, 62, 66, 58, 85, 58, 66, 71, 49, 73, 40, 68, 76, 58, 82, 59, 70, 46, 81, 72, 81, 44, 75, 78, 58, 64, 57, 54, 42, 88, 64, 42, 60, 73, 85, 53, 69, 67, 78, 52, 62, 63, 73, 84, 76, 53, 79, 62, 60, 73, 64, 73, 56, 65, 102, 57, 43, 76, 50, 66, 71, 62, 65, 61, 63, 62, 76, 71, 50, 85, 84, 115, 123, 67, 49, 47, 73, 68, 70, 56, 84, 63, 59, 59, 79, 65, 83, 63, 66, 44, 75, 64, 74, 53, 57, 61, 86, 37, 104, 50, 68, 81, 93, 66, 68, 70, 74, 74, 54, 52, 52, 54, 53, 78, 54, 59, 67, 57, 72, 75, 49, 63, 55, 71, 72, 57, 89, 70, 74, 81, 71, 102, 52, 63, 59, 99, 78, 65, 80, 66, 61, 83, 60, 64, 64, 54, 96, 46, 53, 69, 79, 61, 45, 64, 47, 47, 56, 73, 49, 75, 72, 80, 70, 78, 59, 60, 59, 48, 76, 92, 56, 63, 64, 64, 62, 70, 56, 78, 70, 65, 70, 55, 52, 60, 55, 68, 52, 43, 53, 47, 68, 69, 73, 45, 81, 60, 68, 80, 80, 57, 53, 67, 77, 59, 77, 61, 60, 53, 69, 75, 59, 89, 97, 65, 59, 71, 80, 69, 66, 92, 61, 66, 63, 66, 75, 59, 66, 50, 63, 71, 65, 71, 62, 56, 70, 58, 77, 58, 59, 83, 68, 76, 66, 72, 73, 60, 55, 55, 65, 72, 67, 55, 54, 61, 60, 57, 76, 59, 71, 85, 62, 54, 65, 71, 59, 84, 47, 80, 63, 47, 100, 58, 66, 49, 63, 72, 67, 63, 54, 52, 62, 67, 79, 100, 74, 81, 51, 52, 58, 54, 77, 67, 65, 66, 43, 95, 53, 69, 57, 62, 55, 58, 87, 60, 60, 91, 66, 54, 70, 96, 92, 68, 73, 76, 86, 84, 66, 65, 55, 55, 63, 61, 68, 54, 79, 67, 60, 73, 66, 82, 46, 60, 63, 39, 69, 46, 81, 46, 55, 60, 58, 77, 51, 51, 74, 59, 68, 58, 74, 82, 78, 58, 58, 83, 54, 61, 56, 71, 80, 62, 68, 65, 66, 49, 94, 61, 60, 55, 61, 55, 55, 83, 58, 129, 69, 77, 72, 58, 74, 62, 79, 55, 78, 49, 51, 52, 79, 63, 69, 75, 70, 69, 55, 53, 60, 50, 56, 52, 66, 64, 83, 85, 84, 64, 51, 51, 62, 61, 69, 73, 63, 63, 62, 79, 46, 82, 45, 62, 75, 63, 49, 61, 79, 69, 57, 79, 96, 65, 71, 74, 70, 56, 72, 67, 59, 76, 50, 54, 79, 60, 69, 73, 68, 80, 66, 86, 54, 67, 47, 80, 53, 56, 86, 69, 80, 53, 76, 50, 54, 71, 68, 64, 59, 70, 76, 80, 68, 91, 61, 62, 55, 64, 43, 68, 62, 58, 70, 68, 43, 62, 49, 34, 86, 71, 48, 96, 57, 85, 58, 106, 81, 60, 61, 57, 78, 67, 66, 74, 59, 46, 48, 76, 56, 62, 68, 43, 70, 99, 70, 52, 66, 107, 84, 57, 60, 58, 49, 65, 54, 101, 53, 83, 42, 70, 73, 83, 49, 51, 59, 80, 71, 61, 63, 66, 50, 68, 50, 75, 68, 71, 67, 92, 89, 80, 60, 63, 107, 94, 47, 57, 79, 69, 72, 84, 56, 78, 57, 75, 53, 77, 78, 36, 56, 85, 48, 48, 58, 45, 60, 58, 50, 58, 72, 50, 74, 71, 67, 63, 58, 57, 58, 64, 94, 62, 73, 43, 53, 59, 78, 60, 69, 53, 65, 51, 77, 55, 50, 81, 59, 56, 73, 82, 78, 46, 65, 58, 64, 67, 58, 52, 59, 51, 81, 58, 69, 68, 56, 74, 57, 67, 61, 70, 42, 71, 76, 77, 89, 64, 48, 87, 63, 62, 75, 64, 69, 87, 57, 72, 88, 76, 68, 71, 77, 66, 69, 52, 65, 73, 70, 68, 56, 84, 84, 80, 58, 68, 58, 67, 124, 49, 99, 55, 71, 51, 53, 79, 63, 72, 49, 71, 71, 61, 73, 58, 60, 45, 61, 51, 72, 71, 81, 60, 73, 77, 56, 69, 62, 56, 83, 87, 54, 52, 74, 68, 105, 80, 54, 41, 84, 60, 78, 172, 69, 68, 74, 94, 66, 73, 78, 77, 58, 64, 49, 73, 52, 56, 65, 53, 53, 66, 56, 65, 60, 62, 73, 63, 59, 42, 63, 46, 54, 72, 70, 50, 52, 57, 77, 72, 59, 62, 57, 80, 60, 62, 73, 53, 62, 66, 68, 55, 83, 67, 68, 92, 81, 56, 71, 68, 60, 81, 78, 115, 72, 58, 57, 58, 59, 74, 65, 66, 59, 49, 68, 52, 52, 78, 60, 81, 86, 69, 71, 61, 58, 61, 70, 92, 63, 69, 60, 64, 76, 79, 73, 76, 60, 65, 44, 71, 65, 77, 51, 49, 47, 93, 59, 53, 47, 56, 70, 79, 50, 68, 66, 64, 79, 46, 52, 89, 62, 71, 51, 80, 62, 74, 90, 53, 66, 66, 66, 66, 62, 45, 69, 92, 79, 54, 58, 68, 76, 70, 54, 64, 69, 68, 78, 75, 48, 75, 49, 76, 69, 61, 73, 60, 74, 67, 47, 66, 48, 70, 75, 73, 67, 68, 52, 87, 68, 40, 57, 57, 51, 55, 70, 56, 48, 67, 74, 62, 64, 50, 57, 57, 53, 66, 47, 54, 63, 52, 73, 72, 85, 78, 40, 62, 62, 46, 76, 74, 87, 51, 61, 50, 78, 60, 58, 75, 55, 65, 65, 63, 72, 50, 75, 66, 49, 70, 75, 59, 73, 51, 67, 56, 67, 81, 76, 64, 60, 78, 59, 83, 60, 59, 119, 64, 98, 54, 50, 84, 46, 47, 66, 62, 64, 55, 77, 54, 88, 79, 77, 54, 54, 71, 59, 50, 70, 57, 56, 62, 55, 99, 57, 86, 72, 67, 57, 74, 63, 67, 59, 64, 51, 96, 69, 73, 57, 61, 80, 88, 58, 58, 51, 77, 65, 54, 99, 77, 59, 48, 64, 66, 72, 65, 46, 76, 118, 60, 49, 58, 57, 51, 59, 68, 57, 52, 64, 68, 68, 75, 64, 32, 64, 83, 56, 73, 47, 70, 65, 67, 66, 63, 76, 44, 67, 59, 67, 71, 55, 48, 69, 54, 62, 84, 64, 60, 64, 69, 38, 68, 101, 65, 67, 55, 56, 84, 72, 73, 63, 61, 56, 57, 57, 59, 77, 83, 64, 50, 75, 67, 65, 58, 77, 74, 55, 67, 78, 44, 71, 56, 98, 43, 58, 50, 55, 85, 86, 60, 77, 54, 94, 49, 67, 67, 66, 57, 107, 54, 55, 44, 65, 79, 59, 49, 66, 73, 104, 112, 131, 61, 48, 51, 42, 47, 65, 66, 67, 68, 57, 67, 58, 69, 83, 75, 46, 41, 106, 40, 68, 58, 77, 71, 71, 61, 86, 50, 54, 66, 105, 51, 68, 75, 65, 64, 70, 73, 66, 57, 46, 47, 57, 64, 89, 74, 67, 87, 56, 78, 53, 63, 66, 67, 76, 86, 70, 77, 92, 103, 71, 51, 85, 94, 79, 76, 74, 57, 71, 61, 79, 58, 69, 59, 72, 70, 64, 73, 64, 62, 63, 49, 61, 64, 63, 70, 73, 61, 51, 34, 58, 77, 54, 67, 44, 63, 75, 78, 52, 65, 73, 64, 66, 73, 57, 46, 80, 63, 52, 61, 63, 50, 59, 89, 70, 48, 100, 56, 44, 67, 75, 61, 52, 90, 42, 69, 88, 40, 61, 60, 80, 56, 74, 68, 53, 66, 61, 73, 65, 98, 97, 67, 67, 70, 59, 63, 62, 50, 63, 57, 64, 52, 59, 52, 78, 44, 71, 65, 47, 76, 64, 59, 69, 62, 63, 55, 58, 54, 60, 99, 62, 61, 78, 64, 75, 47, 66, 79, 65, 66, 51, 65, 59, 70, 78, 65, 50, 64, 69, 62, 81, 46, 48, 63, 52, 53, 88, 54, 68, 54, 42, 72, 69, 58, 51, 51, 44, 58, 63, 84, 54, 93, 71, 59, 70, 87, 61, 36, 63, 57, 64, 55, 61, 81, 51, 86, 47, 61, 54, 93, 77, 68, 63, 101, 78, 39, 71, 80, 63, 65, 74, 92, 76, 72, 52, 50, 70, 69, 52, 46, 58, 62, 61, 62, 57, 54, 68, 51, 76, 52, 72, 54, 58, 78, 54, 59, 58, 60, 70, 65, 69, 71, 68, 59, 63, 50, 73, 83, 49, 69, 51, 97, 59, 82, 61, 54, 78, 72, 44, 68, 49, 70, 75, 89, 65, 52, 61, 49, 70, 96, 77, 123, 62, 78, 76, 46, 65, 72, 67, 53, 77, 61, 53, 55, 68, 69, 65, 89, 87, 75, 69, 39, 62, 78, 50, 53, 75, 56, 66, 79, 64, 70, 55, 54, 83, 101, 64, 47, 59, 85, 53, 79, 61, 82, 82, 60, 71, 79, 65, 64, 96, 73, 81, 71, 64, 68, 64, 56, 68, 54, 64, 60, 93, 44, 64, 71, 53, 46, 48, 60, 75, 47, 69, 79, 50, 71, 36, 85, 55, 68, 43, 64, 77, 61, 92, 56, 72, 66, 64, 58, 43, 61, 88, 76, 44, 59, 63, 72, 63, 65, 47, 42, 61, 51, 105, 80, 52, 69, 53, 62, 83, 62, 62, 74, 57, 82, 55, 99, 64, 52, 85, 49, 67, 91, 49, 62, 58, 65, 39, 47, 69, 67, 65, 64, 53, 100, 77, 58, 63, 90, 84, 65, 68, 65, 48, 60, 76, 76, 56, 75, 70, 44, 81, 104, 56, 69, 72, 81, 74, 49, 64, 64, 66, 58, 62, 58, 49, 69, 59, 94, 64, 61, 71, 75, 106, 47, 72, 59, 70, 54, 89, 92, 72, 69, 53, 78, 58, 79, 55, 81, 58, 72, 61, 64, 62, 52, 54, 72, 69, 65, 70, 63, 65, 61, 71, 56, 68, 55, 81, 41, 73, 74, 45, 83, 61, 57, 57, 61, 60, 57, 64, 76, 62, 45, 65, 56, 53, 69, 49, 80, 61, 58, 61, 56, 64, 67, 42, 57, 59, 42, 54, 36, 70, 67, 59, 57, 68, 47, 56, 46, 63, 60, 64, 77, 107, 63, 54, 80, 55, 60, 62, 78, 81, 78, 58, 61, 79, 93, 46, 50, 52, 74, 67, 72, 61, 62, 81, 55, 43, 70, 64, 77, 75, 56, 66, 72, 127, 45, 88, 56, 70, 70, 72, 77, 35, 57, 55, 79, 82, 58, 69, 61, 63, 92, 54, 76, 62, 83, 61, 85, 73, 57, 65, 73, 70, 77, 84, 97, 60, 67, 47, 96, 101, 77, 65, 51, 99, 43, 69, 190, 84, 50, 53, 90, 59, 80, 96, 79, 41, 71, 80, 68, 70, 64, 62, 52, 78, 78, 51, 58, 79, 65, 57, 74, 59, 58, 70, 66, 61, 56, 57, 67, 70, 58, 75, 76, 50, 61, 58, 58, 61, 66, 76, 43, 53, 79, 59, 50, 117, 79, 53, 58, 54, 72, 85, 63, 79, 83, 42, 116, 41, 68, 63, 64, 73, 58, 68, 65, 68, 76, 63, 60, 72, 67, 76, 63, 51, 59, 63, 66, 48, 59, 65, 77, 64, 67, 42, 74, 64, 52, 78, 74, 58, 90, 60, 72, 63, 57, 59, 55, 56, 93, 66, 73, 66, 76, 84, 84, 57, 66, 59, 46, 82, 67, 54, 77, 55, 69, 54, 67, 65, 53, 74, 75, 59, 52, 71, 55, 58, 70, 64, 97, 90, 73, 79, 81, 73, 49, 76, 78, 79, 58, 70, 57, 73, 61, 56, 90, 83, 78, 81, 60, 74, 49, 61, 55, 61, 64, 56, 69, 48, 75, 45, 100, 61, 49, 68, 67, 79, 61, 74, 65, 48, 58, 47, 62, 45, 54, 51, 70, 50, 69, 57, 68, 58, 63, 53, 78, 86, 65, 83, 60, 69, 60, 79, 80, 75, 65, 79, 45, 62, 60, 75, 76, 44, 55, 73, 66, 63, 73, 69, 45, 49, 56, 56, 69, 68, 41, 74, 62, 57, 63, 73, 44, 72, 75, 72, 60, 63, 67, 123, 61, 87, 75, 64, 64, 61, 62, 65, 65, 65, 60, 58, 62, 68, 68, 84, 74, 66, 53, 77, 53, 66, 46, 59, 63, 68, 103, 59, 67, 99, 61, 49, 59, 40, 70, 68, 101, 73, 69, 84, 77, 62, 55, 72, 51, 50, 55, 55, 43, 60, 62, 83, 65, 54, 70, 55, 80, 39, 68, 60, 53, 92, 51, 74, 57, 73, 92, 62, 76, 49, 73, 77, 63, 63, 84, 70, 65, 67, 57, 76, 70, 75, 55, 56, 72, 74, 71, 43, 51, 54, 69, 65, 65, 61, 54, 54, 80, 66, 71, 50, 56, 69, 64, 76, 52, 88, 59, 56, 66, 72, 41, 73, 52, 53, 65, 61, 53, 45, 70, 52, 48, 57, 57, 65, 68, 51, 55, 65, 76, 63, 85, 57, 60, 59, 69, 103, 68, 45, 62, 68, 64, 81, 44, 75, 76, 105, 62, 50, 51, 47, 57, 71, 68, 60, 57, 76, 73, 69, 78, 59, 71, 110, 120, 110, 57, 56, 64, 60, 63, 70, 69, 82, 73, 54, 59, 62, 53, 61, 70, 54, 39, 91, 58, 65, 59, 63, 53, 61, 37, 100, 71, 55, 74, 101, 60, 73, 73, 56, 72, 54, 77, 72, 69, 56, 61, 64, 75, 61, 60, 73, 95, 60, 71, 68, 62, 77, 80, 48, 49, 48, 80, 117, 100, 67, 64, 77, 87, 63, 66, 60, 55, 83, 70, 76, 64, 55, 65, 76, 56, 69, 65, 42, 74, 54, 71, 54, 45, 61, 57, 58, 62, 62, 56, 77, 70, 79, 77, 52, 65, 48, 52, 66, 59, 39, 70, 68, 62, 74, 64, 68, 66, 59, 54, 79, 68, 51, 80, 71, 62, 68, 58, 65, 53, 70, 83, 66, 60, 58, 48, 99, 58, 75, 64, 69, 73, 59, 45, 53, 60, 81, 80, 52, 85, 61, 73, 55, 61, 52, 68, 78, 68, 70, 61, 68, 58, 81, 62, 42, 65, 45, 62, 53, 65, 69, 53, 54, 49, 61, 84, 63, 70, 57, 62, 78, 63, 69, 48, 59, 62, 80, 80, 64, 72, 52, 77, 78, 58, 65, 65, 51, 74, 72, 69, 67, 49, 65, 56, 48, 58, 83, 52, 64, 56, 59, 61, 55, 89, 50, 66, 72, 50, 51, 63, 69, 90, 51, 83, 69, 54, 64, 81, 80, 60, 63, 51, 67, 91, 64, 72, 63, 63, 47, 64, 68, 48, 64, 79, 72, 67, 57, 64, 83, 47, 60, 39, 75, 71, 68, 58, 70, 52, 54, 71, 57, 58, 67, 69, 44, 66, 50, 58, 77, 67, 61, 80, 65, 72, 70, 71, 65, 73, 57, 74, 65, 64, 53, 67, 64, 80, 73, 93, 70, 64, 53, 72, 51, 67, 68, 57, 79, 49, 68, 66, 70, 56, 81, 74, 74, 73, 56, 46, 62, 51, 60, 133, 68, 81, 69, 58, 70, 71, 82, 55, 81, 58, 57, 65, 59, 59, 55, 76, 65, 78, 75, 57, 78, 46, 82, 76, 79, 57, 80, 71, 75, 51, 78, 48, 62, 79, 45, 69, 75, 58, 48, 100, 54, 61, 56, 61, 64, 87, 68, 73, 77, 79, 58, 74, 79, 45, 63, 70, 58, 61, 79, 68, 55, 67, 65, 56, 61, 55, 67, 53, 47, 55, 80, 68, 67, 84, 48, 62, 94, 63, 49, 50, 57, 62, 80, 62, 73, 61, 64, 68, 52, 38, 73, 79, 58, 69, 56, 78, 66, 78, 57, 61, 65, 45, 83, 61, 72, 63, 69, 44, 86, 89, 63, 90, 63, 77, 63, 102, 60, 61, 76, 67, 46, 76, 78, 68, 55, 63, 64, 59, 50, 62, 69, 62, 58, 107, 74, 68, 63, 102, 79, 66, 59, 55, 49, 74, 61, 86, 54, 62, 56, 55, 74, 88, 69, 52, 67, 61, 70, 65, 64, 77, 58, 43, 62, 72, 67, 43, 70, 89, 86, 58, 72, 57, 86, 65, 69, 63, 59, 82, 71, 89, 63, 57, 71, 85, 55, 66, 81, 52, 76, 52, 65, 68, 61, 67, 53, 75, 48, 78, 64, 64, 80, 60, 62, 49, 80, 60, 57, 68, 116, 55, 52, 58, 64, 47, 59, 68, 80, 72, 61, 54, 74, 56, 80, 50, 55, 60, 58, 65, 72, 56, 60, 74, 52, 77, 60, 61, 62, 70, 57, 59, 51, 53, 60, 84, 75, 80, 72, 63, 56, 55, 61, 47, 77, 58, 47, 87, 71, 67, 76, 51, 60, 102, 58, 64, 83, 44, 58, 63, 66, 53, 51, 85, 60, 68, 60, 74, 69, 88, 58, 91, 56, 68, 68, 52, 118, 82, 98, 68, 63, 53, 65, 77, 67, 89, 67, 74, 88, 68, 58, 63, 58, 64, 66, 74, 52, 53, 50, 80, 59, 40, 61, 77, 61, 56, 76, 85, 74, 83, 61, 67, 98, 66, 62, 57, 78, 69, 59, 165, 55, 65, 60, 89, 56, 60, 67, 69, 72, 77, 46, 65, 59, 57, 69, 54, 61, 57, 48, 55, 52, 79, 59, 62, 38, 63, 70, 68, 67, 58, 51, 87, 47, 64, 76, 63, 64, 60, 54, 82, 68, 52, 53, 71, 59, 57, 61, 54, 64, 51, 74, 79, 50, 65, 63, 69, 68, 65, 67, 134, 55, 54, 56, 57, 57, 54, 69, 75, 52, 66, 50, 68, 64, 54, 66, 65, 63, 45, 52, 54, 59, 63, 75, 70, 50, 86, 63, 64, 62, 67, 77, 87, 56, 83, 68, 56, 51, 92, 57, 65, 52, 61, 53, 65, 46, 51, 53, 55, 67, 68, 50, 70, 95, 53, 63, 65, 65, 72, 63, 66, 61, 74, 54, 54, 70, 83, 93, 51, 64, 62, 87, 86, 57, 58, 63, 82, 77, 62, 74, 70, 69, 92, 57, 65, 72, 47, 66, 96, 82, 69, 81, 62, 48, 75, 68, 50, 55, 79, 82, 95, 86, 62, 74, 91, 68, 72, 60, 65, 81, 56, 69, 65, 72, 58, 60, 77, 87, 56, 65, 59, 73, 61, 81, 69, 80, 50, 63, 55, 42, 58, 64, 44, 51, 66, 75, 58, 66, 64, 74, 66, 75, 73, 56, 97, 69, 63, 56, 66, 56, 64, 53, 58, 63, 58, 69, 72, 76, 64, 57, 52, 58, 63, 50, 56, 69, 58, 57, 64, 61, 66, 108, 62, 65, 71, 68, 53, 55, 58, 62, 71, 60, 62, 74, 59, 67, 67, 79, 82, 61, 90, 65, 73, 45, 70, 43, 64, 52, 58, 83, 67, 55, 60, 68, 58, 71, 61, 61, 58, 58, 89, 68, 58, 47, 53, 55, 67, 53, 79, 57, 71, 61, 53, 51, 88, 60, 51, 75, 75, 68, 74, 72, 68, 63, 58, 63, 69, 50, 77, 53, 83, 63, 75, 70, 47, 47, 53, 65, 66, 53, 77, 52, 53, 58, 57, 60, 67, 59, 55, 63, 80, 81, 63, 73, 73, 77, 70, 41, 58, 65, 86, 76, 82, 79, 68, 52, 47, 56, 71, 55, 69, 81, 62, 47, 58, 41, 67, 66, 49, 71, 49, 75, 72, 53, 76, 63, 91, 62, 67, 63, 67, 58, 78, 65, 63, 55, 59, 66, 57, 67, 56, 71, 63, 71, 50, 63, 95, 66, 70, 120, 90, 73, 53, 84, 82, 60, 71, 49, 59, 57, 106, 71, 57, 56, 116, 52, 66, 42, 62, 53, 48, 56, 61, 49, 66, 63, 67, 57, 81, 69, 93, 47, 53, 63, 63, 66, 56, 52, 53, 71, 56, 80, 53, 63, 41, 85, 53, 68, 61, 53, 71, 61, 75, 60, 56, 58, 58, 62, 68, 59, 46, 63, 61, 77, 84, 65, 70, 87, 56, 62, 64, 63, 91, 38, 51, 66, 65, 71, 58, 53, 67, 87, 59, 69, 62, 78, 57, 48, 56, 101, 61, 72, 48, 56, 68, 66, 78, 86, 68, 61, 69, 68, 52, 69, 67, 45, 57, 71, 54, 67, 60, 64, 87, 63, 48, 101, 63, 42, 67, 61, 68, 63, 78, 66, 54, 76, 53, 64, 87, 73, 74, 58, 51, 66, 67, 63, 64, 56, 56, 64, 61, 126, 70, 48, 66, 59, 76, 58, 63, 65, 68, 61, 101, 53, 61, 54, 64, 60, 65, 47, 67, 78, 50, 59, 93, 61, 73, 63, 55, 69, 67, 55, 62, 91, 75, 58, 53, 59, 72, 56, 66, 52, 58, 48, 87, 51, 58, 56, 69, 84, 51, 61, 60, 83, 49, 62, 51, 60, 57, 54, 68, 55, 65, 133, 70, 78, 56, 74, 60, 63, 95, 69, 97, 64, 61, 58, 58, 49, 61, 69, 62, 73, 62, 66, 59, 69, 109, 36, 73, 55, 49, 64, 75, 76, 53, 81, 63, 64, 66, 81, 49, 63, 92, 74, 87, 76, 50, 69, 60, 60, 47, 66, 55, 78, 44, 56, 60, 89, 58, 59, 65, 80, 86, 66, 56, 67, 66, 87, 68, 54, 105, 63, 62, 49, 68, 87, 81, 76, 70, 50, 62, 64, 58, 56, 54, 59, 72, 62, 70, 50, 66, 79, 73, 55, 64, 54, 48, 61, 82, 48, 64, 63, 99, 49, 62, 55, 62, 90, 85, 55, 57, 61, 69, 112, 82, 72, 64, 57, 63, 68, 58, 59, 49, 49, 50, 81, 60, 64, 59, 73, 55, 65, 75, 90, 60, 72, 84, 63, 74, 72, 54, 58, 67, 79, 88, 47, 48, 75, 67, 50, 97, 51, 49, 67, 63, 68, 92, 63, 58, 90, 64, 77, 74, 92, 64, 59, 69, 67, 56, 52, 67, 81, 87, 71, 49, 54, 59, 53, 70, 57, 56, 71, 57, 67, 57, 73, 61, 60, 46, 60, 73, 45, 92, 85, 81, 66, 72, 57, 61, 66, 84, 66, 62, 54, 56, 84, 68, 73, 56, 66, 97, 63, 60, 66, 81, 66, 60, 63, 52, 79, 85, 58, 49, 87, 65, 88, 56, 56, 54, 77, 110, 59, 75, 71, 48, 84, 58, 78, 61, 48, 59, 58, 54, 93, 111, 76, 82, 56, 72, 62, 96, 67, 67, 57, 47, 59, 76, 60, 54, 70, 48, 62, 32, 47, 70, 61, 48, 60, 61, 100, 77, 77, 54, 62, 80, 72, 66, 76, 71, 83, 61, 70, 92, 50, 91, 63, 76, 88, 76, 147, 87, 74, 63, 94, 55, 59, 56, 87, 71, 59, 58, 54, 61, 67, 60, 70, 63, 71, 51, 69, 99, 56, 50, 69, 58, 59, 53, 54, 78, 60, 61, 54, 61, 47, 66, 78, 61, 87, 52, 57, 74, 61, 63, 68, 67, 76, 75, 51, 54, 62, 86, 77, 52, 69, 67, 67, 88, 70, 69, 59, 74, 72, 107, 66, 52, 65, 121, 56, 55, 53, 75, 69, 72, 74, 54, 64, 67, 69, 51, 75, 63, 58, 66, 54, 57, 72, 56, 81, 119, 50, 91, 76, 81, 58, 60, 110, 68, 82, 58, 79, 61, 78, 69, 61, 77, 67, 62, 60, 55, 58, 70, 81, 54, 71, 65, 59, 76, 56, 67, 69, 98, 58, 64, 52, 71, 68, 61, 89, 58, 55, 76, 75, 60, 56, 66, 58, 79, 55, 57, 88, 47, 64, 92, 55, 61, 54, 60, 74, 93, 76, 58, 57, 86, 60, 67, 77, 91, 65, 54, 56, 51, 70, 64, 64, 64, 81, 47, 70, 66, 51, 52, 51, 70, 55, 55, 56, 53, 81, 54, 89, 59, 62, 77, 71, 92, 63, 60, 52, 74, 85, 56, 64, 53, 57, 66, 64, 63, 71, 52, 58, 78, 58, 51, 93, 57, 103, 65, 61, 63, 51, 60, 76, 62, 69, 69, 80, 97, 92, 51, 67, 56, 69, 67, 60, 68, 58, 74, 69, 83, 80, 62, 83, 57, 53, 73, 53, 77, 56, 61, 45, 55, 55, 69, 58, 60, 52, 83, 98, 53, 57, 75, 71, 45, 102, 60, 57, 66, 59, 44, 54, 73, 66, 56, 47, 63, 75, 76, 70, 72, 65, 61, 46, 67, 55, 61, 74, 77, 68, 53, 56, 62, 68, 66, 75, 62, 53, 51, 65, 66, 57, 53, 75, 66, 56, 86, 51, 59, 62, 103, 57, 62, 59, 60, 95, 56, 70, 66, 63, 67, 69, 50, 61, 67, 66, 56, 67, 64, 56, 60, 79, 59, 69, 82, 82, 58, 72, 57, 68, 55, 52, 56, 69, 58, 50, 75, 48, 70, 64, 75, 66, 70, 57, 76, 57, 62, 48, 82, 75, 67, 102, 58, 60, 52, 49, 84, 41, 77, 62, 54, 64, 52, 67, 58, 66, 78, 79, 53, 52, 93, 55, 61, 42, 68, 75, 54, 64, 66, 50, 67, 51, 54, 59, 55, 50, 71, 61, 62, 77, 71, 66, 66, 57, 62, 60, 71, 67, 68, 50, 62, 49, 56, 53, 51, 58, 77, 70, 86, 93, 54, 53, 71, 72, 53, 68, 54, 55, 70, 55, 62, 136, 54, 56, 64, 71, 90, 69, 71, 68, 57, 63, 64, 82, 54, 62, 68, 54, 91, 69, 66, 63, 65, 65, 83, 88, 80, 63, 60, 49, 64, 74, 63, 51, 74, 97, 65, 46, 55, 62, 70, 66, 65, 62, 74, 68, 45, 70, 75, 77, 48, 54, 65, 58, 66, 57, 65, 60, 65, 93, 48, 56, 58, 61, 61, 69, 99, 69, 54, 67, 61, 55, 49, 71, 65, 45, 69, 86, 97, 73, 65, 63, 75, 64, 60, 39, 56, 65, 69, 54, 53, 55, 74, 59, 70, 77, 60, 52, 92, 54, 56, 62, 59, 66, 65, 56, 57, 86, 51, 67, 57, 83, 65, 58, 57, 74, 73, 71, 57, 63, 74, 65, 75, 58, 61, 78, 66, 69, 67, 65, 90, 58, 72, 68, 68, 50, 70, 48, 63, 84, 45, 52, 68, 74, 47, 56, 89, 54, 90, 68, 70, 55, 58, 52, 56, 58, 70, 65, 51, 58, 59, 65, 43, 66, 70, 64, 60, 51, 97, 86, 61, 83, 67, 64, 55, 65, 70, 68, 108, 92, 47, 45, 80, 89, 73, 74, 79, 58, 72, 35, 68, 48, 61, 76, 67, 50, 79, 42, 63, 71, 54, 68, 65, 55, 70, 71, 61, 93, 68, 81, 101, 55, 65, 78, 61, 57, 75, 71, 68, 58, 61, 64, 64, 65, 69, 49, 52, 63, 56, 60, 70, 62, 70, 78, 56, 91, 63, 57, 62, 51, 49, 60, 61, 61, 71, 59, 66, 61, 56, 70, 53, 100, 73, 70, 50, 71, 71, 135, 45, 67, 51, 76, 58, 69, 81, 64, 51, 67, 75, 61, 61, 77, 63, 60, 61, 52, 66, 55, 69, 64, 75, 51, 60, 60, 56, 60, 44, 56, 75, 68, 71, 61, 53, 39, 75, 92, 72, 69, 59, 78, 86, 58, 55, 74, 64, 44, 66, 91, 57, 110, 69, 79, 78, 56, 51, 56, 44, 90, 64, 94, 72, 61, 53, 61, 70, 60, 58, 63, 38, 73, 118, 60, 73, 45, 66, 58, 56, 63, 60, 58, 53, 58, 91, 73, 80, 65, 61, 76, 66, 84, 50, 48, 55, 76, 65, 70, 68, 66, 68, 110, 52, 52, 62, 55, 56, 52, 57, 48, 66, 88, 52, 70, 65, 57, 88, 58, 57, 70, 64, 61, 61, 79, 68, 68, 83, 64, 51, 62, 63, 54, 56, 76, 51, 67, 68, 70, 57, 70, 58, 54, 50, 72, 68, 61, 70, 73, 57, 84, 54, 66, 54, 86, 61, 57, 71, 60, 63, 87, 88, 94, 48, 73, 69, 116, 79, 81, 91, 63, 53, 89, 74, 60, 80, 66, 76, 72, 64, 59, 48, 65, 62, 60, 82, 54, 71, 61, 58, 60, 57, 63, 80, 87, 68, 62, 50, 61, 79, 49, 67, 57, 60, 72, 57, 54, 60, 63, 101, 49, 110, 72, 62, 73, 66, 52, 90, 53, 91, 68, 57, 60, 69, 79, 92, 78, 47, 75, 70, 96, 58, 61, 59, 70, 133, 64, 62, 81, 80, 62, 66, 74, 55, 70, 72, 64, 74, 50, 46, 87, 52, 82, 63, 51, 60, 72, 68, 68, 70, 56, 65, 54, 60, 100, 88, 50, 81, 55, 67, 63, 62, 62, 61, 90, 56, 65, 59, 54, 62, 59, 54, 61, 53, 122, 49, 64, 75, 81, 111, 88, 64, 85, 67, 69, 59, 79, 62, 91, 75, 40, 61, 59, 54, 62, 73, 71, 72, 67, 48, 54, 77, 57, 53, 47, 72, 59, 52, 51, 57, 60, 61, 68, 47, 89, 74, 80, 64, 59, 71, 63, 78, 59, 62, 87, 55, 54, 77, 55, 63, 59, 73, 67, 90, 72, 56, 83, 47, 157, 78, 66, 51, 75, 92, 70, 93, 48, 49, 68, 55, 83, 71, 67, 63, 64, 65, 60, 71, 60, 100, 73, 59, 63, 67, 51, 50, 88, 69, 78, 72, 64, 66, 58, 64, 56, 73, 60, 54, 78, 81, 53, 65, 59, 73, 62, 67, 93, 47, 74, 63, 72, 78, 60, 51, 74, 48, 77, 48, 58, 62, 81, 55, 62, 73, 68, 35, 68, 50, 61, 84, 78, 62, 55, 77, 70, 53, 55, 47, 51, 68, 66, 66, 76, 55, 64, 70, 68, 82, 65, 82, 58, 87, 75, 91, 99, 55, 47, 52, 63, 77, 53, 65, 50, 40, 58, 82, 58, 66, 60, 76, 76, 66, 64, 61, 94, 55, 60, 78, 53, 55, 62, 43, 69, 71, 67, 53, 88, 53, 47, 76, 71, 53, 51, 65, 96, 64, 59, 72, 63, 58, 69, 76, 69, 66, 65, 57, 43, 68, 67, 75, 75, 57, 53, 82, 63, 66, 62, 48, 58, 50, 66, 62, 91, 54, 58, 84, 57, 57, 79, 69, 52, 92, 53, 63, 62, 57, 68, 56, 55, 68, 57, 54, 62, 77, 65, 82, 57, 64, 79, 65, 65, 61, 81, 59, 60, 52, 46, 58, 56, 72, 79, 65, 70, 54, 58, 57, 64, 98, 61, 46, 62, 88, 53, 78, 70, 62, 64, 47, 47, 45, 72, 48, 70, 56, 57, 36, 53, 57, 89, 58, 100, 70, 63, 55, 79, 54, 81, 60, 57, 76, 71, 74, 58, 49, 83, 59, 61, 67, 52, 55, 57, 76, 107, 85, 68, 50, 57, 72, 79, 50, 73, 57, 76, 53, 79, 56, 62, 83, 49, 52, 53, 60, 55, 77, 63, 66, 62, 62, 50, 49, 50, 49, 67, 46, 74, 78, 65, 71, 67, 75, 56, 49, 59, 61, 73, 81, 60, 49, 57, 64, 67, 97, 95, 58, 43, 66, 65, 71, 62, 80, 60, 87, 121, 73, 55, 52, 64, 74, 90, 53, 46, 60, 58, 60, 66, 56, 64, 69, 54, 72, 58, 63, 46, 60, 75, 64, 57, 56, 69, 68, 78, 98, 60, 70, 78, 55, 70, 64, 80, 76, 45, 60, 94, 69, 67, 68, 56, 88, 66, 59, 51, 71, 68, 75, 71, 48, 49, 55, 49, 59, 50, 58, 100, 70, 66, 58, 62, 64, 75, 63, 78, 42, 53, 54, 70, 70, 69, 93, 67, 63, 57, 99, 62, 67, 58, 65, 79, 64, 68, 77, 63, 71, 53, 60, 78, 51, 74, 78, 60, 69, 71, 70, 76, 63, 57, 68, 56, 72, 76, 54, 69, 73, 55, 63, 75, 67, 52, 77, 73, 80, 67, 62, 56, 64, 67, 56, 76, 52, 60, 57, 70, 58, 56, 63, 69, 56, 54, 62, 71, 67, 65, 99, 84, 67, 59, 49, 63, 57, 55, 59, 65, 62, 67, 48, 53, 91, 82, 73, 61, 63, 61, 49, 54, 60, 58, 95, 48, 47, 56, 72, 64, 48, 68, 115, 67, 59, 68, 63, 73, 80, 75, 70, 66, 51, 102, 56, 66, 55, 58, 61, 76, 77, 54, 69, 78, 61, 57, 73, 62, 100, 77, 57, 78, 64, 54, 71, 77, 73, 78, 77, 67, 68, 64, 72, 74, 61, 56, 70, 71, 114, 61, 72, 75, 59, 60, 54, 58, 63, 55, 50, 49, 60, 53, 94, 88, 69, 67, 66, 69, 84, 72, 64, 58, 98, 58, 67, 53, 81, 70, 62, 66, 52, 71, 104, 49, 66, 58, 92, 54, 56, 56, 57, 72, 72, 69, 82, 55, 64, 56, 56, 73, 82, 57, 55, 73, 42, 60, 59, 60, 65, 62, 65, 63, 68, 66, 77, 72, 54, 54, 56, 93, 75, 55, 62, 71, 105, 56, 77, 73, 48, 67, 88, 72, 67, 71, 68, 61, 70, 100, 77, 62, 55, 69, 68, 72, 67, 63, 80, 74, 61, 100, 35, 70, 80, 70, 84, 76, 49, 74, 55, 44, 57, 46, 57, 50, 54, 64, 54, 67, 60, 83, 60, 49, 60, 56, 101, 65, 62, 64, 74, 55, 62, 55, 44, 78, 51, 66, 61, 57, 85, 51, 53, 53, 54, 125, 67, 61, 74, 54, 59, 52, 74, 59, 69, 59, 77, 65, 46, 63, 60, 57, 87, 50, 70, 64, 73, 60, 89, 55, 46, 66, 61, 80, 50, 67, 84, 63, 61, 53, 65, 53, 68, 67, 58, 62, 78, 58, 97, 66, 53, 68, 61, 76, 57, 71, 65, 131, 66, 73, 53, 81, 63, 63, 55, 60, 61, 129, 74, 70, 56, 56, 63, 74, 68, 42, 68, 75, 75, 55, 70, 55, 76, 55, 71, 60, 81, 55, 42, 44, 101, 83, 85, 57, 88, 86, 67, 55, 57, 69, 58, 60, 79, 72, 77, 67, 60, 105, 86, 68, 63, 65, 47, 79, 60, 55, 58, 80, 73, 55, 56, 76, 93, 78, 80, 95, 55, 57, 75, 60, 65, 54, 75, 59, 62, 75, 52, 63, 68, 66, 52, 56, 57, 49, 51, 64, 62, 66, 58, 54, 55, 74, 45, 68, 49, 92, 74, 39, 71, 48, 62, 62, 72, 79, 58, 65, 74, 91, 47, 67, 68, 86, 51, 44, 84, 71, 54, 119, 51, 61, 76, 55, 52, 61, 65, 72, 62, 45, 67, 73, 53, 45, 61, 45, 70, 57, 72, 88, 84, 55, 72, 62, 67, 72, 56, 47, 53, 68, 57, 67, 77, 61, 60, 63, 97, 79, 71, 60, 61, 67, 56, 71, 60, 67, 58, 73, 61, 50, 92, 82, 64, 50, 53, 67, 76, 53, 71, 67, 43, 65, 86, 65, 78, 80, 73, 75, 64, 59, 71, 59, 63, 89, 79, 73, 93, 75, 92, 51, 53, 76, 50, 49, 74, 54, 60, 84, 65, 68, 54, 73, 60, 50, 48, 49, 52, 57, 57, 70, 62, 60, 69, 59, 53, 64, 73, 67, 59, 69, 68, 66, 79, 64, 63, 86, 114, 75, 60, 52, 68, 78, 66, 63, 42, 67, 58, 57, 67, 80, 62, 70, 53, 55, 64, 82, 63, 59, 62, 69, 52, 77, 83, 46, 67, 53, 58, 62, 64, 70, 66, 87, 69, 78, 54, 70, 65, 71, 54, 62, 70, 62, 69, 63, 61, 59, 65, 66, 64, 62, 89, 69, 58, 106, 50, 141, 60, 70, 64, 69, 59, 68, 43, 67, 67, 55, 58, 56, 56, 65, 66, 48, 50, 54, 56, 75, 61, 49, 67, 69, 53, 60, 58, 67, 53, 78, 63, 64, 63, 58, 64, 75, 71, 61, 64, 57, 74, 60, 64, 83, 58, 66, 69, 43, 64, 73, 64, 65, 80, 60, 73, 55, 82, 36, 69, 72, 70, 72, 71, 78, 59, 58, 68, 58, 57, 50, 80, 64, 63, 79, 84, 46, 54, 66, 51, 77, 64, 46, 66, 69, 65, 75, 64, 82, 103, 67, 99, 65, 72, 66, 53, 69, 78, 60, 62, 80, 59, 70, 58, 59, 55, 61, 70, 84, 68, 73, 70, 48, 82, 61, 64, 62, 65, 44, 54, 59, 62, 68, 43, 56, 71, 65, 63, 58, 63, 58, 71, 80, 53, 61, 45, 107, 64, 66, 61, 49, 64, 62, 100, 67, 52, 82, 55, 62, 74, 56, 67, 60, 64, 59, 61, 51, 64, 66, 55, 52, 54, 50, 50, 85, 53, 66, 71, 65, 59, 48, 68, 87, 75, 65, 62, 62, 40, 90, 63, 55, 74, 59, 57, 64, 74, 61, 59, 58, 58, 81, 67, 76, 52, 54, 60, 68, 59, 57, 67, 61, 78, 59, 72, 66, 65, 51, 74, 65, 72, 80, 63, 57, 60, 74, 74, 59, 55, 63, 67, 72, 68, 51, 81, 46, 73, 66, 74, 63, 68, 97, 64, 58, 84, 66, 68, 49, 52, 65, 55, 74, 74, 76, 73, 59, 60, 62, 49, 57, 55, 59, 55, 70, 58, 102, 81, 65, 66, 65, 62, 63, 58, 76, 65, 73, 65, 62, 56, 67, 61, 58, 55, 57, 59, 58, 60, 50, 54, 49, 63, 61, 74, 55, 61, 72, 64, 54, 74, 64, 56, 71, 53, 65, 58, 75, 53, 48, 79, 79, 79, 55, 54, 84, 89, 108, 58, 67, 76, 70, 60, 44, 71, 62, 61, 66, 60, 81, 58, 46, 65, 76, 82, 63, 55, 66, 65, 52, 77, 57, 97, 56, 58, 62, 72, 73, 57, 81, 93, 65, 63, 69, 61, 56, 106, 57, 66, 50, 70, 42, 56, 85, 78, 67, 72, 78, 85, 48, 58, 61, 56, 69, 59, 56, 75, 81, 104, 70, 55, 53, 46, 68, 57, 59, 59, 62, 52, 48, 67, 43, 65, 61, 65, 56, 72, 55, 80, 67, 75, 70, 68, 67, 66, 58, 59, 84, 63, 65, 57, 65, 64, 59, 76, 104, 60, 79, 88, 67, 64, 71, 71, 60, 115, 57, 64, 97, 81, 65, 60, 59, 65, 89, 58, 64, 65, 60, 83, 61, 46, 61, 72, 65, 62, 63, 57, 49, 51, 70, 70, 83, 70, 57, 72, 54, 79, 54, 61, 54, 55, 65, 74, 61, 40, 66, 101, 62, 56, 66, 74, 57, 71, 56, 62, 74, 63, 50, 44, 79, 72, 98, 61, 81, 79, 64, 56, 73, 50, 59, 70, 74, 65, 57, 69, 59, 57, 59, 88, 68, 72, 92, 52, 59, 61, 80, 55, 68, 45, 115, 49, 65, 57, 47, 74, 58, 62, 49, 55, 60, 69, 61, 85, 55, 103, 57, 58, 81, 71, 54, 52, 51, 57, 59, 64, 79, 66, 68, 48, 50, 62, 67, 61, 59, 71, 68, 64, 97, 63, 61, 56, 58, 57, 60, 52, 50, 57, 53, 91, 57, 77, 70, 113, 82, 45, 70, 51, 58, 66, 56, 63, 79, 69, 53, 69, 86, 52, 78, 76, 63, 55, 63, 91, 57, 75, 54, 54, 60, 61, 71, 59, 76, 61, 82, 63, 54, 59, 63, 62, 62, 66, 64, 57, 72, 59, 50, 60, 56, 59, 62, 60, 66, 51, 63, 77, 79, 76, 68, 62, 66, 80, 72, 53, 68, 78, 71, 67, 68, 51, 80, 61, 59, 61, 100, 81, 64, 53, 59, 59, 72, 68, 56, 65, 72, 69, 86, 56, 76, 77, 70, 56, 47, 60, 56, 62, 60, 66, 64, 66, 48, 58, 55, 66, 71, 67, 74, 51, 74, 52, 65, 63, 76, 64, 63, 65, 65, 80, 60, 49, 60, 75, 72, 53, 79, 74, 66, 57, 57, 71, 126, 45, 74, 71, 67, 71, 61, 60, 59, 66, 62, 82, 69, 65, 53, 53, 69, 54, 56, 65, 58, 74, 46, 85, 73, 73, 62, 66, 62, 54, 62, 65, 79, 63, 64, 69, 58, 55, 46, 58, 83, 63, 76, 67, 88, 72, 69, 60, 51, 67, 54, 69, 65, 59, 45, 61, 57, 57, 59, 60, 72, 62, 104, 82, 93, 58, 78, 67, 54, 58, 61, 66, 66, 53, 70, 60, 76, 64, 58, 54, 78, 79, 59, 62, 65, 133, 50, 77, 69, 55, 79, 60, 54, 60, 50, 49, 65, 57, 50, 66, 66, 65, 81, 65, 92, 82, 69, 61, 64, 51, 59, 52, 66, 74, 69, 63, 74, 61, 55, 65, 52, 64, 60, 52, 50, 51, 82, 70, 62, 102, 46, 51, 56, 53, 65, 57, 75, 61, 55, 51, 66, 63, 83, 50, 53, 82, 59, 57, 49, 61, 84, 83, 56, 54, 63, 69, 52, 58, 60, 76, 76, 83, 62, 57, 57, 65, 74, 63, 71, 55, 49, 61, 110, 83, 48, 87, 63, 55, 66, 57, 66, 52, 62, 86, 89, 65, 65, 52, 74, 67, 64, 96, 105, 74, 56, 85, 60, 57, 68, 39, 76, 57, 71, 55, 64, 49, 58, 58, 55, 76, 79, 72, 59, 49, 64, 54, 56, 58, 75, 64, 70, 44, 65, 70, 45, 70, 75, 57, 67, 58, 67, 55, 70, 64, 73, 78, 60, 55, 40, 83, 72, 50, 69, 57, 60, 56, 102, 63, 71, 72, 74, 81, 66, 69, 64, 69, 51, 68, 60, 61, 56, 55, 60, 63, 69, 73, 80, 96, 60, 90, 64, 72, 60, 59, 71, 73, 64, 65, 60, 52, 59, 66, 57, 79, 91, 60, 62, 54, 80, 116, 46, 56, 59, 73, 66, 64, 75, 85, 56, 67, 65, 61, 54, 62, 70, 43, 47, 46, 68, 60, 86, 85, 54, 70, 66, 69, 53, 52, 58, 62, 65, 56, 57, 73, 63, 75, 59, 71, 58, 67, 59, 59, 71, 79, 70, 59, 69, 67, 55, 63, 62, 59, 52, 95, 82, 59, 68, 69, 153, 61, 66, 59, 62, 63, 94, 73, 79, 61, 53, 69, 71, 71, 76, 60, 65, 56, 61, 54, 70, 104, 60, 65, 53, 65, 64, 62, 66, 64, 59, 65, 63, 69, 87, 59, 61, 57, 46, 64, 54, 77, 47, 51, 65, 93, 65, 59, 61, 61, 91, 74, 52, 60, 58, 69, 86, 63, 49, 56, 44, 57, 101, 73, 64, 101, 68, 69, 47, 64, 59, 72, 58, 66, 71, 83, 59, 63, 80, 52, 52, 56, 52, 89, 52, 50, 57, 64, 90, 99, 49, 73, 71, 67, 55, 69, 55, 60, 57, 44, 58, 60, 70, 55, 66, 74, 75, 68, 49, 58, 64, 63, 63, 58, 71, 63, 64, 65, 64, 53, 56, 116, 55, 64, 69, 104, 53, 51, 72, 63, 53, 68, 57, 73, 65, 69, 100, 65, 79, 76, 68, 78, 83, 89, 66, 56, 66, 74, 46, 78, 52, 69, 72, 90, 55, 76, 62, 59, 69, 70, 68, 72, 79, 68, 64, 67, 60, 74, 63, 78, 81, 71, 65, 62, 55, 64, 54, 64, 97, 47, 66, 63, 53, 66, 67, 75, 68, 62, 63, 57, 66, 79, 52, 48, 58, 60, 59, 49, 70, 73, 53, 79, 63, 58, 63, 78, 86, 62, 55, 67, 79, 56, 65, 82, 59, 66, 99, 80, 60, 56, 73, 80, 53, 72, 61, 89, 73, 71, 51, 62, 85, 59, 74, 69, 53, 63, 70, 63, 62, 44, 67, 65, 72, 72, 77, 71, 47, 55, 62, 61, 69, 71, 79, 46, 89, 75, 63, 55, 47, 67, 57, 63, 51, 45, 53, 43, 49, 69, 66, 54, 59, 42, 88, 63, 56, 61, 58, 61, 70, 66, 77, 65, 49, 78, 48, 41, 50, 54, 56, 80, 69, 89, 73, 65, 60, 69, 66, 70, 66, 79, 65, 82, 62, 77, 101, 42, 69, 65, 58, 50, 77, 84, 56, 67, 88, 60, 55, 78, 78, 73, 97, 76, 63, 79, 68, 62, 54, 69, 59, 70, 75, 37, 55, 51, 64, 71, 70, 62, 65, 54, 51, 75, 54, 86, 83, 54, 58, 73, 61, 53, 66, 57, 75, 72, 78, 65, 67, 57, 65, 90, 57, 67, 59, 43, 68, 102, 60, 83, 63, 59, 62, 58, 63, 59, 78, 64, 61, 75, 52, 78, 65, 63, 61, 65, 55, 95, 75, 61, 71, 72, 90, 49, 88, 95, 63, 65, 84, 73, 43, 61, 85, 62, 70, 52, 49, 70, 71, 73, 71, 62, 59, 74, 60, 54, 92, 61, 60, 58, 74, 63, 113, 56, 69, 74, 55, 127, 55, 49, 58, 63, 75, 51, 83, 62, 56, 45, 62, 66, 78, 103, 56, 63, 65, 69, 59, 76, 66, 62, 41, 50, 95, 61, 55, 105, 75, 77, 80, 60, 56, 58, 54, 60, 76, 51, 65, 66, 57, 90, 79, 68, 63, 67, 42, 62, 70, 43, 61, 58, 62, 58, 64, 84, 82, 59, 61, 106, 64, 55, 75, 66, 57, 63, 120, 62, 58, 59, 56, 76, 68, 99, 57, 52, 77, 51, 74, 66, 66, 74, 52, 53, 57, 102, 63, 62, 55, 53, 61, 77, 89, 61, 58, 61, 59, 71, 57, 58, 67, 49, 55, 56, 42, 74, 44, 58, 77, 90, 49, 62, 55, 48, 60, 62, 81, 59, 70, 85, 53, 58, 55, 104, 62, 53, 41, 65, 81, 76, 53, 66, 66, 85, 46, 60, 57, 55, 52, 73, 72, 49, 63, 82, 62, 57, 51, 50, 60, 62, 80, 68, 70, 74, 83, 54, 51, 58, 71, 58, 54, 71, 68, 64, 62, 59, 57, 57, 61, 68, 75, 79, 64, 64, 61, 49, 70, 67, 54, 60, 42, 87, 55, 55, 66, 63, 64, 73, 74, 68, 56, 62, 54, 59, 84, 83, 64, 58, 70, 57, 60, 69, 64, 67, 80, 65, 67, 67, 60, 77, 64, 67, 46, 78, 62, 71, 61, 61, 66, 53, 73, 47, 49, 66, 63, 65, 86, 56, 62, 52, 42, 47, 71, 54, 63, 54, 55, 49, 49, 71, 58, 57, 65, 71, 52, 76, 73, 75, 71, 53, 94, 102, 62, 67, 68, 64, 56, 63, 66, 58, 63, 105, 70, 49, 36, 64, 73, 68, 67, 65, 57, 53, 70, 79, 46, 63, 47, 57, 78, 72, 62, 78, 52, 85, 66, 51, 62, 63, 49, 65, 80, 57, 60, 84, 72, 70, 56, 50, 84, 55, 66, 91, 55, 62, 57, 57, 63, 57, 46, 52, 80, 55, 127, 87, 102, 50, 61, 57, 68, 61, 55, 90, 76, 57, 52, 58, 54, 76, 47, 84, 77, 62, 71, 69, 53, 126, 68, 64, 59, 76, 58, 53, 68, 58, 66, 59, 73, 60, 54, 81, 60, 67, 92, 73, 65, 63, 59, 63, 79, 63, 73, 59, 71, 79, 59, 54, 76, 50, 61, 66, 56, 71, 60, 54, 77, 67, 80, 111, 63, 67, 52, 64, 56, 56, 89, 59, 77, 59, 59, 56, 70, 61, 94, 62, 68, 52, 57, 79, 54, 65, 82, 68, 58, 63, 74, 71, 63, 47, 64, 56, 46, 68, 59, 82, 52, 81, 87, 47, 75, 108, 58, 63, 96, 70, 63, 64, 82, 74, 59, 65, 83, 65, 65, 56, 95, 65, 50, 60, 75, 52, 60, 65, 105, 68, 75, 71, 62, 62, 73, 64, 40, 60, 50, 67, 51, 54, 79, 65, 64, 104, 77, 109, 79, 55, 56, 56, 73, 66, 59, 74, 48, 49, 61, 55, 74, 65, 73, 75, 57, 78, 58, 51, 79, 60, 87, 88, 66, 45, 60, 58, 49, 61, 55, 67, 66, 80, 49, 66, 54, 75, 67, 68, 72, 53, 71, 75, 67, 52, 61, 78, 63, 58, 62, 68, 89, 50, 55, 75, 70, 63, 50, 66, 51, 82, 50, 52, 69, 54, 69, 72, 62, 57, 79, 53, 87, 52, 82, 58, 62, 120, 102, 45, 41, 58, 86, 47, 76, 57, 63, 51, 102, 68, 65, 60, 94, 45, 86, 71, 70, 65, 63, 80, 63, 62, 84, 58, 62, 53, 69, 67, 81, 79, 69, 72, 47, 48, 48, 65, 51, 63, 45, 53, 55, 63, 114, 64, 75, 79, 65, 46, 105, 52, 80, 79, 52, 71, 110, 51, 145, 67, 72, 58, 62, 74, 53, 61, 73, 66, 67, 62, 50, 62, 88, 76, 55, 54, 57, 66, 76, 75, 57, 59, 53, 67, 45, 54, 60, 55, 91, 68, 60, 45, 54, 78, 83, 68, 52, 60, 60, 84, 37, 55, 55, 69, 75, 83, 67, 54, 73, 72, 64, 63, 58, 56, 75, 58, 70, 56, 58, 97, 51, 79, 60, 45, 69, 56, 89, 70, 76, 61, 67, 66, 50, 72, 49, 62, 60, 52, 61, 63, 56, 84, 53, 53, 52, 65, 97, 114, 73, 63, 67, 59, 65, 56, 62, 83, 84, 54, 65, 56, 75, 58, 94, 59, 54, 65, 85, 39, 65, 67, 69, 103, 56, 38, 69, 56, 54, 58, 73, 104, 58, 69, 61, 93, 71, 50, 58, 68, 78, 70, 82, 64, 58, 81, 81, 74, 74, 68, 70, 78, 59, 89, 77, 57, 74, 45, 66, 53, 84, 74, 59, 51, 55, 91, 63, 57, 60, 53, 58, 66, 76, 54, 53, 79, 47, 83, 58, 70, 68, 54, 67, 60, 62, 59, 58, 47, 78, 56, 69, 65, 64, 64, 59, 82, 46, 65, 78, 82, 50, 60, 58, 52, 58, 60, 54, 59, 83, 74, 79, 65, 59, 64, 58, 69, 102, 66, 74, 79, 83, 52, 68, 86, 75, 55, 78, 51, 49, 60, 67, 52, 57, 73, 69, 61, 68, 68, 59, 72, 91, 64, 45, 63, 59, 54, 53, 43, 59, 55, 56, 64, 52, 62, 63, 91, 60, 70, 56, 54, 65, 49, 75, 75, 74, 71, 54, 57, 77, 55, 74, 91, 61, 80, 60, 59, 63, 62, 60, 65, 53, 43, 60, 65, 67, 59, 56, 79, 69, 60, 74, 74, 83, 81, 95, 64, 61, 72, 59, 54, 73, 62, 57, 66, 51, 54, 55, 68, 75, 58, 58, 58, 57, 44, 105, 60, 62, 62, 61, 61, 57, 74, 77, 68, 91, 73, 58, 54, 57, 62, 74, 75, 61, 56, 54, 52, 74, 55, 85, 78, 55, 76, 56, 62, 57, 72, 66, 73, 66, 75, 71, 90, 67, 102, 45, 52, 64, 45, 65, 73, 69, 58, 49, 63, 62, 62, 65, 57, 61, 59, 71, 66, 63, 56, 77, 85, 58, 60, 66, 65, 55, 59, 85, 70, 59, 91, 53, 59, 67, 60, 69, 63, 59, 52, 59, 52, 85, 55, 51, 75, 77, 75, 71, 69, 52, 53, 84, 63, 68, 43, 57, 68, 85, 98, 82, 67, 64, 59, 79, 69, 65, 73, 53, 64, 72, 71, 64, 50, 87, 70, 71, 58, 57, 56, 57, 96, 59, 65, 61, 61, 76, 64, 72, 61, 49, 53, 53, 56, 65, 79, 61, 51, 59, 48, 73, 47, 48, 73, 56, 55, 73, 51, 68, 68, 94, 73, 51, 57, 71, 66, 67, 70, 70, 65, 60, 52, 47, 55, 94, 80, 51, 55, 91, 58, 65, 78, 62, 72, 48, 45, 70, 70, 65, 53, 55, 113, 96, 72, 73, 62, 65, 44, 76, 69, 83, 54, 71, 80, 81, 61, 57, 60, 49, 73, 68, 64, 46, 90, 50, 83, 67, 98, 60, 65, 75, 68, 53, 56, 53, 57, 64, 48, 65, 58, 78, 70, 50, 39, 59, 53, 62, 55, 53, 76, 72, 74, 74, 70, 75, 64, 58, 60, 87, 46, 73, 109, 52, 73, 63, 112, 63, 73, 72, 76, 61, 65, 63, 52, 75, 53, 59, 58, 56, 61, 73, 93, 57, 64, 84, 92, 56, 64, 54, 66, 78, 82, 80, 64, 64, 74, 74, 52, 63, 95, 69, 70, 54, 58, 80, 59, 81, 87, 59, 67, 64, 65, 72, 93, 50, 72, 55, 69, 73, 50, 56, 55, 72, 60, 59, 56, 53, 59, 65, 56, 52, 66, 71, 58, 67, 75, 73, 58, 49, 49, 60, 66, 59, 49, 63, 71, 55, 73, 59, 54, 62, 72, 64, 90, 60, 62, 63, 68, 55, 55, 61, 57, 50, 61, 73, 58, 60, 59, 87, 93, 72, 61, 53, 48, 75, 54, 62, 57, 47, 72, 56, 59, 69, 76, 76, 65, 95, 55, 76, 77, 82, 43, 132, 74, 74, 67, 69, 68, 67, 69, 69, 60, 59, 84, 66, 56, 65, 82, 55, 54, 67, 63, 69, 52, 70, 68, 53, 54, 61, 62, 140, 61, 59, 66, 75, 84, 71, 75, 59, 61, 67, 73, 55, 55, 43, 82, 53, 76, 69, 72, 65, 61, 50, 69, 59, 49, 58, 60, 56, 55, 52, 68, 40, 59, 94, 123, 64, 52, 62, 58, 105, 61, 55, 54, 65, 60, 49, 63, 59, 84, 73, 64, 53, 54, 52, 51, 54, 71, 86, 71, 67, 58, 70, 94, 59, 62, 71, 80, 88, 65, 75, 64, 63, 51, 100, 45, 65, 64, 62, 65, 97, 55, 72, 62, 90, 62, 57, 67, 71, 74, 70, 69, 57, 70, 71, 54, 74, 64, 62, 59, 67, 47, 63, 54, 52, 54, 57, 68, 74, 49, 59, 61, 57, 59, 80, 54, 99, 56, 63, 49, 84, 77, 44, 60, 71, 62, 67, 53, 94, 64, 59, 59, 69, 38, 55, 56, 64, 79, 99, 56, 65, 71, 61, 68, 98, 45, 57, 93, 62, 56, 57, 65, 124, 56, 68, 63, 84, 60, 69, 63, 68, 58, 69, 78, 111, 63, 74, 82, 61, 57, 51, 69, 46, 58, 67, 66, 58, 50, 67, 72, 58, 134, 72, 72, 67, 56, 63, 46, 62, 73, 70, 67, 63, 53, 63, 72, 65, 59, 62, 82, 67, 78, 83, 54, 67, 57, 57, 143, 56, 47, 78, 68, 79, 48, 68, 56, 64, 77, 58, 50, 54, 67, 65, 68, 48, 89, 62, 84, 48, 67, 61, 58, 57, 68, 76, 44, 82, 54, 61, 65, 97, 59, 72, 62, 58, 62, 69, 86, 62, 71, 80, 39, 47, 74, 60, 95, 116, 63, 74, 66, 66, 111, 96, 67, 51, 65, 80, 64, 70, 60, 56, 71, 59, 60, 74, 64, 54, 60, 68, 91, 52, 91, 88, 54, 44, 103, 106, 59, 55, 71, 63, 69, 72, 55, 75, 50, 60, 63, 61, 51, 57, 62, 62, 56, 70, 57, 71, 60, 68, 46, 64, 83, 84, 57, 43, 73, 68, 62, 52, 58, 139, 60, 68, 64, 62, 84, 71, 55, 64, 56, 67, 68, 61, 40, 68, 63, 93, 61, 63, 63, 74, 91, 53, 72, 62, 48, 63, 52, 67, 83, 74, 47, 55, 55, 45, 58, 75, 53, 50, 50, 61, 55, 25, 61, 55, 61, 77, 69, 86, 68, 63, 78, 68, 91, 57, 77, 77, 53, 48, 63, 64, 83, 77, 64, 63, 60, 63, 65, 54, 64, 66, 66, 77, 64, 78, 76, 65, 74, 70, 51, 75, 72, 94, 71, 59, 56, 64, 63, 64, 106, 67, 59, 51, 43, 51, 53, 83, 106, 51, 64, 59, 67, 59, 61, 43, 52, 71, 104, 63, 34, 66, 58, 74, 96, 56, 69, 56, 66, 64, 64, 60, 104, 58, 76, 68, 77, 77, 70, 69, 52, 61, 52, 57, 71, 63, 65, 109, 61, 53, 46, 63, 52, 63, 77, 71, 62, 55, 73, 79, 64, 80, 61, 78, 64, 63, 58, 69, 57, 76, 51, 75, 75, 78, 63, 89, 62, 66, 77, 64, 81, 50, 69, 59, 67, 60, 73, 59, 57, 81, 97, 75, 63, 69, 64, 56, 105, 63, 64, 65, 60, 57, 65, 58, 73, 69, 61, 83, 65, 70, 56, 65, 71, 59, 61, 73, 55, 96, 63, 52, 105, 47, 58, 74, 109, 89, 53, 85, 80, 43, 47, 81, 61, 56, 77, 89, 66, 92, 68, 60, 45, 98, 62, 68, 69, 66, 61, 74, 42, 68, 74, 53, 49, 50, 65, 88, 57, 55, 56, 69, 85, 52, 63, 75, 74, 92, 71, 55, 67, 55, 71, 56, 46, 56, 78, 66, 68, 56, 78, 66, 65, 57, 70, 61, 49, 62, 68, 63, 58, 64, 69, 67, 60, 52, 105, 49, 51, 82, 57, 57, 70, 59, 72, 55, 45, 109, 91, 73, 68, 65, 80, 65, 71, 66, 79, 83, 74, 52, 60, 69, 54, 74, 69, 61, 62, 101, 76, 60, 76, 48, 66, 55, 49, 91, 66, 56, 71, 72, 44, 83, 69, 69, 71, 61, 82, 56, 62, 60, 49, 56, 68, 54, 94, 55, 90, 71, 51, 54, 76, 62, 72, 101, 52, 74, 76, 53, 61, 53, 59, 49, 95, 62, 75, 61, 63, 82, 82, 56, 60, 68, 51, 66, 67, 73, 66, 66, 67, 62, 57, 65, 50, 57, 62, 64, 65, 55, 59, 44, 61, 81, 66, 57, 62, 55, 54, 52, 68, 59, 51, 48, 61, 67, 72, 59, 58, 63, 60, 37, 67, 55, 52, 73, 67, 52, 63, 68, 58, 73, 51, 57, 49, 73, 51, 58, 87, 79, 96, 85, 71, 57, 59, 60, 82, 78, 57, 53, 56, 74, 59, 70, 64, 75, 54, 48, 64, 61, 67, 51, 49, 57, 80, 59, 67, 62, 100, 57, 53, 77, 79, 67, 65, 68, 64, 74, 66, 56, 58, 47, 88, 83, 47, 60, 61, 47, 64, 82, 56, 61, 47, 58, 56, 58, 90, 54, 57, 63, 65, 51, 100, 77, 63, 58, 66, 79, 65, 59, 64, 111, 65, 51, 51, 53, 70, 66, 65, 50, 74, 64, 62, 63, 54, 65, 115, 52, 60, 77, 74, 52, 49, 47, 59, 60, 73, 60, 62, 85, 68, 69, 60, 92, 56, 59, 80, 63, 56, 99, 63, 54, 56, 52, 57, 62, 87, 59, 55, 61, 94, 60, 62, 84, 133, 59, 58, 58, 71, 62, 72, 51, 56, 68, 69, 58, 51, 61, 70, 75, 68, 74, 62, 55, 112, 61, 76, 60, 64, 73, 64, 69, 63, 64, 60, 69, 50, 66, 67, 52, 73, 70, 69, 77, 58, 55, 64, 58, 77, 68, 58, 82, 56, 75, 60, 63, 75, 81, 64, 62, 92, 78, 80, 58, 53, 65, 55, 82, 80, 64, 60, 79, 82, 60, 66, 145, 70, 60, 50, 64, 54, 62, 58, 64, 73, 64, 85, 73, 56, 55, 82, 49, 63, 60, 66, 74, 56, 74, 47, 85, 68, 44, 61, 66, 80, 60, 58, 61, 81, 68, 61, 57, 57, 65, 90, 74, 51, 45, 91, 38, 62, 71, 50, 77, 60, 50, 85, 69, 63, 74, 49, 116, 49, 61, 65, 78, 65, 54, 68, 74, 52, 75, 57, 62, 68, 58, 68, 54, 86, 61, 61, 62, 74, 67, 61, 61, 63, 59, 57, 54, 53, 47, 71, 70, 61, 72, 76, 72, 65, 63, 83, 85, 64, 81, 76, 53, 55, 72, 67, 74, 67, 53, 63, 73, 66, 79, 43, 59, 61, 73, 60, 77, 92, 91, 69, 68, 64, 70, 75, 50, 58, 71, 84, 74, 58, 55, 64, 51, 58, 54, 65, 78, 93, 64, 54, 77, 118, 54, 81, 58, 64, 85, 50, 66, 60, 75, 59, 65, 53, 69, 77, 60, 60, 102, 58, 74, 66, 63, 81, 70, 62, 67, 58, 66, 65, 61, 48, 83, 66, 63, 49, 76, 59, 47, 56, 66, 83, 61, 69, 58, 66, 70, 70, 63, 71, 62, 71, 87, 62, 66, 65, 67, 61, 74, 69, 55, 57, 84, 61, 58, 67, 107, 97, 67, 63, 56, 76, 64, 73, 65, 65, 68, 90, 51, 66, 104, 48, 63, 64, 72, 56, 54, 65, 77, 49, 71, 72, 59, 55, 54, 82, 60, 59, 67, 45, 106, 47, 59, 59, 55, 63, 63, 82, 116, 84, 67, 70, 81, 69, 55, 77, 81, 59, 78, 57, 80, 51, 76, 59, 68, 102, 57, 64, 61, 54, 70, 96, 58, 59, 68, 60, 50, 62, 54, 70, 59, 79, 46, 63, 59, 39, 63, 59, 70, 62, 56, 65, 61, 60, 96, 73, 84, 72, 55, 57, 69, 50, 61, 70, 59, 82, 68, 84, 74, 53, 51, 51, 72, 42, 66, 68, 68, 65, 59, 60, 59, 74, 67, 72, 58, 60, 62, 48, 62, 58, 74, 57, 71, 55, 72, 65, 53, 52, 47, 64, 107, 65, 45, 49, 53, 112, 54, 57, 59, 57, 47, 60, 68, 85, 69, 59, 50, 58, 41, 67, 55, 48, 61, 66, 68, 64, 80, 38, 58, 62, 70, 97, 61, 60, 54, 73, 64, 81, 45, 70, 79, 57, 70, 65, 46, 66, 70, 60, 64, 65, 64, 68, 55, 69, 56, 62, 55, 80, 59, 115, 82, 55, 62, 69, 134, 54, 65, 49, 69, 68, 58, 61, 42, 67, 66, 63, 61, 86, 61, 71, 43, 80, 66, 56, 116, 62, 55, 74, 69, 57, 80, 61, 63, 56, 50, 67, 75, 63, 74, 64, 83, 65, 72, 74, 61, 62, 73, 59, 59, 80, 72, 68, 58, 56, 60, 61, 60, 68, 60, 77, 81, 52, 73, 57, 49, 85, 77, 79, 57, 65, 72, 71, 48, 68, 70, 54, 64, 72, 63, 64, 65, 71, 73, 54, 44, 62, 58, 61, 67, 73, 64, 55, 72, 99, 82, 68, 66, 59, 63, 79, 86, 45, 56, 63, 57, 60, 62, 106, 75, 65, 74, 48, 54, 82, 59, 53, 77, 101, 75, 67, 47, 46, 52, 59, 50, 87, 52, 87, 73, 92, 74, 57, 75, 79, 63, 60, 66, 50, 50, 64, 99, 108, 55, 73, 57, 63, 57, 83, 76, 58, 68, 58, 51, 69, 40, 71, 59, 64, 58, 53, 71, 64, 49, 79, 62, 60, 71, 72, 70, 63, 43, 78, 50, 49, 56, 67, 70, 58, 46, 64, 63, 55, 91, 74, 55, 62, 63, 54, 63, 108, 73, 58, 76, 83, 53, 69, 63, 61, 49, 61, 56, 60, 61, 70, 59, 79, 57, 65, 70, 52, 69, 32, 69, 67, 69, 67, 62, 77, 65, 63, 63, 105, 53, 50, 74, 49, 56, 67, 52, 59, 62, 63, 70, 79, 81, 57, 68, 57, 68, 55, 66, 55, 62, 57, 75, 55, 65, 59, 89, 64, 78, 53, 68, 72, 64, 54, 56, 67, 87, 76, 61, 57, 67, 59, 63, 64, 61, 41, 78, 46, 55, 67, 66, 52, 67, 82, 56, 66, 63, 60, 61, 77, 47, 63, 63, 102, 62, 54, 65, 67, 65, 61, 62, 76, 57, 91, 57, 66, 65, 48, 62, 64, 59, 98, 63, 62, 58, 63, 89, 62, 71, 77, 68, 61, 92, 62, 69, 66, 67, 72, 56, 60, 71, 65, 64, 57, 54, 68, 56, 59, 85, 73, 92, 87, 65, 47, 70, 59, 64, 51, 64, 62, 64, 77, 71, 68, 55, 61, 78, 71, 82, 60, 57, 64, 62, 70, 59, 56, 58, 47, 59, 52, 59, 72, 64, 64, 63, 58, 46, 84, 73, 73, 54, 80, 63, 66, 45, 62, 64, 65, 62, 61, 69, 57, 64, 57, 61, 68, 76, 53, 67, 56, 61, 82, 65, 62, 58, 70, 64, 48, 61, 60, 57, 64, 66, 70, 54, 86, 56, 71, 72, 72, 91, 41, 56, 75, 52, 43, 79, 55, 72, 50, 85, 53, 66, 56, 62, 66, 69, 66, 64, 55, 61, 54, 60, 70, 54, 83, 116, 61, 65, 80, 64, 72, 64, 59, 75, 63, 59, 62, 77, 63, 56, 53, 62, 81, 55, 55, 64, 64, 51, 65, 65, 67, 53, 74, 61, 46, 87, 64, 73, 65, 68, 81, 49, 69, 69, 64, 71, 53, 61, 57, 67, 63, 56, 54, 65, 103, 64, 61, 71, 68, 89, 70, 60, 70, 59, 59, 59, 74, 55, 87, 66, 67, 57, 66, 58, 62, 69, 61, 70, 86, 54, 48, 55, 95, 68, 64, 70, 79, 58, 64, 49, 62, 55, 61, 61, 53, 64, 60, 71, 60, 61, 49, 60, 66, 73, 67, 137, 57, 71, 57, 70, 62, 68, 93, 55, 65, 73, 77, 73, 60, 68, 110, 52, 64, 88, 65, 63, 52, 74, 63, 68, 50, 59, 62, 58, 59, 64, 68, 54, 53, 59, 71, 53, 62, 76, 63, 57, 61, 74, 63, 71, 55, 71, 52, 73, 55, 56, 68, 57, 77, 79, 68, 59, 66, 57, 64, 62, 61, 56, 69, 75, 72, 59, 62, 59, 60, 56, 55, 76, 56, 97, 58, 62, 73, 90, 58, 59, 51, 56, 63, 60, 65, 77, 60, 55, 61, 89, 62, 63, 62, 66, 74, 62, 61, 63, 51, 67, 85, 55, 50, 80, 72, 49, 59, 65, 67, 59, 59, 64, 61, 60, 58, 58, 66, 69, 56, 71, 71, 54, 58, 67, 62, 59, 65, 62, 64, 51, 62, 88, 64, 66, 80, 50, 67, 65, 80, 71, 98, 121, 45, 51, 74, 63, 79, 71, 54, 64, 58, 83, 133, 70, 50, 46, 59, 59, 86, 53, 55, 64, 53, 57, 67, 50, 54, 57, 70, 51, 79, 59, 57, 61, 57, 61, 67, 86, 65, 73, 82, 59, 106, 87, 52, 55, 70, 78, 57, 60, 59, 56, 64, 59, 72, 67, 73, 78, 72, 75, 71, 60, 78, 81, 94, 76, 66, 70, 66, 59, 49, 61, 60, 84, 69, 64, 73, 101, 66, 67, 60, 76, 63, 106, 68, 66, 106, 57, 100, 61, 61, 78, 70, 105, 68, 69, 49, 63, 61, 75, 61, 73, 52, 90, 63, 72, 57, 63, 68, 68, 52, 59, 61, 51, 79, 61, 63, 84, 70, 61, 58, 67, 52, 53, 58, 64, 63, 62, 56, 52, 66, 61, 61, 71, 59, 79, 68, 60, 65, 56, 80, 53, 63, 65, 67, 70, 80, 57, 62, 64, 44, 72, 62, 67, 70, 91, 63, 78, 62, 50, 61, 70, 94, 70, 46, 63, 53, 57, 69, 61, 53, 60, 58, 57, 47, 51, 64, 62, 95, 78, 60, 82, 70, 65, 67, 96, 65, 59, 61, 61, 67, 61, 77, 69, 65, 78, 63, 64, 62, 50, 113, 45, 65, 74, 49, 57, 60, 68, 64, 65, 136, 69, 52, 60, 75, 69, 58, 58, 60, 59, 54, 68, 49, 59, 63, 58, 93, 60, 62, 76, 70, 51, 90, 65, 65, 59, 66, 83, 48, 66, 92, 69, 60, 73, 56, 97, 52, 71, 68, 67, 59, 80, 83, 72, 54, 61, 58, 44, 63, 82, 63, 67, 51, 103, 56, 68, 96, 54, 60, 58, 64, 54, 62, 68, 62, 78, 73, 72, 62, 91, 51, 59, 75, 53, 62, 112, 61, 64, 47, 72, 103, 63, 56, 98, 53, 66, 71, 72, 67, 71, 57, 78, 58, 80, 56, 63, 66, 57, 71, 66, 76, 121, 56, 61, 64, 67, 79, 53, 63, 71, 66, 64, 49, 63, 69, 82, 64, 54, 57, 60, 55, 58, 67, 65, 72, 68, 71, 56, 46, 65, 63, 65, 80, 63, 73, 77, 58, 63, 45, 121, 108, 71, 65, 78, 68, 66, 63, 63, 59, 62, 64, 67, 50, 50, 60, 62, 67, 89, 68, 51, 102, 60, 71, 64, 76, 51, 67, 69, 60, 62, 59, 61, 74, 70, 48, 64, 63, 63, 64, 60, 73, 61, 66, 67, 66, 57, 62, 81, 67, 63, 58, 63, 54, 72, 73, 60, 53, 51, 64, 87, 62, 94, 72, 64, 66, 73, 59, 58, 63, 72, 103, 47, 57, 60, 54, 61, 68, 64, 76, 73, 55, 62, 105, 68, 64, 67, 46, 63, 92, 62, 53, 61, 53, 66, 84, 89, 59, 88, 64, 54, 91, 53, 61, 55, 63, 61, 62, 70, 61, 63, 57, 60, 83, 87, 58, 53, 69, 63, 59, 69, 100, 56, 65, 71, 58, 52, 53, 85, 64, 53, 53, 52, 57, 53, 52, 68, 70, 64, 55, 69, 58, 82, 73, 50, 61, 64, 56, 56, 61, 52, 75, 76, 69, 70, 75, 68, 97, 54, 81, 70, 60, 80, 57, 71, 69, 60, 62, 59, 99, 54, 61, 62, 65, 60, 56, 62, 59, 59, 72, 46, 69, 62, 67, 47, 77, 63, 60, 65, 73, 83, 75, 62, 66, 79, 69, 60, 66, 50, 58, 50, 57, 66, 67, 72, 57, 79, 50, 58, 56, 62, 63, 64, 65, 66, 145, 83, 70, 60, 57, 62, 66, 60, 54, 71, 61, 53, 64, 49, 79, 62, 57, 64, 75, 76, 64, 67, 68, 64, 59, 77, 53, 60, 57, 71, 66, 77, 55, 60, 66, 47, 52, 57, 54, 78, 75, 54, 64, 59, 54, 59, 62, 56, 55, 54, 64, 52, 90, 82, 53, 79, 74, 77, 66, 63, 72, 55, 75, 54, 65, 63, 78, 56, 59, 57, 63, 64, 81, 61, 64, 58, 50, 66, 57, 56, 79, 61, 61, 67, 57, 58, 66, 56, 85, 65, 61, 97, 73, 56, 55, 60, 43, 57, 68, 64, 74, 55, 62, 70, 81, 62, 63, 60, 68, 117, 52, 81, 71, 67, 73, 76, 65, 85, 67, 60, 49, 63, 39, 64, 69, 63, 59, 60, 66, 69, 58, 64, 66, 78, 74, 69, 94, 63, 61, 83, 67, 60, 67, 61, 65, 80, 71, 56, 45, 56, 47, 61, 66, 66, 52, 58, 63, 57, 55, 58, 56, 67, 71, 75, 72, 60, 62, 56, 49, 56, 65, 63, 61, 70, 84, 90, 60, 49, 78, 73, 67, 68, 53, 81, 68, 59, 59, 67, 83, 54, 54, 73, 75, 72, 49, 59, 74, 54, 64, 65, 68, 64, 64, 72, 68, 99, 62, 72, 65, 62, 84, 93, 47, 58, 63, 69, 70, 60, 55, 54, 73, 55, 77, 81, 71, 58, 63, 55, 67, 51, 64, 66, 50, 64, 46, 44, 74, 60, 80, 81, 75, 53, 65, 66, 60, 66, 52, 99, 57, 57, 58, 61, 69, 81, 55, 68, 50, 55, 63, 61, 52, 57, 92, 72, 72, 63, 63, 82, 59, 72, 104, 58, 48, 62, 51, 57, 62, 90, 60, 63, 40, 100, 75, 72, 60, 78, 55, 79, 63, 55, 61, 61, 57, 49, 51, 70, 102, 63, 69, 68, 67, 68, 93, 61, 63, 58, 64, 64, 61, 57, 54, 77, 72, 58, 55, 66, 106, 63, 60, 74, 80, 49, 62, 55, 64, 66, 67, 77, 52, 69, 82, 73, 84, 58, 63, 59, 84, 59, 57, 66, 91, 48, 54, 71, 63, 66, 62, 57, 62, 69, 82, 53, 69, 71, 85, 75, 67, 65, 76, 70, 62, 55, 78, 46, 66, 68, 50, 42, 60, 74, 79, 46, 82, 53, 61, 79, 70, 53, 53, 65, 70, 60, 79, 75, 50, 45, 60, 79, 62, 47, 66, 56, 95, 56, 58, 72, 62, 70, 64, 67, 59, 48, 76, 53, 61, 88, 80, 70, 64, 60, 49, 78, 61, 82, 79, 67, 65, 102, 72, 62, 74, 56, 65, 65, 53, 81, 43, 52, 66, 63, 57, 73, 53, 60, 57, 65, 65, 68, 46, 54, 66, 67, 84, 61, 69, 66, 79, 64, 63, 69, 78, 73, 55, 56, 69, 43, 77, 72, 73, 66, 74, 126, 60, 45, 74, 80, 65, 58, 77, 73, 61, 53, 85, 66, 71, 66, 70, 75, 69, 48, 60, 58, 67, 66, 87, 74, 76, 48, 47, 76, 52, 66, 78, 58, 59, 59, 69, 62, 47, 60, 81, 67, 37, 59, 80, 54, 58, 83, 49, 67, 48, 72, 74, 144, 59, 61, 51, 64, 88, 69, 75, 56, 52, 114, 68, 80, 53, 68, 60, 71, 68, 51, 81, 55, 75, 57, 85, 59, 79, 45, 64, 74, 64, 52, 46, 57, 107, 82, 81, 65, 76, 64, 56, 76, 59, 54, 49, 62, 65, 79, 81, 71, 62, 100, 74, 62, 65, 64, 75, 72, 66, 53, 59, 72, 58, 54, 59, 58, 83, 70, 55, 83, 54, 75, 63, 66, 69, 66, 90, 77, 56, 83, 73, 67, 63, 43, 60, 67, 58, 59, 63, 76, 56, 72, 54, 64, 58, 58, 62, 55, 41, 101, 89, 63, 49, 68, 56, 60, 71, 69, 72, 56, 83, 76, 40, 65, 75, 81, 82, 76, 90, 61, 71, 96, 97, 86, 50, 75, 47, 61, 62, 60, 68, 67, 59, 100, 73, 63, 74, 57, 51, 46, 81, 84, 53, 63, 61, 53, 86, 60, 67, 48, 60, 69, 49, 55, 74, 58, 64, 66, 92, 71, 84, 59, 49, 60, 64, 64, 69, 71, 61, 76, 79, 66, 94, 55, 73, 61, 59, 58, 59, 56, 43, 65, 65, 73, 82, 62, 86, 72, 73, 70, 57, 53, 50, 63, 53, 73, 82, 74, 78, 82, 70, 48, 73, 85, 53, 50, 66, 46, 66, 84, 62, 57, 54, 71, 75, 55, 73, 46, 60, 54, 58, 41, 54, 64, 70, 60, 81, 65, 88, 69, 62, 53, 60, 74, 55, 71, 68, 69, 107, 72, 58, 68, 56, 73, 62, 70, 55, 73, 52, 56, 59, 77, 51, 62, 62, 57, 63, 70, 67, 57, 54, 55, 58, 79, 86, 61, 61, 64, 69, 67, 67, 71, 58, 84, 78, 73, 59, 81, 66, 61, 47, 63, 68, 84, 58, 74, 75, 51, 60, 55, 70, 52, 98, 61, 64, 90, 66, 150, 69, 76, 59, 73, 42, 65, 61, 78, 48, 67, 53, 75, 59, 65, 84, 57, 72, 69, 55, 68, 65, 47, 63, 52, 64, 68, 51, 57, 55, 77, 63, 58, 70, 67, 62, 81, 65, 49, 71, 57, 82, 65, 66, 82, 64, 69, 69, 74, 58, 86, 48, 77, 75, 47, 72, 74, 82, 54, 63, 51, 56, 68, 78, 50, 66, 64, 62, 72, 58, 67, 73, 67, 54, 80, 95, 71, 59, 56, 51, 78, 75, 67, 61, 74, 67, 51, 73, 83, 85, 71, 104, 55, 70, 56, 63, 70, 75, 61, 48, 60, 82, 61, 50, 75, 67, 45, 53, 87, 63, 57, 68, 58, 97, 65, 63, 58, 56, 59, 65, 68, 60, 77, 56, 68, 83, 49, 62, 62, 58, 76, 86, 53, 61, 60, 63, 103, 58, 78, 55, 80, 69, 90, 85, 64, 61, 61, 50, 67, 70, 67, 78, 72, 46, 41, 56, 66, 50, 51, 37, 64, 57, 43, 65, 73, 58, 65, 73, 62, 53, 81, 62, 79, 74, 55, 57, 63, 53, 75, 72, 67, 49, 68, 58, 60, 80, 62, 59, 62, 72, 89, 47, 67, 73, 58, 60, 69, 62, 75, 66, 67, 83, 63, 34, 59, 69, 63, 62, 58, 64, 64, 63, 97, 69, 63, 69, 56, 62, 54, 53, 81, 49, 51, 69, 63, 77, 49, 63, 60, 71, 96, 61, 83, 78, 70, 70, 78, 66, 50, 48, 56, 71, 52, 61, 57, 63, 61, 49, 63, 52, 39, 56, 66, 68, 72, 71, 53, 61, 55, 57, 55, 59, 72, 66, 86, 64, 62, 58, 73, 69, 53, 59, 52, 60, 55, 60, 87, 40, 53, 62, 72, 58, 65, 53, 72, 55, 57, 72, 54, 47, 69, 60, 70, 70, 65, 58, 72, 61, 57, 65, 59, 71, 78, 80, 117, 53, 63, 53, 60, 81, 73, 85, 55, 65, 88, 55, 57, 54, 60, 52, 91, 48, 67, 63, 71, 55, 75, 54, 74, 89, 53, 63, 63, 65, 49, 58, 64, 84, 54, 71, 57, 52, 64, 113, 38, 64, 76, 64, 57, 76, 83, 63, 65, 71, 98, 65, 47, 70, 51, 62, 52, 58, 50, 76, 85, 115, 86, 61, 60, 60, 59, 60, 65, 64, 48, 64, 85, 74, 70, 56, 59, 58, 55, 55, 58, 47, 86, 59, 64, 46, 53, 94, 54, 65, 62, 101, 48, 47, 50, 51, 60, 71, 79, 52, 63, 66, 54, 64, 82, 45, 61, 75, 76, 74, 61, 68, 54, 51, 49, 74, 126, 45, 55, 57, 64, 93, 62, 91, 53, 56, 86, 75, 84, 66, 64, 93, 70, 67, 54, 80, 52, 64, 57, 78, 64, 54, 66, 52, 63, 52, 64, 71, 58, 60, 67, 112, 82, 60, 54, 63, 86, 80, 64, 53, 62, 45, 55, 48, 86, 52, 63, 68, 59, 52, 69, 72, 57, 54, 85, 75, 62, 81, 75, 59, 65, 88, 110, 58, 51, 55, 63, 58, 54, 67, 66, 57, 81, 63, 56, 69, 59, 57, 69, 64, 65, 97, 62, 70, 54, 69, 52, 79, 83, 55, 84, 68, 52, 88, 73, 62, 62, 65, 45, 73, 66, 67, 55, 68, 59, 76, 60, 94, 75, 50, 90, 64, 69, 53, 43, 63, 58, 75, 44, 48, 75, 125, 80, 61, 62, 96, 78, 54, 90, 50, 64, 90, 72, 57, 51, 59, 61, 89, 55, 60, 56, 102, 70, 50, 54, 82, 63, 52, 42, 63, 57, 65, 87, 51, 75, 48, 53, 53, 60, 57, 49, 59, 55, 60, 57, 51, 57, 47, 66, 56, 71, 66, 80, 77, 73, 57, 82, 61, 107, 81, 52, 66, 65, 96, 83, 45, 50, 65, 62, 93, 54, 90, 47, 58, 61, 65, 124, 69, 71, 51, 65, 60, 83, 51, 84, 82, 77, 68, 69, 35, 64, 59, 54, 59, 60, 55, 74, 54, 60, 70, 60, 76, 56, 73, 66, 55, 55, 57, 55, 73, 65, 45, 63, 75, 53, 52, 65, 68, 59, 67, 55, 62, 61, 57, 68, 59, 63, 51, 56, 93, 69, 77, 127, 79, 73, 68, 42, 73, 71, 61, 50, 62, 68, 75, 55, 57, 73, 55, 53, 62, 76, 81, 50, 90, 71, 70, 51, 69, 58, 64, 41, 68, 66, 63, 56, 65, 75, 60, 63, 59, 70, 63, 72, 69, 50, 91, 45, 54, 74, 75, 56, 66, 85, 50, 110, 61, 56, 94, 72, 76, 51, 73, 60, 51, 132, 103, 69, 69, 59, 59, 68, 85, 75, 57, 93, 54, 60, 67, 87, 69, 59, 66, 70, 48, 53, 96, 61, 103, 74, 57, 69, 68, 45, 131, 66, 63, 60, 51, 59, 49, 45, 75, 67, 57, 77, 62, 61, 76, 79, 70, 71, 50, 69, 68, 52, 47, 59, 61, 58, 46, 56, 61, 64, 77, 68, 71, 68, 82, 65, 72, 62, 52, 69, 74, 54, 46, 59, 59, 60, 60, 42, 90, 54, 59, 51, 72, 63, 53, 52, 69, 58, 70, 65, 57, 56, 61, 61, 56, 42, 66, 58, 63, 70, 76, 60, 53, 65, 62, 63, 63, 83, 65, 63, 70, 79, 72, 48, 54, 85, 62, 64, 69, 95, 63, 60, 46, 67, 59, 71, 65, 75, 60, 63, 67, 63, 59, 61, 60, 75, 69, 67, 48, 50, 55, 30, 91, 55, 58, 67, 67, 47, 99, 59, 46, 48, 66, 91, 85, 67, 70, 67, 57, 58, 96, 54, 105, 93, 56, 60, 54, 66, 52, 73, 48, 102, 45, 55, 144, 70, 67, 60, 48, 73, 53, 46, 60, 71, 60, 69, 65, 70, 54, 57, 72, 55, 70, 76, 63, 51, 68, 54, 62, 53, 68, 47, 61, 87, 69, 55, 64, 68, 57, 51, 62, 60, 46, 68, 63, 71, 51, 89, 61, 59, 66, 97, 62, 99, 74, 64, 65, 99, 109, 78, 46, 58, 74, 93, 57, 84, 64, 75, 89, 70, 69, 98, 64, 71, 86, 66, 68, 55, 66, 51, 56, 56, 63, 76, 92, 60, 49, 66, 81, 64, 61, 67, 64, 91, 55, 60, 67, 64, 81, 43, 75, 63, 74, 59, 56, 62, 110, 53, 59, 79, 45, 63, 84, 55, 60, 61, 51, 134, 68, 78, 47, 86, 74, 58, 64, 77, 58, 57, 58, 58, 62, 77, 59, 62, 66, 61, 71, 62, 66, 41, 56, 50, 58, 75, 48, 58, 80, 32, 43, 64, 60, 56, 74, 81, 95, 80, 63, 51, 49, 48, 59, 53, 68, 61, 63, 80, 64, 86, 95, 63, 51, 65, 62, 76, 67, 61, 58, 74, 59, 69, 77, 65, 53, 58, 79, 84, 58, 95, 75, 63, 72, 67, 74, 78, 60, 60, 58, 96, 51, 56, 68, 73, 63, 72, 78, 46, 52, 72, 78, 64, 58, 81, 51, 55, 46, 97, 53, 70, 61, 52, 64, 83, 62, 61, 55, 80, 68, 56, 72, 76, 93, 87, 62, 82, 69, 54, 72, 101, 91, 58, 56, 76, 80, 46, 65, 65, 59, 73, 58, 70, 55, 54, 67, 69, 77, 54, 104, 66, 64, 77, 52, 67, 59, 59, 63, 77, 57, 63, 47, 45, 63, 51, 64, 62, 69, 67, 65, 57, 67, 95, 64, 73, 53, 66, 84, 53, 55, 42, 75, 62, 59, 55, 52, 65, 49, 71, 63, 62, 67, 64, 62, 54, 81, 57, 69, 68, 67, 50, 70, 68, 73, 82, 57, 63, 90, 67, 78, 55, 95, 51, 67, 52, 66, 83, 66, 74, 71, 48, 46, 79, 60, 53, 125, 59, 70, 75, 59, 75, 47, 92, 56, 87, 62, 68, 64, 67, 59, 71, 60, 61, 79, 71, 54, 72, 62, 62, 77, 83, 80, 57, 98, 61, 62, 29, 49, 53, 56, 58, 59, 66, 92, 74, 48, 58, 69, 68, 54, 54, 84, 75, 78, 66, 69, 57, 88, 67, 43, 64, 76, 61, 63, 56, 42, 57, 43, 64, 69, 64, 63, 57, 56, 60, 50, 83, 72, 65, 55, 60, 67, 53, 61, 79, 53, 58, 54, 69, 50, 60, 62, 55, 69, 61, 74, 70, 55, 61, 58, 77, 56, 60, 62, 72, 39, 54, 72, 45, 77, 82, 39, 72, 48, 60, 38, 59, 63, 79, 76, 64, 85, 61, 72, 78, 80, 61, 59, 51, 60, 47, 93, 73, 95, 72, 69, 56, 94, 69, 62, 92, 70, 54, 73, 68, 63, 60, 72, 64, 75, 63, 80, 60, 76, 66, 68, 51, 63, 65, 76, 60, 58, 91, 59, 47, 52, 47, 62, 58, 86, 58, 66, 52, 63, 62, 50, 74, 52, 91, 98, 52, 48, 62, 87, 59, 61, 70, 55, 58, 70, 60, 62, 61, 83, 67, 68, 63, 63, 85, 47, 61, 56, 61, 56, 73, 59, 74, 67, 61, 60, 65, 81, 57, 79, 54, 52, 63, 61, 62, 56, 77, 81, 88, 64, 76, 67, 64, 84, 105, 63, 66, 63, 44, 64, 49, 82, 58, 59, 64, 50, 64, 47, 61, 66, 82, 73, 62, 47, 64, 64, 48, 85, 67, 60, 94, 51, 61, 61, 69, 65, 61, 87, 54, 60, 63, 46, 58, 64, 61, 63, 61, 41, 85, 68, 69, 117, 57, 42, 74, 55, 57, 72, 64, 67, 70, 59, 66, 57, 70, 70, 65, 52, 52, 69, 55, 50, 69, 57, 56, 55, 67, 60, 53, 62, 69, 74, 75, 59, 57, 65, 50, 64, 48, 56, 55, 82, 60, 58, 64, 58, 63, 71, 103, 55, 105, 64, 67, 54, 53, 63, 53, 70, 65, 62, 102, 75, 56, 103, 82, 88, 42, 67, 61, 75, 59, 70, 53, 65, 70, 53, 52, 70, 52, 61, 60, 91, 66, 73, 46, 67, 59, 53, 46, 54, 56, 51, 69, 76, 71, 57, 83, 69, 70, 88, 59, 66, 66, 66, 89, 67, 90, 52, 64, 64, 66, 73, 66, 84, 85, 77, 69, 50, 71, 61, 68, 108, 74, 60, 52, 56, 57, 54, 59, 77, 56, 71, 83, 66, 51, 65, 63, 73, 62, 75, 86, 73, 70, 65, 65, 74, 49, 63, 64, 67, 60, 95, 63, 43, 59, 58, 57, 65, 79, 70, 48, 72, 69, 63, 54, 75, 50, 53, 89, 49, 61, 55, 55, 60, 51, 58, 74, 66, 58, 77, 59, 67, 75, 76, 60, 66, 68, 76, 56, 73, 97, 58, 96, 59, 58, 56, 89, 69, 57, 60, 65, 69, 52, 113, 65, 65, 51, 75, 65, 55, 79, 73, 59, 52, 55, 64, 79, 45, 70, 55, 80, 63, 54, 64, 51, 53, 57, 62, 73, 70, 69, 69, 57, 68, 54, 79, 55, 69, 59, 47, 62, 59, 71, 69, 59, 55, 60, 60, 72, 67, 68, 59, 71, 73, 64, 88, 51, 64, 60, 74, 56, 58, 70, 60, 89, 65, 58, 68, 92, 75, 56, 71, 60, 59, 58, 58, 63, 54, 55, 108, 74, 79, 77, 72, 69, 57, 60, 58, 67, 60, 75, 65, 83, 60, 108, 72, 51, 58, 63, 57, 83, 59, 58, 67, 59, 64, 65, 61, 87, 108, 58, 56, 80, 74, 76, 56, 66, 64, 69, 66, 62, 62, 58, 54, 49, 64, 64, 59, 70, 62, 76, 80, 63, 56, 67, 78, 59, 76, 56, 57, 79, 60, 80, 69, 77, 62, 94, 75, 67, 74, 67, 62, 88, 88, 80, 59, 55, 77, 127, 70, 53, 62, 62, 56, 74, 68, 62, 57, 66, 67, 51, 83, 76, 56, 67, 62, 81, 72, 60, 57, 55, 60, 46, 70, 95, 74, 50, 74, 84, 62, 54, 63, 74, 50, 79, 50, 71, 54, 60, 60, 55, 118, 73, 85, 47, 60, 72, 70, 71, 57, 52, 61, 66, 77, 64, 79, 55, 81, 66, 61, 71, 66, 60, 63, 69, 65, 81, 94, 64, 58, 51, 83, 67, 66, 73, 55, 63, 56, 55, 88, 50, 43, 79, 85, 70, 64, 52, 90, 56, 63, 59, 60, 58, 69, 63, 54, 45, 53, 59, 69, 44, 50, 70, 54, 72, 58, 94, 54, 72, 70, 54, 63, 64, 75, 82, 54, 124, 49, 68, 66, 83, 124, 127, 54, 78, 57, 60, 54, 55, 53, 83, 96, 56, 78, 78, 49, 76, 78, 64, 58, 64, 82, 80, 89, 58, 62, 69, 54, 61, 60, 44, 59, 57, 76, 66, 70, 62, 74, 79, 70, 63, 70, 76, 54, 69, 50, 61, 73, 75, 54, 74, 61, 59, 85, 73, 80, 59, 58, 56, 63, 128, 63, 52, 68, 53, 65, 67, 70, 72, 60, 62, 48, 59, 63, 53, 66, 89, 50, 63, 58, 68, 110, 52, 67, 46, 74, 59, 81, 67, 56, 71, 56, 64, 63, 50, 55, 60, 61, 49, 71, 67, 67, 82, 62, 62, 69, 55, 60, 102, 50, 59, 51, 64, 59, 68, 89, 58, 61, 68, 57, 54, 69, 68, 50, 59, 49, 62, 48, 83, 54, 69, 95, 65, 56, 58, 72, 56, 63, 79, 65, 52, 64, 58, 93, 63, 66, 55, 63, 63, 95, 58, 67, 50, 67, 73, 53, 49, 60, 73, 52, 47, 54, 67, 55, 70, 61, 51, 68, 56, 57, 66, 63, 103, 87, 83, 53, 76, 55, 54, 58, 72, 87, 55, 54, 70, 72, 57, 36, 63, 69, 51, 67, 65, 55, 63, 70, 111, 71, 55, 62, 65, 67, 58, 73, 55, 86, 75, 71, 48, 85, 90, 65, 82, 53, 75, 82, 63, 62, 50, 65, 62, 52, 57, 67, 48, 66, 57, 53, 60, 60, 72, 63, 53, 59, 59, 105, 59, 61, 57, 65, 65, 58, 56, 57, 51, 48, 61, 68, 64, 76, 97, 47, 55, 61, 57, 68, 77, 75, 50, 64, 56, 68, 58, 64, 56, 51, 53, 70, 47, 68, 61, 68, 80, 79, 69, 56, 63, 66, 67, 53, 53, 50, 79, 60, 70, 70, 69, 65, 59, 66, 63, 65, 59, 70, 57, 69, 55, 58, 76, 94, 60, 63, 61, 69, 55, 53, 83, 54, 59, 65, 62, 53, 53, 73, 99, 87, 60, 73, 58, 69, 60, 68, 60, 76, 57, 62, 62, 76, 71, 58, 71, 79, 50, 66, 59, 105, 79, 66, 50, 59, 43, 88, 53, 55, 61, 87, 62, 49, 61, 60, 54, 78, 61, 58, 62, 43, 60, 70, 63, 63, 74, 87, 56, 116, 66, 64, 69, 57, 46, 59, 54, 53, 59, 64, 89, 69, 85, 47, 76, 79, 54, 72, 85, 61, 52, 57, 48, 65, 94, 65, 59, 105, 59, 51, 44, 61, 63, 58, 60, 74, 57, 57, 65, 104, 66, 69, 54, 75, 58, 74, 57, 70, 67, 106, 80, 62, 64, 54, 51, 88, 60, 56, 51, 80, 52, 48, 53, 58, 59, 51, 56, 68, 92, 54, 73, 74, 56, 73, 62, 49, 67, 89, 82, 66, 45, 65, 57, 63, 52, 79, 47, 54, 77, 56, 67, 53, 75, 63, 56, 51, 71, 62, 55, 74, 55, 101, 77, 68, 49, 53, 61, 76, 47, 86, 56, 51, 94, 63, 51, 75, 89, 71, 64, 58, 63, 77, 74, 63, 63, 50, 62, 73, 51, 57, 71, 71, 65, 71, 71, 64, 60, 57, 71, 78, 75, 46, 61, 71, 125, 70, 62, 68, 57, 62, 67, 77, 56, 59, 57, 70, 65, 67, 65, 49, 76, 53, 84, 67, 51, 71, 67, 67, 76, 63, 81, 82, 52, 59, 51, 60, 61, 115, 63, 65, 52, 90, 44, 94, 74, 62, 66, 47, 60, 73, 55, 61, 66, 59, 57, 62, 88, 60, 61, 61, 55, 72, 66, 66, 77, 53, 62, 87, 75, 46, 65, 54, 66, 56, 66, 57, 43, 56, 74, 62, 49, 84, 56, 59, 65, 46, 86, 57, 68, 64, 66, 74, 55, 67, 60, 59, 59, 97, 63, 69, 62, 57, 54, 98, 73, 144, 73, 49, 58, 70, 64, 74, 54, 56, 72, 58, 69, 61, 75, 78, 104, 67, 57, 43, 57, 69, 55, 58, 86, 60, 67, 49, 84, 64, 67, 50, 52, 63, 87, 75, 53, 56, 83, 52, 62, 65, 92, 49, 56, 67, 65, 65, 88, 61, 61, 94, 61, 52, 37, 55, 48, 70, 73, 62, 61, 46, 70, 55, 80, 76, 67, 65, 83, 73, 98, 57, 81, 66, 82, 83, 86, 88, 91, 65, 68, 78, 56, 65, 69, 54, 50, 58, 81, 62, 57, 51, 52, 52, 59, 59, 48, 60, 69, 53, 76, 48, 70, 66, 58, 55, 46, 54, 69, 73, 90, 56, 71, 63, 62, 57, 93, 57, 74, 93, 62, 73, 86, 54, 56, 64, 71, 77, 95, 78, 85, 56, 63, 66, 48, 60, 65, 78, 58, 132, 57, 70, 95, 58, 86, 53, 70, 56, 62, 73, 53, 82, 62, 59, 57, 62, 57, 74, 50, 64, 61, 64, 62, 66, 51, 80, 71, 76, 96, 74, 69, 94, 78, 59, 56, 56, 83, 61, 60, 54, 61, 61, 60, 61, 72, 68, 68, 136, 74, 76, 87, 66, 59, 66, 64, 76, 49, 77, 55, 46, 73, 71, 60, 67, 49, 49, 54, 55, 87, 63, 67, 58, 63, 55, 56, 80, 52, 57, 67, 57, 98, 62, 81, 61, 63, 61, 90, 68, 69, 85, 71, 66, 58, 57, 71, 63, 57, 57, 48, 53, 73, 74, 70, 65, 43, 46, 69, 69, 69, 65, 58, 56, 64, 68, 66, 67, 63, 61, 61, 73, 51, 101, 76, 50, 66, 53, 75, 65, 64, 62, 49, 60, 50, 72, 46, 73, 72, 59, 69, 67, 56, 61, 79, 92, 69, 75, 79, 78, 49, 59, 71, 66, 80, 66, 50, 51, 50, 65, 61, 66, 47, 66, 71, 57, 69, 66, 63, 62, 82, 65, 60, 47, 85, 59, 79, 63, 54, 68, 85, 67, 106, 56, 88, 78, 85, 54, 76, 49, 53, 62, 69, 91, 48, 59, 63, 57, 54, 121, 74, 49, 54, 81, 43, 72, 49, 106, 70, 56, 53, 70, 61, 69, 65, 51, 78, 58, 67, 90, 61, 53, 57, 57, 50, 70, 73, 63, 66, 93, 72, 57, 61, 57, 93, 58, 61, 85, 63, 66, 67, 58, 62, 67, 65, 75, 78, 54, 82, 74, 56, 72, 67, 70, 63, 37, 58, 58, 65, 59, 59, 54, 69, 60, 63, 63, 67, 47, 73, 68, 59, 36, 65, 44, 151, 64, 55, 84, 63, 135, 54, 97, 67, 60, 49, 47, 53, 39, 75, 66, 46, 63, 54, 61, 73, 69, 52, 62, 65, 90, 108, 81, 47, 54, 47, 58, 58, 50, 72, 65, 60, 97, 63, 65, 77, 81, 97, 44, 86, 69, 59, 63, 60, 63, 62, 54, 82, 54, 54, 64, 75, 69, 64, 60, 63, 69, 78, 67, 101, 56, 58, 75, 58, 53, 72, 70, 44, 66, 70, 65, 49, 80, 59, 82, 56, 79, 68, 56, 56, 61, 96, 54, 64, 43, 41, 47, 104, 72, 58, 69, 58, 64, 83, 72, 60, 75, 81, 47, 65, 70, 96, 70, 62, 59, 69, 76, 84, 64, 56, 46, 68, 75, 64, 57, 58, 61, 76, 63, 50, 75, 71, 67, 60, 65, 79, 49, 71, 50, 52, 65, 55, 54, 97, 60, 52, 57, 57, 80, 50, 70, 66, 97, 66, 61, 69, 50, 52, 62, 58, 66, 51, 49, 56, 59, 66, 90, 64, 46, 53, 55, 61, 44, 65, 70, 53, 58, 56, 70, 70, 75, 100, 105, 60, 57, 60, 58, 65, 78, 58, 90, 45, 61, 70, 47, 73, 110, 57, 63, 61, 69, 84, 70, 49, 79, 104, 101, 53, 64, 73, 66, 96, 73, 71, 64, 61, 60, 52, 77, 84, 58, 63, 60, 71, 81, 52, 58, 62, 58, 62, 71, 55, 46, 63, 52, 78, 47, 70, 69, 65, 51, 55, 51, 65, 64, 58, 83, 65, 79, 54, 62, 61, 75, 46, 98, 57, 65, 53, 61, 50, 54, 62, 69, 58, 65, 62, 63, 59, 48, 58, 68, 58, 63, 85, 61, 72, 63, 59, 64, 70, 65, 55, 62, 49, 71, 62, 78, 73, 69, 72, 55, 64, 51, 68, 59, 59, 69, 82, 62, 47, 69, 88, 62, 51, 56, 34, 72, 68, 79, 71, 41, 61, 75, 45, 76, 53, 63, 71, 61, 67, 54, 53, 54, 78, 60, 65, 87, 66, 66, 64, 62, 72, 52, 61, 55, 60, 74, 56, 50, 53, 41, 51, 52, 68, 75, 91, 55, 66, 67, 52, 103, 43, 39, 40, 73, 63, 52, 66, 87, 63, 70, 53, 44, 62, 63, 71, 70, 67, 71, 60, 66, 66, 54, 63, 63, 83, 58, 61, 46, 64, 64, 65, 43, 101, 57, 52, 77, 73, 50, 65, 67, 66, 59, 44, 58, 44, 98, 96, 66, 59, 79, 46, 47, 68, 71, 66, 73, 44, 53, 36, 74, 75, 57, 71, 48, 69, 74, 54, 57, 41, 68, 68, 88, 69, 70, 64, 71, 70, 73, 64, 61, 54, 52, 62, 90, 62, 63, 63, 63, 83, 57, 81, 64, 83, 52, 71, 66, 41, 72, 64, 73, 61, 75, 58, 50, 63, 75, 80, 39, 67, 57, 62, 59, 46, 70, 75, 67, 46, 72, 67, 74, 64, 64, 78, 82, 65, 53, 40, 26, 51, 70, 59, 77, 97, 74, 73, 83, 61, 58, 112, 50, 70, 65, 61, 68, 53, 61, 66, 72, 59, 80, 94, 56, 60, 77, 64, 96, 63, 59, 58, 68, 54, 86, 94, 53, 64, 72, 119, 79, 67, 48, 45, 56, 62, 39, 62, 72, 70, 56, 72, 82, 65, 56, 70, 85, 59, 77, 62, 62, 58, 61, 37, 51, 74, 75, 85, 105, 43, 62, 65, 103, 82, 63, 74, 58, 57, 65, 64, 61, 53, 53, 88, 76, 51, 63, 52, 65, 69, 59, 69, 43, 66, 70, 64, 69, 80, 71, 62, 53, 60, 83, 51, 68, 85, 77, 69, 53, 43, 72, 72, 58, 47, 72, 91, 71, 66, 84, 61, 60, 60, 63, 65, 58, 71, 76, 58, 56, 70, 66, 62, 64, 62, 68, 46, 52, 84, 88, 62, 120, 69, 63, 66, 51, 72, 56, 55, 62, 70, 57, 42, 65, 59, 49, 53, 69, 40, 69, 53, 79, 74, 60, 85, 63, 72, 36, 79, 70, 68, 72, 74, 75, 122, 80, 56, 56, 79, 39, 51, 61, 76, 63, 68, 58, 66, 68, 51, 62, 59, 90, 71, 57, 60, 47, 61, 82, 63, 62, 76, 74, 62, 59, 86, 70, 59, 59, 84, 72, 67, 53, 63, 56, 54, 66, 56, 56, 66, 52, 65, 71, 53, 61, 84, 68, 73, 57, 62, 62, 53, 66, 61, 59, 68, 85, 60, 73, 41, 60, 51, 54, 66, 45, 54, 61, 62, 70, 61, 67, 64, 84, 73, 61, 55, 59, 84, 73, 89, 66, 68, 111, 67, 65, 65, 55, 74, 68, 97, 45, 101, 50, 79, 67, 45, 50, 57, 83, 62, 141, 51, 61, 107, 75, 65, 62, 58, 63, 63, 61, 69, 63, 67, 64, 62, 77, 40, 71, 56, 67, 64, 51, 75, 59, 89, 51, 80, 81, 94, 88, 79, 78, 57, 71, 47, 77, 58, 72, 62, 65, 65, 58, 41, 62, 73, 57, 53, 70, 83, 80, 73, 82, 67, 83, 48, 69, 56, 52, 52, 61, 66, 71, 63, 48, 67, 74, 62, 53, 92, 64, 65, 70, 58, 90, 63, 68, 63, 72, 40, 66, 81, 58, 75, 67, 68, 81, 99, 57, 48, 86, 81, 45, 61, 66, 75, 56, 50, 46, 65, 64, 89, 54, 74, 63, 64, 98, 75, 60, 52, 75, 68, 56, 69, 65, 79, 64, 71, 70, 59, 56, 54, 68, 61, 54, 62, 54, 59, 56, 65, 74, 74, 71, 52, 63, 74, 49, 66, 56, 69, 61, 54, 55, 92, 93, 59, 87, 49, 58, 59, 77, 64, 54, 65, 59, 40, 40, 58, 59, 76, 82, 89, 75, 60, 73, 56, 50, 54, 80, 69, 69, 49, 64, 73, 55, 66, 65, 63, 62, 73, 38, 120, 58, 84, 50, 54, 53, 63, 55, 59, 66, 61, 88, 70, 55, 52, 70, 66, 110, 65, 69, 66, 79, 72, 77, 64, 129, 50, 59, 49, 84, 62, 68, 64, 52, 52, 82, 90, 84, 56, 61, 61, 54, 69, 57, 90, 46, 81, 88, 60, 69, 50, 59, 68, 49, 54, 107, 55, 55, 62, 49, 67, 63, 47, 56, 67, 51, 57, 66, 54, 81, 59, 59, 76, 84, 70, 72, 81, 74, 54, 43, 60, 56, 64, 55, 56, 41, 81, 57, 67, 64, 61, 52, 144, 53, 61, 47, 76, 125, 51, 93, 63, 67, 66, 70, 64, 70, 98, 60, 60, 77, 40, 57, 92, 64, 66, 72, 65, 92, 73, 84, 62, 43, 63, 70, 65, 62, 62, 46, 49, 86, 57, 63, 87, 65, 95, 65, 67, 66, 65, 60, 56, 49, 46, 56, 96, 77, 60, 71, 60, 56, 55, 74, 57, 67, 76, 48, 100, 69, 58, 71, 63, 60, 72, 84, 41, 82, 62, 68, 43, 67, 50, 64, 46, 58, 52, 59, 63, 87, 86, 61, 76, 65, 45, 51, 112, 74, 63, 64, 50, 52, 51, 52, 59, 76, 87, 59, 64, 86, 99, 42, 55, 72, 75, 70, 60, 46, 64, 44, 57, 81, 77, 81, 69, 61, 86, 63, 69, 60, 65, 63, 62, 59, 76, 55, 73, 63, 61, 55, 58, 81, 51, 77, 69, 66, 53, 87, 61, 60, 56, 71, 70, 65, 56, 49, 48, 75, 63, 55, 71, 82, 43, 59, 53, 122, 61, 63, 80, 84, 58, 60, 55, 122, 56, 62, 63, 49, 77, 66, 133, 108, 46, 79, 63, 62, 62, 48, 54, 58, 64, 52, 69, 58, 56, 121, 75, 72, 80, 64, 54, 53, 77, 80, 107, 141, 61, 73, 56, 60, 50, 74, 70, 55, 49, 68, 46, 58, 84, 89, 63, 60, 60, 68, 65, 80, 62, 57, 64, 52, 51, 54, 48, 57, 51, 50, 54, 59, 65, 47, 68, 50, 86, 50, 60, 63, 64, 74, 75, 59, 54, 69, 66, 93, 47, 69, 42, 64, 61, 50, 75, 68, 65, 63, 64, 43, 75, 53, 62, 63, 63, 55, 69, 55, 56, 69, 71, 66, 60, 57, 61, 70, 60, 67, 63, 69, 50, 61, 54, 74, 64, 69, 53, 58, 56, 53, 60, 79, 49, 46, 63, 76, 51, 63, 52, 55, 79, 91, 58, 67, 64, 52, 68, 56, 80, 55, 54, 67, 53, 46, 57, 71, 82, 47, 59, 86, 46, 71, 49, 51, 66, 63, 46, 71, 67, 59, 66, 81, 52, 50, 59, 67, 54, 73, 64, 91, 60, 74, 58, 78, 67, 54, 59, 55, 70, 67, 73, 83, 75, 49, 66, 59, 87, 89, 59, 72, 70, 42, 69, 57, 49, 57, 92, 60, 65, 43, 62, 75, 82, 55, 54, 42, 90, 66, 44, 68, 54, 36, 48, 69, 70, 61, 71, 58, 79, 74, 104, 63, 70, 66, 77, 64, 68, 68, 57, 64, 74, 49, 43, 35, 64, 59, 56, 72, 87, 70, 57, 69, 77, 89, 54, 63, 71, 57, 67, 49, 50, 56, 73, 49, 45, 70, 71, 74, 62, 48, 59, 61, 59, 51, 61, 65, 71, 51, 65, 61, 72, 79, 59, 89, 60, 75, 52, 48, 67, 84, 73, 59, 76, 73, 62, 55, 55, 63, 54, 76, 81, 51, 61, 70, 53, 57, 87, 84, 48, 91, 52, 57, 76, 63, 63, 57, 86, 77, 39, 59, 86, 67, 81, 59, 59, 79, 85, 66, 57, 63, 70, 90, 80, 89, 81, 65, 59, 67, 51, 69, 123, 73, 69, 54, 58, 70, 88, 72, 56, 61, 53, 57, 57, 72, 51, 62, 74, 63, 79, 61, 64, 54, 64, 66, 56, 76, 68, 61, 64, 64, 109, 51, 55, 56, 68, 70, 65, 62, 64, 56, 68, 49, 84, 61, 55, 75, 59, 75, 85, 57, 87, 55, 46, 75, 75, 60, 73, 68, 68, 56, 52, 59, 63, 60, 55, 80, 50, 64, 68, 57, 61, 57, 58, 56, 71, 57, 76, 75, 48, 65, 35, 59, 62, 59, 77, 64, 68, 44, 53, 81, 68, 72, 62, 57, 102, 56, 45, 66, 67, 99, 46, 66, 75, 54, 75, 71, 54, 54, 62, 59, 76, 55, 71, 74, 77, 57, 57, 55, 60, 64, 80, 52, 40, 82, 63, 58, 63, 65, 75, 77, 50, 58, 66, 40, 73, 63, 57, 58, 59, 70, 78, 90, 59, 45, 75, 76, 76, 69, 56, 68, 81, 65, 67, 64, 65, 68, 65, 45, 63, 72, 51, 73, 49, 60, 53, 63, 86, 55, 58, 47, 66, 63, 58, 70, 56, 67, 89, 61, 63, 51, 75, 56, 91, 80, 73, 63, 64, 68, 64, 48, 65, 63, 49, 52, 51, 62, 60, 78, 55, 57, 75, 55, 62, 44, 55, 71, 84, 57, 84, 74, 59, 59, 77, 81, 71, 84, 60, 59, 65, 66, 60, 68, 58, 74, 53, 53, 78, 92, 56, 95, 59, 72, 107, 73, 45, 73, 72, 64, 88, 73, 55, 63, 58, 64, 62, 47, 59, 77, 95, 98, 59, 71, 44, 68, 65, 67, 64, 70, 96, 72, 67, 72, 55, 56, 66, 61, 50, 64, 59, 59, 64, 53, 76, 66, 61, 54, 65, 96, 59, 51, 85, 52, 48, 48, 93, 68, 67, 58, 39, 63, 63, 59, 60, 104, 48, 69, 61, 67, 44, 57, 50, 74, 65, 73, 46, 57, 62, 112, 77, 42, 142, 54, 62, 54, 77, 71, 61, 85, 67, 62, 60, 80, 75, 48, 57, 77, 78, 67, 71, 91, 58, 58, 61, 60, 56, 64, 84, 74, 67, 57, 69, 59, 72, 58, 52, 59, 54, 73, 55, 60, 80, 70, 85, 79, 59, 74, 51, 53, 66, 54, 99, 75, 53, 66, 74, 50, 52, 62, 108, 61, 67, 65, 78, 96, 59, 65, 45, 66, 64, 61, 66, 56, 67, 73, 87, 51, 71, 75, 66, 54, 48, 80, 64, 65, 45, 66, 53, 56, 59, 65, 43, 91, 138, 57, 101, 56, 72, 58, 78, 68, 69, 69, 61, 63, 82, 54, 58, 53, 85, 43, 70, 69, 67, 59, 59, 60, 52, 78, 66, 62, 77, 73, 47, 51, 68, 90, 58, 72, 63, 53, 70, 74, 46, 54, 79, 77, 47, 95, 70, 78, 92, 68, 64, 52, 55, 61, 56, 53, 81, 58, 60, 68, 81, 64, 63, 86, 59, 53, 67, 54, 111, 80, 66, 64, 51, 63, 56, 91, 64, 68, 50, 47, 70, 55, 40, 52, 66, 76, 65, 65, 79, 70, 52, 87, 110, 52, 59, 56, 76, 63, 56, 62, 102, 72, 81, 48, 71, 64, 56, 55, 56, 79, 69, 49, 64, 77, 85, 57, 56, 58, 60, 88, 112, 68, 61, 92, 84, 76, 80, 90, 68, 113, 56, 67, 66, 59, 84, 68, 65, 55, 115, 58, 52, 65, 64, 61, 51, 96, 43, 84, 59, 72, 70, 57, 64, 83, 103, 60, 57, 72, 112, 67, 69, 62, 48, 62, 57, 53, 51, 56, 49, 54, 50, 57, 58, 76, 87, 66, 63, 82, 69, 82, 69, 61, 87, 58, 76, 69, 105, 65, 52, 59, 72, 85, 68, 81, 64, 67, 72, 109, 65, 67, 63, 80, 50, 52, 60, 77, 66, 73, 57, 58, 63, 79, 52, 55, 79, 58, 51, 56, 74, 63, 81, 53, 87, 71, 61, 72, 60, 52, 71, 91, 128, 67, 51, 65, 63, 73, 53, 32, 55, 55, 52, 49, 62, 77, 67, 100, 74, 67, 64, 80, 49, 90, 68, 53, 64, 61, 53, 60, 66, 79, 64, 81, 50, 78, 73, 49, 102, 76, 76, 71, 68, 71, 55, 73, 74, 51, 69, 56, 57, 81, 75, 70, 107, 60, 48, 118, 61, 64, 74, 63, 59, 57, 53, 72, 58, 63, 91, 69, 78, 57, 81, 66, 70, 74, 71, 76, 54, 70, 67, 53, 53, 91, 62, 45, 58, 50, 47, 70, 57, 67, 63, 74, 59, 111, 64, 50, 53, 72, 61, 95, 62, 64, 85, 111, 113, 72, 80, 74, 71, 80, 65, 65, 87, 59, 71, 63, 74, 62, 54, 68, 58, 42, 62, 72, 65, 73, 60, 65, 61, 55, 48, 78, 69, 58, 81, 68, 69, 54, 66, 118, 75, 77, 70, 51, 60, 57, 52, 59, 87, 64, 56, 48, 84, 55, 60, 55, 69, 68, 60, 70, 70, 56, 75, 54, 65, 68, 72, 62, 44, 63, 59, 56, 53, 65, 72, 75, 67, 57, 82, 99, 58, 56, 65, 56, 73, 62, 60, 54, 48, 75, 52, 63, 86, 96, 62, 59, 54, 73, 78, 39, 64, 58, 66, 59, 68, 63, 53, 61, 60, 61, 56, 76, 58, 74, 92, 61, 49, 95, 63, 75, 59, 54, 66, 69, 63, 46, 51, 59, 58, 79, 64, 75, 67, 61, 55, 67, 48, 72, 68, 84, 75, 113, 60, 65, 89, 73, 80, 82, 43, 65, 63, 58, 105, 52, 78, 59, 86, 76, 52, 68, 52, 54, 59, 83, 63, 52, 57, 60, 76, 72, 75, 61, 53, 40, 83, 89, 141, 61, 50, 70, 70, 51, 88, 70, 61, 67, 50, 59, 85, 78, 66, 46, 49, 52, 48, 70, 65, 71, 67, 69, 78, 76, 100, 57, 72, 63, 75, 125, 46, 58, 77, 61, 52, 64, 81, 53, 45, 72, 53, 73, 54, 60, 81, 62, 55, 52, 67, 67, 63, 53, 56, 57, 74, 80, 77, 59, 73, 73, 50, 81, 65, 64, 73, 57, 45, 50, 47, 60, 62, 83, 77, 67, 49, 68, 56, 69, 59, 55, 52, 88, 64, 64, 55, 98, 74, 55, 66, 69, 114, 56, 53, 60, 61, 72, 58, 50, 71, 65, 66, 63, 59, 50, 67, 58, 76, 48, 73, 64, 52, 75, 64, 51, 59, 49, 61, 70, 52, 46, 62, 52, 65, 70, 59, 71, 68, 66, 65, 89, 44, 91, 56, 87, 63, 71, 57, 77, 72, 59, 82, 70, 68, 89, 64, 55, 68, 77, 59, 56, 61, 57, 63, 51, 61, 82, 68, 61, 80, 55, 72, 76, 63, 85, 83, 68, 63, 45, 85, 60, 62, 52, 111, 62, 54, 43, 45, 59, 61, 56, 49, 57, 64, 69, 75, 61, 51, 60, 61, 69, 63, 59, 75, 53, 80, 54, 43, 61, 53, 78, 54, 72, 68, 53, 59, 58, 67, 61, 82, 91, 59, 79, 74, 68, 66, 65, 58, 51, 77, 46, 41, 89, 61, 59, 54, 95, 57, 61, 72, 64, 58, 81, 67, 68, 79, 72, 56, 59, 82, 76, 58, 60, 46, 58, 60, 87, 62, 69, 79, 63, 68, 68, 64, 66, 63, 55, 48, 90, 54, 68, 66, 57, 65, 72, 72, 62, 50, 52, 61, 65, 56, 55, 66, 64, 86, 64, 60, 64, 64, 68, 58, 55, 67, 94, 50, 58, 59, 62, 65, 85, 65, 59, 82, 65, 72, 61, 47, 61, 65, 55, 54, 65, 49, 101, 76, 45, 63, 80, 60, 62, 62, 72, 72, 61, 66, 60, 91, 59, 61, 69, 44, 67, 72, 68, 59, 65, 64, 56, 69, 58, 65, 61, 54, 59, 107, 75, 103, 57, 68, 71, 101, 70, 54, 63, 74, 56, 61, 91, 54, 43, 46, 47, 78, 63, 75, 77, 68, 61, 42, 52, 61, 58, 77, 37, 58, 85, 65, 64, 65, 88, 61, 78, 58, 66, 83, 57, 76, 56, 68, 77, 46, 54, 49, 50, 71, 54, 67, 68, 75, 67, 65, 60, 68, 42, 58, 87, 52, 74, 54, 71, 49, 68, 64, 84, 45, 61, 80, 66, 68, 83, 67, 82, 61, 69, 53, 83, 79, 54, 68, 70, 60, 49, 71, 79, 76, 63, 67, 71, 55, 42, 55, 58, 53, 80, 50, 92, 70, 122, 79, 87, 67, 51, 84, 62, 72, 81, 86, 75, 69, 63, 84, 60, 57, 64, 81, 81, 72, 58, 69, 95, 67, 71, 63, 55, 57, 84, 57, 68, 73, 51, 58, 66, 56, 63, 88, 79, 53, 66, 67, 63, 48, 75, 70, 84, 46, 52, 76, 41, 90, 60, 57, 61, 82, 68, 63, 60, 59, 65, 85, 77, 69, 74, 97, 92, 57, 69, 90, 61, 71, 49, 76, 65, 55, 121, 89, 64, 59, 69, 66, 75, 73, 75, 63, 70, 87, 52, 47, 72, 69, 69, 66, 87, 69, 54, 51, 59, 80, 68, 65, 60, 65, 59, 55, 55, 149, 63, 68, 72, 77, 60, 50, 75, 75, 79, 85, 77, 80, 63, 62, 60, 54, 67, 52, 78, 48, 69, 76, 60, 51, 67, 59, 48, 54, 47, 60, 74, 47, 118, 62, 78, 62, 49, 77, 59, 54, 50, 63, 52, 72, 76, 56, 59, 45, 64, 60, 72, 59, 66, 67, 69, 67, 97, 82, 79, 54, 68, 57, 62, 58, 50, 48, 90, 51, 94, 58, 58, 68, 97, 62, 79, 85, 54, 53, 72, 49, 61, 75, 44, 48, 56, 78, 53, 60, 69, 66, 57, 74, 43, 52, 50, 82, 94, 56, 91, 50, 81, 83, 59, 58, 91, 66, 91, 62, 62, 63, 68, 49, 61, 51, 61, 66, 85, 72, 54, 57, 49, 51, 65, 52, 65, 59, 65, 62, 61, 57, 57, 64, 72, 91, 81, 67, 59, 81, 60, 74, 70, 61, 70, 55, 78, 65, 63, 71, 45, 53, 35, 66, 60, 53, 76, 71, 37, 67, 52, 86, 69, 79, 61, 81, 66, 54, 59, 60, 80, 49, 71, 72, 92, 60, 52, 82, 63, 65, 64, 62, 62, 58, 65, 55, 55, 61, 54, 59, 55, 52, 51, 84, 52, 63, 65, 54, 74, 61, 59, 76, 51, 56, 60, 71, 67, 53, 74, 58, 71, 60, 93, 79, 74, 61, 70, 66, 55, 61, 96, 83, 49, 50, 50, 61, 77, 62, 52, 59, 71, 53, 47, 62, 57, 65, 93, 61, 42, 56, 56, 61, 65, 70, 59, 65, 48, 63, 68, 76, 62, 57, 95, 69, 71, 77, 64, 75, 56, 48, 71, 63, 90, 61, 56, 61, 44, 64, 45, 58, 70, 69, 62, 49, 60, 58, 49, 76, 97, 83, 65, 71, 63, 51, 63, 64, 49, 77, 68, 55, 54, 61, 69, 80, 47, 80, 56, 52, 98, 45, 61, 72, 61, 66, 61, 68, 67, 65, 60, 66, 77, 73, 85, 54, 91, 61, 75, 69, 59, 54, 54, 82, 66, 73, 61, 49, 87, 56, 86, 71, 46, 70, 80, 41, 53, 76, 67, 55, 70, 65, 64, 67, 60, 68, 52, 72, 82, 83, 70, 65, 72, 66, 55, 66, 61, 72, 81, 50, 52, 67, 54, 84, 83, 71, 61, 62, 54, 74, 69, 66, 60, 52, 86, 93, 125, 61, 55, 75, 53, 78, 75, 68, 52, 66, 83, 56, 117, 54, 63, 72, 69, 70, 62, 53, 52, 73, 63, 80, 64, 52, 63, 58, 72, 87, 74, 61, 61, 59, 81, 56, 58, 33, 58, 67, 52, 67, 69, 55, 61, 46, 79, 59, 59, 64, 134, 62, 62, 52, 117, 62, 43, 60, 71, 52, 49, 57, 72, 71, 71, 68, 50, 59, 74, 56, 69, 59, 58, 57, 56, 60, 48, 66, 55, 54, 66, 62, 67, 86, 61, 63, 52, 40, 76, 74, 70, 68, 78, 66, 66, 74, 55, 56, 55, 55, 92, 99, 79, 80, 73, 46, 87, 70, 70, 62, 67, 77, 70, 75, 76, 70, 58, 72, 60, 58, 38, 78, 95, 76, 83, 57, 61, 93, 93, 57, 73, 64, 71, 66, 86, 67, 61, 74, 62, 83, 67, 65, 74, 61, 72, 51, 68, 55, 68, 86, 60, 64, 70, 70, 62, 52, 47, 54, 69, 60, 56, 69, 65, 67, 60, 63, 46, 63, 40, 92, 67, 52, 52, 58, 58, 58, 51, 75, 58, 60, 70, 61, 58, 32, 73, 61, 73, 60, 50, 79, 57, 69, 115, 72, 52, 79, 62, 83, 70, 81, 61, 67, 61, 63, 64, 51, 57, 54, 63, 74, 51, 56, 73, 53, 76, 74, 89, 61, 56, 68, 54, 79, 62, 62, 81, 43, 78, 67, 53, 58, 55, 86, 43, 65, 73, 52, 69, 60, 71, 75, 62, 66, 67, 57, 96, 63, 61, 82, 68, 70, 113, 79, 61, 77, 71, 76, 62, 64, 65, 67, 49, 67, 54, 56, 60, 67, 61, 69, 64, 55, 68, 84, 54, 54, 59, 61, 74, 56, 61, 58, 74, 72, 69, 67, 74, 53, 48, 61, 74, 67, 71, 65, 61, 54, 57, 75, 61, 56, 61, 54, 56, 68, 60, 63, 64, 52, 76, 45, 59, 77, 60, 62, 55, 61, 73, 81, 111, 42, 59, 65, 59, 59, 48, 56, 38, 69, 47, 79, 110, 65, 52, 54, 84, 61, 51, 50, 56, 61, 57, 64, 74, 32, 66, 60, 55, 76, 73, 59, 81, 55, 54, 59, 100, 70, 58, 50, 59, 62, 78, 56, 59, 59, 54, 83, 57, 53, 60, 53, 59, 70, 53, 55, 51, 44, 58, 66, 68, 70, 62, 62, 64, 82, 71, 83, 69, 71, 62, 56, 55, 54, 90, 47, 64, 60, 54, 61, 83, 45, 59, 112, 51, 56, 56, 49, 83, 67, 64, 43, 62, 57, 92, 58, 57, 61, 60, 47, 43, 69, 82, 47, 73, 87, 42, 87, 44, 58, 70, 73, 67, 59, 57, 47, 54, 46, 70, 60, 53, 65, 61, 60, 57, 73, 76, 138, 71, 82, 69, 65, 79, 67, 61, 65, 79, 69, 86, 82, 52, 68, 60, 70, 58, 62, 66, 69, 65, 80, 59, 60, 54, 69, 42, 45, 53, 84, 67, 58, 60, 62, 78, 59, 78, 80, 49, 66, 62, 75, 74, 66, 71, 63, 69, 81, 45, 55, 92, 96, 39, 58, 69, 93, 71, 88, 63, 79, 77, 54, 59, 54, 58, 73, 88, 59, 55, 82, 75, 76, 74, 53, 98, 54, 89, 57, 50, 81, 63, 76, 64, 39, 52, 51, 74, 64, 63, 69, 71, 52, 60, 70, 56, 50, 68, 26, 66, 58, 129, 54, 73, 65, 63, 81, 54, 49, 53, 62, 67, 73, 73, 56, 51, 75, 58, 80, 86, 84, 54, 79, 82, 71, 92, 74, 74, 60, 67, 76, 62, 65, 56, 56, 79, 72, 56, 59, 71, 68, 80, 63, 60, 45, 83, 88, 61, 54, 77, 66, 61, 72, 65, 74, 61, 62, 72, 55, 47, 57, 63, 59, 52, 58, 63, 98, 96, 71, 64, 82, 61, 71, 55, 63, 63, 72, 140, 64, 52, 82, 74, 67, 65, 76, 92, 77, 75, 54, 70, 77, 74, 64, 73, 83, 111, 60, 56, 57, 75, 78, 66, 35, 55, 79, 62, 60, 69, 116, 64, 49, 51, 59, 72, 58, 77, 92, 73, 75, 73, 71, 60, 56, 68, 62, 66, 86, 59, 67, 55, 49, 74, 54, 61, 58, 66, 57, 63, 59, 72, 72, 56, 79, 51, 74, 55, 72, 69, 59, 65, 59, 55, 46, 70, 54, 64, 56, 59, 71, 50, 68, 32, 90, 50, 67, 100, 80, 90, 73, 53, 51, 76, 59, 56, 65, 52, 75, 96, 57, 57, 58, 85, 55, 68, 74, 71, 54, 68, 55, 62, 55, 65, 67, 59, 85, 78, 56, 75, 72, 68, 69, 53, 86, 65, 52, 109, 44, 93, 70, 67, 39, 58, 75, 124, 62, 46, 95, 57, 76, 62, 61, 61, 51, 51, 51, 100, 62, 77, 67, 62, 64, 73, 57, 71, 73, 67, 58, 69, 70, 59, 48, 64, 52, 78, 68, 56, 63, 66, 57, 81, 80, 53, 54, 76, 54, 75, 58, 82, 64, 67, 70, 59, 54, 92, 79, 82, 62, 60, 44, 65, 56, 57, 86, 57, 59, 54, 71, 68, 65, 63, 72, 56, 69, 52, 71, 49, 66, 82, 70, 47, 66, 58, 38, 67, 86, 73, 62, 67, 64, 75, 99, 62, 66, 70, 50, 57, 62, 68, 60, 38, 67, 90, 75, 58, 53, 68, 74, 72, 51, 84, 96, 67, 48, 78, 60, 70, 62, 78, 54, 89, 85, 64, 53, 76, 71, 50, 53, 63, 63, 41, 60, 45, 71, 66, 45, 61, 61, 62, 68, 67, 90, 40, 63, 57, 54, 66, 68, 49, 49, 111, 68, 68, 95, 73, 83, 51, 62, 83, 49, 50, 56, 88, 71, 62, 68, 74, 95, 60, 63, 60, 53, 60, 62, 65, 44, 81, 86, 54, 66, 65, 67, 44, 54, 61, 67, 58, 63, 80, 64, 60, 51, 65, 98, 55, 84, 102, 64, 67, 76, 44, 74, 48, 78, 61, 79, 45, 68, 45, 68, 81, 39, 56, 63, 70, 58, 95, 52, 60, 79, 54, 67, 103, 50, 51, 68, 83, 54, 59, 79, 59, 64, 67, 62, 61, 63, 57, 65, 55, 62, 72, 76, 56, 62, 72, 54, 81, 67, 55, 58, 50, 79, 79, 71, 82, 70, 43, 53, 58, 82, 63, 83, 74, 56, 63, 71, 54, 65, 48, 56, 76, 81, 139, 78, 71, 72, 76, 56, 47, 52, 72, 58, 64, 57, 72, 61, 62, 84, 78, 59, 83, 68, 63, 52, 53, 53, 68, 49, 65, 64, 75, 79, 60, 47, 77, 60, 92, 54, 52, 35, 57, 59, 65, 57, 46, 54, 66, 114, 111, 48, 63, 81, 133, 74, 56, 68, 105, 63, 56, 60, 48, 64, 73, 46, 63, 64, 69, 85, 86, 63, 94, 64, 60, 57, 47, 66, 69, 59, 66, 43, 66, 54, 95, 64, 55, 70, 79, 66, 41, 58, 94, 81, 57, 53, 80, 81, 73, 45, 49, 62, 53, 59, 77, 80, 67, 62, 76, 63, 65, 85, 55, 53, 55, 59, 63, 58, 58, 58, 53, 63, 79, 64, 72, 63, 56, 73, 68, 51, 50, 65, 64, 73, 57, 68, 54, 72, 63, 85, 53, 64, 58, 79, 48, 54, 56, 59, 59, 75, 54, 64, 50, 73, 89, 55, 86, 58, 76, 45, 55, 48, 51, 66, 87, 96, 61, 75, 54, 58, 57, 60, 75, 74, 65, 50, 66, 60, 65, 68, 51, 73, 58, 88, 54, 47, 62, 54, 74, 59, 102, 58, 49, 70, 43, 60, 65, 49, 61, 60, 73, 73, 71, 62, 66, 64, 69, 65, 64, 76, 62, 70, 82, 84, 55, 56, 62, 61, 49, 60, 62, 53, 52, 51, 80, 52, 52, 60, 66, 62, 81, 72, 48, 54, 82, 60, 82, 70, 61, 53, 75, 50, 65, 64, 50, 63, 56, 68, 91, 57, 48, 44, 51, 62, 57, 64, 76, 58, 75, 55, 63, 47, 46, 68, 49, 73, 43, 69, 54, 79, 64, 62, 82, 101, 102, 85, 69, 80, 43, 61, 65, 53, 63, 57, 67, 92, 67, 78, 69, 51, 71, 72, 80, 45, 71, 68, 69, 78, 67, 74, 52, 77, 60, 50, 56, 67, 69, 67, 71, 99, 57, 70, 75, 55, 48, 54, 49, 54, 61, 54, 50, 92, 64, 68, 60, 66, 56, 61, 71, 66, 58, 68, 84, 51, 69, 61, 110, 74, 83, 74, 68, 58, 71, 55, 46, 71, 63, 88, 80, 59, 55, 63, 82, 73, 59, 58, 99, 65, 52, 82, 63, 81, 51, 50, 82, 54, 61, 62, 53, 50, 89, 54, 63, 65, 75, 48, 55, 61, 60, 62, 75, 61, 58, 61, 73, 65, 60, 75, 46, 45, 55, 63, 77, 53, 84, 52, 39, 43, 61, 84, 54, 48, 59, 61, 72, 67, 63, 46, 65, 71, 58, 60, 80, 59, 57, 80, 59, 52, 74, 59, 50, 57, 87, 50, 84, 54, 64, 89, 63, 57, 46, 67, 56, 49, 69, 70, 66, 76, 51, 52, 53, 52, 65, 65, 64, 90, 96, 117, 70, 36, 97, 61, 59, 60, 79, 74, 64, 66, 62, 40, 82, 62, 68, 56, 59, 77, 84, 77, 56, 46, 67, 47, 87, 66, 50, 69, 54, 63, 68, 56, 69, 89, 44, 49, 98, 54, 60, 37, 54, 58, 74, 56, 71, 79, 50, 40, 86, 74, 55, 74, 70, 70, 67, 69, 67, 65, 54, 68, 74, 57, 78, 71, 57, 63, 65, 64, 53, 111, 55, 57, 61, 51, 63, 54, 68, 81, 100, 79, 54, 65, 57, 61, 66, 89, 70, 57, 66, 66, 68, 67, 57, 59, 53, 60, 68, 79, 78, 68, 103, 52, 59, 59, 45, 51, 61, 70, 69, 63, 66, 57, 59, 60, 54, 74, 61, 78, 74, 95, 51, 68, 61, 70, 60, 55, 57, 70, 71, 59, 61, 45, 54, 51, 55, 64, 61, 63, 64, 88, 62, 67, 48, 61, 57, 55, 69, 52, 50, 55, 67, 68, 51, 67, 58, 79, 66, 67, 42, 59, 48, 64, 94, 94, 43, 95, 71, 71, 52, 103, 79, 56, 56, 68, 71, 85, 151, 71, 59, 70, 89, 63, 69, 85, 60, 50, 71, 51, 54, 74, 72, 65, 53, 76, 94, 94, 57, 69, 56, 70, 52, 103, 71, 89, 58, 82, 91, 102, 63, 92, 59, 58, 65, 49, 83, 90, 60, 66, 67, 62, 60, 61, 68, 58, 84, 70, 54, 53, 54, 72, 76, 53, 84, 68, 45, 76, 81, 53, 61, 58, 46, 79, 83, 52, 74, 69, 63, 49, 47, 65, 59, 47, 73, 69, 63, 60, 56, 61, 51, 70, 54, 80, 50, 48, 82, 63, 97, 63, 83, 65, 57, 67, 71, 58, 61, 37, 81, 57, 55, 87, 82, 59, 63, 60, 72, 69, 51, 71, 42, 59, 49, 68, 63, 66, 55, 54, 54, 131, 55, 99, 58, 62, 92, 73, 101, 44, 87, 57, 62, 41, 61, 49, 75, 68, 72, 78, 77, 84, 53, 79, 54, 67, 57, 56, 107, 89, 69, 70, 57, 56, 72, 59, 52, 69, 70, 63, 77, 62, 74, 43, 80, 62, 78, 69, 80, 75, 65, 62, 42, 71, 75, 57, 54, 63, 62, 72, 60, 86, 55, 61, 66, 53, 42, 64, 43, 62, 53, 67, 52, 66, 77, 94, 72, 46, 73, 73, 69, 60, 97, 81, 44, 53, 58, 82, 58, 54, 70, 67, 68, 90, 57, 46, 70, 74, 46, 85, 69, 80, 74, 64, 65, 53, 88, 57, 91, 55, 70, 72, 76, 69, 93, 101, 47, 63, 60, 61, 65, 55, 83, 59, 42, 74, 68, 94, 52, 66, 70, 59, 60, 73, 78, 69, 60, 74, 62, 60, 89, 66, 61, 55, 63, 47, 31, 117, 68, 62, 86, 69, 69, 56, 60, 52, 59, 52, 72, 68, 64, 76, 75, 65, 66, 58, 73, 75, 79, 53, 80, 47, 94, 63, 49, 73, 56, 62, 65, 83, 110, 72, 51, 73, 45, 71, 56, 63, 82, 64, 66, 66, 66, 57, 94, 66, 66, 63, 72, 50, 74, 55, 66, 47, 76, 83, 64, 66, 94, 63, 81, 57, 60, 58, 62, 56, 52, 66, 62, 59, 56, 73, 67, 78, 68, 48, 45, 66, 55, 79, 83, 64, 69, 65, 80, 52, 55, 65, 107, 50, 56, 66, 58, 67, 80, 57, 54, 85, 55, 57, 47, 71, 66, 62, 64, 64, 53, 45, 63, 64, 53, 55, 63, 40, 81, 107, 77, 84, 71, 65, 69, 105, 71, 89, 68, 66, 52, 67, 58, 101, 63, 68, 93, 92, 136, 57, 68, 70, 59, 54, 74, 74, 67, 70, 51, 49, 54, 61, 56, 56, 47, 81, 69, 63, 61, 67, 63, 59, 58, 64, 63, 41, 66, 62, 68, 61, 84, 56, 72, 59, 80, 53, 53, 60, 57, 66, 80, 55, 74, 76, 81, 75, 71, 86, 103, 77, 52, 46, 114, 84, 44, 68, 71, 79, 51, 84, 70, 60, 43, 56, 55, 59, 95, 52, 82, 63, 57, 54, 55, 55, 56, 72, 87, 75, 83, 63, 60, 74, 81, 64, 71, 87, 77, 113, 49, 64, 74, 71, 57, 55, 68, 71, 77, 67, 68, 78, 65, 78, 62, 64, 70, 57, 58, 69, 62, 60, 59, 59, 68, 78, 49, 81, 72, 52, 60, 51, 66, 71, 54, 58, 49, 64, 68, 72, 85, 58, 63, 82, 44, 69, 74, 83, 49, 55, 63, 50, 63, 59, 53, 55, 65, 57, 75, 74, 61, 75, 57, 53, 74, 70, 69, 62, 66, 63, 55, 72, 61, 65, 84, 58, 66, 40, 67, 56, 49, 51, 52, 57, 66, 69, 106, 55, 57, 62, 85, 55, 66, 67, 66, 57, 54, 45, 57, 71, 56, 63, 56, 54, 80, 61, 64, 88, 55, 56, 59, 52, 62, 75, 77, 66, 71, 70, 66, 62, 73, 69, 49, 73, 61, 56, 57, 69, 65, 86, 80, 56, 60, 80, 72, 84, 86, 58, 68, 68, 60, 65, 75, 66, 43, 59, 101, 61, 78, 58, 67, 61, 50, 44, 67, 47, 55, 64, 58, 51, 118, 62, 53, 57, 76, 56, 70, 66, 66, 79, 51, 49, 63, 60, 62, 105, 53, 52, 96, 62, 53, 42, 60, 59, 82, 57, 58, 73, 58, 123, 59, 67, 53, 54, 65, 55, 66, 72, 68, 64, 81, 59, 53, 83, 57, 67, 67, 71, 59, 77, 83, 61, 63, 67, 59, 65, 68, 76, 64, 46, 64, 52, 54, 74, 90, 70, 81, 55, 68, 54, 73, 57, 65, 67, 74, 59, 54, 57, 69, 65, 73, 61, 34, 56, 93, 69, 45, 55, 103, 60, 60, 56, 55, 82, 76, 70, 83, 50, 62, 69, 57, 63, 56, 58, 55, 66, 70, 79, 70, 73, 68, 46, 76, 51, 62, 62, 57, 64, 76, 42, 72, 51, 45, 77, 44, 72, 63, 66, 54, 72, 85, 67, 67, 81, 52, 97, 60, 72, 41, 52, 83, 42, 77, 59, 70, 80, 58, 62, 71, 65, 51, 63, 67, 64, 80, 80, 70, 62, 76, 51, 85, 58, 49, 56, 65, 72, 67, 55, 49, 54, 78, 61, 57, 56, 54, 71, 71, 53, 65, 56, 70, 52, 60, 56, 75, 88, 50, 52, 59, 54, 64, 56, 61, 118, 73, 54, 96, 67, 64, 72, 59, 64, 53, 55, 61, 67, 66, 72, 50, 54, 65, 56, 79, 52, 70, 80, 63, 66, 76, 59, 67, 67, 55, 72, 62, 72, 73, 83, 72, 67, 90, 97, 54, 76, 52, 69, 59, 67, 71, 61, 65, 54, 62, 67, 56, 62, 75, 64, 60, 67, 42, 88, 68, 51, 64, 47, 60, 46, 76, 85, 68, 164, 58, 66, 78, 58, 68, 66, 69, 55, 69, 62, 72, 72, 67, 105, 71, 78, 77, 51, 55, 65, 54, 59, 110, 88, 56, 56, 50, 59, 46, 50, 70, 61, 101, 60, 72, 81, 68, 59, 61, 70, 68, 66, 63, 55, 83, 58, 88, 79, 55, 75, 84, 32, 41, 67, 75, 50, 56, 68, 62, 64, 61, 67, 61, 70, 61, 58, 51, 64, 59, 52, 80, 78, 66, 57, 65, 59, 57, 65, 65, 59, 66, 58, 82, 59, 67, 61, 49, 74, 61, 45, 50, 68, 59, 69, 60, 61, 68, 82, 91, 52, 80, 55, 60, 64, 79, 52, 65, 69, 137, 72, 50, 81, 62, 61, 69, 69, 97, 65, 67, 81, 54, 56, 48, 61, 59, 62, 78, 59, 51, 73, 57, 95, 67, 57, 58, 78, 55, 60, 73, 109, 48, 48, 63, 59, 57, 47, 66, 71, 67, 59, 62, 66, 67, 60, 60, 70, 101, 72, 102, 48, 60, 54, 72, 58, 64, 57, 56, 59, 64, 57, 88, 58, 63, 67, 59, 53, 59, 62, 60, 60, 61, 48, 41, 65, 72, 65, 60, 51, 54, 65, 64, 66, 55, 64, 85, 61, 81, 96, 98, 52, 58, 60, 69, 70, 55, 68, 68, 64, 85, 74, 59, 71, 74, 47, 63, 100, 52, 66, 62, 61, 52, 64, 54, 72, 61, 61, 71, 59, 69, 64, 43, 48, 57, 64, 49, 57, 98, 117, 87, 71, 52, 75, 66, 76, 71, 53, 73, 70, 56, 72, 83, 62, 76, 53, 55, 79, 76, 64, 65, 70, 64, 73, 59, 62, 78, 46, 60, 56, 50, 63, 58, 90, 84, 73, 74, 62, 55, 79, 59, 59, 68, 61, 50, 60, 69, 67, 57, 35, 61, 44, 49, 60, 63, 74, 63, 77, 66, 55, 71, 77, 55, 58, 67, 69, 66, 49, 56, 53, 52, 65, 72, 82, 56, 53, 56, 53, 47, 57, 70, 62, 54, 76, 67, 63, 101, 67, 52, 60, 68, 69, 78, 117, 66, 77, 71, 58, 49, 69, 62, 64, 69, 72, 50, 61, 55, 66, 57, 62, 71, 55, 74, 57, 75, 62, 67, 71, 72, 64, 69, 61, 49, 76, 58, 62, 52, 66, 68, 66, 76, 80, 68, 56, 56, 63, 60, 72, 73, 106, 66, 70, 69, 65, 65, 56, 59, 55, 66, 65, 56, 42, 114, 63, 62, 79, 50, 71, 72, 59, 77, 72, 47, 56, 68, 63, 72, 69, 59, 71, 99, 53, 62, 62, 58, 56, 69, 55, 70, 70, 59, 55, 74, 58, 55, 83, 62, 56, 64, 54, 62, 65, 59, 64, 56, 73, 72, 71, 57, 54, 87, 40, 55, 63, 67, 75, 70, 51, 59, 71, 47, 68, 61, 60, 61, 73, 53, 72, 75, 56, 63, 82, 55, 73, 59, 57, 53, 72, 62, 56, 59, 74, 62, 56, 67, 84, 68, 59, 67, 60, 61, 77, 74, 53, 65, 65, 67, 71, 73, 78, 72, 54, 61, 57, 67, 69, 66, 77, 57, 55, 54, 103, 71, 53, 69, 46, 49, 48, 75, 70, 53, 54, 67, 64, 124, 73, 67, 62, 47, 56, 78, 60, 60, 48, 68, 58, 88, 87, 61, 65, 78, 90, 74, 58, 79, 52, 66, 68, 86, 58, 63, 69, 58, 77, 78, 57, 74, 67, 62, 66, 68, 47, 64, 58, 62, 54, 49, 55, 68, 76, 74, 76, 65, 54, 123, 77, 56, 69, 96, 55, 68, 62, 59, 64, 66, 47, 60, 61, 77, 74, 65, 60, 50, 69, 104, 66, 66, 63, 81, 57, 51, 63, 71, 70, 82, 58, 53, 62, 80, 59, 81, 74, 51, 62, 53, 62, 59, 46, 72, 57, 64, 71, 53, 68, 54, 56, 69, 53, 81, 76, 69, 71, 53, 82, 76, 58, 57, 63, 65, 96, 80, 52, 64, 57, 61, 47, 62, 63, 60, 55, 63, 38, 67, 75, 89, 63, 79, 71, 88, 57, 74, 62, 57, 59, 59, 65, 76, 60, 61, 66, 63, 75, 81, 66, 81, 63, 72, 59, 77, 76, 69, 54, 52, 69, 42, 65, 57, 65, 90, 55, 46, 65, 64, 53, 83, 65, 61, 62, 60, 60, 34, 74, 43, 48, 74, 89, 44, 68, 68, 43, 70, 60, 54, 63, 57, 52, 48, 64, 65, 58, 46, 111, 71, 71, 49, 55, 76, 71, 59, 37, 61, 74, 81, 70, 51, 57, 76, 76, 49, 58, 83, 66, 85, 55, 81, 61, 73, 57, 78, 85, 60, 89, 56, 56, 76, 55, 51, 51, 67, 57, 68, 63, 75, 67, 68, 75, 49, 50, 87, 64, 56, 120, 37, 82, 69, 71, 51, 101, 78, 62, 64, 55, 63, 52, 60, 67, 79, 54, 54, 60, 94, 62, 84, 80, 87, 72, 73, 53, 66, 62, 58, 73, 55, 72, 65, 66, 51, 100, 77, 71, 72, 65, 65, 63, 53, 59, 59, 55, 72, 55, 59, 84, 55, 61, 87, 61, 53, 62, 66, 74, 63, 79, 65, 55, 81, 61, 67, 52, 64, 48, 61, 49, 51, 73, 66, 98, 72, 52, 64, 61, 60, 76, 88, 73, 75, 68, 119, 65, 81, 49, 62, 58, 65, 64, 85, 54, 68, 86, 50, 61, 58, 68, 86, 71, 51, 53, 75, 76, 54, 62, 69, 58, 95, 66, 61, 71, 47, 51, 63, 61, 71, 51, 65, 50, 56, 61, 62, 67, 59, 96, 78, 58, 59, 78, 75, 77, 78, 62, 66, 65, 77, 57, 112, 77, 73, 75, 58, 68, 59, 83, 86, 71, 43, 61, 71, 66, 52, 58, 62, 49, 42, 46, 61, 74, 47, 71, 61, 60, 66, 61, 51, 69, 69, 57, 48, 67, 72, 70, 60, 71, 49, 51, 68, 66, 67, 63, 61, 61, 53, 63, 61, 57, 61, 60, 68, 72, 66, 111, 54, 54, 84, 57, 59, 67, 66, 68, 57, 54, 84, 69, 58, 83, 104, 79, 75, 53, 97, 68, 60, 68, 76, 60, 44, 54, 44, 56, 66, 62, 77, 71, 82, 77, 64, 48, 58, 52, 76, 45, 77, 61, 69, 57, 87, 63, 73, 53, 59, 94, 53, 57, 54, 52, 61, 83, 72, 93, 66, 72, 80, 66, 74, 55, 75, 71, 73, 56, 56, 62, 80, 79, 66, 61, 61, 61, 84, 40, 50, 64, 49, 60, 50, 72, 62, 65, 80, 60, 51, 66, 68, 56, 45, 81, 55, 61, 70, 56, 47, 69, 108, 57, 72, 64, 54, 54, 71, 47, 60, 81, 46, 59, 52, 53, 65, 68, 68, 58, 86, 85, 57, 51, 57, 56, 64, 65, 70, 50, 66, 58, 56, 68, 58, 56, 72, 64, 72, 65, 39, 55, 60, 65, 58, 63, 67, 87, 84, 90, 71, 81, 63, 80, 50, 62, 52, 74, 64, 45, 61, 69, 69, 50, 80, 62, 79, 53, 71, 67, 62, 133, 78, 51, 60, 45, 50, 68, 138, 89, 82, 76, 59, 90, 82, 58, 71, 55, 63, 78, 55, 44, 69, 92, 68, 70, 70, 73, 71, 66, 77, 95, 60, 81, 61, 49, 75, 68, 72, 97, 60, 102, 62, 55, 72, 58, 82, 65, 61, 73, 92, 75, 65, 46, 60, 65, 82, 50, 81, 54, 58, 69, 69, 61, 63, 75, 45, 53, 49, 62, 50, 63, 53, 95, 59, 71, 74, 73, 54, 58, 62, 60, 74, 53, 69, 54, 80, 62, 49, 87, 65, 61, 69, 53, 85, 55, 70, 51, 85, 104, 49, 59, 72, 67, 54, 53, 76, 84, 53, 60, 70, 74, 94, 60, 78, 70, 72, 61, 52, 79, 63, 78, 58, 53, 62, 63, 68, 61, 80, 71, 59, 81, 71, 62, 67, 80, 86, 59, 97, 75, 66, 51, 79, 81, 69, 46, 47, 53, 54, 82, 45, 61, 55, 83, 56, 58, 99, 76, 59, 63, 56, 47, 54, 84, 60, 59, 57, 68, 62, 63, 69, 49, 76, 65, 63, 65, 76, 71, 75, 73, 56, 65, 51, 39, 71, 54, 63, 62, 74, 51, 64, 82, 62, 65, 62, 75, 97, 65, 63, 65, 53, 77, 54, 78, 72, 67, 45, 57, 57, 96, 76, 65, 68, 58, 54, 55, 86, 77, 52, 59, 77, 62, 56, 75, 64, 96, 65, 60, 84, 41, 127, 59, 56, 66, 86, 70, 77, 79, 91, 53, 74, 77, 64, 75, 72, 67, 41, 69, 52, 62, 50, 72, 67, 65, 56, 76, 79, 59, 65, 57, 55, 75, 57, 63, 54, 75, 63, 57, 64, 64, 58, 64, 48, 60, 40, 75, 57, 66, 76, 69, 56, 70, 50, 60, 46, 61, 64, 58, 58, 78, 110, 83, 70, 56, 61, 59, 74, 68, 79, 66, 77, 52, 47, 70, 72, 72, 57, 49, 79, 70, 70, 51, 62, 74, 63, 54, 82, 77, 43, 58, 77, 56, 58, 50, 53, 55, 75, 68, 55, 71, 64, 56, 43, 66, 60, 75, 62, 72, 66, 55, 64, 67, 69, 63, 59, 59, 72, 63, 65, 62, 90, 71, 78, 51, 41, 63, 54, 71, 60, 49, 83, 80, 57, 49, 56, 58, 93, 61, 72, 75, 51, 72, 52, 81, 57, 69, 60, 71, 56, 55, 76, 43, 60, 65, 74, 55, 60, 63, 65, 77, 54, 71, 50, 86, 79, 79, 62, 52, 82, 77, 63, 94, 75, 64, 74, 48, 51, 74, 55, 67, 76, 84, 156, 65, 57, 58, 75, 69, 60, 53, 61, 52, 53, 82, 72, 63, 59, 70, 62, 70, 67, 52, 77, 61, 51, 50, 52, 69, 64, 47, 62, 56, 81, 59, 76, 78, 95, 68, 75, 57, 57, 57, 72, 81, 51, 73, 53, 91, 45, 64, 64, 64, 118, 64, 71, 60, 144, 54, 63, 51, 58, 67, 69, 69, 74, 57, 75, 68, 96, 53, 60, 75, 88, 74, 41, 69, 61, 58, 51, 63, 59, 64, 32, 78, 71, 77, 58, 73, 40, 56, 73, 85, 103, 71, 45, 58, 81, 58, 71, 85, 69, 75, 63, 89, 60, 64, 74, 75, 75, 60, 68, 63, 60, 91, 72, 51, 51, 64, 53, 56, 66, 54, 81, 47, 81, 82, 44, 57, 81, 40, 58, 58, 69, 54, 79, 91, 65, 83, 61, 46, 56, 58, 62, 47, 72, 56, 49, 58, 51, 57, 71, 85, 48, 72, 58, 52, 78, 71, 31, 61, 57, 61, 53, 60, 51, 53, 73, 81, 63, 73, 52, 64, 59, 56, 53, 45, 73, 58, 48, 84, 71, 52, 54, 62, 67, 66, 67, 71, 49, 75, 57, 57, 75, 77, 67, 78, 62, 83, 54, 87, 74, 56, 62, 63, 59, 60, 66, 65, 57, 60, 81, 67, 63, 54, 65, 67, 70, 44, 76, 59, 69, 75, 68, 52, 80, 53, 104, 49, 84, 65, 60, 64, 76, 84, 58, 63, 59, 70, 89, 64, 73, 65, 68, 56, 70, 77, 90, 67, 71, 75, 71, 64, 75, 70, 62, 65, 75, 65, 67, 66, 65, 79, 59, 65, 71, 64, 44, 49, 55, 65, 68, 66, 128, 56, 62, 53, 80, 60, 72, 71, 64, 152, 84, 69, 51, 46, 59, 62, 55, 60, 51, 62, 61, 56, 53, 67, 55, 53, 58, 81, 48, 55, 83, 60, 62, 65, 59, 56, 64, 68, 80, 54, 54, 62, 61, 61, 57, 61, 75, 75, 51, 64, 55, 59, 60, 54, 52, 61, 58, 74, 52, 67, 61, 50, 101, 72, 80, 56, 68, 71, 75, 53, 68, 89, 53, 79, 70, 68, 74, 67, 82, 58, 59, 61, 63, 54, 45, 84, 64, 80, 57, 41, 56, 62, 69, 62, 78, 72, 74, 69, 62, 54, 95, 63, 59, 78, 50, 82, 59, 65, 66, 50, 75, 47, 62, 57, 67, 66, 57, 75, 68, 67, 105, 50, 70, 52, 73, 71, 70, 58, 61, 50, 57, 54, 48, 85, 74, 93, 64, 57, 75, 61, 76, 63, 55, 64, 67, 51, 61, 60, 74, 64, 75, 56, 64, 84, 76, 54, 87, 72, 79, 58, 55, 60, 56, 60, 70, 69, 64, 59, 70, 71, 66, 74, 52, 112, 66, 61, 75, 60, 68, 66, 62, 79, 53, 73, 94, 67, 58, 44, 83, 41, 62, 98, 78, 63, 70, 67, 49, 60, 48, 65, 39, 54, 60, 71, 63, 75, 79, 58, 50, 58, 64, 66, 58, 65, 72, 59, 69, 68, 63, 52, 64, 67, 59, 64, 67, 73, 64, 64, 56, 105, 53, 65, 54, 83, 54, 54, 82, 51, 81, 58, 90, 50, 60, 68, 60, 39, 42, 63, 74, 58, 71, 70, 74, 64, 50, 72, 61, 50, 56, 66, 64, 50, 70, 66, 83, 65, 61, 61, 65, 51, 94, 52, 53, 50, 134, 56, 59, 72, 77, 50, 62, 54, 66, 49, 73, 68, 63, 57, 64, 66, 58, 42, 81, 45, 61, 65, 62, 60, 69, 64, 75, 76, 67, 71, 66, 66, 55, 70, 62, 61, 119, 77, 86, 61, 72, 58, 55, 58, 59, 48, 71, 63, 79, 73, 69, 59, 68, 67, 67, 83, 54, 84, 59, 66, 61, 63, 46, 55, 57, 77, 84, 62, 72, 70, 67, 64, 83, 87, 63, 75, 129, 66, 60, 76, 51, 75, 74, 65, 81, 61, 68, 83, 64, 63, 61, 58, 58, 44, 94, 59, 61, 60, 66, 84, 65, 71, 59, 83, 73, 50, 75, 98, 89, 86, 67, 60, 72, 63, 61, 83, 52, 66, 67, 57, 51, 70, 51, 66, 76, 52, 62, 68, 55, 60, 94, 59, 64, 52, 72, 63, 67, 70, 80, 76, 54, 68, 47, 68, 60, 58, 71, 73, 62, 61, 58, 65, 54, 62, 67, 73, 56, 73, 64, 48, 79, 69, 61, 66, 69, 45, 70, 45, 66, 63, 67, 80, 61, 51, 63, 47, 74, 46, 59, 66, 67, 49, 65, 91, 64, 64, 84, 61, 57, 62, 73, 65, 61, 65, 69, 47, 71, 66, 65, 104, 67, 64, 70, 65, 124, 47, 104, 36, 61, 49, 67, 63, 108, 51, 68, 56, 53, 64, 76, 59, 58, 51, 62, 62, 97, 60, 70, 58, 58, 64, 59, 57, 59, 59, 80, 46, 59, 69, 64, 75, 48, 71, 88, 63, 60, 61, 51, 52, 65, 67, 67, 47, 65, 53, 63, 84, 67, 68, 60, 55, 59, 62, 77, 81, 66, 63, 65, 63, 55, 52, 77, 117, 51, 57, 57, 89, 73, 65, 59, 73, 61, 58, 59, 57, 48, 49, 61, 60, 51, 75, 60, 62, 54, 52, 62, 53, 65, 58, 53, 76, 55, 69, 80, 56, 58, 67, 59, 68, 68, 59, 74, 60, 71, 57, 72, 51, 63, 54, 55, 69, 65, 58, 75, 66, 78, 80, 52, 57, 62, 80, 78, 63, 60, 61, 40, 55, 75, 77, 91, 69, 69, 70, 47, 62, 61, 62, 82, 57, 58, 52, 48, 72, 56, 58, 57, 58, 72, 78, 84, 59, 70, 66, 73, 58, 61, 62, 59, 62, 97, 63, 58, 61, 61, 64, 77, 96, 88, 57, 65, 68, 56, 91, 67, 63, 57, 74, 61, 67, 59, 61, 62, 73, 69, 69, 63, 50, 55, 54, 75, 65, 61, 66, 74, 58, 88, 73, 77, 56, 65, 64, 66, 54, 66, 61, 62, 66, 52, 61, 98, 52, 72, 71, 62, 52, 49, 64, 71, 62, 42, 84, 75, 56, 50, 44, 82, 65, 61, 56, 68, 61, 53, 133, 62, 59, 75, 59, 56, 66, 97, 63, 64, 58, 58, 58, 87, 58, 69, 53, 61, 54, 55, 63, 95, 80, 66, 66, 53, 87, 81, 46, 46, 69, 68, 71, 54, 89, 52, 54, 85, 78, 130, 53, 55, 88, 68, 52, 65, 71, 50, 54, 69, 54, 69, 73, 51, 74, 57, 67, 64, 65, 80, 68, 68, 72, 63, 50, 61, 46, 65, 51, 75, 60, 58, 67, 59, 61, 69, 53, 80, 63, 50, 65, 63, 63, 63, 68, 94, 53, 70, 76, 116, 62, 81, 60, 110, 65, 64, 61, 61, 53, 47, 63, 65, 68, 51, 78, 67, 53, 82, 64, 62, 68, 66, 56, 65, 56, 67, 70, 78, 66, 95, 67, 62, 57, 66, 69, 85, 71, 55, 58, 67, 58, 62, 83, 74, 59, 70, 89, 61, 61, 66, 51, 61, 63, 61, 61, 62, 85, 61, 56, 65, 59, 58, 64, 64, 80, 59, 62, 70, 73, 55, 54, 94, 68, 68, 55, 56, 60, 57, 95, 59, 60, 76, 69, 65, 64, 76, 68, 53, 64, 58, 67, 68, 53, 77, 62, 65, 65, 80, 62, 66, 60, 78, 62, 56, 75, 54, 73, 59, 61, 78, 97, 61, 55, 66, 62, 91, 62, 62, 94, 60, 70, 70, 57, 82, 73, 76, 65, 47, 89, 61, 50, 74, 78, 73, 71, 37, 60, 68, 91, 63, 64, 75, 53, 58, 52, 68, 72, 45, 48, 50, 49, 69, 66, 66, 62, 67, 54, 87, 43, 52, 57, 62, 63, 72, 56, 62, 52, 52, 52, 69, 71, 59, 56, 78, 54, 64, 60, 66, 53, 45, 110, 77, 70, 88, 46, 83, 92, 76, 77, 59, 75, 55, 51, 71, 44, 79, 91, 68, 86, 56, 74, 57, 70, 71, 67, 61, 46, 50, 79, 51, 47, 70, 62, 53, 71, 59, 66, 63, 64, 115, 79, 87, 54, 86, 66, 71, 72, 55, 76, 76, 58, 71, 67, 53, 61, 74, 53, 53, 66, 94, 55, 51, 61, 62, 74, 59, 76, 63, 67, 56, 77, 64, 66, 76, 59, 78, 50, 48, 79, 71, 83, 71, 77, 36, 68, 81, 71, 61, 57, 67, 86, 56, 65, 57, 63, 91, 41, 84, 63, 77, 47, 90, 41, 82, 71, 59, 58, 60, 67, 56, 51, 64, 55, 84, 60, 97, 66, 101, 62, 54, 55, 70, 53, 65, 34, 60, 58, 74, 70, 51, 52, 59, 68, 62, 67, 60, 50, 74, 59, 71, 60, 47, 48, 78, 68, 55, 82, 46, 43, 70, 73, 59, 66, 68, 62, 75, 66, 69, 58, 78, 50, 59, 66, 56, 87, 75, 58, 71, 62, 69, 57, 59, 48, 61, 73, 50, 58, 59, 73, 80, 73, 39, 72, 53, 47, 51, 60, 62, 72, 65, 78, 67, 66, 40, 58, 96, 55, 49, 63, 69, 54, 52, 73, 58, 86, 49, 63, 74, 76, 68, 68, 72, 120, 53, 64, 92, 93, 53, 55, 60, 87, 66, 56, 51, 41, 50, 63, 76, 80, 42, 79, 79, 53, 62, 41, 74, 56, 63, 57, 49, 56, 49, 117, 61, 62, 67, 66, 50, 67, 76, 64, 51, 81, 46, 68, 62, 70, 65, 91, 94, 54, 58, 61, 75, 67, 64, 76, 58, 80, 68, 70, 71, 87, 53, 76, 74, 66, 84, 81, 66, 60, 75, 71, 71, 50, 50, 64, 86, 68, 67, 48, 46, 59, 55, 53, 74, 69, 60, 84, 67, 55, 61, 62, 72, 53, 58, 67, 59, 48, 63, 76, 51, 62, 105, 53, 62, 64, 73, 78, 66, 70, 54, 88, 87, 54, 47, 43, 76, 61, 57, 81, 76, 72, 53, 78, 73, 57, 62, 69, 71, 61, 69, 68, 47, 65, 76, 62, 51, 66, 59, 73, 54, 68, 77, 60, 59, 76, 84, 83, 67, 60, 77, 54, 59, 57, 58, 64, 54, 67, 54, 97, 82, 57, 68, 55, 102, 63, 71, 106, 90, 65, 48, 61, 51, 82, 64, 42, 47, 54, 128, 94, 50, 51, 51, 102, 69, 51, 97, 54, 62, 74, 43, 72, 61, 99, 74, 68, 60, 74, 83, 62, 69, 117, 59, 89, 58, 49, 50, 83, 60, 110, 70, 60, 59, 66, 62, 53, 66, 77, 58, 83, 53, 44, 65, 47, 66, 96, 97, 86, 86, 56, 84, 62, 98, 62, 60, 80, 74, 60, 77, 74, 54, 85, 84, 79, 44, 59, 69, 56, 76, 39, 54, 70, 53, 67, 65, 76, 66, 74, 45, 52, 64, 86, 60, 84, 80, 56, 59, 80, 72, 79, 55, 59, 81, 68, 46, 71, 56, 67, 69, 91, 69, 61, 55, 73, 70, 67, 49, 67, 70, 52, 59, 44, 51, 63, 102, 82, 47, 48, 50, 77, 36, 113, 70, 70, 57, 60, 123, 50, 83, 62, 50, 64, 53, 57, 88, 90, 72, 57, 53, 41, 72, 65, 66, 55, 55, 68, 82, 87, 71, 61, 54, 74, 67, 61, 61, 77, 66, 48, 57, 64, 54, 62, 55, 69, 95, 61, 71, 61, 66, 65, 73, 51, 65, 50, 81, 64, 66, 67, 49, 72, 62, 62, 68, 61, 58, 73, 58, 55, 55, 66, 67, 63, 39, 50, 72, 45, 64, 74, 49, 63, 68, 56, 44, 57, 64, 61, 79, 62, 66, 57, 55, 64, 52, 48, 63, 62, 74, 44, 45, 52, 55, 66, 67, 73, 73, 61, 49, 64, 58, 54, 49, 59, 63, 70, 74, 53, 73, 59, 44, 72, 73, 81, 65, 49, 51, 90, 59, 47, 56, 73, 78, 96, 57, 77, 63, 58, 55, 57, 74, 60, 63, 51, 56, 77, 43, 72, 56, 64, 90, 56, 82, 75, 77, 90, 54, 55, 51, 83, 62, 51, 100, 98, 65, 52, 51, 93, 68, 69, 73, 65, 73, 72, 68, 80, 60, 90, 57, 114, 94, 64, 66, 69, 62, 67, 59, 75, 64, 77, 75, 63, 62, 66, 48, 69, 75, 68, 67, 65, 69, 61, 69, 69, 75, 54, 60, 45, 101, 74, 78, 61, 57, 58, 63, 50, 54, 49, 59, 97, 40, 46, 93, 80, 69, 75, 74, 76, 91, 66, 56, 70, 52, 60, 67, 61, 53, 74, 93, 83, 74, 70, 78, 58, 60, 85, 69, 57, 59, 52, 56, 57, 88, 43, 54, 57, 56, 54, 57, 68, 59, 59, 61, 81, 67, 58, 71, 48, 69, 58, 55, 91, 68, 73, 65, 70, 56, 77, 53, 62, 62, 78, 72, 58, 135, 45, 63, 73, 65, 43, 60, 63, 69, 76, 62, 55, 70, 66, 69, 67, 62, 64, 68, 66, 46, 58, 55, 70, 65, 55, 69, 66, 55, 52, 82, 53, 51, 63, 46, 55, 60, 58, 77, 51, 92, 69, 52, 59, 56, 72, 81, 61, 64, 60, 107, 60, 70, 59, 125, 75, 62, 56, 81, 51, 86, 61, 68, 73, 54, 66, 57, 73, 116, 50, 80, 62, 51, 73, 69, 69, 53, 104, 74, 53, 61, 75, 58, 61, 102, 49, 68, 57, 61, 105, 40, 57, 60, 97, 77, 63, 49, 69, 60, 75, 60, 61, 56, 59, 51, 79, 41, 62, 47, 71, 57, 79, 52, 48, 77, 64, 70, 57, 73, 59, 63, 59, 75, 82, 70, 54, 57, 52, 51, 58, 67, 51, 55, 67, 58, 67, 58, 54, 64, 72, 62, 49, 58, 60, 57, 74, 67, 61, 40, 59, 47, 55, 50, 61, 71, 56, 60, 69, 45, 69, 56, 76, 57, 66, 60, 68, 73, 75, 77, 85, 48, 58, 75, 57, 53, 57, 100, 69, 81, 53, 81, 63, 72, 56, 60, 65, 58, 70, 66, 72, 60, 77, 69, 70, 75, 44, 93, 77, 63, 64, 45, 73, 56, 81, 80, 49, 82, 55, 84, 58, 65, 62, 53, 79, 67, 56, 64, 68, 59, 91, 62, 77, 59, 87, 49, 63, 77, 72, 59, 61, 62, 63, 56, 54, 52, 59, 100, 57, 79, 55, 75, 67, 71, 56, 78, 47, 60, 39, 56, 55, 114, 45, 59, 69, 73, 60, 65, 69, 66, 72, 76, 62, 45, 60, 59, 108, 46, 77, 93, 51, 62, 62, 56, 83, 69, 53, 61, 48, 58, 131, 61, 81, 53, 60, 56, 56, 52, 68, 76, 56, 73, 69, 66, 69, 77, 86, 74, 81, 73, 61, 88, 51, 72, 46, 62, 47, 64, 61, 62, 65, 78, 47, 53, 78, 55, 62, 73, 43, 71, 72, 82, 72, 70, 61, 77, 68, 67, 74, 76, 58, 59, 71, 69, 64, 85, 64, 65, 65, 96, 58, 51, 44, 67, 68, 85, 78, 75, 48, 46, 48, 59, 53, 72, 61, 58, 62, 70, 81, 84, 57, 64, 53, 59, 60, 84, 73, 65, 64, 62, 73, 42, 60, 58, 72, 58, 60, 79, 57, 62, 66, 67, 69, 62, 55, 67, 87, 72, 66, 48, 69, 88, 63, 60, 61, 74, 63, 73, 79, 91, 41, 40, 60, 85, 83, 97, 52, 68, 59, 68, 74, 74, 62, 72, 51, 80, 79, 77, 48, 56, 54, 81, 70, 57, 65, 63, 83, 49, 60, 69, 57, 81, 58, 53, 77, 54, 86, 75, 66, 49, 75, 83, 82, 62, 130, 69, 64, 101, 53, 56, 81, 72, 73, 62, 55, 68, 73, 60, 58, 58, 68, 73, 65, 62, 60, 74, 67, 67, 67, 77, 52, 76, 44, 58, 68, 74, 62, 66, 51, 66, 55, 73, 75, 56, 70, 57, 73, 52, 79, 61, 59, 69, 46, 81, 55, 58, 65, 54, 39, 71, 67, 70, 81, 83, 67, 57, 55, 70, 45, 80, 79, 78, 126, 46, 54, 65, 69, 47, 63, 77, 51, 56, 83, 62, 71, 55, 80, 71, 55, 76, 54, 70, 50, 78, 53, 91, 65, 63, 49, 57, 55, 45, 41, 51, 54, 83, 61, 63, 70, 66, 71, 61, 45, 56, 64, 76, 63, 62, 71, 107, 63, 69, 53, 91, 54, 65, 63, 58, 47, 43, 66, 59, 65, 56, 49, 53, 76, 87, 50, 39, 68, 79, 51, 100, 64, 54, 45, 39, 51, 56, 67, 43, 61, 50, 61, 68, 67, 64, 76, 58, 47, 61, 76, 55, 63, 43, 69, 54, 54, 85, 56, 57, 72, 61, 69, 75, 60, 86, 68, 63, 53, 138, 44, 45, 86, 64, 57, 69, 73, 79, 65, 89, 86, 74, 81, 77, 62, 81, 71, 66, 64, 42, 62, 58, 88, 72, 66, 66, 76, 58, 63, 72, 111, 56, 59, 55, 89, 75, 50, 53, 90, 68, 61, 111, 60, 65, 56, 65, 62, 73, 68, 68, 56, 46, 58, 76, 73, 48, 67, 74, 60, 74, 54, 80, 84, 67, 55, 70, 71, 57, 77, 64, 60, 48, 63, 61, 65, 80, 80, 82, 52, 54, 40, 56, 61, 60, 72, 62, 60, 76, 71, 100, 54, 83, 72, 58, 74, 66, 66, 56, 66, 79, 73, 75, 42, 67, 57, 49, 105, 68, 68, 51, 76, 47, 67, 48, 71, 48, 73, 62, 48, 72, 73, 85, 77, 56, 48, 40, 45, 91, 65, 60, 50, 51, 44, 64, 50, 80, 65, 54, 55, 79, 52, 81, 70, 84, 60, 55, 67, 88, 68, 48, 63, 60, 68, 54, 75, 53, 69, 65, 51, 65, 57, 62, 85, 80, 50, 63, 63, 59, 61, 58, 61, 55, 73, 53, 70, 91, 82, 43, 74, 63, 67, 53, 56, 60, 64, 80, 91, 63, 50, 58, 67, 73, 59, 55, 51, 66, 63, 59, 65, 59, 59, 63, 69, 58, 74, 70, 68, 55, 54, 82, 61, 64, 61, 54, 48, 62, 37, 53, 56, 76, 56, 49, 91, 59, 62, 63, 67, 59, 54, 67, 81, 43, 71, 67, 93, 60, 67, 87, 54, 56, 47, 81, 72, 71, 67, 58, 62, 77, 58, 58, 54, 64, 73, 54, 65, 73, 71, 60, 72, 84, 78, 80, 65, 67, 63, 63, 64, 72, 60, 73, 94, 71, 47, 84, 54, 55, 46, 72, 49, 68, 48, 111, 71, 58, 52, 78, 63, 71, 56, 57, 58, 60, 67, 52, 82, 63, 49, 71, 60, 70, 48, 59, 77, 71, 61, 55, 54, 63, 66, 54, 61, 88, 51, 47, 73, 56, 62, 86, 67, 76, 58, 55, 68, 70, 60, 85, 62, 71, 58, 98, 54, 64, 63, 49, 87, 55, 56, 67, 38, 58, 59, 54, 62, 52, 85, 65, 54, 74, 61, 58, 64, 58, 80, 59, 56, 62, 64, 89, 71, 52, 72, 61, 55, 57, 95, 47, 57, 43, 65, 69, 50, 70, 49, 57, 72, 47, 58, 80, 75, 57, 65, 49, 67, 56, 58, 86, 84, 53, 68, 73, 102, 53, 80, 62, 54, 63, 73, 66, 66, 72, 60, 60, 79, 140, 91, 78, 75, 50, 59, 82, 61, 83, 61, 72, 63, 56, 108, 57, 80, 70, 69, 88, 53, 54, 63, 82, 57, 101, 64, 68, 57, 69, 69, 59, 64, 64, 55, 58, 61, 71, 57, 57, 69, 69, 49, 54, 57, 68, 62, 67, 71, 78, 50, 110, 76, 47, 76, 89, 75, 61, 56, 55, 51, 76, 51, 85, 70, 59, 84, 68, 61, 67, 58, 69, 69, 55, 77, 77, 58, 67, 91, 58, 57, 60, 57, 84, 76, 55, 59, 70, 71, 71, 68, 59, 91, 68, 68, 67, 55, 74, 40, 74, 50, 62, 49, 60, 57, 78, 66, 68, 64, 65, 63, 64, 76, 48, 64, 65, 90, 60, 59, 53, 66, 66, 69, 40, 58, 75, 66, 57, 74, 55, 83, 115, 79, 98, 62, 92, 55, 59, 83, 74, 61, 57, 59, 90, 62, 72, 61, 61, 49, 73, 72, 93, 59, 65, 73, 63, 82, 56, 65, 66, 62, 60, 62, 64, 56, 85, 57, 67, 56, 55, 60, 52, 76, 60, 77, 55, 61, 67, 51, 52, 72, 65, 84, 52, 72, 49, 53, 55, 54, 74, 68, 41, 44, 97, 53, 78, 49, 66, 111, 55, 64, 87, 50, 69, 56, 49, 70, 72, 69, 86, 65, 72, 63, 56, 59, 50, 60, 62, 61, 45, 69, 70, 65, 65, 69, 91, 75, 50, 65, 62, 77, 55, 75, 80, 60, 65, 55, 72, 95, 45, 73, 60, 80, 61, 68, 59, 64, 54, 62, 67, 51, 72, 73, 84, 85, 66, 52, 70, 64, 65, 51, 76, 92, 72, 58, 64, 60, 59, 62, 75, 76, 86, 88, 65, 62, 65, 60, 82, 51, 70, 103, 55, 60, 56, 58, 78, 73, 76, 47, 43, 61, 61, 51, 79, 69, 61, 84, 61, 63, 82, 65, 84, 55, 65, 77, 52, 56, 73, 60, 71, 64, 55, 66, 53, 89, 62, 68, 74, 75, 61, 55, 84, 78, 57, 59, 54, 68, 60, 62, 80, 61, 78, 70, 99, 69, 78, 52, 63, 46, 84, 67, 70, 58, 54, 67, 57, 55, 95, 79, 75, 60, 81, 65, 54, 51, 80, 56, 72, 52, 83, 60, 90, 52, 64, 53, 73, 72, 61, 62, 69, 67, 58, 56, 67, 51, 53, 96, 71, 45, 75, 87, 72, 75, 81, 53, 57, 74, 62, 67, 83, 55, 95, 39, 56, 67, 39, 69, 45, 58, 59, 73, 49, 54, 56, 64, 64, 60, 58, 48, 67, 63, 80, 62, 72, 57, 48, 65, 48, 45, 49, 69, 69, 78, 54, 75, 75, 74, 46, 65, 79, 55, 55, 71, 71, 47, 54, 64, 64, 61, 78, 72, 70, 71, 76, 121, 71, 61, 97, 56, 62, 66, 72, 88, 58, 54, 35, 54, 62, 68, 70, 68, 76, 68, 65, 70, 78, 56, 48, 62, 59, 67, 43, 66, 61, 66, 57, 67, 74, 58, 62, 73, 75, 64, 49, 46, 70, 48, 49, 60, 56, 63, 66, 60, 84, 65, 51, 78, 61, 70, 53, 83, 80, 70, 78, 48, 77, 57, 78, 55, 71, 53, 66, 78, 56, 60, 86, 78, 56, 70, 64, 51, 78, 56, 46, 62, 55, 67, 74, 57, 70, 70, 60, 65, 51, 57, 65, 54, 45, 60, 60, 67, 69, 59, 58, 49, 114, 48, 60, 66, 53, 75, 51, 47, 64, 81, 55, 76, 60, 74, 55, 61, 72, 55, 69, 69, 54, 40, 87, 53, 69, 67, 55, 83, 45, 92, 52, 52, 51, 51, 61, 59, 91, 70, 70, 64, 71, 39, 75, 65, 75, 77, 52, 78, 86, 52, 78, 99, 83, 64, 46, 59, 60, 61, 62, 52, 49, 51, 61, 77, 60, 77, 58, 59, 43, 96, 55, 45, 64, 63, 74, 55, 151, 67, 66, 65, 74, 59, 68, 82, 79, 72, 67, 71, 61, 47, 66, 77, 49, 65, 73, 84, 68, 50, 51, 68, 53, 47, 66, 67, 66, 61, 56, 106, 56, 69, 65, 83, 72, 57, 73, 55, 64, 72, 69, 59, 33, 58, 63, 41, 75, 58, 62, 57, 78, 70, 77, 54, 72, 70, 48, 65, 78, 62, 46, 76, 50, 51, 73, 66, 70, 83, 70, 42, 56, 52, 52, 65, 66, 63, 76, 74, 67, 63, 78, 74, 68, 73, 70, 66, 72, 69, 106, 77, 72, 65, 73, 74, 75, 64, 64, 75, 78, 39, 56, 59, 69, 68, 59, 56, 52, 68, 53, 35, 68, 62, 55, 65, 73, 69, 62, 75, 53, 120, 69, 91, 68, 78, 78, 55, 115, 76, 56, 75, 73, 79, 64, 64, 90, 52, 82, 67, 72, 66, 77, 65, 73, 60, 59, 72, 98, 69, 42, 54, 55, 57, 63, 50, 57, 60, 69, 52, 75, 61, 72, 57, 92, 86, 60, 44, 54, 72, 64, 73, 73, 62, 49, 75, 125, 68, 82, 81, 66, 83, 37, 92, 66, 56, 83, 85, 63, 69, 53, 82, 84, 70, 59, 70, 52, 60, 51, 90, 66, 63, 49, 73, 66, 51, 49, 93, 59, 56, 65, 67, 59, 59, 69, 51, 54, 65, 66, 46, 82, 75, 82, 88, 47, 73, 65, 77, 56, 58, 64, 75, 65, 53, 101, 92, 67, 63, 53, 74, 63, 57, 77, 45, 79, 70, 80, 74, 70, 43, 78, 60, 54, 72, 68, 54, 74, 55, 84, 62, 60, 64, 72, 79, 62, 50, 56, 81, 70, 62, 60, 67, 50, 82, 71, 64, 40, 55, 51, 59, 50, 80, 92, 67, 53, 48, 66, 76, 79, 44, 67, 78, 64, 73, 69, 61, 64, 72, 79, 65, 85, 69, 53, 75, 72, 55, 71, 54, 95, 55, 57, 66, 68, 70, 57, 60, 70, 60, 61, 71, 56, 66, 74, 61, 54, 50, 68, 76, 63, 83, 72, 66, 61, 65, 62, 62, 45, 59, 64, 59, 63, 58, 64, 54, 83, 89, 75, 77, 59, 77, 50, 67, 93, 68, 68, 47, 57, 66, 81, 58, 59, 77, 62, 74, 73, 97, 67, 48, 66, 58, 59, 69, 73, 66, 56, 92, 78, 64, 69, 69, 70, 69, 74, 87, 42, 55, 50, 91, 51, 90, 63, 80, 74, 93, 72, 76, 61, 58, 57, 58, 61, 59, 85, 93, 158, 109, 71, 72, 85, 62, 50, 67, 53, 58, 68, 54, 78, 84, 59, 70, 72, 59, 59, 65, 87, 45, 57, 66, 60, 70, 68, 76, 62, 80, 75, 51, 75, 50, 72, 61, 66, 79, 66, 88, 56, 65, 58, 52, 38, 64, 72, 80, 67, 74, 109, 75, 50, 63, 132, 48, 71, 65, 56, 81, 68, 57, 75, 49, 73, 76, 56, 69, 46, 50, 85, 49, 93, 67, 60, 53, 58, 87, 70, 54, 40, 79, 73, 59, 77, 62, 87, 49, 65, 72, 85, 57, 64, 70, 64, 70, 70, 62, 35, 45, 85, 68, 64, 85, 36, 58, 58, 50, 61, 46, 74, 47, 82, 62, 50, 60, 64, 45, 63, 63, 74, 48, 64, 94, 77, 43, 70, 90, 59, 52, 88, 58, 56, 60, 54, 59, 56, 72, 72, 45, 58, 80, 65, 71, 56, 53, 83, 59, 79, 76, 84, 55, 85, 75, 58, 68, 73, 70, 59, 89, 63, 70, 71, 62, 43, 75, 55, 64, 74, 62, 81, 74, 72, 51, 63, 58, 67, 71, 52, 58, 58, 99, 73, 55, 76, 63, 81, 58, 59, 48, 70, 52, 45, 51, 56, 36, 69, 113, 80, 42, 68, 57, 54, 47, 65, 65, 66, 51, 65, 47, 66, 64, 59, 58, 54, 49, 40, 73, 51, 53, 60, 76, 74, 66, 59, 67, 58, 50, 71, 61, 64, 56, 77, 62, 72, 55, 56, 70, 64, 65, 73, 60, 59, 59, 87, 51, 52, 71, 67, 70, 51, 64, 65, 74, 86, 60, 66, 71, 75, 57, 61, 40, 89, 68, 68, 58, 62, 61, 109, 70, 115, 62, 61, 60, 63, 59, 54, 67, 52, 70, 78, 63, 52, 58, 75, 90, 91, 54, 59, 51, 50, 72, 44, 64, 59, 76, 56, 79, 67, 65, 53, 67, 58, 75, 54, 43, 59, 66, 65, 74, 62, 58, 53, 73, 77, 66, 71, 79, 67, 52, 58, 109, 70, 72, 84, 103, 47, 66, 60, 84, 69, 63, 60, 75, 74, 76, 71, 49, 66, 79, 60, 65, 62, 71, 57, 50, 41, 63, 76, 66, 62, 64, 79, 72, 89, 85, 66, 56, 93, 58, 61, 89, 77, 82, 73, 54, 53, 61, 67, 76, 51, 64, 55, 89, 59, 85, 86, 56, 65, 87, 128, 66, 94, 52, 60, 83, 71, 59, 156, 76, 86, 76, 59, 56, 72, 66, 58, 52, 68, 75, 77, 64, 65, 57, 41, 53, 51, 71, 79, 74, 50, 52, 48, 63, 70, 59, 42, 65, 65, 73, 68, 65, 55, 70, 83, 72, 71, 47, 61, 38, 87, 56, 46, 69, 70, 55, 67, 51, 63, 55, 66, 75, 67, 124, 63, 63, 84, 60, 82, 64, 79, 69, 64, 59, 70, 63, 61, 81, 62, 72, 75, 69, 77, 68, 71, 53, 66, 62, 72, 62, 34, 68, 62, 62, 146, 55, 59, 97, 44, 70, 68, 59, 80, 70, 81, 63, 81, 61, 75, 76, 66, 72, 60, 52, 42, 52, 76, 62, 42, 64, 64, 70, 70, 43, 40, 70, 62, 64, 64, 85, 59, 68, 62, 47, 73, 75, 51, 64, 58, 44, 74, 53, 59, 66, 72, 58, 67, 79, 88, 75, 80, 84, 60, 78, 58, 49, 51, 54, 52, 68, 66, 59, 52, 66, 84, 56, 85, 58, 56, 66, 56, 70, 64, 64, 58, 66, 68, 69, 52, 87, 58, 56, 84, 68, 61, 60, 76, 57, 42, 64, 76, 68, 60, 90, 70, 71, 48, 73, 50, 61, 77, 62, 61, 55, 71, 77, 63, 50, 77, 86, 66, 81, 60, 81, 65, 83, 51, 69, 67, 58, 71, 73, 60, 61, 57, 70, 67, 59, 49, 59, 81, 53, 61, 124, 57, 47, 57, 71, 65, 64, 172, 74, 82, 83, 71, 77, 68, 54, 64, 64, 54, 53, 59, 55, 72, 56, 61, 62, 71, 102, 76, 61, 66, 64, 61, 78, 60, 79, 68, 54, 55, 87, 60, 112, 46, 52, 44, 52, 60, 63, 62, 48, 91, 57, 56, 57, 56, 50, 85, 83, 107, 66, 77, 100, 65, 60, 57, 51, 62, 67, 70, 55, 67, 73, 49, 64, 48, 73, 81, 50, 55, 50, 59, 55, 60, 78, 65, 57, 78, 68, 69, 80, 56, 47, 54, 44, 67, 67, 68, 75, 72, 52, 65, 66, 76, 86, 53, 98, 76, 77, 77, 65, 56, 62, 69, 33, 54, 58, 80, 65, 53, 73, 67, 75, 53, 61, 79, 71, 52, 47, 75, 97, 52, 89, 81, 61, 66, 77, 115, 76, 64, 80, 54, 81, 71, 82, 69, 61, 49, 55, 54, 90, 90, 66, 82, 64, 61, 57, 97, 66, 52, 56, 72, 52, 83, 79, 63, 67, 61, 59, 86, 56, 42, 52, 52, 77, 77, 53, 86, 53, 50, 63, 45, 67, 51, 57, 53, 67, 61, 65, 96, 54, 30, 66, 63, 53, 86, 85, 65, 58, 77, 65, 54, 65, 63, 60, 62, 69, 47, 66, 62, 52, 66, 79, 60, 53, 76, 76, 46, 62, 75, 80, 69, 61, 66, 65, 70, 79, 46, 60, 54, 68, 97, 44, 57, 74, 75, 67, 55, 50, 75, 67, 73, 69, 71, 66, 72, 57, 47, 45, 75, 72, 80, 42, 76, 72, 64, 66, 54, 78, 69, 63, 47, 65, 39, 57, 56, 62, 104, 55, 60, 73, 78, 102, 58, 57, 66, 63, 61, 70, 89, 58, 67, 90, 58, 61, 60, 72, 62, 77, 45, 59, 80, 62, 68, 77, 66, 77, 70, 41, 47, 74, 61, 56, 57, 81, 50, 59, 76, 76, 101, 58, 41, 53, 43, 85, 52, 46, 73, 70, 62, 73, 45, 70, 63, 75, 64, 56, 60, 46, 55, 47, 64, 84, 85, 57, 63, 60, 39, 65, 58, 71, 52, 56, 52, 80, 93, 47, 59, 70, 62, 69, 53, 63, 63, 62, 77, 74, 52, 62, 54, 64, 77, 68, 51, 59, 49, 43, 95, 61, 70, 49, 59, 75, 109, 54, 63, 54, 85, 71, 67, 72, 40, 49, 62, 57, 78, 62, 65, 55, 66, 59, 70, 56, 43, 52, 68, 63, 59, 57, 58, 70, 67, 133, 76, 67, 58, 55, 63, 75, 45, 84, 92, 53, 107, 62, 73, 56, 89, 43, 66, 59, 48, 61, 70, 67, 57, 80, 52, 56, 55, 50, 83, 62, 82, 59, 72, 47, 59, 75, 42, 51, 66, 71, 76, 42, 59, 59, 71, 49, 101, 90, 61, 85, 67, 56, 60, 63, 61, 89, 66, 90, 78, 51, 103, 84, 60, 76, 129, 52, 68, 59, 68, 74, 61, 69, 72, 78, 64, 54, 82, 57, 47, 77, 76, 65, 51, 66, 76, 65, 59, 64, 78, 63, 52, 90, 71, 71, 52, 51, 78, 67, 50, 48, 58, 80, 74, 65, 72, 54, 65, 70, 64, 56, 57, 88, 73, 47, 56, 63, 57, 60, 46, 68, 75, 61, 61, 61, 58, 76, 58, 64, 82, 87, 73, 73, 62, 102, 71, 59, 64, 62, 83, 67, 61, 68, 62, 70, 55, 71, 63, 58, 71, 64, 64, 81, 82, 74, 63, 55, 77, 56, 83, 99, 62, 74, 66, 72, 62, 56, 62, 60, 48, 55, 57, 53, 64, 55, 73, 61, 60, 71, 55, 78, 75, 79, 52, 47, 54, 51, 66, 42, 53, 69, 70, 65, 52, 73, 57, 63, 49, 58, 71, 57, 59, 49, 48, 72, 72, 97, 60, 108, 54, 55, 75, 94, 66, 48, 65, 61, 55, 45, 64, 66, 63, 59, 47, 49, 59, 65, 75, 55, 56, 57, 53, 85, 79, 55, 68, 56, 63, 69, 65, 48, 62, 69, 69, 74, 58, 67, 64, 39, 46, 61, 78, 60, 58, 57, 69, 48, 57, 67, 63, 64, 65, 66, 90, 68, 87, 64, 57, 74, 61, 65, 55, 64, 70, 68, 73, 59, 46, 62, 79, 69, 149, 76, 46, 74, 73, 59, 63, 71, 56, 97, 76, 66, 75, 48, 49, 79, 65, 50, 69, 57, 73, 64, 74, 57, 75, 65, 59, 102, 49, 63, 59, 72, 56, 58, 61, 54, 66, 50, 74, 58, 67, 59, 50, 71, 71, 58, 63, 90, 73, 67, 53, 115, 89, 50, 78, 69, 68, 78, 60, 62, 65, 75, 82, 71, 77, 53, 72, 61, 77, 68, 54, 58, 73, 59, 56, 51, 74, 50, 78, 70, 66, 58, 50, 68, 64, 78, 47, 56, 84, 72, 53, 60, 56, 70, 76, 60, 71, 53, 72, 81, 90, 70, 60, 77, 40, 97, 76, 69, 69, 80, 110, 66, 54, 75, 63, 67, 54, 48, 134, 76, 77, 85, 75, 67, 69, 65, 68, 54, 49, 74, 83, 78, 64, 79, 66, 61, 71, 73, 63, 51, 69, 56, 57, 60, 64, 70, 58, 67, 69, 77, 64, 64, 60, 51, 53, 64, 56, 60, 56, 62, 62, 54, 72, 56, 68, 89, 52, 66, 60, 60, 64, 49, 76, 130, 66, 56, 80, 76, 65, 72, 63, 79, 67, 64, 66, 77, 63, 70, 59, 79, 83, 98, 59, 53, 69, 59, 52, 60, 68, 54, 48, 71, 62, 72, 80, 67, 67, 75, 57, 54, 96, 70, 56, 51, 50, 57, 74, 46, 55, 60, 56, 38, 62, 67, 65, 71, 73, 70, 86, 87, 57, 107, 74, 68, 45, 69, 56, 64, 77, 72, 61, 71, 47, 73, 88, 62, 66, 69, 73, 62, 55, 57, 63, 59, 78, 63, 86, 79, 84, 63, 61, 65, 68, 55, 73, 60, 50, 66, 72, 52, 55, 74, 60, 90, 112, 78, 60, 76, 61, 63, 70, 77, 76, 61, 59, 57, 57, 72, 78, 60, 50, 49, 54, 64, 93, 63, 86, 46, 64, 70, 68, 47, 60, 100, 65, 67, 46, 59, 64, 60, 73, 67, 69, 70, 54, 63, 53, 66, 75, 69, 40, 59, 65, 66, 50, 62, 91, 60, 60, 68, 62, 37, 60, 79, 69, 57, 70, 58, 56, 62, 67, 56, 65, 82, 63, 48, 67, 96, 64, 47, 169, 68, 46, 56, 75, 77, 56, 77, 80, 54, 90, 62, 44, 60, 46, 49, 53, 68, 56, 122, 63, 63, 57, 79, 73, 65, 57, 79, 62, 59, 55, 102, 70, 89, 50, 88, 55, 63, 68, 56, 66, 79, 85, 51, 60, 59, 71, 54, 105, 89, 76, 68, 51, 65, 60, 56, 90, 58, 60, 62, 54, 59, 72, 72, 65, 64, 79, 45, 63, 61, 68, 52, 66, 60, 56, 83, 76, 60, 61, 78, 73, 77, 65, 80, 47, 51, 51, 72, 74, 66, 64, 78, 75, 52, 84, 76, 58, 68, 78, 71, 96, 67, 68, 65, 65, 66, 60, 53, 98, 58, 69, 63, 68, 48, 77, 54, 70, 77, 53, 68, 67, 64, 87, 97, 61, 52, 60, 65, 108, 73, 81, 69, 57, 71, 77, 84, 69, 78, 63, 64, 51, 73, 64, 66, 80, 62, 61, 71, 82, 72, 106, 53, 72, 62, 55, 72, 56, 45, 77, 57, 55, 60, 89, 83, 55, 78, 67, 50, 52, 72, 56, 59, 52, 63, 60, 78, 65, 86, 73, 62, 77, 55, 49, 67, 59, 64, 87, 83, 64, 52, 79, 79, 64, 57, 66, 53, 77, 52, 73, 71, 62, 62, 61, 82, 58, 58, 58, 95, 73, 49, 78, 56, 70, 62, 57, 89, 54, 51, 63, 57, 73, 50, 63, 61, 62, 58, 58, 62, 64, 69, 88, 71, 62, 70, 81, 86, 64, 54, 76, 49, 62, 55, 70, 52, 46, 44, 61, 59, 43, 51, 66, 56, 43, 52, 58, 71, 60, 72, 107, 61, 73, 87, 85, 83, 54, 57, 54, 78, 57, 79, 101, 66, 68, 98, 67, 65, 57, 56, 72, 58, 65, 74, 87, 62, 75, 66, 50, 57, 64, 52, 88, 57, 52, 53, 76, 74, 67, 52, 69, 65, 89, 67, 47, 71, 75, 60, 62, 36, 85, 65, 68, 104, 48, 58, 66, 68, 68, 54, 65, 44, 64, 58, 59, 69, 81, 53, 83, 77, 54, 51, 82, 64, 56, 56, 55, 84, 73, 74, 51, 73, 78, 70, 48, 60, 46, 80, 63, 66, 59, 62, 67, 78, 61, 73, 58, 47, 54, 73, 106, 66, 61, 54, 64, 81, 116, 65, 66, 57, 78, 65, 61, 74, 78, 53, 64, 58, 56, 66, 59, 58, 71, 66, 62, 74, 55, 66, 54, 66, 68, 71, 48, 98, 53, 98, 68, 72, 69, 47, 69, 60, 59, 73, 92, 67, 117, 63, 70, 52, 67, 62, 43, 68, 79, 74, 47, 61, 62, 59, 63, 37, 50, 63, 64, 61, 52, 64, 64, 54, 63, 58, 72, 64, 76, 65, 128, 73, 48, 48, 63, 65, 66, 78, 57, 86, 41, 58, 54, 55, 56, 52, 84, 43, 67, 42, 101, 57, 45, 67, 122, 59, 52, 64, 74, 50, 61, 61, 59, 84, 63, 77, 82, 52, 66, 63, 58, 63, 71, 54, 61, 78, 60, 50, 78, 58, 67, 79, 40, 67, 65, 63, 85, 57, 77, 50, 49, 63, 62, 68, 52, 72, 57, 58, 53, 61, 81, 77, 81, 52, 78, 65, 71, 66, 65, 62, 56, 69, 55, 59, 38, 36, 64, 60, 108, 59, 72, 62, 61, 81, 71, 67, 57, 74, 65, 55, 74, 47, 38, 55, 64, 66, 68, 72, 63, 85, 52, 71, 84, 59, 60, 52, 53, 64, 82, 48, 79, 76, 63, 67, 52, 96, 74, 38, 68, 57, 67, 74, 68, 73, 74, 53, 69, 44, 65, 74, 72, 82, 64, 69, 101, 57, 95, 40, 70, 119, 56, 60, 80, 63, 63, 65, 73, 87, 76, 68, 36, 58, 62, 58, 50, 56, 74, 116, 71, 71, 86, 65, 54, 82, 76, 51, 95, 48, 61, 53, 88, 69, 50, 77, 70, 64, 59, 58, 71, 65, 54, 68, 46, 46, 96, 60, 60, 50, 63, 71, 74, 50, 87, 79, 65, 50, 83, 63, 73, 49, 51, 83, 82, 69, 84, 78, 53, 58, 73, 59, 68, 72, 66, 51, 61, 74, 54, 68, 49, 79, 58, 68, 80, 51, 69, 62, 66, 72, 71, 52, 119, 93, 79, 39, 41, 72, 51, 62, 67, 102, 76, 89, 72, 57, 63, 70, 64, 72, 46, 63, 72, 80, 110, 59, 67, 76, 75, 65, 67, 72, 55, 77, 74, 55, 56, 67, 45, 56, 61, 67, 78, 68, 50, 65, 59, 64, 53, 42, 62, 49, 57, 57, 76, 53, 41, 66, 67, 73, 104, 53, 69, 59, 90, 47, 69, 72, 59, 81, 69, 88, 68, 74, 64, 60, 60, 67, 84, 82, 83, 67, 58, 89, 50, 58, 69, 90, 45, 79, 54, 48, 54, 83, 90, 51, 73, 68, 56, 59, 51, 56, 97, 64, 47, 70, 52, 71, 52, 63, 58, 64, 63, 63, 62, 61, 79, 77, 63, 68, 70, 79, 75, 46, 74, 61, 72, 57, 70, 59, 82, 50, 42, 85, 72, 54, 63, 56, 86, 49, 69, 56, 58, 57, 58, 57, 99, 49, 77, 59, 68, 64, 44, 100, 74, 35, 101, 62, 59, 54, 81, 46, 85, 46, 45, 88, 45, 65, 63, 76, 55, 79, 56, 65, 60, 96, 78, 72, 81, 66, 46, 62, 56, 75, 58, 54, 62, 55, 59, 72, 72, 62, 44, 53, 49, 56, 66, 74, 53, 67, 99, 74, 53, 55, 66, 56, 64, 67, 51, 68, 89, 59, 55, 86, 75, 64, 70, 39, 73, 90, 67, 46, 71, 53, 60, 69, 51, 80, 81, 75, 70, 84, 72, 61, 61, 61, 105, 60, 47, 56, 84, 107, 61, 66, 69, 65, 85, 74, 55, 95, 83, 53, 92, 46, 61, 77, 65, 70, 63, 69, 42, 49, 63, 57, 42, 59, 62, 49, 61, 65, 77, 52, 89, 69, 51, 81, 69, 76, 69, 63, 70, 74, 52, 63, 56, 48, 55, 70, 64, 66, 60, 65, 48, 72, 52, 120, 51, 50, 46, 57, 45, 44, 66, 67, 61, 55, 56, 96, 54, 65, 79, 63, 85, 50, 65, 76, 62, 56, 55, 53, 60, 31, 61, 64, 64, 59, 75, 60, 83, 67, 68, 69, 61, 74, 54, 63, 48, 70, 67, 84, 47, 74, 69, 62, 75, 96, 72, 78, 52, 51, 77, 94, 150, 46, 55, 75, 37, 56, 61, 90, 76, 52, 68, 69, 72, 74, 78, 65, 54, 76, 51, 57, 44, 50, 73, 78, 63, 66, 60, 60, 52, 57, 64, 120, 78, 89, 71, 43, 74, 56, 76, 94, 77, 98, 88, 47, 59, 69, 56, 66, 66, 57, 57, 62, 71, 66, 72, 61, 63, 57, 71, 98, 48, 63, 63, 75, 54, 90, 78, 29, 61, 79, 43, 68, 52, 69, 73, 78, 60, 69, 50, 59, 53, 47, 59, 71, 43, 78, 78, 63, 57, 100, 86, 50, 60, 69, 69, 57, 50, 49, 63, 62, 67, 52, 61, 51, 44, 53, 63, 67, 72, 68, 60, 64, 64, 52, 55, 67, 83, 62, 53, 40, 90, 60, 90, 59, 57, 66, 80, 85, 90, 110, 63, 62, 62, 64, 52, 57, 71, 76, 62, 43, 91, 73, 66, 59, 50, 52, 53, 57, 98, 66, 56, 52, 81, 66, 58, 61, 70, 53, 64, 64, 45, 63, 70, 62, 60, 54, 62, 50, 66, 68, 51, 52, 64, 53, 60, 54, 66, 61, 53, 65, 81, 63, 47, 72, 74, 63, 67, 104, 58, 44, 51, 57, 62, 60, 64, 75, 74, 75, 56, 57, 52, 67, 68, 67, 49, 56, 53, 66, 97, 105, 72, 80, 92, 44, 56, 64, 43, 62, 76, 54, 79, 88, 41, 83, 58, 59, 79, 77, 61, 67, 56, 55, 58, 60, 69, 52, 75, 48, 76, 58, 78, 83, 80, 46, 93, 72, 77, 40, 53, 70, 46, 55, 82, 66, 56, 61, 62, 57, 70, 70, 80, 76, 58, 59, 63, 63, 76, 76, 62, 62, 59, 47, 61, 64, 86, 58, 62, 62, 71, 115, 68, 67, 87, 60, 75, 60, 62, 69, 32, 60, 51, 68, 64, 65, 55, 61, 50, 68, 74, 64, 92, 66, 63, 75, 67, 77, 53, 62, 114, 63, 73, 83, 71, 64, 73, 74, 84, 60, 69, 66, 65, 40, 58, 76, 59, 61, 52, 92, 90, 87, 50, 75, 63, 61, 83, 56, 46, 56, 75, 74, 72, 68, 87, 45, 94, 62, 71, 59, 73, 58, 44, 59, 59, 37, 89, 61, 77, 83, 73, 64, 55, 72, 55, 70, 45, 90, 39, 54, 62, 77, 52, 74, 75, 60, 49, 58, 52, 43, 65, 58, 70, 59, 55, 65, 64, 89, 54, 71, 63, 48, 70, 93, 63, 84, 73, 53, 47, 76, 57, 65, 49, 44, 56, 80, 143, 71, 65, 70, 70, 89, 60, 75, 50, 61, 100, 57, 88, 84, 58, 55, 50, 63, 53, 123, 46, 73, 66, 65, 49, 74, 53, 79, 102, 70, 72, 83, 54, 75, 84, 57, 74, 91, 51, 91, 47, 48, 60, 57, 84, 46, 82, 79, 121, 67, 114, 75, 75, 99, 116, 64, 73, 66, 88, 68, 74, 38, 66, 50, 65, 62, 52, 43, 79, 56, 46, 55, 48, 54, 84, 61, 77, 74, 69, 50, 77, 62, 84, 81, 55, 38, 80, 45, 68, 88, 61, 74, 72, 84, 53, 54, 60, 59, 67, 77, 77, 92, 50, 65, 46, 52, 66, 61, 54, 58, 54, 58, 64, 82, 74, 64, 59, 57, 45, 55, 59, 81, 76, 72, 46, 66, 67, 70, 54, 84, 47, 70, 57, 69, 57, 77, 53, 61, 63, 58, 70, 100, 86, 63, 66, 68, 75, 58, 74, 58, 71, 48, 62, 47, 64, 118, 50, 44, 73, 76, 65, 83, 58, 42, 71, 65, 70, 49, 62, 80, 82, 52, 57, 69, 52, 61, 105, 57, 82, 80, 76, 54, 62, 53, 68, 67, 58, 61, 42, 58, 60, 61, 48, 71, 79, 61, 66, 111, 63, 54, 68, 53, 61, 45, 59, 63, 66, 53, 78, 84, 40, 58, 50, 66, 63, 60, 58, 62, 61, 68, 55, 57, 66, 74, 87, 73, 73, 55, 63, 70, 62, 60, 70, 64, 58, 53, 107, 53, 69, 51, 58, 71, 59, 58, 61, 71, 65, 67, 50, 64, 73, 57, 67, 53, 77, 66, 65, 63, 58, 65, 57, 70, 57, 75, 80, 105, 72, 49, 107, 60, 62, 56, 100, 77, 74, 75, 54, 67, 56, 105, 69, 61, 47, 56, 46, 69, 62, 63, 58, 57, 66, 69, 50, 59, 59, 79, 71, 65, 80, 69, 81, 56, 59, 72, 58, 62, 69, 64, 75, 65, 73, 47, 77, 63, 72, 49, 89, 43, 81, 71, 60, 47, 89, 58, 37, 67, 68, 64, 86, 63, 57, 49, 59, 61, 109, 62, 58, 49, 96, 60, 63, 57, 57, 54, 67, 61, 67, 84, 56, 54, 72, 49, 47, 55, 43, 67, 78, 59, 56, 63, 64, 54, 89, 63, 68, 60, 59, 76, 77, 61, 67, 57, 63, 90, 59, 62, 65, 50, 58, 43, 75, 48, 78, 73, 80, 118, 47, 69, 53, 46, 58, 65, 47, 60, 85, 57, 44, 48, 71, 55, 49, 50, 59, 60, 90, 62, 65, 74, 66, 77, 67, 71, 67, 61, 77, 72, 74, 66, 55, 57, 47, 58, 58, 65, 75, 67, 40, 89, 69, 48, 72, 60, 55, 72, 64, 79, 69, 54, 65, 62, 63, 58, 80, 121, 74, 58, 102, 86, 59, 58, 75, 64, 56, 49, 82, 74, 71, 62, 75, 55, 65, 53, 89, 44, 79, 69, 59, 75, 62, 51, 71, 79, 64, 81, 85, 73, 52, 70, 73, 52, 93, 86, 67, 73, 72, 65, 67, 57, 70, 63, 49, 68, 59, 77, 61, 74, 68, 60, 64, 63, 52, 60, 89, 77, 70, 83, 67, 58, 74, 76, 56, 153, 63, 62, 84, 75, 82, 65, 89, 51, 61, 57, 76, 49, 58, 87, 73, 72, 71, 60, 61, 70, 74, 80, 94, 63, 58, 66, 65, 76, 65, 66, 78, 66, 81, 56, 71, 70, 77, 83, 75, 57, 49, 62, 81, 56, 80, 70, 73, 57, 74, 99, 76, 70, 75, 53, 68, 45, 76, 57, 71, 86, 54, 62, 72, 52, 46, 66, 61, 66, 55, 61, 72, 63, 70, 63, 54, 64, 68, 75, 58, 58, 64, 85, 83, 62, 65, 56, 78, 79, 60, 64, 41, 64, 69, 67, 75, 51, 43, 94, 60, 39, 71, 61, 55, 59, 47, 62, 65, 68, 118, 44, 75, 68, 70, 65, 44, 94, 110, 64, 65, 68, 57, 36, 80, 70, 56, 76, 58, 70, 56, 40, 60, 104, 56, 79, 65, 57, 73, 50, 69, 85, 48, 78, 73, 59, 49, 53, 70, 74, 51, 62, 85, 57, 48, 58, 54, 72, 112, 82, 87, 69, 61, 58, 78, 76, 61, 70, 61, 54, 68, 60, 87, 67, 40, 87, 49, 68, 45, 89, 62, 61, 54, 73, 64, 78, 56, 53, 62, 69, 51, 66, 60, 72, 70, 60, 60, 59, 62, 81, 100, 68, 53, 56, 79, 52, 58, 44, 61, 65, 81, 59, 52, 68, 55, 61, 87, 98, 79, 68, 51, 60, 79, 50, 65, 65, 77, 68, 45, 68, 72, 65, 79, 63, 55, 63, 75, 64, 112, 67, 55, 44, 56, 76, 74, 61, 60, 47, 83, 71, 50, 63, 64, 63, 64, 52, 60, 67, 84, 59, 72, 52, 56, 82, 74, 77, 60, 50, 49, 67, 48, 57, 80, 97, 65, 63, 72, 77, 74, 70, 59, 70, 73, 62, 60, 64, 49, 68, 61, 58, 58, 79, 44, 64, 73, 95, 60, 87, 59, 56, 57, 67, 69, 57, 68, 63, 61, 59, 58, 66, 52, 77, 91, 70, 74, 67, 57, 56, 64, 64, 68, 54, 68, 55, 61, 61, 77, 57, 71, 62, 63, 58, 43, 112, 64, 62, 78, 56, 71, 64, 51, 55, 58, 57, 66, 51, 72, 65, 83, 80, 60, 57, 62, 52, 90, 78, 76, 58, 53, 59, 61, 57, 68, 52, 48, 60, 53, 59, 55, 47, 80, 62, 71, 64, 71, 56, 81, 65, 76, 59, 81, 64, 57, 45, 67, 63, 60, 57, 65, 64, 59, 68, 103, 61, 70, 49, 54, 59, 65, 66, 63, 72, 69, 54, 63, 55, 68, 60, 57, 90, 92, 58, 52, 75, 52, 62, 68, 74, 80, 54, 83, 87, 71, 56, 54, 66, 59, 68, 48, 68, 68, 54, 57, 56, 53, 62, 77, 68, 68, 67, 55, 75, 47, 67, 50, 84, 63, 46, 57, 67, 63, 54, 82, 52, 85, 64, 79, 78, 61, 71, 61, 82, 68, 87, 73, 66, 57, 63, 71, 47, 60, 74, 59, 56, 55, 71, 70, 67, 59, 63, 68, 40, 65, 88, 58, 57, 56, 58, 73, 78, 64, 66, 66, 69, 66, 64, 75, 64, 74, 65, 70, 119, 73, 66, 57, 59, 57, 47, 64, 60, 54, 66, 52, 44, 148, 59, 87, 87, 78, 59, 54, 66, 79, 53, 72, 59, 78, 100, 67, 66, 50, 103, 62, 57, 40, 45, 53, 45, 78, 76, 59, 78, 71, 72, 74, 74, 37, 68, 49, 71, 83, 77, 48, 63, 69, 73, 59, 60, 62, 48, 75, 79, 95, 68, 99, 47, 61, 70, 74, 47, 47, 61, 41, 67, 66, 51, 70, 65, 72, 36, 53, 56, 79, 64, 79, 60, 65, 66, 78, 68, 67, 73, 62, 59, 57, 61, 65, 71, 60, 73, 81, 90, 55, 72, 45, 66, 58, 54, 77, 54, 58, 66, 61, 55, 72, 59, 57, 83, 71, 82, 44, 61, 65, 65, 76, 53, 71, 73, 67, 63, 60, 62, 79, 63, 50, 70, 77, 51, 49, 57, 72, 71, 80, 71, 73, 57, 88, 54, 81, 57, 78, 75, 51, 54, 69, 73, 79, 71, 62, 45, 71, 66, 82, 65, 74, 66, 62, 57, 51, 87, 59, 51, 59, 67, 61, 64, 71, 76, 78, 61, 58, 46, 66, 46, 75, 81, 57, 51, 62, 74, 92, 68, 41, 61, 64, 64, 68, 62, 62, 56, 80, 60, 77, 91, 51, 66, 57, 69, 67, 77, 54, 74, 55, 58, 50, 51, 49, 35, 59, 68, 68, 65, 87, 63, 58, 86, 59, 57, 86, 54, 48, 84, 70, 72, 78, 75, 53, 57, 60, 86, 90, 66, 72, 54, 54, 72, 76, 51, 75, 51, 77, 57, 54, 51, 51, 75, 64, 56, 64, 83, 55, 53, 70, 76, 79, 83, 46, 50, 53, 55, 64, 72, 69, 57, 67, 63, 63, 60, 81, 77, 79, 57, 50, 53, 82, 61, 58, 76, 45, 89, 93, 65, 67, 75, 70, 42, 68, 113, 60, 57, 65, 65, 77, 54, 128, 67, 61, 48, 51, 82, 79, 69, 55, 49, 72, 46, 60, 62, 57, 66, 57, 48, 66, 88, 96, 44, 49, 44, 54, 68, 80, 57, 68, 71, 68, 58, 57, 60, 54, 73, 85, 92, 66, 59, 60, 57, 82, 69, 83, 62, 65, 72, 60, 75, 58, 67, 60, 81, 69, 56, 79, 62, 74, 64, 54, 61, 49, 63, 51, 59, 63, 51, 66, 40, 69, 58, 82, 50, 64, 58, 43, 57, 61, 60, 63, 60, 60, 77, 75, 76, 101, 54, 46, 55, 54, 45, 60, 71, 62, 68, 77, 65, 83, 62, 79, 61, 55, 65, 59, 61, 42, 57, 65, 58, 69, 67, 54, 58, 54, 62, 67, 73, 101, 77, 66, 69, 57, 59, 59, 50, 58, 61, 57, 78, 58, 63, 50, 46, 70, 91, 119, 78, 72, 62, 58, 74, 52, 65, 63, 78, 57, 45, 80, 74, 71, 51, 86, 109, 60, 66, 114, 66, 71, 62, 43, 64, 82, 71, 63, 69, 48, 57, 53, 62, 71, 56, 76, 54, 67, 69, 64, 55, 58, 69, 78, 87, 53, 82, 62, 64, 83, 61, 73, 66, 62, 83, 57, 47, 84, 47, 62, 75, 79, 97, 61, 65, 74, 56, 78, 63, 46, 57, 73, 87, 65, 45, 56, 60, 73, 62, 78, 60, 94, 62, 79, 65, 54, 69, 78, 85, 84, 62, 70, 59, 74, 47, 70, 75, 67, 73, 49, 80, 110, 52, 73, 80, 57, 57, 67, 61, 70, 62, 64, 49, 88, 60, 63, 57, 78, 82, 62, 71, 80, 63, 54, 93, 64, 99, 63, 64, 85, 62, 71, 72, 69, 51, 72, 63, 85, 82, 63, 54, 60, 81, 56, 61, 78, 70, 64, 79, 47, 65, 66, 72, 73, 72, 74, 59, 65, 85, 52, 56, 71, 85, 60, 67, 67, 58, 77, 87, 60, 61, 81, 77, 51, 63, 75, 61, 72, 60, 64, 62, 53, 65, 66, 69, 68, 75, 66, 71, 59, 59, 62, 110, 141, 78, 132, 76, 63, 100, 93, 73, 85, 59, 52, 43, 64, 78, 47, 82, 67, 65, 65, 77, 63, 64, 52, 77, 42, 89, 63, 52, 42, 56, 86, 143, 55, 54, 75, 60, 56, 78, 72, 59, 60, 72, 70, 65, 54, 63, 74, 60, 75, 74, 60, 65, 85, 66, 119, 59, 81, 44, 71, 53, 48, 103, 62, 52, 90, 79, 94, 60, 66, 69, 51, 68, 60, 60, 65, 74, 49, 76, 67, 57, 62, 80, 65, 64, 66, 49, 71, 55, 72, 47, 76, 92, 79, 68, 78, 68, 45, 63, 78, 88, 69, 44, 53, 50, 71, 75, 70, 55, 53, 51, 61, 77, 96, 68, 112, 56, 85, 67, 83, 68, 67, 67, 71, 95, 89, 51, 52, 72, 94, 53, 44, 97, 55, 65, 64, 48, 62, 58, 73, 69, 54, 68, 77, 65, 56, 65, 59, 80, 51, 81, 44, 53, 40, 71, 73, 60, 52, 78, 95, 50, 78, 50, 66, 58, 41, 102, 93, 62, 58, 55, 45, 58, 61, 64, 63, 55, 93, 65, 67, 56, 52, 41, 71, 72, 49, 54, 69, 94, 59, 71, 64, 81, 53, 49, 45, 78, 60, 55, 69, 57, 75, 76, 50, 46, 68, 51, 62, 73, 95, 58, 70, 58, 67, 49, 59, 58, 87, 65, 64, 77, 58, 70, 47, 71, 104, 61, 55, 55, 56, 79, 55, 68, 74, 77, 53, 66, 71, 61, 105, 59, 53, 53, 70, 77, 56, 69, 46, 83, 41, 44, 46, 60, 71, 59, 67, 62, 73, 71, 56, 45, 70, 43, 67, 67, 56, 77, 63, 72, 110, 65, 68, 57, 63, 61, 71, 58, 50, 68, 65, 53, 64, 73, 91, 50, 77, 56, 58, 92, 45, 55, 83, 42, 82, 54, 65, 78, 46, 53, 70, 62, 71, 72, 56, 57, 60, 55, 60, 76, 67, 103, 81, 55, 82, 88, 55, 62, 62, 58, 64, 87, 65, 81, 87, 72, 77, 65, 59, 57, 78, 60, 74, 61, 67, 51, 56, 55, 67, 63, 64, 66, 55, 67, 75, 62, 63, 58, 84, 80, 54, 81, 64, 60, 67, 71, 60, 61, 52, 66, 99, 59, 68, 81, 56, 51, 52, 82, 88, 49, 71, 78, 60, 44, 87, 67, 60, 61, 60, 65, 57, 54, 55, 55, 74, 92, 54, 69, 65, 80, 48, 60, 70, 78, 62, 72, 77, 60, 52, 56, 50, 50, 51, 83, 86, 79, 124, 64, 61, 65, 59, 51, 67, 63, 60, 47, 90, 55, 66, 61, 69, 64, 55, 55, 58, 68, 82, 57, 65, 69, 54, 74, 69, 65, 79, 50, 95, 95, 58, 69, 50, 53, 64, 62, 48, 61, 62, 63, 57, 52, 50, 68, 66, 48, 55, 75, 123, 79, 80, 64, 119, 66, 77, 57, 63, 55, 57, 55, 66, 74, 60, 77, 60, 67, 59, 67, 61, 53, 53, 62, 63, 63, 65, 41, 74, 77, 50, 59, 73, 89, 68, 60, 35, 67, 50, 80, 71, 76, 71, 77, 78, 62, 84, 67, 60, 69, 90, 100, 45, 70, 53, 68, 43, 51, 75, 61, 62, 74, 70, 62, 54, 49, 51, 53, 55, 63, 57, 79, 57, 69, 66, 58, 75, 93, 54, 86, 72, 54, 87, 81, 58, 64, 57, 55, 69, 65, 59, 44, 70, 60, 50, 60, 71, 74, 65, 57, 76, 61, 62, 45, 80, 51, 61, 61, 61, 68, 60, 69, 65, 61, 56, 72, 68, 56, 67, 52, 64, 53, 60, 60, 70, 60, 70, 65, 69, 71, 63, 63, 78, 72, 63, 74, 55, 53, 89, 66, 59, 68, 56, 81, 56, 75, 72, 90, 50, 68, 60, 73, 69, 83, 59, 66, 52, 64, 75, 77, 66, 62, 58, 74, 58, 76, 65, 54, 54, 65, 47, 70, 86, 55, 78, 55, 76, 54, 72, 62, 54, 50, 69, 70, 53, 48, 80, 55, 81, 67, 69, 75, 45, 48, 63, 66, 52, 57, 56, 52, 60, 64, 67, 60, 61, 73, 53, 67, 60, 66, 58, 109, 67, 59, 81, 79, 45, 66, 97, 66, 76, 50, 61, 52, 68, 52, 57, 58, 65, 58, 67, 51, 72, 84, 67, 63, 59, 58, 48, 71, 75, 78, 74, 67, 63, 74, 58, 57, 56, 54, 56, 47, 56, 60, 53, 61, 74, 88, 81, 64, 55, 78, 66, 75, 55, 66, 69, 76, 63, 62, 70, 68, 69, 59, 57, 63, 110, 52, 58, 66, 59, 60, 122, 61, 85, 62, 52, 69, 63, 84, 54, 70, 78, 71, 55, 56, 96, 66, 66, 56, 50, 61, 75, 63, 73, 75, 62, 52, 61, 72, 52, 69, 70, 51, 52, 56, 61, 60, 47, 62, 67, 71, 63, 61, 63, 75, 64, 63, 65, 95, 57, 88, 85, 78, 53, 77, 43, 70, 76, 52, 90, 56, 58, 61, 77, 79, 64, 71, 59, 64, 51, 56, 93, 62, 70, 67, 50, 70, 64, 60, 71, 66, 64, 58, 73, 75, 69, 52, 70, 56, 62, 67, 78, 57, 60, 59, 72, 73, 61, 50, 69, 71, 63, 72, 62, 67, 59, 54, 52, 51, 63, 67, 51, 102, 61, 56, 101, 76, 55, 61, 58, 80, 73, 61, 65, 52, 66, 65, 64, 62, 99, 70, 60, 70, 58, 71, 51, 69, 59, 79, 56, 64, 77, 70, 80, 40, 47, 71, 71, 51, 61, 66, 63, 66, 44, 62, 56, 54, 80, 113, 65, 74, 72, 60, 75, 61, 72, 69, 77, 68, 69, 74, 51, 74, 67, 72, 46, 60, 62, 64, 63, 68, 62, 71, 56, 57, 61, 79, 60, 57, 56, 62, 55, 64, 78, 59, 49, 82, 71, 63, 55, 57, 65, 74, 54, 62, 89, 62, 56, 55, 87, 67, 67, 69, 91, 60, 61, 62, 56, 75, 66, 55, 56, 50, 51, 55, 67, 53, 66, 61, 51, 81, 51, 82, 39, 59, 64, 76, 62, 58, 60, 75, 72, 75, 63, 72, 58, 60, 58, 58, 79, 81, 77, 61, 77, 88, 66, 66, 70, 59, 63, 59, 68, 72, 54, 69, 75, 47, 48, 66, 68, 57, 56, 52, 55, 63, 45, 68, 52, 79, 59, 60, 75, 102, 66, 53, 48, 71, 55, 70, 169, 68, 53, 62, 79, 63, 58, 82, 49, 57, 58, 66, 48, 73, 53, 64, 87, 51, 62, 94, 54, 71, 51, 77, 63, 93, 62, 96, 61, 60, 58, 75, 64, 57, 80, 74, 60, 75, 71, 71, 62, 67, 93, 60, 49, 50, 56, 72, 91, 71, 68, 65, 81, 63, 49, 69, 47, 63, 64, 55, 65, 58, 68, 70, 53, 73, 73, 61, 67, 44, 52, 60, 64, 66, 79, 68, 70, 74, 74, 57, 69, 46, 58, 67, 69, 42, 69, 80, 47, 87, 80, 58, 54, 52, 71, 96, 53, 55, 69, 64, 78, 63, 63, 69, 79, 85, 69, 77, 67, 60, 64, 58, 70, 58, 57, 66, 71, 62, 58, 64, 73, 130, 95, 82, 53, 54, 78, 65, 98, 62, 69, 74, 68, 57, 57, 69, 92, 88, 70, 60, 81, 76, 65, 65, 66, 53, 53, 62, 88, 57, 65, 65, 49, 66, 61, 50, 69, 53, 62, 65, 58, 69, 55, 84, 59, 50, 60, 82, 68, 61, 76, 57, 66, 77, 53, 69, 71, 61, 36, 81, 62, 103, 55, 59, 81, 57, 76, 78, 39, 62, 55, 73, 61, 65, 56, 61, 63, 66, 71, 64, 74, 66, 74, 80, 57, 67, 60, 70, 98, 80, 53, 58, 76, 68, 59, 59, 64, 68, 63, 59, 58, 56, 80, 69, 53, 84, 80, 55, 82, 67, 64, 58, 50, 67, 57, 82, 52, 55, 90, 58, 57, 61, 76, 56, 84, 66, 65, 103, 71, 67, 44, 75, 61, 72, 78, 85, 71, 58, 58, 71, 62, 82, 71, 54, 69, 72, 71, 88, 64, 53, 65, 60, 64, 75, 45, 57, 65, 67, 46, 59, 64, 73, 73, 51, 52, 61, 57, 59, 63, 79, 77, 64, 77, 61, 51, 57, 56, 47, 49, 68, 87, 70, 59, 60, 89, 69, 58, 64, 100, 60, 96, 54, 64, 54, 65, 61, 59, 62, 53, 62, 69, 74, 42, 70, 69, 67, 59, 61, 82, 63, 95, 52, 58, 60, 51, 64, 74, 63, 54, 57, 85, 72, 72, 68, 74, 64, 47, 58, 62, 124, 70, 60, 67, 80, 66, 63, 63, 79, 115, 47, 61, 78, 53, 77, 73, 66, 62, 67, 67, 67, 49, 60, 61, 64, 69, 76, 66, 55, 58, 63, 68, 51, 66, 53, 66, 77, 73, 54, 60, 62, 63, 86, 89, 94, 76, 48, 59, 63, 63, 69, 60, 58, 65, 88, 145, 79, 71, 75, 66, 82, 52, 107, 69, 59, 64, 66, 59, 68, 58, 52, 72, 73, 60, 63, 68, 67, 80, 66, 73, 55, 115, 63, 57, 66, 80, 72, 57, 44, 65, 45, 68, 68, 63, 65, 50, 63, 53, 78, 55, 43, 86, 59, 63, 79, 97, 70, 63, 58, 130, 63, 65, 57, 64, 66, 58, 49, 65, 65, 86, 65, 67, 72, 64, 53, 77, 50, 54, 60, 65, 59, 65, 45, 92, 51, 59, 67, 56, 69, 62, 55, 62, 68, 52, 57, 51, 70, 78, 80, 90, 73, 57, 59, 80, 67, 63, 60, 61, 80, 66, 72, 78, 64, 58, 61, 77, 53, 75, 62, 73, 79, 62, 62, 71, 63, 58, 54, 71, 84, 72, 66, 50, 81, 81, 64, 78, 85, 88, 67, 49, 73, 67, 64, 66, 67, 60, 61, 56, 50, 63, 73, 58, 67, 64, 57, 64, 56, 55, 67, 62, 79, 61, 54, 71, 57, 59, 60, 55, 49, 81, 56, 62, 66, 45, 58, 76, 45, 71, 70, 63, 58, 74, 58, 57, 53, 75, 43, 56, 69, 50, 50, 64, 75, 57, 62, 66, 68, 81, 63, 64, 56, 77, 99, 62, 80, 76, 48, 63, 72, 78, 49, 61, 72, 95, 89, 62, 100, 78, 70, 74, 60, 69, 67, 64, 55, 72, 48, 71, 64, 76, 66, 61, 68, 51, 62, 64, 75, 73, 56, 76, 75, 81, 85, 71, 73, 38, 63, 45, 53, 70, 60, 54, 61, 76, 61, 82, 66, 54, 49, 85, 58, 68, 74, 63, 57, 58, 55, 63, 55, 64, 68, 37, 48, 85, 71, 98, 71, 57, 57, 62, 69, 81, 61, 78, 50, 43, 104, 61, 48, 55, 67, 67, 79, 56, 60, 63, 69, 72, 59, 59, 51, 79, 75, 56, 63, 57, 63, 61, 49, 62, 67, 61, 63, 60, 72, 96, 59, 66, 41, 64, 59, 69, 60, 78, 49, 46, 62, 81, 58, 48, 70, 85, 92, 88, 61, 73, 61, 112, 70, 69, 66, 64, 67, 55, 60, 56, 71, 56, 62, 63, 64, 60, 78, 70, 57, 42, 59, 51, 66, 61, 86, 67, 55, 67, 66, 63, 53, 46, 56, 79, 60, 34, 58, 67, 70, 80, 79, 63, 100, 67, 88, 73, 58, 84, 86, 70, 44, 80, 55, 78, 53, 65, 52, 65, 42, 74, 64, 63, 58, 92, 76, 75, 58, 40, 69, 62, 55, 50, 66, 80, 62, 51, 59, 64, 70, 58, 69, 47, 70, 49, 71, 54, 54, 70, 56, 67, 74, 54, 52, 60, 68, 67, 60, 88, 58, 60, 57, 63, 77, 75, 48, 58, 60, 62, 66, 77, 58, 82, 98, 89, 61, 65, 62, 71, 56, 69, 53, 68, 54, 70, 60, 62, 73, 72, 73, 83, 74, 44, 70, 85, 65, 57, 71, 85, 62, 55, 51, 55, 72, 72, 65, 55, 50, 68, 79, 78, 65, 60, 80, 61, 62, 85, 56, 93, 62, 90, 76, 75, 42, 59, 79, 64, 82, 75, 67, 45, 63, 64, 72, 80, 60, 54, 65, 69, 70, 49, 78, 47, 64, 57, 39, 56, 53, 70, 59, 62, 65, 118, 68, 70, 85, 65, 71, 58, 62, 76, 58, 54, 72, 73, 78, 55, 58, 64, 48, 63, 63, 45, 51, 104, 56, 74, 44, 43, 59, 68, 75, 70, 64, 63, 54, 66, 59, 69, 48, 63, 81, 52, 86, 66, 78, 56, 64, 65, 79, 65, 47, 51, 85, 84, 81, 55, 53, 54, 63, 73, 64, 69, 73, 69, 61, 64, 67, 66, 65, 79, 47, 69, 49, 79, 58, 67, 63, 64, 61, 59, 53, 55, 61, 54, 57, 62, 56, 74, 79, 65, 56, 87, 107, 68, 67, 59, 30, 66, 80, 162, 77, 62, 52, 83, 86, 67, 68, 61, 59, 49, 59, 52, 60, 69, 83, 64, 76, 56, 75, 61, 63, 67, 83, 57, 90, 63, 64, 66, 61, 49, 69, 56, 99, 64, 59, 67, 70, 62, 65, 53, 82, 63, 66, 59, 68, 65, 80, 76, 77, 56, 61, 59, 68, 63, 56, 45, 66, 56, 62, 70, 82, 72, 84, 75, 66, 68, 55, 95, 71, 77, 70, 48, 65, 68, 65, 52, 57, 80, 58, 75, 55, 59, 97, 58, 58, 74, 57, 69, 63, 90, 73, 72, 60, 78, 50, 78, 67, 79, 100, 101, 67, 68, 63, 81, 58, 52, 65, 83, 78, 58, 45, 46, 68, 56, 81, 78, 47, 62, 58, 53, 140, 33, 80, 52, 59, 57, 58, 102, 45, 48, 92, 73, 82, 69, 58, 78, 58, 75, 50, 69, 75, 73, 67, 47, 46, 45, 62, 105, 90, 54, 53, 53, 70, 48, 64, 65, 65, 54, 57, 54, 90, 78, 63, 78, 70, 78, 90, 69, 61, 70, 61, 50, 64, 49, 64, 73, 65, 56, 47, 110, 111, 42, 58, 73, 58, 58, 88, 67, 46, 73, 56, 49, 70, 78, 93, 86, 65, 68, 63, 53, 62, 68, 93, 67, 62, 54, 74, 86, 85, 79, 51, 32, 71, 55, 64, 73, 53, 56, 54, 58, 50, 51, 61, 64, 83, 62, 66, 69, 52, 50, 59, 68, 79, 99, 64, 65, 63, 33, 83, 57, 67, 56, 70, 58, 72, 60, 91, 76, 92, 49, 74, 71, 50, 84, 52, 48, 74, 47, 51, 53, 43, 79, 75, 65, 63, 68, 75, 61, 51, 59, 64, 48, 71, 85, 71, 62, 60, 53, 73, 49, 48, 64, 55, 50, 72, 75, 68, 79, 50, 48, 59, 93, 46, 59, 59, 66, 58, 72, 74, 126, 81, 60, 42, 51, 55, 65, 68, 93, 71, 70, 67, 48, 64, 64, 66, 57, 71, 59, 78, 71, 63, 66, 104, 67, 71, 69, 86, 61, 67, 63, 64, 49, 65, 52, 77, 88, 44, 45, 82, 62, 61, 52, 71, 94, 58, 58, 62, 74, 111, 52, 62, 60, 72, 53, 63, 55, 51, 87, 70, 66, 63, 54, 71, 64, 53, 77, 66, 60, 64, 49, 55, 76, 65, 73, 74, 96, 69, 58, 82, 65, 80, 61, 79, 48, 50, 81, 56, 56, 57, 51, 89, 66, 76, 46, 68, 74, 57, 49, 69, 68, 52, 86, 81, 162, 74, 74, 84, 72, 59, 70, 67, 53, 67, 60, 77, 50, 61, 56, 61, 68, 67, 70, 59, 59, 69, 65, 75, 62, 61, 52, 50, 60, 58, 59, 77, 60, 58, 61, 74, 66, 61, 85, 66, 58, 73, 59, 68, 71, 56, 89, 49, 74, 82, 64, 61, 67, 52, 125, 65, 54, 80, 69, 52, 45, 73, 71, 66, 87, 54, 48, 79, 57, 87, 73, 60, 58, 70, 79, 76, 65, 67, 52, 63, 65, 67, 73, 76, 43, 51, 51, 65, 74, 64, 49, 69, 51, 85, 43, 63, 71, 92, 57, 61, 80, 69, 51, 67, 62, 71, 68, 55, 50, 66, 60, 61, 81, 63, 62, 84, 54, 55, 52, 66, 56, 57, 66, 61, 49, 56, 88, 68, 48, 57, 68, 73, 69, 48, 58, 71, 57, 60, 69, 53, 56, 57, 64, 50, 60, 54, 79, 54, 60, 57, 61, 69, 40, 52, 76, 76, 58, 71, 87, 59, 65, 67, 66, 58, 61, 67, 76, 52, 69, 78, 73, 56, 58, 58, 66, 63, 68, 51, 64, 87, 59, 73, 58, 59, 63, 82, 48, 47, 78, 70, 72, 74, 60, 64, 57, 64, 67, 91, 67, 78, 58, 77, 52, 81, 77, 56, 68, 54, 86, 67, 54, 59, 51, 58, 62, 69, 61, 61, 60, 67, 49, 38, 76, 70, 85, 72, 74, 56, 75, 57, 71, 57, 57, 64, 70, 73, 83, 64, 69, 76, 66, 66, 65, 60, 77, 52, 68, 57, 67, 51, 67, 73, 79, 65, 81, 59, 57, 74, 53, 55, 58, 102, 64, 69, 72, 79, 59, 67, 79, 66, 81, 57, 71, 49, 58, 59, 60, 56, 59, 72, 59, 64, 60, 62, 61, 82, 54, 59, 53, 56, 67, 68, 69, 58, 71, 52, 58, 53, 72, 61, 61, 62, 48, 59, 52, 45, 64, 85, 67, 67, 66, 89, 69, 53, 53, 67, 67, 76, 58, 71, 67, 66, 64, 66, 59, 58, 99, 73, 80, 68, 65, 70, 117, 58, 71, 62, 52, 48, 67, 61, 63, 60, 77, 64, 65, 40, 98, 50, 60, 50, 57, 57, 72, 56, 57, 64, 63, 64, 77, 67, 62, 65, 48, 69, 49, 64, 52, 56, 60, 56, 81, 69, 42, 67, 69, 72, 60, 63, 64, 89, 80, 76, 64, 64, 55, 69, 49, 67, 66, 60, 62, 55, 69, 52, 68, 69, 57, 53, 59, 75, 62, 79, 81, 72, 68, 56, 64, 56, 84, 46, 58, 63, 58, 63, 54, 64, 79, 52, 55, 76, 41, 67, 63, 64, 53, 55, 73, 52, 62, 54, 63, 60, 69, 59, 66, 69, 68, 54, 54, 56, 56, 55, 62, 118, 76, 63, 84, 75, 61, 70, 55, 89, 71, 50, 66, 47, 57, 71, 73, 62, 108, 52, 57, 55, 69, 60, 35, 68, 58, 80, 68, 74, 52, 59, 51, 50, 47, 43, 51, 66, 74, 56, 49, 70, 67, 51, 67, 58, 59, 98, 54, 76, 69, 57, 77, 85, 72, 59, 81, 80, 58, 79, 82, 59, 63, 78, 72, 67, 70, 70, 61, 60, 64, 69, 57, 73, 54, 65, 67, 66, 61, 54, 64, 77, 71, 51, 67, 61, 60, 75, 51, 57, 63, 63, 56, 66, 64, 51, 56, 68, 54, 69, 56, 68, 104, 79, 75, 61, 75, 64, 62, 71, 72, 60, 59, 51, 86, 75, 48, 55, 58, 102, 60, 82, 70, 75, 62, 79, 55, 84, 69, 64, 79, 67, 67, 81, 48, 70, 58, 49, 84, 77, 76, 76, 78, 79, 56, 49, 54, 53, 67, 53, 53, 72, 47, 64, 67, 78, 62, 73, 60, 70, 50, 42, 52, 58, 45, 57, 58, 71, 80, 69, 41, 106, 55, 69, 46, 54, 69, 69, 159, 82, 49, 56, 70, 75, 59, 72, 66, 84, 65, 67, 60, 81, 51, 63, 95, 58, 84, 82, 58, 66, 60, 87, 61, 102, 68, 88, 63, 73, 67, 93, 59, 71, 61, 64, 51, 56, 74, 85, 62, 57, 87, 52, 75, 52, 60, 63, 82, 81, 53, 44, 74, 73, 56, 61, 57, 65, 49, 73, 70, 62, 74, 66, 55, 62, 81, 63, 76, 58, 62, 85, 62, 61, 78, 79, 63, 55, 70, 84, 60, 52, 61, 91, 65, 65, 61, 63, 58, 74, 82, 60, 63, 57, 60, 76, 58, 60, 78, 60, 71, 61, 62, 78, 68, 88, 77, 84, 63, 69, 63, 76, 62, 50, 63, 73, 82, 44, 55, 77, 72, 128, 108, 90, 68, 70, 75, 69, 109, 50, 64, 76, 70, 52, 53, 69, 96, 81, 67, 54, 83, 64, 71, 50, 60, 44, 59, 50, 85, 68, 76, 57, 74, 36, 58, 55, 71, 63, 66, 55, 72, 63, 74, 72, 75, 58, 59, 57, 47, 61, 71, 64, 79, 60, 51, 64, 58, 57, 50, 63, 61, 113, 57, 52, 59, 64, 84, 75, 68, 52, 67, 61, 81, 75, 54, 83, 58, 54, 62, 74, 64, 62, 78, 80, 57, 54, 51, 65, 97, 76, 76, 59, 64, 86, 61, 64, 72, 69, 71, 70, 53, 60, 70, 77, 62, 105, 67, 61, 50, 50, 63, 66, 61, 73, 58, 65, 62, 60, 93, 62, 56, 56, 74, 57, 74, 69, 53, 72, 65, 73, 55, 58, 53, 56, 85, 74, 75, 69, 47, 58, 67, 68, 68, 61, 73, 65, 68, 84, 50, 77, 70, 49, 46, 83, 57, 79, 63, 48, 63, 56, 58, 68, 75, 58, 50, 63, 67, 72, 60, 57, 80, 57, 61, 53, 45, 67, 80, 62, 65, 64, 78, 55, 57, 62, 69, 56, 67, 65, 90, 63, 93, 67, 58, 60, 53, 67, 64, 56, 55, 49, 59, 66, 71, 81, 70, 67, 62, 94, 78, 66, 79, 64, 51, 57, 55, 52, 88, 50, 58, 57, 82, 70, 76, 65, 70, 56, 58, 65, 73, 123, 67, 57, 69, 51, 57, 69, 68, 60, 101, 69, 45, 89, 62, 50, 68, 65, 46, 79, 71, 64, 53, 52, 71, 69, 67, 75, 72, 61, 60, 63, 62, 66, 53, 61, 62, 69, 52, 49, 72, 54, 68, 85, 51, 94, 56, 60, 56, 69, 79, 80, 63, 40, 84, 83, 145, 69, 57, 79, 58, 53, 70, 77, 75, 49, 61, 73, 63, 66, 62, 54, 70, 74, 53, 47, 70, 64, 81, 45, 62, 57, 97, 66, 71, 57, 75, 70, 57, 57, 60, 61, 50, 77, 59, 64, 63, 69, 70, 66, 56, 62, 82, 63, 71, 56, 91, 73, 78, 63, 124, 53, 59, 58, 65, 47, 91, 63, 59, 58, 89, 53, 74, 50, 51, 54, 64, 51, 60, 58, 57, 58, 68, 47, 70, 54, 50, 55, 51, 75, 67, 67, 72, 60, 54, 62, 65, 61, 73, 80, 72, 59, 65, 53, 61, 62, 58, 60, 68, 80, 66, 46, 57, 73, 45, 54, 80, 68, 61, 53, 74, 69, 54, 62, 56, 65, 65, 59, 56, 69, 73, 46, 62, 67, 53, 72, 65, 77, 85, 63, 63, 65, 75, 65, 50, 58, 50, 50, 59, 68, 72, 75, 59, 55, 51, 71, 69, 83, 52, 64, 77, 64, 59, 67, 69, 56, 72, 62, 63, 50, 68, 67, 56, 62, 65, 67, 61, 93, 65, 61, 69, 91, 85, 53, 60, 64, 78, 69, 57, 56, 73, 98, 50, 70, 81, 63, 81, 88, 57, 68, 54, 59, 66, 71, 73, 63, 77, 60, 42, 60, 69, 63, 62, 80, 68, 47, 71, 63, 53, 61, 73, 65, 74, 53, 56, 79, 62, 83, 60, 66, 46, 48, 59, 74, 57, 71, 67, 61, 94, 76, 90, 58, 74, 59, 62, 55, 81, 71, 74, 69, 54, 67, 62, 67, 90, 67, 87, 104, 54, 46, 56, 65, 65, 63, 53, 65, 56, 57, 65, 63, 68, 58, 54, 50, 49, 80, 63, 58, 54, 52, 70, 60, 68, 61, 52, 75, 84, 49, 69, 56, 68, 58, 74, 67, 67, 51, 68, 51, 56, 67, 77, 66, 62, 75, 70, 62, 65, 58, 65, 50, 59, 59, 48, 58, 59, 87, 45, 64, 61, 85, 59, 47, 70, 89, 54, 59, 54, 59, 50, 58, 70, 60, 86, 60, 63, 64, 69, 55, 72, 77, 48, 58, 54, 60, 65, 83, 57, 84, 62, 62, 60, 49, 100, 59, 61, 73, 68, 65, 56, 58, 82, 110, 57, 69, 69, 91, 51, 93, 82, 66, 61, 71, 57, 65, 86, 57, 84, 80, 68, 38, 67, 64, 64, 59, 65, 92, 74, 77, 81, 53, 59, 59, 69, 58, 73, 58, 67, 82, 113, 64, 80, 70, 66, 73, 51, 54, 54, 59, 69, 65, 57, 72, 54, 62, 50, 59, 73, 66, 61, 51, 64, 69, 69, 58, 124, 53, 52, 55, 101, 54, 62, 57, 77, 69, 55, 65, 70, 75, 83, 52, 80, 72, 61, 58, 69, 73, 64, 56, 71, 64, 76, 51, 64, 54, 75, 78, 54, 58, 48, 90, 68, 75, 66, 75, 68, 55, 55, 65, 59, 67, 74, 55, 75, 71, 102, 57, 60, 60, 69, 50, 80, 57, 61, 89, 79, 66, 65, 60, 64, 48, 58, 60, 68, 63, 98, 61, 51, 83, 53, 78, 56, 68, 76, 60, 61, 89, 67, 65, 70, 74, 62, 59, 68, 66, 53, 80, 64, 60, 78, 60, 96, 59, 58, 71, 59, 48, 63, 60, 81, 62, 76, 61, 66, 68, 72, 52, 72, 52, 65, 56, 55, 65, 76, 52, 62, 105, 67, 47, 57, 73, 81, 68, 52, 56, 59, 74, 65, 63, 61, 67, 57, 51, 125, 63, 87, 73, 59, 64, 53, 53, 57, 67, 67, 63, 55, 59, 59, 87, 96, 57, 63, 64, 56, 65, 53, 53, 74, 91, 69, 61, 100, 53, 54, 55, 57, 62, 64, 61, 62, 63, 72, 63, 60, 62, 64, 74, 62, 56, 65, 51, 62, 69, 68, 57, 60, 73, 77, 53, 69, 76, 90, 46, 55, 51, 69, 67, 64, 72, 55, 61, 56, 56, 96, 73, 54, 74, 62, 46, 68, 54, 68, 53, 58, 56, 75, 79, 60, 76, 74, 66, 68, 69, 71, 81, 70, 79, 55, 64, 51, 70, 59, 68, 78, 60, 61, 90, 60, 78, 80, 57, 65, 55, 63, 74, 96, 79, 59, 60, 114, 55, 64, 64, 77, 70, 47, 44, 79, 55, 60, 56, 65, 53, 71, 57, 76, 63, 65, 52, 59, 56, 69, 70, 57, 67, 80, 57, 68, 64, 61, 46, 60, 61, 45, 68, 64, 118, 73, 80, 49, 59, 50, 95, 55, 61, 59, 54, 58, 66, 64, 78, 91, 58, 63, 74, 73, 55, 91, 81, 98, 82, 77, 64, 77, 80, 74, 79, 52, 63, 60, 54, 76, 70, 53, 73, 75, 82, 88, 70, 63, 72, 67, 66, 59, 64, 61, 60, 86, 80, 56, 52, 70, 50, 66, 57, 51, 60, 97, 57, 57, 61, 50, 58, 69, 65, 87, 65, 45, 60, 72, 51, 47, 61, 72, 54, 55, 65, 68, 71, 53, 64, 84, 67, 80, 56, 85, 56, 85, 78, 119, 106, 63, 61, 75, 51, 61, 61, 57, 60, 62, 84, 65, 75, 61, 73, 74, 63, 55, 71, 87, 49, 49, 78, 67, 69, 56, 64, 56, 75, 59, 76, 70, 72, 59, 81, 68, 76, 59, 70, 55, 60, 58, 56, 64, 60, 72, 65, 52, 100, 63, 70, 88, 78, 56, 50, 61, 51, 63, 64, 81, 84, 60, 64, 52, 82, 62, 78, 58, 51, 67, 61, 58, 72, 48, 52, 68, 57, 84, 70, 70, 58, 69, 68, 49, 86, 60, 47, 65, 63, 58, 71, 72, 61, 51, 61, 75, 75, 51, 84, 54, 67, 106, 69, 72, 57, 77, 69, 59, 58, 48, 63, 85, 62, 59, 59, 74, 85, 120, 62, 59, 67, 78, 103, 69, 72, 70, 62, 133, 60, 65, 44, 79, 74, 71, 82, 54, 51, 68, 65, 59, 48, 80, 56, 59, 67, 70, 54, 53, 60, 57, 58, 65, 91, 74, 95, 75, 66, 100, 70, 46, 69, 62, 74, 65, 62, 58, 52, 71, 55, 66, 66, 56, 62, 73, 72, 65, 52, 62, 62, 62, 55, 73, 58, 41, 53, 57, 67, 64, 70, 49, 61, 66, 54, 60, 71, 57, 56, 61, 67, 66, 66, 79, 46, 63, 66, 68, 79, 53, 80, 67, 65, 57, 49, 62, 57, 75, 57, 58, 95, 79, 69, 53, 68, 63, 74, 62, 81, 64, 52, 66, 68, 62, 61, 73, 85, 64, 61, 64, 69, 53, 67, 76, 66, 59, 60, 60, 65, 67, 73, 51, 124, 53, 61, 77, 60, 92, 73, 67, 71, 56, 63, 66, 68, 75, 93, 62, 65, 48, 59, 65, 69, 61, 75, 60, 56, 55, 60, 94, 56, 48, 51, 55, 53, 64, 57, 77, 53, 65, 69, 64, 78, 69, 56, 57, 74, 64, 76, 78, 64, 77, 63, 60, 70, 63, 42, 67, 60, 83, 71, 60, 61, 68, 78, 66, 55, 74, 59, 64, 58, 73, 61, 59, 50, 64, 54, 59, 68, 60, 52, 58, 58, 102, 64, 69, 58, 65, 82, 67, 67, 71, 55, 47, 70, 53, 76, 66, 51, 94, 52, 64, 71, 74, 52, 60, 58, 67, 56, 68, 59, 54, 52, 68, 68, 65, 70, 63, 63, 53, 64, 58, 55, 55, 67, 53, 54, 70, 59, 67, 55, 56, 71, 53, 74, 63, 66, 70, 61, 61, 68, 87, 148, 69, 70, 64, 63, 68, 92, 56, 53, 55, 73, 73, 55, 66, 67, 63, 75, 110, 76, 65, 60, 72, 88, 57, 76, 91, 73, 67, 73, 67, 99, 67, 67, 51, 71, 65, 64, 47, 69, 74, 70, 62, 76, 53, 66, 73, 65, 64, 55, 59, 92, 51, 62, 66, 70, 60, 57, 86, 53, 57, 51, 72, 72, 63, 64, 60, 63, 68, 93, 75, 70, 65, 65, 85, 57, 58, 90, 46, 61, 92, 63, 41, 76, 47, 53, 79, 102, 63, 49, 63, 57, 80, 67, 74, 58, 54, 129, 59, 51, 56, 68, 73, 71, 76, 67, 67, 62, 68, 55, 55, 64, 57, 51, 68, 46, 70, 75, 61, 76, 74, 64, 60, 63, 50, 77, 90, 62, 62, 86, 57, 66, 67, 68, 67, 48, 60, 68, 58, 54, 55, 77, 96, 65, 115, 80, 57, 75, 82, 102, 70, 66, 65, 85, 57, 60, 53, 64, 51, 68, 79, 78, 68, 46, 59, 55, 55, 75, 56, 55, 80, 56, 69, 50, 65, 63, 65, 73, 81, 86, 44, 60, 56, 95, 67, 57, 98, 65, 97, 62, 54, 63, 60, 63, 85, 56, 55, 71, 62, 55, 72, 60, 87, 74, 62, 52, 61, 56, 57, 90, 48, 66, 51, 96, 53, 56, 67, 77, 59, 54, 67, 54, 118, 44, 64, 70, 59, 80, 58, 57, 52, 49, 55, 65, 67, 63, 95, 67, 53, 61, 62, 51, 58, 66, 56, 62, 52, 52, 70, 64, 70, 61, 63, 75, 81, 68, 67, 63, 68, 66, 70, 57, 69, 52, 50, 57, 58, 75, 59, 49, 67, 72, 61, 76, 69, 58, 64, 63, 65, 52, 83, 53, 63, 70, 61, 82, 66, 85, 68, 50, 79, 69, 81, 59, 47, 64, 63, 56, 73, 70, 85, 52, 75, 58, 49, 65, 75, 59, 80, 81, 58, 49, 67, 51, 71, 80, 49, 85, 59, 73, 61, 69, 95, 69, 66, 52, 73, 68, 72, 64, 57, 62, 76, 94, 35, 104, 62, 86, 58, 50, 62, 59, 53, 76, 60, 62, 53, 67, 62, 57, 65, 48, 72, 48, 96, 62, 58, 68, 55, 58, 71, 63, 55, 61, 76, 60, 111, 74, 45, 75, 56, 56, 73, 54, 66, 46, 96, 69, 72, 61, 40, 55, 56, 95, 60, 60, 64, 63, 76, 63, 96, 85, 50, 57, 64, 76, 74, 66, 75, 65, 87, 55, 60, 65, 65, 66, 58, 52, 54, 63, 70, 51, 59, 93, 74, 59, 62, 73, 54, 71, 74, 65, 73, 89, 54, 71, 57, 57, 77, 90, 56, 108, 54, 62, 67, 72, 64, 56, 63, 65, 100, 70, 80, 55, 75, 56, 54, 69, 44, 70, 62, 48, 52, 63, 67, 61, 74, 79, 67, 61, 75, 54, 68, 67, 58, 71, 65, 60, 55, 50, 55, 45, 48, 53, 71, 78, 50, 78, 64, 80, 62, 48, 55, 44, 49, 73, 66, 52, 66, 65, 52, 132, 55, 62, 67, 77, 52, 54, 59, 66, 54, 55, 64, 62, 79, 62, 67, 36, 86, 55, 62, 67, 84, 61, 48, 53, 57, 64, 58, 64, 67, 67, 58, 71, 83, 58, 76, 64, 83, 69, 76, 72, 73, 61, 55, 37, 51, 64, 72, 66, 78, 85, 47, 92, 58, 49, 59, 51, 67, 52, 66, 62, 67, 53, 58, 76, 80, 51, 50, 62, 67, 59, 59, 64, 84, 66, 42, 57, 56, 59, 55, 41, 56, 54, 76, 69, 61, 58, 83, 56, 72, 50, 83, 59, 70, 62, 51, 87, 55, 74, 59, 82, 64, 60, 85, 59, 59, 66, 56, 95, 65, 84, 59, 63, 56, 69, 75, 84, 56, 71, 69, 58, 103, 64, 69, 69, 69, 68, 62, 59, 83, 67, 48, 59, 62, 62, 63, 74, 83, 62, 62, 51, 67, 67, 74, 57, 70, 46, 101, 53, 60, 68, 60, 90, 84, 96, 47, 49, 72, 59, 59, 85, 68, 68, 55, 78, 65, 53, 62, 104, 59, 67, 62, 39, 58, 68, 59, 65, 57, 76, 63, 86, 64, 55, 56, 67, 52, 69, 48, 55, 82, 66, 68, 60, 54, 61, 56, 54, 60, 48, 62, 68, 47, 61, 81, 60, 45, 51, 67, 67, 78, 52, 64, 74, 47, 54, 75, 68, 52, 54, 58, 61, 74, 68, 51, 51, 62, 71, 54, 46, 74, 74, 62, 61, 72, 98, 47, 135, 58, 63, 31, 78, 98, 57, 50, 40, 81, 57, 70, 61, 50, 49, 83, 50, 73, 56, 60, 74, 67, 83, 79, 61, 58, 68, 59, 73, 62, 70, 62, 57, 64, 73, 69, 54, 89, 34, 75, 66, 56, 63, 46, 72, 67, 47, 69, 62, 74, 70, 65, 61, 63, 64, 47, 51, 84, 76, 52, 67, 57, 70, 58, 55, 69, 55, 73, 55, 60, 65, 86, 61, 80, 80, 48, 83, 52, 55, 58, 56, 76, 59, 54, 57, 60, 89, 67, 60, 107, 68, 65, 70, 60, 69, 64, 55, 57, 84, 52, 66, 49, 60, 65, 80, 58, 57, 62, 93, 54, 57, 64, 52, 78, 65, 51, 59, 58, 58, 53, 79, 56, 72, 48, 56, 48, 74, 58, 87, 56, 56, 64, 76, 55, 36, 61, 57, 72, 70, 59, 61, 63, 66, 52, 59, 72, 61, 60, 64, 46, 61, 72, 50, 51, 55, 54, 87, 50, 91, 75, 50, 57, 45, 58, 68, 65, 82, 60, 61, 61, 63, 63, 62, 52, 46, 68, 66, 58, 68, 64, 92, 65, 71, 78, 54, 83, 82, 59, 74, 101, 47, 55, 55, 55, 56, 63, 71, 61, 62, 80, 76, 60, 66, 59, 59, 72, 59, 104, 66, 58, 113, 79, 59, 74, 66, 56, 39, 70, 70, 47, 67, 81, 47, 94, 65, 80, 77, 78, 60, 68, 79, 74, 62, 59, 52, 58, 56, 87, 51, 87, 54, 58, 59, 86, 66, 70, 60, 95, 55, 54, 66, 116, 76, 114, 62, 86, 52, 70, 58, 59, 56, 85, 76, 52, 67, 50, 125, 57, 54, 61, 61, 62, 60, 55, 58, 68, 62, 65, 57, 52, 57, 62, 56, 53, 73, 56, 84, 86, 61, 63, 54, 57, 59, 62, 69, 59, 64, 63, 57, 59, 69, 70, 72, 109, 66, 90, 54, 76, 63, 58, 55, 64, 77, 81, 70, 56, 57, 65, 64, 62, 66, 64, 61, 60, 63, 62, 74, 62, 81, 69, 62, 91, 65, 65, 63, 59, 55, 81, 87, 81, 49, 74, 48, 68, 60, 70, 62, 58, 52, 54, 54, 56, 63, 71, 79, 52, 64, 53, 53, 52, 53, 62, 68, 66, 58, 65, 48, 73, 61, 65, 72, 67, 62, 70, 63, 62, 51, 67, 57, 58, 55, 62, 68, 55, 97, 55, 60, 31, 61, 70, 40, 45, 56, 52, 61, 51, 70, 45, 53, 96, 68, 60, 53, 58, 41, 56, 68, 52, 58, 86, 86, 66, 99, 69, 65, 52, 70, 77, 49, 87, 84, 57, 74, 114, 81, 53, 58, 64, 53, 96, 58, 68, 57, 49, 74, 57, 67, 62, 70, 108, 62, 85, 71, 51, 56, 73, 101, 83, 66, 60, 53, 55, 66, 62, 43, 45, 58, 100, 74, 66, 62, 62, 50, 54, 107, 70, 69, 94, 60, 68, 56, 62, 62, 72, 43, 98, 86, 61, 63, 49, 60, 71, 77, 154, 43, 68, 78, 64, 124, 79, 57, 50, 56, 59, 66, 75, 68, 67, 66, 60, 87, 67, 57, 61, 56, 67, 61, 57, 62, 59, 41, 65, 66, 57, 57, 53, 67, 46, 52, 81, 85, 87, 80, 65, 88, 89, 68, 57, 62, 64, 62, 55, 66, 76, 54, 68, 80, 66, 80, 54, 59, 69, 64, 78, 71, 69, 59, 71, 70, 54, 57, 64, 56, 52, 78, 38, 65, 67, 49, 74, 71, 62, 71, 71, 55, 68, 53, 66, 58, 68, 63, 62, 53, 55, 57, 50, 60, 69, 66, 66, 75, 72, 73, 100, 65, 70, 68, 73, 62, 59, 69, 74, 68, 97, 44, 51, 61, 61, 70, 92, 71, 64, 58, 49, 60, 56, 83, 86, 45, 72, 64, 58, 64, 52, 74, 73, 67, 49, 81, 56, 108, 41, 54, 63, 52, 79, 64, 93, 51, 110, 88, 79, 78, 80, 71, 73, 61, 67, 48, 48, 61, 57, 65, 114, 66, 48, 55, 52, 55, 44, 53, 44, 84, 77, 107, 65, 55, 90, 65, 60, 48, 64, 73, 65, 60, 68, 73, 53, 62, 62, 69, 55, 69, 108, 108, 61, 55, 52, 50, 64, 66, 63, 76, 55, 63, 54, 40, 57, 57, 61, 56, 67, 79, 51, 57, 59, 55, 60, 57, 102, 84, 60, 58, 48, 61, 55, 73, 82, 62, 78, 55, 70, 54, 49, 63, 67, 79, 69, 74, 84, 69, 53, 95, 61, 79, 73, 78, 69, 72, 72, 78, 75, 73, 46, 74, 63, 99, 105, 99, 66, 64, 83, 126, 101, 62, 76, 59, 46, 55, 46, 65, 62, 54, 58, 96, 67, 48, 76, 54, 56, 75, 59, 58, 69, 55, 67, 66, 79, 72, 57, 48, 54, 59, 64, 76, 75, 74, 68, 90, 63, 70, 63, 72, 61, 55, 59, 81, 70, 100, 67, 64, 62, 57, 60, 62, 61, 71, 71, 49, 88, 52, 76, 75, 64, 47, 68, 52, 61, 52, 76, 50, 67, 62, 62, 54, 64, 76, 59, 100, 55, 74, 71, 61, 52, 57, 62, 64, 60, 58, 45, 47, 61, 53, 63, 81, 49, 88, 53, 70, 91, 80, 49, 84, 73, 51, 65, 65, 68, 44, 59, 67, 63, 117, 89, 45, 50, 59, 81, 62, 75, 80, 79, 58, 59, 80, 55, 85, 65, 52, 64, 63, 50, 59, 83, 63, 53, 49, 87, 66, 92, 77, 52, 61, 54, 90, 51, 69, 60, 55, 56, 56, 59, 64, 54, 59, 61, 67, 85, 50, 56, 69, 59, 78, 52, 91, 75, 76, 70, 54, 68, 49, 69, 62, 64, 58, 65, 68, 71, 65, 58, 70, 75, 81, 83, 66, 59, 54, 55, 46, 74, 55, 89, 82, 67, 61, 65, 92, 83, 56, 53, 116, 88, 54, 50, 47, 55, 59, 60, 85, 68, 63, 72, 75, 84, 57, 56, 71, 50, 73, 66, 56, 56, 66, 57, 55, 75, 83, 61, 78, 74, 88, 68, 46, 56, 57, 59, 59, 123, 51, 51, 61, 75, 75, 62, 69, 56, 59, 78, 45, 52, 56, 74, 48, 83, 62, 62, 69, 67, 63, 54, 63, 65, 65, 84, 49, 57, 41, 80, 63, 70, 61, 54, 79, 70, 53, 75, 69, 107, 71, 83, 50, 58, 80, 73, 57, 98, 80, 69, 67, 34, 73, 71, 105, 79, 52, 78, 60, 62, 60, 56, 62, 66, 54, 49, 55, 58, 68, 76, 61, 72, 67, 69, 59, 73, 63, 45, 73, 91, 64, 44, 57, 84, 49, 58, 71, 57, 56, 66, 54, 76, 75, 109, 63, 74, 78, 49, 80, 69, 57, 78, 73, 72, 69, 53, 101, 46, 75, 78, 80, 67, 58, 63, 73, 67, 68, 68, 75, 76, 76, 55, 54, 62, 71, 54, 63, 67, 70, 74, 85, 64, 50, 64, 61, 46, 61, 61, 78, 51, 76, 49, 63, 51, 60, 52, 43, 71, 64, 61, 73, 69, 67, 59, 63, 68, 55, 40, 61, 90, 53, 60, 66, 94, 82, 53, 71, 47, 113, 63, 54, 47, 73, 47, 76, 57, 81, 54, 50, 77, 69, 79, 55, 91, 80, 76, 62, 66, 76, 56, 107, 83, 54, 57, 72, 37, 61, 74, 47, 45, 68, 57, 86, 93, 108, 64, 52, 102, 65, 49, 88, 63, 108, 67, 58, 67, 62, 57, 56, 50, 70, 71, 102, 56, 75, 64, 48, 66, 67, 69, 67, 66, 51, 77, 66, 71, 86, 58, 53, 85, 86, 51, 64, 67, 53, 35, 46, 63, 57, 57, 53, 66, 69, 79, 58, 112, 56, 67, 59, 57, 61, 52, 77, 84, 57, 60, 85, 65, 66, 66, 53, 53, 55, 83, 66, 74, 70, 60, 60, 41, 47, 66, 80, 80, 56, 57, 72, 72, 59, 72, 67, 75, 62, 90, 61, 66, 63, 50, 58, 74, 66, 90, 80, 73, 78, 52, 72, 64, 68, 53, 61, 48, 63, 57, 57, 71, 56, 68, 89, 54, 55, 76, 76, 57, 79, 100, 50, 74, 65, 72, 81, 58, 77, 67, 74, 69, 69, 30, 66, 68, 61, 86, 77, 62, 116, 73, 63, 68, 64, 67, 112, 69, 66, 65, 63, 68, 63, 71, 63, 69, 70, 74, 92, 47, 66, 65, 60, 50, 52, 70, 76, 61, 60, 59, 54, 77, 61, 64, 55, 67, 63, 60, 58, 76, 91, 58, 59, 77, 76, 60, 62, 63, 57, 56, 86, 69, 64, 57, 60, 58, 59, 69, 79, 69, 66, 57, 68, 53, 72, 59, 62, 62, 56, 59, 82, 58, 77, 62, 64, 67, 87, 62, 67, 52, 88, 53, 85, 56, 68, 82, 77, 59, 69, 67, 69, 74, 63, 73, 62, 56, 80, 63, 74, 71, 67, 77, 58, 87, 62, 69, 64, 64, 64, 89, 59, 54, 61, 60, 49, 57, 66, 57, 53, 72, 60, 57, 67, 61, 73, 98, 71, 65, 46, 61, 60, 81, 63, 81, 74, 59, 53, 66, 104, 59, 56, 113, 66, 147, 69, 70, 68, 55, 64, 57, 71, 66, 78, 54, 67, 73, 52, 60, 74, 69, 65, 54, 55, 99, 89, 82, 74, 60, 55, 75, 65, 56, 69, 72, 76, 64, 70, 67, 69, 58, 60, 67, 66, 67, 65, 70, 63, 64, 66, 53, 92, 65, 73, 55, 63, 51, 84, 71, 74, 63, 46, 77, 65, 62, 45, 71, 58, 57, 48, 67, 78, 71, 44, 72, 67, 56, 80, 61, 51, 65, 65, 115, 103, 69, 86, 60, 71, 71, 66, 73, 70, 55, 70, 71, 68, 67, 54, 56, 59, 78, 70, 64, 67, 65, 63, 84, 65, 50, 73, 73, 73, 55, 59, 74, 73, 63, 68, 78, 63, 85, 66, 52, 57, 62, 59, 56, 62, 54, 59, 62, 70, 80, 54, 61, 64, 101, 60, 67, 71, 70, 55, 60, 66, 53, 68, 48, 80, 44, 54, 48, 63, 58, 73, 78, 53, 70, 74, 76, 71, 58, 56, 61, 76, 64, 55, 69, 64, 49, 50, 58, 50, 42, 62, 63, 63, 74, 62, 66, 49, 63, 49, 81, 63, 81, 59, 59, 60, 60, 79, 80, 55, 90, 65, 62, 104, 60, 57, 66, 62, 67, 51, 54, 76, 62, 61, 91, 69, 65, 65, 62, 47, 67, 57, 99, 90, 64, 59, 59, 78, 62, 61, 64, 61, 72, 73, 90, 58, 71, 46, 66, 58, 70, 73, 56, 64, 82, 50, 48, 62, 58, 93, 84, 64, 58, 53, 50, 47, 80, 65, 64, 64, 71, 55, 88, 39, 65, 51, 74, 86, 64, 71, 54, 68, 70, 66, 71, 61, 59, 65, 61, 77, 70, 74, 95, 63, 50, 56, 36, 52, 54, 65, 72, 90, 52, 76, 60, 61, 63, 61, 59, 101, 61, 62, 69, 61, 51, 67, 76, 42, 74, 75, 81, 63, 163, 65, 64, 71, 64, 64, 76, 68, 60, 71, 58, 72, 66, 54, 75, 75, 57, 76, 56, 93, 59, 59, 70, 59, 59, 70, 68, 68, 64, 66, 73, 57, 57, 61, 75, 60, 71, 46, 61, 56, 73, 70, 75, 71, 65, 71, 64, 120, 67, 68, 69, 61, 60, 72, 70, 65, 58, 74, 83, 69, 63, 68, 68, 47, 60, 85, 63, 58, 48, 57, 83, 62, 58, 80, 58, 59, 69, 66, 57, 43, 60, 62, 70, 74, 79, 93, 80, 71, 56, 66, 61, 56, 64, 53, 75, 55, 71, 82, 63, 146, 65, 56, 71, 49, 69, 53, 65, 103, 55, 69, 66, 69, 48, 59, 69, 51, 51, 56, 68, 47, 55, 41, 61, 69, 73, 79, 58, 67, 74, 37, 63, 68, 60, 58, 60, 63, 51, 61, 62, 61, 59, 59, 64, 77, 70, 96, 58, 60, 56, 62, 65, 61, 77, 89, 77, 61, 65, 69, 61, 61, 81, 58, 61, 47, 58, 60, 85, 55, 57, 48, 50, 64, 70, 47, 63, 73, 69, 52, 53, 64, 46, 66, 60, 70, 63, 63, 65, 66, 55, 66, 62, 53, 67, 63, 129, 56, 73, 58, 61, 73, 61, 85, 59, 52, 61, 71, 54, 64, 89, 52, 54, 63, 64, 53, 69, 64, 59, 62, 67, 63, 65, 73, 50, 65, 54, 75, 65, 51, 58, 57, 56, 85, 59, 77, 64, 63, 74, 58, 53, 66, 57, 68, 68, 62, 69, 57, 58, 55, 69, 63, 61, 62, 64, 64, 70, 53, 60, 63, 82, 63, 70, 65, 71, 68, 63, 74, 63, 82, 61, 63, 69, 66, 47, 59, 58, 67, 68, 46, 72, 58, 74, 52, 72, 98, 55, 60, 70, 44, 59, 65, 75, 80, 75, 62, 58, 80, 63, 59, 63, 60, 57, 59, 86, 68, 65, 80, 84, 81, 67, 61, 70, 60, 62, 69, 66, 67, 67, 55, 60, 65, 60, 73, 52, 60, 78, 62, 67, 78, 51, 71, 77, 69, 48, 67, 72, 69, 54, 56, 79, 61, 61, 54, 62, 66, 67, 60, 72, 49, 68, 52, 68, 70, 75, 60, 58, 56, 81, 87, 63, 71, 69, 64, 88, 74, 61, 61, 74, 77, 63, 90, 57, 59, 100, 77, 53, 56, 68, 64, 64, 54, 77, 72, 68, 66, 52, 53, 95, 59, 64, 56, 54, 62, 67, 57, 60, 63, 60, 58, 62, 57, 59, 69, 75, 67, 55, 47, 45, 81, 58, 63, 89, 55, 49, 56, 60, 58, 82, 74, 58, 80, 54, 47, 60, 74, 61, 52, 73, 52, 54, 52, 63, 67, 51, 56, 67, 62, 58, 62, 54, 71, 81, 74, 73, 87, 64, 58, 59, 73, 88, 97, 69, 64, 73, 63, 64, 70, 62, 77, 71, 70, 53, 65, 58, 100, 54, 71, 60, 71, 54, 61, 50, 56, 90, 60, 59, 59, 65, 82, 53, 56, 58, 62, 78, 79, 56, 71, 60, 53, 66, 78, 100, 61, 58, 76, 65, 70, 55, 76, 66, 70, 61, 60, 81, 64, 60, 80, 59, 64, 60, 73, 52, 60, 56, 64, 62, 74, 62, 68, 59, 64, 62, 55, 65, 60, 66, 72, 58, 65, 56, 53, 59, 65, 61, 56, 66, 53, 67, 50, 80, 70, 80, 69, 69, 49, 63, 71, 56, 85, 60, 93, 64, 54, 62, 58, 65, 50, 64, 75, 71, 82, 59, 65, 62, 78, 54, 62, 61, 68, 63, 60, 61, 53, 62, 60, 72, 60, 74, 59, 101, 71, 59, 65, 65, 75, 44, 68, 71, 90, 64, 64, 66, 87, 55, 69, 71, 48, 58, 69, 61, 63, 80, 70, 58, 59, 53, 46, 78, 57, 55, 50, 68, 64, 60, 76, 54, 78, 58, 47, 63, 62, 62, 113, 65, 59, 67, 40, 46, 76, 53, 75, 80, 80, 62, 61, 80, 54, 56, 58, 60, 58, 56, 69, 42, 61, 53, 60, 70, 63, 72, 68, 49, 66, 61, 52, 79, 59, 75, 94, 45, 82, 70, 63, 44, 89, 44, 42, 77, 51, 65, 75, 68, 74, 76, 101, 68, 74, 93, 75, 68, 77, 53, 69, 55, 43, 76, 69, 68, 53, 58, 69, 59, 71, 63, 60, 68, 70, 57, 48, 65, 57, 59, 47, 68, 53, 56, 83, 83, 87, 59, 45, 67, 67, 92, 82, 61, 66, 69, 64, 59, 81, 52, 62, 116, 78, 138, 49, 49, 84, 59, 79, 51, 65, 63, 65, 68, 52, 63, 68, 49, 71, 69, 57, 35, 56, 93, 66, 76, 62, 55, 49, 64, 66, 67, 51, 76, 62, 59, 57, 79, 75, 61, 62, 64, 56, 62, 70, 94, 63, 72, 65, 53, 88, 44, 58, 60, 52, 79, 61, 50, 71, 53, 53, 55, 57, 62, 53, 76, 53, 53, 74, 72, 46, 50, 61, 55, 64, 87, 70, 70, 76, 52, 79, 110, 68, 74, 64, 77, 64, 75, 56, 59, 68, 53, 55, 57, 56, 52, 64, 75, 50, 47, 54, 54, 59, 73, 61, 69, 78, 46, 73, 57, 64, 56, 53, 61, 60, 44, 52, 65, 64, 72, 66, 82, 47, 54, 52, 57, 57, 77, 61, 61, 67, 53, 78, 60, 46, 82, 51, 67, 44, 69, 68, 85, 57, 77, 81, 44, 78, 52, 65, 53, 63, 59, 45, 87, 53, 71, 69, 74, 72, 91, 76, 68, 66, 62, 51, 62, 57, 42, 43, 60, 67, 52, 58, 47, 58, 62, 56, 65, 68, 67, 58, 73, 92, 70, 56, 59, 55, 55, 47, 59, 66, 71, 54, 77, 91, 55, 64, 71, 56, 62, 76, 54, 56, 54, 56, 74, 75, 67, 68, 65, 52, 48, 84, 97, 117, 61, 68, 69, 69, 76, 69, 54, 66, 84, 65, 63, 58, 67, 59, 60, 55, 75, 61, 64, 77, 70, 97, 72, 51, 51, 73, 71, 59, 65, 62, 63, 67, 60, 59, 71, 57, 45, 66, 76, 54, 66, 64, 64, 71, 66, 60, 44, 68, 60, 57, 76, 54, 72, 58, 57, 67, 69, 66, 68, 64, 47, 70, 103, 50, 74, 74, 74, 75, 63, 84, 60, 94, 63, 69, 72, 108, 61, 74, 52, 55, 71, 71, 76, 86, 68, 92, 64, 65, 170, 76, 58, 88, 52, 49, 50, 56, 65, 55, 56, 48, 90, 72, 65, 72, 58, 70, 66, 70, 60, 58, 63, 79, 56, 65, 71, 47, 65, 109, 84, 65, 65, 68, 77, 72, 55, 72, 54, 69, 48, 59, 52, 60, 66, 76, 67, 106, 59, 87, 61, 53, 47, 61, 56, 63, 46, 83, 60, 63, 82, 74, 62, 44, 59, 64, 74, 49, 85, 69, 78, 84, 49, 71, 55, 60, 45, 75, 71, 74, 78, 66, 46, 73, 70, 86, 75, 60, 46, 58, 61, 50, 55, 54, 49, 53, 65, 85, 94, 139, 72, 76, 69, 51, 53, 52, 48, 86, 40, 69, 75, 63, 61, 62, 45, 74, 76, 43, 62, 65, 73, 67, 64, 60, 68, 76, 60, 57, 71, 62, 91, 62, 68, 51, 69, 92, 62, 55, 59, 67, 54, 61, 73, 62, 84, 62, 69, 71, 65, 69, 56, 79, 62, 59, 103, 72, 57, 68, 69, 62, 80, 63, 71, 51, 61, 61, 53, 52, 57, 63, 82, 69, 69, 56, 59, 74, 75, 61, 77, 44, 68, 72, 78, 63, 51, 68, 67, 50, 62, 72, 67, 60, 69, 55, 135, 51, 53, 72, 53, 91, 76, 78, 79, 50, 74, 61, 92, 64, 59, 61, 61, 55, 62, 61, 50, 81, 59, 60, 52, 65, 59, 58, 55, 60, 60, 87, 64, 62, 66, 82, 78, 73, 55, 69, 69, 54, 52, 68, 82, 71, 60, 50, 63, 96, 74, 59, 96, 47, 51, 77, 61, 62, 48, 69, 74, 70, 61, 57, 72, 76, 68, 71, 56, 81, 56, 71, 66, 87, 54, 77, 74, 72, 58, 61, 62, 63, 49, 90, 68, 73, 66, 75, 69, 76, 62, 45, 57, 81, 52, 56, 66, 69, 84, 54, 67, 71, 65, 65, 71, 73, 90, 51, 61, 58, 71, 83, 78, 48, 62, 85, 67, 61, 58, 48, 61, 59, 71, 37, 75, 92, 62, 81, 63, 64, 65, 60, 65, 78, 65, 65, 62, 53, 69, 56, 67, 56, 55, 76, 66, 57, 67, 57, 61, 36, 54, 59, 66, 57, 73, 64, 66, 75, 79, 64, 85, 55, 93, 81, 41, 77, 62, 48, 75, 45, 75, 71, 41, 87, 77, 97, 75, 53, 113, 56, 73, 60, 57, 65, 81, 67, 72, 74, 64, 59, 71, 75, 66, 71, 66, 70, 60, 68, 59, 62, 67, 57, 70, 57, 58, 71, 60, 69, 53, 53, 78, 55, 58, 76, 54, 87, 88, 71, 50, 103, 58, 84, 50, 54, 81, 66, 79, 70, 63, 65, 51, 64, 57, 74, 82, 60, 74, 76, 63, 62, 59, 78, 60, 51, 53, 58, 70, 89, 64, 70, 41, 57, 57, 65, 58, 87, 54, 58, 56, 58, 54, 50, 63, 59, 69, 68, 78, 89, 49, 82, 65, 46, 58, 68, 59, 67, 78, 60, 97, 62, 51, 60, 51, 66, 79, 55, 64, 55, 96, 70, 55, 75, 53, 76, 62, 63, 89, 57, 74, 99, 71, 76, 69, 73, 53, 73, 63, 63, 67, 68, 70, 72, 53, 52, 73, 51, 60, 61, 63, 45, 56, 64, 63, 62, 61, 58, 67, 67, 56, 63, 74, 61, 74, 60, 64, 53, 72, 61, 60, 63, 69, 59, 85, 52, 89, 87, 91, 50, 72, 70, 54, 77, 54, 56, 62, 79, 69, 58, 78, 62, 57, 55, 47, 59, 71, 76, 74, 58, 52, 67, 67, 57, 52, 77, 64, 70, 59, 45, 64, 78, 61, 51, 74, 63, 91, 62, 63, 76, 64, 78, 68, 66, 65, 113, 76, 66, 72, 59, 58, 64, 80, 67, 67, 71, 76, 81, 52, 74, 52, 79, 67, 74, 51, 61, 63, 50, 56, 67, 67, 50, 58, 85, 63, 55, 57, 83, 65, 74, 58, 52, 55, 62, 78, 68, 53, 63, 74, 78, 62, 60, 52, 68, 65, 71, 70, 77, 68, 73, 61, 57, 62, 66, 55, 68, 75, 79, 65, 46, 65, 82, 73, 53, 77, 75, 57, 77, 50, 68, 39, 92, 62, 54, 76, 66, 66, 65, 52, 57, 77, 68, 74, 84, 62, 84, 63, 55, 50, 62, 84, 54, 80, 65, 44, 64, 66, 54, 71, 69, 51, 67, 61, 63, 65, 60, 58, 52, 61, 59, 51, 61, 77, 76, 80, 65, 53, 47, 54, 75, 82, 76, 80, 69, 71, 78, 60, 80, 47, 49, 118, 64, 142, 71, 62, 72, 68, 69, 70, 67, 59, 63, 60, 68, 91, 54, 57, 70, 79, 63, 70, 59, 100, 78, 58, 64, 64, 85, 89, 56, 57, 48, 71, 81, 64, 71, 68, 68, 58, 56, 49, 50, 76, 61, 84, 62, 64, 71, 64, 94, 53, 70, 55, 45, 71, 58, 75, 77, 63, 67, 74, 64, 76, 47, 70, 56, 69, 82, 63, 53, 75, 34, 55, 61, 55, 60, 55, 77, 56, 59, 120, 81, 54, 72, 61, 66, 57, 58, 64, 47, 49, 64, 46, 63, 68, 61, 64, 64, 69, 61, 60, 66, 62, 65, 45, 65, 53, 60, 76, 69, 61, 71, 68, 59, 58, 62, 88, 85, 73, 49, 61, 61, 50, 61, 55, 54, 66, 61, 65, 64, 68, 74, 60, 60, 87, 51, 63, 70, 76, 68, 73, 59, 53, 80, 53, 71, 71, 58, 56, 68, 81, 49, 95, 46, 68, 64, 84, 74, 83, 82, 64, 83, 57, 72, 75, 48, 72, 68, 65, 85, 62, 63, 54, 77, 74, 60, 49, 63, 69, 50, 86, 60, 65, 50, 73, 56, 65, 71, 72, 57, 87, 70, 69, 103, 53, 62, 67, 48, 80, 83, 65, 79, 67, 56, 79, 55, 51, 64, 70, 55, 67, 60, 102, 95, 69, 44, 57, 63, 77, 64, 60, 54, 79, 58, 83, 66, 67, 65, 62, 55, 82, 64, 66, 59, 92, 84, 66, 56, 80, 68, 66, 56, 51, 59, 49, 66, 50, 61, 61, 72, 59, 55, 94, 57, 52, 58, 64, 85, 54, 63, 78, 62, 56, 47, 62, 53, 106, 47, 43, 61, 58, 49, 96, 51, 67, 61, 112, 55, 54, 69, 71, 81, 66, 69, 62, 65, 68, 75, 63, 108, 64, 56, 63, 64, 61, 61, 61, 85, 78, 82, 66, 65, 176, 54, 49, 87, 67, 59, 61, 64, 54, 63, 56, 58, 74, 57, 64, 84, 55, 60, 66, 80, 56, 51, 58, 58, 56, 63, 67, 58, 47, 86, 73, 55, 47, 46, 53, 76, 58, 66, 54, 74, 74, 54, 62, 63, 65, 76, 58, 118, 54, 69, 66, 54, 53, 66, 65, 62, 63, 67, 86, 64, 60, 76, 58, 51, 67, 83, 49, 79, 64, 63, 78, 60, 72, 75, 59, 52, 53, 56, 57, 81, 80, 61, 60, 51, 69, 93, 68, 77, 73, 72, 50, 48, 51, 59, 71, 43, 73, 91, 86, 148, 74, 56, 57, 48, 67, 75, 63, 89, 64, 61, 73, 65, 66, 62, 55, 81, 81, 55, 80, 57, 57, 75, 62, 47, 65, 75, 54, 73, 73, 80, 50, 31, 51, 62, 56, 77, 64, 51, 66, 74, 53, 54, 64, 86, 54, 79, 54, 56, 71, 62, 63, 57, 79, 77, 72, 72, 57, 60, 73, 53, 83, 52, 62, 69, 52, 58, 64, 66, 59, 77, 56, 79, 50, 54, 67, 80, 77, 67, 69, 75, 66, 87, 71, 68, 63, 63, 67, 67, 48, 61, 76, 65, 58, 59, 139, 75, 77, 59, 56, 80, 86, 60, 57, 57, 78, 58, 66, 54, 95, 74, 62, 57, 64, 53, 64, 67, 55, 55, 53, 57, 44, 45, 65, 67, 63, 68, 60, 76, 49, 76, 82, 81, 53, 66, 67, 55, 68, 64, 51, 67, 59, 49, 75, 66, 81, 61, 45, 50, 67, 58, 72, 72, 64, 66, 72, 67, 59, 67, 71, 53, 53, 67, 67, 83, 71, 55, 57, 85, 63, 48, 72, 58, 59, 58, 45, 66, 62, 100, 70, 65, 63, 71, 63, 80, 52, 51, 76, 76, 66, 62, 67, 76, 94, 55, 61, 72, 51, 62, 75, 58, 54, 65, 76, 63, 70, 79, 75, 60, 69, 57, 53, 55, 64, 62, 77, 53, 52, 57, 60, 84, 77, 79, 52, 46, 83, 49, 75, 67, 58, 59, 65, 73, 70, 60, 66, 81, 54, 66, 58, 58, 59, 56, 55, 69, 56, 63, 65, 55, 59, 66, 67, 70, 63, 62, 75, 64, 95, 86, 60, 72, 62, 67, 83, 67, 63, 82, 69, 70, 68, 90, 63, 69, 112, 67, 56, 53, 63, 63, 61, 72, 58, 67, 73, 58, 55, 53, 86, 63, 56, 45, 64, 74, 64, 59, 53, 61, 63, 64, 56, 54, 47, 79, 82, 65, 57, 56, 65, 71, 54, 66, 80, 37, 53, 61, 59, 74, 43, 57, 62, 53, 66, 68, 59, 60, 54, 53, 54, 77, 69, 55, 66, 49, 55, 81, 74, 56, 56, 53, 79, 66, 74, 60, 69, 74, 60, 63, 66, 72, 71, 84, 53, 61, 65, 58, 62, 71, 70, 64, 64, 60, 58, 74, 66, 80, 78, 74, 73, 74, 65, 59, 61, 59, 97, 58, 59, 69, 47, 72, 58, 62, 67, 59, 104, 62, 59, 71, 53, 59, 61, 81, 95, 62, 66, 83, 75, 72, 60, 50, 52, 80, 48, 61, 83, 65, 70, 78, 57, 57, 65, 67, 58, 62, 62, 63, 55, 49, 51, 65, 70, 58, 74, 76, 47, 65, 55, 64, 57, 53, 50, 74, 56, 72, 56, 58, 61, 69, 75, 58, 77, 42, 87, 58, 65, 46, 71, 68, 62, 70, 69, 90, 64, 59, 76, 60, 57, 61, 53, 71, 60, 79, 79, 69, 69, 55, 60, 62, 70, 74, 58, 63, 67, 50, 55, 81, 72, 52, 63, 77, 101, 59, 54, 70, 73, 62, 90, 62, 58, 67, 47, 54, 53, 91, 68, 52, 57, 65, 60, 66, 44, 54, 58, 70, 83, 101, 68, 62, 64, 46, 51, 80, 59, 66, 55, 57, 72, 47, 57, 70, 73, 84, 62, 89, 48, 44, 69, 55, 60, 57, 55, 75, 64, 85, 47, 55, 63, 67, 54, 63, 58, 80, 65, 55, 70, 70, 60, 90, 86, 68, 75, 72, 67, 65, 67, 60, 63, 54, 79, 115, 64, 58, 74, 67, 66, 100, 67, 54, 70, 65, 60, 64, 70, 75, 77, 79, 45, 51, 68, 78, 58, 64, 79, 66, 66, 72, 72, 98, 75, 56, 102, 73, 66, 52, 63, 67, 68, 81, 69, 75, 64, 113, 95, 59, 71, 50, 58, 96, 67, 54, 61, 48, 65, 58, 52, 48, 50, 52, 55, 54, 59, 65, 48, 63, 116, 71, 144, 65, 63, 58, 49, 63, 44, 66, 76, 63, 67, 66, 60, 47, 53, 63, 70, 57, 69, 74, 74, 64, 70, 52, 53, 60, 61, 59, 54, 62, 63, 54, 80, 82, 88, 62, 81, 54, 53, 84, 50, 65, 79, 58, 62, 44, 62, 36, 53, 61, 65, 70, 69, 84, 65, 80, 72, 57, 62, 69, 65, 53, 61, 65, 57, 64, 63, 66, 55, 119, 66, 74, 75, 76, 56, 63, 61, 69, 114, 97, 64, 73, 74, 57, 60, 61, 57, 62, 64, 79, 59, 58, 54, 59, 56, 61, 67, 57, 55, 58, 71, 92, 56, 59, 65, 58, 57, 72, 66, 71, 73, 57, 61, 56, 81, 69, 72, 73, 61, 65, 62, 64, 65, 70, 63, 51, 71, 56, 54, 67, 69, 64, 89, 60, 64, 65, 84, 50, 59, 75, 82, 62, 78, 84, 57, 65, 81, 59, 50, 60, 94, 60, 77, 58, 73, 62, 65, 51, 55, 61, 80, 65, 47, 64, 66, 39, 67, 45, 70, 51, 65, 76, 57, 57, 62, 57, 54, 61, 73, 71, 56, 61, 51, 74, 66, 46, 67, 52, 98, 60, 72, 64, 66, 60, 92, 80, 63, 51, 62, 56, 58, 64, 80, 77, 66, 79, 65, 50, 59, 61, 96, 97, 71, 65, 73, 54, 52, 72, 55, 50, 58, 54, 74, 68, 55, 62, 57, 49, 87, 54, 61, 68, 102, 76, 55, 52, 61, 55, 71, 57, 78, 51, 76, 62, 73, 61, 68, 76, 84, 60, 89, 63, 66, 48, 56, 42, 59, 63, 67, 65, 64, 51, 90, 60, 61, 63, 80, 52, 99, 59, 63, 62, 64, 73, 62, 77, 74, 76, 88, 81, 58, 89, 56, 57, 53, 77, 66, 117, 66, 47, 73, 59, 52, 82, 62, 52, 69, 72, 115, 52, 145, 75, 49, 95, 64, 50, 67, 53, 52, 53, 46, 71, 74, 47, 49, 63, 50, 51, 67, 56, 62, 59, 53, 63, 79, 64, 56, 60, 65, 68, 102, 61, 60, 59, 58, 68, 68, 80, 60, 55, 74, 71, 55, 71, 50, 65, 64, 118, 70, 69, 66, 60, 65, 60, 67, 62, 50, 52, 62, 58, 50, 72, 55, 52, 73, 57, 40, 58, 77, 51, 65, 66, 69, 62, 61, 69, 61, 80, 64, 68, 68, 61, 78, 56, 55, 116, 58, 65, 67, 60, 71, 67, 66, 62, 52, 52, 59, 55, 110, 91, 57, 71, 69, 67, 64, 82, 68, 47, 57, 66, 57, 85, 48, 43, 65, 69, 58, 59, 80, 83, 67, 69, 61, 65, 51, 78, 66, 60, 67, 62, 41, 65, 73, 70, 69, 49, 56, 50, 68, 65, 68, 65, 67, 62, 67, 42, 58, 71, 67, 71, 56, 43, 67, 69, 111, 78, 62, 53, 65, 62, 72, 56, 67, 58, 55, 73, 60, 59, 56, 63, 81, 66, 70, 60, 88, 56, 61, 60, 77, 60, 74, 58, 88, 74, 52, 70, 56, 65, 75, 52, 68, 71, 69, 59, 132, 50, 49, 56, 67, 63, 73, 93, 69, 63, 58, 57, 75, 54, 47, 64, 74, 44, 68, 72, 59, 58, 70, 69, 71, 62, 69, 57, 60, 55, 52, 79, 64, 83, 56, 67, 70, 71, 55, 57, 70, 64, 70, 80, 70, 73, 83, 75, 77, 84, 91, 58, 48, 60, 55, 82, 72, 51, 47, 66, 77, 37, 61, 58, 58, 69, 61, 56, 53, 60, 63, 76, 98, 61, 67, 60, 54, 57, 59, 68, 78, 52, 61, 81, 77, 59, 62, 46, 45, 64, 52, 55, 68, 53, 78, 65, 51, 68, 75, 51, 62, 75, 54, 61, 61, 64, 80, 95, 74, 47, 52, 78, 57, 62, 70, 60, 63, 83, 68, 60, 66, 86, 79, 70, 56, 58, 86, 74, 86, 74, 53, 73, 77, 80, 75, 60, 59, 73, 54, 55, 59, 37, 63, 60, 45, 64, 67, 74, 55, 63, 57, 65, 63, 66, 64, 53, 71, 70, 79, 49, 53, 64, 86, 86, 65, 72, 69, 53, 84, 72, 55, 52, 70, 72, 62, 107, 94, 56, 74, 72, 64, 71, 79, 65, 64, 62, 59, 56, 57, 61, 85, 64, 99, 49, 64, 68, 59, 69, 64, 57, 73, 63, 55, 64, 62, 58, 77, 61, 54, 66, 56, 82, 76, 66, 87, 67, 70, 76, 62, 78, 66, 70, 65, 67, 62, 70, 68, 85, 59, 51, 44, 71, 57, 62, 68, 68, 70, 60, 110, 53, 71, 45, 42, 61, 63, 58, 70, 103, 63, 70, 69, 47, 65, 55, 64, 78, 63, 66, 65, 52, 54, 60, 72, 72, 54, 78, 65, 78, 60, 57, 84, 59, 57, 69, 63, 60, 51, 84, 79, 63, 59, 65, 60, 62, 72, 69, 48, 58, 70, 53, 67, 65, 56, 69, 74, 60, 91, 49, 71, 66, 72, 76, 51, 68, 67, 70, 68, 55, 56, 66, 52, 60, 57, 50, 57, 52, 55, 57, 73, 58, 62, 70, 71, 63, 56, 63, 86, 62, 79, 54, 49, 69, 76, 77, 75, 71, 71, 69, 54, 57, 66, 53, 93, 52, 91, 61, 91, 48, 53, 66, 86, 57, 70, 58, 80, 111, 55, 51, 72, 54, 56, 78, 48, 52, 66, 65, 65, 56, 64, 56, 52, 55, 54, 80, 64, 97, 61, 84, 74, 50, 49, 55, 68, 61, 82, 59, 67, 81, 71, 48, 67, 78, 77, 70, 65, 67, 55, 45, 63, 91, 65, 76, 81, 51, 66, 88, 63, 62, 77, 50, 60, 59, 63, 51, 70, 57, 59, 75, 70, 39, 76, 65, 60, 55, 58, 83, 79, 100, 63, 59, 86, 56, 65, 72, 55, 64, 69, 57, 57, 62, 81, 67, 49, 63, 61, 93, 68, 56, 59, 63, 63, 88, 76, 57, 55, 43, 57, 75, 83, 52, 92, 58, 66, 67, 57, 58, 69, 58, 64, 60, 76, 60, 57, 57, 68, 71, 59, 75, 82, 56, 57, 68, 58, 69, 61, 69, 58, 82, 98, 53, 63, 59, 58, 48, 50, 70, 63, 67, 81, 50, 56, 60, 62, 64, 64, 66, 73, 81, 78, 62, 69, 89, 83, 62, 65, 56, 63, 54, 66, 63, 56, 83, 61, 61, 57, 70, 68, 72, 134, 73, 120, 52, 58, 64, 85, 76, 63, 80, 99, 65, 58, 65, 62, 47, 59, 40, 67, 65, 73, 87, 60, 53, 111, 65, 75, 70, 61, 68, 61, 62, 74, 48, 66, 64, 75, 64, 43, 58, 71, 70, 49, 82, 86, 52, 52, 35, 65, 66, 51, 63, 55, 44, 60, 53, 58, 77, 61, 64, 70, 92, 71, 70, 50, 54, 76, 59, 68, 71, 66, 39, 58, 54, 61, 71, 58, 69, 78, 74, 94, 76, 76, 63, 69, 69, 80, 60, 63, 60, 69, 57, 47, 64, 58, 64, 64, 96, 70, 60, 64, 80, 70, 51, 57, 65, 51, 67, 56, 68, 54, 56, 74, 91, 51, 70, 38, 80, 68, 78, 66, 63, 50, 59, 51, 62, 80, 70, 58, 65, 57, 58, 68, 60, 89, 55, 74, 68, 55, 64, 81, 92, 66, 65, 73, 78, 60, 54, 56, 54, 72, 63, 98, 84, 88, 66, 52, 70, 58, 60, 43, 56, 75, 84, 59, 72, 54, 49, 64, 71, 83, 62, 54, 59, 101, 61, 68, 61, 71, 59, 76, 68, 54, 59, 59, 56, 65, 74, 49, 72, 85, 68, 84, 70, 66, 59, 52, 71, 72, 65, 73, 67, 63, 57, 66, 81, 62, 58, 57, 42, 69, 93, 85, 107, 63, 92, 63, 63, 48, 65, 59, 68, 89, 49, 60, 57, 48, 62, 85, 72, 84, 71, 55, 63, 108, 81, 68, 61, 53, 61, 52, 43, 59, 73, 63, 57, 66, 67, 65, 60, 65, 56, 80, 83, 64, 62, 63, 81, 63, 67, 77, 82, 68, 47, 63, 63, 61, 72, 66, 78, 91, 42, 63, 52, 61, 83, 133, 47, 56, 47, 94, 75, 65, 76, 49, 54, 68, 64, 63, 74, 66, 60, 62, 98, 67, 81, 58, 74, 48, 66, 72, 59, 65, 67, 65, 50, 47, 61, 66, 36, 46, 70, 63, 46, 89, 66, 73, 66, 69, 55, 72, 64, 75, 59, 61, 108, 53, 62, 64, 67, 67, 110, 86, 58, 63, 61, 95, 72, 62, 68, 81, 62, 80, 62, 82, 55, 62, 69, 93, 90, 77, 106, 58, 57, 64, 64, 68, 60, 66, 76, 82, 55, 73, 60, 60, 62, 86, 56, 70, 58, 68, 54, 83, 97, 63, 69, 55, 93, 48, 57, 69, 74, 71, 53, 51, 61, 74, 73, 58, 61, 53, 109, 60, 62, 61, 76, 63, 70, 70, 79, 46, 152, 61, 70, 58, 53, 55, 59, 57, 74, 56, 55, 63, 68, 80, 76, 59, 41, 63, 56, 66, 72, 60, 62, 72, 62, 74, 62, 61, 65, 79, 45, 44, 92, 91, 69, 60, 64, 76, 71, 76, 77, 63, 73, 80, 72, 105, 68, 56, 77, 58, 63, 71, 60, 78, 68, 104, 59, 94, 53, 64, 73, 57, 59, 60, 75, 51, 69, 58, 66, 66, 56, 59, 64, 49, 71, 69, 88, 86, 60, 64, 82, 78, 68, 65, 50, 69, 73, 52, 43, 79, 64, 42, 70, 66, 53, 106, 59, 73, 68, 61, 89, 73, 63, 58, 81, 56, 62, 89, 64, 68, 63, 70, 64, 75, 60, 75, 77, 55, 76, 62, 56, 58, 67, 58, 67, 56, 78, 63, 55, 72, 74, 65, 74, 66, 70, 77, 68, 76, 55, 51, 60, 79, 85, 68, 113, 59, 68, 57, 59, 53, 72, 66, 50, 73, 53, 64, 59, 65, 62, 57, 56, 68, 53, 55, 51, 64, 74, 77, 62, 70, 66, 50, 60, 61, 64, 88, 59, 72, 63, 60, 67, 59, 64, 52, 47, 61, 53, 72, 70, 55, 69, 71, 68, 82, 69, 76, 59, 81, 55, 84, 84, 95, 58, 61, 61, 72, 89, 67, 49, 84, 57, 47, 65, 78, 76, 53, 71, 79, 63, 59, 46, 53, 80, 65, 52, 65, 61, 77, 80, 71, 65, 51, 72, 56, 64, 54, 52, 62, 70, 46, 81, 64, 55, 59, 73, 63, 56, 80, 76, 54, 52, 67, 74, 45, 67, 60, 58, 53, 79, 64, 70, 57, 86, 67, 54, 71, 75, 65, 67, 55, 63, 59, 60, 108, 77, 73, 72, 67, 70, 65, 85, 59, 59, 51, 82, 73, 62, 45, 65, 68, 52, 78, 58, 54, 57, 56, 70, 57, 70, 57, 71, 73, 82, 55, 63, 58, 61, 68, 66, 60, 115, 56, 60, 67, 65, 59, 70, 69, 57, 46, 67, 92, 72, 60, 54, 63, 58, 56, 55, 75, 70, 64, 53, 74, 50, 69, 56, 58, 64, 54, 76, 60, 49, 66, 50, 115, 61, 47, 51, 62, 98, 68, 73, 64, 65, 59, 77, 56, 56, 45, 61, 67, 67, 66, 55, 67, 65, 57, 60, 70, 43, 56, 75, 104, 48, 68, 65, 59, 52, 64, 59, 61, 62, 125, 62, 54, 63, 66, 66, 61, 77, 82, 61, 67, 95, 52, 71, 57, 54, 96, 54, 62, 49, 62, 80, 60, 66, 61, 56, 68, 49, 58, 74, 54, 67, 65, 49, 62, 52, 75, 85, 65, 41, 42, 69, 70, 58, 42, 73, 81, 61, 58, 68, 71, 66, 79, 64, 56, 62, 71, 52, 99, 68, 75, 45, 56, 68, 67, 59, 90, 72, 57, 51, 67, 61, 72, 63, 69, 61, 52, 62, 97, 79, 58, 58, 53, 66, 63, 55, 67, 70, 88, 74, 77, 59, 70, 70, 96, 68, 56, 51, 69, 115, 67, 43, 73, 63, 80, 54, 66, 49, 56, 72, 66, 57, 74, 64, 80, 68, 62, 60, 75, 76, 46, 77, 50, 57, 57, 74, 73, 52, 77, 71, 67, 51, 67, 68, 58, 66, 67, 66, 85, 81, 59, 66, 65, 64, 70, 71, 85, 62, 63, 69, 66, 57, 78, 59, 38, 63, 77, 68, 57, 56, 55, 63, 68, 79, 67, 75, 65, 61, 51, 92, 81, 75, 73, 66, 65, 68, 61, 63, 73, 67, 60, 65, 64, 67, 72, 71, 66, 59, 77, 81, 49, 53, 77, 45, 65, 90, 74, 75, 51, 88, 87, 50, 36, 76, 63, 39, 60, 62, 57, 59, 60, 54, 66, 57, 57, 59, 70, 58, 64, 54, 62, 80, 67, 102, 121, 71, 70, 54, 62, 43, 60, 73, 72, 75, 57, 60, 54, 50, 52, 53, 139, 49, 156, 42, 67, 90, 72, 50, 67, 68, 96, 70, 62, 64, 73, 78, 69, 62, 59, 58, 64, 75, 65, 68, 107, 56, 54, 46, 73, 79, 63, 72, 80, 51, 100, 63, 70, 66, 66, 59, 58, 59, 48, 66, 116, 55, 59, 54, 64, 48, 68, 55, 52, 56, 71, 64, 78, 74, 65, 66, 69, 72, 54, 59, 67, 69, 61, 46, 60, 58, 55, 44, 57, 58, 57, 70, 70, 64, 60, 65, 109, 61, 46, 63, 77, 64, 47, 64, 61, 59, 50, 61, 62, 73, 40, 62, 69, 74, 86, 61, 77, 65, 72, 63, 57, 63, 52, 63, 58, 90, 63, 45, 76, 60, 63, 69, 77, 52, 61, 59, 66, 74, 60, 64, 61, 58, 66, 58, 84, 63, 53, 90, 76, 62, 77, 50, 60, 64, 35, 66, 51, 59, 77, 65, 74, 59, 50, 56, 48, 61, 59, 45, 61, 53, 70, 64, 51, 69, 65, 57, 78, 64, 70, 61, 55, 64, 51, 66, 62, 61, 60, 65, 54, 75, 75, 71, 58, 57, 69, 51, 54, 69, 76, 63, 67, 74, 64, 65, 60, 69, 96, 66, 103, 102, 60, 83, 60, 54, 61, 62, 76, 87, 64, 85, 68, 77, 54, 68, 76, 59, 65, 50, 105, 106, 76, 90, 65, 70, 57, 66, 48, 68, 89, 69, 71, 78, 57, 66, 48, 88, 84, 53, 58, 68, 111, 77, 57, 64, 61, 69, 57, 78, 53, 50, 53, 60, 56, 67, 48, 69, 75, 58, 82, 80, 79, 60, 49, 95, 63, 72, 61, 74, 63, 62, 54, 68, 61, 54, 49, 67, 46, 48, 98, 64, 71, 68, 119, 67, 51, 82, 76, 56, 74, 77, 44, 48, 75, 47, 55, 114, 72, 75, 69, 54, 53, 69, 74, 60, 53, 70, 89, 65, 84, 70, 74, 80, 55, 54, 64, 68, 52, 83, 58, 57, 62, 54, 50, 73, 85, 55, 66, 64, 64, 58, 85, 87, 49, 84, 60, 68, 67, 98, 87, 66, 60, 48, 87, 52, 49, 77, 71, 80, 75, 52, 86, 58, 67, 54, 46, 108, 57, 83, 66, 63, 55, 69, 60, 56, 57, 69, 90, 57, 78, 73, 59, 41, 64, 58, 63, 55, 71, 74, 73, 59, 69, 44, 73, 58, 59, 60, 64, 73, 50, 61, 51, 58, 98, 72, 64, 74, 74, 50, 75, 43, 66, 63, 89, 63, 56, 48, 80, 131, 62, 71, 55, 69, 60, 68, 59, 73, 86, 64, 49, 83, 72, 71, 69, 88, 60, 58, 72, 64, 54, 54, 55, 45, 87, 79, 82, 62, 66, 85, 42, 77, 85, 69, 66, 68, 84, 63, 62, 71, 41, 63, 73, 69, 78, 62, 69, 59, 46, 77, 65, 44, 50, 49, 92, 66, 78, 54, 66, 57, 58, 63, 62, 51, 72, 50, 69, 71, 53, 66, 61, 64, 60, 50, 61, 83, 67, 62, 60, 58, 62, 49, 68, 63, 78, 79, 53, 58, 55, 61, 85, 68, 61, 70, 136, 43, 64, 57, 50, 95, 70, 70, 50, 61, 66, 72, 58, 53, 80, 71, 74, 80, 72, 47, 61, 73, 62, 52, 70, 64, 66, 64, 72, 79, 60, 92, 56, 68, 60, 70, 52, 68, 54, 49, 81, 61, 76, 52, 59, 62, 60, 59, 93, 66, 53, 58, 51, 58, 42, 71, 45, 68, 51, 56, 65, 74, 71, 54, 51, 64, 70, 73, 76, 62, 71, 66, 82, 68, 68, 67, 54, 44, 58, 68, 42, 76, 70, 46, 76, 58, 48, 73, 62, 95, 65, 57, 68, 70, 79, 56, 49, 57, 88, 70, 60, 65, 69, 70, 77, 82, 80, 71, 64, 66, 70, 76, 43, 53, 46, 54, 55, 42, 63, 59, 40, 83, 67, 65, 66, 62, 66, 41, 61, 62, 71, 48, 72, 77, 53, 56, 64, 70, 81, 75, 53, 73, 55, 87, 72, 62, 58, 67, 53, 66, 63, 60, 67, 58, 57, 68, 71, 53, 79, 72, 80, 59, 69, 94, 66, 78, 60, 79, 66, 62, 48, 73, 60, 77, 67, 81, 67, 62, 118, 70, 71, 57, 61, 52, 82, 67, 76, 67, 65, 56, 70, 63, 52, 52, 67, 71, 55, 64, 67, 58, 79, 75, 63, 65, 68, 59, 71, 91, 58, 65, 51, 83, 72, 67, 63, 78, 85, 85, 62, 96, 63, 79, 59, 65, 67, 32, 95, 72, 81, 59, 70, 61, 58, 66, 70, 67, 56, 64, 53, 68, 73, 68, 61, 66, 73, 75, 62, 60, 65, 46, 80, 34, 51, 47, 68, 99, 76, 61, 65, 59, 71, 58, 50, 59, 40, 80, 67, 88, 44, 63, 70, 65, 56, 61, 79, 58, 66, 56, 80, 58, 86, 49, 73, 67, 58, 67, 64, 74, 105, 62, 58, 53, 50, 68, 60, 63, 60, 58, 51, 73, 64, 82, 66, 70, 65, 77, 57, 62, 52, 60, 67, 67, 91, 66, 55, 54, 69, 63, 60, 51, 65, 63, 55, 67, 59, 57, 65, 64, 53, 56, 73, 61, 60, 71, 76, 52, 87, 61, 71, 70, 80, 53, 69, 67, 78, 28, 95, 67, 83, 75, 56, 50, 54, 60, 80, 67, 73, 67, 80, 66, 66, 49, 55, 55, 58, 55, 94, 53, 63, 69, 65, 62, 59, 80, 67, 54, 80, 87, 79, 69, 54, 66, 58, 69, 67, 65, 57, 88, 55, 56, 91, 50, 64, 86, 69, 68, 73, 69, 68, 55, 53, 82, 51, 79, 60, 52, 52, 78, 69, 58, 38, 76, 85, 49, 68, 54, 55, 65, 70, 67, 75, 94, 68, 48, 60, 55, 56, 31, 62, 52, 54, 48, 56, 51, 60, 59, 79, 54, 59, 57, 86, 70, 66, 59, 65, 42, 62, 68, 63, 59, 55, 71, 39, 61, 53, 73, 53, 69, 72, 70, 40, 68, 71, 70, 58, 50, 94, 66, 51, 98, 64, 45, 65, 64, 59, 64, 50, 79, 90, 60, 71, 90, 59, 49, 84, 66, 53, 68, 64, 59, 99, 62, 71, 62, 79, 71, 39, 56, 54, 62, 65, 47, 57, 75, 56, 64, 98, 63, 57, 86, 46, 73, 89, 51, 75, 58, 64, 54, 76, 67, 104, 74, 55, 57, 73, 66, 57, 66, 103, 63, 79, 63, 71, 51, 68, 70, 50, 64, 52, 65, 54, 65, 61, 89, 57, 73, 57, 74, 65, 46, 67, 84, 61, 75, 76, 70, 69, 57, 67, 49, 72, 81, 58, 78, 96, 86, 62, 57, 71, 78, 44, 61, 115, 66, 85, 56, 72, 37, 105, 70, 80, 54, 68, 66, 59, 65, 49, 56, 69, 62, 61, 74, 63, 59, 77, 51, 50, 51, 50, 56, 71, 59, 62, 55, 74, 76, 54, 63, 129, 50, 75, 90, 54, 55, 55, 97, 64, 73, 61, 69, 48, 63, 59, 54, 60, 70, 53, 65, 54, 77, 57, 62, 62, 64, 80, 66, 58, 44, 65, 76, 40, 72, 59, 74, 79, 78, 66, 61, 69, 67, 59, 74, 61, 76, 62, 59, 69, 69, 62, 67, 85, 71, 66, 85, 52, 65, 62, 74, 66, 60, 69, 69, 56, 91, 80, 70, 55, 36, 45, 67, 60, 51, 62, 67, 72, 66, 73, 64, 38, 56, 71, 64, 72, 57, 66, 58, 97, 57, 59, 51, 44, 62, 46, 76, 71, 70, 64, 48, 50, 41, 60, 49, 50, 51, 71, 76, 70, 62, 81, 85, 42, 56, 58, 76, 45, 68, 63, 55, 63, 79, 46, 59, 77, 57, 54, 56, 60, 50, 53, 38, 67, 89, 97, 67, 69, 65, 77, 75, 63, 72, 42, 63, 63, 69, 53, 125, 47, 75, 77, 57, 59, 79, 111, 93, 42, 57, 41, 53, 76, 55, 71, 88, 58, 56, 55, 67, 87, 72, 52, 70, 49, 54, 55, 58, 66, 55, 44, 71, 81, 77, 53, 55, 81, 59, 54, 57, 64, 70, 63, 67, 62, 49, 51, 56, 58, 78, 56, 85, 66, 87, 70, 86, 56, 91, 49, 63, 99, 52, 67, 53, 63, 68, 64, 77, 64, 65, 59, 111, 69, 46, 53, 51, 71, 116, 81, 72, 66, 42, 51, 54, 72, 52, 63, 72, 50, 39, 68, 74, 70, 53, 60, 75, 62, 79, 88, 52, 48, 85, 57, 55, 137, 85, 58, 48, 54, 92, 65, 66, 86, 54, 61, 65, 79, 81, 60, 65, 68, 60, 71, 53, 52, 55, 56, 53, 48, 63, 68, 63, 70, 59, 72, 62, 67, 65, 69, 53, 52, 48, 64, 77, 69, 68, 76, 51, 54, 45, 68, 60, 50, 65, 55, 59, 59, 58, 88, 61, 57, 74, 58, 50, 66, 69, 60, 64, 51, 43, 103, 56, 107, 83, 75, 50, 79, 57, 71, 69, 59, 100, 75, 48, 46, 74, 94, 49, 62, 80, 65, 70, 66, 81, 72, 68, 60, 67, 43, 77, 51, 74, 60, 66, 108, 64, 86, 68, 67, 88, 72, 60, 67, 61, 71, 65, 67, 49, 70, 90, 46, 77, 95, 57, 43, 42, 58, 68, 82, 70, 70, 56, 90, 76, 47, 65, 57, 53, 54, 48, 63, 61, 55, 63, 70, 56, 47, 59, 75, 78, 45, 63, 56, 66, 72, 46, 82, 68, 50, 86, 65, 89, 105, 59, 103, 56, 56, 61, 115, 74, 71, 56, 66, 80, 63, 68, 56, 69, 59, 60, 69, 45, 67, 49, 79, 64, 86, 56, 68, 90, 67, 39, 53, 119, 49, 83, 69, 58, 56, 79, 60, 88, 96, 75, 69, 54, 57, 57, 64, 49, 69, 62, 64, 40, 56, 72, 66, 45, 72, 70, 85, 57, 44, 82, 99, 59, 65, 50, 65, 56, 65, 47, 90, 83, 60, 67, 51, 84, 57, 63, 70, 56, 64, 45, 49, 55, 77, 60, 66, 54, 53, 74, 55, 46, 63, 96, 74, 58, 79, 58, 64, 76, 99, 61, 76, 61, 102, 55, 69, 50, 59, 55, 66, 49, 65, 56, 77, 61, 72, 93, 55, 55, 62, 48, 81, 45, 68, 56, 73, 45, 76, 62, 86, 67, 72, 94, 69, 65, 56, 69, 50, 66, 48, 75, 84, 73, 58, 85, 73, 91, 62, 60, 62, 59, 77, 60, 53, 142, 53, 61, 50, 62, 74, 61, 57, 55, 60, 63, 59, 65, 50, 93, 65, 65, 58, 66, 65, 73, 44, 66, 74, 71, 68, 98, 52, 50, 130, 81, 47, 69, 43, 65, 60, 53, 56, 61, 69, 82, 55, 62, 63, 64, 54, 76, 56, 77, 108, 58, 48, 68, 74, 61, 66, 52, 57, 48, 46, 84, 32, 47, 87, 51, 74, 92, 61, 80, 68, 77, 79, 46, 60, 73, 59, 78, 82, 55, 71, 60, 83, 48, 52, 82, 69, 82, 42, 64, 79, 56, 82, 55, 45, 67, 70, 72, 83, 79, 54, 65, 58, 84, 45, 50, 47, 87, 70, 59, 65, 53, 51, 66, 66, 70, 86, 70, 58, 54, 89, 60, 79, 54, 76, 80, 84, 65, 57, 58, 81, 78, 63, 57, 81, 49, 50, 49, 61, 67, 69, 65, 53, 63, 53, 58, 59, 70, 142, 70, 56, 73, 53, 89, 80, 87, 58, 78, 88, 80, 71, 81, 70, 52, 67, 82, 52, 40, 63, 61, 113, 77, 59, 55, 57, 57, 48, 36, 53, 54, 52, 65, 63, 80, 96, 83, 51, 67, 102, 59, 46, 70, 75, 71, 91, 61, 68, 91, 122, 75, 66, 69, 57, 86, 57, 69, 75, 81, 72, 70, 45, 69, 74, 65, 49, 66, 81, 64, 62, 51, 54, 61, 74, 43, 56, 67, 61, 63, 72, 60, 55, 67, 63, 60, 67, 65, 62, 72, 71, 84, 55, 48, 70, 62, 46, 53, 79, 60, 64, 71, 65, 64, 59, 108, 64, 56, 66, 70, 105, 65, 60, 77, 50, 68, 80, 60, 56, 44, 69, 54, 61, 52, 62, 62, 62, 68, 56, 83, 76, 65, 54, 55, 93, 75, 70, 74, 56, 52, 54, 66, 87, 60, 94, 89, 66, 53, 50, 70, 59, 57, 90, 49, 48, 61, 67, 60, 60, 78, 79, 69, 48, 68, 63, 65, 58, 61, 48, 58, 66, 53, 88, 60, 57, 70, 66, 88, 61, 81, 46, 59, 59, 63, 53, 75, 78, 53, 44, 66, 50, 57, 119, 65, 63, 60, 47, 47, 41, 68, 66, 63, 93, 68, 52, 62, 63, 62, 74, 60, 73, 67, 76, 72, 57, 71, 94, 56, 54, 58, 59, 64, 59, 55, 65, 52, 61, 77, 69, 74, 48, 83, 65, 60, 55, 64, 62, 63, 74, 94, 60, 91, 50, 55, 63, 76, 87, 67, 60, 44, 73, 63, 86, 67, 60, 72, 41, 74, 52, 55, 76, 65, 58, 77, 68, 49, 51, 79, 84, 88, 66, 64, 53, 58, 96, 72, 95, 81, 59, 64, 52, 45, 64, 51, 58, 48, 90, 55, 62, 55, 81, 62, 83, 65, 64, 68, 58, 58, 57, 50, 52, 66, 87, 112, 63, 68, 62, 58, 60, 56, 63, 70, 109, 94, 60, 70, 77, 92, 71, 73, 64, 50, 71, 70, 62, 70, 53, 66, 61, 75, 75, 65, 67, 80, 77, 55, 56, 43, 71, 59, 73, 89, 53, 78, 72, 68, 57, 45, 56, 49, 52, 64, 47, 75, 55, 64, 64, 69, 50, 69, 71, 53, 52, 62, 65, 68, 58, 61, 64, 60, 70, 81, 71, 52, 91, 62, 82, 68, 65, 65, 46, 58, 68, 72, 57, 47, 69, 60, 51, 61, 73, 66, 50, 55, 64, 49, 53, 65, 47, 88, 92, 73, 63, 96, 51, 67, 55, 57, 67, 60, 72, 61, 61, 56, 64, 61, 65, 54, 55, 66, 54, 62, 65, 102, 56, 91, 64, 77, 74, 57, 77, 58, 63, 58, 63, 62, 107, 72, 76, 59, 54, 47, 67, 50, 63, 34, 82, 64, 59, 59, 104, 63, 61, 60, 55, 64, 104, 64, 51, 79, 52, 67, 90, 63, 70, 63, 125, 67, 53, 65, 72, 51, 65, 78, 56, 59, 60, 63, 71, 71, 62, 48, 53, 68, 69, 58, 39, 67, 99, 91, 81, 64, 85, 59, 85, 72, 47, 58, 64, 66, 61, 85, 81, 81, 71, 52, 81, 68, 58, 52, 49, 64, 61, 51, 61, 62, 97, 102, 71, 82, 53, 98, 60, 57, 63, 64, 55, 50, 71, 110, 83, 74, 80, 62, 61, 41, 73, 61, 58, 53, 65, 67, 72, 82, 62, 71, 58, 71, 102, 71, 79, 63, 73, 54, 62, 54, 84, 71, 45, 66, 60, 58, 69, 69, 79, 78, 63, 66, 61, 67, 53, 65, 66, 120, 53, 53, 49, 71, 66, 73, 112, 105, 71, 54, 70, 67, 48, 60, 60, 56, 71, 64, 75, 59, 71, 64, 54, 77, 52, 86, 63, 63, 63, 66, 50, 61, 71, 91, 66, 68, 43, 52, 65, 93, 60, 59, 52, 66, 67, 68, 91, 57, 62, 59, 66, 62, 62, 35, 59, 59, 72, 93, 90, 84, 61, 63, 55, 83, 62, 58, 64, 58, 78, 62, 50, 55, 37, 63, 76, 57, 69, 57, 64, 59, 71, 60, 51, 66, 64, 52, 66, 56, 58, 74, 64, 72, 74, 70, 93, 79, 97, 60, 69, 53, 60, 55, 68, 52, 58, 43, 60, 65, 51, 69, 62, 46, 98, 43, 57, 87, 78, 98, 68, 68, 61, 55, 61, 53, 63, 53, 75, 47, 42, 72, 64, 54, 62, 73, 63, 70, 71, 65, 62, 68, 64, 60, 61, 36, 77, 72, 63, 44, 59, 68, 139, 62, 68, 62, 67, 56, 75, 57, 74, 102, 44, 74, 83, 67, 70, 57, 60, 81, 63, 54, 80, 58, 62, 76, 67, 50, 41, 58, 60, 66, 52, 60, 59, 61, 77, 74, 70, 71, 64, 49, 66, 52, 51, 83, 57, 69, 63, 45, 54, 54, 60, 65, 72, 70, 66, 49, 68, 50, 64, 61, 63, 109, 62, 52, 68, 62, 59, 101, 82, 62, 74, 65, 52, 58, 71, 48, 70, 56, 74, 71, 88, 93, 54, 66, 76, 66, 65, 62, 78, 63, 66, 71, 53, 82, 49, 60, 79, 74, 70, 70, 61, 124, 88, 83, 76, 48, 59, 60, 100, 64, 59, 59, 62, 68, 71, 65, 61, 59, 107, 65, 60, 72, 53, 40, 55, 70, 60, 71, 72, 59, 74, 64, 69, 57, 59, 80, 62, 79, 84, 55, 54, 52, 55, 72, 65, 49, 74, 56, 49, 80, 66, 58, 48, 72, 73, 61, 50, 53, 70, 54, 70, 57, 85, 56, 61, 66, 73, 75, 54, 55, 76, 122, 62, 67, 84, 71, 80, 71, 57, 72, 68, 71, 57, 79, 69, 76, 71, 53, 81, 74, 59, 73, 58, 52, 66, 56, 71, 69, 64, 56, 58, 57, 58, 70, 51, 54, 82, 65, 61, 66, 75, 64, 79, 58, 60, 58, 73, 54, 50, 93, 55, 103, 103, 65, 55, 37, 51, 73, 60, 62, 56, 55, 62, 49, 129, 77, 60, 73, 54, 60, 61, 72, 73, 61, 48, 64, 65, 67, 62, 52, 86, 131, 73, 132, 75, 57, 64, 67, 76, 74, 73, 84, 57, 46, 47, 78, 51, 60, 66, 59, 71, 68, 64, 72, 68, 50, 64, 58, 58, 59, 61, 63, 78, 69, 65, 55, 65, 49, 52, 64, 64, 74, 51, 39, 70, 55, 72, 64, 57, 75, 57, 58, 81, 58, 62, 50, 63, 54, 52, 78, 98, 60, 61, 72, 78, 69, 79, 55, 65, 44, 56, 64, 84, 69, 57, 51, 71, 48, 65, 64, 66, 55, 77, 64, 64, 70, 47, 54, 60, 61, 61, 55, 61, 68, 81, 73, 83, 61, 111, 52, 69, 75, 68, 64, 58, 92, 54, 61, 59, 64, 70, 52, 65, 76, 75, 67, 65, 58, 86, 65, 56, 59, 71, 53, 73, 54, 66, 62, 81, 79, 85, 60, 52, 75, 65, 60, 54, 61, 55, 57, 74, 117, 50, 72, 80, 61, 57, 77, 71, 83, 71, 75, 78, 41, 63, 66, 66, 64, 71, 52, 88, 61, 62, 60, 81, 61, 60, 63, 79, 67, 56, 53, 54, 65, 61, 74, 60, 65, 60, 93, 88, 54, 49, 71, 76, 62, 62, 58, 40, 89, 60, 51, 58, 57, 54, 59, 63, 83, 64, 67, 71, 60, 66, 57, 80, 75, 62, 87, 69, 72, 71, 133, 67, 67, 54, 69, 96, 76, 73, 57, 56, 51, 57, 72, 61, 54, 68, 79, 69, 56, 66, 54, 55, 80, 70, 67, 58, 36, 75, 47, 57, 64, 67, 76, 56, 52, 71, 67, 57, 78, 71, 80, 55, 108, 89, 98, 57, 60, 56, 101, 56, 67, 69, 66, 106, 62, 64, 51, 61, 54, 63, 70, 64, 66, 56, 70, 47, 66, 59, 59, 72, 66, 76, 55, 58, 74, 74, 90, 77, 53, 68, 65, 62, 67, 59, 64, 74, 84, 61, 98, 79, 63, 70, 66, 84, 58, 48, 71, 82, 78, 69, 62, 54, 65, 60, 55, 59, 65, 82, 71, 69, 63, 61, 59, 70, 57, 69, 92, 69, 64, 71, 119, 72, 48, 66, 52, 64, 68, 50, 71, 62, 62, 83, 51, 59, 68, 97, 57, 41, 58, 59, 112, 62, 62, 60, 59, 54, 97, 74, 73, 68, 55, 74, 54, 57, 77, 68, 73, 64, 64, 68, 67, 61, 53, 69, 85, 67, 59, 82, 73, 70, 69, 66, 66, 80, 93, 70, 51, 69, 50, 103, 51, 79, 59, 65, 59, 69, 49, 51, 71, 66, 122, 55, 54, 65, 46, 57, 77, 107, 56, 52, 51, 69, 57, 63, 61, 55, 50, 82, 76, 57, 49, 63, 64, 67, 64, 84, 56, 57, 67, 75, 78, 60, 57, 69, 58, 55, 50, 69, 54, 78, 60, 80, 63, 58, 69, 59, 67, 49, 72, 89, 66, 69, 41, 82, 51, 81, 73, 65, 62, 65, 71, 62, 100, 79, 74, 44, 56, 47, 50, 57, 81, 61, 72, 59, 57, 67, 73, 53, 54, 62, 88, 54, 56, 67, 69, 71, 60, 53, 63, 52, 108, 61, 73, 56, 59, 82, 70, 56, 63, 73, 70, 58, 52, 47, 66, 57, 58, 69, 70, 58, 45, 68, 68, 74, 66, 55, 95, 89, 62, 73, 53, 55, 60, 50, 94, 65, 61, 78, 73, 93, 74, 64, 89, 68, 142, 57, 70, 58, 61, 66, 70, 75, 55, 87, 66, 75, 58, 58, 80, 66, 78, 75, 72, 72, 63, 73, 51, 55, 71, 60, 70, 66, 77, 76, 93, 80, 76, 73, 67, 74, 64, 62, 56, 69, 45, 67, 53, 71, 74, 89, 46, 69, 75, 86, 95, 56, 42, 69, 65, 54, 51, 81, 92, 58, 47, 56, 81, 94, 76, 66, 59, 67, 70, 61, 59, 68, 62, 45, 67, 36, 67, 49, 63, 115, 132, 73, 49, 79, 51, 57, 66, 82, 65, 65, 56, 71, 45, 72, 66, 51, 47, 61, 76, 64, 58, 90, 74, 65, 50, 60, 74, 67, 60, 65, 62, 55, 62, 83, 59, 51, 62, 75, 43, 60, 66, 64, 57, 48, 57, 72, 43, 65, 64, 70, 68, 65, 68, 68, 60, 82, 55, 57, 60, 65, 86, 60, 72, 64, 66, 51, 58, 90, 59, 54, 103, 73, 60, 63, 68, 60, 87, 38, 102, 74, 69, 70, 46, 51, 73, 77, 63, 61, 65, 53, 75, 52, 70, 60, 60, 53, 59, 129, 53, 93, 62, 62, 63, 57, 64, 56, 64, 67, 78, 82, 75, 53, 73, 67, 55, 52, 76, 57, 55, 66, 55, 64, 90, 66, 62, 78, 58, 62, 62, 53, 74, 72, 75, 58, 61, 64, 67, 54, 71, 66, 56, 51, 80, 75, 69, 57, 64, 65, 60, 60, 66, 76, 63, 63, 55, 66, 65, 50, 92, 78, 60, 56, 84, 57, 57, 55, 60, 56, 59, 69, 80, 74, 71, 67, 80, 67, 59, 65, 84, 79, 58, 75, 80, 67, 56, 70, 69, 67, 71, 55, 68, 83, 90, 74, 57, 63, 48, 60, 77, 61, 84, 71, 34, 51, 52, 64, 56, 80, 60, 71, 64, 56, 59, 58, 64, 103, 64, 46, 59, 57, 82, 59, 55, 73, 49, 73, 73, 55, 79, 95, 63, 77, 65, 59, 61, 57, 63, 60, 60, 61, 65, 54, 60, 70, 53, 66, 67, 90, 61, 54, 54, 95, 55, 94, 58, 55, 46, 113, 62, 57, 57, 62, 73, 71, 66, 59, 54, 64, 72, 79, 60, 75, 60, 72, 67, 75, 76, 70, 75, 50, 51, 61, 58, 57, 50, 67, 73, 58, 86, 71, 60, 58, 65, 50, 65, 62, 67, 72, 50, 60, 67, 55, 85, 66, 80, 73, 54, 61, 64, 73, 73, 79, 71, 74, 83, 64, 66, 66, 67, 76, 79, 78, 67, 63, 69, 89, 62, 54, 55, 68, 58, 66, 60, 66, 55, 58, 73, 47, 59, 63, 71, 73, 72, 66, 57, 53, 78, 56, 49, 62, 62, 68, 69, 63, 103, 86, 72, 88, 85, 75, 87, 61, 65, 66, 72, 64, 86, 75, 57, 53, 74, 80, 62, 56, 52, 63, 48, 59, 55, 52, 85, 75, 60, 58, 57, 67, 60, 79, 54, 68, 87, 70, 72, 70, 63, 56, 63, 67, 82, 63, 55, 71, 72, 76, 87, 48, 58, 65, 58, 57, 80, 52, 62, 64, 69, 59, 49, 58, 72, 56, 61, 55, 81, 68, 79, 59, 55, 66, 54, 73, 68, 53, 71, 65, 78, 66, 60, 60, 61, 51, 62, 65, 107, 55, 53, 63, 52, 60, 79, 59, 78, 76, 81, 83, 64, 68, 71, 68, 65, 67, 67, 66, 79, 58, 95, 69, 45, 56, 60, 75, 41, 57, 59, 66, 58, 57, 72, 65, 56, 68, 96, 63, 50, 68, 59, 74, 93, 52, 53, 59, 64, 72, 63, 64, 42, 104, 77, 61, 55, 81, 68, 57, 61, 64, 64, 67, 79, 63, 75, 46, 67, 66, 63, 62, 53, 51, 72, 68, 74, 78, 67, 65, 74, 67, 69, 64, 52, 58, 64, 66, 60, 43, 68, 59, 66, 62, 91, 63, 73, 81, 64, 53, 51, 66, 69, 80, 90, 56, 55, 54, 61, 60, 74, 101, 48, 63, 91, 86, 68, 88, 69, 54, 71, 72, 60, 52, 61, 60, 60, 39, 48, 55, 59, 75, 49, 55, 60, 50, 48, 39, 54, 57, 66, 56, 59, 66, 89, 85, 111, 70, 52, 85, 56, 63, 51, 45, 67, 73, 82, 59, 63, 60, 69, 51, 64, 53, 70, 53, 76, 63, 78, 75, 58, 77, 55, 49, 90, 73, 75, 59, 80, 60, 69, 60, 62, 81, 80, 57, 87, 71, 65, 54, 61, 57, 54, 50, 63, 63, 57, 63, 51, 96, 105, 97, 55, 69, 104, 70, 59, 73, 75, 68, 76, 90, 49, 66, 66, 55, 64, 63, 63, 77, 80, 59, 60, 57, 54, 61, 69, 68, 80, 62, 60, 46, 53, 67, 64, 76, 71, 51, 58, 78, 94, 47, 71, 59, 99, 55, 74, 49, 95, 58, 59, 77, 79, 47, 93, 71, 53, 55, 66, 60, 58, 55, 53, 63, 58, 76, 56, 44, 92, 52, 54, 79, 83, 70, 67, 59, 67, 66, 61, 78, 50, 65, 66, 68, 76, 73, 64, 51, 99, 66, 58, 72, 66, 59, 77, 57, 61, 54, 104, 63, 57, 68, 52, 60, 56, 83, 57, 60, 59, 90, 62, 59, 70, 72, 59, 47, 60, 48, 120, 59, 58, 59, 61, 61, 91, 55, 104, 55, 61, 58, 63, 58, 78, 61, 95, 72, 59, 64, 62, 60, 48, 61, 95, 68, 58, 69, 70, 61, 53, 63, 59, 55, 92, 43, 49, 58, 58, 109, 53, 54, 103, 64, 61, 72, 53, 48, 60, 70, 46, 51, 59, 61, 72, 52, 48, 76, 75, 52, 52, 76, 49, 61, 48, 66, 60, 79, 58, 53, 55, 56, 56, 67, 54, 78, 66, 59, 63, 78, 55, 51, 60, 51, 59, 57, 77, 57, 72, 66, 59, 91, 65, 64, 59, 59, 70, 53, 61, 50, 67, 83, 52, 73, 93, 58, 80, 61, 64, 64, 69, 92, 79, 57, 65, 56, 66, 70, 63, 63, 74, 96, 56, 77, 85, 65, 76, 68, 61, 52, 68, 64, 51, 57, 50, 59, 50, 63, 77, 55, 138, 63, 88, 56, 107, 56, 57, 49, 54, 52, 50, 50, 56, 61, 61, 71, 50, 71, 55, 58, 60, 75, 80, 63, 73, 93, 75, 116, 73, 64, 73, 51, 80, 62, 74, 48, 58, 68, 67, 58, 61, 75, 69, 75, 120, 63, 58, 62, 67, 55, 81, 51, 57, 57, 53, 40, 67, 85, 62, 55, 65, 56, 64, 88, 77, 60, 81, 80, 49, 68, 55, 54, 76, 76, 65, 99, 71, 57, 61, 83, 59, 58, 53, 77, 89, 51, 68, 68, 83, 68, 53, 60, 56, 82, 100, 56, 90, 72, 90, 65, 90, 67, 102, 61, 66, 47, 67, 86, 84, 72, 72, 66, 78, 83, 66, 77, 61, 76, 58, 51, 77, 63, 62, 116, 139, 59, 50, 87, 69, 61, 77, 78, 63, 69, 69, 67, 74, 57, 63, 48, 63, 51, 103, 80, 62, 67, 70, 62, 57, 78, 66, 70, 61, 61, 55, 56, 77, 56, 70, 86, 70, 81, 51, 53, 45, 72, 66, 65, 59, 58, 51, 69, 52, 69, 64, 60, 58, 63, 56, 63, 50, 61, 71, 66, 73, 56, 66, 69, 72, 47, 48, 89, 64, 50, 51, 59, 49, 68, 51, 61, 41, 50, 79, 106, 81, 72, 75, 57, 57, 61, 45, 68, 50, 72, 102, 85, 84, 36, 63, 54, 98, 124, 72, 60, 52, 80, 51, 88, 68, 67, 64, 56, 79, 51, 57, 64, 57, 67, 65, 58, 69, 62, 66, 78, 59, 67, 70, 56, 56, 82, 67, 73, 53, 48, 56, 63, 76, 55, 93, 54, 68, 71, 73, 60, 63, 70, 51, 56, 62, 60, 60, 75, 59, 56, 42, 57, 56, 50, 61, 54, 55, 55, 75, 58, 57, 65, 62, 54, 72, 51, 51, 63, 61, 67, 56, 71, 76, 44, 84, 67, 57, 70, 82, 61, 67, 79, 62, 61, 71, 57, 76, 68, 76, 58, 50, 71, 61, 76, 55, 64, 80, 56, 69, 39, 56, 49, 67, 70, 59, 82, 84, 51, 51, 81, 64, 65, 79, 51, 53, 58, 60, 77, 40, 58, 71, 73, 53, 62, 65, 94, 91, 50, 89, 66, 55, 63, 68, 52, 62, 60, 58, 66, 61, 67, 62, 59, 57, 72, 63, 72, 69, 96, 59, 54, 83, 80, 88, 95, 69, 62, 66, 60, 53, 52, 50, 56, 64, 68, 78, 55, 65, 47, 64, 58, 69, 60, 60, 79, 64, 111, 86, 97, 64, 76, 57, 49, 58, 61, 73, 44, 53, 72, 90, 66, 51, 70, 55, 62, 62, 48, 72, 63, 56, 65, 67, 63, 49, 77, 81, 59, 54, 63, 72, 56, 62, 63, 66, 50, 52, 55, 65, 68, 55, 80, 85, 76, 79, 69, 70, 64, 88, 66, 60, 57, 64, 49, 55, 68, 63, 60, 65, 59, 60, 73, 65, 61, 83, 67, 85, 56, 88, 44, 61, 71, 58, 57, 58, 66, 114, 62, 54, 74, 74, 67, 95, 72, 68, 47, 94, 75, 71, 49, 59, 68, 90, 84, 65, 53, 65, 74, 70, 52, 59, 75, 94, 65, 56, 53, 68, 82, 76, 75, 60, 51, 65, 90, 50, 64, 56, 55, 44, 69, 71, 102, 65, 51, 62, 63, 64, 73, 67, 57, 76, 63, 90, 59, 61, 58, 60, 54, 84, 59, 83, 61, 58, 64, 74, 85, 79, 54, 58, 65, 57, 75, 66, 70, 67, 62, 69, 84, 59, 58, 55, 68, 97, 59, 76, 55, 58, 64, 84, 51, 73, 55, 62, 80, 60, 69, 75, 57, 62, 70, 62, 53, 69, 58, 70, 53, 69, 48, 60, 51, 66, 57, 70, 57, 54, 41, 56, 55, 48, 67, 90, 66, 92, 90, 64, 78, 58, 69, 80, 61, 64, 52, 60, 92, 55, 64, 56, 73, 74, 57, 65, 55, 52, 58, 68, 55, 73, 70, 62, 63, 56, 58, 53, 58, 60, 53, 59, 51, 65, 64, 89, 75, 111, 58, 68, 61, 52, 58, 44, 78, 48, 54, 80, 49, 59, 55, 51, 58, 71, 55, 72, 83, 77, 64, 62, 54, 74, 54, 54, 66, 54, 63, 61, 59, 83, 77, 52, 58, 99, 59, 65, 78, 53, 63, 52, 56, 73, 69, 47, 80, 65, 57, 76, 74, 78, 82, 60, 72, 53, 90, 72, 58, 63, 64, 58, 72, 83, 60, 65, 59, 125, 91, 59, 78, 65, 70, 63, 48, 64, 83, 66, 53, 59, 60, 65, 52, 61, 55, 78, 78, 55, 57, 65, 61, 52, 70, 42, 66, 82, 91, 68, 51, 62, 69, 59, 82, 49, 105, 58, 72, 67, 68, 51, 78, 52, 52, 63, 81, 92, 63, 54, 88, 56, 69, 77, 54, 65, 84, 105, 68, 60, 79, 87, 61, 77, 62, 75, 60, 46, 58, 65, 54, 78, 70, 75, 64, 59, 86, 48, 53, 58, 71, 80, 59, 62, 101, 60, 76, 65, 74, 96, 60, 71, 59, 73, 74, 60, 58, 55, 61, 71, 67, 72, 83, 53, 63, 57, 61, 74, 72, 57, 68, 81, 32, 60, 64, 63, 67, 62, 64, 86, 62, 61, 52, 73, 98, 68, 55, 69, 62, 74, 79, 43, 81, 61, 81, 66, 77, 64, 74, 57, 68, 59, 65, 63, 82, 79, 66, 68, 74, 77, 69, 104, 55, 60, 70, 61, 64, 59, 64, 72, 56, 88, 63, 77, 56, 73, 69, 65, 47, 71, 76, 95, 65, 63, 53, 89, 53, 100, 62, 69, 49, 54, 63, 57, 62, 76, 82, 50, 80, 63, 72, 47, 58, 59, 87, 108, 74, 47, 59, 82, 51, 66, 58, 76, 65, 68, 71, 79, 57, 41, 103, 64, 57, 90, 59, 52, 63, 55, 73, 70, 74, 53, 54, 53, 72, 61, 73, 51, 88, 63, 59, 60, 75, 56, 83, 59, 51, 51, 60, 52, 75, 53, 61, 67, 61, 61, 63, 62, 66, 58, 89, 71, 59, 67, 58, 69, 63, 60, 57, 45, 86, 60, 63, 74, 64, 57, 77, 51, 65, 67, 111, 71, 61, 77, 72, 56, 74, 85, 62, 72, 66, 59, 79, 44, 111, 56, 59, 58, 62, 64, 51, 76, 70, 60, 83, 80, 66, 66, 69, 62, 79, 103, 58, 73, 65, 57, 62, 58, 59, 76, 53, 93, 65, 86, 94, 63, 73, 58, 43, 61, 56, 71, 50, 65, 61, 58, 69, 84, 61, 59, 55, 54, 53, 78, 59, 67, 72, 69, 113, 76, 65, 66, 46, 58, 55, 74, 71, 61, 55, 70, 62, 52, 53, 52, 50, 119, 57, 49, 52, 80, 52, 78, 91, 76, 60, 53, 71, 56, 64, 56, 53, 77, 58, 59, 60, 79, 75, 62, 70, 74, 80, 51, 59, 60, 79, 59, 69, 59, 62, 70, 68, 66, 59, 45, 82, 88, 61, 59, 59, 49, 82, 67, 78, 63, 82, 49, 66, 64, 57, 69, 53, 64, 82, 89, 63, 70, 63, 69, 66, 94, 69, 55, 42, 71, 63, 63, 56, 56, 64, 57, 53, 71, 77, 61, 107, 116, 70, 75, 47, 68, 65, 53, 66, 57, 55, 79, 81, 52, 55, 63, 60, 68, 54, 84, 61, 58, 75, 72, 51, 68, 51, 59, 50, 62, 83, 65, 62, 67, 81, 59, 81, 49, 71, 66, 59, 56, 64, 66, 69, 67, 49, 57, 59, 52, 47, 58, 66, 81, 66, 59, 48, 70, 82, 52, 53, 43, 64, 50, 76, 73, 90, 74, 71, 88, 37, 54, 68, 53, 64, 70, 51, 71, 55, 92, 84, 54, 58, 65, 56, 61, 59, 70, 57, 63, 70, 71, 66, 70, 58, 56, 63, 73, 125, 70, 50, 84, 61, 59, 63, 68, 43, 52, 76, 83, 108, 57, 50, 54, 85, 54, 55, 76, 94, 76, 66, 64, 77, 69, 75, 43, 85, 64, 54, 69, 63, 68, 62, 123, 63, 55, 57, 74, 56, 54, 68, 61, 58, 60, 71, 56, 55, 60, 61, 55, 71, 76, 45, 67, 89, 58, 65, 61, 70, 118, 78, 68, 62, 58, 61, 77, 40, 90, 80, 72, 91, 35, 64, 59, 64, 84, 83, 65, 61, 69, 52, 58, 76, 52, 62, 66, 69, 80, 68, 85, 67, 70, 69, 72, 57, 61, 41, 66, 70, 91, 70, 51, 54, 64, 57, 62, 68, 65, 63, 59, 97, 73, 68, 77, 51, 60, 76, 50, 92, 74, 58, 61, 68, 66, 56, 63, 88, 74, 89, 107, 72, 64, 79, 81, 67, 55, 50, 71, 54, 65, 69, 85, 60, 64, 78, 71, 46, 72, 90, 59, 87, 55, 76, 70, 91, 67, 68, 81, 66, 60, 75, 69, 75, 83, 58, 55, 62, 61, 66, 63, 60, 71, 61, 55, 78, 59, 80, 85, 56, 44, 59, 71, 58, 55, 68, 60, 86, 61, 53, 70, 72, 59, 58, 74, 60, 70, 59, 51, 91, 52, 55, 72, 70, 54, 57, 70, 69, 50, 65, 37, 58, 58, 68, 68, 89, 87, 54, 75, 60, 48, 60, 69, 60, 59, 70, 62, 48, 60, 51, 74, 54, 45, 64, 63, 36, 88, 55, 54, 63, 52, 64, 66, 61, 93, 61, 83, 86, 66, 54, 53, 93, 60, 50, 64, 70, 85, 60, 53, 65, 57, 59, 71, 47, 80, 72, 48, 84, 62, 79, 53, 60, 71, 80, 62, 57, 54, 68, 53, 66, 61, 59, 65, 68, 72, 46, 80, 78, 64, 71, 80, 38, 81, 72, 44, 63, 82, 72, 62, 64, 67, 111, 71, 54, 65, 61, 66, 51, 55, 50, 54, 54, 86, 88, 62, 61, 78, 58, 52, 85, 54, 56, 53, 48, 56, 95, 63, 54, 64, 61, 87, 65, 53, 43, 52, 53, 48, 60, 59, 63, 61, 49, 68, 58, 84, 63, 59, 55, 75, 49, 53, 69, 55, 58, 51, 65, 60, 80, 69, 64, 81, 81, 66, 53, 67, 84, 60, 68, 58, 70, 58, 62, 74, 63, 52, 57, 64, 59, 68, 58, 104, 48, 84, 61, 62, 64, 70, 63, 74, 69, 58, 50, 49, 51, 59, 67, 75, 83, 63, 74, 80, 78, 69, 72, 64, 66, 75, 50, 74, 61, 77, 59, 47, 38, 78, 72, 63, 44, 59, 54, 90, 50, 56, 56, 70, 88, 56, 67, 57, 55, 69, 67, 50, 53, 63, 72, 56, 61, 75, 66, 68, 64, 70, 63, 76, 54, 85, 61, 55, 67, 60, 60, 60, 61, 66, 73, 44, 65, 71, 64, 57, 51, 100, 58, 79, 53, 50, 61, 53, 71, 68, 75, 59, 58, 57, 94, 58, 56, 69, 102, 62, 56, 56, 72, 39, 65, 77, 60, 63, 55, 107, 85, 65, 57, 48, 73, 67, 64, 62, 78, 66, 52, 55, 55, 45, 72, 70, 67, 70, 53, 64, 62, 66, 60, 49, 81, 65, 58, 98, 72, 70, 68, 104, 54, 70, 60, 71, 77, 81, 87, 69, 68, 55, 66, 70, 70, 50, 59, 64, 59, 60, 79, 65, 62, 86, 66, 55, 77, 51, 51, 61, 75, 54, 64, 97, 70, 63, 62, 67, 61, 75, 60, 62, 48, 71, 73, 53, 67, 71, 75, 78, 59, 58, 73, 70, 101, 56, 77, 68, 64, 76, 57, 65, 64, 65, 53, 69, 59, 64, 68, 57, 64, 68, 62, 66, 60, 80, 65, 69, 73, 52, 51, 63, 73, 67, 57, 75, 70, 71, 68, 87, 57, 74, 46, 82, 94, 66, 71, 71, 73, 72, 60, 56, 60, 68, 56, 68, 53, 52, 78, 53, 59, 83, 57, 69, 72, 80, 57, 84, 58, 57, 46, 98, 71, 58, 69, 56, 50, 66, 73, 57, 89, 86, 48, 57, 61, 49, 77, 76, 60, 48, 55, 109, 69, 65, 63, 58, 69, 72, 46, 70, 64, 65, 69, 91, 89, 101, 76, 60, 67, 63, 57, 68, 63, 68, 69, 89, 83, 66, 74, 62, 61, 59, 62, 67, 61, 72, 76, 73, 51, 55, 101, 64, 58, 71, 53, 60, 70, 60, 71, 63, 51, 71, 58, 56, 52, 56, 47, 62, 75, 58, 56, 56, 71, 69, 65, 71, 67, 61, 54, 70, 75, 58, 73, 61, 68, 64, 53, 71, 58, 62, 66, 65, 64, 58, 68, 52, 65, 68, 64, 70, 75, 68, 68, 57, 66, 46, 59, 53, 74, 56, 61, 89, 51, 67, 67, 52, 68, 99, 59, 64, 57, 66, 70, 51, 63, 58, 62, 66, 70, 61, 52, 69, 95, 83, 70, 60, 65, 55, 74, 64, 51, 67, 69, 62, 68, 55, 86, 65, 67, 63, 49, 95, 52, 62, 64, 57, 63, 59, 55, 61, 78, 59, 55, 60, 44, 65, 62, 70, 70, 86, 57, 61, 64, 49, 69, 68, 56, 90, 92, 74, 70, 61, 52, 66, 77, 75, 57, 55, 54, 68, 68, 53, 55, 72, 82, 136, 60, 46, 65, 71, 63, 56, 83, 79, 82, 57, 88, 65, 64, 67, 64, 62, 77, 64, 74, 76, 106, 78, 78, 57, 92, 67, 52, 50, 68, 74, 59, 85, 67, 49, 78, 54, 58, 48, 69, 63, 54, 54, 67, 50, 89, 56, 66, 65, 78, 133, 47, 67, 56, 68, 61, 70, 74, 80, 73, 67, 70, 55, 65, 68, 66, 68, 65, 52, 74, 60, 68, 62, 62, 60, 52, 68, 65, 69, 103, 155, 59, 77, 61, 75, 62, 64, 76, 57, 63, 75, 65, 51, 59, 52, 82, 59, 70, 76, 65, 69, 86, 69, 69, 78, 60, 64, 58, 58, 67, 62, 84, 60, 61, 55, 65, 69, 68, 73, 62, 70, 54, 55, 50, 65, 64, 54, 67, 62, 68, 62, 64, 56, 70, 62, 71, 68, 80, 64, 56, 104, 60, 60, 67, 52, 66, 63, 69, 74, 59, 64, 51, 53, 59, 65, 55, 80, 70, 97, 85, 65, 59, 75, 60, 54, 59, 70, 58, 55, 73, 69, 68, 76, 74, 71, 62, 70, 106, 61, 84, 55, 49, 49, 52, 65, 53, 81, 75, 71, 87, 60, 70, 65, 70, 56, 58, 90, 62, 66, 73, 70, 53, 72, 59, 55, 68, 68, 62, 72, 66, 84, 73, 63, 71, 63, 59, 72, 72, 72, 60, 65, 54, 79, 80, 70, 54, 70, 75, 60, 55, 77, 66, 65, 51, 69, 77, 78, 58, 88, 84, 47, 63, 69, 56, 71, 63, 63, 62, 73, 75, 87, 60, 76, 57, 68, 62, 58, 62, 75, 67, 56, 75, 72, 54, 61, 71, 78, 59, 67, 50, 57, 64, 89, 68, 63, 70, 66, 55, 75, 62, 80, 49, 54, 64, 56, 63, 76, 59, 95, 120, 71, 70, 78, 58, 58, 83, 51, 58, 70, 51, 68, 56, 58, 61, 68, 71, 73, 62, 78, 81, 63, 71, 69, 75, 57, 62, 57, 51, 65, 41, 67, 67, 60, 48, 66, 59, 69, 80, 60, 63, 74, 65, 48, 87, 66, 60, 55, 69, 75, 53, 44, 60, 70, 63, 78, 58, 76, 50, 79, 80, 50, 72, 72, 57, 70, 98, 92, 77, 72, 81, 58, 71, 59, 61, 56, 53, 63, 68, 99, 76, 73, 73, 62, 84, 69, 65, 64, 57, 55, 59, 64, 53, 60, 74, 64, 59, 60, 60, 65, 57, 78, 59, 66, 82, 66, 63, 64, 67, 65, 81, 78, 60, 64, 63, 54, 65, 72, 69, 69, 56, 72, 53, 50, 96, 74, 49, 62, 50, 110, 42, 60, 69, 83, 61, 78, 75, 58, 60, 74, 71, 61, 60, 68, 64, 73, 69, 58, 50, 67, 56, 79, 71, 70, 56, 77, 59, 63, 59, 65, 62, 87, 78, 63, 58, 68, 71, 66, 66, 48, 47, 87, 82, 66, 63, 75, 86, 64, 48, 61, 77, 79, 68, 59, 57, 61, 60, 53, 73, 85, 67, 69, 67, 70, 79, 62, 61, 87, 66, 77, 61, 98, 58, 58, 62, 66, 66, 55, 55, 73, 63, 68, 48, 72, 68, 64, 71, 68, 41, 65, 71, 61, 61, 61, 65, 83, 79, 54, 67, 64, 66, 79, 59, 76, 60, 58, 72, 83, 64, 53, 66, 68, 62, 75, 61, 67, 66, 69, 70, 42, 74, 61, 72, 59, 64, 59, 59, 81, 71, 75, 79, 57, 69, 48, 62, 54, 67, 51, 76, 62, 76, 74, 57, 59, 56, 62, 69, 86, 64, 55, 65, 62, 69, 54, 75, 55, 78, 60, 62, 56, 67, 73, 67, 58, 54, 56, 60, 96, 56, 96, 48, 62, 56, 72, 63, 70, 64, 79, 65, 63, 53, 55, 63, 80, 68, 60, 61, 66, 65, 63, 59, 54, 62, 79, 69, 64, 66, 110, 60, 106, 82, 74, 56, 76, 70, 60, 74, 60, 62, 52, 106, 59, 71, 54, 73, 72, 54, 78, 101, 56, 50, 57, 60, 63, 62, 57, 67, 54, 69, 63, 47, 50, 75, 54, 65, 63, 65, 64, 79, 70, 85, 53, 61, 58, 61, 82, 72, 79, 69, 70, 54, 61, 67, 44, 47, 61, 52, 55, 62, 82, 65, 63, 105, 67, 75, 101, 61, 100, 69, 62, 46, 51, 74, 60, 87, 54, 55, 67, 64, 85, 60, 71, 54, 59, 61, 97, 62, 50, 120, 76, 61, 53, 75, 60, 49, 64, 76, 74, 78, 57, 53, 62, 62, 71, 64, 55, 63, 82, 82, 65, 80, 71, 70, 56, 68, 52, 49, 95, 69, 61, 51, 76, 59, 55, 69, 77, 93, 93, 77, 61, 69, 56, 70, 80, 49, 58, 80, 73, 46, 72, 62, 55, 48, 56, 63, 52, 64, 77, 48, 58, 104, 46, 54, 63, 64, 76, 59, 76, 86, 54, 74, 58, 48, 59, 60, 59, 61, 137, 53, 81, 60, 64, 55, 73, 78, 57, 56, 66, 46, 82, 65, 60, 56, 65, 65, 56, 57, 54, 72, 56, 105, 63, 96, 57, 65, 55, 65, 83, 66, 78, 45, 71, 52, 56, 73, 54, 56, 69, 64, 54, 91, 61, 68, 63, 60, 93, 80, 55, 75, 60, 54, 66, 84, 88, 53, 57, 57, 115, 62, 67, 45, 74, 64, 132, 68, 85, 68, 69, 89, 60, 60, 63, 83, 66, 55, 107, 64, 62, 58, 78, 60, 75, 62, 57, 63, 58, 67, 64, 71, 67, 107, 75, 59, 56, 56, 56, 67, 74, 70, 43, 68, 74, 64, 61, 64, 49, 61, 60, 68, 68, 68, 59, 57, 65, 64, 47, 62, 52, 59, 98, 56, 59, 66, 73, 66, 64, 75, 49, 64, 81, 65, 39, 77, 60, 74, 61, 54, 73, 68, 85, 60, 61, 95, 67, 71, 60, 63, 56, 64, 69, 67, 49, 64, 64, 60, 65, 108, 67, 47, 54, 60, 77, 65, 50, 59, 79, 72, 56, 46, 61, 63, 67, 68, 64, 84, 45, 59, 81, 79, 103, 78, 67, 67, 76, 59, 66, 54, 65, 75, 66, 72, 85, 64, 75, 48, 70, 67, 64, 57, 62, 57, 81, 71, 57, 55, 60, 69, 60, 51, 81, 42, 62, 60, 72, 52, 76, 64, 74, 71, 101, 56, 60, 54, 68, 66, 87, 74, 53, 100, 85, 61, 67, 57, 62, 71, 119, 79, 62, 59, 64, 63, 80, 60, 40, 52, 52, 66, 59, 79, 65, 55, 69, 75, 40, 58, 47, 92, 69, 82, 47, 67, 56, 68, 73, 80, 56, 65, 67, 62, 52, 59, 57, 60, 65, 71, 76, 79, 79, 60, 61, 59, 54, 60, 64, 63, 104, 72, 81, 66, 66, 64, 90, 92, 69, 63, 55, 57, 55, 57, 70, 65, 62, 52, 61, 69, 99, 61, 51, 61, 68, 61, 55, 51, 30, 75, 72, 75, 79, 70, 47, 55, 59, 93, 50, 92, 56, 72, 72, 56, 66, 69, 77, 45, 75, 66, 74, 82, 62, 64, 57, 73, 92, 58, 58, 61, 71, 57, 71, 80, 53, 73, 76, 64, 62, 71, 85, 66, 58, 44, 70, 59, 57, 70, 63, 59, 73, 83, 60, 53, 57, 63, 52, 72, 110, 54, 48, 58, 92, 77, 53, 85, 69, 75, 55, 71, 66, 73, 68, 66, 71, 48, 85, 56, 77, 83, 72, 84, 83, 64, 66, 58, 67, 52, 82, 70, 55, 70, 54, 65, 60, 75, 74, 113, 47, 71, 63, 53, 63, 57, 72, 57, 78, 63, 64, 87, 62, 59, 70, 60, 70, 66, 61, 57, 52, 58, 93, 69, 50, 45, 73, 61, 81, 77, 49, 66, 99, 55, 70, 64, 87, 49, 68, 64, 51, 62, 83, 57, 57, 64, 57, 86, 87, 59, 50, 62, 78, 64, 78, 71, 68, 62, 50, 60, 80, 63, 59, 57, 58, 67, 84, 65, 48, 69, 61, 54, 66, 104, 58, 84, 51, 76, 72, 77, 61, 83, 52, 63, 55, 57, 67, 72, 64, 56, 100, 55, 69, 62, 94, 64, 55, 63, 80, 65, 65, 75, 48, 56, 58, 60, 53, 103, 52, 62, 71, 75, 56, 70, 61, 61, 63, 68, 63, 112, 58, 89, 53, 53, 78, 82, 61, 70, 70, 85, 59, 67, 64, 69, 83, 60, 58, 55, 65, 54, 72, 58, 54, 51, 69, 77, 58, 80, 71, 105, 65, 69, 81, 72, 77, 82, 54, 65, 62, 59, 65, 63, 57, 63, 69, 64, 61, 44, 57, 58, 157, 60, 70, 41, 63, 57, 66, 73, 89, 98, 76, 71, 54, 43, 65, 52, 69, 64, 59, 64, 58, 89, 84, 66, 59, 82, 64, 63, 101, 61, 72, 84, 61, 69, 57, 72, 44, 82, 67, 68, 69, 63, 61, 84, 67, 80, 89, 60, 64, 57, 62, 58, 77, 67, 57, 69, 57, 48, 42, 47, 43, 52, 94, 50, 58, 57, 69, 86, 73, 71, 75, 77, 76, 63, 34, 63, 63, 64, 78, 73, 59, 75, 61, 35, 36, 54, 94, 70, 47, 69, 50, 61, 57, 89, 61, 42, 70, 59, 79, 65, 60, 48, 74, 91, 71, 54, 63, 100, 71, 50, 59, 102, 54, 69, 53, 70, 65, 60, 59, 50, 75, 53, 94, 56, 60, 78, 69, 55, 51, 85, 58, 75, 49, 77, 87, 81, 56, 43, 56, 65, 49, 65, 53, 50, 66, 57, 73, 64, 59, 77, 72, 78, 75, 75, 58, 61, 61, 69, 70, 108, 61, 50, 65, 55, 76, 61, 111, 88, 54, 61, 45, 74, 78, 45, 117, 64, 53, 44, 77, 59, 99, 72, 51, 76, 70, 59, 62, 67, 77, 49, 79, 54, 79, 60, 55, 49, 94, 61, 63, 58, 82, 69, 55, 61, 51, 74, 67, 83, 48, 65, 93, 58, 60, 101, 68, 72, 65, 63, 46, 58, 65, 54, 47, 58, 51, 72, 53, 98, 50, 64, 58, 49, 54, 59, 75, 74, 78, 53, 84, 70, 65, 72, 66, 66, 63, 66, 61, 91, 40, 67, 76, 64, 74, 59, 58, 70, 66, 76, 62, 99, 74, 54, 56, 59, 51, 77, 62, 60, 73, 55, 105, 55, 53, 58, 71, 48, 96, 51, 47, 56, 68, 66, 45, 53, 85, 55, 57, 41, 93, 74, 56, 71, 61, 66, 86, 72, 57, 55, 72, 66, 66, 69, 77, 56, 55, 83, 56, 59, 68, 100, 43, 59, 55, 55, 56, 77, 60, 56, 57, 69, 88, 59, 76, 51, 45, 96, 77, 59, 59, 76, 65, 52, 68, 72, 90, 75, 72, 55, 78, 74, 82, 60, 47, 62, 53, 99, 70, 44, 37, 79, 72, 55, 62, 49, 74, 83, 55, 70, 76, 83, 70, 81, 75, 83, 72, 61, 79, 72, 92, 56, 69, 57, 58, 69, 89, 81, 68, 61, 82, 51, 59, 63, 56, 59, 61, 60, 49, 88, 68, 55, 64, 67, 72, 56, 71, 75, 80, 77, 61, 91, 81, 85, 65, 62, 77, 80, 65, 77, 38, 76, 64, 66, 71, 71, 72, 50, 79, 67, 63, 47, 59, 62, 69, 51, 65, 73, 92, 74, 78, 90, 65, 56, 59, 57, 76, 72, 69, 75, 66, 53, 60, 54, 58, 78, 55, 63, 85, 79, 72, 53, 66, 82, 63, 74, 52, 61, 66, 52, 63, 62, 65, 97, 70, 56, 61, 53, 70, 56, 67, 92, 79, 80, 94, 70, 55, 68, 83, 60, 60, 73, 47, 59, 44, 72, 57, 44, 77, 95, 64, 69, 60, 72, 71, 66, 60, 58, 76, 58, 101, 70, 57, 49, 77, 72, 58, 53, 74, 57, 59, 71, 61, 59, 88, 60, 67, 59, 96, 69, 61, 55, 95, 59, 69, 58, 59, 68, 83, 57, 74, 62, 55, 111, 65, 64, 106, 57, 71, 53, 64, 85, 53, 56, 69, 80, 56, 68, 50, 68, 69, 57, 78, 52, 96, 54, 69, 65, 44, 52, 56, 84, 60, 48, 79, 58, 66, 61, 65, 69, 50, 54, 80, 48, 64, 55, 77, 62, 65, 69, 57, 69, 48, 74, 66, 82, 64, 57, 67, 49, 67, 66, 70, 46, 54, 88, 52, 86, 66, 69, 74, 65, 66, 75, 75, 61, 76, 41, 64, 67, 56, 48, 67, 52, 77, 70, 99, 82, 69, 57, 70, 73, 87, 78, 58, 47, 69, 65, 56, 50, 71, 83, 77, 74, 71, 66, 90, 69, 68, 89, 84, 81, 53, 60, 72, 72, 52, 53, 70, 62, 66, 63, 59, 59, 76, 67, 59, 52, 45, 86, 67, 69, 56, 50, 56, 67, 90, 72, 67, 55, 55, 59, 57, 75, 70, 61, 89, 78, 131, 57, 63, 77, 79, 51, 55, 55, 66, 75, 48, 49, 51, 60, 61, 73, 69, 83, 60, 63, 55, 72, 47, 73, 83, 100, 63, 50, 64, 54, 75, 64, 67, 58, 64, 88, 49, 56, 59, 53, 52, 54, 69, 87, 52, 79, 65, 53, 56, 49, 70, 111, 63, 51, 46, 61, 62, 98, 79, 55, 53, 81, 59, 71, 89, 39, 68, 82, 57, 72, 79, 53, 56, 85, 66, 67, 66, 72, 73, 112, 122, 66, 67, 37, 81, 56, 90, 65, 56, 78, 86, 61, 66, 56, 62, 48, 54, 56, 82, 48, 59, 77, 60, 57, 76, 75, 62, 65, 62, 58, 55, 69, 77, 61, 67, 71, 62, 86, 61, 69, 59, 68, 82, 49, 69, 48, 58, 64, 60, 78, 70, 70, 65, 60, 54, 62, 67, 64, 62, 63, 73, 57, 55, 83, 63, 64, 68, 48, 75, 67, 56, 61, 52, 55, 50, 62, 98, 38, 89, 88, 58, 71, 64, 66, 79, 73, 67, 74, 70, 72, 70, 87, 43, 64, 52, 61, 70, 143, 69, 43, 55, 63, 66, 73, 91, 55, 69, 121, 99, 56, 56, 51, 44, 90, 49, 64, 52, 93, 48, 44, 74, 63, 62, 47, 90, 73, 81, 60, 50, 59, 69, 56, 42, 49, 81, 78, 71, 37, 55, 76, 56, 65, 50, 55, 65, 71, 56, 46, 67, 78, 71, 59, 47, 65, 60, 40, 52, 76, 65, 61, 97, 60, 59, 75, 91, 58, 55, 52, 88, 66, 59, 90, 55, 63, 62, 81, 59, 66, 110, 62, 61, 70, 49, 57, 72, 66, 67, 64, 104, 102, 58, 72, 93, 67, 78, 66, 51, 64, 69, 62, 47, 58, 75, 53, 62, 70, 59, 67, 63, 86, 44, 55, 56, 69, 63, 55, 63, 93, 61, 58, 70, 69, 70, 61, 74, 84, 89, 98, 56, 99, 61, 50, 79, 57, 55, 54, 70, 64, 44, 58, 72, 67, 80, 79, 58, 57, 61, 104, 68, 63, 78, 62, 67, 61, 57, 95, 69, 72, 61, 59, 74, 70, 63, 55, 75, 65, 58, 83, 67, 51, 54, 83, 88, 67, 43, 93, 74, 49, 60, 44, 73, 74, 55, 72, 68, 71, 52, 71, 79, 74, 72, 73, 86, 56, 66, 55, 68, 75, 58, 51, 73, 66, 53, 39, 63, 68, 68, 54, 66, 52, 69, 60, 73, 91, 93, 55, 84, 56, 49, 75, 66, 62, 53, 71, 64, 56, 65, 71, 68, 68, 59, 49, 73, 65, 58, 63, 59, 62, 82, 68, 80, 58, 88, 56, 48, 53, 60, 61, 60, 73, 64, 63, 61, 70, 65, 59, 75, 56, 48, 66, 39, 77, 61, 75, 63, 55, 72, 75, 64, 84, 74, 92, 60, 74, 63, 74, 76, 113, 53, 71, 65, 94, 68, 73, 77, 91, 58, 64, 63, 57, 86, 51, 65, 72, 73, 61, 54, 67, 69, 96, 58, 75, 65, 63, 56, 97, 82, 57, 64, 49, 71, 78, 53, 58, 50, 61, 63, 66, 72, 71, 77, 54, 66, 78, 61, 66, 57, 49, 59, 42, 62, 64, 65, 45, 70, 52, 68, 58, 56, 88, 72, 45, 89, 53, 55, 46, 59, 57, 41, 72, 66, 47, 50, 42, 83, 63, 56, 56, 54, 79, 70, 79, 55, 64, 59, 55, 81, 50, 68, 78, 61, 89, 66, 34, 72, 54, 60, 51, 78, 76, 79, 63, 70, 78, 81, 60, 72, 61, 59, 64, 60, 78, 47, 89, 71, 54, 59, 67, 61, 67, 62, 72, 67, 44, 69, 64, 83, 58, 60, 76, 46, 65, 59, 65, 87, 59, 65, 78, 64, 70, 63, 63, 65, 82, 52, 54, 62, 61, 80, 50, 63, 54, 71, 65, 48, 68, 79, 68, 59, 54, 46, 56, 59, 79, 63, 53, 70, 69, 49, 67, 98, 64, 79, 90, 62, 59, 91, 80, 75, 93, 46, 71, 36, 69, 66, 53, 62, 53, 67, 62, 65, 64, 51, 78, 70, 69, 61, 90, 86, 59, 46, 57, 56, 70, 69, 44, 75, 55, 111, 103, 76, 71, 53, 59, 67, 69, 69, 81, 70, 52, 55, 51, 69, 69, 58, 55, 91, 59, 58, 79, 65, 60, 46, 69, 58, 71, 98, 78, 74, 55, 84, 58, 64, 88, 72, 84, 62, 64, 63, 60, 60, 77, 70, 51, 62, 71, 92, 62, 60, 69, 61, 59, 80, 63, 53, 46, 93, 59, 62, 82, 77, 52, 81, 62, 64, 67, 44, 53, 67, 68, 86, 88, 68, 67, 50, 81, 59, 51, 60, 66, 86, 61, 57, 109, 68, 72, 61, 83, 66, 59, 63, 58, 62, 63, 66, 76, 79, 64, 70, 88, 66, 52, 72, 56, 77, 50, 84, 79, 61, 60, 73, 55, 70, 54, 58, 78, 55, 71, 85, 61, 64, 50, 79, 95, 62, 64, 44, 54, 60, 77, 58, 66, 47, 62, 56, 70, 72, 68, 77, 49, 62, 71, 52, 63, 87, 71, 69, 66, 66, 81, 93, 61, 75, 72, 56, 47, 57, 78, 62, 80, 84, 63, 60, 54, 60, 77, 53, 53, 62, 73, 96, 71, 50, 57, 84, 57, 86, 64, 74, 59, 44, 76, 49, 63, 78, 66, 68, 67, 52, 63, 60, 66, 87, 70, 101, 63, 57, 60, 71, 66, 60, 63, 63, 46, 69, 69, 83, 48, 66, 91, 84, 51, 95, 68, 57, 66, 63, 67, 73, 62, 57, 75, 56, 61, 68, 65, 52, 61, 55, 60, 75, 55, 62, 62, 66, 57, 53, 57, 63, 60, 65, 78, 66, 57, 57, 78, 79, 70, 60, 87, 63, 72, 52, 63, 64, 58, 79, 57, 54, 89, 60, 71, 74, 65, 58, 65, 50, 69, 61, 96, 65, 63, 62, 76, 56, 63, 74, 63, 67, 67, 67, 67, 48, 78, 76, 67, 62, 63, 71, 70, 59, 48, 57, 69, 89, 78, 59, 68, 70, 65, 78, 61, 76, 65, 63, 66, 56, 57, 80, 62, 107, 67, 96, 48, 60, 71, 71, 51, 69, 51, 64, 47, 53, 74, 65, 78, 83, 50, 58, 55, 68, 54, 62, 65, 64, 75, 62, 93, 72, 57, 47, 61, 78, 60, 77, 69, 77, 67, 64, 64, 71, 58, 69, 70, 117, 68, 69, 59, 96, 45, 63, 94, 54, 73, 65, 67, 69, 72, 49, 69, 71, 70, 76, 84, 64, 72, 66, 64, 64, 83, 68, 67, 67, 79, 73, 52, 58, 80, 64, 77, 51, 63, 45, 82, 89, 56, 53, 74, 56, 73, 68, 56, 54, 70, 64, 85, 53, 62, 74, 69, 41, 85, 75, 70, 88, 58, 68, 67, 83, 80, 49, 46, 67, 55, 63, 57, 57, 74, 74, 70, 57, 72, 81, 95, 128, 70, 54, 62, 75, 53, 65, 72, 47, 62, 70, 62, 61, 55, 57, 63, 68, 55, 88, 70, 66, 71, 61, 56, 89, 72, 71, 56, 71, 67, 82, 60, 70, 49, 52, 74, 57, 72, 68, 59, 62, 47, 81, 68, 68, 55, 52, 80, 56, 50, 63, 63, 56, 69, 58, 63, 77, 67, 58, 66, 69, 60, 46, 60, 69, 91, 60, 60, 89, 57, 49, 68, 70, 63, 66, 73, 71, 58, 109, 88, 73, 70, 78, 63, 59, 63, 70, 57, 66, 86, 80, 67, 77, 65, 65, 38, 83, 135, 57, 57, 68, 62, 58, 69, 81, 59, 56, 85, 92, 88, 68, 60, 55, 92, 59, 63, 84, 84, 49, 64, 61, 64, 68, 72, 55, 58, 62, 64, 73, 55, 78, 63, 97, 73, 64, 60, 60, 72, 43, 61, 59, 53, 62, 54, 62, 56, 55, 74, 57, 61, 55, 56, 68, 63, 59, 59, 47, 80, 95, 89, 52, 55, 70, 64, 83, 67, 94, 66, 70, 66, 49, 75, 72, 74, 59, 69, 47, 71, 71, 46, 67, 65, 71, 51, 78, 66, 59, 67, 88, 71, 65, 71, 66, 70, 55, 62, 45, 65, 74, 79, 52, 76, 68, 57, 57, 66, 52, 71, 59, 106, 45, 60, 68, 72, 69, 65, 46, 99, 77, 56, 83, 55, 55, 63, 57, 72, 75, 107, 106, 71, 54, 71, 84, 62, 60, 64, 60, 58, 60, 73, 82, 68, 80, 52, 66, 60, 61, 104, 84, 83, 61, 66, 68, 86, 68, 50, 67, 44, 47, 85, 64, 71, 75, 63, 51, 60, 77, 77, 66, 65, 58, 75, 65, 69, 52, 75, 78, 64, 53, 56, 66, 57, 62, 61, 53, 81, 48, 63, 91, 61, 71, 64, 70, 61, 79, 70, 56, 70, 47, 47, 66, 62, 50, 54, 62, 64, 55, 60, 56, 58, 55, 53, 93, 90, 73, 52, 80, 59, 56, 58, 77, 59, 67, 72, 72, 74, 60, 59, 57, 61, 41, 59, 52, 51, 78, 62, 62, 65, 57, 78, 57, 59, 91, 58, 84, 94, 56, 73, 67, 78, 52, 48, 76, 71, 89, 68, 74, 56, 62, 65, 63, 48, 59, 83, 66, 84, 53, 85, 60, 58, 76, 92, 44, 66, 64, 69, 69, 74, 49, 61, 71, 73, 62, 67, 69, 77, 61, 43, 44, 57, 75, 85, 62, 70, 62, 82, 59, 76, 70, 104, 43, 63, 54, 60, 51, 57, 64, 61, 44, 62, 93, 91, 46, 54, 69, 60, 63, 73, 48, 47, 70, 45, 62, 87, 63, 53, 48, 66, 76, 44, 68, 60, 54, 48, 52, 58, 55, 70, 71, 50, 63, 78, 80, 64, 69, 67, 66, 51, 67, 60, 54, 50, 56, 84, 55, 82, 65, 89, 44, 85, 62, 59, 57, 91, 66, 53, 74, 61, 58, 72, 67, 61, 62, 52, 70, 51, 63, 69, 93, 47, 94, 63, 67, 67, 76, 66, 73, 60, 71, 48, 71, 61, 58, 52, 81, 87, 61, 57, 63, 80, 70, 70, 72, 72, 66, 55, 71, 65, 86, 59, 54, 43, 45, 77, 54, 53, 59, 66, 63, 56, 53, 59, 58, 69, 57, 76, 62, 73, 68, 76, 52, 42, 48, 79, 70, 63, 83, 76, 57, 88, 51, 57, 49, 56, 82, 62, 48, 64, 66, 48, 64, 59, 66, 73, 60, 67, 90, 80, 54, 99, 70, 62, 77, 69, 62, 71, 77, 61, 68, 60, 48, 60, 60, 47, 63, 56, 78, 61, 94, 83, 69, 64, 57, 57, 64, 51, 58, 50, 62, 60, 76, 76, 56, 61, 67, 72, 76, 74, 55, 66, 65, 63, 62, 78, 53, 69, 52, 59, 128, 57, 67, 52, 56, 70, 77, 58, 75, 72, 62, 71, 71, 62, 69, 94, 78, 78, 47, 54, 75, 58, 63, 68, 62, 68, 54, 47, 71, 64, 56, 44, 58, 81, 59, 79, 64, 60, 57, 78, 69, 66, 82, 67, 84, 44, 65, 54, 95, 56, 64, 64, 47, 49, 61, 66, 83, 70, 74, 59, 67, 64, 60, 62, 66, 58, 55, 53, 53, 66, 62, 63, 64, 100, 92, 54, 64, 52, 61, 66, 59, 67, 58, 50, 71, 77, 88, 45, 62, 66, 63, 68, 66, 64, 62, 75, 67, 51, 66, 72, 63, 68, 57, 53, 57, 65, 53, 67, 69, 43, 66, 65, 63, 76, 78, 63, 67, 100, 65, 48, 66, 67, 69, 80, 56, 88, 67, 65, 80, 43, 71, 53, 71, 71, 65, 79, 70, 69, 72, 57, 127, 69, 58, 71, 56, 65, 69, 104, 64, 66, 61, 65, 61, 86, 62, 62, 61, 63, 118, 54, 56, 59, 82, 56, 63, 64, 58, 55, 61, 70, 54, 62, 69, 74, 55, 50, 63, 70, 72, 67, 76, 59, 54, 58, 67, 87, 61, 61, 57, 51, 72, 108, 62, 70, 88, 57, 64, 102, 85, 53, 81, 69, 78, 80, 57, 64, 62, 57, 73, 53, 76, 63, 71, 60, 51, 84, 71, 60, 68, 62, 82, 62, 80, 55, 87, 68, 70, 65, 63, 68, 95, 43, 52, 60, 75, 63, 72, 65, 66, 67, 63, 59, 60, 76, 50, 68, 46, 69, 49, 64, 65, 80, 65, 54, 70, 91, 71, 95, 74, 79, 92, 79, 68, 58, 56, 55, 81, 54, 55, 51, 62, 66, 71, 80, 75, 65, 98, 54, 68, 87, 83, 58, 65, 47, 58, 52, 71, 63, 55, 48, 55, 55, 56, 61, 79, 51, 75, 58, 52, 75, 59, 67, 63, 50, 67, 72, 72, 57, 64, 85, 66, 78, 61, 59, 61, 91, 66, 53, 60, 77, 71, 61, 56, 52, 55, 60, 50, 51, 56, 75, 61, 87, 71, 58, 64, 73, 151, 66, 71, 60, 58, 67, 79, 49, 60, 59, 88, 82, 83, 53, 50, 52, 71, 45, 56, 54, 78, 56, 55, 52, 73, 63, 68, 48, 69, 52, 72, 67, 68, 65, 50, 80, 72, 75, 66, 76, 58, 56, 91, 67, 66, 47, 90, 54, 67, 57, 70, 57, 52, 68, 59, 55, 65, 57, 82, 88, 57, 94, 61, 64, 64, 55, 64, 73, 83, 60, 52, 66, 61, 60, 73, 54, 70, 61, 79, 31, 65, 78, 67, 66, 49, 61, 110, 63, 60, 84, 74, 49, 62, 72, 71, 58, 53, 67, 47, 68, 88, 69, 72, 61, 71, 60, 75, 58, 56, 68, 43, 54, 91, 49, 74, 37, 67, 59, 58, 53, 68, 54, 66, 46, 75, 65, 48, 63, 47, 61, 66, 54, 102, 79, 62, 78, 62, 51, 59, 64, 74, 75, 72, 59, 66, 57, 53, 72, 83, 62, 61, 46, 62, 75, 67, 60, 55, 76, 61, 66, 57, 77, 59, 56, 75, 62, 70, 67, 67, 67, 64, 40, 71, 63, 61, 84, 87, 106, 54, 59, 63, 99, 69, 70, 94, 67, 77, 64, 71, 114, 84, 56, 67, 57, 57, 51, 66, 79, 60, 63, 75, 62, 53, 64, 75, 60, 60, 64, 68, 69, 69, 74, 72, 53, 70, 70, 68, 53, 48, 73, 62, 61, 55, 67, 64, 69, 70, 64, 58, 56, 140, 68, 78, 73, 67, 57, 63, 93, 77, 65, 63, 60, 67, 77, 78, 60, 59, 54, 57, 82, 78, 67, 89, 49, 66, 57, 54, 59, 91, 60, 56, 72, 63, 63, 60, 58, 54, 65, 86, 79, 76, 53, 70, 61, 57, 62, 65, 58, 57, 71, 58, 73, 77, 60, 71, 58, 69, 53, 70, 71, 70, 49, 60, 52, 77, 61, 63, 64, 71, 73, 59, 61, 92, 56, 77, 52, 95, 65, 56, 41, 47, 71, 47, 61, 57, 69, 70, 68, 61, 78, 63, 65, 66, 61, 56, 64, 68, 53, 67, 65, 69, 57, 56, 84, 62, 65, 68, 67, 63, 78, 63, 65, 59, 95, 63, 67, 50, 104, 71, 69, 47, 67, 66, 89, 59, 63, 114, 52, 67, 63, 105, 62, 54, 70, 76, 86, 59, 94, 62, 75, 67, 60, 58, 52, 60, 63, 53, 98, 66, 82, 88, 56, 56, 56, 51, 62, 56, 57, 75, 76, 65, 75, 73, 77, 71, 70, 61, 66, 55, 84, 57, 76, 63, 75, 61, 55, 67, 74, 55, 67, 61, 77, 71, 87, 83, 58, 62, 69, 106, 105, 48, 62, 75, 64, 47, 58, 66, 76, 60, 53, 54, 52, 64, 74, 65, 66, 59, 60, 83, 61, 54, 102, 74, 45, 71, 56, 62, 70, 62, 69, 64, 63, 63, 86, 62, 60, 61, 57, 59, 73, 53, 66, 59, 53, 58, 71, 55, 64, 56, 68, 51, 69, 62, 51, 55, 60, 94, 59, 58, 50, 76, 49, 56, 60, 62, 80, 64, 72, 64, 71, 100, 64, 50, 80, 62, 72, 72, 56, 88, 65, 53, 66, 71, 120, 46, 75, 108, 61, 73, 62, 73, 68, 51, 70, 77, 59, 66, 56, 64, 71, 67, 77, 120, 73, 71, 73, 57, 73, 61, 79, 98, 64, 58, 84, 82, 72, 46, 61, 72, 54, 72, 72, 67, 62, 53, 62, 68, 63, 88, 65, 70, 66, 73, 91, 85, 56, 60, 65, 66, 67, 70, 54, 70, 73, 66, 73, 64, 56, 52, 63, 55, 56, 57, 62, 70, 48, 75, 74, 76, 53, 67, 63, 58, 58, 51, 65, 74, 68, 61, 74, 64, 61, 61, 69, 71, 69, 70, 69, 62, 52, 63, 52, 62, 60, 63, 52, 63, 60, 58, 52, 61, 55, 52, 68, 63, 77, 52, 59, 82, 78, 76, 61, 76, 67, 72, 54, 60, 65, 35, 71, 53, 64, 60, 82, 76, 47, 54, 72, 63, 141, 85, 60, 62, 61, 95, 63, 53, 62, 86, 87, 65, 70, 46, 55, 47, 66, 89, 55, 70, 89, 53, 78, 58, 57, 89, 69, 59, 83, 59, 65, 67, 52, 53, 54, 65, 52, 58, 69, 60, 66, 62, 101, 56, 48, 71, 56, 41, 107, 66, 54, 84, 73, 86, 58, 62, 70, 46, 70, 68, 55, 59, 66, 63, 58, 40, 100, 49, 61, 72, 73, 71, 85, 47, 69, 46, 55, 70, 58, 86, 58, 63, 65, 75, 55, 55, 70, 75, 56, 62, 86, 58, 49, 90, 48, 48, 62, 86, 51, 62, 54, 51, 66, 65, 66, 68, 93, 62, 62, 89, 62, 56, 44, 66, 54, 52, 58, 75, 63, 65, 58, 62, 65, 97, 67, 59, 52, 45, 58, 63, 50, 41, 72, 62, 85, 101, 71, 52, 71, 55, 63, 53, 53, 65, 76, 49, 75, 75, 56, 56, 56, 67, 62, 56, 54, 81, 86, 92, 56, 61, 68, 73, 54, 65, 62, 84, 92, 74, 68, 55, 69, 53, 85, 48, 59, 64, 58, 64, 62, 58, 70, 38, 56, 78, 75, 66, 57, 70, 38, 102, 65, 51, 94, 51, 62, 96, 86, 51, 72, 75, 78, 43, 104, 51, 72, 74, 60, 136, 57, 65, 62, 93, 68, 67, 84, 62, 66, 54, 75, 55, 44, 65, 101, 64, 56, 82, 91, 52, 50, 65, 61, 68, 56, 86, 112, 63, 70, 76, 78, 62, 137, 61, 58, 48, 66, 60, 57, 62, 63, 67, 72, 80, 65, 60, 72, 76, 69, 57, 58, 84, 50, 84, 59, 68, 58, 47, 55, 69, 75, 78, 47, 86, 57, 67, 64, 62, 60, 58, 67, 72, 62, 81, 64, 94, 74, 54, 73, 58, 55, 63, 63, 67, 71, 67, 66, 67, 60, 61, 78, 48, 69, 61, 47, 42, 73, 51, 66, 68, 77, 62, 91, 70, 70, 64, 67, 78, 79, 47, 62, 54, 62, 60, 74, 54, 95, 56, 60, 60, 70, 114, 57, 60, 64, 53, 82, 58, 51, 64, 59, 66, 65, 49, 61, 74, 61, 79, 63, 59, 48, 63, 50, 75, 70, 61, 80, 79, 76, 53, 94, 61, 86, 88, 70, 62, 54, 70, 58, 54, 49, 69, 55, 64, 65, 60, 62, 61, 69, 53, 74, 57, 56, 73, 56, 78, 73, 96, 53, 109, 68, 73, 40, 71, 69, 90, 60, 85, 56, 86, 73, 58, 73, 65, 74, 66, 86, 54, 49, 52, 70, 68, 41, 62, 44, 65, 53, 88, 64, 73, 70, 66, 73, 60, 69, 82, 57, 60, 62, 63, 60, 57, 61, 66, 58, 59, 65, 82, 69, 62, 101, 61, 39, 71, 56, 77, 106, 75, 42, 59, 99, 61, 71, 74, 58, 79, 61, 78, 65, 48, 72, 82, 64, 59, 85, 56, 51, 38, 93, 66, 57, 53, 63, 63, 62, 70, 88, 71, 47, 86, 58, 62, 50, 61, 57, 60, 65, 72, 49, 90, 65, 68, 75, 75, 64, 63, 54, 69, 48, 50, 45, 62, 72, 64, 60, 50, 65, 64, 74, 93, 66, 93, 51, 57, 57, 61, 54, 58, 65, 63, 53, 61, 69, 66, 58, 69, 101, 50, 70, 73, 72, 63, 90, 63, 70, 68, 60, 100, 78, 71, 52, 54, 87, 55, 95, 62, 70, 57, 59, 61, 80, 60, 66, 52, 59, 53, 67, 70, 42, 57, 74, 61, 82, 59, 100, 56, 49, 67, 71, 60, 80, 74, 76, 44, 67, 55, 59, 59, 54, 56, 61, 60, 61, 74, 67, 75, 57, 63, 65, 88, 81, 70, 62, 59, 62, 55, 57, 101, 66, 72, 62, 97, 62, 63, 49, 68, 55, 48, 70, 55, 72, 55, 70, 76, 58, 62, 56, 149, 48, 65, 57, 57, 70, 87, 69, 62, 75, 59, 58, 64, 73, 63, 73, 67, 53, 65, 78, 61, 65, 65, 50, 51, 55, 59, 84, 80, 77, 54, 58, 67, 71, 39, 66, 66, 63, 60, 59, 63, 50, 68, 74, 68, 56, 56, 65, 63, 77, 64, 69, 61, 63, 59, 49, 58, 71, 82, 103, 68, 67, 56, 60, 57, 58, 58, 58, 61, 91, 66, 74, 73, 75, 79, 47, 75, 81, 64, 83, 74, 65, 54, 65, 64, 81, 49, 64, 51, 85, 68, 54, 62, 53, 74, 81, 60, 81, 53, 77, 90, 57, 70, 46, 63, 72, 66, 67, 64, 72, 47, 51, 64, 66, 61, 62, 75, 61, 119, 65, 66, 107, 67, 54, 78, 44, 93, 62, 72, 70, 50, 75, 66, 65, 82, 87, 89, 77, 64, 66, 68, 64, 79, 65, 56, 60, 72, 64, 69, 62, 64, 57, 59, 59, 68, 76, 68, 75, 77, 72, 83, 62, 61, 66, 68, 78, 57, 52, 77, 78, 67, 83, 66, 45, 62, 81, 56, 62, 71, 55, 89, 60, 56, 65, 62, 58, 62, 55, 89, 49, 62, 70, 69, 64, 63, 58, 84, 80, 63, 76, 58, 69, 87, 69, 59, 74, 53, 76, 83, 58, 52, 69, 61, 61, 60, 63, 69, 70, 57, 60, 64, 54, 68, 85, 67, 64, 69, 73, 73, 63, 48, 74, 64, 48, 69, 56, 68, 66, 71, 56, 45, 74, 47, 64, 88, 60, 69, 78, 66, 61, 65, 66, 61, 60, 72, 65, 68, 64, 65, 76, 83, 85, 64, 58, 53, 59, 64, 53, 73, 54, 65, 66, 61, 62, 76, 61, 62, 86, 66, 75, 62, 72, 73, 57, 58, 65, 49, 64, 71, 59, 52, 71, 94, 65, 54, 68, 41, 71, 60, 62, 77, 70, 55, 69, 58, 54, 64, 50, 81, 76, 84, 60, 58, 67, 44, 56, 87, 66, 56, 62, 57, 59, 64, 42, 69, 72, 65, 59, 57, 53, 70, 65, 71, 49, 62, 88, 95, 55, 56, 61, 58, 65, 62, 66, 49, 94, 72, 72, 62, 54, 80, 106, 62, 63, 52, 49, 72, 61, 59, 54, 67, 74, 64, 63, 102, 53, 55, 84, 78, 83, 57, 65, 44, 63, 73, 61, 52, 51, 79, 61, 69, 59, 56, 51, 83, 54, 59, 83, 82, 74, 65, 70, 60, 57, 71, 56, 66, 73, 57, 82, 65, 70, 49, 77, 68, 39, 67, 64, 52, 93, 68, 72, 77, 77, 54, 51, 67, 65, 64, 60, 81, 63, 75, 60, 50, 63, 67, 83, 75, 75, 58, 54, 66, 62, 81, 54, 65, 116, 76, 39, 67, 89, 56, 60, 62, 68, 60, 61, 65, 75, 71, 84, 64, 62, 53, 62, 86, 63, 38, 63, 69, 62, 70, 71, 50, 64, 54, 66, 58, 48, 71, 61, 52, 69, 86, 72, 47, 91, 60, 64, 90, 91, 59, 56, 52, 53, 58, 63, 70, 75, 75, 80, 62, 107, 58, 72, 94, 42, 62, 69, 60, 83, 68, 90, 54, 90, 99, 55, 57, 62, 56, 72, 56, 86, 69, 63, 55, 64, 68, 68, 78, 67, 47, 75, 46, 73, 68, 82, 68, 66, 54, 67, 109, 47, 68, 52, 84, 63, 61, 50, 51, 60, 64, 66, 92, 62, 49, 66, 70, 55, 51, 60, 56, 59, 53, 75, 64, 60, 68, 65, 56, 61, 57, 59, 57, 58, 62, 61, 69, 71, 64, 70, 58, 59, 87, 75, 57, 64, 58, 94, 70, 57, 65, 59, 70, 63, 87, 51, 60, 70, 64, 59, 57, 75, 58, 69, 64, 53, 71, 53, 66, 73, 63, 60, 82, 74, 62, 64, 78, 82, 77, 123, 61, 63, 59, 60, 111, 70, 85, 66, 71, 49, 66, 54, 54, 58, 52, 72, 72, 59, 73, 65, 61, 75, 75, 73, 68, 85, 72, 65, 51, 54, 72, 102, 77, 66, 52, 80, 70, 116, 64, 55, 71, 58, 55, 55, 74, 58, 77, 85, 69, 47, 72, 52, 45, 74, 68, 86, 87, 54, 72, 62, 54, 66, 58, 59, 65, 88, 61, 69, 88, 47, 62, 56, 54, 64, 57, 56, 85, 65, 68, 51, 74, 53, 54, 55, 74, 70, 62, 63, 65, 85, 77, 69, 39, 58, 61, 63, 63, 72, 53, 68, 52, 66, 81, 69, 56, 64, 41, 58, 81, 52, 56, 59, 45, 74, 54, 47, 59, 53, 59, 59, 53, 87, 82, 53, 67, 50, 82, 73, 57, 96, 58, 71, 60, 88, 57, 52, 43, 48, 69, 70, 61, 102, 59, 61, 68, 115, 54, 63, 49, 68, 72, 82, 55, 54, 57, 76, 70, 57, 61, 58, 64, 65, 89, 58, 71, 86, 87, 57, 58, 53, 59, 57, 68, 88, 59, 68, 67, 75, 69, 65, 45, 67, 98, 70, 67, 62, 62, 66, 58, 67, 69, 49, 74, 56, 55, 45, 68, 83, 68, 57, 72, 83, 60, 57, 26, 48, 56, 65, 66, 86, 57, 46, 60, 48, 51, 54, 69, 90, 73, 60, 69, 67, 50, 59, 81, 88, 83, 51, 84, 70, 54, 60, 61, 64, 70, 65, 65, 86, 62, 62, 73, 40, 75, 72, 82, 96, 74, 60, 70, 68, 70, 46, 49, 75, 63, 88, 65, 68, 52, 66, 55, 58, 60, 73, 68, 80, 58, 69, 59, 65, 67, 72, 62, 66, 69, 81, 55, 57, 44, 52, 67, 50, 72, 58, 52, 58, 61, 66, 55, 56, 68, 58, 81, 70, 70, 50, 67, 91, 67, 65, 80, 60, 63, 59, 48, 73, 76, 72, 42, 58, 72, 42, 68, 53, 95, 58, 64, 64, 74, 75, 81, 68, 63, 50, 67, 71, 82, 110, 61, 70, 62, 80, 59, 56, 76, 55, 71, 97, 60, 58, 75, 111, 59, 71, 54, 80, 74, 64, 54, 92, 71, 64, 58, 90, 55, 59, 64, 83, 74, 141, 46, 70, 55, 62, 56, 59, 88, 63, 60, 69, 82, 74, 40, 57, 55, 71, 102, 40, 72, 64, 72, 76, 65, 58, 56, 56, 90, 82, 64, 73, 58, 63, 58, 72, 91, 57, 99, 63, 60, 57, 74, 56, 50, 52, 54, 69, 67, 49, 58, 64, 63, 68, 89, 60, 71, 63, 71, 66, 66, 64, 61, 65, 46, 66, 56, 58, 59, 77, 52, 60, 71, 72, 73, 53, 52, 53, 53, 57, 65, 50, 60, 60, 78, 125, 68, 57, 39, 59, 74, 56, 95, 61, 46, 56, 78, 72, 57, 64, 63, 52, 61, 61, 78, 70, 55, 72, 67, 51, 52, 61, 64, 50, 42, 81, 69, 74, 63, 59, 57, 92, 50, 92, 69, 66, 65, 50, 66, 55, 55, 85, 53, 59, 55, 49, 82, 70, 51, 74, 44, 55, 65, 65, 79, 54, 56, 69, 62, 58, 55, 56, 54, 60, 72, 63, 70, 85, 66, 59, 78, 74, 62, 74, 68, 69, 63, 68, 44, 57, 79, 58, 66, 67, 49, 79, 51, 49, 54, 74, 90, 58, 72, 56, 86, 80, 50, 70, 72, 64, 63, 69, 66, 44, 71, 59, 68, 46, 60, 70, 65, 67, 59, 93, 85, 62, 54, 52, 53, 51, 56, 55, 69, 78, 75, 53, 56, 44, 57, 65, 61, 73, 59, 63, 54, 56, 65, 66, 70, 71, 70, 75, 72, 60, 65, 60, 53, 57, 50, 45, 70, 49, 49, 111, 52, 73, 93, 56, 75, 64, 73, 77, 57, 78, 59, 62, 70, 67, 62, 65, 58, 85, 47, 62, 58, 62, 68, 51, 57, 61, 72, 59, 53, 69, 67, 64, 62, 101, 66, 74, 97, 51, 64, 72, 81, 70, 59, 47, 54, 85, 73, 59, 73, 70, 50, 67, 54, 75, 100, 92, 73, 52, 54, 80, 74, 58, 74, 55, 62, 86, 62, 69, 67, 89, 79, 57, 66, 48, 43, 60, 66, 53, 73, 68, 61, 61, 73, 86, 69, 46, 58, 66, 49, 57, 82, 58, 52, 51, 65, 73, 46, 52, 59, 49, 94, 73, 139, 58, 59, 77, 54, 64, 46, 51, 72, 75, 85, 89, 78, 69, 60, 55, 77, 49, 61, 60, 57, 64, 61, 54, 62, 73, 64, 73, 57, 61, 64, 66, 68, 72, 59, 64, 69, 57, 68, 58, 64, 61, 61, 68, 72, 64, 59, 78, 57, 60, 47, 66, 58, 62, 63, 53, 93, 66, 79, 58, 60, 62, 58, 53, 72, 80, 55, 71, 68, 60, 71, 44, 70, 74, 57, 91, 78, 78, 105, 67, 54, 78, 58, 56, 53, 101, 68, 60, 67, 52, 56, 65, 77, 41, 59, 65, 58, 82, 61, 66, 55, 56, 54, 48, 57, 78, 64, 71, 60, 47, 46, 87, 81, 50, 66, 107, 57, 58, 67, 60, 70, 77, 74, 70, 62, 48, 62, 55, 66, 77, 60, 63, 69, 63, 59, 92, 54, 60, 57, 45, 62, 63, 71, 65, 67, 61, 64, 60, 62, 60, 62, 49, 55, 62, 62, 55, 62, 62, 64, 78, 61, 78, 63, 63, 64, 66, 40, 78, 64, 54, 65, 57, 59, 61, 63, 65, 54, 57, 57, 63, 61, 59, 50, 89, 52, 64, 64, 64, 64, 122, 54, 44, 66, 69, 67, 60, 53, 60, 84, 83, 98, 65, 74, 53, 80, 84, 64, 92, 74, 62, 99, 64, 74, 53, 71, 78, 68, 77, 71, 60, 51, 85, 36, 65, 66, 49, 62, 63, 60, 58, 52, 48, 55, 67, 51, 63, 65, 52, 63, 93, 43, 59, 71, 60, 77, 66, 63, 65, 56, 74, 68, 60, 78, 64, 83, 55, 92, 52, 66, 56, 56, 52, 62, 66, 60, 58, 53, 64, 59, 45, 66, 51, 79, 63, 61, 53, 75, 77, 68, 64, 50, 60, 47, 70, 67, 51, 54, 76, 48, 76, 44, 62, 64, 61, 81, 46, 65, 58, 64, 76, 74, 55, 58, 63, 66, 74, 64, 68, 68, 84, 68, 64, 92, 47, 58, 54, 83, 73, 65, 134, 55, 64, 63, 67, 131, 61, 61, 61, 89, 60, 110, 59, 52, 61, 53, 78, 48, 63, 68, 66, 66, 62, 60, 84, 62, 58, 50, 58, 62, 60, 55, 70, 78, 52, 89, 76, 70, 105, 56, 70, 74, 64, 74, 60, 97, 80, 86, 75, 96, 59, 57, 60, 60, 64, 75, 51, 81, 60, 79, 58, 53, 64, 52, 59, 52, 47, 54, 106, 71, 56, 64, 67, 60, 56, 66, 69, 63, 76, 79, 61, 77, 62, 56, 55, 54, 63, 54, 78, 66, 60, 73, 63, 65, 64, 55, 81, 53, 75, 68, 57, 61, 83, 63, 69, 97, 59, 59, 61, 60, 59, 52, 55, 64, 66, 77, 47, 83, 61, 59, 81, 60, 93, 65, 79, 59, 60, 86, 79, 54, 87, 94, 54, 54, 64, 82, 54, 59, 58, 68, 82, 106, 72, 65, 67, 51, 52, 46, 61, 72, 60, 55, 67, 68, 73, 83, 96, 73, 107, 56, 67, 75, 64, 63, 76, 59, 63, 59, 53, 60, 71, 57, 71, 68, 73, 76, 49, 53, 117, 49, 67, 68, 92, 85, 61, 95, 55, 49, 66, 49, 50, 75, 64, 57, 76, 68, 41, 57, 55, 62, 51, 75, 85, 60, 61, 60, 75, 73, 58, 70, 75, 66, 56, 71, 64, 56, 58, 83, 53, 59, 61, 56, 54, 84, 78, 70, 62, 65, 62, 53, 56, 58, 64, 73, 52, 70, 82, 61, 75, 65, 59, 73, 86, 69, 68, 55, 111, 85, 59, 61, 66, 51, 62, 69, 71, 63, 74, 58, 64, 48, 60, 51, 56, 77, 77, 72, 56, 48, 52, 48, 67, 69, 89, 65, 60, 65, 55, 56, 82, 61, 61, 63, 58, 93, 59, 71, 64, 73, 72, 56, 58, 60, 54, 71, 72, 56, 53, 61, 74, 75, 58, 66, 61, 73, 59, 73, 73, 89, 62, 59, 62, 57, 73, 55, 51, 70, 53, 65, 68, 66, 54, 48, 79, 79, 53, 78, 75, 64, 74, 56, 63, 60, 62, 109, 65, 65, 60, 63, 62, 59, 54, 76, 88, 52, 52, 52, 99, 45, 69, 58, 63, 70, 66, 59, 78, 67, 54, 61, 98, 68, 86, 60, 55, 60, 63, 62, 60, 90, 64, 75, 65, 51, 75, 64, 54, 47, 57, 65, 39, 106, 65, 54, 61, 64, 53, 70, 87, 73, 72, 70, 70, 65, 49, 74, 75, 66, 76, 49, 68, 81, 48, 71, 88, 67, 63, 65, 74, 60, 69, 58, 47, 51, 70, 144, 60, 78, 70, 73, 62, 48, 53, 61, 88, 55, 58, 66, 52, 60, 73, 52, 65, 65, 55, 73, 58, 63, 75, 60, 52, 67, 49, 108, 64, 65, 64, 62, 73, 57, 68, 68, 81, 64, 69, 71, 57, 53, 61, 69, 61, 59, 62, 64, 84, 53, 55, 60, 69, 68, 70, 63, 73, 70, 119, 57, 61, 57, 61, 77, 51, 58, 54, 76, 80, 63, 49, 58, 61, 76, 56, 69, 59, 73, 49, 67, 62, 73, 52, 58, 78, 58, 74, 63, 60, 67, 62, 51, 61, 67, 55, 64, 87, 65, 72, 48, 69, 75, 73, 69, 68, 68, 96, 71, 73, 86, 58, 93, 78, 64, 53, 76, 83, 109, 56, 79, 80, 61, 89, 61, 75, 70, 66, 59, 73, 51, 56, 55, 70, 80, 67, 58, 67, 65, 64, 60, 50, 81, 64, 71, 64, 81, 82, 66, 51, 79, 55, 62, 63, 39, 81, 59, 62, 59, 66, 72, 55, 48, 56, 81, 78, 57, 59, 62, 76, 66, 61, 59, 58, 55, 86, 49, 53, 63, 53, 65, 80, 56, 57, 60, 61, 70, 65, 72, 59, 62, 46, 90, 74, 55, 57, 68, 85, 74, 95, 61, 86, 63, 70, 55, 71, 61, 74, 74, 66, 60, 70, 61, 53, 62, 69, 59, 61, 72, 64, 67, 100, 53, 58, 61, 72, 61, 53, 65, 107, 70, 80, 61, 53, 74, 59, 72, 60, 71, 60, 67, 76, 54, 59, 61, 64, 63, 57, 53, 90, 73, 66, 78, 65, 49, 57, 60, 56, 65, 80, 91, 48, 56, 64, 60, 66, 63, 63, 71, 58, 81, 71, 61, 60, 66, 83, 72, 82, 59, 55, 61, 62, 76, 69, 75, 58, 48, 49, 54, 56, 68, 64, 44, 67, 76, 62, 57, 65, 74, 58, 55, 65, 65, 41, 53, 72, 57, 108, 77, 83, 77, 60, 68, 78, 67, 62, 87, 78, 62, 82, 62, 51, 70, 61, 66, 90, 52, 63, 93, 54, 61, 59, 69, 67, 58, 57, 53, 52, 63, 67, 56, 65, 61, 68, 55, 60, 65, 70, 67, 55, 77, 54, 73, 57, 65, 66, 59, 61, 54, 61, 58, 58, 82, 63, 102, 76, 63, 79, 42, 64, 64, 56, 61, 55, 70, 53, 55, 55, 68, 63, 51, 67, 47, 56, 67, 64, 57, 74, 60, 61, 87, 63, 72, 66, 69, 59, 49, 46, 60, 66, 66, 77, 61, 81, 79, 42, 71, 97, 42, 46, 107, 76, 97, 62, 68, 78, 60, 62, 50, 48, 61, 62, 60, 70, 69, 64, 56, 71, 86, 56, 41, 99, 59, 56, 97, 43, 73, 77, 74, 88, 53, 65, 63, 89, 49, 61, 60, 58, 55, 68, 67, 52, 64, 63, 55, 85, 96, 72, 38, 56, 61, 68, 63, 84, 72, 51, 58, 70, 74, 70, 89, 60, 77, 66, 76, 74, 63, 66, 60, 48, 66, 85, 63, 67, 116, 60, 86, 59, 70, 69, 75, 77, 60, 55, 57, 50, 83, 63, 54, 111, 64, 74, 82, 56, 58, 65, 61, 52, 60, 45, 54, 77, 56, 82, 70, 73, 54, 95, 74, 55, 71, 66, 45, 75, 63, 57, 60, 64, 75, 53, 62, 44, 51, 60, 58, 87, 79, 56, 91, 86, 57, 73, 73, 59, 105, 47, 62, 77, 102, 59, 73, 60, 61, 56, 59, 82, 65, 65, 68, 83, 66, 76, 50, 83, 62, 59, 60, 87, 60, 110, 63, 55, 85, 68, 67, 78, 61, 53, 58, 82, 66, 76, 89, 61, 86, 45, 62, 77, 71, 40, 64, 75, 59, 64, 65, 56, 60, 99, 92, 65, 62, 71, 77, 64, 69, 67, 56, 54, 49, 55, 56, 88, 55, 64, 52, 67, 135, 48, 61, 63, 51, 70, 66, 72, 51, 73, 77, 73, 60, 82, 86, 85, 51, 79, 35, 82, 54, 58, 57, 58, 63, 46, 60, 70, 71, 58, 55, 71, 82, 105, 64, 96, 69, 48, 51, 70, 84, 71, 64, 62, 99, 72, 67, 60, 67, 61, 66, 85, 96, 61, 45, 56, 66, 53, 52, 53, 55, 38, 52, 91, 54, 50, 75, 58, 74, 63, 54, 65, 62, 76, 76, 66, 62, 79, 90, 56, 67, 59, 63, 69, 65, 49, 52, 57, 59, 50, 68, 64, 65, 57, 72, 50, 85, 77, 56, 82, 80, 53, 72, 67, 67, 58, 48, 67, 56, 59, 59, 82, 78, 64, 62, 76, 68, 83, 43, 103, 78, 66, 51, 58, 64, 59, 59, 68, 67, 62, 74, 62, 78, 67, 73, 72, 56, 57, 34, 56, 62, 80, 75, 57, 64, 67, 41, 40, 69, 62, 47, 98, 93, 54, 61, 58, 44, 59, 62, 65, 121, 64, 55, 50, 72, 48, 40, 59, 105, 57, 86, 56, 74, 91, 74, 62, 102, 51, 106, 57, 81, 56, 93, 41, 66, 44, 71, 51, 63, 71, 104, 79, 64, 98, 56, 51, 86, 84, 75, 60, 51, 77, 81, 64, 79, 64, 67, 42, 82, 75, 99, 73, 47, 62, 62, 55, 60, 75, 75, 78, 66, 71, 74, 56, 55, 65, 76, 58, 66, 55, 29, 64, 65, 69, 66, 51, 62, 60, 52, 60, 65, 61, 84, 56, 58, 69, 72, 54, 70, 70, 66, 75, 56, 49, 53, 99, 56, 90, 101, 79, 79, 61, 80, 74, 43, 98, 69, 78, 54, 69, 66, 62, 77, 64, 70, 69, 82, 64, 71, 63, 65, 50, 50, 73, 60, 60, 61, 58, 82, 49, 69, 97, 57, 91, 71, 56, 63, 68, 61, 54, 84, 62, 82, 76, 59, 62, 62, 56, 66, 73, 76, 59, 61, 76, 55, 64, 61, 55, 96, 55, 62, 87, 66, 87, 62, 71, 61, 54, 75, 66, 63, 85, 62, 80, 68, 54, 62, 56, 62, 51, 67, 87, 58, 64, 42, 59, 46, 45, 64, 53, 65, 67, 57, 57, 24, 108, 55, 83, 95, 59, 58, 57, 66, 54, 57, 62, 87, 67, 47, 69, 99, 74, 53, 44, 57, 47, 60, 62, 73, 54, 67, 55, 63, 50, 88, 80, 69, 59, 92, 64, 66, 56, 55, 65, 65, 65, 63, 70, 74, 67, 69, 65, 59, 70, 55, 64, 57, 60, 79, 72, 54, 74, 69, 67, 94, 73, 79, 66, 44, 58, 52, 77, 65, 59, 51, 65, 56, 75, 77, 46, 83, 68, 55, 63, 50, 54, 82, 63, 66, 75, 50, 60, 31, 55, 49, 67, 57, 73, 42, 51, 61, 62, 61, 47, 60, 57, 88, 58, 67, 67, 56, 52, 44, 98, 59, 55, 79, 88, 63, 79, 76, 71, 60, 67, 66, 81, 65, 51, 43, 47, 56, 61, 53, 68, 79, 94, 64, 53, 54, 61, 66, 59, 55, 43, 87, 69, 55, 76, 70, 70, 77, 57, 41, 58, 63, 100, 66, 69, 60, 47, 63, 68, 80, 47, 48, 43, 45, 56, 59, 79, 68, 57, 76, 49, 58, 67, 74, 69, 107, 96, 63, 81, 51, 97, 64, 72, 57, 62, 47, 57, 60, 53, 60, 82, 83, 73, 98, 66, 56, 65, 77, 70, 48, 81, 87, 66, 48, 79, 97, 52, 53, 69, 58, 53, 66, 67, 65, 56, 90, 43, 76, 66, 68, 66, 68, 58, 73, 70, 65, 45, 63, 67, 48, 60, 97, 60, 82, 48, 68, 56, 58, 64, 86, 74, 58, 65, 68, 58, 56, 61, 90, 55, 49, 67, 55, 55, 46, 87, 54, 106, 60, 68, 70, 68, 79, 73, 76, 51, 84, 75, 74, 110, 89, 84, 61, 50, 62, 68, 73, 101, 40, 60, 60, 65, 69, 70, 55, 85, 73, 60, 58, 61, 66, 65, 92, 46, 53, 59, 108, 60, 53, 68, 78, 62, 52, 80, 49, 48, 48, 48, 54, 70, 74, 48, 51, 70, 62, 97, 76, 47, 63, 51, 59, 59, 55, 89, 75, 61, 54, 73, 69, 39, 61, 51, 45, 82, 60, 65, 57, 48, 89, 52, 100, 49, 41, 64, 63, 57, 59, 77, 95, 59, 77, 75, 54, 63, 80, 49, 50, 69, 69, 76, 60, 58, 74, 89, 87, 81, 65, 60, 74, 62, 63, 62, 35, 66, 58, 92, 69, 56, 49, 66, 69, 54, 57, 44, 56, 66, 73, 70, 65, 69, 59, 89, 53, 63, 39, 58, 45, 64, 69, 78, 71, 58, 59, 79, 68, 73, 64, 58, 62, 63, 54, 67, 67, 49, 77, 61, 63, 57, 53, 62, 89, 47, 52, 70, 65, 77, 76, 56, 60, 71, 67, 70, 59, 65, 70, 50, 77, 45, 62, 61, 51, 60, 65, 62, 76, 63, 86, 66, 58, 39, 82, 63, 50, 86, 34, 79, 64, 63, 55, 46, 60, 51, 72, 68, 68, 52, 76, 59, 89, 60, 47, 59, 64, 62, 67, 100, 87, 65, 60, 85, 66, 77, 80, 66, 62, 63, 54, 57, 62, 75, 63, 62, 49, 61, 57, 60, 48, 53, 69, 57, 44, 62, 51, 58, 65, 64, 66, 75, 75, 63, 67, 60, 69, 73, 59, 76, 74, 73, 73, 54, 59, 79, 55, 68, 70, 67, 78, 59, 52, 55, 86, 49, 66, 55, 69, 62, 72, 92, 60, 59, 80, 65, 54, 62, 75, 71, 72, 74, 77, 58, 75, 54, 88, 55, 57, 106, 54, 58, 58, 50, 63, 61, 57, 117, 64, 65, 53, 61, 67, 55, 62, 50, 59, 72, 71, 80, 54, 96, 68, 58, 61, 65, 73, 63, 61, 65, 59, 103, 57, 60, 83, 41, 68, 63, 78, 84, 81, 62, 62, 55, 103, 65, 60, 70, 53, 59, 53, 55, 60, 51, 56, 80, 51, 49, 80, 71, 65, 50, 61, 62, 48, 72, 64, 82, 61, 92, 57, 58, 61, 62, 48, 64, 68, 66, 73, 84, 79, 73, 49, 45, 67, 65, 58, 72, 100, 54, 63, 54, 56, 66, 53, 55, 63, 62, 74, 68, 41, 66, 59, 51, 60, 54, 59, 45, 49, 52, 55, 91, 59, 64, 55, 74, 119, 64, 61, 54, 62, 74, 67, 57, 64, 62, 54, 73, 54, 62, 75, 56, 62, 70, 65, 116, 61, 55, 63, 64, 88, 64, 61, 63, 61, 71, 87, 72, 63, 108, 61, 65, 51, 71, 57, 42, 75, 63, 64, 67, 46, 88, 69, 61, 57, 57, 105, 60, 48, 55, 53, 70, 99, 75, 45, 65, 69, 60, 64, 80, 56, 65, 61, 56, 49, 71, 63, 64, 73, 50, 63, 64, 79, 72, 54, 55, 88, 57, 61, 70, 65, 65, 71, 72, 64, 58, 63, 67, 66, 81, 62, 85, 83, 72, 75, 65, 73, 59, 62, 57, 78, 56, 55, 63, 67, 62, 103, 57, 69, 70, 57, 66, 68, 84, 49, 97, 97, 54, 82, 49, 66, 50, 82, 77, 55, 58, 62, 58, 46, 57, 58, 72, 75, 74, 62, 61, 69, 64, 58, 57, 51, 69, 59, 90, 75, 60, 72, 101, 80, 59, 65, 75, 60, 75, 62, 85, 67, 63, 76, 51, 57, 65, 57, 55, 77, 63, 63, 66, 53, 109, 62, 67, 87, 79, 56, 55, 92, 71, 67, 58, 46, 61, 54, 66, 65, 52, 64, 63, 69, 79, 53, 55, 71, 120, 54, 75, 56, 87, 71, 62, 65, 72, 60, 73, 67, 60, 68, 59, 78, 65, 65, 62, 68, 65, 57, 84, 55, 59, 52, 65, 53, 89, 56, 75, 80, 57, 72, 85, 58, 71, 91, 63, 80, 54, 97, 97, 60, 65, 77, 72, 64, 68, 81, 68, 76, 59, 61, 53, 65, 56, 62, 81, 79, 40, 98, 46, 68, 57, 96, 98, 43, 72, 62, 93, 91, 80, 85, 57, 57, 104, 92, 86, 55, 60, 72, 52, 63, 68, 69, 65, 95, 62, 54, 69, 57, 58, 52, 60, 72, 87, 53, 59, 57, 78, 70, 72, 97, 63, 100, 61, 60, 55, 59, 54, 62, 61, 62, 68, 63, 77, 88, 60, 69, 54, 94, 60, 68, 72, 69, 82, 59, 71, 59, 78, 77, 67, 68, 59, 60, 87, 82, 69, 71, 48, 55, 66, 67, 62, 55, 51, 55, 60, 68, 62, 60, 73, 64, 79, 85, 52, 74, 123, 73, 51, 69, 55, 50, 71, 56, 53, 61, 58, 40, 58, 68, 63, 55, 72, 56, 76, 84, 64, 68, 64, 66, 74, 74, 69, 46, 57, 60, 58, 57, 52, 80, 54, 85, 58, 51, 68, 55, 51, 55, 65, 91, 58, 57, 67, 66, 65, 53, 47, 58, 95, 74, 59, 77, 55, 59, 62, 73, 57, 57, 81, 54, 58, 85, 57, 69, 52, 57, 56, 73, 64, 52, 62, 57, 59, 65, 65, 57, 46, 77, 59, 63, 74, 52, 58, 52, 56, 63, 75, 46, 57, 61, 57, 54, 77, 70, 62, 58, 70, 54, 62, 49, 52, 55, 72, 65, 76, 51, 65, 96, 105, 61, 62, 88, 60, 80, 72, 63, 67, 75, 80, 76, 58, 48, 71, 46, 53, 60, 93, 49, 47, 62, 65, 57, 58, 61, 70, 57, 70, 72, 78, 57, 72, 60, 60, 66, 55, 62, 106, 51, 57, 61, 58, 101, 52, 67, 68, 54, 74, 55, 76, 79, 62, 59, 54, 62, 58, 80, 60, 105, 56, 42, 80, 45, 72, 72, 92, 86, 62, 49, 88, 68, 65, 58, 64, 65, 93, 72, 73, 86, 62, 74, 54, 49, 58, 67, 61, 61, 60, 70, 55, 98, 70, 57, 55, 57, 56, 67, 64, 63, 45, 70, 60, 54, 62, 74, 44, 62, 65, 64, 61, 49, 48, 62, 57, 77, 78, 53, 61, 46, 49, 70, 66, 57, 84, 68, 58, 51, 69, 87, 74, 58, 53, 76, 67, 86, 55, 81, 62, 55, 68, 54, 80, 82, 56, 48, 59, 83, 55, 50, 65, 58, 59, 56, 56, 80, 83, 66, 62, 56, 56, 76, 64, 64, 77, 57, 59, 72, 64, 67, 71, 68, 73, 48, 69, 67, 61, 75, 49, 65, 58, 88, 89, 56, 49, 84, 64, 57, 62, 58, 68, 67, 81, 49, 52, 63, 54, 81, 61, 53, 71, 56, 86, 56, 52, 86, 67, 49, 59, 50, 67, 63, 78, 62, 55, 61, 80, 65, 71, 80, 70, 46, 61, 54, 63, 89, 64, 72, 57, 78, 50, 54, 65, 48, 63, 65, 48, 67, 57, 100, 52, 60, 46, 53, 59, 59, 53, 58, 63, 80, 81, 78, 63, 47, 74, 58, 74, 83, 56, 57, 67, 50, 63, 51, 69, 58, 62, 49, 74, 54, 56, 63, 72, 65, 60, 67, 74, 52, 55, 47, 53, 58, 69, 59, 43, 71, 89, 63, 89, 63, 50, 84, 66, 61, 60, 65, 63, 55, 51, 65, 57, 56, 60, 63, 72, 98, 61, 53, 64, 58, 84, 97, 68, 54, 61, 57, 73, 47, 72, 82, 80, 56, 45, 64, 59, 91, 58, 103, 65, 75, 60, 63, 60, 59, 70, 62, 53, 58, 59, 65, 65, 57, 48, 94, 48, 57, 71, 87, 49, 64, 82, 67, 56, 63, 58, 68, 58, 54, 73, 74, 85, 88, 62, 74, 69, 80, 63, 79, 55, 56, 51, 58, 64, 62, 71, 68, 77, 67, 55, 77, 72, 75, 70, 64, 56, 58, 72, 64, 50, 93, 66, 58, 91, 60, 66, 65, 69, 74, 128, 69, 62, 67, 62, 71, 68, 43, 65, 71, 70, 78, 44, 48, 64, 59, 57, 79, 69, 47, 57, 47, 56, 80, 80, 65, 59, 104, 76, 57, 63, 53, 80, 57, 34, 64, 116, 58, 67, 88, 57, 59, 62, 48, 66, 45, 64, 64, 57, 98, 64, 58, 67, 70, 75, 78, 65, 84, 61, 54, 74, 64, 68, 79, 58, 60, 51, 47, 62, 66, 66, 75, 75, 65, 56, 47, 53, 57, 36, 53, 50, 74, 72, 74, 50, 69, 61, 84, 75, 41, 95, 58, 63, 69, 75, 49, 63, 57, 76, 70, 47, 93, 55, 75, 58, 96, 82, 60, 73, 79, 55, 62, 85, 54, 74, 46, 55, 56, 100, 66, 60, 68, 60, 46, 43, 73, 52, 73, 115, 74, 44, 61, 70, 81, 60, 56, 55, 60, 58, 62, 47, 85, 52, 56, 69, 56, 60, 87, 69, 69, 43, 72, 62, 39, 89, 80, 46, 76, 56, 132, 67, 37, 68, 75, 57, 72, 52, 48, 65, 66, 68, 60, 60, 63, 37, 71, 68, 63, 50, 85, 60, 61, 71, 73, 78, 63, 70, 48, 75, 51, 68, 66, 135, 64, 85, 47, 66, 71, 71, 63, 50, 73, 39, 90, 75, 67, 53, 65, 50, 80, 61, 78, 71, 68, 71, 83, 72, 50, 65, 63, 106, 103, 48, 63, 53, 60, 71, 54, 66, 64, 67, 76, 63, 58, 57, 79, 68, 49, 67, 63, 65, 76, 64, 61, 56, 67, 72, 49, 60, 71, 74, 62, 80, 67, 83, 71, 63, 53, 97, 58, 67, 53, 75, 71, 90, 59, 60, 71, 77, 67, 64, 58, 73, 63, 94, 65, 54, 69, 67, 76, 70, 69, 50, 71, 97, 71, 61, 42, 51, 70, 72, 59, 55, 67, 78, 47, 89, 93, 66, 73, 52, 70, 58, 70, 59, 92, 52, 66, 59, 74, 75, 75, 53, 63, 59, 66, 53, 82, 54, 55, 40, 63, 66, 71, 51, 50, 57, 107, 65, 56, 51, 88, 84, 60, 84, 62, 61, 115, 65, 53, 76, 66, 71, 65, 88, 59, 65, 66, 56, 67, 71, 52, 61, 49, 47, 72, 106, 64, 107, 57, 71, 73, 81, 71, 70, 58, 63, 62, 63, 51, 90, 68, 67, 60, 66, 76, 68, 61, 65, 50, 63, 65, 96, 59, 59, 99, 72, 70, 59, 46, 69, 61, 66, 64, 62, 78, 72, 88, 45, 58, 73, 97, 58, 58, 56, 113, 85, 53, 88, 59, 59, 61, 65, 73, 92, 60, 70, 94, 50, 65, 63, 59, 69, 112, 63, 58, 66, 68, 54, 41, 74, 67, 64, 63, 56, 86, 53, 34, 39, 48, 55, 42, 71, 57, 38, 50, 54, 65, 59, 59, 80, 60, 77, 59, 88, 46, 65, 73, 82, 93, 92, 87, 81, 57, 63, 48, 44, 51, 60, 71, 60, 46, 74, 67, 59, 97, 53, 83, 52, 69, 107, 55, 60, 57, 49, 68, 80, 61, 72, 64, 56, 54, 77, 66, 79, 72, 50, 77, 68, 78, 56, 47, 69, 36, 56, 61, 63, 55, 71, 78, 75, 46, 57, 49, 130, 69, 40, 77, 68, 59, 68, 82, 56, 55, 50, 54, 58, 53, 62, 62, 81, 59, 58, 72, 58, 58, 67, 84, 47, 118, 67, 76, 74, 69, 55, 68, 67, 57, 59, 85, 56, 55, 46, 53, 82, 52, 50, 78, 56, 67, 65, 66, 62, 53, 50, 63, 50, 111, 54, 65, 65, 73, 66, 49, 61, 67, 85, 64, 62, 63, 73, 52, 66, 56, 55, 69, 85, 98, 71, 57, 54, 54, 67, 65, 59, 62, 48, 47, 57, 89, 50, 96, 57, 48, 81, 57, 50, 43, 45, 90, 91, 55, 50, 53, 50, 63, 75, 77, 66, 66, 62, 47, 81, 62, 67, 58, 72, 67, 62, 95, 55, 67, 61, 64, 76, 60, 90, 94, 65, 55, 91, 58, 53, 63, 59, 53, 76, 83, 70, 65, 79, 53, 87, 59, 70, 50, 76, 63, 55, 64, 56, 65, 76, 40, 83, 56, 53, 58, 45, 50, 83, 56, 51, 66, 64, 69, 90, 52, 62, 96, 65, 58, 63, 52, 56, 54, 73, 83, 61, 57, 58, 58, 75, 78, 59, 49, 87, 51, 66, 71, 74, 69, 67, 54, 68, 85, 75, 59, 65, 46, 109, 61, 56, 67, 45, 66, 67, 95, 49, 52, 67, 66, 55, 58, 48, 60, 67, 55, 64, 72, 57, 54, 50, 51, 62, 61, 86, 60, 49, 64, 76, 76, 72, 74, 46, 73, 62, 81, 36, 54, 72, 59, 44, 65, 69, 76, 56, 62, 50, 82, 65, 49, 64, 69, 87, 59, 57, 59, 95, 60, 41, 48, 70, 61, 105, 63, 58, 63, 58, 54, 104, 66, 119, 68, 65, 61, 39, 84, 56, 97, 62, 48, 49, 77, 44, 59, 83, 70, 80, 48, 56, 59, 75, 88, 61, 55, 65, 86, 63, 47, 66, 85, 65, 57, 76, 68, 41, 75, 52, 63, 69, 54, 86, 54, 64, 56, 67, 69, 62, 58, 61, 72, 52, 74, 46, 64, 55, 89, 71, 77, 80, 70, 79, 52, 61, 77, 72, 65, 56, 50, 48, 124, 75, 55, 64, 65, 50, 84, 104, 82, 69, 62, 57, 89, 65, 79, 61, 58, 65, 69, 73, 61, 54, 62, 66, 73, 50, 60, 52, 67, 59, 60, 58, 92, 70, 56, 78, 51, 59, 64, 50, 57, 54, 114, 54, 61, 81, 60, 57, 64, 58, 68, 78, 54, 59, 88, 109, 56, 74, 67, 39, 63, 81, 66, 75, 50, 73, 61, 89, 58, 51, 54, 60, 51, 69, 45, 75, 52, 45, 62, 51, 85, 74, 61, 55, 54, 91, 52, 65, 57, 56, 50, 97, 63, 51, 110, 81, 62, 116, 54, 61, 57, 52, 123, 45, 60, 90, 62, 64, 78, 56, 82, 81, 87, 92, 54, 55, 54, 65, 60, 68, 61, 39, 89, 73, 71, 54, 69, 56, 75, 56, 101, 61, 64, 51, 73, 84, 71, 75, 70, 97, 48, 67, 64, 108, 101, 76, 56, 56, 48, 73, 53, 49, 76, 54, 56, 57, 73, 71, 58, 66, 125, 61, 57, 52, 57, 53, 74, 63, 63, 61, 52, 63, 67, 63, 52, 60, 43, 67, 48, 100, 83, 55, 57, 61, 64, 60, 65, 80, 63, 64, 127, 61, 73, 61, 51, 56, 95, 67, 64, 55, 79, 58, 43, 68, 80, 74, 45, 84, 66, 66, 82, 64, 61, 52, 69, 103, 64, 65, 54, 59, 70, 66, 49, 65, 54, 80, 65, 42, 79, 70, 62, 61, 61, 66, 40, 61, 57, 82, 76, 51, 67, 74, 76, 72, 68, 56, 80, 83, 63, 68, 72, 78, 52, 65, 59, 57, 58, 70, 63, 65, 94, 53, 78, 95, 52, 68, 68, 66, 62, 67, 76, 76, 80, 45, 70, 51, 73, 62, 99, 73, 62, 57, 40, 51, 99, 113, 68, 53, 57, 76, 53, 60, 58, 75, 64, 121, 56, 58, 84, 111, 48, 70, 48, 55, 74, 57, 67, 60, 62, 54, 58, 61, 63, 70, 63, 86, 71, 77, 67, 51, 60, 56, 65, 64, 102, 82, 68, 83, 83, 58, 55, 72, 92, 59, 47, 63, 48, 110, 77, 49, 47, 72, 81, 48, 61, 97, 56, 66, 69, 54, 73, 111, 66, 67, 65, 60, 71, 60, 63, 101, 86, 68, 64, 64, 74, 115, 57, 72, 67, 64, 65, 62, 76, 72, 66, 72, 57, 49, 62, 62, 81, 49, 88, 73, 68, 66, 52, 63, 54, 54, 37, 57, 56, 61, 63, 79, 93, 56, 67, 110, 55, 71, 62, 67, 64, 56, 57, 51, 56, 74, 70, 54, 81, 67, 53, 68, 70, 62, 76, 89, 43, 65, 60, 50, 65, 69, 56, 56, 54, 68, 65, 76, 49, 64, 74, 67, 53, 76, 62, 64, 62, 67, 89, 61, 74, 55, 64, 83, 49, 79, 62, 53, 98, 55, 73, 57, 63, 71, 85, 57, 59, 69, 70, 63, 57, 48, 74, 72, 88, 86, 77, 50, 51, 76, 62, 61, 74, 72, 55, 63, 56, 88, 62, 101, 83, 70, 72, 68, 63, 73, 54, 87, 60, 69, 56, 64, 77, 69, 52, 57, 72, 60, 60, 59, 64, 130, 72, 72, 64, 71, 84, 62, 73, 58, 68, 70, 68, 50, 79, 53, 71, 86, 72, 59, 77, 59, 46, 88, 80, 80, 57, 60, 66, 70, 92, 111, 59, 50, 72, 54, 46, 76, 62, 61, 67, 52, 64, 65, 85, 55, 45, 41, 68, 65, 80, 68, 53, 62, 89, 62, 80, 43, 80, 82, 61, 61, 66, 91, 78, 54, 87, 95, 69, 71, 82, 92, 89, 60, 78, 66, 68, 55, 61, 53, 70, 54, 46, 63, 59, 38, 105, 47, 51, 59, 71, 69, 74, 65, 59, 72, 65, 62, 63, 70, 106, 67, 48, 89, 56, 65, 99, 91, 52, 71, 58, 57, 100, 62, 70, 73, 60, 78, 87, 69, 68, 71, 55, 83, 68, 69, 68, 55, 61, 48, 69, 63, 64, 62, 70, 58, 58, 67, 69, 76, 79, 76, 58, 75, 66, 56, 56, 54, 66, 68, 82, 82, 68, 74, 74, 43, 62, 63, 61, 58, 69, 62, 66, 59, 77, 92, 44, 61, 51, 64, 57, 70, 64, 53, 75, 44, 74, 55, 59, 91, 47, 59, 76, 124, 63, 44, 90, 63, 52, 52, 73, 59, 56, 57, 62, 57, 56, 58, 52, 57, 78, 74, 63, 69, 57, 79, 66, 66, 55, 78, 94, 71, 54, 61, 69, 79, 94, 56, 65, 63, 54, 67, 67, 61, 68, 68, 55, 75, 40, 47, 57, 68, 62, 68, 50, 57, 72, 66, 77, 51, 72, 56, 91, 56, 75, 57, 65, 63, 49, 57, 75, 66, 86, 64, 62, 96, 67, 87, 48, 47, 64, 46, 77, 65, 81, 82, 64, 68, 59, 64, 48, 55, 57, 79, 58, 58, 67, 65, 77, 60, 58, 70, 71, 56, 59, 77, 93, 49, 53, 50, 58, 36, 58, 68, 93, 69, 80, 60, 56, 67, 83, 77, 58, 63, 71, 63, 64, 75, 58, 55, 60, 65, 73, 66, 60, 56, 67, 60, 62, 57, 63, 63, 53, 75, 135, 73, 56, 57, 70, 88, 60, 32, 87, 79, 75, 52, 66, 63, 89, 103, 65, 95, 64, 95, 56, 64, 63, 60, 66, 74, 54, 69, 75, 79, 90, 39, 78, 43, 67, 76, 90, 59, 93, 63, 49, 68, 99, 57, 53, 58, 71, 69, 72, 81, 65, 88, 57, 78, 77, 79, 82, 79, 64, 62, 50, 65, 117, 93, 64, 51, 58, 72, 57, 82, 55, 72, 59, 68, 60, 64, 58, 63, 51, 61, 64, 61, 55, 82, 58, 67, 65, 87, 61, 76, 59, 74, 63, 83, 74, 57, 66, 70, 63, 51, 63, 90, 54, 54, 37, 45, 70, 59, 67, 57, 61, 95, 51, 67, 53, 57, 48, 54, 73, 72, 69, 55, 99, 59, 74, 58, 82, 73, 65, 74, 67, 43, 57, 88, 47, 57, 66, 60, 67, 47, 47, 71, 63, 55, 69, 57, 52, 55, 85, 77, 73, 72, 109, 71, 72, 70, 70, 44, 71, 63, 56, 70, 76, 60, 77, 67, 84, 70, 65, 69, 51, 68, 58, 58, 65, 75, 69, 61, 74, 63, 53, 83, 66, 83, 63, 73, 55, 49, 68, 59, 43, 70, 75, 65, 64, 68, 70, 79, 56, 64, 55, 76, 54, 85, 43, 66, 62, 80, 56, 50, 82, 55, 59, 66, 49, 64, 70, 66, 60, 55, 67, 40, 59, 57, 68, 52, 58, 54, 62, 49, 69, 73, 52, 63, 74, 81, 71, 62, 54, 74, 69, 68, 63, 52, 58, 55, 65, 67, 70, 66, 65, 78, 59, 69, 68, 77, 59, 64, 83, 45, 46, 66, 72, 90, 72, 75, 64, 61, 68, 41, 45, 47, 63, 66, 54, 62, 70, 61, 58, 69, 69, 39, 38, 74, 65, 66, 54, 37, 77, 68, 58, 47, 63, 90, 53, 59, 68, 47, 49, 48, 64, 62, 63, 47, 76, 43, 51, 72, 51, 63, 53, 66, 63, 75, 47, 60, 64, 60, 57, 60, 66, 75, 59, 60, 41, 58, 53, 57, 70, 58, 73, 77, 72, 71, 59, 56, 61, 81, 96, 81, 63, 64, 65, 60, 56, 65, 54, 62, 68, 56, 60, 58, 59, 61, 61, 63, 86, 59, 58, 52, 63, 61, 66, 65, 56, 74, 46, 70, 65, 100, 69, 71, 55, 64, 63, 80, 62, 62, 60, 79, 66, 59, 55, 67, 70, 51, 118, 81, 75, 48, 55, 62, 101, 103, 57, 68, 59, 65, 92, 63, 91, 77, 73, 78, 58, 71, 58, 61, 50, 54, 57, 84, 72, 53, 54, 71, 65, 56, 62, 69, 53, 63, 61, 66, 64, 59, 65, 57, 58, 65, 58, 63, 71, 71, 51, 55, 53, 60, 67, 66, 61, 60, 54, 79, 69, 65, 65, 61, 67, 61, 51, 62, 74, 50, 67, 60, 65, 54, 68, 72, 49, 52, 67, 52, 69, 62, 56, 66, 63, 60, 64, 61, 62, 48, 70, 49, 76, 80, 63, 58, 58, 126, 50, 57, 62, 51, 60, 78, 70, 61, 62, 96, 75, 64, 49, 62, 66, 61, 58, 65, 83, 64, 57, 62, 63, 66, 65, 57, 58, 84, 66, 64, 51, 71, 45, 61, 60, 46, 60, 55, 60, 71, 76, 87, 67, 62, 58, 65, 115, 54, 71, 59, 59, 87, 87, 58, 62, 65, 66, 54, 58, 58, 55, 71, 114, 54, 81, 121, 55, 66, 57, 56, 68, 70, 49, 75, 78, 53, 51, 44, 81, 107, 56, 84, 69, 68, 63, 53, 74, 68, 69, 57, 62, 68, 62, 63, 59, 59, 58, 50, 71, 67, 51, 77, 60, 66, 55, 65, 58, 53, 82, 67, 57, 60, 94, 68, 70, 63, 63, 74, 66, 77, 66, 61, 84, 67, 76, 65, 80, 70, 58, 57, 65, 65, 56, 53, 63, 60, 60, 92, 68, 71, 60, 56, 68, 55, 64, 54, 58, 69, 58, 62, 56, 57, 56, 63, 58, 51, 78, 60, 42, 58, 61, 48, 58, 111, 44, 94, 89, 58, 74, 58, 51, 62, 70, 63, 66, 71, 72, 79, 61, 64, 56, 78, 92, 72, 81, 66, 65, 64, 60, 63, 55, 61, 58, 60, 72, 88, 71, 79, 83, 70, 72, 55, 57, 66, 63, 92, 72, 66, 62, 54, 76, 80, 59, 56, 52, 52, 60, 55, 64, 100, 61, 64, 50, 67, 80, 60, 92, 62, 57, 57, 58, 57, 92, 55, 51, 66, 78, 53, 60, 75, 59, 101, 81, 109, 53, 63, 68, 82, 68, 55, 65, 56, 72, 55, 67, 66, 64, 67, 105, 85, 58, 68, 83, 58, 69, 66, 61, 60, 67, 49, 53, 72, 70, 61, 75, 67, 67, 63, 57, 67, 60, 65, 69, 62, 82, 56, 59, 62, 75, 62, 54, 75, 96, 69, 82, 68, 67, 53, 68, 64, 61, 79, 51, 66, 95, 51, 68, 58, 64, 63, 57, 60, 79, 87, 82, 70, 70, 57, 57, 64, 77, 86, 60, 69, 54, 67, 57, 60, 63, 67, 77, 58, 58, 67, 60, 60, 70, 64, 77, 62, 64, 53, 69, 94, 58, 68, 83, 62, 103, 59, 64, 56, 64, 51, 54, 73, 56, 62, 55, 69, 73, 58, 60, 68, 58, 59, 47, 83, 75, 70, 59, 68, 57, 48, 86, 62, 67, 60, 58, 57, 52, 65, 65, 93, 80, 68, 66, 81, 64, 68, 58, 60, 61, 72, 73, 63, 72, 54, 71, 56, 74, 112, 55, 111, 85, 67, 66, 66, 90, 58, 59, 67, 48, 43, 70, 60, 86, 64, 83, 78, 67, 55, 51, 63, 89, 77, 56, 57, 67, 79, 73, 66, 62, 71, 87, 60, 53, 61, 63, 69, 73, 77, 60, 77, 88, 65, 56, 65, 48, 67, 62, 60, 60, 55, 73, 52, 55, 59, 60, 67, 106, 60, 61, 52, 74, 70, 65, 93, 65, 69, 50, 57, 68, 52, 64, 80, 59, 80, 56, 57, 76, 66, 74, 73, 69, 57, 69, 59, 58, 60, 61, 60, 57, 65, 78, 65, 57, 61, 56, 66, 90, 74, 64, 58, 61, 72, 61, 61, 64, 65, 57, 76, 91, 87, 88, 50, 57, 56, 62, 92, 77, 73, 67, 59, 75, 59, 61, 65, 76, 56, 64, 81, 73, 57, 72, 54, 90, 68, 68, 54, 82, 52, 108, 56, 54, 77, 80, 53, 64, 65, 54, 96, 63, 67, 69, 56, 89, 69, 61, 98, 62, 69, 65, 74, 69, 49, 55, 61, 58, 59, 82, 53, 90, 52, 73, 92, 52, 79, 80, 76, 64, 58, 55, 63, 66, 56, 65, 57, 59, 73, 69, 79, 54, 87, 67, 76, 67, 61, 56, 62, 71, 63, 60, 66, 108, 80, 61, 62, 68, 55, 60, 59, 67, 61, 46, 53, 62, 57, 57, 69, 54, 56, 57, 74, 74, 65, 75, 62, 67, 80, 51, 74, 52, 61, 75, 76, 63, 56, 51, 58, 64, 80, 65, 67, 69, 85, 61, 73, 78, 63, 68, 52, 60, 64, 50, 65, 61, 61, 66, 66, 72, 65, 58, 53, 98, 49, 71, 71, 97, 54, 53, 72, 66, 63, 73, 84, 59, 56, 56, 68, 72, 78, 71, 81, 52, 64, 58, 63, 67, 54, 84, 55, 66, 59, 102, 75, 59, 59, 72, 62, 69, 73, 64, 50, 69, 65, 49, 61, 61, 46, 58, 60, 51, 93, 40, 75, 62, 62, 73, 59, 52, 67, 80, 62, 57, 77, 64, 53, 72, 64, 63, 81, 47, 53, 54, 81, 83, 51, 97, 70, 84, 65, 71, 61, 63, 76, 43, 54, 52, 61, 66, 61, 90, 64, 69, 60, 63, 77, 57, 67, 51, 59, 90, 59, 68, 52, 64, 57, 68, 64, 62, 65, 57, 58, 48, 59, 59, 64, 50, 71, 56, 68, 76, 60, 65, 56, 58, 69, 46, 74, 63, 61, 64, 60, 65, 76, 54, 65, 57, 74, 72, 94, 51, 60, 52, 73, 67, 56, 60, 64, 62, 55, 84, 64, 60, 56, 60, 65, 90, 69, 68, 46, 70, 60, 42, 63, 56, 62, 62, 60, 79, 64, 63, 55, 49, 63, 69, 53, 61, 55, 51, 62, 67, 62, 62, 58, 58, 80, 60, 62, 60, 64, 56, 71, 55, 70, 48, 78, 62, 50, 73, 59, 63, 74, 87, 72, 58, 52, 65, 76, 61, 78, 71, 75, 73, 48, 54, 50, 54, 64, 92, 65, 63, 71, 58, 64, 60, 67, 66, 60, 62, 58, 51, 60, 65, 68, 51, 79, 58, 69, 61, 67, 60, 68, 59, 81, 60, 74, 77, 66, 60, 113, 70, 54, 63, 58, 76, 62, 63, 65, 61, 63, 53, 53, 53, 58, 63, 51, 58, 84, 74, 49, 58, 55, 69, 94, 55, 54, 83, 62, 61, 64, 58, 73, 57, 49, 60, 53, 76, 69, 39, 65, 54, 61, 61, 59, 62, 72, 90, 56, 102, 73, 72, 74, 49, 89, 67, 74, 62, 71, 76, 71, 47, 73, 51, 69, 97, 61, 66, 76, 61, 58, 77, 64, 52, 61, 39, 59, 54, 58, 59, 53, 61, 56, 54, 83, 55, 73, 91, 87, 57, 59, 52, 63, 53, 55, 59, 63, 55, 51, 60, 50, 44, 84, 54, 58, 58, 61, 74, 89, 71, 71, 85, 80, 61, 64, 69, 63, 72, 80, 74, 64, 64, 58, 59, 57, 58, 80, 79, 102, 55, 77, 66, 70, 76, 72, 65, 67, 70, 44, 61, 48, 67, 52, 64, 47, 55, 60, 105, 67, 73, 80, 45, 56, 57, 109, 60, 64, 78, 63, 131, 46, 56, 57, 66, 63, 72, 62, 68, 61, 77, 68, 48, 72, 80, 64, 63, 63, 50, 69, 57, 73, 77, 52, 69, 59, 69, 83, 63, 65, 61, 72, 69, 115, 62, 95, 60, 53, 57, 59, 84, 61, 50, 45, 93, 72, 56, 58, 62, 69, 77, 62, 47, 73, 50, 56, 70, 73, 72, 65, 67, 111, 96, 56, 55, 59, 67, 62, 58, 55, 67, 57, 67, 75, 65, 60, 62, 53, 54, 58, 63, 58, 61, 58, 58, 58, 76, 72, 65, 59, 80, 60, 54, 72, 60, 74, 131, 52, 53, 68, 128, 59, 45, 66, 58, 66, 38, 76, 60, 78, 60, 75, 66, 73, 71, 64, 65, 75, 58, 53, 57, 73, 70, 73, 64, 98, 89, 71, 52, 64, 68, 73, 77, 57, 66, 78, 68, 50, 59, 72, 66, 70, 51, 54, 50, 58, 54, 61, 83, 64, 64, 77, 61, 62, 71, 74, 52, 70, 78, 62, 63, 60, 64, 59, 59, 57, 53, 46, 98, 75, 61, 66, 65, 113, 73, 54, 67, 68, 108, 69, 74, 64, 69, 73, 64, 58, 69, 67, 67, 77, 78, 72, 60, 96, 60, 60, 68, 66, 68, 44, 59, 86, 112, 71, 66, 58, 63, 63, 94, 62, 63, 56, 83, 67, 65, 66, 67, 69, 53, 87, 67, 55, 55, 69, 52, 58, 83, 62, 73, 63, 55, 70, 57, 57, 65, 68, 78, 73, 86, 71, 63, 65, 80, 45, 57, 73, 88, 60, 68, 56, 62, 54, 66, 57, 73, 123, 46, 43, 79, 58, 64, 61, 59, 63, 70, 65, 61, 85, 83, 59, 59, 56, 59, 68, 64, 60, 62, 64, 79, 52, 69, 51, 70, 67, 64, 45, 73, 66, 59, 59, 53, 83, 51, 69, 68, 68, 54, 97, 56, 80, 77, 80, 93, 70, 60, 56, 70, 99, 54, 57, 88, 72, 46, 61, 64, 63, 70, 61, 61, 68, 59, 95, 73, 70, 49, 59, 75, 77, 76, 75, 68, 72, 55, 58, 56, 62, 39, 92, 51, 64, 60, 67, 68, 72, 63, 47, 75, 55, 60, 70, 71, 78, 74, 62, 59, 103, 65, 50, 70, 54, 56, 70, 100, 68, 60, 53, 58, 71, 54, 69, 55, 85, 55, 54, 81, 57, 42, 70, 68, 72, 70, 65, 67, 58, 58, 64, 53, 63, 81, 55, 89, 62, 68, 63, 57, 60, 69, 58, 85, 74, 75, 78, 55, 62, 72, 78, 56, 93, 100, 59, 66, 74, 84, 61, 64, 54, 59, 56, 66, 52, 62, 68, 58, 85, 63, 66, 60, 61, 77, 43, 61, 54, 51, 68, 64, 69, 104, 63, 74, 67, 75, 68, 40, 68, 63, 84, 59, 65, 76, 59, 69, 57, 49, 61, 67, 76, 64, 64, 47, 59, 74, 54, 60, 52, 50, 64, 57, 85, 56, 55, 62, 55, 63, 58, 70, 54, 91, 69, 68, 50, 72, 59, 52, 71, 56, 76, 67, 33, 50, 65, 71, 69, 60, 89, 64, 67, 45, 70, 60, 56, 44, 61, 51, 47, 62, 92, 63, 62, 66, 60, 63, 56, 64, 63, 57, 70, 74, 70, 55, 63, 70, 69, 58, 55, 73, 77, 99, 56, 81, 58, 54, 66, 46, 62, 87, 55, 72, 74, 53, 67, 59, 61, 102, 67, 52, 41, 66, 61, 57, 49, 67, 81, 81, 61, 58, 53, 56, 74, 90, 56, 50, 54, 57, 82, 71, 52, 65, 55, 67, 86, 69, 65, 74, 73, 65, 63, 68, 74, 71, 77, 53, 58, 58, 55, 79, 62, 62, 82, 71, 95, 68, 64, 65, 57, 68, 60, 53, 67, 62, 59, 64, 57, 46, 69, 58, 66, 61, 81, 53, 68, 78, 47, 58, 54, 58, 88, 54, 59, 53, 65, 48, 102, 83, 116, 65, 79, 63, 59, 85, 63, 59, 43, 65, 56, 68, 75, 72, 62, 61, 86, 80, 59, 50, 62, 67, 80, 59, 58, 60, 60, 50, 64, 77, 63, 92, 88, 69, 90, 57, 43, 69, 58, 67, 97, 82, 65, 71, 78, 74, 64, 63, 54, 58, 73, 67, 61, 48, 62, 66, 86, 63, 58, 55, 66, 72, 62, 75, 73, 66, 66, 67, 65, 87, 68, 67, 68, 51, 58, 60, 98, 71, 74, 59, 49, 95, 64, 76, 53, 72, 70, 63, 82, 54, 64, 51, 91, 60, 57, 36, 55, 72, 71, 55, 55, 98, 71, 71, 57, 63, 69, 71, 57, 62, 73, 82, 67, 49, 57, 67, 64, 54, 84, 55, 64, 91, 63, 67, 100, 66, 68, 74, 63, 63, 100, 79, 79, 61, 49, 63, 87, 74, 70, 56, 70, 60, 70, 56, 66, 62, 58, 70, 62, 84, 65, 80, 85, 57, 82, 44, 73, 51, 56, 67, 66, 56, 49, 56, 71, 61, 114, 58, 84, 66, 62, 96, 62, 67, 55, 63, 68, 61, 66, 55, 66, 94, 67, 56, 55, 63, 55, 61, 82, 89, 84, 87, 88, 49, 63, 56, 65, 61, 79, 92, 65, 53, 64, 59, 68, 73, 75, 55, 54, 51, 58, 73, 63, 80, 98, 48, 70, 57, 58, 67, 55, 60, 67, 91, 64, 62, 86, 83, 59, 62, 65, 61, 77, 63, 55, 56, 60, 60, 69, 62, 50, 76, 57, 40, 73, 52, 63, 92, 92, 74, 65, 100, 62, 69, 49, 63, 59, 76, 71, 57, 67, 75, 72, 105, 70, 61, 52, 69, 60, 59, 77, 55, 66, 51, 69, 66, 80, 99, 39, 62, 57, 66, 65, 71, 71, 79, 64, 64, 78, 72, 55, 93, 85, 75, 45, 69, 65, 68, 61, 42, 97, 64, 59, 91, 73, 72, 64, 65, 92, 61, 50, 52, 68, 64, 59, 57, 62, 42, 59, 65, 65, 79, 53, 50, 73, 74, 66, 66, 62, 65, 71, 66, 71, 68, 65, 65, 69, 68, 62, 49, 67, 73, 42, 78, 71, 63, 46, 65, 65, 73, 55, 60, 96, 63, 55, 52, 53, 62, 57, 73, 41, 53, 66, 54, 59, 54, 93, 44, 76, 61, 80, 69, 62, 68, 100, 84, 70, 61, 48, 51, 71, 62, 85, 67, 59, 55, 85, 57, 112, 67, 46, 81, 36, 52, 62, 71, 61, 80, 51, 71, 55, 54, 58, 71, 63, 63, 58, 67, 56, 72, 66, 64, 58, 61, 68, 60, 50, 77, 41, 102, 53, 81, 46, 55, 73, 64, 58, 49, 57, 62, 81, 67, 63, 57, 85, 62, 61, 74, 61, 62, 64, 74, 54, 58, 70, 101, 55, 55, 44, 53, 66, 69, 62, 52, 67, 52, 67, 82, 53, 60, 56, 60, 86, 64, 66, 62, 66, 66, 77, 67, 56, 64, 85, 57, 76, 57, 57, 73, 62, 60, 60, 73, 61, 62, 64, 47, 54, 72, 68, 164, 63, 57, 56, 68, 63, 55, 65, 67, 65, 62, 102, 46, 48, 84, 59, 70, 54, 86, 73, 56, 57, 61, 68, 67, 49, 59, 78, 62, 69, 59, 52, 59, 65, 73, 61, 76, 90, 79, 66, 68, 59, 56, 67, 53, 48, 73, 50, 66, 58, 44, 51, 61, 53, 65, 48, 79, 56, 63, 58, 66, 67, 72, 91, 75, 64, 60, 54, 63, 56, 66, 56, 74, 72, 90, 70, 51, 61, 85, 63, 73, 45, 66, 92, 65, 82, 70, 80, 60, 77, 92, 60, 58, 53, 79, 77, 68, 88, 88, 46, 50, 50, 91, 78, 61, 72, 64, 85, 53, 82, 64, 66, 70, 65, 59, 88, 58, 61, 72, 77, 77, 51, 62, 53, 55, 67, 53, 54, 56, 75, 55, 46, 64, 75, 90, 68, 55, 68, 65, 68, 82, 56, 74, 93, 73, 64, 51, 88, 63, 65, 76, 84, 61, 61, 55, 106, 68, 54, 64, 76, 71, 42, 59, 69, 91, 87, 73, 89, 62, 89, 109, 56, 54, 50, 69, 67, 50, 56, 34, 61, 64, 60, 63, 65, 64, 65, 47, 100, 87, 76, 88, 77, 66, 55, 94, 64, 61, 73, 51, 67, 53, 56, 65, 61, 66, 42, 68, 43, 66, 56, 67, 56, 52, 63, 72, 67, 60, 69, 70, 67, 63, 74, 55, 65, 56, 66, 62, 53, 69, 65, 63, 59, 64, 54, 58, 63, 48, 56, 60, 45, 91, 47, 62, 75, 82, 74, 76, 72, 84, 84, 68, 53, 57, 46, 68, 64, 69, 47, 74, 64, 75, 63, 61, 68, 68, 63, 62, 147, 68, 52, 63, 54, 66, 56, 64, 45, 53, 59, 68, 58, 70, 60, 54, 91, 60, 68, 60, 62, 66, 75, 63, 54, 51, 64, 58, 74, 55, 69, 59, 60, 76, 68, 73, 55, 74, 55, 56, 63, 67, 79, 73, 56, 77, 85, 50, 64, 53, 72, 60, 82, 56, 57, 53, 59, 55, 59, 43, 56, 66, 72, 68, 61, 71, 66, 57, 55, 56, 68, 65, 57, 76, 93, 71, 97, 44, 72, 69, 47, 56, 51, 61, 68, 75, 56, 74, 67, 60, 96, 93, 40, 74, 59, 78, 69, 51, 50, 81, 64, 73, 73, 89, 46, 47, 73, 84, 86, 95, 51, 61, 74, 56, 72, 64, 67, 55, 42, 72, 81, 66, 47, 64, 67, 71, 58, 63, 57, 73, 102, 65, 85, 61, 101, 86, 68, 57, 59, 42, 70, 80, 60, 61, 70, 70, 60, 87, 54, 61, 80, 67, 55, 69, 91, 56, 67, 60, 70, 59, 66, 50, 80, 73, 85, 74, 70, 51, 59, 60, 80, 103, 68, 49, 68, 66, 71, 54, 72, 124, 45, 59, 73, 86, 65, 61, 60, 57, 53, 69, 88, 68, 50, 77, 91, 57, 54, 58, 93, 53, 63, 81, 39, 78, 61, 84, 61, 63, 63, 66, 79, 63, 57, 72, 77, 59, 80, 63, 65, 98, 65, 58, 52, 60, 89, 70, 85, 84, 79, 63, 69, 62, 67, 72, 102, 70, 57, 62, 52, 56, 76, 69, 80, 66, 58, 51, 64, 68, 88, 78, 67, 64, 55, 55, 58, 64, 79, 59, 70, 52, 83, 73, 76, 70, 69, 69, 65, 74, 75, 53, 71, 63, 63, 57, 97, 72, 71, 66, 70, 83, 57, 61, 70, 56, 51, 59, 50, 56, 74, 75, 83, 68, 49, 90, 74, 71, 60, 79, 57, 55, 55, 47, 61, 62, 49, 57, 70, 60, 88, 68, 65, 52, 87, 73, 70, 66, 49, 81, 68, 57, 77, 56, 58, 83, 104, 54, 58, 81, 81, 83, 79, 70, 113, 66, 47, 62, 57, 75, 74, 58, 60, 75, 86, 72, 61, 72, 58, 63, 50, 92, 71, 100, 48, 56, 77, 72, 42, 67, 64, 72, 57, 66, 58, 65, 57, 63, 80, 55, 66, 80, 62, 67, 64, 57, 66, 66, 80, 57, 56, 73, 66, 77, 68, 58, 48, 51, 70, 73, 66, 64, 54, 67, 51, 76, 50, 63, 65, 54, 82, 56, 52, 44, 63, 48, 65, 44, 54, 67, 66, 46, 68, 58, 65, 61, 61, 93, 57, 70, 55, 55, 74, 60, 82, 104, 61, 66, 74, 62, 84, 62, 74, 73, 64, 54, 87, 57, 70, 82, 51, 61, 85, 52, 66, 54, 61, 73, 76, 68, 59, 57, 54, 67, 63, 66, 67, 65, 65, 64, 95, 89, 66, 49, 76, 64, 73, 95, 78, 62, 51, 63, 72, 64, 82, 68, 86, 66, 112, 63, 63, 71, 69, 81, 58, 82, 71, 80, 64, 47, 57, 65, 60, 96, 72, 54, 60, 70, 54, 54, 58, 63, 81, 58, 67, 60, 60, 61, 55, 58, 57, 62, 58, 67, 53, 61, 69, 68, 65, 53, 55, 73, 67, 55, 48, 58, 59, 77, 61, 62, 82, 59, 44, 69, 51, 78, 67, 65, 56, 63, 80, 55, 62, 51, 63, 73, 59, 79, 78, 65, 54, 99, 60, 68, 66, 68, 64, 47, 67, 51, 66, 69, 65, 63, 63, 62, 101, 71, 57, 65, 73, 58, 66, 80, 64, 63, 53, 70, 73, 59, 61, 54, 62, 56, 65, 57, 86, 52, 69, 66, 57, 55, 62, 49, 76, 113, 55, 58, 65, 45, 49, 49, 51, 51, 64, 68, 64, 67, 56, 61, 54, 80, 55, 52, 73, 59, 57, 66, 67, 52, 55, 92, 60, 64, 49, 51, 86, 74, 75, 62, 55, 64, 84, 64, 65, 62, 55, 57, 79, 50, 94, 56, 76, 83, 97, 91, 62, 73, 67, 70, 52, 57, 73, 74, 62, 56, 66, 64, 62, 58, 59, 61, 51, 57, 59, 96, 54, 65, 54, 52, 65, 57, 73, 76, 69, 59, 60, 57, 53, 77, 74, 53, 59, 50, 65, 52, 51, 60, 65, 92, 62, 59, 61, 58, 61, 65, 66, 65, 66, 58, 54, 54, 70, 66, 90, 64, 60, 80, 62, 57, 72, 73, 66, 70, 58, 68, 75, 58, 63, 66, 61, 73, 80, 40, 69, 72, 86, 100, 93, 61, 50, 55, 60, 77, 69, 58, 68, 73, 76, 70, 70, 45, 67, 70, 63, 62, 48, 67, 66, 73, 62, 68, 66, 54, 60, 63, 55, 59, 64, 147, 61, 63, 66, 62, 57, 60, 67, 62, 71, 70, 85, 74, 63, 48, 66, 65, 58, 82, 67, 64, 74, 81, 63, 72, 63, 61, 72, 72, 53, 69, 65, 104, 75, 67, 70, 63, 69, 61, 58, 72, 51, 57, 68, 61, 59, 88, 81, 73, 57, 90, 60, 68, 48, 69, 63, 47, 57, 67, 58, 74, 55, 68, 77, 70, 56, 61, 61, 61, 75, 82, 64, 47, 57, 78, 64, 70, 69, 61, 65, 56, 50, 66, 65, 58, 75, 67, 67, 88, 50, 84, 62, 60, 65, 59, 70, 68, 57, 98, 77, 68, 59, 63, 69, 62, 68, 55, 67, 57, 64, 66, 60, 61, 76, 88, 104, 52, 60, 74, 70, 101, 58, 82, 82, 53, 66, 60, 51, 63, 77, 74, 62, 61, 62, 81, 64, 56, 60, 78, 57, 61, 84, 63, 114, 74, 64, 51, 76, 96, 54, 82, 70, 62, 57, 83, 94, 69, 66, 74, 61, 58, 61, 52, 52, 62, 52, 75, 60, 68, 47, 123, 68, 80, 71, 74, 63, 91, 59, 65, 59, 107, 74, 54, 58, 63, 70, 58, 120, 56, 90, 79, 65, 41, 57, 60, 65, 77, 64, 53, 54, 62, 61, 62, 73, 55, 80, 65, 61, 72, 55, 67, 53, 55, 65, 55, 67, 57, 64, 66, 51, 56, 74, 56, 53, 61, 59, 69, 68, 54, 63, 68, 54, 66, 58, 65, 53, 59, 67, 66, 60, 52, 56, 65, 75, 64, 73, 87, 54, 84, 75, 67, 69, 53, 72, 56, 54, 61, 60, 72, 75, 63, 67, 57, 86, 74, 65, 88, 121, 66, 88, 77, 70, 60, 85, 55, 50, 53, 59, 86, 68, 68, 68, 65, 62, 53, 76, 55, 68, 52, 81, 85, 53, 63, 59, 62, 68, 59, 54, 85, 78, 61, 67, 62, 58, 68, 61, 67, 59, 74, 47, 60, 64, 97, 57, 66, 66, 50, 54, 59, 54, 69, 59, 47, 62, 53, 64, 70, 52, 82, 82, 71, 57, 72, 62, 52, 65, 58, 53, 64, 55, 107, 55, 59, 55, 73, 80, 56, 62, 72, 67, 64, 57, 64, 64, 90, 69, 95, 100, 71, 77, 73, 70, 88, 47, 57, 58, 61, 75, 50, 93, 75, 63, 64, 64, 69, 67, 96, 55, 72, 68, 88, 57, 75, 62, 59, 105, 66, 76, 56, 53, 59, 66, 59, 66, 59, 75, 52, 69, 52, 73, 57, 69, 73, 66, 63, 65, 67, 61, 107, 57, 73, 78, 72, 79, 95, 73, 56, 66, 74, 70, 62, 78, 52, 70, 82, 59, 58, 58, 62, 95, 50, 94, 70, 50, 57, 63, 67, 71, 46, 74, 68, 48, 55, 92, 52, 62, 105, 62, 67, 95, 67, 68, 66, 47, 56, 67, 60, 68, 47, 47, 55, 72, 55, 51, 73, 64, 62, 60, 51, 63, 65, 65, 77, 61, 88, 59, 74, 42, 72, 72, 51, 62, 60, 79, 93, 79, 103, 45, 65, 77, 54, 81, 70, 69, 63, 105, 58, 73, 66, 64, 50, 62, 47, 77, 52, 56, 70, 92, 66, 47, 46, 62, 79, 63, 59, 81, 65, 64, 56, 61, 67, 49, 67, 56, 87, 68, 67, 66, 52, 66, 81, 61, 81, 49, 96, 57, 52, 62, 67, 58, 65, 85, 78, 65, 66, 70, 45, 59, 71, 64, 68, 64, 51, 71, 64, 90, 73, 70, 70, 61, 94, 76, 81, 83, 55, 69, 57, 62, 50, 55, 58, 58, 53, 56, 64, 39, 57, 57, 46, 58, 59, 68, 61, 55, 102, 59, 69, 63, 90, 60, 59, 113, 74, 64, 67, 64, 85, 59, 61, 91, 48, 53, 64, 67, 90, 68, 70, 69, 97, 72, 63, 77, 56, 60, 56, 63, 77, 64, 60, 45, 60, 44, 80, 70, 56, 67, 54, 62, 65, 78, 68, 73, 68, 57, 87, 73, 69, 45, 37, 76, 46, 65, 61, 59, 58, 60, 77, 68, 71, 52, 63, 55, 45, 70, 63, 71, 72, 66, 54, 68, 61, 63, 60, 58, 61, 58, 55, 46, 55, 68, 61, 59, 52, 59, 63, 65, 63, 63, 75, 59, 58, 59, 79, 58, 55, 68, 64, 61, 61, 63, 83, 59, 75, 68, 54, 70, 86, 56, 66, 58, 59, 100, 60, 61, 51, 63, 61, 71, 64, 59, 62, 66, 89, 61, 93, 47, 75, 60, 58, 67, 66, 63, 50, 81, 98, 90, 54, 56, 67, 66, 75, 66, 69, 75, 68, 68, 52, 63, 50, 48, 88, 81, 64, 66, 59, 60, 36, 74, 68, 92, 73, 85, 61, 74, 48, 64, 68, 80, 86, 91, 80, 79, 72, 76, 84, 82, 59, 72, 76, 50, 50, 68, 77, 70, 57, 58, 69, 45, 56, 47, 52, 53, 81, 82, 70, 61, 75, 75, 65, 63, 85, 67, 72, 83, 73, 71, 61, 105, 56, 58, 41, 59, 50, 51, 60, 78, 58, 54, 57, 74, 58, 67, 75, 60, 68, 61, 65, 60, 68, 82, 64, 52, 60, 58, 54, 56, 90, 75, 63, 55, 59, 48, 45, 42, 72, 107, 101, 55, 66, 94, 64, 62, 81, 65, 44, 73, 68, 65, 65, 70, 66, 57, 77, 62, 67, 64, 92, 66, 67, 57, 46, 52, 53, 71, 54, 45, 63, 62, 68, 62, 65, 80, 53, 46, 65, 51, 48, 75, 89, 59, 87, 63, 87, 68, 50, 64, 62, 60, 55, 54, 58, 73, 101, 65, 58, 49, 63, 47, 64, 68, 43, 77, 45, 78, 54, 70, 66, 52, 47, 54, 117, 74, 54, 74, 73, 59, 80, 75, 75, 57, 66, 66, 74, 75, 65, 84, 77, 64, 71, 64, 70, 51, 46, 62, 79, 56, 93, 69, 62, 63, 57, 52, 49, 126, 71, 54, 74, 64, 44, 63, 61, 64, 63, 64, 71, 81, 61, 52, 89, 64, 66, 57, 52, 47, 45, 84, 69, 65, 56, 100, 68, 56, 104, 63, 51, 57, 50, 42, 70, 73, 82, 51, 59, 60, 57, 56, 83, 64, 48, 70, 63, 63, 81, 49, 55, 52, 65, 83, 89, 38, 58, 89, 64, 65, 62, 41, 64, 59, 68, 79, 43, 66, 68, 49, 67, 61, 55, 58, 67, 96, 50, 58, 79, 72, 143, 57, 58, 85, 55, 56, 72, 68, 99, 65, 51, 114, 95, 49, 69, 57, 79, 60, 63, 57, 57, 52, 67, 42, 73, 71, 73, 77, 74, 63, 65, 66, 55, 72, 68, 61, 68, 111, 49, 78, 60, 65, 64, 78, 51, 65, 83, 51, 84, 55, 63, 70, 50, 70, 73, 48, 73, 66, 74, 68, 62, 55, 50, 103, 50, 53, 70, 63, 73, 53, 59, 73, 58, 69, 96, 68, 61, 66, 48, 58, 74, 76, 51, 68, 82, 87, 56, 73, 79, 76, 88, 52, 69, 49, 60, 72, 51, 74, 61, 55, 65, 66, 88, 72, 59, 51, 84, 77, 46, 48, 56, 66, 87, 47, 85, 103, 61, 51, 71, 96, 74, 59, 68, 50, 77, 86, 62, 46, 52, 57, 65, 78, 61, 57, 67, 55, 55, 90, 72, 73, 74, 50, 73, 96, 74, 72, 66, 83, 78, 79, 71, 53, 91, 61, 66, 62, 61, 79, 95, 51, 59, 60, 57, 50, 68, 65, 54, 90, 89, 55, 93, 54, 76, 80, 90, 59, 69, 75, 60, 58, 48, 52, 44, 81, 66, 73, 55, 95, 72, 47, 85, 99, 60, 65, 67, 72, 68, 39, 60, 52, 41, 60, 48, 56, 70, 74, 78, 80, 72, 86, 84, 57, 57, 49, 54, 67, 38, 56, 72, 65, 79, 66, 39, 64, 66, 52, 43, 47, 62, 57, 85, 71, 68, 48, 74, 72, 56, 83, 71, 67, 54, 54, 64, 80, 58, 72, 96, 107, 55, 78, 64, 83, 70, 57, 52, 60, 60, 45, 40, 77, 61, 57, 69, 76, 67, 64, 64, 137, 66, 67, 61, 55, 77, 58, 53, 61, 64, 52, 75, 96, 70, 88, 64, 78, 66, 69, 59, 89, 68, 81, 59, 54, 80, 67, 78, 57, 65, 68, 41, 59, 70, 76, 71, 75, 49, 72, 68, 67, 54, 58, 81, 47, 95, 69, 61, 58, 85, 59, 79, 53, 73, 66, 69, 71, 56, 57, 62, 50, 101, 68, 50, 71, 60, 74, 67, 52, 51, 58, 64, 54, 59, 84, 66, 83, 51, 104, 57, 92, 52, 56, 60, 80, 69, 63, 79, 70, 38, 101, 85, 66, 78, 77, 69, 77, 46, 50, 64, 62, 68, 73, 67, 84, 44, 76, 68, 71, 71, 59, 61, 84, 54, 74, 63, 55, 52, 67, 56, 85, 73, 50, 83, 93, 78, 79, 72, 84, 83, 81, 52, 44, 62, 87, 55, 39, 57, 62, 45, 88, 76, 60, 49, 67, 67, 63, 70, 68, 68, 73, 62, 64, 61, 98, 51, 67, 67, 64, 62, 69, 64, 101, 57, 72, 54, 94, 56, 51, 62, 68, 48, 79, 63, 49, 53, 64, 76, 59, 89, 77, 71, 84, 58, 58, 43, 73, 67, 53, 61, 72, 61, 42, 61, 84, 56, 86, 65, 70, 51, 62, 77, 61, 77, 68, 61, 70, 65, 68, 61, 81, 68, 86, 62, 94, 112, 97, 46, 56, 84, 61, 49, 75, 58, 86, 54, 68, 65, 29, 69, 58, 63, 70, 41, 66, 60, 67, 88, 53, 58, 64, 69, 65, 73, 59, 63, 67, 64, 69, 74, 63, 61, 64, 78, 79, 49, 73, 47, 73, 88, 83, 56, 61, 70, 84, 73, 74, 87, 67, 60, 53, 63, 60, 47, 71, 42, 60, 58, 79, 48, 68, 70, 58, 68, 73, 65, 74, 51, 52, 52, 58, 72, 60, 113, 56, 97, 44, 73, 60, 57, 66, 69, 74, 66, 71, 71, 68, 54, 90, 55, 56, 69, 53, 74, 62, 53, 53, 74, 60, 51, 61, 82, 62, 53, 104, 63, 64, 73, 38, 76, 52, 80, 87, 54, 76, 70, 63, 91, 62, 56, 54, 68, 57, 76, 67, 101, 49, 66, 56, 75, 54, 55, 54, 55, 72, 51, 64, 60, 65, 60, 40, 71, 78, 67, 67, 54, 49, 67, 59, 87, 54, 65, 90, 50, 64, 80, 106, 74, 63, 68, 58, 66, 58, 75, 52, 74, 61, 62, 68, 58, 55, 63, 53, 50, 54, 58, 84, 46, 56, 53, 57, 60, 63, 52, 59, 75, 65, 54, 71, 99, 61, 73, 67, 51, 42, 92, 60, 54, 36, 66, 77, 71, 93, 77, 57, 59, 76, 58, 55, 83, 93, 61, 60, 62, 63, 50, 55, 59, 63, 66, 66, 47, 78, 58, 55, 62, 80, 83, 40, 47, 60, 72, 64, 72, 58, 63, 53, 78, 109, 75, 85, 51, 52, 71, 49, 58, 65, 77, 70, 58, 51, 93, 77, 75, 75, 53, 74, 54, 59, 62, 66, 61, 68, 62, 78, 60, 62, 70, 73, 72, 39, 76, 95, 59, 97, 59, 56, 67, 65, 71, 78, 62, 66, 58, 70, 61, 59, 77, 53, 67, 55, 94, 58, 58, 60, 90, 77, 54, 63, 68, 76, 67, 78, 55, 60, 56, 68, 60, 69, 50, 99, 67, 61, 52, 68, 65, 59, 47, 94, 62, 64, 58, 66, 60, 71, 70, 56, 61, 72, 68, 73, 77, 54, 97, 52, 117, 56, 67, 50, 98, 79, 66, 54, 64, 72, 71, 62, 65, 98, 62, 64, 56, 68, 79, 61, 57, 69, 64, 57, 63, 66, 68, 53, 69, 59, 61, 64, 63, 69, 68, 65, 66, 70, 43, 68, 75, 63, 50, 63, 79, 50, 54, 71, 63, 56, 57, 57, 67, 54, 49, 60, 75, 70, 68, 62, 93, 59, 55, 73, 57, 72, 60, 50, 59, 57, 56, 61, 69, 58, 61, 71, 59, 67, 61, 48, 50, 80, 60, 58, 85, 61, 59, 56, 80, 63, 54, 50, 64, 60, 62, 40, 71, 112, 51, 71, 77, 62, 72, 74, 89, 41, 71, 76, 65, 58, 47, 60, 84, 64, 75, 57, 55, 60, 53, 63, 78, 112, 88, 62, 81, 75, 52, 63, 66, 56, 69, 63, 70, 55, 70, 81, 79, 56, 52, 51, 55, 72, 61, 60, 50, 81, 64, 60, 66, 75, 107, 57, 63, 55, 64, 52, 73, 68, 118, 55, 67, 68, 56, 79, 117, 69, 57, 60, 65, 65, 68, 72, 75, 58, 62, 90, 97, 55, 49, 58, 67, 76, 57, 48, 54, 55, 83, 45, 55, 62, 60, 68, 73, 71, 64, 76, 69, 89, 56, 65, 71, 66, 159, 65, 56, 88, 57, 67, 79, 62, 83, 61, 57, 93, 65, 74, 54, 52, 63, 62, 65, 77, 56, 55, 64, 58, 57, 74, 64, 74, 51, 61, 47, 65, 60, 74, 67, 49, 59, 66, 61, 59, 67, 52, 64, 76, 56, 72, 59, 52, 48, 87, 75, 70, 73, 62, 58, 71, 67, 56, 64, 74, 52, 71, 65, 55, 52, 60, 63, 65, 58, 59, 51, 64, 86, 77, 82, 64, 75, 75, 76, 53, 81, 58, 51, 68, 72, 83, 66, 76, 41, 72, 108, 66, 69, 59, 55, 75, 66, 88, 49, 59, 59, 62, 67, 52, 65, 72, 69, 69, 43, 61, 58, 69, 69, 55, 69, 59, 66, 57, 56, 77, 92, 65, 66, 59, 86, 59, 60, 60, 85, 78, 67, 67, 64, 54, 57, 75, 63, 68, 65, 62, 75, 55, 60, 89, 62, 73, 54, 77, 57, 60, 62, 65, 78, 58, 57, 65, 65, 92, 64, 57, 67, 54, 61, 61, 57, 97, 60, 57, 59, 46, 79, 62, 48, 70, 62, 64, 84, 52, 51, 74, 68, 57, 55, 74, 57, 64, 63, 63, 73, 77, 94, 63, 59, 61, 49, 66, 56, 68, 66, 67, 54, 72, 56, 95, 63, 61, 63, 101, 57, 58, 72, 50, 65, 56, 57, 70, 53, 77, 58, 63, 46, 55, 66, 59, 63, 80, 64, 48, 83, 59, 78, 57, 65, 47, 57, 71, 67, 90, 65, 65, 71, 65, 74, 67, 66, 58, 43, 125, 57, 62, 77, 70, 55, 50, 67, 83, 61, 49, 65, 55, 89, 71, 54, 80, 64, 90, 70, 141, 89, 58, 59, 56, 65, 57, 56, 64, 60, 67, 54, 79, 59, 71, 82, 62, 55, 61, 67, 68, 56, 67, 37, 52, 49, 52, 79, 75, 70, 59, 62, 59, 42, 62, 54, 60, 46, 57, 56, 65, 60, 64, 69, 63, 129, 66, 58, 70, 61, 60, 59, 65, 68, 70, 63, 66, 63, 68, 49, 76, 71, 74, 60, 62, 63, 49, 52, 52, 77, 45, 57, 62, 66, 100, 63, 57, 63, 88, 55, 60, 63, 72, 68, 54, 82, 62, 61, 72, 74, 96, 76, 59, 67, 60, 100, 75, 79, 73, 64, 52, 47, 47, 65, 75, 73, 73, 69, 79, 67, 66, 65, 75, 68, 68, 56, 67, 64, 54, 58, 86, 74, 59, 63, 40, 55, 73, 59, 50, 68, 66, 47, 57, 57, 69, 69, 52, 55, 71, 71, 67, 66, 70, 62, 58, 69, 65, 65, 61, 59, 74, 64, 66, 71, 77, 72, 68, 59, 77, 57, 59, 56, 53, 57, 93, 69, 67, 62, 53, 52, 56, 73, 71, 98, 63, 54, 61, 78, 60, 100, 111, 57, 48, 59, 60, 74, 60, 78, 49, 64, 91, 81, 51, 58, 86, 66, 57, 74, 65, 47, 69, 65, 78, 55, 70, 63, 81, 82, 61, 71, 60, 70, 70, 58, 64, 89, 78, 46, 61, 69, 71, 62, 58, 58, 74, 59, 74, 75, 65, 82, 61, 53, 52, 59, 95, 83, 64, 65, 64, 60, 62, 70, 76, 67, 49, 61, 93, 53, 91, 54, 66, 52, 79, 61, 66, 51, 76, 58, 72, 74, 90, 58, 73, 64, 64, 46, 74, 54, 72, 66, 65, 72, 59, 66, 45, 66, 68, 62, 60, 74, 51, 58, 57, 52, 100, 81, 64, 61, 59, 55, 66, 56, 53, 51, 65, 72, 59, 104, 47, 69, 61, 56, 59, 75, 95, 69, 52, 60, 48, 55, 59, 71, 76, 84, 51, 60, 62, 60, 59, 58, 72, 92, 51, 85, 95, 59, 63, 62, 53, 74, 77, 73, 65, 65, 81, 72, 74, 71, 66, 65, 64, 82, 51, 66, 68, 100, 54, 72, 78, 97, 81, 77, 74, 56, 82, 71, 59, 63, 62, 69, 62, 62, 79, 59, 79, 60, 55, 66, 43, 90, 66, 48, 84, 57, 56, 68, 99, 71, 58, 72, 45, 68, 67, 61, 67, 62, 55, 62, 55, 56, 61, 87, 84, 59, 54, 64, 57, 56, 65, 50, 55, 69, 78, 59, 69, 67, 84, 62, 53, 52, 54, 64, 74, 63, 60, 74, 68, 61, 63, 63, 61, 72, 68, 81, 65, 54, 65, 68, 57, 63, 71, 67, 92, 55, 86, 58, 64, 83, 76, 63, 56, 85, 78, 75, 65, 73, 54, 72, 53, 69, 75, 70, 46, 61, 53, 75, 56, 82, 64, 54, 58, 71, 61, 66, 47, 61, 70, 55, 52, 53, 55, 88, 68, 65, 64, 75, 50, 55, 81, 58, 49, 56, 70, 59, 72, 83, 75, 75, 66, 55, 66, 65, 68, 45, 45, 73, 57, 94, 48, 96, 63, 59, 52, 48, 63, 72, 55, 57, 78, 54, 62, 64, 76, 92, 72, 61, 79, 73, 57, 56, 47, 61, 72, 55, 49, 77, 72, 79, 56, 53, 42, 65, 73, 71, 64, 66, 72, 70, 61, 59, 57, 65, 55, 73, 60, 37, 58, 64, 61, 71, 45, 49, 60, 77, 60, 55, 62, 67, 53, 62, 55, 67, 99, 68, 74, 54, 67, 73, 69, 44, 68, 65, 67, 63, 61, 64, 85, 52, 59, 61, 65, 66, 64, 74, 61, 54, 67, 66, 45, 55, 55, 53, 62, 59, 71, 68, 58, 45, 62, 65, 70, 76, 50, 60, 76, 66, 75, 76, 60, 81, 85, 71, 75, 52, 95, 73, 69, 57, 57, 89, 85, 66, 71, 57, 57, 74, 71, 81, 83, 58, 64, 85, 79, 90, 97, 118, 70, 43, 57, 73, 50, 64, 58, 77, 67, 57, 70, 74, 65, 79, 57, 68, 48, 61, 90, 72, 66, 49, 58, 53, 58, 59, 57, 43, 70, 55, 70, 75, 53, 77, 66, 61, 74, 69, 50, 61, 58, 61, 67, 55, 38, 78, 69, 63, 54, 77, 41, 60, 48, 60, 46, 39, 58, 67, 59, 66, 42, 77, 68, 70, 64, 54, 83, 53, 60, 62, 69, 56, 55, 124, 65, 61, 56, 56, 44, 56, 55, 68, 70, 73, 75, 68, 75, 66, 50, 74, 66, 56, 75, 69, 70, 74, 69, 91, 88, 58, 61, 122, 63, 67, 55, 140, 54, 79, 68, 81, 60, 46, 70, 50, 57, 69, 97, 70, 67, 63, 49, 76, 66, 66, 71, 73, 135, 71, 38, 61, 41, 60, 67, 64, 65, 61, 81, 76, 63, 66, 79, 67, 76, 55, 34, 66, 73, 74, 57, 73, 57, 62, 56, 48, 66, 65, 68, 74, 77, 63, 71, 66, 62, 90, 73, 52, 82, 59, 49, 61, 55, 53, 65, 51, 59, 74, 65, 67, 68, 154, 62, 73, 61, 65, 48, 46, 112, 63, 65, 65, 63, 74, 61, 85, 62, 30, 54, 64, 89, 62, 49, 101, 105, 54, 74, 91, 58, 66, 72, 87, 68, 57, 95, 57, 75, 69, 61, 56, 69, 65, 54, 69, 57, 90, 77, 55, 54, 52, 72, 59, 72, 112, 108, 64, 56, 51, 75, 64, 44, 68, 61, 49, 64, 59, 68, 49, 58, 68, 52, 67, 50, 58, 43, 145, 61, 60, 55, 81, 61, 49, 96, 89, 74, 66, 66, 54, 84, 44, 70, 72, 82, 77, 52, 55, 73, 67, 47, 72, 59, 69, 69, 61, 61, 88, 69, 63, 84, 71, 61, 69, 52, 78, 69, 78, 65, 76, 61, 72, 66, 51, 85, 54, 63, 56, 60, 60, 42, 62, 68, 57, 51, 44, 46, 81, 66, 73, 56, 76, 54, 69, 62, 44, 57, 60, 72, 42, 83, 79, 61, 89, 60, 72, 50, 51, 77, 46, 57, 59, 60, 98, 62, 70, 49, 66, 57, 62, 60, 49, 56, 56, 76, 100, 52, 56, 64, 61, 62, 70, 73, 62, 73, 60, 81, 58, 75, 60, 67, 60, 68, 53, 60, 67, 65, 51, 54, 73, 53, 48, 51, 60, 60, 72, 67, 81, 60, 68, 74, 57, 55, 68, 92, 112, 61, 66, 55, 93, 86, 57, 61, 76, 112, 81, 40, 58, 75, 83, 68, 51, 56, 77, 48, 66, 68, 71, 50, 68, 83, 81, 80, 64, 58, 47, 70, 57, 73, 68, 82, 73, 79, 99, 60, 63, 48, 101, 66, 75, 72, 53, 80, 51, 70, 80, 57, 57, 60, 69, 69, 88, 79, 82, 62, 57, 71, 54, 72, 58, 52, 72, 77, 90, 58, 65, 59, 53, 90, 58, 67, 69, 86, 55, 64, 59, 87, 78, 64, 39, 87, 71, 58, 82, 58, 62, 68, 86, 54, 44, 68, 68, 85, 73, 56, 91, 95, 99, 74, 60, 61, 40, 45, 69, 56, 55, 69, 71, 54, 58, 60, 65, 80, 73, 61, 60, 62, 51, 67, 67, 56, 102, 67, 65, 64, 68, 75, 43, 55, 74, 71, 58, 52, 73, 76, 45, 57, 51, 69, 63, 59, 84, 79, 62, 71, 41, 68, 56, 42, 56, 79, 72, 59, 68, 56, 56, 56, 82, 76, 79, 69, 58, 67, 63, 71, 73, 54, 57, 83, 63, 53, 93, 89, 74, 62, 81, 67, 67, 88, 51, 71, 83, 99, 81, 90, 60, 70, 65, 56, 73, 79, 52, 60, 54, 60, 59, 62, 40, 30, 63, 47, 69, 81, 48, 59, 68, 68, 62, 60, 119, 60, 82, 83, 75, 50, 71, 57, 55, 58, 51, 70, 62, 52, 80, 70, 57, 80, 55, 69, 92, 54, 58, 72, 65, 74, 60, 71, 77, 61, 78, 62, 53, 53, 70, 58, 62, 55, 68, 71, 66, 101, 59, 56, 78, 51, 56, 71, 73, 55, 58, 68, 46, 68, 70, 55, 65, 65, 57, 66, 44, 53, 63, 54, 53, 61, 85, 64, 88, 68, 65, 59, 69, 82, 49, 61, 69, 84, 99, 74, 62, 60, 69, 63, 55, 82, 64, 53, 57, 73, 65, 60, 61, 57, 89, 81, 78, 62, 42, 55, 60, 75, 56, 69, 64, 77, 96, 61, 55, 65, 81, 90, 57, 96, 63, 70, 51, 81, 63, 43, 68, 43, 59, 70, 65, 81, 67, 75, 60, 57, 44, 69, 62, 57, 85, 81, 52, 88, 55, 60, 48, 132, 64, 64, 64, 70, 69, 64, 54, 58, 53, 64, 60, 60, 54, 71, 66, 52, 56, 49, 54, 54, 52, 59, 45, 64, 85, 99, 58, 58, 61, 84, 80, 62, 56, 52, 67, 53, 78, 50, 105, 63, 73, 50, 55, 54, 57, 59, 90, 51, 59, 43, 56, 74, 89, 68, 80, 72, 59, 47, 51, 55, 65, 60, 83, 57, 64, 52, 89, 66, 65, 37, 60, 46, 66, 70, 63, 75, 77, 70, 85, 69, 87, 72, 80, 64, 70, 63, 58, 75, 73, 72, 81, 51, 40, 67, 93, 62, 62, 65, 72, 103, 70, 78, 69, 78, 51, 74, 71, 66, 66, 61, 89, 55, 61, 60, 60, 83, 62, 66, 70, 61, 44, 55, 57, 67, 61, 63, 58, 54, 83, 73, 51, 54, 82, 62, 60, 59, 73, 73, 65, 63, 71, 62, 59, 64, 60, 83, 60, 53, 57, 61, 52, 75, 53, 74, 59, 60, 60, 90, 65, 64, 69, 71, 73, 63, 42, 68, 63, 72, 66, 71, 48, 78, 82, 57, 64, 73, 63, 55, 72, 62, 59, 65, 59, 56, 91, 49, 110, 61, 62, 57, 64, 98, 62, 57, 69, 63, 42, 64, 51, 77, 53, 59, 53, 52, 70, 73, 74, 59, 74, 69, 65, 85, 63, 64, 68, 55, 58, 78, 61, 60, 51, 65, 62, 59, 57, 61, 69, 71, 65, 82, 66, 61, 73, 71, 82, 64, 56, 63, 71, 65, 64, 65, 53, 58, 68, 65, 62, 62, 63, 52, 82, 70, 65, 61, 62, 54, 77, 53, 93, 59, 65, 49, 67, 50, 65, 72, 55, 51, 67, 64, 77, 58, 51, 59, 64, 52, 59, 40, 63, 60, 110, 72, 45, 62, 57, 59, 55, 66, 69, 61, 69, 64, 58, 62, 73, 65, 82, 65, 88, 58, 61, 65, 58, 74, 64, 81, 56, 65, 51, 70, 64, 60, 69, 64, 59, 66, 97, 53, 72, 95, 76, 71, 64, 75, 63, 52, 68, 60, 69, 61, 61, 76, 98, 59, 55, 68, 69, 67, 74, 53, 56, 63, 66, 80, 69, 53, 77, 77, 58, 72, 63, 52, 77, 60, 69, 60, 55, 69, 62, 70, 72, 82, 105, 73, 106, 105, 49, 68, 60, 56, 63, 55, 55, 78, 60, 71, 65, 59, 83, 56, 56, 93, 87, 62, 56, 65, 55, 53, 60, 84, 68, 73, 59, 66, 64, 57, 69, 56, 60, 51, 58, 68, 85, 69, 65, 76, 55, 68, 66, 67, 56, 71, 56, 86, 75, 71, 78, 59, 66, 64, 54, 76, 60, 59, 56, 57, 54, 52, 51, 79, 60, 65, 67, 51, 48, 67, 50, 55, 58, 57, 62, 63, 64, 56, 47, 66, 90, 76, 55, 56, 89, 62, 63, 60, 62, 64, 49, 69, 70, 61, 61, 76, 68, 60, 55, 59, 72, 64, 65, 79, 86, 59, 66, 61, 65, 62, 76, 73, 63, 64, 59, 80, 60, 56, 64, 75, 89, 57, 62, 53, 55, 63, 74, 78, 82, 58, 73, 56, 78, 60, 79, 70, 60, 79, 53, 63, 63, 75, 52, 81, 59, 50, 80, 49, 55, 60, 87, 61, 61, 62, 44, 64, 58, 112, 67, 56, 66, 63, 83, 62, 76, 58, 58, 72, 61, 60, 52, 75, 76, 78, 56, 56, 52, 63, 82, 63, 77, 49, 63, 51, 51, 81, 78, 69, 67, 64, 66, 59, 69, 69, 65, 63, 69, 61, 67, 49, 95, 107, 122, 51, 59, 58, 67, 69, 59, 68, 69, 62, 57, 88, 70, 52, 61, 57, 52, 63, 83, 67, 60, 79, 57, 60, 68, 98, 51, 69, 67, 61, 102, 58, 55, 55, 64, 54, 71, 76, 66, 55, 57, 72, 65, 60, 60, 55, 61, 65, 58, 59, 60, 62, 56, 55, 67, 64, 71, 70, 100, 57, 94, 52, 68, 63, 64, 70, 76, 51, 75, 63, 60, 60, 54, 63, 47, 58, 53, 61, 65, 71, 62, 60, 63, 54, 48, 51, 52, 84, 77, 62, 63, 48, 69, 76, 65, 50, 49, 67, 53, 61, 65, 82, 68, 48, 63, 71, 60, 49, 66, 71, 66, 66, 61, 59, 60, 68, 57, 65, 70, 104, 53, 93, 52, 58, 60, 104, 96, 65, 65, 54, 56, 68, 62, 58, 75, 59, 68, 78, 61, 51, 61, 64, 65, 71, 60, 57, 62, 72, 62, 62, 55, 66, 65, 72, 67, 69, 64, 66, 61, 58, 47, 68, 68, 70, 57, 65, 65, 63, 63, 59, 52, 79, 110, 67, 63, 58, 62, 62, 74, 68, 63, 74, 64, 71, 49, 92, 107, 60, 108, 113, 50, 51, 87, 59, 70, 60, 57, 64, 46, 64, 65, 55, 76, 66, 69, 59, 67, 56, 57, 54, 64, 60, 62, 58, 50, 73, 58, 63, 70, 64, 62, 62, 62, 69, 68, 50, 84, 65, 62, 62, 58, 58, 55, 46, 69, 62, 64, 71, 88, 65, 54, 69, 92, 58, 63, 64, 56, 104, 71, 68, 54, 71, 54, 61, 78, 71, 75, 61, 68, 70, 69, 57, 65, 68, 63, 60, 63, 48, 61, 79, 54, 56, 53, 71, 80, 60, 69, 98, 62, 54, 85, 60, 60, 85, 61, 80, 52, 105, 70, 69, 58, 69, 58, 67, 51, 51, 73, 66, 52, 56, 63, 59, 55, 65, 103, 71, 49, 66, 66, 65, 57, 48, 57, 58, 59, 66, 67, 75, 57, 74, 77, 61, 85, 100, 64, 80, 85, 64, 65, 57, 57, 61, 69, 62, 61, 36, 69, 72, 82, 77, 63, 58, 108, 67, 61, 64, 74, 84, 70, 100, 60, 80, 78, 79, 72, 109, 69, 64, 68, 62, 87, 93, 114, 54, 76, 64, 67, 58, 76, 54, 65, 43, 61, 66, 69, 64, 56, 69, 63, 75, 108, 56, 68, 74, 64, 55, 54, 64, 48, 63, 69, 114, 38, 50, 83, 78, 58, 68, 63, 63, 61, 75, 70, 69, 81, 59, 70, 55, 64, 56, 85, 59, 63, 66, 63, 74, 60, 59, 61, 57, 67, 57, 56, 64, 63, 75, 62, 60, 49, 59, 74, 60, 70, 55, 68, 57, 71, 61, 58, 79, 86, 95, 64, 58, 60, 53, 61, 60, 53, 61, 75, 81, 48, 57, 59, 68, 65, 86, 60, 55, 64, 65, 50, 61, 58, 45, 70, 64, 65, 53, 51, 58, 58, 56, 74, 48, 54, 71, 88, 56, 63, 82, 69, 72, 46, 68, 59, 63, 56, 66, 61, 66, 75, 53, 63, 60, 62, 55, 70, 39, 55, 64, 57, 58, 70, 61, 68, 72, 69, 79, 60, 50, 60, 62, 63, 48, 62, 88, 76, 63, 57, 64, 60, 76, 64, 64, 55, 50, 64, 62, 65, 64, 60, 70, 60, 60, 59, 80, 59, 70, 62, 66, 70, 67, 59, 75, 64, 61, 68, 114, 126, 55, 55, 65, 59, 33, 65, 78, 76, 86, 85, 71, 87, 65, 73, 61, 87, 59, 68, 43, 66, 87, 54, 70, 78, 58, 42, 70, 35, 63, 73, 59, 88, 48, 101, 78, 56, 57, 71, 60, 81, 61, 67, 60, 65, 107, 50, 67, 52, 42, 51, 77, 57, 55, 68, 72, 56, 80, 69, 58, 76, 64, 118, 59, 58, 46, 55, 82, 52, 50, 53, 60, 63, 59, 74, 86, 52, 75, 66, 73, 45, 67, 71, 61, 65, 78, 71, 74, 72, 79, 68, 57, 78, 84, 90, 56, 70, 63, 68, 55, 44, 65, 45, 46, 59, 58, 71, 94, 61, 56, 65, 83, 55, 78, 76, 98, 63, 69, 94, 61, 57, 103, 76, 48, 58, 71, 61, 72, 82, 73, 68, 62, 86, 49, 62, 63, 73, 77, 83, 81, 70, 56, 55, 51, 95, 72, 75, 66, 85, 68, 61, 61, 60, 86, 61, 56, 46, 62, 76, 58, 69, 78, 105, 71, 52, 67, 63, 41, 43, 55, 79, 72, 56, 91, 56, 62, 79, 71, 64, 112, 52, 61, 55, 56, 62, 61, 67, 64, 67, 83, 101, 59, 66, 79, 97, 72, 66, 59, 53, 58, 61, 46, 71, 56, 66, 96, 61, 42, 60, 82, 57, 85, 63, 124, 67, 66, 45, 69, 89, 114, 63, 54, 63, 65, 73, 58, 65, 52, 52, 70, 78, 60, 83, 56, 56, 59, 52, 48, 109, 47, 73, 65, 44, 112, 64, 45, 75, 71, 73, 52, 71, 51, 55, 62, 65, 62, 73, 51, 61, 50, 63, 114, 52, 65, 51, 68, 54, 66, 80, 52, 84, 81, 95, 54, 68, 59, 69, 83, 50, 80, 92, 68, 80, 86, 59, 53, 77, 76, 68, 50, 93, 70, 56, 61, 83, 49, 81, 51, 60, 78, 58, 69, 36, 58, 101, 64, 75, 56, 56, 71, 57, 47, 64, 41, 90, 46, 60, 60, 43, 57, 52, 64, 78, 50, 68, 37, 68, 60, 55, 38, 47, 82, 59, 85, 96, 79, 49, 95, 59, 67, 56, 53, 50, 64, 52, 75, 63, 66, 55, 54, 69, 42, 88, 39, 69, 51, 80, 61, 69, 50, 53, 58, 38, 56, 68, 62, 61, 78, 59, 61, 68, 66, 57, 73, 66, 73, 57, 81, 64, 39, 64, 67, 56, 54, 56, 57, 73, 35, 55, 76, 60, 90, 82, 70, 67, 69, 81, 56, 54, 49, 62, 56, 76, 75, 82, 61, 47, 66, 43, 61, 67, 72, 54, 73, 63, 69, 60, 93, 57, 58, 59, 51, 61, 58, 56, 44, 50, 46, 49, 114, 73, 65, 62, 47, 67, 51, 55, 60, 64, 56, 73, 80, 61, 80, 69, 126, 68, 73, 65, 64, 95, 79, 115, 56, 61, 63, 45, 54, 59, 93, 59, 71, 63, 55, 69, 74, 67, 71, 61, 64, 78, 80, 90, 61, 93, 55, 53, 61, 66, 53, 73, 50, 93, 63, 59, 59, 67, 58, 107, 63, 63, 48, 56, 76, 87, 58, 54, 53, 82, 77, 68, 42, 86, 66, 88, 48, 59, 96, 63, 52, 78, 61, 79, 58, 56, 53, 57, 45, 66, 59, 60, 76, 104, 63, 51, 55, 75, 52, 45, 60, 60, 59, 64, 60, 74, 47, 70, 109, 62, 38, 54, 76, 65, 72, 58, 50, 70, 61, 72, 87, 96, 65, 101, 65, 44, 54, 56, 48, 76, 69, 54, 52, 53, 70, 62, 48, 74, 102, 92, 42, 46, 56, 54, 89, 48, 64, 60, 64, 60, 59, 63, 65, 63, 61, 48, 52, 65, 68, 51, 58, 71, 72, 61, 109, 60, 66, 54, 55, 51, 98, 76, 56, 56, 63, 56, 63, 66, 57, 78, 67, 81, 104, 69, 84, 54, 38, 74, 82, 43, 68, 72, 114, 70, 70, 56, 73, 78, 101, 76, 87, 98, 58, 65, 53, 67, 74, 68, 62, 67, 60, 70, 70, 68, 58, 63, 72, 58, 73, 54, 57, 60, 65, 58, 61, 83, 69, 57, 52, 58, 82, 65, 71, 98, 65, 37, 51, 68, 59, 66, 57, 55, 64, 75, 58, 75, 77, 69, 49, 65, 80, 41, 58, 51, 55, 65, 46, 46, 67, 67, 92, 47, 54, 79, 84, 89, 82, 54, 64, 50, 65, 83, 59, 49, 62, 54, 65, 61, 61, 66, 73, 40, 62, 102, 58, 59, 91, 48, 71, 55, 63, 59, 66, 79, 68, 52, 77, 55, 101, 74, 96, 60, 55, 57, 57, 60, 81, 51, 46, 67, 97, 62, 53, 66, 74, 60, 60, 55, 69, 47, 69, 120, 59, 57, 67, 78, 119, 75, 54, 60, 65, 65, 71, 51, 54, 73, 74, 60, 77, 69, 64, 53, 65, 64, 39, 75, 76, 70, 71, 68, 67, 78, 39, 48, 71, 63, 60, 53, 45, 55, 47, 68, 69, 91, 65, 68, 63, 76, 99, 60, 59, 100, 60, 62, 82, 51, 58, 49, 80, 54, 69, 52, 63, 64, 74, 73, 75, 96, 80, 66, 52, 78, 55, 49, 59, 52, 74, 75, 120, 60, 86, 63, 74, 70, 73, 82, 84, 70, 66, 53, 53, 38, 58, 63, 60, 51, 70, 63, 51, 83, 65, 64, 72, 69, 48, 82, 70, 76, 58, 64, 55, 79, 55, 58, 49, 63, 76, 76, 62, 63, 56, 55, 60, 57, 66, 61, 84, 75, 83, 78, 68, 78, 60, 66, 66, 89, 64, 57, 93, 61, 54, 67, 72, 37, 52, 42, 63, 50, 59, 70, 90, 77, 102, 55, 63, 64, 47, 57, 72, 73, 65, 55, 60, 51, 70, 97, 85, 70, 91, 76, 80, 62, 78, 69, 78, 69, 49, 59, 63, 60, 51, 47, 64, 80, 86, 68, 75, 66, 45, 87, 89, 51, 67, 59, 60, 74, 48, 50, 80, 70, 63, 57, 57, 45, 71, 61, 75, 57, 70, 53, 54, 63, 52, 46, 54, 56, 67, 53, 44, 65, 57, 71, 63, 42, 113, 54, 62, 51, 57, 71, 43, 58, 79, 68, 54, 55, 81, 74, 77, 95, 45, 52, 133, 75, 75, 76, 61, 79, 74, 64, 74, 41, 53, 62, 55, 51, 57, 54, 53, 79, 64, 59, 56, 63, 63, 54, 70, 58, 65, 72, 78, 77, 70, 109, 57, 94, 72, 74, 52, 61, 101, 82, 74, 85, 115, 62, 85, 94, 78, 56, 87, 66, 71, 42, 47, 72, 87, 55, 81, 61, 68, 54, 86, 94, 52, 61, 42, 61, 60, 62, 81, 65, 63, 62, 66, 88, 88, 60, 58, 104, 64, 86, 55, 62, 60, 59, 98, 50, 51, 61, 62, 87, 67, 60, 72, 50, 67, 59, 62, 80, 57, 63, 72, 65, 49, 78, 76, 40, 43, 99, 92, 108, 80, 67, 46, 51, 48, 68, 55, 70, 64, 79, 59, 61, 64, 79, 57, 50, 71, 72, 72, 75, 60, 91, 54, 58, 50, 75, 85, 41, 67, 73, 39, 46, 70, 72, 71, 79, 84, 69, 83, 84, 58, 60, 51, 67, 48, 64, 65, 59, 87, 62, 66, 59, 60, 55, 63, 62, 61, 58, 58, 61, 76, 58, 78, 76, 55, 57, 65, 62, 77, 67, 76, 59, 64, 65, 94, 58, 52, 61, 51, 54, 71, 49, 79, 49, 84, 69, 56, 74, 53, 63, 61, 76, 65, 56, 89, 66, 64, 61, 87, 83, 83, 44, 65, 59, 91, 64, 60, 55, 72, 80, 63, 41, 51, 65, 75, 70, 63, 74, 53, 75, 49, 49, 73, 124, 67, 62, 70, 93, 54, 75, 88, 63, 59, 47, 80, 54, 73, 68, 54, 46, 65, 78, 49, 58, 71, 56, 67, 92, 59, 59, 53, 67, 62, 76, 70, 98, 74, 65, 56, 60, 54, 85, 58, 61, 60, 50, 112, 44, 63, 60, 52, 63, 52, 60, 49, 61, 68, 63, 62, 76, 58, 60, 77, 77, 76, 58, 52, 62, 44, 72, 68, 63, 77, 75, 56, 99, 50, 62, 54, 73, 60, 67, 55, 57, 78, 79, 51, 59, 76, 79, 51, 71, 70, 29, 48, 59, 59, 71, 52, 47, 50, 50, 60, 72, 84, 93, 56, 40, 76, 74, 57, 97, 67, 66, 59, 50, 77, 67, 41, 65, 51, 73, 60, 69, 71, 55, 74, 62, 80, 64, 63, 68, 62, 40, 49, 69, 82, 56, 45, 57, 80, 92, 60, 55, 85, 60, 54, 56, 58, 50, 77, 74, 69, 82, 62, 52, 61, 75, 107, 52, 66, 59, 59, 75, 72, 55, 76, 56, 59, 51, 56, 93, 67, 85, 84, 60, 67, 53, 88, 70, 85, 67, 71, 73, 92, 59, 61, 68, 86, 63, 54, 75, 51, 85, 57, 82, 92, 59, 58, 44, 62, 95, 51, 64, 56, 60, 25, 81, 62, 79, 65, 101, 65, 57, 65, 59, 52, 62, 78, 67, 63, 62, 68, 64, 80, 58, 56, 72, 66, 56, 55, 55, 62, 56, 78, 55, 50, 70, 53, 78, 49, 63, 68, 69, 47, 59, 68, 68, 57, 80, 45, 74, 75, 97, 69, 65, 65, 46, 68, 94, 65, 61, 83, 52, 77, 46, 67, 86, 74, 62, 89, 79, 45, 79, 67, 89, 89, 111, 47, 64, 89, 55, 64, 44, 66, 98, 94, 49, 63, 67, 58, 71, 86, 37, 56, 76, 77, 33, 74, 53, 67, 52, 97, 76, 60, 135, 75, 42, 49, 66, 67, 66, 61, 52, 64, 57, 77, 87, 79, 42, 73, 86, 71, 50, 37, 62, 65, 48, 73, 42, 62, 47, 39, 47, 62, 66, 85, 76, 55, 55, 61, 81, 55, 81, 59, 112, 70, 49, 83, 71, 150, 63, 51, 118, 54, 60, 79, 63, 49, 69, 62, 45, 68, 71, 57, 68, 92, 64, 63, 48, 69, 55, 81, 66, 59, 56, 64, 68, 70, 57, 75, 66, 67, 79, 70, 46, 47, 60, 48, 59, 61, 65, 74, 63, 57, 82, 75, 82, 54, 61, 88, 55, 70, 56, 44, 67, 57, 85, 80, 50, 64, 65, 55, 58, 106, 77, 80, 101, 48, 73, 55, 45, 54, 46, 68, 54, 51, 59, 71, 41, 66, 74, 75, 54, 65, 73, 50, 52, 67, 88, 54, 67, 68, 73, 55, 52, 60, 76, 78, 51, 78, 84, 58, 91, 49, 65, 67, 44, 54, 63, 54, 67, 52, 74, 45, 103, 63, 71, 84, 107, 55, 71, 84, 56, 74, 64, 64, 62, 56, 82, 44, 43, 67, 62, 79, 57, 77, 48, 81, 28, 57, 53, 58, 61, 76, 51, 63, 67, 49, 65, 85, 56, 67, 60, 61, 46, 74, 37, 90, 86, 41, 68, 66, 57, 60, 83, 51, 68, 54, 72, 65, 60, 64, 58, 96, 39, 54, 53, 72, 65, 54, 48, 54, 57, 74, 63, 62, 67, 78, 63, 71, 56, 76, 58, 71, 57, 55, 65, 56, 54, 56, 61, 90, 53, 60, 46, 71, 72, 58, 63, 84, 52, 95, 55, 63, 81, 80, 42, 83, 57, 54, 52, 61, 59, 62, 92, 54, 88, 68, 79, 53, 71, 103, 57, 59, 61, 66, 45, 66, 79, 77, 54, 61, 64, 67, 50, 55, 79, 54, 71, 96, 44, 57, 60, 68, 45, 70, 66, 65, 79, 44, 71, 83, 66, 50, 58, 81, 67, 64, 48, 52, 43, 84, 61, 55, 63, 76, 58, 78, 74, 63, 63, 101, 59, 77, 88, 61, 36, 65, 59, 72, 50, 57, 71, 55, 56, 56, 95, 60, 70, 61, 73, 112, 55, 62, 29, 58, 59, 55, 44, 88, 57, 61, 58, 60, 66, 46, 132, 52, 92, 47, 70, 67, 50, 89, 51, 73, 72, 64, 69, 105, 69, 46, 53, 60, 51, 75, 51, 60, 73, 57, 47, 72, 88, 46, 66, 65, 86, 72, 48, 80, 68, 62, 64, 86, 47, 53, 44, 63, 84, 52, 62, 68, 90, 67, 42, 43, 90, 87, 115, 51, 71, 81, 55, 54, 66, 88, 44, 87, 53, 66, 61, 80, 73, 50, 63, 74, 55, 61, 72, 67, 58, 56, 81, 77, 90, 50, 57, 73, 74, 94, 53, 63, 68, 61, 67, 80, 61, 75, 89, 70, 48, 63, 64, 64, 54, 56, 63, 61, 47, 81, 59, 66, 52, 55, 84, 58, 58, 64, 69, 65, 71, 80, 47, 53, 50, 108, 57, 59, 47, 77, 67, 57, 59, 73, 71, 55, 102, 61, 93, 70, 77, 70, 66, 80, 55, 55, 58, 53, 50, 51, 79, 61, 77, 74, 68, 72, 53, 48, 66, 92, 74, 36, 71, 69, 103, 63, 89, 71, 63, 50, 84, 63, 71, 51, 64, 103, 56, 74, 84, 86, 68, 70, 57, 74, 82, 70, 64, 71, 65, 73, 60, 53, 66, 48, 82, 62, 77, 58, 66, 66, 63, 72, 52, 68, 93, 58, 67, 61, 54, 86, 100, 98, 83, 73, 57, 49, 64, 83, 72, 67, 58, 62, 54, 55, 99, 56, 79, 75, 58, 69, 53, 54, 67, 66, 68, 63, 52, 73, 48, 68, 47, 73, 56, 57, 71, 56, 55, 70, 87, 53, 46, 42, 56, 61, 69, 58, 65, 79, 56, 91, 68, 61, 70, 78, 62, 58, 81, 63, 66, 57, 65, 64, 57, 66, 102, 61, 63, 54, 46, 48, 45, 86, 63, 63, 55, 63, 66, 56, 54, 65, 63, 53, 61, 78, 79, 66, 63, 69, 79, 66, 83, 60, 60, 60, 54, 62, 44, 58, 66, 81, 60, 73, 71, 72, 65, 60, 64, 55, 59, 67, 75, 58, 110, 69, 55, 65, 49, 87, 71, 64, 58, 65, 71, 61, 64, 53, 74, 65, 60, 63, 64, 78, 62, 59, 62, 86, 55, 57, 81, 47, 53, 67, 64, 58, 44, 69, 53, 56, 59, 65, 55, 51, 35, 75, 61, 72, 70, 41, 77, 68, 79, 67, 77, 79, 80, 90, 73, 173, 73, 77, 39, 62, 94, 66, 56, 74, 53, 66, 59, 59, 79, 59, 72, 48, 79, 59, 58, 74, 64, 60, 59, 61, 66, 52, 98, 80, 72, 66, 68, 84, 49, 72, 73, 65, 63, 62, 55, 57, 78, 69, 59, 65, 62, 58, 75, 67, 60, 48, 69, 50, 47, 75, 116, 56, 63, 66, 79, 65, 97, 63, 60, 59, 62, 60, 62, 68, 85, 71, 59, 66, 63, 74, 64, 54, 67, 64, 62, 54, 74, 47, 61, 66, 81, 60, 58, 62, 61, 50, 58, 55, 54, 86, 71, 64, 47, 58, 64, 63, 56, 66, 70, 80, 57, 63, 53, 60, 78, 70, 63, 76, 58, 51, 65, 63, 74, 53, 66, 63, 65, 107, 46, 65, 60, 79, 84, 59, 72, 69, 38, 61, 65, 56, 67, 60, 76, 60, 59, 62, 75, 62, 59, 74, 54, 78, 74, 61, 59, 73, 40, 77, 61, 66, 62, 66, 83, 52, 68, 72, 70, 58, 60, 57, 78, 73, 69, 52, 66, 55, 67, 52, 72, 122, 57, 54, 63, 59, 77, 73, 58, 57, 58, 56, 68, 72, 83, 58, 54, 56, 82, 68, 72, 55, 57, 65, 67, 52, 69, 55, 54, 72, 52, 63, 61, 85, 60, 80, 69, 76, 61, 53, 61, 63, 57, 60, 59, 59, 69, 56, 59, 59, 94, 67, 64, 62, 65, 57, 63, 68, 78, 57, 70, 63, 69, 62, 54, 58, 53, 72, 76, 55, 69, 69, 101, 77, 92, 65, 77, 69, 62, 70, 58, 97, 56, 72, 62, 78, 81, 67, 115, 50, 51, 80, 65, 70, 62, 48, 79, 69, 117, 70, 55, 57, 57, 63, 67, 66, 60, 53, 65, 68, 85, 51, 49, 65, 51, 90, 83, 71, 123, 57, 48, 74, 63, 55, 62, 59, 77, 63, 63, 83, 55, 73, 57, 61, 60, 61, 80, 77, 57, 63, 71, 68, 71, 55, 64, 73, 55, 57, 55, 97, 64, 57, 65, 51, 82, 64, 67, 49, 104, 69, 81, 78, 54, 105, 73, 72, 85, 63, 51, 68, 109, 65, 72, 62, 66, 44, 56, 81, 55, 55, 76, 66, 80, 47, 48, 104, 69, 59, 70, 69, 53, 60, 61, 66, 85, 57, 79, 64, 85, 68, 80, 63, 63, 76, 59, 70, 58, 56, 69, 75, 58, 58, 54, 76, 54, 91, 46, 62, 77, 63, 47, 68, 49, 67, 53, 58, 59, 79, 78, 52, 61, 61, 69, 57, 52, 58, 76, 53, 57, 80, 61, 77, 61, 63, 76, 72, 88, 59, 58, 64, 69, 74, 63, 69, 76, 56, 78, 83, 52, 54, 60, 68, 67, 65, 57, 75, 77, 49, 68, 58, 78, 64, 58, 77, 54, 51, 68, 67, 92, 70, 53, 57, 83, 73, 47, 70, 60, 55, 80, 50, 75, 66, 92, 48, 51, 65, 112, 61, 64, 55, 70, 53, 85, 58, 68, 57, 73, 80, 68, 83, 53, 57, 75, 63, 61, 53, 79, 60, 65, 65, 74, 55, 55, 56, 61, 54, 61, 55, 63, 45, 71, 55, 51, 71, 62, 71, 49, 64, 57, 55, 60, 88, 68, 54, 50, 50, 56, 57, 76, 41, 56, 60, 59, 82, 54, 58, 63, 70, 44, 59, 53, 50, 60, 69, 65, 75, 84, 66, 60, 56, 51, 83, 55, 49, 74, 69, 65, 78, 52, 44, 55, 77, 70, 56, 66, 69, 58, 70, 53, 83, 102, 50, 71, 59, 52, 59, 67, 69, 57, 59, 50, 53, 70, 69, 64, 58, 66, 57, 67, 60, 80, 58, 79, 50, 60, 57, 56, 61, 114, 57, 66, 61, 80, 54, 54, 65, 71, 59, 58, 61, 54, 73, 64, 51, 64, 65, 59, 49, 70, 49, 42, 61, 80, 46, 75, 80, 58, 75, 58, 77, 77, 64, 41, 53, 61, 58, 66, 71, 81, 54, 63, 64, 64, 63, 68, 51, 77, 78, 63, 60, 73, 60, 62, 76, 64, 55, 68, 66, 62, 62, 83, 59, 91, 61, 75, 62, 52, 64, 62, 74, 55, 97, 87, 71, 59, 63, 48, 68, 57, 60, 57, 62, 62, 101, 71, 65, 64, 98, 60, 72, 79, 70, 67, 95, 97, 69, 62, 117, 81, 61, 92, 53, 88, 57, 76, 59, 65, 58, 54, 67, 60, 84, 76, 61, 64, 77, 52, 61, 64, 80, 65, 73, 67, 65, 68, 49, 69, 54, 68, 104, 77, 56, 70, 39, 52, 75, 58, 127, 65, 56, 60, 60, 70, 76, 58, 68, 57, 60, 83, 64, 47, 52, 73, 80, 55, 58, 84, 76, 61, 63, 41, 45, 64, 56, 64, 45, 77, 71, 85, 66, 68, 56, 69, 57, 55, 59, 52, 67, 63, 76, 54, 58, 55, 53, 70, 71, 58, 72, 63, 61, 58, 56, 66, 62, 70, 80, 61, 48, 65, 74, 54, 73, 69, 49, 63, 63, 46, 57, 48, 76, 64, 61, 61, 84, 64, 49, 58, 56, 132, 69, 55, 81, 73, 75, 64, 86, 77, 51, 54, 95, 56, 104, 56, 63, 68, 79, 53, 100, 77, 56, 43, 67, 56, 59, 69, 61, 88, 87, 68, 60, 51, 69, 55, 70, 63, 84, 72, 45, 73, 40, 73, 53, 66, 72, 78, 74, 89, 54, 51, 59, 60, 95, 71, 55, 65, 66, 68, 65, 79, 56, 62, 63, 56, 91, 60, 87, 65, 48, 64, 74, 66, 59, 63, 46, 82, 72, 79, 80, 80, 49, 69, 55, 63, 77, 66, 66, 54, 56, 71, 47, 64, 42, 89, 107, 60, 70, 66, 114, 67, 51, 52, 64, 63, 60, 60, 75, 59, 48, 62, 74, 77, 55, 57, 69, 48, 66, 58, 62, 66, 67, 56, 72, 55, 52, 62, 57, 60, 57, 70, 64, 54, 61, 86, 51, 58, 56, 58, 68, 72, 71, 66, 66, 73, 54, 48, 59, 100, 58, 67, 78, 88, 75, 71, 57, 53, 66, 76, 64, 91, 55, 67, 106, 55, 65, 69, 66, 57, 71, 87, 60, 73, 78, 61, 51, 61, 50, 79, 82, 55, 68, 67, 60, 69, 54, 60, 70, 60, 40, 44, 61, 58, 75, 67, 90, 80, 59, 46, 60, 66, 71, 63, 67, 80, 56, 71, 49, 64, 54, 69, 57, 62, 106, 72, 55, 48, 55, 68, 58, 51, 75, 64, 61, 76, 62, 57, 73, 48, 46, 64, 64, 49, 65, 76, 62, 55, 73, 58, 45, 93, 55, 61, 87, 46, 114, 75, 70, 94, 46, 56, 61, 72, 67, 51, 63, 60, 43, 81, 57, 49, 72, 79, 71, 73, 57, 50, 83, 98, 67, 86, 64, 82, 64, 88, 56, 51, 47, 74, 76, 55, 59, 51, 65, 70, 59, 105, 77, 80, 59, 91, 62, 61, 59, 57, 71, 81, 67, 65, 62, 61, 65, 70, 61, 68, 53, 57, 91, 58, 61, 60, 50, 64, 66, 44, 70, 54, 67, 69, 66, 69, 96, 85, 68, 66, 69, 81, 63, 66, 77, 85, 69, 47, 66, 71, 54, 91, 65, 55, 58, 65, 55, 58, 77, 63, 87, 62, 67, 57, 65, 107, 73, 80, 66, 56, 57, 52, 101, 75, 80, 59, 108, 68, 64, 59, 66, 51, 59, 85, 66, 55, 49, 56, 66, 55, 66, 74, 70, 55, 56, 79, 71, 94, 77, 101, 52, 62, 59, 50, 56, 49, 72, 57, 41, 49, 48, 72, 47, 61, 68, 48, 61, 53, 88, 64, 49, 74, 59, 64, 61, 70, 59, 55, 58, 74, 61, 66, 68, 60, 79, 57, 74, 52, 62, 70, 62, 59, 69, 62, 52, 103, 72, 79, 59, 65, 63, 75, 58, 66, 59, 65, 51, 54, 53, 58, 57, 68, 65, 55, 58, 66, 66, 64, 55, 46, 49, 80, 64, 62, 81, 62, 79, 65, 90, 66, 52, 90, 86, 51, 57, 69, 70, 76, 61, 85, 73, 92, 55, 58, 65, 56, 72, 67, 66, 73, 64, 76, 59, 62, 58, 68, 83, 68, 40, 47, 72, 65, 51, 56, 55, 64, 107, 68, 63, 74, 58, 104, 47, 60, 66, 48, 72, 48, 57, 69, 85, 70, 118, 68, 83, 66, 75, 65, 82, 58, 70, 80, 64, 68, 60, 55, 58, 62, 55, 63, 74, 86, 60, 63, 61, 91, 57, 62, 66, 101, 66, 84, 78, 64, 69, 65, 52, 58, 52, 60, 68, 87, 63, 71, 82, 48, 59, 83, 63, 36, 73, 74, 60, 68, 63, 59, 92, 58, 58, 81, 59, 66, 64, 59, 57, 92, 53, 64, 75, 58, 69, 70, 82, 71, 75, 66, 62, 60, 66, 65, 69, 55, 56, 58, 50, 75, 81, 57, 73, 67, 62, 78, 81, 48, 63, 56, 73, 80, 113, 67, 53, 57, 84, 63, 61, 63, 53, 70, 61, 71, 69, 77, 84, 41, 48, 76, 81, 62, 42, 44, 55, 85, 60, 54, 51, 56, 60, 81, 51, 53, 51, 53, 52, 50, 49, 45, 88, 85, 43, 76, 56, 69, 70, 75, 82, 42, 63, 38, 62, 116, 54, 42, 61, 88, 57, 61, 65, 90, 50, 56, 72, 83, 54, 72, 57, 61, 59, 52, 68, 65, 59, 77, 49, 82, 49, 63, 69, 57, 71, 58, 92, 57, 50, 91, 79, 53, 69, 46, 58, 50, 63, 39, 56, 69, 95, 80, 59, 68, 64, 64, 70, 66, 63, 65, 55, 91, 64, 45, 106, 51, 61, 68, 71, 72, 64, 86, 48, 61, 47, 77, 57, 69, 62, 64, 72, 68, 65, 69, 54, 58, 77, 57, 67, 67, 59, 87, 71, 65, 66, 97, 50, 94, 62, 51, 95, 59, 104, 64, 97, 64, 58, 64, 59, 63, 68, 83, 65, 67, 46, 85, 64, 48, 92, 42, 62, 92, 62, 48, 44, 70, 73, 72, 60, 49, 62, 52, 53, 57, 81, 88, 56, 57, 61, 78, 102, 61, 60, 69, 53, 92, 67, 52, 57, 61, 53, 48, 50, 71, 66, 69, 65, 74, 49, 66, 82, 61, 87, 52, 67, 75, 37, 70, 69, 69, 77, 54, 54, 65, 87, 83, 62, 59, 59, 93, 56, 63, 55, 63, 52, 66, 76, 48, 55, 64, 31, 59, 62, 47, 53, 62, 61, 82, 69, 68, 94, 59, 58, 61, 45, 67, 86, 67, 59, 101, 43, 66, 68, 49, 70, 58, 46, 67, 53, 91, 102, 77, 52, 75, 94, 43, 77, 74, 58, 57, 74, 71, 60, 52, 56, 73, 77, 66, 64, 59, 87, 107, 72, 52, 69, 44, 62, 53, 62, 54, 74, 69, 55, 60, 70, 45, 80, 92, 114, 56, 61, 63, 81, 64, 56, 54, 65, 52, 68, 62, 55, 52, 69, 71, 49, 70, 105, 63, 65, 60, 65, 64, 89, 57, 74, 74, 55, 66, 69, 82, 82, 65, 77, 62, 72, 100, 90, 67, 61, 50, 56, 69, 72, 76, 82, 55, 57, 58, 57, 65, 61, 57, 61, 92, 55, 45, 65, 66, 60, 53, 64, 59, 66, 71, 60, 92, 96, 68, 53, 70, 54, 60, 53, 64, 90, 68, 60, 81, 68, 104, 67, 62, 90, 49, 44, 73, 57, 50, 77, 61, 51, 47, 70, 82, 74, 65, 60, 61, 72, 48, 82, 54, 47, 53, 72, 118, 67, 76, 71, 57, 56, 66, 72, 91, 60, 57, 79, 84, 61, 53, 59, 66, 114, 40, 61, 73, 63, 59, 95, 65, 56, 54, 77, 62, 47, 60, 70, 90, 73, 58, 59, 62, 55, 57, 74, 60, 49, 71, 56, 66, 73, 50, 52, 70, 54, 88, 70, 72, 58, 78, 60, 55, 56, 62, 51, 56, 52, 58, 58, 66, 62, 56, 75, 66, 45, 61, 48, 47, 62, 77, 71, 67, 65, 60, 52, 68, 37, 52, 70, 110, 54, 69, 85, 62, 54, 86, 67, 60, 105, 71, 66, 81, 57, 59, 68, 53, 76, 51, 84, 67, 67, 75, 64, 70, 69, 76, 113, 54, 46, 54, 70, 65, 78, 59, 61, 62, 68, 65, 134, 71, 56, 65, 59, 78, 71, 56, 56, 62, 55, 51, 58, 53, 73, 88, 54, 54, 107, 75, 63, 82, 77, 67, 62, 57, 85, 74, 80, 62, 62, 52, 47, 59, 64, 55, 60, 67, 68, 60, 48, 94, 52, 64, 56, 65, 67, 62, 71, 57, 61, 64, 61, 72, 71, 52, 89, 69, 54, 64, 106, 69, 63, 62, 58, 58, 39, 45, 64, 58, 58, 55, 81, 68, 65, 55, 59, 49, 42, 49, 59, 59, 83, 53, 62, 66, 74, 58, 52, 56, 80, 61, 69, 63, 84, 51, 67, 55, 66, 62, 58, 80, 52, 70, 69, 63, 67, 50, 59, 76, 110, 74, 60, 61, 61, 62, 55, 106, 50, 65, 65, 71, 69, 60, 62, 60, 60, 88, 61, 74, 54, 63, 47, 72, 41, 57, 131, 70, 56, 65, 64, 68, 50, 72, 54, 58, 64, 74, 64, 64, 45, 70, 69, 58, 60, 49, 85, 88, 52, 66, 101, 57, 74, 95, 88, 52, 73, 51, 65, 56, 75, 91, 102, 65, 47, 69, 61, 81, 64, 69, 84, 49, 63, 93, 59, 70, 54, 65, 72, 62, 68, 70, 62, 93, 63, 94, 64, 77, 59, 60, 88, 70, 56, 66, 51, 77, 65, 44, 74, 59, 58, 72, 56, 84, 59, 75, 110, 57, 56, 89, 62, 60, 64, 61, 58, 56, 63, 68, 64, 57, 70, 68, 56, 54, 89, 80, 84, 75, 70, 71, 78, 51, 69, 82, 67, 55, 51, 71, 56, 61, 76, 49, 63, 85, 58, 60, 68, 86, 74, 56, 71, 52, 47, 75, 57, 71, 87, 76, 68, 50, 69, 51, 65, 53, 55, 78, 81, 74, 54, 54, 98, 68, 55, 70, 65, 60, 46, 53, 77, 51, 62, 64, 82, 57, 83, 76, 73, 46, 63, 47, 53, 58, 60, 49, 57, 49, 54, 66, 79, 87, 58, 76, 65, 72, 65, 48, 54, 102, 60, 73, 65, 79, 91, 59, 66, 94, 60, 59, 63, 94, 60, 54, 41, 47, 65, 87, 83, 75, 67, 61, 65, 46, 58, 68, 46, 64, 57, 61, 80, 71, 71, 52, 113, 60, 88, 76, 51, 58, 84, 57, 60, 57, 71, 68, 57, 82, 68, 60, 65, 66, 52, 70, 49, 59, 73, 59, 60, 59, 50, 68, 65, 69, 57, 47, 64, 65, 80, 73, 108, 58, 81, 58, 46, 70, 70, 62, 59, 63, 64, 60, 62, 51, 67, 64, 84, 66, 59, 58, 103, 67, 53, 42, 61, 58, 59, 70, 81, 61, 65, 73, 59, 76, 50, 76, 62, 79, 68, 96, 72, 48, 65, 57, 58, 75, 86, 58, 74, 50, 123, 52, 55, 67, 94, 61, 111, 56, 89, 67, 88, 80, 63, 55, 48, 55, 57, 59, 102, 53, 73, 58, 75, 54, 62, 82, 53, 75, 57, 54, 73, 62, 34, 58, 56, 67, 87, 49, 61, 80, 48, 66, 84, 65, 54, 80, 55, 86, 64, 71, 63, 68, 58, 86, 60, 50, 66, 69, 54, 74, 61, 45, 61, 104, 43, 52, 62, 55, 52, 57, 57, 77, 61, 65, 92, 111, 55, 54, 59, 57, 79, 81, 67, 47, 97, 71, 64, 67, 77, 65, 67, 75, 62, 70, 46, 55, 63, 55, 81, 59, 67, 61, 67, 79, 82, 68, 61, 61, 128, 54, 58, 69, 58, 61, 62, 63, 48, 56, 42, 66, 67, 75, 55, 77, 53, 66, 60, 80, 62, 52, 83, 56, 57, 84, 87, 55, 54, 58, 51, 97, 80, 65, 82, 63, 53, 47, 66, 64, 44, 53, 50, 68, 72, 65, 61, 70, 63, 66, 55, 24, 100, 103, 72, 66, 60, 64, 57, 61, 64, 64, 52, 63, 87, 78, 72, 40, 70, 68, 64, 68, 93, 72, 80, 79, 78, 61, 86, 73, 60, 73, 67, 60, 82, 56, 82, 70, 66, 59, 52, 67, 83, 57, 92, 47, 70, 59, 80, 65, 72, 46, 48, 71, 76, 51, 131, 50, 60, 58, 80, 50, 79, 72, 64, 50, 75, 73, 82, 73, 57, 97, 65, 55, 68, 65, 79, 77, 54, 76, 61, 72, 57, 91, 67, 58, 61, 66, 55, 54, 52, 50, 101, 79, 57, 69, 50, 54, 74, 75, 52, 92, 64, 68, 44, 55, 72, 66, 51, 55, 67, 95, 55, 81, 56, 70, 58, 80, 63, 65, 62, 55, 52, 69, 65, 84, 71, 69, 66, 78, 84, 58, 64, 48, 64, 85, 57, 49, 59, 97, 68, 56, 51, 75, 52, 46, 78, 57, 60, 63, 81, 62, 65, 72, 55, 70, 77, 52, 72, 47, 54, 55, 60, 56, 71, 57, 70, 91, 66, 56, 66, 58, 67, 60, 49, 71, 64, 75, 77, 58, 78, 79, 58, 53, 66, 49, 48, 53, 59, 92, 56, 65, 55, 61, 62, 65, 63, 54, 58, 57, 53, 63, 48, 60, 87, 46, 60, 47, 49, 69, 94, 46, 53, 76, 58, 73, 100, 62, 55, 62, 50, 67, 63, 58, 67, 48, 71, 72, 63, 55, 65, 70, 40, 64, 72, 60, 56, 63, 56, 68, 60, 63, 47, 51, 68, 56, 73, 55, 61, 65, 40, 66, 53, 59, 60, 56, 78, 60, 83, 89, 75, 83, 70, 51, 68, 61, 70, 61, 55, 101, 77, 82, 76, 64, 55, 89, 75, 74, 84, 71, 67, 89, 60, 60, 44, 81, 72, 68, 55, 66, 49, 69, 47, 59, 73, 71, 65, 56, 62, 50, 59, 55, 44, 106, 80, 58, 55, 84, 63, 60, 76, 70, 68, 65, 77, 45, 60, 65, 60, 65, 77, 57, 62, 46, 68, 64, 76, 71, 61, 70, 58, 56, 60, 53, 78, 86, 68, 66, 64, 63, 57, 60, 61, 67, 65, 81, 67, 56, 68, 78, 49, 60, 60, 66, 67, 59, 40, 74, 67, 83, 84, 65, 56, 67, 67, 61, 44, 57, 64, 56, 84, 66, 90, 76, 54, 59, 49, 72, 60, 50, 78, 61, 58, 67, 68, 80, 74, 58, 69, 57, 66, 60, 79, 59, 59, 59, 77, 57, 71, 75, 60, 79, 62, 48, 81, 52, 64, 71, 72, 72, 66, 69, 69, 69, 60, 61, 67, 61, 80, 50, 67, 45, 67, 70, 65, 52, 58, 59, 160, 58, 69, 69, 71, 73, 73, 59, 64, 77, 56, 57, 74, 61, 62, 73, 65, 59, 73, 74, 73, 72, 71, 71, 60, 63, 70, 74, 47, 43, 63, 58, 75, 59, 72, 73, 50, 62, 62, 72, 90, 56, 53, 67, 78, 55, 87, 46, 40, 53, 56, 63, 51, 64, 67, 75, 57, 68, 46, 84, 75, 59, 64, 54, 88, 68, 67, 53, 66, 62, 52, 67, 63, 56, 71, 62, 89, 62, 93, 63, 50, 70, 45, 48, 57, 63, 54, 98, 77, 82, 65, 94, 76, 79, 57, 50, 54, 67, 63, 69, 50, 52, 59, 66, 76, 75, 53, 69, 80, 54, 54, 47, 79, 57, 60, 60, 53, 88, 59, 65, 63, 65, 53, 59, 82, 63, 73, 63, 77, 58, 64, 62, 70, 59, 60, 60, 151, 89, 55, 67, 58, 65, 71, 74, 60, 61, 44, 68, 59, 58, 55, 59, 53, 84, 61, 59, 80, 63, 67, 48, 81, 64, 58, 54, 71, 61, 59, 55, 61, 63, 68, 57, 56, 66, 53, 64, 56, 65, 62, 57, 77, 63, 54, 100, 57, 61, 65, 65, 73, 61, 63, 72, 69, 66, 57, 75, 55, 57, 69, 65, 53, 78, 74, 69, 116, 68, 50, 55, 75, 54, 49, 56, 78, 71, 61, 70, 68, 63, 56, 79, 57, 75, 70, 63, 86, 75, 61, 57, 62, 69, 49, 79, 61, 72, 75, 71, 59, 57, 71, 60, 77, 70, 97, 62, 66, 70, 66, 68, 77, 60, 56, 72, 67, 70, 72, 96, 68, 57, 75, 69, 59, 69, 55, 59, 74, 79, 65, 69, 84, 49, 63, 78, 88, 60, 98, 81, 66, 73, 63, 59, 68, 69, 65, 52, 61, 54, 48, 69, 82, 59, 57, 84, 53, 59, 64, 49, 69, 92, 58, 68, 58, 59, 59, 94, 61, 71, 85, 73, 90, 75, 53, 59, 63, 66, 56, 70, 70, 93, 78, 52, 55, 56, 56, 89, 72, 57, 63, 65, 66, 104, 65, 75, 95, 72, 76, 57, 117, 65, 66, 58, 96, 80, 61, 69, 62, 54, 62, 51, 51, 56, 56, 56, 79, 77, 68, 50, 68, 69, 54, 67, 63, 73, 35, 62, 68, 54, 62, 62, 58, 66, 81, 59, 67, 68, 65, 72, 55, 76, 87, 76, 73, 66, 58, 86, 54, 76, 46, 58, 74, 75, 71, 59, 50, 72, 59, 57, 44, 61, 75, 70, 63, 62, 64, 71, 57, 60, 75, 56, 58, 72, 52, 82, 55, 58, 60, 91, 57, 84, 72, 91, 62, 59, 65, 57, 53, 43, 73, 71, 60, 61, 94, 58, 54, 68, 63, 64, 72, 60, 86, 58, 57, 75, 73, 59, 96, 57, 104, 48, 63, 73, 69, 66, 54, 47, 53, 62, 70, 53, 75, 67, 56, 53, 68, 59, 82, 62, 54, 90, 68, 79, 48, 74, 45, 61, 67, 55, 77, 69, 80, 61, 70, 65, 55, 63, 59, 50, 72, 72, 66, 55, 66, 72, 56, 76, 65, 56, 55, 51, 74, 70, 51, 64, 85, 61, 61, 81, 67, 68, 68, 51, 49, 78, 64, 78, 60, 65, 61, 59, 80, 70, 64, 71, 42, 80, 54, 49, 60, 54, 76, 72, 65, 103, 63, 65, 65, 50, 71, 61, 60, 73, 71, 57, 87, 46, 72, 63, 61, 68, 66, 79, 61, 63, 70, 60, 68, 61, 61, 61, 71, 61, 88, 78, 76, 58, 54, 78, 65, 82, 62, 58, 70, 57, 56, 55, 74, 67, 84, 75, 72, 55, 84, 67, 65, 54, 52, 67, 77, 64, 71, 54, 50, 72, 59, 64, 86, 66, 51, 64, 71, 81, 50, 69, 66, 88, 73, 60, 60, 55, 68, 76, 80, 75, 50, 68, 69, 100, 56, 72, 68, 60, 37, 55, 55, 58, 89, 50, 70, 70, 55, 62, 72, 60, 56, 47, 44, 50, 57, 64, 50, 60, 91, 48, 77, 57, 61, 85, 42, 70, 71, 93, 68, 66, 73, 55, 63, 55, 65, 57, 70, 78, 62, 65, 50, 65, 53, 84, 64, 63, 64, 66, 72, 82, 68, 71, 64, 68, 57, 64, 67, 64, 61, 70, 68, 76, 70, 70, 51, 50, 83, 86, 75, 71, 70, 77, 81, 69, 60, 82, 52, 68, 57, 71, 52, 79, 65, 70, 66, 58, 70, 60, 59, 60, 56, 72, 55, 52, 51, 65, 90, 61, 67, 62, 72, 61, 61, 48, 47, 62, 65, 84, 62, 79, 55, 87, 60, 66, 50, 58, 69, 66, 55, 55, 55, 56, 62, 64, 92, 83, 58, 66, 88, 68, 70, 54, 93, 55, 51, 70, 47, 52, 70, 66, 61, 76, 74, 65, 57, 51, 61, 51, 50, 58, 75, 61, 62, 67, 65, 72, 76, 49, 65, 62, 63, 54, 59, 129, 83, 60, 71, 75, 68, 54, 63, 64, 65, 63, 53, 53, 80, 66, 77, 64, 68, 56, 39, 55, 56, 74, 58, 84, 56, 58, 46, 63, 50, 52, 70, 69, 56, 74, 71, 55, 48, 56, 63, 82, 73, 64, 56, 67, 74, 92, 64, 79, 62, 74, 68, 58, 63, 55, 56, 66, 64, 68, 48, 83, 50, 55, 67, 76, 49, 55, 62, 56, 52, 87, 62, 89, 73, 54, 48, 63, 41, 61, 101, 80, 57, 65, 72, 54, 79, 62, 60, 55, 64, 57, 55, 78, 77, 66, 62, 69, 62, 72, 59, 60, 55, 58, 56, 54, 84, 81, 64, 48, 60, 77, 61, 75, 67, 68, 59, 65, 47, 89, 55, 57, 84, 60, 63, 67, 115, 60, 44, 53, 106, 67, 55, 56, 57, 54, 70, 63, 55, 75, 52, 63, 55, 78, 50, 61, 66, 69, 79, 67, 68, 89, 61, 57, 64, 46, 63, 71, 71, 57, 57, 52, 73, 65, 93, 58, 63, 54, 69, 59, 70, 65, 61, 71, 64, 63, 52, 65, 91, 63, 66, 66, 90, 55, 73, 80, 66, 63, 63, 80, 65, 51, 68, 60, 53, 81, 74, 65, 58, 51, 60, 71, 52, 67, 61, 60, 62, 74, 61, 66, 69, 87, 62, 80, 52, 60, 86, 60, 71, 83, 58, 49, 59, 47, 59, 66, 55, 66, 64, 64, 57, 57, 50, 56, 54, 73, 61, 54, 63, 63, 143, 58, 59, 70, 63, 82, 61, 67, 65, 70, 73, 60, 60, 76, 68, 58, 68, 56, 67, 93, 69, 69, 52, 66, 54, 94, 49, 81, 62, 64, 75, 52, 57, 65, 57, 66, 54, 70, 57, 63, 77, 76, 78, 86, 68, 54, 53, 50, 60, 115, 73, 60, 54, 61, 60, 54, 72, 68, 67, 68, 61, 65, 76, 71, 54, 49, 61, 63, 54, 73, 55, 62, 70, 59, 54, 62, 69, 54, 115, 58, 72, 62, 69, 55, 59, 50, 51, 76, 62, 75, 68, 72, 73, 64, 58, 62, 53, 79, 103, 60, 65, 58, 53, 65, 56, 61, 69, 63, 50, 72, 69, 73, 58, 70, 68, 65, 49, 70, 64, 76, 65, 64, 52, 63, 50, 66, 50, 57, 90, 57, 63, 61, 66, 70, 60, 49, 129, 51, 76, 61, 56, 66, 63, 64, 58, 67, 67, 55, 58, 75, 63, 53, 61, 69, 62, 63, 71, 52, 74, 63, 76, 57, 55, 63, 85, 60, 69, 68, 72, 43, 64, 69, 73, 59, 62, 66, 63, 55, 81, 58, 70, 52, 65, 84, 70, 61, 61, 69, 92, 67, 82, 67, 82, 67, 55, 54, 60, 60, 59, 62, 58, 61, 68, 61, 73, 77, 62, 58, 68, 59, 50, 65, 69, 68, 55, 68, 58, 74, 54, 109, 58, 66, 53, 66, 82, 47, 62, 80, 62, 57, 66, 74, 56, 58, 68, 69, 65, 50, 67, 96, 83, 71, 82, 65, 61, 57, 72, 66, 65, 59, 59, 63, 55, 61, 91, 87, 63, 70, 66, 68, 53, 99, 61, 74, 62, 64, 135, 50, 82, 76, 68, 84, 70, 75, 73, 77, 67, 67, 58, 57, 40, 79, 65, 64, 79, 69, 53, 63, 65, 51, 64, 59, 64, 65, 60, 54, 69, 53, 61, 52, 63, 83, 65, 49, 55, 66, 49, 60, 102, 68, 63, 65, 101, 69, 75, 67, 64, 83, 66, 92, 48, 57, 42, 56, 50, 64, 65, 57, 41, 71, 62, 78, 121, 55, 66, 61, 73, 65, 75, 55, 57, 69, 50, 73, 59, 81, 64, 57, 68, 67, 61, 67, 49, 72, 67, 55, 66, 78, 63, 69, 62, 63, 74, 66, 72, 71, 68, 64, 60, 71, 63, 55, 63, 60, 57, 55, 72, 57, 86, 83, 53, 61, 80, 79, 54, 74, 77, 60, 69, 65, 64, 50, 67, 101, 74, 74, 55, 68, 58, 67, 49, 76, 51, 64, 67, 60, 47, 63, 78, 74, 57, 70, 60, 63, 54, 68, 80, 64, 90, 55, 61, 79, 58, 56, 64, 68, 64, 59, 54, 55, 73, 81, 93, 59, 45, 63, 56, 55, 98, 53, 52, 54, 80, 64, 96, 65, 65, 50, 135, 59, 54, 72, 75, 61, 68, 64, 58, 67, 62, 72, 95, 99, 106, 77, 57, 43, 61, 72, 65, 65, 63, 54, 69, 66, 67, 61, 59, 50, 57, 56, 64, 66, 62, 66, 61, 67, 64, 71, 71, 96, 52, 72, 79, 64, 43, 57, 87, 54, 79, 55, 62, 60, 70, 56, 62, 58, 44, 80, 100, 69, 65, 68, 51, 99, 60, 62, 62, 67, 75, 63, 54, 54, 47, 53, 62, 107, 59, 75, 98, 70, 77, 63, 59, 76, 61, 61, 68, 65, 80, 61, 68, 62, 73, 76, 57, 61, 74, 70, 51, 55, 64, 70, 57, 53, 100, 60, 56, 68, 64, 67, 70, 72, 64, 64, 63, 65, 58, 62, 73, 59, 41, 74, 65, 77, 64, 56, 51, 66, 77, 95, 88, 72, 64, 63, 60, 49, 58, 56, 53, 76, 66, 55, 67, 64, 54, 58, 64, 54, 84, 106, 64, 59, 59, 92, 85, 66, 63, 63, 67, 56, 67, 85, 74, 56, 68, 75, 54, 61, 44, 61, 58, 81, 61, 60, 58, 47, 70, 47, 59, 51, 93, 70, 53, 67, 70, 75, 87, 69, 43, 68, 70, 67, 41, 71, 67, 60, 59, 55, 55, 62, 69, 67, 60, 62, 62, 70, 60, 63, 72, 96, 65, 64, 89, 53, 85, 73, 64, 53, 90, 51, 71, 65, 63, 66, 60, 76, 51, 64, 61, 82, 64, 60, 65, 69, 55, 50, 67, 67, 70, 62, 54, 44, 63, 62, 63, 34, 62, 79, 52, 70, 59, 64, 53, 57, 85, 62, 71, 58, 55, 70, 69, 70, 59, 51, 46, 50, 38, 58, 59, 59, 58, 71, 58, 79, 64, 80, 62, 65, 64, 63, 64, 111, 52, 71, 76, 57, 66, 63, 65, 71, 67, 75, 48, 63, 71, 54, 70, 54, 70, 72, 71, 76, 58, 58, 77, 60, 70, 61, 53, 70, 73, 71, 66, 66, 69, 52, 90, 70, 74, 70, 73, 64, 64, 58, 58, 65, 68, 49, 60, 63, 77, 69, 89, 65, 64, 78, 44, 73, 64, 69, 77, 56, 59, 62, 62, 71, 65, 52, 72, 65, 62, 73, 75, 54, 81, 63, 66, 61, 50, 64, 60, 58, 74, 76, 66, 75, 60, 107, 70, 62, 70, 70, 57, 54, 66, 58, 53, 67, 48, 64, 90, 86, 68, 70, 64, 57, 68, 68, 78, 69, 61, 65, 61, 73, 82, 79, 59, 54, 65, 69, 70, 59, 71, 68, 64, 68, 58, 94, 55, 56, 59, 62, 52, 46, 94, 53, 84, 88, 61, 67, 74, 55, 59, 63, 56, 61, 56, 53, 72, 55, 81, 58, 58, 52, 60, 63, 60, 63, 63, 49, 63, 97, 48, 64, 66, 73, 67, 87, 70, 67, 64, 61, 67, 74, 52, 49, 51, 66, 59, 75, 53, 105, 60, 68, 54, 49, 56, 78, 51, 73, 54, 76, 105, 60, 60, 56, 79, 57, 91, 60, 48, 56, 66, 45, 59, 65, 58, 81, 59, 72, 66, 82, 58, 56, 50, 62, 69, 57, 70, 61, 61, 62, 79, 72, 99, 73, 68, 56, 61, 58, 55, 51, 66, 63, 59, 49, 72, 52, 89, 70, 79, 67, 76, 79, 44, 77, 41, 52, 78, 72, 53, 56, 67, 79, 62, 60, 56, 108, 84, 39, 56, 57, 47, 62, 63, 71, 67, 87, 40, 69, 89, 73, 53, 49, 76, 90, 62, 53, 56, 76, 74, 71, 53, 78, 55, 81, 62, 52, 60, 78, 64, 72, 55, 65, 99, 74, 60, 49, 54, 62, 78, 73, 69, 93, 74, 54, 74, 51, 58, 70, 60, 55, 66, 68, 71, 54, 57, 98, 92, 90, 53, 90, 82, 63, 54, 69, 61, 64, 64, 68, 55, 69, 76, 70, 96, 46, 63, 70, 60, 71, 58, 62, 95, 53, 62, 70, 51, 84, 72, 66, 93, 56, 76, 57, 66, 63, 87, 62, 58, 93, 61, 59, 77, 48, 63, 55, 62, 69, 45, 69, 72, 65, 41, 57, 44, 58, 89, 59, 65, 62, 66, 66, 65, 64, 68, 75, 116, 65, 57, 55, 57, 54, 66, 70, 77, 63, 76, 76, 52, 69, 43, 60, 54, 92, 54, 55, 64, 54, 55, 62, 54, 77, 52, 65, 47, 56, 68, 60, 79, 79, 68, 55, 59, 71, 69, 46, 61, 61, 44, 75, 148, 64, 51, 65, 48, 70, 49, 77, 80, 59, 57, 100, 65, 93, 60, 78, 87, 56, 56, 55, 159, 61, 49, 54, 54, 63, 68, 83, 94, 52, 70, 56, 70, 71, 67, 49, 95, 66, 68, 84, 63, 60, 49, 63, 55, 60, 82, 115, 57, 63, 73, 38, 74, 63, 74, 42, 56, 86, 71, 67, 66, 77, 53, 35, 70, 74, 70, 53, 85, 44, 58, 68, 80, 59, 66, 53, 76, 64, 57, 60, 56, 56, 73, 45, 63, 66, 67, 59, 67, 44, 83, 51, 50, 65, 44, 86, 76, 57, 70, 90, 77, 47, 87, 74, 64, 61, 56, 60, 51, 51, 41, 51, 43, 94, 110, 70, 64, 76, 84, 64, 72, 60, 71, 54, 63, 61, 74, 55, 66, 88, 110, 113, 52, 69, 83, 57, 58, 51, 96, 62, 88, 70, 83, 59, 57, 60, 96, 79, 60, 56, 59, 66, 67, 75, 69, 93, 97, 54, 79, 41, 61, 54, 64, 61, 60, 49, 65, 64, 55, 67, 61, 61, 82, 72, 62, 56, 56, 66, 46, 59, 57, 52, 89, 84, 78, 61, 71, 107, 57, 53, 65, 71, 57, 60, 38, 50, 122, 60, 63, 68, 96, 58, 62, 56, 71, 77, 89, 85, 66, 68, 57, 63, 80, 52, 71, 72, 66, 75, 61, 73, 78, 74, 53, 61, 61, 62, 59, 64, 66, 63, 59, 46, 59, 63, 57, 65, 55, 59, 64, 58, 63, 92, 44, 64, 64, 49, 68, 84, 47, 65, 51, 56, 41, 69, 59, 48, 60, 61, 74, 54, 58, 66, 62, 87, 57, 63, 75, 60, 72, 60, 59, 66, 64, 51, 53, 87, 60, 48, 61, 64, 67, 61, 52, 63, 79, 64, 64, 57, 61, 93, 61, 68, 61, 70, 54, 87, 66, 71, 69, 60, 69, 80, 74, 58, 59, 76, 70, 59, 57, 69, 51, 78, 75, 71, 61, 91, 68, 54, 63, 45, 80, 53, 65, 54, 125, 51, 75, 75, 67, 70, 63, 53, 49, 56, 36, 52, 74, 66, 67, 66, 49, 73, 46, 73, 54, 57, 71, 84, 69, 66, 63, 68, 66, 53, 63, 43, 62, 51, 72, 58, 51, 79, 59, 45, 65, 65, 60, 59, 56, 117, 67, 71, 70, 58, 63, 58, 71, 53, 63, 57, 67, 65, 67, 51, 67, 61, 69, 52, 53, 104, 64, 58, 60, 74, 60, 86, 66, 74, 59, 45, 59, 66, 77, 57, 60, 78, 93, 52, 61, 73, 63, 55, 62, 72, 74, 67, 63, 71, 69, 45, 59, 62, 56, 68, 59, 59, 51, 56, 72, 94, 68, 59, 87, 54, 57, 54, 76, 70, 76, 56, 63, 68, 67, 83, 78, 64, 76, 70, 75, 59, 76, 66, 77, 68, 82, 59, 78, 77, 59, 77, 48, 70, 72, 90, 73, 60, 57, 78, 57, 61, 76, 76, 60, 58, 42, 63, 77, 63, 68, 88, 55, 80, 56, 71, 40, 57, 77, 47, 68, 77, 64, 98, 73, 43, 80, 55, 61, 73, 61, 61, 51, 55, 73, 84, 36, 54, 62, 78, 63, 63, 73, 71, 54, 91, 62, 70, 71, 64, 46, 69, 61, 81, 71, 74, 51, 54, 54, 69, 67, 77, 64, 52, 72, 73, 102, 66, 66, 89, 50, 55, 52, 76, 49, 79, 61, 63, 69, 69, 77, 58, 61, 82, 72, 66, 62, 64, 71, 70, 50, 54, 52, 56, 51, 87, 55, 67, 74, 52, 51, 83, 78, 60, 49, 55, 59, 62, 55, 64, 51, 72, 84, 44, 88, 63, 71, 63, 92, 59, 55, 69, 65, 50, 53, 92, 60, 66, 95, 90, 82, 86, 71, 56, 74, 63, 55, 63, 61, 55, 77, 54, 92, 77, 66, 54, 61, 56, 69, 56, 76, 56, 64, 72, 71, 63, 65, 64, 66, 81, 69, 71, 54, 57, 61, 90, 55, 32, 64, 58, 49, 56, 67, 105, 61, 61, 66, 72, 64, 52, 109, 78, 87, 58, 84, 78, 56, 52, 61, 53, 46, 76, 45, 57, 68, 63, 61, 89, 62, 52, 68, 93, 54, 52, 75, 47, 67, 38, 62, 59, 62, 46, 61, 52, 64, 78, 56, 59, 74, 71, 67, 71, 56, 54, 62, 62, 61, 54, 55, 70, 69, 55, 52, 71, 56, 54, 71, 116, 47, 68, 71, 48, 73, 50, 82, 81, 61, 53, 74, 67, 78, 64, 63, 86, 79, 54, 79, 62, 60, 71, 73, 62, 80, 53, 45, 60, 53, 69, 76, 73, 68, 50, 77, 70, 61, 57, 65, 68, 56, 73, 61, 59, 61, 71, 51, 77, 70, 81, 68, 51, 64, 47, 51, 89, 67, 62, 59, 64, 66, 116, 56, 84, 55, 40, 65, 55, 63, 42, 73, 81, 68, 68, 57, 66, 75, 88, 63, 56, 90, 47, 57, 24, 43, 47, 77, 46, 62, 66, 65, 72, 69, 78, 63, 51, 71, 60, 51, 74, 65, 61, 46, 58, 70, 57, 62, 75, 42, 68, 60, 73, 48, 55, 46, 68, 53, 63, 69, 58, 76, 53, 65, 55, 72, 53, 73, 53, 93, 65, 54, 45, 54, 75, 54, 59, 60, 66, 46, 61, 48, 72, 84, 44, 72, 62, 56, 73, 59, 65, 49, 58, 64, 52, 66, 71, 56, 65, 54, 74, 48, 57, 93, 103, 58, 79, 66, 51, 72, 51, 77, 68, 62, 66, 65, 68, 58, 61, 74, 61, 81, 53, 85, 73, 60, 71, 79, 95, 81, 68, 73, 41, 56, 82, 64, 67, 59, 49, 77, 59, 167, 53, 61, 58, 82, 46, 54, 70, 59, 65, 87, 65, 68, 43, 58, 59, 69, 54, 43, 57, 79, 61, 74, 64, 44, 66, 96, 92, 58, 56, 56, 62, 59, 49, 44, 64, 78, 43, 116, 65, 78, 44, 95, 62, 57, 53, 66, 64, 44, 66, 62, 63, 86, 54, 68, 44, 101, 80, 67, 73, 78, 58, 65, 72, 62, 60, 69, 84, 77, 53, 78, 62, 51, 90, 81, 65, 56, 65, 64, 65, 86, 70, 79, 58, 68, 85, 57, 89, 71, 61, 50, 60, 60, 57, 83, 59, 65, 70, 62, 56, 57, 69, 53, 64, 55, 53, 67, 77, 70, 52, 65, 65, 55, 61, 53, 47, 55, 65, 94, 61, 65, 64, 46, 61, 118, 49, 54, 59, 55, 63, 59, 65, 63, 86, 112, 71, 80, 59, 75, 71, 75, 55, 57, 64, 90, 49, 92, 64, 97, 49, 47, 44, 50, 59, 67, 52, 61, 52, 59, 73, 61, 57, 68, 47, 53, 76, 57, 65, 52, 60, 83, 63, 50, 66, 72, 90, 59, 50, 71, 65, 73, 62, 75, 73, 76, 66, 78, 78, 58, 56, 64, 66, 62, 76, 48, 63, 72, 81, 91, 53, 56, 45, 58, 75, 68, 56, 59, 85, 66, 66, 74, 63, 46, 75, 74, 59, 69, 66, 60, 56, 80, 97, 78, 64, 78, 80, 51, 55, 41, 54, 51, 71, 62, 40, 73, 79, 66, 77, 74, 60, 66, 65, 54, 71, 67, 75, 84, 67, 74, 69, 83, 56, 54, 73, 62, 50, 76, 62, 93, 53, 43, 56, 55, 57, 81, 76, 57, 54, 55, 61, 51, 68, 57, 83, 85, 73, 64, 96, 52, 80, 52, 80, 61, 45, 65, 56, 60, 54, 58, 69, 62, 67, 53, 68, 57, 58, 60, 71, 52, 84, 67, 103, 87, 51, 83, 64, 45, 69, 60, 61, 53, 52, 65, 72, 62, 52, 88, 84, 49, 58, 68, 83, 58, 70, 57, 67, 63, 80, 77, 54, 56, 68, 75, 73, 45, 89, 59, 94, 65, 69, 46, 62, 96, 105, 52, 89, 70, 50, 65, 63, 94, 76, 56, 51, 55, 41, 64, 77, 44, 66, 48, 61, 77, 70, 64, 56, 79, 47, 48, 63, 66, 70, 43, 66, 44, 63, 71, 70, 70, 62, 47, 50, 66, 74, 49, 57, 101, 80, 57, 77, 79, 55, 75, 94, 56, 59, 57, 59, 66, 68, 57, 74, 82, 54, 65, 144, 77, 85, 56, 47, 60, 57, 85, 49, 59, 62, 49, 63, 68, 87, 105, 72, 60, 71, 84, 60, 58, 60, 51, 93, 99, 61, 59, 59, 95, 73, 38, 59, 62, 41, 83, 49, 78, 61, 84, 89, 50, 75, 68, 54, 54, 62, 61, 66, 61, 55, 66, 53, 68, 53, 52, 98, 71, 51, 58, 53, 41, 58, 57, 65, 67, 50, 60, 61, 83, 64, 88, 35, 46, 79, 66, 60, 53, 48, 64, 60, 66, 72, 69, 74, 64, 77, 62, 81, 53, 67, 80, 58, 105, 49, 88, 68, 55, 85, 65, 54, 74, 80, 52, 62, 58, 68, 57, 58, 46, 47, 67, 76, 60, 79, 72, 65, 80, 64, 60, 105, 66, 52, 72, 58, 62, 68, 58, 58, 52, 74, 53, 57, 70, 63, 62, 50, 74, 71, 58, 79, 69, 58, 62, 85, 117, 61, 60, 68, 78, 73, 54, 56, 65, 77, 67, 57, 84, 61, 61, 56, 60, 46, 69, 51, 55, 59, 72, 110, 75, 60, 74, 79, 52, 49, 70, 64, 48, 65, 62, 65, 53, 56, 48, 38, 57, 62, 55, 69, 62, 73, 66, 91, 59, 69, 83, 62, 65, 83, 51, 69, 65, 66, 49, 71, 72, 72, 73, 68, 60, 63, 101, 63, 77, 68, 63, 68, 72, 49, 81, 57, 60, 82, 59, 71, 58, 75, 53, 73, 87, 90, 64, 66, 66, 70, 76, 87, 61, 60, 87, 52, 61, 82, 51, 75, 57, 72, 90, 70, 90, 48, 66, 43, 86, 74, 51, 49, 50, 72, 93, 58, 43, 52, 69, 56, 102, 49, 44, 54, 47, 83, 65, 73, 61, 59, 74, 59, 46, 69, 55, 61, 54, 53, 66, 74, 45, 70, 61, 73, 62, 72, 56, 88, 75, 58, 72, 56, 57, 67, 73, 73, 72, 50, 70, 58, 85, 50, 46, 75, 62, 117, 89, 106, 49, 60, 58, 63, 61, 53, 84, 55, 66, 67, 73, 64, 61, 86, 55, 59, 45, 78, 100, 56, 68, 68, 46, 54, 56, 35, 48, 83, 48, 50, 81, 56, 64, 65, 57, 70, 74, 60, 69, 57, 86, 56, 63, 46, 51, 54, 79, 63, 133, 72, 94, 61, 69, 71, 70, 62, 53, 72, 63, 73, 60, 50, 79, 52, 71, 89, 85, 54, 51, 66, 54, 59, 74, 68, 48, 68, 55, 63, 53, 64, 63, 72, 63, 74, 56, 57, 97, 70, 50, 62, 62, 85, 63, 61, 67, 50, 55, 50, 96, 70, 64, 82, 95, 69, 69, 72, 59, 66, 87, 74, 60, 83, 66, 79, 79, 68, 86, 61, 44, 95, 102, 61, 63, 65, 78, 74, 71, 57, 70, 70, 65, 53, 76, 70, 63, 72, 64, 54, 57, 53, 62, 54, 51, 62, 43, 58, 92, 48, 58, 85, 50, 55, 70, 88, 66, 85, 66, 63, 56, 67, 58, 65, 68, 61, 53, 53, 70, 60, 57, 105, 80, 51, 52, 95, 65, 61, 48, 66, 80, 50, 64, 57, 40, 95, 69, 80, 60, 48, 106, 42, 48, 60, 83, 57, 96, 55, 66, 70, 84, 58, 74, 65, 51, 82, 79, 57, 78, 83, 76, 58, 46, 73, 61, 68, 68, 62, 88, 56, 59, 62, 45, 65, 70, 70, 64, 45, 57, 81, 52, 82, 64, 64, 73, 46, 73, 65, 67, 70, 60, 77, 70, 61, 56, 70, 57, 56, 65, 57, 62, 55, 36, 75, 54, 60, 55, 69, 64, 63, 47, 99, 72, 64, 64, 75, 63, 71, 71, 79, 66, 47, 80, 42, 57, 70, 63, 49, 70, 44, 54, 65, 67, 79, 56, 79, 63, 65, 73, 57, 101, 44, 55, 65, 96, 87, 63, 68, 70, 81, 74, 72, 58, 52, 53, 61, 69, 64, 81, 82, 56, 102, 61, 74, 67, 68, 27, 65, 74, 44, 67, 45, 62, 47, 63, 86, 77, 60, 40, 59, 63, 62, 64, 69, 86, 65, 72, 70, 58, 56, 59, 75, 48, 65, 44, 70, 87, 51, 53, 72, 71, 53, 62, 68, 67, 48, 61, 55, 68, 61, 54, 66, 60, 75, 67, 74, 79, 65, 78, 80, 79, 52, 56, 56, 62, 73, 75, 70, 70, 66, 103, 60, 70, 49, 76, 58, 74, 80, 43, 81, 50, 75, 49, 60, 54, 58, 67, 51, 71, 71, 82, 42, 66, 46, 82, 57, 69, 68, 69, 71, 50, 70, 89, 60, 87, 58, 76, 51, 70, 49, 64, 84, 61, 73, 66, 66, 121, 89, 72, 81, 34, 89, 77, 48, 79, 113, 50, 69, 58, 74, 75, 61, 72, 69, 79, 70, 135, 40, 84, 69, 75, 70, 62, 78, 67, 58, 39, 64, 76, 93, 59, 106, 46, 62, 59, 52, 62, 59, 78, 80, 53, 83, 60, 67, 70, 62, 58, 71, 61, 74, 91, 79, 107, 83, 87, 40, 62, 89, 45, 110, 46, 72, 80, 70, 40, 73, 62, 64, 122, 70, 59, 51, 73, 46, 65, 60, 74, 63, 73, 124, 46, 62, 46, 53, 55, 44, 76, 51, 75, 78, 57, 37, 46, 53, 81, 116, 78, 64, 77, 72, 81, 70, 70, 46, 46, 56, 60, 61, 64, 54, 46, 52, 79, 88, 89, 73, 78, 103, 62, 51, 58, 70, 55, 71, 54, 55, 52, 109, 78, 66, 62, 58, 60, 64, 49, 82, 68, 60, 73, 67, 46, 70, 58, 68, 55, 68, 78, 62, 57, 69, 45, 85, 90, 71, 49, 52, 52, 69, 48, 82, 48, 58, 58, 60, 72, 81, 49, 71, 69, 75, 46, 60, 71, 67, 59, 62, 70, 68, 70, 51, 77, 56, 69, 54, 52, 43, 33, 67, 107, 89, 71, 63, 59, 71, 53, 52, 41, 45, 61, 71, 61, 61, 69, 58, 79, 64, 73, 70, 66, 58, 56, 63, 51, 60, 83, 57, 54, 62, 69, 63, 51, 63, 56, 37, 84, 69, 77, 89, 69, 63, 60, 69, 80, 47, 55, 71, 68, 51, 57, 62, 59, 59, 54, 47, 104, 60, 67, 79, 68, 56, 84, 59, 75, 60, 78, 55, 57, 52, 97, 64, 64, 66, 52, 64, 64, 70, 59, 66, 88, 100, 39, 76, 65, 63, 70, 63, 55, 57, 60, 77, 86, 77, 93, 61, 57, 77, 46, 78, 142, 58, 63, 65, 51, 62, 46, 47, 53, 43, 40, 44, 66, 68, 74, 64, 56, 70, 51, 57, 60, 72, 55, 54, 57, 50, 67, 56, 45, 68, 44, 53, 106, 74, 77, 61, 69, 73, 56, 93, 49, 65, 95, 60, 77, 47, 92, 52, 64, 58, 77, 83, 67, 48, 61, 46, 63, 54, 75, 77, 81, 65, 67, 72, 70, 58, 82, 99, 58, 68, 73, 66, 64, 60, 55, 57, 52, 67, 52, 67, 80, 53, 47, 72, 60, 77, 68, 62, 50, 81, 47, 42, 69, 58, 68, 50, 56, 68, 67, 75, 72, 64, 67, 75, 71, 66, 88, 87, 67, 74, 46, 104, 50, 66, 76, 82, 80, 42, 72, 86, 71, 86, 109, 67, 52, 52, 101, 87, 69, 81, 53, 61, 61, 77, 78, 73, 83, 84, 63, 81, 51, 82, 73, 108, 68, 73, 53, 76, 69, 39, 58, 57, 114, 59, 73, 78, 71, 86, 55, 71, 57, 76, 91, 43, 51, 49, 70, 46, 127, 38, 86, 62, 72, 67, 61, 46, 68, 86, 43, 56, 69, 82, 83, 54, 58, 83, 65, 49, 60, 71, 84, 70, 58, 55, 66, 87, 76, 78, 55, 62, 64, 67, 79, 58, 71, 84, 90, 86, 83, 63, 40, 64, 86, 41, 69, 89, 58, 57, 78, 47, 55, 66, 57, 53, 87, 76, 57, 64, 89, 49, 54, 42, 59, 71, 45, 53, 52, 66, 48, 64, 69, 78, 104, 67, 109, 67, 58, 79, 65, 69, 57, 76, 60, 77, 47, 55, 49, 60, 69, 50, 49, 70, 63, 61, 57, 56, 72, 70, 77, 55, 65, 56, 45, 67, 116, 60, 64, 53, 84, 64, 57, 67, 59, 55, 72, 72, 56, 59, 79, 75, 58, 72, 53, 82, 54, 72, 58, 77, 64, 48, 54, 47, 49, 74, 91, 66, 63, 60, 63, 65, 69, 125, 58, 68, 68, 64, 40, 62, 67, 50, 83, 94, 60, 64, 58, 82, 77, 79, 75, 54, 62, 66, 61, 46, 60, 87, 71, 68, 57, 68, 74, 71, 80, 72, 49, 59, 67, 51, 99, 106, 64, 61, 70, 51, 57, 89, 63, 71, 68, 72, 116, 64, 66, 67, 46, 43, 57, 67, 48, 70, 83, 45, 62, 75, 23, 68, 94, 72, 74, 66, 93, 63, 74, 45, 56, 83, 53, 78, 67, 92, 54, 71, 71, 67, 91, 46, 71, 90, 60, 58, 37, 55, 111, 49, 70, 57, 63, 58, 65, 84, 50, 84, 68, 84, 49, 74, 76, 56, 69, 47, 64, 113, 65, 73, 50, 50, 70, 59, 63, 53, 106, 58, 61, 76, 66, 54, 63, 59, 134, 77, 84, 68, 73, 58, 56, 66, 73, 59, 51, 46, 54, 60, 88, 41, 99, 73, 103, 77, 67, 66, 80, 64, 82, 90, 76, 63, 55, 42, 61, 52, 56, 54, 82, 56, 58, 57, 88, 76, 66, 77, 59, 74, 59, 55, 63, 47, 54, 53, 59, 62, 87, 75, 73, 66, 90, 72, 84, 67, 80, 43, 59, 59, 89, 103, 43, 64, 52, 70, 88, 63, 48, 69, 64, 86, 67, 78, 57, 58, 71, 72, 65, 84, 61, 70, 76, 62, 63, 65, 79, 57, 45, 62, 99, 57, 80, 57, 66, 77, 84, 54, 69, 52, 65, 64, 55, 74, 48, 50, 52, 69, 64, 69, 58, 52, 47, 47, 79, 76, 62, 65, 57, 92, 60, 94, 83, 64, 41, 80, 61, 51, 63, 85, 61, 64, 64, 61, 70, 55, 55, 92, 88, 52, 72, 61, 51, 74, 77, 55, 69, 36, 57, 68, 57, 67, 64, 69, 85, 61, 64, 57, 66, 78, 52, 51, 56, 49, 59, 72, 56, 57, 56, 56, 72, 65, 60, 64, 45, 78, 59, 62, 81, 73, 61, 82, 65, 52, 58, 63, 73, 87, 62, 52, 75, 66, 57, 70, 79, 61, 87, 71, 54, 48, 52, 67, 92, 70, 72, 91, 49, 55, 59, 56, 92, 75, 113, 62, 65, 71, 47, 49, 50, 46, 64, 63, 68, 78, 51, 57, 45, 66, 71, 70, 83, 53, 67, 78, 66, 52, 57, 47, 58, 72, 58, 87, 62, 66, 57, 60, 58, 56, 55, 64, 61, 67, 57, 64, 113, 67, 101, 70, 59, 43, 77, 58, 75, 57, 49, 54, 61, 69, 72, 50, 67, 83, 69, 57, 68, 68, 69, 70, 77, 79, 87, 48, 63, 66, 69, 62, 50, 66, 59, 47, 102, 94, 51, 49, 63, 52, 87, 73, 68, 59, 72, 51, 66, 59, 86, 58, 67, 52, 46, 60, 122, 67, 106, 73, 68, 70, 69, 77, 65, 79, 75, 53, 67, 61, 58, 68, 63, 55, 73, 56, 67, 64, 68, 61, 53, 57, 59, 74, 56, 64, 85, 65, 76, 57, 68, 78, 55, 75, 66, 58, 51, 60, 70, 67, 78, 52, 58, 56, 59, 64, 68, 52, 57, 53, 74, 35, 59, 53, 57, 72, 78, 82, 54, 96, 69, 81, 71, 92, 58, 64, 60, 58, 72, 44, 54, 56, 48, 79, 64, 89, 78, 59, 61, 61, 96, 51, 37, 81, 82, 62, 87, 53, 74, 45, 54, 61, 57, 101, 99, 50, 72, 67, 82, 65, 77, 73, 77, 53, 65, 63, 73, 47, 68, 72, 72, 56, 79, 77, 63, 58, 73, 91, 66, 60, 88, 54, 66, 48, 55, 74, 66, 65, 83, 59, 60, 89, 84, 70, 66, 60, 39, 78, 65, 69, 66, 116, 63, 72, 50, 80, 73, 67, 74, 47, 71, 50, 64, 57, 47, 55, 79, 51, 72, 78, 77, 65, 66, 53, 53, 59, 60, 45, 64, 54, 85, 62, 67, 83, 62, 64, 57, 53, 53, 63, 60, 46, 81, 74, 71, 64, 66, 56, 51, 67, 69, 64, 57, 89, 68, 54, 69, 61, 52, 71, 93, 65, 58, 63, 96, 60, 57, 81, 64, 74, 95, 58, 73, 55, 63, 49, 63, 67, 49, 78, 65, 68, 83, 45, 90, 57, 41, 63, 59, 77, 109, 63, 66, 75, 90, 63, 73, 77, 81, 59, 61, 69, 54, 54, 60, 63, 92, 68, 67, 62, 73, 65, 79, 55, 61, 59, 74, 76, 80, 45, 68, 66, 46, 69, 45, 62, 64, 73, 80, 50, 69, 93, 57, 62, 71, 73, 67, 59, 74, 57, 68, 61, 97, 77, 52, 50, 67, 68, 58, 59, 40, 60, 60, 66, 86, 64, 54, 59, 64, 63, 74, 54, 90, 63, 60, 78, 46, 68, 56, 60, 57, 73, 105, 68, 109, 71, 106, 71, 74, 58, 62, 59, 85, 48, 85, 56, 67, 79, 68, 73, 97, 41, 65, 52, 78, 61, 44, 67, 77, 61, 76, 67, 74, 64, 61, 68, 82, 65, 67, 53, 61, 75, 30, 75, 83, 66, 64, 93, 58, 84, 50, 78, 41, 65, 63, 68, 53, 69, 65, 66, 74, 44, 68, 43, 62, 64, 48, 104, 67, 77, 56, 61, 79, 71, 67, 42, 72, 63, 63, 90, 61, 61, 43, 74, 70, 72, 55, 54, 68, 54, 70, 56, 66, 48, 84, 56, 48, 63, 70, 80, 63, 79, 86, 97, 61, 67, 74, 69, 78, 56, 117, 70, 71, 52, 51, 60, 62, 68, 67, 40, 72, 60, 64, 61, 58, 62, 49, 47, 63, 79, 52, 60, 65, 58, 51, 76, 53, 51, 95, 58, 65, 79, 49, 85, 87, 54, 79, 96, 59, 59, 48, 68, 76, 98, 103, 60, 62, 76, 55, 62, 77, 75, 57, 69, 57, 66, 84, 62, 57, 60, 77, 57, 65, 61, 81, 52, 67, 68, 89, 69, 66, 56, 70, 75, 86, 71, 50, 64, 59, 67, 56, 68, 66, 62, 48, 71, 60, 63, 65, 87, 67, 60, 115, 51, 47, 79, 90, 62, 88, 54, 52, 77, 53, 81, 66, 55, 53, 48, 60, 90, 65, 42, 56, 57, 54, 70, 51, 59, 73, 70, 59, 78, 114, 91, 80, 63, 59, 53, 85, 78, 59, 82, 60, 99, 89, 76, 69, 63, 51, 56, 59, 98, 59, 62, 85, 50, 58, 59, 73, 54, 59, 62, 101, 86, 57, 69, 56, 71, 59, 94, 69, 66, 55, 74, 55, 88, 69, 82, 55, 73, 74, 64, 59, 81, 78, 61, 92, 99, 57, 41, 66, 48, 68, 122, 74, 48, 60, 81, 70, 66, 88, 60, 54, 71, 49, 57, 74, 58, 73, 51, 75, 72, 60, 70, 51, 93, 70, 65, 116, 84, 56, 58, 62, 71, 62, 50, 69, 54, 53, 62, 57, 72, 68, 51, 80, 57, 64, 70, 68, 59, 66, 71, 81, 78, 60, 59, 60, 70, 84, 87, 65, 81, 69, 81, 68, 53, 83, 77, 79, 66, 61, 73, 47, 62, 63, 61, 79, 61, 41, 61, 65, 67, 66, 65, 42, 48, 68, 63, 33, 59, 68, 64, 63, 47, 67, 62, 62, 78, 100, 75, 54, 55, 59, 44, 69, 63, 91, 67, 71, 63, 50, 59, 70, 71, 52, 61, 75, 61, 64, 61, 84, 67, 66, 62, 67, 48, 97, 50, 59, 51, 52, 61, 50, 56, 47, 50, 67, 54, 58, 65, 65, 46, 63, 100, 53, 94, 70, 98, 66, 53, 113, 74, 74, 52, 79, 58, 78, 60, 73, 48, 77, 76, 87, 60, 70, 73, 56, 58, 54, 88, 74, 61, 58, 57, 68, 69, 63, 75, 67, 70, 56, 52, 62, 59, 80, 52, 66, 45, 68, 96, 71, 50, 84, 64, 59, 70, 76, 64, 51, 90, 65, 83, 45, 52, 90, 51, 100, 73, 67, 74, 85, 93, 61, 78, 61, 73, 77, 78, 68, 52, 70, 62, 70, 50, 83, 42, 58, 80, 78, 67, 57, 69, 69, 57, 48, 38, 81, 53, 60, 61, 73, 75, 41, 39, 76, 65, 57, 83, 70, 45, 60, 68, 56, 79, 57, 71, 81, 63, 56, 43, 68, 61, 62, 54, 65, 63, 80, 61, 57, 54, 51, 67, 57, 49, 38, 67, 79, 74, 56, 83, 50, 81, 64, 64, 60, 75, 42, 77, 60, 82, 48, 110, 81, 67, 57, 60, 62, 57, 58, 66, 47, 51, 44, 68, 63, 48, 66, 58, 81, 61, 65, 59, 87, 66, 45, 57, 78, 63, 64, 68, 103, 59, 143, 52, 59, 66, 62, 73, 68, 51, 70, 59, 68, 47, 62, 54, 46, 79, 68, 53, 79, 45, 78, 70, 78, 52, 58, 47, 54, 73, 63, 69, 60, 69, 48, 42, 46, 54, 59, 59, 70, 57, 65, 76, 109, 117, 62, 57, 59, 59, 55, 64, 80, 48, 79, 65, 46, 88, 53, 72, 50, 103, 62, 50, 36, 60, 59, 71, 80, 60, 46, 49, 75, 96, 60, 84, 46, 57, 95, 57, 83, 88, 41, 39, 61, 74, 79, 66, 67, 66, 58, 57, 50, 81, 58, 61, 94, 77, 55, 48, 94, 53, 70, 54, 54, 65, 75, 61, 76, 48, 76, 66, 76, 49, 66, 54, 60, 52, 68, 67, 65, 68, 71, 54, 69, 61, 43, 77, 52, 66, 96, 75, 95, 59, 87, 95, 52, 77, 49, 44, 58, 75, 59, 55, 85, 62, 79, 46, 85, 64, 60, 65, 65, 65, 63, 73, 65, 55, 52, 71, 69, 56, 41, 75, 55, 86, 69, 71, 84, 80, 73, 58, 66, 55, 49, 49, 64, 84, 56, 83, 78, 63, 62, 78, 85, 66, 61, 72, 78, 54, 64, 60, 77, 84, 78, 70, 82, 51, 84, 72, 70, 59, 55, 48, 62, 48, 74, 60, 51, 60, 71, 69, 40, 71, 55, 61, 78, 108, 79, 56, 62, 50, 85, 59, 66, 58, 69, 72, 58, 47, 58, 63, 60, 78, 74, 79, 105, 80, 62, 55, 53, 123, 70, 76, 79, 76, 60, 63, 67, 70, 61, 49, 86, 46, 75, 77, 51, 58, 68, 42, 66, 58, 71, 90, 100, 54, 64, 65, 72, 64, 43, 46, 64, 64, 81, 82, 84, 85, 85, 61, 63, 53, 69, 63, 53, 65, 87, 76, 53, 55, 73, 66, 42, 60, 69, 56, 53, 94, 64, 139, 70, 56, 66, 62, 96, 66, 57, 75, 80, 70, 56, 47, 91, 65, 64, 61, 63, 46, 73, 65, 55, 61, 37, 54, 60, 45, 59, 54, 51, 57, 62, 57, 55, 64, 56, 71, 75, 77, 63, 52, 42, 72, 81, 50, 79, 74, 53, 65, 51, 86, 86, 54, 60, 75, 63, 76, 55, 57, 58, 45, 46, 70, 96, 65, 90, 62, 54, 39, 67, 37, 62, 65, 46, 51, 61, 97, 51, 62, 65, 65, 37, 59, 76, 66, 54, 49, 74, 59, 66, 70, 57, 64, 62, 66, 45, 52, 71, 58, 84, 74, 78, 72, 65, 69, 78, 75, 67, 73, 66, 81, 45, 64, 81, 53, 59, 65, 77, 54, 132, 49, 80, 67, 101, 65, 56, 62, 63, 54, 86, 66, 52, 66, 58, 60, 123, 54, 64, 57, 53, 78, 68, 60, 63, 73, 53, 65, 74, 60, 71, 57, 75, 69, 49, 69, 57, 65, 64, 63, 66, 58, 64, 79, 61, 74, 51, 62, 48, 63, 75, 57, 64, 62, 44, 57, 88, 53, 73, 61, 66, 61, 52, 106, 61, 77, 70, 89, 77, 59, 56, 61, 66, 71, 58, 69, 56, 60, 40, 78, 39, 47, 60, 55, 67, 68, 57, 66, 82, 62, 95, 67, 53, 51, 83, 68, 70, 65, 73, 67, 80, 59, 59, 74, 94, 81, 83, 68, 81, 54, 57, 64, 58, 56, 69, 77, 79, 60, 62, 82, 50, 59, 77, 63, 66, 97, 46, 68, 61, 47, 62, 61, 58, 38, 96, 75, 66, 65, 27, 94, 78, 69, 61, 59, 76, 51, 76, 60, 66, 93, 54, 58, 64, 61, 76, 71, 78, 74, 51, 85, 72, 55, 59, 56, 42, 48, 72, 55, 74, 51, 64, 61, 64, 57, 55, 63, 57, 65, 72, 61, 70, 74, 64, 51, 51, 62, 60, 68, 76, 64, 47, 78, 72, 73, 63, 76, 62, 50, 102, 59, 56, 83, 130, 68, 76, 71, 57, 54, 56, 45, 76, 56, 55, 56, 72, 71, 52, 49, 67, 63, 56, 84, 69, 71, 72, 61, 58, 49, 93, 53, 88, 74, 64, 76, 69, 68, 57, 70, 62, 91, 58, 47, 63, 72, 65, 53, 55, 84, 57, 60, 51, 66, 66, 72, 62, 62, 73, 93, 53, 102, 71, 78, 64, 76, 64, 48, 64, 109, 58, 58, 62, 60, 94, 88, 79, 74, 68, 76, 65, 65, 71, 63, 64, 80, 53, 57, 68, 50, 44, 126, 66, 44, 50, 80, 57, 69, 81, 76, 61, 65, 59, 43, 52, 43, 66, 64, 59, 104, 45, 71, 104, 83, 49, 50, 90, 94, 55, 57, 56, 66, 47, 69, 54, 68, 73, 55, 55, 97, 80, 63, 59, 59, 65, 63, 52, 63, 50, 58, 59, 70, 47, 53, 77, 59, 71, 78, 69, 61, 85, 62, 54, 73, 76, 54, 80, 79, 54, 53, 57, 63, 44, 91, 66, 66, 72, 59, 62, 108, 56, 51, 43, 58, 63, 70, 57, 73, 56, 61, 54, 49, 59, 66, 74, 100, 86, 67, 60, 53, 81, 46, 40, 45, 58, 77, 81, 79, 75, 69, 71, 60, 67, 55, 75, 54, 52, 64, 60, 60, 96, 70, 44, 63, 89, 84, 61, 62, 73, 93, 48, 63, 59, 84, 92, 74, 67, 69, 53, 43, 64, 82, 71, 51, 76, 51, 70, 85, 51, 95, 56, 74, 55, 94, 69, 76, 70, 47, 49, 78, 98, 64, 85, 62, 77, 88, 75, 59, 52, 74, 52, 47, 59, 49, 55, 71, 54, 66, 60, 66, 71, 43, 55, 48, 72, 56, 60, 62, 67, 63, 96, 62, 40, 61, 61, 56, 59, 71, 77, 81, 51, 56, 49, 61, 56, 64, 90, 81, 61, 79, 77, 70, 77, 81, 51, 64, 64, 61, 68, 67, 67, 53, 59, 84, 58, 59, 86, 76, 58, 52, 64, 76, 82, 70, 74, 34, 40, 81, 90, 60, 62, 83, 74, 57, 68, 55, 73, 67, 54, 66, 92, 56, 49, 70, 54, 66, 71, 65, 64, 53, 60, 55, 126, 66, 67, 54, 85, 74, 55, 55, 56, 56, 68, 64, 65, 71, 66, 69, 89, 51, 52, 65, 71, 70, 67, 68, 88, 67, 70, 105, 91, 85, 63, 75, 71, 61, 101, 72, 58, 40, 60, 68, 116, 51, 65, 69, 54, 86, 40, 55, 72, 60, 62, 67, 60, 70, 66, 58, 87, 70, 77, 51, 60, 67, 93, 55, 95, 73, 63, 62, 65, 67, 65, 73, 59, 75, 63, 63, 67, 55, 62, 47, 57, 48, 58, 53, 46, 56, 69, 84, 69, 73, 52, 77, 80, 53, 60, 58, 67, 68, 72, 67, 67, 77, 79, 52, 60, 81, 86, 65, 77, 86, 51, 67, 55, 85, 66, 59, 42, 87, 71, 64, 62, 61, 52, 65, 63, 71, 57, 69, 67, 72, 61, 55, 61, 52, 69, 77, 145, 104, 60, 60, 59, 54, 44, 62, 64, 43, 69, 65, 55, 68, 78, 57, 52, 71, 63, 47, 147, 59, 56, 69, 73, 52, 61, 64, 83, 58, 39, 67, 51, 59, 66, 36, 123, 60, 68, 76, 49, 69, 76, 59, 73, 59, 68, 98, 53, 74, 59, 56, 51, 71, 127, 85, 66, 59, 63, 58, 63, 78, 72, 60, 52, 86, 72, 64, 90, 74, 54, 81, 68, 64, 47, 50, 79, 92, 66, 50, 65, 68, 55, 82, 72, 58, 60, 76, 78, 53, 82, 55, 79, 50, 59, 66, 59, 67, 71, 66, 64, 57, 61, 75, 41, 54, 79, 64, 80, 59, 69, 36, 77, 77, 106, 75, 66, 60, 75, 70, 55, 62, 71, 62, 46, 55, 54, 64, 54, 59, 54, 88, 42, 59, 55, 56, 60, 105, 79, 82, 50, 72, 108, 53, 63, 57, 98, 86, 63, 57, 57, 61, 70, 39, 76, 65, 77, 54, 60, 80, 61, 70, 76, 71, 69, 93, 66, 61, 59, 64, 52, 56, 63, 73, 64, 73, 65, 65, 48, 80, 58, 53, 98, 83, 93, 54, 89, 50, 38, 68, 73, 63, 58, 67, 59, 76, 123, 54, 62, 67, 102, 61, 88, 60, 62, 55, 85, 75, 59, 62, 94, 60, 67, 61, 64, 71, 88, 62, 56, 81, 75, 55, 46, 60, 78, 53, 69, 63, 42, 57, 69, 63, 53, 55, 72, 55, 48, 67, 60, 66, 59, 83, 42, 59, 66, 75, 71, 74, 55, 60, 73, 72, 45, 64, 69, 77, 50, 90, 69, 42, 52, 88, 69, 57, 56, 47, 52, 62, 65, 63, 58, 45, 59, 87, 82, 81, 52, 59, 61, 60, 52, 88, 101, 58, 79, 69, 68, 46, 69, 65, 46, 58, 69, 49, 62, 80, 78, 60, 56, 74, 53, 74, 63, 57, 70, 73, 41, 44, 68, 59, 52, 99, 49, 65, 71, 82, 56, 62, 67, 73, 72, 53, 56, 75, 76, 68, 67, 62, 70, 79, 67, 73, 62, 64, 61, 66, 109, 54, 80, 44, 91, 51, 68, 61, 62, 64, 60, 51, 73, 68, 55, 91, 66, 63, 46, 70, 73, 67, 79, 54, 51, 69, 87, 67, 81, 38, 52, 76, 67, 72, 67, 65, 67, 75, 50, 60, 78, 65, 66, 58, 49, 83, 86, 51, 57, 58, 85, 90, 64, 66, 58, 66, 62, 70, 61, 40, 64, 67, 68, 66, 52, 52, 40, 35, 45, 101, 79, 66, 54, 61, 45, 53, 61, 76, 63, 65, 71, 98, 61, 62, 65, 64, 61, 66, 49, 64, 61, 76, 70, 63, 61, 66, 84, 62, 62, 73, 62, 66, 71, 63, 64, 77, 58, 41, 80, 53, 71, 64, 73, 75, 55, 47, 68, 70, 61, 78, 47, 63, 77, 53, 69, 58, 89, 104, 57, 61, 68, 81, 61, 62, 67, 54, 74, 81, 65, 85, 75, 67, 79, 77, 63, 66, 62, 86, 74, 100, 59, 68, 55, 56, 56, 76, 76, 65, 71, 72, 48, 74, 80, 65, 55, 59, 74, 81, 48, 55, 83, 59, 65, 61, 68, 49, 72, 64, 70, 49, 56, 52, 55, 72, 54, 61, 78, 67, 87, 55, 60, 58, 57, 73, 64, 57, 84, 51, 95, 66, 87, 59, 81, 60, 74, 67, 70, 85, 55, 42, 69, 56, 67, 52, 70, 58, 57, 33, 60, 68, 54, 61, 70, 75, 60, 74, 68, 60, 61, 95, 81, 70, 79, 66, 52, 56, 55, 61, 64, 74, 68, 76, 55, 64, 89, 59, 61, 70, 56, 78, 73, 56, 64, 82, 57, 44, 77, 57, 70, 48, 51, 95, 56, 85, 65, 62, 52, 58, 46, 61, 71, 50, 61, 57, 68, 70, 51, 62, 62, 56, 59, 55, 82, 47, 56, 68, 47, 58, 65, 55, 70, 69, 56, 47, 47, 60, 56, 80, 50, 69, 58, 67, 65, 67, 57, 67, 65, 70, 59, 66, 70, 57, 80, 48, 65, 64, 77, 70, 50, 56, 54, 71, 40, 65, 66, 65, 56, 57, 57, 83, 72, 56, 88, 70, 61, 72, 56, 71, 60, 55, 79, 57, 72, 67, 54, 54, 46, 65, 68, 50, 63, 65, 66, 65, 59, 59, 78, 69, 48, 58, 55, 61, 48, 43, 74, 80, 97, 79, 88, 88, 54, 51, 62, 72, 77, 50, 59, 57, 57, 80, 66, 64, 57, 74, 55, 92, 80, 63, 87, 75, 79, 58, 90, 59, 54, 80, 62, 66, 83, 88, 64, 47, 62, 59, 53, 63, 77, 56, 76, 61, 56, 57, 65, 58, 82, 48, 75, 76, 49, 87, 59, 72, 47, 66, 56, 89, 46, 68, 86, 65, 84, 89, 60, 67, 62, 50, 84, 63, 65, 57, 70, 71, 61, 55, 68, 64, 68, 63, 57, 65, 85, 61, 77, 65, 91, 64, 67, 69, 53, 77, 53, 118, 61, 84, 82, 78, 56, 62, 78, 49, 61, 70, 52, 65, 62, 64, 76, 58, 81, 56, 68, 61, 62, 60, 50, 57, 62, 71, 69, 60, 65, 63, 64, 77, 76, 57, 60, 81, 72, 64, 63, 69, 71, 93, 75, 63, 67, 63, 69, 71, 51, 57, 53, 70, 52, 72, 73, 45, 52, 34, 55, 63, 60, 61, 70, 64, 64, 95, 50, 53, 54, 50, 66, 53, 67, 55, 66, 66, 56, 67, 60, 68, 98, 56, 53, 72, 76, 68, 56, 64, 54, 54, 93, 76, 83, 65, 95, 45, 62, 77, 55, 72, 57, 89, 76, 46, 65, 66, 68, 65, 64, 109, 68, 75, 64, 77, 56, 60, 63, 78, 71, 56, 76, 64, 57, 62, 39, 57, 98, 52, 64, 63, 101, 59, 72, 108, 48, 63, 59, 52, 60, 60, 57, 58, 54, 80, 64, 57, 94, 76, 60, 84, 55, 68, 75, 66, 64, 51, 63, 66, 64, 150, 70, 65, 76, 40, 49, 77, 55, 72, 62, 75, 64, 77, 60, 51, 64, 66, 56, 82, 60, 78, 74, 49, 76, 56, 71, 67, 58, 52, 76, 57, 52, 70, 53, 61, 52, 53, 55, 72, 61, 54, 67, 54, 50, 68, 70, 68, 42, 66, 67, 70, 62, 70, 63, 65, 60, 55, 51, 61, 69, 70, 74, 55, 85, 69, 78, 62, 126, 72, 66, 68, 56, 46, 48, 63, 60, 70, 68, 53, 72, 58, 78, 73, 69, 48, 61, 59, 141, 56, 69, 60, 60, 82, 46, 72, 72, 63, 67, 50, 72, 63, 66, 87, 62, 65, 41, 58, 52, 64, 81, 49, 79, 71, 108, 86, 60, 57, 63, 81, 81, 52, 54, 70, 49, 56, 63, 86, 57, 58, 73, 53, 76, 71, 70, 61, 114, 61, 101, 57, 59, 101, 59, 62, 70, 68, 66, 83, 64, 57, 63, 104, 96, 63, 70, 68, 83, 52, 60, 66, 62, 67, 70, 65, 72, 63, 58, 72, 63, 83, 65, 48, 73, 61, 61, 57, 57, 80, 53, 54, 59, 52, 55, 77, 60, 63, 123, 82, 66, 64, 65, 49, 60, 73, 64, 60, 76, 62, 88, 81, 65, 65, 73, 62, 70, 54, 93, 51, 54, 54, 76, 67, 77, 60, 61, 65, 54, 65, 54, 59, 54, 53, 47, 72, 63, 55, 55, 57, 51, 72, 58, 67, 70, 70, 75, 60, 45, 63, 64, 66, 51, 75, 57, 61, 59, 65, 64, 45, 55, 64, 55, 77, 74, 59, 62, 49, 82, 79, 52, 70, 54, 45, 86, 65, 62, 77, 61, 42, 104, 50, 78, 62, 65, 53, 73, 83, 68, 63, 72, 62, 69, 65, 62, 61, 42, 63, 61, 58, 63, 42, 64, 64, 47, 50, 64, 66, 60, 60, 57, 92, 63, 60, 61, 72, 58, 63, 60, 63, 69, 93, 79, 57, 51, 68, 97, 86, 98, 66, 105, 76, 53, 76, 100, 58, 60, 44, 40, 66, 69, 78, 50, 58, 52, 52, 64, 56, 60, 55, 83, 61, 62, 70, 61, 83, 64, 74, 58, 81, 52, 62, 67, 77, 75, 74, 59, 70, 56, 73, 51, 88, 60, 63, 55, 73, 66, 62, 79, 52, 70, 75, 80, 52, 56, 72, 69, 72, 69, 52, 97, 124, 57, 62, 75, 84, 75, 49, 78, 54, 58, 51, 57, 82, 63, 69, 77, 72, 51, 52, 75, 64, 68, 66, 73, 71, 69, 56, 76, 50, 55, 62, 52, 46, 76, 72, 58, 50, 65, 67, 52, 67, 72, 64, 88, 64, 62, 57, 69, 65, 38, 58, 81, 64, 66, 53, 50, 64, 76, 61, 76, 49, 49, 68, 59, 90, 58, 71, 78, 57, 62, 57, 69, 91, 64, 62, 61, 63, 62, 52, 57, 64, 91, 54, 60, 67, 59, 68, 67, 48, 54, 84, 51, 71, 53, 72, 77, 59, 57, 58, 57, 70, 69, 55, 50, 59, 67, 69, 50, 56, 61, 56, 67, 61, 89, 67, 68, 56, 80, 72, 61, 53, 79, 66, 60, 92, 49, 57, 61, 62, 63, 85, 80, 54, 62, 70, 56, 56, 64, 59, 70, 54, 48, 42, 96, 65, 77, 75, 81, 63, 64, 63, 65, 63, 64, 58, 60, 80, 45, 59, 54, 71, 65, 92, 87, 50, 74, 71, 67, 66, 54, 65, 57, 73, 66, 57, 70, 63, 103, 81, 60, 63, 82, 57, 120, 75, 61, 63, 58, 70, 68, 56, 36, 55, 62, 48, 50, 60, 60, 59, 90, 58, 56, 52, 46, 53, 66, 58, 73, 60, 56, 59, 68, 66, 50, 59, 59, 78, 61, 90, 52, 70, 58, 69, 86, 61, 86, 51, 66, 66, 90, 64, 64, 73, 61, 56, 60, 87, 78, 57, 62, 79, 63, 51, 51, 53, 68, 62, 82, 73, 74, 65, 61, 62, 61, 53, 78, 62, 64, 68, 47, 61, 55, 53, 68, 65, 42, 77, 68, 60, 80, 57, 72, 61, 51, 84, 58, 56, 61, 55, 65, 60, 53, 47, 67, 79, 90, 120, 62, 63, 55, 55, 54, 63, 48, 69, 74, 62, 64, 74, 84, 63, 88, 66, 73, 63, 47, 89, 67, 57, 75, 68, 60, 50, 55, 49, 74, 76, 63, 55, 80, 54, 79, 60, 61, 78, 47, 72, 46, 52, 87, 95, 92, 48, 73, 72, 55, 64, 74, 66, 98, 63, 62, 67, 106, 70, 59, 62, 59, 55, 60, 55, 65, 55, 75, 85, 61, 48, 63, 95, 67, 70, 57, 64, 72, 67, 68, 63, 50, 62, 63, 60, 65, 61, 53, 57, 53, 79, 74, 60, 53, 62, 63, 59, 63, 86, 66, 45, 47, 63, 55, 75, 57, 72, 53, 68, 68, 69, 112, 80, 51, 41, 59, 50, 47, 65, 62, 65, 53, 79, 69, 111, 75, 64, 70, 82, 55, 57, 71, 64, 82, 64, 83, 71, 74, 56, 73, 67, 57, 69, 42, 59, 78, 55, 60, 57, 52, 49, 82, 63, 74, 61, 50, 57, 48, 87, 67, 61, 74, 57, 66, 75, 59, 65, 66, 82, 54, 124, 60, 67, 61, 62, 62, 87, 53, 77, 55, 70, 56, 63, 64, 53, 71, 88, 59, 57, 76, 62, 71, 65, 63, 67, 70, 54, 85, 65, 54, 55, 54, 97, 64, 78, 59, 73, 56, 98, 53, 58, 49, 57, 51, 59, 71, 67, 61, 57, 87, 66, 52, 72, 63, 57, 61, 73, 54, 58, 73, 55, 59, 68, 60, 44, 63, 79, 64, 70, 69, 62, 68, 36, 53, 71, 53, 64, 76, 66, 67, 67, 61, 88, 49, 53, 55, 68, 62, 64, 63, 42, 73, 58, 71, 65, 68, 54, 44, 73, 78, 62, 69, 80, 68, 74, 59, 50, 63, 60, 70, 59, 63, 63, 66, 57, 71, 71, 72, 60, 59, 50, 119, 67, 83, 62, 59, 96, 82, 62, 54, 64, 62, 79, 59, 57, 66, 45, 88, 46, 69, 71, 63, 72, 78, 67, 51, 39, 70, 87, 64, 61, 55, 53, 59, 71, 63, 77, 70, 57, 64, 54, 71, 111, 75, 71, 62, 62, 74, 68, 57, 63, 60, 58, 61, 67, 78, 66, 74, 73, 60, 66, 73, 52, 52, 61, 65, 59, 59, 49, 97, 71, 62, 69, 52, 77, 56, 63, 77, 69, 58, 92, 57, 59, 66, 53, 68, 55, 89, 56, 67, 60, 74, 71, 69, 68, 62, 52, 55, 79, 58, 81, 57, 58, 64, 52, 50, 82, 52, 66, 69, 64, 72, 67, 77, 109, 57, 64, 51, 69, 67, 60, 62, 71, 61, 68, 88, 53, 70, 63, 95, 52, 75, 72, 68, 81, 57, 60, 100, 65, 67, 58, 69, 50, 71, 58, 54, 59, 82, 99, 59, 65, 67, 72, 66, 92, 58, 75, 85, 48, 83, 80, 78, 59, 63, 77, 80, 117, 63, 72, 69, 69, 57, 58, 67, 50, 81, 73, 59, 58, 92, 61, 66, 63, 55, 76, 55, 57, 72, 66, 41, 51, 73, 65, 60, 57, 53, 83, 65, 89, 64, 72, 89, 66, 63, 54, 71, 57, 65, 58, 82, 52, 57, 87, 73, 75, 59, 62, 87, 60, 56, 74, 65, 71, 72, 60, 39, 72, 59, 64, 64, 58, 54, 56, 65, 56, 72, 64, 58, 57, 69, 78, 99, 66, 77, 48, 68, 57, 67, 81, 59, 44, 74, 56, 57, 85, 66, 76, 55, 60, 85, 56, 52, 70, 64, 64, 70, 75, 66, 61, 61, 68, 51, 56, 72, 51, 62, 62, 98, 69, 51, 83, 92, 67, 43, 55, 62, 48, 66, 66, 81, 54, 63, 78, 72, 49, 77, 66, 52, 54, 64, 61, 53, 42, 68, 51, 58, 59, 59, 58, 92, 76, 64, 65, 62, 72, 62, 44, 66, 57, 110, 72, 68, 90, 79, 45, 63, 58, 66, 54, 63, 79, 107, 90, 78, 71, 75, 52, 71, 83, 66, 61, 64, 43, 60, 60, 62, 64, 51, 46, 48, 66, 62, 54, 112, 54, 92, 56, 79, 91, 45, 67, 58, 52, 61, 81, 85, 61, 63, 54, 70, 71, 68, 85, 56, 60, 53, 62, 64, 76, 72, 67, 59, 75, 81, 56, 56, 45, 58, 54, 68, 77, 67, 63, 80, 72, 63, 51, 70, 64, 89, 63, 64, 62, 61, 67, 82, 53, 59, 62, 59, 67, 70, 65, 67, 64, 65, 77, 99, 75, 47, 80, 74, 81, 131, 61, 71, 48, 63, 58, 112, 52, 69, 94, 72, 84, 70, 69, 56, 81, 67, 62, 66, 89, 71, 74, 71, 64, 65, 54, 68, 63, 51, 56, 73, 47, 70, 67, 76, 62, 74, 72, 65, 50, 70, 62, 66, 60, 58, 88, 68, 67, 61, 102, 75, 52, 85, 71, 48, 71, 57, 74, 55, 43, 68, 47, 53, 78, 81, 71, 70, 67, 64, 56, 92, 55, 67, 75, 63, 42, 62, 61, 69, 69, 78, 55, 66, 66, 64, 81, 86, 53, 64, 83, 80, 77, 62, 60, 61, 80, 58, 66, 71, 71, 51, 72, 55, 68, 64, 56, 114, 66, 54, 67, 59, 63, 85, 63, 52, 88, 98, 70, 59, 82, 58, 90, 73, 54, 68, 71, 60, 63, 57, 53, 64, 51, 69, 73, 59, 55, 72, 54, 46, 64, 51, 40, 67, 71, 61, 54, 102, 61, 57, 65, 60, 62, 66, 65, 80, 64, 65, 73, 116, 49, 92, 67, 62, 60, 45, 60, 58, 76, 59, 57, 58, 70, 94, 66, 65, 83, 81, 77, 70, 69, 57, 64, 68, 63, 57, 72, 82, 58, 53, 67, 55, 57, 75, 57, 56, 92, 62, 54, 64, 51, 74, 66, 79, 69, 62, 48, 51, 65, 82, 84, 70, 60, 78, 71, 64, 65, 72, 69, 68, 67, 72, 60, 95, 89, 57, 71, 54, 53, 46, 74, 68, 52, 57, 54, 66, 82, 61, 57, 50, 84, 64, 58, 64, 84, 69, 47, 52, 63, 70, 88, 46, 57, 55, 68, 45, 70, 69, 71, 60, 73, 54, 67, 48, 59, 69, 52, 51, 76, 61, 51, 85, 60, 78, 48, 45, 71, 54, 81, 50, 70, 83, 82, 59, 76, 78, 58, 54, 56, 57, 85, 86, 91, 56, 76, 55, 47, 86, 52, 66, 67, 48, 59, 61, 59, 69, 63, 66, 76, 80, 61, 60, 57, 61, 71, 57, 59, 64, 93, 62, 84, 48, 65, 59, 57, 87, 60, 58, 73, 73, 116, 58, 82, 69, 58, 53, 75, 80, 60, 77, 58, 60, 111, 68, 87, 88, 51, 87, 70, 52, 76, 69, 68, 87, 78, 87, 79, 63, 58, 62, 52, 69, 61, 54, 104, 68, 54, 93, 78, 76, 66, 75, 53, 75, 69, 66, 56, 60, 54, 69, 72, 62, 58, 47, 74, 75, 68, 57, 56, 99, 53, 75, 64, 61, 68, 54, 57, 52, 77, 91, 48, 85, 83, 63, 64, 63, 61, 58, 63, 54, 54, 58, 61, 75, 69, 93, 69, 59, 66, 66, 73, 79, 76, 56, 69, 75, 54, 92, 57, 41, 61, 61, 59, 80, 58, 61, 68, 58, 60, 73, 56, 52, 52, 88, 55, 57, 113, 73, 62, 86, 56, 69, 61, 58, 78, 53, 79, 67, 76, 77, 62, 49, 71, 72, 60, 55, 59, 64, 51, 114, 61, 72, 52, 56, 70, 56, 57, 74, 67, 73, 60, 67, 66, 59, 71, 67, 64, 73, 83, 48, 73, 63, 71, 53, 73, 59, 59, 69, 54, 47, 44, 48, 67, 55, 76, 46, 62, 68, 51, 74, 76, 58, 75, 66, 68, 64, 51, 73, 60, 64, 57, 50, 69, 61, 70, 52, 48, 69, 51, 71, 66, 61, 72, 68, 57, 71, 63, 54, 62, 57, 64, 74, 74, 58, 79, 59, 69, 42, 60, 55, 52, 82, 53, 58, 69, 55, 57, 48, 55, 77, 69, 85, 73, 65, 62, 68, 59, 92, 54, 71, 69, 70, 66, 66, 65, 53, 70, 61, 68, 76, 39, 89, 86, 85, 70, 64, 60, 60, 64, 74, 97, 63, 56, 69, 65, 66, 65, 72, 77, 64, 74, 70, 56, 76, 63, 62, 52, 87, 41, 57, 74, 90, 83, 68, 64, 60, 71, 53, 68, 76, 56, 49, 111, 105, 125, 59, 70, 79, 67, 78, 53, 55, 69, 68, 55, 116, 85, 68, 83, 57, 46, 56, 72, 63, 80, 63, 73, 67, 59, 79, 61, 49, 81, 57, 70, 113, 81, 61, 61, 62, 63, 53, 70, 48, 61, 69, 62, 113, 62, 60, 54, 43, 38, 64, 83, 83, 73, 54, 54, 40, 79, 57, 73, 44, 65, 61, 57, 81, 59, 89, 64, 47, 44, 56, 68, 77, 44, 68, 57, 38, 75, 47, 68, 64, 61, 58, 72, 65, 57, 80, 50, 61, 85, 63, 65, 46, 72, 80, 60, 62, 89, 47, 68, 64, 70, 71, 64, 114, 63, 51, 67, 68, 59, 50, 54, 56, 62, 49, 87, 83, 71, 44, 82, 56, 52, 39, 65, 55, 58, 56, 47, 57, 81, 74, 84, 52, 50, 81, 44, 76, 77, 59, 69, 74, 73, 86, 61, 60, 59, 61, 73, 53, 53, 69, 82, 65, 88, 56, 59, 61, 86, 70, 95, 90, 79, 53, 79, 115, 60, 82, 40, 79, 74, 78, 50, 90, 53, 63, 58, 44, 75, 61, 64, 64, 68, 86, 57, 87, 64, 66, 54, 60, 61, 62, 104, 50, 62, 56, 45, 78, 62, 63, 61, 70, 68, 62, 60, 100, 50, 50, 76, 52, 52, 58, 59, 50, 56, 58, 97, 87, 70, 64, 109, 50, 52, 48, 74, 68, 59, 62, 70, 60, 60, 77, 66, 46, 47, 68, 139, 51, 62, 62, 65, 43, 85, 53, 67, 61, 60, 52, 45, 50, 67, 59, 59, 73, 71, 54, 63, 58, 51, 63, 56, 63, 71, 52, 64, 53, 70, 63, 67, 65, 80, 54, 49, 67, 59, 65, 78, 67, 76, 55, 60, 56, 59, 101, 76, 66, 55, 67, 63, 50, 70, 75, 65, 71, 62, 55, 63, 74, 73, 73, 86, 66, 69, 74, 79, 95, 73, 59, 57, 52, 73, 48, 87, 50, 66, 68, 65, 48, 98, 82, 65, 70, 68, 60, 58, 72, 56, 76, 60, 65, 59, 56, 63, 71, 66, 56, 75, 48, 50, 71, 56, 67, 57, 76, 70, 71, 59, 65, 109, 65, 76, 54, 109, 54, 57, 63, 65, 61, 103, 59, 58, 47, 67, 63, 62, 72, 48, 66, 52, 41, 48, 68, 70, 59, 71, 70, 65, 56, 92, 80, 71, 64, 63, 80, 67, 64, 63, 65, 60, 78, 52, 71, 65, 65, 63, 79, 71, 91, 41, 78, 57, 67, 60, 78, 74, 51, 45, 59, 67, 59, 89, 53, 74, 53, 71, 64, 70, 62, 58, 59, 54, 59, 62, 62, 60, 60, 51, 53, 70, 49, 91, 72, 64, 68, 64, 54, 64, 68, 68, 113, 46, 60, 66, 53, 69, 44, 71, 88, 118, 76, 63, 76, 57, 62, 63, 43, 105, 75, 54, 31, 65, 55, 68, 49, 60, 59, 64, 91, 78, 72, 66, 62, 86, 66, 91, 51, 95, 81, 65, 54, 75, 77, 63, 66, 66, 49, 62, 85, 59, 52, 70, 58, 76, 57, 71, 66, 65, 61, 78, 75, 54, 69, 62, 45, 54, 66, 58, 79, 71, 58, 52, 62, 59, 80, 61, 64, 53, 81, 67, 58, 54, 64, 60, 56, 92, 60, 68, 57, 64, 74, 59, 79, 59, 124, 54, 75, 74, 54, 61, 60, 40, 66, 72, 77, 84, 50, 73, 60, 75, 55, 69, 79, 76, 49, 69, 66, 78, 62, 59, 96, 83, 65, 73, 62, 73, 44, 59, 67, 49, 45, 47, 80, 70, 41, 60, 72, 68, 47, 55, 82, 56, 40, 63, 62, 53, 65, 55, 75, 57, 56, 63, 72, 72, 63, 72, 49, 93, 83, 61, 68, 57, 55, 49, 76, 65, 96, 47, 70, 70, 68, 81, 56, 52, 75, 58, 67, 82, 66, 62, 65, 59, 62, 82, 50, 63, 76, 69, 62, 90, 68, 64, 86, 60, 92, 88, 70, 50, 78, 57, 61, 67, 86, 85, 53, 62, 54, 141, 81, 77, 74, 70, 62, 74, 61, 58, 59, 50, 61, 75, 80, 89, 66, 79, 58, 66, 89, 68, 60, 49, 45, 69, 56, 62, 56, 61, 118, 75, 63, 61, 55, 72, 95, 59, 53, 62, 60, 64, 62, 68, 71, 72, 82, 65, 77, 52, 63, 53, 100, 52, 67, 68, 67, 53, 65, 54, 57, 70, 114, 63, 59, 61, 51, 77, 65, 66, 54, 82, 66, 90, 61, 43, 59, 60, 63, 62, 67, 76, 57, 59, 82, 178, 46, 75, 49, 71, 54, 48, 57, 68, 65, 82, 66, 46, 94, 51, 79, 58, 87, 67, 64, 73, 59, 76, 78, 72, 97, 58, 85, 42, 73, 85, 75, 75, 80, 87, 56, 88, 53, 86, 77, 89, 73, 69, 49, 70, 87, 53, 82, 64, 51, 63, 75, 55, 64, 66, 53, 45, 73, 55, 68, 58, 61, 64, 139, 71, 63, 62, 64, 70, 49, 63, 71, 91, 49, 69, 76, 62, 59, 60, 79, 47, 79, 73, 58, 70, 73, 69, 65, 65, 73, 62, 72, 63, 68, 69, 72, 64, 53, 70, 66, 48, 60, 70, 44, 70, 70, 55, 46, 58, 99, 60, 65, 80, 64, 50, 50, 75, 91, 71, 63, 64, 75, 58, 63, 61, 60, 61, 77, 64, 57, 79, 86, 61, 66, 70, 62, 66, 55, 68, 98, 55, 83, 67, 53, 59, 69, 56, 62, 56, 62, 71, 38, 68, 62, 120, 40, 84, 58, 62, 78, 75, 70, 63, 55, 56, 54, 67, 47, 64, 82, 69, 56, 53, 95, 52, 68, 40, 54, 59, 68, 56, 88, 49, 55, 89, 44, 57, 78, 66, 56, 82, 59, 62, 47, 50, 59, 77, 63, 56, 75, 71, 70, 54, 72, 55, 66, 67, 67, 66, 71, 54, 67, 76, 58, 43, 93, 72, 61, 73, 75, 65, 63, 62, 65, 76, 56, 83, 76, 63, 51, 58, 47, 70, 71, 67, 47, 60, 49, 66, 77, 55, 64, 58, 67, 46, 63, 81, 63, 65, 39, 54, 66, 56, 97, 82, 102, 68, 62, 70, 62, 65, 75, 59, 54, 69, 103, 38, 54, 76, 97, 63, 70, 64, 63, 58, 80, 69, 45, 75, 61, 53, 65, 63, 54, 65, 60, 74, 72, 72, 62, 66, 72, 56, 73, 120, 119, 90, 81, 88, 56, 91, 73, 79, 87, 81, 62, 59, 73, 72, 38, 82, 53, 82, 44, 50, 56, 77, 69, 92, 70, 65, 57, 60, 72, 62, 68, 58, 68, 48, 80, 59, 56, 41, 62, 74, 68, 51, 34, 63, 114, 53, 54, 54, 62, 88, 72, 56, 73, 95, 89, 75, 53, 79, 59, 58, 82, 64, 57, 63, 59, 44, 75, 72, 64, 63, 71, 73, 51, 61, 63, 38, 65, 71, 61, 57, 47, 64, 64, 49, 62, 76, 86, 72, 84, 63, 78, 65, 60, 58, 67, 46, 63, 100, 71, 90, 66, 51, 72, 58, 66, 50, 54, 65, 89, 73, 45, 36, 74, 68, 61, 56, 95, 70, 47, 70, 63, 50, 63, 62, 65, 62, 65, 63, 56, 81, 65, 59, 41, 71, 69, 62, 77, 83, 62, 55, 63, 76, 60, 48, 69, 53, 54, 60, 92, 56, 62, 79, 65, 57, 61, 67, 53, 66, 84, 55, 85, 55, 76, 61, 92, 61, 66, 58, 56, 75, 68, 64, 71, 59, 71, 53, 68, 72, 56, 71, 65, 78, 71, 67, 82, 78, 47, 47, 53, 68, 74, 96, 73, 56, 58, 66, 68, 75, 70, 64, 87, 65, 49, 69, 72, 60, 57, 75, 48, 77, 75, 71, 61, 83, 58, 83, 74, 55, 58, 71, 62, 52, 63, 59, 53, 75, 51, 59, 51, 59, 62, 57, 71, 48, 126, 132, 60, 64, 64, 66, 63, 61, 61, 60, 52, 67, 70, 56, 51, 73, 77, 76, 64, 70, 92, 68, 71, 48, 59, 49, 59, 81, 61, 55, 65, 68, 58, 56, 64, 61, 74, 68, 70, 57, 48, 70, 65, 58, 71, 62, 65, 91, 76, 69, 66, 78, 58, 52, 66, 45, 72, 55, 76, 50, 45, 48, 63, 91, 92, 100, 61, 57, 75, 61, 69, 44, 64, 74, 71, 61, 59, 79, 76, 65, 70, 78, 73, 80, 58, 63, 81, 77, 67, 60, 60, 45, 91, 62, 86, 63, 57, 45, 76, 59, 64, 49, 70, 60, 60, 57, 62, 63, 60, 55, 63, 69, 64, 117, 71, 60, 56, 77, 39, 67, 47, 54, 58, 78, 64, 51, 61, 64, 58, 82, 83, 60, 64, 65, 81, 53, 67, 76, 43, 85, 54, 52, 74, 56, 88, 80, 66, 53, 71, 64, 82, 59, 56, 62, 72, 75, 61, 57, 61, 49, 51, 90, 49, 81, 55, 67, 108, 62, 69, 57, 57, 57, 46, 55, 72, 47, 59, 69, 54, 86, 66, 54, 71, 47, 76, 52, 54, 101, 55, 68, 62, 61, 76, 58, 77, 64, 48, 70, 54, 39, 65, 54, 76, 65, 105, 69, 56, 70, 55, 74, 44, 78, 69, 113, 84, 76, 66, 74, 74, 56, 70, 79, 95, 74, 47, 52, 29, 60, 67, 55, 59, 84, 58, 90, 73, 60, 74, 97, 63, 60, 69, 73, 81, 79, 68, 56, 63, 50, 73, 72, 46, 72, 81, 55, 71, 76, 63, 85, 68, 67, 68, 54, 75, 92, 66, 56, 62, 78, 70, 71, 43, 53, 52, 67, 77, 79, 65, 73, 69, 113, 65, 59, 74, 54, 43, 62, 53, 57, 77, 63, 53, 65, 63, 73, 63, 67, 57, 64, 85, 71, 76, 41, 64, 51, 66, 66, 62, 55, 59, 71, 60, 78, 58, 69, 61, 54, 67, 70, 57, 68, 66, 54, 70, 50, 70, 60, 67, 89, 45, 79, 61, 46, 72, 67, 54, 69, 57, 67, 77, 82, 54, 57, 76, 76, 61, 79, 67, 57, 47, 46, 71, 74, 76, 46, 45, 62, 71, 53, 75, 71, 59, 57, 66, 72, 44, 67, 57, 70, 74, 64, 87, 61, 49, 65, 56, 62, 74, 53, 63, 71, 63, 59, 69, 72, 61, 55, 53, 56, 57, 59, 81, 80, 87, 38, 67, 69, 57, 50, 88, 79, 49, 50, 77, 63, 58, 67, 92, 48, 69, 56, 76, 91, 57, 67, 51, 76, 77, 49, 77, 66, 60, 70, 73, 55, 50, 106, 46, 57, 66, 47, 94, 54, 51, 71, 51, 61, 57, 55, 67, 70, 134, 75, 60, 53, 54, 53, 75, 76, 53, 54, 64, 71, 47, 66, 103, 59, 41, 53, 59, 58, 68, 63, 77, 58, 69, 55, 48, 57, 55, 69, 64, 55, 71, 54, 52, 64, 67, 82, 54, 73, 54, 63, 52, 66, 69, 65, 61, 51, 56, 57, 54, 63, 48, 72, 75, 154, 64, 71, 58, 68, 59, 68, 68, 49, 65, 57, 65, 73, 87, 57, 40, 55, 87, 50, 46, 58, 61, 94, 63, 66, 40, 48, 68, 57, 60, 87, 74, 89, 64, 51, 66, 66, 69, 74, 85, 64, 68, 69, 73, 52, 82, 66, 63, 78, 81, 56, 70, 68, 62, 51, 84, 55, 47, 54, 61, 78, 52, 54, 125, 53, 70, 67, 71, 71, 61, 50, 56, 91, 50, 57, 79, 81, 48, 75, 73, 53, 69, 72, 69, 66, 76, 76, 57, 39, 53, 47, 53, 58, 53, 59, 37, 61, 69, 63, 96, 62, 53, 72, 63, 75, 57, 31, 71, 63, 71, 52, 85, 50, 64, 61, 63, 71, 63, 73, 61, 59, 73, 73, 70, 60, 60, 54, 46, 63, 68, 52, 70, 48, 58, 67, 53, 70, 59, 78, 68, 67, 84, 73, 113, 54, 70, 91, 68, 72, 59, 54, 84, 50, 77, 117, 88, 76, 70, 55, 91, 73, 52, 56, 70, 88, 55, 63, 54, 65, 72, 81, 70, 58, 127, 69, 49, 59, 67, 54, 60, 73, 103, 91, 58, 76, 55, 42, 56, 50, 51, 63, 66, 90, 76, 44, 72, 55, 59, 57, 79, 80, 67, 58, 92, 62, 74, 60, 54, 71, 51, 64, 57, 49, 60, 69, 64, 87, 72, 68, 69, 59, 69, 72, 84, 68, 55, 51, 72, 48, 68, 55, 58, 109, 54, 67, 60, 61, 64, 67, 61, 66, 56, 50, 58, 72, 50, 84, 47, 56, 45, 65, 68, 51, 99, 61, 64, 57, 68, 46, 60, 77, 66, 61, 47, 58, 49, 53, 52, 63, 73, 51, 62, 69, 73, 62, 88, 71, 60, 63, 92, 67, 75, 93, 60, 56, 39, 77, 56, 77, 61, 67, 73, 56, 102, 72, 61, 53, 61, 59, 76, 64, 67, 76, 62, 61, 75, 42, 60, 55, 68, 44, 70, 80, 54, 59, 43, 97, 61, 60, 53, 75, 69, 67, 62, 57, 72, 53, 44, 56, 62, 48, 55, 64, 70, 61, 43, 74, 63, 59, 127, 55, 61, 45, 64, 44, 61, 70, 61, 74, 55, 96, 66, 61, 65, 54, 46, 57, 61, 63, 51, 51, 60, 55, 60, 54, 59, 53, 49, 55, 69, 45, 60, 67, 58, 82, 90, 49, 55, 63, 49, 69, 62, 57, 67, 78, 66, 59, 57, 55, 87, 60, 65, 47, 57, 69, 62, 65, 59, 66, 53, 54, 63, 54, 75, 45, 52, 69, 88, 71, 72, 51, 102, 58, 66, 73, 71, 51, 64, 87, 60, 72, 89, 55, 67, 51, 73, 62, 48, 67, 63, 62, 114, 61, 69, 65, 74, 56, 90, 60, 62, 65, 55, 64, 75, 49, 81, 67, 49, 54, 66, 75, 72, 54, 70, 65, 73, 61, 55, 83, 109, 61, 65, 28, 99, 58, 71, 67, 85, 74, 65, 52, 66, 63, 46, 79, 76, 68, 57, 72, 88, 62, 54, 48, 58, 54, 69, 99, 76, 73, 57, 64, 61, 111, 56, 51, 87, 58, 58, 57, 79, 56, 68, 63, 58, 74, 83, 53, 70, 88, 61, 83, 79, 56, 83, 50, 66, 84, 59, 66, 75, 55, 54, 90, 71, 58, 54, 74, 68, 70, 124, 100, 49, 60, 75, 72, 73, 65, 57, 61, 73, 78, 56, 54, 68, 60, 65, 57, 77, 56, 74, 58, 60, 54, 62, 79, 76, 68, 81, 74, 65, 67, 84, 53, 68, 58, 43, 56, 94, 68, 76, 90, 78, 72, 75, 73, 79, 78, 69, 62, 65, 68, 55, 73, 72, 60, 56, 74, 57, 65, 64, 63, 65, 87, 48, 79, 71, 67, 60, 71, 65, 50, 51, 71, 69, 70, 58, 32, 76, 66, 77, 74, 65, 84, 66, 61, 63, 83, 67, 59, 67, 50, 68, 77, 61, 94, 68, 49, 67, 97, 50, 49, 70, 65, 61, 49, 55, 80, 62, 66, 57, 53, 69, 131, 64, 84, 55, 60, 83, 55, 78, 58, 48, 51, 55, 63, 75, 54, 68, 55, 50, 62, 63, 67, 64, 65, 50, 57, 72, 82, 92, 74, 64, 60, 88, 55, 57, 81, 59, 61, 59, 39, 80, 67, 69, 62, 83, 76, 66, 40, 47, 68, 55, 85, 78, 92, 88, 55, 79, 68, 49, 60, 56, 64, 67, 75, 68, 95, 53, 121, 80, 58, 56, 65, 70, 59, 38, 102, 56, 57, 65, 57, 69, 69, 68, 68, 59, 46, 48, 63, 66, 54, 84, 67, 101, 70, 53, 60, 57, 63, 52, 71, 67, 103, 62, 59, 70, 50, 59, 73, 71, 66, 69, 62, 86, 61, 62, 56, 76, 57, 62, 67, 63, 47, 85, 62, 60, 82, 45, 76, 60, 70, 61, 77, 64, 81, 54, 67, 71, 76, 69, 39, 73, 70, 93, 54, 71, 70, 83, 71, 53, 54, 105, 94, 103, 57, 51, 102, 52, 79, 56, 52, 77, 59, 50, 64, 44, 56, 61, 77, 55, 59, 59, 64, 55, 118, 70, 53, 63, 62, 59, 70, 53, 99, 62, 87, 55, 58, 90, 56, 66, 72, 55, 68, 76, 57, 65, 58, 60, 57, 44, 87, 58, 67, 57, 60, 54, 58, 45, 77, 54, 53, 57, 66, 63, 63, 81, 46, 52, 60, 42, 56, 59, 58, 53, 51, 74, 54, 59, 61, 66, 70, 87, 47, 61, 55, 57, 59, 60, 68, 65, 51, 74, 71, 61, 54, 61, 49, 55, 61, 78, 57, 59, 63, 69, 60, 70, 69, 58, 61, 97, 59, 61, 50, 73, 94, 48, 90, 71, 82, 60, 57, 55, 61, 76, 67, 55, 64, 88, 61, 69, 69, 74, 70, 63, 62, 55, 49, 84, 84, 50, 48, 47, 46, 51, 76, 83, 64, 45, 53, 45, 94, 56, 64, 78, 82, 95, 42, 97, 56, 50, 68, 56, 61, 67, 86, 66, 62, 56, 58, 101, 70, 63, 58, 43, 63, 54, 56, 59, 50, 135, 53, 67, 76, 42, 58, 56, 66, 49, 69, 61, 93, 77, 67, 73, 80, 72, 55, 63, 71, 57, 64, 40, 71, 53, 63, 76, 66, 74, 79, 68, 53, 64, 76, 73, 58, 59, 95, 50, 76, 65, 65, 55, 60, 57, 56, 70, 62, 64, 68, 54, 66, 83, 64, 71, 116, 85, 52, 60, 57, 57, 55, 127, 60, 68, 51, 67, 86, 97, 56, 70, 48, 104, 61, 57, 57, 81, 103, 69, 74, 57, 58, 49, 65, 64, 66, 61, 82, 76, 64, 64, 80, 53, 56, 64, 51, 55, 65, 85, 63, 78, 52, 72, 53, 72, 93, 63, 80, 61, 79, 71, 65, 60, 70, 68, 52, 71, 64, 112, 52, 53, 51, 52, 71, 61, 54, 52, 99, 62, 69, 72, 64, 56, 69, 88, 55, 62, 71, 63, 64, 89, 52, 74, 51, 35, 63, 63, 59, 72, 52, 63, 53, 61, 68, 84, 60, 52, 63, 53, 69, 73, 80, 83, 74, 76, 56, 58, 64, 68, 43, 62, 79, 85, 55, 59, 58, 78, 40, 60, 52, 60, 69, 65, 70, 50, 60, 62, 60, 75, 56, 91, 59, 61, 76, 76, 67, 61, 83, 85, 61, 63, 60, 79, 98, 70, 80, 78, 60, 68, 89, 64, 64, 63, 63, 52, 62, 65, 78, 54, 66, 78, 51, 61, 61, 63, 77, 67, 67, 50, 61, 80, 51, 74, 61, 46, 41, 86, 60, 77, 64, 72, 53, 65, 60, 64, 78, 56, 56, 52, 67, 58, 64, 97, 53, 44, 54, 63, 73, 53, 73, 56, 48, 57, 66, 63, 61, 76, 50, 73, 56, 63, 87, 67, 69, 64, 76, 83, 59, 60, 68, 64, 59, 88, 65, 49, 64, 57, 48, 69, 69, 67, 79, 47, 54, 62, 62, 53, 79, 77, 49, 71, 91, 66, 62, 72, 74, 66, 62, 84, 89, 90, 55, 55, 68, 65, 81, 65, 81, 66, 66, 60, 63, 59, 55, 62, 60, 70, 67, 46, 60, 114, 37, 68, 69, 55, 40, 60, 75, 74, 64, 51, 46, 65, 65, 56, 68, 58, 51, 74, 101, 112, 119, 73, 74, 71, 55, 57, 63, 58, 57, 62, 56, 91, 67, 51, 125, 52, 48, 58, 80, 76, 96, 57, 92, 116, 59, 63, 54, 57, 67, 59, 65, 90, 72, 85, 59, 66, 52, 58, 56, 61, 58, 67, 63, 66, 68, 63, 66, 59, 39, 69, 61, 46, 97, 56, 55, 49, 64, 33, 72, 50, 55, 81, 62, 81, 60, 84, 81, 53, 60, 42, 44, 67, 54, 54, 47, 36, 70, 69, 61, 72, 30, 51, 54, 72, 56, 80, 58, 77, 83, 62, 60, 58, 72, 51, 60, 56, 80, 67, 87, 48, 61, 85, 63, 84, 60, 52, 67, 68, 46, 55, 50, 65, 74, 53, 77, 81, 91, 58, 73, 57, 64, 63, 84, 73, 60, 69, 64, 68, 66, 62, 72, 63, 71, 78, 90, 84, 81, 69, 64, 93, 76, 70, 73, 59, 67, 69, 47, 53, 53, 103, 92, 63, 40, 62, 60, 67, 77, 71, 68, 93, 59, 50, 62, 82, 37, 61, 69, 58, 64, 60, 68, 79, 52, 70, 79, 65, 65, 59, 66, 59, 56, 49, 67, 60, 68, 100, 55, 51, 64, 85, 127, 54, 57, 64, 52, 52, 62, 50, 66, 71, 59, 67, 69, 69, 67, 50, 64, 68, 63, 79, 71, 78, 74, 50, 85, 69, 67, 44, 79, 48, 44, 57, 69, 62, 59, 65, 63, 62, 65, 55, 69, 64, 68, 58, 150, 61, 67, 68, 70, 59, 119, 63, 68, 62, 69, 58, 55, 51, 58, 65, 65, 69, 65, 70, 55, 70, 80, 46, 60, 72, 54, 55, 82, 60, 73, 54, 101, 74, 65, 58, 54, 53, 54, 60, 77, 61, 56, 45, 67, 55, 57, 63, 73, 98, 70, 72, 74, 49, 70, 93, 73, 64, 67, 55, 61, 55, 100, 61, 48, 74, 74, 56, 73, 76, 49, 41, 76, 76, 54, 51, 62, 73, 72, 46, 55, 80, 90, 55, 65, 58, 64, 79, 43, 61, 66, 74, 69, 66, 70, 66, 63, 79, 68, 53, 53, 55, 72, 65, 59, 73, 53, 66, 83, 90, 49, 83, 102, 57, 72, 75, 64, 73, 76, 51, 74, 70, 98, 63, 57, 53, 64, 76, 61, 53, 58, 70, 79, 74, 63, 46, 72, 49, 59, 47, 82, 62, 89, 67, 68, 66, 62, 75, 64, 66, 71, 59, 52, 65, 53, 60, 49, 64, 65, 69, 58, 71, 56, 44, 52, 105, 60, 70, 63, 60, 55, 62, 77, 63, 98, 67, 63, 59, 73, 76, 53, 75, 38, 67, 47, 56, 78, 48, 55, 61, 50, 81, 32, 53, 54, 56, 66, 69, 66, 55, 62, 71, 67, 89, 45, 63, 82, 64, 69, 67, 51, 64, 93, 63, 60, 58, 49, 74, 67, 117, 68, 74, 55, 50, 68, 73, 57, 54, 52, 59, 67, 61, 68, 71, 68, 72, 66, 65, 77, 61, 88, 77, 54, 76, 72, 69, 73, 67, 71, 46, 82, 95, 59, 64, 61, 62, 68, 73, 71, 45, 50, 82, 86, 71, 56, 81, 56, 78, 61, 62, 59, 91, 59, 66, 76, 60, 54, 61, 64, 78, 63, 75, 52, 68, 54, 60, 57, 64, 65, 61, 73, 67, 75, 69, 60, 70, 60, 85, 57, 85, 86, 58, 62, 78, 70, 121, 41, 59, 74, 66, 62, 85, 48, 45, 72, 67, 67, 71, 65, 54, 47, 58, 49, 82, 87, 40, 89, 77, 73, 82, 76, 62, 86, 67, 58, 51, 53, 41, 67, 54, 51, 72, 51, 77, 80, 62, 61, 78, 49, 70, 48, 63, 52, 74, 64, 62, 58, 56, 62, 55, 64, 62, 81, 80, 56, 59, 48, 78, 57, 72, 61, 61, 66, 49, 76, 60, 53, 68, 58, 65, 58, 67, 73, 48, 53, 45, 55, 75, 75, 61, 46, 75, 58, 55, 62, 76, 67, 82, 65, 71, 57, 78, 52, 71, 56, 85, 80, 97, 61, 53, 98, 72, 85, 51, 83, 72, 69, 57, 55, 66, 69, 68, 59, 73, 106, 69, 66, 60, 78, 88, 69, 48, 57, 54, 50, 62, 64, 55, 64, 125, 66, 60, 46, 73, 58, 91, 74, 76, 85, 52, 52, 83, 53, 74, 70, 65, 69, 63, 55, 69, 54, 112, 78, 75, 67, 57, 63, 55, 63, 75, 49, 108, 74, 50, 59, 51, 79, 56, 76, 74, 65, 62, 102, 57, 52, 60, 58, 56, 73, 69, 46, 53, 55, 74, 173, 59, 71, 68, 67, 47, 66, 76, 66, 60, 70, 56, 53, 93, 50, 76, 61, 82, 72, 48, 77, 54, 88, 51, 59, 87, 45, 57, 50, 62, 97, 69, 64, 72, 81, 63, 59, 60, 58, 63, 76, 60, 56, 57, 57, 82, 56, 75, 61, 64, 75, 62, 55, 53, 67, 76, 50, 64, 68, 77, 57, 55, 47, 121, 61, 64, 61, 71, 70, 58, 69, 53, 94, 52, 71, 67, 75, 60, 77, 54, 71, 61, 63, 53, 61, 53, 70, 77, 74, 84, 62, 88, 72, 61, 58, 74, 50, 57, 79, 69, 56, 58, 43, 62, 62, 88, 65, 66, 76, 88, 77, 100, 96, 49, 72, 74, 59, 98, 86, 49, 60, 70, 74, 62, 48, 56, 69, 71, 59, 71, 64, 63, 57, 75, 56, 66, 63, 49, 90, 62, 58, 60, 61, 96, 65, 73, 53, 76, 51, 80, 78, 65, 57, 57, 105, 60, 56, 66, 74, 69, 74, 63, 55, 84, 62, 62, 62, 61, 46, 71, 64, 60, 65, 90, 78, 51, 80, 53, 56, 52, 87, 62, 59, 57, 69, 64, 69, 65, 51, 64, 71, 61, 66, 32, 78, 73, 69, 59, 58, 66, 41, 69, 80, 56, 50, 53, 74, 60, 62, 72, 41, 74, 64, 70, 58, 75, 60, 70, 93, 55, 47, 67, 87, 76, 64, 68, 68, 77, 58, 69, 63, 75, 56, 73, 59, 55, 70, 51, 49, 60, 107, 77, 70, 52, 47, 78, 64, 63, 62, 65, 48, 58, 68, 60, 53, 86, 67, 54, 61, 49, 60, 75, 73, 42, 50, 57, 44, 72, 52, 77, 70, 65, 74, 84, 49, 98, 89, 66, 60, 66, 57, 62, 136, 48, 54, 63, 60, 57, 69, 56, 75, 58, 98, 52, 71, 81, 100, 69, 70, 42, 75, 68, 121, 61, 59, 61, 71, 122, 88, 87, 116, 63, 75, 75, 66, 62, 73, 69, 69, 54, 61, 50, 59, 45, 71, 77, 47, 59, 49, 73, 60, 56, 76, 40, 77, 70, 50, 48, 68, 78, 69, 55, 77, 65, 65, 61, 56, 52, 80, 51, 68, 55, 96, 78, 69, 60, 71, 59, 75, 71, 47, 88, 86, 56, 57, 66, 72, 94, 52, 68, 47, 78, 48, 62, 67, 52, 100, 72, 70, 60, 74, 74, 77, 75, 46, 52, 89, 67, 47, 62, 48, 58, 53, 59, 69, 54, 64, 92, 61, 74, 67, 44, 72, 67, 60, 59, 64, 67, 54, 51, 67, 81, 67, 39, 69, 69, 66, 61, 77, 63, 58, 58, 73, 61, 65, 68, 83, 75, 51, 68, 72, 74, 64, 85, 61, 68, 90, 64, 71, 71, 58, 62, 76, 69, 52, 54, 83, 38, 65, 63, 80, 66, 52, 81, 93, 103, 74, 59, 77, 71, 74, 67, 110, 86, 57, 51, 56, 80, 60, 51, 65, 58, 73, 58, 50, 63, 61, 60, 74, 77, 51, 45, 54, 64, 60, 77, 96, 114, 89, 66, 80, 60, 65, 77, 63, 58, 75, 58, 53, 81, 26, 83, 100, 56, 61, 81, 57, 62, 74, 92, 70, 64, 61, 80, 58, 57, 57, 56, 58, 73, 67, 78, 62, 67, 84, 68, 56, 66, 68, 50, 121, 55, 78, 59, 84, 56, 63, 46, 69, 57, 79, 60, 49, 70, 61, 67, 76, 74, 64, 62, 68, 43, 43, 60, 78, 59, 92, 60, 59, 50, 59, 43, 63, 54, 62, 90, 66, 58, 58, 56, 78, 69, 65, 54, 75, 43, 53, 70, 63, 113, 67, 64, 68, 57, 66, 74, 56, 74, 58, 70, 71, 44, 80, 51, 54, 65, 76, 48, 118, 83, 66, 60, 64, 56, 74, 66, 76, 67, 42, 49, 68, 88, 108, 58, 86, 61, 88, 70, 71, 78, 83, 75, 102, 87, 56, 76, 51, 88, 45, 67, 62, 59, 70, 69, 76, 59, 71, 79, 54, 74, 63, 78, 86, 66, 119, 52, 66, 58, 63, 50, 51, 51, 78, 46, 48, 74, 71, 58, 63, 65, 45, 81, 69, 68, 57, 53, 71, 38, 57, 63, 74, 82, 104, 65, 75, 71, 103, 54, 64, 73, 60, 76, 55, 65, 83, 63, 72, 57, 68, 59, 45, 65, 83, 42, 77, 47, 57, 64, 64, 54, 39, 50, 68, 81, 75, 66, 54, 62, 78, 67, 55, 51, 59, 63, 58, 90, 63, 59, 73, 43, 51, 53, 45, 72, 62, 64, 62, 58, 49, 57, 58, 63, 64, 106, 39, 43, 71, 69, 46, 61, 69, 57, 80, 70, 51, 55, 69, 52, 77, 52, 53, 62, 71, 55, 58, 75, 53, 58, 62, 54, 68, 79, 66, 61, 60, 77, 83, 51, 59, 62, 75, 78, 63, 67, 66, 64, 63, 43, 70, 59, 62, 64, 94, 68, 141, 59, 76, 108, 55, 70, 51, 47, 41, 80, 71, 73, 68, 69, 53, 75, 47, 55, 52, 59, 67, 54, 76, 56, 107, 69, 71, 87, 67, 59, 93, 64, 61, 58, 81, 67, 63, 47, 70, 62, 53, 43, 74, 78, 57, 84, 67, 71, 70, 90, 47, 71, 58, 64, 68, 71, 63, 62, 80, 65, 65, 60, 67, 65, 61, 81, 59, 56, 63, 55, 60, 70, 66, 68, 48, 59, 61, 78, 85, 81, 48, 67, 54, 51, 84, 66, 70, 59, 74, 68, 69, 50, 52, 64, 65, 56, 47, 74, 76, 63, 55, 69, 53, 60, 124, 31, 70, 60, 78, 96, 56, 50, 71, 70, 50, 77, 71, 53, 77, 57, 64, 55, 70, 86, 61, 73, 61, 66, 47, 54, 49, 46, 55, 51, 60, 67, 64, 109, 59, 68, 55, 51, 74, 67, 50, 58, 61, 54, 47, 79, 38, 66, 58, 86, 54, 46, 72, 57, 51, 60, 75, 84, 85, 72, 80, 54, 71, 43, 77, 56, 87, 63, 75, 76, 54, 53, 73, 47, 62, 63, 77, 62, 50, 47, 60, 102, 74, 58, 74, 53, 63, 95, 59, 60, 71, 54, 73, 52, 47, 54, 65, 53, 53, 76, 63, 57, 60, 98, 60, 85, 70, 50, 83, 60, 52, 90, 68, 126, 65, 64, 58, 78, 66, 83, 59, 74, 78, 54, 100, 73, 69, 60, 63, 85, 56, 72, 50, 52, 59, 86, 170, 64, 63, 67, 71, 65, 43, 61, 64, 71, 52, 68, 42, 71, 76, 67, 98, 94, 53, 67, 55, 55, 84, 81, 68, 62, 74, 56, 65, 90, 54, 66, 54, 71, 72, 68, 39, 72, 60, 70, 83, 85, 62, 61, 53, 64, 71, 88, 64, 64, 66, 88, 75, 63, 59, 44, 89, 74, 49, 57, 57, 77, 93, 66, 57, 61, 73, 71, 59, 79, 61, 57, 85, 71, 98, 75, 108, 69, 49, 45, 66, 71, 68, 69, 60, 53, 92, 47, 68, 55, 56, 68, 57, 53, 59, 82, 50, 70, 61, 74, 55, 71, 58, 101, 57, 54, 57, 61, 46, 120, 85, 75, 95, 65, 71, 57, 47, 77, 75, 84, 69, 92, 45, 59, 54, 50, 59, 51, 54, 62, 74, 62, 58, 66, 66, 64, 58, 50, 42, 66, 53, 68, 62, 70, 59, 48, 65, 56, 79, 61, 46, 63, 61, 73, 66, 75, 64, 53, 45, 60, 54, 62, 61, 52, 37, 56, 69, 67, 69, 67, 58, 49, 56, 99, 74, 62, 53, 58, 59, 72, 62, 80, 83, 60, 66, 66, 63, 55, 57, 62, 53, 58, 66, 58, 74, 63, 74, 66, 49, 72, 59, 80, 64, 58, 56, 80, 69, 44, 58, 72, 65, 58, 64, 68, 59, 62, 59, 77, 60, 70, 69, 81, 68, 86, 65, 56, 72, 98, 49, 73, 69, 58, 66, 63, 54, 64, 57, 46, 67, 60, 84, 72, 56, 71, 46, 50, 72, 63, 70, 73, 60, 61, 67, 55, 60, 86, 60, 62, 55, 65, 58, 80, 73, 60, 56, 63, 62, 63, 66, 59, 58, 75, 46, 80, 48, 118, 66, 52, 59, 59, 56, 66, 137, 61, 80, 52, 55, 61, 54, 58, 84, 56, 65, 50, 86, 93, 76, 80, 86, 64, 48, 62, 109, 59, 54, 55, 53, 76, 85, 80, 104, 60, 59, 75, 50, 62, 82, 74, 85, 78, 65, 59, 71, 49, 63, 66, 75, 67, 71, 73, 49, 61, 55, 42, 60, 77, 53, 74, 64, 74, 51, 52, 62, 56, 80, 65, 71, 57, 84, 49, 77, 73, 62, 72, 58, 74, 68, 75, 74, 52, 71, 64, 57, 67, 60, 58, 80, 103, 57, 63, 59, 47, 65, 54, 69, 54, 74, 64, 45, 85, 65, 76, 62, 53, 63, 73, 74, 61, 66, 59, 73, 65, 81, 89, 68, 61, 70, 69, 52, 57, 74, 48, 85, 67, 58, 59, 81, 77, 41, 59, 64, 106, 87, 60, 71, 63, 65, 57, 75, 63, 62, 30, 67, 75, 70, 51, 61, 65, 50, 59, 50, 78, 66, 86, 65, 85, 58, 76, 91, 87, 58, 70, 58, 87, 59, 69, 85, 44, 69, 69, 59, 51, 57, 72, 71, 103, 82, 62, 71, 69, 59, 60, 96, 71, 74, 93, 44, 71, 54, 69, 68, 71, 66, 67, 45, 67, 75, 70, 73, 57, 60, 61, 49, 69, 44, 85, 140, 107, 119, 53, 74, 75, 49, 70, 52, 55, 81, 66, 71, 74, 65, 67, 66, 51, 56, 58, 64, 82, 87, 108, 59, 58, 55, 71, 49, 61, 53, 65, 61, 71, 69, 62, 58, 51, 76, 73, 59, 63, 62, 87, 114, 71, 93, 59, 45, 76, 100, 58, 65, 56, 79, 72, 39, 69, 53, 62, 83, 93, 55, 65, 68, 54, 70, 66, 64, 67, 72, 71, 48, 61, 50, 58, 73, 47, 72, 71, 87, 67, 57, 55, 71, 50, 60, 55, 74, 61, 54, 61, 60, 112, 55, 65, 58, 62, 78, 81, 81, 57, 76, 71, 67, 64, 67, 67, 49, 65, 61, 66, 70, 106, 56, 52, 62, 65, 72, 77, 67, 140, 60, 60, 78, 75, 111, 50, 62, 73, 65, 75, 62, 54, 58, 85, 57, 78, 65, 71, 79, 106, 80, 59, 66, 64, 68, 63, 70, 46, 72, 74, 83, 78, 65, 65, 58, 63, 110, 62, 62, 53, 80, 46, 75, 75, 108, 74, 58, 60, 62, 55, 66, 55, 51, 64, 50, 65, 83, 55, 63, 52, 61, 55, 57, 58, 74, 50, 67, 60, 86, 63, 57, 68, 67, 53, 66, 107, 80, 87, 67, 61, 69, 62, 44, 81, 59, 70, 72, 73, 70, 54, 50, 48, 61, 59, 53, 73, 59, 68, 55, 69, 68, 64, 75, 60, 51, 62, 58, 61, 61, 78, 73, 62, 54, 80, 56, 69, 60, 56, 48, 53, 77, 62, 56, 70, 70, 114, 54, 58, 66, 50, 66, 65, 64, 71, 89, 73, 68, 54, 53, 66, 85, 78, 53, 46, 69, 63, 53, 72, 49, 40, 54, 71, 60, 79, 71, 61, 57, 82, 64, 53, 58, 74, 71, 55, 74, 59, 58, 55, 55, 47, 69, 49, 62, 72, 58, 62, 105, 64, 62, 97, 68, 97, 58, 47, 56, 71, 64, 66, 80, 77, 48, 45, 64, 65, 79, 68, 87, 52, 56, 45, 63, 79, 64, 98, 43, 51, 46, 69, 60, 63, 54, 69, 54, 58, 77, 60, 61, 68, 62, 65, 51, 58, 71, 68, 66, 52, 49, 62, 74, 54, 40, 65, 45, 63, 63, 58, 59, 63, 56, 60, 56, 67, 59, 53, 57, 62, 77, 68, 70, 61, 57, 85, 78, 59, 88, 93, 58, 57, 69, 64, 71, 80, 70, 62, 64, 76, 64, 60, 77, 68, 55, 67, 61, 61, 66, 66, 66, 68, 70, 62, 87, 49, 93, 74, 75, 73, 54, 60, 53, 80, 77, 58, 62, 65, 56, 66, 45, 61, 73, 72, 48, 70, 74, 65, 74, 42, 64, 59, 48, 116, 61, 72, 58, 80, 44, 61, 89, 70, 71, 72, 65, 51, 64, 51, 75, 60, 55, 70, 69, 58, 65, 38, 61, 85, 72, 47, 90, 69, 68, 56, 82, 79, 68, 53, 57, 75, 93, 61, 83, 78, 66, 56, 65, 68, 65, 53, 65, 66, 61, 51, 65, 94, 70, 62, 61, 60, 76, 71, 38, 64, 65, 70, 74, 56, 50, 66, 60, 74, 56, 70, 60, 52, 52, 74, 63, 78, 62, 56, 63, 59, 60, 92, 66, 77, 57, 58, 59, 69, 101, 55, 85, 62, 57, 68, 73, 59, 77, 68, 67, 78, 50, 48, 43, 62, 55, 67, 126, 46, 69, 63, 67, 52, 66, 67, 57, 73, 68, 76, 72, 54, 106, 61, 87, 97, 60, 78, 69, 63, 49, 80, 49, 93, 66, 63, 76, 58, 54, 75, 78, 60, 72, 51, 78, 56, 58, 52, 85, 76, 60, 72, 66, 82, 57, 71, 63, 52, 78, 58, 64, 59, 63, 61, 60, 68, 60, 56, 66, 67, 59, 73, 69, 66, 74, 60, 64, 56, 56, 48, 76, 95, 72, 71, 81, 60, 69, 78, 61, 87, 76, 85, 65, 65, 51, 56, 47, 71, 65, 61, 57, 77, 63, 56, 56, 57, 59, 83, 59, 73, 66, 78, 68, 50, 62, 95, 46, 130, 50, 86, 55, 73, 60, 51, 74, 92, 58, 47, 72, 73, 72, 78, 64, 68, 62, 60, 67, 62, 60, 69, 66, 50, 49, 56, 90, 56, 58, 69, 59, 80, 65, 56, 72, 52, 65, 72, 71, 73, 68, 73, 59, 81, 61, 63, 74, 55, 52, 59, 62, 78, 59, 62, 40, 93, 55, 75, 56, 63, 65, 43, 61, 65, 59, 40, 72, 68, 68, 65, 70, 74, 111, 59, 67, 70, 47, 55, 53, 71, 45, 66, 59, 57, 64, 48, 66, 51, 81, 87, 63, 67, 72, 71, 40, 60, 75, 49, 70, 48, 65, 70, 52, 55, 57, 53, 69, 60, 107, 87, 56, 59, 86, 70, 62, 53, 70, 69, 60, 25, 48, 52, 68, 71, 52, 49, 43, 60, 49, 66, 91, 58, 81, 73, 63, 50, 55, 77, 68, 57, 44, 47, 57, 62, 65, 83, 65, 58, 76, 66, 78, 53, 56, 72, 60, 63, 56, 55, 63, 79, 84, 68, 79, 84, 58, 112, 71, 55, 48, 68, 63, 39, 71, 74, 56, 56, 53, 86, 69, 68, 49, 47, 64, 68, 79, 64, 80, 68, 55, 69, 63, 84, 113, 64, 54, 59, 52, 103, 52, 87, 104, 74, 55, 69, 82, 63, 78, 72, 91, 60, 56, 70, 60, 49, 74, 66, 56, 68, 42, 72, 69, 64, 57, 81, 37, 86, 65, 92, 77, 87, 69, 57, 66, 49, 68, 85, 52, 53, 63, 39, 68, 54, 64, 72, 73, 67, 79, 58, 60, 56, 55, 72, 106, 69, 83, 50, 92, 92, 63, 66, 54, 93, 78, 57, 56, 69, 91, 60, 64, 91, 64, 92, 58, 67, 60, 76, 74, 61, 43, 61, 57, 71, 57, 63, 70, 70, 84, 77, 66, 72, 72, 46, 74, 70, 63, 56, 62, 61, 74, 62, 78, 77, 91, 77, 38, 85, 66, 61, 73, 54, 34, 33, 75, 51, 57, 64, 62, 32, 57, 54, 59, 34, 67, 58, 68, 61, 64, 62, 65, 49, 60, 69, 46, 60, 38, 64, 68, 67, 69, 86, 79, 64, 61, 81, 58, 89, 38, 93, 77, 105, 59, 36, 99, 65, 48, 87, 54, 66, 70, 70, 77, 47, 48, 74, 59, 51, 85, 51, 70, 82, 49, 61, 65, 56, 66, 80, 129, 103, 86, 66, 90, 79, 60, 74, 64, 84, 92, 72, 71, 93, 50, 53, 80, 75, 52, 73, 69, 42, 76, 80, 98, 70, 43, 84, 49, 76, 41, 56, 44, 77, 73, 55, 76, 47, 74, 60, 48, 67, 50, 103, 130, 59, 54, 60, 55, 67, 80, 59, 56, 57, 67, 53, 63, 86, 56, 62, 67, 129, 75, 92, 59, 57, 61, 47, 66, 70, 97, 55, 58, 70, 63, 67, 94, 56, 61, 47, 59, 64, 70, 69, 62, 62, 54, 75, 61, 69, 63, 62, 72, 113, 74, 63, 67, 66, 84, 58, 84, 51, 68, 63, 71, 58, 52, 70, 82, 89, 76, 62, 75, 86, 44, 70, 68, 53, 68, 53, 81, 64, 66, 62, 65, 81, 109, 43, 96, 58, 55, 76, 51, 70, 67, 72, 89, 49, 64, 72, 70, 57, 82, 63, 50, 87, 54, 50, 65, 56, 81, 88, 56, 52, 76, 45, 65, 70, 133, 59, 71, 83, 74, 58, 62, 65, 82, 66, 50, 54, 47, 72, 41, 66, 45, 65, 55, 71, 79, 74, 69, 47, 55, 75, 67, 57, 99, 63, 88, 82, 121, 68, 62, 56, 55, 53, 59, 82, 60, 82, 68, 52, 84, 59, 53, 80, 75, 42, 71, 95, 59, 72, 65, 50, 59, 70, 55, 73, 78, 78, 70, 48, 98, 60, 57, 48, 77, 73, 48, 56, 74, 102, 77, 47, 47, 72, 68, 57, 55, 86, 49, 43, 64, 66, 43, 58, 71, 104, 58, 59, 83, 75, 85, 50, 41, 88, 88, 52, 49, 71, 43, 60, 98, 61, 58, 68, 90, 62, 62, 74, 62, 49, 56, 55, 63, 111, 40, 56, 43, 64, 65, 48, 80, 63, 91, 78, 74, 38, 69, 61, 75, 57, 91, 57, 58, 66, 60, 60, 117, 62, 70, 109, 60, 108, 60, 37, 40, 64, 67, 80, 61, 60, 59, 56, 70, 60, 74, 81, 61, 50, 65, 78, 74, 77, 67, 56, 83, 69, 83, 73, 54, 60, 60, 88, 53, 42, 46, 42, 58, 85, 65, 61, 66, 56, 87, 66, 61, 79, 83, 79, 64, 64, 72, 63, 92, 53, 59, 68, 58, 67, 75, 39, 81, 62, 55, 56, 76, 68, 44, 46, 53, 64, 50, 83, 54, 67, 68, 65, 100, 68, 59, 65, 103, 58, 59, 76, 55, 42, 64, 50, 50, 77, 68, 58, 67, 65, 72, 56, 60, 70, 65, 51, 107, 47, 61, 72, 61, 68, 71, 70, 57, 40, 50, 62, 57, 57, 64, 67, 75, 73, 74, 84, 78, 72, 42, 45, 75, 70, 58, 42, 81, 70, 48, 86, 40, 56, 73, 64, 58, 57, 64, 90, 61, 59, 75, 70, 72, 70, 62, 97, 76, 68, 56, 49, 59, 57, 100, 51, 64, 59, 56, 70, 55, 43, 64, 53, 71, 51, 85, 60, 57, 75, 66, 73, 37, 50, 58, 44, 58, 67, 52, 62, 49, 95, 81, 54, 61, 74, 64, 61, 64, 61, 64, 61, 62, 44, 78, 50, 70, 81, 68, 79, 58, 69, 67, 63, 66, 68, 69, 72, 56, 66, 63, 102, 87, 71, 83, 56, 69, 66, 106, 49, 54, 55, 64, 73, 59, 57, 74, 47, 62, 56, 57, 83, 62, 72, 50, 67, 138, 63, 92, 51, 64, 81, 94, 91, 61, 49, 57, 60, 71, 69, 75, 48, 85, 86, 63, 48, 51, 47, 59, 64, 62, 83, 63, 54, 54, 76, 49, 71, 68, 32, 66, 71, 55, 59, 59, 54, 93, 68, 55, 74, 60, 89, 67, 45, 67, 46, 47, 66, 65, 75, 55, 56, 54, 69, 51, 65, 47, 56, 62, 93, 71, 56, 98, 81, 67, 68, 55, 73, 99, 113, 81, 75, 92, 67, 57, 60, 64, 78, 78, 63, 86, 77, 59, 71, 43, 68, 44, 57, 72, 50, 82, 74, 50, 56, 63, 83, 64, 51, 65, 101, 51, 68, 90, 90, 44, 115, 77, 78, 48, 75, 54, 49, 47, 68, 65, 53, 53, 80, 48, 79, 83, 62, 53, 43, 60, 45, 56, 63, 73, 61, 50, 87, 41, 47, 59, 55, 86, 94, 53, 71, 61, 47, 62, 65, 98, 60, 64, 55, 62, 58, 73, 42, 70, 46, 69, 74, 98, 70, 53, 59, 49, 51, 58, 58, 78, 78, 68, 73, 94, 69, 59, 66, 86, 86, 55, 51, 68, 117, 96, 79, 46, 43, 60, 58, 66, 31, 69, 55, 75, 79, 63, 66, 64, 38, 51, 48, 48, 77, 61, 58, 66, 71, 62, 58, 62, 63, 57, 42, 48, 59, 67, 54, 53, 61, 44, 66, 72, 60, 59, 56, 72, 73, 67, 86, 74, 55, 64, 57, 68, 63, 39, 48, 65, 64, 60, 64, 45, 58, 75, 64, 72, 62, 115, 75, 73, 62, 68, 71, 64, 46, 94, 59, 65, 72, 102, 71, 44, 67, 47, 48, 69, 71, 50, 62, 58, 76, 59, 66, 87, 32, 67, 79, 66, 69, 110, 51, 72, 65, 50, 52, 63, 67, 72, 69, 70, 60, 75, 58, 57, 62, 76, 106, 101, 111, 49, 55, 55, 108, 72, 49, 39, 89, 58, 64, 55, 48, 68, 50, 70, 67, 51, 85, 118, 55, 86, 69, 57, 89, 66, 65, 67, 56, 81, 58, 61, 67, 47, 86, 75, 48, 67, 57, 73, 74, 72, 124, 53, 64, 71, 50, 47, 49, 62, 64, 61, 68, 66, 41, 56, 62, 65, 60, 49, 47, 59, 50, 56, 76, 57, 51, 70, 57, 78, 72, 60, 65, 67, 61, 73, 67, 76, 55, 64, 85, 50, 65, 49, 74, 58, 62, 63, 64, 45, 71, 74, 55, 69, 74, 109, 55, 77, 53, 56, 47, 55, 78, 53, 56, 38, 48, 59, 59, 70, 81, 105, 60, 71, 133, 84, 57, 66, 62, 71, 44, 84, 53, 55, 65, 73, 50, 95, 49, 42, 82, 66, 52, 74, 117, 74, 82, 66, 76, 76, 50, 121, 54, 71, 70, 62, 59, 77, 54, 50, 54, 66, 59, 69, 62, 58, 75, 57, 63, 57, 70, 60, 75, 88, 76, 83, 68, 73, 57, 64, 66, 65, 46, 59, 57, 82, 63, 97, 86, 72, 56, 53, 88, 63, 67, 48, 90, 59, 57, 39, 89, 56, 50, 65, 60, 60, 45, 88, 88, 68, 67, 55, 95, 57, 49, 68, 65, 62, 70, 66, 57, 90, 52, 89, 52, 66, 63, 83, 52, 49, 57, 59, 74, 70, 47, 89, 55, 49, 63, 71, 57, 66, 112, 91, 75, 79, 55, 69, 52, 64, 70, 58, 57, 50, 67, 78, 62, 53, 65, 63, 80, 76, 108, 69, 55, 69, 64, 72, 80, 80, 62, 54, 63, 55, 61, 64, 58, 66, 51, 75, 50, 124, 42, 75, 70, 63, 61, 68, 55, 77, 50, 75, 54, 72, 52, 54, 68, 68, 56, 64, 69, 71, 44, 54, 52, 95, 60, 78, 71, 64, 65, 68, 49, 74, 57, 63, 57, 81, 53, 54, 87, 80, 63, 61, 53, 87, 65, 71, 46, 48, 82, 55, 74, 39, 80, 55, 58, 76, 80, 49, 84, 67, 63, 51, 71, 74, 52, 56, 77, 73, 52, 59, 78, 54, 73, 106, 65, 114, 57, 45, 68, 53, 52, 47, 53, 53, 75, 58, 60, 71, 54, 55, 112, 67, 70, 77, 81, 62, 87, 45, 78, 54, 88, 63, 52, 68, 76, 88, 71, 84, 86, 84, 70, 62, 71, 58, 66, 86, 55, 70, 66, 62, 48, 51, 72, 57, 62, 70, 62, 83, 75, 64, 50, 66, 66, 74, 80, 58, 45, 110, 56, 53, 60, 68, 75, 55, 66, 60, 65, 99, 47, 95, 64, 63, 59, 79, 55, 63, 58, 51, 56, 69, 114, 66, 64, 56, 81, 49, 83, 67, 62, 76, 69, 57, 62, 63, 51, 68, 58, 57, 46, 51, 88, 53, 47, 64, 63, 69, 67, 52, 64, 61, 62, 91, 61, 73, 78, 62, 63, 76, 69, 46, 55, 89, 70, 91, 61, 66, 67, 79, 55, 56, 72, 91, 94, 77, 63, 90, 62, 72, 116, 87, 66, 56, 56, 85, 69, 61, 49, 50, 42, 42, 50, 56, 74, 58, 66, 54, 46, 66, 72, 40, 80, 66, 48, 93, 81, 68, 67, 50, 56, 70, 50, 62, 44, 87, 73, 65, 60, 65, 85, 80, 73, 59, 52, 63, 69, 61, 70, 66, 86, 61, 74, 76, 54, 70, 65, 62, 53, 89, 92, 78, 55, 69, 60, 41, 53, 64, 61, 52, 77, 70, 65, 66, 53, 65, 61, 47, 45, 51, 57, 67, 62, 72, 77, 80, 68, 78, 73, 64, 48, 56, 52, 80, 54, 66, 44, 87, 52, 59, 78, 66, 60, 76, 80, 49, 69, 64, 66, 66, 78, 68, 129, 51, 65, 56, 78, 73, 56, 42, 60, 67, 64, 62, 63, 62, 74, 61, 78, 55, 54, 69, 67, 68, 61, 70, 58, 75, 71, 55, 89, 85, 90, 67, 69, 65, 64, 60, 76, 66, 56, 57, 52, 56, 57, 50, 63, 68, 57, 45, 64, 49, 68, 59, 61, 60, 64, 90, 65, 90, 70, 53, 61, 61, 64, 53, 54, 76, 54, 59, 35, 53, 111, 65, 55, 54, 72, 57, 56, 73, 74, 73, 69, 54, 64, 57, 59, 64, 66, 76, 68, 75, 65, 50, 58, 72, 66, 72, 65, 72, 72, 52, 69, 55, 69, 52, 66, 74, 57, 86, 61, 70, 60, 67, 60, 66, 67, 80, 73, 75, 53, 57, 46, 68, 53, 78, 63, 115, 54, 61, 67, 65, 98, 49, 75, 52, 70, 79, 53, 56, 71, 112, 74, 74, 69, 65, 75, 58, 53, 101, 54, 55, 67, 63, 82, 66, 65, 60, 88, 52, 76, 74, 63, 65, 69, 40, 119, 67, 68, 53, 60, 52, 79, 52, 64, 70, 54, 46, 78, 70, 67, 76, 114, 57, 56, 61, 103, 70, 59, 59, 84, 88, 53, 70, 75, 66, 68, 56, 85, 78, 77, 65, 59, 66, 53, 61, 60, 53, 82, 83, 55, 59, 82, 63, 84, 62, 55, 64, 60, 46, 60, 58, 56, 64, 58, 72, 107, 57, 56, 48, 42, 69, 55, 49, 64, 61, 106, 64, 59, 44, 76, 51, 77, 53, 84, 57, 46, 47, 57, 52, 88, 71, 62, 62, 82, 61, 63, 57, 73, 52, 58, 67, 70, 66, 51, 66, 67, 68, 68, 62, 50, 46, 86, 74, 80, 59, 66, 65, 73, 67, 70, 89, 63, 68, 76, 72, 50, 40, 61, 59, 59, 59, 59, 62, 49, 71, 77, 79, 89, 93, 90, 58, 63, 77, 49, 57, 51, 53, 70, 56, 62, 63, 85, 102, 80, 52, 80, 62, 71, 71, 43, 66, 58, 55, 67, 69, 62, 59, 104, 66, 70, 65, 71, 59, 60, 54, 73, 58, 64, 42, 57, 60, 62, 65, 64, 61, 59, 57, 72, 71, 68, 66, 77, 66, 61, 68, 73, 75, 58, 68, 66, 59, 90, 67, 51, 60, 71, 103, 70, 76, 74, 61, 54, 69, 45, 85, 47, 65, 60, 86, 69, 65, 88, 56, 60, 68, 48, 53, 48, 69, 57, 68, 82, 62, 62, 70, 60, 65, 56, 49, 79, 58, 81, 59, 65, 52, 87, 64, 58, 84, 72, 63, 52, 71, 105, 76, 69, 71, 73, 55, 62, 71, 70, 74, 75, 101, 74, 66, 92, 100, 72, 48, 51, 55, 61, 66, 91, 55, 67, 67, 77, 76, 64, 109, 69, 64, 86, 60, 58, 56, 58, 84, 62, 56, 76, 58, 56, 75, 105, 68, 58, 61, 93, 54, 95, 64, 78, 90, 58, 58, 71, 87, 54, 49, 56, 53, 65, 58, 81, 52, 64, 60, 60, 73, 55, 62, 57, 75, 68, 52, 75, 45, 45, 54, 85, 64, 54, 61, 49, 71, 62, 56, 85, 46, 66, 70, 59, 82, 63, 64, 59, 55, 62, 52, 60, 76, 53, 73, 80, 86, 59, 62, 54, 79, 52, 74, 59, 51, 63, 66, 74, 47, 61, 85, 36, 65, 62, 70, 70, 79, 72, 61, 60, 82, 70, 62, 48, 60, 54, 78, 56, 55, 58, 53, 52, 54, 45, 65, 100, 76, 66, 77, 67, 77, 77, 77, 53, 68, 70, 73, 69, 57, 69, 61, 44, 44, 48, 61, 47, 77, 72, 58, 65, 60, 76, 62, 94, 74, 67, 124, 74, 59, 73, 49, 78, 72, 64, 51, 55, 62, 69, 71, 54, 97, 92, 53, 88, 42, 78, 69, 60, 70, 53, 94, 69, 49, 68, 82, 79, 52, 56, 63, 56, 54, 65, 61, 76, 72, 58, 59, 58, 52, 71, 71, 65, 57, 106, 63, 50, 57, 53, 62, 64, 50, 72, 41, 60, 83, 53, 55, 63, 69, 55, 55, 53, 68, 132, 102, 72, 54, 45, 58, 83, 58, 64, 59, 82, 44, 89, 57, 57, 60, 49, 54, 76, 64, 54, 56, 49, 55, 53, 49, 93, 49, 84, 78, 50, 62, 55, 58, 53, 79, 73, 82, 62, 43, 51, 95, 51, 63, 58, 59, 61, 82, 58, 55, 58, 71, 54, 62, 58, 73, 45, 66, 49, 54, 60, 51, 64, 122, 92, 80, 76, 55, 72, 77, 55, 74, 73, 61, 67, 60, 68, 85, 90, 62, 65, 106, 93, 77, 52, 58, 71, 76, 77, 73, 66, 62, 71, 69, 59, 65, 60, 72, 68, 62, 74, 59, 69, 68, 70, 53, 66, 60, 56, 54, 52, 72, 81, 72, 58, 111, 69, 51, 63, 80, 51, 57, 69, 62, 58, 62, 60, 82, 54, 98, 79, 49, 48, 54, 52, 109, 81, 77, 51, 60, 47, 50, 78, 71, 66, 75, 58, 61, 56, 58, 59, 80, 86, 46, 64, 55, 85, 94, 78, 66, 57, 33, 65, 63, 41, 103, 110, 86, 76, 66, 60, 70, 45, 74, 67, 63, 75, 47, 68, 52, 82, 53, 69, 66, 105, 54, 41, 84, 69, 70, 62, 52, 47, 85, 76, 67, 63, 67, 93, 66, 61, 69, 107, 73, 74, 56, 91, 49, 82, 66, 64, 43, 49, 62, 78, 56, 69, 52, 79, 54, 77, 46, 67, 77, 47, 79, 56, 52, 55, 65, 49, 61, 128, 73, 63, 58, 69, 79, 54, 49, 59, 40, 63, 61, 56, 57, 55, 66, 80, 66, 85, 92, 58, 69, 74, 51, 61, 81, 72, 67, 81, 69, 90, 71, 75, 59, 53, 75, 44, 56, 79, 36, 63, 71, 94, 79, 63, 48, 51, 70, 92, 52, 67, 77, 79, 87, 72, 75, 46, 54, 87, 63, 47, 67, 74, 78, 50, 60, 67, 46, 59, 59, 59, 56, 65, 51, 56, 82, 49, 67, 61, 51, 61, 73, 89, 63, 71, 78, 65, 61, 56, 73, 55, 83, 73, 62, 67, 62, 58, 58, 68, 48, 69, 65, 81, 76, 69, 87, 64, 76, 56, 57, 59, 55, 63, 76, 63, 57, 53, 76, 64, 97, 60, 93, 55, 80, 84, 65, 70, 64, 97, 65, 60, 80, 68, 66, 49, 56, 43, 55, 74, 66, 53, 97, 74, 75, 76, 72, 60, 58, 64, 59, 55, 82, 71, 70, 85, 64, 98, 60, 51, 65, 57, 66, 65, 61, 73, 54, 126, 60, 52, 57, 76, 69, 75, 73, 90, 69, 81, 53, 82, 90, 52, 49, 51, 49, 78, 53, 85, 74, 74, 52, 92, 64, 65, 74, 57, 44, 106, 100, 67, 46, 57, 60, 51, 54, 61, 79, 46, 63, 76, 74, 55, 65, 61, 63, 47, 55, 57, 64, 73, 68, 61, 62, 57, 47, 67, 104, 70, 94, 46, 62, 60, 59, 62, 67, 56, 55, 61, 89, 53, 50, 65, 97, 55, 53, 63, 75, 82, 97, 60, 68, 57, 57, 51, 64, 62, 68, 79, 60, 66, 62, 109, 85, 68, 92, 58, 67, 74, 92, 93, 64, 52, 66, 67, 53, 66, 68, 65, 122, 81, 62, 98, 44, 65, 47, 65, 73, 75, 58, 52, 68, 108, 52, 65, 59, 51, 68, 68, 78, 56, 89, 61, 48, 60, 76, 74, 73, 74, 55, 72, 52, 61, 57, 65, 51, 53, 60, 50, 58, 70, 57, 69, 80, 45, 80, 88, 68, 51, 60, 63, 52, 69, 73, 55, 72, 88, 55, 64, 83, 42, 65, 58, 59, 73, 62, 66, 53, 62, 68, 68, 92, 120, 63, 66, 65, 59, 68, 58, 72, 103, 76, 57, 95, 55, 75, 56, 84, 42, 66, 70, 66, 71, 50, 100, 57, 83, 76, 86, 73, 49, 69, 54, 76, 45, 62, 90, 53, 61, 57, 63, 78, 47, 68, 63, 62, 56, 74, 58, 67, 43, 73, 58, 70, 52, 73, 80, 54, 63, 53, 48, 61, 59, 53, 52, 64, 68, 61, 41, 118, 54, 49, 86, 72, 105, 71, 50, 50, 60, 69, 64, 79, 57, 81, 80, 58, 64, 84, 91, 69, 39, 69, 30, 76, 63, 75, 56, 55, 81, 69, 77, 59, 63, 64, 62, 64, 97, 72, 46, 62, 61, 75, 61, 83, 52, 60, 76, 62, 50, 52, 59, 59, 63, 67, 50, 51, 77, 48, 58, 71, 83, 69, 35, 58, 82, 62, 57, 66, 59, 60, 62, 41, 83, 94, 56, 73, 52, 52, 47, 36, 112, 73, 61, 66, 59, 50, 62, 67, 53, 48, 50, 73, 67, 65, 63, 115, 52, 63, 46, 71, 64, 52, 48, 78, 52, 86, 78, 65, 55, 52, 50, 67, 74, 84, 65, 75, 46, 43, 60, 53, 55, 66, 87, 62, 99, 70, 61, 73, 52, 75, 54, 70, 63, 61, 66, 53, 98, 41, 64, 66, 63, 59, 48, 48, 70, 71, 62, 58, 63, 91, 55, 61, 73, 69, 77, 136, 74, 56, 55, 63, 61, 51, 53, 57, 66, 83, 65, 72, 51, 57, 76, 56, 70, 63, 118, 97, 76, 54, 64, 62, 38, 56, 128, 69, 64, 63, 61, 66, 52, 98, 74, 67, 83, 58, 56, 67, 70, 55, 44, 66, 72, 62, 60, 67, 75, 50, 65, 60, 100, 66, 63, 67, 63, 58, 60, 98, 63, 71, 59, 62, 74, 62, 70, 62, 57, 72, 74, 55, 52, 60, 81, 51, 60, 52, 41, 78, 112, 40, 69, 48, 71, 78, 58, 90, 69, 50, 65, 61, 116, 59, 73, 61, 66, 52, 65, 65, 71, 69, 73, 97, 70, 64, 68, 54, 60, 55, 64, 59, 62, 39, 64, 51, 79, 80, 59, 57, 42, 99, 69, 69, 61, 61, 58, 63, 94, 62, 46, 61, 68, 50, 57, 68, 82, 59, 69, 74, 77, 47, 66, 73, 54, 72, 44, 116, 70, 64, 59, 59, 56, 64, 58, 65, 60, 67, 70, 83, 56, 69, 61, 47, 65, 68, 57, 61, 78, 83, 56, 62, 71, 52, 56, 61, 63, 87, 68, 50, 57, 64, 90, 46, 77, 71, 69, 51, 62, 54, 75, 61, 76, 75, 57, 45, 63, 52, 75, 66, 52, 67, 71, 69, 69, 53, 59, 46, 61, 69, 97, 57, 61, 67, 70, 50, 64, 81, 57, 50, 63, 43, 82, 71, 71, 75, 51, 83, 62, 57, 58, 68, 69, 72, 49, 69, 39, 96, 59, 91, 65, 61, 76, 98, 80, 67, 72, 48, 55, 65, 71, 53, 112, 60, 81, 67, 67, 75, 89, 56, 62, 57, 82, 56, 55, 51, 102, 90, 57, 75, 50, 96, 73, 67, 63, 89, 42, 48, 48, 99, 74, 65, 49, 54, 59, 51, 61, 52, 59, 80, 127, 52, 71, 50, 59, 79, 90, 83, 58, 70, 62, 60, 50, 56, 59, 57, 50, 65, 58, 67, 83, 56, 83, 66, 70, 74, 88, 84, 67, 69, 76, 53, 48, 85, 49, 70, 69, 65, 86, 75, 67, 69, 62, 81, 61, 61, 82, 45, 47, 60, 55, 58, 63, 69, 62, 63, 83, 49, 61, 61, 54, 57, 125, 68, 58, 56, 67, 82, 49, 88, 47, 59, 90, 61, 71, 51, 68, 56, 62, 50, 72, 73, 62, 56, 53, 67, 89, 98, 51, 40, 83, 64, 39, 51, 82, 60, 71, 65, 68, 79, 54, 68, 73, 75, 77, 51, 61, 58, 75, 48, 63, 77, 58, 60, 59, 65, 64, 63, 87, 62, 52, 55, 64, 95, 128, 58, 45, 63, 61, 78, 55, 55, 60, 58, 65, 91, 64, 49, 68, 45, 55, 62, 76, 62, 82, 58, 53, 72, 71, 42, 56, 58, 57, 57, 68, 81, 84, 50, 46, 83, 64, 68, 58, 61, 64, 83, 57, 74, 65, 87, 59, 69, 68, 48, 52, 59, 48, 97, 75, 52, 78, 61, 76, 59, 73, 60, 64, 61, 63, 64, 64, 63, 102, 67, 74, 58, 82, 84, 69, 64, 57, 57, 57, 53, 60, 42, 63, 69, 67, 85, 55, 76, 71, 73, 72, 71, 61, 64, 60, 101, 61, 67, 59, 86, 65, 64, 58, 71, 70, 95, 79, 77, 75, 57, 68, 58, 41, 52, 77, 83, 77, 61, 66, 68, 85, 67, 78, 58, 72, 58, 70, 64, 61, 58, 56, 56, 66, 67, 45, 60, 59, 71, 72, 62, 61, 67, 53, 56, 52, 73, 61, 69, 91, 61, 93, 67, 74, 62, 92, 82, 56, 68, 48, 67, 65, 51, 56, 47, 70, 49, 67, 69, 61, 55, 54, 70, 50, 81, 55, 60, 74, 57, 96, 54, 51, 56, 71, 99, 62, 59, 65, 44, 53, 73, 60, 90, 47, 45, 57, 62, 41, 56, 58, 75, 71, 53, 79, 60, 59, 42, 54, 62, 35, 73, 59, 59, 80, 50, 58, 49, 87, 60, 57, 53, 71, 59, 66, 54, 57, 53, 80, 84, 44, 56, 69, 76, 71, 65, 60, 55, 68, 59, 48, 86, 59, 70, 74, 44, 56, 47, 55, 65, 61, 52, 85, 55, 64, 75, 57, 82, 96, 65, 52, 62, 65, 70, 65, 63, 62, 73, 77, 82, 44, 54, 50, 54, 86, 49, 84, 87, 76, 59, 71, 57, 79, 79, 79, 59, 55, 49, 67, 86, 60, 61, 70, 64, 75, 51, 57, 69, 97, 80, 56, 86, 53, 79, 59, 72, 46, 65, 56, 89, 54, 69, 54, 77, 56, 71, 54, 71, 55, 56, 68, 68, 53, 67, 63, 55, 56, 67, 68, 62, 42, 78, 78, 75, 80, 73, 47, 77, 63, 103, 85, 44, 74, 71, 68, 47, 61, 93, 60, 82, 76, 72, 59, 51, 60, 65, 55, 54, 85, 73, 86, 64, 69, 65, 72, 53, 51, 61, 59, 45, 62, 108, 46, 98, 46, 58, 60, 69, 87, 60, 68, 57, 42, 60, 56, 41, 73, 52, 71, 55, 84, 60, 62, 94, 59, 62, 65, 64, 78, 62, 74, 57, 66, 58, 56, 51, 77, 49, 71, 51, 57, 60, 86, 52, 79, 72, 48, 69, 63, 62, 75, 59, 81, 60, 68, 74, 61, 58, 78, 58, 50, 40, 102, 85, 50, 60, 70, 70, 63, 60, 69, 54, 55, 66, 71, 64, 53, 62, 80, 77, 61, 54, 79, 46, 81, 58, 71, 49, 83, 67, 93, 52, 67, 55, 59, 76, 64, 50, 64, 83, 83, 55, 67, 81, 98, 69, 42, 62, 75, 59, 66, 85, 60, 60, 68, 70, 59, 79, 55, 60, 76, 68, 82, 52, 69, 73, 56, 53, 47, 47, 61, 55, 81, 65, 52, 49, 49, 75, 69, 67, 61, 67, 62, 55, 64, 70, 62, 74, 68, 73, 74, 90, 63, 67, 78, 36, 54, 59, 56, 107, 72, 78, 64, 92, 66, 61, 113, 55, 64, 71, 68, 67, 59, 49, 74, 57, 57, 61, 74, 46, 71, 97, 55, 56, 67, 73, 57, 99, 79, 99, 63, 98, 63, 57, 51, 58, 48, 90, 60, 71, 41, 40, 59, 69, 51, 62, 64, 64, 65, 59, 67, 59, 60, 67, 59, 73, 60, 69, 68, 53, 49, 77, 62, 62, 86, 58, 65, 62, 58, 57, 72, 47, 66, 62, 50, 67, 67, 51, 66, 63, 68, 116, 68, 62, 56, 74, 64, 62, 52, 55, 55, 85, 69, 75, 66, 63, 63, 58, 67, 60, 116, 62, 78, 70, 69, 84, 52, 75, 150, 63, 70, 57, 47, 61, 56, 75, 52, 71, 76, 57, 64, 62, 67, 78, 49, 66, 98, 66, 63, 73, 63, 53, 65, 60, 53, 69, 64, 76, 58, 65, 55, 101, 47, 60, 56, 54, 74, 63, 67, 61, 67, 80, 75, 76, 66, 71, 65, 82, 62, 64, 51, 66, 97, 61, 76, 73, 48, 66, 54, 58, 47, 37, 57, 54, 118, 62, 64, 69, 66, 52, 67, 64, 58, 60, 79, 86, 90, 48, 57, 64, 50, 51, 80, 57, 63, 56, 55, 58, 87, 68, 59, 46, 38, 86, 70, 87, 61, 50, 51, 66, 82, 72, 61, 68, 76, 62, 61, 79, 100, 71, 69, 57, 69, 65, 59, 59, 47, 63, 63, 131, 57, 59, 57, 69, 62, 66, 48, 100, 51, 58, 78, 92, 70, 64, 80, 76, 73, 72, 58, 72, 51, 68, 75, 60, 58, 65, 57, 57, 57, 61, 54, 58, 56, 56, 76, 53, 91, 72, 70, 58, 70, 50, 65, 57, 79, 70, 70, 65, 77, 51, 56, 67, 43, 61, 47, 64, 85, 57, 84, 63, 50, 53, 68, 73, 65, 66, 68, 67, 71, 74, 73, 60, 46, 57, 72, 67, 66, 47, 63, 91, 68, 62, 53, 57, 65, 48, 70, 73, 49, 105, 72, 68, 55, 51, 81, 47, 102, 62, 72, 62, 47, 53, 84, 67, 95, 64, 119, 73, 71, 69, 81, 54, 63, 56, 73, 45, 71, 59, 129, 78, 51, 54, 51, 97, 75, 61, 62, 71, 59, 52, 53, 60, 48, 83, 59, 66, 63, 69, 71, 48, 60, 61, 117, 48, 63, 56, 74, 78, 96, 61, 53, 59, 66, 63, 80, 72, 71, 46, 69, 51, 64, 74, 66, 60, 102, 86, 70, 63, 80, 96, 59, 69, 72, 54, 62, 101, 52, 52, 72, 62, 64, 88, 64, 64, 43, 94, 99, 61, 75, 46, 46, 59, 58, 66, 83, 75, 59, 62, 64, 57, 55, 38, 65, 51, 88, 54, 60, 57, 85, 73, 68, 83, 78, 62, 57, 62, 64, 52, 55, 68, 79, 58, 64, 64, 50, 44, 62, 53, 81, 89, 53, 69, 82, 52, 58, 57, 95, 65, 61, 82, 82, 69, 42, 62, 42, 101, 69, 56, 60, 71, 54, 55, 67, 59, 79, 62, 47, 65, 80, 79, 83, 79, 57, 56, 63, 81, 121, 76, 104, 64, 65, 78, 68, 56, 81, 59, 64, 71, 67, 61, 72, 54, 62, 68, 88, 85, 65, 68, 56, 64, 56, 52, 65, 52, 78, 81, 66, 66, 56, 37, 73, 56, 75, 61, 65, 78, 54, 67, 59, 98, 62, 107, 54, 62, 44, 51, 60, 64, 69, 93, 62, 72, 76, 53, 87, 91, 43, 52, 82, 72, 58, 59, 66, 64, 75, 72, 70, 52, 70, 98, 88, 59, 59, 55, 56, 65, 58, 58, 56, 70, 60, 92, 68, 61, 55, 56, 76, 65, 56, 64, 74, 66, 54, 72, 55, 79, 68, 52, 62, 74, 51, 94, 75, 58, 65, 58, 99, 51, 65, 56, 60, 64, 51, 40, 95, 59, 103, 60, 60, 60, 59, 58, 57, 55, 49, 63, 65, 54, 57, 49, 63, 66, 60, 51, 63, 54, 51, 79, 63, 57, 64, 67, 56, 64, 57, 56, 110, 51, 72, 77, 77, 92, 39, 73, 59, 59, 54, 60, 53, 61, 93, 52, 52, 65, 66, 68, 58, 85, 63, 83, 60, 71, 85, 64, 69, 63, 49, 75, 48, 76, 65, 59, 78, 48, 61, 53, 66, 83, 52, 52, 56, 50, 60, 70, 89, 71, 55, 61, 90, 57, 70, 58, 72, 57, 62, 59, 46, 67, 77, 54, 65, 72, 84, 56, 49, 90, 50, 45, 62, 63, 61, 60, 83, 83, 58, 64, 65, 47, 69, 75, 67, 75, 78, 61, 50, 73, 55, 72, 65, 51, 46, 76, 77, 43, 82, 53, 74, 69, 72, 58, 66, 76, 78, 54, 63, 57, 61, 60, 68, 77, 53, 60, 74, 80, 69, 51, 50, 53, 64, 48, 86, 76, 58, 50, 54, 69, 82, 64, 90, 58, 44, 59, 63, 54, 71, 64, 83, 68, 44, 70, 81, 92, 69, 89, 64, 68, 56, 72, 53, 63, 59, 67, 60, 76, 56, 56, 75, 71, 52, 55, 44, 50, 66, 53, 64, 78, 57, 58, 62, 65, 82, 60, 86, 73, 60, 86, 90, 76, 69, 41, 52, 78, 73, 109, 87, 55, 58, 58, 67, 62, 59, 100, 68, 66, 73, 73, 51, 89, 65, 68, 89, 73, 74, 67, 56, 63, 63, 58, 58, 52, 67, 55, 49, 46, 65, 106, 54, 80, 53, 72, 43, 65, 66, 63, 54, 59, 57, 68, 84, 53, 64, 56, 69, 63, 66, 58, 68, 63, 52, 55, 72, 66, 54, 52, 67, 63, 63, 58, 45, 55, 51, 55, 61, 66, 67, 50, 59, 82, 62, 52, 55, 64, 80, 49, 98, 60, 68, 63, 65, 53, 49, 69, 64, 50, 65, 64, 56, 60, 58, 67, 99, 58, 63, 60, 64, 61, 62, 59, 60, 68, 67, 78, 69, 65, 64, 48, 42, 65, 78, 75, 62, 67, 60, 64, 93, 58, 39, 74, 65, 64, 60, 55, 85, 28, 88, 56, 60, 67, 62, 65, 40, 73, 64, 56, 55, 66, 102, 66, 69, 93, 63, 56, 58, 72, 52, 53, 113, 68, 62, 53, 75, 65, 52, 78, 44, 57, 60, 60, 65, 62, 86, 70, 63, 64, 77, 70, 64, 47, 59, 68, 70, 80, 59, 64, 61, 67, 47, 64, 55, 78, 69, 47, 65, 102, 44, 60, 64, 83, 49, 85, 118, 63, 68, 64, 45, 63, 58, 80, 76, 59, 55, 55, 70, 70, 60, 81, 57, 59, 78, 54, 67, 76, 60, 82, 74, 81, 68, 65, 95, 75, 56, 81, 60, 60, 62, 62, 50, 80, 86, 54, 63, 69, 69, 72, 57, 58, 55, 63, 58, 76, 59, 100, 63, 47, 86, 81, 39, 67, 58, 52, 53, 51, 62, 67, 62, 54, 54, 49, 64, 69, 61, 54, 70, 56, 59, 87, 79, 59, 66, 56, 61, 108, 47, 64, 62, 55, 61, 57, 82, 63, 50, 48, 58, 69, 75, 61, 86, 75, 83, 79, 42, 81, 50, 62, 44, 38, 78, 64, 50, 61, 42, 54, 52, 70, 54, 87, 72, 66, 73, 73, 63, 56, 60, 84, 68, 60, 55, 62, 55, 67, 96, 57, 61, 50, 77, 121, 60, 78, 91, 67, 73, 69, 53, 48, 63, 75, 65, 49, 63, 64, 70, 53, 52, 67, 59, 62, 68, 55, 61, 52, 47, 74, 59, 65, 65, 52, 76, 56, 108, 59, 61, 61, 60, 65, 71, 76, 54, 85, 66, 55, 70, 74, 72, 83, 64, 67, 65, 79, 60, 64, 44, 42, 53, 77, 55, 59, 63, 92, 58, 87, 65, 54, 63, 74, 47, 56, 56, 81, 74, 49, 59, 90, 64, 47, 67, 76, 52, 54, 50, 46, 67, 51, 73, 119, 47, 53, 59, 63, 76, 67, 80, 73, 74, 69, 61, 64, 62, 60, 66, 71, 56, 47, 51, 59, 58, 86, 49, 67, 77, 60, 57, 55, 59, 64, 79, 56, 74, 67, 68, 43, 84, 90, 92, 65, 64, 52, 55, 71, 75, 52, 68, 56, 85, 73, 62, 48, 55, 51, 50, 63, 66, 56, 80, 56, 60, 59, 89, 65, 84, 53, 57, 55, 61, 67, 63, 67, 87, 62, 63, 55, 61, 71, 64, 66, 77, 50, 56, 76, 78, 78, 94, 60, 63, 64, 58, 82, 58, 60, 41, 77, 60, 64, 60, 63, 47, 83, 84, 72, 86, 59, 48, 79, 71, 71, 87, 65, 66, 62, 78, 71, 63, 62, 72, 65, 62, 64, 55, 85, 83, 50, 66, 77, 61, 54, 88, 59, 48, 64, 54, 56, 67, 93, 75, 58, 74, 55, 105, 52, 67, 60, 72, 58, 72, 74, 51, 59, 71, 81, 60, 60, 69, 67, 69, 70, 72, 66, 65, 57, 85, 63, 60, 54, 57, 82, 63, 42, 52, 66, 61, 58, 53, 63, 45, 70, 63, 42, 55, 63, 63, 72, 72, 57, 65, 85, 72, 64, 69, 60, 94, 63, 50, 69, 73, 60, 56, 45, 67, 47, 66, 64, 58, 71, 68, 68, 61, 84, 75, 70, 60, 65, 55, 51, 55, 69, 92, 54, 53, 54, 74, 95, 59, 62, 77, 106, 64, 82, 68, 58, 86, 54, 88, 50, 62, 64, 75, 91, 47, 90, 114, 51, 77, 49, 48, 59, 49, 57, 64, 44, 86, 69, 59, 59, 94, 52, 74, 65, 78, 67, 49, 61, 129, 60, 48, 77, 65, 78, 74, 54, 73, 69, 63, 66, 58, 70, 60, 66, 60, 80, 92, 56, 58, 61, 62, 92, 48, 59, 64, 62, 73, 67, 63, 67, 56, 93, 59, 71, 52, 60, 58, 88, 73, 84, 56, 119, 56, 128, 64, 58, 72, 60, 76, 66, 53, 42, 62, 73, 66, 77, 60, 52, 64, 60, 79, 63, 66, 66, 61, 67, 78, 78, 87, 57, 70, 45, 53, 52, 48, 61, 57, 61, 80, 58, 61, 66, 50, 69, 51, 62, 49, 78, 62, 74, 55, 58, 45, 84, 54, 44, 57, 64, 58, 52, 78, 78, 58, 85, 71, 62, 70, 74, 77, 83, 70, 56, 112, 62, 54, 62, 61, 42, 96, 65, 58, 83, 67, 55, 50, 93, 55, 47, 84, 48, 65, 75, 44, 55, 60, 62, 59, 62, 74, 47, 73, 88, 58, 60, 63, 46, 53, 70, 46, 59, 63, 64, 64, 99, 57, 75, 70, 50, 58, 59, 65, 77, 75, 62, 51, 63, 77, 62, 64, 60, 55, 67, 73, 82, 64, 51, 67, 98, 61, 59, 69, 94, 73, 51, 67, 78, 61, 79, 65, 79, 64, 77, 74, 56, 72, 57, 57, 66, 56, 65, 85, 67, 60, 65, 75, 46, 52, 60, 66, 63, 78, 67, 69, 63, 48, 62, 54, 63, 71, 60, 70, 72, 73, 52, 66, 81, 69, 53, 65, 61, 55, 67, 79, 63, 79, 62, 51, 47, 52, 56, 46, 52, 62, 59, 67, 71, 72, 80, 54, 85, 80, 73, 75, 58, 87, 53, 54, 57, 56, 71, 66, 79, 77, 81, 72, 46, 56, 57, 71, 64, 52, 89, 85, 74, 73, 55, 64, 77, 89, 60, 59, 77, 40, 54, 57, 60, 67, 72, 56, 66, 61, 42, 77, 74, 67, 72, 61, 45, 59, 64, 62, 63, 56, 48, 61, 57, 52, 62, 45, 88, 49, 63, 52, 56, 47, 53, 57, 56, 67, 66, 65, 62, 87, 51, 72, 63, 52, 60, 76, 52, 75, 54, 41, 56, 68, 49, 69, 57, 78, 72, 62, 51, 52, 89, 52, 88, 88, 42, 67, 73, 69, 59, 83, 67, 65, 64, 95, 66, 78, 63, 56, 62, 53, 73, 52, 69, 63, 93, 55, 106, 75, 62, 60, 52, 72, 65, 54, 36, 57, 51, 82, 46, 56, 81, 63, 51, 61, 75, 69, 62, 82, 60, 58, 62, 89, 61, 52, 57, 51, 75, 67, 63, 83, 45, 60, 51, 80, 59, 69, 54, 55, 66, 49, 56, 51, 55, 111, 59, 78, 65, 52, 89, 73, 65, 64, 76, 54, 50, 111, 75, 62, 52, 94, 55, 64, 64, 52, 45, 44, 57, 52, 56, 78, 63, 52, 92, 49, 60, 75, 49, 65, 58, 58, 53, 53, 54, 119, 50, 91, 54, 65, 54, 65, 76, 59, 77, 73, 63, 58, 56, 75, 56, 82, 73, 67, 84, 61, 53, 62, 73, 64, 78, 64, 60, 63, 65, 89, 71, 95, 79, 66, 55, 72, 59, 75, 71, 63, 65, 55, 72, 52, 70, 109, 53, 56, 57, 65, 54, 80, 50, 53, 53, 64, 92, 75, 65, 62, 61, 59, 51, 69, 61, 56, 64, 81, 80, 59, 61, 84, 66, 67, 56, 69, 64, 66, 66, 82, 71, 57, 58, 65, 51, 67, 76, 54, 53, 71, 83, 68, 56, 69, 69, 54, 70, 52, 42, 64, 66, 72, 71, 61, 56, 62, 71, 66, 60, 100, 62, 54, 72, 94, 49, 47, 70, 73, 54, 88, 63, 51, 69, 68, 85, 69, 83, 64, 60, 61, 58, 82, 59, 71, 53, 66, 65, 55, 60, 81, 69, 61, 64, 55, 73, 54, 54, 94, 58, 75, 59, 71, 55, 66, 64, 71, 124, 56, 57, 69, 66, 48, 63, 63, 49, 75, 67, 68, 67, 90, 65, 51, 82, 63, 51, 55, 61, 65, 44, 65, 56, 53, 58, 55, 80, 61, 76, 52, 61, 56, 62, 72, 56, 65, 51, 68, 48, 57, 69, 63, 93, 87, 76, 58, 58, 69, 82, 61, 68, 57, 88, 67, 66, 58, 68, 75, 62, 90, 69, 52, 58, 73, 55, 69, 62, 86, 59, 49, 56, 59, 63, 80, 54, 68, 45, 61, 62, 59, 55, 93, 52, 62, 67, 86, 56, 59, 109, 74, 48, 56, 70, 72, 66, 76, 73, 57, 59, 55, 81, 56, 64, 50, 82, 50, 58, 59, 57, 57, 75, 55, 66, 78, 74, 83, 45, 68, 52, 66, 58, 60, 56, 47, 79, 58, 54, 62, 57, 61, 61, 88, 49, 74, 62, 73, 63, 58, 77, 64, 164, 55, 51, 97, 68, 80, 66, 44, 75, 60, 62, 74, 65, 64, 67, 61, 71, 59, 66, 64, 53, 51, 75, 59, 50, 81, 56, 79, 51, 56, 88, 113, 69, 76, 68, 62, 48, 45, 58, 104, 53, 77, 60, 72, 82, 80, 63, 54, 71, 50, 72, 72, 53, 78, 82, 65, 74, 89, 50, 90, 74, 69, 77, 104, 68, 67, 51, 68, 59, 53, 46, 62, 49, 78, 49, 71, 71, 64, 61, 68, 86, 59, 51, 55, 58, 86, 80, 56, 81, 65, 68, 59, 62, 49, 44, 55, 61, 67, 69, 67, 60, 61, 91, 92, 57, 122, 58, 58, 44, 86, 72, 52, 55, 61, 68, 60, 59, 55, 64, 78, 74, 64, 80, 65, 66, 75, 54, 55, 63, 81, 58, 55, 92, 51, 81, 52, 63, 57, 69, 60, 65, 86, 47, 95, 55, 73, 60, 63, 63, 108, 84, 55, 52, 49, 60, 74, 70, 74, 56, 61, 79, 45, 61, 88, 50, 59, 59, 68, 42, 93, 66, 53, 57, 67, 58, 52, 66, 56, 59, 44, 70, 62, 80, 57, 57, 61, 77, 64, 59, 75, 79, 56, 54, 56, 60, 81, 58, 55, 67, 76, 67, 52, 53, 52, 56, 74, 59, 61, 63, 68, 77, 53, 72, 56, 55, 49, 55, 60, 65, 62, 51, 61, 61, 66, 64, 61, 105, 58, 69, 65, 59, 51, 78, 73, 54, 81, 64, 64, 62, 78, 56, 79, 65, 64, 54, 53, 48, 127, 55, 59, 63, 58, 62, 51, 67, 67, 67, 61, 57, 72, 54, 66, 61, 53, 51, 61, 80, 137, 58, 58, 61, 58, 63, 61, 56, 63, 52, 57, 60, 45, 68, 70, 67, 60, 52, 99, 54, 55, 60, 70, 62, 53, 63, 64, 67, 62, 61, 64, 55, 58, 56, 56, 91, 66, 63, 71, 54, 57, 62, 70, 61, 79, 92, 57, 63, 54, 93, 55, 52, 75, 75, 55, 73, 69, 71, 68, 66, 64, 61, 58, 55, 56, 59, 53, 57, 97, 66, 60, 66, 50, 58, 56, 56, 66, 60, 48, 58, 83, 63, 77, 67, 53, 56, 56, 91, 60, 72, 47, 65, 48, 75, 72, 72, 80, 92, 54, 63, 68, 56, 93, 62, 62, 64, 77, 54, 64, 97, 70, 48, 80, 58, 82, 66, 57, 58, 53, 67, 68, 68, 54, 57, 96, 49, 64, 54, 58, 54, 83, 57, 58, 53, 75, 64, 63, 59, 56, 69, 61, 65, 62, 63, 64, 61, 71, 66, 51, 75, 64, 61, 59, 75, 70, 114, 46, 70, 66, 71, 75, 59, 65, 66, 60, 76, 60, 63, 48, 56, 54, 63, 53, 72, 70, 55, 78, 60, 52, 92, 81, 59, 64, 66, 79, 66, 82, 86, 63, 67, 55, 55, 79, 58, 68, 56, 69, 87, 69, 55, 59, 65, 67, 59, 57, 59, 69, 56, 87, 67, 79, 58, 73, 55, 64, 75, 68, 57, 51, 70, 59, 63, 48, 67, 77, 62, 62, 75, 93, 70, 61, 49, 51, 61, 56, 67, 67, 47, 77, 71, 61, 46, 62, 66, 61, 80, 85, 76, 67, 53, 68, 77, 69, 57, 79, 62, 52, 68, 78, 67, 73, 73, 63, 68, 89, 62, 83, 64, 76, 58, 69, 50, 49, 48, 56, 61, 59, 59, 54, 66, 70, 63, 53, 77, 79, 56, 66, 51, 49, 58, 57, 52, 86, 54, 73, 63, 70, 64, 50, 73, 61, 57, 81, 62, 74, 71, 64, 60, 69, 67, 57, 62, 81, 64, 51, 50, 52, 64, 68, 57, 54, 89, 56, 69, 81, 57, 61, 64, 60, 68, 60, 65, 44, 43, 90, 115, 68, 64, 72, 66, 60, 78, 65, 60, 78, 68, 59, 63, 62, 59, 52, 66, 60, 64, 45, 56, 59, 61, 63, 61, 113, 66, 78, 57, 63, 56, 62, 79, 54, 88, 67, 50, 81, 67, 71, 64, 69, 65, 69, 72, 54, 62, 59, 51, 65, 61, 64, 65, 79, 63, 57, 98, 87, 66, 72, 61, 73, 66, 52, 67, 66, 53, 62, 55, 101, 72, 71, 72, 53, 62, 79, 53, 54, 63, 69, 72, 63, 62, 67, 51, 84, 53, 86, 85, 59, 73, 75, 99, 47, 51, 83, 62, 52, 67, 91, 59, 58, 62, 86, 65, 67, 59, 53, 62, 72, 58, 52, 79, 54, 57, 91, 64, 69, 63, 67, 69, 57, 63, 109, 59, 93, 76, 86, 72, 67, 65, 61, 65, 68, 48, 72, 78, 73, 53, 75, 49, 58, 75, 67, 59, 76, 64, 64, 58, 59, 54, 72, 61, 52, 82, 117, 41, 68, 64, 44, 62, 77, 43, 51, 80, 68, 58, 51, 62, 81, 74, 49, 65, 65, 55, 65, 100, 56, 66, 62, 76, 70, 67, 59, 67, 57, 62, 64, 64, 68, 76, 59, 99, 61, 52, 55, 77, 56, 81, 92, 48, 56, 72, 69, 54, 56, 64, 67, 78, 51, 70, 69, 83, 71, 99, 57, 67, 57, 54, 52, 81, 59, 60, 59, 76, 73, 59, 72, 73, 55, 100, 61, 85, 52, 56, 74, 84, 58, 67, 61, 65, 66, 69, 64, 57, 48, 58, 61, 54, 76, 67, 64, 70, 67, 63, 78, 56, 82, 69, 74, 66, 74, 66, 65, 53, 59, 54, 68, 60, 59, 51, 67, 50, 88, 88, 75, 60, 76, 68, 55, 56, 55, 52, 105, 59, 50, 55, 74, 52, 61, 63, 58, 71, 71, 59, 90, 75, 103, 52, 95, 60, 64, 65, 54, 56, 67, 73, 50, 69, 69, 72, 47, 59, 65, 57, 69, 110, 64, 53, 60, 53, 68, 63, 67, 66, 62, 56, 70, 51, 53, 53, 58, 79, 72, 102, 56, 80, 67, 67, 81, 72, 70, 53, 57, 67, 74, 63, 69, 70, 76, 51, 60, 68, 52, 84, 73, 61, 50, 72, 66, 61, 68, 53, 73, 76, 59, 67, 125, 69, 62, 103, 66, 56, 60, 57, 64, 57, 55, 35, 83, 71, 39, 58, 57, 44, 74, 84, 64, 89, 91, 68, 83, 59, 62, 67, 56, 82, 74, 56, 56, 56, 65, 59, 78, 58, 55, 62, 56, 63, 55, 53, 68, 53, 71, 83, 55, 59, 72, 67, 63, 57, 57, 134, 57, 64, 69, 82, 71, 74, 62, 61, 83, 68, 67, 47, 52, 63, 53, 67, 95, 67, 64, 79, 74, 83, 61, 75, 95, 50, 73, 62, 69, 61, 51, 74, 66, 60, 69, 75, 51, 67, 60, 61, 46, 75, 62, 54, 62, 66, 70, 68, 59, 59, 69, 72, 60, 46, 54, 59, 74, 57, 82, 72, 71, 63, 69, 47, 70, 55, 45, 63, 68, 78, 66, 65, 77, 57, 47, 70, 62, 59, 58, 69, 64, 60, 68, 76, 84, 50, 70, 54, 56, 77, 74, 72, 61, 76, 67, 87, 81, 55, 55, 79, 80, 75, 81, 62, 67, 70, 71, 61, 63, 75, 54, 54, 70, 51, 75, 64, 56, 59, 74, 73, 71, 62, 52, 92, 101, 69, 68, 90, 68, 65, 73, 56, 64, 71, 58, 68, 73, 70, 61, 64, 100, 54, 87, 48, 64, 70, 73, 74, 92, 65, 63, 77, 67, 82, 54, 59, 105, 62, 67, 69, 58, 67, 76, 57, 65, 62, 65, 77, 67, 110, 78, 65, 60, 68, 64, 79, 59, 75, 74, 51, 63, 86, 70, 53, 68, 107, 112, 67, 70, 49, 53, 63, 79, 67, 74, 83, 52, 59, 93, 66, 56, 65, 47, 64, 70, 74, 55, 75, 47, 69, 63, 106, 60, 47, 57, 56, 60, 59, 63, 68, 73, 62, 62, 61, 60, 52, 54, 68, 54, 87, 50, 76, 89, 54, 61, 56, 72, 60, 63, 85, 90, 68, 56, 59, 74, 44, 80, 61, 64, 52, 44, 70, 66, 58, 70, 46, 66, 54, 65, 49, 52, 54, 66, 59, 70, 64, 95, 54, 56, 62, 55, 66, 55, 59, 73, 50, 57, 45, 69, 70, 54, 57, 76, 62, 75, 65, 57, 65, 55, 83, 91, 57, 53, 49, 68, 55, 56, 51, 80, 83, 58, 51, 60, 70, 63, 70, 54, 61, 52, 107, 53, 132, 56, 52, 55, 75, 67, 61, 76, 99, 63, 82, 82, 53, 71, 57, 57, 51, 52, 59, 55, 58, 60, 66, 61, 56, 60, 70, 68, 72, 79, 56, 57, 56, 73, 61, 56, 58, 54, 64, 64, 50, 60, 59, 65, 75, 66, 58, 53, 94, 56, 74, 54, 53, 56, 58, 57, 52, 55, 35, 63, 86, 57, 63, 82, 65, 68, 66, 64, 61, 79, 64, 54, 73, 64, 63, 99, 57, 72, 77, 79, 59, 75, 56, 57, 64, 43, 67, 60, 58, 71, 49, 60, 60, 59, 82, 59, 47, 72, 69, 88, 48, 61, 62, 40, 85, 117, 63, 72, 51, 72, 73, 56, 61, 65, 60, 70, 61, 70, 63, 77, 52, 64, 60, 62, 61, 51, 69, 62, 84, 76, 70, 74, 62, 43, 95, 70, 58, 64, 92, 70, 62, 63, 83, 50, 52, 60, 93, 81, 61, 53, 47, 71, 79, 67, 58, 52, 79, 92, 80, 57, 66, 59, 59, 56, 69, 54, 47, 53, 64, 60, 85, 70, 64, 56, 73, 59, 59, 61, 77, 73, 62, 61, 79, 74, 76, 64, 79, 61, 75, 48, 58, 50, 98, 72, 63, 62, 79, 82, 63, 54, 58, 90, 56, 65, 85, 51, 50, 64, 55, 61, 73, 74, 65, 56, 49, 58, 60, 52, 68, 76, 65, 96, 54, 63, 88, 64, 61, 66, 88, 35, 73, 73, 62, 56, 60, 64, 76, 55, 77, 69, 65, 60, 73, 62, 54, 70, 61, 61, 64, 57, 41, 48, 68, 58, 66, 99, 55, 54, 63, 71, 59, 49, 59, 78, 63, 60, 66, 71, 56, 72, 56, 55, 62, 60, 60, 75, 63, 65, 51, 104, 64, 78, 49, 75, 52, 83, 81, 60, 73, 74, 62, 49, 92, 88, 58, 62, 76, 64, 56, 48, 100, 61, 74, 63, 53, 55, 62, 52, 53, 60, 73, 66, 58, 57, 67, 64, 91, 51, 59, 60, 58, 55, 63, 82, 63, 69, 53, 65, 59, 61, 64, 45, 66, 58, 57, 56, 61, 64, 58, 90, 77, 66, 60, 58, 54, 51, 62, 53, 65, 81, 80, 35, 69, 96, 53, 78, 76, 63, 62, 49, 67, 54, 70, 61, 52, 62, 55, 65, 67, 70, 51, 78, 55, 55, 63, 65, 71, 87, 63, 69, 55, 66, 57, 77, 58, 56, 46, 62, 60, 90, 65, 60, 68, 68, 48, 63, 60, 68, 49, 60, 62, 59, 118, 61, 57, 71, 63, 71, 59, 60, 56, 59, 57, 123, 51, 61, 68, 55, 62, 68, 65, 59, 72, 61, 57, 63, 68, 92, 76, 56, 64, 51, 58, 45, 73, 70, 42, 66, 83, 61, 57, 69, 70, 70, 77, 109, 58, 56, 65, 54, 59, 56, 70, 51, 63, 71, 54, 85, 76, 72, 70, 51, 55, 82, 62, 60, 71, 62, 59, 49, 71, 74, 74, 59, 47, 86, 63, 75, 72, 54, 51, 54, 89, 60, 58, 63, 59, 57, 74, 118, 74, 71, 51, 90, 64, 64, 73, 94, 65, 74, 47, 71, 94, 97, 113, 70, 55, 56, 54, 67, 74, 60, 87, 68, 74, 45, 64, 78, 74, 68, 63, 56, 57, 68, 73, 63, 70, 65, 90, 61, 67, 63, 67, 88, 88, 57, 54, 58, 49, 77, 92, 58, 69, 87, 69, 94, 59, 73, 68, 77, 61, 58, 74, 67, 73, 52, 52, 77, 59, 53, 66, 49, 70, 68, 68, 71, 59, 66, 66, 57, 68, 68, 67, 92, 53, 82, 93, 69, 56, 56, 51, 70, 63, 70, 46, 88, 55, 83, 76, 74, 67, 61, 58, 62, 61, 58, 71, 69, 59, 62, 56, 55, 63, 68, 49, 65, 82, 54, 43, 57, 65, 69, 80, 75, 54, 64, 61, 53, 67, 87, 66, 56, 72, 76, 92, 55, 85, 53, 71, 85, 68, 62, 55, 61, 55, 81, 71, 62, 52, 72, 70, 73, 78, 58, 54, 69, 66, 66, 82, 54, 71, 53, 57, 78, 47, 53, 63, 124, 60, 64, 96, 58, 54, 41, 61, 61, 48, 78, 47, 87, 75, 77, 51, 63, 61, 69, 84, 57, 76, 96, 52, 73, 72, 65, 74, 57, 90, 68, 65, 44, 64, 68, 47, 66, 56, 46, 67, 52, 59, 53, 54, 58, 62, 79, 80, 64, 66, 72, 55, 56, 66, 67, 133, 65, 58, 62, 46, 55, 49, 68, 67, 69, 61, 55, 57, 66, 73, 58, 61, 56, 65, 70, 64, 96, 87, 46, 62, 94, 63, 64, 65, 72, 74, 74, 63, 62, 61, 63, 78, 104, 70, 69, 47, 58, 56, 70, 56, 76, 64, 71, 67, 76, 58, 63, 64, 55, 61, 82, 57, 66, 58, 63, 64, 57, 52, 61, 54, 63, 61, 67, 54, 66, 77, 58, 61, 90, 45, 54, 73, 57, 69, 62, 54, 56, 71, 58, 48, 64, 58, 50, 60, 58, 63, 67, 76, 63, 77, 58, 66, 57, 61, 46, 59, 78, 51, 82, 62, 84, 65, 38, 72, 73, 78, 64, 92, 72, 55, 61, 64, 58, 63, 64, 65, 72, 70, 54, 92, 69, 62, 58, 65, 70, 76, 69, 71, 98, 86, 57, 60, 64, 71, 62, 73, 70, 62, 113, 48, 56, 62, 72, 68, 54, 79, 54, 60, 50, 67, 53, 66, 79, 62, 61, 59, 42, 52, 54, 60, 54, 66, 58, 69, 61, 89, 71, 62, 88, 66, 68, 46, 61, 62, 61, 62, 57, 58, 67, 60, 63, 110, 76, 63, 44, 63, 52, 59, 64, 59, 64, 56, 55, 79, 69, 56, 63, 68, 70, 67, 111, 57, 75, 82, 55, 87, 66, 102, 66, 55, 83, 71, 53, 67, 55, 53, 82, 59, 58, 65, 80, 38, 71, 66, 56, 117, 57, 89, 66, 57, 77, 72, 61, 62, 60, 69, 75, 59, 70, 63, 65, 60, 55, 57, 60, 61, 56, 68, 51, 64, 85, 52, 60, 68, 71, 62, 76, 58, 79, 65, 66, 86, 112, 72, 55, 64, 57, 72, 55, 60, 64, 58, 61, 56, 76, 63, 58, 45, 67, 62, 68, 64, 65, 69, 51, 82, 88, 59, 56, 67, 86, 77, 62, 72, 63, 56, 53, 78, 69, 87, 50, 58, 54, 52, 62, 110, 67, 125, 59, 62, 58, 88, 75, 57, 79, 59, 56, 63, 79, 52, 58, 55, 75, 68, 66, 63, 68, 53, 66, 64, 62, 68, 59, 55, 44, 76, 59, 48, 64, 52, 63, 57, 70, 51, 70, 76, 59, 67, 56, 67, 66, 80, 58, 70, 58, 117, 71, 81, 69, 62, 71, 73, 52, 74, 62, 70, 67, 75, 69, 50, 40, 55, 56, 75, 57, 58, 76, 70, 61, 62, 60, 62, 105, 60, 70, 77, 65, 69, 55, 56, 54, 66, 62, 53, 65, 46, 51, 42, 62, 45, 54, 80, 67, 77, 58, 79, 64, 64, 67, 70, 61, 81, 68, 70, 67, 65, 58, 111, 56, 53, 65, 65, 58, 66, 64, 50, 86, 51, 63, 83, 63, 73, 55, 65, 57, 52, 80, 67, 51, 64, 59, 101, 63, 62, 54, 84, 53, 62, 75, 90, 69, 63, 76, 71, 40, 74, 62, 63, 67, 58, 59, 52, 61, 98, 93, 64, 51, 84, 53, 80, 70, 72, 79, 70, 65, 71, 64, 71, 42, 71, 61, 50, 54, 67, 50, 75, 55, 75, 38, 77, 41, 51, 63, 68, 94, 80, 58, 52, 50, 84, 95, 70, 81, 53, 65, 64, 76, 53, 59, 75, 86, 70, 45, 58, 73, 57, 74, 73, 65, 73, 61, 65, 86, 70, 51, 57, 67, 92, 59, 68, 57, 85, 61, 57, 63, 67, 57, 87, 60, 69, 62, 73, 64, 68, 56, 62, 85, 83, 80, 60, 73, 70, 83, 56, 77, 60, 56, 60, 52, 69, 73, 75, 74, 74, 84, 57, 74, 50, 65, 49, 64, 54, 74, 68, 47, 57, 55, 64, 52, 52, 56, 71, 69, 92, 61, 41, 98, 59, 83, 52, 51, 65, 69, 39, 67, 67, 99, 61, 57, 84, 58, 71, 62, 60, 52, 46, 61, 115, 58, 55, 68, 79, 63, 68, 60, 57, 52, 63, 74, 87, 83, 55, 55, 63, 61, 71, 69, 73, 58, 65, 72, 79, 55, 90, 64, 75, 75, 62, 60, 76, 59, 63, 69, 79, 53, 55, 73, 52, 63, 75, 56, 55, 58, 49, 64, 67, 53, 59, 64, 77, 81, 47, 81, 86, 65, 63, 51, 54, 53, 60, 45, 47, 95, 64, 59, 62, 78, 58, 62, 58, 78, 56, 72, 81, 98, 88, 73, 65, 48, 64, 47, 45, 78, 55, 56, 50, 87, 81, 70, 53, 70, 63, 56, 74, 62, 54, 57, 61, 37, 90, 67, 82, 61, 67, 64, 50, 69, 90, 69, 72, 74, 60, 68, 55, 42, 59, 64, 78, 46, 65, 65, 55, 66, 70, 83, 62, 55, 58, 29, 63, 64, 69, 62, 71, 68, 73, 57, 62, 75, 58, 60, 59, 113, 64, 80, 60, 62, 57, 70, 51, 55, 60, 73, 60, 51, 70, 88, 63, 81, 59, 52, 59, 78, 61, 56, 67, 75, 83, 57, 53, 58, 72, 78, 40, 56, 71, 49, 64, 42, 64, 80, 59, 76, 63, 68, 71, 83, 60, 63, 57, 110, 67, 61, 60, 56, 74, 51, 76, 52, 60, 55, 104, 57, 56, 81, 65, 58, 56, 60, 63, 44, 44, 66, 59, 74, 100, 67, 57, 51, 54, 48, 52, 73, 72, 68, 78, 63, 64, 88, 68, 75, 65, 65, 78, 59, 69, 81, 56, 66, 84, 73, 73, 62, 38, 74, 61, 73, 62, 49, 80, 64, 85, 49, 67, 71, 70, 65, 62, 59, 55, 48, 81, 49, 67, 64, 58, 65, 76, 75, 59, 75, 75, 78, 53, 82, 72, 60, 69, 60, 60, 58, 62, 83, 74, 100, 58, 78, 73, 88, 55, 60, 79, 74, 60, 47, 77, 63, 60, 89, 44, 48, 62, 85, 67, 73, 52, 62, 63, 54, 59, 61, 65, 67, 60, 66, 52, 75, 68, 71, 63, 65, 73, 67, 72, 79, 65, 87, 47, 64, 75, 65, 61, 81, 64, 72, 58, 64, 75, 52, 87, 58, 59, 58, 72, 57, 58, 58, 69, 60, 51, 72, 100, 60, 60, 94, 83, 57, 110, 80, 63, 53, 50, 95, 41, 54, 55, 83, 67, 59, 67, 62, 77, 77, 61, 61, 86, 96, 110, 83, 52, 58, 68, 62, 92, 83, 73, 58, 61, 68, 49, 55, 59, 38, 57, 79, 55, 62, 66, 85, 59, 53, 50, 52, 52, 67, 56, 61, 51, 46, 114, 55, 80, 46, 67, 74, 72, 60, 57, 68, 44, 60, 74, 60, 81, 64, 75, 68, 43, 53, 62, 75, 91, 70, 87, 70, 65, 57, 78, 52, 76, 72, 91, 56, 54, 59, 58, 53, 73, 70, 62, 58, 56, 63, 79, 64, 58, 68, 77, 80, 49, 58, 74, 56, 57, 65, 63, 57, 52, 56, 51, 47, 65, 46, 52, 50, 63, 57, 57, 60, 53, 61, 64, 60, 56, 60, 57, 71, 67, 68, 59, 69, 67, 84, 46, 78, 55, 62, 55, 60, 100, 63, 48, 57, 94, 58, 77, 64, 70, 62, 81, 60, 82, 87, 66, 76, 55, 62, 112, 69, 65, 59, 56, 76, 67, 111, 59, 59, 52, 70, 89, 52, 54, 50, 63, 69, 55, 52, 66, 70, 71, 73, 56, 54, 64, 89, 68, 81, 57, 66, 99, 69, 50, 73, 64, 65, 67, 61, 92, 50, 89, 62, 78, 45, 50, 49, 55, 100, 71, 63, 76, 49, 62, 50, 47, 45, 55, 50, 69, 75, 118, 68, 58, 53, 94, 61, 45, 65, 93, 68, 74, 59, 63, 40, 76, 60, 85, 88, 87, 75, 62, 48, 53, 66, 67, 68, 54, 47, 73, 70, 59, 50, 54, 56, 60, 77, 55, 60, 51, 60, 60, 69, 122, 65, 71, 62, 54, 59, 61, 49, 55, 95, 52, 59, 54, 64, 97, 70, 61, 51, 85, 56, 45, 73, 56, 53, 57, 90, 83, 112, 56, 64, 63, 55, 49, 95, 75, 48, 86, 50, 67, 55, 74, 59, 73, 87, 62, 61, 57, 64, 82, 57, 63, 70, 67, 61, 50, 105, 40, 61, 84, 62, 67, 65, 68, 74, 67, 65, 56, 83, 74, 38, 68, 65, 56, 101, 63, 46, 68, 49, 65, 73, 51, 50, 43, 62, 63, 67, 61, 58, 56, 58, 66, 51, 46, 49, 56, 83, 55, 57, 81, 63, 116, 70, 73, 55, 70, 61, 54, 90, 68, 50, 66, 88, 82, 60, 80, 59, 65, 69, 51, 50, 46, 53, 47, 75, 70, 59, 64, 72, 59, 67, 73, 68, 56, 68, 72, 46, 48, 63, 84, 54, 50, 56, 115, 63, 53, 68, 87, 74, 99, 58, 83, 64, 71, 65, 65, 54, 64, 67, 48, 67, 94, 53, 51, 62, 69, 61, 84, 52, 90, 79, 73, 51, 58, 68, 60, 85, 60, 65, 52, 55, 44, 60, 53, 49, 123, 58, 66, 72, 70, 64, 42, 54, 57, 57, 67, 63, 69, 72, 77, 67, 67, 62, 77, 56, 68, 93, 55, 71, 61, 61, 63, 62, 51, 68, 41, 63, 59, 55, 68, 72, 62, 47, 68, 64, 60, 79, 46, 65, 62, 66, 63, 60, 75, 94, 91, 69, 52, 56, 74, 78, 58, 61, 55, 47, 61, 48, 88, 84, 45, 61, 50, 63, 47, 64, 54, 54, 65, 68, 75, 78, 66, 51, 54, 60, 66, 67, 71, 53, 70, 37, 71, 100, 75, 67, 69, 58, 68, 44, 58, 54, 40, 61, 98, 89, 91, 64, 117, 76, 72, 57, 61, 60, 83, 61, 77, 59, 42, 64, 62, 59, 108, 45, 55, 73, 69, 48, 65, 63, 62, 52, 68, 71, 66, 67, 83, 52, 66, 51, 100, 62, 49, 108, 78, 65, 57, 54, 59, 63, 73, 73, 69, 53, 56, 47, 58, 76, 62, 50, 70, 62, 45, 83, 69, 39, 69, 79, 82, 66, 88, 81, 50, 64, 71, 67, 60, 92, 63, 68, 56, 70, 53, 64, 59, 52, 58, 61, 64, 49, 52, 66, 50, 49, 63, 57, 65, 72, 58, 55, 54, 83, 62, 62, 57, 80, 69, 42, 90, 84, 73, 52, 59, 65, 92, 76, 81, 52, 61, 67, 48, 66, 47, 66, 67, 91, 62, 58, 76, 61, 57, 64, 63, 64, 65, 57, 58, 80, 89, 77, 60, 60, 65, 54, 52, 58, 75, 66, 48, 77, 64, 62, 60, 55, 48, 49, 61, 43, 72, 60, 69, 53, 66, 68, 82, 49, 76, 64, 87, 62, 67, 58, 58, 48, 76, 72, 54, 67, 64, 94, 60, 62, 65, 71, 65, 43, 57, 87, 66, 64, 43, 57, 78, 58, 86, 49, 68, 63, 64, 67, 61, 67, 58, 65, 51, 51, 73, 70, 60, 67, 67, 59, 65, 60, 59, 55, 67, 73, 66, 54, 59, 61, 62, 93, 68, 49, 76, 60, 53, 62, 61, 69, 47, 90, 49, 135, 56, 69, 56, 64, 67, 63, 82, 66, 57, 51, 57, 60, 56, 95, 51, 53, 45, 91, 79, 74, 61, 78, 83, 72, 60, 66, 58, 66, 67, 61, 51, 125, 61, 61, 73, 32, 56, 58, 80, 70, 73, 64, 55, 82, 59, 49, 87, 60, 87, 66, 52, 67, 87, 55, 52, 41, 71, 61, 59, 58, 73, 83, 64, 66, 64, 54, 61, 78, 72, 57, 65, 95, 76, 56, 48, 77, 63, 46, 53, 47, 60, 68, 65, 73, 81, 74, 76, 66, 66, 67, 101, 63, 68, 72, 51, 76, 80, 86, 60, 57, 69, 76, 71, 83, 71, 66, 71, 54, 66, 58, 45, 64, 70, 64, 67, 60, 79, 77, 73, 73, 55, 50, 66, 56, 68, 74, 84, 65, 68, 45, 66, 71, 91, 70, 64, 59, 58, 57, 78, 55, 60, 65, 70, 50, 68, 53, 64, 59, 74, 59, 71, 59, 90, 54, 67, 45, 82, 71, 62, 58, 76, 52, 58, 75, 68, 61, 76, 70, 56, 73, 52, 87, 52, 78, 65, 104, 68, 75, 51, 61, 66, 68, 74, 67, 99, 88, 48, 81, 64, 62, 61, 63, 93, 95, 88, 68, 71, 72, 102, 84, 54, 85, 58, 51, 60, 67, 58, 56, 70, 52, 75, 60, 71, 59, 103, 76, 50, 73, 87, 75, 60, 71, 67, 66, 67, 62, 75, 42, 61, 67, 59, 103, 92, 62, 85, 69, 79, 60, 82, 55, 61, 60, 66, 150, 70, 75, 79, 72, 58, 46, 66, 47, 92, 78, 69, 79, 56, 67, 56, 64, 72, 67, 56, 81, 78, 84, 60, 65, 90, 55, 63, 65, 93, 80, 66, 68, 63, 62, 59, 58, 60, 90, 89, 58, 42, 62, 52, 55, 49, 89, 77, 37, 68, 60, 54, 56, 68, 64, 126, 56, 60, 63, 59, 65, 79, 68, 64, 66, 67, 93, 72, 54, 56, 66, 57, 73, 46, 79, 58, 88, 77, 40, 56, 92, 56, 60, 66, 67, 64, 56, 58, 56, 78, 56, 45, 116, 57, 117, 48, 67, 73, 49, 57, 73, 48, 58, 60, 42, 67, 69, 59, 59, 69, 58, 63, 66, 74, 91, 67, 64, 49, 80, 39, 39, 70, 69, 73, 61, 71, 73, 60, 86, 56, 67, 56, 62, 67, 55, 74, 64, 63, 60, 83, 78, 72, 46, 66, 65, 76, 69, 60, 55, 52, 65, 41, 51, 54, 68, 56, 62, 48, 79, 56, 82, 65, 54, 78, 45, 52, 70, 71, 58, 65, 82, 69, 62, 59, 79, 60, 52, 73, 64, 90, 74, 58, 64, 49, 91, 72, 92, 75, 60, 50, 56, 66, 55, 63, 49, 68, 72, 42, 114, 63, 64, 56, 76, 80, 80, 59, 41, 70, 60, 65, 54, 58, 80, 47, 54, 72, 70, 56, 63, 61, 57, 57, 75, 86, 64, 80, 75, 70, 65, 59, 58, 79, 63, 67, 49, 89, 91, 109, 51, 65, 81, 74, 89, 65, 57, 76, 51, 78, 69, 56, 64, 82, 58, 58, 61, 55, 54, 52, 29, 60, 91, 76, 58, 82, 72, 113, 52, 105, 62, 57, 74, 63, 68, 75, 56, 81, 59, 51, 65, 54, 66, 74, 49, 82, 72, 70, 59, 101, 80, 60, 58, 55, 70, 60, 42, 46, 99, 49, 83, 71, 59, 67, 84, 54, 71, 58, 59, 62, 59, 65, 68, 49, 67, 52, 116, 75, 74, 58, 88, 51, 66, 80, 129, 43, 45, 67, 63, 68, 60, 60, 52, 56, 68, 66, 90, 70, 73, 42, 46, 51, 68, 69, 52, 73, 49, 85, 62, 87, 53, 88, 63, 65, 75, 45, 74, 42, 55, 87, 59, 88, 66, 81, 66, 61, 52, 125, 67, 103, 64, 68, 76, 68, 62, 59, 69, 88, 60, 66, 74, 52, 77, 53, 57, 61, 45, 57, 62, 63, 73, 48, 80, 112, 43, 76, 59, 83, 50, 65, 72, 65, 66, 50, 71, 43, 71, 66, 76, 60, 59, 68, 56, 59, 65, 77, 75, 72, 62, 82, 64, 53, 80, 61, 77, 61, 93, 53, 76, 75, 61, 62, 44, 45, 67, 78, 64, 50, 71, 70, 50, 49, 58, 53, 99, 58, 55, 62, 61, 51, 43, 55, 53, 66, 70, 55, 66, 53, 102, 73, 67, 56, 60, 56, 63, 68, 70, 62, 70, 69, 44, 67, 56, 76, 84, 56, 65, 63, 81, 102, 62, 60, 51, 57, 52, 54, 61, 50, 94, 48, 70, 73, 56, 57, 52, 50, 80, 61, 85, 76, 71, 63, 64, 75, 68, 49, 82, 72, 43, 54, 51, 65, 63, 75, 46, 91, 59, 89, 56, 52, 56, 83, 63, 71, 52, 54, 77, 73, 59, 93, 45, 49, 78, 82, 49, 52, 87, 86, 77, 90, 94, 53, 52, 47, 65, 59, 57, 71, 60, 68, 69, 71, 64, 74, 49, 58, 54, 70, 75, 48, 60, 70, 67, 76, 77, 79, 55, 72, 62, 66, 61, 83, 75, 75, 75, 53, 71, 55, 69, 57, 96, 89, 82, 68, 75, 80, 69, 71, 73, 80, 79, 71, 46, 58, 67, 55, 49, 90, 52, 95, 63, 52, 73, 51, 62, 69, 78, 72, 52, 71, 63, 62, 47, 52, 77, 58, 72, 47, 70, 63, 60, 77, 79, 64, 50, 64, 58, 87, 72, 95, 72, 72, 47, 68, 66, 49, 47, 42, 53, 64, 56, 61, 66, 64, 62, 83, 62, 49, 105, 65, 95, 55, 48, 38, 92, 41, 46, 76, 87, 72, 63, 90, 65, 53, 56, 54, 60, 57, 74, 92, 56, 56, 67, 58, 65, 73, 59, 56, 43, 67, 84, 57, 67, 56, 80, 48, 54, 63, 66, 72, 59, 48, 56, 93, 40, 60, 67, 56, 38, 51, 82, 72, 57, 119, 68, 70, 61, 63, 78, 64, 43, 55, 67, 61, 55, 78, 44, 46, 83, 52, 78, 66, 75, 59, 63, 76, 56, 59, 76, 50, 48, 82, 65, 65, 61, 63, 59, 50, 51, 78, 49, 66, 58, 83, 84, 84, 115, 79, 52, 45, 97, 73, 54, 45, 46, 46, 67, 42, 72, 71, 57, 58, 67, 80, 67, 65, 56, 69, 82, 60, 54, 78, 57, 70, 67, 77, 55, 69, 69, 95, 43, 75, 109, 68, 81, 54, 63, 80, 54, 56, 62, 85, 70, 62, 79, 79, 88, 67, 53, 53, 68, 56, 50, 47, 77, 47, 68, 65, 71, 81, 70, 116, 54, 51, 70, 73, 71, 57, 62, 66, 68, 81, 53, 65, 44, 50, 51, 64, 70, 63, 54, 83, 70, 60, 69, 77, 57, 47, 53, 83, 78, 70, 56, 58, 69, 84, 56, 84, 65, 63, 71, 77, 83, 53, 91, 91, 51, 58, 106, 81, 60, 99, 74, 71, 67, 62, 61, 62, 67, 74, 50, 73, 55, 102, 52, 72, 77, 61, 58, 52, 58, 82, 91, 76, 63, 84, 80, 98, 46, 76, 52, 54, 65, 66, 57, 42, 51, 63, 54, 69, 83, 67, 88, 66, 55, 84, 66, 67, 51, 76, 58, 65, 72, 57, 56, 77, 66, 55, 74, 61, 62, 56, 60, 41, 75, 67, 74, 55, 67, 52, 62, 56, 63, 96, 71, 65, 60, 56, 55, 95, 99, 52, 75, 62, 53, 63, 73, 57, 53, 76, 72, 66, 81, 77, 78, 48, 60, 77, 43, 57, 109, 67, 57, 47, 90, 66, 54, 74, 72, 54, 67, 60, 55, 61, 88, 74, 80, 94, 56, 69, 57, 65, 66, 55, 56, 69, 46, 57, 80, 62, 58, 65, 61, 74, 48, 55, 63, 64, 95, 95, 62, 76, 66, 67, 47, 57, 49, 54, 81, 84, 58, 57, 49, 63, 89, 74, 55, 73, 65, 63, 62, 69, 61, 45, 69, 53, 96, 65, 50, 79, 57, 61, 64, 55, 57, 55, 73, 67, 45, 71, 58, 57, 54, 86, 77, 96, 58, 84, 60, 88, 70, 63, 58, 81, 45, 69, 76, 82, 60, 63, 62, 69, 60, 58, 63, 67, 106, 45, 65, 62, 53, 48, 66, 69, 51, 63, 81, 67, 46, 63, 57, 136, 54, 63, 88, 57, 61, 68, 72, 62, 64, 58, 79, 70, 54, 68, 48, 66, 77, 54, 49, 59, 88, 81, 52, 70, 76, 48, 70, 74, 47, 71, 54, 55, 62, 45, 64, 51, 52, 53, 83, 62, 79, 58, 53, 77, 59, 94, 68, 52, 87, 56, 70, 54, 47, 57, 56, 73, 66, 55, 65, 58, 59, 61, 69, 53, 51, 52, 48, 50, 56, 86, 65, 85, 82, 72, 73, 72, 56, 69, 55, 70, 67, 65, 73, 61, 71, 61, 62, 59, 66, 90, 87, 77, 70, 72, 83, 68, 90, 61, 62, 58, 57, 62, 77, 74, 65, 66, 58, 74, 48, 71, 82, 61, 48, 75, 47, 61, 64, 64, 54, 64, 54, 49, 55, 77, 98, 69, 66, 82, 71, 63, 80, 47, 81, 64, 86, 62, 77, 69, 61, 76, 86, 65, 89, 54, 86, 65, 73, 57, 60, 54, 56, 54, 61, 86, 53, 65, 58, 58, 53, 80, 50, 65, 65, 62, 60, 67, 44, 91, 93, 86, 70, 65, 57, 71, 64, 70, 56, 62, 67, 65, 50, 67, 66, 58, 70, 67, 91, 81, 51, 63, 56, 62, 68, 62, 83, 37, 59, 76, 64, 54, 57, 48, 45, 56, 66, 50, 57, 75, 60, 64, 58, 102, 58, 66, 55, 56, 59, 69, 68, 57, 51, 50, 70, 74, 72, 63, 49, 62, 55, 82, 64, 62, 85, 61, 61, 89, 91, 60, 50, 58, 53, 72, 71, 63, 72, 72, 55, 79, 71, 54, 72, 59, 51, 80, 62, 51, 66, 61, 107, 74, 65, 47, 77, 69, 52, 67, 104, 45, 99, 64, 48, 73, 59, 75, 60, 69, 58, 66, 60, 66, 60, 64, 54, 52, 64, 53, 71, 53, 54, 60, 58, 59, 63, 41, 70, 62, 65, 51, 68, 66, 53, 54, 61, 50, 57, 58, 46, 81, 60, 101, 67, 129, 61, 63, 58, 69, 67, 60, 63, 116, 57, 66, 83, 67, 64, 61, 63, 39, 64, 58, 61, 56, 76, 47, 66, 55, 57, 69, 76, 89, 57, 67, 63, 81, 51, 71, 72, 41, 67, 70, 65, 77, 64, 42, 60, 68, 93, 77, 59, 66, 56, 76, 56, 62, 64, 74, 61, 52, 52, 50, 80, 100, 55, 64, 50, 66, 83, 67, 101, 61, 75, 59, 65, 53, 79, 64, 108, 74, 41, 58, 48, 66, 70, 65, 54, 62, 62, 67, 67, 78, 62, 87, 55, 69, 56, 91, 68, 69, 76, 64, 65, 91, 66, 41, 60, 59, 95, 62, 74, 63, 67, 73, 48, 61, 68, 68, 85, 70, 63, 77, 86, 48, 58, 59, 63, 65, 63, 52, 46, 76, 60, 100, 75, 59, 63, 80, 55, 71, 47, 65, 78, 61, 74, 61, 48, 39, 95, 83, 69, 59, 51, 66, 58, 60, 59, 39, 52, 78, 87, 82, 51, 53, 63, 79, 59, 58, 57, 63, 59, 66, 58, 81, 75, 49, 64, 63, 62, 59, 68, 54, 56, 55, 107, 57, 59, 84, 62, 54, 65, 67, 51, 60, 60, 66, 42, 50, 65, 70, 47, 48, 61, 88, 65, 66, 58, 61, 54, 48, 101, 66, 77, 71, 83, 49, 88, 43, 47, 63, 59, 77, 79, 114, 62, 63, 67, 56, 68, 71, 60, 83, 64, 65, 57, 66, 49, 56, 78, 69, 75, 76, 91, 60, 57, 60, 58, 52, 74, 65, 81, 80, 61, 51, 64, 104, 70, 64, 85, 62, 61, 56, 76, 49, 57, 66, 69, 56, 62, 80, 49, 48, 57, 60, 69, 51, 67, 64, 105, 71, 60, 63, 79, 57, 88, 60, 57, 62, 76, 38, 56, 67, 60, 85, 62, 97, 94, 58, 82, 47, 65, 53, 81, 107, 63, 49, 68, 69, 56, 50, 57, 56, 84, 73, 53, 64, 47, 58, 69, 68, 53, 69, 73, 62, 57, 65, 77, 67, 60, 86, 98, 61, 59, 56, 75, 60, 68, 58, 57, 72, 57, 53, 48, 71, 61, 64, 67, 50, 57, 91, 60, 63, 52, 62, 77, 61, 61, 50, 76, 65, 61, 67, 65, 61, 61, 59, 60, 58, 57, 52, 59, 64, 82, 65, 61, 69, 95, 54, 67, 58, 43, 56, 61, 52, 67, 61, 52, 61, 56, 68, 67, 55, 88, 70, 74, 62, 61, 61, 61, 56, 66, 74, 79, 65, 46, 64, 62, 76, 102, 82, 55, 77, 60, 55, 75, 72, 88, 100, 88, 81, 68, 79, 71, 69, 67, 88, 61, 70, 49, 65, 52, 86, 55, 55, 79, 56, 59, 66, 79, 61, 65, 45, 75, 61, 63, 68, 59, 66, 55, 75, 94, 56, 51, 56, 79, 79, 51, 57, 76, 63, 48, 54, 75, 82, 54, 81, 52, 62, 55, 94, 48, 51, 73, 83, 45, 61, 64, 55, 87, 63, 60, 59, 62, 65, 66, 69, 53, 68, 70, 53, 58, 65, 52, 72, 58, 73, 71, 67, 65, 80, 62, 60, 59, 61, 59, 83, 56, 73, 60, 54, 70, 62, 53, 80, 58, 62, 67, 88, 74, 69, 63, 52, 62, 72, 74, 84, 97, 70, 91, 53, 70, 55, 55, 83, 69, 64, 101, 65, 62, 80, 63, 87, 64, 59, 57, 81, 57, 76, 58, 67, 93, 41, 63, 58, 54, 68, 85, 68, 74, 61, 59, 91, 69, 57, 56, 59, 60, 91, 64, 64, 62, 57, 65, 70, 53, 54, 63, 66, 44, 62, 70, 69, 65, 44, 56, 45, 73, 63, 65, 89, 60, 69, 84, 59, 114, 63, 78, 61, 68, 66, 64, 80, 66, 61, 88, 71, 64, 59, 44, 42, 60, 53, 67, 52, 64, 54, 89, 59, 72, 73, 61, 69, 53, 81, 61, 60, 55, 97, 61, 69, 61, 54, 86, 72, 69, 56, 63, 58, 55, 58, 80, 57, 76, 61, 77, 69, 62, 70, 56, 58, 56, 35, 66, 58, 46, 74, 61, 97, 55, 59, 99, 62, 68, 78, 80, 53, 85, 67, 55, 70, 50, 103, 78, 66, 57, 54, 68, 84, 49, 62, 59, 66, 54, 77, 75, 52, 66, 60, 72, 91, 91, 59, 58, 73, 62, 55, 85, 66, 51, 72, 71, 61, 62, 53, 51, 72, 59, 62, 61, 66, 72, 50, 50, 53, 80, 139, 70, 60, 59, 61, 63, 66, 60, 56, 94, 65, 62, 61, 65, 76, 51, 78, 83, 56, 55, 60, 68, 64, 50, 83, 90, 68, 58, 73, 71, 77, 53, 69, 54, 63, 45, 68, 86, 80, 49, 61, 58, 79, 70, 83, 56, 69, 52, 95, 72, 54, 67, 58, 48, 63, 70, 68, 62, 72, 82, 64, 67, 75, 67, 54, 81, 64, 59, 62, 77, 49, 60, 69, 64, 62, 60, 52, 69, 57, 57, 66, 60, 71, 52, 101, 98, 64, 48, 71, 79, 99, 65, 65, 62, 58, 60, 69, 113, 51, 86, 60, 81, 40, 72, 65, 68, 58, 55, 79, 57, 65, 48, 65, 65, 93, 84, 62, 72, 51, 65, 96, 63, 62, 52, 72, 77, 60, 59, 74, 60, 65, 70, 58, 59, 62, 78, 51, 69, 73, 62, 61, 72, 52, 89, 61, 71, 63, 60, 69, 66, 65, 53, 68, 70, 69, 65, 65, 65, 62, 62, 82, 65, 52, 54, 66, 60, 65, 72, 63, 69, 96, 81, 65, 56, 61, 63, 74, 67, 62, 57, 57, 53, 87, 59, 59, 50, 79, 44, 68, 70, 57, 74, 38, 70, 73, 61, 78, 44, 54, 60, 67, 69, 59, 61, 50, 44, 54, 72, 69, 71, 57, 65, 79, 48, 52, 59, 62, 57, 74, 75, 62, 59, 53, 74, 62, 60, 55, 60, 51, 60, 79, 74, 59, 53, 52, 66, 48, 57, 54, 76, 97, 100, 53, 84, 53, 75, 67, 55, 81, 81, 56, 80, 66, 56, 70, 54, 80, 61, 58, 85, 71, 51, 60, 67, 59, 61, 68, 111, 63, 49, 48, 57, 70, 64, 56, 70, 54, 54, 66, 47, 67, 50, 47, 67, 52, 109, 97, 53, 63, 63, 83, 69, 71, 87, 76, 66, 68, 67, 65, 84, 128, 62, 83, 56, 54, 65, 64, 31, 55, 67, 67, 60, 106, 50, 66, 56, 55, 73, 65, 67, 117, 66, 66, 77, 67, 73, 65, 50, 60, 93, 60, 52, 81, 69, 65, 45, 72, 52, 60, 91, 79, 66, 61, 60, 58, 89, 76, 72, 83, 55, 48, 77, 52, 73, 59, 54, 56, 91, 77, 58, 62, 50, 76, 53, 60, 60, 65, 67, 63, 107, 70, 49, 56, 64, 60, 97, 48, 65, 58, 80, 81, 57, 41, 59, 63, 60, 66, 62, 102, 69, 55, 68, 55, 63, 48, 65, 55, 70, 58, 60, 65, 65, 59, 72, 55, 63, 58, 78, 67, 67, 61, 57, 56, 54, 86, 44, 46, 98, 63, 71, 56, 50, 51, 57, 65, 55, 57, 66, 61, 77, 73, 52, 56, 67, 55, 53, 51, 74, 78, 72, 69, 76, 55, 92, 53, 49, 114, 59, 55, 64, 69, 52, 59, 81, 66, 54, 63, 74, 107, 85, 61, 78, 71, 68, 90, 72, 70, 55, 67, 58, 63, 76, 54, 58, 72, 92, 47, 72, 49, 45, 55, 70, 62, 75, 75, 50, 91, 59, 71, 64, 68, 68, 70, 69, 65, 67, 67, 61, 68, 56, 69, 107, 54, 52, 69, 59, 69, 81, 72, 87, 54, 70, 55, 63, 66, 48, 94, 55, 66, 70, 57, 50, 58, 83, 52, 73, 71, 44, 80, 53, 66, 63, 48, 95, 72, 69, 82, 52, 79, 55, 56, 74, 55, 51, 74, 59, 65, 81, 76, 60, 65, 51, 54, 59, 54, 67, 67, 60, 64, 55, 62, 83, 73, 65, 73, 61, 71, 101, 64, 64, 58, 65, 42, 64, 69, 69, 51, 62, 69, 58, 72, 63, 61, 54, 51, 66, 56, 99, 66, 53, 64, 100, 57, 56, 84, 65, 53, 88, 84, 56, 79, 52, 60, 52, 50, 54, 62, 63, 56, 57, 60, 76, 93, 68, 62, 72, 66, 67, 75, 50, 55, 70, 57, 55, 71, 51, 51, 62, 68, 81, 62, 75, 70, 65, 62, 78, 69, 76, 84, 62, 59, 64, 59, 80, 56, 64, 53, 61, 81, 67, 68, 47, 71, 51, 68, 55, 70, 61, 58, 65, 58, 71, 65, 65, 62, 77, 72, 71, 53, 60, 54, 61, 70, 67, 63, 66, 69, 65, 60, 62, 56, 59, 68, 60, 53, 50, 53, 64, 50, 80, 61, 66, 47, 78, 60, 84, 62, 54, 65, 62, 62, 73, 71, 61, 76, 56, 69, 59, 59, 70, 64, 75, 54, 81, 82, 68, 96, 66, 77, 82, 50, 62, 59, 69, 105, 72, 94, 66, 61, 84, 61, 72, 75, 91, 71, 55, 49, 62, 49, 67, 71, 76, 66, 73, 70, 56, 48, 62, 52, 75, 61, 61, 65, 61, 57, 53, 55, 91, 72, 81, 54, 67, 62, 74, 67, 59, 64, 107, 54, 56, 60, 63, 64, 59, 68, 60, 77, 47, 115, 56, 51, 89, 88, 86, 77, 52, 66, 49, 64, 72, 46, 50, 97, 67, 45, 83, 56, 64, 64, 59, 65, 68, 69, 66, 60, 69, 66, 61, 66, 61, 74, 62, 71, 64, 50, 67, 74, 85, 56, 52, 45, 62, 73, 56, 50, 70, 63, 84, 54, 71, 60, 114, 69, 66, 94, 117, 55, 76, 70, 63, 61, 64, 78, 68, 64, 79, 63, 61, 84, 64, 58, 48, 52, 72, 66, 83, 87, 56, 71, 71, 51, 75, 63, 65, 51, 57, 57, 74, 57, 76, 86, 54, 60, 66, 77, 49, 67, 82, 74, 79, 51, 50, 61, 57, 62, 58, 43, 77, 74, 64, 66, 65, 68, 79, 60, 58, 50, 69, 70, 53, 56, 67, 62, 71, 50, 62, 44, 82, 64, 68, 75, 62, 69, 63, 48, 77, 59, 45, 73, 76, 54, 72, 69, 95, 52, 104, 72, 47, 65, 56, 79, 51, 60, 61, 63, 60, 85, 55, 109, 50, 60, 90, 60, 69, 50, 66, 65, 53, 51, 79, 86, 54, 49, 71, 77, 68, 63, 51, 84, 57, 50, 59, 70, 71, 87, 60, 57, 66, 52, 82, 69, 79, 89, 67, 52, 62, 58, 60, 104, 72, 81, 84, 58, 51, 62, 65, 94, 60, 60, 64, 76, 67, 56, 103, 56, 64, 62, 80, 76, 52, 54, 52, 62, 64, 52, 58, 68, 52, 72, 66, 62, 65, 61, 59, 81, 63, 63, 61, 48, 69, 62, 67, 80, 74, 160, 57, 58, 85, 79, 63, 66, 62, 56, 76, 58, 83, 53, 54, 54, 68, 75, 52, 60, 60, 62, 66, 69, 57, 86, 73, 56, 55, 64, 56, 61, 51, 64, 47, 47, 61, 56, 64, 53, 53, 99, 66, 65, 89, 76, 57, 63, 55, 87, 66, 74, 67, 60, 77, 86, 59, 76, 63, 62, 66, 71, 70, 60, 78, 71, 48, 64, 68, 64, 75, 45, 77, 58, 72, 69, 66, 70, 62, 61, 83, 60, 53, 55, 65, 77, 71, 69, 79, 76, 73, 78, 62, 71, 56, 62, 45, 81, 119, 66, 67, 51, 82, 78, 82, 65, 46, 80, 56, 79, 63, 78, 74, 47, 60, 91, 115, 55, 51, 51, 58, 82, 61, 65, 47, 74, 67, 65, 63, 70, 86, 66, 70, 62, 66, 79, 52, 53, 70, 98, 59, 54, 75, 51, 82, 44, 100, 70, 66, 62, 52, 43, 81, 74, 59, 68, 91, 64, 55, 63, 69, 58, 52, 58, 48, 58, 60, 63, 79, 55, 58, 129, 69, 62, 62, 55, 70, 89, 46, 71, 66, 63, 55, 64, 57, 62, 63, 73, 61, 62, 71, 63, 64, 74, 65, 55, 66, 60, 62, 67, 69, 70, 64, 74, 75, 58, 62, 63, 59, 53, 69, 55, 59, 50, 59, 55, 65, 62, 63, 66, 87, 63, 66, 83, 53, 57, 76, 57, 62, 68, 78, 79, 56, 65, 55, 55, 65, 71, 48, 56, 56, 97, 59, 60, 82, 61, 52, 76, 78, 106, 64, 53, 61, 52, 62, 63, 57, 53, 58, 64, 62, 74, 44, 49, 62, 62, 70, 63, 122, 67, 56, 62, 66, 74, 59, 60, 66, 70, 67, 98, 64, 54, 65, 61, 81, 62, 62, 62, 66, 56, 71, 69, 62, 55, 68, 70, 55, 80, 58, 66, 80, 99, 65, 39, 63, 65, 57, 57, 76, 58, 53, 65, 75, 97, 72, 57, 69, 59, 95, 61, 65, 63, 68, 52, 71, 70, 68, 60, 60, 50, 54, 61, 57, 62, 76, 53, 50, 73, 81, 78, 102, 65, 87, 74, 78, 68, 87, 59, 56, 78, 76, 71, 78, 51, 58, 49, 67, 60, 117, 64, 52, 78, 66, 89, 52, 58, 51, 68, 55, 56, 58, 70, 51, 62, 70, 82, 93, 73, 57, 53, 69, 62, 61, 64, 61, 52, 71, 54, 62, 63, 71, 55, 83, 58, 60, 94, 69, 56, 80, 66, 65, 56, 86, 63, 60, 59, 58, 74, 71, 56, 69, 86, 67, 77, 44, 60, 73, 57, 88, 58, 64, 58, 73, 63, 61, 68, 49, 52, 73, 52, 85, 76, 62, 72, 74, 55, 66, 62, 70, 69, 80, 94, 85, 57, 60, 51, 68, 125, 55, 83, 55, 74, 48, 62, 69, 64, 63, 52, 69, 82, 72, 66, 65, 55, 57, 64, 87, 81, 66, 53, 55, 49, 68, 62, 59, 58, 67, 57, 59, 58, 53, 68, 61, 80, 53, 65, 63, 103, 61, 63, 77, 68, 82, 94, 57, 70, 67, 64, 58, 70, 53, 60, 94, 63, 63, 81, 55, 56, 72, 72, 80, 61, 54, 54, 91, 64, 58, 69, 49, 50, 65, 61, 52, 68, 85, 71, 92, 85, 82, 76, 80, 49, 65, 67, 69, 58, 58, 67, 62, 62, 62, 70, 72, 57, 50, 55, 62, 72, 66, 68, 52, 61, 53, 76, 66, 50, 79, 70, 81, 71, 69, 69, 74, 85, 69, 58, 56, 54, 90, 55, 68, 65, 55, 55, 55, 66, 54, 52, 67, 77, 47, 75, 63, 59, 75, 60, 67, 55, 55, 51, 62, 67, 84, 53, 89, 63, 59, 57, 78, 65, 75, 65, 65, 73, 60, 44, 46, 62, 60, 74, 69, 68, 71, 88, 61, 59, 36, 64, 64, 53, 41, 69, 65, 61, 41, 58, 80, 52, 65, 54, 60, 71, 53, 65, 63, 69, 50, 56, 66, 75, 93, 49, 64, 71, 69, 62, 58, 56, 61, 64, 55, 68, 71, 54, 66, 68, 73, 97, 64, 62, 48, 59, 54, 45, 54, 57, 64, 72, 68, 63, 64, 56, 56, 59, 68, 58, 57, 73, 68, 65, 51, 54, 79, 79, 68, 44, 58, 52, 45, 45, 78, 57, 67, 64, 89, 51, 55, 75, 49, 65, 56, 65, 59, 66, 65, 68, 47, 48, 70, 59, 44, 63, 82, 99, 51, 94, 48, 58, 71, 67, 75, 78, 59, 48, 89, 59, 103, 72, 57, 52, 59, 62, 51, 87, 58, 53, 63, 58, 79, 81, 97, 60, 50, 69, 54, 50, 66, 70, 48, 45, 55, 66, 58, 51, 53, 63, 58, 62, 123, 81, 88, 64, 51, 52, 68, 74, 52, 55, 62, 54, 51, 59, 60, 65, 88, 69, 77, 57, 68, 85, 63, 66, 82, 47, 58, 68, 53, 56, 59, 64, 108, 75, 56, 76, 73, 93, 69, 67, 74, 70, 70, 85, 66, 55, 58, 68, 70, 79, 56, 66, 56, 63, 64, 69, 71, 62, 58, 95, 64, 49, 92, 53, 68, 57, 58, 56, 70, 67, 63, 66, 62, 65, 51, 52, 52, 66, 62, 61, 46, 51, 44, 46, 60, 51, 97, 57, 72, 42, 46, 74, 64, 68, 53, 64, 62, 74, 59, 62, 69, 51, 80, 42, 58, 67, 63, 122, 51, 61, 90, 51, 64, 51, 56, 60, 60, 75, 93, 95, 60, 91, 73, 74, 60, 55, 93, 62, 54, 78, 66, 71, 51, 75, 92, 74, 56, 60, 75, 71, 87, 53, 82, 49, 57, 101, 80, 59, 53, 76, 69, 71, 60, 109, 76, 55, 66, 51, 56, 61, 94, 69, 65, 86, 62, 72, 59, 90, 64, 67, 67, 66, 61, 71, 62, 72, 61, 59, 54, 102, 76, 63, 59, 76, 79, 54, 45, 77, 48, 75, 72, 55, 69, 46, 66, 66, 86, 85, 58, 59, 74, 64, 71, 61, 61, 66, 63, 48, 72, 53, 50, 59, 112, 71, 63, 60, 67, 67, 47, 53, 90, 36, 79, 62, 92, 52, 74, 59, 57, 65, 72, 74, 59, 71, 68, 89, 76, 58, 56, 46, 54, 75, 60, 55, 70, 57, 78, 82, 56, 56, 56, 79, 70, 84, 52, 78, 64, 60, 79, 66, 62, 73, 88, 76, 36, 56, 81, 87, 50, 71, 55, 68, 55, 51, 70, 65, 77, 44, 99, 62, 53, 72, 69, 66, 68, 71, 58, 65, 45, 60, 79, 65, 54, 64, 60, 75, 52, 62, 72, 106, 48, 55, 52, 73, 56, 59, 52, 64, 57, 62, 42, 57, 81, 78, 83, 91, 81, 63, 67, 57, 62, 47, 47, 65, 52, 55, 56, 52, 79, 69, 90, 71, 59, 57, 60, 75, 49, 70, 73, 56, 86, 76, 77, 68, 53, 82, 52, 60, 63, 70, 82, 75, 75, 64, 66, 62, 74, 74, 67, 63, 63, 64, 54, 52, 70, 77, 55, 57, 53, 68, 81, 57, 57, 57, 49, 54, 68, 88, 82, 49, 61, 68, 96, 50, 70, 79, 97, 76, 71, 53, 65, 71, 67, 69, 54, 55, 86, 58, 69, 86, 76, 77, 52, 64, 54, 81, 70, 77, 110, 53, 105, 73, 60, 61, 77, 86, 55, 93, 55, 61, 79, 48, 74, 53, 50, 89, 71, 95, 74, 59, 58, 57, 72, 67, 58, 46, 91, 96, 73, 80, 63, 59, 64, 67, 64, 93, 53, 55, 61, 72, 55, 81, 50, 82, 79, 68, 52, 76, 67, 81, 60, 61, 78, 82, 65, 55, 71, 83, 59, 64, 58, 63, 74, 60, 57, 63, 63, 82, 52, 87, 60, 62, 69, 55, 65, 76, 58, 70, 73, 63, 73, 59, 71, 54, 67, 60, 62, 96, 65, 61, 107, 48, 65, 42, 72, 77, 62, 48, 58, 54, 59, 86, 49, 91, 52, 78, 56, 83, 62, 55, 58, 75, 75, 58, 55, 69, 66, 60, 71, 60, 70, 46, 68, 45, 133, 71, 51, 61, 50, 71, 58, 51, 63, 68, 53, 79, 80, 79, 95, 55, 64, 58, 81, 54, 49, 53, 66, 79, 58, 72, 69, 61, 77, 69, 61, 72, 90, 70, 65, 60, 53, 65, 68, 58, 57, 80, 51, 86, 63, 78, 58, 58, 58, 80, 62, 60, 58, 66, 55, 82, 58, 62, 78, 60, 46, 70, 62, 77, 60, 48, 77, 61, 61, 52, 67, 80, 52, 72, 65, 82, 49, 49, 59, 59, 58, 52, 53, 71, 60, 60, 63, 78, 57, 42, 54, 65, 51, 50, 59, 103, 53, 58, 49, 66, 55, 81, 59, 37, 53, 78, 78, 48, 94, 96, 52, 59, 59, 83, 50, 76, 48, 54, 60, 66, 71, 57, 63, 63, 73, 64, 68, 80, 72, 89, 78, 47, 73, 57, 75, 53, 59, 52, 70, 79, 53, 65, 56, 68, 64, 51, 65, 62, 63, 73, 111, 63, 76, 65, 82, 70, 82, 67, 51, 54, 57, 66, 82, 58, 78, 60, 75, 57, 64, 67, 59, 60, 65, 74, 72, 53, 61, 61, 96, 63, 85, 84, 90, 60, 68, 55, 73, 43, 83, 59, 72, 119, 75, 50, 73, 61, 71, 62, 63, 73, 48, 53, 68, 65, 72, 97, 71, 68, 56, 58, 74, 87, 70, 53, 52, 56, 90, 83, 58, 44, 58, 72, 66, 68, 49, 60, 57, 61, 81, 85, 63, 77, 69, 56, 50, 61, 69, 51, 55, 66, 54, 47, 80, 56, 70, 85, 54, 69, 49, 60, 88, 58, 55, 52, 52, 70, 71, 59, 81, 57, 55, 61, 64, 103, 65, 77, 49, 90, 65, 56, 50, 50, 57, 95, 80, 67, 56, 51, 56, 60, 78, 78, 77, 69, 68, 66, 59, 57, 63, 64, 51, 44, 56, 61, 46, 60, 69, 44, 56, 55, 67, 60, 64, 52, 71, 52, 66, 62, 48, 63, 58, 51, 53, 55, 90, 63, 51, 67, 53, 77, 58, 72, 58, 70, 61, 75, 56, 59, 56, 76, 78, 67, 69, 62, 52, 63, 75, 90, 106, 72, 57, 64, 60, 57, 62, 88, 61, 67, 59, 88, 49, 56, 58, 63, 66, 53, 53, 65, 54, 58, 60, 65, 53, 60, 61, 65, 55, 54, 59, 71, 79, 54, 67, 57, 74, 54, 66, 68, 54, 70, 64, 58, 74, 69, 58, 63, 57, 66, 65, 54, 54, 98, 52, 57, 50, 64, 80, 57, 70, 79, 72, 65, 46, 55, 63, 57, 53, 48, 56, 70, 55, 63, 53, 54, 87, 74, 66, 56, 69, 70, 73, 104, 89, 69, 70, 63, 67, 74, 60, 68, 56, 85, 52, 67, 54, 64, 50, 42, 71, 114, 74, 62, 59, 59, 63, 51, 65, 93, 57, 56, 71, 56, 59, 55, 65, 64, 58, 52, 47, 76, 53, 73, 64, 80, 61, 61, 62, 60, 58, 43, 63, 76, 76, 62, 69, 70, 75, 60, 64, 85, 108, 57, 55, 58, 56, 60, 66, 52, 58, 71, 64, 83, 82, 66, 72, 55, 59, 66, 62, 59, 81, 75, 55, 55, 63, 71, 65, 60, 47, 67, 61, 72, 67, 53, 52, 55, 78, 55, 56, 75, 62, 80, 85, 79, 58, 75, 72, 69, 67, 55, 48, 79, 60, 114, 47, 69, 61, 69, 67, 62, 63, 64, 60, 89, 85, 85, 78, 58, 68, 68, 55, 61, 63, 74, 84, 61, 65, 92, 58, 49, 71, 66, 59, 81, 88, 59, 50, 60, 62, 60, 59, 62, 84, 93, 68, 53, 70, 59, 79, 53, 69, 70, 55, 57, 73, 87, 50, 67, 68, 54, 65, 74, 75, 106, 65, 65, 55, 56, 58, 69, 57, 64, 56, 63, 61, 55, 59, 67, 79, 109, 50, 54, 64, 64, 53, 72, 67, 46, 55, 61, 62, 58, 57, 73, 50, 68, 60, 58, 62, 71, 79, 86, 62, 85, 59, 67, 90, 65, 49, 47, 60, 59, 58, 80, 63, 60, 60, 58, 69, 61, 52, 74, 79, 75, 85, 80, 55, 75, 61, 62, 73, 57, 62, 109, 47, 58, 53, 62, 70, 46, 93, 78, 61, 59, 85, 50, 51, 71, 58, 75, 71, 58, 63, 51, 74, 66, 58, 82, 58, 71, 91, 64, 55, 84, 55, 56, 59, 58, 77, 71, 68, 84, 104, 67, 45, 87, 72, 70, 67, 64, 86, 49, 56, 63, 57, 64, 58, 70, 57, 51, 56, 88, 64, 63, 53, 57, 64, 65, 60, 63, 57, 77, 62, 70, 71, 79, 73, 60, 62, 67, 66, 62, 70, 39, 77, 83, 76, 50, 65, 94, 56, 70, 57, 55, 61, 67, 64, 134, 65, 57, 64, 52, 57, 65, 97, 89, 72, 62, 91, 47, 61, 63, 55, 49, 71, 42, 57, 54, 69, 64, 68, 65, 51, 79, 90, 44, 79, 71, 60, 58, 67, 95, 47, 71, 78, 65, 66, 70, 59, 55, 62, 64, 71, 96, 51, 75, 54, 71, 68, 67, 68, 53, 63, 61, 79, 58, 63, 57, 67, 66, 58, 77, 53, 69, 62, 74, 57, 83, 100, 56, 56, 67, 69, 52, 69, 77, 67, 59, 62, 52, 67, 58, 62, 75, 72, 52, 59, 88, 57, 57, 67, 72, 75, 53, 66, 73, 53, 51, 59, 66, 51, 58, 55, 86, 86, 83, 98, 55, 53, 67, 61, 57, 101, 66, 63, 66, 82, 65, 71, 71, 55, 56, 78, 56, 61, 53, 75, 61, 86, 53, 50, 58, 84, 62, 78, 59, 78, 87, 61, 73, 88, 70, 72, 92, 63, 57, 52, 67, 69, 54, 70, 68, 101, 81, 53, 71, 65, 57, 64, 59, 73, 59, 64, 63, 65, 67, 101, 105, 82, 61, 63, 63, 44, 69, 56, 73, 66, 42, 58, 57, 71, 68, 55, 56, 58, 70, 50, 68, 73, 60, 60, 70, 68, 60, 65, 58, 82, 59, 60, 92, 53, 56, 67, 61, 64, 78, 62, 78, 62, 64, 59, 71, 68, 48, 78, 46, 56, 63, 76, 59, 58, 62, 61, 65, 57, 54, 67, 45, 60, 60, 58, 63, 58, 43, 92, 45, 65, 63, 55, 66, 67, 81, 70, 72, 62, 72, 75, 72, 111, 84, 74, 55, 83, 53, 59, 78, 72, 67, 63, 57, 57, 55, 49, 63, 120, 79, 59, 48, 66, 67, 57, 62, 52, 62, 65, 69, 56, 60, 61, 59, 75, 63, 53, 55, 79, 54, 65, 85, 69, 67, 87, 55, 55, 65, 60, 54, 74, 62, 66, 55, 64, 60, 58, 59, 69, 56, 56, 52, 58, 110, 56, 58, 73, 61, 71, 58, 51, 57, 60, 68, 64, 68, 68, 64, 53, 73, 74, 68, 65, 62, 86, 76, 80, 60, 65, 65, 61, 56, 70, 87, 60, 59, 72, 62, 69, 67, 68, 66, 59, 86, 57, 87, 62, 61, 49, 79, 77, 84, 56, 62, 50, 49, 59, 61, 62, 84, 44, 77, 82, 65, 72, 69, 76, 62, 72, 58, 68, 76, 75, 69, 60, 63, 67, 70, 45, 88, 71, 77, 60, 69, 60, 59, 63, 74, 88, 76, 70, 69, 72, 53, 66, 52, 59, 75, 71, 74, 51, 62, 65, 56, 75, 103, 57, 57, 71, 62, 76, 66, 64, 80, 92, 60, 75, 68, 59, 58, 79, 64, 67, 61, 61, 60, 56, 54, 59, 53, 73, 63, 88, 55, 57, 71, 74, 99, 57, 64, 47, 56, 66, 69, 69, 53, 65, 83, 70, 74, 59, 67, 103, 76, 69, 65, 76, 77, 53, 54, 51, 65, 83, 55, 67, 86, 71, 77, 64, 67, 67, 63, 50, 59, 85, 46, 61, 67, 72, 77, 43, 57, 97, 59, 73, 60, 93, 78, 57, 62, 66, 88, 65, 67, 57, 54, 61, 49, 54, 63, 56, 54, 77, 62, 66, 72, 85, 52, 65, 67, 63, 66, 63, 70, 61, 50, 52, 51, 57, 64, 71, 95, 47, 61, 55, 72, 47, 59, 57, 62, 66, 42, 64, 66, 59, 59, 76, 61, 72, 68, 57, 62, 72, 56, 64, 59, 69, 67, 57, 88, 52, 90, 85, 79, 60, 73, 68, 61, 60, 72, 81, 66, 79, 68, 68, 47, 61, 72, 62, 54, 49, 62, 65, 55, 63, 56, 79, 80, 61, 75, 64, 59, 70, 68, 76, 59, 60, 68, 57, 74, 82, 67, 66, 63, 56, 86, 68, 59, 59, 54, 64, 53, 62, 76, 57, 54, 63, 73, 58, 68, 69, 61, 60, 48, 47, 64, 51, 60, 67, 93, 67, 59, 67, 57, 67, 59, 69, 58, 56, 103, 94, 100, 62, 66, 51, 66, 58, 60, 70, 59, 71, 62, 60, 66, 50, 65, 61, 59, 64, 72, 55, 58, 60, 64, 83, 68, 53, 69, 61, 42, 69, 72, 72, 63, 58, 61, 64, 69, 49, 56, 59, 60, 76, 51, 49, 80, 54, 65, 74, 56, 55, 64, 71, 63, 73, 63, 56, 90, 72, 65, 59, 64, 53, 59, 78, 54, 55, 61, 53, 67, 86, 78, 63, 58, 75, 56, 57, 62, 101, 61, 74, 56, 61, 79, 58, 52, 50, 53, 63, 68, 66, 106, 65, 73, 63, 46, 69, 84, 67, 61, 95, 67, 87, 50, 86, 77, 59, 67, 115, 85, 63, 70, 64, 59, 63, 55, 59, 75, 65, 64, 69, 57, 44, 75, 91, 71, 55, 63, 63, 63, 48, 55, 64, 70, 63, 57, 92, 61, 61, 58, 63, 51, 50, 60, 74, 70, 58, 42, 42, 70, 78, 61, 65, 45, 63, 103, 49, 70, 58, 56, 68, 117, 49, 82, 74, 68, 50, 59, 70, 78, 65, 74, 89, 88, 93, 61, 47, 68, 57, 59, 81, 73, 95, 67, 74, 67, 51, 48, 54, 66, 61, 59, 69, 47, 64, 62, 64, 51, 78, 80, 89, 79, 67, 61, 70, 62, 90, 64, 51, 55, 69, 50, 39, 98, 67, 74, 62, 55, 48, 96, 90, 91, 65, 58, 60, 51, 53, 70, 66, 67, 61, 77, 66, 57, 57, 64, 90, 83, 68, 69, 61, 72, 56, 94, 46, 65, 53, 48, 53, 61, 69, 70, 57, 63, 58, 56, 54, 70, 68, 76, 57, 93, 71, 77, 68, 63, 52, 50, 66, 59, 71, 79, 76, 63, 83, 69, 60, 59, 62, 66, 69, 87, 75, 67, 63, 67, 80, 50, 54, 71, 65, 109, 74, 56, 80, 59, 59, 53, 58, 82, 63, 70, 56, 107, 52, 62, 63, 76, 71, 62, 75, 59, 76, 68, 54, 76, 70, 63, 73, 64, 85, 74, 55, 59, 56, 77, 77, 62, 40, 60, 106, 62, 77, 80, 56, 72, 90, 82, 78, 71, 72, 55, 78, 58, 55, 59, 58, 61, 78, 91, 51, 60, 49, 49, 72, 60, 59, 59, 52, 44, 56, 83, 60, 61, 57, 64, 61, 57, 84, 54, 62, 42, 74, 64, 53, 49, 86, 102, 57, 52, 63, 55, 54, 67, 75, 139, 70, 58, 61, 61, 58, 58, 80, 80, 48, 53, 74, 56, 58, 60, 75, 66, 67, 57, 71, 62, 55, 68, 86, 65, 71, 71, 88, 57, 78, 59, 73, 55, 87, 59, 51, 52, 69, 56, 59, 60, 58, 66, 48, 63, 64, 56, 53, 95, 80, 62, 69, 71, 60, 52, 63, 60, 80, 56, 47, 61, 84, 70, 50, 61, 60, 44, 86, 66, 57, 56, 95, 49, 76, 63, 54, 71, 59, 75, 51, 51, 53, 64, 61, 51, 88, 65, 57, 70, 76, 94, 65, 62, 59, 67, 67, 84, 70, 84, 63, 54, 92, 63, 79, 66, 75, 62, 55, 78, 90, 46, 65, 69, 59, 46, 99, 66, 61, 69, 48, 39, 57, 82, 61, 48, 66, 55, 61, 53, 55, 56, 86, 54, 82, 60, 81, 60, 79, 53, 75, 41, 60, 72, 91, 89, 67, 71, 88, 75, 57, 81, 113, 77, 52, 59, 63, 58, 67, 87, 69, 58, 66, 62, 59, 60, 63, 72, 57, 71, 91, 109, 56, 79, 61, 95, 58, 79, 62, 66, 64, 63, 54, 60, 61, 58, 50, 66, 49, 60, 62, 73, 66, 65, 63, 74, 62, 71, 66, 64, 71, 56, 53, 63, 51, 60, 56, 52, 56, 75, 63, 92, 64, 72, 61, 70, 85, 70, 54, 63, 59, 54, 69, 68, 58, 59, 59, 69, 67, 63, 65, 62, 64, 87, 64, 66, 72, 69, 75, 68, 62, 53, 65, 55, 76, 86, 68, 95, 65, 54, 72, 45, 64, 60, 58, 65, 64, 59, 59, 54, 63, 54, 89, 50, 110, 51, 54, 76, 109, 65, 46, 64, 69, 66, 63, 58, 66, 57, 63, 44, 76, 64, 70, 63, 87, 65, 51, 87, 90, 65, 57, 88, 68, 83, 63, 56, 58, 55, 89, 69, 74, 88, 62, 81, 57, 63, 72, 89, 56, 57, 78, 70, 63, 118, 80, 69, 52, 65, 54, 63, 66, 56, 57, 64, 71, 63, 73, 50, 79, 73, 39, 85, 60, 55, 89, 63, 58, 94, 60, 81, 72, 78, 52, 73, 40, 71, 69, 73, 65, 65, 60, 67, 61, 64, 62, 91, 44, 72, 75, 87, 70, 97, 63, 59, 53, 58, 61, 56, 59, 74, 91, 60, 66, 74, 63, 73, 62, 74, 64, 78, 49, 70, 99, 66, 58, 62, 48, 80, 64, 67, 73, 66, 53, 88, 62, 61, 50, 77, 64, 56, 60, 58, 65, 76, 55, 66, 64, 66, 73, 59, 71, 66, 59, 71, 72, 68, 65, 64, 83, 52, 50, 47, 82, 66, 55, 74, 68, 72, 62, 57, 63, 76, 66, 70, 59, 79, 63, 75, 55, 54, 52, 58, 51, 79, 48, 60, 43, 101, 55, 68, 70, 51, 80, 59, 70, 50, 71, 59, 91, 84, 47, 59, 98, 122, 61, 66, 69, 63, 66, 61, 60, 73, 59, 60, 73, 58, 80, 51, 58, 63, 71, 69, 53, 76, 68, 57, 60, 65, 73, 51, 60, 85, 77, 66, 78, 73, 86, 45, 55, 64, 75, 46, 59, 63, 70, 56, 55, 57, 56, 57, 78, 58, 72, 59, 78, 60, 64, 55, 53, 56, 82, 71, 66, 56, 58, 51, 63, 53, 48, 65, 66, 98, 79, 67, 52, 80, 61, 52, 62, 54, 67, 72, 58, 64, 68, 65, 51, 65, 68, 56, 63, 76, 75, 52, 58, 51, 69, 78, 66, 98, 62, 86, 81, 76, 66, 61, 65, 70, 55, 64, 57, 53, 53, 58, 58, 66, 67, 65, 58, 51, 56, 55, 58, 69, 111, 59, 71, 54, 60, 86, 56, 69, 75, 83, 89, 68, 66, 49, 63, 48, 77, 61, 53, 62, 67, 60, 58, 78, 78, 51, 58, 56, 66, 67, 62, 59, 72, 60, 61, 69, 54, 66, 67, 60, 54, 77, 50, 60, 69, 68, 80, 54, 51, 65, 49, 61, 70, 48, 59, 95, 73, 69, 60, 53, 54, 52, 60, 61, 58, 69, 70, 49, 58, 56, 59, 90, 65, 76, 70, 77, 59, 79, 80, 52, 77, 64, 50, 62, 55, 74, 55, 62, 98, 70, 56, 61, 62, 74, 59, 58, 66, 56, 69, 60, 67, 38, 60, 69, 73, 55, 51, 85, 60, 65, 49, 58, 69, 88, 55, 73, 59, 71, 62, 78, 66, 61, 56, 60, 99, 57, 88, 59, 71, 69, 64, 57, 62, 56, 72, 57, 58, 64, 64, 91, 53, 41, 53, 85, 64, 58, 58, 68, 71, 94, 63, 99, 61, 66, 62, 64, 96, 57, 66, 64, 87, 78, 62, 67, 93, 83, 62, 57, 67, 58, 53, 53, 59, 78, 68, 87, 57, 54, 40, 69, 78, 87, 60, 56, 70, 58, 63, 70, 57, 56, 61, 51, 39, 52, 61, 64, 65, 71, 53, 71, 50, 60, 54, 57, 65, 47, 68, 78, 60, 58, 60, 86, 66, 57, 56, 59, 56, 106, 79, 72, 57, 57, 64, 83, 60, 74, 61, 69, 60, 74, 79, 63, 62, 73, 68, 63, 107, 63, 68, 86, 57, 66, 62, 45, 50, 61, 64, 77, 65, 72, 75, 54, 52, 55, 79, 69, 73, 69, 52, 50, 71, 51, 61, 63, 59, 66, 52, 77, 91, 83, 64, 70, 71, 58, 63, 56, 83, 78, 63, 62, 62, 84, 51, 60, 70, 58, 56, 59, 47, 59, 65, 61, 90, 100, 54, 60, 60, 60, 56, 67, 79, 58, 56, 30, 61, 66, 71, 55, 69, 54, 52, 69, 74, 61, 86, 75, 52, 88, 49, 87, 118, 67, 65, 59, 72, 82, 72, 72, 64, 60, 77, 52, 53, 59, 62, 61, 66, 72, 90, 58, 55, 62, 77, 91, 60, 55, 59, 123, 58, 79, 58, 62, 62, 73, 58, 60, 62, 68, 77, 92, 69, 63, 72, 49, 60, 60, 75, 69, 66, 65, 50, 81, 66, 62, 69, 53, 52, 70, 65, 56, 54, 87, 59, 73, 69, 64, 64, 74, 90, 72, 70, 47, 59, 65, 58, 51, 47, 51, 80, 66, 61, 82, 52, 74, 65, 69, 48, 62, 57, 94, 81, 62, 59, 61, 52, 43, 84, 58, 77, 59, 85, 47, 70, 57, 60, 71, 60, 58, 49, 62, 70, 44, 72, 75, 62, 56, 63, 54, 66, 48, 65, 144, 66, 68, 70, 75, 65, 42, 76, 64, 77, 56, 66, 74, 66, 90, 57, 76, 79, 71, 50, 68, 63, 84, 62, 58, 67, 59, 76, 72, 76, 91, 61, 69, 63, 62, 53, 50, 61, 54, 74, 67, 56, 47, 65, 66, 60, 68, 68, 75, 64, 63, 64, 83, 62, 72, 60, 63, 61, 56, 96, 62, 52, 74, 56, 64, 56, 67, 55, 61, 77, 67, 72, 68, 68, 63, 77, 65, 61, 72, 66, 58, 58, 62, 54, 67, 89, 65, 55, 62, 78, 93, 56, 51, 73, 65, 51, 72, 82, 59, 38, 62, 72, 58, 84, 62, 63, 65, 69, 68, 79, 80, 72, 63, 55, 64, 92, 67, 60, 72, 68, 75, 57, 49, 53, 51, 89, 56, 55, 68, 78, 53, 49, 63, 77, 63, 44, 49, 68, 59, 53, 74, 62, 54, 121, 70, 76, 44, 74, 82, 47, 75, 67, 77, 52, 70, 61, 62, 69, 66, 68, 70, 51, 61, 64, 55, 68, 70, 58, 71, 93, 117, 50, 60, 69, 65, 66, 86, 48, 85, 48, 64, 65, 80, 72, 65, 57, 74, 73, 63, 75, 72, 50, 50, 52, 68, 59, 95, 59, 63, 77, 62, 57, 73, 75, 65, 66, 56, 52, 73, 56, 93, 62, 52, 64, 54, 91, 61, 60, 64, 65, 56, 92, 76, 48, 63, 69, 58, 61, 53, 65, 60, 60, 60, 92, 56, 64, 56, 76, 52, 66, 53, 75, 62, 67, 72, 57, 80, 62, 68, 69, 67, 81, 65, 71, 88, 56, 64, 65, 60, 75, 80, 60, 68, 92, 56, 53, 63, 113, 60, 57, 60, 68, 58, 64, 60, 59, 56, 57, 60, 66, 65, 60, 81, 35, 51, 83, 61, 64, 65, 45, 75, 68, 53, 74, 53, 65, 57, 65, 81, 61, 75, 55, 68, 76, 64, 63, 51, 69, 52, 76, 56, 65, 121, 54, 66, 67, 56, 76, 58, 79, 49, 58, 61, 69, 56, 55, 63, 72, 50, 85, 56, 57, 55, 65, 54, 58, 74, 57, 66, 62, 66, 66, 80, 48, 79, 84, 59, 71, 78, 68, 54, 53, 76, 60, 88, 63, 64, 80, 72, 54, 79, 61, 76, 63, 65, 52, 69, 60, 56, 77, 78, 64, 91, 67, 74, 55, 59, 75, 78, 52, 55, 69, 65, 68, 75, 57, 75, 92, 90, 62, 58, 61, 62, 59, 59, 65, 76, 71, 57, 61, 57, 65, 52, 65, 68, 58, 81, 73, 65, 68, 59, 66, 74, 67, 69, 60, 65, 80, 60, 59, 60, 64, 81, 72, 56, 66, 62, 49, 61, 62, 74, 73, 62, 66, 60, 68, 65, 58, 42, 56, 97, 75, 93, 90, 62, 74, 100, 76, 62, 64, 75, 67, 64, 58, 54, 70, 56, 104, 88, 54, 47, 106, 48, 58, 67, 74, 51, 53, 67, 63, 53, 60, 68, 50, 57, 66, 52, 40, 65, 58, 59, 53, 82, 82, 83, 55, 50, 56, 72, 76, 59, 52, 58, 60, 60, 83, 76, 68, 68, 55, 61, 59, 60, 77, 56, 58, 58, 52, 72, 64, 63, 66, 65, 86, 54, 68, 50, 76, 79, 67, 104, 60, 78, 56, 70, 57, 54, 56, 56, 63, 114, 90, 87, 58, 62, 60, 52, 63, 56, 54, 48, 82, 62, 54, 66, 67, 65, 73, 68, 69, 56, 63, 56, 64, 73, 66, 69, 62, 69, 59, 78, 63, 62, 60, 70, 57, 67, 71, 74, 65, 63, 75, 57, 56, 61, 58, 56, 62, 78, 47, 67, 54, 60, 60, 47, 71, 76, 67, 66, 61, 55, 55, 56, 82, 58, 84, 113, 75, 60, 63, 50, 71, 71, 60, 49, 99, 60, 56, 64, 74, 60, 60, 79, 57, 59, 70, 67, 58, 72, 64, 56, 64, 57, 60, 64, 62, 63, 58, 53, 71, 63, 57, 80, 61, 57, 69, 63, 52, 99, 90, 52, 60, 65, 61, 67, 65, 63, 59, 69, 58, 59, 57, 68, 62, 56, 64, 61, 66, 61, 66, 60, 105, 73, 83, 68, 57, 62, 61, 53, 63, 55, 65, 57, 66, 57, 64, 53, 58, 60, 57, 55, 70, 73, 63, 56, 60, 60, 63, 72, 52, 69, 84, 46, 67, 63, 52, 98, 55, 72, 75, 67, 59, 54, 62, 64, 65, 71, 58, 63, 82, 80, 60, 72, 57, 59, 51, 50, 79, 58, 75, 62, 65, 74, 64, 74, 61, 54, 45, 61, 73, 62, 66, 61, 76, 44, 59, 55, 62, 56, 98, 45, 68, 68, 99, 53, 57, 36, 125, 80, 57, 80, 88, 80, 81, 64, 56, 44, 54, 85, 67, 78, 62, 66, 103, 88, 59, 72, 55, 68, 58, 57, 60, 51, 56, 56, 77, 54, 57, 85, 60, 67, 105, 68, 81, 67, 69, 54, 57, 76, 57, 66, 56, 63, 62, 91, 66, 59, 59, 61, 58, 127, 76, 75, 59, 62, 58, 67, 63, 68, 69, 58, 54, 62, 79, 68, 53, 73, 59, 57, 71, 69, 88, 53, 61, 76, 51, 63, 82, 60, 84, 77, 42, 70, 60, 52, 71, 70, 72, 61, 65, 63, 72, 61, 101, 57, 84, 60, 72, 69, 63, 63, 61, 99, 63, 44, 81, 45, 50, 57, 90, 73, 64, 56, 85, 62, 59, 51, 83, 62, 59, 86, 65, 60, 65, 67, 83, 90, 75, 59, 49, 54, 50, 61, 69, 56, 53, 50, 44, 66, 62, 64, 76, 72, 76, 61, 51, 72, 89, 58, 61, 74, 62, 61, 74, 65, 57, 66, 82, 72, 53, 67, 68, 61, 49, 78, 58, 55, 65, 60, 88, 93, 65, 63, 64, 64, 64, 80, 58, 58, 57, 99, 51, 47, 52, 55, 60, 65, 61, 57, 69, 68, 75, 55, 88, 62, 50, 54, 70, 59, 62, 61, 71, 69, 72, 71, 69, 60, 60, 50, 58, 81, 52, 53, 63, 81, 61, 66, 57, 65, 96, 64, 63, 76, 48, 54, 66, 68, 71, 57, 56, 66, 74, 61, 57, 80, 54, 66, 94, 74, 59, 57, 69, 98, 78, 55, 69, 59, 58, 57, 71, 67, 58, 56, 47, 60, 67, 62, 56, 79, 91, 63, 65, 58, 46, 62, 52, 77, 54, 70, 48, 76, 72, 69, 77, 152, 61, 55, 64, 76, 65, 72, 65, 55, 62, 78, 83, 68, 59, 64, 68, 64, 58, 55, 69, 59, 56, 81, 65, 70, 61, 65, 70, 72, 74, 79, 56, 56, 76, 49, 67, 53, 53, 60, 57, 54, 51, 60, 54, 57, 70, 68, 63, 97, 78, 77, 57, 78, 59, 54, 58, 78, 61, 58, 60, 67, 61, 51, 65, 79, 62, 71, 50, 52, 61, 54, 89, 78, 71, 64, 64, 63, 61, 78, 59, 73, 65, 59, 56, 61, 82, 59, 64, 57, 72, 84, 54, 57, 61, 69, 78, 78, 61, 74, 57, 60, 84, 63, 88, 60, 69, 71, 53, 127, 59, 73, 69, 65, 57, 60, 109, 60, 59, 62, 88, 56, 66, 58, 74, 93, 66, 51, 73, 63, 75, 64, 63, 57, 73, 56, 78, 64, 54, 73, 69, 87, 67, 59, 88, 63, 65, 59, 85, 70, 54, 75, 66, 56, 55, 74, 58, 60, 63, 76, 71, 72, 60, 62, 54, 63, 67, 77, 66, 70, 67, 113, 62, 59, 55, 85, 75, 80, 56, 85, 64, 62, 74, 67, 73, 62, 84, 66, 84, 50, 50, 81, 76, 49, 57, 55, 66, 81, 55, 63, 72, 58, 58, 53, 56, 67, 67, 70, 61, 62, 53, 85, 60, 75, 58, 63, 84, 54, 58, 57, 77, 56, 90, 67, 62, 60, 70, 84, 56, 74, 61, 66, 55, 70, 70, 59, 61, 72, 72, 59, 54, 53, 61, 56, 46, 83, 74, 93, 66, 55, 67, 76, 72, 52, 56, 82, 66, 47, 63, 67, 84, 66, 42, 60, 81, 63, 56, 69, 121, 70, 72, 69, 55, 53, 50, 60, 57, 53, 55, 62, 75, 76, 59, 67, 78, 72, 65, 62, 81, 57, 66, 67, 62, 70, 66, 55, 71, 58, 54, 71, 61, 78, 66, 63, 65, 51, 68, 66, 76, 76, 57, 85, 54, 122, 52, 74, 60, 57, 59, 64, 63, 59, 60, 59, 56, 61, 68, 58, 73, 83, 72, 63, 64, 50, 52, 54, 61, 72, 84, 61, 87, 54, 78, 78, 74, 87, 66, 66, 50, 55, 60, 53, 60, 66, 63, 95, 70, 63, 63, 72, 80, 70, 58, 63, 63, 70, 64, 86, 63, 67, 49, 61, 71, 98, 44, 63, 61, 83, 67, 78, 96, 74, 88, 58, 62, 54, 59, 71, 75, 56, 57, 59, 55, 53, 62, 83, 53, 53, 69, 67, 63, 57, 64, 101, 63, 65, 62, 50, 72, 50, 61, 55, 73, 74, 63, 79, 47, 53, 79, 64, 61, 64, 62, 85, 56, 71, 74, 60, 66, 57, 52, 55, 64, 46, 64, 71, 59, 60, 59, 62, 56, 64, 55, 79, 58, 61, 80, 111, 78, 68, 76, 46, 70, 58, 92, 60, 59, 57, 76, 67, 64, 59, 111, 76, 67, 58, 64, 67, 59, 84, 42, 52, 73, 61, 56, 87, 55, 61, 66, 57, 59, 58, 50, 87, 74, 55, 59, 81, 67, 49, 66, 49, 93, 65, 69, 51, 56, 64, 64, 53, 58, 66, 55, 55, 62, 70, 59, 67, 63, 63, 70, 55, 64, 59, 71, 76, 78, 70, 60, 67, 64, 54, 69, 59, 67, 61, 63, 58, 60, 66, 60, 81, 76, 66, 53, 59, 53, 57, 56, 65, 65, 81, 87, 63, 52, 50, 71, 54, 64, 103, 64, 63, 46, 49, 64, 63, 81, 68, 70, 56, 64, 76, 80, 86, 69, 46, 65, 44, 66, 72, 63, 62, 51, 64, 68, 53, 65, 67, 57, 69, 58, 53, 47, 55, 62, 57, 58, 79, 65, 69, 73, 57, 81, 68, 67, 65, 58, 60, 64, 48, 69, 51, 59, 59, 63, 87, 51, 65, 58, 64, 74, 64, 71, 41, 58, 62, 91, 52, 57, 49, 57, 64, 81, 59, 49, 78, 60, 64, 61, 73, 60, 68, 58, 80, 63, 82, 57, 87, 64, 92, 85, 79, 59, 56, 63, 60, 71, 61, 72, 71, 62, 69, 55, 57, 55, 73, 58, 85, 61, 65, 53, 51, 83, 73, 89, 67, 49, 64, 69, 67, 64, 57, 77, 64, 53, 55, 63, 56, 54, 49, 64, 62, 76, 54, 80, 63, 99, 62, 77, 51, 51, 43, 67, 66, 71, 62, 54, 59, 59, 65, 70, 53, 59, 63, 57, 62, 62, 59, 58, 63, 69, 53, 75, 65, 45, 64, 67, 57, 96, 59, 62, 51, 71, 68, 51, 55, 49, 72, 59, 58, 53, 74, 81, 77, 56, 91, 51, 57, 65, 63, 61, 56, 66, 64, 69, 64, 58, 83, 93, 54, 48, 59, 57, 61, 54, 59, 52, 66, 86, 71, 40, 69, 95, 70, 77, 64, 63, 60, 97, 58, 51, 60, 65, 59, 65, 49, 58, 46, 48, 63, 55, 48, 56, 53, 66, 50, 57, 64, 54, 74, 68, 59, 61, 44, 49, 63, 71, 76, 38, 66, 56, 106, 77, 57, 60, 86, 102, 67, 57, 58, 50, 77, 57, 89, 52, 85, 53, 65, 58, 59, 62, 53, 57, 67, 78, 119, 55, 57, 53, 81, 59, 62, 91, 85, 90, 58, 38, 56, 58, 69, 58, 75, 81, 50, 60, 65, 74, 58, 67, 47, 55, 84, 68, 66, 58, 63, 62, 67, 48, 59, 83, 109, 59, 60, 54, 52, 62, 56, 64, 60, 66, 72, 66, 59, 61, 58, 70, 105, 56, 60, 65, 70, 63, 51, 62, 55, 78, 65, 81, 53, 70, 69, 72, 64, 63, 47, 88, 56, 75, 71, 47, 92, 53, 63, 107, 59, 60, 67, 72, 68, 63, 85, 58, 63, 65, 52, 66, 57, 75, 86, 57, 50, 97, 62, 73, 60, 60, 53, 60, 62, 62, 117, 57, 67, 61, 56, 52, 74, 85, 76, 59, 63, 73, 57, 53, 67, 56, 66, 73, 57, 49, 67, 49, 61, 52, 62, 48, 86, 88, 64, 61, 77, 64, 50, 65, 90, 70, 48, 70, 83, 97, 64, 86, 61, 61, 59, 59, 58, 67, 61, 84, 108, 86, 61, 60, 71, 57, 66, 55, 58, 64, 66, 60, 63, 96, 69, 67, 59, 63, 69, 75, 77, 66, 59, 67, 64, 75, 60, 51, 57, 59, 50, 67, 63, 79, 63, 60, 64, 64, 65, 56, 56, 64, 61, 60, 132, 57, 58, 48, 60, 83, 45, 79, 75, 96, 46, 55, 62, 60, 55, 71, 78, 59, 65, 59, 52, 107, 62, 75, 60, 68, 83, 85, 65, 54, 54, 57, 45, 53, 60, 67, 52, 94, 55, 49, 74, 56, 55, 61, 82, 79, 97, 83, 71, 78, 56, 49, 64, 47, 52, 56, 59, 66, 57, 64, 54, 61, 70, 65, 58, 53, 62, 79, 57, 67, 61, 80, 71, 63, 54, 66, 60, 68, 65, 50, 65, 44, 56, 85, 57, 103, 67, 83, 76, 59, 90, 65, 63, 76, 59, 74, 42, 74, 54, 70, 53, 53, 57, 63, 56, 61, 88, 88, 57, 95, 64, 70, 73, 67, 65, 99, 62, 65, 43, 94, 90, 68, 79, 68, 73, 60, 63, 63, 72, 53, 62, 77, 47, 47, 62, 64, 47, 71, 71, 64, 65, 59, 66, 112, 88, 54, 71, 49, 91, 55, 93, 55, 64, 65, 53, 71, 72, 83, 70, 62, 50, 87, 63, 61, 66, 90, 78, 59, 77, 86, 96, 60, 72, 68, 61, 67, 74, 52, 74, 55, 48, 59, 61, 55, 62, 53, 89, 73, 67, 74, 54, 55, 76, 55, 60, 69, 54, 57, 70, 75, 52, 57, 67, 76, 56, 87, 68, 62, 89, 60, 94, 68, 57, 53, 60, 83, 57, 59, 54, 116, 63, 71, 64, 72, 65, 63, 58, 64, 60, 95, 44, 53, 69, 55, 60, 63, 61, 64, 73, 49, 108, 57, 68, 97, 64, 67, 80, 70, 60, 78, 55, 61, 58, 62, 43, 82, 45, 54, 77, 80, 96, 68, 65, 82, 72, 67, 52, 110, 61, 68, 74, 56, 74, 68, 62, 62, 56, 56, 68, 71, 55, 67, 52, 70, 55, 59, 86, 64, 76, 59, 47, 63, 46, 49, 54, 66, 73, 68, 50, 54, 55, 63, 47, 64, 68, 68, 71, 57, 66, 67, 50, 68, 135, 60, 54, 69, 54, 83, 63, 67, 58, 51, 52, 74, 56, 80, 67, 62, 64, 62, 67, 56, 61, 81, 70, 34, 60, 47, 64, 73, 72, 75, 74, 69, 72, 71, 58, 70, 80, 77, 77, 61, 91, 60, 49, 63, 73, 89, 71, 64, 85, 49, 76, 48, 67, 64, 58, 70, 56, 79, 84, 68, 73, 80, 71, 90, 63, 87, 47, 61, 68, 68, 64, 89, 51, 60, 50, 66, 70, 64, 52, 52, 61, 53, 66, 73, 63, 71, 54, 67, 59, 69, 57, 67, 65, 66, 84, 63, 65, 50, 64, 59, 63, 85, 58, 64, 63, 84, 72, 64, 47, 67, 68, 73, 80, 58, 52, 72, 61, 57, 52, 65, 96, 52, 51, 64, 56, 57, 46, 55, 98, 74, 69, 71, 45, 65, 82, 57, 69, 65, 66, 75, 52, 80, 59, 78, 93, 99, 102, 76, 44, 81, 58, 50, 63, 69, 59, 64, 77, 59, 68, 54, 71, 68, 76, 59, 65, 67, 55, 70, 56, 53, 62, 73, 64, 65, 59, 92, 65, 79, 67, 77, 67, 61, 68, 88, 68, 68, 66, 68, 44, 68, 66, 76, 51, 62, 75, 77, 71, 63, 58, 60, 64, 74, 57, 96, 76, 46, 56, 57, 67, 51, 79, 76, 60, 49, 80, 84, 59, 51, 54, 52, 55, 80, 102, 47, 60, 56, 58, 60, 62, 93, 53, 56, 58, 50, 93, 69, 87, 61, 62, 60, 58, 73, 57, 63, 87, 75, 63, 60, 56, 59, 76, 56, 56, 47, 66, 56, 57, 80, 65, 71, 56, 54, 72, 70, 54, 78, 70, 68, 51, 53, 56, 60, 46, 58, 74, 76, 83, 63, 58, 47, 72, 69, 56, 60, 59, 81, 56, 98, 65, 59, 78, 58, 77, 57, 63, 66, 63, 57, 79, 52, 86, 62, 49, 74, 113, 52, 74, 58, 64, 53, 71, 63, 53, 57, 60, 68, 73, 76, 56, 58, 62, 68, 52, 73, 76, 63, 85, 85, 57, 54, 67, 67, 58, 60, 63, 66, 74, 74, 61, 55, 64, 71, 54, 70, 57, 58, 62, 86, 53, 55, 57, 59, 53, 73, 70, 67, 68, 57, 69, 65, 69, 55, 67, 54, 52, 57, 55, 50, 62, 72, 59, 66, 49, 49, 57, 76, 61, 68, 75, 64, 60, 64, 60, 50, 87, 51, 60, 63, 69, 91, 65, 49, 48, 59, 59, 60, 54, 92, 75, 58, 52, 63, 84, 66, 72, 83, 52, 52, 66, 59, 53, 74, 56, 136, 45, 59, 67, 69, 80, 56, 64, 53, 53, 113, 74, 57, 64, 76, 54, 71, 59, 62, 47, 57, 54, 73, 78, 67, 63, 49, 60, 65, 65, 56, 78, 46, 103, 72, 47, 111, 63, 67, 76, 51, 58, 54, 54, 61, 63, 59, 72, 60, 70, 56, 45, 61, 56, 59, 85, 58, 84, 96, 67, 62, 79, 72, 60, 49, 85, 61, 60, 61, 70, 52, 72, 55, 76, 60, 64, 85, 68, 61, 44, 51, 65, 60, 69, 77, 59, 43, 81, 66, 60, 50, 92, 54, 69, 68, 54, 63, 78, 55, 68, 70, 108, 75, 45, 74, 64, 65, 61, 69, 72, 62, 102, 61, 77, 57, 63, 54, 56, 74, 54, 68, 59, 55, 74, 72, 61, 67, 72, 64, 42, 79, 51, 79, 72, 46, 90, 73, 71, 62, 63, 72, 55, 42, 59, 58, 49, 64, 47, 67, 58, 68, 66, 66, 63, 63, 56, 68, 59, 67, 59, 76, 84, 61, 66, 65, 49, 58, 92, 66, 61, 86, 52, 40, 66, 77, 78, 76, 66, 65, 58, 68, 71, 60, 51, 62, 99, 77, 65, 40, 68, 52, 64, 82, 58, 63, 73, 77, 63, 50, 74, 83, 58, 92, 71, 62, 54, 68, 57, 51, 74, 60, 73, 56, 81, 75, 78, 61, 50, 100, 65, 54, 50, 89, 65, 65, 51, 66, 81, 57, 79, 64, 72, 81, 77, 57, 69, 76, 63, 61, 60, 73, 66, 64, 50, 127, 68, 68, 35, 75, 68, 49, 61, 62, 75, 62, 41, 62, 51, 54, 66, 62, 61, 72, 63, 66, 63, 74, 78, 79, 86, 58, 52, 63, 94, 53, 73, 79, 53, 51, 63, 61, 54, 70, 63, 60, 48, 58, 60, 55, 51, 71, 51, 73, 63, 64, 83, 58, 73, 63, 116, 62, 65, 76, 71, 66, 62, 77, 70, 37, 62, 70, 80, 65, 52, 60, 62, 64, 55, 62, 52, 84, 59, 67, 85, 47, 64, 81, 46, 62, 47, 78, 64, 49, 83, 84, 55, 101, 64, 79, 71, 52, 57, 56, 59, 76, 67, 53, 83, 79, 62, 59, 81, 53, 64, 53, 51, 65, 63, 68, 62, 64, 77, 78, 64, 72, 61, 70, 60, 80, 91, 53, 66, 61, 84, 72, 63, 51, 64, 58, 43, 63, 74, 52, 71, 73, 51, 54, 91, 65, 72, 62, 55, 66, 73, 71, 101, 33, 75, 72, 72, 81, 75, 57, 61, 108, 77, 72, 87, 66, 85, 89, 60, 61, 74, 73, 61, 67, 57, 73, 59, 54, 56, 68, 37, 56, 67, 67, 107, 65, 48, 57, 66, 43, 55, 56, 67, 67, 79, 84, 84, 60, 62, 102, 83, 86, 54, 74, 80, 89, 70, 62, 60, 60, 53, 83, 51, 49, 84, 69, 73, 58, 62, 65, 51, 66, 79, 53, 68, 65, 77, 60, 78, 72, 59, 39, 93, 54, 63, 59, 71, 75, 49, 90, 56, 70, 63, 64, 60, 48, 70, 68, 76, 63, 67, 100, 87, 68, 51, 71, 82, 56, 62, 54, 57, 107, 54, 56, 75, 70, 77, 75, 74, 94, 63, 62, 74, 52, 87, 61, 63, 65, 65, 65, 62, 62, 62, 49, 60, 85, 57, 51, 58, 67, 76, 51, 52, 76, 66, 52, 50, 74, 74, 53, 57, 46, 70, 82, 60, 62, 63, 47, 70, 71, 73, 49, 59, 51, 62, 64, 57, 91, 73, 62, 82, 71, 51, 130, 53, 52, 49, 67, 43, 71, 80, 78, 67, 45, 67, 76, 101, 66, 60, 77, 77, 69, 65, 57, 66, 91, 53, 66, 64, 59, 47, 76, 69, 47, 54, 69, 78, 61, 78, 81, 61, 50, 59, 77, 63, 63, 81, 60, 138, 60, 64, 55, 74, 65, 47, 61, 90, 62, 47, 53, 46, 76, 101, 61, 66, 54, 48, 60, 58, 91, 60, 58, 68, 68, 72, 80, 100, 76, 92, 51, 75, 54, 59, 70, 57, 59, 64, 71, 74, 72, 75, 51, 90, 52, 64, 67, 87, 67, 100, 69, 62, 44, 59, 45, 85, 73, 68, 88, 63, 66, 61, 85, 74, 68, 61, 37, 70, 29, 60, 68, 53, 56, 68, 86, 53, 65, 83, 65, 59, 61, 57, 53, 73, 71, 61, 63, 52, 72, 68, 59, 55, 54, 50, 47, 66, 58, 51, 66, 63, 58, 64, 68, 77, 69, 72, 51, 63, 100, 65, 79, 71, 75, 64, 63, 56, 39, 68, 80, 68, 62, 79, 49, 52, 66, 56, 52, 70, 68, 62, 34, 83, 75, 93, 63, 53, 47, 84, 75, 79, 63, 53, 57, 78, 86, 42, 52, 61, 69, 55, 48, 61, 70, 59, 66, 69, 69, 59, 58, 65, 59, 47, 75, 60, 82, 90, 105, 65, 62, 75, 97, 48, 50, 76, 62, 71, 64, 80, 55, 67, 57, 63, 86, 68, 85, 61, 76, 51, 76, 92, 63, 73, 72, 64, 54, 66, 52, 62, 60, 67, 55, 59, 76, 65, 81, 68, 54, 44, 67, 81, 79, 59, 54, 76, 64, 65, 66, 74, 85, 82, 74, 50, 60, 75, 72, 57, 64, 65, 40, 78, 62, 65, 54, 70, 82, 63, 44, 58, 46, 70, 50, 59, 53, 76, 64, 64, 56, 81, 59, 63, 63, 90, 59, 79, 44, 56, 56, 80, 83, 74, 65, 56, 47, 61, 53, 72, 54, 60, 52, 50, 55, 65, 54, 54, 66, 37, 72, 88, 85, 92, 73, 56, 61, 59, 61, 63, 65, 68, 50, 98, 74, 72, 67, 59, 80, 85, 70, 59, 82, 111, 58, 58, 75, 70, 53, 45, 52, 50, 70, 50, 78, 58, 80, 68, 72, 48, 68, 64, 61, 48, 80, 66, 71, 106, 58, 112, 67, 75, 73, 70, 58, 72, 56, 78, 68, 48, 77, 67, 77, 66, 74, 56, 59, 73, 58, 86, 74, 67, 55, 55, 99, 56, 76, 74, 79, 79, 61, 55, 77, 69, 66, 56, 71, 78, 79, 54, 68, 55, 64, 74, 69, 63, 113, 60, 90, 71, 53, 57, 62, 57, 61, 68, 62, 69, 93, 61, 64, 57, 104, 77, 63, 75, 61, 95, 85, 72, 55, 63, 53, 69, 70, 49, 63, 85, 87, 61, 55, 72, 84, 68, 54, 45, 89, 56, 82, 87, 82, 58, 70, 59, 54, 61, 77, 51, 61, 64, 67, 78, 59, 72, 94, 71, 63, 69, 85, 68, 64, 49, 72, 69, 57, 69, 58, 70, 73, 74, 56, 66, 67, 76, 63, 55, 66, 65, 69, 62, 61, 67, 57, 58, 55, 51, 54, 55, 63, 85, 60, 55, 54, 56, 61, 54, 58, 71, 69, 56, 59, 81, 48, 70, 56, 58, 54, 94, 62, 51, 57, 89, 73, 57, 62, 77, 64, 50, 59, 65, 97, 56, 63, 92, 53, 58, 63, 78, 60, 65, 48, 50, 65, 71, 72, 55, 85, 63, 81, 73, 61, 67, 79, 83, 66, 87, 87, 41, 64, 60, 79, 86, 81, 66, 55, 71, 81, 51, 58, 59, 64, 59, 62, 84, 61, 55, 66, 56, 65, 66, 65, 103, 54, 52, 68, 67, 104, 59, 56, 57, 60, 55, 57, 59, 69, 68, 60, 48, 61, 70, 51, 59, 95, 79, 59, 70, 61, 65, 96, 69, 58, 66, 54, 57, 67, 112, 53, 59, 59, 63, 75, 102, 54, 75, 56, 65, 63, 80, 72, 51, 69, 60, 62, 63, 76, 49, 68, 50, 64, 61, 61, 80, 78, 98, 47, 82, 52, 55, 61, 56, 51, 78, 51, 72, 61, 71, 64, 56, 68, 59, 81, 91, 70, 113, 46, 59, 59, 51, 77, 97, 69, 67, 50, 82, 71, 75, 57, 53, 53, 76, 62, 70, 54, 64, 68, 60, 63, 58, 55, 61, 113, 63, 68, 51, 70, 59, 67, 52, 70, 74, 56, 56, 83, 72, 54, 45, 66, 73, 60, 48, 75, 55, 72, 94, 58, 100, 55, 53, 54, 65, 62, 53, 62, 57, 71, 63, 65, 61, 86, 74, 60, 64, 65, 60, 61, 60, 56, 77, 60, 61, 60, 50, 63, 63, 60, 80, 58, 61, 59, 54, 74, 65, 69, 116, 59, 67, 61, 97, 60, 62, 51, 72, 75, 58, 61, 73, 66, 82, 58, 71, 60, 52, 82, 58, 57, 53, 59, 74, 49, 68, 64, 55, 109, 54, 78, 82, 63, 58, 88, 69, 67, 85, 75, 51, 87, 80, 49, 69, 62, 65, 58, 55, 66, 69, 55, 63, 63, 70, 52, 89, 66, 59, 90, 56, 58, 65, 53, 69, 54, 76, 49, 59, 51, 67, 52, 61, 57, 91, 66, 49, 55, 71, 59, 151, 130, 51, 64, 45, 60, 69, 57, 65, 67, 50, 71, 59, 62, 55, 61, 67, 69, 62, 95, 62, 62, 56, 85, 85, 63, 89, 74, 52, 62, 65, 49, 69, 57, 60, 66, 72, 89, 57, 61, 57, 72, 76, 47, 55, 68, 45, 58, 65, 59, 72, 59, 90, 82, 56, 70, 77, 107, 53, 68, 116, 63, 99, 60, 83, 76, 64, 77, 78, 106, 58, 59, 78, 73, 59, 51, 51, 77, 72, 71, 104, 65, 66, 50, 70, 54, 72, 63, 115, 81, 66, 67, 65, 75, 66, 69, 54, 66, 66, 94, 88, 50, 87, 55, 60, 53, 67, 77, 55, 62, 65, 79, 62, 62, 56, 62, 49, 85, 68, 66, 65, 67, 101, 68, 64, 67, 67, 82, 68, 62, 60, 74, 66, 66, 62, 64, 64, 58, 78, 57, 70, 61, 56, 58, 58, 80, 74, 54, 56, 76, 67, 60, 54, 77, 56, 68, 84, 55, 64, 69, 70, 116, 61, 78, 64, 102, 65, 82, 65, 64, 49, 53, 78, 68, 57, 52, 68, 80, 60, 116, 58, 76, 65, 58, 52, 70, 63, 47, 61, 56, 78, 74, 54, 60, 62, 69, 62, 55, 79, 88, 60, 74, 58, 69, 74, 65, 59, 60, 62, 42, 87, 50, 64, 64, 78, 70, 60, 75, 69, 87, 67, 45, 80, 60, 78, 66, 53, 67, 50, 76, 58, 84, 66, 61, 60, 72, 64, 72, 64, 64, 64, 73, 57, 71, 58, 65, 75, 68, 65, 49, 89, 56, 72, 59, 74, 67, 65, 67, 61, 50, 98, 68, 64, 54, 47, 63, 60, 61, 43, 109, 82, 60, 103, 62, 84, 59, 56, 77, 76, 56, 81, 54, 106, 82, 59, 88, 57, 55, 69, 78, 57, 71, 54, 65, 84, 59, 57, 65, 63, 57, 58, 59, 76, 53, 61, 68, 59, 79, 78, 48, 94, 57, 52, 95, 58, 71, 57, 75, 83, 68, 54, 70, 68, 65, 53, 67, 63, 100, 62, 72, 78, 62, 59, 62, 64, 54, 61, 57, 81, 60, 63, 51, 54, 87, 81, 66, 65, 68, 65, 59, 59, 46, 78, 50, 57, 82, 50, 86, 97, 61, 56, 96, 78, 56, 75, 39, 58, 63, 63, 59, 50, 50, 95, 48, 63, 68, 87, 56, 70, 73, 63, 57, 60, 53, 84, 51, 57, 61, 55, 59, 72, 81, 61, 61, 62, 54, 66, 56, 70, 56, 64, 58, 67, 66, 67, 69, 52, 66, 51, 75, 73, 62, 63, 94, 44, 59, 59, 60, 64, 92, 60, 66, 62, 67, 60, 80, 62, 89, 72, 63, 56, 54, 59, 74, 109, 69, 56, 58, 78, 61, 62, 54, 51, 58, 66, 78, 87, 67, 63, 46, 54, 69, 68, 66, 66, 68, 58, 60, 48, 64, 90, 62, 58, 54, 66, 82, 75, 94, 66, 41, 71, 63, 62, 103, 51, 56, 72, 65, 74, 67, 63, 80, 80, 110, 62, 84, 74, 47, 66, 55, 70, 52, 63, 56, 54, 64, 71, 56, 62, 59, 66, 66, 74, 99, 66, 57, 127, 64, 57, 81, 56, 52, 67, 67, 69, 50, 77, 68, 69, 53, 66, 65, 65, 57, 98, 61, 53, 71, 92, 78, 93, 92, 57, 51, 65, 72, 57, 49, 55, 45, 61, 76, 59, 55, 49, 69, 61, 87, 112, 71, 47, 68, 60, 58, 56, 72, 56, 60, 83, 55, 66, 65, 64, 65, 55, 59, 63, 63, 52, 70, 56, 68, 54, 60, 59, 65, 72, 75, 77, 62, 80, 75, 73, 50, 60, 56, 86, 55, 62, 56, 61, 63, 62, 59, 63, 64, 60, 60, 59, 72, 52, 76, 94, 64, 66, 69, 61, 68, 55, 55, 69, 59, 54, 89, 75, 50, 67, 64, 70, 57, 79, 66, 57, 61, 69, 59, 69, 97, 62, 64, 86, 60, 62, 52, 63, 51, 55, 66, 85, 80, 91, 49, 39, 53, 80, 99, 76, 70, 53, 87, 69, 62, 50, 74, 68, 72, 53, 68, 69, 65, 72, 72, 50, 51, 74, 48, 55, 61, 52, 63, 71, 61, 62, 70, 54, 56, 81, 57, 51, 43, 55, 61, 79, 50, 47, 61, 51, 69, 55, 56, 53, 73, 56, 76, 57, 95, 85, 57, 90, 63, 66, 60, 85, 73, 83, 84, 69, 58, 75, 42, 65, 64, 105, 90, 65, 60, 58, 80, 65, 64, 60, 55, 63, 74, 84, 64, 77, 63, 85, 53, 58, 67, 68, 63, 96, 89, 97, 78, 97, 90, 78, 48, 66, 55, 66, 63, 70, 90, 77, 68, 64, 70, 57, 44, 53, 72, 57, 69, 61, 74, 74, 63, 66, 60, 74, 61, 58, 46, 51, 48, 79, 58, 110, 65, 52, 74, 57, 59, 77, 57, 55, 61, 69, 48, 59, 63, 62, 74, 74, 69, 62, 67, 58, 72, 54, 56, 62, 60, 60, 93, 57, 62, 57, 80, 63, 65, 58, 67, 61, 45, 69, 68, 94, 57, 59, 122, 71, 68, 68, 83, 56, 83, 101, 69, 62, 90, 59, 64, 69, 66, 65, 54, 71, 62, 74, 67, 70, 66, 64, 74, 42, 59, 74, 64, 46, 52, 64, 71, 71, 64, 96, 66, 60, 56, 44, 67, 79, 54, 68, 87, 48, 59, 66, 58, 51, 72, 54, 61, 69, 74, 67, 65, 80, 55, 55, 47, 75, 60, 54, 47, 61, 107, 61, 69, 48, 73, 78, 90, 72, 44, 78, 58, 82, 72, 41, 65, 54, 88, 85, 68, 74, 64, 58, 50, 61, 103, 48, 60, 63, 65, 112, 44, 59, 76, 57, 60, 58, 60, 53, 83, 80, 51, 50, 56, 55, 64, 69, 47, 79, 115, 79, 64, 51, 68, 58, 57, 113, 61, 54, 63, 77, 68, 61, 83, 101, 53, 57, 79, 92, 58, 68, 62, 90, 51, 60, 69, 64, 87, 52, 67, 61, 71, 65, 77, 67, 67, 63, 47, 53, 68, 70, 54, 71, 93, 47, 49, 73, 60, 53, 71, 76, 51, 67, 62, 74, 96, 60, 60, 54, 51, 44, 54, 66, 52, 64, 71, 69, 79, 72, 92, 75, 64, 52, 87, 65, 73, 84, 68, 65, 81, 83, 71, 54, 65, 67, 53, 62, 57, 66, 72, 85, 50, 71, 60, 70, 79, 77, 74, 56, 61, 57, 59, 90, 67, 75, 48, 76, 45, 46, 52, 59, 110, 91, 52, 68, 90, 48, 88, 71, 59, 74, 96, 65, 57, 59, 62, 70, 56, 56, 63, 48, 83, 52, 68, 65, 79, 70, 60, 62, 64, 40, 53, 66, 58, 80, 60, 58, 65, 50, 75, 115, 58, 55, 72, 72, 67, 88, 74, 103, 51, 57, 75, 71, 78, 70, 85, 48, 67, 52, 40, 58, 60, 61, 58, 62, 58, 87, 45, 78, 58, 51, 56, 76, 48, 71, 84, 69, 66, 62, 84, 62, 64, 90, 45, 83, 74, 69, 62, 77, 66, 60, 82, 65, 50, 65, 78, 62, 52, 49, 48, 51, 100, 66, 82, 64, 84, 52, 62, 57, 56, 56, 60, 52, 48, 57, 65, 68, 57, 70, 50, 57, 58, 54, 70, 58, 52, 90, 64, 54, 37, 81, 74, 65, 61, 55, 58, 44, 39, 66, 58, 73, 52, 52, 100, 83, 72, 63, 74, 45, 67, 69, 68, 61, 55, 69, 58, 82, 68, 49, 69, 65, 40, 79, 126, 67, 82, 73, 58, 73, 62, 65, 72, 57, 58, 78, 58, 56, 71, 62, 60, 75, 49, 57, 79, 49, 76, 61, 69, 52, 57, 59, 84, 69, 58, 69, 56, 67, 55, 80, 66, 72, 53, 75, 58, 74, 52, 58, 64, 98, 78, 50, 64, 90, 59, 58, 68, 66, 61, 51, 62, 49, 56, 63, 67, 58, 52, 59, 47, 39, 74, 66, 47, 56, 67, 53, 70, 67, 57, 57, 52, 61, 90, 64, 49, 54, 41, 57, 92, 90, 67, 47, 51, 77, 71, 60, 67, 99, 61, 81, 68, 65, 79, 58, 50, 76, 50, 56, 79, 72, 76, 69, 88, 76, 85, 54, 53, 78, 53, 87, 59, 72, 81, 60, 41, 57, 60, 87, 71, 56, 76, 71, 64, 52, 91, 51, 52, 60, 62, 61, 62, 59, 76, 48, 69, 70, 66, 64, 58, 50, 64, 83, 117, 56, 89, 61, 58, 47, 79, 52, 77, 72, 92, 55, 85, 68, 56, 49, 71, 63, 67, 72, 63, 56, 59, 56, 68, 66, 73, 55, 61, 63, 84, 70, 52, 57, 73, 84, 76, 51, 50, 64, 70, 60, 78, 76, 67, 54, 73, 49, 47, 60, 61, 50, 71, 59, 82, 59, 60, 75, 63, 70, 45, 53, 69, 57, 83, 57, 60, 73, 84, 55, 67, 94, 49, 58, 77, 54, 85, 70, 71, 55, 67, 65, 51, 63, 53, 58, 79, 62, 68, 60, 57, 64, 59, 54, 76, 56, 60, 55, 75, 59, 57, 98, 54, 55, 38, 70, 66, 78, 112, 72, 63, 49, 72, 59, 81, 86, 53, 76, 79, 63, 49, 68, 70, 65, 68, 64, 72, 84, 51, 67, 63, 84, 69, 61, 57, 75, 48, 56, 68, 60, 64, 69, 56, 60, 80, 65, 83, 63, 45, 67, 65, 66, 54, 52, 106, 66, 58, 74, 43, 78, 51, 60, 67, 48, 61, 57, 59, 53, 61, 48, 56, 86, 67, 59, 58, 68, 41, 74, 67, 67, 42, 57, 63, 52, 90, 61, 52, 96, 74, 64, 68, 56, 62, 69, 76, 56, 65, 108, 65, 65, 48, 90, 47, 65, 69, 67, 42, 49, 81, 55, 63, 56, 64, 63, 51, 72, 58, 56, 65, 110, 89, 81, 65, 119, 80, 77, 59, 54, 86, 60, 59, 54, 93, 81, 44, 66, 37, 62, 58, 51, 67, 106, 54, 95, 98, 50, 63, 55, 50, 56, 63, 73, 69, 87, 73, 65, 45, 70, 54, 47, 65, 61, 75, 52, 60, 64, 55, 57, 50, 51, 70, 50, 54, 58, 81, 23, 60, 53, 55, 61, 63, 59, 76, 85, 85, 63, 57, 73, 71, 67, 54, 61, 68, 56, 78, 62, 53, 60, 59, 28, 63, 65, 73, 66, 60, 75, 57, 80, 49, 59, 56, 72, 63, 70, 64, 74, 67, 70, 62, 69, 64, 52, 71, 55, 75, 59, 67, 58, 65, 61, 54, 63, 68, 70, 83, 67, 55, 80, 43, 62, 50, 59, 80, 55, 45, 53, 63, 51, 56, 61, 66, 68, 53, 63, 40, 59, 62, 85, 56, 65, 56, 83, 76, 90, 67, 80, 56, 106, 47, 59, 67, 68, 47, 52, 61, 47, 63, 59, 60, 70, 54, 61, 67, 82, 54, 57, 75, 64, 55, 64, 109, 72, 66, 60, 62, 66, 57, 77, 68, 53, 60, 62, 83, 73, 83, 70, 83, 73, 46, 64, 57, 45, 89, 77, 97, 54, 86, 78, 66, 65, 79, 64, 76, 69, 56, 103, 74, 75, 67, 63, 66, 76, 69, 54, 68, 69, 60, 80, 65, 77, 61, 66, 68, 59, 71, 108, 53, 76, 52, 79, 62, 66, 61, 86, 52, 59, 50, 66, 57, 60, 77, 71, 67, 51, 61, 58, 114, 69, 94, 60, 66, 54, 52, 60, 47, 62, 67, 63, 60, 75, 56, 69, 65, 87, 53, 92, 54, 58, 90, 59, 58, 61, 63, 66, 65, 67, 54, 78, 52, 60, 77, 80, 56, 77, 66, 47, 64, 54, 43, 58, 101, 65, 79, 73, 43, 54, 62, 66, 52, 58, 58, 66, 65, 99, 54, 54, 69, 77, 59, 77, 58, 60, 76, 66, 71, 60, 43, 65, 64, 87, 51, 87, 61, 77, 57, 87, 43, 62, 61, 71, 61, 58, 53, 62, 61, 63, 71, 40, 60, 76, 68, 55, 49, 54, 49, 71, 59, 61, 90, 53, 60, 102, 67, 84, 80, 88, 60, 72, 93, 62, 76, 61, 88, 58, 64, 48, 97, 65, 64, 98, 57, 56, 64, 52, 78, 73, 68, 58, 47, 86, 65, 72, 67, 85, 86, 75, 81, 53, 86, 67, 56, 63, 72, 61, 68, 58, 51, 69, 66, 64, 61, 56, 65, 76, 79, 64, 82, 60, 74, 83, 66, 57, 75, 81, 55, 59, 58, 59, 66, 70, 69, 51, 55, 76, 64, 78, 58, 73, 63, 63, 68, 60, 74, 77, 59, 50, 60, 75, 73, 86, 41, 61, 53, 69, 49, 54, 95, 98, 55, 54, 73, 72, 70, 56, 69, 61, 52, 57, 67, 72, 71, 63, 63, 70, 67, 73, 61, 73, 51, 61, 62, 66, 68, 65, 58, 77, 68, 72, 61, 75, 70, 64, 59, 80, 47, 56, 43, 64, 47, 60, 53, 51, 55, 66, 59, 74, 88, 74, 83, 69, 67, 57, 43, 61, 73, 54, 55, 60, 68, 72, 61, 59, 63, 58, 72, 67, 66, 56, 68, 55, 53, 47, 61, 87, 71, 50, 70, 64, 60, 72, 94, 56, 70, 62, 66, 52, 65, 81, 55, 65, 53, 61, 58, 64, 71, 62, 63, 66, 66, 81, 68, 55, 63, 68, 69, 59, 63, 58, 72, 73, 66, 85, 68, 69, 55, 80, 105, 77, 54, 54, 54, 59, 59, 90, 56, 76, 70, 72, 68, 57, 63, 96, 54, 83, 55, 86, 58, 56, 67, 70, 68, 70, 82, 62, 88, 52, 65, 86, 60, 53, 73, 70, 84, 65, 68, 49, 57, 53, 61, 54, 69, 65, 59, 56, 71, 51, 54, 65, 72, 62, 54, 81, 86, 71, 69, 87, 69, 68, 61, 51, 94, 85, 55, 91, 46, 73, 61, 59, 73, 71, 81, 63, 76, 62, 51, 50, 73, 60, 50, 89, 76, 66, 67, 79, 79, 69, 59, 68, 101, 66, 66, 62, 60, 53, 108, 68, 56, 64, 59, 59, 72, 72, 54, 68, 62, 65, 49, 76, 58, 53, 93, 64, 61, 54, 44, 70, 59, 62, 74, 71, 67, 58, 58, 69, 64, 53, 50, 65, 53, 64, 57, 131, 96, 59, 48, 56, 66, 74, 62, 65, 76, 82, 62, 58, 70, 61, 51, 67, 59, 56, 67, 66, 61, 66, 70, 50, 61, 79, 59, 56, 74, 47, 61, 75, 70, 64, 69, 74, 71, 44, 49, 65, 90, 52, 54, 72, 67, 73, 71, 73, 45, 131, 94, 68, 66, 61, 64, 51, 65, 66, 110, 63, 74, 57, 90, 37, 66, 66, 46, 78, 73, 72, 76, 65, 108, 73, 80, 81, 64, 74, 51, 70, 71, 54, 51, 104, 74, 54, 60, 73, 66, 59, 45, 65, 57, 57, 63, 139, 58, 46, 44, 68, 87, 69, 140, 69, 54, 66, 62, 65, 72, 50, 59, 61, 53, 66, 74, 77, 63, 60, 59, 71, 46, 66, 54, 54, 64, 66, 59, 65, 79, 72, 84, 64, 66, 78, 71, 71, 66, 69, 68, 75, 94, 57, 70, 52, 74, 47, 65, 56, 59, 54, 67, 46, 64, 61, 49, 56, 81, 62, 66, 61, 74, 87, 68, 66, 55, 64, 51, 58, 70, 79, 80, 59, 59, 71, 58, 54, 66, 59, 62, 66, 74, 60, 59, 72, 51, 70, 68, 55, 53, 61, 72, 67, 55, 64, 65, 61, 41, 68, 56, 60, 62, 69, 77, 76, 63, 79, 60, 62, 70, 70, 56, 70, 49, 66, 98, 68, 74, 82, 51, 71, 76, 60, 58, 76, 54, 67, 57, 63, 59, 87, 58, 57, 60, 52, 75, 62, 70, 54, 69, 51, 59, 67, 71, 67, 76, 87, 69, 71, 59, 76, 62, 61, 95, 85, 53, 65, 67, 64, 55, 54, 55, 55, 69, 57, 55, 68, 79, 52, 62, 56, 81, 59, 50, 60, 75, 83, 62, 90, 49, 58, 64, 100, 78, 65, 53, 56, 65, 69, 91, 55, 68, 51, 52, 62, 63, 50, 56, 66, 68, 80, 68, 64, 70, 43, 66, 85, 80, 65, 51, 50, 61, 56, 63, 68, 89, 49, 69, 56, 59, 52, 59, 91, 125, 64, 62, 71, 67, 60, 62, 53, 81, 47, 60, 62, 84, 58, 75, 63, 57, 67, 89, 51, 94, 66, 72, 68, 64, 49, 74, 88, 76, 58, 82, 59, 69, 64, 67, 66, 51, 59, 65, 61, 84, 61, 68, 67, 57, 66, 62, 58, 51, 62, 62, 69, 46, 56, 71, 59, 58, 80, 50, 69, 75, 66, 78, 57, 91, 70, 64, 57, 55, 55, 54, 42, 68, 58, 58, 61, 59, 65, 48, 56, 93, 59, 64, 67, 70, 82, 56, 47, 53, 60, 47, 59, 63, 68, 68, 68, 57, 62, 59, 56, 78, 54, 60, 46, 77, 78, 77, 52, 80, 57, 73, 65, 70, 72, 54, 51, 100, 54, 66, 57, 64, 63, 72, 70, 61, 70, 62, 60, 59, 67, 72, 92, 48, 49, 60, 58, 58, 90, 75, 70, 60, 67, 42, 76, 45, 62, 56, 90, 68, 79, 59, 53, 64, 62, 63, 39, 49, 53, 57, 59, 72, 60, 84, 70, 66, 42, 47, 81, 61, 73, 78, 56, 59, 57, 82, 71, 63, 43, 71, 64, 76, 45, 71, 64, 59, 61, 54, 74, 76, 59, 64, 49, 94, 68, 83, 62, 51, 52, 58, 49, 63, 51, 66, 53, 60, 78, 69, 57, 64, 68, 59, 59, 55, 61, 58, 50, 67, 82, 55, 75, 62, 78, 55, 55, 71, 96, 55, 66, 60, 58, 74, 55, 60, 62, 51, 56, 65, 47, 69, 70, 42, 58, 77, 71, 56, 80, 61, 50, 70, 75, 61, 75, 86, 59, 62, 70, 65, 59, 67, 65, 63, 68, 79, 65, 46, 82, 69, 59, 63, 54, 79, 55, 58, 69, 69, 76, 55, 62, 61, 83, 53, 58, 83, 54, 79, 67, 75, 55, 69, 61, 91, 60, 61, 57, 71, 39, 55, 65, 72, 78, 55, 68, 50, 108, 59, 54, 65, 94, 72, 75, 55, 54, 68, 59, 54, 62, 82, 68, 62, 66, 60, 76, 63, 51, 64, 63, 58, 75, 68, 50, 66, 54, 62, 72, 75, 64, 90, 65, 77, 90, 75, 54, 37, 91, 51, 64, 51, 60, 78, 56, 69, 60, 83, 62, 68, 52, 53, 61, 75, 74, 69, 77, 55, 69, 72, 76, 61, 65, 62, 59, 65, 48, 56, 75, 47, 87, 57, 74, 65, 70, 48, 64, 62, 85, 82, 73, 63, 56, 50, 82, 69, 67, 63, 55, 89, 75, 63, 107, 64, 61, 67, 84, 76, 57, 56, 78, 87, 63, 70, 64, 63, 58, 57, 74, 63, 82, 55, 67, 48, 70, 60, 82, 51, 60, 66, 70, 70, 63, 82, 65, 83, 91, 83, 66, 54, 70, 53, 63, 46, 88, 54, 63, 63, 70, 52, 69, 58, 152, 68, 65, 58, 46, 86, 55, 50, 68, 84, 49, 74, 63, 57, 59, 87, 73, 74, 66, 67, 86, 63, 61, 61, 67, 56, 69, 63, 61, 53, 73, 66, 69, 76, 47, 55, 64, 56, 38, 48, 63, 64, 72, 64, 53, 73, 55, 55, 51, 83, 64, 51, 56, 68, 63, 56, 79, 68, 56, 58, 70, 72, 70, 82, 71, 58, 59, 60, 74, 63, 63, 81, 68, 58, 39, 58, 73, 56, 50, 56, 46, 67, 86, 93, 65, 57, 89, 58, 40, 70, 96, 46, 82, 74, 80, 74, 50, 71, 68, 103, 60, 61, 59, 58, 49, 54, 73, 105, 69, 78, 66, 55, 86, 65, 61, 47, 71, 57, 110, 86, 62, 68, 64, 65, 63, 60, 64, 77, 50, 66, 63, 69, 63, 60, 63, 76, 83, 59, 77, 47, 70, 62, 68, 76, 81, 74, 48, 82, 67, 63, 68, 84, 67, 56, 65, 46, 62, 82, 80, 74, 54, 58, 71, 60, 57, 78, 50, 71, 56, 68, 66, 61, 69, 54, 57, 76, 70, 58, 49, 57, 56, 66, 64, 48, 55, 64, 81, 62, 102, 54, 66, 86, 77, 80, 68, 69, 66, 61, 44, 58, 45, 64, 57, 103, 61, 95, 46, 74, 50, 57, 56, 73, 61, 61, 47, 78, 53, 76, 45, 67, 64, 66, 61, 67, 63, 95, 78, 46, 55, 75, 47, 45, 65, 55, 62, 51, 60, 57, 54, 59, 58, 75, 63, 66, 49, 77, 60, 83, 58, 52, 80, 40, 58, 56, 90, 97, 63, 60, 68, 58, 54, 55, 58, 51, 65, 66, 58, 72, 78, 57, 52, 57, 63, 61, 61, 70, 65, 84, 66, 63, 75, 78, 70, 86, 63, 65, 69, 61, 64, 56, 65, 82, 60, 55, 50, 60, 56, 48, 53, 77, 83, 70, 85, 63, 109, 59, 81, 73, 68, 75, 75, 50, 76, 122, 51, 62, 65, 60, 71, 69, 80, 90, 50, 61, 88, 68, 48, 79, 48, 108, 58, 53, 66, 54, 64, 84, 68, 74, 134, 61, 64, 71, 54, 62, 60, 73, 83, 72, 57, 81, 134, 72, 61, 50, 61, 64, 73, 143, 62, 43, 71, 53, 56, 94, 57, 63, 77, 54, 52, 68, 74, 57, 69, 50, 46, 61, 71, 58, 80, 69, 63, 63, 69, 66, 65, 79, 54, 54, 74, 83, 89, 59, 62, 59, 72, 58, 53, 53, 82, 65, 54, 61, 74, 50, 66, 67, 71, 71, 63, 67, 42, 113, 59, 64, 108, 55, 63, 53, 48, 63, 55, 70, 55, 94, 63, 46, 54, 54, 82, 79, 55, 83, 61, 73, 77, 53, 84, 71, 64, 66, 52, 56, 60, 65, 79, 56, 46, 62, 57, 85, 49, 57, 61, 57, 59, 71, 84, 67, 69, 63, 60, 62, 69, 63, 72, 57, 66, 64, 70, 116, 52, 65, 53, 44, 60, 52, 91, 75, 91, 58, 75, 59, 70, 58, 93, 69, 59, 51, 67, 56, 52, 69, 62, 56, 50, 76, 66, 89, 50, 73, 59, 64, 57, 73, 79, 56, 45, 90, 80, 56, 68, 64, 63, 72, 77, 52, 57, 76, 57, 56, 67, 64, 71, 71, 69, 63, 66, 57, 71, 50, 103, 61, 65, 105, 58, 62, 120, 54, 52, 73, 69, 65, 65, 72, 58, 76, 74, 65, 52, 62, 54, 72, 78, 58, 67, 62, 61, 56, 86, 58, 107, 96, 53, 55, 92, 68, 74, 77, 74, 58, 79, 58, 64, 82, 63, 54, 69, 91, 72, 56, 47, 51, 73, 64, 59, 55, 78, 61, 83, 52, 46, 60, 70, 60, 51, 73, 62, 50, 88, 49, 69, 67, 67, 67, 73, 63, 59, 67, 65, 44, 57, 78, 61, 63, 56, 77, 47, 63, 62, 47, 80, 73, 60, 78, 69, 62, 75, 76, 67, 59, 55, 80, 72, 62, 95, 64, 65, 67, 72, 55, 83, 73, 61, 75, 64, 78, 61, 67, 61, 64, 57, 74, 48, 68, 69, 69, 52, 61, 80, 44, 68, 55, 86, 77, 74, 62, 56, 67, 69, 80, 71, 83, 61, 62, 76, 67, 63, 63, 60, 66, 60, 60, 60, 91, 76, 61, 61, 55, 59, 58, 70, 74, 65, 75, 106, 62, 94, 61, 60, 69, 65, 55, 60, 58, 52, 59, 47, 95, 65, 69, 62, 107, 70, 62, 38, 62, 55, 72, 49, 56, 70, 57, 58, 73, 86, 63, 58, 72, 54, 54, 65, 77, 56, 52, 65, 53, 70, 74, 58, 55, 53, 72, 84, 48, 62, 57, 60, 77, 60, 60, 65, 61, 59, 53, 59, 83, 59, 69, 84, 94, 62, 83, 58, 64, 61, 85, 55, 56, 59, 92, 59, 69, 57, 55, 89, 64, 57, 55, 94, 62, 63, 55, 52, 102, 65, 69, 47, 76, 63, 56, 80, 58, 56, 56, 101, 65, 55, 61, 60, 63, 62, 84, 84, 71, 58, 53, 56, 82, 87, 60, 93, 63, 66, 48, 81, 54, 70, 69, 65, 101, 90, 54, 69, 88, 85, 91, 48, 50, 47, 56, 58, 49, 72, 76, 60, 51, 70, 57, 70, 71, 70, 76, 62, 65, 71, 73, 72, 51, 56, 54, 74, 63, 69, 64, 64, 67, 86, 74, 57, 55, 55, 76, 79, 50, 60, 74, 53, 73, 71, 70, 53, 60, 72, 82, 81, 79, 64, 57, 58, 67, 109, 86, 54, 77, 71, 58, 48, 68, 51, 67, 65, 58, 51, 58, 78, 61, 88, 58, 65, 74, 71, 75, 54, 73, 117, 78, 55, 67, 48, 75, 59, 55, 65, 71, 76, 61, 41, 59, 57, 105, 43, 66, 61, 63, 67, 58, 57, 76, 70, 72, 89, 73, 65, 66, 55, 75, 53, 75, 62, 53, 69, 58, 72, 86, 64, 58, 99, 53, 67, 76, 93, 58, 44, 56, 48, 57, 54, 71, 54, 82, 55, 68, 64, 64, 64, 78, 100, 49, 62, 70, 58, 140, 73, 59, 102, 70, 73, 55, 66, 61, 92, 55, 59, 77, 65, 56, 53, 51, 65, 71, 65, 49, 57, 77, 66, 97, 58, 59, 58, 72, 70, 59, 72, 81, 81, 77, 54, 74, 59, 61, 58, 66, 58, 48, 86, 58, 50, 52, 67, 68, 61, 61, 63, 67, 96, 63, 56, 60, 70, 59, 66, 55, 74, 59, 50, 63, 111, 54, 69, 81, 61, 75, 89, 65, 48, 57, 59, 58, 57, 80, 54, 62, 76, 65, 58, 59, 54, 71, 58, 55, 67, 62, 71, 70, 59, 58, 71, 57, 64, 52, 58, 60, 57, 76, 65, 75, 62, 69, 80, 50, 83, 55, 46, 57, 66, 73, 62, 65, 68, 54, 61, 96, 68, 61, 62, 54, 55, 49, 70, 74, 57, 66, 86, 83, 61, 75, 63, 60, 61, 45, 52, 50, 68, 74, 98, 89, 65, 71, 94, 67, 60, 74, 62, 69, 59, 64, 78, 54, 59, 80, 63, 81, 56, 79, 57, 56, 61, 65, 76, 61, 64, 61, 69, 74, 55, 55, 75, 71, 58, 62, 62, 50, 52, 77, 61, 51, 67, 62, 59, 56, 58, 55, 76, 68, 70, 60, 62, 63, 51, 42, 55, 43, 58, 58, 76, 68, 67, 51, 63, 55, 75, 89, 49, 60, 78, 54, 55, 81, 65, 71, 73, 77, 54, 56, 49, 57, 63, 49, 85, 109, 101, 84, 83, 76, 75, 61, 57, 99, 60, 57, 65, 58, 62, 55, 71, 64, 70, 68, 59, 68, 52, 72, 58, 57, 57, 72, 78, 92, 66, 63, 74, 103, 56, 83, 61, 83, 60, 47, 58, 57, 77, 74, 66, 56, 63, 62, 68, 55, 88, 68, 51, 73, 61, 54, 72, 67, 61, 52, 67, 66, 50, 52, 70, 48, 56, 64, 77, 53, 60, 72, 96, 75, 54, 66, 65, 47, 55, 72, 57, 77, 57, 61, 52, 75, 68, 62, 83, 52, 73, 76, 57, 87, 63, 91, 62, 73, 71, 66, 53, 42, 65, 62, 70, 61, 62, 66, 58, 71, 54, 53, 76, 64, 60, 62, 68, 59, 53, 83, 51, 69, 79, 113, 51, 76, 109, 77, 67, 61, 51, 66, 66, 56, 69, 63, 64, 52, 65, 118, 56, 83, 60, 64, 63, 59, 48, 63, 63, 82, 73, 57, 64, 103, 52, 48, 70, 74, 92, 43, 59, 51, 76, 51, 76, 77, 57, 56, 64, 48, 82, 42, 84, 73, 39, 57, 92, 65, 64, 54, 59, 49, 64, 113, 43, 76, 69, 65, 62, 62, 48, 57, 75, 53, 63, 66, 76, 67, 83, 76, 59, 69, 65, 68, 54, 70, 61, 64, 62, 64, 89, 71, 69, 60, 76, 59, 82, 59, 98, 51, 53, 98, 64, 72, 65, 86, 64, 56, 54, 68, 57, 48, 61, 73, 74, 62, 66, 68, 67, 60, 74, 56, 62, 64, 60, 66, 55, 94, 97, 69, 66, 56, 72, 59, 62, 56, 71, 48, 65, 64, 72, 84, 45, 65, 72, 48, 68, 77, 60, 68, 60, 62, 51, 75, 59, 48, 73, 55, 69, 55, 49, 89, 65, 79, 83, 54, 51, 74, 71, 54, 77, 54, 53, 88, 63, 58, 71, 72, 81, 68, 53, 74, 71, 76, 57, 63, 89, 51, 50, 53, 79, 63, 82, 66, 52, 61, 72, 86, 49, 54, 93, 85, 58, 65, 56, 61, 65, 60, 60, 51, 78, 57, 73, 70, 76, 91, 73, 62, 84, 43, 51, 69, 68, 64, 58, 51, 56, 81, 114, 53, 66, 74, 67, 63, 53, 78, 64, 60, 80, 67, 67, 64, 98, 57, 58, 46, 68, 61, 67, 62, 69, 58, 67, 44, 59, 52, 66, 64, 81, 67, 73, 78, 74, 58, 74, 72, 83, 52, 58, 64, 68, 52, 80, 71, 101, 71, 81, 48, 78, 64, 51, 58, 97, 90, 65, 69, 59, 54, 69, 63, 75, 79, 76, 64, 55, 73, 53, 58, 53, 87, 67, 84, 63, 58, 65, 66, 50, 54, 45, 57, 78, 71, 64, 43, 88, 75, 134, 66, 67, 57, 57, 65, 66, 39, 55, 64, 70, 114, 57, 70, 65, 67, 67, 73, 58, 89, 64, 62, 53, 56, 76, 60, 81, 58, 45, 83, 58, 42, 46, 76, 61, 59, 50, 61, 66, 62, 64, 66, 59, 55, 59, 80, 78, 67, 56, 62, 54, 69, 52, 53, 49, 63, 52, 54, 58, 89, 78, 40, 94, 67, 39, 50, 43, 77, 60, 66, 70, 68, 63, 83, 46, 54, 66, 61, 73, 63, 56, 65, 60, 71, 56, 54, 69, 42, 51, 61, 60, 71, 50, 58, 77, 68, 76, 65, 65, 57, 70, 47, 58, 77, 66, 52, 96, 66, 64, 58, 70, 96, 53, 59, 111, 161, 69, 63, 59, 64, 65, 67, 47, 58, 56, 66, 73, 62, 60, 50, 107, 59, 45, 65, 63, 57, 55, 83, 46, 61, 63, 64, 67, 69, 61, 72, 51, 74, 62, 67, 72, 67, 40, 71, 70, 56, 59, 52, 62, 81, 44, 60, 46, 73, 76, 68, 71, 61, 69, 62, 68, 78, 71, 110, 77, 58, 54, 80, 59, 80, 35, 68, 56, 79, 84, 69, 46, 78, 62, 66, 64, 86, 93, 55, 43, 64, 51, 85, 105, 60, 82, 63, 109, 50, 55, 55, 60, 52, 80, 58, 84, 53, 71, 77, 75, 53, 57, 88, 23, 94, 72, 40, 64, 52, 109, 63, 85, 49, 55, 44, 73, 99, 89, 57, 60, 79, 61, 60, 100, 71, 57, 68, 79, 67, 57, 76, 57, 69, 49, 54, 61, 58, 69, 117, 62, 70, 93, 76, 56, 77, 42, 55, 77, 60, 65, 67, 71, 66, 64, 60, 82, 62, 40, 73, 74, 51, 64, 66, 57, 69, 65, 67, 60, 62, 50, 65, 44, 62, 81, 61, 86, 80, 89, 45, 70, 94, 50, 58, 60, 55, 46, 82, 61, 85, 52, 70, 63, 86, 56, 63, 57, 56, 62, 68, 56, 48, 61, 71, 45, 56, 61, 54, 58, 64, 63, 57, 74, 53, 62, 45, 34, 61, 61, 54, 47, 69, 81, 67, 95, 57, 100, 46, 79, 46, 71, 59, 81, 50, 70, 62, 61, 58, 62, 70, 72, 64, 99, 64, 66, 58, 72, 69, 62, 51, 80, 47, 72, 66, 55, 70, 114, 82, 77, 75, 66, 66, 50, 54, 66, 56, 83, 77, 48, 78, 56, 51, 75, 73, 47, 62, 62, 80, 81, 51, 58, 73, 68, 53, 55, 60, 64, 64, 87, 56, 58, 64, 57, 66, 75, 78, 48, 40, 58, 110, 75, 61, 71, 52, 49, 50, 68, 50, 49, 73, 48, 66, 93, 69, 52, 87, 66, 72, 75, 50, 69, 54, 52, 82, 92, 45, 54, 51, 70, 46, 80, 85, 55, 55, 67, 53, 59, 59, 60, 61, 66, 73, 76, 73, 66, 57, 72, 66, 67, 88, 67, 63, 41, 88, 77, 46, 63, 90, 73, 64, 44, 66, 48, 85, 60, 44, 64, 92, 109, 58, 58, 68, 61, 66, 36, 74, 76, 45, 61, 54, 78, 79, 56, 65, 57, 75, 93, 52, 80, 69, 104, 71, 54, 69, 106, 87, 74, 71, 58, 50, 71, 48, 74, 86, 53, 53, 53, 46, 68, 59, 73, 92, 62, 66, 98, 59, 57, 63, 71, 77, 61, 63, 62, 61, 71, 62, 65, 59, 77, 62, 50, 55, 61, 60, 83, 67, 77, 73, 71, 52, 76, 76, 76, 84, 55, 70, 67, 72, 72, 57, 71, 75, 51, 51, 57, 77, 47, 101, 81, 68, 49, 69, 62, 52, 74, 58, 64, 67, 58, 57, 68, 62, 44, 52, 58, 85, 77, 58, 45, 43, 63, 47, 67, 51, 62, 58, 106, 74, 62, 76, 58, 81, 62, 69, 60, 81, 60, 43, 59, 78, 58, 110, 78, 85, 55, 60, 61, 75, 67, 75, 68, 82, 78, 65, 59, 46, 73, 30, 52, 63, 96, 42, 94, 65, 48, 80, 63, 55, 67, 99, 48, 70, 74, 63, 51, 76, 57, 49, 71, 67, 63, 55, 80, 63, 58, 86, 52, 97, 68, 78, 65, 90, 56, 65, 82, 78, 65, 47, 62, 72, 70, 63, 67, 49, 74, 55, 69, 66, 46, 55, 65, 74, 53, 59, 73, 49, 93, 77, 75, 84, 85, 85, 68, 80, 68, 47, 91, 66, 51, 71, 74, 79, 67, 67, 85, 45, 93, 63, 64, 51, 132, 76, 65, 48, 67, 84, 76, 56, 82, 84, 66, 72, 45, 114, 39, 68, 76, 77, 88, 77, 63, 93, 82, 67, 106, 74, 64, 79, 55, 57, 66, 48, 64, 53, 88, 40, 52, 59, 73, 52, 72, 92, 54, 72, 79, 65, 61, 63, 63, 55, 109, 70, 50, 51, 61, 113, 53, 102, 71, 43, 63, 76, 25, 63, 65, 72, 70, 67, 78, 84, 60, 53, 41, 66, 46, 45, 37, 30, 51, 55, 76, 73, 90, 84, 77, 79, 41, 76, 69, 56, 50, 58, 90, 55, 111, 63, 46, 63, 65, 63, 45, 57, 51, 70, 52, 54, 43, 88, 74, 78, 44, 82, 48, 66, 48, 71, 77, 61, 68, 87, 72, 82, 72, 111, 65, 71, 52, 72, 100, 49, 78, 93, 46, 58, 50, 93, 80, 65, 66, 62, 79, 63, 58, 75, 93, 64, 57, 44, 69, 48, 68, 77, 47, 56, 56, 76, 89, 60, 72, 82, 55, 50, 56, 69, 89, 61, 68, 67, 60, 92, 47, 75, 65, 81, 81, 75, 57, 61, 118, 63, 71, 64, 91, 54, 73, 66, 67, 76, 60, 60, 75, 63, 68, 49, 47, 98, 55, 65, 48, 55, 74, 57, 64, 64, 57, 70, 84, 71, 86, 96, 63, 55, 73, 56, 65, 81, 60, 66, 66, 44, 86, 52, 88, 113, 56, 39, 87, 102, 57, 63, 39, 80, 80, 113, 83, 44, 75, 43, 66, 77, 63, 53, 95, 87, 70, 69, 55, 51, 67, 54, 68, 67, 57, 56, 59, 74, 76, 63, 45, 44, 91, 59, 46, 66, 74, 77, 57, 94, 80, 60, 57, 58, 72, 63, 48, 63, 74, 104, 64, 108, 61, 63, 77, 77, 71, 71, 63, 54, 50, 59, 57, 90, 59, 85, 76, 61, 52, 49, 51, 77, 49, 89, 63, 56, 47, 53, 60, 66, 64, 64, 53, 73, 76, 53, 69, 55, 47, 62, 67, 62, 83, 71, 47, 54, 64, 58, 59, 58, 54, 70, 47, 64, 75, 56, 87, 49, 75, 54, 59, 85, 54, 72, 51, 51, 56, 77, 61, 54, 36, 62, 57, 78, 51, 65, 72, 51, 69, 79, 63, 77, 103, 38, 76, 76, 47, 73, 73, 64, 61, 56, 68, 100, 68, 57, 64, 54, 76, 69, 70, 44, 91, 60, 70, 86, 92, 58, 69, 61, 51, 74, 58, 43, 66, 66, 56, 70, 64, 75, 64, 74, 103, 76, 61, 82, 73, 57, 90, 57, 58, 63, 84, 64, 56, 90, 67, 48, 66, 69, 78, 68, 60, 56, 74, 85, 59, 55, 50, 50, 65, 61, 73, 71, 46, 55, 72, 92, 122, 100, 57, 63, 62, 87, 72, 50, 62, 81, 55, 65, 59, 54, 67, 77, 65, 32, 64, 86, 60, 70, 73, 55, 70, 62, 78, 75, 68, 60, 57, 73, 75, 72, 57, 65, 87, 72, 62, 56, 74, 43, 68, 56, 71, 66, 50, 56, 59, 68, 62, 44, 65, 58, 64, 58, 57, 52, 62, 65, 101, 76, 72, 80, 70, 60, 62, 72, 58, 66, 69, 140, 74, 45, 88, 71, 57, 73, 60, 75, 84, 60, 57, 64, 66, 60, 54, 74, 47, 61, 69, 78, 59, 74, 78, 61, 73, 54, 61, 53, 76, 55, 59, 76, 64, 73, 59, 49, 75, 49, 89, 49, 62, 48, 72, 58, 48, 54, 73, 92, 56, 54, 38, 48, 66, 77, 46, 82, 69, 80, 46, 69, 55, 58, 78, 58, 69, 66, 66, 66, 61, 78, 57, 64, 64, 65, 64, 59, 52, 85, 93, 73, 57, 67, 45, 58, 60, 76, 58, 73, 59, 62, 54, 75, 56, 55, 64, 55, 53, 113, 70, 87, 70, 64, 66, 69, 65, 61, 65, 70, 57, 82, 58, 79, 76, 70, 70, 65, 80, 58, 88, 58, 59, 71, 59, 86, 73, 45, 91, 65, 55, 47, 59, 66, 65, 61, 98, 64, 92, 62, 78, 67, 68, 66, 57, 62, 62, 64, 78, 63, 58, 60, 63, 55, 58, 75, 64, 80, 74, 64, 49, 49, 74, 55, 88, 65, 64, 62, 83, 102, 63, 62, 60, 76, 65, 48, 71, 72, 57, 61, 87, 68, 51, 77, 67, 74, 78, 63, 78, 57, 59, 62, 69, 63, 71, 55, 63, 60, 72, 72, 76, 68, 47, 65, 53, 65, 64, 67, 54, 61, 55, 53, 50, 70, 49, 87, 84, 71, 72, 79, 51, 64, 65, 62, 58, 42, 76, 69, 60, 73, 73, 83, 56, 63, 79, 80, 71, 64, 65, 57, 91, 60, 80, 56, 61, 57, 82, 70, 69, 64, 81, 79, 66, 47, 64, 79, 56, 62, 68, 62, 67, 62, 49, 55, 87, 102, 72, 84, 71, 95, 72, 52, 69, 134, 37, 82, 34, 96, 43, 65, 69, 63, 60, 47, 81, 88, 60, 75, 54, 66, 57, 73, 52, 62, 58, 95, 69, 64, 72, 63, 50, 56, 52, 62, 57, 71, 78, 61, 65, 72, 59, 68, 56, 65, 59, 28, 59, 81, 68, 73, 45, 88, 58, 71, 65, 60, 60, 47, 66, 81, 32, 78, 55, 77, 64, 80, 53, 80, 66, 65, 65, 57, 49, 75, 67, 72, 54, 68, 55, 74, 66, 56, 50, 69, 53, 57, 77, 54, 80, 54, 76, 65, 65, 63, 80, 80, 61, 54, 83, 67, 48, 85, 59, 46, 63, 55, 85, 70, 61, 73, 58, 75, 65, 58, 58, 64, 89, 76, 61, 61, 75, 76, 86, 70, 104, 75, 81, 54, 54, 63, 64, 57, 61, 70, 46, 71, 76, 53, 65, 88, 48, 83, 90, 44, 74, 56, 92, 73, 79, 61, 69, 76, 54, 78, 50, 78, 76, 70, 69, 56, 78, 73, 63, 76, 56, 57, 78, 55, 71, 70, 79, 40, 68, 59, 60, 80, 70, 63, 89, 83, 94, 55, 55, 70, 45, 83, 60, 64, 80, 82, 75, 77, 79, 55, 84, 50, 51, 91, 72, 62, 38, 79, 71, 56, 71, 66, 62, 56, 55, 63, 45, 74, 76, 58, 61, 56, 107, 55, 59, 89, 65, 60, 64, 75, 62, 62, 63, 48, 50, 48, 61, 63, 90, 60, 60, 48, 58, 75, 73, 89, 59, 77, 60, 75, 68, 54, 49, 66, 74, 55, 86, 79, 87, 53, 65, 44, 58, 86, 90, 71, 82, 69, 61, 51, 58, 48, 68, 62, 72, 60, 60, 84, 81, 65, 60, 62, 59, 65, 67, 47, 64, 40, 58, 61, 61, 82, 63, 58, 52, 67, 104, 70, 57, 70, 73, 58, 69, 75, 68, 54, 62, 76, 55, 68, 75, 66, 61, 59, 59, 70, 57, 82, 59, 107, 63, 52, 71, 80, 71, 68, 57, 57, 67, 76, 56, 87, 76, 91, 52, 85, 51, 34, 87, 50, 67, 53, 44, 56, 60, 85, 68, 70, 66, 71, 73, 83, 64, 67, 61, 69, 66, 86, 69, 78, 65, 89, 57, 49, 49, 61, 59, 54, 46, 111, 79, 79, 66, 67, 73, 67, 67, 75, 70, 51, 65, 67, 78, 52, 76, 54, 100, 74, 76, 83, 63, 62, 72, 63, 70, 63, 71, 70, 51, 80, 61, 51, 57, 62, 41, 93, 65, 61, 68, 81, 62, 78, 66, 81, 64, 53, 56, 59, 65, 75, 111, 75, 66, 67, 84, 69, 72, 61, 95, 78, 53, 63, 84, 65, 61, 60, 69, 62, 54, 58, 71, 62, 50, 58, 58, 69, 78, 65, 68, 80, 52, 71, 74, 61, 38, 94, 58, 70, 94, 68, 57, 106, 63, 68, 68, 89, 54, 63, 58, 54, 42, 52, 61, 86, 54, 69, 54, 72, 63, 71, 70, 79, 92, 74, 54, 66, 53, 46, 82, 57, 53, 67, 51, 60, 83, 66, 56, 65, 69, 71, 57, 93, 59, 53, 110, 76, 38, 61, 65, 54, 50, 57, 50, 69, 41, 70, 64, 76, 64, 51, 46, 63, 64, 77, 46, 69, 43, 66, 67, 52, 69, 70, 56, 73, 80, 53, 58, 57, 68, 67, 59, 67, 87, 63, 74, 67, 69, 63, 74, 61, 55, 82, 65, 74, 110, 55, 63, 55, 36, 61, 53, 73, 64, 72, 87, 58, 86, 48, 62, 52, 56, 72, 78, 59, 72, 53, 63, 65, 71, 59, 52, 69, 74, 66, 63, 52, 80, 56, 77, 84, 47, 58, 98, 80, 52, 71, 64, 72, 74, 77, 64, 75, 48, 51, 65, 56, 80, 75, 74, 69, 62, 67, 56, 64, 39, 61, 71, 58, 65, 54, 63, 60, 70, 62, 60, 99, 71, 57, 69, 70, 59, 48, 62, 62, 66, 68, 58, 60, 75, 63, 50, 59, 53, 69, 62, 75, 62, 63, 73, 70, 72, 55, 78, 74, 113, 74, 48, 86, 79, 57, 51, 76, 68, 79, 67, 69, 64, 64, 64, 74, 51, 67, 50, 63, 85, 53, 63, 90, 59, 61, 62, 58, 80, 65, 54, 72, 74, 61, 61, 57, 74, 56, 88, 86, 55, 65, 59, 63, 58, 60, 54, 58, 64, 67, 72, 66, 59, 52, 63, 70, 58, 63, 75, 78, 64, 63, 57, 70, 73, 79, 73, 75, 66, 66, 73, 56, 82, 75, 52, 54, 92, 73, 59, 68, 53, 63, 83, 66, 75, 65, 88, 55, 60, 57, 61, 65, 59, 57, 72, 63, 65, 66, 62, 46, 64, 67, 61, 54, 63, 71, 73, 66, 74, 68, 61, 66, 73, 57, 53, 51, 64, 80, 55, 62, 68, 59, 59, 67, 62, 59, 76, 82, 87, 101, 64, 88, 62, 102, 59, 49, 58, 64, 76, 71, 90, 61, 58, 62, 65, 65, 73, 63, 42, 83, 81, 81, 89, 52, 53, 76, 60, 64, 56, 81, 51, 90, 59, 69, 70, 57, 57, 90, 51, 57, 77, 55, 92, 59, 66, 65, 62, 62, 63, 60, 63, 57, 56, 56, 66, 58, 54, 63, 61, 66, 49, 69, 99, 79, 64, 83, 64, 66, 61, 80, 62, 63, 64, 63, 56, 61, 65, 62, 77, 88, 62, 66, 69, 68, 59, 71, 57, 49, 53, 56, 62, 60, 45, 52, 58, 60, 65, 60, 44, 65, 62, 71, 49, 60, 66, 57, 55, 54, 71, 60, 66, 56, 62, 54, 69, 66, 70, 67, 80, 57, 48, 55, 89, 72, 56, 62, 73, 59, 65, 62, 76, 55, 58, 76, 50, 63, 51, 56, 71, 52, 67, 44, 55, 63, 56, 66, 73, 63, 98, 81, 74, 62, 55, 72, 83, 70, 67, 46, 79, 87, 67, 67, 102, 57, 61, 61, 69, 89, 46, 81, 56, 65, 72, 61, 64, 55, 59, 55, 55, 63, 66, 85, 60, 63, 64, 84, 74, 59, 61, 60, 70, 62, 56, 64, 76, 57, 54, 73, 68, 53, 67, 62, 54, 43, 77, 72, 47, 65, 75, 75, 61, 82, 67, 50, 61, 71, 79, 88, 68, 60, 62, 72, 60, 59, 71, 67, 81, 62, 67, 55, 60, 63, 48, 60, 59, 55, 55, 55, 61, 61, 68, 66, 72, 104, 47, 72, 58, 61, 61, 84, 62, 61, 63, 83, 53, 90, 65, 64, 61, 72, 85, 56, 70, 53, 60, 71, 63, 67, 71, 60, 86, 75, 55, 76, 68, 55, 79, 65, 66, 57, 65, 72, 45, 74, 81, 62, 64, 53, 68, 64, 62, 60, 83, 89, 52, 73, 63, 67, 63, 60, 64, 60, 59, 99, 54, 85, 76, 71, 80, 90, 59, 99, 73, 64, 67, 60, 64, 82, 52, 60, 48, 48, 59, 78, 61, 59, 73, 62, 63, 57, 54, 62, 60, 68, 62, 55, 75, 64, 62, 59, 68, 73, 64, 66, 97, 64, 74, 76, 64, 55, 51, 69, 72, 66, 65, 61, 72, 55, 62, 61, 51, 63, 60, 63, 60, 46, 61, 55, 50, 55, 84, 71, 56, 88, 67, 49, 55, 73, 104, 63, 54, 69, 71, 58, 83, 53, 60, 65, 97, 50, 61, 73, 120, 52, 79, 58, 66, 67, 63, 51, 62, 55, 108, 85, 74, 94, 64, 53, 58, 58, 58, 58, 60, 57, 81, 59, 64, 59, 74, 63, 55, 56, 57, 71, 56, 86, 77, 58, 77, 85, 54, 60, 66, 64, 92, 54, 57, 53, 67, 66, 67, 77, 62, 56, 65, 57, 46, 77, 65, 61, 78, 51, 39, 54, 58, 61, 55, 57, 58, 64, 63, 73, 83, 61, 55, 57, 66, 55, 93, 73, 56, 94, 58, 79, 89, 80, 64, 57, 76, 74, 70, 70, 63, 73, 62, 75, 73, 77, 68, 66, 82, 81, 80, 59, 73, 60, 57, 85, 47, 58, 67, 82, 59, 63, 72, 63, 72, 65, 45, 54, 58, 69, 75, 63, 66, 62, 60, 69, 77, 55, 59, 68, 59, 66, 61, 71, 76, 57, 58, 63, 68, 58, 65, 64, 53, 99, 110, 50, 81, 62, 65, 68, 57, 54, 61, 62, 57, 78, 68, 76, 59, 57, 59, 72, 93, 47, 85, 62, 60, 65, 64, 73, 84, 81, 54, 93, 68, 58, 57, 58, 46, 62, 94, 77, 66, 50, 86, 80, 83, 50, 54, 95, 49, 54, 57, 62, 46, 64, 70, 71, 59, 60, 75, 53, 73, 66, 58, 81, 59, 57, 86, 71, 75, 61, 55, 69, 88, 61, 60, 69, 74, 48, 58, 56, 68, 59, 59, 63, 57, 73, 55, 66, 70, 75, 65, 58, 109, 68, 68, 54, 64, 91, 56, 55, 57, 67, 59, 56, 57, 54, 67, 57, 76, 59, 66, 56, 120, 69, 62, 56, 60, 54, 66, 98, 56, 59, 75, 55, 65, 51, 84, 63, 61, 63, 52, 56, 71, 57, 91, 82, 66, 73, 73, 63, 76, 62, 57, 56, 86, 90, 78, 60, 79, 75, 68, 64, 62, 79, 66, 70, 64, 60, 93, 76, 64, 86, 67, 62, 81, 50, 63, 72, 57, 60, 59, 65, 77, 55, 65, 57, 61, 62, 95, 73, 72, 61, 66, 73, 60, 68, 66, 60, 68, 86, 54, 56, 55, 59, 74, 73, 78, 57, 77, 65, 71, 94, 58, 75, 74, 53, 70, 68, 53, 56, 125, 54, 54, 69, 62, 67, 64, 65, 80, 49, 55, 72, 59, 54, 70, 67, 55, 60, 64, 98, 80, 59, 68, 55, 56, 62, 65, 46, 52, 68, 63, 57, 63, 60, 61, 81, 53, 60, 80, 72, 61, 69, 73, 87, 57, 71, 72, 74, 57, 67, 79, 52, 64, 95, 59, 58, 63, 65, 72, 60, 92, 74, 65, 72, 84, 61, 70, 71, 80, 67, 66, 61, 70, 51, 70, 71, 60, 68, 77, 62, 50, 63, 80, 69, 68, 48, 59, 62, 81, 70, 73, 59, 62, 51, 61, 82, 65, 41, 50, 47, 48, 63, 82, 54, 66, 58, 59, 62, 52, 51, 62, 56, 55, 64, 57, 77, 64, 55, 82, 64, 70, 64, 74, 69, 58, 53, 60, 57, 70, 67, 63, 54, 72, 55, 86, 50, 56, 69, 54, 62, 67, 63, 62, 64, 49, 54, 70, 66, 53, 70, 125, 67, 52, 83, 98, 60, 65, 57, 48, 81, 67, 49, 66, 63, 62, 129, 77, 59, 73, 56, 57, 69, 80, 63, 58, 72, 78, 72, 52, 73, 55, 74, 65, 61, 78, 92, 55, 68, 58, 52, 54, 60, 54, 56, 67, 84, 71, 77, 56, 69, 64, 72, 73, 62, 52, 82, 61, 63, 47, 73, 47, 59, 68, 91, 74, 84, 46, 57, 78, 68, 103, 59, 57, 77, 69, 79, 71, 56, 110, 62, 68, 54, 67, 60, 79, 70, 87, 86, 82, 67, 71, 58, 66, 48, 60, 62, 71, 71, 78, 63, 75, 68, 54, 63, 73, 62, 95, 57, 86, 61, 51, 62, 56, 52, 78, 50, 62, 74, 62, 58, 64, 62, 61, 64, 43, 57, 53, 53, 75, 69, 89, 57, 52, 95, 59, 67, 57, 60, 49, 85, 57, 54, 75, 58, 72, 78, 71, 60, 66, 51, 65, 57, 56, 54, 65, 81, 72, 73, 64, 71, 57, 105, 72, 57, 38, 76, 64, 62, 74, 57, 50, 50, 79, 63, 52, 64, 77, 78, 71, 55, 60, 59, 69, 55, 73, 59, 52, 58, 57, 66, 67, 74, 68, 75, 58, 66, 61, 57, 91, 95, 63, 68, 79, 67, 67, 103, 73, 68, 51, 53, 64, 46, 69, 73, 62, 48, 70, 74, 72, 67, 59, 71, 80, 72, 67, 55, 79, 59, 66, 65, 113, 74, 44, 65, 57, 58, 68, 55, 64, 57, 68, 75, 71, 65, 59, 60, 92, 66, 72, 85, 70, 72, 48, 83, 65, 57, 73, 66, 65, 78, 61, 55, 60, 47, 65, 78, 53, 53, 82, 64, 72, 63, 73, 60, 57, 86, 68, 55, 78, 64, 104, 47, 90, 79, 109, 68, 57, 49, 63, 103, 59, 57, 55, 64, 71, 85, 83, 58, 62, 80, 48, 72, 96, 53, 75, 72, 68, 67, 60, 62, 79, 80, 68, 68, 80, 50, 85, 52, 72, 60, 58, 64, 62, 90, 63, 44, 63, 86, 48, 74, 53, 91, 71, 60, 56, 64, 60, 65, 59, 79, 84, 98, 56, 61, 57, 59, 63, 62, 67, 68, 68, 58, 63, 82, 71, 54, 63, 74, 61, 79, 57, 60, 67, 65, 58, 62, 52, 63, 59, 57, 62, 88, 64, 66, 56, 50, 88, 55, 43, 73, 70, 58, 72, 56, 69, 54, 84, 57, 57, 71, 78, 72, 62, 64, 61, 45, 47, 60, 65, 88, 102, 53, 54, 76, 77, 64, 61, 59, 64, 61, 87, 55, 52, 57, 58, 60, 61, 58, 49, 63, 72, 52, 42, 73, 63, 68, 63, 60, 64, 66, 66, 52, 63, 77, 50, 51, 47, 77, 66, 79, 67, 100, 45, 67, 59, 64, 88, 48, 67, 55, 74, 71, 91, 58, 65, 70, 65, 46, 71, 70, 75, 78, 63, 65, 89, 80, 43, 69, 59, 58, 66, 53, 85, 69, 41, 66, 49, 46, 57, 66, 75, 63, 65, 71, 74, 62, 67, 67, 79, 60, 57, 51, 36, 56, 62, 58, 72, 91, 54, 54, 56, 80, 65, 61, 55, 52, 65, 63, 63, 69, 52, 61, 57, 69, 56, 67, 60, 89, 29, 66, 65, 77, 115, 68, 100, 56, 51, 63, 64, 54, 61, 59, 93, 73, 71, 66, 61, 62, 62, 73, 77, 56, 62, 59, 57, 61, 55, 63, 69, 63, 58, 67, 58, 47, 54, 54, 73, 70, 44, 63, 48, 50, 85, 56, 67, 70, 68, 66, 77, 66, 66, 59, 61, 72, 67, 65, 62, 51, 86, 65, 63, 66, 67, 59, 76, 61, 62, 45, 62, 71, 58, 76, 55, 56, 67, 65, 54, 64, 63, 64, 59, 60, 60, 86, 54, 74, 86, 63, 70, 63, 72, 73, 53, 55, 76, 67, 69, 64, 81, 67, 44, 63, 64, 59, 57, 76, 77, 71, 58, 58, 61, 79, 55, 71, 51, 77, 64, 61, 78, 59, 76, 63, 59, 68, 70, 64, 69, 47, 75, 51, 59, 57, 58, 68, 55, 69, 77, 65, 64, 65, 66, 66, 50, 66, 63, 57, 66, 65, 41, 65, 86, 56, 62, 70, 63, 67, 50, 53, 71, 54, 67, 63, 63, 63, 82, 67, 57, 64, 57, 110, 64, 59, 78, 82, 67, 73, 65, 56, 59, 65, 78, 69, 113, 93, 51, 59, 60, 66, 87, 65, 74, 74, 59, 59, 86, 69, 81, 43, 73, 64, 69, 77, 80, 66, 69, 63, 57, 87, 55, 57, 55, 51, 54, 84, 59, 64, 56, 47, 52, 70, 70, 77, 48, 69, 71, 53, 64, 87, 69, 50, 74, 54, 62, 82, 69, 68, 96, 80, 66, 111, 68, 52, 66, 73, 66, 78, 47, 66, 60, 86, 49, 87, 63, 78, 56, 78, 88, 41, 63, 73, 73, 68, 64, 52, 51, 72, 84, 52, 70, 67, 58, 61, 67, 67, 51, 72, 48, 71, 57, 70, 65, 61, 70, 78, 55, 92, 69, 57, 117, 89, 62, 58, 60, 60, 67, 48, 56, 65, 52, 82, 66, 61, 65, 53, 47, 84, 62, 57, 58, 71, 61, 52, 64, 60, 75, 89, 67, 58, 70, 49, 49, 61, 71, 62, 62, 64, 61, 60, 54, 66, 64, 58, 70, 62, 63, 91, 55, 80, 53, 63, 61, 67, 60, 66, 67, 47, 73, 90, 79, 57, 62, 68, 63, 64, 107, 54, 48, 67, 76, 57, 45, 52, 60, 59, 73, 63, 82, 103, 81, 60, 72, 69, 72, 97, 62, 57, 82, 75, 73, 55, 57, 55, 49, 52, 52, 59, 51, 75, 65, 65, 63, 61, 102, 67, 82, 63, 63, 68, 55, 70, 68, 93, 60, 62, 81, 56, 68, 62, 61, 57, 68, 57, 62, 56, 66, 70, 77, 70, 56, 67, 56, 77, 69, 61, 69, 55, 63, 52, 54, 68, 64, 58, 77, 56, 68, 65, 63, 68, 70, 79, 48, 71, 53, 71, 75, 66, 81, 58, 60, 57, 57, 52, 62, 73, 63, 71, 48, 72, 67, 58, 68, 60, 71, 47, 77, 66, 62, 61, 77, 59, 65, 67, 65, 61, 71, 95, 71, 46, 70, 69, 69, 74, 59, 73, 64, 56, 82, 52, 82, 51, 73, 59, 67, 56, 86, 103, 61, 70, 68, 55, 46, 65, 60, 75, 102, 51, 66, 76, 56, 59, 70, 68, 53, 80, 52, 59, 52, 68, 55, 49, 67, 60, 70, 62, 58, 47, 71, 59, 55, 66, 57, 79, 85, 65, 62, 61, 60, 52, 60, 66, 72, 63, 78, 54, 64, 63, 57, 62, 62, 76, 62, 87, 61, 59, 66, 66, 65, 58, 66, 92, 85, 81, 99, 70, 58, 59, 78, 74, 67, 85, 57, 83, 59, 74, 92, 62, 52, 75, 61, 55, 49, 68, 113, 66, 98, 62, 54, 59, 54, 57, 106, 54, 46, 58, 59, 64, 66, 62, 57, 50, 76, 62, 55, 66, 62, 81, 66, 60, 71, 51, 77, 56, 77, 54, 64, 46, 69, 52, 72, 87, 71, 70, 87, 52, 88, 64, 64, 49, 91, 46, 74, 83, 55, 90, 96, 49, 67, 111, 62, 52, 63, 74, 93, 55, 44, 63, 73, 66, 73, 58, 100, 65, 55, 94, 78, 67, 54, 68, 56, 68, 72, 68, 43, 82, 65, 56, 51, 64, 79, 48, 61, 70, 71, 50, 72, 80, 49, 60, 63, 43, 75, 66, 38, 63, 77, 53, 61, 56, 60, 64, 45, 72, 87, 59, 72, 81, 56, 87, 68, 36, 73, 78, 57, 99, 84, 48, 67, 46, 55, 123, 62, 65, 85, 92, 60, 56, 60, 74, 66, 86, 49, 56, 54, 58, 55, 54, 71, 65, 50, 74, 83, 54, 77, 50, 91, 78, 55, 66, 74, 61, 62, 66, 58, 74, 58, 82, 68, 52, 52, 61, 64, 57, 48, 63, 56, 64, 73, 61, 69, 66, 83, 58, 80, 57, 66, 75, 91, 42, 39, 71, 62, 61, 66, 51, 52, 67, 62, 53, 79, 45, 58, 45, 60, 46, 75, 66, 90, 52, 51, 62, 64, 77, 69, 93, 79, 64, 49, 56, 63, 72, 41, 92, 57, 66, 84, 67, 61, 73, 57, 61, 60, 62, 65, 54, 92, 73, 49, 54, 78, 102, 65, 57, 55, 55, 51, 57, 54, 79, 69, 55, 73, 93, 50, 69, 57, 79, 75, 66, 76, 59, 67, 46, 70, 78, 82, 69, 86, 45, 73, 105, 78, 102, 52, 54, 74, 67, 46, 49, 74, 65, 88, 62, 71, 73, 59, 65, 83, 52, 62, 74, 70, 54, 53, 53, 62, 70, 53, 66, 64, 59, 92, 56, 54, 95, 76, 52, 59, 95, 64, 98, 54, 68, 67, 65, 73, 55, 65, 66, 62, 52, 89, 44, 66, 46, 82, 54, 59, 74, 48, 61, 70, 69, 65, 64, 51, 67, 84, 65, 58, 66, 49, 77, 68, 72, 71, 62, 71, 85, 68, 66, 50, 50, 73, 54, 74, 83, 64, 62, 64, 87, 62, 71, 59, 61, 79, 100, 58, 63, 79, 67, 72, 64, 66, 75, 64, 92, 65, 93, 67, 66, 74, 52, 61, 60, 59, 47, 94, 71, 70, 36, 60, 53, 60, 84, 58, 58, 86, 66, 68, 64, 50, 55, 68, 78, 67, 55, 73, 62, 72, 68, 67, 60, 74, 53, 66, 65, 95, 51, 61, 85, 67, 88, 56, 76, 65, 78, 63, 61, 63, 50, 69, 54, 81, 63, 39, 50, 71, 49, 97, 55, 68, 66, 83, 71, 60, 64, 127, 65, 66, 71, 67, 62, 67, 82, 82, 65, 100, 67, 55, 75, 55, 78, 48, 56, 57, 61, 67, 51, 63, 65, 50, 51, 66, 63, 52, 73, 78, 61, 67, 90, 84, 63, 84, 58, 71, 50, 65, 65, 74, 46, 68, 64, 96, 56, 64, 70, 61, 67, 57, 68, 40, 48, 63, 69, 97, 68, 53, 61, 55, 50, 72, 56, 57, 78, 56, 64, 70, 54, 70, 70, 72, 62, 75, 61, 65, 89, 66, 74, 70, 47, 89, 69, 78, 46, 71, 72, 68, 57, 50, 73, 70, 96, 68, 69, 41, 65, 70, 73, 79, 68, 66, 61, 68, 66, 50, 63, 46, 61, 81, 55, 53, 75, 61, 58, 60, 55, 59, 81, 66, 63, 65, 58, 61, 66, 79, 51, 59, 64, 61, 74, 100, 69, 46, 75, 58, 56, 52, 63, 61, 86, 98, 64, 69, 60, 92, 53, 49, 63, 58, 60, 54, 61, 69, 65, 58, 57, 75, 62, 66, 47, 91, 52, 69, 91, 48, 52, 97, 107, 72, 119, 63, 48, 68, 75, 66, 68, 87, 76, 61, 71, 85, 90, 73, 59, 80, 68, 53, 66, 59, 69, 76, 54, 72, 63, 55, 69, 61, 61, 58, 64, 67, 74, 56, 68, 74, 49, 76, 58, 79, 64, 73, 60, 56, 57, 55, 69, 67, 66, 69, 62, 53, 57, 61, 66, 45, 58, 65, 63, 43, 62, 109, 66, 55, 52, 77, 73, 70, 69, 62, 75, 62, 65, 56, 84, 68, 75, 62, 64, 59, 87, 97, 60, 67, 60, 77, 57, 41, 85, 75, 60, 80, 48, 61, 57, 103, 56, 79, 58, 63, 73, 61, 78, 85, 63, 55, 62, 47, 73, 72, 74, 71, 66, 72, 82, 50, 59, 48, 62, 53, 83, 60, 69, 79, 52, 78, 58, 66, 55, 47, 78, 81, 48, 67, 68, 68, 77, 67, 49, 62, 59, 61, 74, 77, 81, 36, 52, 68, 64, 62, 56, 53, 55, 53, 87, 64, 52, 90, 69, 68, 44, 49, 51, 67, 58, 64, 68, 66, 62, 53, 60, 62, 67, 60, 60, 66, 70, 57, 73, 96, 76, 44, 56, 54, 59, 59, 89, 56, 54, 72, 68, 80, 48, 55, 52, 66, 60, 37, 93, 60, 57, 61, 86, 84, 68, 69, 66, 54, 83, 67, 54, 63, 78, 53, 69, 57, 56, 66, 72, 80, 73, 106, 75, 50, 52, 58, 74, 61, 94, 69, 59, 78, 91, 68, 54, 60, 55, 59, 66, 75, 77, 88, 46, 36, 63, 51, 62, 71, 52, 66, 59, 80, 66, 46, 70, 40, 66, 62, 48, 65, 63, 69, 67, 48, 73, 55, 61, 58, 76, 61, 59, 74, 68, 64, 72, 82, 75, 51, 52, 72, 80, 96, 66, 62, 61, 49, 76, 74, 61, 66, 85, 69, 53, 76, 59, 59, 70, 99, 56, 83, 65, 73, 57, 87, 69, 36, 56, 61, 70, 62, 70, 72, 58, 75, 72, 67, 62, 53, 54, 61, 93, 53, 82, 67, 55, 57, 65, 55, 60, 107, 67, 68, 63, 96, 59, 96, 52, 57, 88, 65, 64, 70, 60, 47, 126, 68, 60, 66, 52, 66, 53, 70, 86, 69, 57, 64, 74, 82, 70, 53, 62, 64, 87, 82, 107, 73, 66, 62, 65, 62, 76, 63, 50, 66, 61, 64, 69, 57, 79, 60, 49, 59, 72, 68, 91, 68, 57, 47, 92, 56, 57, 66, 72, 77, 49, 83, 67, 51, 67, 103, 47, 53, 61, 68, 55, 62, 44, 58, 75, 68, 60, 86, 62, 55, 71, 122, 78, 66, 65, 68, 53, 67, 61, 57, 67, 58, 63, 57, 64, 47, 71, 58, 67, 65, 47, 119, 58, 85, 81, 61, 67, 49, 50, 44, 51, 62, 52, 77, 67, 56, 56, 60, 56, 48, 57, 49, 73, 62, 75, 42, 65, 61, 105, 55, 79, 62, 77, 53, 56, 61, 85, 64, 67, 78, 62, 91, 49, 47, 49, 91, 54, 92, 56, 68, 79, 65, 69, 52, 85, 57, 67, 55, 66, 102, 62, 55, 44, 61, 77, 60, 80, 75, 45, 63, 67, 83, 76, 49, 62, 65, 71, 60, 76, 59, 48, 67, 67, 57, 67, 89, 62, 61, 75, 61, 66, 58, 71, 60, 98, 66, 54, 66, 59, 61, 72, 59, 68, 67, 69, 61, 59, 65, 67, 61, 67, 66, 59, 77, 55, 45, 56, 51, 67, 54, 82, 65, 60, 70, 51, 98, 59, 52, 65, 49, 53, 77, 41, 66, 84, 71, 52, 57, 70, 65, 54, 64, 70, 38, 72, 83, 57, 59, 63, 68, 58, 59, 66, 61, 53, 66, 54, 61, 70, 56, 82, 61, 75, 61, 39, 77, 64, 70, 75, 69, 64, 61, 69, 74, 64, 81, 73, 50, 70, 49, 59, 64, 61, 72, 121, 54, 58, 85, 70, 47, 78, 63, 84, 85, 66, 57, 59, 95, 62, 69, 67, 68, 72, 71, 48, 77, 52, 56, 61, 43, 54, 72, 59, 65, 63, 67, 61, 66, 68, 64, 75, 72, 73, 52, 61, 65, 71, 58, 63, 76, 72, 70, 74, 62, 91, 103, 57, 89, 51, 63, 58, 86, 106, 54, 59, 50, 66, 73, 71, 60, 76, 76, 67, 64, 83, 57, 63, 56, 60, 39, 67, 68, 57, 72, 70, 57, 54, 58, 64, 60, 71, 61, 46, 54, 79, 68, 62, 57, 83, 59, 93, 78, 57, 62, 73, 65, 74, 51, 65, 61, 51, 69, 55, 44, 82, 90, 52, 62, 90, 53, 68, 48, 58, 69, 68, 53, 69, 81, 73, 72, 70, 77, 53, 52, 60, 50, 67, 53, 70, 61, 74, 48, 58, 71, 55, 58, 70, 56, 114, 49, 67, 56, 67, 68, 66, 59, 98, 65, 56, 68, 70, 71, 63, 70, 46, 89, 74, 58, 72, 72, 84, 69, 61, 70, 61, 72, 71, 79, 69, 73, 46, 60, 54, 50, 83, 66, 51, 62, 62, 58, 64, 57, 51, 58, 61, 66, 61, 65, 68, 73, 67, 56, 68, 76, 64, 57, 80, 79, 61, 90, 66, 62, 73, 70, 46, 67, 61, 72, 49, 60, 52, 64, 66, 105, 59, 50, 64, 61, 54, 45, 59, 80, 72, 81, 82, 55, 60, 126, 81, 95, 63, 44, 69, 69, 79, 73, 60, 134, 69, 62, 57, 61, 56, 53, 57, 59, 63, 65, 69, 81, 59, 59, 49, 63, 77, 50, 60, 53, 55, 80, 65, 77, 60, 59, 49, 65, 59, 54, 61, 112, 78, 64, 64, 76, 64, 64, 85, 62, 56, 62, 90, 55, 64, 62, 72, 68, 69, 73, 63, 54, 72, 65, 53, 69, 70, 69, 78, 76, 56, 66, 61, 86, 60, 61, 83, 68, 66, 65, 99, 55, 55, 95, 57, 72, 58, 77, 76, 46, 68, 71, 49, 64, 47, 78, 51, 67, 86, 96, 67, 58, 74, 66, 88, 74, 57, 65, 56, 59, 56, 74, 54, 72, 55, 72, 64, 60, 64, 67, 64, 71, 66, 63, 53, 87, 59, 47, 70, 96, 74, 64, 49, 76, 58, 67, 59, 71, 65, 76, 56, 56, 64, 64, 59, 47, 64, 74, 66, 59, 68, 54, 77, 46, 64, 60, 62, 62, 73, 63, 68, 51, 74, 65, 60, 74, 92, 65, 56, 78, 77, 67, 90, 59, 50, 60, 83, 70, 41, 97, 80, 59, 65, 67, 89, 85, 55, 66, 60, 67, 63, 65, 75, 67, 64, 60, 71, 59, 71, 69, 57, 84, 58, 61, 83, 51, 59, 50, 80, 62, 61, 69, 66, 90, 66, 58, 49, 72, 62, 71, 52, 63, 96, 69, 89, 43, 70, 65, 78, 71, 72, 69, 62, 83, 63, 52, 58, 63, 96, 47, 64, 77, 67, 65, 66, 57, 63, 75, 58, 71, 84, 51, 104, 106, 69, 59, 67, 65, 70, 61, 91, 66, 74, 81, 55, 75, 51, 62, 70, 33, 61, 60, 66, 74, 78, 68, 68, 73, 62, 66, 64, 57, 84, 55, 56, 61, 81, 61, 67, 68, 66, 61, 99, 51, 68, 87, 67, 64, 58, 73, 61, 55, 64, 41, 50, 75, 54, 67, 73, 64, 67, 53, 70, 66, 51, 56, 61, 56, 72, 53, 66, 72, 58, 45, 75, 55, 85, 72, 72, 74, 76, 55, 64, 63, 65, 76, 57, 62, 71, 63, 73, 62, 56, 59, 51, 59, 65, 53, 75, 54, 57, 105, 58, 58, 52, 63, 54, 81, 58, 58, 73, 72, 62, 77, 70, 57, 80, 74, 67, 64, 74, 54, 63, 79, 69, 59, 63, 55, 70, 65, 55, 63, 55, 67, 67, 55, 62, 60, 49, 61, 61, 83, 68, 65, 82, 69, 74, 71, 76, 62, 94, 85, 67, 64, 58, 61, 48, 91, 63, 62, 57, 40, 75, 71, 64, 55, 43, 65, 59, 62, 52, 57, 57, 60, 62, 45, 102, 61, 76, 82, 61, 60, 66, 83, 62, 76, 83, 56, 43, 58, 58, 68, 86, 73, 66, 47, 54, 73, 99, 50, 81, 61, 73, 64, 57, 63, 59, 58, 63, 79, 64, 56, 78, 64, 60, 67, 57, 61, 55, 74, 47, 65, 71, 72, 64, 50, 61, 57, 58, 64, 70, 54, 57, 58, 57, 76, 46, 51, 53, 70, 59, 73, 65, 59, 89, 60, 52, 48, 54, 71, 76, 94, 59, 57, 90, 83, 62, 67, 75, 64, 75, 59, 62, 63, 53, 72, 76, 69, 72, 51, 67, 72, 64, 64, 80, 75, 75, 52, 67, 67, 54, 56, 63, 54, 68, 83, 102, 59, 74, 51, 59, 89, 55, 88, 64, 63, 70, 50, 63, 71, 62, 61, 73, 68, 42, 68, 109, 62, 61, 61, 65, 48, 49, 65, 76, 69, 49, 75, 68, 61, 67, 73, 61, 68, 83, 68, 75, 65, 56, 53, 65, 60, 62, 91, 58, 83, 73, 78, 61, 64, 65, 67, 46, 56, 62, 80, 73, 61, 53, 67, 65, 58, 68, 64, 50, 62, 72, 87, 51, 61, 70, 66, 50, 66, 65, 53, 54, 59, 49, 70, 65, 71, 65, 62, 57, 51, 60, 83, 51, 68, 95, 77, 69, 77, 102, 48, 64, 74, 68, 60, 54, 65, 83, 50, 59, 80, 68, 58, 78, 74, 66, 65, 48, 75, 64, 58, 94, 60, 63, 54, 46, 70, 75, 62, 64, 93, 67, 73, 101, 59, 66, 68, 57, 80, 62, 41, 69, 63, 81, 73, 73, 50, 75, 56, 64, 69, 44, 53, 56, 116, 64, 70, 67, 94, 86, 72, 68, 88, 74, 56, 87, 74, 62, 37, 80, 60, 67, 59, 62, 52, 56, 58, 61, 71, 82, 55, 59, 69, 56, 62, 54, 35, 76, 61, 57, 68, 67, 103, 77, 67, 54, 55, 62, 75, 57, 74, 62, 55, 60, 57, 53, 64, 62, 89, 49, 76, 67, 59, 81, 63, 70, 57, 61, 62, 76, 63, 83, 58, 53, 62, 55, 57, 63, 63, 70, 77, 55, 67, 46, 68, 63, 73, 51, 73, 69, 70, 67, 73, 48, 80, 73, 60, 64, 61, 67, 59, 59, 56, 71, 61, 76, 72, 58, 37, 70, 71, 72, 76, 81, 84, 88, 47, 74, 69, 50, 68, 46, 65, 64, 59, 83, 72, 86, 60, 70, 70, 77, 64, 78, 71, 55, 48, 59, 68, 53, 77, 49, 61, 70, 71, 56, 82, 62, 76, 78, 67, 66, 54, 87, 65, 66, 72, 62, 57, 67, 54, 74, 65, 61, 74, 61, 50, 61, 80, 52, 47, 56, 51, 54, 54, 66, 69, 72, 69, 52, 57, 72, 47, 65, 64, 77, 51, 110, 63, 57, 50, 60, 53, 59, 48, 132, 66, 91, 48, 68, 60, 83, 52, 69, 64, 75, 67, 75, 52, 60, 66, 50, 88, 65, 72, 82, 70, 103, 58, 63, 56, 66, 65, 65, 55, 64, 63, 92, 63, 67, 66, 65, 47, 45, 60, 57, 74, 51, 112, 92, 62, 68, 46, 71, 61, 67, 63, 62, 50, 81, 55, 69, 63, 69, 62, 78, 66, 90, 47, 55, 45, 66, 62, 55, 57, 60, 80, 64, 48, 68, 66, 59, 53, 35, 65, 71, 57, 64, 57, 65, 87, 52, 78, 58, 53, 87, 70, 68, 69, 65, 143, 56, 66, 79, 75, 60, 63, 57, 57, 71, 57, 70, 57, 64, 56, 68, 62, 66, 40, 64, 52, 67, 53, 85, 69, 55, 60, 94, 55, 60, 68, 48, 70, 65, 88, 58, 63, 92, 66, 65, 89, 62, 51, 89, 76, 70, 67, 71, 109, 63, 103, 57, 60, 76, 53, 60, 70, 48, 84, 48, 50, 74, 60, 60, 71, 61, 71, 77, 77, 70, 62, 67, 53, 56, 76, 72, 36, 68, 65, 96, 76, 75, 58, 66, 90, 61, 55, 82, 60, 74, 71, 67, 66, 67, 55, 64, 63, 70, 57, 55, 59, 61, 49, 61, 65, 59, 76, 72, 58, 54, 57, 69, 67, 58, 72, 52, 99, 68, 56, 53, 56, 68, 56, 70, 97, 57, 69, 67, 68, 60, 64, 56, 59, 75, 72, 65, 56, 71, 53, 87, 74, 86, 69, 58, 61, 46, 62, 69, 79, 82, 65, 60, 64, 60, 63, 71, 55, 72, 54, 60, 85, 52, 54, 65, 57, 48, 49, 64, 58, 57, 57, 56, 60, 73, 53, 69, 73, 55, 69, 78, 48, 59, 68, 56, 75, 56, 80, 73, 57, 69, 71, 80, 74, 73, 58, 59, 57, 59, 54, 64, 54, 72, 59, 67, 75, 73, 76, 61, 64, 63, 61, 52, 68, 58, 72, 100, 70, 60, 59, 55, 54, 69, 65, 50, 77, 60, 60, 56, 96, 73, 74, 77, 55, 77, 89, 50, 61, 58, 52, 64, 67, 59, 64, 58, 67, 70, 72, 73, 78, 71, 67, 76, 50, 52, 67, 58, 88, 57, 57, 48, 47, 50, 66, 60, 67, 50, 40, 49, 70, 63, 67, 82, 87, 69, 62, 65, 69, 69, 68, 79, 52, 65, 109, 65, 62, 41, 82, 50, 83, 70, 77, 63, 70, 64, 61, 76, 63, 63, 62, 64, 58, 54, 136, 63, 60, 65, 52, 73, 67, 101, 59, 75, 84, 69, 68, 67, 94, 67, 58, 66, 61, 62, 66, 80, 74, 74, 55, 68, 63, 59, 67, 96, 61, 51, 68, 114, 56, 62, 69, 97, 51, 45, 70, 60, 61, 54, 48, 68, 112, 65, 49, 57, 52, 54, 101, 70, 65, 48, 59, 68, 67, 64, 49, 73, 63, 54, 53, 44, 84, 71, 62, 59, 83, 63, 62, 80, 69, 82, 85, 35, 57, 60, 64, 64, 60, 64, 70, 51, 54, 70, 51, 122, 53, 65, 70, 68, 61, 79, 66, 63, 114, 59, 61, 64, 61, 51, 70, 68, 55, 64, 47, 85, 87, 55, 60, 67, 58, 73, 61, 108, 85, 67, 68, 76, 64, 77, 71, 58, 62, 60, 76, 72, 73, 60, 57, 64, 55, 69, 67, 75, 80, 90, 62, 80, 62, 60, 55, 69, 76, 84, 61, 82, 83, 70, 59, 47, 81, 83, 67, 79, 70, 54, 81, 92, 82, 54, 52, 57, 67, 59, 61, 62, 64, 53, 59, 90, 64, 68, 63, 64, 58, 57, 69, 46, 74, 79, 51, 63, 82, 70, 76, 61, 68, 56, 58, 87, 47, 63, 56, 72, 69, 58, 68, 80, 63, 50, 63, 52, 62, 60, 55, 76, 53, 51, 61, 75, 66, 73, 67, 59, 54, 110, 64, 63, 71, 68, 66, 58, 59, 80, 38, 55, 47, 85, 82, 78, 87, 59, 74, 59, 65, 72, 65, 69, 64, 50, 73, 67, 89, 68, 99, 64, 62, 98, 70, 63, 65, 58, 67, 96, 47, 62, 56, 41, 61, 71, 55, 59, 83, 54, 59, 66, 73, 69, 62, 56, 69, 50, 78, 58, 62, 61, 63, 66, 62, 54, 89, 67, 79, 69, 68, 98, 77, 58, 59, 88, 65, 81, 76, 68, 55, 96, 58, 56, 57, 86, 62, 52, 60, 79, 63, 67, 76, 66, 71, 103, 66, 68, 65, 65, 70, 65, 58, 99, 54, 56, 82, 60, 67, 57, 74, 61, 70, 72, 75, 65, 71, 57, 65, 64, 63, 61, 73, 72, 69, 87, 75, 72, 74, 80, 57, 59, 56, 60, 85, 62, 69, 57, 63, 63, 57, 57, 64, 65, 74, 52, 117, 90, 60, 58, 61, 57, 62, 52, 68, 65, 53, 66, 89, 78, 79, 68, 69, 87, 60, 56, 75, 51, 59, 76, 51, 67, 50, 62, 61, 97, 79, 49, 50, 78, 61, 77, 62, 80, 61, 47, 62, 51, 51, 88, 64, 64, 61, 80, 89, 92, 69, 59, 46, 50, 70, 64, 68, 61, 67, 72, 63, 83, 62, 69, 56, 60, 62, 57, 65, 57, 69, 70, 69, 67, 43, 53, 93, 95, 63, 52, 58, 68, 57, 64, 62, 57, 57, 59, 57, 68, 57, 52, 67, 66, 75, 62, 60, 50, 70, 65, 82, 63, 53, 62, 55, 62, 63, 58, 60, 77, 72, 53, 46, 55, 58, 88, 71, 59, 64, 51, 66, 50, 55, 58, 45, 62, 81, 53, 59, 61, 61, 75, 47, 66, 70, 76, 47, 71, 63, 61, 61, 61, 61, 67, 68, 71, 89, 54, 93, 69, 57, 64, 80, 65, 111, 63, 74, 57, 37, 63, 75, 50, 64, 73, 66, 59, 56, 63, 67, 67, 69, 68, 66, 99, 79, 67, 74, 61, 58, 61, 54, 88, 63, 81, 75, 55, 56, 43, 63, 53, 63, 62, 62, 66, 66, 66, 66, 65, 61, 53, 53, 64, 66, 59, 64, 67, 61, 46, 73, 76, 66, 69, 77, 59, 54, 68, 103, 68, 71, 83, 55, 63, 74, 62, 76, 62, 60, 62, 60, 91, 66, 65, 64, 67, 58, 44, 81, 74, 53, 78, 68, 73, 55, 41, 67, 71, 62, 56, 58, 74, 70, 58, 52, 48, 105, 91, 55, 78, 58, 82, 68, 50, 76, 113, 60, 94, 63, 58, 77, 54, 61, 61, 59, 81, 74, 68, 66, 61, 63, 71, 88, 63, 58, 71, 69, 78, 56, 52, 71, 52, 79, 53, 57, 60, 45, 78, 57, 64, 85, 80, 57, 64, 56, 64, 60, 75, 56, 61, 59, 79, 50, 67, 76, 56, 69, 58, 56, 74, 64, 89, 69, 46, 82, 52, 55, 101, 77, 56, 63, 57, 76, 60, 55, 53, 51, 75, 56, 77, 64, 73, 67, 44, 64, 55, 67, 71, 66, 78, 77, 65, 60, 62, 64, 66, 73, 59, 43, 60, 57, 56, 52, 60, 66, 57, 70, 64, 59, 71, 60, 67, 58, 63, 56, 59, 70, 66, 54, 28, 69, 54, 62, 58, 60, 64, 53, 61, 76, 72, 58, 51, 61, 59, 65, 59, 59, 87, 61, 65, 72, 57, 51, 72, 101, 68, 79, 59, 111, 62, 75, 73, 46, 70, 70, 93, 58, 66, 115, 72, 50, 55, 61, 71, 59, 57, 68, 72, 55, 64, 84, 84, 62, 67, 59, 64, 59, 42, 63, 61, 73, 88, 93, 60, 56, 84, 48, 68, 56, 57, 89, 63, 63, 60, 47, 58, 74, 62, 65, 64, 78, 55, 73, 60, 64, 54, 75, 63, 59, 60, 52, 55, 61, 53, 59, 63, 73, 75, 119, 59, 55, 68, 70, 71, 84, 63, 54, 74, 69, 70, 65, 74, 66, 60, 72, 58, 54, 84, 54, 66, 61, 96, 67, 53, 61, 47, 58, 63, 67, 75, 60, 72, 72, 87, 81, 86, 69, 80, 55, 71, 42, 70, 81, 80, 76, 67, 61, 51, 65, 54, 55, 60, 57, 67, 79, 54, 51, 70, 80, 55, 69, 60, 64, 66, 54, 62, 73, 67, 79, 56, 64, 74, 105, 59, 54, 59, 57, 65, 62, 80, 124, 57, 63, 86, 57, 58, 66, 66, 62, 61, 81, 87, 57, 76, 71, 69, 58, 63, 79, 50, 77, 66, 63, 76, 76, 71, 79, 63, 83, 80, 62, 65, 63, 43, 63, 73, 83, 66, 61, 54, 53, 93, 59, 62, 49, 60, 60, 60, 104, 68, 52, 81, 55, 73, 61, 69, 88, 96, 77, 57, 58, 61, 70, 56, 63, 58, 74, 76, 60, 59, 58, 69, 48, 60, 53, 60, 64, 92, 63, 61, 68, 66, 133, 55, 60, 51, 74, 98, 61, 63, 76, 73, 56, 65, 70, 59, 76, 67, 58, 61, 56, 49, 98, 66, 71, 58, 52, 56, 62, 71, 69, 63, 74, 39, 67, 61, 73, 56, 64, 52, 57, 72, 62, 59, 85, 58, 60, 78, 76, 67, 71, 78, 65, 69, 94, 68, 59, 68, 84, 73, 63, 79, 85, 73, 47, 66, 53, 60, 87, 72, 46, 58, 64, 50, 78, 66, 67, 90, 75, 72, 79, 66, 64, 52, 48, 54, 68, 49, 53, 75, 63, 59, 66, 60, 72, 64, 83, 84, 83, 61, 58, 75, 42, 63, 54, 47, 65, 53, 75, 80, 80, 75, 62, 58, 68, 63, 62, 82, 55, 49, 126, 63, 62, 45, 57, 66, 53, 58, 77, 48, 51, 88, 79, 56, 49, 60, 61, 58, 63, 90, 63, 60, 61, 77, 77, 63, 63, 52, 91, 68, 46, 104, 63, 60, 62, 63, 65, 61, 99, 69, 78, 68, 70, 69, 63, 62, 51, 63, 63, 64, 67, 67, 54, 59, 61, 70, 63, 62, 57, 55, 77, 60, 63, 98, 73, 63, 71, 56, 73, 59, 69, 61, 63, 70, 61, 58, 64, 70, 56, 76, 61, 51, 100, 61, 77, 75, 56, 66, 99, 85, 67, 64, 71, 51, 61, 82, 63, 83, 60, 59, 76, 79, 75, 67, 87, 65, 54, 75, 63, 69, 53, 76, 53, 49, 62, 64, 60, 69, 73, 63, 51, 72, 67, 67, 76, 68, 71, 64, 78, 70, 60, 47, 76, 98, 78, 65, 61, 58, 59, 82, 67, 69, 57, 57, 95, 66, 47, 95, 54, 75, 99, 64, 71, 74, 71, 61, 46, 67, 58, 55, 53, 67, 60, 77, 53, 89, 57, 67, 61, 50, 63, 43, 50, 63, 59, 57, 70, 78, 59, 72, 54, 53, 58, 65, 82, 61, 124, 77, 73, 69, 51, 84, 86, 56, 70, 86, 34, 87, 60, 58, 56, 63, 66, 54, 54, 84, 63, 76, 61, 55, 71, 70, 64, 57, 54, 88, 71, 54, 53, 76, 45, 52, 62, 61, 73, 45, 53, 84, 55, 54, 72, 52, 65, 63, 52, 71, 75, 62, 54, 53, 65, 63, 71, 61, 57, 58, 71, 75, 87, 70, 46, 64, 63, 57, 76, 59, 88, 137, 55, 62, 55, 56, 48, 51, 79, 77, 124, 54, 57, 59, 64, 63, 64, 68, 51, 79, 55, 54, 83, 54, 81, 60, 62, 68, 54, 60, 75, 89, 63, 60, 56, 64, 51, 43, 75, 78, 75, 61, 64, 47, 69, 65, 74, 52, 55, 48, 63, 53, 56, 83, 76, 85, 65, 67, 73, 68, 49, 43, 48, 60, 61, 57, 67, 62, 58, 84, 52, 59, 58, 36, 43, 45, 82, 53, 82, 81, 101, 65, 58, 68, 54, 50, 56, 81, 83, 50, 57, 51, 81, 68, 71, 68, 46, 65, 56, 98, 74, 71, 53, 65, 59, 65, 72, 70, 63, 72, 70, 52, 70, 66, 54, 58, 63, 57, 73, 61, 78, 63, 41, 62, 57, 76, 56, 72, 32, 78, 64, 61, 57, 69, 47, 55, 73, 44, 82, 63, 52, 66, 61, 87, 54, 69, 71, 61, 52, 71, 61, 53, 77, 62, 45, 63, 73, 59, 81, 64, 66, 32, 59, 62, 86, 48, 71, 50, 58, 106, 50, 56, 65, 50, 53, 84, 62, 62, 65, 55, 78, 63, 64, 72, 88, 68, 72, 59, 67, 43, 43, 54, 66, 71, 74, 53, 68, 122, 60, 61, 65, 61, 59, 58, 80, 81, 72, 60, 67, 61, 65, 67, 74, 61, 72, 79, 69, 72, 68, 76, 67, 69, 63, 73, 56, 77, 74, 70, 69, 67, 53, 66, 62, 63, 67, 57, 71, 77, 59, 64, 71, 56, 42, 83, 71, 69, 62, 69, 60, 82, 63, 62, 58, 54, 69, 62, 70, 65, 54, 107, 62, 69, 55, 52, 102, 86, 49, 116, 81, 47, 78, 63, 71, 109, 59, 125, 86, 87, 73, 48, 80, 72, 66, 77, 116, 40, 70, 54, 60, 75, 59, 79, 59, 64, 74, 80, 53, 73, 88, 66, 59, 52, 63, 58, 49, 40, 75, 58, 67, 70, 75, 82, 48, 59, 67, 75, 70, 93, 62, 67, 71, 88, 62, 66, 52, 62, 73, 51, 85, 69, 60, 54, 89, 57, 72, 71, 63, 64, 69, 64, 58, 71, 60, 74, 50, 38, 53, 48, 47, 78, 59, 67, 38, 67, 63, 72, 69, 69, 59, 66, 79, 41, 71, 43, 74, 58, 69, 60, 72, 63, 52, 71, 60, 55, 59, 74, 68, 83, 64, 77, 62, 66, 67, 76, 65, 51, 80, 71, 70, 64, 53, 71, 57, 48, 75, 87, 64, 72, 57, 51, 59, 68, 73, 59, 69, 84, 63, 53, 61, 97, 85, 41, 74, 69, 65, 62, 119, 70, 84, 125, 59, 88, 62, 91, 65, 60, 75, 54, 74, 85, 76, 84, 69, 81, 74, 53, 59, 65, 68, 66, 74, 50, 63, 64, 64, 57, 65, 73, 97, 63, 110, 75, 55, 102, 63, 63, 70, 38, 64, 51, 81, 66, 60, 59, 82, 62, 60, 68, 72, 63, 90, 60, 62, 62, 57, 72, 82, 58, 69, 64, 63, 51, 67, 56, 60, 75, 97, 80, 61, 139, 62, 67, 75, 71, 57, 62, 62, 67, 61, 65, 78, 66, 73, 79, 70, 73, 56, 62, 68, 66, 86, 70, 70, 79, 66, 66, 82, 63, 41, 63, 69, 71, 58, 75, 56, 48, 72, 64, 74, 59, 91, 44, 79, 86, 64, 55, 70, 59, 62, 59, 58, 57, 82, 50, 64, 71, 62, 77, 63, 81, 71, 60, 71, 44, 61, 46, 70, 68, 61, 63, 58, 77, 77, 60, 66, 58, 53, 72, 116, 54, 67, 53, 59, 51, 69, 67, 62, 56, 62, 62, 62, 88, 69, 95, 52, 58, 89, 83, 79, 68, 74, 51, 79, 63, 63, 56, 73, 80, 64, 108, 57, 65, 74, 53, 44, 73, 70, 51, 71, 67, 72, 70, 63, 52, 48, 80, 58, 51, 63, 85, 71, 72, 49, 60, 93, 73, 58, 50, 59, 64, 56, 61, 60, 101, 71, 73, 60, 69, 93, 63, 58, 65, 65, 66, 63, 80, 77, 77, 48, 50, 97, 52, 56, 79, 91, 73, 62, 56, 61, 63, 71, 82, 69, 52, 55, 84, 76, 86, 69, 85, 57, 76, 64, 61, 63, 75, 58, 58, 68, 64, 63, 65, 56, 56, 65, 80, 58, 65, 74, 68, 52, 49, 58, 54, 103, 73, 68, 50, 74, 64, 86, 73, 68, 85, 61, 69, 62, 52, 93, 58, 75, 57, 70, 64, 65, 59, 82, 62, 40, 72, 59, 63, 81, 64, 57, 99, 65, 70, 73, 70, 61, 75, 72, 60, 66, 51, 53, 86, 55, 72, 46, 65, 67, 65, 76, 58, 106, 63, 59, 84, 32, 63, 56, 68, 50, 72, 79, 71, 49, 63, 56, 66, 69, 68, 54, 65, 56, 73, 120, 71, 46, 50, 57, 65, 63, 57, 78, 57, 82, 68, 57, 72, 55, 45, 59, 73, 89, 68, 83, 69, 64, 69, 78, 63, 89, 54, 67, 53, 42, 47, 65, 62, 65, 53, 81, 51, 60, 77, 82, 64, 66, 77, 58, 63, 74, 69, 43, 55, 57, 54, 67, 69, 66, 57, 54, 75, 55, 63, 131, 113, 77, 71, 56, 62, 68, 46, 86, 50, 67, 58, 52, 71, 65, 61, 52, 63, 56, 61, 55, 80, 77, 88, 94, 87, 51, 57, 91, 73, 58, 59, 60, 49, 60, 78, 56, 81, 76, 65, 66, 68, 71, 64, 71, 47, 62, 60, 44, 47, 58, 69, 56, 77, 84, 63, 103, 67, 78, 96, 59, 69, 53, 56, 57, 68, 66, 69, 48, 47, 69, 74, 54, 57, 86, 68, 60, 58, 90, 62, 81, 80, 57, 73, 81, 55, 57, 74, 70, 60, 56, 65, 53, 81, 52, 52, 98, 82, 60, 62, 78, 52, 61, 60, 66, 60, 62, 55, 73, 46, 56, 59, 85, 75, 60, 56, 63, 71, 64, 58, 79, 70, 58, 66, 65, 76, 71, 61, 46, 81, 73, 86, 78, 65, 60, 80, 63, 60, 31, 69, 67, 72, 65, 71, 50, 65, 54, 71, 64, 70, 60, 64, 71, 63, 64, 72, 70, 57, 38, 69, 67, 54, 45, 61, 71, 64, 50, 47, 54, 62, 62, 89, 59, 60, 53, 55, 62, 68, 78, 81, 67, 59, 66, 69, 68, 51, 51, 55, 86, 77, 66, 87, 72, 62, 70, 66, 63, 106, 80, 72, 108, 67, 49, 57, 56, 53, 69, 54, 72, 58, 98, 55, 62, 76, 76, 72, 64, 52, 124, 108, 69, 58, 45, 57, 78, 62, 78, 90, 70, 60, 52, 68, 68, 53, 63, 65, 62, 50, 87, 79, 59, 69, 61, 69, 62, 57, 66, 78, 53, 69, 67, 73, 66, 49, 58, 65, 71, 77, 82, 53, 68, 62, 68, 55, 63, 49, 61, 59, 63, 59, 54, 77, 60, 75, 49, 77, 51, 64, 55, 74, 99, 73, 62, 69, 60, 73, 59, 56, 58, 94, 41, 77, 85, 72, 49, 86, 68, 55, 50, 52, 70, 56, 68, 66, 63, 64, 70, 63, 62, 72, 69, 91, 76, 61, 60, 64, 68, 64, 51, 60, 78, 58, 77, 84, 106, 71, 51, 68, 60, 52, 63, 51, 49, 55, 53, 71, 74, 54, 91, 87, 72, 85, 72, 64, 77, 54, 57, 83, 59, 63, 50, 67, 91, 79, 90, 46, 57, 62, 75, 72, 62, 105, 76, 80, 35, 84, 49, 64, 47, 62, 71, 71, 51, 67, 46, 51, 60, 72, 52, 53, 87, 62, 82, 58, 69, 63, 80, 49, 54, 48, 57, 70, 92, 62, 49, 74, 64, 63, 101, 68, 75, 66, 70, 63, 59, 57, 67, 65, 71, 72, 57, 67, 61, 49, 68, 69, 55, 89, 47, 57, 49, 85, 81, 69, 67, 66, 88, 47, 63, 57, 66, 44, 65, 62, 59, 75, 69, 75, 68, 58, 58, 59, 78, 56, 52, 64, 55, 50, 100, 57, 76, 51, 73, 62, 46, 65, 82, 61, 93, 79, 68, 74, 69, 37, 55, 56, 63, 70, 70, 43, 50, 100, 67, 59, 62, 75, 54, 64, 83, 78, 70, 60, 61, 58, 54, 78, 74, 68, 74, 63, 67, 55, 58, 53, 65, 67, 58, 48, 64, 79, 75, 94, 69, 58, 71, 64, 64, 57, 82, 59, 67, 71, 50, 68, 58, 74, 65, 86, 66, 70, 74, 66, 82, 67, 64, 71, 52, 69, 77, 45, 75, 76, 78, 57, 66, 59, 77, 65, 79, 71, 73, 71, 60, 60, 60, 63, 50, 71, 74, 58, 66, 56, 78, 64, 77, 62, 82, 70, 60, 70, 85, 68, 76, 61, 129, 59, 68, 50, 63, 60, 53, 62, 50, 100, 71, 46, 49, 68, 63, 61, 58, 63, 71, 66, 65, 78, 75, 105, 67, 66, 44, 79, 111, 52, 71, 83, 60, 77, 68, 57, 56, 84, 82, 52, 65, 52, 63, 50, 53, 50, 67, 63, 93, 81, 41, 100, 45, 65, 76, 47, 59, 83, 69, 67, 70, 75, 54, 67, 74, 61, 69, 60, 80, 65, 79, 84, 77, 62, 66, 65, 85, 59, 78, 51, 59, 63, 44, 65, 92, 61, 63, 75, 59, 69, 60, 60, 96, 56, 95, 67, 60, 70, 66, 61, 66, 63, 78, 52, 53, 52, 56, 69, 64, 61, 72, 62, 63, 48, 63, 60, 39, 71, 64, 86, 65, 64, 60, 51, 63, 60, 88, 70, 62, 61, 62, 67, 53, 52, 75, 92, 70, 53, 51, 60, 60, 56, 57, 55, 51, 66, 55, 53, 78, 79, 54, 60, 84, 47, 81, 44, 70, 64, 88, 59, 53, 70, 89, 77, 51, 109, 62, 65, 59, 61, 67, 63, 62, 76, 62, 59, 72, 61, 77, 61, 68, 62, 59, 53, 55, 68, 54, 57, 67, 58, 64, 74, 59, 78, 52, 67, 66, 62, 73, 58, 67, 59, 63, 53, 65, 70, 57, 56, 65, 65, 66, 60, 91, 79, 69, 87, 62, 65, 52, 75, 78, 77, 95, 78, 66, 57, 63, 69, 75, 77, 72, 41, 65, 56, 70, 82, 48, 67, 67, 60, 87, 83, 57, 65, 70, 64, 67, 53, 73, 55, 60, 39, 78, 62, 82, 71, 60, 75, 59, 92, 74, 66, 72, 63, 51, 96, 49, 55, 64, 68, 65, 55, 69, 54, 66, 65, 65, 67, 64, 64, 60, 49, 72, 62, 55, 61, 86, 85, 54, 63, 67, 58, 59, 54, 60, 63, 46, 63, 60, 62, 103, 52, 55, 71, 66, 56, 93, 63, 55, 48, 60, 60, 66, 70, 47, 68, 64, 71, 82, 61, 55, 47, 55, 70, 54, 79, 64, 54, 54, 62, 55, 76, 59, 49, 56, 69, 90, 63, 80, 47, 72, 55, 60, 74, 55, 52, 75, 66, 76, 66, 57, 80, 78, 58, 78, 57, 75, 68, 73, 86, 65, 93, 62, 42, 72, 66, 71, 77, 47, 50, 66, 75, 55, 80, 92, 65, 56, 66, 70, 58, 66, 49, 65, 50, 75, 62, 65, 105, 56, 67, 101, 84, 70, 55, 53, 69, 65, 75, 59, 76, 70, 101, 56, 73, 61, 66, 59, 66, 61, 71, 80, 52, 60, 59, 60, 67, 57, 86, 65, 65, 64, 78, 76, 49, 46, 62, 75, 76, 69, 54, 67, 53, 92, 64, 46, 77, 61, 53, 66, 79, 68, 83, 62, 78, 63, 66, 70, 55, 52, 47, 45, 55, 64, 51, 62, 57, 100, 51, 55, 51, 37, 94, 52, 47, 71, 78, 64, 55, 69, 75, 67, 69, 57, 74, 72, 73, 55, 67, 76, 82, 69, 110, 63, 69, 75, 59, 68, 66, 87, 72, 76, 58, 84, 60, 70, 71, 64, 60, 52, 58, 49, 72, 79, 56, 72, 64, 65, 66, 44, 71, 79, 69, 80, 43, 72, 54, 63, 68, 82, 77, 47, 53, 75, 52, 62, 59, 58, 49, 73, 51, 60, 62, 84, 60, 65, 60, 84, 59, 67, 62, 68, 48, 56, 70, 65, 74, 61, 74, 71, 104, 45, 48, 70, 62, 93, 61, 89, 46, 60, 74, 61, 53, 58, 43, 58, 111, 71, 53, 73, 76, 49, 66, 72, 44, 59, 70, 62, 61, 55, 59, 58, 69, 68, 55, 74, 61, 69, 64, 65, 71, 96, 67, 60, 54, 67, 65, 90, 70, 57, 57, 66, 70, 60, 101, 69, 59, 67, 66, 55, 84, 53, 60, 75, 65, 60, 82, 87, 51, 76, 52, 84, 71, 65, 64, 68, 64, 48, 62, 85, 64, 66, 61, 90, 60, 53, 49, 55, 101, 88, 57, 69, 70, 63, 73, 70, 46, 92, 62, 78, 82, 81, 86, 60, 48, 62, 41, 63, 38, 46, 50, 65, 75, 50, 58, 59, 87, 86, 64, 67, 66, 88, 67, 72, 62, 71, 60, 43, 63, 59, 97, 96, 64, 77, 86, 49, 69, 56, 53, 65, 72, 67, 53, 69, 59, 49, 87, 103, 66, 88, 70, 63, 93, 68, 78, 64, 61, 79, 47, 68, 54, 67, 49, 65, 66, 82, 58, 55, 72, 74, 62, 61, 71, 61, 60, 63, 76, 82, 48, 69, 72, 59, 77, 72, 65, 58, 56, 87, 69, 49, 64, 104, 70, 82, 85, 68, 57, 59, 71, 58, 47, 85, 67, 88, 50, 64, 80, 69, 62, 70, 50, 69, 53, 51, 133, 64, 76, 48, 77, 51, 63, 49, 63, 71, 58, 53, 93, 79, 66, 54, 60, 91, 47, 60, 51, 82, 60, 61, 66, 73, 60, 97, 66, 66, 48, 78, 58, 76, 75, 71, 72, 42, 63, 75, 63, 65, 65, 62, 72, 71, 79, 61, 67, 55, 51, 91, 81, 60, 57, 70, 71, 60, 61, 66, 62, 70, 74, 68, 88, 62, 77, 85, 64, 70, 38, 59, 62, 56, 55, 64, 87, 107, 47, 78, 79, 60, 84, 67, 74, 53, 64, 54, 63, 37, 72, 74, 59, 65, 56, 78, 79, 63, 111, 55, 45, 61, 86, 76, 63, 87, 55, 49, 62, 68, 76, 52, 60, 67, 78, 52, 80, 41, 90, 61, 75, 63, 64, 60, 71, 57, 71, 72, 71, 51, 72, 61, 73, 116, 70, 71, 59, 71, 50, 91, 96, 74, 60, 57, 85, 54, 57, 63, 50, 84, 64, 50, 77, 91, 52, 86, 63, 54, 72, 69, 62, 67, 54, 78, 67, 72, 48, 53, 88, 70, 50, 59, 54, 53, 49, 57, 57, 57, 78, 51, 58, 57, 58, 113, 47, 61, 58, 91, 71, 61, 64, 52, 55, 59, 40, 89, 88, 62, 79, 80, 66, 70, 54, 68, 69, 73, 78, 62, 92, 46, 90, 70, 64, 59, 86, 85, 62, 61, 49, 68, 59, 61, 76, 60, 52, 55, 67, 75, 91, 80, 63, 61, 61, 59, 57, 63, 64, 76, 50, 83, 76, 81, 67, 58, 102, 89, 59, 60, 71, 107, 63, 70, 80, 52, 60, 57, 111, 58, 61, 100, 64, 68, 63, 74, 47, 62, 57, 84, 56, 69, 59, 49, 63, 61, 53, 101, 89, 54, 84, 99, 80, 63, 76, 68, 70, 75, 65, 71, 58, 99, 70, 35, 62, 66, 57, 71, 44, 55, 86, 64, 84, 65, 65, 61, 54, 99, 58, 60, 70, 114, 61, 56, 55, 61, 57, 71, 48, 66, 70, 68, 56, 98, 96, 53, 55, 59, 62, 76, 58, 54, 67, 55, 68, 70, 67, 55, 53, 67, 64, 83, 56, 66, 51, 89, 57, 55, 28, 67, 47, 82, 59, 109, 63, 67, 67, 85, 63, 52, 59, 64, 58, 70, 59, 81, 47, 66, 61, 89, 64, 67, 64, 65, 46, 48, 59, 55, 51, 74, 75, 50, 89, 81, 68, 61, 106, 53, 62, 68, 69, 62, 48, 68, 113, 80, 67, 53, 99, 66, 41, 60, 63, 57, 54, 61, 59, 50, 61, 62, 51, 57, 113, 64, 93, 53, 26, 81, 60, 75, 57, 70, 55, 79, 55, 100, 64, 42, 63, 62, 74, 72, 79, 68, 57, 74, 82, 59, 55, 64, 76, 56, 69, 59, 45, 52, 56, 63, 66, 47, 51, 52, 67, 35, 89, 26, 45, 46, 48, 54, 55, 75, 49, 81, 62, 59, 65, 70, 64, 57, 56, 88, 63, 61, 53, 75, 63, 57, 69, 70, 73, 47, 67, 48, 81, 49, 57, 69, 67, 72, 61, 49, 68, 64, 85, 76, 44, 45, 57, 44, 71, 57, 59, 62, 99, 52, 54, 64, 77, 87, 59, 66, 63, 56, 62, 109, 41, 62, 60, 61, 56, 82, 74, 60, 69, 45, 62, 53, 56, 85, 55, 51, 65, 59, 79, 71, 61, 73, 87, 65, 39, 59, 68, 55, 57, 80, 79, 65, 74, 70, 55, 56, 58, 59, 68, 64, 51, 60, 71, 97, 115, 54, 76, 49, 112, 93, 89, 56, 60, 68, 54, 66, 46, 61, 47, 100, 82, 56, 51, 72, 67, 101, 67, 85, 66, 62, 78, 59, 52, 55, 63, 67, 69, 61, 41, 57, 60, 54, 69, 80, 61, 67, 130, 51, 67, 57, 62, 61, 48, 59, 58, 59, 44, 75, 82, 95, 44, 77, 69, 77, 55, 63, 62, 74, 61, 78, 71, 74, 55, 57, 101, 52, 65, 71, 65, 73, 60, 70, 41, 45, 49, 69, 65, 63, 54, 103, 46, 52, 66, 79, 88, 65, 51, 51, 76, 70, 67, 50, 57, 74, 65, 52, 73, 48, 55, 62, 72, 89, 68, 111, 78, 64, 50, 78, 59, 41, 51, 68, 48, 64, 67, 60, 84, 83, 89, 69, 92, 57, 84, 70, 51, 51, 75, 57, 76, 63, 85, 62, 76, 86, 59, 64, 75, 66, 57, 53, 70, 46, 76, 61, 76, 69, 84, 85, 64, 83, 48, 48, 58, 79, 77, 72, 55, 42, 57, 51, 71, 71, 76, 67, 57, 69, 52, 73, 84, 72, 87, 75, 88, 61, 60, 76, 80, 59, 110, 87, 72, 54, 48, 78, 46, 106, 89, 77, 52, 50, 50, 66, 65, 73, 61, 62, 78, 59, 47, 81, 80, 63, 51, 63, 61, 86, 58, 69, 72, 74, 71, 42, 62, 63, 49, 65, 63, 46, 62, 76, 86, 55, 66, 85, 65, 67, 80, 69, 55, 70, 64, 70, 56, 65, 60, 76, 54, 65, 64, 63, 65, 76, 78, 59, 71, 82, 57, 59, 40, 75, 81, 81, 56, 101, 85, 70, 61, 58, 50, 57, 95, 84, 58, 75, 82, 73, 65, 62, 77, 60, 64, 59, 50, 61, 54, 106, 61, 60, 69, 70, 65, 50, 66, 62, 55, 70, 66, 67, 64, 64, 51, 58, 58, 63, 63, 63, 59, 56, 59, 56, 75, 57, 90, 66, 64, 55, 62, 66, 71, 69, 67, 64, 41, 73, 74, 62, 59, 59, 65, 55, 62, 64, 68, 60, 74, 72, 70, 61, 43, 55, 54, 63, 70, 47, 85, 58, 79, 60, 75, 54, 48, 93, 62, 67, 66, 63, 74, 61, 70, 49, 56, 58, 92, 56, 88, 57, 63, 67, 68, 80, 74, 89, 50, 71, 62, 70, 61, 71, 60, 70, 62, 66, 68, 57, 62, 64, 123, 68, 48, 60, 41, 101, 62, 84, 74, 52, 63, 53, 72, 71, 67, 48, 75, 72, 72, 70, 71, 81, 66, 65, 60, 64, 55, 72, 62, 80, 53, 53, 55, 66, 50, 63, 64, 40, 76, 88, 44, 74, 56, 39, 55, 67, 70, 74, 71, 48, 66, 68, 64, 79, 51, 70, 55, 47, 68, 119, 78, 114, 67, 55, 37, 79, 60, 69, 61, 63, 94, 70, 55, 58, 29, 73, 75, 82, 50, 59, 72, 85, 58, 67, 97, 67, 68, 67, 65, 79, 66, 68, 49, 74, 60, 66, 86, 77, 73, 70, 56, 79, 65, 71, 59, 67, 67, 60, 66, 62, 69, 60, 67, 77, 60, 67, 57, 93, 56, 52, 40, 76, 68, 70, 74, 79, 64, 66, 90, 66, 49, 66, 66, 104, 61, 64, 63, 71, 53, 75, 77, 62, 58, 100, 87, 95, 57, 53, 62, 45, 68, 77, 57, 59, 66, 66, 67, 67, 56, 49, 99, 52, 66, 61, 98, 54, 64, 46, 49, 71, 95, 45, 76, 73, 64, 66, 66, 74, 53, 43, 67, 66, 76, 64, 67, 59, 47, 76, 48, 60, 73, 84, 63, 71, 64, 64, 39, 60, 67, 61, 65, 119, 57, 75, 84, 53, 86, 56, 71, 58, 73, 101, 54, 65, 72, 57, 65, 69, 51, 63, 64, 86, 82, 76, 79, 74, 51, 55, 61, 70, 61, 52, 53, 74, 51, 60, 66, 67, 74, 75, 60, 68, 91, 51, 81, 58, 60, 68, 78, 72, 79, 59, 113, 72, 75, 65, 55, 62, 52, 67, 57, 66, 65, 59, 57, 72, 64, 69, 36, 81, 72, 92, 77, 72, 57, 99, 52, 44, 69, 70, 93, 64, 68, 70, 70, 60, 69, 49, 78, 88, 80, 68, 67, 64, 112, 66, 71, 61, 66, 80, 53, 59, 74, 65, 111, 57, 65, 52, 64, 45, 62, 43, 78, 61, 80, 66, 58, 82, 63, 64, 49, 86, 89, 75, 88, 90, 89, 98, 82, 67, 74, 64, 53, 60, 60, 79, 66, 42, 40, 48, 64, 57, 71, 69, 51, 121, 66, 58, 60, 69, 61, 77, 58, 58, 48, 58, 65, 56, 66, 73, 64, 70, 66, 51, 60, 61, 61, 87, 87, 65, 65, 46, 76, 61, 51, 81, 63, 57, 51, 77, 58, 86, 98, 83, 84, 67, 64, 62, 48, 64, 60, 75, 65, 100, 62, 57, 60, 77, 76, 67, 73, 43, 66, 61, 60, 60, 46, 64, 69, 77, 72, 80, 50, 40, 68, 54, 59, 92, 71, 49, 55, 86, 61, 49, 37, 61, 95, 60, 53, 73, 37, 48, 51, 66, 74, 81, 62, 57, 56, 41, 63, 90, 60, 69, 85, 57, 62, 85, 66, 66, 79, 66, 74, 74, 84, 48, 78, 54, 58, 78, 60, 58, 73, 65, 69, 64, 74, 67, 62, 109, 55, 75, 60, 60, 79, 47, 79, 58, 67, 55, 53, 53, 63, 57, 65, 54, 53, 47, 69, 73, 64, 67, 63, 66, 79, 70, 61, 70, 56, 54, 74, 52, 59, 55, 77, 63, 79, 61, 59, 62, 89, 77, 50, 55, 64, 52, 55, 53, 82, 52, 49, 62, 61, 60, 53, 60, 46, 56, 60, 69, 80, 65, 57, 42, 57, 61, 79, 72, 50, 49, 70, 70, 68, 66, 54, 62, 66, 77, 58, 72, 56, 66, 57, 45, 70, 54, 57, 68, 66, 70, 76, 67, 91, 62, 75, 66, 48, 76, 44, 60, 86, 66, 77, 49, 74, 47, 80, 45, 65, 62, 60, 78, 59, 48, 68, 60, 51, 51, 50, 57, 67, 70, 79, 55, 51, 67, 28, 61, 65, 61, 51, 71, 96, 63, 78, 65, 59, 76, 67, 55, 118, 43, 55, 64, 86, 74, 66, 79, 72, 77, 58, 69, 60, 61, 58, 96, 67, 61, 62, 69, 60, 56, 43, 69, 59, 47, 72, 47, 54, 64, 64, 65, 63, 56, 82, 58, 67, 92, 43, 62, 77, 45, 82, 56, 76, 76, 64, 108, 53, 58, 57, 62, 80, 61, 58, 63, 46, 76, 84, 58, 52, 41, 58, 86, 69, 61, 78, 49, 72, 61, 100, 52, 60, 58, 99, 57, 68, 74, 63, 74, 46, 77, 63, 97, 94, 77, 66, 73, 56, 69, 58, 54, 45, 44, 38, 71, 59, 68, 71, 72, 62, 91, 80, 74, 72, 39, 53, 99, 95, 67, 58, 49, 80, 68, 66, 58, 80, 94, 48, 66, 66, 59, 106, 62, 76, 78, 84, 68, 70, 75, 67, 46, 77, 57, 52, 61, 55, 66, 78, 63, 72, 74, 66, 64, 110, 128, 66, 56, 72, 43, 55, 45, 51, 62, 57, 68, 58, 61, 60, 61, 78, 57, 77, 59, 69, 65, 61, 75, 61, 58, 61, 77, 82, 55, 64, 82, 96, 46, 68, 47, 67, 77, 73, 72, 71, 58, 80, 81, 56, 72, 53, 38, 76, 100, 75, 53, 47, 65, 65, 27, 68, 61, 65, 52, 67, 55, 71, 60, 46, 51, 145, 60, 54, 55, 69, 68, 89, 49, 61, 76, 88, 46, 71, 71, 68, 43, 64, 45, 59, 78, 62, 77, 60, 69, 56, 78, 65, 50, 56, 69, 62, 86, 61, 59, 63, 74, 73, 42, 59, 63, 63, 84, 57, 48, 45, 77, 67, 57, 72, 55, 63, 73, 75, 55, 80, 72, 56, 78, 73, 51, 42, 62, 59, 53, 65, 61, 67, 64, 64, 51, 56, 56, 60, 80, 62, 66, 58, 64, 80, 87, 48, 76, 90, 59, 69, 53, 47, 51, 51, 71, 49, 71, 70, 73, 67, 41, 60, 63, 74, 60, 70, 86, 54, 74, 63, 73, 85, 62, 63, 61, 70, 66, 49, 52, 81, 58, 65, 69, 68, 60, 93, 55, 61, 59, 69, 81, 71, 61, 64, 64, 95, 56, 71, 60, 62, 62, 72, 57, 53, 68, 62, 42, 66, 62, 63, 71, 74, 55, 53, 56, 57, 55, 58, 61, 72, 51, 48, 65, 57, 67, 57, 52, 52, 64, 64, 68, 57, 48, 47, 59, 60, 79, 70, 96, 71, 59, 50, 56, 62, 57, 85, 74, 113, 51, 62, 41, 63, 70, 80, 65, 40, 66, 59, 68, 70, 76, 63, 69, 67, 60, 77, 70, 74, 65, 95, 70, 62, 60, 58, 82, 86, 67, 41, 60, 64, 48, 68, 65, 63, 62, 70, 56, 71, 61, 56, 74, 47, 70, 70, 65, 68, 74, 50, 81, 63, 56, 78, 46, 62, 54, 61, 72, 70, 80, 65, 71, 68, 75, 57, 63, 65, 72, 70, 58, 62, 51, 67, 69, 55, 60, 58, 56, 57, 116, 73, 63, 61, 54, 56, 88, 65, 78, 59, 62, 99, 69, 76, 99, 66, 50, 88, 62, 64, 50, 72, 102, 55, 73, 83, 51, 73, 59, 77, 76, 56, 90, 87, 75, 57, 68, 71, 93, 66, 56, 50, 75, 61, 43, 68, 56, 87, 50, 66, 68, 72, 78, 75, 56, 66, 57, 47, 56, 62, 58, 80, 67, 47, 63, 64, 68, 54, 70, 74, 74, 51, 65, 66, 81, 68, 66, 51, 63, 58, 81, 72, 52, 64, 62, 83, 112, 69, 67, 65, 62, 89, 86, 53, 66, 51, 77, 70, 63, 60, 56, 99, 55, 55, 68, 65, 58, 54, 46, 65, 72, 84, 61, 81, 61, 99, 66, 54, 54, 56, 64, 76, 51, 53, 56, 53, 60, 67, 82, 53, 71, 46, 61, 67, 72, 58, 74, 50, 39, 42, 69, 64, 113, 45, 69, 57, 65, 74, 74, 66, 59, 85, 78, 59, 84, 56, 75, 42, 53, 65, 52, 62, 55, 70, 80, 64, 76, 49, 65, 63, 53, 79, 68, 53, 71, 66, 73, 82, 71, 59, 77, 73, 65, 95, 70, 52, 50, 50, 64, 65, 78, 80, 59, 114, 48, 91, 69, 76, 55, 51, 74, 69, 87, 68, 64, 62, 65, 76, 58, 50, 65, 62, 94, 104, 75, 75, 72, 63, 63, 64, 50, 65, 59, 69, 84, 61, 64, 69, 70, 82, 50, 60, 65, 53, 51, 84, 58, 68, 75, 57, 77, 63, 83, 70, 45, 115, 65, 63, 57, 53, 50, 55, 60, 92, 62, 81, 44, 68, 67, 65, 55, 62, 91, 94, 67, 70, 62, 75, 69, 78, 74, 65, 73, 63, 58, 86, 69, 65, 84, 66, 74, 60, 64, 63, 63, 58, 122, 56, 63, 65, 64, 67, 64, 64, 69, 43, 50, 70, 57, 69, 48, 63, 74, 70, 46, 55, 70, 54, 59, 69, 49, 75, 40, 52, 64, 62, 67, 51, 77, 51, 71, 45, 64, 93, 98, 89, 74, 49, 47, 85, 82, 61, 80, 75, 94, 57, 71, 64, 63, 65, 59, 57, 53, 61, 68, 69, 65, 37, 69, 72, 74, 53, 65, 64, 51, 53, 40, 57, 78, 64, 65, 54, 57, 66, 61, 78, 62, 77, 92, 71, 96, 67, 57, 79, 66, 45, 64, 69, 66, 61, 71, 57, 66, 59, 61, 121, 57, 62, 71, 63, 65, 61, 78, 75, 67, 77, 71, 96, 59, 62, 83, 72, 54, 68, 47, 59, 52, 63, 61, 58, 116, 62, 58, 73, 61, 71, 67, 58, 57, 61, 88, 57, 59, 61, 45, 56, 76, 51, 63, 79, 84, 58, 56, 59, 75, 48, 72, 66, 89, 75, 61, 50, 72, 50, 63, 59, 66, 70, 55, 78, 65, 29, 69, 64, 61, 65, 58, 47, 53, 53, 60, 57, 54, 63, 59, 84, 67, 58, 62, 50, 53, 59, 77, 83, 61, 65, 67, 55, 48, 78, 44, 73, 67, 62, 61, 54, 68, 70, 55, 64, 68, 60, 55, 63, 70, 68, 67, 60, 81, 83, 71, 87, 71, 66, 68, 56, 56, 61, 68, 64, 76, 79, 55, 82, 52, 63, 64, 83, 67, 66, 85, 64, 73, 60, 44, 56, 73, 53, 63, 47, 74, 55, 76, 68, 61, 69, 69, 74, 72, 61, 60, 67, 70, 101, 63, 61, 73, 60, 73, 61, 59, 128, 61, 54, 62, 72, 59, 50, 92, 75, 52, 56, 73, 49, 39, 63, 32, 57, 44, 75, 63, 39, 73, 66, 63, 52, 65, 78, 62, 54, 65, 75, 46, 62, 59, 101, 59, 76, 83, 64, 65, 66, 63, 62, 79, 59, 58, 64, 95, 71, 48, 65, 57, 54, 64, 68, 51, 59, 79, 77, 83, 77, 71, 43, 74, 87, 55, 67, 57, 60, 41, 87, 55, 59, 41, 77, 56, 56, 76, 65, 56, 51, 65, 64, 99, 81, 58, 77, 67, 74, 86, 52, 53, 67, 64, 70, 72, 71, 53, 70, 80, 66, 49, 75, 76, 49, 65, 51, 68, 86, 43, 58, 66, 87, 83, 65, 55, 79, 77, 63, 56, 57, 69, 118, 67, 73, 48, 62, 56, 68, 67, 75, 69, 77, 69, 61, 79, 59, 55, 99, 65, 76, 60, 51, 58, 91, 101, 75, 73, 73, 60, 58, 66, 60, 59, 64, 67, 55, 84, 88, 56, 66, 69, 78, 59, 64, 64, 49, 50, 56, 64, 65, 64, 62, 71, 74, 89, 101, 73, 62, 64, 64, 68, 72, 51, 81, 60, 77, 72, 73, 75, 50, 97, 64, 73, 62, 106, 63, 97, 76, 78, 39, 66, 75, 59, 69, 64, 62, 62, 61, 46, 65, 67, 68, 64, 58, 65, 78, 49, 63, 69, 77, 51, 79, 77, 84, 67, 64, 69, 57, 80, 61, 84, 53, 50, 52, 54, 71, 63, 71, 58, 57, 63, 80, 75, 40, 70, 58, 61, 70, 41, 88, 73, 55, 68, 115, 63, 48, 62, 69, 83, 53, 71, 60, 62, 63, 54, 46, 93, 69, 60, 59, 54, 52, 68, 63, 72, 44, 56, 57, 59, 65, 55, 60, 69, 73, 51, 83, 74, 73, 89, 61, 75, 74, 53, 58, 42, 61, 67, 52, 48, 45, 56, 74, 47, 67, 56, 83, 78, 53, 71, 72, 44, 61, 72, 55, 50, 59, 57, 48, 72, 52, 64, 61, 58, 63, 62, 72, 74, 54, 58, 67, 72, 52, 118, 59, 80, 73, 76, 69, 53, 59, 64, 45, 77, 68, 60, 64, 73, 59, 62, 75, 98, 84, 61, 65, 37, 53, 46, 68, 69, 54, 50, 79, 55, 61, 59, 41, 54, 56, 54, 50, 65, 67, 51, 53, 77, 43, 56, 62, 48, 87, 56, 64, 79, 80, 65, 64, 47, 52, 70, 58, 49, 91, 56, 63, 65, 60, 56, 77, 73, 56, 49, 60, 63, 70, 89, 61, 70, 63, 70, 61, 59, 58, 85, 110, 53, 71, 84, 62, 87, 61, 52, 91, 52, 84, 64, 55, 65, 41, 42, 79, 76, 69, 85, 59, 60, 80, 60, 58, 74, 84, 61, 61, 78, 65, 72, 42, 45, 58, 60, 71, 66, 83, 116, 60, 59, 76, 79, 49, 57, 58, 70, 69, 64, 82, 64, 73, 74, 51, 60, 60, 45, 55, 69, 77, 90, 58, 53, 35, 66, 83, 72, 44, 68, 83, 71, 64, 47, 34, 59, 91, 72, 60, 60, 59, 102, 58, 59, 86, 66, 56, 54, 71, 59, 66, 68, 32, 70, 73, 55, 116, 83, 85, 54, 51, 92, 72, 76, 57, 126, 84, 83, 66, 68, 65, 56, 68, 78, 53, 87, 50, 99, 74, 89, 68, 78, 62, 82, 70, 49, 67, 70, 87, 45, 62, 60, 61, 73, 74, 82, 58, 67, 60, 62, 50, 72, 70, 62, 70, 87, 67, 73, 58, 73, 96, 61, 71, 65, 49, 68, 85, 65, 59, 64, 67, 83, 81, 50, 90, 64, 57, 53, 62, 74, 79, 48, 67, 73, 51, 62, 52, 68, 73, 93, 78, 85, 50, 60, 76, 70, 70, 62, 52, 73, 56, 56, 79, 69, 46, 58, 50, 73, 66, 71, 50, 115, 79, 71, 58, 46, 78, 62, 71, 59, 60, 70, 58, 62, 61, 53, 73, 50, 65, 56, 60, 80, 57, 81, 55, 60, 67, 63, 51, 74, 88, 35, 75, 74, 59, 60, 57, 70, 58, 93, 72, 72, 77, 66, 77, 64, 63, 71, 64, 55, 36, 54, 101, 56, 78, 61, 75, 62, 52, 78, 57, 77, 56, 53, 65, 48, 74, 81, 80, 66, 76, 94, 57, 88, 73, 68, 63, 39, 64, 62, 65, 81, 67, 67, 80, 65, 77, 69, 63, 66, 70, 59, 43, 58, 98, 57, 62, 60, 75, 111, 75, 86, 50, 54, 96, 66, 67, 57, 58, 60, 68, 64, 55, 54, 66, 99, 56, 65, 55, 49, 71, 61, 85, 83, 59, 77, 88, 85, 78, 84, 55, 49, 61, 49, 70, 51, 65, 67, 53, 70, 53, 75, 59, 91, 57, 115, 54, 68, 65, 78, 79, 81, 77, 53, 54, 62, 71, 65, 78, 61, 46, 65, 62, 97, 62, 69, 57, 69, 99, 39, 59, 63, 74, 100, 77, 59, 57, 71, 64, 88, 73, 93, 80, 84, 54, 55, 40, 55, 50, 54, 68, 66, 65, 112, 59, 74, 72, 87, 61, 51, 77, 92, 73, 61, 53, 74, 66, 53, 58, 82, 57, 55, 56, 49, 51, 66, 78, 56, 57, 71, 55, 83, 75, 95, 41, 56, 58, 84, 51, 69, 81, 63, 61, 70, 66, 69, 59, 60, 66, 77, 104, 53, 67, 64, 104, 52, 75, 70, 62, 56, 52, 55, 50, 97, 75, 67, 63, 80, 63, 71, 58, 55, 80, 66, 96, 51, 82, 56, 58, 50, 67, 71, 44, 62, 62, 58, 68, 69, 50, 61, 62, 55, 62, 58, 55, 59, 64, 47, 70, 71, 82, 64, 101, 58, 62, 51, 68, 41, 93, 83, 74, 60, 65, 69, 64, 54, 77, 68, 81, 72, 80, 47, 91, 45, 69, 57, 58, 61, 74, 64, 65, 76, 74, 71, 77, 75, 59, 67, 65, 60, 78, 71, 56, 55, 65, 83, 64, 61, 58, 37, 69, 74, 43, 69, 71, 54, 62, 89, 89, 71, 40, 63, 86, 53, 70, 64, 58, 96, 41, 69, 61, 66, 70, 75, 61, 73, 99, 62, 72, 58, 75, 69, 74, 67, 53, 58, 116, 66, 91, 52, 69, 50, 49, 55, 65, 83, 67, 64, 64, 82, 87, 79, 58, 46, 31, 60, 60, 64, 47, 60, 59, 67, 59, 73, 60, 87, 59, 65, 36, 67, 109, 73, 42, 71, 62, 58, 86, 77, 50, 80, 57, 87, 65, 49, 64, 68, 61, 55, 86, 58, 50, 55, 66, 54, 63, 63, 76, 70, 59, 50, 66, 87, 76, 60, 57, 74, 71, 59, 61, 76, 52, 96, 77, 63, 74, 74, 44, 110, 78, 54, 55, 62, 68, 74, 49, 80, 68, 70, 81, 63, 85, 73, 66, 63, 69, 39, 58, 47, 70, 56, 103, 55, 62, 51, 95, 83, 58, 54, 59, 86, 63, 38, 57, 69, 91, 61, 69, 61, 62, 82, 50, 53, 74, 71, 50, 78, 76, 64, 69, 63, 54, 52, 58, 89, 79, 59, 75, 89, 51, 28, 64, 69, 60, 71, 62, 60, 52, 79, 57, 65, 67, 43, 103, 65, 71, 86, 75, 62, 67, 54, 69, 69, 76, 53, 59, 84, 74, 63, 86, 71, 71, 67, 66, 61, 102, 110, 56, 60, 69, 62, 79, 50, 61, 56, 52, 49, 79, 68, 61, 57, 65, 60, 63, 58, 84, 54, 54, 66, 68, 45, 75, 76, 61, 44, 64, 64, 78, 56, 75, 62, 54, 58, 57, 75, 79, 66, 69, 58, 67, 74, 63, 73, 52, 87, 76, 43, 56, 53, 73, 60, 63, 67, 44, 56, 58, 113, 59, 73, 60, 68, 101, 72, 68, 88, 66, 75, 74, 51, 58, 79, 81, 77, 94, 75, 76, 50, 59, 57, 48, 77, 65, 73, 61, 77, 68, 49, 62, 75, 40, 53, 88, 50, 79, 52, 77, 72, 55, 54, 72, 65, 71, 103, 62, 60, 43, 61, 83, 57, 96, 56, 61, 57, 48, 87, 53, 72, 68, 44, 52, 86, 49, 63, 61, 57, 66, 57, 97, 54, 68, 82, 68, 58, 61, 70, 65, 64, 51, 59, 55, 64, 66, 59, 77, 88, 79, 61, 44, 43, 71, 45, 57, 58, 60, 72, 54, 98, 72, 67, 65, 43, 68, 68, 64, 80, 69, 59, 48, 78, 59, 69, 61, 65, 59, 85, 57, 72, 63, 62, 67, 61, 73, 54, 80, 93, 70, 58, 65, 70, 89, 50, 60, 63, 53, 61, 61, 49, 56, 80, 60, 63, 44, 56, 60, 62, 68, 64, 67, 44, 67, 49, 64, 68, 69, 61, 56, 54, 49, 52, 76, 49, 45, 71, 64, 52, 58, 71, 69, 66, 58, 56, 56, 67, 75, 58, 56, 59, 74, 63, 62, 68, 84, 55, 66, 53, 53, 61, 85, 69, 68, 72, 83, 57, 59, 67, 53, 63, 56, 51, 49, 59, 71, 69, 59, 101, 56, 72, 73, 54, 53, 103, 71, 60, 82, 70, 70, 70, 67, 73, 81, 57, 67, 54, 61, 76, 62, 80, 71, 62, 60, 47, 46, 65, 62, 65, 47, 57, 112, 65, 62, 73, 72, 85, 80, 86, 56, 48, 57, 41, 56, 57, 58, 115, 60, 76, 70, 62, 57, 79, 67, 81, 79, 53, 65, 65, 63, 50, 61, 42, 55, 58, 50, 49, 61, 63, 78, 67, 66, 75, 53, 63, 93, 67, 64, 41, 58, 62, 75, 64, 60, 59, 63, 86, 117, 69, 53, 67, 80, 77, 58, 57, 82, 65, 73, 67, 44, 68, 63, 67, 72, 42, 64, 77, 59, 44, 69, 74, 61, 68, 92, 70, 59, 67, 72, 55, 84, 66, 72, 64, 68, 72, 53, 43, 92, 67, 64, 64, 70, 82, 60, 68, 62, 51, 50, 68, 65, 67, 48, 56, 58, 62, 101, 59, 48, 62, 72, 80, 53, 82, 51, 97, 102, 65, 48, 53, 96, 64, 94, 74, 81, 63, 88, 70, 57, 66, 101, 42, 82, 61, 61, 70, 64, 88, 55, 83, 67, 57, 82, 67, 58, 66, 60, 81, 53, 57, 71, 93, 74, 64, 74, 52, 84, 68, 70, 60, 59, 84, 52, 57, 74, 63, 76, 57, 51, 57, 61, 71, 59, 67, 53, 71, 59, 63, 58, 56, 55, 82, 41, 82, 72, 57, 62, 56, 69, 56, 63, 46, 57, 70, 51, 56, 82, 53, 57, 77, 73, 50, 77, 70, 130, 59, 71, 67, 53, 42, 75, 65, 74, 52, 101, 59, 62, 56, 40, 77, 54, 55, 65, 55, 68, 68, 71, 60, 61, 60, 57, 95, 101, 52, 69, 93, 67, 76, 72, 65, 76, 59, 54, 49, 81, 55, 71, 61, 78, 64, 63, 68, 51, 49, 100, 56, 73, 64, 53, 68, 67, 68, 49, 59, 107, 56, 83, 68, 70, 59, 55, 58, 67, 74, 82, 70, 60, 70, 62, 60, 60, 69, 47, 57, 67, 64, 75, 71, 73, 79, 58, 52, 64, 156, 62, 51, 51, 59, 64, 73, 57, 63, 72, 58, 48, 141, 57, 55, 71, 58, 57, 47, 73, 55, 61, 68, 89, 74, 50, 69, 70, 62, 82, 84, 60, 64, 74, 65, 110, 62, 62, 64, 72, 52, 73, 90, 44, 72, 74, 49, 89, 48, 78, 63, 74, 64, 46, 69, 62, 49, 58, 52, 47, 114, 49, 73, 76, 71, 73, 66, 73, 63, 69, 71, 47, 54, 86, 93, 79, 67, 67, 68, 60, 43, 61, 89, 63, 52, 57, 68, 67, 64, 61, 77, 42, 63, 62, 95, 58, 90, 64, 73, 58, 69, 70, 73, 75, 75, 67, 73, 61, 61, 69, 51, 83, 59, 83, 67, 67, 74, 65, 67, 64, 55, 50, 64, 53, 67, 67, 74, 58, 57, 67, 69, 57, 70, 73, 69, 65, 117, 50, 64, 56, 77, 66, 58, 70, 49, 75, 64, 93, 58, 58, 58, 78, 70, 67, 55, 65, 58, 76, 57, 61, 91, 91, 60, 65, 65, 60, 57, 47, 70, 66, 73, 39, 63, 60, 81, 87, 70, 61, 62, 69, 56, 64, 56, 56, 66, 59, 65, 62, 75, 57, 62, 84, 80, 73, 68, 74, 66, 72, 81, 68, 62, 60, 58, 61, 49, 71, 59, 59, 68, 78, 55, 58, 81, 85, 64, 64, 55, 62, 57, 74, 56, 68, 73, 71, 67, 103, 50, 66, 64, 56, 44, 58, 46, 62, 71, 60, 49, 89, 70, 61, 61, 76, 69, 98, 83, 64, 79, 68, 66, 55, 66, 55, 73, 56, 64, 65, 83, 78, 67, 63, 65, 73, 59, 79, 76, 66, 54, 53, 68, 69, 51, 66, 66, 72, 82, 77, 60, 133, 104, 50, 57, 56, 74, 77, 61, 65, 71, 56, 58, 52, 57, 73, 85, 54, 57, 84, 42, 55, 58, 58, 52, 74, 57, 71, 73, 37, 50, 73, 53, 55, 55, 112, 64, 62, 48, 76, 65, 51, 47, 51, 68, 66, 60, 64, 72, 48, 44, 105, 62, 56, 56, 44, 74, 53, 70, 62, 83, 49, 61, 61, 42, 75, 62, 65, 80, 76, 69, 67, 57, 51, 62, 68, 74, 65, 72, 62, 67, 78, 60, 66, 74, 96, 64, 63, 67, 56, 110, 60, 63, 52, 58, 67, 73, 47, 80, 74, 79, 66, 68, 68, 66, 60, 50, 86, 94, 78, 61, 71, 63, 92, 75, 66, 56, 75, 64, 63, 72, 74, 68, 140, 74, 83, 59, 45, 62, 63, 63, 53, 59, 90, 68, 75, 62, 67, 69, 111, 68, 70, 62, 70, 55, 87, 116, 63, 84, 64, 61, 62, 64, 63, 59, 69, 49, 73, 62, 66, 64, 85, 51, 60, 64, 80, 75, 73, 54, 71, 57, 68, 64, 58, 50, 63, 84, 95, 63, 59, 62, 49, 64, 64, 60, 104, 65, 47, 71, 55, 60, 62, 54, 61, 58, 53, 69, 55, 67, 77, 85, 55, 57, 65, 53, 70, 70, 65, 63, 60, 49, 91, 45, 62, 67, 59, 79, 106, 90, 61, 94, 85, 59, 61, 105, 47, 67, 58, 55, 52, 68, 58, 63, 70, 73, 52, 64, 53, 56, 85, 60, 53, 76, 44, 47, 45, 56, 56, 60, 61, 61, 66, 85, 59, 74, 63, 75, 71, 75, 79, 76, 72, 70, 57, 55, 71, 67, 59, 75, 64, 56, 59, 66, 61, 80, 52, 61, 51, 65, 72, 100, 50, 70, 77, 66, 64, 65, 47, 76, 70, 73, 61, 51, 88, 64, 47, 68, 49, 66, 67, 80, 58, 62, 48, 58, 79, 89, 73, 84, 62, 78, 72, 80, 67, 59, 62, 83, 67, 60, 58, 55, 56, 84, 74, 63, 71, 69, 64, 57, 64, 59, 79, 44, 70, 83, 72, 60, 67, 71, 70, 52, 48, 65, 60, 59, 52, 64, 61, 62, 55, 64, 66, 69, 46, 59, 61, 66, 65, 48, 71, 67, 49, 54, 68, 47, 56, 57, 51, 66, 54, 63, 59, 64, 65, 58, 56, 76, 68, 62, 65, 52, 71, 57, 73, 74, 65, 54, 60, 51, 69, 67, 72, 66, 113, 65, 56, 57, 79, 73, 56, 85, 61, 63, 58, 88, 49, 64, 48, 68, 63, 71, 50, 60, 62, 98, 78, 42, 52, 58, 47, 101, 59, 82, 63, 74, 58, 65, 67, 51, 57, 65, 75, 77, 65, 84, 68, 71, 62, 59, 67, 70, 55, 68, 52, 65, 57, 60, 74, 59, 56, 50, 71, 56, 66, 115, 69, 66, 63, 64, 62, 76, 76, 57, 58, 50, 47, 60, 67, 68, 59, 89, 63, 48, 54, 50, 61, 57, 67, 91, 57, 46, 67, 58, 60, 85, 77, 75, 81, 68, 77, 66, 104, 85, 69, 58, 76, 84, 61, 52, 107, 62, 76, 62, 98, 55, 53, 57, 65, 93, 51, 71, 108, 71, 53, 64, 63, 87, 52, 64, 57, 102, 68, 65, 57, 40, 66, 54, 62, 59, 85, 95, 62, 89, 56, 45, 69, 62, 80, 56, 49, 52, 72, 63, 51, 67, 89, 70, 68, 67, 71, 71, 70, 65, 50, 64, 68, 62, 56, 70, 81, 65, 79, 63, 60, 44, 75, 69, 60, 59, 60, 57, 67, 55, 52, 58, 66, 39, 73, 58, 66, 55, 59, 59, 74, 84, 76, 67, 78, 71, 53, 58, 53, 58, 73, 78, 56, 43, 65, 57, 65, 63, 68, 87, 77, 65, 44, 53, 62, 59, 58, 60, 83, 51, 61, 58, 60, 80, 70, 66, 59, 59, 76, 62, 64, 84, 74, 65, 66, 70, 65, 68, 52, 63, 66, 75, 63, 64, 69, 66, 78, 60, 48, 66, 78, 56, 59, 55, 61, 54, 60, 67, 74, 53, 64, 101, 69, 47, 55, 52, 117, 65, 64, 73, 55, 58, 64, 72, 94, 86, 73, 65, 75, 68, 71, 56, 64, 77, 59, 67, 61, 71, 49, 73, 88, 64, 57, 72, 69, 67, 64, 66, 81, 64, 67, 56, 84, 77, 48, 60, 65, 58, 71, 76, 65, 54, 90, 60, 76, 67, 87, 51, 51, 55, 60, 66, 61, 67, 89, 72, 99, 68, 70, 70, 54, 72, 74, 69, 51, 61, 58, 57, 67, 64, 73, 69, 58, 72, 76, 65, 45, 73, 61, 72, 83, 91, 55, 58, 68, 79, 62, 58, 59, 54, 61, 45, 65, 58, 61, 81, 61, 96, 73, 61, 65, 64, 69, 63, 74, 66, 88, 58, 61, 60, 61, 75, 72, 65, 75, 74, 77, 69, 52, 79, 115, 67, 52, 50, 67, 52, 55, 65, 49, 78, 54, 57, 69, 57, 60, 84, 66, 56, 69, 57, 53, 76, 62, 59, 65, 99, 42, 66, 96, 94, 62, 73, 58, 78, 78, 50, 56, 59, 98, 88, 84, 70, 55, 62, 52, 52, 66, 64, 73, 49, 65, 64, 55, 97, 63, 86, 60, 71, 66, 76, 60, 67, 80, 53, 83, 73, 61, 49, 54, 73, 48, 104, 47, 69, 59, 67, 91, 56, 76, 79, 65, 55, 64, 81, 73, 64, 57, 52, 77, 73, 78, 49, 58, 69, 77, 51, 116, 66, 104, 72, 56, 75, 85, 71, 72, 58, 50, 61, 74, 62, 55, 67, 74, 48, 63, 48, 57, 71, 64, 77, 66, 60, 59, 46, 66, 67, 80, 58, 67, 50, 62, 68, 66, 63, 75, 52, 65, 50, 59, 63, 71, 62, 89, 73, 61, 68, 58, 64, 75, 60, 53, 52, 47, 72, 56, 65, 69, 66, 66, 58, 68, 52, 64, 64, 79, 77, 64, 57, 81, 49, 50, 48, 70, 72, 68, 65, 58, 56, 79, 78, 55, 71, 45, 69, 74, 52, 88, 58, 62, 67, 60, 56, 82, 67, 60, 84, 61, 56, 69, 54, 78, 65, 70, 64, 68, 59, 66, 73, 125, 69, 59, 71, 69, 66, 54, 63, 59, 73, 49, 74, 61, 72, 51, 59, 62, 65, 51, 61, 71, 70, 65, 68, 60, 77, 72, 51, 74, 77, 74, 69, 67, 48, 93, 75, 69, 51, 50, 71, 87, 62, 63, 63, 76, 71, 59, 67, 82, 60, 56, 61, 52, 52, 56, 66, 85, 69, 60, 58, 65, 48, 70, 80, 64, 79, 80, 79, 103, 61, 45, 46, 77, 60, 60, 54, 65, 51, 54, 62, 78, 89, 46, 72, 68, 71, 78, 71, 68, 63, 86, 57, 61, 60, 76, 66, 64, 69, 72, 76, 64, 60, 58, 78, 63, 90, 61, 63, 83, 80, 66, 66, 56, 77, 56, 71, 59, 74, 81, 59, 55, 62, 65, 52, 70, 78, 70, 56, 56, 58, 44, 67, 75, 64, 54, 54, 66, 77, 54, 55, 96, 85, 86, 53, 69, 69, 67, 53, 72, 62, 76, 58, 69, 60, 64, 76, 86, 61, 80, 86, 70, 53, 72, 55, 78, 55, 67, 61, 64, 76, 58, 67, 91, 57, 58, 72, 54, 68, 97, 127, 60, 98, 66, 60, 78, 63, 90, 69, 49, 63, 82, 78, 74, 61, 55, 77, 71, 55, 68, 57, 51, 63, 81, 59, 65, 73, 60, 49, 50, 59, 81, 65, 81, 61, 67, 43, 76, 94, 76, 60, 70, 57, 61, 56, 62, 62, 71, 60, 70, 42, 49, 52, 74, 70, 68, 58, 56, 66, 68, 92, 67, 63, 72, 74, 72, 62, 58, 63, 54, 77, 67, 64, 54, 86, 90, 65, 56, 90, 57, 49, 68, 52, 63, 69, 64, 83, 70, 48, 61, 72, 80, 61, 60, 52, 75, 66, 52, 100, 66, 71, 54, 58, 66, 58, 57, 87, 70, 46, 41, 56, 55, 73, 87, 84, 55, 72, 61, 68, 59, 62, 57, 75, 55, 71, 59, 47, 73, 76, 65, 80, 86, 54, 57, 110, 56, 58, 67, 63, 67, 54, 58, 54, 45, 52, 66, 65, 80, 58, 58, 60, 55, 51, 61, 59, 46, 57, 65, 54, 71, 49, 57, 54, 78, 70, 67, 86, 66, 75, 50, 69, 78, 57, 54, 65, 63, 74, 45, 69, 61, 60, 68, 68, 63, 59, 67, 80, 85, 78, 63, 80, 78, 51, 81, 72, 81, 72, 71, 73, 55, 66, 74, 60, 59, 52, 84, 71, 53, 69, 64, 51, 59, 54, 52, 76, 75, 63, 81, 56, 73, 71, 52, 67, 52, 51, 74, 58, 63, 52, 67, 64, 48, 54, 69, 73, 63, 57, 51, 65, 76, 48, 62, 69, 62, 62, 63, 67, 98, 42, 44, 52, 57, 67, 66, 74, 78, 68, 62, 88, 67, 35, 58, 47, 79, 52, 74, 49, 49, 89, 105, 65, 74, 58, 66, 75, 68, 67, 66, 66, 72, 47, 58, 52, 80, 62, 84, 54, 81, 70, 57, 51, 72, 67, 65, 45, 89, 52, 58, 61, 73, 76, 51, 62, 61, 55, 66, 68, 73, 100, 70, 53, 66, 64, 59, 58, 68, 84, 56, 68, 78, 68, 61, 79, 66, 65, 64, 57, 74, 95, 66, 44, 57, 76, 67, 69, 50, 61, 90, 73, 90, 44, 75, 57, 63, 58, 72, 78, 68, 66, 64, 77, 58, 61, 103, 72, 53, 53, 97, 54, 57, 84, 69, 89, 66, 61, 53, 92, 67, 65, 42, 60, 76, 59, 74, 58, 73, 68, 64, 70, 62, 77, 50, 71, 74, 75, 68, 69, 58, 66, 83, 52, 77, 62, 56, 71, 44, 68, 76, 57, 59, 62, 58, 110, 52, 91, 64, 56, 54, 53, 72, 57, 55, 55, 53, 75, 93, 79, 63, 67, 64, 73, 53, 52, 58, 70, 54, 60, 57, 66, 87, 78, 71, 62, 75, 55, 54, 61, 71, 59, 55, 66, 96, 83, 76, 47, 54, 51, 52, 75, 80, 63, 101, 44, 70, 60, 64, 66, 51, 67, 55, 82, 60, 63, 71, 66, 69, 53, 47, 50, 58, 85, 52, 61, 69, 60, 75, 50, 56, 63, 66, 56, 51, 71, 53, 69, 54, 66, 64, 55, 69, 90, 73, 64, 58, 72, 81, 58, 66, 44, 61, 68, 77, 70, 66, 69, 67, 47, 56, 106, 52, 42, 98, 65, 81, 53, 50, 76, 62, 70, 72, 54, 127, 65, 67, 73, 73, 62, 58, 87, 79, 88, 77, 59, 70, 62, 84, 83, 67, 61, 77, 76, 93, 59, 63, 72, 88, 72, 66, 68, 81, 58, 38, 66, 65, 77, 72, 69, 78, 70, 73, 53, 63, 59, 96, 51, 64, 77, 54, 65, 69, 59, 54, 65, 108, 59, 67, 54, 65, 66, 78, 49, 64, 76, 62, 63, 63, 55, 69, 54, 66, 85, 62, 51, 52, 56, 88, 63, 72, 59, 64, 58, 82, 53, 55, 68, 75, 60, 65, 52, 49, 71, 59, 64, 73, 121, 73, 64, 60, 58, 52, 55, 60, 60, 81, 57, 59, 75, 56, 81, 65, 62, 66, 58, 57, 57, 65, 83, 66, 61, 56, 42, 80, 60, 49, 64, 56, 84, 76, 70, 51, 65, 82, 89, 45, 65, 61, 62, 40, 71, 46, 73, 60, 112, 60, 67, 63, 68, 54, 67, 67, 71, 67, 61, 58, 67, 65, 72, 84, 81, 67, 70, 68, 64, 67, 61, 59, 91, 61, 50, 58, 75, 73, 56, 62, 73, 53, 82, 61, 96, 76, 73, 93, 63, 59, 70, 52, 77, 67, 67, 65, 66, 67, 66, 87, 70, 59, 66, 61, 56, 79, 67, 53, 90, 66, 46, 89, 64, 53, 58, 64, 65, 60, 54, 63, 82, 69, 69, 71, 96, 62, 51, 56, 56, 48, 61, 75, 70, 54, 62, 91, 73, 68, 61, 58, 57, 73, 61, 55, 70, 51, 60, 68, 91, 91, 69, 63, 64, 76, 64, 78, 58, 64, 81, 57, 64, 64, 63, 72, 62, 109, 59, 60, 61, 55, 59, 60, 55, 59, 70, 60, 47, 51, 63, 71, 75, 56, 52, 56, 69, 50, 52, 73, 56, 57, 54, 71, 62, 74, 58, 66, 68, 101, 54, 49, 89, 69, 75, 47, 68, 45, 65, 60, 47, 83, 85, 72, 70, 101, 63, 76, 55, 65, 66, 62, 58, 70, 68, 56, 57, 78, 73, 68, 54, 74, 63, 67, 51, 71, 55, 60, 64, 61, 50, 55, 58, 59, 76, 63, 51, 63, 45, 63, 62, 48, 52, 90, 65, 69, 52, 62, 64, 91, 61, 63, 59, 90, 66, 64, 59, 122, 60, 41, 83, 65, 65, 63, 72, 56, 78, 51, 71, 53, 79, 75, 54, 59, 61, 65, 65, 55, 55, 64, 62, 57, 64, 61, 69, 77, 71, 81, 52, 52, 91, 97, 72, 36, 74, 67, 56, 53, 60, 58, 56, 66, 61, 76, 71, 47, 63, 72, 60, 72, 62, 66, 49, 69, 56, 52, 73, 65, 72, 53, 46, 68, 46, 62, 76, 68, 54, 89, 77, 59, 62, 80, 71, 67, 71, 73, 73, 65, 51, 74, 100, 110, 61, 47, 57, 62, 105, 57, 91, 66, 56, 59, 54, 61, 55, 73, 77, 61, 71, 76, 63, 71, 56, 90, 86, 91, 77, 65, 62, 86, 78, 61, 63, 64, 67, 47, 52, 74, 55, 102, 67, 74, 66, 50, 78, 76, 61, 66, 57, 75, 51, 51, 75, 69, 72, 99, 70, 71, 63, 52, 63, 86, 130, 57, 68, 54, 57, 61, 66, 64, 59, 54, 56, 58, 86, 68, 64, 59, 50, 80, 55, 50, 76, 66, 70, 70, 50, 71, 57, 67, 63, 72, 96, 85, 66, 85, 70, 48, 66, 52, 80, 90, 62, 49, 61, 53, 59, 64, 71, 67, 64, 66, 112, 62, 61, 79, 97, 67, 68, 55, 48, 71, 71, 70, 61, 49, 48, 67, 78, 73, 55, 72, 83, 103, 73, 60, 57, 75, 58, 59, 65, 65, 70, 60, 56, 69, 52, 66, 67, 74, 81, 61, 59, 76, 68, 75, 48, 67, 64, 74, 75, 56, 81, 65, 63, 56, 67, 56, 73, 57, 67, 59, 56, 60, 61, 79, 86, 74, 54, 61, 63, 50, 45, 63, 83, 62, 61, 69, 78, 71, 86, 44, 77, 73, 68, 67, 111, 52, 65, 76, 57, 62, 55, 61, 64, 62, 53, 50, 79, 68, 60, 64, 60, 78, 56, 53, 56, 63, 59, 57, 74, 55, 38, 70, 53, 67, 53, 52, 73, 61, 57, 64, 65, 60, 49, 61, 65, 91, 74, 56, 74, 82, 58, 61, 83, 71, 79, 46, 47, 62, 69, 56, 84, 80, 50, 64, 71, 85, 60, 71, 58, 60, 65, 72, 56, 68, 56, 86, 52, 65, 66, 52, 55, 57, 41, 85, 54, 61, 67, 83, 72, 59, 52, 63, 52, 52, 74, 47, 57, 75, 92, 66, 76, 68, 72, 48, 86, 62, 60, 71, 55, 62, 76, 64, 57, 53, 55, 61, 65, 83, 67, 72, 93, 70, 53, 85, 58, 44, 54, 61, 58, 91, 61, 58, 67, 61, 61, 70, 63, 53, 101, 73, 57, 73, 61, 45, 77, 79, 77, 72, 63, 37, 66, 62, 64, 65, 71, 67, 64, 71, 70, 60, 73, 78, 75, 56, 61, 78, 50, 52, 67, 66, 65, 64, 53, 55, 91, 56, 86, 80, 95, 56, 49, 59, 61, 71, 55, 68, 65, 75, 63, 71, 57, 61, 84, 66, 59, 63, 53, 72, 89, 69, 57, 65, 95, 60, 68, 55, 60, 56, 69, 100, 65, 68, 65, 89, 56, 54, 68, 80, 45, 96, 98, 38, 64, 104, 61, 66, 51, 63, 72, 64, 100, 68, 52, 79, 58, 60, 106, 64, 58, 83, 45, 62, 56, 55, 57, 89, 51, 52, 83, 69, 62, 61, 64, 68, 77, 59, 62, 80, 59, 88, 111, 81, 60, 73, 60, 57, 65, 82, 63, 63, 64, 61, 104, 67, 84, 59, 65, 66, 65, 54, 56, 58, 61, 50, 91, 70, 61, 66, 75, 71, 67, 64, 68, 56, 59, 59, 73, 60, 69, 76, 53, 62, 53, 76, 66, 61, 57, 83, 62, 52, 82, 80, 75, 98, 64, 59, 67, 48, 87, 63, 47, 86, 84, 57, 72, 79, 63, 57, 65, 69, 61, 68, 61, 69, 68, 56, 68, 61, 58, 57, 105, 55, 54, 64, 71, 67, 55, 69, 58, 67, 44, 67, 52, 49, 55, 65, 80, 64, 59, 60, 75, 58, 68, 68, 82, 58, 62, 51, 60, 73, 62, 59, 62, 62, 50, 74, 51, 59, 80, 52, 59, 115, 58, 43, 67, 65, 53, 63, 75, 76, 70, 127, 68, 67, 71, 62, 70, 57, 67, 71, 90, 60, 57, 53, 62, 85, 63, 74, 73, 66, 89, 67, 65, 60, 88, 65, 68, 49, 55, 76, 68, 97, 59, 56, 57, 63, 65, 63, 70, 57, 56, 58, 51, 91, 68, 63, 70, 68, 65, 48, 62, 51, 48, 112, 66, 57, 63, 71, 75, 78, 70, 57, 70, 58, 68, 76, 81, 64, 64, 55, 79, 75, 65, 63, 60, 92, 72, 77, 61, 50, 74, 81, 63, 43, 62, 48, 66, 63, 42, 68, 70, 58, 55, 55, 119, 46, 64, 61, 68, 64, 55, 66, 66, 75, 64, 52, 64, 66, 69, 65, 77, 49, 73, 70, 56, 89, 78, 62, 65, 67, 63, 67, 65, 58, 74, 69, 57, 78, 75, 66, 72, 81, 79, 52, 65, 54, 66, 71, 71, 63, 85, 70, 101, 48, 57, 69, 55, 56, 63, 58, 71, 59, 76, 71, 56, 91, 63, 59, 56, 60, 58, 50, 55, 59, 60, 75, 64, 68, 69, 60, 76, 63, 55, 62, 59, 66, 85, 62, 98, 64, 63, 99, 55, 78, 77, 55, 70, 62, 70, 60, 60, 55, 61, 102, 60, 62, 84, 85, 51, 50, 69, 76, 82, 51, 66, 53, 52, 64, 71, 59, 70, 55, 46, 76, 61, 59, 67, 52, 95, 65, 62, 52, 56, 54, 82, 81, 59, 73, 81, 87, 52, 61, 51, 74, 71, 76, 76, 78, 64, 56, 51, 55, 78, 68, 57, 55, 57, 51, 55, 49, 65, 55, 69, 46, 61, 80, 62, 76, 56, 93, 67, 71, 62, 71, 55, 57, 60, 44, 54, 64, 52, 75, 76, 56, 64, 51, 68, 52, 43, 54, 63, 54, 53, 58, 87, 70, 41, 77, 64, 76, 55, 48, 49, 57, 94, 50, 49, 91, 61, 83, 49, 63, 57, 59, 66, 52, 83, 72, 74, 69, 67, 64, 52, 73, 64, 49, 48, 83, 56, 69, 73, 45, 61, 68, 68, 78, 65, 69, 63, 71, 77, 66, 65, 62, 75, 66, 61, 73, 70, 63, 60, 50, 55, 64, 65, 90, 74, 72, 63, 62, 52, 74, 66, 67, 70, 58, 63, 63, 63, 113, 52, 76, 77, 52, 60, 56, 63, 51, 64, 69, 61, 65, 66, 58, 65, 62, 47, 64, 60, 54, 78, 53, 64, 64, 69, 58, 65, 66, 62, 57, 67, 66, 67, 101, 60, 63, 66, 78, 72, 58, 68, 68, 71, 65, 76, 68, 79, 66, 71, 66, 66, 77, 75, 81, 61, 71, 59, 59, 82, 69, 65, 61, 59, 53, 50, 58, 88, 66, 59, 91, 68, 60, 60, 81, 69, 68, 74, 58, 92, 64, 65, 69, 92, 102, 49, 46, 71, 64, 73, 66, 94, 73, 57, 68, 62, 77, 80, 74, 65, 52, 74, 67, 65, 77, 60, 77, 84, 84, 65, 46, 63, 77, 58, 59, 73, 56, 64, 80, 75, 59, 61, 121, 66, 65, 56, 53, 72, 53, 51, 80, 64, 87, 53, 65, 82, 62, 52, 103, 52, 69, 77, 58, 58, 89, 119, 69, 48, 44, 53, 71, 60, 81, 59, 58, 51, 62, 75, 67, 54, 63, 67, 76, 59, 56, 61, 63, 89, 67, 60, 89, 54, 66, 76, 58, 46, 83, 53, 44, 39, 60, 77, 54, 60, 84, 65, 68, 63, 58, 58, 65, 88, 58, 72, 67, 101, 59, 51, 62, 83, 62, 62, 58, 62, 70, 79, 57, 76, 64, 63, 81, 70, 62, 68, 78, 60, 102, 77, 72, 55, 73, 71, 76, 84, 81, 77, 59, 55, 66, 45, 59, 87, 62, 72, 53, 72, 60, 80, 59, 73, 63, 71, 63, 53, 66, 54, 56, 63, 59, 53, 58, 85, 60, 53, 103, 75, 57, 66, 85, 56, 63, 51, 53, 69, 83, 70, 62, 78, 40, 68, 63, 63, 57, 56, 37, 70, 65, 68, 56, 97, 58, 63, 69, 72, 52, 61, 48, 60, 82, 112, 53, 83, 85, 65, 57, 69, 76, 67, 83, 64, 60, 64, 56, 66, 70, 38, 54, 56, 59, 72, 61, 55, 50, 71, 72, 55, 61, 63, 65, 71, 73, 75, 50, 54, 59, 56, 69, 86, 65, 65, 97, 71, 77, 83, 60, 72, 57, 50, 56, 82, 52, 69, 64, 63, 53, 55, 70, 59, 56, 68, 54, 53, 73, 57, 85, 55, 54, 54, 48, 55, 77, 60, 65, 86, 73, 66, 64, 75, 55, 67, 49, 82, 49, 63, 58, 55, 52, 50, 64, 74, 55, 55, 64, 63, 78, 50, 51, 61, 59, 72, 59, 60, 104, 64, 66, 67, 58, 63, 66, 81, 54, 65, 66, 64, 59, 49, 55, 57, 66, 68, 60, 55, 54, 86, 96, 55, 49, 63, 60, 94, 59, 64, 102, 61, 76, 67, 70, 65, 64, 76, 53, 50, 64, 60, 77, 92, 71, 62, 70, 68, 71, 68, 64, 57, 46, 58, 68, 60, 53, 65, 63, 68, 76, 97, 57, 67, 52, 75, 60, 91, 55, 77, 63, 66, 65, 56, 52, 77, 65, 63, 58, 52, 62, 69, 64, 70, 72, 75, 68, 44, 62, 63, 64, 58, 72, 97, 74, 80, 64, 56, 110, 57, 64, 63, 38, 59, 54, 72, 82, 43, 68, 68, 76, 64, 73, 79, 68, 84, 49, 65, 49, 54, 63, 56, 71, 86, 65, 59, 58, 97, 40, 48, 74, 73, 71, 77, 61, 77, 69, 64, 77, 67, 72, 48, 86, 63, 72, 71, 42, 53, 75, 54, 89, 71, 67, 57, 66, 80, 86, 69, 70, 57, 55, 99, 70, 71, 79, 76, 38, 42, 78, 68, 71, 51, 76, 79, 62, 68, 59, 60, 65, 59, 55, 68, 46, 63, 69, 74, 66, 70, 50, 63, 70, 74, 72, 70, 45, 65, 54, 71, 69, 47, 45, 98, 44, 45, 52, 62, 58, 62, 66, 75, 56, 65, 74, 71, 57, 72, 56, 75, 73, 60, 60, 73, 61, 61, 88, 57, 69, 64, 59, 70, 56, 70, 62, 80, 68, 58, 51, 71, 74, 53, 77, 46, 72, 69, 52, 70, 69, 76, 69, 62, 48, 116, 86, 75, 68, 55, 57, 69, 72, 55, 69, 107, 85, 71, 71, 62, 45, 70, 55, 71, 67, 42, 58, 50, 100, 88, 69, 58, 49, 66, 71, 70, 47, 73, 82, 55, 70, 62, 42, 74, 79, 60, 56, 77, 49, 69, 66, 84, 64, 67, 52, 66, 82, 86, 40, 63, 79, 61, 61, 65, 68, 64, 64, 49, 80, 61, 87, 65, 66, 74, 75, 55, 57, 77, 68, 60, 90, 76, 81, 54, 57, 46, 61, 63, 72, 59, 77, 64, 75, 66, 66, 74, 70, 67, 68, 62, 69, 66, 68, 80, 80, 88, 68, 60, 79, 64, 72, 63, 60, 51, 53, 44, 54, 64, 49, 83, 65, 116, 74, 64, 60, 56, 79, 75, 84, 62, 68, 92, 66, 79, 86, 57, 76, 62, 65, 88, 87, 60, 68, 87, 97, 37, 53, 40, 71, 115, 73, 63, 57, 64, 78, 54, 62, 59, 82, 76, 67, 52, 62, 84, 66, 68, 67, 59, 50, 106, 57, 71, 100, 58, 65, 66, 51, 67, 71, 54, 73, 64, 88, 53, 68, 68, 91, 71, 50, 36, 89, 55, 78, 50, 78, 47, 58, 83, 70, 50, 56, 74, 72, 84, 49, 89, 86, 56, 68, 67, 45, 44, 61, 74, 57, 59, 58, 56, 83, 61, 89, 71, 75, 62, 75, 47, 82, 68, 61, 61, 85, 62, 68, 60, 66, 59, 58, 57, 68, 69, 94, 59, 83, 65, 53, 95, 67, 65, 86, 78, 66, 52, 76, 59, 48, 55, 97, 66, 55, 62, 57, 63, 72, 49, 58, 74, 76, 61, 65, 84, 80, 62, 55, 58, 68, 99, 66, 49, 66, 100, 74, 63, 71, 47, 95, 90, 103, 63, 66, 61, 58, 67, 66, 71, 69, 72, 57, 78, 55, 69, 58, 71, 65, 50, 54, 68, 63, 81, 54, 58, 53, 59, 72, 58, 76, 43, 71, 65, 43, 66, 70, 77, 61, 75, 45, 73, 76, 68, 46, 61, 77, 56, 56, 61, 57, 64, 81, 50, 65, 67, 53, 61, 100, 71, 79, 71, 56, 74, 79, 54, 69, 65, 56, 55, 89, 44, 54, 63, 73, 56, 75, 64, 65, 64, 62, 68, 60, 70, 73, 67, 54, 43, 48, 60, 67, 65, 91, 74, 76, 56, 76, 82, 61, 83, 66, 63, 96, 65, 59, 81, 53, 81, 66, 67, 53, 48, 56, 65, 58, 70, 63, 80, 45, 66, 67, 66, 58, 62, 66, 66, 55, 63, 79, 53, 68, 59, 46, 71, 63, 63, 81, 61, 73, 50, 84, 45, 68, 103, 57, 54, 54, 66, 66, 92, 74, 57, 78, 69, 61, 71, 66, 76, 63, 66, 69, 69, 63, 65, 57, 67, 71, 51, 70, 60, 52, 54, 88, 74, 47, 67, 66, 45, 63, 61, 70, 65, 55, 56, 66, 81, 94, 56, 80, 59, 81, 74, 63, 81, 46, 69, 76, 67, 64, 63, 66, 79, 75, 80, 89, 79, 46, 57, 113, 88, 82, 57, 55, 61, 75, 59, 58, 68, 70, 81, 69, 55, 68, 61, 109, 93, 70, 95, 54, 67, 69, 42, 86, 61, 60, 59, 54, 74, 80, 77, 65, 81, 57, 50, 90, 63, 99, 100, 60, 75, 61, 58, 64, 63, 80, 76, 52, 77, 70, 96, 56, 69, 99, 91, 92, 55, 58, 71, 53, 71, 65, 71, 51, 45, 62, 62, 69, 67, 89, 68, 73, 68, 46, 71, 36, 75, 92, 61, 52, 54, 58, 56, 69, 67, 56, 66, 67, 36, 60, 75, 64, 56, 54, 53, 66, 47, 78, 100, 52, 58, 59, 52, 51, 63, 61, 61, 62, 76, 90, 64, 69, 55, 85, 50, 49, 85, 51, 61, 77, 81, 62, 63, 48, 81, 60, 36, 60, 59, 90, 52, 70, 74, 59, 61, 80, 26, 57, 54, 58, 72, 70, 63, 78, 58, 46, 58, 59, 65, 73, 69, 85, 84, 70, 85, 48, 66, 74, 63, 52, 67, 51, 62, 34, 75, 57, 100, 65, 64, 75, 52, 83, 74, 52, 59, 87, 67, 63, 56, 58, 64, 88, 57, 66, 85, 60, 68, 64, 63, 57, 53, 51, 75, 53, 61, 55, 94, 63, 64, 55, 69, 46, 65, 68, 55, 55, 60, 66, 64, 41, 58, 56, 83, 36, 65, 60, 67, 92, 74, 62, 79, 53, 55, 85, 59, 68, 66, 62, 65, 52, 37, 68, 55, 85, 87, 70, 55, 65, 65, 76, 66, 92, 64, 92, 58, 57, 70, 55, 124, 55, 67, 56, 63, 51, 52, 79, 87, 65, 83, 73, 88, 62, 58, 59, 70, 92, 73, 65, 60, 75, 69, 62, 63, 68, 77, 89, 60, 59, 78, 66, 68, 58, 53, 48, 75, 58, 86, 65, 77, 75, 63, 62, 55, 47, 58, 61, 64, 81, 58, 61, 75, 74, 83, 52, 57, 57, 73, 93, 69, 66, 103, 104, 64, 71, 47, 81, 61, 80, 93, 63, 61, 78, 47, 114, 66, 72, 92, 63, 54, 73, 82, 55, 68, 80, 65, 50, 86, 52, 55, 51, 85, 53, 66, 91, 58, 75, 60, 70, 50, 52, 87, 53, 74, 51, 47, 62, 58, 72, 59, 99, 67, 58, 65, 61, 95, 67, 73, 64, 64, 74, 87, 66, 85, 59, 71, 67, 65, 53, 73, 59, 97, 52, 62, 69, 103, 61, 77, 61, 67, 74, 62, 51, 61, 57, 82, 77, 52, 61, 44, 72, 60, 84, 55, 52, 112, 63, 43, 60, 83, 69, 69, 77, 64, 66, 67, 39, 68, 69, 87, 54, 67, 77, 53, 63, 72, 84, 63, 59, 60, 57, 52, 51, 60, 46, 73, 70, 92, 70, 61, 60, 53, 41, 60, 81, 61, 66, 59, 47, 58, 78, 62, 63, 68, 94, 66, 85, 60, 42, 46, 65, 58, 58, 49, 52, 64, 62, 56, 83, 65, 46, 97, 111, 62, 58, 56, 79, 58, 73, 65, 66, 75, 64, 59, 64, 64, 55, 69, 81, 57, 69, 76, 70, 60, 71, 53, 75, 80, 59, 69, 58, 57, 66, 80, 44, 73, 86, 58, 65, 58, 106, 70, 50, 70, 58, 51, 70, 77, 70, 70, 64, 77, 67, 60, 59, 132, 59, 78, 59, 85, 48, 83, 85, 76, 65, 65, 67, 63, 44, 58, 61, 77, 73, 64, 81, 93, 51, 92, 64, 63, 80, 67, 68, 62, 66, 72, 69, 69, 123, 55, 88, 68, 50, 67, 63, 61, 64, 52, 52, 36, 86, 48, 48, 64, 76, 74, 54, 67, 68, 69, 47, 65, 59, 82, 61, 82, 83, 70, 84, 75, 69, 62, 58, 78, 75, 70, 58, 75, 59, 53, 92, 75, 71, 58, 67, 91, 54, 73, 73, 67, 61, 78, 61, 71, 97, 52, 79, 54, 40, 44, 69, 64, 64, 58, 55, 59, 64, 62, 60, 74, 54, 96, 47, 95, 93, 78, 94, 55, 52, 55, 93, 58, 45, 84, 78, 70, 69, 60, 61, 66, 46, 59, 55, 77, 50, 52, 52, 67, 67, 61, 63, 42, 44, 74, 61, 96, 54, 58, 80, 60, 64, 55, 106, 58, 53, 53, 61, 59, 59, 62, 73, 75, 74, 46, 69, 60, 77, 89, 49, 56, 81, 78, 59, 67, 67, 51, 55, 106, 80, 58, 76, 104, 66, 57, 55, 85, 55, 64, 59, 46, 57, 75, 50, 58, 60, 64, 69, 61, 38, 64, 59, 64, 58, 47, 73, 60, 90, 67, 58, 81, 62, 59, 66, 50, 42, 52, 44, 105, 61, 65, 64, 56, 63, 89, 74, 41, 61, 61, 78, 66, 74, 69, 58, 63, 48, 106, 52, 67, 58, 68, 59, 100, 70, 64, 47, 61, 55, 68, 65, 65, 63, 61, 85, 59, 67, 55, 65, 57, 73, 63, 53, 55, 44, 67, 76, 42, 64, 41, 130, 61, 68, 52, 69, 63, 59, 61, 86, 73, 59, 56, 65, 89, 92, 57, 46, 43, 84, 87, 70, 64, 94, 47, 70, 74, 53, 64, 69, 59, 50, 66, 77, 63, 87, 64, 47, 65, 69, 74, 58, 60, 66, 55, 52, 63, 65, 62, 55, 61, 65, 69, 47, 70, 71, 46, 70, 74, 60, 53, 52, 66, 65, 62, 57, 87, 77, 58, 62, 45, 82, 54, 65, 55, 50, 63, 55, 62, 54, 44, 85, 73, 81, 72, 55, 62, 66, 65, 51, 69, 72, 77, 91, 55, 61, 64, 65, 63, 66, 56, 65, 63, 72, 56, 59, 59, 66, 57, 64, 73, 74, 77, 84, 48, 62, 69, 70, 45, 43, 67, 58, 62, 69, 52, 49, 59, 79, 61, 78, 61, 61, 66, 52, 61, 94, 68, 84, 71, 48, 67, 71, 60, 79, 69, 46, 38, 56, 133, 99, 58, 59, 51, 71, 47, 59, 56, 70, 70, 75, 68, 68, 53, 81, 73, 55, 52, 65, 77, 62, 60, 60, 64, 58, 54, 68, 79, 43, 72, 61, 78, 63, 48, 69, 80, 84, 96, 69, 78, 63, 49, 57, 93, 63, 69, 63, 79, 71, 78, 68, 74, 100, 42, 68, 83, 72, 83, 59, 64, 61, 48, 51, 61, 61, 76, 61, 73, 53, 74, 63, 116, 58, 63, 65, 66, 80, 57, 67, 45, 89, 71, 62, 67, 64, 62, 59, 67, 77, 72, 63, 54, 72, 48, 57, 78, 64, 62, 45, 72, 55, 72, 62, 54, 74, 77, 59, 48, 57, 76, 74, 62, 61, 101, 74, 59, 64, 64, 60, 69, 66, 86, 56, 101, 54, 54, 51, 75, 59, 73, 60, 77, 67, 54, 43, 54, 71, 82, 52, 68, 44, 58, 71, 71, 56, 58, 54, 90, 67, 62, 66, 50, 101, 57, 59, 56, 75, 56, 72, 55, 91, 72, 44, 56, 58, 64, 48, 43, 49, 69, 58, 63, 47, 68, 58, 58, 57, 103, 61, 65, 52, 102, 87, 85, 74, 56, 64, 90, 67, 64, 43, 59, 41, 68, 57, 64, 58, 51, 73, 78, 56, 62, 65, 77, 71, 53, 108, 64, 48, 58, 63, 71, 67, 70, 67, 80, 59, 76, 74, 100, 48, 51, 60, 65, 53, 60, 68, 55, 58, 62, 64, 54, 59, 65, 56, 62, 58, 63, 68, 65, 66, 76, 81, 59, 59, 71, 56, 56, 53, 83, 54, 48, 62, 82, 78, 97, 60, 42, 73, 53, 68, 77, 71, 83, 60, 54, 66, 45, 60, 67, 56, 84, 61, 96, 57, 68, 59, 54, 79, 61, 83, 65, 122, 66, 54, 62, 70, 94, 83, 122, 58, 63, 63, 61, 48, 59, 64, 67, 65, 47, 48, 49, 55, 72, 51, 65, 60, 60, 55, 116, 71, 61, 69, 60, 63, 67, 76, 65, 62, 59, 85, 56, 68, 60, 72, 68, 89, 61, 49, 58, 50, 59, 54, 66, 57, 57, 59, 62, 72, 79, 57, 63, 69, 39, 47, 76, 51, 40, 74, 64, 57, 64, 59, 66, 68, 46, 59, 58, 68, 50, 81, 65, 85, 64, 76, 60, 66, 66, 54, 52, 64, 73, 77, 58, 64, 95, 62, 49, 69, 72, 86, 54, 80, 56, 53, 56, 89, 71, 53, 57, 71, 63, 53, 54, 48, 108, 46, 76, 64, 60, 88, 56, 48, 71, 75, 62, 88, 56, 59, 77, 61, 61, 47, 59, 61, 79, 55, 62, 73, 45, 61, 57, 72, 55, 69, 58, 49, 62, 41, 60, 69, 80, 65, 58, 83, 71, 63, 90, 70, 63, 52, 57, 84, 60, 68, 72, 57, 71, 60, 61, 42, 49, 118, 51, 84, 73, 69, 45, 59, 75, 54, 74, 53, 59, 57, 72, 70, 80, 62, 94, 65, 59, 100, 105, 63, 45, 58, 51, 69, 54, 61, 53, 59, 55, 55, 46, 55, 64, 52, 48, 76, 81, 59, 79, 74, 66, 45, 105, 74, 60, 64, 75, 51, 68, 81, 69, 67, 105, 62, 69, 72, 51, 67, 73, 69, 83, 56, 64, 65, 81, 89, 63, 40, 75, 65, 74, 80, 55, 58, 94, 61, 70, 108, 60, 81, 57, 65, 55, 59, 43, 60, 51, 77, 84, 51, 55, 66, 53, 74, 63, 56, 67, 59, 70, 61, 62, 93, 90, 84, 76, 90, 54, 62, 80, 87, 70, 58, 57, 61, 72, 70, 63, 59, 53, 62, 51, 43, 72, 80, 91, 48, 58, 71, 84, 67, 76, 57, 51, 54, 74, 50, 71, 70, 67, 56, 51, 62, 85, 139, 86, 70, 60, 70, 62, 59, 84, 69, 54, 53, 46, 73, 76, 75, 89, 59, 66, 59, 60, 65, 60, 73, 73, 69, 66, 71, 61, 76, 55, 71, 64, 55, 57, 98, 58, 46, 62, 59, 65, 55, 51, 61, 64, 61, 78, 65, 69, 75, 62, 80, 54, 57, 66, 46, 82, 55, 63, 58, 72, 66, 58, 57, 62, 51, 62, 101, 61, 55, 66, 49, 74, 67, 70, 60, 84, 75, 60, 58, 55, 53, 59, 59, 47, 61, 62, 72, 88, 61, 58, 81, 66, 73, 61, 55, 66, 64, 56, 65, 67, 68, 70, 72, 61, 71, 55, 108, 80, 51, 57, 46, 67, 69, 58, 58, 83, 59, 64, 55, 79, 73, 87, 70, 62, 97, 47, 82, 64, 67, 74, 73, 105, 61, 51, 55, 67, 68, 59, 90, 60, 57, 53, 63, 69, 46, 86, 69, 82, 61, 67, 75, 47, 64, 76, 57, 61, 65, 53, 64, 86, 81, 56, 39, 63, 54, 67, 83, 47, 59, 65, 69, 82, 69, 77, 63, 75, 107, 62, 72, 90, 43, 60, 58, 54, 71, 45, 55, 56, 80, 60, 80, 126, 66, 54, 45, 107, 65, 52, 53, 77, 63, 46, 63, 115, 45, 61, 58, 82, 57, 70, 55, 61, 61, 71, 69, 45, 46, 65, 48, 66, 66, 68, 63, 61, 53, 64, 58, 81, 52, 71, 74, 67, 74, 93, 61, 59, 58, 67, 70, 73, 60, 80, 66, 73, 77, 102, 65, 77, 55, 67, 57, 54, 71, 71, 66, 60, 50, 70, 53, 100, 50, 69, 50, 49, 57, 58, 89, 72, 64, 68, 47, 61, 50, 72, 80, 41, 72, 70, 119, 91, 64, 83, 70, 64, 56, 85, 47, 57, 88, 56, 66, 85, 65, 68, 61, 69, 57, 60, 55, 73, 67, 61, 56, 63, 54, 46, 58, 98, 66, 69, 60, 65, 75, 48, 58, 72, 76, 60, 93, 80, 70, 64, 70, 63, 57, 51, 69, 63, 58, 66, 68, 89, 66, 101, 63, 59, 56, 89, 65, 52, 66, 71, 65, 73, 52, 63, 57, 61, 102, 63, 72, 54, 53, 63, 45, 67, 64, 71, 61, 49, 65, 78, 66, 73, 60, 62, 73, 70, 49, 83, 62, 42, 50, 66, 87, 59, 55, 60, 68, 66, 94, 80, 53, 59, 65, 86, 75, 50, 97, 70, 59, 83, 64, 69, 93, 76, 64, 52, 70, 50, 47, 87, 76, 68, 66, 67, 77, 68, 68, 66, 70, 57, 66, 59, 67, 49, 51, 57, 85, 69, 70, 52, 65, 81, 70, 96, 56, 58, 80, 51, 48, 61, 49, 69, 45, 74, 55, 69, 72, 67, 102, 60, 57, 92, 90, 65, 69, 77, 69, 64, 58, 49, 98, 73, 72, 75, 69, 78, 55, 79, 92, 52, 73, 61, 74, 51, 95, 62, 61, 66, 48, 54, 88, 82, 81, 106, 59, 47, 47, 63, 65, 51, 49, 52, 68, 49, 56, 49, 54, 60, 55, 57, 80, 66, 62, 84, 71, 108, 51, 58, 57, 55, 62, 63, 72, 56, 48, 68, 62, 63, 55, 62, 61, 59, 72, 67, 59, 68, 43, 55, 67, 64, 48, 56, 61, 104, 59, 60, 55, 46, 59, 73, 47, 52, 51, 62, 52, 79, 67, 62, 61, 72, 89, 54, 53, 65, 103, 64, 62, 72, 58, 51, 64, 55, 57, 80, 74, 57, 72, 59, 73, 42, 64, 68, 64, 63, 56, 65, 65, 58, 98, 62, 59, 78, 60, 69, 77, 62, 109, 58, 52, 68, 61, 84, 67, 44, 63, 76, 60, 57, 42, 52, 76, 68, 48, 64, 48, 78, 80, 62, 49, 52, 63, 87, 51, 73, 60, 81, 76, 66, 73, 65, 66, 100, 53, 126, 82, 73, 69, 48, 59, 74, 72, 76, 77, 109, 57, 63, 66, 100, 73, 65, 55, 58, 66, 97, 52, 89, 58, 48, 74, 58, 82, 59, 58, 82, 62, 65, 84, 67, 47, 65, 49, 46, 65, 85, 47, 49, 69, 66, 65, 62, 65, 64, 87, 65, 64, 80, 61, 73, 77, 70, 57, 48, 62, 57, 76, 55, 66, 52, 60, 78, 79, 57, 55, 77, 79, 78, 51, 66, 80, 54, 66, 54, 58, 71, 62, 68, 58, 112, 65, 82, 69, 48, 56, 62, 60, 60, 64, 79, 58, 95, 72, 77, 67, 78, 69, 72, 82, 71, 52, 63, 67, 60, 67, 63, 53, 69, 82, 126, 69, 52, 87, 50, 55, 71, 61, 69, 92, 67, 72, 63, 70, 66, 72, 64, 46, 65, 63, 66, 55, 74, 80, 70, 48, 68, 51, 61, 63, 64, 66, 67, 56, 41, 52, 70, 73, 79, 67, 73, 70, 53, 74, 65, 54, 43, 69, 58, 59, 65, 77, 79, 72, 92, 43, 69, 61, 62, 60, 59, 69, 59, 40, 71, 63, 71, 46, 84, 74, 75, 139, 71, 93, 77, 51, 57, 55, 80, 78, 85, 61, 77, 76, 61, 77, 49, 54, 56, 63, 64, 57, 37, 122, 79, 42, 82, 68, 53, 66, 68, 91, 66, 62, 72, 53, 65, 85, 74, 72, 76, 78, 59, 60, 69, 72, 60, 54, 64, 79, 59, 43, 56, 63, 49, 58, 60, 61, 53, 63, 53, 78, 50, 86, 71, 62, 72, 56, 74, 68, 47, 65, 64, 52, 49, 68, 74, 77, 69, 60, 134, 60, 89, 70, 47, 52, 80, 68, 54, 51, 55, 58, 64, 44, 66, 50, 85, 88, 57, 94, 57, 84, 55, 55, 73, 42, 59, 64, 66, 93, 46, 70, 61, 75, 71, 50, 68, 70, 76, 41, 63, 64, 53, 52, 77, 66, 81, 70, 60, 53, 52, 59, 66, 57, 77, 67, 61, 61, 47, 64, 67, 62, 70, 65, 66, 54, 60, 67, 63, 73, 54, 69, 113, 80, 62, 69, 74, 54, 83, 66, 53, 63, 66, 34, 63, 65, 60, 80, 64, 113, 60, 86, 61, 61, 69, 88, 74, 64, 61, 60, 70, 61, 67, 70, 59, 49, 83, 58, 70, 74, 58, 76, 71, 51, 89, 54, 61, 82, 57, 57, 87, 49, 54, 74, 74, 65, 74, 90, 46, 62, 73, 67, 51, 83, 64, 65, 57, 67, 59, 71, 52, 59, 75, 59, 62, 66, 71, 80, 55, 74, 60, 95, 60, 74, 69, 74, 69, 55, 67, 68, 80, 74, 65, 44, 54, 81, 75, 96, 81, 90, 63, 60, 84, 63, 65, 57, 56, 52, 52, 52, 84, 50, 71, 48, 73, 93, 68, 50, 65, 58, 65, 52, 79, 72, 70, 122, 58, 71, 78, 61, 57, 54, 46, 70, 95, 65, 56, 58, 47, 65, 49, 113, 69, 60, 55, 65, 81, 46, 92, 59, 64, 67, 69, 87, 68, 85, 87, 60, 71, 81, 49, 74, 69, 66, 83, 67, 55, 69, 53, 77, 51, 97, 54, 69, 80, 65, 77, 41, 64, 66, 48, 96, 64, 42, 68, 44, 56, 84, 68, 50, 59, 50, 80, 54, 56, 71, 60, 56, 103, 64, 58, 107, 52, 48, 65, 85, 55, 54, 62, 64, 87, 60, 84, 55, 64, 65, 52, 55, 55, 69, 63, 57, 62, 71, 71, 72, 64, 36, 60, 71, 75, 61, 75, 71, 49, 51, 65, 72, 56, 58, 48, 56, 50, 57, 67, 65, 79, 65, 71, 65, 56, 62, 58, 50, 68, 62, 60, 63, 69, 94, 76, 62, 55, 64, 61, 69, 102, 73, 85, 93, 71, 83, 62, 74, 68, 60, 71, 48, 68, 64, 62, 63, 95, 68, 68, 52, 84, 47, 74, 76, 80, 87, 72, 69, 53, 80, 67, 52, 73, 73, 92, 63, 73, 63, 52, 49, 81, 72, 61, 57, 72, 54, 57, 75, 82, 80, 70, 53, 53, 57, 85, 59, 59, 73, 46, 47, 80, 50, 59, 51, 76, 64, 72, 66, 62, 61, 74, 80, 61, 56, 72, 52, 82, 60, 54, 66, 53, 73, 76, 60, 52, 67, 66, 96, 67, 63, 53, 63, 75, 98, 58, 66, 72, 52, 73, 71, 78, 65, 73, 59, 63, 58, 54, 51, 72, 54, 49, 61, 88, 64, 75, 63, 55, 76, 90, 62, 67, 80, 62, 60, 54, 32, 68, 67, 68, 43, 66, 60, 73, 62, 58, 63, 41, 56, 73, 69, 87, 66, 60, 74, 62, 102, 54, 57, 75, 55, 61, 83, 98, 51, 86, 48, 60, 64, 56, 61, 60, 57, 48, 60, 60, 124, 65, 99, 60, 57, 73, 74, 80, 75, 61, 86, 77, 71, 51, 80, 62, 62, 62, 44, 44, 57, 81, 69, 47, 35, 65, 70, 57, 63, 89, 50, 72, 41, 63, 64, 89, 84, 63, 88, 53, 75, 74, 61, 68, 76, 64, 57, 51, 84, 60, 75, 66, 107, 69, 45, 76, 81, 58, 54, 51, 71, 76, 72, 54, 71, 77, 58, 62, 50, 46, 61, 73, 50, 80, 50, 66, 63, 53, 52, 75, 92, 67, 49, 49, 80, 73, 61, 40, 91, 65, 84, 58, 60, 66, 63, 62, 69, 83, 62, 75, 70, 61, 46, 55, 71, 62, 56, 72, 67, 59, 60, 64, 58, 64, 34, 72, 93, 53, 45, 91, 74, 67, 64, 52, 71, 82, 50, 91, 69, 65, 86, 68, 74, 51, 61, 91, 60, 56, 68, 60, 78, 120, 73, 42, 75, 66, 98, 79, 96, 72, 89, 53, 69, 56, 73, 75, 76, 55, 71, 71, 98, 68, 70, 59, 52, 78, 51, 56, 43, 72, 73, 70, 58, 58, 95, 64, 51, 77, 59, 56, 90, 67, 65, 63, 107, 64, 41, 73, 72, 63, 57, 108, 53, 44, 51, 49, 65, 67, 65, 67, 59, 57, 59, 64, 90, 56, 57, 50, 69, 71, 64, 84, 69, 47, 67, 88, 66, 71, 60, 69, 61, 54, 67, 69, 47, 75, 109, 78, 69, 59, 61, 50, 43, 56, 67, 49, 46, 77, 63, 68, 65, 69, 60, 75, 69, 98, 65, 81, 53, 51, 59, 75, 74, 73, 69, 84, 72, 46, 64, 46, 75, 48, 67, 91, 64, 64, 49, 64, 115, 53, 61, 51, 76, 55, 70, 70, 55, 58, 82, 68, 62, 69, 71, 62, 49, 59, 66, 66, 80, 72, 74, 57, 57, 79, 54, 51, 45, 56, 54, 55, 62, 49, 58, 76, 76, 65, 55, 67, 96, 69, 54, 92, 69, 56, 63, 68, 64, 60, 49, 86, 48, 57, 62, 75, 61, 98, 65, 82, 50, 58, 65, 63, 53, 63, 65, 63, 48, 59, 53, 67, 54, 69, 53, 114, 85, 59, 50, 101, 61, 79, 59, 70, 58, 73, 42, 73, 47, 68, 81, 66, 73, 59, 62, 58, 69, 60, 79, 60, 80, 52, 44, 85, 93, 91, 69, 57, 56, 71, 71, 63, 59, 59, 95, 82, 53, 68, 69, 65, 66, 96, 75, 63, 106, 55, 66, 50, 64, 46, 47, 71, 56, 55, 77, 79, 57, 57, 55, 67, 65, 49, 58, 71, 55, 88, 78, 57, 65, 56, 61, 77, 56, 57, 72, 67, 78, 74, 65, 64, 68, 87, 51, 69, 67, 79, 62, 76, 46, 62, 67, 78, 65, 57, 55, 47, 102, 110, 87, 84, 58, 59, 77, 78, 56, 55, 70, 74, 129, 98, 63, 53, 68, 82, 62, 61, 66, 67, 104, 66, 47, 98, 74, 55, 51, 68, 69, 59, 83, 106, 63, 56, 77, 72, 62, 53, 74, 80, 54, 68, 49, 71, 72, 49, 61, 56, 64, 70, 50, 75, 49, 52, 47, 83, 86, 67, 64, 48, 66, 65, 58, 57, 72, 48, 41, 64, 60, 41, 52, 42, 52, 71, 70, 54, 73, 81, 66, 98, 90, 63, 74, 73, 74, 62, 73, 66, 52, 44, 64, 82, 62, 115, 68, 62, 85, 66, 85, 69, 75, 63, 70, 66, 66, 75, 58, 71, 73, 57, 64, 73, 51, 65, 67, 63, 57, 107, 53, 46, 42, 74, 52, 92, 68, 62, 77, 58, 51, 59, 58, 66, 68, 53, 69, 74, 58, 57, 65, 77, 61, 58, 69, 49, 58, 69, 63, 54, 64, 84, 71, 79, 74, 71, 63, 90, 68, 69, 71, 71, 71, 69, 61, 51, 71, 58, 107, 61, 33, 63, 59, 65, 71, 75, 52, 60, 33, 60, 54, 64, 90, 90, 63, 66, 74, 55, 52, 57, 87, 52, 70, 69, 60, 56, 86, 56, 63, 92, 59, 73, 53, 53, 78, 80, 55, 72, 71, 77, 61, 74, 69, 47, 57, 76, 57, 47, 82, 57, 52, 63, 46, 51, 60, 81, 69, 95, 72, 53, 61, 63, 73, 59, 72, 67, 48, 71, 65, 95, 59, 57, 53, 78, 60, 80, 104, 121, 89, 59, 79, 64, 44, 46, 57, 60, 69, 73, 62, 99, 63, 87, 67, 71, 82, 62, 75, 63, 65, 61, 60, 82, 69, 75, 131, 74, 59, 62, 69, 59, 44, 46, 70, 68, 72, 53, 41, 66, 57, 63, 60, 63, 45, 76, 51, 81, 56, 86, 50, 65, 69, 72, 100, 66, 51, 56, 61, 64, 65, 57, 62, 89, 53, 60, 74, 44, 66, 76, 59, 57, 54, 66, 78, 67, 56, 61, 49, 46, 57, 56, 96, 62, 28, 59, 66, 48, 87, 59, 85, 110, 61, 66, 77, 63, 53, 61, 56, 84, 76, 35, 93, 73, 62, 65, 82, 51, 74, 66, 81, 71, 53, 74, 68, 68, 77, 53, 83, 59, 78, 55, 61, 66, 59, 51, 42, 41, 58, 53, 70, 81, 69, 41, 56, 64, 61, 52, 71, 56, 58, 69, 56, 62, 54, 87, 66, 87, 88, 54, 73, 50, 89, 64, 60, 50, 78, 64, 58, 70, 86, 78, 48, 57, 50, 66, 61, 106, 74, 65, 77, 69, 58, 73, 63, 72, 72, 66, 54, 59, 47, 54, 78, 69, 59, 58, 56, 85, 68, 82, 58, 82, 88, 73, 59, 54, 67, 55, 66, 57, 60, 67, 64, 54, 65, 72, 78, 80, 87, 60, 55, 73, 60, 84, 62, 46, 77, 58, 40, 76, 72, 90, 53, 51, 66, 54, 49, 66, 49, 47, 53, 59, 65, 45, 64, 73, 72, 54, 69, 80, 72, 70, 60, 63, 68, 66, 49, 76, 80, 73, 62, 53, 55, 80, 127, 57, 63, 73, 55, 69, 68, 75, 70, 66, 63, 94, 63, 63, 68, 68, 50, 61, 61, 64, 50, 58, 75, 63, 75, 78, 63, 70, 66, 72, 53, 75, 44, 76, 60, 76, 62, 65, 87, 57, 61, 89, 56, 66, 88, 67, 49, 67, 58, 82, 61, 61, 58, 67, 69, 93, 64, 47, 88, 67, 62, 51, 55, 72, 56, 87, 56, 71, 78, 57, 57, 64, 74, 52, 71, 55, 64, 59, 95, 56, 75, 48, 50, 68, 74, 63, 61, 55, 75, 47, 57, 61, 75, 68, 68, 67, 81, 66, 88, 60, 52, 54, 74, 75, 53, 59, 78, 79, 69, 77, 62, 73, 60, 63, 60, 77, 71, 62, 45, 47, 65, 62, 82, 56, 62, 58, 76, 64, 75, 53, 103, 68, 81, 65, 92, 82, 60, 63, 66, 56, 65, 65, 73, 65, 52, 60, 58, 45, 58, 57, 57, 76, 69, 45, 54, 63, 47, 90, 79, 63, 64, 75, 69, 62, 71, 46, 89, 57, 94, 71, 60, 59, 57, 51, 64, 64, 65, 54, 56, 51, 50, 74, 93, 76, 67, 78, 55, 72, 84, 47, 49, 52, 48, 76, 61, 59, 66, 113, 84, 62, 51, 53, 65, 65, 56, 77, 71, 65, 71, 57, 67, 76, 82, 93, 58, 92, 45, 55, 70, 90, 69, 59, 58, 63, 89, 68, 73, 46, 62, 92, 64, 74, 74, 76, 73, 48, 45, 59, 62, 73, 49, 59, 53, 83, 49, 66, 56, 57, 69, 72, 59, 49, 97, 52, 46, 67, 63, 55, 74, 58, 46, 71, 97, 66, 62, 63, 68, 48, 46, 100, 72, 81, 68, 66, 68, 95, 60, 82, 50, 76, 61, 51, 74, 52, 72, 71, 59, 55, 39, 78, 68, 56, 56, 60, 75, 94, 75, 78, 65, 42, 94, 64, 54, 69, 88, 58, 96, 64, 82, 50, 62, 69, 77, 79, 42, 69, 54, 49, 63, 86, 50, 54, 77, 68, 57, 111, 50, 78, 57, 71, 71, 71, 74, 51, 81, 69, 53, 78, 69, 73, 45, 51, 73, 64, 44, 67, 124, 48, 51, 40, 56, 63, 52, 68, 49, 62, 78, 79, 71, 67, 51, 58, 60, 76, 47, 71, 57, 58, 66, 60, 64, 77, 63, 104, 53, 47, 62, 62, 70, 70, 71, 62, 71, 61, 72, 62, 66, 59, 81, 63, 72, 62, 63, 62, 55, 68, 65, 73, 97, 79, 44, 58, 65, 46, 72, 70, 60, 53, 65, 92, 64, 57, 76, 43, 56, 46, 71, 62, 51, 66, 77, 81, 67, 67, 38, 69, 55, 67, 60, 56, 77, 66, 60, 65, 70, 58, 64, 79, 71, 63, 53, 61, 78, 56, 58, 57, 62, 61, 57, 76, 70, 91, 55, 65, 69, 49, 66, 62, 54, 70, 67, 58, 64, 76, 51, 50, 56, 69, 72, 59, 65, 59, 68, 66, 63, 67, 44, 61, 62, 67, 68, 64, 53, 86, 53, 59, 59, 95, 67, 86, 57, 64, 64, 82, 57, 65, 64, 53, 73, 57, 53, 76, 82, 66, 68, 50, 80, 57, 51, 82, 73, 69, 66, 60, 98, 63, 82, 69, 59, 49, 55, 68, 112, 63, 52, 113, 65, 62, 80, 57, 78, 69, 63, 66, 83, 76, 61, 73, 52, 48, 57, 73, 48, 78, 112, 70, 81, 60, 68, 67, 65, 69, 82, 56, 69, 78, 72, 76, 63, 56, 77, 52, 79, 68, 49, 77, 51, 54, 68, 54, 105, 58, 71, 64, 42, 61, 59, 57, 76, 80, 92, 60, 74, 52, 80, 48, 60, 63, 62, 63, 57, 60, 50, 70, 51, 65, 58, 88, 46, 76, 77, 99, 59, 111, 84, 72, 60, 114, 56, 78, 73, 56, 60, 65, 66, 53, 68, 80, 62, 67, 76, 49, 90, 64, 57, 55, 74, 58, 92, 64, 61, 63, 59, 53, 81, 98, 70, 68, 75, 62, 65, 100, 42, 48, 75, 65, 61, 98, 75, 78, 66, 60, 59, 73, 53, 74, 58, 72, 59, 59, 61, 69, 69, 57, 51, 65, 71, 68, 71, 54, 65, 57, 69, 68, 71, 48, 55, 66, 67, 57, 67, 65, 56, 66, 58, 74, 76, 56, 60, 50, 126, 55, 65, 64, 72, 52, 67, 42, 54, 57, 68, 92, 81, 62, 85, 91, 49, 56, 60, 60, 49, 60, 92, 50, 50, 67, 74, 69, 72, 74, 60, 68, 66, 48, 68, 83, 79, 84, 60, 44, 60, 62, 66, 68, 66, 59, 59, 59, 59, 48, 85, 57, 53, 65, 61, 64, 60, 44, 70, 66, 81, 60, 68, 78, 49, 68, 60, 56, 107, 60, 64, 90, 78, 81, 51, 73, 59, 77, 80, 68, 62, 58, 57, 102, 53, 49, 43, 76, 61, 49, 69, 86, 69, 84, 62, 81, 100, 49, 36, 75, 67, 76, 46, 75, 80, 45, 100, 64, 59, 52, 45, 53, 53, 79, 66, 93, 69, 62, 73, 43, 87, 51, 77, 69, 62, 59, 89, 82, 68, 68, 54, 65, 58, 54, 89, 65, 73, 70, 50, 71, 66, 61, 56, 65, 56, 60, 46, 73, 59, 73, 44, 64, 79, 67, 61, 63, 54, 67, 60, 72, 71, 55, 68, 63, 123, 55, 52, 63, 80, 45, 47, 60, 53, 74, 51, 59, 88, 55, 62, 62, 89, 62, 77, 71, 68, 75, 82, 59, 76, 69, 75, 63, 65, 66, 71, 56, 63, 60, 55, 99, 77, 55, 56, 89, 63, 53, 66, 64, 69, 52, 60, 74, 61, 60, 76, 68, 82, 64, 75, 62, 70, 85, 58, 48, 70, 88, 65, 73, 67, 76, 80, 64, 82, 50, 70, 72, 80, 77, 58, 61, 90, 54, 44, 49, 72, 67, 41, 111, 76, 77, 57, 51, 77, 53, 60, 63, 51, 58, 53, 67, 43, 73, 61, 79, 69, 56, 62, 60, 67, 65, 55, 68, 64, 57, 60, 58, 78, 63, 59, 83, 58, 70, 55, 59, 63, 79, 50, 60, 74, 79, 93, 75, 63, 42, 61, 55, 64, 56, 50, 66, 63, 104, 63, 78, 54, 82, 66, 63, 51, 80, 84, 57, 53, 73, 53, 72, 55, 81, 74, 65, 69, 73, 72, 70, 64, 72, 83, 68, 54, 65, 84, 55, 66, 63, 106, 88, 59, 48, 79, 56, 55, 72, 36, 56, 56, 82, 63, 80, 71, 79, 53, 59, 47, 79, 62, 59, 74, 46, 54, 86, 99, 53, 42, 66, 81, 58, 56, 69, 47, 54, 68, 56, 99, 67, 57, 57, 61, 65, 53, 61, 58, 78, 59, 42, 64, 65, 97, 63, 59, 64, 49, 59, 73, 83, 63, 61, 58, 47, 68, 88, 65, 45, 62, 59, 55, 69, 48, 83, 74, 67, 57, 60, 78, 67, 62, 79, 48, 66, 51, 56, 91, 74, 55, 78, 55, 62, 71, 64, 66, 56, 64, 62, 70, 60, 50, 53, 76, 72, 52, 65, 69, 61, 60, 51, 58, 71, 68, 76, 63, 65, 66, 73, 65, 60, 70, 72, 59, 61, 61, 76, 70, 73, 63, 89, 118, 63, 52, 50, 95, 61, 63, 67, 63, 78, 58, 55, 75, 67, 55, 68, 67, 95, 54, 55, 62, 59, 70, 58, 69, 54, 62, 80, 79, 69, 73, 66, 78, 54, 71, 89, 75, 65, 62, 80, 64, 78, 70, 59, 72, 61, 72, 57, 54, 57, 69, 55, 69, 73, 74, 64, 71, 56, 67, 64, 63, 60, 68, 85, 64, 50, 66, 83, 55, 54, 69, 67, 72, 54, 63, 72, 69, 79, 84, 60, 61, 59, 63, 79, 79, 69, 76, 55, 53, 94, 52, 64, 51, 60, 65, 56, 89, 69, 66, 63, 54, 78, 64, 53, 92, 55, 65, 61, 73, 74, 71, 67, 41, 37, 49, 65, 61, 62, 77, 69, 62, 47, 116, 53, 67, 111, 92, 55, 67, 53, 62, 60, 106, 70, 47, 69, 79, 61, 55, 74, 60, 96, 60, 59, 67, 58, 50, 77, 52, 72, 56, 57, 82, 56, 53, 56, 53, 66, 59, 72, 73, 58, 57, 60, 57, 93, 73, 59, 64, 66, 80, 80, 54, 67, 80, 73, 57, 48, 78, 61, 61, 67, 58, 52, 57, 55, 74, 66, 53, 66, 68, 59, 68, 76, 63, 80, 68, 74, 67, 84, 94, 52, 68, 77, 81, 74, 58, 89, 68, 61, 53, 57, 53, 69, 47, 59, 107, 74, 64, 67, 76, 79, 60, 46, 109, 82, 63, 48, 58, 68, 40, 66, 92, 56, 63, 63, 70, 49, 63, 71, 58, 54, 71, 56, 122, 39, 56, 72, 46, 61, 72, 56, 106, 75, 55, 65, 86, 58, 73, 70, 68, 78, 62, 56, 53, 71, 61, 59, 54, 75, 80, 99, 67, 69, 71, 63, 53, 57, 61, 56, 52, 70, 64, 49, 61, 78, 61, 62, 75, 76, 56, 84, 44, 72, 63, 51, 60, 59, 62, 66, 64, 83, 63, 52, 53, 74, 68, 98, 45, 67, 61, 65, 60, 61, 70, 77, 55, 57, 62, 70, 67, 67, 60, 64, 82, 83, 61, 63, 57, 69, 63, 59, 62, 55, 59, 60, 63, 68, 60, 72, 102, 54, 73, 63, 59, 51, 60, 62, 61, 56, 53, 70, 88, 62, 85, 88, 71, 53, 63, 66, 78, 64, 88, 55, 67, 60, 53, 52, 67, 65, 66, 57, 57, 69, 60, 75, 55, 58, 70, 62, 76, 72, 64, 75, 71, 56, 65, 90, 59, 88, 60, 56, 79, 56, 58, 72, 65, 99, 116, 67, 73, 62, 65, 52, 80, 71, 57, 59, 56, 65, 61, 58, 48, 95, 56, 69, 64, 64, 60, 70, 65, 62, 60, 53, 50, 46, 56, 80, 75, 64, 62, 51, 59, 76, 69, 66, 84, 64, 76, 61, 68, 80, 58, 73, 63, 81, 66, 46, 72, 53, 64, 63, 76, 51, 50, 66, 63, 77, 63, 66, 72, 62, 51, 64, 60, 73, 74, 75, 53, 73, 43, 100, 53, 67, 65, 62, 55, 59, 59, 59, 49, 49, 72, 69, 65, 58, 63, 69, 58, 64, 86, 62, 71, 56, 46, 70, 61, 61, 58, 56, 60, 56, 61, 62, 72, 54, 71, 73, 77, 76, 65, 45, 67, 62, 55, 75, 62, 59, 60, 109, 62, 63, 70, 87, 52, 63, 80, 65, 75, 71, 75, 63, 61, 63, 53, 68, 50, 55, 62, 55, 63, 70, 57, 95, 72, 87, 47, 63, 95, 87, 55, 61, 92, 69, 66, 69, 61, 64, 75, 53, 87, 53, 53, 64, 52, 54, 47, 55, 70, 69, 79, 84, 70, 55, 82, 60, 67, 63, 58, 63, 52, 57, 55, 65, 50, 66, 53, 68, 33, 63, 58, 47, 67, 66, 50, 62, 58, 66, 62, 58, 61, 63, 57, 79, 64, 51, 69, 61, 55, 51, 65, 55, 65, 70, 66, 87, 59, 79, 59, 52, 70, 66, 62, 68, 56, 57, 59, 56, 54, 64, 65, 68, 67, 67, 64, 67, 62, 77, 69, 57, 76, 52, 54, 60, 64, 53, 62, 54, 56, 71, 79, 69, 74, 69, 53, 88, 59, 66, 52, 49, 70, 66, 77, 70, 60, 50, 97, 86, 69, 54, 49, 77, 55, 61, 80, 47, 61, 51, 89, 59, 70, 61, 76, 62, 59, 71, 46, 66, 85, 65, 52, 87, 64, 57, 79, 77, 53, 70, 71, 58, 76, 59, 65, 64, 64, 63, 75, 65, 62, 57, 46, 46, 97, 55, 48, 83, 56, 70, 77, 59, 39, 66, 49, 83, 40, 53, 67, 97, 70, 69, 60, 73, 68, 58, 69, 82, 113, 62, 50, 75, 71, 60, 60, 43, 65, 56, 78, 75, 85, 46, 70, 60, 66, 43, 61, 73, 69, 64, 60, 69, 65, 52, 54, 54, 110, 43, 60, 64, 81, 50, 76, 57, 89, 81, 79, 62, 59, 60, 48, 59, 95, 88, 117, 52, 65, 71, 75, 75, 49, 79, 63, 64, 60, 71, 77, 65, 57, 101, 72, 59, 59, 104, 64, 74, 57, 62, 54, 114, 101, 55, 57, 61, 44, 67, 56, 66, 59, 93, 62, 71, 68, 55, 61, 66, 76, 71, 59, 73, 63, 107, 96, 58, 66, 57, 57, 47, 71, 51, 61, 75, 51, 78, 64, 67, 77, 64, 70, 52, 74, 70, 81, 71, 75, 70, 66, 58, 48, 64, 65, 72, 63, 91, 70, 65, 65, 73, 71, 64, 68, 64, 51, 53, 53, 61, 80, 65, 72, 65, 87, 49, 71, 56, 53, 64, 52, 45, 74, 64, 98, 44, 46, 66, 66, 61, 96, 75, 58, 96, 66, 52, 62, 55, 69, 84, 90, 45, 64, 77, 57, 57, 47, 50, 115, 60, 60, 66, 46, 61, 55, 51, 58, 85, 71, 54, 49, 60, 89, 50, 55, 63, 56, 56, 49, 73, 73, 70, 56, 61, 83, 64, 61, 54, 53, 65, 80, 60, 83, 64, 62, 88, 67, 75, 49, 55, 66, 55, 55, 79, 76, 52, 68, 56, 62, 71, 65, 70, 70, 60, 64, 70, 53, 72, 44, 71, 67, 61, 58, 52, 54, 60, 47, 58, 61, 59, 82, 75, 72, 55, 65, 63, 90, 53, 67, 90, 64, 67, 75, 58, 53, 89, 74, 128, 56, 43, 62, 76, 71, 53, 48, 70, 79, 78, 80, 63, 61, 66, 78, 58, 74, 66, 59, 55, 118, 60, 76, 73, 43, 62, 67, 64, 54, 76, 58, 56, 71, 70, 49, 69, 74, 58, 58, 68, 87, 63, 77, 62, 59, 69, 61, 52, 69, 60, 58, 55, 40, 53, 72, 60, 78, 69, 89, 78, 73, 80, 77, 53, 84, 53, 67, 55, 57, 77, 58, 51, 76, 69, 72, 63, 73, 57, 59, 59, 75, 141, 64, 56, 66, 66, 77, 68, 68, 64, 51, 53, 46, 58, 63, 57, 61, 67, 53, 55, 58, 67, 59, 53, 69, 56, 71, 104, 78, 121, 60, 105, 57, 84, 73, 59, 52, 62, 67, 116, 58, 72, 86, 52, 79, 56, 80, 62, 51, 71, 53, 59, 81, 66, 61, 116, 77, 57, 64, 62, 82, 55, 76, 62, 46, 63, 54, 37, 59, 75, 55, 55, 70, 86, 45, 62, 76, 73, 59, 51, 73, 78, 55, 65, 75, 55, 78, 51, 87, 80, 64, 70, 96, 46, 55, 63, 69, 61, 90, 66, 67, 73, 74, 66, 83, 82, 76, 51, 53, 69, 53, 49, 73, 69, 51, 71, 59, 83, 80, 61, 91, 77, 72, 54, 62, 38, 60, 79, 63, 70, 62, 58, 90, 66, 54, 78, 51, 75, 67, 70, 62, 109, 49, 55, 73, 51, 58, 95, 66, 59, 58, 50, 62, 70, 53, 72, 63, 69, 55, 81, 62, 83, 53, 58, 69, 53, 64, 74, 66, 58, 76, 67, 54, 96, 75, 52, 57, 66, 57, 61, 61, 63, 71, 54, 51, 40, 67, 75, 66, 73, 49, 51, 68, 58, 55, 65, 64, 68, 76, 89, 75, 54, 58, 73, 62, 63, 53, 55, 61, 78, 56, 68, 55, 53, 57, 66, 49, 68, 65, 64, 62, 113, 64, 62, 55, 61, 55, 57, 78, 62, 69, 94, 60, 61, 67, 81, 66, 55, 61, 70, 45, 42, 115, 65, 57, 64, 71, 57, 58, 78, 54, 71, 72, 77, 62, 62, 53, 64, 75, 61, 66, 57, 63, 66, 72, 67, 52, 49, 59, 108, 57, 59, 59, 53, 47, 100, 60, 67, 68, 67, 81, 75, 48, 48, 53, 68, 75, 50, 53, 56, 69, 73, 82, 100, 58, 56, 68, 58, 69, 62, 60, 51, 53, 58, 55, 75, 50, 64, 55, 66, 59, 81, 64, 55, 72, 81, 72, 59, 57, 55, 49, 74, 80, 63, 55, 63, 58, 51, 50, 61, 70, 57, 63, 78, 49, 40, 62, 60, 65, 79, 57, 58, 66, 74, 58, 62, 64, 72, 59, 66, 72, 62, 55, 54, 64, 101, 61, 59, 54, 54, 119, 83, 93, 54, 73, 65, 60, 47, 52, 55, 57, 63, 72, 76, 57, 74, 63, 74, 67, 53, 73, 72, 99, 67, 65, 65, 87, 73, 92, 54, 72, 61, 68, 68, 72, 93, 57, 64, 58, 68, 56, 66, 61, 74, 71, 61, 71, 67, 50, 44, 54, 51, 110, 52, 55, 64, 72, 79, 58, 65, 53, 60, 56, 63, 60, 48, 66, 77, 61, 63, 37, 55, 70, 71, 65, 66, 65, 68, 66, 47, 81, 60, 57, 66, 72, 61, 57, 103, 64, 78, 74, 73, 66, 89, 59, 76, 63, 86, 70, 58, 58, 114, 80, 52, 66, 97, 73, 69, 55, 55, 61, 81, 58, 92, 63, 79, 64, 79, 58, 66, 71, 61, 59, 67, 62, 65, 72, 64, 62, 75, 76, 69, 109, 67, 57, 66, 88, 64, 57, 58, 52, 100, 63, 77, 70, 62, 70, 58, 58, 80, 55, 66, 76, 56, 62, 58, 78, 58, 67, 51, 78, 61, 65, 49, 91, 63, 60, 63, 52, 81, 57, 74, 59, 68, 61, 62, 66, 52, 83, 55, 57, 90, 66, 61, 51, 62, 58, 59, 65, 50, 80, 64, 62, 66, 67, 51, 72, 74, 102, 59, 54, 59, 91, 68, 58, 72, 57, 43, 58, 54, 51, 66, 57, 70, 60, 68, 55, 56, 63, 71, 59, 53, 58, 56, 50, 49, 73, 69, 75, 47, 65, 64, 87, 64, 58, 53, 54, 62, 69, 61, 64, 81, 57, 62, 69, 50, 82, 66, 77, 69, 65, 59, 62, 64, 57, 59, 82, 87, 53, 51, 66, 54, 68, 63, 52, 79, 55, 113, 81, 63, 75, 83, 65, 75, 57, 63, 51, 54, 65, 53, 69, 72, 42, 58, 65, 63, 65, 63, 45, 55, 62, 64, 81, 80, 52, 56, 51, 72, 87, 57, 119, 74, 49, 58, 59, 69, 64, 64, 75, 63, 63, 70, 64, 56, 55, 77, 53, 81, 60, 83, 85, 51, 117, 71, 85, 58, 64, 60, 52, 96, 56, 73, 41, 73, 83, 54, 51, 82, 57, 66, 54, 60, 58, 61, 72, 68, 71, 53, 72, 61, 56, 64, 58, 69, 57, 61, 67, 68, 57, 111, 76, 52, 53, 85, 86, 73, 54, 62, 60, 62, 67, 55, 65, 68, 64, 92, 74, 88, 77, 72, 50, 63, 52, 52, 56, 73, 70, 49, 52, 116, 62, 46, 94, 123, 73, 68, 60, 69, 54, 86, 68, 73, 93, 87, 54, 66, 65, 54, 59, 59, 63, 55, 60, 41, 66, 47, 53, 68, 58, 77, 76, 67, 64, 70, 57, 80, 68, 80, 64, 63, 62, 78, 59, 69, 59, 38, 67, 61, 63, 62, 105, 56, 50, 60, 77, 68, 65, 50, 79, 51, 60, 93, 64, 76, 57, 89, 62, 73, 56, 61, 75, 68, 60, 56, 85, 68, 83, 54, 55, 59, 74, 58, 84, 74, 49, 69, 91, 76, 58, 60, 70, 48, 84, 50, 56, 69, 55, 54, 95, 75, 65, 64, 94, 62, 86, 70, 52, 66, 79, 72, 67, 52, 60, 55, 85, 83, 64, 44, 68, 62, 83, 41, 63, 67, 82, 59, 67, 71, 61, 67, 61, 58, 60, 83, 47, 65, 68, 59, 53, 69, 51, 67, 67, 81, 62, 96, 65, 71, 53, 67, 53, 49, 65, 50, 69, 74, 61, 58, 69, 50, 64, 59, 58, 50, 65, 48, 62, 59, 51, 75, 72, 52, 57, 60, 72, 60, 61, 60, 45, 76, 70, 61, 109, 62, 55, 78, 65, 56, 83, 61, 63, 77, 70, 46, 60, 72, 84, 64, 65, 79, 57, 64, 61, 54, 55, 62, 62, 87, 81, 55, 72, 82, 63, 52, 62, 82, 70, 60, 59, 88, 61, 69, 84, 60, 58, 63, 65, 71, 65, 60, 42, 89, 49, 91, 64, 74, 77, 71, 60, 58, 61, 48, 102, 71, 55, 68, 67, 65, 76, 77, 72, 89, 71, 83, 65, 56, 58, 69, 56, 47, 69, 78, 61, 95, 68, 67, 65, 53, 74, 69, 54, 45, 63, 57, 65, 59, 56, 60, 66, 69, 76, 76, 77, 58, 62, 69, 82, 72, 73, 66, 93, 71, 63, 80, 65, 85, 64, 65, 58, 50, 94, 62, 62, 76, 48, 78, 54, 61, 68, 66, 57, 59, 62, 77, 67, 49, 77, 69, 51, 62, 73, 61, 71, 95, 70, 62, 74, 61, 66, 83, 58, 68, 58, 82, 63, 52, 55, 61, 67, 55, 70, 58, 60, 76, 53, 69, 73, 72, 53, 74, 57, 75, 63, 65, 127, 61, 63, 96, 62, 61, 69, 60, 65, 56, 51, 52, 67, 62, 44, 68, 73, 61, 66, 64, 67, 74, 41, 81, 73, 64, 61, 63, 60, 67, 59, 65, 113, 54, 58, 56, 41, 55, 61, 63, 57, 58, 78, 58, 64, 48, 96, 58, 73, 64, 60, 64, 62, 66, 66, 57, 60, 67, 47, 59, 65, 97, 86, 54, 58, 56, 92, 69, 48, 81, 54, 92, 83, 47, 59, 70, 76, 62, 64, 69, 55, 66, 66, 61, 55, 46, 57, 64, 68, 55, 70, 79, 57, 68, 53, 73, 79, 79, 65, 73, 74, 64, 75, 50, 64, 58, 62, 76, 50, 56, 59, 73, 53, 44, 72, 77, 53, 78, 60, 91, 54, 75, 64, 79, 66, 59, 71, 69, 84, 79, 47, 56, 75, 65, 72, 91, 60, 66, 43, 50, 51, 42, 54, 80, 74, 68, 74, 54, 64, 44, 52, 68, 56, 82, 59, 81, 62, 93, 56, 62, 61, 51, 61, 68, 88, 66, 76, 60, 77, 101, 50, 53, 70, 107, 68, 37, 58, 62, 73, 60, 54, 66, 58, 62, 71, 59, 58, 60, 52, 50, 58, 54, 82, 48, 70, 71, 71, 53, 56, 56, 80, 64, 80, 81, 56, 72, 60, 50, 84, 79, 62, 50, 81, 67, 46, 62, 60, 52, 57, 39, 62, 72, 57, 73, 63, 94, 62, 61, 47, 84, 70, 57, 63, 75, 88, 64, 63, 74, 56, 70, 66, 72, 36, 63, 68, 55, 80, 35, 71, 76, 58, 70, 62, 64, 71, 57, 91, 70, 63, 60, 51, 76, 51, 43, 47, 62, 94, 75, 52, 58, 62, 65, 73, 51, 72, 87, 114, 67, 60, 64, 91, 71, 78, 65, 75, 49, 92, 75, 61, 54, 56, 67, 78, 71, 75, 78, 68, 47, 62, 57, 70, 65, 75, 65, 56, 82, 49, 56, 49, 58, 80, 59, 68, 64, 68, 74, 76, 55, 59, 73, 73, 78, 60, 96, 53, 58, 73, 60, 56, 53, 58, 65, 55, 92, 72, 61, 69, 61, 52, 112, 101, 54, 49, 48, 67, 70, 58, 51, 76, 96, 88, 60, 71, 71, 43, 71, 53, 77, 58, 64, 90, 56, 85, 65, 86, 60, 66, 72, 53, 59, 95, 56, 51, 78, 72, 43, 75, 80, 66, 82, 58, 56, 70, 59, 41, 59, 57, 39, 54, 64, 57, 72, 64, 73, 71, 61, 72, 56, 59, 58, 66, 70, 55, 65, 73, 92, 62, 43, 76, 83, 52, 63, 51, 60, 66, 67, 62, 56, 59, 70, 72, 49, 123, 68, 81, 85, 93, 58, 74, 67, 56, 77, 60, 49, 53, 52, 66, 95, 74, 66, 59, 66, 54, 69, 56, 57, 79, 65, 68, 60, 75, 67, 52, 102, 60, 40, 73, 69, 69, 82, 71, 76, 55, 84, 71, 62, 50, 77, 54, 59, 35, 58, 84, 64, 73, 72, 64, 65, 97, 54, 54, 77, 55, 60, 51, 62, 67, 79, 80, 57, 62, 67, 68, 97, 65, 43, 68, 73, 65, 97, 104, 89, 54, 62, 69, 86, 56, 72, 61, 80, 56, 62, 98, 88, 59, 115, 59, 49, 72, 84, 108, 59, 53, 85, 67, 57, 122, 66, 138, 56, 61, 71, 63, 69, 58, 68, 60, 47, 69, 55, 47, 70, 82, 52, 66, 55, 66, 100, 46, 61, 86, 92, 54, 60, 50, 76, 99, 54, 75, 67, 75, 72, 72, 43, 74, 77, 59, 70, 86, 54, 75, 48, 52, 51, 61, 60, 66, 66, 55, 63, 70, 66, 102, 58, 69, 71, 44, 80, 52, 73, 59, 72, 61, 64, 72, 85, 45, 63, 48, 87, 84, 92, 84, 61, 89, 71, 76, 64, 85, 74, 80, 72, 82, 59, 54, 70, 53, 66, 74, 49, 52, 71, 52, 40, 58, 62, 65, 66, 66, 71, 70, 57, 66, 69, 54, 66, 78, 56, 72, 85, 61, 66, 63, 79, 63, 60, 59, 63, 68, 85, 80, 47, 77, 73, 86, 53, 78, 52, 87, 100, 86, 55, 59, 61, 48, 82, 61, 62, 52, 105, 57, 62, 79, 52, 58, 88, 56, 67, 56, 83, 52, 65, 58, 53, 62, 79, 70, 69, 55, 64, 68, 64, 77, 74, 66, 66, 54, 46, 79, 63, 60, 60, 64, 87, 58, 78, 44, 60, 54, 53, 84, 63, 61, 56, 60, 90, 41, 52, 66, 58, 48, 60, 60, 81, 45, 67, 71, 77, 70, 81, 63, 75, 72, 55, 56, 67, 68, 45, 65, 64, 83, 66, 58, 53, 53, 49, 70, 65, 43, 58, 50, 59, 72, 57, 56, 69, 114, 59, 52, 52, 66, 51, 56, 60, 57, 57, 55, 81, 50, 70, 102, 75, 89, 57, 74, 73, 58, 69, 48, 47, 62, 47, 69, 56, 68, 61, 43, 73, 76, 62, 66, 57, 47, 64, 73, 74, 58, 64, 56, 54, 69, 70, 63, 68, 57, 54, 67, 64, 52, 65, 54, 62, 94, 57, 81, 44, 66, 56, 55, 60, 62, 96, 65, 56, 61, 76, 76, 48, 50, 58, 66, 46, 70, 57, 75, 59, 96, 52, 69, 48, 81, 63, 62, 70, 70, 75, 58, 56, 60, 72, 65, 51, 109, 66, 79, 68, 50, 54, 72, 58, 68, 47, 56, 64, 77, 67, 68, 65, 67, 68, 59, 89, 68, 70, 60, 52, 69, 63, 52, 58, 54, 73, 64, 50, 77, 68, 92, 62, 56, 61, 108, 73, 57, 93, 70, 59, 91, 47, 69, 73, 61, 55, 49, 107, 63, 51, 45, 102, 70, 49, 54, 56, 63, 79, 68, 61, 84, 110, 120, 67, 72, 40, 93, 79, 55, 70, 72, 81, 70, 59, 63, 54, 59, 105, 57, 57, 55, 88, 75, 69, 78, 78, 68, 63, 50, 61, 70, 79, 74, 86, 68, 67, 49, 110, 66, 84, 98, 52, 39, 60, 84, 74, 59, 62, 86, 46, 62, 42, 70, 48, 54, 78, 83, 51, 66, 59, 52, 52, 57, 59, 55, 59, 38, 61, 69, 76, 51, 75, 78, 75, 48, 50, 60, 52, 83, 65, 70, 78, 39, 71, 76, 55, 51, 64, 54, 52, 53, 60, 81, 89, 65, 96, 59, 64, 74, 75, 63, 63, 116, 52, 72, 68, 55, 54, 56, 80, 68, 117, 58, 47, 54, 85, 60, 67, 66, 73, 59, 66, 86, 47, 65, 72, 55, 65, 73, 55, 84, 66, 64, 57, 65, 72, 62, 85, 58, 53, 111, 67, 63, 75, 80, 46, 70, 49, 67, 60, 52, 77, 52, 67, 98, 57, 67, 68, 74, 65, 49, 83, 72, 55, 57, 83, 55, 71, 60, 94, 100, 73, 68, 56, 65, 96, 57, 70, 62, 54, 60, 54, 60, 71, 63, 60, 94, 75, 64, 53, 32, 51, 69, 85, 103, 69, 64, 67, 57, 55, 53, 57, 72, 67, 69, 65, 68, 91, 74, 52, 71, 64, 47, 65, 67, 53, 53, 68, 66, 63, 54, 63, 56, 62, 39, 57, 69, 59, 36, 54, 57, 68, 57, 60, 74, 52, 61, 81, 60, 47, 57, 69, 55, 91, 72, 60, 71, 69, 84, 69, 67, 78, 71, 71, 55, 48, 62, 79, 50, 69, 48, 69, 63, 72, 49, 61, 63, 62, 54, 65, 101, 59, 61, 89, 51, 106, 69, 81, 58, 68, 60, 70, 69, 58, 82, 67, 65, 57, 65, 78, 53, 86, 63, 55, 61, 77, 58, 107, 62, 61, 83, 36, 72, 69, 58, 68, 65, 65, 65, 46, 60, 72, 78, 54, 58, 79, 76, 63, 65, 74, 62, 79, 64, 56, 59, 67, 50, 95, 57, 59, 53, 70, 61, 59, 45, 56, 55, 40, 66, 60, 63, 70, 60, 55, 72, 72, 60, 70, 66, 71, 72, 66, 80, 67, 57, 106, 60, 69, 45, 62, 63, 58, 80, 74, 75, 72, 82, 59, 49, 77, 52, 65, 73, 64, 70, 82, 67, 50, 100, 67, 54, 63, 55, 78, 60, 68, 56, 87, 119, 80, 69, 46, 83, 58, 64, 74, 67, 73, 91, 53, 81, 65, 62, 81, 64, 70, 65, 58, 79, 60, 60, 54, 70, 61, 71, 58, 53, 77, 48, 56, 75, 53, 72, 65, 56, 60, 72, 73, 72, 59, 76, 80, 64, 65, 56, 55, 69, 63, 55, 58, 110, 69, 66, 66, 70, 68, 62, 95, 74, 62, 75, 77, 75, 59, 70, 68, 79, 96, 55, 71, 98, 89, 45, 51, 64, 52, 50, 64, 59, 64, 53, 64, 74, 69, 62, 65, 58, 64, 92, 72, 72, 62, 76, 75, 77, 106, 57, 65, 57, 72, 58, 72, 59, 71, 60, 106, 54, 68, 54, 62, 65, 80, 69, 76, 57, 57, 58, 51, 57, 68, 54, 85, 61, 86, 94, 52, 57, 62, 54, 62, 96, 65, 64, 68, 56, 56, 65, 62, 79, 53, 77, 46, 69, 52, 66, 56, 50, 54, 59, 77, 40, 82, 72, 53, 72, 74, 54, 98, 113, 63, 54, 63, 94, 54, 48, 51, 67, 68, 71, 60, 61, 69, 65, 65, 55, 75, 60, 88, 60, 50, 54, 80, 71, 66, 44, 57, 71, 77, 52, 60, 69, 68, 71, 61, 55, 60, 102, 66, 45, 68, 55, 56, 46, 85, 73, 62, 56, 70, 68, 78, 54, 84, 56, 69, 64, 64, 73, 100, 100, 100, 60, 49, 63, 71, 52, 60, 58, 57, 78, 59, 97, 59, 51, 61, 82, 45, 71, 83, 83, 64, 61, 60, 65, 74, 81, 61, 75, 72, 68, 59, 77, 66, 62, 74, 61, 67, 43, 83, 65, 47, 59, 69, 92, 63, 61, 54, 75, 55, 52, 89, 53, 79, 70, 71, 60, 76, 70, 61, 58, 69, 77, 58, 66, 70, 66, 57, 83, 55, 64, 39, 34, 90, 58, 59, 39, 63, 58, 67, 84, 64, 88, 57, 93, 61, 60, 66, 34, 89, 65, 64, 53, 50, 62, 62, 58, 44, 48, 75, 68, 97, 81, 65, 97, 64, 62, 69, 63, 96, 65, 66, 61, 77, 70, 83, 100, 62, 76, 36, 59, 62, 55, 76, 61, 61, 57, 73, 74, 73, 69, 50, 82, 75, 59, 52, 65, 63, 68, 42, 72, 62, 67, 67, 90, 61, 56, 63, 70, 61, 70, 70, 64, 57, 128, 51, 72, 80, 80, 69, 69, 59, 62, 63, 52, 49, 75, 56, 56, 122, 42, 86, 79, 118, 53, 57, 49, 64, 79, 63, 57, 120, 66, 63, 71, 85, 62, 63, 53, 69, 64, 66, 84, 52, 84, 60, 86, 73, 68, 60, 62, 57, 57, 65, 52, 60, 80, 70, 66, 68, 56, 98, 67, 63, 70, 77, 69, 50, 62, 67, 50, 75, 66, 117, 49, 63, 66, 66, 73, 54, 63, 65, 70, 56, 55, 57, 70, 84, 83, 50, 69, 68, 53, 53, 73, 68, 66, 75, 56, 53, 62, 49, 94, 66, 53, 61, 124, 63, 48, 78, 74, 74, 58, 53, 60, 61, 51, 59, 47, 60, 72, 55, 70, 61, 63, 66, 67, 48, 64, 63, 55, 60, 52, 69, 59, 91, 70, 53, 71, 60, 66, 58, 65, 69, 67, 59, 85, 65, 58, 60, 77, 48, 78, 87, 61, 66, 47, 58, 63, 77, 69, 69, 57, 62, 72, 59, 60, 57, 65, 50, 77, 90, 58, 52, 55, 59, 85, 61, 71, 65, 54, 55, 55, 64, 73, 59, 68, 73, 63, 81, 52, 71, 66, 68, 61, 69, 52, 62, 69, 47, 47, 62, 76, 60, 44, 63, 76, 55, 59, 49, 73, 47, 108, 89, 65, 69, 82, 72, 61, 50, 74, 74, 69, 53, 67, 60, 68, 53, 61, 49, 73, 62, 64, 76, 67, 79, 77, 68, 75, 73, 65, 71, 67, 77, 68, 45, 96, 59, 64, 64, 76, 65, 65, 112, 70, 52, 105, 63, 38, 53, 60, 76, 56, 67, 66, 67, 59, 70, 91, 67, 64, 63, 71, 41, 72, 50, 62, 55, 73, 57, 65, 53, 46, 66, 64, 68, 49, 76, 67, 83, 66, 85, 65, 48, 67, 48, 57, 73, 67, 59, 65, 85, 65, 121, 70, 41, 57, 72, 60, 66, 52, 86, 60, 66, 60, 54, 55, 61, 83, 63, 57, 65, 66, 100, 72, 118, 63, 67, 53, 58, 64, 58, 56, 68, 70, 49, 54, 60, 79, 70, 73, 62, 69, 83, 81, 64, 76, 57, 55, 48, 53, 53, 55, 90, 78, 62, 71, 51, 71, 63, 65, 84, 67, 59, 55, 64, 73, 56, 76, 59, 64, 64, 76, 60, 95, 92, 69, 92, 60, 56, 66, 63, 70, 71, 63, 67, 58, 62, 68, 63, 79, 77, 52, 52, 54, 58, 58, 55, 65, 66, 79, 90, 65, 66, 63, 69, 86, 51, 62, 68, 91, 70, 59, 49, 58, 65, 66, 71, 54, 50, 51, 52, 59, 72, 50, 82, 64, 62, 64, 61, 52, 50, 48, 66, 53, 45, 101, 70, 56, 76, 78, 63, 52, 98, 76, 92, 54, 63, 75, 61, 66, 66, 66, 71, 63, 68, 36, 78, 61, 67, 64, 89, 49, 55, 65, 65, 54, 53, 60, 61, 64, 51, 43, 69, 71, 65, 88, 66, 66, 47, 55, 44, 54, 58, 63, 62, 65, 96, 73, 86, 44, 82, 97, 55, 71, 53, 48, 64, 79, 74, 68, 72, 45, 58, 72, 44, 82, 68, 65, 74, 56, 57, 66, 55, 73, 73, 66, 87, 60, 66, 73, 50, 72, 62, 48, 90, 65, 116, 62, 70, 46, 73, 43, 60, 79, 72, 61, 65, 54, 71, 50, 70, 87, 66, 60, 89, 63, 83, 64, 63, 57, 52, 74, 68, 61, 79, 85, 79, 59, 71, 65, 71, 68, 75, 58, 66, 79, 54, 72, 76, 66, 43, 60, 63, 54, 61, 47, 67, 53, 70, 60, 62, 41, 65, 66, 50, 36, 62, 70, 82, 63, 61, 63, 106, 48, 57, 59, 63, 57, 71, 64, 49, 65, 82, 49, 50, 54, 70, 72, 65, 56, 80, 58, 73, 64, 61, 53, 65, 62, 65, 62, 55, 64, 87, 69, 68, 58, 80, 125, 59, 73, 86, 56, 46, 64, 79, 65, 52, 67, 69, 73, 58, 62, 74, 44, 76, 61, 76, 75, 78, 90, 72, 54, 66, 40, 60, 60, 88, 73, 70, 51, 73, 70, 56, 79, 64, 68, 53, 57, 76, 70, 70, 53, 64, 67, 63, 85, 79, 63, 59, 99, 71, 65, 65, 78, 74, 63, 61, 84, 79, 86, 66, 65, 69, 49, 47, 56, 48, 57, 46, 75, 69, 75, 70, 76, 63, 58, 56, 61, 36, 64, 44, 59, 67, 79, 65, 57, 68, 59, 58, 75, 89, 57, 70, 39, 68, 81, 69, 58, 78, 71, 65, 66, 60, 45, 72, 67, 62, 82, 65, 71, 97, 80, 84, 69, 63, 84, 36, 53, 58, 62, 123, 61, 89, 55, 84, 70, 62, 60, 58, 56, 52, 70, 65, 55, 55, 50, 88, 64, 47, 67, 88, 59, 62, 66, 59, 69, 59, 79, 76, 56, 46, 70, 70, 62, 57, 45, 65, 84, 61, 50, 47, 82, 71, 71, 79, 114, 55, 71, 40, 57, 93, 60, 60, 66, 112, 45, 65, 60, 66, 63, 48, 87, 60, 74, 76, 58, 52, 43, 68, 57, 46, 72, 58, 48, 67, 64, 55, 66, 68, 61, 65, 55, 66, 66, 61, 38, 58, 52, 64, 74, 68, 57, 51, 59, 64, 77, 64, 55, 54, 64, 54, 73, 36, 59, 59, 69, 75, 63, 58, 53, 80, 51, 64, 43, 56, 53, 48, 59, 66, 81, 58, 61, 69, 105, 67, 80, 57, 51, 78, 79, 77, 66, 59, 31, 64, 69, 85, 60, 101, 61, 67, 56, 58, 29, 65, 60, 87, 74, 77, 76, 63, 107, 59, 81, 68, 67, 67, 51, 51, 59, 77, 81, 64, 59, 72, 62, 60, 104, 55, 67, 57, 56, 64, 73, 69, 70, 59, 54, 70, 87, 58, 66, 67, 56, 57, 57, 59, 57, 75, 88, 63, 53, 61, 54, 57, 57, 57, 88, 58, 68, 64, 54, 64, 89, 70, 56, 57, 52, 48, 49, 57, 66, 57, 61, 77, 54, 75, 66, 74, 66, 52, 63, 46, 58, 84, 51, 48, 75, 80, 52, 66, 54, 53, 68, 82, 76, 95, 63, 62, 32, 86, 76, 74, 60, 112, 60, 55, 70, 66, 55, 66, 54, 76, 72, 66, 63, 55, 81, 78, 65, 65, 71, 59, 60, 61, 59, 69, 76, 66, 57, 52, 45, 48, 57, 65, 84, 66, 100, 53, 72, 82, 64, 60, 59, 50, 43, 46, 65, 66, 73, 81, 57, 110, 69, 60, 78, 67, 60, 53, 42, 73, 100, 52, 45, 67, 57, 69, 51, 71, 71, 58, 64, 56, 63, 60, 65, 98, 62, 61, 56, 90, 56, 66, 73, 68, 53, 71, 63, 36, 100, 75, 77, 48, 70, 53, 46, 53, 60, 26, 72, 77, 73, 72, 43, 60, 56, 67, 72, 63, 60, 66, 97, 63, 54, 76, 85, 65, 62, 67, 73, 43, 86, 62, 123, 52, 50, 68, 71, 75, 61, 61, 62, 64, 57, 64, 63, 66, 47, 82, 106, 75, 59, 58, 75, 66, 70, 72, 41, 70, 59, 50, 72, 72, 74, 64, 63, 71, 85, 65, 71, 68, 66, 61, 45, 57, 77, 60, 73, 63, 115, 58, 77, 49, 68, 59, 86, 68, 68, 54, 64, 55, 47, 62, 59, 86, 67, 67, 57, 62, 69, 71, 69, 76, 53, 93, 72, 68, 99, 79, 60, 79, 53, 57, 62, 65, 56, 90, 65, 67, 71, 55, 87, 55, 48, 66, 62, 56, 83, 54, 87, 68, 51, 51, 64, 77, 84, 67, 76, 54, 57, 53, 70, 77, 63, 61, 58, 51, 55, 52, 61, 64, 59, 80, 70, 77, 61, 78, 61, 59, 80, 51, 55, 56, 110, 80, 66, 44, 60, 70, 75, 70, 72, 69, 75, 85, 86, 63, 53, 69, 95, 62, 60, 55, 64, 56, 64, 71, 102, 48, 91, 61, 63, 56, 58, 80, 63, 64, 61, 67, 63, 60, 70, 64, 70, 70, 55, 66, 75, 62, 53, 86, 71, 64, 80, 89, 92, 81, 77, 66, 65, 92, 57, 64, 79, 60, 66, 85, 61, 45, 51, 63, 62, 66, 53, 65, 55, 62, 81, 56, 73, 61, 52, 78, 77, 77, 50, 106, 58, 89, 51, 68, 70, 62, 79, 80, 66, 62, 60, 66, 58, 65, 61, 58, 76, 60, 58, 52, 61, 84, 58, 61, 81, 64, 56, 57, 94, 44, 112, 69, 69, 68, 66, 56, 49, 54, 60, 73, 93, 67, 76, 62, 68, 27, 58, 48, 90, 55, 70, 75, 52, 69, 67, 48, 60, 46, 52, 74, 57, 61, 69, 76, 66, 61, 58, 57, 86, 42, 81, 107, 48, 63, 71, 56, 101, 54, 46, 68, 61, 57, 57, 61, 108, 67, 51, 51, 58, 68, 83, 59, 63, 66, 92, 103, 67, 64, 61, 71, 63, 83, 69, 72, 64, 78, 64, 70, 61, 72, 80, 61, 61, 60, 76, 55, 73, 66, 82, 54, 50, 66, 53, 76, 60, 80, 60, 84, 61, 62, 62, 63, 67, 61, 74, 66, 76, 57, 48, 54, 61, 66, 70, 68, 69, 73, 65, 65, 78, 52, 67, 63, 64, 61, 66, 62, 72, 75, 77, 69, 57, 65, 52, 66, 73, 70, 65, 65, 56, 45, 67, 73, 82, 54, 59, 30, 54, 60, 62, 47, 57, 44, 55, 59, 68, 67, 104, 78, 75, 67, 69, 53, 100, 69, 63, 76, 58, 75, 58, 60, 64, 63, 49, 66, 63, 97, 87, 81, 69, 52, 55, 62, 60, 48, 67, 66, 61, 41, 68, 78, 71, 97, 59, 84, 71, 45, 42, 87, 75, 44, 64, 67, 46, 69, 62, 69, 49, 85, 90, 74, 59, 54, 67, 73, 57, 61, 60, 41, 77, 56, 72, 61, 53, 81, 73, 50, 58, 76, 64, 71, 52, 62, 75, 60, 49, 53, 57, 89, 57, 73, 49, 49, 61, 71, 67, 80, 69, 62, 54, 76, 62, 67, 90, 67, 73, 66, 63, 62, 51, 56, 69, 81, 73, 84, 68, 80, 63, 79, 76, 74, 76, 59, 56, 62, 62, 83, 59, 89, 71, 43, 53, 75, 69, 57, 53, 51, 42, 91, 78, 66, 67, 71, 64, 67, 126, 140, 68, 61, 69, 41, 60, 71, 75, 80, 52, 62, 75, 98, 57, 69, 59, 87, 99, 67, 55, 100, 103, 87, 53, 68, 66, 53, 74, 68, 56, 62, 54, 67, 64, 58, 56, 51, 68, 62, 73, 66, 58, 58, 45, 57, 72, 63, 61, 70, 68, 63, 62, 60, 79, 41, 67, 65, 70, 60, 65, 56, 56, 54, 73, 58, 55, 50, 63, 62, 48, 48, 57, 74, 66, 62, 57, 85, 49, 62, 63, 104, 63, 103, 59, 54, 65, 76, 88, 64, 69, 56, 116, 99, 63, 81, 41, 48, 95, 59, 59, 86, 56, 70, 67, 68, 62, 62, 69, 66, 61, 49, 53, 68, 66, 60, 61, 75, 68, 133, 79, 54, 56, 67, 69, 76, 56, 76, 66, 65, 71, 55, 64, 71, 70, 48, 50, 61, 66, 72, 70, 86, 50, 66, 50, 68, 63, 55, 70, 80, 59, 68, 82, 51, 74, 65, 81, 100, 63, 67, 72, 61, 73, 61, 68, 54, 75, 77, 53, 86, 42, 71, 72, 71, 60, 57, 65, 74, 56, 52, 73, 49, 62, 79, 52, 102, 42, 56, 64, 79, 64, 57, 75, 52, 60, 66, 78, 67, 72, 60, 63, 89, 51, 68, 61, 49, 59, 62, 61, 61, 84, 57, 73, 68, 86, 73, 68, 75, 54, 62, 65, 73, 62, 67, 54, 68, 60, 77, 66, 68, 69, 60, 56, 66, 79, 54, 48, 60, 55, 98, 80, 60, 63, 61, 56, 78, 57, 98, 65, 53, 79, 79, 53, 56, 65, 65, 74, 46, 55, 86, 73, 29, 81, 44, 62, 67, 102, 68, 36, 64, 62, 66, 40, 56, 85, 65, 76, 56, 60, 65, 59, 56, 85, 141, 55, 64, 58, 62, 55, 52, 82, 49, 56, 72, 50, 55, 81, 50, 51, 58, 87, 61, 46, 80, 85, 55, 64, 51, 67, 52, 64, 62, 57, 63, 66, 44, 78, 79, 76, 63, 59, 60, 78, 67, 73, 62, 50, 62, 54, 60, 67, 63, 84, 64, 62, 62, 57, 65, 54, 61, 71, 53, 67, 59, 73, 51, 90, 54, 52, 59, 42, 53, 73, 45, 77, 46, 70, 58, 76, 60, 70, 100, 116, 60, 67, 80, 54, 83, 71, 53, 70, 61, 98, 59, 59, 61, 119, 80, 79, 79, 68, 56, 72, 55, 54, 53, 65, 57, 62, 73, 84, 65, 63, 113, 48, 60, 59, 45, 53, 68, 43, 59, 81, 48, 57, 62, 68, 76, 62, 55, 66, 45, 59, 78, 57, 110, 80, 89, 48, 61, 49, 47, 60, 56, 78, 72, 53, 59, 62, 67, 63, 71, 57, 80, 64, 63, 52, 108, 61, 86, 87, 67, 77, 55, 60, 67, 63, 61, 73, 61, 58, 51, 85, 59, 55, 61, 64, 65, 86, 53, 49, 89, 60, 53, 65, 62, 73, 80, 73, 58, 87, 56, 63, 46, 61, 64, 64, 66, 59, 73, 75, 75, 49, 63, 55, 73, 57, 70, 65, 66, 59, 72, 65, 74, 49, 75, 71, 68, 50, 60, 75, 66, 63, 77, 53, 62, 67, 59, 60, 66, 86, 70, 76, 76, 48, 59, 73, 72, 46, 66, 78, 46, 62, 62, 79, 76, 59, 75, 50, 115, 65, 60, 69, 55, 54, 71, 74, 70, 57, 61, 68, 51, 57, 69, 44, 66, 72, 58, 41, 93, 80, 74, 48, 34, 85, 74, 48, 58, 51, 49, 58, 58, 54, 67, 61, 80, 65, 35, 67, 62, 52, 53, 57, 55, 71, 65, 82, 70, 50, 105, 76, 49, 129, 43, 74, 77, 78, 56, 81, 70, 74, 62, 58, 56, 59, 55, 50, 54, 68, 80, 77, 83, 56, 49, 86, 60, 55, 51, 72, 68, 47, 69, 70, 56, 46, 60, 74, 103, 62, 77, 51, 66, 71, 62, 78, 59, 87, 52, 60, 75, 92, 62, 120, 71, 56, 93, 68, 61, 68, 58, 64, 59, 70, 60, 70, 57, 66, 59, 52, 64, 63, 66, 47, 78, 64, 53, 53, 64, 51, 68, 69, 66, 54, 39, 55, 58, 51, 56, 114, 59, 74, 61, 82, 81, 66, 60, 63, 69, 70, 74, 67, 55, 54, 73, 75, 51, 69, 58, 70, 62, 59, 68, 64, 65, 59, 55, 72, 76, 94, 80, 56, 71, 62, 67, 63, 53, 53, 73, 36, 59, 59, 72, 76, 68, 62, 64, 49, 73, 68, 93, 75, 96, 54, 54, 36, 58, 82, 73, 68, 52, 60, 84, 58, 61, 49, 51, 84, 59, 76, 61, 68, 74, 72, 61, 87, 74, 67, 76, 82, 55, 54, 60, 79, 57, 93, 75, 56, 82, 52, 76, 55, 69, 68, 60, 62, 59, 53, 84, 72, 63, 85, 68, 71, 56, 78, 75, 62, 69, 88, 66, 72, 88, 78, 58, 84, 60, 66, 68, 79, 77, 62, 71, 48, 79, 66, 78, 54, 47, 46, 66, 62, 72, 76, 67, 65, 61, 67, 88, 68, 50, 73, 78, 69, 65, 63, 77, 73, 50, 89, 75, 49, 75, 52, 53, 71, 70, 72, 63, 62, 72, 70, 85, 63, 73, 70, 63, 109, 61, 53, 45, 65, 87, 63, 64, 70, 61, 72, 67, 102, 55, 49, 73, 56, 75, 58, 86, 85, 64, 68, 78, 67, 63, 48, 64, 63, 60, 59, 69, 52, 61, 61, 47, 74, 84, 60, 109, 72, 81, 63, 91, 72, 68, 73, 50, 77, 45, 84, 71, 86, 55, 78, 59, 79, 60, 54, 63, 71, 73, 56, 52, 65, 29, 59, 46, 53, 103, 70, 73, 65, 42, 83, 78, 63, 60, 83, 47, 51, 58, 79, 60, 61, 73, 65, 83, 82, 77, 50, 54, 58, 80, 57, 63, 64, 71, 53, 68, 44, 65, 80, 81, 57, 59, 59, 68, 59, 56, 59, 70, 66, 45, 50, 67, 62, 69, 67, 65, 72, 53, 55, 55, 67, 53, 71, 51, 68, 55, 58, 52, 55, 72, 52, 61, 53, 67, 57, 80, 49, 74, 57, 59, 64, 62, 82, 62, 68, 77, 77, 59, 40, 71, 69, 69, 52, 86, 57, 64, 80, 74, 65, 45, 45, 76, 60, 53, 50, 65, 69, 83, 61, 57, 59, 77, 85, 71, 48, 77, 54, 42, 56, 67, 53, 73, 64, 54, 100, 129, 71, 80, 52, 64, 65, 65, 62, 70, 48, 82, 82, 93, 67, 54, 65, 91, 107, 52, 58, 95, 103, 79, 70, 64, 51, 75, 77, 72, 72, 52, 51, 66, 65, 53, 49, 95, 55, 62, 80, 71, 83, 69, 46, 79, 61, 60, 77, 46, 51, 65, 65, 50, 80, 56, 72, 55, 63, 62, 76, 88, 66, 56, 67, 75, 54, 52, 70, 69, 64, 70, 68, 50, 59, 81, 49, 65, 69, 47, 56, 107, 58, 96, 50, 73, 66, 51, 64, 52, 70, 58, 105, 96, 71, 87, 38, 69, 81, 63, 83, 55, 55, 68, 54, 54, 70, 60, 60, 63, 67, 48, 92, 69, 74, 76, 49, 79, 57, 114, 67, 72, 44, 71, 59, 92, 71, 96, 36, 65, 65, 68, 70, 87, 63, 77, 59, 57, 64, 60, 50, 101, 63, 79, 61, 76, 72, 71, 59, 68, 69, 57, 56, 54, 72, 90, 62, 82, 53, 64, 83, 69, 76, 65, 72, 67, 71, 93, 79, 54, 50, 53, 77, 63, 83, 68, 75, 74, 61, 54, 61, 62, 46, 97, 78, 98, 52, 55, 68, 76, 61, 59, 68, 52, 51, 57, 79, 61, 42, 66, 94, 66, 52, 71, 61, 63, 52, 60, 42, 62, 66, 52, 96, 66, 79, 66, 49, 86, 53, 56, 59, 62, 60, 69, 60, 73, 63, 65, 66, 56, 67, 59, 58, 63, 59, 62, 50, 47, 72, 72, 64, 60, 82, 59, 71, 74, 64, 82, 73, 55, 67, 57, 72, 46, 54, 54, 66, 66, 59, 94, 42, 55, 54, 49, 81, 67, 75, 59, 55, 55, 42, 68, 50, 75, 105, 52, 64, 51, 77, 53, 48, 41, 93, 135, 56, 49, 57, 67, 80, 52, 79, 66, 55, 61, 53, 39, 64, 55, 59, 64, 45, 59, 25, 68, 70, 69, 53, 69, 57, 73, 75, 74, 66, 70, 54, 53, 90, 51, 60, 74, 66, 57, 65, 80, 67, 58, 41, 101, 82, 73, 92, 66, 89, 89, 68, 64, 66, 48, 52, 69, 58, 69, 54, 63, 71, 58, 59, 75, 65, 87, 60, 50, 62, 59, 63, 55, 66, 59, 58, 83, 75, 101, 103, 72, 63, 80, 70, 79, 65, 59, 61, 53, 74, 58, 68, 54, 100, 58, 85, 91, 41, 63, 68, 74, 56, 63, 51, 70, 72, 70, 96, 47, 81, 104, 43, 76, 50, 38, 62, 73, 63, 65, 70, 66, 53, 63, 61, 76, 48, 84, 83, 65, 70, 81, 66, 109, 60, 89, 68, 79, 57, 75, 64, 69, 91, 77, 65, 60, 58, 45, 79, 86, 60, 64, 51, 82, 46, 91, 53, 97, 69, 74, 65, 72, 70, 77, 56, 55, 60, 57, 52, 52, 69, 46, 81, 65, 69, 45, 68, 48, 62, 74, 58, 62, 60, 69, 71, 67, 69, 65, 53, 74, 60, 44, 67, 66, 52, 60, 68, 50, 77, 60, 62, 49, 51, 54, 60, 75, 78, 69, 71, 74, 63, 60, 54, 61, 56, 45, 58, 55, 79, 54, 84, 62, 40, 48, 72, 74, 52, 69, 78, 45, 71, 68, 69, 60, 67, 60, 68, 56, 82, 63, 60, 58, 70, 89, 50, 49, 61, 89, 65, 52, 91, 62, 62, 70, 61, 41, 77, 62, 75, 63, 63, 57, 45, 67, 68, 76, 83, 67, 66, 71, 60, 59, 73, 67, 73, 66, 60, 66, 57, 76, 57, 58, 45, 88, 60, 55, 64, 67, 49, 56, 68, 62, 70, 72, 72, 59, 54, 101, 78, 65, 116, 65, 47, 61, 67, 59, 83, 64, 84, 58, 62, 82, 56, 63, 63, 74, 54, 63, 83, 61, 61, 69, 66, 54, 56, 64, 56, 61, 71, 61, 88, 60, 64, 65, 86, 85, 50, 70, 53, 62, 57, 78, 75, 71, 90, 76, 71, 74, 91, 55, 141, 60, 49, 74, 57, 74, 66, 55, 79, 50, 62, 65, 70, 45, 77, 61, 57, 62, 58, 57, 67, 75, 45, 63, 67, 61, 55, 69, 50, 69, 53, 48, 65, 74, 63, 97, 110, 71, 79, 72, 68, 80, 82, 67, 57, 69, 64, 42, 62, 64, 63, 63, 85, 54, 61, 57, 74, 67, 74, 67, 68, 70, 68, 80, 55, 72, 85, 71, 75, 78, 71, 69, 44, 74, 42, 59, 59, 64, 69, 57, 48, 61, 64, 69, 89, 68, 82, 85, 47, 90, 44, 65, 53, 58, 88, 48, 65, 48, 63, 77, 62, 51, 70, 63, 108, 67, 64, 55, 85, 76, 45, 66, 90, 43, 74, 76, 72, 59, 53, 63, 54, 65, 82, 47, 69, 75, 76, 57, 75, 51, 48, 87, 55, 54, 73, 73, 87, 55, 67, 74, 65, 63, 84, 66, 65, 50, 80, 72, 77, 74, 51, 48, 113, 56, 60, 61, 72, 76, 47, 54, 75, 68, 91, 90, 54, 52, 60, 61, 60, 74, 82, 58, 74, 73, 55, 77, 85, 55, 48, 62, 57, 63, 39, 59, 43, 61, 54, 62, 46, 68, 60, 51, 68, 69, 57, 86, 58, 62, 63, 61, 69, 73, 52, 69, 90, 54, 42, 54, 71, 61, 71, 66, 58, 68, 69, 66, 89, 66, 46, 61, 62, 83, 66, 91, 92, 75, 43, 64, 65, 84, 60, 82, 55, 38, 51, 68, 76, 55, 67, 66, 74, 61, 65, 61, 52, 83, 51, 68, 61, 65, 45, 59, 49, 97, 47, 73, 53, 63, 59, 84, 64, 73, 59, 65, 78, 57, 58, 67, 68, 81, 65, 72, 63, 77, 70, 67, 61, 71, 49, 95, 70, 104, 82, 49, 41, 67, 66, 73, 59, 115, 45, 131, 81, 74, 59, 78, 78, 65, 55, 57, 119, 57, 62, 61, 76, 110, 71, 84, 60, 60, 69, 67, 64, 72, 68, 65, 75, 58, 65, 66, 66, 76, 61, 58, 42, 58, 63, 92, 62, 57, 82, 55, 54, 74, 63, 61, 63, 73, 55, 58, 91, 49, 58, 69, 59, 54, 78, 69, 54, 66, 47, 59, 81, 69, 55, 107, 58, 73, 63, 69, 61, 53, 82, 85, 61, 60, 65, 85, 60, 64, 59, 64, 62, 74, 71, 63, 73, 51, 62, 69, 52, 57, 56, 60, 52, 70, 76, 53, 58, 67, 96, 69, 66, 73, 62, 85, 73, 62, 64, 70, 52, 56, 60, 54, 85, 55, 70, 60, 45, 56, 70, 61, 82, 61, 50, 87, 58, 82, 90, 64, 69, 90, 62, 63, 64, 66, 54, 49, 68, 44, 68, 61, 68, 47, 59, 81, 61, 57, 59, 76, 72, 86, 47, 84, 52, 56, 122, 57, 59, 57, 57, 71, 54, 77, 85, 66, 69, 70, 63, 57, 104, 64, 58, 67, 64, 68, 69, 53, 58, 64, 74, 68, 54, 62, 62, 61, 61, 113, 52, 55, 67, 59, 76, 67, 54, 60, 114, 79, 67, 61, 65, 55, 68, 69, 52, 59, 84, 72, 45, 71, 78, 74, 59, 51, 79, 79, 68, 65, 81, 59, 60, 66, 63, 70, 54, 78, 62, 55, 63, 84, 57, 57, 72, 100, 72, 55, 57, 68, 53, 62, 51, 96, 51, 73, 62, 62, 62, 50, 78, 60, 63, 68, 55, 62, 61, 41, 59, 63, 55, 64, 47, 61, 53, 70, 45, 75, 54, 69, 66, 74, 67, 51, 85, 70, 50, 49, 65, 67, 62, 82, 58, 74, 52, 64, 76, 78, 50, 89, 65, 55, 62, 70, 59, 71, 72, 63, 74, 53, 78, 58, 67, 60, 47, 59, 68, 75, 54, 78, 52, 62, 94, 50, 75, 77, 68, 48, 75, 81, 59, 74, 55, 67, 68, 65, 80, 72, 97, 52, 45, 68, 51, 80, 62, 61, 69, 76, 76, 71, 64, 102, 62, 72, 58, 57, 59, 71, 68, 63, 45, 71, 99, 41, 92, 61, 68, 68, 57, 60, 72, 54, 107, 59, 70, 93, 73, 68, 77, 87, 55, 66, 47, 80, 70, 60, 69, 85, 72, 67, 54, 68, 57, 50, 65, 43, 60, 63, 131, 54, 73, 56, 75, 59, 66, 71, 53, 55, 54, 67, 45, 101, 60, 65, 53, 66, 76, 60, 73, 59, 67, 71, 68, 55, 110, 65, 56, 71, 88, 60, 69, 56, 45, 89, 69, 51, 51, 58, 65, 61, 70, 69, 60, 55, 61, 65, 64, 60, 68, 78, 64, 48, 56, 68, 58, 59, 79, 47, 74, 70, 66, 72, 93, 66, 82, 62, 61, 52, 98, 107, 65, 102, 93, 62, 49, 59, 59, 65, 70, 68, 43, 78, 53, 56, 54, 63, 59, 52, 69, 66, 66, 65, 62, 61, 63, 54, 72, 56, 79, 45, 68, 47, 48, 73, 72, 70, 51, 61, 56, 58, 62, 70, 62, 48, 107, 54, 53, 60, 65, 63, 55, 65, 85, 52, 82, 61, 84, 65, 71, 121, 65, 94, 55, 70, 54, 57, 53, 88, 51, 63, 72, 88, 70, 80, 64, 60, 60, 55, 52, 82, 68, 80, 84, 61, 57, 57, 51, 64, 60, 58, 49, 66, 52, 83, 59, 60, 79, 69, 65, 59, 58, 50, 67, 55, 62, 64, 64, 57, 69, 59, 69, 76, 71, 76, 63, 75, 55, 62, 82, 78, 61, 68, 59, 81, 48, 75, 78, 47, 71, 53, 82, 61, 70, 60, 77, 57, 60, 69, 75, 76, 68, 62, 64, 69, 62, 84, 77, 88, 59, 62, 60, 70, 64, 68, 55, 61, 62, 56, 54, 61, 54, 53, 54, 57, 70, 70, 68, 72, 79, 81, 69, 51, 92, 73, 65, 86, 63, 52, 59, 82, 58, 70, 50, 85, 42, 64, 80, 69, 66, 65, 61, 63, 64, 50, 56, 58, 61, 78, 62, 78, 77, 73, 67, 81, 57, 75, 62, 75, 68, 61, 56, 75, 56, 61, 67, 60, 68, 50, 45, 55, 64, 49, 60, 58, 76, 68, 115, 53, 62, 41, 83, 82, 66, 57, 59, 58, 75, 66, 76, 55, 83, 58, 46, 47, 66, 50, 54, 60, 46, 77, 58, 66, 70, 78, 68, 73, 52, 90, 52, 52, 100, 89, 58, 61, 57, 63, 70, 65, 57, 67, 60, 83, 81, 52, 54, 61, 51, 71, 59, 60, 65, 53, 59, 61, 92, 61, 70, 72, 64, 63, 80, 80, 71, 57, 83, 65, 85, 73, 62, 77, 63, 67, 55, 71, 55, 50, 52, 78, 67, 72, 92, 55, 90, 67, 66, 62, 65, 49, 75, 61, 46, 78, 50, 89, 67, 70, 75, 48, 60, 63, 76, 85, 64, 42, 60, 64, 56, 54, 59, 57, 77, 73, 64, 52, 62, 89, 68, 55, 64, 59, 66, 63, 55, 60, 57, 64, 55, 64, 56, 54, 63, 52, 71, 48, 72, 58, 64, 59, 60, 65, 47, 53, 58, 59, 100, 61, 74, 70, 68, 58, 69, 50, 82, 100, 75, 61, 71, 44, 45, 57, 60, 58, 70, 57, 64, 53, 106, 78, 65, 61, 44, 56, 55, 80, 70, 61, 67, 61, 76, 61, 61, 57, 57, 54, 74, 128, 66, 61, 66, 52, 77, 74, 93, 50, 64, 65, 52, 51, 87, 69, 57, 69, 46, 82, 68, 51, 59, 64, 61, 127, 71, 72, 64, 61, 69, 78, 77, 88, 66, 64, 59, 106, 53, 52, 67, 62, 71, 79, 68, 82, 62, 53, 61, 61, 65, 71, 65, 86, 68, 62, 59, 82, 66, 64, 54, 88, 105, 57, 46, 68, 71, 50, 84, 69, 75, 78, 53, 56, 75, 56, 62, 65, 67, 57, 61, 66, 66, 87, 61, 54, 60, 60, 47, 77, 68, 60, 56, 57, 59, 57, 59, 69, 61, 77, 66, 83, 43, 55, 70, 57, 77, 62, 62, 62, 54, 60, 60, 56, 46, 56, 42, 62, 60, 49, 84, 71, 57, 59, 70, 76, 73, 74, 71, 45, 75, 43, 59, 45, 52, 93, 63, 50, 63, 75, 62, 44, 66, 52, 68, 57, 48, 76, 68, 68, 58, 56, 50, 112, 56, 67, 49, 55, 62, 58, 64, 68, 108, 67, 63, 58, 70, 58, 62, 102, 66, 55, 64, 60, 55, 67, 62, 43, 80, 49, 61, 65, 99, 70, 59, 82, 69, 96, 62, 95, 47, 72, 100, 73, 67, 84, 66, 83, 76, 54, 78, 86, 73, 73, 69, 56, 100, 53, 67, 81, 57, 62, 67, 63, 49, 65, 69, 63, 65, 60, 77, 62, 65, 65, 62, 70, 60, 52, 65, 69, 70, 73, 61, 68, 58, 52, 58, 61, 61, 53, 52, 42, 55, 53, 53, 58, 69, 76, 62, 74, 62, 75, 67, 79, 47, 68, 69, 50, 66, 95, 77, 61, 68, 66, 72, 74, 74, 75, 54, 63, 58, 65, 49, 56, 51, 107, 61, 63, 51, 56, 73, 43, 62, 58, 64, 49, 77, 65, 74, 46, 67, 76, 74, 42, 53, 64, 62, 72, 56, 64, 57, 69, 62, 59, 76, 45, 62, 82, 42, 55, 78, 80, 70, 58, 68, 54, 69, 79, 80, 74, 66, 62, 51, 45, 65, 45, 56, 55, 55, 60, 63, 62, 101, 69, 67, 65, 70, 77, 71, 51, 39, 81, 59, 67, 70, 57, 102, 66, 54, 90, 63, 62, 109, 60, 63, 52, 58, 82, 46, 78, 78, 63, 68, 75, 78, 85, 73, 96, 61, 65, 53, 87, 73, 90, 80, 61, 58, 87, 63, 62, 68, 105, 67, 64, 53, 92, 70, 65, 57, 60, 62, 85, 53, 49, 48, 83, 88, 69, 62, 53, 57, 71, 84, 65, 60, 54, 78, 52, 48, 85, 64, 87, 52, 83, 66, 62, 52, 61, 68, 63, 61, 80, 74, 70, 53, 61, 62, 89, 75, 74, 72, 57, 75, 72, 59, 74, 65, 65, 55, 54, 58, 63, 53, 73, 63, 48, 48, 82, 63, 97, 64, 52, 49, 74, 70, 68, 61, 62, 66, 85, 73, 54, 68, 63, 56, 59, 68, 70, 65, 62, 67, 68, 44, 58, 80, 66, 54, 63, 70, 62, 60, 61, 69, 77, 84, 65, 48, 75, 66, 63, 70, 60, 49, 65, 78, 62, 64, 64, 68, 78, 63, 78, 53, 61, 56, 58, 71, 65, 57, 59, 53, 75, 113, 70, 99, 49, 72, 43, 45, 73, 61, 41, 48, 65, 57, 65, 105, 59, 51, 53, 81, 68, 54, 69, 59, 58, 72, 95, 74, 56, 76, 58, 95, 93, 81, 56, 54, 56, 88, 56, 96, 59, 58, 71, 46, 46, 47, 66, 60, 65, 72, 54, 47, 60, 52, 65, 65, 63, 77, 61, 75, 64, 60, 82, 60, 69, 55, 87, 63, 50, 72, 81, 65, 54, 81, 54, 67, 42, 58, 45, 79, 56, 77, 59, 54, 63, 61, 54, 68, 53, 75, 57, 65, 61, 61, 69, 72, 67, 45, 102, 73, 51, 65, 56, 53, 57, 49, 79, 88, 105, 60, 71, 72, 76, 70, 67, 70, 67, 69, 69, 79, 84, 71, 89, 59, 107, 79, 48, 63, 118, 70, 59, 63, 49, 104, 70, 96, 61, 83, 105, 64, 77, 56, 53, 117, 64, 63, 60, 61, 72, 64, 46, 56, 62, 81, 56, 61, 64, 57, 122, 70, 99, 55, 112, 57, 73, 76, 63, 40, 75, 62, 59, 67, 64, 58, 47, 64, 72, 56, 90, 55, 83, 53, 56, 69, 65, 68, 52, 71, 73, 57, 71, 60, 68, 64, 69, 81, 63, 66, 59, 60, 58, 47, 89, 66, 48, 76, 72, 63, 60, 124, 63, 59, 63, 83, 71, 61, 58, 80, 70, 61, 63, 67, 70, 60, 58, 55, 65, 67, 57, 71, 49, 51, 61, 65, 58, 63, 70, 43, 52, 63, 60, 58, 81, 61, 77, 66, 97, 73, 75, 80, 65, 62, 51, 69, 57, 58, 65, 74, 64, 69, 78, 63, 77, 69, 47, 57, 55, 71, 68, 64, 86, 62, 62, 78, 94, 48, 65, 61, 73, 72, 51, 72, 58, 58, 49, 76, 61, 50, 80, 62, 74, 56, 54, 58, 54, 52, 59, 82, 72, 62, 69, 63, 82, 85, 43, 53, 65, 68, 60, 72, 66, 58, 49, 65, 51, 46, 52, 52, 60, 59, 62, 59, 52, 59, 78, 102, 70, 47, 68, 85, 69, 67, 64, 61, 60, 64, 58, 56, 74, 59, 58, 99, 62, 65, 62, 57, 61, 70, 61, 63, 75, 57, 60, 69, 52, 42, 68, 67, 68, 42, 72, 64, 73, 85, 70, 77, 96, 71, 55, 73, 59, 59, 74, 107, 69, 64, 64, 62, 72, 66, 54, 78, 58, 75, 55, 56, 80, 78, 77, 65, 64, 65, 71, 61, 62, 103, 44, 53, 61, 66, 68, 50, 64, 62, 61, 55, 53, 41, 78, 79, 77, 105, 53, 70, 69, 65, 52, 71, 55, 54, 61, 66, 95, 66, 61, 71, 39, 77, 66, 83, 69, 66, 65, 81, 60, 62, 72, 59, 64, 63, 50, 65, 44, 60, 74, 55, 47, 53, 60, 68, 67, 87, 67, 71, 60, 87, 60, 72, 63, 61, 49, 52, 89, 59, 81, 66, 45, 76, 65, 70, 68, 83, 45, 50, 56, 70, 47, 54, 81, 74, 58, 61, 40, 62, 63, 104, 64, 96, 64, 64, 67, 73, 69, 75, 68, 68, 55, 102, 80, 66, 63, 69, 92, 61, 65, 76, 73, 77, 73, 66, 113, 83, 56, 86, 57, 57, 61, 55, 67, 65, 67, 57, 87, 77, 49, 59, 61, 83, 70, 65, 58, 71, 58, 62, 76, 97, 92, 96, 63, 60, 51, 46, 69, 70, 60, 86, 75, 61, 53, 89, 90, 100, 72, 62, 81, 72, 89, 57, 61, 76, 71, 61, 61, 67, 80, 62, 70, 48, 61, 78, 64, 79, 69, 68, 88, 62, 67, 56, 60, 78, 82, 64, 63, 58, 68, 52, 64, 51, 69, 69, 76, 39, 77, 53, 69, 83, 54, 73, 74, 65, 67, 49, 68, 55, 77, 59, 84, 77, 56, 56, 53, 71, 79, 62, 60, 74, 85, 54, 53, 61, 36, 50, 50, 66, 67, 63, 61, 55, 70, 68, 64, 62, 66, 70, 48, 64, 59, 65, 65, 69, 80, 62, 58, 49, 66, 69, 51, 55, 47, 58, 57, 65, 68, 41, 78, 67, 44, 89, 66, 67, 88, 57, 71, 58, 98, 58, 69, 69, 51, 61, 71, 56, 61, 49, 57, 137, 75, 66, 83, 59, 93, 56, 108, 56, 58, 71, 66, 57, 58, 73, 63, 59, 54, 63, 68, 61, 59, 50, 77, 80, 53, 71, 77, 69, 58, 81, 74, 56, 59, 74, 80, 84, 70, 63, 53, 54, 55, 59, 77, 108, 64, 68, 65, 55, 57, 62, 83, 64, 62, 62, 64, 69, 68, 69, 52, 81, 79, 68, 70, 62, 65, 56, 61, 62, 67, 59, 81, 62, 64, 65, 75, 71, 83, 57, 60, 56, 65, 63, 69, 61, 59, 58, 60, 58, 75, 33, 68, 43, 60, 66, 59, 85, 77, 58, 55, 74, 85, 61, 52, 72, 72, 58, 72, 55, 69, 60, 76, 67, 86, 46, 74, 61, 57, 69, 50, 55, 59, 77, 67, 69, 67, 53, 65, 68, 70, 58, 56, 62, 60, 53, 78, 71, 65, 63, 51, 68, 73, 76, 98, 67, 72, 124, 74, 66, 53, 72, 56, 68, 63, 74, 61, 67, 72, 60, 60, 76, 91, 62, 72, 59, 78, 84, 60, 62, 100, 64, 65, 65, 61, 62, 82, 56, 77, 78, 68, 70, 56, 56, 52, 62, 45, 63, 83, 58, 64, 89, 72, 63, 71, 66, 75, 57, 63, 87, 72, 87, 62, 66, 82, 61, 48, 62, 88, 47, 65, 76, 65, 74, 53, 70, 68, 56, 86, 56, 59, 54, 64, 47, 97, 66, 36, 65, 55, 64, 61, 68, 48, 60, 69, 66, 54, 56, 51, 73, 60, 94, 67, 58, 62, 59, 62, 63, 62, 96, 65, 67, 60, 77, 87, 57, 62, 57, 67, 63, 61, 69, 66, 52, 49, 71, 50, 61, 69, 76, 61, 81, 70, 59, 63, 56, 75, 56, 82, 68, 72, 120, 67, 88, 72, 55, 61, 68, 69, 76, 70, 52, 51, 62, 78, 97, 52, 81, 67, 60, 48, 77, 56, 37, 70, 58, 46, 58, 55, 80, 61, 51, 60, 63, 56, 65, 76, 53, 51, 41, 67, 58, 70, 60, 83, 74, 50, 75, 79, 47, 78, 54, 107, 58, 66, 64, 52, 65, 61, 64, 67, 60, 60, 62, 52, 65, 49, 65, 74, 59, 51, 129, 61, 69, 63, 70, 74, 49, 71, 102, 61, 60, 63, 58, 73, 82, 56, 38, 52, 60, 59, 60, 54, 69, 49, 82, 94, 60, 60, 55, 57, 71, 93, 53, 89, 66, 60, 63, 64, 67, 74, 59, 61, 64, 52, 80, 67, 71, 65, 59, 57, 62, 59, 58, 49, 64, 56, 62, 71, 53, 61, 60, 105, 80, 49, 67, 62, 58, 67, 67, 38, 61, 64, 127, 82, 62, 59, 65, 89, 76, 63, 61, 56, 53, 65, 74, 49, 64, 69, 59, 66, 54, 61, 42, 61, 68, 64, 55, 71, 84, 83, 82, 68, 69, 77, 89, 59, 46, 88, 76, 75, 56, 58, 62, 62, 58, 61, 60, 77, 50, 72, 77, 70, 79, 67, 66, 57, 81, 73, 60, 55, 67, 59, 87, 89, 63, 59, 53, 82, 67, 64, 79, 74, 87, 66, 66, 76, 77, 63, 52, 60, 59, 57, 86, 59, 75, 57, 64, 120, 56, 84, 72, 101, 64, 55, 51, 77, 69, 78, 73, 87, 83, 76, 75, 66, 62, 55, 69, 75, 68, 76, 75, 53, 89, 64, 72, 53, 63, 63, 69, 73, 66, 70, 59, 59, 60, 64, 55, 68, 68, 68, 56, 79, 57, 72, 62, 54, 63, 65, 67, 57, 72, 58, 59, 54, 64, 70, 76, 53, 51, 55, 56, 64, 71, 51, 58, 58, 71, 64, 87, 56, 56, 63, 64, 74, 62, 54, 62, 80, 76, 69, 58, 68, 56, 56, 57, 61, 70, 58, 80, 90, 68, 61, 68, 56, 69, 72, 61, 71, 77, 66, 65, 53, 67, 93, 62, 82, 107, 56, 48, 54, 47, 65, 73, 59, 51, 57, 69, 75, 77, 62, 63, 89, 65, 46, 64, 60, 76, 70, 89, 62, 67, 66, 67, 70, 72, 59, 61, 100, 67, 64, 73, 74, 54, 70, 55, 54, 58, 62, 58, 79, 89, 63, 74, 54, 64, 66, 76, 60, 75, 60, 74, 85, 89, 57, 85, 63, 62, 76, 62, 58, 61, 72, 65, 76, 71, 74, 64, 71, 63, 65, 53, 74, 69, 66, 54, 62, 66, 71, 67, 61, 57, 61, 63, 71, 76, 92, 47, 72, 95, 86, 72, 67, 67, 54, 84, 53, 74, 89, 48, 59, 49, 58, 91, 64, 40, 95, 62, 55, 58, 64, 59, 60, 68, 52, 52, 57, 75, 70, 45, 100, 75, 73, 55, 59, 51, 87, 52, 85, 58, 54, 62, 52, 50, 65, 72, 72, 73, 76, 87, 72, 89, 68, 78, 54, 66, 55, 65, 56, 63, 49, 64, 70, 63, 54, 75, 62, 60, 60, 70, 71, 57, 47, 59, 54, 73, 52, 59, 63, 72, 71, 67, 55, 72, 67, 45, 59, 66, 71, 118, 49, 74, 86, 85, 59, 66, 69, 69, 61, 75, 60, 57, 87, 67, 74, 67, 89, 56, 56, 69, 70, 58, 56, 73, 71, 78, 86, 56, 58, 57, 60, 63, 75, 50, 77, 72, 55, 56, 49, 63, 64, 51, 79, 62, 57, 55, 95, 91, 70, 64, 65, 64, 76, 81, 52, 68, 62, 65, 48, 77, 86, 98, 51, 97, 82, 68, 70, 64, 74, 60, 45, 89, 63, 66, 71, 49, 56, 115, 57, 55, 66, 67, 75, 68, 57, 66, 67, 60, 69, 59, 65, 75, 84, 71, 67, 81, 67, 55, 59, 56, 74, 60, 55, 57, 63, 62, 71, 73, 66, 68, 68, 102, 86, 67, 39, 59, 86, 54, 58, 66, 56, 59, 63, 66, 63, 63, 50, 52, 59, 54, 65, 86, 57, 64, 52, 49, 63, 60, 62, 74, 65, 62, 71, 71, 70, 72, 75, 64, 62, 67, 69, 70, 63, 55, 79, 63, 78, 63, 56, 65, 69, 127, 52, 78, 77, 76, 73, 67, 72, 64, 65, 53, 61, 60, 46, 52, 62, 80, 81, 88, 65, 73, 53, 90, 72, 58, 64, 64, 60, 64, 51, 75, 70, 56, 37, 58, 105, 58, 81, 52, 53, 77, 62, 52, 68, 56, 73, 71, 52, 66, 75, 64, 77, 65, 90, 62, 95, 82, 76, 64, 60, 64, 47, 67, 51, 126, 54, 64, 55, 74, 58, 61, 96, 60, 75, 65, 61, 58, 61, 61, 83, 62, 73, 62, 52, 81, 61, 79, 71, 58, 85, 55, 75, 51, 56, 79, 62, 48, 72, 75, 54, 86, 71, 88, 60, 72, 61, 68, 61, 80, 58, 43, 79, 64, 62, 75, 63, 63, 64, 58, 59, 68, 74, 86, 76, 71, 69, 54, 69, 56, 68, 70, 55, 43, 66, 59, 84, 62, 54, 68, 62, 59, 62, 45, 57, 78, 61, 61, 64, 58, 56, 54, 75, 72, 60, 59, 78, 95, 77, 74, 62, 76, 70, 98, 60, 82, 70, 64, 60, 81, 60, 53, 70, 52, 55, 55, 71, 60, 83, 54, 74, 53, 42, 68, 48, 62, 60, 69, 50, 84, 69, 69, 58, 73, 59, 64, 50, 51, 64, 53, 64, 73, 62, 66, 59, 86, 67, 71, 67, 54, 73, 75, 73, 58, 67, 71, 78, 68, 62, 70, 77, 51, 69, 54, 60, 81, 68, 67, 55, 67, 60, 69, 69, 61, 59, 104, 51, 51, 85, 47, 87, 66, 97, 72, 44, 74, 56, 45, 67, 76, 80, 76, 95, 60, 61, 69, 84, 74, 69, 70, 58, 47, 60, 73, 55, 63, 87, 62, 72, 55, 95, 48, 81, 53, 100, 73, 91, 69, 65, 65, 82, 58, 72, 70, 105, 60, 53, 75, 97, 48, 82, 58, 66, 62, 59, 46, 61, 71, 76, 67, 45, 47, 64, 54, 66, 91, 48, 77, 57, 54, 57, 61, 79, 59, 78, 78, 57, 56, 55, 64, 39, 46, 75, 59, 68, 63, 68, 83, 57, 68, 60, 66, 68, 53, 72, 57, 64, 58, 57, 56, 79, 71, 61, 65, 68, 66, 82, 57, 71, 60, 51, 62, 85, 68, 52, 64, 66, 38, 69, 55, 72, 77, 83, 55, 63, 60, 76, 53, 65, 53, 46, 87, 83, 81, 51, 69, 45, 89, 45, 66, 48, 98, 57, 47, 57, 62, 81, 58, 86, 57, 67, 63, 55, 73, 72, 72, 101, 64, 70, 56, 57, 65, 73, 73, 62, 77, 73, 61, 88, 77, 72, 55, 65, 35, 69, 128, 52, 77, 73, 66, 61, 84, 61, 48, 72, 58, 65, 40, 67, 111, 74, 60, 64, 41, 58, 55, 70, 78, 52, 82, 113, 58, 71, 73, 63, 51, 91, 88, 97, 84, 99, 35, 62, 53, 65, 69, 64, 55, 71, 44, 68, 70, 65, 66, 68, 62, 65, 61, 54, 57, 56, 52, 46, 81, 57, 69, 87, 77, 57, 58, 67, 62, 69, 44, 62, 57, 58, 115, 68, 67, 80, 66, 81, 53, 46, 68, 46, 54, 64, 51, 57, 104, 68, 59, 84, 60, 51, 72, 38, 64, 62, 52, 62, 61, 76, 62, 77, 63, 89, 43, 101, 73, 99, 56, 80, 55, 71, 52, 92, 67, 64, 98, 60, 58, 83, 75, 67, 50, 53, 57, 80, 83, 76, 66, 56, 70, 47, 92, 57, 73, 29, 61, 105, 61, 62, 58, 51, 100, 58, 64, 92, 57, 63, 63, 65, 96, 61, 54, 59, 70, 48, 66, 119, 66, 54, 90, 110, 48, 71, 56, 87, 60, 101, 57, 117, 60, 56, 64, 81, 69, 55, 44, 49, 64, 78, 71, 69, 59, 64, 60, 67, 76, 85, 61, 64, 60, 57, 52, 83, 75, 80, 77, 52, 54, 77, 52, 71, 63, 53, 69, 47, 54, 75, 109, 70, 53, 66, 61, 64, 58, 53, 69, 55, 59, 58, 81, 74, 50, 62, 51, 62, 54, 93, 81, 57, 60, 69, 57, 54, 52, 52, 84, 56, 56, 77, 65, 51, 65, 55, 86, 83, 63, 72, 76, 70, 55, 42, 62, 56, 58, 56, 58, 57, 61, 59, 69, 73, 59, 78, 61, 61, 74, 70, 67, 50, 83, 76, 57, 96, 58, 63, 56, 79, 62, 52, 59, 73, 69, 69, 63, 59, 53, 48, 60, 63, 59, 70, 71, 56, 52, 76, 74, 67, 68, 79, 72, 71, 94, 91, 82, 60, 59, 48, 84, 77, 85, 63, 65, 56, 54, 57, 66, 64, 77, 70, 57, 51, 84, 72, 66, 72, 56, 54, 69, 48, 96, 86, 74, 57, 66, 74, 63, 67, 79, 73, 25, 45, 68, 56, 53, 51, 68, 61, 75, 55, 65, 53, 82, 65, 62, 79, 62, 66, 52, 64, 62, 81, 57, 52, 60, 79, 42, 73, 66, 60, 63, 64, 48, 75, 50, 80, 47, 62, 73, 42, 63, 68, 55, 58, 88, 57, 68, 59, 45, 81, 71, 60, 57, 73, 98, 80, 71, 52, 65, 55, 55, 94, 66, 73, 42, 60, 50, 73, 89, 52, 77, 73, 54, 74, 100, 85, 53, 63, 80, 56, 65, 71, 68, 57, 54, 57, 75, 64, 62, 80, 66, 48, 89, 60, 55, 55, 68, 80, 59, 77, 102, 62, 57, 90, 78, 76, 56, 85, 72, 64, 57, 57, 61, 93, 69, 46, 78, 50, 54, 49, 54, 66, 58, 78, 65, 62, 57, 81, 67, 72, 58, 51, 59, 91, 55, 85, 85, 61, 67, 51, 62, 64, 89, 72, 83, 71, 66, 59, 62, 67, 57, 55, 88, 47, 66, 81, 108, 58, 68, 131, 76, 55, 61, 67, 84, 50, 49, 78, 81, 43, 102, 71, 45, 88, 56, 71, 53, 67, 66, 59, 69, 71, 49, 61, 51, 55, 56, 65, 44, 66, 63, 91, 42, 82, 90, 68, 54, 49, 72, 32, 100, 67, 75, 53, 63, 63, 58, 50, 72, 74, 50, 59, 75, 65, 61, 76, 73, 76, 45, 62, 51, 72, 52, 76, 63, 63, 61, 63, 65, 44, 67, 61, 71, 57, 57, 59, 58, 66, 70, 75, 57, 94, 67, 56, 72, 58, 49, 48, 51, 64, 45, 64, 61, 50, 60, 82, 68, 69, 55, 49, 60, 66, 63, 75, 46, 42, 88, 94, 55, 67, 69, 69, 76, 61, 81, 63, 65, 43, 69, 75, 44, 63, 51, 53, 76, 64, 59, 76, 56, 52, 52, 54, 99, 64, 62, 60, 58, 59, 97, 66, 69, 59, 61, 70, 63, 70, 50, 79, 74, 79, 58, 62, 52, 63, 50, 80, 62, 68, 77, 78, 54, 71, 72, 68, 55, 93, 46, 51, 55, 74, 53, 59, 50, 64, 116, 75, 70, 58, 67, 68, 69, 65, 60, 85, 68, 50, 61, 87, 76, 56, 66, 66, 72, 85, 47, 58, 74, 67, 68, 71, 46, 84, 70, 69, 58, 55, 64, 62, 63, 67, 77, 57, 90, 68, 67, 77, 59, 41, 88, 57, 52, 42, 65, 58, 64, 58, 70, 61, 76, 59, 56, 52, 58, 66, 72, 63, 66, 79, 59, 58, 56, 55, 46, 61, 72, 58, 73, 51, 48, 53, 62, 70, 54, 63, 51, 45, 64, 75, 95, 74, 66, 64, 62, 64, 74, 84, 80, 80, 62, 64, 52, 93, 63, 60, 91, 82, 67, 62, 58, 70, 54, 75, 65, 64, 66, 66, 46, 105, 56, 66, 74, 69, 59, 56, 48, 79, 51, 46, 61, 46, 54, 46, 66, 59, 70, 57, 51, 66, 58, 72, 63, 64, 43, 69, 93, 73, 96, 71, 70, 57, 32, 60, 77, 82, 58, 57, 65, 74, 48, 57, 72, 54, 70, 91, 66, 68, 74, 56, 41, 61, 81, 70, 69, 83, 95, 47, 52, 55, 72, 79, 66, 59, 62, 79, 71, 49, 68, 80, 81, 85, 47, 82, 61, 62, 113, 81, 68, 69, 76, 82, 53, 59, 74, 47, 57, 85, 57, 71, 52, 59, 73, 74, 75, 72, 67, 87, 50, 68, 62, 93, 64, 70, 74, 80, 50, 74, 55, 99, 59, 65, 61, 67, 69, 61, 62, 86, 67, 95, 83, 50, 68, 55, 52, 56, 58, 53, 82, 59, 68, 64, 68, 93, 61, 75, 72, 52, 67, 59, 70, 73, 62, 74, 96, 81, 62, 69, 62, 54, 57, 73, 85, 73, 47, 77, 41, 80, 71, 49, 85, 69, 88, 55, 61, 63, 50, 73, 80, 49, 76, 55, 69, 97, 72, 61, 61, 76, 61, 63, 56, 73, 37, 68, 47, 68, 64, 69, 68, 73, 70, 54, 73, 69, 86, 55, 61, 71, 113, 76, 64, 66, 104, 56, 71, 55, 71, 53, 76, 75, 76, 75, 69, 67, 52, 55, 46, 94, 66, 65, 59, 61, 67, 83, 56, 69, 62, 70, 78, 51, 68, 84, 59, 59, 81, 60, 96, 65, 68, 57, 74, 28, 67, 61, 70, 62, 53, 80, 70, 68, 106, 71, 59, 80, 56, 58, 64, 95, 62, 69, 41, 103, 49, 75, 73, 75, 54, 102, 78, 66, 79, 110, 97, 72, 91, 64, 52, 71, 67, 49, 77, 62, 85, 64, 71, 57, 63, 71, 70, 64, 70, 64, 56, 70, 53, 58, 67, 56, 54, 49, 76, 88, 61, 80, 66, 82, 64, 56, 78, 49, 83, 96, 104, 64, 60, 61, 69, 60, 60, 86, 57, 100, 77, 75, 72, 67, 55, 65, 56, 51, 70, 61, 58, 61, 79, 68, 72, 75, 77, 76, 50, 65, 73, 80, 72, 71, 55, 48, 82, 78, 67, 62, 48, 68, 73, 90, 58, 73, 56, 57, 61, 48, 59, 86, 74, 69, 79, 55, 78, 72, 57, 77, 82, 103, 49, 50, 52, 57, 64, 75, 59, 72, 63, 38, 38, 56, 80, 76, 75, 69, 71, 71, 71, 107, 73, 82, 63, 78, 59, 79, 94, 71, 52, 41, 48, 85, 74, 47, 79, 63, 58, 58, 75, 54, 67, 64, 88, 59, 56, 61, 84, 76, 59, 61, 72, 70, 74, 55, 36, 76, 56, 61, 87, 89, 71, 50, 79, 72, 58, 67, 75, 69, 62, 56, 116, 62, 71, 58, 49, 76, 74, 42, 61, 54, 80, 55, 81, 31, 67, 48, 65, 66, 73, 35, 56, 59, 50, 77, 59, 88, 62, 55, 61, 61, 103, 59, 48, 69, 73, 80, 66, 75, 58, 78, 89, 62, 63, 85, 73, 58, 56, 37, 73, 50, 71, 44, 58, 55, 73, 69, 58, 72, 60, 77, 96, 92, 80, 58, 76, 91, 91, 58, 61, 42, 59, 46, 48, 56, 72, 70, 56, 63, 60, 67, 64, 60, 67, 54, 72, 68, 52, 53, 62, 47, 62, 85, 54, 69, 88, 64, 75, 70, 91, 53, 74, 62, 73, 67, 69, 52, 62, 66, 63, 78, 60, 75, 67, 49, 57, 69, 68, 46, 67, 104, 84, 63, 34, 69, 77, 72, 35, 72, 39, 109, 72, 54, 77, 46, 64, 71, 67, 54, 79, 60, 44, 50, 90, 62, 62, 37, 57, 52, 52, 48, 56, 43, 48, 71, 79, 54, 66, 89, 45, 68, 84, 56, 63, 46, 42, 72, 64, 60, 62, 80, 58, 97, 74, 66, 53, 57, 52, 69, 64, 66, 52, 83, 61, 83, 82, 52, 109, 74, 61, 65, 60, 64, 59, 66, 57, 61, 40, 58, 60, 58, 59, 58, 94, 72, 49, 68, 89, 53, 62, 48, 81, 51, 76, 56, 87, 68, 43, 47, 82, 55, 65, 60, 57, 55, 102, 64, 75, 58, 71, 71, 74, 53, 70, 64, 62, 64, 74, 42, 68, 55, 61, 53, 42, 59, 67, 43, 72, 51, 68, 64, 55, 69, 62, 61, 62, 81, 77, 69, 83, 71, 57, 71, 84, 86, 86, 70, 44, 53, 53, 65, 60, 55, 63, 69, 87, 64, 82, 60, 70, 41, 68, 73, 53, 49, 65, 80, 69, 89, 80, 70, 60, 54, 56, 89, 69, 77, 50, 59, 76, 57, 77, 129, 88, 48, 74, 77, 59, 48, 49, 64, 67, 71, 47, 73, 53, 80, 73, 63, 60, 93, 64, 39, 75, 59, 42, 57, 81, 68, 47, 65, 55, 62, 50, 62, 58, 61, 65, 55, 58, 70, 86, 75, 64, 55, 69, 60, 72, 80, 73, 81, 49, 86, 73, 53, 50, 76, 52, 62, 54, 54, 67, 61, 110, 69, 68, 47, 55, 62, 64, 47, 51, 68, 52, 82, 76, 71, 75, 46, 54, 59, 62, 60, 89, 44, 57, 62, 81, 37, 59, 75, 52, 52, 45, 71, 77, 78, 60, 56, 76, 85, 70, 69, 71, 74, 61, 72, 69, 69, 61, 54, 86, 106, 73, 57, 58, 60, 49, 49, 62, 48, 48, 55, 66, 73, 95, 75, 60, 83, 72, 66, 80, 48, 62, 67, 72, 92, 60, 47, 64, 79, 83, 70, 54, 43, 69, 44, 63, 69, 63, 46, 44, 94, 63, 42, 91, 49, 68, 66, 52, 66, 53, 71, 67, 59, 74, 66, 116, 50, 75, 67, 68, 52, 58, 81, 53, 56, 80, 60, 60, 84, 59, 69, 66, 46, 67, 66, 56, 72, 71, 57, 68, 69, 65, 96, 59, 53, 79, 59, 59, 51, 53, 79, 102, 38, 62, 85, 70, 58, 60, 60, 95, 49, 64, 47, 57, 62, 68, 79, 58, 74, 85, 56, 67, 72, 56, 52, 57, 73, 45, 45, 50, 67, 50, 77, 64, 50, 59, 44, 65, 83, 70, 69, 102, 57, 55, 91, 83, 50, 85, 50, 75, 64, 62, 51, 75, 83, 60, 79, 65, 76, 53, 60, 48, 108, 77, 56, 88, 69, 52, 65, 64, 48, 52, 79, 74, 58, 59, 65, 86, 73, 74, 70, 77, 63, 54, 54, 67, 65, 56, 53, 49, 69, 55, 69, 73, 60, 59, 54, 60, 70, 55, 77, 87, 62, 87, 78, 94, 53, 69, 52, 43, 64, 50, 59, 61, 76, 60, 74, 50, 52, 72, 59, 70, 69, 66, 61, 77, 57, 82, 60, 70, 60, 62, 70, 63, 45, 79, 69, 66, 62, 60, 100, 57, 69, 52, 59, 88, 66, 73, 53, 59, 55, 58, 53, 63, 70, 111, 69, 63, 91, 38, 78, 67, 62, 76, 65, 56, 75, 50, 64, 69, 62, 66, 105, 66, 75, 96, 80, 48, 85, 50, 85, 54, 55, 52, 97, 67, 66, 89, 90, 63, 44, 79, 81, 64, 69, 63, 77, 73, 84, 81, 65, 58, 54, 62, 55, 59, 56, 66, 53, 66, 50, 53, 70, 69, 92, 61, 56, 59, 53, 76, 62, 65, 78, 40, 107, 46, 50, 62, 56, 61, 70, 68, 110, 59, 56, 76, 58, 57, 52, 77, 63, 75, 57, 76, 57, 72, 63, 95, 63, 70, 51, 71, 86, 68, 59, 71, 66, 66, 54, 54, 48, 86, 77, 63, 81, 49, 62, 57, 63, 61, 49, 63, 82, 63, 53, 79, 67, 44, 69, 63, 62, 58, 74, 66, 49, 67, 46, 74, 95, 65, 58, 57, 58, 62, 49, 69, 83, 52, 74, 43, 53, 60, 77, 53, 75, 57, 74, 62, 52, 47, 80, 65, 62, 58, 52, 79, 79, 77, 64, 57, 88, 71, 77, 83, 86, 60, 77, 63, 66, 107, 51, 73, 88, 62, 63, 50, 75, 58, 77, 50, 97, 68, 65, 101, 60, 70, 88, 62, 52, 44, 103, 92, 65, 64, 70, 59, 60, 57, 63, 72, 66, 78, 66, 56, 54, 68, 60, 64, 62, 76, 59, 52, 74, 51, 65, 72, 64, 62, 48, 63, 80, 53, 50, 60, 72, 58, 45, 66, 59, 36, 66, 68, 68, 54, 61, 63, 61, 46, 67, 64, 90, 90, 71, 72, 59, 78, 66, 70, 67, 69, 62, 66, 68, 67, 55, 48, 76, 50, 90, 30, 72, 55, 90, 66, 79, 49, 57, 86, 63, 70, 63, 59, 71, 62, 92, 61, 65, 51, 63, 49, 54, 59, 97, 67, 87, 77, 70, 82, 76, 58, 63, 59, 87, 63, 52, 50, 52, 69, 56, 84, 70, 46, 44, 64, 61, 73, 73, 53, 62, 50, 58, 58, 115, 59, 85, 53, 62, 72, 64, 89, 73, 65, 47, 59, 79, 76, 64, 67, 47, 62, 68, 51, 63, 61, 70, 64, 57, 57, 57, 86, 61, 53, 70, 61, 69, 55, 69, 69, 51, 56, 62, 73, 79, 64, 79, 86, 78, 80, 90, 54, 51, 51, 59, 95, 60, 71, 73, 77, 77, 67, 46, 51, 69, 78, 57, 54, 71, 53, 49, 67, 74, 72, 75, 52, 81, 67, 81, 68, 73, 62, 72, 81, 56, 95, 58, 52, 65, 80, 86, 49, 74, 58, 102, 70, 68, 72, 75, 75, 80, 55, 45, 58, 51, 56, 63, 63, 60, 76, 74, 41, 65, 52, 86, 72, 85, 82, 90, 57, 89, 60, 80, 69, 45, 52, 64, 64, 75, 73, 91, 64, 55, 66, 93, 68, 67, 62, 63, 62, 61, 62, 61, 82, 60, 50, 82, 66, 80, 63, 96, 51, 60, 79, 73, 86, 52, 83, 67, 57, 61, 55, 49, 59, 62, 64, 89, 76, 68, 52, 64, 50, 48, 70, 76, 83, 73, 65, 57, 58, 43, 59, 68, 45, 120, 97, 63, 96, 93, 54, 61, 67, 59, 86, 56, 55, 62, 77, 55, 65, 51, 60, 68, 85, 75, 73, 62, 53, 67, 86, 62, 68, 108, 52, 61, 76, 54, 53, 61, 68, 97, 65, 63, 66, 63, 56, 48, 47, 64, 63, 55, 62, 63, 55, 67, 61, 77, 46, 70, 55, 61, 117, 58, 56, 64, 58, 72, 69, 61, 50, 77, 68, 71, 60, 55, 61, 70, 95, 54, 71, 60, 65, 60, 67, 61, 57, 59, 97, 65, 69, 60, 51, 62, 69, 72, 76, 55, 58, 55, 77, 60, 77, 70, 46, 86, 76, 79, 83, 52, 72, 74, 90, 55, 59, 53, 73, 54, 51, 69, 67, 65, 87, 78, 50, 68, 61, 76, 84, 68, 76, 70, 64, 80, 55, 65, 61, 51, 68, 69, 50, 62, 55, 65, 47, 51, 77, 52, 57, 81, 67, 50, 98, 60, 84, 50, 78, 46, 59, 38, 77, 90, 59, 107, 55, 91, 42, 64, 45, 71, 68, 66, 57, 66, 54, 62, 66, 114, 67, 66, 75, 77, 56, 64, 65, 72, 78, 55, 81, 54, 67, 95, 43, 58, 59, 87, 64, 65, 69, 64, 65, 80, 69, 65, 47, 68, 51, 54, 55, 66, 63, 52, 60, 70, 74, 84, 62, 92, 58, 71, 76, 54, 69, 45, 68, 78, 42, 50, 65, 69, 60, 68, 52, 66, 47, 56, 67, 52, 84, 56, 45, 65, 51, 59, 57, 73, 67, 68, 49, 86, 61, 73, 79, 52, 50, 63, 72, 71, 65, 72, 59, 73, 88, 58, 77, 47, 49, 47, 69, 68, 58, 79, 50, 68, 63, 58, 105, 60, 58, 95, 53, 92, 75, 72, 81, 63, 51, 68, 60, 44, 61, 66, 66, 53, 43, 93, 43, 68, 68, 61, 52, 61, 65, 77, 59, 69, 57, 65, 65, 61, 52, 84, 91, 65, 56, 55, 70, 69, 57, 50, 68, 76, 53, 44, 63, 61, 59, 100, 68, 63, 67, 66, 67, 59, 53, 57, 61, 55, 60, 47, 46, 57, 127, 72, 62, 61, 82, 80, 43, 82, 63, 52, 65, 82, 70, 69, 72, 67, 56, 70, 58, 69, 99, 54, 62, 67, 52, 53, 77, 56, 57, 56, 93, 66, 61, 50, 67, 57, 49, 64, 73, 72, 70, 71, 55, 62, 99, 66, 48, 61, 62, 60, 52, 67, 54, 61, 59, 69, 73, 60, 62, 65, 59, 72, 65, 54, 48, 77, 66, 69, 55, 70, 53, 50, 57, 64, 57, 67, 65, 64, 64, 75, 87, 73, 55, 67, 54, 69, 80, 64, 73, 62, 44, 69, 67, 76, 55, 53, 58, 57, 59, 89, 43, 103, 59, 57, 61, 57, 54, 55, 60, 56, 65, 52, 55, 93, 78, 58, 76, 71, 65, 54, 67, 60, 69, 61, 63, 76, 61, 60, 72, 81, 78, 91, 59, 53, 53, 51, 53, 76, 69, 52, 85, 62, 47, 60, 90, 66, 65, 60, 64, 77, 65, 58, 67, 56, 64, 60, 79, 63, 48, 80, 59, 64, 63, 65, 68, 52, 54, 50, 65, 75, 71, 45, 66, 58, 67, 78, 58, 76, 93, 53, 78, 68, 81, 64, 90, 74, 71, 61, 55, 65, 81, 64, 67, 55, 60, 89, 64, 70, 51, 67, 70, 75, 56, 78, 52, 44, 71, 58, 60, 64, 82, 58, 58, 67, 45, 84, 70, 83, 61, 74, 58, 69, 70, 67, 61, 80, 53, 57, 56, 60, 53, 87, 64, 85, 74, 63, 63, 63, 70, 54, 54, 88, 72, 75, 61, 68, 64, 67, 55, 44, 65, 59, 64, 85, 62, 72, 65, 73, 64, 59, 69, 68, 86, 75, 55, 76, 61, 73, 111, 61, 60, 87, 63, 43, 68, 68, 70, 52, 57, 56, 65, 82, 52, 67, 73, 65, 79, 102, 77, 71, 56, 50, 55, 60, 61, 59, 80, 64, 55, 63, 46, 54, 72, 98, 53, 62, 84, 66, 46, 65, 91, 58, 70, 67, 69, 65, 61, 59, 72, 85, 70, 66, 69, 67, 54, 66, 77, 58, 72, 43, 47, 79, 70, 66, 52, 59, 55, 56, 57, 72, 61, 63, 68, 62, 58, 63, 56, 62, 50, 62, 114, 61, 71, 65, 61, 66, 85, 62, 66, 54, 60, 82, 60, 54, 113, 67, 64, 65, 70, 53, 59, 59, 58, 68, 51, 108, 53, 84, 68, 67, 52, 100, 64, 63, 76, 123, 108, 56, 49, 81, 67, 64, 58, 51, 58, 64, 65, 49, 66, 78, 46, 53, 59, 65, 47, 66, 49, 30, 65, 61, 72, 48, 76, 70, 76, 56, 56, 61, 60, 75, 48, 63, 55, 57, 72, 57, 91, 65, 69, 84, 57, 60, 64, 55, 68, 89, 55, 40, 45, 80, 60, 72, 50, 67, 64, 65, 66, 74, 74, 47, 47, 79, 55, 86, 59, 68, 57, 96, 66, 61, 66, 80, 61, 63, 74, 66, 59, 72, 61, 79, 54, 54, 63, 73, 65, 55, 55, 89, 52, 71, 72, 53, 103, 67, 67, 62, 79, 70, 59, 64, 68, 58, 69, 62, 68, 69, 67, 53, 58, 61, 57, 62, 47, 72, 81, 56, 71, 99, 50, 109, 112, 53, 87, 64, 77, 74, 68, 62, 65, 62, 68, 52, 61, 56, 65, 77, 59, 53, 68, 66, 67, 61, 72, 63, 51, 62, 56, 72, 55, 68, 66, 70, 58, 59, 66, 66, 65, 78, 75, 48, 77, 47, 58, 71, 63, 55, 56, 74, 57, 68, 51, 74, 67, 63, 42, 69, 54, 74, 61, 49, 69, 52, 61, 70, 59, 73, 54, 91, 60, 65, 70, 76, 70, 80, 70, 78, 61, 63, 74, 54, 79, 65, 76, 91, 61, 82, 57, 101, 63, 65, 79, 80, 67, 60, 55, 72, 55, 63, 74, 55, 66, 58, 67, 71, 58, 63, 68, 73, 74, 67, 60, 65, 49, 81, 75, 71, 67, 67, 75, 75, 46, 72, 67, 73, 68, 70, 66, 73, 79, 62, 65, 74, 53, 70, 79, 72, 53, 53, 50, 73, 49, 86, 62, 66, 74, 67, 65, 51, 84, 48, 43, 62, 62, 75, 65, 59, 63, 76, 62, 61, 84, 65, 78, 74, 120, 56, 50, 94, 93, 72, 68, 61, 60, 68, 75, 47, 63, 100, 105, 63, 70, 33, 49, 61, 76, 56, 45, 69, 79, 60, 70, 69, 64, 64, 60, 60, 63, 52, 57, 63, 68, 51, 56, 57, 57, 74, 53, 65, 79, 40, 67, 55, 66, 77, 60, 52, 83, 70, 47, 67, 85, 54, 72, 58, 112, 67, 78, 62, 64, 81, 56, 85, 67, 56, 108, 80, 72, 64, 57, 72, 68, 91, 58, 67, 57, 71, 80, 51, 70, 64, 41, 92, 66, 55, 58, 80, 46, 63, 71, 52, 87, 61, 53, 59, 65, 51, 63, 57, 61, 47, 54, 56, 80, 53, 68, 58, 68, 94, 71, 50, 74, 58, 50, 64, 56, 76, 62, 72, 66, 50, 53, 70, 52, 75, 72, 67, 58, 53, 63, 59, 72, 64, 52, 71, 68, 92, 85, 70, 50, 59, 58, 49, 65, 41, 60, 56, 56, 54, 47, 54, 44, 55, 92, 66, 65, 91, 59, 58, 60, 52, 88, 57, 58, 79, 45, 90, 66, 51, 71, 71, 68, 65, 70, 58, 54, 74, 57, 60, 78, 120, 79, 59, 85, 62, 68, 74, 51, 70, 71, 79, 67, 74, 72, 59, 64, 68, 71, 76, 96, 56, 69, 70, 62, 65, 66, 91, 71, 60, 61, 63, 67, 63, 78, 53, 71, 68, 61, 106, 52, 108, 60, 79, 59, 58, 70, 49, 52, 62, 58, 64, 67, 72, 63, 65, 62, 84, 61, 50, 56, 57, 92, 77, 84, 73, 69, 62, 59, 79, 68, 47, 70, 35, 57, 67, 68, 82, 75, 72, 63, 63, 69, 62, 60, 94, 80, 57, 60, 58, 62, 71, 71, 57, 77, 55, 82, 57, 67, 67, 71, 66, 62, 67, 67, 74, 73, 60, 75, 71, 88, 64, 61, 56, 57, 51, 57, 66, 54, 69, 76, 56, 66, 56, 76, 84, 67, 69, 65, 54, 59, 68, 55, 75, 75, 67, 66, 60, 60, 71, 56, 71, 75, 49, 47, 97, 56, 48, 52, 54, 60, 91, 104, 62, 52, 83, 61, 90, 50, 54, 63, 69, 66, 57, 49, 72, 142, 46, 63, 58, 59, 68, 59, 58, 63, 76, 58, 62, 76, 67, 66, 58, 70, 60, 64, 67, 55, 72, 69, 75, 82, 58, 60, 115, 62, 57, 75, 57, 56, 75, 66, 81, 62, 66, 77, 52, 97, 55, 67, 66, 80, 59, 65, 102, 82, 58, 105, 61, 70, 71, 58, 107, 69, 66, 51, 78, 71, 55, 80, 75, 60, 66, 58, 78, 72, 63, 63, 70, 67, 68, 59, 73, 81, 65, 49, 97, 74, 48, 70, 65, 60, 69, 48, 45, 56, 54, 70, 77, 62, 60, 60, 80, 53, 65, 52, 69, 57, 93, 54, 57, 80, 70, 58, 59, 61, 58, 63, 63, 66, 77, 40, 54, 70, 49, 46, 57, 89, 66, 72, 56, 69, 53, 52, 58, 63, 63, 78, 71, 58, 66, 63, 58, 60, 75, 68, 57, 65, 74, 80, 80, 64, 55, 102, 68, 55, 91, 60, 71, 61, 66, 74, 64, 65, 68, 56, 60, 102, 70, 69, 61, 61, 54, 57, 65, 67, 59, 95, 58, 53, 87, 61, 74, 57, 79, 67, 42, 68, 58, 67, 38, 75, 71, 100, 66, 84, 73, 67, 84, 66, 75, 69, 73, 66, 68, 61, 57, 49, 49, 59, 73, 51, 93, 47, 59, 61, 74, 77, 87, 62, 81, 63, 58, 71, 81, 55, 50, 60, 57, 64, 106, 61, 69, 58, 47, 55, 65, 62, 69, 69, 78, 66, 65, 82, 43, 88, 51, 69, 67, 61, 62, 58, 59, 54, 96, 61, 67, 31, 55, 68, 70, 53, 66, 54, 77, 62, 65, 58, 70, 74, 53, 44, 67, 70, 75, 64, 56, 60, 74, 51, 64, 107, 63, 71, 99, 85, 62, 46, 61, 86, 65, 63, 56, 52, 63, 90, 68, 73, 61, 55, 80, 57, 67, 69, 86, 64, 67, 71, 63, 65, 77, 70, 43, 68, 56, 80, 63, 69, 65, 71, 62, 58, 89, 49, 66, 62, 73, 58, 63, 62, 88, 61, 85, 61, 53, 61, 71, 75, 113, 71, 68, 52, 65, 57, 83, 63, 52, 76, 72, 65, 59, 52, 65, 42, 60, 65, 53, 142, 70, 55, 55, 78, 65, 85, 57, 58, 64, 65, 53, 62, 51, 80, 95, 95, 76, 65, 59, 69, 59, 62, 54, 93, 124, 71, 69, 56, 68, 77, 52, 75, 124, 73, 95, 63, 79, 79, 67, 63, 56, 67, 79, 41, 52, 49, 52, 71, 60, 69, 49, 107, 59, 62, 58, 65, 56, 78, 50, 89, 87, 60, 53, 61, 47, 54, 49, 91, 67, 59, 54, 70, 77, 62, 87, 76, 67, 55, 68, 69, 78, 55, 50, 96, 104, 80, 66, 54, 60, 95, 56, 60, 57, 61, 57, 61, 66, 62, 88, 74, 77, 68, 82, 53, 64, 59, 81, 48, 84, 62, 60, 76, 54, 69, 50, 71, 66, 71, 55, 61, 69, 72, 62, 67, 65, 61, 60, 73, 53, 61, 62, 58, 53, 74, 59, 83, 80, 63, 55, 73, 64, 90, 66, 61, 76, 54, 60, 54, 51, 82, 76, 66, 77, 72, 79, 73, 112, 63, 89, 81, 75, 47, 61, 81, 58, 79, 56, 79, 61, 74, 92, 44, 58, 73, 59, 59, 58, 55, 53, 84, 67, 58, 59, 72, 46, 64, 64, 61, 84, 78, 57, 55, 97, 86, 70, 60, 69, 53, 61, 84, 76, 54, 54, 63, 78, 60, 51, 69, 80, 62, 54, 75, 48, 76, 70, 82, 78, 45, 52, 50, 63, 55, 61, 67, 70, 74, 70, 52, 73, 67, 55, 58, 71, 70, 56, 72, 60, 79, 62, 45, 77, 53, 77, 65, 72, 57, 75, 71, 63, 61, 77, 59, 56, 82, 64, 66, 52, 57, 62, 57, 56, 79, 53, 54, 77, 100, 59, 59, 55, 83, 83, 61, 83, 64, 60, 39, 60, 62, 58, 61, 51, 55, 65, 58, 69, 64, 66, 66, 70, 74, 51, 73, 79, 61, 64, 57, 85, 57, 52, 50, 67, 54, 83, 63, 80, 51, 49, 78, 104, 70, 60, 73, 75, 62, 53, 77, 71, 52, 60, 59, 65, 85, 65, 81, 61, 57, 57, 64, 72, 65, 51, 52, 51, 47, 58, 57, 78, 93, 51, 73, 75, 70, 58, 52, 48, 80, 61, 58, 63, 59, 67, 60, 76, 74, 60, 66, 52, 54, 74, 61, 62, 72, 84, 64, 73, 66, 64, 67, 53, 67, 73, 69, 69, 69, 78, 63, 64, 69, 59, 67, 65, 58, 65, 71, 76, 63, 60, 78, 54, 72, 78, 63, 70, 72, 75, 74, 60, 76, 58, 53, 72, 77, 65, 61, 92, 77, 53, 114, 74, 54, 80, 64, 61, 71, 70, 67, 56, 62, 59, 77, 60, 44, 52, 53, 54, 70, 67, 75, 57, 75, 62, 66, 66, 54, 79, 90, 66, 74, 60, 43, 58, 53, 71, 91, 60, 83, 68, 71, 56, 69, 60, 72, 63, 60, 49, 63, 65, 51, 60, 49, 60, 65, 104, 69, 65, 74, 79, 61, 83, 81, 62, 75, 70, 50, 77, 58, 51, 70, 63, 63, 76, 80, 63, 55, 48, 69, 91, 48, 43, 62, 60, 60, 87, 60, 74, 110, 77, 55, 49, 67, 56, 58, 57, 49, 67, 62, 69, 63, 77, 72, 61, 80, 79, 87, 58, 52, 59, 50, 70, 74, 57, 60, 71, 63, 60, 78, 55, 73, 70, 56, 58, 55, 85, 53, 65, 62, 59, 56, 63, 60, 68, 59, 61, 81, 67, 57, 54, 79, 89, 62, 61, 51, 64, 69, 74, 61, 71, 69, 51, 79, 53, 66, 75, 71, 81, 60, 50, 65, 86, 64, 50, 70, 79, 57, 63, 66, 95, 65, 60, 50, 79, 65, 64, 82, 58, 72, 58, 66, 69, 74, 82, 64, 74, 68, 76, 53, 71, 68, 75, 55, 66, 67, 55, 56, 59, 64, 71, 60, 65, 84, 73, 64, 82, 59, 54, 61, 60, 62, 56, 77, 54, 60, 58, 53, 46, 70, 92, 61, 65, 65, 54, 67, 70, 63, 74, 54, 58, 74, 60, 60, 67, 54, 65, 47, 48, 59, 82, 68, 56, 35, 61, 37, 71, 62, 63, 80, 59, 55, 84, 70, 76, 64, 89, 60, 79, 47, 75, 64, 69, 62, 55, 71, 51, 143, 66, 65, 61, 93, 90, 63, 91, 66, 55, 93, 64, 51, 62, 56, 58, 88, 64, 74, 51, 55, 49, 56, 67, 73, 77, 45, 66, 65, 65, 73, 75, 57, 69, 64, 64, 64, 75, 56, 41, 87, 67, 58, 66, 82, 77, 70, 90, 59, 55, 56, 74, 92, 47, 56, 79, 68, 47, 63, 75, 67, 59, 68, 75, 72, 58, 62, 72, 43, 56, 59, 76, 75, 73, 73, 75, 46, 80, 50, 77, 65, 51, 60, 54, 41, 71, 76, 75, 69, 53, 62, 60, 69, 76, 91, 61, 85, 79, 79, 51, 87, 84, 62, 72, 104, 71, 68, 77, 58, 58, 71, 59, 43, 76, 71, 49, 57, 65, 60, 51, 51, 68, 58, 62, 75, 64, 55, 83, 57, 61, 59, 57, 63, 55, 35, 44, 53, 69, 44, 72, 111, 69, 61, 45, 71, 76, 98, 75, 56, 55, 66, 67, 56, 48, 66, 57, 58, 60, 71, 67, 75, 59, 62, 82, 56, 61, 63, 58, 77, 69, 107, 75, 75, 74, 58, 71, 64, 83, 62, 72, 104, 75, 50, 58, 85, 50, 106, 106, 78, 69, 58, 76, 77, 69, 66, 72, 53, 76, 51, 60, 57, 55, 55, 74, 58, 99, 69, 100, 69, 87, 50, 103, 47, 73, 49, 78, 55, 80, 72, 100, 45, 50, 51, 113, 64, 62, 58, 58, 61, 71, 62, 88, 57, 83, 68, 64, 59, 72, 111, 61, 81, 109, 57, 45, 38, 61, 62, 84, 59, 53, 49, 64, 70, 39, 44, 67, 63, 58, 94, 81, 78, 59, 78, 58, 66, 55, 70, 99, 74, 56, 68, 73, 72, 73, 105, 53, 50, 79, 53, 63, 86, 61, 52, 65, 64, 67, 70, 82, 71, 65, 58, 67, 66, 59, 78, 80, 65, 78, 63, 76, 64, 50, 62, 63, 45, 57, 66, 79, 64, 62, 52, 76, 83, 56, 49, 63, 58, 55, 46, 63, 73, 67, 60, 59, 71, 77, 56, 56, 53, 89, 83, 113, 58, 58, 64, 64, 54, 78, 56, 61, 61, 68, 50, 35, 43, 65, 58, 52, 52, 49, 127, 73, 79, 49, 76, 65, 96, 44, 48, 59, 50, 74, 64, 47, 85, 55, 81, 53, 68, 58, 61, 60, 63, 64, 75, 119, 50, 70, 55, 78, 81, 85, 61, 96, 64, 102, 94, 54, 58, 71, 64, 72, 74, 54, 49, 63, 64, 85, 55, 58, 64, 66, 88, 56, 64, 61, 57, 55, 81, 66, 68, 84, 47, 70, 49, 81, 60, 52, 66, 50, 55, 51, 68, 50, 46, 106, 38, 65, 59, 76, 78, 60, 45, 39, 66, 86, 60, 58, 72, 63, 96, 82, 50, 81, 63, 85, 70, 59, 78, 78, 76, 49, 60, 83, 113, 60, 68, 85, 61, 99, 63, 42, 65, 61, 68, 63, 79, 77, 77, 72, 64, 70, 53, 57, 52, 61, 63, 127, 64, 60, 46, 58, 80, 67, 55, 61, 93, 53, 65, 56, 86, 58, 109, 71, 67, 77, 52, 57, 48, 60, 84, 47, 63, 59, 77, 58, 64, 123, 52, 98, 52, 115, 56, 64, 65, 70, 71, 41, 69, 93, 74, 72, 85, 75, 50, 68, 62, 53, 68, 80, 57, 57, 75, 44, 57, 65, 51, 67, 43, 56, 45, 60, 51, 73, 85, 48, 59, 88, 49, 79, 81, 78, 74, 63, 56, 57, 53, 65, 86, 84, 90, 46, 74, 77, 68, 57, 92, 61, 50, 64, 62, 65, 60, 48, 61, 64, 56, 47, 77, 40, 56, 65, 61, 59, 77, 55, 58, 75, 78, 47, 54, 49, 69, 75, 64, 61, 72, 90, 92, 76, 60, 48, 79, 63, 66, 54, 51, 72, 74, 69, 72, 73, 69, 88, 65, 81, 110, 79, 89, 81, 72, 83, 57, 93, 64, 55, 42, 55, 40, 61, 57, 71, 86, 52, 62, 58, 78, 71, 54, 54, 67, 72, 67, 75, 57, 79, 82, 87, 58, 56, 67, 66, 66, 76, 72, 69, 63, 38, 67, 60, 78, 47, 81, 48, 68, 59, 64, 70, 56, 70, 78, 55, 76, 80, 84, 75, 61, 57, 76, 63, 60, 60, 45, 54, 83, 71, 74, 89, 85, 65, 87, 88, 74, 81, 73, 56, 82, 63, 71, 69, 60, 62, 88, 44, 50, 77, 52, 76, 60, 36, 78, 66, 53, 87, 77, 69, 83, 69, 73, 52, 66, 58, 71, 82, 46, 69, 68, 67, 64, 73, 71, 89, 48, 52, 55, 74, 81, 59, 72, 49, 73, 51, 62, 41, 94, 62, 47, 61, 60, 69, 65, 70, 69, 56, 51, 52, 43, 73, 76, 60, 78, 55, 59, 56, 66, 71, 75, 65, 71, 53, 68, 68, 52, 68, 67, 42, 53, 47, 68, 65, 78, 44, 57, 56, 84, 72, 55, 57, 82, 70, 59, 49, 61, 48, 89, 70, 66, 62, 82, 46, 52, 71, 68, 61, 53, 57, 68, 66, 54, 45, 44, 58, 58, 67, 53, 65, 69, 77, 69, 63, 61, 44, 71, 88, 61, 70, 52, 63, 68, 62, 60, 91, 58, 68, 85, 63, 56, 35, 64, 68, 50, 63, 66, 57, 80, 75, 96, 75, 46, 66, 71, 76, 71, 70, 61, 73, 54, 64, 60, 88, 65, 62, 100, 67, 65, 83, 46, 61, 58, 73, 53, 72, 61, 85, 85, 62, 92, 71, 61, 70, 56, 61, 66, 62, 61, 73, 56, 69, 63, 61, 54, 78, 68, 62, 74, 56, 72, 53, 77, 95, 59, 72, 57, 59, 69, 81, 66, 82, 64, 49, 96, 50, 67, 60, 43, 65, 51, 67, 60, 69, 63, 46, 60, 91, 69, 73, 61, 84, 58, 87, 73, 47, 80, 82, 64, 38, 60, 55, 44, 60, 60, 44, 69, 105, 87, 55, 48, 60, 66, 62, 67, 65, 67, 68, 55, 55, 59, 60, 61, 80, 71, 72, 37, 86, 73, 57, 63, 64, 72, 47, 53, 42, 55, 52, 73, 67, 51, 51, 63, 72, 75, 59, 67, 55, 72, 59, 63, 50, 89, 51, 63, 72, 86, 64, 55, 65, 65, 77, 63, 61, 63, 45, 69, 96, 59, 62, 66, 62, 69, 75, 75, 50, 89, 79, 51, 86, 78, 67, 71, 65, 62, 60, 57, 56, 132, 59, 63, 70, 63, 101, 61, 93, 71, 58, 64, 69, 72, 71, 62, 65, 59, 61, 63, 65, 52, 54, 70, 62, 74, 57, 54, 73, 66, 67, 38, 71, 71, 52, 61, 43, 66, 70, 83, 57, 114, 62, 76, 58, 94, 56, 64, 60, 74, 59, 92, 88, 70, 104, 64, 91, 58, 64, 58, 69, 64, 70, 58, 112, 57, 73, 56, 48, 61, 50, 59, 83, 61, 74, 58, 56, 61, 84, 77, 63, 63, 61, 62, 70, 56, 53, 64, 61, 63, 59, 60, 57, 51, 72, 71, 78, 66, 72, 51, 71, 65, 61, 73, 73, 98, 65, 53, 69, 70, 45, 52, 63, 69, 76, 56, 56, 53, 55, 77, 59, 43, 68, 63, 72, 72, 80, 77, 55, 50, 58, 89, 57, 66, 46, 67, 57, 60, 61, 63, 65, 85, 63, 83, 63, 89, 62, 102, 77, 54, 64, 76, 61, 58, 89, 59, 46, 61, 61, 58, 56, 62, 70, 51, 68, 66, 68, 69, 74, 66, 67, 115, 56, 60, 60, 75, 63, 63, 67, 61, 79, 75, 56, 62, 77, 51, 57, 66, 89, 73, 67, 79, 70, 52, 69, 59, 68, 66, 66, 69, 63, 59, 69, 63, 62, 76, 59, 59, 65, 48, 65, 74, 76, 76, 45, 78, 81, 50, 71, 66, 48, 58, 48, 61, 63, 75, 66, 66, 49, 49, 56, 62, 98, 55, 79, 58, 68, 63, 50, 65, 65, 79, 62, 70, 68, 44, 71, 58, 52, 63, 70, 66, 48, 51, 61, 61, 58, 64, 76, 70, 82, 46, 67, 54, 65, 61, 72, 86, 51, 61, 79, 65, 81, 66, 64, 86, 59, 73, 69, 87, 56, 53, 65, 73, 54, 75, 71, 66, 78, 61, 53, 66, 65, 61, 61, 72, 93, 64, 82, 64, 68, 64, 61, 58, 51, 63, 64, 66, 71, 58, 70, 54, 83, 91, 66, 57, 40, 86, 60, 73, 53, 58, 64, 63, 56, 93, 69, 50, 79, 51, 72, 67, 122, 71, 59, 69, 66, 68, 58, 62, 70, 72, 57, 63, 56, 91, 63, 58, 68, 73, 58, 105, 85, 63, 64, 50, 71, 90, 60, 63, 55, 60, 69, 63, 55, 65, 63, 78, 72, 57, 68, 59, 66, 64, 68, 70, 132, 69, 70, 68, 56, 69, 60, 69, 83, 104, 108, 58, 68, 86, 63, 77, 60, 58, 69, 75, 65, 69, 72, 64, 55, 66, 58, 75, 74, 54, 58, 69, 50, 67, 52, 55, 66, 63, 73, 79, 56, 68, 61, 61, 60, 51, 61, 108, 78, 79, 54, 111, 61, 64, 56, 61, 90, 56, 70, 59, 69, 46, 97, 61, 77, 69, 66, 64, 58, 61, 49, 61, 54, 57, 81, 53, 70, 72, 62, 68, 59, 54, 84, 63, 100, 66, 54, 78, 75, 51, 80, 74, 61, 66, 65, 55, 82, 66, 61, 59, 62, 54, 50, 62, 58, 59, 71, 74, 79, 62, 51, 63, 61, 67, 65, 74, 61, 79, 52, 47, 65, 42, 61, 72, 59, 69, 66, 65, 74, 74, 54, 49, 120, 58, 83, 81, 83, 54, 55, 60, 63, 69, 78, 47, 72, 77, 61, 72, 61, 72, 72, 68, 54, 70, 64, 48, 58, 61, 60, 59, 69, 60, 68, 60, 46, 74, 62, 63, 73, 46, 89, 59, 57, 59, 46, 72, 74, 60, 70, 62, 84, 53, 70, 59, 73, 65, 65, 68, 63, 67, 59, 79, 71, 65, 81, 70, 69, 61, 55, 59, 60, 74, 63, 62, 59, 53, 62, 62, 78, 59, 80, 75, 54, 79, 54, 58, 70, 63, 66, 60, 59, 66, 58, 64, 82, 71, 64, 70, 69, 54, 68, 55, 50, 60, 62, 84, 61, 68, 77, 59, 70, 96, 67, 72, 67, 52, 50, 67, 56, 64, 69, 57, 73, 64, 69, 57, 81, 49, 75, 64, 65, 78, 71, 66, 55, 91, 60, 64, 73, 63, 69, 58, 77, 56, 42, 55, 48, 51, 81, 76, 88, 62, 67, 65, 82, 72, 57, 68, 53, 44, 74, 71, 77, 63, 71, 62, 61, 64, 60, 66, 52, 64, 43, 55, 79, 66, 62, 71, 61, 51, 48, 69, 109, 67, 59, 53, 59, 61, 63, 63, 54, 77, 64, 60, 74, 73, 67, 70, 70, 78, 77, 70, 62, 75, 61, 53, 65, 92, 66, 63, 64, 63, 72, 44, 74, 59, 54, 72, 70, 46, 70, 91, 79, 47, 63, 63, 60, 71, 60, 65, 49, 62, 62, 75, 100, 75, 74, 62, 71, 81, 83, 85, 75, 67, 67, 64, 70, 57, 55, 97, 74, 61, 79, 54, 60, 115, 88, 47, 59, 65, 63, 62, 62, 60, 70, 53, 49, 69, 66, 65, 49, 68, 58, 68, 71, 69, 59, 72, 62, 64, 76, 53, 93, 69, 74, 73, 53, 58, 95, 85, 65, 76, 60, 71, 56, 58, 69, 71, 74, 49, 62, 73, 46, 55, 64, 60, 60, 60, 83, 61, 78, 55, 69, 71, 69, 71, 67, 60, 62, 63, 58, 54, 65, 87, 65, 53, 81, 65, 67, 53, 49, 60, 57, 60, 61, 66, 63, 67, 74, 64, 93, 55, 46, 76, 50, 57, 59, 72, 83, 65, 62, 57, 73, 56, 85, 48, 63, 74, 78, 65, 55, 69, 62, 70, 61, 75, 59, 60, 78, 72, 90, 88, 71, 79, 70, 65, 59, 58, 59, 63, 63, 64, 83, 58, 56, 57, 89, 62, 57, 70, 64, 56, 63, 77, 51, 70, 78, 62, 59, 64, 80, 75, 66, 52, 54, 79, 59, 58, 63, 68, 81, 61, 55, 76, 50, 56, 51, 62, 41, 73, 61, 56, 71, 53, 80, 55, 83, 59, 60, 85, 52, 61, 62, 46, 67, 61, 72, 63, 65, 68, 63, 68, 57, 86, 66, 67, 54, 57, 52, 61, 60, 88, 61, 70, 56, 62, 60, 70, 66, 58, 54, 49, 64, 46, 54, 62, 61, 66, 69, 80, 72, 55, 50, 72, 66, 68, 39, 47, 61, 66, 65, 66, 58, 82, 45, 53, 71, 55, 59, 50, 65, 69, 90, 79, 66, 72, 65, 76, 54, 71, 61, 53, 80, 90, 63, 71, 86, 65, 82, 53, 76, 66, 75, 90, 64, 77, 76, 59, 58, 132, 53, 57, 59, 75, 52, 70, 89, 58, 58, 67, 65, 71, 64, 70, 91, 86, 66, 61, 72, 64, 61, 52, 58, 63, 63, 68, 88, 59, 70, 72, 54, 66, 70, 68, 66, 76, 66, 74, 107, 66, 60, 66, 55, 67, 73, 57, 93, 60, 62, 52, 55, 54, 47, 67, 94, 64, 61, 61, 67, 83, 44, 60, 42, 59, 60, 54, 90, 69, 63, 66, 60, 69, 78, 63, 63, 54, 77, 61, 99, 76, 75, 69, 68, 70, 63, 65, 64, 71, 67, 70, 62, 42, 56, 92, 80, 83, 42, 71, 76, 38, 71, 58, 59, 55, 61, 69, 63, 53, 53, 52, 70, 68, 99, 68, 55, 69, 46, 56, 68, 102, 74, 70, 59, 55, 47, 71, 83, 72, 60, 55, 80, 65, 72, 65, 87, 68, 55, 67, 71, 61, 58, 51, 76, 87, 72, 111, 83, 90, 52, 69, 68, 44, 53, 66, 62, 54, 67, 50, 54, 101, 69, 57, 54, 61, 56, 68, 66, 50, 71, 76, 59, 59, 65, 56, 55, 46, 56, 66, 63, 49, 54, 42, 58, 68, 66, 115, 98, 57, 66, 70, 68, 66, 63, 51, 72, 73, 52, 101, 63, 57, 62, 56, 67, 68, 97, 69, 112, 75, 62, 89, 82, 66, 52, 66, 42, 61, 95, 65, 101, 66, 59, 75, 106, 59, 71, 59, 54, 52, 75, 64, 66, 72, 49, 62, 66, 63, 61, 60, 39, 88, 71, 60, 64, 69, 66, 69, 69, 74, 37, 33, 65, 52, 76, 61, 62, 47, 61, 66, 91, 60, 58, 66, 53, 80, 67, 66, 89, 69, 47, 43, 54, 55, 69, 85, 58, 71, 54, 84, 52, 49, 65, 67, 87, 46, 47, 78, 88, 72, 59, 52, 55, 45, 67, 67, 69, 74, 57, 72, 73, 59, 58, 74, 63, 55, 45, 76, 61, 58, 44, 50, 68, 54, 52, 57, 93, 79, 60, 54, 66, 74, 78, 53, 65, 68, 72, 66, 70, 43, 84, 61, 97, 74, 78, 58, 60, 61, 72, 58, 30, 48, 73, 69, 41, 66, 72, 65, 50, 73, 60, 131, 58, 62, 69, 72, 62, 73, 89, 44, 55, 56, 69, 56, 64, 95, 68, 80, 69, 71, 73, 60, 55, 80, 59, 88, 97, 72, 48, 57, 56, 73, 115, 72, 99, 58, 117, 76, 87, 66, 76, 65, 62, 67, 50, 56, 54, 60, 72, 67, 61, 51, 53, 76, 67, 57, 64, 78, 50, 57, 54, 58, 73, 50, 76, 64, 84, 90, 59, 70, 46, 61, 52, 78, 75, 61, 82, 49, 54, 53, 68, 70, 36, 62, 68, 65, 83, 87, 65, 61, 81, 96, 51, 57, 71, 72, 74, 54, 83, 64, 85, 73, 46, 73, 66, 60, 84, 75, 98, 57, 86, 76, 59, 63, 68, 72, 74, 87, 63, 57, 55, 53, 92, 74, 57, 61, 83, 65, 93, 61, 73, 61, 68, 119, 82, 80, 72, 69, 72, 52, 47, 75, 62, 90, 67, 61, 101, 62, 60, 62, 56, 77, 74, 53, 69, 76, 43, 61, 90, 64, 68, 89, 115, 59, 61, 68, 70, 99, 89, 65, 78, 51, 113, 70, 49, 77, 52, 51, 74, 52, 66, 40, 45, 63, 62, 55, 45, 65, 112, 79, 85, 69, 60, 50, 59, 55, 83, 76, 75, 54, 91, 61, 60, 62, 67, 59, 72, 62, 86, 102, 70, 57, 50, 47, 64, 54, 61, 79, 65, 58, 59, 63, 60, 65, 64, 68, 69, 61, 69, 83, 56, 79, 58, 75, 76, 57, 57, 59, 73, 62, 76, 48, 59, 58, 62, 98, 68, 57, 64, 52, 61, 69, 67, 63, 70, 73, 51, 67, 75, 66, 61, 81, 57, 58, 61, 67, 65, 107, 48, 52, 60, 66, 57, 56, 100, 68, 48, 54, 80, 65, 69, 65, 66, 70, 52, 64, 48, 70, 71, 60, 69, 66, 67, 62, 67, 78, 63, 77, 77, 63, 100, 54, 61, 56, 77, 73, 57, 65, 55, 52, 93, 69, 70, 65, 60, 70, 75, 70, 53, 66, 67, 69, 68, 69, 64, 85, 62, 59, 77, 74, 46, 71, 63, 71, 69, 58, 64, 73, 55, 93, 60, 92, 53, 54, 45, 63, 73, 46, 49, 54, 66, 44, 71, 72, 68, 106, 37, 55, 65, 59, 93, 68, 48, 64, 118, 68, 65, 57, 67, 67, 77, 76, 69, 74, 70, 55, 45, 59, 57, 54, 82, 49, 73, 53, 60, 57, 58, 61, 50, 75, 66, 60, 60, 64, 62, 105, 66, 66, 60, 53, 60, 59, 62, 65, 57, 55, 63, 61, 53, 103, 65, 50, 54, 63, 50, 48, 72, 83, 68, 70, 70, 39, 61, 55, 42, 69, 66, 73, 54, 59, 45, 61, 53, 71, 44, 67, 68, 57, 47, 83, 74, 54, 53, 64, 53, 83, 58, 78, 55, 61, 59, 57, 60, 66, 65, 60, 63, 49, 68, 58, 74, 43, 62, 62, 56, 58, 68, 57, 42, 56, 69, 74, 43, 66, 53, 49, 64, 81, 61, 55, 59, 68, 90, 74, 58, 67, 66, 71, 55, 57, 60, 82, 68, 66, 69, 61, 69, 103, 39, 43, 60, 61, 72, 56, 60, 72, 55, 57, 58, 88, 49, 68, 52, 116, 76, 57, 77, 46, 62, 57, 77, 61, 78, 65, 65, 82, 58, 105, 66, 59, 66, 52, 82, 60, 67, 85, 76, 54, 88, 70, 46, 81, 62, 59, 57, 77, 49, 63, 72, 54, 91, 53, 67, 62, 68, 71, 62, 56, 56, 63, 54, 83, 61, 66, 58, 42, 68, 71, 58, 69, 51, 66, 62, 58, 103, 71, 78, 63, 65, 47, 61, 63, 72, 61, 84, 73, 75, 65, 65, 62, 65, 57, 54, 62, 72, 71, 67, 66, 46, 61, 87, 51, 63, 59, 47, 56, 72, 45, 72, 50, 58, 88, 81, 64, 70, 72, 58, 49, 68, 56, 85, 75, 59, 52, 61, 49, 56, 65, 84, 35, 61, 61, 41, 57, 74, 59, 54, 47, 73, 68, 67, 71, 61, 57, 52, 76, 67, 64, 94, 54, 73, 78, 45, 72, 57, 74, 59, 64, 78, 77, 89, 42, 59, 74, 71, 56, 73, 59, 84, 58, 76, 63, 68, 59, 63, 122, 65, 50, 62, 62, 47, 79, 55, 62, 66, 54, 61, 55, 74, 70, 55, 67, 50, 69, 60, 52, 50, 54, 87, 92, 88, 87, 83, 41, 63, 94, 57, 72, 51, 61, 80, 57, 55, 57, 88, 61, 71, 65, 55, 116, 72, 66, 67, 66, 63, 55, 65, 63, 58, 60, 51, 56, 63, 64, 85, 73, 56, 78, 80, 72, 71, 68, 74, 60, 62, 79, 79, 76, 62, 56, 71, 59, 75, 74, 61, 97, 65, 40, 52, 55, 94, 60, 67, 54, 68, 56, 92, 57, 70, 65, 50, 72, 90, 69, 59, 86, 85, 66, 75, 84, 80, 63, 60, 57, 63, 57, 67, 92, 65, 58, 62, 50, 55, 82, 49, 48, 68, 62, 47, 76, 53, 66, 53, 66, 59, 77, 68, 60, 69, 39, 83, 68, 81, 85, 61, 75, 65, 52, 56, 69, 50, 37, 84, 72, 81, 54, 66, 65, 69, 69, 52, 95, 56, 60, 68, 67, 39, 66, 70, 73, 61, 68, 65, 66, 80, 98, 63, 62, 55, 68, 106, 65, 44, 59, 63, 66, 73, 41, 82, 83, 59, 56, 51, 73, 70, 112, 41, 71, 72, 51, 55, 56, 54, 62, 53, 48, 58, 55, 74, 71, 66, 88, 78, 75, 90, 57, 104, 97, 79, 65, 85, 83, 60, 65, 81, 63, 56, 77, 90, 59, 45, 67, 71, 61, 62, 64, 82, 50, 86, 72, 70, 69, 48, 48, 71, 73, 91, 51, 60, 62, 61, 63, 59, 65, 86, 74, 53, 59, 72, 70, 67, 53, 93, 71, 90, 62, 57, 72, 46, 64, 75, 60, 100, 60, 68, 59, 54, 54, 58, 89, 81, 77, 79, 69, 71, 82, 84, 67, 57, 57, 55, 60, 79, 54, 62, 52, 57, 57, 63, 56, 68, 51, 68, 55, 57, 57, 68, 71, 73, 70, 56, 81, 51, 75, 63, 102, 51, 57, 49, 57, 60, 62, 68, 68, 78, 88, 65, 73, 85, 81, 71, 60, 71, 52, 55, 91, 67, 75, 41, 57, 59, 65, 63, 73, 73, 56, 72, 72, 61, 57, 58, 57, 61, 60, 80, 102, 67, 55, 60, 76, 69, 65, 54, 55, 87, 60, 98, 53, 67, 108, 59, 68, 58, 58, 59, 57, 62, 70, 61, 70, 103, 59, 58, 87, 57, 60, 78, 52, 71, 75, 92, 56, 58, 82, 49, 68, 61, 50, 69, 60, 63, 53, 63, 57, 53, 70, 73, 53, 68, 49, 75, 51, 44, 59, 69, 57, 55, 87, 92, 66, 58, 68, 82, 55, 88, 42, 66, 53, 59, 45, 58, 65, 59, 58, 53, 69, 70, 48, 73, 57, 65, 64, 61, 56, 80, 76, 58, 58, 63, 77, 73, 69, 78, 65, 83, 64, 79, 54, 53, 117, 81, 57, 93, 73, 79, 71, 76, 52, 72, 66, 64, 90, 63, 67, 81, 55, 63, 74, 57, 86, 73, 55, 97, 57, 61, 70, 77, 110, 52, 65, 71, 66, 107, 49, 75, 73, 74, 65, 64, 63, 55, 66, 58, 67, 69, 52, 83, 60, 54, 68, 53, 59, 121, 66, 80, 48, 68, 47, 56, 103, 52, 63, 66, 56, 75, 75, 65, 91, 64, 59, 63, 50, 75, 55, 89, 76, 58, 99, 74, 63, 59, 66, 53, 50, 43, 85, 64, 90, 48, 48, 66, 64, 53, 74, 67, 52, 83, 57, 80, 50, 50, 62, 49, 67, 66, 86, 80, 75, 58, 79, 48, 60, 73, 56, 81, 61, 67, 51, 48, 52, 73, 55, 96, 58, 68, 63, 69, 57, 67, 71, 50, 51, 67, 71, 66, 56, 71, 64, 61, 67, 86, 99, 98, 56, 68, 47, 48, 59, 67, 95, 48, 55, 51, 57, 80, 73, 75, 76, 67, 61, 59, 62, 73, 65, 96, 46, 77, 50, 60, 76, 62, 62, 76, 66, 71, 62, 51, 96, 73, 68, 66, 62, 87, 65, 61, 78, 53, 46, 83, 59, 62, 81, 61, 70, 70, 43, 84, 72, 78, 66, 56, 71, 68, 80, 68, 53, 73, 46, 63, 56, 66, 69, 78, 61, 67, 55, 64, 75, 61, 74, 58, 45, 71, 85, 59, 53, 62, 54, 65, 83, 63, 62, 93, 70, 63, 52, 65, 74, 66, 81, 58, 67, 54, 53, 86, 94, 91, 68, 65, 73, 58, 46, 67, 73, 64, 54, 61, 81, 59, 50, 50, 69, 77, 87, 40, 58, 69, 82, 89, 69, 58, 76, 73, 64, 60, 49, 75, 79, 59, 38, 72, 87, 69, 47, 77, 69, 112, 58, 61, 101, 45, 53, 78, 69, 55, 46, 63, 56, 55, 76, 80, 80, 66, 65, 87, 108, 75, 55, 62, 71, 71, 57, 59, 59, 59, 62, 42, 66, 62, 69, 67, 69, 59, 68, 63, 57, 58, 84, 52, 55, 57, 55, 81, 75, 64, 75, 57, 60, 77, 67, 59, 77, 51, 56, 48, 95, 54, 61, 45, 92, 73, 82, 82, 71, 48, 92, 73, 68, 76, 69, 78, 61, 70, 45, 63, 45, 73, 67, 64, 67, 78, 62, 55, 50, 54, 72, 46, 58, 67, 59, 55, 82, 58, 62, 64, 69, 56, 64, 81, 62, 62, 45, 52, 70, 69, 58, 69, 79, 41, 68, 50, 53, 86, 44, 125, 65, 46, 62, 53, 58, 82, 61, 66, 62, 73, 64, 75, 82, 56, 64, 66, 45, 68, 57, 74, 55, 53, 71, 67, 80, 50, 73, 56, 70, 60, 75, 42, 52, 45, 68, 61, 65, 64, 58, 99, 46, 65, 53, 67, 63, 68, 70, 66, 77, 47, 79, 65, 60, 81, 64, 51, 58, 41, 45, 44, 75, 67, 66, 73, 67, 70, 60, 60, 72, 55, 65, 66, 49, 39, 63, 67, 59, 63, 55, 70, 76, 99, 60, 46, 76, 79, 54, 59, 62, 72, 74, 94, 65, 94, 57, 58, 67, 66, 83, 75, 50, 56, 72, 65, 77, 58, 67, 59, 53, 41, 64, 72, 57, 64, 59, 62, 68, 69, 101, 65, 82, 77, 85, 61, 64, 52, 51, 57, 66, 59, 58, 64, 56, 60, 66, 60, 56, 49, 49, 69, 61, 69, 91, 73, 70, 65, 56, 60, 47, 62, 64, 86, 71, 56, 57, 70, 60, 79, 68, 74, 54, 52, 72, 61, 123, 64, 66, 53, 53, 84, 85, 68, 70, 59, 58, 83, 60, 80, 65, 82, 48, 57, 66, 54, 91, 66, 62, 67, 85, 81, 73, 74, 65, 69, 76, 57, 46, 53, 70, 64, 68, 61, 66, 82, 55, 52, 67, 58, 66, 56, 36, 51, 67, 59, 52, 81, 62, 62, 67, 68, 53, 61, 57, 59, 59, 46, 80, 60, 61, 79, 78, 71, 61, 75, 56, 71, 50, 55, 58, 57, 59, 36, 61, 75, 76, 100, 54, 74, 68, 85, 47, 69, 46, 60, 58, 81, 62, 75, 68, 42, 52, 74, 81, 58, 69, 93, 50, 74, 70, 71, 65, 68, 76, 65, 61, 90, 78, 82, 70, 55, 74, 65, 75, 45, 39, 66, 45, 49, 63, 55, 72, 63, 77, 68, 92, 52, 56, 86, 60, 81, 59, 62, 78, 67, 83, 50, 54, 52, 75, 64, 68, 69, 56, 68, 70, 67, 63, 72, 63, 79, 65, 78, 54, 71, 71, 60, 62, 43, 58, 67, 70, 64, 63, 53, 91, 70, 71, 75, 71, 93, 63, 64, 100, 57, 66, 45, 48, 65, 83, 60, 72, 60, 60, 51, 86, 55, 57, 75, 54, 49, 56, 60, 60, 76, 80, 81, 62, 79, 69, 72, 61, 88, 48, 70, 53, 48, 46, 68, 77, 98, 56, 76, 68, 79, 81, 59, 87, 86, 57, 70, 97, 52, 62, 74, 56, 60, 58, 84, 66, 66, 54, 68, 53, 68, 52, 69, 86, 63, 71, 66, 71, 58, 84, 85, 45, 68, 81, 64, 58, 73, 56, 79, 78, 109, 71, 77, 76, 47, 68, 84, 61, 79, 78, 81, 71, 72, 61, 71, 78, 92, 91, 74, 65, 46, 52, 68, 78, 72, 77, 61, 68, 75, 65, 70, 64, 65, 57, 61, 77, 97, 78, 67, 58, 50, 57, 76, 83, 88, 64, 59, 78, 53, 54, 63, 87, 71, 64, 41, 49, 65, 81, 63, 81, 67, 84, 74, 66, 72, 70, 62, 60, 61, 63, 63, 66, 67, 78, 68, 63, 56, 64, 62, 65, 65, 54, 86, 58, 45, 64, 77, 50, 56, 73, 58, 109, 49, 72, 55, 65, 68, 59, 73, 74, 71, 66, 73, 63, 76, 81, 49, 77, 55, 70, 56, 50, 53, 53, 64, 80, 119, 46, 80, 47, 50, 79, 101, 64, 49, 88, 132, 106, 51, 61, 98, 54, 67, 51, 61, 38, 65, 76, 60, 75, 64, 66, 68, 75, 80, 65, 58, 60, 78, 65, 56, 82, 69, 74, 54, 84, 72, 51, 56, 75, 68, 49, 61, 58, 60, 83, 87, 90, 60, 49, 60, 63, 65, 58, 57, 56, 83, 87, 66, 41, 59, 54, 64, 60, 52, 59, 60, 44, 73, 67, 44, 52, 70, 59, 66, 39, 73, 47, 81, 61, 64, 69, 53, 85, 79, 64, 60, 56, 77, 84, 74, 73, 79, 78, 57, 47, 59, 90, 85, 78, 62, 69, 48, 105, 53, 58, 66, 72, 70, 47, 57, 62, 57, 59, 64, 94, 94, 52, 42, 64, 60, 73, 68, 83, 64, 49, 77, 80, 104, 51, 98, 106, 47, 61, 63, 81, 63, 78, 84, 69, 79, 66, 51, 54, 59, 71, 63, 64, 69, 47, 65, 73, 75, 68, 58, 51, 70, 52, 81, 59, 77, 89, 76, 56, 54, 80, 60, 63, 80, 69, 78, 71, 71, 78, 87, 61, 65, 58, 50, 92, 58, 60, 63, 84, 52, 69, 73, 70, 64, 86, 66, 77, 67, 66, 63, 71, 84, 76, 84, 41, 45, 66, 75, 51, 56, 64, 54, 66, 45, 99, 66, 77, 78, 43, 80, 69, 54, 51, 83, 69, 56, 54, 66, 62, 56, 61, 72, 61, 67, 46, 79, 61, 65, 49, 82, 66, 59, 47, 82, 55, 82, 76, 62, 57, 106, 69, 48, 69, 55, 50, 55, 54, 63, 72, 60, 81, 56, 86, 53, 77, 67, 62, 68, 84, 77, 54, 55, 58, 58, 74, 77, 52, 72, 62, 92, 85, 49, 59, 65, 86, 62, 57, 63, 53, 72, 64, 67, 68, 56, 80, 52, 54, 62, 72, 43, 86, 85, 63, 75, 71, 63, 73, 52, 63, 72, 68, 65, 33, 87, 77, 81, 90, 52, 40, 47, 54, 52, 57, 58, 72, 66, 71, 78, 68, 50, 65, 68, 54, 84, 60, 65, 65, 65, 70, 81, 45, 94, 60, 61, 94, 76, 64, 68, 58, 83, 64, 63, 67, 70, 45, 72, 74, 57, 65, 59, 101, 54, 66, 69, 59, 74, 66, 90, 60, 61, 108, 85, 64, 53, 67, 49, 58, 64, 66, 61, 50, 78, 86, 86, 66, 51, 64, 75, 59, 67, 52, 72, 68, 72, 78, 52, 71, 47, 79, 59, 52, 49, 67, 69, 59, 61, 60, 64, 77, 61, 64, 65, 62, 79, 56, 53, 75, 74, 72, 60, 64, 107, 50, 46, 68, 47, 50, 71, 73, 53, 59, 59, 67, 53, 56, 66, 87, 63, 60, 84, 62, 51, 72, 71, 71, 63, 63, 80, 50, 61, 62, 78, 89, 64, 61, 79, 56, 78, 76, 64, 74, 60, 72, 69, 42, 61, 58, 59, 59, 105, 60, 74, 44, 72, 64, 78, 54, 52, 63, 71, 82, 57, 63, 78, 85, 133, 70, 72, 79, 61, 58, 99, 66, 56, 66, 52, 76, 90, 66, 40, 58, 50, 76, 74, 78, 87, 47, 61, 60, 69, 70, 64, 56, 56, 62, 76, 60, 57, 49, 79, 68, 62, 59, 67, 53, 88, 79, 60, 76, 59, 57, 49, 62, 58, 62, 66, 69, 60, 41, 59, 57, 40, 48, 53, 58, 93, 97, 63, 68, 63, 72, 61, 72, 82, 60, 73, 49, 86, 58, 86, 84, 55, 57, 64, 60, 54, 69, 54, 67, 73, 65, 64, 62, 69, 61, 59, 66, 58, 62, 63, 68, 92, 54, 72, 102, 66, 67, 58, 62, 73, 60, 65, 47, 44, 28, 73, 65, 64, 53, 47, 62, 61, 57, 67, 62, 49, 45, 71, 54, 71, 79, 52, 57, 52, 75, 94, 52, 73, 67, 58, 52, 91, 64, 77, 61, 58, 84, 68, 54, 70, 55, 65, 61, 68, 72, 88, 70, 56, 61, 91, 56, 76, 76, 73, 76, 61, 66, 55, 70, 62, 119, 49, 60, 53, 64, 107, 71, 83, 69, 51, 55, 73, 62, 76, 70, 71, 62, 59, 59, 85, 121, 55, 64, 68, 77, 68, 34, 66, 63, 62, 89, 60, 60, 57, 60, 48, 63, 84, 59, 74, 89, 62, 51, 57, 55, 60, 65, 50, 58, 71, 62, 59, 76, 66, 69, 101, 62, 43, 56, 58, 58, 64, 64, 104, 54, 54, 67, 82, 59, 48, 46, 42, 66, 51, 71, 69, 81, 68, 57, 61, 99, 56, 62, 75, 59, 72, 60, 55, 65, 61, 49, 89, 76, 97, 64, 68, 56, 81, 54, 72, 76, 48, 54, 51, 72, 65, 74, 83, 73, 60, 66, 52, 84, 75, 77, 77, 60, 70, 108, 65, 79, 64, 58, 54, 59, 55, 56, 57, 63, 56, 72, 73, 65, 54, 58, 51, 73, 63, 78, 86, 68, 72, 65, 57, 45, 59, 80, 63, 56, 74, 59, 53, 61, 92, 74, 68, 62, 69, 61, 55, 72, 62, 89, 62, 52, 89, 66, 58, 61, 57, 123, 46, 69, 59, 60, 61, 51, 75, 57, 74, 62, 70, 53, 69, 78, 47, 49, 72, 65, 51, 95, 49, 64, 58, 59, 67, 62, 98, 71, 53, 64, 56, 58, 76, 69, 65, 55, 53, 71, 71, 52, 91, 52, 50, 59, 95, 54, 50, 60, 76, 53, 54, 66, 75, 50, 55, 52, 45, 54, 66, 66, 102, 57, 89, 67, 67, 56, 56, 60, 63, 64, 86, 62, 75, 72, 70, 47, 81, 51, 60, 91, 66, 53, 66, 71, 83, 70, 78, 40, 114, 54, 52, 87, 62, 60, 44, 54, 61, 52, 56, 66, 81, 60, 64, 71, 54, 68, 68, 59, 58, 50, 70, 57, 68, 96, 58, 67, 92, 56, 55, 75, 62, 57, 78, 52, 83, 60, 102, 57, 71, 95, 71, 62, 67, 63, 50, 58, 76, 61, 66, 62, 74, 61, 65, 76, 70, 82, 72, 72, 51, 68, 76, 52, 62, 94, 54, 69, 72, 68, 109, 60, 78, 60, 67, 58, 64, 56, 53, 71, 89, 60, 62, 69, 59, 94, 65, 56, 52, 62, 60, 89, 66, 71, 61, 62, 67, 81, 97, 50, 56, 62, 65, 54, 61, 97, 60, 75, 51, 69, 64, 51, 67, 54, 68, 74, 113, 61, 62, 75, 63, 39, 37, 67, 67, 99, 127, 83, 58, 57, 124, 60, 64, 62, 48, 42, 69, 59, 73, 68, 67, 67, 52, 36, 76, 54, 66, 54, 62, 72, 60, 77, 59, 48, 61, 61, 67, 48, 68, 59, 51, 53, 42, 62, 67, 65, 67, 101, 62, 57, 47, 67, 89, 73, 82, 53, 115, 68, 57, 67, 50, 68, 64, 76, 70, 55, 62, 51, 144, 42, 63, 57, 54, 85, 53, 54, 55, 58, 61, 49, 66, 53, 73, 47, 86, 64, 49, 84, 96, 63, 89, 61, 46, 62, 50, 61, 74, 83, 84, 62, 57, 55, 78, 57, 63, 58, 48, 61, 65, 58, 90, 52, 51, 67, 54, 60, 47, 62, 45, 71, 57, 58, 62, 56, 57, 73, 73, 49, 135, 61, 66, 79, 70, 55, 52, 53, 80, 43, 95, 61, 98, 96, 61, 51, 65, 59, 70, 59, 50, 64, 53, 54, 53, 70, 68, 57, 62, 55, 63, 68, 48, 106, 55, 52, 52, 64, 51, 70, 38, 57, 52, 75, 62, 57, 88, 61, 74, 60, 56, 76, 50, 68, 63, 66, 54, 63, 61, 72, 50, 81, 66, 66, 70, 58, 75, 53, 110, 57, 54, 69, 72, 66, 72, 44, 66, 61, 60, 45, 61, 111, 59, 35, 87, 47, 66, 57, 90, 56, 64, 78, 57, 50, 57, 66, 59, 63, 53, 61, 46, 58, 59, 97, 57, 48, 58, 75, 79, 70, 58, 70, 104, 75, 77, 72, 68, 61, 61, 61, 72, 79, 60, 57, 63, 81, 51, 48, 62, 82, 83, 80, 55, 70, 66, 68, 75, 66, 83, 62, 57, 68, 85, 49, 83, 81, 67, 61, 70, 51, 67, 62, 75, 54, 58, 62, 72, 52, 55, 59, 70, 69, 71, 62, 71, 48, 50, 68, 55, 68, 68, 62, 55, 43, 59, 77, 64, 57, 53, 58, 106, 83, 58, 99, 47, 78, 88, 78, 56, 79, 58, 66, 78, 83, 63, 67, 68, 56, 65, 58, 66, 70, 76, 62, 58, 98, 60, 66, 65, 68, 78, 105, 63, 96, 82, 72, 83, 58, 62, 69, 82, 55, 63, 65, 57, 65, 50, 47, 52, 55, 63, 51, 121, 59, 58, 84, 76, 97, 79, 62, 62, 60, 78, 62, 56, 63, 57, 79, 71, 70, 47, 47, 56, 108, 78, 63, 61, 87, 50, 82, 58, 73, 80, 71, 90, 51, 66, 64, 54, 59, 61, 97, 70, 62, 58, 94, 47, 50, 44, 64, 76, 71, 82, 63, 62, 76, 58, 81, 64, 90, 58, 79, 51, 54, 50, 69, 56, 84, 49, 62, 54, 70, 66, 56, 50, 70, 74, 39, 71, 52, 58, 77, 64, 62, 68, 48, 70, 62, 64, 57, 71, 63, 57, 68, 58, 55, 57, 64, 61, 90, 49, 63, 63, 79, 63, 63, 88, 61, 98, 46, 45, 57, 72, 64, 48, 72, 74, 85, 49, 76, 62, 68, 108, 58, 67, 72, 67, 63, 60, 47, 49, 78, 66, 74, 58, 79, 71, 69, 68, 60, 68, 69, 51, 55, 70, 69, 53, 66, 57, 57, 79, 54, 70, 57, 40, 55, 63, 69, 81, 76, 73, 60, 70, 66, 55, 63, 56, 66, 69, 69, 67, 87, 62, 60, 49, 56, 86, 67, 84, 59, 54, 56, 61, 58, 65, 52, 55, 99, 62, 61, 63, 81, 74, 57, 78, 78, 46, 52, 44, 56, 55, 65, 72, 55, 68, 60, 60, 74, 76, 73, 53, 55, 64, 55, 56, 56, 64, 71, 60, 69, 53, 56, 66, 55, 77, 54, 79, 67, 62, 54, 58, 83, 59, 50, 62, 65, 65, 52, 63, 66, 70, 64, 50, 69, 68, 76, 65, 73, 70, 63, 69, 58, 91, 62, 71, 63, 80, 51, 60, 64, 90, 75, 56, 78, 87, 55, 54, 54, 73, 93, 55, 76, 71, 60, 62, 87, 82, 56, 47, 65, 60, 66, 62, 44, 58, 70, 58, 71, 62, 61, 60, 61, 92, 57, 66, 93, 79, 64, 60, 57, 60, 71, 47, 76, 72, 62, 64, 84, 118, 61, 56, 65, 63, 65, 59, 62, 50, 86, 58, 66, 71, 52, 66, 51, 56, 59, 55, 93, 63, 67, 54, 66, 65, 47, 58, 71, 65, 63, 62, 57, 45, 89, 71, 76, 74, 52, 76, 61, 73, 101, 63, 55, 53, 56, 65, 61, 72, 62, 89, 59, 48, 51, 79, 57, 54, 59, 63, 69, 67, 51, 51, 69, 75, 65, 59, 54, 73, 76, 53, 144, 92, 67, 74, 73, 56, 85, 60, 84, 100, 70, 63, 59, 51, 60, 66, 54, 55, 69, 67, 52, 86, 104, 69, 57, 72, 66, 57, 61, 84, 51, 58, 54, 74, 71, 59, 66, 75, 50, 65, 69, 92, 56, 55, 76, 63, 58, 68, 61, 67, 71, 65, 66, 62, 70, 66, 68, 68, 61, 69, 87, 53, 81, 83, 73, 65, 69, 50, 49, 42, 54, 61, 46, 43, 67, 71, 49, 56, 66, 59, 44, 88, 58, 72, 59, 68, 61, 96, 67, 58, 69, 56, 110, 86, 51, 79, 65, 66, 78, 48, 53, 63, 72, 65, 59, 66, 60, 71, 67, 70, 85, 49, 61, 68, 53, 66, 80, 60, 59, 13, 66, 48, 58, 89, 70, 67, 54, 42, 84, 68, 68, 71, 69, 81, 58, 94, 60, 46, 55, 48, 77, 42, 66, 64, 60, 82, 81, 70, 83, 60, 68, 62, 72, 65, 56, 71, 60, 69, 56, 70, 65, 82, 40, 64, 56, 39, 45, 75, 86, 78, 67, 93, 60, 70, 52, 76, 85, 48, 54, 89, 70, 62, 48, 43, 58, 102, 50, 69, 58, 56, 76, 61, 73, 67, 81, 60, 69, 66, 69, 74, 62, 53, 48, 76, 58, 58, 77, 68, 79, 80, 81, 74, 79, 109, 47, 68, 77, 74, 88, 64, 70, 62, 85, 72, 83, 85, 70, 75, 74, 66, 63, 66, 62, 65, 67, 68, 59, 67, 65, 65, 62, 67, 56, 66, 60, 59, 34, 96, 50, 64, 71, 58, 53, 67, 59, 67, 49, 58, 47, 59, 39, 64, 61, 72, 48, 77, 90, 68, 66, 67, 56, 77, 63, 66, 67, 73, 118, 66, 74, 68, 71, 59, 61, 106, 60, 71, 66, 69, 72, 67, 99, 64, 70, 80, 65, 50, 68, 72, 59, 82, 61, 62, 62, 71, 91, 73, 67, 81, 56, 70, 74, 88, 75, 59, 54, 64, 68, 63, 45, 62, 88, 66, 60, 71, 69, 58, 69, 47, 60, 45, 77, 69, 70, 63, 73, 70, 65, 71, 69, 71, 56, 51, 65, 58, 45, 51, 54, 72, 62, 75, 53, 70, 65, 58, 45, 64, 80, 50, 57, 68, 54, 75, 22, 63, 56, 65, 69, 60, 58, 70, 61, 67, 63, 77, 74, 60, 78, 54, 68, 49, 49, 62, 85, 53, 56, 68, 56, 61, 63, 78, 79, 67, 71, 95, 66, 54, 64, 82, 58, 69, 56, 53, 75, 62, 62, 67, 63, 47, 89, 89, 72, 58, 57, 68, 77, 111, 67, 105, 54, 54, 85, 53, 60, 59, 61, 48, 52, 51, 49, 64, 62, 56, 83, 50, 52, 68, 59, 110, 70, 90, 67, 62, 78, 67, 47, 57, 62, 89, 55, 76, 67, 54, 75, 52, 60, 70, 63, 69, 46, 81, 69, 38, 53, 87, 102, 48, 61, 76, 55, 65, 68, 63, 63, 63, 61, 81, 70, 72, 73, 59, 74, 57, 71, 63, 52, 86, 65, 58, 44, 59, 60, 61, 67, 54, 84, 66, 71, 51, 56, 70, 81, 58, 63, 48, 61, 59, 83, 76, 91, 60, 40, 85, 71, 58, 72, 67, 54, 78, 65, 54, 50, 82, 56, 61, 66, 49, 68, 48, 71, 88, 61, 68, 60, 65, 68, 55, 54, 60, 63, 76, 76, 54, 55, 46, 61, 61, 81, 61, 71, 75, 73, 58, 61, 61, 67, 68, 68, 58, 96, 61, 67, 78, 63, 71, 74, 60, 88, 65, 64, 57, 68, 61, 66, 64, 87, 55, 52, 64, 48, 81, 64, 83, 97, 66, 77, 65, 61, 92, 73, 44, 54, 82, 72, 52, 79, 63, 58, 69, 85, 65, 127, 72, 47, 58, 72, 95, 48, 86, 77, 62, 80, 87, 67, 72, 51, 64, 68, 70, 61, 66, 87, 77, 63, 65, 84, 65, 60, 65, 71, 63, 84, 64, 135, 60, 53, 78, 74, 91, 62, 62, 66, 65, 57, 80, 79, 85, 87, 75, 62, 50, 68, 54, 67, 42, 49, 50, 64, 64, 64, 61, 84, 58, 77, 43, 50, 76, 79, 49, 109, 76, 59, 60, 65, 43, 73, 65, 95, 49, 58, 56, 76, 61, 61, 83, 86, 56, 63, 75, 53, 69, 61, 56, 68, 73, 54, 63, 58, 59, 66, 63, 56, 77, 51, 81, 69, 60, 65, 75, 75, 57, 72, 39, 77, 71, 53, 119, 78, 71, 64, 61, 63, 105, 83, 68, 92, 60, 67, 60, 65, 66, 57, 50, 56, 56, 48, 56, 98, 48, 45, 57, 70, 81, 64, 57, 72, 64, 73, 63, 52, 56, 79, 88, 47, 63, 70, 61, 80, 64, 66, 63, 60, 70, 71, 61, 75, 75, 65, 86, 66, 43, 67, 62, 62, 62, 50, 95, 72, 73, 69, 59, 72, 77, 58, 68, 72, 62, 55, 70, 49, 55, 66, 76, 63, 50, 59, 62, 67, 78, 55, 60, 46, 59, 55, 66, 71, 81, 73, 77, 89, 54, 78, 74, 62, 61, 50, 52, 56, 57, 67, 78, 70, 66, 55, 62, 86, 70, 64, 95, 51, 71, 67, 81, 70, 76, 72, 101, 59, 59, 77, 72, 72, 79, 72, 64, 64, 80, 52, 66, 76, 66, 84, 50, 87, 65, 71, 94, 38, 70, 61, 64, 71, 63, 50, 77, 34, 68, 67, 53, 73, 49, 70, 67, 79, 56, 90, 60, 70, 70, 51, 57, 61, 70, 64, 60, 51, 107, 68, 64, 62, 65, 72, 68, 61, 54, 60, 70, 58, 77, 66, 85, 59, 70, 63, 61, 72, 63, 61, 59, 52, 64, 64, 67, 55, 55, 78, 61, 74, 72, 81, 71, 75, 91, 59, 93, 48, 53, 89, 58, 63, 64, 60, 57, 150, 62, 59, 67, 74, 96, 58, 98, 59, 70, 77, 61, 66, 55, 63, 58, 81, 60, 59, 52, 63, 74, 65, 56, 72, 50, 77, 50, 72, 54, 79, 68, 67, 53, 56, 57, 80, 73, 56, 51, 82, 69, 52, 50, 87, 53, 53, 68, 54, 56, 69, 93, 63, 51, 66, 74, 63, 53, 61, 80, 76, 66, 48, 55, 76, 61, 68, 69, 54, 53, 66, 84, 57, 59, 61, 86, 57, 68, 60, 63, 69, 73, 56, 74, 72, 69, 74, 68, 69, 80, 59, 79, 54, 62, 80, 55, 62, 66, 55, 50, 56, 101, 45, 60, 51, 56, 56, 74, 65, 63, 64, 57, 81, 72, 77, 81, 49, 57, 56, 56, 57, 56, 64, 68, 74, 94, 50, 50, 68, 72, 57, 66, 72, 68, 35, 103, 55, 38, 72, 66, 78, 68, 73, 80, 81, 65, 99, 68, 59, 70, 64, 62, 64, 54, 59, 70, 81, 55, 65, 45, 57, 75, 70, 55, 67, 67, 57, 59, 77, 74, 111, 53, 45, 52, 60, 58, 76, 109, 75, 56, 81, 59, 67, 77, 46, 75, 70, 79, 61, 73, 93, 82, 50, 65, 47, 65, 52, 75, 50, 62, 80, 63, 72, 81, 65, 70, 84, 48, 69, 79, 62, 74, 56, 87, 56, 88, 64, 81, 72, 55, 61, 58, 53, 107, 56, 47, 61, 67, 56, 57, 63, 60, 56, 68, 81, 62, 76, 64, 113, 64, 88, 65, 65, 131, 62, 54, 61, 71, 58, 51, 66, 51, 57, 70, 67, 78, 60, 45, 74, 69, 75, 63, 59, 63, 59, 55, 53, 52, 53, 100, 69, 87, 65, 61, 89, 65, 59, 103, 66, 57, 79, 96, 60, 66, 68, 80, 50, 91, 52, 33, 72, 56, 61, 65, 61, 71, 48, 72, 52, 46, 64, 66, 70, 75, 70, 58, 45, 57, 69, 54, 65, 66, 61, 64, 67, 68, 71, 78, 67, 74, 62, 54, 58, 62, 65, 73, 63, 69, 62, 40, 60, 114, 71, 57, 68, 75, 64, 65, 79, 60, 63, 66, 82, 53, 89, 53, 70, 53, 62, 72, 108, 61, 56, 60, 58, 71, 76, 73, 67, 69, 56, 85, 54, 56, 107, 56, 47, 71, 56, 66, 57, 50, 50, 75, 61, 116, 71, 52, 63, 53, 58, 82, 64, 58, 65, 118, 68, 56, 83, 70, 63, 64, 57, 70, 76, 77, 70, 71, 75, 68, 75, 57, 69, 63, 49, 59, 56, 57, 73, 50, 60, 55, 102, 68, 58, 56, 57, 57, 36, 71, 60, 60, 88, 68, 60, 56, 98, 66, 57, 58, 53, 64, 66, 50, 59, 89, 61, 58, 65, 77, 37, 73, 58, 68, 75, 47, 65, 111, 75, 76, 50, 53, 58, 79, 74, 71, 57, 107, 67, 73, 63, 77, 54, 74, 66, 57, 51, 61, 66, 67, 65, 92, 64, 88, 59, 53, 50, 55, 64, 70, 70, 61, 79, 69, 61, 63, 59, 57, 63, 46, 78, 63, 28, 57, 63, 58, 73, 54, 69, 59, 80, 86, 76, 79, 55, 60, 68, 113, 54, 89, 68, 75, 80, 44, 87, 58, 72, 61, 50, 84, 63, 43, 76, 85, 65, 72, 65, 49, 49, 60, 54, 60, 52, 54, 75, 56, 64, 55, 70, 65, 55, 76, 59, 54, 53, 72, 68, 63, 77, 60, 50, 84, 61, 57, 55, 59, 56, 74, 68, 69, 66, 78, 57, 63, 57, 69, 92, 56, 97, 57, 83, 73, 63, 48, 55, 55, 56, 55, 53, 79, 60, 44, 78, 82, 65, 66, 50, 74, 78, 90, 46, 47, 82, 48, 68, 59, 78, 65, 65, 66, 81, 54, 85, 64, 70, 63, 59, 74, 60, 53, 73, 64, 68, 87, 73, 67, 63, 58, 58, 60, 48, 54, 70, 79, 62, 59, 53, 53, 91, 62, 41, 52, 59, 68, 65, 56, 46, 63, 53, 62, 58, 81, 51, 71, 51, 61, 88, 88, 70, 48, 90, 57, 71, 75, 65, 66, 49, 59, 69, 49, 53, 59, 80, 48, 60, 65, 59, 88, 48, 59, 69, 60, 56, 55, 80, 59, 56, 67, 66, 55, 54, 58, 50, 63, 86, 71, 82, 59, 82, 60, 105, 63, 53, 49, 63, 65, 51, 61, 68, 64, 65, 95, 73, 75, 64, 56, 52, 72, 67, 76, 66, 73, 86, 52, 60, 69, 54, 66, 44, 61, 53, 65, 82, 47, 63, 75, 50, 65, 64, 97, 80, 65, 63, 67, 61, 83, 52, 68, 57, 92, 61, 52, 66, 56, 65, 75, 99, 50, 75, 75, 51, 102, 70, 68, 53, 66, 35, 51, 66, 64, 127, 83, 49, 66, 63, 69, 59, 54, 43, 59, 85, 61, 52, 76, 62, 75, 65, 48, 80, 73, 75, 69, 64, 47, 60, 52, 61, 75, 66, 60, 107, 64, 54, 73, 52, 61, 76, 61, 89, 71, 70, 43, 70, 72, 71, 67, 73, 69, 73, 53, 66, 89, 66, 63, 64, 68, 53, 64, 65, 88, 86, 61, 46, 72, 52, 78, 80, 66, 57, 51, 65, 62, 77, 84, 85, 63, 74, 75, 54, 59, 77, 53, 58, 51, 76, 81, 86, 71, 72, 59, 76, 57, 66, 69, 58, 50, 60, 81, 84, 67, 49, 67, 94, 61, 51, 49, 55, 66, 76, 71, 59, 75, 53, 78, 49, 64, 108, 81, 75, 80, 57, 43, 64, 78, 75, 53, 56, 90, 74, 64, 73, 87, 57, 62, 72, 65, 69, 86, 59, 90, 64, 54, 57, 70, 64, 85, 58, 48, 69, 60, 88, 60, 67, 77, 55, 69, 61, 64, 68, 67, 72, 57, 64, 75, 73, 59, 54, 76, 54, 52, 62, 82, 57, 49, 64, 67, 60, 61, 55, 54, 58, 54, 48, 58, 62, 67, 66, 55, 70, 70, 82, 52, 65, 77, 58, 64, 82, 61, 60, 80, 64, 70, 60, 74, 84, 65, 92, 80, 67, 55, 54, 70, 54, 54, 54, 70, 72, 71, 97, 87, 60, 48, 51, 80, 53, 69, 58, 58, 53, 67, 62, 46, 67, 66, 68, 66, 54, 69, 72, 57, 67, 58, 82, 87, 59, 61, 84, 67, 56, 49, 77, 72, 93, 84, 61, 86, 62, 65, 48, 80, 71, 54, 54, 60, 132, 59, 63, 66, 80, 114, 64, 86, 60, 67, 58, 82, 65, 59, 53, 62, 67, 67, 70, 64, 80, 51, 74, 77, 87, 86, 43, 83, 53, 57, 84, 69, 58, 76, 55, 53, 72, 65, 71, 42, 78, 55, 50, 65, 85, 52, 69, 85, 66, 51, 46, 73, 84, 70, 54, 68, 66, 68, 59, 69, 84, 83, 71, 47, 80, 52, 53, 76, 61, 63, 69, 39, 77, 38, 57, 63, 65, 73, 54, 53, 56, 71, 53, 60, 93, 64, 52, 66, 56, 76, 63, 58, 46, 88, 51, 82, 82, 52, 72, 40, 60, 91, 52, 57, 70, 70, 59, 61, 67, 58, 68, 65, 64, 94, 53, 77, 50, 73, 71, 50, 68, 76, 72, 74, 57, 69, 57, 86, 67, 73, 50, 74, 41, 79, 69, 77, 56, 45, 58, 61, 67, 58, 71, 62, 61, 83, 103, 66, 62, 56, 52, 64, 76, 87, 72, 60, 60, 52, 59, 57, 45, 94, 62, 58, 61, 60, 61, 62, 51, 97, 89, 80, 65, 62, 67, 72, 67, 82, 70, 55, 74, 57, 56, 73, 90, 76, 73, 73, 74, 61, 65, 74, 75, 77, 53, 69, 53, 65, 74, 33, 62, 59, 66, 71, 76, 61, 48, 87, 92, 76, 67, 54, 84, 89, 63, 82, 55, 67, 67, 74, 40, 66, 60, 124, 58, 70, 38, 63, 56, 65, 82, 34, 77, 90, 59, 69, 78, 55, 94, 57, 77, 70, 58, 105, 81, 52, 62, 76, 73, 56, 67, 60, 72, 50, 70, 62, 53, 61, 86, 55, 54, 75, 60, 61, 61, 69, 74, 50, 59, 84, 60, 89, 45, 59, 58, 87, 70, 89, 67, 66, 84, 71, 58, 69, 55, 52, 67, 85, 52, 58, 87, 64, 55, 95, 69, 35, 66, 82, 52, 53, 61, 56, 64, 65, 54, 49, 56, 61, 61, 77, 64, 55, 55, 61, 56, 61, 75, 38, 51, 56, 53, 61, 61, 61, 49, 56, 67, 62, 56, 65, 60, 83, 79, 64, 58, 64, 49, 59, 67, 57, 58, 60, 59, 70, 81, 56, 51, 71, 59, 51, 103, 78, 57, 49, 52, 74, 59, 44, 85, 70, 67, 64, 71, 56, 106, 74, 44, 64, 55, 52, 58, 43, 55, 77, 94, 89, 63, 67, 70, 53, 62, 104, 49, 83, 68, 55, 43, 71, 63, 53, 74, 46, 67, 48, 67, 57, 61, 71, 60, 59, 68, 61, 49, 59, 55, 70, 60, 57, 59, 53, 61, 49, 76, 71, 87, 65, 76, 63, 72, 57, 72, 71, 98, 73, 49, 65, 55, 65, 54, 61, 70, 74, 50, 61, 53, 69, 45, 86, 77, 82, 69, 84, 56, 71, 62, 62, 63, 101, 84, 59, 66, 78, 82, 63, 116, 58, 62, 92, 42, 89, 63, 76, 59, 63, 82, 59, 57, 68, 76, 92, 55, 80, 64, 77, 66, 74, 53, 51, 93, 74, 57, 78, 94, 71, 72, 67, 66, 71, 71, 68, 62, 56, 53, 47, 54, 56, 69, 67, 58, 52, 73, 85, 48, 64, 70, 68, 49, 103, 47, 71, 48, 92, 62, 69, 66, 83, 72, 55, 73, 99, 58, 66, 59, 51, 87, 37, 62, 53, 61, 65, 58, 72, 53, 73, 48, 71, 42, 60, 62, 76, 44, 56, 62, 46, 62, 92, 71, 65, 61, 63, 55, 69, 60, 55, 65, 50, 71, 51, 51, 57, 73, 80, 57, 78, 54, 50, 75, 56, 65, 71, 67, 60, 70, 86, 58, 73, 61, 51, 88, 60, 50, 57, 81, 55, 58, 65, 73, 54, 57, 68, 54, 56, 71, 60, 84, 73, 70, 80, 69, 84, 51, 55, 65, 71, 74, 54, 48, 70, 50, 59, 55, 84, 63, 86, 51, 63, 69, 60, 55, 54, 68, 56, 54, 61, 93, 52, 75, 47, 55, 66, 65, 70, 61, 69, 56, 71, 45, 79, 82, 53, 55, 73, 64, 61, 62, 68, 61, 53, 57, 97, 67, 63, 62, 97, 66, 73, 66, 78, 55, 61, 59, 64, 63, 70, 87, 67, 64, 81, 72, 80, 70, 42, 56, 56, 60, 72, 53, 74, 70, 56, 57, 65, 70, 72, 87, 65, 65, 46, 64, 61, 102, 103, 75, 83, 63, 56, 52, 50, 57, 71, 49, 73, 55, 59, 101, 59, 60, 62, 63, 56, 73, 62, 76, 53, 44, 70, 70, 78, 71, 54, 49, 61, 74, 89, 74, 89, 51, 49, 53, 49, 68, 58, 57, 64, 66, 75, 59, 48, 62, 77, 67, 75, 61, 50, 43, 62, 94, 113, 63, 52, 72, 83, 67, 70, 75, 86, 62, 55, 56, 83, 129, 99, 49, 49, 61, 65, 58, 57, 76, 71, 60, 50, 63, 70, 68, 67, 79, 65, 79, 52, 73, 62, 60, 46, 52, 51, 70, 77, 67, 67, 75, 53, 68, 69, 65, 54, 66, 63, 82, 58, 76, 70, 59, 49, 72, 61, 73, 49, 69, 80, 72, 89, 64, 65, 72, 68, 49, 62, 63, 71, 88, 51, 61, 70, 59, 70, 35, 65, 55, 60, 67, 87, 71, 95, 54, 68, 74, 87, 60, 79, 56, 88, 85, 61, 58, 77, 93, 47, 44, 50, 64, 75, 63, 63, 56, 53, 46, 67, 84, 70, 55, 55, 86, 46, 56, 83, 55, 60, 71, 57, 65, 81, 64, 67, 73, 63, 140, 50, 62, 55, 46, 81, 61, 62, 59, 73, 59, 79, 62, 72, 82, 97, 58, 77, 78, 64, 61, 89, 61, 55, 74, 68, 77, 74, 57, 61, 60, 72, 63, 64, 88, 75, 74, 72, 49, 57, 85, 55, 77, 46, 48, 69, 68, 96, 69, 56, 61, 71, 63, 56, 67, 86, 61, 72, 69, 67, 57, 60, 70, 57, 73, 70, 65, 70, 58, 61, 61, 59, 58, 41, 64, 65, 58, 67, 62, 32, 59, 65, 59, 51, 74, 74, 55, 75, 58, 68, 69, 94, 60, 77, 64, 72, 53, 56, 72, 58, 61, 87, 76, 66, 80, 55, 78, 65, 51, 66, 56, 53, 71, 47, 63, 80, 40, 66, 55, 59, 58, 80, 60, 60, 56, 48, 64, 48, 57, 56, 87, 71, 63, 51, 52, 71, 61, 82, 64, 112, 59, 64, 61, 74, 71, 59, 61, 88, 143, 71, 69, 58, 43, 110, 70, 106, 69, 48, 68, 77, 57, 62, 60, 64, 56, 81, 65, 65, 73, 49, 71, 64, 61, 73, 70, 62, 43, 71, 70, 84, 64, 52, 74, 48, 54, 57, 59, 67, 80, 60, 56, 55, 76, 60, 43, 66, 44, 64, 53, 64, 69, 63, 60, 69, 58, 54, 47, 60, 76, 50, 77, 50, 61, 55, 52, 73, 63, 66, 64, 61, 64, 68, 66, 73, 60, 70, 69, 49, 66, 61, 52, 65, 83, 72, 68, 51, 64, 74, 44, 107, 43, 62, 64, 59, 87, 78, 68, 68, 51, 94, 58, 57, 66, 76, 52, 59, 57, 51, 51, 64, 69, 96, 46, 74, 94, 85, 62, 78, 68, 68, 62, 49, 63, 63, 64, 76, 94, 65, 59, 44, 61, 80, 66, 63, 71, 56, 58, 61, 54, 71, 81, 62, 78, 52, 94, 73, 61, 40, 55, 72, 57, 75, 62, 74, 58, 69, 61, 78, 69, 96, 38, 71, 62, 66, 53, 54, 51, 60, 105, 53, 55, 69, 64, 58, 59, 103, 66, 66, 77, 69, 63, 75, 56, 79, 50, 59, 107, 64, 101, 103, 88, 66, 75, 64, 54, 75, 56, 58, 59, 82, 61, 49, 60, 52, 61, 49, 83, 82, 66, 50, 43, 77, 53, 61, 57, 70, 66, 66, 90, 69, 71, 116, 70, 68, 72, 64, 55, 51, 63, 54, 72, 74, 53, 46, 65, 59, 87, 62, 85, 67, 73, 134, 65, 84, 52, 64, 51, 85, 71, 53, 74, 72, 67, 67, 51, 68, 54, 52, 63, 61, 61, 77, 60, 58, 70, 52, 66, 90, 62, 93, 49, 57, 110, 63, 62, 93, 66, 70, 78, 77, 53, 58, 57, 65, 59, 88, 71, 66, 70, 41, 55, 81, 64, 55, 66, 62, 55, 67, 58, 66, 57, 65, 57, 54, 58, 49, 51, 76, 49, 70, 70, 73, 56, 76, 72, 60, 64, 61, 79, 57, 56, 65, 60, 82, 65, 61, 54, 57, 60, 94, 62, 53, 63, 70, 60, 77, 58, 46, 71, 60, 49, 57, 87, 65, 51, 66, 70, 63, 108, 56, 79, 70, 58, 74, 45, 56, 72, 102, 52, 66, 67, 80, 117, 67, 58, 72, 65, 71, 44, 78, 68, 66, 81, 121, 66, 40, 51, 61, 65, 51, 68, 67, 59, 89, 45, 61, 65, 57, 76, 65, 50, 60, 52, 58, 64, 79, 58, 55, 52, 72, 58, 75, 68, 49, 62, 60, 58, 58, 60, 57, 84, 62, 68, 69, 68, 52, 44, 70, 70, 75, 105, 71, 80, 52, 102, 69, 67, 69, 68, 95, 48, 63, 57, 59, 64, 62, 68, 61, 42, 51, 45, 64, 73, 58, 52, 129, 67, 52, 47, 72, 100, 62, 73, 75, 64, 99, 54, 75, 38, 95, 55, 80, 71, 57, 84, 60, 59, 90, 58, 76, 56, 96, 63, 63, 72, 55, 79, 67, 53, 68, 97, 66, 51, 60, 55, 53, 62, 69, 59, 52, 62, 67, 50, 66, 52, 53, 49, 55, 66, 107, 54, 59, 46, 67, 67, 108, 62, 62, 72, 89, 73, 49, 65, 90, 57, 58, 61, 66, 68, 68, 38, 69, 91, 47, 47, 64, 58, 60, 37, 66, 50, 61, 73, 58, 62, 71, 56, 58, 51, 65, 77, 77, 53, 58, 71, 50, 52, 62, 62, 71, 65, 58, 69, 56, 75, 50, 71, 78, 97, 96, 77, 78, 65, 52, 63, 47, 70, 63, 84, 56, 68, 72, 71, 70, 50, 43, 72, 65, 53, 39, 74, 80, 61, 63, 53, 57, 65, 67, 42, 60, 71, 54, 73, 68, 65, 73, 54, 82, 87, 72, 74, 71, 77, 71, 52, 56, 72, 64, 52, 58, 64, 63, 61, 56, 74, 61, 56, 73, 64, 52, 71, 64, 69, 54, 50, 55, 76, 59, 61, 61, 57, 68, 50, 64, 74, 70, 90, 59, 59, 92, 58, 65, 50, 55, 44, 48, 61, 76, 78, 64, 68, 77, 58, 58, 72, 58, 70, 76, 60, 63, 75, 48, 97, 78, 58, 63, 75, 72, 62, 53, 51, 63, 60, 66, 56, 54, 59, 74, 72, 64, 69, 58, 51, 60, 64, 47, 76, 57, 106, 78, 63, 51, 64, 49, 69, 68, 67, 81, 75, 77, 90, 53, 99, 63, 47, 58, 40, 56, 56, 60, 75, 54, 76, 69, 51, 61, 66, 60, 49, 63, 94, 74, 69, 92, 73, 60, 57, 73, 85, 55, 60, 63, 57, 64, 77, 51, 78, 75, 61, 66, 55, 52, 47, 55, 94, 74, 56, 69, 69, 85, 56, 71, 76, 80, 46, 62, 57, 62, 141, 110, 47, 59, 73, 46, 56, 58, 56, 57, 74, 61, 66, 62, 57, 64, 57, 62, 98, 62, 62, 58, 78, 60, 60, 60, 63, 59, 57, 82, 92, 56, 66, 63, 56, 64, 70, 65, 102, 61, 87, 73, 80, 53, 76, 58, 48, 57, 65, 80, 74, 92, 62, 66, 59, 78, 63, 58, 58, 59, 81, 76, 84, 63, 74, 69, 57, 62, 76, 46, 52, 67, 82, 89, 75, 70, 77, 72, 63, 53, 53, 89, 60, 41, 65, 80, 91, 84, 67, 61, 51, 49, 74, 70, 65, 62, 77, 94, 99, 59, 70, 61, 67, 49, 60, 76, 56, 54, 68, 54, 66, 62, 56, 57, 74, 64, 107, 74, 60, 58, 49, 81, 53, 54, 58, 79, 79, 72, 72, 73, 52, 75, 57, 66, 78, 66, 61, 70, 76, 89, 94, 74, 62, 67, 83, 55, 54, 78, 58, 52, 78, 75, 48, 78, 70, 90, 61, 51, 61, 64, 71, 70, 67, 74, 61, 69, 53, 58, 59, 98, 55, 88, 60, 46, 57, 64, 55, 68, 68, 63, 65, 53, 58, 72, 49, 59, 62, 57, 36, 64, 57, 58, 55, 54, 57, 44, 60, 54, 75, 56, 70, 58, 61, 54, 60, 56, 72, 107, 51, 75, 60, 55, 79, 53, 63, 61, 72, 67, 76, 65, 56, 48, 51, 67, 70, 58, 64, 62, 89, 69, 57, 79, 58, 56, 58, 63, 61, 77, 45, 65, 65, 57, 49, 59, 54, 61, 79, 68, 60, 79, 62, 79, 63, 77, 62, 68, 68, 40, 67, 74, 63, 54, 51, 56, 114, 62, 52, 78, 60, 77, 60, 72, 68, 58, 56, 75, 67, 79, 60, 49, 70, 57, 54, 53, 64, 52, 57, 63, 87, 71, 65, 67, 60, 55, 67, 88, 68, 65, 54, 58, 90, 88, 42, 64, 50, 65, 75, 63, 120, 73, 62, 59, 68, 69, 106, 110, 64, 62, 69, 57, 62, 63, 63, 105, 95, 73, 69, 102, 64, 45, 66, 59, 71, 59, 64, 77, 68, 52, 54, 94, 69, 82, 67, 74, 86, 68, 61, 59, 50, 65, 63, 81, 52, 78, 52, 51, 49, 71, 69, 59, 74, 71, 91, 75, 66, 59, 58, 56, 76, 64, 67, 91, 64, 54, 59, 70, 76, 68, 62, 64, 54, 65, 59, 57, 50, 67, 54, 54, 68, 61, 59, 55, 55, 47, 77, 56, 67, 81, 52, 69, 47, 64, 71, 61, 79, 83, 73, 91, 57, 53, 57, 70, 56, 52, 63, 45, 62, 65, 58, 68, 63, 47, 59, 60, 82, 58, 61, 57, 70, 70, 49, 64, 55, 79, 110, 50, 81, 68, 72, 68, 64, 50, 92, 69, 89, 58, 51, 57, 76, 54, 72, 83, 74, 55, 101, 74, 47, 53, 62, 63, 51, 77, 67, 53, 60, 60, 67, 51, 63, 66, 76, 79, 51, 71, 81, 91, 86, 58, 53, 74, 59, 67, 67, 55, 55, 75, 89, 89, 69, 47, 61, 72, 47, 52, 58, 74, 56, 69, 60, 66, 63, 67, 60, 55, 87, 53, 58, 50, 43, 68, 59, 51, 55, 74, 75, 51, 58, 61, 58, 61, 80, 93, 65, 69, 46, 70, 71, 65, 73, 71, 61, 70, 62, 49, 84, 86, 67, 57, 62, 74, 60, 88, 55, 49, 68, 68, 42, 61, 55, 61, 55, 61, 68, 53, 70, 51, 62, 63, 55, 70, 62, 65, 54, 49, 53, 68, 64, 84, 59, 68, 75, 62, 73, 51, 80, 67, 63, 61, 75, 63, 42, 64, 74, 59, 66, 57, 70, 94, 71, 79, 67, 65, 73, 55, 55, 104, 61, 71, 71, 58, 74, 71, 64, 74, 57, 64, 60, 78, 53, 67, 65, 73, 60, 57, 103, 62, 73, 62, 66, 98, 77, 57, 84, 58, 64, 89, 47, 69, 106, 72, 58, 59, 58, 46, 82, 61, 59, 54, 71, 121, 66, 67, 69, 71, 66, 117, 77, 105, 68, 83, 65, 73, 92, 64, 71, 73, 44, 48, 90, 65, 92, 68, 76, 66, 74, 58, 54, 54, 59, 66, 69, 67, 63, 64, 60, 59, 70, 86, 69, 60, 56, 76, 60, 50, 58, 57, 80, 57, 65, 76, 61, 70, 62, 63, 50, 63, 73, 80, 81, 98, 67, 64, 55, 77, 65, 54, 55, 70, 61, 62, 53, 53, 66, 63, 72, 74, 63, 90, 133, 45, 66, 89, 67, 72, 66, 56, 52, 68, 74, 67, 55, 58, 55, 69, 34, 51, 61, 58, 70, 64, 66, 53, 58, 70, 58, 61, 79, 79, 99, 60, 82, 67, 60, 60, 78, 75, 71, 66, 53, 59, 59, 59, 55, 62, 86, 69, 56, 51, 48, 64, 61, 123, 69, 75, 51, 71, 56, 58, 58, 57, 62, 60, 64, 66, 60, 69, 59, 72, 69, 63, 65, 51, 42, 79, 62, 65, 76, 60, 75, 59, 49, 64, 48, 69, 75, 76, 56, 59, 49, 57, 73, 65, 59, 54, 56, 66, 56, 65, 60, 53, 96, 60, 55, 86, 65, 105, 56, 62, 69, 67, 52, 61, 84, 69, 64, 72, 65, 69, 51, 63, 62, 77, 55, 65, 47, 69, 48, 82, 71, 65, 64, 71, 67, 72, 69, 51, 77, 57, 41, 59, 72, 83, 53, 80, 62, 69, 83, 86, 77, 64, 69, 84, 66, 59, 60, 50, 82, 99, 53, 54, 71, 60, 60, 58, 62, 74, 62, 67, 49, 54, 79, 74, 72, 56, 48, 55, 70, 71, 62, 71, 79, 54, 56, 60, 79, 47, 53, 51, 55, 63, 88, 52, 63, 68, 78, 60, 61, 97, 72, 70, 80, 80, 59, 72, 59, 59, 58, 64, 34, 69, 51, 63, 60, 44, 60, 66, 53, 65, 64, 78, 62, 36, 67, 68, 59, 60, 56, 48, 72, 68, 86, 117, 72, 63, 68, 105, 66, 78, 61, 66, 74, 56, 75, 58, 64, 65, 68, 48, 75, 70, 68, 54, 70, 68, 46, 76, 93, 48, 69, 50, 64, 77, 92, 69, 64, 59, 72, 66, 55, 89, 74, 65, 49, 66, 65, 57, 61, 69, 78, 65, 55, 67, 84, 107, 62, 89, 66, 73, 80, 71, 62, 83, 56, 61, 55, 61, 44, 67, 49, 106, 50, 59, 67, 52, 141, 71, 54, 63, 67, 62, 66, 89, 68, 70, 60, 53, 85, 68, 70, 66, 76, 70, 55, 53, 53, 61, 57, 48, 51, 58, 55, 120, 58, 75, 55, 55, 69, 43, 59, 60, 57, 51, 80, 54, 71, 61, 67, 54, 57, 72, 54, 49, 59, 59, 70, 95, 51, 96, 59, 79, 65, 54, 62, 53, 54, 61, 52, 52, 56, 80, 64, 73, 72, 84, 59, 75, 66, 68, 59, 64, 65, 69, 54, 70, 61, 44, 73, 65, 52, 67, 57, 67, 52, 53, 47, 77, 71, 59, 64, 56, 56, 79, 60, 71, 58, 58, 60, 69, 61, 73, 73, 71, 66, 59, 63, 78, 57, 84, 69, 63, 81, 61, 72, 60, 63, 70, 60, 93, 76, 81, 66, 84, 74, 58, 47, 61, 65, 60, 60, 58, 55, 108, 68, 70, 76, 72, 68, 67, 74, 68, 80, 50, 68, 62, 113, 67, 65, 51, 67, 65, 65, 62, 54, 68, 64, 73, 63, 72, 53, 69, 67, 61, 82, 90, 53, 110, 87, 66, 88, 71, 59, 65, 71, 81, 51, 89, 67, 58, 79, 75, 66, 52, 96, 61, 71, 67, 63, 58, 62, 60, 57, 77, 66, 57, 46, 35, 76, 96, 65, 77, 52, 76, 98, 53, 68, 59, 56, 56, 70, 62, 52, 76, 52, 54, 98, 82, 56, 53, 54, 57, 61, 49, 54, 80, 57, 68, 65, 48, 59, 70, 74, 72, 57, 57, 71, 51, 77, 45, 50, 51, 61, 49, 76, 97, 71, 66, 59, 114, 58, 64, 55, 69, 82, 66, 59, 55, 73, 75, 128, 59, 72, 51, 84, 77, 64, 76, 70, 59, 62, 73, 65, 56, 56, 65, 60, 54, 51, 56, 89, 61, 79, 71, 72, 104, 65, 79, 50, 59, 50, 61, 61, 62, 57, 68, 47, 58, 74, 104, 71, 71, 66, 64, 97, 76, 69, 77, 57, 46, 103, 94, 83, 82, 55, 104, 49, 63, 56, 69, 52, 68, 44, 65, 56, 76, 76, 77, 75, 51, 74, 68, 67, 67, 70, 55, 80, 72, 77, 47, 53, 55, 66, 73, 82, 80, 74, 49, 59, 62, 61, 98, 57, 70, 65, 58, 47, 69, 75, 53, 75, 72, 70, 52, 65, 87, 62, 85, 70, 63, 61, 65, 69, 80, 67, 64, 43, 73, 111, 59, 57, 54, 41, 62, 67, 88, 60, 56, 69, 67, 72, 51, 60, 66, 74, 85, 84, 97, 59, 60, 88, 77, 56, 67, 70, 64, 90, 72, 50, 87, 65, 47, 50, 83, 57, 64, 71, 96, 65, 48, 52, 72, 82, 65, 59, 56, 57, 63, 61, 45, 59, 49, 64, 64, 78, 101, 70, 60, 55, 56, 89, 51, 64, 64, 73, 50, 81, 70, 57, 55, 74, 67, 62, 87, 48, 69, 56, 53, 89, 59, 57, 58, 61, 67, 57, 48, 73, 51, 58, 83, 66, 70, 51, 48, 55, 74, 68, 77, 48, 104, 63, 69, 54, 79, 57, 79, 64, 50, 69, 69, 54, 61, 62, 79, 59, 75, 57, 56, 99, 61, 93, 62, 60, 41, 93, 65, 61, 79, 62, 51, 93, 75, 66, 55, 120, 85, 67, 76, 60, 61, 68, 51, 62, 77, 78, 88, 70, 70, 55, 99, 85, 61, 64, 68, 93, 105, 57, 113, 84, 59, 69, 62, 97, 64, 66, 50, 53, 105, 64, 65, 66, 59, 54, 73, 47, 55, 90, 59, 64, 70, 48, 52, 44, 75, 53, 57, 48, 61, 57, 51, 66, 47, 62, 50, 60, 56, 81, 48, 47, 74, 48, 70, 66, 55, 61, 90, 47, 75, 58, 64, 45, 75, 61, 84, 62, 60, 55, 72, 60, 68, 68, 63, 60, 45, 89, 81, 84, 53, 89, 71, 57, 62, 59, 52, 68, 58, 64, 83, 97, 59, 63, 58, 58, 71, 55, 37, 64, 58, 46, 60, 69, 48, 62, 38, 92, 69, 74, 93, 79, 61, 52, 101, 62, 65, 60, 80, 74, 68, 66, 69, 55, 69, 53, 65, 61, 53, 65, 45, 47, 64, 41, 56, 62, 50, 65, 55, 52, 63, 72, 57, 68, 61, 54, 52, 57, 48, 80, 56, 119, 54, 41, 65, 79, 50, 96, 51, 86, 94, 61, 67, 61, 66, 64, 62, 58, 59, 52, 99, 81, 77, 71, 70, 43, 70, 57, 54, 61, 76, 59, 62, 54, 101, 80, 48, 107, 68, 66, 80, 62, 38, 64, 53, 51, 77, 64, 57, 75, 69, 65, 54, 58, 61, 51, 59, 68, 65, 53, 115, 64, 47, 44, 57, 68, 59, 61, 64, 60, 73, 64, 59, 58, 78, 48, 65, 56, 89, 68, 82, 47, 62, 70, 81, 60, 62, 60, 60, 54, 119, 81, 99, 83, 68, 65, 64, 73, 65, 86, 99, 48, 55, 113, 58, 43, 69, 62, 67, 54, 45, 64, 49, 75, 49, 41, 49, 63, 63, 74, 64, 64, 49, 83, 68, 98, 76, 65, 61, 65, 55, 56, 105, 51, 54, 54, 83, 83, 62, 86, 58, 49, 53, 75, 76, 66, 65, 67, 54, 67, 63, 46, 60, 58, 54, 58, 48, 66, 52, 113, 63, 54, 57, 61, 52, 72, 49, 61, 62, 86, 62, 68, 77, 84, 96, 50, 53, 92, 60, 67, 64, 55, 65, 62, 58, 52, 71, 57, 77, 65, 71, 60, 67, 74, 67, 74, 90, 61, 69, 62, 91, 73, 68, 71, 58, 60, 57, 61, 45, 55, 74, 58, 42, 52, 75, 81, 67, 73, 71, 57, 59, 63, 70, 76, 60, 79, 77, 81, 49, 53, 71, 63, 85, 53, 64, 64, 55, 55, 71, 66, 59, 51, 47, 87, 64, 63, 58, 69, 57, 52, 88, 69, 72, 67, 49, 56, 59, 73, 53, 70, 96, 78, 57, 60, 64, 74, 50, 71, 60, 80, 93, 54, 60, 80, 76, 77, 67, 41, 97, 44, 58, 53, 74, 103, 45, 49, 52, 43, 56, 56, 81, 58, 77, 58, 68, 59, 60, 58, 57, 61, 63, 56, 70, 67, 62, 86, 67, 74, 72, 55, 80, 81, 75, 80, 90, 83, 61, 82, 69, 65, 66, 66, 97, 68, 58, 48, 55, 81, 54, 89, 68, 64, 73, 92, 96, 63, 63, 59, 44, 68, 65, 87, 79, 93, 118, 73, 56, 55, 68, 54, 52, 39, 67, 58, 98, 48, 58, 69, 55, 59, 66, 64, 52, 85, 62, 74, 86, 74, 57, 69, 79, 46, 73, 82, 66, 58, 95, 65, 70, 65, 60, 68, 47, 100, 54, 53, 55, 66, 69, 44, 51, 43, 59, 85, 52, 54, 46, 39, 91, 56, 64, 56, 68, 77, 87, 78, 68, 88, 59, 55, 50, 54, 56, 65, 73, 76, 66, 51, 72, 64, 74, 57, 48, 79, 54, 59, 82, 51, 72, 61, 75, 54, 79, 79, 59, 71, 81, 53, 53, 48, 68, 70, 95, 47, 50, 55, 48, 63, 91, 84, 53, 75, 63, 67, 66, 56, 59, 69, 63, 62, 61, 79, 81, 68, 114, 88, 61, 77, 57, 57, 56, 54, 70, 53, 91, 58, 45, 85, 61, 56, 91, 57, 104, 49, 55, 59, 53, 73, 61, 76, 78, 89, 71, 88, 57, 90, 44, 57, 66, 57, 62, 48, 58, 75, 58, 58, 59, 64, 64, 64, 55, 58, 91, 68, 63, 69, 56, 61, 52, 71, 109, 61, 65, 59, 59, 49, 67, 40, 52, 42, 72, 75, 71, 66, 58, 44, 76, 60, 104, 58, 63, 62, 56, 78, 86, 67, 91, 61, 52, 67, 85, 57, 88, 61, 46, 54, 70, 59, 53, 71, 91, 67, 57, 74, 53, 54, 83, 74, 43, 74, 76, 64, 76, 53, 64, 52, 49, 70, 68, 58, 66, 75, 67, 57, 71, 90, 61, 59, 64, 59, 66, 73, 55, 66, 51, 68, 78, 58, 62, 66, 67, 56, 52, 47, 54, 73, 98, 129, 56, 71, 81, 72, 83, 80, 76, 46, 67, 52, 91, 56, 69, 71, 55, 62, 56, 59, 94, 75, 66, 57, 57, 56, 57, 90, 45, 58, 57, 99, 67, 67, 77, 49, 64, 70, 70, 70, 67, 58, 55, 54, 63, 98, 56, 61, 84, 55, 57, 60, 68, 56, 59, 66, 81, 55, 70, 54, 61, 76, 57, 54, 53, 56, 52, 60, 57, 53, 56, 58, 52, 48, 67, 67, 67, 63, 62, 74, 68, 60, 93, 62, 77, 60, 94, 70, 42, 64, 60, 59, 56, 65, 69, 58, 64, 54, 65, 62, 64, 65, 93, 43, 55, 73, 52, 60, 65, 69, 64, 61, 74, 58, 68, 63, 69, 58, 47, 75, 111, 74, 74, 44, 74, 78, 65, 53, 61, 70, 61, 97, 53, 57, 44, 67, 67, 61, 53, 61, 72, 77, 67, 74, 56, 65, 58, 88, 60, 100, 76, 68, 63, 54, 102, 61, 59, 81, 70, 63, 68, 88, 82, 60, 50, 54, 74, 56, 89, 75, 52, 89, 76, 63, 58, 65, 75, 65, 38, 90, 74, 43, 66, 72, 58, 83, 64, 64, 51, 61, 65, 77, 70, 84, 76, 61, 68, 58, 62, 67, 44, 62, 63, 55, 45, 74, 61, 53, 99, 61, 76, 55, 63, 67, 56, 47, 89, 65, 76, 64, 81, 52, 71, 62, 58, 67, 68, 74, 74, 59, 67, 59, 62, 66, 83, 59, 64, 56, 62, 44, 60, 52, 87, 47, 71, 68, 82, 55, 103, 50, 72, 58, 73, 73, 65, 57, 79, 66, 86, 121, 58, 85, 53, 54, 56, 61, 87, 56, 54, 57, 57, 76, 76, 73, 61, 59, 58, 70, 69, 69, 47, 71, 72, 67, 69, 58, 58, 53, 86, 77, 64, 63, 74, 56, 64, 68, 76, 60, 70, 66, 70, 42, 56, 76, 78, 52, 57, 64, 69, 53, 45, 89, 81, 63, 44, 51, 60, 77, 49, 67, 74, 67, 62, 57, 43, 58, 66, 46, 58, 61, 53, 74, 58, 42, 66, 54, 61, 72, 56, 73, 77, 45, 81, 60, 55, 83, 70, 69, 62, 45, 67, 124, 67, 53, 53, 75, 64, 58, 65, 36, 62, 54, 82, 50, 48, 107, 77, 49, 65, 58, 55, 55, 59, 57, 65, 37, 97, 48, 73, 43, 54, 54, 127, 69, 63, 48, 133, 124, 62, 93, 65, 67, 57, 63, 59, 38, 72, 56, 61, 57, 61, 62, 68, 67, 54, 63, 63, 52, 68, 60, 74, 74, 52, 88, 89, 67, 73, 62, 56, 83, 57, 41, 65, 67, 64, 69, 61, 81, 37, 73, 56, 72, 82, 77, 76, 54, 98, 52, 72, 51, 69, 61, 44, 54, 65, 69, 82, 52, 98, 77, 74, 60, 79, 74, 73, 48, 74, 69, 75, 63, 69, 53, 64, 75, 52, 69, 65, 53, 53, 65, 52, 80, 47, 78, 62, 61, 80, 59, 84, 56, 51, 61, 52, 84, 51, 55, 62, 50, 80, 59, 72, 61, 68, 58, 52, 55, 56, 71, 42, 72, 39, 83, 52, 53, 62, 51, 78, 50, 111, 67, 109, 108, 42, 60, 49, 94, 97, 64, 70, 50, 65, 52, 58, 54, 54, 55, 63, 64, 49, 74, 76, 65, 49, 60, 47, 45, 57, 50, 51, 72, 65, 67, 74, 69, 82, 63, 51, 70, 60, 60, 69, 73, 60, 59, 60, 60, 63, 74, 64, 56, 60, 69, 84, 54, 55, 87, 56, 81, 58, 76, 43, 58, 62, 66, 59, 68, 91, 64, 66, 44, 67, 57, 80, 54, 61, 60, 63, 70, 50, 71, 30, 74, 82, 64, 67, 70, 66, 52, 82, 70, 55, 65, 51, 72, 49, 45, 46, 70, 75, 52, 69, 61, 59, 51, 110, 56, 78, 62, 74, 72, 48, 67, 78, 68, 81, 75, 54, 65, 74, 58, 73, 42, 60, 54, 50, 65, 83, 52, 69, 109, 60, 66, 63, 69, 60, 76, 69, 74, 69, 75, 58, 61, 65, 56, 61, 63, 78, 69, 57, 77, 51, 51, 70, 58, 71, 52, 66, 81, 71, 54, 66, 76, 82, 52, 74, 100, 57, 62, 97, 43, 61, 49, 55, 65, 86, 69, 70, 69, 96, 96, 66, 93, 60, 65, 83, 71, 74, 68, 69, 55, 75, 37, 95, 50, 59, 66, 59, 55, 64, 72, 66, 68, 68, 65, 72, 84, 78, 64, 51, 92, 62, 59, 63, 68, 83, 70, 42, 71, 66, 70, 76, 89, 66, 82, 59, 94, 78, 70, 55, 58, 54, 60, 81, 66, 56, 108, 87, 70, 64, 63, 60, 47, 77, 59, 58, 75, 59, 69, 55, 78, 68, 50, 114, 68, 54, 63, 63, 81, 64, 68, 58, 82, 65, 63, 87, 60, 49, 56, 66, 65, 63, 70, 58, 70, 49, 53, 72, 56, 74, 60, 74, 84, 60, 73, 80, 67, 97, 62, 71, 62, 95, 77, 60, 70, 59, 91, 55, 63, 57, 58, 59, 68, 61, 40, 92, 53, 78, 71, 55, 77, 69, 80, 64, 75, 79, 64, 49, 92, 52, 61, 57, 42, 66, 51, 58, 75, 53, 63, 60, 76, 79, 73, 44, 67, 87, 67, 66, 61, 54, 57, 71, 61, 53, 78, 45, 50, 57, 71, 71, 80, 129, 58, 63, 73, 62, 59, 75, 66, 75, 53, 54, 75, 67, 58, 77, 71, 53, 65, 57, 70, 71, 67, 65, 51, 63, 100, 59, 65, 67, 57, 77, 45, 85, 51, 51, 61, 63, 78, 84, 80, 108, 59, 83, 52, 56, 64, 63, 61, 69, 72, 77, 65, 65, 47, 42, 66, 81, 71, 67, 50, 75, 116, 77, 59, 72, 50, 59, 66, 67, 54, 55, 59, 61, 78, 65, 92, 72, 84, 40, 73, 72, 72, 54, 77, 56, 105, 65, 55, 65, 70, 64, 63, 68, 52, 56, 55, 67, 94, 44, 93, 54, 49, 87, 65, 84, 76, 71, 52, 62, 83, 69, 73, 67, 51, 48, 70, 87, 58, 71, 64, 69, 50, 78, 70, 60, 82, 54, 53, 61, 72, 72, 57, 65, 53, 84, 56, 124, 60, 84, 46, 65, 62, 82, 58, 75, 53, 53, 60, 56, 73, 91, 42, 81, 43, 83, 67, 79, 64, 50, 62, 39, 58, 69, 88, 62, 119, 81, 47, 57, 81, 33, 68, 91, 71, 39, 74, 62, 48, 70, 63, 63, 55, 50, 69, 70, 106, 39, 80, 68, 99, 95, 50, 86, 67, 56, 61, 53, 58, 46, 64, 71, 67, 83, 75, 78, 84, 49, 67, 53, 99, 65, 74, 80, 62, 64, 51, 68, 62, 76, 30, 89, 51, 52, 55, 49, 71, 62, 46, 134, 78, 68, 74, 77, 51, 66, 65, 75, 59, 55, 57, 61, 63, 42, 54, 67, 85, 55, 95, 77, 77, 66, 71, 71, 51, 53, 62, 83, 89, 81, 57, 77, 61, 58, 73, 68, 108, 54, 62, 64, 101, 69, 54, 60, 35, 67, 63, 75, 37, 87, 83, 49, 67, 71, 74, 59, 57, 60, 58, 59, 56, 61, 77, 54, 79, 69, 72, 58, 65, 44, 56, 62, 49, 63, 35, 49, 85, 74, 70, 49, 64, 79, 89, 66, 65, 86, 47, 72, 48, 73, 58, 57, 67, 61, 58, 57, 56, 58, 62, 67, 70, 54, 66, 87, 56, 71, 69, 56, 59, 68, 33, 85, 66, 82, 60, 70, 101, 75, 51, 55, 62, 61, 59, 109, 57, 74, 89, 82, 59, 57, 61, 72, 62, 66, 68, 66, 61, 69, 59, 66, 74, 63, 79, 86, 45, 80, 69, 78, 69, 61, 34, 92, 63, 63, 60, 96, 53, 66, 55, 52, 70, 101, 64, 73, 83, 70, 58, 61, 69, 97, 59, 68, 56, 43, 69, 49, 72, 57, 82, 63, 58, 70, 61, 111, 66, 74, 90, 51, 40, 81, 89, 51, 41, 62, 95, 46, 52, 75, 46, 52, 63, 70, 54, 71, 68, 57, 52, 60, 41, 70, 89, 109, 55, 38, 86, 55, 67, 92, 52, 49, 50, 70, 66, 69, 58, 45, 73, 60, 58, 70, 66, 61, 58, 78, 50, 83, 93, 59, 47, 47, 62, 50, 84, 54, 71, 53, 58, 65, 65, 66, 64, 55, 93, 79, 67, 67, 58, 86, 56, 55, 61, 75, 59, 70, 42, 72, 58, 107, 68, 56, 68, 80, 56, 51, 76, 66, 74, 68, 51, 56, 103, 66, 73, 48, 53, 62, 121, 53, 93, 41, 72, 46, 76, 70, 58, 60, 67, 60, 64, 50, 70, 76, 55, 53, 65, 76, 62, 54, 62, 80, 102, 95, 57, 76, 76, 63, 63, 62, 62, 92, 65, 105, 40, 58, 76, 89, 52, 75, 64, 53, 76, 72, 53, 70, 65, 68, 74, 67, 67, 57, 61, 63, 46, 69, 85, 73, 49, 69, 66, 58, 78, 56, 58, 57, 73, 65, 55, 60, 117, 67, 88, 71, 74, 50, 55, 53, 69, 40, 65, 47, 61, 57, 70, 49, 57, 74, 92, 59, 52, 51, 57, 81, 74, 89, 62, 81, 54, 89, 65, 48, 40, 72, 67, 89, 38, 70, 84, 60, 54, 57, 55, 68, 83, 54, 72, 107, 51, 59, 64, 62, 74, 80, 62, 105, 54, 43, 62, 46, 114, 100, 70, 55, 37, 91, 65, 72, 74, 61, 61, 36, 50, 90, 60, 48, 47, 84, 58, 75, 61, 74, 70, 53, 50, 129, 64, 72, 51, 85, 46, 55, 58, 96, 62, 85, 58, 111, 65, 68, 48, 61, 72, 63, 63, 56, 69, 79, 66, 74, 60, 61, 71, 66, 57, 68, 72, 44, 53, 52, 69, 81, 77, 71, 72, 62, 61, 102, 56, 53, 65, 62, 59, 51, 66, 55, 81, 48, 46, 68, 66, 67, 69, 61, 49, 51, 80, 67, 73, 88, 68, 83, 64, 77, 62, 48, 61, 41, 59, 58, 88, 50, 51, 66, 76, 61, 89, 84, 76, 77, 59, 59, 58, 89, 41, 82, 72, 68, 79, 69, 102, 64, 74, 72, 65, 74, 61, 45, 75, 71, 56, 80, 65, 61, 89, 93, 71, 68, 61, 71, 68, 44, 57, 81, 67, 58, 79, 71, 68, 87, 65, 60, 50, 73, 63, 51, 69, 57, 77, 76, 60, 79, 60, 66, 57, 50, 65, 68, 60, 65, 81, 66, 52, 65, 53, 62, 62, 56, 49, 84, 62, 70, 49, 66, 67, 67, 74, 66, 56, 45, 53, 71, 49, 63, 60, 68, 60, 64, 62, 50, 79, 63, 118, 83, 63, 77, 58, 63, 69, 57, 72, 54, 55, 57, 84, 75, 60, 60, 64, 87, 84, 56, 92, 82, 51, 52, 45, 63, 61, 61, 55, 35, 53, 61, 79, 76, 81, 53, 72, 54, 40, 62, 66, 62, 52, 47, 36, 67, 43, 53, 48, 59, 65, 95, 57, 71, 65, 109, 55, 30, 57, 44, 76, 49, 90, 65, 76, 38, 41, 62, 58, 64, 71, 49, 50, 50, 77, 84, 97, 95, 62, 90, 82, 41, 65, 52, 54, 64, 70, 48, 71, 53, 73, 54, 60, 51, 65, 63, 57, 71, 87, 63, 63, 63, 79, 67, 71, 57, 74, 54, 66, 71, 89, 44, 63, 63, 81, 73, 67, 60, 54, 78, 57, 64, 63, 50, 68, 74, 55, 61, 80, 71, 65, 74, 66, 54, 61, 64, 57, 60, 87, 110, 79, 74, 54, 71, 51, 65, 72, 63, 56, 65, 78, 65, 75, 54, 49, 56, 67, 61, 67, 61, 66, 94, 40, 73, 61, 96, 58, 75, 68, 76, 61, 60, 58, 51, 56, 58, 78, 68, 60, 71, 60, 81, 48, 62, 81, 64, 69, 63, 56, 80, 73, 58, 81, 59, 58, 65, 63, 74, 60, 55, 85, 61, 71, 80, 77, 63, 104, 92, 66, 44, 54, 44, 57, 54, 73, 83, 54, 58, 50, 66, 66, 62, 70, 54, 55, 57, 87, 63, 75, 100, 60, 69, 55, 59, 60, 62, 59, 41, 49, 68, 62, 57, 63, 61, 64, 54, 56, 59, 74, 56, 74, 78, 69, 50, 53, 58, 64, 54, 69, 53, 74, 79, 65, 48, 42, 55, 64, 57, 51, 76, 65, 78, 91, 72, 74, 63, 62, 68, 58, 52, 59, 68, 62, 75, 66, 60, 97, 89, 81, 51, 61, 49, 52, 63, 59, 50, 65, 61, 47, 50, 56, 77, 70, 62, 58, 71, 55, 72, 56, 65, 55, 62, 54, 67, 73, 62, 70, 70, 84, 50, 68, 63, 71, 58, 61, 79, 54, 88, 77, 72, 61, 68, 51, 56, 70, 56, 51, 68, 77, 63, 115, 66, 50, 62, 59, 73, 67, 103, 61, 58, 76, 76, 71, 63, 68, 62, 59, 60, 55, 61, 49, 83, 79, 71, 69, 55, 61, 81, 66, 58, 74, 69, 72, 70, 66, 84, 97, 57, 52, 73, 94, 69, 62, 61, 95, 51, 56, 61, 59, 73, 86, 51, 51, 75, 69, 76, 102, 49, 68, 71, 58, 66, 61, 118, 66, 58, 54, 52, 56, 74, 64, 72, 68, 70, 57, 60, 63, 59, 93, 90, 95, 75, 78, 79, 78, 77, 66, 67, 74, 57, 66, 95, 61, 73, 62, 53, 61, 90, 72, 62, 56, 88, 58, 52, 85, 49, 67, 71, 77, 65, 61, 67, 73, 65, 50, 70, 56, 79, 56, 59, 56, 76, 62, 82, 57, 47, 74, 95, 54, 63, 74, 67, 68, 49, 47, 62, 62, 58, 82, 51, 68, 63, 63, 48, 80, 56, 61, 62, 63, 44, 56, 57, 72, 60, 71, 50, 65, 59, 76, 65, 74, 64, 68, 72, 60, 53, 61, 79, 60, 57, 118, 70, 51, 73, 65, 75, 51, 64, 62, 71, 82, 74, 67, 76, 68, 54, 66, 86, 68, 53, 106, 44, 92, 51, 61, 73, 64, 71, 70, 62, 58, 64, 66, 59, 40, 51, 54, 80, 76, 84, 75, 93, 74, 92, 58, 114, 62, 54, 58, 45, 63, 57, 59, 75, 57, 70, 75, 64, 39, 77, 55, 90, 56, 85, 69, 59, 52, 53, 67, 66, 74, 67, 66, 61, 59, 46, 54, 49, 68, 87, 79, 48, 66, 61, 72, 64, 61, 86, 87, 66, 57, 53, 67, 61, 61, 64, 80, 111, 61, 80, 58, 73, 88, 45, 86, 43, 65, 69, 63, 56, 68, 72, 60, 69, 56, 67, 66, 77, 74, 54, 74, 79, 60, 62, 69, 75, 75, 71, 63, 64, 58, 59, 58, 74, 42, 63, 84, 82, 75, 49, 83, 69, 51, 63, 69, 60, 85, 65, 62, 63, 77, 54, 66, 57, 95, 79, 57, 58, 43, 58, 63, 52, 54, 63, 80, 67, 59, 65, 63, 61, 64, 61, 66, 77, 60, 47, 47, 74, 56, 51, 84, 64, 54, 57, 81, 73, 88, 71, 73, 80, 56, 75, 62, 55, 115, 50, 90, 80, 74, 66, 67, 50, 69, 43, 96, 114, 89, 77, 53, 71, 84, 49, 67, 97, 67, 113, 45, 51, 84, 71, 59, 58, 81, 77, 53, 75, 74, 66, 63, 58, 63, 57, 65, 59, 78, 62, 59, 80, 84, 62, 71, 61, 55, 54, 81, 60, 66, 58, 57, 60, 71, 62, 70, 72, 71, 62, 93, 51, 63, 62, 55, 105, 66, 75, 49, 55, 60, 70, 42, 55, 73, 45, 67, 74, 66, 78, 61, 55, 54, 93, 79, 74, 63, 99, 45, 50, 72, 78, 53, 70, 54, 57, 50, 72, 80, 51, 90, 60, 84, 82, 87, 54, 58, 65, 77, 71, 70, 38, 58, 64, 71, 75, 82, 55, 64, 73, 57, 54, 63, 96, 46, 82, 57, 50, 60, 45, 65, 62, 69, 73, 67, 78, 72, 53, 69, 63, 61, 120, 68, 94, 40, 50, 58, 61, 53, 49, 68, 55, 65, 79, 45, 71, 67, 80, 63, 60, 58, 45, 65, 49, 60, 73, 78, 54, 70, 47, 54, 55, 56, 58, 58, 65, 72, 64, 45, 47, 74, 65, 51, 87, 61, 66, 65, 70, 63, 50, 57, 46, 70, 63, 61, 88, 73, 58, 79, 64, 58, 49, 53, 71, 63, 66, 52, 49, 74, 91, 63, 55, 72, 53, 78, 57, 71, 73, 62, 65, 67, 90, 72, 54, 63, 81, 53, 75, 51, 79, 54, 124, 79, 47, 52, 71, 98, 61, 80, 47, 60, 72, 87, 67, 55, 76, 69, 71, 90, 56, 73, 54, 60, 58, 65, 83, 72, 97, 50, 100, 57, 73, 55, 75, 75, 63, 59, 56, 66, 58, 50, 67, 50, 73, 66, 66, 56, 70, 40, 70, 66, 63, 78, 82, 57, 69, 53, 93, 67, 61, 64, 69, 48, 49, 64, 73, 66, 79, 60, 49, 97, 54, 57, 58, 60, 57, 76, 82, 83, 58, 56, 51, 50, 71, 64, 67, 58, 77, 72, 69, 59, 80, 46, 72, 56, 70, 81, 96, 68, 66, 86, 58, 61, 52, 44, 93, 86, 67, 75, 50, 78, 67, 73, 51, 48, 60, 91, 75, 83, 63, 57, 60, 102, 73, 60, 75, 63, 89, 63, 71, 73, 75, 74, 65, 63, 80, 53, 58, 52, 54, 72, 57, 65, 59, 60, 107, 65, 53, 97, 57, 61, 65, 48, 56, 60, 82, 68, 59, 64, 71, 49, 61, 67, 80, 118, 78, 66, 79, 70, 49, 74, 65, 73, 63, 64, 45, 44, 66, 67, 59, 67, 58, 55, 54, 62, 71, 72, 47, 60, 62, 64, 81, 77, 74, 74, 52, 54, 81, 85, 65, 70, 38, 41, 81, 63, 89, 67, 78, 60, 67, 65, 58, 58, 53, 100, 42, 61, 64, 50, 72, 61, 70, 86, 63, 66, 54, 49, 41, 55, 66, 53, 71, 78, 58, 63, 54, 72, 67, 73, 61, 60, 70, 63, 63, 50, 59, 78, 56, 72, 77, 65, 79, 66, 64, 57, 68, 64, 71, 62, 52, 79, 70, 53, 112, 55, 88, 65, 79, 54, 48, 65, 61, 57, 75, 78, 84, 81, 91, 55, 80, 42, 66, 60, 52, 61, 65, 46, 47, 60, 44, 72, 59, 55, 70, 72, 64, 56, 48, 80, 68, 54, 109, 66, 74, 75, 59, 79, 50, 63, 51, 90, 64, 53, 62, 87, 62, 63, 47, 65, 50, 57, 63, 57, 52, 52, 76, 64, 40, 48, 58, 75, 53, 54, 51, 44, 95, 74, 66, 76, 65, 53, 65, 67, 67, 69, 93, 69, 70, 75, 55, 58, 65, 77, 51, 56, 74, 51, 67, 49, 50, 50, 60, 79, 67, 48, 65, 73, 55, 69, 69, 57, 64, 88, 65, 60, 48, 49, 47, 52, 59, 50, 102, 55, 75, 52, 66, 64, 58, 60, 63, 61, 67, 59, 52, 57, 59, 63, 91, 75, 93, 61, 74, 60, 62, 66, 59, 65, 43, 41, 43, 59, 73, 98, 117, 49, 67, 66, 109, 65, 82, 48, 52, 88, 53, 54, 69, 66, 83, 108, 64, 79, 64, 57, 69, 84, 54, 53, 68, 70, 74, 73, 71, 70, 57, 78, 58, 71, 81, 92, 49, 54, 78, 72, 77, 55, 44, 70, 70, 75, 55, 84, 57, 60, 45, 64, 70, 67, 52, 83, 43, 63, 63, 82, 52, 66, 54, 75, 68, 63, 85, 56, 59, 63, 94, 74, 65, 48, 72, 52, 64, 66, 82, 71, 70, 57, 66, 72, 39, 70, 99, 60, 100, 66, 75, 61, 64, 61, 59, 67, 63, 54, 67, 66, 71, 71, 64, 71, 40, 50, 108, 58, 79, 50, 66, 58, 72, 62, 61, 101, 59, 66, 46, 67, 71, 59, 74, 69, 50, 70, 70, 73, 64, 83, 63, 47, 64, 107, 43, 57, 81, 79, 54, 65, 79, 63, 58, 76, 66, 70, 72, 81, 54, 60, 90, 65, 71, 53, 69, 84, 59, 51, 63, 79, 61, 60, 70, 72, 79, 58, 50, 68, 80, 38, 76, 71, 71, 42, 62, 52, 75, 65, 61, 79, 47, 71, 77, 60, 67, 64, 76, 65, 78, 46, 96, 80, 58, 64, 61, 50, 53, 46, 75, 84, 61, 63, 58, 71, 66, 80, 54, 62, 76, 47, 96, 57, 77, 88, 75, 67, 43, 55, 60, 68, 49, 62, 71, 61, 54, 39, 72, 61, 60, 57, 93, 61, 55, 61, 49, 79, 69, 75, 54, 60, 84, 63, 61, 59, 63, 61, 68, 57, 86, 77, 63, 61, 54, 58, 67, 78, 77, 68, 81, 87, 53, 57, 55, 55, 53, 91, 52, 82, 50, 60, 90, 55, 83, 70, 65, 49, 62, 61, 66, 54, 90, 56, 94, 56, 70, 41, 72, 67, 51, 98, 79, 70, 85, 62, 64, 91, 93, 83, 84, 75, 52, 59, 98, 50, 61, 82, 64, 64, 56, 53, 53, 83, 62, 63, 56, 69, 72, 54, 62, 58, 57, 59, 65, 94, 47, 94, 53, 63, 75, 71, 80, 106, 59, 57, 67, 66, 57, 76, 59, 90, 81, 65, 46, 63, 51, 52, 90, 104, 77, 66, 65, 78, 61, 75, 62, 59, 53, 53, 50, 101, 77, 37, 42, 70, 43, 71, 78, 72, 53, 82, 56, 79, 63, 86, 50, 66, 72, 60, 61, 74, 72, 60, 53, 47, 49, 68, 76, 55, 61, 43, 61, 55, 48, 65, 68, 76, 65, 64, 94, 82, 104, 45, 55, 74, 64, 68, 63, 63, 60, 75, 70, 59, 70, 61, 48, 54, 69, 50, 64, 72, 63, 58, 47, 70, 58, 73, 60, 58, 50, 80, 63, 47, 66, 95, 60, 45, 50, 85, 51, 62, 67, 65, 66, 56, 63, 70, 70, 52, 64, 65, 77, 78, 80, 75, 61, 69, 83, 45, 94, 83, 66, 63, 76, 66, 64, 69, 33, 63, 68, 66, 58, 58, 64, 67, 64, 64, 44, 75, 45, 61, 64, 49, 71, 70, 74, 51, 66, 66, 77, 51, 84, 70, 89, 66, 79, 55, 61, 70, 52, 63, 54, 61, 63, 64, 74, 65, 54, 47, 66, 51, 58, 65, 50, 75, 65, 71, 65, 89, 56, 67, 74, 61, 126, 68, 93, 59, 41, 40, 65, 80, 75, 54, 112, 57, 52, 56, 72, 68, 64, 64, 81, 53, 64, 64, 72, 76, 65, 56, 57, 67, 64, 60, 63, 62, 58, 69, 66, 70, 65, 64, 72, 60, 73, 71, 106, 55, 64, 73, 74, 61, 44, 66, 60, 58, 62, 54, 58, 65, 68, 68, 68, 63, 43, 74, 65, 75, 54, 46, 55, 64, 63, 72, 64, 48, 59, 62, 68, 72, 59, 64, 56, 71, 80, 76, 60, 55, 109, 56, 43, 64, 89, 80, 41, 59, 62, 75, 66, 81, 81, 68, 63, 75, 65, 66, 63, 59, 69, 74, 60, 62, 53, 62, 58, 69, 80, 69, 70, 70, 73, 60, 60, 69, 51, 72, 69, 48, 63, 67, 73, 82, 66, 69, 51, 84, 73, 86, 82, 68, 62, 57, 58, 96, 56, 54, 60, 59, 44, 55, 65, 66, 78, 81, 65, 52, 51, 52, 70, 54, 61, 48, 58, 56, 70, 48, 92, 84, 54, 74, 60, 88, 72, 72, 95, 77, 70, 70, 62, 47, 57, 70, 65, 86, 88, 52, 56, 63, 55, 95, 90, 44, 68, 61, 57, 69, 69, 62, 89, 72, 47, 64, 61, 66, 69, 57, 39, 55, 48, 85, 54, 50, 79, 76, 61, 68, 65, 61, 52, 86, 41, 64, 42, 68, 57, 75, 74, 77, 60, 68, 65, 79, 60, 60, 60, 67, 21, 57, 73, 59, 61, 67, 60, 93, 66, 74, 55, 88, 73, 64, 57, 70, 63, 90, 74, 81, 37, 107, 104, 75, 51, 63, 73, 59, 49, 74, 54, 55, 75, 69, 58, 62, 54, 59, 47, 59, 64, 54, 78, 80, 39, 67, 64, 60, 47, 76, 71, 83, 58, 47, 92, 70, 65, 54, 60, 69, 66, 103, 62, 59, 70, 76, 61, 64, 56, 47, 65, 86, 80, 66, 60, 61, 75, 46, 69, 57, 53, 71, 75, 49, 71, 73, 49, 54, 78, 68, 59, 77, 32, 75, 69, 79, 60, 86, 79, 69, 60, 73, 59, 65, 75, 60, 61, 56, 62, 55, 54, 69, 77, 78, 68, 63, 49, 64, 72, 68, 110, 57, 86, 62, 49, 73, 51, 55, 52, 84, 65, 72, 81, 81, 58, 51, 55, 65, 64, 83, 64, 73, 89, 65, 59, 66, 50, 81, 52, 54, 72, 78, 88, 71, 66, 78, 80, 69, 85, 81, 107, 76, 46, 68, 71, 68, 66, 83, 68, 80, 80, 55, 45, 73, 77, 59, 68, 57, 62, 65, 69, 62, 67, 52, 50, 59, 62, 66, 51, 72, 59, 49, 62, 54, 49, 70, 55, 55, 81, 71, 68, 84, 62, 58, 68, 70, 71, 55, 54, 74, 64, 67, 50, 61, 56, 83, 77, 80, 70, 65, 67, 68, 95, 67, 56, 63, 60, 60, 50, 66, 57, 60, 57, 52, 48, 49, 57, 73, 79, 95, 81, 43, 59, 57, 64, 65, 58, 70, 55, 58, 91, 61, 63, 74, 58, 64, 90, 59, 91, 64, 63, 83, 56, 57, 64, 72, 83, 64, 59, 65, 71, 81, 74, 87, 75, 57, 80, 66, 62, 58, 76, 74, 58, 69, 75, 39, 56, 58, 80, 53, 108, 62, 62, 59, 74, 69, 69, 66, 51, 68, 69, 57, 56, 59, 62, 65, 66, 50, 65, 69, 69, 69, 73, 59, 58, 69, 97, 64, 49, 60, 53, 100, 65, 81, 69, 61, 69, 65, 56, 58, 64, 70, 65, 56, 72, 60, 63, 52, 65, 79, 50, 52, 99, 61, 72, 60, 110, 68, 63, 60, 52, 68, 60, 63, 51, 66, 64, 50, 59, 50, 89, 68, 61, 62, 56, 47, 57, 52, 65, 66, 51, 59, 75, 69, 72, 69, 67, 62, 63, 63, 78, 79, 43, 70, 70, 70, 62, 69, 55, 60, 86, 59, 77, 63, 52, 69, 83, 61, 93, 85, 75, 69, 54, 67, 57, 71, 77, 61, 56, 55, 66, 56, 69, 70, 53, 72, 67, 64, 72, 44, 67, 72, 71, 59, 54, 72, 58, 65, 73, 62, 78, 60, 62, 67, 60, 81, 65, 87, 62, 49, 74, 63, 82, 61, 65, 56, 58, 61, 65, 69, 72, 60, 53, 74, 80, 77, 79, 64, 60, 67, 62, 65, 88, 68, 61, 47, 62, 64, 69, 80, 81, 47, 80, 90, 56, 107, 73, 63, 64, 56, 67, 73, 66, 59, 49, 72, 79, 87, 54, 70, 74, 74, 69, 65, 47, 47, 64, 60, 46, 56, 68, 59, 55, 64, 84, 52, 56, 52, 85, 72, 53, 54, 58, 83, 52, 55, 80, 68, 58, 75, 69, 56, 67, 73, 72, 75, 56, 83, 66, 77, 65, 53, 55, 84, 57, 43, 74, 58, 73, 59, 61, 48, 69, 63, 76, 66, 69, 61, 53, 59, 72, 67, 58, 56, 47, 62, 73, 61, 66, 50, 96, 69, 70, 61, 61, 43, 41, 70, 64, 61, 66, 72, 63, 68, 72, 59, 41, 70, 50, 56, 73, 45, 71, 54, 62, 77, 70, 92, 65, 63, 56, 71, 51, 60, 105, 71, 67, 62, 53, 59, 73, 108, 72, 61, 62, 73, 56, 59, 66, 58, 46, 65, 72, 53, 46, 44, 67, 69, 59, 69, 73, 67, 75, 97, 63, 56, 53, 69, 63, 82, 70, 69, 58, 60, 50, 66, 66, 57, 103, 61, 66, 55, 54, 74, 61, 56, 78, 70, 55, 127, 57, 47, 70, 61, 49, 56, 63, 89, 55, 73, 55, 77, 66, 68, 65, 71, 103, 86, 46, 64, 59, 78, 66, 57, 79, 62, 60, 61, 58, 95, 56, 81, 57, 59, 75, 68, 67, 61, 71, 61, 63, 80, 86, 67, 59, 59, 33, 74, 48, 61, 65, 85, 62, 83, 75, 58, 60, 61, 69, 63, 50, 46, 60, 43, 64, 66, 58, 55, 74, 53, 65, 64, 89, 86, 63, 72, 67, 85, 56, 55, 60, 68, 58, 79, 68, 64, 58, 66, 58, 105, 70, 52, 80, 67, 116, 48, 59, 63, 64, 50, 60, 65, 67, 49, 62, 61, 71, 64, 68, 71, 60, 81, 54, 63, 59, 63, 98, 95, 73, 68, 43, 66, 55, 69, 72, 72, 65, 51, 56, 72, 57, 62, 51, 76, 62, 58, 63, 74, 46, 60, 80, 53, 121, 71, 67, 46, 78, 59, 62, 63, 70, 71, 80, 61, 81, 62, 68, 65, 54, 78, 58, 62, 79, 62, 58, 65, 66, 52, 63, 47, 68, 61, 54, 77, 59, 68, 66, 59, 56, 90, 87, 60, 63, 75, 39, 50, 55, 72, 68, 76, 56, 76, 77, 70, 53, 80, 66, 66, 73, 63, 63, 77, 69, 58, 69, 58, 62, 62, 54, 54, 62, 66, 59, 116, 64, 54, 71, 48, 64, 59, 68, 72, 43, 74, 60, 81, 73, 64, 74, 98, 67, 60, 63, 62, 61, 65, 68, 69, 84, 80, 61, 44, 75, 69, 52, 76, 80, 62, 66, 49, 67, 60, 55, 73, 62, 95, 71, 79, 62, 45, 52, 47, 69, 61, 59, 77, 63, 59, 67, 55, 61, 57, 61, 57, 67, 62, 69, 77, 49, 54, 69, 66, 70, 71, 91, 84, 86, 55, 64, 64, 56, 60, 65, 59, 92, 51, 66, 55, 63, 87, 74, 65, 93, 69, 69, 70, 52, 70, 70, 58, 51, 53, 52, 53, 73, 71, 62, 60, 70, 62, 70, 48, 59, 61, 68, 67, 102, 71, 52, 55, 56, 63, 77, 51, 62, 90, 78, 62, 58, 62, 72, 55, 59, 77, 97, 84, 67, 60, 52, 58, 66, 76, 57, 59, 74, 69, 55, 56, 55, 39, 91, 73, 61, 76, 76, 59, 63, 75, 59, 98, 66, 57, 62, 59, 66, 64, 77, 70, 63, 50, 66, 80, 78, 65, 63, 72, 91, 66, 67, 79, 111, 95, 69, 71, 77, 86, 86, 64, 79, 71, 67, 67, 63, 52, 54, 65, 99, 89, 57, 64, 64, 70, 82, 68, 46, 69, 54, 62, 82, 55, 73, 55, 104, 69, 78, 72, 64, 66, 64, 58, 71, 73, 69, 57, 61, 60, 66, 54, 62, 58, 67, 65, 53, 55, 75, 42, 75, 84, 86, 68, 61, 60, 54, 61, 73, 66, 76, 74, 67, 62, 52, 78, 67, 55, 81, 52, 86, 58, 53, 54, 79, 51, 61, 68, 89, 62, 55, 82, 59, 52, 57, 52, 64, 55, 69, 53, 59, 61, 66, 59, 62, 68, 68, 71, 53, 58, 67, 81, 85, 68, 84, 56, 54, 79, 70, 62, 57, 69, 74, 56, 60, 51, 52, 74, 81, 98, 77, 61, 62, 65, 92, 105, 66, 68, 48, 88, 63, 56, 72, 66, 59, 55, 75, 62, 75, 63, 60, 70, 56, 60, 72, 52, 52, 91, 59, 69, 63, 65, 77, 57, 74, 52, 85, 69, 62, 77, 51, 60, 48, 56, 69, 74, 69, 70, 59, 55, 57, 51, 66, 41, 81, 58, 56, 69, 60, 60, 60, 53, 70, 65, 63, 73, 92, 65, 73, 42, 58, 64, 83, 55, 91, 72, 83, 58, 51, 50, 86, 68, 66, 71, 66, 66, 112, 62, 107, 64, 68, 68, 45, 51, 68, 49, 54, 101, 58, 63, 60, 81, 62, 71, 75, 62, 60, 62, 69, 76, 58, 101, 72, 57, 65, 69, 56, 54, 50, 73, 63, 51, 79, 69, 74, 66, 61, 68, 72, 61, 66, 63, 59, 49, 61, 103, 64, 76, 89, 56, 53, 81, 53, 53, 62, 62, 79, 72, 97, 87, 63, 69, 87, 80, 47, 57, 74, 62, 56, 62, 65, 59, 48, 60, 86, 58, 47, 64, 58, 68, 64, 68, 62, 69, 81, 65, 58, 62, 51, 99, 69, 75, 53, 71, 70, 56, 83, 40, 68, 57, 53, 68, 91, 63, 58, 52, 56, 57, 56, 52, 94, 66, 43, 57, 121, 70, 60, 58, 63, 70, 63, 56, 63, 66, 60, 58, 60, 70, 59, 52, 65, 66, 53, 51, 59, 69, 71, 54, 65, 67, 78, 55, 55, 56, 68, 43, 65, 68, 104, 82, 59, 67, 53, 68, 76, 63, 51, 54, 90, 61, 51, 57, 55, 69, 69, 46, 112, 72, 53, 73, 84, 64, 67, 74, 45, 59, 67, 69, 69, 65, 48, 56, 68, 65, 48, 77, 65, 46, 71, 76, 56, 64, 67, 88, 62, 54, 85, 71, 68, 139, 63, 48, 57, 70, 50, 83, 77, 60, 60, 62, 68, 62, 63, 68, 68, 68, 65, 60, 71, 65, 62, 55, 76, 64, 73, 58, 66, 58, 62, 54, 96, 73, 79, 57, 61, 58, 49, 81, 70, 69, 88, 83, 61, 88, 70, 53, 61, 68, 64, 55, 56, 75, 56, 64, 72, 80, 65, 46, 84, 79, 97, 71, 47, 69, 66, 67, 64, 63, 73, 58, 73, 65, 73, 51, 65, 58, 67, 55, 73, 56, 54, 67, 56, 80, 65, 56, 72, 54, 108, 53, 72, 69, 53, 85, 78, 65, 74, 57, 60, 87, 68, 91, 75, 53, 74, 62, 95, 82, 55, 70, 71, 79, 63, 71, 60, 55, 50, 63, 68, 54, 59, 72, 54, 63, 49, 63, 61, 58, 52, 49, 69, 52, 56, 102, 68, 56, 62, 55, 73, 60, 53, 73, 52, 64, 52, 70, 59, 70, 63, 48, 57, 78, 49, 70, 75, 76, 69, 48, 74, 84, 65, 54, 78, 51, 73, 71, 70, 77, 61, 98, 64, 72, 56, 75, 60, 72, 53, 70, 73, 65, 75, 63, 83, 62, 64, 70, 62, 69, 66, 71, 83, 68, 92, 70, 53, 63, 65, 64, 61, 64, 55, 53, 66, 51, 84, 67, 90, 77, 73, 71, 51, 75, 55, 61, 55, 71, 56, 74, 51, 67, 63, 63, 58, 52, 53, 68, 74, 100, 69, 84, 62, 63, 59, 72, 75, 85, 64, 64, 72, 68, 70, 53, 74, 70, 77, 64, 67, 91, 77, 69, 71, 59, 56, 63, 58, 55, 63, 57, 63, 97, 87, 67, 56, 54, 82, 61, 47, 78, 62, 80, 54, 67, 51, 86, 62, 60, 66, 58, 68, 70, 73, 69, 61, 59, 56, 56, 65, 57, 79, 47, 70, 82, 69, 89, 101, 80, 60, 68, 54, 64, 64, 44, 70, 87, 47, 79, 55, 110, 67, 54, 64, 61, 105, 57, 55, 53, 54, 41, 37, 58, 64, 63, 65, 68, 54, 59, 52, 63, 57, 102, 66, 70, 65, 65, 90, 68, 80, 58, 61, 73, 59, 77, 51, 65, 64, 62, 55, 70, 76, 66, 66, 45, 60, 57, 45, 73, 61, 58, 67, 62, 122, 55, 72, 71, 124, 62, 55, 60, 55, 61, 56, 57, 66, 70, 104, 71, 47, 83, 62, 56, 109, 76, 55, 56, 69, 52, 69, 74, 72, 53, 64, 82, 51, 69, 58, 57, 71, 94, 86, 64, 52, 81, 77, 63, 60, 61, 62, 41, 52, 57, 77, 63, 56, 101, 63, 68, 71, 58, 51, 77, 50, 41, 75, 45, 67, 60, 60, 44, 60, 84, 66, 148, 71, 71, 78, 45, 76, 78, 65, 64, 51, 60, 58, 60, 47, 49, 57, 91, 52, 64, 68, 73, 60, 65, 86, 62, 91, 56, 60, 69, 81, 62, 75, 68, 69, 72, 73, 66, 74, 63, 60, 74, 65, 74, 73, 99, 51, 69, 69, 57, 63, 55, 69, 64, 64, 87, 48, 65, 69, 81, 70, 74, 85, 57, 71, 67, 66, 70, 54, 48, 93, 62, 64, 43, 51, 67, 58, 72, 62, 69, 37, 51, 73, 63, 71, 67, 53, 64, 53, 66, 67, 68, 66, 54, 73, 68, 68, 74, 55, 55, 63, 57, 56, 74, 65, 78, 70, 41, 64, 55, 61, 75, 61, 68, 98, 65, 61, 76, 55, 56, 72, 59, 46, 61, 65, 69, 63, 77, 43, 55, 60, 111, 58, 73, 60, 57, 58, 58, 54, 74, 41, 79, 58, 85, 59, 60, 74, 66, 92, 70, 57, 61, 71, 57, 73, 54, 55, 61, 50, 57, 56, 65, 78, 67, 66, 52, 71, 64, 74, 63, 54, 61, 59, 57, 46, 76, 67, 53, 72, 64, 54, 83, 79, 69, 71, 74, 56, 80, 62, 53, 70, 70, 54, 47, 69, 58, 47, 76, 51, 64, 60, 70, 58, 52, 68, 62, 57, 54, 67, 53, 60, 64, 85, 62, 71, 80, 88, 49, 70, 65, 63, 38, 86, 78, 75, 49, 59, 64, 55, 70, 84, 83, 65, 59, 76, 89, 84, 65, 38, 54, 60, 56, 70, 61, 61, 57, 73, 63, 54, 69, 44, 71, 71, 71, 99, 56, 74, 56, 64, 45, 59, 75, 72, 63, 72, 64, 83, 63, 52, 60, 61, 89, 52, 73, 64, 63, 73, 44, 69, 69, 55, 63, 83, 63, 64, 109, 89, 57, 66, 63, 64, 60, 60, 62, 68, 65, 67, 77, 68, 42, 70, 68, 59, 94, 70, 59, 65, 74, 80, 99, 58, 73, 72, 68, 76, 64, 62, 79, 53, 56, 65, 70, 61, 61, 54, 48, 64, 62, 68, 61, 56, 65, 76, 77, 80, 62, 70, 60, 84, 74, 85, 60, 75, 80, 61, 64, 68, 57, 67, 53, 69, 62, 70, 60, 63, 62, 68, 52, 62, 53, 62, 75, 50, 45, 81, 58, 76, 50, 51, 56, 92, 55, 72, 57, 58, 58, 65, 55, 72, 53, 68, 61, 68, 110, 85, 57, 67, 89, 70, 43, 88, 56, 94, 59, 61, 55, 54, 64, 73, 67, 62, 66, 58, 75, 66, 59, 44, 67, 78, 61, 75, 53, 72, 56, 71, 80, 53, 52, 73, 74, 71, 62, 60, 62, 51, 58, 62, 65, 69, 70, 71, 75, 81, 64, 48, 77, 77, 56, 65, 66, 65, 67, 76, 70, 56, 62, 67, 34, 59, 70, 78, 59, 43, 70, 54, 52, 68, 74, 52, 71, 66, 66, 76, 68, 67, 61, 74, 67, 64, 67, 59, 79, 47, 56, 68, 60, 50, 61, 50, 62, 85, 67, 59, 92, 50, 88, 65, 79, 61, 62, 54, 43, 71, 73, 70, 62, 47, 55, 64, 51, 64, 77, 83, 58, 75, 57, 66, 60, 72, 45, 80, 54, 58, 66, 63, 79, 74, 64, 61, 65, 68, 68, 62, 56, 60, 38, 65, 60, 73, 61, 63, 71, 70, 61, 66, 55, 71, 65, 65, 51, 80, 69, 56, 59, 64, 72, 74, 83, 50, 56, 47, 59, 54, 54, 86, 77, 98, 56, 82, 64, 101, 103, 87, 46, 82, 97, 66, 64, 48, 71, 72, 75, 64, 64, 71, 67, 67, 76, 69, 66, 65, 66, 60, 65, 68, 49, 57, 115, 61, 76, 71, 68, 57, 50, 81, 58, 68, 83, 62, 73, 88, 68, 57, 61, 60, 57, 86, 76, 56, 73, 53, 86, 57, 75, 60, 66, 61, 59, 73, 46, 66, 77, 82, 64, 51, 79, 74, 49, 54, 72, 59, 89, 77, 62, 113, 84, 59, 109, 73, 50, 55, 63, 54, 67, 60, 60, 59, 74, 57, 88, 71, 65, 83, 72, 76, 71, 70, 72, 80, 53, 70, 56, 86, 64, 55, 63, 52, 51, 68, 68, 55, 74, 67, 66, 68, 57, 71, 58, 77, 60, 47, 80, 55, 71, 82, 66, 74, 62, 60, 72, 46, 63, 45, 71, 68, 71, 70, 61, 69, 82, 55, 70, 60, 72, 56, 74, 64, 65, 61, 67, 65, 59, 74, 70, 40, 54, 69, 70, 55, 79, 61, 75, 73, 64, 49, 40, 55, 65, 66, 58, 69, 48, 60, 55, 75, 48, 63, 60, 61, 58, 56, 65, 74, 64, 64, 59, 76, 68, 51, 71, 67, 61, 55, 58, 46, 68, 94, 66, 70, 75, 71, 60, 58, 117, 54, 54, 62, 57, 77, 61, 62, 69, 72, 63, 55, 58, 70, 77, 57, 53, 40, 57, 57, 55, 57, 60, 64, 68, 57, 61, 80, 75, 79, 56, 74, 65, 76, 56, 64, 55, 94, 55, 59, 82, 65, 47, 57, 60, 68, 56, 45, 120, 48, 64, 60, 61, 65, 63, 63, 81, 58, 74, 67, 69, 53, 73, 72, 59, 73, 80, 67, 49, 89, 67, 61, 83, 61, 63, 57, 71, 61, 88, 52, 48, 80, 68, 56, 67, 61, 75, 83, 69, 70, 88, 90, 55, 77, 52, 59, 56, 63, 73, 48, 70, 62, 67, 65, 61, 56, 56, 52, 45, 84, 69, 65, 68, 57, 61, 61, 44, 77, 61, 66, 80, 86, 69, 57, 54, 69, 80, 54, 58, 58, 47, 65, 52, 79, 50, 46, 88, 59, 53, 70, 72, 75, 70, 117, 55, 72, 57, 74, 71, 61, 55, 72, 61, 72, 68, 63, 60, 59, 60, 62, 75, 109, 55, 68, 72, 101, 83, 82, 61, 60, 90, 74, 49, 69, 78, 67, 65, 82, 64, 48, 60, 64, 65, 58, 65, 58, 67, 60, 55, 88, 50, 117, 78, 51, 72, 94, 63, 77, 54, 80, 67, 62, 72, 78, 89, 51, 57, 67, 61, 62, 55, 81, 54, 49, 65, 37, 62, 50, 63, 56, 80, 61, 69, 72, 100, 63, 62, 79, 65, 66, 69, 67, 73, 88, 59, 58, 65, 101, 53, 63, 82, 72, 57, 53, 73, 67, 68, 85, 51, 41, 86, 65, 73, 74, 62, 72, 67, 78, 55, 49, 63, 71, 98, 51, 68, 56, 64, 66, 69, 48, 74, 69, 53, 58, 82, 71, 58, 94, 108, 70, 64, 60, 80, 68, 59, 51, 76, 62, 72, 59, 65, 50, 68, 65, 63, 71, 70, 52, 63, 76, 48, 67, 55, 98, 73, 65, 69, 74, 40, 57, 71, 63, 49, 60, 59, 76, 65, 56, 66, 70, 71, 49, 71, 61, 64, 55, 71, 53, 52, 76, 60, 55, 74, 75, 64, 85, 64, 54, 71, 72, 54, 53, 59, 77, 66, 72, 70, 73, 91, 77, 66, 78, 58, 72, 66, 52, 58, 69, 79, 76, 67, 77, 51, 69, 89, 61, 60, 57, 71, 63, 61, 58, 55, 47, 47, 44, 76, 82, 69, 64, 63, 65, 55, 60, 97, 66, 60, 67, 62, 73, 64, 62, 51, 65, 82, 68, 69, 71, 69, 68, 52, 56, 75, 67, 58, 53, 52, 52, 61, 59, 57, 68, 78, 59, 83, 89, 69, 62, 71, 77, 59, 57, 67, 72, 68, 63, 70, 68, 54, 70, 63, 69, 64, 77, 81, 68, 54, 55, 73, 86, 86, 59, 68, 94, 90, 75, 68, 66, 65, 82, 66, 55, 56, 75, 52, 102, 53, 55, 68, 54, 77, 53, 66, 60, 54, 78, 64, 93, 66, 64, 56, 45, 68, 45, 74, 57, 52, 46, 91, 75, 73, 52, 54, 48, 64, 72, 71, 72, 68, 72, 76, 82, 52, 63, 49, 58, 60, 67, 45, 62, 65, 57, 60, 59, 63, 73, 59, 64, 61, 66, 91, 77, 67, 48, 73, 97, 87, 69, 53, 79, 68, 74, 74, 49, 57, 81, 69, 61, 58, 67, 56, 67, 62, 62, 56, 61, 49, 70, 55, 63, 61, 59, 66, 70, 65, 76, 61, 57, 63, 90, 59, 57, 76, 53, 78, 75, 50, 64, 61, 67, 39, 55, 57, 47, 64, 69, 70, 64, 60, 87, 78, 75, 57, 66, 47, 64, 64, 63, 74, 51, 62, 76, 70, 53, 47, 57, 55, 61, 66, 68, 65, 61, 74, 77, 60, 50, 67, 65, 60, 73, 57, 83, 73, 91, 77, 44, 59, 72, 54, 79, 62, 57, 65, 51, 51, 67, 54, 67, 52, 54, 78, 66, 56, 46, 46, 95, 62, 57, 69, 58, 68, 70, 90, 71, 50, 56, 60, 66, 64, 95, 49, 68, 78, 66, 74, 74, 76, 54, 73, 51, 59, 46, 61, 89, 64, 50, 51, 65, 51, 59, 60, 69, 81, 68, 67, 67, 52, 69, 72, 72, 68, 49, 67, 73, 67, 67, 67, 39, 68, 75, 59, 64, 47, 91, 63, 68, 76, 65, 29, 66, 49, 63, 43, 58, 72, 61, 70, 86, 66, 70, 76, 75, 44, 57, 70, 69, 58, 81, 45, 81, 77, 68, 59, 88, 73, 72, 77, 66, 67, 63, 55, 73, 69, 75, 64, 66, 64, 72, 68, 78, 71, 59, 84, 63, 74, 87, 59, 69, 59, 104, 71, 35, 78, 70, 75, 70, 71, 65, 79, 50, 58, 58, 47, 72, 56, 75, 60, 51, 59, 57, 52, 51, 79, 51, 69, 88, 63, 80, 76, 81, 64, 80, 85, 48, 58, 67, 68, 79, 60, 62, 83, 47, 57, 66, 52, 54, 71, 58, 63, 85, 67, 65, 52, 77, 73, 72, 72, 57, 71, 67, 120, 79, 57, 76, 69, 57, 62, 81, 61, 65, 75, 63, 62, 71, 64, 57, 70, 77, 72, 48, 66, 117, 102, 82, 51, 65, 68, 64, 47, 87, 55, 74, 66, 38, 76, 58, 60, 59, 74, 70, 56, 80, 70, 82, 66, 68, 53, 73, 109, 60, 83, 66, 97, 78, 63, 64, 51, 43, 80, 67, 85, 108, 76, 67, 68, 70, 60, 60, 74, 68, 60, 47, 47, 55, 67, 58, 68, 58, 56, 56, 62, 47, 75, 74, 71, 56, 75, 52, 41, 64, 63, 44, 94, 94, 54, 96, 86, 65, 101, 64, 68, 61, 82, 42, 62, 56, 57, 45, 76, 67, 96, 67, 66, 77, 81, 70, 68, 58, 64, 111, 59, 81, 54, 86, 75, 64, 58, 80, 64, 66, 53, 64, 55, 63, 86, 68, 68, 60, 61, 71, 60, 68, 87, 66, 68, 47, 74, 56, 73, 67, 58, 63, 75, 66, 63, 51, 99, 75, 47, 78, 72, 71, 52, 53, 75, 67, 57, 71, 69, 62, 80, 37, 56, 78, 53, 46, 53, 69, 75, 64, 46, 56, 91, 52, 42, 65, 48, 59, 62, 46, 60, 67, 48, 71, 77, 80, 99, 68, 69, 79, 56, 51, 65, 60, 73, 69, 60, 61, 46, 86, 64, 38, 56, 50, 66, 70, 32, 83, 60, 60, 65, 54, 60, 49, 87, 47, 54, 81, 62, 73, 61, 82, 53, 79, 49, 71, 64, 49, 45, 51, 65, 60, 61, 58, 75, 63, 59, 40, 68, 69, 86, 62, 80, 55, 53, 91, 67, 57, 67, 50, 55, 89, 68, 58, 96, 44, 109, 52, 60, 57, 61, 83, 75, 57, 76, 44, 78, 55, 62, 74, 69, 61, 83, 53, 68, 57, 62, 58, 86, 65, 92, 72, 60, 83, 70, 67, 58, 58, 73, 48, 73, 64, 78, 76, 60, 56, 60, 51, 66, 59, 71, 74, 67, 52, 56, 67, 76, 67, 57, 56, 62, 45, 69, 58, 64, 65, 88, 74, 57, 55, 70, 58, 33, 72, 56, 37, 57, 59, 79, 61, 54, 60, 80, 83, 67, 73, 69, 73, 68, 71, 72, 71, 63, 63, 46, 53, 58, 63, 52, 62, 73, 72, 113, 59, 67, 81, 70, 117, 65, 76, 67, 62, 61, 65, 65, 47, 97, 83, 76, 58, 65, 59, 62, 60, 76, 88, 75, 62, 64, 97, 104, 45, 57, 68, 83, 76, 74, 66, 66, 61, 64, 55, 63, 52, 82, 55, 54, 43, 64, 66, 64, 71, 53, 88, 62, 100, 57, 46, 79, 72, 53, 69, 58, 58, 59, 60, 72, 63, 80, 65, 57, 73, 71, 67, 69, 68, 71, 46, 45, 50, 64, 66, 61, 65, 65, 37, 39, 51, 77, 69, 61, 65, 82, 99, 68, 78, 53, 58, 59, 51, 57, 136, 76, 68, 76, 65, 88, 49, 81, 72, 84, 57, 73, 56, 88, 78, 67, 84, 98, 64, 52, 62, 59, 77, 78, 59, 115, 61, 34, 74, 73, 65, 69, 80, 80, 60, 64, 64, 64, 75, 61, 78, 96, 73, 75, 49, 65, 49, 59, 75, 120, 69, 73, 69, 46, 57, 57, 54, 66, 72, 86, 75, 65, 78, 33, 58, 54, 80, 57, 86, 69, 46, 70, 69, 64, 64, 44, 61, 87, 70, 75, 59, 76, 67, 34, 43, 73, 56, 65, 60, 62, 82, 48, 53, 64, 58, 50, 77, 65, 45, 61, 45, 60, 69, 52, 77, 54, 54, 52, 70, 65, 52, 69, 55, 78, 72, 71, 75, 68, 62, 67, 70, 73, 74, 64, 54, 79, 64, 80, 52, 76, 47, 63, 58, 48, 69, 65, 80, 62, 99, 65, 59, 54, 66, 34, 50, 60, 74, 89, 71, 78, 80, 72, 64, 69, 61, 73, 61, 73, 62, 58, 60, 60, 58, 43, 65, 85, 63, 58, 55, 57, 59, 68, 88, 69, 57, 59, 70, 54, 98, 62, 65, 64, 60, 62, 55, 92, 84, 50, 37, 67, 39, 52, 59, 70, 84, 78, 57, 77, 80, 76, 71, 82, 73, 68, 54, 48, 88, 105, 59, 60, 67, 61, 59, 63, 59, 61, 49, 77, 90, 70, 62, 64, 52, 48, 46, 59, 61, 86, 64, 64, 95, 48, 56, 60, 61, 66, 89, 73, 76, 81, 78, 101, 88, 75, 65, 55, 70, 69, 62, 60, 74, 61, 55, 56, 60, 61, 65, 56, 69, 70, 83, 65, 64, 68, 58, 69, 71, 63, 79, 53, 66, 64, 46, 83, 74, 62, 100, 71, 79, 50, 61, 56, 85, 62, 81, 69, 58, 50, 75, 73, 49, 63, 55, 86, 71, 60, 64, 44, 68, 62, 46, 54, 76, 65, 51, 69, 64, 57, 76, 67, 51, 62, 65, 65, 65, 87, 66, 71, 83, 64, 59, 59, 55, 68, 46, 55, 62, 74, 70, 73, 77, 76, 95, 111, 79, 62, 60, 65, 84, 43, 55, 82, 63, 61, 74, 67, 74, 38, 70, 62, 60, 82, 68, 58, 61, 63, 95, 76, 70, 66, 63, 50, 73, 54, 76, 82, 94, 61, 83, 61, 69, 64, 84, 65, 61, 68, 62, 54, 65, 59, 57, 51, 84, 60, 50, 64, 64, 45, 107, 66, 93, 54, 41, 66, 83, 107, 58, 42, 65, 54, 54, 62, 88, 69, 68, 63, 62, 66, 57, 85, 56, 73, 58, 44, 140, 50, 78, 70, 67, 48, 63, 56, 65, 56, 85, 109, 57, 53, 76, 82, 45, 66, 71, 63, 58, 64, 60, 57, 48, 62, 52, 58, 67, 65, 55, 64, 72, 67, 64, 52, 61, 54, 60, 48, 76, 58, 84, 54, 63, 77, 84, 59, 89, 91, 72, 50, 59, 49, 70, 74, 53, 51, 92, 62, 83, 58, 29, 51, 54, 54, 75, 54, 57, 71, 70, 59, 51, 92, 42, 75, 68, 60, 90, 60, 57, 59, 78, 64, 55, 51, 47, 73, 60, 51, 63, 70, 58, 67, 56, 71, 57, 65, 70, 50, 48, 69, 76, 60, 47, 51, 91, 64, 60, 45, 51, 69, 70, 44, 112, 76, 59, 57, 62, 62, 80, 47, 62, 85, 75, 45, 68, 59, 64, 63, 66, 62, 51, 55, 48, 74, 62, 55, 77, 77, 56, 48, 49, 59, 94, 69, 70, 68, 73, 60, 90, 54, 110, 55, 56, 78, 65, 52, 68, 52, 58, 85, 58, 66, 85, 61, 74, 80, 83, 56, 96, 82, 79, 63, 82, 55, 52, 58, 84, 87, 61, 60, 47, 64, 63, 70, 60, 61, 55, 62, 80, 77, 70, 60, 63, 60, 70, 100, 62, 73, 60, 70, 63, 81, 51, 62, 69, 77, 68, 67, 81, 69, 59, 53, 69, 64, 71, 73, 42, 56, 50, 66, 67, 88, 88, 60, 53, 78, 59, 47, 64, 43, 60, 70, 29, 75, 40, 51, 51, 50, 68, 80, 63, 104, 109, 55, 79, 97, 57, 69, 68, 67, 68, 63, 43, 70, 78, 80, 89, 41, 53, 74, 98, 87, 78, 54, 69, 48, 68, 66, 74, 61, 92, 80, 54, 44, 96, 66, 63, 41, 52, 55, 64, 65, 56, 91, 49, 62, 67, 51, 39, 59, 75, 61, 74, 37, 52, 70, 49, 79, 59, 54, 80, 65, 48, 75, 53, 51, 74, 64, 44, 68, 59, 87, 55, 87, 70, 77, 56, 81, 66, 67, 81, 62, 55, 80, 46, 73, 63, 74, 48, 60, 70, 65, 61, 64, 64, 52, 98, 49, 68, 63, 61, 70, 56, 64, 58, 79, 73, 52, 41, 72, 53, 51, 71, 70, 55, 59, 69, 68, 72, 86, 59, 69, 70, 55, 79, 67, 75, 55, 55, 62, 67, 78, 64, 62, 51, 52, 77, 66, 61, 67, 78, 57, 68, 57, 49, 50, 66, 76, 57, 73, 55, 74, 68, 60, 85, 54, 71, 62, 72, 80, 65, 71, 53, 63, 76, 78, 90, 55, 110, 71, 48, 62, 69, 48, 64, 61, 70, 65, 77, 53, 57, 76, 65, 68, 66, 74, 84, 74, 34, 67, 28, 77, 68, 55, 60, 89, 64, 82, 56, 55, 51, 45, 77, 63, 45, 55, 62, 53, 59, 80, 53, 53, 64, 57, 52, 56, 68, 51, 83, 55, 60, 79, 44, 60, 56, 69, 74, 73, 62, 67, 65, 57, 43, 95, 43, 59, 67, 60, 65, 79, 69, 66, 56, 69, 69, 72, 76, 50, 71, 62, 71, 96, 56, 79, 71, 52, 106, 77, 58, 69, 75, 69, 57, 67, 62, 57, 61, 87, 65, 38, 76, 73, 63, 75, 115, 91, 80, 64, 69, 70, 65, 57, 58, 81, 74, 58, 49, 92, 63, 78, 71, 86, 68, 61, 57, 56, 92, 100, 45, 69, 80, 86, 68, 71, 43, 78, 63, 94, 66, 72, 40, 59, 82, 60, 77, 75, 54, 59, 56, 64, 77, 57, 122, 68, 60, 67, 143, 59, 74, 72, 53, 63, 55, 63, 75, 72, 91, 60, 56, 57, 72, 46, 63, 62, 63, 45, 78, 56, 64, 72, 57, 51, 71, 67, 64, 66, 48, 64, 72, 109, 86, 74, 51, 67, 61, 46, 71, 59, 41, 70, 53, 48, 71, 84, 77, 81, 77, 65, 73, 77, 53, 81, 50, 55, 78, 53, 67, 71, 61, 70, 43, 74, 78, 137, 59, 52, 62, 52, 79, 62, 58, 71, 67, 52, 63, 77, 76, 60, 59, 100, 73, 65, 54, 51, 51, 60, 70, 55, 88, 56, 43, 70, 52, 55, 58, 60, 71, 76, 62, 62, 56, 64, 90, 57, 57, 74, 91, 89, 80, 78, 69, 77, 64, 64, 54, 97, 64, 71, 62, 57, 78, 52, 44, 80, 103, 79, 71, 73, 51, 68, 62, 70, 71, 65, 81, 61, 72, 76, 65, 63, 86, 63, 61, 67, 82, 71, 72, 43, 71, 67, 67, 53, 77, 65, 62, 63, 74, 82, 53, 68, 56, 68, 46, 51, 62, 70, 41, 76, 54, 99, 57, 81, 60, 65, 82, 58, 70, 65, 45, 61, 72, 54, 78, 64, 84, 72, 76, 55, 57, 84, 66, 63, 50, 93, 68, 64, 79, 60, 38, 48, 51, 68, 67, 64, 80, 43, 80, 70, 65, 64, 54, 57, 76, 63, 72, 52, 43, 71, 63, 82, 54, 68, 52, 61, 78, 57, 45, 68, 77, 63, 56, 57, 61, 55, 59, 59, 63, 60, 68, 68, 57, 71, 64, 62, 98, 108, 62, 71, 61, 98, 76, 55, 71, 64, 53, 54, 58, 41, 74, 72, 60, 56, 46, 66, 69, 56, 67, 75, 72, 67, 56, 62, 55, 64, 81, 87, 67, 74, 47, 56, 88, 68, 63, 50, 69, 50, 85, 65, 58, 58, 75, 61, 71, 58, 67, 61, 51, 70, 73, 57, 52, 65, 66, 62, 64, 43, 70, 68, 49, 68, 73, 54, 60, 72, 85, 54, 80, 47, 67, 65, 61, 57, 70, 71, 66, 66, 70, 74, 63, 63, 68, 93, 64, 51, 76, 61, 81, 60, 72, 66, 62, 33, 68, 56, 72, 99, 67, 119, 71, 80, 73, 44, 57, 89, 43, 51, 91, 55, 60, 82, 80, 70, 50, 64, 66, 84, 84, 57, 47, 93, 94, 101, 68, 66, 58, 72, 57, 53, 75, 73, 75, 47, 63, 67, 64, 52, 76, 73, 77, 53, 73, 45, 53, 65, 76, 65, 61, 60, 65, 45, 82, 44, 85, 61, 79, 70, 78, 62, 65, 43, 72, 52, 58, 58, 60, 63, 44, 55, 63, 51, 60, 65, 67, 66, 67, 47, 68, 59, 72, 89, 43, 74, 92, 72, 63, 66, 54, 66, 60, 64, 72, 82, 88, 41, 75, 67, 83, 68, 52, 84, 92, 48, 61, 45, 96, 46, 56, 68, 56, 84, 94, 55, 110, 68, 49, 60, 60, 87, 81, 57, 72, 62, 61, 61, 69, 73, 61, 90, 83, 91, 56, 63, 46, 75, 56, 69, 46, 75, 84, 70, 51, 59, 58, 48, 66, 82, 70, 45, 79, 72, 63, 50, 66, 58, 53, 63, 63, 54, 80, 64, 61, 47, 62, 57, 64, 73, 60, 68, 69, 58, 72, 67, 60, 60, 68, 77, 53, 64, 52, 83, 58, 67, 67, 66, 59, 55, 82, 51, 64, 72, 70, 75, 65, 65, 98, 65, 74, 65, 59, 68, 50, 58, 45, 49, 60, 61, 69, 62, 64, 71, 63, 49, 64, 43, 43, 65, 134, 48, 70, 52, 65, 69, 53, 61, 58, 77, 52, 65, 69, 67, 59, 70, 46, 66, 56, 47, 59, 76, 62, 54, 51, 72, 61, 84, 103, 64, 73, 68, 53, 67, 60, 80, 42, 68, 72, 79, 60, 59, 71, 65, 74, 64, 63, 58, 85, 65, 46, 44, 59, 80, 50, 56, 80, 87, 68, 55, 66, 61, 69, 75, 94, 55, 67, 68, 64, 73, 107, 63, 73, 57, 65, 71, 61, 56, 52, 89, 55, 74, 58, 60, 64, 64, 52, 66, 54, 73, 65, 67, 77, 68, 57, 58, 82, 58, 53, 60, 80, 51, 57, 77, 69, 66, 72, 52, 63, 69, 56, 57, 80, 77, 63, 58, 53, 52, 45, 58, 91, 69, 63, 59, 64, 61, 58, 113, 65, 53, 63, 64, 53, 84, 76, 62, 57, 66, 50, 59, 73, 39, 51, 64, 54, 76, 58, 44, 78, 78, 66, 51, 56, 45, 53, 59, 57, 71, 71, 66, 68, 60, 66, 62, 71, 70, 87, 68, 75, 68, 55, 65, 52, 64, 71, 69, 71, 53, 90, 59, 60, 84, 60, 58, 52, 73, 57, 56, 61, 58, 65, 70, 98, 57, 66, 61, 59, 44, 53, 67, 69, 65, 47, 63, 53, 56, 58, 57, 94, 60, 66, 59, 57, 90, 79, 58, 56, 79, 52, 71, 87, 60, 66, 75, 82, 58, 66, 60, 60, 85, 60, 70, 59, 73, 54, 63, 89, 56, 65, 68, 70, 60, 65, 52, 68, 52, 45, 71, 84, 39, 77, 66, 62, 82, 66, 51, 66, 65, 56, 56, 59, 57, 67, 77, 64, 60, 62, 72, 62, 69, 71, 52, 57, 67, 58, 54, 47, 80, 71, 57, 90, 68, 63, 63, 51, 70, 52, 84, 60, 48, 52, 83, 69, 101, 43, 74, 105, 73, 69, 58, 58, 122, 53, 76, 68, 64, 82, 70, 53, 85, 47, 81, 70, 56, 65, 56, 89, 69, 90, 91, 73, 56, 65, 83, 59, 68, 42, 73, 57, 84, 54, 72, 62, 74, 68, 52, 56, 62, 74, 76, 81, 58, 57, 55, 75, 70, 68, 72, 59, 76, 65, 88, 49, 89, 64, 76, 60, 64, 64, 46, 80, 108, 67, 72, 56, 51, 71, 67, 57, 72, 83, 65, 65, 82, 80, 51, 55, 72, 59, 46, 79, 79, 84, 76, 76, 65, 66, 55, 73, 67, 113, 80, 63, 45, 79, 67, 75, 56, 55, 55, 42, 60, 149, 55, 78, 55, 58, 48, 67, 68, 59, 58, 68, 69, 65, 66, 85, 37, 52, 71, 48, 76, 62, 72, 82, 100, 56, 80, 56, 56, 30, 53, 90, 68, 52, 80, 45, 64, 69, 48, 46, 59, 55, 68, 58, 54, 46, 67, 73, 64, 122, 71, 62, 74, 67, 66, 58, 67, 67, 79, 57, 47, 67, 81, 76, 59, 78, 68, 70, 69, 34, 67, 82, 66, 74, 52, 76, 63, 63, 33, 56, 63, 58, 65, 72, 60, 54, 100, 70, 70, 64, 62, 60, 60, 70, 56, 49, 46, 55, 41, 53, 75, 66, 102, 71, 61, 59, 72, 58, 63, 62, 59, 57, 71, 60, 70, 55, 40, 62, 84, 57, 94, 68, 53, 52, 70, 114, 51, 74, 68, 63, 62, 57, 70, 54, 63, 60, 77, 70, 54, 60, 56, 72, 60, 61, 86, 57, 71, 47, 63, 92, 53, 75, 70, 65, 90, 67, 67, 64, 57, 61, 46, 78, 56, 79, 67, 77, 94, 65, 46, 53, 79, 55, 96, 61, 53, 62, 57, 56, 80, 69, 53, 95, 65, 58, 55, 80, 58, 52, 69, 60, 69, 63, 66, 57, 81, 65, 54, 67, 62, 77, 57, 81, 62, 62, 73, 61, 101, 54, 60, 66, 68, 52, 55, 86, 114, 64, 80, 68, 72, 65, 61, 61, 77, 49, 66, 50, 70, 62, 66, 61, 60, 54, 45, 102, 63, 51, 76, 56, 69, 84, 62, 92, 68, 48, 54, 75, 89, 57, 54, 65, 105, 93, 83, 64, 58, 52, 75, 50, 61, 57, 77, 69, 54, 61, 92, 62, 107, 113, 59, 63, 78, 82, 69, 53, 72, 53, 89, 46, 64, 58, 54, 76, 75, 71, 58, 65, 75, 64, 67, 61, 71, 56, 63, 46, 58, 59, 79, 69, 61, 64, 98, 55, 51, 73, 95, 60, 71, 48, 72, 63, 74, 57, 90, 81, 53, 41, 88, 48, 58, 59, 59, 62, 78, 61, 57, 50, 67, 62, 68, 50, 65, 99, 68, 109, 57, 61, 47, 70, 65, 57, 54, 69, 53, 85, 70, 63, 55, 49, 78, 80, 76, 89, 66, 71, 66, 111, 59, 85, 68, 61, 71, 65, 76, 70, 89, 66, 69, 68, 69, 63, 69, 95, 77, 66, 60, 66, 59, 57, 70, 62, 54, 61, 60, 69, 47, 54, 57, 70, 138, 72, 47, 48, 60, 51, 55, 56, 55, 58, 77, 56, 70, 60, 68, 52, 96, 73, 87, 53, 49, 59, 85, 100, 69, 47, 65, 67, 48, 58, 77, 61, 74, 62, 83, 78, 43, 73, 66, 85, 98, 72, 63, 88, 66, 104, 65, 70, 78, 57, 73, 54, 69, 73, 59, 68, 64, 64, 70, 62, 55, 61, 86, 46, 55, 49, 67, 83, 58, 94, 61, 57, 60, 92, 69, 67, 52, 36, 56, 68, 64, 61, 85, 55, 52, 48, 57, 62, 68, 60, 62, 53, 75, 58, 99, 59, 60, 80, 66, 63, 58, 75, 77, 75, 52, 81, 65, 67, 52, 60, 55, 76, 75, 67, 56, 50, 75, 51, 70, 78, 81, 68, 58, 59, 85, 54, 67, 83, 77, 94, 55, 100, 109, 73, 71, 72, 75, 57, 66, 80, 52, 70, 51, 63, 72, 64, 92, 46, 60, 61, 60, 45, 73, 57, 61, 63, 55, 43, 67, 64, 54, 74, 75, 55, 76, 73, 85, 90, 74, 94, 73, 67, 61, 64, 79, 59, 69, 73, 86, 65, 58, 53, 58, 63, 57, 61, 58, 79, 63, 74, 72, 49, 51, 73, 81, 69, 50, 82, 61, 78, 55, 53, 64, 62, 60, 85, 59, 69, 64, 50, 60, 60, 63, 64, 63, 62, 67, 68, 48, 58, 56, 78, 73, 52, 74, 64, 61, 42, 69, 66, 66, 55, 63, 71, 66, 84, 55, 70, 76, 72, 63, 46, 56, 55, 76, 65, 58, 64, 60, 63, 66, 100, 65, 48, 50, 68, 61, 88, 56, 60, 73, 61, 73, 63, 51, 80, 56, 68, 70, 40, 118, 61, 69, 113, 48, 71, 57, 50, 65, 67, 70, 68, 49, 77, 65, 58, 71, 65, 54, 62, 43, 101, 84, 76, 77, 75, 69, 65, 67, 81, 102, 55, 71, 56, 59, 59, 65, 58, 73, 46, 62, 65, 59, 67, 70, 58, 57, 85, 88, 62, 66, 56, 59, 49, 53, 57, 67, 67, 66, 49, 71, 95, 72, 54, 63, 71, 65, 79, 62, 77, 73, 51, 49, 78, 82, 70, 72, 61, 80, 71, 54, 68, 77, 69, 58, 73, 91, 70, 59, 64, 62, 56, 76, 61, 73, 82, 80, 69, 65, 72, 57, 36, 71, 55, 53, 69, 64, 63, 60, 64, 54, 76, 67, 108, 78, 74, 56, 57, 69, 76, 50, 69, 65, 110, 65, 59, 69, 100, 60, 73, 60, 74, 81, 55, 60, 54, 60, 58, 69, 91, 55, 73, 42, 68, 47, 79, 71, 59, 71, 55, 65, 59, 53, 65, 57, 41, 66, 42, 66, 76, 76, 72, 55, 47, 96, 67, 50, 71, 90, 77, 70, 59, 70, 92, 56, 73, 45, 46, 63, 68, 73, 56, 74, 73, 52, 73, 59, 58, 50, 68, 63, 61, 44, 68, 69, 79, 50, 80, 54, 44, 73, 70, 95, 74, 59, 72, 61, 39, 53, 65, 62, 66, 64, 46, 55, 52, 65, 62, 34, 59, 60, 57, 78, 52, 99, 67, 51, 63, 76, 44, 60, 77, 58, 75, 51, 57, 46, 54, 44, 49, 82, 66, 81, 75, 66, 74, 81, 73, 66, 55, 70, 90, 75, 63, 40, 61, 84, 55, 77, 72, 70, 103, 92, 67, 55, 70, 32, 50, 56, 71, 71, 62, 62, 66, 90, 62, 70, 64, 58, 65, 61, 52, 66, 89, 62, 65, 74, 64, 67, 64, 86, 62, 52, 56, 66, 42, 53, 62, 70, 67, 53, 67, 73, 70, 50, 33, 59, 56, 69, 60, 56, 40, 64, 64, 54, 59, 74, 76, 75, 79, 79, 67, 77, 60, 49, 52, 109, 61, 86, 62, 55, 56, 63, 111, 55, 74, 69, 63, 61, 69, 65, 83, 65, 44, 74, 73, 52, 46, 63, 57, 69, 58, 60, 70, 54, 54, 65, 70, 59, 100, 55, 50, 55, 73, 68, 57, 48, 122, 64, 46, 65, 74, 54, 70, 60, 82, 56, 86, 64, 68, 73, 69, 72, 60, 68, 70, 74, 66, 55, 87, 82, 83, 77, 54, 58, 93, 70, 56, 62, 65, 77, 55, 65, 90, 43, 68, 43, 71, 35, 69, 70, 47, 52, 94, 72, 118, 69, 62, 88, 74, 55, 79, 77, 64, 54, 58, 57, 80, 64, 68, 58, 63, 41, 60, 69, 64, 58, 61, 69, 66, 67, 67, 61, 72, 67, 58, 71, 66, 54, 77, 50, 96, 85, 60, 64, 52, 71, 80, 48, 69, 48, 48, 77, 68, 76, 67, 93, 91, 46, 59, 56, 66, 60, 49, 69, 47, 59, 85, 48, 82, 60, 80, 48, 63, 80, 78, 101, 61, 67, 52, 59, 65, 59, 58, 55, 60, 74, 56, 58, 65, 62, 51, 98, 59, 66, 60, 77, 55, 59, 61, 71, 58, 54, 72, 68, 53, 55, 38, 74, 67, 54, 73, 55, 43, 40, 50, 70, 69, 100, 61, 84, 67, 127, 61, 56, 81, 56, 54, 90, 54, 74, 51, 68, 70, 55, 70, 63, 66, 73, 67, 54, 74, 64, 82, 56, 65, 52, 64, 63, 74, 52, 85, 69, 64, 55, 79, 64, 64, 42, 80, 58, 60, 46, 60, 69, 70, 62, 70, 57, 78, 65, 62, 96, 77, 58, 47, 70, 58, 102, 84, 62, 76, 55, 49, 58, 54, 87, 58, 63, 63, 69, 71, 71, 75, 55, 62, 70, 85, 83, 36, 62, 59, 68, 52, 51, 74, 86, 70, 51, 63, 74, 63, 105, 69, 66, 55, 52, 68, 59, 71, 79, 73, 68, 58, 60, 68, 80, 71, 79, 60, 87, 63, 81, 59, 58, 70, 39, 70, 59, 68, 66, 71, 87, 57, 67, 84, 70, 58, 83, 50, 84, 56, 68, 81, 46, 50, 88, 44, 64, 82, 81, 61, 61, 91, 74, 59, 58, 67, 73, 82, 60, 59, 71, 51, 55, 66, 59, 62, 64, 62, 71, 48, 49, 71, 68, 82, 58, 76, 78, 60, 59, 47, 56, 76, 57, 70, 67, 54, 59, 76, 62, 56, 71, 61, 64, 49, 89, 56, 78, 63, 81, 80, 67, 55, 66, 62, 76, 61, 85, 55, 44, 84, 60, 71, 46, 71, 64, 47, 83, 97, 85, 69, 65, 62, 53, 61, 65, 66, 60, 40, 53, 69, 67, 70, 118, 76, 53, 106, 69, 58, 56, 57, 51, 56, 74, 48, 69, 64, 97, 70, 62, 38, 53, 83, 45, 60, 74, 73, 80, 32, 61, 63, 53, 72, 67, 56, 68, 61, 78, 89, 60, 68, 70, 63, 102, 80, 49, 60, 59, 68, 70, 81, 80, 75, 68, 74, 83, 75, 47, 70, 78, 59, 61, 72, 70, 63, 83, 51, 55, 46, 82, 85, 69, 80, 61, 71, 54, 33, 76, 63, 57, 48, 80, 67, 64, 72, 89, 60, 71, 70, 61, 61, 56, 53, 70, 52, 54, 67, 98, 66, 71, 96, 88, 62, 53, 63, 71, 98, 50, 73, 43, 62, 66, 48, 70, 69, 70, 71, 62, 58, 68, 73, 80, 66, 66, 41, 61, 72, 54, 59, 54, 47, 74, 80, 65, 77, 58, 53, 90, 75, 50, 59, 76, 56, 62, 70, 75, 79, 67, 76, 95, 53, 79, 58, 47, 77, 60, 53, 72, 63, 74, 66, 66, 66, 67, 56, 87, 62, 49, 66, 74, 55, 67, 70, 52, 57, 99, 53, 43, 71, 75, 61, 40, 55, 66, 75, 55, 97, 64, 49, 69, 67, 69, 72, 76, 68, 71, 67, 61, 59, 61, 72, 69, 53, 74, 77, 78, 66, 56, 73, 62, 49, 89, 53, 62, 99, 54, 60, 83, 83, 80, 71, 76, 53, 65, 64, 78, 53, 76, 60, 58, 48, 60, 77, 58, 56, 79, 56, 69, 74, 62, 64, 61, 74, 53, 83, 76, 76, 61, 71, 53, 54, 65, 77, 63, 51, 65, 51, 57, 62, 59, 70, 48, 50, 65, 60, 60, 71, 63, 60, 63, 57, 75, 44, 75, 66, 59, 53, 52, 70, 46, 65, 91, 49, 61, 40, 75, 67, 64, 78, 71, 71, 78, 72, 43, 92, 69, 80, 63, 57, 96, 63, 62, 32, 61, 78, 60, 76, 77, 41, 70, 50, 89, 44, 79, 56, 77, 66, 63, 50, 53, 53, 62, 79, 82, 66, 35, 78, 70, 64, 56, 70, 85, 67, 84, 83, 76, 55, 66, 55, 78, 55, 64, 61, 54, 69, 66, 67, 62, 51, 61, 60, 49, 45, 72, 64, 71, 54, 71, 95, 88, 61, 48, 72, 76, 54, 87, 68, 60, 101, 80, 88, 73, 78, 75, 72, 54, 62, 63, 59, 54, 80, 50, 53, 61, 63, 71, 95, 58, 61, 41, 51, 63, 79, 64, 63, 62, 100, 63, 84, 72, 60, 60, 67, 64, 49, 74, 62, 63, 59, 57, 81, 66, 82, 48, 37, 57, 71, 61, 52, 65, 76, 53, 75, 67, 44, 52, 73, 48, 58, 44, 73, 97, 58, 52, 67, 54, 46, 58, 79, 57, 47, 67, 51, 59, 61, 59, 76, 72, 57, 71, 74, 73, 65, 67, 52, 83, 42, 93, 77, 89, 56, 71, 76, 66, 52, 75, 55, 53, 68, 67, 78, 57, 73, 53, 59, 90, 56, 66, 84, 41, 88, 59, 82, 66, 57, 72, 62, 46, 55, 42, 69, 51, 67, 58, 59, 60, 63, 64, 67, 65, 66, 84, 63, 61, 52, 88, 83, 82, 60, 57, 89, 49, 80, 62, 52, 64, 63, 72, 62, 84, 62, 55, 62, 52, 47, 65, 66, 73, 75, 67, 59, 110, 103, 62, 83, 57, 50, 82, 60, 90, 53, 63, 79, 64, 89, 135, 63, 93, 42, 66, 58, 69, 65, 63, 76, 63, 72, 78, 53, 62, 53, 81, 66, 80, 81, 45, 126, 64, 63, 73, 82, 70, 72, 53, 55, 67, 63, 43, 77, 62, 63, 73, 52, 72, 51, 55, 66, 88, 74, 86, 62, 129, 86, 66, 70, 69, 53, 68, 60, 108, 42, 58, 60, 47, 69, 71, 46, 58, 90, 68, 49, 62, 96, 51, 57, 69, 57, 47, 73, 64, 82, 63, 47, 77, 59, 69, 58, 74, 72, 63, 69, 59, 72, 57, 64, 70, 66, 52, 71, 57, 120, 52, 55, 75, 65, 57, 63, 67, 54, 60, 62, 40, 87, 65, 75, 71, 59, 54, 60, 71, 51, 68, 74, 77, 82, 62, 68, 71, 64, 44, 93, 60, 51, 77, 49, 52, 71, 94, 72, 70, 66, 53, 51, 68, 81, 55, 64, 57, 115, 56, 85, 68, 81, 54, 59, 78, 82, 69, 93, 60, 103, 58, 55, 48, 76, 74, 59, 58, 52, 58, 85, 59, 85, 61, 48, 65, 79, 56, 67, 46, 56, 74, 79, 56, 84, 53, 57, 76, 47, 65, 101, 53, 54, 58, 54, 59, 70, 55, 79, 43, 77, 79, 65, 63, 66, 69, 42, 75, 78, 63, 62, 54, 67, 75, 99, 67, 58, 71, 53, 73, 71, 102, 47, 42, 72, 55, 59, 49, 58, 65, 58, 97, 56, 72, 50, 138, 75, 45, 47, 82, 70, 59, 60, 70, 64, 88, 54, 64, 82, 64, 51, 82, 66, 68, 81, 56, 63, 80, 56, 67, 71, 87, 75, 75, 52, 44, 70, 49, 51, 68, 50, 64, 72, 89, 72, 56, 55, 60, 56, 46, 88, 75, 65, 62, 59, 45, 50, 66, 81, 68, 61, 65, 81, 62, 59, 65, 54, 85, 56, 58, 61, 28, 77, 59, 51, 77, 59, 58, 65, 47, 86, 56, 94, 64, 53, 90, 58, 81, 39, 54, 59, 89, 63, 44, 54, 78, 52, 76, 81, 50, 59, 87, 51, 69, 67, 79, 47, 69, 73, 62, 55, 73, 50, 65, 49, 75, 61, 69, 71, 70, 98, 84, 73, 49, 94, 90, 46, 71, 61, 60, 66, 55, 68, 76, 59, 83, 66, 72, 63, 63, 59, 75, 92, 73, 47, 73, 63, 50, 59, 67, 82, 65, 107, 56, 56, 72, 62, 66, 63, 59, 51, 74, 69, 71, 61, 89, 98, 76, 52, 83, 71, 66, 90, 89, 56, 49, 70, 62, 66, 66, 82, 78, 105, 55, 77, 62, 73, 64, 64, 33, 63, 46, 84, 60, 54, 64, 78, 53, 61, 71, 65, 76, 63, 64, 106, 86, 57, 60, 61, 61, 59, 57, 67, 52, 65, 70, 71, 56, 82, 74, 77, 62, 69, 64, 71, 53, 89, 64, 68, 60, 66, 66, 56, 65, 61, 50, 60, 75, 66, 62, 76, 62, 74, 49, 68, 75, 56, 86, 72, 64, 56, 82, 58, 55, 59, 68, 55, 67, 59, 66, 47, 55, 42, 48, 60, 51, 73, 66, 64, 56, 72, 53, 77, 60, 49, 56, 113, 49, 63, 83, 52, 66, 79, 60, 61, 73, 38, 49, 64, 72, 61, 63, 68, 75, 63, 67, 64, 80, 67, 61, 50, 54, 71, 63, 58, 70, 58, 51, 87, 84, 56, 58, 53, 71, 52, 68, 71, 49, 48, 99, 82, 64, 59, 74, 70, 61, 76, 51, 67, 67, 69, 56, 84, 52, 74, 49, 69, 61, 40, 85, 68, 50, 68, 47, 62, 86, 56, 55, 64, 71, 73, 61, 77, 57, 68, 89, 48, 59, 60, 117, 81, 65, 73, 73, 48, 60, 56, 70, 74, 67, 68, 50, 66, 79, 59, 80, 83, 48, 53, 65, 44, 56, 55, 60, 57, 74, 69, 54, 77, 101, 57, 62, 73, 70, 59, 62, 71, 63, 65, 52, 72, 62, 68, 50, 71, 60, 59, 79, 76, 60, 46, 69, 60, 73, 55, 60, 85, 61, 64, 79, 56, 63, 66, 70, 75, 58, 73, 60, 47, 56, 67, 52, 59, 54, 75, 58, 65, 66, 69, 84, 59, 67, 54, 62, 42, 59, 60, 57, 57, 53, 51, 62, 61, 56, 76, 75, 54, 64, 58, 68, 53, 55, 92, 60, 55, 60, 50, 67, 101, 61, 60, 72, 60, 53, 58, 50, 52, 61, 56, 62, 56, 64, 65, 71, 60, 70, 104, 63, 55, 54, 45, 57, 109, 57, 60, 56, 51, 60, 60, 60, 76, 55, 69, 64, 64, 55, 81, 72, 87, 59, 72, 56, 67, 68, 71, 52, 77, 40, 60, 60, 38, 60, 66, 76, 64, 77, 67, 80, 85, 66, 43, 65, 68, 55, 95, 70, 59, 56, 52, 62, 69, 58, 85, 76, 81, 60, 74, 63, 87, 119, 80, 59, 58, 84, 56, 70, 36, 73, 63, 59, 43, 64, 66, 61, 67, 62, 60, 62, 62, 61, 61, 66, 75, 53, 65, 98, 68, 63, 68, 50, 62, 60, 64, 64, 67, 71, 59, 75, 70, 67, 69, 61, 68, 56, 82, 46, 61, 52, 70, 74, 59, 65, 63, 59, 67, 57, 62, 65, 84, 67, 46, 60, 104, 86, 75, 46, 72, 56, 76, 75, 83, 84, 84, 80, 67, 87, 97, 58, 48, 64, 73, 65, 50, 81, 64, 63, 54, 65, 63, 72, 92, 53, 62, 66, 74, 77, 39, 65, 70, 80, 80, 62, 92, 59, 96, 61, 64, 68, 80, 68, 60, 52, 71, 72, 67, 53, 57, 68, 59, 45, 74, 62, 67, 63, 80, 75, 56, 88, 62, 59, 65, 59, 79, 73, 87, 66, 52, 60, 60, 70, 70, 54, 57, 70, 50, 65, 72, 70, 65, 67, 67, 69, 66, 61, 61, 70, 78, 57, 58, 57, 82, 76, 52, 65, 72, 62, 62, 64, 57, 63, 54, 82, 65, 75, 69, 65, 63, 51, 67, 84, 73, 48, 60, 62, 55, 46, 49, 92, 59, 61, 64, 68, 60, 65, 73, 57, 69, 46, 63, 55, 62, 103, 53, 51, 48, 51, 55, 64, 64, 65, 74, 58, 57, 78, 78, 74, 78, 62, 51, 66, 72, 61, 67, 74, 68, 55, 58, 45, 113, 62, 85, 73, 58, 71, 52, 90, 69, 59, 88, 71, 63, 71, 88, 36, 46, 54, 72, 58, 61, 136, 56, 79, 56, 63, 62, 64, 51, 104, 56, 58, 66, 77, 60, 56, 58, 55, 122, 69, 65, 67, 63, 60, 50, 63, 52, 66, 58, 73, 55, 72, 71, 55, 67, 61, 65, 74, 65, 64, 70, 62, 76, 88, 112, 94, 62, 72, 68, 61, 77, 81, 69, 72, 73, 89, 60, 63, 50, 50, 58, 68, 51, 44, 61, 70, 70, 76, 59, 67, 69, 64, 53, 73, 54, 68, 93, 59, 59, 80, 49, 56, 59, 75, 46, 76, 83, 56, 64, 49, 66, 34, 70, 57, 98, 45, 127, 65, 65, 62, 70, 72, 73, 56, 57, 53, 81, 74, 71, 70, 55, 60, 52, 79, 51, 62, 60, 59, 62, 102, 90, 77, 68, 63, 49, 63, 52, 75, 57, 51, 70, 54, 61, 79, 65, 63, 61, 52, 65, 63, 64, 55, 62, 61, 119, 64, 67, 119, 103, 80, 73, 72, 82, 71, 63, 64, 112, 65, 67, 53, 59, 59, 65, 63, 67, 72, 48, 49, 58, 60, 51, 50, 65, 61, 55, 73, 55, 60, 66, 65, 47, 103, 54, 64, 57, 62, 78, 47, 55, 44, 37, 67, 78, 65, 85, 70, 52, 60, 65, 59, 67, 70, 62, 62, 62, 60, 60, 69, 58, 71, 67, 65, 61, 59, 68, 104, 65, 88, 62, 47, 98, 55, 66, 43, 55, 60, 62, 103, 48, 53, 52, 119, 70, 58, 56, 62, 69, 65, 43, 64, 67, 76, 58, 59, 58, 70, 59, 59, 71, 84, 82, 67, 70, 55, 82, 70, 69, 85, 54, 79, 73, 42, 53, 53, 57, 57, 56, 76, 58, 59, 56, 58, 57, 58, 62, 93, 66, 41, 65, 71, 66, 65, 55, 61, 67, 70, 77, 85, 70, 67, 54, 47, 59, 50, 48, 65, 73, 59, 72, 56, 67, 79, 63, 72, 82, 51, 71, 49, 64, 65, 75, 97, 66, 73, 85, 55, 58, 79, 73, 82, 71, 71, 58, 63, 65, 65, 83, 64, 52, 74, 68, 63, 71, 57, 57, 53, 52, 78, 39, 53, 56, 52, 50, 63, 70, 55, 54, 74, 64, 58, 79, 70, 59, 62, 69, 65, 57, 61, 56, 51, 63, 57, 66, 75, 61, 64, 64, 74, 67, 66, 69, 98, 69, 67, 62, 58, 66, 64, 69, 71, 59, 77, 79, 56, 62, 57, 57, 81, 63, 70, 71, 71, 73, 73, 60, 95, 41, 54, 108, 72, 60, 60, 76, 67, 62, 71, 73, 55, 99, 74, 69, 60, 74, 53, 65, 64, 56, 57, 72, 72, 77, 68, 71, 65, 64, 61, 61, 80, 52, 75, 50, 39, 63, 54, 65, 81, 73, 59, 60, 57, 49, 61, 65, 65, 85, 74, 69, 76, 65, 92, 75, 70, 53, 65, 59, 43, 73, 62, 42, 67, 77, 66, 78, 84, 73, 60, 63, 64, 114, 81, 74, 69, 67, 74, 51, 64, 74, 68, 72, 54, 64, 56, 59, 70, 73, 56, 90, 85, 65, 63, 65, 52, 53, 60, 60, 73, 48, 54, 67, 51, 66, 61, 89, 48, 62, 78, 72, 61, 59, 56, 63, 68, 61, 51, 61, 63, 79, 66, 51, 73, 59, 64, 121, 78, 67, 53, 56, 77, 69, 67, 69, 73, 61, 52, 68, 74, 62, 79, 59, 56, 59, 66, 51, 64, 67, 79, 61, 71, 67, 69, 85, 71, 82, 60, 57, 64, 61, 74, 45, 71, 54, 67, 56, 52, 60, 83, 70, 66, 66, 70, 63, 75, 71, 69, 59, 71, 61, 53, 50, 55, 59, 75, 55, 56, 72, 70, 66, 66, 49, 61, 73, 62, 64, 61, 76, 70, 70, 60, 87, 67, 60, 71, 61, 75, 29, 48, 45, 57, 75, 74, 66, 92, 95, 58, 74, 59, 61, 57, 48, 55, 68, 73, 64, 58, 66, 59, 78, 52, 86, 87, 79, 59, 81, 71, 94, 64, 63, 76, 63, 61, 64, 61, 59, 70, 73, 68, 49, 59, 46, 66, 66, 61, 49, 76, 68, 63, 53, 57, 60, 61, 69, 67, 62, 63, 63, 58, 102, 78, 80, 58, 50, 57, 58, 57, 68, 51, 64, 63, 54, 73, 66, 55, 60, 67, 58, 63, 58, 75, 47, 63, 66, 96, 70, 55, 90, 70, 50, 71, 62, 64, 62, 61, 68, 56, 67, 49, 50, 66, 63, 50, 71, 71, 107, 61, 80, 57, 66, 61, 59, 55, 83, 52, 49, 54, 79, 61, 64, 66, 67, 64, 58, 57, 60, 58, 63, 71, 57, 70, 68, 77, 55, 64, 73, 80, 61, 69, 51, 75, 78, 55, 57, 69, 56, 66, 70, 67, 48, 71, 71, 64, 64, 68, 71, 73, 60, 67, 82, 53, 82, 55, 59, 61, 65, 38, 101, 76, 86, 59, 70, 80, 80, 65, 58, 55, 68, 45, 54, 69, 61, 69, 60, 79, 73, 61, 87, 67, 67, 52, 70, 48, 54, 38, 64, 69, 71, 52, 74, 74, 54, 63, 47, 68, 62, 78, 72, 64, 65, 70, 79, 66, 55, 67, 64, 74, 63, 76, 70, 68, 67, 58, 76, 61, 68, 64, 59, 64, 63, 62, 111, 88, 74, 54, 64, 57, 55, 63, 65, 60, 86, 89, 63, 75, 86, 68, 53, 47, 65, 58, 74, 106, 66, 71, 80, 78, 70, 81, 60, 59, 71, 61, 39, 78, 50, 56, 64, 53, 62, 43, 73, 59, 70, 70, 76, 66, 70, 63, 71, 73, 70, 65, 111, 67, 72, 53, 63, 61, 64, 68, 57, 59, 65, 66, 97, 57, 56, 68, 63, 64, 45, 55, 57, 75, 57, 63, 72, 79, 57, 65, 81, 69, 51, 61, 64, 59, 61, 54, 73, 47, 53, 54, 69, 93, 74, 63, 65, 52, 97, 71, 57, 66, 66, 74, 63, 43, 52, 78, 58, 68, 64, 65, 67, 60, 53, 60, 70, 76, 55, 52, 88, 75, 55, 71, 63, 71, 71, 41, 57, 74, 54, 68, 40, 52, 58, 60, 75, 64, 50, 85, 63, 64, 67, 68, 61, 58, 54, 60, 53, 64, 53, 81, 54, 62, 62, 45, 68, 56, 65, 61, 54, 66, 66, 63, 54, 58, 66, 64, 58, 88, 64, 54, 67, 80, 81, 59, 77, 62, 51, 63, 81, 111, 62, 60, 70, 79, 54, 139, 54, 78, 63, 85, 52, 62, 56, 53, 60, 65, 68, 49, 63, 57, 61, 55, 121, 60, 60, 61, 45, 68, 53, 80, 78, 63, 56, 54, 58, 57, 67, 73, 58, 68, 77, 62, 68, 63, 57, 62, 79, 88, 60, 84, 55, 57, 58, 59, 92, 70, 66, 76, 50, 100, 67, 63, 69, 48, 66, 59, 61, 57, 65, 47, 70, 74, 58, 65, 62, 73, 64, 72, 63, 66, 80, 66, 59, 88, 68, 68, 70, 64, 64, 57, 61, 60, 69, 55, 56, 96, 57, 73, 116, 58, 125, 78, 78, 45, 62, 66, 67, 51, 59, 41, 61, 48, 60, 71, 65, 61, 59, 64, 56, 69, 64, 53, 83, 91, 59, 60, 59, 68, 57, 67, 58, 51, 59, 36, 57, 63, 73, 59, 36, 62, 63, 64, 56, 48, 37, 65, 62, 64, 123, 60, 67, 136, 56, 81, 75, 56, 85, 72, 86, 57, 77, 61, 79, 48, 68, 61, 68, 59, 56, 65, 58, 71, 62, 58, 48, 67, 74, 60, 71, 63, 49, 53, 68, 57, 60, 83, 55, 71, 72, 78, 47, 63, 66, 57, 73, 70, 70, 51, 63, 34, 40, 59, 75, 57, 63, 49, 58, 52, 59, 55, 67, 55, 64, 65, 68, 67, 65, 62, 58, 103, 55, 111, 55, 67, 91, 65, 70, 55, 56, 73, 67, 50, 68, 58, 51, 115, 52, 61, 64, 61, 71, 60, 72, 75, 48, 71, 53, 52, 78, 76, 64, 68, 55, 55, 79, 63, 68, 61, 65, 62, 61, 75, 66, 81, 55, 55, 54, 50, 58, 66, 68, 74, 58, 71, 64, 45, 64, 66, 66, 85, 79, 68, 79, 74, 52, 53, 72, 66, 61, 57, 96, 87, 73, 53, 57, 66, 52, 46, 65, 61, 71, 59, 68, 60, 63, 84, 70, 72, 56, 63, 62, 73, 81, 53, 67, 74, 59, 59, 75, 68, 59, 74, 66, 60, 45, 69, 62, 56, 99, 61, 65, 116, 106, 68, 67, 72, 62, 55, 70, 71, 62, 57, 61, 59, 59, 66, 63, 54, 57, 47, 72, 66, 64, 60, 88, 60, 71, 69, 64, 78, 65, 70, 64, 58, 53, 58, 71, 65, 59, 54, 66, 68, 66, 80, 63, 94, 88, 70, 65, 60, 70, 57, 105, 71, 54, 96, 92, 57, 57, 51, 49, 65, 76, 60, 68, 57, 114, 67, 56, 70, 68, 76, 67, 72, 87, 60, 58, 53, 61, 71, 74, 50, 73, 53, 63, 76, 76, 53, 77, 70, 73, 60, 60, 57, 62, 52, 53, 70, 98, 72, 84, 67, 60, 61, 81, 64, 74, 71, 58, 109, 69, 73, 73, 66, 41, 52, 64, 64, 77, 78, 60, 44, 51, 67, 80, 53, 71, 59, 71, 62, 64, 54, 64, 55, 63, 52, 66, 87, 63, 65, 65, 95, 102, 51, 56, 67, 65, 77, 75, 69, 80, 63, 84, 66, 65, 60, 62, 56, 61, 67, 69, 56, 81, 58, 58, 62, 64, 60, 62, 79, 66, 60, 63, 100, 48, 72, 91, 52, 78, 106, 52, 67, 67, 59, 51, 60, 80, 50, 91, 85, 71, 86, 51, 56, 65, 72, 79, 65, 77, 65, 57, 63, 62, 60, 65, 83, 55, 63, 89, 63, 61, 79, 64, 57, 57, 52, 62, 55, 58, 76, 63, 63, 59, 63, 62, 48, 62, 58, 75, 57, 64, 46, 57, 57, 57, 59, 73, 63, 59, 64, 53, 64, 73, 71, 79, 88, 58, 69, 54, 85, 70, 57, 72, 59, 71, 62, 66, 65, 79, 67, 66, 78, 63, 64, 54, 63, 61, 51, 74, 77, 61, 44, 75, 56, 61, 63, 70, 62, 77, 59, 77, 62, 76, 62, 64, 78, 70, 69, 89, 56, 58, 63, 74, 88, 66, 56, 79, 54, 67, 78, 69, 72, 46, 90, 78, 77, 70, 62, 58, 53, 60, 56, 50, 70, 63, 70, 53, 61, 58, 79, 62, 92, 64, 47, 47, 58, 50, 55, 66, 75, 57, 50, 58, 71, 82, 46, 76, 73, 73, 54, 55, 65, 52, 61, 66, 58, 69, 61, 66, 67, 66, 60, 70, 51, 69, 66, 66, 55, 53, 60, 79, 48, 67, 56, 50, 53, 67, 59, 49, 63, 57, 66, 57, 90, 61, 85, 55, 64, 62, 57, 81, 58, 59, 67, 88, 71, 55, 61, 85, 75, 58, 63, 108, 58, 58, 56, 71, 56, 60, 68, 64, 67, 66, 58, 69, 65, 63, 63, 70, 66, 63, 69, 59, 73, 110, 54, 61, 69, 56, 87, 67, 74, 67, 70, 50, 56, 76, 53, 55, 51, 83, 56, 67, 69, 60, 51, 74, 56, 65, 54, 72, 51, 57, 58, 62, 70, 73, 52, 103, 64, 72, 68, 78, 73, 67, 83, 62, 74, 65, 50, 68, 74, 57, 83, 62, 59, 56, 62, 54, 69, 64, 58, 76, 49, 63, 77, 63, 79, 71, 71, 50, 81, 53, 61, 79, 58, 76, 71, 64, 101, 62, 70, 69, 57, 71, 63, 57, 64, 54, 75, 60, 78, 73, 56, 43, 50, 59, 55, 111, 73, 64, 71, 108, 63, 64, 49, 62, 65, 72, 88, 71, 75, 54, 67, 65, 90, 67, 45, 55, 55, 68, 73, 72, 80, 66, 68, 91, 56, 60, 64, 86, 69, 67, 62, 82, 57, 91, 59, 57, 62, 56, 67, 87, 55, 53, 46, 77, 64, 71, 61, 65, 58, 66, 71, 62, 65, 64, 77, 53, 77, 74, 59, 58, 56, 66, 55, 65, 71, 57, 55, 70, 45, 63, 62, 86, 63, 67, 63, 58, 66, 60, 50, 75, 70, 37, 91, 44, 42, 75, 87, 71, 65, 60, 68, 54, 71, 71, 75, 68, 101, 73, 68, 68, 68, 65, 63, 85, 86, 67, 49, 64, 52, 46, 74, 74, 77, 73, 59, 65, 55, 73, 74, 81, 51, 73, 61, 51, 61, 78, 70, 74, 62, 50, 60, 76, 48, 72, 67, 74, 69, 65, 77, 59, 59, 69, 98, 58, 58, 46, 80, 61, 51, 63, 65, 74, 81, 72, 74, 52, 62, 69, 60, 70, 60, 52, 49, 58, 51, 49, 96, 73, 67, 79, 66, 66, 73, 67, 69, 90, 69, 50, 99, 65, 51, 53, 57, 60, 63, 80, 133, 60, 114, 65, 77, 65, 65, 53, 64, 74, 60, 82, 68, 53, 58, 56, 85, 84, 97, 54, 71, 68, 64, 61, 62, 64, 81, 62, 52, 52, 90, 68, 64, 73, 64, 62, 71, 38, 53, 80, 62, 66, 71, 128, 76, 69, 75, 61, 66, 57, 62, 55, 53, 58, 118, 47, 83, 83, 43, 56, 85, 58, 50, 60, 56, 61, 64, 75, 64, 57, 54, 70, 75, 43, 86, 55, 82, 72, 71, 55, 55, 65, 60, 63, 57, 63, 62, 80, 66, 89, 53, 77, 62, 58, 53, 140, 73, 58, 65, 62, 62, 60, 64, 54, 72, 50, 58, 80, 64, 83, 70, 64, 57, 72, 73, 60, 87, 88, 79, 66, 52, 60, 65, 66, 52, 87, 66, 56, 65, 65, 71, 52, 92, 54, 49, 59, 58, 61, 57, 68, 67, 67, 52, 124, 56, 93, 50, 48, 68, 43, 61, 77, 59, 53, 65, 50, 57, 56, 66, 64, 70, 83, 55, 50, 64, 59, 65, 100, 47, 58, 66, 48, 68, 55, 60, 63, 67, 61, 55, 84, 103, 58, 59, 63, 57, 95, 61, 63, 54, 65, 68, 55, 67, 64, 45, 92, 64, 87, 50, 69, 63, 65, 69, 76, 59, 72, 76, 71, 77, 80, 66, 52, 68, 77, 45, 52, 67, 75, 59, 114, 64, 54, 39, 77, 70, 52, 55, 54, 66, 58, 90, 63, 67, 45, 76, 60, 80, 49, 56, 80, 63, 55, 68, 69, 47, 61, 72, 59, 87, 76, 75, 55, 63, 56, 72, 77, 107, 89, 84, 55, 56, 63, 77, 58, 73, 64, 82, 75, 73, 68, 49, 61, 66, 73, 61, 81, 60, 54, 66, 56, 51, 49, 56, 65, 53, 65, 57, 72, 65, 54, 73, 71, 68, 62, 52, 79, 60, 67, 73, 47, 81, 66, 75, 74, 58, 50, 53, 75, 77, 59, 83, 60, 51, 78, 67, 47, 80, 50, 65, 55, 66, 87, 69, 60, 74, 62, 52, 70, 58, 67, 68, 62, 58, 69, 53, 61, 71, 66, 60, 55, 76, 51, 51, 68, 76, 79, 84, 74, 56, 63, 65, 56, 68, 41, 67, 91, 63, 73, 52, 51, 84, 64, 70, 64, 65, 70, 73, 69, 70, 55, 54, 49, 67, 54, 74, 66, 60, 120, 71, 73, 73, 59, 64, 78, 57, 74, 66, 58, 69, 66, 84, 66, 49, 74, 82, 79, 66, 119, 55, 74, 69, 55, 53, 66, 66, 74, 53, 84, 58, 67, 77, 54, 74, 69, 65, 67, 63, 83, 69, 57, 57, 59, 71, 70, 60, 55, 85, 85, 74, 51, 81, 58, 59, 57, 60, 55, 64, 87, 91, 59, 63, 74, 75, 115, 78, 49, 46, 68, 71, 113, 57, 63, 56, 56, 68, 75, 55, 63, 61, 70, 55, 66, 37, 58, 77, 51, 63, 56, 76, 76, 59, 70, 74, 64, 66, 59, 62, 52, 77, 55, 61, 55, 101, 64, 44, 44, 93, 68, 66, 48, 59, 63, 61, 54, 63, 63, 76, 76, 76, 64, 79, 96, 58, 65, 85, 47, 54, 81, 63, 61, 53, 62, 58, 68, 56, 70, 61, 54, 78, 56, 85, 65, 59, 42, 50, 65, 55, 88, 72, 71, 75, 68, 61, 52, 102, 73, 61, 73, 65, 64, 75, 76, 64, 59, 88, 69, 60, 64, 64, 72, 55, 100, 60, 83, 46, 78, 74, 69, 96, 67, 56, 58, 54, 57, 41, 63, 65, 64, 61, 54, 73, 55, 55, 52, 66, 66, 56, 96, 57, 65, 60, 55, 82, 68, 103, 86, 48, 56, 61, 58, 78, 71, 80, 70, 46, 61, 83, 83, 65, 64, 65, 68, 58, 59, 68, 73, 63, 60, 60, 60, 96, 77, 62, 84, 67, 61, 68, 59, 73, 58, 62, 60, 56, 55, 57, 82, 75, 74, 56, 61, 62, 61, 70, 61, 50, 64, 64, 63, 53, 69, 53, 65, 56, 56, 92, 50, 81, 47, 83, 54, 69, 63, 66, 61, 60, 70, 52, 66, 50, 63, 65, 59, 66, 70, 64, 55, 69, 76, 65, 65, 60, 60, 69, 77, 80, 68, 50, 53, 68, 45, 98, 55, 61, 65, 63, 68, 71, 60, 62, 69, 63, 85, 61, 62, 63, 49, 66, 63, 58, 49, 97, 77, 67, 63, 81, 90, 61, 68, 62, 72, 62, 91, 87, 68, 65, 80, 62, 90, 77, 77, 60, 70, 54, 118, 63, 76, 55, 53, 61, 65, 58, 70, 67, 73, 74, 64, 68, 65, 51, 61, 79, 62, 63, 48, 56, 76, 61, 82, 71, 46, 76, 35, 34, 92, 51, 70, 63, 59, 72, 54, 54, 77, 69, 54, 55, 76, 46, 75, 47, 78, 84, 82, 62, 92, 80, 53, 70, 76, 90, 56, 52, 72, 76, 52, 48, 62, 72, 74, 56, 57, 62, 45, 63, 75, 63, 43, 73, 62, 65, 76, 63, 69, 74, 81, 57, 61, 73, 56, 66, 51, 64, 56, 84, 81, 53, 64, 50, 51, 45, 61, 55, 75, 59, 70, 79, 66, 63, 64, 62, 58, 82, 57, 50, 64, 104, 65, 70, 105, 75, 73, 70, 64, 59, 57, 99, 88, 55, 52, 73, 57, 67, 72, 51, 76, 63, 51, 69, 63, 64, 54, 76, 61, 58, 58, 51, 95, 57, 75, 52, 55, 74, 74, 65, 51, 77, 82, 65, 102, 62, 48, 59, 56, 73, 62, 79, 69, 63, 61, 50, 57, 59, 97, 62, 61, 51, 67, 67, 79, 58, 54, 42, 66, 57, 61, 61, 58, 63, 76, 55, 92, 48, 78, 78, 66, 81, 58, 59, 98, 49, 59, 39, 46, 58, 75, 64, 45, 66, 58, 82, 55, 93, 74, 74, 56, 93, 84, 83, 59, 91, 51, 47, 53, 62, 68, 75, 61, 57, 71, 67, 83, 65, 69, 63, 58, 70, 74, 61, 66, 67, 62, 101, 68, 75, 58, 70, 56, 71, 69, 88, 76, 50, 64, 80, 53, 53, 71, 115, 63, 64, 54, 108, 68, 49, 61, 93, 57, 45, 67, 66, 59, 65, 73, 51, 63, 75, 54, 60, 63, 49, 56, 59, 64, 48, 67, 81, 62, 67, 77, 72, 40, 49, 66, 63, 66, 92, 67, 60, 60, 41, 67, 55, 69, 55, 99, 145, 48, 55, 60, 65, 59, 56, 73, 54, 74, 73, 82, 93, 68, 67, 68, 77, 48, 60, 47, 95, 82, 69, 50, 36, 65, 69, 71, 55, 56, 58, 65, 86, 75, 68, 55, 55, 57, 69, 80, 61, 64, 64, 76, 71, 66, 60, 56, 57, 75, 82, 59, 46, 75, 84, 60, 73, 65, 60, 74, 108, 59, 107, 60, 61, 56, 71, 67, 55, 64, 71, 63, 74, 71, 66, 72, 65, 55, 50, 51, 71, 57, 63, 76, 52, 74, 60, 63, 63, 54, 47, 59, 42, 70, 60, 111, 56, 55, 70, 70, 51, 73, 70, 56, 56, 60, 56, 68, 73, 53, 67, 69, 60, 85, 89, 68, 65, 88, 88, 77, 50, 36, 78, 49, 56, 75, 59, 67, 73, 59, 67, 81, 67, 52, 50, 59, 69, 59, 70, 66, 61, 77, 59, 118, 62, 65, 71, 58, 45, 62, 45, 93, 64, 90, 62, 59, 89, 58, 57, 67, 64, 62, 52, 61, 47, 54, 49, 82, 69, 64, 60, 112, 50, 61, 99, 66, 82, 60, 54, 79, 69, 75, 84, 64, 64, 113, 67, 65, 57, 53, 48, 68, 62, 71, 62, 43, 59, 75, 56, 105, 64, 72, 67, 69, 79, 91, 52, 74, 63, 71, 61, 72, 71, 67, 65, 55, 74, 56, 75, 60, 57, 78, 83, 58, 67, 61, 70, 70, 53, 72, 78, 65, 63, 68, 64, 66, 57, 64, 64, 73, 69, 68, 70, 68, 65, 56, 60, 56, 95, 79, 51, 56, 63, 65, 70, 71, 90, 62, 69, 68, 73, 64, 60, 79, 66, 62, 84, 51, 66, 78, 69, 75, 67, 60, 60, 87, 64, 59, 70, 74, 80, 61, 66, 52, 64, 53, 80, 53, 65, 54, 79, 60, 42, 65, 56, 66, 64, 60, 68, 65, 63, 61, 75, 49, 62, 77, 54, 78, 51, 58, 64, 60, 53, 67, 58, 72, 77, 50, 66, 63, 63, 59, 74, 79, 50, 66, 63, 61, 56, 49, 57, 79, 65, 103, 70, 82, 50, 72, 52, 51, 82, 52, 57, 54, 70, 82, 61, 62, 58, 68, 67, 70, 64, 70, 68, 62, 54, 50, 57, 67, 56, 60, 58, 70, 67, 70, 76, 54, 64, 60, 58, 72, 54, 59, 63, 74, 60, 116, 65, 66, 73, 56, 60, 59, 63, 69, 79, 68, 68, 66, 107, 77, 70, 62, 57, 71, 86, 103, 90, 61, 66, 79, 64, 54, 51, 58, 63, 109, 77, 71, 76, 71, 58, 63, 66, 64, 66, 53, 68, 69, 38, 62, 52, 96, 50, 78, 46, 41, 72, 122, 114, 68, 89, 53, 74, 54, 57, 94, 55, 55, 66, 61, 58, 79, 58, 53, 50, 69, 57, 85, 61, 53, 61, 67, 49, 59, 65, 73, 54, 59, 68, 64, 58, 70, 68, 67, 63, 102, 45, 58, 62, 78, 91, 41, 58, 69, 68, 71, 62, 58, 84, 68, 49, 66, 55, 70, 87, 58, 68, 43, 61, 72, 60, 69, 67, 84, 75, 77, 58, 58, 62, 54, 66, 64, 114, 76, 54, 61, 66, 64, 72, 74, 57, 74, 70, 86, 54, 59, 65, 63, 55, 64, 81, 70, 63, 47, 61, 77, 61, 65, 63, 67, 64, 52, 55, 84, 44, 73, 60, 70, 55, 50, 73, 58, 78, 44, 66, 57, 66, 47, 47, 66, 57, 53, 67, 64, 50, 69, 69, 62, 64, 67, 56, 70, 64, 74, 61, 71, 69, 63, 100, 53, 53, 65, 55, 68, 54, 63, 61, 66, 70, 67, 67, 82, 90, 62, 56, 65, 55, 67, 64, 77, 63, 57, 47, 62, 83, 64, 77, 50, 102, 51, 60, 56, 64, 88, 74, 65, 58, 60, 82, 83, 73, 92, 52, 57, 56, 70, 118, 41, 65, 61, 64, 73, 74, 71, 63, 67, 94, 53, 72, 49, 85, 72, 56, 48, 56, 58, 59, 53, 49, 65, 52, 85, 70, 57, 62, 77, 69, 72, 62, 54, 75, 65, 64, 56, 59, 62, 77, 67, 57, 64, 64, 68, 60, 65, 73, 58, 70, 68, 65, 68, 50, 61, 65, 57, 66, 76, 66, 68, 69, 49, 56, 69, 81, 95, 49, 81, 60, 58, 71, 71, 53, 75, 81, 82, 68, 68, 63, 66, 96, 76, 59, 56, 62, 68, 59, 53, 48, 67, 70, 114, 48, 100, 68, 59, 66, 98, 54, 63, 69, 91, 63, 61, 62, 40, 67, 77, 72, 74, 66, 71, 64, 60, 66, 70, 69, 46, 55, 58, 67, 51, 67, 70, 62, 71, 69, 77, 58, 63, 76, 45, 67, 52, 74, 49, 50, 65, 66, 61, 64, 71, 50, 84, 43, 56, 60, 80, 71, 64, 89, 76, 51, 69, 109, 62, 54, 52, 87, 61, 73, 78, 74, 61, 58, 87, 71, 72, 68, 64, 89, 60, 74, 53, 73, 70, 56, 94, 49, 58, 60, 52, 61, 77, 58, 70, 67, 70, 58, 82, 71, 86, 71, 69, 67, 67, 72, 65, 60, 52, 62, 74, 50, 52, 67, 60, 62, 75, 59, 68, 41, 59, 76, 88, 54, 59, 73, 122, 80, 61, 61, 62, 75, 83, 119, 72, 84, 41, 56, 72, 64, 71, 60, 43, 74, 53, 60, 75, 101, 48, 62, 72, 76, 64, 71, 81, 66, 77, 54, 51, 40, 40, 53, 67, 64, 54, 62, 84, 55, 57, 62, 49, 59, 71, 63, 71, 67, 58, 57, 46, 54, 57, 68, 44, 52, 77, 71, 41, 77, 77, 66, 70, 64, 77, 67, 66, 54, 68, 59, 109, 59, 81, 53, 69, 80, 45, 60, 72, 76, 73, 58, 62, 53, 59, 85, 81, 69, 67, 67, 67, 76, 73, 61, 56, 98, 46, 62, 112, 76, 64, 51, 55, 54, 72, 61, 68, 78, 54, 78, 88, 70, 73, 67, 51, 68, 66, 54, 62, 63, 53, 81, 55, 50, 84, 72, 100, 63, 61, 42, 83, 57, 58, 61, 59, 67, 69, 77, 43, 59, 60, 98, 65, 70, 52, 81, 79, 64, 66, 54, 48, 61, 63, 69, 50, 50, 56, 52, 94, 67, 78, 70, 71, 66, 57, 76, 49, 95, 66, 53, 64, 79, 62, 70, 71, 62, 40, 48, 64, 71, 55, 51, 55, 73, 77, 125, 82, 67, 48, 78, 64, 73, 47, 51, 77, 52, 61, 64, 72, 66, 70, 90, 87, 67, 58, 55, 95, 50, 55, 79, 81, 63, 72, 68, 64, 55, 53, 61, 83, 58, 56, 57, 54, 78, 68, 53, 68, 71, 92, 84, 64, 83, 50, 78, 74, 55, 75, 57, 62, 89, 54, 68, 58, 70, 64, 70, 56, 86, 62, 54, 63, 58, 77, 70, 83, 72, 77, 68, 69, 75, 66, 72, 49, 46, 62, 64, 70, 63, 63, 80, 75, 54, 66, 51, 77, 28, 70, 69, 64, 75, 122, 78, 54, 44, 68, 58, 63, 62, 59, 50, 41, 65, 47, 51, 68, 75, 56, 74, 66, 64, 61, 79, 69, 67, 75, 57, 54, 64, 66, 80, 83, 61, 68, 66, 69, 76, 58, 32, 65, 80, 55, 64, 45, 84, 47, 67, 61, 63, 118, 65, 93, 58, 81, 66, 55, 59, 67, 55, 63, 58, 70, 48, 56, 68, 73, 55, 61, 63, 64, 52, 80, 57, 79, 50, 63, 54, 63, 42, 50, 85, 62, 65, 61, 60, 41, 58, 68, 70, 65, 75, 105, 50, 54, 51, 57, 60, 76, 70, 67, 66, 72, 49, 47, 52, 70, 82, 51, 51, 56, 69, 78, 72, 71, 63, 79, 68, 66, 52, 73, 41, 73, 51, 55, 64, 105, 74, 66, 90, 50, 74, 71, 79, 69, 64, 52, 94, 63, 64, 50, 50, 92, 58, 75, 58, 70, 68, 61, 86, 58, 57, 66, 60, 71, 68, 101, 64, 56, 43, 44, 52, 52, 61, 82, 65, 67, 33, 64, 69, 60, 64, 77, 74, 59, 35, 53, 54, 50, 60, 63, 70, 61, 45, 63, 54, 70, 61, 71, 57, 56, 71, 66, 95, 60, 48, 60, 65, 55, 67, 92, 56, 78, 46, 61, 58, 71, 67, 57, 69, 68, 52, 63, 58, 109, 63, 62, 80, 65, 69, 40, 64, 65, 58, 80, 60, 43, 69, 60, 83, 80, 61, 62, 68, 119, 74, 50, 53, 63, 64, 77, 52, 57, 72, 67, 60, 57, 55, 81, 47, 58, 77, 77, 72, 63, 61, 78, 63, 64, 90, 65, 63, 71, 49, 58, 63, 62, 60, 91, 52, 64, 66, 62, 72, 72, 57, 56, 80, 67, 80, 67, 67, 69, 74, 80, 64, 64, 66, 58, 61, 57, 63, 70, 72, 53, 56, 84, 60, 81, 70, 63, 76, 54, 105, 137, 79, 72, 70, 51, 57, 66, 59, 66, 53, 94, 60, 39, 51, 75, 57, 50, 80, 64, 74, 60, 64, 75, 56, 76, 69, 79, 75, 89, 42, 69, 85, 83, 30, 70, 68, 54, 72, 72, 59, 65, 59, 63, 65, 69, 76, 108, 78, 66, 57, 60, 71, 95, 55, 76, 55, 64, 62, 63, 45, 52, 58, 75, 58, 77, 59, 59, 81, 61, 70, 68, 49, 47, 52, 64, 67, 54, 64, 55, 70, 68, 80, 79, 64, 61, 84, 69, 51, 42, 100, 64, 55, 70, 79, 64, 71, 64, 60, 70, 54, 65, 67, 67, 74, 87, 60, 76, 87, 71, 74, 77, 74, 54, 85, 50, 54, 60, 61, 77, 63, 67, 65, 53, 77, 50, 65, 64, 69, 61, 86, 92, 62, 88, 71, 72, 59, 77, 75, 93, 61, 79, 70, 58, 67, 54, 52, 70, 61, 68, 49, 64, 54, 55, 57, 74, 40, 65, 75, 91, 54, 53, 44, 77, 64, 55, 55, 63, 73, 42, 77, 74, 52, 44, 93, 57, 61, 73, 72, 58, 46, 93, 71, 55, 80, 67, 68, 101, 57, 65, 71, 66, 65, 71, 59, 41, 41, 64, 55, 71, 55, 68, 68, 46, 73, 79, 68, 57, 65, 65, 71, 68, 76, 47, 59, 74, 59, 98, 59, 74, 43, 66, 95, 71, 71, 52, 74, 60, 80, 78, 50, 72, 49, 79, 68, 62, 62, 46, 51, 55, 59, 68, 70, 59, 59, 75, 55, 105, 74, 42, 70, 60, 84, 92, 56, 66, 65, 47, 41, 68, 65, 59, 57, 59, 54, 61, 56, 65, 59, 52, 68, 52, 61, 80, 64, 69, 75, 78, 58, 70, 73, 62, 66, 61, 77, 54, 56, 78, 68, 74, 64, 100, 63, 55, 63, 61, 55, 77, 58, 57, 75, 63, 54, 49, 70, 54, 55, 61, 63, 63, 69, 54, 82, 71, 59, 84, 43, 74, 74, 66, 58, 83, 67, 56, 67, 55, 58, 43, 74, 56, 65, 82, 59, 69, 61, 51, 64, 52, 48, 77, 53, 58, 73, 95, 67, 48, 70, 66, 70, 74, 56, 89, 56, 58, 80, 66, 63, 67, 58, 54, 54, 66, 74, 73, 49, 70, 61, 72, 55, 68, 62, 80, 58, 48, 74, 91, 63, 73, 95, 75, 51, 81, 87, 58, 67, 65, 63, 69, 70, 70, 67, 78, 73, 51, 85, 57, 55, 62, 52, 63, 67, 62, 67, 62, 91, 73, 49, 95, 58, 59, 57, 57, 66, 94, 63, 61, 64, 58, 58, 66, 57, 65, 72, 61, 56, 58, 57, 81, 83, 73, 69, 58, 61, 61, 65, 45, 87, 108, 81, 74, 61, 113, 66, 52, 42, 74, 50, 59, 96, 63, 63, 73, 68, 58, 72, 64, 73, 49, 53, 66, 71, 60, 87, 57, 64, 61, 74, 63, 58, 82, 71, 51, 80, 62, 57, 77, 64, 68, 52, 72, 43, 76, 72, 63, 69, 74, 51, 79, 52, 64, 66, 76, 64, 57, 64, 55, 63, 59, 43, 73, 64, 64, 90, 44, 56, 67, 80, 65, 57, 58, 70, 83, 63, 98, 52, 79, 57, 58, 72, 52, 58, 86, 84, 80, 60, 65, 51, 74, 76, 76, 59, 58, 54, 55, 67, 79, 63, 72, 100, 74, 60, 37, 99, 59, 62, 65, 77, 51, 70, 73, 66, 66, 59, 75, 47, 63, 52, 54, 56, 64, 66, 76, 58, 71, 86, 43, 54, 48, 64, 73, 71, 67, 57, 95, 67, 84, 54, 54, 72, 87, 93, 90, 78, 65, 101, 65, 77, 71, 63, 66, 50, 62, 71, 54, 64, 63, 60, 61, 54, 69, 43, 89, 69, 75, 57, 79, 66, 71, 82, 52, 73, 74, 60, 60, 48, 72, 56, 65, 48, 74, 85, 62, 42, 55, 55, 56, 59, 71, 148, 70, 99, 63, 57, 66, 55, 73, 73, 57, 77, 78, 75, 56, 66, 66, 74, 80, 72, 52, 72, 107, 59, 71, 55, 68, 71, 59, 56, 67, 66, 70, 79, 59, 46, 61, 53, 74, 76, 71, 65, 66, 84, 123, 91, 64, 93, 45, 67, 55, 64, 55, 69, 69, 88, 58, 75, 62, 48, 58, 48, 73, 86, 51, 72, 62, 69, 55, 60, 72, 72, 69, 84, 70, 63, 66, 79, 48, 83, 62, 68, 46, 53, 52, 56, 56, 83, 37, 73, 68, 59, 70, 40, 79, 50, 112, 63, 57, 60, 76, 71, 72, 64, 57, 58, 47, 58, 77, 72, 56, 98, 69, 58, 41, 58, 53, 85, 86, 82, 92, 76, 75, 70, 54, 72, 74, 52, 79, 63, 56, 45, 64, 120, 61, 66, 77, 61, 75, 39, 66, 67, 62, 63, 123, 66, 73, 54, 61, 68, 64, 78, 74, 82, 67, 54, 54, 46, 74, 59, 52, 57, 94, 61, 77, 79, 70, 66, 75, 69, 72, 52, 71, 70, 58, 97, 65, 60, 54, 55, 72, 53, 55, 61, 54, 61, 91, 62, 57, 63, 35, 53, 66, 66, 67, 63, 65, 54, 50, 73, 76, 72, 62, 65, 97, 63, 59, 76, 68, 84, 76, 65, 74, 64, 62, 52, 55, 65, 72, 48, 86, 55, 57, 59, 55, 54, 77, 92, 59, 62, 56, 86, 59, 50, 66, 68, 74, 56, 80, 50, 69, 57, 81, 60, 63, 80, 63, 58, 77, 91, 78, 57, 77, 55, 70, 67, 56, 96, 62, 76, 47, 40, 76, 72, 48, 76, 75, 51, 55, 54, 78, 60, 71, 55, 59, 61, 68, 66, 65, 76, 77, 67, 67, 75, 59, 65, 63, 63, 55, 64, 52, 63, 41, 63, 72, 65, 78, 65, 63, 63, 64, 68, 61, 62, 62, 55, 88, 54, 95, 59, 65, 83, 56, 85, 39, 58, 72, 77, 68, 60, 51, 75, 57, 78, 78, 54, 57, 52, 46, 62, 54, 65, 56, 63, 75, 63, 55, 78, 75, 61, 56, 69, 69, 73, 57, 41, 72, 50, 63, 57, 76, 65, 70, 94, 58, 60, 56, 60, 68, 69, 76, 71, 77, 66, 48, 105, 60, 75, 81, 61, 57, 64, 82, 57, 56, 61, 80, 61, 90, 76, 42, 58, 66, 62, 78, 58, 61, 66, 61, 52, 58, 54, 58, 64, 43, 100, 61, 64, 125, 59, 79, 70, 52, 68, 60, 62, 66, 57, 103, 66, 56, 54, 60, 60, 69, 45, 51, 68, 47, 74, 59, 53, 44, 74, 67, 58, 62, 79, 50, 61, 58, 93, 62, 79, 67, 73, 54, 64, 79, 69, 64, 57, 71, 53, 125, 91, 69, 43, 44, 98, 78, 67, 78, 58, 56, 59, 61, 52, 59, 66, 84, 54, 54, 78, 69, 85, 54, 62, 81, 74, 80, 74, 76, 93, 44, 85, 66, 52, 59, 68, 69, 57, 65, 101, 88, 64, 57, 139, 57, 56, 80, 67, 69, 96, 70, 58, 71, 58, 75, 72, 68, 56, 63, 70, 49, 92, 88, 78, 69, 76, 43, 84, 59, 47, 60, 45, 68, 62, 64, 53, 56, 65, 50, 66, 63, 55, 72, 73, 89, 63, 57, 65, 69, 65, 53, 75, 84, 80, 56, 64, 66, 51, 42, 62, 50, 57, 54, 57, 52, 63, 69, 52, 91, 59, 68, 61, 54, 47, 71, 77, 68, 58, 70, 69, 68, 55, 78, 70, 61, 58, 56, 97, 57, 70, 65, 73, 70, 52, 88, 64, 62, 75, 62, 66, 83, 49, 62, 68, 67, 64, 73, 44, 65, 55, 53, 72, 58, 63, 97, 68, 62, 67, 64, 47, 61, 58, 68, 65, 63, 66, 54, 57, 88, 52, 116, 76, 61, 57, 77, 64, 59, 57, 75, 47, 70, 74, 87, 53, 87, 63, 58, 69, 55, 54, 55, 45, 41, 87, 57, 56, 52, 53, 81, 52, 65, 86, 47, 84, 71, 54, 72, 70, 98, 71, 45, 86, 72, 66, 57, 56, 65, 86, 83, 71, 98, 70, 88, 72, 56, 72, 42, 65, 41, 66, 46, 56, 58, 75, 65, 70, 61, 92, 50, 52, 57, 70, 63, 59, 60, 46, 59, 75, 84, 63, 72, 60, 63, 55, 59, 62, 55, 91, 53, 62, 56, 61, 47, 59, 68, 43, 62, 54, 121, 69, 82, 77, 96, 42, 65, 54, 76, 81, 83, 91, 89, 53, 66, 65, 85, 55, 84, 72, 62, 69, 57, 77, 63, 60, 61, 72, 66, 51, 65, 58, 55, 71, 93, 53, 78, 55, 62, 68, 81, 41, 95, 62, 56, 56, 64, 77, 60, 75, 80, 57, 70, 72, 84, 69, 78, 65, 92, 65, 55, 72, 51, 93, 64, 81, 76, 99, 71, 54, 61, 56, 54, 63, 74, 58, 44, 58, 74, 73, 79, 51, 65, 73, 67, 68, 58, 60, 69, 108, 70, 56, 75, 56, 70, 109, 69, 43, 65, 55, 58, 79, 66, 63, 63, 68, 79, 58, 60, 41, 48, 55, 61, 68, 50, 67, 57, 52, 63, 63, 62, 70, 52, 54, 81, 75, 91, 85, 76, 76, 75, 59, 60, 94, 54, 61, 89, 63, 56, 80, 88, 51, 61, 70, 55, 53, 91, 55, 64, 48, 67, 43, 60, 70, 65, 69, 67, 65, 63, 61, 95, 67, 64, 67, 90, 59, 59, 57, 76, 42, 44, 61, 53, 66, 53, 72, 70, 78, 68, 66, 69, 51, 38, 67, 64, 53, 75, 73, 66, 76, 51, 76, 60, 70, 55, 75, 59, 57, 81, 64, 64, 68, 67, 76, 53, 64, 75, 50, 87, 51, 51, 55, 66, 48, 77, 65, 71, 69, 65, 89, 55, 51, 64, 57, 83, 89, 88, 64, 69, 69, 75, 49, 67, 90, 54, 55, 57, 62, 83, 64, 69, 57, 59, 50, 72, 80, 62, 50, 58, 91, 80, 53, 84, 78, 66, 70, 67, 67, 82, 60, 78, 59, 45, 53, 62, 88, 66, 72, 47, 82, 64, 44, 60, 66, 93, 54, 60, 59, 78, 59, 69, 67, 88, 63, 55, 61, 65, 68, 42, 35, 80, 75, 78, 67, 77, 79, 47, 53, 65, 53, 63, 49, 65, 55, 62, 72, 73, 117, 72, 48, 59, 56, 58, 116, 64, 75, 60, 64, 47, 57, 54, 54, 79, 49, 69, 74, 43, 54, 60, 74, 95, 55, 74, 64, 89, 87, 59, 66, 69, 40, 59, 74, 58, 47, 58, 47, 82, 66, 58, 65, 65, 66, 54, 50, 65, 83, 67, 63, 52, 97, 50, 72, 82, 56, 82, 90, 65, 71, 73, 46, 59, 51, 53, 72, 79, 89, 67, 49, 54, 64, 57, 67, 85, 53, 69, 65, 78, 49, 54, 73, 73, 79, 53, 72, 61, 50, 60, 62, 82, 57, 79, 59, 48, 99, 58, 77, 101, 68, 139, 67, 47, 47, 56, 65, 64, 57, 56, 49, 61, 61, 57, 55, 72, 57, 69, 54, 98, 83, 51, 63, 60, 92, 82, 72, 52, 62, 62, 66, 57, 44, 59, 37, 80, 55, 66, 88, 62, 65, 57, 67, 66, 92, 82, 58, 74, 58, 115, 57, 103, 83, 71, 68, 77, 62, 53, 84, 82, 56, 87, 53, 79, 58, 62, 79, 62, 56, 97, 51, 58, 54, 59, 55, 45, 61, 43, 76, 80, 105, 44, 79, 74, 47, 56, 46, 72, 45, 48, 61, 85, 52, 54, 65, 103, 65, 57, 50, 69, 60, 44, 67, 70, 93, 62, 57, 59, 70, 45, 64, 46, 54, 58, 77, 79, 69, 85, 57, 62, 74, 64, 80, 58, 73, 99, 58, 78, 63, 49, 59, 59, 73, 62, 57, 72, 77, 69, 59, 61, 74, 83, 72, 60, 83, 58, 72, 85, 85, 67, 60, 71, 59, 83, 40, 72, 56, 80, 82, 53, 59, 77, 67, 62, 53, 52, 65, 49, 72, 65, 81, 62, 58, 57, 84, 63, 63, 80, 52, 50, 61, 59, 50, 76, 67, 62, 70, 71, 67, 65, 62, 82, 81, 34, 56, 46, 66, 64, 50, 82, 47, 56, 56, 74, 77, 59, 69, 50, 58, 73, 45, 62, 80, 87, 66, 65, 76, 67, 72, 87, 42, 67, 80, 56, 52, 52, 90, 52, 81, 92, 42, 58, 52, 95, 55, 75, 74, 61, 79, 60, 74, 78, 54, 47, 81, 58, 74, 60, 73, 72, 67, 63, 67, 82, 70, 75, 60, 64, 67, 65, 59, 78, 44, 48, 64, 39, 41, 86, 53, 75, 66, 58, 73, 77, 65, 57, 51, 71, 70, 55, 65, 96, 72, 92, 48, 61, 74, 75, 51, 80, 59, 60, 70, 54, 64, 47, 62, 85, 73, 62, 66, 32, 105, 144, 72, 65, 90, 76, 64, 52, 69, 78, 63, 108, 66, 44, 49, 63, 62, 66, 70, 69, 62, 50, 55, 78, 59, 66, 49, 64, 70, 58, 66, 43, 79, 82, 126, 76, 38, 62, 91, 73, 52, 62, 64, 77, 46, 59, 53, 75, 71, 62, 61, 72, 68, 71, 56, 56, 66, 50, 66, 56, 63, 64, 59, 74, 61, 61, 86, 60, 61, 72, 64, 100, 48, 61, 66, 81, 89, 76, 80, 51, 65, 61, 51, 71, 53, 76, 69, 67, 49, 83, 100, 66, 54, 66, 70, 47, 72, 52, 85, 66, 58, 68, 40, 56, 68, 71, 56, 59, 95, 63, 67, 67, 78, 46, 45, 65, 38, 79, 55, 80, 77, 69, 77, 59, 56, 63, 64, 78, 71, 67, 66, 86, 58, 57, 75, 71, 55, 80, 79, 95, 80, 76, 38, 66, 56, 49, 80, 70, 67, 52, 82, 62, 53, 76, 67, 59, 67, 76, 70, 48, 46, 90, 83, 57, 53, 85, 54, 56, 65, 60, 52, 60, 61, 50, 93, 67, 54, 92, 67, 63, 55, 75, 60, 49, 79, 51, 66, 95, 52, 59, 52, 58, 61, 69, 78, 58, 51, 69, 65, 60, 54, 49, 87, 46, 71, 69, 57, 64, 47, 64, 68, 53, 52, 59, 56, 51, 63, 95, 93, 60, 61, 69, 75, 56, 76, 53, 70, 57, 70, 71, 59, 78, 73, 51, 56, 63, 55, 72, 58, 66, 63, 53, 74, 101, 62, 72, 48, 65, 87, 71, 74, 65, 89, 81, 54, 56, 76, 57, 58, 67, 61, 42, 70, 55, 64, 50, 82, 55, 53, 45, 78, 76, 64, 75, 53, 47, 60, 90, 71, 64, 66, 65, 60, 71, 66, 63, 60, 68, 70, 83, 55, 72, 57, 56, 75, 48, 61, 87, 49, 53, 72, 68, 62, 64, 67, 73, 58, 61, 85, 49, 54, 49, 55, 79, 112, 102, 69, 86, 76, 68, 60, 96, 55, 60, 44, 57, 73, 47, 51, 55, 59, 71, 58, 87, 64, 62, 73, 82, 71, 57, 77, 48, 49, 58, 82, 73, 73, 63, 66, 55, 70, 67, 58, 61, 57, 57, 42, 92, 70, 57, 57, 59, 43, 70, 58, 76, 65, 56, 64, 93, 55, 69, 54, 54, 73, 70, 75, 61, 105, 68, 55, 64, 96, 64, 70, 80, 48, 68, 56, 56, 63, 60, 54, 51, 65, 81, 60, 68, 57, 65, 67, 65, 64, 74, 82, 83, 54, 73, 65, 64, 65, 69, 63, 78, 51, 52, 81, 69, 62, 70, 60, 98, 51, 54, 56, 55, 60, 57, 71, 45, 68, 61, 63, 65, 57, 73, 69, 59, 63, 72, 67, 104, 73, 75, 69, 59, 64, 61, 77, 84, 73, 55, 90, 70, 94, 76, 51, 91, 67, 89, 60, 71, 72, 60, 69, 58, 47, 69, 68, 69, 60, 76, 62, 56, 69, 51, 56, 59, 68, 75, 60, 77, 54, 106, 60, 55, 61, 75, 56, 59, 52, 71, 67, 61, 56, 54, 49, 53, 70, 49, 57, 80, 65, 70, 77, 55, 83, 55, 87, 56, 68, 80, 76, 97, 49, 79, 81, 67, 74, 75, 53, 71, 56, 90, 42, 70, 59, 70, 76, 56, 69, 47, 85, 64, 102, 75, 48, 71, 47, 82, 84, 61, 56, 66, 55, 75, 62, 65, 110, 61, 64, 72, 71, 92, 65, 57, 58, 47, 71, 62, 63, 67, 61, 64, 82, 70, 78, 57, 66, 67, 69, 68, 80, 74, 76, 54, 60, 56, 74, 83, 89, 77, 49, 69, 94, 54, 49, 60, 64, 61, 59, 71, 69, 46, 55, 64, 66, 82, 52, 48, 50, 91, 61, 76, 50, 56, 52, 64, 72, 83, 59, 66, 62, 61, 54, 32, 55, 71, 70, 63, 71, 59, 50, 51, 61, 59, 73, 82, 106, 42, 77, 60, 58, 66, 56, 58, 49, 85, 80, 87, 49, 70, 62, 62, 66, 106, 63, 57, 72, 64, 76, 53, 61, 55, 75, 56, 62, 46, 50, 66, 87, 61, 63, 53, 53, 60, 66, 63, 63, 81, 56, 95, 89, 65, 82, 53, 51, 75, 78, 69, 64, 55, 75, 73, 66, 68, 63, 50, 73, 94, 105, 72, 73, 70, 71, 51, 61, 63, 77, 73, 85, 82, 78, 58, 72, 68, 48, 76, 71, 56, 56, 56, 63, 61, 70, 55, 79, 65, 64, 53, 61, 90, 78, 114, 57, 51, 105, 66, 58, 64, 62, 49, 67, 87, 55, 65, 54, 62, 54, 54, 67, 66, 48, 69, 68, 99, 48, 85, 57, 64, 78, 75, 62, 78, 63, 46, 70, 69, 53, 67, 61, 57, 51, 69, 66, 50, 62, 69, 57, 77, 70, 121, 47, 50, 101, 109, 53, 63, 80, 66, 58, 67, 75, 79, 86, 74, 70, 52, 76, 68, 52, 80, 59, 63, 79, 66, 68, 52, 62, 81, 54, 61, 95, 63, 100, 64, 48, 82, 68, 54, 77, 65, 47, 79, 65, 64, 68, 68, 82, 48, 53, 60, 69, 62, 65, 66, 76, 62, 59, 79, 60, 63, 77, 79, 76, 84, 54, 58, 59, 67, 59, 67, 125, 62, 67, 71, 47, 77, 68, 51, 81, 73, 46, 65, 65, 45, 45, 63, 50, 62, 55, 51, 61, 82, 64, 49, 67, 52, 48, 59, 76, 53, 57, 60, 76, 78, 71, 75, 67, 63, 72, 44, 72, 76, 65, 66, 46, 74, 58, 57, 70, 43, 85, 49, 62, 66, 62, 50, 80, 80, 65, 55, 58, 72, 94, 57, 66, 62, 61, 89, 56, 48, 63, 73, 77, 63, 58, 54, 47, 79, 47, 72, 66, 75, 55, 61, 65, 60, 48, 72, 64, 59, 87, 70, 62, 91, 56, 77, 75, 59, 83, 105, 54, 55, 60, 73, 79, 57, 61, 61, 78, 104, 71, 66, 63, 99, 75, 71, 67, 47, 78, 69, 69, 67, 48, 54, 66, 55, 83, 55, 38, 67, 95, 59, 60, 65, 59, 65, 71, 63, 62, 60, 61, 63, 71, 69, 51, 75, 63, 79, 68, 76, 44, 61, 69, 48, 53, 56, 81, 63, 66, 54, 73, 82, 70, 93, 52, 57, 82, 69, 86, 49, 59, 67, 66, 55, 72, 65, 75, 87, 88, 60, 72, 66, 85, 126, 68, 53, 58, 54, 63, 54, 62, 47, 57, 101, 62, 62, 64, 87, 67, 52, 63, 64, 55, 55, 78, 67, 55, 72, 63, 84, 72, 70, 61, 50, 75, 76, 65, 73, 62, 67, 80, 55, 49, 68, 68, 69, 63, 60, 43, 66, 96, 53, 69, 69, 63, 69, 56, 56, 65, 51, 62, 71, 65, 78, 67, 67, 59, 60, 71, 75, 76, 79, 53, 83, 88, 55, 70, 55, 85, 72, 67, 57, 75, 82, 65, 61, 60, 76, 68, 50, 70, 63, 105, 50, 61, 66, 55, 59, 69, 60, 61, 100, 69, 75, 63, 66, 59, 49, 68, 66, 111, 57, 68, 47, 58, 69, 51, 48, 65, 90, 59, 82, 84, 67, 48, 56, 55, 85, 95, 65, 74, 50, 73, 74, 46, 84, 62, 65, 71, 47, 52, 76, 67, 60, 79, 45, 76, 74, 44, 77, 87, 49, 60, 67, 66, 80, 52, 70, 73, 70, 61, 73, 64, 78, 61, 85, 51, 65, 58, 62, 73, 77, 52, 67, 60, 59, 98, 68, 76, 71, 74, 72, 54, 77, 64, 73, 53, 62, 54, 95, 62, 64, 67, 76, 63, 55, 73, 70, 40, 46, 57, 62, 53, 55, 57, 42, 91, 75, 65, 85, 69, 78, 65, 75, 67, 70, 50, 75, 73, 73, 93, 49, 54, 76, 69, 50, 51, 68, 60, 70, 81, 71, 76, 66, 90, 52, 56, 68, 56, 58, 80, 64, 61, 57, 69, 94, 59, 86, 60, 59, 55, 80, 61, 75, 73, 93, 57, 75, 106, 64, 58, 68, 60, 61, 75, 56, 86, 52, 66, 67, 55, 52, 73, 77, 57, 93, 65, 66, 58, 60, 70, 73, 52, 57, 74, 56, 80, 73, 57, 72, 58, 78, 62, 70, 60, 65, 85, 74, 67, 72, 63, 75, 93, 61, 67, 45, 58, 70, 53, 81, 67, 76, 65, 50, 66, 95, 68, 79, 48, 64, 64, 89, 48, 65, 65, 55, 74, 52, 79, 69, 74, 60, 47, 71, 64, 91, 72, 49, 54, 63, 62, 57, 82, 47, 59, 53, 71, 62, 60, 58, 51, 63, 86, 68, 72, 67, 45, 62, 53, 76, 58, 79, 82, 75, 71, 57, 65, 66, 72, 71, 67, 94, 58, 52, 69, 60, 80, 56, 86, 75, 83, 72, 52, 82, 72, 62, 51, 83, 48, 73, 57, 71, 69, 52, 59, 47, 55, 55, 65, 58, 59, 61, 74, 67, 64, 64, 56, 81, 57, 86, 67, 50, 101, 69, 41, 58, 64, 54, 55, 73, 53, 63, 70, 77, 57, 65, 36, 68, 63, 57, 74, 58, 75, 68, 71, 73, 55, 57, 54, 47, 87, 68, 61, 110, 62, 73, 66, 59, 87, 72, 77, 85, 73, 79, 80, 58, 74, 75, 69, 42, 47, 64, 51, 58, 99, 76, 58, 69, 72, 59, 84, 77, 62, 60, 66, 71, 60, 43, 66, 65, 118, 78, 53, 49, 75, 79, 61, 60, 64, 104, 71, 64, 69, 65, 52, 42, 60, 63, 65, 46, 44, 76, 62, 60, 59, 53, 86, 76, 71, 70, 60, 58, 69, 59, 55, 94, 95, 83, 70, 72, 61, 48, 58, 59, 87, 67, 62, 60, 68, 64, 69, 55, 65, 60, 64, 52, 87, 64, 73, 58, 58, 80, 54, 73, 66, 64, 120, 62, 77, 57, 70, 72, 58, 46, 72, 64, 62, 55, 83, 64, 87, 58, 64, 50, 50, 62, 71, 63, 70, 55, 75, 60, 54, 57, 73, 82, 63, 53, 64, 72, 87, 58, 64, 66, 58, 62, 82, 58, 60, 63, 68, 60, 64, 74, 86, 71, 73, 63, 73, 64, 64, 57, 64, 74, 68, 96, 48, 62, 63, 54, 64, 67, 68, 60, 42, 55, 77, 70, 76, 76, 63, 58, 66, 65, 56, 69, 53, 69, 76, 77, 72, 53, 61, 61, 50, 56, 50, 59, 51, 82, 105, 49, 71, 65, 59, 64, 90, 113, 55, 53, 51, 52, 51, 59, 59, 56, 62, 54, 68, 75, 58, 50, 70, 59, 69, 61, 52, 63, 64, 49, 58, 63, 88, 86, 65, 57, 50, 67, 62, 71, 63, 63, 76, 63, 50, 87, 73, 62, 48, 65, 71, 61, 68, 52, 53, 52, 73, 78, 64, 66, 53, 54, 60, 77, 89, 76, 86, 85, 62, 86, 63, 68, 58, 55, 57, 72, 87, 71, 62, 52, 94, 67, 58, 95, 58, 102, 72, 69, 64, 61, 58, 61, 91, 60, 59, 67, 61, 33, 61, 60, 76, 59, 76, 46, 74, 64, 66, 89, 93, 71, 50, 55, 53, 51, 84, 55, 61, 52, 69, 61, 75, 79, 70, 49, 60, 59, 61, 56, 58, 60, 62, 62, 60, 109, 49, 94, 81, 120, 59, 61, 55, 85, 79, 61, 69, 86, 81, 110, 61, 63, 74, 58, 65, 104, 49, 55, 69, 56, 69, 54, 68, 76, 53, 60, 86, 58, 60, 73, 77, 68, 72, 51, 64, 68, 70, 79, 51, 58, 66, 58, 63, 75, 71, 65, 79, 58, 68, 67, 71, 76, 64, 63, 48, 58, 57, 67, 56, 57, 82, 62, 58, 72, 56, 69, 121, 66, 69, 49, 88, 90, 72, 58, 48, 49, 58, 59, 61, 70, 55, 61, 84, 66, 86, 46, 46, 54, 61, 65, 62, 66, 62, 65, 70, 76, 100, 70, 90, 57, 50, 70, 57, 60, 52, 62, 75, 52, 46, 83, 79, 52, 51, 58, 74, 94, 49, 58, 67, 79, 64, 55, 57, 83, 73, 80, 61, 67, 68, 68, 49, 74, 52, 51, 51, 60, 68, 66, 76, 46, 50, 58, 55, 85, 71, 78, 56, 45, 68, 68, 76, 65, 73, 62, 55, 54, 62, 61, 55, 64, 75, 62, 82, 53, 62, 79, 50, 69, 52, 62, 49, 53, 65, 71, 71, 70, 57, 57, 44, 104, 61, 73, 59, 65, 55, 83, 47, 54, 59, 57, 56, 59, 86, 67, 59, 68, 113, 73, 59, 63, 69, 80, 62, 80, 64, 64, 56, 52, 83, 51, 51, 77, 66, 76, 68, 76, 68, 68, 64, 69, 55, 55, 68, 65, 64, 53, 66, 69, 59, 54, 64, 76, 76, 86, 69, 55, 61, 65, 68, 49, 62, 64, 44, 55, 67, 53, 85, 59, 89, 77, 76, 61, 57, 63, 57, 78, 71, 64, 49, 61, 79, 60, 70, 80, 64, 68, 68, 67, 64, 65, 73, 58, 60, 64, 62, 56, 61, 83, 66, 57, 73, 73, 62, 71, 54, 68, 127, 61, 69, 80, 65, 57, 53, 59, 52, 70, 79, 69, 72, 85, 80, 90, 60, 44, 61, 75, 57, 56, 69, 74, 59, 73, 51, 87, 60, 68, 57, 73, 68, 86, 42, 60, 62, 62, 58, 57, 66, 75, 55, 48, 67, 66, 64, 79, 45, 66, 114, 43, 62, 68, 54, 63, 82, 57, 76, 55, 67, 68, 69, 73, 87, 100, 60, 58, 45, 69, 80, 56, 60, 84, 48, 76, 63, 60, 65, 91, 66, 74, 88, 66, 62, 53, 70, 76, 77, 54, 61, 68, 53, 74, 58, 77, 67, 66, 57, 55, 67, 78, 63, 48, 63, 73, 72, 62, 65, 65, 78, 67, 71, 78, 69, 54, 65, 71, 57, 88, 49, 69, 57, 72, 64, 57, 74, 61, 55, 68, 77, 74, 69, 56, 71, 65, 62, 48, 64, 68, 65, 66, 67, 60, 58, 65, 43, 74, 69, 129, 61, 70, 61, 66, 59, 76, 64, 63, 62, 70, 73, 72, 86, 71, 67, 48, 68, 45, 60, 67, 57, 74, 58, 66, 53, 60, 69, 62, 57, 60, 56, 68, 84, 50, 40, 64, 80, 48, 66, 56, 60, 76, 44, 38, 54, 55, 60, 68, 70, 76, 62, 78, 79, 64, 72, 68, 49, 49, 71, 79, 70, 80, 60, 75, 69, 85, 67, 52, 116, 67, 73, 72, 65, 66, 69, 56, 60, 54, 59, 81, 52, 67, 69, 80, 74, 59, 68, 63, 65, 55, 63, 68, 56, 54, 59, 60, 40, 74, 83, 62, 80, 60, 79, 64, 58, 63, 77, 65, 59, 66, 62, 82, 92, 56, 78, 60, 87, 57, 68, 62, 55, 84, 50, 55, 65, 60, 79, 52, 66, 91, 73, 106, 54, 53, 58, 49, 59, 89, 47, 109, 67, 56, 78, 50, 68, 64, 51, 64, 63, 92, 52, 45, 49, 69, 63, 71, 62, 69, 89, 61, 65, 55, 65, 78, 72, 51, 59, 66, 56, 67, 72, 80, 66, 68, 75, 67, 54, 56, 60, 69, 68, 72, 57, 63, 72, 59, 61, 75, 70, 101, 92, 71, 59, 74, 96, 62, 71, 73, 68, 83, 49, 56, 60, 75, 66, 70, 80, 60, 64, 68, 51, 58, 61, 56, 59, 75, 71, 47, 100, 76, 69, 67, 102, 71, 64, 61, 76, 63, 68, 75, 75, 67, 63, 42, 70, 56, 56, 63, 58, 60, 59, 71, 71, 62, 63, 57, 66, 68, 56, 83, 63, 64, 64, 52, 72, 66, 89, 73, 65, 67, 84, 63, 78, 92, 48, 62, 73, 80, 82, 63, 57, 60, 57, 79, 71, 60, 52, 70, 118, 55, 59, 47, 75, 83, 74, 76, 54, 67, 63, 65, 67, 98, 56, 67, 42, 66, 62, 61, 64, 52, 64, 97, 71, 59, 64, 67, 70, 87, 54, 48, 72, 66, 54, 56, 56, 68, 75, 66, 58, 53, 65, 62, 51, 53, 115, 98, 76, 64, 53, 89, 68, 63, 57, 61, 72, 66, 63, 90, 68, 61, 57, 66, 55, 57, 62, 73, 60, 70, 68, 52, 78, 87, 57, 53, 71, 58, 71, 67, 69, 68, 77, 64, 56, 55, 58, 60, 61, 65, 67, 58, 68, 66, 86, 84, 76, 67, 90, 51, 78, 59, 47, 51, 59, 67, 73, 69, 61, 69, 60, 63, 60, 60, 117, 56, 50, 53, 70, 63, 56, 64, 95, 58, 78, 61, 66, 71, 59, 76, 49, 53, 58, 64, 66, 66, 61, 50, 59, 66, 68, 57, 84, 82, 68, 84, 54, 69, 63, 64, 63, 72, 63, 68, 70, 91, 73, 77, 65, 55, 89, 65, 79, 64, 79, 63, 52, 66, 54, 62, 58, 62, 98, 42, 102, 51, 50, 62, 95, 72, 63, 53, 63, 86, 52, 64, 95, 76, 68, 57, 61, 67, 93, 76, 97, 61, 69, 55, 76, 61, 67, 62, 53, 79, 89, 69, 63, 64, 63, 69, 59, 61, 60, 62, 85, 62, 41, 75, 61, 62, 71, 69, 61, 53, 52, 80, 57, 51, 55, 68, 72, 67, 73, 69, 50, 79, 54, 52, 79, 80, 86, 79, 78, 59, 79, 57, 57, 98, 76, 65, 86, 58, 57, 64, 61, 57, 69, 95, 66, 63, 67, 66, 66, 66, 63, 77, 77, 58, 59, 64, 75, 58, 57, 57, 69, 86, 55, 62, 84, 87, 62, 79, 57, 50, 59, 53, 74, 72, 64, 61, 83, 75, 66, 62, 78, 82, 62, 59, 53, 56, 69, 60, 78, 60, 73, 130, 66, 63, 55, 55, 73, 66, 75, 57, 73, 66, 64, 61, 56, 60, 53, 57, 52, 66, 54, 76, 69, 53, 92, 59, 37, 65, 68, 63, 61, 58, 75, 55, 53, 50, 59, 60, 83, 92, 69, 79, 43, 81, 51, 62, 62, 79, 72, 89, 49, 75, 52, 74, 75, 79, 57, 60, 72, 61, 83, 94, 67, 48, 77, 49, 63, 72, 58, 67, 80, 66, 117, 72, 57, 69, 74, 56, 64, 73, 70, 77, 78, 71, 53, 66, 59, 61, 110, 56, 77, 61, 69, 64, 53, 58, 75, 70, 54, 59, 73, 73, 75, 54, 97, 55, 79, 69, 61, 70, 69, 64, 68, 81, 65, 78, 53, 70, 53, 66, 65, 72, 52, 61, 66, 66, 56, 70, 52, 81, 66, 57, 58, 58, 69, 54, 52, 60, 54, 46, 68, 59, 58, 60, 64, 92, 54, 53, 68, 85, 92, 64, 58, 56, 71, 51, 50, 67, 64, 58, 48, 61, 55, 94, 60, 43, 83, 70, 40, 69, 48, 57, 51, 58, 41, 60, 70, 49, 71, 79, 50, 84, 76, 67, 73, 57, 59, 66, 68, 54, 105, 67, 52, 66, 66, 85, 73, 82, 58, 75, 80, 56, 51, 63, 60, 65, 61, 54, 65, 46, 39, 72, 76, 50, 81, 56, 58, 61, 60, 56, 60, 72, 72, 70, 86, 90, 57, 70, 74, 50, 74, 77, 75, 64, 74, 77, 51, 78, 59, 71, 61, 63, 68, 65, 54, 46, 69, 55, 90, 49, 60, 61, 79, 116, 96, 47, 63, 55, 77, 48, 69, 51, 69, 57, 59, 68, 76, 55, 62, 62, 47, 68, 82, 91, 72, 56, 83, 99, 73, 63, 71, 68, 71, 68, 106, 73, 68, 82, 100, 63, 58, 61, 56, 73, 59, 79, 61, 64, 79, 64, 72, 61, 70, 52, 48, 69, 59, 103, 60, 55, 52, 63, 64, 56, 59, 67, 81, 86, 79, 62, 90, 53, 47, 68, 72, 86, 59, 55, 63, 77, 40, 103, 68, 56, 62, 63, 58, 73, 65, 59, 43, 58, 53, 60, 55, 71, 79, 73, 59, 72, 60, 52, 64, 93, 64, 77, 58, 76, 60, 66, 78, 71, 61, 60, 79, 48, 58, 57, 70, 62, 53, 56, 70, 79, 55, 60, 56, 61, 42, 58, 91, 46, 60, 75, 60, 57, 74, 50, 88, 72, 40, 78, 76, 43, 63, 42, 73, 63, 60, 87, 64, 72, 61, 67, 68, 57, 62, 71, 64, 67, 58, 65, 62, 96, 75, 61, 70, 79, 85, 58, 61, 72, 65, 67, 58, 68, 67, 73, 62, 57, 52, 78, 78, 64, 59, 75, 52, 83, 54, 67, 66, 89, 124, 58, 53, 71, 64, 54, 59, 102, 60, 63, 66, 58, 50, 71, 60, 55, 67, 52, 61, 61, 43, 96, 71, 57, 50, 53, 47, 53, 88, 66, 72, 79, 46, 62, 68, 64, 67, 45, 52, 68, 56, 64, 50, 56, 59, 67, 37, 59, 61, 50, 77, 54, 70, 55, 56, 79, 67, 58, 57, 72, 71, 70, 47, 63, 83, 66, 58, 45, 52, 69, 51, 80, 70, 62, 69, 63, 66, 63, 70, 63, 60, 70, 48, 70, 50, 80, 59, 81, 58, 68, 54, 72, 49, 57, 55, 40, 61, 61, 47, 65, 48, 76, 49, 56, 69, 68, 79, 94, 62, 66, 36, 73, 82, 69, 63, 58, 69, 83, 55, 65, 97, 84, 52, 50, 69, 53, 60, 62, 102, 60, 86, 47, 61, 59, 52, 71, 89, 94, 77, 65, 58, 64, 65, 57, 52, 62, 61, 57, 65, 66, 73, 65, 64, 54, 63, 54, 53, 78, 91, 79, 87, 85, 69, 95, 62, 67, 54, 59, 135, 51, 68, 83, 46, 61, 112, 61, 67, 52, 72, 55, 64, 84, 71, 70, 52, 73, 52, 71, 65, 59, 68, 82, 61, 79, 66, 74, 55, 43, 72, 46, 80, 41, 62, 68, 82, 61, 67, 67, 77, 85, 106, 76, 79, 45, 63, 55, 48, 65, 70, 70, 64, 39, 57, 46, 82, 55, 64, 64, 61, 54, 50, 73, 55, 61, 61, 74, 61, 69, 53, 53, 61, 90, 74, 54, 55, 84, 64, 100, 88, 46, 96, 63, 57, 64, 58, 42, 72, 61, 57, 66, 57, 66, 75, 53, 82, 90, 112, 56, 61, 78, 51, 52, 70, 62, 63, 64, 53, 70, 78, 65, 52, 63, 60, 97, 61, 62, 51, 55, 45, 62, 48, 78, 51, 56, 57, 62, 71, 62, 67, 94, 74, 56, 81, 59, 61, 68, 64, 49, 68, 77, 74, 71, 62, 52, 73, 60, 42, 55, 67, 66, 74, 114, 53, 51, 52, 90, 62, 62, 51, 71, 64, 84, 56, 46, 92, 48, 80, 67, 65, 75, 66, 73, 68, 73, 78, 68, 68, 79, 50, 59, 43, 71, 76, 59, 63, 74, 43, 50, 64, 64, 54, 71, 56, 63, 61, 66, 76, 70, 65, 52, 49, 67, 50, 67, 63, 48, 52, 68, 81, 70, 68, 63, 90, 87, 58, 74, 48, 67, 59, 75, 48, 58, 88, 65, 59, 64, 64, 58, 59, 79, 69, 62, 63, 69, 84, 58, 66, 57, 73, 61, 84, 55, 75, 72, 68, 72, 58, 67, 62, 59, 63, 67, 39, 55, 43, 54, 90, 56, 67, 62, 54, 87, 78, 80, 92, 58, 55, 61, 52, 88, 67, 62, 87, 63, 54, 55, 51, 50, 73, 65, 75, 63, 58, 65, 75, 67, 64, 90, 122, 57, 73, 71, 65, 52, 57, 62, 45, 71, 71, 57, 48, 80, 79, 69, 53, 72, 87, 73, 72, 55, 66, 74, 54, 57, 58, 57, 47, 40, 79, 51, 102, 41, 45, 71, 55, 62, 63, 49, 39, 54, 55, 62, 66, 71, 69, 65, 60, 70, 70, 62, 62, 59, 73, 46, 66, 91, 55, 72, 75, 73, 68, 62, 93, 52, 60, 47, 64, 63, 47, 66, 104, 62, 87, 56, 58, 65, 54, 55, 49, 61, 68, 68, 74, 60, 69, 55, 90, 85, 58, 70, 52, 58, 57, 52, 57, 62, 68, 61, 124, 63, 57, 78, 83, 53, 50, 59, 64, 68, 55, 83, 102, 67, 58, 42, 65, 72, 69, 75, 77, 57, 54, 59, 54, 122, 64, 69, 45, 39, 57, 63, 56, 77, 64, 66, 62, 81, 54, 70, 81, 58, 61, 69, 60, 65, 57, 74, 52, 53, 64, 54, 62, 61, 55, 78, 68, 61, 61, 72, 47, 76, 112, 43, 62, 61, 74, 60, 86, 84, 73, 70, 48, 54, 61, 57, 92, 66, 74, 66, 85, 76, 88, 68, 57, 71, 81, 68, 66, 57, 43, 37, 64, 56, 66, 66, 79, 58, 48, 77, 68, 62, 58, 58, 75, 52, 65, 76, 58, 67, 56, 63, 83, 70, 50, 70, 54, 70, 76, 74, 83, 61, 78, 67, 71, 64, 68, 60, 80, 72, 82, 58, 70, 68, 55, 47, 68, 58, 58, 102, 76, 59, 46, 60, 46, 63, 68, 61, 75, 57, 78, 72, 78, 70, 61, 63, 84, 78, 53, 61, 63, 55, 79, 75, 49, 57, 62, 45, 82, 114, 59, 70, 75, 57, 56, 98, 81, 79, 42, 58, 56, 72, 52, 69, 53, 70, 78, 68, 59, 69, 63, 58, 56, 82, 51, 78, 69, 54, 64, 61, 59, 97, 80, 65, 87, 52, 64, 76, 77, 84, 63, 62, 61, 87, 55, 67, 44, 70, 67, 81, 74, 58, 82, 62, 59, 64, 77, 41, 62, 69, 74, 56, 80, 73, 72, 68, 65, 73, 71, 77, 72, 47, 31, 70, 75, 60, 70, 61, 72, 71, 59, 54, 42, 54, 73, 46, 72, 78, 54, 71, 71, 72, 60, 51, 66, 91, 86, 72, 54, 64, 74, 65, 64, 71, 80, 74, 78, 84, 58, 66, 66, 55, 67, 64, 62, 77, 66, 51, 64, 68, 78, 74, 53, 68, 75, 90, 75, 64, 50, 68, 57, 111, 63, 64, 79, 75, 72, 59, 60, 71, 54, 59, 70, 59, 55, 49, 62, 58, 66, 42, 66, 54, 57, 72, 57, 71, 76, 56, 102, 81, 52, 125, 62, 82, 131, 92, 67, 72, 53, 69, 54, 67, 66, 39, 76, 54, 76, 95, 55, 56, 50, 72, 69, 66, 80, 43, 72, 72, 69, 36, 93, 83, 76, 67, 60, 81, 47, 78, 65, 79, 77, 80, 59, 48, 66, 52, 63, 105, 67, 64, 91, 70, 64, 40, 44, 65, 57, 52, 59, 50, 65, 89, 71, 79, 55, 58, 57, 50, 84, 49, 65, 67, 79, 72, 74, 59, 75, 56, 69, 75, 56, 82, 70, 107, 47, 110, 70, 100, 57, 63, 92, 67, 54, 58, 58, 59, 70, 58, 83, 73, 55, 58, 66, 68, 57, 66, 65, 47, 51, 86, 53, 46, 68, 69, 88, 99, 76, 63, 58, 67, 76, 78, 79, 78, 52, 70, 48, 63, 56, 59, 64, 97, 57, 62, 67, 94, 46, 54, 66, 54, 59, 79, 66, 83, 61, 38, 66, 67, 57, 51, 58, 74, 66, 62, 64, 112, 81, 80, 72, 66, 69, 54, 66, 77, 64, 58, 102, 48, 72, 64, 54, 70, 50, 78, 69, 76, 82, 76, 58, 55, 67, 72, 40, 91, 63, 92, 53, 57, 58, 51, 69, 68, 91, 69, 69, 64, 62, 53, 51, 54, 77, 74, 76, 77, 84, 91, 50, 78, 53, 73, 70, 60, 43, 66, 58, 72, 67, 86, 62, 65, 69, 59, 77, 73, 57, 60, 63, 59, 68, 81, 63, 102, 55, 73, 55, 58, 72, 45, 55, 42, 50, 62, 66, 92, 57, 63, 64, 66, 83, 56, 72, 56, 50, 64, 102, 60, 73, 66, 63, 62, 68, 60, 60, 61, 65, 64, 68, 72, 54, 64, 38, 94, 70, 80, 83, 53, 51, 60, 66, 64, 65, 59, 59, 57, 60, 66, 67, 68, 51, 62, 62, 57, 99, 86, 59, 72, 62, 57, 80, 54, 49, 64, 56, 46, 67, 74, 75, 80, 68, 62, 105, 92, 61, 65, 50, 59, 67, 70, 56, 58, 68, 57, 51, 74, 91, 80, 93, 45, 83, 89, 69, 56, 53, 74, 64, 53, 51, 63, 61, 63, 69, 51, 109, 62, 68, 93, 77, 52, 68, 72, 78, 57, 63, 62, 65, 62, 75, 70, 52, 99, 55, 47, 77, 51, 76, 71, 57, 60, 75, 66, 73, 71, 72, 59, 60, 56, 72, 60, 66, 55, 59, 74, 70, 112, 49, 47, 70, 81, 62, 79, 65, 43, 82, 74, 56, 53, 57, 87, 81, 75, 61, 82, 100, 78, 58, 69, 93, 67, 64, 52, 71, 61, 62, 70, 70, 56, 80, 42, 68, 76, 79, 66, 97, 65, 71, 67, 69, 82, 56, 62, 62, 70, 48, 76, 79, 103, 63, 67, 69, 45, 74, 67, 60, 44, 62, 67, 87, 55, 60, 62, 56, 80, 42, 51, 74, 65, 64, 94, 63, 79, 39, 69, 72, 65, 56, 70, 68, 69, 76, 62, 73, 41, 79, 62, 58, 70, 58, 85, 67, 72, 68, 61, 55, 55, 56, 58, 57, 87, 55, 67, 63, 50, 44, 53, 62, 51, 77, 84, 63, 75, 83, 58, 56, 78, 63, 56, 58, 83, 82, 60, 65, 51, 58, 68, 97, 75, 53, 66, 72, 74, 76, 90, 85, 78, 63, 75, 56, 49, 88, 62, 60, 55, 68, 63, 57, 71, 62, 58, 50, 63, 115, 44, 74, 50, 58, 59, 68, 62, 81, 70, 74, 89, 62, 58, 68, 62, 56, 65, 59, 70, 93, 63, 96, 55, 70, 79, 69, 81, 57, 64, 56, 54, 58, 79, 72, 62, 86, 64, 50, 65, 57, 68, 64, 60, 68, 58, 70, 34, 63, 65, 53, 62, 51, 123, 98, 51, 69, 62, 59, 64, 67, 72, 56, 64, 82, 65, 81, 52, 84, 85, 67, 67, 70, 67, 47, 61, 52, 62, 87, 62, 68, 60, 60, 91, 73, 66, 87, 70, 69, 66, 41, 47, 69, 63, 71, 63, 70, 50, 48, 65, 57, 69, 66, 68, 58, 67, 60, 75, 50, 58, 74, 74, 65, 48, 77, 59, 67, 65, 72, 42, 75, 55, 82, 68, 63, 56, 119, 63, 63, 72, 54, 68, 86, 45, 61, 55, 70, 65, 58, 49, 71, 52, 40, 66, 60, 67, 54, 70, 72, 34, 64, 46, 74, 70, 91, 83, 60, 47, 65, 52, 60, 68, 74, 66, 57, 73, 68, 57, 55, 57, 48, 51, 52, 63, 60, 60, 55, 83, 69, 113, 50, 75, 72, 59, 50, 64, 56, 66, 58, 45, 48, 73, 67, 59, 77, 46, 65, 59, 60, 68, 65, 68, 57, 67, 71, 52, 65, 58, 60, 62, 70, 54, 68, 81, 66, 65, 99, 76, 64, 57, 69, 71, 67, 58, 52, 57, 58, 48, 80, 64, 63, 76, 76, 76, 62, 84, 69, 55, 64, 66, 69, 65, 65, 56, 55, 64, 49, 79, 68, 73, 112, 58, 73, 66, 93, 62, 81, 62, 61, 56, 57, 61, 71, 57, 80, 67, 103, 74, 61, 63, 85, 63, 72, 65, 66, 62, 81, 56, 66, 69, 94, 69, 47, 68, 101, 57, 67, 54, 58, 65, 52, 59, 59, 76, 63, 52, 65, 41, 79, 65, 61, 54, 59, 57, 56, 78, 80, 49, 62, 69, 68, 75, 51, 62, 73, 95, 74, 55, 50, 64, 56, 60, 80, 110, 48, 78, 63, 58, 61, 85, 57, 88, 62, 71, 54, 68, 83, 65, 56, 65, 70, 81, 66, 58, 46, 72, 51, 77, 39, 51, 65, 63, 59, 65, 71, 80, 81, 66, 54, 57, 57, 66, 65, 84, 49, 73, 64, 66, 68, 45, 63, 68, 63, 92, 60, 56, 75, 56, 51, 65, 86, 50, 61, 72, 72, 52, 61, 58, 65, 58, 60, 68, 69, 65, 60, 77, 48, 70, 74, 59, 67, 70, 53, 67, 57, 59, 68, 54, 77, 49, 82, 59, 74, 85, 67, 57, 64, 68, 53, 69, 57, 67, 60, 64, 52, 86, 52, 91, 96, 65, 59, 85, 61, 51, 53, 68, 65, 62, 74, 69, 57, 67, 45, 79, 85, 76, 63, 50, 64, 99, 70, 59, 58, 62, 67, 97, 63, 62, 61, 74, 85, 55, 55, 64, 53, 60, 52, 67, 55, 59, 73, 74, 55, 77, 59, 79, 39, 57, 60, 61, 68, 50, 78, 84, 67, 100, 68, 75, 56, 59, 60, 60, 66, 59, 64, 74, 51, 74, 87, 56, 55, 94, 59, 64, 64, 57, 73, 59, 64, 50, 72, 71, 54, 58, 57, 67, 58, 52, 43, 67, 62, 61, 52, 71, 72, 64, 62, 58, 61, 73, 57, 90, 70, 62, 90, 97, 67, 128, 54, 68, 51, 72, 65, 77, 70, 80, 73, 59, 48, 48, 64, 86, 91, 66, 72, 52, 69, 63, 75, 68, 75, 76, 75, 67, 80, 63, 87, 63, 68, 98, 69, 65, 68, 51, 59, 68, 73, 69, 66, 54, 66, 72, 74, 70, 60, 62, 100, 55, 56, 67, 63, 67, 50, 61, 59, 44, 73, 63, 79, 70, 64, 63, 76, 66, 83, 61, 80, 63, 74, 50, 62, 67, 43, 69, 55, 64, 69, 59, 76, 70, 51, 52, 64, 63, 81, 56, 54, 91, 77, 69, 59, 60, 59, 58, 74, 76, 58, 54, 52, 93, 51, 103, 78, 57, 64, 58, 72, 74, 85, 70, 73, 68, 57, 63, 69, 76, 69, 52, 56, 65, 55, 76, 76, 68, 52, 60, 67, 84, 67, 100, 68, 50, 68, 58, 64, 80, 81, 62, 62, 73, 72, 58, 62, 70, 62, 67, 69, 108, 67, 60, 61, 59, 63, 67, 79, 63, 54, 88, 64, 78, 46, 38, 58, 90, 71, 83, 75, 57, 56, 66, 60, 62, 65, 55, 61, 58, 71, 97, 67, 70, 91, 89, 62, 74, 69, 80, 64, 50, 55, 67, 73, 68, 60, 74, 66, 44, 51, 70, 66, 69, 64, 59, 82, 67, 64, 57, 62, 51, 49, 60, 67, 52, 56, 48, 38, 51, 50, 45, 85, 58, 55, 76, 65, 74, 48, 75, 58, 54, 80, 71, 46, 78, 43, 75, 63, 39, 84, 83, 67, 68, 65, 60, 65, 81, 65, 61, 55, 59, 99, 54, 84, 81, 61, 72, 104, 97, 75, 69, 55, 61, 51, 89, 63, 51, 71, 67, 74, 56, 59, 82, 104, 88, 62, 54, 59, 57, 49, 58, 90, 55, 50, 55, 69, 58, 65, 44, 83, 55, 50, 71, 65, 58, 82, 58, 72, 59, 51, 64, 74, 87, 77, 47, 63, 105, 66, 61, 89, 50, 64, 43, 78, 60, 69, 72, 88, 70, 56, 64, 57, 57, 56, 68, 71, 63, 62, 59, 75, 84, 59, 52, 59, 68, 72, 72, 67, 69, 64, 71, 66, 67, 46, 56, 57, 52, 48, 64, 98, 63, 67, 62, 70, 55, 66, 64, 75, 66, 90, 59, 75, 79, 72, 45, 86, 99, 92, 54, 53, 73, 110, 71, 52, 83, 58, 66, 69, 132, 55, 78, 63, 88, 56, 45, 55, 64, 91, 87, 77, 63, 50, 92, 66, 66, 62, 60, 52, 52, 77, 54, 78, 51, 57, 75, 71, 83, 81, 80, 62, 84, 55, 63, 50, 69, 73, 58, 70, 68, 95, 53, 63, 70, 63, 51, 62, 45, 84, 59, 90, 86, 73, 65, 70, 75, 49, 57, 67, 64, 53, 71, 83, 75, 50, 86, 58, 48, 40, 60, 58, 80, 56, 85, 56, 82, 65, 56, 56, 50, 62, 49, 37, 72, 95, 78, 64, 84, 58, 79, 59, 73, 56, 82, 72, 46, 36, 61, 59, 60, 80, 67, 57, 77, 59, 79, 51, 79, 92, 54, 78, 71, 67, 64, 63, 68, 56, 73, 75, 114, 66, 64, 69, 83, 39, 49, 38, 72, 53, 40, 97, 76, 75, 67, 65, 92, 52, 39, 38, 71, 71, 90, 59, 55, 77, 63, 74, 55, 58, 81, 48, 80, 56, 81, 75, 49, 53, 59, 57, 83, 67, 64, 90, 49, 70, 59, 31, 70, 74, 66, 70, 54, 71, 70, 95, 65, 53, 79, 65, 70, 87, 72, 55, 77, 66, 62, 71, 65, 51, 50, 69, 69, 92, 103, 70, 72, 52, 70, 55, 71, 63, 55, 61, 67, 69, 57, 61, 58, 46, 58, 68, 56, 67, 56, 80, 44, 114, 56, 69, 55, 55, 62, 63, 71, 64, 55, 56, 80, 98, 67, 87, 59, 69, 45, 35, 93, 52, 78, 55, 91, 57, 64, 51, 66, 64, 61, 71, 81, 74, 70, 56, 76, 65, 74, 72, 68, 79, 84, 59, 58, 71, 89, 82, 65, 47, 78, 69, 105, 60, 51, 57, 65, 77, 58, 71, 80, 63, 98, 72, 74, 79, 56, 75, 58, 68, 58, 55, 127, 69, 50, 65, 64, 46, 67, 70, 51, 72, 59, 49, 52, 51, 81, 55, 77, 56, 68, 68, 61, 60, 103, 50, 57, 62, 57, 51, 67, 52, 92, 62, 79, 58, 65, 55, 57, 77, 81, 55, 64, 76, 40, 46, 91, 58, 73, 52, 74, 36, 81, 71, 60, 50, 69, 66, 66, 63, 67, 45, 65, 65, 60, 60, 58, 60, 70, 53, 59, 54, 77, 107, 64, 56, 59, 59, 59, 70, 57, 69, 73, 45, 58, 84, 71, 59, 53, 90, 58, 59, 61, 67, 52, 52, 64, 69, 94, 55, 45, 48, 64, 65, 55, 58, 67, 87, 70, 56, 71, 74, 40, 66, 57, 50, 87, 71, 42, 39, 60, 71, 57, 56, 71, 68, 53, 85, 72, 74, 48, 54, 56, 77, 92, 48, 61, 66, 51, 77, 62, 75, 72, 65, 67, 68, 69, 77, 77, 53, 58, 58, 64, 73, 76, 53, 62, 63, 72, 54, 84, 75, 57, 59, 59, 64, 66, 70, 62, 47, 50, 52, 41, 66, 60, 62, 68, 50, 53, 66, 71, 72, 59, 51, 78, 63, 61, 77, 53, 64, 79, 49, 77, 39, 63, 83, 75, 68, 65, 32, 81, 68, 61, 54, 74, 75, 67, 61, 48, 58, 45, 70, 59, 74, 59, 60, 75, 80, 80, 99, 69, 62, 57, 79, 48, 52, 74, 62, 61, 60, 68, 63, 64, 57, 62, 63, 48, 62, 65, 64, 68, 62, 77, 69, 49, 56, 65, 53, 74, 52, 68, 74, 56, 52, 78, 101, 44, 63, 100, 87, 71, 85, 61, 78, 65, 54, 66, 76, 52, 42, 60, 57, 59, 62, 75, 43, 56, 75, 90, 54, 75, 69, 64, 86, 68, 44, 63, 65, 66, 35, 64, 56, 57, 51, 62, 43, 70, 62, 71, 65, 62, 68, 68, 53, 88, 84, 118, 41, 87, 63, 72, 45, 65, 62, 63, 38, 88, 63, 83, 71, 67, 89, 56, 64, 96, 67, 56, 42, 75, 62, 64, 48, 63, 65, 71, 65, 75, 62, 59, 67, 59, 79, 70, 77, 97, 48, 75, 59, 68, 68, 66, 70, 73, 78, 98, 74, 32, 66, 62, 60, 99, 53, 65, 54, 58, 62, 57, 66, 50, 77, 58, 57, 73, 64, 76, 105, 67, 48, 63, 61, 101, 83, 73, 75, 71, 83, 65, 79, 54, 90, 62, 57, 41, 45, 79, 79, 71, 89, 50, 60, 62, 67, 60, 63, 58, 58, 62, 49, 66, 61, 69, 62, 59, 61, 56, 45, 63, 56, 62, 62, 70, 70, 68, 53, 47, 73, 68, 69, 86, 48, 71, 61, 61, 76, 61, 75, 104, 73, 99, 89, 66, 75, 64, 55, 65, 50, 51, 65, 57, 56, 71, 68, 48, 60, 69, 52, 50, 70, 68, 51, 69, 60, 52, 55, 80, 64, 76, 67, 69, 71, 44, 72, 59, 87, 53, 61, 73, 51, 56, 63, 69, 63, 61, 69, 63, 58, 46, 53, 68, 51, 95, 53, 90, 59, 66, 62, 59, 76, 69, 70, 67, 65, 93, 71, 64, 54, 47, 83, 63, 50, 93, 63, 42, 55, 51, 46, 67, 84, 66, 129, 55, 58, 82, 65, 68, 60, 71, 57, 62, 60, 65, 64, 63, 59, 51, 61, 52, 66, 61, 61, 57, 97, 80, 55, 76, 68, 83, 64, 67, 70, 91, 81, 73, 72, 54, 79, 76, 76, 61, 55, 54, 64, 58, 98, 69, 64, 56, 47, 65, 60, 85, 47, 62, 67, 66, 59, 52, 57, 81, 63, 45, 63, 53, 56, 101, 71, 72, 78, 61, 55, 59, 52, 65, 63, 67, 67, 66, 62, 44, 120, 51, 62, 52, 36, 74, 74, 68, 57, 69, 58, 49, 113, 87, 70, 80, 69, 80, 59, 49, 94, 88, 67, 67, 59, 99, 60, 73, 54, 62, 71, 72, 62, 84, 68, 91, 63, 76, 100, 71, 58, 75, 52, 64, 49, 71, 55, 55, 58, 78, 82, 50, 69, 85, 70, 61, 80, 52, 56, 72, 64, 88, 72, 60, 70, 71, 52, 96, 57, 81, 48, 49, 65, 81, 58, 93, 64, 37, 58, 81, 51, 52, 52, 71, 57, 49, 55, 70, 67, 58, 74, 70, 61, 45, 72, 90, 72, 70, 55, 62, 69, 72, 75, 60, 63, 63, 51, 51, 88, 53, 75, 73, 58, 56, 49, 60, 65, 58, 95, 71, 71, 68, 52, 69, 58, 62, 63, 69, 61, 92, 62, 80, 110, 80, 72, 112, 64, 80, 57, 92, 53, 79, 68, 99, 60, 94, 81, 59, 63, 47, 84, 56, 69, 92, 69, 63, 65, 64, 76, 45, 84, 61, 81, 71, 76, 54, 61, 81, 51, 59, 131, 68, 38, 65, 66, 64, 61, 65, 59, 83, 60, 88, 88, 82, 59, 75, 61, 36, 64, 51, 55, 63, 55, 61, 103, 101, 79, 63, 86, 63, 73, 66, 93, 50, 56, 60, 59, 84, 81, 48, 72, 67, 55, 74, 82, 53, 72, 47, 59, 63, 77, 40, 80, 47, 64, 63, 76, 65, 69, 69, 73, 63, 57, 57, 67, 72, 88, 61, 66, 72, 64, 66, 69, 67, 84, 98, 83, 63, 83, 68, 71, 90, 51, 47, 52, 58, 57, 58, 74, 57, 58, 57, 57, 53, 79, 47, 59, 71, 62, 48, 117, 66, 63, 38, 56, 83, 59, 47, 60, 61, 53, 46, 82, 55, 66, 56, 58, 86, 50, 57, 71, 63, 65, 47, 79, 53, 65, 73, 78, 65, 55, 90, 43, 82, 67, 83, 51, 67, 58, 81, 49, 54, 66, 64, 77, 70, 62, 74, 54, 63, 61, 68, 60, 61, 60, 65, 48, 77, 52, 63, 70, 52, 64, 90, 66, 74, 84, 68, 74, 51, 64, 38, 73, 84, 56, 77, 88, 66, 53, 64, 55, 56, 58, 57, 79, 53, 64, 73, 52, 54, 75, 68, 56, 72, 61, 67, 52, 97, 74, 79, 58, 94, 74, 51, 115, 79, 60, 116, 56, 70, 43, 65, 73, 65, 79, 62, 77, 75, 63, 75, 61, 46, 56, 71, 46, 70, 73, 144, 61, 51, 60, 81, 102, 58, 60, 74, 46, 89, 46, 57, 55, 62, 59, 71, 61, 117, 54, 58, 89, 62, 73, 47, 56, 76, 47, 80, 76, 100, 66, 69, 89, 109, 68, 59, 59, 57, 78, 56, 77, 101, 80, 80, 35, 53, 60, 65, 68, 49, 59, 45, 67, 85, 78, 55, 58, 45, 56, 98, 44, 54, 92, 53, 86, 65, 71, 64, 67, 75, 50, 98, 59, 43, 65, 47, 86, 69, 68, 58, 50, 66, 74, 67, 59, 67, 80, 57, 82, 68, 70, 61, 70, 59, 77, 58, 63, 57, 60, 45, 72, 54, 56, 53, 97, 49, 70, 65, 101, 59, 43, 67, 85, 75, 57, 54, 92, 94, 66, 74, 40, 74, 52, 70, 53, 60, 77, 71, 55, 61, 60, 50, 72, 76, 54, 97, 52, 69, 60, 81, 74, 75, 55, 45, 65, 57, 62, 55, 81, 63, 70, 55, 67, 53, 40, 83, 50, 73, 56, 53, 64, 63, 42, 61, 75, 77, 58, 75, 52, 69, 76, 82, 56, 42, 66, 81, 51, 54, 57, 72, 77, 65, 62, 64, 69, 89, 45, 54, 72, 60, 66, 68, 73, 64, 68, 52, 74, 44, 65, 89, 61, 54, 61, 78, 61, 62, 53, 53, 47, 81, 68, 55, 65, 79, 93, 54, 66, 48, 64, 74, 57, 48, 105, 94, 41, 69, 83, 61, 77, 63, 71, 86, 57, 43, 47, 42, 54, 69, 88, 58, 70, 63, 61, 62, 71, 78, 65, 69, 50, 67, 59, 57, 87, 48, 59, 53, 69, 62, 77, 46, 74, 93, 65, 74, 61, 56, 101, 103, 64, 71, 66, 62, 63, 35, 58, 87, 73, 95, 83, 81, 55, 83, 95, 128, 66, 47, 63, 69, 60, 54, 57, 43, 61, 64, 62, 82, 67, 79, 87, 70, 117, 65, 52, 61, 75, 60, 65, 64, 75, 88, 67, 34, 56, 56, 56, 110, 40, 52, 40, 82, 59, 57, 89, 62, 50, 52, 55, 66, 56, 44, 75, 38, 66, 55, 73, 79, 46, 108, 53, 59, 62, 56, 69, 71, 61, 72, 75, 99, 75, 56, 46, 55, 57, 86, 56, 60, 71, 62, 55, 72, 68, 71, 61, 73, 45, 37, 43, 84, 46, 48, 72, 70, 79, 89, 50, 66, 60, 85, 63, 53, 81, 53, 45, 65, 63, 45, 64, 89, 76, 79, 52, 73, 41, 84, 64, 63, 58, 59, 53, 70, 75, 57, 54, 72, 52, 79, 71, 84, 54, 69, 46, 60, 82, 66, 70, 61, 90, 58, 61, 80, 50, 79, 57, 54, 63, 78, 45, 67, 59, 55, 70, 78, 58, 52, 77, 71, 49, 46, 73, 57, 60, 87, 69, 63, 56, 94, 70, 55, 66, 65, 60, 94, 81, 49, 91, 63, 72, 44, 53, 42, 57, 65, 61, 92, 76, 65, 58, 72, 58, 72, 75, 65, 50, 64, 64, 71, 69, 71, 65, 59, 68, 72, 61, 89, 62, 76, 66, 69, 62, 82, 60, 54, 69, 69, 61, 53, 71, 43, 65, 49, 94, 95, 62, 63, 53, 43, 54, 59, 67, 71, 65, 68, 65, 62, 77, 65, 56, 59, 56, 89, 66, 31, 61, 68, 43, 40, 63, 57, 64, 54, 52, 50, 51, 74, 70, 63, 64, 72, 71, 78, 76, 84, 34, 36, 51, 65, 44, 65, 59, 58, 62, 94, 56, 77, 51, 59, 63, 70, 63, 69, 55, 66, 95, 58, 70, 39, 52, 64, 86, 54, 66, 70, 48, 55, 47, 85, 73, 86, 62, 64, 55, 73, 62, 48, 62, 60, 49, 63, 54, 64, 74, 64, 76, 80, 60, 70, 63, 55, 64, 53, 65, 62, 79, 106, 59, 86, 82, 72, 72, 64, 47, 77, 73, 68, 43, 73, 71, 80, 53, 78, 53, 47, 85, 78, 63, 49, 62, 71, 52, 63, 86, 74, 80, 59, 49, 62, 75, 47, 134, 52, 39, 97, 51, 63, 76, 75, 59, 61, 55, 66, 62, 80, 57, 33, 46, 67, 64, 56, 66, 100, 113, 51, 56, 62, 53, 54, 68, 52, 75, 55, 67, 75, 57, 61, 77, 73, 83, 72, 66, 75, 78, 63, 43, 50, 75, 59, 91, 44, 60, 83, 51, 72, 71, 73, 58, 57, 70, 76, 50, 46, 64, 80, 62, 69, 77, 82, 61, 87, 50, 64, 43, 85, 58, 60, 73, 76, 95, 100, 67, 57, 69, 55, 68, 67, 64, 64, 74, 43, 50, 69, 62, 87, 64, 81, 72, 57, 105, 48, 58, 57, 64, 78, 54, 72, 80, 69, 52, 51, 77, 66, 71, 75, 63, 67, 63, 59, 75, 54, 37, 54, 56, 42, 55, 68, 47, 61, 67, 67, 74, 103, 56, 73, 53, 62, 65, 86, 55, 65, 67, 44, 58, 54, 59, 54, 69, 63, 67, 63, 56, 65, 61, 58, 74, 65, 69, 82, 79, 85, 67, 58, 61, 48, 73, 59, 50, 48, 98, 62, 60, 57, 60, 53, 78, 37, 74, 56, 104, 88, 68, 61, 63, 73, 64, 101, 68, 56, 74, 60, 53, 68, 88, 83, 55, 63, 72, 56, 71, 85, 65, 48, 78, 69, 89, 64, 62, 54, 45, 68, 65, 57, 87, 59, 68, 72, 56, 81, 93, 57, 59, 55, 83, 73, 57, 61, 59, 54, 58, 61, 73, 98, 73, 87, 49, 72, 93, 68, 77, 62, 59, 59, 55, 50, 60, 88, 53, 57, 32, 70, 40, 85, 61, 65, 71, 66, 48, 65, 81, 59, 78, 56, 44, 88, 54, 49, 107, 60, 48, 67, 83, 57, 99, 66, 81, 51, 77, 72, 82, 69, 72, 80, 53, 55, 73, 52, 66, 60, 95, 52, 92, 73, 59, 81, 103, 47, 80, 69, 70, 81, 52, 76, 46, 57, 63, 89, 51, 58, 53, 67, 96, 65, 55, 42, 80, 76, 46, 52, 87, 74, 65, 40, 79, 62, 81, 63, 38, 87, 54, 43, 63, 54, 46, 59, 50, 95, 64, 51, 65, 86, 61, 56, 59, 57, 93, 57, 72, 70, 56, 51, 65, 70, 61, 67, 76, 91, 55, 49, 63, 55, 77, 68, 65, 91, 93, 60, 56, 98, 81, 63, 50, 72, 54, 61, 59, 60, 82, 86, 67, 80, 55, 70, 72, 97, 80, 82, 48, 54, 64, 67, 102, 60, 44, 72, 72, 56, 61, 83, 79, 46, 66, 60, 102, 54, 69, 89, 53, 82, 67, 53, 63, 86, 62, 56, 44, 117, 73, 54, 76, 59, 65, 61, 62, 59, 76, 58, 69, 55, 67, 89, 75, 46, 97, 87, 46, 77, 57, 65, 64, 66, 79, 61, 61, 58, 82, 74, 53, 93, 62, 59, 50, 60, 93, 56, 66, 45, 79, 50, 74, 64, 64, 73, 76, 69, 80, 39, 72, 83, 55, 74, 97, 51, 56, 59, 57, 72, 66, 67, 87, 65, 75, 64, 53, 61, 81, 90, 84, 61, 73, 49, 91, 82, 58, 64, 61, 75, 65, 68, 56, 68, 76, 55, 104, 46, 61, 57, 67, 64, 64, 67, 70, 64, 89, 66, 68, 80, 49, 70, 59, 66, 69, 65, 39, 67, 66, 52, 51, 79, 88, 89, 59, 66, 26, 46, 47, 59, 58, 64, 68, 61, 75, 64, 66, 64, 54, 51, 43, 43, 51, 57, 67, 81, 65, 59, 60, 70, 59, 64, 67, 78, 56, 74, 48, 75, 44, 79, 92, 80, 62, 62, 50, 49, 66, 64, 46, 82, 83, 63, 55, 62, 80, 72, 68, 47, 59, 55, 69, 42, 73, 57, 65, 58, 71, 57, 64, 69, 72, 57, 99, 66, 65, 52, 62, 65, 102, 71, 52, 55, 67, 72, 84, 69, 54, 52, 65, 75, 84, 55, 53, 90, 83, 80, 74, 84, 60, 61, 61, 50, 66, 67, 47, 110, 116, 81, 67, 75, 67, 55, 68, 58, 46, 61, 48, 67, 72, 44, 68, 61, 66, 32, 76, 69, 63, 68, 61, 60, 58, 55, 54, 55, 48, 68, 92, 58, 70, 76, 69, 91, 65, 43, 58, 68, 86, 57, 89, 67, 60, 67, 52, 52, 60, 67, 68, 67, 62, 78, 57, 63, 60, 63, 58, 80, 58, 82, 54, 93, 82, 55, 77, 54, 58, 60, 61, 87, 47, 55, 47, 72, 51, 60, 53, 56, 77, 54, 62, 65, 74, 54, 83, 63, 72, 94, 57, 68, 57, 53, 53, 54, 45, 74, 75, 82, 78, 61, 88, 55, 67, 59, 69, 53, 88, 65, 66, 71, 78, 64, 61, 63, 62, 71, 74, 84, 57, 52, 80, 85, 88, 94, 51, 75, 57, 60, 41, 64, 80, 50, 58, 72, 78, 67, 84, 84, 65, 64, 64, 63, 55, 58, 90, 97, 56, 71, 58, 63, 45, 64, 56, 75, 73, 69, 64, 69, 74, 105, 119, 58, 68, 54, 78, 77, 66, 87, 82, 71, 48, 71, 71, 74, 66, 64, 91, 52, 72, 55, 73, 41, 73, 54, 69, 85, 54, 52, 55, 45, 50, 51, 51, 67, 57, 67, 54, 79, 56, 60, 71, 73, 68, 112, 70, 91, 80, 66, 78, 75, 73, 81, 48, 59, 57, 96, 59, 98, 92, 64, 74, 94, 59, 57, 63, 66, 57, 56, 43, 110, 55, 54, 65, 62, 59, 40, 55, 46, 81, 75, 58, 111, 61, 70, 71, 76, 62, 66, 75, 62, 49, 44, 52, 76, 64, 55, 50, 60, 65, 62, 67, 58, 58, 57, 58, 57, 54, 71, 67, 63, 58, 75, 70, 67, 70, 65, 68, 89, 62, 81, 61, 48, 50, 88, 58, 57, 59, 99, 64, 49, 78, 49, 73, 63, 63, 63, 66, 81, 118, 63, 75, 81, 55, 67, 56, 74, 76, 56, 69, 56, 45, 78, 69, 56, 62, 60, 71, 73, 55, 71, 63, 61, 68, 61, 65, 112, 73, 66, 56, 72, 72, 79, 53, 141, 80, 71, 63, 96, 59, 55, 53, 57, 86, 63, 69, 47, 68, 68, 76, 67, 53, 66, 61, 111, 75, 61, 77, 60, 62, 72, 62, 119, 63, 76, 76, 64, 61, 64, 49, 75, 53, 62, 58, 61, 57, 79, 71, 70, 86, 62, 64, 54, 84, 72, 107, 58, 73, 68, 58, 50, 70, 60, 54, 68, 59, 79, 57, 64, 62, 66, 69, 55, 83, 70, 69, 68, 72, 65, 62, 65, 56, 90, 54, 53, 47, 49, 90, 56, 51, 64, 45, 63, 55, 46, 64, 58, 57, 57, 59, 60, 67, 92, 70, 55, 69, 66, 77, 59, 75, 84, 68, 65, 54, 58, 103, 83, 69, 68, 66, 60, 59, 67, 75, 65, 55, 60, 60, 68, 68, 64, 56, 60, 50, 51, 57, 55, 76, 65, 56, 51, 75, 68, 89, 87, 56, 76, 44, 68, 63, 46, 63, 74, 86, 68, 68, 48, 67, 76, 64, 65, 63, 68, 50, 77, 59, 48, 87, 79, 68, 61, 55, 80, 67, 75, 54, 58, 49, 63, 62, 56, 88, 82, 87, 78, 68, 56, 63, 75, 70, 62, 56, 79, 68, 116, 63, 71, 81, 65, 65, 114, 58, 48, 66, 63, 63, 63, 76, 53, 99, 60, 77, 54, 68, 62, 79, 61, 80, 99, 99, 46, 62, 62, 75, 49, 81, 59, 49, 46, 58, 72, 72, 53, 64, 70, 70, 80, 63, 56, 73, 78, 61, 59, 88, 58, 69, 51, 85, 65, 72, 55, 99, 67, 55, 71, 58, 46, 55, 67, 57, 75, 63, 61, 77, 68, 92, 82, 60, 57, 99, 55, 61, 53, 66, 63, 67, 64, 112, 64, 83, 58, 52, 57, 86, 62, 103, 59, 83, 59, 60, 76, 60, 68, 83, 63, 61, 66, 64, 119, 68, 62, 58, 52, 63, 57, 66, 62, 63, 61, 71, 62, 80, 53, 55, 99, 59, 69, 52, 69, 68, 63, 56, 65, 70, 69, 62, 47, 58, 55, 60, 80, 81, 71, 42, 64, 64, 62, 66, 66, 70, 67, 64, 67, 111, 75, 108, 66, 71, 46, 76, 53, 49, 63, 54, 79, 68, 56, 69, 82, 58, 69, 49, 74, 60, 58, 68, 62, 66, 65, 72, 55, 81, 66, 88, 58, 76, 67, 79, 65, 65, 38, 51, 62, 72, 71, 102, 61, 53, 68, 53, 50, 62, 70, 56, 67, 60, 52, 74, 64, 73, 68, 56, 74, 57, 64, 54, 55, 65, 74, 89, 52, 77, 67, 64, 70, 72, 67, 56, 79, 111, 72, 54, 53, 67, 63, 52, 80, 67, 47, 58, 70, 71, 59, 62, 52, 59, 73, 66, 61, 58, 62, 55, 57, 62, 67, 55, 43, 65, 63, 61, 70, 67, 52, 52, 69, 41, 74, 62, 86, 67, 81, 79, 66, 62, 86, 58, 61, 64, 70, 68, 63, 84, 63, 90, 63, 60, 143, 63, 62, 76, 55, 66, 63, 59, 51, 90, 62, 61, 88, 88, 58, 68, 71, 55, 59, 57, 67, 78, 58, 116, 47, 66, 49, 74, 62, 58, 56, 68, 54, 51, 60, 58, 87, 58, 71, 69, 102, 66, 88, 78, 67, 57, 42, 70, 67, 49, 71, 49, 53, 71, 56, 68, 49, 74, 73, 83, 58, 58, 78, 53, 71, 76, 64, 57, 85, 66, 66, 70, 58, 64, 39, 106, 55, 57, 73, 82, 79, 67, 73, 61, 88, 70, 77, 80, 102, 79, 57, 56, 58, 70, 69, 53, 64, 66, 54, 59, 49, 71, 68, 94, 63, 67, 100, 57, 62, 52, 70, 64, 71, 62, 84, 59, 58, 56, 53, 47, 72, 60, 61, 65, 81, 46, 51, 105, 68, 63, 69, 70, 55, 88, 51, 56, 88, 57, 77, 58, 67, 67, 58, 62, 68, 52, 84, 66, 81, 61, 65, 57, 60, 54, 73, 74, 55, 61, 64, 63, 54, 59, 75, 57, 69, 66, 47, 64, 46, 61, 77, 68, 70, 61, 64, 80, 66, 74, 78, 72, 79, 61, 57, 62, 61, 63, 67, 79, 48, 90, 75, 52, 63, 88, 66, 52, 45, 78, 83, 60, 73, 52, 56, 57, 63, 65, 101, 55, 65, 55, 75, 41, 68, 71, 54, 51, 59, 65, 60, 55, 57, 67, 59, 70, 46, 69, 58, 93, 55, 64, 61, 70, 79, 63, 70, 52, 57, 73, 78, 52, 72, 61, 84, 60, 75, 71, 68, 108, 77, 62, 71, 81, 71, 82, 83, 61, 56, 54, 59, 63, 56, 68, 70, 57, 80, 83, 57, 59, 72, 58, 84, 72, 61, 67, 49, 98, 73, 63, 58, 58, 76, 81, 64, 87, 45, 64, 112, 80, 54, 59, 56, 79, 64, 62, 72, 65, 70, 43, 80, 63, 61, 56, 57, 86, 57, 61, 75, 61, 111, 61, 78, 70, 57, 51, 72, 70, 46, 90, 73, 59, 53, 61, 68, 83, 96, 61, 69, 60, 63, 60, 86, 67, 59, 56, 84, 92, 66, 62, 61, 46, 58, 55, 65, 65, 103, 59, 57, 56, 64, 49, 56, 55, 73, 62, 60, 64, 61, 60, 71, 82, 83, 55, 65, 71, 71, 57, 60, 66, 60, 61, 71, 75, 73, 67, 57, 56, 63, 56, 54, 110, 69, 69, 58, 59, 59, 61, 70, 87, 48, 69, 69, 52, 67, 62, 77, 48, 73, 74, 63, 72, 62, 70, 61, 66, 58, 58, 62, 77, 46, 68, 63, 60, 58, 60, 75, 55, 75, 89, 65, 49, 54, 64, 67, 82, 67, 69, 62, 74, 63, 57, 65, 77, 59, 65, 72, 66, 70, 58, 86, 58, 65, 84, 55, 55, 54, 69, 64, 51, 61, 60, 54, 90, 71, 49, 68, 77, 69, 56, 74, 42, 70, 62, 61, 58, 64, 51, 58, 97, 64, 59, 55, 62, 63, 111, 82, 71, 56, 80, 68, 60, 51, 69, 54, 50, 66, 66, 55, 62, 70, 80, 94, 72, 57, 50, 77, 79, 67, 81, 80, 55, 71, 74, 50, 63, 60, 51, 99, 60, 68, 49, 66, 43, 55, 50, 63, 60, 56, 121, 56, 69, 59, 65, 129, 71, 115, 70, 58, 63, 65, 80, 64, 60, 55, 61, 52, 69, 76, 67, 62, 68, 40, 56, 60, 77, 85, 62, 63, 55, 75, 77, 59, 71, 49, 47, 82, 57, 65, 101, 50, 53, 59, 75, 62, 43, 76, 86, 76, 76, 80, 56, 81, 62, 107, 72, 62, 60, 54, 59, 63, 60, 78, 67, 64, 62, 75, 68, 69, 55, 63, 52, 69, 69, 64, 58, 55, 62, 71, 86, 45, 74, 57, 51, 71, 61, 56, 57, 54, 60, 62, 56, 57, 52, 62, 75, 66, 79, 56, 45, 68, 64, 57, 63, 64, 64, 59, 74, 65, 55, 76, 73, 92, 61, 60, 47, 67, 114, 71, 88, 63, 57, 89, 56, 59, 62, 72, 53, 70, 90, 69, 78, 77, 89, 46, 43, 61, 62, 61, 94, 65, 53, 57, 60, 60, 101, 53, 61, 43, 58, 74, 60, 97, 53, 55, 59, 42, 67, 66, 57, 77, 45, 47, 75, 72, 65, 43, 60, 50, 92, 52, 65, 68, 62, 76, 58, 56, 54, 51, 64, 53, 69, 72, 92, 60, 104, 92, 75, 58, 60, 67, 68, 67, 67, 46, 69, 61, 95, 71, 64, 56, 82, 85, 59, 48, 95, 53, 68, 64, 68, 38, 63, 62, 76, 100, 67, 68, 57, 50, 79, 59, 60, 109, 57, 98, 59, 72, 64, 54, 54, 76, 54, 69, 66, 66, 61, 62, 59, 63, 51, 47, 67, 60, 69, 61, 64, 58, 59, 62, 97, 64, 62, 75, 66, 57, 59, 47, 78, 102, 66, 53, 65, 85, 73, 57, 66, 72, 67, 62, 56, 74, 73, 62, 109, 55, 50, 106, 90, 59, 69, 48, 90, 65, 40, 50, 58, 70, 44, 65, 64, 52, 76, 67, 83, 59, 73, 60, 65, 67, 74, 72, 78, 62, 71, 52, 55, 53, 85, 72, 68, 57, 61, 55, 66, 75, 89, 55, 74, 62, 57, 73, 54, 64, 61, 78, 75, 64, 70, 59, 62, 80, 80, 79, 63, 62, 53, 58, 60, 60, 65, 67, 73, 67, 79, 66, 54, 72, 49, 80, 46, 61, 60, 65, 66, 83, 78, 85, 26, 74, 61, 58, 71, 56, 38, 84, 49, 67, 66, 64, 58, 58, 60, 64, 105, 57, 64, 85, 69, 54, 72, 46, 77, 71, 67, 108, 63, 47, 61, 106, 60, 74, 66, 64, 56, 56, 70, 74, 57, 55, 73, 53, 64, 64, 74, 61, 69, 56, 58, 67, 58, 54, 44, 46, 51, 56, 91, 74, 90, 53, 40, 52, 100, 57, 109, 78, 97, 84, 60, 68, 77, 72, 62, 69, 60, 77, 65, 86, 84, 62, 121, 81, 77, 79, 73, 61, 64, 98, 61, 66, 71, 69, 77, 47, 26, 64, 56, 75, 52, 56, 66, 65, 54, 61, 51, 68, 66, 68, 70, 51, 51, 74, 60, 56, 60, 60, 59, 64, 61, 62, 61, 82, 91, 69, 95, 56, 54, 65, 59, 43, 70, 57, 64, 68, 86, 109, 69, 50, 67, 65, 48, 72, 69, 58, 66, 48, 54, 108, 52, 105, 66, 61, 66, 63, 51, 51, 69, 106, 65, 64, 47, 53, 69, 66, 61, 53, 69, 56, 58, 61, 67, 57, 67, 56, 52, 83, 68, 83, 60, 63, 64, 60, 64, 77, 64, 70, 72, 68, 72, 130, 96, 66, 61, 57, 59, 73, 61, 59, 65, 65, 49, 64, 64, 67, 80, 67, 90, 60, 76, 66, 54, 66, 63, 63, 73, 63, 64, 60, 57, 63, 63, 49, 96, 64, 57, 70, 102, 72, 96, 60, 65, 63, 57, 81, 67, 49, 93, 63, 74, 53, 44, 57, 43, 59, 74, 69, 60, 64, 68, 78, 69, 74, 58, 68, 66, 68, 62, 69, 55, 78, 45, 55, 62, 61, 66, 68, 60, 81, 56, 65, 68, 66, 31, 71, 62, 70, 66, 54, 88, 51, 70, 82, 62, 63, 53, 67, 60, 79, 62, 66, 54, 69, 56, 95, 67, 69, 74, 48, 61, 51, 60, 64, 84, 53, 71, 53, 69, 56, 66, 51, 54, 64, 65, 67, 77, 52, 58, 55, 69, 70, 77, 61, 67, 65, 85, 38, 53, 42, 70, 54, 57, 54, 60, 63, 62, 85, 103, 70, 60, 76, 63, 84, 58, 62, 87, 39, 73, 80, 79, 62, 59, 82, 81, 59, 47, 59, 51, 69, 56, 64, 61, 72, 65, 56, 65, 53, 69, 61, 55, 54, 52, 62, 76, 71, 54, 76, 49, 58, 54, 71, 67, 73, 56, 71, 87, 69, 50, 64, 56, 58, 82, 69, 74, 56, 54, 66, 63, 81, 82, 74, 100, 92, 52, 53, 57, 78, 50, 53, 61, 72, 53, 73, 63, 78, 56, 75, 50, 65, 60, 61, 63, 56, 85, 63, 62, 55, 77, 55, 84, 69, 76, 62, 63, 83, 59, 65, 50, 62, 68, 68, 72, 55, 61, 55, 66, 54, 55, 54, 64, 61, 51, 50, 54, 77, 70, 88, 58, 54, 62, 72, 46, 77, 56, 71, 58, 53, 77, 65, 73, 68, 69, 93, 59, 61, 49, 61, 67, 84, 55, 56, 50, 89, 60, 57, 60, 85, 76, 67, 78, 76, 63, 68, 64, 88, 63, 54, 64, 66, 66, 75, 62, 66, 104, 59, 58, 71, 59, 69, 69, 69, 68, 79, 52, 73, 56, 65, 56, 65, 51, 61, 59, 89, 55, 75, 49, 61, 68, 55, 59, 65, 61, 50, 52, 69, 99, 50, 61, 92, 67, 78, 62, 56, 60, 52, 55, 60, 39, 64, 50, 55, 70, 55, 66, 63, 52, 67, 62, 70, 65, 65, 60, 66, 63, 63, 103, 60, 49, 61, 52, 96, 73, 72, 67, 65, 62, 65, 58, 73, 57, 66, 64, 20, 55, 74, 74, 77, 75, 69, 57, 63, 64, 52, 69, 65, 70, 69, 56, 68, 68, 58, 96, 55, 63, 111, 72, 61, 49, 62, 76, 60, 67, 62, 69, 70, 58, 62, 68, 64, 47, 66, 131, 67, 103, 61, 73, 51, 58, 67, 70, 70, 76, 51, 58, 53, 64, 74, 69, 66, 61, 69, 45, 62, 69, 72, 70, 44, 66, 71, 66, 69, 52, 74, 88, 75, 58, 63, 62, 67, 72, 59, 69, 60, 56, 48, 64, 76, 58, 66, 56, 60, 65, 75, 62, 77, 56, 72, 67, 60, 50, 54, 75, 64, 65, 75, 60, 63, 43, 85, 60, 64, 69, 68, 58, 64, 77, 75, 50, 67, 78, 45, 72, 62, 73, 56, 69, 69, 60, 47, 65, 64, 70, 50, 66, 46, 61, 82, 64, 58, 67, 65, 70, 49, 68, 69, 58, 70, 84, 48, 84, 52, 70, 75, 68, 59, 68, 61, 73, 76, 89, 64, 73, 65, 54, 50, 73, 53, 63, 68, 58, 57, 58, 65, 61, 62, 40, 64, 57, 53, 56, 46, 72, 59, 79, 78, 50, 89, 78, 80, 72, 62, 60, 74, 76, 64, 48, 68, 84, 77, 109, 79, 51, 80, 85, 72, 62, 76, 66, 54, 63, 80, 59, 67, 69, 62, 114, 78, 62, 80, 97, 51, 66, 69, 89, 72, 86, 70, 60, 75, 62, 52, 61, 99, 61, 61, 71, 68, 83, 68, 51, 71, 66, 62, 50, 77, 73, 62, 61, 54, 64, 71, 76, 60, 59, 58, 63, 82, 62, 103, 92, 76, 63, 54, 69, 46, 49, 63, 66, 42, 49, 58, 63, 69, 58, 66, 76, 79, 63, 60, 65, 67, 67, 60, 78, 51, 75, 70, 66, 53, 68, 56, 62, 63, 63, 57, 63, 61, 46, 66, 48, 67, 80, 110, 62, 77, 59, 64, 61, 51, 56, 51, 54, 53, 72, 53, 62, 60, 79, 56, 76, 60, 66, 58, 60, 69, 56, 52, 52, 69, 40, 70, 60, 85, 68, 84, 62, 65, 63, 73, 65, 61, 60, 70, 101, 83, 60, 69, 107, 48, 93, 75, 75, 43, 62, 58, 60, 61, 79, 73, 83, 82, 73, 77, 65, 62, 65, 61, 104, 70, 62, 76, 55, 64, 53, 74, 55, 63, 62, 58, 69, 73, 62, 76, 63, 58, 55, 72, 85, 43, 41, 42, 74, 62, 67, 75, 74, 58, 66, 65, 64, 72, 64, 93, 60, 67, 74, 53, 57, 68, 81, 63, 70, 56, 76, 71, 54, 69, 68, 82, 75, 71, 79, 77, 78, 64, 63, 67, 58, 51, 63, 65, 61, 53, 61, 72, 59, 65, 67, 67, 56, 61, 72, 65, 60, 48, 57, 62, 69, 86, 64, 100, 72, 73, 51, 54, 72, 59, 59, 62, 70, 51, 56, 71, 55, 70, 87, 115, 73, 61, 57, 86, 61, 63, 60, 63, 58, 87, 60, 70, 48, 57, 83, 78, 66, 67, 70, 47, 60, 59, 54, 64, 92, 55, 74, 56, 56, 76, 75, 59, 53, 64, 65, 59, 68, 65, 71, 61, 70, 82, 61, 74, 101, 64, 66, 51, 48, 73, 65, 56, 60, 70, 81, 60, 67, 85, 55, 58, 86, 69, 59, 71, 86, 70, 64, 65, 81, 65, 64, 68, 60, 67, 70, 62, 72, 79, 58, 64, 88, 64, 71, 75, 69, 50, 48, 49, 56, 76, 67, 65, 57, 77, 64, 103, 52, 70, 58, 50, 72, 79, 72, 49, 63, 65, 56, 64, 72, 52, 59, 80, 49, 97, 66, 67, 59, 74, 61, 73, 48, 103, 54, 61, 46, 124, 66, 97, 93, 50, 67, 71, 91, 59, 51, 88, 63, 63, 63, 72, 90, 76, 91, 83, 61, 79, 63, 58, 70, 67, 91, 65, 53, 57, 65, 63, 51, 74, 62, 56, 69, 64, 57, 67, 57, 64, 78, 102, 79, 56, 59, 70, 53, 74, 60, 70, 56, 83, 61, 113, 70, 64, 52, 26, 55, 51, 96, 51, 69, 70, 82, 57, 71, 49, 51, 107, 47, 61, 75, 80, 63, 90, 63, 56, 72, 71, 58, 54, 69, 51, 64, 56, 85, 58, 88, 49, 90, 50, 80, 64, 43, 58, 73, 90, 71, 62, 61, 60, 61, 59, 80, 87, 43, 57, 56, 58, 54, 87, 62, 92, 60, 86, 74, 63, 69, 65, 53, 72, 54, 54, 49, 73, 55, 61, 68, 68, 53, 67, 55, 55, 67, 99, 62, 83, 43, 58, 60, 59, 53, 110, 68, 69, 85, 68, 57, 83, 78, 116, 59, 61, 42, 75, 71, 64, 52, 70, 66, 82, 54, 64, 56, 47, 52, 66, 62, 38, 48, 65, 83, 54, 81, 65, 67, 74, 67, 54, 66, 69, 52, 53, 73, 70, 56, 90, 52, 62, 61, 53, 72, 53, 49, 61, 58, 62, 71, 90, 66, 62, 85, 72, 95, 59, 66, 50, 88, 58, 49, 60, 59, 67, 79, 75, 47, 47, 76, 78, 63, 63, 62, 65, 44, 60, 60, 56, 88, 60, 60, 55, 68, 116, 50, 59, 68, 56, 67, 64, 58, 68, 51, 67, 52, 62, 74, 81, 63, 62, 81, 60, 62, 81, 70, 68, 61, 65, 78, 56, 49, 67, 83, 84, 63, 75, 66, 54, 56, 59, 69, 59, 51, 59, 68, 83, 64, 77, 51, 67, 49, 62, 77, 68, 71, 59, 109, 69, 62, 87, 63, 56, 49, 49, 58, 92, 50, 54, 77, 59, 59, 44, 41, 64, 62, 86, 62, 53, 67, 54, 50, 62, 59, 41, 65, 62, 76, 96, 79, 62, 63, 46, 44, 61, 103, 66, 66, 62, 49, 51, 76, 55, 69, 71, 49, 67, 49, 59, 47, 71, 66, 61, 64, 67, 57, 57, 63, 59, 69, 57, 90, 107, 67, 51, 63, 63, 61, 76, 56, 58, 62, 46, 62, 98, 69, 57, 73, 82, 64, 58, 73, 72, 64, 73, 45, 97, 63, 46, 77, 59, 66, 52, 60, 80, 63, 57, 64, 70, 63, 108, 63, 106, 61, 77, 88, 60, 61, 76, 50, 67, 42, 75, 80, 69, 58, 52, 63, 54, 66, 77, 60, 86, 61, 63, 81, 65, 58, 56, 72, 64, 51, 37, 58, 70, 86, 55, 74, 51, 61, 70, 70, 49, 70, 73, 60, 74, 98, 64, 67, 113, 47, 58, 74, 60, 57, 59, 86, 94, 63, 62, 66, 44, 79, 55, 75, 70, 61, 73, 50, 42, 57, 63, 58, 63, 61, 48, 78, 75, 56, 67, 62, 66, 119, 62, 105, 67, 67, 60, 49, 58, 77, 59, 77, 75, 54, 83, 80, 64, 57, 80, 58, 61, 75, 48, 75, 73, 80, 68, 45, 66, 49, 62, 79, 67, 89, 54, 53, 61, 57, 78, 93, 57, 67, 85, 62, 59, 50, 64, 62, 72, 56, 69, 65, 58, 66, 60, 65, 58, 85, 75, 59, 45, 55, 68, 58, 54, 74, 61, 70, 75, 78, 73, 54, 66, 67, 59, 74, 95, 62, 50, 49, 64, 76, 58, 69, 54, 80, 47, 68, 60, 54, 70, 92, 74, 63, 58, 55, 57, 71, 60, 79, 77, 58, 59, 76, 56, 60, 119, 61, 46, 50, 56, 55, 73, 79, 52, 52, 82, 57, 57, 80, 57, 59, 54, 53, 51, 101, 72, 67, 53, 59, 78, 67, 75, 61, 70, 66, 74, 61, 55, 70, 59, 57, 71, 70, 51, 71, 75, 64, 70, 56, 68, 48, 68, 44, 51, 78, 92, 80, 100, 122, 65, 67, 71, 88, 62, 50, 46, 66, 55, 60, 83, 57, 61, 63, 88, 104, 61, 77, 76, 95, 61, 55, 76, 88, 56, 94, 66, 76, 89, 72, 66, 60, 131, 71, 60, 72, 42, 72, 47, 57, 71, 65, 50, 70, 68, 54, 70, 46, 58, 74, 48, 97, 67, 56, 61, 81, 93, 67, 100, 76, 74, 60, 43, 79, 66, 79, 72, 69, 70, 92, 92, 70, 68, 63, 66, 54, 57, 68, 64, 83, 75, 55, 68, 78, 55, 64, 58, 70, 62, 48, 68, 80, 71, 69, 57, 80, 63, 43, 54, 54, 61, 69, 97, 69, 44, 66, 71, 77, 61, 67, 83, 67, 65, 60, 62, 52, 61, 63, 51, 48, 64, 56, 69, 63, 46, 49, 58, 72, 72, 69, 55, 59, 67, 60, 85, 74, 73, 54, 59, 84, 62, 68, 58, 73, 59, 76, 68, 98, 70, 73, 63, 72, 52, 47, 76, 58, 70, 66, 61, 112, 76, 54, 101, 67, 68, 61, 65, 91, 59, 42, 61, 46, 62, 49, 50, 62, 85, 65, 60, 69, 65, 67, 64, 76, 65, 44, 79, 87, 79, 81, 78, 61, 68, 64, 82, 69, 82, 64, 49, 58, 64, 84, 77, 66, 69, 67, 63, 61, 82, 76, 76, 52, 67, 78, 56, 66, 100, 58, 75, 75, 70, 49, 69, 63, 66, 59, 55, 66, 61, 74, 55, 74, 60, 79, 66, 62, 62, 48, 73, 63, 65, 62, 75, 79, 64, 58, 72, 79, 64, 87, 77, 72, 66, 60, 66, 72, 62, 79, 59, 71, 56, 64, 75, 69, 60, 76, 92, 64, 63, 63, 93, 59, 58, 62, 107, 65, 71, 44, 70, 65, 57, 80, 67, 88, 60, 53, 65, 79, 50, 57, 42, 88, 90, 56, 61, 73, 55, 65, 66, 72, 57, 83, 65, 61, 71, 59, 62, 79, 62, 49, 93, 86, 53, 65, 59, 60, 60, 48, 63, 70, 57, 85, 72, 78, 68, 70, 75, 82, 71, 64, 65, 51, 52, 78, 57, 71, 68, 59, 79, 43, 58, 60, 49, 52, 93, 60, 60, 67, 63, 71, 54, 65, 53, 59, 67, 77, 83, 54, 50, 55, 67, 42, 100, 71, 64, 70, 62, 69, 61, 67, 70, 62, 46, 69, 46, 56, 36, 68, 68, 81, 73, 70, 69, 57, 68, 77, 69, 94, 91, 56, 77, 53, 105, 53, 78, 116, 70, 63, 47, 76, 61, 61, 65, 67, 46, 57, 67, 65, 70, 86, 59, 66, 51, 64, 98, 56, 67, 81, 51, 68, 58, 86, 115, 62, 64, 66, 58, 59, 52, 64, 78, 64, 66, 80, 105, 81, 72, 59, 50, 49, 50, 56, 58, 46, 95, 67, 77, 56, 80, 68, 55, 68, 68, 77, 57, 61, 55, 70, 80, 55, 64, 58, 75, 66, 48, 78, 55, 64, 65, 66, 75, 79, 48, 66, 57, 47, 61, 59, 61, 98, 64, 68, 66, 68, 77, 47, 57, 62, 53, 54, 142, 61, 59, 71, 53, 63, 86, 86, 83, 62, 67, 78, 65, 63, 87, 62, 72, 75, 83, 62, 48, 67, 67, 59, 94, 52, 65, 88, 88, 49, 61, 47, 63, 71, 53, 57, 57, 68, 98, 113, 65, 59, 69, 68, 69, 65, 101, 56, 66, 68, 58, 57, 47, 75, 84, 85, 62, 64, 61, 63, 55, 61, 67, 81, 61, 57, 56, 50, 51, 61, 76, 57, 42, 59, 73, 63, 56, 57, 68, 71, 79, 64, 64, 65, 55, 65, 87, 63, 66, 68, 100, 65, 64, 60, 65, 86, 64, 70, 56, 55, 58, 52, 61, 55, 60, 58, 63, 73, 82, 61, 57, 72, 59, 57, 60, 67, 44, 75, 79, 64, 100, 53, 48, 63, 57, 59, 56, 54, 65, 76, 54, 70, 52, 65, 77, 79, 103, 67, 63, 64, 65, 66, 62, 67, 64, 63, 84, 63, 69, 65, 51, 87, 54, 84, 54, 68, 81, 61, 59, 56, 57, 60, 48, 51, 73, 61, 63, 77, 68, 57, 50, 77, 71, 83, 55, 61, 61, 64, 80, 62, 77, 73, 69, 55, 51, 75, 73, 69, 68, 75, 68, 50, 93, 87, 53, 62, 65, 65, 47, 59, 61, 70, 63, 48, 55, 62, 58, 65, 95, 55, 75, 52, 71, 57, 80, 48, 49, 74, 60, 65, 86, 81, 44, 78, 63, 65, 55, 95, 55, 50, 54, 77, 52, 54, 52, 51, 82, 66, 72, 63, 54, 51, 63, 68, 42, 64, 59, 65, 60, 71, 61, 62, 55, 97, 95, 63, 61, 81, 73, 73, 88, 59, 79, 56, 62, 73, 68, 72, 77, 55, 63, 58, 56, 75, 71, 50, 73, 52, 68, 59, 44, 63, 67, 58, 74, 76, 46, 65, 49, 90, 62, 55, 91, 69, 91, 67, 63, 70, 69, 56, 51, 54, 43, 56, 62, 59, 59, 65, 63, 59, 52, 57, 74, 66, 101, 65, 50, 88, 87, 74, 66, 87, 50, 41, 66, 53, 70, 70, 64, 48, 55, 69, 59, 65, 59, 51, 71, 70, 55, 56, 51, 51, 104, 57, 69, 49, 57, 49, 54, 64, 127, 62, 62, 95, 65, 60, 81, 64, 69, 57, 44, 60, 88, 51, 68, 55, 59, 66, 65, 58, 70, 58, 58, 77, 50, 104, 63, 115, 53, 66, 69, 59, 77, 81, 82, 56, 57, 77, 82, 75, 82, 59, 85, 62, 58, 60, 65, 65, 70, 62, 76, 55, 59, 72, 49, 74, 71, 93, 68, 49, 55, 64, 86, 79, 75, 55, 49, 81, 55, 71, 54, 62, 67, 58, 93, 61, 62, 60, 68, 66, 50, 81, 54, 53, 47, 81, 77, 54, 77, 83, 70, 68, 71, 64, 69, 56, 74, 45, 70, 70, 97, 75, 38, 57, 76, 61, 66, 74, 59, 87, 63, 60, 59, 69, 65, 62, 72, 59, 61, 72, 58, 57, 80, 90, 60, 59, 74, 69, 69, 60, 87, 60, 50, 56, 61, 63, 64, 52, 70, 64, 79, 59, 72, 78, 75, 64, 60, 64, 60, 77, 82, 53, 63, 67, 68, 55, 65, 70, 68, 74, 64, 79, 63, 63, 53, 57, 41, 77, 59, 59, 77, 58, 63, 61, 54, 68, 57, 58, 90, 80, 78, 60, 115, 114, 81, 65, 60, 83, 55, 62, 58, 57, 64, 77, 98, 48, 69, 72, 89, 123, 67, 67, 68, 104, 51, 51, 80, 82, 69, 55, 55, 68, 86, 72, 73, 55, 56, 56, 69, 91, 57, 69, 64, 68, 66, 66, 64, 73, 75, 72, 52, 72, 65, 84, 57, 56, 59, 65, 59, 77, 73, 63, 85, 54, 92, 74, 57, 68, 56, 66, 54, 51, 61, 80, 78, 54, 69, 50, 57, 82, 71, 64, 65, 59, 76, 77, 58, 71, 58, 53, 60, 83, 59, 71, 64, 79, 73, 78, 65, 52, 45, 62, 63, 55, 67, 63, 95, 39, 48, 58, 61, 63, 81, 57, 93, 71, 78, 72, 61, 59, 54, 58, 50, 56, 67, 47, 74, 72, 52, 35, 74, 52, 57, 69, 65, 62, 70, 58, 87, 59, 75, 67, 72, 68, 65, 66, 56, 79, 78, 75, 62, 76, 65, 48, 50, 77, 48, 58, 54, 58, 47, 81, 68, 89, 87, 61, 117, 63, 58, 66, 50, 68, 60, 58, 48, 56, 43, 67, 67, 57, 90, 71, 47, 82, 67, 63, 66, 75, 66, 54, 60, 83, 63, 62, 84, 74, 72, 64, 100, 77, 64, 71, 60, 47, 60, 72, 76, 59, 55, 81, 58, 62, 75, 60, 78, 68, 50, 78, 62, 88, 72, 67, 60, 72, 60, 64, 78, 81, 77, 70, 64, 52, 73, 71, 76, 78, 73, 54, 42, 54, 61, 53, 62, 66, 49, 66, 83, 77, 59, 54, 66, 84, 73, 92, 57, 75, 56, 79, 72, 77, 66, 82, 58, 71, 54, 53, 86, 65, 52, 71, 94, 76, 74, 66, 75, 79, 65, 69, 95, 55, 87, 58, 71, 79, 45, 68, 61, 60, 66, 79, 51, 82, 64, 52, 65, 86, 93, 57, 62, 84, 50, 57, 59, 59, 66, 61, 65, 26, 50, 72, 48, 85, 81, 79, 55, 73, 76, 65, 49, 57, 73, 45, 68, 89, 63, 64, 68, 64, 56, 85, 63, 72, 50, 67, 46, 50, 76, 47, 57, 58, 64, 56, 61, 67, 57, 66, 52, 56, 83, 65, 61, 58, 95, 62, 64, 57, 71, 62, 54, 76, 75, 42, 63, 75, 103, 59, 50, 57, 58, 67, 68, 50, 67, 70, 60, 64, 63, 65, 58, 68, 55, 53, 71, 77, 55, 66, 59, 77, 61, 50, 90, 68, 78, 59, 56, 62, 108, 52, 80, 51, 73, 53, 59, 61, 53, 63, 63, 60, 64, 75, 60, 59, 75, 74, 66, 58, 74, 64, 87, 76, 66, 77, 63, 70, 64, 59, 52, 52, 67, 46, 71, 57, 54, 69, 72, 74, 56, 68, 98, 60, 62, 62, 84, 42, 66, 57, 60, 59, 72, 65, 70, 60, 85, 50, 51, 74, 65, 70, 75, 57, 62, 74, 63, 63, 47, 78, 75, 50, 63, 52, 60, 68, 72, 69, 54, 106, 55, 71, 59, 63, 63, 86, 81, 108, 78, 72, 48, 65, 65, 75, 85, 60, 60, 78, 49, 74, 53, 57, 77, 54, 73, 60, 88, 60, 52, 70, 51, 53, 80, 75, 75, 67, 45, 65, 63, 68, 59, 65, 50, 63, 56, 58, 69, 60, 58, 62, 62, 52, 75, 60, 61, 78, 76, 43, 57, 63, 65, 68, 59, 69, 100, 71, 68, 78, 78, 70, 73, 69, 99, 40, 73, 83, 47, 72, 58, 68, 57, 62, 63, 47, 55, 59, 73, 67, 46, 55, 60, 54, 62, 60, 65, 76, 66, 63, 52, 56, 56, 63, 56, 75, 68, 73, 57, 60, 40, 86, 64, 51, 53, 90, 67, 79, 61, 58, 55, 51, 58, 55, 68, 70, 64, 93, 63, 66, 66, 70, 45, 41, 63, 77, 62, 53, 85, 71, 81, 58, 59, 71, 57, 63, 67, 59, 64, 69, 74, 80, 57, 81, 63, 71, 108, 62, 59, 55, 79, 52, 53, 65, 57, 68, 60, 57, 57, 65, 72, 68, 71, 69, 67, 65, 106, 59, 58, 76, 59, 61, 52, 53, 58, 64, 66, 60, 70, 66, 74, 71, 60, 75, 58, 54, 72, 71, 74, 69, 66, 66, 67, 79, 57, 71, 61, 51, 63, 57, 62, 59, 78, 57, 65, 61, 62, 69, 62, 52, 61, 56, 67, 35, 72, 56, 65, 56, 95, 66, 72, 52, 52, 51, 55, 63, 63, 65, 67, 64, 72, 73, 58, 84, 57, 41, 57, 59, 75, 71, 56, 78, 82, 54, 44, 71, 66, 54, 69, 67, 65, 55, 72, 62, 54, 65, 79, 55, 66, 55, 67, 59, 68, 65, 93, 47, 62, 97, 71, 66, 70, 64, 68, 66, 73, 93, 54, 71, 87, 78, 46, 49, 45, 60, 85, 68, 84, 52, 49, 49, 63, 70, 53, 69, 66, 70, 55, 53, 68, 77, 56, 76, 90, 81, 72, 76, 50, 59, 73, 70, 65, 61, 56, 63, 66, 82, 54, 62, 51, 59, 59, 75, 64, 60, 89, 50, 56, 62, 67, 75, 58, 62, 83, 62, 93, 71, 63, 55, 51, 58, 51, 72, 55, 61, 76, 49, 56, 55, 69, 71, 61, 68, 97, 59, 70, 58, 61, 72, 74, 62, 115, 68, 81, 46, 72, 61, 75, 63, 65, 47, 54, 61, 75, 72, 63, 62, 63, 66, 59, 33, 61, 73, 70, 86, 62, 53, 64, 44, 63, 56, 51, 64, 50, 55, 54, 58, 77, 62, 61, 53, 93, 59, 86, 69, 52, 67, 56, 58, 65, 71, 66, 61, 69, 60, 70, 44, 60, 77, 119, 67, 50, 72, 61, 52, 48, 62, 60, 65, 75, 119, 59, 57, 67, 58, 100, 57, 72, 69, 57, 73, 61, 51, 64, 63, 52, 47, 62, 69, 61, 48, 49, 81, 64, 56, 80, 54, 89, 71, 61, 63, 70, 55, 74, 65, 54, 71, 52, 47, 46, 53, 71, 61, 46, 107, 76, 56, 41, 74, 62, 55, 82, 66, 62, 63, 92, 74, 67, 53, 64, 78, 71, 66, 55, 49, 87, 64, 76, 67, 55, 71, 80, 48, 64, 63, 72, 67, 61, 67, 63, 77, 77, 59, 68, 79, 79, 66, 59, 63, 61, 57, 66, 66, 96, 58, 72, 65, 77, 60, 73, 58, 44, 59, 47, 51, 95, 58, 58, 69, 63, 46, 54, 70, 78, 59, 59, 67, 81, 83, 56, 74, 62, 70, 58, 45, 62, 72, 71, 68, 86, 80, 58, 86, 94, 53, 59, 62, 63, 69, 54, 41, 69, 110, 64, 76, 53, 95, 97, 69, 71, 59, 59, 82, 56, 65, 58, 91, 71, 68, 79, 56, 72, 62, 61, 57, 36, 79, 54, 64, 69, 50, 49, 62, 56, 85, 100, 74, 84, 61, 68, 85, 46, 58, 68, 95, 82, 84, 85, 61, 64, 83, 104, 73, 91, 66, 59, 51, 57, 83, 58, 54, 63, 56, 83, 54, 64, 85, 85, 68, 89, 83, 61, 80, 74, 41, 119, 58, 76, 59, 75, 58, 68, 68, 104, 94, 67, 80, 60, 87, 50, 69, 71, 43, 62, 57, 50, 71, 62, 57, 56, 59, 82, 57, 56, 45, 74, 56, 67, 48, 64, 101, 60, 62, 47, 83, 64, 81, 43, 73, 52, 53, 70, 58, 59, 81, 58, 57, 62, 56, 63, 61, 64, 59, 57, 81, 63, 66, 84, 77, 59, 100, 64, 73, 68, 47, 66, 57, 74, 80, 57, 61, 54, 43, 88, 78, 97, 69, 60, 62, 100, 58, 76, 81, 73, 59, 73, 71, 63, 83, 76, 74, 69, 61, 58, 70, 58, 68, 57, 57, 78, 60, 60, 59, 64, 68, 58, 60, 55, 58, 81, 74, 74, 62, 71, 52, 49, 60, 74, 62, 85, 50, 50, 53, 64, 81, 62, 58, 63, 79, 62, 118, 60, 70, 59, 80, 63, 87, 66, 56, 73, 56, 66, 69, 65, 72, 43, 57, 42, 53, 73, 77, 76, 73, 66, 91, 68, 66, 46, 71, 75, 60, 90, 61, 67, 45, 70, 72, 48, 68, 73, 56, 60, 66, 61, 55, 50, 83, 56, 64, 57, 79, 64, 71, 57, 63, 69, 51, 61, 68, 70, 61, 89, 72, 54, 70, 73, 82, 50, 48, 46, 67, 57, 81, 58, 81, 60, 78, 82, 55, 59, 71, 47, 47, 65, 63, 60, 35, 44, 46, 67, 75, 75, 46, 82, 73, 67, 61, 109, 74, 43, 76, 68, 83, 80, 139, 52, 45, 80, 58, 49, 68, 64, 71, 60, 65, 57, 61, 69, 48, 69, 60, 55, 63, 70, 80, 62, 58, 52, 63, 56, 60, 72, 101, 85, 43, 58, 65, 49, 51, 55, 62, 68, 85, 66, 64, 95, 58, 60, 52, 58, 65, 93, 79, 66, 79, 63, 51, 116, 63, 68, 80, 103, 53, 63, 57, 64, 58, 69, 54, 110, 66, 75, 37, 62, 84, 101, 47, 68, 66, 41, 68, 54, 58, 59, 71, 84, 57, 63, 72, 44, 51, 64, 73, 61, 55, 61, 57, 69, 62, 102, 57, 68, 66, 63, 64, 50, 79, 54, 47, 65, 87, 73, 86, 56, 87, 53, 72, 63, 77, 59, 66, 73, 80, 57, 71, 77, 58, 56, 84, 56, 45, 71, 107, 80, 51, 64, 64, 64, 64, 60, 58, 54, 61, 68, 55, 92, 74, 67, 57, 79, 71, 47, 65, 50, 86, 58, 87, 66, 63, 69, 62, 77, 80, 93, 63, 70, 100, 67, 53, 60, 55, 58, 63, 56, 59, 78, 61, 49, 82, 72, 67, 76, 56, 54, 71, 73, 69, 67, 70, 55, 52, 84, 62, 72, 71, 70, 48, 70, 77, 74, 52, 61, 61, 102, 67, 70, 55, 59, 61, 55, 66, 64, 51, 73, 75, 75, 71, 51, 61, 72, 70, 57, 66, 56, 65, 58, 51, 87, 76, 55, 49, 72, 72, 62, 43, 80, 62, 61, 70, 72, 65, 97, 81, 63, 66, 52, 70, 38, 59, 67, 36, 59, 73, 57, 105, 65, 72, 61, 81, 67, 70, 67, 59, 73, 54, 68, 74, 87, 72, 61, 55, 52, 100, 74, 51, 61, 69, 60, 68, 56, 68, 63, 41, 61, 57, 62, 56, 61, 73, 80, 57, 57, 50, 84, 68, 64, 64, 67, 51, 53, 69, 46, 64, 73, 58, 57, 44, 73, 67, 94, 118, 55, 51, 54, 61, 68, 53, 75, 69, 51, 62, 60, 41, 101, 54, 56, 55, 83, 81, 62, 51, 70, 93, 43, 62, 63, 56, 55, 54, 60, 86, 59, 58, 66, 45, 63, 60, 68, 88, 65, 69, 68, 82, 67, 66, 57, 67, 60, 68, 88, 92, 67, 60, 86, 57, 83, 56, 58, 57, 67, 62, 86, 70, 55, 53, 70, 67, 59, 67, 74, 65, 65, 72, 46, 76, 64, 73, 71, 56, 64, 59, 62, 61, 54, 74, 99, 66, 62, 46, 64, 70, 69, 72, 64, 63, 60, 52, 76, 67, 63, 55, 55, 125, 45, 66, 81, 54, 52, 60, 63, 71, 68, 65, 66, 57, 76, 63, 62, 70, 66, 52, 62, 60, 42, 51, 75, 61, 67, 58, 55, 80, 76, 72, 81, 81, 63, 70, 77, 54, 32, 67, 57, 47, 61, 59, 70, 59, 72, 53, 68, 63, 52, 56, 55, 66, 65, 83, 54, 74, 60, 67, 69, 60, 69, 71, 71, 57, 66, 58, 56, 74, 62, 56, 63, 54, 64, 55, 57, 57, 63, 56, 62, 72, 102, 69, 68, 63, 81, 53, 51, 54, 74, 66, 82, 58, 37, 74, 60, 50, 59, 66, 84, 65, 60, 59, 37, 59, 66, 69, 71, 81, 71, 77, 80, 65, 76, 86, 69, 62, 63, 49, 44, 84, 87, 61, 71, 74, 44, 58, 43, 67, 72, 65, 73, 61, 59, 59, 76, 76, 75, 78, 97, 63, 60, 65, 55, 62, 55, 66, 57, 76, 53, 62, 64, 67, 62, 52, 74, 74, 61, 70, 52, 66, 59, 52, 82, 62, 65, 94, 98, 83, 78, 53, 71, 60, 61, 69, 67, 59, 54, 53, 62, 53, 68, 68, 63, 66, 47, 65, 81, 51, 62, 59, 64, 84, 58, 73, 46, 63, 68, 67, 58, 63, 41, 51, 62, 57, 75, 33, 61, 71, 50, 62, 54, 62, 48, 44, 59, 76, 73, 73, 49, 67, 70, 70, 49, 54, 66, 40, 80, 44, 53, 53, 69, 74, 57, 59, 48, 65, 69, 52, 79, 65, 65, 59, 63, 77, 58, 74, 45, 57, 51, 62, 54, 71, 58, 118, 106, 43, 68, 59, 74, 53, 66, 70, 58, 58, 74, 66, 69, 72, 85, 77, 61, 67, 70, 57, 114, 72, 73, 67, 51, 62, 76, 69, 78, 60, 66, 55, 54, 75, 59, 59, 79, 76, 61, 72, 93, 76, 59, 59, 61, 49, 58, 49, 59, 71, 59, 85, 98, 88, 74, 73, 64, 64, 64, 69, 84, 63, 71, 50, 57, 63, 62, 84, 77, 46, 62, 63, 55, 69, 63, 54, 80, 61, 55, 80, 54, 77, 68, 50, 59, 66, 60, 50, 57, 68, 60, 65, 87, 65, 85, 69, 71, 80, 79, 58, 63, 64, 66, 55, 61, 85, 66, 69, 70, 92, 71, 75, 61, 95, 90, 87, 50, 86, 60, 57, 54, 56, 57, 71, 88, 49, 106, 78, 56, 74, 51, 65, 62, 79, 60, 68, 128, 67, 60, 54, 73, 71, 93, 60, 53, 51, 50, 74, 83, 77, 58, 50, 64, 60, 55, 56, 83, 54, 78, 66, 63, 102, 65, 67, 69, 61, 79, 63, 54, 64, 68, 74, 71, 49, 59, 61, 71, 80, 52, 80, 53, 46, 77, 69, 34, 65, 61, 60, 80, 43, 72, 63, 75, 59, 94, 49, 63, 68, 60, 64, 73, 62, 70, 54, 63, 90, 57, 62, 71, 77, 67, 69, 74, 79, 50, 54, 57, 66, 54, 55, 57, 58, 61, 68, 61, 65, 64, 46, 56, 51, 53, 72, 86, 68, 75, 67, 45, 60, 51, 73, 64, 66, 60, 53, 57, 60, 73, 43, 77, 68, 46, 81, 48, 60, 66, 46, 74, 80, 70, 71, 48, 70, 58, 75, 57, 118, 55, 62, 62, 63, 66, 79, 56, 69, 84, 90, 59, 72, 68, 83, 78, 94, 72, 52, 70, 54, 64, 73, 73, 62, 61, 75, 71, 75, 61, 60, 73, 54, 84, 53, 70, 47, 76, 72, 52, 55, 56, 65, 60, 66, 57, 63, 69, 80, 66, 49, 67, 57, 58, 47, 76, 58, 54, 79, 62, 54, 77, 51, 55, 59, 75, 55, 53, 66, 60, 65, 67, 53, 51, 60, 68, 96, 84, 90, 51, 60, 71, 56, 52, 41, 63, 57, 57, 68, 73, 63, 54, 54, 66, 79, 55, 68, 67, 58, 90, 64, 92, 69, 52, 72, 61, 83, 56, 77, 81, 88, 37, 66, 68, 65, 61, 71, 62, 79, 80, 59, 75, 64, 75, 109, 57, 64, 63, 62, 34, 50, 65, 55, 72, 52, 60, 56, 52, 73, 74, 65, 71, 58, 57, 58, 55, 82, 60, 75, 108, 58, 46, 93, 62, 62, 61, 88, 47, 82, 78, 72, 72, 68, 70, 59, 71, 80, 69, 56, 79, 57, 50, 83, 63, 72, 96, 66, 83, 71, 90, 65, 61, 74, 52, 59, 70, 60, 79, 56, 61, 69, 58, 62, 55, 51, 77, 88, 61, 55, 59, 85, 49, 76, 78, 74, 74, 73, 69, 84, 56, 78, 57, 69, 71, 59, 61, 69, 61, 45, 51, 94, 71, 112, 62, 72, 79, 45, 59, 62, 54, 77, 73, 68, 76, 61, 68, 91, 68, 48, 54, 59, 74, 55, 79, 70, 79, 70, 60, 61, 61, 60, 68, 45, 64, 64, 73, 72, 66, 69, 71, 53, 65, 75, 79, 65, 71, 60, 64, 70, 53, 46, 57, 94, 65, 68, 73, 52, 70, 39, 52, 72, 67, 47, 61, 105, 64, 87, 59, 56, 75, 67, 73, 64, 85, 64, 63, 73, 67, 67, 50, 64, 57, 59, 46, 59, 51, 47, 70, 56, 65, 73, 108, 70, 73, 69, 75, 77, 60, 59, 78, 73, 64, 82, 78, 51, 58, 66, 66, 67, 57, 78, 64, 120, 73, 99, 64, 50, 51, 51, 87, 65, 69, 47, 68, 61, 60, 67, 57, 74, 68, 45, 74, 60, 63, 64, 72, 66, 66, 81, 66, 79, 80, 50, 62, 59, 52, 82, 62, 76, 82, 65, 62, 56, 65, 75, 64, 71, 88, 63, 49, 78, 67, 69, 33, 79, 74, 80, 50, 61, 50, 59, 55, 47, 69, 81, 66, 69, 55, 56, 65, 79, 100, 85, 53, 48, 44, 59, 62, 70, 68, 60, 60, 38, 64, 58, 71, 61, 58, 55, 69, 58, 53, 61, 65, 56, 57, 89, 49, 58, 68, 61, 95, 86, 61, 67, 87, 71, 71, 73, 58, 53, 73, 47, 50, 59, 59, 72, 80, 91, 74, 67, 71, 51, 60, 43, 85, 76, 54, 66, 76, 50, 65, 44, 66, 52, 68, 82, 64, 62, 55, 68, 51, 67, 60, 79, 72, 45, 81, 101, 60, 64, 60, 79, 74, 70, 75, 56, 66, 72, 58, 79, 84, 63, 84, 60, 60, 62, 68, 70, 64, 53, 70, 54, 54, 101, 68, 58, 72, 76, 55, 78, 66, 69, 73, 65, 58, 79, 67, 94, 73, 82, 67, 99, 63, 52, 68, 66, 102, 77, 69, 77, 70, 65, 76, 54, 75, 72, 60, 54, 85, 75, 87, 58, 65, 85, 75, 75, 59, 54, 65, 42, 46, 54, 65, 57, 50, 66, 62, 66, 51, 70, 51, 49, 76, 56, 75, 54, 62, 58, 63, 56, 68, 59, 66, 53, 76, 57, 67, 51, 68, 58, 63, 40, 62, 58, 91, 84, 62, 71, 101, 60, 55, 64, 53, 75, 44, 65, 92, 72, 73, 75, 69, 58, 81, 57, 54, 73, 83, 51, 110, 65, 87, 58, 55, 70, 73, 58, 75, 65, 43, 55, 69, 72, 30, 86, 50, 60, 58, 74, 50, 55, 82, 32, 70, 66, 47, 49, 73, 56, 75, 83, 79, 94, 64, 59, 70, 75, 54, 81, 67, 60, 44, 65, 81, 79, 75, 71, 70, 64, 69, 60, 55, 72, 57, 54, 65, 54, 74, 72, 62, 94, 65, 57, 71, 61, 64, 66, 48, 66, 75, 58, 59, 83, 69, 68, 70, 61, 69, 57, 68, 71, 69, 54, 51, 59, 61, 75, 73, 59, 73, 61, 60, 59, 62, 84, 57, 68, 62, 71, 51, 72, 71, 63, 42, 58, 63, 81, 54, 54, 56, 65, 71, 62, 32, 59, 66, 62, 58, 76, 80, 56, 117, 49, 55, 67, 62, 69, 42, 68, 46, 60, 69, 78, 61, 62, 60, 68, 87, 83, 65, 45, 76, 73, 62, 61, 67, 63, 63, 69, 59, 75, 64, 62, 68, 94, 84, 61, 62, 47, 53, 58, 94, 56, 51, 78, 82, 66, 61, 67, 123, 111, 69, 53, 74, 51, 70, 78, 50, 80, 60, 64, 46, 60, 56, 56, 52, 86, 56, 53, 75, 65, 65, 63, 69, 68, 65, 51, 65, 58, 85, 74, 67, 66, 87, 56, 63, 88, 60, 82, 69, 55, 61, 60, 67, 54, 62, 55, 47, 64, 61, 74, 59, 63, 51, 68, 54, 62, 79, 58, 35, 73, 67, 59, 77, 44, 58, 61, 48, 55, 73, 68, 72, 81, 69, 44, 64, 99, 77, 75, 60, 62, 92, 63, 70, 63, 58, 58, 68, 67, 55, 64, 46, 68, 84, 87, 60, 94, 86, 87, 63, 45, 48, 65, 102, 57, 87, 87, 64, 67, 98, 59, 88, 69, 56, 59, 69, 71, 62, 60, 70, 75, 70, 69, 67, 76, 58, 64, 60, 65, 64, 52, 80, 63, 85, 91, 82, 45, 69, 56, 78, 73, 49, 76, 74, 68, 86, 84, 47, 65, 53, 59, 72, 55, 41, 55, 65, 96, 97, 84, 60, 87, 103, 45, 49, 63, 65, 53, 67, 77, 61, 60, 82, 67, 67, 66, 55, 57, 46, 61, 71, 74, 75, 58, 56, 58, 68, 84, 64, 83, 71, 75, 70, 56, 60, 73, 73, 85, 65, 52, 64, 43, 99, 58, 82, 74, 61, 61, 63, 58, 99, 62, 75, 67, 57, 92, 55, 90, 44, 72, 66, 58, 63, 57, 64, 65, 59, 50, 72, 80, 49, 50, 61, 65, 67, 72, 52, 89, 62, 52, 67, 48, 78, 74, 67, 65, 81, 54, 59, 64, 71, 84, 76, 76, 85, 63, 59, 54, 70, 72, 62, 75, 42, 62, 66, 50, 55, 46, 107, 61, 63, 63, 83, 102, 70, 81, 76, 62, 72, 58, 54, 97, 61, 58, 59, 68, 55, 70, 58, 64, 58, 66, 61, 71, 45, 69, 82, 68, 40, 79, 110, 58, 75, 61, 72, 45, 46, 55, 69, 46, 72, 71, 43, 73, 65, 65, 70, 51, 60, 53, 72, 59, 89, 107, 53, 65, 45, 94, 42, 69, 82, 73, 57, 75, 79, 79, 79, 65, 64, 49, 52, 73, 91, 68, 67, 43, 74, 65, 58, 69, 66, 61, 67, 59, 76, 90, 42, 42, 84, 62, 64, 61, 58, 68, 113, 53, 71, 66, 73, 103, 70, 75, 67, 59, 85, 61, 53, 62, 65, 53, 68, 53, 74, 65, 126, 46, 64, 64, 75, 76, 65, 61, 56, 64, 107, 52, 55, 84, 62, 66, 69, 70, 64, 105, 48, 84, 73, 78, 66, 53, 63, 91, 59, 49, 51, 49, 48, 60, 67, 54, 59, 67, 61, 56, 80, 49, 88, 70, 67, 53, 64, 87, 83, 77, 60, 56, 75, 71, 48, 62, 74, 68, 81, 57, 61, 98, 45, 50, 103, 51, 66, 70, 71, 70, 79, 57, 57, 72, 64, 58, 77, 61, 61, 59, 89, 102, 79, 38, 64, 44, 45, 60, 72, 56, 43, 68, 47, 72, 60, 55, 78, 84, 65, 55, 64, 65, 58, 55, 59, 74, 71, 71, 40, 60, 56, 59, 71, 53, 64, 83, 69, 49, 66, 82, 57, 64, 87, 49, 92, 70, 45, 47, 60, 91, 66, 63, 58, 74, 53, 63, 50, 60, 64, 52, 93, 76, 61, 54, 68, 61, 74, 100, 62, 62, 66, 65, 80, 71, 77, 69, 91, 76, 50, 81, 56, 81, 75, 62, 61, 70, 57, 85, 68, 61, 65, 69, 58, 55, 65, 42, 70, 54, 58, 65, 95, 68, 58, 70, 53, 76, 52, 51, 59, 72, 51, 62, 67, 104, 56, 70, 52, 60, 71, 75, 77, 59, 77, 73, 83, 56, 78, 77, 62, 57, 46, 60, 63, 86, 53, 63, 57, 45, 70, 58, 83, 74, 63, 70, 45, 74, 59, 97, 71, 73, 64, 59, 49, 63, 79, 68, 54, 48, 67, 50, 64, 59, 44, 67, 52, 87, 54, 71, 54, 58, 75, 60, 70, 58, 50, 67, 85, 79, 46, 94, 63, 56, 65, 63, 49, 40, 63, 53, 63, 82, 57, 42, 55, 61, 57, 68, 45, 68, 65, 70, 72, 78, 62, 54, 62, 80, 92, 70, 59, 71, 101, 53, 61, 71, 55, 51, 54, 68, 61, 49, 67, 63, 61, 69, 65, 71, 54, 73, 76, 72, 56, 45, 89, 54, 113, 68, 102, 60, 77, 79, 53, 55, 57, 61, 106, 51, 77, 85, 82, 77, 61, 45, 75, 71, 43, 55, 69, 52, 52, 64, 82, 70, 59, 48, 66, 60, 99, 61, 53, 78, 60, 62, 53, 53, 55, 53, 63, 64, 89, 67, 82, 79, 93, 69, 48, 95, 71, 74, 96, 78, 51, 56, 86, 53, 58, 72, 54, 80, 59, 52, 65, 56, 73, 98, 60, 54, 62, 84, 94, 78, 50, 64, 68, 66, 66, 57, 55, 107, 66, 65, 49, 45, 75, 109, 72, 54, 82, 58, 44, 50, 68, 47, 55, 55, 61, 68, 71, 50, 60, 66, 67, 57, 85, 67, 47, 62, 69, 49, 56, 50, 49, 62, 74, 63, 102, 64, 95, 78, 71, 63, 53, 67, 60, 55, 83, 61, 91, 49, 62, 81, 68, 92, 69, 95, 62, 67, 68, 54, 93, 84, 56, 52, 52, 60, 94, 70, 79, 72, 58, 60, 59, 64, 67, 80, 65, 51, 75, 66, 80, 62, 85, 47, 59, 75, 56, 59, 57, 61, 91, 57, 55, 62, 65, 52, 58, 76, 67, 61, 69, 59, 81, 66, 73, 53, 55, 75, 66, 81, 56, 97, 78, 51, 84, 60, 73, 81, 70, 59, 72, 70, 63, 50, 80, 54, 67, 73, 63, 59, 67, 54, 63, 60, 97, 62, 61, 55, 57, 67, 75, 56, 74, 66, 54, 83, 65, 54, 60, 61, 86, 54, 81, 67, 57, 50, 66, 53, 50, 82, 64, 74, 51, 68, 69, 67, 73, 84, 54, 57, 64, 47, 56, 46, 64, 57, 70, 56, 55, 57, 62, 65, 85, 45, 67, 66, 99, 69, 77, 59, 53, 77, 69, 63, 62, 80, 74, 61, 60, 49, 70, 55, 75, 70, 82, 75, 83, 65, 49, 68, 65, 73, 67, 55, 55, 74, 54, 59, 61, 69, 60, 130, 58, 61, 85, 63, 64, 72, 84, 58, 54, 52, 62, 79, 88, 61, 68, 62, 63, 56, 50, 56, 105, 89, 61, 71, 62, 44, 79, 70, 71, 81, 64, 61, 44, 69, 70, 63, 86, 68, 59, 60, 88, 45, 73, 55, 44, 60, 45, 72, 78, 50, 73, 68, 61, 59, 78, 66, 69, 45, 64, 77, 56, 78, 64, 61, 53, 59, 69, 40, 80, 48, 60, 59, 67, 66, 81, 72, 115, 53, 117, 70, 53, 51, 56, 59, 58, 61, 59, 66, 56, 58, 68, 57, 73, 75, 98, 81, 65, 79, 82, 73, 60, 55, 61, 64, 76, 68, 58, 72, 61, 104, 64, 104, 81, 77, 66, 83, 65, 80, 37, 50, 54, 75, 63, 59, 98, 62, 83, 90, 68, 72, 74, 59, 68, 54, 58, 79, 116, 64, 54, 51, 50, 73, 75, 77, 56, 63, 71, 69, 57, 59, 59, 52, 74, 77, 68, 57, 68, 66, 50, 72, 61, 75, 55, 57, 75, 79, 62, 77, 72, 84, 46, 68, 84, 62, 60, 65, 63, 60, 78, 61, 55, 70, 71, 65, 35, 71, 56, 63, 61, 58, 71, 66, 91, 70, 76, 60, 55, 61, 76, 71, 67, 63, 80, 46, 66, 80, 64, 57, 70, 74, 58, 61, 61, 59, 66, 72, 37, 83, 54, 60, 56, 65, 57, 64, 56, 79, 72, 60, 53, 67, 70, 63, 79, 66, 79, 48, 53, 58, 57, 75, 75, 53, 79, 50, 50, 79, 71, 48, 52, 61, 83, 51, 63, 43, 68, 65, 62, 95, 72, 55, 79, 67, 61, 45, 67, 91, 59, 61, 79, 50, 64, 81, 60, 85, 73, 56, 75, 69, 65, 65, 45, 70, 75, 70, 54, 66, 45, 61, 67, 58, 52, 48, 59, 55, 69, 62, 58, 85, 71, 65, 66, 69, 63, 93, 75, 76, 68, 64, 64, 64, 64, 69, 66, 76, 71, 66, 49, 65, 67, 82, 60, 85, 48, 75, 68, 52, 62, 64, 51, 55, 63, 71, 62, 62, 69, 51, 66, 54, 61, 68, 69, 65, 78, 58, 48, 50, 88, 61, 68, 84, 65, 65, 47, 74, 71, 63, 67, 70, 76, 63, 78, 49, 91, 57, 86, 53, 103, 89, 88, 69, 58, 74, 59, 59, 66, 87, 55, 65, 92, 54, 71, 71, 47, 58, 68, 75, 61, 47, 61, 104, 58, 62, 53, 50, 38, 64, 56, 64, 61, 54, 54, 63, 79, 54, 84, 59, 53, 75, 77, 51, 83, 62, 56, 51, 118, 49, 54, 118, 57, 48, 69, 75, 63, 79, 73, 56, 61, 71, 90, 52, 79, 90, 56, 69, 78, 56, 63, 65, 74, 84, 62, 59, 97, 69, 77, 62, 74, 73, 69, 59, 83, 65, 81, 58, 66, 62, 77, 72, 68, 66, 68, 68, 70, 59, 68, 60, 67, 62, 93, 51, 75, 47, 62, 90, 57, 67, 67, 104, 63, 67, 63, 86, 46, 54, 69, 113, 55, 107, 58, 70, 68, 61, 62, 67, 71, 65, 55, 57, 63, 56, 70, 89, 48, 69, 56, 77, 64, 63, 57, 77, 74, 54, 48, 70, 95, 79, 73, 67, 56, 69, 75, 54, 57, 81, 66, 64, 60, 74, 71, 62, 69, 99, 75, 54, 66, 66, 66, 78, 55, 48, 43, 46, 63, 82, 61, 64, 64, 58, 63, 72, 55, 69, 62, 71, 53, 58, 49, 87, 57, 78, 105, 67, 70, 71, 70, 48, 67, 48, 72, 63, 53, 52, 54, 57, 50, 66, 73, 69, 48, 65, 72, 75, 65, 74, 64, 66, 46, 73, 75, 86, 76, 61, 73, 82, 65, 50, 55, 88, 63, 72, 65, 69, 88, 76, 53, 63, 86, 47, 86, 58, 61, 86, 76, 67, 51, 73, 56, 80, 65, 57, 72, 58, 54, 69, 76, 77, 72, 60, 55, 53, 63, 104, 57, 55, 66, 67, 50, 76, 60, 63, 58, 85, 87, 62, 74, 46, 75, 75, 71, 65, 73, 56, 54, 66, 57, 61, 65, 56, 67, 101, 77, 57, 47, 69, 73, 99, 69, 82, 65, 40, 53, 60, 75, 72, 71, 56, 65, 48, 50, 48, 61, 62, 40, 53, 75, 52, 65, 77, 55, 69, 53, 48, 52, 64, 81, 65, 77, 68, 55, 69, 40, 44, 61, 72, 60, 47, 79, 60, 39, 67, 51, 65, 59, 66, 39, 60, 79, 47, 57, 43, 93, 61, 65, 62, 54, 78, 65, 82, 51, 94, 90, 76, 72, 51, 52, 63, 54, 93, 71, 99, 72, 53, 63, 49, 55, 62, 70, 49, 67, 80, 69, 61, 60, 96, 50, 73, 103, 53, 65, 69, 63, 71, 66, 48, 70, 62, 70, 62, 53, 79, 47, 66, 81, 59, 55, 86, 81, 60, 58, 58, 68, 73, 67, 95, 62, 61, 62, 93, 45, 55, 57, 61, 92, 57, 74, 62, 48, 56, 67, 56, 70, 81, 61, 51, 94, 59, 77, 93, 75, 88, 64, 67, 62, 61, 39, 44, 54, 58, 59, 56, 56, 55, 74, 71, 64, 71, 49, 58, 62, 52, 74, 60, 67, 74, 70, 55, 51, 75, 80, 68, 63, 63, 55, 63, 72, 70, 68, 100, 72, 62, 103, 82, 51, 68, 74, 61, 72, 49, 63, 61, 55, 53, 68, 74, 63, 70, 72, 63, 54, 60, 58, 54, 65, 59, 80, 64, 54, 56, 65, 56, 40, 58, 62, 72, 83, 93, 70, 68, 73, 53, 69, 62, 66, 82, 76, 60, 68, 60, 32, 71, 48, 64, 56, 53, 63, 90, 82, 53, 81, 55, 58, 68, 67, 61, 67, 96, 57, 57, 78, 78, 81, 66, 56, 69, 63, 70, 58, 42, 60, 55, 56, 75, 56, 62, 69, 65, 120, 63, 80, 66, 66, 58, 63, 67, 58, 79, 75, 81, 64, 72, 78, 51, 114, 65, 43, 89, 44, 74, 65, 58, 48, 77, 73, 54, 48, 51, 91, 86, 77, 50, 65, 50, 61, 62, 64, 64, 71, 57, 60, 59, 44, 61, 45, 54, 62, 70, 79, 60, 59, 57, 75, 59, 46, 75, 61, 51, 64, 86, 54, 80, 54, 54, 67, 60, 64, 72, 98, 69, 59, 60, 59, 68, 49, 71, 98, 78, 58, 60, 72, 65, 50, 74, 60, 146, 59, 66, 60, 47, 77, 62, 76, 75, 96, 58, 60, 71, 70, 53, 68, 78, 48, 46, 56, 58, 61, 44, 54, 52, 66, 57, 57, 56, 72, 84, 67, 49, 70, 65, 63, 66, 78, 79, 69, 68, 56, 57, 74, 46, 51, 59, 52, 90, 49, 50, 38, 51, 75, 73, 55, 68, 64, 75, 64, 65, 51, 51, 81, 54, 81, 70, 89, 80, 64, 57, 40, 46, 56, 64, 72, 58, 87, 57, 102, 64, 21, 69, 79, 74, 54, 81, 78, 36, 72, 54, 68, 46, 66, 63, 85, 90, 64, 101, 68, 58, 64, 61, 68, 43, 57, 62, 71, 89, 75, 82, 74, 68, 83, 63, 55, 74, 70, 69, 61, 61, 47, 73, 65, 74, 75, 55, 77, 95, 71, 52, 77, 62, 47, 77, 90, 72, 113, 72, 66, 61, 53, 89, 73, 56, 60, 76, 81, 73, 80, 79, 60, 48, 57, 71, 63, 75, 71, 61, 64, 55, 64, 54, 69, 77, 57, 82, 52, 105, 61, 69, 54, 55, 55, 57, 43, 51, 61, 75, 75, 68, 65, 56, 58, 45, 43, 73, 50, 57, 52, 53, 63, 93, 62, 60, 74, 56, 63, 63, 80, 79, 78, 55, 54, 66, 79, 102, 45, 58, 78, 67, 75, 63, 70, 82, 62, 71, 70, 63, 57, 64, 75, 69, 54, 64, 49, 76, 55, 62, 65, 63, 55, 59, 90, 63, 59, 80, 69, 88, 49, 55, 65, 60, 71, 67, 69, 82, 69, 61, 68, 60, 91, 56, 65, 55, 69, 43, 61, 89, 66, 52, 59, 56, 81, 43, 57, 119, 50, 60, 94, 57, 57, 87, 68, 85, 60, 105, 67, 70, 59, 56, 72, 74, 98, 37, 61, 61, 64, 62, 78, 81, 74, 63, 58, 76, 44, 41, 67, 62, 71, 39, 67, 36, 71, 45, 68, 71, 52, 79, 63, 61, 56, 61, 70, 49, 55, 52, 55, 58, 75, 98, 74, 79, 80, 71, 79, 51, 64, 64, 51, 61, 70, 82, 66, 54, 78, 95, 60, 68, 74, 64, 68, 63, 76, 92, 62, 67, 62, 59, 72, 76, 48, 69, 50, 93, 74, 91, 59, 84, 65, 61, 75, 54, 69, 55, 83, 67, 70, 95, 56, 71, 57, 60, 67, 71, 77, 70, 44, 75, 93, 63, 53, 67, 49, 48, 58, 57, 63, 65, 62, 115, 80, 80, 76, 57, 75, 58, 64, 63, 60, 42, 61, 51, 78, 73, 87, 56, 61, 83, 61, 60, 84, 76, 59, 62, 117, 69, 72, 104, 52, 66, 68, 72, 72, 67, 83, 68, 63, 56, 74, 56, 68, 68, 71, 55, 69, 51, 73, 61, 59, 65, 69, 51, 58, 72, 83, 53, 103, 85, 92, 50, 46, 95, 57, 54, 60, 49, 70, 73, 88, 74, 64, 60, 78, 62, 67, 88, 71, 66, 81, 52, 62, 59, 65, 65, 66, 66, 63, 77, 58, 66, 56, 37, 66, 74, 86, 68, 53, 113, 69, 85, 82, 47, 57, 52, 64, 61, 56, 63, 58, 89, 70, 77, 54, 73, 76, 70, 67, 50, 64, 80, 63, 66, 58, 46, 66, 72, 71, 65, 52, 67, 28, 42, 73, 62, 60, 65, 45, 75, 64, 77, 72, 55, 70, 57, 54, 60, 73, 61, 72, 86, 63, 55, 66, 49, 50, 42, 59, 48, 63, 67, 47, 47, 77, 63, 76, 72, 44, 89, 67, 81, 50, 63, 65, 55, 51, 48, 89, 39, 54, 57, 64, 41, 88, 38, 64, 63, 71, 77, 53, 76, 61, 121, 54, 53, 64, 66, 80, 71, 87, 81, 86, 81, 76, 65, 54, 63, 47, 104, 51, 55, 77, 69, 66, 57, 75, 59, 65, 52, 82, 57, 88, 62, 73, 54, 56, 53, 76, 59, 59, 83, 73, 74, 75, 84, 77, 45, 53, 42, 66, 51, 69, 99, 72, 61, 75, 53, 70, 70, 94, 64, 68, 61, 59, 73, 57, 60, 63, 59, 59, 55, 56, 75, 58, 63, 61, 66, 60, 49, 80, 100, 60, 70, 85, 61, 76, 66, 48, 83, 54, 74, 66, 64, 87, 68, 49, 51, 63, 44, 72, 56, 69, 76, 67, 47, 60, 73, 64, 58, 54, 60, 59, 51, 62, 57, 68, 59, 48, 82, 57, 47, 56, 50, 58, 69, 61, 64, 75, 69, 79, 57, 66, 54, 57, 66, 43, 59, 53, 98, 50, 78, 91, 52, 42, 78, 57, 87, 63, 83, 67, 70, 67, 69, 47, 79, 55, 63, 54, 91, 63, 110, 61, 86, 62, 70, 35, 69, 60, 70, 50, 80, 67, 61, 68, 105, 75, 73, 118, 64, 56, 76, 74, 65, 45, 73, 68, 65, 91, 70, 52, 62, 49, 57, 55, 46, 67, 54, 66, 50, 38, 69, 69, 46, 66, 77, 73, 66, 74, 69, 54, 48, 62, 62, 74, 64, 81, 87, 60, 43, 53, 56, 51, 47, 72, 72, 88, 78, 83, 87, 72, 66, 75, 69, 81, 70, 65, 57, 64, 64, 47, 53, 67, 60, 54, 78, 64, 58, 34, 69, 65, 60, 57, 65, 60, 54, 97, 61, 64, 75, 46, 64, 62, 50, 101, 73, 62, 62, 65, 74, 59, 59, 79, 72, 70, 68, 99, 55, 48, 74, 57, 68, 56, 52, 70, 79, 43, 75, 113, 57, 49, 62, 63, 57, 71, 59, 73, 69, 48, 59, 40, 65, 72, 79, 59, 62, 65, 61, 62, 70, 48, 75, 50, 62, 85, 60, 63, 82, 77, 50, 60, 70, 43, 70, 45, 75, 91, 48, 71, 67, 75, 70, 71, 61, 46, 61, 51, 65, 57, 67, 64, 88, 104, 52, 51, 55, 68, 83, 59, 60, 58, 53, 58, 81, 52, 67, 68, 59, 100, 66, 79, 63, 46, 62, 43, 51, 74, 54, 75, 54, 56, 49, 82, 77, 59, 46, 76, 72, 66, 79, 60, 48, 57, 72, 59, 75, 85, 62, 66, 57, 82, 77, 72, 75, 71, 51, 61, 65, 78, 61, 64, 57, 69, 57, 74, 58, 101, 40, 66, 48, 48, 76, 48, 69, 41, 87, 65, 72, 57, 68, 85, 63, 80, 58, 49, 52, 62, 66, 84, 70, 67, 53, 58, 49, 60, 59, 47, 65, 56, 60, 85, 72, 52, 89, 83, 112, 72, 74, 65, 64, 56, 70, 41, 66, 69, 55, 63, 59, 60, 68, 76, 64, 56, 80, 63, 52, 108, 75, 80, 47, 72, 67, 68, 58, 82, 68, 66, 64, 58, 77, 60, 65, 72, 95, 65, 55, 70, 50, 65, 69, 79, 57, 50, 53, 73, 70, 69, 62, 54, 67, 66, 63, 62, 73, 57, 97, 90, 71, 68, 61, 54, 74, 61, 57, 68, 60, 57, 72, 66, 56, 117, 59, 63, 81, 48, 65, 125, 90, 84, 60, 55, 55, 78, 71, 70, 59, 75, 72, 72, 72, 73, 39, 63, 80, 81, 53, 65, 57, 78, 54, 69, 124, 59, 79, 64, 101, 75, 61, 70, 67, 77, 83, 54, 41, 60, 60, 65, 72, 59, 68, 81, 62, 51, 79, 77, 67, 73, 59, 71, 66, 54, 68, 97, 59, 78, 70, 37, 61, 83, 65, 63, 69, 78, 66, 54, 64, 57, 70, 58, 60, 48, 54, 103, 70, 61, 69, 78, 79, 53, 68, 57, 59, 59, 67, 64, 65, 71, 78, 66, 76, 54, 52, 61, 54, 51, 67, 62, 48, 73, 57, 33, 75, 82, 53, 53, 65, 63, 54, 53, 79, 55, 67, 64, 61, 93, 52, 65, 92, 53, 82, 82, 83, 48, 67, 50, 70, 69, 61, 82, 42, 65, 55, 67, 65, 76, 65, 66, 46, 72, 84, 54, 76, 64, 74, 81, 79, 66, 72, 67, 59, 75, 72, 73, 60, 78, 57, 58, 45, 64, 50, 61, 70, 70, 43, 68, 70, 85, 84, 63, 73, 66, 86, 87, 60, 58, 54, 52, 57, 43, 63, 86, 127, 54, 56, 41, 92, 104, 67, 63, 93, 47, 77, 84, 84, 55, 52, 51, 78, 48, 66, 61, 65, 52, 81, 65, 56, 72, 59, 51, 76, 66, 62, 63, 93, 82, 78, 51, 53, 69, 56, 84, 58, 59, 59, 71, 68, 56, 58, 62, 46, 62, 70, 50, 52, 47, 43, 44, 72, 67, 53, 58, 89, 70, 69, 60, 61, 62, 83, 44, 76, 53, 59, 54, 54, 50, 60, 40, 65, 57, 78, 61, 61, 61, 61, 59, 69, 52, 56, 63, 68, 48, 60, 61, 54, 48, 63, 57, 52, 75, 53, 71, 65, 117, 87, 75, 48, 68, 57, 65, 55, 64, 68, 56, 82, 58, 50, 54, 55, 83, 92, 78, 61, 66, 62, 90, 61, 46, 92, 66, 83, 67, 46, 66, 44, 86, 79, 65, 75, 67, 74, 94, 67, 57, 63, 65, 49, 48, 55, 59, 58, 100, 54, 80, 44, 63, 84, 74, 48, 52, 77, 61, 74, 75, 46, 65, 72, 68, 60, 55, 58, 80, 64, 56, 72, 89, 76, 69, 58, 92, 91, 49, 61, 57, 61, 59, 73, 75, 56, 79, 58, 56, 77, 76, 57, 56, 59, 82, 76, 66, 79, 49, 75, 54, 73, 62, 49, 60, 64, 65, 78, 38, 68, 76, 69, 62, 60, 93, 61, 53, 65, 49, 61, 70, 51, 46, 65, 55, 60, 54, 80, 62, 52, 62, 80, 57, 57, 54, 94, 60, 66, 63, 71, 94, 77, 41, 60, 76, 60, 59, 71, 86, 59, 61, 50, 73, 71, 46, 57, 61, 65, 58, 84, 53, 79, 65, 60, 77, 74, 70, 60, 56, 68, 69, 41, 89, 80, 53, 66, 94, 60, 63, 70, 70, 76, 51, 53, 69, 62, 68, 59, 60, 70, 67, 52, 62, 83, 46, 67, 73, 75, 60, 58, 49, 40, 52, 49, 56, 72, 60, 57, 78, 61, 69, 61, 94, 50, 76, 70, 57, 54, 76, 58, 66, 69, 46, 68, 69, 73, 74, 55, 49, 61, 81, 109, 55, 88, 60, 68, 73, 51, 61, 54, 85, 64, 58, 76, 60, 55, 57, 76, 55, 62, 74, 67, 63, 49, 55, 77, 57, 92, 67, 55, 73, 59, 51, 58, 58, 106, 63, 70, 66, 61, 45, 72, 67, 59, 63, 71, 58, 69, 66, 50, 86, 80, 53, 49, 69, 58, 75, 63, 62, 69, 43, 57, 62, 79, 65, 63, 65, 85, 69, 69, 72, 93, 44, 66, 67, 81, 64, 62, 57, 61, 58, 50, 77, 66, 58, 78, 83, 76, 56, 65, 59, 69, 49, 71, 79, 64, 79, 47, 75, 69, 70, 94, 66, 63, 48, 70, 55, 59, 60, 39, 73, 61, 70, 70, 65, 70, 54, 53, 82, 89, 56, 75, 64, 46, 95, 53, 70, 56, 56, 70, 66, 57, 65, 74, 60, 65, 79, 44, 67, 76, 37, 74, 83, 63, 58, 53, 66, 94, 62, 57, 64, 43, 64, 71, 57, 74, 62, 97, 67, 86, 84, 71, 88, 58, 52, 49, 76, 67, 54, 48, 70, 49, 49, 111, 57, 68, 75, 52, 60, 85, 88, 36, 76, 55, 67, 76, 48, 74, 49, 89, 58, 31, 95, 54, 45, 69, 58, 63, 53, 60, 56, 59, 81, 65, 60, 66, 68, 60, 110, 80, 79, 74, 59, 72, 95, 41, 70, 69, 67, 70, 54, 47, 61, 60, 59, 70, 63, 75, 80, 65, 63, 71, 77, 56, 56, 72, 79, 66, 76, 58, 64, 62, 64, 59, 53, 74, 65, 49, 125, 82, 54, 56, 62, 54, 47, 83, 87, 69, 92, 68, 64, 50, 55, 55, 65, 63, 142, 62, 51, 50, 61, 51, 75, 57, 57, 71, 84, 46, 77, 64, 72, 60, 75, 65, 57, 62, 69, 53, 65, 73, 64, 87, 58, 74, 72, 56, 65, 62, 50, 77, 58, 50, 62, 66, 67, 57, 74, 81, 104, 69, 53, 69, 58, 73, 43, 60, 73, 79, 69, 66, 83, 62, 40, 75, 77, 63, 68, 56, 58, 89, 40, 54, 78, 66, 55, 56, 71, 67, 66, 66, 89, 56, 61, 72, 72, 67, 63, 68, 49, 63, 54, 60, 64, 68, 72, 69, 63, 51, 71, 54, 67, 59, 63, 55, 57, 70, 78, 65, 56, 51, 66, 72, 53, 76, 59, 92, 56, 47, 68, 60, 63, 58, 52, 61, 89, 47, 58, 67, 104, 67, 81, 62, 58, 72, 68, 64, 28, 66, 56, 52, 52, 57, 63, 62, 80, 61, 30, 59, 61, 65, 50, 67, 72, 81, 45, 64, 71, 82, 74, 58, 65, 70, 91, 60, 72, 80, 71, 29, 81, 70, 49, 68, 74, 83, 71, 66, 57, 69, 72, 71, 57, 66, 70, 70, 59, 73, 72, 58, 76, 66, 76, 48, 54, 89, 65, 67, 88, 62, 56, 54, 69, 70, 72, 61, 59, 124, 63, 58, 79, 63, 49, 52, 89, 61, 57, 64, 47, 71, 67, 65, 55, 72, 76, 57, 58, 73, 74, 118, 62, 79, 63, 58, 72, 68, 51, 75, 50, 72, 68, 62, 61, 71, 131, 63, 56, 56, 60, 50, 117, 79, 47, 59, 68, 72, 61, 65, 69, 61, 64, 60, 75, 61, 77, 61, 47, 82, 101, 83, 65, 53, 65, 48, 68, 147, 61, 66, 68, 75, 73, 74, 71, 59, 83, 69, 67, 67, 59, 50, 50, 56, 63, 65, 97, 53, 56, 67, 57, 59, 75, 65, 60, 55, 67, 60, 88, 52, 58, 73, 55, 47, 63, 58, 59, 64, 43, 56, 70, 67, 52, 73, 59, 65, 59, 74, 68, 39, 61, 65, 62, 87, 51, 61, 70, 59, 52, 44, 54, 66, 78, 61, 60, 72, 45, 68, 41, 49, 61, 69, 61, 62, 62, 60, 50, 101, 63, 52, 66, 47, 67, 69, 68, 67, 75, 61, 59, 75, 84, 56, 64, 69, 63, 76, 87, 72, 60, 59, 85, 71, 69, 55, 73, 68, 64, 59, 70, 52, 57, 60, 60, 52, 66, 73, 75, 65, 52, 44, 66, 73, 61, 69, 85, 61, 59, 57, 59, 59, 60, 61, 66, 68, 64, 57, 76, 77, 54, 51, 77, 48, 70, 75, 63, 93, 56, 63, 60, 56, 74, 61, 73, 66, 75, 43, 110, 80, 65, 57, 68, 83, 94, 73, 88, 69, 55, 60, 77, 66, 80, 61, 73, 88, 56, 56, 60, 50, 63, 72, 133, 62, 89, 56, 59, 80, 56, 76, 73, 46, 100, 57, 62, 72, 68, 64, 49, 56, 66, 81, 86, 79, 78, 63, 62, 86, 68, 60, 57, 65, 55, 56, 62, 56, 66, 61, 59, 75, 52, 59, 40, 64, 64, 79, 61, 80, 54, 48, 63, 57, 59, 54, 75, 71, 93, 63, 55, 91, 45, 57, 78, 70, 64, 71, 71, 63, 65, 59, 55, 65, 73, 58, 64, 87, 65, 63, 48, 53, 110, 70, 63, 56, 61, 73, 65, 56, 80, 67, 64, 77, 52, 60, 72, 80, 65, 74, 53, 71, 47, 65, 85, 72, 88, 56, 67, 72, 58, 59, 70, 57, 79, 53, 45, 81, 75, 60, 65, 84, 68, 64, 59, 52, 79, 62, 60, 49, 134, 61, 74, 43, 85, 50, 60, 62, 61, 62, 78, 45, 66, 37, 73, 78, 53, 71, 62, 57, 68, 58, 83, 69, 65, 51, 59, 75, 74, 87, 49, 58, 73, 63, 52, 71, 79, 70, 76, 65, 61, 71, 102, 76, 61, 50, 67, 53, 76, 52, 61, 46, 54, 75, 63, 59, 58, 62, 53, 81, 65, 81, 79, 33, 57, 67, 105, 53, 68, 60, 64, 60, 52, 53, 74, 70, 72, 74, 50, 63, 77, 73, 61, 61, 56, 80, 62, 103, 67, 74, 65, 52, 92, 71, 61, 85, 73, 55, 65, 70, 72, 56, 73, 72, 57, 76, 73, 58, 55, 64, 53, 68, 64, 51, 60, 63, 47, 74, 77, 53, 65, 59, 60, 70, 66, 82, 53, 54, 76, 70, 59, 74, 61, 53, 67, 70, 82, 42, 73, 76, 73, 64, 84, 69, 102, 61, 58, 56, 67, 50, 47, 63, 60, 50, 49, 86, 66, 66, 66, 79, 69, 62, 95, 66, 80, 41, 67, 76, 65, 64, 63, 57, 54, 81, 60, 62, 65, 84, 55, 52, 80, 74, 48, 89, 79, 93, 70, 65, 58, 64, 57, 66, 61, 67, 65, 60, 73, 76, 61, 77, 67, 52, 53, 67, 63, 73, 55, 72, 61, 88, 87, 64, 81, 59, 79, 57, 59, 81, 59, 62, 64, 56, 60, 56, 74, 57, 73, 50, 60, 76, 65, 57, 63, 83, 75, 57, 56, 69, 59, 47, 64, 64, 62, 74, 56, 57, 78, 75, 72, 58, 81, 58, 60, 76, 46, 54, 67, 66, 70, 55, 61, 74, 62, 74, 66, 58, 68, 59, 59, 57, 61, 73, 58, 51, 64, 60, 34, 55, 60, 62, 78, 73, 70, 84, 66, 59, 74, 58, 66, 55, 56, 69, 58, 61, 56, 61, 58, 70, 69, 56, 100, 54, 61, 60, 65, 52, 90, 61, 67, 66, 62, 69, 64, 56, 65, 66, 75, 58, 67, 73, 68, 61, 62, 63, 95, 69, 65, 72, 52, 75, 65, 76, 51, 61, 72, 69, 79, 76, 58, 41, 59, 84, 60, 76, 55, 67, 67, 59, 70, 72, 49, 64, 83, 58, 51, 116, 68, 65, 77, 51, 55, 73, 44, 70, 71, 67, 65, 65, 64, 51, 57, 100, 71, 35, 82, 56, 70, 60, 80, 56, 58, 64, 55, 90, 57, 74, 65, 54, 64, 58, 128, 75, 78, 47, 76, 76, 52, 64, 65, 74, 62, 64, 70, 70, 66, 61, 58, 60, 59, 56, 76, 62, 63, 59, 66, 77, 45, 50, 61, 68, 76, 65, 44, 54, 44, 64, 74, 54, 45, 75, 116, 64, 57, 51, 47, 68, 58, 87, 53, 51, 87, 51, 58, 63, 76, 57, 67, 70, 139, 54, 61, 44, 73, 57, 91, 68, 94, 63, 76, 60, 102, 55, 88, 69, 68, 59, 69, 62, 72, 78, 53, 60, 73, 87, 46, 77, 64, 64, 54, 72, 65, 75, 56, 66, 59, 64, 58, 72, 94, 62, 116, 77, 61, 65, 66, 82, 62, 74, 57, 71, 58, 64, 82, 62, 53, 66, 47, 59, 54, 51, 61, 100, 52, 63, 79, 60, 73, 72, 62, 61, 57, 76, 92, 67, 66, 71, 77, 52, 80, 54, 60, 71, 84, 75, 59, 71, 98, 77, 53, 50, 54, 72, 64, 61, 78, 64, 74, 76, 63, 74, 56, 59, 63, 76, 63, 54, 61, 76, 57, 60, 57, 51, 67, 58, 79, 55, 73, 56, 64, 57, 95, 59, 74, 59, 61, 65, 68, 77, 60, 90, 55, 53, 67, 70, 49, 67, 55, 78, 59, 56, 57, 67, 73, 52, 70, 52, 55, 53, 83, 76, 61, 87, 72, 63, 76, 47, 84, 83, 43, 121, 71, 71, 49, 78, 54, 54, 72, 64, 69, 53, 57, 52, 86, 55, 68, 56, 58, 68, 88, 57, 101, 76, 47, 61, 66, 73, 61, 57, 58, 68, 69, 49, 60, 81, 72, 65, 73, 111, 52, 60, 91, 59, 70, 75, 77, 44, 60, 56, 61, 66, 60, 46, 71, 65, 76, 69, 63, 75, 65, 89, 72, 79, 53, 78, 61, 70, 64, 75, 78, 56, 56, 58, 60, 65, 86, 47, 44, 71, 64, 57, 115, 91, 86, 54, 46, 55, 70, 68, 66, 76, 57, 73, 79, 80, 60, 81, 66, 66, 82, 35, 80, 51, 85, 57, 44, 125, 68, 47, 74, 84, 77, 55, 64, 83, 73, 73, 64, 75, 61, 51, 61, 71, 68, 49, 68, 58, 52, 58, 58, 74, 61, 50, 52, 66, 66, 81, 84, 54, 59, 78, 59, 63, 70, 72, 54, 61, 49, 76, 59, 70, 56, 59, 82, 54, 89, 67, 70, 74, 72, 73, 58, 84, 68, 59, 63, 71, 49, 80, 82, 66, 75, 76, 71, 72, 66, 71, 84, 59, 53, 65, 56, 61, 77, 59, 28, 76, 56, 66, 57, 65, 52, 55, 63, 66, 66, 54, 59, 65, 95, 59, 48, 94, 82, 56, 78, 75, 55, 54, 55, 58, 54, 40, 90, 64, 57, 92, 53, 63, 61, 70, 56, 69, 66, 45, 54, 51, 71, 63, 68, 74, 60, 59, 81, 55, 45, 49, 60, 61, 79, 69, 58, 48, 74, 63, 65, 63, 61, 56, 73, 63, 60, 65, 64, 76, 70, 60, 61, 49, 55, 68, 75, 71, 58, 74, 96, 139, 65, 56, 70, 67, 69, 73, 34, 96, 65, 75, 80, 63, 43, 73, 70, 69, 89, 53, 61, 61, 55, 87, 68, 68, 59, 67, 62, 78, 65, 71, 59, 83, 86, 46, 96, 56, 74, 60, 65, 75, 64, 45, 47, 80, 65, 56, 60, 78, 63, 57, 56, 67, 56, 86, 64, 56, 55, 49, 68, 93, 71, 68, 58, 67, 69, 73, 73, 72, 85, 72, 57, 50, 87, 66, 79, 63, 76, 67, 72, 63, 64, 59, 57, 64, 65, 57, 64, 58, 69, 93, 47, 67, 63, 59, 53, 83, 71, 74, 54, 78, 98, 74, 59, 66, 79, 65, 55, 77, 58, 87, 68, 77, 76, 51, 60, 82, 72, 55, 77, 57, 70, 82, 62, 58, 47, 79, 57, 79, 61, 52, 75, 58, 93, 48, 68, 89, 67, 61, 98, 76, 74, 70, 63, 46, 81, 55, 57, 87, 105, 57, 67, 40, 64, 63, 72, 65, 56, 69, 64, 47, 64, 49, 60, 58, 72, 62, 76, 66, 71, 62, 43, 61, 77, 64, 71, 65, 61, 86, 65, 63, 59, 61, 62, 61, 65, 61, 69, 72, 65, 70, 74, 65, 71, 48, 67, 65, 71, 59, 51, 47, 58, 88, 48, 76, 62, 57, 58, 48, 68, 61, 70, 88, 62, 55, 107, 60, 71, 92, 63, 70, 54, 49, 67, 59, 76, 65, 76, 90, 59, 100, 60, 64, 64, 56, 82, 112, 70, 62, 45, 73, 101, 48, 76, 57, 88, 52, 62, 53, 93, 75, 71, 75, 75, 65, 72, 74, 64, 86, 64, 82, 89, 55, 66, 65, 86, 34, 42, 58, 75, 65, 52, 55, 54, 52, 73, 65, 44, 56, 52, 82, 50, 55, 58, 81, 68, 72, 56, 107, 59, 61, 50, 69, 59, 86, 57, 56, 75, 52, 54, 62, 70, 73, 61, 90, 50, 64, 51, 73, 68, 79, 83, 78, 65, 56, 69, 74, 66, 49, 44, 59, 69, 90, 57, 78, 73, 63, 56, 56, 67, 74, 61, 84, 65, 71, 64, 65, 49, 61, 57, 62, 69, 64, 75, 50, 53, 53, 72, 52, 71, 65, 81, 48, 74, 74, 69, 52, 60, 90, 67, 55, 70, 57, 58, 72, 65, 96, 68, 46, 68, 50, 62, 66, 79, 76, 60, 58, 58, 75, 77, 78, 77, 72, 55, 61, 64, 55, 52, 57, 56, 69, 69, 66, 49, 107, 48, 56, 54, 60, 45, 91, 83, 78, 60, 59, 68, 72, 50, 40, 57, 79, 70, 67, 78, 58, 78, 57, 85, 59, 59, 80, 64, 81, 55, 69, 68, 68, 83, 63, 71, 71, 79, 84, 46, 67, 57, 65, 67, 61, 51, 68, 65, 48, 68, 61, 70, 67, 76, 34, 75, 72, 54, 57, 52, 63, 92, 62, 65, 53, 62, 59, 77, 50, 68, 73, 89, 51, 67, 73, 59, 68, 54, 53, 74, 91, 56, 59, 63, 65, 62, 50, 54, 53, 53, 55, 58, 64, 57, 98, 57, 81, 87, 55, 60, 72, 60, 59, 81, 51, 68, 67, 108, 56, 50, 98, 54, 80, 68, 59, 68, 71, 72, 74, 81, 78, 66, 56, 55, 66, 49, 88, 79, 61, 71, 50, 47, 51, 59, 61, 60, 48, 54, 72, 65, 54, 66, 82, 60, 74, 102, 58, 82, 61, 77, 85, 67, 62, 74, 63, 73, 48, 67, 69, 65, 61, 55, 52, 55, 50, 55, 66, 47, 65, 64, 56, 62, 56, 57, 47, 63, 66, 40, 54, 76, 62, 69, 51, 46, 43, 111, 60, 53, 56, 69, 56, 50, 70, 51, 61, 87, 59, 68, 59, 71, 82, 63, 45, 132, 69, 55, 75, 59, 61, 100, 55, 76, 65, 55, 69, 96, 60, 80, 58, 57, 69, 62, 44, 88, 49, 86, 61, 93, 77, 57, 85, 53, 63, 83, 64, 50, 46, 65, 55, 52, 65, 69, 75, 78, 67, 89, 63, 77, 74, 38, 90, 82, 61, 63, 65, 75, 61, 48, 62, 45, 87, 69, 64, 47, 65, 72, 103, 60, 59, 70, 50, 79, 62, 67, 59, 63, 56, 109, 71, 75, 65, 78, 48, 59, 84, 76, 58, 62, 78, 91, 57, 85, 87, 60, 46, 60, 62, 65, 57, 60, 61, 62, 50, 60, 69, 53, 46, 62, 56, 63, 70, 73, 63, 58, 83, 67, 52, 77, 69, 83, 68, 69, 58, 73, 77, 82, 77, 60, 69, 46, 83, 65, 36, 46, 73, 64, 49, 63, 42, 61, 63, 55, 48, 69, 66, 73, 73, 59, 52, 47, 43, 52, 61, 64, 59, 56, 56, 73, 55, 90, 61, 57, 58, 52, 136, 59, 73, 65, 62, 66, 54, 48, 83, 52, 54, 68, 52, 65, 49, 56, 63, 63, 71, 73, 74, 113, 77, 62, 57, 71, 68, 76, 67, 67, 55, 81, 74, 56, 64, 66, 58, 70, 92, 56, 67, 73, 76, 59, 51, 66, 74, 60, 45, 66, 76, 72, 64, 70, 77, 60, 54, 55, 64, 67, 80, 100, 73, 77, 57, 78, 62, 71, 79, 93, 64, 51, 54, 56, 59, 94, 54, 43, 67, 40, 69, 123, 46, 72, 60, 77, 74, 79, 48, 54, 63, 65, 65, 96, 80, 72, 59, 67, 93, 90, 63, 61, 107, 90, 58, 61, 135, 75, 79, 56, 86, 56, 60, 64, 61, 78, 73, 53, 65, 71, 54, 66, 50, 64, 45, 69, 65, 27, 59, 76, 42, 57, 58, 51, 43, 82, 64, 89, 60, 52, 67, 58, 97, 68, 68, 60, 66, 70, 71, 84, 56, 52, 55, 68, 70, 55, 67, 94, 72, 65, 72, 70, 82, 51, 70, 65, 69, 83, 63, 68, 65, 80, 98, 59, 58, 69, 67, 69, 66, 52, 57, 55, 52, 110, 55, 32, 60, 52, 57, 64, 91, 66, 62, 68, 80, 69, 58, 60, 54, 87, 63, 65, 75, 69, 62, 82, 61, 53, 63, 64, 54, 55, 61, 90, 55, 52, 74, 36, 74, 55, 64, 52, 61, 81, 55, 67, 66, 86, 86, 59, 49, 67, 63, 55, 67, 57, 61, 68, 56, 59, 65, 77, 82, 62, 65, 75, 73, 54, 54, 70, 51, 54, 63, 66, 81, 68, 86, 51, 72, 72, 69, 50, 76, 55, 50, 93, 123, 57, 58, 58, 55, 66, 65, 65, 99, 70, 97, 81, 70, 45, 60, 82, 85, 90, 62, 70, 58, 56, 86, 70, 73, 69, 66, 57, 95, 66, 84, 84, 84, 80, 59, 60, 40, 62, 88, 60, 58, 74, 78, 66, 65, 54, 54, 66, 75, 58, 69, 44, 73, 64, 57, 65, 80, 46, 71, 53, 87, 62, 50, 57, 58, 67, 68, 53, 73, 56, 50, 60, 46, 61, 69, 62, 77, 45, 72, 66, 72, 72, 69, 41, 75, 66, 49, 60, 61, 65, 58, 56, 56, 77, 59, 65, 55, 63, 80, 53, 64, 104, 82, 80, 64, 71, 38, 68, 70, 75, 94, 66, 52, 67, 66, 57, 96, 68, 71, 55, 62, 61, 58, 85, 64, 59, 37, 51, 61, 64, 68, 69, 71, 90, 56, 62, 63, 62, 76, 102, 77, 77, 55, 41, 52, 67, 54, 65, 73, 109, 56, 53, 24, 63, 87, 55, 51, 53, 74, 49, 55, 63, 118, 71, 81, 65, 67, 62, 58, 81, 63, 69, 66, 71, 55, 60, 75, 56, 99, 57, 73, 76, 82, 56, 62, 64, 52, 50, 72, 71, 55, 75, 44, 64, 69, 55, 63, 55, 54, 59, 92, 65, 84, 51, 54, 53, 52, 56, 50, 66, 70, 55, 78, 63, 54, 129, 51, 68, 57, 61, 55, 63, 78, 79, 68, 82, 75, 70, 98, 59, 58, 72, 77, 62, 57, 59, 104, 80, 70, 52, 73, 82, 59, 87, 53, 59, 55, 62, 61, 85, 80, 68, 83, 68, 61, 79, 66, 79, 67, 70, 67, 72, 54, 60, 53, 79, 51, 43, 57, 78, 60, 51, 63, 53, 61, 62, 41, 47, 62, 64, 67, 68, 56, 52, 49, 79, 71, 59, 59, 58, 58, 81, 74, 36, 84, 54, 75, 77, 51, 60, 65, 62, 96, 53, 57, 41, 78, 62, 66, 60, 80, 84, 73, 66, 63, 66, 91, 51, 64, 49, 51, 60, 96, 57, 90, 75, 61, 73, 57, 69, 48, 49, 132, 54, 62, 59, 81, 66, 66, 70, 47, 73, 70, 73, 65, 61, 67, 62, 68, 47, 59, 74, 55, 73, 48, 76, 65, 68, 79, 62, 56, 63, 66, 43, 60, 57, 110, 75, 74, 75, 84, 48, 57, 76, 56, 60, 72, 68, 69, 59, 80, 58, 76, 85, 60, 73, 51, 73, 66, 51, 55, 71, 61, 70, 86, 71, 57, 63, 52, 50, 92, 80, 80, 47, 78, 64, 67, 41, 46, 49, 71, 67, 56, 69, 62, 86, 72, 56, 78, 60, 55, 70, 70, 60, 65, 59, 73, 102, 71, 104, 60, 38, 80, 56, 66, 49, 49, 52, 58, 51, 51, 61, 72, 58, 53, 59, 45, 63, 64, 70, 68, 71, 48, 53, 58, 88, 61, 55, 64, 67, 63, 60, 53, 61, 81, 73, 48, 48, 69, 46, 44, 66, 40, 73, 85, 88, 73, 60, 76, 47, 54, 65, 64, 55, 52, 58, 53, 62, 77, 60, 97, 72, 61, 64, 49, 59, 68, 68, 58, 60, 53, 93, 63, 65, 97, 74, 56, 69, 75, 63, 92, 81, 50, 63, 70, 54, 71, 64, 58, 58, 76, 76, 31, 58, 69, 53, 57, 64, 76, 77, 68, 68, 53, 77, 69, 60, 78, 60, 60, 102, 89, 80, 63, 71, 62, 56, 67, 58, 56, 57, 76, 74, 70, 57, 69, 77, 62, 81, 53, 45, 57, 74, 64, 65, 52, 58, 51, 57, 61, 81, 56, 56, 60, 91, 63, 66, 62, 66, 57, 137, 68, 67, 78, 62, 52, 33, 49, 81, 66, 87, 69, 61, 61, 76, 49, 63, 46, 144, 66, 53, 76, 70, 58, 79, 76, 66, 64, 78, 68, 69, 63, 63, 63, 98, 70, 91, 76, 94, 77, 71, 81, 63, 69, 74, 50, 51, 76, 63, 53, 47, 58, 63, 62, 87, 52, 57, 70, 40, 51, 95, 61, 57, 99, 92, 61, 50, 61, 58, 78, 54, 38, 53, 63, 62, 59, 79, 54, 62, 66, 61, 74, 51, 69, 39, 67, 43, 58, 66, 51, 52, 57, 63, 74, 74, 74, 61, 57, 43, 54, 71, 56, 64, 78, 61, 63, 72, 73, 65, 58, 71, 80, 86, 45, 83, 47, 50, 65, 65, 65, 53, 62, 50, 67, 56, 57, 40, 85, 68, 77, 41, 65, 64, 55, 62, 55, 60, 72, 61, 66, 61, 59, 60, 71, 47, 61, 61, 69, 43, 76, 103, 69, 66, 62, 63, 61, 77, 69, 59, 43, 58, 70, 64, 62, 76, 72, 48, 52, 65, 66, 75, 78, 52, 69, 58, 54, 57, 100, 52, 104, 120, 62, 97, 58, 46, 63, 55, 63, 80, 96, 72, 72, 59, 54, 66, 66, 52, 90, 54, 56, 94, 90, 89, 71, 64, 63, 74, 56, 63, 85, 60, 67, 67, 77, 66, 62, 58, 61, 50, 45, 77, 51, 61, 56, 70, 58, 48, 48, 82, 96, 63, 77, 56, 69, 51, 75, 77, 53, 67, 76, 84, 59, 87, 72, 68, 76, 68, 52, 81, 76, 55, 80, 64, 64, 87, 60, 45, 54, 55, 74, 121, 64, 98, 62, 76, 64, 69, 66, 67, 59, 78, 99, 69, 68, 93, 73, 61, 83, 75, 64, 81, 61, 52, 67, 75, 89, 69, 65, 64, 41, 59, 68, 34, 88, 57, 58, 52, 85, 88, 63, 46, 55, 80, 67, 79, 66, 87, 58, 66, 75, 61, 54, 104, 52, 78, 69, 53, 47, 78, 54, 77, 61, 57, 58, 73, 65, 78, 74, 77, 67, 67, 62, 58, 51, 78, 58, 64, 61, 91, 56, 86, 63, 64, 84, 60, 70, 57, 88, 51, 52, 52, 84, 78, 57, 73, 58, 66, 56, 55, 63, 64, 58, 91, 65, 49, 68, 69, 70, 73, 53, 62, 59, 85, 61, 62, 71, 58, 59, 44, 62, 92, 74, 76, 56, 60, 67, 54, 87, 71, 59, 64, 60, 75, 53, 54, 44, 68, 75, 69, 64, 68, 38, 49, 74, 69, 68, 69, 62, 64, 59, 61, 53, 60, 79, 51, 35, 60, 113, 39, 74, 63, 65, 52, 53, 49, 48, 118, 64, 59, 53, 80, 76, 41, 59, 86, 71, 66, 86, 84, 66, 62, 45, 53, 62, 67, 26, 50, 91, 72, 32, 77, 54, 72, 94, 62, 75, 87, 58, 53, 47, 62, 67, 117, 58, 50, 59, 50, 63, 72, 81, 57, 67, 61, 42, 49, 74, 60, 74, 63, 49, 56, 62, 69, 61, 52, 54, 81, 68, 44, 40, 65, 51, 53, 55, 67, 67, 61, 42, 55, 66, 103, 87, 57, 63, 61, 87, 59, 49, 58, 75, 54, 110, 43, 54, 61, 49, 43, 63, 68, 69, 74, 70, 64, 78, 50, 65, 65, 47, 64, 49, 67, 55, 53, 57, 61, 83, 71, 41, 58, 44, 51, 67, 66, 63, 51, 68, 121, 83, 41, 65, 55, 58, 76, 81, 63, 57, 76, 62, 87, 74, 84, 65, 56, 54, 51, 81, 60, 59, 64, 88, 45, 75, 91, 65, 87, 68, 50, 73, 66, 58, 50, 58, 56, 59, 67, 74, 90, 63, 66, 104, 58, 78, 46, 72, 105, 57, 91, 49, 74, 64, 65, 65, 59, 106, 61, 60, 72, 47, 58, 63, 56, 65, 57, 61, 67, 63, 114, 62, 59, 52, 80, 52, 96, 87, 73, 50, 39, 84, 38, 59, 69, 65, 80, 55, 66, 75, 69, 51, 63, 58, 51, 49, 95, 70, 56, 57, 56, 90, 64, 43, 77, 58, 86, 66, 60, 77, 92, 64, 67, 55, 82, 58, 57, 66, 60, 59, 61, 61, 53, 50, 57, 69, 49, 42, 62, 62, 68, 41, 65, 61, 62, 86, 57, 65, 52, 75, 63, 67, 63, 87, 69, 74, 45, 69, 73, 70, 72, 49, 57, 52, 92, 76, 65, 67, 58, 66, 44, 49, 60, 69, 53, 105, 79, 55, 67, 66, 61, 56, 55, 49, 66, 71, 55, 74, 59, 62, 67, 71, 51, 65, 65, 49, 87, 61, 91, 62, 58, 102, 68, 81, 67, 69, 63, 74, 61, 45, 55, 53, 72, 61, 66, 87, 53, 61, 72, 60, 71, 69, 115, 77, 67, 100, 61, 70, 105, 69, 69, 98, 78, 55, 61, 85, 58, 87, 80, 49, 53, 39, 59, 92, 58, 71, 72, 68, 86, 63, 75, 74, 65, 93, 60, 62, 56, 62, 78, 62, 61, 79, 72, 60, 56, 52, 45, 74, 59, 73, 79, 58, 75, 79, 63, 114, 72, 59, 63, 70, 71, 64, 62, 71, 49, 66, 64, 66, 56, 51, 65, 67, 56, 70, 65, 55, 65, 92, 63, 71, 62, 43, 62, 68, 43, 71, 51, 84, 55, 78, 51, 110, 68, 74, 64, 60, 73, 59, 57, 89, 67, 49, 35, 64, 46, 59, 45, 83, 56, 43, 84, 70, 67, 38, 48, 58, 52, 60, 59, 66, 51, 88, 68, 65, 63, 58, 70, 54, 61, 80, 61, 38, 59, 59, 62, 61, 47, 77, 95, 62, 87, 78, 89, 64, 83, 56, 65, 66, 61, 109, 73, 72, 60, 53, 74, 52, 54, 44, 61, 100, 68, 74, 62, 85, 107, 64, 59, 89, 75, 78, 62, 69, 85, 60, 78, 62, 71, 109, 60, 69, 84, 57, 70, 77, 70, 75, 54, 77, 88, 67, 86, 44, 46, 77, 50, 67, 56, 46, 32, 74, 46, 66, 62, 72, 68, 88, 54, 94, 57, 53, 70, 92, 78, 84, 71, 81, 67, 45, 74, 76, 66, 59, 84, 60, 64, 71, 58, 51, 65, 68, 66, 101, 72, 67, 57, 84, 54, 56, 81, 44, 49, 54, 66, 88, 77, 62, 71, 43, 43, 65, 95, 54, 65, 61, 79, 63, 83, 42, 91, 50, 84, 67, 72, 61, 44, 63, 48, 60, 78, 69, 72, 91, 40, 63, 41, 77, 60, 56, 57, 95, 70, 63, 72, 66, 60, 72, 60, 46, 77, 70, 72, 57, 58, 65, 66, 76, 63, 68, 52, 62, 64, 50, 71, 69, 87, 66, 83, 65, 59, 80, 41, 56, 60, 62, 74, 49, 53, 55, 57, 66, 59, 78, 60, 65, 90, 59, 74, 59, 86, 67, 70, 51, 85, 53, 81, 62, 56, 55, 61, 59, 52, 65, 57, 74, 89, 73, 72, 65, 54, 60, 59, 80, 72, 76, 62, 47, 82, 68, 67, 68, 48, 76, 84, 83, 63, 57, 44, 64, 65, 58, 41, 79, 64, 58, 56, 69, 62, 76, 56, 71, 82, 57, 66, 65, 63, 51, 60, 66, 48, 72, 53, 72, 57, 69, 68, 50, 65, 63, 83, 71, 60, 61, 66, 53, 66, 58, 42, 71, 57, 55, 49, 65, 63, 75, 60, 50, 53, 82, 63, 53, 88, 69, 61, 67, 61, 40, 55, 44, 92, 51, 67, 73, 50, 56, 53, 63, 74, 46, 68, 60, 64, 60, 55, 67, 50, 54, 51, 86, 123, 54, 76, 59, 40, 71, 58, 55, 84, 51, 79, 60, 79, 65, 58, 65, 75, 81, 52, 71, 124, 87, 67, 46, 91, 79, 85, 65, 67, 78, 74, 66, 56, 63, 54, 68, 62, 58, 49, 57, 80, 69, 46, 76, 53, 67, 83, 22, 54, 81, 66, 82, 48, 63, 65, 77, 72, 67, 57, 69, 108, 52, 65, 68, 77, 53, 57, 47, 46, 63, 62, 74, 59, 74, 57, 64, 58, 57, 41, 70, 58, 56, 96, 56, 53, 58, 68, 64, 67, 64, 49, 114, 99, 81, 70, 56, 83, 95, 69, 58, 82, 58, 75, 58, 61, 63, 70, 69, 65, 75, 59, 64, 52, 86, 69, 70, 62, 59, 106, 102, 52, 56, 83, 80, 64, 69, 114, 44, 64, 56, 45, 62, 55, 64, 84, 75, 67, 51, 46, 55, 89, 72, 72, 68, 85, 62, 60, 65, 57, 60, 66, 51, 64, 73, 84, 66, 79, 70, 63, 75, 45, 85, 63, 124, 70, 57, 46, 58, 58, 51, 75, 58, 90, 68, 56, 55, 54, 83, 69, 65, 47, 69, 61, 73, 77, 67, 64, 87, 99, 64, 67, 75, 69, 54, 67, 60, 35, 72, 57, 71, 84, 66, 63, 69, 67, 56, 58, 106, 55, 63, 60, 60, 70, 65, 70, 61, 77, 66, 76, 50, 69, 59, 48, 70, 66, 57, 52, 66, 63, 69, 57, 62, 76, 54, 61, 62, 64, 73, 72, 46, 57, 93, 52, 56, 61, 50, 78, 63, 74, 77, 64, 88, 52, 61, 67, 79, 53, 54, 58, 65, 69, 64, 72, 64, 59, 42, 52, 56, 64, 73, 55, 53, 77, 76, 47, 60, 56, 61, 52, 60, 62, 71, 96, 66, 46, 64, 70, 59, 67, 79, 52, 61, 67, 61, 67, 63, 47, 64, 71, 45, 62, 67, 64, 80, 76, 57, 48, 71, 53, 50, 95, 69, 58, 53, 47, 79, 64, 54, 56, 68, 91, 76, 61, 62, 65, 77, 68, 57, 59, 85, 58, 65, 74, 63, 70, 52, 54, 70, 51, 48, 51, 61, 53, 64, 57, 58, 62, 63, 75, 51, 64, 62, 45, 44, 86, 79, 63, 59, 73, 74, 79, 85, 68, 59, 86, 62, 98, 50, 50, 59, 70, 72, 81, 69, 56, 99, 71, 77, 68, 72, 61, 66, 60, 69, 76, 62, 69, 61, 64, 100, 64, 68, 68, 55, 106, 71, 57, 73, 68, 78, 68, 84, 68, 47, 57, 71, 78, 52, 55, 78, 57, 72, 53, 68, 110, 56, 55, 54, 90, 61, 74, 59, 67, 78, 66, 54, 57, 65, 70, 73, 52, 50, 82, 64, 54, 62, 111, 67, 55, 60, 70, 56, 76, 72, 82, 59, 65, 68, 54, 58, 99, 77, 93, 56, 65, 78, 56, 57, 74, 72, 91, 91, 54, 84, 56, 82, 58, 57, 60, 77, 87, 83, 85, 69, 56, 80, 66, 55, 76, 61, 64, 65, 82, 50, 77, 89, 71, 48, 60, 69, 44, 67, 81, 51, 72, 52, 65, 59, 66, 71, 52, 85, 69, 70, 60, 73, 71, 53, 72, 61, 61, 70, 68, 77, 54, 71, 64, 57, 55, 81, 66, 74, 64, 56, 58, 37, 60, 59, 94, 69, 61, 122, 69, 67, 53, 55, 69, 74, 59, 55, 54, 60, 82, 62, 84, 47, 68, 75, 49, 71, 50, 65, 61, 58, 78, 66, 57, 93, 60, 54, 55, 81, 59, 68, 49, 68, 64, 66, 57, 60, 70, 85, 61, 61, 66, 75, 69, 60, 121, 76, 61, 80, 65, 50, 70, 56, 59, 68, 68, 66, 50, 65, 74, 67, 61, 60, 71, 77, 67, 81, 54, 60, 81, 37, 79, 61, 83, 93, 45, 71, 75, 82, 58, 86, 84, 82, 69, 70, 73, 71, 38, 48, 57, 65, 72, 88, 37, 67, 72, 95, 62, 116, 75, 53, 83, 57, 64, 58, 62, 60, 58, 61, 57, 59, 64, 67, 66, 61, 56, 59, 66, 65, 56, 72, 66, 68, 63, 83, 50, 54, 52, 70, 56, 66, 65, 65, 84, 119, 72, 63, 61, 59, 80, 79, 54, 55, 63, 61, 82, 70, 48, 64, 64, 70, 53, 61, 66, 64, 67, 53, 65, 68, 68, 55, 53, 67, 58, 86, 86, 61, 76, 48, 64, 65, 60, 74, 62, 76, 51, 65, 56, 86, 61, 59, 68, 67, 85, 79, 77, 48, 51, 65, 68, 64, 79, 77, 73, 78, 82, 60, 68, 75, 53, 51, 74, 78, 91, 51, 43, 69, 83, 67, 70, 61, 76, 54, 61, 71, 88, 60, 63, 59, 66, 74, 60, 68, 90, 63, 55, 57, 60, 59, 59, 62, 41, 61, 73, 73, 63, 74, 74, 76, 69, 75, 56, 84, 54, 61, 57, 89, 68, 75, 50, 104, 66, 83, 65, 78, 93, 46, 59, 76, 59, 72, 77, 61, 57, 74, 94, 40, 57, 103, 75, 73, 59, 59, 60, 60, 57, 61, 76, 60, 69, 64, 59, 63, 61, 56, 72, 65, 58, 66, 71, 71, 45, 67, 92, 62, 70, 62, 74, 57, 77, 68, 80, 70, 68, 61, 66, 63, 64, 64, 59, 68, 45, 70, 69, 88, 72, 51, 74, 61, 69, 59, 88, 71, 81, 51, 72, 68, 64, 65, 72, 67, 59, 64, 68, 76, 78, 66, 81, 77, 57, 62, 30, 59, 79, 62, 63, 71, 63, 77, 50, 63, 60, 64, 57, 90, 63, 67, 66, 64, 68, 68, 69, 70, 54, 62, 86, 65, 60, 63, 64, 57, 87, 49, 61, 60, 73, 64, 65, 64, 59, 74, 62, 73, 91, 50, 72, 53, 96, 60, 50, 69, 56, 93, 70, 60, 52, 55, 67, 75, 62, 78, 45, 90, 68, 73, 76, 59, 67, 51, 64, 58, 58, 75, 76, 57, 61, 55, 60, 73, 56, 77, 75, 64, 83, 64, 62, 62, 59, 59, 76, 74, 79, 69, 64, 53, 59, 80, 70, 83, 69, 65, 74, 52, 96, 65, 65, 59, 59, 61, 94, 79, 63, 66, 98, 63, 64, 64, 61, 51, 55, 67, 67, 67, 86, 58, 84, 52, 63, 59, 67, 51, 67, 72, 72, 72, 59, 57, 68, 66, 70, 63, 58, 97, 58, 64, 86, 63, 61, 69, 66, 67, 68, 55, 64, 58, 66, 56, 56, 90, 56, 60, 54, 58, 89, 58, 53, 74, 62, 66, 82, 78, 89, 72, 53, 57, 48, 87, 57, 86, 63, 61, 51, 49, 53, 54, 73, 65, 42, 71, 58, 68, 91, 79, 57, 76, 60, 59, 61, 52, 61, 62, 71, 81, 49, 44, 57, 52, 71, 53, 90, 58, 106, 54, 69, 80, 70, 62, 54, 70, 91, 69, 41, 77, 72, 58, 72, 53, 72, 60, 60, 65, 70, 60, 110, 61, 47, 51, 75, 60, 64, 81, 66, 73, 86, 64, 85, 38, 62, 91, 82, 57, 69, 56, 93, 58, 53, 90, 67, 64, 70, 90, 68, 55, 59, 79, 56, 66, 63, 46, 58, 65, 80, 47, 93, 83, 43, 74, 92, 61, 56, 73, 74, 76, 84, 63, 71, 81, 106, 76, 63, 64, 49, 59, 60, 63, 72, 78, 64, 71, 60, 63, 73, 69, 68, 59, 68, 68, 65, 69, 64, 64, 60, 96, 51, 68, 60, 63, 59, 61, 75, 58, 59, 71, 54, 58, 43, 69, 64, 105, 55, 71, 57, 77, 94, 61, 48, 62, 55, 81, 79, 80, 43, 79, 52, 57, 84, 54, 52, 72, 61, 62, 59, 61, 79, 80, 69, 60, 55, 69, 69, 51, 58, 59, 67, 63, 66, 74, 94, 84, 62, 61, 61, 58, 71, 102, 64, 54, 55, 72, 63, 63, 53, 58, 59, 55, 61, 63, 50, 47, 68, 85, 55, 55, 54, 54, 69, 51, 61, 65, 67, 66, 65, 85, 64, 53, 66, 84, 74, 60, 63, 54, 50, 54, 64, 59, 94, 97, 61, 56, 76, 73, 67, 64, 60, 53, 61, 49, 55, 56, 54, 79, 54, 93, 61, 64, 70, 58, 50, 57, 97, 94, 51, 67, 69, 89, 61, 50, 89, 57, 77, 54, 64, 63, 73, 73, 68, 67, 61, 59, 63, 54, 68, 67, 58, 71, 68, 55, 66, 75, 57, 75, 50, 66, 65, 94, 64, 63, 78, 70, 62, 71, 62, 65, 60, 52, 86, 59, 61, 56, 55, 50, 55, 54, 73, 79, 67, 108, 68, 53, 74, 63, 54, 53, 62, 65, 101, 79, 54, 51, 67, 91, 48, 116, 91, 61, 77, 47, 78, 56, 52, 60, 66, 65, 70, 62, 78, 58, 71, 47, 50, 57, 50, 48, 60, 62, 85, 60, 72, 81, 87, 90, 68, 50, 66, 44, 50, 61, 48, 58, 79, 72, 79, 65, 65, 67, 123, 62, 66, 58, 69, 54, 79, 80, 47, 53, 95, 72, 50, 77, 73, 48, 57, 62, 89, 81, 71, 60, 68, 65, 57, 50, 60, 65, 72, 61, 66, 56, 66, 101, 59, 61, 58, 50, 61, 56, 75, 51, 52, 82, 49, 65, 64, 75, 68, 61, 55, 80, 113, 70, 61, 60, 80, 95, 56, 55, 59, 54, 51, 92, 52, 66, 58, 63, 68, 95, 64, 43, 79, 61, 74, 53, 95, 62, 73, 62, 57, 92, 64, 83, 54, 65, 39, 59, 83, 77, 56, 73, 73, 60, 81, 56, 56, 93, 95, 76, 60, 70, 55, 58, 68, 54, 59, 56, 62, 68, 79, 90, 70, 115, 68, 102, 67, 62, 61, 66, 97, 93, 61, 63, 70, 58, 52, 65, 58, 61, 64, 74, 46, 51, 62, 76, 63, 88, 57, 60, 67, 72, 65, 55, 60, 69, 45, 54, 60, 54, 54, 58, 68, 67, 104, 49, 58, 58, 82, 62, 56, 66, 70, 99, 59, 49, 80, 80, 60, 74, 72, 82, 88, 68, 77, 66, 63, 62, 52, 63, 109, 88, 51, 62, 55, 66, 57, 46, 65, 58, 85, 60, 65, 89, 76, 94, 65, 67, 74, 74, 58, 67, 66, 67, 46, 58, 58, 77, 64, 73, 50, 65, 64, 56, 78, 64, 71, 46, 62, 56, 66, 67, 56, 55, 56, 52, 55, 93, 74, 59, 69, 49, 76, 61, 73, 52, 46, 60, 61, 52, 55, 50, 62, 78, 79, 67, 54, 69, 71, 51, 64, 59, 65, 54, 70, 61, 84, 60, 70, 98, 62, 80, 78, 71, 62, 52, 69, 66, 69, 62, 53, 82, 62, 53, 110, 55, 34, 71, 75, 53, 44, 60, 79, 60, 75, 72, 111, 54, 64, 58, 62, 76, 54, 59, 69, 61, 65, 85, 73, 52, 53, 71, 55, 56, 62, 54, 67, 77, 63, 59, 65, 72, 55, 64, 71, 68, 87, 54, 58, 61, 82, 64, 48, 56, 95, 77, 65, 71, 74, 49, 67, 62, 59, 78, 77, 60, 60, 66, 70, 82, 75, 56, 61, 46, 81, 76, 66, 56, 56, 65, 61, 79, 49, 54, 84, 79, 67, 60, 67, 67, 59, 56, 108, 65, 61, 92, 46, 52, 71, 99, 43, 69, 55, 56, 48, 64, 67, 66, 50, 62, 44, 60, 63, 87, 76, 60, 50, 61, 79, 82, 58, 55, 61, 52, 61, 83, 54, 70, 61, 65, 89, 66, 48, 49, 61, 72, 74, 80, 67, 71, 59, 65, 57, 54, 67, 56, 67, 61, 71, 58, 53, 60, 78, 71, 65, 66, 87, 65, 63, 60, 57, 72, 57, 66, 68, 61, 98, 61, 56, 63, 68, 57, 60, 47, 63, 55, 57, 40, 69, 64, 99, 71, 60, 55, 59, 59, 74, 64, 122, 50, 43, 62, 47, 66, 93, 61, 95, 74, 51, 49, 121, 60, 102, 44, 53, 56, 50, 75, 48, 69, 61, 75, 63, 74, 68, 55, 66, 52, 68, 75, 71, 68, 52, 69, 58, 105, 66, 54, 61, 66, 81, 54, 62, 74, 89, 67, 71, 60, 65, 99, 63, 67, 103, 61, 54, 87, 83, 59, 70, 67, 54, 62, 51, 63, 49, 62, 72, 55, 59, 61, 72, 70, 61, 60, 60, 83, 80, 61, 58, 67, 78, 59, 62, 52, 45, 65, 62, 63, 109, 63, 67, 58, 68, 82, 55, 57, 64, 57, 60, 58, 53, 56, 48, 44, 62, 54, 74, 107, 75, 53, 61, 69, 52, 48, 41, 68, 67, 78, 59, 89, 41, 59, 41, 61, 60, 42, 100, 63, 68, 78, 83, 52, 67, 52, 48, 43, 65, 57, 79, 62, 85, 53, 75, 76, 62, 70, 57, 65, 52, 70, 65, 73, 43, 73, 62, 52, 69, 79, 66, 122, 105, 62, 64, 53, 75, 73, 48, 57, 113, 76, 70, 58, 54, 53, 77, 50, 65, 62, 65, 78, 63, 79, 78, 70, 50, 67, 64, 61, 80, 53, 62, 56, 59, 69, 75, 73, 35, 60, 62, 50, 59, 67, 69, 69, 58, 48, 61, 72, 66, 89, 48, 86, 55, 90, 70, 92, 72, 72, 68, 80, 49, 48, 71, 64, 65, 69, 49, 49, 56, 79, 52, 70, 61, 65, 76, 52, 63, 72, 44, 67, 73, 50, 76, 55, 70, 68, 59, 51, 68, 57, 74, 106, 64, 58, 69, 52, 73, 87, 61, 70, 80, 57, 63, 57, 59, 56, 64, 74, 63, 78, 85, 46, 50, 62, 69, 54, 54, 59, 126, 57, 54, 59, 70, 72, 57, 56, 67, 83, 54, 48, 56, 67, 53, 58, 74, 64, 61, 59, 59, 63, 71, 58, 61, 66, 102, 78, 52, 91, 67, 55, 56, 68, 59, 70, 64, 68, 55, 63, 72, 75, 55, 56, 50, 70, 59, 112, 59, 32, 48, 61, 57, 64, 65, 64, 66, 69, 43, 65, 102, 56, 65, 89, 71, 72, 82, 45, 77, 55, 80, 52, 57, 48, 81, 66, 52, 97, 63, 61, 42, 50, 78, 52, 48, 78, 52, 58, 60, 88, 64, 84, 57, 69, 70, 60, 96, 77, 96, 54, 57, 56, 79, 66, 68, 52, 71, 87, 56, 70, 71, 59, 72, 42, 85, 54, 69, 89, 73, 75, 60, 54, 65, 47, 55, 53, 61, 50, 97, 79, 63, 82, 62, 77, 65, 64, 67, 64, 46, 52, 68, 83, 41, 68, 122, 66, 46, 90, 48, 56, 63, 66, 49, 69, 58, 55, 53, 111, 57, 71, 55, 54, 63, 69, 127, 71, 73, 69, 63, 68, 65, 48, 57, 71, 81, 70, 71, 67, 67, 62, 53, 64, 58, 56, 52, 80, 99, 52, 49, 68, 76, 53, 94, 73, 63, 74, 64, 53, 49, 72, 71, 60, 78, 67, 55, 47, 57, 71, 73, 67, 64, 47, 48, 80, 53, 52, 70, 63, 69, 71, 65, 67, 68, 67, 53, 61, 56, 61, 61, 62, 79, 55, 63, 70, 80, 51, 39, 71, 37, 50, 65, 74, 69, 116, 71, 81, 77, 56, 89, 55, 54, 47, 67, 61, 87, 66, 74, 81, 68, 55, 56, 64, 58, 59, 67, 63, 66, 60, 62, 43, 57, 102, 54, 64, 126, 64, 70, 52, 50, 54, 77, 51, 63, 58, 40, 53, 69, 68, 73, 74, 69, 83, 68, 70, 61, 75, 119, 85, 82, 63, 69, 64, 50, 52, 60, 100, 68, 57, 51, 60, 63, 70, 54, 69, 77, 62, 50, 76, 116, 69, 71, 39, 73, 74, 59, 53, 60, 53, 78, 76, 69, 75, 74, 80, 44, 67, 70, 74, 63, 67, 55, 66, 94, 56, 64, 95, 55, 65, 72, 71, 70, 64, 69, 92, 63, 57, 48, 87, 82, 55, 74, 59, 74, 68, 70, 57, 71, 80, 56, 61, 43, 54, 50, 68, 66, 79, 78, 80, 63, 69, 68, 66, 63, 34, 50, 46, 66, 81, 45, 67, 64, 95, 61, 73, 71, 66, 55, 54, 64, 61, 63, 89, 93, 63, 58, 52, 59, 43, 60, 58, 101, 77, 68, 65, 82, 57, 72, 78, 47, 63, 74, 57, 60, 64, 74, 62, 54, 61, 52, 50, 44, 62, 61, 71, 106, 63, 67, 60, 56, 86, 60, 41, 56, 68, 60, 76, 66, 69, 60, 69, 55, 62, 60, 81, 47, 64, 61, 70, 56, 46, 109, 74, 75, 113, 50, 66, 72, 71, 60, 52, 59, 68, 57, 66, 60, 70, 58, 51, 63, 58, 83, 114, 77, 64, 56, 61, 92, 76, 56, 73, 78, 91, 75, 71, 49, 75, 72, 62, 67, 45, 74, 56, 71, 54, 66, 84, 68, 56, 58, 54, 81, 64, 78, 124, 87, 63, 69, 56, 70, 61, 66, 60, 57, 59, 71, 46, 55, 67, 73, 71, 50, 75, 61, 57, 55, 64, 67, 64, 67, 65, 67, 55, 78, 61, 39, 53, 72, 77, 57, 125, 59, 65, 57, 88, 92, 97, 42, 85, 53, 53, 40, 67, 67, 62, 76, 57, 59, 70, 77, 65, 68, 65, 67, 73, 77, 62, 79, 75, 63, 72, 53, 59, 76, 85, 55, 48, 53, 61, 72, 51, 59, 62, 94, 80, 84, 59, 84, 68, 86, 94, 78, 53, 66, 53, 75, 92, 61, 51, 54, 77, 70, 66, 71, 73, 46, 64, 69, 74, 71, 54, 56, 58, 75, 88, 54, 69, 73, 74, 63, 57, 53, 60, 56, 61, 78, 81, 72, 57, 55, 73, 78, 60, 56, 73, 60, 77, 56, 50, 94, 82, 67, 84, 45, 45, 61, 66, 77, 80, 58, 67, 69, 89, 62, 65, 64, 95, 53, 74, 58, 60, 58, 82, 55, 64, 62, 65, 101, 77, 77, 60, 69, 49, 55, 45, 60, 65, 70, 73, 75, 64, 68, 62, 63, 73, 58, 70, 78, 51, 56, 78, 74, 66, 50, 60, 62, 69, 56, 50, 91, 61, 61, 63, 74, 58, 67, 67, 68, 59, 61, 63, 74, 53, 71, 75, 58, 73, 75, 52, 57, 60, 60, 68, 63, 73, 58, 58, 74, 77, 54, 70, 65, 64, 62, 56, 61, 57, 46, 55, 60, 89, 57, 61, 69, 98, 61, 57, 86, 68, 73, 77, 53, 83, 82, 73, 80, 62, 63, 71, 55, 75, 54, 26, 72, 77, 53, 73, 53, 62, 65, 78, 70, 64, 53, 53, 61, 81, 116, 63, 49, 51, 58, 56, 70, 65, 52, 71, 78, 53, 67, 50, 58, 53, 84, 61, 86, 87, 69, 61, 61, 63, 57, 58, 63, 58, 44, 51, 51, 66, 113, 86, 66, 68, 55, 49, 67, 63, 68, 59, 56, 53, 49, 68, 105, 56, 81, 56, 64, 60, 53, 50, 71, 56, 64, 64, 74, 59, 53, 58, 73, 68, 65, 75, 79, 92, 60, 69, 75, 57, 65, 53, 80, 57, 65, 75, 45, 60, 82, 53, 51, 55, 69, 53, 86, 54, 78, 68, 55, 64, 65, 60, 44, 65, 54, 56, 55, 67, 79, 55, 50, 64, 64, 47, 39, 80, 66, 52, 77, 65, 55, 62, 49, 55, 63, 76, 63, 102, 77, 78, 108, 45, 67, 57, 56, 78, 53, 53, 44, 68, 57, 57, 44, 71, 68, 79, 64, 66, 90, 105, 56, 80, 73, 55, 55, 55, 110, 76, 61, 67, 51, 58, 58, 69, 53, 52, 63, 63, 60, 74, 63, 91, 55, 61, 49, 39, 51, 47, 76, 73, 39, 54, 80, 72, 98, 76, 52, 85, 90, 81, 79, 67, 50, 67, 52, 74, 56, 59, 75, 50, 50, 64, 55, 65, 38, 33, 81, 66, 60, 63, 83, 63, 83, 64, 65, 82, 65, 69, 81, 76, 99, 67, 74, 50, 74, 90, 56, 64, 70, 74, 58, 62, 32, 49, 56, 61, 65, 80, 48, 60, 66, 60, 60, 76, 68, 74, 75, 78, 65, 71, 71, 51, 64, 55, 103, 54, 63, 65, 74, 70, 100, 59, 89, 69, 47, 63, 68, 103, 89, 53, 66, 72, 78, 86, 81, 61, 71, 65, 65, 65, 69, 68, 68, 65, 82, 73, 46, 58, 60, 64, 86, 82, 74, 75, 53, 64, 57, 72, 51, 74, 48, 68, 54, 44, 95, 98, 52, 51, 74, 83, 62, 47, 102, 96, 68, 74, 58, 55, 61, 29, 66, 64, 55, 69, 66, 49, 72, 47, 119, 60, 69, 91, 65, 70, 53, 92, 79, 69, 61, 65, 71, 43, 46, 67, 82, 88, 49, 54, 46, 49, 51, 60, 66, 58, 57, 48, 70, 45, 68, 67, 77, 51, 65, 70, 81, 88, 69, 63, 48, 67, 57, 53, 56, 71, 84, 93, 61, 67, 86, 66, 63, 38, 74, 99, 56, 62, 78, 63, 78, 61, 73, 58, 56, 99, 75, 66, 66, 69, 56, 57, 52, 109, 56, 47, 64, 60, 63, 48, 49, 65, 78, 54, 59, 63, 53, 58, 65, 90, 60, 61, 63, 56, 64, 41, 94, 84, 51, 56, 59, 96, 66, 83, 61, 63, 72, 63, 50, 66, 82, 74, 56, 43, 57, 57, 38, 92, 58, 93, 70, 60, 47, 67, 61, 83, 74, 67, 50, 63, 81, 88, 37, 49, 50, 62, 52, 62, 72, 74, 57, 46, 49, 77, 84, 60, 73, 66, 57, 78, 52, 51, 80, 60, 83, 82, 61, 66, 85, 36, 80, 83, 53, 47, 73, 63, 114, 57, 58, 57, 55, 60, 62, 58, 46, 88, 77, 41, 63, 79, 58, 64, 53, 69, 104, 65, 58, 61, 67, 82, 58, 60, 67, 56, 105, 57, 49, 63, 50, 118, 58, 53, 85, 56, 67, 81, 62, 79, 60, 65, 81, 71, 42, 64, 108, 70, 62, 57, 92, 77, 75, 51, 53, 83, 57, 61, 62, 57, 42, 65, 79, 70, 80, 64, 40, 57, 71, 56, 61, 70, 61, 54, 102, 63, 98, 70, 41, 74, 68, 60, 65, 61, 121, 72, 58, 76, 66, 65, 74, 59, 113, 60, 75, 88, 75, 44, 62, 83, 70, 58, 69, 46, 73, 83, 75, 61, 60, 81, 65, 65, 53, 56, 63, 62, 65, 102, 53, 42, 54, 44, 45, 75, 62, 65, 50, 53, 65, 88, 56, 64, 63, 127, 68, 62, 59, 82, 85, 62, 63, 53, 70, 73, 68, 53, 61, 73, 55, 53, 67, 78, 69, 51, 83, 71, 56, 68, 64, 54, 63, 61, 74, 112, 67, 62, 85, 57, 55, 47, 47, 69, 59, 72, 65, 70, 64, 66, 79, 76, 62, 50, 50, 50, 80, 67, 82, 58, 71, 65, 47, 94, 90, 61, 81, 60, 69, 61, 51, 62, 64, 71, 61, 89, 79, 83, 65, 66, 54, 64, 107, 71, 50, 73, 61, 57, 56, 70, 59, 66, 65, 55, 63, 92, 83, 68, 61, 79, 58, 62, 58, 57, 56, 59, 63, 95, 77, 64, 74, 84, 74, 70, 79, 91, 59, 57, 88, 82, 50, 81, 68, 43, 68, 54, 62, 49, 59, 69, 71, 61, 64, 58, 49, 132, 78, 59, 48, 64, 91, 68, 64, 59, 60, 61, 57, 77, 48, 46, 80, 73, 57, 51, 63, 72, 76, 71, 66, 61, 59, 58, 69, 81, 80, 68, 80, 64, 85, 56, 72, 90, 86, 83, 64, 54, 78, 62, 62, 52, 80, 46, 87, 84, 47, 65, 63, 79, 46, 79, 57, 63, 61, 66, 53, 67, 75, 64, 74, 67, 69, 44, 106, 67, 75, 51, 91, 61, 71, 46, 93, 54, 62, 64, 54, 69, 60, 53, 57, 70, 93, 81, 86, 67, 65, 44, 69, 68, 61, 70, 34, 89, 57, 51, 71, 53, 65, 70, 68, 97, 75, 64, 82, 72, 93, 53, 53, 88, 64, 51, 52, 66, 103, 60, 70, 56, 54, 67, 67, 65, 71, 48, 61, 64, 64, 56, 55, 67, 75, 60, 51, 76, 72, 79, 55, 82, 106, 75, 67, 99, 82, 49, 44, 63, 94, 56, 64, 128, 70, 67, 56, 80, 89, 65, 66, 51, 56, 52, 58, 71, 66, 58, 57, 51, 72, 75, 54, 63, 58, 75, 70, 103, 51, 75, 64, 71, 79, 49, 78, 53, 46, 46, 48, 67, 76, 54, 80, 57, 79, 59, 108, 64, 65, 73, 63, 71, 71, 71, 71, 58, 50, 52, 77, 57, 70, 82, 75, 47, 68, 58, 48, 101, 74, 60, 91, 80, 74, 61, 102, 60, 71, 86, 71, 66, 88, 61, 40, 59, 48, 65, 55, 47, 48, 56, 62, 59, 46, 72, 121, 53, 53, 59, 59, 87, 64, 64, 76, 58, 59, 44, 59, 65, 60, 98, 74, 70, 73, 63, 55, 66, 66, 63, 53, 55, 51, 51, 78, 56, 71, 67, 66, 71, 66, 59, 63, 63, 63, 59, 71, 70, 71, 50, 63, 71, 70, 67, 59, 63, 54, 81, 52, 73, 56, 63, 57, 43, 61, 58, 63, 64, 65, 66, 55, 80, 63, 64, 67, 71, 78, 55, 62, 54, 45, 56, 56, 57, 52, 56, 80, 79, 83, 57, 87, 66, 62, 57, 48, 54, 71, 60, 69, 76, 62, 70, 59, 87, 51, 67, 75, 62, 77, 60, 63, 73, 69, 43, 62, 88, 50, 74, 91, 54, 43, 78, 66, 60, 36, 91, 52, 68, 96, 73, 64, 57, 76, 56, 75, 48, 50, 55, 56, 60, 53, 72, 68, 79, 58, 62, 59, 66, 61, 66, 65, 61, 64, 84, 72, 80, 61, 68, 72, 54, 51, 107, 67, 57, 64, 50, 48, 62, 62, 54, 62, 60, 56, 92, 89, 67, 99, 75, 76, 58, 76, 104, 75, 70, 52, 47, 58, 56, 81, 72, 65, 62, 56, 62, 52, 59, 83, 81, 51, 43, 67, 62, 62, 58, 69, 76, 78, 68, 60, 63, 70, 50, 112, 81, 60, 96, 102, 60, 84, 64, 67, 67, 61, 62, 60, 79, 59, 51, 51, 72, 99, 56, 62, 68, 49, 57, 102, 69, 96, 63, 63, 45, 57, 76, 62, 62, 47, 88, 91, 69, 61, 61, 58, 69, 62, 58, 74, 59, 67, 67, 55, 64, 52, 62, 47, 72, 70, 60, 39, 62, 53, 73, 48, 69, 89, 67, 63, 64, 59, 76, 63, 62, 53, 70, 66, 52, 84, 69, 77, 69, 79, 57, 64, 69, 67, 60, 63, 68, 47, 65, 67, 68, 63, 61, 79, 64, 47, 72, 57, 62, 88, 50, 85, 54, 50, 53, 83, 70, 56, 71, 58, 79, 80, 71, 70, 58, 88, 83, 60, 61, 59, 60, 47, 56, 70, 58, 63, 91, 75, 65, 61, 88, 65, 56, 60, 80, 71, 71, 77, 61, 44, 58, 52, 57, 50, 56, 67, 52, 74, 70, 73, 51, 66, 97, 52, 76, 66, 83, 67, 59, 79, 75, 88, 57, 81, 52, 57, 57, 98, 87, 80, 63, 66, 52, 60, 56, 63, 76, 80, 71, 58, 76, 49, 68, 79, 68, 63, 67, 64, 45, 56, 49, 105, 77, 60, 61, 51, 106, 50, 58, 58, 66, 57, 55, 63, 60, 54, 74, 50, 71, 78, 55, 68, 65, 67, 72, 70, 70, 89, 73, 64, 55, 100, 71, 50, 68, 62, 85, 48, 53, 62, 59, 56, 60, 94, 80, 57, 67, 72, 46, 69, 61, 58, 76, 67, 53, 46, 78, 76, 66, 62, 68, 63, 68, 56, 52, 67, 72, 64, 62, 99, 76, 61, 61, 77, 69, 79, 55, 62, 56, 69, 98, 61, 76, 59, 62, 59, 83, 51, 84, 49, 64, 61, 57, 64, 69, 68, 74, 73, 72, 59, 87, 38, 61, 74, 47, 53, 62, 50, 56, 86, 87, 74, 52, 58, 74, 61, 88, 73, 60, 68, 60, 105, 61, 67, 58, 85, 72, 58, 58, 44, 86, 53, 56, 73, 67, 64, 71, 68, 69, 55, 60, 63, 62, 74, 68, 59, 55, 53, 74, 34, 67, 56, 67, 64, 59, 93, 62, 60, 70, 81, 83, 63, 64, 58, 81, 62, 69, 61, 60, 120, 67, 63, 49, 72, 60, 43, 64, 69, 81, 77, 77, 54, 77, 65, 59, 56, 57, 62, 54, 63, 71, 92, 57, 65, 60, 51, 79, 85, 50, 63, 56, 55, 57, 67, 56, 98, 67, 110, 73, 68, 80, 112, 61, 57, 51, 39, 60, 72, 76, 66, 57, 60, 67, 51, 69, 71, 65, 80, 49, 79, 59, 57, 58, 77, 63, 95, 66, 63, 54, 74, 67, 62, 65, 53, 65, 68, 63, 71, 81, 53, 60, 42, 71, 66, 66, 64, 95, 73, 66, 63, 75, 92, 70, 52, 60, 58, 55, 62, 74, 62, 59, 56, 81, 67, 87, 65, 70, 70, 62, 63, 56, 76, 57, 58, 69, 69, 93, 76, 55, 80, 62, 68, 61, 62, 86, 58, 66, 63, 65, 57, 68, 95, 66, 55, 68, 61, 61, 81, 60, 71, 88, 77, 62, 94, 60, 56, 73, 68, 70, 64, 65, 45, 67, 71, 70, 54, 65, 58, 61, 60, 61, 53, 70, 101, 47, 62, 43, 71, 63, 47, 65, 65, 83, 67, 54, 60, 63, 64, 85, 64, 62, 62, 64, 50, 105, 57, 61, 54, 64, 87, 62, 62, 107, 56, 60, 71, 70, 57, 51, 61, 64, 55, 81, 96, 57, 72, 64, 50, 95, 63, 76, 67, 62, 58, 104, 58, 95, 38, 56, 93, 55, 54, 94, 73, 54, 59, 59, 55, 65, 63, 66, 77, 63, 71, 71, 59, 65, 71, 87, 67, 74, 55, 40, 63, 43, 55, 47, 54, 56, 60, 75, 84, 100, 81, 43, 71, 60, 57, 66, 79, 64, 56, 67, 96, 70, 49, 59, 67, 62, 56, 63, 73, 65, 62, 54, 80, 47, 58, 60, 54, 62, 71, 77, 77, 81, 50, 49, 55, 60, 67, 65, 71, 59, 54, 52, 63, 51, 67, 66, 117, 50, 69, 47, 67, 49, 89, 61, 61, 47, 77, 49, 58, 58, 77, 54, 68, 62, 65, 63, 76, 112, 72, 61, 75, 55, 72, 49, 49, 96, 85, 64, 57, 74, 65, 59, 56, 62, 62, 96, 61, 78, 63, 72, 59, 54, 78, 67, 66, 65, 54, 61, 54, 54, 79, 74, 68, 72, 79, 59, 54, 90, 63, 73, 63, 71, 59, 66, 64, 60, 60, 63, 65, 60, 84, 77, 69, 71, 55, 62, 54, 62, 75, 106, 79, 62, 57, 86, 60, 58, 46, 62, 68, 67, 51, 57, 68, 72, 67, 54, 65, 54, 59, 72, 57, 68, 62, 59, 71, 49, 61, 68, 125, 55, 61, 52, 102, 73, 65, 61, 63, 68, 66, 59, 67, 55, 69, 80, 64, 66, 45, 59, 58, 43, 98, 62, 55, 56, 50, 69, 56, 63, 55, 60, 66, 65, 69, 55, 117, 99, 58, 66, 55, 59, 97, 73, 76, 59, 54, 61, 85, 67, 91, 61, 51, 53, 53, 60, 79, 76, 53, 47, 64, 67, 76, 80, 36, 58, 72, 65, 52, 65, 74, 68, 67, 67, 80, 48, 66, 64, 71, 60, 68, 85, 65, 55, 56, 60, 66, 62, 74, 37, 65, 65, 55, 73, 69, 56, 37, 53, 63, 60, 59, 77, 47, 72, 56, 56, 64, 42, 55, 68, 77, 82, 94, 54, 59, 55, 48, 76, 70, 47, 55, 71, 69, 40, 76, 49, 69, 66, 54, 71, 55, 51, 55, 53, 61, 73, 59, 60, 56, 64, 55, 51, 62, 83, 82, 93, 56, 53, 64, 52, 80, 62, 70, 60, 47, 59, 62, 93, 66, 82, 74, 51, 58, 70, 57, 62, 41, 88, 84, 59, 85, 86, 87, 66, 57, 66, 63, 51, 51, 70, 90, 63, 55, 52, 72, 78, 66, 56, 80, 66, 61, 68, 73, 60, 57, 71, 66, 84, 67, 92, 62, 58, 69, 96, 53, 72, 53, 48, 69, 50, 55, 64, 68, 69, 61, 72, 48, 78, 87, 91, 71, 72, 62, 75, 58, 58, 74, 74, 48, 69, 93, 51, 67, 67, 59, 77, 59, 56, 78, 71, 78, 62, 62, 72, 60, 86, 53, 73, 70, 64, 66, 61, 58, 69, 78, 84, 78, 75, 58, 62, 49, 53, 64, 64, 73, 65, 77, 71, 66, 98, 51, 70, 75, 48, 53, 72, 74, 78, 56, 72, 74, 75, 45, 50, 82, 59, 68, 63, 68, 41, 71, 52, 81, 71, 63, 58, 59, 72, 60, 55, 66, 56, 73, 55, 59, 52, 60, 67, 61, 84, 58, 61, 72, 73, 74, 57, 82, 62, 67, 67, 66, 78, 79, 66, 40, 69, 65, 45, 95, 66, 91, 61, 66, 67, 66, 70, 64, 61, 94, 70, 64, 62, 72, 41, 51, 58, 66, 63, 110, 68, 72, 58, 58, 69, 71, 74, 60, 60, 75, 67, 59, 69, 66, 63, 71, 78, 61, 63, 62, 58, 66, 81, 75, 57, 68, 71, 93, 70, 56, 74, 65, 58, 70, 57, 53, 63, 72, 54, 75, 70, 59, 75, 61, 76, 66, 73, 85, 62, 64, 52, 65, 61, 62, 60, 73, 54, 69, 55, 69, 77, 65, 66, 67, 77, 61, 66, 70, 64, 60, 69, 100, 54, 79, 50, 49, 63, 58, 57, 59, 67, 76, 113, 83, 90, 49, 65, 78, 56, 64, 59, 63, 70, 83, 54, 89, 73, 60, 65, 49, 59, 87, 58, 60, 60, 57, 61, 47, 57, 63, 76, 72, 72, 67, 87, 76, 60, 81, 62, 55, 60, 66, 90, 71, 75, 69, 68, 46, 51, 61, 78, 53, 66, 59, 69, 63, 79, 69, 77, 59, 65, 83, 87, 52, 51, 89, 60, 83, 65, 57, 63, 74, 67, 73, 52, 63, 65, 73, 71, 68, 63, 66, 62, 62, 66, 70, 60, 62, 61, 56, 79, 75, 65, 63, 57, 59, 61, 67, 63, 70, 68, 66, 80, 69, 60, 57, 69, 69, 68, 52, 74, 48, 117, 76, 83, 72, 68, 53, 77, 70, 61, 72, 89, 68, 101, 70, 70, 70, 57, 81, 54, 78, 56, 51, 68, 53, 59, 64, 53, 59, 78, 57, 67, 74, 108, 59, 63, 78, 71, 70, 64, 73, 62, 88, 59, 65, 63, 71, 74, 68, 69, 77, 55, 79, 68, 48, 58, 74, 82, 61, 70, 68, 70, 133, 66, 60, 54, 78, 58, 95, 74, 50, 63, 89, 50, 66, 54, 63, 74, 49, 59, 45, 65, 59, 61, 60, 88, 64, 59, 61, 70, 67, 47, 65, 61, 67, 58, 69, 70, 64, 63, 41, 62, 73, 75, 60, 59, 85, 50, 67, 82, 65, 82, 68, 62, 85, 73, 68, 70, 59, 46, 69, 60, 54, 66, 71, 50, 87, 67, 67, 70, 54, 73, 65, 59, 61, 64, 57, 61, 55, 53, 61, 65, 61, 73, 64, 49, 67, 51, 49, 64, 62, 59, 49, 51, 68, 49, 61, 66, 57, 115, 70, 63, 68, 58, 55, 58, 54, 87, 71, 74, 62, 60, 68, 68, 89, 64, 85, 102, 56, 55, 73, 65, 72, 63, 60, 69, 70, 57, 73, 51, 81, 83, 68, 60, 57, 67, 57, 71, 73, 72, 68, 68, 71, 55, 68, 60, 65, 74, 61, 76, 56, 65, 71, 55, 107, 57, 86, 71, 73, 46, 46, 66, 50, 68, 60, 92, 56, 58, 65, 45, 62, 66, 63, 62, 57, 69, 69, 44, 51, 56, 58, 71, 55, 52, 50, 59, 55, 59, 65, 67, 66, 74, 55, 41, 63, 92, 43, 57, 67, 62, 75, 88, 56, 72, 52, 67, 79, 80, 73, 49, 64, 57, 69, 67, 64, 73, 73, 58, 51, 64, 60, 72, 68, 54, 68, 74, 50, 66, 86, 76, 50, 76, 69, 60, 55, 69, 89, 63, 55, 63, 74, 70, 48, 49, 57, 67, 48, 53, 69, 63, 65, 51, 60, 55, 54, 50, 80, 61, 55, 63, 66, 70, 43, 65, 91, 90, 69, 58, 64, 62, 77, 62, 106, 62, 64, 70, 69, 59, 60, 58, 52, 65, 57, 77, 45, 60, 65, 54, 146, 52, 76, 58, 71, 67, 64, 56, 63, 76, 52, 65, 60, 56, 73, 80, 74, 63, 62, 51, 63, 76, 67, 57, 65, 82, 113, 72, 65, 47, 103, 64, 60, 84, 65, 62, 51, 58, 59, 72, 72, 74, 72, 83, 68, 82, 52, 70, 73, 70, 61, 79, 74, 72, 107, 70, 61, 69, 61, 62, 67, 56, 67, 53, 79, 65, 69, 63, 69, 64, 46, 60, 59, 90, 63, 58, 60, 61, 78, 83, 61, 46, 73, 66, 68, 68, 60, 73, 65, 57, 94, 67, 59, 66, 57, 47, 67, 49, 72, 63, 70, 71, 59, 79, 60, 61, 62, 43, 65, 73, 67, 77, 61, 59, 91, 53, 74, 62, 47, 80, 58, 53, 46, 69, 68, 60, 67, 58, 56, 53, 61, 75, 50, 55, 61, 43, 96, 50, 79, 62, 98, 64, 75, 87, 59, 77, 63, 69, 53, 58, 67, 60, 57, 50, 67, 62, 71, 52, 84, 83, 61, 46, 66, 60, 85, 93, 50, 82, 54, 58, 59, 61, 109, 73, 64, 61, 71, 56, 81, 56, 59, 60, 73, 68, 63, 65, 76, 67, 59, 50, 69, 67, 76, 88, 72, 61, 61, 99, 86, 64, 50, 88, 46, 51, 59, 56, 50, 69, 82, 62, 51, 42, 78, 57, 58, 64, 79, 60, 56, 74, 71, 73, 57, 91, 64, 55, 69, 51, 92, 71, 76, 64, 42, 61, 59, 71, 74, 95, 67, 73, 53, 73, 63, 74, 65, 76, 67, 57, 89, 57, 66, 73, 45, 62, 76, 54, 57, 59, 58, 75, 63, 51, 61, 70, 50, 61, 54, 65, 76, 61, 51, 79, 96, 56, 64, 69, 61, 54, 63, 102, 68, 112, 50, 59, 61, 65, 88, 52, 67, 53, 60, 70, 60, 86, 39, 84, 78, 61, 44, 75, 71, 60, 53, 61, 47, 52, 69, 48, 111, 54, 59, 60, 52, 50, 64, 85, 60, 49, 56, 48, 44, 74, 31, 58, 31, 84, 77, 62, 111, 53, 74, 75, 57, 52, 56, 72, 82, 70, 93, 79, 59, 78, 40, 53, 50, 63, 72, 55, 72, 93, 61, 79, 62, 55, 65, 73, 51, 60, 61, 89, 51, 60, 67, 57, 69, 68, 76, 59, 71, 64, 60, 50, 60, 56, 77, 95, 63, 67, 59, 68, 76, 81, 72, 67, 93, 53, 76, 65, 61, 53, 68, 81, 73, 71, 72, 89, 80, 68, 57, 61, 48, 58, 83, 87, 65, 81, 58, 63, 66, 49, 52, 77, 73, 57, 65, 79, 60, 67, 59, 58, 60, 71, 92, 54, 51, 53, 76, 55, 77, 47, 76, 73, 65, 71, 63, 72, 80, 54, 44, 67, 49, 54, 64, 72, 71, 65, 57, 54, 66, 57, 64, 68, 77, 58, 79, 50, 72, 58, 96, 58, 63, 77, 75, 80, 115, 53, 56, 71, 60, 83, 49, 69, 65, 72, 50, 76, 34, 71, 52, 60, 60, 60, 63, 53, 130, 54, 72, 64, 82, 55, 73, 78, 74, 49, 49, 64, 68, 71, 47, 70, 47, 51, 58, 81, 63, 61, 49, 70, 65, 77, 67, 65, 82, 94, 66, 89, 61, 72, 57, 41, 63, 56, 67, 71, 73, 77, 64, 61, 72, 70, 79, 56, 68, 79, 58, 63, 68, 62, 69, 58, 58, 71, 79, 55, 55, 50, 69, 71, 46, 76, 73, 89, 66, 52, 59, 72, 82, 43, 95, 59, 63, 67, 66, 63, 55, 70, 83, 106, 61, 78, 56, 59, 73, 66, 66, 64, 55, 50, 89, 34, 58, 63, 60, 47, 65, 54, 57, 53, 80, 65, 57, 51, 79, 69, 66, 74, 74, 54, 87, 62, 81, 51, 64, 63, 67, 68, 91, 90, 75, 63, 72, 64, 63, 76, 65, 95, 63, 63, 62, 71, 66, 94, 50, 59, 61, 57, 91, 97, 61, 57, 68, 59, 84, 59, 61, 73, 87, 48, 48, 54, 59, 63, 92, 66, 67, 63, 53, 70, 55, 49, 63, 48, 48, 56, 67, 99, 88, 84, 57, 59, 92, 76, 77, 42, 44, 60, 62, 74, 82, 56, 58, 67, 66, 59, 75, 77, 75, 102, 69, 68, 47, 41, 35, 76, 70, 71, 57, 64, 81, 106, 81, 58, 61, 73, 80, 62, 81, 76, 65, 55, 63, 68, 47, 73, 68, 55, 69, 64, 82, 88, 60, 64, 42, 74, 67, 73, 89, 61, 86, 60, 57, 77, 67, 66, 49, 62, 59, 58, 46, 66, 63, 53, 71, 64, 82, 43, 69, 66, 142, 59, 85, 48, 78, 56, 111, 62, 71, 51, 111, 84, 63, 63, 59, 66, 49, 67, 55, 71, 74, 64, 64, 77, 45, 73, 76, 66, 53, 58, 54, 57, 75, 99, 50, 53, 50, 50, 62, 50, 64, 51, 79, 61, 49, 69, 65, 62, 64, 102, 54, 56, 104, 101, 64, 47, 67, 86, 61, 73, 50, 65, 70, 73, 73, 59, 88, 68, 50, 87, 78, 62, 63, 69, 72, 78, 58, 69, 69, 65, 52, 75, 64, 55, 55, 69, 62, 80, 65, 81, 51, 68, 58, 65, 63, 82, 43, 117, 83, 39, 62, 68, 59, 55, 63, 56, 82, 73, 57, 71, 81, 77, 61, 72, 55, 103, 78, 55, 78, 56, 71, 68, 43, 40, 41, 67, 78, 57, 52, 85, 69, 64, 75, 63, 70, 51, 62, 68, 47, 76, 56, 66, 66, 57, 74, 60, 74, 84, 65, 82, 53, 59, 46, 77, 95, 55, 53, 65, 52, 52, 60, 82, 50, 82, 56, 61, 60, 65, 63, 70, 71, 65, 77, 56, 76, 70, 61, 70, 47, 50, 66, 57, 63, 57, 74, 67, 55, 65, 71, 84, 58, 52, 62, 103, 59, 71, 74, 60, 82, 96, 61, 63, 58, 70, 97, 66, 67, 68, 58, 65, 56, 57, 78, 69, 58, 61, 61, 61, 53, 86, 45, 73, 77, 57, 48, 75, 58, 57, 69, 53, 71, 81, 56, 58, 107, 48, 58, 61, 58, 77, 50, 61, 35, 74, 41, 60, 64, 45, 50, 44, 76, 53, 71, 46, 93, 59, 54, 64, 63, 90, 71, 64, 72, 81, 71, 53, 61, 60, 65, 70, 93, 60, 59, 80, 69, 59, 55, 61, 78, 52, 65, 72, 64, 55, 68, 53, 151, 60, 53, 62, 78, 70, 70, 76, 75, 57, 61, 63, 59, 67, 77, 61, 65, 51, 63, 69, 60, 59, 60, 61, 75, 66, 105, 52, 93, 70, 113, 59, 56, 56, 49, 63, 53, 72, 49, 62, 48, 63, 101, 87, 49, 73, 51, 99, 72, 57, 57, 56, 65, 64, 108, 64, 52, 45, 73, 46, 57, 59, 62, 44, 75, 76, 57, 46, 72, 61, 54, 81, 58, 72, 62, 57, 71, 75, 80, 76, 88, 68, 75, 73, 59, 70, 51, 59, 81, 74, 75, 68, 51, 54, 71, 60, 61, 64, 80, 39, 63, 86, 79, 102, 69, 60, 59, 75, 56, 85, 75, 84, 65, 42, 93, 59, 97, 56, 67, 64, 79, 80, 69, 65, 63, 64, 59, 65, 67, 61, 69, 85, 62, 66, 72, 66, 103, 62, 67, 41, 76, 91, 54, 66, 76, 64, 72, 53, 71, 84, 68, 65, 61, 66, 55, 69, 66, 71, 75, 56, 38, 48, 75, 63, 89, 47, 55, 62, 51, 60, 77, 62, 106, 69, 63, 77, 61, 61, 61, 64, 62, 59, 64, 69, 73, 52, 52, 73, 61, 53, 58, 71, 68, 99, 65, 68, 54, 81, 61, 75, 38, 77, 67, 67, 53, 46, 49, 43, 51, 74, 56, 35, 67, 58, 49, 70, 71, 45, 71, 65, 73, 69, 72, 72, 60, 70, 80, 66, 52, 66, 75, 52, 56, 71, 55, 85, 76, 75, 55, 63, 58, 64, 78, 57, 53, 67, 79, 64, 68, 73, 65, 65, 58, 66, 82, 58, 68, 78, 68, 65, 62, 66, 68, 50, 55, 68, 64, 38, 59, 58, 59, 53, 64, 70, 61, 56, 51, 66, 69, 59, 73, 87, 57, 48, 61, 66, 73, 65, 52, 66, 53, 72, 62, 88, 69, 63, 61, 69, 77, 66, 59, 55, 57, 68, 74, 68, 73, 53, 104, 60, 63, 59, 77, 48, 69, 76, 61, 75, 58, 59, 72, 70, 63, 57, 85, 70, 75, 64, 82, 62, 40, 70, 76, 71, 64, 91, 78, 70, 56, 72, 77, 61, 56, 50, 76, 60, 46, 59, 62, 66, 49, 77, 63, 66, 68, 86, 56, 54, 69, 66, 52, 68, 87, 68, 54, 75, 88, 56, 65, 70, 57, 78, 47, 53, 79, 97, 70, 75, 56, 64, 65, 97, 55, 67, 75, 49, 63, 61, 81, 56, 75, 78, 65, 60, 53, 89, 66, 73, 68, 66, 81, 67, 55, 47, 51, 91, 38, 66, 62, 63, 50, 67, 62, 60, 71, 59, 76, 78, 65, 54, 74, 58, 70, 68, 60, 63, 49, 63, 72, 60, 76, 60, 47, 77, 52, 67, 71, 49, 74, 78, 62, 65, 54, 83, 61, 60, 75, 66, 67, 89, 72, 42, 85, 60, 86, 53, 61, 53, 69, 56, 57, 50, 54, 53, 121, 75, 72, 54, 57, 56, 63, 73, 63, 62, 89, 67, 77, 52, 64, 41, 42, 63, 61, 87, 115, 51, 64, 62, 45, 60, 80, 71, 67, 67, 55, 72, 51, 57, 57, 74, 78, 69, 63, 66, 62, 68, 53, 91, 64, 73, 79, 60, 82, 68, 54, 89, 66, 67, 76, 34, 60, 61, 64, 68, 67, 49, 65, 71, 56, 66, 77, 67, 101, 59, 60, 46, 81, 78, 77, 59, 63, 59, 84, 65, 83, 75, 79, 54, 48, 56, 66, 76, 76, 72, 54, 45, 87, 28, 68, 64, 75, 56, 69, 63, 52, 61, 79, 106, 61, 101, 48, 70, 60, 72, 62, 68, 55, 55, 97, 71, 75, 66, 55, 57, 64, 55, 64, 68, 66, 57, 60, 86, 48, 61, 59, 82, 74, 42, 64, 54, 66, 58, 58, 69, 77, 65, 83, 101, 92, 72, 74, 70, 65, 59, 80, 70, 52, 53, 72, 70, 89, 86, 55, 67, 71, 63, 91, 85, 75, 66, 55, 60, 86, 67, 68, 68, 76, 62, 67, 58, 62, 55, 70, 71, 58, 65, 82, 48, 74, 60, 54, 68, 72, 68, 48, 76, 85, 62, 66, 53, 63, 73, 40, 55, 63, 64, 71, 60, 75, 64, 48, 56, 79, 64, 72, 78, 68, 105, 61, 76, 53, 58, 79, 59, 87, 59, 58, 70, 59, 79, 69, 61, 68, 67, 65, 65, 57, 61, 60, 63, 55, 76, 64, 38, 46, 68, 70, 74, 72, 100, 62, 70, 76, 65, 71, 33, 56, 68, 80, 50, 68, 67, 85, 72, 50, 59, 74, 53, 58, 65, 61, 67, 61, 60, 60, 64, 63, 61, 131, 50, 67, 43, 77, 50, 86, 57, 37, 60, 111, 72, 69, 52, 65, 68, 65, 73, 59, 64, 66, 60, 56, 51, 56, 75, 53, 71, 81, 66, 55, 66, 62, 81, 73, 65, 52, 68, 68, 54, 64, 55, 64, 55, 76, 58, 64, 74, 57, 56, 62, 58, 90, 82, 57, 66, 78, 52, 72, 52, 64, 66, 84, 79, 93, 82, 64, 83, 58, 67, 70, 58, 49, 70, 74, 61, 73, 65, 58, 69, 52, 82, 62, 62, 71, 62, 60, 75, 66, 66, 52, 49, 71, 45, 56, 67, 63, 107, 80, 47, 62, 84, 54, 46, 53, 47, 68, 50, 50, 57, 79, 79, 66, 66, 63, 104, 47, 70, 67, 80, 75, 60, 64, 64, 81, 66, 58, 40, 72, 67, 66, 59, 53, 63, 67, 82, 89, 53, 48, 57, 48, 65, 68, 70, 66, 75, 56, 75, 54, 62, 57, 67, 82, 52, 107, 62, 95, 71, 59, 62, 63, 63, 60, 86, 64, 58, 67, 45, 68, 76, 63, 73, 61, 64, 64, 59, 68, 62, 66, 53, 65, 80, 61, 60, 54, 61, 57, 86, 71, 70, 47, 45, 60, 93, 70, 64, 52, 66, 64, 110, 69, 76, 63, 49, 78, 67, 75, 75, 53, 63, 47, 72, 66, 86, 75, 46, 56, 61, 74, 68, 89, 65, 72, 58, 71, 78, 91, 76, 58, 61, 58, 55, 62, 62, 70, 67, 75, 52, 86, 47, 70, 61, 55, 67, 46, 55, 76, 49, 70, 55, 54, 60, 63, 77, 80, 49, 65, 89, 59, 56, 69, 71, 83, 88, 73, 52, 61, 74, 54, 60, 116, 82, 74, 66, 78, 58, 64, 69, 80, 59, 51, 64, 77, 69, 71, 84, 161, 54, 80, 55, 74, 58, 54, 61, 68, 75, 66, 85, 57, 52, 76, 81, 69, 57, 74, 58, 90, 66, 60, 68, 57, 58, 123, 75, 57, 51, 107, 66, 77, 76, 59, 61, 49, 68, 64, 73, 73, 53, 65, 83, 58, 89, 50, 59, 46, 81, 67, 83, 80, 65, 108, 65, 57, 68, 72, 49, 81, 74, 67, 41, 81, 77, 63, 74, 65, 75, 49, 68, 67, 96, 44, 56, 59, 58, 58, 79, 80, 66, 85, 57, 62, 64, 68, 71, 83, 60, 88, 74, 53, 54, 55, 56, 85, 50, 73, 66, 79, 66, 64, 84, 52, 69, 67, 55, 54, 60, 70, 83, 68, 68, 92, 84, 77, 51, 74, 83, 53, 55, 71, 59, 61, 62, 60, 49, 59, 60, 73, 83, 68, 61, 71, 50, 100, 71, 77, 59, 82, 83, 43, 77, 56, 73, 73, 62, 55, 68, 68, 59, 60, 53, 57, 65, 66, 63, 77, 76, 54, 57, 72, 62, 79, 48, 59, 68, 61, 56, 62, 46, 88, 84, 67, 68, 65, 68, 41, 72, 52, 58, 82, 65, 50, 70, 74, 72, 82, 55, 64, 60, 69, 60, 51, 48, 57, 86, 64, 47, 66, 68, 75, 45, 54, 79, 68, 50, 69, 57, 61, 67, 55, 60, 77, 55, 59, 60, 73, 60, 60, 57, 52, 89, 75, 67, 56, 63, 69, 75, 75, 59, 66, 72, 62, 62, 64, 53, 67, 48, 73, 56, 64, 51, 62, 60, 86, 50, 88, 62, 71, 53, 55, 73, 51, 71, 66, 66, 72, 61, 102, 76, 51, 54, 56, 82, 67, 55, 61, 55, 65, 71, 73, 59, 65, 61, 82, 69, 60, 85, 61, 95, 58, 56, 57, 103, 69, 54, 77, 62, 65, 51, 68, 71, 68, 74, 75, 66, 69, 67, 53, 63, 68, 63, 77, 59, 55, 52, 76, 49, 59, 66, 68, 64, 70, 68, 58, 51, 66, 61, 59, 60, 68, 61, 89, 84, 73, 67, 73, 65, 69, 64, 72, 82, 94, 66, 81, 98, 63, 66, 67, 80, 50, 70, 56, 68, 58, 58, 74, 56, 79, 64, 67, 65, 78, 54, 84, 66, 65, 67, 54, 59, 99, 78, 70, 59, 68, 73, 59, 78, 54, 52, 62, 70, 77, 61, 73, 59, 51, 61, 61, 75, 68, 64, 76, 78, 79, 50, 58, 73, 50, 103, 81, 69, 88, 100, 73, 59, 61, 64, 55, 62, 66, 64, 60, 54, 75, 70, 99, 67, 102, 67, 62, 66, 67, 59, 62, 56, 70, 57, 61, 67, 56, 60, 87, 103, 91, 60, 96, 69, 69, 59, 62, 88, 57, 56, 59, 68, 60, 60, 78, 66, 64, 110, 71, 58, 70, 90, 59, 55, 64, 52, 85, 52, 71, 52, 108, 68, 65, 59, 58, 61, 59, 67, 65, 56, 54, 50, 67, 61, 61, 62, 68, 79, 70, 64, 51, 79, 56, 73, 62, 61, 69, 62, 69, 56, 88, 62, 71, 84, 105, 71, 80, 58, 57, 66, 55, 54, 76, 70, 55, 59, 61, 86, 74, 95, 83, 57, 59, 90, 65, 99, 62, 57, 49, 91, 65, 56, 53, 98, 50, 61, 82, 65, 76, 57, 54, 70, 66, 48, 69, 78, 64, 66, 67, 59, 66, 49, 73, 94, 54, 77, 54, 60, 65, 62, 64, 72, 58, 65, 82, 58, 55, 60, 63, 51, 78, 51, 68, 62, 57, 63, 60, 54, 63, 77, 76, 57, 65, 55, 72, 66, 50, 64, 61, 55, 70, 60, 79, 72, 52, 77, 56, 46, 54, 86, 71, 54, 52, 68, 52, 67, 91, 54, 75, 53, 74, 65, 82, 70, 61, 72, 63, 59, 90, 54, 62, 97, 68, 50, 81, 60, 65, 64, 48, 68, 67, 65, 62, 74, 74, 65, 68, 100, 80, 70, 90, 82, 57, 70, 72, 81, 58, 70, 52, 97, 61, 82, 80, 52, 73, 73, 49, 77, 52, 59, 73, 80, 62, 47, 59, 121, 69, 65, 65, 97, 68, 76, 61, 74, 65, 81, 54, 76, 51, 80, 60, 52, 72, 61, 57, 53, 56, 59, 65, 65, 55, 54, 72, 67, 63, 53, 42, 69, 74, 61, 69, 78, 69, 59, 70, 62, 72, 62, 69, 68, 70, 66, 77, 64, 119, 68, 59, 63, 65, 75, 63, 70, 62, 74, 59, 68, 73, 69, 75, 69, 67, 55, 55, 61, 74, 60, 74, 75, 63, 73, 75, 71, 66, 61, 76, 55, 67, 51, 50, 55, 48, 83, 62, 56, 70, 70, 71, 72, 81, 69, 61, 72, 73, 65, 89, 53, 83, 63, 73, 56, 68, 64, 90, 55, 84, 66, 46, 61, 55, 88, 58, 54, 79, 58, 92, 49, 79, 63, 60, 64, 77, 67, 64, 67, 56, 63, 42, 59, 70, 55, 70, 64, 62, 54, 61, 64, 53, 55, 70, 62, 58, 71, 62, 67, 71, 88, 67, 62, 81, 76, 63, 66, 62, 61, 68, 69, 47, 84, 71, 65, 78, 67, 57, 91, 55, 56, 52, 58, 54, 60, 69, 73, 62, 56, 79, 72, 54, 59, 61, 101, 54, 73, 52, 57, 82, 59, 62, 81, 54, 64, 72, 77, 80, 67, 53, 57, 68, 54, 57, 71, 51, 63, 56, 82, 79, 61, 53, 59, 72, 125, 71, 63, 73, 57, 70, 71, 67, 48, 58, 68, 54, 69, 66, 77, 78, 65, 58, 74, 60, 55, 57, 74, 82, 73, 59, 63, 90, 100, 49, 67, 67, 71, 65, 66, 64, 53, 70, 75, 80, 58, 66, 66, 66, 53, 47, 66, 56, 83, 66, 111, 61, 79, 53, 67, 71, 55, 54, 62, 65, 90, 53, 74, 65, 51, 56, 80, 57, 50, 60, 56, 61, 85, 80, 74, 74, 73, 56, 57, 82, 77, 64, 64, 72, 79, 49, 87, 77, 68, 61, 77, 63, 68, 59, 83, 69, 73, 53, 64, 61, 112, 81, 62, 60, 69, 59, 57, 79, 57, 53, 75, 63, 49, 50, 75, 82, 72, 47, 50, 62, 61, 60, 65, 67, 66, 67, 64, 87, 56, 56, 111, 48, 72, 44, 72, 74, 62, 83, 102, 56, 62, 84, 48, 76, 70, 71, 78, 76, 84, 60, 70, 71, 65, 72, 72, 69, 55, 54, 60, 76, 58, 71, 60, 68, 81, 66, 71, 68, 54, 88, 55, 65, 64, 58, 61, 67, 65, 45, 70, 70, 69, 69, 89, 60, 61, 83, 62, 65, 61, 67, 65, 61, 69, 70, 58, 62, 60, 57, 69, 67, 40, 67, 75, 54, 54, 63, 70, 81, 70, 67, 65, 69, 50, 104, 54, 75, 61, 67, 61, 50, 63, 53, 74, 58, 61, 61, 63, 51, 61, 73, 59, 63, 61, 68, 62, 63, 69, 67, 87, 54, 70, 70, 61, 61, 87, 44, 63, 59, 74, 64, 56, 69, 52, 61, 63, 62, 53, 75, 60, 55, 66, 65, 77, 72, 59, 73, 64, 41, 80, 62, 74, 60, 60, 59, 89, 90, 73, 77, 67, 56, 66, 55, 65, 68, 73, 73, 55, 77, 60, 58, 56, 60, 74, 58, 48, 107, 59, 79, 74, 82, 63, 56, 61, 47, 56, 57, 54, 62, 70, 68, 50, 72, 61, 69, 77, 73, 100, 59, 61, 79, 66, 76, 53, 85, 70, 72, 53, 87, 53, 77, 62, 61, 54, 58, 59, 52, 63, 72, 64, 56, 76, 58, 54, 70, 67, 55, 60, 54, 54, 64, 61, 57, 56, 73, 71, 56, 79, 59, 61, 59, 63, 53, 63, 68, 66, 66, 73, 58, 62, 81, 50, 64, 63, 75, 61, 66, 64, 58, 60, 94, 68, 57, 52, 55, 58, 119, 58, 59, 66, 76, 61, 68, 63, 77, 57, 58, 58, 71, 67, 55, 114, 73, 65, 66, 67, 81, 62, 63, 61, 60, 62, 58, 68, 70, 68, 60, 53, 69, 63, 75, 88, 70, 71, 69, 58, 79, 101, 54, 73, 56, 83, 68, 57, 69, 64, 63, 86, 57, 52, 50, 60, 65, 58, 67, 84, 61, 59, 70, 60, 69, 64, 55, 74, 54, 62, 74, 62, 59, 52, 67, 64, 70, 54, 55, 79, 57, 67, 60, 64, 67, 62, 102, 61, 66, 66, 60, 61, 67, 59, 54, 78, 62, 56, 68, 60, 77, 67, 47, 59, 65, 60, 69, 67, 49, 69, 48, 76, 65, 65, 71, 75, 85, 79, 60, 45, 76, 57, 78, 57, 67, 54, 54, 83, 75, 61, 57, 66, 63, 97, 59, 57, 71, 93, 71, 63, 41, 70, 55, 56, 82, 83, 91, 61, 54, 54, 95, 85, 65, 64, 73, 41, 80, 66, 46, 96, 62, 59, 63, 53, 63, 50, 50, 49, 70, 61, 63, 96, 77, 55, 73, 63, 69, 72, 58, 62, 71, 57, 72, 60, 58, 86, 66, 52, 78, 62, 76, 84, 96, 76, 61, 74, 59, 59, 60, 78, 56, 64, 54, 84, 54, 94, 72, 66, 72, 55, 56, 67, 57, 57, 70, 61, 62, 64, 72, 63, 57, 62, 61, 68, 61, 62, 64, 77, 61, 80, 100, 59, 63, 61, 74, 64, 65, 78, 103, 73, 58, 74, 64, 63, 60, 65, 75, 69, 62, 75, 61, 59, 70, 62, 68, 83, 57, 69, 60, 76, 59, 63, 57, 75, 47, 71, 53, 54, 61, 51, 67, 63, 60, 62, 71, 60, 72, 64, 73, 63, 58, 57, 68, 65, 61, 56, 64, 64, 60, 62, 52, 73, 76, 64, 57, 101, 79, 61, 80, 72, 68, 63, 74, 67, 72, 72, 61, 66, 70, 59, 53, 73, 52, 68, 61, 76, 56, 70, 46, 65, 58, 73, 58, 75, 73, 110, 64, 59, 63, 73, 75, 93, 65, 55, 56, 81, 76, 56, 63, 65, 62, 58, 68, 63, 68, 67, 86, 92, 57, 84, 55, 63, 73, 52, 72, 46, 71, 70, 68, 74, 61, 45, 59, 65, 64, 113, 42, 63, 62, 61, 68, 68, 49, 59, 60, 63, 76, 66, 59, 94, 67, 66, 63, 70, 55, 59, 59, 59, 85, 62, 109, 59, 59, 58, 68, 55, 84, 58, 72, 72, 47, 64, 51, 70, 86, 58, 60, 68, 76, 50, 54, 69, 60, 70, 69, 52, 68, 59, 65, 52, 76, 65, 64, 76, 66, 65, 67, 90, 77, 65, 61, 69, 64, 77, 71, 62, 60, 84, 64, 61, 49, 66, 61, 63, 64, 70, 61, 69, 67, 49, 73, 59, 59, 67, 83, 57, 76, 59, 59, 67, 75, 63, 66, 56, 47, 55, 55, 68, 67, 139, 45, 53, 90, 60, 55, 66, 59, 82, 73, 80, 68, 52, 67, 70, 81, 54, 51, 64, 71, 65, 65, 54, 49, 73, 65, 72, 57, 56, 60, 73, 55, 68, 71, 63, 84, 65, 60, 62, 76, 59, 52, 70, 54, 65, 50, 64, 92, 69, 61, 83, 59, 69, 129, 68, 95, 57, 75, 60, 65, 80, 59, 56, 74, 62, 69, 93, 71, 58, 56, 70, 64, 56, 60, 67, 82, 55, 61, 61, 69, 82, 57, 51, 58, 49, 59, 76, 48, 75, 65, 98, 62, 63, 60, 60, 67, 60, 60, 74, 74, 58, 58, 74, 55, 69, 70, 81, 62, 66, 59, 65, 56, 78, 61, 70, 66, 72, 54, 57, 59, 47, 80, 71, 74, 71, 62, 64, 70, 58, 68, 70, 61, 63, 62, 86, 65, 57, 101, 74, 59, 64, 80, 86, 67, 55, 63, 67, 54, 64, 72, 65, 65, 68, 66, 49, 64, 73, 77, 98, 78, 77, 60, 75, 51, 55, 48, 51, 56, 70, 77, 61, 68, 56, 58, 93, 68, 60, 74, 77, 65, 63, 60, 75, 82, 81, 65, 67, 65, 67, 65, 49, 50, 68, 68, 60, 69, 59, 87, 66, 59, 59, 78, 69, 54, 66, 56, 63, 71, 88, 62, 91, 61, 54, 76, 80, 75, 60, 73, 77, 61, 82, 67, 65, 106, 82, 64, 66, 63, 62, 63, 59, 63, 56, 92, 56, 63, 74, 95, 80, 60, 77, 60, 53, 54, 90, 61, 67, 66, 72, 67, 82, 71, 59, 71, 60, 65, 62, 54, 60, 68, 60, 67, 64, 69, 65, 62, 62, 80, 84, 70, 53, 94, 63, 60, 57, 83, 56, 68, 56, 67, 56, 53, 58, 55, 82, 55, 63, 91, 71, 67, 75, 53, 62, 72, 65, 69, 61, 65, 67, 53, 55, 60, 66, 75, 49, 52, 63, 77, 54, 61, 54, 59, 67, 53, 69, 53, 56, 53, 84, 81, 74, 47, 75, 71, 66, 59, 53, 63, 65, 54, 72, 60, 70, 63, 66, 67, 76, 62, 69, 61, 50, 65, 65, 54, 58, 53, 101, 54, 55, 65, 73, 71, 58, 55, 66, 59, 72, 85, 67, 93, 64, 72, 74, 64, 63, 72, 67, 56, 48, 68, 55, 60, 56, 49, 61, 59, 64, 65, 73, 70, 92, 66, 66, 63, 73, 88, 62, 52, 59, 63, 61, 73, 66, 65, 63, 72, 56, 52, 62, 62, 51, 55, 60, 64, 48, 114, 53, 53, 99, 63, 58, 82, 61, 59, 69, 62, 66, 49, 61, 50, 64, 63, 54, 87, 105, 61, 58, 67, 62, 58, 62, 78, 64, 62, 66, 60, 53, 70, 49, 64, 54, 67, 66, 75, 61, 67, 53, 77, 52, 59, 65, 64, 54, 61, 68, 70, 75, 61, 77, 83, 52, 75, 61, 54, 48, 63, 93, 56, 67, 58, 74, 62, 62, 74, 69, 68, 57, 51, 45, 63, 62, 54, 62, 60, 62, 67, 63, 75, 71, 71, 75, 59, 67, 55, 58, 57, 59, 65, 67, 72, 71, 69, 59, 67, 43, 52, 60, 89, 59, 69, 58, 62, 55, 92, 66, 56, 61, 63, 57, 48, 69, 59, 67, 55, 63, 66, 105, 72, 86, 62, 69, 70, 78, 57, 74, 65, 72, 68, 74, 71, 61, 64, 65, 82, 71, 83, 75, 80, 56, 60, 57, 73, 70, 77, 61, 61, 64, 78, 79, 74, 59, 59, 57, 50, 74, 66, 63, 80, 72, 45, 90, 58, 60, 75, 58, 71, 63, 61, 68, 69, 75, 86, 50, 78, 70, 68, 81, 61, 55, 56, 62, 119, 67, 79, 62, 50, 73, 52, 63, 63, 80, 82, 73, 55, 59, 83, 80, 73, 59, 73, 76, 56, 68, 66, 47, 62, 60, 71, 63, 60, 48, 59, 68, 59, 77, 60, 62, 51, 61, 90, 75, 86, 62, 49, 64, 50, 60, 66, 63, 65, 65, 61, 60, 66, 63, 66, 75, 58, 77, 130, 66, 49, 59, 53, 87, 63, 50, 64, 55, 71, 82, 52, 118, 59, 37, 92, 69, 83, 99, 62, 57, 104, 59, 72, 75, 80, 51, 63, 62, 53, 64, 55, 51, 60, 87, 53, 71, 82, 59, 65, 49, 56, 58, 53, 75, 59, 74, 74, 65, 61, 94, 41, 50, 76, 51, 68, 67, 51, 107, 69, 67, 70, 75, 40, 51, 53, 73, 51, 46, 65, 68, 94, 57, 53, 62, 76, 67, 58, 46, 67, 71, 102, 68, 69, 54, 59, 64, 84, 50, 76, 49, 75, 62, 136, 70, 84, 66, 47, 56, 97, 57, 53, 48, 67, 77, 74, 68, 65, 56, 56, 65, 82, 76, 75, 74, 70, 54, 46, 95, 52, 61, 67, 59, 68, 64, 85, 58, 76, 61, 57, 77, 63, 59, 60, 66, 88, 58, 48, 72, 56, 58, 55, 58, 74, 60, 76, 61, 77, 80, 60, 63, 64, 57, 87, 79, 55, 69, 80, 60, 78, 62, 63, 60, 65, 66, 73, 50, 81, 54, 58, 69, 72, 65, 79, 67, 57, 89, 54, 61, 71, 123, 65, 54, 62, 79, 37, 96, 78, 70, 51, 60, 70, 60, 67, 65, 80, 68, 64, 71, 46, 65, 73, 74, 55, 76, 62, 77, 68, 85, 62, 69, 75, 57, 42, 64, 66, 55, 67, 44, 56, 69, 71, 46, 63, 67, 53, 69, 54, 75, 61, 71, 60, 69, 47, 62, 48, 53, 79, 74, 77, 65, 52, 62, 68, 84, 74, 44, 53, 62, 78, 73, 66, 58, 75, 67, 59, 59, 76, 71, 88, 96, 54, 70, 94, 61, 73, 83, 50, 67, 56, 56, 87, 60, 52, 53, 97, 88, 54, 96, 67, 52, 52, 45, 60, 61, 69, 120, 88, 68, 71, 55, 60, 67, 81, 69, 120, 65, 66, 62, 66, 65, 56, 70, 62, 58, 76, 86, 61, 61, 52, 82, 79, 74, 89, 62, 58, 62, 84, 56, 65, 70, 64, 58, 56, 66, 67, 76, 55, 53, 50, 39, 45, 82, 55, 73, 82, 45, 55, 48, 66, 53, 42, 34, 92, 48, 76, 64, 86, 58, 51, 61, 87, 53, 59, 51, 70, 89, 73, 61, 74, 62, 61, 68, 84, 52, 69, 67, 61, 80, 66, 68, 73, 61, 57, 51, 64, 50, 66, 67, 63, 71, 36, 63, 60, 75, 70, 61, 64, 90, 45, 77, 43, 62, 73, 61, 59, 66, 60, 53, 62, 95, 75, 62, 49, 66, 82, 72, 80, 72, 58, 61, 59, 49, 65, 85, 71, 58, 74, 77, 44, 89, 63, 58, 55, 60, 85, 57, 113, 47, 64, 74, 79, 71, 61, 58, 69, 69, 58, 58, 75, 80, 61, 55, 59, 93, 46, 57, 76, 60, 71, 58, 60, 94, 55, 49, 70, 81, 43, 65, 107, 45, 70, 64, 66, 51, 48, 60, 64, 57, 54, 56, 76, 67, 80, 66, 56, 60, 69, 79, 60, 64, 62, 66, 65, 58, 64, 68, 50, 91, 38, 57, 62, 51, 61, 54, 51, 82, 78, 55, 65, 51, 56, 73, 96, 51, 63, 48, 67, 117, 68, 73, 61, 77, 68, 96, 67, 70, 80, 69, 45, 73, 77, 53, 75, 49, 109, 61, 71, 68, 62, 85, 72, 63, 67, 68, 64, 42, 82, 55, 63, 59, 50, 72, 55, 75, 54, 73, 75, 58, 69, 44, 54, 71, 79, 57, 86, 40, 81, 89, 59, 66, 70, 47, 69, 57, 72, 57, 57, 56, 76, 54, 45, 67, 86, 55, 67, 71, 82, 88, 93, 66, 58, 70, 59, 57, 74, 54, 47, 63, 75, 76, 65, 70, 80, 93, 82, 58, 69, 61, 56, 53, 92, 70, 95, 61, 78, 96, 71, 74, 46, 66, 46, 48, 61, 46, 88, 48, 65, 59, 67, 90, 53, 77, 59, 70, 85, 65, 65, 47, 75, 71, 74, 86, 59, 59, 47, 71, 58, 47, 62, 63, 62, 72, 85, 115, 80, 61, 70, 67, 72, 58, 64, 78, 45, 67, 51, 76, 56, 46, 74, 82, 46, 59, 53, 59, 71, 61, 51, 65, 62, 52, 56, 90, 72, 64, 63, 54, 53, 93, 85, 65, 68, 78, 67, 62, 67, 74, 58, 49, 52, 53, 77, 82, 51, 48, 80, 50, 50, 108, 60, 67, 66, 71, 69, 64, 84, 56, 61, 78, 45, 78, 90, 56, 52, 80, 79, 55, 42, 60, 56, 68, 69, 59, 65, 68, 73, 69, 72, 47, 105, 72, 78, 60, 73, 66, 63, 35, 70, 70, 68, 54, 85, 86, 80, 53, 60, 82, 68, 105, 65, 67, 66, 121, 77, 57, 58, 63, 59, 65, 60, 59, 55, 86, 66, 59, 63, 123, 67, 50, 73, 67, 75, 63, 71, 45, 62, 68, 51, 47, 102, 67, 68, 45, 78, 67, 90, 80, 64, 49, 69, 71, 81, 74, 60, 67, 77, 88, 57, 68, 74, 66, 75, 61, 73, 51, 30, 55, 54, 56, 66, 73, 69, 65, 57, 66, 63, 47, 109, 59, 70, 58, 65, 70, 69, 56, 75, 57, 49, 44, 58, 57, 68, 56, 57, 57, 83, 66, 69, 60, 107, 80, 72, 85, 99, 48, 62, 58, 61, 52, 56, 61, 65, 62, 66, 53, 44, 60, 71, 72, 60, 92, 42, 56, 58, 65, 66, 65, 92, 84, 64, 68, 67, 55, 59, 51, 79, 57, 62, 55, 63, 57, 64, 53, 53, 63, 67, 63, 60, 58, 65, 65, 46, 54, 55, 60, 58, 87, 55, 47, 70, 72, 62, 60, 92, 67, 63, 69, 52, 51, 66, 58, 44, 51, 71, 52, 71, 73, 75, 62, 49, 58, 86, 82, 51, 67, 58, 66, 63, 61, 88, 47, 72, 89, 61, 62, 72, 58, 60, 49, 64, 66, 72, 82, 60, 60, 53, 69, 63, 81, 57, 39, 116, 64, 63, 69, 63, 59, 86, 66, 69, 53, 62, 70, 53, 88, 58, 68, 53, 67, 54, 71, 77, 69, 65, 70, 64, 73, 64, 68, 61, 72, 61, 58, 81, 79, 62, 70, 55, 93, 73, 65, 94, 54, 55, 59, 68, 71, 69, 75, 63, 73, 49, 52, 67, 71, 63, 61, 31, 61, 72, 71, 84, 62, 59, 69, 97, 56, 97, 60, 61, 61, 67, 63, 65, 76, 56, 83, 52, 77, 74, 52, 64, 65, 64, 49, 65, 122, 94, 54, 56, 56, 87, 63, 57, 68, 95, 84, 64, 77, 67, 54, 70, 45, 81, 57, 49, 79, 78, 76, 84, 61, 88, 65, 58, 56, 77, 57, 57, 63, 54, 57, 53, 47, 83, 53, 81, 62, 53, 54, 80, 94, 52, 61, 57, 29, 72, 74, 45, 90, 61, 69, 53, 67, 55, 61, 73, 53, 70, 44, 90, 74, 74, 50, 73, 58, 65, 74, 54, 44, 59, 57, 85, 75, 66, 86, 58, 63, 50, 55, 57, 68, 62, 54, 49, 63, 64, 75, 64, 115, 66, 62, 37, 61, 65, 94, 64, 87, 78, 89, 80, 63, 69, 63, 59, 70, 64, 84, 55, 55, 58, 49, 76, 61, 49, 64, 82, 75, 52, 55, 93, 69, 42, 66, 86, 61, 49, 63, 44, 77, 52, 72, 54, 83, 64, 67, 59, 64, 60, 76, 52, 51, 97, 99, 67, 83, 59, 72, 77, 73, 56, 66, 56, 61, 63, 65, 58, 95, 74, 68, 46, 106, 67, 63, 63, 59, 71, 54, 66, 89, 72, 61, 59, 59, 64, 65, 48, 48, 65, 118, 51, 47, 43, 85, 70, 67, 74, 58, 61, 43, 77, 49, 46, 74, 53, 69, 66, 62, 62, 55, 39, 70, 61, 80, 51, 107, 67, 52, 67, 67, 60, 63, 69, 54, 84, 57, 61, 77, 60, 58, 83, 50, 58, 64, 64, 68, 79, 61, 64, 72, 88, 50, 79, 50, 72, 74, 57, 84, 60, 73, 62, 72, 68, 60, 58, 76, 76, 75, 61, 108, 62, 57, 81, 63, 42, 62, 68, 73, 55, 73, 72, 73, 53, 70, 73, 47, 67, 70, 72, 62, 77, 92, 66, 118, 65, 86, 53, 69, 72, 66, 83, 63, 54, 49, 73, 65, 34, 87, 55, 72, 66, 35, 69, 61, 65, 57, 81, 60, 66, 80, 52, 109, 80, 56, 47, 66, 49, 103, 84, 56, 67, 42, 60, 52, 63, 65, 55, 74, 71, 57, 65, 69, 57, 67, 71, 47, 52, 81, 67, 52, 74, 59, 49, 52, 57, 60, 60, 66, 60, 66, 65, 74, 61, 66, 59, 60, 68, 61, 52, 60, 44, 60, 71, 86, 79, 59, 56, 92, 66, 88, 90, 76, 78, 74, 59, 67, 56, 67, 63, 86, 72, 68, 66, 57, 57, 59, 63, 54, 61, 57, 64, 59, 55, 63, 56, 83, 58, 83, 59, 75, 59, 60, 107, 63, 83, 69, 55, 63, 63, 65, 68, 49, 47, 58, 63, 41, 78, 62, 66, 53, 58, 70, 105, 81, 71, 41, 80, 65, 69, 63, 44, 64, 49, 66, 66, 28, 50, 51, 68, 62, 87, 61, 61, 67, 148, 45, 65, 60, 57, 55, 47, 59, 89, 62, 46, 66, 74, 59, 65, 82, 90, 40, 64, 59, 53, 51, 85, 68, 69, 76, 69, 76, 61, 55, 67, 80, 47, 58, 62, 95, 75, 64, 49, 74, 65, 68, 52, 62, 60, 76, 63, 76, 51, 89, 50, 64, 42, 49, 52, 59, 87, 93, 69, 87, 61, 60, 64, 49, 56, 45, 68, 54, 72, 63, 61, 64, 60, 76, 77, 76, 53, 68, 76, 54, 49, 66, 58, 104, 74, 53, 57, 63, 53, 56, 64, 58, 107, 71, 59, 65, 66, 70, 69, 97, 60, 62, 74, 56, 63, 60, 57, 66, 72, 60, 71, 57, 70, 73, 88, 70, 79, 84, 93, 74, 63, 67, 52, 69, 50, 64, 55, 84, 82, 65, 50, 53, 79, 58, 60, 53, 65, 78, 60, 55, 83, 58, 104, 59, 67, 100, 82, 68, 79, 77, 78, 67, 47, 58, 76, 86, 60, 73, 66, 66, 75, 90, 89, 108, 55, 64, 64, 46, 79, 65, 83, 94, 71, 69, 59, 68, 68, 66, 57, 54, 88, 52, 56, 65, 78, 54, 82, 89, 66, 43, 50, 66, 72, 103, 54, 79, 79, 65, 67, 60, 73, 73, 71, 57, 60, 54, 51, 66, 65, 73, 78, 52, 41, 70, 66, 54, 72, 52, 48, 86, 70, 67, 73, 77, 62, 101, 59, 67, 53, 59, 41, 99, 63, 56, 66, 77, 90, 79, 58, 59, 71, 47, 82, 63, 50, 56, 76, 76, 66, 67, 83, 67, 76, 68, 81, 76, 65, 61, 56, 62, 52, 74, 89, 76, 80, 41, 62, 55, 61, 56, 56, 111, 61, 69, 70, 76, 58, 68, 73, 49, 101, 45, 67, 59, 63, 54, 63, 76, 78, 70, 63, 50, 86, 94, 49, 71, 59, 45, 80, 61, 54, 48, 50, 67, 61, 68, 65, 28, 89, 86, 67, 63, 86, 62, 74, 68, 65, 69, 70, 47, 63, 58, 60, 75, 62, 74, 59, 45, 54, 57, 73, 66, 54, 74, 62, 45, 56, 78, 63, 59, 59, 45, 50, 74, 64, 66, 59, 58, 48, 77, 80, 80, 74, 74, 68, 86, 75, 85, 70, 80, 67, 58, 89, 58, 66, 77, 70, 60, 45, 74, 90, 71, 81, 77, 58, 80, 56, 64, 65, 69, 90, 91, 67, 68, 72, 70, 60, 52, 61, 69, 100, 51, 80, 62, 61, 65, 61, 53, 79, 60, 51, 63, 52, 52, 36, 55, 70, 83, 57, 67, 63, 55, 99, 76, 71, 65, 59, 65, 49, 62, 66, 70, 81, 62, 90, 59, 85, 110, 65, 64, 76, 80, 68, 72, 59, 77, 74, 65, 107, 73, 84, 71, 70, 41, 63, 62, 86, 59, 63, 73, 56, 61, 57, 90, 66, 62, 60, 62, 57, 51, 63, 58, 63, 57, 73, 44, 129, 71, 62, 56, 60, 53, 48, 83, 79, 82, 75, 59, 59, 64, 63, 51, 74, 61, 52, 64, 77, 60, 56, 51, 50, 66, 60, 54, 59, 39, 57, 64, 67, 54, 36, 75, 86, 60, 69, 72, 73, 56, 72, 68, 59, 72, 67, 63, 74, 66, 62, 71, 82, 59, 82, 77, 84, 65, 57, 78, 31, 57, 67, 64, 58, 62, 56, 80, 65, 51, 65, 68, 50, 75, 65, 66, 67, 65, 60, 63, 63, 112, 57, 69, 96, 65, 35, 74, 50, 51, 58, 60, 55, 70, 85, 66, 67, 62, 64, 61, 61, 60, 60, 57, 55, 64, 50, 60, 73, 64, 76, 53, 66, 63, 59, 65, 74, 59, 52, 62, 57, 34, 69, 61, 59, 55, 76, 65, 60, 81, 71, 59, 59, 58, 84, 64, 71, 37, 63, 95, 72, 60, 87, 85, 72, 71, 70, 90, 60, 65, 48, 75, 57, 58, 55, 60, 86, 63, 61, 54, 52, 71, 92, 70, 65, 69, 55, 59, 67, 51, 64, 71, 89, 66, 58, 72, 51, 61, 93, 51, 61, 94, 78, 51, 57, 65, 65, 56, 55, 61, 71, 48, 50, 61, 55, 78, 47, 66, 73, 76, 66, 60, 60, 88, 92, 66, 38, 59, 63, 56, 63, 75, 67, 72, 79, 57, 39, 43, 61, 122, 75, 51, 70, 48, 88, 58, 71, 69, 58, 67, 55, 58, 55, 58, 60, 62, 81, 85, 70, 72, 57, 84, 62, 46, 88, 72, 57, 58, 132, 57, 63, 62, 62, 74, 80, 53, 63, 76, 80, 69, 59, 70, 53, 63, 81, 60, 79, 78, 78, 51, 64, 80, 68, 62, 64, 67, 87, 74, 89, 97, 68, 55, 61, 84, 59, 67, 64, 66, 60, 60, 63, 62, 56, 74, 67, 59, 65, 62, 66, 99, 62, 72, 50, 65, 110, 70, 40, 68, 63, 60, 62, 90, 56, 68, 68, 62, 44, 64, 57, 61, 54, 53, 75, 77, 87, 84, 93, 62, 62, 94, 71, 57, 61, 77, 50, 57, 81, 71, 98, 46, 83, 55, 50, 69, 73, 110, 65, 54, 74, 72, 54, 55, 58, 80, 51, 55, 57, 66, 55, 78, 77, 87, 59, 65, 67, 61, 82, 56, 99, 69, 66, 63, 48, 111, 52, 52, 57, 96, 62, 88, 72, 61, 77, 73, 65, 67, 59, 59, 68, 50, 89, 76, 59, 71, 69, 58, 50, 46, 56, 55, 59, 63, 57, 86, 60, 60, 65, 86, 76, 49, 87, 53, 57, 63, 50, 46, 59, 55, 61, 67, 73, 55, 55, 75, 66, 106, 49, 55, 60, 88, 66, 64, 73, 61, 66, 75, 82, 80, 61, 53, 65, 73, 109, 51, 62, 55, 56, 50, 72, 61, 65, 65, 48, 76, 55, 58, 55, 61, 63, 63, 52, 66, 72, 64, 60, 75, 74, 85, 50, 56, 70, 78, 53, 61, 58, 62, 100, 80, 81, 69, 66, 67, 63, 43, 87, 57, 54, 70, 81, 55, 81, 76, 62, 71, 64, 67, 69, 64, 85, 71, 54, 75, 86, 71, 72, 76, 116, 63, 65, 73, 83, 80, 77, 49, 61, 68, 65, 57, 73, 58, 67, 67, 82, 55, 57, 59, 73, 68, 63, 67, 58, 104, 67, 61, 52, 54, 108, 65, 72, 69, 100, 77, 57, 49, 69, 86, 73, 62, 66, 60, 57, 47, 64, 79, 69, 59, 62, 65, 73, 54, 58, 64, 64, 62, 70, 43, 70, 60, 58, 62, 53, 65, 63, 63, 93, 75, 59, 65, 114, 58, 53, 67, 53, 72, 58, 54, 60, 54, 48, 73, 66, 67, 66, 59, 81, 64, 58, 71, 56, 45, 69, 62, 96, 65, 46, 59, 66, 110, 68, 58, 68, 68, 50, 57, 59, 67, 61, 47, 63, 62, 57, 54, 51, 98, 69, 55, 62, 67, 78, 48, 51, 57, 66, 58, 46, 56, 61, 70, 62, 97, 84, 100, 65, 52, 65, 53, 56, 61, 75, 54, 100, 60, 57, 60, 64, 60, 67, 66, 59, 61, 71, 77, 78, 64, 66, 57, 64, 101, 82, 54, 87, 71, 60, 65, 73, 70, 65, 57, 64, 76, 78, 83, 56, 61, 75, 67, 61, 58, 47, 57, 63, 54, 52, 95, 63, 82, 47, 65, 70, 60, 84, 64, 52, 69, 63, 60, 71, 83, 48, 38, 72, 59, 57, 62, 64, 54, 53, 65, 45, 79, 77, 98, 84, 75, 70, 39, 71, 65, 58, 94, 68, 62, 53, 66, 89, 61, 67, 61, 57, 55, 47, 48, 68, 57, 55, 74, 70, 62, 47, 58, 67, 108, 65, 59, 92, 51, 65, 72, 60, 99, 92, 53, 63, 63, 73, 63, 61, 63, 94, 59, 75, 60, 68, 52, 72, 70, 50, 62, 67, 55, 68, 59, 54, 81, 80, 90, 68, 64, 73, 97, 57, 58, 65, 77, 55, 65, 62, 76, 50, 64, 106, 68, 82, 69, 89, 52, 59, 64, 78, 65, 56, 53, 119, 48, 62, 57, 62, 59, 56, 81, 53, 64, 56, 52, 68, 56, 49, 55, 54, 66, 70, 58, 56, 75, 51, 69, 60, 74, 74, 53, 98, 73, 74, 63, 50, 58, 68, 83, 58, 72, 93, 70, 68, 56, 44, 62, 43, 62, 88, 59, 71, 51, 60, 66, 75, 74, 52, 81, 61, 58, 83, 51, 55, 64, 62, 52, 58, 70, 53, 64, 62, 61, 56, 71, 86, 63, 55, 39, 73, 57, 56, 77, 67, 71, 86, 60, 63, 79, 42, 70, 53, 68, 62, 59, 49, 54, 59, 65, 66, 95, 83, 72, 61, 49, 103, 75, 68, 59, 65, 60, 65, 57, 44, 86, 73, 67, 45, 51, 61, 66, 59, 66, 59, 67, 75, 61, 56, 80, 68, 69, 58, 73, 74, 67, 81, 68, 55, 68, 64, 56, 71, 54, 91, 63, 68, 61, 65, 53, 78, 52, 37, 51, 82, 74, 53, 65, 61, 56, 56, 60, 78, 67, 95, 47, 55, 63, 66, 65, 48, 58, 57, 60, 87, 55, 123, 64, 57, 64, 54, 63, 113, 61, 57, 69, 73, 64, 28, 58, 69, 70, 93, 67, 60, 62, 52, 61, 63, 117, 74, 61, 71, 85, 67, 63, 65, 69, 68, 77, 63, 64, 71, 75, 69, 65, 73, 71, 68, 63, 67, 80, 63, 60, 75, 66, 76, 73, 76, 64, 71, 72, 68, 61, 83, 63, 58, 68, 51, 63, 56, 58, 60, 57, 59, 46, 58, 59, 79, 66, 107, 77, 58, 57, 84, 72, 48, 47, 79, 52, 63, 78, 50, 75, 67, 51, 61, 64, 75, 77, 82, 50, 82, 66, 52, 52, 80, 71, 51, 50, 60, 83, 69, 48, 45, 53, 53, 85, 63, 84, 67, 54, 39, 57, 61, 81, 66, 112, 77, 67, 98, 53, 67, 83, 71, 75, 78, 69, 42, 62, 94, 58, 63, 65, 61, 48, 84, 62, 54, 61, 49, 74, 66, 59, 67, 69, 66, 42, 65, 63, 55, 61, 63, 53, 66, 63, 48, 42, 86, 57, 70, 75, 76, 80, 55, 53, 62, 59, 50, 56, 76, 65, 80, 61, 70, 77, 80, 84, 85, 69, 54, 66, 69, 91, 54, 83, 68, 55, 52, 51, 75, 59, 87, 55, 55, 61, 65, 76, 97, 66, 45, 83, 62, 59, 56, 67, 78, 83, 75, 77, 66, 42, 53, 59, 66, 59, 71, 69, 79, 63, 58, 60, 51, 64, 61, 66, 62, 83, 69, 65, 68, 64, 69, 64, 65, 76, 73, 65, 58, 69, 79, 70, 78, 78, 44, 53, 59, 45, 68, 92, 120, 66, 72, 75, 48, 90, 67, 57, 58, 52, 54, 77, 65, 66, 67, 63, 54, 79, 64, 59, 61, 41, 80, 63, 71, 76, 65, 57, 75, 55, 85, 57, 71, 55, 96, 61, 59, 70, 60, 73, 82, 55, 74, 68, 48, 89, 77, 62, 65, 59, 82, 65, 57, 72, 57, 65, 57, 52, 70, 86, 69, 81, 52, 54, 88, 73, 70, 59, 68, 74, 73, 65, 58, 64, 69, 65, 71, 72, 67, 49, 54, 67, 42, 50, 74, 61, 65, 62, 58, 82, 87, 61, 79, 44, 73, 68, 58, 47, 50, 75, 63, 55, 47, 68, 54, 54, 46, 55, 81, 68, 54, 75, 58, 55, 61, 75, 73, 81, 86, 63, 56, 65, 53, 98, 108, 69, 67, 58, 51, 78, 80, 111, 59, 86, 66, 66, 53, 42, 69, 68, 66, 73, 52, 45, 62, 69, 62, 82, 77, 62, 68, 68, 70, 45, 61, 74, 46, 62, 62, 88, 71, 52, 55, 84, 73, 51, 65, 59, 58, 72, 70, 75, 47, 68, 61, 56, 57, 66, 60, 72, 61, 52, 58, 50, 66, 72, 55, 57, 87, 98, 53, 77, 80, 71, 71, 51, 126, 47, 63, 61, 63, 82, 58, 68, 71, 57, 73, 63, 47, 70, 86, 64, 81, 73, 47, 82, 60, 64, 61, 52, 57, 73, 78, 78, 55, 108, 64, 60, 72, 52, 69, 64, 67, 83, 58, 64, 68, 38, 67, 69, 46, 59, 52, 62, 72, 59, 61, 63, 75, 66, 82, 59, 80, 94, 74, 80, 64, 75, 100, 59, 48, 45, 45, 57, 52, 74, 58, 79, 55, 111, 61, 67, 89, 63, 93, 65, 58, 97, 64, 39, 80, 55, 71, 85, 96, 77, 54, 70, 67, 50, 54, 48, 71, 47, 65, 67, 83, 97, 64, 53, 53, 58, 62, 79, 60, 68, 68, 40, 88, 64, 74, 63, 80, 52, 66, 60, 50, 78, 82, 74, 76, 83, 109, 56, 44, 55, 100, 83, 66, 66, 70, 56, 62, 68, 76, 60, 59, 60, 67, 80, 52, 65, 62, 44, 52, 76, 56, 49, 70, 50, 64, 74, 63, 68, 74, 69, 65, 65, 61, 72, 83, 57, 45, 66, 112, 57, 74, 62, 60, 81, 60, 64, 50, 62, 59, 80, 72, 51, 89, 50, 51, 90, 60, 65, 59, 55, 67, 78, 49, 55, 53, 43, 62, 97, 66, 55, 60, 79, 56, 65, 53, 75, 59, 83, 63, 54, 62, 66, 67, 99, 99, 57, 69, 66, 72, 55, 73, 72, 70, 60, 63, 63, 66, 52, 47, 71, 84, 72, 63, 61, 54, 56, 81, 63, 70, 78, 80, 79, 59, 62, 44, 58, 51, 71, 57, 58, 58, 51, 74, 96, 87, 87, 51, 59, 64, 59, 59, 91, 83, 43, 58, 64, 61, 57, 74, 77, 100, 58, 52, 66, 67, 65, 50, 59, 54, 59, 53, 79, 56, 94, 56, 55, 74, 69, 65, 70, 59, 68, 65, 53, 50, 66, 94, 85, 60, 60, 60, 71, 54, 65, 58, 59, 63, 58, 38, 79, 92, 87, 53, 77, 47, 78, 65, 62, 60, 80, 73, 72, 67, 75, 81, 57, 68, 66, 62, 82, 66, 44, 56, 69, 67, 77, 76, 81, 48, 59, 69, 70, 65, 62, 63, 65, 70, 58, 56, 45, 71, 61, 62, 79, 75, 51, 69, 58, 95, 54, 88, 83, 83, 56, 55, 68, 70, 75, 55, 53, 62, 55, 55, 59, 97, 74, 84, 73, 85, 82, 81, 57, 61, 52, 68, 56, 65, 62, 53, 55, 115, 62, 81, 57, 79, 54, 100, 74, 68, 47, 57, 72, 70, 76, 93, 60, 80, 68, 42, 67, 57, 53, 68, 38, 83, 57, 68, 70, 39, 47, 60, 63, 66, 64, 60, 60, 69, 46, 64, 50, 69, 95, 96, 62, 71, 66, 58, 48, 67, 67, 77, 55, 66, 52, 72, 54, 60, 66, 85, 80, 76, 57, 55, 67, 76, 63, 68, 85, 68, 68, 93, 68, 79, 62, 95, 42, 72, 56, 73, 73, 85, 81, 73, 67, 83, 65, 67, 47, 54, 62, 55, 90, 49, 63, 68, 68, 66, 76, 66, 90, 62, 51, 73, 66, 61, 66, 71, 60, 62, 83, 94, 69, 61, 89, 55, 75, 72, 52, 82, 67, 32, 51, 71, 75, 55, 58, 87, 56, 76, 67, 66, 50, 66, 72, 86, 84, 62, 72, 55, 48, 55, 65, 46, 74, 60, 67, 70, 37, 90, 69, 79, 62, 74, 74, 72, 51, 61, 61, 55, 65, 52, 67, 47, 60, 53, 62, 60, 65, 64, 60, 75, 54, 54, 53, 58, 65, 94, 61, 64, 65, 71, 83, 50, 65, 98, 62, 67, 43, 60, 45, 82, 58, 60, 83, 71, 58, 95, 56, 111, 72, 73, 64, 52, 76, 51, 66, 35, 65, 70, 86, 71, 78, 67, 68, 59, 68, 50, 71, 51, 65, 66, 64, 63, 71, 90, 66, 75, 60, 76, 52, 49, 64, 56, 57, 63, 80, 56, 85, 70, 60, 50, 61, 49, 56, 52, 78, 73, 42, 57, 67, 65, 85, 70, 45, 68, 69, 68, 57, 73, 63, 86, 59, 59, 59, 50, 61, 69, 74, 69, 59, 65, 69, 65, 62, 64, 58, 66, 87, 56, 77, 83, 54, 59, 63, 57, 75, 50, 66, 64, 71, 59, 90, 69, 96, 50, 53, 58, 68, 79, 64, 59, 96, 56, 69, 62, 71, 70, 80, 69, 74, 63, 94, 77, 65, 58, 42, 103, 57, 62, 52, 54, 55, 66, 70, 70, 63, 78, 80, 70, 61, 74, 74, 76, 64, 85, 74, 48, 69, 51, 63, 74, 61, 87, 71, 61, 67, 67, 64, 64, 71, 80, 73, 59, 68, 81, 62, 73, 84, 67, 52, 66, 73, 49, 64, 82, 70, 97, 67, 69, 46, 50, 98, 70, 60, 71, 57, 63, 80, 67, 62, 73, 43, 64, 69, 56, 70, 88, 71, 53, 81, 60, 58, 62, 59, 56, 94, 68, 64, 59, 42, 54, 57, 67, 57, 74, 91, 87, 65, 67, 71, 74, 81, 67, 59, 64, 70, 62, 65, 78, 73, 46, 56, 73, 83, 59, 55, 63, 69, 53, 61, 49, 57, 58, 62, 78, 76, 71, 80, 83, 42, 69, 48, 50, 89, 101, 61, 47, 47, 57, 49, 62, 54, 58, 60, 53, 80, 46, 69, 59, 53, 85, 53, 62, 58, 70, 56, 58, 45, 98, 78, 74, 78, 37, 57, 70, 79, 55, 70, 82, 64, 61, 60, 69, 72, 81, 61, 53, 88, 70, 69, 64, 57, 64, 77, 65, 58, 59, 58, 56, 61, 70, 45, 82, 90, 61, 62, 64, 103, 70, 58, 61, 66, 31, 67, 70, 76, 45, 56, 77, 93, 50, 63, 55, 65, 78, 57, 70, 91, 48, 61, 36, 79, 74, 67, 63, 59, 82, 77, 61, 55, 57, 56, 58, 56, 72, 56, 64, 57, 67, 80, 72, 60, 61, 81, 95, 65, 55, 64, 71, 55, 57, 92, 80, 57, 70, 80, 50, 65, 60, 108, 87, 61, 66, 58, 56, 51, 64, 63, 81, 78, 60, 47, 58, 57, 67, 51, 73, 59, 54, 62, 68, 52, 54, 57, 74, 64, 77, 106, 59, 56, 99, 67, 77, 48, 57, 69, 54, 63, 69, 82, 96, 50, 56, 55, 75, 56, 90, 64, 69, 65, 60, 62, 76, 67, 72, 71, 64, 89, 53, 71, 55, 68, 55, 73, 39, 63, 64, 53, 97, 80, 63, 84, 70, 67, 48, 58, 63, 65, 82, 45, 50, 47, 61, 73, 52, 66, 75, 69, 63, 71, 57, 103, 62, 56, 66, 44, 66, 63, 70, 73, 63, 34, 61, 71, 63, 76, 71, 54, 63, 95, 65, 69, 56, 59, 66, 64, 56, 49, 64, 60, 80, 59, 60, 64, 61, 81, 74, 64, 65, 69, 63, 73, 98, 52, 45, 72, 66, 44, 50, 64, 90, 58, 59, 77, 75, 63, 71, 79, 67, 59, 59, 69, 64, 45, 78, 56, 71, 61, 91, 61, 61, 62, 57, 52, 69, 91, 56, 55, 47, 43, 54, 54, 63, 62, 62, 65, 73, 43, 60, 78, 70, 44, 70, 54, 51, 46, 73, 66, 78, 63, 122, 64, 49, 49, 47, 60, 65, 65, 68, 74, 94, 59, 77, 42, 57, 58, 75, 67, 80, 63, 70, 60, 51, 97, 61, 62, 53, 58, 68, 71, 59, 73, 54, 72, 68, 51, 82, 51, 68, 61, 53, 56, 119, 56, 68, 56, 87, 66, 75, 54, 64, 48, 62, 81, 64, 61, 72, 51, 55, 68, 78, 69, 65, 59, 52, 60, 66, 71, 63, 50, 64, 101, 65, 53, 61, 74, 80, 54, 53, 73, 70, 73, 72, 81, 52, 48, 41, 97, 48, 45, 51, 73, 81, 75, 59, 59, 65, 78, 50, 61, 85, 52, 69, 85, 79, 89, 72, 66, 90, 71, 73, 64, 91, 54, 74, 66, 67, 68, 56, 50, 97, 69, 64, 72, 43, 41, 56, 62, 64, 55, 65, 84, 67, 39, 69, 57, 69, 57, 71, 54, 54, 58, 68, 58, 116, 61, 63, 49, 63, 67, 75, 64, 54, 85, 61, 74, 68, 69, 58, 71, 57, 54, 67, 61, 66, 60, 66, 69, 57, 75, 81, 51, 82, 85, 67, 63, 69, 65, 86, 79, 70, 58, 68, 62, 53, 81, 68, 53, 53, 111, 72, 61, 74, 70, 77, 50, 55, 64, 83, 72, 79, 52, 63, 59, 55, 65, 74, 61, 59, 92, 58, 84, 59, 77, 59, 64, 41, 67, 58, 60, 87, 54, 41, 79, 88, 74, 57, 58, 57, 58, 63, 63, 47, 73, 102, 45, 57, 57, 52, 65, 80, 58, 76, 56, 72, 81, 56, 102, 68, 88, 59, 60, 93, 94, 73, 61, 73, 50, 65, 60, 55, 66, 78, 60, 93, 50, 71, 70, 56, 57, 54, 73, 60, 74, 79, 77, 99, 60, 68, 53, 58, 81, 51, 78, 66, 61, 84, 75, 65, 55, 67, 67, 50, 56, 55, 69, 56, 64, 63, 80, 63, 66, 33, 46, 57, 72, 124, 70, 68, 71, 61, 58, 56, 48, 85, 54, 65, 71, 69, 79, 53, 65, 65, 85, 66, 64, 64, 43, 48, 109, 94, 66, 61, 79, 96, 88, 70, 69, 73, 60, 58, 68, 55, 57, 70, 65, 60, 64, 70, 72, 59, 74, 72, 63, 70, 62, 75, 69, 64, 94, 76, 65, 62, 67, 74, 62, 53, 57, 58, 79, 64, 50, 61, 53, 110, 49, 54, 65, 53, 100, 63, 67, 54, 70, 61, 62, 54, 67, 53, 62, 79, 68, 68, 50, 57, 79, 59, 72, 49, 76, 57, 49, 53, 60, 70, 68, 70, 76, 56, 68, 94, 56, 103, 68, 52, 61, 70, 77, 68, 47, 78, 68, 69, 65, 87, 64, 59, 58, 55, 57, 47, 77, 74, 60, 70, 54, 47, 76, 61, 68, 80, 84, 57, 69, 47, 64, 70, 59, 127, 84, 67, 61, 68, 73, 47, 60, 71, 76, 62, 59, 52, 70, 75, 60, 53, 68, 69, 79, 69, 58, 71, 41, 60, 94, 75, 56, 62, 78, 69, 60, 55, 69, 92, 74, 54, 64, 69, 46, 63, 66, 75, 57, 65, 60, 73, 56, 60, 76, 61, 51, 76, 43, 93, 59, 57, 68, 84, 69, 63, 74, 63, 75, 70, 84, 69, 71, 67, 36, 64, 65, 79, 66, 62, 74, 82, 64, 62, 63, 64, 52, 80, 75, 67, 77, 68, 79, 79, 40, 58, 61, 67, 79, 77, 63, 76, 60, 52, 76, 65, 65, 67, 65, 59, 86, 68, 45, 63, 92, 66, 66, 68, 79, 64, 55, 66, 83, 58, 86, 81, 96, 97, 76, 77, 71, 59, 43, 71, 58, 76, 78, 116, 55, 57, 58, 72, 65, 71, 75, 65, 50, 85, 85, 67, 65, 70, 72, 82, 71, 57, 68, 57, 98, 75, 66, 83, 73, 49, 68, 57, 66, 65, 68, 61, 66, 83, 84, 62, 52, 86, 55, 56, 67, 63, 68, 83, 79, 67, 64, 75, 78, 76, 53, 70, 53, 47, 101, 72, 61, 74, 74, 105, 67, 58, 66, 98, 59, 64, 72, 56, 59, 91, 103, 60, 91, 73, 82, 62, 80, 69, 58, 88, 70, 56, 52, 65, 66, 57, 74, 41, 75, 31, 57, 75, 76, 60, 67, 54, 74, 55, 69, 64, 51, 70, 79, 63, 63, 72, 79, 81, 62, 51, 53, 61, 65, 64, 59, 52, 54, 62, 53, 62, 44, 65, 58, 83, 62, 65, 87, 55, 64, 69, 45, 63, 66, 69, 65, 59, 72, 71, 70, 65, 63, 50, 66, 66, 70, 64, 67, 72, 62, 89, 57, 101, 75, 95, 48, 50, 74, 62, 52, 56, 48, 72, 65, 60, 75, 54, 73, 79, 85, 55, 70, 63, 65, 76, 70, 59, 47, 61, 86, 55, 63, 56, 67, 52, 57, 90, 46, 51, 69, 58, 68, 65, 65, 98, 78, 62, 70, 51, 80, 60, 66, 68, 60, 95, 64, 61, 63, 50, 72, 59, 99, 61, 56, 77, 46, 75, 84, 63, 61, 48, 58, 66, 74, 59, 48, 63, 91, 70, 61, 64, 41, 88, 75, 79, 70, 68, 62, 63, 64, 80, 51, 63, 60, 64, 96, 67, 71, 71, 55, 60, 48, 62, 98, 64, 60, 65, 74, 57, 62, 59, 82, 97, 87, 72, 59, 57, 63, 52, 36, 69, 64, 61, 61, 91, 56, 55, 75, 60, 62, 47, 44, 67, 71, 94, 56, 61, 61, 59, 68, 60, 59, 58, 106, 69, 64, 52, 79, 59, 65, 58, 71, 58, 72, 54, 68, 74, 66, 59, 60, 72, 100, 44, 67, 70, 56, 63, 50, 56, 53, 56, 53, 58, 47, 59, 63, 53, 66, 70, 50, 61, 59, 90, 81, 68, 69, 71, 59, 71, 58, 55, 71, 60, 72, 66, 83, 53, 47, 49, 61, 65, 82, 62, 81, 65, 65, 67, 77, 50, 48, 63, 63, 67, 79, 82, 51, 64, 63, 54, 89, 74, 72, 54, 84, 63, 48, 52, 51, 53, 85, 74, 64, 42, 62, 56, 69, 99, 105, 60, 56, 61, 56, 72, 76, 74, 71, 78, 72, 64, 78, 72, 71, 79, 62, 90, 70, 62, 71, 65, 72, 48, 77, 56, 55, 36, 46, 54, 59, 69, 74, 60, 64, 49, 62, 59, 55, 65, 58, 64, 57, 62, 45, 62, 59, 63, 71, 65, 59, 67, 81, 46, 51, 62, 46, 96, 70, 77, 65, 58, 48, 60, 50, 53, 66, 99, 52, 77, 67, 62, 63, 68, 65, 59, 58, 55, 69, 78, 92, 47, 55, 59, 65, 48, 65, 58, 64, 52, 61, 38, 74, 54, 72, 72, 60, 64, 66, 120, 63, 68, 70, 79, 61, 65, 68, 64, 66, 74, 55, 59, 57, 60, 61, 58, 82, 78, 84, 47, 64, 67, 74, 88, 58, 63, 78, 57, 89, 72, 66, 67, 91, 55, 54, 51, 93, 62, 73, 70, 62, 57, 63, 48, 93, 68, 65, 66, 74, 69, 63, 75, 101, 63, 82, 38, 61, 63, 75, 67, 62, 73, 91, 57, 63, 90, 55, 65, 52, 54, 61, 82, 60, 101, 57, 74, 63, 83, 60, 66, 69, 81, 52, 88, 78, 56, 57, 64, 54, 66, 38, 78, 79, 68, 80, 52, 57, 70, 52, 83, 60, 117, 56, 63, 74, 44, 60, 53, 60, 56, 73, 67, 65, 77, 61, 59, 72, 57, 62, 78, 83, 47, 70, 67, 62, 59, 63, 85, 50, 52, 69, 64, 59, 51, 80, 95, 72, 49, 60, 64, 56, 57, 60, 82, 57, 96, 100, 60, 50, 52, 83, 81, 66, 62, 80, 61, 53, 86, 68, 58, 56, 62, 70, 63, 74, 48, 56, 57, 57, 58, 56, 55, 55, 81, 46, 71, 57, 62, 62, 49, 61, 75, 48, 61, 68, 67, 67, 63, 64, 43, 64, 95, 71, 72, 59, 61, 60, 63, 62, 69, 62, 70, 80, 60, 55, 66, 70, 63, 60, 68, 66, 67, 64, 53, 68, 59, 62, 100, 62, 69, 57, 66, 65, 51, 50, 50, 80, 69, 71, 73, 70, 67, 69, 128, 71, 63, 62, 53, 59, 76, 84, 58, 55, 77, 78, 67, 63, 77, 45, 57, 70, 50, 57, 70, 47, 54, 82, 49, 67, 65, 79, 54, 55, 100, 75, 80, 67, 73, 53, 69, 67, 47, 59, 88, 81, 74, 83, 54, 65, 59, 55, 68, 63, 59, 78, 55, 54, 87, 40, 61, 54, 76, 75, 58, 81, 65, 56, 90, 58, 62, 68, 60, 59, 74, 82, 67, 60, 48, 64, 90, 64, 54, 54, 84, 53, 71, 93, 61, 51, 66, 64, 78, 69, 77, 78, 76, 53, 62, 72, 74, 62, 78, 82, 64, 59, 66, 80, 59, 66, 53, 48, 61, 84, 66, 75, 70, 76, 116, 85, 55, 67, 64, 96, 70, 69, 62, 64, 65, 69, 62, 68, 54, 58, 54, 88, 54, 63, 67, 51, 85, 53, 69, 62, 65, 67, 65, 97, 74, 40, 61, 80, 68, 65, 59, 66, 60, 69, 71, 87, 68, 62, 62, 67, 71, 48, 53, 64, 71, 98, 62, 67, 62, 61, 63, 53, 113, 51, 73, 66, 80, 82, 76, 70, 60, 78, 64, 54, 56, 74, 65, 76, 65, 65, 57, 65, 58, 75, 56, 51, 61, 99, 59, 44, 61, 50, 54, 63, 61, 57, 84, 53, 64, 63, 55, 73, 76, 54, 41, 56, 63, 65, 62, 56, 59, 54, 56, 65, 75, 64, 104, 59, 61, 75, 72, 63, 55, 59, 69, 84, 68, 71, 68, 60, 62, 60, 58, 49, 58, 64, 50, 58, 60, 62, 59, 60, 65, 60, 68, 71, 59, 67, 60, 66, 58, 84, 78, 55, 59, 64, 86, 63, 57, 51, 66, 92, 66, 67, 58, 57, 66, 84, 64, 43, 62, 80, 58, 64, 75, 86, 60, 60, 71, 77, 76, 67, 61, 79, 71, 96, 90, 57, 52, 85, 51, 62, 72, 67, 66, 63, 87, 67, 67, 64, 64, 75, 68, 51, 64, 70, 65, 70, 80, 52, 86, 65, 76, 74, 68, 63, 76, 65, 68, 60, 66, 54, 78, 69, 67, 65, 69, 53, 79, 70, 71, 77, 71, 68, 67, 66, 68, 60, 63, 90, 65, 66, 70, 79, 41, 89, 46, 43, 70, 95, 65, 62, 67, 79, 66, 55, 56, 59, 59, 72, 67, 55, 99, 63, 61, 97, 57, 83, 60, 60, 64, 69, 65, 59, 44, 73, 77, 69, 70, 75, 68, 78, 59, 75, 44, 52, 82, 67, 61, 71, 52, 66, 69, 77, 61, 62, 50, 68, 46, 57, 53, 63, 78, 84, 38, 81, 51, 64, 64, 76, 65, 38, 69, 69, 59, 61, 57, 64, 43, 71, 68, 95, 50, 63, 56, 72, 56, 51, 63, 74, 59, 61, 67, 66, 70, 66, 44, 57, 64, 62, 70, 61, 85, 62, 94, 81, 104, 66, 56, 72, 64, 58, 69, 60, 49, 62, 66, 62, 61, 71, 84, 58, 68, 44, 66, 79, 62, 69, 53, 73, 57, 46, 75, 65, 68, 59, 89, 64, 75, 69, 95, 55, 53, 52, 66, 68, 99, 73, 73, 63, 69, 73, 74, 66, 54, 61, 83, 54, 97, 71, 62, 64, 54, 84, 54, 98, 62, 51, 90, 46, 64, 59, 74, 77, 57, 58, 68, 57, 68, 70, 55, 60, 88, 64, 73, 41, 67, 72, 83, 57, 65, 54, 66, 72, 76, 64, 68, 52, 54, 53, 79, 68, 63, 45, 78, 66, 61, 75, 84, 63, 73, 56, 62, 55, 61, 52, 74, 68, 73, 53, 59, 94, 65, 77, 64, 65, 57, 72, 85, 71, 48, 76, 74, 70, 62, 42, 54, 63, 67, 65, 68, 57, 53, 47, 52, 55, 63, 90, 58, 67, 55, 76, 77, 68, 58, 76, 80, 61, 57, 63, 61, 66, 59, 53, 60, 84, 53, 53, 46, 68, 60, 37, 75, 71, 62, 73, 88, 70, 64, 73, 58, 54, 52, 65, 52, 43, 75, 71, 64, 74, 74, 57, 60, 55, 52, 58, 67, 36, 59, 64, 63, 66, 54, 68, 63, 52, 71, 58, 48, 59, 47, 96, 52, 67, 60, 74, 77, 81, 68, 57, 71, 66, 67, 61, 67, 65, 66, 89, 65, 74, 53, 79, 55, 53, 59, 70, 57, 71, 64, 64, 82, 66, 61, 56, 56, 103, 63, 59, 63, 63, 74, 75, 56, 92, 56, 71, 71, 60, 70, 51, 55, 70, 61, 78, 60, 57, 57, 66, 112, 57, 74, 58, 74, 103, 62, 73, 66, 65, 81, 60, 62, 54, 63, 68, 63, 67, 74, 86, 51, 56, 89, 62, 72, 81, 64, 71, 71, 56, 111, 56, 77, 90, 66, 77, 60, 97, 60, 74, 73, 58, 85, 52, 49, 58, 76, 49, 72, 68, 57, 60, 38, 53, 70, 62, 55, 49, 54, 61, 71, 70, 62, 89, 87, 63, 55, 86, 69, 68, 70, 68, 86, 56, 51, 65, 110, 48, 59, 56, 45, 60, 64, 52, 49, 67, 87, 60, 82, 54, 61, 57, 65, 51, 55, 49, 55, 92, 52, 82, 98, 55, 53, 65, 66, 67, 73, 64, 59, 75, 69, 47, 48, 67, 57, 49, 61, 58, 84, 78, 57, 60, 59, 77, 56, 70, 69, 95, 55, 77, 51, 53, 71, 54, 87, 70, 62, 60, 62, 64, 69, 74, 57, 72, 66, 65, 83, 72, 63, 78, 63, 55, 59, 52, 59, 56, 99, 43, 83, 65, 86, 97, 56, 34, 80, 73, 68, 79, 68, 68, 66, 58, 67, 71, 117, 64, 63, 76, 53, 58, 76, 56, 60, 67, 62, 59, 87, 70, 68, 61, 66, 58, 90, 107, 70, 51, 63, 66, 52, 45, 86, 91, 56, 62, 54, 66, 71, 59, 86, 66, 84, 68, 54, 55, 87, 39, 95, 56, 111, 73, 61, 64, 57, 80, 48, 62, 89, 57, 55, 70, 81, 54, 81, 72, 73, 82, 61, 57, 88, 68, 85, 63, 64, 68, 64, 54, 61, 58, 70, 70, 48, 60, 49, 65, 59, 65, 61, 61, 54, 83, 63, 73, 64, 70, 108, 73, 65, 72, 69, 65, 64, 74, 74, 49, 70, 51, 57, 47, 70, 81, 63, 71, 38, 66, 63, 72, 68, 57, 78, 52, 89, 84, 59, 67, 70, 76, 94, 60, 68, 75, 78, 66, 65, 60, 58, 63, 107, 79, 69, 65, 54, 66, 64, 60, 54, 62, 73, 91, 56, 60, 102, 54, 56, 55, 68, 71, 57, 86, 60, 65, 59, 66, 47, 84, 65, 57, 76, 54, 66, 91, 67, 67, 68, 79, 61, 68, 69, 57, 67, 71, 55, 67, 70, 62, 63, 72, 70, 81, 69, 70, 53, 86, 69, 63, 73, 62, 80, 67, 50, 53, 82, 65, 58, 45, 57, 71, 51, 65, 65, 75, 51, 67, 109, 56, 56, 54, 57, 55, 57, 59, 71, 52, 64, 49, 69, 55, 65, 65, 78, 70, 85, 72, 78, 66, 57, 74, 66, 69, 59, 51, 53, 66, 62, 55, 68, 78, 49, 80, 61, 54, 112, 62, 76, 54, 72, 84, 44, 61, 63, 81, 61, 54, 78, 59, 55, 56, 60, 81, 61, 59, 72, 60, 66, 70, 90, 60, 71, 55, 62, 97, 66, 54, 40, 65, 66, 67, 55, 65, 77, 61, 70, 55, 71, 75, 72, 69, 60, 79, 48, 68, 105, 75, 76, 86, 73, 61, 63, 88, 80, 54, 62, 83, 60, 66, 76, 53, 63, 48, 66, 54, 84, 53, 58, 60, 58, 50, 61, 61, 56, 74, 68, 94, 66, 107, 74, 66, 63, 89, 81, 54, 61, 62, 58, 64, 68, 53, 48, 71, 64, 64, 50, 59, 67, 62, 61, 59, 46, 63, 63, 64, 71, 66, 98, 71, 67, 84, 80, 55, 71, 54, 74, 68, 62, 50, 48, 66, 73, 45, 47, 73, 62, 60, 61, 67, 49, 65, 61, 74, 50, 56, 57, 77, 71, 68, 41, 64, 56, 65, 58, 69, 45, 68, 59, 44, 38, 64, 56, 60, 74, 52, 59, 72, 86, 66, 62, 52, 64, 77, 63, 92, 54, 86, 78, 65, 61, 86, 62, 70, 59, 102, 56, 71, 106, 70, 54, 65, 70, 61, 59, 58, 74, 68, 106, 65, 63, 67, 77, 68, 70, 57, 69, 65, 75, 76, 61, 68, 69, 76, 47, 62, 58, 68, 73, 65, 53, 64, 58, 63, 50, 65, 84, 70, 62, 64, 79, 71, 63, 68, 67, 49, 72, 62, 77, 61, 53, 81, 71, 85, 72, 84, 85, 79, 64, 58, 37, 90, 53, 48, 59, 60, 79, 50, 77, 65, 65, 62, 75, 56, 63, 60, 91, 90, 48, 85, 66, 76, 65, 72, 67, 73, 69, 57, 55, 61, 66, 56, 72, 64, 90, 75, 77, 60, 69, 72, 59, 58, 61, 78, 64, 58, 55, 51, 52, 68, 75, 57, 63, 55, 66, 67, 61, 72, 90, 74, 58, 63, 65, 45, 52, 62, 45, 83, 91, 65, 74, 60, 63, 94, 55, 65, 83, 108, 68, 57, 66, 75, 59, 60, 67, 63, 59, 70, 65, 58, 55, 47, 71, 70, 93, 63, 86, 76, 91, 76, 71, 59, 109, 58, 61, 80, 61, 70, 57, 57, 68, 57, 63, 71, 66, 60, 89, 75, 40, 54, 66, 69, 65, 67, 55, 54, 63, 60, 46, 66, 74, 55, 88, 46, 67, 77, 56, 68, 58, 64, 62, 53, 55, 65, 64, 64, 60, 65, 57, 65, 99, 68, 60, 67, 59, 55, 60, 92, 73, 70, 58, 54, 64, 69, 76, 61, 56, 62, 62, 63, 50, 72, 52, 74, 71, 53, 69, 58, 73, 60, 50, 68, 57, 71, 51, 62, 48, 49, 62, 66, 75, 123, 92, 70, 58, 61, 68, 61, 64, 83, 77, 57, 83, 74, 63, 49, 62, 67, 84, 56, 65, 45, 57, 53, 61, 87, 52, 54, 56, 50, 65, 61, 60, 56, 62, 66, 82, 62, 68, 62, 79, 76, 71, 64, 64, 67, 61, 73, 56, 98, 62, 51, 62, 60, 65, 66, 60, 58, 64, 45, 58, 62, 56, 69, 73, 60, 65, 98, 58, 68, 74, 59, 60, 74, 104, 49, 58, 61, 67, 74, 50, 73, 65, 58, 76, 58, 60, 60, 74, 63, 55, 71, 59, 58, 51, 66, 76, 58, 62, 64, 72, 64, 59, 59, 68, 54, 65, 55, 58, 73, 73, 60, 55, 54, 45, 73, 62, 62, 73, 81, 60, 54, 71, 79, 54, 55, 56, 51, 61, 89, 61, 76, 67, 61, 83, 48, 67, 60, 60, 49, 75, 71, 64, 71, 53, 91, 57, 101, 81, 61, 104, 71, 75, 59, 65, 86, 64, 83, 74, 57, 84, 91, 63, 59, 52, 62, 56, 70, 62, 74, 89, 57, 74, 94, 68, 102, 66, 78, 53, 67, 75, 62, 55, 72, 65, 63, 81, 51, 49, 84, 78, 49, 64, 54, 77, 56, 48, 68, 64, 56, 99, 72, 59, 78, 77, 64, 62, 90, 64, 80, 65, 65, 84, 47, 54, 60, 62, 55, 67, 58, 77, 55, 78, 71, 77, 66, 55, 55, 58, 54, 58, 65, 55, 72, 62, 60, 78, 82, 60, 42, 66, 54, 90, 70, 64, 62, 105, 66, 57, 47, 68, 66, 70, 73, 59, 62, 65, 72, 66, 58, 50, 69, 82, 66, 66, 56, 67, 58, 73, 64, 73, 71, 68, 64, 57, 72, 79, 48, 56, 68, 72, 95, 62, 63, 58, 66, 51, 67, 84, 85, 48, 81, 61, 66, 62, 71, 61, 90, 70, 59, 47, 59, 61, 56, 57, 122, 72, 66, 52, 68, 78, 70, 49, 54, 58, 67, 74, 51, 59, 60, 90, 53, 80, 52, 59, 78, 85, 80, 78, 62, 75, 60, 54, 64, 51, 101, 63, 99, 65, 57, 64, 59, 63, 75, 103, 73, 65, 57, 58, 55, 45, 72, 63, 69, 59, 64, 73, 58, 57, 64, 66, 67, 76, 51, 91, 58, 59, 66, 57, 42, 92, 80, 68, 62, 66, 79, 61, 65, 78, 71, 67, 49, 71, 43, 69, 71, 75, 60, 127, 62, 62, 55, 69, 60, 51, 70, 59, 75, 78, 59, 76, 66, 53, 70, 73, 59, 93, 60, 53, 76, 73, 53, 48, 62, 75, 79, 59, 64, 59, 67, 74, 53, 53, 65, 89, 57, 67, 62, 62, 52, 54, 67, 67, 78, 96, 68, 68, 68, 81, 68, 56, 65, 54, 51, 68, 57, 55, 57, 64, 62, 52, 69, 71, 66, 63, 65, 61, 56, 56, 62, 59, 74, 60, 58, 87, 77, 62, 72, 57, 59, 68, 53, 54, 57, 72, 73, 125, 51, 57, 56, 53, 70, 70, 68, 45, 58, 67, 106, 81, 65, 38, 58, 62, 67, 48, 66, 77, 68, 66, 65, 67, 67, 74, 96, 67, 50, 93, 59, 59, 47, 69, 60, 80, 53, 99, 83, 67, 82, 74, 54, 54, 70, 62, 51, 64, 66, 65, 91, 39, 100, 62, 73, 61, 66, 60, 64, 59, 66, 86, 69, 72, 66, 63, 65, 72, 64, 57, 62, 55, 49, 57, 65, 82, 50, 61, 65, 60, 57, 58, 102, 55, 73, 70, 69, 52, 61, 65, 61, 56, 57, 72, 55, 66, 56, 83, 75, 68, 59, 66, 54, 60, 77, 44, 65, 70, 72, 68, 74, 73, 65, 81, 70, 56, 52, 68, 66, 71, 61, 61, 83, 82, 54, 64, 63, 82, 66, 50, 61, 54, 59, 52, 54, 71, 62, 63, 82, 63, 66, 72, 62, 72, 65, 84, 69, 58, 72, 64, 61, 73, 64, 64, 60, 70, 58, 55, 57, 67, 78, 61, 62, 95, 83, 55, 76, 54, 58, 63, 55, 117, 67, 66, 59, 59, 51, 52, 63, 63, 55, 62, 64, 94, 52, 105, 70, 64, 54, 65, 67, 60, 69, 61, 63, 65, 102, 54, 49, 64, 55, 73, 49, 48, 58, 92, 54, 31, 50, 68, 84, 123, 64, 61, 52, 57, 67, 60, 75, 74, 69, 65, 59, 71, 57, 85, 50, 77, 84, 67, 60, 76, 66, 83, 43, 65, 60, 68, 76, 68, 54, 69, 54, 58, 58, 94, 76, 75, 45, 55, 73, 67, 55, 81, 62, 56, 57, 63, 64, 61, 80, 63, 58, 63, 85, 67, 57, 77, 55, 57, 96, 40, 61, 57, 68, 58, 71, 62, 58, 87, 103, 57, 92, 62, 104, 62, 57, 71, 57, 60, 41, 54, 84, 47, 91, 115, 65, 51, 63, 57, 71, 55, 87, 50, 62, 79, 56, 76, 68, 61, 72, 71, 59, 59, 66, 58, 57, 58, 70, 70, 83, 66, 62, 62, 76, 63, 62, 70, 63, 80, 56, 63, 46, 48, 62, 52, 51, 116, 75, 68, 79, 72, 70, 94, 63, 77, 51, 56, 64, 76, 59, 63, 78, 80, 88, 69, 59, 59, 79, 59, 72, 65, 74, 65, 55, 62, 56, 70, 70, 60, 70, 78, 59, 65, 106, 37, 76, 66, 69, 62, 47, 51, 71, 62, 58, 79, 58, 78, 74, 68, 71, 62, 78, 62, 57, 73, 77, 79, 64, 65, 57, 38, 58, 55, 51, 75, 60, 68, 67, 63, 58, 89, 69, 62, 75, 58, 60, 61, 62, 59, 37, 64, 69, 60, 63, 68, 64, 53, 65, 83, 82, 52, 62, 61, 55, 62, 70, 60, 48, 63, 56, 64, 68, 78, 68, 64, 64, 66, 64, 60, 49, 52, 111, 94, 70, 87, 55, 73, 60, 88, 61, 71, 79, 76, 59, 66, 67, 63, 51, 60, 80, 62, 65, 71, 60, 79, 67, 49, 56, 56, 52, 85, 62, 100, 56, 97, 61, 83, 67, 88, 62, 62, 73, 63, 77, 89, 54, 65, 68, 74, 67, 54, 61, 51, 68, 69, 57, 74, 69, 66, 44, 58, 94, 63, 94, 76, 57, 62, 53, 76, 52, 44, 52, 51, 73, 66, 64, 66, 53, 60, 60, 55, 63, 54, 53, 61, 53, 60, 59, 63, 74, 72, 67, 75, 57, 51, 60, 54, 84, 68, 63, 62, 46, 73, 65, 67, 67, 79, 61, 68, 87, 62, 61, 61, 58, 74, 69, 71, 61, 74, 70, 67, 89, 74, 74, 74, 54, 69, 70, 62, 63, 66, 67, 49, 45, 64, 48, 81, 62, 65, 60, 68, 75, 58, 67, 60, 49, 59, 46, 58, 69, 72, 83, 59, 46, 73, 57, 60, 50, 69, 57, 59, 67, 68, 78, 50, 49, 68, 73, 62, 52, 67, 61, 62, 67, 65, 60, 52, 53, 83, 64, 79, 61, 53, 59, 60, 65, 66, 62, 61, 61, 53, 59, 51, 62, 72, 70, 62, 63, 59, 74, 55, 61, 68, 72, 78, 55, 59, 65, 42, 59, 61, 73, 71, 61, 48, 90, 99, 46, 84, 68, 65, 65, 75, 61, 73, 103, 49, 75, 62, 68, 49, 73, 67, 66, 70, 73, 106, 57, 60, 85, 64, 58, 53, 56, 56, 51, 60, 62, 74, 60, 56, 88, 65, 83, 59, 63, 79, 62, 52, 60, 57, 60, 71, 65, 72, 69, 53, 46, 59, 74, 69, 103, 69, 51, 56, 64, 58, 57, 83, 60, 61, 59, 69, 43, 76, 70, 60, 59, 60, 68, 84, 61, 67, 67, 71, 57, 119, 69, 72, 59, 52, 55, 74, 96, 69, 44, 75, 60, 75, 80, 59, 57, 88, 51, 63, 64, 58, 54, 89, 95, 64, 65, 57, 63, 63, 66, 84, 68, 45, 79, 59, 64, 64, 66, 62, 64, 66, 68, 92, 62, 67, 68, 66, 64, 60, 56, 69, 64, 75, 64, 63, 63, 69, 62, 66, 61, 57, 65, 54, 46, 52, 76, 69, 88, 66, 81, 79, 68, 64, 70, 56, 62, 60, 51, 57, 102, 56, 66, 56, 66, 56, 73, 62, 75, 75, 77, 77, 64, 53, 63, 55, 71, 68, 78, 48, 66, 55, 61, 61, 55, 49, 106, 71, 75, 60, 67, 69, 83, 54, 53, 103, 63, 76, 63, 64, 85, 63, 63, 58, 73, 55, 48, 76, 66, 69, 54, 55, 70, 72, 60, 78, 92, 66, 99, 54, 70, 73, 60, 87, 85, 129, 57, 60, 74, 61, 65, 86, 60, 61, 62, 54, 53, 72, 52, 55, 65, 57, 65, 65, 78, 51, 66, 61, 56, 54, 53, 95, 86, 53, 52, 58, 69, 59, 60, 65, 62, 59, 45, 46, 107, 59, 65, 64, 63, 120, 72, 62, 52, 62, 69, 126, 64, 58, 70, 63, 59, 65, 68, 52, 63, 34, 81, 56, 56, 62, 72, 55, 73, 54, 57, 60, 100, 71, 50, 61, 68, 57, 71, 49, 64, 60, 68, 58, 70, 66, 53, 69, 61, 43, 70, 110, 67, 57, 84, 68, 39, 54, 63, 56, 71, 79, 63, 77, 60, 55, 78, 58, 70, 61, 65, 64, 78, 54, 67, 50, 65, 83, 67, 58, 52, 90, 57, 88, 43, 41, 58, 69, 64, 56, 57, 50, 69, 126, 68, 55, 63, 68, 68, 63, 53, 50, 58, 57, 31, 61, 58, 65, 66, 62, 59, 51, 68, 68, 59, 75, 74, 52, 61, 80, 76, 101, 60, 99, 61, 59, 76, 65, 54, 77, 64, 85, 59, 63, 73, 77, 69, 54, 60, 94, 59, 66, 55, 47, 65, 67, 66, 86, 83, 57, 63, 69, 53, 64, 91, 61, 53, 81, 50, 49, 70, 60, 53, 66, 58, 72, 52, 74, 79, 96, 50, 58, 72, 53, 58, 52, 82, 57, 57, 66, 71, 86, 70, 46, 65, 55, 60, 75, 60, 61, 76, 66, 71, 74, 62, 64, 65, 61, 45, 64, 61, 75, 74, 55, 68, 63, 66, 69, 60, 82, 81, 85, 86, 70, 67, 58, 61, 70, 60, 67, 67, 65, 51, 58, 93, 62, 69, 59, 56, 52, 84, 59, 61, 76, 60, 60, 90, 70, 59, 76, 69, 76, 52, 73, 56, 74, 76, 58, 66, 64, 66, 54, 68, 81, 69, 71, 81, 77, 57, 57, 64, 57, 60, 62, 66, 69, 78, 59, 53, 64, 67, 55, 69, 43, 57, 63, 53, 39, 67, 71, 66, 57, 50, 64, 66, 92, 79, 68, 65, 63, 65, 52, 49, 80, 72, 72, 68, 52, 49, 68, 65, 53, 49, 67, 63, 49, 58, 75, 61, 71, 82, 79, 62, 87, 59, 57, 55, 48, 58, 100, 70, 58, 75, 90, 49, 62, 69, 57, 47, 58, 72, 45, 63, 71, 121, 53, 55, 75, 73, 77, 66, 81, 62, 54, 54, 67, 70, 75, 66, 59, 63, 55, 54, 65, 102, 63, 82, 60, 71, 59, 81, 51, 56, 65, 82, 56, 58, 62, 60, 64, 62, 53, 63, 62, 77, 76, 73, 71, 64, 55, 57, 67, 51, 53, 73, 61, 72, 72, 64, 45, 54, 43, 76, 60, 60, 85, 88, 62, 87, 85, 74, 70, 61, 52, 58, 95, 56, 63, 54, 57, 58, 68, 56, 60, 80, 52, 76, 58, 68, 63, 71, 74, 70, 72, 55, 59, 145, 69, 63, 62, 54, 67, 57, 68, 82, 105, 62, 64, 60, 65, 50, 71, 61, 56, 64, 66, 69, 87, 51, 52, 61, 62, 72, 66, 60, 47, 91, 52, 63, 76, 59, 52, 73, 67, 43, 70, 62, 62, 62, 74, 81, 62, 60, 53, 83, 64, 88, 46, 63, 64, 48, 62, 90, 71, 67, 57, 60, 55, 58, 73, 71, 66, 69, 62, 50, 96, 66, 54, 48, 62, 52, 73, 55, 57, 90, 55, 78, 64, 82, 56, 72, 82, 54, 59, 89, 67, 49, 61, 63, 59, 46, 50, 74, 57, 106, 93, 70, 67, 62, 87, 49, 65, 81, 52, 72, 69, 68, 75, 81, 47, 50, 55, 67, 58, 71, 76, 81, 71, 50, 78, 48, 50, 78, 102, 73, 60, 64, 102, 71, 42, 67, 54, 81, 73, 59, 54, 70, 48, 59, 54, 73, 63, 63, 72, 69, 63, 53, 67, 58, 60, 61, 77, 53, 56, 70, 72, 62, 57, 51, 63, 87, 64, 80, 59, 77, 66, 41, 68, 76, 50, 66, 67, 59, 58, 62, 92, 68, 72, 83, 76, 47, 65, 59, 58, 47, 68, 72, 71, 83, 66, 69, 55, 81, 46, 54, 64, 54, 85, 72, 61, 66, 78, 79, 63, 82, 46, 44, 59, 50, 65, 70, 70, 71, 70, 53, 71, 79, 75, 48, 57, 94, 82, 71, 51, 79, 56, 49, 57, 61, 61, 76, 59, 71, 45, 80, 121, 81, 49, 63, 63, 59, 73, 67, 73, 77, 57, 53, 77, 95, 56, 64, 55, 74, 50, 120, 56, 71, 67, 62, 57, 60, 68, 97, 57, 72, 78, 45, 53, 130, 49, 80, 56, 123, 71, 61, 72, 67, 62, 59, 129, 53, 51, 52, 62, 55, 80, 74, 66, 58, 81, 51, 62, 50, 58, 70, 56, 63, 46, 64, 67, 69, 40, 68, 68, 70, 66, 62, 68, 69, 69, 58, 68, 82, 79, 65, 64, 58, 61, 71, 65, 53, 65, 65, 79, 69, 55, 109, 63, 69, 54, 75, 67, 68, 65, 88, 66, 79, 60, 55, 86, 95, 54, 63, 82, 77, 71, 55, 56, 63, 57, 64, 71, 68, 58, 56, 57, 60, 63, 85, 99, 61, 117, 64, 67, 46, 54, 45, 68, 66, 56, 65, 56, 59, 88, 66, 76, 79, 99, 62, 61, 71, 84, 53, 83, 90, 59, 68, 58, 45, 68, 76, 98, 65, 48, 65, 54, 44, 61, 67, 58, 53, 78, 54, 79, 59, 74, 54, 60, 75, 57, 41, 87, 68, 51, 103, 62, 49, 84, 60, 54, 77, 67, 62, 66, 80, 54, 52, 57, 68, 70, 57, 81, 56, 131, 61, 46, 63, 77, 44, 51, 67, 69, 58, 61, 52, 79, 64, 84, 96, 90, 76, 55, 60, 54, 54, 66, 60, 38, 64, 67, 53, 59, 95, 84, 78, 52, 70, 72, 71, 80, 59, 53, 73, 52, 89, 57, 63, 64, 70, 53, 71, 79, 97, 57, 79, 57, 67, 76, 68, 56, 68, 56, 90, 82, 46, 100, 48, 70, 50, 79, 65, 49, 68, 61, 49, 54, 58, 70, 61, 49, 63, 82, 48, 58, 74, 67, 77, 31, 62, 63, 64, 62, 68, 65, 59, 72, 82, 84, 52, 62, 63, 59, 76, 71, 53, 55, 70, 54, 50, 63, 64, 106, 65, 52, 86, 65, 66, 37, 71, 81, 66, 59, 59, 62, 90, 76, 72, 66, 47, 68, 64, 41, 68, 49, 49, 44, 90, 66, 61, 73, 57, 58, 82, 101, 72, 90, 66, 62, 76, 72, 71, 96, 85, 63, 100, 90, 79, 65, 65, 65, 68, 85, 55, 97, 86, 68, 134, 60, 51, 49, 57, 54, 64, 60, 82, 49, 81, 65, 58, 62, 64, 67, 54, 94, 58, 53, 52, 51, 52, 78, 58, 73, 71, 47, 45, 68, 93, 55, 97, 75, 67, 57, 57, 88, 69, 45, 73, 64, 49, 68, 70, 58, 79, 73, 57, 77, 72, 65, 55, 77, 86, 60, 62, 59, 51, 51, 87, 52, 68, 82, 42, 52, 66, 61, 71, 86, 50, 45, 83, 59, 55, 67, 77, 63, 62, 68, 55, 60, 59, 86, 68, 54, 64, 58, 74, 70, 61, 94, 50, 55, 65, 67, 75, 79, 66, 58, 73, 58, 77, 40, 56, 54, 50, 64, 93, 61, 65, 61, 73, 62, 66, 77, 64, 67, 67, 69, 57, 59, 55, 65, 77, 68, 77, 69, 57, 70, 54, 63, 56, 54, 57, 76, 65, 63, 59, 63, 86, 76, 82, 49, 55, 59, 82, 53, 55, 57, 69, 59, 55, 62, 70, 63, 65, 84, 71, 59, 72, 60, 75, 61, 70, 46, 62, 130, 67, 58, 80, 54, 48, 56, 51, 53, 50, 58, 63, 30, 79, 62, 69, 54, 63, 89, 88, 52, 87, 55, 51, 56, 71, 93, 66, 70, 94, 64, 60, 73, 53, 60, 71, 71, 58, 56, 69, 65, 83, 68, 77, 68, 73, 56, 60, 59, 55, 64, 60, 67, 87, 86, 53, 75, 54, 47, 69, 58, 76, 74, 55, 57, 72, 64, 61, 55, 62, 76, 70, 66, 48, 87, 60, 67, 77, 53, 45, 63, 51, 74, 69, 55, 74, 52, 89, 45, 64, 65, 65, 65, 65, 51, 54, 84, 87, 79, 62, 63, 59, 78, 66, 72, 65, 60, 49, 90, 60, 73, 61, 63, 57, 54, 58, 68, 82, 50, 62, 57, 100, 59, 102, 47, 72, 65, 82, 59, 60, 64, 61, 72, 105, 78, 62, 56, 54, 63, 66, 79, 55, 58, 74, 50, 61, 63, 50, 54, 53, 63, 68, 78, 85, 80, 68, 54, 65, 68, 43, 58, 40, 62, 69, 64, 49, 76, 55, 80, 58, 47, 54, 72, 73, 71, 56, 74, 58, 94, 59, 65, 67, 68, 74, 86, 79, 66, 64, 69, 86, 78, 55, 52, 65, 58, 61, 73, 66, 63, 75, 59, 89, 56, 32, 65, 139, 53, 46, 64, 57, 67, 65, 60, 69, 59, 54, 46, 59, 55, 88, 69, 60, 51, 56, 69, 56, 50, 55, 16, 66, 65, 60, 58, 69, 67, 53, 75, 51, 64, 73, 76, 83, 63, 71, 68, 61, 80, 63, 79, 62, 79, 57, 62, 63, 40, 58, 94, 88, 54, 67, 69, 73, 55, 88, 63, 110, 55, 57, 59, 61, 73, 57, 75, 80, 74, 50, 76, 56, 63, 117, 70, 54, 62, 77, 59, 68, 72, 52, 56, 64, 67, 65, 55, 72, 57, 102, 75, 61, 89, 70, 87, 54, 68, 81, 58, 95, 63, 81, 86, 57, 67, 72, 49, 58, 57, 70, 43, 65, 48, 69, 76, 66, 78, 70, 73, 65, 68, 59, 61, 76, 58, 51, 69, 57, 65, 69, 64, 63, 115, 72, 92, 70, 46, 72, 64, 51, 84, 64, 58, 62, 62, 51, 70, 60, 64, 75, 55, 70, 70, 39, 81, 67, 90, 82, 48, 60, 74, 57, 72, 72, 57, 62, 85, 76, 69, 61, 80, 51, 59, 61, 78, 65, 70, 69, 52, 91, 79, 57, 83, 55, 72, 61, 65, 61, 61, 55, 51, 64, 48, 83, 62, 65, 54, 66, 67, 62, 48, 57, 71, 70, 72, 68, 73, 76, 61, 61, 70, 42, 56, 76, 63, 63, 69, 77, 58, 45, 63, 49, 80, 73, 51, 73, 60, 83, 69, 65, 83, 92, 74, 83, 68, 58, 61, 49, 55, 63, 61, 84, 43, 69, 59, 65, 54, 49, 58, 68, 73, 55, 67, 59, 55, 58, 73, 48, 62, 62, 62, 78, 83, 59, 66, 76, 64, 62, 82, 75, 59, 66, 51, 64, 67, 70, 89, 106, 48, 49, 51, 67, 57, 62, 85, 59, 62, 107, 73, 65, 55, 59, 66, 75, 47, 60, 90, 71, 64, 76, 65, 77, 67, 63, 55, 56, 67, 66, 47, 68, 78, 86, 55, 66, 110, 86, 64, 72, 52, 63, 73, 63, 62, 84, 80, 102, 96, 73, 64, 63, 61, 50, 60, 78, 49, 57, 67, 77, 60, 71, 48, 65, 64, 61, 86, 89, 59, 66, 90, 57, 79, 66, 97, 67, 71, 62, 76, 49, 53, 66, 69, 58, 55, 67, 65, 68, 71, 48, 57, 84, 62, 59, 71, 87, 66, 58, 45, 37, 71, 64, 58, 63, 58, 49, 68, 88, 48, 80, 77, 61, 55, 60, 69, 82, 86, 95, 60, 57, 69, 58, 74, 86, 65, 51, 54, 70, 59, 83, 70, 57, 76, 71, 59, 59, 42, 67, 39, 65, 58, 67, 41, 48, 67, 53, 76, 64, 66, 62, 48, 59, 75, 71, 58, 89, 79, 51, 90, 64, 58, 65, 88, 92, 65, 64, 66, 88, 75, 80, 75, 60, 58, 55, 54, 57, 62, 74, 93, 73, 81, 57, 57, 66, 92, 65, 70, 65, 113, 58, 67, 58, 69, 67, 68, 98, 62, 96, 61, 56, 78, 55, 69, 95, 58, 70, 64, 64, 61, 52, 74, 66, 74, 64, 57, 80, 58, 72, 60, 68, 91, 89, 55, 50, 71, 43, 49, 64, 42, 62, 70, 71, 55, 63, 117, 54, 73, 54, 55, 83, 49, 59, 54, 74, 68, 56, 60, 53, 82, 107, 53, 62, 65, 59, 75, 65, 59, 63, 79, 53, 58, 67, 56, 53, 111, 62, 68, 78, 71, 51, 56, 65, 60, 58, 56, 77, 70, 62, 57, 56, 60, 67, 43, 69, 69, 70, 57, 71, 65, 51, 68, 79, 69, 50, 55, 63, 79, 60, 51, 69, 106, 65, 67, 54, 57, 45, 79, 54, 73, 73, 61, 55, 67, 78, 52, 56, 89, 45, 72, 76, 54, 55, 55, 61, 59, 74, 71, 78, 59, 60, 70, 45, 58, 95, 52, 86, 73, 49, 65, 52, 90, 58, 78, 65, 78, 67, 58, 61, 80, 68, 67, 64, 50, 51, 63, 38, 45, 65, 73, 69, 70, 67, 62, 55, 57, 85, 60, 75, 63, 75, 84, 96, 50, 68, 71, 75, 98, 47, 61, 31, 68, 91, 65, 75, 44, 62, 53, 55, 71, 65, 47, 51, 64, 105, 62, 71, 57, 69, 85, 59, 60, 71, 54, 55, 75, 75, 60, 64, 70, 62, 54, 42, 70, 66, 61, 73, 59, 82, 65, 41, 66, 55, 53, 70, 62, 64, 70, 85, 68, 64, 52, 54, 41, 42, 66, 47, 61, 66, 64, 54, 64, 78, 67, 59, 58, 98, 44, 60, 64, 53, 57, 84, 68, 72, 70, 66, 58, 59, 70, 52, 58, 66, 69, 52, 108, 69, 80, 59, 73, 72, 60, 83, 72, 52, 51, 122, 57, 53, 79, 71, 53, 62, 61, 69, 66, 53, 67, 48, 94, 54, 63, 79, 54, 73, 84, 60, 73, 88, 52, 48, 75, 72, 88, 47, 61, 44, 59, 85, 59, 97, 59, 42, 56, 45, 61, 71, 55, 56, 110, 61, 52, 61, 63, 65, 111, 54, 82, 81, 58, 71, 58, 58, 66, 50, 66, 81, 75, 81, 42, 61, 92, 76, 55, 71, 65, 61, 64, 43, 76, 70, 40, 82, 93, 58, 49, 56, 80, 58, 56, 62, 66, 61, 56, 54, 66, 75, 61, 54, 68, 69, 92, 72, 47, 52, 63, 71, 46, 64, 81, 65, 90, 59, 59, 60, 56, 76, 44, 69, 45, 59, 72, 72, 85, 60, 81, 68, 66, 61, 68, 77, 61, 64, 95, 83, 27, 60, 78, 60, 58, 58, 70, 50, 54, 47, 40, 68, 50, 53, 75, 42, 65, 51, 83, 69, 62, 83, 46, 62, 81, 55, 68, 79, 48, 57, 68, 91, 129, 64, 57, 67, 69, 68, 47, 70, 71, 63, 58, 48, 59, 61, 57, 60, 70, 57, 63, 79, 50, 78, 66, 69, 69, 97, 59, 99, 58, 67, 77, 57, 57, 83, 47, 55, 72, 83, 57, 54, 67, 53, 135, 70, 58, 51, 53, 56, 65, 54, 66, 71, 65, 41, 59, 61, 72, 102, 59, 58, 57, 63, 87, 45, 67, 50, 75, 67, 53, 59, 58, 72, 68, 83, 100, 71, 64, 60, 71, 64, 72, 60, 107, 70, 65, 66, 58, 82, 70, 46, 76, 56, 80, 64, 48, 59, 51, 54, 65, 61, 53, 64, 50, 70, 53, 85, 61, 72, 53, 131, 64, 48, 64, 69, 66, 54, 60, 66, 57, 66, 69, 64, 49, 73, 68, 68, 53, 38, 89, 58, 55, 81, 46, 49, 72, 51, 61, 86, 73, 72, 62, 69, 61, 64, 70, 67, 60, 53, 69, 66, 41, 65, 61, 89, 66, 66, 54, 78, 60, 74, 73, 82, 55, 66, 48, 64, 61, 97, 73, 77, 70, 61, 61, 62, 70, 79, 94, 69, 61, 64, 80, 76, 74, 106, 51, 60, 72, 36, 70, 78, 57, 50, 47, 69, 48, 63, 59, 67, 55, 111, 52, 69, 70, 61, 60, 71, 81, 95, 64, 78, 58, 41, 71, 80, 61, 51, 73, 62, 77, 76, 59, 66, 43, 68, 73, 73, 63, 63, 52, 52, 76, 50, 64, 83, 64, 74, 69, 56, 47, 67, 49, 71, 120, 82, 86, 58, 55, 58, 93, 63, 51, 68, 70, 50, 82, 45, 71, 59, 60, 93, 61, 90, 62, 52, 80, 72, 56, 64, 54, 76, 80, 55, 70, 55, 54, 73, 84, 80, 51, 55, 67, 58, 66, 54, 49, 62, 93, 64, 63, 58, 64, 43, 60, 57, 77, 70, 42, 48, 57, 58, 69, 83, 55, 70, 66, 69, 66, 79, 64, 50, 66, 51, 50, 59, 58, 69, 86, 67, 86, 74, 70, 49, 67, 72, 78, 63, 63, 51, 101, 37, 60, 88, 46, 58, 67, 69, 74, 54, 58, 69, 79, 84, 64, 70, 96, 62, 148, 81, 72, 65, 63, 97, 74, 58, 58, 70, 62, 57, 64, 54, 88, 59, 62, 79, 75, 62, 85, 73, 45, 58, 74, 65, 62, 76, 62, 46, 79, 56, 81, 68, 55, 53, 65, 64, 58, 54, 99, 77, 71, 96, 47, 54, 68, 66, 68, 67, 79, 115, 52, 58, 81, 57, 76, 51, 60, 70, 101, 53, 80, 73, 53, 47, 61, 52, 52, 56, 70, 62, 53, 43, 44, 64, 56, 66, 97, 66, 77, 82, 53, 64, 76, 60, 79, 102, 65, 96, 99, 78, 85, 59, 61, 65, 70, 67, 61, 64, 59, 82, 52, 83, 63, 53, 63, 72, 73, 72, 67, 63, 68, 60, 79, 77, 76, 70, 72, 74, 56, 57, 70, 81, 76, 60, 81, 60, 57, 82, 51, 42, 49, 66, 62, 74, 51, 69, 78, 62, 59, 58, 59, 51, 52, 46, 55, 49, 52, 86, 69, 68, 48, 55, 65, 51, 45, 91, 59, 96, 74, 72, 93, 45, 73, 91, 83, 71, 55, 63, 49, 70, 65, 47, 51, 64, 34, 70, 31, 57, 66, 66, 91, 61, 46, 83, 52, 64, 68, 73, 56, 73, 68, 42, 78, 59, 62, 67, 84, 52, 74, 47, 67, 78, 79, 69, 73, 103, 80, 95, 62, 63, 60, 59, 57, 55, 60, 67, 71, 84, 77, 57, 69, 67, 54, 68, 74, 77, 69, 57, 127, 56, 65, 50, 86, 58, 52, 83, 56, 78, 65, 55, 56, 85, 65, 52, 44, 74, 61, 54, 76, 56, 71, 63, 66, 64, 74, 56, 71, 48, 41, 52, 98, 120, 75, 62, 74, 49, 66, 66, 68, 61, 60, 64, 68, 59, 83, 60, 73, 82, 58, 73, 58, 70, 79, 61, 59, 52, 62, 49, 75, 99, 51, 61, 71, 67, 76, 40, 54, 61, 85, 40, 73, 67, 57, 59, 117, 57, 61, 87, 54, 81, 63, 71, 57, 61, 72, 67, 61, 50, 31, 54, 78, 49, 78, 52, 63, 57, 60, 73, 45, 62, 55, 51, 68, 76, 100, 88, 71, 59, 55, 52, 89, 66, 71, 73, 42, 47, 66, 59, 59, 47, 67, 46, 57, 76, 74, 71, 82, 74, 59, 63, 55, 63, 62, 57, 71, 75, 62, 41, 53, 62, 78, 52, 39, 75, 41, 81, 67, 57, 55, 77, 102, 48, 52, 62, 52, 77, 63, 38, 93, 77, 55, 46, 74, 55, 58, 82, 60, 71, 55, 55, 65, 88, 56, 70, 56, 64, 70, 101, 66, 67, 69, 67, 59, 71, 63, 66, 78, 66, 64, 53, 63, 84, 47, 70, 66, 71, 74, 86, 78, 52, 60, 41, 65, 110, 58, 57, 83, 92, 81, 52, 65, 60, 70, 70, 59, 82, 102, 48, 66, 49, 94, 73, 59, 30, 58, 57, 62, 60, 71, 66, 58, 70, 43, 51, 55, 64, 67, 83, 51, 63, 76, 83, 73, 56, 60, 74, 54, 57, 72, 41, 46, 78, 57, 64, 71, 59, 65, 73, 65, 46, 75, 63, 59, 65, 66, 68, 51, 47, 79, 65, 61, 50, 66, 79, 91, 70, 93, 64, 113, 55, 54, 88, 48, 70, 56, 99, 57, 40, 53, 65, 56, 66, 67, 69, 87, 60, 50, 60, 97, 54, 94, 65, 84, 60, 81, 60, 52, 59, 60, 52, 88, 68, 97, 47, 81, 70, 51, 96, 50, 111, 61, 75, 58, 43, 61, 66, 56, 56, 90, 73, 74, 60, 59, 96, 99, 60, 60, 91, 56, 53, 46, 71, 81, 57, 69, 57, 65, 74, 36, 71, 93, 42, 49, 96, 75, 55, 74, 44, 64, 67, 53, 90, 93, 59, 80, 78, 64, 34, 58, 61, 62, 61, 72, 60, 70, 83, 74, 89, 72, 74, 75, 88, 43, 83, 66, 76, 65, 53, 94, 75, 63, 77, 66, 68, 59, 70, 74, 55, 79, 72, 81, 58, 54, 71, 80, 49, 67, 67, 58, 63, 74, 66, 99, 63, 40, 82, 64, 75, 56, 59, 71, 53, 71, 54, 53, 89, 51, 74, 63, 58, 48, 69, 88, 57, 39, 101, 84, 59, 81, 47, 51, 56, 55, 68, 77, 65, 123, 56, 69, 73, 89, 56, 63, 52, 67, 69, 102, 64, 73, 76, 71, 67, 57, 73, 71, 59, 60, 56, 93, 90, 52, 56, 68, 54, 64, 65, 58, 51, 85, 66, 68, 52, 60, 49, 84, 61, 56, 54, 52, 71, 63, 68, 52, 63, 45, 67, 77, 59, 73, 80, 135, 61, 70, 77, 121, 67, 75, 38, 49, 72, 71, 59, 83, 73, 49, 118, 79, 60, 62, 68, 79, 54, 68, 60, 74, 69, 75, 48, 59, 66, 94, 57, 53, 64, 62, 118, 57, 49, 69, 56, 68, 41, 71, 64, 51, 89, 72, 45, 73, 45, 77, 104, 94, 67, 55, 81, 69, 64, 91, 87, 64, 50, 68, 72, 73, 86, 61, 62, 75, 58, 121, 62, 56, 85, 64, 59, 65, 61, 83, 50, 55, 55, 65, 54, 71, 85, 82, 62, 53, 66, 71, 49, 55, 69, 67, 58, 70, 73, 77, 69, 79, 56, 47, 55, 65, 69, 91, 63, 76, 61, 66, 56, 45, 65, 80, 85, 49, 65, 62, 61, 65, 55, 51, 45, 65, 68, 56, 66, 57, 53, 62, 65, 76, 103, 75, 80, 54, 48, 72, 79, 63, 60, 58, 64, 57, 52, 87, 64, 58, 23, 62, 59, 41, 70, 54, 109, 79, 47, 77, 81, 50, 126, 53, 56, 60, 79, 60, 40, 54, 76, 96, 73, 68, 67, 78, 73, 56, 71, 63, 41, 69, 63, 77, 72, 79, 51, 74, 57, 72, 53, 87, 67, 124, 57, 48, 43, 64, 77, 77, 64, 42, 74, 55, 87, 58, 75, 52, 69, 69, 73, 79, 55, 54, 64, 70, 52, 58, 75, 66, 58, 54, 78, 67, 38, 58, 50, 88, 63, 48, 65, 87, 64, 65, 55, 101, 73, 66, 75, 76, 63, 54, 52, 74, 64, 75, 57, 82, 49, 56, 78, 60, 69, 52, 66, 77, 87, 65, 56, 66, 56, 70, 54, 72, 59, 52, 60, 78, 54, 63, 37, 57, 50, 51, 54, 62, 68, 64, 59, 48, 44, 64, 55, 74, 64, 61, 52, 66, 65, 62, 74, 80, 70, 68, 32, 57, 112, 67, 63, 72, 82, 52, 70, 86, 68, 64, 58, 54, 59, 54, 53, 67, 57, 49, 67, 60, 76, 65, 61, 66, 61, 57, 75, 69, 82, 74, 54, 56, 53, 77, 73, 53, 101, 82, 79, 47, 71, 76, 57, 55, 55, 63, 49, 67, 64, 112, 71, 59, 74, 62, 57, 70, 78, 68, 91, 52, 56, 61, 74, 58, 58, 74, 47, 84, 68, 58, 94, 70, 49, 48, 64, 69, 73, 58, 72, 61, 54, 70, 62, 61, 94, 73, 80, 54, 59, 53, 69, 69, 75, 61, 82, 60, 64, 70, 56, 52, 42, 111, 69, 48, 55, 75, 66, 45, 71, 93, 72, 72, 51, 58, 53, 55, 61, 84, 84, 64, 67, 51, 44, 44, 59, 58, 73, 88, 59, 63, 76, 51, 76, 51, 69, 71, 73, 63, 54, 59, 72, 59, 65, 63, 61, 84, 82, 95, 60, 55, 76, 69, 55, 57, 80, 73, 73, 54, 66, 69, 59, 70, 72, 49, 65, 70, 62, 66, 67, 88, 94, 79, 53, 61, 93, 62, 50, 99, 59, 45, 66, 48, 56, 55, 56, 61, 65, 96, 81, 59, 59, 55, 57, 69, 50, 50, 59, 68, 64, 41, 80, 91, 79, 66, 48, 49, 87, 64, 70, 45, 75, 55, 58, 60, 56, 41, 59, 78, 59, 66, 59, 65, 104, 52, 90, 69, 68, 100, 70, 101, 82, 96, 69, 53, 52, 89, 59, 88, 60, 77, 54, 57, 90, 72, 62, 69, 66, 80, 58, 64, 66, 61, 52, 53, 49, 80, 64, 55, 61, 54, 83, 93, 68, 65, 69, 53, 61, 89, 58, 84, 57, 60, 58, 73, 54, 60, 71, 66, 77, 71, 79, 56, 60, 66, 52, 63, 69, 86, 86, 59, 52, 51, 58, 57, 54, 67, 70, 67, 58, 65, 71, 48, 71, 69, 58, 75, 44, 73, 104, 66, 52, 64, 71, 64, 57, 73, 98, 60, 73, 60, 91, 61, 74, 59, 61, 57, 55, 83, 54, 67, 74, 59, 84, 71, 63, 69, 61, 88, 56, 51, 59, 81, 59, 73, 63, 87, 80, 79, 67, 61, 63, 69, 64, 53, 59, 54, 62, 55, 68, 64, 71, 56, 48, 58, 64, 74, 85, 61, 58, 64, 87, 60, 78, 68, 62, 70, 67, 82, 71, 85, 68, 67, 54, 61, 63, 73, 58, 68, 60, 69, 82, 77, 79, 49, 122, 65, 46, 83, 72, 74, 58, 73, 66, 75, 72, 86, 67, 89, 88, 70, 76, 113, 50, 79, 48, 58, 59, 78, 61, 63, 62, 59, 60, 77, 44, 83, 69, 70, 58, 61, 52, 60, 73, 78, 58, 61, 85, 65, 53, 48, 102, 78, 62, 51, 69, 60, 48, 38, 64, 77, 72, 61, 56, 66, 56, 49, 68, 56, 70, 113, 65, 56, 70, 65, 92, 60, 43, 85, 66, 55, 54, 62, 72, 69, 70, 72, 47, 82, 89, 40, 65, 49, 99, 74, 65, 60, 82, 70, 66, 60, 77, 68, 82, 63, 58, 87, 61, 68, 96, 68, 62, 77, 70, 41, 69, 52, 81, 41, 68, 79, 68, 73, 55, 73, 103, 56, 71, 58, 101, 44, 81, 73, 57, 66, 66, 63, 66, 47, 57, 65, 79, 54, 78, 68, 58, 49, 64, 66, 60, 71, 76, 77, 86, 53, 72, 62, 69, 62, 60, 50, 66, 55, 73, 55, 91, 61, 56, 80, 81, 65, 88, 37, 72, 71, 70, 75, 58, 61, 44, 66, 58, 55, 70, 63, 62, 65, 57, 50, 73, 78, 76, 50, 65, 97, 78, 49, 58, 65, 51, 70, 64, 70, 67, 61, 51, 75, 71, 75, 65, 77, 65, 72, 85, 56, 70, 65, 58, 67, 81, 54, 65, 62, 68, 71, 56, 78, 59, 74, 66, 93, 62, 61, 62, 69, 74, 61, 84, 74, 86, 83, 48, 76, 67, 56, 67, 68, 73, 75, 43, 69, 71, 80, 48, 62, 51, 72, 83, 87, 47, 54, 48, 60, 47, 53, 67, 54, 65, 60, 52, 56, 57, 74, 68, 74, 87, 74, 69, 99, 79, 57, 69, 60, 63, 91, 69, 44, 59, 76, 65, 80, 78, 77, 73, 68, 64, 52, 67, 64, 49, 71, 38, 71, 69, 59, 52, 51, 55, 87, 102, 64, 56, 83, 60, 65, 78, 69, 64, 58, 63, 75, 58, 55, 73, 79, 70, 55, 78, 48, 46, 73, 71, 72, 57, 50, 51, 82, 72, 48, 88, 131, 51, 54, 46, 124, 50, 65, 61, 66, 57, 59, 57, 58, 60, 67, 118, 62, 67, 70, 59, 55, 69, 47, 65, 58, 56, 64, 54, 60, 58, 69, 75, 76, 72, 50, 84, 62, 46, 63, 82, 30, 48, 69, 67, 64, 72, 104, 63, 44, 57, 70, 120, 72, 76, 62, 56, 48, 74, 39, 70, 49, 61, 65, 62, 56, 80, 87, 71, 75, 62, 99, 51, 69, 49, 65, 64, 61, 86, 75, 80, 76, 71, 51, 79, 63, 66, 78, 66, 76, 48, 59, 79, 52, 61, 66, 67, 47, 58, 59, 65, 52, 63, 50, 56, 65, 66, 82, 53, 79, 51, 40, 63, 62, 67, 68, 75, 66, 56, 66, 58, 88, 60, 59, 49, 70, 62, 69, 70, 51, 43, 72, 65, 66, 107, 73, 61, 67, 61, 45, 83, 80, 67, 63, 63, 61, 39, 48, 62, 60, 64, 58, 84, 64, 65, 68, 87, 56, 53, 81, 59, 61, 128, 53, 61, 45, 54, 73, 56, 57, 70, 72, 78, 66, 67, 74, 76, 57, 62, 68, 56, 70, 92, 60, 65, 57, 57, 75, 69, 47, 51, 70, 70, 130, 66, 49, 60, 73, 66, 65, 73, 45, 59, 70, 68, 54, 76, 58, 50, 49, 60, 60, 88, 81, 53, 77, 79, 72, 72, 69, 68, 50, 46, 111, 57, 77, 52, 92, 56, 61, 81, 75, 57, 68, 56, 79, 61, 78, 68, 82, 65, 59, 50, 63, 60, 50, 48, 82, 62, 80, 90, 46, 71, 53, 89, 46, 87, 61, 75, 67, 68, 69, 52, 47, 63, 69, 44, 55, 50, 74, 61, 80, 67, 70, 50, 67, 81, 63, 65, 69, 61, 59, 56, 73, 56, 76, 72, 54, 76, 50, 65, 74, 73, 37, 48, 60, 107, 82, 65, 66, 87, 55, 74, 78, 72, 71, 49, 64, 72, 63, 55, 53, 70, 78, 54, 78, 76, 60, 42, 53, 75, 52, 49, 73, 85, 92, 62, 58, 53, 74, 75, 76, 89, 64, 66, 48, 56, 68, 77, 66, 39, 73, 64, 54, 43, 121, 68, 61, 71, 58, 60, 54, 68, 96, 102, 74, 57, 60, 79, 58, 73, 48, 57, 58, 55, 69, 87, 66, 54, 46, 60, 66, 67, 72, 51, 71, 57, 60, 60, 66, 99, 55, 53, 54, 67, 61, 45, 44, 63, 56, 70, 84, 75, 67, 52, 61, 48, 83, 68, 51, 70, 78, 66, 60, 91, 106, 41, 61, 61, 85, 56, 75, 81, 83, 51, 58, 64, 53, 59, 54, 47, 70, 68, 84, 73, 54, 57, 64, 60, 82, 73, 68, 43, 57, 58, 59, 46, 67, 50, 59, 73, 88, 69, 95, 52, 44, 74, 62, 63, 68, 66, 35, 85, 62, 68, 63, 65, 89, 93, 46, 59, 67, 96, 62, 69, 70, 86, 76, 65, 46, 92, 50, 41, 74, 61, 52, 63, 55, 83, 51, 64, 57, 65, 70, 52, 69, 62, 57, 36, 80, 68, 66, 80, 79, 65, 63, 59, 57, 85, 74, 58, 59, 73, 64, 58, 59, 60, 69, 61, 73, 79, 54, 86, 48, 64, 56, 59, 87, 79, 69, 68, 68, 77, 112, 70, 89, 58, 87, 59, 65, 41, 96, 46, 101, 58, 80, 76, 67, 56, 67, 68, 57, 57, 82, 58, 63, 59, 70, 70, 52, 63, 84, 70, 75, 88, 47, 73, 82, 52, 49, 88, 48, 65, 93, 74, 96, 69, 61, 70, 72, 62, 49, 52, 68, 66, 48, 67, 65, 54, 68, 44, 48, 63, 67, 54, 72, 68, 45, 53, 60, 61, 83, 63, 58, 92, 59, 81, 59, 86, 65, 46, 65, 52, 76, 101, 49, 57, 98, 58, 48, 63, 82, 89, 40, 48, 67, 83, 56, 78, 82, 76, 69, 52, 61, 58, 41, 86, 56, 57, 79, 45, 57, 46, 73, 64, 66, 68, 79, 44, 76, 58, 53, 72, 87, 59, 73, 62, 44, 63, 71, 53, 73, 78, 67, 58, 58, 89, 71, 54, 73, 69, 58, 71, 82, 62, 75, 61, 52, 71, 57, 61, 62, 73, 48, 63, 75, 56, 59, 68, 51, 55, 59, 70, 61, 41, 74, 70, 61, 73, 62, 114, 55, 56, 65, 72, 68, 62, 75, 63, 69, 90, 62, 72, 76, 60, 72, 55, 64, 58, 67, 48, 44, 61, 51, 66, 60, 49, 94, 59, 51, 55, 70, 63, 67, 70, 85, 72, 73, 76, 77, 74, 66, 71, 68, 62, 63, 81, 68, 71, 62, 71, 68, 70, 62, 66, 81, 59, 67, 81, 65, 58, 54, 60, 68, 71, 128, 69, 60, 70, 75, 98, 72, 63, 64, 68, 60, 84, 71, 63, 72, 84, 77, 56, 54, 108, 36, 60, 53, 87, 68, 59, 47, 54, 65, 47, 63, 58, 83, 44, 70, 56, 74, 57, 68, 79, 56, 65, 70, 55, 69, 67, 67, 53, 81, 68, 55, 58, 65, 65, 60, 86, 54, 63, 45, 126, 63, 59, 48, 45, 68, 59, 72, 60, 72, 53, 40, 60, 53, 78, 85, 61, 47, 69, 74, 54, 62, 65, 72, 77, 65, 77, 75, 58, 64, 60, 64, 61, 66, 70, 64, 81, 67, 67, 68, 88, 66, 77, 56, 49, 66, 67, 85, 68, 90, 50, 65, 70, 45, 52, 59, 64, 55, 60, 74, 79, 58, 63, 54, 71, 109, 71, 67, 59, 62, 74, 56, 64, 73, 67, 61, 60, 47, 70, 81, 70, 54, 78, 59, 73, 55, 86, 88, 60, 80, 76, 59, 53, 92, 56, 48, 73, 83, 54, 67, 72, 103, 50, 49, 59, 49, 60, 62, 67, 62, 83, 87, 79, 63, 66, 58, 57, 61, 68, 55, 63, 72, 63, 72, 50, 49, 54, 57, 77, 93, 51, 87, 70, 56, 66, 38, 52, 72, 53, 49, 38, 59, 61, 70, 66, 74, 84, 107, 57, 110, 75, 56, 50, 70, 77, 59, 68, 51, 75, 44, 48, 56, 89, 53, 61, 67, 70, 71, 59, 63, 69, 79, 73, 79, 58, 48, 51, 74, 50, 67, 96, 74, 42, 51, 68, 77, 57, 64, 73, 50, 60, 83, 54, 60, 76, 55, 59, 54, 72, 57, 53, 54, 75, 57, 61, 59, 64, 94, 72, 78, 61, 114, 66, 61, 57, 116, 54, 63, 75, 59, 67, 68, 72, 61, 49, 63, 116, 53, 50, 63, 59, 75, 59, 67, 63, 71, 62, 68, 56, 62, 72, 59, 45, 64, 67, 62, 69, 77, 70, 64, 87, 54, 48, 79, 60, 55, 59, 85, 58, 76, 66, 58, 123, 67, 47, 47, 79, 54, 53, 65, 50, 60, 57, 64, 85, 71, 87, 89, 51, 74, 64, 121, 49, 72, 80, 74, 47, 82, 86, 83, 62, 61, 92, 50, 57, 80, 78, 67, 70, 60, 58, 41, 45, 50, 67, 76, 69, 72, 47, 50, 70, 63, 62, 65, 55, 65, 73, 64, 46, 54, 46, 64, 67, 57, 97, 57, 81, 84, 48, 79, 50, 66, 57, 56, 63, 65, 85, 52, 80, 88, 37, 73, 57, 61, 95, 53, 86, 66, 57, 63, 49, 76, 44, 56, 60, 58, 39, 57, 55, 71, 65, 68, 98, 44, 72, 70, 84, 57, 66, 94, 61, 51, 127, 51, 67, 61, 60, 59, 91, 70, 59, 57, 46, 68, 68, 61, 82, 81, 51, 69, 68, 84, 56, 67, 59, 71, 54, 68, 55, 60, 69, 82, 63, 117, 65, 60, 51, 56, 48, 63, 84, 43, 81, 79, 61, 60, 77, 55, 53, 51, 75, 53, 66, 51, 60, 55, 54, 54, 66, 50, 66, 58, 61, 71, 82, 53, 53, 87, 53, 55, 62, 74, 74, 64, 69, 76, 51, 60, 64, 71, 66, 86, 50, 50, 56, 46, 69, 67, 58, 63, 63, 70, 47, 80, 73, 56, 75, 67, 94, 63, 45, 58, 50, 53, 64, 66, 67, 72, 47, 64, 57, 74, 54, 87, 56, 68, 79, 82, 80, 42, 48, 39, 59, 78, 70, 59, 52, 83, 68, 72, 89, 97, 64, 82, 87, 62, 102, 52, 57, 49, 96, 62, 73, 60, 80, 71, 57, 82, 53, 64, 50, 64, 61, 69, 59, 59, 94, 69, 53, 59, 48, 66, 47, 62, 85, 76, 80, 77, 58, 84, 75, 67, 90, 65, 66, 52, 85, 62, 61, 56, 55, 71, 58, 67, 50, 106, 48, 52, 83, 53, 50, 65, 87, 77, 99, 64, 60, 55, 74, 65, 51, 68, 64, 97, 68, 54, 60, 76, 49, 59, 77, 59, 53, 48, 68, 52, 86, 54, 77, 65, 60, 69, 62, 63, 61, 56, 69, 43, 55, 67, 76, 62, 81, 57, 61, 55, 53, 92, 57, 63, 66, 64, 51, 71, 75, 83, 56, 56, 55, 68, 60, 42, 62, 53, 42, 57, 56, 56, 59, 58, 44, 64, 96, 94, 65, 63, 95, 73, 73, 58, 77, 54, 74, 55, 62, 76, 74, 67, 57, 65, 61, 64, 73, 84, 61, 70, 71, 40, 75, 83, 64, 70, 93, 55, 98, 75, 70, 67, 89, 67, 65, 53, 84, 86, 101, 72, 107, 55, 44, 51, 107, 54, 63, 82, 64, 66, 65, 55, 61, 63, 64, 76, 73, 68, 79, 80, 48, 46, 62, 75, 83, 42, 82, 88, 70, 60, 74, 85, 85, 55, 84, 64, 48, 51, 52, 61, 65, 45, 73, 62, 67, 60, 76, 64, 65, 62, 76, 83, 59, 67, 46, 73, 61, 121, 61, 65, 72, 109, 85, 75, 76, 71, 50, 79, 56, 97, 90, 73, 46, 60, 74, 67, 52, 88, 68, 51, 66, 72, 64, 62, 57, 107, 44, 70, 73, 64, 80, 85, 51, 51, 86, 63, 86, 68, 79, 105, 87, 58, 59, 97, 50, 49, 73, 54, 52, 69, 80, 55, 72, 64, 68, 68, 66, 71, 64, 68, 55, 67, 70, 69, 66, 77, 63, 66, 99, 57, 53, 68, 77, 60, 64, 38, 78, 56, 89, 64, 56, 51, 52, 75, 103, 91, 75, 69, 65, 38, 49, 60, 57, 60, 66, 77, 69, 54, 90, 52, 82, 41, 69, 96, 64, 62, 49, 77, 81, 43, 64, 52, 60, 80, 81, 76, 87, 102, 67, 50, 64, 62, 63, 64, 67, 68, 65, 63, 50, 75, 52, 70, 58, 59, 78, 64, 52, 76, 61, 77, 58, 36, 62, 62, 74, 48, 58, 71, 54, 78, 74, 35, 64, 77, 74, 59, 70, 58, 59, 69, 52, 70, 74, 56, 106, 70, 54, 70, 67, 57, 70, 60, 60, 60, 54, 71, 64, 58, 48, 54, 49, 76, 62, 48, 43, 57, 72, 73, 80, 53, 62, 79, 53, 53, 69, 80, 64, 75, 65, 78, 52, 62, 62, 76, 62, 69, 79, 58, 67, 63, 91, 57, 44, 52, 72, 67, 74, 62, 96, 53, 63, 75, 65, 66, 60, 62, 70, 48, 61, 89, 64, 41, 68, 60, 89, 62, 64, 87, 64, 54, 81, 65, 65, 63, 75, 63, 51, 70, 121, 53, 74, 51, 68, 62, 74, 61, 72, 63, 60, 61, 49, 92, 65, 56, 56, 54, 68, 76, 71, 79, 70, 91, 72, 59, 61, 73, 75, 61, 56, 68, 71, 47, 67, 56, 79, 74, 50, 54, 116, 46, 57, 47, 48, 61, 52, 56, 66, 53, 63, 59, 52, 57, 88, 71, 63, 47, 77, 50, 65, 53, 54, 77, 81, 64, 82, 82, 80, 63, 58, 49, 66, 96, 69, 68, 66, 79, 54, 58, 72, 56, 70, 60, 72, 65, 63, 57, 87, 82, 69, 64, 83, 78, 66, 54, 64, 54, 57, 63, 73, 48, 71, 46, 56, 109, 62, 67, 71, 64, 56, 64, 63, 40, 52, 64, 55, 61, 70, 57, 49, 73, 50, 110, 71, 69, 63, 63, 54, 71, 66, 55, 68, 69, 71, 55, 83, 76, 61, 80, 67, 64, 48, 62, 57, 51, 69, 78, 74, 64, 71, 41, 54, 57, 66, 65, 62, 63, 56, 52, 64, 74, 62, 52, 52, 83, 54, 72, 85, 74, 74, 62, 88, 81, 56, 54, 77, 52, 57, 78, 62, 74, 80, 71, 62, 69, 74, 82, 75, 114, 69, 51, 69, 61, 59, 54, 65, 61, 59, 79, 69, 56, 79, 53, 72, 73, 59, 47, 65, 75, 64, 94, 71, 51, 58, 65, 66, 61, 73, 78, 77, 66, 71, 62, 43, 65, 68, 65, 63, 63, 57, 66, 55, 65, 105, 65, 79, 70, 64, 67, 49, 66, 85, 68, 48, 90, 53, 81, 79, 63, 59, 69, 52, 65, 58, 62, 59, 93, 64, 68, 72, 50, 56, 66, 62, 67, 87, 63, 68, 76, 58, 74, 73, 58, 65, 46, 96, 54, 70, 45, 60, 59, 55, 69, 60, 74, 85, 119, 51, 59, 67, 58, 65, 76, 63, 62, 73, 69, 53, 48, 62, 86, 64, 75, 60, 73, 65, 65, 78, 78, 52, 53, 52, 58, 57, 66, 49, 43, 56, 62, 52, 46, 63, 60, 60, 84, 75, 103, 60, 45, 54, 64, 81, 65, 48, 61, 53, 60, 59, 66, 54, 68, 54, 64, 57, 53, 57, 77, 56, 53, 62, 84, 62, 54, 60, 64, 55, 66, 90, 82, 60, 88, 70, 91, 76, 88, 62, 72, 66, 53, 52, 79, 63, 60, 73, 63, 78, 62, 51, 54, 87, 65, 50, 56, 62, 56, 66, 67, 51, 58, 52, 74, 56, 63, 59, 54, 59, 70, 61, 34, 63, 58, 69, 57, 59, 52, 65, 56, 61, 59, 55, 73, 76, 51, 82, 60, 61, 59, 57, 58, 66, 56, 67, 71, 70, 48, 60, 52, 58, 70, 53, 80, 61, 55, 71, 71, 68, 95, 61, 64, 64, 78, 65, 92, 74, 89, 83, 66, 65, 77, 69, 54, 60, 56, 57, 64, 84, 57, 67, 63, 63, 44, 71, 66, 72, 51, 64, 77, 59, 53, 53, 86, 52, 62, 72, 61, 48, 58, 76, 56, 77, 82, 65, 60, 72, 77, 57, 79, 59, 54, 66, 56, 67, 82, 63, 50, 60, 89, 66, 96, 68, 65, 79, 67, 83, 67, 74, 59, 71, 58, 62, 67, 55, 64, 93, 80, 58, 53, 45, 66, 68, 78, 89, 67, 82, 73, 101, 50, 78, 54, 56, 58, 56, 63, 66, 56, 46, 79, 53, 55, 71, 60, 67, 59, 60, 68, 57, 61, 55, 61, 70, 66, 61, 75, 65, 70, 63, 49, 60, 71, 56, 55, 67, 63, 68, 67, 63, 56, 80, 60, 81, 59, 89, 81, 64, 96, 98, 60, 66, 74, 63, 61, 86, 93, 63, 67, 63, 49, 64, 63, 77, 78, 55, 59, 76, 67, 59, 58, 62, 80, 78, 60, 77, 63, 85, 78, 67, 57, 68, 67, 55, 49, 54, 50, 66, 46, 97, 83, 55, 56, 62, 91, 41, 50, 50, 65, 76, 85, 65, 61, 58, 78, 128, 67, 51, 62, 59, 65, 51, 66, 75, 117, 141, 59, 59, 51, 51, 68, 96, 72, 68, 58, 77, 59, 66, 107, 57, 56, 74, 59, 73, 52, 57, 89, 59, 72, 60, 56, 43, 82, 70, 66, 60, 62, 67, 68, 74, 60, 112, 70, 71, 77, 70, 52, 62, 60, 60, 51, 74, 86, 68, 51, 59, 61, 74, 65, 62, 49, 57, 63, 58, 55, 72, 56, 62, 55, 59, 70, 82, 47, 63, 68, 84, 51, 66, 61, 76, 70, 58, 46, 57, 73, 70, 67, 60, 63, 65, 48, 63, 73, 87, 56, 58, 76, 90, 57, 42, 63, 67, 55, 55, 83, 50, 53, 73, 59, 51, 50, 62, 67, 48, 73, 58, 91, 62, 75, 50, 44, 105, 56, 60, 77, 66, 55, 69, 68, 107, 53, 69, 55, 73, 72, 57, 97, 82, 81, 96, 69, 64, 62, 81, 70, 67, 76, 66, 78, 55, 78, 74, 68, 64, 62, 61, 73, 60, 87, 69, 72, 66, 71, 55, 69, 57, 94, 56, 102, 59, 92, 73, 65, 62, 64, 63, 55, 64, 56, 67, 98, 70, 67, 56, 69, 104, 55, 83, 60, 56, 77, 58, 49, 54, 61, 52, 59, 65, 75, 55, 58, 57, 61, 56, 72, 73, 64, 55, 60, 60, 63, 57, 57, 60, 71, 68, 70, 50, 67, 87, 74, 43, 64, 91, 59, 58, 81, 63, 69, 74, 63, 51, 62, 53, 60, 80, 66, 69, 71, 77, 60, 72, 70, 52, 55, 61, 64, 70, 62, 77, 62, 59, 90, 94, 63, 62, 51, 44, 66, 65, 64, 46, 63, 57, 49, 79, 68, 72, 57, 61, 65, 51, 64, 54, 78, 81, 69, 68, 76, 63, 55, 59, 79, 67, 58, 71, 49, 74, 81, 62, 67, 55, 64, 64, 59, 55, 74, 77, 54, 62, 49, 95, 60, 121, 57, 67, 76, 66, 76, 65, 70, 65, 85, 50, 59, 50, 55, 78, 69, 79, 56, 65, 69, 59, 57, 54, 60, 57, 60, 77, 129, 66, 51, 69, 45, 77, 57, 76, 47, 60, 60, 70, 63, 73, 66, 69, 64, 86, 43, 82, 62, 57, 57, 129, 66, 60, 72, 65, 71, 55, 57, 52, 58, 61, 71, 64, 87, 72, 59, 65, 84, 76, 61, 87, 63, 68, 50, 63, 64, 68, 53, 95, 59, 59, 50, 80, 69, 71, 73, 69, 76, 87, 57, 68, 82, 69, 66, 84, 53, 75, 50, 60, 55, 46, 66, 78, 58, 53, 54, 71, 69, 93, 65, 45, 55, 69, 78, 57, 65, 56, 95, 62, 59, 57, 64, 68, 77, 72, 87, 80, 72, 53, 60, 64, 55, 83, 66, 57, 52, 67, 64, 83, 84, 66, 61, 75, 57, 89, 74, 65, 63, 59, 78, 64, 54, 75, 59, 76, 60, 95, 90, 74, 64, 90, 76, 70, 48, 63, 53, 56, 63, 64, 65, 59, 50, 42, 64, 64, 50, 58, 63, 51, 58, 67, 50, 73, 68, 58, 83, 83, 61, 62, 86, 57, 50, 73, 51, 65, 76, 73, 74, 62, 64, 65, 63, 107, 61, 71, 62, 60, 67, 69, 73, 41, 52, 84, 97, 80, 74, 58, 41, 57, 50, 72, 68, 63, 62, 66, 69, 64, 66, 91, 76, 66, 55, 63, 57, 66, 56, 73, 58, 53, 70, 56, 70, 59, 49, 59, 31, 52, 59, 58, 62, 66, 69, 65, 83, 73, 65, 67, 70, 72, 49, 57, 56, 59, 67, 52, 81, 82, 51, 65, 81, 71, 99, 70, 80, 44, 65, 60, 74, 73, 62, 67, 56, 56, 50, 69, 57, 67, 55, 55, 55, 54, 63, 64, 62, 71, 54, 60, 73, 57, 60, 57, 67, 109, 56, 61, 56, 67, 101, 61, 71, 73, 57, 55, 60, 55, 74, 87, 58, 56, 57, 67, 75, 64, 73, 80, 71, 76, 52, 60, 61, 76, 60, 68, 57, 45, 50, 47, 70, 55, 61, 57, 83, 55, 70, 44, 70, 37, 68, 47, 72, 53, 55, 60, 68, 50, 81, 56, 70, 57, 64, 59, 64, 71, 63, 57, 59, 69, 56, 57, 66, 59, 85, 80, 54, 46, 49, 54, 74, 66, 66, 72, 58, 69, 57, 60, 54, 72, 53, 72, 61, 89, 67, 74, 62, 48, 68, 85, 60, 81, 62, 69, 62, 75, 49, 67, 61, 75, 59, 71, 68, 57, 69, 66, 98, 59, 61, 50, 80, 51, 60, 66, 64, 67, 68, 78, 86, 56, 53, 66, 54, 78, 58, 54, 65, 61, 70, 60, 69, 64, 65, 58, 73, 61, 46, 51, 47, 71, 84, 101, 55, 59, 67, 45, 75, 72, 72, 67, 56, 115, 99, 73, 63, 60, 76, 61, 72, 64, 63, 63, 69, 87, 40, 63, 60, 83, 78, 65, 59, 68, 72, 77, 49, 63, 102, 54, 46, 69, 54, 74, 56, 73, 57, 57, 87, 67, 49, 65, 69, 39, 56, 77, 121, 80, 48, 68, 56, 72, 85, 68, 55, 72, 67, 68, 65, 57, 74, 76, 71, 55, 58, 97, 65, 51, 71, 63, 41, 62, 59, 66, 61, 82, 47, 73, 58, 61, 66, 49, 70, 66, 63, 93, 68, 74, 46, 77, 68, 61, 61, 51, 63, 69, 62, 69, 60, 74, 60, 55, 61, 50, 52, 66, 67, 53, 74, 83, 65, 52, 74, 55, 79, 48, 51, 76, 86, 66, 89, 67, 65, 67, 49, 98, 69, 72, 67, 56, 64, 59, 72, 46, 68, 57, 85, 54, 95, 70, 52, 62, 68, 60, 79, 84, 58, 69, 62, 58, 48, 51, 61, 59, 56, 78, 65, 96, 64, 57, 48, 72, 81, 52, 59, 62, 64, 83, 60, 76, 75, 80, 49, 55, 56, 70, 59, 90, 54, 57, 62, 63, 41, 61, 55, 55, 60, 64, 71, 62, 88, 74, 105, 56, 66, 79, 87, 82, 55, 73, 59, 68, 61, 70, 52, 67, 69, 60, 76, 58, 67, 69, 81, 66, 59, 55, 58, 52, 64, 63, 66, 54, 64, 121, 65, 66, 63, 53, 55, 46, 71, 59, 90, 74, 79, 67, 44, 56, 56, 53, 61, 66, 63, 81, 68, 64, 61, 64, 81, 67, 57, 64, 56, 65, 66, 54, 73, 65, 72, 62, 63, 83, 52, 62, 69, 73, 58, 60, 65, 38, 52, 60, 66, 79, 47, 75, 62, 79, 61, 58, 78, 91, 62, 73, 61, 59, 83, 76, 78, 63, 57, 66, 47, 62, 50, 73, 64, 71, 76, 54, 59, 60, 56, 64, 60, 60, 82, 79, 60, 73, 80, 74, 58, 59, 45, 65, 79, 78, 53, 69, 65, 56, 62, 71, 63, 78, 61, 57, 58, 64, 64, 82, 64, 62, 98, 76, 77, 69, 43, 59, 54, 83, 60, 70, 84, 70, 67, 73, 59, 74, 62, 64, 61, 65, 69, 60, 46, 70, 58, 55, 59, 54, 78, 78, 80, 61, 87, 77, 75, 56, 77, 61, 99, 56, 62, 60, 50, 71, 67, 65, 55, 53, 45, 68, 54, 53, 63, 74, 58, 69, 49, 78, 95, 48, 78, 52, 95, 64, 84, 56, 53, 71, 56, 67, 62, 60, 84, 75, 79, 69, 72, 71, 56, 65, 72, 90, 74, 51, 65, 60, 66, 51, 59, 62, 81, 72, 68, 64, 64, 48, 59, 56, 69, 57, 57, 53, 51, 54, 64, 55, 60, 83, 50, 80, 66, 72, 79, 73, 67, 55, 55, 67, 64, 72, 52, 55, 109, 67, 50, 58, 57, 70, 85, 48, 57, 46, 52, 79, 56, 80, 70, 76, 72, 92, 47, 71, 74, 73, 56, 57, 62, 68, 47, 81, 64, 86, 50, 70, 63, 103, 75, 56, 89, 75, 56, 68, 71, 63, 61, 67, 55, 59, 72, 75, 57, 65, 48, 91, 74, 64, 47, 75, 96, 76, 82, 73, 56, 55, 104, 59, 79, 82, 85, 57, 59, 57, 61, 68, 80, 71, 50, 88, 78, 72, 67, 58, 59, 61, 83, 80, 53, 68, 37, 58, 106, 64, 103, 67, 82, 69, 45, 67, 67, 71, 79, 67, 69, 67, 66, 58, 60, 55, 48, 103, 63, 67, 70, 60, 62, 64, 68, 70, 43, 59, 61, 53, 57, 62, 71, 54, 66, 42, 61, 55, 57, 82, 63, 71, 60, 62, 77, 95, 69, 76, 64, 54, 89, 73, 62, 57, 53, 50, 63, 64, 65, 89, 54, 62, 78, 63, 57, 49, 67, 55, 58, 47, 61, 102, 65, 65, 60, 61, 63, 71, 47, 45, 54, 50, 49, 61, 73, 60, 68, 63, 86, 59, 64, 49, 64, 64, 71, 69, 65, 68, 66, 66, 82, 59, 65, 41, 70, 82, 59, 62, 63, 86, 65, 65, 61, 64, 65, 50, 83, 81, 59, 82, 52, 56, 75, 51, 68, 70, 81, 53, 66, 60, 52, 62, 111, 63, 66, 62, 63, 56, 51, 75, 78, 72, 67, 76, 62, 59, 68, 69, 73, 57, 82, 69, 64, 60, 57, 64, 82, 80, 105, 58, 76, 57, 129, 49, 82, 67, 55, 56, 55, 56, 78, 63, 54, 108, 80, 86, 67, 56, 68, 63, 58, 57, 71, 73, 52, 59, 79, 66, 63, 73, 63, 59, 71, 81, 74, 43, 71, 64, 43, 69, 58, 58, 62, 65, 81, 65, 54, 69, 57, 72, 82, 74, 65, 69, 45, 93, 58, 60, 54, 78, 58, 58, 74, 53, 62, 65, 66, 60, 71, 67, 61, 67, 62, 64, 60, 92, 64, 61, 60, 60, 52, 79, 67, 64, 81, 70, 54, 49, 94, 83, 83, 77, 100, 54, 51, 55, 56, 66, 51, 53, 64, 76, 80, 73, 54, 47, 70, 70, 93, 56, 56, 61, 86, 66, 49, 85, 77, 72, 48, 76, 66, 82, 51, 64, 54, 59, 58, 64, 121, 55, 70, 60, 56, 59, 53, 61, 73, 86, 64, 70, 72, 59, 83, 67, 114, 76, 59, 68, 65, 65, 75, 69, 77, 86, 52, 52, 67, 73, 65, 61, 50, 67, 58, 65, 54, 94, 59, 48, 68, 72, 76, 68, 54, 65, 50, 59, 46, 52, 63, 77, 86, 58, 62, 64, 61, 58, 63, 70, 77, 54, 54, 65, 58, 102, 66, 75, 58, 55, 54, 77, 53, 57, 47, 64, 57, 85, 83, 68, 67, 77, 61, 55, 59, 51, 65, 71, 68, 54, 56, 63, 52, 68, 54, 73, 59, 57, 53, 55, 57, 52, 54, 55, 83, 59, 71, 74, 64, 53, 46, 41, 91, 61, 58, 62, 64, 70, 61, 53, 82, 57, 69, 57, 70, 66, 75, 58, 61, 76, 52, 79, 70, 68, 57, 78, 63, 83, 78, 58, 62, 66, 61, 79, 59, 73, 76, 66, 110, 62, 73, 78, 64, 55, 69, 59, 73, 46, 59, 74, 67, 73, 76, 67, 59, 85, 69, 57, 78, 62, 60, 61, 79, 61, 69, 53, 59, 55, 47, 55, 50, 72, 77, 100, 52, 72, 59, 64, 65, 78, 57, 52, 73, 100, 79, 74, 51, 56, 103, 67, 78, 87, 50, 78, 57, 72, 62, 65, 60, 83, 60, 50, 74, 63, 69, 80, 65, 64, 96, 72, 63, 62, 53, 64, 60, 74, 53, 72, 89, 52, 71, 60, 70, 44, 51, 68, 110, 54, 58, 61, 57, 45, 82, 65, 62, 72, 72, 65, 88, 48, 84, 79, 70, 56, 56, 85, 77, 65, 53, 63, 52, 60, 67, 64, 56, 80, 51, 64, 83, 92, 51, 60, 82, 64, 70, 86, 73, 56, 61, 61, 69, 64, 69, 53, 59, 60, 54, 54, 56, 74, 54, 44, 65, 56, 49, 61, 75, 76, 75, 85, 94, 67, 70, 64, 60, 70, 60, 76, 63, 62, 93, 53, 67, 53, 60, 79, 60, 69, 81, 64, 76, 61, 65, 70, 64, 47, 59, 65, 77, 75, 58, 54, 48, 68, 103, 90, 68, 64, 59, 65, 63, 58, 63, 37, 58, 92, 93, 76, 47, 52, 62, 57, 103, 63, 50, 64, 73, 74, 60, 74, 55, 71, 64, 55, 65, 73, 59, 62, 74, 76, 64, 62, 56, 55, 71, 59, 72, 59, 69, 53, 69, 78, 125, 61, 67, 79, 56, 65, 70, 62, 54, 70, 56, 76, 62, 77, 53, 42, 70, 72, 64, 81, 65, 68, 47, 68, 53, 48, 75, 69, 67, 69, 71, 110, 70, 52, 59, 50, 58, 65, 75, 52, 57, 75, 75, 59, 57, 69, 56, 56, 63, 57, 75, 68, 57, 57, 65, 62, 61, 73, 55, 86, 73, 58, 65, 67, 76, 80, 47, 69, 56, 57, 60, 58, 57, 79, 69, 71, 58, 53, 68, 84, 56, 83, 60, 58, 42, 81, 61, 62, 77, 60, 71, 36, 64, 69, 58, 67, 68, 68, 54, 61, 91, 59, 54, 76, 61, 61, 59, 66, 62, 70, 55, 48, 62, 51, 83, 47, 58, 86, 59, 70, 51, 61, 65, 58, 76, 70, 73, 67, 76, 49, 50, 44, 60, 57, 61, 59, 67, 80, 69, 80, 57, 66, 77, 80, 73, 81, 62, 71, 59, 89, 68, 67, 123, 100, 49, 65, 56, 58, 62, 68, 64, 40, 54, 60, 57, 53, 75, 57, 61, 52, 92, 70, 57, 70, 87, 62, 65, 67, 77, 67, 94, 43, 57, 63, 70, 88, 69, 77, 62, 49, 44, 62, 56, 71, 47, 65, 71, 72, 56, 70, 75, 56, 71, 46, 61, 46, 49, 44, 58, 90, 57, 58, 61, 67, 52, 65, 54, 63, 55, 69, 58, 65, 66, 57, 53, 58, 63, 63, 75, 70, 52, 59, 97, 73, 52, 68, 60, 65, 70, 64, 74, 56, 55, 60, 63, 62, 48, 52, 62, 86, 61, 73, 73, 60, 70, 68, 70, 63, 63, 55, 59, 71, 65, 56, 90, 72, 83, 67, 61, 62, 73, 48, 47, 60, 50, 62, 75, 55, 68, 67, 52, 98, 70, 70, 77, 66, 42, 52, 72, 84, 62, 60, 51, 65, 56, 63, 57, 100, 83, 43, 82, 71, 64, 53, 51, 77, 61, 55, 59, 59, 76, 78, 52, 47, 61, 98, 98, 51, 73, 65, 83, 61, 75, 66, 61, 67, 107, 58, 66, 79, 78, 63, 56, 51, 54, 81, 85, 69, 70, 90, 80, 62, 68, 66, 49, 81, 59, 98, 67, 55, 45, 60, 91, 43, 96, 58, 70, 58, 57, 75, 44, 68, 72, 73, 68, 60, 47, 72, 51, 73, 64, 82, 64, 68, 61, 64, 62, 69, 79, 51, 46, 61, 60, 73, 69, 51, 56, 93, 81, 58, 69, 62, 65, 47, 58, 71, 67, 59, 80, 108, 56, 54, 54, 60, 93, 59, 67, 55, 64, 55, 71, 62, 63, 73, 55, 70, 58, 53, 64, 54, 67, 64, 57, 61, 60, 87, 71, 60, 68, 63, 58, 70, 53, 56, 83, 51, 62, 65, 48, 50, 55, 66, 65, 59, 78, 75, 50, 47, 63, 57, 58, 57, 65, 50, 67, 59, 64, 54, 72, 82, 67, 51, 71, 84, 73, 50, 52, 58, 45, 66, 92, 72, 56, 73, 64, 66, 64, 64, 54, 76, 55, 71, 69, 56, 51, 68, 107, 53, 60, 63, 77, 84, 58, 59, 79, 78, 97, 82, 56, 55, 80, 70, 49, 60, 78, 55, 66, 46, 73, 68, 82, 77, 95, 76, 53, 65, 119, 61, 71, 66, 57, 53, 71, 63, 93, 71, 58, 114, 67, 80, 51, 76, 70, 63, 60, 49, 58, 54, 56, 67, 90, 50, 53, 74, 65, 54, 67, 74, 93, 37, 70, 40, 66, 69, 41, 65, 54, 59, 66, 65, 62, 59, 63, 70, 84, 62, 60, 63, 51, 67, 64, 60, 49, 81, 64, 53, 85, 65, 60, 60, 60, 72, 63, 61, 49, 66, 60, 70, 70, 71, 62, 54, 56, 51, 50, 79, 76, 52, 64, 78, 77, 43, 75, 59, 69, 85, 73, 61, 63, 68, 78, 62, 69, 47, 64, 64, 64, 77, 62, 69, 74, 63, 93, 43, 61, 50, 77, 75, 68, 93, 53, 60, 80, 75, 80, 58, 83, 59, 55, 79, 59, 74, 98, 46, 76, 66, 66, 57, 55, 72, 68, 73, 50, 64, 93, 59, 57, 57, 105, 79, 59, 64, 51, 59, 68, 66, 71, 91, 57, 53, 52, 79, 60, 55, 57, 66, 78, 80, 65, 106, 63, 56, 48, 62, 92, 63, 73, 74, 61, 52, 55, 67, 61, 99, 79, 59, 58, 76, 60, 60, 56, 62, 78, 54, 48, 66, 77, 83, 53, 54, 53, 187, 54, 62, 85, 52, 50, 56, 73, 58, 79, 60, 66, 67, 66, 72, 37, 63, 56, 54, 64, 55, 71, 51, 68, 56, 68, 51, 76, 61, 52, 78, 66, 65, 58, 65, 65, 68, 79, 57, 59, 76, 75, 74, 46, 48, 65, 62, 66, 64, 58, 57, 76, 64, 72, 62, 69, 90, 66, 76, 59, 57, 60, 107, 59, 46, 54, 55, 50, 72, 54, 53, 67, 80, 58, 55, 45, 61, 68, 56, 53, 55, 53, 72, 75, 56, 67, 60, 77, 59, 129, 61, 67, 72, 59, 59, 70, 63, 59, 74, 62, 62, 73, 72, 55, 71, 64, 67, 59, 56, 46, 58, 62, 55, 65, 88, 69, 65, 80, 53, 59, 58, 81, 60, 63, 111, 83, 59, 60, 64, 61, 92, 60, 70, 44, 59, 65, 91, 43, 80, 46, 88, 47, 58, 50, 83, 81, 89, 57, 74, 88, 78, 53, 51, 61, 51, 68, 62, 56, 81, 75, 72, 71, 54, 76, 60, 95, 59, 117, 50, 56, 64, 71, 48, 74, 62, 50, 57, 58, 68, 73, 71, 60, 58, 73, 67, 63, 77, 85, 75, 84, 75, 59, 50, 61, 69, 61, 85, 59, 57, 40, 51, 54, 83, 70, 60, 69, 91, 68, 57, 54, 58, 67, 57, 56, 82, 71, 55, 58, 51, 66, 72, 60, 67, 74, 81, 62, 66, 60, 56, 62, 77, 87, 44, 77, 56, 111, 54, 50, 79, 98, 57, 84, 66, 97, 68, 66, 97, 55, 60, 66, 47, 59, 71, 54, 54, 65, 65, 74, 79, 98, 64, 69, 63, 68, 69, 88, 59, 58, 77, 58, 48, 60, 76, 56, 46, 63, 101, 59, 70, 54, 50, 58, 52, 99, 51, 44, 78, 72, 75, 57, 70, 83, 61, 61, 65, 56, 65, 46, 95, 59, 61, 82, 49, 60, 46, 42, 75, 49, 59, 69, 53, 65, 66, 98, 56, 70, 61, 73, 73, 62, 67, 72, 75, 56, 55, 70, 60, 49, 63, 59, 74, 58, 90, 68, 49, 52, 59, 58, 43, 70, 71, 55, 58, 63, 109, 57, 66, 52, 81, 51, 71, 55, 58, 65, 82, 82, 71, 59, 49, 108, 54, 96, 57, 60, 61, 60, 53, 46, 68, 73, 81, 57, 54, 63, 49, 43, 77, 76, 61, 54, 61, 69, 53, 77, 64, 50, 57, 63, 66, 74, 50, 58, 48, 63, 59, 57, 79, 78, 73, 53, 56, 77, 94, 53, 50, 47, 64, 73, 58, 76, 71, 56, 52, 60, 82, 63, 79, 60, 52, 66, 62, 93, 83, 67, 61, 53, 67, 89, 75, 59, 81, 64, 66, 67, 64, 86, 77, 87, 56, 58, 52, 71, 67, 47, 59, 63, 56, 66, 67, 54, 77, 54, 88, 52, 56, 82, 68, 80, 71, 50, 77, 53, 90, 63, 67, 113, 77, 70, 68, 53, 56, 55, 50, 46, 59, 46, 63, 55, 50, 70, 55, 59, 66, 72, 69, 69, 52, 70, 92, 60, 60, 70, 89, 111, 63, 61, 63, 81, 56, 55, 84, 68, 78, 66, 72, 57, 63, 79, 54, 70, 61, 46, 86, 112, 111, 73, 61, 103, 76, 56, 54, 54, 71, 63, 56, 55, 73, 74, 45, 53, 103, 51, 81, 67, 66, 77, 68, 56, 51, 49, 75, 72, 57, 93, 65, 72, 60, 65, 55, 68, 61, 49, 67, 66, 48, 85, 66, 82, 64, 76, 81, 60, 86, 65, 67, 59, 59, 61, 47, 62, 58, 72, 58, 60, 80, 44, 55, 88, 71, 39, 71, 50, 72, 53, 64, 51, 39, 52, 45, 54, 70, 60, 50, 88, 103, 73, 73, 49, 61, 68, 61, 60, 76, 48, 60, 50, 74, 63, 48, 66, 91, 62, 46, 76, 68, 64, 48, 93, 59, 66, 58, 57, 44, 65, 77, 62, 53, 62, 88, 73, 58, 47, 79, 95, 66, 81, 55, 54, 64, 88, 53, 90, 49, 82, 67, 47, 53, 60, 47, 74, 65, 74, 70, 61, 55, 61, 58, 58, 59, 43, 80, 71, 60, 57, 64, 82, 60, 80, 55, 74, 58, 68, 66, 72, 61, 68, 74, 72, 78, 42, 75, 85, 69, 37, 116, 77, 61, 67, 59, 44, 50, 66, 63, 57, 71, 67, 61, 65, 56, 56, 55, 66, 76, 60, 85, 78, 67, 51, 70, 55, 60, 61, 62, 61, 40, 67, 78, 74, 67, 67, 58, 58, 80, 100, 80, 83, 62, 65, 67, 65, 57, 57, 74, 66, 84, 56, 41, 72, 110, 72, 78, 60, 52, 64, 77, 56, 48, 69, 61, 52, 55, 49, 59, 77, 63, 55, 60, 74, 58, 73, 75, 82, 47, 45, 57, 45, 54, 64, 81, 86, 64, 54, 71, 55, 55, 73, 73, 69, 76, 65, 53, 51, 57, 74, 70, 45, 79, 49, 195, 61, 82, 67, 71, 70, 64, 69, 76, 70, 70, 88, 58, 73, 72, 55, 66, 65, 57, 90, 95, 43, 84, 56, 57, 77, 70, 68, 55, 67, 54, 52, 69, 60, 58, 87, 61, 108, 75, 71, 55, 114, 50, 53, 59, 54, 78, 62, 68, 78, 68, 75, 113, 75, 95, 49, 60, 62, 56, 57, 76, 54, 40, 56, 58, 105, 65, 62, 75, 71, 38, 69, 57, 68, 68, 60, 57, 33, 59, 45, 57, 80, 66, 75, 82, 65, 86, 81, 47, 67, 74, 44, 51, 67, 90, 45, 56, 68, 76, 62, 65, 72, 65, 72, 49, 50, 59, 60, 55, 80, 56, 66, 44, 68, 65, 61, 82, 80, 70, 58, 69, 58, 64, 56, 67, 61, 67, 68, 64, 51, 76, 70, 54, 95, 79, 67, 61, 51, 79, 67, 64, 78, 60, 55, 63, 71, 49, 49, 70, 46, 67, 101, 63, 55, 64, 58, 53, 90, 49, 61, 82, 89, 53, 77, 55, 57, 75, 93, 71, 40, 63, 70, 66, 60, 50, 52, 49, 69, 81, 72, 58, 65, 61, 114, 55, 61, 72, 59, 56, 54, 62, 62, 93, 57, 81, 50, 68, 58, 63, 72, 73, 58, 62, 55, 93, 71, 57, 56, 66, 65, 69, 68, 69, 59, 51, 64, 65, 60, 93, 79, 74, 73, 76, 74, 55, 79, 77, 68, 58, 58, 74, 68, 76, 58, 58, 52, 47, 61, 56, 69, 57, 62, 92, 68, 70, 69, 47, 79, 54, 57, 75, 78, 63, 63, 65, 64, 65, 70, 66, 48, 74, 59, 68, 60, 65, 58, 65, 77, 73, 72, 58, 78, 86, 77, 66, 37, 45, 60, 63, 75, 59, 69, 64, 44, 68, 69, 61, 77, 61, 58, 58, 78, 80, 64, 79, 58, 46, 70, 106, 67, 57, 66, 71, 50, 74, 48, 72, 92, 57, 91, 62, 58, 54, 69, 40, 42, 58, 63, 65, 67, 65, 75, 67, 66, 44, 65, 61, 67, 79, 65, 54, 71, 50, 70, 94, 82, 71, 53, 52, 75, 61, 41, 74, 54, 63, 46, 63, 69, 64, 68, 80, 65, 48, 62, 78, 62, 67, 75, 56, 66, 100, 95, 40, 51, 59, 86, 64, 82, 72, 62, 72, 53, 100, 72, 83, 60, 107, 58, 62, 60, 59, 84, 116, 61, 68, 63, 69, 59, 75, 69, 77, 63, 52, 54, 57, 66, 57, 67, 60, 78, 63, 78, 56, 98, 90, 44, 65, 62, 55, 71, 49, 60, 68, 49, 64, 62, 82, 69, 81, 81, 71, 57, 74, 86, 46, 62, 64, 47, 65, 54, 75, 55, 77, 86, 59, 61, 65, 53, 76, 72, 49, 62, 88, 59, 47, 75, 65, 62, 58, 75, 73, 65, 78, 59, 57, 72, 68, 74, 71, 61, 68, 58, 75, 56, 64, 73, 55, 67, 81, 88, 69, 87, 63, 61, 65, 87, 67, 84, 58, 76, 73, 60, 88, 64, 88, 51, 60, 83, 59, 43, 52, 59, 75, 52, 67, 66, 65, 68, 63, 48, 71, 51, 85, 77, 66, 73, 77, 61, 72, 55, 67, 63, 84, 79, 61, 63, 63, 60, 53, 110, 63, 36, 65, 68, 60, 64, 67, 52, 67, 61, 65, 66, 36, 53, 64, 54, 66, 66, 56, 59, 48, 53, 51, 52, 61, 67, 51, 66, 57, 106, 60, 80, 66, 54, 91, 68, 50, 49, 74, 64, 47, 62, 90, 58, 52, 70, 65, 69, 43, 62, 52, 57, 52, 66, 66, 59, 61, 56, 63, 64, 125, 59, 56, 64, 61, 70, 62, 61, 55, 72, 64, 63, 87, 59, 76, 57, 64, 70, 69, 55, 65, 53, 69, 61, 71, 75, 73, 76, 53, 63, 64, 62, 71, 65, 64, 49, 77, 69, 79, 77, 54, 59, 54, 81, 71, 66, 67, 64, 53, 68, 64, 53, 69, 55, 63, 76, 58, 85, 108, 61, 59, 56, 70, 82, 55, 62, 86, 84, 35, 66, 70, 72, 73, 72, 58, 64, 54, 61, 82, 54, 66, 63, 53, 93, 79, 55, 75, 67, 59, 74, 62, 69, 108, 91, 61, 71, 57, 44, 48, 79, 67, 77, 59, 54, 50, 58, 62, 78, 77, 56, 64, 64, 49, 68, 61, 58, 50, 71, 92, 69, 68, 105, 71, 52, 74, 65, 51, 53, 57, 63, 61, 69, 66, 55, 56, 58, 51, 61, 75, 73, 64, 47, 61, 47, 78, 54, 67, 93, 106, 110, 68, 61, 60, 87, 60, 46, 69, 55, 55, 50, 71, 93, 53, 93, 62, 56, 72, 59, 50, 104, 46, 62, 51, 79, 47, 53, 61, 53, 43, 77, 72, 61, 66, 73, 50, 80, 62, 59, 80, 64, 44, 67, 72, 75, 58, 57, 66, 65, 55, 81, 59, 76, 51, 63, 70, 65, 59, 59, 70, 64, 70, 87, 48, 71, 60, 59, 76, 65, 81, 72, 81, 49, 54, 70, 56, 67, 96, 57, 67, 58, 77, 69, 59, 99, 72, 72, 70, 68, 52, 67, 73, 63, 65, 65, 66, 63, 64, 56, 80, 72, 88, 50, 57, 60, 87, 97, 54, 70, 55, 77, 53, 41, 66, 48, 60, 51, 74, 63, 72, 83, 52, 61, 49, 62, 74, 65, 70, 65, 75, 83, 56, 63, 57, 47, 83, 97, 58, 72, 73, 77, 66, 85, 90, 65, 66, 103, 63, 71, 76, 64, 70, 72, 47, 69, 53, 74, 59, 69, 78, 70, 95, 67, 52, 62, 68, 73, 54, 73, 72, 65, 71, 103, 66, 107, 58, 66, 61, 60, 69, 71, 55, 83, 51, 69, 46, 73, 68, 77, 49, 60, 104, 63, 58, 63, 68, 71, 88, 86, 65, 65, 70, 52, 67, 61, 45, 55, 60, 75, 55, 57, 68, 60, 63, 45, 75, 59, 58, 63, 82, 58, 67, 49, 58, 83, 52, 62, 69, 69, 59, 56, 49, 106, 69, 59, 101, 64, 59, 76, 70, 51, 53, 49, 60, 47, 101, 78, 66, 52, 51, 54, 73, 54, 62, 49, 62, 61, 67, 50, 44, 61, 67, 69, 62, 36, 75, 73, 80, 63, 57, 70, 60, 65, 73, 71, 61, 59, 61, 65, 61, 65, 72, 70, 58, 53, 84, 61, 62, 46, 69, 69, 47, 69, 84, 62, 42, 79, 69, 57, 51, 48, 50, 74, 56, 55, 62, 77, 60, 74, 59, 59, 62, 55, 61, 62, 72, 64, 93, 72, 77, 56, 67, 72, 55, 78, 52, 71, 50, 66, 63, 67, 82, 113, 97, 77, 62, 110, 72, 70, 55, 60, 54, 68, 72, 90, 73, 69, 102, 63, 71, 65, 55, 80, 59, 60, 63, 50, 63, 58, 52, 84, 50, 77, 60, 55, 61, 80, 98, 63, 62, 58, 55, 58, 60, 56, 57, 60, 66, 74, 64, 61, 76, 43, 67, 51, 80, 38, 56, 72, 85, 66, 54, 61, 64, 48, 61, 48, 59, 88, 60, 54, 67, 56, 54, 63, 84, 63, 83, 70, 70, 48, 66, 73, 69, 76, 41, 48, 47, 57, 64, 58, 62, 85, 47, 62, 50, 65, 66, 65, 55, 63, 63, 58, 54, 62, 60, 63, 96, 76, 59, 50, 66, 67, 53, 57, 63, 83, 52, 73, 81, 74, 70, 51, 54, 67, 72, 81, 55, 48, 68, 66, 70, 96, 63, 57, 68, 66, 67, 63, 62, 76, 43, 60, 68, 52, 53, 59, 62, 105, 64, 66, 75, 74, 50, 59, 69, 55, 90, 61, 57, 68, 89, 57, 60, 58, 66, 50, 57, 38, 88, 67, 89, 58, 49, 79, 65, 77, 60, 57, 55, 54, 68, 60, 85, 58, 78, 53, 83, 74, 66, 75, 62, 63, 58, 47, 64, 70, 65, 61, 65, 59, 39, 67, 59, 67, 50, 57, 47, 81, 77, 68, 73, 85, 56, 62, 86, 51, 44, 71, 62, 61, 62, 80, 59, 63, 68, 43, 60, 51, 50, 50, 47, 75, 64, 51, 67, 68, 69, 68, 77, 50, 57, 63, 54, 68, 57, 62, 53, 54, 56, 59, 67, 92, 47, 57, 56, 63, 71, 66, 71, 71, 48, 53, 111, 54, 70, 60, 79, 63, 74, 59, 85, 66, 61, 66, 82, 66, 49, 63, 78, 67, 54, 54, 47, 59, 54, 59, 63, 57, 68, 69, 75, 62, 63, 60, 68, 38, 64, 60, 51, 67, 65, 64, 77, 67, 68, 61, 72, 41, 105, 64, 50, 74, 66, 67, 81, 69, 55, 65, 57, 51, 59, 66, 57, 68, 110, 100, 61, 60, 63, 86, 117, 73, 64, 75, 62, 69, 93, 64, 44, 53, 85, 71, 70, 46, 57, 51, 73, 60, 53, 78, 61, 60, 67, 59, 81, 64, 84, 49, 67, 68, 63, 66, 71, 80, 55, 69, 69, 113, 66, 64, 66, 63, 61, 49, 75, 80, 76, 93, 71, 78, 42, 77, 69, 55, 71, 59, 69, 71, 56, 84, 71, 73, 55, 72, 71, 59, 93, 56, 58, 70, 77, 65, 52, 110, 71, 54, 83, 63, 72, 55, 46, 71, 63, 84, 68, 70, 70, 55, 66, 63, 53, 88, 53, 75, 86, 63, 67, 108, 78, 49, 101, 45, 42, 80, 66, 60, 85, 63, 89, 87, 64, 79, 64, 71, 78, 61, 68, 66, 65, 88, 70, 79, 88, 60, 50, 71, 53, 76, 49, 70, 65, 76, 53, 93, 62, 75, 56, 74, 54, 54, 69, 62, 79, 63, 88, 41, 91, 83, 47, 63, 69, 48, 64, 103, 63, 67, 74, 65, 61, 57, 42, 54, 67, 77, 57, 66, 62, 37, 77, 48, 65, 67, 65, 57, 81, 55, 57, 68, 49, 69, 71, 64, 67, 69, 54, 76, 67, 39, 69, 76, 66, 65, 62, 76, 70, 75, 88, 60, 38, 79, 55, 44, 56, 68, 69, 40, 62, 62, 45, 69, 72, 56, 62, 57, 110, 59, 94, 42, 75, 59, 51, 41, 58, 77, 66, 69, 86, 60, 69, 81, 68, 87, 47, 49, 64, 77, 70, 74, 44, 56, 62, 95, 85, 74, 78, 67, 41, 57, 55, 52, 87, 60, 68, 71, 76, 49, 47, 55, 70, 68, 62, 71, 72, 75, 56, 56, 71, 61, 79, 82, 48, 52, 77, 75, 46, 79, 53, 66, 69, 71, 96, 63, 44, 72, 56, 59, 68, 57, 59, 68, 60, 74, 79, 58, 62, 65, 53, 90, 73, 72, 72, 48, 62, 69, 55, 55, 81, 77, 64, 57, 70, 81, 57, 65, 43, 64, 59, 40, 65, 52, 66, 70, 98, 48, 67, 74, 69, 75, 62, 44, 68, 64, 83, 78, 58, 89, 67, 52, 66, 52, 83, 75, 66, 50, 59, 67, 64, 68, 67, 58, 65, 79, 60, 66, 81, 61, 62, 62, 74, 74, 48, 84, 75, 99, 49, 75, 63, 64, 64, 59, 78, 84, 93, 81, 63, 58, 62, 61, 55, 70, 78, 48, 79, 111, 83, 62, 67, 59, 60, 44, 62, 50, 47, 88, 85, 47, 58, 54, 51, 55, 80, 46, 72, 58, 65, 75, 82, 49, 69, 60, 77, 71, 53, 59, 46, 66, 62, 61, 68, 48, 70, 57, 76, 70, 59, 65, 75, 73, 71, 47, 48, 66, 112, 70, 83, 51, 42, 70, 71, 88, 46, 37, 65, 50, 76, 75, 65, 78, 78, 75, 61, 60, 54, 67, 59, 65, 55, 67, 66, 75, 65, 56, 66, 58, 84, 54, 56, 68, 63, 80, 64, 71, 69, 49, 52, 67, 74, 49, 60, 54, 67, 75, 69, 75, 63, 69, 47, 65, 80, 61, 68, 66, 60, 74, 66, 44, 60, 63, 78, 69, 57, 79, 78, 94, 65, 66, 63, 50, 70, 73, 66, 77, 67, 86, 51, 38, 63, 63, 96, 80, 62, 74, 64, 57, 58, 58, 62, 77, 42, 58, 78, 44, 75, 47, 59, 59, 58, 79, 73, 81, 64, 54, 62, 60, 81, 85, 98, 62, 48, 59, 71, 76, 59, 62, 96, 64, 59, 54, 73, 77, 77, 56, 40, 47, 75, 60, 71, 61, 65, 69, 77, 55, 68, 59, 60, 55, 46, 68, 71, 59, 60, 70, 75, 57, 82, 79, 79, 57, 59, 54, 82, 59, 80, 49, 62, 67, 65, 58, 79, 59, 80, 64, 65, 68, 75, 48, 62, 48, 75, 53, 110, 73, 47, 53, 62, 54, 56, 80, 63, 55, 56, 60, 72, 49, 75, 74, 67, 49, 75, 53, 51, 65, 57, 53, 62, 57, 66, 48, 65, 60, 56, 68, 68, 63, 56, 92, 82, 55, 58, 60, 68, 70, 56, 78, 80, 55, 73, 66, 59, 71, 69, 56, 47, 58, 61, 72, 82, 71, 58, 97, 67, 74, 64, 48, 60, 67, 56, 66, 47, 92, 104, 68, 56, 67, 66, 78, 67, 68, 64, 48, 64, 60, 53, 62, 39, 103, 82, 54, 54, 98, 71, 69, 55, 71, 67, 68, 77, 87, 75, 82, 100, 86, 100, 62, 74, 46, 69, 63, 69, 71, 46, 75, 76, 91, 53, 62, 65, 78, 80, 48, 59, 57, 115, 61, 52, 110, 59, 50, 57, 74, 78, 53, 84, 56, 50, 79, 87, 72, 59, 77, 85, 76, 97, 71, 53, 46, 80, 58, 56, 77, 78, 43, 66, 66, 51, 52, 62, 46, 60, 52, 89, 67, 76, 70, 51, 51, 84, 46, 62, 50, 39, 49, 59, 73, 66, 91, 58, 68, 65, 71, 54, 71, 56, 54, 72, 66, 52, 69, 57, 77, 71, 68, 55, 66, 56, 88, 54, 74, 57, 84, 89, 60, 82, 58, 70, 63, 62, 64, 82, 68, 59, 61, 54, 64, 73, 70, 47, 109, 57, 66, 79, 47, 56, 99, 73, 68, 81, 74, 63, 74, 57, 95, 68, 99, 44, 59, 67, 64, 70, 71, 65, 69, 38, 61, 39, 72, 58, 75, 83, 61, 56, 88, 73, 56, 107, 56, 68, 51, 93, 86, 62, 52, 66, 54, 51, 73, 48, 71, 52, 51, 71, 59, 61, 99, 68, 55, 74, 59, 63, 58, 59, 54, 67, 62, 45, 49, 65, 69, 63, 53, 62, 74, 64, 44, 56, 60, 57, 68, 69, 66, 47, 62, 65, 60, 55, 44, 66, 77, 74, 78, 71, 55, 63, 68, 65, 82, 49, 50, 63, 61, 69, 69, 64, 76, 49, 86, 88, 49, 53, 66, 66, 80, 77, 62, 65, 84, 65, 79, 51, 57, 73, 58, 72, 56, 48, 89, 127, 53, 57, 69, 57, 65, 61, 44, 71, 97, 69, 70, 86, 62, 84, 46, 64, 63, 53, 61, 87, 67, 60, 55, 60, 58, 54, 65, 75, 50, 61, 60, 61, 95, 50, 51, 87, 62, 58, 80, 75, 70, 47, 64, 33, 77, 68, 61, 61, 90, 52, 77, 76, 55, 83, 75, 59, 78, 66, 87, 53, 59, 124, 66, 60, 54, 65, 93, 91, 31, 88, 61, 63, 62, 54, 64, 65, 78, 88, 62, 68, 71, 76, 64, 97, 59, 67, 61, 65, 60, 54, 63, 63, 67, 94, 50, 57, 60, 55, 61, 72, 62, 68, 95, 64, 127, 44, 58, 55, 63, 69, 53, 62, 67, 66, 57, 45, 82, 57, 53, 70, 65, 52, 65, 52, 74, 82, 80, 86, 66, 54, 54, 73, 51, 68, 71, 60, 63, 67, 39, 48, 47, 65, 56, 112, 62, 46, 75, 101, 69, 59, 71, 79, 62, 62, 51, 65, 45, 68, 66, 44, 87, 74, 114, 65, 61, 66, 82, 68, 44, 93, 60, 72, 66, 52, 60, 58, 86, 65, 59, 69, 79, 76, 72, 78, 57, 73, 74, 61, 69, 81, 67, 66, 59, 57, 60, 83, 57, 50, 61, 63, 68, 86, 114, 51, 71, 46, 49, 60, 78, 68, 58, 67, 73, 91, 67, 58, 63, 76, 62, 61, 79, 64, 76, 58, 77, 83, 64, 65, 131, 60, 53, 61, 65, 52, 49, 94, 67, 70, 60, 60, 66, 61, 40, 66, 63, 65, 72, 79, 74, 82, 101, 70, 53, 63, 62, 62, 60, 52, 59, 73, 103, 60, 55, 87, 51, 60, 62, 58, 68, 65, 56, 64, 85, 58, 48, 54, 72, 54, 57, 72, 59, 119, 53, 79, 73, 63, 63, 68, 76, 52, 69, 64, 81, 76, 70, 54, 71, 54, 70, 58, 57, 83, 58, 69, 73, 61, 69, 88, 70, 54, 59, 64, 62, 79, 45, 68, 67, 97, 49, 74, 47, 73, 57, 78, 65, 75, 83, 56, 76, 68, 52, 72, 54, 72, 105, 76, 59, 60, 71, 59, 45, 81, 73, 68, 64, 71, 73, 61, 70, 72, 43, 68, 71, 79, 50, 71, 64, 58, 56, 98, 54, 78, 59, 63, 84, 44, 58, 110, 62, 72, 65, 63, 46, 98, 78, 58, 67, 62, 63, 60, 57, 40, 81, 89, 57, 63, 49, 45, 63, 70, 63, 60, 80, 69, 62, 70, 66, 68, 72, 96, 71, 68, 84, 73, 56, 64, 62, 56, 57, 34, 56, 77, 42, 45, 51, 53, 46, 64, 60, 76, 82, 85, 60, 59, 65, 64, 53, 64, 48, 65, 68, 50, 63, 101, 83, 39, 67, 78, 87, 95, 75, 48, 69, 56, 101, 66, 65, 82, 57, 70, 121, 77, 60, 61, 79, 53, 61, 58, 49, 67, 81, 56, 51, 84, 52, 51, 56, 72, 64, 97, 64, 61, 67, 99, 51, 50, 65, 71, 72, 52, 66, 48, 75, 52, 51, 50, 83, 58, 65, 65, 42, 48, 62, 65, 90, 65, 50, 50, 50, 72, 71, 88, 51, 87, 51, 58, 43, 62, 73, 70, 67, 87, 57, 59, 77, 92, 56, 75, 56, 64, 58, 64, 56, 73, 68, 53, 67, 69, 55, 64, 107, 77, 64, 52, 75, 54, 83, 63, 55, 70, 66, 53, 70, 82, 52, 47, 48, 82, 68, 74, 77, 80, 50, 58, 42, 68, 62, 66, 70, 60, 73, 55, 57, 67, 52, 66, 76, 55, 59, 76, 99, 61, 104, 107, 54, 51, 95, 72, 54, 64, 64, 60, 91, 73, 60, 68, 90, 60, 65, 75, 67, 77, 60, 61, 52, 73, 60, 94, 59, 36, 55, 70, 76, 51, 78, 68, 85, 58, 63, 58, 69, 43, 63, 65, 57, 84, 58, 84, 65, 68, 49, 121, 64, 73, 72, 69, 49, 68, 66, 55, 62, 72, 56, 61, 72, 72, 52, 58, 69, 52, 53, 76, 60, 78, 61, 82, 66, 62, 76, 60, 66, 47, 59, 80, 45, 53, 58, 71, 56, 71, 71, 51, 69, 68, 57, 75, 71, 52, 88, 61, 56, 75, 73, 59, 71, 63, 73, 73, 53, 44, 65, 64, 67, 68, 52, 57, 58, 77, 59, 63, 73, 72, 72, 50, 71, 77, 55, 44, 65, 65, 66, 62, 60, 55, 46, 59, 63, 85, 79, 54, 59, 47, 73, 64, 60, 83, 59, 61, 57, 77, 72, 74, 59, 58, 66, 58, 71, 50, 65, 45, 57, 53, 60, 53, 67, 58, 89, 63, 64, 56, 55, 56, 49, 70, 68, 69, 80, 99, 61, 86, 65, 65, 86, 66, 85, 46, 59, 64, 57, 59, 80, 72, 110, 100, 78, 60, 78, 65, 50, 60, 55, 70, 84, 50, 94, 59, 47, 91, 65, 69, 45, 61, 61, 69, 62, 64, 62, 82, 58, 81, 99, 69, 58, 67, 57, 57, 74, 54, 72, 73, 58, 59, 102, 81, 59, 59, 51, 59, 78, 74, 57, 65, 76, 107, 77, 61, 69, 63, 39, 79, 52, 60, 76, 55, 58, 63, 71, 46, 70, 53, 50, 73, 67, 62, 56, 58, 71, 62, 70, 96, 49, 68, 57, 91, 64, 72, 61, 58, 65, 59, 58, 41, 64, 58, 68, 57, 70, 62, 65, 60, 53, 77, 46, 58, 67, 55, 64, 92, 65, 50, 61, 59, 62, 76, 55, 71, 61, 59, 58, 54, 72, 52, 86, 57, 54, 70, 72, 69, 69, 52, 62, 59, 64, 48, 59, 62, 61, 62, 66, 66, 77, 71, 52, 65, 67, 58, 67, 61, 77, 49, 125, 77, 57, 50, 65, 49, 52, 83, 64, 86, 46, 49, 44, 57, 70, 47, 60, 70, 78, 74, 57, 57, 59, 54, 78, 64, 74, 64, 62, 76, 58, 59, 70, 42, 54, 62, 62, 88, 80, 57, 126, 74, 62, 63, 60, 59, 74, 73, 65, 49, 62, 90, 29, 79, 62, 57, 62, 59, 50, 60, 59, 80, 62, 60, 66, 63, 68, 55, 62, 54, 53, 52, 74, 52, 61, 64, 53, 54, 63, 55, 63, 67, 62, 60, 62, 54, 69, 71, 65, 78, 68, 66, 96, 85, 61, 59, 71, 45, 50, 78, 72, 64, 81, 62, 54, 70, 86, 68, 61, 67, 53, 63, 63, 56, 67, 48, 60, 57, 70, 46, 68, 73, 82, 72, 60, 63, 78, 93, 60, 57, 50, 54, 56, 70, 67, 53, 58, 61, 61, 77, 46, 68, 73, 55, 77, 50, 69, 55, 72, 61, 64, 57, 96, 61, 53, 74, 56, 39, 49, 55, 75, 67, 76, 58, 93, 79, 53, 59, 75, 58, 45, 68, 75, 55, 47, 87, 60, 49, 53, 63, 66, 92, 68, 76, 78, 57, 53, 61, 55, 60, 60, 86, 68, 64, 56, 76, 43, 83, 58, 65, 63, 54, 54, 62, 78, 71, 68, 65, 69, 54, 71, 59, 53, 57, 64, 75, 136, 87, 108, 49, 49, 62, 58, 62, 76, 69, 57, 60, 49, 50, 66, 69, 75, 58, 79, 54, 73, 84, 69, 69, 71, 57, 64, 58, 78, 59, 74, 79, 68, 68, 64, 99, 50, 65, 54, 75, 68, 83, 66, 55, 69, 62, 65, 54, 69, 56, 68, 65, 55, 74, 58, 65, 55, 61, 74, 64, 79, 58, 69, 85, 66, 70, 48, 59, 57, 61, 65, 66, 66, 59, 47, 56, 69, 65, 79, 80, 56, 63, 64, 66, 83, 63, 78, 75, 47, 78, 86, 70, 58, 68, 68, 47, 76, 59, 80, 116, 101, 65, 64, 54, 61, 61, 72, 61, 64, 50, 50, 68, 58, 88, 69, 54, 58, 55, 59, 68, 59, 69, 60, 50, 57, 72, 90, 67, 63, 75, 61, 67, 52, 76, 48, 57, 65, 55, 48, 55, 66, 72, 69, 70, 64, 79, 61, 88, 48, 68, 56, 78, 97, 60, 72, 63, 77, 76, 77, 65, 83, 75, 56, 62, 54, 69, 70, 48, 87, 66, 74, 67, 54, 56, 61, 67, 46, 63, 57, 98, 62, 55, 87, 55, 60, 62, 60, 62, 68, 78, 81, 66, 72, 59, 62, 56, 71, 61, 56, 49, 59, 57, 53, 53, 69, 76, 97, 50, 60, 87, 72, 63, 64, 78, 63, 84, 53, 99, 74, 65, 68, 84, 56, 64, 80, 51, 58, 77, 50, 64, 62, 68, 66, 129, 85, 55, 57, 67, 61, 59, 65, 83, 81, 81, 59, 76, 53, 79, 59, 58, 66, 74, 65, 54, 66, 75, 69, 76, 81, 57, 72, 78, 78, 58, 92, 92, 56, 75, 74, 60, 54, 60, 86, 68, 50, 56, 57, 55, 56, 68, 61, 79, 54, 51, 65, 48, 84, 99, 66, 58, 64, 41, 86, 72, 62, 59, 52, 103, 71, 59, 54, 79, 63, 54, 70, 50, 65, 52, 42, 58, 51, 67, 69, 62, 54, 60, 52, 59, 56, 76, 62, 62, 63, 72, 56, 58, 66, 57, 83, 56, 68, 61, 78, 57, 75, 57, 98, 60, 64, 72, 74, 57, 65, 88, 74, 88, 79, 67, 76, 60, 84, 71, 55, 63, 83, 60, 62, 65, 83, 67, 46, 46, 88, 67, 65, 90, 84, 70, 76, 58, 87, 73, 57, 52, 58, 58, 61, 61, 64, 56, 101, 61, 58, 56, 68, 55, 64, 55, 69, 49, 74, 56, 68, 64, 67, 55, 62, 82, 66, 74, 49, 65, 75, 57, 50, 54, 49, 76, 76, 38, 52, 57, 73, 88, 71, 66, 59, 68, 58, 65, 55, 54, 62, 59, 64, 64, 62, 81, 86, 78, 53, 51, 72, 50, 57, 43, 54, 103, 61, 59, 72, 74, 45, 73, 51, 88, 66, 63, 85, 63, 79, 76, 63, 68, 52, 62, 57, 60, 86, 71, 60, 69, 73, 72, 95, 61, 76, 69, 57, 53, 100, 58, 70, 55, 87, 62, 71, 55, 56, 81, 60, 68, 59, 46, 95, 81, 54, 74, 61, 53, 73, 44, 67, 72, 52, 83, 63, 66, 48, 56, 57, 49, 98, 65, 78, 66, 68, 65, 50, 69, 78, 65, 72, 66, 70, 84, 90, 63, 70, 131, 59, 48, 58, 73, 74, 81, 63, 53, 59, 46, 55, 53, 59, 79, 59, 63, 55, 62, 70, 68, 66, 108, 57, 72, 50, 62, 61, 55, 47, 44, 74, 49, 77, 82, 65, 59, 61, 62, 53, 42, 62, 75, 68, 51, 72, 55, 57, 105, 69, 85, 64, 63, 69, 58, 66, 101, 92, 77, 57, 72, 67, 64, 84, 54, 55, 66, 63, 63, 62, 76, 85, 60, 66, 75, 64, 83, 60, 76, 53, 59, 58, 61, 86, 57, 70, 72, 56, 71, 67, 69, 82, 55, 69, 97, 56, 59, 79, 91, 56, 60, 83, 83, 73, 62, 80, 69, 69, 55, 58, 59, 61, 63, 51, 52, 68, 62, 61, 62, 60, 61, 58, 92, 100, 59, 67, 45, 81, 68, 61, 60, 97, 65, 56, 69, 61, 56, 64, 57, 94, 64, 90, 67, 96, 63, 89, 60, 57, 58, 61, 59, 74, 51, 70, 47, 64, 67, 60, 70, 54, 62, 75, 73, 58, 74, 53, 48, 49, 56, 65, 58, 89, 61, 53, 63, 59, 51, 81, 73, 65, 67, 73, 66, 57, 56, 61, 69, 56, 78, 67, 75, 53, 52, 76, 91, 49, 58, 90, 77, 73, 49, 58, 78, 56, 84, 63, 51, 61, 60, 59, 64, 65, 86, 57, 54, 59, 55, 91, 73, 59, 74, 58, 98, 69, 69, 60, 58, 53, 52, 44, 61, 73, 74, 65, 67, 48, 56, 67, 67, 55, 63, 61, 45, 51, 59, 45, 84, 53, 60, 66, 62, 52, 61, 86, 61, 74, 52, 57, 56, 65, 60, 68, 65, 63, 78, 61, 54, 76, 54, 65, 69, 67, 94, 66, 64, 79, 80, 73, 54, 73, 56, 55, 61, 59, 61, 60, 59, 86, 74, 129, 59, 69, 45, 56, 58, 59, 136, 56, 74, 59, 52, 67, 66, 58, 60, 60, 48, 53, 90, 55, 68, 63, 54, 66, 56, 87, 60, 60, 70, 52, 71, 69, 63, 45, 75, 60, 92, 44, 58, 106, 65, 84, 68, 61, 64, 66, 84, 56, 64, 59, 78, 47, 69, 76, 66, 53, 51, 76, 69, 72, 73, 62, 53, 49, 63, 69, 51, 62, 52, 59, 68, 65, 64, 67, 69, 57, 61, 65, 78, 47, 69, 61, 90, 57, 64, 39, 73, 67, 55, 54, 51, 75, 57, 65, 62, 61, 64, 81, 68, 38, 61, 103, 57, 64, 58, 88, 44, 61, 62, 79, 67, 67, 61, 62, 53, 49, 56, 49, 67, 55, 59, 80, 64, 69, 60, 56, 70, 62, 43, 59, 57, 67, 71, 71, 51, 60, 65, 67, 65, 60, 74, 65, 66, 44, 57, 88, 56, 78, 67, 73, 64, 80, 49, 58, 72, 61, 61, 61, 63, 76, 65, 74, 71, 62, 77, 63, 59, 61, 60, 64, 92, 77, 71, 59, 101, 73, 74, 65, 56, 86, 66, 71, 55, 81, 65, 50, 69, 62, 72, 56, 94, 69, 52, 69, 70, 57, 63, 54, 60, 58, 76, 52, 65, 78, 66, 64, 69, 67, 59, 52, 65, 59, 72, 71, 82, 122, 62, 104, 59, 61, 73, 59, 59, 74, 63, 69, 68, 44, 48, 67, 48, 67, 47, 48, 69, 65, 61, 69, 63, 65, 50, 61, 51, 69, 50, 78, 68, 66, 68, 63, 101, 66, 57, 100, 90, 53, 93, 61, 77, 61, 74, 71, 61, 69, 61, 64, 62, 64, 60, 59, 63, 68, 67, 89, 34, 89, 72, 57, 71, 81, 84, 78, 69, 71, 58, 70, 71, 64, 72, 49, 70, 75, 66, 61, 67, 68, 51, 53, 47, 94, 62, 81, 69, 82, 64, 58, 41, 74, 62, 45, 47, 77, 64, 77, 103, 106, 115, 61, 57, 55, 48, 73, 60, 73, 44, 56, 89, 68, 87, 62, 52, 59, 54, 87, 57, 55, 44, 53, 58, 59, 80, 58, 74, 83, 59, 61, 74, 59, 81, 62, 58, 85, 60, 51, 69, 65, 58, 55, 71, 60, 67, 68, 71, 58, 62, 69, 73, 67, 75, 51, 68, 74, 87, 41, 58, 87, 43, 60, 77, 62, 71, 44, 67, 84, 66, 71, 68, 54, 73, 56, 69, 58, 57, 67, 57, 95, 56, 75, 66, 61, 55, 68, 59, 65, 70, 48, 60, 74, 52, 58, 56, 78, 66, 66, 76, 66, 62, 67, 77, 57, 51, 63, 49, 80, 57, 60, 69, 67, 96, 55, 77, 55, 108, 61, 70, 59, 63, 56, 67, 49, 70, 72, 63, 64, 45, 57, 53, 60, 88, 80, 57, 66, 52, 73, 60, 66, 61, 62, 58, 61, 55, 78, 59, 74, 49, 66, 65, 63, 57, 80, 62, 69, 75, 79, 56, 59, 72, 102, 70, 46, 86, 57, 66, 60, 50, 49, 70, 76, 80, 57, 62, 54, 59, 62, 57, 85, 92, 80, 53, 62, 62, 67, 50, 49, 55, 66, 59, 80, 72, 61, 65, 62, 85, 68, 54, 73, 68, 62, 66, 66, 53, 61, 64, 66, 84, 53, 59, 73, 54, 67, 90, 66, 47, 63, 69, 45, 68, 62, 52, 65, 48, 50, 56, 73, 54, 47, 72, 104, 61, 71, 45, 80, 43, 93, 67, 90, 54, 65, 98, 72, 95, 70, 74, 65, 66, 85, 73, 58, 90, 70, 55, 64, 50, 56, 58, 64, 64, 62, 50, 90, 77, 63, 116, 67, 66, 122, 68, 76, 64, 53, 68, 50, 62, 79, 61, 70, 58, 77, 61, 63, 55, 65, 64, 49, 57, 64, 54, 47, 75, 74, 75, 66, 64, 63, 68, 97, 51, 69, 54, 87, 60, 55, 61, 61, 56, 73, 55, 67, 64, 77, 66, 65, 62, 65, 55, 51, 61, 68, 56, 68, 50, 69, 70, 52, 108, 62, 63, 65, 58, 68, 65, 57, 92, 70, 39, 55, 78, 63, 60, 82, 78, 63, 52, 102, 67, 62, 56, 46, 74, 67, 62, 58, 80, 62, 73, 80, 65, 64, 67, 101, 63, 73, 61, 70, 58, 115, 71, 59, 49, 91, 49, 50, 60, 58, 63, 51, 53, 60, 59, 83, 52, 63, 59, 63, 50, 89, 59, 52, 80, 60, 85, 67, 50, 64, 63, 56, 60, 113, 83, 66, 50, 62, 45, 45, 66, 93, 67, 73, 54, 49, 111, 50, 48, 56, 114, 53, 54, 66, 77, 55, 71, 71, 47, 68, 67, 68, 64, 66, 54, 63, 66, 62, 88, 49, 82, 48, 71, 51, 55, 57, 62, 48, 61, 71, 50, 61, 79, 90, 105, 46, 72, 74, 74, 59, 74, 83, 59, 55, 60, 64, 66, 56, 82, 71, 87, 55, 62, 77, 53, 52, 79, 67, 60, 40, 63, 62, 62, 61, 59, 62, 66, 71, 53, 78, 68, 80, 57, 78, 64, 79, 92, 59, 61, 57, 57, 63, 68, 74, 53, 59, 65, 73, 73, 57, 54, 66, 74, 50, 101, 53, 55, 83, 64, 67, 62, 74, 77, 49, 60, 72, 73, 67, 72, 62, 56, 52, 62, 55, 68, 72, 60, 69, 66, 51, 57, 74, 73, 61, 55, 61, 65, 70, 60, 56, 64, 71, 57, 62, 64, 93, 63, 66, 85, 68, 61, 119, 77, 88, 52, 77, 58, 60, 64, 67, 55, 62, 62, 59, 53, 70, 65, 54, 82, 61, 76, 55, 81, 64, 44, 68, 73, 64, 87, 45, 53, 83, 76, 65, 58, 91, 62, 94, 81, 51, 47, 46, 50, 44, 55, 65, 70, 73, 56, 74, 66, 64, 91, 58, 95, 75, 53, 99, 64, 61, 66, 61, 46, 58, 38, 55, 50, 67, 50, 70, 63, 57, 71, 59, 85, 33, 61, 64, 48, 60, 69, 71, 68, 53, 53, 64, 56, 60, 60, 59, 43, 73, 78, 55, 57, 54, 68, 60, 71, 52, 59, 94, 54, 51, 60, 55, 78, 68, 51, 69, 59, 55, 61, 63, 70, 58, 51, 54, 55, 67, 60, 64, 96, 58, 49, 58, 49, 74, 56, 74, 64, 66, 82, 65, 69, 64, 66, 65, 60, 76, 54, 64, 89, 63, 71, 80, 49, 52, 88, 112, 89, 61, 47, 44, 62, 73, 100, 55, 66, 39, 53, 91, 58, 52, 62, 62, 67, 67, 84, 62, 82, 48, 66, 73, 67, 56, 67, 45, 69, 57, 70, 50, 71, 60, 67, 43, 88, 59, 66, 81, 79, 82, 61, 71, 61, 74, 103, 67, 39, 72, 62, 72, 84, 59, 64, 70, 47, 83, 71, 58, 50, 55, 77, 62, 58, 67, 58, 46, 56, 70, 57, 52, 72, 64, 65, 55, 62, 104, 41, 58, 64, 55, 83, 74, 60, 56, 59, 92, 80, 56, 66, 61, 70, 75, 58, 61, 67, 55, 65, 55, 58, 78, 69, 69, 55, 103, 66, 76, 59, 60, 67, 73, 107, 61, 79, 57, 60, 66, 64, 56, 62, 56, 54, 81, 64, 67, 75, 44, 55, 56, 58, 68, 86, 65, 71, 59, 63, 59, 60, 56, 76, 64, 66, 60, 57, 70, 70, 65, 69, 49, 57, 85, 61, 91, 63, 60, 65, 72, 78, 65, 61, 69, 66, 52, 75, 56, 56, 78, 94, 72, 51, 60, 70, 60, 93, 97, 70, 60, 78, 76, 82, 68, 90, 64, 65, 64, 90, 63, 72, 56, 69, 36, 86, 75, 71, 57, 99, 57, 55, 70, 89, 64, 61, 59, 79, 58, 78, 37, 44, 62, 49, 78, 62, 80, 66, 88, 60, 79, 93, 56, 51, 54, 62, 70, 63, 58, 67, 58, 92, 85, 48, 68, 83, 77, 42, 57, 66, 58, 70, 71, 70, 49, 66, 54, 51, 46, 64, 65, 60, 80, 68, 64, 69, 48, 51, 62, 108, 59, 79, 61, 74, 65, 55, 88, 49, 61, 80, 49, 54, 70, 56, 72, 69, 71, 57, 74, 46, 63, 66, 62, 78, 71, 69, 31, 64, 63, 51, 60, 72, 94, 62, 97, 73, 70, 59, 62, 48, 73, 80, 79, 55, 61, 60, 69, 69, 67, 55, 55, 93, 40, 56, 73, 61, 88, 40, 67, 44, 67, 75, 64, 64, 58, 73, 47, 44, 54, 78, 58, 57, 58, 60, 53, 59, 113, 51, 68, 54, 75, 69, 56, 59, 78, 77, 61, 64, 51, 65, 68, 71, 58, 60, 95, 69, 49, 48, 61, 60, 48, 58, 48, 62, 59, 80, 98, 57, 53, 49, 75, 57, 77, 52, 70, 83, 74, 61, 56, 78, 61, 56, 72, 55, 67, 49, 82, 61, 53, 56, 73, 74, 63, 54, 62, 50, 67, 106, 68, 67, 63, 64, 60, 86, 72, 66, 83, 69, 75, 89, 54, 74, 64, 61, 55, 54, 51, 71, 55, 60, 86, 68, 62, 115, 91, 74, 55, 47, 87, 72, 66, 60, 70, 57, 55, 75, 48, 64, 77, 58, 66, 55, 50, 71, 54, 69, 53, 75, 76, 56, 62, 66, 57, 61, 61, 79, 61, 75, 54, 63, 59, 76, 66, 59, 66, 59, 51, 77, 51, 83, 66, 51, 69, 58, 58, 53, 49, 54, 66, 56, 107, 59, 64, 84, 49, 55, 68, 65, 66, 88, 121, 46, 57, 58, 68, 63, 55, 57, 62, 51, 60, 53, 56, 62, 73, 83, 60, 83, 71, 57, 65, 69, 65, 59, 67, 79, 67, 58, 155, 60, 64, 52, 51, 73, 44, 67, 76, 57, 47, 66, 77, 67, 67, 63, 67, 70, 85, 65, 80, 60, 51, 64, 64, 79, 67, 45, 105, 61, 82, 62, 70, 52, 60, 76, 65, 63, 57, 67, 69, 49, 50, 69, 69, 80, 60, 71, 101, 74, 58, 50, 69, 56, 65, 45, 66, 77, 78, 48, 45, 74, 92, 76, 68, 102, 60, 84, 52, 58, 66, 66, 78, 66, 63, 69, 65, 55, 53, 61, 82, 67, 55, 89, 58, 70, 55, 76, 58, 55, 65, 63, 79, 72, 71, 66, 54, 86, 55, 62, 67, 60, 75, 51, 74, 69, 79, 40, 49, 80, 63, 51, 81, 83, 51, 60, 69, 66, 65, 84, 48, 67, 72, 58, 69, 93, 64, 61, 79, 63, 77, 55, 77, 62, 79, 38, 62, 79, 78, 61, 54, 71, 49, 46, 49, 45, 63, 61, 63, 73, 66, 74, 59, 48, 58, 66, 53, 58, 45, 66, 62, 66, 62, 70, 75, 78, 65, 55, 59, 53, 80, 78, 62, 64, 102, 60, 63, 62, 91, 54, 76, 58, 64, 50, 71, 65, 56, 68, 63, 96, 56, 54, 46, 72, 56, 76, 65, 70, 63, 49, 89, 67, 84, 66, 76, 65, 63, 41, 69, 77, 93, 72, 71, 63, 66, 89, 58, 50, 87, 109, 71, 73, 57, 70, 76, 45, 96, 56, 49, 85, 53, 56, 73, 49, 58, 100, 49, 54, 60, 41, 67, 65, 56, 60, 68, 67, 84, 52, 48, 79, 74, 60, 55, 60, 75, 83, 70, 53, 58, 62, 79, 53, 64, 89, 65, 61, 60, 67, 64, 51, 45, 48, 75, 55, 98, 47, 64, 58, 53, 75, 64, 82, 61, 62, 59, 47, 58, 69, 47, 70, 63, 50, 59, 56, 78, 81, 53, 48, 49, 65, 64, 61, 58, 54, 70, 49, 59, 67, 63, 56, 63, 57, 50, 79, 81, 61, 82, 63, 55, 62, 53, 103, 66, 60, 96, 64, 51, 46, 67, 64, 86, 56, 65, 83, 64, 66, 64, 66, 73, 63, 74, 52, 52, 68, 64, 107, 53, 53, 66, 55, 72, 55, 58, 61, 65, 69, 70, 63, 71, 83, 71, 87, 56, 50, 47, 66, 49, 51, 60, 86, 67, 73, 52, 53, 81, 118, 77, 59, 63, 68, 60, 55, 70, 62, 46, 72, 76, 75, 70, 76, 64, 69, 67, 60, 74, 54, 59, 83, 64, 71, 49, 56, 61, 53, 51, 68, 73, 70, 77, 72, 86, 90, 49, 79, 51, 56, 67, 35, 63, 57, 79, 99, 58, 67, 47, 50, 66, 60, 68, 56, 78, 54, 56, 86, 70, 62, 64, 75, 68, 60, 75, 146, 59, 69, 66, 83, 59, 64, 93, 60, 60, 52, 75, 76, 52, 69, 59, 62, 53, 72, 63, 58, 57, 52, 61, 66, 55, 60, 60, 60, 44, 44, 65, 101, 49, 69, 69, 92, 76, 63, 45, 59, 48, 57, 98, 68, 80, 64, 64, 52, 83, 55, 66, 73, 47, 71, 61, 58, 84, 66, 52, 78, 76, 54, 49, 93, 95, 64, 75, 61, 77, 58, 54, 55, 74, 85, 68, 81, 47, 91, 70, 69, 50, 59, 81, 50, 56, 80, 58, 74, 57, 79, 61, 46, 63, 51, 54, 61, 57, 55, 60, 73, 56, 54, 54, 90, 70, 58, 81, 55, 73, 58, 73, 62, 60, 117, 56, 49, 62, 61, 70, 61, 64, 71, 67, 66, 91, 79, 69, 59, 64, 77, 72, 66, 65, 57, 83, 60, 57, 56, 69, 62, 53, 70, 59, 70, 93, 62, 44, 50, 48, 51, 45, 56, 55, 92, 109, 44, 49, 59, 77, 69, 68, 55, 75, 55, 72, 53, 64, 60, 68, 54, 70, 56, 50, 63, 53, 60, 92, 65, 77, 124, 57, 61, 44, 57, 60, 44, 61, 49, 81, 72, 57, 56, 71, 80, 55, 63, 78, 71, 58, 85, 51, 57, 53, 68, 50, 56, 66, 80, 76, 69, 67, 56, 65, 70, 71, 72, 47, 56, 63, 61, 80, 54, 57, 65, 58, 68, 59, 49, 65, 71, 61, 75, 65, 63, 73, 83, 58, 54, 85, 65, 50, 78, 95, 42, 58, 44, 71, 79, 48, 60, 71, 44, 46, 76, 67, 61, 76, 86, 59, 61, 59, 66, 57, 85, 64, 66, 66, 106, 62, 51, 57, 63, 65, 66, 56, 44, 59, 64, 75, 62, 68, 69, 69, 73, 86, 79, 49, 65, 65, 59, 94, 83, 62, 74, 48, 95, 60, 70, 61, 69, 72, 65, 57, 84, 91, 65, 72, 61, 85, 63, 67, 79, 50, 59, 65, 72, 74, 57, 55, 72, 55, 58, 78, 101, 67, 65, 76, 51, 67, 50, 84, 56, 65, 65, 59, 65, 70, 66, 66, 70, 75, 53, 68, 76, 72, 67, 72, 61, 61, 53, 41, 67, 62, 73, 56, 69, 98, 73, 87, 62, 60, 64, 49, 67, 60, 77, 85, 63, 68, 56, 69, 60, 60, 79, 54, 56, 64, 69, 73, 67, 75, 51, 82, 52, 58, 64, 63, 61, 62, 63, 55, 51, 43, 71, 60, 83, 55, 62, 71, 68, 99, 64, 80, 63, 76, 60, 61, 59, 117, 65, 64, 70, 65, 67, 52, 78, 74, 52, 96, 60, 92, 60, 60, 56, 61, 58, 59, 76, 51, 73, 98, 48, 69, 70, 57, 69, 51, 49, 50, 59, 61, 76, 63, 93, 60, 84, 78, 56, 70, 50, 78, 63, 48, 55, 59, 68, 62, 57, 54, 61, 68, 101, 59, 61, 73, 74, 66, 75, 63, 57, 67, 69, 60, 97, 50, 52, 51, 57, 62, 61, 72, 71, 52, 72, 64, 60, 67, 104, 99, 89, 59, 58, 65, 74, 53, 69, 48, 60, 73, 75, 66, 63, 71, 66, 54, 53, 59, 61, 66, 59, 64, 67, 47, 63, 52, 64, 64, 67, 64, 86, 64, 54, 58, 60, 61, 83, 39, 51, 62, 60, 65, 65, 64, 54, 63, 64, 63, 58, 74, 51, 46, 46, 61, 56, 123, 63, 66, 68, 62, 49, 75, 55, 72, 88, 123, 62, 61, 59, 78, 57, 63, 81, 79, 95, 57, 70, 78, 75, 69, 91, 51, 48, 48, 71, 90, 56, 72, 54, 52, 78, 74, 56, 158, 62, 60, 53, 49, 69, 61, 47, 57, 52, 71, 61, 72, 59, 69, 50, 54, 67, 90, 56, 94, 67, 52, 80, 69, 72, 74, 65, 102, 81, 59, 58, 53, 58, 55, 47, 75, 92, 38, 75, 63, 62, 71, 71, 65, 51, 57, 68, 85, 82, 67, 58, 77, 65, 57, 60, 45, 70, 88, 62, 74, 67, 69, 59, 63, 86, 60, 91, 61, 54, 70, 97, 58, 63, 62, 84, 62, 47, 56, 71, 84, 57, 54, 92, 53, 71, 56, 78, 60, 59, 68, 56, 94, 53, 71, 48, 43, 85, 77, 62, 87, 72, 65, 56, 67, 63, 81, 69, 76, 79, 60, 70, 77, 67, 75, 65, 53, 65, 71, 78, 56, 40, 54, 59, 63, 78, 57, 65, 83, 100, 40, 51, 51, 50, 84, 55, 76, 67, 72, 65, 60, 73, 64, 61, 61, 63, 75, 69, 75, 47, 51, 58, 59, 44, 75, 46, 73, 55, 77, 56, 67, 60, 46, 70, 46, 52, 51, 77, 69, 75, 74, 101, 70, 51, 99, 51, 61, 65, 81, 59, 54, 65, 60, 63, 88, 66, 54, 61, 75, 82, 50, 55, 50, 62, 73, 66, 67, 74, 61, 67, 44, 63, 95, 48, 68, 62, 60, 69, 77, 72, 76, 59, 65, 47, 77, 103, 83, 67, 55, 110, 60, 68, 49, 53, 62, 67, 92, 56, 55, 75, 59, 44, 53, 63, 55, 56, 63, 53, 65, 63, 50, 59, 59, 55, 74, 53, 97, 64, 58, 45, 72, 61, 96, 76, 77, 71, 65, 93, 51, 83, 91, 77, 50, 85, 65, 59, 69, 97, 60, 70, 45, 49, 48, 62, 76, 62, 66, 69, 67, 51, 60, 70, 71, 45, 57, 61, 62, 74, 56, 77, 95, 38, 47, 61, 67, 62, 54, 75, 72, 64, 66, 55, 65, 58, 60, 72, 62, 72, 72, 63, 73, 39, 51, 81, 71, 53, 65, 74, 56, 73, 61, 101, 74, 83, 59, 82, 66, 53, 60, 63, 70, 62, 54, 64, 59, 50, 64, 54, 73, 49, 60, 41, 63, 66, 62, 108, 59, 67, 62, 79, 57, 60, 66, 60, 77, 68, 78, 53, 56, 63, 54, 75, 64, 52, 57, 53, 63, 59, 53, 55, 72, 70, 41, 55, 58, 115, 59, 56, 56, 64, 69, 59, 70, 70, 67, 54, 56, 72, 52, 65, 78, 65, 66, 68, 59, 79, 74, 62, 70, 80, 49, 64, 81, 63, 57, 77, 70, 57, 76, 49, 87, 82, 63, 82, 67, 58, 88, 55, 61, 50, 70, 79, 52, 82, 58, 67, 76, 62, 71, 62, 52, 61, 71, 103, 74, 75, 50, 72, 45, 66, 63, 142, 46, 62, 64, 49, 70, 72, 79, 47, 89, 61, 51, 50, 50, 55, 66, 83, 62, 74, 54, 66, 58, 46, 69, 70, 62, 56, 72, 69, 62, 46, 87, 75, 78, 50, 66, 87, 77, 73, 59, 82, 55, 76, 65, 63, 63, 66, 55, 82, 53, 56, 83, 69, 54, 66, 65, 58, 60, 55, 61, 90, 68, 58, 46, 75, 77, 53, 43, 67, 66, 86, 65, 67, 73, 86, 63, 55, 77, 95, 73, 57, 68, 68, 57, 67, 54, 71, 65, 55, 69, 86, 73, 73, 77, 51, 51, 69, 64, 68, 63, 61, 55, 39, 59, 70, 82, 67, 59, 52, 49, 50, 51, 49, 72, 114, 58, 59, 94, 58, 44, 56, 65, 68, 59, 63, 89, 87, 57, 65, 55, 79, 44, 62, 67, 51, 70, 61, 46, 64, 85, 73, 58, 52, 56, 58, 52, 72, 69, 83, 69, 65, 91, 60, 72, 56, 74, 56, 65, 41, 71, 63, 79, 60, 81, 52, 66, 77, 68, 60, 47, 86, 64, 56, 59, 104, 65, 68, 61, 86, 58, 76, 60, 80, 70, 94, 54, 72, 84, 64, 60, 57, 58, 75, 68, 49, 58, 80, 89, 62, 68, 78, 70, 68, 50, 70, 96, 56, 64, 90, 73, 55, 64, 70, 71, 51, 71, 66, 51, 29, 62, 71, 85, 73, 51, 61, 44, 69, 69, 62, 75, 66, 75, 46, 59, 72, 76, 79, 65, 61, 66, 64, 58, 78, 84, 52, 74, 62, 73, 81, 66, 73, 72, 73, 57, 66, 55, 52, 80, 83, 65, 78, 70, 56, 80, 65, 84, 71, 83, 82, 60, 65, 58, 83, 73, 87, 56, 67, 66, 64, 57, 54, 61, 53, 62, 58, 113, 72, 59, 78, 63, 65, 101, 70, 68, 69, 57, 82, 56, 69, 75, 79, 55, 60, 55, 48, 59, 60, 51, 72, 62, 61, 61, 66, 60, 65, 60, 62, 80, 65, 49, 68, 67, 58, 90, 80, 63, 56, 64, 65, 71, 53, 72, 51, 56, 86, 64, 62, 52, 76, 57, 51, 50, 59, 68, 43, 84, 56, 43, 82, 94, 60, 62, 56, 61, 49, 67, 81, 76, 50, 106, 67, 73, 62, 65, 39, 56, 63, 95, 50, 61, 64, 63, 57, 63, 57, 47, 55, 69, 51, 77, 62, 64, 57, 94, 73, 90, 79, 59, 75, 56, 51, 61, 68, 61, 69, 83, 66, 58, 52, 52, 73, 87, 56, 59, 62, 75, 33, 58, 79, 62, 50, 92, 53, 61, 72, 82, 66, 44, 62, 82, 58, 53, 65, 62, 62, 65, 54, 77, 71, 85, 45, 117, 69, 77, 64, 69, 67, 68, 62, 65, 75, 75, 68, 76, 53, 61, 73, 70, 79, 63, 72, 74, 61, 57, 78, 54, 63, 63, 86, 64, 75, 52, 114, 59, 58, 73, 69, 55, 58, 70, 48, 96, 51, 64, 86, 46, 66, 61, 66, 66, 55, 93, 62, 60, 77, 59, 56, 46, 65, 67, 84, 71, 54, 50, 72, 65, 77, 87, 70, 80, 87, 80, 61, 56, 46, 83, 47, 59, 45, 64, 66, 70, 95, 57, 73, 54, 91, 43, 47, 54, 55, 51, 74, 72, 59, 44, 76, 54, 45, 76, 67, 62, 62, 51, 47, 47, 68, 76, 48, 63, 57, 53, 74, 59, 48, 68, 77, 64, 63, 56, 66, 69, 64, 62, 67, 108, 59, 76, 52, 72, 65, 51, 55, 66, 70, 47, 67, 70, 68, 61, 83, 70, 59, 57, 74, 53, 75, 72, 64, 70, 127, 52, 52, 139, 95, 46, 55, 79, 57, 60, 60, 81, 66, 57, 62, 56, 98, 48, 67, 69, 67, 85, 59, 73, 66, 101, 69, 58, 53, 78, 47, 56, 47, 55, 66, 65, 58, 76, 55, 51, 64, 72, 61, 83, 58, 67, 51, 50, 52, 63, 51, 52, 80, 53, 39, 72, 64, 75, 66, 56, 96, 45, 88, 58, 67, 57, 74, 57, 61, 72, 78, 63, 46, 76, 71, 59, 56, 56, 86, 68, 58, 67, 58, 115, 93, 55, 106, 53, 62, 50, 61, 72, 75, 60, 52, 85, 68, 56, 58, 49, 107, 84, 54, 74, 57, 63, 50, 45, 54, 85, 61, 57, 55, 67, 64, 97, 65, 66, 59, 54, 69, 63, 59, 56, 65, 58, 51, 70, 64, 59, 93, 65, 78, 54, 55, 83, 43, 66, 61, 81, 88, 81, 59, 73, 66, 41, 61, 86, 64, 81, 73, 69, 74, 46, 51, 62, 78, 64, 59, 50, 63, 72, 52, 44, 71, 53, 87, 84, 66, 60, 68, 72, 58, 56, 46, 84, 89, 116, 51, 55, 65, 81, 60, 36, 56, 63, 47, 98, 67, 59, 68, 59, 63, 71, 73, 49, 95, 59, 73, 50, 71, 62, 60, 81, 51, 96, 49, 32, 56, 72, 70, 74, 61, 58, 53, 73, 67, 55, 63, 70, 63, 53, 71, 68, 67, 66, 67, 64, 64, 92, 57, 74, 58, 68, 52, 51, 65, 54, 63, 73, 51, 53, 67, 70, 63, 45, 71, 61, 52, 77, 93, 63, 69, 78, 47, 94, 69, 67, 63, 62, 81, 72, 64, 63, 63, 73, 76, 61, 59, 71, 66, 59, 64, 52, 53, 58, 67, 84, 56, 64, 75, 51, 52, 55, 64, 74, 63, 71, 62, 50, 68, 46, 63, 58, 57, 105, 76, 67, 73, 53, 68, 59, 60, 69, 50, 63, 59, 54, 59, 61, 94, 55, 53, 63, 61, 73, 65, 54, 69, 78, 53, 88, 61, 60, 67, 73, 56, 64, 49, 62, 62, 55, 79, 65, 66, 52, 65, 106, 59, 68, 62, 63, 61, 59, 63, 58, 83, 80, 52, 61, 49, 101, 65, 66, 58, 62, 58, 51, 67, 48, 65, 65, 59, 66, 60, 66, 65, 68, 59, 78, 66, 63, 50, 64, 63, 52, 63, 72, 97, 54, 60, 63, 73, 66, 47, 70, 74, 47, 61, 61, 99, 80, 63, 51, 85, 84, 69, 55, 80, 45, 59, 64, 59, 67, 68, 67, 46, 73, 66, 51, 59, 57, 69, 63, 54, 72, 66, 74, 71, 51, 52, 56, 68, 76, 66, 53, 66, 94, 69, 64, 48, 61, 45, 73, 63, 53, 82, 65, 68, 59, 105, 68, 74, 62, 127, 57, 77, 46, 57, 60, 70, 77, 75, 84, 73, 68, 111, 78, 80, 64, 39, 67, 64, 63, 51, 72, 51, 70, 98, 65, 54, 64, 72, 67, 58, 58, 62, 82, 73, 62, 87, 71, 60, 76, 74, 64, 91, 82, 67, 75, 61, 58, 81, 84, 60, 73, 63, 75, 64, 61, 63, 72, 87, 72, 76, 90, 58, 63, 98, 52, 100, 49, 54, 56, 83, 63, 69, 58, 66, 60, 64, 65, 85, 76, 58, 58, 70, 89, 66, 55, 82, 57, 47, 63, 81, 49, 69, 48, 66, 57, 63, 59, 61, 69, 73, 66, 64, 84, 94, 63, 58, 70, 66, 67, 72, 63, 61, 65, 99, 55, 88, 75, 52, 62, 55, 63, 71, 58, 59, 69, 63, 65, 68, 62, 99, 58, 76, 72, 55, 62, 59, 61, 59, 61, 70, 69, 57, 59, 80, 64, 64, 66, 73, 51, 69, 75, 64, 64, 68, 108, 62, 56, 68, 84, 81, 58, 53, 49, 74, 61, 54, 64, 53, 63, 59, 68, 56, 69, 65, 66, 59, 84, 66, 63, 106, 65, 46, 87, 51, 66, 68, 57, 74, 61, 57, 60, 66, 62, 85, 67, 87, 42, 64, 56, 98, 57, 58, 62, 66, 54, 67, 71, 84, 40, 68, 46, 59, 65, 56, 56, 86, 60, 63, 101, 58, 74, 54, 69, 50, 74, 60, 49, 63, 69, 80, 67, 58, 64, 57, 62, 69, 61, 64, 83, 58, 51, 93, 89, 64, 54, 60, 90, 57, 70, 76, 54, 55, 59, 75, 58, 54, 56, 58, 46, 84, 70, 57, 53, 100, 79, 71, 56, 72, 73, 56, 65, 88, 54, 60, 52, 67, 53, 71, 52, 86, 79, 44, 82, 51, 93, 66, 58, 56, 58, 64, 58, 78, 59, 70, 75, 84, 75, 51, 74, 58, 77, 51, 47, 67, 75, 83, 64, 61, 48, 70, 56, 64, 91, 85, 69, 69, 61, 62, 73, 74, 80, 70, 61, 112, 70, 78, 70, 59, 55, 49, 76, 51, 58, 68, 70, 58, 62, 49, 74, 54, 61, 60, 54, 91, 54, 61, 74, 86, 58, 51, 68, 58, 72, 69, 64, 66, 95, 65, 95, 63, 75, 61, 66, 71, 67, 86, 70, 63, 70, 60, 58, 51, 61, 88, 98, 70, 81, 67, 62, 64, 72, 62, 86, 60, 51, 73, 63, 74, 73, 65, 63, 63, 56, 85, 63, 56, 61, 62, 55, 60, 87, 67, 58, 59, 89, 53, 67, 84, 59, 65, 57, 71, 55, 61, 55, 79, 58, 83, 102, 71, 70, 55, 55, 70, 73, 56, 68, 85, 56, 65, 93, 59, 59, 57, 63, 82, 95, 55, 57, 73, 64, 61, 74, 77, 67, 55, 63, 57, 74, 66, 93, 65, 60, 71, 61, 60, 43, 56, 61, 45, 49, 110, 70, 73, 61, 55, 64, 50, 61, 62, 62, 76, 43, 101, 63, 57, 59, 55, 39, 58, 61, 54, 41, 57, 46, 65, 61, 77, 62, 59, 52, 47, 51, 73, 54, 54, 66, 63, 83, 65, 86, 62, 57, 47, 61, 56, 68, 73, 58, 75, 59, 75, 54, 61, 71, 84, 60, 63, 67, 82, 52, 80, 50, 47, 70, 89, 76, 67, 62, 58, 60, 64, 49, 71, 74, 54, 69, 67, 78, 52, 55, 85, 49, 58, 104, 72, 50, 73, 55, 86, 51, 57, 88, 109, 115, 61, 85, 61, 70, 52, 57, 50, 80, 72, 73, 66, 63, 69, 46, 52, 62, 68, 59, 67, 71, 74, 76, 67, 57, 101, 89, 53, 131, 70, 66, 80, 59, 53, 75, 56, 59, 64, 47, 55, 64, 48, 56, 65, 54, 70, 95, 67, 59, 81, 52, 72, 62, 59, 90, 65, 92, 44, 71, 58, 73, 71, 72, 71, 63, 35, 55, 66, 82, 65, 72, 68, 54, 49, 58, 60, 77, 40, 58, 62, 99, 73, 72, 49, 42, 53, 60, 55, 69, 87, 68, 52, 63, 74, 52, 89, 54, 64, 62, 57, 68, 66, 53, 63, 63, 53, 60, 82, 79, 75, 65, 77, 61, 67, 54, 81, 69, 65, 73, 47, 90, 63, 81, 65, 67, 84, 58, 53, 63, 71, 62, 69, 55, 67, 60, 52, 66, 78, 57, 71, 78, 86, 54, 64, 51, 52, 68, 71, 62, 55, 57, 61, 74, 71, 58, 69, 58, 92, 73, 53, 65, 60, 93, 70, 71, 67, 86, 50, 64, 57, 63, 44, 66, 70, 55, 72, 80, 67, 55, 71, 44, 64, 55, 44, 71, 71, 54, 77, 73, 63, 62, 87, 104, 70, 63, 46, 65, 57, 74, 75, 52, 64, 97, 60, 64, 55, 77, 57, 52, 55, 63, 78, 86, 61, 55, 45, 72, 103, 54, 63, 80, 69, 69, 70, 63, 80, 49, 67, 67, 56, 83, 49, 61, 70, 66, 55, 71, 66, 60, 59, 66, 64, 60, 102, 58, 68, 78, 90, 69, 87, 77, 57, 47, 65, 90, 48, 73, 77, 62, 51, 45, 45, 61, 49, 62, 65, 56, 84, 65, 53, 58, 52, 56, 55, 55, 67, 81, 100, 57, 61, 98, 62, 71, 77, 50, 86, 61, 83, 61, 49, 57, 86, 65, 49, 93, 47, 55, 43, 45, 60, 72, 85, 56, 61, 59, 60, 65, 46, 51, 72, 60, 59, 55, 66, 85, 68, 76, 65, 46, 62, 70, 72, 71, 79, 65, 73, 64, 57, 64, 56, 49, 59, 54, 71, 70, 68, 66, 54, 71, 71, 67, 87, 46, 65, 58, 52, 59, 52, 59, 103, 51, 45, 55, 71, 70, 45, 59, 64, 67, 57, 69, 55, 66, 54, 49, 67, 60, 58, 57, 72, 43, 51, 57, 91, 54, 47, 56, 71, 74, 57, 86, 53, 81, 64, 72, 68, 75, 56, 90, 92, 84, 66, 63, 67, 77, 62, 64, 60, 72, 48, 90, 51, 61, 107, 59, 74, 61, 59, 53, 60, 63, 67, 63, 52, 71, 65, 66, 93, 55, 74, 49, 57, 59, 59, 74, 71, 60, 100, 50, 70, 70, 76, 67, 61, 79, 65, 89, 82, 81, 69, 54, 79, 61, 64, 50, 74, 61, 64, 72, 91, 72, 55, 64, 56, 76, 63, 74, 65, 59, 102, 54, 79, 78, 70, 48, 82, 56, 68, 68, 131, 71, 66, 41, 60, 73, 52, 61, 60, 72, 67, 74, 49, 60, 73, 74, 61, 72, 64, 50, 62, 66, 50, 45, 56, 68, 45, 59, 80, 41, 75, 53, 77, 60, 56, 57, 88, 77, 55, 91, 68, 51, 79, 60, 71, 91, 61, 62, 61, 83, 48, 67, 61, 57, 70, 51, 68, 63, 66, 52, 78, 58, 58, 75, 66, 81, 55, 71, 68, 65, 66, 65, 60, 52, 94, 61, 61, 59, 87, 66, 55, 65, 47, 89, 60, 42, 70, 83, 77, 64, 63, 89, 53, 65, 76, 78, 59, 64, 65, 60, 62, 80, 79, 64, 83, 60, 61, 43, 73, 63, 63, 70, 78, 69, 63, 47, 74, 71, 60, 74, 63, 82, 83, 66, 67, 67, 55, 62, 51, 55, 60, 62, 46, 64, 57, 62, 50, 72, 71, 73, 68, 83, 61, 77, 62, 68, 57, 87, 58, 78, 65, 59, 53, 55, 63, 101, 57, 62, 72, 71, 70, 46, 55, 78, 74, 58, 69, 52, 49, 52, 64, 74, 50, 51, 70, 57, 55, 62, 72, 76, 60, 76, 59, 88, 61, 64, 47, 49, 47, 65, 61, 72, 55, 75, 76, 51, 71, 54, 70, 54, 62, 70, 71, 58, 53, 61, 57, 50, 64, 58, 67, 66, 68, 59, 62, 65, 91, 59, 56, 73, 48, 53, 62, 55, 70, 85, 92, 86, 45, 60, 56, 60, 31, 57, 78, 78, 81, 59, 80, 64, 59, 74, 71, 65, 53, 76, 60, 95, 74, 59, 59, 74, 64, 68, 47, 70, 48, 72, 64, 61, 47, 58, 75, 68, 74, 68, 58, 78, 62, 77, 74, 68, 73, 63, 60, 48, 53, 62, 70, 57, 58, 67, 77, 72, 55, 83, 74, 66, 54, 76, 85, 60, 66, 67, 53, 49, 65, 67, 61, 60, 71, 78, 73, 54, 92, 49, 87, 83, 47, 78, 75, 51, 49, 65, 75, 80, 72, 70, 62, 70, 76, 45, 59, 52, 57, 58, 78, 56, 66, 64, 58, 75, 60, 56, 73, 70, 69, 58, 51, 68, 61, 63, 69, 69, 78, 60, 70, 61, 44, 65, 76, 84, 62, 69, 54, 61, 55, 62, 62, 59, 54, 73, 59, 48, 64, 55, 53, 77, 73, 82, 53, 150, 70, 58, 51, 65, 56, 84, 73, 73, 79, 71, 61, 56, 75, 57, 70, 68, 61, 65, 43, 70, 75, 70, 54, 58, 79, 73, 68, 79, 62, 76, 81, 76, 69, 62, 61, 59, 70, 72, 60, 81, 66, 67, 70, 78, 63, 75, 50, 71, 77, 70, 63, 65, 80, 50, 57, 66, 77, 58, 72, 55, 52, 69, 81, 63, 88, 69, 74, 67, 73, 57, 64, 60, 94, 64, 77, 70, 68, 60, 61, 68, 62, 72, 84, 76, 70, 63, 78, 77, 51, 61, 61, 57, 63, 71, 65, 58, 80, 43, 69, 57, 59, 69, 75, 78, 75, 55, 57, 78, 47, 63, 54, 67, 46, 72, 67, 52, 76, 60, 69, 51, 60, 77, 51, 58, 51, 65, 63, 50, 100, 59, 84, 60, 69, 66, 62, 57, 69, 80, 56, 57, 76, 75, 94, 89, 68, 63, 47, 62, 76, 60, 78, 77, 48, 91, 50, 52, 50, 78, 66, 73, 76, 61, 74, 76, 62, 84, 77, 71, 45, 57, 43, 60, 82, 64, 60, 47, 81, 76, 59, 81, 51, 71, 99, 62, 80, 75, 49, 62, 75, 71, 94, 51, 77, 110, 69, 58, 71, 92, 105, 79, 61, 64, 68, 72, 70, 65, 66, 58, 64, 69, 66, 109, 57, 73, 73, 81, 95, 71, 56, 65, 73, 54, 68, 70, 79, 62, 72, 62, 64, 65, 61, 84, 59, 68, 89, 73, 63, 60, 51, 71, 101, 59, 70, 59, 106, 77, 60, 57, 51, 52, 59, 114, 70, 80, 41, 76, 73, 77, 63, 46, 63, 65, 52, 69, 40, 78, 56, 62, 74, 90, 58, 74, 77, 75, 58, 63, 60, 52, 65, 67, 57, 70, 76, 61, 60, 66, 59, 64, 53, 52, 62, 65, 64, 73, 70, 53, 85, 60, 66, 58, 68, 71, 70, 56, 40, 66, 76, 65, 49, 63, 52, 78, 67, 58, 65, 64, 73, 79, 56, 61, 84, 59, 60, 68, 59, 68, 79, 57, 64, 84, 73, 62, 66, 58, 50, 61, 72, 67, 68, 59, 64, 68, 71, 69, 72, 84, 50, 52, 68, 68, 60, 77, 55, 56, 70, 59, 53, 67, 78, 59, 82, 67, 83, 66, 66, 70, 53, 87, 76, 68, 50, 90, 47, 52, 64, 68, 63, 46, 73, 59, 42, 70, 53, 52, 57, 64, 52, 57, 67, 91, 59, 84, 74, 61, 78, 76, 42, 56, 94, 65, 63, 47, 75, 53, 51, 81, 58, 68, 80, 81, 50, 45, 92, 85, 60, 60, 69, 75, 52, 85, 68, 63, 48, 66, 86, 52, 85, 69, 59, 68, 65, 59, 56, 64, 62, 73, 81, 58, 56, 77, 65, 78, 59, 50, 46, 62, 58, 63, 58, 62, 53, 71, 71, 68, 65, 69, 66, 65, 44, 63, 88, 69, 77, 64, 56, 80, 49, 59, 60, 46, 72, 63, 65, 56, 53, 49, 69, 72, 47, 61, 48, 82, 73, 76, 76, 66, 73, 48, 53, 53, 57, 87, 69, 70, 65, 71, 84, 65, 75, 70, 74, 65, 61, 71, 54, 76, 89, 63, 56, 70, 53, 87, 86, 78, 54, 58, 69, 56, 65, 63, 83, 42, 68, 70, 52, 65, 65, 44, 59, 63, 64, 54, 92, 58, 71, 61, 68, 61, 67, 68, 67, 66, 78, 69, 68, 94, 66, 60, 64, 70, 64, 59, 75, 47, 57, 60, 69, 63, 57, 76, 62, 52, 59, 68, 76, 60, 74, 58, 60, 65, 56, 166, 75, 76, 67, 57, 60, 55, 61, 51, 72, 64, 61, 60, 63, 70, 72, 71, 74, 64, 66, 74, 62, 69, 82, 72, 72, 69, 47, 64, 89, 69, 61, 59, 66, 79, 75, 57, 72, 52, 88, 78, 47, 70, 70, 61, 60, 68, 48, 74, 50, 54, 62, 62, 93, 63, 55, 74, 62, 56, 66, 70, 76, 61, 63, 62, 76, 86, 56, 74, 67, 67, 61, 61, 61, 77, 58, 94, 57, 51, 66, 53, 72, 67, 62, 67, 51, 73, 56, 48, 63, 85, 71, 60, 53, 58, 90, 58, 49, 64, 83, 68, 81, 54, 64, 58, 62, 54, 57, 84, 71, 53, 74, 74, 66, 79, 52, 59, 65, 62, 69, 71, 63, 56, 74, 78, 55, 90, 56, 76, 85, 83, 60, 53, 64, 62, 63, 78, 57, 65, 56, 81, 65, 51, 56, 63, 77, 66, 56, 71, 81, 70, 79, 70, 69, 105, 67, 51, 61, 70, 68, 94, 73, 77, 45, 77, 62, 82, 74, 63, 68, 67, 82, 70, 73, 63, 57, 83, 58, 53, 72, 73, 55, 63, 79, 71, 75, 64, 64, 54, 64, 49, 38, 66, 63, 60, 72, 53, 52, 66, 59, 77, 93, 70, 63, 74, 70, 45, 58, 56, 68, 71, 68, 59, 70, 65, 59, 51, 58, 64, 84, 86, 64, 54, 56, 84, 62, 50, 55, 94, 56, 58, 76, 67, 71, 76, 53, 101, 49, 71, 72, 94, 75, 60, 58, 66, 65, 48, 69, 55, 56, 64, 84, 71, 74, 55, 67, 84, 50, 69, 66, 59, 73, 50, 58, 63, 53, 60, 74, 47, 80, 64, 51, 71, 53, 60, 78, 62, 71, 63, 70, 53, 49, 63, 66, 57, 65, 46, 56, 55, 63, 76, 77, 66, 59, 63, 54, 63, 78, 49, 74, 74, 52, 59, 53, 66, 67, 72, 55, 104, 58, 72, 62, 64, 70, 84, 103, 66, 72, 63, 68, 57, 68, 72, 65, 57, 53, 61, 56, 78, 69, 52, 68, 66, 73, 41, 75, 69, 59, 69, 95, 66, 54, 48, 84, 74, 49, 71, 52, 104, 77, 70, 64, 66, 70, 59, 74, 76, 51, 49, 60, 59, 63, 83, 75, 69, 70, 110, 64, 82, 82, 77, 77, 73, 77, 58, 60, 71, 50, 60, 68, 47, 83, 84, 61, 56, 52, 66, 72, 95, 88, 81, 54, 51, 52, 67, 90, 71, 58, 59, 69, 53, 67, 33, 60, 48, 57, 47, 77, 93, 73, 44, 53, 75, 72, 55, 61, 61, 48, 72, 69, 69, 60, 61, 51, 67, 63, 72, 62, 70, 51, 61, 58, 53, 84, 54, 82, 56, 65, 76, 57, 71, 59, 60, 68, 58, 65, 59, 52, 68, 66, 82, 67, 149, 80, 55, 60, 66, 72, 78, 66, 71, 53, 44, 45, 60, 65, 73, 72, 41, 49, 64, 41, 74, 82, 74, 63, 67, 62, 72, 59, 74, 66, 61, 73, 64, 60, 88, 35, 52, 82, 90, 84, 81, 92, 60, 56, 79, 70, 60, 62, 77, 56, 81, 62, 60, 68, 51, 83, 68, 80, 66, 58, 55, 53, 87, 64, 71, 85, 73, 61, 48, 79, 78, 69, 66, 76, 49, 82, 56, 69, 62, 50, 65, 51, 79, 67, 75, 61, 50, 77, 61, 54, 65, 58, 57, 51, 50, 61, 92, 59, 53, 69, 60, 74, 86, 79, 62, 49, 74, 67, 61, 48, 73, 69, 58, 47, 81, 61, 54, 102, 59, 62, 62, 59, 61, 61, 66, 76, 77, 58, 56, 76, 60, 85, 62, 58, 58, 63, 69, 85, 76, 63, 50, 57, 43, 67, 71, 50, 75, 50, 71, 86, 59, 62, 59, 60, 80, 43, 55, 111, 61, 65, 81, 71, 58, 69, 64, 56, 71, 82, 76, 78, 78, 47, 60, 75, 62, 83, 56, 101, 54, 55, 95, 69, 69, 98, 84, 71, 62, 69, 62, 64, 67, 62, 63, 82, 82, 60, 64, 47, 61, 78, 62, 61, 72, 83, 66, 55, 39, 65, 55, 77, 40, 83, 111, 63, 76, 66, 71, 79, 81, 58, 52, 67, 71, 52, 72, 56, 64, 62, 69, 65, 57, 67, 44, 72, 41, 84, 50, 66, 60, 54, 73, 119, 57, 59, 63, 97, 77, 64, 69, 69, 59, 43, 127, 66, 87, 52, 73, 94, 74, 67, 56, 106, 64, 60, 52, 60, 94, 75, 51, 59, 101, 66, 95, 49, 61, 48, 75, 48, 63, 78, 62, 59, 79, 80, 79, 74, 82, 65, 68, 61, 67, 61, 68, 84, 61, 64, 70, 65, 59, 57, 70, 62, 64, 49, 67, 75, 100, 84, 48, 63, 87, 61, 60, 64, 61, 76, 75, 69, 88, 54, 62, 91, 55, 59, 73, 50, 55, 51, 80, 40, 74, 58, 51, 62, 57, 58, 78, 80, 71, 61, 43, 56, 68, 69, 45, 67, 79, 66, 60, 73, 77, 56, 71, 68, 69, 79, 88, 43, 51, 87, 73, 60, 57, 60, 67, 63, 66, 40, 64, 85, 49, 70, 68, 75, 68, 70, 50, 61, 79, 66, 49, 64, 73, 67, 65, 68, 70, 62, 79, 73, 57, 62, 67, 70, 46, 86, 69, 67, 92, 80, 65, 54, 66, 82, 50, 67, 66, 61, 71, 51, 94, 58, 44, 99, 81, 70, 58, 67, 71, 68, 76, 62, 58, 67, 82, 81, 58, 54, 68, 72, 63, 86, 69, 46, 74, 52, 66, 80, 56, 57, 50, 77, 66, 54, 72, 76, 61, 48, 75, 52, 59, 49, 76, 75, 56, 70, 62, 68, 56, 67, 51, 96, 69, 80, 41, 60, 80, 65, 79, 48, 56, 79, 73, 70, 54, 69, 53, 59, 73, 55, 71, 48, 71, 65, 70, 69, 69, 61, 43, 74, 81, 67, 86, 81, 71, 55, 58, 84, 59, 66, 68, 64, 55, 65, 66, 53, 64, 91, 67, 79, 64, 69, 96, 62, 96, 66, 72, 60, 63, 49, 48, 75, 63, 80, 66, 54, 78, 58, 61, 71, 58, 52, 33, 83, 61, 58, 50, 54, 56, 68, 52, 70, 66, 79, 54, 62, 83, 51, 58, 55, 85, 59, 39, 80, 59, 52, 78, 89, 60, 81, 50, 57, 48, 48, 46, 64, 77, 66, 75, 59, 72, 57, 162, 96, 66, 39, 55, 58, 82, 60, 59, 89, 56, 63, 63, 63, 55, 57, 67, 61, 67, 79, 62, 38, 84, 103, 74, 80, 60, 64, 61, 92, 75, 68, 46, 69, 66, 77, 59, 63, 65, 59, 84, 63, 73, 55, 54, 43, 60, 77, 78, 61, 42, 59, 53, 81, 69, 72, 60, 45, 66, 65, 53, 79, 65, 64, 54, 68, 59, 48, 67, 79, 66, 69, 75, 62, 92, 59, 97, 66, 38, 74, 71, 66, 78, 58, 63, 72, 70, 45, 54, 41, 74, 82, 90, 90, 58, 60, 63, 52, 55, 60, 66, 58, 69, 62, 59, 49, 64, 43, 69, 46, 62, 67, 71, 86, 66, 64, 54, 47, 67, 65, 53, 60, 62, 70, 53, 86, 57, 69, 60, 54, 108, 47, 45, 83, 69, 50, 58, 55, 68, 64, 49, 58, 44, 41, 89, 89, 71, 59, 60, 72, 77, 74, 80, 58, 105, 77, 66, 77, 46, 51, 93, 59, 60, 54, 55, 69, 65, 27, 75, 61, 59, 89, 66, 68, 62, 60, 58, 73, 67, 56, 78, 59, 66, 39, 61, 116, 65, 55, 65, 64, 74, 75, 64, 71, 76, 82, 74, 52, 71, 66, 53, 59, 68, 64, 69, 63, 70, 76, 52, 74, 65, 46, 51, 72, 69, 80, 60, 61, 70, 47, 98, 67, 59, 74, 61, 57, 70, 58, 72, 67, 62, 47, 62, 70, 72, 70, 71, 56, 77, 78, 59, 64, 66, 55, 55, 80, 68, 76, 63, 77, 60, 67, 57, 51, 58, 96, 77, 61, 72, 95, 66, 62, 71, 73, 89, 62, 72, 69, 71, 56, 83, 61, 65, 59, 68, 81, 61, 50, 78, 70, 69, 58, 61, 68, 55, 66, 104, 58, 78, 49, 56, 63, 60, 46, 62, 62, 52, 51, 60, 71, 74, 63, 56, 68, 56, 61, 63, 40, 77, 52, 60, 56, 49, 51, 76, 66, 68, 71, 84, 72, 59, 64, 59, 62, 61, 57, 54, 63, 64, 96, 64, 38, 82, 95, 67, 65, 52, 80, 90, 83, 66, 72, 55, 59, 86, 74, 54, 55, 74, 106, 59, 68, 64, 67, 62, 78, 59, 75, 55, 55, 66, 59, 78, 73, 68, 47, 54, 61, 64, 69, 52, 91, 83, 62, 67, 72, 63, 82, 70, 59, 65, 59, 60, 48, 63, 54, 50, 82, 61, 70, 77, 70, 64, 74, 55, 86, 49, 62, 86, 50, 67, 98, 46, 65, 65, 90, 63, 65, 71, 84, 81, 59, 54, 55, 58, 57, 58, 54, 93, 52, 44, 52, 67, 58, 60, 70, 61, 74, 98, 65, 82, 63, 70, 37, 72, 53, 61, 67, 68, 52, 89, 57, 55, 72, 56, 66, 79, 62, 67, 46, 67, 59, 86, 78, 56, 54, 87, 57, 82, 75, 72, 58, 68, 57, 60, 89, 55, 68, 57, 63, 57, 75, 66, 66, 57, 54, 72, 69, 96, 50, 66, 75, 91, 67, 62, 62, 58, 71, 81, 85, 67, 73, 78, 72, 63, 76, 102, 81, 57, 77, 73, 81, 53, 60, 57, 60, 70, 65, 51, 51, 84, 86, 47, 60, 66, 65, 45, 71, 51, 48, 86, 59, 56, 92, 65, 70, 56, 60, 86, 64, 51, 65, 73, 61, 60, 80, 70, 51, 68, 71, 65, 80, 83, 63, 53, 59, 61, 95, 79, 53, 68, 74, 61, 57, 77, 82, 76, 79, 57, 40, 75, 48, 57, 76, 58, 71, 80, 75, 56, 68, 56, 65, 70, 44, 63, 60, 67, 58, 76, 69, 81, 58, 65, 104, 66, 112, 99, 54, 64, 70, 70, 65, 70, 63, 69, 58, 92, 62, 78, 57, 61, 44, 61, 62, 67, 70, 62, 63, 67, 59, 65, 63, 51, 64, 61, 77, 66, 56, 65, 66, 67, 59, 77, 65, 57, 75, 66, 54, 52, 81, 73, 58, 73, 53, 52, 102, 55, 61, 58, 72, 60, 104, 62, 65, 57, 64, 64, 97, 80, 63, 63, 69, 52, 73, 67, 81, 63, 70, 74, 63, 60, 64, 53, 40, 122, 62, 74, 61, 65, 67, 53, 63, 90, 67, 54, 57, 80, 81, 65, 62, 60, 65, 64, 57, 60, 54, 63, 56, 96, 62, 57, 54, 62, 73, 81, 70, 59, 84, 78, 72, 82, 55, 61, 65, 88, 52, 71, 58, 67, 67, 68, 74, 63, 60, 54, 72, 60, 46, 51, 77, 64, 54, 97, 64, 96, 74, 56, 73, 65, 64, 71, 58, 70, 72, 60, 83, 60, 72, 61, 71, 71, 65, 52, 61, 76, 70, 58, 47, 55, 76, 71, 64, 69, 52, 60, 77, 59, 52, 61, 52, 62, 65, 68, 65, 103, 67, 57, 56, 72, 67, 80, 62, 66, 65, 54, 67, 52, 57, 61, 68, 77, 47, 69, 67, 68, 72, 54, 68, 67, 87, 59, 81, 68, 54, 66, 60, 51, 57, 48, 80, 56, 107, 60, 65, 64, 68, 67, 68, 65, 64, 68, 73, 63, 84, 65, 69, 81, 60, 49, 89, 72, 60, 84, 60, 75, 57, 61, 82, 56, 73, 60, 62, 61, 56, 70, 55, 66, 54, 96, 56, 63, 52, 88, 53, 83, 87, 57, 71, 67, 77, 60, 73, 91, 63, 54, 103, 38, 60, 78, 86, 77, 77, 52, 54, 62, 65, 115, 55, 60, 57, 75, 74, 69, 67, 66, 66, 66, 119, 49, 73, 60, 59, 79, 55, 70, 61, 65, 57, 58, 58, 81, 52, 94, 98, 80, 66, 58, 73, 79, 54, 80, 73, 99, 66, 70, 70, 52, 63, 59, 58, 101, 74, 57, 81, 57, 71, 96, 67, 66, 53, 65, 61, 70, 92, 55, 55, 64, 63, 56, 77, 61, 76, 67, 65, 47, 52, 51, 65, 66, 50, 46, 61, 60, 61, 93, 71, 55, 73, 66, 48, 59, 49, 59, 51, 75, 73, 116, 60, 75, 83, 62, 53, 73, 62, 102, 68, 54, 60, 57, 62, 65, 85, 66, 60, 79, 61, 82, 53, 72, 94, 61, 61, 61, 77, 64, 88, 56, 87, 100, 43, 72, 72, 97, 71, 67, 48, 91, 58, 73, 52, 65, 49, 54, 67, 56, 55, 55, 71, 75, 79, 52, 56, 65, 64, 70, 79, 56, 73, 74, 59, 74, 60, 60, 63, 122, 93, 70, 55, 75, 76, 61, 63, 62, 60, 52, 70, 71, 54, 75, 54, 40, 51, 67, 69, 61, 58, 51, 84, 59, 71, 59, 70, 59, 67, 63, 64, 63, 73, 71, 70, 57, 54, 57, 77, 66, 80, 62, 62, 56, 54, 63, 60, 81, 56, 45, 71, 58, 76, 73, 47, 58, 61, 61, 68, 66, 54, 93, 65, 57, 58, 58, 58, 69, 90, 62, 63, 55, 69, 74, 60, 91, 68, 65, 57, 55, 55, 56, 52, 82, 50, 56, 77, 84, 53, 66, 58, 83, 66, 55, 78, 63, 84, 56, 59, 70, 77, 64, 75, 58, 55, 56, 65, 70, 66, 59, 84, 78, 68, 65, 69, 71, 61, 59, 55, 50, 69, 67, 62, 52, 75, 96, 59, 58, 62, 61, 64, 58, 65, 59, 57, 62, 59, 50, 81, 62, 71, 58, 63, 77, 64, 45, 42, 64, 69, 44, 60, 54, 56, 77, 82, 71, 54, 71, 56, 64, 57, 63, 41, 67, 64, 70, 83, 55, 63, 60, 47, 58, 67, 82, 45, 75, 70, 70, 83, 60, 59, 83, 65, 59, 122, 52, 75, 45, 61, 52, 69, 65, 83, 65, 62, 79, 68, 63, 82, 48, 57, 86, 78, 64, 61, 77, 69, 63, 56, 67, 62, 67, 73, 76, 55, 51, 66, 57, 65, 53, 51, 64, 98, 55, 75, 80, 72, 69, 69, 72, 50, 54, 58, 68, 120, 95, 89, 76, 65, 69, 89, 79, 62, 71, 86, 50, 73, 63, 65, 62, 63, 68, 53, 60, 60, 66, 59, 78, 75, 59, 68, 57, 82, 68, 62, 66, 65, 54, 58, 64, 73, 86, 57, 62, 66, 49, 71, 77, 80, 88, 85, 51, 77, 55, 64, 74, 66, 71, 60, 59, 65, 65, 61, 42, 64, 63, 76, 64, 62, 73, 57, 59, 61, 57, 73, 52, 98, 50, 58, 46, 55, 50, 52, 71, 63, 86, 61, 82, 64, 49, 68, 68, 39, 53, 59, 50, 81, 72, 104, 63, 62, 70, 75, 72, 58, 79, 65, 64, 72, 61, 76, 48, 56, 60, 64, 80, 68, 71, 94, 70, 74, 76, 54, 58, 76, 59, 78, 52, 65, 61, 54, 62, 59, 84, 118, 64, 51, 85, 58, 69, 65, 58, 78, 76, 56, 62, 57, 78, 72, 58, 72, 47, 56, 67, 92, 69, 88, 69, 68, 80, 66, 58, 66, 59, 78, 64, 76, 63, 55, 49, 77, 54, 77, 82, 82, 69, 80, 48, 69, 56, 71, 69, 83, 78, 60, 59, 74, 71, 71, 55, 56, 58, 77, 62, 53, 66, 92, 85, 58, 74, 84, 56, 73, 49, 77, 77, 69, 67, 55, 68, 66, 103, 56, 72, 61, 55, 72, 76, 68, 57, 73, 86, 56, 71, 61, 57, 78, 71, 58, 65, 62, 63, 37, 69, 65, 52, 82, 64, 64, 46, 54, 56, 65, 59, 67, 71, 41, 65, 62, 88, 60, 54, 68, 68, 55, 103, 63, 65, 109, 61, 53, 44, 56, 57, 55, 65, 46, 72, 55, 58, 75, 74, 78, 41, 70, 45, 62, 65, 69, 56, 77, 66, 52, 54, 66, 66, 66, 55, 52, 76, 62, 88, 55, 78, 72, 58, 51, 44, 81, 61, 71, 66, 58, 62, 74, 76, 63, 69, 57, 59, 60, 63, 72, 54, 67, 50, 76, 57, 82, 62, 58, 69, 52, 63, 66, 70, 74, 67, 57, 57, 58, 83, 51, 53, 109, 77, 54, 53, 70, 93, 53, 58, 35, 72, 65, 72, 51, 64, 58, 67, 112, 59, 80, 63, 88, 54, 66, 58, 56, 65, 108, 61, 88, 68, 73, 90, 53, 60, 63, 44, 50, 58, 70, 48, 71, 78, 59, 71, 68, 46, 54, 69, 65, 55, 69, 57, 55, 83, 62, 62, 52, 66, 74, 51, 69, 83, 101, 59, 71, 59, 67, 65, 61, 65, 65, 61, 64, 105, 77, 63, 61, 44, 67, 89, 65, 75, 73, 63, 57, 73, 108, 63, 71, 58, 77, 71, 55, 59, 58, 59, 84, 52, 62, 148, 59, 56, 60, 50, 62, 72, 63, 49, 55, 46, 81, 74, 73, 79, 82, 64, 73, 63, 61, 68, 63, 86, 71, 69, 80, 60, 61, 44, 97, 89, 48, 47, 98, 65, 62, 66, 54, 65, 73, 85, 69, 70, 55, 48, 92, 57, 51, 39, 84, 60, 89, 78, 58, 63, 98, 65, 67, 87, 62, 100, 66, 58, 103, 90, 77, 70, 50, 58, 59, 52, 72, 75, 70, 56, 63, 70, 60, 60, 71, 109, 62, 43, 70, 68, 65, 55, 56, 56, 60, 73, 93, 68, 61, 53, 87, 61, 63, 69, 63, 75, 40, 86, 52, 52, 56, 82, 57, 55, 49, 60, 49, 56, 73, 55, 48, 68, 61, 59, 83, 56, 71, 72, 56, 73, 56, 76, 58, 39, 72, 55, 44, 61, 82, 63, 50, 67, 78, 54, 73, 67, 67, 62, 88, 70, 64, 62, 88, 64, 63, 66, 64, 58, 48, 64, 63, 74, 74, 68, 68, 85, 70, 74, 70, 47, 78, 59, 59, 61, 72, 68, 55, 93, 81, 53, 59, 74, 56, 69, 59, 65, 51, 47, 76, 55, 54, 56, 68, 62, 75, 49, 70, 54, 69, 61, 89, 57, 75, 52, 41, 62, 93, 42, 67, 65, 78, 70, 54, 61, 85, 70, 64, 50, 52, 53, 85, 62, 60, 62, 47, 72, 52, 69, 74, 71, 42, 68, 49, 43, 82, 67, 82, 60, 56, 75, 65, 60, 95, 66, 58, 83, 48, 86, 51, 47, 78, 73, 42, 60, 68, 76, 61, 97, 65, 77, 63, 70, 67, 51, 68, 62, 57, 49, 70, 56, 68, 64, 75, 77, 66, 73, 59, 74, 51, 66, 83, 65, 79, 55, 63, 68, 76, 63, 69, 78, 52, 52, 68, 56, 73, 76, 67, 55, 61, 61, 93, 56, 59, 69, 66, 59, 79, 64, 73, 50, 57, 77, 76, 47, 49, 57, 88, 54, 72, 75, 76, 91, 59, 60, 62, 66, 51, 65, 96, 52, 56, 76, 86, 69, 40, 58, 60, 59, 81, 96, 56, 67, 58, 68, 79, 48, 101, 83, 63, 65, 61, 77, 76, 59, 62, 65, 65, 46, 66, 77, 115, 67, 57, 82, 55, 95, 78, 74, 47, 105, 74, 63, 63, 64, 80, 81, 91, 72, 54, 76, 72, 66, 66, 71, 64, 62, 46, 68, 76, 66, 72, 76, 64, 57, 65, 58, 63, 66, 73, 58, 68, 67, 66, 60, 81, 51, 56, 52, 64, 61, 66, 52, 70, 98, 58, 59, 59, 52, 61, 93, 59, 58, 57, 58, 78, 52, 65, 71, 59, 61, 58, 61, 55, 83, 59, 51, 74, 79, 62, 73, 81, 99, 73, 80, 60, 68, 108, 59, 56, 41, 45, 66, 57, 63, 52, 64, 63, 76, 63, 46, 71, 52, 74, 56, 57, 62, 57, 69, 67, 73, 50, 66, 61, 53, 73, 83, 48, 73, 56, 53, 55, 63, 59, 62, 70, 63, 69, 69, 70, 65, 60, 73, 64, 63, 72, 54, 47, 146, 69, 70, 71, 64, 53, 71, 88, 59, 75, 77, 60, 68, 51, 79, 96, 66, 62, 80, 58, 66, 67, 50, 73, 58, 46, 50, 68, 114, 69, 64, 52, 88, 74, 58, 62, 77, 70, 46, 66, 70, 83, 39, 42, 62, 60, 57, 81, 43, 69, 63, 64, 90, 88, 80, 61, 74, 78, 59, 61, 71, 64, 64, 58, 55, 63, 55, 56, 64, 65, 58, 69, 59, 59, 51, 41, 59, 61, 58, 75, 55, 86, 56, 56, 69, 62, 86, 74, 102, 68, 51, 53, 65, 67, 63, 47, 70, 54, 62, 69, 61, 63, 63, 64, 98, 82, 46, 80, 71, 74, 66, 63, 84, 85, 74, 68, 59, 76, 81, 74, 75, 56, 66, 78, 70, 33, 71, 61, 50, 68, 60, 63, 54, 71, 59, 71, 53, 59, 73, 56, 67, 50, 93, 68, 90, 53, 81, 66, 70, 57, 54, 68, 67, 70, 75, 56, 68, 45, 60, 57, 58, 62, 58, 48, 59, 68, 68, 57, 37, 86, 56, 57, 69, 55, 82, 83, 75, 58, 73, 54, 61, 56, 50, 59, 61, 62, 63, 46, 61, 50, 57, 58, 63, 49, 53, 55, 82, 95, 66, 56, 53, 65, 43, 49, 75, 70, 65, 70, 52, 60, 57, 51, 71, 59, 57, 57, 62, 72, 86, 69, 66, 55, 55, 88, 59, 74, 46, 70, 85, 74, 66, 80, 60, 47, 73, 73, 50, 67, 62, 56, 80, 67, 55, 39, 65, 64, 87, 75, 63, 72, 81, 47, 71, 70, 79, 69, 52, 52, 69, 67, 47, 59, 50, 85, 83, 59, 67, 68, 55, 53, 57, 77, 67, 78, 59, 83, 66, 41, 59, 64, 59, 49, 60, 63, 77, 67, 62, 79, 68, 73, 58, 74, 69, 64, 78, 64, 62, 60, 67, 88, 75, 56, 65, 63, 63, 65, 71, 79, 68, 72, 98, 45, 55, 64, 45, 49, 67, 62, 62, 61, 144, 79, 48, 68, 66, 64, 72, 74, 69, 70, 62, 66, 94, 98, 51, 75, 65, 55, 46, 57, 54, 65, 79, 74, 32, 73, 67, 66, 74, 57, 60, 52, 84, 64, 92, 71, 51, 78, 62, 77, 87, 64, 66, 81, 92, 55, 60, 78, 57, 66, 73, 52, 61, 65, 68, 65, 57, 90, 74, 55, 49, 69, 56, 72, 55, 83, 62, 66, 54, 65, 76, 73, 53, 70, 65, 80, 62, 78, 67, 49, 52, 66, 50, 79, 71, 70, 73, 61, 86, 67, 77, 92, 72, 92, 52, 63, 78, 87, 72, 52, 54, 56, 70, 87, 90, 65, 64, 57, 71, 73, 58, 54, 70, 98, 77, 57, 57, 60, 82, 58, 68, 68, 60, 70, 52, 79, 57, 54, 71, 111, 60, 92, 56, 53, 53, 73, 51, 68, 71, 70, 51, 75, 76, 66, 76, 66, 75, 41, 49, 101, 63, 55, 71, 51, 60, 59, 54, 58, 60, 55, 62, 65, 49, 54, 76, 59, 70, 64, 71, 58, 64, 75, 47, 111, 96, 80, 64, 72, 61, 55, 66, 56, 62, 93, 60, 61, 81, 61, 57, 56, 77, 83, 54, 57, 108, 84, 71, 73, 68, 81, 61, 55, 60, 71, 85, 56, 62, 59, 69, 96, 38, 77, 104, 65, 77, 57, 78, 68, 59, 56, 49, 74, 59, 76, 79, 74, 59, 43, 68, 66, 63, 61, 77, 52, 73, 59, 90, 61, 68, 47, 63, 93, 57, 89, 67, 73, 65, 49, 66, 52, 55, 61, 121, 60, 63, 36, 60, 81, 86, 57, 48, 72, 53, 81, 54, 54, 62, 60, 42, 69, 82, 81, 71, 55, 79, 80, 81, 44, 70, 42, 64, 52, 76, 76, 72, 89, 59, 59, 57, 56, 49, 70, 60, 78, 73, 63, 62, 61, 52, 71, 63, 63, 57, 69, 84, 65, 49, 83, 63, 61, 66, 59, 75, 67, 59, 52, 53, 93, 70, 81, 54, 85, 55, 79, 65, 67, 54, 45, 57, 58, 76, 62, 50, 63, 63, 44, 54, 72, 52, 48, 59, 67, 78, 70, 52, 76, 86, 70, 67, 69, 68, 50, 59, 49, 65, 79, 67, 59, 67, 82, 66, 73, 52, 90, 61, 48, 91, 54, 89, 80, 62, 59, 72, 67, 60, 60, 70, 52, 53, 38, 62, 74, 66, 69, 50, 69, 79, 45, 57, 70, 100, 66, 61, 61, 72, 47, 79, 60, 56, 76, 66, 44, 59, 58, 59, 61, 67, 47, 51, 58, 76, 55, 74, 97, 64, 92, 91, 63, 71, 56, 84, 77, 64, 63, 65, 74, 62, 76, 67, 56, 67, 50, 65, 48, 59, 56, 73, 67, 64, 61, 64, 50, 66, 52, 75, 56, 65, 81, 66, 82, 62, 69, 79, 77, 68, 61, 64, 81, 66, 70, 69, 63, 67, 75, 95, 51, 84, 71, 48, 93, 61, 93, 41, 73, 71, 72, 52, 80, 60, 68, 68, 65, 89, 75, 56, 74, 68, 87, 50, 65, 50, 65, 78, 68, 79, 55, 79, 56, 59, 71, 67, 79, 44, 74, 67, 73, 90, 81, 60, 57, 72, 62, 74, 47, 51, 85, 40, 62, 82, 87, 60, 62, 54, 62, 59, 59, 46, 65, 86, 62, 54, 62, 68, 99, 52, 64, 70, 67, 74, 64, 89, 65, 58, 68, 64, 80, 87, 52, 70, 52, 92, 68, 47, 78, 71, 59, 50, 119, 48, 81, 59, 61, 72, 52, 48, 74, 64, 76, 65, 70, 58, 62, 165, 61, 61, 53, 51, 62, 63, 54, 67, 79, 80, 76, 97, 67, 58, 70, 63, 67, 53, 54, 64, 40, 59, 61, 57, 88, 62, 43, 70, 80, 62, 42, 49, 61, 78, 63, 86, 71, 77, 82, 71, 52, 44, 58, 54, 61, 53, 90, 66, 59, 43, 71, 53, 92, 76, 53, 82, 67, 70, 52, 77, 68, 72, 58, 65, 53, 72, 77, 79, 70, 79, 42, 61, 85, 75, 67, 47, 94, 67, 62, 89, 97, 60, 65, 69, 55, 74, 57, 76, 58, 66, 79, 60, 83, 69, 71, 70, 79, 59, 62, 86, 65, 67, 56, 73, 59, 56, 71, 42, 68, 66, 64, 56, 53, 73, 61, 69, 72, 84, 53, 80, 58, 76, 93, 74, 61, 70, 58, 57, 72, 68, 58, 54, 48, 59, 67, 54, 64, 65, 44, 62, 60, 73, 63, 64, 79, 60, 64, 77, 67, 68, 41, 72, 61, 82, 78, 53, 70, 82, 65, 89, 64, 77, 81, 68, 69, 80, 60, 68, 60, 62, 62, 68, 63, 88, 70, 67, 54, 60, 81, 97, 45, 69, 68, 66, 80, 57, 62, 54, 61, 65, 67, 71, 58, 62, 74, 57, 73, 62, 59, 55, 56, 72, 56, 61, 56, 133, 107, 66, 40, 54, 62, 54, 81, 62, 70, 60, 53, 69, 47, 45, 68, 59, 83, 60, 86, 73, 83, 55, 64, 69, 77, 67, 59, 72, 52, 76, 87, 59, 54, 65, 52, 62, 68, 69, 62, 72, 84, 64, 59, 52, 68, 72, 72, 73, 77, 51, 73, 71, 66, 77, 85, 51, 64, 61, 49, 62, 69, 62, 48, 63, 69, 52, 55, 70, 68, 63, 65, 55, 75, 60, 47, 77, 67, 58, 71, 60, 66, 55, 74, 66, 60, 65, 56, 59, 53, 82, 65, 62, 65, 54, 60, 76, 69, 87, 68, 99, 70, 81, 67, 67, 74, 53, 65, 61, 66, 72, 43, 53, 63, 50, 70, 77, 98, 65, 51, 69, 62, 83, 116, 52, 77, 73, 55, 65, 61, 68, 84, 57, 77, 63, 53, 50, 65, 98, 51, 63, 68, 121, 67, 72, 69, 64, 44, 82, 59, 63, 78, 57, 63, 59, 59, 108, 88, 81, 59, 106, 80, 65, 64, 60, 64, 74, 61, 87, 66, 69, 99, 83, 66, 58, 61, 64, 55, 66, 62, 59, 52, 47, 49, 66, 54, 67, 53, 61, 63, 66, 61, 59, 52, 65, 69, 77, 55, 46, 66, 68, 58, 62, 48, 74, 57, 59, 72, 60, 58, 63, 57, 64, 74, 58, 58, 64, 86, 59, 63, 51, 70, 76, 63, 56, 62, 56, 42, 79, 48, 76, 73, 57, 70, 84, 77, 80, 71, 52, 60, 55, 75, 100, 60, 88, 59, 133, 52, 51, 80, 62, 61, 84, 55, 67, 62, 56, 49, 68, 82, 73, 90, 59, 70, 43, 63, 64, 43, 56, 54, 62, 53, 60, 49, 54, 63, 93, 57, 87, 75, 74, 66, 75, 77, 64, 76, 64, 48, 64, 53, 109, 64, 58, 66, 78, 64, 86, 50, 46, 58, 57, 64, 71, 52, 80, 55, 73, 51, 66, 46, 57, 72, 59, 74, 57, 71, 53, 46, 73, 56, 79, 58, 53, 71, 61, 104, 83, 66, 61, 69, 59, 47, 61, 81, 50, 68, 59, 104, 56, 75, 74, 83, 61, 78, 69, 51, 59, 65, 57, 95, 67, 52, 58, 65, 76, 54, 65, 43, 61, 60, 72, 65, 55, 65, 62, 68, 64, 70, 54, 57, 59, 52, 48, 75, 42, 105, 67, 48, 61, 64, 58, 58, 70, 48, 49, 78, 60, 76, 56, 71, 51, 51, 63, 53, 60, 66, 67, 69, 57, 63, 63, 52, 57, 58, 68, 56, 89, 50, 63, 66, 70, 54, 78, 57, 85, 70, 65, 66, 64, 61, 73, 106, 44, 92, 91, 53, 55, 57, 59, 84, 60, 65, 104, 63, 64, 48, 59, 63, 61, 65, 66, 64, 73, 45, 63, 65, 52, 57, 91, 76, 60, 58, 70, 68, 64, 98, 69, 79, 134, 56, 37, 57, 77, 71, 62, 66, 66, 61, 53, 63, 59, 61, 50, 68, 54, 70, 42, 56, 46, 67, 68, 52, 78, 51, 64, 80, 49, 51, 66, 70, 68, 55, 63, 92, 71, 57, 75, 64, 86, 63, 63, 71, 58, 58, 63, 58, 108, 87, 45, 40, 71, 69, 52, 52, 71, 70, 84, 74, 58, 58, 51, 73, 82, 60, 59, 93, 44, 51, 120, 65, 69, 40, 51, 66, 44, 66, 52, 67, 78, 75, 69, 62, 62, 58, 48, 59, 55, 66, 72, 52, 57, 82, 62, 61, 64, 75, 72, 79, 61, 53, 73, 53, 73, 58, 91, 54, 50, 63, 64, 72, 89, 65, 63, 81, 55, 47, 64, 81, 64, 65, 54, 57, 81, 68, 66, 55, 70, 87, 67, 65, 67, 80, 73, 74, 70, 56, 53, 59, 52, 50, 58, 47, 50, 71, 65, 67, 89, 78, 55, 66, 63, 69, 68, 88, 60, 73, 70, 53, 81, 56, 54, 93, 82, 73, 73, 71, 61, 75, 69, 44, 69, 56, 94, 52, 68, 53, 90, 57, 49, 55, 62, 79, 56, 77, 77, 74, 49, 41, 48, 61, 80, 87, 53, 41, 78, 64, 46, 50, 94, 127, 43, 73, 43, 71, 58, 73, 76, 57, 64, 65, 56, 59, 50, 74, 81, 62, 49, 104, 70, 70, 63, 55, 77, 54, 69, 49, 69, 69, 80, 80, 54, 50, 53, 67, 65, 57, 60, 70, 61, 51, 72, 69, 62, 64, 58, 35, 55, 49, 79, 88, 74, 68, 48, 58, 69, 108, 64, 45, 67, 76, 65, 79, 37, 65, 71, 72, 75, 66, 75, 53, 74, 47, 48, 64, 75, 54, 53, 62, 62, 49, 72, 66, 66, 62, 87, 60, 61, 70, 72, 76, 55, 72, 63, 51, 71, 55, 74, 64, 75, 55, 54, 60, 57, 52, 80, 94, 69, 58, 58, 103, 59, 70, 50, 62, 63, 60, 55, 84, 61, 80, 78, 46, 80, 74, 55, 68, 66, 62, 74, 70, 60, 71, 52, 65, 59, 53, 66, 59, 71, 112, 71, 58, 55, 69, 66, 76, 72, 65, 74, 64, 96, 72, 59, 100, 77, 60, 74, 91, 121, 76, 89, 64, 63, 58, 96, 55, 61, 93, 79, 87, 65, 49, 63, 70, 62, 38, 51, 56, 62, 70, 54, 95, 75, 62, 100, 85, 76, 67, 67, 65, 83, 63, 73, 61, 45, 115, 64, 81, 86, 60, 80, 67, 65, 61, 92, 70, 79, 61, 39, 62, 66, 69, 54, 57, 60, 57, 59, 65, 63, 35, 62, 51, 60, 57, 72, 76, 65, 63, 68, 100, 52, 71, 74, 73, 73, 80, 54, 60, 60, 80, 61, 63, 61, 53, 66, 54, 50, 62, 65, 64, 52, 64, 89, 63, 70, 61, 77, 72, 67, 66, 67, 63, 58, 50, 60, 56, 74, 62, 75, 49, 47, 51, 62, 59, 64, 58, 54, 103, 81, 72, 57, 62, 75, 62, 78, 57, 59, 62, 72, 50, 72, 64, 70, 79, 50, 55, 68, 69, 62, 74, 68, 48, 126, 44, 98, 81, 57, 43, 63, 58, 64, 73, 52, 92, 65, 65, 60, 51, 110, 64, 78, 67, 69, 70, 70, 60, 47, 52, 60, 78, 84, 78, 43, 57, 49, 60, 64, 49, 29, 120, 72, 57, 60, 121, 63, 51, 51, 85, 61, 64, 51, 57, 61, 68, 48, 60, 82, 80, 77, 50, 66, 48, 64, 88, 104, 64, 59, 59, 72, 74, 76, 67, 56, 79, 70, 89, 62, 65, 49, 61, 60, 59, 56, 61, 54, 54, 54, 61, 66, 76, 58, 53, 56, 55, 63, 88, 89, 77, 60, 80, 66, 56, 58, 54, 68, 66, 61, 60, 73, 59, 66, 54, 70, 61, 77, 118, 74, 67, 53, 65, 81, 51, 77, 55, 66, 65, 52, 62, 75, 62, 63, 39, 64, 56, 56, 69, 96, 50, 54, 50, 67, 64, 66, 62, 74, 52, 72, 56, 82, 48, 51, 60, 40, 67, 61, 62, 83, 62, 50, 61, 86, 59, 61, 59, 90, 81, 69, 68, 83, 66, 46, 52, 48, 51, 68, 94, 60, 70, 71, 60, 76, 48, 48, 64, 63, 69, 90, 59, 71, 66, 60, 53, 65, 72, 68, 64, 56, 67, 50, 63, 75, 41, 98, 47, 91, 56, 92, 82, 63, 60, 38, 54, 62, 50, 75, 72, 51, 80, 57, 67, 85, 54, 63, 103, 139, 79, 60, 75, 53, 63, 69, 59, 63, 46, 80, 78, 80, 56, 59, 69, 79, 77, 79, 63, 99, 71, 45, 59, 65, 52, 68, 53, 69, 61, 61, 57, 72, 62, 63, 68, 60, 81, 76, 80, 80, 87, 102, 69, 58, 58, 78, 77, 66, 66, 62, 65, 69, 75, 67, 73, 71, 88, 45, 60, 53, 64, 60, 75, 87, 74, 57, 72, 74, 63, 59, 60, 85, 57, 56, 55, 78, 62, 58, 87, 73, 54, 54, 64, 73, 60, 128, 91, 58, 73, 71, 48, 58, 55, 86, 52, 60, 39, 93, 102, 76, 110, 67, 60, 66, 63, 56, 54, 70, 46, 65, 38, 61, 66, 64, 82, 80, 59, 62, 94, 66, 50, 72, 84, 94, 62, 62, 46, 57, 95, 86, 64, 49, 76, 61, 55, 64, 62, 63, 63, 67, 61, 56, 63, 69, 66, 120, 54, 83, 68, 53, 60, 60, 54, 59, 60, 67, 70, 51, 69, 56, 63, 55, 75, 59, 67, 58, 60, 54, 76, 55, 58, 58, 81, 70, 55, 51, 70, 67, 71, 52, 59, 43, 73, 59, 57, 64, 46, 72, 93, 82, 61, 55, 51, 66, 49, 80, 61, 50, 81, 84, 71, 47, 74, 77, 38, 55, 61, 68, 70, 57, 65, 84, 68, 73, 83, 61, 70, 62, 74, 61, 68, 70, 65, 44, 70, 68, 82, 57, 62, 43, 60, 59, 54, 62, 57, 47, 72, 55, 80, 66, 68, 52, 56, 57, 46, 65, 82, 59, 78, 97, 62, 80, 57, 74, 67, 63, 66, 53, 83, 87, 86, 51, 93, 47, 54, 70, 47, 50, 107, 72, 76, 79, 76, 63, 74, 50, 51, 83, 71, 64, 53, 62, 75, 59, 75, 73, 61, 77, 74, 55, 60, 52, 82, 62, 84, 71, 77, 122, 44, 60, 54, 64, 65, 47, 63, 76, 66, 55, 70, 85, 50, 51, 44, 71, 51, 78, 58, 62, 51, 52, 45, 84, 65, 54, 62, 71, 117, 52, 56, 43, 65, 65, 57, 65, 82, 52, 60, 107, 74, 64, 87, 51, 74, 59, 68, 52, 87, 69, 71, 81, 47, 72, 68, 49, 68, 77, 67, 82, 48, 70, 54, 65, 87, 47, 55, 95, 36, 96, 56, 82, 67, 64, 79, 70, 50, 56, 98, 82, 69, 72, 56, 58, 44, 51, 49, 59, 55, 64, 72, 69, 70, 57, 56, 58, 94, 62, 62, 100, 59, 77, 41, 88, 54, 64, 47, 53, 78, 50, 70, 78, 49, 56, 49, 60, 60, 61, 66, 71, 58, 75, 79, 108, 69, 49, 52, 47, 50, 57, 55, 77, 88, 66, 58, 51, 74, 65, 71, 52, 47, 62, 70, 67, 56, 50, 72, 74, 60, 57, 58, 55, 66, 54, 70, 76, 75, 55, 54, 70, 52, 55, 76, 77, 50, 64, 70, 69, 54, 70, 68, 62, 61, 75, 53, 59, 52, 52, 68, 66, 65, 63, 61, 56, 58, 47, 74, 69, 58, 70, 76, 51, 60, 51, 69, 63, 53, 69, 57, 88, 137, 101, 93, 65, 65, 63, 72, 85, 67, 56, 55, 57, 64, 48, 76, 79, 70, 67, 143, 65, 85, 61, 80, 63, 57, 65, 46, 74, 65, 64, 75, 54, 63, 62, 72, 77, 66, 68, 53, 61, 64, 53, 51, 40, 49, 61, 59, 49, 58, 84, 81, 86, 65, 70, 58, 60, 54, 65, 70, 88, 70, 69, 55, 68, 57, 81, 71, 50, 50, 78, 60, 69, 88, 63, 49, 55, 62, 65, 71, 84, 64, 50, 59, 48, 82, 62, 99, 43, 40, 67, 59, 62, 70, 82, 66, 66, 56, 66, 53, 102, 46, 72, 64, 52, 61, 64, 66, 74, 66, 63, 105, 60, 109, 66, 62, 87, 66, 72, 68, 68, 49, 60, 67, 66, 61, 50, 64, 49, 52, 51, 62, 66, 68, 72, 47, 56, 52, 85, 64, 66, 75, 52, 60, 50, 79, 54, 68, 66, 71, 38, 54, 89, 56, 63, 109, 78, 80, 47, 73, 132, 86, 70, 59, 75, 63, 78, 57, 75, 67, 63, 72, 71, 53, 61, 103, 54, 54, 48, 66, 74, 57, 64, 78, 70, 75, 59, 47, 62, 64, 67, 74, 66, 70, 57, 87, 70, 116, 57, 83, 79, 58, 53, 61, 64, 87, 47, 66, 60, 52, 51, 55, 51, 84, 56, 65, 65, 64, 53, 58, 65, 57, 109, 59, 68, 69, 77, 68, 79, 67, 57, 52, 67, 73, 62, 75, 74, 73, 57, 51, 48, 69, 67, 77, 55, 46, 64, 73, 55, 57, 79, 60, 64, 69, 66, 56, 77, 79, 78, 58, 88, 71, 56, 87, 81, 72, 65, 74, 77, 55, 55, 86, 51, 62, 74, 56, 46, 55, 91, 54, 72, 67, 59, 74, 77, 56, 79, 61, 58, 75, 81, 75, 70, 70, 73, 72, 58, 60, 79, 64, 67, 48, 72, 52, 73, 65, 56, 76, 66, 70, 63, 50, 78, 52, 79, 82, 66, 56, 64, 50, 90, 52, 61, 69, 80, 84, 83, 44, 61, 80, 47, 56, 70, 57, 63, 68, 63, 58, 50, 59, 66, 94, 66, 84, 54, 125, 71, 74, 79, 56, 67, 74, 67, 56, 82, 59, 57, 64, 60, 52, 68, 95, 58, 52, 55, 64, 56, 83, 53, 47, 61, 67, 65, 78, 53, 47, 62, 61, 42, 75, 79, 73, 55, 54, 53, 68, 75, 57, 58, 76, 95, 62, 60, 54, 69, 59, 54, 57, 113, 61, 55, 54, 55, 63, 63, 67, 49, 75, 50, 68, 61, 66, 72, 60, 55, 56, 61, 90, 85, 109, 68, 74, 61, 71, 79, 51, 65, 47, 52, 50, 69, 53, 57, 74, 52, 56, 59, 63, 62, 63, 71, 62, 71, 69, 66, 89, 60, 76, 57, 67, 60, 75, 72, 52, 81, 62, 64, 77, 58, 69, 85, 76, 67, 58, 54, 62, 70, 53, 118, 55, 71, 61, 57, 64, 66, 63, 87, 55, 106, 56, 70, 69, 59, 67, 62, 80, 57, 71, 67, 79, 63, 71, 64, 55, 77, 56, 68, 80, 59, 65, 52, 75, 56, 67, 78, 53, 59, 66, 80, 64, 70, 74, 68, 48, 52, 55, 56, 63, 90, 69, 60, 50, 103, 108, 62, 67, 128, 50, 63, 55, 57, 74, 73, 82, 79, 74, 59, 45, 95, 81, 64, 57, 71, 71, 81, 53, 65, 63, 69, 53, 79, 69, 85, 72, 53, 47, 66, 59, 57, 61, 56, 82, 74, 56, 68, 76, 62, 69, 76, 65, 60, 63, 62, 72, 56, 59, 53, 67, 62, 45, 69, 64, 75, 67, 58, 49, 55, 71, 52, 75, 64, 66, 63, 59, 67, 62, 87, 59, 75, 76, 79, 57, 53, 68, 68, 65, 45, 68, 58, 74, 72, 73, 125, 73, 61, 59, 59, 52, 61, 62, 71, 53, 55, 62, 116, 60, 56, 77, 53, 62, 61, 71, 62, 55, 78, 67, 55, 75, 62, 63, 76, 64, 66, 74, 60, 89, 61, 71, 54, 63, 50, 54, 83, 75, 47, 75, 98, 62, 61, 86, 79, 69, 73, 60, 62, 46, 72, 70, 55, 72, 74, 66, 85, 51, 64, 72, 46, 52, 65, 71, 57, 68, 69, 71, 60, 69, 58, 76, 53, 66, 72, 55, 64, 64, 63, 66, 79, 65, 68, 87, 69, 64, 77, 78, 94, 58, 66, 82, 64, 85, 59, 62, 53, 77, 77, 90, 96, 52, 64, 65, 66, 59, 58, 51, 58, 64, 53, 53, 46, 76, 54, 65, 43, 75, 46, 60, 64, 74, 82, 63, 53, 85, 74, 60, 64, 61, 60, 58, 77, 61, 69, 54, 64, 61, 65, 57, 72, 68, 94, 60, 60, 61, 59, 67, 70, 70, 51, 77, 53, 57, 59, 63, 62, 81, 56, 57, 65, 76, 58, 84, 85, 54, 82, 80, 82, 135, 60, 71, 56, 71, 61, 54, 46, 58, 60, 86, 63, 58, 74, 52, 62, 57, 68, 44, 64, 57, 63, 66, 65, 54, 65, 58, 58, 58, 56, 63, 48, 57, 61, 53, 59, 104, 61, 56, 69, 86, 50, 57, 72, 64, 61, 65, 61, 67, 56, 66, 68, 68, 57, 55, 65, 54, 67, 55, 61, 68, 57, 76, 66, 58, 51, 76, 56, 53, 74, 67, 107, 56, 77, 79, 56, 50, 84, 75, 114, 59, 49, 56, 54, 71, 61, 59, 62, 49, 74, 65, 58, 63, 63, 60, 80, 70, 59, 64, 54, 57, 68, 58, 58, 66, 71, 75, 57, 67, 102, 68, 85, 43, 61, 59, 57, 58, 47, 78, 62, 77, 59, 75, 68, 75, 64, 110, 65, 73, 69, 77, 73, 78, 72, 64, 64, 88, 55, 56, 85, 50, 54, 68, 57, 50, 88, 68, 50, 94, 67, 70, 57, 92, 47, 58, 59, 62, 89, 61, 70, 65, 75, 73, 68, 71, 57, 80, 61, 78, 56, 86, 59, 64, 62, 60, 74, 67, 56, 58, 68, 70, 70, 52, 105, 56, 64, 64, 68, 65, 44, 59, 55, 67, 61, 59, 84, 79, 56, 50, 58, 63, 60, 45, 79, 72, 75, 71, 78, 60, 76, 62, 69, 78, 58, 60, 62, 71, 77, 64, 60, 53, 48, 64, 81, 77, 57, 71, 65, 84, 61, 57, 70, 63, 64, 56, 69, 57, 95, 61, 68, 121, 83, 61, 83, 63, 78, 62, 74, 54, 69, 94, 63, 65, 70, 77, 58, 58, 59, 97, 73, 69, 70, 66, 53, 72, 72, 73, 67, 63, 72, 68, 73, 64, 51, 54, 59, 79, 58, 54, 73, 69, 62, 68, 84, 59, 55, 96, 64, 40, 77, 85, 62, 67, 68, 53, 44, 74, 67, 69, 95, 55, 66, 49, 75, 56, 61, 51, 59, 54, 78, 65, 51, 53, 61, 77, 91, 73, 83, 73, 65, 73, 67, 80, 61, 52, 74, 63, 71, 64, 52, 71, 62, 65, 61, 51, 75, 57, 52, 56, 73, 62, 47, 82, 66, 58, 57, 73, 70, 55, 66, 51, 61, 72, 54, 62, 51, 70, 55, 70, 61, 67, 56, 54, 53, 59, 72, 82, 82, 64, 57, 57, 55, 69, 69, 74, 51, 68, 60, 50, 76, 60, 64, 70, 59, 64, 71, 77, 60, 55, 55, 64, 74, 78, 65, 80, 61, 74, 56, 52, 135, 59, 57, 55, 49, 70, 85, 62, 73, 51, 53, 56, 58, 67, 62, 49, 52, 54, 64, 59, 54, 60, 63, 66, 69, 70, 73, 51, 58, 56, 59, 59, 58, 65, 65, 63, 87, 108, 65, 82, 83, 56, 66, 69, 61, 62, 53, 57, 67, 58, 61, 78, 74, 101, 77, 64, 57, 64, 71, 66, 56, 65, 50, 65, 64, 64, 66, 62, 68, 49, 77, 79, 58, 60, 86, 57, 70, 81, 65, 72, 66, 69, 65, 74, 66, 47, 66, 73, 55, 70, 61, 71, 52, 62, 56, 55, 59, 48, 58, 66, 59, 61, 83, 74, 52, 63, 53, 62, 67, 52, 68, 68, 59, 72, 54, 66, 60, 49, 54, 54, 77, 47, 59, 79, 66, 68, 53, 76, 61, 55, 56, 71, 70, 58, 86, 56, 56, 64, 68, 62, 53, 70, 51, 61, 100, 51, 44, 59, 101, 65, 53, 92, 69, 65, 59, 89, 58, 57, 54, 54, 82, 57, 56, 55, 77, 52, 66, 63, 74, 47, 62, 52, 69, 62, 50, 68, 58, 68, 60, 73, 78, 85, 58, 73, 55, 116, 62, 63, 65, 57, 55, 71, 73, 54, 78, 74, 62, 67, 81, 65, 58, 65, 63, 55, 58, 68, 70, 73, 53, 64, 49, 71, 58, 68, 53, 64, 63, 60, 62, 85, 94, 55, 61, 62, 64, 56, 58, 76, 50, 75, 78, 69, 67, 71, 67, 61, 50, 76, 83, 55, 68, 52, 62, 59, 62, 59, 71, 74, 60, 66, 50, 53, 67, 70, 49, 77, 58, 97, 47, 105, 62, 60, 62, 71, 68, 76, 60, 63, 59, 70, 66, 57, 59, 60, 71, 52, 57, 81, 61, 57, 56, 62, 72, 56, 70, 56, 58, 62, 67, 65, 55, 64, 67, 62, 58, 65, 60, 80, 65, 60, 55, 60, 77, 53, 57, 81, 61, 63, 112, 54, 62, 80, 74, 61, 56, 69, 62, 61, 71, 72, 61, 64, 92, 68, 57, 64, 56, 60, 79, 79, 56, 64, 64, 59, 61, 56, 72, 76, 61, 57, 61, 72, 55, 58, 67, 56, 63, 69, 83, 72, 74, 63, 54, 70, 72, 66, 66, 69, 78, 62, 54, 64, 91, 97, 74, 64, 137, 65, 70, 71, 67, 79, 67, 72, 58, 77, 58, 75, 93, 83, 60, 54, 57, 57, 56, 53, 68, 63, 60, 66, 55, 57, 61, 53, 57, 56, 68, 65, 67, 52, 52, 60, 82, 77, 56, 70, 69, 87, 59, 62, 68, 54, 63, 56, 45, 59, 60, 59, 68, 60, 48, 55, 51, 64, 63, 66, 53, 70, 73, 70, 66, 61, 75, 61, 60, 52, 70, 55, 67, 66, 59, 56, 67, 58, 54, 63, 59, 67, 63, 65, 78, 75, 112, 65, 69, 66, 86, 75, 69, 56, 70, 63, 55, 66, 114, 72, 57, 76, 65, 56, 56, 64, 57, 59, 77, 62, 52, 87, 69, 64, 55, 58, 60, 65, 55, 70, 55, 68, 59, 83, 62, 71, 88, 72, 64, 88, 106, 59, 56, 70, 56, 63, 64, 65, 61, 76, 58, 57, 75, 68, 70, 56, 95, 60, 63, 74, 65, 72, 72, 76, 56, 65, 58, 61, 60, 57, 56, 81, 65, 58, 67, 52, 69, 54, 75, 73, 64, 55, 60, 80, 54, 57, 58, 66, 116, 61, 80, 62, 68, 80, 70, 64, 52, 76, 46, 79, 62, 60, 67, 56, 54, 52, 63, 60, 61, 66, 65, 58, 57, 64, 54, 62, 72, 73, 57, 69, 56, 76, 75, 71, 55, 93, 69, 75, 51, 66, 65, 58, 64, 49, 62, 58, 72, 61, 64, 75, 50, 66, 55, 54, 80, 40, 62, 69, 66, 63, 60, 63, 67, 71, 78, 65, 50, 72, 63, 70, 68, 73, 81, 87, 65, 62, 48, 56, 68, 136, 72, 74, 57, 86, 65, 65, 54, 49, 61, 62, 65, 58, 92, 64, 64, 65, 62, 59, 76, 61, 86, 57, 68, 61, 69, 72, 73, 66, 74, 65, 58, 50, 62, 67, 68, 113, 54, 59, 88, 78, 61, 64, 61, 61, 63, 63, 59, 57, 62, 68, 54, 83, 65, 60, 78, 57, 67, 60, 50, 64, 53, 81, 63, 55, 59, 65, 52, 43, 64, 85, 54, 61, 65, 76, 54, 56, 58, 58, 129, 56, 58, 64, 73, 60, 66, 56, 51, 76, 69, 58, 73, 64, 67, 85, 59, 60, 66, 64, 61, 57, 62, 53, 72, 59, 64, 70, 70, 51, 123, 77, 79, 55, 60, 63, 73, 57, 50, 62, 71, 86, 64, 70, 63, 57, 67, 65, 63, 71, 47, 65, 53, 78, 48, 58, 60, 75, 73, 55, 69, 57, 64, 59, 52, 52, 86, 56, 59, 49, 71, 61, 86, 50, 47, 57, 56, 70, 86, 75, 50, 60, 82, 70, 80, 55, 63, 61, 55, 84, 62, 72, 59, 63, 46, 69, 59, 72, 70, 64, 75, 71, 73, 64, 64, 82, 56, 70, 64, 67, 66, 62, 75, 69, 64, 70, 66, 83, 49, 65, 49, 61, 61, 79, 78, 59, 60, 64, 67, 57, 63, 61, 52, 65, 73, 65, 62, 75, 81, 65, 43, 61, 61, 51, 86, 69, 74, 70, 60, 46, 60, 62, 58, 67, 51, 64, 73, 75, 92, 56, 84, 118, 96, 81, 55, 78, 65, 55, 62, 61, 68, 63, 73, 73, 67, 76, 50, 72, 65, 120, 61, 63, 79, 74, 71, 53, 63, 62, 56, 62, 73, 67, 59, 51, 60, 67, 54, 50, 82, 68, 61, 62, 56, 55, 67, 71, 74, 115, 81, 59, 69, 58, 53, 64, 60, 56, 63, 52, 59, 59, 52, 53, 59, 62, 85, 62, 61, 70, 75, 60, 79, 65, 63, 72, 65, 76, 75, 81, 61, 81, 64, 67, 68, 50, 54, 42, 58, 69, 53, 59, 56, 64, 68, 69, 56, 84, 59, 62, 56, 63, 74, 63, 63, 60, 68, 57, 59, 61, 60, 63, 50, 54, 65, 55, 69, 57, 56, 51, 73, 80, 56, 71, 51, 67, 63, 55, 65, 58, 57, 61, 68, 58, 68, 46, 71, 70, 58, 61, 55, 64, 70, 59, 58, 62, 83, 74, 63, 70, 71, 46, 61, 50, 63, 68, 62, 69, 70, 57, 66, 73, 135, 59, 58, 63, 48, 71, 78, 67, 68, 67, 62, 62, 58, 54, 61, 41, 63, 54, 64, 54, 59, 64, 50, 63, 63, 53, 74, 53, 64, 57, 61, 71, 70, 66, 66, 64, 55, 57, 58, 71, 57, 65, 58, 73, 60, 70, 91, 56, 53, 67, 61, 58, 77, 81, 59, 64, 59, 76, 62, 66, 65, 72, 53, 44, 68, 68, 69, 63, 80, 60, 56, 81, 65, 66, 76, 59, 68, 68, 64, 89, 72, 64, 59, 55, 57, 51, 64, 75, 60, 64, 69, 85, 86, 60, 57, 53, 69, 73, 61, 59, 70, 68, 48, 68, 59, 57, 47, 70, 72, 77, 73, 56, 60, 50, 69, 68, 51, 57, 61, 58, 65, 75, 69, 78, 62, 82, 63, 72, 63, 66, 82, 73, 65, 69, 70, 70, 66, 61, 53, 65, 71, 73, 60, 73, 77, 53, 56, 61, 62, 62, 78, 75, 63, 63, 57, 75, 61, 81, 58, 55, 90, 51, 51, 65, 87, 73, 74, 58, 49, 81, 66, 69, 75, 54, 68, 69, 73, 61, 61, 58, 73, 75, 75, 90, 68, 98, 61, 66, 67, 58, 48, 80, 51, 58, 69, 60, 59, 85, 51, 53, 89, 82, 65, 60, 67, 53, 57, 80, 68, 71, 72, 67, 58, 60, 65, 60, 64, 65, 63, 59, 72, 75, 57, 75, 76, 75, 58, 63, 57, 85, 75, 70, 53, 69, 72, 55, 67, 83, 77, 62, 79, 65, 70, 55, 58, 51, 86, 69, 59, 64, 71, 51, 63, 69, 45, 76, 59, 85, 61, 107, 55, 75, 66, 65, 62, 57, 60, 59, 59, 57, 63, 61, 52, 60, 64, 76, 79, 72, 55, 56, 64, 63, 60, 72, 60, 85, 58, 79, 52, 63, 56, 48, 51, 61, 58, 59, 68, 63, 69, 60, 50, 73, 84, 57, 76, 84, 79, 84, 132, 51, 71, 60, 70, 58, 59, 72, 80, 60, 78, 53, 60, 71, 69, 89, 67, 104, 56, 53, 72, 88, 59, 62, 64, 53, 56, 66, 69, 55, 59, 52, 61, 82, 66, 73, 70, 68, 63, 69, 79, 58, 79, 72, 66, 70, 54, 58, 57, 57, 57, 75, 67, 55, 104, 92, 39, 60, 138, 57, 64, 59, 59, 69, 73, 81, 60, 78, 66, 63, 79, 51, 68, 61, 118, 76, 98, 56, 59, 60, 74, 81, 72, 51, 56, 63, 75, 78, 56, 72, 59, 82, 64, 57, 71, 66, 61, 62, 74, 80, 79, 64, 61, 69, 57, 53, 83, 60, 63, 60, 60, 61, 74, 63, 55, 58, 61, 56, 60, 53, 61, 92, 69, 57, 78, 56, 59, 59, 63, 68, 78, 65, 63, 54, 63, 63, 59, 64, 62, 78, 69, 66, 72, 101, 125, 72, 65, 80, 54, 58, 45, 61, 72, 54, 66, 49, 126, 41, 68, 62, 65, 61, 59, 66, 52, 74, 51, 69, 60, 65, 54, 54, 58, 59, 61, 61, 74, 87, 60, 69, 50, 72, 60, 73, 62, 69, 54, 64, 61, 47, 58, 47, 59, 60, 69, 62, 66, 63, 62, 56, 75, 65, 77, 71, 65, 70, 75, 64, 63, 57, 54, 73, 58, 51, 56, 63, 67, 49, 63, 65, 70, 61, 67, 61, 56, 58, 71, 53, 55, 72, 69, 96, 59, 49, 71, 57, 103, 79, 52, 71, 66, 79, 55, 60, 64, 72, 62, 102, 93, 78, 51, 63, 78, 57, 57, 74, 63, 70, 68, 67, 71, 86, 66, 63, 64, 81, 71, 54, 59, 66, 68, 75, 59, 82, 62, 66, 87, 66, 58, 66, 50, 65, 62, 66, 59, 67, 57, 77, 70, 76, 54, 58, 69, 59, 62, 54, 68, 63, 67, 60, 73, 61, 62, 69, 58, 91, 72, 66, 68, 69, 75, 67, 80, 68, 65, 56, 63, 131, 58, 73, 57, 76, 70, 68, 52, 50, 58, 89, 65, 70, 81, 64, 79, 65, 40, 75, 64, 65, 55, 55, 59, 56, 62, 47, 70, 67, 91, 60, 76, 61, 62, 64, 48, 91, 58, 70, 60, 72, 61, 52, 69, 78, 70, 48, 73, 57, 67, 70, 71, 58, 79, 80, 63, 51, 57, 76, 70, 80, 67, 59, 51, 66, 68, 81, 67, 59, 60, 61, 60, 61, 59, 88, 70, 67, 58, 41, 110, 62, 68, 49, 62, 67, 64, 49, 59, 72, 62, 52, 81, 79, 70, 53, 55, 80, 63, 56, 53, 48, 59, 57, 78, 52, 60, 81, 61, 68, 80, 73, 98, 58, 60, 73, 78, 55, 72, 57, 60, 48, 45, 66, 67, 70, 57, 53, 50, 64, 62, 66, 41, 73, 60, 62, 61, 69, 55, 76, 52, 54, 83, 57, 58, 79, 79, 63, 73, 80, 55, 76, 53, 83, 56, 82, 70, 53, 71, 54, 54, 63, 59, 62, 57, 66, 61, 56, 60, 94, 52, 64, 63, 63, 66, 60, 69, 51, 56, 55, 59, 51, 77, 66, 90, 50, 59, 51, 78, 65, 61, 64, 82, 67, 71, 61, 55, 73, 68, 62, 72, 73, 52, 63, 65, 52, 57, 62, 59, 72, 83, 53, 76, 78, 73, 70, 55, 57, 61, 79, 68, 70, 52, 59, 53, 73, 65, 65, 63, 54, 48, 59, 61, 76, 82, 71, 64, 51, 97, 57, 58, 131, 50, 81, 63, 55, 69, 60, 73, 62, 70, 87, 58, 61, 70, 59, 71, 54, 62, 102, 58, 60, 72, 68, 71, 74, 57, 64, 64, 62, 66, 65, 48, 45, 68, 68, 56, 47, 55, 54, 51, 65, 72, 56, 44, 59, 54, 83, 59, 52, 63, 64, 54, 84, 63, 59, 62, 68, 59, 55, 52, 57, 60, 60, 89, 64, 58, 49, 52, 68, 88, 51, 55, 54, 67, 78, 93, 64, 79, 78, 65, 53, 68, 51, 63, 62, 62, 48, 79, 66, 67, 56, 60, 68, 54, 64, 55, 58, 56, 56, 72, 62, 67, 55, 70, 70, 65, 64, 64, 64, 51, 68, 53, 69, 48, 59, 56, 60, 48, 70, 50, 67, 71, 62, 63, 42, 87, 61, 71, 71, 58, 77, 77, 61, 63, 60, 59, 63, 76, 64, 74, 66, 57, 74, 67, 96, 60, 58, 54, 64, 62, 59, 77, 77, 59, 70, 67, 83, 59, 69, 114, 68, 79, 63, 57, 65, 70, 60, 49, 103, 68, 61, 56, 62, 62, 55, 69, 69, 60, 50, 79, 60, 63, 64, 67, 59, 68, 70, 73, 69, 59, 53, 67, 54, 66, 48, 71, 112, 63, 80, 65, 61, 55, 59, 87, 63, 83, 57, 76, 57, 54, 69, 89, 68, 77, 57, 57, 67, 56, 56, 77, 56, 66, 82, 53, 46, 60, 85, 73, 64, 61, 63, 54, 61, 49, 66, 89, 44, 60, 70, 51, 63, 61, 62, 63, 75, 75, 47, 59, 62, 80, 57, 59, 65, 68, 66, 69, 65, 80, 60, 65, 68, 82, 71, 74, 66, 57, 62, 52, 81, 64, 44, 60, 82, 39, 58, 59, 64, 76, 58, 57, 59, 51, 76, 71, 79, 56, 61, 52, 71, 59, 59, 54, 61, 85, 58, 58, 63, 105, 51, 58, 77, 64, 57, 97, 60, 81, 54, 48, 66, 77, 61, 58, 58, 56, 65, 55, 93, 98, 58, 91, 67, 61, 64, 66, 63, 55, 50, 61, 56, 69, 72, 98, 72, 86, 50, 64, 65, 52, 60, 59, 70, 92, 59, 67, 107, 59, 69, 43, 69, 42, 72, 71, 62, 107, 52, 63, 54, 77, 52, 81, 91, 53, 66, 55, 66, 93, 70, 76, 61, 75, 53, 74, 67, 78, 60, 67, 62, 58, 83, 46, 69, 90, 63, 55, 61, 64, 50, 60, 61, 117, 66, 57, 73, 46, 51, 44, 59, 53, 47, 48, 49, 38, 76, 68, 64, 53, 67, 63, 47, 43, 48, 68, 62, 66, 54, 63, 91, 92, 64, 52, 59, 67, 62, 46, 61, 73, 54, 59, 68, 71, 61, 61, 55, 57, 71, 64, 74, 53, 71, 57, 57, 53, 61, 66, 65, 51, 47, 69, 66, 64, 65, 63, 55, 56, 73, 76, 78, 67, 53, 54, 52, 50, 60, 49, 82, 68, 50, 91, 59, 74, 45, 76, 78, 59, 67, 82, 59, 65, 73, 88, 57, 55, 83, 64, 64, 64, 83, 103, 139, 72, 68, 59, 99, 61, 53, 51, 86, 66, 84, 72, 70, 68, 46, 65, 47, 58, 54, 74, 53, 60, 69, 62, 45, 69, 88, 57, 64, 72, 80, 49, 70, 97, 80, 93, 62, 145, 69, 54, 41, 68, 81, 72, 80, 61, 85, 56, 78, 84, 79, 52, 48, 56, 70, 63, 56, 43, 53, 64, 74, 82, 54, 57, 60, 56, 61, 60, 61, 57, 48, 44, 94, 87, 57, 75, 56, 65, 48, 68, 109, 65, 71, 53, 66, 72, 62, 68, 55, 55, 66, 68, 51, 83, 71, 77, 58, 64, 59, 59, 62, 66, 75, 85, 70, 76, 52, 70, 74, 51, 64, 66, 57, 65, 61, 68, 70, 55, 56, 84, 49, 76, 69, 144, 91, 73, 60, 66, 68, 63, 73, 75, 51, 89, 52, 60, 60, 71, 76, 68, 59, 56, 82, 67, 41, 84, 70, 64, 74, 65, 61, 54, 60, 101, 68, 54, 58, 50, 61, 57, 96, 58, 127, 41, 71, 58, 59, 93, 81, 47, 73, 30, 63, 79, 58, 63, 52, 55, 61, 66, 55, 75, 61, 68, 67, 56, 66, 61, 83, 48, 60, 47, 63, 57, 94, 69, 85, 73, 65, 71, 67, 70, 97, 47, 55, 50, 64, 57, 38, 67, 61, 58, 66, 51, 77, 70, 60, 78, 73, 60, 67, 55, 51, 50, 74, 68, 90, 66, 62, 55, 55, 62, 44, 67, 80, 70, 77, 52, 70, 60, 52, 63, 62, 60, 67, 62, 60, 57, 120, 47, 68, 58, 109, 67, 70, 51, 89, 60, 66, 76, 59, 64, 71, 59, 64, 63, 56, 105, 38, 91, 57, 77, 46, 57, 52, 57, 63, 75, 63, 57, 76, 66, 61, 67, 67, 62, 67, 52, 72, 84, 66, 78, 50, 76, 88, 61, 55, 59, 50, 63, 64, 63, 68, 49, 77, 59, 56, 78, 73, 78, 55, 84, 47, 59, 48, 68, 71, 55, 66, 67, 62, 69, 79, 63, 105, 102, 83, 66, 53, 58, 66, 64, 79, 79, 95, 80, 99, 71, 62, 65, 52, 69, 62, 60, 86, 49, 59, 53, 73, 54, 65, 53, 54, 82, 46, 58, 51, 41, 56, 65, 59, 57, 69, 82, 45, 64, 69, 113, 58, 55, 66, 87, 66, 74, 67, 87, 68, 69, 63, 66, 60, 59, 57, 74, 101, 88, 57, 53, 55, 52, 78, 47, 65, 69, 83, 46, 61, 57, 52, 53, 66, 74, 71, 54, 71, 100, 76, 59, 61, 66, 55, 69, 51, 65, 69, 75, 72, 44, 72, 57, 76, 65, 77, 78, 81, 59, 48, 48, 66, 68, 46, 59, 87, 62, 86, 86, 76, 54, 68, 58, 65, 66, 81, 59, 69, 82, 80, 68, 54, 67, 54, 55, 54, 69, 58, 61, 57, 68, 71, 85, 74, 61, 55, 91, 62, 62, 65, 48, 74, 74, 59, 80, 58, 82, 71, 69, 57, 51, 58, 62, 71, 67, 53, 70, 79, 55, 65, 62, 70, 41, 92, 83, 79, 66, 76, 69, 71, 57, 79, 73, 82, 61, 63, 67, 52, 46, 95, 59, 58, 128, 76, 71, 79, 81, 58, 56, 56, 50, 100, 100, 77, 66, 62, 73, 78, 67, 61, 78, 88, 60, 82, 58, 49, 56, 60, 38, 117, 107, 64, 57, 64, 78, 68, 56, 60, 65, 66, 66, 58, 80, 82, 54, 56, 72, 115, 85, 65, 65, 46, 65, 69, 61, 54, 69, 67, 73, 64, 64, 54, 53, 70, 59, 56, 57, 87, 70, 58, 63, 71, 55, 49, 49, 61, 59, 39, 61, 89, 61, 62, 53, 61, 58, 43, 67, 54, 74, 58, 57, 66, 79, 64, 54, 50, 48, 40, 72, 60, 62, 50, 76, 101, 51, 52, 62, 87, 46, 73, 66, 53, 60, 63, 103, 71, 61, 67, 54, 59, 70, 60, 53, 48, 76, 67, 58, 62, 64, 63, 41, 60, 53, 62, 49, 81, 59, 53, 63, 82, 59, 79, 63, 48, 51, 59, 59, 55, 55, 54, 66, 62, 66, 66, 68, 89, 68, 59, 48, 64, 62, 53, 70, 66, 70, 74, 54, 53, 56, 73, 78, 57, 57, 92, 68, 68, 65, 74, 69, 53, 77, 52, 63, 70, 57, 70, 66, 61, 86, 66, 56, 58, 47, 68, 73, 47, 66, 51, 75, 98, 61, 83, 57, 68, 67, 46, 81, 54, 61, 53, 74, 75, 71, 59, 68, 62, 56, 56, 63, 67, 65, 54, 73, 31, 68, 99, 63, 59, 97, 65, 68, 61, 60, 64, 76, 55, 49, 68, 63, 87, 62, 71, 73, 54, 59, 73, 65, 67, 61, 71, 54, 72, 57, 62, 55, 67, 73, 50, 62, 71, 61, 89, 67, 83, 56, 66, 58, 47, 58, 57, 50, 73, 76, 59, 48, 49, 63, 50, 57, 65, 64, 85, 58, 44, 60, 64, 80, 87, 71, 52, 63, 53, 63, 64, 55, 49, 89, 51, 90, 100, 58, 66, 92, 75, 54, 55, 64, 72, 65, 55, 58, 71, 63, 92, 63, 64, 64, 80, 57, 67, 75, 65, 74, 48, 62, 80, 79, 61, 64, 56, 65, 68, 86, 50, 86, 71, 91, 74, 72, 68, 57, 61, 56, 107, 55, 66, 69, 59, 119, 65, 62, 62, 72, 58, 82, 74, 63, 69, 82, 77, 78, 59, 59, 61, 64, 69, 59, 66, 67, 71, 66, 77, 71, 63, 68, 50, 42, 75, 61, 72, 55, 56, 60, 82, 64, 58, 67, 66, 69, 98, 86, 63, 52, 64, 69, 71, 57, 59, 68, 50, 70, 79, 59, 54, 55, 58, 63, 85, 50, 81, 60, 64, 77, 75, 72, 53, 94, 83, 58, 71, 69, 65, 80, 57, 57, 77, 83, 65, 87, 67, 61, 52, 58, 56, 66, 69, 70, 59, 70, 59, 55, 72, 66, 64, 62, 77, 64, 76, 72, 76, 68, 49, 70, 72, 55, 61, 74, 73, 67, 52, 50, 74, 72, 59, 51, 63, 75, 60, 48, 63, 91, 54, 67, 60, 69, 53, 77, 61, 64, 74, 86, 58, 77, 77, 55, 60, 60, 79, 71, 63, 61, 77, 71, 69, 99, 64, 92, 58, 87, 71, 65, 75, 56, 68, 73, 69, 61, 70, 71, 58, 63, 87, 68, 58, 62, 64, 95, 81, 65, 85, 70, 62, 74, 52, 73, 61, 63, 52, 61, 59, 59, 96, 59, 56, 52, 60, 90, 62, 65, 59, 58, 48, 55, 57, 58, 69, 57, 81, 78, 66, 90, 51, 71, 76, 125, 66, 68, 75, 57, 84, 84, 79, 72, 75, 77, 62, 83, 84, 64, 94, 103, 61, 56, 62, 73, 84, 67, 85, 78, 57, 62, 47, 57, 56, 66, 65, 57, 68, 59, 68, 67, 60, 69, 57, 61, 80, 90, 53, 66, 49, 60, 65, 60, 63, 55, 57, 63, 84, 58, 60, 62, 61, 73, 79, 66, 47, 65, 82, 72, 58, 73, 62, 75, 60, 70, 56, 57, 62, 75, 71, 67, 78, 62, 70, 72, 61, 85, 61, 70, 71, 139, 55, 51, 85, 71, 70, 67, 55, 76, 60, 67, 57, 96, 74, 86, 83, 57, 66, 60, 67, 66, 58, 73, 49, 63, 54, 64, 70, 60, 58, 67, 55, 62, 63, 51, 67, 62, 61, 89, 82, 63, 91, 70, 63, 101, 65, 52, 66, 72, 53, 71, 55, 62, 66, 58, 72, 63, 57, 77, 71, 46, 61, 64, 79, 51, 73, 49, 63, 75, 57, 55, 86, 61, 75, 70, 63, 71, 52, 62, 58, 79, 53, 59, 64, 57, 61, 61, 75, 66, 43, 58, 64, 74, 80, 53, 57, 69, 55, 76, 57, 53, 64, 92, 64, 59, 60, 53, 67, 81, 45, 67, 62, 64, 52, 61, 58, 64, 81, 80, 56, 66, 53, 59, 57, 57, 86, 66, 58, 57, 94, 76, 74, 65, 57, 55, 64, 65, 65, 63, 60, 63, 69, 60, 50, 88, 51, 65, 60, 69, 58, 65, 66, 61, 68, 70, 54, 55, 103, 70, 68, 54, 66, 66, 66, 62, 56, 75, 90, 61, 59, 53, 62, 59, 66, 60, 66, 70, 87, 56, 69, 55, 56, 57, 101, 60, 74, 61, 64, 69, 60, 62, 59, 64, 68, 74, 55, 65, 69, 63, 86, 57, 61, 76, 43, 48, 59, 62, 68, 65, 65, 75, 73, 68, 54, 68, 70, 72, 51, 73, 45, 89, 68, 70, 64, 64, 74, 68, 79, 67, 58, 69, 58, 59, 56, 63, 65, 58, 59, 71, 86, 69, 48, 70, 77, 55, 54, 76, 83, 62, 70, 79, 54, 140, 52, 65, 58, 57, 53, 43, 63, 57, 87, 74, 59, 86, 54, 105, 77, 66, 64, 96, 73, 49, 80, 48, 54, 73, 71, 69, 67, 64, 57, 51, 83, 65, 61, 53, 62, 85, 58, 64, 58, 64, 75, 51, 59, 58, 80, 54, 73, 61, 67, 56, 56, 53, 74, 116, 53, 69, 66, 71, 57, 60, 68, 62, 56, 66, 71, 80, 68, 51, 65, 68, 51, 68, 53, 71, 59, 67, 57, 65, 60, 64, 63, 71, 73, 76, 59, 65, 78, 57, 52, 58, 60, 74, 76, 56, 67, 80, 76, 68, 66, 67, 64, 79, 61, 82, 58, 64, 63, 60, 84, 52, 61, 54, 71, 58, 62, 65, 98, 85, 56, 63, 57, 49, 93, 77, 43, 63, 71, 55, 55, 83, 80, 67, 67, 61, 79, 54, 58, 87, 69, 80, 84, 61, 72, 66, 61, 77, 55, 66, 82, 59, 62, 46, 65, 74, 60, 65, 52, 94, 58, 56, 127, 84, 76, 52, 55, 60, 71, 88, 58, 55, 63, 80, 66, 65, 65, 63, 76, 63, 93, 51, 64, 66, 51, 68, 72, 67, 57, 66, 47, 66, 62, 84, 59, 67, 71, 62, 52, 45, 65, 85, 98, 54, 69, 58, 58, 71, 83, 50, 44, 70, 62, 68, 67, 63, 59, 52, 65, 61, 49, 72, 51, 65, 76, 53, 77, 60, 59, 59, 59, 66, 61, 67, 74, 75, 55, 68, 71, 69, 82, 62, 76, 63, 56, 64, 83, 71, 63, 58, 64, 59, 62, 56, 65, 66, 38, 67, 71, 64, 64, 87, 58, 83, 53, 52, 81, 71, 62, 53, 57, 58, 81, 65, 69, 64, 60, 65, 67, 82, 57, 42, 69, 59, 63, 73, 56, 73, 64, 71, 57, 60, 57, 58, 69, 59, 65, 49, 61, 54, 73, 70, 75, 47, 61, 57, 104, 64, 79, 63, 64, 61, 72, 80, 70, 47, 61, 55, 67, 69, 66, 154, 78, 75, 58, 40, 62, 66, 57, 66, 85, 62, 52, 66, 56, 63, 48, 55, 61, 60, 60, 81, 59, 67, 80, 86, 79, 54, 61, 81, 59, 70, 58, 60, 61, 68, 60, 74, 65, 57, 70, 87, 65, 67, 59, 49, 51, 64, 63, 53, 63, 76, 61, 67, 80, 46, 59, 58, 71, 75, 67, 60, 59, 67, 66, 71, 74, 72, 65, 61, 75, 65, 64, 42, 69, 70, 64, 97, 72, 64, 56, 60, 79, 85, 59, 63, 61, 55, 60, 61, 53, 78, 64, 75, 67, 66, 51, 68, 68, 70, 65, 58, 60, 65, 62, 74, 63, 57, 56, 59, 78, 72, 81, 60, 67, 75, 54, 69, 68, 66, 54, 70, 63, 54, 60, 72, 81, 58, 54, 56, 67, 65, 63, 48, 55, 71, 62, 50, 52, 56, 74, 74, 57, 64, 58, 78, 51, 80, 60, 88, 72, 62, 59, 85, 67, 50, 70, 63, 65, 56, 55, 96, 61, 78, 66, 60, 74, 54, 52, 65, 59, 67, 58, 73, 58, 59, 55, 66, 62, 64, 60, 62, 93, 57, 41, 62, 118, 57, 61, 80, 59, 66, 54, 64, 54, 76, 52, 49, 61, 75, 63, 80, 74, 53, 63, 57, 48, 38, 74, 61, 63, 60, 67, 62, 84, 84, 60, 62, 69, 66, 72, 41, 56, 69, 59, 67, 56, 61, 46, 72, 69, 58, 64, 66, 72, 51, 83, 72, 71, 71, 62, 54, 57, 67, 52, 56, 54, 61, 67, 66, 58, 66, 71, 51, 62, 68, 79, 63, 86, 86, 79, 55, 62, 59, 62, 69, 63, 61, 48, 54, 61, 54, 64, 56, 63, 54, 55, 64, 58, 54, 90, 71, 57, 67, 59, 60, 84, 59, 64, 64, 64, 61, 64, 65, 59, 64, 62, 67, 53, 61, 79, 70, 76, 47, 76, 64, 57, 58, 65, 65, 74, 77, 84, 63, 63, 72, 57, 53, 65, 89, 56, 83, 64, 65, 67, 78, 61, 61, 63, 88, 72, 70, 70, 50, 59, 60, 59, 77, 46, 78, 75, 57, 76, 57, 41, 68, 59, 71, 57, 72, 68, 52, 63, 63, 72, 67, 63, 67, 50, 59, 69, 66, 58, 120, 56, 68, 56, 124, 74, 70, 60, 58, 55, 55, 71, 74, 66, 63, 85, 83, 82, 58, 78, 47, 66, 74, 60, 58, 62, 60, 77, 64, 65, 100, 63, 78, 76, 85, 58, 63, 56, 63, 68, 62, 72, 62, 75, 58, 57, 62, 67, 61, 48, 67, 56, 69, 72, 59, 70, 54, 60, 62, 76, 69, 64, 45, 61, 54, 68, 57, 99, 86, 60, 70, 65, 70, 56, 82, 71, 66, 59, 57, 55, 69, 72, 58, 49, 55, 72, 51, 52, 75, 86, 66, 83, 73, 65, 62, 64, 77, 56, 56, 60, 71, 104, 113, 58, 60, 61, 73, 69, 51, 78, 74, 81, 55, 61, 62, 105, 70, 66, 80, 64, 88, 74, 55, 85, 69, 56, 61, 92, 78, 54, 58, 74, 62, 82, 89, 62, 63, 50, 72, 64, 87, 57, 60, 54, 64, 52, 54, 67, 68, 60, 87, 84, 76, 64, 57, 60, 40, 60, 53, 63, 59, 65, 69, 59, 72, 84, 48, 65, 67, 53, 64, 64, 68, 58, 56, 67, 73, 64, 54, 55, 51, 63, 82, 61, 82, 82, 60, 68, 57, 56, 81, 50, 65, 93, 96, 55, 63, 66, 85, 65, 60, 76, 66, 66, 61, 67, 59, 58, 71, 65, 73, 66, 57, 73, 57, 99, 56, 67, 64, 94, 62, 71, 64, 64, 82, 56, 63, 57, 63, 67, 54, 68, 64, 87, 63, 70, 77, 70, 74, 85, 69, 54, 64, 70, 90, 55, 42, 58, 67, 69, 57, 114, 51, 64, 69, 83, 57, 58, 66, 67, 62, 62, 54, 120, 52, 65, 49, 64, 77, 62, 68, 62, 56, 78, 68, 58, 64, 61, 85, 50, 79, 70, 69, 62, 46, 47, 56, 66, 58, 62, 54, 70, 77, 56, 68, 58, 72, 61, 64, 83, 67, 73, 86, 62, 49, 69, 71, 68, 55, 68, 73, 80, 75, 56, 50, 71, 64, 58, 63, 56, 67, 60, 56, 44, 55, 52, 64, 70, 74, 57, 65, 59, 78, 75, 93, 59, 56, 73, 63, 77, 79, 65, 106, 52, 59, 68, 54, 49, 65, 62, 72, 72, 86, 64, 72, 51, 53, 64, 66, 81, 66, 67, 68, 67, 59, 66, 66, 70, 61, 66, 57, 52, 135, 84, 83, 76, 62, 61, 69, 64, 77, 59, 87, 51, 56, 72, 67, 69, 68, 50, 73, 110, 58, 75, 75, 61, 78, 48, 59, 57, 81, 68, 84, 60, 78, 66, 78, 72, 80, 55, 59, 68, 58, 80, 60, 73, 62, 68, 68, 61, 64, 53, 55, 58, 76, 48, 73, 71, 67, 62, 54, 106, 62, 65, 64, 52, 84, 70, 80, 61, 59, 57, 54, 54, 57, 81, 105, 59, 54, 64, 57, 52, 73, 65, 53, 55, 71, 58, 67, 70, 76, 72, 56, 65, 49, 56, 90, 61, 71, 65, 55, 72, 77, 72, 57, 77, 108, 61, 71, 59, 75, 75, 65, 57, 73, 59, 67, 55, 70, 73, 55, 67, 62, 63, 58, 93, 94, 67, 65, 56, 83, 61, 55, 114, 67, 98, 38, 55, 53, 53, 48, 58, 60, 65, 59, 68, 83, 71, 55, 79, 58, 129, 70, 70, 73, 56, 65, 67, 81, 57, 70, 74, 65, 72, 65, 69, 55, 69, 82, 68, 52, 69, 60, 66, 61, 50, 64, 69, 78, 78, 50, 60, 63, 70, 48, 88, 72, 74, 53, 45, 64, 81, 85, 46, 59, 62, 95, 63, 60, 58, 62, 62, 71, 56, 65, 78, 64, 75, 73, 72, 61, 74, 60, 54, 71, 51, 66, 64, 40, 62, 66, 63, 58, 60, 66, 68, 54, 66, 67, 67, 51, 61, 65, 63, 80, 59, 68, 87, 48, 64, 61, 66, 65, 48, 69, 98, 49, 74, 65, 69, 62, 58, 62, 122, 58, 54, 63, 69, 71, 58, 66, 64, 70, 65, 62, 64, 67, 59, 67, 53, 71, 67, 74, 66, 69, 76, 69, 101, 64, 58, 70, 55, 53, 54, 72, 83, 62, 81, 63, 86, 50, 54, 117, 58, 82, 72, 54, 58, 67, 63, 57, 67, 95, 75, 93, 62, 60, 42, 63, 66, 61, 50, 54, 65, 70, 59, 61, 81, 51, 79, 78, 60, 56, 60, 81, 58, 65, 49, 56, 101, 65, 54, 66, 63, 46, 58, 49, 69, 68, 54, 61, 73, 69, 74, 61, 90, 48, 70, 52, 71, 66, 63, 68, 77, 54, 75, 52, 63, 73, 59, 56, 67, 53, 51, 55, 87, 70, 55, 71, 66, 57, 56, 61, 77, 51, 103, 50, 88, 80, 72, 59, 63, 87, 71, 63, 60, 66, 76, 58, 62, 58, 96, 74, 64, 69, 61, 82, 74, 78, 53, 58, 55, 65, 65, 55, 74, 55, 56, 69, 65, 73, 50, 39, 66, 51, 56, 66, 45, 61, 64, 54, 69, 66, 63, 54, 58, 71, 54, 64, 65, 98, 50, 61, 59, 57, 68, 58, 68, 67, 56, 117, 68, 54, 56, 66, 60, 75, 76, 59, 58, 75, 53, 97, 63, 78, 78, 72, 71, 82, 87, 81, 79, 64, 57, 62, 97, 50, 75, 55, 62, 63, 54, 63, 63, 81, 62, 45, 75, 57, 57, 86, 58, 81, 53, 51, 41, 66, 81, 62, 65, 53, 80, 71, 67, 65, 60, 77, 65, 69, 66, 88, 51, 70, 61, 63, 58, 70, 57, 67, 66, 51, 71, 44, 63, 51, 58, 89, 68, 98, 60, 70, 69, 65, 71, 84, 64, 69, 55, 69, 62, 37, 42, 67, 57, 89, 61, 48, 66, 82, 61, 62, 68, 76, 67, 57, 60, 73, 59, 55, 70, 58, 103, 69, 53, 60, 56, 47, 57, 74, 84, 66, 63, 51, 91, 72, 38, 79, 73, 66, 59, 56, 56, 78, 66, 72, 57, 84, 66, 64, 57, 81, 75, 78, 73, 52, 71, 113, 75, 76, 58, 58, 78, 70, 58, 96, 64, 54, 57, 61, 67, 96, 58, 52, 58, 74, 77, 62, 61, 71, 68, 71, 83, 52, 65, 63, 120, 81, 61, 70, 67, 48, 90, 74, 52, 67, 44, 71, 70, 61, 51, 56, 75, 70, 60, 74, 64, 65, 59, 45, 64, 149, 50, 62, 63, 65, 72, 59, 98, 74, 62, 56, 58, 44, 49, 77, 111, 89, 70, 115, 58, 60, 60, 70, 90, 84, 58, 56, 76, 52, 68, 80, 75, 58, 77, 62, 62, 55, 60, 60, 70, 63, 69, 93, 52, 61, 78, 59, 60, 60, 68, 55, 65, 69, 76, 46, 110, 60, 89, 61, 50, 74, 64, 62, 55, 56, 65, 58, 77, 69, 59, 70, 47, 92, 49, 68, 44, 69, 42, 58, 70, 60, 88, 66, 74, 81, 72, 70, 66, 69, 65, 69, 53, 63, 60, 62, 74, 70, 59, 73, 53, 72, 53, 78, 62, 68, 47, 56, 56, 58, 70, 61, 66, 66, 55, 68, 65, 78, 59, 70, 85, 66, 52, 55, 58, 54, 44, 52, 67, 79, 51, 63, 57, 73, 68, 71, 55, 64, 103, 53, 55, 68, 66, 50, 70, 55, 62, 59, 71, 54, 58, 54, 51, 55, 60, 85, 57, 57, 74, 74, 52, 50, 44, 102, 71, 71, 56, 60, 64, 58, 74, 68, 50, 67, 62, 50, 49, 93, 49, 66, 65, 42, 70, 60, 65, 67, 55, 62, 54, 60, 43, 62, 65, 50, 61, 57, 83, 56, 59, 61, 69, 59, 54, 56, 62, 64, 76, 63, 62, 55, 59, 69, 57, 87, 62, 69, 48, 54, 59, 50, 56, 63, 75, 56, 65, 61, 71, 56, 57, 65, 85, 68, 74, 67, 63, 70, 59, 63, 80, 51, 60, 48, 63, 67, 71, 59, 60, 62, 57, 115, 65, 67, 67, 55, 62, 84, 64, 51, 60, 69, 64, 63, 64, 80, 53, 74, 59, 74, 75, 61, 57, 70, 57, 60, 72, 62, 64, 63, 57, 75, 59, 72, 68, 59, 54, 65, 61, 103, 57, 74, 36, 58, 59, 73, 75, 64, 68, 51, 93, 64, 65, 64, 65, 55, 78, 72, 51, 71, 54, 50, 71, 69, 58, 60, 83, 50, 65, 80, 57, 54, 77, 77, 52, 52, 66, 66, 92, 93, 70, 61, 69, 51, 60, 47, 53, 60, 83, 56, 70, 57, 47, 58, 61, 60, 69, 70, 64, 75, 107, 86, 66, 66, 48, 60, 61, 74, 67, 52, 58, 72, 56, 69, 68, 82, 62, 48, 77, 53, 75, 64, 58, 55, 59, 101, 60, 61, 73, 69, 71, 87, 44, 76, 58, 58, 108, 65, 64, 64, 93, 86, 60, 64, 58, 69, 49, 83, 63, 79, 61, 72, 58, 64, 60, 60, 60, 55, 77, 50, 63, 59, 69, 86, 56, 59, 57, 59, 45, 105, 81, 50, 72, 79, 69, 61, 62, 79, 93, 68, 49, 45, 63, 82, 66, 60, 73, 65, 64, 50, 56, 86, 75, 56, 60, 82, 96, 78, 97, 62, 60, 56, 104, 60, 45, 64, 53, 66, 70, 47, 47, 54, 66, 97, 85, 61, 55, 65, 69, 74, 60, 78, 70, 62, 50, 60, 77, 70, 77, 66, 57, 62, 46, 88, 62, 68, 65, 75, 64, 75, 69, 88, 97, 74, 52, 60, 62, 80, 69, 46, 68, 57, 69, 71, 74, 89, 70, 62, 90, 74, 63, 50, 69, 69, 59, 62, 55, 71, 44, 84, 59, 51, 37, 74, 59, 68, 56, 67, 61, 79, 59, 63, 61, 72, 72, 62, 72, 58, 114, 53, 64, 56, 64, 56, 55, 84, 67, 69, 59, 57, 52, 57, 83, 58, 72, 59, 51, 67, 57, 56, 56, 50, 52, 60, 62, 65, 68, 64, 57, 57, 61, 64, 75, 81, 74, 63, 64, 66, 66, 98, 49, 52, 68, 75, 57, 77, 77, 76, 75, 65, 75, 77, 70, 80, 56, 78, 60, 75, 76, 61, 68, 65, 69, 49, 72, 61, 62, 67, 59, 120, 64, 53, 62, 63, 88, 64, 57, 66, 60, 68, 54, 67, 45, 67, 68, 80, 64, 57, 57, 100, 89, 56, 63, 59, 55, 54, 62, 78, 66, 63, 73, 66, 56, 74, 53, 44, 93, 61, 53, 73, 65, 70, 104, 91, 53, 63, 51, 52, 75, 62, 65, 51, 50, 78, 59, 88, 56, 56, 72, 66, 61, 90, 60, 51, 78, 67, 77, 85, 67, 59, 60, 49, 69, 95, 62, 76, 57, 73, 71, 65, 61, 78, 89, 54, 87, 80, 78, 59, 54, 69, 82, 54, 64, 65, 61, 48, 67, 56, 53, 52, 66, 67, 66, 51, 67, 117, 78, 67, 74, 56, 57, 55, 53, 61, 59, 65, 57, 51, 63, 70, 57, 65, 113, 68, 55, 53, 74, 59, 62, 56, 79, 64, 85, 58, 54, 60, 57, 69, 49, 84, 60, 59, 53, 57, 51, 88, 71, 56, 79, 52, 50, 60, 54, 73, 67, 63, 68, 79, 46, 64, 60, 82, 61, 73, 63, 61, 63, 67, 62, 60, 55, 53, 66, 54, 62, 64, 49, 60, 67, 56, 46, 56, 64, 47, 74, 71, 64, 50, 75, 72, 104, 72, 56, 59, 59, 56, 53, 54, 72, 71, 46, 46, 59, 71, 62, 53, 62, 89, 57, 69, 66, 68, 57, 71, 61, 96, 74, 52, 73, 70, 66, 55, 65, 43, 65, 68, 95, 89, 68, 129, 68, 57, 62, 50, 63, 82, 103, 62, 83, 53, 86, 50, 75, 70, 66, 46, 65, 54, 64, 45, 74, 88, 83, 56, 68, 56, 55, 65, 56, 68, 62, 59, 53, 67, 63, 48, 88, 68, 63, 45, 50, 60, 57, 75, 84, 44, 58, 105, 69, 69, 64, 58, 76, 59, 56, 53, 61, 77, 58, 92, 83, 44, 72, 72, 77, 82, 65, 74, 67, 59, 70, 64, 70, 76, 63, 89, 86, 57, 47, 62, 53, 75, 55, 70, 67, 109, 69, 62, 57, 75, 56, 48, 58, 57, 65, 61, 66, 62, 95, 88, 48, 65, 54, 71, 56, 64, 74, 62, 70, 64, 75, 76, 44, 80, 74, 75, 73, 58, 58, 68, 67, 82, 60, 66, 77, 70, 63, 68, 81, 65, 58, 66, 52, 50, 65, 77, 65, 65, 49, 61, 67, 71, 67, 65, 62, 50, 95, 93, 52, 59, 91, 82, 70, 69, 64, 84, 63, 83, 61, 67, 61, 79, 101, 67, 64, 78, 57, 45, 61, 57, 83, 59, 67, 53, 65, 75, 64, 64, 62, 62, 45, 73, 69, 93, 78, 76, 57, 149, 75, 45, 49, 55, 61, 63, 57, 75, 63, 51, 44, 53, 67, 72, 100, 72, 65, 111, 70, 70, 57, 58, 65, 72, 58, 68, 64, 57, 68, 95, 70, 79, 57, 61, 65, 67, 42, 72, 40, 64, 44, 100, 59, 76, 62, 73, 73, 63, 63, 43, 52, 67, 76, 60, 87, 56, 69, 76, 52, 54, 69, 63, 48, 58, 70, 63, 66, 67, 64, 57, 77, 87, 65, 71, 61, 40, 56, 60, 88, 70, 78, 55, 87, 70, 52, 36, 53, 55, 74, 65, 72, 75, 64, 62, 75, 79, 62, 84, 61, 44, 65, 73, 63, 73, 71, 55, 60, 72, 60, 62, 76, 42, 56, 58, 80, 56, 64, 78, 59, 61, 58, 55, 57, 60, 61, 62, 64, 67, 57, 53, 64, 72, 70, 86, 63, 51, 73, 63, 67, 61, 53, 86, 64, 53, 58, 67, 48, 48, 71, 51, 74, 64, 54, 74, 79, 62, 78, 92, 53, 64, 43, 109, 56, 79, 73, 53, 65, 55, 91, 76, 44, 79, 70, 60, 59, 94, 43, 56, 68, 64, 80, 61, 73, 70, 62, 58, 65, 49, 58, 75, 61, 52, 75, 65, 112, 49, 63, 75, 69, 55, 49, 61, 76, 76, 57, 63, 48, 63, 47, 61, 65, 70, 64, 57, 66, 44, 45, 51, 59, 59, 93, 62, 73, 73, 84, 66, 62, 63, 65, 74, 70, 59, 67, 55, 62, 59, 49, 47, 75, 41, 54, 56, 56, 72, 67, 66, 69, 108, 40, 51, 64, 65, 77, 82, 42, 73, 62, 71, 62, 67, 52, 57, 52, 83, 71, 50, 90, 59, 56, 63, 70, 81, 77, 70, 58, 75, 55, 67, 65, 54, 82, 62, 67, 45, 65, 54, 83, 86, 64, 50, 68, 66, 68, 54, 60, 50, 92, 74, 66, 56, 76, 66, 48, 69, 55, 60, 54, 46, 103, 67, 65, 55, 66, 61, 65, 56, 66, 53, 59, 83, 106, 56, 34, 85, 60, 70, 73, 63, 60, 55, 55, 62, 58, 54, 54, 63, 91, 63, 60, 50, 61, 58, 63, 63, 58, 68, 108, 75, 61, 60, 58, 69, 72, 65, 48, 55, 77, 92, 51, 64, 68, 49, 64, 58, 71, 57, 65, 58, 64, 67, 37, 71, 45, 78, 67, 55, 40, 61, 57, 67, 72, 66, 105, 76, 57, 77, 74, 103, 65, 73, 46, 54, 44, 46, 54, 94, 67, 73, 53, 47, 82, 88, 71, 63, 47, 69, 57, 59, 56, 58, 56, 65, 63, 73, 48, 82, 69, 60, 67, 55, 74, 50, 68, 61, 70, 68, 70, 55, 56, 54, 75, 52, 59, 56, 69, 60, 48, 61, 73, 68, 62, 60, 66, 87, 63, 56, 63, 65, 86, 58, 59, 66, 58, 53, 53, 60, 65, 56, 74, 57, 71, 42, 70, 80, 47, 62, 64, 86, 78, 79, 54, 61, 67, 61, 58, 58, 49, 55, 59, 92, 56, 71, 76, 59, 80, 55, 57, 82, 73, 84, 60, 60, 72, 67, 66, 65, 74, 58, 63, 63, 76, 58, 58, 47, 104, 91, 59, 67, 70, 67, 80, 69, 67, 63, 66, 47, 66, 57, 56, 78, 65, 64, 66, 67, 85, 82, 45, 58, 66, 68, 59, 46, 59, 50, 120, 57, 68, 58, 53, 70, 60, 79, 74, 46, 54, 49, 55, 64, 68, 68, 83, 75, 49, 62, 70, 62, 91, 78, 78, 51, 74, 45, 56, 92, 61, 73, 62, 76, 75, 77, 79, 63, 68, 68, 74, 101, 67, 44, 70, 67, 72, 81, 82, 63, 75, 50, 62, 62, 55, 56, 69, 66, 70, 73, 65, 58, 60, 60, 59, 64, 77, 52, 59, 57, 51, 117, 58, 49, 52, 59, 81, 52, 61, 86, 66, 61, 62, 73, 41, 71, 45, 67, 58, 50, 53, 93, 84, 72, 51, 73, 69, 59, 61, 61, 67, 68, 78, 61, 60, 68, 58, 54, 73, 83, 71, 78, 57, 73, 46, 81, 63, 50, 57, 73, 67, 87, 74, 90, 53, 61, 58, 69, 65, 63, 64, 46, 66, 111, 65, 62, 62, 68, 61, 64, 88, 78, 85, 51, 57, 111, 56, 77, 75, 70, 59, 65, 51, 55, 68, 59, 84, 68, 67, 57, 58, 66, 86, 63, 52, 63, 66, 64, 62, 53, 53, 68, 68, 66, 80, 55, 80, 113, 55, 56, 84, 74, 58, 57, 57, 66, 58, 66, 51, 65, 77, 55, 70, 92, 113, 54, 56, 57, 78, 77, 58, 53, 68, 57, 64, 48, 53, 65, 51, 77, 70, 57, 94, 47, 70, 74, 61, 72, 72, 50, 105, 71, 77, 57, 58, 62, 47, 63, 73, 95, 63, 74, 74, 64, 71, 95, 72, 60, 74, 77, 53, 64, 63, 60, 53, 42, 28, 70, 65, 57, 87, 44, 45, 67, 57, 73, 81, 75, 69, 58, 66, 54, 121, 86, 49, 45, 55, 49, 57, 60, 52, 79, 36, 54, 57, 67, 32, 53, 67, 80, 62, 70, 68, 60, 59, 78, 59, 91, 65, 45, 64, 54, 56, 62, 57, 55, 85, 67, 63, 109, 65, 122, 75, 93, 68, 57, 55, 41, 70, 79, 57, 58, 58, 63, 63, 48, 95, 70, 78, 66, 54, 78, 61, 108, 74, 54, 40, 63, 64, 71, 58, 71, 52, 65, 70, 74, 72, 65, 80, 76, 76, 54, 57, 57, 50, 53, 70, 73, 80, 82, 50, 66, 82, 56, 58, 66, 56, 62, 73, 69, 55, 58, 62, 99, 71, 98, 76, 59, 80, 76, 70, 60, 42, 65, 55, 75, 51, 59, 65, 57, 65, 61, 56, 71, 55, 72, 58, 60, 58, 53, 72, 66, 71, 55, 67, 68, 79, 87, 55, 46, 113, 58, 79, 68, 75, 54, 56, 78, 64, 87, 73, 59, 85, 59, 67, 62, 59, 65, 75, 83, 57, 59, 70, 83, 75, 63, 54, 65, 69, 81, 72, 55, 57, 59, 65, 106, 49, 72, 67, 70, 66, 77, 85, 69, 43, 57, 77, 64, 83, 92, 70, 88, 63, 65, 69, 58, 93, 67, 44, 54, 58, 47, 59, 63, 116, 83, 51, 66, 79, 48, 75, 96, 55, 72, 58, 65, 55, 54, 51, 79, 73, 59, 82, 65, 55, 66, 44, 56, 59, 141, 53, 69, 65, 59, 72, 66, 70, 59, 61, 61, 51, 65, 62, 56, 113, 57, 72, 113, 81, 68, 67, 54, 67, 68, 74, 62, 80, 48, 62, 74, 66, 84, 60, 48, 62, 58, 78, 67, 60, 58, 56, 87, 57, 54, 71, 61, 62, 58, 62, 57, 67, 56, 63, 84, 60, 64, 90, 73, 53, 47, 56, 68, 69, 74, 70, 70, 56, 54, 82, 54, 67, 53, 51, 49, 63, 73, 51, 84, 78, 74, 67, 82, 61, 64, 74, 67, 59, 58, 47, 75, 65, 76, 61, 83, 56, 71, 58, 62, 54, 58, 57, 72, 60, 86, 57, 73, 45, 56, 70, 57, 68, 76, 57, 74, 91, 62, 64, 92, 56, 57, 61, 59, 57, 59, 58, 51, 44, 89, 50, 64, 68, 66, 58, 88, 62, 70, 65, 63, 54, 66, 84, 47, 84, 72, 70, 59, 58, 62, 71, 53, 60, 67, 63, 76, 69, 75, 58, 65, 53, 70, 75, 109, 69, 125, 78, 68, 65, 53, 71, 62, 90, 57, 54, 52, 69, 89, 53, 75, 57, 75, 63, 55, 88, 75, 64, 54, 47, 72, 62, 64, 65, 61, 49, 52, 67, 53, 64, 67, 52, 51, 62, 62, 62, 67, 75, 53, 96, 59, 47, 69, 53, 63, 72, 95, 47, 53, 60, 78, 57, 60, 52, 56, 50, 62, 70, 67, 51, 49, 79, 56, 83, 69, 61, 71, 46, 61, 64, 56, 60, 78, 65, 65, 89, 78, 67, 55, 52, 55, 56, 65, 65, 75, 52, 61, 75, 76, 72, 59, 74, 70, 98, 65, 64, 53, 66, 48, 62, 55, 60, 75, 77, 66, 78, 64, 72, 62, 66, 75, 52, 54, 50, 55, 78, 50, 64, 79, 66, 95, 73, 59, 55, 80, 89, 69, 68, 60, 81, 82, 55, 74, 63, 62, 53, 71, 63, 54, 71, 45, 77, 63, 57, 53, 99, 75, 54, 115, 69, 72, 71, 65, 48, 60, 71, 74, 63, 61, 75, 62, 65, 63, 85, 57, 67, 69, 57, 67, 81, 69, 63, 58, 55, 59, 81, 113, 42, 62, 64, 76, 69, 74, 89, 73, 62, 79, 61, 67, 63, 53, 70, 65, 36, 74, 73, 50, 115, 69, 65, 58, 73, 65, 65, 66, 66, 50, 90, 50, 63, 52, 72, 48, 53, 52, 146, 69, 71, 65, 75, 57, 63, 64, 64, 61, 49, 55, 65, 88, 76, 58, 64, 67, 51, 67, 62, 62, 53, 43, 60, 44, 88, 57, 48, 57, 57, 67, 62, 69, 47, 45, 61, 79, 83, 57, 65, 86, 66, 56, 48, 52, 65, 83, 63, 54, 61, 74, 54, 52, 56, 64, 60, 82, 68, 55, 64, 52, 73, 57, 50, 60, 93, 56, 68, 81, 61, 77, 64, 74, 71, 62, 65, 63, 62, 72, 73, 65, 72, 60, 74, 56, 85, 61, 66, 53, 64, 58, 71, 54, 54, 75, 59, 59, 76, 68, 83, 58, 66, 93, 55, 59, 80, 81, 76, 72, 76, 89, 57, 58, 57, 63, 54, 62, 82, 61, 59, 58, 48, 79, 48, 58, 74, 47, 60, 49, 49, 61, 45, 89, 79, 55, 53, 75, 67, 64, 53, 54, 57, 87, 65, 70, 74, 57, 65, 65, 127, 53, 64, 60, 68, 71, 43, 64, 47, 74, 79, 50, 58, 65, 63, 60, 46, 52, 73, 67, 60, 60, 66, 57, 50, 67, 60, 48, 62, 68, 91, 42, 59, 58, 62, 90, 80, 81, 51, 103, 51, 78, 69, 54, 49, 53, 59, 66, 65, 53, 56, 72, 74, 81, 96, 49, 66, 64, 44, 54, 52, 75, 64, 50, 75, 70, 62, 61, 71, 61, 60, 75, 56, 71, 60, 62, 67, 44, 68, 64, 56, 60, 58, 61, 57, 56, 63, 68, 88, 72, 46, 62, 55, 91, 113, 67, 67, 59, 60, 65, 64, 85, 55, 55, 49, 63, 61, 53, 61, 64, 70, 64, 74, 56, 51, 55, 55, 97, 56, 65, 50, 66, 83, 55, 45, 44, 62, 61, 67, 73, 67, 63, 73, 57, 58, 95, 63, 54, 57, 75, 71, 65, 52, 64, 53, 66, 56, 103, 63, 80, 60, 60, 56, 53, 81, 57, 108, 41, 72, 79, 78, 63, 48, 59, 84, 86, 64, 61, 60, 69, 48, 70, 63, 69, 65, 79, 76, 67, 61, 109, 65, 63, 40, 52, 68, 68, 52, 58, 66, 74, 68, 53, 67, 50, 79, 77, 53, 78, 58, 49, 96, 64, 76, 86, 67, 47, 60, 51, 76, 54, 63, 90, 67, 74, 60, 59, 59, 56, 98, 64, 103, 71, 86, 57, 55, 71, 55, 65, 60, 64, 85, 62, 68, 62, 77, 89, 70, 75, 74, 62, 61, 61, 60, 53, 73, 60, 51, 62, 60, 66, 54, 69, 86, 76, 60, 48, 52, 58, 85, 88, 77, 51, 68, 53, 121, 61, 63, 71, 58, 63, 56, 61, 63, 70, 54, 83, 57, 63, 52, 100, 70, 54, 76, 83, 69, 74, 71, 64, 44, 99, 80, 63, 59, 72, 73, 64, 68, 42, 58, 58, 115, 47, 67, 92, 77, 48, 73, 66, 67, 58, 96, 52, 46, 63, 106, 49, 93, 58, 83, 61, 54, 67, 70, 69, 58, 62, 93, 58, 60, 63, 65, 61, 68, 69, 57, 59, 64, 79, 67, 43, 87, 58, 75, 71, 66, 64, 44, 61, 70, 55, 51, 102, 76, 83, 55, 65, 63, 65, 65, 63, 63, 45, 84, 115, 57, 63, 56, 53, 53, 69, 67, 73, 59, 56, 67, 59, 70, 66, 44, 60, 88, 62, 52, 94, 65, 64, 64, 67, 77, 98, 70, 73, 65, 66, 60, 51, 66, 74, 66, 61, 60, 61, 97, 76, 61, 65, 58, 63, 50, 52, 44, 100, 69, 68, 78, 66, 78, 70, 73, 75, 63, 61, 68, 57, 60, 56, 59, 72, 63, 51, 60, 84, 63, 91, 75, 65, 61, 59, 59, 47, 55, 72, 59, 71, 62, 69, 66, 61, 65, 52, 58, 61, 69, 64, 68, 81, 48, 62, 68, 76, 75, 76, 78, 73, 56, 66, 114, 54, 54, 70, 94, 52, 57, 54, 66, 65, 116, 68, 52, 59, 76, 58, 62, 56, 69, 60, 62, 75, 64, 53, 67, 110, 80, 54, 62, 63, 80, 64, 66, 59, 65, 53, 64, 62, 52, 51, 84, 49, 51, 106, 66, 59, 66, 71, 72, 66, 76, 65, 83, 65, 72, 94, 70, 71, 78, 66, 65, 59, 73, 64, 70, 74, 71, 77, 67, 85, 56, 70, 86, 50, 61, 50, 43, 61, 43, 48, 64, 71, 71, 62, 69, 69, 66, 61, 61, 51, 77, 57, 65, 55, 63, 68, 65, 73, 43, 57, 56, 67, 55, 56, 75, 91, 50, 53, 71, 65, 71, 48, 58, 52, 59, 83, 83, 59, 72, 60, 71, 67, 60, 85, 65, 56, 65, 96, 62, 66, 50, 59, 49, 81, 59, 56, 77, 58, 59, 58, 51, 60, 73, 64, 70, 65, 57, 61, 72, 56, 70, 52, 59, 63, 70, 52, 59, 59, 86, 82, 49, 57, 77, 61, 59, 68, 57, 70, 47, 70, 58, 59, 72, 61, 58, 59, 69, 65, 57, 69, 65, 58, 80, 106, 74, 72, 62, 129, 82, 54, 65, 52, 72, 57, 86, 63, 69, 115, 56, 64, 80, 97, 45, 65, 62, 41, 65, 57, 68, 56, 66, 72, 65, 70, 49, 72, 69, 55, 69, 53, 69, 74, 54, 75, 93, 60, 70, 78, 62, 76, 67, 63, 69, 40, 64, 62, 49, 59, 73, 68, 59, 63, 45, 68, 66, 71, 77, 56, 52, 69, 68, 62, 53, 69, 48, 77, 90, 97, 83, 62, 59, 77, 66, 74, 68, 66, 67, 69, 74, 78, 42, 69, 107, 120, 64, 74, 63, 59, 65, 63, 60, 88, 49, 83, 85, 63, 58, 60, 54, 62, 68, 65, 59, 60, 64, 54, 68, 71, 48, 74, 53, 55, 59, 64, 52, 73, 59, 53, 57, 63, 89, 69, 71, 77, 63, 59, 59, 68, 71, 77, 51, 42, 99, 71, 61, 40, 53, 67, 52, 64, 86, 71, 50, 52, 102, 63, 65, 62, 118, 102, 50, 44, 62, 109, 66, 68, 88, 66, 49, 85, 63, 63, 100, 65, 80, 49, 46, 61, 69, 58, 67, 70, 56, 73, 59, 57, 69, 41, 64, 50, 61, 53, 81, 81, 53, 60, 81, 61, 68, 57, 65, 67, 62, 73, 74, 67, 49, 101, 70, 57, 62, 54, 62, 68, 44, 56, 60, 65, 69, 59, 56, 60, 54, 56, 46, 73, 51, 58, 67, 66, 63, 75, 86, 89, 71, 65, 75, 100, 53, 65, 62, 55, 59, 114, 88, 36, 68, 69, 62, 48, 53, 58, 59, 60, 72, 63, 30, 66, 73, 64, 65, 72, 83, 62, 68, 56, 59, 50, 64, 72, 55, 58, 78, 69, 74, 53, 45, 54, 70, 71, 55, 56, 64, 49, 61, 52, 70, 70, 85, 89, 49, 72, 75, 59, 81, 52, 82, 65, 55, 60, 51, 66, 75, 54, 62, 71, 67, 47, 77, 56, 77, 71, 71, 56, 66, 53, 53, 68, 61, 60, 52, 52, 48, 60, 58, 75, 64, 55, 76, 62, 76, 60, 60, 95, 59, 82, 59, 78, 80, 65, 75, 51, 66, 64, 70, 78, 51, 66, 73, 63, 62, 122, 58, 63, 67, 54, 68, 48, 41, 56, 70, 66, 63, 104, 55, 60, 58, 97, 52, 51, 70, 78, 46, 63, 71, 63, 50, 57, 75, 59, 127, 76, 64, 77, 63, 53, 66, 70, 67, 54, 62, 57, 51, 65, 65, 61, 58, 64, 47, 73, 52, 59, 102, 91, 54, 68, 65, 63, 56, 58, 66, 68, 63, 57, 62, 73, 71, 76, 68, 53, 62, 61, 58, 57, 59, 61, 61, 67, 64, 49, 53, 74, 53, 56, 50, 83, 70, 67, 70, 76, 88, 61, 47, 86, 52, 71, 56, 62, 55, 74, 75, 88, 58, 95, 53, 67, 76, 61, 62, 74, 66, 75, 55, 69, 44, 58, 71, 64, 55, 87, 61, 94, 63, 41, 41, 55, 39, 58, 64, 69, 66, 64, 70, 75, 67, 112, 65, 67, 95, 86, 60, 53, 70, 93, 69, 59, 78, 63, 64, 57, 74, 78, 49, 46, 67, 41, 60, 51, 58, 48, 73, 60, 58, 56, 62, 58, 54, 63, 54, 84, 65, 44, 62, 79, 65, 86, 61, 81, 53, 57, 71, 52, 58, 48, 81, 86, 60, 91, 65, 37, 54, 57, 73, 77, 64, 64, 53, 61, 73, 55, 46, 79, 49, 64, 72, 69, 75, 100, 58, 54, 79, 55, 66, 61, 59, 60, 53, 58, 49, 53, 58, 44, 49, 83, 117, 69, 68, 56, 63, 56, 60, 53, 48, 44, 54, 58, 56, 51, 55, 73, 65, 69, 62, 76, 41, 79, 80, 68, 62, 52, 90, 77, 52, 70, 82, 72, 49, 55, 67, 116, 59, 60, 49, 53, 89, 67, 74, 50, 62, 52, 59, 57, 64, 69, 61, 58, 57, 48, 63, 77, 83, 56, 48, 68, 64, 45, 95, 57, 67, 69, 73, 102, 108, 66, 63, 73, 69, 77, 74, 55, 68, 81, 53, 53, 59, 62, 70, 51, 98, 64, 59, 68, 43, 61, 61, 58, 67, 101, 57, 83, 54, 48, 69, 55, 67, 64, 80, 41, 110, 98, 48, 104, 68, 76, 73, 59, 73, 70, 121, 64, 119, 53, 59, 72, 60, 77, 58, 87, 70, 72, 66, 68, 71, 46, 92, 72, 49, 68, 61, 42, 64, 67, 64, 61, 80, 56, 64, 67, 58, 48, 63, 50, 85, 64, 71, 56, 79, 105, 83, 85, 57, 70, 96, 66, 62, 69, 66, 76, 59, 44, 47, 70, 63, 61, 67, 55, 89, 66, 53, 64, 76, 92, 75, 44, 59, 66, 81, 74, 50, 41, 60, 55, 44, 63, 55, 75, 58, 80, 79, 59, 56, 80, 63, 66, 64, 82, 40, 54, 55, 92, 77, 48, 73, 56, 67, 99, 55, 56, 52, 67, 61, 65, 69, 75, 67, 65, 43, 90, 54, 66, 49, 42, 75, 60, 78, 66, 69, 49, 71, 57, 82, 46, 61, 71, 54, 59, 57, 60, 78, 64, 64, 85, 68, 85, 57, 57, 68, 93, 80, 70, 77, 147, 51, 47, 46, 53, 93, 61, 66, 66, 68, 73, 66, 68, 70, 55, 48, 50, 68, 77, 59, 61, 69, 52, 58, 46, 87, 60, 72, 55, 57, 58, 91, 61, 52, 79, 64, 70, 63, 62, 49, 58, 51, 69, 63, 59, 76, 60, 59, 61, 73, 67, 62, 50, 73, 47, 61, 69, 54, 48, 53, 75, 62, 73, 61, 64, 83, 71, 55, 93, 88, 59, 57, 63, 66, 52, 71, 81, 50, 60, 52, 36, 62, 59, 56, 70, 49, 43, 60, 45, 53, 64, 73, 73, 71, 51, 104, 64, 48, 82, 85, 57, 53, 98, 66, 59, 71, 62, 85, 64, 77, 65, 73, 57, 65, 66, 57, 54, 65, 48, 74, 50, 59, 64, 70, 59, 53, 69, 66, 62, 57, 71, 100, 60, 59, 59, 54, 81, 94, 64, 67, 80, 53, 59, 47, 51, 60, 64, 75, 51, 66, 59, 77, 67, 77, 52, 55, 64, 65, 64, 61, 84, 70, 62, 69, 39, 58, 49, 63, 47, 68, 112, 60, 63, 70, 50, 78, 52, 72, 63, 75, 51, 85, 77, 62, 61, 76, 65, 67, 83, 43, 68, 59, 83, 55, 47, 60, 67, 64, 66, 78, 57, 77, 86, 78, 62, 70, 54, 73, 72, 88, 71, 69, 78, 68, 51, 47, 67, 68, 63, 107, 57, 59, 72, 72, 57, 57, 65, 72, 66, 61, 71, 54, 75, 76, 61, 61, 73, 52, 39, 51, 75, 53, 75, 74, 96, 92, 61, 68, 54, 63, 81, 67, 64, 81, 66, 54, 49, 63, 54, 79, 44, 77, 71, 65, 55, 64, 66, 46, 60, 74, 68, 100, 57, 73, 54, 70, 67, 57, 55, 67, 67, 69, 64, 51, 58, 102, 60, 58, 48, 58, 59, 62, 66, 76, 69, 56, 66, 64, 72, 42, 78, 61, 72, 65, 55, 48, 61, 88, 64, 60, 57, 59, 69, 72, 56, 55, 67, 71, 70, 45, 63, 70, 57, 68, 122, 80, 105, 47, 51, 55, 54, 73, 87, 78, 80, 94, 64, 46, 63, 68, 69, 73, 59, 59, 85, 81, 67, 68, 60, 70, 57, 111, 65, 48, 125, 50, 67, 68, 75, 63, 83, 53, 64, 89, 61, 67, 62, 68, 65, 55, 58, 58, 52, 58, 72, 76, 87, 69, 69, 63, 56, 61, 63, 47, 72, 66, 84, 51, 65, 69, 50, 65, 87, 52, 106, 69, 87, 73, 68, 82, 65, 60, 66, 81, 76, 56, 59, 72, 75, 52, 58, 73, 57, 64, 66, 81, 58, 35, 51, 71, 45, 68, 64, 78, 83, 74, 138, 54, 54, 56, 80, 51, 100, 61, 86, 70, 66, 68, 51, 72, 50, 78, 61, 54, 57, 57, 83, 54, 62, 76, 56, 65, 97, 70, 73, 64, 88, 90, 73, 62, 54, 78, 50, 69, 56, 75, 47, 56, 55, 56, 64, 72, 66, 55, 65, 55, 75, 57, 82, 56, 64, 91, 63, 84, 73, 45, 69, 61, 68, 91, 90, 37, 84, 71, 57, 76, 69, 66, 108, 48, 60, 79, 53, 63, 70, 62, 80, 72, 48, 55, 66, 81, 73, 52, 79, 74, 37, 69, 76, 66, 78, 56, 72, 50, 137, 81, 89, 61, 82, 56, 67, 48, 89, 62, 61, 74, 61, 57, 106, 60, 69, 73, 86, 88, 63, 86, 52, 76, 61, 45, 52, 50, 60, 65, 44, 55, 48, 97, 41, 67, 96, 44, 60, 39, 75, 60, 62, 55, 56, 55, 69, 67, 34, 100, 75, 80, 63, 63, 54, 67, 77, 48, 49, 61, 73, 61, 68, 83, 50, 56, 65, 63, 51, 48, 63, 64, 81, 61, 68, 84, 56, 66, 67, 82, 66, 56, 81, 60, 55, 65, 51, 89, 70, 113, 75, 71, 71, 71, 56, 71, 74, 58, 61, 79, 62, 68, 83, 87, 56, 55, 69, 79, 63, 51, 53, 53, 63, 52, 74, 61, 43, 83, 82, 66, 76, 56, 58, 53, 61, 78, 65, 66, 54, 74, 80, 53, 47, 72, 63, 81, 72, 81, 57, 46, 93, 71, 68, 51, 87, 58, 51, 59, 50, 55, 68, 45, 45, 60, 52, 95, 69, 58, 67, 57, 73, 62, 50, 69, 83, 69, 66, 75, 50, 46, 92, 61, 53, 62, 65, 60, 88, 61, 30, 78, 42, 49, 72, 46, 47, 69, 65, 53, 61, 67, 70, 66, 78, 54, 50, 55, 79, 61, 69, 74, 49, 46, 66, 58, 61, 61, 50, 64, 64, 63, 69, 68, 79, 74, 58, 77, 53, 67, 79, 79, 73, 84, 58, 43, 50, 75, 51, 70, 58, 78, 74, 72, 62, 67, 55, 76, 58, 66, 39, 52, 97, 81, 83, 89, 49, 53, 53, 93, 53, 65, 60, 54, 73, 59, 41, 70, 57, 52, 65, 75, 87, 57, 58, 71, 43, 88, 50, 62, 43, 72, 68, 72, 47, 50, 63, 57, 59, 77, 65, 80, 80, 64, 46, 73, 66, 67, 59, 69, 59, 55, 63, 66, 69, 70, 67, 92, 70, 54, 74, 93, 39, 74, 49, 66, 69, 88, 72, 63, 75, 58, 65, 65, 72, 60, 49, 64, 65, 44, 65, 67, 51, 62, 69, 68, 47, 92, 57, 57, 56, 69, 89, 66, 68, 57, 64, 89, 49, 79, 102, 87, 60, 74, 72, 53, 38, 59, 66, 80, 80, 46, 71, 71, 73, 61, 50, 43, 58, 135, 67, 55, 61, 64, 44, 59, 70, 66, 65, 77, 70, 70, 62, 53, 51, 65, 71, 52, 52, 65, 56, 60, 65, 63, 75, 81, 66, 69, 61, 54, 53, 66, 44, 92, 60, 74, 56, 63, 93, 65, 82, 96, 52, 53, 60, 63, 67, 63, 57, 61, 62, 54, 71, 69, 66, 64, 56, 67, 54, 76, 58, 80, 48, 70, 69, 69, 65, 103, 82, 53, 56, 68, 62, 56, 76, 88, 65, 60, 54, 62, 64, 56, 56, 58, 45, 65, 83, 84, 79, 66, 97, 68, 57, 39, 63, 57, 50, 69, 66, 67, 83, 74, 55, 65, 68, 70, 48, 58, 61, 40, 68, 64, 44, 69, 56, 60, 57, 70, 62, 101, 59, 75, 49, 71, 70, 57, 73, 62, 61, 63, 76, 62, 69, 72, 66, 48, 71, 85, 78, 63, 59, 106, 55, 88, 68, 48, 53, 53, 56, 76, 74, 64, 57, 68, 76, 98, 53, 54, 70, 59, 86, 74, 60, 55, 70, 57, 68, 74, 54, 75, 60, 89, 55, 80, 55, 54, 52, 56, 100, 50, 88, 73, 72, 74, 80, 68, 66, 71, 67, 42, 54, 60, 63, 64, 51, 74, 70, 54, 80, 66, 59, 49, 69, 66, 55, 57, 51, 51, 69, 68, 83, 49, 77, 77, 51, 74, 55, 52, 69, 63, 61, 78, 57, 59, 64, 62, 53, 74, 64, 55, 58, 63, 70, 51, 61, 70, 61, 94, 76, 72, 52, 68, 64, 61, 74, 53, 53, 59, 72, 77, 61, 67, 59, 63, 64, 54, 53, 51, 74, 59, 89, 65, 62, 66, 43, 81, 57, 53, 62, 72, 66, 63, 43, 73, 69, 86, 69, 67, 63, 81, 56, 73, 67, 61, 52, 47, 54, 54, 66, 56, 63, 52, 65, 89, 79, 92, 70, 62, 53, 80, 75, 71, 87, 46, 61, 84, 57, 64, 60, 73, 76, 63, 129, 60, 58, 66, 63, 70, 65, 66, 63, 80, 60, 59, 64, 65, 57, 52, 79, 64, 106, 64, 52, 64, 58, 68, 63, 73, 68, 53, 66, 102, 64, 56, 67, 73, 77, 67, 74, 60, 64, 64, 98, 63, 54, 64, 65, 68, 62, 77, 61, 66, 64, 69, 60, 68, 67, 58, 64, 85, 63, 50, 56, 51, 66, 44, 89, 53, 76, 74, 67, 80, 74, 51, 79, 67, 54, 72, 69, 57, 70, 59, 83, 71, 57, 49, 76, 50, 53, 59, 66, 62, 66, 51, 61, 45, 78, 57, 51, 65, 71, 76, 53, 93, 49, 78, 52, 52, 44, 54, 62, 62, 68, 81, 55, 66, 62, 89, 74, 63, 66, 62, 62, 52, 71, 75, 70, 72, 66, 61, 66, 67, 69, 61, 72, 66, 74, 60, 60, 54, 59, 60, 72, 67, 62, 56, 59, 69, 89, 67, 63, 61, 61, 59, 49, 52, 113, 51, 107, 70, 52, 53, 67, 73, 49, 65, 76, 55, 53, 42, 64, 56, 74, 73, 65, 84, 63, 50, 44, 71, 58, 66, 63, 115, 75, 49, 121, 63, 62, 62, 58, 55, 67, 71, 79, 55, 58, 80, 78, 82, 57, 59, 66, 68, 63, 62, 63, 75, 95, 51, 59, 54, 68, 47, 74, 56, 61, 56, 64, 61, 56, 57, 72, 42, 70, 56, 102, 64, 48, 86, 70, 81, 75, 54, 65, 56, 81, 71, 44, 48, 60, 54, 69, 60, 53, 59, 67, 77, 83, 61, 88, 70, 72, 64, 62, 66, 72, 68, 52, 57, 71, 58, 68, 70, 70, 64, 86, 52, 65, 64, 80, 56, 68, 67, 52, 64, 48, 57, 68, 76, 55, 89, 66, 72, 122, 80, 69, 56, 83, 60, 75, 76, 64, 71, 72, 53, 63, 70, 60, 59, 54, 55, 63, 51, 54, 51, 69, 64, 52, 58, 84, 84, 56, 56, 53, 76, 97, 71, 67, 39, 63, 81, 74, 56, 61, 59, 60, 72, 69, 67, 96, 44, 66, 62, 46, 78, 79, 64, 47, 74, 65, 68, 49, 50, 73, 60, 77, 61, 65, 58, 56, 52, 54, 87, 83, 64, 161, 47, 55, 51, 62, 59, 73, 47, 83, 61, 53, 52, 74, 62, 84, 58, 68, 58, 86, 76, 60, 52, 55, 66, 59, 56, 60, 67, 64, 57, 56, 60, 69, 121, 74, 59, 76, 62, 62, 71, 60, 77, 54, 83, 74, 53, 49, 68, 53, 77, 69, 43, 59, 77, 62, 85, 77, 66, 75, 61, 49, 68, 63, 66, 68, 58, 64, 66, 75, 53, 62, 81, 56, 59, 52, 78, 72, 103, 61, 88, 48, 68, 76, 60, 56, 50, 60, 133, 52, 68, 58, 66, 75, 63, 59, 68, 67, 55, 89, 87, 63, 70, 94, 86, 58, 61, 72, 105, 54, 64, 67, 54, 62, 71, 74, 74, 51, 56, 57, 68, 81, 91, 43, 52, 64, 97, 51, 64, 72, 61, 90, 63, 56, 65, 55, 79, 48, 68, 72, 56, 56, 74, 70, 46, 53, 43, 70, 46, 55, 60, 62, 75, 59, 64, 85, 92, 90, 74, 54, 62, 69, 70, 76, 78, 101, 55, 53, 65, 63, 70, 64, 65, 45, 73, 63, 66, 71, 66, 55, 66, 42, 53, 72, 65, 70, 61, 69, 64, 59, 67, 83, 54, 86, 65, 74, 65, 74, 64, 67, 79, 61, 65, 55, 73, 73, 79, 56, 47, 68, 57, 51, 51, 74, 62, 64, 57, 58, 71, 72, 64, 75, 66, 49, 76, 69, 75, 69, 88, 57, 85, 64, 82, 47, 53, 75, 64, 70, 68, 59, 64, 84, 84, 70, 83, 70, 67, 55, 83, 56, 59, 59, 56, 67, 62, 58, 60, 55, 56, 63, 89, 73, 64, 63, 69, 65, 74, 52, 55, 61, 60, 78, 65, 68, 72, 47, 53, 61, 56, 44, 79, 81, 70, 67, 48, 82, 70, 62, 59, 76, 64, 54, 69, 66, 64, 74, 84, 87, 47, 64, 81, 61, 68, 66, 50, 92, 66, 59, 34, 61, 45, 50, 47, 54, 58, 85, 67, 61, 63, 67, 85, 57, 55, 79, 62, 83, 69, 70, 50, 62, 62, 94, 73, 75, 55, 45, 63, 46, 72, 84, 47, 64, 69, 62, 57, 79, 62, 73, 81, 58, 61, 68, 61, 75, 73, 73, 73, 52, 59, 62, 72, 64, 70, 97, 62, 56, 69, 61, 60, 50, 66, 66, 81, 62, 58, 59, 57, 54, 65, 63, 44, 72, 65, 56, 59, 62, 71, 49, 80, 57, 60, 57, 65, 60, 64, 70, 59, 71, 87, 64, 58, 64, 67, 90, 76, 75, 59, 74, 73, 64, 48, 63, 63, 59, 63, 64, 55, 62, 49, 69, 82, 56, 69, 70, 59, 59, 77, 71, 75, 75, 47, 46, 67, 72, 59, 88, 65, 86, 61, 50, 64, 68, 68, 60, 68, 75, 61, 87, 45, 67, 74, 61, 72, 63, 62, 54, 63, 63, 64, 62, 76, 57, 57, 63, 49, 46, 71, 70, 55, 71, 59, 101, 61, 79, 70, 67, 71, 73, 100, 77, 58, 95, 58, 81, 82, 63, 65, 84, 57, 57, 62, 83, 62, 73, 103, 56, 43, 48, 56, 63, 62, 65, 89, 62, 53, 65, 53, 61, 81, 60, 62, 105, 72, 63, 53, 62, 34, 90, 61, 58, 58, 58, 65, 68, 71, 58, 64, 61, 83, 58, 81, 65, 48, 61, 85, 99, 60, 58, 72, 56, 61, 57, 55, 68, 59, 63, 58, 58, 89, 64, 59, 52, 53, 67, 78, 65, 55, 67, 56, 72, 65, 68, 60, 74, 62, 104, 81, 69, 88, 65, 86, 49, 60, 71, 141, 69, 57, 75, 61, 57, 52, 60, 84, 65, 50, 80, 55, 67, 64, 60, 63, 53, 66, 79, 58, 57, 59, 57, 61, 52, 64, 59, 51, 49, 57, 65, 85, 67, 53, 61, 80, 54, 63, 55, 58, 52, 64, 54, 62, 66, 47, 47, 59, 46, 68, 60, 58, 61, 73, 60, 78, 54, 90, 57, 69, 82, 63, 59, 77, 76, 60, 58, 60, 62, 60, 66, 72, 53, 67, 116, 64, 62, 61, 55, 99, 48, 82, 65, 60, 63, 55, 120, 67, 68, 70, 73, 66, 70, 71, 64, 60, 56, 60, 86, 74, 83, 64, 111, 72, 71, 61, 70, 60, 57, 52, 51, 81, 79, 60, 64, 50, 64, 54, 67, 62, 74, 66, 63, 115, 69, 80, 56, 60, 62, 56, 56, 59, 46, 62, 97, 58, 60, 70, 57, 65, 61, 55, 62, 67, 69, 51, 75, 81, 76, 68, 81, 71, 63, 134, 82, 57, 52, 59, 84, 81, 51, 60, 79, 62, 77, 66, 65, 83, 66, 61, 62, 66, 56, 60, 51, 76, 63, 62, 79, 59, 50, 67, 71, 64, 54, 66, 48, 55, 60, 99, 85, 48, 75, 60, 78, 110, 49, 59, 71, 88, 93, 81, 67, 64, 51, 52, 95, 67, 84, 58, 75, 61, 62, 75, 63, 67, 63, 46, 74, 75, 55, 69, 74, 68, 81, 71, 55, 71, 55, 67, 61, 50, 69, 55, 60, 106, 84, 78, 66, 45, 76, 54, 56, 71, 71, 76, 72, 84, 65, 79, 69, 49, 66, 74, 48, 67, 66, 53, 51, 68, 55, 62, 76, 63, 47, 54, 58, 59, 96, 48, 60, 74, 69, 65, 66, 66, 65, 56, 74, 70, 60, 67, 68, 48, 73, 53, 63, 60, 66, 49, 68, 63, 48, 59, 58, 72, 62, 53, 59, 77, 80, 57, 58, 43, 74, 88, 61, 59, 57, 43, 87, 61, 47, 63, 83, 66, 64, 63, 80, 117, 71, 64, 70, 58, 54, 60, 52, 52, 67, 63, 61, 103, 83, 51, 83, 69, 57, 62, 62, 57, 61, 53, 60, 54, 64, 67, 92, 56, 73, 66, 63, 64, 62, 63, 68, 62, 71, 71, 58, 80, 58, 67, 55, 65, 67, 51, 83, 50, 73, 54, 55, 72, 80, 41, 44, 58, 66, 70, 59, 50, 64, 71, 71, 76, 72, 62, 89, 72, 61, 75, 60, 69, 83, 67, 61, 59, 60, 68, 73, 50, 62, 67, 60, 76, 67, 59, 60, 78, 75, 57, 62, 118, 62, 68, 68, 125, 59, 53, 52, 58, 83, 53, 56, 85, 69, 63, 59, 56, 72, 72, 58, 51, 64, 65, 57, 60, 57, 58, 45, 62, 57, 61, 62, 62, 56, 64, 88, 56, 63, 63, 59, 57, 79, 60, 55, 66, 60, 67, 58, 63, 69, 65, 62, 63, 79, 62, 53, 57, 73, 52, 60, 77, 78, 68, 65, 76, 54, 60, 69, 60, 64, 57, 60, 52, 50, 64, 56, 78, 64, 61, 60, 64, 57, 71, 59, 58, 70, 59, 59, 77, 55, 74, 53, 68, 114, 69, 94, 63, 65, 88, 60, 64, 78, 45, 69, 74, 57, 68, 62, 55, 108, 63, 55, 61, 71, 65, 80, 64, 54, 56, 59, 63, 77, 68, 52, 58, 60, 92, 62, 67, 48, 65, 82, 48, 76, 63, 65, 59, 64, 61, 68, 66, 57, 57, 72, 76, 57, 56, 64, 44, 64, 61, 55, 65, 61, 60, 59, 54, 62, 66, 62, 57, 62, 69, 61, 45, 69, 71, 93, 66, 62, 63, 88, 33, 61, 67, 61, 60, 66, 56, 64, 62, 65, 37, 54, 64, 67, 73, 66, 62, 55, 61, 44, 52, 67, 61, 60, 89, 64, 57, 65, 69, 57, 63, 66, 63, 72, 65, 69, 53, 64, 66, 72, 80, 65, 56, 54, 61, 61, 52, 59, 103, 106, 60, 70, 59, 66, 55, 57, 68, 62, 63, 95, 65, 54, 69, 62, 81, 59, 56, 65, 67, 61, 70, 59, 56, 59, 62, 74, 54, 59, 67, 106, 77, 86, 68, 93, 63, 106, 38, 80, 61, 59, 62, 60, 61, 60, 54, 63, 79, 83, 59, 95, 63, 62, 51, 47, 59, 61, 68, 63, 62, 68, 56, 57, 53, 57, 68, 65, 82, 83, 65, 60, 75, 112, 54, 53, 66, 67, 65, 63, 51, 80, 63, 68, 75, 71, 78, 65, 64, 78, 56, 64, 49, 55, 58, 63, 106, 62, 58, 79, 65, 55, 53, 56, 66, 53, 75, 52, 72, 69, 60, 84, 89, 52, 69, 55, 94, 62, 76, 70, 93, 67, 62, 64, 107, 78, 85, 57, 75, 87, 111, 58, 69, 56, 78, 48, 46, 63, 75, 101, 80, 67, 63, 63, 76, 60, 61, 57, 57, 65, 64, 68, 56, 61, 56, 98, 64, 67, 65, 68, 67, 86, 70, 52, 62, 72, 67, 53, 60, 62, 58, 62, 59, 59, 69, 73, 52, 48, 51, 53, 64, 62, 54, 65, 62, 59, 64, 64, 67, 94, 69, 81, 66, 75, 51, 53, 59, 69, 106, 70, 57, 57, 62, 65, 59, 62, 66, 87, 59, 55, 70, 74, 50, 51, 64, 60, 77, 63, 58, 75, 51, 60, 63, 81, 68, 57, 57, 76, 53, 70, 49, 67, 109, 62, 57, 65, 65, 103, 64, 72, 67, 56, 51, 63, 61, 43, 78, 85, 55, 60, 48, 41, 58, 81, 68, 65, 68, 62, 70, 68, 63, 77, 70, 89, 71, 44, 54, 54, 92, 62, 74, 68, 64, 54, 83, 85, 60, 48, 52, 65, 62, 56, 75, 72, 46, 72, 80, 74, 57, 66, 68, 50, 82, 62, 61, 72, 80, 68, 68, 66, 61, 54, 74, 69, 46, 79, 65, 61, 75, 63, 74, 46, 42, 58, 67, 52, 86, 62, 63, 46, 66, 57, 54, 77, 65, 46, 58, 47, 63, 66, 66, 65, 74, 69, 60, 88, 81, 61, 81, 69, 84, 71, 62, 53, 72, 70, 57, 49, 75, 60, 70, 59, 77, 74, 64, 59, 65, 66, 57, 59, 63, 53, 68, 78, 72, 49, 107, 75, 60, 76, 57, 57, 60, 43, 73, 59, 69, 61, 69, 74, 50, 50, 66, 77, 48, 58, 68, 81, 52, 53, 66, 43, 154, 55, 75, 73, 52, 54, 75, 65, 61, 71, 60, 52, 73, 56, 75, 63, 61, 65, 55, 74, 72, 69, 53, 80, 65, 55, 67, 66, 60, 71, 59, 65, 46, 91, 95, 53, 87, 74, 61, 73, 58, 59, 69, 73, 53, 71, 69, 48, 58, 48, 68, 69, 70, 84, 59, 58, 69, 65, 53, 60, 70, 65, 50, 58, 68, 81, 71, 55, 53, 58, 60, 59, 67, 58, 74, 49, 58, 59, 47, 74, 72, 59, 68, 60, 44, 87, 70, 50, 59, 73, 77, 69, 67, 70, 69, 68, 62, 80, 80, 60, 80, 87, 59, 62, 65, 51, 76, 67, 61, 64, 94, 63, 61, 45, 65, 62, 69, 69, 55, 79, 72, 93, 52, 60, 90, 79, 58, 57, 62, 55, 50, 74, 64, 106, 60, 74, 59, 62, 89, 55, 62, 68, 55, 75, 72, 63, 68, 43, 71, 58, 93, 97, 67, 87, 104, 64, 61, 56, 49, 69, 69, 80, 47, 52, 62, 48, 68, 59, 78, 79, 50, 93, 61, 64, 79, 60, 68, 51, 66, 66, 73, 53, 43, 68, 45, 67, 48, 75, 87, 75, 64, 57, 56, 62, 61, 63, 75, 72, 59, 73, 53, 104, 50, 85, 95, 57, 65, 56, 44, 76, 58, 51, 59, 63, 81, 60, 49, 66, 62, 65, 68, 67, 88, 58, 56, 61, 54, 60, 52, 50, 52, 61, 84, 44, 47, 62, 65, 55, 89, 54, 59, 57, 68, 69, 66, 48, 87, 57, 52, 64, 88, 43, 73, 88, 70, 60, 52, 51, 58, 60, 59, 59, 83, 58, 54, 74, 69, 64, 41, 72, 66, 60, 67, 56, 68, 72, 62, 65, 65, 61, 69, 70, 56, 84, 78, 92, 56, 87, 67, 60, 56, 60, 52, 76, 69, 49, 60, 46, 65, 50, 57, 54, 57, 57, 55, 55, 97, 76, 70, 54, 63, 65, 72, 56, 52, 75, 52, 64, 90, 48, 97, 74, 83, 85, 69, 61, 65, 42, 57, 62, 54, 54, 65, 59, 66, 58, 51, 60, 63, 53, 59, 75, 98, 42, 90, 70, 56, 116, 52, 60, 68, 47, 59, 78, 88, 66, 62, 52, 69, 55, 66, 72, 72, 52, 68, 69, 57, 40, 81, 80, 59, 55, 39, 81, 55, 114, 88, 102, 72, 69, 66, 62, 52, 92, 73, 93, 63, 75, 60, 80, 78, 67, 63, 57, 70, 74, 67, 73, 83, 61, 68, 52, 57, 74, 68, 82, 75, 56, 70, 62, 65, 67, 53, 74, 72, 66, 119, 64, 49, 62, 53, 82, 51, 81, 58, 78, 56, 54, 57, 75, 82, 59, 94, 57, 87, 67, 65, 87, 78, 66, 56, 70, 58, 61, 56, 73, 72, 73, 63, 85, 45, 56, 62, 70, 66, 58, 69, 59, 32, 53, 69, 74, 73, 69, 75, 73, 72, 62, 56, 47, 65, 60, 95, 76, 79, 63, 62, 54, 79, 57, 82, 59, 61, 61, 66, 52, 61, 65, 92, 44, 60, 62, 65, 51, 61, 80, 57, 79, 65, 43, 66, 56, 67, 69, 57, 62, 89, 63, 46, 64, 89, 69, 70, 62, 104, 63, 45, 60, 58, 60, 62, 60, 61, 59, 65, 68, 47, 72, 72, 63, 70, 82, 56, 49, 58, 61, 56, 45, 60, 52, 75, 63, 64, 103, 75, 62, 69, 78, 43, 85, 56, 63, 80, 72, 70, 66, 66, 66, 47, 84, 64, 68, 63, 69, 52, 58, 52, 65, 87, 60, 57, 50, 101, 53, 94, 74, 57, 60, 99, 71, 61, 81, 61, 78, 69, 60, 59, 68, 61, 71, 78, 114, 59, 55, 53, 68, 65, 67, 52, 62, 47, 47, 69, 53, 72, 61, 57, 61, 79, 71, 97, 95, 58, 57, 82, 59, 88, 78, 46, 64, 80, 68, 48, 76, 59, 62, 60, 77, 106, 44, 72, 75, 52, 44, 53, 65, 58, 85, 73, 62, 75, 79, 70, 46, 73, 59, 67, 64, 85, 64, 72, 70, 48, 60, 78, 51, 58, 77, 63, 53, 78, 66, 82, 111, 79, 49, 54, 96, 98, 68, 54, 66, 57, 70, 65, 76, 51, 74, 79, 74, 76, 85, 61, 63, 89, 61, 60, 54, 56, 77, 72, 60, 57, 68, 79, 58, 54, 65, 52, 55, 64, 64, 62, 56, 70, 60, 54, 53, 56, 70, 68, 71, 55, 67, 75, 66, 45, 62, 62, 75, 50, 78, 46, 70, 61, 59, 71, 61, 77, 79, 70, 83, 65, 83, 82, 73, 45, 79, 66, 70, 66, 49, 76, 52, 57, 58, 48, 65, 110, 61, 75, 64, 47, 55, 97, 71, 60, 72, 69, 63, 67, 53, 48, 59, 62, 73, 80, 72, 64, 70, 70, 53, 92, 74, 67, 51, 51, 73, 62, 55, 76, 46, 57, 88, 94, 72, 68, 73, 54, 64, 63, 62, 69, 59, 69, 58, 44, 62, 69, 61, 71, 66, 44, 68, 55, 67, 66, 48, 52, 59, 61, 55, 76, 102, 64, 60, 56, 70, 60, 62, 74, 89, 68, 52, 77, 65, 58, 60, 54, 46, 63, 35, 73, 59, 70, 44, 73, 70, 59, 74, 54, 66, 75, 67, 70, 62, 60, 61, 75, 55, 57, 69, 51, 78, 58, 69, 67, 71, 81, 61, 63, 74, 69, 59, 85, 54, 72, 53, 55, 74, 63, 68, 66, 63, 56, 71, 52, 78, 83, 71, 82, 62, 56, 60, 73, 86, 54, 82, 65, 48, 59, 56, 93, 70, 61, 66, 76, 53, 52, 55, 69, 74, 69, 61, 53, 72, 64, 55, 69, 65, 71, 62, 51, 44, 51, 62, 72, 94, 63, 67, 76, 83, 68, 59, 70, 59, 80, 63, 82, 44, 64, 73, 59, 67, 64, 64, 87, 79, 54, 72, 70, 97, 78, 71, 99, 73, 57, 60, 65, 52, 76, 85, 75, 53, 59, 73, 73, 60, 64, 67, 54, 57, 60, 55, 63, 63, 54, 92, 60, 69, 50, 52, 61, 69, 57, 56, 81, 79, 71, 58, 84, 69, 62, 53, 73, 76, 92, 73, 63, 48, 55, 79, 73, 67, 46, 75, 59, 58, 93, 60, 63, 69, 64, 60, 56, 64, 68, 84, 78, 68, 61, 56, 46, 66, 76, 84, 88, 78, 77, 70, 69, 76, 53, 64, 143, 82, 68, 53, 79, 51, 74, 62, 65, 53, 65, 69, 70, 62, 55, 52, 59, 82, 50, 73, 58, 67, 65, 43, 58, 71, 58, 76, 64, 53, 51, 65, 57, 94, 56, 65, 83, 61, 67, 54, 57, 72, 75, 71, 71, 44, 60, 58, 69, 79, 70, 55, 57, 55, 52, 59, 78, 52, 72, 59, 76, 95, 72, 57, 86, 68, 76, 62, 76, 62, 71, 65, 83, 71, 59, 72, 67, 63, 56, 47, 66, 58, 70, 60, 53, 66, 66, 125, 79, 68, 86, 53, 63, 63, 68, 67, 64, 67, 62, 80, 75, 87, 78, 108, 69, 63, 78, 44, 57, 53, 75, 67, 85, 70, 57, 61, 52, 54, 68, 46, 56, 55, 56, 81, 80, 83, 53, 65, 44, 59, 70, 71, 63, 53, 57, 103, 59, 52, 63, 59, 61, 73, 49, 68, 60, 53, 56, 75, 59, 104, 65, 75, 68, 68, 102, 63, 58, 51, 65, 68, 66, 64, 72, 68, 60, 65, 61, 59, 57, 53, 69, 68, 60, 71, 55, 55, 55, 51, 61, 91, 67, 57, 71, 82, 80, 73, 54, 62, 58, 54, 107, 62, 43, 69, 65, 66, 73, 42, 40, 59, 53, 104, 85, 76, 71, 76, 45, 67, 83, 68, 70, 59, 51, 52, 83, 62, 73, 65, 42, 77, 86, 58, 67, 49, 79, 68, 49, 61, 56, 55, 48, 54, 74, 36, 74, 70, 67, 76, 71, 76, 64, 61, 66, 67, 59, 62, 57, 64, 61, 56, 78, 58, 71, 79, 62, 63, 63, 68, 66, 80, 69, 80, 54, 55, 53, 51, 58, 49, 60, 101, 53, 65, 53, 54, 52, 73, 71, 79, 56, 68, 63, 53, 94, 73, 80, 88, 71, 77, 60, 65, 57, 71, 67, 62, 72, 62, 65, 57, 69, 44, 65, 87, 54, 63, 43, 64, 65, 65, 65, 59, 84, 84, 65, 51, 54, 69, 64, 50, 66, 67, 120, 45, 70, 58, 72, 65, 59, 77, 60, 72, 59, 65, 123, 67, 60, 64, 71, 60, 61, 62, 56, 72, 64, 61, 57, 52, 60, 94, 65, 49, 52, 56, 102, 57, 95, 74, 63, 64, 67, 63, 81, 72, 58, 73, 66, 72, 46, 64, 50, 103, 53, 54, 59, 107, 76, 65, 73, 70, 65, 60, 55, 74, 78, 68, 58, 67, 55, 74, 65, 64, 83, 58, 61, 61, 60, 75, 75, 54, 24, 68, 52, 64, 73, 55, 68, 56, 78, 71, 56, 59, 68, 53, 106, 57, 58, 75, 117, 71, 65, 65, 57, 86, 62, 66, 87, 57, 75, 65, 61, 71, 69, 54, 65, 70, 59, 65, 64, 51, 61, 64, 54, 60, 48, 56, 68, 59, 60, 96, 69, 58, 55, 51, 65, 70, 70, 73, 83, 66, 60, 64, 75, 63, 66, 59, 72, 78, 71, 83, 76, 51, 68, 78, 50, 70, 50, 64, 60, 58, 77, 69, 59, 81, 70, 66, 50, 61, 63, 65, 74, 69, 58, 58, 71, 70, 67, 70, 59, 62, 54, 66, 67, 47, 68, 68, 66, 69, 73, 71, 87, 72, 93, 54, 67, 64, 75, 55, 47, 68, 54, 80, 83, 55, 78, 72, 63, 69, 51, 65, 68, 71, 60, 84, 58, 77, 63, 63, 57, 41, 82, 62, 62, 63, 61, 115, 56, 60, 68, 68, 56, 68, 58, 53, 89, 83, 50, 82, 77, 58, 47, 75, 54, 75, 59, 74, 66, 59, 64, 68, 61, 56, 77, 57, 68, 48, 76, 61, 72, 58, 71, 87, 68, 57, 69, 85, 62, 46, 54, 54, 70, 58, 58, 76, 77, 59, 53, 88, 67, 54, 58, 79, 70, 61, 63, 59, 52, 69, 68, 34, 69, 65, 53, 63, 84, 68, 57, 58, 72, 69, 68, 60, 64, 61, 64, 61, 43, 72, 59, 71, 64, 52, 54, 69, 73, 96, 61, 61, 51, 62, 60, 64, 74, 58, 64, 95, 68, 55, 69, 57, 89, 58, 68, 71, 58, 48, 63, 53, 57, 64, 78, 61, 61, 55, 77, 79, 64, 56, 74, 78, 58, 84, 86, 73, 45, 63, 47, 63, 69, 58, 62, 47, 77, 62, 52, 64, 46, 107, 65, 66, 53, 57, 100, 47, 72, 52, 46, 85, 71, 73, 57, 73, 57, 63, 76, 53, 66, 83, 53, 43, 67, 49, 73, 58, 55, 62, 61, 62, 65, 65, 65, 54, 48, 82, 61, 66, 65, 80, 52, 59, 67, 56, 61, 53, 62, 44, 69, 46, 72, 75, 58, 71, 56, 73, 48, 78, 81, 65, 65, 66, 89, 55, 72, 49, 112, 68, 56, 69, 75, 78, 76, 61, 94, 89, 133, 54, 76, 62, 74, 49, 57, 58, 61, 80, 84, 63, 87, 79, 82, 66, 67, 82, 68, 73, 85, 54, 65, 55, 61, 72, 59, 76, 57, 64, 67, 73, 70, 81, 51, 74, 54, 65, 46, 57, 76, 85, 49, 107, 65, 70, 57, 56, 50, 64, 60, 44, 60, 74, 68, 66, 58, 67, 43, 77, 88, 60, 66, 69, 70, 77, 81, 66, 63, 81, 43, 75, 51, 67, 64, 69, 96, 105, 60, 59, 71, 54, 57, 71, 67, 53, 67, 55, 67, 62, 63, 70, 50, 62, 59, 67, 70, 61, 64, 91, 36, 55, 62, 56, 61, 74, 63, 50, 55, 85, 58, 83, 63, 64, 64, 54, 53, 73, 59, 61, 63, 73, 82, 65, 57, 98, 54, 54, 55, 70, 74, 60, 45, 55, 70, 52, 70, 60, 74, 70, 64, 52, 47, 59, 79, 56, 65, 60, 79, 58, 55, 73, 61, 47, 52, 70, 64, 57, 73, 58, 75, 76, 60, 47, 75, 65, 94, 57, 58, 88, 58, 71, 56, 82, 53, 84, 58, 55, 68, 67, 86, 79, 115, 65, 52, 53, 57, 64, 100, 117, 110, 60, 68, 77, 62, 55, 83, 64, 52, 55, 83, 104, 57, 70, 76, 61, 35, 53, 68, 73, 66, 75, 75, 61, 82, 75, 79, 61, 60, 62, 54, 61, 59, 71, 90, 60, 61, 49, 61, 62, 66, 70, 68, 69, 53, 56, 74, 85, 80, 57, 56, 47, 77, 93, 63, 62, 69, 75, 59, 76, 65, 59, 51, 79, 97, 51, 55, 81, 58, 59, 58, 59, 137, 78, 62, 76, 67, 62, 59, 65, 74, 49, 77, 63, 73, 54, 67, 52, 54, 56, 57, 67, 58, 60, 81, 76, 57, 65, 38, 68, 55, 62, 47, 54, 77, 70, 72, 65, 74, 72, 65, 57, 56, 53, 55, 72, 82, 79, 51, 56, 69, 68, 76, 64, 75, 67, 63, 57, 67, 53, 67, 70, 60, 84, 60, 79, 63, 50, 95, 63, 55, 81, 79, 63, 89, 54, 65, 53, 108, 54, 58, 60, 86, 61, 57, 61, 67, 75, 62, 113, 55, 69, 54, 44, 48, 60, 83, 76, 47, 58, 57, 57, 70, 88, 69, 65, 64, 60, 62, 79, 61, 61, 58, 52, 74, 64, 58, 32, 70, 54, 82, 67, 69, 58, 42, 73, 96, 76, 79, 50, 63, 51, 62, 66, 103, 85, 77, 76, 55, 53, 66, 60, 75, 67, 54, 67, 85, 41, 41, 117, 68, 86, 93, 68, 68, 70, 98, 88, 60, 60, 40, 65, 87, 44, 56, 74, 71, 78, 54, 58, 93, 76, 70, 71, 70, 50, 75, 48, 65, 85, 63, 79, 42, 61, 61, 77, 67, 44, 68, 67, 75, 84, 51, 46, 40, 40, 59, 68, 61, 73, 47, 79, 73, 94, 46, 85, 60, 69, 65, 68, 61, 79, 70, 74, 70, 65, 132, 81, 66, 56, 62, 86, 66, 54, 33, 64, 69, 95, 57, 58, 62, 48, 62, 57, 85, 69, 74, 73, 97, 37, 75, 63, 59, 55, 83, 66, 60, 76, 51, 65, 79, 50, 78, 76, 46, 55, 57, 81, 59, 64, 63, 67, 82, 56, 52, 69, 60, 58, 63, 50, 52, 79, 59, 64, 51, 66, 59, 55, 55, 52, 61, 80, 70, 67, 55, 65, 51, 52, 76, 61, 57, 66, 56, 53, 64, 66, 59, 49, 68, 52, 60, 53, 72, 47, 48, 49, 51, 64, 97, 74, 67, 69, 90, 96, 54, 51, 64, 61, 53, 65, 116, 78, 81, 70, 51, 64, 64, 45, 56, 56, 65, 77, 55, 40, 83, 82, 87, 81, 59, 58, 82, 58, 57, 53, 78, 76, 57, 80, 71, 103, 49, 57, 64, 59, 70, 50, 58, 82, 63, 76, 68, 62, 90, 86, 56, 51, 47, 84, 65, 95, 47, 94, 84, 76, 75, 87, 90, 60, 87, 85, 69, 60, 74, 50, 43, 57, 77, 79, 60, 78, 72, 65, 125, 54, 66, 70, 53, 61, 65, 59, 72, 56, 61, 59, 65, 68, 77, 63, 64, 71, 48, 47, 66, 50, 99, 62, 63, 61, 109, 61, 76, 41, 55, 91, 71, 67, 62, 72, 57, 54, 64, 38, 59, 68, 40, 73, 73, 66, 57, 74, 58, 65, 68, 66, 65, 45, 49, 90, 51, 72, 71, 61, 70, 71, 61, 75, 54, 56, 62, 50, 76, 55, 74, 54, 51, 69, 54, 64, 58, 85, 82, 63, 73, 48, 62, 53, 63, 61, 64, 49, 69, 64, 48, 60, 47, 62, 46, 30, 54, 73, 91, 94, 60, 69, 46, 59, 52, 58, 74, 71, 60, 67, 56, 63, 66, 49, 59, 101, 57, 85, 60, 55, 87, 62, 46, 71, 97, 80, 72, 89, 55, 77, 93, 52, 51, 68, 43, 51, 74, 69, 70, 59, 43, 87, 60, 67, 56, 79, 68, 58, 73, 72, 81, 70, 53, 69, 61, 56, 59, 80, 83, 52, 61, 75, 77, 69, 65, 68, 107, 69, 68, 72, 77, 68, 70, 63, 61, 58, 55, 57, 80, 62, 56, 61, 55, 68, 47, 58, 64, 70, 102, 77, 60, 75, 49, 84, 61, 56, 66, 55, 53, 62, 69, 97, 77, 51, 73, 97, 59, 64, 58, 68, 82, 65, 96, 51, 58, 59, 73, 58, 58, 58, 62, 57, 56, 71, 66, 51, 47, 56, 85, 58, 81, 53, 72, 82, 74, 65, 58, 49, 66, 76, 44, 44, 86, 78, 58, 73, 65, 73, 64, 63, 62, 86, 52, 90, 65, 69, 71, 78, 66, 74, 91, 64, 55, 71, 45, 70, 71, 68, 66, 68, 68, 87, 102, 83, 71, 68, 77, 83, 65, 69, 78, 66, 58, 60, 69, 78, 74, 58, 61, 59, 55, 95, 53, 73, 53, 81, 75, 64, 54, 61, 64, 62, 54, 62, 49, 57, 58, 60, 71, 70, 58, 60, 50, 73, 102, 108, 50, 53, 67, 63, 51, 72, 44, 48, 43, 70, 85, 71, 65, 67, 50, 86, 48, 51, 49, 61, 51, 63, 61, 52, 72, 63, 58, 77, 72, 52, 51, 65, 81, 63, 50, 62, 73, 93, 87, 56, 76, 81, 84, 60, 68, 65, 115, 63, 72, 55, 79, 68, 89, 63, 107, 60, 77, 52, 46, 60, 81, 75, 72, 63, 63, 83, 74, 52, 56, 66, 52, 72, 67, 54, 60, 73, 63, 62, 76, 67, 62, 58, 65, 55, 63, 61, 62, 41, 60, 56, 90, 58, 56, 57, 61, 71, 48, 80, 65, 71, 75, 57, 60, 64, 48, 50, 69, 99, 61, 72, 63, 58, 68, 59, 61, 77, 56, 72, 51, 94, 48, 54, 82, 56, 80, 59, 66, 65, 56, 68, 56, 79, 62, 74, 66, 63, 57, 58, 69, 63, 51, 59, 81, 59, 70, 77, 83, 75, 58, 68, 64, 69, 77, 77, 67, 52, 54, 51, 75, 49, 45, 68, 64, 92, 82, 93, 60, 65, 69, 68, 44, 76, 61, 113, 63, 67, 53, 54, 64, 76, 73, 73, 74, 61, 54, 69, 56, 72, 70, 80, 61, 76, 63, 67, 75, 69, 58, 81, 45, 50, 87, 73, 73, 57, 60, 65, 53, 44, 49, 57, 64, 74, 53, 80, 88, 79, 88, 48, 80, 73, 61, 57, 79, 55, 55, 65, 66, 61, 57, 49, 60, 68, 57, 58, 64, 66, 71, 55, 81, 68, 70, 61, 74, 60, 67, 68, 56, 48, 61, 85, 53, 60, 63, 56, 63, 40, 78, 56, 66, 48, 54, 93, 41, 64, 58, 60, 86, 69, 64, 60, 66, 62, 60, 63, 78, 69, 53, 62, 99, 60, 67, 53, 63, 65, 53, 63, 54, 75, 76, 57, 78, 72, 88, 67, 54, 79, 55, 70, 64, 62, 59, 55, 52, 53, 56, 83, 63, 57, 55, 67, 63, 67, 68, 62, 68, 53, 55, 62, 164, 78, 51, 58, 72, 67, 73, 64, 56, 78, 51, 71, 55, 75, 62, 53, 57, 59, 63, 63, 72, 42, 64, 65, 64, 54, 73, 47, 62, 63, 59, 63, 47, 62, 67, 58, 84, 86, 62, 73, 80, 55, 43, 76, 63, 59, 58, 56, 59, 68, 58, 61, 51, 64, 82, 58, 92, 55, 52, 60, 49, 75, 48, 61, 65, 70, 80, 57, 76, 68, 61, 55, 87, 65, 65, 67, 82, 48, 60, 53, 84, 56, 54, 62, 71, 106, 65, 102, 80, 62, 66, 60, 76, 75, 81, 76, 58, 78, 54, 55, 90, 41, 56, 88, 65, 72, 55, 73, 64, 51, 50, 65, 60, 49, 73, 74, 57, 50, 56, 87, 57, 81, 54, 67, 101, 68, 64, 67, 66, 60, 41, 53, 64, 80, 59, 77, 60, 76, 71, 52, 55, 55, 53, 76, 64, 88, 59, 92, 58, 92, 80, 57, 49, 85, 92, 75, 62, 50, 67, 56, 76, 67, 49, 61, 73, 85, 63, 59, 67, 47, 50, 40, 52, 65, 64, 55, 52, 63, 51, 56, 72, 61, 58, 71, 74, 57, 46, 61, 88, 89, 83, 72, 64, 64, 65, 69, 71, 58, 60, 75, 79, 110, 73, 64, 71, 61, 65, 62, 62, 66, 60, 60, 68, 46, 97, 56, 64, 41, 53, 75, 73, 73, 71, 67, 65, 76, 59, 43, 75, 62, 74, 50, 70, 56, 62, 68, 61, 62, 76, 70, 41, 51, 78, 78, 79, 57, 52, 61, 76, 75, 89, 67, 68, 56, 68, 73, 64, 72, 43, 74, 64, 56, 64, 60, 65, 71, 49, 67, 50, 69, 56, 59, 61, 57, 76, 61, 54, 59, 76, 75, 62, 51, 62, 60, 74, 65, 69, 77, 55, 64, 78, 70, 62, 63, 71, 61, 82, 75, 57, 49, 64, 53, 68, 67, 55, 57, 115, 59, 61, 66, 81, 47, 61, 53, 65, 67, 69, 61, 104, 72, 114, 48, 78, 50, 78, 72, 69, 89, 49, 81, 58, 77, 81, 62, 78, 67, 63, 71, 70, 64, 61, 84, 68, 69, 49, 52, 48, 108, 72, 44, 74, 64, 47, 58, 79, 88, 65, 81, 55, 39, 96, 70, 96, 69, 60, 85, 55, 89, 65, 76, 39, 59, 69, 103, 74, 89, 68, 85, 49, 40, 53, 58, 52, 64, 64, 81, 52, 70, 61, 58, 105, 49, 54, 73, 57, 58, 75, 88, 68, 65, 55, 39, 58, 67, 85, 84, 64, 67, 58, 61, 58, 57, 79, 59, 61, 82, 89, 67, 61, 76, 59, 58, 57, 70, 83, 96, 79, 69, 48, 45, 84, 48, 80, 56, 73, 66, 59, 57, 65, 65, 64, 71, 79, 67, 54, 67, 42, 67, 62, 85, 60, 66, 67, 71, 72, 57, 64, 63, 80, 50, 80, 63, 68, 59, 68, 51, 58, 45, 54, 82, 56, 64, 63, 64, 72, 63, 77, 57, 47, 53, 74, 57, 61, 48, 75, 83, 56, 55, 73, 39, 59, 54, 59, 63, 54, 88, 48, 75, 70, 59, 61, 70, 66, 60, 56, 79, 81, 68, 75, 39, 94, 61, 63, 82, 120, 60, 67, 77, 65, 87, 78, 79, 51, 67, 73, 62, 53, 73, 84, 63, 65, 65, 77, 55, 52, 63, 65, 64, 69, 51, 58, 58, 84, 116, 61, 45, 82, 53, 80, 78, 67, 71, 70, 101, 58, 68, 76, 48, 64, 81, 48, 63, 53, 66, 64, 57, 77, 78, 71, 62, 75, 58, 79, 63, 81, 56, 65, 57, 85, 75, 55, 77, 51, 57, 50, 63, 62, 61, 60, 76, 53, 80, 60, 55, 75, 71, 58, 50, 56, 72, 75, 63, 99, 48, 60, 59, 51, 63, 75, 71, 85, 79, 58, 69, 63, 64, 67, 83, 71, 52, 69, 55, 64, 76, 72, 42, 61, 77, 65, 55, 60, 67, 58, 78, 58, 49, 57, 53, 67, 52, 75, 77, 62, 88, 55, 69, 76, 77, 94, 52, 76, 71, 64, 59, 71, 52, 56, 61, 67, 55, 70, 54, 78, 112, 73, 73, 63, 78, 85, 59, 58, 54, 67, 60, 75, 54, 72, 72, 76, 49, 56, 74, 55, 79, 72, 98, 99, 58, 60, 63, 85, 60, 57, 46, 62, 61, 64, 67, 72, 56, 72, 65, 49, 71, 83, 66, 62, 58, 57, 69, 59, 78, 49, 68, 72, 50, 64, 73, 59, 56, 50, 60, 48, 81, 57, 70, 87, 62, 91, 74, 57, 74, 52, 67, 54, 72, 75, 59, 64, 61, 57, 48, 75, 70, 78, 51, 60, 55, 108, 59, 63, 69, 83, 54, 92, 48, 52, 52, 96, 59, 79, 42, 87, 58, 67, 55, 63, 57, 54, 55, 60, 48, 76, 64, 57, 54, 48, 55, 56, 59, 72, 64, 61, 83, 83, 52, 95, 80, 44, 72, 61, 67, 75, 73, 50, 75, 55, 70, 73, 57, 49, 58, 70, 90, 66, 75, 72, 63, 54, 73, 69, 65, 64, 69, 60, 71, 76, 50, 75, 71, 93, 81, 71, 62, 73, 60, 65, 77, 56, 54, 95, 42, 61, 45, 65, 51, 56, 69, 73, 63, 53, 99, 51, 75, 56, 64, 86, 60, 100, 62, 47, 55, 63, 64, 82, 66, 55, 58, 59, 73, 88, 47, 57, 65, 67, 52, 52, 58, 54, 62, 90, 57, 69, 53, 53, 58, 62, 69, 92, 64, 62, 81, 63, 65, 77, 61, 56, 59, 56, 62, 56, 61, 50, 50, 54, 99, 79, 50, 51, 53, 83, 68, 47, 56, 36, 49, 64, 81, 76, 59, 53, 55, 53, 50, 56, 66, 56, 99, 57, 67, 76, 82, 61, 58, 75, 62, 53, 68, 63, 72, 68, 52, 66, 70, 52, 52, 64, 70, 57, 53, 60, 60, 84, 58, 111, 56, 44, 55, 73, 60, 62, 66, 45, 62, 63, 63, 54, 56, 52, 58, 63, 75, 56, 61, 62, 68, 76, 99, 67, 56, 59, 82, 51, 65, 64, 67, 70, 67, 64, 66, 78, 48, 73, 64, 84, 56, 49, 70, 67, 58, 48, 82, 72, 49, 62, 90, 62, 68, 63, 73, 59, 67, 65, 69, 57, 56, 46, 59, 67, 59, 74, 52, 56, 89, 78, 81, 93, 70, 50, 47, 77, 63, 48, 57, 109, 74, 73, 60, 54, 48, 81, 57, 63, 45, 59, 92, 67, 54, 68, 73, 65, 93, 51, 60, 55, 81, 88, 75, 66, 65, 69, 59, 82, 65, 70, 56, 70, 82, 56, 41, 60, 65, 66, 78, 66, 61, 60, 59, 59, 58, 71, 61, 68, 84, 67, 63, 49, 70, 66, 62, 51, 71, 50, 62, 60, 65, 36, 51, 86, 78, 67, 78, 73, 54, 73, 68, 94, 57, 66, 99, 60, 62, 67, 59, 78, 68, 62, 53, 60, 64, 69, 70, 67, 55, 93, 60, 57, 61, 51, 65, 61, 72, 62, 86, 58, 73, 60, 59, 91, 75, 69, 73, 46, 54, 58, 59, 74, 68, 71, 55, 71, 65, 62, 59, 72, 67, 64, 59, 87, 72, 36, 64, 62, 46, 83, 59, 66, 79, 56, 92, 64, 58, 87, 55, 67, 52, 59, 93, 75, 89, 73, 72, 46, 67, 68, 76, 57, 85, 122, 77, 72, 59, 55, 53, 70, 134, 62, 56, 59, 77, 71, 40, 58, 70, 57, 62, 55, 61, 74, 53, 62, 64, 52, 70, 98, 67, 51, 70, 110, 69, 55, 64, 50, 80, 93, 62, 68, 67, 63, 51, 78, 60, 62, 70, 46, 89, 58, 85, 42, 63, 58, 42, 51, 58, 55, 56, 60, 63, 81, 62, 58, 65, 56, 66, 83, 56, 61, 67, 74, 81, 61, 61, 75, 87, 73, 60, 42, 53, 44, 66, 66, 67, 100, 51, 56, 46, 65, 63, 56, 49, 84, 47, 54, 47, 58, 51, 73, 84, 73, 59, 65, 63, 55, 60, 63, 64, 79, 71, 55, 66, 74, 41, 62, 76, 49, 55, 61, 59, 64, 50, 58, 58, 53, 63, 63, 65, 46, 60, 67, 69, 90, 72, 61, 59, 88, 58, 59, 75, 61, 70, 67, 70, 61, 57, 63, 72, 47, 59, 54, 54, 70, 58, 54, 70, 57, 50, 57, 69, 52, 104, 58, 50, 70, 86, 120, 55, 66, 61, 68, 67, 60, 103, 50, 70, 53, 83, 55, 60, 45, 67, 55, 57, 74, 57, 46, 75, 69, 71, 56, 66, 50, 91, 60, 55, 58, 67, 54, 66, 86, 84, 87, 78, 73, 65, 88, 82, 55, 54, 66, 68, 53, 65, 77, 76, 87, 70, 61, 113, 62, 54, 71, 72, 86, 79, 71, 71, 82, 77, 66, 55, 68, 59, 67, 56, 85, 57, 82, 52, 66, 55, 48, 66, 56, 68, 62, 63, 57, 82, 63, 72, 86, 69, 52, 84, 69, 56, 94, 68, 62, 58, 114, 82, 60, 47, 53, 76, 51, 52, 120, 63, 79, 59, 85, 61, 68, 55, 72, 71, 64, 60, 69, 37, 86, 72, 60, 58, 61, 88, 58, 83, 45, 67, 61, 68, 62, 68, 44, 86, 54, 63, 46, 64, 77, 79, 57, 62, 50, 54, 61, 84, 68, 63, 55, 71, 54, 99, 58, 114, 66, 42, 71, 63, 65, 67, 78, 57, 76, 59, 73, 64, 32, 62, 79, 60, 58, 48, 68, 44, 56, 62, 41, 53, 51, 70, 85, 74, 57, 50, 85, 41, 78, 53, 68, 80, 100, 67, 62, 56, 89, 40, 58, 66, 70, 74, 70, 83, 70, 78, 71, 57, 67, 58, 65, 69, 44, 85, 57, 58, 71, 69, 61, 59, 98, 69, 49, 43, 65, 123, 75, 72, 60, 46, 95, 57, 59, 53, 118, 99, 73, 56, 43, 88, 60, 82, 64, 79, 55, 70, 75, 67, 57, 57, 70, 55, 53, 73, 53, 68, 67, 66, 60, 55, 54, 91, 54, 70, 71, 70, 81, 57, 57, 69, 53, 60, 67, 59, 52, 57, 54, 73, 69, 63, 59, 75, 64, 71, 53, 52, 78, 54, 89, 59, 94, 64, 70, 84, 64, 65, 70, 50, 66, 51, 55, 54, 55, 69, 62, 68, 78, 66, 66, 78, 54, 54, 53, 86, 76, 68, 52, 60, 65, 69, 56, 48, 47, 65, 59, 101, 88, 51, 54, 30, 93, 70, 61, 73, 59, 63, 88, 80, 64, 58, 71, 57, 77, 46, 48, 114, 63, 68, 90, 73, 71, 54, 70, 48, 53, 54, 64, 63, 67, 55, 59, 58, 67, 75, 51, 68, 73, 63, 87, 84, 72, 78, 75, 51, 75, 64, 68, 76, 55, 55, 68, 47, 71, 49, 61, 62, 76, 53, 54, 63, 67, 54, 67, 69, 59, 72, 66, 44, 44, 68, 68, 62, 63, 57, 47, 75, 70, 65, 68, 75, 71, 44, 63, 51, 48, 64, 68, 77, 63, 65, 37, 60, 55, 60, 57, 48, 53, 63, 51, 56, 111, 58, 51, 60, 93, 49, 60, 67, 50, 72, 66, 79, 68, 45, 108, 48, 69, 66, 76, 63, 64, 62, 56, 74, 77, 84, 74, 54, 57, 49, 56, 66, 67, 71, 57, 61, 76, 59, 61, 79, 59, 93, 48, 71, 68, 67, 98, 65, 64, 78, 57, 57, 54, 60, 68, 103, 84, 106, 70, 88, 67, 44, 62, 57, 78, 53, 77, 51, 63, 71, 75, 39, 99, 62, 80, 55, 61, 90, 71, 69, 59, 65, 66, 69, 60, 58, 65, 48, 70, 48, 41, 55, 52, 53, 72, 70, 70, 74, 56, 58, 89, 69, 68, 61, 62, 64, 79, 68, 64, 71, 68, 46, 66, 73, 54, 63, 113, 72, 43, 67, 54, 57, 56, 74, 74, 87, 65, 60, 52, 54, 71, 66, 71, 53, 42, 52, 55, 67, 54, 63, 73, 62, 67, 81, 51, 76, 50, 73, 68, 64, 56, 50, 63, 66, 48, 46, 63, 76, 61, 52, 84, 64, 59, 44, 59, 44, 68, 72, 57, 59, 46, 58, 70, 90, 64, 67, 67, 71, 77, 61, 89, 82, 74, 40, 81, 67, 54, 57, 56, 44, 49, 90, 61, 59, 58, 64, 116, 63, 54, 68, 77, 70, 72, 67, 59, 71, 76, 53, 66, 47, 53, 58, 70, 59, 52, 52, 53, 61, 80, 85, 70, 58, 111, 56, 75, 62, 75, 75, 65, 63, 68, 70, 69, 99, 85, 54, 54, 80, 51, 68, 56, 59, 67, 62, 70, 83, 58, 54, 37, 67, 78, 71, 46, 65, 85, 60, 60, 77, 55, 68, 77, 58, 45, 74, 63, 63, 110, 34, 84, 43, 69, 90, 52, 54, 56, 46, 114, 67, 44, 77, 84, 62, 81, 38, 56, 60, 58, 67, 79, 61, 49, 67, 71, 68, 56, 73, 58, 64, 95, 70, 73, 49, 71, 62, 79, 69, 72, 65, 47, 60, 57, 55, 66, 58, 62, 58, 53, 59, 57, 62, 82, 73, 65, 52, 63, 91, 56, 64, 48, 78, 73, 62, 60, 51, 34, 67, 65, 95, 74, 46, 79, 67, 61, 48, 46, 51, 71, 70, 73, 58, 73, 69, 79, 65, 66, 66, 61, 60, 56, 53, 96, 102, 65, 87, 61, 82, 55, 37, 57, 59, 65, 55, 64, 59, 58, 61, 69, 102, 44, 65, 72, 64, 80, 53, 57, 62, 86, 74, 47, 67, 76, 69, 58, 62, 64, 64, 70, 54, 69, 75, 81, 64, 54, 78, 52, 57, 96, 58, 55, 81, 61, 78, 76, 58, 74, 41, 57, 72, 70, 65, 70, 81, 68, 82, 53, 48, 70, 65, 63, 73, 103, 80, 67, 67, 53, 58, 70, 52, 67, 55, 70, 60, 63, 59, 63, 86, 48, 79, 61, 63, 60, 48, 41, 65, 78, 76, 68, 82, 87, 62, 72, 65, 71, 71, 57, 90, 85, 64, 83, 68, 53, 70, 71, 74, 56, 103, 65, 97, 69, 73, 56, 53, 73, 48, 63, 57, 53, 77, 76, 71, 91, 114, 51, 72, 63, 78, 56, 36, 85, 43, 45, 72, 60, 54, 59, 57, 67, 74, 53, 58, 78, 76, 72, 63, 70, 69, 84, 73, 71, 45, 64, 75, 86, 75, 55, 62, 67, 64, 64, 59, 53, 56, 68, 56, 73, 51, 68, 61, 71, 53, 74, 58, 61, 51, 71, 68, 45, 56, 60, 64, 55, 67, 61, 90, 62, 86, 75, 61, 60, 66, 54, 54, 48, 70, 53, 73, 68, 66, 82, 55, 80, 91, 54, 66, 50, 62, 65, 82, 70, 62, 68, 58, 58, 73, 77, 64, 42, 55, 61, 56, 61, 83, 65, 69, 103, 80, 106, 73, 45, 58, 87, 64, 57, 85, 69, 76, 50, 75, 63, 59, 60, 62, 53, 83, 72, 46, 70, 64, 39, 77, 54, 63, 71, 47, 51, 63, 52, 52, 48, 62, 95, 69, 67, 77, 54, 52, 76, 81, 62, 81, 53, 59, 66, 83, 45, 47, 51, 74, 61, 112, 68, 71, 86, 73, 60, 55, 66, 68, 59, 80, 63, 66, 60, 64, 57, 60, 87, 63, 60, 52, 59, 49, 65, 54, 55, 72, 82, 79, 68, 72, 86, 70, 35, 76, 65, 60, 67, 66, 70, 78, 60, 54, 92, 74, 71, 73, 66, 45, 66, 75, 97, 59, 71, 74, 61, 45, 59, 86, 40, 71, 55, 75, 62, 76, 47, 60, 49, 57, 74, 81, 62, 54, 51, 85, 61, 54, 52, 64, 53, 103, 53, 78, 59, 69, 62, 50, 68, 65, 52, 58, 83, 86, 89, 47, 70, 53, 57, 88, 61, 94, 65, 61, 54, 38, 70, 63, 76, 59, 78, 76, 42, 65, 65, 70, 101, 67, 64, 67, 54, 68, 60, 72, 51, 54, 68, 58, 77, 58, 65, 69, 70, 69, 59, 60, 64, 64, 67, 63, 58, 93, 102, 68, 61, 50, 68, 46, 62, 49, 63, 74, 81, 71, 80, 77, 53, 67, 68, 89, 46, 62, 95, 60, 75, 71, 59, 55, 70, 54, 66, 152, 70, 63, 96, 55, 62, 53, 70, 67, 78, 92, 80, 70, 71, 48, 74, 53, 63, 77, 70, 53, 74, 76, 50, 60, 84, 66, 97, 71, 67, 56, 47, 64, 74, 59, 60, 97, 56, 75, 79, 51, 87, 54, 63, 60, 78, 90, 86, 68, 85, 70, 60, 67, 60, 75, 60, 75, 53, 49, 65, 59, 71, 73, 58, 60, 76, 71, 58, 58, 59, 91, 53, 66, 62, 57, 59, 82, 54, 58, 77, 99, 70, 70, 73, 57, 66, 76, 68, 69, 37, 77, 62, 80, 62, 55, 85, 58, 59, 77, 79, 81, 87, 48, 78, 95, 100, 71, 74, 61, 70, 53, 55, 64, 67, 56, 95, 51, 69, 66, 87, 111, 78, 66, 88, 49, 61, 59, 74, 67, 49, 60, 67, 73, 46, 68, 71, 62, 60, 78, 77, 67, 79, 57, 74, 54, 55, 68, 60, 60, 51, 54, 66, 88, 82, 60, 80, 54, 81, 53, 59, 53, 61, 75, 62, 53, 79, 60, 64, 69, 69, 44, 76, 71, 59, 58, 76, 55, 56, 56, 74, 73, 67, 74, 64, 67, 81, 67, 44, 38, 57, 70, 56, 71, 58, 48, 66, 78, 63, 60, 65, 95, 41, 73, 57, 51, 117, 59, 40, 55, 118, 50, 75, 65, 64, 52, 76, 95, 61, 58, 81, 66, 52, 89, 59, 50, 69, 54, 138, 67, 103, 85, 72, 74, 72, 57, 48, 59, 59, 59, 49, 48, 53, 56, 73, 97, 60, 70, 62, 78, 46, 47, 68, 71, 61, 47, 59, 77, 62, 56, 67, 115, 75, 75, 69, 77, 68, 59, 65, 53, 63, 70, 59, 51, 69, 79, 44, 55, 68, 64, 69, 68, 72, 63, 74, 66, 73, 64, 85, 68, 67, 57, 63, 59, 74, 109, 50, 86, 55, 70, 33, 62, 58, 60, 60, 80, 62, 69, 69, 65, 48, 46, 60, 69, 45, 65, 63, 77, 80, 76, 62, 56, 69, 59, 53, 81, 62, 75, 68, 52, 80, 62, 53, 68, 61, 86, 77, 59, 78, 63, 40, 77, 67, 48, 59, 69, 82, 34, 64, 98, 79, 56, 69, 59, 96, 69, 70, 48, 76, 55, 60, 81, 58, 53, 54, 53, 75, 62, 48, 59, 61, 61, 45, 56, 63, 60, 60, 63, 65, 79, 114, 69, 56, 72, 54, 53, 104, 70, 78, 69, 66, 58, 47, 82, 56, 67, 64, 63, 57, 60, 56, 62, 105, 81, 101, 62, 70, 76, 76, 88, 94, 69, 72, 47, 61, 60, 50, 60, 68, 78, 69, 81, 66, 75, 48, 69, 50, 61, 70, 59, 62, 91, 56, 67, 82, 51, 58, 71, 93, 69, 78, 65, 95, 69, 64, 67, 74, 54, 67, 62, 64, 88, 67, 69, 66, 66, 46, 49, 52, 65, 47, 57, 58, 52, 55, 69, 65, 54, 60, 99, 60, 50, 53, 49, 78, 59, 72, 76, 90, 54, 56, 62, 153, 80, 75, 77, 72, 70, 67, 51, 62, 67, 61, 64, 59, 80, 56, 59, 66, 56, 55, 82, 64, 73, 54, 73, 45, 62, 65, 59, 79, 50, 57, 70, 72, 52, 72, 61, 91, 65, 65, 62, 49, 52, 54, 54, 64, 60, 74, 57, 59, 87, 61, 65, 59, 59, 46, 63, 67, 47, 71, 53, 68, 68, 52, 61, 78, 77, 66, 59, 106, 53, 79, 55, 77, 50, 56, 75, 64, 77, 81, 66, 72, 61, 78, 66, 64, 82, 48, 105, 73, 64, 65, 56, 64, 85, 56, 64, 70, 69, 52, 61, 96, 59, 61, 56, 61, 61, 62, 68, 49, 63, 66, 47, 79, 65, 61, 47, 71, 64, 60, 54, 74, 72, 63, 56, 83, 47, 75, 61, 62, 47, 81, 93, 65, 85, 51, 74, 57, 34, 60, 51, 74, 54, 63, 59, 71, 80, 65, 57, 66, 90, 65, 56, 68, 76, 86, 98, 39, 52, 57, 61, 88, 68, 57, 58, 65, 59, 66, 50, 81, 61, 61, 75, 76, 70, 64, 61, 51, 62, 41, 50, 60, 63, 75, 56, 69, 89, 70, 54, 74, 68, 55, 58, 63, 44, 50, 63, 83, 90, 61, 75, 41, 85, 62, 59, 63, 43, 64, 69, 57, 57, 76, 76, 53, 47, 131, 77, 63, 71, 48, 78, 53, 49, 54, 91, 79, 56, 57, 56, 58, 54, 72, 72, 75, 52, 64, 59, 73, 55, 47, 64, 52, 68, 65, 63, 64, 59, 65, 72, 48, 70, 68, 65, 69, 52, 50, 47, 63, 56, 59, 79, 66, 51, 61, 59, 85, 61, 70, 59, 46, 73, 75, 54, 60, 59, 68, 68, 62, 67, 60, 58, 56, 65, 58, 68, 41, 73, 69, 71, 66, 62, 70, 71, 47, 44, 61, 55, 62, 53, 66, 41, 60, 53, 57, 58, 51, 63, 107, 75, 65, 70, 49, 62, 64, 52, 47, 56, 66, 71, 88, 58, 130, 70, 83, 54, 55, 48, 59, 42, 56, 65, 62, 55, 102, 76, 84, 61, 58, 55, 71, 47, 57, 56, 76, 101, 64, 61, 55, 103, 62, 67, 63, 92, 50, 65, 66, 73, 61, 91, 91, 62, 88, 80, 54, 78, 78, 75, 63, 70, 72, 78, 73, 50, 52, 127, 78, 63, 73, 91, 51, 60, 61, 61, 74, 26, 72, 75, 65, 59, 51, 69, 101, 55, 42, 44, 84, 62, 57, 54, 73, 77, 65, 59, 67, 66, 69, 84, 63, 66, 53, 49, 60, 60, 73, 56, 60, 63, 60, 69, 67, 42, 66, 55, 51, 43, 73, 53, 54, 56, 65, 56, 61, 60, 91, 83, 62, 71, 61, 74, 58, 74, 72, 39, 69, 69, 64, 51, 68, 57, 53, 80, 70, 63, 59, 52, 63, 81, 60, 77, 71, 67, 61, 53, 55, 64, 59, 74, 72, 90, 57, 46, 51, 77, 74, 60, 42, 60, 69, 56, 64, 53, 76, 65, 58, 70, 56, 74, 56, 55, 70, 63, 53, 55, 57, 50, 58, 71, 43, 63, 51, 54, 87, 65, 70, 53, 66, 104, 79, 75, 96, 65, 77, 71, 52, 64, 127, 77, 58, 59, 49, 72, 66, 57, 62, 66, 51, 57, 97, 75, 98, 55, 64, 70, 62, 74, 65, 63, 59, 70, 55, 63, 58, 64, 68, 91, 78, 54, 66, 50, 46, 62, 62, 67, 91, 105, 83, 65, 95, 78, 64, 57, 77, 65, 55, 63, 64, 93, 46, 63, 84, 87, 53, 62, 92, 49, 69, 66, 79, 61, 85, 101, 63, 98, 57, 58, 77, 59, 66, 62, 61, 66, 59, 76, 70, 59, 87, 86, 45, 60, 96, 62, 63, 64, 87, 59, 61, 66, 72, 79, 79, 60, 65, 88, 68, 85, 84, 70, 61, 65, 59, 60, 65, 53, 63, 95, 66, 66, 69, 76, 47, 51, 70, 83, 78, 84, 63, 75, 65, 58, 57, 58, 82, 61, 53, 91, 51, 61, 61, 56, 33, 53, 64, 48, 72, 55, 79, 55, 76, 63, 66, 81, 66, 54, 82, 92, 65, 52, 48, 74, 69, 66, 56, 68, 66, 51, 62, 66, 68, 63, 64, 75, 61, 97, 58, 83, 63, 68, 52, 88, 74, 77, 82, 59, 72, 64, 64, 56, 64, 60, 90, 64, 64, 57, 62, 68, 124, 108, 62, 56, 57, 51, 57, 56, 58, 48, 62, 72, 66, 59, 52, 54, 71, 65, 62, 49, 75, 62, 62, 64, 106, 65, 53, 60, 66, 73, 76, 74, 84, 62, 57, 71, 66, 75, 51, 61, 78, 59, 57, 62, 98, 52, 72, 63, 94, 50, 52, 66, 52, 41, 82, 48, 67, 47, 84, 60, 57, 47, 49, 49, 58, 69, 75, 63, 92, 57, 69, 59, 68, 67, 56, 66, 64, 60, 71, 59, 72, 64, 76, 41, 62, 80, 60, 74, 76, 53, 61, 75, 79, 57, 51, 57, 84, 64, 67, 85, 63, 55, 62, 80, 50, 75, 66, 52, 66, 84, 73, 64, 47, 61, 39, 47, 68, 68, 60, 67, 65, 60, 65, 63, 87, 59, 134, 58, 59, 68, 53, 59, 69, 96, 71, 97, 64, 71, 62, 77, 63, 56, 59, 53, 50, 57, 64, 52, 59, 63, 50, 59, 81, 80, 67, 65, 83, 68, 62, 69, 78, 48, 86, 56, 53, 72, 77, 56, 58, 90, 81, 59, 81, 65, 75, 53, 84, 78, 68, 60, 71, 82, 57, 69, 60, 75, 64, 69, 61, 82, 67, 65, 56, 56, 50, 65, 75, 52, 83, 65, 86, 55, 74, 70, 55, 62, 73, 61, 59, 71, 63, 49, 58, 77, 54, 68, 74, 74, 70, 76, 100, 79, 55, 59, 92, 51, 73, 55, 56, 62, 59, 51, 69, 84, 55, 63, 71, 47, 51, 57, 109, 51, 55, 61, 58, 53, 76, 69, 74, 75, 66, 71, 77, 60, 81, 49, 58, 75, 46, 50, 47, 92, 75, 77, 62, 47, 83, 57, 87, 75, 53, 52, 66, 61, 84, 60, 81, 70, 68, 55, 93, 73, 89, 58, 85, 62, 68, 100, 56, 64, 52, 64, 66, 73, 82, 62, 74, 66, 59, 71, 64, 74, 66, 50, 61, 54, 52, 116, 50, 74, 53, 104, 80, 67, 54, 74, 81, 65, 42, 61, 144, 79, 53, 61, 63, 85, 62, 60, 66, 46, 88, 75, 68, 80, 71, 58, 58, 70, 56, 54, 59, 57, 65, 78, 61, 44, 76, 61, 76, 57, 54, 65, 83, 66, 46, 68, 75, 66, 65, 48, 59, 61, 78, 70, 72, 63, 45, 80, 97, 70, 48, 63, 74, 62, 73, 59, 90, 55, 52, 58, 57, 65, 57, 79, 66, 75, 70, 72, 68, 63, 72, 52, 79, 54, 55, 74, 57, 68, 64, 79, 50, 63, 81, 73, 72, 61, 72, 78, 84, 48, 54, 58, 66, 78, 71, 83, 63, 46, 58, 60, 92, 64, 60, 75, 74, 62, 58, 71, 54, 52, 69, 52, 54, 55, 68, 62, 52, 81, 58, 52, 70, 87, 58, 47, 111, 82, 75, 62, 52, 60, 46, 60, 72, 66, 77, 66, 83, 59, 48, 59, 69, 64, 75, 51, 52, 68, 59, 94, 54, 44, 68, 75, 63, 74, 92, 60, 60, 47, 61, 75, 73, 61, 72, 74, 60, 72, 52, 59, 73, 60, 69, 71, 39, 55, 63, 54, 62, 67, 60, 61, 72, 64, 74, 45, 112, 59, 71, 57, 38, 69, 78, 67, 55, 91, 52, 78, 61, 60, 55, 66, 56, 80, 65, 67, 71, 74, 66, 61, 52, 65, 66, 63, 61, 78, 68, 63, 58, 67, 93, 65, 87, 59, 57, 52, 104, 53, 73, 52, 67, 71, 55, 67, 53, 64, 69, 44, 93, 72, 79, 66, 48, 49, 53, 85, 53, 64, 88, 79, 63, 61, 68, 64, 73, 48, 62, 65, 72, 63, 65, 53, 89, 68, 71, 76, 72, 57, 63, 58, 59, 105, 46, 53, 45, 75, 56, 71, 75, 68, 53, 74, 61, 60, 62, 73, 62, 77, 79, 71, 76, 67, 75, 67, 64, 80, 63, 68, 60, 53, 67, 51, 51, 60, 51, 66, 131, 57, 103, 64, 50, 65, 59, 83, 63, 56, 49, 77, 54, 60, 64, 95, 84, 96, 44, 60, 75, 50, 56, 44, 47, 61, 71, 105, 76, 69, 69, 65, 61, 68, 93, 51, 42, 64, 52, 72, 60, 57, 42, 103, 64, 113, 57, 58, 53, 68, 68, 71, 65, 44, 68, 45, 53, 63, 52, 60, 65, 74, 95, 61, 56, 79, 72, 68, 74, 60, 59, 73, 92, 68, 65, 92, 67, 69, 54, 81, 55, 75, 63, 74, 69, 76, 56, 54, 59, 74, 67, 60, 83, 47, 95, 66, 69, 47, 48, 58, 60, 65, 56, 65, 58, 52, 74, 57, 92, 61, 71, 59, 102, 66, 60, 65, 61, 76, 73, 48, 113, 67, 57, 61, 61, 50, 80, 66, 100, 64, 69, 63, 49, 69, 71, 74, 51, 61, 55, 76, 64, 66, 93, 60, 62, 53, 66, 63, 46, 61, 65, 55, 57, 59, 68, 68, 67, 46, 60, 52, 59, 49, 76, 65, 57, 70, 75, 91, 81, 61, 76, 66, 73, 62, 56, 64, 67, 67, 87, 77, 75, 69, 63, 50, 63, 67, 72, 80, 58, 72, 55, 51, 70, 101, 61, 72, 70, 80, 70, 68, 46, 125, 84, 65, 58, 46, 105, 63, 53, 61, 104, 52, 57, 75, 52, 39, 84, 81, 65, 78, 49, 58, 82, 78, 40, 61, 65, 59, 55, 97, 42, 47, 76, 66, 53, 63, 74, 63, 66, 97, 69, 74, 57, 63, 69, 46, 40, 53, 55, 71, 75, 49, 66, 58, 60, 80, 73, 63, 57, 77, 69, 64, 60, 62, 65, 60, 60, 58, 37, 71, 58, 62, 82, 44, 90, 74, 54, 68, 61, 62, 51, 59, 65, 62, 65, 65, 59, 57, 76, 62, 57, 76, 58, 60, 61, 65, 53, 73, 102, 66, 50, 63, 60, 80, 76, 58, 62, 69, 52, 63, 40, 59, 59, 40, 62, 71, 52, 52, 55, 63, 63, 69, 58, 54, 85, 56, 50, 80, 58, 66, 69, 79, 60, 63, 43, 74, 58, 67, 66, 131, 83, 62, 57, 59, 60, 87, 54, 57, 77, 59, 83, 57, 58, 66, 69, 118, 62, 62, 65, 82, 67, 68, 45, 99, 63, 87, 70, 75, 74, 55, 55, 60, 70, 56, 64, 46, 56, 74, 53, 96, 64, 57, 80, 110, 75, 49, 74, 54, 61, 63, 50, 61, 64, 62, 67, 74, 79, 59, 54, 50, 54, 61, 55, 51, 49, 43, 65, 52, 120, 68, 59, 82, 77, 60, 70, 70, 55, 66, 67, 97, 63, 62, 75, 64, 78, 58, 53, 98, 53, 56, 72, 53, 70, 61, 107, 54, 63, 61, 51, 62, 49, 61, 55, 61, 118, 52, 77, 56, 83, 83, 69, 79, 59, 59, 64, 66, 39, 57, 44, 61, 61, 70, 83, 66, 70, 64, 83, 67, 68, 76, 71, 60, 54, 70, 67, 65, 65, 57, 63, 72, 102, 68, 52, 65, 64, 65, 51, 95, 52, 73, 61, 70, 87, 62, 68, 59, 57, 57, 57, 55, 56, 46, 79, 42, 73, 84, 59, 69, 54, 75, 67, 48, 66, 68, 78, 67, 93, 72, 68, 67, 80, 60, 76, 52, 82, 64, 137, 66, 60, 62, 69, 68, 73, 69, 54, 94, 52, 64, 86, 74, 63, 50, 66, 77, 55, 68, 52, 80, 51, 54, 53, 48, 67, 73, 76, 66, 105, 71, 56, 62, 51, 47, 80, 104, 72, 61, 56, 74, 54, 78, 60, 67, 93, 76, 49, 71, 61, 60, 72, 75, 76, 67, 69, 64, 56, 71, 58, 65, 71, 84, 63, 62, 77, 67, 49, 50, 59, 55, 67, 74, 91, 45, 69, 57, 84, 74, 67, 47, 84, 68, 52, 54, 51, 63, 52, 62, 93, 72, 67, 62, 69, 57, 68, 61, 74, 54, 60, 42, 59, 80, 57, 57, 57, 63, 57, 61, 73, 53, 62, 60, 90, 63, 52, 73, 67, 54, 68, 85, 52, 63, 44, 52, 63, 55, 61, 71, 60, 67, 47, 49, 60, 72, 52, 70, 75, 62, 62, 73, 91, 65, 53, 43, 52, 57, 64, 47, 90, 59, 67, 58, 69, 58, 82, 64, 101, 60, 49, 61, 47, 68, 63, 75, 41, 55, 82, 56, 57, 55, 58, 62, 68, 108, 63, 65, 79, 59, 61, 128, 57, 59, 72, 97, 55, 49, 75, 64, 56, 52, 67, 69, 154, 73, 77, 62, 74, 64, 60, 50, 54, 64, 62, 56, 69, 58, 72, 61, 59, 70, 55, 61, 75, 57, 93, 70, 71, 69, 73, 76, 66, 60, 60, 66, 72, 56, 63, 66, 72, 72, 50, 62, 65, 58, 54, 70, 66, 53, 73, 83, 74, 57, 62, 87, 60, 60, 78, 52, 87, 48, 63, 70, 59, 73, 53, 79, 77, 56, 52, 65, 63, 62, 70, 57, 69, 58, 66, 48, 67, 64, 65, 87, 60, 75, 56, 60, 66, 63, 66, 78, 61, 49, 76, 60, 67, 83, 72, 49, 62, 50, 54, 52, 96, 54, 49, 61, 81, 59, 80, 98, 75, 72, 105, 67, 74, 73, 42, 59, 78, 80, 59, 77, 72, 72, 65, 57, 65, 99, 66, 69, 61, 55, 51, 68, 78, 103, 73, 84, 46, 56, 55, 54, 68, 45, 61, 57, 64, 63, 62, 81, 42, 66, 45, 70, 55, 73, 84, 57, 60, 57, 65, 60, 52, 65, 62, 71, 71, 46, 74, 76, 66, 57, 85, 69, 50, 67, 57, 63, 52, 65, 47, 59, 62, 73, 83, 70, 85, 45, 71, 62, 63, 60, 50, 86, 63, 72, 84, 59, 64, 107, 71, 80, 69, 57, 64, 50, 66, 71, 59, 64, 53, 62, 57, 60, 45, 94, 83, 63, 43, 56, 63, 80, 74, 63, 36, 95, 72, 77, 57, 57, 78, 64, 62, 48, 65, 76, 71, 67, 94, 63, 63, 55, 69, 66, 73, 64, 76, 59, 47, 54, 47, 53, 56, 87, 60, 51, 74, 56, 84, 58, 60, 72, 56, 62, 85, 48, 62, 77, 56, 82, 83, 122, 64, 45, 48, 77, 74, 43, 48, 55, 52, 66, 54, 59, 78, 68, 63, 59, 55, 65, 68, 60, 105, 58, 65, 86, 54, 53, 58, 60, 95, 68, 63, 78, 68, 81, 74, 52, 92, 60, 52, 65, 67, 76, 59, 60, 51, 56, 54, 62, 87, 85, 46, 80, 59, 57, 62, 57, 58, 78, 63, 71, 67, 85, 75, 62, 82, 73, 73, 53, 102, 47, 58, 75, 71, 45, 61, 53, 66, 108, 56, 62, 76, 61, 57, 58, 44, 63, 69, 55, 68, 88, 63, 62, 68, 51, 63, 65, 99, 60, 59, 66, 69, 59, 47, 81, 54, 58, 67, 99, 57, 67, 72, 57, 69, 67, 66, 60, 47, 62, 67, 77, 64, 69, 66, 66, 85, 56, 49, 45, 81, 69, 60, 56, 55, 65, 68, 62, 61, 56, 64, 69, 55, 58, 54, 71, 65, 59, 88, 74, 75, 64, 53, 61, 58, 76, 77, 90, 71, 60, 61, 75, 90, 50, 87, 61, 71, 68, 61, 77, 67, 78, 68, 75, 78, 64, 66, 47, 71, 83, 63, 53, 67, 61, 45, 76, 59, 60, 60, 53, 71, 63, 70, 65, 53, 69, 71, 94, 60, 67, 54, 58, 83, 93, 87, 89, 69, 55, 62, 61, 72, 57, 73, 58, 111, 83, 73, 72, 62, 62, 63, 44, 73, 95, 71, 61, 55, 60, 67, 100, 58, 68, 67, 65, 67, 64, 63, 76, 65, 84, 69, 92, 94, 79, 56, 67, 107, 50, 64, 60, 61, 65, 75, 86, 70, 54, 84, 62, 59, 69, 49, 57, 65, 86, 54, 52, 78, 64, 56, 54, 62, 51, 45, 76, 62, 116, 78, 61, 62, 70, 70, 60, 62, 70, 81, 71, 58, 50, 50, 61, 61, 60, 78, 73, 68, 81, 67, 72, 57, 62, 59, 76, 70, 53, 48, 69, 69, 52, 81, 81, 107, 58, 52, 49, 66, 73, 48, 71, 55, 59, 60, 83, 58, 42, 69, 40, 64, 55, 62, 67, 49, 80, 76, 59, 91, 76, 64, 72, 63, 54, 73, 66, 63, 50, 61, 59, 78, 103, 74, 50, 55, 68, 77, 70, 60, 47, 43, 59, 53, 74, 67, 67, 69, 81, 56, 61, 61, 65, 56, 61, 69, 60, 82, 89, 65, 119, 65, 67, 55, 67, 70, 54, 58, 85, 63, 67, 71, 66, 61, 60, 76, 52, 51, 64, 71, 103, 72, 75, 85, 99, 76, 70, 77, 53, 81, 61, 62, 62, 55, 70, 63, 44, 53, 62, 63, 73, 55, 78, 73, 73, 61, 69, 67, 62, 52, 61, 64, 62, 60, 51, 52, 62, 57, 58, 54, 67, 76, 55, 63, 56, 60, 71, 61, 86, 90, 69, 58, 69, 78, 80, 61, 55, 70, 59, 56, 118, 61, 57, 65, 54, 66, 66, 57, 89, 60, 55, 74, 74, 72, 58, 74, 96, 52, 64, 74, 66, 69, 64, 80, 85, 64, 63, 54, 59, 75, 67, 67, 63, 36, 55, 80, 50, 58, 63, 67, 61, 72, 62, 88, 66, 78, 88, 76, 36, 60, 75, 60, 53, 56, 72, 58, 54, 62, 78, 52, 67, 65, 67, 49, 94, 66, 71, 59, 57, 55, 60, 54, 63, 88, 55, 72, 68, 48, 61, 70, 74, 65, 56, 120, 59, 66, 71, 62, 57, 72, 96, 60, 73, 58, 75, 77, 67, 64, 73, 56, 69, 94, 82, 71, 56, 74, 54, 79, 81, 69, 82, 65, 94, 62, 79, 69, 73, 58, 58, 39, 65, 48, 52, 59, 82, 72, 70, 64, 61, 57, 78, 89, 76, 55, 105, 86, 53, 34, 89, 53, 54, 91, 64, 75, 64, 61, 59, 66, 73, 64, 46, 53, 53, 66, 54, 89, 68, 84, 76, 35, 63, 58, 76, 53, 47, 57, 73, 58, 59, 61, 55, 75, 74, 63, 81, 66, 39, 65, 52, 42, 62, 95, 57, 80, 52, 91, 62, 65, 48, 65, 79, 61, 47, 50, 67, 57, 59, 83, 112, 55, 55, 86, 70, 62, 80, 93, 68, 72, 63, 66, 66, 51, 66, 53, 66, 62, 65, 61, 55, 52, 69, 105, 65, 86, 78, 61, 74, 60, 56, 73, 73, 72, 50, 63, 49, 57, 63, 58, 65, 86, 41, 66, 59, 40, 71, 72, 47, 49, 61, 71, 71, 52, 58, 62, 76, 56, 60, 101, 56, 70, 48, 54, 95, 64, 57, 112, 58, 69, 53, 67, 69, 55, 64, 70, 62, 51, 62, 55, 60, 69, 53, 59, 77, 66, 61, 74, 69, 64, 119, 90, 54, 48, 137, 70, 59, 88, 77, 60, 53, 62, 62, 145, 39, 48, 59, 69, 55, 86, 52, 83, 73, 53, 72, 62, 82, 50, 48, 69, 65, 65, 54, 52, 78, 78, 51, 45, 62, 77, 55, 48, 63, 70, 79, 76, 54, 78, 57, 82, 57, 54, 49, 61, 65, 64, 69, 55, 51, 70, 47, 65, 72, 71, 61, 62, 62, 50, 59, 55, 78, 134, 44, 69, 58, 66, 53, 96, 87, 68, 66, 83, 58, 67, 70, 52, 82, 62, 74, 56, 53, 54, 76, 96, 56, 57, 49, 55, 58, 76, 120, 74, 58, 105, 54, 61, 65, 68, 88, 51, 50, 53, 60, 94, 87, 69, 67, 92, 59, 71, 71, 56, 65, 79, 65, 69, 36, 67, 51, 61, 62, 60, 44, 58, 116, 81, 59, 71, 50, 67, 57, 55, 51, 61, 63, 79, 74, 56, 87, 40, 60, 68, 60, 72, 53, 69, 69, 47, 44, 48, 75, 68, 67, 65, 143, 55, 74, 116, 50, 69, 70, 76, 63, 68, 53, 65, 53, 69, 66, 74, 111, 64, 74, 71, 56, 68, 73, 56, 52, 79, 84, 70, 73, 69, 87, 88, 62, 66, 42, 61, 61, 63, 86, 110, 61, 47, 57, 64, 93, 59, 64, 73, 75, 78, 69, 94, 102, 70, 80, 73, 106, 61, 68, 59, 52, 73, 72, 57, 60, 47, 68, 82, 78, 100, 61, 44, 80, 45, 101, 60, 66, 54, 54, 49, 68, 70, 68, 80, 62, 65, 68, 54, 57, 70, 37, 59, 83, 72, 46, 95, 53, 62, 55, 44, 64, 66, 63, 63, 94, 71, 53, 51, 75, 67, 96, 58, 65, 51, 28, 48, 89, 44, 86, 71, 69, 58, 51, 56, 54, 77, 64, 55, 53, 56, 54, 66, 39, 66, 64, 43, 89, 73, 57, 70, 65, 56, 53, 84, 64, 67, 65, 56, 57, 66, 147, 64, 60, 58, 50, 86, 44, 56, 73, 72, 78, 63, 46, 54, 47, 47, 63, 111, 76, 101, 77, 68, 64, 63, 60, 72, 68, 64, 87, 69, 49, 64, 96, 63, 43, 60, 83, 75, 59, 66, 40, 71, 62, 70, 67, 71, 64, 61, 65, 97, 51, 88, 59, 53, 67, 62, 64, 70, 73, 56, 38, 66, 50, 59, 67, 54, 56, 76, 64, 78, 69, 58, 70, 47, 58, 54, 85, 97, 101, 62, 64, 60, 74, 71, 90, 56, 66, 77, 56, 39, 65, 68, 71, 69, 58, 54, 68, 76, 65, 58, 72, 62, 67, 73, 72, 62, 76, 79, 69, 65, 52, 52, 59, 63, 63, 118, 55, 71, 75, 50, 86, 66, 75, 67, 56, 65, 65, 65, 60, 63, 53, 78, 64, 78, 63, 53, 59, 71, 66, 69, 58, 79, 76, 49, 68, 56, 104, 32, 70, 58, 49, 103, 56, 61, 59, 61, 67, 60, 50, 71, 72, 64, 61, 57, 100, 64, 49, 76, 55, 62, 61, 97, 78, 70, 63, 63, 51, 62, 82, 61, 53, 56, 49, 67, 52, 53, 77, 43, 64, 64, 75, 45, 79, 74, 55, 66, 59, 88, 91, 78, 51, 48, 55, 42, 86, 67, 75, 49, 55, 105, 70, 38, 87, 107, 34, 70, 58, 71, 63, 59, 59, 74, 51, 33, 61, 100, 68, 81, 85, 63, 67, 56, 84, 89, 46, 68, 77, 49, 79, 46, 49, 62, 62, 88, 89, 44, 55, 80, 77, 72, 74, 69, 89, 49, 61, 81, 73, 55, 60, 62, 55, 42, 62, 56, 40, 52, 70, 54, 63, 50, 52, 40, 69, 72, 73, 50, 59, 114, 83, 76, 68, 80, 69, 50, 76, 67, 67, 75, 83, 61, 49, 73, 83, 29, 66, 47, 83, 57, 97, 57, 57, 83, 40, 56, 51, 67, 62, 64, 47, 78, 76, 72, 68, 73, 68, 39, 66, 72, 69, 72, 67, 67, 77, 53, 46, 57, 69, 86, 59, 61, 76, 69, 90, 63, 74, 61, 51, 56, 56, 73, 60, 70, 111, 87, 75, 78, 90, 44, 71, 44, 49, 87, 54, 103, 51, 57, 67, 72, 54, 51, 59, 107, 84, 48, 48, 35, 61, 48, 65, 56, 95, 59, 60, 63, 58, 49, 61, 53, 61, 51, 69, 89, 60, 87, 55, 56, 61, 72, 57, 62, 67, 60, 84, 91, 64, 55, 69, 81, 59, 64, 67, 59, 56, 78, 76, 46, 61, 62, 57, 69, 48, 78, 73, 87, 85, 75, 51, 66, 65, 69, 119, 81, 92, 52, 79, 67, 60, 91, 63, 61, 55, 62, 57, 62, 57, 61, 61, 64, 66, 53, 65, 56, 56, 49, 58, 59, 58, 56, 73, 75, 63, 75, 65, 49, 78, 85, 79, 70, 57, 58, 53, 89, 77, 53, 61, 63, 67, 53, 60, 51, 38, 78, 60, 67, 56, 66, 61, 64, 78, 58, 76, 45, 87, 62, 69, 61, 49, 65, 70, 70, 58, 45, 56, 72, 61, 52, 49, 74, 64, 47, 55, 46, 65, 73, 63, 51, 81, 52, 56, 70, 55, 60, 36, 72, 74, 56, 54, 62, 51, 65, 58, 78, 89, 57, 66, 43, 47, 70, 64, 104, 91, 75, 67, 60, 60, 91, 47, 56, 78, 62, 67, 68, 82, 73, 46, 65, 68, 63, 55, 69, 59, 82, 51, 58, 79, 73, 62, 53, 53, 97, 74, 65, 52, 46, 78, 60, 52, 66, 66, 53, 98, 60, 72, 64, 60, 73, 70, 69, 60, 64, 59, 60, 51, 85, 55, 59, 82, 56, 102, 58, 74, 76, 75, 59, 69, 53, 65, 62, 64, 57, 50, 60, 76, 90, 66, 60, 71, 58, 84, 62, 60, 59, 98, 68, 46, 70, 58, 50, 63, 55, 73, 68, 52, 57, 49, 61, 47, 80, 62, 61, 92, 57, 49, 84, 52, 73, 74, 66, 71, 64, 77, 55, 72, 116, 70, 60, 94, 60, 56, 105, 92, 73, 61, 60, 70, 69, 59, 85, 67, 59, 64, 97, 59, 43, 46, 77, 73, 50, 83, 43, 58, 83, 62, 68, 54, 88, 71, 69, 74, 61, 54, 54, 60, 48, 74, 76, 62, 94, 69, 52, 74, 75, 63, 65, 49, 74, 47, 65, 60, 49, 82, 68, 77, 66, 80, 50, 68, 59, 68, 66, 91, 61, 87, 62, 72, 54, 66, 71, 75, 85, 72, 65, 81, 143, 66, 63, 82, 68, 50, 78, 62, 69, 57, 73, 61, 64, 56, 56, 53, 55, 56, 56, 52, 55, 75, 72, 82, 53, 89, 57, 68, 59, 92, 86, 61, 68, 78, 86, 63, 73, 83, 66, 50, 64, 52, 55, 60, 60, 60, 91, 64, 60, 58, 53, 64, 72, 73, 65, 47, 50, 48, 65, 65, 61, 58, 67, 75, 71, 64, 77, 48, 70, 90, 115, 74, 76, 56, 73, 77, 53, 56, 51, 57, 59, 58, 56, 80, 88, 69, 75, 116, 61, 78, 72, 68, 64, 74, 73, 74, 72, 47, 50, 79, 85, 45, 75, 73, 69, 67, 78, 92, 42, 66, 69, 73, 83, 80, 76, 61, 55, 64, 45, 63, 67, 96, 49, 69, 109, 77, 56, 54, 61, 60, 58, 105, 65, 55, 59, 65, 57, 58, 44, 55, 63, 53, 83, 47, 80, 58, 79, 95, 68, 62, 58, 66, 70, 69, 98, 96, 54, 56, 84, 53, 64, 65, 55, 63, 74, 70, 59, 70, 60, 61, 58, 80, 100, 46, 62, 84, 84, 85, 49, 60, 51, 64, 60, 73, 66, 54, 63, 50, 51, 66, 52, 60, 52, 65, 61, 34, 54, 81, 79, 70, 75, 57, 63, 50, 55, 63, 55, 69, 50, 73, 62, 61, 81, 61, 110, 59, 71, 57, 117, 54, 66, 70, 71, 60, 48, 66, 59, 105, 52, 64, 77, 48, 67, 68, 74, 64, 60, 63, 67, 69, 80, 55, 62, 82, 67, 62, 83, 64, 87, 69, 54, 55, 52, 75, 53, 56, 77, 57, 60, 63, 64, 38, 81, 71, 53, 68, 70, 68, 72, 109, 70, 56, 66, 66, 61, 57, 54, 66, 69, 70, 75, 69, 89, 54, 85, 81, 61, 77, 78, 83, 68, 77, 83, 74, 96, 50, 57, 62, 67, 73, 60, 67, 62, 61, 56, 76, 84, 60, 76, 64, 76, 76, 67, 51, 59, 72, 82, 50, 79, 63, 68, 60, 54, 58, 64, 63, 52, 64, 61, 63, 62, 73, 64, 82, 50, 62, 74, 43, 70, 63, 57, 59, 44, 63, 53, 78, 53, 68, 62, 51, 55, 78, 49, 63, 69, 66, 86, 71, 95, 80, 72, 66, 58, 63, 53, 56, 75, 106, 67, 63, 85, 42, 63, 65, 71, 47, 104, 60, 74, 75, 51, 61, 58, 42, 73, 62, 47, 57, 62, 57, 67, 50, 72, 70, 83, 64, 94, 70, 76, 71, 69, 56, 75, 59, 53, 70, 64, 56, 46, 77, 57, 91, 91, 50, 57, 64, 78, 59, 77, 58, 67, 71, 71, 59, 50, 69, 56, 53, 48, 87, 57, 64, 73, 90, 54, 64, 57, 74, 55, 53, 60, 55, 63, 74, 49, 52, 73, 53, 56, 73, 80, 72, 56, 47, 61, 66, 59, 66, 62, 65, 61, 59, 48, 61, 62, 84, 48, 66, 66, 63, 62, 64, 69, 58, 66, 60, 74, 78, 75, 53, 64, 43, 85, 52, 64, 62, 67, 83, 74, 68, 76, 66, 70, 65, 66, 49, 79, 56, 66, 47, 57, 68, 65, 61, 74, 86, 69, 62, 87, 51, 93, 61, 65, 74, 97, 73, 63, 50, 63, 61, 50, 61, 62, 61, 52, 64, 53, 60, 91, 59, 42, 111, 61, 63, 76, 81, 62, 48, 70, 68, 98, 84, 50, 76, 40, 65, 50, 65, 66, 58, 93, 68, 54, 75, 67, 58, 66, 77, 66, 73, 49, 40, 52, 61, 65, 63, 54, 52, 54, 58, 65, 57, 54, 56, 52, 72, 32, 53, 82, 78, 58, 90, 54, 64, 59, 50, 60, 52, 83, 69, 45, 91, 72, 57, 58, 65, 67, 55, 62, 82, 82, 65, 74, 105, 76, 66, 60, 66, 61, 83, 63, 59, 58, 43, 41, 77, 53, 66, 67, 65, 62, 59, 58, 72, 81, 67, 80, 72, 65, 41, 77, 67, 77, 70, 57, 68, 48, 77, 83, 91, 55, 51, 54, 63, 58, 73, 73, 55, 59, 55, 76, 75, 52, 48, 95, 73, 93, 81, 74, 79, 66, 82, 59, 78, 59, 63, 72, 48, 60, 58, 73, 57, 73, 54, 56, 77, 74, 42, 59, 64, 54, 128, 51, 64, 60, 64, 61, 34, 43, 58, 63, 66, 50, 46, 57, 55, 61, 79, 66, 53, 77, 67, 62, 57, 67, 44, 52, 66, 66, 48, 63, 68, 49, 69, 77, 52, 53, 65, 63, 66, 59, 86, 70, 83, 70, 61, 60, 49, 108, 60, 68, 73, 74, 68, 47, 51, 42, 77, 68, 68, 65, 60, 51, 50, 72, 63, 93, 42, 96, 98, 68, 58, 37, 47, 62, 82, 115, 49, 83, 49, 67, 61, 48, 66, 51, 50, 73, 108, 58, 64, 54, 51, 68, 57, 71, 58, 62, 60, 60, 70, 110, 58, 80, 66, 46, 49, 76, 57, 59, 65, 62, 61, 56, 77, 62, 71, 84, 60, 64, 72, 66, 65, 79, 55, 65, 69, 75, 70, 56, 63, 77, 65, 68, 47, 69, 72, 59, 58, 66, 44, 60, 59, 62, 65, 83, 63, 46, 67, 86, 78, 89, 90, 65, 44, 70, 64, 74, 40, 66, 83, 56, 51, 69, 79, 66, 86, 57, 68, 65, 55, 74, 58, 87, 46, 76, 62, 56, 73, 75, 51, 80, 58, 60, 64, 68, 64, 53, 74, 69, 48, 77, 104, 67, 71, 51, 56, 64, 47, 75, 63, 88, 71, 59, 67, 76, 61, 54, 70, 60, 87, 59, 64, 59, 52, 69, 60, 54, 86, 57, 51, 53, 62, 80, 73, 92, 55, 60, 75, 54, 79, 80, 54, 73, 94, 54, 40, 65, 81, 58, 55, 55, 50, 51, 58, 60, 69, 45, 65, 80, 76, 57, 81, 60, 65, 74, 41, 74, 80, 37, 80, 47, 68, 76, 55, 117, 76, 48, 74, 57, 60, 83, 107, 74, 50, 55, 60, 61, 80, 59, 52, 57, 54, 98, 61, 61, 44, 53, 71, 58, 44, 90, 60, 83, 79, 54, 90, 72, 49, 76, 74, 67, 50, 45, 49, 62, 59, 80, 60, 93, 53, 50, 73, 89, 80, 86, 66, 65, 63, 67, 56, 58, 63, 77, 49, 72, 105, 54, 47, 62, 60, 58, 95, 69, 50, 65, 66, 50, 58, 68, 67, 77, 37, 57, 66, 143, 50, 82, 59, 63, 68, 78, 62, 74, 49, 56, 65, 63, 52, 61, 50, 54, 55, 57, 54, 64, 51, 58, 54, 41, 74, 62, 67, 64, 77, 56, 66, 81, 76, 86, 69, 72, 70, 86, 59, 68, 55, 69, 71, 53, 57, 82, 48, 61, 66, 74, 39, 59, 66, 63, 57, 51, 58, 69, 65, 51, 76, 64, 90, 72, 84, 83, 57, 90, 69, 103, 42, 71, 58, 61, 54, 68, 70, 53, 66, 58, 71, 64, 63, 86, 53, 63, 126, 64, 64, 73, 68, 62, 70, 48, 56, 61, 49, 67, 57, 76, 64, 55, 71, 50, 72, 70, 85, 65, 71, 71, 86, 83, 68, 60, 60, 42, 66, 54, 56, 69, 104, 63, 59, 105, 55, 52, 58, 67, 57, 71, 91, 47, 67, 65, 69, 51, 36, 58, 55, 61, 60, 84, 60, 80, 63, 48, 56, 56, 56, 57, 66, 76, 53, 107, 79, 38, 50, 89, 54, 62, 42, 64, 61, 55, 70, 59, 84, 48, 55, 62, 60, 99, 63, 54, 85, 76, 89, 58, 63, 48, 102, 96, 58, 70, 66, 57, 67, 64, 79, 62, 73, 65, 61, 47, 79, 58, 65, 74, 73, 94, 60, 37, 62, 71, 63, 60, 72, 58, 82, 76, 48, 74, 69, 122, 77, 79, 71, 117, 62, 84, 62, 80, 65, 58, 61, 66, 82, 66, 62, 51, 59, 52, 63, 84, 57, 58, 41, 59, 76, 62, 45, 75, 78, 81, 66, 62, 62, 66, 66, 60, 55, 49, 72, 68, 45, 52, 56, 51, 66, 52, 45, 59, 68, 52, 71, 53, 72, 66, 116, 56, 56, 63, 71, 63, 65, 54, 60, 69, 57, 69, 56, 77, 48, 70, 54, 71, 68, 60, 58, 45, 47, 45, 60, 48, 56, 52, 65, 86, 52, 73, 76, 78, 58, 45, 73, 78, 63, 60, 59, 73, 83, 63, 66, 72, 59, 79, 68, 74, 66, 76, 64, 53, 61, 58, 42, 77, 51, 56, 81, 54, 71, 89, 93, 63, 71, 64, 74, 70, 58, 68, 68, 50, 50, 53, 90, 44, 68, 68, 61, 52, 57, 51, 57, 68, 73, 78, 61, 83, 54, 62, 59, 63, 57, 52, 71, 102, 102, 62, 53, 63, 71, 57, 67, 68, 64, 112, 69, 75, 65, 89, 68, 52, 44, 70, 46, 49, 61, 65, 64, 83, 54, 61, 60, 70, 58, 59, 55, 57, 80, 60, 63, 64, 76, 68, 65, 79, 46, 72, 76, 85, 83, 117, 61, 73, 83, 80, 61, 55, 81, 54, 63, 89, 58, 66, 60, 66, 51, 80, 76, 79, 50, 55, 59, 65, 84, 64, 56, 74, 58, 57, 72, 69, 62, 76, 42, 77, 65, 56, 74, 63, 80, 64, 70, 57, 51, 69, 61, 66, 58, 59, 67, 51, 51, 71, 79, 62, 72, 46, 80, 54, 71, 68, 56, 46, 59, 69, 67, 65, 69, 67, 69, 62, 56, 85, 54, 65, 75, 56, 78, 53, 70, 56, 67, 62, 45, 70, 85, 61, 57, 65, 57, 52, 62, 68, 91, 76, 74, 67, 61, 94, 64, 53, 69, 95, 68, 49, 61, 42, 89, 54, 75, 93, 77, 65, 67, 62, 80, 103, 74, 74, 106, 61, 61, 56, 44, 52, 55, 51, 66, 96, 50, 64, 59, 67, 56, 50, 64, 71, 71, 80, 58, 96, 87, 69, 78, 69, 50, 51, 70, 49, 80, 61, 49, 77, 64, 73, 54, 66, 72, 52, 69, 67, 65, 68, 64, 62, 60, 92, 73, 63, 85, 63, 66, 33, 63, 67, 57, 55, 67, 68, 82, 57, 57, 60, 58, 49, 57, 75, 66, 51, 60, 93, 78, 59, 62, 85, 59, 81, 48, 62, 58, 68, 69, 83, 60, 46, 57, 56, 71, 59, 55, 68, 75, 73, 42, 57, 82, 74, 52, 83, 66, 78, 51, 53, 89, 35, 74, 53, 79, 50, 84, 65, 82, 58, 55, 52, 65, 55, 39, 83, 87, 79, 63, 66, 51, 84, 59, 74, 50, 60, 77, 55, 85, 57, 75, 56, 65, 59, 57, 40, 75, 55, 66, 59, 56, 46, 52, 62, 58, 66, 127, 60, 79, 67, 67, 67, 56, 74, 61, 49, 61, 56, 71, 61, 54, 61, 77, 52, 68, 41, 64, 55, 59, 46, 58, 69, 56, 52, 95, 57, 57, 60, 72, 52, 58, 61, 49, 79, 66, 43, 89, 62, 74, 53, 78, 61, 70, 96, 66, 54, 56, 69, 83, 81, 72, 71, 75, 60, 60, 64, 41, 53, 61, 83, 46, 76, 55, 110, 82, 79, 60, 50, 67, 55, 70, 120, 56, 89, 65, 74, 53, 57, 61, 71, 60, 50, 92, 57, 61, 64, 84, 57, 62, 61, 60, 84, 53, 53, 57, 99, 69, 91, 58, 45, 53, 81, 67, 68, 69, 59, 73, 63, 82, 55, 43, 75, 73, 62, 65, 70, 71, 67, 84, 58, 62, 53, 68, 52, 67, 58, 35, 67, 55, 76, 52, 62, 56, 82, 57, 50, 55, 60, 63, 59, 72, 72, 51, 71, 52, 70, 62, 62, 94, 58, 50, 67, 65, 63, 62, 69, 49, 53, 102, 47, 54, 70, 55, 97, 58, 65, 57, 63, 69, 76, 95, 76, 56, 57, 60, 70, 73, 49, 60, 47, 59, 73, 59, 55, 61, 52, 101, 73, 79, 92, 62, 55, 51, 89, 62, 60, 57, 52, 78, 99, 50, 60, 80, 70, 56, 51, 78, 68, 61, 62, 68, 59, 68, 49, 99, 81, 45, 51, 56, 76, 55, 53, 71, 61, 63, 51, 52, 52, 79, 62, 51, 72, 57, 64, 69, 65, 55, 84, 51, 36, 75, 65, 57, 83, 55, 66, 89, 66, 73, 74, 67, 51, 53, 56, 70, 68, 75, 60, 70, 68, 53, 103, 56, 63, 71, 103, 40, 68, 71, 62, 60, 56, 66, 64, 50, 57, 73, 109, 66, 73, 70, 71, 67, 76, 63, 59, 45, 89, 89, 69, 47, 64, 75, 78, 80, 79, 54, 87, 55, 71, 46, 69, 77, 61, 54, 69, 74, 65, 81, 70, 67, 90, 57, 48, 62, 54, 66, 57, 56, 57, 76, 47, 31, 66, 64, 72, 57, 65, 56, 93, 71, 68, 60, 66, 67, 68, 44, 77, 70, 110, 81, 67, 63, 62, 59, 85, 77, 49, 70, 49, 36, 63, 48, 58, 61, 66, 59, 55, 61, 63, 75, 58, 65, 76, 52, 52, 58, 49, 77, 74, 60, 118, 65, 49, 71, 58, 79, 71, 67, 87, 68, 50, 52, 56, 50, 80, 63, 67, 70, 45, 58, 55, 73, 62, 56, 53, 67, 56, 82, 60, 82, 69, 48, 72, 74, 76, 76, 50, 56, 94, 79, 87, 45, 72, 46, 77, 76, 63, 78, 72, 75, 49, 60, 81, 71, 62, 97, 67, 54, 67, 55, 58, 68, 91, 77, 62, 71, 66, 47, 40, 51, 41, 69, 64, 76, 68, 68, 66, 57, 76, 73, 78, 79, 59, 86, 59, 53, 76, 76, 93, 104, 64, 78, 60, 57, 57, 47, 77, 41, 56, 64, 62, 66, 74, 79, 63, 79, 58, 62, 75, 61, 88, 84, 73, 54, 70, 71, 49, 72, 100, 53, 61, 84, 102, 62, 51, 77, 66, 40, 62, 54, 65, 58, 60, 69, 65, 64, 65, 81, 67, 55, 90, 59, 68, 66, 82, 71, 60, 61, 65, 71, 63, 58, 56, 49, 59, 64, 55, 66, 56, 79, 94, 83, 49, 60, 57, 56, 58, 60, 47, 59, 64, 59, 65, 84, 56, 71, 57, 70, 56, 70, 55, 70, 62, 59, 62, 55, 52, 52, 61, 64, 62, 54, 59, 70, 49, 84, 64, 62, 44, 52, 67, 61, 85, 49, 96, 69, 81, 63, 47, 73, 59, 76, 73, 78, 83, 67, 65, 64, 65, 51, 61, 61, 65, 51, 59, 75, 56, 63, 65, 101, 69, 85, 73, 79, 78, 67, 47, 160, 71, 43, 67, 60, 67, 44, 57, 59, 71, 47, 92, 65, 52, 61, 59, 104, 75, 62, 50, 79, 63, 68, 83, 55, 63, 57, 66, 74, 53, 67, 64, 57, 84, 63, 71, 79, 71, 71, 72, 59, 78, 47, 49, 41, 74, 78, 62, 95, 86, 49, 79, 42, 47, 96, 78, 98, 84, 73, 63, 52, 55, 48, 79, 47, 67, 58, 52, 60, 79, 64, 60, 52, 102, 61, 72, 70, 63, 60, 49, 56, 53, 74, 50, 73, 70, 71, 69, 65, 111, 73, 56, 75, 69, 68, 64, 60, 44, 79, 86, 87, 65, 59, 60, 64, 75, 56, 70, 82, 75, 45, 94, 68, 66, 48, 62, 66, 63, 76, 71, 69, 63, 52, 60, 54, 72, 50, 49, 71, 62, 57, 49, 76, 79, 53, 61, 67, 91, 72, 58, 112, 51, 54, 69, 58, 76, 63, 100, 45, 54, 48, 60, 70, 74, 78, 54, 64, 66, 64, 67, 77, 75, 68, 64, 48, 72, 61, 77, 82, 53, 49, 51, 49, 97, 75, 63, 69, 77, 65, 48, 85, 53, 56, 62, 51, 50, 59, 76, 46, 61, 60, 55, 55, 47, 68, 67, 49, 45, 42, 68, 60, 65, 72, 72, 36, 59, 56, 65, 66, 78, 44, 64, 56, 60, 62, 70, 81, 59, 64, 72, 59, 58, 75, 70, 62, 56, 66, 66, 48, 56, 68, 67, 52, 46, 81, 56, 110, 70, 58, 92, 73, 49, 60, 56, 71, 65, 64, 61, 61, 72, 61, 76, 57, 48, 72, 58, 81, 87, 51, 67, 80, 51, 59, 69, 56, 61, 63, 58, 71, 69, 80, 78, 36, 53, 66, 60, 64, 68, 63, 60, 71, 66, 71, 51, 60, 56, 75, 84, 73, 61, 58, 66, 71, 90, 70, 53, 77, 64, 54, 69, 67, 77, 67, 68, 65, 63, 65, 70, 66, 74, 70, 69, 44, 53, 65, 48, 77, 66, 143, 57, 38, 64, 89, 70, 54, 55, 67, 60, 49, 60, 67, 41, 55, 91, 59, 64, 62, 47, 49, 47, 89, 67, 67, 69, 49, 85, 57, 53, 63, 42, 54, 52, 56, 70, 88, 64, 85, 50, 68, 78, 69, 63, 53, 68, 68, 61, 83, 48, 94, 54, 72, 71, 63, 75, 56, 77, 51, 60, 93, 67, 78, 64, 65, 69, 61, 61, 76, 63, 51, 70, 58, 66, 91, 77, 42, 62, 72, 85, 57, 56, 63, 68, 60, 66, 69, 61, 51, 62, 81, 55, 55, 61, 91, 68, 69, 64, 61, 63, 64, 58, 72, 59, 51, 60, 60, 92, 68, 66, 44, 56, 56, 72, 53, 57, 78, 63, 70, 48, 52, 59, 59, 54, 82, 50, 61, 47, 80, 46, 61, 78, 55, 54, 100, 54, 65, 54, 67, 74, 79, 107, 51, 66, 76, 62, 80, 70, 46, 66, 94, 63, 73, 57, 65, 52, 75, 77, 84, 59, 51, 31, 52, 90, 66, 74, 70, 51, 37, 122, 57, 80, 64, 85, 54, 80, 64, 66, 56, 56, 91, 81, 61, 71, 99, 58, 67, 79, 69, 69, 67, 83, 67, 88, 68, 59, 52, 70, 81, 73, 55, 63, 80, 77, 60, 56, 65, 67, 68, 90, 49, 80, 61, 57, 67, 57, 60, 77, 50, 87, 69, 75, 59, 68, 64, 57, 88, 62, 80, 80, 63, 68, 54, 96, 39, 64, 69, 59, 65, 51, 118, 67, 53, 111, 72, 53, 50, 60, 60, 68, 64, 59, 67, 56, 59, 46, 75, 70, 61, 55, 56, 55, 49, 75, 52, 87, 42, 72, 83, 47, 69, 95, 69, 66, 61, 87, 57, 64, 54, 30, 83, 80, 47, 61, 102, 63, 63, 52, 59, 35, 67, 59, 59, 56, 45, 63, 46, 61, 73, 61, 85, 64, 73, 70, 62, 62, 57, 48, 73, 64, 47, 45, 78, 58, 52, 73, 40, 78, 47, 84, 68, 48, 72, 61, 60, 60, 68, 96, 49, 64, 83, 48, 63, 56, 68, 67, 67, 73, 36, 75, 56, 95, 70, 62, 61, 90, 52, 65, 44, 98, 61, 50, 64, 52, 53, 70, 56, 112, 74, 66, 80, 76, 63, 76, 109, 65, 60, 76, 88, 60, 63, 67, 44, 47, 42, 130, 51, 65, 56, 79, 79, 86, 50, 60, 59, 59, 88, 58, 98, 68, 52, 69, 85, 67, 48, 56, 59, 93, 75, 78, 63, 37, 63, 49, 77, 65, 87, 62, 65, 48, 94, 90, 68, 65, 48, 86, 58, 67, 107, 51, 92, 74, 57, 65, 61, 61, 68, 73, 60, 80, 69, 69, 67, 69, 56, 59, 74, 111, 61, 69, 63, 83, 53, 66, 57, 67, 52, 62, 72, 70, 62, 69, 50, 63, 59, 56, 72, 43, 86, 75, 75, 51, 59, 52, 67, 73, 62, 69, 61, 60, 82, 66, 67, 69, 72, 56, 57, 97, 63, 61, 73, 72, 72, 74, 55, 71, 87, 65, 56, 51, 63, 80, 57, 84, 63, 94, 49, 54, 107, 61, 54, 75, 74, 84, 55, 36, 72, 56, 74, 75, 39, 81, 52, 82, 64, 42, 73, 54, 67, 63, 59, 77, 73, 63, 148, 53, 71, 69, 71, 56, 65, 47, 63, 78, 67, 72, 70, 56, 55, 44, 57, 87, 67, 90, 77, 51, 125, 80, 61, 56, 61, 75, 77, 60, 47, 63, 55, 57, 69, 79, 62, 109, 74, 46, 56, 64, 67, 63, 60, 54, 35, 74, 106, 53, 60, 64, 48, 76, 62, 54, 59, 90, 61, 56, 88, 44, 51, 90, 68, 61, 55, 98, 94, 67, 59, 75, 66, 55, 71, 92, 57, 72, 59, 74, 45, 53, 52, 61, 55, 44, 48, 62, 63, 75, 93, 63, 79, 74, 80, 62, 41, 84, 69, 70, 56, 72, 71, 58, 63, 37, 83, 78, 73, 58, 85, 53, 70, 78, 79, 57, 70, 138, 72, 71, 98, 60, 64, 66, 60, 62, 39, 65, 43, 101, 84, 101, 64, 80, 71, 54, 48, 71, 61, 70, 46, 62, 75, 72, 72, 70, 72, 70, 65, 50, 86, 73, 75, 49, 44, 82, 60, 98, 96, 65, 68, 47, 87, 76, 50, 49, 72, 52, 78, 60, 51, 72, 63, 51, 54, 65, 61, 80, 68, 52, 59, 72, 135, 61, 72, 55, 52, 54, 51, 82, 67, 90, 58, 68, 48, 75, 63, 57, 43, 48, 74, 64, 50, 89, 56, 61, 64, 47, 63, 48, 72, 63, 62, 64, 69, 66, 62, 65, 100, 64, 65, 85, 53, 90, 77, 47, 50, 56, 72, 65, 48, 68, 101, 107, 56, 100, 61, 54, 70, 78, 65, 76, 96, 60, 42, 46, 31, 57, 71, 50, 63, 66, 71, 61, 96, 81, 47, 47, 45, 70, 71, 73, 55, 61, 52, 63, 54, 88, 58, 67, 78, 50, 97, 46, 62, 47, 64, 66, 71, 70, 86, 39, 53, 64, 63, 72, 67, 47, 73, 68, 58, 65, 45, 64, 65, 67, 74, 62, 82, 73, 59, 57, 58, 93, 81, 51, 60, 56, 72, 68, 83, 80, 64, 81, 72, 68, 61, 65, 82, 47, 60, 72, 59, 78, 57, 101, 74, 68, 57, 89, 60, 62, 80, 56, 37, 95, 72, 49, 60, 57, 61, 79, 79, 54, 44, 61, 73, 100, 67, 68, 43, 80, 102, 48, 87, 44, 68, 60, 63, 64, 60, 54, 66, 54, 75, 66, 93, 74, 52, 55, 49, 73, 62, 57, 57, 76, 79, 75, 57, 69, 57, 69, 73, 76, 53, 84, 64, 65, 66, 62, 65, 49, 54, 62, 51, 60, 69, 38, 84, 65, 49, 93, 83, 57, 69, 57, 64, 61, 51, 78, 75, 76, 67, 48, 75, 69, 76, 54, 82, 71, 81, 44, 58, 84, 67, 65, 85, 98, 70, 82, 56, 86, 58, 57, 52, 64, 60, 100, 81, 52, 69, 78, 87, 54, 94, 56, 67, 58, 56, 37, 55, 58, 56, 85, 58, 57, 102, 68, 66, 56, 73, 54, 51, 62, 57, 95, 65, 72, 69, 59, 64, 84, 74, 50, 65, 62, 65, 58, 96, 52, 77, 63, 68, 66, 47, 70, 61, 89, 56, 73, 59, 50, 74, 54, 65, 69, 62, 37, 61, 67, 49, 68, 87, 67, 81, 53, 54, 39, 74, 45, 71, 57, 60, 81, 55, 27, 67, 45, 65, 67, 55, 86, 62, 75, 51, 54, 91, 63, 68, 42, 76, 62, 67, 61, 46, 66, 67, 68, 50, 64, 71, 56, 38, 86, 70, 63, 64, 58, 63, 59, 35, 51, 75, 74, 63, 57, 72, 58, 38, 81, 58, 50, 90, 80, 64, 62, 51, 58, 51, 84, 77, 68, 64, 56, 60, 68, 104, 98, 78, 85, 72, 60, 84, 58, 78, 56, 83, 49, 60, 68, 56, 74, 48, 85, 81, 83, 62, 57, 78, 71, 69, 56, 81, 67, 74, 52, 73, 59, 77, 64, 56, 57, 60, 85, 71, 62, 66, 47, 73, 43, 69, 61, 64, 102, 65, 80, 53, 70, 57, 64, 75, 43, 77, 70, 48, 57, 99, 72, 67, 65, 71, 56, 51, 55, 48, 78, 52, 73, 72, 87, 55, 67, 62, 60, 75, 60, 69, 80, 75, 80, 55, 58, 55, 92, 53, 57, 80, 84, 55, 88, 72, 88, 48, 74, 51, 87, 62, 56, 48, 75, 71, 53, 39, 73, 54, 51, 65, 75, 65, 51, 68, 52, 79, 55, 55, 49, 71, 74, 53, 57, 62, 55, 67, 70, 56, 69, 60, 69, 59, 57, 58, 68, 50, 65, 44, 60, 108, 56, 78, 75, 86, 60, 69, 71, 45, 71, 60, 62, 60, 65, 58, 102, 64, 64, 61, 59, 61, 111, 71, 95, 69, 49, 56, 84, 65, 52, 72, 42, 69, 63, 60, 75, 47, 44, 55, 76, 93, 65, 60, 62, 62, 66, 46, 56, 65, 78, 63, 52, 93, 72, 66, 94, 57, 57, 68, 50, 38, 62, 57, 64, 66, 57, 56, 73, 66, 69, 49, 82, 64, 86, 56, 47, 69, 87, 73, 86, 86, 93, 70, 61, 86, 63, 45, 73, 49, 56, 73, 70, 55, 70, 85, 63, 113, 77, 73, 64, 64, 69, 61, 30, 75, 64, 62, 45, 59, 61, 110, 60, 48, 70, 75, 54, 70, 75, 66, 75, 65, 69, 72, 73, 70, 86, 59, 86, 83, 57, 59, 95, 87, 58, 56, 55, 73, 63, 65, 58, 65, 58, 73, 75, 54, 58, 59, 91, 42, 71, 60, 46, 60, 52, 67, 82, 54, 59, 69, 87, 58, 62, 60, 58, 55, 66, 72, 49, 69, 100, 71, 55, 56, 78, 59, 115, 49, 70, 77, 121, 53, 82, 62, 76, 65, 75, 47, 66, 91, 48, 66, 59, 57, 59, 76, 56, 74, 38, 68, 66, 62, 95, 74, 86, 53, 62, 56, 67, 51, 79, 73, 63, 49, 65, 44, 66, 61, 87, 63, 63, 53, 117, 51, 51, 82, 66, 62, 100, 68, 67, 64, 69, 55, 57, 48, 56, 96, 59, 65, 69, 55, 62, 66, 62, 56, 93, 64, 95, 65, 59, 72, 67, 77, 74, 61, 52, 65, 69, 85, 66, 59, 74, 58, 54, 58, 44, 39, 85, 37, 61, 64, 56, 62, 49, 69, 76, 59, 57, 71, 42, 65, 49, 58, 65, 58, 74, 59, 76, 67, 63, 69, 59, 64, 60, 52, 64, 53, 71, 62, 83, 83, 50, 74, 70, 56, 72, 61, 59, 107, 61, 52, 65, 64, 78, 64, 69, 54, 54, 64, 52, 53, 68, 63, 57, 65, 67, 60, 63, 66, 55, 53, 73, 66, 99, 52, 50, 82, 39, 62, 69, 84, 44, 106, 62, 68, 110, 66, 61, 67, 65, 55, 87, 55, 58, 67, 62, 71, 75, 49, 55, 51, 66, 56, 64, 58, 78, 64, 82, 68, 65, 58, 82, 69, 54, 74, 87, 74, 55, 63, 83, 57, 56, 57, 64, 71, 60, 53, 54, 50, 68, 47, 50, 63, 83, 66, 62, 61, 69, 52, 70, 62, 60, 61, 59, 83, 76, 66, 55, 66, 46, 53, 66, 52, 69, 60, 58, 48, 61, 59, 67, 60, 64, 60, 70, 62, 78, 66, 50, 61, 81, 74, 62, 89, 71, 60, 51, 69, 83, 72, 90, 96, 87, 60, 64, 61, 70, 68, 36, 83, 65, 57, 62, 50, 46, 47, 85, 83, 70, 50, 90, 81, 54, 84, 68, 94, 60, 60, 90, 63, 71, 54, 64, 58, 60, 71, 65, 52, 58, 62, 54, 61, 65, 70, 66, 66, 70, 57, 56, 75, 72, 177, 72, 54, 59, 61, 42, 62, 61, 76, 57, 61, 75, 64, 70, 75, 72, 124, 62, 55, 44, 64, 56, 56, 92, 58, 65, 88, 77, 61, 55, 70, 61, 64, 84, 58, 63, 88, 71, 48, 62, 76, 66, 56, 56, 66, 53, 71, 57, 58, 78, 75, 69, 71, 112, 72, 88, 60, 60, 68, 85, 85, 62, 74, 78, 66, 53, 68, 47, 61, 56, 60, 49, 74, 69, 60, 74, 60, 58, 62, 60, 61, 60, 65, 63, 36, 53, 67, 48, 49, 96, 80, 60, 67, 63, 76, 78, 73, 60, 122, 64, 70, 59, 68, 42, 53, 43, 71, 57, 83, 47, 35, 69, 70, 65, 80, 64, 68, 53, 70, 57, 73, 52, 51, 63, 51, 70, 80, 64, 70, 79, 56, 55, 77, 65, 75, 62, 90, 75, 54, 69, 79, 59, 80, 104, 79, 70, 48, 81, 66, 70, 68, 65, 76, 81, 76, 65, 62, 45, 60, 74, 85, 76, 69, 74, 62, 71, 63, 62, 78, 55, 60, 60, 56, 70, 49, 64, 60, 93, 77, 52, 62, 58, 65, 63, 88, 61, 59, 62, 64, 46, 54, 82, 56, 48, 70, 53, 65, 60, 64, 66, 56, 55, 81, 73, 55, 56, 59, 85, 76, 89, 70, 60, 65, 70, 41, 61, 80, 66, 61, 74, 72, 76, 43, 73, 64, 58, 68, 68, 61, 53, 56, 88, 52, 56, 78, 77, 109, 46, 74, 80, 59, 59, 54, 77, 62, 63, 51, 61, 75, 59, 62, 87, 77, 52, 59, 63, 73, 84, 65, 44, 51, 58, 56, 47, 62, 71, 47, 62, 64, 66, 128, 90, 74, 49, 66, 63, 63, 64, 59, 84, 50, 82, 65, 87, 76, 67, 56, 60, 54, 50, 60, 92, 57, 44, 75, 81, 49, 85, 60, 55, 53, 75, 54, 62, 57, 61, 43, 54, 68, 60, 69, 66, 65, 57, 39, 53, 75, 65, 122, 53, 46, 78, 54, 54, 60, 62, 57, 58, 70, 45, 45, 52, 52, 85, 102, 77, 67, 63, 59, 59, 85, 73, 59, 61, 51, 65, 57, 55, 63, 47, 58, 56, 66, 70, 75, 53, 71, 58, 55, 53, 51, 88, 56, 63, 63, 64, 83, 56, 76, 52, 95, 55, 63, 56, 59, 39, 64, 73, 87, 67, 81, 79, 97, 80, 63, 62, 74, 59, 52, 54, 70, 61, 51, 57, 46, 74, 48, 64, 75, 61, 58, 51, 75, 60, 50, 40, 62, 61, 61, 56, 57, 61, 118, 56, 68, 67, 79, 53, 59, 75, 71, 56, 60, 53, 59, 61, 52, 77, 42, 44, 58, 50, 45, 66, 54, 56, 46, 51, 77, 76, 54, 61, 77, 73, 50, 73, 67, 62, 67, 66, 42, 53, 122, 60, 74, 63, 66, 71, 66, 92, 65, 62, 63, 47, 70, 61, 46, 46, 68, 79, 47, 57, 60, 91, 68, 67, 70, 84, 68, 64, 56, 80, 55, 51, 58, 80, 56, 131, 65, 81, 57, 70, 62, 78, 61, 69, 45, 84, 67, 82, 65, 65, 65, 49, 49, 77, 49, 78, 62, 48, 59, 92, 63, 62, 54, 61, 50, 48, 61, 52, 109, 75, 49, 77, 71, 60, 62, 123, 55, 77, 55, 81, 60, 63, 46, 73, 100, 69, 81, 79, 75, 67, 71, 61, 82, 54, 67, 70, 53, 63, 72, 46, 66, 60, 66, 79, 103, 67, 44, 82, 46, 110, 48, 67, 78, 66, 50, 83, 46, 76, 53, 68, 43, 73, 88, 60, 55, 53, 66, 59, 67, 75, 55, 60, 65, 66, 64, 57, 65, 68, 54, 66, 56, 49, 73, 61, 51, 61, 46, 72, 70, 58, 85, 66, 65, 50, 60, 65, 56, 82, 64, 87, 65, 52, 72, 65, 60, 46, 84, 73, 78, 56, 71, 72, 59, 68, 42, 82, 63, 54, 50, 70, 66, 69, 44, 53, 49, 80, 76, 62, 56, 62, 70, 57, 78, 66, 66, 63, 52, 57, 68, 60, 69, 62, 63, 74, 75, 76, 65, 81, 81, 55, 63, 63, 73, 80, 51, 55, 89, 54, 85, 50, 50, 76, 76, 84, 54, 63, 77, 52, 60, 40, 87, 46, 64, 50, 53, 60, 58, 60, 103, 65, 45, 60, 58, 62, 82, 85, 86, 65, 49, 52, 72, 88, 63, 48, 59, 52, 58, 62, 70, 91, 55, 63, 56, 90, 61, 72, 72, 62, 63, 60, 60, 68, 54, 68, 57, 66, 51, 98, 82, 81, 63, 79, 47, 61, 55, 57, 73, 50, 50, 58, 56, 81, 75, 80, 58, 61, 54, 76, 95, 62, 53, 58, 60, 120, 76, 56, 53, 63, 67, 82, 63, 61, 51, 66, 55, 57, 106, 81, 48, 59, 56, 74, 74, 53, 56, 80, 66, 62, 57, 67, 64, 88, 52, 51, 57, 74, 81, 80, 57, 63, 88, 58, 61, 60, 73, 70, 59, 61, 64, 51, 68, 87, 97, 42, 69, 78, 76, 105, 65, 57, 80, 53, 54, 52, 72, 61, 75, 65, 72, 64, 65, 52, 67, 76, 53, 58, 85, 67, 50, 66, 69, 59, 62, 59, 67, 63, 61, 92, 58, 50, 93, 56, 66, 64, 57, 60, 75, 55, 52, 55, 57, 53, 53, 98, 69, 38, 37, 69, 74, 76, 76, 54, 58, 55, 114, 94, 73, 49, 54, 73, 51, 60, 61, 89, 87, 60, 57, 117, 83, 60, 61, 65, 64, 61, 45, 68, 78, 59, 72, 77, 60, 83, 48, 66, 48, 72, 58, 50, 62, 61, 81, 58, 45, 63, 60, 51, 70, 114, 113, 55, 61, 82, 67, 76, 54, 68, 53, 59, 59, 79, 47, 42, 61, 61, 64, 68, 62, 65, 67, 59, 56, 70, 85, 60, 61, 43, 67, 65, 60, 70, 49, 55, 73, 71, 72, 58, 49, 65, 68, 63, 60, 87, 78, 58, 51, 73, 65, 71, 65, 65, 67, 44, 61, 50, 63, 62, 78, 85, 71, 57, 60, 138, 72, 73, 47, 62, 54, 83, 52, 67, 81, 57, 54, 57, 69, 44, 59, 85, 93, 82, 26, 54, 57, 69, 56, 51, 55, 78, 55, 83, 83, 69, 53, 73, 79, 55, 71, 62, 108, 55, 60, 56, 57, 65, 55, 67, 94, 59, 61, 64, 48, 60, 138, 57, 58, 66, 47, 72, 74, 69, 71, 43, 66, 46, 67, 44, 62, 77, 71, 87, 63, 60, 71, 87, 57, 87, 90, 66, 95, 57, 53, 56, 61, 62, 88, 52, 64, 95, 70, 78, 66, 73, 73, 77, 65, 62, 61, 57, 78, 85, 57, 78, 142, 80, 80, 105, 72, 63, 81, 68, 62, 83, 69, 62, 72, 59, 77, 63, 55, 102, 73, 44, 51, 66, 75, 68, 87, 65, 53, 60, 89, 65, 97, 59, 83, 62, 51, 82, 79, 64, 84, 67, 80, 74, 64, 56, 50, 60, 62, 77, 102, 71, 76, 72, 71, 53, 43, 47, 56, 63, 95, 54, 124, 92, 66, 51, 43, 52, 69, 52, 77, 56, 81, 82, 70, 85, 72, 53, 68, 46, 54, 73, 56, 56, 59, 65, 52, 80, 58, 44, 66, 56, 67, 51, 99, 74, 72, 91, 74, 81, 66, 68, 54, 59, 55, 72, 44, 69, 51, 54, 54, 63, 62, 53, 111, 75, 93, 59, 76, 55, 82, 71, 56, 56, 69, 58, 80, 51, 60, 56, 82, 71, 88, 63, 69, 57, 73, 62, 65, 74, 61, 80, 58, 59, 65, 87, 50, 90, 60, 56, 60, 64, 63, 66, 66, 98, 54, 62, 54, 71, 61, 79, 46, 46, 57, 48, 55, 72, 83, 55, 63, 83, 69, 72, 105, 69, 64, 59, 57, 71, 74, 58, 81, 64, 72, 66, 64, 57, 68, 60, 62, 77, 63, 66, 52, 56, 70, 112, 64, 79, 43, 58, 52, 63, 89, 75, 81, 71, 59, 79, 59, 50, 50, 70, 61, 82, 87, 61, 67, 70, 50, 63, 63, 77, 66, 56, 83, 47, 87, 47, 59, 56, 55, 56, 68, 65, 67, 56, 63, 65, 48, 55, 62, 60, 77, 68, 53, 57, 55, 54, 78, 57, 58, 66, 57, 67, 76, 55, 66, 73, 67, 82, 90, 53, 70, 38, 63, 66, 54, 63, 65, 35, 73, 64, 68, 63, 66, 50, 58, 48, 76, 54, 46, 79, 52, 49, 69, 57, 60, 56, 54, 70, 64, 68, 104, 74, 64, 78, 56, 41, 66, 61, 71, 63, 50, 64, 80, 78, 50, 67, 60, 64, 71, 60, 66, 107, 69, 60, 80, 72, 52, 77, 67, 65, 81, 65, 46, 65, 65, 59, 114, 78, 71, 72, 64, 69, 54, 82, 47, 50, 52, 68, 55, 55, 85, 86, 63, 59, 69, 80, 71, 67, 62, 84, 82, 48, 65, 74, 58, 72, 53, 59, 82, 75, 101, 70, 59, 49, 75, 47, 57, 50, 61, 45, 65, 52, 54, 50, 75, 50, 53, 63, 68, 64, 41, 65, 61, 86, 76, 64, 60, 57, 75, 91, 75, 94, 63, 52, 63, 72, 62, 65, 65, 67, 72, 99, 110, 66, 55, 72, 73, 60, 61, 61, 92, 55, 53, 64, 68, 75, 68, 80, 50, 56, 45, 62, 55, 66, 52, 37, 62, 96, 58, 56, 65, 75, 48, 56, 65, 44, 59, 48, 58, 59, 61, 55, 55, 79, 50, 73, 62, 85, 64, 79, 58, 49, 52, 65, 59, 67, 72, 70, 67, 72, 70, 64, 54, 73, 69, 42, 66, 58, 53, 56, 82, 82, 61, 61, 66, 83, 55, 62, 59, 43, 63, 75, 67, 51, 81, 74, 73, 75, 61, 66, 43, 65, 123, 87, 65, 62, 49, 60, 53, 66, 64, 70, 74, 58, 88, 56, 59, 71, 68, 80, 52, 69, 60, 61, 64, 76, 66, 66, 61, 52, 55, 72, 96, 79, 56, 50, 68, 73, 59, 83, 65, 107, 73, 66, 57, 67, 81, 75, 63, 69, 40, 68, 63, 60, 76, 47, 67, 64, 73, 85, 89, 50, 74, 77, 65, 72, 57, 45, 68, 47, 64, 66, 61, 83, 42, 53, 94, 75, 75, 58, 45, 63, 51, 79, 91, 75, 66, 63, 55, 67, 49, 69, 67, 77, 62, 66, 82, 74, 60, 56, 57, 52, 84, 64, 46, 53, 54, 67, 61, 70, 50, 65, 76, 80, 72, 60, 63, 74, 60, 89, 73, 55, 64, 85, 46, 65, 101, 68, 64, 61, 60, 54, 52, 62, 72, 77, 48, 79, 53, 67, 109, 68, 50, 51, 49, 71, 64, 44, 72, 55, 98, 76, 65, 65, 74, 79, 66, 74, 55, 60, 51, 76, 74, 59, 45, 54, 62, 80, 57, 93, 81, 58, 69, 66, 82, 89, 55, 86, 71, 57, 60, 62, 54, 60, 86, 82, 71, 107, 73, 82, 61, 55, 52, 70, 71, 64, 55, 66, 48, 62, 83, 55, 68, 61, 59, 53, 69, 64, 66, 56, 64, 70, 71, 158, 64, 73, 78, 48, 53, 47, 61, 47, 50, 52, 69, 69, 60, 70, 57, 68, 67, 56, 73, 55, 75, 52, 85, 72, 62, 58, 82, 70, 91, 50, 64, 70, 60, 84, 72, 75, 76, 67, 65, 70, 72, 44, 90, 67, 74, 52, 83, 65, 88, 54, 68, 63, 87, 65, 68, 109, 51, 75, 68, 51, 58, 56, 79, 59, 69, 55, 48, 80, 91, 69, 69, 57, 60, 58, 67, 76, 71, 72, 74, 55, 60, 71, 64, 83, 76, 61, 64, 81, 78, 54, 55, 69, 80, 60, 62, 63, 66, 58, 49, 73, 62, 57, 53, 62, 70, 51, 51, 61, 53, 62, 53, 61, 81, 61, 61, 69, 70, 61, 66, 77, 92, 63, 56, 100, 79, 68, 58, 63, 52, 61, 83, 76, 80, 82, 35, 55, 61, 64, 58, 50, 51, 54, 76, 75, 70, 72, 119, 67, 49, 63, 72, 59, 62, 91, 67, 58, 58, 65, 68, 70, 71, 46, 51, 64, 56, 67, 56, 78, 68, 62, 61, 55, 56, 61, 105, 55, 73, 55, 68, 84, 61, 55, 53, 68, 49, 66, 60, 61, 68, 67, 61, 94, 67, 65, 67, 67, 61, 60, 102, 39, 56, 80, 71, 73, 67, 53, 84, 60, 51, 70, 73, 55, 70, 76, 58, 62, 57, 118, 80, 80, 63, 56, 63, 72, 39, 57, 53, 65, 66, 66, 60, 83, 68, 95, 66, 78, 51, 73, 70, 69, 42, 67, 58, 65, 68, 53, 65, 48, 65, 78, 74, 59, 70, 61, 67, 74, 81, 52, 65, 92, 55, 65, 82, 62, 61, 49, 65, 55, 124, 71, 53, 64, 64, 62, 57, 62, 57, 72, 50, 58, 61, 91, 65, 78, 58, 73, 80, 45, 61, 82, 65, 96, 77, 113, 53, 58, 56, 78, 57, 67, 63, 77, 55, 77, 51, 107, 55, 60, 54, 64, 96, 58, 53, 48, 81, 84, 61, 89, 94, 105, 63, 96, 54, 49, 50, 61, 52, 77, 48, 63, 40, 49, 56, 72, 54, 85, 54, 71, 52, 43, 63, 71, 71, 59, 71, 54, 134, 79, 64, 64, 66, 52, 71, 75, 79, 65, 72, 75, 57, 64, 65, 66, 69, 66, 67, 64, 104, 52, 59, 56, 57, 53, 57, 75, 71, 58, 65, 54, 62, 65, 55, 56, 85, 63, 77, 64, 64, 79, 57, 71, 53, 57, 73, 68, 58, 76, 63, 86, 52, 71, 75, 65, 61, 83, 87, 75, 55, 69, 52, 58, 91, 94, 65, 60, 56, 85, 66, 58, 59, 57, 65, 96, 56, 56, 67, 68, 62, 68, 72, 62, 82, 69, 97, 70, 55, 57, 79, 56, 65, 49, 61, 73, 75, 65, 56, 67, 77, 54, 69, 72, 66, 71, 82, 75, 65, 63, 65, 70, 72, 67, 50, 67, 64, 90, 42, 58, 57, 71, 50, 55, 65, 90, 53, 52, 58, 57, 55, 70, 51, 55, 93, 72, 58, 79, 62, 60, 54, 54, 66, 74, 60, 68, 63, 47, 57, 86, 52, 70, 67, 79, 51, 61, 80, 62, 84, 62, 57, 67, 84, 50, 67, 67, 61, 119, 68, 56, 72, 52, 63, 65, 74, 55, 60, 69, 55, 71, 74, 68, 55, 74, 54, 54, 95, 66, 46, 57, 50, 43, 65, 96, 64, 69, 81, 64, 72, 57, 52, 67, 66, 61, 58, 88, 79, 58, 54, 53, 80, 54, 67, 86, 57, 59, 81, 55, 65, 55, 91, 57, 64, 54, 59, 59, 82, 65, 66, 59, 44, 77, 54, 58, 64, 79, 51, 60, 61, 59, 36, 49, 69, 55, 71, 60, 56, 60, 49, 50, 62, 62, 72, 64, 58, 63, 72, 56, 71, 55, 61, 62, 70, 53, 80, 67, 80, 70, 62, 67, 67, 66, 59, 70, 48, 57, 56, 65, 61, 60, 75, 57, 77, 61, 72, 97, 66, 46, 88, 75, 72, 57, 58, 75, 71, 71, 69, 72, 54, 95, 48, 62, 70, 65, 79, 65, 55, 46, 56, 70, 57, 78, 70, 61, 69, 70, 85, 80, 71, 56, 47, 60, 61, 53, 55, 68, 60, 74, 65, 71, 68, 61, 63, 87, 105, 58, 58, 53, 68, 80, 60, 49, 69, 53, 57, 75, 64, 44, 67, 73, 65, 89, 70, 85, 68, 69, 62, 82, 110, 91, 58, 55, 49, 60, 61, 83, 55, 53, 52, 55, 64, 52, 56, 57, 54, 59, 68, 43, 58, 107, 60, 71, 61, 54, 66, 64, 57, 65, 91, 73, 66, 76, 52, 59, 52, 67, 59, 73, 53, 73, 70, 102, 47, 75, 65, 54, 59, 85, 42, 55, 71, 86, 56, 51, 43, 37, 59, 76, 57, 50, 76, 45, 57, 68, 49, 75, 62, 58, 59, 52, 65, 65, 55, 97, 63, 76, 73, 53, 54, 66, 57, 66, 53, 55, 72, 78, 70, 46, 58, 69, 61, 61, 49, 56, 44, 63, 45, 61, 63, 72, 69, 61, 86, 67, 61, 58, 59, 55, 74, 54, 68, 78, 50, 76, 73, 68, 51, 67, 66, 59, 62, 74, 68, 56, 64, 57, 41, 58, 74, 82, 64, 61, 64, 68, 74, 81, 77, 63, 51, 65, 53, 55, 58, 69, 90, 45, 59, 76, 44, 69, 74, 55, 57, 45, 70, 58, 58, 69, 50, 56, 56, 52, 62, 91, 81, 68, 56, 60, 63, 67, 76, 52, 60, 76, 64, 63, 59, 57, 81, 59, 36, 73, 74, 55, 72, 67, 67, 87, 58, 65, 63, 59, 70, 65, 57, 58, 56, 80, 65, 59, 75, 51, 73, 60, 69, 61, 75, 61, 65, 64, 53, 60, 60, 58, 66, 60, 77, 72, 68, 67, 69, 103, 49, 65, 74, 65, 71, 44, 49, 70, 74, 58, 78, 54, 56, 41, 54, 61, 60, 90, 55, 61, 97, 71, 55, 64, 56, 55, 73, 64, 68, 54, 76, 83, 76, 119, 62, 70, 86, 75, 84, 56, 49, 56, 70, 90, 53, 56, 53, 77, 59, 74, 67, 159, 65, 53, 65, 109, 50, 57, 54, 95, 76, 54, 55, 54, 53, 67, 66, 64, 67, 110, 62, 59, 64, 65, 58, 68, 58, 58, 52, 53, 71, 57, 95, 47, 65, 63, 104, 74, 64, 71, 71, 88, 70, 51, 61, 149, 81, 67, 58, 52, 68, 64, 60, 65, 55, 73, 48, 54, 119, 70, 50, 70, 71, 55, 69, 57, 62, 78, 59, 63, 77, 61, 56, 53, 69, 69, 75, 87, 54, 52, 79, 58, 79, 47, 54, 72, 55, 62, 52, 57, 76, 63, 97, 57, 68, 47, 58, 96, 84, 69, 61, 76, 60, 58, 55, 61, 48, 47, 62, 61, 66, 85, 49, 57, 50, 73, 55, 52, 60, 66, 48, 67, 59, 63, 73, 69, 50, 69, 64, 56, 51, 54, 102, 81, 56, 74, 61, 58, 105, 63, 55, 58, 54, 44, 65, 72, 71, 67, 63, 59, 60, 67, 67, 49, 64, 62, 69, 61, 47, 63, 81, 65, 51, 50, 58, 66, 100, 49, 52, 109, 70, 64, 61, 66, 52, 61, 92, 71, 61, 74, 69, 65, 67, 54, 60, 58, 61, 54, 55, 81, 64, 41, 59, 66, 69, 69, 74, 73, 60, 83, 37, 59, 58, 74, 65, 67, 47, 80, 59, 55, 56, 85, 66, 64, 55, 65, 64, 72, 59, 75, 91, 72, 51, 73, 74, 76, 52, 61, 61, 74, 61, 61, 68, 47, 77, 51, 51, 57, 72, 54, 71, 57, 62, 48, 70, 63, 61, 79, 68, 71, 75, 60, 62, 53, 60, 55, 61, 92, 67, 65, 67, 69, 61, 64, 106, 62, 65, 71, 50, 75, 69, 41, 81, 66, 66, 64, 80, 86, 51, 79, 63, 76, 76, 53, 69, 52, 73, 88, 117, 65, 74, 79, 57, 83, 79, 52, 49, 72, 67, 59, 81, 61, 53, 53, 66, 65, 45, 58, 45, 72, 77, 63, 50, 69, 122, 40, 49, 86, 47, 46, 66, 50, 54, 57, 66, 76, 51, 42, 59, 38, 60, 65, 84, 44, 52, 74, 64, 54, 45, 70, 106, 38, 53, 58, 50, 53, 66, 90, 58, 120, 85, 71, 53, 62, 69, 79, 85, 51, 48, 59, 54, 64, 57, 79, 108, 78, 61, 59, 76, 81, 64, 55, 66, 65, 80, 64, 65, 70, 62, 82, 68, 46, 64, 62, 59, 49, 62, 92, 63, 66, 66, 58, 95, 75, 53, 59, 85, 67, 62, 63, 60, 78, 57, 59, 55, 53, 58, 79, 70, 59, 70, 50, 47, 71, 79, 67, 81, 54, 59, 97, 74, 80, 84, 61, 99, 53, 66, 69, 69, 52, 83, 63, 55, 73, 62, 95, 71, 55, 86, 40, 45, 61, 59, 85, 64, 61, 59, 60, 49, 39, 88, 46, 66, 65, 88, 63, 130, 90, 83, 52, 70, 59, 46, 69, 78, 55, 54, 57, 66, 80, 59, 71, 54, 54, 46, 74, 78, 79, 63, 65, 67, 60, 50, 65, 53, 65, 69, 89, 61, 69, 58, 80, 65, 66, 49, 86, 74, 55, 55, 78, 58, 51, 56, 51, 65, 61, 58, 75, 57, 54, 38, 80, 64, 53, 71, 56, 67, 74, 72, 61, 69, 60, 75, 58, 79, 69, 94, 84, 77, 77, 75, 62, 68, 73, 66, 67, 77, 67, 60, 56, 72, 64, 60, 45, 63, 78, 63, 67, 43, 60, 74, 51, 73, 85, 54, 115, 58, 58, 50, 83, 68, 61, 54, 60, 81, 55, 78, 62, 53, 48, 68, 64, 68, 98, 77, 86, 66, 49, 114, 59, 66, 52, 59, 55, 54, 83, 61, 98, 73, 51, 59, 54, 61, 57, 61, 74, 50, 57, 62, 55, 67, 83, 64, 56, 69, 64, 66, 62, 62, 72, 71, 61, 74, 74, 53, 66, 55, 44, 64, 96, 63, 60, 60, 77, 69, 49, 69, 60, 47, 43, 49, 57, 57, 85, 50, 45, 72, 57, 48, 58, 71, 67, 56, 69, 62, 66, 60, 105, 53, 55, 67, 49, 82, 64, 60, 57, 58, 61, 67, 62, 52, 64, 63, 68, 59, 62, 57, 59, 72, 51, 47, 86, 55, 68, 59, 71, 58, 104, 75, 73, 69, 69, 54, 73, 84, 68, 84, 62, 45, 52, 55, 90, 78, 51, 52, 52, 45, 73, 51, 74, 61, 85, 62, 64, 56, 72, 53, 75, 86, 71, 66, 66, 116, 57, 69, 57, 50, 71, 58, 66, 66, 63, 58, 67, 80, 59, 43, 62, 64, 56, 88, 63, 57, 58, 68, 60, 76, 68, 68, 56, 61, 62, 81, 55, 76, 81, 46, 71, 55, 63, 73, 58, 62, 55, 65, 66, 65, 52, 68, 55, 82, 61, 56, 56, 54, 57, 113, 98, 48, 58, 57, 66, 83, 48, 56, 49, 62, 58, 66, 78, 56, 79, 58, 57, 58, 53, 59, 56, 56, 64, 51, 62, 60, 84, 66, 67, 76, 76, 55, 73, 58, 101, 68, 95, 57, 108, 80, 45, 77, 56, 59, 76, 62, 89, 105, 65, 58, 63, 68, 76, 71, 64, 63, 64, 57, 98, 62, 101, 54, 66, 59, 83, 60, 69, 66, 67, 63, 69, 80, 65, 86, 75, 49, 72, 74, 74, 52, 65, 46, 48, 66, 56, 62, 66, 57, 66, 62, 66, 80, 61, 76, 67, 66, 62, 53, 70, 50, 80, 67, 76, 56, 69, 61, 132, 58, 81, 76, 54, 47, 80, 66, 55, 45, 60, 49, 64, 68, 111, 42, 58, 74, 68, 62, 61, 59, 78, 63, 70, 54, 42, 69, 55, 65, 83, 68, 78, 75, 80, 78, 72, 66, 56, 65, 64, 51, 78, 76, 56, 74, 59, 62, 124, 63, 73, 68, 80, 49, 89, 80, 80, 70, 62, 77, 52, 59, 58, 83, 52, 75, 66, 49, 47, 69, 64, 67, 58, 55, 63, 71, 97, 62, 63, 68, 67, 56, 94, 64, 76, 66, 71, 81, 60, 78, 60, 73, 47, 131, 56, 83, 83, 68, 59, 66, 67, 55, 69, 70, 70, 51, 70, 65, 67, 49, 77, 48, 56, 73, 65, 78, 107, 74, 90, 56, 72, 50, 66, 58, 72, 59, 53, 55, 66, 60, 82, 78, 66, 53, 61, 51, 51, 80, 88, 81, 74, 68, 70, 59, 86, 61, 60, 58, 68, 62, 75, 68, 68, 63, 67, 72, 94, 60, 73, 60, 112, 63, 49, 61, 50, 69, 60, 65, 67, 60, 88, 50, 56, 59, 61, 57, 69, 80, 62, 62, 56, 62, 68, 40, 62, 70, 74, 99, 67, 65, 54, 74, 67, 67, 47, 60, 145, 52, 66, 80, 55, 52, 58, 63, 53, 63, 59, 58, 61, 60, 81, 64, 60, 58, 59, 67, 59, 64, 82, 48, 53, 62, 98, 63, 64, 65, 61, 49, 54, 46, 59, 58, 63, 57, 66, 55, 80, 60, 44, 72, 67, 66, 46, 68, 48, 64, 74, 57, 66, 111, 104, 63, 51, 65, 49, 62, 55, 68, 67, 59, 63, 62, 65, 60, 73, 44, 60, 52, 66, 62, 65, 57, 61, 54, 76, 40, 66, 51, 67, 80, 74, 49, 47, 39, 66, 67, 80, 68, 63, 82, 55, 70, 69, 77, 60, 57, 87, 59, 53, 56, 86, 59, 45, 89, 50, 59, 60, 72, 75, 110, 58, 61, 63, 69, 67, 85, 73, 90, 66, 69, 93, 69, 53, 59, 53, 66, 52, 54, 46, 83, 76, 44, 52, 70, 55, 61, 67, 59, 69, 78, 77, 53, 67, 61, 52, 57, 102, 69, 50, 79, 110, 49, 53, 54, 94, 57, 69, 69, 74, 70, 43, 67, 60, 58, 83, 61, 60, 62, 92, 48, 64, 66, 64, 90, 51, 71, 67, 78, 50, 60, 80, 67, 68, 54, 88, 52, 68, 61, 82, 56, 56, 66, 76, 63, 53, 64, 55, 57, 56, 48, 51, 50, 54, 65, 63, 88, 63, 46, 81, 67, 67, 52, 53, 62, 62, 84, 63, 61, 50, 57, 72, 57, 93, 52, 51, 59, 66, 60, 58, 89, 77, 68, 90, 70, 68, 68, 59, 59, 72, 65, 59, 57, 86, 72, 75, 47, 49, 71, 53, 49, 73, 76, 63, 73, 60, 57, 67, 63, 86, 70, 55, 62, 64, 55, 75, 95, 72, 52, 60, 61, 39, 60, 78, 85, 56, 53, 144, 59, 70, 66, 66, 71, 59, 69, 59, 46, 62, 61, 70, 83, 45, 78, 62, 66, 59, 63, 55, 63, 66, 61, 166, 95, 60, 82, 78, 52, 50, 113, 62, 50, 59, 59, 66, 64, 67, 72, 71, 88, 73, 63, 70, 59, 63, 78, 69, 66, 68, 85, 56, 85, 63, 64, 52, 92, 67, 54, 59, 60, 63, 67, 72, 81, 76, 56, 54, 72, 65, 40, 63, 78, 54, 57, 56, 67, 64, 57, 59, 73, 55, 62, 55, 66, 52, 50, 71, 36, 74, 50, 76, 34, 71, 82, 111, 49, 71, 108, 69, 64, 57, 73, 62, 51, 75, 69, 49, 72, 69, 65, 76, 80, 63, 69, 72, 73, 70, 60, 59, 64, 63, 60, 66, 67, 84, 78, 54, 88, 65, 61, 69, 58, 73, 58, 93, 58, 66, 55, 63, 50, 93, 52, 71, 66, 61, 66, 57, 57, 80, 90, 74, 51, 55, 55, 57, 60, 70, 41, 56, 67, 58, 75, 52, 83, 65, 50, 51, 78, 58, 68, 70, 71, 64, 68, 59, 59, 55, 51, 72, 60, 84, 63, 79, 75, 49, 63, 86, 69, 67, 64, 70, 91, 67, 56, 40, 65, 83, 47, 81, 48, 53, 54, 60, 54, 61, 66, 77, 58, 75, 61, 52, 82, 73, 55, 51, 69, 55, 63, 65, 62, 77, 53, 66, 99, 51, 50, 63, 60, 74, 47, 84, 92, 82, 35, 44, 91, 59, 53, 57, 98, 64, 93, 63, 77, 84, 63, 48, 73, 53, 76, 50, 61, 59, 63, 60, 71, 67, 69, 73, 65, 75, 70, 46, 64, 62, 56, 70, 61, 85, 69, 57, 59, 67, 60, 96, 69, 56, 64, 76, 68, 82, 57, 58, 55, 69, 63, 67, 63, 47, 67, 78, 84, 62, 60, 57, 58, 61, 76, 58, 77, 61, 78, 60, 66, 83, 54, 73, 64, 51, 53, 44, 64, 63, 61, 75, 63, 68, 85, 72, 72, 86, 53, 67, 64, 68, 86, 73, 75, 64, 58, 66, 79, 61, 56, 66, 62, 55, 56, 73, 60, 81, 74, 62, 74, 94, 63, 84, 44, 65, 46, 90, 57, 52, 59, 89, 59, 54, 61, 57, 69, 65, 45, 69, 59, 46, 64, 56, 75, 84, 74, 52, 55, 68, 56, 64, 68, 70, 83, 58, 71, 45, 109, 78, 87, 56, 137, 69, 79, 54, 94, 54, 55, 71, 67, 69, 62, 57, 88, 64, 58, 72, 62, 54, 71, 73, 55, 71, 71, 79, 58, 49, 59, 82, 57, 65, 70, 83, 56, 57, 63, 87, 59, 58, 86, 66, 52, 56, 68, 62, 53, 92, 59, 52, 72, 62, 49, 60, 63, 51, 79, 87, 73, 56, 68, 53, 64, 72, 67, 64, 72, 61, 59, 58, 60, 65, 67, 74, 71, 72, 55, 56, 83, 58, 46, 59, 67, 99, 57, 85, 54, 64, 50, 62, 57, 73, 54, 42, 58, 90, 58, 65, 75, 43, 74, 59, 72, 73, 75, 56, 55, 57, 66, 56, 60, 59, 59, 59, 61, 48, 86, 64, 58, 58, 74, 60, 64, 65, 64, 57, 65, 76, 62, 62, 70, 96, 75, 54, 65, 52, 54, 58, 50, 57, 63, 68, 42, 72, 47, 72, 43, 51, 93, 58, 55, 60, 68, 68, 47, 64, 70, 78, 62, 99, 61, 85, 57, 118, 43, 66, 66, 73, 56, 56, 58, 67, 63, 70, 58, 62, 62, 93, 58, 50, 58, 81, 59, 59, 69, 89, 67, 71, 64, 74, 53, 74, 85, 76, 49, 64, 42, 58, 78, 77, 62, 69, 66, 58, 60, 92, 62, 60, 80, 76, 69, 91, 60, 64, 63, 66, 57, 46, 65, 88, 85, 58, 71, 57, 57, 56, 67, 59, 66, 60, 64, 52, 57, 51, 79, 59, 54, 61, 60, 94, 63, 64, 44, 69, 44, 70, 70, 53, 65, 59, 102, 63, 57, 61, 58, 68, 133, 59, 77, 84, 61, 52, 72, 88, 55, 72, 71, 55, 66, 83, 69, 60, 62, 66, 47, 83, 67, 61, 75, 95, 73, 94, 84, 64, 66, 56, 57, 81, 90, 67, 58, 63, 60, 58, 73, 62, 64, 50, 60, 76, 42, 97, 54, 62, 56, 57, 54, 67, 65, 55, 61, 65, 65, 70, 68, 78, 61, 68, 60, 73, 67, 60, 54, 117, 60, 61, 67, 67, 53, 54, 76, 68, 54, 94, 74, 60, 63, 63, 59, 66, 64, 64, 52, 41, 58, 64, 69, 56, 56, 41, 89, 64, 65, 57, 67, 72, 45, 64, 61, 160, 47, 56, 83, 58, 66, 50, 63, 55, 55, 70, 62, 52, 65, 101, 52, 61, 58, 80, 62, 65, 63, 54, 53, 59, 88, 25, 66, 56, 63, 78, 60, 61, 69, 60, 56, 61, 52, 67, 57, 82, 55, 49, 56, 54, 50, 46, 63, 54, 75, 80, 67, 70, 112, 85, 65, 82, 70, 62, 66, 69, 72, 68, 65, 84, 57, 70, 64, 102, 59, 74, 56, 97, 54, 60, 74, 52, 60, 52, 65, 71, 65, 67, 84, 54, 49, 59, 64, 70, 59, 64, 72, 58, 87, 67, 64, 51, 58, 59, 61, 96, 77, 64, 72, 61, 89, 61, 78, 65, 65, 59, 51, 58, 119, 60, 45, 63, 64, 75, 60, 72, 81, 50, 70, 73, 58, 62, 56, 63, 53, 60, 53, 53, 54, 70, 64, 61, 60, 81, 54, 51, 62, 63, 51, 60, 71, 50, 77, 55, 70, 67, 58, 53, 77, 106, 77, 63, 68, 70, 57, 77, 49, 65, 53, 75, 66, 56, 60, 60, 69, 71, 62, 48, 63, 67, 94, 63, 81, 84, 58, 63, 53, 56, 58, 86, 80, 45, 78, 70, 66, 70, 38, 74, 67, 56, 64, 91, 56, 62, 62, 82, 49, 85, 46, 50, 80, 52, 54, 75, 101, 59, 82, 65, 57, 68, 56, 64, 59, 43, 80, 80, 70, 65, 55, 71, 74, 66, 92, 64, 62, 64, 60, 58, 57, 97, 64, 66, 79, 62, 62, 71, 49, 57, 78, 63, 62, 82, 51, 97, 57, 59, 73, 64, 59, 50, 86, 59, 66, 69, 65, 71, 73, 71, 65, 60, 73, 63, 70, 55, 113, 63, 63, 74, 72, 56, 86, 62, 68, 57, 59, 151, 66, 72, 66, 45, 103, 69, 61, 58, 56, 66, 55, 70, 68, 66, 96, 57, 62, 54, 51, 69, 48, 52, 60, 135, 100, 53, 97, 45, 66, 56, 107, 61, 62, 60, 74, 74, 78, 76, 65, 83, 55, 68, 71, 52, 62, 62, 44, 55, 68, 59, 59, 73, 78, 64, 59, 48, 60, 67, 54, 56, 55, 65, 55, 86, 64, 61, 65, 84, 70, 65, 59, 69, 42, 63, 75, 69, 62, 66, 56, 68, 49, 65, 58, 65, 53, 58, 70, 62, 53, 66, 70, 81, 61, 82, 67, 70, 49, 60, 98, 66, 56, 53, 57, 49, 62, 55, 90, 61, 56, 68, 58, 80, 86, 52, 80, 79, 49, 69, 55, 66, 62, 67, 63, 70, 78, 92, 49, 55, 95, 57, 84, 88, 53, 52, 54, 98, 52, 69, 63, 64, 47, 91, 60, 72, 56, 66, 62, 68, 75, 73, 86, 69, 65, 65, 64, 66, 75, 57, 69, 56, 61, 50, 72, 62, 43, 75, 53, 55, 69, 60, 55, 63, 64, 60, 50, 62, 69, 89, 60, 65, 66, 68, 43, 97, 64, 39, 56, 90, 74, 63, 49, 71, 36, 77, 67, 57, 101, 55, 60, 77, 65, 60, 63, 54, 62, 62, 49, 65, 88, 71, 76, 67, 61, 55, 72, 54, 55, 57, 53, 68, 73, 78, 56, 64, 113, 58, 70, 52, 58, 69, 60, 59, 60, 83, 55, 64, 92, 52, 46, 72, 115, 63, 90, 58, 79, 78, 61, 48, 64, 87, 53, 53, 63, 74, 75, 64, 62, 67, 87, 55, 69, 74, 54, 70, 60, 68, 45, 72, 74, 63, 54, 76, 53, 58, 57, 54, 51, 65, 73, 60, 88, 63, 69, 61, 58, 60, 48, 74, 41, 89, 59, 57, 55, 62, 58, 52, 70, 44, 75, 73, 61, 70, 80, 80, 62, 50, 62, 75, 57, 62, 75, 55, 43, 62, 54, 51, 63, 60, 80, 52, 49, 56, 61, 61, 58, 48, 89, 57, 69, 47, 62, 64, 71, 54, 62, 66, 59, 65, 62, 63, 58, 72, 49, 66, 85, 56, 69, 74, 44, 51, 61, 50, 63, 56, 68, 85, 73, 59, 66, 63, 70, 53, 56, 52, 53, 76, 76, 56, 84, 62, 79, 67, 59, 80, 54, 65, 70, 58, 74, 59, 51, 44, 73, 53, 65, 61, 131, 59, 68, 71, 63, 59, 62, 62, 64, 60, 68, 62, 93, 66, 54, 86, 61, 52, 81, 49, 71, 41, 59, 50, 53, 57, 61, 61, 78, 54, 61, 76, 70, 62, 75, 77, 54, 64, 81, 63, 47, 62, 78, 61, 65, 94, 60, 87, 63, 61, 47, 50, 57, 52, 102, 67, 52, 56, 47, 66, 74, 65, 54, 61, 90, 45, 55, 79, 52, 51, 66, 61, 70, 59, 62, 39, 71, 73, 68, 71, 67, 92, 53, 67, 60, 65, 57, 74, 56, 92, 64, 60, 66, 72, 71, 67, 61, 51, 62, 55, 79, 61, 51, 68, 44, 47, 72, 59, 58, 63, 62, 57, 60, 61, 61, 65, 67, 57, 56, 64, 67, 52, 67, 59, 81, 60, 66, 74, 75, 83, 59, 71, 68, 55, 61, 68, 64, 53, 55, 64, 73, 63, 124, 62, 67, 57, 65, 59, 58, 61, 56, 69, 57, 93, 74, 63, 62, 62, 74, 60, 65, 71, 63, 57, 72, 63, 84, 63, 60, 52, 57, 74, 91, 60, 76, 64, 73, 54, 59, 55, 63, 52, 62, 47, 81, 48, 65, 64, 66, 69, 67, 61, 77, 61, 63, 65, 56, 63, 55, 44, 54, 64, 55, 63, 89, 76, 76, 64, 51, 62, 63, 67, 68, 53, 60, 73, 93, 64, 52, 67, 83, 56, 72, 61, 63, 68, 66, 61, 79, 50, 53, 62, 82, 88, 61, 70, 82, 68, 42, 54, 60, 87, 90, 71, 57, 67, 67, 51, 70, 59, 72, 78, 66, 60, 98, 64, 78, 65, 59, 65, 59, 85, 65, 67, 77, 64, 67, 59, 67, 80, 80, 55, 79, 69, 44, 62, 56, 63, 70, 55, 52, 67, 93, 61, 60, 54, 60, 57, 85, 71, 61, 69, 128, 60, 60, 75, 56, 60, 73, 142, 66, 72, 61, 50, 63, 98, 63, 63, 64, 70, 51, 58, 60, 53, 65, 55, 64, 60, 85, 78, 61, 45, 61, 85, 67, 66, 69, 63, 70, 57, 52, 66, 55, 62, 61, 77, 49, 92, 76, 48, 56, 75, 61, 65, 89, 60, 68, 55, 58, 74, 67, 58, 80, 119, 57, 63, 65, 141, 81, 63, 81, 65, 87, 64, 58, 62, 65, 73, 73, 47, 76, 67, 66, 82, 78, 85, 66, 60, 62, 78, 68, 69, 55, 55, 66, 61, 54, 58, 52, 54, 71, 72, 54, 96, 72, 58, 82, 109, 69, 57, 55, 66, 97, 80, 63, 70, 47, 86, 78, 59, 99, 67, 50, 96, 47, 53, 61, 67, 57, 77, 72, 87, 54, 78, 64, 48, 56, 57, 58, 52, 56, 71, 57, 53, 63, 79, 62, 66, 55, 61, 39, 64, 53, 73, 88, 64, 67, 76, 58, 75, 52, 62, 50, 58, 78, 60, 50, 73, 56, 76, 67, 86, 67, 58, 90, 71, 59, 58, 52, 59, 74, 57, 78, 58, 73, 67, 61, 48, 79, 57, 57, 70, 88, 66, 58, 66, 62, 57, 77, 75, 63, 55, 70, 46, 58, 77, 67, 69, 61, 81, 59, 53, 53, 80, 63, 69, 62, 67, 62, 65, 47, 105, 70, 53, 58, 59, 70, 62, 57, 68, 80, 61, 51, 63, 73, 136, 67, 54, 94, 70, 55, 72, 67, 60, 62, 67, 56, 67, 52, 53, 51, 56, 66, 61, 66, 64, 60, 76, 70, 80, 78, 61, 57, 71, 64, 52, 53, 68, 68, 69, 59, 78, 61, 54, 66, 66, 65, 70, 59, 55, 90, 54, 57, 53, 65, 92, 44, 73, 66, 67, 91, 64, 76, 58, 98, 63, 63, 54, 75, 69, 64, 79, 66, 102, 39, 67, 68, 64, 73, 55, 63, 69, 71, 75, 64, 56, 59, 62, 69, 82, 55, 61, 78, 59, 55, 76, 55, 78, 47, 63, 62, 74, 62, 56, 75, 71, 102, 75, 58, 59, 61, 60, 69, 53, 68, 49, 84, 60, 63, 60, 79, 70, 67, 78, 59, 77, 63, 74, 54, 56, 71, 69, 49, 67, 53, 71, 59, 68, 58, 78, 54, 94, 74, 62, 74, 68, 60, 73, 104, 60, 57, 61, 64, 69, 63, 63, 46, 60, 56, 85, 64, 69, 91, 57, 55, 66, 91, 55, 72, 57, 56, 58, 62, 89, 60, 67, 60, 64, 71, 73, 65, 62, 55, 80, 64, 58, 70, 71, 75, 53, 65, 61, 51, 55, 65, 56, 61, 83, 59, 55, 53, 64, 66, 66, 53, 63, 90, 55, 85, 70, 62, 72, 82, 63, 67, 86, 64, 54, 62, 68, 66, 61, 54, 61, 58, 66, 57, 94, 58, 60, 73, 74, 63, 70, 79, 64, 66, 70, 68, 76, 68, 56, 68, 45, 69, 64, 72, 67, 93, 80, 78, 73, 60, 80, 68, 55, 69, 57, 72, 65, 53, 66, 71, 72, 55, 59, 73, 65, 103, 63, 78, 60, 61, 57, 64, 61, 76, 67, 60, 49, 60, 70, 68, 45, 66, 57, 73, 61, 44, 58, 64, 61, 53, 71, 53, 65, 59, 66, 58, 76, 65, 60, 91, 76, 68, 66, 65, 56, 68, 68, 70, 73, 60, 63, 83, 71, 59, 70, 64, 68, 42, 53, 45, 63, 65, 65, 117, 69, 54, 62, 45, 57, 70, 70, 77, 55, 54, 63, 68, 76, 65, 89, 84, 82, 64, 60, 61, 93, 55, 55, 50, 65, 70, 60, 69, 61, 90, 72, 54, 66, 89, 90, 66, 71, 71, 91, 58, 63, 81, 84, 56, 52, 73, 50, 52, 63, 70, 78, 73, 70, 112, 62, 72, 60, 70, 66, 59, 60, 56, 57, 60, 53, 62, 44, 77, 64, 69, 75, 71, 53, 56, 60, 66, 61, 78, 46, 58, 58, 65, 75, 61, 86, 60, 79, 60, 76, 76, 75, 90, 63, 48, 61, 61, 59, 56, 65, 59, 71, 65, 66, 63, 52, 68, 61, 62, 60, 72, 73, 60, 63, 66, 65, 50, 58, 63, 75, 67, 71, 64, 64, 66, 75, 65, 47, 91, 60, 57, 52, 54, 62, 78, 83, 67, 50, 70, 88, 67, 70, 82, 78, 66, 65, 63, 57, 75, 84, 66, 66, 56, 55, 52, 65, 66, 59, 58, 52, 64, 58, 61, 57, 63, 61, 56, 59, 66, 62, 58, 71, 70, 68, 81, 89, 87, 63, 80, 56, 73, 91, 59, 60, 55, 70, 67, 63, 58, 66, 60, 72, 72, 77, 69, 51, 76, 68, 55, 60, 76, 61, 67, 60, 58, 61, 54, 58, 76, 66, 86, 68, 55, 58, 60, 75, 54, 54, 69, 71, 63, 59, 81, 92, 58, 76, 94, 75, 73, 58, 51, 58, 52, 75, 94, 67, 61, 53, 58, 55, 72, 64, 74, 81, 63, 69, 53, 54, 60, 63, 49, 62, 56, 68, 63, 64, 57, 71, 69, 57, 56, 75, 61, 60, 71, 71, 68, 81, 51, 76, 51, 60, 53, 59, 73, 74, 76, 77, 102, 62, 93, 56, 55, 76, 63, 67, 53, 56, 67, 61, 59, 74, 66, 70, 62, 61, 67, 62, 57, 62, 60, 58, 72, 57, 65, 62, 42, 88, 53, 65, 65, 73, 59, 65, 77, 48, 70, 65, 42, 70, 83, 59, 60, 60, 69, 52, 72, 57, 55, 53, 63, 91, 70, 53, 64, 83, 76, 55, 67, 80, 61, 68, 58, 70, 65, 76, 63, 66, 77, 53, 79, 84, 63, 136, 55, 63, 61, 58, 64, 69, 59, 57, 65, 64, 63, 58, 67, 77, 67, 66, 66, 48, 73, 64, 54, 54, 62, 60, 77, 69, 60, 84, 106, 56, 64, 57, 57, 76, 53, 80, 83, 67, 68, 103, 73, 79, 83, 56, 76, 79, 51, 59, 76, 64, 71, 70, 67, 60, 52, 64, 71, 67, 67, 101, 70, 66, 76, 53, 65, 85, 61, 73, 61, 82, 72, 55, 61, 55, 50, 91, 60, 63, 75, 51, 81, 57, 65, 62, 68, 83, 67, 55, 59, 55, 57, 48, 117, 66, 86, 63, 56, 60, 68, 72, 70, 60, 63, 57, 78, 61, 61, 42, 74, 66, 55, 62, 81, 58, 59, 75, 70, 54, 59, 48, 61, 71, 62, 124, 60, 55, 57, 59, 58, 77, 44, 59, 75, 76, 64, 60, 61, 58, 63, 53, 61, 79, 102, 59, 61, 70, 64, 66, 62, 65, 57, 76, 73, 57, 65, 70, 60, 76, 82, 56, 69, 68, 68, 58, 48, 51, 58, 57, 81, 70, 61, 61, 80, 67, 64, 62, 68, 92, 61, 63, 64, 163, 62, 49, 62, 55, 65, 62, 66, 67, 69, 59, 57, 49, 78, 67, 65, 59, 74, 62, 57, 67, 50, 62, 65, 62, 65, 61, 60, 51, 74, 82, 74, 81, 50, 70, 48, 76, 65, 64, 71, 97, 95, 67, 64, 55, 92, 68, 91, 59, 54, 65, 110, 57, 75, 69, 59, 82, 55, 69, 69, 79, 55, 68, 69, 71, 46, 82, 73, 54, 57, 55, 42, 70, 61, 59, 67, 59, 62, 73, 56, 62, 61, 96, 61, 57, 67, 76, 88, 59, 57, 55, 58, 69, 76, 58, 73, 61, 84, 61, 56, 45, 63, 62, 67, 57, 54, 61, 69, 49, 66, 73, 73, 61, 66, 69, 81, 55, 56, 60, 65, 59, 51, 59, 53, 60, 82, 58, 63, 71, 60, 61, 110, 69, 66, 42, 69, 74, 59, 60, 53, 58, 66, 69, 70, 68, 62, 92, 76, 56, 69, 64, 53, 55, 65, 105, 63, 55, 67, 64, 63, 56, 56, 81, 53, 57, 68, 85, 55, 122, 49, 57, 67, 66, 67, 75, 69, 69, 69, 67, 50, 89, 81, 54, 65, 70, 67, 59, 71, 48, 68, 62, 79, 74, 67, 57, 64, 64, 64, 68, 62, 76, 59, 66, 65, 70, 67, 55, 60, 83, 49, 79, 51, 65, 57, 68, 54, 77, 65, 69, 66, 68, 78, 50, 59, 65, 106, 57, 63, 62, 61, 62, 113, 59, 68, 55, 71, 90, 49, 75, 59, 65, 66, 79, 78, 60, 65, 54, 68, 75, 68, 75, 65, 64, 73, 52, 63, 55, 57, 52, 54, 62, 71, 71, 57, 65, 68, 67, 65, 60, 61, 95, 73, 59, 60, 65, 68, 70, 59, 73, 64, 52, 82, 57, 79, 90, 67, 65, 62, 56, 63, 62, 63, 67, 55, 56, 77, 70, 54, 54, 64, 65, 60, 71, 85, 99, 75, 89, 67, 63, 59, 74, 82, 59, 52, 59, 59, 89, 56, 68, 60, 62, 76, 62, 77, 50, 76, 57, 50, 89, 75, 67, 84, 58, 65, 47, 75, 82, 60, 54, 53, 75, 65, 94, 51, 58, 62, 60, 60, 54, 54, 62, 59, 66, 59, 46, 60, 70, 66, 56, 66, 82, 69, 98, 90, 63, 77, 54, 73, 62, 55, 63, 99, 50, 68, 72, 84, 63, 74, 69, 57, 65, 56, 68, 51, 69, 76, 62, 68, 66, 65, 77, 61, 76, 58, 62, 62, 72, 58, 63, 63, 61, 59, 84, 62, 63, 69, 54, 71, 55, 70, 54, 70, 69, 75, 71, 74, 91, 55, 77, 64, 60, 66, 57, 66, 86, 51, 63, 65, 61, 94, 79, 89, 61, 64, 70, 66, 69, 78, 55, 75, 74, 78, 60, 57, 61, 51, 76, 64, 60, 64, 60, 64, 72, 66, 59, 74, 62, 60, 45, 71, 60, 87, 84, 58, 53, 92, 62, 57, 68, 76, 73, 53, 56, 57, 68, 55, 59, 68, 67, 61, 53, 60, 81, 68, 47, 69, 69, 79, 80, 97, 63, 53, 64, 65, 55, 63, 65, 53, 69, 59, 79, 66, 70, 58, 64, 80, 62, 68, 60, 64, 99, 69, 63, 55, 83, 87, 57, 49, 63, 121, 56, 47, 47, 102, 78, 53, 70, 59, 62, 43, 53, 72, 56, 59, 51, 67, 47, 82, 67, 56, 84, 76, 65, 99, 56, 47, 59, 58, 64, 70, 55, 65, 72, 56, 68, 92, 57, 89, 65, 66, 70, 73, 56, 61, 61, 63, 68, 66, 69, 71, 59, 62, 80, 66, 66, 69, 55, 68, 64, 110, 61, 105, 72, 62, 61, 57, 65, 73, 67, 55, 61, 79, 71, 54, 61, 89, 55, 60, 67, 50, 58, 66, 80, 76, 52, 68, 79, 64, 74, 61, 61, 58, 60, 49, 64, 58, 63, 64, 66, 54, 64, 72, 70, 77, 56, 56, 69, 81, 75, 67, 65, 74, 74, 91, 62, 53, 66, 65, 69, 85, 69, 87, 58, 60, 58, 66, 56, 67, 53, 64, 73, 62, 53, 66, 72, 68, 63, 60, 72, 58, 66, 80, 63, 89, 100, 56, 60, 77, 69, 73, 63, 60, 56, 60, 63, 64, 69, 54, 64, 66, 64, 57, 67, 64, 67, 74, 69, 62, 59, 67, 62, 58, 59, 55, 62, 67, 73, 60, 57, 60, 64, 50, 69, 63, 74, 87, 68, 68, 52, 62, 54, 53, 56, 70, 66, 111, 56, 55, 51, 55, 58, 61, 84, 75, 74, 60, 66, 64, 76, 70, 58, 44, 90, 69, 51, 67, 79, 70, 64, 67, 61, 57, 52, 73, 54, 62, 83, 73, 71, 48, 60, 74, 79, 62, 68, 65, 70, 67, 53, 57, 64, 77, 76, 58, 77, 47, 71, 83, 78, 63, 49, 54, 68, 52, 82, 64, 66, 62, 110, 66, 60, 52, 66, 59, 57, 57, 73, 54, 62, 66, 61, 65, 58, 60, 78, 53, 62, 59, 58, 63, 62, 77, 48, 56, 58, 61, 65, 62, 64, 87, 59, 65, 62, 70, 67, 66, 68, 57, 60, 62, 83, 66, 66, 61, 76, 76, 72, 60, 97, 62, 68, 63, 62, 64, 62, 62, 73, 57, 63, 67, 50, 67, 89, 61, 62, 60, 53, 65, 56, 62, 56, 56, 64, 72, 65, 53, 69, 72, 70, 65, 49, 57, 65, 56, 53, 53, 59, 62, 59, 62, 66, 86, 56, 77, 70, 64, 64, 58, 64, 62, 66, 66, 71, 99, 65, 61, 78, 78, 65, 56, 61, 63, 62, 64, 71, 65, 56, 67, 74, 114, 63, 65, 88, 73, 59, 74, 59, 51, 69, 59, 60, 62, 72, 57, 63, 71, 61, 62, 63, 62, 60, 71, 66, 90, 60, 65, 72, 73, 70, 65, 64, 65, 60, 64, 71, 65, 74, 68, 58, 53, 65, 58, 55, 54, 93, 57, 61, 59, 61, 84, 58, 65, 85, 59, 76, 56, 60, 64, 54, 81, 61, 60, 66, 56, 57, 58, 119, 68, 61, 62, 55, 60, 98, 61, 66, 65, 64, 60, 86, 61, 63, 72, 57, 57, 52, 79, 70, 65, 51, 60, 67, 61, 65, 61, 71, 59, 59, 67, 72, 74, 80, 72, 69, 70, 72, 60, 73, 59, 59, 63, 54, 81, 67, 62, 90, 83, 78, 64, 77, 68, 64, 55, 60, 59, 122, 102, 59, 85, 51, 63, 71, 60, 57, 60, 70, 67, 67, 53, 72, 63, 57, 61, 68, 58, 59, 56, 67, 63, 89, 64, 61, 66, 58, 64, 59, 72, 77, 63, 70, 58, 107, 69, 57, 56, 69, 61, 59, 59, 56, 61, 81, 102, 61, 66, 65, 61, 66, 85, 97, 58, 69, 70, 57, 63, 60, 66, 60, 79, 66, 57, 83, 56, 95, 63, 66, 61, 71, 68, 65, 59, 66, 64, 72, 66, 73, 60, 81, 61, 63, 60, 91, 69, 64, 53, 55, 54, 71, 69, 66, 66, 60, 62, 62, 56, 82, 68, 64, 72, 90, 63, 57, 87, 59, 58, 67, 61, 56, 102, 64, 69, 60, 56, 67, 64, 61, 58, 58, 59, 79, 78, 59, 64, 65, 73, 62, 83, 80, 80, 54, 66, 57, 50, 59, 49, 67, 59, 72, 61, 63, 61, 64, 86, 60, 65, 68, 59, 63, 66, 68, 64, 60, 61, 83, 61, 62, 59, 64, 67, 54, 85, 65, 53, 87, 59, 59, 65, 59, 50, 57, 83, 60, 72, 89, 57, 63, 60, 62, 61, 79, 61, 69, 65, 69, 57, 56, 70, 91, 70, 69, 62, 52, 69, 62, 64, 60, 73, 67, 67, 71, 61, 73, 64, 65, 80, 63, 71, 58, 57, 66, 64, 59, 52, 88, 56, 61, 56, 59, 60, 69, 107, 77, 59, 61, 62, 52, 60, 70, 61, 71, 68, 77, 89, 73, 64, 68, 68, 59, 75, 71, 70, 72, 63, 65, 61, 57, 62, 76, 57, 54, 81, 56, 70, 71, 59, 67, 51, 72, 60, 69, 65, 59, 61, 70, 78, 62, 69, 68, 59, 59, 64, 62, 73, 64, 54, 71, 60, 56, 58, 73, 68, 63, 57, 75, 60, 55, 58, 75, 66, 56, 80, 61, 65, 71, 59, 63, 52, 79, 59, 67, 65, 66, 86, 64, 78, 67, 74, 58, 68, 59, 49, 56, 63, 77, 64, 78, 67, 66, 54, 61, 74, 62, 56, 61, 58, 58, 69, 86, 61, 54, 70, 78, 76, 71, 65, 59, 61, 52, 60, 68, 59, 64, 72, 58, 69, 78, 55, 54, 59, 65, 58, 100, 62, 52, 82, 61, 58, 61, 66, 63, 62, 60, 98, 73, 83, 62, 60, 63, 60, 72, 113, 66, 73, 65, 66, 56, 64, 66, 92, 60, 97, 60, 55, 63, 57, 60, 62, 64, 57, 58, 60, 53, 52, 63, 58, 58, 75, 55, 58, 51, 68, 57, 60, 64, 60, 61, 54, 69, 55, 63, 60, 68, 60, 58, 64, 55, 67, 74, 55, 60, 63, 59, 56, 60, 64, 78, 95, 72, 55, 63, 56, 65, 61, 63, 77, 66, 53, 75, 61, 65, 54, 62, 54, 59, 64, 88, 62, 53, 63, 70, 59, 61, 65, 60, 61, 69, 56, 74, 63, 71, 67, 68, 57, 71, 75, 76, 55, 56, 49, 57, 60, 59, 70, 59, 58, 59, 62, 86, 74, 59, 75, 62, 77, 78, 115, 72, 73, 59, 60, 60, 65, 71, 67, 62, 61, 74, 74, 67, 62, 58, 74, 61, 77, 69, 59, 81, 59, 70, 77, 61, 57, 62, 65, 62, 97, 70, 83, 85, 69, 82, 53, 78, 60, 78, 62, 64, 66, 67, 63, 71, 65, 67, 77, 63, 83, 63, 84, 58, 77, 62, 57, 82, 60, 64, 67, 63, 68, 67, 57, 61, 63, 76, 60, 58, 70, 72, 60, 66, 61, 59, 63, 70, 73, 76, 65, 70, 53, 77, 64, 52, 68, 60, 64, 82, 105, 62, 76, 60, 66, 76, 55, 70, 46, 61, 67, 58, 80, 72, 56, 55, 74, 63, 58, 62, 65, 56, 57, 99, 65, 65, 59, 57, 57, 76, 59, 59, 60, 62, 70, 61, 67, 56, 62, 69, 63, 69, 67, 67, 69, 67, 53, 72, 59, 75, 70, 69, 69, 78, 92, 57, 63, 68, 65, 75, 60, 66, 83, 62, 65, 67, 60, 56, 54, 60, 68, 57, 55, 59, 61, 66, 77, 62, 68, 80, 66, 60, 55, 68, 58, 105, 76, 63, 98, 58, 62, 61, 63, 60, 61, 51, 57, 61, 61, 49, 66, 53, 59, 63, 64, 61, 71, 59, 74, 60, 68, 68, 64, 58, 60, 64, 61, 66, 64, 60, 77, 69, 56, 58, 69, 67, 84, 67, 71, 58, 52, 65, 90, 78, 83, 60, 70, 64, 66, 63, 57, 57, 61, 68, 71, 76, 65, 54, 55, 87, 54, 66, 66, 66, 65, 65, 51, 72, 76, 63, 68, 64, 67, 85, 62, 65, 68, 58, 56, 67, 61, 64, 59, 63, 62, 94, 60, 72, 62, 76, 58, 74, 70, 56, 65, 75, 58, 66, 75, 49, 74, 80, 64, 60, 67, 58, 56, 68, 65, 74, 58, 67, 63, 58, 68, 63, 58, 64, 58, 60, 53, 68, 64, 65, 63, 60, 64, 70, 64, 62, 61, 96, 61, 81, 60, 59, 61, 59, 60, 86, 84, 53, 66, 55, 54, 56, 90, 54, 81, 71, 66, 91, 57, 61, 64, 53, 68, 75, 59, 60, 58, 54, 73, 63, 59, 66, 60, 67, 67, 77, 58, 107, 63, 79, 68, 51, 62, 55, 64, 72, 61, 64, 57, 53, 57, 62, 62, 78, 83, 60, 71, 68, 72, 70, 86, 75, 48, 71, 73, 61, 49, 67, 87, 67, 70, 81, 61, 65, 67, 73, 63, 64, 57, 76, 64, 58, 71, 63, 62, 51, 66, 71, 64, 63, 65, 71, 57, 55, 66, 65, 69, 56, 61, 44, 63, 52, 64, 55, 46, 80, 73, 61, 57, 67, 60, 56, 66, 60, 63, 75, 92, 57, 50, 64, 79, 73, 61, 55, 52, 77, 66, 68, 59, 61, 62, 63, 83, 57, 74, 52, 67, 57, 74, 67, 52, 56, 48, 68, 54, 52, 48, 68, 65, 64, 55, 63, 54, 58, 66, 48, 73, 73, 65, 67, 55, 59, 75, 59, 68, 61, 63, 64, 71, 94, 55, 59, 73, 70, 59, 79, 67, 77, 58, 61, 53, 100, 107, 61, 56, 69, 60, 85, 81, 59, 57, 72, 80, 59, 69, 65, 57, 77, 81, 56, 58, 82, 65, 94, 66, 69, 63, 66, 85, 73, 75, 65, 71, 53, 56, 60, 67, 82, 77, 56, 63, 148, 69, 55, 65, 73, 62, 60, 73, 45, 65, 49, 65, 48, 101, 66, 70, 66, 60, 67, 63, 59, 62, 59, 64, 65, 52, 83, 52, 53, 67, 57, 70, 76, 61, 55, 59, 78, 72, 46, 69, 75, 83, 62, 61, 65, 79, 85, 133, 57, 53, 62, 52, 81, 56, 59, 60, 100, 55, 60, 51, 61, 63, 64, 53, 71, 63, 99, 64, 62, 46, 65, 55, 59, 58, 60, 82, 64, 76, 81, 65, 74, 70, 102, 78, 59, 64, 69, 86, 55, 58, 61, 65, 71, 117, 66, 53, 67, 97, 47, 64, 62, 70, 68, 51, 94, 58, 52, 74, 59, 61, 58, 61, 65, 82, 54, 78, 48, 61, 61, 72, 61, 70, 61, 60, 77, 77, 58, 58, 60, 81, 57, 64, 60, 82, 60, 57, 76, 59, 59, 52, 49, 53, 60, 60, 71, 65, 82, 67, 76, 63, 63, 67, 60, 66, 85, 60, 66, 54, 68, 55, 50, 57, 65, 91, 63, 56, 64, 59, 101, 64, 65, 55, 62, 78, 75, 60, 50, 80, 53, 63, 63, 72, 62, 64, 53, 56, 78, 59, 54, 65, 62, 69, 53, 86, 81, 56, 65, 68, 61, 72, 61, 60, 56, 55, 70, 50, 58, 59, 73, 57, 74, 84, 68, 58, 48, 62, 40, 60, 69, 56, 93, 71, 67, 64, 69, 118, 58, 61, 68, 69, 53, 130, 88, 65, 97, 56, 101, 84, 55, 59, 46, 61, 58, 90, 62, 59, 62, 53, 57, 61, 58, 66, 62, 82, 78, 52, 127, 81, 57, 76, 61, 55, 77, 59, 69, 71, 65, 52, 59, 104, 72, 60, 84, 61, 78, 47, 102, 62, 50, 66, 68, 64, 66, 79, 62, 98, 65, 63, 78, 50, 52, 58, 90, 62, 65, 65, 70, 56, 54, 65, 60, 64, 74, 76, 101, 77, 64, 55, 55, 65, 82, 73, 67, 57, 63, 47, 78, 54, 65, 66, 54, 69, 52, 67, 62, 49, 62, 57, 80, 63, 63, 74, 59, 68, 62, 58, 76, 82, 80, 56, 50, 70, 57, 66, 59, 57, 66, 70, 53, 87, 58, 62, 70, 63, 66, 63, 51, 63, 52, 56, 63, 69, 58, 84, 66, 55, 58, 49, 85, 55, 56, 62, 49, 57, 81, 63, 62, 68, 62, 73, 61, 68, 69, 84, 64, 70, 56, 64, 67, 62, 66, 58, 48, 76, 64, 53, 58, 47, 80, 64, 61, 62, 55, 50, 53, 49, 72, 63, 56, 77, 58, 61, 79, 59, 69, 54, 80, 59, 60, 65, 63, 69, 60, 62, 74, 61, 60, 58, 58, 87, 65, 77, 65, 52, 70, 58, 56, 72, 60, 85, 54, 65, 57, 62, 56, 67, 57, 61, 62, 62, 68, 63, 42, 62, 63, 50, 99, 60, 65, 66, 65, 50, 64, 55, 81, 69, 51, 54, 62, 80, 85, 60, 64, 76, 68, 58, 50, 67, 66, 72, 63, 59, 73, 77, 69, 58, 61, 58, 67, 84, 62, 54, 70, 56, 69, 51, 58, 81, 68, 53, 71, 51, 51, 64, 73, 82, 64, 48, 73, 59, 82, 60, 57, 60, 68, 59, 57, 74, 56, 97, 59, 85, 55, 60, 51, 64, 69, 71, 67, 49, 52, 62, 65, 68, 66, 81, 59, 54, 67, 71, 69, 86, 63, 71, 58, 60, 60, 75, 64, 64, 68, 69, 74, 58, 62, 75, 56, 59, 62, 68, 76, 115, 62, 58, 63, 48, 54, 42, 59, 64, 68, 61, 61, 70, 74, 59, 60, 57, 73, 71, 69, 76, 59, 80, 54, 65, 59, 61, 52, 50, 72, 65, 63, 71, 60, 61, 49, 68, 51, 61, 79, 57, 94, 81, 58, 64, 73, 52, 60, 50, 69, 57, 59, 51, 75, 67, 64, 53, 55, 55, 52, 57, 63, 79, 56, 61, 62, 64, 89, 75, 72, 75, 66, 74, 56, 58, 55, 73, 79, 78, 85, 74, 57, 61, 65, 58, 108, 61, 73, 61, 66, 75, 48, 51, 63, 65, 64, 62, 53, 61, 68, 65, 60, 65, 51, 51, 73, 112, 53, 71, 71, 63, 60, 60, 72, 59, 111, 55, 52, 54, 50, 55, 61, 60, 59, 81, 79, 51, 53, 86, 73, 60, 64, 61, 62, 93, 75, 59, 69, 53, 62, 62, 67, 65, 47, 109, 65, 73, 60, 59, 55, 99, 52, 58, 62, 106, 87, 68, 61, 59, 56, 89, 68, 60, 59, 47, 64, 70, 70, 66, 62, 76, 54, 61, 61, 65, 69, 56, 61, 71, 58, 61, 74, 64, 72, 63, 74, 57, 62, 54, 76, 60, 71, 57, 58, 52, 123, 67, 87, 64, 73, 60, 68, 58, 87, 63, 59, 75, 70, 79, 77, 61, 58, 95, 66, 66, 81, 66, 64, 54, 76, 63, 65, 74, 70, 68, 62, 61, 58, 49, 60, 79, 75, 75, 55, 57, 71, 57, 63, 62, 65, 65, 72, 55, 56, 56, 62, 55, 56, 82, 68, 68, 66, 62, 71, 87, 62, 69, 63, 60, 75, 77, 83, 74, 62, 58, 57, 67, 75, 63, 58, 64, 61, 75, 65, 57, 60, 69, 53, 62, 83, 58, 103, 62, 65, 63, 66, 73, 83, 64, 51, 65, 96, 56, 56, 54, 66, 86, 62, 70, 69, 58, 56, 67, 68, 56, 45, 55, 50, 68, 67, 106, 70, 71, 82, 67, 50, 59, 54, 49, 62, 48, 100, 61, 73, 77, 69, 55, 69, 63, 58, 73, 62, 93, 72, 72, 62, 57, 60, 62, 66, 53, 107, 68, 56, 72, 50, 54, 66, 67, 43, 58, 72, 51, 62, 59, 56, 73, 56, 68, 58, 55, 65, 82, 71, 57, 61, 50, 71, 67, 83, 52, 49, 56, 90, 77, 93, 77, 73, 52, 63, 60, 60, 62, 53, 63, 63, 68, 70, 53, 72, 70, 54, 73, 58, 69, 76, 56, 52, 65, 55, 78, 63, 61, 60, 66, 56, 63, 57, 68, 61, 61, 90, 53, 64, 71, 62, 71, 94, 67, 61, 78, 56, 59, 76, 102, 60, 58, 62, 69, 62, 54, 51, 58, 63, 62, 80, 64, 53, 76, 107, 63, 58, 67, 54, 71, 77, 59, 46, 55, 58, 120, 63, 56, 72, 77, 69, 54, 63, 79, 81, 61, 64, 74, 156, 66, 64, 54, 50, 55, 67, 65, 66, 56, 52, 62, 67, 66, 62, 63, 52, 51, 62, 63, 56, 56, 69, 59, 77, 62, 60, 72, 61, 57, 60, 82, 92, 66, 49, 55, 81, 74, 66, 67, 112, 65, 57, 63, 65, 80, 64, 127, 64, 56, 67, 59, 74, 63, 62, 60, 93, 57, 59, 65, 73, 60, 55, 62, 81, 62, 62, 56, 69, 57, 60, 76, 68, 81, 61, 58, 62, 64, 82, 71, 69, 59, 64, 65, 57, 66, 75, 70, 62, 63, 72, 58, 57, 99, 77, 64, 57, 63, 60, 59, 87, 54, 67, 61, 64, 57, 56, 71, 55, 61, 55, 60, 58, 84, 75, 95, 58, 59, 55, 57, 50, 98, 68, 65, 103, 70, 61, 55, 63, 61, 59, 86, 56, 83, 87, 69, 103, 48, 57, 57, 73, 65, 71, 62, 62, 76, 101, 72, 71, 56, 68, 69, 59, 57, 94, 72, 64, 52, 68, 64, 63, 69, 63, 94, 51, 58, 76, 72, 119, 56, 67, 60, 68, 69, 63, 54, 59, 81, 66, 60, 56, 62, 55, 65, 57, 64, 79, 70, 71, 55, 51, 64, 66, 73, 68, 67, 70, 77, 62, 59, 72, 67, 63, 64, 63, 66, 63, 63, 64, 53, 58, 56, 56, 62, 59, 61, 50, 60, 54, 59, 78, 95, 65, 68, 47, 125, 61, 53, 63, 61, 65, 94, 62, 66, 65, 57, 83, 84, 86, 65, 63, 63, 54, 86, 64, 65, 84, 58, 67, 63, 57, 63, 62, 80, 52, 55, 55, 91, 70, 63, 52, 57, 71, 61, 71, 59, 69, 91, 68, 69, 73, 57, 77, 56, 55, 61, 96, 54, 58, 65, 56, 74, 69, 54, 71, 69, 60, 46, 58, 56, 66, 61, 78, 72, 60, 64, 52, 63, 70, 79, 57, 69, 91, 50, 100, 55, 65, 57, 68, 77, 82, 78, 58, 50, 56, 64, 75, 64, 75, 65, 43, 54, 60, 77, 56, 52, 68, 59, 66, 62, 53, 62, 59, 69, 64, 63, 56, 57, 69, 60, 69, 53, 76, 59, 56, 70, 61, 61, 80, 52, 65, 61, 57, 71, 55, 57, 69, 61, 74, 57, 49, 54, 63, 68, 50, 73, 63, 77, 96, 72, 58, 69, 59, 66, 61, 87, 49, 62, 51, 75, 73, 60, 86, 81, 79, 66, 60, 61, 54, 62, 63, 64, 80, 80, 66, 62, 60, 81, 69, 45, 70, 55, 61, 74, 61, 56, 55, 64, 65, 78, 64, 70, 68, 89, 60, 47, 70, 57, 69, 64, 59, 70, 48, 60, 49, 65, 55, 56, 88, 100, 66, 63, 61, 79, 55, 62, 58, 96, 61, 81, 61, 61, 67, 74, 55, 61, 57, 60, 57, 93, 64, 56, 89, 73, 54, 59, 62, 64, 70, 60, 69, 71, 89, 62, 74, 98, 62, 59, 68, 66, 65, 54, 61, 58, 75, 53, 61, 49, 54, 58, 44, 55, 84, 65, 59, 70, 54, 80, 62, 70, 63, 66, 67, 65, 75, 51, 53, 46, 57, 50, 73, 61, 55, 54, 63, 92, 53, 57, 61, 63, 83, 74, 63, 56, 52, 57, 68, 54, 53, 85, 55, 68, 67, 56, 57, 43, 64, 69, 100, 57, 66, 63, 60, 55, 68, 64, 55, 58, 68, 72, 77, 90, 71, 93, 60, 77, 53, 75, 64, 55, 57, 67, 67, 54, 67, 61, 73, 48, 53, 67, 60, 68, 71, 58, 49, 47, 46, 56, 71, 57, 59, 57, 89, 61, 54, 67, 59, 58, 76, 71, 53, 96, 65, 56, 61, 75, 53, 69, 68, 65, 53, 55, 41, 60, 59, 63, 64, 61, 64, 58, 75, 63, 87, 75, 56, 62, 56, 61, 64, 55, 76, 60, 61, 70, 76, 66, 52, 68, 70, 63, 58, 57, 73, 54, 65, 60, 58, 73, 75, 53, 67, 73, 74, 85, 69, 47, 74, 100, 57, 70, 76, 70, 60, 50, 61, 54, 76, 51, 57, 64, 77, 58, 73, 67, 69, 66, 63, 65, 65, 50, 64, 57, 73, 56, 71, 58, 82, 77, 58, 63, 59, 57, 63, 58, 48, 63, 56, 63, 71, 42, 62, 63, 60, 59, 68, 64, 84, 56, 40, 71, 70, 65, 59, 66, 58, 45, 73, 66, 73, 56, 58, 52, 64, 61, 85, 94, 61, 75, 62, 63, 68, 88, 83, 77, 56, 88, 56, 69, 55, 61, 65, 63, 70, 71, 59, 91, 61, 53, 76, 61, 48, 68, 69, 59, 50, 65, 50, 64, 53, 54, 64, 66, 122, 62, 68, 58, 51, 71, 69, 58, 66, 85, 71, 59, 81, 70, 78, 69, 73, 66, 69, 71, 77, 77, 59, 62, 57, 66, 64, 88, 81, 55, 64, 50, 70, 63, 79, 65, 81, 56, 72, 52, 126, 56, 66, 56, 62, 63, 64, 72, 56, 77, 55, 66, 57, 62, 72, 65, 61, 61, 63, 62, 62, 62, 49, 85, 58, 61, 51, 85, 69, 49, 57, 92, 51, 79, 72, 65, 65, 48, 56, 50, 87, 52, 71, 62, 60, 63, 53, 58, 60, 66, 63, 67, 76, 61, 52, 51, 65, 80, 50, 72, 60, 54, 50, 55, 56, 63, 48, 69, 73, 53, 77, 74, 61, 57, 58, 94, 60, 56, 53, 83, 67, 56, 47, 58, 59, 58, 52, 72, 81, 81, 64, 113, 73, 61, 58, 79, 60, 62, 47, 58, 94, 88, 64, 68, 60, 58, 70, 43, 56, 60, 93, 84, 81, 86, 67, 58, 63, 71, 54, 54, 75, 57, 57, 71, 81, 68, 57, 88, 65, 62, 52, 68, 82, 61, 59, 65, 62, 50, 50, 79, 59, 89, 83, 57, 66, 67, 65, 56, 71, 57, 63, 67, 63, 94, 77, 111, 67, 57, 52, 45, 50, 60, 80, 79, 100, 63, 61, 94, 51, 68, 59, 59, 60, 72, 60, 63, 65, 50, 60, 76, 49, 64, 52, 62, 130, 74, 80, 57, 72, 65, 93, 62, 63, 53, 52, 57, 67, 61, 61, 62, 53, 62, 92, 110, 77, 62, 84, 72, 71, 62, 68, 43, 60, 74, 71, 68, 50, 59, 64, 71, 60, 56, 78, 60, 69, 64, 65, 58, 66, 70, 69, 60, 51, 73, 65, 55, 63, 79, 74, 53, 54, 71, 160, 73, 65, 67, 53, 92, 44, 64, 41, 71, 62, 60, 69, 81, 45, 70, 50, 77, 58, 57, 57, 59, 61, 66, 77, 57, 80, 68, 54, 55, 67, 61, 67, 54, 60, 61, 60, 61, 66, 74, 102, 61, 53, 65, 56, 58, 60, 111, 69, 92, 80, 86, 66, 93, 76, 55, 83, 56, 67, 68, 68, 60, 69, 69, 75, 64, 71, 47, 68, 57, 76, 55, 51, 69, 59, 60, 53, 60, 83, 65, 49, 60, 100, 52, 56, 60, 80, 85, 55, 85, 44, 55, 79, 56, 76, 71, 62, 70, 61, 48, 85, 73, 42, 73, 62, 51, 48, 67, 62, 58, 65, 71, 56, 71, 52, 84, 68, 59, 57, 64, 52, 80, 64, 63, 63, 72, 61, 59, 55, 56, 65, 66, 67, 78, 58, 69, 74, 70, 69, 49, 71, 61, 78, 48, 79, 56, 80, 68, 73, 59, 57, 67, 54, 49, 113, 68, 61, 73, 61, 61, 55, 73, 57, 70, 64, 64, 92, 56, 120, 63, 67, 62, 70, 89, 74, 71, 56, 56, 47, 60, 67, 62, 55, 65, 103, 58, 79, 53, 69, 67, 60, 77, 74, 82, 55, 63, 52, 63, 80, 79, 68, 68, 74, 73, 63, 73, 59, 57, 53, 71, 66, 71, 64, 86, 58, 69, 71, 67, 82, 61, 75, 52, 58, 64, 68, 121, 56, 56, 74, 55, 75, 89, 67, 60, 98, 69, 51, 44, 50, 58, 63, 54, 68, 121, 70, 62, 75, 54, 57, 71, 59, 65, 62, 57, 61, 59, 90, 66, 68, 51, 56, 64, 57, 59, 57, 61, 52, 62, 56, 85, 73, 58, 71, 62, 61, 45, 75, 63, 70, 62, 68, 61, 73, 45, 72, 64, 65, 84, 53, 66, 63, 55, 74, 79, 69, 61, 66, 57, 65, 55, 62, 58, 88, 54, 88, 55, 85, 67, 56, 59, 51, 68, 59, 56, 54, 63, 68, 54, 64, 64, 85, 100, 64, 58, 57, 66, 51, 55, 81, 62, 60, 88, 82, 56, 74, 82, 79, 65, 70, 64, 73, 59, 59, 64, 59, 59, 71, 55, 57, 60, 72, 58, 87, 43, 58, 84, 81, 67, 67, 49, 74, 54, 69, 59, 44, 61, 61, 60, 63, 77, 81, 97, 69, 60, 68, 89, 51, 85, 66, 41, 54, 59, 73, 72, 58, 56, 62, 76, 71, 71, 42, 52, 79, 45, 46, 54, 80, 83, 72, 56, 77, 56, 61, 56, 53, 72, 75, 67, 60, 63, 63, 86, 69, 55, 72, 61, 72, 56, 57, 73, 67, 67, 70, 65, 59, 82, 78, 55, 55, 72, 63, 84, 93, 50, 78, 58, 64, 91, 69, 77, 64, 59, 63, 76, 61, 63, 69, 61, 55, 52, 77, 57, 76, 79, 55, 84, 63, 73, 52, 59, 77, 68, 94, 61, 68, 88, 93, 72, 70, 95, 56, 55, 87, 58, 48, 61, 64, 73, 67, 75, 68, 58, 72, 53, 89, 66, 48, 62, 55, 96, 73, 54, 58, 57, 50, 79, 58, 52, 68, 69, 69, 78, 66, 59, 88, 103, 60, 75, 69, 64, 74, 54, 47, 80, 95, 65, 67, 92, 52, 77, 97, 67, 74, 74, 66, 67, 55, 56, 84, 55, 40, 77, 61, 59, 64, 65, 68, 64, 55, 74, 53, 44, 70, 121, 72, 80, 53, 51, 55, 60, 65, 66, 87, 83, 47, 50, 56, 74, 70, 61, 72, 58, 72, 64, 51, 90, 69, 73, 63, 73, 54, 56, 61, 82, 49, 63, 52, 57, 59, 79, 59, 96, 59, 55, 55, 55, 61, 55, 66, 73, 61, 62, 68, 66, 61, 56, 67, 64, 63, 93, 71, 71, 77, 70, 57, 63, 58, 63, 55, 70, 58, 66, 69, 59, 62, 54, 60, 57, 56, 61, 65, 61, 59, 62, 71, 75, 65, 75, 77, 62, 67, 60, 73, 74, 60, 42, 71, 61, 59, 54, 58, 71, 59, 56, 52, 54, 84, 47, 67, 59, 61, 59, 91, 57, 54, 57, 47, 54, 99, 64, 73, 63, 60, 92, 78, 57, 66, 101, 57, 55, 66, 61, 63, 61, 54, 62, 97, 62, 56, 80, 67, 66, 70, 67, 60, 86, 69, 68, 53, 66, 81, 69, 62, 53, 52, 64, 69, 48, 76, 57, 67, 64, 69, 57, 75, 111, 66, 64, 56, 55, 62, 68, 54, 71, 61, 102, 51, 57, 58, 53, 59, 58, 82, 58, 57, 67, 64, 68, 52, 62, 61, 60, 56, 61, 60, 67, 63, 76, 59, 56, 52, 73, 74, 65, 61, 64, 62, 66, 82, 53, 63, 71, 43, 66, 91, 66, 63, 66, 66, 65, 47, 75, 60, 66, 87, 52, 68, 64, 50, 64, 60, 47, 51, 62, 65, 59, 56, 55, 64, 60, 61, 65, 80, 68, 70, 61, 75, 66, 67, 56, 70, 66, 62, 56, 57, 84, 57, 59, 61, 61, 59, 50, 59, 75, 52, 95, 94, 82, 51, 78, 89, 53, 57, 64, 83, 75, 80, 57, 54, 86, 50, 52, 71, 52, 81, 66, 65, 66, 57, 54, 41, 84, 64, 56, 59, 62, 46, 76, 64, 57, 45, 83, 55, 70, 53, 88, 45, 71, 53, 87, 61, 64, 52, 55, 72, 69, 107, 64, 67, 64, 53, 54, 53, 55, 65, 73, 77, 53, 60, 47, 60, 57, 65, 70, 74, 77, 60, 49, 74, 58, 69, 75, 59, 60, 47, 55, 57, 57, 65, 53, 58, 66, 45, 61, 64, 83, 74, 66, 81, 66, 80, 55, 63, 118, 93, 63, 60, 68, 61, 73, 70, 70, 64, 94, 75, 54, 56, 64, 62, 90, 61, 64, 68, 56, 104, 61, 62, 58, 73, 72, 55, 40, 61, 53, 64, 77, 48, 58, 67, 71, 60, 47, 72, 115, 85, 83, 73, 57, 67, 54, 64, 63, 83, 69, 88, 52, 64, 76, 82, 67, 54, 51, 81, 50, 71, 78, 97, 54, 111, 76, 56, 79, 67, 39, 65, 71, 87, 48, 47, 72, 95, 68, 38, 72, 67, 65, 156, 64, 64, 59, 61, 68, 57, 68, 77, 58, 54, 73, 50, 53, 68, 68, 58, 70, 67, 44, 73, 46, 59, 59, 64, 83, 55, 65, 80, 59, 66, 69, 63, 42, 55, 67, 60, 58, 36, 48, 68, 79, 54, 72, 71, 69, 74, 67, 76, 75, 48, 57, 65, 59, 57, 76, 62, 76, 66, 77, 63, 61, 72, 51, 84, 58, 86, 50, 59, 53, 51, 76, 62, 74, 109, 81, 59, 82, 56, 66, 69, 65, 56, 87, 53, 47, 56, 62, 62, 67, 64, 63, 74, 55, 72, 73, 48, 71, 42, 71, 51, 76, 62, 49, 57, 65, 49, 53, 74, 62, 71, 57, 54, 59, 49, 73, 58, 63, 118, 79, 59, 88, 70, 68, 67, 68, 64, 65, 68, 72, 61, 71, 71, 77, 78, 68, 63, 84, 60, 68, 75, 65, 113, 68, 49, 47, 71, 46, 48, 56, 92, 56, 60, 50, 72, 64, 69, 69, 74, 55, 52, 62, 74, 80, 61, 79, 61, 76, 53, 70, 48, 88, 70, 79, 48, 66, 71, 82, 79, 66, 82, 62, 61, 49, 50, 56, 54, 48, 94, 75, 54, 59, 99, 74, 77, 77, 92, 52, 55, 64, 59, 52, 61, 66, 51, 62, 71, 62, 79, 44, 86, 59, 56, 70, 56, 70, 62, 72, 71, 76, 65, 73, 66, 58, 55, 70, 60, 66, 47, 59, 94, 51, 56, 78, 65, 88, 67, 80, 67, 75, 62, 62, 51, 62, 44, 53, 46, 54, 62, 71, 82, 62, 64, 68, 66, 60, 63, 82, 85, 59, 65, 81, 73, 60, 58, 48, 64, 96, 73, 74, 84, 69, 57, 53, 77, 69, 59, 52, 62, 90, 77, 74, 41, 77, 62, 58, 68, 67, 70, 74, 67, 75, 58, 72, 64, 76, 72, 47, 59, 86, 65, 69, 116, 70, 47, 58, 65, 61, 64, 62, 61, 60, 65, 85, 57, 77, 68, 66, 90, 81, 50, 61, 65, 53, 43, 53, 75, 68, 69, 58, 61, 89, 62, 75, 61, 76, 75, 55, 62, 44, 66, 55, 58, 74, 75, 52, 61, 80, 49, 62, 55, 66, 58, 59, 84, 48, 80, 62, 48, 66, 41, 61, 56, 67, 65, 66, 71, 57, 86, 61, 64, 52, 57, 68, 81, 62, 69, 53, 61, 40, 77, 84, 57, 40, 77, 53, 75, 66, 57, 55, 53, 77, 76, 57, 70, 47, 70, 54, 68, 60, 74, 56, 77, 59, 67, 64, 66, 79, 62, 113, 56, 54, 88, 73, 133, 61, 63, 47, 57, 69, 64, 56, 62, 48, 77, 83, 70, 60, 72, 50, 52, 49, 50, 98, 79, 47, 71, 66, 63, 67, 62, 43, 60, 74, 61, 77, 69, 56, 84, 62, 71, 74, 74, 58, 66, 72, 90, 83, 72, 54, 81, 76, 67, 81, 62, 69, 67, 60, 65, 55, 60, 48, 73, 50, 65, 71, 58, 85, 60, 57, 79, 94, 59, 59, 65, 96, 43, 56, 66, 61, 70, 97, 88, 50, 66, 68, 66, 49, 65, 60, 48, 79, 68, 79, 66, 52, 72, 56, 59, 56, 64, 56, 56, 57, 67, 51, 63, 78, 56, 63, 83, 62, 86, 73, 70, 59, 64, 63, 73, 70, 85, 61, 62, 52, 89, 48, 74, 95, 73, 70, 53, 65, 69, 59, 67, 44, 67, 56, 54, 60, 70, 67, 72, 64, 57, 85, 75, 55, 58, 59, 60, 63, 83, 66, 69, 61, 79, 69, 127, 44, 63, 49, 80, 54, 77, 130, 63, 62, 70, 49, 77, 61, 74, 46, 64, 67, 63, 62, 72, 72, 67, 54, 54, 48, 80, 79, 72, 85, 89, 79, 71, 61, 50, 67, 61, 51, 71, 49, 68, 69, 96, 55, 69, 72, 53, 69, 64, 66, 74, 55, 97, 50, 90, 61, 59, 51, 57, 85, 70, 58, 59, 65, 52, 50, 41, 64, 75, 68, 56, 73, 96, 76, 60, 52, 51, 59, 49, 60, 63, 55, 70, 52, 56, 65, 51, 61, 69, 74, 60, 71, 64, 57, 63, 53, 67, 59, 66, 60, 62, 88, 68, 87, 65, 69, 66, 50, 55, 75, 61, 65, 90, 65, 48, 54, 57, 53, 65, 78, 65, 63, 72, 66, 60, 44, 71, 58, 63, 72, 59, 49, 69, 72, 63, 61, 74, 58, 73, 76, 68, 77, 62, 68, 73, 63, 70, 65, 83, 63, 62, 57, 54, 77, 86, 68, 70, 54, 58, 82, 61, 52, 76, 62, 44, 52, 59, 64, 83, 59, 53, 74, 59, 47, 64, 62, 59, 65, 48, 65, 63, 62, 72, 71, 56, 68, 50, 86, 64, 50, 69, 59, 70, 88, 56, 44, 56, 56, 84, 74, 88, 55, 63, 80, 68, 67, 54, 67, 122, 77, 70, 67, 46, 79, 59, 65, 68, 58, 52, 45, 84, 65, 50, 55, 67, 84, 65, 58, 72, 59, 50, 52, 51, 66, 87, 79, 50, 60, 67, 58, 73, 67, 74, 71, 60, 65, 50, 66, 55, 57, 94, 55, 133, 77, 63, 70, 65, 55, 56, 70, 61, 69, 86, 69, 63, 60, 68, 57, 70, 59, 54, 58, 59, 71, 55, 94, 63, 58, 66, 66, 56, 64, 46, 58, 64, 60, 77, 60, 66, 88, 84, 57, 69, 59, 88, 118, 63, 58, 55, 60, 66, 86, 71, 73, 59, 67, 59, 79, 80, 57, 58, 83, 64, 66, 49, 77, 68, 58, 79, 76, 101, 58, 54, 55, 85, 68, 55, 63, 65, 57, 61, 65, 62, 70, 60, 69, 93, 66, 72, 52, 71, 67, 61, 52, 74, 64, 69, 53, 67, 74, 81, 66, 85, 66, 83, 65, 66, 70, 68, 65, 59, 75, 55, 50, 63, 64, 67, 83, 59, 53, 78, 64, 76, 80, 63, 58, 60, 70, 89, 79, 69, 63, 81, 53, 81, 46, 53, 74, 66, 79, 62, 64, 83, 67, 100, 63, 48, 72, 74, 62, 61, 48, 59, 79, 58, 57, 69, 49, 64, 63, 70, 75, 69, 91, 78, 72, 61, 54, 67, 61, 68, 45, 67, 70, 57, 49, 58, 57, 62, 86, 72, 55, 58, 60, 67, 87, 76, 97, 98, 90, 61, 78, 45, 70, 53, 53, 67, 77, 80, 55, 57, 67, 57, 57, 40, 79, 70, 54, 63, 57, 45, 66, 65, 61, 66, 58, 63, 68, 62, 65, 88, 64, 41, 54, 86, 70, 46, 64, 56, 51, 64, 55, 43, 59, 75, 61, 56, 55, 62, 47, 55, 60, 75, 56, 56, 88, 59, 69, 82, 53, 76, 65, 65, 40, 84, 54, 40, 77, 54, 54, 63, 69, 74, 75, 67, 59, 57, 53, 53, 77, 58, 82, 73, 52, 64, 79, 97, 70, 51, 78, 108, 114, 69, 50, 60, 64, 50, 67, 55, 67, 69, 57, 68, 58, 96, 72, 62, 64, 75, 53, 73, 72, 62, 69, 73, 62, 57, 61, 65, 84, 58, 79, 61, 57, 83, 78, 62, 73, 59, 76, 61, 61, 78, 81, 75, 60, 81, 82, 60, 58, 57, 79, 53, 71, 74, 62, 77, 90, 58, 80, 48, 81, 67, 68, 60, 77, 49, 66, 105, 71, 45, 67, 76, 55, 56, 72, 91, 76, 54, 73, 70, 62, 63, 89, 65, 72, 58, 77, 67, 54, 60, 75, 54, 63, 60, 67, 67, 54, 51, 84, 56, 58, 81, 41, 69, 62, 70, 70, 57, 120, 64, 63, 63, 56, 82, 50, 65, 89, 95, 97, 59, 79, 64, 42, 60, 73, 56, 81, 67, 62, 92, 69, 48, 54, 64, 73, 54, 59, 75, 87, 48, 59, 50, 79, 59, 95, 95, 62, 60, 68, 55, 64, 48, 53, 49, 63, 71, 58, 60, 68, 54, 90, 60, 63, 46, 61, 59, 43, 75, 76, 57, 62, 72, 56, 67, 71, 86, 81, 71, 54, 84, 90, 69, 59, 62, 72, 62, 63, 52, 62, 63, 64, 61, 70, 70, 78, 94, 63, 66, 56, 126, 62, 52, 55, 69, 75, 87, 62, 75, 78, 65, 64, 47, 47, 53, 65, 63, 94, 58, 78, 74, 52, 70, 68, 49, 48, 75, 78, 63, 48, 57, 47, 53, 80, 81, 59, 66, 52, 68, 69, 63, 77, 63, 81, 83, 67, 65, 59, 69, 70, 55, 58, 94, 64, 53, 82, 44, 56, 96, 58, 53, 62, 52, 68, 64, 56, 54, 61, 90, 59, 67, 68, 53, 67, 61, 115, 60, 58, 53, 67, 82, 44, 62, 65, 66, 73, 68, 54, 63, 58, 50, 81, 67, 58, 69, 63, 59, 52, 64, 52, 77, 82, 71, 52, 56, 80, 70, 50, 79, 58, 73, 47, 74, 78, 48, 47, 44, 46, 99, 66, 112, 50, 58, 40, 80, 96, 55, 71, 55, 53, 64, 82, 66, 54, 103, 77, 66, 68, 73, 94, 80, 46, 57, 87, 65, 82, 93, 65, 59, 68, 53, 58, 58, 65, 57, 59, 65, 65, 78, 80, 79, 62, 70, 72, 52, 80, 42, 69, 69, 66, 57, 64, 77, 64, 72, 66, 78, 105, 55, 62, 64, 63, 62, 64, 63, 51, 54, 62, 81, 59, 53, 73, 103, 50, 55, 76, 66, 43, 65, 60, 69, 60, 78, 104, 60, 58, 106, 83, 58, 85, 61, 68, 59, 81, 41, 49, 47, 72, 65, 58, 62, 56, 56, 63, 81, 55, 47, 74, 59, 58, 61, 53, 70, 73, 55, 88, 47, 62, 58, 55, 56, 75, 68, 48, 74, 56, 48, 50, 75, 65, 98, 94, 74, 63, 59, 51, 74, 71, 68, 65, 69, 50, 64, 74, 62, 58, 60, 65, 68, 62, 54, 62, 70, 57, 83, 63, 43, 79, 67, 79, 52, 69, 35, 47, 85, 63, 56, 82, 72, 101, 46, 53, 68, 58, 102, 82, 52, 66, 58, 61, 67, 71, 56, 68, 85, 56, 59, 74, 77, 69, 70, 57, 48, 96, 61, 74, 68, 52, 83, 50, 60, 69, 59, 72, 73, 61, 71, 73, 56, 58, 54, 41, 107, 56, 79, 76, 63, 61, 61, 76, 47, 63, 56, 112, 58, 46, 59, 55, 58, 56, 72, 41, 60, 72, 57, 80, 61, 48, 66, 52, 53, 63, 57, 82, 61, 89, 61, 84, 55, 65, 64, 50, 56, 56, 72, 88, 68, 64, 85, 68, 69, 72, 56, 69, 60, 71, 72, 71, 59, 58, 56, 61, 69, 54, 63, 123, 82, 100, 60, 86, 61, 50, 59, 57, 66, 61, 60, 56, 76, 54, 67, 48, 98, 76, 67, 56, 73, 65, 64, 51, 54, 59, 64, 54, 76, 66, 65, 70, 48, 51, 92, 51, 113, 65, 57, 49, 74, 66, 51, 63, 79, 59, 59, 60, 74, 61, 72, 95, 55, 86, 65, 60, 68, 86, 69, 55, 70, 50, 54, 63, 71, 59, 83, 61, 74, 59, 66, 64, 48, 57, 63, 76, 71, 84, 50, 72, 89, 66, 73, 92, 70, 61, 60, 66, 56, 73, 53, 69, 64, 73, 59, 71, 92, 68, 70, 119, 67, 71, 85, 61, 49, 78, 72, 62, 71, 58, 47, 70, 60, 70, 59, 61, 57, 56, 53, 59, 57, 60, 46, 62, 54, 62, 111, 73, 57, 45, 62, 56, 75, 62, 71, 57, 50, 64, 137, 58, 69, 69, 65, 58, 47, 50, 47, 49, 63, 46, 79, 56, 59, 50, 51, 59, 70, 61, 65, 69, 80, 62, 81, 68, 63, 73, 65, 74, 36, 67, 60, 79, 53, 103, 87, 37, 63, 51, 65, 60, 73, 83, 57, 55, 53, 59, 59, 74, 61, 123, 82, 85, 83, 63, 54, 64, 60, 51, 45, 57, 82, 81, 78, 63, 56, 74, 78, 49, 51, 46, 64, 59, 72, 76, 60, 51, 84, 77, 71, 70, 55, 65, 84, 49, 70, 56, 69, 70, 88, 69, 75, 73, 48, 73, 75, 84, 86, 60, 57, 65, 67, 66, 67, 67, 64, 54, 58, 77, 47, 79, 80, 65, 68, 46, 50, 83, 90, 69, 58, 68, 70, 50, 64, 89, 85, 62, 57, 65, 82, 56, 67, 56, 58, 82, 69, 67, 69, 71, 71, 58, 66, 50, 72, 55, 76, 72, 66, 65, 83, 72, 96, 48, 143, 73, 64, 68, 67, 73, 67, 50, 56, 64, 64, 73, 58, 65, 48, 56, 75, 56, 62, 103, 69, 79, 58, 60, 58, 87, 63, 123, 66, 71, 70, 81, 40, 59, 56, 86, 73, 67, 87, 58, 97, 66, 77, 66, 102, 60, 67, 45, 71, 60, 49, 56, 65, 63, 59, 68, 80, 55, 70, 71, 70, 72, 112, 54, 79, 101, 60, 62, 75, 74, 89, 77, 64, 43, 73, 52, 60, 51, 100, 58, 54, 74, 78, 34, 60, 54, 70, 86, 62, 59, 76, 55, 76, 60, 56, 47, 48, 67, 104, 53, 68, 71, 76, 61, 46, 77, 71, 53, 64, 96, 63, 39, 80, 56, 54, 49, 65, 59, 65, 56, 51, 74, 88, 54, 56, 49, 54, 52, 44, 87, 62, 53, 83, 71, 60, 78, 119, 98, 77, 69, 81, 91, 51, 54, 65, 61, 61, 64, 55, 41, 67, 80, 64, 60, 86, 73, 105, 64, 69, 68, 49, 79, 76, 70, 41, 65, 63, 55, 52, 69, 69, 80, 87, 41, 71, 62, 76, 59, 51, 54, 128, 66, 52, 90, 50, 64, 83, 55, 50, 71, 90, 74, 50, 45, 47, 66, 50, 52, 87, 59, 74, 56, 70, 71, 73, 72, 73, 57, 75, 65, 58, 90, 72, 54, 57, 54, 60, 73, 67, 60, 70, 60, 67, 53, 63, 48, 69, 52, 58, 47, 59, 51, 57, 56, 55, 85, 60, 76, 84, 59, 54, 55, 84, 57, 69, 73, 46, 58, 64, 88, 73, 65, 60, 75, 96, 115, 81, 81, 62, 72, 72, 114, 58, 48, 52, 57, 75, 64, 61, 61, 57, 69, 66, 73, 65, 67, 68, 60, 39, 79, 71, 62, 59, 59, 58, 58, 51, 67, 53, 72, 56, 64, 63, 68, 60, 56, 60, 84, 60, 61, 53, 79, 47, 69, 64, 73, 71, 70, 60, 63, 68, 58, 70, 96, 64, 80, 72, 53, 71, 56, 67, 66, 65, 61, 67, 54, 58, 46, 65, 96, 97, 74, 106, 65, 49, 48, 93, 82, 64, 75, 64, 80, 68, 49, 50, 65, 81, 82, 69, 67, 51, 58, 56, 74, 71, 134, 56, 68, 62, 70, 57, 74, 71, 80, 90, 51, 65, 45, 64, 57, 67, 77, 67, 52, 69, 53, 67, 71, 43, 79, 48, 66, 54, 47, 60, 58, 78, 52, 79, 49, 65, 72, 67, 82, 83, 61, 54, 93, 54, 82, 57, 66, 53, 48, 79, 67, 73, 59, 70, 79, 61, 82, 62, 42, 57, 65, 65, 63, 53, 62, 49, 46, 82, 58, 61, 83, 64, 74, 86, 61, 52, 48, 46, 56, 47, 60, 60, 54, 54, 50, 71, 68, 99, 70, 63, 52, 50, 64, 65, 56, 81, 64, 46, 70, 61, 62, 74, 51, 78, 58, 69, 61, 113, 62, 75, 62, 62, 53, 70, 57, 71, 62, 60, 55, 89, 59, 51, 63, 74, 89, 79, 61, 61, 52, 59, 59, 75, 73, 78, 66, 100, 55, 65, 67, 58, 55, 71, 67, 50, 59, 72, 66, 59, 56, 54, 80, 64, 54, 48, 59, 57, 44, 50, 88, 63, 59, 75, 49, 80, 60, 61, 69, 69, 45, 59, 64, 63, 78, 59, 79, 48, 57, 69, 42, 86, 55, 83, 51, 86, 45, 54, 72, 88, 68, 64, 63, 93, 62, 62, 50, 49, 56, 99, 65, 80, 62, 73, 66, 49, 69, 45, 54, 38, 65, 59, 70, 63, 55, 48, 63, 79, 33, 57, 60, 48, 67, 47, 87, 69, 95, 58, 59, 87, 63, 84, 80, 58, 84, 75, 63, 42, 54, 71, 43, 58, 70, 70, 58, 98, 71, 59, 59, 64, 61, 67, 53, 45, 44, 68, 59, 60, 56, 38, 46, 89, 99, 50, 54, 48, 50, 45, 75, 52, 64, 81, 61, 63, 79, 83, 58, 110, 65, 55, 60, 76, 62, 59, 70, 81, 67, 76, 56, 65, 49, 85, 59, 72, 89, 55, 77, 77, 73, 112, 64, 87, 61, 64, 76, 64, 72, 49, 56, 53, 67, 48, 70, 40, 71, 55, 65, 87, 82, 83, 56, 56, 72, 88, 69, 63, 104, 64, 50, 98, 58, 79, 63, 62, 49, 63, 41, 55, 62, 58, 76, 53, 53, 64, 65, 70, 74, 51, 92, 104, 54, 79, 65, 64, 51, 61, 64, 78, 66, 56, 118, 63, 63, 70, 62, 66, 60, 47, 70, 59, 78, 75, 64, 56, 61, 65, 59, 48, 83, 49, 97, 74, 49, 60, 67, 75, 62, 56, 78, 58, 60, 53, 67, 91, 57, 91, 88, 55, 55, 57, 50, 70, 54, 74, 83, 58, 80, 89, 53, 72, 77, 54, 75, 112, 73, 65, 59, 56, 89, 55, 65, 61, 56, 64, 100, 63, 57, 74, 71, 72, 72, 119, 60, 107, 70, 72, 85, 76, 66, 38, 39, 65, 61, 68, 56, 49, 82, 93, 80, 73, 63, 58, 67, 56, 70, 68, 75, 89, 53, 72, 58, 56, 53, 58, 64, 57, 52, 69, 66, 68, 82, 48, 55, 52, 51, 70, 63, 52, 78, 49, 58, 69, 68, 65, 64, 79, 75, 73, 88, 61, 53, 81, 63, 64, 74, 60, 58, 62, 70, 49, 68, 83, 79, 89, 100, 78, 54, 88, 66, 71, 64, 62, 51, 84, 73, 97, 41, 59, 72, 60, 63, 71, 66, 33, 50, 65, 61, 61, 44, 69, 64, 63, 52, 58, 62, 91, 59, 51, 54, 47, 69, 69, 55, 69, 64, 85, 56, 61, 58, 59, 66, 76, 64, 64, 49, 66, 64, 66, 58, 92, 69, 48, 64, 59, 73, 97, 68, 66, 50, 89, 60, 79, 73, 31, 57, 64, 54, 57, 72, 90, 52, 67, 63, 61, 59, 53, 80, 46, 77, 81, 64, 82, 69, 94, 88, 57, 42, 40, 65, 59, 69, 51, 60, 35, 71, 65, 68, 52, 71, 64, 68, 66, 55, 42, 49, 58, 88, 68, 87, 68, 48, 59, 74, 52, 96, 61, 120, 58, 75, 77, 53, 47, 54, 66, 59, 77, 56, 68, 59, 63, 68, 66, 72, 139, 76, 54, 61, 60, 72, 56, 52, 65, 58, 62, 55, 58, 50, 59, 67, 68, 72, 50, 58, 86, 64, 63, 67, 79, 65, 57, 70, 48, 61, 54, 71, 79, 57, 66, 63, 53, 56, 66, 72, 64, 60, 87, 53, 70, 59, 67, 65, 59, 59, 83, 58, 93, 59, 67, 85, 83, 74, 69, 65, 55, 63, 70, 56, 50, 65, 55, 62, 48, 56, 37, 63, 71, 58, 61, 70, 43, 56, 73, 50, 62, 81, 55, 83, 66, 59, 66, 68, 73, 55, 57, 56, 85, 46, 59, 56, 57, 71, 91, 67, 46, 61, 51, 64, 66, 63, 67, 55, 46, 62, 71, 68, 54, 72, 70, 59, 80, 57, 60, 57, 44, 58, 66, 61, 43, 69, 73, 86, 61, 66, 67, 45, 80, 47, 73, 47, 64, 66, 53, 63, 64, 106, 55, 73, 60, 48, 65, 77, 71, 58, 98, 44, 54, 68, 56, 65, 72, 69, 90, 57, 64, 74, 58, 61, 82, 90, 60, 63, 66, 61, 86, 56, 50, 76, 75, 62, 73, 35, 57, 83, 66, 68, 58, 71, 62, 43, 62, 77, 78, 69, 59, 63, 74, 51, 60, 74, 54, 55, 78, 62, 71, 66, 60, 77, 57, 70, 58, 45, 58, 56, 85, 51, 77, 72, 51, 59, 48, 65, 72, 69, 55, 59, 65, 60, 58, 59, 75, 65, 67, 51, 50, 61, 69, 56, 78, 63, 64, 56, 53, 63, 72, 63, 41, 74, 77, 66, 75, 75, 77, 65, 95, 51, 55, 76, 76, 52, 65, 111, 66, 95, 85, 80, 59, 84, 64, 61, 73, 65, 86, 67, 68, 61, 60, 68, 64, 62, 58, 63, 77, 58, 55, 57, 81, 66, 58, 73, 50, 67, 88, 81, 57, 50, 57, 66, 51, 69, 75, 57, 58, 67, 95, 95, 77, 49, 76, 96, 57, 59, 66, 88, 61, 71, 71, 62, 82, 85, 61, 66, 61, 72, 56, 71, 70, 64, 72, 66, 89, 60, 71, 61, 53, 46, 58, 58, 68, 55, 50, 53, 62, 71, 47, 58, 55, 68, 68, 80, 70, 70, 68, 80, 52, 61, 55, 58, 96, 77, 56, 76, 62, 78, 71, 61, 64, 62, 64, 68, 65, 49, 65, 59, 59, 91, 87, 63, 78, 81, 61, 99, 74, 91, 82, 124, 57, 50, 75, 62, 69, 75, 61, 78, 79, 65, 58, 55, 69, 72, 63, 57, 44, 54, 57, 73, 68, 45, 59, 56, 65, 97, 73, 89, 70, 85, 58, 39, 54, 56, 59, 72, 95, 61, 74, 52, 70, 61, 62, 56, 60, 69, 65, 61, 50, 69, 90, 59, 55, 53, 64, 92, 78, 51, 74, 71, 45, 58, 63, 95, 58, 45, 67, 100, 82, 83, 80, 52, 89, 53, 56, 76, 71, 54, 80, 61, 59, 59, 69, 66, 111, 87, 64, 77, 72, 53, 42, 54, 82, 53, 69, 85, 70, 110, 54, 52, 76, 55, 67, 58, 68, 42, 76, 50, 64, 79, 56, 57, 72, 59, 52, 61, 68, 72, 86, 74, 54, 69, 72, 50, 78, 78, 57, 66, 74, 64, 56, 50, 56, 51, 69, 62, 73, 76, 66, 99, 55, 54, 77, 64, 55, 63, 91, 81, 76, 59, 85, 82, 56, 73, 58, 77, 59, 84, 54, 74, 67, 95, 70, 68, 80, 66, 56, 67, 93, 105, 58, 67, 43, 67, 87, 47, 99, 78, 54, 69, 79, 58, 55, 76, 70, 70, 63, 138, 80, 87, 72, 116, 69, 65, 53, 71, 65, 76, 54, 55, 66, 56, 73, 49, 85, 67, 63, 62, 69, 58, 64, 45, 63, 61, 74, 56, 101, 63, 70, 60, 45, 66, 64, 92, 57, 64, 63, 72, 56, 43, 71, 53, 54, 52, 66, 72, 74, 53, 58, 72, 64, 58, 64, 76, 72, 60, 84, 64, 53, 72, 56, 72, 68, 87, 53, 64, 70, 60, 63, 54, 46, 62, 93, 73, 53, 61, 48, 90, 68, 63, 68, 59, 67, 74, 57, 59, 78, 97, 85, 49, 67, 65, 63, 67, 82, 66, 58, 84, 51, 84, 84, 61, 60, 76, 63, 60, 51, 65, 53, 77, 60, 56, 45, 87, 61, 65, 59, 72, 75, 54, 62, 65, 69, 56, 55, 61, 59, 64, 68, 52, 70, 70, 57, 51, 65, 58, 55, 52, 59, 63, 45, 61, 72, 64, 66, 76, 52, 56, 61, 54, 88, 70, 51, 61, 71, 60, 72, 60, 62, 70, 50, 109, 127, 68, 57, 81, 49, 68, 63, 65, 69, 68, 65, 63, 68, 72, 60, 60, 63, 47, 68, 63, 70, 62, 73, 74, 79, 57, 49, 88, 64, 57, 102, 44, 73, 74, 61, 82, 60, 109, 68, 73, 61, 91, 56, 64, 59, 63, 74, 69, 49, 74, 68, 62, 69, 63, 77, 51, 46, 67, 57, 55, 60, 57, 48, 63, 84, 61, 66, 70, 53, 76, 60, 95, 56, 65, 84, 63, 66, 68, 59, 67, 62, 50, 104, 66, 54, 68, 69, 64, 97, 57, 60, 66, 68, 74, 68, 69, 54, 91, 70, 68, 77, 77, 52, 54, 54, 66, 67, 64, 62, 102, 67, 75, 59, 112, 73, 84, 46, 59, 70, 65, 53, 70, 59, 55, 54, 102, 100, 54, 66, 49, 62, 84, 68, 67, 68, 69, 82, 60, 58, 63, 90, 55, 74, 53, 62, 49, 97, 49, 52, 62, 50, 71, 54, 69, 65, 90, 83, 58, 66, 89, 72, 45, 66, 69, 62, 69, 66, 68, 78, 64, 80, 49, 87, 58, 65, 60, 60, 54, 81, 65, 49, 43, 55, 95, 59, 70, 60, 61, 77, 73, 67, 60, 60, 61, 54, 58, 61, 78, 58, 63, 70, 70, 89, 54, 60, 50, 110, 66, 65, 66, 65, 62, 88, 54, 77, 56, 90, 64, 65, 57, 46, 59, 63, 51, 74, 46, 59, 61, 59, 55, 71, 49, 51, 63, 73, 86, 72, 51, 81, 57, 76, 69, 67, 74, 60, 61, 66, 60, 61, 40, 65, 56, 72, 58, 73, 87, 69, 49, 49, 60, 67, 60, 64, 81, 68, 92, 78, 70, 61, 61, 60, 97, 79, 144, 73, 56, 72, 87, 56, 49, 57, 65, 61, 55, 69, 55, 84, 84, 69, 59, 130, 64, 65, 76, 47, 58, 55, 67, 76, 62, 84, 55, 62, 76, 61, 91, 68, 79, 62, 78, 79, 53, 68, 85, 56, 60, 75, 58, 67, 63, 57, 60, 65, 53, 57, 50, 71, 66, 51, 53, 59, 52, 85, 53, 49, 58, 75, 72, 62, 60, 73, 70, 52, 57, 68, 90, 84, 96, 74, 56, 57, 71, 67, 49, 68, 61, 55, 86, 62, 58, 67, 71, 66, 83, 73, 61, 65, 54, 56, 72, 61, 61, 79, 70, 82, 61, 48, 61, 65, 47, 56, 66, 63, 69, 67, 76, 69, 51, 73, 70, 57, 65, 82, 63, 63, 57, 58, 64, 70, 63, 59, 57, 81, 60, 49, 56, 51, 81, 63, 72, 48, 63, 60, 63, 64, 79, 83, 78, 64, 69, 66, 63, 81, 60, 63, 59, 60, 58, 66, 79, 70, 69, 33, 71, 50, 68, 76, 48, 53, 63, 76, 79, 66, 51, 73, 57, 72, 74, 71, 48, 69, 67, 58, 71, 58, 79, 76, 77, 69, 78, 64, 61, 54, 51, 50, 71, 60, 43, 61, 96, 60, 74, 59, 73, 60, 81, 54, 73, 52, 47, 53, 63, 52, 58, 63, 54, 73, 58, 70, 60, 61, 61, 59, 56, 57, 53, 42, 78, 56, 38, 81, 69, 55, 56, 54, 58, 51, 56, 50, 67, 81, 92, 74, 47, 63, 65, 61, 66, 71, 65, 51, 65, 70, 60, 60, 89, 60, 59, 67, 49, 78, 65, 69, 64, 53, 83, 58, 71, 55, 75, 63, 63, 48, 58, 73, 85, 73, 120, 53, 94, 63, 62, 76, 84, 61, 58, 51, 76, 73, 55, 58, 72, 73, 67, 52, 68, 57, 73, 53, 65, 69, 78, 58, 69, 61, 46, 68, 51, 76, 88, 46, 54, 68, 58, 61, 44, 51, 50, 74, 59, 86, 92, 61, 69, 54, 88, 55, 70, 72, 95, 58, 55, 48, 83, 79, 84, 63, 66, 85, 81, 78, 60, 77, 67, 78, 52, 71, 57, 78, 63, 52, 66, 57, 74, 63, 75, 75, 58, 91, 59, 54, 62, 72, 66, 68, 66, 59, 56, 72, 89, 64, 81, 59, 43, 70, 65, 68, 78, 64, 55, 73, 57, 72, 77, 80, 73, 45, 62, 52, 71, 58, 109, 72, 61, 70, 73, 56, 102, 55, 60, 90, 118, 48, 64, 70, 85, 58, 76, 52, 53, 79, 77, 53, 64, 64, 61, 52, 64, 61, 70, 59, 61, 59, 76, 64, 58, 73, 59, 52, 95, 60, 66, 59, 66, 60, 60, 52, 56, 65, 54, 87, 67, 62, 52, 75, 69, 66, 45, 59, 60, 56, 73, 74, 69, 69, 70, 56, 65, 60, 66, 57, 59, 66, 58, 59, 86, 63, 38, 72, 93, 70, 72, 84, 66, 91, 64, 48, 96, 52, 50, 84, 57, 72, 46, 78, 68, 96, 82, 71, 66, 81, 110, 62, 64, 68, 61, 61, 85, 51, 100, 77, 62, 63, 60, 62, 61, 61, 57, 56, 69, 52, 57, 44, 55, 65, 68, 71, 57, 75, 65, 82, 89, 60, 50, 75, 78, 73, 64, 56, 52, 69, 84, 57, 50, 60, 112, 54, 65, 103, 66, 70, 97, 51, 69, 74, 67, 74, 57, 70, 60, 97, 62, 75, 67, 59, 52, 56, 88, 94, 72, 69, 66, 62, 83, 68, 64, 71, 66, 58, 66, 118, 82, 61, 57, 48, 43, 105, 51, 71, 73, 63, 62, 55, 65, 60, 64, 39, 63, 57, 127, 55, 78, 74, 108, 53, 73, 63, 55, 56, 63, 65, 63, 59, 73, 49, 66, 99, 68, 62, 67, 86, 65, 57, 73, 52, 54, 82, 59, 94, 55, 70, 62, 53, 78, 71, 76, 57, 62, 61, 74, 54, 59, 76, 65, 63, 60, 59, 49, 60, 67, 59, 74, 78, 51, 60, 69, 67, 65, 102, 59, 71, 68, 61, 67, 64, 87, 52, 56, 53, 67, 55, 49, 70, 57, 65, 68, 66, 60, 46, 78, 60, 68, 63, 60, 42, 63, 91, 76, 72, 89, 61, 42, 56, 44, 64, 62, 51, 66, 60, 81, 70, 77, 58, 63, 63, 52, 69, 69, 59, 86, 54, 58, 58, 62, 61, 69, 60, 56, 64, 83, 72, 80, 61, 74, 96, 55, 72, 61, 78, 49, 80, 94, 62, 57, 83, 67, 66, 63, 67, 71, 67, 54, 57, 47, 58, 53, 62, 65, 58, 65, 49, 59, 73, 58, 49, 74, 86, 77, 68, 63, 58, 58, 57, 107, 89, 51, 49, 57, 58, 72, 68, 66, 59, 59, 62, 48, 66, 72, 58, 53, 62, 63, 60, 78, 60, 75, 72, 62, 97, 57, 75, 65, 57, 53, 96, 65, 57, 65, 84, 45, 54, 99, 62, 40, 60, 57, 58, 72, 60, 54, 73, 61, 50, 49, 89, 61, 48, 51, 59, 90, 66, 50, 63, 60, 79, 65, 50, 72, 59, 43, 45, 72, 45, 61, 51, 65, 66, 57, 67, 62, 78, 63, 54, 67, 83, 96, 93, 49, 68, 69, 52, 76, 49, 70, 67, 61, 39, 76, 55, 73, 65, 85, 82, 55, 55, 74, 61, 69, 52, 74, 55, 61, 41, 99, 59, 56, 67, 85, 57, 90, 53, 62, 65, 93, 89, 44, 70, 47, 66, 97, 93, 69, 58, 63, 49, 60, 55, 70, 54, 44, 67, 50, 75, 49, 89, 62, 71, 57, 46, 78, 92, 54, 65, 90, 66, 66, 80, 67, 47, 69, 74, 74, 56, 85, 66, 45, 75, 53, 63, 62, 56, 72, 68, 88, 67, 64, 59, 72, 65, 75, 48, 78, 65, 53, 49, 52, 55, 85, 51, 78, 59, 45, 67, 49, 102, 55, 53, 51, 67, 83, 55, 70, 59, 66, 67, 63, 64, 54, 61, 61, 72, 59, 61, 102, 56, 54, 93, 59, 97, 47, 68, 60, 73, 68, 58, 61, 63, 55, 69, 71, 74, 54, 68, 67, 60, 54, 56, 61, 77, 78, 56, 69, 58, 90, 53, 62, 70, 66, 57, 63, 62, 61, 79, 61, 77, 65, 69, 66, 47, 89, 57, 45, 62, 72, 65, 76, 55, 61, 48, 69, 56, 57, 63, 74, 75, 66, 93, 143, 61, 74, 79, 55, 87, 61, 65, 48, 58, 61, 59, 57, 55, 69, 82, 52, 124, 68, 71, 62, 63, 75, 65, 78, 72, 71, 73, 61, 70, 88, 52, 136, 60, 60, 46, 74, 103, 65, 69, 84, 87, 72, 51, 60, 57, 51, 75, 63, 69, 50, 61, 59, 87, 80, 57, 49, 65, 79, 54, 45, 68, 43, 59, 55, 59, 69, 62, 83, 62, 52, 56, 80, 79, 63, 70, 70, 60, 94, 68, 77, 58, 58, 60, 66, 43, 53, 61, 80, 112, 46, 58, 52, 50, 73, 94, 71, 61, 62, 61, 97, 55, 75, 56, 68, 72, 56, 59, 71, 65, 70, 75, 99, 66, 57, 56, 57, 58, 65, 66, 67, 53, 67, 40, 69, 53, 77, 69, 59, 65, 72, 59, 71, 57, 60, 83, 63, 47, 73, 64, 65, 61, 67, 52, 64, 57, 52, 65, 42, 65, 63, 70, 65, 70, 70, 64, 48, 101, 74, 71, 88, 45, 77, 64, 62, 64, 69, 82, 53, 82, 61, 46, 59, 62, 55, 75, 56, 67, 65, 46, 76, 60, 63, 66, 68, 60, 58, 55, 56, 66, 86, 55, 78, 52, 54, 56, 69, 59, 65, 66, 58, 64, 64, 58, 57, 85, 53, 57, 64, 47, 71, 50, 69, 60, 82, 66, 86, 82, 57, 74, 46, 51, 71, 55, 62, 41, 61, 113, 56, 52, 72, 56, 62, 58, 58, 55, 56, 53, 70, 78, 75, 63, 71, 66, 96, 48, 85, 56, 80, 65, 59, 87, 57, 70, 71, 45, 52, 85, 70, 91, 85, 58, 69, 75, 53, 57, 49, 60, 52, 57, 75, 63, 74, 64, 58, 57, 68, 76, 63, 63, 49, 74, 54, 65, 74, 97, 70, 90, 51, 44, 86, 94, 66, 90, 77, 59, 57, 90, 91, 57, 67, 48, 75, 74, 63, 77, 50, 56, 67, 60, 37, 83, 63, 75, 58, 66, 64, 61, 99, 71, 57, 62, 66, 64, 49, 74, 72, 64, 78, 71, 72, 61, 64, 107, 69, 58, 61, 65, 97, 80, 88, 54, 83, 67, 52, 61, 58, 62, 56, 69, 63, 67, 63, 65, 45, 66, 74, 61, 57, 59, 73, 55, 77, 55, 62, 68, 65, 56, 64, 60, 46, 74, 51, 66, 70, 68, 69, 54, 78, 72, 62, 74, 76, 63, 62, 67, 65, 66, 71, 73, 78, 76, 82, 57, 70, 50, 46, 73, 79, 65, 47, 83, 56, 74, 73, 72, 88, 69, 62, 62, 67, 66, 71, 44, 71, 67, 49, 58, 71, 68, 62, 84, 53, 63, 80, 61, 92, 57, 67, 59, 56, 57, 60, 48, 54, 72, 64, 63, 62, 56, 63, 65, 78, 56, 42, 63, 59, 50, 79, 76, 80, 66, 69, 60, 68, 60, 71, 62, 89, 56, 56, 78, 92, 66, 51, 54, 81, 68, 54, 67, 50, 76, 64, 51, 60, 82, 78, 59, 58, 67, 61, 63, 65, 105, 119, 62, 73, 58, 60, 91, 61, 68, 70, 74, 78, 53, 68, 67, 60, 58, 62, 78, 57, 66, 62, 70, 72, 83, 72, 55, 56, 67, 65, 46, 71, 62, 63, 62, 63, 68, 67, 60, 54, 64, 67, 65, 66, 49, 81, 59, 58, 63, 67, 59, 52, 62, 60, 55, 91, 65, 58, 60, 71, 74, 72, 68, 78, 76, 54, 75, 70, 49, 61, 86, 67, 55, 60, 54, 95, 61, 67, 43, 60, 88, 68, 62, 60, 77, 61, 76, 56, 58, 63, 113, 66, 72, 61, 60, 62, 51, 71, 56, 66, 56, 51, 70, 121, 81, 83, 93, 107, 67, 50, 75, 55, 68, 50, 71, 59, 81, 62, 69, 67, 61, 62, 92, 70, 62, 57, 55, 52, 57, 61, 80, 66, 54, 59, 90, 75, 46, 82, 120, 68, 63, 58, 64, 46, 73, 80, 56, 67, 61, 76, 65, 68, 68, 62, 61, 67, 84, 60, 54, 66, 57, 75, 59, 73, 65, 59, 58, 55, 65, 59, 74, 75, 65, 74, 72, 60, 62, 62, 72, 70, 63, 89, 53, 58, 60, 60, 67, 45, 72, 96, 73, 75, 73, 65, 58, 71, 67, 57, 63, 55, 61, 87, 61, 67, 60, 58, 61, 52, 60, 70, 71, 59, 50, 88, 63, 76, 64, 61, 59, 61, 60, 59, 55, 70, 76, 51, 67, 67, 63, 71, 60, 68, 92, 54, 58, 118, 66, 89, 83, 62, 76, 58, 59, 69, 62, 66, 58, 61, 72, 80, 50, 72, 52, 55, 84, 59, 68, 60, 85, 66, 72, 60, 87, 57, 75, 68, 76, 115, 94, 82, 49, 55, 62, 65, 55, 69, 59, 52, 54, 52, 70, 78, 75, 76, 83, 56, 61, 91, 96, 62, 50, 92, 79, 66, 55, 53, 87, 62, 75, 65, 66, 54, 75, 58, 87, 85, 62, 57, 73, 63, 64, 85, 63, 63, 69, 67, 48, 58, 78, 58, 67, 56, 74, 71, 84, 55, 53, 62, 78, 63, 68, 63, 75, 57, 63, 63, 62, 72, 65, 60, 58, 69, 51, 68, 64, 89, 50, 70, 58, 52, 87, 72, 64, 54, 59, 77, 60, 54, 68, 67, 52, 77, 57, 60, 59, 80, 59, 63, 68, 60, 61, 75, 58, 67, 56, 49, 70, 87, 72, 60, 60, 79, 71, 66, 60, 52, 64, 74, 71, 79, 65, 71, 70, 63, 74, 64, 75, 39, 70, 67, 67, 58, 66, 69, 69, 56, 57, 51, 83, 56, 53, 74, 60, 42, 114, 60, 60, 59, 53, 33, 49, 55, 57, 83, 65, 77, 70, 46, 67, 54, 56, 54, 58, 73, 70, 69, 51, 61, 67, 64, 65, 52, 94, 46, 51, 63, 60, 78, 71, 46, 78, 58, 46, 55, 56, 55, 60, 75, 99, 65, 56, 50, 73, 76, 85, 67, 63, 48, 60, 54, 65, 52, 54, 61, 126, 50, 62, 99, 70, 95, 59, 76, 102, 86, 56, 71, 95, 90, 57, 50, 66, 81, 53, 87, 58, 60, 87, 57, 63, 52, 52, 67, 58, 62, 59, 77, 60, 61, 70, 57, 49, 64, 76, 58, 69, 52, 47, 72, 59, 69, 68, 67, 57, 74, 72, 53, 69, 58, 98, 80, 69, 72, 50, 74, 72, 68, 76, 106, 75, 58, 58, 97, 77, 74, 72, 62, 52, 71, 53, 61, 72, 67, 54, 59, 87, 62, 82, 54, 155, 52, 71, 65, 103, 74, 77, 66, 76, 61, 44, 81, 54, 68, 56, 96, 66, 58, 57, 55, 68, 60, 69, 74, 46, 59, 58, 67, 76, 60, 71, 61, 71, 74, 59, 56, 59, 57, 56, 51, 64, 51, 66, 61, 58, 59, 49, 59, 60, 71, 66, 84, 75, 78, 58, 68, 89, 89, 68, 51, 109, 87, 54, 77, 68, 62, 72, 55, 71, 79, 56, 54, 64, 58, 90, 61, 59, 66, 58, 58, 83, 72, 49, 76, 58, 63, 54, 66, 81, 77, 60, 68, 66, 60, 79, 68, 53, 53, 65, 50, 86, 45, 54, 72, 50, 59, 79, 59, 69, 56, 107, 41, 57, 65, 75, 71, 75, 69, 41, 80, 75, 59, 51, 53, 55, 39, 81, 73, 65, 52, 61, 66, 98, 84, 56, 71, 79, 53, 60, 50, 72, 67, 69, 94, 59, 61, 49, 51, 56, 89, 137, 57, 65, 73, 57, 62, 42, 57, 75, 65, 64, 83, 48, 81, 69, 80, 53, 63, 78, 75, 51, 68, 78, 86, 54, 104, 72, 80, 79, 46, 55, 90, 67, 29, 59, 42, 59, 58, 66, 68, 64, 81, 85, 56, 70, 73, 70, 44, 66, 69, 84, 81, 71, 102, 66, 45, 56, 66, 60, 56, 83, 82, 82, 71, 51, 60, 69, 77, 53, 72, 46, 54, 63, 48, 59, 71, 55, 93, 61, 47, 57, 58, 49, 54, 89, 52, 69, 61, 53, 70, 77, 91, 59, 63, 56, 46, 70, 62, 65, 64, 54, 54, 63, 63, 46, 76, 57, 76, 55, 56, 66, 77, 70, 125, 56, 56, 97, 74, 67, 55, 72, 72, 80, 67, 65, 58, 61, 60, 73, 52, 69, 74, 84, 53, 50, 59, 49, 72, 62, 67, 59, 63, 58, 85, 63, 49, 71, 44, 61, 69, 70, 103, 100, 60, 60, 74, 58, 68, 88, 79, 77, 53, 77, 65, 63, 46, 91, 60, 65, 64, 51, 53, 76, 44, 66, 110, 68, 57, 52, 69, 58, 68, 74, 53, 56, 82, 63, 79, 65, 61, 43, 64, 71, 57, 65, 49, 58, 83, 69, 66, 78, 51, 67, 59, 55, 58, 56, 52, 68, 60, 75, 46, 89, 72, 75, 59, 71, 70, 70, 60, 80, 72, 92, 59, 78, 78, 68, 69, 69, 91, 74, 90, 75, 74, 51, 94, 68, 68, 70, 67, 60, 74, 88, 68, 66, 82, 87, 55, 89, 72, 60, 62, 74, 60, 71, 51, 62, 57, 63, 76, 93, 65, 60, 75, 74, 61, 70, 50, 63, 52, 44, 55, 70, 54, 67, 50, 69, 38, 68, 63, 69, 70, 73, 67, 62, 61, 70, 79, 51, 80, 70, 49, 50, 85, 70, 85, 79, 58, 50, 66, 73, 96, 76, 66, 84, 86, 63, 55, 73, 80, 57, 60, 60, 51, 85, 81, 91, 59, 73, 84, 73, 58, 114, 60, 40, 66, 47, 74, 60, 66, 74, 53, 84, 70, 58, 59, 68, 50, 79, 59, 61, 81, 60, 61, 59, 49, 57, 65, 41, 58, 62, 59, 60, 61, 55, 62, 48, 59, 49, 52, 82, 72, 76, 74, 64, 61, 46, 56, 42, 47, 82, 66, 88, 51, 51, 62, 62, 59, 54, 95, 66, 52, 52, 53, 62, 39, 62, 74, 63, 64, 70, 125, 66, 80, 69, 79, 62, 52, 67, 44, 56, 71, 44, 51, 49, 70, 84, 86, 56, 60, 64, 61, 99, 71, 67, 95, 51, 66, 60, 93, 50, 61, 57, 50, 57, 59, 54, 68, 53, 53, 56, 93, 55, 78, 63, 76, 68, 44, 74, 88, 62, 80, 58, 64, 53, 67, 54, 52, 58, 63, 63, 63, 66, 81, 46, 68, 61, 57, 54, 62, 55, 57, 70, 61, 62, 63, 67, 72, 62, 62, 69, 61, 62, 76, 50, 68, 71, 59, 56, 62, 64, 50, 57, 61, 65, 69, 53, 63, 67, 49, 57, 54, 63, 57, 73, 72, 63, 81, 70, 57, 70, 65, 68, 78, 62, 83, 86, 56, 61, 57, 94, 88, 58, 69, 51, 70, 112, 72, 71, 57, 79, 77, 61, 56, 59, 51, 67, 65, 62, 75, 52, 56, 88, 55, 44, 57, 75, 54, 54, 71, 46, 79, 58, 49, 50, 67, 52, 70, 52, 77, 62, 82, 50, 54, 91, 56, 57, 59, 67, 52, 89, 55, 67, 78, 37, 60, 61, 69, 72, 51, 45, 64, 54, 90, 64, 69, 64, 54, 50, 59, 58, 71, 63, 84, 59, 66, 54, 60, 61, 71, 62, 81, 64, 40, 93, 68, 55, 70, 72, 44, 79, 82, 79, 65, 82, 77, 84, 86, 68, 63, 57, 76, 66, 80, 86, 70, 81, 81, 68, 96, 74, 52, 54, 96, 100, 61, 67, 62, 68, 54, 44, 65, 62, 52, 63, 71, 83, 61, 69, 57, 51, 80, 73, 75, 56, 55, 44, 92, 58, 64, 75, 53, 68, 57, 80, 65, 66, 50, 62, 72, 56, 66, 52, 66, 81, 54, 77, 76, 56, 54, 64, 50, 58, 56, 60, 65, 58, 59, 62, 60, 50, 73, 79, 87, 54, 96, 53, 60, 58, 69, 77, 46, 54, 79, 58, 67, 63, 52, 57, 68, 72, 56, 60, 103, 66, 72, 85, 70, 58, 94, 67, 61, 61, 75, 49, 73, 56, 59, 77, 71, 62, 57, 63, 68, 66, 64, 64, 58, 78, 56, 48, 78, 81, 64, 61, 74, 66, 52, 63, 45, 64, 64, 68, 68, 72, 82, 52, 75, 57, 57, 62, 70, 64, 65, 94, 64, 71, 56, 82, 74, 63, 71, 75, 60, 53, 51, 59, 39, 73, 55, 64, 68, 61, 59, 75, 80, 63, 50, 67, 67, 70, 48, 64, 47, 69, 54, 101, 63, 75, 55, 55, 55, 48, 52, 57, 66, 73, 68, 60, 51, 55, 48, 59, 53, 52, 63, 48, 45, 63, 62, 69, 71, 72, 60, 69, 106, 43, 63, 58, 72, 53, 60, 55, 77, 55, 57, 68, 70, 44, 67, 59, 65, 51, 66, 70, 73, 56, 48, 77, 60, 62, 64, 58, 57, 83, 64, 88, 42, 69, 56, 76, 63, 60, 61, 76, 63, 79, 91, 59, 100, 59, 76, 69, 60, 68, 82, 82, 67, 59, 83, 60, 91, 80, 59, 51, 53, 73, 18, 114, 61, 55, 64, 65, 40, 60, 64, 77, 57, 49, 36, 60, 60, 58, 68, 74, 62, 57, 73, 115, 69, 56, 56, 82, 66, 60, 41, 58, 56, 99, 54, 51, 72, 59, 72, 51, 71, 71, 53, 74, 71, 73, 62, 71, 79, 61, 56, 59, 45, 80, 64, 66, 73, 60, 61, 80, 57, 57, 112, 61, 66, 57, 55, 72, 56, 60, 96, 83, 64, 89, 67, 78, 63, 83, 62, 66, 55, 83, 71, 61, 55, 72, 65, 47, 64, 61, 80, 64, 93, 60, 55, 61, 63, 86, 73, 65, 75, 61, 50, 59, 63, 62, 62, 77, 86, 84, 84, 45, 60, 61, 79, 71, 66, 106, 65, 72, 62, 74, 112, 53, 52, 61, 72, 57, 84, 60, 56, 84, 63, 58, 60, 72, 70, 59, 61, 57, 59, 86, 52, 62, 74, 56, 69, 68, 65, 103, 38, 67, 47, 56, 60, 56, 53, 59, 67, 73, 62, 72, 87, 65, 86, 60, 44, 61, 70, 54, 73, 98, 77, 92, 119, 74, 65, 68, 68, 61, 64, 62, 69, 66, 45, 42, 51, 64, 85, 52, 89, 90, 68, 99, 71, 51, 52, 51, 48, 46, 48, 87, 62, 66, 62, 65, 63, 48, 74, 60, 49, 61, 72, 59, 50, 50, 53, 68, 48, 65, 70, 89, 57, 69, 77, 69, 115, 66, 60, 101, 55, 43, 55, 69, 81, 68, 50, 50, 72, 66, 59, 83, 64, 75, 60, 48, 69, 68, 78, 63, 52, 70, 54, 61, 70, 56, 81, 58, 92, 72, 67, 53, 78, 62, 37, 59, 65, 77, 91, 54, 73, 59, 50, 68, 69, 65, 60, 70, 82, 63, 96, 61, 82, 66, 66, 57, 75, 55, 74, 66, 61, 101, 59, 69, 61, 56, 78, 58, 64, 59, 60, 80, 64, 52, 54, 48, 63, 60, 77, 80, 59, 69, 51, 59, 66, 61, 92, 74, 77, 63, 76, 66, 57, 69, 70, 49, 59, 59, 65, 49, 62, 64, 76, 86, 52, 83, 65, 70, 75, 62, 107, 56, 69, 55, 59, 67, 62, 78, 67, 50, 77, 70, 55, 47, 53, 67, 74, 48, 66, 53, 69, 63, 63, 64, 94, 70, 70, 58, 63, 73, 66, 63, 77, 48, 55, 59, 71, 69, 95, 104, 109, 62, 60, 60, 70, 59, 102, 59, 62, 53, 67, 63, 62, 66, 50, 34, 55, 75, 51, 57, 66, 79, 66, 65, 71, 87, 111, 57, 81, 65, 71, 50, 62, 66, 58, 60, 55, 48, 60, 69, 66, 71, 48, 63, 57, 60, 62, 52, 58, 59, 56, 70, 52, 61, 46, 56, 54, 60, 110, 59, 73, 69, 67, 75, 59, 72, 57, 54, 91, 48, 55, 61, 63, 60, 66, 64, 54, 54, 48, 67, 69, 45, 55, 92, 81, 75, 75, 60, 62, 63, 39, 66, 69, 76, 57, 65, 75, 49, 56, 47, 84, 78, 66, 58, 69, 62, 64, 68, 82, 80, 64, 84, 54, 84, 68, 62, 63, 73, 60, 56, 71, 76, 68, 73, 69, 85, 103, 92, 85, 92, 64, 69, 67, 69, 50, 64, 50, 84, 54, 79, 72, 60, 72, 75, 58, 86, 83, 74, 62, 64, 76, 66, 63, 74, 71, 76, 52, 54, 64, 73, 78, 70, 52, 62, 67, 46, 51, 55, 58, 67, 84, 100, 94, 63, 60, 64, 81, 67, 57, 56, 46, 79, 62, 56, 59, 64, 95, 61, 102, 133, 57, 52, 85, 80, 58, 52, 76, 66, 63, 83, 79, 62, 65, 62, 56, 71, 75, 77, 57, 58, 64, 65, 66, 69, 60, 84, 56, 73, 55, 60, 57, 60, 107, 49, 50, 62, 64, 47, 57, 63, 61, 80, 60, 74, 66, 48, 63, 72, 69, 63, 58, 64, 91, 77, 70, 75, 72, 83, 55, 83, 66, 65, 61, 59, 70, 61, 86, 68, 71, 60, 66, 35, 57, 75, 58, 69, 77, 77, 52, 62, 87, 58, 60, 65, 61, 86, 73, 78, 69, 60, 59, 48, 68, 68, 65, 77, 60, 103, 83, 69, 109, 49, 54, 66, 49, 58, 59, 66, 52, 65, 52, 44, 68, 66, 99, 72, 51, 55, 62, 61, 60, 82, 71, 60, 65, 62, 59, 78, 59, 71, 92, 71, 61, 85, 72, 49, 70, 54, 64, 71, 70, 68, 63, 52, 66, 99, 77, 68, 65, 38, 73, 78, 79, 62, 60, 58, 77, 74, 47, 69, 67, 58, 74, 85, 60, 104, 76, 57, 74, 57, 49, 106, 79, 70, 67, 73, 67, 66, 77, 46, 58, 56, 59, 60, 74, 63, 67, 49, 70, 74, 79, 58, 74, 74, 68, 65, 44, 58, 39, 52, 53, 54, 58, 67, 86, 55, 70, 58, 71, 65, 54, 56, 45, 61, 69, 62, 71, 66, 68, 67, 60, 58, 55, 75, 49, 52, 69, 76, 71, 61, 66, 73, 72, 76, 74, 61, 53, 80, 73, 58, 85, 61, 51, 80, 76, 95, 70, 79, 53, 77, 72, 68, 69, 54, 50, 61, 56, 57, 60, 55, 54, 75, 55, 47, 60, 54, 62, 55, 80, 63, 60, 60, 77, 53, 69, 87, 49, 68, 62, 55, 60, 78, 68, 68, 65, 70, 69, 54, 91, 55, 85, 106, 51, 68, 72, 62, 51, 60, 49, 59, 79, 59, 90, 82, 54, 55, 59, 96, 54, 82, 61, 58, 63, 54, 50, 61, 58, 63, 91, 65, 80, 84, 71, 57, 51, 65, 67, 71, 107, 54, 53, 54, 65, 57, 75, 66, 69, 68, 57, 62, 65, 63, 64, 57, 55, 66, 58, 83, 73, 53, 61, 68, 50, 62, 37, 78, 72, 63, 39, 53, 84, 57, 74, 81, 70, 95, 61, 56, 71, 118, 56, 64, 74, 60, 57, 53, 70, 68, 46, 68, 88, 76, 57, 99, 73, 58, 57, 51, 46, 75, 95, 56, 97, 63, 56, 53, 72, 46, 90, 56, 64, 70, 57, 72, 100, 69, 61, 53, 65, 73, 58, 58, 57, 60, 52, 70, 60, 61, 75, 78, 61, 66, 51, 93, 70, 59, 45, 80, 89, 87, 72, 55, 53, 31, 57, 66, 95, 60, 59, 56, 76, 68, 56, 69, 73, 63, 90, 72, 51, 73, 81, 58, 54, 85, 61, 48, 53, 60, 61, 59, 50, 76, 72, 61, 61, 68, 60, 68, 58, 52, 52, 67, 68, 83, 70, 100, 60, 78, 75, 80, 78, 51, 71, 58, 66, 67, 64, 89, 79, 58, 57, 65, 68, 74, 52, 80, 68, 99, 80, 78, 78, 69, 70, 62, 69, 64, 66, 72, 76, 71, 65, 72, 65, 60, 55, 70, 75, 73, 57, 54, 61, 62, 51, 53, 60, 75, 59, 67, 66, 96, 58, 58, 63, 58, 53, 69, 57, 81, 59, 84, 64, 60, 62, 65, 55, 46, 60, 64, 65, 50, 52, 55, 63, 64, 62, 74, 64, 73, 59, 62, 63, 37, 105, 55, 67, 68, 64, 56, 63, 80, 72, 78, 52, 51, 62, 64, 111, 57, 49, 57, 63, 59, 46, 55, 59, 64, 75, 52, 57, 62, 76, 67, 56, 59, 66, 94, 72, 67, 50, 57, 58, 54, 58, 116, 52, 46, 66, 49, 52, 54, 47, 57, 63, 59, 65, 68, 57, 65, 71, 65, 61, 72, 66, 61, 50, 61, 47, 73, 47, 58, 86, 56, 56, 53, 64, 60, 94, 55, 90, 53, 47, 57, 64, 62, 93, 56, 49, 68, 60, 53, 70, 53, 65, 55, 69, 62, 77, 65, 83, 55, 60, 69, 47, 57, 72, 76, 59, 66, 59, 69, 66, 48, 63, 52, 53, 88, 61, 46, 49, 72, 54, 55, 59, 81, 52, 67, 66, 78, 55, 58, 64, 43, 69, 71, 82, 76, 71, 69, 86, 68, 67, 55, 53, 62, 70, 56, 64, 70, 53, 48, 83, 53, 105, 66, 68, 63, 65, 74, 46, 76, 53, 73, 60, 65, 64, 70, 67, 62, 54, 58, 61, 80, 65, 65, 75, 62, 68, 57, 61, 52, 72, 78, 74, 78, 54, 43, 81, 59, 63, 62, 67, 63, 63, 99, 81, 60, 77, 59, 72, 62, 52, 62, 81, 58, 46, 65, 54, 67, 68, 50, 60, 67, 44, 53, 50, 57, 63, 77, 39, 62, 60, 79, 62, 62, 55, 57, 54, 68, 83, 78, 59, 66, 61, 78, 96, 64, 62, 62, 66, 50, 85, 65, 81, 61, 83, 67, 72, 55, 45, 53, 55, 78, 40, 61, 44, 78, 80, 70, 66, 58, 56, 62, 70, 59, 94, 90, 63, 73, 62, 68, 67, 63, 135, 73, 113, 77, 77, 48, 80, 83, 67, 71, 70, 56, 76, 55, 68, 50, 59, 67, 55, 121, 68, 67, 54, 71, 58, 58, 73, 52, 74, 58, 90, 56, 54, 47, 70, 50, 69, 65, 68, 92, 59, 70, 61, 56, 66, 70, 57, 60, 61, 51, 60, 73, 81, 79, 60, 69, 75, 65, 77, 54, 73, 59, 77, 77, 63, 79, 72, 69, 53, 68, 95, 65, 65, 54, 67, 72, 46, 65, 55, 62, 64, 63, 88, 63, 61, 91, 58, 63, 85, 84, 57, 73, 36, 73, 66, 52, 39, 75, 67, 57, 79, 97, 94, 52, 71, 68, 75, 52, 82, 103, 65, 77, 54, 65, 66, 60, 61, 69, 80, 61, 81, 52, 94, 76, 60, 56, 58, 60, 92, 45, 76, 70, 54, 97, 53, 64, 75, 47, 63, 94, 54, 84, 69, 49, 56, 53, 49, 58, 59, 35, 41, 54, 69, 63, 58, 48, 63, 76, 67, 54, 73, 76, 63, 90, 110, 82, 74, 43, 69, 52, 69, 51, 60, 68, 65, 62, 46, 73, 66, 60, 73, 61, 43, 67, 59, 72, 66, 72, 73, 79, 99, 78, 54, 52, 67, 71, 52, 61, 54, 49, 63, 84, 73, 54, 111, 47, 53, 55, 94, 77, 54, 53, 68, 63, 100, 58, 52, 97, 59, 110, 67, 69, 63, 55, 105, 87, 61, 88, 65, 55, 71, 60, 59, 77, 93, 62, 81, 62, 77, 55, 84, 82, 72, 54, 54, 55, 59, 70, 81, 78, 76, 74, 61, 47, 70, 86, 64, 57, 56, 73, 54, 53, 52, 76, 66, 62, 63, 66, 89, 73, 80, 51, 58, 63, 51, 67, 66, 75, 58, 71, 70, 64, 65, 49, 66, 47, 54, 46, 61, 74, 71, 66, 69, 65, 55, 63, 90, 49, 66, 48, 94, 68, 81, 65, 45, 70, 55, 66, 62, 61, 65, 62, 49, 63, 71, 60, 42, 56, 54, 79, 79, 67, 66, 76, 56, 106, 57, 82, 63, 68, 70, 63, 54, 66, 58, 60, 61, 60, 62, 68, 57, 59, 87, 61, 87, 57, 50, 87, 61, 61, 89, 83, 53, 59, 51, 103, 74, 53, 70, 63, 50, 65, 63, 67, 100, 60, 63, 55, 71, 72, 70, 70, 48, 66, 62, 93, 55, 61, 93, 86, 59, 40, 82, 62, 65, 98, 82, 53, 63, 85, 77, 62, 55, 39, 66, 50, 132, 65, 59, 48, 69, 69, 69, 58, 68, 67, 70, 67, 60, 66, 46, 79, 54, 69, 59, 66, 58, 58, 56, 73, 52, 56, 53, 67, 48, 72, 75, 62, 67, 105, 66, 58, 62, 62, 57, 59, 65, 76, 67, 62, 67, 81, 73, 74, 72, 52, 52, 63, 67, 60, 70, 82, 53, 61, 73, 65, 87, 81, 76, 56, 61, 74, 52, 61, 78, 67, 57, 76, 51, 80, 58, 62, 62, 56, 79, 78, 79, 58, 68, 65, 104, 125, 64, 54, 62, 41, 76, 68, 49, 55, 57, 57, 62, 62, 57, 83, 59, 69, 75, 92, 49, 66, 72, 53, 62, 75, 71, 55, 59, 67, 55, 63, 72, 67, 60, 62, 69, 69, 49, 66, 72, 67, 73, 51, 54, 91, 59, 56, 66, 51, 67, 48, 58, 52, 47, 71, 52, 46, 60, 68, 70, 86, 53, 54, 78, 50, 66, 63, 58, 57, 80, 62, 47, 67, 64, 62, 70, 80, 55, 65, 62, 64, 72, 82, 76, 45, 57, 58, 63, 72, 64, 64, 82, 57, 66, 48, 70, 56, 65, 52, 54, 73, 63, 66, 59, 59, 55, 61, 59, 75, 73, 69, 55, 69, 66, 92, 109, 65, 68, 65, 56, 82, 62, 47, 83, 67, 52, 59, 61, 64, 83, 68, 61, 59, 53, 117, 86, 75, 61, 58, 57, 80, 82, 71, 70, 41, 57, 43, 87, 59, 67, 54, 75, 58, 42, 71, 54, 67, 67, 64, 56, 69, 66, 82, 83, 98, 52, 57, 62, 77, 71, 77, 63, 63, 54, 56, 60, 93, 82, 61, 57, 73, 54, 87, 52, 61, 66, 91, 61, 90, 71, 64, 68, 81, 53, 54, 62, 62, 50, 98, 61, 58, 60, 68, 71, 58, 66, 69, 63, 46, 103, 61, 100, 42, 63, 59, 69, 45, 73, 83, 86, 69, 115, 45, 72, 62, 62, 63, 72, 65, 88, 59, 60, 74, 45, 68, 63, 62, 50, 87, 83, 66, 68, 55, 77, 60, 62, 51, 84, 52, 52, 109, 121, 62, 65, 79, 80, 78, 100, 65, 63, 63, 65, 63, 68, 55, 56, 90, 54, 61, 67, 76, 79, 97, 89, 62, 60, 80, 57, 56, 64, 69, 108, 66, 60, 65, 52, 67, 65, 65, 65, 68, 55, 64, 55, 65, 68, 59, 54, 73, 76, 64, 60, 62, 63, 51, 53, 65, 83, 50, 47, 54, 50, 58, 87, 123, 90, 61, 52, 47, 66, 38, 63, 77, 45, 54, 65, 70, 89, 65, 56, 67, 73, 63, 64, 48, 53, 77, 67, 63, 55, 60, 56, 68, 82, 53, 59, 62, 47, 56, 60, 64, 59, 70, 68, 56, 73, 57, 48, 66, 63, 61, 38, 70, 49, 77, 104, 48, 62, 60, 65, 69, 41, 63, 58, 57, 49, 56, 60, 56, 71, 72, 59, 47, 59, 51, 75, 65, 60, 55, 92, 66, 47, 55, 71, 56, 65, 62, 55, 106, 86, 68, 67, 64, 61, 61, 77, 79, 69, 73, 70, 69, 71, 52, 58, 74, 66, 58, 58, 76, 65, 41, 137, 64, 79, 67, 69, 65, 55, 69, 60, 58, 58, 63, 68, 61, 64, 76, 45, 59, 64, 50, 47, 53, 48, 60, 45, 84, 76, 57, 56, 58, 60, 52, 64, 65, 66, 65, 75, 60, 70, 78, 65, 62, 76, 78, 56, 73, 61, 55, 104, 59, 62, 80, 82, 62, 56, 59, 63, 66, 52, 54, 50, 65, 67, 52, 73, 70, 53, 77, 75, 47, 48, 66, 73, 56, 71, 56, 64, 63, 60, 49, 64, 75, 67, 45, 91, 53, 34, 77, 57, 44, 70, 79, 77, 69, 55, 86, 58, 54, 67, 61, 87, 60, 66, 54, 69, 68, 67, 82, 65, 59, 65, 66, 60, 55, 70, 63, 49, 58, 58, 53, 63, 61, 121, 53, 99, 65, 56, 61, 83, 71, 63, 64, 63, 72, 66, 55, 75, 69, 60, 92, 60, 65, 87, 87, 57, 74, 51, 65, 59, 61, 70, 62, 109, 67, 58, 62, 61, 68, 69, 48, 77, 69, 50, 83, 41, 78, 58, 82, 64, 76, 42, 58, 44, 67, 91, 58, 67, 80, 67, 59, 68, 57, 78, 74, 60, 58, 59, 64, 64, 81, 65, 58, 84, 59, 62, 72, 64, 58, 81, 56, 34, 57, 64, 70, 56, 57, 42, 91, 53, 58, 54, 57, 56, 84, 67, 65, 65, 54, 75, 62, 58, 55, 93, 61, 75, 54, 69, 63, 58, 75, 53, 52, 106, 42, 62, 80, 64, 68, 55, 65, 70, 62, 71, 58, 59, 46, 48, 66, 48, 65, 105, 71, 75, 87, 78, 50, 68, 56, 53, 63, 75, 59, 54, 62, 71, 55, 38, 76, 62, 61, 63, 60, 72, 61, 70, 50, 66, 62, 50, 55, 64, 38, 61, 56, 61, 71, 70, 79, 74, 76, 81, 62, 71, 84, 49, 83, 63, 74, 59, 64, 50, 78, 65, 65, 50, 70, 56, 78, 80, 77, 80, 75, 92, 58, 51, 50, 65, 62, 54, 66, 52, 66, 62, 54, 74, 74, 75, 61, 55, 59, 66, 67, 70, 55, 72, 60, 92, 64, 74, 64, 72, 86, 57, 61, 62, 86, 104, 55, 59, 64, 93, 67, 56, 51, 51, 58, 56, 66, 76, 66, 62, 60, 70, 68, 63, 43, 83, 39, 68, 61, 64, 113, 55, 68, 54, 69, 59, 61, 79, 53, 100, 65, 61, 60, 63, 71, 61, 66, 66, 56, 79, 58, 53, 56, 50, 71, 66, 63, 54, 86, 64, 43, 55, 80, 68, 51, 52, 51, 73, 94, 52, 45, 90, 55, 92, 56, 72, 64, 50, 90, 69, 61, 85, 62, 73, 81, 46, 45, 70, 91, 57, 51, 54, 59, 69, 47, 71, 59, 47, 61, 57, 45, 96, 83, 71, 72, 57, 120, 63, 69, 56, 54, 67, 80, 59, 56, 62, 71, 57, 56, 66, 69, 57, 46, 59, 61, 72, 70, 58, 54, 49, 77, 63, 57, 71, 77, 66, 96, 65, 67, 64, 59, 70, 69, 73, 60, 82, 56, 63, 60, 61, 51, 97, 58, 47, 60, 79, 76, 78, 59, 92, 84, 49, 53, 89, 66, 54, 82, 61, 65, 81, 76, 72, 53, 90, 50, 83, 62, 73, 78, 58, 52, 61, 55, 60, 63, 78, 92, 58, 62, 67, 67, 63, 63, 69, 73, 63, 54, 63, 83, 50, 58, 55, 64, 50, 51, 83, 55, 87, 64, 52, 105, 51, 63, 94, 69, 61, 62, 64, 57, 49, 77, 45, 80, 86, 82, 50, 71, 54, 70, 59, 61, 61, 46, 48, 69, 62, 75, 67, 51, 57, 59, 70, 85, 58, 44, 62, 72, 50, 56, 64, 66, 53, 69, 56, 59, 81, 74, 56, 49, 56, 71, 120, 80, 87, 45, 68, 73, 63, 68, 54, 57, 66, 62, 71, 70, 66, 93, 58, 67, 60, 74, 67, 64, 54, 54, 50, 60, 63, 70, 66, 56, 72, 90, 61, 53, 40, 53, 82, 54, 61, 57, 77, 69, 51, 58, 60, 63, 52, 67, 58, 57, 71, 65, 51, 67, 55, 56, 45, 70, 53, 45, 59, 92, 58, 75, 49, 43, 74, 43, 59, 62, 92, 62, 66, 74, 55, 44, 57, 71, 54, 70, 80, 56, 101, 73, 82, 63, 63, 68, 71, 61, 66, 66, 75, 47, 53, 36, 57, 69, 74, 50, 47, 63, 49, 47, 85, 54, 78, 43, 70, 53, 61, 67, 74, 70, 62, 54, 83, 63, 94, 56, 60, 55, 71, 54, 64, 57, 70, 76, 62, 69, 62, 59, 63, 50, 120, 124, 64, 49, 72, 94, 70, 46, 74, 62, 74, 30, 71, 101, 79, 56, 78, 78, 91, 74, 67, 59, 60, 90, 66, 55, 77, 60, 62, 74, 76, 58, 72, 49, 60, 67, 58, 69, 48, 91, 59, 59, 84, 51, 63, 67, 67, 62, 70, 67, 70, 71, 51, 58, 50, 80, 77, 62, 63, 72, 66, 66, 53, 72, 52, 83, 85, 62, 69, 68, 83, 66, 51, 37, 61, 54, 59, 68, 68, 89, 69, 69, 62, 52, 104, 50, 81, 66, 70, 58, 62, 62, 69, 60, 47, 76, 61, 73, 61, 95, 56, 60, 64, 53, 59, 81, 57, 70, 64, 84, 64, 67, 63, 83, 67, 62, 76, 93, 67, 83, 40, 47, 65, 63, 103, 60, 79, 47, 54, 63, 56, 89, 64, 90, 53, 73, 60, 73, 72, 75, 70, 54, 72, 60, 52, 60, 61, 57, 72, 72, 60, 74, 71, 61, 62, 57, 74, 57, 61, 60, 70, 84, 64, 56, 58, 89, 60, 73, 42, 49, 51, 58, 51, 69, 78, 78, 98, 64, 54, 61, 63, 121, 64, 46, 69, 86, 67, 71, 61, 68, 49, 55, 65, 59, 90, 65, 53, 58, 67, 54, 55, 64, 64, 66, 68, 67, 123, 83, 79, 74, 92, 62, 92, 72, 67, 72, 75, 64, 60, 80, 57, 73, 85, 59, 58, 72, 63, 76, 49, 49, 57, 74, 94, 54, 53, 74, 42, 66, 70, 79, 64, 39, 113, 73, 69, 55, 74, 75, 64, 56, 72, 82, 73, 68, 60, 71, 95, 61, 84, 70, 59, 76, 55, 56, 63, 78, 91, 74, 68, 71, 59, 53, 67, 96, 73, 59, 61, 69, 76, 62, 56, 51, 56, 47, 71, 57, 97, 47, 77, 65, 88, 76, 56, 79, 73, 58, 51, 89, 52, 56, 66, 47, 67, 76, 71, 68, 66, 42, 47, 49, 72, 81, 49, 60, 85, 85, 58, 70, 54, 81, 82, 50, 49, 88, 91, 64, 58, 62, 45, 69, 61, 48, 50, 68, 49, 51, 65, 83, 49, 47, 83, 83, 59, 91, 56, 67, 68, 57, 57, 48, 46, 72, 59, 52, 62, 57, 64, 74, 65, 74, 44, 61, 70, 43, 64, 44, 60, 74, 52, 66, 70, 59, 81, 54, 55, 71, 60, 64, 70, 76, 38, 66, 51, 86, 55, 63, 53, 61, 70, 59, 83, 46, 57, 92, 69, 62, 44, 86, 61, 53, 55, 63, 69, 63, 46, 60, 59, 69, 80, 69, 106, 60, 127, 85, 64, 61, 62, 52, 51, 76, 82, 90, 58, 55, 63, 67, 73, 83, 68, 55, 54, 72, 93, 44, 61, 60, 67, 72, 55, 58, 83, 66, 50, 76, 51, 72, 55, 56, 68, 73, 55, 55, 52, 68, 54, 64, 63, 64, 57, 67, 61, 88, 75, 47, 67, 73, 63, 49, 45, 70, 85, 72, 85, 46, 54, 64, 54, 54, 69, 65, 83, 70, 48, 69, 65, 72, 45, 68, 61, 62, 75, 75, 49, 57, 59, 117, 60, 79, 55, 69, 56, 65, 67, 68, 71, 80, 85, 94, 60, 52, 74, 61, 76, 48, 65, 61, 74, 56, 54, 82, 77, 82, 69, 53, 66, 74, 61, 59, 65, 68, 50, 71, 58, 64, 53, 71, 66, 86, 61, 54, 55, 77, 57, 54, 40, 62, 51, 63, 86, 120, 58, 60, 62, 59, 78, 63, 72, 59, 65, 82, 67, 68, 74, 50, 67, 67, 73, 59, 58, 54, 62, 56, 70, 65, 63, 103, 65, 55, 67, 58, 60, 41, 85, 58, 64, 85, 91, 75, 70, 59, 81, 68, 43, 60, 63, 57, 55, 67, 62, 67, 109, 64, 54, 56, 93, 81, 57, 62, 79, 67, 70, 62, 68, 79, 67, 65, 64, 72, 53, 69, 90, 60, 73, 69, 71, 90, 57, 95, 61, 77, 49, 56, 68, 72, 89, 65, 53, 58, 91, 65, 72, 48, 47, 54, 68, 59, 64, 62, 48, 77, 92, 75, 67, 62, 98, 58, 50, 79, 64, 103, 57, 84, 63, 57, 75, 64, 76, 46, 94, 54, 60, 74, 77, 55, 79, 77, 61, 71, 49, 62, 75, 82, 62, 55, 67, 55, 67, 64, 111, 58, 49, 80, 62, 48, 58, 57, 46, 49, 77, 79, 83, 62, 86, 57, 93, 64, 68, 76, 62, 59, 84, 64, 84, 66, 81, 71, 81, 87, 60, 75, 63, 60, 55, 48, 67, 56, 55, 62, 72, 79, 102, 62, 85, 55, 80, 106, 65, 88, 67, 70, 58, 50, 79, 70, 67, 48, 68, 84, 68, 59, 67, 42, 85, 49, 64, 92, 80, 51, 73, 64, 58, 52, 67, 57, 78, 79, 49, 95, 83, 55, 83, 68, 68, 90, 50, 79, 70, 46, 55, 85, 80, 52, 69, 56, 53, 70, 56, 63, 64, 55, 59, 77, 80, 54, 57, 80, 46, 73, 62, 62, 47, 62, 70, 55, 74, 54, 59, 66, 60, 46, 75, 61, 81, 55, 68, 76, 53, 70, 90, 51, 57, 63, 88, 65, 59, 68, 59, 51, 51, 88, 63, 65, 70, 85, 54, 55, 85, 77, 78, 104, 56, 53, 76, 57, 56, 57, 67, 68, 75, 58, 51, 75, 73, 84, 46, 67, 54, 64, 68, 76, 60, 89, 42, 81, 79, 52, 78, 61, 65, 51, 71, 63, 59, 77, 61, 60, 61, 61, 64, 55, 54, 60, 78, 66, 94, 62, 68, 64, 47, 48, 91, 70, 65, 94, 74, 69, 51, 66, 66, 84, 67, 59, 63, 76, 43, 66, 52, 52, 62, 59, 62, 77, 61, 56, 67, 59, 63, 58, 58, 69, 87, 86, 60, 50, 53, 61, 64, 69, 66, 64, 72, 61, 53, 67, 56, 85, 73, 48, 67, 55, 59, 47, 59, 63, 73, 50, 54, 65, 63, 77, 69, 79, 52, 53, 100, 80, 62, 59, 74, 64, 122, 65, 91, 61, 58, 75, 56, 53, 56, 81, 59, 77, 83, 108, 86, 63, 63, 57, 63, 78, 71, 64, 61, 39, 66, 55, 46, 53, 74, 55, 71, 57, 73, 67, 70, 60, 61, 63, 55, 71, 73, 82, 69, 98, 51, 72, 68, 77, 57, 70, 65, 44, 55, 59, 65, 72, 67, 65, 70, 77, 64, 71, 78, 60, 69, 70, 58, 79, 84, 57, 82, 80, 63, 46, 77, 81, 61, 64, 123, 55, 94, 60, 48, 82, 60, 49, 75, 64, 59, 63, 55, 66, 51, 88, 64, 101, 76, 68, 80, 51, 60, 41, 69, 85, 48, 62, 66, 55, 58, 65, 89, 53, 53, 48, 47, 81, 85, 98, 88, 70, 92, 50, 42, 71, 58, 52, 62, 52, 73, 82, 50, 60, 87, 55, 72, 61, 84, 61, 51, 60, 58, 75, 52, 61, 58, 57, 57, 84, 98, 45, 66, 71, 67, 33, 60, 72, 85, 46, 57, 74, 68, 67, 67, 58, 42, 47, 56, 71, 65, 99, 80, 71, 65, 84, 45, 72, 58, 41, 93, 61, 93, 68, 60, 61, 59, 69, 57, 74, 50, 73, 70, 49, 50, 61, 57, 71, 59, 59, 76, 52, 55, 73, 61, 76, 55, 79, 68, 63, 69, 68, 98, 73, 62, 65, 52, 73, 43, 61, 52, 65, 63, 57, 62, 75, 68, 81, 45, 76, 73, 54, 72, 51, 49, 79, 62, 88, 79, 65, 57, 60, 85, 49, 51, 53, 54, 114, 75, 70, 65, 80, 92, 79, 53, 115, 67, 80, 68, 91, 75, 73, 62, 104, 61, 60, 61, 79, 83, 60, 78, 62, 61, 58, 66, 82, 79, 63, 52, 69, 45, 70, 46, 50, 49, 52, 62, 73, 36, 65, 57, 72, 40, 74, 61, 60, 80, 93, 67, 57, 64, 47, 64, 68, 76, 64, 75, 81, 70, 49, 66, 67, 69, 49, 108, 54, 62, 61, 57, 105, 70, 62, 94, 80, 75, 56, 61, 61, 57, 62, 66, 84, 70, 46, 74, 69, 57, 66, 60, 135, 109, 56, 67, 61, 61, 88, 75, 70, 88, 41, 62, 46, 80, 49, 91, 79, 54, 82, 68, 82, 87, 43, 83, 95, 72, 78, 91, 64, 61, 73, 66, 65, 61, 87, 80, 81, 52, 78, 62, 79, 76, 54, 57, 65, 82, 55, 83, 70, 67, 65, 53, 62, 64, 73, 49, 54, 61, 55, 79, 56, 77, 61, 64, 61, 84, 60, 71, 66, 66, 63, 49, 59, 69, 91, 95, 80, 54, 52, 37, 64, 52, 63, 111, 65, 59, 67, 62, 59, 73, 57, 62, 47, 85, 68, 44, 62, 62, 46, 140, 57, 64, 68, 62, 39, 60, 51, 61, 61, 86, 38, 66, 60, 50, 98, 53, 61, 65, 57, 65, 58, 58, 58, 63, 44, 61, 48, 53, 66, 53, 73, 64, 65, 71, 58, 57, 63, 95, 44, 64, 114, 60, 96, 59, 76, 51, 66, 67, 69, 72, 72, 54, 52, 61, 85, 60, 62, 61, 87, 89, 56, 76, 73, 59, 47, 48, 63, 74, 65, 78, 66, 90, 53, 72, 76, 62, 86, 56, 51, 54, 79, 71, 79, 72, 56, 61, 66, 47, 56, 96, 65, 71, 67, 73, 63, 51, 48, 87, 71, 52, 61, 67, 67, 48, 62, 63, 55, 66, 43, 61, 80, 94, 106, 64, 73, 43, 74, 57, 51, 63, 47, 78, 92, 74, 74, 85, 53, 72, 66, 66, 75, 49, 56, 74, 55, 90, 57, 52, 58, 52, 73, 64, 65, 67, 61, 52, 69, 98, 45, 63, 61, 64, 63, 53, 80, 69, 72, 81, 72, 52, 63, 61, 50, 72, 64, 59, 79, 44, 83, 35, 63, 61, 55, 63, 60, 64, 92, 76, 66, 71, 56, 87, 59, 52, 54, 57, 69, 75, 89, 74, 60, 63, 51, 88, 66, 62, 57, 68, 63, 94, 59, 52, 51, 78, 75, 62, 61, 72, 79, 64, 74, 67, 46, 71, 88, 46, 72, 91, 49, 70, 58, 65, 51, 93, 55, 104, 52, 126, 55, 60, 64, 68, 67, 78, 48, 61, 60, 68, 67, 108, 53, 63, 41, 71, 35, 77, 70, 82, 73, 68, 79, 87, 65, 77, 45, 57, 50, 57, 89, 68, 97, 103, 85, 37, 43, 74, 51, 87, 55, 59, 46, 54, 90, 75, 58, 72, 75, 40, 50, 62, 43, 59, 51, 66, 76, 105, 85, 55, 77, 43, 63, 95, 87, 62, 66, 60, 76, 82, 65, 68, 75, 71, 103, 60, 68, 102, 95, 72, 62, 59, 78, 61, 75, 58, 68, 59, 66, 53, 48, 43, 56, 44, 42, 57, 63, 73, 103, 80, 76, 82, 42, 65, 56, 61, 59, 67, 71, 82, 60, 92, 56, 66, 61, 106, 57, 66, 43, 91, 48, 74, 63, 55, 43, 64, 71, 59, 69, 88, 65, 117, 83, 49, 44, 90, 90, 54, 55, 48, 60, 53, 62, 70, 68, 45, 66, 39, 64, 50, 70, 77, 53, 56, 108, 76, 64, 63, 63, 46, 60, 51, 79, 44, 144, 70, 68, 52, 65, 65, 69, 67, 65, 66, 96, 71, 59, 119, 64, 58, 83, 67, 54, 62, 76, 78, 48, 69, 51, 58, 56, 54, 85, 63, 60, 67, 66, 60, 73, 79, 65, 71, 59, 89, 73, 52, 62, 47, 66, 66, 74, 104, 61, 70, 65, 69, 48, 42, 78, 58, 46, 71, 64, 62, 105, 62, 59, 57, 77, 76, 66, 60, 53, 63, 73, 57, 66, 43, 75, 67, 78, 60, 73, 79, 71, 51, 81, 50, 80, 72, 57, 62, 73, 58, 61, 78, 56, 48, 59, 61, 71, 51, 57, 52, 54, 64, 61, 60, 83, 63, 40, 52, 50, 68, 45, 65, 60, 102, 69, 79, 68, 75, 64, 101, 62, 82, 55, 82, 72, 59, 56, 76, 108, 59, 83, 59, 63, 62, 51, 91, 53, 49, 71, 77, 83, 60, 58, 51, 51, 70, 81, 63, 75, 57, 62, 77, 55, 73, 45, 56, 43, 58, 75, 37, 70, 78, 55, 82, 72, 84, 59, 60, 62, 81, 84, 71, 62, 44, 86, 68, 50, 69, 51, 62, 52, 38, 55, 47, 66, 63, 64, 45, 78, 66, 65, 48, 53, 57, 59, 66, 57, 74, 70, 63, 76, 74, 76, 58, 63, 55, 58, 75, 71, 78, 64, 69, 65, 66, 55, 66, 59, 62, 62, 64, 73, 57, 64, 46, 67, 73, 68, 61, 53, 92, 65, 77, 115, 55, 66, 66, 56, 70, 52, 52, 57, 51, 98, 59, 58, 51, 49, 58, 54, 87, 70, 60, 74, 60, 67, 46, 73, 63, 75, 58, 57, 58, 63, 67, 50, 59, 60, 61, 60, 56, 48, 72, 56, 67, 86, 61, 48, 52, 61, 58, 58, 57, 93, 76, 53, 69, 52, 52, 56, 58, 66, 59, 59, 50, 62, 67, 63, 67, 85, 66, 59, 76, 59, 76, 59, 57, 101, 91, 62, 59, 52, 49, 76, 58, 62, 98, 62, 68, 66, 58, 60, 61, 74, 72, 67, 66, 68, 63, 68, 101, 100, 64, 48, 62, 91, 67, 60, 48, 84, 59, 70, 55, 54, 70, 63, 55, 59, 56, 127, 74, 48, 64, 66, 77, 66, 80, 62, 52, 78, 66, 51, 59, 63, 88, 99, 69, 67, 53, 84, 73, 55, 81, 61, 68, 55, 70, 65, 65, 69, 72, 52, 58, 69, 95, 58, 67, 62, 69, 67, 57, 74, 57, 63, 67, 58, 60, 65, 123, 50, 80, 72, 75, 71, 51, 77, 62, 69, 43, 83, 63, 67, 54, 70, 68, 53, 51, 60, 82, 41, 60, 61, 81, 62, 91, 75, 85, 53, 77, 59, 54, 84, 69, 53, 52, 62, 67, 75, 55, 76, 66, 61, 51, 59, 88, 72, 51, 60, 52, 99, 68, 69, 59, 53, 53, 73, 73, 80, 76, 49, 75, 44, 45, 64, 60, 74, 72, 49, 82, 73, 52, 64, 64, 65, 68, 66, 67, 63, 63, 82, 71, 54, 61, 51, 68, 53, 62, 44, 57, 58, 47, 66, 59, 62, 60, 49, 92, 64, 83, 64, 43, 68, 58, 46, 59, 60, 53, 91, 62, 52, 60, 95, 66, 61, 71, 83, 65, 89, 55, 62, 56, 58, 40, 73, 61, 68, 96, 59, 54, 67, 70, 65, 61, 69, 64, 57, 75, 68, 53, 52, 63, 64, 63, 77, 78, 65, 57, 65, 73, 64, 43, 59, 68, 70, 66, 73, 67, 78, 86, 67, 105, 133, 67, 61, 71, 61, 67, 114, 73, 74, 72, 56, 65, 61, 62, 86, 64, 70, 65, 74, 61, 93, 56, 60, 70, 49, 67, 69, 61, 59, 63, 55, 59, 56, 144, 56, 68, 56, 54, 63, 69, 62, 103, 64, 79, 81, 72, 84, 80, 64, 55, 56, 83, 133, 57, 61, 53, 86, 63, 59, 71, 104, 57, 77, 35, 63, 57, 68, 67, 62, 58, 46, 78, 74, 63, 71, 64, 66, 54, 52, 50, 63, 65, 70, 71, 62, 63, 55, 76, 66, 63, 87, 61, 86, 59, 59, 52, 68, 69, 54, 63, 60, 67, 82, 58, 75, 59, 58, 65, 53, 53, 61, 50, 68, 64, 65, 79, 56, 48, 57, 64, 52, 58, 49, 57, 64, 56, 69, 69, 93, 69, 56, 78, 71, 53, 74, 54, 50, 62, 70, 55, 58, 63, 59, 66, 47, 67, 55, 47, 55, 59, 66, 54, 71, 61, 57, 63, 56, 58, 43, 71, 64, 58, 75, 60, 59, 61, 54, 55, 58, 72, 65, 71, 45, 64, 77, 54, 55, 63, 77, 62, 67, 73, 46, 66, 74, 53, 57, 79, 109, 56, 74, 72, 61, 59, 59, 58, 61, 61, 55, 59, 80, 70, 71, 72, 68, 58, 64, 58, 62, 59, 94, 59, 58, 63, 56, 73, 67, 79, 54, 55, 64, 70, 60, 66, 61, 72, 70, 63, 54, 83, 66, 47, 65, 86, 60, 47, 50, 60, 79, 62, 76, 73, 67, 61, 56, 47, 82, 53, 66, 136, 65, 64, 66, 47, 67, 66, 61, 77, 40, 56, 73, 75, 67, 68, 70, 81, 75, 65, 81, 64, 71, 59, 78, 84, 56, 62, 72, 58, 60, 57, 61, 70, 44, 60, 83, 49, 53, 70, 74, 67, 68, 57, 58, 63, 50, 62, 78, 62, 62, 107, 68, 55, 58, 118, 67, 58, 83, 59, 73, 65, 99, 61, 90, 56, 91, 51, 70, 74, 53, 72, 59, 107, 88, 59, 78, 48, 55, 61, 71, 59, 56, 67, 73, 91, 66, 54, 48, 65, 68, 70, 80, 57, 67, 101, 57, 52, 61, 48, 59, 74, 67, 71, 48, 75, 51, 65, 50, 67, 90, 66, 52, 49, 64, 61, 72, 65, 78, 64, 82, 67, 68, 73, 62, 67, 76, 57, 58, 68, 54, 63, 61, 56, 68, 58, 74, 62, 53, 65, 60, 64, 66, 61, 76, 70, 76, 59, 83, 83, 49, 54, 74, 74, 43, 58, 75, 60, 57, 66, 34, 46, 55, 55, 53, 70, 144, 57, 51, 57, 83, 60, 64, 73, 57, 57, 65, 52, 70, 63, 64, 63, 69, 65, 63, 54, 51, 87, 59, 72, 59, 77, 55, 61, 67, 62, 62, 73, 69, 62, 85, 67, 52, 84, 60, 63, 74, 87, 65, 73, 63, 76, 64, 65, 49, 58, 70, 64, 65, 55, 75, 58, 66, 52, 93, 66, 54, 56, 73, 59, 62, 66, 86, 85, 48, 64, 91, 71, 66, 56, 57, 84, 57, 57, 71, 54, 61, 64, 63, 82, 68, 80, 116, 68, 85, 51, 68, 73, 69, 62, 89, 65, 51, 52, 61, 57, 56, 96, 84, 59, 73, 45, 86, 77, 81, 78, 63, 57, 51, 54, 56, 58, 58, 71, 55, 64, 58, 74, 92, 66, 77, 79, 59, 72, 70, 60, 69, 70, 78, 74, 64, 92, 57, 69, 65, 85, 59, 123, 61, 61, 56, 52, 63, 63, 54, 50, 71, 59, 93, 57, 91, 57, 57, 90, 63, 64, 54, 58, 66, 78, 51, 79, 59, 64, 64, 73, 77, 71, 59, 51, 58, 70, 76, 82, 56, 68, 68, 77, 59, 80, 58, 58, 55, 59, 55, 56, 61, 64, 87, 78, 54, 82, 70, 69, 72, 83, 64, 68, 63, 67, 53, 71, 77, 66, 48, 58, 46, 51, 62, 70, 56, 62, 67, 67, 62, 70, 76, 61, 73, 72, 51, 78, 75, 67, 54, 61, 52, 82, 65, 46, 49, 54, 66, 47, 86, 59, 48, 82, 50, 51, 56, 96, 68, 67, 69, 59, 52, 51, 83, 66, 38, 75, 56, 59, 53, 63, 71, 68, 68, 48, 61, 64, 64, 82, 74, 71, 76, 65, 68, 56, 68, 65, 71, 69, 60, 56, 50, 81, 82, 65, 71, 73, 62, 66, 53, 61, 54, 69, 68, 66, 60, 49, 56, 57, 70, 74, 79, 70, 64, 69, 73, 81, 100, 64, 64, 75, 61, 58, 56, 63, 61, 60, 79, 73, 66, 71, 66, 70, 61, 53, 88, 58, 64, 81, 58, 66, 49, 53, 68, 71, 57, 62, 60, 66, 71, 73, 60, 65, 61, 73, 61, 62, 64, 61, 62, 56, 61, 56, 86, 76, 61, 61, 52, 61, 71, 74, 61, 68, 68, 74, 55, 58, 56, 60, 68, 77, 92, 55, 69, 73, 66, 66, 62, 72, 62, 63, 61, 61, 59, 69, 76, 65, 45, 68, 84, 62, 71, 63, 71, 83, 52, 68, 70, 53, 69, 88, 60, 74, 63, 54, 76, 81, 55, 64, 68, 70, 76, 64, 73, 70, 53, 70, 67, 54, 66, 55, 60, 81, 60, 56, 65, 69, 52, 65, 70, 63, 56, 58, 65, 69, 54, 60, 61, 96, 69, 74, 62, 59, 68, 64, 55, 59, 59, 104, 83, 63, 62, 88, 60, 61, 71, 63, 71, 59, 78, 75, 65, 65, 62, 61, 69, 68, 72, 103, 64, 84, 92, 66, 65, 55, 62, 64, 65, 61, 61, 66, 62, 61, 57, 55, 67, 60, 56, 65, 60, 59, 57, 58, 71, 71, 75, 58, 61, 56, 55, 95, 87, 57, 55, 55, 66, 61, 69, 49, 66, 56, 69, 64, 60, 59, 70, 71, 76, 69, 58, 59, 57, 71, 65, 59, 84, 44, 45, 75, 58, 64, 59, 74, 57, 65, 80, 88, 113, 86, 63, 57, 46, 53, 60, 65, 54, 73, 71, 63, 83, 100, 67, 90, 58, 59, 68, 57, 64, 61, 63, 66, 65, 59, 76, 63, 62, 60, 64, 59, 74, 62, 71, 60, 60, 61, 73, 75, 72, 79, 60, 59, 56, 65, 58, 65, 57, 62, 55, 61, 81, 65, 61, 61, 64, 68, 60, 63, 91, 70, 52, 63, 71, 54, 85, 57, 61, 67, 64, 61, 61, 92, 97, 55, 62, 71, 55, 57, 60, 56, 73, 63, 66, 60, 62, 61, 76, 59, 75, 60, 59, 52, 62, 57, 60, 65, 55, 70, 49, 65, 76, 64, 66, 69, 70, 69, 61, 74, 75, 68, 60, 77, 72, 69, 66, 55, 83, 62, 58, 54, 82, 81, 64, 71, 120, 58, 58, 60, 110, 66, 60, 69, 76, 51, 58, 66, 56, 73, 66, 66, 59, 62, 63, 66, 103, 88, 56, 58, 81, 58, 58, 61, 60, 58, 78, 67, 64, 60, 67, 71, 58, 83, 72, 65, 59, 57, 80, 55, 66, 64, 65, 59, 62, 63, 67, 69, 66, 58, 63, 61, 56, 74, 111, 59, 82, 69, 67, 73, 54, 76, 64, 64, 56, 64, 60, 58, 61, 64, 64, 61, 69, 63, 67, 66, 52, 66, 58, 69, 74, 65, 72, 61, 68, 74, 66, 59, 53, 60, 71, 67, 59, 69, 70, 106, 61, 64, 71, 67, 62, 61, 68, 78, 70, 53, 79, 62, 49, 60, 79, 58, 58, 71, 64, 85, 67, 65, 61, 69, 44, 80, 56, 127, 66, 75, 67, 66, 69, 65, 60, 71, 90, 70, 65, 86, 75, 106, 57, 56, 61, 58, 62, 78, 55, 58, 59, 67, 59, 64, 66, 70, 70, 56, 53, 76, 54, 63, 58, 87, 59, 62, 64, 63, 80, 69, 64, 72, 72, 64, 55, 60, 59, 62, 60, 58, 59, 65, 58, 51, 55, 63, 67, 62, 56, 66, 61, 58, 66, 78, 73, 59, 52, 70, 62, 83, 49, 67, 76, 58, 56, 60, 68, 66, 67, 71, 67, 56, 67, 76, 100, 60, 66, 59, 63, 58, 73, 53, 67, 70, 54, 62, 60, 69, 62, 70, 63, 106, 60, 55, 59, 76, 68, 64, 60, 62, 55, 55, 67, 62, 105, 52, 68, 95, 45, 64, 85, 82, 55, 66, 55, 66, 64, 59, 70, 78, 63, 91, 87, 68, 98, 78, 63, 73, 69, 69, 64, 67, 63, 71, 66, 60, 66, 56, 59, 56, 60, 67, 67, 71, 63, 100, 68, 59, 83, 68, 88, 83, 75, 42, 57, 62, 63, 60, 55, 80, 58, 66, 66, 61, 52, 54, 73, 58, 57, 58, 70, 64, 63, 58, 63, 55, 58, 87, 58, 67, 63, 59, 63, 66, 47, 55, 63, 55, 76, 57, 58, 51, 62, 67, 63, 65, 58, 56, 83, 71, 62, 73, 74, 63, 74, 57, 61, 92, 58, 57, 70, 55, 60, 60, 55, 58, 77, 61, 63, 58, 62, 73, 58, 62, 65, 65, 65, 63, 60, 67, 86, 64, 122, 75, 59, 68, 87, 64, 61, 78, 68, 65, 59, 69, 64, 66, 62, 74, 62, 91, 54, 73, 99, 93, 53, 65, 73, 86, 72, 57, 50, 58, 64, 68, 62, 73, 71, 65, 67, 56, 51, 62, 46, 63, 58, 65, 56, 62, 74, 60, 62, 82, 60, 60, 59, 63, 59, 68, 65, 50, 60, 67, 68, 50, 73, 54, 75, 76, 86, 75, 62, 51, 59, 52, 92, 58, 48, 97, 77, 83, 60, 61, 62, 60, 57, 66, 58, 76, 61, 71, 65, 66, 69, 74, 66, 64, 55, 68, 56, 59, 85, 97, 65, 57, 67, 69, 58, 60, 58, 73, 70, 57, 72, 72, 77, 56, 58, 74, 66, 56, 65, 76, 69, 65, 54, 77, 63, 61, 74, 59, 59, 67, 62, 83, 63, 63, 57, 71, 67, 53, 69, 58, 66, 51, 66, 58, 59, 53, 67, 62, 62, 65, 67, 73, 56, 77, 66, 67, 56, 71, 72, 59, 75, 63, 55, 58, 78, 64, 55, 62, 67, 56, 68, 52, 67, 58, 64, 65, 65, 69, 61, 58, 78, 52, 53, 70, 69, 65, 56, 69, 80, 66, 77, 57, 82, 63, 59, 69, 68, 59, 81, 71, 65, 70, 60, 54, 65, 71, 48, 60, 64, 61, 46, 75, 89, 87, 53, 73, 58, 57, 61, 103, 53, 62, 65, 93, 63, 67, 72, 82, 56, 60, 69, 77, 60, 54, 74, 94, 88, 76, 60, 44, 58, 69, 89, 61, 84, 44, 91, 62, 65, 83, 55, 80, 70, 37, 78, 69, 62, 41, 93, 70, 62, 57, 63, 76, 68, 68, 77, 87, 56, 66, 47, 47, 105, 63, 65, 60, 94, 62, 83, 59, 63, 79, 98, 80, 88, 54, 79, 55, 56, 57, 65, 58, 60, 62, 74, 62, 62, 68, 70, 68, 68, 75, 63, 70, 52, 58, 84, 59, 50, 53, 74, 56, 64, 50, 87, 70, 54, 72, 71, 54, 73, 79, 63, 52, 65, 72, 57, 62, 78, 55, 63, 69, 103, 34, 100, 53, 69, 72, 57, 76, 57, 52, 80, 49, 64, 52, 63, 80, 59, 81, 75, 67, 59, 116, 67, 62, 91, 65, 72, 70, 56, 63, 64, 44, 60, 58, 102, 60, 59, 86, 69, 60, 71, 68, 59, 57, 64, 68, 65, 61, 49, 47, 67, 60, 61, 77, 72, 78, 81, 59, 70, 69, 36, 46, 68, 83, 63, 76, 81, 75, 66, 56, 62, 57, 82, 50, 66, 74, 78, 50, 46, 102, 47, 68, 62, 53, 61, 85, 75, 69, 35, 66, 86, 70, 60, 56, 38, 75, 70, 64, 86, 66, 47, 81, 48, 83, 54, 49, 45, 60, 58, 105, 64, 59, 77, 67, 70, 56, 52, 61, 60, 68, 66, 62, 57, 73, 51, 41, 70, 53, 82, 49, 53, 60, 59, 48, 63, 66, 61, 53, 106, 67, 72, 76, 50, 92, 66, 36, 55, 63, 41, 117, 72, 64, 61, 60, 67, 60, 61, 57, 62, 71, 63, 58, 76, 101, 39, 74, 63, 70, 60, 98, 84, 51, 128, 81, 53, 97, 65, 66, 63, 61, 48, 57, 49, 50, 52, 55, 76, 58, 70, 86, 59, 84, 60, 74, 73, 60, 56, 80, 92, 55, 87, 56, 47, 66, 63, 85, 59, 69, 51, 61, 67, 68, 50, 75, 70, 62, 60, 54, 59, 49, 45, 71, 56, 65, 52, 64, 71, 64, 68, 68, 65, 52, 83, 81, 62, 72, 47, 78, 67, 67, 97, 64, 75, 73, 62, 76, 104, 72, 72, 77, 78, 47, 49, 81, 44, 103, 57, 64, 85, 72, 65, 69, 57, 77, 98, 61, 66, 131, 57, 71, 77, 73, 74, 38, 64, 115, 78, 75, 56, 61, 54, 73, 54, 78, 72, 52, 71, 80, 58, 47, 46, 50, 63, 52, 40, 47, 55, 62, 64, 60, 48, 63, 81, 82, 60, 60, 42, 66, 51, 62, 70, 41, 81, 84, 88, 58, 67, 63, 51, 50, 53, 78, 81, 76, 115, 69, 67, 69, 73, 68, 72, 55, 60, 56, 88, 71, 47, 56, 61, 80, 110, 54, 63, 44, 75, 70, 53, 81, 65, 55, 51, 56, 64, 66, 104, 58, 70, 42, 62, 54, 59, 66, 46, 70, 57, 62, 64, 83, 65, 71, 56, 55, 69, 80, 59, 57, 48, 79, 64, 93, 77, 51, 82, 58, 41, 66, 56, 63, 49, 60, 66, 64, 98, 62, 57, 56, 64, 48, 48, 69, 73, 69, 66, 62, 46, 73, 78, 66, 44, 91, 70, 56, 95, 70, 68, 52, 63, 64, 55, 58, 58, 69, 109, 81, 57, 39, 61, 62, 66, 76, 45, 56, 66, 62, 74, 78, 77, 48, 69, 74, 57, 78, 60, 84, 62, 66, 47, 92, 53, 70, 94, 65, 71, 55, 62, 48, 55, 77, 70, 67, 64, 81, 46, 58, 80, 69, 80, 59, 69, 58, 69, 57, 43, 65, 73, 63, 61, 69, 68, 98, 53, 60, 58, 79, 80, 48, 49, 58, 50, 64, 71, 66, 56, 60, 85, 50, 59, 97, 65, 50, 83, 43, 97, 57, 70, 63, 66, 61, 74, 73, 66, 61, 63, 75, 74, 75, 97, 76, 59, 77, 68, 52, 63, 53, 66, 68, 83, 66, 75, 61, 87, 65, 66, 62, 94, 70, 94, 54, 52, 63, 59, 50, 69, 55, 64, 64, 47, 97, 62, 83, 72, 99, 77, 82, 52, 96, 65, 57, 40, 39, 74, 78, 47, 69, 60, 55, 68, 138, 56, 56, 86, 52, 68, 75, 47, 73, 55, 97, 115, 86, 75, 99, 86, 51, 66, 69, 55, 71, 73, 51, 65, 124, 55, 74, 55, 74, 79, 73, 51, 58, 51, 44, 69, 55, 71, 77, 90, 82, 59, 50, 57, 94, 84, 48, 75, 66, 55, 79, 60, 78, 61, 66, 80, 76, 60, 62, 81, 67, 48, 55, 49, 69, 74, 55, 50, 54, 56, 54, 77, 51, 79, 60, 49, 46, 42, 28, 63, 69, 128, 58, 83, 71, 86, 43, 71, 73, 82, 75, 64, 116, 56, 59, 85, 67, 76, 59, 94, 75, 77, 71, 57, 70, 67, 59, 65, 69, 60, 68, 68, 66, 63, 47, 98, 56, 75, 58, 52, 70, 56, 47, 75, 51, 60, 89, 50, 39, 87, 97, 69, 57, 59, 60, 75, 54, 71, 63, 65, 60, 44, 48, 51, 105, 62, 51, 44, 66, 53, 66, 78, 62, 59, 65, 85, 107, 71, 64, 52, 54, 45, 58, 54, 45, 83, 75, 78, 61, 73, 66, 67, 53, 46, 63, 113, 73, 57, 87, 58, 65, 69, 54, 78, 79, 88, 48, 59, 66, 46, 58, 64, 101, 56, 66, 49, 71, 56, 55, 60, 63, 61, 111, 54, 97, 57, 55, 64, 78, 47, 76, 76, 46, 58, 48, 104, 104, 49, 58, 61, 51, 42, 64, 44, 51, 52, 60, 96, 49, 58, 53, 50, 97, 55, 53, 61, 84, 70, 40, 77, 68, 63, 92, 89, 62, 73, 64, 41, 76, 53, 86, 64, 82, 67, 62, 65, 74, 50, 64, 69, 44, 76, 67, 67, 47, 76, 71, 48, 59, 62, 55, 42, 70, 42, 89, 63, 57, 57, 106, 68, 54, 44, 48, 62, 90, 74, 66, 61, 59, 58, 43, 56, 93, 78, 70, 90, 77, 50, 40, 60, 113, 50, 62, 51, 72, 55, 60, 65, 58, 74, 74, 71, 46, 64, 60, 54, 70, 64, 81, 68, 94, 82, 49, 73, 76, 82, 65, 47, 61, 69, 74, 46, 80, 60, 65, 111, 57, 84, 41, 135, 45, 73, 58, 56, 73, 70, 70, 50, 60, 43, 67, 49, 61, 72, 81, 98, 61, 50, 79, 62, 58, 64, 73, 84, 48, 56, 75, 100, 61, 79, 68, 67, 53, 69, 79, 65, 79, 54, 65, 66, 71, 68, 56, 68, 62, 60, 47, 54, 62, 72, 86, 51, 55, 50, 38, 57, 59, 102, 56, 62, 70, 80, 62, 69, 72, 63, 102, 75, 88, 84, 66, 66, 69, 68, 67, 60, 54, 65, 59, 59, 68, 59, 61, 60, 60, 73, 83, 60, 58, 59, 59, 85, 61, 66, 61, 81, 56, 71, 72, 85, 52, 67, 77, 55, 62, 65, 73, 85, 54, 61, 59, 67, 54, 68, 66, 59, 68, 101, 77, 104, 62, 73, 72, 61, 60, 60, 66, 64, 58, 59, 64, 78, 76, 62, 75, 67, 79, 68, 58, 52, 65, 87, 79, 74, 68, 61, 62, 52, 49, 72, 81, 85, 64, 63, 73, 85, 47, 72, 55, 72, 57, 46, 60, 69, 75, 71, 41, 75, 68, 56, 74, 85, 72, 102, 79, 57, 57, 59, 59, 66, 67, 55, 65, 89, 92, 78, 60, 60, 50, 68, 68, 74, 69, 92, 61, 52, 62, 49, 61, 60, 76, 47, 67, 102, 78, 74, 62, 68, 82, 49, 59, 58, 74, 77, 82, 71, 71, 52, 64, 42, 69, 59, 74, 38, 63, 62, 112, 65, 80, 58, 54, 57, 54, 76, 64, 67, 85, 64, 53, 49, 80, 52, 61, 58, 67, 69, 51, 54, 84, 67, 42, 63, 55, 59, 67, 90, 61, 72, 65, 61, 87, 64, 57, 47, 46, 59, 109, 46, 76, 49, 67, 48, 62, 56, 63, 70, 61, 68, 54, 84, 78, 52, 68, 69, 60, 62, 70, 89, 64, 109, 65, 60, 99, 81, 64, 57, 72, 66, 53, 67, 63, 51, 57, 71, 52, 70, 77, 55, 71, 62, 93, 63, 62, 63, 60, 85, 65, 64, 62, 43, 60, 69, 69, 48, 76, 63, 69, 57, 61, 61, 79, 73, 62, 67, 78, 60, 59, 52, 65, 60, 61, 73, 77, 57, 46, 68, 68, 83, 60, 57, 68, 60, 62, 54, 60, 68, 56, 97, 62, 55, 63, 51, 69, 53, 55, 79, 64, 76, 57, 53, 79, 69, 101, 47, 78, 87, 79, 90, 66, 56, 70, 99, 69, 66, 126, 62, 61, 70, 77, 63, 56, 71, 116, 53, 64, 54, 50, 48, 74, 68, 73, 62, 74, 68, 74, 61, 77, 67, 52, 55, 68, 51, 47, 66, 68, 46, 44, 71, 66, 62, 56, 70, 62, 52, 64, 59, 50, 79, 54, 73, 56, 76, 49, 63, 51, 51, 67, 68, 68, 92, 48, 98, 61, 53, 55, 83, 64, 61, 62, 64, 75, 77, 73, 43, 76, 53, 77, 120, 66, 61, 48, 97, 76, 60, 64, 62, 51, 67, 52, 55, 58, 74, 96, 58, 64, 68, 62, 61, 55, 65, 70, 69, 55, 62, 62, 56, 82, 54, 61, 75, 88, 73, 84, 76, 87, 53, 99, 68, 39, 58, 47, 61, 73, 52, 58, 56, 88, 63, 58, 68, 58, 50, 56, 44, 59, 56, 78, 66, 50, 59, 66, 53, 90, 54, 59, 62, 87, 63, 65, 95, 40, 72, 48, 55, 59, 61, 52, 71, 61, 89, 64, 58, 62, 64, 54, 62, 86, 71, 70, 67, 59, 55, 62, 68, 65, 68, 88, 59, 57, 75, 73, 67, 75, 61, 80, 85, 60, 104, 57, 67, 67, 65, 53, 66, 70, 62, 51, 61, 62, 64, 64, 79, 62, 51, 52, 62, 70, 65, 60, 56, 56, 76, 59, 64, 67, 82, 126, 58, 39, 54, 67, 60, 61, 67, 75, 58, 65, 69, 59, 70, 65, 54, 59, 63, 68, 53, 68, 88, 60, 90, 61, 74, 50, 67, 63, 75, 67, 58, 77, 71, 61, 57, 69, 94, 63, 54, 72, 76, 65, 71, 70, 53, 62, 72, 68, 65, 45, 61, 54, 70, 62, 88, 67, 81, 51, 64, 77, 56, 65, 69, 58, 52, 70, 57, 89, 43, 59, 68, 103, 72, 59, 57, 84, 55, 67, 51, 51, 69, 65, 57, 92, 64, 56, 57, 149, 36, 41, 103, 72, 48, 72, 69, 67, 50, 94, 100, 83, 68, 94, 65, 47, 75, 72, 67, 61, 64, 63, 66, 133, 72, 66, 59, 61, 85, 67, 49, 57, 50, 52, 73, 56, 75, 76, 75, 122, 71, 65, 64, 79, 58, 67, 68, 68, 58, 93, 69, 74, 59, 73, 82, 49, 55, 78, 95, 56, 53, 80, 77, 60, 63, 65, 56, 44, 63, 68, 53, 68, 72, 56, 58, 63, 71, 63, 57, 66, 107, 73, 63, 62, 72, 52, 50, 74, 66, 58, 67, 104, 61, 63, 85, 53, 87, 58, 87, 86, 78, 75, 60, 64, 72, 47, 62, 58, 60, 72, 53, 55, 59, 55, 74, 79, 70, 57, 59, 61, 82, 51, 74, 65, 64, 71, 70, 70, 68, 93, 49, 70, 51, 62, 71, 60, 58, 60, 68, 67, 85, 57, 63, 69, 65, 56, 58, 77, 60, 79, 85, 45, 53, 66, 73, 69, 71, 67, 75, 56, 54, 71, 59, 47, 70, 62, 78, 53, 53, 61, 62, 47, 65, 75, 63, 65, 71, 68, 67, 80, 64, 56, 66, 70, 48, 48, 54, 63, 41, 52, 68, 67, 56, 68, 54, 76, 55, 66, 78, 60, 79, 105, 63, 98, 51, 58, 53, 56, 73, 64, 65, 54, 73, 50, 113, 83, 74, 48, 60, 65, 57, 66, 64, 62, 60, 56, 82, 60, 67, 68, 65, 70, 52, 51, 73, 91, 73, 58, 87, 68, 56, 59, 68, 54, 49, 70, 57, 69, 63, 87, 74, 84, 76, 64, 70, 67, 50, 67, 63, 58, 65, 63, 59, 51, 66, 65, 60, 56, 72, 50, 53, 42, 56, 93, 61, 50, 59, 70, 69, 58, 44, 68, 60, 65, 56, 66, 48, 47, 48, 60, 60, 95, 80, 66, 81, 75, 66, 57, 61, 89, 49, 60, 55, 67, 54, 64, 56, 74, 59, 49, 66, 58, 66, 56, 51, 75, 76, 49, 63, 108, 85, 61, 69, 76, 77, 55, 56, 61, 69, 87, 60, 64, 62, 75, 77, 59, 87, 59, 71, 57, 73, 63, 64, 53, 79, 54, 50, 73, 70, 65, 72, 66, 60, 92, 99, 67, 53, 76, 67, 54, 72, 85, 55, 66, 77, 52, 100, 60, 85, 66, 59, 73, 63, 69, 66, 55, 60, 65, 69, 71, 70, 59, 52, 68, 70, 66, 64, 51, 48, 54, 71, 59, 60, 52, 70, 75, 55, 64, 65, 85, 56, 87, 72, 72, 65, 123, 83, 73, 71, 68, 62, 63, 58, 100, 80, 59, 64, 59, 63, 73, 58, 71, 62, 76, 51, 57, 57, 67, 60, 65, 87, 45, 67, 55, 68, 61, 62, 42, 60, 47, 66, 64, 67, 54, 70, 77, 71, 66, 59, 70, 50, 70, 72, 63, 67, 61, 62, 81, 63, 67, 55, 55, 90, 48, 57, 54, 61, 65, 59, 77, 64, 67, 67, 62, 58, 82, 54, 71, 63, 53, 68, 70, 44, 67, 59, 55, 61, 64, 57, 78, 70, 61, 71, 61, 76, 79, 77, 54, 67, 62, 68, 51, 68, 63, 83, 60, 56, 55, 40, 62, 67, 49, 101, 88, 65, 75, 62, 59, 66, 104, 55, 57, 95, 73, 67, 56, 71, 57, 89, 72, 57, 48, 91, 67, 50, 70, 49, 52, 65, 63, 54, 51, 140, 104, 59, 68, 54, 76, 57, 61, 75, 71, 68, 65, 50, 55, 64, 79, 56, 75, 57, 91, 64, 73, 54, 105, 64, 60, 63, 66, 77, 53, 63, 60, 64, 61, 67, 60, 58, 46, 60, 64, 67, 57, 127, 58, 54, 54, 61, 66, 63, 62, 48, 62, 59, 58, 60, 51, 52, 83, 77, 62, 71, 51, 82, 80, 67, 120, 62, 78, 41, 66, 62, 61, 50, 69, 53, 67, 62, 70, 65, 61, 50, 43, 54, 55, 79, 65, 92, 82, 60, 74, 73, 59, 64, 52, 73, 56, 74, 59, 50, 54, 54, 51, 69, 96, 75, 72, 55, 97, 63, 51, 58, 46, 74, 73, 69, 72, 58, 76, 45, 61, 75, 62, 89, 71, 96, 53, 54, 65, 72, 48, 60, 45, 51, 63, 87, 51, 64, 52, 48, 82, 60, 53, 63, 59, 74, 73, 83, 92, 86, 67, 55, 50, 66, 59, 90, 71, 57, 68, 54, 67, 66, 60, 63, 76, 81, 55, 48, 67, 68, 69, 63, 48, 75, 59, 92, 66, 71, 77, 132, 70, 68, 134, 104, 60, 60, 41, 61, 63, 92, 110, 70, 57, 61, 47, 64, 63, 81, 52, 63, 72, 76, 55, 59, 82, 68, 59, 65, 54, 70, 61, 90, 44, 45, 57, 57, 72, 52, 67, 44, 73, 58, 45, 53, 58, 65, 51, 90, 76, 60, 55, 49, 62, 54, 62, 93, 62, 89, 59, 91, 54, 67, 69, 49, 72, 64, 59, 46, 70, 75, 65, 52, 58, 59, 62, 96, 82, 69, 65, 61, 84, 65, 57, 66, 59, 61, 66, 68, 57, 63, 78, 55, 66, 51, 58, 52, 48, 59, 55, 55, 71, 62, 59, 58, 51, 84, 46, 72, 63, 73, 47, 56, 63, 80, 55, 75, 65, 73, 65, 55, 50, 65, 48, 81, 69, 65, 61, 57, 60, 59, 74, 51, 76, 46, 114, 81, 52, 68, 62, 90, 78, 68, 50, 57, 58, 62, 69, 51, 52, 62, 49, 55, 44, 70, 77, 87, 68, 66, 64, 57, 63, 48, 91, 54, 57, 79, 59, 63, 70, 58, 46, 58, 70, 61, 106, 62, 46, 77, 49, 55, 92, 66, 91, 66, 58, 85, 66, 80, 55, 65, 45, 63, 52, 53, 63, 70, 64, 62, 73, 61, 66, 62, 53, 71, 65, 60, 76, 58, 61, 77, 77, 75, 90, 50, 99, 58, 57, 60, 57, 67, 72, 55, 70, 76, 61, 66, 77, 54, 63, 60, 52, 58, 78, 58, 90, 81, 68, 69, 64, 62, 51, 70, 42, 55, 71, 61, 54, 45, 82, 71, 49, 81, 51, 73, 68, 79, 66, 86, 86, 48, 68, 44, 58, 68, 78, 62, 49, 56, 85, 82, 92, 99, 65, 65, 58, 55, 61, 60, 64, 49, 61, 59, 63, 94, 52, 58, 49, 45, 56, 50, 63, 78, 62, 56, 50, 57, 51, 61, 64, 73, 64, 78, 146, 57, 51, 96, 97, 68, 50, 92, 65, 46, 62, 80, 99, 69, 89, 57, 61, 77, 69, 54, 59, 48, 56, 54, 123, 54, 70, 57, 71, 74, 65, 71, 57, 56, 75, 60, 68, 64, 70, 65, 57, 80, 42, 44, 52, 60, 56, 71, 54, 65, 64, 60, 88, 61, 56, 62, 56, 53, 79, 78, 67, 65, 48, 81, 76, 59, 48, 86, 82, 61, 61, 63, 60, 60, 69, 62, 84, 61, 56, 60, 52, 90, 67, 56, 61, 64, 63, 72, 100, 62, 46, 62, 79, 54, 87, 99, 60, 87, 57, 61, 93, 71, 82, 85, 53, 57, 62, 71, 77, 72, 68, 57, 68, 48, 51, 71, 67, 61, 60, 89, 67, 79, 68, 77, 46, 61, 92, 60, 57, 101, 78, 59, 76, 58, 74, 46, 60, 62, 38, 68, 90, 60, 57, 54, 64, 86, 46, 79, 62, 63, 53, 90, 63, 52, 60, 60, 55, 58, 60, 74, 46, 77, 71, 78, 46, 55, 52, 68, 54, 55, 63, 55, 64, 68, 43, 52, 57, 55, 69, 66, 78, 68, 67, 82, 62, 57, 52, 60, 66, 85, 55, 90, 96, 60, 52, 63, 84, 75, 62, 54, 51, 96, 88, 65, 103, 64, 56, 67, 56, 53, 66, 50, 56, 63, 69, 118, 68, 57, 60, 67, 56, 65, 73, 57, 60, 69, 72, 60, 57, 60, 67, 72, 46, 53, 58, 53, 81, 60, 62, 78, 93, 54, 63, 60, 56, 54, 83, 66, 73, 59, 71, 70, 73, 61, 76, 68, 84, 61, 64, 75, 71, 57, 62, 67, 76, 74, 60, 89, 58, 70, 55, 70, 74, 63, 74, 63, 59, 61, 61, 64, 61, 66, 53, 65, 47, 63, 63, 59, 49, 80, 65, 74, 80, 82, 70, 46, 75, 61, 63, 67, 49, 59, 64, 65, 80, 46, 59, 73, 100, 71, 44, 68, 63, 70, 45, 67, 71, 68, 68, 81, 69, 70, 56, 69, 69, 57, 48, 54, 59, 74, 72, 62, 72, 66, 71, 77, 60, 70, 89, 48, 69, 45, 58, 73, 85, 52, 61, 41, 110, 58, 43, 51, 56, 79, 46, 106, 56, 56, 67, 49, 55, 69, 96, 44, 73, 75, 53, 102, 61, 41, 67, 79, 51, 63, 78, 66, 66, 70, 55, 57, 63, 71, 72, 67, 74, 92, 45, 56, 47, 77, 63, 66, 54, 61, 72, 55, 68, 47, 56, 74, 66, 75, 72, 90, 67, 66, 45, 74, 50, 77, 51, 84, 60, 76, 99, 56, 60, 55, 66, 52, 61, 48, 69, 66, 137, 75, 53, 70, 82, 49, 64, 95, 35, 49, 48, 59, 65, 55, 60, 62, 67, 62, 50, 57, 56, 55, 72, 71, 64, 60, 59, 56, 64, 84, 41, 53, 65, 49, 80, 87, 75, 39, 59, 71, 71, 51, 60, 63, 45, 60, 47, 79, 56, 61, 84, 79, 72, 67, 57, 80, 78, 55, 59, 86, 70, 59, 66, 44, 57, 45, 70, 60, 62, 50, 61, 64, 59, 52, 60, 38, 61, 82, 72, 80, 50, 41, 79, 62, 67, 72, 62, 60, 58, 63, 69, 60, 80, 66, 64, 56, 105, 62, 60, 139, 78, 75, 78, 67, 61, 84, 73, 60, 55, 62, 72, 75, 90, 64, 70, 73, 96, 86, 64, 63, 75, 59, 68, 60, 62, 57, 70, 59, 74, 68, 68, 62, 36, 49, 67, 78, 92, 63, 95, 83, 55, 68, 72, 66, 56, 66, 55, 61, 84, 54, 54, 53, 48, 55, 68, 59, 81, 62, 54, 49, 57, 40, 43, 72, 61, 79, 59, 53, 49, 52, 58, 58, 64, 68, 54, 68, 87, 50, 71, 78, 103, 84, 60, 71, 66, 61, 54, 58, 85, 52, 62, 64, 63, 66, 61, 55, 72, 61, 71, 80, 61, 59, 76, 50, 71, 77, 72, 54, 101, 61, 71, 49, 61, 53, 58, 60, 34, 67, 52, 42, 51, 58, 83, 49, 72, 52, 115, 62, 73, 60, 73, 62, 55, 64, 73, 48, 64, 61, 65, 74, 43, 50, 118, 65, 66, 48, 84, 105, 63, 66, 61, 60, 59, 68, 60, 58, 38, 58, 43, 53, 60, 60, 52, 60, 71, 87, 53, 87, 66, 82, 59, 51, 85, 51, 64, 52, 59, 64, 74, 62, 66, 48, 60, 81, 62, 71, 93, 79, 57, 65, 60, 64, 58, 90, 62, 56, 45, 84, 63, 52, 128, 69, 58, 54, 98, 43, 70, 77, 71, 72, 56, 71, 95, 57, 89, 61, 50, 90, 67, 74, 66, 67, 94, 61, 71, 90, 68, 61, 61, 118, 32, 98, 62, 61, 65, 45, 59, 60, 62, 69, 60, 75, 59, 63, 43, 44, 70, 51, 53, 56, 65, 48, 68, 82, 46, 50, 60, 84, 61, 51, 51, 75, 64, 57, 55, 56, 72, 84, 59, 58, 78, 85, 64, 62, 81, 66, 73, 85, 65, 59, 59, 45, 61, 59, 57, 103, 54, 64, 69, 63, 50, 52, 52, 46, 60, 72, 61, 75, 49, 46, 54, 68, 60, 75, 58, 61, 70, 80, 70, 83, 52, 47, 74, 75, 68, 54, 78, 64, 61, 60, 88, 71, 68, 68, 56, 55, 53, 64, 64, 61, 85, 60, 86, 53, 69, 57, 53, 99, 79, 62, 64, 69, 77, 59, 63, 45, 66, 77, 59, 74, 72, 45, 62, 68, 65, 88, 73, 48, 63, 77, 105, 61, 74, 75, 68, 74, 61, 53, 83, 65, 74, 50, 79, 55, 46, 112, 72, 47, 80, 60, 73, 56, 56, 37, 70, 51, 89, 62, 57, 52, 79, 59, 66, 67, 64, 82, 89, 71, 50, 81, 75, 95, 78, 68, 71, 55, 41, 102, 83, 59, 59, 56, 84, 66, 76, 84, 93, 75, 93, 70, 60, 55, 58, 41, 70, 54, 76, 65, 82, 56, 75, 74, 62, 64, 54, 39, 63, 65, 43, 34, 54, 57, 50, 57, 58, 95, 61, 58, 66, 94, 67, 65, 72, 51, 90, 52, 57, 58, 79, 73, 50, 61, 57, 90, 70, 57, 57, 77, 81, 67, 65, 72, 55, 58, 67, 74, 80, 46, 82, 59, 73, 67, 65, 75, 59, 58, 69, 50, 50, 69, 53, 50, 69, 82, 67, 53, 61, 112, 68, 67, 95, 64, 45, 83, 112, 61, 66, 81, 60, 62, 40, 108, 88, 69, 86, 76, 67, 99, 82, 47, 70, 80, 63, 45, 85, 48, 55, 49, 56, 101, 42, 51, 56, 61, 60, 69, 59, 74, 60, 72, 58, 58, 53, 75, 66, 90, 89, 55, 52, 80, 47, 63, 93, 60, 58, 72, 54, 99, 68, 58, 61, 47, 52, 55, 60, 68, 66, 55, 83, 65, 43, 39, 65, 111, 76, 48, 65, 50, 53, 65, 64, 99, 52, 67, 62, 51, 67, 46, 108, 89, 93, 73, 126, 56, 92, 49, 66, 65, 51, 52, 64, 55, 48, 50, 56, 79, 55, 72, 55, 63, 50, 69, 53, 90, 49, 86, 68, 58, 73, 58, 71, 75, 68, 73, 68, 67, 75, 51, 73, 75, 86, 42, 66, 55, 48, 74, 63, 57, 63, 67, 62, 58, 46, 46, 70, 52, 49, 62, 56, 49, 74, 39, 54, 49, 67, 81, 82, 64, 67, 66, 42, 86, 48, 84, 43, 62, 58, 56, 71, 55, 90, 65, 77, 55, 39, 54, 50, 71, 68, 52, 72, 66, 52, 54, 69, 65, 65, 46, 53, 116, 57, 74, 78, 56, 35, 34, 56, 57, 92, 48, 53, 36, 66, 75, 112, 59, 56, 58, 61, 116, 62, 83, 49, 53, 93, 66, 59, 59, 69, 67, 54, 64, 92, 98, 69, 60, 82, 54, 52, 55, 71, 53, 73, 75, 59, 61, 88, 106, 59, 66, 55, 81, 58, 57, 76, 72, 78, 75, 61, 67, 64, 44, 75, 54, 54, 56, 59, 62, 56, 110, 54, 68, 57, 62, 57, 46, 70, 71, 71, 83, 70, 82, 67, 56, 77, 58, 52, 65, 70, 70, 85, 46, 59, 61, 59, 77, 66, 54, 51, 52, 80, 104, 101, 66, 79, 70, 59, 93, 72, 58, 57, 62, 81, 75, 60, 58, 47, 57, 73, 77, 48, 94, 59, 66, 72, 60, 72, 57, 66, 47, 73, 74, 68, 82, 74, 83, 67, 63, 63, 59, 67, 36, 40, 57, 83, 53, 80, 58, 59, 58, 90, 40, 58, 54, 91, 65, 77, 41, 67, 65, 83, 60, 53, 56, 73, 88, 46, 99, 86, 69, 65, 55, 80, 69, 68, 62, 72, 59, 55, 68, 56, 72, 53, 75, 76, 58, 54, 68, 51, 58, 32, 78, 64, 95, 50, 60, 67, 60, 73, 69, 48, 69, 59, 51, 60, 67, 62, 99, 62, 77, 50, 54, 69, 88, 71, 49, 60, 61, 84, 80, 76, 53, 45, 62, 56, 50, 57, 62, 48, 66, 69, 64, 81, 62, 51, 34, 64, 57, 81, 64, 91, 57, 66, 75, 64, 57, 80, 61, 80, 74, 94, 50, 90, 56, 57, 63, 114, 90, 56, 58, 60, 47, 55, 62, 64, 85, 60, 96, 69, 78, 59, 59, 73, 57, 74, 69, 121, 72, 45, 71, 81, 86, 74, 69, 62, 56, 63, 57, 69, 77, 57, 56, 51, 56, 51, 67, 87, 72, 79, 59, 63, 79, 79, 69, 55, 49, 64, 63, 84, 58, 50, 73, 99, 58, 57, 55, 62, 43, 67, 74, 57, 67, 68, 64, 44, 55, 46, 67, 45, 71, 83, 76, 70, 43, 64, 40, 60, 96, 60, 101, 62, 65, 54, 89, 70, 60, 88, 59, 57, 70, 64, 53, 104, 43, 53, 46, 57, 64, 75, 67, 59, 67, 70, 59, 59, 68, 58, 83, 61, 87, 73, 52, 90, 67, 69, 55, 85, 51, 46, 48, 69, 71, 70, 67, 53, 55, 74, 69, 55, 80, 70, 71, 68, 45, 65, 66, 65, 60, 80, 62, 48, 56, 48, 43, 51, 79, 53, 74, 62, 58, 49, 67, 56, 83, 64, 34, 72, 101, 74, 89, 42, 75, 57, 70, 73, 56, 65, 65, 100, 70, 82, 69, 57, 62, 76, 61, 59, 60, 85, 78, 68, 62, 67, 68, 63, 61, 60, 46, 52, 67, 45, 62, 54, 71, 68, 57, 74, 86, 40, 64, 70, 60, 48, 99, 114, 42, 68, 47, 60, 66, 72, 48, 69, 58, 35, 54, 62, 52, 50, 59, 72, 77, 80, 61, 67, 59, 62, 53, 63, 65, 76, 63, 56, 76, 64, 52, 56, 64, 68, 63, 63, 71, 65, 78, 52, 58, 76, 69, 52, 61, 79, 55, 62, 65, 51, 77, 63, 96, 55, 51, 72, 95, 77, 69, 41, 76, 63, 67, 65, 75, 58, 114, 52, 56, 113, 40, 85, 60, 78, 36, 85, 91, 70, 62, 47, 63, 68, 73, 69, 75, 75, 86, 57, 69, 53, 53, 103, 74, 45, 25, 59, 67, 44, 86, 79, 68, 48, 65, 104, 55, 50, 45, 56, 57, 102, 60, 89, 59, 74, 68, 36, 87, 63, 62, 76, 68, 96, 148, 69, 57, 63, 64, 60, 64, 69, 87, 62, 66, 67, 60, 58, 78, 48, 41, 90, 57, 107, 85, 83, 79, 61, 71, 73, 44, 61, 76, 64, 91, 65, 76, 75, 70, 75, 60, 68, 69, 81, 74, 49, 66, 60, 86, 98, 72, 58, 63, 51, 58, 43, 81, 57, 77, 59, 64, 82, 44, 58, 63, 52, 53, 59, 57, 73, 56, 67, 65, 54, 71, 60, 53, 60, 63, 59, 91, 54, 59, 67, 68, 51, 53, 62, 36, 125, 63, 56, 75, 68, 63, 83, 75, 57, 72, 69, 78, 72, 68, 81, 60, 59, 59, 65, 66, 60, 59, 66, 64, 58, 60, 69, 66, 61, 61, 54, 68, 68, 59, 65, 54, 57, 58, 54, 75, 68, 65, 58, 58, 68, 75, 90, 54, 62, 63, 46, 90, 76, 54, 67, 62, 66, 55, 114, 52, 62, 53, 62, 63, 77, 79, 66, 46, 86, 58, 64, 66, 72, 98, 82, 72, 61, 64, 63, 58, 83, 62, 40, 52, 74, 64, 68, 73, 83, 60, 56, 83, 65, 72, 66, 62, 52, 60, 63, 59, 63, 57, 92, 71, 69, 60, 44, 43, 109, 31, 65, 63, 77, 80, 69, 52, 56, 54, 58, 70, 67, 83, 46, 69, 57, 129, 58, 92, 76, 84, 54, 80, 58, 93, 64, 61, 56, 66, 73, 63, 48, 70, 48, 62, 85, 78, 70, 59, 53, 83, 74, 73, 55, 61, 61, 43, 64, 54, 50, 39, 60, 73, 105, 62, 55, 89, 110, 74, 66, 69, 60, 54, 86, 75, 61, 60, 58, 122, 61, 92, 64, 61, 55, 96, 75, 107, 57, 56, 76, 78, 51, 68, 58, 62, 70, 55, 73, 59, 72, 86, 53, 73, 65, 38, 84, 59, 58, 119, 108, 65, 59, 65, 69, 58, 49, 64, 50, 60, 86, 56, 75, 79, 65, 62, 74, 60, 68, 59, 57, 57, 105, 50, 49, 52, 55, 49, 83, 79, 51, 58, 78, 73, 65, 59, 44, 69, 67, 69, 78, 64, 79, 57, 74, 86, 72, 63, 69, 70, 61, 70, 65, 50, 85, 59, 78, 66, 63, 79, 83, 69, 65, 43, 64, 63, 85, 71, 75, 137, 90, 59, 63, 41, 77, 57, 83, 53, 65, 79, 80, 56, 59, 57, 56, 68, 54, 58, 53, 74, 41, 51, 52, 50, 86, 53, 102, 79, 55, 43, 55, 61, 68, 68, 64, 78, 82, 59, 73, 72, 130, 56, 59, 83, 70, 64, 51, 74, 68, 78, 74, 87, 76, 68, 63, 78, 66, 76, 73, 64, 55, 46, 67, 47, 69, 70, 62, 55, 78, 72, 56, 57, 71, 69, 82, 67, 68, 68, 69, 52, 55, 31, 75, 72, 71, 72, 50, 69, 104, 69, 45, 96, 75, 63, 77, 78, 45, 102, 53, 93, 57, 68, 63, 75, 58, 113, 66, 53, 59, 63, 61, 63, 81, 61, 64, 56, 84, 82, 74, 57, 54, 58, 43, 91, 62, 49, 70, 73, 54, 51, 58, 59, 51, 50, 88, 53, 71, 72, 54, 67, 101, 64, 57, 62, 74, 57, 62, 66, 108, 50, 42, 75, 62, 67, 48, 53, 50, 58, 75, 97, 97, 66, 84, 76, 71, 77, 50, 67, 77, 89, 55, 70, 62, 57, 56, 60, 67, 113, 75, 58, 64, 55, 61, 61, 62, 53, 79, 75, 73, 66, 45, 72, 57, 56, 89, 54, 68, 50, 70, 52, 55, 45, 61, 59, 105, 76, 84, 63, 55, 75, 56, 68, 53, 112, 79, 74, 86, 60, 69, 75, 66, 73, 79, 72, 77, 68, 67, 73, 71, 62, 88, 74, 72, 54, 61, 52, 40, 64, 57, 78, 50, 56, 75, 46, 69, 50, 88, 60, 69, 56, 67, 50, 63, 61, 83, 62, 67, 71, 76, 57, 65, 61, 71, 72, 55, 43, 68, 65, 55, 44, 57, 63, 56, 77, 90, 76, 49, 78, 60, 63, 67, 70, 57, 70, 49, 71, 59, 77, 60, 71, 76, 53, 77, 71, 69, 68, 64, 75, 47, 86, 53, 67, 77, 72, 59, 52, 72, 71, 93, 53, 55, 88, 54, 48, 69, 83, 45, 50, 51, 59, 86, 78, 55, 64, 79, 53, 75, 52, 66, 64, 59, 82, 74, 68, 71, 47, 69, 70, 56, 74, 64, 80, 83, 58, 87, 60, 56, 58, 62, 59, 95, 65, 73, 86, 51, 100, 70, 67, 86, 62, 74, 54, 47, 52, 53, 65, 58, 74, 60, 60, 65, 51, 78, 56, 70, 90, 108, 64, 83, 57, 61, 66, 51, 73, 42, 59, 69, 48, 66, 63, 65, 49, 69, 55, 61, 59, 72, 62, 67, 55, 43, 43, 60, 72, 88, 58, 48, 69, 69, 63, 59, 70, 59, 101, 83, 70, 63, 77, 75, 68, 57, 45, 67, 58, 84, 61, 97, 35, 45, 46, 67, 84, 65, 64, 53, 96, 76, 59, 64, 46, 89, 69, 72, 60, 100, 62, 73, 56, 57, 62, 63, 48, 57, 65, 69, 71, 59, 75, 67, 53, 60, 73, 65, 91, 69, 62, 46, 58, 59, 69, 57, 62, 48, 72, 60, 68, 42, 48, 78, 50, 71, 62, 73, 61, 92, 56, 56, 80, 77, 58, 72, 66, 57, 37, 59, 95, 57, 72, 63, 60, 58, 68, 72, 51, 71, 55, 58, 51, 57, 66, 74, 68, 80, 52, 55, 65, 88, 59, 62, 66, 66, 62, 63, 49, 47, 66, 66, 65, 81, 60, 44, 82, 45, 51, 84, 69, 57, 74, 77, 42, 85, 76, 69, 72, 49, 58, 73, 71, 49, 66, 86, 77, 62, 73, 82, 66, 52, 75, 69, 66, 67, 63, 56, 70, 66, 66, 53, 54, 83, 72, 51, 63, 59, 57, 56, 71, 69, 59, 52, 70, 59, 57, 60, 61, 80, 66, 76, 61, 55, 116, 55, 63, 52, 45, 55, 73, 55, 59, 76, 61, 50, 64, 62, 59, 81, 111, 74, 54, 122, 52, 57, 56, 80, 49, 81, 101, 84, 42, 67, 65, 76, 60, 51, 62, 81, 73, 64, 47, 50, 49, 102, 50, 74, 62, 60, 78, 48, 106, 64, 72, 64, 66, 59, 58, 39, 58, 72, 64, 63, 39, 78, 73, 55, 68, 55, 62, 69, 63, 72, 51, 83, 133, 57, 66, 65, 85, 58, 53, 51, 85, 67, 58, 71, 48, 71, 81, 55, 66, 58, 55, 73, 104, 80, 58, 47, 55, 99, 63, 66, 62, 68, 79, 70, 102, 55, 52, 55, 78, 58, 76, 43, 46, 78, 63, 73, 85, 66, 39, 59, 61, 64, 71, 60, 81, 82, 68, 63, 47, 59, 57, 68, 79, 64, 52, 66, 59, 69, 67, 88, 58, 72, 60, 80, 57, 52, 65, 84, 68, 70, 75, 74, 73, 71, 65, 56, 31, 91, 40, 60, 53, 59, 53, 67, 74, 96, 82, 73, 97, 70, 58, 68, 59, 55, 85, 58, 69, 58, 68, 104, 58, 62, 63, 79, 63, 72, 50, 76, 62, 72, 52, 83, 62, 59, 66, 43, 84, 99, 63, 50, 50, 60, 76, 63, 57, 104, 72, 54, 80, 51, 57, 63, 60, 64, 53, 115, 45, 65, 58, 57, 79, 68, 61, 102, 70, 76, 80, 44, 55, 74, 51, 125, 61, 63, 58, 55, 66, 64, 51, 51, 50, 61, 60, 52, 70, 64, 53, 54, 56, 69, 58, 57, 52, 81, 57, 67, 82, 63, 62, 64, 70, 65, 63, 63, 59, 103, 54, 64, 64, 46, 65, 60, 52, 71, 57, 60, 74, 55, 99, 67, 52, 59, 101, 66, 42, 63, 72, 69, 94, 63, 72, 64, 66, 52, 62, 59, 73, 92, 41, 63, 66, 53, 87, 50, 62, 69, 53, 70, 86, 64, 51, 73, 68, 52, 58, 52, 84, 49, 54, 111, 55, 73, 66, 92, 48, 62, 50, 65, 80, 70, 73, 83, 81, 93, 65, 67, 89, 71, 59, 60, 63, 66, 51, 49, 82, 68, 61, 49, 84, 59, 62, 80, 55, 64, 54, 75, 59, 63, 51, 53, 61, 79, 62, 61, 68, 64, 64, 59, 61, 69, 73, 66, 48, 53, 89, 84, 56, 76, 90, 66, 53, 51, 81, 57, 79, 80, 69, 42, 72, 51, 63, 81, 67, 67, 55, 59, 57, 57, 63, 61, 95, 52, 72, 66, 84, 84, 50, 94, 58, 49, 60, 86, 58, 50, 120, 40, 79, 60, 61, 81, 58, 78, 74, 62, 62, 88, 63, 59, 63, 61, 46, 69, 56, 50, 112, 86, 59, 78, 58, 56, 66, 53, 83, 63, 100, 81, 49, 65, 51, 46, 54, 61, 52, 57, 76, 49, 55, 57, 48, 85, 69, 102, 71, 56, 64, 69, 95, 58, 66, 80, 75, 29, 53, 81, 73, 74, 50, 49, 55, 61, 57, 80, 55, 54, 60, 61, 66, 55, 53, 60, 64, 78, 75, 73, 74, 65, 63, 52, 71, 76, 71, 54, 48, 74, 59, 77, 67, 62, 43, 64, 64, 55, 79, 51, 56, 69, 66, 65, 70, 54, 69, 91, 62, 145, 65, 55, 72, 59, 56, 70, 67, 66, 59, 58, 113, 94, 65, 61, 60, 64, 64, 61, 64, 47, 57, 63, 53, 59, 72, 78, 61, 89, 75, 50, 58, 54, 38, 71, 89, 52, 56, 90, 54, 72, 46, 79, 58, 53, 61, 79, 74, 61, 68, 80, 52, 63, 69, 57, 61, 65, 53, 60, 59, 49, 66, 46, 78, 54, 62, 67, 65, 58, 67, 70, 60, 60, 90, 57, 60, 45, 63, 56, 60, 64, 70, 79, 56, 71, 52, 66, 50, 95, 133, 76, 58, 73, 53, 58, 64, 59, 47, 71, 51, 41, 64, 76, 74, 61, 81, 53, 61, 67, 69, 59, 64, 75, 62, 67, 54, 53, 43, 98, 87, 58, 56, 64, 59, 64, 104, 74, 97, 86, 62, 65, 84, 87, 93, 61, 64, 56, 64, 66, 53, 60, 60, 101, 62, 79, 62, 76, 80, 55, 47, 62, 65, 73, 62, 76, 70, 66, 58, 98, 63, 79, 71, 93, 77, 79, 88, 62, 50, 61, 62, 66, 62, 62, 69, 61, 59, 61, 76, 69, 55, 61, 55, 50, 67, 59, 71, 57, 72, 63, 60, 59, 72, 63, 74, 58, 59, 88, 57, 66, 79, 80, 70, 74, 56, 62, 49, 52, 72, 58, 82, 65, 72, 64, 61, 68, 55, 47, 64, 80, 61, 72, 53, 65, 60, 73, 70, 99, 79, 68, 67, 61, 57, 72, 62, 78, 77, 75, 64, 68, 84, 73, 66, 106, 79, 77, 58, 69, 69, 60, 54, 59, 67, 64, 76, 60, 119, 60, 55, 69, 71, 65, 67, 72, 81, 59, 61, 99, 100, 58, 58, 59, 55, 45, 73, 55, 81, 59, 41, 63, 57, 65, 60, 55, 55, 60, 70, 78, 82, 98, 64, 60, 55, 53, 46, 65, 68, 67, 57, 63, 62, 64, 60, 64, 64, 68, 55, 53, 49, 62, 100, 55, 68, 69, 64, 71, 52, 99, 61, 57, 68, 50, 63, 51, 73, 52, 82, 84, 54, 61, 37, 60, 60, 59, 47, 57, 90, 70, 66, 91, 69, 50, 36, 66, 65, 115, 59, 50, 57, 71, 47, 57, 62, 75, 70, 82, 69, 74, 60, 100, 33, 79, 73, 87, 97, 71, 53, 68, 50, 68, 60, 57, 72, 63, 77, 56, 52, 50, 62, 67, 68, 64, 43, 56, 66, 46, 68, 61, 61, 59, 59, 65, 85, 57, 63, 55, 56, 68, 93, 69, 92, 62, 56, 78, 59, 60, 65, 72, 66, 68, 63, 51, 81, 59, 59, 71, 49, 62, 74, 76, 76, 78, 72, 66, 74, 69, 77, 58, 84, 66, 57, 77, 78, 58, 78, 78, 60, 49, 56, 70, 59, 71, 61, 66, 63, 73, 95, 103, 67, 48, 73, 75, 72, 48, 55, 59, 38, 51, 62, 79, 65, 59, 70, 63, 58, 66, 67, 64, 105, 60, 57, 66, 68, 63, 86, 84, 52, 65, 71, 68, 54, 59, 59, 60, 60, 62, 58, 74, 77, 63, 55, 62, 83, 51, 50, 62, 59, 91, 60, 50, 59, 59, 103, 50, 59, 77, 43, 58, 66, 78, 54, 66, 82, 71, 64, 50, 58, 67, 102, 46, 78, 127, 72, 76, 66, 75, 81, 63, 58, 63, 57, 66, 53, 80, 51, 54, 53, 56, 59, 66, 67, 54, 53, 63, 66, 77, 64, 58, 59, 69, 60, 66, 63, 48, 60, 51, 54, 50, 54, 74, 80, 60, 66, 50, 81, 67, 68, 59, 57, 60, 57, 70, 62, 56, 147, 56, 86, 48, 66, 72, 59, 60, 64, 58, 60, 61, 63, 67, 61, 52, 62, 60, 53, 113, 101, 45, 60, 51, 56, 104, 64, 56, 50, 54, 55, 74, 62, 56, 78, 73, 63, 68, 50, 69, 60, 68, 69, 52, 72, 51, 59, 61, 66, 55, 56, 83, 52, 57, 61, 55, 53, 74, 66, 54, 65, 59, 72, 54, 52, 51, 54, 69, 67, 50, 64, 63, 72, 64, 72, 62, 48, 59, 69, 75, 52, 78, 57, 59, 58, 91, 70, 49, 68, 57, 56, 64, 66, 67, 68, 48, 89, 63, 68, 69, 70, 65, 73, 68, 60, 43, 70, 103, 48, 55, 72, 64, 67, 60, 76, 57, 78, 64, 60, 65, 67, 66, 61, 48, 70, 94, 66, 73, 72, 84, 87, 77, 64, 67, 63, 61, 62, 101, 58, 64, 58, 53, 59, 73, 68, 65, 62, 71, 83, 74, 75, 69, 54, 61, 110, 74, 64, 43, 68, 124, 58, 53, 55, 66, 59, 87, 57, 45, 79, 59, 50, 60, 63, 61, 60, 75, 82, 70, 77, 47, 61, 67, 50, 55, 64, 54, 78, 59, 60, 64, 63, 56, 61, 149, 55, 62, 90, 78, 84, 62, 59, 77, 67, 65, 58, 62, 72, 65, 51, 74, 102, 59, 63, 72, 55, 60, 101, 59, 74, 53, 69, 58, 78, 62, 61, 77, 55, 66, 63, 52, 82, 59, 97, 88, 69, 69, 47, 60, 62, 64, 54, 69, 71, 65, 87, 50, 70, 118, 61, 69, 72, 118, 74, 56, 78, 63, 56, 51, 81, 49, 54, 73, 57, 73, 72, 70, 59, 64, 84, 56, 51, 63, 63, 62, 74, 58, 69, 70, 55, 50, 52, 63, 62, 69, 55, 67, 60, 64, 62, 126, 53, 72, 92, 72, 53, 64, 58, 71, 61, 57, 64, 55, 64, 52, 55, 84, 116, 67, 64, 75, 67, 56, 74, 66, 59, 69, 61, 70, 57, 57, 58, 57, 71, 62, 65, 62, 62, 58, 52, 76, 86, 46, 71, 62, 57, 42, 76, 89, 68, 52, 74, 46, 104, 71, 59, 67, 64, 79, 74, 56, 51, 74, 61, 62, 74, 58, 67, 89, 61, 74, 64, 60, 48, 66, 62, 63, 63, 77, 57, 100, 85, 56, 75, 83, 54, 57, 70, 73, 67, 54, 58, 73, 57, 61, 62, 71, 67, 70, 62, 58, 69, 61, 53, 56, 33, 66, 51, 65, 116, 64, 64, 55, 91, 71, 59, 72, 63, 70, 65, 71, 50, 85, 81, 59, 66, 56, 62, 58, 80, 65, 51, 75, 54, 56, 63, 61, 74, 65, 63, 62, 62, 47, 60, 50, 83, 58, 78, 73, 63, 71, 57, 78, 71, 61, 55, 68, 93, 64, 72, 99, 88, 111, 67, 60, 68, 59, 66, 66, 64, 82, 62, 60, 91, 78, 62, 62, 65, 81, 64, 59, 59, 60, 68, 49, 55, 57, 69, 87, 63, 72, 62, 68, 59, 54, 83, 65, 76, 54, 55, 63, 55, 68, 83, 62, 50, 57, 61, 59, 56, 51, 71, 73, 57, 48, 56, 59, 60, 54, 63, 60, 70, 50, 48, 80, 65, 85, 81, 56, 47, 71, 65, 67, 54, 51, 64, 82, 70, 60, 50, 67, 62, 59, 40, 77, 66, 63, 89, 67, 52, 87, 77, 59, 63, 60, 58, 55, 67, 71, 56, 66, 77, 65, 69, 55, 96, 55, 56, 49, 74, 66, 57, 68, 58, 58, 67, 67, 66, 58, 93, 56, 45, 61, 77, 62, 65, 63, 107, 66, 71, 64, 71, 49, 41, 68, 71, 83, 46, 50, 55, 73, 68, 82, 56, 80, 50, 62, 60, 64, 51, 62, 57, 51, 60, 62, 65, 102, 72, 97, 60, 68, 64, 61, 78, 61, 74, 66, 56, 65, 49, 74, 71, 65, 51, 75, 67, 49, 82, 47, 71, 70, 96, 62, 55, 74, 55, 59, 77, 63, 69, 69, 79, 59, 59, 45, 85, 69, 71, 53, 55, 71, 54, 55, 53, 87, 85, 71, 62, 72, 63, 52, 69, 50, 61, 42, 62, 82, 71, 57, 59, 60, 62, 65, 70, 59, 60, 71, 64, 64, 45, 84, 71, 48, 87, 100, 65, 79, 64, 63, 62, 64, 61, 56, 50, 69, 61, 77, 64, 90, 91, 62, 62, 82, 95, 65, 38, 56, 73, 62, 64, 69, 85, 63, 66, 61, 90, 55, 69, 86, 64, 77, 65, 62, 64, 83, 67, 96, 64, 75, 94, 58, 53, 41, 64, 82, 71, 48, 57, 62, 77, 110, 56, 85, 51, 67, 52, 58, 66, 91, 60, 118, 60, 62, 69, 75, 70, 48, 91, 79, 73, 59, 77, 85, 48, 71, 76, 64, 73, 86, 70, 67, 62, 66, 60, 64, 66, 68, 64, 74, 48, 49, 85, 71, 76, 64, 63, 62, 73, 63, 65, 103, 52, 73, 61, 75, 82, 91, 55, 67, 73, 63, 73, 53, 61, 52, 105, 81, 77, 67, 85, 50, 58, 82, 55, 89, 82, 54, 68, 65, 72, 56, 66, 65, 60, 87, 54, 60, 82, 78, 69, 58, 51, 49, 93, 68, 52, 64, 64, 48, 62, 67, 64, 66, 37, 86, 80, 57, 77, 80, 81, 75, 74, 77, 57, 66, 67, 55, 56, 55, 101, 70, 67, 76, 56, 55, 42, 57, 65, 58, 53, 65, 50, 60, 66, 54, 50, 50, 68, 60, 63, 81, 66, 79, 64, 52, 70, 44, 60, 79, 65, 58, 70, 58, 59, 58, 87, 37, 43, 83, 56, 62, 59, 52, 98, 70, 63, 68, 57, 60, 76, 63, 69, 61, 80, 54, 74, 66, 56, 62, 64, 61, 63, 59, 66, 67, 52, 72, 53, 46, 87, 59, 54, 48, 55, 47, 53, 69, 88, 60, 85, 71, 81, 67, 72, 75, 73, 49, 63, 60, 52, 63, 66, 58, 53, 89, 48, 61, 69, 75, 47, 135, 77, 49, 53, 64, 62, 63, 63, 72, 60, 69, 114, 103, 96, 54, 50, 84, 57, 54, 57, 77, 57, 49, 70, 67, 51, 65, 65, 58, 56, 66, 69, 62, 52, 107, 68, 50, 82, 51, 67, 66, 88, 74, 64, 77, 57, 67, 68, 55, 56, 63, 102, 63, 46, 53, 54, 53, 83, 62, 54, 61, 66, 57, 69, 65, 175, 51, 52, 48, 73, 67, 71, 68, 73, 66, 58, 70, 80, 66, 99, 57, 63, 52, 78, 90, 72, 72, 61, 71, 78, 96, 63, 65, 66, 66, 66, 67, 71, 67, 58, 56, 54, 62, 46, 68, 54, 68, 66, 50, 88, 38, 51, 75, 66, 60, 95, 97, 65, 72, 62, 59, 59, 42, 59, 56, 72, 53, 71, 60, 51, 63, 53, 55, 58, 77, 67, 55, 48, 53, 75, 88, 53, 91, 61, 109, 60, 62, 48, 54, 72, 67, 68, 47, 91, 60, 52, 80, 52, 51, 67, 60, 96, 82, 70, 44, 82, 80, 74, 82, 67, 51, 63, 71, 74, 69, 62, 53, 50, 60, 80, 61, 64, 53, 69, 92, 57, 54, 52, 57, 55, 55, 49, 50, 65, 66, 66, 60, 81, 68, 52, 81, 82, 93, 51, 47, 63, 69, 75, 53, 67, 53, 71, 73, 64, 70, 99, 76, 55, 63, 64, 58, 66, 88, 43, 100, 61, 55, 67, 71, 50, 84, 59, 86, 96, 62, 62, 61, 39, 61, 55, 75, 65, 71, 56, 64, 57, 45, 96, 65, 69, 50, 65, 63, 47, 67, 77, 71, 57, 105, 60, 58, 59, 45, 59, 83, 56, 54, 60, 67, 55, 70, 89, 79, 66, 52, 80, 73, 66, 68, 57, 51, 87, 55, 55, 53, 52, 73, 51, 66, 65, 44, 79, 56, 84, 58, 57, 68, 68, 67, 71, 91, 60, 57, 60, 56, 74, 40, 63, 49, 78, 73, 68, 109, 66, 58, 72, 86, 55, 84, 55, 77, 53, 63, 81, 92, 55, 110, 64, 62, 86, 71, 65, 82, 75, 68, 62, 53, 65, 90, 58, 62, 74, 57, 58, 74, 73, 77, 78, 66, 50, 96, 78, 65, 80, 51, 62, 44, 81, 78, 52, 49, 68, 64, 58, 62, 46, 69, 70, 61, 66, 90, 98, 51, 52, 69, 55, 67, 70, 55, 70, 66, 52, 63, 76, 45, 71, 72, 48, 63, 54, 48, 71, 60, 59, 52, 58, 67, 76, 47, 80, 55, 66, 60, 79, 57, 63, 43, 46, 76, 87, 57, 82, 79, 58, 58, 64, 67, 54, 50, 82, 62, 58, 68, 71, 59, 74, 58, 77, 60, 62, 61, 63, 45, 74, 81, 54, 56, 61, 48, 72, 62, 65, 53, 69, 86, 52, 54, 58, 49, 57, 60, 47, 71, 65, 73, 65, 58, 63, 59, 61, 51, 67, 52, 106, 50, 56, 52, 66, 68, 58, 79, 78, 78, 60, 56, 99, 49, 87, 109, 49, 112, 66, 75, 69, 55, 64, 71, 46, 65, 85, 58, 60, 54, 69, 74, 68, 82, 66, 62, 71, 76, 51, 81, 53, 104, 74, 49, 53, 69, 72, 67, 55, 49, 59, 72, 47, 126, 45, 76, 49, 72, 70, 63, 85, 56, 107, 69, 108, 78, 45, 63, 60, 68, 57, 89, 63, 43, 71, 60, 76, 65, 58, 46, 46, 86, 62, 72, 69, 56, 56, 46, 64, 96, 78, 67, 49, 52, 61, 61, 83, 60, 65, 71, 69, 74, 74, 77, 70, 49, 63, 62, 44, 60, 68, 54, 39, 66, 60, 70, 93, 53, 76, 59, 56, 69, 68, 77, 48, 60, 59, 58, 100, 75, 115, 46, 62, 72, 86, 81, 51, 46, 45, 64, 52, 75, 60, 63, 70, 59, 75, 54, 67, 54, 71, 62, 47, 72, 73, 61, 64, 50, 71, 96, 54, 68, 45, 53, 52, 42, 68, 49, 65, 22, 70, 80, 68, 50, 89, 60, 64, 49, 62, 70, 91, 69, 60, 40, 62, 76, 70, 121, 80, 53, 84, 66, 77, 68, 55, 71, 88, 68, 43, 62, 69, 62, 72, 63, 60, 70, 48, 49, 64, 107, 49, 71, 60, 55, 63, 64, 80, 65, 53, 60, 60, 71, 70, 52, 64, 59, 61, 50, 78, 57, 69, 50, 93, 70, 41, 65, 63, 55, 69, 80, 59, 59, 57, 64, 63, 47, 86, 53, 58, 61, 65, 63, 44, 76, 52, 109, 90, 58, 57, 71, 53, 57, 88, 73, 61, 76, 54, 73, 62, 73, 58, 43, 71, 51, 64, 68, 84, 53, 60, 54, 45, 72, 56, 60, 97, 112, 50, 57, 72, 59, 57, 71, 68, 53, 69, 54, 58, 80, 62, 78, 69, 49, 56, 92, 95, 70, 55, 56, 54, 50, 59, 56, 84, 65, 50, 80, 76, 65, 66, 58, 70, 69, 67, 55, 59, 52, 79, 75, 69, 64, 114, 56, 71, 56, 54, 71, 82, 68, 64, 54, 76, 94, 59, 78, 56, 59, 67, 57, 58, 61, 51, 103, 52, 53, 71, 45, 73, 49, 98, 69, 56, 66, 67, 66, 58, 85, 66, 70, 76, 79, 70, 50, 72, 73, 33, 57, 67, 69, 70, 63, 67, 57, 50, 77, 55, 56, 63, 53, 84, 53, 59, 112, 73, 75, 57, 70, 73, 99, 56, 68, 63, 63, 66, 68, 55, 70, 87, 53, 60, 52, 54, 73, 73, 86, 48, 73, 80, 51, 65, 55, 61, 67, 42, 61, 72, 70, 80, 59, 107, 54, 71, 69, 62, 61, 90, 67, 52, 62, 51, 52, 75, 65, 59, 38, 48, 78, 72, 60, 68, 66, 75, 62, 62, 77, 57, 66, 77, 49, 62, 61, 90, 65, 51, 82, 73, 59, 55, 51, 75, 60, 70, 53, 41, 50, 55, 43, 48, 68, 65, 67, 89, 82, 64, 91, 56, 72, 63, 49, 58, 80, 68, 61, 53, 55, 52, 55, 103, 61, 66, 82, 49, 57, 58, 55, 50, 45, 43, 76, 64, 63, 59, 57, 65, 62, 53, 45, 64, 61, 73, 71, 62, 58, 68, 52, 84, 64, 73, 77, 69, 54, 93, 65, 57, 68, 55, 64, 54, 70, 57, 62, 79, 74, 80, 65, 59, 63, 89, 53, 64, 40, 62, 57, 52, 69, 72, 72, 54, 49, 69, 61, 56, 126, 60, 63, 53, 68, 54, 72, 49, 76, 77, 67, 69, 98, 106, 58, 58, 67, 70, 46, 55, 76, 60, 52, 45, 66, 76, 40, 54, 84, 58, 67, 68, 63, 63, 114, 60, 65, 65, 55, 55, 69, 95, 60, 34, 48, 74, 76, 71, 63, 65, 56, 105, 60, 45, 65, 59, 48, 75, 49, 64, 60, 72, 62, 58, 72, 154, 66, 70, 53, 96, 71, 55, 63, 71, 71, 63, 88, 42, 78, 112, 52, 60, 51, 67, 62, 91, 66, 49, 77, 62, 75, 55, 77, 63, 66, 80, 55, 98, 57, 75, 90, 71, 68, 64, 65, 52, 69, 58, 61, 87, 67, 69, 57, 58, 75, 92, 84, 76, 58, 57, 53, 59, 46, 78, 49, 55, 59, 58, 65, 57, 45, 62, 44, 47, 76, 61, 65, 64, 64, 86, 58, 61, 106, 63, 107, 71, 54, 52, 46, 80, 70, 37, 56, 82, 47, 59, 86, 49, 54, 49, 63, 76, 63, 92, 63, 69, 73, 67, 61, 73, 66, 84, 74, 78, 55, 80, 57, 72, 53, 79, 50, 55, 61, 61, 67, 48, 46, 63, 53, 69, 65, 71, 74, 67, 83, 80, 57, 96, 40, 71, 76, 71, 66, 41, 58, 76, 51, 54, 62, 67, 60, 52, 90, 53, 63, 85, 82, 74, 53, 54, 61, 57, 80, 71, 91, 57, 58, 47, 55, 53, 74, 52, 65, 80, 65, 64, 65, 69, 44, 64, 76, 62, 79, 78, 70, 71, 75, 67, 51, 66, 70, 90, 64, 66, 60, 66, 69, 51, 107, 55, 55, 62, 63, 80, 95, 70, 61, 71, 61, 66, 52, 88, 60, 63, 54, 69, 63, 72, 56, 89, 52, 91, 53, 55, 58, 48, 78, 57, 61, 61, 55, 97, 79, 94, 54, 73, 58, 90, 57, 73, 67, 66, 53, 53, 67, 68, 64, 65, 75, 85, 59, 88, 129, 49, 57, 60, 84, 53, 54, 82, 55, 76, 86, 69, 71, 57, 110, 63, 60, 89, 76, 54, 51, 81, 57, 63, 73, 68, 82, 93, 48, 71, 57, 69, 58, 67, 58, 55, 60, 75, 35, 69, 79, 82, 51, 48, 66, 63, 64, 69, 69, 68, 64, 47, 52, 58, 52, 48, 57, 53, 79, 108, 57, 56, 78, 64, 66, 67, 56, 63, 51, 64, 49, 73, 53, 64, 94, 72, 58, 64, 55, 67, 67, 50, 63, 55, 58, 68, 71, 76, 63, 70, 59, 79, 72, 58, 57, 42, 61, 71, 75, 52, 86, 62, 53, 66, 57, 59, 59, 77, 61, 60, 76, 47, 58, 52, 55, 78, 62, 69, 47, 76, 45, 61, 83, 46, 64, 69, 51, 51, 64, 75, 72, 64, 44, 76, 57, 46, 63, 58, 66, 60, 80, 67, 61, 65, 55, 79, 68, 49, 62, 88, 55, 96, 60, 80, 56, 65, 66, 71, 63, 62, 55, 66, 84, 52, 76, 74, 87, 53, 61, 46, 66, 68, 56, 59, 70, 57, 57, 68, 75, 54, 64, 62, 87, 68, 82, 70, 56, 54, 59, 58, 72, 63, 129, 78, 66, 47, 93, 60, 58, 91, 49, 61, 58, 56, 121, 60, 84, 56, 68, 73, 79, 65, 80, 99, 69, 117, 55, 63, 69, 53, 54, 51, 85, 71, 50, 56, 53, 83, 52, 68, 67, 52, 51, 61, 70, 66, 52, 46, 55, 78, 82, 78, 63, 57, 62, 57, 66, 57, 65, 62, 57, 70, 61, 55, 75, 53, 64, 61, 70, 56, 56, 55, 66, 66, 82, 52, 67, 93, 63, 59, 55, 58, 59, 73, 87, 57, 72, 69, 73, 94, 80, 107, 48, 68, 60, 37, 69, 68, 65, 74, 71, 69, 64, 57, 56, 63, 62, 62, 61, 56, 57, 73, 54, 41, 49, 60, 50, 80, 53, 59, 44, 60, 68, 53, 66, 65, 63, 66, 72, 61, 84, 81, 83, 70, 73, 74, 59, 80, 61, 67, 80, 91, 42, 74, 61, 59, 66, 80, 109, 61, 52, 84, 58, 69, 61, 51, 74, 85, 75, 63, 66, 69, 50, 83, 52, 59, 85, 78, 64, 57, 82, 68, 52, 72, 71, 74, 62, 75, 70, 61, 59, 54, 63, 61, 47, 53, 62, 68, 51, 60, 56, 65, 64, 46, 53, 47, 66, 59, 64, 66, 42, 60, 66, 57, 49, 68, 64, 70, 77, 71, 66, 57, 66, 66, 60, 64, 102, 70, 64, 50, 55, 55, 59, 66, 71, 52, 78, 47, 57, 66, 64, 71, 51, 65, 47, 83, 83, 64, 58, 85, 94, 43, 58, 68, 59, 78, 115, 58, 83, 58, 50, 86, 65, 60, 49, 55, 56, 71, 53, 62, 78, 68, 68, 57, 105, 78, 55, 86, 75, 60, 64, 68, 49, 101, 83, 58, 66, 84, 59, 60, 65, 65, 79, 61, 66, 45, 73, 83, 53, 46, 53, 71, 62, 50, 54, 55, 66, 84, 48, 66, 60, 61, 47, 58, 65, 69, 53, 90, 79, 74, 77, 68, 123, 54, 71, 52, 58, 85, 49, 85, 86, 51, 44, 95, 66, 63, 55, 62, 66, 74, 54, 62, 83, 60, 58, 55, 51, 61, 45, 90, 53, 62, 62, 61, 89, 77, 58, 59, 54, 78, 80, 54, 132, 68, 62, 50, 69, 61, 94, 55, 51, 48, 56, 67, 68, 81, 71, 58, 50, 67, 54, 60, 94, 70, 95, 52, 85, 65, 62, 48, 54, 55, 87, 72, 42, 60, 57, 55, 51, 82, 72, 61, 52, 60, 52, 76, 64, 56, 62, 82, 56, 55, 47, 58, 68, 75, 55, 59, 64, 68, 61, 63, 100, 59, 62, 76, 75, 86, 61, 79, 65, 82, 62, 65, 44, 63, 54, 52, 74, 63, 69, 49, 69, 68, 64, 69, 46, 62, 54, 69, 59, 54, 69, 60, 89, 75, 50, 51, 49, 64, 79, 73, 70, 64, 54, 54, 62, 90, 60, 62, 80, 64, 70, 75, 58, 65, 66, 58, 68, 103, 63, 53, 54, 61, 58, 57, 40, 75, 62, 66, 75, 83, 62, 80, 68, 65, 62, 63, 63, 61, 60, 56, 38, 50, 72, 51, 58, 51, 60, 64, 67, 54, 55, 87, 57, 58, 66, 70, 52, 66, 81, 54, 44, 53, 62, 64, 47, 71, 74, 55, 66, 39, 142, 72, 45, 55, 61, 55, 69, 73, 68, 104, 67, 67, 70, 74, 56, 50, 71, 53, 60, 70, 60, 60, 49, 58, 85, 73, 59, 61, 70, 55, 65, 79, 59, 58, 110, 64, 85, 64, 63, 70, 66, 63, 68, 89, 59, 58, 72, 63, 80, 57, 66, 53, 64, 48, 64, 66, 42, 48, 79, 90, 88, 59, 84, 50, 66, 133, 55, 82, 58, 98, 84, 57, 60, 65, 70, 66, 64, 52, 73, 73, 56, 68, 52, 49, 62, 141, 94, 51, 63, 39, 83, 61, 62, 74, 58, 56, 67, 79, 59, 65, 100, 55, 55, 68, 58, 69, 69, 51, 67, 78, 85, 59, 61, 61, 80, 61, 65, 71, 58, 71, 55, 60, 63, 81, 69, 47, 60, 62, 93, 60, 71, 62, 52, 66, 99, 61, 74, 59, 54, 65, 69, 54, 70, 59, 96, 64, 70, 57, 59, 70, 57, 59, 78, 73, 50, 54, 63, 72, 54, 82, 58, 73, 53, 101, 81, 60, 88, 58, 62, 55, 60, 66, 64, 67, 62, 65, 54, 68, 78, 64, 64, 69, 58, 59, 54, 61, 68, 72, 50, 63, 49, 74, 89, 60, 63, 69, 94, 79, 65, 57, 102, 52, 53, 87, 40, 79, 65, 63, 51, 72, 35, 62, 60, 72, 84, 73, 74, 65, 60, 60, 56, 54, 62, 78, 118, 40, 64, 54, 58, 45, 60, 69, 61, 79, 71, 54, 55, 60, 53, 53, 78, 66, 64, 101, 86, 64, 65, 47, 62, 52, 60, 49, 66, 67, 74, 55, 67, 55, 79, 57, 53, 86, 67, 50, 86, 63, 46, 95, 67, 61, 54, 76, 56, 64, 77, 70, 89, 75, 51, 57, 63, 86, 58, 55, 72, 75, 67, 41, 66, 59, 82, 65, 66, 72, 65, 59, 59, 51, 60, 60, 66, 68, 67, 71, 66, 63, 55, 61, 67, 90, 75, 65, 105, 56, 55, 68, 64, 59, 62, 96, 62, 70, 44, 66, 63, 60, 99, 49, 64, 119, 69, 53, 60, 63, 67, 74, 59, 65, 70, 80, 63, 63, 46, 60, 64, 48, 45, 79, 65, 81, 43, 82, 66, 51, 79, 85, 73, 61, 62, 66, 91, 51, 72, 45, 64, 58, 46, 51, 86, 75, 68, 115, 60, 60, 78, 62, 51, 73, 70, 61, 55, 61, 62, 71, 62, 76, 63, 66, 55, 51, 55, 55, 63, 61, 59, 70, 50, 57, 65, 90, 44, 36, 72, 54, 51, 56, 60, 55, 83, 93, 64, 61, 35, 51, 79, 58, 53, 65, 58, 61, 62, 67, 68, 58, 82, 79, 51, 81, 54, 63, 66, 62, 69, 61, 74, 65, 101, 106, 55, 55, 57, 79, 87, 59, 74, 69, 54, 81, 73, 69, 55, 63, 72, 58, 70, 88, 71, 53, 67, 50, 66, 56, 62, 87, 65, 77, 105, 79, 68, 81, 61, 76, 66, 58, 77, 56, 75, 55, 44, 67, 54, 72, 60, 50, 58, 63, 61, 70, 48, 94, 54, 70, 56, 57, 71, 42, 68, 75, 62, 56, 55, 76, 65, 57, 113, 65, 52, 53, 73, 54, 60, 58, 66, 55, 72, 58, 68, 54, 73, 52, 74, 74, 65, 57, 64, 67, 55, 128, 64, 45, 62, 67, 95, 76, 54, 74, 89, 47, 56, 56, 50, 42, 59, 55, 57, 56, 66, 58, 52, 67, 49, 58, 77, 65, 64, 79, 53, 102, 83, 63, 55, 59, 68, 53, 71, 65, 95, 52, 73, 76, 71, 52, 59, 60, 64, 64, 63, 73, 66, 76, 53, 56, 46, 60, 68, 58, 100, 66, 57, 81, 57, 87, 65, 78, 61, 60, 72, 82, 81, 55, 52, 44, 71, 82, 53, 50, 73, 55, 58, 56, 43, 55, 56, 84, 82, 66, 59, 68, 64, 63, 56, 62, 63, 72, 60, 53, 50, 51, 67, 100, 64, 88, 100, 73, 121, 97, 68, 70, 63, 51, 63, 77, 63, 58, 62, 57, 75, 58, 70, 78, 98, 63, 59, 60, 67, 62, 97, 53, 69, 57, 71, 56, 67, 74, 69, 75, 49, 42, 69, 77, 67, 62, 104, 57, 76, 55, 86, 64, 70, 68, 50, 56, 79, 55, 76, 61, 55, 63, 68, 53, 55, 55, 61, 68, 48, 68, 62, 51, 57, 69, 56, 68, 53, 72, 59, 55, 70, 57, 68, 75, 63, 115, 51, 57, 68, 46, 61, 59, 47, 57, 53, 65, 58, 55, 55, 55, 66, 58, 64, 71, 52, 60, 71, 53, 62, 86, 58, 59, 66, 50, 75, 58, 55, 76, 59, 55, 54, 55, 101, 49, 66, 53, 57, 63, 59, 62, 64, 61, 52, 66, 97, 58, 62, 65, 62, 58, 65, 70, 61, 61, 71, 73, 54, 65, 71, 80, 63, 61, 61, 66, 72, 51, 56, 77, 54, 47, 62, 56, 54, 50, 57, 63, 60, 81, 76, 57, 59, 57, 54, 88, 74, 61, 55, 58, 84, 53, 72, 66, 49, 59, 54, 64, 48, 60, 59, 75, 59, 58, 57, 58, 51, 93, 59, 59, 70, 75, 89, 75, 59, 61, 53, 57, 114, 57, 69, 64, 64, 54, 60, 72, 55, 97, 75, 64, 61, 60, 108, 62, 61, 65, 61, 97, 56, 63, 78, 80, 59, 75, 66, 64, 80, 58, 59, 57, 76, 63, 69, 72, 77, 71, 63, 65, 69, 67, 121, 55, 88, 61, 79, 62, 53, 53, 54, 61, 80, 62, 77, 56, 57, 69, 56, 65, 66, 61, 70, 66, 56, 71, 77, 62, 49, 55, 51, 53, 53, 62, 63, 51, 62, 62, 56, 62, 47, 57, 75, 64, 73, 57, 72, 62, 68, 62, 64, 81, 64, 107, 60, 63, 62, 69, 55, 69, 48, 50, 50, 49, 61, 45, 66, 61, 50, 65, 58, 51, 44, 64, 83, 58, 79, 72, 57, 62, 63, 44, 58, 68, 62, 64, 88, 82, 68, 61, 81, 66, 71, 49, 71, 49, 59, 59, 62, 85, 63, 55, 74, 58, 51, 66, 72, 37, 63, 57, 87, 90, 65, 53, 76, 60, 74, 98, 54, 57, 63, 60, 54, 55, 94, 72, 58, 51, 65, 91, 68, 66, 62, 56, 63, 64, 45, 100, 62, 56, 79, 61, 69, 63, 59, 56, 59, 63, 77, 64, 61, 73, 95, 60, 66, 59, 54, 65, 63, 60, 64, 79, 70, 63, 62, 109, 55, 57, 61, 69, 52, 88, 62, 55, 70, 55, 87, 47, 48, 61, 45, 63, 59, 75, 63, 47, 91, 55, 88, 58, 71, 69, 66, 69, 55, 95, 58, 58, 109, 59, 75, 68, 60, 47, 54, 43, 60, 60, 61, 85, 64, 60, 54, 79, 51, 60, 83, 158, 65, 76, 59, 114, 57, 57, 56, 72, 57, 56, 78, 54, 85, 69, 64, 60, 57, 63, 71, 75, 97, 61, 66, 55, 72, 47, 61, 68, 75, 81, 61, 57, 55, 56, 51, 85, 75, 72, 63, 53, 74, 62, 79, 79, 57, 55, 60, 57, 78, 55, 94, 95, 56, 73, 57, 52, 49, 76, 62, 52, 59, 56, 67, 66, 63, 61, 105, 74, 69, 65, 79, 57, 73, 70, 69, 55, 66, 49, 82, 73, 92, 57, 65, 57, 72, 45, 57, 56, 61, 56, 52, 60, 71, 86, 60, 53, 64, 111, 127, 61, 79, 81, 57, 57, 65, 48, 83, 56, 50, 97, 56, 56, 48, 60, 86, 57, 66, 64, 117, 52, 65, 64, 78, 55, 63, 98, 80, 66, 59, 71, 61, 73, 56, 66, 108, 121, 47, 69, 54, 58, 51, 51, 46, 65, 69, 71, 64, 91, 49, 69, 84, 78, 61, 52, 61, 63, 63, 95, 69, 62, 56, 53, 54, 64, 52, 62, 59, 64, 64, 58, 66, 69, 74, 84, 80, 53, 86, 111, 103, 53, 65, 55, 77, 75, 66, 86, 59, 54, 67, 59, 76, 54, 66, 82, 58, 77, 64, 63, 81, 63, 67, 65, 67, 52, 54, 77, 61, 61, 52, 45, 55, 72, 55, 89, 93, 78, 64, 54, 58, 66, 55, 55, 66, 74, 75, 70, 59, 52, 62, 62, 63, 47, 75, 65, 62, 69, 71, 63, 63, 55, 54, 57, 66, 77, 58, 70, 109, 65, 71, 58, 72, 59, 71, 119, 51, 71, 52, 63, 75, 62, 63, 82, 61, 98, 61, 58, 63, 60, 61, 83, 63, 56, 57, 80, 50, 44, 61, 57, 56, 60, 60, 54, 56, 62, 55, 72, 58, 66, 60, 48, 86, 61, 53, 58, 59, 54, 63, 52, 78, 55, 59, 70, 64, 62, 57, 100, 55, 57, 56, 58, 62, 54, 67, 70, 66, 62, 64, 49, 81, 90, 70, 64, 58, 68, 64, 66, 66, 73, 61, 63, 58, 61, 81, 53, 50, 50, 43, 76, 52, 48, 69, 90, 71, 64, 86, 55, 78, 80, 88, 54, 64, 64, 50, 58, 59, 77, 69, 61, 52, 57, 60, 93, 64, 55, 62, 69, 56, 50, 67, 68, 54, 102, 71, 62, 59, 65, 58, 68, 57, 67, 60, 57, 46, 73, 71, 56, 72, 57, 54, 61, 60, 74, 83, 64, 70, 64, 70, 80, 72, 74, 55, 68, 95, 57, 53, 63, 61, 52, 89, 81, 70, 68, 63, 79, 55, 49, 58, 65, 68, 62, 64, 61, 55, 59, 54, 65, 75, 64, 81, 61, 46, 52, 55, 67, 65, 68, 63, 59, 107, 62, 65, 54, 53, 64, 60, 68, 58, 55, 73, 61, 51, 60, 55, 64, 65, 73, 66, 67, 46, 50, 56, 121, 54, 46, 62, 54, 93, 95, 67, 64, 96, 57, 55, 59, 73, 55, 77, 62, 73, 58, 54, 67, 72, 78, 60, 60, 81, 73, 76, 64, 58, 47, 57, 50, 53, 57, 65, 89, 66, 65, 62, 63, 90, 60, 61, 68, 66, 59, 69, 54, 65, 63, 64, 96, 74, 59, 70, 54, 66, 62, 102, 69, 62, 69, 69, 73, 64, 52, 59, 66, 44, 50, 62, 55, 55, 59, 78, 54, 46, 72, 59, 65, 61, 77, 64, 68, 65, 55, 46, 62, 60, 50, 50, 71, 58, 55, 69, 58, 76, 70, 77, 57, 60, 62, 71, 21, 70, 63, 82, 110, 57, 62, 55, 61, 61, 74, 63, 114, 76, 65, 91, 60, 69, 58, 92, 56, 49, 70, 66, 57, 63, 57, 88, 61, 106, 71, 73, 61, 59, 70, 62, 56, 54, 53, 54, 58, 65, 87, 74, 65, 43, 51, 62, 68, 68, 76, 69, 65, 50, 49, 103, 64, 69, 58, 64, 63, 63, 82, 71, 59, 59, 61, 66, 57, 72, 66, 61, 84, 57, 81, 62, 58, 56, 63, 58, 82, 55, 72, 64, 74, 72, 66, 62, 79, 50, 64, 57, 62, 65, 77, 57, 59, 54, 59, 71, 53, 69, 63, 57, 95, 63, 58, 50, 59, 80, 64, 53, 69, 83, 48, 58, 54, 96, 60, 76, 56, 53, 87, 52, 58, 74, 61, 66, 63, 84, 60, 63, 60, 66, 56, 65, 73, 65, 66, 92, 63, 57, 79, 60, 80, 77, 57, 63, 48, 62, 54, 64, 63, 58, 55, 54, 83, 63, 60, 63, 61, 50, 70, 65, 55, 63, 59, 64, 107, 75, 56, 55, 53, 68, 65, 61, 70, 56, 76, 71, 65, 51, 68, 45, 65, 57, 71, 45, 55, 70, 72, 74, 73, 60, 83, 62, 59, 69, 55, 88, 62, 91, 58, 68, 55, 57, 64, 57, 53, 35, 72, 60, 78, 55, 61, 70, 54, 54, 88, 56, 56, 98, 73, 56, 65, 63, 75, 64, 46, 73, 61, 64, 57, 69, 69, 81, 61, 61, 59, 63, 54, 68, 58, 133, 56, 64, 60, 81, 64, 74, 58, 61, 58, 52, 74, 67, 56, 52, 61, 55, 77, 68, 57, 66, 63, 68, 75, 98, 57, 63, 66, 48, 54, 56, 64, 65, 61, 58, 58, 66, 47, 62, 69, 64, 65, 56, 60, 63, 81, 66, 48, 77, 75, 77, 86, 69, 57, 63, 58, 51, 84, 53, 68, 49, 91, 52, 60, 76, 58, 50, 70, 69, 61, 63, 63, 71, 59, 71, 70, 55, 59, 60, 63, 52, 56, 59, 58, 60, 70, 64, 56, 75, 80, 76, 68, 61, 47, 63, 56, 37, 95, 56, 67, 57, 59, 53, 61, 79, 62, 54, 58, 72, 83, 73, 65, 77, 71, 58, 55, 58, 62, 66, 76, 81, 72, 57, 52, 85, 77, 63, 63, 55, 77, 66, 58, 56, 55, 65, 93, 64, 51, 96, 55, 62, 64, 52, 47, 56, 63, 78, 47, 56, 77, 83, 71, 53, 79, 71, 75, 53, 72, 56, 50, 68, 65, 70, 88, 54, 70, 52, 60, 51, 60, 73, 48, 53, 59, 54, 62, 63, 53, 54, 81, 63, 73, 66, 73, 94, 59, 79, 60, 76, 59, 50, 71, 68, 100, 62, 71, 105, 61, 65, 65, 57, 74, 50, 42, 63, 69, 64, 90, 70, 90, 51, 51, 75, 73, 58, 114, 61, 56, 54, 135, 68, 69, 72, 80, 51, 80, 82, 56, 78, 60, 64, 53, 65, 58, 51, 94, 102, 53, 66, 66, 60, 53, 68, 63, 69, 64, 77, 105, 60, 76, 72, 77, 67, 60, 63, 58, 77, 55, 67, 95, 56, 61, 59, 54, 90, 69, 64, 61, 56, 60, 59, 51, 72, 83, 68, 53, 65, 55, 73, 60, 60, 59, 92, 67, 78, 49, 79, 55, 73, 45, 66, 70, 67, 49, 67, 74, 63, 59, 58, 39, 63, 64, 58, 62, 48, 64, 62, 69, 60, 69, 43, 75, 56, 93, 79, 64, 58, 66, 51, 54, 66, 61, 69, 55, 50, 78, 57, 61, 105, 59, 66, 71, 68, 46, 102, 69, 56, 70, 58, 89, 50, 77, 76, 92, 65, 60, 59, 73, 61, 44, 115, 126, 59, 64, 50, 59, 71, 58, 66, 87, 61, 60, 48, 85, 42, 75, 92, 68, 63, 58, 55, 53, 70, 44, 73, 48, 68, 74, 42, 63, 61, 59, 62, 79, 55, 69, 66, 62, 68, 72, 75, 73, 65, 93, 96, 61, 66, 75, 52, 81, 62, 78, 68, 51, 68, 59, 81, 81, 95, 77, 53, 62, 47, 69, 100, 71, 70, 86, 70, 58, 51, 60, 60, 81, 48, 56, 67, 61, 66, 71, 61, 74, 51, 75, 65, 76, 71, 65, 68, 68, 71, 57, 90, 58, 61, 68, 57, 54, 77, 69, 62, 49, 67, 62, 64, 60, 72, 59, 68, 83, 58, 59, 95, 50, 62, 71, 91, 61, 72, 90, 57, 47, 55, 66, 65, 66, 64, 72, 61, 102, 59, 58, 55, 56, 74, 64, 67, 63, 62, 69, 58, 78, 72, 67, 55, 87, 47, 74, 56, 45, 65, 84, 56, 58, 72, 115, 43, 67, 56, 54, 56, 65, 60, 69, 64, 62, 63, 46, 63, 56, 38, 97, 64, 43, 66, 67, 65, 60, 75, 72, 59, 74, 55, 59, 67, 57, 51, 60, 91, 61, 77, 64, 64, 67, 50, 71, 57, 55, 66, 78, 69, 59, 66, 97, 66, 71, 71, 80, 71, 53, 93, 46, 84, 72, 87, 105, 59, 70, 57, 79, 53, 79, 78, 64, 56, 77, 60, 100, 73, 63, 53, 65, 65, 69, 66, 47, 70, 106, 76, 70, 75, 56, 76, 68, 59, 66, 59, 69, 84, 67, 47, 52, 56, 57, 86, 71, 57, 68, 66, 75, 51, 66, 52, 72, 61, 82, 76, 53, 84, 54, 63, 52, 64, 84, 85, 48, 80, 60, 51, 68, 62, 74, 69, 68, 54, 62, 71, 59, 67, 67, 54, 46, 72, 60, 73, 62, 56, 78, 67, 71, 72, 66, 105, 54, 105, 51, 62, 74, 79, 60, 54, 53, 63, 43, 74, 62, 63, 56, 69, 66, 75, 73, 62, 92, 64, 66, 52, 81, 75, 72, 66, 57, 62, 91, 52, 58, 58, 57, 52, 52, 53, 57, 63, 63, 55, 67, 53, 59, 70, 70, 62, 77, 98, 91, 59, 56, 48, 85, 83, 90, 59, 66, 49, 68, 71, 41, 68, 60, 75, 48, 67, 78, 79, 65, 61, 63, 59, 51, 75, 85, 58, 66, 54, 74, 54, 64, 73, 79, 63, 58, 62, 62, 79, 55, 63, 82, 63, 69, 63, 55, 65, 70, 54, 36, 62, 64, 56, 49, 69, 52, 71, 64, 57, 52, 67, 47, 61, 68, 63, 41, 53, 93, 47, 52, 61, 87, 73, 62, 73, 64, 72, 86, 72, 54, 74, 104, 53, 54, 58, 58, 63, 57, 99, 72, 66, 60, 51, 70, 61, 76, 77, 52, 64, 40, 82, 47, 73, 59, 79, 46, 119, 56, 76, 50, 79, 86, 58, 95, 50, 63, 72, 62, 90, 59, 102, 42, 66, 66, 57, 81, 53, 61, 49, 57, 61, 68, 69, 69, 75, 53, 61, 47, 62, 100, 61, 49, 69, 73, 66, 63, 71, 39, 71, 78, 55, 64, 65, 50, 56, 89, 52, 82, 58, 61, 59, 62, 65, 51, 59, 76, 60, 60, 61, 52, 59, 75, 71, 65, 75, 65, 74, 59, 75, 55, 56, 71, 56, 51, 44, 51, 67, 52, 66, 76, 57, 72, 53, 68, 111, 57, 96, 62, 66, 73, 68, 51, 75, 52, 65, 76, 74, 55, 65, 70, 89, 64, 66, 79, 64, 65, 93, 62, 43, 68, 61, 82, 57, 66, 74, 51, 71, 67, 65, 72, 54, 68, 62, 65, 56, 57, 60, 66, 61, 75, 47, 59, 56, 60, 61, 95, 52, 54, 43, 74, 89, 62, 59, 59, 44, 56, 91, 85, 48, 71, 54, 53, 70, 83, 64, 82, 59, 75, 76, 57, 70, 64, 50, 76, 63, 57, 84, 71, 86, 53, 56, 72, 62, 63, 60, 61, 51, 85, 66, 59, 60, 68, 56, 63, 58, 85, 59, 64, 72, 59, 76, 64, 63, 65, 65, 70, 74, 62, 59, 60, 67, 68, 57, 61, 59, 53, 73, 53, 61, 56, 107, 61, 83, 75, 84, 37, 74, 64, 68, 65, 66, 50, 73, 56, 59, 61, 69, 83, 67, 61, 90, 56, 58, 70, 84, 65, 58, 59, 63, 51, 65, 56, 74, 58, 71, 63, 97, 61, 68, 62, 50, 75, 61, 69, 42, 77, 75, 68, 58, 72, 73, 71, 60, 50, 59, 66, 58, 69, 62, 56, 53, 87, 65, 83, 75, 61, 46, 77, 59, 62, 49, 65, 64, 45, 57, 61, 76, 52, 63, 59, 62, 64, 55, 61, 64, 76, 74, 62, 72, 94, 47, 59, 68, 65, 58, 58, 68, 90, 67, 60, 59, 75, 70, 48, 58, 66, 64, 53, 73, 96, 59, 70, 82, 55, 64, 96, 65, 64, 52, 70, 76, 66, 52, 58, 74, 48, 63, 53, 66, 61, 52, 66, 72, 60, 59, 73, 80, 64, 92, 54, 46, 78, 54, 85, 65, 65, 51, 70, 71, 92, 77, 61, 80, 62, 40, 77, 48, 69, 56, 73, 76, 62, 82, 92, 54, 72, 60, 41, 62, 44, 95, 66, 65, 51, 65, 59, 68, 88, 49, 76, 49, 59, 72, 57, 66, 63, 83, 57, 68, 69, 78, 63, 59, 97, 60, 67, 71, 62, 63, 60, 57, 54, 52, 62, 67, 51, 60, 60, 73, 97, 70, 65, 92, 87, 68, 137, 64, 64, 56, 128, 58, 66, 82, 83, 52, 58, 80, 47, 83, 64, 48, 67, 57, 74, 55, 87, 78, 53, 62, 61, 68, 68, 81, 59, 62, 79, 64, 86, 70, 74, 86, 64, 61, 69, 69, 70, 66, 48, 69, 85, 63, 80, 61, 71, 84, 76, 60, 60, 56, 54, 59, 58, 49, 89, 74, 55, 72, 70, 73, 50, 44, 70, 79, 75, 67, 64, 71, 74, 69, 64, 88, 54, 64, 66, 56, 59, 61, 58, 60, 93, 70, 71, 58, 61, 80, 60, 59, 64, 53, 85, 59, 71, 51, 85, 93, 57, 69, 60, 70, 67, 71, 59, 70, 51, 64, 49, 57, 65, 74, 60, 82, 77, 58, 71, 91, 58, 61, 65, 57, 86, 51, 54, 78, 86, 56, 81, 55, 74, 69, 67, 111, 126, 40, 70, 66, 65, 72, 70, 66, 92, 48, 56, 63, 73, 67, 50, 103, 50, 62, 59, 76, 53, 65, 79, 67, 70, 62, 69, 65, 54, 54, 49, 46, 49, 63, 57, 66, 53, 62, 65, 52, 70, 51, 102, 101, 66, 56, 60, 59, 56, 76, 86, 56, 52, 69, 70, 71, 54, 96, 74, 70, 70, 54, 64, 99, 53, 59, 59, 83, 55, 73, 65, 62, 60, 48, 65, 47, 55, 68, 72, 67, 79, 71, 79, 68, 69, 53, 69, 84, 61, 77, 54, 79, 57, 48, 63, 67, 59, 67, 62, 66, 66, 58, 67, 57, 56, 60, 62, 66, 68, 54, 75, 94, 53, 70, 64, 76, 70, 62, 66, 46, 72, 55, 60, 55, 56, 65, 95, 61, 129, 65, 70, 54, 55, 65, 76, 82, 64, 47, 64, 60, 61, 48, 59, 66, 42, 69, 55, 81, 77, 53, 83, 58, 63, 55, 124, 49, 59, 56, 65, 59, 48, 66, 52, 73, 63, 59, 59, 71, 69, 73, 96, 77, 64, 52, 49, 74, 46, 50, 81, 65, 55, 55, 58, 72, 48, 71, 69, 80, 41, 64, 61, 66, 52, 65, 47, 63, 60, 65, 73, 51, 87, 75, 85, 64, 60, 69, 60, 69, 67, 87, 63, 79, 80, 81, 94, 68, 61, 71, 64, 52, 79, 50, 69, 62, 47, 71, 92, 55, 66, 63, 72, 68, 49, 69, 59, 84, 114, 51, 74, 48, 52, 54, 63, 71, 62, 52, 64, 67, 69, 62, 59, 65, 57, 79, 78, 53, 80, 46, 63, 57, 57, 73, 90, 54, 73, 57, 66, 66, 71, 71, 75, 59, 72, 66, 60, 69, 66, 62, 50, 60, 71, 55, 61, 67, 67, 59, 64, 75, 58, 62, 53, 62, 52, 72, 61, 56, 84, 59, 55, 83, 75, 91, 53, 86, 54, 56, 69, 78, 74, 58, 49, 56, 50, 65, 55, 82, 65, 70, 62, 60, 69, 60, 62, 52, 63, 59, 109, 66, 52, 52, 58, 61, 66, 70, 63, 57, 61, 59, 67, 80, 64, 67, 54, 55, 62, 65, 49, 61, 55, 68, 85, 94, 102, 57, 48, 48, 81, 84, 101, 69, 51, 58, 79, 66, 55, 62, 77, 70, 65, 58, 65, 85, 58, 68, 67, 85, 57, 44, 73, 69, 56, 62, 73, 57, 64, 88, 55, 52, 71, 63, 52, 84, 68, 64, 61, 61, 87, 60, 60, 63, 64, 67, 71, 73, 66, 49, 64, 51, 57, 65, 67, 75, 69, 79, 73, 66, 52, 54, 56, 59, 100, 75, 52, 56, 81, 63, 76, 63, 87, 65, 83, 84, 59, 75, 81, 56, 65, 63, 86, 49, 77, 73, 65, 54, 63, 62, 70, 66, 85, 75, 75, 70, 51, 63, 92, 75, 72, 76, 68, 113, 68, 75, 55, 74, 72, 58, 83, 44, 75, 61, 63, 64, 58, 97, 64, 53, 62, 53, 82, 40, 51, 73, 54, 64, 77, 60, 91, 68, 57, 60, 84, 99, 67, 62, 67, 69, 82, 51, 62, 62, 57, 48, 60, 62, 75, 71, 58, 63, 90, 56, 94, 94, 81, 49, 77, 47, 63, 97, 87, 46, 55, 72, 45, 61, 84, 77, 73, 66, 64, 61, 83, 64, 56, 119, 121, 69, 63, 57, 72, 64, 52, 48, 55, 79, 69, 56, 56, 78, 53, 53, 72, 59, 69, 49, 62, 74, 58, 41, 78, 85, 56, 80, 61, 63, 48, 99, 60, 56, 67, 68, 60, 57, 65, 79, 57, 75, 54, 63, 96, 58, 55, 78, 95, 77, 51, 48, 75, 57, 67, 75, 69, 87, 59, 62, 51, 70, 59, 62, 81, 69, 73, 57, 70, 67, 66, 62, 66, 66, 64, 62, 71, 65, 57, 50, 69, 58, 64, 55, 54, 123, 56, 45, 63, 68, 88, 63, 66, 51, 71, 96, 90, 57, 74, 45, 67, 63, 59, 53, 62, 56, 66, 70, 61, 53, 60, 70, 69, 76, 95, 56, 64, 62, 125, 90, 60, 54, 48, 62, 65, 99, 67, 55, 80, 43, 50, 67, 134, 52, 76, 101, 51, 54, 81, 109, 59, 54, 61, 90, 70, 91, 68, 59, 55, 77, 61, 66, 59, 49, 70, 64, 50, 65, 82, 51, 55, 60, 55, 59, 62, 63, 61, 31, 52, 63, 72, 72, 76, 77, 46, 61, 57, 62, 64, 85, 82, 49, 71, 54, 59, 66, 74, 58, 51, 53, 70, 54, 52, 53, 45, 61, 58, 64, 64, 77, 71, 57, 37, 73, 64, 75, 86, 73, 58, 63, 59, 73, 70, 55, 67, 68, 54, 95, 57, 53, 61, 60, 52, 64, 101, 51, 58, 96, 52, 52, 58, 76, 73, 54, 47, 48, 63, 75, 66, 123, 72, 71, 57, 52, 86, 57, 45, 57, 79, 54, 63, 56, 70, 67, 90, 57, 52, 58, 61, 75, 54, 53, 87, 54, 59, 55, 66, 67, 80, 54, 64, 60, 58, 71, 75, 58, 74, 43, 59, 81, 87, 49, 77, 66, 99, 55, 66, 70, 105, 60, 64, 48, 84, 73, 55, 71, 64, 58, 42, 105, 78, 120, 99, 67, 67, 84, 50, 85, 52, 52, 52, 48, 65, 63, 48, 65, 93, 68, 88, 66, 56, 60, 48, 110, 85, 93, 54, 86, 57, 63, 70, 58, 45, 53, 66, 65, 72, 66, 56, 69, 55, 60, 70, 66, 69, 86, 65, 52, 60, 73, 67, 53, 51, 86, 168, 81, 104, 65, 90, 72, 62, 54, 83, 78, 48, 50, 55, 71, 76, 47, 58, 66, 57, 85, 105, 64, 62, 46, 71, 56, 64, 90, 62, 69, 75, 56, 53, 53, 72, 71, 47, 67, 71, 56, 63, 67, 65, 70, 54, 60, 45, 63, 49, 80, 66, 66, 38, 74, 43, 56, 64, 61, 59, 35, 71, 75, 67, 75, 74, 62, 83, 49, 49, 54, 59, 64, 62, 58, 85, 86, 95, 72, 69, 43, 68, 70, 69, 56, 47, 69, 85, 77, 55, 60, 62, 79, 75, 61, 72, 45, 82, 60, 79, 57, 69, 54, 65, 57, 68, 101, 53, 81, 65, 73, 85, 67, 47, 53, 86, 66, 39, 51, 80, 57, 55, 58, 63, 51, 57, 95, 85, 60, 61, 62, 86, 68, 75, 75, 53, 66, 83, 46, 55, 85, 64, 79, 64, 119, 58, 55, 57, 67, 66, 103, 67, 59, 68, 75, 81, 63, 42, 63, 80, 86, 71, 58, 48, 96, 67, 104, 62, 77, 50, 86, 66, 67, 48, 56, 75, 68, 74, 57, 68, 59, 60, 80, 46, 75, 57, 66, 83, 71, 74, 82, 65, 71, 37, 78, 76, 53, 69, 86, 70, 59, 70, 63, 67, 64, 89, 52, 89, 51, 78, 64, 57, 52, 52, 67, 61, 61, 81, 61, 77, 51, 50, 75, 62, 94, 47, 100, 68, 76, 76, 45, 65, 61, 75, 83, 65, 57, 68, 54, 79, 50, 55, 71, 68, 75, 74, 62, 61, 100, 66, 59, 36, 95, 67, 75, 75, 48, 64, 67, 61, 52, 87, 124, 46, 48, 71, 74, 67, 66, 55, 56, 57, 78, 62, 53, 53, 62, 46, 55, 61, 79, 60, 82, 76, 39, 58, 63, 71, 55, 47, 53, 50, 60, 65, 69, 82, 69, 47, 57, 74, 64, 70, 54, 52, 48, 61, 56, 83, 60, 62, 74, 50, 62, 52, 57, 58, 68, 47, 65, 51, 78, 72, 57, 66, 74, 48, 46, 84, 75, 54, 59, 60, 42, 72, 55, 62, 63, 58, 74, 115, 61, 81, 72, 104, 66, 94, 63, 52, 57, 74, 64, 63, 66, 65, 71, 57, 52, 62, 54, 56, 57, 48, 58, 133, 45, 65, 58, 66, 60, 51, 51, 71, 75, 92, 61, 64, 65, 53, 57, 58, 64, 88, 65, 67, 65, 52, 74, 53, 78, 65, 86, 64, 60, 87, 43, 55, 73, 69, 33, 57, 52, 71, 64, 87, 94, 65, 63, 70, 76, 40, 75, 56, 61, 68, 84, 71, 63, 56, 62, 63, 57, 59, 91, 54, 57, 53, 59, 63, 76, 68, 91, 67, 47, 94, 69, 59, 63, 76, 77, 59, 55, 54, 68, 56, 53, 86, 76, 42, 41, 71, 64, 66, 61, 69, 51, 76, 64, 81, 58, 58, 45, 84, 60, 65, 45, 67, 61, 53, 58, 52, 42, 51, 61, 41, 82, 60, 58, 67, 60, 54, 73, 54, 67, 66, 63, 90, 77, 96, 63, 59, 68, 58, 66, 61, 68, 56, 56, 47, 38, 86, 58, 75, 105, 49, 37, 41, 58, 59, 40, 64, 53, 97, 74, 60, 65, 77, 53, 50, 66, 73, 56, 56, 44, 70, 56, 51, 42, 83, 67, 57, 64, 70, 62, 59, 70, 70, 44, 108, 60, 48, 65, 49, 67, 85, 65, 61, 61, 52, 61, 52, 70, 70, 58, 65, 51, 75, 60, 95, 62, 60, 53, 58, 65, 81, 57, 59, 55, 60, 78, 74, 58, 61, 76, 56, 73, 91, 87, 60, 72, 55, 62, 61, 66, 41, 71, 78, 52, 60, 66, 62, 50, 51, 61, 54, 43, 77, 77, 60, 64, 58, 68, 90, 67, 95, 110, 47, 66, 75, 118, 68, 62, 78, 54, 54, 55, 90, 55, 88, 57, 46, 55, 63, 81, 76, 57, 69, 57, 94, 85, 54, 74, 50, 59, 66, 60, 68, 46, 65, 58, 57, 59, 77, 71, 62, 57, 97, 71, 78, 104, 68, 75, 43, 62, 59, 73, 80, 76, 56, 68, 57, 56, 55, 50, 76, 51, 56, 98, 68, 88, 58, 63, 115, 54, 55, 59, 63, 71, 67, 88, 78, 70, 57, 57, 53, 88, 76, 104, 117, 59, 62, 65, 55, 76, 60, 61, 63, 64, 53, 100, 89, 89, 77, 74, 62, 62, 48, 39, 78, 79, 74, 48, 63, 64, 59, 61, 93, 52, 59, 45, 69, 59, 56, 62, 57, 62, 73, 101, 73, 96, 72, 55, 55, 66, 84, 68, 55, 46, 46, 58, 76, 62, 57, 61, 64, 78, 73, 77, 68, 101, 63, 72, 76, 48, 85, 77, 77, 68, 74, 52, 66, 50, 122, 50, 53, 76, 69, 114, 73, 83, 72, 53, 50, 42, 60, 57, 72, 53, 59, 68, 74, 62, 87, 63, 94, 76, 48, 62, 74, 50, 99, 117, 61, 56, 53, 64, 68, 90, 64, 75, 62, 73, 74, 63, 58, 43, 54, 96, 56, 54, 98, 96, 69, 76, 43, 75, 69, 73, 87, 54, 64, 66, 75, 73, 57, 63, 92, 48, 48, 75, 69, 60, 65, 46, 86, 105, 65, 73, 52, 59, 66, 77, 53, 60, 75, 65, 49, 77, 75, 69, 61, 54, 90, 64, 73, 69, 80, 68, 54, 58, 67, 62, 73, 53, 55, 57, 58, 53, 51, 75, 56, 68, 96, 55, 63, 75, 71, 70, 60, 60, 68, 45, 63, 54, 55, 72, 69, 61, 58, 86, 58, 73, 57, 57, 46, 58, 63, 61, 74, 60, 66, 31, 67, 67, 79, 57, 49, 62, 56, 55, 66, 58, 69, 70, 101, 46, 79, 57, 61, 35, 59, 53, 58, 80, 46, 70, 95, 61, 63, 52, 62, 63, 71, 76, 82, 74, 46, 57, 67, 75, 62, 95, 67, 52, 76, 65, 82, 57, 58, 97, 47, 80, 82, 59, 70, 75, 60, 81, 72, 64, 91, 106, 52, 60, 66, 55, 60, 62, 57, 65, 58, 76, 94, 117, 101, 51, 64, 53, 54, 66, 67, 83, 52, 65, 67, 52, 59, 73, 70, 69, 92, 59, 52, 80, 55, 52, 76, 79, 56, 84, 50, 76, 72, 75, 52, 68, 66, 49, 98, 84, 60, 68, 49, 57, 71, 70, 48, 53, 48, 68, 93, 56, 71, 73, 66, 77, 158, 64, 106, 61, 94, 75, 62, 64, 93, 54, 64, 68, 78, 58, 67, 49, 55, 53, 55, 98, 84, 66, 50, 82, 53, 66, 63, 77, 61, 71, 67, 55, 75, 69, 55, 86, 44, 50, 56, 85, 72, 37, 75, 60, 63, 69, 73, 55, 87, 133, 73, 64, 63, 59, 54, 59, 59, 58, 53, 63, 68, 73, 80, 59, 42, 55, 67, 51, 52, 66, 69, 49, 67, 65, 63, 83, 83, 93, 85, 57, 101, 59, 54, 61, 64, 60, 52, 77, 62, 49, 50, 62, 63, 61, 51, 67, 50, 60, 63, 93, 64, 84, 71, 88, 66, 67, 48, 61, 54, 69, 57, 42, 75, 45, 82, 56, 42, 46, 75, 74, 48, 52, 49, 72, 62, 58, 69, 41, 53, 60, 81, 57, 68, 63, 49, 83, 95, 58, 69, 68, 108, 90, 60, 67, 73, 61, 75, 68, 82, 87, 75, 68, 63, 60, 83, 60, 67, 99, 48, 80, 52, 32, 66, 80, 62, 46, 52, 93, 64, 66, 54, 57, 57, 52, 54, 69, 59, 58, 80, 60, 67, 57, 88, 72, 45, 73, 76, 133, 58, 60, 64, 73, 74, 146, 48, 47, 69, 59, 54, 72, 58, 56, 76, 62, 67, 50, 63, 66, 85, 61, 65, 63, 62, 71, 38, 65, 100, 62, 71, 55, 75, 61, 66, 77, 82, 77, 60, 55, 107, 51, 70, 70, 84, 45, 58, 84, 64, 51, 100, 50, 63, 69, 85, 63, 61, 60, 63, 91, 77, 70, 54, 101, 55, 59, 63, 53, 68, 97, 79, 66, 58, 63, 68, 66, 50, 111, 70, 65, 57, 80, 49, 30, 66, 46, 67, 61, 80, 56, 68, 77, 73, 54, 66, 53, 64, 69, 76, 60, 61, 80, 73, 49, 67, 49, 99, 64, 68, 68, 76, 47, 77, 56, 41, 76, 55, 47, 69, 61, 56, 78, 73, 53, 66, 47, 94, 62, 67, 56, 70, 56, 53, 59, 59, 72, 54, 47, 62, 67, 47, 69, 74, 60, 78, 47, 93, 52, 76, 80, 122, 64, 89, 79, 52, 69, 88, 43, 36, 58, 71, 75, 65, 76, 70, 64, 59, 59, 72, 67, 62, 46, 45, 75, 84, 81, 77, 60, 73, 68, 74, 78, 48, 67, 87, 68, 63, 60, 75, 54, 86, 72, 80, 58, 79, 70, 84, 64, 57, 64, 53, 88, 70, 68, 63, 68, 71, 61, 57, 51, 68, 47, 80, 60, 59, 61, 74, 74, 55, 57, 55, 49, 93, 50, 60, 70, 36, 73, 55, 68, 60, 57, 97, 67, 66, 58, 61, 78, 68, 71, 120, 65, 84, 53, 59, 56, 86, 53, 79, 72, 69, 49, 53, 71, 73, 65, 96, 76, 59, 61, 83, 79, 64, 65, 55, 80, 93, 53, 78, 50, 70, 55, 63, 57, 57, 64, 56, 53, 66, 59, 66, 65, 57, 58, 60, 81, 82, 73, 56, 48, 48, 96, 79, 77, 55, 50, 52, 56, 96, 37, 81, 84, 52, 52, 99, 59, 47, 62, 44, 73, 70, 92, 59, 87, 61, 76, 52, 52, 72, 73, 76, 61, 67, 68, 67, 59, 66, 59, 65, 64, 100, 55, 67, 71, 59, 55, 57, 41, 76, 79, 52, 56, 50, 67, 83, 51, 57, 57, 73, 55, 72, 62, 44, 74, 72, 55, 59, 62, 73, 60, 61, 49, 54, 59, 44, 43, 48, 81, 80, 94, 55, 49, 69, 59, 69, 57, 56, 84, 60, 75, 71, 50, 76, 55, 42, 55, 67, 75, 71, 95, 51, 62, 64, 64, 61, 88, 56, 74, 73, 66, 70, 60, 48, 55, 57, 73, 60, 53, 67, 67, 70, 56, 60, 70, 107, 69, 59, 73, 77, 110, 66, 71, 66, 70, 67, 50, 76, 75, 90, 69, 52, 69, 56, 91, 70, 85, 63, 63, 85, 49, 76, 73, 55, 74, 80, 87, 64, 58, 51, 64, 69, 68, 71, 52, 66, 84, 65, 71, 61, 52, 105, 63, 66, 78, 79, 85, 56, 66, 43, 62, 71, 78, 62, 63, 71, 63, 55, 68, 70, 70, 68, 63, 73, 69, 88, 65, 81, 52, 90, 56, 75, 51, 69, 83, 64, 71, 69, 49, 47, 61, 81, 82, 50, 79, 69, 57, 56, 73, 68, 70, 82, 77, 77, 41, 112, 66, 53, 94, 107, 50, 106, 67, 61, 59, 87, 56, 71, 75, 68, 56, 59, 69, 68, 72, 61, 60, 67, 69, 59, 63, 67, 77, 77, 59, 74, 50, 54, 64, 63, 66, 52, 56, 65, 78, 65, 57, 85, 67, 45, 84, 75, 83, 90, 43, 68, 73, 60, 90, 58, 71, 68, 62, 42, 56, 80, 63, 56, 58, 61, 70, 71, 72, 78, 67, 60, 53, 48, 69, 84, 57, 68, 55, 63, 53, 84, 56, 62, 73, 57, 75, 105, 75, 69, 75, 72, 87, 57, 62, 78, 59, 61, 70, 47, 64, 86, 63, 46, 56, 68, 78, 43, 64, 107, 92, 66, 55, 54, 59, 107, 57, 45, 80, 62, 64, 75, 41, 56, 80, 67, 81, 69, 62, 74, 74, 68, 78, 92, 74, 98, 70, 55, 71, 76, 67, 56, 61, 46, 71, 45, 91, 43, 44, 77, 64, 116, 57, 51, 64, 67, 61, 56, 62, 75, 60, 55, 45, 57, 81, 50, 62, 71, 42, 89, 58, 55, 63, 65, 55, 73, 93, 55, 42, 53, 60, 57, 75, 72, 50, 47, 66, 60, 69, 49, 77, 65, 73, 63, 63, 55, 55, 44, 85, 57, 66, 63, 75, 55, 87, 74, 82, 66, 57, 60, 65, 67, 83, 55, 43, 37, 39, 65, 63, 43, 69, 38, 79, 50, 59, 59, 71, 68, 73, 62, 68, 71, 66, 53, 54, 85, 54, 74, 66, 76, 61, 81, 72, 55, 71, 57, 81, 55, 75, 94, 58, 49, 63, 62, 59, 97, 65, 59, 88, 68, 63, 64, 63, 39, 64, 81, 72, 72, 87, 63, 58, 51, 53, 66, 67, 85, 38, 58, 63, 61, 59, 61, 56, 98, 66, 77, 71, 66, 65, 87, 66, 84, 55, 63, 82, 57, 65, 52, 63, 53, 87, 101, 52, 63, 46, 58, 56, 57, 84, 86, 69, 74, 65, 91, 69, 62, 63, 66, 61, 71, 56, 62, 67, 56, 82, 72, 99, 86, 57, 60, 64, 49, 60, 74, 65, 59, 71, 115, 73, 86, 42, 60, 62, 55, 49, 69, 53, 63, 52, 56, 66, 56, 46, 65, 65, 65, 83, 45, 55, 61, 61, 62, 59, 57, 53, 65, 62, 95, 53, 83, 50, 41, 93, 58, 61, 63, 70, 52, 54, 59, 98, 91, 117, 65, 88, 84, 64, 44, 72, 62, 90, 97, 86, 57, 53, 77, 78, 108, 63, 71, 88, 53, 50, 67, 67, 66, 74, 96, 63, 75, 111, 64, 63, 61, 83, 85, 71, 81, 56, 61, 71, 63, 62, 91, 67, 62, 70, 66, 67, 74, 64, 56, 72, 67, 58, 65, 52, 69, 74, 68, 64, 76, 51, 61, 86, 57, 63, 85, 78, 70, 50, 50, 60, 38, 59, 69, 48, 43, 76, 61, 80, 62, 66, 74, 59, 90, 47, 68, 72, 78, 101, 50, 53, 54, 72, 77, 60, 59, 77, 64, 113, 68, 76, 92, 63, 66, 51, 59, 59, 75, 59, 60, 60, 78, 67, 56, 59, 80, 76, 89, 64, 70, 71, 73, 48, 62, 60, 84, 61, 62, 62, 69, 61, 68, 34, 52, 58, 57, 55, 51, 56, 77, 67, 65, 48, 53, 69, 91, 71, 69, 83, 61, 74, 64, 77, 57, 64, 63, 81, 66, 59, 61, 37, 73, 95, 121, 101, 66, 71, 42, 67, 48, 90, 65, 87, 52, 93, 65, 88, 87, 56, 37, 53, 76, 61, 78, 68, 71, 68, 58, 97, 83, 60, 59, 67, 65, 46, 58, 71, 64, 67, 64, 75, 58, 57, 64, 79, 60, 50, 61, 74, 76, 71, 46, 72, 58, 68, 71, 78, 45, 52, 67, 49, 84, 78, 76, 57, 95, 48, 60, 90, 46, 50, 73, 69, 63, 74, 57, 60, 67, 100, 64, 86, 80, 83, 87, 59, 65, 62, 75, 60, 59, 68, 73, 53, 63, 65, 53, 50, 55, 67, 60, 61, 62, 49, 71, 48, 71, 77, 74, 58, 134, 52, 70, 64, 53, 68, 49, 68, 60, 59, 59, 72, 73, 51, 57, 77, 63, 67, 55, 75, 63, 65, 71, 67, 85, 68, 80, 66, 75, 88, 66, 46, 46, 59, 52, 77, 75, 87, 67, 40, 72, 67, 72, 59, 58, 54, 64, 57, 78, 85, 63, 75, 50, 79, 90, 54, 64, 82, 55, 54, 75, 53, 69, 64, 67, 64, 49, 78, 60, 41, 46, 81, 61, 77, 67, 42, 81, 64, 62, 72, 61, 60, 91, 57, 75, 64, 60, 62, 67, 49, 59, 75, 65, 98, 73, 56, 66, 76, 59, 48, 64, 58, 68, 60, 70, 50, 69, 67, 54, 64, 53, 96, 69, 71, 61, 62, 83, 55, 81, 45, 45, 53, 59, 71, 61, 80, 65, 65, 61, 73, 73, 60, 78, 64, 53, 63, 70, 58, 64, 60, 56, 58, 101, 60, 63, 71, 58, 47, 53, 67, 59, 41, 83, 57, 68, 62, 76, 62, 91, 80, 65, 77, 55, 62, 88, 76, 89, 51, 63, 68, 65, 70, 110, 100, 59, 58, 50, 45, 49, 75, 53, 65, 65, 55, 58, 55, 63, 67, 62, 45, 57, 52, 53, 55, 69, 69, 78, 38, 59, 66, 77, 66, 45, 62, 49, 76, 45, 62, 55, 62, 62, 72, 71, 38, 66, 80, 51, 73, 65, 52, 59, 60, 65, 82, 85, 61, 48, 65, 80, 80, 65, 67, 64, 64, 102, 60, 65, 65, 91, 79, 95, 69, 64, 59, 82, 73, 60, 51, 63, 72, 62, 46, 60, 59, 59, 63, 63, 51, 86, 60, 82, 104, 45, 62, 66, 52, 88, 68, 73, 70, 103, 98, 46, 64, 47, 75, 53, 89, 73, 66, 56, 52, 59, 48, 66, 44, 71, 88, 108, 50, 82, 89, 41, 51, 75, 67, 63, 66, 69, 60, 66, 56, 71, 48, 69, 58, 74, 67, 65, 53, 60, 61, 60, 48, 67, 101, 64, 54, 64, 66, 77, 66, 70, 92, 65, 40, 71, 56, 80, 61, 68, 59, 46, 70, 51, 74, 65, 75, 53, 57, 66, 73, 65, 89, 106, 88, 66, 61, 59, 83, 50, 78, 58, 79, 80, 63, 87, 66, 55, 68, 62, 91, 76, 62, 47, 73, 83, 62, 54, 60, 55, 90, 66, 72, 91, 68, 59, 55, 114, 67, 81, 57, 61, 80, 62, 60, 64, 55, 64, 68, 55, 82, 85, 73, 51, 70, 70, 93, 68, 67, 84, 57, 67, 61, 90, 50, 64, 57, 57, 69, 57, 82, 51, 62, 59, 67, 69, 50, 85, 74, 81, 91, 85, 58, 60, 54, 99, 92, 90, 93, 64, 69, 71, 56, 52, 76, 59, 49, 57, 53, 55, 64, 48, 35, 71, 52, 60, 52, 82, 59, 69, 55, 56, 80, 68, 98, 56, 76, 60, 80, 105, 74, 48, 64, 87, 55, 66, 57, 73, 65, 59, 63, 59, 71, 91, 64, 64, 72, 79, 65, 61, 74, 103, 92, 75, 65, 56, 60, 67, 72, 53, 73, 48, 81, 75, 66, 68, 76, 51, 79, 69, 67, 61, 67, 67, 59, 82, 63, 86, 78, 60, 46, 66, 59, 59, 61, 59, 72, 71, 70, 61, 65, 68, 67, 119, 57, 58, 74, 78, 54, 40, 79, 74, 61, 58, 66, 80, 71, 64, 62, 61, 64, 73, 43, 78, 70, 48, 45, 106, 106, 64, 46, 77, 56, 62, 72, 50, 69, 59, 91, 50, 54, 66, 53, 51, 72, 80, 82, 69, 63, 44, 71, 58, 60, 85, 84, 69, 52, 71, 48, 66, 48, 56, 69, 53, 102, 58, 58, 58, 53, 46, 77, 50, 62, 61, 56, 66, 53, 59, 65, 53, 58, 60, 69, 47, 58, 49, 62, 42, 75, 66, 66, 44, 85, 68, 72, 41, 74, 56, 74, 64, 78, 69, 53, 62, 57, 55, 44, 76, 73, 74, 111, 69, 74, 51, 78, 65, 64, 62, 66, 74, 83, 50, 61, 63, 74, 57, 68, 68, 65, 69, 76, 76, 44, 56, 53, 85, 84, 62, 58, 70, 67, 83, 69, 58, 65, 55, 68, 57, 76, 61, 54, 48, 97, 58, 59, 76, 56, 53, 99, 44, 62, 100, 69, 83, 73, 60, 62, 66, 53, 53, 61, 71, 56, 73, 70, 50, 66, 61, 86, 57, 64, 67, 58, 61, 60, 80, 58, 44, 74, 102, 73, 74, 62, 62, 81, 44, 42, 70, 52, 75, 46, 69, 81, 71, 70, 74, 53, 47, 72, 55, 68, 39, 62, 71, 63, 76, 73, 64, 63, 88, 60, 65, 44, 60, 67, 76, 50, 61, 70, 60, 53, 47, 102, 96, 113, 72, 66, 51, 57, 55, 64, 75, 71, 101, 60, 56, 77, 62, 58, 74, 56, 90, 82, 81, 52, 56, 58, 66, 64, 86, 58, 79, 94, 59, 63, 49, 73, 61, 66, 66, 69, 52, 55, 72, 56, 59, 70, 91, 58, 70, 78, 75, 60, 47, 95, 78, 57, 53, 61, 66, 43, 71, 72, 44, 53, 86, 72, 44, 81, 52, 75, 44, 66, 66, 91, 85, 57, 43, 51, 52, 72, 42, 68, 60, 61, 82, 65, 71, 57, 62, 80, 83, 52, 78, 68, 61, 62, 63, 76, 69, 52, 50, 101, 92, 82, 59, 62, 70, 54, 59, 63, 77, 88, 67, 63, 68, 51, 62, 59, 76, 57, 54, 57, 93, 78, 70, 54, 70, 59, 71, 68, 63, 75, 54, 78, 83, 66, 59, 69, 72, 68, 74, 54, 101, 67, 45, 68, 66, 44, 61, 48, 67, 89, 53, 82, 78, 45, 54, 59, 53, 61, 67, 69, 59, 70, 54, 55, 123, 76, 37, 78, 57, 64, 61, 87, 51, 56, 43, 72, 51, 96, 69, 53, 56, 76, 69, 89, 61, 69, 63, 63, 66, 82, 86, 67, 79, 96, 55, 56, 61, 73, 63, 61, 80, 75, 56, 62, 66, 56, 60, 57, 49, 78, 74, 63, 74, 69, 61, 51, 90, 81, 50, 64, 73, 49, 77, 72, 92, 58, 47, 54, 59, 53, 29, 49, 64, 49, 74, 71, 70, 66, 64, 108, 82, 46, 81, 106, 76, 61, 80, 55, 78, 63, 71, 54, 61, 66, 67, 76, 52, 79, 63, 51, 57, 60, 73, 53, 53, 65, 44, 65, 64, 50, 75, 84, 64, 50, 80, 59, 46, 100, 88, 67, 54, 83, 46, 64, 58, 51, 61, 46, 57, 74, 77, 65, 46, 70, 67, 45, 51, 78, 78, 71, 49, 83, 61, 49, 64, 68, 90, 82, 59, 74, 58, 59, 69, 49, 72, 48, 51, 74, 52, 91, 79, 60, 70, 68, 104, 48, 59, 73, 59, 65, 53, 72, 52, 58, 68, 70, 58, 66, 62, 51, 56, 62, 59, 81, 72, 43, 73, 81, 90, 70, 56, 49, 72, 65, 68, 60, 51, 48, 64, 69, 65, 71, 66, 114, 69, 52, 67, 67, 61, 51, 54, 60, 70, 58, 63, 51, 60, 69, 56, 60, 55, 89, 61, 53, 78, 55, 73, 34, 57, 55, 54, 53, 59, 61, 59, 75, 56, 59, 64, 74, 60, 46, 72, 65, 55, 53, 47, 58, 61, 73, 60, 63, 90, 50, 68, 71, 51, 81, 68, 54, 54, 54, 81, 66, 76, 52, 36, 79, 94, 70, 54, 108, 65, 74, 72, 52, 69, 68, 55, 70, 59, 62, 111, 86, 55, 46, 57, 51, 67, 68, 63, 63, 44, 56, 60, 78, 64, 58, 82, 58, 78, 53, 65, 50, 62, 68, 77, 45, 66, 54, 89, 63, 77, 68, 53, 69, 56, 46, 62, 77, 56, 61, 75, 76, 52, 72, 67, 67, 62, 53, 50, 74, 93, 75, 90, 72, 57, 64, 76, 62, 64, 55, 47, 67, 118, 65, 85, 69, 75, 67, 79, 42, 75, 50, 52, 89, 57, 63, 62, 48, 62, 63, 50, 59, 68, 61, 84, 58, 76, 64, 61, 70, 59, 56, 48, 69, 62, 71, 64, 53, 73, 69, 55, 73, 59, 83, 55, 68, 41, 84, 44, 77, 47, 60, 74, 77, 79, 72, 74, 58, 61, 94, 41, 67, 60, 51, 56, 58, 73, 59, 59, 47, 61, 56, 53, 89, 58, 69, 63, 60, 62, 44, 70, 63, 65, 42, 68, 60, 76, 60, 97, 56, 68, 70, 53, 68, 72, 63, 77, 86, 68, 72, 65, 53, 72, 75, 75, 58, 87, 58, 58, 60, 53, 59, 77, 82, 96, 60, 71, 66, 70, 84, 73, 80, 84, 83, 68, 49, 61, 86, 60, 67, 65, 57, 59, 77, 51, 53, 76, 74, 56, 101, 48, 47, 98, 75, 44, 75, 116, 74, 92, 61, 64, 69, 64, 68, 55, 54, 81, 57, 46, 57, 82, 55, 58, 46, 83, 100, 51, 66, 60, 54, 73, 55, 68, 62, 62, 78, 72, 46, 46, 59, 59, 70, 64, 61, 64, 55, 58, 55, 65, 64, 50, 71, 56, 66, 60, 93, 58, 70, 71, 88, 66, 90, 73, 46, 67, 77, 76, 84, 54, 66, 73, 62, 61, 62, 60, 43, 83, 47, 57, 69, 73, 68, 71, 53, 70, 86, 44, 68, 104, 74, 61, 67, 73, 81, 69, 44, 65, 74, 63, 79, 57, 83, 98, 61, 61, 60, 59, 57, 69, 76, 74, 106, 57, 89, 67, 68, 110, 62, 78, 76, 56, 67, 74, 63, 65, 76, 62, 51, 61, 53, 87, 93, 75, 43, 91, 53, 51, 60, 72, 53, 71, 64, 55, 46, 53, 65, 36, 71, 66, 56, 75, 63, 97, 49, 55, 54, 64, 60, 53, 72, 74, 72, 54, 67, 70, 83, 75, 55, 64, 69, 60, 44, 54, 53, 62, 45, 62, 99, 71, 54, 68, 57, 58, 66, 55, 71, 63, 82, 68, 63, 50, 67, 62, 84, 63, 69, 67, 55, 50, 63, 51, 56, 72, 91, 59, 66, 64, 87, 84, 92, 49, 54, 94, 55, 62, 72, 57, 67, 64, 59, 80, 61, 56, 72, 55, 63, 67, 88, 54, 64, 63, 76, 69, 56, 48, 42, 78, 83, 68, 59, 53, 57, 71, 38, 58, 80, 64, 61, 54, 101, 61, 44, 69, 74, 58, 63, 84, 51, 69, 106, 69, 55, 52, 50, 57, 72, 82, 93, 67, 80, 64, 59, 64, 57, 69, 52, 74, 49, 46, 73, 61, 45, 51, 59, 86, 60, 66, 81, 68, 68, 54, 56, 58, 67, 67, 68, 60, 63, 77, 77, 80, 49, 49, 74, 69, 57, 51, 70, 69, 88, 86, 65, 58, 72, 70, 72, 53, 54, 54, 53, 61, 66, 78, 65, 49, 76, 64, 108, 84, 69, 58, 78, 44, 61, 74, 65, 73, 58, 117, 65, 68, 71, 57, 71, 60, 65, 65, 62, 65, 55, 74, 71, 46, 79, 93, 70, 52, 62, 57, 73, 52, 74, 59, 65, 67, 57, 81, 64, 56, 66, 69, 60, 45, 74, 61, 88, 73, 91, 66, 57, 68, 96, 81, 104, 56, 63, 75, 82, 58, 57, 64, 64, 76, 67, 56, 81, 82, 75, 109, 60, 71, 59, 74, 49, 48, 65, 78, 64, 80, 73, 75, 94, 62, 66, 79, 69, 49, 53, 53, 65, 88, 55, 60, 45, 67, 63, 57, 87, 68, 81, 68, 64, 62, 75, 63, 62, 61, 62, 51, 84, 54, 81, 64, 64, 44, 52, 59, 80, 70, 59, 52, 44, 61, 75, 51, 64, 58, 61, 52, 56, 88, 60, 78, 56, 74, 58, 58, 60, 75, 88, 67, 78, 63, 61, 63, 69, 69, 58, 49, 78, 69, 97, 80, 68, 45, 68, 67, 68, 56, 80, 55, 57, 61, 55, 62, 58, 77, 76, 45, 65, 80, 54, 61, 74, 60, 65, 76, 81, 72, 82, 71, 52, 65, 68, 75, 42, 69, 66, 51, 75, 58, 69, 66, 56, 64, 53, 65, 66, 60, 55, 54, 72, 63, 70, 64, 68, 53, 78, 80, 90, 72, 65, 57, 65, 64, 72, 119, 92, 81, 49, 62, 76, 53, 58, 81, 88, 54, 35, 65, 54, 73, 57, 49, 60, 63, 51, 74, 42, 64, 49, 71, 90, 75, 71, 66, 51, 57, 65, 47, 66, 51, 40, 74, 57, 64, 38, 63, 52, 53, 70, 52, 76, 91, 59, 54, 84, 67, 73, 70, 80, 64, 60, 59, 57, 50, 72, 89, 55, 82, 55, 37, 59, 76, 48, 57, 58, 67, 43, 74, 55, 70, 96, 43, 71, 91, 88, 74, 71, 62, 58, 94, 67, 52, 51, 68, 58, 79, 62, 53, 57, 51, 70, 72, 70, 74, 63, 68, 91, 56, 81, 75, 69, 126, 61, 80, 81, 58, 64, 38, 63, 54, 59, 58, 97, 77, 56, 65, 66, 59, 72, 46, 80, 64, 54, 51, 43, 69, 82, 68, 69, 54, 82, 73, 75, 73, 61, 61, 55, 78, 62, 43, 63, 54, 63, 66, 76, 71, 45, 63, 74, 74, 84, 62, 99, 50, 62, 93, 44, 67, 56, 65, 71, 63, 70, 71, 65, 78, 54, 60, 48, 67, 67, 49, 72, 52, 67, 55, 72, 57, 67, 81, 68, 74, 64, 96, 53, 67, 57, 47, 78, 56, 57, 62, 61, 70, 130, 75, 54, 71, 50, 63, 86, 45, 69, 68, 54, 61, 74, 65, 74, 35, 60, 67, 93, 81, 71, 67, 79, 85, 82, 67, 61, 70, 62, 84, 72, 67, 56, 62, 58, 76, 64, 68, 58, 64, 83, 53, 55, 62, 61, 71, 59, 58, 60, 115, 70, 86, 69, 62, 67, 67, 75, 60, 59, 66, 69, 73, 53, 45, 46, 102, 60, 57, 64, 48, 72, 91, 65, 71, 52, 49, 77, 73, 70, 115, 64, 69, 56, 61, 58, 63, 56, 52, 50, 71, 73, 68, 68, 62, 44, 63, 54, 69, 66, 71, 57, 49, 59, 75, 59, 47, 54, 110, 48, 77, 67, 56, 84, 66, 67, 69, 101, 58, 71, 87, 62, 80, 69, 74, 64, 52, 71, 62, 61, 60, 65, 80, 50, 73, 60, 82, 52, 54, 56, 57, 74, 122, 71, 59, 85, 68, 68, 92, 55, 76, 52, 65, 65, 62, 61, 78, 62, 64, 76, 60, 94, 86, 90, 86, 54, 86, 50, 70, 66, 73, 67, 72, 51, 90, 50, 61, 64, 47, 70, 53, 57, 53, 80, 65, 79, 74, 60, 56, 84, 62, 84, 72, 55, 80, 63, 39, 65, 38, 78, 51, 50, 63, 88, 58, 52, 66, 77, 79, 49, 65, 70, 48, 91, 63, 48, 59, 69, 70, 69, 43, 57, 70, 62, 63, 64, 57, 55, 89, 70, 65, 48, 56, 80, 47, 78, 64, 57, 58, 69, 77, 55, 66, 57, 66, 54, 59, 52, 74, 69, 71, 54, 82, 57, 56, 50, 72, 49, 68, 79, 84, 104, 78, 85, 69, 43, 63, 66, 55, 47, 54, 53, 67, 66, 66, 51, 61, 54, 65, 104, 54, 54, 89, 68, 53, 62, 122, 58, 98, 65, 51, 74, 68, 65, 54, 71, 88, 68, 70, 62, 62, 59, 60, 59, 74, 88, 53, 64, 67, 70, 73, 67, 54, 46, 61, 71, 77, 46, 62, 50, 65, 64, 57, 61, 67, 69, 66, 69, 58, 66, 73, 56, 54, 85, 69, 76, 65, 77, 56, 75, 79, 71, 59, 55, 60, 56, 73, 88, 61, 61, 69, 70, 70, 45, 70, 55, 82, 73, 42, 74, 76, 72, 60, 85, 59, 70, 69, 77, 99, 41, 63, 75, 51, 77, 62, 62, 60, 72, 54, 72, 51, 56, 91, 76, 73, 58, 45, 53, 59, 67, 76, 111, 77, 59, 56, 64, 107, 68, 57, 90, 51, 54, 67, 63, 79, 76, 66, 50, 51, 72, 45, 65, 82, 61, 111, 51, 60, 54, 65, 48, 66, 67, 68, 52, 70, 55, 42, 68, 57, 80, 85, 69, 127, 57, 64, 62, 66, 58, 43, 55, 68, 60, 81, 57, 72, 99, 59, 54, 56, 72, 65, 55, 72, 55, 57, 68, 58, 99, 56, 51, 64, 65, 82, 74, 78, 65, 56, 98, 64, 67, 66, 63, 70, 78, 82, 73, 51, 41, 68, 75, 69, 53, 60, 57, 61, 87, 75, 74, 61, 79, 57, 62, 76, 52, 66, 66, 59, 57, 59, 52, 37, 70, 58, 55, 60, 46, 59, 74, 87, 61, 59, 68, 56, 53, 47, 67, 72, 52, 61, 80, 49, 62, 46, 60, 74, 74, 72, 60, 53, 73, 56, 73, 57, 63, 60, 76, 73, 41, 62, 100, 67, 63, 40, 83, 49, 56, 87, 90, 57, 62, 68, 66, 64, 64, 73, 48, 76, 63, 62, 72, 69, 55, 73, 47, 64, 64, 63, 69, 50, 38, 55, 74, 64, 55, 72, 99, 66, 56, 71, 76, 66, 68, 77, 62, 66, 67, 70, 72, 53, 93, 69, 58, 63, 73, 85, 58, 61, 63, 47, 63, 39, 52, 50, 75, 56, 55, 71, 99, 81, 55, 57, 81, 63, 80, 66, 59, 90, 69, 111, 58, 49, 61, 70, 52, 56, 74, 63, 74, 66, 70, 51, 73, 75, 72, 64, 66, 54, 61, 73, 60, 67, 64, 68, 55, 67, 82, 90, 63, 69, 69, 95, 59, 67, 67, 96, 91, 58, 72, 51, 65, 60, 111, 61, 98, 56, 67, 77, 68, 54, 55, 70, 64, 53, 65, 64, 39, 61, 68, 120, 72, 65, 52, 65, 65, 66, 61, 56, 53, 72, 67, 70, 98, 73, 57, 56, 81, 61, 52, 61, 58, 78, 82, 68, 53, 74, 69, 39, 66, 67, 79, 55, 73, 71, 84, 71, 71, 51, 64, 65, 68, 57, 70, 96, 62, 85, 81, 57, 41, 56, 62, 62, 45, 68, 71, 56, 56, 46, 59, 60, 72, 75, 72, 70, 73, 80, 70, 50, 44, 64, 90, 43, 107, 56, 85, 78, 55, 80, 54, 51, 61, 66, 102, 104, 51, 62, 73, 64, 72, 57, 78, 52, 53, 61, 79, 88, 60, 57, 49, 45, 87, 77, 68, 73, 63, 65, 70, 75, 61, 45, 64, 61, 85, 61, 82, 68, 49, 52, 65, 74, 71, 73, 66, 87, 73, 65, 59, 58, 55, 70, 78, 77, 81, 64, 69, 64, 58, 69, 66, 63, 79, 65, 62, 54, 56, 63, 53, 121, 107, 58, 67, 73, 59, 62, 59, 71, 79, 41, 53, 66, 75, 56, 89, 49, 62, 80, 79, 63, 46, 93, 51, 64, 100, 77, 68, 49, 62, 53, 64, 58, 45, 84, 64, 90, 82, 62, 41, 54, 61, 52, 65, 57, 71, 82, 76, 75, 89, 39, 47, 52, 77, 66, 56, 68, 62, 65, 74, 92, 55, 55, 58, 48, 69, 56, 68, 71, 53, 53, 72, 57, 61, 69, 81, 70, 66, 63, 66, 74, 78, 54, 40, 60, 48, 55, 72, 49, 84, 73, 72, 51, 57, 58, 52, 63, 60, 58, 64, 86, 69, 74, 64, 81, 66, 107, 62, 57, 63, 64, 68, 63, 72, 68, 64, 44, 95, 62, 63, 48, 78, 78, 67, 70, 67, 61, 71, 66, 64, 74, 52, 64, 86, 60, 86, 53, 65, 75, 65, 43, 55, 78, 58, 68, 76, 75, 54, 60, 59, 69, 73, 92, 71, 77, 91, 66, 100, 47, 43, 92, 52, 69, 70, 62, 45, 81, 61, 75, 65, 62, 61, 49, 76, 61, 64, 67, 58, 55, 70, 47, 58, 78, 73, 88, 58, 51, 70, 75, 69, 65, 59, 66, 57, 65, 68, 64, 65, 78, 122, 85, 67, 77, 75, 50, 51, 47, 69, 67, 58, 55, 60, 72, 80, 54, 49, 48, 73, 74, 43, 70, 46, 55, 64, 68, 60, 50, 54, 56, 83, 78, 66, 88, 60, 76, 57, 68, 51, 70, 65, 69, 56, 63, 81, 61, 60, 69, 61, 98, 82, 61, 61, 74, 57, 59, 80, 65, 55, 59, 52, 56, 55, 69, 67, 88, 63, 59, 48, 65, 63, 65, 49, 86, 58, 60, 66, 76, 66, 128, 68, 64, 49, 41, 52, 66, 51, 52, 63, 59, 61, 52, 62, 81, 52, 70, 80, 65, 95, 66, 55, 71, 59, 81, 72, 74, 59, 95, 57, 60, 66, 70, 73, 71, 56, 79, 81, 59, 84, 90, 59, 61, 71, 58, 62, 53, 85, 71, 62, 55, 56, 87, 67, 64, 66, 62, 64, 58, 64, 56, 52, 122, 54, 51, 86, 79, 98, 89, 62, 51, 63, 72, 73, 53, 67, 59, 77, 59, 87, 66, 56, 99, 62, 68, 54, 77, 61, 74, 63, 66, 75, 54, 57, 92, 71, 87, 77, 77, 68, 83, 80, 44, 60, 54, 74, 67, 58, 72, 77, 49, 61, 65, 70, 62, 74, 86, 57, 51, 120, 72, 82, 57, 58, 67, 61, 66, 61, 47, 60, 55, 70, 65, 42, 57, 62, 64, 73, 50, 75, 66, 71, 61, 70, 50, 57, 55, 55, 80, 58, 48, 69, 88, 113, 96, 73, 53, 61, 58, 65, 50, 83, 75, 53, 70, 71, 63, 76, 56, 67, 64, 114, 122, 57, 75, 72, 74, 55, 61, 67, 53, 66, 83, 64, 92, 48, 69, 72, 63, 55, 64, 82, 55, 70, 77, 40, 54, 66, 78, 72, 72, 70, 92, 72, 48, 60, 88, 61, 66, 68, 79, 61, 55, 88, 56, 36, 102, 53, 64, 83, 82, 67, 75, 80, 34, 67, 73, 62, 60, 64, 84, 91, 89, 68, 51, 60, 56, 64, 56, 49, 61, 72, 59, 71, 90, 42, 68, 59, 73, 82, 78, 61, 56, 51, 108, 102, 75, 58, 62, 74, 54, 62, 55, 53, 57, 54, 56, 55, 59, 59, 103, 63, 54, 63, 56, 66, 106, 73, 58, 66, 65, 46, 73, 63, 65, 56, 68, 68, 117, 50, 63, 75, 62, 95, 59, 85, 57, 48, 59, 67, 68, 66, 84, 66, 79, 45, 78, 53, 69, 65, 91, 40, 43, 91, 62, 67, 49, 67, 56, 83, 61, 67, 64, 92, 66, 46, 53, 87, 49, 54, 67, 68, 73, 53, 76, 47, 83, 50, 58, 60, 66, 58, 56, 47, 69, 59, 61, 107, 76, 69, 64, 70, 95, 66, 68, 47, 70, 59, 69, 69, 56, 63, 55, 54, 74, 59, 55, 79, 67, 74, 46, 59, 64, 39, 51, 69, 81, 62, 51, 42, 56, 53, 61, 74, 55, 67, 63, 79, 74, 63, 52, 70, 65, 73, 44, 51, 70, 78, 43, 74, 73, 56, 65, 71, 55, 66, 61, 64, 60, 40, 53, 51, 59, 103, 73, 60, 58, 75, 58, 54, 79, 48, 59, 49, 68, 59, 51, 84, 57, 58, 62, 49, 77, 52, 59, 56, 77, 69, 74, 60, 95, 57, 68, 56, 73, 69, 45, 59, 56, 107, 41, 49, 57, 68, 56, 60, 73, 73, 59, 87, 62, 53, 97, 86, 72, 82, 60, 70, 62, 67, 66, 74, 51, 85, 62, 75, 63, 62, 55, 67, 70, 60, 69, 85, 59, 77, 77, 60, 72, 67, 63, 64, 61, 61, 75, 73, 55, 61, 76, 52, 54, 80, 57, 67, 54, 75, 50, 73, 65, 63, 101, 65, 63, 57, 61, 40, 62, 52, 74, 71, 39, 73, 46, 55, 56, 55, 53, 53, 61, 73, 61, 71, 58, 76, 61, 67, 45, 60, 120, 66, 67, 60, 57, 52, 51, 59, 55, 82, 66, 67, 65, 66, 55, 41, 95, 67, 62, 81, 71, 53, 54, 80, 66, 65, 81, 95, 81, 75, 65, 71, 63, 54, 77, 57, 81, 61, 56, 55, 54, 85, 53, 114, 78, 96, 104, 101, 58, 56, 56, 69, 63, 107, 66, 62, 60, 66, 54, 64, 46, 39, 63, 67, 82, 81, 63, 72, 70, 62, 79, 74, 65, 79, 55, 66, 62, 50, 74, 60, 73, 58, 75, 60, 63, 43, 49, 67, 50, 85, 75, 68, 59, 76, 80, 45, 53, 67, 66, 62, 55, 48, 62, 71, 58, 46, 56, 62, 67, 66, 73, 66, 60, 61, 56, 45, 63, 47, 45, 88, 57, 61, 67, 87, 67, 67, 60, 58, 90, 62, 76, 66, 58, 64, 72, 65, 40, 52, 70, 74, 55, 63, 58, 67, 80, 74, 56, 73, 56, 60, 65, 58, 53, 87, 61, 65, 68, 55, 81, 54, 68, 76, 107, 48, 62, 86, 54, 77, 89, 67, 66, 60, 72, 92, 79, 84, 66, 59, 53, 53, 59, 67, 83, 73, 94, 73, 63, 78, 69, 61, 63, 58, 75, 56, 91, 44, 52, 65, 64, 68, 73, 63, 70, 54, 63, 55, 56, 68, 86, 85, 66, 58, 74, 90, 64, 97, 71, 78, 53, 121, 69, 63, 43, 54, 45, 87, 65, 54, 64, 51, 65, 72, 79, 107, 62, 41, 58, 78, 57, 78, 93, 64, 57, 64, 60, 71, 75, 77, 62, 54, 71, 60, 59, 67, 47, 62, 67, 60, 48, 61, 49, 81, 50, 53, 80, 67, 58, 75, 56, 60, 68, 61, 41, 80, 55, 49, 73, 63, 65, 57, 52, 55, 52, 104, 67, 53, 85, 69, 83, 58, 107, 73, 72, 71, 79, 54, 63, 36, 74, 50, 59, 64, 54, 80, 57, 53, 75, 63, 69, 48, 62, 53, 47, 57, 64, 45, 61, 73, 62, 52, 64, 87, 63, 84, 74, 74, 67, 70, 67, 69, 89, 53, 54, 56, 54, 61, 61, 68, 61, 52, 69, 64, 46, 90, 59, 91, 64, 50, 55, 68, 72, 62, 46, 72, 64, 69, 78, 63, 87, 46, 71, 51, 70, 102, 60, 56, 75, 59, 94, 65, 60, 40, 59, 81, 69, 70, 71, 66, 57, 67, 63, 64, 48, 49, 86, 79, 53, 63, 82, 61, 65, 59, 66, 58, 71, 73, 43, 63, 52, 53, 72, 61, 57, 72, 77, 94, 72, 87, 65, 62, 64, 73, 65, 72, 47, 46, 58, 59, 64, 53, 59, 56, 73, 59, 62, 78, 59, 61, 99, 63, 58, 71, 54, 59, 55, 62, 57, 83, 65, 77, 68, 51, 66, 55, 73, 47, 82, 62, 78, 44, 65, 62, 71, 49, 61, 62, 109, 61, 86, 65, 68, 63, 68, 55, 61, 58, 68, 56, 51, 39, 51, 58, 92, 64, 62, 61, 60, 63, 83, 48, 89, 74, 56, 54, 63, 79, 97, 70, 49, 60, 62, 53, 76, 81, 96, 50, 76, 55, 47, 56, 57, 63, 92, 59, 61, 52, 56, 53, 68, 74, 106, 77, 55, 56, 71, 67, 64, 72, 68, 59, 68, 60, 35, 79, 57, 82, 64, 65, 62, 71, 49, 70, 50, 61, 65, 73, 54, 86, 86, 52, 73, 67, 75, 46, 72, 72, 64, 57, 74, 62, 52, 47, 76, 61, 80, 56, 62, 68, 61, 62, 64, 57, 73, 82, 44, 46, 63, 73, 54, 48, 63, 54, 53, 63, 73, 52, 68, 71, 60, 60, 72, 71, 81, 62, 47, 64, 67, 81, 68, 59, 105, 83, 74, 101, 76, 61, 60, 61, 75, 52, 81, 71, 63, 61, 74, 53, 67, 56, 61, 82, 56, 82, 69, 61, 63, 62, 84, 60, 61, 57, 49, 48, 69, 46, 56, 65, 75, 47, 66, 71, 79, 66, 75, 61, 65, 65, 65, 80, 93, 52, 71, 59, 45, 68, 57, 61, 55, 73, 81, 64, 61, 63, 62, 71, 86, 65, 65, 55, 77, 88, 84, 52, 66, 65, 59, 49, 77, 78, 82, 50, 63, 78, 56, 110, 67, 80, 78, 61, 46, 108, 66, 50, 78, 62, 62, 67, 54, 55, 73, 68, 66, 45, 110, 63, 66, 68, 65, 65, 41, 47, 81, 41, 55, 64, 47, 64, 60, 63, 63, 93, 89, 72, 87, 69, 62, 78, 77, 67, 66, 51, 51, 82, 69, 74, 72, 69, 76, 52, 71, 89, 82, 72, 67, 76, 72, 71, 42, 63, 53, 74, 72, 61, 61, 73, 68, 45, 49, 60, 69, 79, 58, 57, 61, 67, 57, 67, 49, 57, 54, 55, 90, 49, 82, 72, 71, 79, 67, 54, 55, 79, 59, 71, 63, 67, 66, 53, 82, 62, 79, 53, 66, 38, 92, 55, 59, 67, 59, 57, 49, 82, 67, 58, 91, 53, 74, 47, 64, 129, 93, 76, 57, 67, 107, 61, 62, 80, 88, 65, 57, 73, 56, 76, 59, 63, 93, 70, 55, 53, 68, 59, 73, 61, 63, 83, 58, 59, 73, 52, 91, 50, 63, 74, 69, 61, 68, 58, 67, 74, 69, 59, 67, 74, 60, 62, 52, 64, 46, 67, 60, 67, 66, 58, 75, 54, 72, 85, 59, 50, 65, 53, 60, 82, 98, 67, 71, 73, 58, 54, 79, 53, 62, 67, 63, 58, 64, 62, 61, 83, 55, 76, 64, 74, 62, 64, 57, 53, 67, 71, 60, 71, 78, 59, 77, 56, 61, 60, 68, 74, 75, 69, 61, 69, 64, 63, 51, 59, 78, 45, 70, 63, 77, 79, 56, 53, 67, 70, 53, 65, 62, 64, 46, 57, 66, 62, 54, 91, 42, 72, 59, 65, 67, 62, 57, 59, 74, 58, 58, 60, 54, 66, 55, 56, 96, 70, 74, 53, 61, 53, 47, 70, 62, 67, 81, 69, 90, 79, 58, 86, 84, 67, 79, 66, 60, 54, 62, 68, 68, 62, 61, 60, 51, 53, 52, 71, 66, 64, 63, 53, 49, 63, 60, 58, 60, 70, 49, 81, 71, 72, 52, 78, 88, 47, 63, 64, 63, 77, 85, 66, 45, 57, 67, 91, 71, 64, 73, 72, 87, 58, 75, 51, 66, 68, 66, 77, 76, 77, 46, 60, 46, 48, 62, 60, 74, 61, 61, 81, 63, 64, 88, 86, 56, 63, 50, 66, 55, 45, 68, 54, 48, 154, 76, 70, 60, 65, 63, 59, 57, 59, 81, 56, 48, 54, 79, 66, 78, 61, 61, 59, 47, 52, 94, 67, 59, 70, 48, 74, 48, 90, 83, 107, 67, 63, 60, 56, 55, 120, 76, 68, 77, 57, 58, 74, 93, 65, 91, 71, 79, 70, 73, 54, 70, 61, 57, 62, 96, 69, 68, 63, 68, 76, 65, 66, 59, 60, 51, 52, 67, 58, 74, 71, 67, 57, 57, 68, 55, 67, 79, 70, 52, 73, 56, 63, 42, 65, 73, 47, 69, 88, 63, 74, 69, 72, 83, 92, 73, 56, 63, 60, 59, 78, 52, 99, 75, 73, 54, 59, 31, 63, 64, 67, 62, 80, 84, 65, 44, 86, 82, 67, 47, 53, 59, 66, 130, 72, 63, 78, 57, 55, 73, 64, 45, 67, 67, 66, 67, 61, 54, 61, 117, 54, 73, 56, 97, 63, 64, 53, 56, 75, 66, 65, 65, 54, 67, 69, 84, 72, 56, 35, 66, 60, 58, 63, 69, 75, 54, 60, 47, 61, 64, 57, 69, 70, 63, 60, 76, 65, 66, 79, 59, 68, 79, 78, 62, 57, 84, 69, 61, 48, 66, 61, 47, 64, 103, 84, 91, 57, 80, 64, 82, 59, 62, 98, 52, 55, 60, 75, 76, 61, 60, 66, 60, 54, 62, 60, 103, 72, 47, 110, 119, 68, 82, 106, 70, 61, 47, 62, 43, 67, 65, 118, 55, 61, 58, 50, 52, 55, 82, 54, 49, 55, 64, 87, 60, 52, 78, 62, 87, 62, 56, 48, 59, 70, 60, 73, 61, 96, 55, 50, 64, 80, 51, 55, 60, 72, 71, 81, 63, 80, 51, 87, 68, 106, 67, 63, 72, 62, 96, 69, 61, 56, 70, 70, 67, 56, 70, 51, 56, 73, 107, 53, 56, 58, 87, 63, 101, 82, 56, 67, 98, 85, 78, 49, 56, 72, 68, 63, 63, 59, 50, 86, 46, 57, 49, 68, 58, 59, 75, 85, 62, 105, 49, 58, 102, 65, 56, 73, 67, 46, 64, 80, 70, 74, 58, 62, 83, 68, 38, 55, 56, 69, 51, 56, 60, 60, 51, 59, 108, 71, 52, 110, 89, 75, 89, 81, 73, 68, 74, 64, 55, 67, 54, 68, 43, 65, 63, 60, 52, 73, 61, 75, 54, 68, 67, 61, 64, 46, 65, 58, 57, 57, 53, 63, 67, 51, 65, 79, 42, 56, 71, 72, 41, 77, 77, 56, 68, 50, 62, 72, 60, 62, 55, 82, 62, 65, 68, 74, 75, 39, 64, 59, 58, 91, 59, 72, 62, 48, 64, 75, 55, 69, 53, 85, 72, 74, 76, 77, 66, 64, 58, 60, 57, 72, 74, 80, 75, 60, 61, 84, 55, 72, 52, 71, 81, 66, 60, 48, 67, 83, 61, 70, 47, 69, 82, 61, 56, 63, 35, 72, 53, 80, 71, 60, 60, 46, 50, 71, 61, 65, 55, 83, 107, 65, 85, 60, 57, 59, 54, 59, 56, 42, 69, 48, 80, 57, 69, 58, 58, 90, 92, 63, 72, 64, 59, 56, 53, 52, 74, 53, 79, 65, 80, 82, 67, 72, 66, 109, 63, 75, 53, 65, 83, 60, 65, 68, 53, 83, 62, 84, 75, 53, 64, 58, 96, 67, 58, 67, 63, 50, 65, 56, 57, 56, 107, 62, 68, 74, 60, 86, 77, 66, 76, 80, 49, 50, 63, 76, 66, 84, 54, 78, 62, 68, 60, 67, 59, 59, 66, 64, 45, 47, 78, 68, 79, 60, 74, 43, 75, 56, 59, 61, 58, 63, 82, 53, 60, 83, 49, 60, 64, 75, 65, 68, 52, 54, 104, 54, 62, 52, 73, 52, 102, 57, 62, 60, 69, 64, 63, 88, 75, 64, 60, 57, 64, 60, 61, 73, 54, 62, 61, 60, 57, 64, 86, 60, 82, 64, 101, 57, 68, 59, 51, 48, 57, 65, 54, 63, 62, 50, 68, 73, 59, 52, 63, 69, 57, 67, 58, 63, 49, 59, 63, 46, 86, 66, 64, 58, 55, 70, 70, 69, 65, 72, 61, 65, 50, 66, 59, 101, 60, 52, 50, 60, 56, 43, 65, 52, 65, 62, 83, 56, 62, 56, 68, 74, 53, 69, 95, 73, 46, 57, 80, 75, 56, 57, 57, 58, 67, 69, 63, 50, 59, 52, 74, 99, 122, 63, 83, 70, 86, 60, 91, 53, 62, 64, 61, 65, 73, 54, 60, 63, 65, 71, 62, 62, 42, 66, 50, 83, 74, 71, 67, 57, 47, 79, 62, 56, 70, 61, 59, 64, 52, 71, 64, 73, 50, 73, 75, 53, 53, 52, 65, 73, 61, 60, 72, 50, 70, 63, 72, 54, 83, 55, 58, 49, 53, 58, 73, 56, 58, 62, 76, 66, 50, 75, 72, 95, 57, 75, 53, 61, 58, 58, 51, 78, 65, 65, 68, 61, 58, 68, 78, 72, 81, 78, 73, 58, 74, 63, 56, 73, 66, 71, 67, 78, 54, 90, 98, 48, 73, 85, 71, 65, 80, 64, 66, 54, 72, 68, 64, 65, 73, 78, 67, 69, 48, 58, 68, 89, 88, 62, 91, 58, 90, 59, 72, 72, 71, 51, 69, 86, 56, 77, 63, 77, 81, 54, 62, 58, 90, 72, 65, 61, 73, 63, 54, 77, 86, 76, 74, 80, 62, 51, 59, 65, 54, 75, 72, 68, 54, 59, 68, 84, 53, 62, 66, 70, 56, 66, 65, 56, 65, 72, 66, 88, 66, 80, 79, 70, 74, 72, 58, 58, 94, 40, 78, 64, 51, 68, 63, 61, 61, 53, 54, 66, 71, 53, 75, 94, 65, 67, 59, 86, 53, 64, 62, 62, 74, 51, 66, 77, 72, 58, 51, 76, 78, 66, 58, 68, 67, 66, 69, 61, 52, 65, 58, 69, 95, 79, 55, 102, 68, 73, 69, 48, 61, 63, 80, 79, 47, 85, 71, 82, 58, 53, 77, 62, 50, 54, 66, 86, 63, 59, 84, 59, 74, 72, 58, 67, 47, 69, 56, 58, 60, 70, 49, 73, 56, 88, 61, 83, 64, 62, 62, 60, 62, 61, 58, 67, 56, 85, 68, 57, 63, 80, 73, 123, 72, 60, 34, 67, 60, 66, 61, 60, 68, 82, 93, 79, 87, 71, 51, 57, 45, 74, 65, 55, 69, 98, 81, 70, 70, 61, 81, 54, 47, 57, 57, 64, 59, 55, 87, 52, 55, 114, 83, 61, 56, 62, 63, 56, 63, 68, 69, 67, 47, 81, 83, 70, 61, 55, 67, 74, 50, 74, 80, 76, 53, 51, 56, 78, 70, 85, 71, 115, 58, 63, 65, 56, 69, 93, 60, 63, 60, 78, 58, 79, 74, 81, 56, 78, 41, 57, 44, 51, 57, 58, 61, 51, 79, 88, 49, 84, 75, 67, 85, 63, 69, 55, 59, 63, 74, 59, 67, 52, 101, 59, 60, 76, 63, 64, 64, 72, 67, 75, 41, 60, 74, 64, 57, 59, 64, 67, 47, 78, 58, 66, 71, 100, 51, 41, 48, 61, 62, 55, 48, 60, 53, 68, 57, 90, 73, 87, 66, 78, 71, 96, 65, 66, 57, 67, 73, 46, 62, 75, 48, 62, 84, 68, 69, 47, 51, 74, 57, 46, 74, 67, 70, 66, 64, 81, 65, 68, 53, 76, 71, 61, 73, 61, 63, 62, 69, 82, 73, 72, 46, 57, 57, 67, 85, 63, 59, 61, 74, 51, 56, 57, 64, 52, 57, 57, 63, 72, 54, 86, 66, 83, 63, 74, 55, 92, 90, 58, 70, 69, 75, 75, 57, 58, 82, 66, 96, 87, 44, 60, 56, 56, 76, 77, 57, 53, 58, 84, 55, 41, 67, 103, 66, 54, 70, 52, 68, 53, 70, 63, 57, 67, 58, 49, 62, 75, 79, 124, 131, 66, 47, 64, 57, 61, 58, 48, 58, 92, 56, 114, 68, 41, 52, 56, 76, 42, 58, 54, 58, 57, 58, 77, 64, 52, 65, 66, 77, 64, 66, 59, 69, 61, 54, 67, 78, 96, 63, 60, 65, 75, 99, 67, 64, 97, 65, 60, 66, 89, 58, 60, 72, 83, 103, 58, 73, 44, 101, 82, 70, 70, 70, 58, 64, 69, 82, 65, 59, 63, 61, 58, 52, 63, 57, 57, 92, 77, 59, 67, 91, 58, 75, 63, 52, 75, 95, 99, 69, 58, 63, 83, 57, 83, 67, 56, 102, 53, 59, 102, 51, 89, 56, 65, 70, 75, 78, 73, 71, 69, 69, 82, 111, 56, 70, 77, 56, 78, 78, 60, 68, 49, 74, 71, 94, 62, 53, 69, 77, 85, 54, 77, 64, 72, 105, 54, 54, 63, 64, 56, 66, 67, 56, 54, 65, 59, 51, 69, 72, 50, 51, 52, 73, 42, 64, 63, 64, 78, 71, 61, 65, 54, 60, 67, 61, 43, 96, 55, 58, 70, 69, 79, 44, 69, 91, 61, 66, 66, 54, 58, 62, 50, 50, 60, 62, 73, 57, 77, 58, 60, 71, 85, 58, 78, 80, 58, 50, 79, 49, 45, 51, 33, 56, 100, 60, 67, 61, 74, 57, 58, 64, 57, 93, 78, 102, 72, 74, 59, 76, 64, 59, 44, 89, 59, 67, 63, 54, 47, 48, 80, 52, 65, 54, 72, 55, 85, 60, 56, 95, 69, 65, 83, 79, 56, 73, 93, 63, 55, 67, 55, 83, 71, 141, 66, 66, 69, 53, 65, 55, 53, 74, 55, 58, 52, 62, 56, 52, 70, 55, 66, 49, 62, 75, 72, 64, 61, 64, 45, 65, 52, 104, 59, 63, 67, 69, 50, 56, 44, 57, 88, 46, 83, 84, 73, 61, 86, 62, 59, 58, 52, 63, 67, 54, 71, 65, 59, 61, 62, 62, 53, 71, 58, 55, 49, 93, 64, 86, 62, 66, 66, 87, 82, 56, 65, 57, 60, 57, 62, 50, 82, 64, 55, 64, 64, 46, 60, 66, 56, 69, 64, 54, 62, 58, 61, 66, 55, 61, 78, 93, 82, 61, 74, 68, 59, 71, 55, 68, 69, 62, 102, 68, 60, 71, 68, 67, 66, 86, 62, 63, 56, 45, 43, 64, 77, 52, 62, 101, 62, 84, 60, 70, 61, 64, 59, 62, 68, 61, 57, 103, 76, 66, 66, 66, 63, 55, 54, 56, 64, 71, 59, 72, 67, 79, 51, 56, 55, 70, 79, 70, 55, 64, 60, 68, 78, 64, 48, 71, 64, 71, 53, 44, 63, 56, 48, 73, 75, 77, 45, 61, 72, 56, 59, 76, 61, 62, 58, 67, 88, 62, 51, 61, 63, 67, 54, 46, 59, 82, 60, 69, 90, 104, 51, 51, 70, 70, 59, 65, 55, 68, 67, 60, 74, 72, 66, 55, 66, 67, 53, 63, 42, 62, 69, 55, 93, 73, 58, 79, 70, 56, 48, 75, 61, 74, 54, 68, 59, 83, 65, 60, 51, 75, 63, 61, 66, 57, 62, 76, 88, 72, 63, 55, 60, 73, 86, 68, 84, 44, 51, 66, 59, 45, 73, 70, 66, 52, 57, 64, 58, 79, 72, 51, 61, 56, 81, 66, 82, 66, 53, 48, 66, 50, 53, 85, 59, 60, 57, 64, 60, 74, 60, 67, 54, 57, 71, 47, 59, 68, 51, 56, 63, 51, 73, 54, 72, 59, 69, 63, 52, 72, 46, 65, 56, 56, 68, 55, 35, 54, 63, 85, 65, 71, 50, 57, 79, 72, 54, 63, 69, 69, 63, 62, 61, 60, 56, 66, 59, 76, 78, 65, 55, 57, 64, 61, 79, 71, 68, 63, 64, 55, 72, 69, 64, 74, 59, 75, 62, 75, 71, 47, 65, 90, 59, 53, 54, 64, 61, 61, 65, 67, 67, 62, 52, 62, 64, 87, 62, 57, 57, 75, 70, 81, 111, 62, 66, 83, 59, 56, 66, 76, 63, 63, 64, 55, 62, 61, 114, 68, 64, 58, 70, 63, 89, 59, 58, 55, 71, 79, 62, 66, 60, 69, 53, 62, 65, 66, 42, 55, 63, 53, 104, 84, 63, 76, 65, 96, 44, 54, 50, 68, 61, 73, 87, 64, 60, 68, 79, 56, 56, 81, 60, 64, 77, 62, 82, 52, 61, 69, 61, 75, 85, 61, 60, 61, 64, 62, 49, 57, 88, 52, 75, 66, 62, 68, 44, 59, 44, 87, 98, 67, 64, 46, 80, 46, 53, 54, 54, 64, 105, 79, 61, 71, 78, 55, 61, 56, 61, 75, 62, 67, 75, 77, 67, 73, 51, 55, 76, 54, 52, 58, 60, 52, 55, 73, 75, 64, 84, 82, 60, 56, 62, 62, 63, 61, 66, 70, 69, 57, 82, 57, 66, 63, 56, 57, 65, 83, 106, 71, 57, 93, 54, 63, 64, 46, 63, 55, 46, 67, 63, 66, 60, 83, 65, 57, 68, 47, 70, 71, 78, 61, 69, 56, 84, 87, 64, 60, 65, 77, 51, 69, 60, 60, 77, 101, 70, 62, 68, 52, 60, 53, 107, 69, 63, 54, 66, 53, 65, 74, 60, 76, 68, 56, 83, 73, 80, 58, 110, 49, 67, 58, 70, 76, 82, 58, 69, 56, 54, 71, 65, 52, 47, 85, 67, 52, 55, 64, 59, 56, 55, 57, 63, 61, 68, 68, 56, 64, 51, 71, 61, 59, 60, 66, 72, 69, 54, 67, 53, 78, 69, 49, 76, 57, 56, 53, 65, 68, 55, 88, 54, 57, 75, 62, 76, 69, 67, 65, 81, 45, 64, 62, 75, 51, 91, 60, 125, 65, 67, 54, 65, 62, 59, 64, 65, 56, 54, 92, 70, 69, 61, 61, 59, 62, 63, 54, 43, 75, 54, 90, 70, 62, 58, 105, 56, 55, 64, 64, 141, 81, 84, 82, 70, 65, 80, 60, 119, 58, 38, 66, 68, 52, 57, 77, 67, 71, 100, 74, 108, 65, 57, 65, 62, 88, 89, 63, 74, 62, 76, 58, 50, 56, 82, 59, 71, 74, 72, 59, 79, 71, 70, 64, 64, 67, 61, 74, 66, 59, 79, 54, 56, 72, 60, 78, 54, 69, 97, 70, 73, 52, 58, 62, 113, 58, 50, 67, 53, 61, 54, 67, 41, 69, 60, 74, 58, 53, 79, 53, 63, 109, 77, 74, 49, 108, 98, 76, 115, 60, 64, 85, 96, 56, 37, 51, 66, 60, 49, 83, 101, 65, 89, 59, 57, 52, 61, 61, 73, 47, 77, 57, 81, 58, 47, 69, 62, 91, 65, 57, 67, 68, 69, 76, 75, 71, 55, 73, 59, 72, 55, 69, 73, 59, 98, 46, 56, 67, 73, 77, 55, 64, 59, 88, 82, 60, 49, 84, 66, 60, 67, 50, 60, 75, 69, 61, 58, 49, 75, 59, 75, 61, 68, 83, 74, 65, 50, 56, 67, 63, 56, 44, 48, 64, 47, 45, 95, 102, 91, 67, 95, 63, 65, 63, 50, 88, 64, 110, 84, 70, 84, 49, 63, 53, 54, 65, 48, 88, 62, 89, 85, 105, 63, 67, 60, 66, 56, 82, 59, 75, 58, 72, 87, 72, 81, 70, 93, 64, 58, 72, 89, 71, 64, 88, 61, 53, 71, 54, 70, 59, 56, 55, 66, 51, 53, 44, 64, 62, 81, 46, 51, 69, 72, 70, 65, 97, 61, 38, 62, 75, 59, 56, 48, 86, 66, 63, 58, 73, 86, 67, 55, 50, 68, 72, 55, 61, 77, 51, 82, 51, 60, 54, 66, 71, 77, 66, 51, 66, 61, 66, 59, 61, 60, 67, 71, 63, 64, 78, 49, 47, 80, 63, 48, 59, 48, 56, 92, 69, 75, 53, 73, 47, 57, 78, 58, 61, 64, 56, 75, 79, 103, 95, 62, 78, 50, 54, 49, 85, 63, 60, 66, 70, 75, 83, 62, 67, 50, 69, 70, 66, 90, 39, 52, 57, 60, 70, 61, 78, 62, 51, 69, 86, 77, 59, 48, 108, 73, 60, 53, 70, 66, 68, 58, 72, 60, 58, 66, 63, 68, 73, 54, 66, 71, 57, 60, 57, 86, 62, 66, 46, 80, 121, 69, 56, 76, 55, 50, 77, 103, 62, 52, 89, 82, 62, 70, 52, 75, 62, 63, 56, 59, 68, 68, 55, 67, 101, 69, 63, 54, 52, 62, 49, 76, 73, 50, 67, 65, 68, 81, 85, 80, 57, 51, 65, 67, 60, 52, 67, 75, 59, 53, 75, 61, 76, 62, 73, 54, 55, 60, 50, 48, 76, 77, 47, 60, 55, 77, 53, 64, 59, 59, 56, 40, 59, 62, 56, 70, 54, 48, 69, 82, 52, 56, 66, 45, 79, 64, 70, 50, 45, 58, 61, 40, 64, 64, 67, 65, 65, 37, 56, 55, 48, 70, 45, 68, 73, 65, 66, 43, 80, 71, 69, 77, 52, 49, 56, 54, 74, 88, 52, 50, 65, 78, 69, 59, 60, 57, 54, 54, 63, 57, 66, 64, 78, 65, 64, 56, 69, 69, 58, 56, 70, 54, 81, 63, 60, 97, 61, 61, 63, 75, 53, 72, 98, 91, 83, 79, 47, 60, 75, 67, 48, 61, 59, 52, 65, 56, 53, 77, 76, 53, 75, 94, 71, 56, 52, 62, 62, 53, 58, 81, 67, 78, 49, 71, 59, 52, 70, 52, 75, 74, 50, 70, 48, 50, 86, 72, 49, 68, 48, 58, 73, 63, 64, 60, 58, 63, 58, 84, 53, 51, 75, 64, 61, 53, 60, 47, 48, 56, 73, 54, 41, 60, 70, 65, 48, 70, 78, 50, 72, 85, 59, 51, 62, 51, 47, 50, 82, 52, 56, 57, 84, 64, 69, 51, 78, 41, 32, 72, 83, 61, 129, 69, 65, 56, 64, 56, 53, 59, 65, 61, 82, 79, 50, 68, 65, 64, 44, 59, 47, 75, 45, 47, 99, 66, 60, 62, 58, 91, 61, 57, 43, 102, 67, 55, 57, 70, 60, 61, 71, 71, 124, 64, 57, 56, 58, 148, 81, 50, 66, 85, 80, 70, 98, 71, 73, 72, 78, 62, 82, 54, 48, 62, 54, 86, 71, 72, 102, 59, 60, 58, 63, 63, 105, 54, 59, 79, 60, 61, 42, 54, 75, 71, 75, 66, 112, 72, 41, 75, 53, 63, 56, 50, 54, 50, 113, 79, 67, 47, 61, 51, 63, 70, 60, 58, 68, 60, 56, 101, 60, 67, 68, 63, 54, 70, 45, 62, 65, 53, 65, 46, 65, 61, 79, 64, 50, 73, 107, 63, 67, 72, 79, 60, 54, 61, 96, 59, 52, 63, 28, 63, 58, 46, 52, 51, 50, 69, 75, 87, 70, 55, 71, 48, 85, 53, 63, 65, 85, 73, 87, 50, 60, 56, 56, 74, 74, 58, 69, 66, 72, 51, 56, 94, 72, 53, 48, 73, 78, 62, 53, 41, 65, 79, 100, 63, 79, 60, 70, 80, 52, 73, 47, 73, 83, 71, 59, 47, 63, 57, 72, 60, 57, 64, 56, 63, 70, 79, 103, 91, 75, 64, 46, 64, 67, 75, 76, 52, 53, 65, 81, 81, 55, 59, 60, 60, 85, 45, 52, 58, 62, 87, 47, 66, 49, 62, 56, 87, 68, 58, 46, 69, 79, 76, 57, 64, 55, 58, 90, 53, 85, 74, 51, 60, 69, 61, 60, 62, 52, 79, 83, 54, 77, 68, 55, 78, 53, 73, 60, 52, 64, 56, 78, 78, 70, 92, 54, 72, 70, 82, 56, 78, 67, 48, 58, 50, 59, 71, 61, 85, 55, 55, 74, 77, 59, 43, 49, 68, 42, 77, 73, 73, 69, 82, 50, 77, 38, 63, 59, 68, 75, 60, 58, 71, 50, 82, 59, 64, 58, 49, 87, 69, 64, 53, 54, 54, 51, 60, 54, 61, 40, 127, 54, 73, 56, 78, 58, 63, 69, 52, 63, 61, 99, 75, 58, 75, 73, 46, 64, 75, 61, 56, 63, 54, 60, 54, 52, 72, 50, 65, 62, 63, 56, 55, 108, 38, 38, 49, 73, 98, 58, 53, 51, 65, 63, 82, 76, 62, 80, 37, 65, 57, 57, 71, 49, 55, 41, 57, 64, 77, 61, 67, 51, 42, 61, 117, 62, 68, 71, 61, 64, 69, 97, 74, 94, 55, 59, 63, 67, 56, 49, 59, 73, 59, 61, 101, 54, 67, 89, 61, 61, 52, 63, 74, 63, 54, 74, 66, 73, 51, 93, 72, 61, 63, 51, 66, 49, 83, 51, 55, 64, 55, 79, 60, 51, 80, 70, 47, 73, 65, 64, 56, 75, 62, 67, 49, 99, 62, 80, 75, 49, 61, 78, 69, 54, 47, 63, 74, 62, 88, 57, 64, 74, 69, 102, 71, 56, 113, 54, 59, 80, 65, 79, 79, 53, 73, 59, 81, 79, 67, 69, 69, 70, 100, 86, 68, 57, 57, 71, 64, 97, 70, 62, 67, 58, 58, 64, 97, 63, 60, 67, 75, 62, 66, 43, 54, 63, 88, 58, 57, 81, 60, 62, 59, 74, 81, 63, 56, 43, 68, 80, 54, 74, 53, 58, 41, 50, 82, 45, 66, 70, 71, 64, 61, 72, 67, 65, 90, 64, 69, 75, 65, 86, 53, 69, 53, 94, 59, 63, 65, 78, 63, 63, 60, 67, 69, 78, 52, 65, 60, 60, 82, 55, 60, 66, 73, 81, 58, 69, 54, 60, 72, 68, 66, 95, 75, 79, 56, 45, 68, 62, 52, 63, 75, 79, 49, 63, 59, 56, 76, 67, 92, 92, 42, 62, 71, 65, 58, 63, 73, 74, 81, 65, 54, 70, 60, 74, 69, 65, 53, 69, 74, 71, 68, 55, 68, 55, 73, 128, 64, 55, 103, 55, 72, 72, 59, 51, 61, 58, 62, 50, 57, 56, 67, 109, 66, 64, 50, 47, 53, 62, 53, 67, 51, 58, 59, 64, 84, 45, 95, 74, 56, 51, 57, 68, 73, 132, 62, 72, 58, 58, 54, 49, 76, 66, 74, 58, 50, 58, 91, 63, 58, 76, 66, 66, 80, 59, 98, 51, 57, 60, 83, 51, 63, 55, 52, 77, 110, 57, 70, 47, 73, 69, 71, 50, 83, 65, 58, 132, 63, 64, 50, 68, 76, 66, 87, 66, 69, 58, 63, 54, 55, 71, 65, 51, 76, 70, 64, 60, 52, 51, 59, 65, 65, 106, 64, 68, 44, 57, 64, 53, 60, 70, 65, 55, 63, 66, 76, 86, 66, 52, 68, 69, 54, 63, 54, 74, 74, 64, 66, 52, 45, 75, 72, 79, 53, 57, 75, 52, 70, 86, 55, 90, 70, 66, 91, 64, 59, 50, 68, 63, 59, 61, 59, 66, 61, 59, 60, 80, 59, 64, 68, 56, 68, 66, 51, 69, 59, 57, 64, 49, 59, 108, 64, 90, 57, 58, 50, 60, 56, 66, 55, 58, 88, 67, 60, 65, 71, 66, 57, 113, 67, 94, 84, 62, 42, 61, 63, 55, 61, 82, 77, 70, 56, 73, 55, 67, 61, 61, 44, 93, 55, 59, 65, 45, 73, 71, 54, 46, 64, 69, 52, 76, 74, 70, 52, 65, 60, 67, 74, 102, 87, 94, 49, 68, 56, 52, 56, 67, 58, 79, 59, 51, 54, 59, 67, 72, 57, 56, 66, 63, 52, 62, 68, 64, 55, 55, 72, 58, 60, 52, 66, 84, 80, 59, 69, 63, 46, 60, 72, 57, 53, 70, 61, 55, 58, 63, 73, 51, 65, 75, 66, 57, 35, 64, 62, 70, 67, 76, 71, 64, 56, 59, 44, 75, 55, 82, 57, 51, 64, 79, 49, 54, 100, 62, 70, 55, 64, 61, 62, 62, 73, 67, 62, 56, 66, 63, 59, 51, 61, 32, 67, 67, 71, 69, 67, 81, 77, 67, 67, 94, 48, 63, 53, 56, 80, 51, 68, 56, 45, 50, 67, 53, 75, 64, 74, 35, 56, 56, 55, 61, 110, 71, 62, 59, 54, 68, 49, 57, 66, 46, 79, 53, 52, 67, 47, 69, 69, 75, 61, 58, 71, 108, 70, 60, 74, 53, 55, 53, 48, 78, 48, 58, 59, 69, 70, 87, 58, 49, 55, 67, 57, 104, 74, 83, 57, 99, 53, 54, 55, 42, 63, 46, 51, 80, 63, 86, 106, 42, 50, 47, 58, 61, 52, 64, 68, 76, 68, 64, 74, 49, 63, 73, 68, 61, 48, 86, 101, 74, 75, 62, 64, 58, 74, 87, 61, 100, 78, 54, 86, 70, 106, 74, 69, 76, 73, 59, 69, 58, 73, 63, 83, 76, 77, 81, 49, 84, 66, 53, 60, 63, 72, 55, 67, 59, 56, 62, 69, 77, 57, 64, 63, 70, 61, 51, 60, 61, 52, 58, 50, 60, 48, 52, 84, 53, 54, 61, 100, 92, 51, 68, 74, 74, 68, 62, 60, 54, 42, 62, 64, 56, 74, 69, 54, 55, 66, 64, 60, 63, 61, 44, 67, 65, 114, 82, 62, 56, 76, 95, 65, 75, 72, 96, 65, 71, 47, 68, 46, 66, 46, 57, 60, 49, 61, 65, 70, 54, 61, 62, 71, 60, 62, 98, 79, 66, 64, 52, 68, 52, 59, 111, 55, 64, 89, 62, 50, 68, 64, 41, 91, 53, 75, 75, 72, 78, 65, 63, 64, 80, 46, 52, 69, 76, 105, 67, 52, 65, 60, 42, 59, 54, 65, 55, 58, 73, 60, 59, 45, 80, 69, 50, 110, 83, 59, 112, 62, 63, 61, 61, 55, 52, 62, 66, 69, 78, 68, 58, 51, 71, 52, 137, 58, 78, 80, 62, 65, 55, 47, 57, 57, 53, 67, 73, 77, 55, 58, 81, 93, 81, 81, 59, 54, 68, 55, 79, 57, 59, 75, 48, 67, 69, 61, 92, 74, 56, 61, 63, 64, 77, 70, 73, 63, 52, 54, 56, 58, 61, 52, 75, 129, 72, 51, 70, 68, 60, 64, 50, 44, 53, 60, 71, 61, 72, 43, 56, 73, 66, 61, 76, 72, 66, 67, 64, 85, 61, 67, 86, 88, 63, 73, 68, 113, 46, 101, 79, 66, 79, 57, 56, 47, 45, 61, 65, 56, 78, 56, 58, 57, 78, 56, 70, 66, 62, 80, 88, 62, 118, 52, 61, 75, 53, 60, 54, 62, 67, 69, 47, 81, 67, 60, 53, 41, 58, 73, 82, 94, 76, 66, 61, 61, 89, 58, 52, 52, 58, 69, 62, 91, 81, 63, 54, 55, 51, 53, 72, 61, 53, 50, 79, 53, 45, 61, 80, 84, 58, 58, 53, 69, 48, 45, 55, 92, 67, 70, 45, 75, 122, 79, 71, 59, 74, 63, 52, 59, 57, 73, 55, 46, 85, 72, 81, 80, 64, 76, 109, 82, 76, 60, 80, 69, 49, 57, 75, 66, 48, 58, 71, 64, 72, 59, 54, 50, 59, 59, 66, 60, 64, 63, 51, 62, 82, 61, 61, 67, 83, 56, 46, 66, 43, 50, 58, 60, 84, 91, 61, 52, 62, 86, 67, 85, 58, 63, 58, 48, 48, 78, 69, 52, 63, 57, 64, 66, 83, 54, 72, 81, 96, 62, 94, 66, 71, 69, 63, 60, 54, 60, 61, 52, 79, 68, 48, 54, 61, 61, 55, 54, 101, 59, 64, 76, 62, 74, 47, 63, 64, 69, 60, 64, 51, 64, 50, 52, 66, 57, 56, 72, 51, 59, 62, 52, 59, 112, 70, 59, 63, 92, 66, 65, 63, 52, 50, 78, 74, 82, 62, 84, 86, 73, 70, 78, 71, 81, 68, 57, 87, 63, 67, 56, 98, 77, 69, 55, 61, 89, 83, 63, 60, 58, 70, 61, 59, 56, 69, 84, 58, 67, 128, 66, 59, 55, 56, 59, 63, 55, 63, 99, 53, 68, 74, 69, 67, 55, 69, 56, 35, 63, 70, 41, 74, 50, 83, 66, 67, 83, 42, 80, 86, 49, 60, 55, 76, 69, 54, 63, 60, 70, 64, 50, 66, 54, 65, 65, 58, 76, 88, 66, 72, 64, 69, 113, 72, 64, 57, 78, 56, 60, 52, 101, 53, 73, 67, 68, 81, 86, 67, 72, 68, 64, 65, 82, 78, 62, 77, 84, 60, 63, 65, 81, 60, 59, 55, 76, 83, 45, 55, 72, 83, 78, 67, 69, 70, 66, 56, 58, 75, 71, 71, 67, 54, 47, 102, 60, 62, 58, 73, 46, 68, 53, 57, 55, 82, 68, 68, 57, 55, 60, 58, 75, 94, 58, 54, 59, 58, 49, 60, 60, 116, 61, 101, 71, 60, 42, 55, 65, 66, 84, 97, 60, 90, 54, 57, 58, 69, 60, 53, 72, 62, 54, 66, 50, 49, 49, 79, 53, 55, 47, 59, 67, 77, 67, 60, 67, 65, 63, 54, 67, 80, 52, 70, 57, 81, 88, 53, 52, 57, 68, 104, 63, 80, 87, 56, 58, 48, 55, 58, 64, 57, 51, 63, 75, 62, 43, 68, 78, 66, 64, 60, 51, 58, 50, 59, 63, 56, 65, 45, 96, 73, 56, 110, 58, 52, 63, 61, 56, 92, 74, 69, 65, 65, 80, 82, 49, 69, 53, 58, 49, 54, 55, 82, 62, 67, 72, 81, 62, 62, 61, 57, 72, 51, 58, 77, 86, 76, 47, 52, 56, 135, 63, 66, 69, 52, 61, 46, 69, 71, 62, 72, 60, 67, 71, 74, 62, 70, 64, 70, 55, 74, 71, 55, 50, 70, 98, 86, 54, 109, 46, 74, 62, 64, 54, 57, 61, 64, 66, 65, 48, 59, 70, 58, 57, 55, 50, 39, 69, 81, 62, 66, 39, 72, 65, 72, 54, 51, 91, 92, 89, 88, 61, 84, 64, 59, 75, 70, 69, 62, 66, 71, 38, 50, 50, 56, 67, 58, 83, 68, 75, 59, 65, 77, 67, 61, 63, 59, 59, 74, 55, 57, 67, 99, 71, 74, 64, 58, 111, 61, 51, 58, 47, 58, 71, 73, 80, 68, 58, 46, 59, 85, 84, 82, 60, 68, 58, 61, 68, 63, 54, 69, 66, 53, 59, 66, 75, 66, 47, 69, 56, 59, 92, 54, 84, 60, 79, 68, 80, 73, 67, 57, 59, 61, 61, 53, 56, 70, 68, 82, 58, 80, 58, 71, 57, 52, 63, 55, 67, 103, 63, 49, 93, 61, 70, 51, 77, 75, 66, 85, 64, 61, 82, 63, 62, 54, 68, 44, 66, 57, 66, 55, 89, 58, 45, 55, 93, 54, 69, 57, 53, 60, 64, 60, 57, 51, 70, 62, 61, 77, 49, 54, 62, 94, 41, 47, 64, 55, 58, 67, 86, 84, 86, 66, 62, 92, 71, 56, 72, 64, 47, 59, 67, 70, 58, 64, 54, 69, 78, 64, 65, 50, 63, 56, 50, 64, 65, 70, 51, 50, 99, 54, 52, 81, 52, 52, 68, 58, 56, 49, 67, 54, 69, 59, 71, 76, 65, 62, 70, 56, 58, 70, 54, 57, 70, 90, 65, 60, 68, 89, 97, 67, 86, 67, 59, 76, 61, 55, 58, 55, 53, 66, 90, 57, 77, 68, 82, 56, 58, 68, 67, 77, 67, 50, 59, 62, 54, 80, 81, 57, 66, 73, 69, 51, 58, 50, 52, 60, 59, 68, 57, 69, 63, 59, 67, 43, 98, 89, 59, 68, 78, 49, 63, 52, 63, 59, 48, 75, 66, 58, 71, 71, 92, 53, 97, 68, 67, 58, 53, 67, 56, 61, 115, 75, 58, 63, 52, 95, 52, 50, 63, 95, 97, 64, 65, 61, 62, 70, 53, 106, 66, 56, 79, 65, 58, 47, 73, 54, 57, 46, 59, 67, 70, 57, 60, 69, 69, 76, 68, 83, 70, 41, 64, 83, 59, 64, 60, 62, 61, 41, 55, 76, 64, 66, 82, 71, 51, 59, 33, 58, 75, 45, 83, 52, 61, 59, 46, 76, 53, 62, 43, 53, 51, 51, 73, 45, 109, 48, 79, 75, 77, 60, 64, 87, 53, 69, 60, 52, 65, 65, 76, 66, 63, 68, 64, 49, 61, 70, 52, 82, 63, 69, 82, 84, 60, 48, 59, 50, 66, 94, 52, 69, 48, 58, 60, 90, 63, 61, 65, 50, 70, 67, 60, 56, 70, 45, 53, 79, 66, 68, 64, 66, 69, 74, 71, 95, 61, 61, 52, 63, 44, 54, 67, 79, 50, 65, 75, 43, 63, 64, 78, 58, 70, 65, 68, 82, 89, 58, 53, 64, 67, 46, 58, 60, 62, 61, 55, 68, 53, 80, 63, 57, 67, 66, 66, 59, 59, 63, 45, 68, 113, 36, 87, 59, 52, 43, 72, 66, 67, 70, 53, 57, 53, 67, 78, 54, 79, 106, 54, 75, 76, 76, 61, 50, 69, 91, 63, 56, 64, 51, 70, 71, 57, 80, 51, 79, 43, 72, 72, 60, 43, 98, 63, 54, 91, 71, 61, 43, 74, 48, 65, 72, 52, 54, 57, 57, 93, 65, 74, 73, 67, 74, 60, 61, 49, 56, 43, 95, 43, 66, 71, 67, 52, 54, 57, 61, 68, 64, 82, 96, 60, 74, 69, 61, 58, 124, 68, 58, 60, 72, 61, 56, 67, 67, 55, 90, 57, 51, 53, 58, 87, 60, 63, 68, 66, 66, 70, 62, 59, 65, 66, 59, 52, 58, 42, 57, 51, 64, 78, 52, 74, 64, 53, 69, 59, 72, 50, 66, 66, 59, 61, 58, 75, 69, 51, 79, 79, 64, 58, 52, 48, 57, 98, 61, 63, 52, 44, 76, 55, 53, 57, 61, 71, 65, 62, 58, 63, 59, 58, 87, 58, 59, 84, 63, 57, 101, 60, 54, 54, 84, 69, 66, 60, 73, 54, 67, 83, 74, 59, 83, 61, 54, 71, 77, 71, 118, 52, 64, 57, 68, 81, 60, 53, 60, 80, 51, 73, 58, 72, 62, 63, 67, 59, 50, 66, 68, 48, 58, 71, 50, 89, 70, 57, 76, 56, 67, 68, 62, 71, 49, 58, 61, 64, 82, 50, 53, 57, 62, 74, 39, 58, 85, 57, 52, 63, 57, 64, 90, 81, 51, 64, 67, 64, 71, 62, 62, 89, 68, 70, 65, 71, 57, 64, 51, 53, 147, 60, 60, 53, 80, 59, 54, 67, 91, 97, 61, 87, 61, 57, 72, 60, 85, 62, 59, 61, 65, 64, 87, 80, 67, 56, 71, 72, 68, 54, 61, 42, 56, 102, 55, 67, 65, 77, 69, 58, 83, 80, 59, 48, 72, 56, 67, 79, 104, 67, 85, 57, 65, 102, 80, 73, 61, 85, 58, 57, 64, 40, 54, 69, 70, 67, 74, 96, 61, 74, 58, 67, 62, 45, 67, 62, 55, 69, 50, 61, 65, 68, 67, 78, 71, 75, 60, 56, 40, 52, 67, 64, 117, 86, 57, 64, 73, 51, 48, 71, 61, 62, 66, 77, 75, 94, 51, 52, 45, 45, 67, 59, 64, 39, 70, 87, 43, 73, 60, 75, 66, 52, 61, 56, 66, 72, 50, 64, 50, 48, 133, 64, 54, 73, 56, 61, 47, 69, 59, 59, 67, 65, 81, 66, 88, 82, 61, 72, 74, 66, 68, 62, 70, 71, 60, 43, 96, 41, 51, 83, 54, 59, 64, 57, 51, 68, 64, 68, 52, 62, 84, 59, 68, 71, 62, 49, 49, 95, 59, 55, 104, 64, 52, 66, 60, 69, 66, 58, 54, 64, 56, 59, 71, 69, 79, 80, 62, 46, 65, 62, 62, 56, 64, 66, 61, 60, 61, 68, 55, 84, 40, 56, 51, 62, 102, 65, 62, 58, 87, 56, 38, 62, 60, 70, 67, 60, 80, 72, 72, 94, 77, 63, 79, 55, 72, 54, 62, 52, 78, 72, 56, 51, 69, 57, 84, 72, 68, 66, 54, 80, 115, 43, 55, 72, 62, 54, 56, 52, 73, 74, 71, 68, 49, 70, 57, 50, 72, 64, 95, 64, 55, 62, 47, 77, 70, 81, 78, 57, 122, 71, 48, 54, 52, 61, 78, 65, 61, 48, 72, 72, 53, 65, 65, 50, 60, 63, 58, 77, 90, 82, 61, 99, 61, 72, 61, 46, 77, 70, 92, 70, 73, 59, 88, 75, 52, 50, 57, 64, 68, 66, 47, 63, 56, 53, 63, 53, 61, 80, 68, 75, 66, 61, 80, 62, 50, 54, 52, 86, 56, 59, 65, 75, 81, 67, 58, 54, 55, 57, 47, 53, 52, 66, 63, 61, 39, 74, 62, 68, 71, 42, 90, 57, 68, 58, 58, 66, 68, 51, 48, 81, 68, 47, 59, 65, 78, 73, 54, 75, 73, 59, 46, 64, 60, 72, 62, 59, 49, 89, 64, 61, 71, 81, 58, 83, 69, 57, 70, 63, 71, 52, 85, 54, 59, 64, 55, 80, 59, 58, 75, 50, 50, 52, 66, 58, 59, 67, 82, 82, 54, 66, 60, 77, 60, 63, 58, 53, 79, 52, 71, 87, 73, 50, 78, 68, 70, 44, 64, 64, 52, 68, 60, 80, 88, 81, 58, 74, 90, 59, 54, 53, 83, 46, 57, 64, 61, 79, 66, 54, 58, 71, 59, 75, 55, 64, 78, 56, 54, 64, 76, 49, 77, 65, 59, 58, 65, 59, 54, 60, 52, 63, 83, 70, 90, 69, 56, 72, 57, 81, 68, 59, 42, 53, 67, 59, 55, 60, 71, 60, 59, 75, 68, 70, 47, 60, 88, 57, 58, 88, 51, 61, 92, 68, 70, 65, 94, 66, 65, 73, 64, 106, 51, 63, 69, 69, 63, 58, 55, 64, 57, 68, 68, 64, 67, 80, 48, 64, 64, 74, 60, 62, 79, 62, 48, 53, 74, 60, 67, 61, 57, 87, 49, 83, 64, 84, 67, 42, 50, 47, 46, 58, 72, 69, 54, 68, 61, 48, 77, 46, 84, 72, 60, 63, 68, 71, 56, 41, 63, 44, 64, 73, 69, 95, 56, 63, 80, 81, 65, 70, 60, 72, 57, 137, 80, 79, 63, 53, 66, 71, 61, 52, 117, 76, 61, 78, 82, 67, 62, 44, 86, 64, 61, 53, 61, 90, 59, 50, 72, 69, 54, 64, 66, 69, 61, 65, 64, 47, 58, 65, 50, 65, 39, 86, 76, 77, 66, 60, 53, 85, 61, 81, 63, 48, 59, 68, 58, 68, 58, 43, 71, 57, 60, 95, 62, 56, 70, 65, 60, 52, 63, 61, 49, 43, 63, 57, 50, 104, 58, 76, 60, 89, 63, 59, 84, 62, 69, 50, 71, 60, 78, 61, 56, 61, 93, 59, 54, 44, 53, 76, 104, 61, 57, 60, 82, 58, 72, 54, 44, 60, 68, 52, 67, 61, 76, 53, 119, 77, 49, 77, 63, 74, 83, 74, 57, 75, 101, 63, 54, 62, 53, 71, 91, 73, 59, 80, 79, 63, 75, 64, 57, 72, 49, 73, 75, 60, 46, 74, 48, 88, 82, 44, 66, 62, 73, 62, 50, 111, 60, 73, 76, 55, 56, 73, 52, 57, 58, 73, 83, 78, 67, 78, 74, 60, 67, 55, 96, 83, 60, 58, 86, 97, 60, 77, 56, 69, 89, 57, 56, 63, 79, 65, 71, 92, 63, 85, 70, 52, 103, 70, 51, 78, 53, 73, 63, 50, 75, 79, 72, 68, 69, 69, 64, 52, 72, 77, 77, 58, 72, 44, 62, 88, 96, 67, 76, 83, 90, 24, 66, 59, 61, 53, 71, 62, 64, 61, 47, 72, 72, 64, 60, 60, 79, 61, 70, 47, 59, 61, 87, 64, 54, 59, 72, 70, 59, 63, 62, 63, 75, 62, 89, 82, 52, 90, 65, 55, 104, 81, 55, 59, 88, 61, 62, 72, 65, 65, 57, 60, 82, 52, 46, 55, 46, 55, 73, 50, 59, 99, 70, 71, 57, 89, 57, 77, 68, 63, 59, 86, 65, 59, 58, 73, 80, 74, 68, 76, 89, 52, 52, 64, 57, 65, 55, 79, 57, 70, 52, 58, 75, 47, 68, 52, 78, 102, 59, 75, 62, 29, 58, 67, 70, 65, 51, 79, 55, 65, 57, 65, 73, 67, 69, 65, 60, 69, 55, 82, 51, 72, 79, 80, 97, 55, 97, 67, 56, 61, 52, 61, 71, 60, 68, 58, 65, 52, 59, 65, 87, 63, 60, 41, 62, 53, 61, 61, 47, 73, 68, 54, 49, 39, 71, 83, 55, 77, 54, 51, 56, 55, 73, 59, 56, 108, 50, 50, 68, 62, 64, 69, 86, 69, 56, 57, 73, 86, 56, 55, 70, 72, 69, 83, 74, 72, 72, 49, 77, 66, 60, 53, 93, 72, 50, 77, 76, 52, 72, 54, 66, 54, 62, 47, 60, 71, 58, 51, 77, 48, 110, 54, 68, 61, 70, 63, 78, 62, 81, 60, 52, 72, 69, 72, 51, 49, 68, 59, 48, 63, 42, 48, 107, 69, 75, 59, 68, 72, 65, 69, 89, 57, 57, 110, 64, 64, 67, 69, 59, 50, 88, 62, 49, 62, 68, 71, 64, 50, 65, 62, 61, 73, 58, 108, 66, 59, 62, 100, 48, 90, 48, 88, 69, 63, 62, 74, 68, 79, 69, 82, 52, 63, 59, 70, 64, 56, 77, 81, 63, 65, 54, 80, 83, 84, 68, 57, 57, 39, 85, 72, 63, 45, 50, 62, 70, 57, 80, 55, 100, 46, 52, 54, 58, 49, 72, 106, 56, 89, 56, 73, 73, 79, 57, 51, 68, 64, 61, 60, 66, 67, 52, 92, 44, 72, 52, 39, 57, 52, 67, 73, 124, 57, 88, 63, 65, 58, 77, 75, 67, 74, 85, 62, 51, 51, 71, 141, 73, 64, 57, 53, 71, 79, 45, 64, 86, 73, 60, 54, 68, 54, 64, 74, 75, 56, 61, 63, 65, 45, 58, 71, 70, 47, 70, 65, 53, 65, 50, 72, 64, 67, 64, 67, 75, 78, 50, 73, 56, 57, 72, 72, 52, 58, 64, 55, 95, 64, 60, 55, 71, 69, 52, 56, 68, 64, 74, 55, 58, 52, 52, 77, 72, 69, 75, 58, 71, 59, 49, 58, 62, 48, 75, 59, 52, 80, 79, 44, 80, 76, 66, 71, 65, 69, 72, 53, 73, 50, 67, 55, 56, 53, 65, 64, 66, 59, 92, 89, 63, 55, 72, 71, 130, 60, 42, 78, 57, 57, 62, 75, 60, 99, 71, 69, 62, 68, 66, 62, 64, 53, 95, 59, 53, 56, 49, 55, 69, 90, 74, 48, 137, 68, 61, 59, 77, 46, 73, 74, 51, 47, 63, 67, 59, 59, 42, 36, 71, 62, 74, 93, 109, 109, 48, 70, 60, 71, 65, 63, 59, 48, 100, 54, 33, 59, 103, 46, 52, 52, 62, 45, 62, 62, 74, 59, 68, 65, 44, 33, 52, 72, 54, 70, 45, 53, 80, 71, 59, 82, 75, 76, 69, 71, 95, 67, 67, 56, 68, 78, 70, 82, 74, 73, 65, 71, 78, 66, 77, 64, 80, 59, 72, 61, 93, 60, 52, 56, 64, 69, 61, 58, 64, 81, 90, 60, 67, 56, 65, 80, 80, 59, 90, 63, 60, 61, 74, 83, 45, 57, 52, 85, 64, 55, 60, 66, 67, 60, 72, 55, 80, 53, 76, 90, 63, 88, 49, 70, 69, 67, 48, 64, 93, 58, 63, 83, 60, 49, 79, 63, 57, 77, 94, 62, 71, 65, 77, 67, 55, 58, 76, 59, 54, 79, 72, 68, 67, 71, 49, 112, 52, 61, 62, 58, 52, 83, 49, 54, 54, 62, 82, 72, 66, 59, 101, 55, 85, 64, 69, 69, 76, 67, 51, 49, 62, 53, 78, 61, 75, 90, 55, 67, 94, 82, 90, 62, 67, 57, 75, 43, 60, 59, 71, 57, 45, 76, 82, 64, 45, 48, 60, 91, 55, 72, 83, 108, 82, 73, 76, 48, 75, 59, 49, 71, 56, 63, 57, 50, 70, 108, 70, 89, 59, 50, 66, 62, 58, 46, 110, 48, 65, 64, 60, 122, 51, 75, 62, 48, 76, 69, 47, 96, 52, 57, 75, 63, 49, 78, 55, 62, 59, 42, 63, 71, 65, 64, 46, 47, 66, 56, 98, 47, 78, 60, 43, 44, 57, 71, 63, 55, 76, 73, 60, 66, 56, 79, 46, 70, 53, 76, 74, 55, 47, 87, 69, 60, 63, 47, 63, 89, 60, 53, 78, 80, 49, 73, 65, 100, 70, 60, 52, 50, 65, 50, 56, 69, 71, 62, 79, 65, 60, 60, 64, 44, 96, 64, 55, 50, 58, 43, 59, 82, 67, 74, 52, 79, 65, 80, 52, 65, 65, 72, 63, 51, 61, 69, 66, 41, 73, 60, 61, 59, 68, 59, 55, 69, 58, 59, 81, 65, 63, 59, 58, 75, 77, 77, 72, 69, 64, 52, 61, 79, 52, 41, 75, 75, 66, 52, 46, 88, 97, 62, 65, 68, 54, 86, 44, 58, 63, 73, 75, 62, 61, 54, 64, 50, 76, 49, 61, 58, 54, 66, 49, 68, 61, 65, 55, 49, 33, 58, 81, 51, 111, 42, 60, 72, 92, 51, 65, 45, 58, 54, 70, 52, 80, 58, 45, 75, 71, 73, 47, 44, 50, 80, 79, 82, 90, 70, 107, 70, 78, 61, 72, 59, 69, 76, 67, 54, 64, 51, 59, 75, 64, 62, 53, 63, 56, 45, 64, 62, 48, 83, 60, 68, 63, 77, 63, 94, 64, 129, 51, 78, 74, 61, 84, 71, 54, 56, 56, 68, 53, 52, 90, 74, 57, 70, 46, 77, 58, 100, 62, 62, 74, 66, 41, 69, 65, 51, 58, 80, 46, 57, 64, 51, 57, 66, 67, 35, 59, 71, 88, 53, 83, 56, 65, 49, 88, 62, 90, 69, 62, 42, 46, 65, 57, 64, 57, 85, 65, 103, 47, 71, 50, 63, 99, 71, 71, 73, 58, 58, 70, 46, 57, 68, 60, 70, 65, 67, 55, 66, 60, 65, 59, 48, 74, 50, 66, 126, 51, 72, 99, 46, 57, 73, 68, 73, 78, 60, 62, 72, 73, 53, 55, 58, 64, 38, 74, 88, 112, 62, 50, 56, 66, 65, 66, 61, 78, 61, 72, 56, 60, 58, 96, 91, 93, 76, 67, 70, 77, 72, 63, 64, 62, 61, 66, 74, 63, 63, 51, 80, 78, 56, 64, 56, 71, 59, 70, 51, 49, 69, 75, 47, 59, 51, 74, 67, 74, 56, 48, 86, 57, 60, 60, 85, 59, 43, 73, 62, 58, 59, 41, 86, 53, 67, 59, 87, 64, 69, 53, 69, 46, 45, 53, 65, 86, 90, 51, 66, 70, 65, 36, 58, 74, 66, 57, 59, 83, 57, 75, 60, 65, 44, 91, 73, 51, 46, 68, 79, 73, 61, 66, 55, 64, 74, 67, 69, 59, 61, 43, 56, 85, 67, 54, 60, 58, 68, 75, 53, 85, 81, 47, 58, 58, 52, 59, 75, 51, 82, 66, 52, 55, 61, 74, 63, 67, 69, 67, 65, 84, 42, 72, 64, 56, 56, 78, 53, 57, 75, 58, 47, 99, 74, 62, 78, 59, 47, 69, 58, 58, 66, 67, 75, 62, 66, 51, 61, 79, 63, 102, 51, 58, 61, 56, 57, 50, 70, 91, 87, 35, 61, 79, 64, 54, 82, 64, 64, 56, 65, 69, 63, 94, 62, 60, 60, 44, 78, 88, 63, 82, 54, 36, 51, 67, 78, 65, 122, 83, 58, 36, 67, 55, 54, 88, 59, 64, 56, 65, 74, 70, 52, 50, 87, 57, 70, 84, 82, 93, 75, 72, 64, 54, 60, 62, 57, 58, 72, 58, 66, 52, 59, 89, 55, 67, 51, 70, 91, 58, 77, 56, 74, 70, 71, 83, 57, 63, 60, 81, 58, 58, 51, 52, 76, 72, 61, 58, 66, 67, 59, 97, 51, 47, 80, 48, 102, 72, 78, 74, 96, 69, 63, 67, 68, 90, 60, 56, 58, 68, 68, 84, 55, 49, 78, 51, 48, 90, 69, 71, 68, 117, 51, 64, 70, 86, 63, 84, 59, 55, 49, 73, 52, 66, 76, 78, 86, 56, 75, 79, 66, 69, 58, 49, 73, 85, 58, 55, 55, 47, 106, 58, 63, 61, 59, 72, 62, 52, 44, 65, 57, 72, 58, 63, 68, 92, 54, 51, 51, 57, 71, 94, 68, 78, 65, 60, 62, 57, 51, 47, 58, 52, 47, 61, 75, 62, 76, 57, 63, 66, 65, 55, 57, 71, 47, 56, 50, 57, 55, 70, 50, 48, 64, 64, 71, 80, 54, 82, 65, 48, 73, 45, 50, 79, 66, 72, 57, 63, 60, 62, 88, 60, 55, 39, 68, 67, 63, 61, 61, 57, 69, 73, 68, 76, 57, 66, 51, 74, 56, 69, 54, 142, 94, 57, 56, 80, 74, 59, 69, 92, 62, 69, 71, 78, 72, 41, 67, 61, 55, 86, 50, 82, 84, 51, 76, 55, 55, 56, 49, 111, 69, 95, 62, 97, 84, 52, 55, 67, 56, 87, 62, 59, 59, 55, 50, 60, 60, 70, 80, 81, 105, 72, 95, 56, 54, 59, 62, 53, 62, 90, 76, 78, 65, 114, 58, 39, 62, 69, 64, 62, 65, 58, 60, 70, 48, 65, 58, 52, 73, 63, 63, 64, 58, 58, 47, 55, 65, 69, 67, 36, 64, 97, 88, 82, 36, 78, 60, 75, 46, 92, 49, 51, 54, 63, 53, 79, 66, 77, 69, 69, 79, 58, 111, 41, 69, 75, 73, 62, 70, 54, 66, 54, 60, 65, 64, 57, 81, 38, 81, 119, 63, 60, 57, 58, 75, 52, 57, 70, 77, 71, 50, 58, 62, 71, 58, 62, 68, 60, 68, 73, 59, 68, 88, 50, 55, 58, 65, 67, 51, 100, 60, 80, 66, 64, 58, 89, 55, 80, 117, 42, 58, 80, 80, 53, 66, 44, 67, 66, 83, 51, 83, 56, 92, 79, 59, 65, 48, 68, 60, 73, 62, 45, 63, 60, 65, 66, 76, 88, 51, 65, 65, 93, 57, 74, 92, 64, 58, 67, 58, 68, 66, 64, 88, 67, 64, 74, 61, 49, 63, 95, 74, 57, 58, 75, 70, 83, 74, 65, 62, 56, 61, 62, 58, 99, 47, 66, 53, 75, 83, 59, 68, 82, 80, 80, 65, 47, 62, 59, 77, 67, 51, 62, 73, 63, 85, 52, 67, 49, 87, 54, 47, 70, 68, 66, 72, 97, 55, 45, 59, 73, 126, 76, 90, 63, 66, 51, 79, 54, 71, 68, 55, 78, 61, 62, 68, 71, 62, 66, 57, 53, 80, 51, 55, 57, 50, 52, 67, 91, 48, 77, 67, 56, 53, 66, 81, 53, 50, 59, 54, 65, 49, 53, 91, 57, 80, 51, 73, 40, 63, 65, 59, 69, 57, 51, 53, 63, 56, 65, 68, 68, 92, 72, 76, 78, 56, 62, 51, 73, 53, 61, 62, 61, 82, 69, 60, 68, 50, 73, 56, 58, 70, 94, 62, 68, 52, 53, 58, 74, 50, 43, 62, 46, 70, 67, 72, 60, 65, 63, 67, 56, 51, 72, 79, 66, 64, 66, 56, 68, 48, 59, 71, 60, 103, 68, 74, 53, 68, 45, 72, 63, 79, 88, 65, 66, 78, 61, 74, 71, 69, 58, 78, 66, 81, 70, 47, 70, 68, 68, 69, 76, 70, 67, 78, 53, 70, 69, 79, 75, 56, 61, 69, 63, 56, 74, 57, 46, 55, 77, 75, 63, 62, 66, 54, 60, 52, 58, 54, 67, 56, 136, 68, 78, 63, 83, 56, 59, 60, 71, 71, 56, 56, 88, 56, 68, 67, 100, 79, 42, 67, 54, 69, 54, 94, 62, 69, 102, 72, 67, 62, 68, 71, 86, 56, 53, 75, 69, 57, 50, 49, 58, 52, 69, 58, 58, 65, 69, 72, 66, 98, 72, 64, 59, 63, 55, 44, 60, 112, 54, 67, 68, 63, 70, 62, 69, 71, 60, 70, 70, 76, 63, 90, 63, 56, 46, 69, 74, 59, 56, 61, 65, 77, 50, 66, 64, 63, 74, 82, 62, 50, 72, 56, 75, 67, 61, 54, 54, 70, 89, 63, 60, 65, 54, 57, 54, 53, 94, 71, 59, 55, 70, 50, 82, 61, 84, 69, 58, 81, 41, 70, 72, 80, 112, 59, 75, 69, 62, 75, 74, 62, 59, 67, 64, 76, 63, 57, 61, 85, 64, 49, 69, 51, 49, 73, 60, 59, 64, 68, 99, 45, 57, 61, 72, 68, 42, 53, 76, 58, 72, 67, 34, 65, 54, 56, 54, 50, 111, 58, 65, 58, 64, 51, 55, 86, 47, 86, 72, 52, 58, 57, 59, 79, 65, 67, 72, 59, 52, 90, 61, 62, 53, 66, 71, 43, 50, 53, 55, 77, 66, 48, 70, 58, 70, 53, 53, 64, 62, 67, 69, 44, 65, 60, 71, 56, 61, 60, 56, 46, 60, 65, 58, 57, 82, 48, 76, 60, 62, 51, 49, 69, 45, 64, 39, 63, 87, 70, 64, 61, 43, 67, 62, 53, 71, 72, 65, 80, 75, 68, 89, 63, 73, 64, 57, 63, 55, 57, 62, 50, 54, 57, 98, 50, 63, 31, 70, 55, 83, 80, 74, 75, 56, 81, 55, 64, 60, 63, 60, 53, 71, 90, 54, 77, 58, 59, 82, 57, 85, 64, 57, 53, 55, 50, 59, 75, 81, 54, 59, 57, 68, 56, 61, 75, 75, 72, 70, 58, 69, 71, 62, 65, 79, 60, 57, 61, 52, 63, 64, 52, 105, 59, 49, 56, 65, 53, 77, 67, 64, 63, 61, 57, 76, 53, 63, 61, 100, 75, 119, 67, 64, 54, 60, 63, 57, 57, 95, 109, 48, 63, 55, 61, 55, 69, 79, 61, 61, 60, 44, 63, 86, 82, 74, 72, 73, 61, 57, 86, 82, 61, 60, 72, 64, 53, 69, 99, 50, 68, 51, 79, 67, 59, 68, 68, 50, 72, 54, 76, 54, 71, 60, 107, 60, 65, 70, 81, 73, 72, 62, 71, 60, 66, 59, 62, 78, 58, 53, 75, 63, 58, 64, 71, 65, 58, 60, 66, 59, 77, 65, 70, 38, 72, 61, 73, 66, 76, 55, 52, 71, 50, 41, 67, 69, 74, 57, 72, 66, 47, 77, 53, 50, 51, 82, 80, 63, 69, 78, 68, 87, 64, 62, 79, 65, 54, 86, 62, 68, 52, 44, 76, 55, 60, 61, 67, 50, 59, 66, 45, 135, 52, 64, 63, 65, 52, 66, 58, 45, 57, 74, 51, 69, 65, 54, 109, 66, 75, 74, 69, 60, 68, 64, 62, 68, 67, 73, 78, 62, 105, 59, 61, 71, 66, 58, 61, 67, 66, 68, 66, 60, 78, 70, 69, 92, 51, 59, 54, 36, 67, 90, 68, 70, 53, 56, 73, 54, 53, 51, 48, 63, 50, 69, 54, 74, 53, 53, 68, 54, 61, 57, 54, 52, 73, 63, 63, 44, 63, 60, 50, 53, 58, 75, 56, 61, 59, 75, 60, 65, 109, 87, 61, 85, 66, 66, 63, 50, 73, 64, 85, 43, 70, 47, 56, 72, 62, 74, 83, 63, 59, 61, 77, 78, 65, 62, 57, 77, 54, 63, 80, 141, 59, 52, 50, 63, 63, 57, 73, 94, 57, 56, 99, 58, 64, 56, 66, 61, 53, 62, 47, 79, 86, 64, 63, 73, 53, 70, 50, 113, 53, 59, 58, 75, 61, 70, 61, 54, 72, 54, 63, 54, 69, 30, 44, 62, 79, 44, 73, 56, 89, 71, 97, 72, 70, 68, 64, 57, 60, 120, 51, 71, 64, 103, 58, 56, 72, 57, 57, 64, 65, 53, 78, 60, 91, 61, 71, 80, 63, 59, 80, 55, 56, 57, 64, 59, 72, 65, 65, 66, 57, 55, 75, 86, 65, 44, 49, 67, 69, 93, 77, 73, 66, 58, 65, 53, 70, 83, 63, 56, 68, 70, 91, 78, 55, 65, 69, 60, 74, 64, 63, 69, 79, 67, 76, 72, 52, 76, 91, 69, 79, 60, 66, 58, 82, 63, 72, 57, 61, 84, 63, 69, 42, 68, 74, 56, 77, 62, 68, 66, 88, 54, 57, 59, 48, 83, 89, 66, 46, 53, 63, 78, 76, 65, 76, 67, 56, 68, 82, 69, 42, 76, 61, 47, 51, 69, 57, 40, 52, 71, 57, 63, 73, 64, 63, 59, 66, 52, 79, 54, 65, 61, 70, 66, 86, 74, 61, 60, 65, 78, 41, 62, 54, 61, 82, 64, 63, 67, 74, 65, 83, 51, 71, 69, 55, 84, 61, 48, 55, 65, 53, 88, 50, 64, 58, 52, 80, 55, 71, 68, 63, 59, 66, 61, 59, 69, 66, 65, 71, 68, 68, 67, 83, 68, 45, 60, 61, 79, 54, 54, 52, 66, 62, 64, 68, 55, 62, 66, 112, 64, 50, 60, 57, 46, 74, 112, 57, 62, 65, 87, 127, 65, 86, 50, 61, 71, 49, 54, 57, 56, 60, 101, 57, 53, 61, 67, 83, 89, 63, 88, 52, 58, 67, 51, 65, 67, 57, 100, 93, 65, 59, 73, 64, 82, 63, 72, 59, 63, 61, 52, 85, 68, 66, 60, 54, 74, 55, 55, 59, 61, 79, 73, 62, 61, 78, 54, 39, 60, 44, 73, 60, 60, 71, 86, 72, 66, 58, 59, 59, 81, 79, 65, 89, 48, 80, 63, 71, 78, 50, 60, 96, 71, 62, 64, 69, 58, 53, 55, 64, 57, 60, 50, 61, 85, 71, 70, 82, 69, 58, 55, 82, 67, 67, 67, 47, 51, 54, 51, 54, 89, 59, 78, 69, 67, 60, 66, 67, 57, 49, 86, 59, 66, 115, 58, 70, 71, 63, 56, 70, 61, 60, 57, 71, 57, 62, 58, 56, 70, 55, 76, 59, 49, 79, 47, 58, 48, 51, 65, 63, 61, 70, 67, 66, 77, 53, 62, 81, 67, 54, 64, 85, 68, 48, 51, 85, 53, 76, 66, 71, 93, 93, 81, 70, 54, 43, 60, 82, 74, 75, 79, 71, 59, 57, 69, 61, 50, 59, 71, 51, 81, 59, 61, 44, 60, 62, 92, 68, 73, 58, 43, 65, 98, 63, 66, 63, 75, 61, 81, 55, 61, 65, 66, 77, 60, 61, 58, 75, 59, 61, 69, 40, 62, 65, 54, 63, 57, 59, 82, 92, 57, 61, 58, 53, 65, 65, 51, 52, 66, 100, 77, 84, 56, 62, 60, 65, 72, 63, 64, 67, 62, 55, 85, 90, 55, 56, 46, 134, 57, 77, 74, 72, 48, 64, 70, 68, 42, 57, 76, 47, 62, 63, 65, 53, 65, 60, 66, 71, 74, 70, 59, 64, 60, 73, 83, 26, 78, 91, 52, 58, 62, 50, 56, 59, 57, 70, 65, 49, 66, 81, 61, 69, 55, 52, 61, 78, 46, 72, 54, 52, 63, 60, 53, 54, 50, 76, 62, 56, 50, 58, 44, 59, 90, 63, 55, 58, 45, 60, 68, 65, 73, 60, 74, 75, 55, 78, 83, 66, 67, 89, 55, 57, 47, 56, 57, 68, 54, 62, 58, 56, 71, 79, 80, 69, 70, 42, 65, 66, 58, 65, 69, 58, 68, 74, 58, 67, 80, 43, 54, 65, 63, 66, 65, 58, 52, 69, 62, 50, 56, 56, 63, 59, 65, 68, 56, 62, 74, 94, 90, 74, 57, 40, 87, 84, 66, 55, 88, 57, 57, 71, 68, 59, 59, 56, 57, 52, 65, 61, 73, 62, 61, 67, 83, 69, 66, 54, 70, 57, 47, 59, 70, 59, 68, 70, 77, 64, 71, 62, 48, 65, 64, 82, 75, 59, 61, 73, 75, 55, 78, 78, 80, 71, 43, 45, 62, 70, 55, 83, 99, 68, 64, 57, 71, 86, 70, 58, 78, 71, 51, 80, 59, 67, 73, 73, 80, 45, 61, 46, 63, 57, 67, 78, 60, 67, 69, 55, 67, 61, 59, 69, 57, 52, 77, 52, 67, 82, 52, 69, 63, 70, 37, 52, 77, 64, 66, 59, 60, 51, 69, 53, 75, 56, 80, 68, 54, 69, 101, 58, 67, 70, 74, 69, 50, 74, 63, 75, 48, 68, 54, 64, 57, 57, 60, 61, 60, 70, 57, 53, 78, 67, 71, 57, 58, 58, 67, 75, 73, 56, 46, 74, 61, 57, 61, 62, 70, 64, 70, 48, 73, 56, 55, 45, 60, 61, 77, 55, 84, 71, 58, 133, 85, 66, 61, 68, 105, 86, 66, 89, 65, 66, 82, 59, 66, 66, 65, 61, 58, 68, 58, 50, 68, 60, 61, 77, 62, 61, 65, 65, 65, 78, 97, 52, 56, 59, 58, 67, 57, 70, 96, 72, 60, 65, 65, 59, 50, 76, 82, 60, 62, 74, 64, 68, 61, 85, 100, 66, 54, 51, 75, 68, 61, 60, 84, 54, 55, 62, 50, 65, 59, 70, 63, 70, 51, 49, 56, 81, 109, 56, 80, 64, 90, 41, 87, 72, 58, 64, 88, 53, 57, 93, 63, 80, 57, 69, 77, 81, 86, 60, 57, 46, 72, 59, 69, 62, 54, 99, 49, 73, 56, 57, 70, 69, 52, 68, 78, 52, 66, 58, 54, 71, 62, 50, 74, 72, 56, 67, 103, 65, 55, 46, 69, 63, 86, 104, 71, 61, 66, 62, 62, 70, 70, 71, 65, 57, 65, 54, 60, 75, 75, 67, 57, 68, 56, 60, 74, 74, 79, 76, 50, 59, 67, 64, 86, 77, 90, 77, 63, 52, 68, 66, 56, 54, 54, 81, 53, 86, 46, 64, 71, 69, 67, 60, 64, 63, 55, 64, 64, 50, 64, 60, 78, 64, 69, 62, 71, 63, 134, 90, 74, 81, 59, 59, 70, 54, 72, 76, 87, 76, 84, 56, 63, 49, 62, 105, 68, 77, 53, 76, 54, 74, 68, 75, 52, 81, 97, 48, 64, 77, 65, 71, 58, 62, 73, 68, 63, 80, 61, 90, 65, 77, 61, 55, 76, 48, 69, 67, 65, 62, 60, 53, 57, 72, 68, 44, 124, 60, 47, 53, 110, 72, 70, 68, 60, 56, 63, 72, 51, 73, 66, 63, 54, 66, 72, 62, 57, 48, 75, 61, 56, 67, 59, 79, 53, 52, 68, 62, 61, 52, 94, 68, 64, 59, 74, 69, 66, 76, 73, 60, 72, 63, 44, 63, 81, 57, 64, 69, 60, 57, 71, 42, 59, 61, 72, 46, 49, 63, 61, 56, 64, 76, 53, 74, 72, 95, 73, 78, 75, 61, 59, 91, 79, 79, 58, 71, 69, 70, 64, 58, 49, 57, 56, 87, 80, 55, 70, 113, 56, 67, 49, 62, 74, 84, 55, 65, 78, 58, 76, 87, 68, 85, 74, 61, 54, 61, 57, 59, 62, 66, 58, 69, 81, 64, 53, 62, 69, 57, 64, 58, 55, 50, 54, 70, 63, 50, 60, 59, 69, 74, 65, 63, 81, 67, 53, 103, 45, 56, 74, 71, 76, 79, 66, 70, 79, 59, 68, 69, 60, 80, 57, 59, 75, 55, 68, 55, 57, 58, 92, 65, 73, 71, 54, 59, 70, 53, 75, 58, 58, 77, 55, 81, 88, 82, 55, 74, 52, 88, 55, 68, 63, 42, 56, 61, 65, 64, 72, 65, 53, 56, 73, 96, 73, 68, 56, 91, 92, 68, 58, 56, 56, 74, 120, 73, 58, 85, 72, 123, 53, 72, 48, 60, 75, 63, 67, 62, 46, 64, 91, 61, 52, 84, 54, 68, 66, 65, 99, 48, 69, 48, 37, 51, 74, 83, 103, 106, 59, 79, 61, 42, 56, 63, 76, 63, 63, 56, 60, 59, 68, 75, 56, 61, 76, 70, 65, 63, 60, 100, 58, 53, 59, 66, 81, 46, 68, 56, 58, 69, 68, 80, 52, 86, 86, 67, 47, 65, 57, 50, 57, 89, 70, 59, 70, 67, 64, 65, 65, 89, 69, 65, 63, 60, 64, 56, 54, 65, 76, 58, 60, 69, 89, 62, 55, 92, 76, 103, 40, 65, 58, 84, 58, 93, 72, 61, 66, 41, 94, 73, 98, 58, 71, 66, 58, 59, 73, 73, 108, 79, 67, 99, 59, 66, 68, 56, 62, 54, 56, 63, 68, 66, 81, 63, 47, 70, 68, 66, 62, 48, 53, 64, 60, 69, 51, 80, 76, 75, 59, 105, 65, 70, 67, 51, 62, 93, 68, 58, 59, 61, 69, 38, 84, 71, 57, 52, 75, 61, 88, 88, 67, 62, 49, 60, 56, 98, 65, 70, 69, 50, 53, 99, 64, 67, 74, 57, 91, 51, 57, 73, 75, 54, 69, 57, 62, 73, 76, 46, 55, 60, 82, 64, 71, 69, 83, 65, 59, 61, 66, 67, 85, 61, 46, 64, 64, 60, 54, 53, 64, 78, 59, 41, 82, 45, 59, 67, 57, 63, 56, 66, 61, 64, 62, 72, 62, 50, 65, 51, 60, 66, 46, 58, 48, 69, 82, 59, 51, 80, 71, 68, 58, 64, 72, 36, 58, 115, 101, 58, 82, 55, 61, 62, 77, 63, 54, 68, 81, 53, 65, 84, 63, 51, 84, 56, 56, 77, 84, 44, 56, 50, 62, 62, 102, 55, 56, 85, 59, 68, 67, 64, 65, 52, 51, 59, 66, 45, 65, 75, 59, 82, 34, 63, 56, 77, 65, 66, 73, 69, 56, 98, 61, 62, 54, 75, 44, 61, 68, 69, 41, 59, 47, 66, 68, 71, 57, 65, 59, 53, 91, 56, 76, 60, 55, 93, 67, 83, 56, 60, 59, 65, 46, 46, 65, 67, 52, 66, 68, 58, 63, 77, 67, 63, 69, 66, 60, 66, 104, 48, 52, 58, 65, 69, 70, 64, 51, 58, 66, 70, 50, 50, 46, 64, 95, 60, 58, 77, 30, 71, 55, 71, 85, 52, 61, 57, 82, 74, 76, 72, 69, 91, 46, 73, 70, 65, 56, 84, 60, 68, 79, 59, 56, 83, 76, 49, 59, 67, 81, 80, 76, 54, 54, 76, 63, 54, 63, 50, 65, 52, 77, 61, 75, 68, 73, 68, 49, 69, 64, 65, 69, 81, 63, 63, 73, 64, 63, 60, 39, 45, 49, 67, 71, 87, 63, 62, 39, 77, 69, 51, 58, 47, 59, 78, 57, 63, 66, 75, 69, 78, 74, 77, 58, 63, 84, 82, 62, 63, 56, 64, 44, 47, 75, 64, 81, 71, 71, 59, 56, 50, 65, 55, 54, 42, 44, 57, 77, 52, 74, 64, 96, 44, 52, 74, 68, 56, 61, 47, 81, 65, 70, 63, 50, 49, 60, 79, 99, 56, 59, 59, 64, 81, 62, 103, 59, 104, 70, 63, 47, 50, 50, 63, 60, 67, 53, 61, 67, 53, 67, 68, 68, 50, 55, 53, 86, 63, 60, 67, 119, 58, 61, 70, 75, 51, 73, 69, 51, 98, 82, 51, 62, 51, 64, 64, 43, 58, 80, 55, 73, 90, 73, 65, 55, 72, 66, 67, 62, 66, 62, 104, 58, 68, 58, 58, 70, 68, 68, 68, 69, 77, 59, 51, 60, 56, 72, 50, 58, 57, 68, 81, 58, 57, 96, 46, 76, 41, 64, 54, 73, 83, 59, 64, 64, 63, 70, 74, 103, 58, 88, 63, 51, 69, 59, 77, 104, 40, 61, 66, 56, 65, 72, 69, 56, 58, 53, 50, 64, 69, 53, 83, 65, 80, 76, 51, 75, 77, 107, 59, 88, 85, 80, 51, 71, 65, 68, 55, 84, 66, 73, 98, 69, 91, 66, 70, 85, 62, 73, 61, 69, 65, 70, 62, 54, 78, 52, 94, 46, 57, 73, 61, 89, 56, 69, 56, 49, 52, 77, 58, 62, 77, 65, 49, 60, 71, 80, 59, 103, 64, 77, 59, 69, 58, 80, 56, 52, 54, 67, 53, 70, 64, 57, 67, 59, 65, 56, 50, 78, 68, 64, 59, 34, 53, 48, 64, 56, 82, 86, 66, 62, 57, 65, 63, 79, 66, 70, 64, 51, 60, 62, 74, 94, 66, 77, 51, 51, 83, 50, 101, 61, 80, 84, 67, 68, 55, 61, 60, 72, 65, 68, 61, 77, 49, 52, 76, 48, 57, 123, 101, 55, 75, 72, 74, 66, 58, 67, 68, 63, 109, 49, 66, 59, 54, 62, 85, 82, 68, 67, 57, 60, 88, 62, 81, 67, 59, 120, 71, 77, 87, 52, 69, 62, 68, 68, 53, 58, 105, 69, 53, 73, 64, 64, 54, 59, 48, 82, 81, 58, 65, 57, 85, 65, 65, 103, 66, 129, 50, 45, 72, 105, 55, 43, 52, 77, 60, 63, 52, 63, 64, 60, 72, 102, 68, 98, 55, 57, 90, 59, 73, 51, 70, 58, 66, 71, 64, 58, 86, 61, 86, 83, 55, 55, 57, 73, 77, 64, 62, 44, 58, 54, 48, 54, 57, 63, 56, 56, 49, 54, 50, 71, 75, 65, 68, 57, 49, 41, 66, 58, 55, 71, 46, 84, 65, 79, 56, 65, 52, 42, 61, 64, 114, 74, 54, 57, 65, 77, 74, 54, 84, 74, 63, 69, 91, 40, 60, 52, 79, 53, 68, 56, 51, 94, 67, 55, 56, 69, 79, 67, 61, 60, 92, 67, 59, 49, 55, 68, 86, 84, 53, 78, 76, 59, 49, 49, 48, 65, 43, 66, 51, 64, 59, 57, 77, 60, 85, 46, 71, 69, 62, 57, 63, 74, 54, 56, 56, 59, 43, 87, 68, 66, 68, 60, 54, 56, 85, 69, 75, 52, 79, 49, 69, 69, 73, 57, 65, 58, 53, 99, 66, 47, 47, 71, 59, 59, 53, 62, 62, 51, 60, 49, 94, 45, 77, 54, 63, 76, 72, 72, 67, 98, 71, 68, 48, 79, 75, 55, 57, 53, 56, 73, 56, 80, 73, 64, 87, 55, 52, 63, 61, 60, 63, 105, 81, 51, 85, 61, 105, 70, 91, 59, 62, 65, 47, 63, 56, 55, 56, 62, 65, 68, 68, 56, 93, 77, 55, 56, 60, 55, 38, 60, 51, 54, 76, 89, 90, 62, 52, 65, 57, 58, 59, 81, 48, 65, 72, 64, 67, 60, 73, 59, 65, 50, 75, 52, 52, 81, 99, 97, 61, 105, 58, 79, 52, 50, 82, 90, 88, 87, 57, 88, 61, 52, 85, 55, 71, 62, 60, 81, 100, 65, 88, 59, 63, 69, 57, 52, 70, 75, 76, 49, 59, 105, 57, 63, 69, 68, 73, 77, 52, 65, 63, 39, 73, 67, 58, 74, 59, 70, 90, 58, 102, 52, 60, 71, 51, 59, 61, 67, 82, 61, 48, 59, 57, 72, 59, 76, 51, 67, 79, 49, 33, 54, 83, 55, 68, 80, 62, 62, 80, 77, 79, 55, 81, 82, 62, 74, 73, 75, 67, 40, 49, 51, 60, 82, 88, 65, 71, 74, 59, 95, 52, 61, 69, 56, 46, 54, 74, 55, 60, 64, 70, 54, 75, 67, 75, 86, 58, 76, 50, 60, 62, 83, 71, 68, 65, 60, 66, 60, 71, 95, 69, 103, 77, 87, 51, 65, 65, 92, 65, 56, 64, 71, 63, 59, 53, 57, 66, 57, 71, 71, 52, 64, 80, 58, 52, 47, 51, 58, 70, 44, 77, 86, 55, 56, 57, 71, 95, 55, 51, 86, 62, 77, 52, 62, 79, 75, 67, 56, 64, 55, 77, 41, 69, 55, 59, 52, 59, 48, 65, 70, 65, 73, 73, 54, 49, 55, 84, 61, 58, 66, 58, 66, 140, 68, 72, 85, 46, 80, 51, 56, 52, 40, 42, 94, 58, 65, 68, 54, 70, 109, 52, 84, 68, 65, 49, 77, 67, 56, 59, 107, 79, 73, 44, 59, 91, 59, 62, 64, 88, 66, 72, 58, 48, 50, 71, 94, 60, 57, 54, 48, 66, 69, 72, 62, 44, 77, 68, 52, 74, 60, 46, 73, 66, 68, 92, 55, 49, 59, 57, 32, 63, 66, 75, 51, 71, 83, 82, 88, 90, 63, 80, 84, 82, 60, 55, 51, 54, 60, 65, 48, 53, 69, 73, 78, 76, 72, 96, 65, 58, 63, 60, 51, 113, 68, 78, 57, 68, 57, 67, 60, 50, 55, 72, 61, 54, 62, 64, 55, 72, 68, 59, 56, 58, 66, 60, 68, 43, 94, 50, 61, 46, 56, 80, 84, 54, 67, 71, 106, 59, 70, 46, 62, 51, 78, 61, 69, 71, 81, 46, 54, 69, 39, 82, 48, 58, 51, 72, 58, 38, 62, 53, 86, 67, 70, 58, 64, 56, 59, 58, 50, 39, 54, 68, 76, 54, 71, 56, 69, 62, 74, 53, 56, 71, 69, 53, 60, 66, 55, 80, 60, 53, 70, 83, 74, 60, 81, 75, 50, 91, 74, 71, 66, 51, 72, 80, 72, 91, 50, 81, 67, 92, 56, 55, 97, 56, 55, 48, 72, 79, 67, 49, 65, 62, 75, 79, 60, 67, 95, 55, 55, 53, 60, 53, 90, 63, 88, 60, 54, 60, 40, 72, 57, 61, 70, 60, 64, 76, 86, 65, 58, 70, 97, 67, 48, 53, 51, 85, 67, 85, 84, 70, 51, 61, 61, 62, 60, 61, 52, 57, 53, 62, 46, 89, 71, 55, 58, 66, 62, 56, 56, 56, 62, 53, 49, 88, 69, 88, 72, 76, 71, 51, 67, 80, 61, 81, 59, 58, 65, 70, 111, 70, 80, 46, 76, 113, 61, 53, 55, 71, 62, 69, 61, 63, 57, 115, 40, 64, 60, 77, 59, 51, 76, 52, 70, 61, 70, 64, 83, 75, 74, 74, 61, 63, 77, 70, 78, 52, 65, 51, 80, 65, 56, 92, 84, 53, 66, 65, 71, 67, 66, 72, 77, 57, 79, 66, 65, 69, 72, 40, 102, 79, 55, 79, 66, 68, 61, 63, 61, 60, 72, 65, 54, 57, 48, 79, 65, 57, 66, 63, 47, 66, 141, 61, 49, 90, 79, 48, 63, 69, 50, 51, 54, 53, 64, 84, 70, 90, 67, 79, 59, 51, 51, 59, 68, 63, 65, 57, 46, 62, 65, 87, 59, 44, 47, 54, 86, 59, 50, 58, 55, 53, 48, 72, 52, 62, 66, 66, 55, 75, 61, 72, 84, 73, 64, 54, 52, 43, 83, 76, 50, 66, 73, 44, 54, 54, 87, 106, 68, 84, 68, 74, 65, 59, 55, 43, 55, 71, 56, 59, 50, 52, 54, 47, 74, 55, 65, 73, 76, 54, 46, 50, 58, 57, 63, 55, 84, 55, 46, 75, 59, 76, 93, 57, 54, 74, 71, 63, 78, 52, 56, 58, 62, 50, 59, 60, 43, 70, 62, 62, 52, 47, 80, 51, 76, 42, 64, 60, 53, 61, 98, 58, 63, 69, 51, 68, 105, 60, 73, 65, 45, 63, 44, 79, 41, 57, 68, 57, 71, 78, 125, 86, 82, 77, 63, 57, 58, 70, 48, 59, 64, 131, 70, 80, 66, 76, 52, 45, 74, 75, 74, 54, 61, 75, 55, 52, 48, 67, 69, 69, 129, 49, 63, 63, 101, 53, 97, 62, 67, 70, 83, 51, 90, 72, 62, 78, 50, 73, 90, 73, 64, 81, 54, 71, 83, 63, 58, 73, 69, 74, 45, 42, 56, 82, 97, 50, 63, 72, 58, 71, 58, 64, 59, 54, 63, 59, 57, 61, 73, 70, 71, 51, 37, 58, 68, 47, 62, 73, 65, 68, 79, 57, 59, 80, 89, 44, 81, 45, 74, 67, 56, 71, 53, 55, 62, 91, 65, 63, 56, 58, 79, 43, 66, 59, 52, 54, 55, 79, 72, 73, 105, 63, 69, 90, 73, 44, 73, 61, 46, 79, 66, 51, 81, 67, 50, 90, 74, 59, 67, 84, 72, 79, 100, 84, 71, 72, 54, 73, 63, 96, 58, 70, 58, 62, 64, 74, 54, 70, 68, 62, 60, 64, 59, 65, 64, 76, 70, 58, 69, 43, 66, 59, 66, 65, 56, 58, 50, 41, 32, 69, 68, 87, 57, 73, 59, 74, 59, 93, 50, 60, 82, 56, 110, 61, 82, 66, 68, 56, 64, 75, 80, 55, 63, 60, 75, 90, 47, 76, 66, 75, 65, 77, 72, 69, 59, 52, 70, 59, 109, 86, 95, 70, 62, 70, 47, 108, 77, 75, 59, 82, 64, 44, 66, 48, 73, 60, 109, 67, 60, 52, 49, 115, 70, 70, 78, 38, 72, 67, 58, 58, 63, 68, 79, 56, 42, 64, 43, 71, 80, 66, 81, 66, 67, 74, 64, 63, 73, 60, 108, 103, 65, 78, 51, 56, 46, 46, 65, 68, 66, 75, 73, 58, 59, 86, 39, 56, 76, 74, 55, 80, 63, 109, 59, 58, 81, 72, 70, 50, 54, 72, 60, 59, 62, 64, 61, 71, 57, 58, 59, 82, 57, 70, 43, 76, 48, 67, 65, 60, 53, 38, 40, 69, 82, 83, 57, 65, 59, 38, 75, 85, 79, 75, 61, 63, 63, 70, 74, 51, 63, 52, 63, 68, 65, 56, 52, 80, 55, 59, 65, 64, 67, 66, 65, 70, 74, 59, 65, 61, 51, 89, 74, 41, 63, 60, 63, 46, 51, 71, 81, 86, 60, 66, 40, 87, 47, 46, 53, 82, 74, 59, 64, 71, 65, 61, 59, 62, 87, 64, 60, 61, 56, 56, 64, 52, 55, 54, 58, 78, 72, 59, 74, 69, 52, 85, 63, 60, 76, 53, 76, 71, 99, 67, 75, 58, 59, 62, 55, 69, 71, 61, 89, 68, 44, 71, 56, 53, 106, 95, 80, 70, 70, 73, 62, 49, 53, 52, 59, 54, 69, 59, 59, 42, 89, 64, 83, 62, 93, 63, 53, 56, 45, 65, 59, 61, 66, 58, 69, 59, 75, 48, 75, 73, 72, 55, 85, 56, 78, 53, 67, 52, 68, 63, 73, 52, 63, 76, 56, 62, 69, 58, 49, 97, 58, 64, 70, 68, 58, 54, 70, 40, 62, 78, 61, 52, 67, 57, 79, 93, 59, 59, 71, 71, 54, 72, 82, 71, 52, 56, 70, 74, 62, 60, 75, 69, 101, 65, 74, 76, 84, 48, 51, 87, 58, 64, 69, 54, 73, 80, 57, 64, 43, 65, 39, 82, 89, 57, 72, 54, 63, 98, 77, 60, 66, 73, 63, 68, 68, 61, 46, 78, 67, 75, 77, 67, 70, 64, 72, 59, 78, 54, 36, 56, 58, 70, 66, 63, 59, 56, 64, 64, 105, 85, 82, 81, 56, 93, 65, 71, 67, 46, 76, 31, 46, 47, 74, 69, 82, 78, 112, 50, 51, 64, 69, 72, 68, 69, 73, 97, 80, 67, 74, 68, 52, 78, 50, 65, 54, 36, 59, 62, 56, 76, 68, 56, 59, 62, 77, 61, 63, 47, 69, 57, 61, 55, 65, 52, 51, 84, 98, 41, 77, 50, 89, 78, 81, 55, 70, 71, 77, 65, 53, 44, 59, 85, 61, 69, 56, 38, 56, 90, 58, 65, 94, 66, 68, 56, 86, 61, 56, 74, 81, 73, 71, 55, 41, 66, 67, 55, 63, 77, 79, 95, 46, 70, 77, 60, 72, 60, 67, 64, 58, 68, 51, 73, 57, 62, 80, 69, 57, 42, 54, 66, 48, 64, 62, 70, 74, 54, 78, 89, 67, 102, 59, 76, 53, 68, 68, 60, 77, 63, 67, 82, 84, 65, 79, 65, 88, 56, 86, 78, 61, 65, 72, 53, 78, 60, 50, 62, 96, 70, 67, 55, 43, 69, 75, 64, 61, 39, 60, 67, 66, 69, 58, 60, 58, 57, 83, 62, 55, 63, 62, 65, 65, 74, 79, 94, 72, 50, 75, 72, 57, 55, 80, 68, 43, 51, 61, 65, 71, 68, 56, 73, 60, 75, 65, 49, 50, 53, 67, 63, 75, 68, 61, 55, 68, 81, 61, 43, 52, 46, 55, 67, 42, 59, 55, 68, 49, 94, 69, 96, 69, 66, 48, 64, 65, 75, 82, 71, 64, 66, 64, 59, 42, 74, 50, 55, 63, 60, 77, 79, 55, 62, 82, 46, 43, 69, 66, 67, 70, 54, 88, 53, 69, 72, 75, 64, 45, 62, 79, 62, 70, 72, 72, 67, 71, 74, 74, 62, 73, 90, 61, 95, 62, 76, 75, 62, 66, 94, 68, 50, 52, 65, 58, 50, 71, 56, 50, 45, 49, 72, 56, 68, 79, 65, 63, 59, 114, 58, 77, 93, 70, 61, 64, 60, 63, 57, 97, 70, 74, 65, 75, 102, 72, 80, 69, 58, 81, 47, 69, 60, 78, 56, 43, 42, 59, 101, 58, 54, 66, 54, 58, 59, 64, 64, 62, 57, 79, 74, 73, 82, 71, 76, 37, 76, 76, 68, 70, 54, 53, 62, 60, 63, 68, 65, 79, 59, 64, 56, 56, 54, 66, 65, 66, 60, 59, 68, 52, 53, 64, 61, 63, 48, 75, 68, 69, 82, 78, 65, 67, 57, 65, 60, 46, 60, 67, 69, 52, 40, 53, 72, 60, 67, 59, 69, 55, 74, 65, 64, 58, 56, 66, 77, 59, 62, 50, 58, 63, 56, 63, 69, 70, 62, 73, 47, 52, 72, 114, 75, 75, 87, 61, 66, 62, 66, 56, 51, 58, 32, 64, 60, 68, 57, 56, 72, 74, 53, 61, 54, 53, 94, 68, 53, 78, 75, 110, 76, 80, 96, 69, 51, 68, 55, 92, 59, 82, 76, 74, 53, 64, 69, 55, 51, 85, 62, 73, 60, 58, 81, 56, 55, 65, 52, 66, 84, 118, 72, 50, 76, 98, 63, 60, 66, 61, 93, 69, 59, 76, 54, 80, 57, 41, 56, 67, 53, 67, 89, 48, 53, 68, 41, 53, 87, 91, 55, 75, 42, 56, 63, 60, 57, 54, 53, 58, 77, 55, 80, 68, 54, 45, 60, 67, 61, 73, 66, 56, 57, 68, 105, 58, 89, 60, 79, 48, 76, 78, 47, 77, 57, 67, 81, 60, 87, 87, 63, 67, 78, 67, 56, 72, 100, 73, 67, 67, 53, 68, 76, 62, 60, 59, 46, 85, 68, 50, 80, 63, 67, 62, 80, 68, 61, 73, 69, 64, 68, 118, 63, 56, 56, 63, 84, 63, 69, 53, 82, 63, 59, 62, 54, 66, 60, 76, 60, 76, 62, 77, 60, 79, 70, 47, 65, 52, 99, 59, 94, 47, 48, 69, 73, 69, 53, 78, 61, 58, 33, 42, 50, 50, 50, 59, 65, 46, 58, 68, 68, 52, 79, 75, 50, 53, 46, 61, 83, 68, 51, 81, 56, 108, 105, 64, 51, 69, 79, 42, 88, 85, 76, 68, 71, 62, 66, 63, 52, 58, 98, 54, 64, 89, 85, 67, 68, 71, 45, 57, 76, 58, 64, 74, 69, 71, 70, 70, 94, 63, 89, 54, 71, 68, 49, 75, 60, 98, 61, 52, 67, 56, 135, 57, 88, 61, 50, 79, 76, 99, 80, 60, 56, 71, 65, 64, 63, 34, 65, 78, 59, 71, 47, 76, 55, 59, 68, 62, 57, 107, 52, 65, 64, 47, 59, 57, 55, 50, 61, 57, 66, 60, 70, 70, 56, 59, 55, 60, 90, 43, 64, 68, 106, 57, 51, 68, 61, 65, 66, 64, 52, 59, 64, 44, 74, 59, 38, 59, 67, 62, 68, 85, 50, 48, 79, 63, 66, 73, 44, 37, 49, 60, 71, 82, 65, 69, 70, 66, 55, 53, 47, 50, 69, 71, 50, 77, 44, 72, 63, 56, 55, 72, 64, 58, 51, 58, 84, 49, 59, 60, 68, 75, 48, 93, 56, 79, 69, 47, 61, 74, 59, 74, 84, 64, 63, 65, 67, 61, 37, 59, 68, 66, 75, 55, 55, 58, 58, 46, 50, 82, 46, 57, 78, 44, 59, 67, 71, 58, 59, 63, 73, 76, 63, 39, 75, 60, 82, 49, 63, 58, 53, 74, 77, 71, 60, 54, 62, 63, 62, 70, 51, 76, 59, 55, 51, 68, 49, 64, 34, 75, 58, 75, 80, 70, 83, 59, 61, 38, 78, 85, 64, 76, 39, 60, 49, 77, 60, 43, 68, 79, 65, 59, 57, 81, 61, 80, 57, 88, 61, 71, 42, 74, 53, 67, 66, 64, 62, 77, 67, 83, 32, 53, 94, 55, 61, 78, 64, 61, 68, 61, 56, 47, 60, 82, 45, 60, 48, 53, 70, 77, 60, 81, 90, 48, 96, 69, 74, 56, 70, 55, 54, 48, 52, 90, 62, 68, 59, 58, 113, 74, 66, 55, 59, 64, 69, 69, 75, 72, 64, 62, 74, 100, 97, 71, 57, 86, 67, 54, 75, 86, 81, 60, 64, 58, 55, 72, 86, 60, 73, 66, 68, 49, 66, 77, 60, 56, 68, 73, 57, 74, 60, 60, 55, 82, 61, 66, 65, 64, 65, 38, 90, 56, 70, 63, 61, 82, 66, 91, 64, 54, 62, 64, 43, 96, 38, 67, 82, 63, 60, 59, 90, 72, 47, 49, 89, 64, 70, 123, 88, 63, 71, 59, 61, 60, 59, 64, 64, 59, 72, 74, 48, 88, 84, 79, 37, 47, 75, 61, 68, 67, 71, 49, 64, 45, 62, 71, 57, 72, 97, 56, 58, 45, 68, 73, 53, 70, 60, 71, 58, 66, 63, 48, 38, 72, 41, 72, 36, 61, 48, 94, 57, 62, 57, 74, 66, 69, 63, 67, 60, 75, 93, 52, 59, 53, 60, 72, 34, 55, 67, 75, 62, 71, 55, 77, 66, 62, 61, 75, 60, 76, 61, 54, 47, 74, 62, 75, 70, 78, 70, 70, 54, 82, 65, 44, 56, 85, 53, 59, 57, 61, 47, 55, 73, 57, 67, 52, 59, 58, 68, 66, 71, 51, 58, 91, 88, 76, 62, 73, 97, 81, 74, 65, 80, 62, 59, 64, 60, 86, 60, 81, 66, 91, 79, 82, 87, 58, 87, 98, 59, 45, 77, 73, 66, 64, 53, 59, 62, 76, 61, 70, 55, 85, 63, 63, 62, 48, 77, 68, 51, 53, 66, 61, 70, 63, 63, 61, 83, 77, 68, 58, 54, 53, 52, 64, 49, 74, 76, 76, 56, 57, 61, 63, 72, 56, 53, 45, 60, 62, 66, 51, 72, 56, 43, 86, 65, 84, 82, 75, 67, 34, 77, 47, 84, 78, 71, 90, 65, 58, 56, 64, 63, 57, 66, 63, 56, 96, 61, 61, 69, 66, 110, 48, 80, 68, 58, 67, 61, 49, 42, 56, 57, 94, 75, 65, 51, 70, 48, 61, 65, 70, 91, 55, 51, 56, 79, 61, 59, 50, 60, 46, 75, 88, 53, 61, 93, 87, 64, 62, 62, 57, 67, 58, 71, 61, 70, 65, 64, 66, 59, 53, 99, 63, 86, 49, 114, 98, 70, 69, 64, 69, 59, 64, 56, 54, 72, 61, 62, 88, 40, 70, 93, 49, 66, 70, 52, 48, 103, 119, 73, 64, 84, 76, 74, 64, 62, 74, 61, 86, 41, 53, 66, 50, 83, 66, 79, 71, 93, 45, 60, 64, 51, 55, 65, 45, 78, 61, 107, 60, 88, 79, 61, 96, 53, 44, 55, 46, 71, 101, 67, 50, 66, 54, 74, 87, 88, 50, 58, 82, 84, 80, 57, 60, 61, 62, 51, 59, 92, 66, 62, 54, 51, 75, 75, 50, 53, 43, 53, 53, 57, 88, 74, 68, 43, 50, 42, 60, 72, 91, 61, 65, 54, 59, 51, 108, 87, 69, 102, 51, 65, 60, 69, 118, 83, 64, 48, 47, 100, 81, 57, 58, 88, 91, 60, 61, 60, 64, 59, 67, 79, 64, 69, 51, 54, 53, 60, 75, 46, 143, 87, 61, 87, 56, 42, 63, 80, 44, 53, 55, 68, 73, 61, 69, 57, 62, 92, 67, 59, 45, 75, 56, 78, 54, 63, 60, 79, 122, 62, 62, 60, 65, 84, 44, 65, 83, 66, 47, 109, 85, 46, 79, 49, 71, 66, 82, 65, 49, 73, 75, 45, 66, 62, 67, 58, 66, 61, 106, 57, 50, 62, 78, 51, 55, 72, 57, 60, 55, 60, 57, 81, 80, 83, 61, 68, 67, 50, 60, 52, 57, 47, 85, 60, 71, 74, 81, 69, 69, 84, 100, 58, 52, 56, 67, 59, 59, 59, 76, 65, 51, 72, 59, 51, 53, 65, 63, 59, 54, 54, 111, 109, 59, 46, 78, 52, 55, 65, 74, 50, 66, 55, 54, 67, 53, 62, 69, 64, 62, 53, 56, 64, 55, 87, 59, 60, 62, 76, 93, 59, 70, 57, 63, 65, 54, 87, 57, 57, 48, 56, 64, 69, 58, 61, 64, 52, 56, 63, 47, 61, 63, 60, 57, 59, 57, 56, 73, 77, 48, 52, 63, 55, 55, 107, 88, 69, 67, 55, 76, 70, 82, 66, 54, 68, 65, 53, 66, 75, 50, 65, 47, 66, 72, 82, 86, 76, 86, 60, 67, 53, 65, 58, 70, 48, 60, 63, 59, 111, 62, 92, 60, 49, 69, 62, 73, 49, 57, 53, 70, 67, 108, 71, 82, 54, 64, 73, 62, 77, 93, 49, 53, 70, 74, 78, 114, 62, 64, 67, 71, 58, 96, 76, 78, 79, 57, 53, 54, 59, 55, 51, 44, 60, 80, 65, 69, 82, 72, 104, 48, 62, 98, 61, 65, 63, 131, 59, 58, 66, 64, 138, 49, 86, 70, 66, 75, 60, 57, 57, 63, 61, 53, 73, 64, 55, 63, 69, 72, 57, 97, 57, 79, 53, 60, 68, 72, 80, 109, 44, 49, 66, 54, 55, 71, 60, 58, 48, 62, 58, 58, 54, 76, 54, 68, 66, 65, 46, 60, 59, 69, 83, 64, 40, 84, 44, 67, 52, 47, 59, 63, 51, 57, 88, 61, 42, 61, 65, 57, 64, 60, 59, 67, 81, 82, 34, 60, 52, 63, 42, 65, 77, 50, 72, 75, 65, 83, 74, 52, 55, 56, 57, 59, 58, 65, 59, 59, 67, 60, 68, 67, 76, 63, 67, 60, 64, 70, 70, 62, 44, 94, 53, 104, 81, 69, 89, 49, 62, 76, 52, 50, 60, 71, 79, 67, 70, 88, 74, 72, 82, 51, 79, 76, 68, 55, 70, 68, 44, 60, 68, 69, 76, 61, 84, 73, 61, 45, 79, 67, 74, 62, 40, 70, 61, 45, 76, 61, 61, 54, 69, 68, 75, 56, 66, 91, 71, 63, 67, 62, 72, 113, 93, 62, 50, 60, 68, 65, 64, 56, 81, 92, 52, 55, 49, 50, 45, 45, 54, 58, 67, 59, 78, 72, 58, 75, 67, 98, 52, 50, 66, 47, 74, 55, 65, 93, 75, 69, 74, 60, 59, 66, 80, 65, 64, 55, 77, 56, 61, 56, 89, 41, 64, 81, 61, 64, 54, 72, 94, 67, 75, 58, 58, 78, 57, 68, 63, 64, 87, 62, 62, 65, 93, 67, 78, 56, 61, 76, 81, 51, 62, 67, 53, 80, 70, 62, 59, 51, 80, 63, 61, 70, 73, 56, 73, 75, 84, 57, 79, 75, 50, 59, 62, 66, 61, 58, 54, 74, 73, 72, 60, 60, 72, 68, 63, 71, 65, 54, 61, 63, 42, 71, 57, 47, 50, 59, 49, 58, 60, 65, 119, 54, 71, 68, 63, 61, 59, 58, 56, 65, 73, 37, 75, 51, 67, 56, 50, 60, 57, 71, 54, 47, 65, 75, 57, 69, 65, 69, 83, 64, 38, 74, 73, 71, 67, 65, 82, 85, 59, 66, 68, 69, 68, 75, 62, 66, 61, 39, 71, 71, 61, 84, 87, 86, 71, 53, 73, 59, 82, 72, 58, 55, 94, 67, 52, 56, 63, 57, 82, 72, 53, 67, 53, 50, 52, 68, 63, 72, 55, 47, 73, 63, 70, 60, 73, 62, 67, 72, 43, 88, 57, 56, 35, 58, 76, 75, 57, 66, 75, 63, 62, 54, 58, 60, 74, 75, 54, 65, 53, 82, 59, 41, 59, 61, 64, 63, 62, 67, 57, 53, 58, 66, 50, 67, 55, 65, 59, 88, 49, 66, 70, 72, 91, 67, 49, 59, 88, 70, 52, 76, 65, 53, 70, 60, 83, 82, 69, 56, 80, 73, 65, 56, 61, 52, 62, 66, 52, 67, 41, 56, 127, 51, 68, 58, 51, 52, 70, 54, 61, 62, 62, 59, 62, 73, 48, 66, 60, 73, 52, 73, 67, 57, 67, 75, 68, 66, 90, 79, 68, 81, 51, 66, 49, 81, 54, 87, 50, 61, 63, 70, 70, 51, 49, 57, 57, 60, 57, 74, 60, 65, 52, 79, 51, 87, 71, 80, 34, 77, 62, 63, 62, 61, 66, 64, 50, 52, 68, 72, 54, 93, 71, 74, 74, 51, 40, 45, 78, 71, 63, 66, 74, 76, 55, 51, 78, 70, 88, 45, 61, 67, 72, 52, 70, 56, 54, 104, 60, 84, 91, 85, 124, 54, 70, 43, 74, 98, 68, 78, 50, 70, 96, 74, 63, 72, 63, 55, 58, 55, 79, 60, 85, 70, 47, 62, 54, 91, 49, 70, 82, 61, 97, 62, 57, 53, 84, 79, 64, 77, 49, 63, 87, 76, 69, 65, 54, 57, 64, 100, 40, 52, 118, 53, 71, 61, 56, 125, 71, 80, 64, 54, 64, 81, 57, 85, 58, 56, 49, 64, 69, 59, 58, 75, 87, 51, 62, 55, 69, 84, 60, 91, 80, 92, 66, 48, 72, 65, 68, 73, 57, 68, 86, 46, 75, 71, 82, 59, 60, 54, 56, 49, 38, 40, 62, 57, 54, 54, 96, 53, 71, 52, 50, 65, 64, 47, 64, 47, 47, 94, 52, 53, 66, 73, 73, 109, 54, 70, 68, 80, 67, 75, 77, 70, 52, 66, 74, 67, 75, 66, 52, 66, 66, 63, 69, 66, 52, 59, 65, 52, 42, 52, 47, 52, 60, 71, 56, 58, 63, 97, 77, 63, 61, 76, 68, 56, 60, 50, 58, 76, 59, 60, 81, 57, 54, 65, 75, 50, 134, 61, 53, 62, 61, 85, 63, 73, 51, 76, 62, 65, 53, 81, 59, 80, 72, 67, 56, 97, 51, 139, 93, 69, 81, 67, 78, 79, 60, 82, 70, 63, 61, 56, 56, 64, 56, 53, 74, 71, 73, 53, 74, 65, 75, 47, 61, 71, 78, 104, 80, 62, 73, 79, 64, 53, 55, 56, 59, 50, 75, 56, 67, 67, 42, 74, 49, 58, 69, 70, 74, 59, 93, 50, 67, 54, 84, 67, 72, 112, 54, 83, 59, 114, 65, 93, 67, 51, 52, 60, 54, 63, 41, 71, 70, 106, 57, 75, 72, 63, 55, 53, 59, 57, 45, 52, 65, 55, 62, 67, 81, 68, 86, 85, 49, 60, 54, 55, 62, 62, 70, 57, 56, 52, 70, 78, 68, 73, 53, 62, 50, 58, 68, 59, 67, 65, 76, 52, 62, 66, 63, 61, 73, 73, 60, 57, 70, 42, 50, 75, 55, 68, 54, 70, 70, 55, 62, 52, 33, 56, 63, 65, 62, 70, 65, 68, 58, 62, 59, 62, 71, 67, 57, 60, 63, 64, 45, 55, 67, 76, 68, 62, 77, 65, 63, 57, 56, 73, 70, 48, 52, 53, 94, 64, 69, 84, 64, 64, 60, 71, 66, 56, 79, 65, 54, 75, 68, 66, 62, 56, 53, 68, 94, 73, 53, 75, 56, 53, 59, 91, 66, 42, 81, 60, 46, 77, 63, 62, 65, 69, 64, 77, 52, 55, 65, 59, 90, 60, 66, 70, 53, 82, 43, 100, 86, 74, 70, 62, 55, 55, 67, 73, 104, 55, 56, 84, 58, 59, 60, 52, 82, 85, 52, 64, 69, 62, 55, 117, 69, 59, 68, 69, 82, 72, 91, 47, 79, 74, 63, 61, 83, 64, 59, 67, 57, 97, 51, 73, 77, 61, 141, 52, 76, 86, 69, 68, 61, 75, 74, 68, 65, 80, 74, 58, 58, 49, 56, 51, 54, 73, 58, 58, 59, 58, 66, 60, 56, 69, 87, 83, 62, 71, 61, 82, 58, 58, 51, 56, 54, 54, 69, 52, 72, 61, 44, 64, 54, 68, 76, 76, 80, 58, 61, 71, 73, 66, 45, 71, 68, 54, 75, 69, 72, 64, 61, 51, 47, 50, 73, 62, 44, 73, 55, 73, 58, 61, 54, 53, 56, 62, 48, 80, 48, 61, 72, 50, 69, 64, 80, 68, 60, 47, 66, 139, 56, 63, 60, 66, 81, 58, 80, 55, 57, 55, 54, 69, 70, 80, 64, 79, 59, 108, 63, 100, 57, 69, 48, 85, 45, 82, 62, 63, 59, 62, 58, 88, 66, 56, 60, 87, 62, 57, 48, 58, 69, 62, 93, 51, 53, 52, 64, 58, 81, 54, 66, 57, 67, 63, 56, 55, 63, 60, 77, 67, 49, 53, 75, 50, 67, 56, 63, 66, 67, 52, 67, 97, 47, 75, 52, 101, 67, 60, 60, 84, 51, 56, 86, 93, 60, 68, 49, 50, 43, 59, 55, 75, 82, 84, 60, 50, 80, 112, 62, 111, 62, 54, 70, 56, 66, 55, 55, 61, 80, 69, 62, 98, 66, 72, 64, 54, 72, 51, 56, 61, 54, 60, 79, 72, 57, 67, 47, 64, 49, 65, 62, 82, 74, 62, 61, 61, 67, 79, 77, 72, 57, 59, 72, 55, 73, 82, 101, 69, 80, 62, 75, 92, 76, 54, 64, 59, 59, 55, 67, 68, 75, 47, 110, 59, 70, 83, 57, 51, 105, 57, 71, 56, 62, 106, 72, 95, 73, 51, 63, 104, 72, 67, 50, 93, 53, 61, 62, 69, 77, 80, 89, 84, 58, 73, 40, 70, 51, 59, 66, 53, 61, 65, 61, 56, 63, 70, 56, 81, 59, 54, 60, 49, 81, 53, 78, 66, 61, 52, 62, 63, 67, 50, 57, 72, 73, 56, 62, 83, 55, 67, 73, 66, 61, 72, 57, 78, 73, 61, 41, 70, 64, 117, 84, 62, 68, 56, 54, 74, 70, 52, 41, 77, 50, 81, 78, 73, 81, 67, 76, 47, 54, 48, 54, 75, 58, 69, 59, 51, 68, 55, 51, 65, 48, 67, 55, 61, 75, 75, 61, 51, 75, 64, 65, 77, 68, 58, 81, 60, 54, 75, 50, 64, 57, 73, 60, 60, 60, 80, 64, 55, 57, 72, 50, 46, 70, 59, 68, 52, 72, 62, 62, 64, 83, 75, 59, 68, 58, 62, 65, 65, 72, 62, 61, 76, 51, 97, 86, 37, 71, 59, 65, 56, 65, 54, 56, 48, 56, 46, 60, 67, 53, 68, 59, 77, 52, 57, 46, 82, 103, 52, 57, 56, 53, 46, 52, 62, 62, 94, 86, 78, 78, 44, 67, 53, 55, 63, 80, 75, 70, 75, 76, 64, 62, 72, 60, 89, 63, 52, 103, 91, 49, 70, 62, 56, 73, 64, 62, 98, 52, 72, 70, 60, 68, 62, 51, 78, 54, 61, 69, 53, 54, 68, 104, 108, 55, 63, 52, 73, 59, 65, 52, 73, 69, 68, 57, 105, 58, 55, 73, 64, 69, 62, 81, 46, 66, 74, 53, 55, 58, 57, 65, 56, 51, 65, 65, 54, 54, 52, 81, 53, 73, 60, 55, 101, 39, 46, 55, 75, 73, 57, 57, 74, 59, 74, 56, 51, 62, 49, 78, 88, 67, 59, 62, 68, 103, 65, 70, 68, 54, 55, 57, 68, 52, 54, 50, 63, 72, 54, 56, 54, 51, 66, 72, 56, 63, 63, 63, 65, 71, 70, 63, 56, 65, 60, 70, 64, 53, 57, 72, 64, 70, 70, 59, 74, 54, 63, 108, 74, 50, 67, 66, 61, 63, 85, 78, 53, 57, 58, 45, 94, 58, 57, 77, 58, 71, 78, 56, 53, 62, 62, 58, 61, 73, 59, 121, 62, 67, 72, 66, 61, 84, 124, 72, 53, 100, 50, 47, 61, 63, 56, 80, 85, 59, 90, 41, 96, 76, 51, 60, 79, 51, 69, 53, 51, 59, 48, 58, 69, 83, 50, 108, 54, 56, 60, 70, 98, 52, 37, 66, 54, 55, 83, 57, 62, 70, 60, 63, 53, 68, 97, 54, 79, 71, 70, 63, 58, 61, 71, 40, 58, 56, 64, 55, 57, 53, 80, 55, 75, 61, 64, 53, 63, 70, 75, 57, 76, 61, 54, 63, 68, 80, 64, 55, 68, 63, 46, 79, 87, 60, 94, 80, 71, 71, 55, 83, 57, 72, 37, 84, 60, 77, 67, 72, 60, 54, 77, 74, 60, 52, 58, 76, 61, 76, 61, 54, 89, 71, 46, 76, 70, 76, 114, 114, 62, 79, 61, 71, 58, 75, 68, 53, 68, 78, 44, 63, 59, 64, 67, 59, 86, 58, 70, 67, 71, 91, 64, 67, 54, 76, 124, 77, 55, 79, 56, 50, 61, 55, 79, 64, 66, 74, 86, 59, 82, 56, 85, 66, 50, 74, 47, 41, 60, 85, 58, 60, 73, 77, 100, 66, 114, 66, 77, 69, 105, 66, 64, 51, 63, 53, 62, 74, 67, 76, 72, 67, 35, 74, 63, 79, 60, 88, 66, 75, 57, 49, 63, 77, 66, 56, 62, 73, 105, 89, 59, 66, 75, 59, 76, 61, 78, 57, 58, 62, 73, 57, 74, 65, 73, 41, 69, 48, 76, 74, 64, 66, 68, 70, 57, 84, 69, 55, 88, 79, 59, 91, 76, 73, 120, 81, 76, 92, 50, 73, 68, 65, 63, 68, 81, 55, 77, 59, 55, 72, 53, 56, 73, 55, 88, 60, 64, 73, 57, 68, 54, 68, 64, 84, 57, 65, 79, 76, 82, 51, 55, 84, 82, 74, 77, 46, 70, 41, 96, 68, 77, 65, 84, 50, 53, 88, 62, 71, 49, 58, 50, 55, 64, 85, 62, 62, 55, 56, 68, 96, 58, 77, 57, 63, 53, 79, 40, 61, 66, 74, 55, 109, 53, 70, 84, 62, 48, 67, 54, 51, 72, 62, 66, 52, 89, 60, 70, 58, 89, 86, 95, 64, 60, 55, 82, 65, 81, 52, 50, 67, 75, 57, 63, 72, 46, 87, 49, 74, 60, 77, 66, 65, 70, 66, 86, 68, 66, 68, 55, 53, 63, 61, 56, 70, 68, 107, 53, 68, 75, 75, 62, 56, 121, 57, 61, 64, 52, 122, 64, 75, 55, 66, 82, 82, 69, 58, 73, 55, 55, 64, 72, 69, 76, 91, 77, 73, 72, 64, 94, 80, 58, 48, 60, 69, 121, 52, 66, 55, 53, 55, 58, 59, 59, 61, 69, 58, 49, 76, 74, 86, 50, 53, 61, 46, 56, 48, 74, 58, 76, 64, 71, 65, 69, 81, 48, 61, 63, 58, 54, 79, 50, 68, 59, 56, 69, 64, 65, 72, 48, 64, 52, 56, 52, 59, 56, 57, 55, 55, 62, 69, 81, 64, 47, 58, 72, 76, 56, 67, 61, 61, 55, 82, 61, 57, 51, 53, 52, 67, 64, 96, 65, 43, 66, 63, 90, 52, 60, 64, 54, 58, 63, 128, 32, 60, 104, 74, 93, 75, 57, 60, 63, 70, 54, 79, 62, 76, 50, 57, 49, 64, 59, 55, 53, 116, 76, 64, 64, 46, 54, 62, 67, 63, 62, 59, 71, 76, 67, 93, 65, 65, 53, 51, 66, 68, 68, 54, 79, 66, 73, 55, 72, 57, 73, 62, 66, 54, 81, 60, 65, 69, 30, 71, 61, 57, 83, 68, 57, 62, 59, 76, 69, 77, 45, 78, 62, 68, 65, 66, 43, 67, 58, 57, 71, 63, 75, 44, 74, 60, 89, 75, 45, 69, 42, 58, 71, 47, 63, 45, 56, 44, 72, 50, 61, 68, 74, 66, 57, 58, 64, 52, 90, 55, 59, 50, 67, 68, 43, 41, 49, 70, 75, 66, 76, 58, 65, 52, 66, 71, 60, 69, 60, 72, 73, 53, 48, 69, 71, 51, 82, 65, 57, 78, 82, 136, 67, 71, 83, 68, 104, 66, 65, 63, 68, 70, 80, 81, 79, 64, 73, 62, 74, 57, 80, 38, 81, 50, 60, 79, 55, 57, 98, 89, 74, 90, 55, 69, 73, 74, 45, 65, 57, 63, 91, 64, 86, 50, 71, 64, 70, 70, 66, 63, 51, 78, 64, 75, 71, 55, 51, 71, 58, 81, 61, 83, 77, 54, 47, 55, 72, 59, 79, 59, 63, 77, 65, 77, 51, 73, 77, 104, 63, 48, 79, 50, 50, 74, 48, 74, 63, 55, 69, 60, 62, 87, 82, 83, 55, 69, 50, 84, 65, 62, 78, 82, 81, 85, 61, 61, 68, 62, 90, 55, 63, 86, 71, 62, 51, 65, 52, 63, 50, 34, 62, 63, 76, 61, 57, 77, 53, 69, 84, 79, 70, 66, 77, 45, 59, 56, 55, 61, 71, 71, 56, 59, 67, 70, 70, 79, 61, 79, 70, 55, 70, 63, 60, 64, 64, 67, 100, 60, 56, 64, 68, 73, 53, 60, 69, 60, 86, 71, 88, 72, 76, 67, 57, 86, 81, 69, 40, 47, 60, 62, 55, 56, 59, 81, 52, 60, 63, 50, 71, 68, 46, 68, 61, 65, 60, 71, 55, 56, 60, 59, 50, 52, 79, 80, 54, 68, 47, 49, 66, 47, 50, 58, 62, 56, 69, 55, 55, 87, 69, 67, 49, 58, 90, 101, 79, 45, 77, 60, 61, 54, 50, 72, 65, 65, 72, 47, 53, 90, 72, 49, 64, 55, 81, 72, 79, 79, 64, 62, 75, 66, 59, 79, 72, 46, 59, 54, 53, 76, 72, 96, 62, 59, 65, 69, 85, 57, 63, 48, 64, 99, 65, 53, 76, 56, 88, 56, 68, 69, 44, 69, 79, 51, 63, 70, 56, 70, 65, 85, 61, 71, 99, 56, 60, 63, 56, 59, 61, 64, 65, 71, 64, 57, 59, 125, 82, 73, 73, 46, 53, 63, 55, 69, 66, 71, 51, 48, 55, 61, 78, 74, 63, 85, 62, 101, 69, 74, 119, 79, 77, 59, 61, 85, 77, 73, 75, 58, 72, 56, 81, 62, 68, 35, 59, 65, 90, 88, 62, 59, 61, 74, 75, 52, 53, 104, 59, 49, 75, 102, 79, 81, 49, 52, 53, 64, 55, 51, 81, 50, 88, 48, 62, 59, 63, 62, 83, 64, 62, 81, 64, 77, 67, 64, 67, 50, 79, 69, 57, 64, 65, 75, 81, 75, 58, 67, 67, 88, 46, 63, 75, 84, 56, 59, 74, 73, 59, 58, 49, 73, 51, 88, 65, 79, 75, 47, 62, 61, 62, 55, 50, 62, 54, 73, 70, 51, 79, 47, 92, 52, 69, 54, 76, 78, 72, 77, 51, 76, 57, 33, 57, 54, 66, 76, 73, 56, 97, 38, 67, 52, 74, 54, 71, 59, 47, 59, 55, 49, 52, 95, 75, 72, 118, 49, 83, 65, 51, 84, 62, 67, 33, 89, 60, 72, 58, 88, 57, 87, 54, 99, 68, 89, 60, 57, 46, 80, 63, 57, 59, 61, 65, 69, 62, 62, 80, 65, 70, 40, 53, 47, 43, 70, 93, 50, 80, 80, 77, 61, 42, 57, 77, 64, 57, 51, 60, 66, 68, 75, 73, 96, 58, 76, 77, 73, 73, 72, 83, 63, 53, 65, 66, 73, 65, 61, 59, 56, 67, 56, 54, 52, 55, 32, 79, 81, 65, 75, 70, 76, 75, 62, 70, 68, 52, 62, 63, 56, 39, 56, 72, 73, 116, 70, 63, 48, 106, 57, 79, 58, 50, 52, 79, 61, 60, 64, 63, 55, 65, 62, 60, 67, 63, 96, 79, 63, 77, 57, 62, 57, 80, 67, 73, 53, 90, 36, 91, 55, 51, 63, 62, 57, 95, 63, 66, 43, 54, 65, 95, 61, 76, 61, 61, 61, 84, 63, 59, 48, 80, 67, 69, 84, 40, 38, 67, 78, 54, 43, 65, 71, 99, 74, 91, 41, 55, 64, 65, 50, 68, 58, 62, 82, 70, 63, 53, 63, 70, 64, 39, 64, 61, 65, 63, 54, 89, 58, 69, 61, 64, 50, 57, 64, 63, 73, 51, 74, 82, 59, 86, 67, 76, 93, 64, 76, 52, 65, 72, 62, 79, 64, 76, 41, 79, 44, 70, 60, 63, 61, 51, 78, 58, 57, 48, 69, 55, 75, 56, 69, 60, 62, 66, 63, 82, 59, 44, 68, 61, 86, 64, 56, 77, 70, 79, 43, 58, 44, 77, 76, 61, 71, 68, 48, 78, 59, 96, 59, 93, 60, 46, 64, 69, 79, 66, 61, 54, 57, 75, 74, 49, 69, 67, 75, 61, 65, 86, 52, 57, 56, 61, 62, 80, 63, 62, 56, 63, 44, 69, 58, 50, 77, 67, 86, 50, 66, 64, 71, 63, 55, 143, 70, 68, 56, 59, 130, 71, 79, 60, 55, 68, 70, 65, 69, 45, 78, 61, 86, 72, 76, 58, 75, 53, 37, 59, 63, 87, 46, 57, 69, 51, 61, 91, 70, 62, 58, 63, 63, 48, 68, 76, 71, 50, 52, 80, 79, 52, 55, 57, 74, 81, 74, 57, 66, 59, 67, 66, 81, 65, 51, 58, 80, 56, 68, 61, 54, 57, 101, 61, 60, 64, 56, 60, 77, 72, 78, 73, 39, 86, 68, 70, 57, 73, 60, 68, 52, 85, 54, 54, 57, 49, 66, 54, 63, 90, 61, 72, 61, 70, 67, 67, 61, 59, 60, 73, 76, 56, 54, 57, 54, 69, 70, 70, 74, 58, 49, 62, 91, 82, 54, 63, 52, 71, 71, 76, 82, 61, 70, 70, 75, 48, 97, 56, 69, 65, 66, 75, 55, 65, 48, 64, 57, 58, 70, 76, 75, 70, 59, 73, 61, 68, 59, 60, 66, 66, 81, 92, 49, 71, 57, 54, 66, 72, 54, 80, 58, 56, 64, 69, 64, 72, 46, 55, 89, 107, 61, 75, 61, 51, 70, 52, 63, 47, 61, 57, 58, 59, 65, 48, 72, 85, 92, 83, 49, 78, 66, 52, 64, 66, 65, 77, 67, 75, 61, 67, 54, 81, 103, 77, 64, 104, 44, 48, 71, 59, 71, 60, 55, 68, 81, 56, 65, 54, 56, 73, 54, 64, 56, 79, 52, 74, 70, 49, 65, 75, 54, 58, 64, 56, 61, 54, 61, 61, 50, 61, 59, 64, 49, 53, 50, 85, 46, 54, 61, 45, 72, 74, 60, 47, 69, 66, 99, 47, 58, 59, 79, 90, 74, 62, 65, 58, 75, 93, 49, 71, 68, 48, 69, 92, 71, 47, 41, 105, 57, 49, 59, 51, 76, 69, 38, 42, 104, 56, 56, 58, 50, 61, 73, 60, 70, 75, 53, 70, 76, 69, 58, 74, 60, 53, 91, 63, 68, 50, 62, 75, 62, 49, 54, 74, 54, 67, 66, 35, 54, 61, 59, 80, 76, 77, 41, 55, 46, 54, 65, 73, 62, 46, 88, 66, 59, 92, 80, 58, 42, 58, 49, 68, 68, 66, 49, 65, 77, 51, 56, 59, 69, 113, 66, 74, 56, 74, 71, 68, 88, 46, 68, 67, 60, 63, 85, 55, 76, 62, 37, 69, 72, 56, 52, 46, 74, 72, 56, 67, 86, 67, 66, 52, 68, 75, 53, 50, 90, 93, 59, 67, 60, 53, 64, 52, 51, 63, 51, 64, 55, 69, 75, 57, 73, 77, 58, 74, 67, 63, 72, 59, 70, 90, 81, 50, 66, 75, 59, 52, 65, 60, 52, 78, 71, 76, 48, 97, 63, 43, 94, 54, 96, 71, 74, 71, 70, 55, 72, 58, 45, 54, 64, 86, 80, 62, 84, 56, 86, 66, 63, 42, 73, 66, 71, 57, 54, 59, 54, 35, 86, 56, 97, 62, 72, 42, 77, 63, 57, 80, 53, 63, 69, 58, 60, 79, 70, 73, 60, 57, 60, 79, 45, 96, 55, 59, 58, 35, 61, 56, 91, 60, 69, 66, 71, 68, 68, 51, 74, 62, 67, 80, 68, 85, 63, 62, 55, 94, 75, 59, 83, 73, 33, 52, 45, 51, 79, 41, 60, 50, 66, 53, 66, 61, 90, 48, 78, 63, 61, 67, 51, 74, 50, 63, 63, 68, 64, 59, 95, 66, 81, 70, 42, 54, 69, 74, 45, 63, 59, 58, 55, 51, 70, 67, 69, 133, 76, 67, 55, 65, 108, 77, 72, 46, 57, 60, 75, 64, 82, 65, 36, 43, 58, 65, 70, 73, 51, 51, 79, 47, 58, 73, 70, 105, 70, 53, 64, 59, 45, 102, 56, 84, 65, 91, 70, 90, 65, 80, 61, 61, 63, 81, 56, 77, 57, 70, 65, 101, 63, 62, 84, 70, 62, 60, 38, 80, 61, 74, 47, 65, 55, 54, 66, 73, 56, 59, 57, 60, 68, 59, 67, 58, 57, 45, 70, 57, 71, 91, 68, 73, 62, 63, 64, 59, 58, 62, 104, 82, 78, 67, 45, 97, 95, 60, 76, 68, 65, 86, 58, 78, 48, 52, 65, 88, 71, 46, 104, 76, 72, 53, 68, 71, 53, 57, 56, 68, 60, 67, 62, 71, 75, 60, 57, 69, 59, 62, 57, 60, 76, 51, 63, 68, 74, 60, 82, 70, 60, 62, 55, 56, 55, 99, 66, 66, 46, 57, 53, 54, 91, 62, 44, 56, 64, 83, 84, 64, 84, 74, 80, 66, 76, 71, 78, 43, 62, 70, 67, 53, 60, 86, 62, 67, 76, 56, 73, 58, 79, 56, 70, 59, 46, 55, 66, 81, 76, 57, 66, 70, 63, 71, 50, 71, 69, 74, 67, 75, 49, 116, 51, 71, 79, 57, 51, 68, 61, 63, 64, 53, 103, 104, 59, 74, 77, 71, 101, 47, 55, 82, 75, 58, 50, 59, 82, 75, 56, 92, 63, 63, 82, 69, 78, 55, 75, 74, 64, 71, 74, 56, 68, 72, 52, 53, 66, 92, 79, 43, 55, 45, 89, 75, 76, 64, 53, 60, 61, 114, 57, 114, 32, 83, 79, 60, 45, 58, 44, 61, 61, 49, 43, 50, 72, 56, 64, 53, 52, 69, 76, 71, 71, 49, 70, 58, 73, 87, 73, 57, 55, 88, 57, 61, 68, 69, 53, 70, 67, 72, 55, 73, 63, 46, 53, 82, 64, 78, 54, 75, 66, 76, 82, 56, 76, 56, 81, 78, 79, 54, 64, 59, 68, 55, 50, 49, 73, 49, 53, 87, 76, 68, 75, 48, 80, 55, 65, 62, 101, 61, 65, 51, 70, 54, 64, 69, 53, 59, 56, 81, 58, 72, 64, 71, 66, 58, 58, 67, 76, 73, 52, 59, 62, 62, 59, 76, 93, 52, 83, 63, 58, 49, 61, 58, 57, 53, 58, 71, 54, 55, 65, 60, 72, 55, 63, 41, 66, 54, 42, 62, 77, 63, 59, 59, 61, 76, 54, 61, 68, 71, 45, 77, 57, 69, 88, 69, 62, 65, 49, 66, 64, 50, 39, 88, 81, 76, 60, 84, 77, 68, 58, 69, 56, 101, 50, 81, 91, 44, 54, 62, 60, 59, 63, 76, 62, 48, 86, 74, 60, 73, 80, 90, 63, 56, 95, 61, 70, 39, 45, 47, 51, 61, 59, 68, 63, 54, 71, 72, 93, 46, 65, 60, 77, 63, 61, 160, 84, 87, 58, 52, 138, 56, 77, 67, 59, 70, 68, 56, 83, 60, 66, 47, 75, 78, 66, 65, 64, 37, 44, 58, 79, 85, 89, 52, 62, 44, 54, 104, 82, 62, 80, 64, 53, 48, 60, 81, 93, 49, 59, 66, 77, 64, 67, 60, 52, 62, 73, 53, 76, 54, 58, 74, 77, 50, 58, 64, 86, 38, 70, 61, 68, 72, 78, 64, 54, 61, 72, 59, 59, 63, 62, 57, 69, 56, 63, 56, 75, 52, 59, 64, 60, 81, 54, 49, 66, 68, 48, 67, 71, 61, 55, 51, 70, 49, 67, 78, 58, 70, 63, 58, 50, 61, 63, 48, 59, 69, 57, 88, 56, 84, 60, 71, 77, 59, 69, 76, 61, 71, 49, 74, 75, 60, 66, 68, 77, 62, 66, 81, 52, 72, 77, 48, 66, 50, 69, 68, 53, 64, 58, 76, 67, 67, 48, 73, 61, 56, 81, 52, 82, 77, 101, 50, 68, 71, 65, 75, 68, 66, 53, 77, 62, 59, 65, 55, 63, 56, 49, 72, 81, 110, 61, 67, 55, 76, 78, 58, 57, 59, 58, 64, 71, 80, 49, 43, 61, 86, 57, 66, 54, 67, 52, 62, 57, 52, 50, 92, 74, 53, 69, 71, 49, 81, 76, 58, 74, 83, 60, 42, 62, 64, 79, 72, 69, 44, 62, 55, 63, 61, 77, 97, 74, 56, 69, 67, 69, 66, 102, 70, 57, 52, 55, 49, 77, 73, 41, 66, 79, 71, 56, 67, 79, 66, 67, 46, 64, 88, 56, 72, 66, 76, 68, 66, 80, 77, 81, 91, 93, 73, 73, 79, 65, 63, 57, 61, 47, 61, 83, 71, 69, 53, 79, 68, 47, 67, 57, 88, 71, 65, 54, 52, 82, 70, 72, 56, 48, 41, 78, 62, 76, 64, 53, 99, 67, 69, 70, 63, 67, 59, 80, 68, 59, 91, 74, 64, 79, 52, 105, 56, 61, 50, 70, 79, 44, 81, 101, 55, 67, 89, 68, 72, 64, 84, 72, 74, 87, 65, 69, 67, 83, 60, 69, 59, 61, 79, 69, 123, 71, 43, 61, 59, 60, 49, 73, 67, 58, 78, 38, 68, 69, 56, 83, 95, 73, 83, 56, 52, 39, 71, 74, 53, 59, 63, 61, 49, 60, 53, 71, 71, 48, 49, 69, 74, 51, 69, 79, 67, 69, 54, 70, 77, 69, 61, 76, 57, 60, 62, 54, 49, 56, 84, 92, 81, 73, 53, 81, 63, 69, 94, 56, 66, 58, 89, 61, 72, 64, 58, 63, 57, 63, 58, 69, 79, 64, 52, 62, 64, 46, 48, 60, 87, 50, 69, 67, 81, 60, 69, 79, 79, 76, 75, 40, 45, 76, 37, 83, 66, 69, 54, 70, 52, 52, 56, 69, 53, 79, 81, 97, 52, 77, 54, 44, 73, 62, 72, 52, 59, 107, 66, 69, 53, 61, 65, 74, 56, 73, 65, 55, 70, 54, 55, 63, 61, 68, 72, 59, 48, 76, 39, 51, 56, 30, 80, 67, 60, 69, 41, 51, 78, 89, 42, 52, 62, 77, 80, 97, 53, 62, 60, 41, 65, 67, 66, 73, 67, 71, 93, 59, 62, 65, 72, 56, 67, 74, 72, 99, 74, 54, 62, 61, 67, 81, 60, 58, 56, 43, 63, 54, 51, 120, 89, 58, 70, 60, 71, 52, 50, 61, 51, 39, 68, 68, 48, 67, 60, 61, 75, 61, 73, 47, 51, 67, 67, 81, 89, 81, 76, 52, 66, 100, 87, 75, 52, 72, 47, 77, 72, 61, 66, 57, 67, 65, 71, 54, 75, 61, 48, 60, 56, 60, 66, 62, 75, 70, 67, 62, 63, 40, 52, 49, 77, 50, 68, 61, 88, 65, 73, 80, 72, 64, 73, 61, 56, 61, 68, 76, 68, 55, 57, 86, 69, 44, 60, 40, 117, 67, 59, 70, 66, 66, 99, 93, 98, 54, 56, 51, 68, 71, 46, 74, 71, 59, 63, 81, 59, 60, 109, 61, 67, 75, 55, 70, 69, 76, 63, 57, 58, 60, 79, 54, 67, 87, 65, 58, 68, 74, 75, 71, 60, 63, 68, 61, 86, 82, 60, 79, 62, 67, 88, 61, 57, 42, 78, 51, 68, 57, 88, 71, 94, 70, 73, 50, 76, 67, 48, 67, 81, 70, 73, 56, 69, 62, 52, 62, 60, 55, 52, 52, 52, 61, 91, 62, 63, 61, 57, 55, 72, 66, 72, 53, 68, 58, 48, 65, 57, 79, 63, 63, 70, 56, 56, 66, 93, 55, 49, 58, 74, 64, 62, 92, 80, 62, 58, 66, 65, 39, 80, 57, 84, 63, 50, 82, 69, 57, 54, 72, 61, 74, 54, 69, 71, 66, 74, 62, 57, 62, 114, 55, 58, 58, 59, 74, 51, 67, 67, 62, 57, 56, 79, 66, 56, 68, 75, 88, 71, 59, 73, 68, 50, 73, 60, 75, 75, 80, 98, 79, 64, 61, 84, 56, 61, 51, 48, 41, 102, 50, 77, 55, 51, 49, 60, 55, 66, 59, 75, 93, 62, 75, 57, 93, 55, 55, 66, 70, 125, 49, 85, 75, 116, 75, 58, 87, 58, 66, 64, 58, 67, 66, 58, 72, 59, 69, 60, 51, 81, 59, 57, 62, 66, 54, 85, 43, 62, 46, 56, 58, 62, 60, 73, 45, 77, 73, 44, 116, 75, 66, 76, 49, 106, 51, 83, 49, 66, 62, 53, 57, 108, 55, 52, 55, 61, 70, 63, 79, 76, 52, 69, 59, 49, 66, 61, 68, 121, 58, 81, 98, 68, 63, 66, 92, 62, 53, 76, 65, 69, 78, 65, 74, 51, 56, 64, 56, 81, 61, 68, 83, 71, 78, 75, 56, 73, 68, 62, 55, 72, 74, 61, 77, 70, 77, 79, 82, 56, 83, 80, 60, 74, 53, 63, 92, 69, 66, 62, 88, 81, 85, 67, 62, 51, 66, 60, 60, 49, 70, 56, 57, 63, 103, 48, 66, 44, 67, 47, 61, 68, 59, 64, 58, 61, 85, 56, 60, 40, 74, 61, 44, 71, 50, 71, 63, 77, 49, 75, 53, 88, 54, 81, 62, 102, 57, 54, 56, 81, 62, 56, 57, 71, 75, 78, 66, 58, 73, 53, 75, 61, 60, 63, 67, 75, 55, 61, 45, 67, 59, 67, 82, 66, 52, 61, 52, 53, 49, 68, 88, 46, 49, 57, 75, 76, 69, 124, 60, 56, 63, 59, 136, 56, 67, 59, 66, 84, 51, 64, 70, 50, 73, 52, 54, 72, 80, 84, 55, 76, 61, 94, 74, 95, 43, 64, 67, 61, 56, 115, 80, 66, 73, 68, 54, 66, 48, 53, 78, 74, 71, 53, 64, 76, 76, 58, 50, 75, 71, 58, 102, 57, 51, 67, 73, 58, 62, 69, 69, 73, 58, 78, 55, 44, 80, 61, 60, 61, 73, 71, 71, 63, 70, 55, 58, 64, 61, 60, 60, 84, 72, 51, 52, 57, 53, 51, 47, 51, 63, 56, 68, 58, 56, 60, 79, 81, 61, 62, 87, 57, 60, 52, 80, 56, 80, 43, 69, 55, 73, 105, 69, 69, 56, 60, 58, 53, 116, 89, 64, 87, 63, 82, 51, 73, 87, 51, 44, 55, 71, 59, 54, 52, 81, 70, 81, 54, 41, 68, 91, 49, 85, 61, 60, 55, 72, 49, 44, 88, 73, 60, 66, 50, 69, 69, 51, 86, 74, 46, 56, 44, 48, 54, 68, 54, 63, 83, 60, 80, 68, 49, 37, 97, 87, 73, 52, 45, 75, 58, 83, 67, 56, 71, 65, 64, 57, 53, 61, 75, 56, 66, 55, 72, 45, 64, 92, 64, 82, 71, 72, 74, 52, 64, 68, 69, 75, 65, 61, 64, 63, 64, 61, 60, 71, 67, 74, 55, 63, 69, 63, 47, 85, 60, 53, 42, 61, 81, 59, 44, 79, 61, 40, 51, 62, 59, 52, 73, 69, 51, 64, 53, 57, 51, 67, 69, 67, 47, 54, 87, 90, 58, 81, 66, 80, 46, 45, 67, 56, 61, 136, 64, 64, 92, 86, 72, 59, 64, 48, 57, 67, 60, 87, 79, 57, 62, 66, 81, 65, 82, 53, 82, 61, 47, 54, 63, 70, 72, 102, 55, 94, 60, 79, 72, 38, 44, 65, 64, 68, 64, 49, 72, 75, 82, 84, 68, 54, 55, 81, 52, 74, 67, 75, 46, 52, 80, 60, 55, 61, 88, 62, 82, 71, 58, 71, 76, 63, 89, 74, 45, 80, 55, 96, 68, 69, 78, 90, 62, 101, 82, 78, 53, 55, 60, 44, 81, 50, 59, 53, 66, 61, 105, 48, 58, 60, 76, 96, 78, 74, 59, 56, 85, 85, 51, 56, 63, 73, 93, 91, 50, 71, 52, 41, 68, 55, 72, 54, 60, 63, 65, 56, 70, 59, 52, 47, 81, 60, 87, 68, 76, 64, 88, 42, 53, 54, 65, 56, 69, 68, 62, 58, 87, 60, 62, 69, 68, 81, 53, 64, 67, 53, 41, 57, 54, 51, 98, 58, 56, 75, 71, 83, 51, 66, 84, 48, 95, 79, 73, 71, 67, 66, 67, 90, 64, 88, 51, 52, 64, 63, 67, 76, 93, 76, 51, 71, 71, 82, 46, 52, 58, 59, 64, 65, 70, 70, 66, 69, 52, 68, 56, 72, 73, 76, 59, 73, 60, 60, 46, 68, 74, 66, 62, 48, 70, 46, 46, 68, 82, 53, 90, 62, 56, 69, 77, 53, 57, 50, 54, 46, 72, 62, 76, 89, 107, 72, 57, 64, 48, 67, 46, 72, 79, 46, 66, 74, 59, 56, 57, 64, 71, 64, 75, 67, 54, 67, 58, 66, 68, 78, 63, 79, 61, 64, 80, 61, 47, 63, 75, 92, 61, 64, 54, 67, 76, 53, 63, 64, 69, 66, 54, 62, 76, 62, 68, 68, 58, 75, 59, 61, 85, 69, 88, 64, 72, 77, 62, 77, 90, 96, 90, 58, 46, 88, 64, 65, 64, 62, 80, 69, 48, 74, 60, 78, 65, 53, 59, 58, 67, 49, 62, 55, 84, 91, 58, 65, 106, 77, 64, 39, 51, 65, 83, 55, 89, 74, 93, 73, 76, 56, 70, 44, 74, 63, 76, 65, 67, 72, 58, 65, 83, 49, 56, 89, 66, 58, 83, 89, 84, 102, 60, 57, 63, 81, 72, 60, 71, 47, 77, 60, 74, 74, 55, 68, 68, 65, 76, 71, 46, 93, 99, 62, 67, 62, 75, 66, 66, 70, 75, 75, 63, 76, 69, 49, 66, 77, 72, 64, 76, 81, 78, 50, 83, 80, 71, 61, 70, 56, 57, 71, 60, 71, 58, 73, 84, 68, 72, 53, 82, 80, 68, 75, 62, 61, 59, 56, 63, 54, 77, 69, 107, 55, 63, 50, 56, 70, 77, 40, 69, 47, 66, 62, 56, 60, 112, 55, 59, 48, 73, 54, 64, 75, 51, 62, 66, 60, 63, 82, 49, 83, 90, 80, 65, 61, 48, 62, 64, 67, 63, 81, 91, 62, 76, 58, 70, 62, 64, 66, 73, 67, 35, 58, 66, 61, 67, 65, 79, 49, 56, 64, 64, 59, 48, 55, 83, 69, 67, 59, 61, 58, 109, 55, 80, 66, 71, 66, 52, 63, 66, 63, 61, 95, 79, 71, 64, 62, 62, 99, 67, 81, 66, 68, 56, 87, 74, 40, 57, 54, 80, 75, 40, 52, 69, 87, 44, 63, 58, 50, 57, 60, 89, 66, 55, 45, 60, 59, 82, 68, 65, 85, 56, 74, 69, 68, 53, 73, 83, 63, 98, 65, 68, 70, 82, 65, 70, 84, 63, 44, 50, 57, 80, 67, 71, 71, 76, 61, 69, 59, 73, 74, 56, 73, 49, 58, 72, 73, 74, 70, 52, 57, 96, 88, 49, 66, 60, 52, 64, 126, 72, 56, 87, 52, 102, 57, 100, 92, 61, 57, 54, 55, 56, 56, 77, 65, 88, 80, 72, 85, 66, 58, 73, 66, 66, 49, 68, 75, 77, 72, 78, 88, 68, 72, 79, 70, 63, 74, 61, 64, 73, 63, 66, 52, 54, 70, 51, 73, 68, 51, 80, 75, 53, 101, 69, 55, 64, 90, 49, 50, 81, 70, 45, 84, 72, 54, 114, 81, 66, 85, 84, 52, 66, 61, 63, 60, 73, 55, 55, 67, 56, 70, 69, 70, 51, 51, 58, 46, 49, 67, 61, 53, 56, 76, 65, 46, 72, 54, 67, 63, 45, 60, 67, 65, 67, 89, 50, 53, 49, 65, 63, 42, 65, 55, 81, 56, 72, 53, 59, 61, 59, 70, 72, 79, 85, 69, 44, 65, 58, 73, 67, 64, 53, 72, 78, 64, 53, 69, 50, 110, 61, 57, 59, 78, 72, 82, 46, 61, 65, 62, 58, 53, 48, 71, 70, 61, 99, 114, 75, 90, 50, 59, 68, 57, 63, 44, 116, 64, 66, 66, 42, 132, 62, 62, 59, 60, 64, 63, 100, 96, 86, 66, 76, 48, 58, 65, 58, 61, 48, 77, 90, 80, 54, 59, 51, 65, 57, 54, 106, 72, 65, 69, 50, 46, 52, 59, 89, 72, 57, 50, 64, 82, 84, 66, 73, 40, 56, 33, 70, 106, 49, 84, 64, 59, 66, 69, 64, 65, 71, 55, 65, 58, 68, 75, 41, 67, 66, 78, 55, 63, 77, 50, 65, 51, 61, 57, 51, 83, 65, 63, 45, 47, 80, 84, 63, 66, 45, 64, 69, 71, 52, 63, 60, 52, 40, 69, 52, 56, 61, 46, 64, 73, 56, 64, 55, 46, 48, 60, 61, 56, 91, 67, 61, 98, 42, 53, 85, 59, 56, 40, 57, 68, 61, 91, 74, 61, 54, 68, 59, 59, 68, 57, 61, 62, 79, 61, 62, 59, 80, 61, 69, 68, 69, 68, 47, 72, 52, 90, 57, 67, 56, 94, 63, 50, 76, 55, 58, 54, 72, 73, 67, 69, 89, 74, 58, 47, 71, 48, 81, 66, 110, 78, 48, 60, 73, 65, 74, 63, 89, 57, 71, 65, 64, 44, 71, 46, 87, 69, 96, 69, 58, 80, 68, 58, 60, 64, 63, 86, 67, 59, 68, 71, 88, 90, 63, 60, 93, 63, 63, 60, 67, 63, 59, 51, 41, 70, 60, 46, 84, 94, 76, 58, 61, 46, 73, 63, 55, 77, 80, 43, 54, 69, 57, 53, 45, 64, 65, 54, 59, 51, 66, 56, 59, 56, 76, 55, 79, 90, 70, 78, 53, 86, 60, 78, 78, 63, 43, 102, 63, 62, 75, 62, 70, 61, 66, 56, 68, 59, 55, 73, 60, 60, 73, 71, 106, 46, 81, 51, 68, 65, 50, 72, 79, 53, 69, 39, 66, 89, 57, 77, 49, 55, 137, 51, 65, 66, 56, 79, 53, 70, 41, 83, 65, 62, 62, 77, 64, 76, 61, 62, 49, 62, 79, 54, 71, 93, 84, 75, 110, 59, 62, 45, 61, 57, 82, 60, 60, 72, 59, 59, 65, 68, 87, 57, 51, 88, 107, 89, 60, 62, 52, 67, 52, 52, 63, 56, 64, 61, 71, 59, 70, 76, 101, 55, 68, 48, 57, 50, 86, 83, 65, 45, 69, 73, 72, 57, 75, 63, 53, 67, 55, 61, 78, 70, 62, 65, 72, 85, 60, 71, 64, 66, 66, 55, 71, 65, 63, 73, 73, 61, 72, 68, 88, 70, 68, 63, 59, 49, 73, 68, 51, 75, 63, 68, 68, 35, 41, 51, 64, 63, 41, 67, 73, 65, 58, 86, 74, 57, 80, 68, 69, 63, 73, 67, 65, 73, 66, 61, 86, 66, 71, 67, 51, 67, 56, 63, 74, 49, 46, 68, 64, 70, 84, 59, 59, 74, 66, 69, 72, 67, 60, 59, 80, 70, 72, 59, 42, 61, 52, 92, 56, 81, 66, 70, 55, 55, 80, 56, 67, 62, 66, 78, 79, 52, 61, 60, 86, 57, 57, 31, 47, 64, 75, 34, 49, 57, 68, 67, 77, 63, 92, 68, 45, 59, 66, 83, 54, 68, 82, 77, 57, 57, 90, 69, 66, 57, 101, 57, 53, 72, 93, 62, 52, 83, 57, 91, 62, 57, 71, 55, 69, 65, 59, 77, 60, 54, 59, 43, 83, 104, 65, 55, 44, 61, 72, 61, 85, 60, 46, 66, 69, 65, 58, 99, 72, 75, 57, 61, 74, 69, 55, 56, 63, 70, 110, 88, 57, 51, 54, 87, 56, 62, 70, 87, 77, 78, 43, 67, 61, 54, 80, 64, 70, 59, 73, 55, 57, 47, 70, 61, 52, 63, 71, 66, 83, 37, 55, 56, 74, 55, 81, 44, 75, 69, 97, 72, 51, 75, 52, 79, 60, 57, 73, 63, 62, 63, 118, 52, 65, 66, 69, 74, 59, 115, 105, 80, 55, 67, 51, 54, 66, 55, 72, 50, 62, 65, 70, 64, 54, 82, 58, 56, 51, 65, 53, 56, 115, 53, 64, 66, 64, 84, 73, 57, 64, 55, 63, 57, 58, 75, 65, 71, 66, 64, 79, 75, 89, 65, 89, 53, 67, 67, 79, 57, 52, 50, 66, 77, 72, 45, 48, 52, 97, 59, 81, 57, 108, 58, 63, 80, 108, 50, 44, 70, 88, 75, 81, 75, 68, 54, 70, 74, 64, 69, 60, 52, 47, 46, 42, 69, 87, 35, 57, 57, 47, 61, 46, 74, 65, 56, 82, 63, 60, 85, 59, 81, 92, 59, 61, 38, 59, 53, 67, 73, 64, 43, 48, 65, 53, 48, 87, 75, 62, 76, 57, 74, 57, 94, 79, 64, 83, 60, 84, 68, 53, 52, 61, 60, 74, 55, 57, 54, 100, 51, 73, 54, 136, 18, 67, 57, 49, 65, 58, 52, 77, 47, 63, 45, 79, 67, 49, 67, 60, 89, 54, 61, 84, 90, 54, 87, 68, 60, 70, 54, 105, 95, 59, 68, 63, 65, 72, 67, 67, 38, 86, 94, 67, 52, 63, 76, 64, 52, 68, 74, 61, 75, 56, 53, 50, 93, 84, 67, 72, 72, 136, 60, 62, 53, 120, 76, 76, 72, 68, 60, 68, 63, 65, 62, 72, 97, 54, 65, 63, 76, 74, 66, 63, 61, 75, 75, 81, 65, 71, 54, 64, 76, 50, 67, 72, 70, 83, 47, 59, 111, 82, 53, 96, 57, 70, 64, 85, 74, 69, 83, 73, 49, 37, 48, 64, 61, 79, 68, 46, 48, 57, 71, 56, 65, 67, 78, 63, 62, 117, 60, 85, 74, 73, 79, 57, 84, 63, 61, 64, 61, 55, 87, 58, 65, 63, 59, 59, 54, 77, 66, 52, 94, 51, 78, 77, 56, 69, 71, 57, 50, 62, 72, 72, 83, 66, 65, 76, 69, 54, 46, 75, 64, 62, 57, 64, 63, 55, 68, 54, 70, 83, 70, 71, 78, 43, 68, 62, 69, 65, 50, 57, 77, 63, 51, 85, 56, 48, 59, 69, 81, 65, 56, 71, 58, 60, 96, 68, 63, 35, 68, 63, 46, 54, 75, 73, 59, 81, 48, 77, 70, 55, 49, 47, 60, 83, 52, 58, 52, 54, 71, 63, 55, 67, 84, 91, 65, 54, 67, 46, 83, 65, 48, 54, 55, 63, 44, 74, 71, 84, 59, 59, 59, 72, 61, 54, 53, 53, 60, 75, 107, 70, 70, 62, 66, 54, 61, 114, 65, 61, 55, 61, 136, 69, 60, 69, 81, 65, 63, 54, 78, 59, 74, 82, 57, 66, 77, 82, 62, 81, 74, 90, 76, 63, 50, 70, 53, 62, 65, 110, 60, 70, 72, 56, 57, 61, 61, 72, 83, 67, 58, 44, 70, 63, 65, 73, 70, 75, 74, 66, 67, 51, 93, 67, 56, 63, 81, 54, 71, 63, 56, 61, 77, 69, 82, 45, 76, 51, 96, 64, 76, 59, 74, 67, 85, 79, 61, 59, 76, 66, 78, 65, 69, 86, 77, 54, 56, 35, 48, 74, 62, 57, 53, 53, 57, 71, 46, 52, 67, 50, 65, 49, 73, 66, 81, 67, 55, 66, 74, 63, 57, 65, 42, 67, 62, 46, 45, 44, 64, 68, 78, 58, 80, 74, 90, 74, 64, 55, 80, 52, 53, 69, 76, 70, 89, 69, 50, 71, 66, 46, 60, 71, 60, 65, 78, 58, 52, 63, 52, 56, 52, 59, 80, 65, 70, 64, 69, 62, 65, 57, 68, 76, 66, 57, 73, 83, 61, 94, 53, 45, 50, 92, 65, 85, 69, 51, 65, 51, 76, 92, 66, 71, 56, 49, 65, 74, 54, 89, 67, 53, 75, 68, 61, 67, 66, 57, 61, 60, 66, 59, 62, 58, 54, 84, 81, 65, 66, 45, 48, 71, 82, 70, 68, 65, 57, 53, 65, 48, 69, 67, 51, 57, 62, 58, 55, 76, 67, 82, 65, 75, 57, 52, 56, 68, 62, 59, 56, 64, 68, 54, 59, 58, 61, 68, 64, 55, 67, 70, 85, 50, 68, 71, 69, 54, 48, 85, 72, 64, 95, 54, 67, 63, 66, 75, 68, 82, 54, 54, 64, 61, 69, 61, 61, 69, 67, 101, 62, 60, 71, 61, 50, 59, 48, 68, 65, 51, 74, 69, 97, 65, 74, 61, 64, 52, 86, 71, 65, 64, 46, 80, 83, 84, 78, 46, 79, 65, 89, 61, 74, 63, 47, 84, 75, 59, 71, 76, 87, 65, 70, 58, 62, 42, 61, 72, 83, 80, 56, 63, 68, 75, 52, 72, 66, 76, 57, 61, 96, 89, 77, 71, 68, 58, 36, 58, 58, 67, 51, 54, 77, 73, 66, 68, 56, 67, 80, 75, 65, 66, 49, 81, 70, 71, 74, 70, 79, 58, 91, 66, 47, 56, 67, 52, 75, 54, 64, 72, 66, 67, 66, 56, 69, 79, 58, 64, 59, 65, 61, 61, 75, 56, 58, 64, 62, 68, 66, 65, 58, 79, 63, 86, 72, 67, 62, 70, 72, 60, 62, 63, 51, 51, 69, 52, 76, 87, 70, 58, 76, 78, 63, 63, 78, 77, 49, 93, 84, 84, 57, 80, 72, 62, 70, 58, 81, 69, 82, 65, 62, 61, 71, 52, 71, 61, 53, 77, 58, 61, 65, 42, 69, 71, 47, 46, 57, 74, 62, 64, 49, 61, 66, 65, 82, 67, 86, 58, 73, 50, 65, 57, 47, 81, 63, 68, 64, 40, 80, 61, 60, 90, 62, 61, 64, 44, 48, 65, 73, 55, 54, 57, 80, 89, 87, 121, 42, 48, 66, 77, 54, 50, 64, 95, 61, 62, 77, 62, 42, 75, 80, 72, 74, 48, 66, 46, 66, 71, 52, 58, 59, 56, 70, 68, 60, 82, 53, 66, 59, 62, 74, 69, 49, 49, 37, 81, 71, 48, 67, 74, 62, 87, 80, 74, 70, 63, 81, 47, 69, 74, 74, 48, 50, 68, 57, 56, 49, 71, 62, 120, 51, 72, 66, 68, 82, 73, 48, 59, 52, 72, 58, 58, 52, 42, 63, 79, 70, 61, 58, 83, 59, 63, 72, 76, 51, 72, 69, 104, 59, 57, 49, 72, 52, 60, 53, 91, 79, 73, 63, 100, 60, 68, 62, 82, 51, 77, 73, 69, 37, 68, 57, 90, 54, 61, 85, 73, 77, 80, 104, 75, 57, 56, 55, 70, 47, 60, 59, 63, 54, 52, 65, 57, 52, 64, 47, 79, 52, 67, 55, 72, 78, 78, 53, 54, 73, 49, 47, 52, 83, 54, 95, 64, 70, 56, 57, 48, 93, 69, 65, 67, 80, 84, 52, 57, 52, 76, 63, 55, 63, 73, 62, 66, 47, 49, 49, 73, 59, 81, 86, 88, 64, 88, 62, 56, 79, 74, 65, 64, 61, 79, 62, 102, 56, 65, 71, 67, 67, 60, 65, 69, 53, 57, 70, 57, 50, 83, 41, 54, 65, 59, 64, 73, 77, 54, 64, 60, 78, 67, 73, 75, 85, 73, 61, 77, 62, 40, 68, 92, 49, 59, 50, 66, 61, 52, 62, 67, 66, 70, 72, 46, 70, 49, 66, 69, 57, 49, 64, 54, 70, 58, 62, 67, 60, 65, 77, 52, 66, 75, 65, 75, 49, 135, 54, 52, 66, 52, 46, 59, 61, 76, 63, 65, 51, 73, 61, 74, 90, 58, 108, 57, 58, 81, 63, 67, 74, 55, 70, 85, 55, 94, 81, 51, 73, 46, 53, 74, 58, 73, 67, 57, 74, 58, 59, 65, 77, 74, 58, 67, 59, 70, 54, 58, 75, 63, 66, 101, 51, 55, 63, 72, 74, 76, 71, 119, 51, 54, 53, 46, 79, 61, 66, 70, 84, 70, 57, 56, 66, 58, 71, 65, 64, 57, 69, 64, 65, 56, 94, 77, 56, 60, 57, 85, 64, 67, 76, 75, 65, 58, 95, 72, 70, 65, 62, 59, 58, 76, 83, 58, 58, 63, 71, 57, 97, 70, 47, 67, 66, 58, 61, 58, 65, 73, 49, 55, 62, 64, 50, 80, 70, 72, 74, 66, 75, 62, 82, 55, 74, 50, 67, 72, 59, 70, 63, 54, 68, 64, 62, 84, 58, 63, 90, 73, 82, 78, 51, 65, 57, 63, 53, 72, 68, 64, 108, 56, 64, 74, 60, 70, 81, 87, 58, 68, 56, 61, 75, 47, 60, 78, 80, 94, 67, 86, 68, 56, 52, 75, 77, 71, 65, 59, 93, 59, 91, 65, 42, 92, 68, 73, 90, 50, 54, 61, 54, 52, 48, 60, 59, 63, 63, 67, 73, 64, 72, 77, 60, 65, 77, 71, 72, 67, 65, 56, 50, 60, 67, 70, 57, 72, 45, 71, 50, 50, 54, 73, 64, 59, 63, 62, 68, 57, 81, 112, 70, 64, 69, 62, 54, 59, 57, 63, 64, 51, 82, 65, 55, 73, 84, 66, 99, 72, 69, 75, 66, 59, 71, 88, 68, 50, 54, 54, 137, 121, 56, 66, 66, 65, 60, 59, 71, 50, 57, 74, 56, 55, 62, 58, 58, 94, 70, 55, 59, 53, 62, 78, 63, 68, 71, 83, 56, 58, 73, 75, 61, 46, 52, 59, 68, 64, 63, 61, 44, 57, 59, 62, 49, 70, 66, 47, 54, 52, 65, 61, 53, 49, 63, 50, 62, 65, 58, 70, 86, 56, 54, 59, 52, 73, 54, 59, 62, 53, 86, 63, 85, 71, 67, 55, 55, 58, 76, 52, 78, 71, 70, 66, 70, 75, 107, 74, 67, 65, 72, 63, 90, 57, 68, 68, 69, 55, 75, 68, 70, 79, 68, 61, 65, 63, 84, 74, 61, 59, 61, 78, 68, 51, 92, 67, 63, 63, 67, 60, 60, 59, 70, 58, 63, 50, 57, 68, 67, 59, 77, 72, 67, 81, 58, 86, 89, 49, 54, 71, 51, 63, 94, 54, 74, 66, 45, 64, 44, 56, 54, 55, 84, 57, 61, 78, 48, 79, 69, 60, 60, 71, 63, 64, 51, 67, 43, 55, 60, 55, 65, 77, 60, 73, 83, 72, 69, 83, 70, 57, 49, 56, 64, 67, 60, 50, 62, 54, 85, 60, 56, 59, 63, 58, 85, 63, 55, 86, 59, 52, 55, 68, 41, 101, 81, 66, 61, 53, 72, 67, 60, 70, 88, 76, 63, 65, 72, 69, 43, 62, 53, 55, 53, 44, 64, 66, 121, 57, 80, 58, 55, 71, 65, 75, 47, 68, 69, 66, 56, 64, 105, 81, 70, 66, 58, 53, 66, 96, 82, 80, 61, 71, 58, 64, 67, 63, 97, 51, 73, 55, 67, 59, 52, 79, 53, 89, 96, 76, 47, 56, 63, 90, 86, 99, 77, 60, 57, 71, 56, 61, 53, 64, 60, 103, 73, 66, 139, 73, 70, 80, 67, 65, 84, 61, 48, 66, 51, 54, 93, 68, 68, 68, 60, 53, 53, 62, 59, 71, 84, 57, 72, 57, 80, 67, 42, 54, 66, 78, 55, 54, 71, 75, 63, 59, 52, 58, 112, 65, 58, 67, 59, 86, 72, 64, 142, 84, 64, 59, 82, 68, 108, 53, 56, 67, 52, 73, 80, 73, 63, 76, 70, 69, 58, 72, 69, 79, 48, 73, 79, 67, 66, 60, 81, 58, 82, 57, 94, 100, 58, 72, 63, 45, 56, 48, 58, 49, 86, 59, 69, 63, 60, 71, 70, 65, 71, 50, 75, 69, 65, 65, 50, 65, 78, 58, 57, 53, 50, 54, 63, 72, 57, 70, 80, 61, 63, 64, 52, 52, 70, 62, 60, 72, 58, 52, 53, 75, 53, 67, 55, 54, 62, 66, 77, 52, 85, 47, 50, 53, 62, 80, 97, 57, 69, 76, 71, 89, 57, 63, 43, 68, 66, 61, 52, 75, 87, 71, 62, 57, 54, 63, 75, 67, 60, 69, 61, 51, 88, 54, 60, 63, 54, 58, 53, 61, 95, 71, 58, 76, 82, 51, 62, 60, 57, 61, 62, 81, 60, 65, 67, 58, 62, 49, 62, 65, 68, 60, 59, 82, 76, 100, 68, 71, 67, 72, 56, 53, 40, 66, 70, 56, 60, 77, 47, 70, 54, 88, 67, 51, 57, 70, 68, 62, 62, 59, 45, 65, 92, 55, 58, 56, 50, 65, 68, 59, 49, 76, 59, 65, 55, 42, 61, 70, 50, 79, 70, 70, 56, 54, 62, 56, 54, 70, 66, 91, 62, 62, 79, 63, 60, 54, 46, 68, 82, 44, 66, 82, 56, 81, 61, 62, 75, 66, 45, 71, 61, 59, 56, 60, 69, 57, 74, 61, 72, 62, 66, 53, 73, 63, 69, 67, 72, 78, 61, 54, 50, 66, 73, 55, 79, 51, 88, 57, 49, 70, 62, 48, 67, 83, 61, 71, 50, 55, 57, 69, 71, 83, 57, 77, 53, 57, 70, 70, 92, 87, 63, 62, 64, 71, 49, 69, 36, 50, 69, 56, 57, 55, 73, 54, 68, 66, 62, 68, 69, 70, 72, 92, 53, 71, 84, 75, 59, 61, 64, 65, 70, 83, 72, 47, 62, 56, 68, 59, 63, 74, 63, 69, 56, 59, 39, 94, 68, 74, 66, 56, 67, 65, 47, 66, 54, 66, 67, 57, 65, 58, 78, 45, 61, 61, 69, 75, 55, 83, 66, 64, 65, 98, 71, 54, 67, 54, 76, 54, 61, 51, 55, 65, 64, 62, 73, 78, 88, 56, 59, 66, 76, 52, 66, 59, 73, 53, 58, 55, 80, 63, 71, 60, 61, 51, 61, 78, 74, 73, 54, 55, 63, 81, 71, 76, 48, 99, 55, 77, 74, 63, 85, 54, 90, 82, 74, 62, 77, 66, 41, 80, 58, 59, 60, 65, 55, 49, 67, 73, 64, 63, 57, 118, 92, 49, 69, 53, 45, 64, 58, 79, 61, 70, 17, 72, 53, 63, 59, 65, 82, 58, 69, 66, 64, 51, 104, 68, 53, 65, 52, 71, 61, 47, 72, 79, 69, 59, 83, 75, 40, 85, 85, 49, 65, 69, 71, 54, 53, 56, 60, 69, 56, 50, 92, 79, 76, 64, 83, 61, 81, 81, 53, 72, 58, 104, 56, 67, 64, 47, 55, 78, 61, 58, 73, 51, 72, 65, 61, 78, 68, 64, 44, 50, 56, 65, 74, 63, 58, 77, 49, 55, 67, 91, 83, 72, 52, 50, 64, 61, 69, 77, 56, 58, 66, 71, 60, 81, 64, 70, 49, 65, 102, 59, 73, 56, 64, 80, 65, 70, 64, 62, 78, 72, 87, 85, 58, 60, 61, 94, 57, 89, 70, 64, 82, 66, 82, 64, 73, 57, 77, 69, 82, 51, 68, 74, 75, 66, 50, 89, 61, 55, 57, 64, 55, 74, 45, 66, 76, 60, 56, 88, 42, 72, 105, 74, 76, 62, 87, 54, 84, 97, 44, 63, 77, 76, 49, 69, 50, 59, 55, 61, 72, 63, 64, 62, 57, 61, 71, 61, 56, 67, 61, 55, 56, 61, 58, 68, 75, 62, 63, 69, 72, 77, 55, 47, 44, 43, 81, 65, 67, 75, 59, 64, 84, 85, 72, 87, 55, 56, 53, 67, 61, 62, 56, 109, 73, 64, 59, 77, 74, 65, 54, 54, 61, 52, 48, 55, 79, 47, 55, 57, 74, 90, 51, 78, 54, 48, 53, 60, 49, 70, 50, 61, 62, 50, 51, 67, 84, 67, 80, 45, 59, 74, 55, 72, 59, 138, 73, 48, 61, 61, 147, 123, 64, 64, 63, 74, 54, 63, 53, 55, 48, 75, 71, 70, 69, 59, 61, 68, 63, 65, 66, 65, 65, 58, 62, 69, 54, 75, 70, 65, 56, 68, 75, 43, 62, 66, 53, 67, 65, 53, 73, 66, 57, 55, 64, 55, 62, 56, 61, 98, 62, 55, 54, 48, 57, 72, 77, 56, 57, 71, 67, 50, 78, 77, 43, 58, 79, 69, 65, 66, 87, 49, 33, 61, 69, 55, 57, 55, 64, 64, 76, 67, 69, 56, 67, 92, 75, 47, 78, 66, 58, 59, 69, 54, 52, 56, 74, 77, 62, 68, 69, 59, 58, 44, 55, 67, 84, 84, 69, 113, 59, 72, 60, 69, 77, 63, 63, 89, 69, 83, 59, 60, 61, 63, 57, 92, 72, 55, 49, 69, 62, 76, 36, 80, 57, 88, 90, 58, 77, 67, 63, 80, 97, 41, 58, 50, 58, 52, 57, 61, 68, 48, 98, 57, 56, 69, 46, 57, 59, 70, 69, 63, 59, 46, 54, 65, 69, 71, 61, 103, 48, 61, 58, 95, 67, 66, 65, 76, 64, 67, 66, 66, 64, 55, 53, 43, 69, 73, 52, 53, 63, 65, 57, 68, 82, 54, 58, 84, 56, 86, 73, 68, 100, 90, 63, 88, 58, 65, 57, 65, 73, 57, 67, 68, 69, 66, 51, 70, 70, 66, 59, 46, 60, 44, 68, 43, 132, 50, 79, 51, 49, 55, 62, 64, 38, 59, 58, 82, 67, 66, 99, 66, 65, 60, 61, 63, 76, 88, 110, 84, 61, 67, 44, 66, 62, 74, 98, 86, 74, 64, 61, 52, 55, 52, 94, 73, 85, 52, 45, 52, 69, 67, 65, 85, 64, 64, 49, 65, 68, 63, 59, 59, 94, 66, 87, 93, 105, 64, 56, 53, 65, 73, 58, 62, 50, 58, 62, 60, 87, 59, 55, 59, 64, 61, 56, 54, 70, 44, 115, 73, 65, 52, 71, 68, 57, 56, 55, 100, 57, 60, 61, 77, 69, 44, 89, 63, 106, 51, 91, 60, 64, 82, 56, 55, 114, 54, 45, 61, 91, 40, 86, 67, 66, 70, 66, 65, 64, 65, 67, 86, 88, 64, 43, 55, 47, 68, 54, 108, 65, 58, 67, 44, 92, 66, 78, 73, 104, 99, 62, 69, 43, 74, 66, 53, 52, 50, 85, 72, 60, 65, 72, 65, 54, 79, 67, 53, 62, 56, 58, 67, 84, 56, 69, 46, 68, 60, 81, 62, 65, 79, 64, 53, 67, 63, 63, 66, 60, 51, 50, 70, 64, 72, 59, 84, 80, 57, 62, 75, 59, 66, 71, 71, 76, 70, 78, 78, 50, 59, 73, 65, 93, 64, 49, 58, 67, 74, 42, 58, 63, 61, 61, 57, 52, 72, 49, 63, 62, 49, 65, 52, 68, 71, 60, 81, 56, 63, 74, 63, 93, 55, 68, 64, 65, 62, 80, 69, 57, 54, 54, 67, 75, 64, 50, 68, 65, 70, 72, 55, 81, 65, 58, 67, 66, 54, 60, 62, 55, 98, 63, 93, 49, 56, 70, 53, 96, 65, 75, 73, 57, 57, 55, 67, 49, 63, 66, 66, 79, 51, 55, 82, 72, 65, 64, 48, 69, 54, 73, 71, 68, 69, 64, 54, 76, 61, 48, 57, 59, 66, 70, 64, 49, 46, 88, 91, 58, 65, 61, 56, 90, 57, 44, 51, 68, 97, 60, 62, 57, 63, 65, 73, 72, 53, 79, 67, 73, 90, 45, 72, 54, 66, 82, 65, 62, 83, 52, 80, 54, 67, 67, 59, 56, 60, 61, 56, 50, 75, 76, 68, 81, 76, 60, 69, 68, 63, 60, 67, 59, 59, 50, 58, 71, 59, 54, 63, 56, 73, 56, 59, 56, 62, 61, 53, 64, 63, 71, 40, 47, 78, 70, 56, 82, 74, 100, 73, 97, 58, 67, 56, 55, 68, 43, 77, 69, 59, 50, 73, 53, 49, 69, 69, 56, 80, 61, 43, 65, 84, 57, 60, 83, 80, 63, 59, 100, 65, 51, 108, 52, 57, 72, 56, 96, 56, 64, 102, 55, 69, 71, 50, 55, 73, 41, 79, 71, 53, 57, 56, 70, 49, 56, 70, 68, 65, 69, 55, 67, 73, 46, 66, 52, 61, 57, 102, 44, 59, 74, 90, 54, 69, 49, 71, 68, 63, 64, 61, 60, 69, 60, 65, 57, 90, 80, 44, 65, 57, 68, 63, 71, 83, 55, 79, 81, 67, 44, 62, 89, 78, 51, 66, 48, 78, 77, 104, 57, 53, 82, 66, 53, 99, 68, 67, 67, 80, 52, 58, 101, 52, 61, 70, 46, 53, 57, 58, 73, 62, 53, 48, 57, 50, 67, 73, 44, 64, 57, 54, 57, 99, 76, 93, 69, 72, 62, 56, 64, 59, 69, 80, 100, 51, 71, 61, 61, 67, 77, 74, 65, 52, 85, 66, 100, 63, 74, 67, 69, 60, 65, 53, 46, 61, 70, 54, 74, 82, 74, 70, 74, 70, 66, 75, 86, 70, 54, 60, 86, 73, 64, 67, 80, 59, 71, 65, 68, 69, 84, 89, 47, 77, 63, 61, 62, 52, 67, 52, 38, 82, 67, 68, 87, 58, 44, 54, 69, 55, 60, 81, 62, 68, 64, 39, 68, 86, 83, 73, 65, 60, 65, 60, 37, 67, 79, 71, 71, 60, 118, 82, 94, 49, 65, 54, 70, 79, 57, 68, 60, 55, 61, 66, 79, 68, 95, 61, 75, 75, 56, 47, 73, 62, 52, 59, 59, 69, 82, 61, 61, 61, 63, 65, 65, 67, 74, 81, 70, 74, 75, 61, 59, 57, 64, 76, 46, 66, 62, 53, 71, 64, 77, 64, 68, 72, 102, 55, 63, 70, 43, 88, 47, 64, 52, 103, 53, 56, 70, 66, 54, 81, 80, 50, 66, 76, 64, 58, 61, 58, 62, 58, 69, 60, 52, 70, 74, 72, 54, 61, 69, 69, 68, 60, 56, 67, 76, 60, 53, 74, 59, 59, 70, 46, 60, 61, 62, 89, 70, 68, 63, 67, 100, 76, 75, 70, 54, 60, 82, 79, 58, 75, 54, 86, 64, 73, 59, 68, 44, 59, 70, 70, 57, 68, 75, 76, 78, 75, 117, 49, 69, 65, 74, 55, 76, 66, 72, 60, 62, 81, 65, 53, 56, 69, 71, 77, 70, 77, 51, 54, 72, 48, 74, 65, 56, 58, 76, 84, 70, 67, 68, 58, 57, 48, 53, 55, 71, 50, 76, 50, 52, 56, 48, 65, 90, 60, 51, 50, 81, 65, 77, 62, 76, 59, 52, 63, 83, 55, 62, 54, 71, 82, 67, 84, 62, 65, 59, 70, 53, 78, 54, 71, 84, 48, 81, 73, 52, 44, 52, 38, 53, 62, 60, 65, 68, 59, 57, 55, 61, 55, 75, 58, 58, 53, 46, 69, 63, 63, 52, 52, 135, 67, 74, 66, 128, 78, 64, 59, 89, 58, 72, 71, 56, 81, 93, 63, 70, 68, 37, 75, 81, 61, 67, 58, 48, 146, 53, 63, 73, 51, 52, 43, 75, 84, 59, 54, 85, 64, 47, 61, 62, 76, 63, 70, 55, 72, 57, 81, 68, 63, 48, 45, 76, 59, 52, 55, 92, 68, 58, 68, 72, 59, 85, 59, 99, 89, 41, 60, 53, 85, 59, 49, 54, 53, 76, 67, 62, 70, 166, 43, 63, 59, 52, 55, 65, 113, 61, 60, 60, 57, 59, 41, 59, 65, 69, 79, 41, 86, 59, 78, 76, 86, 46, 78, 70, 62, 48, 47, 72, 67, 59, 83, 57, 67, 60, 72, 56, 90, 52, 67, 52, 49, 97, 42, 61, 62, 65, 64, 69, 66, 88, 114, 57, 65, 56, 80, 55, 56, 61, 64, 58, 53, 64, 56, 61, 80, 56, 63, 65, 62, 64, 59, 114, 64, 48, 62, 81, 49, 62, 60, 76, 72, 64, 71, 56, 72, 60, 91, 57, 76, 68, 72, 63, 66, 75, 64, 74, 54, 51, 72, 65, 82, 90, 82, 69, 80, 51, 62, 62, 65, 58, 57, 71, 50, 85, 60, 55, 68, 57, 70, 60, 75, 61, 57, 70, 53, 61, 75, 46, 61, 65, 68, 63, 62, 60, 42, 74, 56, 58, 61, 77, 53, 89, 48, 65, 59, 69, 74, 85, 57, 88, 66, 77, 83, 60, 63, 59, 68, 114, 64, 61, 77, 58, 72, 57, 71, 37, 55, 81, 55, 65, 41, 62, 53, 88, 71, 59, 52, 56, 62, 71, 64, 73, 54, 67, 60, 62, 57, 62, 69, 54, 62, 66, 46, 78, 62, 59, 58, 59, 70, 92, 55, 46, 80, 49, 79, 68, 56, 56, 58, 95, 60, 51, 65, 100, 80, 80, 48, 56, 63, 69, 64, 61, 59, 66, 56, 68, 52, 65, 63, 53, 59, 70, 63, 76, 76, 81, 50, 56, 68, 51, 75, 62, 70, 97, 99, 47, 65, 87, 28, 55, 74, 76, 57, 85, 85, 55, 83, 46, 64, 69, 68, 52, 63, 80, 68, 76, 84, 63, 51, 72, 82, 49, 56, 57, 55, 69, 78, 51, 54, 49, 77, 58, 55, 70, 49, 51, 75, 74, 55, 60, 48, 81, 51, 76, 99, 54, 56, 63, 54, 60, 68, 57, 58, 84, 69, 53, 77, 67, 60, 84, 90, 119, 59, 56, 48, 66, 62, 62, 69, 67, 69, 55, 54, 76, 65, 98, 78, 66, 70, 75, 69, 54, 52, 70, 77, 94, 66, 54, 71, 78, 58, 70, 52, 59, 74, 67, 67, 50, 82, 54, 59, 61, 58, 65, 60, 69, 78, 71, 65, 56, 69, 75, 71, 62, 69, 73, 65, 59, 65, 60, 81, 80, 51, 42, 61, 47, 64, 80, 79, 65, 68, 50, 61, 64, 59, 74, 76, 54, 59, 110, 56, 102, 80, 81, 93, 60, 103, 87, 66, 68, 65, 56, 68, 79, 55, 68, 51, 63, 56, 54, 66, 69, 55, 40, 53, 65, 64, 60, 71, 65, 73, 67, 77, 113, 58, 69, 57, 56, 65, 57, 62, 59, 53, 56, 58, 55, 59, 79, 56, 62, 77, 65, 51, 51, 84, 81, 64, 75, 87, 73, 76, 58, 73, 77, 66, 57, 69, 87, 60, 54, 59, 67, 50, 65, 71, 86, 58, 81, 56, 68, 92, 88, 52, 57, 52, 59, 80, 71, 66, 63, 64, 75, 71, 47, 62, 55, 67, 56, 70, 77, 67, 62, 71, 62, 77, 71, 66, 64, 67, 75, 57, 98, 47, 45, 60, 46, 61, 58, 66, 65, 57, 72, 61, 60, 46, 59, 39, 65, 50, 86, 69, 54, 31, 50, 71, 60, 59, 67, 66, 98, 61, 62, 65, 93, 90, 74, 99, 55, 66, 70, 88, 70, 56, 84, 45, 62, 57, 67, 92, 61, 84, 71, 76, 66, 57, 67, 57, 77, 72, 58, 93, 68, 49, 66, 144, 73, 62, 65, 53, 55, 53, 38, 70, 98, 68, 74, 65, 67, 68, 55, 71, 57, 71, 87, 78, 59, 51, 62, 65, 75, 103, 64, 58, 62, 42, 82, 53, 71, 54, 79, 66, 61, 54, 62, 74, 63, 78, 57, 63, 65, 78, 54, 73, 77, 66, 51, 65, 63, 74, 66, 58, 78, 44, 74, 64, 69, 65, 62, 68, 44, 55, 79, 51, 72, 43, 46, 56, 35, 79, 52, 69, 101, 50, 88, 63, 80, 52, 79, 68, 68, 53, 57, 74, 90, 61, 77, 71, 31, 48, 83, 68, 77, 78, 60, 62, 68, 69, 56, 67, 50, 82, 50, 59, 70, 55, 70, 66, 43, 68, 87, 54, 61, 56, 54, 70, 75, 65, 80, 49, 86, 71, 69, 48, 52, 62, 65, 76, 58, 59, 59, 65, 59, 44, 90, 86, 101, 62, 50, 64, 62, 76, 71, 63, 55, 63, 66, 71, 61, 56, 100, 66, 77, 62, 79, 57, 70, 70, 56, 69, 70, 62, 71, 62, 78, 59, 55, 57, 57, 67, 64, 72, 73, 73, 56, 54, 57, 64, 69, 69, 60, 68, 47, 55, 81, 51, 49, 72, 55, 69, 54, 63, 73, 52, 47, 59, 70, 46, 47, 88, 64, 59, 41, 63, 83, 50, 60, 54, 74, 62, 71, 63, 76, 56, 60, 87, 72, 57, 51, 77, 73, 58, 69, 60, 72, 61, 69, 70, 64, 62, 54, 56, 53, 49, 77, 56, 43, 46, 48, 64, 60, 80, 54, 53, 58, 52, 60, 77, 74, 59, 64, 50, 94, 83, 61, 57, 68, 66, 71, 65, 76, 58, 81, 50, 69, 67, 57, 67, 52, 72, 78, 87, 91, 90, 49, 69, 78, 67, 54, 60, 64, 65, 63, 86, 72, 73, 60, 75, 62, 55, 52, 93, 54, 69, 73, 34, 56, 68, 62, 68, 62, 88, 59, 80, 81, 71, 59, 74, 77, 63, 51, 64, 48, 66, 61, 66, 72, 57, 93, 71, 65, 66, 70, 69, 69, 64, 55, 59, 36, 54, 50, 64, 61, 56, 33, 74, 56, 65, 61, 83, 65, 73, 34, 58, 64, 62, 54, 72, 62, 61, 58, 74, 64, 60, 60, 58, 89, 91, 90, 59, 90, 74, 72, 57, 64, 50, 56, 82, 68, 56, 66, 33, 63, 57, 104, 64, 57, 53, 164, 55, 75, 69, 52, 74, 58, 56, 63, 63, 65, 63, 88, 84, 55, 58, 82, 49, 60, 64, 74, 126, 53, 58, 76, 58, 53, 73, 44, 67, 73, 52, 56, 68, 72, 70, 57, 76, 66, 49, 66, 74, 68, 53, 68, 51, 55, 55, 75, 59, 62, 72, 91, 39, 62, 67, 62, 68, 91, 49, 65, 88, 54, 55, 80, 89, 78, 77, 55, 64, 51, 92, 67, 58, 167, 69, 57, 62, 56, 63, 49, 127, 54, 52, 61, 75, 74, 61, 61, 54, 56, 57, 60, 70, 71, 60, 80, 61, 41, 68, 82, 60, 41, 72, 72, 69, 57, 61, 64, 74, 71, 55, 76, 58, 62, 55, 90, 74, 87, 86, 67, 55, 45, 69, 65, 69, 110, 115, 60, 53, 71, 73, 68, 51, 61, 80, 54, 70, 59, 54, 56, 75, 60, 60, 64, 47, 49, 63, 131, 63, 69, 62, 86, 66, 84, 92, 69, 110, 58, 74, 46, 54, 66, 61, 70, 69, 66, 63, 58, 61, 56, 58, 61, 67, 61, 58, 68, 77, 61, 37, 68, 57, 49, 72, 67, 57, 60, 60, 67, 58, 57, 53, 56, 46, 58, 100, 79, 78, 46, 53, 59, 68, 79, 79, 66, 55, 53, 68, 67, 72, 65, 73, 65, 40, 55, 62, 57, 65, 64, 63, 55, 87, 74, 64, 97, 53, 64, 54, 83, 75, 55, 44, 90, 58, 99, 60, 64, 80, 66, 62, 62, 65, 70, 57, 79, 54, 97, 52, 53, 59, 54, 61, 87, 59, 70, 57, 52, 41, 60, 51, 96, 69, 66, 95, 64, 63, 68, 56, 62, 50, 68, 56, 52, 72, 53, 43, 83, 74, 59, 48, 70, 83, 60, 52, 76, 92, 105, 71, 60, 75, 106, 69, 91, 66, 58, 102, 56, 64, 57, 53, 65, 70, 63, 58, 48, 64, 63, 46, 74, 43, 50, 39, 64, 72, 83, 56, 54, 62, 81, 90, 57, 82, 45, 83, 106, 53, 45, 69, 81, 52, 59, 49, 60, 49, 67, 63, 77, 65, 53, 56, 70, 66, 67, 79, 64, 71, 50, 61, 58, 63, 58, 60, 35, 71, 62, 56, 53, 82, 52, 57, 67, 82, 74, 92, 64, 65, 84, 51, 67, 57, 84, 73, 57, 61, 63, 56, 58, 70, 76, 60, 91, 68, 64, 63, 49, 53, 82, 96, 103, 77, 63, 53, 85, 57, 80, 52, 86, 67, 73, 60, 57, 81, 52, 55, 61, 59, 62, 45, 73, 52, 60, 59, 77, 55, 43, 58, 61, 40, 60, 50, 47, 61, 70, 69, 84, 63, 58, 60, 66, 52, 67, 62, 73, 78, 74, 68, 47, 74, 72, 60, 56, 57, 76, 55, 61, 53, 64, 73, 88, 53, 63, 78, 67, 75, 57, 64, 60, 52, 55, 48, 60, 62, 81, 75, 51, 65, 73, 76, 76, 84, 67, 82, 78, 110, 85, 69, 63, 52, 54, 46, 50, 60, 72, 51, 56, 80, 67, 70, 47, 45, 55, 57, 78, 53, 58, 84, 63, 70, 88, 58, 114, 62, 91, 47, 61, 59, 47, 55, 54, 50, 73, 74, 55, 61, 88, 52, 56, 61, 66, 66, 94, 62, 66, 69, 85, 73, 65, 59, 57, 72, 44, 63, 63, 49, 57, 56, 58, 67, 89, 69, 74, 88, 68, 58, 60, 51, 58, 51, 57, 46, 58, 63, 64, 60, 50, 66, 48, 73, 63, 71, 71, 54, 63, 65, 50, 55, 82, 84, 40, 52, 58, 51, 48, 43, 73, 63, 61, 65, 102, 58, 70, 59, 87, 59, 67, 42, 78, 56, 60, 59, 64, 54, 57, 69, 51, 59, 84, 60, 54, 56, 59, 55, 64, 62, 77, 49, 86, 79, 48, 74, 90, 79, 63, 79, 70, 76, 59, 56, 69, 54, 58, 65, 61, 62, 70, 81, 58, 100, 76, 52, 79, 61, 65, 68, 62, 87, 64, 75, 75, 79, 74, 126, 46, 47, 69, 56, 81, 67, 52, 79, 72, 93, 75, 56, 55, 63, 65, 70, 67, 61, 79, 55, 49, 79, 75, 68, 109, 107, 61, 58, 65, 52, 47, 59, 56, 60, 91, 69, 64, 58, 70, 71, 49, 49, 66, 83, 57, 68, 60, 49, 56, 53, 55, 49, 44, 70, 86, 69, 62, 64, 58, 80, 57, 72, 87, 41, 56, 55, 45, 33, 69, 52, 77, 65, 70, 73, 54, 78, 92, 60, 95, 59, 83, 58, 67, 59, 68, 70, 54, 80, 70, 63, 86, 64, 47, 57, 80, 67, 59, 47, 79, 71, 71, 95, 55, 55, 90, 65, 58, 71, 77, 58, 63, 61, 69, 61, 54, 59, 57, 55, 82, 54, 62, 70, 67, 55, 70, 62, 78, 74, 54, 58, 60, 66, 86, 55, 76, 45, 64, 64, 45, 85, 60, 59, 78, 73, 65, 64, 58, 57, 54, 60, 101, 59, 58, 72, 53, 48, 63, 64, 93, 74, 53, 60, 48, 63, 54, 59, 66, 97, 66, 66, 57, 53, 118, 62, 58, 59, 70, 60, 102, 57, 66, 58, 62, 60, 61, 71, 58, 104, 58, 56, 71, 114, 64, 84, 58, 62, 69, 63, 55, 56, 63, 58, 57, 51, 49, 64, 63, 58, 59, 46, 69, 56, 70, 63, 55, 78, 63, 68, 74, 65, 66, 80, 63, 62, 58, 63, 116, 54, 74, 49, 72, 72, 57, 57, 69, 67, 64, 66, 105, 70, 89, 64, 88, 76, 70, 66, 65, 57, 52, 53, 79, 68, 58, 62, 56, 92, 70, 73, 61, 90, 60, 69, 62, 87, 54, 67, 72, 66, 41, 54, 78, 64, 57, 71, 61, 58, 59, 57, 57, 70, 82, 83, 64, 70, 55, 70, 62, 70, 68, 68, 57, 51, 58, 65, 61, 70, 109, 62, 137, 83, 54, 82, 66, 74, 55, 101, 77, 64, 51, 92, 130, 66, 53, 66, 77, 78, 54, 55, 52, 77, 80, 57, 58, 55, 73, 84, 49, 76, 60, 56, 66, 58, 59, 61, 65, 86, 72, 88, 61, 81, 80, 76, 56, 50, 71, 70, 59, 63, 62, 52, 72, 64, 94, 60, 69, 67, 66, 71, 60, 60, 77, 66, 76, 56, 67, 63, 45, 63, 50, 50, 96, 71, 57, 57, 73, 63, 71, 56, 65, 59, 61, 81, 78, 63, 80, 58, 51, 65, 62, 60, 65, 60, 55, 47, 59, 50, 72, 56, 67, 60, 62, 62, 73, 71, 63, 57, 78, 59, 62, 62, 58, 72, 83, 55, 110, 61, 80, 83, 58, 50, 69, 61, 53, 58, 58, 55, 59, 57, 63, 62, 64, 64, 82, 72, 84, 56, 52, 63, 67, 53, 76, 76, 74, 63, 72, 64, 61, 56, 58, 65, 68, 67, 76, 71, 71, 48, 67, 51, 68, 88, 44, 79, 59, 51, 105, 69, 62, 61, 92, 59, 60, 56, 64, 74, 69, 43, 52, 59, 66, 81, 63, 56, 70, 55, 79, 69, 103, 62, 62, 54, 65, 59, 62, 64, 78, 51, 68, 46, 55, 85, 60, 76, 58, 106, 71, 46, 66, 75, 71, 63, 51, 57, 86, 55, 56, 54, 79, 63, 70, 81, 72, 75, 60, 71, 61, 76, 68, 68, 104, 63, 69, 56, 75, 75, 58, 84, 66, 61, 54, 68, 63, 41, 64, 65, 52, 64, 58, 77, 53, 56, 59, 78, 87, 51, 62, 54, 52, 61, 95, 62, 73, 75, 50, 57, 57, 67, 57, 89, 82, 67, 70, 70, 56, 60, 47, 54, 56, 91, 58, 65, 56, 63, 67, 99, 72, 55, 63, 60, 66, 64, 71, 67, 64, 81, 57, 57, 115, 50, 51, 60, 65, 59, 59, 60, 85, 74, 52, 70, 56, 65, 78, 53, 61, 57, 64, 58, 56, 56, 59, 59, 59, 80, 68, 50, 80, 54, 72, 86, 77, 53, 64, 65, 55, 90, 66, 60, 75, 70, 63, 47, 54, 52, 60, 83, 88, 120, 79, 58, 65, 65, 67, 60, 66, 69, 65, 57, 61, 60, 63, 53, 88, 55, 47, 60, 73, 54, 69, 84, 94, 63, 56, 64, 77, 67, 47, 59, 51, 66, 62, 60, 58, 63, 58, 62, 63, 66, 56, 50, 58, 67, 85, 64, 61, 68, 67, 74, 68, 76, 59, 67, 66, 53, 67, 61, 60, 74, 80, 69, 65, 64, 49, 65, 60, 74, 67, 61, 67, 68, 95, 73, 87, 77, 91, 64, 61, 58, 62, 55, 59, 58, 70, 81, 58, 67, 59, 68, 60, 62, 68, 49, 90, 49, 43, 56, 70, 53, 61, 62, 58, 67, 54, 62, 43, 89, 63, 63, 84, 65, 61, 57, 54, 73, 59, 64, 81, 64, 84, 81, 53, 60, 47, 57, 55, 49, 50, 57, 66, 77, 59, 44, 50, 61, 80, 61, 65, 45, 62, 57, 67, 67, 71, 72, 74, 60, 47, 58, 59, 78, 63, 94, 56, 67, 59, 49, 62, 58, 69, 70, 58, 73, 99, 66, 59, 50, 58, 104, 66, 92, 58, 52, 62, 64, 74, 58, 42, 72, 61, 67, 70, 51, 68, 69, 48, 56, 69, 72, 63, 46, 63, 67, 87, 56, 69, 52, 61, 67, 55, 60, 56, 68, 69, 55, 65, 59, 61, 43, 50, 54, 62, 59, 61, 58, 108, 84, 60, 60, 55, 52, 63, 55, 52, 62, 55, 60, 78, 59, 57, 55, 110, 69, 72, 51, 54, 55, 69, 71, 75, 69, 60, 63, 60, 73, 76, 50, 65, 55, 97, 55, 85, 61, 65, 73, 60, 56, 55, 74, 56, 91, 50, 62, 47, 69, 58, 62, 98, 57, 58, 80, 64, 82, 77, 58, 65, 78, 68, 70, 52, 68, 62, 56, 75, 58, 67, 60, 62, 67, 60, 61, 69, 54, 49, 93, 61, 53, 60, 68, 65, 58, 72, 81, 53, 75, 62, 71, 64, 50, 78, 65, 52, 61, 75, 65, 72, 73, 62, 84, 65, 61, 47, 76, 89, 72, 63, 65, 50, 76, 62, 67, 65, 102, 65, 70, 63, 62, 79, 84, 62, 62, 61, 57, 61, 64, 82, 66, 65, 110, 75, 79, 52, 61, 79, 73, 48, 72, 59, 67, 68, 64, 64, 135, 61, 58, 59, 57, 53, 75, 63, 76, 65, 59, 67, 59, 71, 60, 80, 54, 75, 61, 66, 48, 69, 56, 103, 48, 58, 60, 54, 106, 77, 83, 67, 75, 74, 66, 126, 46, 68, 61, 67, 70, 61, 65, 62, 95, 68, 67, 65, 70, 63, 75, 65, 64, 53, 84, 57, 93, 42, 56, 54, 78, 60, 75, 66, 61, 88, 63, 68, 87, 65, 58, 70, 55, 80, 70, 60, 58, 61, 56, 44, 60, 60, 64, 46, 67, 59, 58, 48, 57, 71, 52, 77, 60, 66, 62, 50, 56, 56, 56, 65, 57, 56, 58, 53, 84, 78, 69, 85, 67, 68, 69, 59, 87, 68, 81, 67, 43, 60, 51, 69, 72, 86, 71, 62, 66, 60, 67, 64, 63, 73, 55, 52, 71, 56, 62, 73, 64, 59, 82, 61, 56, 59, 68, 62, 90, 54, 85, 72, 64, 65, 53, 49, 65, 50, 99, 63, 74, 79, 57, 65, 61, 73, 63, 77, 60, 84, 77, 64, 73, 82, 49, 64, 71, 94, 59, 69, 47, 59, 56, 52, 65, 74, 95, 49, 70, 51, 78, 98, 61, 53, 69, 56, 54, 66, 64, 60, 58, 62, 85, 68, 61, 58, 74, 59, 61, 66, 99, 59, 57, 60, 51, 58, 67, 80, 67, 80, 53, 64, 67, 56, 52, 63, 77, 57, 70, 56, 62, 53, 52, 59, 52, 62, 69, 72, 57, 73, 68, 74, 59, 60, 62, 59, 65, 71, 56, 74, 52, 60, 69, 68, 67, 63, 88, 52, 85, 63, 79, 52, 85, 72, 54, 56, 53, 69, 61, 65, 83, 69, 61, 53, 91, 44, 61, 61, 56, 60, 86, 72, 63, 63, 79, 69, 68, 70, 68, 78, 58, 58, 56, 58, 56, 50, 66, 66, 62, 72, 75, 49, 84, 63, 66, 69, 50, 72, 57, 55, 61, 62, 58, 61, 71, 80, 99, 122, 55, 70, 84, 65, 64, 56, 116, 56, 59, 64, 69, 121, 77, 85, 57, 52, 80, 55, 87, 56, 71, 46, 58, 73, 61, 58, 66, 53, 55, 64, 43, 82, 75, 54, 73, 56, 68, 66, 54, 49, 56, 57, 63, 65, 54, 62, 61, 58, 63, 57, 85, 61, 52, 82, 58, 87, 59, 55, 61, 69, 69, 70, 52, 63, 56, 56, 59, 64, 61, 61, 62, 61, 53, 63, 68, 86, 60, 74, 61, 63, 60, 65, 55, 65, 63, 59, 54, 71, 72, 77, 72, 51, 61, 66, 67, 51, 64, 57, 70, 65, 73, 71, 63, 62, 54, 80, 66, 78, 61, 53, 84, 86, 71, 77, 76, 55, 54, 63, 63, 54, 59, 68, 58, 56, 76, 73, 62, 62, 69, 60, 55, 61, 56, 47, 69, 84, 76, 61, 78, 69, 55, 57, 57, 68, 65, 79, 70, 48, 76, 54, 66, 59, 58, 80, 61, 78, 56, 120, 51, 84, 64, 49, 57, 63, 54, 64, 65, 60, 57, 67, 49, 65, 47, 53, 85, 58, 51, 49, 58, 69, 65, 66, 56, 61, 68, 60, 67, 54, 44, 54, 79, 61, 63, 58, 56, 71, 53, 59, 55, 52, 55, 56, 64, 79, 114, 67, 31, 57, 66, 71, 75, 55, 63, 108, 67, 74, 74, 66, 66, 42, 58, 56, 64, 59, 89, 65, 61, 73, 68, 65, 60, 71, 52, 79, 55, 62, 68, 87, 61, 59, 66, 66, 67, 71, 52, 57, 62, 56, 103, 70, 75, 67, 80, 96, 53, 55, 56, 69, 69, 64, 49, 62, 60, 63, 58, 59, 77, 56, 54, 105, 54, 64, 73, 72, 68, 99, 65, 59, 74, 63, 59, 57, 61, 82, 87, 82, 53, 83, 78, 61, 62, 55, 63, 63, 102, 71, 61, 104, 53, 59, 62, 62, 58, 62, 68, 63, 59, 70, 65, 57, 67, 57, 62, 64, 57, 58, 63, 58, 73, 82, 59, 56, 61, 66, 62, 64, 69, 55, 66, 87, 50, 70, 66, 57, 77, 70, 54, 69, 63, 52, 53, 60, 58, 57, 61, 70, 101, 68, 67, 64, 72, 58, 67, 67, 37, 60, 50, 79, 61, 47, 65, 78, 51, 61, 62, 62, 55, 55, 73, 64, 66, 62, 60, 69, 55, 76, 55, 128, 61, 55, 50, 66, 69, 56, 74, 61, 57, 73, 64, 64, 56, 81, 59, 74, 84, 76, 73, 90, 52, 64, 67, 77, 64, 46, 71, 68, 58, 79, 49, 48, 55, 53, 59, 49, 57, 73, 74, 63, 62, 86, 61, 62, 52, 76, 66, 56, 72, 69, 60, 61, 59, 56, 62, 65, 79, 58, 79, 61, 57, 57, 58, 83, 71, 61, 71, 55, 65, 56, 51, 56, 85, 67, 74, 66, 67, 74, 59, 77, 85, 61, 61, 62, 63, 63, 66, 49, 71, 67, 51, 79, 64, 55, 80, 63, 72, 56, 63, 63, 59, 71, 51, 40, 67, 62, 68, 53, 53, 57, 61, 65, 64, 64, 82, 66, 57, 82, 72, 62, 56, 55, 59, 65, 90, 60, 70, 60, 64, 65, 55, 68, 60, 86, 62, 60, 71, 48, 108, 59, 55, 53, 75, 70, 61, 53, 69, 46, 57, 79, 62, 62, 60, 66, 83, 63, 67, 79, 60, 68, 77, 56, 67, 74, 62, 61, 74, 58, 61, 83, 53, 76, 60, 99, 59, 66, 67, 68, 54, 69, 58, 54, 65, 70, 55, 70, 108, 63, 72, 85, 72, 59, 42, 66, 67, 57, 77, 66, 63, 55, 63, 88, 89, 61, 73, 62, 61, 68, 66, 87, 76, 51, 59, 54, 78, 65, 55, 61, 65, 75, 60, 96, 64, 53, 68, 68, 59, 53, 70, 66, 75, 67, 57, 57, 60, 62, 59, 78, 64, 64, 55, 72, 86, 69, 64, 58, 65, 75, 82, 55, 69, 63, 58, 84, 83, 89, 61, 61, 83, 58, 71, 53, 68, 95, 49, 72, 61, 60, 67, 64, 52, 67, 62, 60, 75, 78, 68, 82, 68, 60, 62, 51, 59, 93, 83, 77, 74, 64, 55, 63, 66, 63, 80, 76, 72, 62, 70, 53, 65, 64, 66, 66, 61, 57, 58, 78, 62, 77, 65, 55, 62, 64, 69, 57, 73, 85, 69, 60, 90, 70, 60, 65, 66, 61, 61, 70, 46, 63, 69, 65, 70, 50, 124, 62, 58, 53, 70, 57, 59, 66, 91, 65, 84, 76, 57, 65, 57, 65, 62, 56, 56, 71, 62, 82, 65, 67, 57, 85, 59, 74, 92, 55, 64, 62, 61, 73, 57, 124, 57, 67, 63, 76, 58, 63, 74, 60, 80, 66, 67, 74, 64, 68, 63, 66, 69, 66, 63, 66, 90, 50, 61, 71, 53, 55, 80, 56, 82, 61, 62, 81, 99, 67, 48, 59, 52, 75, 75, 50, 75, 61, 67, 70, 68, 62, 56, 52, 86, 66, 58, 66, 59, 64, 72, 60, 61, 81, 54, 45, 69, 62, 60, 60, 61, 74, 58, 67, 86, 60, 62, 121, 77, 45, 74, 66, 66, 64, 73, 47, 70, 61, 58, 90, 58, 55, 62, 60, 58, 66, 62, 77, 77, 67, 52, 64, 72, 77, 66, 53, 65, 58, 70, 54, 51, 63, 52, 56, 75, 61, 48, 67, 51, 63, 66, 79, 66, 49, 96, 71, 62, 76, 70, 49, 70, 66, 53, 60, 66, 49, 54, 50, 77, 70, 55, 78, 60, 53, 60, 64, 91, 75, 66, 69, 66, 69, 65, 57, 55, 60, 54, 63, 64, 57, 78, 67, 56, 61, 76, 56, 65, 53, 74, 62, 52, 68, 68, 71, 57, 53, 65, 78, 87, 58, 94, 74, 66, 67, 45, 76, 70, 65, 62, 72, 61, 64, 64, 60, 55, 61, 59, 69, 75, 52, 92, 59, 68, 59, 56, 61, 55, 60, 74, 73, 57, 62, 61, 65, 63, 53, 69, 62, 61, 67, 62, 53, 61, 72, 57, 50, 61, 100, 63, 62, 61, 77, 63, 63, 101, 58, 67, 63, 79, 61, 78, 75, 75, 62, 86, 71, 51, 61, 60, 55, 52, 66, 61, 69, 54, 60, 68, 53, 113, 49, 80, 51, 73, 48, 70, 73, 61, 66, 69, 82, 55, 57, 52, 50, 59, 80, 78, 65, 58, 82, 68, 60, 64, 74, 60, 48, 60, 47, 48, 58, 68, 56, 62, 55, 56, 55, 52, 72, 81, 56, 62, 53, 53, 60, 76, 57, 67, 58, 55, 73, 48, 69, 60, 94, 82, 79, 58, 65, 54, 38, 63, 46, 66, 60, 71, 98, 61, 51, 64, 91, 72, 55, 60, 48, 54, 79, 62, 44, 55, 56, 60, 64, 83, 78, 54, 69, 59, 52, 50, 73, 49, 61, 71, 54, 72, 84, 86, 72, 60, 54, 82, 76, 78, 95, 60, 71, 82, 36, 57, 98, 54, 60, 71, 66, 58, 59, 69, 88, 55, 73, 41, 63, 58, 84, 66, 50, 67, 70, 54, 59, 61, 61, 79, 82, 64, 77, 74, 53, 73, 54, 61, 60, 73, 61, 58, 60, 101, 48, 47, 51, 49, 91, 53, 49, 53, 78, 69, 72, 64, 60, 77, 68, 64, 67, 65, 53, 67, 63, 58, 45, 56, 73, 60, 62, 73, 92, 75, 71, 60, 60, 50, 59, 41, 53, 83, 86, 91, 57, 74, 79, 64, 60, 42, 60, 50, 75, 75, 73, 88, 76, 84, 71, 63, 54, 68, 70, 68, 74, 63, 59, 68, 74, 53, 97, 49, 49, 63, 63, 54, 54, 61, 80, 49, 57, 62, 76, 56, 65, 60, 73, 64, 71, 57, 76, 55, 63, 54, 61, 70, 69, 64, 58, 58, 71, 43, 63, 73, 70, 55, 63, 48, 58, 45, 61, 69, 60, 101, 62, 85, 70, 72, 61, 69, 54, 82, 81, 93, 77, 77, 49, 63, 158, 74, 67, 62, 69, 71, 79, 62, 43, 48, 60, 49, 64, 74, 66, 77, 53, 38, 80, 70, 52, 45, 61, 70, 83, 55, 59, 58, 83, 59, 100, 68, 65, 59, 52, 79, 47, 50, 67, 70, 88, 64, 87, 53, 70, 71, 84, 53, 64, 74, 76, 65, 38, 72, 57, 80, 59, 55, 61, 73, 60, 59, 46, 56, 52, 159, 70, 46, 71, 63, 63, 72, 68, 72, 47, 43, 59, 76, 79, 75, 70, 83, 126, 53, 68, 66, 67, 50, 64, 83, 52, 90, 79, 100, 50, 61, 48, 73, 39, 67, 89, 57, 62, 75, 62, 52, 72, 50, 57, 78, 53, 70, 55, 65, 71, 65, 73, 78, 47, 56, 52, 59, 57, 58, 48, 64, 54, 71, 61, 51, 75, 71, 71, 82, 78, 66, 76, 88, 76, 73, 63, 71, 90, 71, 58, 63, 74, 84, 74, 64, 55, 67, 78, 60, 62, 71, 67, 85, 75, 78, 74, 70, 84, 79, 77, 127, 62, 75, 69, 63, 52, 38, 65, 66, 87, 63, 60, 61, 96, 49, 58, 70, 42, 56, 73, 67, 66, 62, 59, 71, 68, 50, 58, 49, 79, 56, 73, 48, 60, 66, 68, 62, 84, 66, 55, 60, 75, 68, 82, 55, 90, 78, 63, 60, 51, 90, 63, 92, 57, 71, 60, 57, 98, 143, 62, 62, 63, 78, 64, 58, 42, 56, 69, 63, 45, 71, 64, 95, 72, 45, 72, 50, 56, 55, 70, 62, 60, 53, 67, 52, 71, 59, 84, 64, 63, 64, 65, 61, 60, 79, 58, 58, 72, 69, 60, 57, 62, 84, 68, 48, 70, 68, 60, 74, 40, 65, 67, 77, 65, 56, 58, 62, 80, 71, 67, 53, 105, 61, 48, 62, 60, 77, 61, 56, 44, 56, 61, 60, 150, 96, 81, 68, 94, 62, 64, 63, 64, 45, 50, 50, 76, 62, 61, 76, 63, 74, 62, 61, 71, 61, 70, 64, 87, 85, 69, 91, 53, 49, 73, 63, 119, 60, 51, 55, 47, 88, 50, 57, 51, 66, 59, 71, 82, 84, 52, 82, 61, 86, 55, 68, 71, 54, 64, 55, 57, 68, 76, 58, 58, 66, 92, 56, 54, 85, 73, 61, 86, 79, 55, 71, 45, 98, 93, 55, 72, 60, 54, 61, 64, 75, 56, 62, 75, 49, 61, 56, 66, 73, 72, 74, 76, 49, 67, 62, 62, 54, 68, 60, 59, 63, 71, 61, 53, 90, 63, 78, 80, 59, 52, 36, 80, 66, 66, 56, 48, 122, 69, 107, 79, 57, 84, 45, 81, 68, 56, 89, 60, 78, 74, 81, 71, 71, 69, 67, 83, 77, 56, 72, 64, 49, 53, 85, 80, 49, 59, 62, 67, 94, 84, 52, 55, 77, 63, 73, 79, 60, 56, 86, 66, 56, 70, 86, 71, 89, 53, 58, 86, 55, 52, 62, 73, 46, 68, 48, 74, 75, 67, 59, 70, 63, 71, 82, 73, 77, 60, 53, 65, 77, 68, 66, 72, 62, 76, 65, 69, 92, 61, 56, 49, 77, 110, 80, 52, 47, 50, 93, 67, 124, 60, 78, 65, 56, 56, 83, 66, 72, 80, 81, 74, 68, 52, 70, 62, 53, 51, 84, 74, 75, 43, 91, 57, 58, 60, 77, 71, 65, 70, 101, 72, 77, 60, 70, 63, 65, 77, 56, 81, 68, 53, 75, 53, 61, 68, 57, 66, 58, 61, 59, 53, 51, 91, 56, 67, 80, 47, 76, 67, 61, 65, 67, 61, 69, 78, 63, 77, 68, 77, 63, 69, 101, 71, 66, 57, 63, 67, 52, 62, 83, 46, 72, 50, 56, 64, 74, 53, 67, 44, 55, 64, 61, 54, 68, 57, 42, 73, 70, 56, 67, 67, 74, 108, 73, 47, 58, 76, 62, 55, 95, 63, 71, 74, 53, 60, 56, 93, 57, 43, 56, 50, 53, 76, 56, 81, 54, 60, 99, 54, 85, 62, 107, 49, 65, 68, 72, 58, 49, 61, 56, 72, 61, 62, 44, 52, 60, 60, 52, 35, 78, 67, 66, 56, 69, 57, 43, 64, 63, 54, 63, 98, 82, 69, 60, 62, 69, 75, 56, 72, 66, 65, 78, 62, 60, 93, 51, 65, 59, 71, 47, 60, 56, 94, 61, 71, 120, 84, 73, 51, 53, 44, 89, 48, 71, 63, 52, 65, 68, 87, 63, 63, 52, 46, 79, 73, 85, 54, 83, 50, 64, 79, 42, 84, 77, 54, 56, 65, 43, 52, 44, 76, 55, 89, 64, 62, 85, 54, 91, 44, 92, 59, 61, 64, 51, 48, 73, 79, 74, 67, 79, 43, 66, 72, 78, 46, 85, 67, 72, 59, 56, 76, 59, 56, 68, 43, 47, 67, 77, 61, 45, 53, 84, 100, 63, 65, 78, 71, 43, 69, 59, 64, 63, 55, 64, 78, 60, 100, 62, 55, 64, 70, 55, 47, 83, 51, 52, 81, 60, 64, 65, 68, 71, 59, 53, 108, 64, 58, 53, 70, 51, 84, 82, 90, 59, 58, 62, 77, 67, 57, 89, 70, 55, 54, 67, 56, 78, 91, 63, 54, 86, 75, 114, 65, 86, 57, 80, 71, 66, 41, 47, 79, 71, 57, 65, 45, 80, 75, 59, 78, 58, 51, 106, 55, 73, 63, 52, 74, 58, 53, 65, 61, 79, 47, 81, 69, 71, 59, 92, 66, 65, 93, 50, 57, 67, 65, 88, 47, 58, 80, 65, 60, 63, 31, 74, 66, 91, 86, 75, 70, 60, 46, 73, 51, 67, 52, 82, 49, 65, 64, 78, 72, 54, 64, 58, 67, 75, 71, 63, 57, 77, 78, 81, 57, 82, 103, 46, 63, 58, 65, 61, 53, 48, 51, 36, 61, 92, 81, 51, 89, 79, 88, 66, 62, 55, 48, 67, 78, 53, 54, 61, 95, 88, 63, 73, 62, 71, 70, 66, 85, 80, 57, 82, 57, 75, 91, 85, 72, 79, 53, 40, 64, 56, 81, 99, 77, 52, 56, 75, 74, 86, 66, 64, 58, 59, 64, 63, 51, 50, 62, 49, 89, 59, 66, 72, 62, 54, 52, 66, 48, 50, 59, 64, 59, 73, 48, 59, 55, 54, 46, 67, 66, 84, 59, 66, 55, 47, 77, 68, 54, 57, 62, 51, 66, 79, 56, 58, 46, 69, 52, 64, 65, 53, 62, 69, 70, 110, 96, 156, 47, 64, 103, 79, 50, 76, 54, 96, 62, 97, 68, 70, 66, 54, 67, 81, 58, 60, 50, 37, 72, 66, 106, 65, 62, 41, 52, 97, 115, 52, 76, 61, 60, 51, 54, 76, 63, 57, 51, 75, 49, 56, 51, 55, 75, 71, 56, 76, 59, 75, 80, 75, 63, 66, 62, 56, 92, 64, 72, 54, 68, 77, 68, 120, 60, 79, 73, 58, 51, 52, 58, 87, 72, 46, 67, 77, 56, 60, 75, 73, 80, 67, 62, 93, 83, 47, 68, 102, 79, 59, 73, 96, 62, 58, 49, 70, 60, 81, 53, 65, 52, 48, 71, 47, 64, 73, 65, 60, 81, 77, 77, 67, 45, 61, 67, 108, 47, 69, 57, 87, 69, 56, 63, 55, 54, 97, 76, 55, 91, 56, 77, 71, 56, 67, 91, 54, 66, 62, 63, 74, 56, 68, 66, 43, 57, 75, 108, 47, 59, 56, 73, 44, 58, 71, 68, 52, 72, 73, 66, 39, 63, 60, 70, 107, 57, 77, 53, 59, 57, 42, 86, 56, 55, 56, 78, 59, 57, 47, 55, 49, 74, 48, 86, 59, 60, 69, 71, 55, 70, 55, 57, 61, 127, 59, 84, 53, 71, 59, 64, 87, 74, 63, 67, 60, 79, 96, 59, 70, 70, 73, 61, 69, 77, 80, 84, 66, 56, 50, 61, 65, 78, 97, 65, 58, 63, 60, 80, 53, 50, 40, 74, 45, 72, 63, 80, 73, 51, 59, 70, 87, 55, 72, 71, 58, 65, 63, 79, 58, 66, 59, 66, 70, 65, 74, 65, 45, 71, 52, 78, 64, 76, 62, 59, 85, 62, 70, 73, 64, 62, 93, 60, 74, 51, 44, 43, 56, 56, 68, 75, 63, 54, 87, 51, 72, 85, 66, 59, 52, 58, 58, 69, 73, 62, 69, 51, 63, 73, 47, 46, 53, 70, 77, 45, 67, 59, 75, 49, 92, 62, 54, 46, 60, 55, 78, 56, 57, 74, 63, 70, 64, 77, 53, 62, 58, 105, 70, 71, 90, 62, 41, 61, 76, 50, 35, 65, 78, 91, 57, 56, 63, 40, 60, 68, 54, 75, 63, 64, 52, 54, 90, 44, 48, 65, 57, 35, 150, 71, 38, 50, 48, 63, 57, 99, 71, 60, 72, 64, 72, 56, 68, 57, 60, 54, 66, 65, 61, 68, 76, 63, 96, 61, 58, 69, 88, 57, 53, 58, 41, 88, 72, 66, 78, 66, 47, 87, 54, 84, 67, 42, 50, 84, 78, 70, 69, 52, 86, 36, 58, 61, 59, 61, 53, 67, 97, 51, 75, 66, 87, 47, 49, 66, 73, 60, 64, 62, 73, 53, 60, 55, 58, 57, 58, 75, 50, 77, 77, 57, 55, 92, 65, 63, 68, 75, 61, 65, 75, 66, 70, 55, 62, 66, 105, 76, 81, 62, 68, 65, 50, 64, 55, 85, 74, 68, 58, 56, 78, 59, 43, 64, 50, 48, 70, 62, 72, 48, 63, 83, 87, 60, 79, 70, 54, 64, 57, 76, 66, 56, 85, 65, 40, 46, 75, 68, 56, 68, 64, 58, 52, 69, 66, 51, 71, 72, 75, 59, 61, 47, 82, 72, 84, 62, 50, 60, 56, 66, 69, 80, 66, 40, 76, 57, 99, 58, 54, 61, 67, 61, 102, 67, 70, 97, 54, 65, 79, 45, 121, 54, 68, 81, 90, 67, 53, 61, 42, 68, 64, 46, 47, 75, 95, 92, 51, 62, 70, 84, 77, 45, 71, 61, 74, 77, 49, 54, 44, 87, 82, 60, 48, 64, 53, 66, 72, 88, 62, 62, 73, 49, 80, 59, 52, 63, 68, 70, 53, 64, 56, 71, 73, 80, 50, 52, 50, 63, 63, 73, 56, 75, 54, 49, 56, 67, 67, 71, 54, 44, 91, 51, 69, 52, 59, 60, 57, 98, 57, 51, 35, 65, 54, 54, 78, 72, 48, 56, 53, 67, 63, 69, 57, 60, 46, 64, 63, 102, 55, 46, 56, 66, 94, 73, 81, 61, 70, 54, 44, 56, 48, 58, 60, 88, 55, 73, 57, 48, 54, 68, 75, 59, 60, 50, 102, 68, 65, 44, 57, 75, 50, 51, 69, 52, 118, 45, 75, 75, 66, 59, 62, 82, 56, 67, 70, 51, 52, 72, 69, 65, 48, 40, 71, 63, 59, 73, 83, 52, 45, 67, 42, 51, 55, 63, 78, 56, 67, 58, 54, 60, 54, 53, 59, 69, 56, 101, 67, 68, 70, 59, 77, 36, 66, 101, 60, 55, 66, 58, 55, 64, 82, 71, 85, 54, 64, 81, 65, 53, 77, 65, 73, 78, 55, 75, 62, 57, 59, 55, 46, 64, 74, 52, 103, 45, 81, 84, 115, 55, 68, 57, 65, 82, 72, 70, 74, 70, 67, 77, 53, 76, 36, 77, 58, 75, 62, 76, 39, 83, 60, 77, 85, 69, 79, 48, 59, 81, 48, 68, 58, 70, 59, 64, 43, 43, 74, 64, 47, 83, 62, 63, 77, 62, 93, 62, 59, 62, 60, 52, 58, 55, 62, 47, 63, 79, 61, 79, 63, 105, 76, 55, 76, 90, 58, 61, 82, 52, 65, 72, 64, 66, 69, 50, 75, 67, 67, 79, 47, 57, 57, 56, 65, 71, 63, 49, 64, 61, 61, 53, 83, 65, 59, 69, 65, 57, 66, 62, 68, 62, 60, 43, 46, 67, 98, 61, 54, 110, 77, 93, 72, 64, 49, 94, 59, 80, 59, 56, 50, 63, 61, 72, 97, 67, 64, 72, 60, 56, 97, 40, 66, 43, 48, 83, 72, 64, 54, 61, 74, 72, 65, 65, 51, 52, 91, 62, 62, 57, 48, 61, 55, 66, 65, 62, 68, 86, 59, 56, 78, 50, 77, 72, 63, 57, 56, 59, 55, 51, 77, 75, 68, 57, 69, 125, 97, 75, 62, 60, 56, 63, 64, 66, 68, 58, 66, 64, 61, 65, 57, 70, 80, 61, 81, 44, 77, 50, 66, 85, 60, 65, 51, 68, 56, 75, 54, 83, 77, 64, 53, 62, 96, 67, 54, 88, 64, 50, 55, 58, 55, 34, 72, 60, 58, 74, 53, 57, 68, 60, 60, 57, 65, 63, 49, 59, 76, 65, 51, 66, 63, 49, 62, 66, 49, 57, 77, 83, 60, 80, 59, 69, 85, 54, 59, 67, 75, 45, 63, 62, 71, 61, 70, 45, 81, 45, 71, 74, 65, 66, 74, 168, 71, 71, 64, 48, 78, 74, 88, 64, 52, 47, 55, 55, 51, 54, 101, 63, 72, 62, 63, 55, 66, 66, 63, 97, 70, 73, 63, 97, 88, 76, 64, 63, 44, 53, 95, 58, 57, 77, 61, 84, 46, 77, 69, 62, 58, 94, 45, 71, 87, 72, 70, 61, 60, 60, 65, 65, 73, 68, 53, 55, 46, 40, 64, 68, 147, 34, 62, 57, 55, 69, 69, 60, 72, 86, 62, 67, 64, 50, 61, 56, 82, 86, 69, 58, 96, 64, 72, 63, 70, 59, 81, 65, 61, 51, 56, 60, 74, 34, 54, 63, 52, 59, 85, 57, 65, 63, 62, 61, 82, 49, 66, 51, 33, 69, 124, 68, 51, 67, 78, 60, 64, 60, 72, 63, 53, 73, 79, 88, 48, 83, 66, 49, 103, 53, 65, 101, 82, 48, 55, 63, 66, 66, 82, 79, 78, 48, 52, 57, 59, 66, 72, 79, 59, 51, 61, 59, 38, 44, 99, 67, 47, 61, 54, 67, 132, 64, 54, 84, 60, 54, 62, 54, 84, 70, 66, 59, 71, 78, 56, 86, 67, 56, 77, 80, 64, 66, 76, 99, 61, 50, 60, 56, 44, 79, 93, 66, 63, 64, 67, 77, 54, 71, 71, 60, 63, 48, 62, 69, 66, 72, 84, 53, 71, 58, 70, 63, 78, 59, 62, 51, 69, 38, 135, 55, 64, 42, 60, 113, 77, 74, 75, 68, 45, 45, 69, 42, 49, 65, 84, 48, 59, 49, 64, 71, 42, 70, 110, 75, 64, 76, 63, 57, 66, 53, 58, 55, 82, 67, 56, 59, 58, 88, 62, 69, 82, 58, 90, 68, 70, 63, 73, 59, 48, 69, 69, 63, 84, 58, 56, 50, 64, 56, 60, 60, 34, 79, 41, 59, 61, 57, 74, 76, 103, 63, 56, 64, 73, 128, 47, 76, 57, 139, 57, 74, 32, 57, 50, 68, 53, 40, 59, 72, 74, 61, 124, 66, 74, 66, 81, 58, 65, 62, 68, 62, 69, 91, 63, 74, 88, 105, 48, 74, 36, 54, 75, 60, 53, 79, 81, 64, 83, 69, 63, 66, 61, 76, 48, 74, 60, 88, 60, 76, 47, 83, 45, 69, 56, 50, 62, 66, 60, 44, 86, 64, 28, 77, 72, 73, 62, 69, 75, 100, 64, 59, 61, 58, 59, 70, 51, 78, 81, 45, 75, 64, 77, 66, 47, 81, 56, 52, 56, 49, 71, 53, 74, 75, 58, 50, 59, 47, 67, 88, 68, 67, 71, 75, 78, 70, 83, 69, 59, 54, 58, 67, 122, 43, 86, 78, 72, 62, 44, 65, 64, 61, 87, 62, 49, 73, 50, 70, 75, 67, 81, 72, 107, 73, 58, 65, 65, 59, 86, 52, 80, 60, 84, 83, 68, 72, 77, 57, 58, 68, 63, 69, 73, 62, 60, 79, 59, 84, 46, 63, 54, 50, 72, 76, 46, 82, 53, 70, 63, 69, 51, 87, 71, 56, 94, 92, 67, 64, 78, 57, 81, 40, 66, 64, 90, 48, 85, 95, 74, 83, 62, 55, 38, 70, 55, 72, 59, 82, 56, 73, 67, 78, 69, 68, 102, 58, 81, 53, 65, 78, 58, 59, 77, 57, 55, 58, 72, 91, 66, 50, 67, 72, 70, 58, 81, 79, 64, 79, 70, 65, 71, 50, 61, 55, 73, 54, 66, 81, 74, 55, 76, 68, 58, 68, 65, 63, 77, 66, 68, 82, 55, 55, 50, 65, 70, 57, 60, 68, 54, 63, 80, 52, 59, 68, 55, 73, 54, 76, 62, 61, 59, 56, 63, 60, 60, 74, 92, 54, 81, 63, 62, 68, 63, 64, 77, 70, 60, 75, 51, 68, 77, 53, 63, 55, 58, 66, 73, 77, 81, 86, 63, 100, 76, 60, 64, 69, 56, 50, 71, 61, 68, 67, 77, 65, 72, 64, 58, 57, 71, 82, 77, 82, 59, 66, 63, 73, 71, 71, 66, 52, 64, 64, 68, 69, 69, 65, 89, 77, 70, 60, 60, 58, 60, 55, 61, 56, 63, 50, 77, 73, 87, 78, 58, 83, 55, 62, 64, 64, 86, 69, 61, 75, 59, 55, 56, 52, 99, 74, 73, 61, 69, 62, 53, 53, 67, 56, 67, 64, 62, 60, 75, 58, 53, 68, 55, 58, 71, 64, 62, 71, 131, 52, 58, 67, 71, 74, 74, 62, 63, 55, 59, 61, 62, 77, 91, 66, 74, 65, 57, 81, 73, 43, 62, 54, 66, 47, 55, 69, 65, 61, 63, 66, 62, 57, 74, 63, 62, 68, 43, 59, 54, 56, 57, 73, 69, 66, 62, 56, 67, 72, 61, 69, 65, 64, 61, 60, 59, 50, 58, 79, 57, 84, 49, 57, 53, 56, 62, 60, 74, 59, 51, 75, 48, 61, 62, 56, 91, 66, 76, 54, 80, 66, 56, 73, 55, 62, 52, 72, 54, 77, 55, 75, 75, 61, 65, 61, 61, 64, 59, 58, 71, 64, 58, 52, 50, 62, 50, 56, 91, 49, 64, 73, 71, 66, 58, 72, 55, 64, 75, 58, 58, 45, 78, 56, 78, 71, 64, 84, 61, 60, 53, 65, 60, 57, 82, 55, 125, 65, 67, 83, 57, 55, 62, 58, 81, 70, 60, 72, 53, 68, 61, 67, 53, 73, 58, 59, 135, 55, 71, 60, 84, 61, 63, 67, 70, 60, 64, 58, 65, 68, 56, 58, 64, 59, 48, 59, 54, 74, 70, 66, 69, 55, 69, 62, 64, 62, 67, 61, 60, 70, 63, 96, 68, 63, 59, 98, 53, 74, 58, 69, 55, 53, 59, 66, 72, 60, 72, 59, 70, 63, 65, 56, 62, 58, 73, 65, 56, 55, 59, 56, 54, 70, 60, 61, 76, 72, 56, 58, 61, 65, 60, 90, 84, 63, 52, 79, 70, 51, 89, 77, 70, 77, 57, 108, 63, 68, 78, 89, 85, 62, 60, 63, 60, 54, 61, 79, 60, 61, 56, 64, 57, 83, 56, 71, 52, 59, 57, 58, 86, 66, 45, 90, 76, 69, 77, 56, 54, 57, 54, 73, 60, 80, 67, 57, 81, 68, 59, 61, 81, 73, 73, 72, 62, 63, 70, 73, 56, 88, 62, 62, 62, 66, 56, 67, 76, 70, 59, 65, 58, 78, 59, 69, 64, 55, 71, 54, 66, 67, 60, 61, 53, 87, 67, 77, 60, 53, 67, 57, 73, 70, 63, 93, 151, 63, 61, 54, 63, 61, 68, 80, 82, 57, 69, 59, 67, 59, 54, 55, 80, 66, 71, 56, 71, 64, 79, 57, 53, 68, 66, 68, 70, 69, 86, 65, 59, 65, 63, 60, 49, 60, 63, 69, 96, 69, 60, 49, 45, 74, 75, 64, 61, 64, 81, 82, 110, 60, 58, 55, 60, 76, 60, 64, 56, 61, 67, 58, 105, 61, 74, 54, 57, 68, 73, 66, 71, 58, 57, 52, 64, 51, 67, 74, 57, 73, 63, 55, 57, 50, 59, 72, 77, 70, 79, 101, 62, 66, 55, 62, 61, 56, 51, 62, 79, 57, 66, 69, 78, 63, 84, 59, 64, 82, 71, 68, 94, 59, 60, 72, 120, 73, 68, 64, 86, 61, 60, 62, 56, 54, 69, 63, 81, 71, 84, 58, 68, 63, 67, 68, 107, 94, 61, 76, 90, 59, 68, 68, 62, 58, 60, 65, 71, 64, 47, 57, 72, 59, 59, 85, 82, 60, 71, 50, 48, 70, 57, 70, 109, 74, 71, 53, 65, 58, 74, 85, 59, 71, 60, 57, 89, 60, 65, 69, 96, 69, 65, 78, 55, 75, 100, 50, 58, 68, 65, 59, 60, 87, 66, 62, 63, 70, 69, 105, 51, 67, 58, 61, 61, 62, 73, 95, 75, 95, 58, 76, 57, 60, 80, 69, 60, 57, 65, 63, 63, 70, 63, 58, 68, 62, 70, 57, 68, 73, 80, 59, 64, 63, 52, 60, 81, 66, 50, 82, 45, 57, 70, 61, 57, 65, 64, 87, 61, 69, 60, 58, 54, 60, 106, 44, 75, 81, 103, 73, 58, 63, 65, 56, 68, 84, 87, 54, 75, 70, 63, 66, 70, 56, 54, 68, 67, 60, 61, 66, 64, 49, 52, 74, 57, 76, 58, 54, 64, 91, 60, 63, 64, 61, 63, 70, 75, 85, 63, 59, 61, 62, 87, 67, 63, 61, 59, 63, 63, 53, 58, 100, 60, 93, 45, 64, 59, 58, 70, 57, 67, 51, 61, 67, 65, 59, 81, 69, 58, 72, 49, 50, 65, 71, 80, 57, 61, 75, 94, 57, 82, 68, 43, 76, 56, 64, 72, 60, 67, 66, 60, 57, 65, 68, 64, 65, 57, 62, 57, 73, 51, 51, 55, 70, 56, 76, 87, 71, 58, 51, 62, 52, 58, 57, 52, 55, 78, 61, 91, 68, 60, 55, 62, 53, 70, 88, 61, 52, 68, 80, 65, 72, 75, 60, 66, 91, 56, 71, 59, 55, 73, 90, 66, 57, 78, 64, 63, 75, 84, 72, 57, 67, 77, 50, 69, 68, 55, 81, 68, 64, 85, 53, 63, 60, 57, 59, 62, 70, 66, 60, 65, 77, 69, 68, 55, 55, 61, 71, 64, 58, 60, 59, 50, 54, 55, 76, 67, 58, 68, 62, 76, 58, 57, 75, 50, 66, 59, 70, 53, 65, 71, 63, 65, 49, 63, 56, 53, 64, 63, 73, 75, 58, 62, 62, 57, 60, 64, 74, 68, 82, 61, 61, 74, 74, 65, 66, 61, 96, 79, 55, 63, 72, 54, 57, 56, 60, 78, 71, 65, 60, 66, 67, 57, 58, 66, 66, 59, 49, 66, 62, 72, 56, 60, 72, 56, 65, 54, 67, 59, 71, 64, 57, 74, 72, 56, 60, 67, 67, 56, 68, 61, 54, 64, 97, 78, 55, 72, 51, 87, 65, 46, 57, 99, 72, 51, 58, 93, 49, 59, 54, 68, 57, 69, 54, 77, 57, 63, 69, 75, 56, 68, 56, 60, 74, 69, 59, 67, 66, 71, 51, 81, 67, 61, 58, 62, 61, 45, 59, 85, 81, 78, 66, 74, 56, 74, 82, 74, 62, 57, 65, 82, 50, 83, 67, 80, 62, 55, 60, 91, 56, 59, 79, 60, 49, 57, 67, 68, 57, 72, 91, 64, 69, 68, 65, 68, 77, 63, 73, 52, 57, 56, 62, 80, 60, 72, 64, 69, 70, 67, 59, 64, 60, 62, 48, 67, 68, 58, 73, 57, 51, 54, 59, 65, 52, 79, 61, 53, 62, 81, 75, 65, 55, 79, 52, 73, 69, 61, 56, 55, 58, 87, 62, 80, 96, 54, 60, 71, 78, 81, 69, 69, 64, 63, 71, 63, 97, 54, 74, 41, 67, 60, 68, 74, 58, 63, 61, 78, 67, 64, 80, 49, 59, 154, 70, 58, 68, 69, 61, 63, 65, 62, 61, 65, 64, 68, 61, 70, 53, 77, 63, 71, 80, 70, 60, 57, 86, 77, 53, 58, 66, 59, 63, 64, 61, 55, 61, 45, 76, 63, 65, 64, 49, 86, 82, 73, 67, 93, 62, 61, 61, 63, 54, 62, 63, 62, 56, 65, 76, 57, 58, 61, 76, 73, 69, 78, 70, 67, 61, 58, 55, 57, 63, 67, 66, 54, 52, 72, 52, 112, 73, 67, 58, 73, 49, 56, 56, 61, 71, 59, 90, 69, 79, 49, 70, 84, 76, 67, 60, 62, 60, 57, 90, 62, 56, 66, 57, 61, 78, 61, 72, 83, 71, 58, 54, 57, 63, 52, 60, 58, 57, 77, 54, 75, 89, 64, 69, 89, 58, 79, 68, 66, 62, 81, 84, 83, 59, 64, 58, 141, 93, 74, 72, 57, 70, 53, 67, 46, 57, 70, 68, 49, 59, 46, 58, 87, 109, 60, 64, 114, 67, 56, 57, 67, 65, 64, 60, 70, 55, 57, 60, 43, 67, 54, 65, 75, 55, 62, 46, 56, 61, 62, 68, 63, 55, 70, 85, 53, 81, 56, 63, 70, 60, 72, 66, 73, 68, 55, 69, 50, 67, 75, 76, 71, 83, 61, 78, 99, 81, 66, 55, 59, 61, 75, 65, 81, 64, 61, 55, 86, 67, 57, 82, 67, 80, 61, 57, 107, 92, 56, 57, 61, 72, 66, 61, 55, 70, 70, 75, 69, 76, 94, 58, 68, 78, 62, 81, 66, 73, 82, 49, 80, 55, 69, 73, 55, 58, 64, 82, 64, 66, 58, 63, 75, 82, 53, 61, 52, 59, 73, 70, 83, 54, 56, 74, 86, 70, 83, 70, 68, 56, 65, 59, 67, 87, 77, 47, 59, 68, 55, 47, 74, 71, 58, 46, 67, 61, 54, 58, 52, 102, 64, 72, 71, 53, 51, 81, 63, 43, 52, 69, 79, 67, 62, 58, 50, 86, 62, 56, 53, 66, 98, 54, 61, 62, 56, 81, 63, 48, 61, 63, 45, 74, 73, 88, 149, 67, 69, 62, 100, 56, 60, 58, 71, 44, 67, 57, 67, 61, 87, 67, 60, 72, 53, 60, 61, 54, 53, 58, 59, 64, 77, 60, 51, 53, 56, 55, 59, 59, 65, 65, 54, 67, 65, 73, 70, 74, 62, 60, 63, 67, 73, 67, 51, 68, 50, 73, 62, 60, 72, 60, 66, 58, 71, 66, 56, 60, 64, 72, 73, 60, 79, 76, 64, 76, 76, 66, 56, 68, 90, 54, 60, 79, 57, 89, 63, 65, 65, 58, 67, 61, 80, 71, 83, 60, 60, 63, 67, 68, 63, 58, 57, 67, 83, 73, 68, 60, 54, 58, 57, 49, 89, 65, 58, 92, 61, 85, 106, 57, 102, 56, 85, 55, 82, 79, 55, 59, 53, 61, 59, 56, 81, 58, 65, 55, 79, 78, 81, 63, 72, 64, 75, 53, 56, 77, 56, 70, 56, 57, 53, 58, 48, 57, 68, 64, 63, 60, 60, 58, 70, 50, 78, 56, 65, 58, 59, 76, 59, 65, 66, 72, 82, 85, 77, 77, 87, 57, 55, 81, 51, 76, 45, 53, 60, 52, 58, 78, 52, 82, 57, 60, 68, 73, 59, 68, 64, 72, 59, 54, 51, 57, 87, 69, 50, 127, 69, 65, 66, 70, 59, 90, 56, 75, 62, 78, 81, 57, 55, 66, 76, 51, 65, 60, 59, 66, 54, 54, 55, 55, 62, 64, 81, 69, 67, 54, 110, 65, 56, 56, 58, 53, 52, 62, 49, 62, 53, 75, 58, 57, 76, 70, 59, 71, 75, 59, 55, 49, 79, 61, 74, 60, 57, 65, 75, 64, 77, 60, 60, 63, 69, 61, 81, 72, 50, 61, 64, 53, 63, 61, 64, 66, 78, 49, 72, 86, 63, 74, 58, 120, 53, 70, 61, 69, 54, 49, 58, 48, 56, 69, 71, 57, 65, 79, 54, 66, 81, 55, 74, 50, 58, 65, 60, 95, 89, 56, 69, 93, 60, 51, 62, 89, 80, 69, 41, 59, 50, 63, 69, 60, 52, 49, 72, 103, 74, 65, 59, 53, 62, 75, 68, 58, 64, 85, 68, 60, 68, 58, 63, 86, 68, 67, 49, 60, 62, 52, 65, 49, 65, 86, 63, 62, 74, 78, 94, 55, 77, 57, 63, 90, 62, 68, 66, 77, 53, 65, 62, 48, 70, 67, 73, 49, 62, 56, 66, 70, 60, 54, 67, 62, 63, 64, 102, 59, 59, 75, 70, 62, 69, 64, 69, 56, 60, 75, 63, 70, 47, 52, 69, 60, 82, 49, 57, 75, 61, 68, 60, 54, 92, 67, 58, 77, 61, 65, 91, 58, 80, 70, 83, 50, 63, 57, 77, 75, 78, 57, 64, 71, 68, 55, 65, 51, 60, 45, 68, 63, 70, 74, 61, 60, 55, 58, 73, 62, 60, 66, 67, 66, 66, 118, 74, 53, 65, 61, 67, 59, 61, 62, 67, 71, 59, 62, 53, 70, 74, 67, 69, 58, 49, 64, 65, 56, 59, 72, 56, 50, 62, 62, 63, 65, 71, 66, 65, 100, 76, 68, 91, 59, 75, 60, 60, 56, 68, 73, 67, 97, 58, 84, 55, 73, 72, 56, 61, 62, 49, 57, 79, 67, 49, 50, 71, 57, 86, 55, 51, 52, 73, 58, 72, 88, 53, 56, 64, 61, 57, 48, 64, 61, 70, 77, 82, 59, 93, 58, 75, 50, 60, 49, 96, 54, 50, 73, 61, 54, 68, 69, 61, 56, 67, 54, 66, 57, 66, 51, 63, 89, 72, 58, 55, 53, 52, 64, 41, 64, 64, 61, 55, 76, 74, 52, 64, 50, 64, 50, 69, 60, 58, 84, 64, 61, 63, 58, 81, 64, 64, 63, 67, 68, 74, 52, 67, 73, 57, 60, 48, 116, 75, 101, 61, 47, 48, 46, 75, 39, 38, 53, 61, 67, 58, 83, 82, 46, 68, 68, 62, 61, 53, 69, 42, 44, 59, 56, 76, 62, 56, 74, 68, 70, 84, 85, 41, 54, 62, 67, 57, 60, 83, 53, 73, 71, 68, 57, 53, 51, 54, 62, 65, 70, 49, 84, 60, 82, 77, 72, 73, 68, 64, 51, 66, 86, 99, 49, 77, 48, 64, 57, 85, 60, 90, 82, 57, 71, 72, 63, 54, 59, 43, 93, 62, 48, 80, 49, 77, 64, 62, 62, 65, 33, 107, 63, 56, 55, 61, 71, 68, 77, 56, 62, 46, 68, 72, 82, 58, 68, 59, 66, 58, 87, 53, 54, 63, 51, 73, 68, 73, 90, 61, 57, 44, 54, 53, 82, 76, 73, 85, 38, 45, 70, 95, 96, 86, 58, 59, 72, 55, 54, 66, 63, 50, 62, 59, 68, 74, 62, 72, 82, 158, 85, 75, 62, 98, 60, 65, 97, 61, 72, 72, 76, 64, 77, 75, 105, 62, 62, 61, 81, 56, 71, 59, 81, 52, 49, 89, 58, 70, 55, 50, 60, 54, 69, 57, 63, 62, 53, 80, 65, 71, 58, 55, 62, 63, 69, 75, 56, 70, 65, 71, 111, 52, 45, 72, 93, 51, 124, 75, 93, 57, 86, 83, 89, 58, 55, 70, 48, 62, 63, 53, 67, 39, 91, 48, 51, 87, 58, 85, 52, 66, 80, 48, 67, 60, 66, 61, 114, 58, 70, 72, 82, 71, 102, 43, 61, 62, 81, 58, 71, 67, 66, 71, 75, 49, 70, 52, 66, 64, 55, 47, 64, 43, 91, 54, 57, 62, 80, 57, 72, 68, 65, 57, 70, 50, 75, 49, 54, 74, 63, 70, 54, 69, 73, 80, 60, 47, 66, 55, 66, 73, 54, 61, 88, 64, 88, 54, 58, 72, 52, 77, 53, 59, 64, 33, 70, 71, 78, 69, 76, 54, 49, 57, 54, 59, 70, 81, 55, 54, 63, 61, 46, 54, 81, 65, 65, 50, 75, 86, 57, 56, 52, 57, 59, 56, 65, 67, 50, 93, 45, 78, 80, 65, 43, 44, 70, 56, 63, 74, 58, 75, 66, 50, 54, 63, 50, 68, 56, 87, 58, 57, 60, 65, 78, 55, 63, 41, 66, 90, 51, 72, 55, 67, 68, 66, 69, 62, 90, 62, 70, 49, 67, 56, 72, 62, 73, 49, 80, 48, 35, 64, 69, 66, 60, 64, 73, 59, 57, 60, 44, 61, 68, 57, 58, 65, 67, 53, 58, 58, 75, 84, 66, 69, 48, 54, 53, 74, 68, 52, 40, 54, 80, 56, 140, 88, 89, 63, 80, 61, 38, 57, 62, 63, 51, 54, 78, 64, 49, 67, 82, 95, 70, 70, 57, 70, 60, 65, 71, 81, 56, 63, 56, 72, 106, 70, 79, 55, 73, 85, 63, 58, 74, 65, 106, 62, 65, 68, 77, 58, 70, 70, 46, 68, 76, 62, 59, 58, 63, 61, 43, 51, 61, 52, 67, 78, 47, 48, 46, 113, 64, 61, 72, 63, 65, 79, 74, 67, 62, 75, 64, 54, 55, 62, 70, 77, 63, 55, 65, 121, 54, 60, 65, 68, 57, 54, 97, 68, 80, 65, 70, 59, 69, 58, 60, 55, 67, 72, 63, 70, 58, 81, 59, 46, 58, 61, 67, 60, 64, 65, 67, 93, 66, 69, 72, 57, 72, 39, 73, 73, 46, 75, 75, 63, 65, 81, 91, 74, 80, 58, 61, 69, 70, 63, 80, 58, 72, 64, 73, 74, 59, 55, 54, 61, 66, 55, 54, 62, 60, 59, 79, 65, 55, 70, 57, 51, 64, 56, 87, 144, 54, 60, 79, 62, 63, 83, 58, 67, 123, 62, 53, 60, 55, 51, 75, 88, 50, 75, 82, 66, 74, 71, 59, 82, 51, 69, 50, 89, 92, 72, 61, 64, 53, 47, 79, 67, 73, 79, 59, 73, 74, 66, 68, 70, 98, 46, 60, 68, 62, 66, 55, 91, 47, 53, 52, 59, 62, 111, 59, 65, 63, 85, 87, 59, 54, 69, 64, 69, 64, 62, 49, 67, 71, 76, 61, 56, 57, 48, 42, 53, 67, 66, 70, 56, 81, 62, 65, 70, 79, 57, 54, 47, 55, 72, 91, 68, 59, 53, 71, 74, 82, 77, 65, 86, 59, 64, 69, 87, 61, 39, 62, 66, 77, 58, 73, 42, 57, 53, 63, 61, 108, 52, 68, 68, 74, 65, 67, 56, 56, 80, 63, 61, 103, 80, 81, 55, 103, 72, 79, 77, 68, 44, 58, 66, 62, 90, 71, 65, 55, 78, 56, 72, 54, 63, 53, 74, 73, 83, 50, 67, 55, 46, 59, 59, 76, 65, 61, 63, 65, 113, 74, 64, 68, 65, 70, 46, 51, 76, 53, 59, 78, 51, 70, 50, 75, 58, 90, 62, 62, 76, 68, 104, 59, 52, 76, 60, 55, 56, 83, 52, 53, 63, 51, 80, 59, 85, 83, 74, 33, 61, 74, 77, 75, 52, 75, 59, 56, 64, 51, 58, 59, 64, 60, 61, 71, 76, 70, 69, 49, 73, 56, 59, 57, 64, 60, 58, 69, 84, 81, 57, 89, 75, 63, 68, 65, 51, 64, 64, 87, 108, 50, 82, 94, 49, 52, 67, 57, 70, 48, 53, 79, 66, 84, 48, 49, 102, 64, 86, 67, 58, 64, 71, 78, 57, 146, 69, 91, 75, 60, 67, 95, 56, 63, 50, 45, 76, 62, 52, 68, 63, 63, 54, 72, 45, 62, 47, 91, 56, 55, 77, 61, 58, 83, 74, 60, 61, 55, 63, 64, 55, 66, 101, 64, 80, 89, 65, 49, 65, 61, 67, 63, 71, 75, 59, 56, 77, 83, 58, 48, 58, 58, 56, 74, 71, 64, 42, 49, 67, 55, 69, 74, 84, 44, 58, 60, 85, 64, 55, 72, 57, 73, 59, 83, 46, 88, 88, 61, 57, 82, 80, 61, 75, 62, 90, 79, 55, 91, 84, 42, 78, 83, 92, 65, 58, 67, 80, 56, 63, 52, 54, 70, 78, 54, 92, 50, 87, 80, 66, 80, 45, 57, 67, 64, 57, 50, 57, 87, 63, 53, 82, 76, 75, 64, 82, 53, 69, 88, 53, 51, 58, 51, 63, 60, 60, 53, 57, 58, 60, 44, 58, 65, 45, 62, 53, 44, 65, 73, 73, 50, 60, 58, 90, 74, 78, 115, 75, 59, 41, 72, 62, 63, 68, 69, 60, 55, 75, 58, 52, 67, 63, 63, 82, 61, 61, 58, 66, 70, 62, 58, 66, 65, 68, 66, 75, 61, 47, 66, 76, 90, 74, 71, 59, 58, 109, 72, 71, 81, 68, 74, 52, 52, 71, 51, 74, 44, 61, 79, 79, 55, 66, 57, 64, 58, 52, 76, 84, 44, 60, 79, 46, 59, 44, 57, 56, 56, 70, 59, 85, 68, 47, 77, 63, 62, 85, 66, 78, 89, 54, 75, 67, 81, 65, 69, 51, 69, 59, 75, 94, 69, 76, 49, 82, 32, 67, 62, 55, 53, 59, 71, 81, 74, 50, 55, 58, 59, 61, 80, 73, 62, 54, 69, 62, 71, 60, 67, 81, 61, 58, 70, 71, 56, 117, 60, 73, 57, 77, 47, 45, 100, 89, 63, 77, 69, 64, 69, 68, 50, 43, 51, 68, 48, 46, 54, 76, 60, 119, 59, 58, 61, 52, 66, 62, 99, 58, 53, 55, 106, 59, 48, 69, 52, 53, 46, 55, 54, 84, 81, 72, 79, 51, 72, 64, 53, 88, 62, 62, 42, 52, 48, 46, 63, 78, 56, 83, 70, 75, 64, 50, 66, 57, 79, 57, 60, 85, 53, 54, 81, 40, 59, 50, 45, 58, 77, 67, 81, 54, 44, 60, 60, 50, 47, 61, 115, 57, 71, 70, 101, 87, 59, 68, 55, 65, 76, 73, 79, 47, 62, 74, 54, 66, 73, 82, 59, 46, 82, 81, 56, 81, 63, 66, 74, 58, 56, 53, 57, 60, 68, 113, 69, 69, 74, 43, 70, 60, 43, 93, 67, 68, 83, 82, 43, 56, 66, 35, 92, 79, 54, 56, 69, 58, 68, 55, 61, 57, 103, 93, 56, 47, 68, 59, 55, 75, 68, 81, 50, 68, 79, 55, 71, 82, 68, 59, 65, 71, 47, 84, 81, 56, 95, 82, 64, 78, 97, 59, 68, 55, 54, 95, 65, 80, 62, 59, 67, 58, 65, 42, 60, 65, 90, 44, 68, 69, 102, 73, 56, 56, 53, 62, 47, 67, 63, 63, 44, 88, 56, 80, 67, 63, 61, 68, 53, 76, 50, 47, 83, 67, 70, 69, 67, 73, 68, 62, 75, 68, 68, 77, 53, 78, 82, 64, 80, 74, 54, 74, 61, 48, 53, 63, 79, 54, 37, 70, 75, 64, 61, 61, 92, 57, 86, 94, 66, 56, 56, 69, 70, 54, 68, 74, 57, 58, 77, 61, 57, 65, 51, 57, 63, 68, 73, 78, 49, 94, 79, 110, 59, 52, 45, 70, 65, 78, 73, 49, 60, 42, 66, 45, 45, 92, 141, 105, 68, 30, 54, 63, 72, 55, 66, 75, 73, 67, 63, 61, 57, 71, 68, 85, 33, 48, 59, 79, 75, 61, 82, 77, 57, 71, 94, 64, 122, 75, 64, 44, 85, 54, 60, 58, 105, 62, 86, 56, 39, 76, 56, 59, 78, 71, 74, 71, 50, 63, 71, 61, 68, 51, 56, 63, 54, 61, 91, 60, 61, 78, 50, 145, 52, 60, 50, 57, 60, 60, 70, 69, 82, 61, 54, 69, 71, 68, 77, 81, 82, 55, 79, 119, 69, 56, 51, 67, 51, 58, 65, 81, 56, 53, 53, 61, 52, 59, 68, 72, 54, 55, 66, 52, 68, 92, 50, 69, 56, 90, 65, 50, 98, 75, 89, 63, 68, 51, 59, 59, 78, 82, 56, 75, 62, 85, 52, 57, 70, 46, 44, 73, 56, 51, 58, 87, 57, 59, 66, 69, 92, 99, 65, 79, 80, 64, 67, 67, 59, 79, 58, 61, 56, 60, 70, 82, 74, 108, 52, 66, 71, 75, 80, 125, 55, 71, 75, 80, 45, 46, 70, 60, 88, 71, 59, 71, 63, 53, 65, 71, 66, 66, 65, 66, 59, 56, 70, 53, 60, 55, 69, 54, 93, 81, 62, 60, 70, 64, 72, 61, 70, 73, 58, 63, 91, 77, 51, 80, 47, 63, 72, 70, 49, 78, 61, 110, 63, 56, 75, 72, 79, 146, 79, 58, 60, 43, 77, 59, 85, 54, 79, 54, 68, 71, 66, 74, 59, 64, 61, 64, 67, 59, 86, 60, 61, 74, 74, 68, 66, 76, 70, 64, 71, 49, 64, 63, 74, 65, 72, 52, 58, 68, 71, 55, 69, 94, 29, 60, 62, 74, 51, 58, 71, 66, 58, 99, 61, 77, 68, 57, 82, 63, 73, 62, 111, 87, 68, 63, 51, 59, 71, 52, 42, 54, 50, 53, 98, 104, 82, 70, 72, 48, 90, 88, 63, 70, 61, 77, 85, 99, 81, 63, 61, 88, 58, 56, 86, 88, 43, 51, 86, 82, 103, 73, 82, 65, 83, 49, 91, 48, 61, 45, 62, 109, 76, 58, 42, 70, 66, 53, 67, 63, 86, 56, 65, 85, 74, 60, 80, 86, 59, 68, 53, 67, 93, 114, 60, 59, 99, 66, 67, 101, 51, 57, 72, 72, 82, 70, 64, 60, 66, 41, 56, 77, 60, 61, 92, 59, 80, 66, 61, 56, 61, 66, 68, 53, 59, 57, 80, 51, 59, 60, 43, 50, 69, 63, 62, 76, 64, 54, 62, 75, 54, 89, 56, 60, 49, 60, 71, 52, 49, 50, 60, 121, 69, 104, 58, 52, 74, 52, 78, 71, 70, 84, 48, 45, 61, 70, 59, 85, 63, 74, 49, 57, 75, 71, 79, 66, 61, 53, 96, 61, 57, 53, 60, 52, 79, 60, 59, 60, 48, 70, 89, 35, 74, 75, 77, 45, 54, 59, 75, 82, 56, 74, 65, 83, 46, 71, 55, 56, 51, 43, 70, 65, 59, 94, 56, 62, 52, 91, 56, 75, 77, 52, 75, 100, 59, 62, 83, 57, 71, 61, 56, 67, 41, 63, 64, 68, 56, 68, 52, 61, 61, 62, 60, 64, 56, 59, 58, 68, 63, 76, 68, 39, 79, 67, 83, 73, 50, 58, 74, 55, 65, 74, 66, 62, 54, 82, 93, 61, 68, 65, 65, 69, 58, 63, 56, 71, 49, 68, 80, 55, 84, 66, 89, 62, 69, 48, 57, 75, 45, 52, 86, 77, 48, 58, 71, 73, 72, 63, 51, 83, 76, 47, 93, 82, 82, 75, 58, 56, 44, 86, 56, 60, 62, 67, 70, 74, 46, 71, 67, 55, 66, 64, 83, 67, 62, 71, 69, 64, 70, 61, 53, 56, 57, 76, 60, 73, 65, 65, 54, 70, 55, 68, 104, 63, 61, 58, 58, 73, 68, 72, 64, 67, 71, 62, 65, 77, 70, 59, 65, 71, 72, 81, 84, 55, 55, 81, 61, 71, 63, 77, 49, 82, 64, 79, 69, 59, 97, 79, 58, 55, 49, 82, 64, 62, 69, 117, 50, 83, 59, 49, 64, 51, 55, 56, 62, 60, 59, 63, 64, 70, 76, 51, 58, 71, 56, 52, 67, 68, 63, 68, 60, 72, 73, 79, 60, 60, 75, 45, 57, 65, 68, 60, 57, 63, 61, 56, 54, 57, 58, 147, 66, 51, 69, 69, 51, 71, 69, 70, 56, 70, 59, 60, 50, 60, 75, 58, 61, 64, 77, 72, 71, 63, 86, 70, 65, 70, 64, 83, 82, 76, 68, 70, 57, 48, 59, 54, 71, 52, 66, 64, 77, 95, 51, 72, 64, 69, 66, 64, 60, 62, 61, 57, 64, 52, 60, 67, 53, 53, 62, 52, 55, 64, 62, 79, 66, 64, 54, 69, 75, 55, 56, 64, 72, 62, 63, 62, 57, 73, 64, 80, 63, 56, 65, 53, 71, 52, 59, 61, 61, 64, 87, 69, 58, 64, 58, 59, 63, 57, 64, 66, 110, 60, 62, 58, 65, 58, 60, 57, 65, 59, 61, 69, 54, 63, 51, 65, 64, 87, 52, 62, 62, 55, 56, 72, 57, 68, 59, 56, 59, 54, 102, 55, 53, 61, 66, 128, 87, 53, 65, 62, 77, 70, 65, 60, 61, 63, 61, 68, 56, 63, 60, 68, 81, 68, 55, 100, 71, 67, 85, 71, 62, 67, 78, 73, 60, 51, 62, 76, 60, 63, 72, 62, 60, 62, 67, 64, 62, 82, 72, 59, 57, 58, 58, 55, 59, 63, 69, 58, 83, 83, 68, 60, 66, 72, 65, 62, 58, 64, 67, 61, 76, 71, 57, 58, 92, 61, 57, 82, 64, 84, 85, 57, 96, 67, 62, 75, 66, 78, 91, 61, 65, 59, 65, 96, 80, 60, 74, 75, 67, 58, 53, 79, 57, 61, 76, 50, 65, 63, 47, 60, 67, 73, 66, 59, 67, 51, 75, 53, 64, 49, 67, 51, 63, 72, 78, 55, 68, 57, 59, 60, 77, 72, 69, 55, 67, 58, 55, 82, 68, 71, 81, 79, 80, 71, 90, 50, 69, 91, 58, 47, 71, 54, 64, 60, 55, 74, 60, 74, 70, 53, 78, 61, 71, 83, 60, 52, 57, 48, 59, 83, 73, 72, 51, 54, 66, 59, 64, 57, 106, 58, 67, 58, 68, 56, 77, 71, 91, 104, 75, 65, 65, 60, 60, 85, 81, 64, 70, 78, 80, 85, 76, 118, 65, 75, 59, 99, 56, 59, 56, 63, 56, 92, 63, 62, 61, 61, 72, 66, 63, 65, 51, 60, 75, 79, 55, 62, 59, 75, 82, 54, 75, 71, 55, 60, 67, 69, 59, 56, 64, 65, 89, 55, 70, 56, 61, 67, 90, 77, 62, 62, 53, 75, 58, 83, 67, 72, 52, 78, 61, 65, 67, 71, 71, 41, 50, 66, 63, 50, 56, 60, 61, 56, 64, 54, 54, 57, 75, 77, 77, 54, 115, 59, 62, 61, 67, 99, 57, 57, 89, 71, 108, 76, 72, 69, 54, 65, 72, 53, 66, 65, 57, 71, 79, 86, 78, 60, 53, 83, 70, 48, 83, 79, 63, 72, 56, 74, 45, 61, 67, 76, 73, 54, 59, 57, 59, 60, 55, 79, 95, 79, 46, 57, 60, 58, 60, 71, 68, 80, 57, 62, 67, 89, 68, 99, 70, 46, 72, 63, 99, 67, 76, 57, 65, 61, 65, 57, 58, 74, 65, 62, 51, 57, 52, 80, 68, 89, 65, 49, 60, 62, 65, 82, 61, 71, 52, 73, 75, 76, 81, 53, 84, 67, 66, 60, 66, 68, 79, 64, 66, 69, 75, 60, 93, 50, 49, 62, 61, 67, 67, 63, 87, 66, 80, 56, 65, 71, 59, 58, 76, 79, 67, 50, 62, 75, 56, 94, 63, 61, 50, 60, 69, 76, 60, 62, 60, 68, 61, 92, 60, 55, 67, 51, 60, 80, 72, 59, 67, 56, 62, 55, 59, 61, 53, 57, 57, 51, 68, 55, 57, 58, 68, 89, 53, 115, 84, 65, 56, 72, 71, 68, 72, 47, 63, 59, 66, 61, 89, 100, 90, 61, 64, 58, 53, 66, 62, 83, 64, 64, 66, 59, 67, 63, 76, 81, 78, 61, 66, 49, 74, 79, 56, 81, 80, 68, 65, 60, 75, 63, 87, 63, 57, 59, 69, 54, 68, 66, 59, 61, 71, 78, 50, 83, 63, 73, 56, 65, 64, 63, 69, 68, 64, 71, 63, 66, 50, 58, 49, 53, 69, 70, 56, 60, 64, 64, 71, 82, 65, 66, 52, 58, 90, 66, 63, 61, 52, 59, 73, 55, 92, 68, 51, 58, 70, 71, 52, 62, 99, 64, 54, 61, 89, 98, 65, 63, 61, 58, 73, 58, 58, 59, 55, 98, 68, 57, 60, 51, 61, 68, 71, 59, 61, 57, 48, 80, 56, 69, 64, 70, 58, 53, 55, 64, 60, 54, 57, 55, 67, 68, 83, 101, 48, 53, 90, 66, 73, 58, 61, 57, 59, 55, 57, 54, 62, 59, 63, 64, 64, 56, 55, 63, 63, 65, 60, 82, 53, 71, 66, 72, 71, 61, 89, 59, 91, 70, 110, 68, 60, 58, 64, 43, 57, 65, 67, 70, 59, 70, 70, 50, 59, 58, 66, 81, 55, 70, 80, 54, 68, 71, 72, 58, 55, 65, 63, 84, 62, 63, 53, 65, 62, 62, 67, 55, 58, 90, 74, 97, 68, 57, 53, 60, 66, 68, 62, 57, 98, 57, 69, 65, 71, 67, 56, 59, 61, 62, 66, 65, 70, 48, 65, 55, 76, 71, 55, 62, 77, 52, 65, 55, 72, 64, 70, 53, 77, 54, 64, 60, 61, 69, 73, 54, 67, 75, 60, 63, 86, 49, 54, 76, 62, 86, 54, 66, 64, 73, 66, 106, 64, 57, 64, 94, 61, 67, 75, 64, 64, 63, 73, 54, 66, 60, 67, 59, 77, 61, 75, 65, 64, 68, 55, 73, 75, 63, 68, 69, 61, 54, 60, 73, 67, 74, 57, 76, 65, 58, 57, 53, 61, 71, 74, 52, 81, 52, 96, 53, 100, 66, 60, 71, 58, 55, 94, 61, 64, 97, 57, 64, 52, 62, 59, 75, 80, 68, 87, 55, 56, 65, 104, 83, 67, 56, 65, 66, 80, 52, 56, 76, 51, 80, 79, 54, 66, 80, 59, 56, 45, 49, 58, 65, 58, 66, 74, 65, 62, 53, 69, 103, 62, 72, 48, 85, 81, 66, 73, 57, 61, 83, 51, 70, 67, 76, 58, 68, 73, 51, 67, 47, 60, 64, 50, 58, 99, 74, 79, 88, 108, 78, 76, 45, 44, 84, 57, 117, 57, 88, 58, 53, 74, 39, 66, 97, 61, 44, 58, 56, 72, 58, 49, 69, 67, 58, 74, 60, 66, 104, 50, 59, 63, 58, 73, 76, 66, 61, 60, 60, 63, 57, 76, 46, 68, 74, 54, 57, 74, 55, 79, 51, 57, 70, 80, 65, 58, 64, 59, 68, 62, 65, 53, 60, 71, 53, 71, 49, 75, 55, 79, 85, 61, 55, 77, 76, 74, 87, 56, 62, 67, 66, 61, 63, 51, 67, 86, 100, 58, 62, 53, 69, 64, 63, 43, 54, 63, 56, 75, 60, 65, 54, 68, 49, 62, 56, 41, 58, 78, 82, 63, 63, 73, 67, 78, 49, 49, 67, 48, 55, 82, 69, 57, 58, 49, 50, 59, 71, 74, 68, 56, 52, 74, 55, 71, 58, 46, 72, 80, 49, 55, 51, 110, 86, 54, 91, 81, 79, 73, 47, 60, 74, 56, 69, 100, 51, 52, 73, 63, 53, 70, 83, 68, 83, 67, 93, 75, 57, 56, 52, 64, 56, 73, 56, 64, 43, 83, 52, 64, 65, 53, 55, 68, 58, 53, 102, 49, 62, 81, 81, 68, 65, 61, 58, 57, 90, 48, 91, 68, 76, 69, 53, 60, 71, 89, 51, 61, 87, 65, 52, 60, 70, 75, 94, 51, 75, 53, 56, 52, 74, 62, 53, 50, 61, 52, 56, 75, 68, 84, 72, 51, 57, 80, 73, 99, 65, 44, 68, 66, 84, 64, 67, 37, 70, 56, 74, 78, 44, 84, 48, 56, 63, 66, 65, 66, 66, 57, 53, 56, 66, 92, 69, 81, 55, 91, 64, 69, 82, 66, 54, 56, 54, 56, 54, 47, 58, 56, 50, 53, 49, 47, 59, 61, 84, 61, 72, 81, 38, 71, 40, 107, 59, 59, 55, 52, 82, 41, 69, 52, 67, 41, 97, 89, 80, 55, 79, 72, 54, 52, 63, 76, 58, 52, 71, 49, 41, 51, 75, 58, 77, 59, 75, 63, 80, 54, 63, 59, 82, 58, 68, 86, 63, 75, 66, 59, 59, 79, 56, 61, 52, 50, 65, 51, 74, 65, 82, 85, 80, 73, 52, 64, 53, 61, 60, 47, 58, 46, 71, 117, 63, 84, 152, 62, 61, 48, 123, 60, 57, 67, 58, 57, 88, 44, 77, 70, 45, 43, 99, 67, 52, 58, 48, 59, 85, 71, 72, 73, 53, 65, 66, 75, 66, 54, 69, 70, 59, 58, 57, 60, 55, 88, 99, 72, 65, 75, 53, 68, 59, 81, 49, 60, 70, 52, 79, 43, 64, 54, 73, 63, 70, 70, 70, 89, 77, 59, 101, 75, 68, 69, 55, 47, 56, 53, 68, 59, 56, 53, 65, 78, 70, 73, 56, 74, 50, 69, 107, 55, 56, 89, 78, 68, 57, 57, 63, 63, 66, 73, 81, 49, 54, 75, 69, 77, 70, 59, 48, 56, 84, 58, 70, 81, 89, 54, 70, 74, 50, 68, 98, 78, 52, 62, 49, 60, 71, 47, 74, 53, 46, 60, 90, 83, 58, 97, 71, 72, 63, 84, 57, 57, 109, 42, 81, 68, 113, 61, 62, 63, 69, 66, 62, 56, 63, 92, 65, 72, 57, 103, 73, 61, 77, 60, 64, 88, 67, 76, 83, 67, 88, 86, 74, 87, 58, 57, 123, 94, 67, 53, 65, 69, 75, 65, 64, 59, 64, 54, 76, 84, 56, 52, 65, 62, 67, 75, 46, 89, 47, 57, 76, 97, 69, 54, 73, 71, 62, 55, 69, 70, 43, 50, 63, 79, 99, 54, 54, 76, 73, 60, 55, 76, 55, 49, 68, 74, 106, 59, 64, 66, 97, 64, 64, 90, 112, 70, 57, 73, 50, 61, 58, 63, 52, 61, 56, 50, 78, 74, 64, 63, 69, 62, 61, 67, 91, 59, 64, 69, 53, 46, 62, 68, 71, 68, 67, 70, 48, 81, 71, 48, 117, 56, 53, 58, 48, 59, 47, 60, 55, 55, 83, 78, 71, 62, 73, 55, 45, 74, 63, 69, 58, 67, 64, 62, 64, 49, 54, 90, 57, 62, 75, 110, 71, 64, 54, 48, 56, 60, 64, 55, 75, 57, 105, 49, 66, 67, 82, 72, 61, 60, 60, 53, 62, 78, 58, 42, 63, 54, 52, 60, 101, 57, 64, 61, 57, 56, 59, 66, 75, 57, 62, 60, 73, 49, 66, 68, 103, 69, 77, 63, 41, 103, 52, 69, 66, 72, 58, 68, 58, 55, 44, 61, 62, 74, 70, 65, 53, 44, 55, 90, 67, 58, 54, 70, 70, 71, 60, 57, 47, 97, 86, 56, 74, 49, 59, 70, 89, 91, 65, 73, 40, 73, 63, 86, 72, 57, 64, 53, 52, 71, 62, 92, 66, 48, 49, 66, 83, 72, 70, 68, 50, 45, 68, 66, 55, 68, 57, 84, 117, 69, 64, 76, 52, 72, 76, 61, 68, 57, 56, 76, 66, 71, 60, 62, 60, 54, 64, 53, 76, 70, 56, 58, 63, 74, 53, 63, 54, 56, 69, 75, 107, 54, 82, 58, 52, 145, 71, 60, 56, 65, 54, 72, 55, 55, 51, 87, 59, 47, 65, 49, 67, 74, 50, 71, 61, 54, 63, 53, 55, 82, 71, 54, 64, 67, 100, 60, 56, 94, 65, 51, 74, 66, 83, 80, 45, 64, 49, 57, 62, 55, 74, 55, 75, 86, 67, 79, 37, 65, 53, 65, 62, 67, 63, 58, 52, 52, 62, 65, 59, 60, 77, 83, 59, 71, 54, 58, 66, 57, 51, 56, 55, 53, 66, 54, 58, 54, 52, 50, 54, 80, 63, 55, 91, 53, 55, 58, 60, 74, 51, 70, 61, 56, 68, 60, 55, 70, 69, 56, 54, 59, 56, 66, 81, 67, 59, 54, 59, 72, 58, 57, 67, 59, 40, 60, 55, 66, 53, 60, 70, 61, 63, 59, 55, 32, 59, 54, 64, 77, 77, 119, 35, 109, 68, 67, 47, 55, 80, 73, 78, 122, 62, 141, 56, 101, 64, 58, 87, 46, 75, 52, 56, 58, 78, 68, 57, 76, 70, 63, 55, 70, 58, 73, 102, 60, 63, 56, 75, 64, 51, 62, 71, 55, 57, 57, 55, 80, 85, 54, 55, 80, 64, 63, 68, 59, 59, 68, 85, 60, 57, 52, 69, 49, 56, 79, 103, 50, 59, 62, 52, 79, 56, 74, 60, 74, 72, 101, 72, 64, 59, 79, 76, 56, 74, 57, 62, 65, 112, 49, 58, 58, 61, 62, 58, 49, 100, 52, 82, 57, 66, 72, 58, 64, 130, 59, 96, 66, 52, 108, 67, 53, 69, 76, 59, 61, 82, 74, 68, 54, 71, 73, 51, 67, 75, 62, 61, 56, 56, 55, 55, 69, 79, 69, 63, 66, 59, 61, 84, 41, 59, 49, 42, 89, 47, 60, 59, 77, 47, 81, 68, 69, 35, 52, 63, 49, 75, 68, 73, 86, 84, 52, 111, 94, 86, 103, 58, 42, 72, 66, 50, 58, 54, 47, 70, 54, 72, 61, 60, 57, 69, 67, 56, 93, 53, 97, 80, 75, 101, 63, 74, 71, 80, 59, 72, 78, 62, 84, 48, 58, 56, 77, 83, 49, 59, 53, 64, 62, 65, 73, 52, 67, 60, 73, 74, 63, 42, 62, 72, 67, 78, 135, 71, 73, 46, 72, 81, 76, 64, 71, 50, 61, 63, 80, 73, 55, 60, 34, 47, 69, 61, 86, 58, 65, 63, 66, 91, 51, 58, 60, 83, 73, 79, 73, 44, 85, 73, 51, 67, 50, 73, 89, 72, 110, 73, 69, 101, 76, 67, 83, 55, 68, 53, 83, 50, 72, 43, 69, 77, 94, 52, 72, 70, 59, 82, 51, 59, 72, 53, 81, 58, 70, 84, 118, 53, 77, 63, 75, 52, 61, 66, 57, 65, 62, 86, 63, 70, 60, 97, 68, 60, 47, 67, 31, 80, 70, 52, 100, 72, 90, 58, 59, 56, 75, 71, 46, 75, 29, 78, 81, 58, 63, 60, 98, 58, 78, 66, 69, 72, 52, 90, 47, 86, 51, 61, 62, 63, 54, 68, 69, 56, 90, 78, 81, 54, 64, 51, 82, 50, 45, 86, 62, 64, 40, 78, 63, 83, 49, 51, 63, 73, 53, 51, 62, 112, 58, 72, 65, 66, 58, 52, 78, 71, 53, 82, 75, 73, 75, 80, 54, 63, 97, 45, 58, 63, 77, 65, 59, 54, 76, 63, 64, 57, 57, 61, 69, 58, 118, 57, 67, 72, 66, 74, 66, 85, 63, 68, 79, 50, 78, 50, 61, 54, 72, 77, 52, 87, 69, 51, 60, 69, 65, 61, 71, 58, 53, 48, 57, 67, 78, 59, 83, 84, 67, 69, 71, 53, 69, 46, 77, 47, 56, 66, 47, 50, 87, 46, 70, 64, 58, 58, 63, 63, 64, 63, 65, 129, 64, 47, 60, 63, 79, 47, 63, 58, 64, 53, 68, 74, 60, 55, 65, 68, 79, 80, 93, 59, 73, 81, 54, 49, 56, 64, 71, 57, 87, 83, 78, 71, 39, 58, 69, 52, 78, 54, 81, 64, 55, 60, 74, 50, 60, 61, 65, 69, 41, 67, 51, 74, 70, 57, 69, 69, 73, 70, 74, 64, 56, 83, 55, 74, 58, 54, 51, 76, 80, 60, 63, 73, 64, 64, 67, 54, 63, 57, 61, 84, 60, 71, 70, 74, 51, 47, 123, 77, 71, 54, 87, 77, 61, 52, 60, 59, 51, 64, 72, 62, 63, 57, 62, 51, 63, 60, 70, 81, 41, 45, 60, 83, 60, 57, 65, 53, 50, 51, 84, 47, 52, 83, 60, 88, 79, 62, 57, 72, 64, 64, 84, 49, 60, 69, 78, 69, 51, 60, 67, 54, 72, 60, 80, 73, 68, 57, 64, 57, 47, 88, 40, 51, 97, 71, 75, 84, 65, 69, 85, 94, 60, 57, 47, 56, 54, 115, 79, 57, 74, 79, 65, 74, 67, 60, 82, 77, 36, 60, 58, 64, 49, 60, 50, 70, 89, 64, 38, 56, 75, 68, 103, 91, 60, 57, 46, 55, 50, 67, 62, 70, 73, 63, 74, 65, 56, 62, 62, 67, 56, 65, 77, 66, 51, 44, 70, 74, 69, 61, 61, 68, 70, 93, 81, 45, 59, 54, 56, 64, 65, 59, 69, 81, 56, 70, 69, 58, 50, 63, 69, 75, 87, 51, 80, 89, 61, 87, 60, 58, 58, 37, 78, 96, 76, 92, 77, 61, 68, 64, 69, 65, 74, 85, 85, 52, 51, 91, 77, 68, 65, 67, 53, 96, 55, 78, 72, 39, 76, 55, 64, 62, 56, 48, 76, 66, 61, 35, 66, 74, 74, 41, 53, 78, 53, 79, 60, 74, 63, 58, 52, 93, 53, 66, 82, 60, 50, 74, 47, 54, 75, 72, 67, 67, 52, 62, 75, 84, 59, 56, 52, 60, 58, 62, 66, 53, 54, 47, 125, 52, 79, 52, 67, 80, 68, 63, 61, 51, 61, 79, 63, 78, 82, 46, 87, 64, 82, 66, 72, 57, 54, 59, 60, 61, 73, 53, 49, 57, 62, 52, 60, 99, 70, 56, 72, 79, 70, 57, 86, 53, 56, 81, 68, 59, 59, 57, 66, 35, 56, 64, 62, 58, 64, 77, 56, 78, 68, 81, 82, 55, 66, 73, 53, 54, 106, 84, 79, 95, 75, 50, 50, 59, 75, 80, 61, 62, 46, 80, 66, 96, 52, 84, 76, 67, 72, 44, 96, 64, 54, 62, 72, 62, 47, 53, 48, 61, 61, 62, 70, 64, 41, 65, 78, 67, 45, 58, 84, 48, 56, 69, 68, 85, 64, 41, 89, 54, 54, 57, 65, 89, 44, 86, 38, 70, 82, 58, 66, 85, 58, 85, 67, 53, 52, 69, 59, 53, 56, 89, 63, 74, 71, 57, 68, 53, 61, 61, 62, 71, 73, 80, 65, 67, 71, 56, 89, 48, 51, 163, 89, 60, 81, 54, 60, 85, 51, 68, 65, 65, 51, 47, 42, 57, 49, 60, 49, 69, 67, 51, 70, 53, 62, 75, 43, 80, 69, 85, 79, 52, 75, 71, 80, 70, 64, 64, 84, 58, 63, 52, 55, 86, 65, 73, 57, 62, 59, 84, 71, 90, 65, 58, 65, 65, 51, 63, 50, 98, 61, 81, 64, 56, 63, 71, 58, 84, 112, 69, 54, 70, 60, 46, 74, 63, 62, 52, 49, 60, 68, 38, 52, 53, 71, 92, 61, 58, 56, 58, 53, 85, 86, 59, 71, 105, 82, 49, 54, 49, 64, 60, 62, 57, 59, 57, 56, 51, 129, 64, 62, 61, 66, 50, 71, 63, 73, 52, 80, 67, 76, 64, 54, 63, 66, 73, 62, 64, 62, 59, 83, 83, 58, 54, 115, 73, 73, 85, 49, 93, 49, 65, 63, 78, 99, 54, 79, 64, 62, 68, 58, 73, 68, 60, 63, 112, 103, 75, 58, 55, 86, 57, 90, 68, 59, 106, 69, 67, 63, 93, 63, 77, 66, 64, 73, 71, 57, 54, 87, 58, 65, 51, 61, 64, 58, 65, 59, 52, 54, 84, 76, 73, 52, 54, 65, 79, 63, 59, 54, 79, 64, 77, 52, 57, 69, 47, 69, 60, 80, 67, 75, 63, 63, 63, 62, 60, 54, 65, 91, 54, 65, 60, 85, 77, 76, 59, 55, 60, 84, 69, 56, 38, 52, 59, 99, 56, 65, 61, 98, 72, 92, 59, 44, 71, 65, 50, 61, 59, 56, 129, 63, 84, 77, 67, 67, 70, 83, 68, 91, 56, 72, 82, 74, 57, 43, 65, 73, 50, 48, 50, 51, 53, 78, 71, 65, 68, 53, 51, 71, 68, 58, 70, 47, 69, 102, 60, 58, 62, 34, 77, 112, 74, 94, 90, 74, 62, 58, 75, 56, 70, 97, 69, 44, 56, 70, 72, 70, 77, 85, 75, 65, 79, 90, 46, 47, 66, 47, 59, 54, 74, 101, 59, 61, 67, 73, 60, 50, 57, 62, 74, 72, 70, 57, 68, 60, 55, 67, 58, 62, 70, 56, 55, 60, 75, 110, 63, 70, 65, 65, 71, 70, 70, 64, 55, 69, 73, 64, 62, 69, 79, 44, 62, 54, 52, 62, 63, 54, 69, 61, 96, 70, 78, 64, 58, 55, 58, 92, 67, 121, 51, 62, 70, 70, 91, 50, 71, 64, 55, 59, 51, 49, 57, 63, 50, 64, 46, 49, 108, 55, 56, 82, 61, 61, 75, 48, 65, 65, 93, 81, 89, 61, 72, 48, 85, 60, 67, 55, 58, 57, 54, 56, 75, 81, 62, 56, 58, 44, 95, 63, 54, 72, 79, 59, 73, 66, 72, 65, 45, 62, 90, 80, 65, 85, 64, 81, 71, 118, 61, 73, 53, 51, 64, 55, 43, 66, 86, 56, 51, 72, 61, 58, 57, 39, 50, 53, 60, 64, 53, 83, 63, 75, 108, 62, 62, 56, 68, 52, 69, 73, 58, 63, 56, 70, 74, 84, 65, 65, 63, 78, 63, 58, 59, 68, 61, 51, 63, 59, 58, 54, 53, 49, 54, 70, 69, 58, 46, 65, 61, 69, 78, 64, 62, 47, 67, 57, 78, 55, 74, 74, 68, 59, 95, 53, 61, 58, 84, 72, 72, 55, 59, 84, 90, 25, 70, 47, 40, 49, 90, 81, 61, 60, 58, 73, 68, 53, 82, 63, 95, 69, 58, 56, 73, 66, 66, 52, 55, 104, 65, 62, 55, 63, 46, 69, 61, 74, 68, 60, 72, 56, 61, 91, 57, 75, 55, 47, 55, 66, 57, 41, 78, 44, 63, 57, 65, 72, 48, 62, 61, 44, 66, 65, 38, 58, 84, 61, 66, 77, 85, 63, 46, 59, 64, 53, 87, 48, 47, 62, 49, 87, 59, 63, 82, 56, 46, 66, 77, 68, 76, 93, 82, 64, 46, 73, 56, 65, 66, 62, 59, 64, 56, 58, 71, 93, 87, 73, 63, 67, 51, 61, 83, 84, 45, 56, 52, 106, 65, 128, 72, 64, 63, 50, 69, 64, 64, 53, 59, 82, 43, 70, 51, 85, 74, 64, 65, 53, 52, 62, 59, 84, 55, 59, 60, 60, 70, 70, 62, 77, 84, 29, 69, 77, 62, 87, 65, 48, 63, 70, 76, 75, 77, 65, 38, 62, 40, 69, 64, 63, 62, 71, 58, 102, 72, 74, 81, 53, 77, 63, 55, 81, 81, 77, 58, 63, 51, 51, 56, 91, 50, 57, 70, 91, 71, 53, 51, 77, 70, 61, 68, 63, 63, 55, 109, 54, 67, 52, 58, 72, 68, 55, 87, 71, 86, 61, 108, 80, 65, 68, 61, 54, 54, 69, 64, 69, 64, 72, 59, 50, 65, 84, 50, 60, 80, 82, 60, 39, 62, 87, 79, 73, 62, 84, 53, 57, 62, 57, 59, 68, 60, 46, 70, 62, 70, 69, 54, 54, 67, 66, 64, 55, 45, 57, 69, 49, 64, 57, 53, 52, 74, 125, 40, 79, 67, 79, 56, 71, 59, 79, 55, 57, 59, 60, 65, 89, 73, 87, 41, 79, 45, 61, 67, 69, 72, 68, 49, 41, 65, 60, 63, 53, 56, 104, 109, 71, 57, 69, 57, 55, 75, 52, 50, 75, 49, 69, 44, 88, 93, 72, 71, 76, 59, 74, 69, 88, 64, 37, 49, 65, 69, 62, 65, 82, 53, 65, 76, 63, 66, 44, 55, 73, 70, 77, 71, 85, 61, 63, 57, 60, 57, 78, 71, 66, 65, 65, 75, 57, 34, 72, 54, 76, 53, 97, 105, 83, 76, 55, 61, 55, 59, 53, 76, 73, 104, 44, 68, 66, 70, 58, 70, 64, 66, 71, 65, 61, 52, 53, 56, 105, 51, 59, 82, 48, 80, 52, 72, 60, 63, 80, 61, 58, 50, 79, 100, 63, 90, 67, 51, 74, 69, 65, 85, 51, 58, 65, 63, 76, 92, 60, 66, 68, 57, 48, 87, 62, 61, 71, 40, 55, 74, 59, 48, 58, 50, 68, 58, 66, 73, 78, 57, 85, 67, 61, 53, 41, 73, 69, 74, 73, 63, 53, 62, 96, 69, 47, 51, 77, 63, 57, 52, 40, 58, 52, 75, 62, 53, 67, 55, 65, 59, 80, 62, 65, 67, 55, 43, 77, 47, 69, 46, 63, 57, 63, 55, 56, 75, 71, 79, 48, 125, 52, 81, 79, 61, 89, 46, 76, 71, 71, 64, 52, 74, 75, 64, 56, 67, 58, 49, 59, 81, 83, 56, 70, 46, 73, 61, 68, 104, 78, 63, 54, 70, 82, 69, 74, 60, 79, 77, 61, 70, 62, 69, 65, 54, 62, 66, 81, 42, 38, 64, 69, 68, 62, 58, 39, 113, 88, 54, 56, 69, 66, 85, 47, 63, 43, 59, 57, 62, 65, 64, 62, 65, 61, 56, 100, 56, 61, 72, 62, 59, 63, 60, 50, 58, 71, 70, 81, 71, 58, 53, 71, 79, 73, 64, 68, 64, 62, 58, 41, 64, 71, 132, 75, 75, 62, 75, 66, 72, 90, 63, 55, 68, 60, 72, 90, 68, 80, 96, 52, 51, 49, 63, 40, 105, 61, 93, 75, 64, 64, 69, 43, 70, 59, 63, 35, 61, 37, 59, 64, 60, 65, 68, 72, 66, 64, 61, 67, 72, 73, 74, 43, 48, 58, 93, 77, 57, 56, 55, 48, 73, 55, 57, 84, 79, 47, 59, 66, 62, 58, 59, 75, 65, 75, 55, 57, 63, 69, 74, 42, 57, 70, 59, 56, 80, 59, 63, 45, 59, 66, 55, 43, 82, 79, 61, 57, 47, 77, 58, 52, 103, 76, 57, 62, 67, 58, 69, 50, 79, 68, 62, 62, 70, 57, 88, 65, 57, 69, 51, 41, 54, 75, 80, 71, 89, 65, 56, 55, 56, 50, 47, 55, 94, 79, 61, 54, 60, 68, 53, 62, 83, 118, 57, 55, 65, 55, 61, 91, 61, 99, 73, 84, 62, 65, 68, 74, 82, 66, 63, 114, 54, 51, 67, 75, 68, 63, 54, 53, 67, 53, 63, 50, 48, 56, 44, 87, 65, 63, 61, 67, 87, 66, 58, 60, 60, 66, 45, 57, 51, 61, 62, 87, 62, 71, 48, 53, 88, 68, 62, 90, 89, 62, 58, 71, 69, 67, 70, 59, 89, 47, 67, 68, 58, 72, 56, 107, 68, 61, 72, 65, 64, 62, 63, 73, 72, 63, 64, 46, 63, 77, 98, 72, 66, 50, 60, 81, 52, 64, 59, 60, 67, 89, 57, 56, 82, 54, 71, 64, 47, 53, 80, 83, 65, 63, 71, 72, 65, 76, 67, 60, 69, 59, 71, 62, 65, 57, 53, 71, 71, 43, 75, 72, 71, 40, 78, 70, 66, 68, 65, 63, 75, 59, 68, 104, 62, 57, 57, 58, 43, 60, 63, 81, 88, 60, 53, 66, 55, 64, 64, 64, 64, 64, 120, 77, 86, 60, 64, 61, 73, 61, 73, 52, 94, 47, 83, 55, 71, 56, 59, 52, 54, 57, 60, 51, 58, 71, 68, 71, 67, 69, 89, 59, 73, 72, 76, 59, 75, 78, 47, 46, 94, 69, 46, 67, 81, 55, 60, 61, 89, 56, 65, 52, 76, 76, 50, 91, 73, 86, 60, 83, 58, 58, 77, 56, 62, 55, 53, 56, 62, 59, 63, 45, 66, 77, 57, 50, 76, 73, 49, 73, 56, 53, 73, 68, 59, 69, 62, 65, 69, 58, 58, 76, 52, 58, 62, 53, 61, 70, 72, 46, 67, 65, 69, 67, 59, 70, 77, 67, 69, 51, 56, 71, 70, 52, 70, 76, 66, 54, 57, 54, 49, 74, 72, 53, 69, 58, 53, 57, 135, 44, 61, 72, 59, 79, 55, 64, 65, 59, 66, 75, 73, 54, 98, 49, 66, 81, 66, 80, 67, 53, 61, 54, 87, 51, 54, 77, 57, 66, 70, 58, 62, 75, 83, 66, 69, 55, 47, 54, 57, 66, 58, 64, 47, 55, 84, 58, 74, 66, 60, 63, 81, 92, 50, 65, 76, 70, 74, 58, 75, 79, 96, 118, 49, 59, 69, 48, 70, 54, 95, 84, 60, 58, 55, 72, 69, 61, 62, 48, 57, 60, 52, 84, 62, 86, 67, 67, 70, 59, 51, 55, 60, 58, 59, 49, 59, 39, 72, 61, 63, 77, 73, 67, 64, 77, 70, 59, 54, 59, 66, 64, 102, 61, 54, 67, 90, 64, 60, 77, 56, 72, 64, 49, 65, 99, 65, 60, 93, 71, 74, 67, 63, 70, 62, 63, 59, 93, 40, 66, 70, 51, 60, 84, 58, 54, 84, 54, 56, 59, 53, 58, 45, 61, 71, 43, 58, 61, 61, 68, 69, 63, 69, 77, 68, 61, 51, 86, 53, 76, 67, 84, 73, 69, 69, 65, 78, 79, 67, 69, 68, 74, 64, 60, 78, 62, 51, 58, 54, 51, 79, 55, 67, 77, 66, 61, 92, 55, 72, 68, 49, 62, 51, 55, 67, 65, 70, 53, 72, 70, 130, 62, 69, 62, 54, 56, 42, 56, 79, 52, 81, 67, 45, 83, 66, 56, 74, 55, 71, 84, 50, 58, 67, 62, 66, 35, 57, 65, 84, 56, 59, 48, 58, 39, 77, 65, 91, 75, 83, 77, 79, 49, 72, 61, 64, 84, 66, 75, 84, 58, 63, 81, 74, 59, 76, 68, 67, 65, 61, 47, 77, 73, 62, 67, 53, 53, 60, 57, 69, 62, 63, 76, 57, 74, 57, 78, 136, 58, 71, 64, 52, 97, 63, 63, 47, 63, 64, 51, 54, 76, 62, 58, 59, 80, 67, 62, 81, 76, 62, 62, 50, 98, 63, 50, 76, 56, 65, 64, 64, 60, 67, 80, 45, 50, 86, 63, 183, 58, 71, 50, 75, 76, 61, 65, 64, 73, 56, 50, 67, 66, 64, 36, 97, 52, 67, 60, 51, 58, 61, 70, 62, 53, 58, 60, 53, 57, 47, 47, 88, 75, 67, 90, 71, 78, 112, 115, 61, 59, 61, 106, 88, 67, 64, 54, 57, 61, 72, 65, 72, 63, 66, 76, 92, 57, 52, 68, 69, 93, 74, 69, 58, 73, 55, 67, 34, 44, 74, 80, 54, 82, 73, 62, 80, 72, 77, 61, 72, 53, 46, 62, 62, 46, 77, 60, 58, 84, 45, 93, 50, 33, 75, 83, 58, 64, 69, 54, 54, 64, 58, 70, 50, 71, 54, 46, 67, 73, 65, 63, 76, 73, 61, 65, 71, 55, 78, 58, 57, 93, 78, 54, 63, 70, 35, 71, 64, 62, 48, 59, 47, 50, 78, 73, 58, 61, 60, 73, 94, 62, 80, 76, 77, 115, 73, 49, 72, 65, 52, 53, 53, 81, 69, 82, 57, 70, 56, 77, 84, 53, 67, 59, 64, 72, 78, 53, 67, 85, 132, 68, 73, 50, 88, 64, 70, 57, 61, 46, 67, 62, 62, 41, 65, 70, 61, 54, 65, 57, 72, 81, 66, 103, 58, 64, 64, 77, 49, 93, 86, 67, 87, 69, 53, 64, 58, 57, 72, 67, 53, 77, 80, 60, 57, 74, 63, 70, 64, 51, 62, 64, 54, 60, 45, 60, 107, 69, 57, 47, 68, 31, 79, 73, 62, 59, 66, 51, 59, 61, 71, 58, 73, 58, 58, 53, 72, 90, 68, 77, 53, 49, 70, 58, 73, 53, 62, 65, 70, 62, 71, 80, 60, 76, 48, 67, 64, 60, 50, 62, 73, 89, 67, 77, 76, 61, 54, 69, 68, 95, 63, 68, 69, 53, 45, 61, 58, 67, 64, 73, 55, 64, 64, 107, 72, 63, 99, 52, 78, 58, 57, 62, 75, 67, 69, 69, 58, 60, 71, 72, 63, 74, 49, 56, 38, 77, 55, 66, 53, 72, 65, 68, 61, 65, 88, 56, 96, 50, 66, 48, 58, 69, 74, 58, 58, 64, 48, 65, 76, 100, 64, 66, 57, 44, 64, 68, 57, 88, 58, 54, 62, 74, 63, 71, 75, 108, 75, 60, 60, 65, 117, 51, 68, 97, 54, 58, 82, 67, 35, 81, 35, 63, 67, 79, 80, 52, 67, 67, 96, 86, 53, 44, 60, 62, 56, 46, 63, 54, 66, 62, 49, 77, 73, 94, 71, 62, 53, 58, 70, 54, 68, 72, 51, 61, 65, 72, 87, 76, 66, 93, 74, 86, 69, 108, 60, 65, 68, 61, 73, 47, 42, 49, 62, 45, 73, 56, 56, 60, 66, 59, 66, 43, 48, 82, 69, 50, 60, 69, 89, 48, 69, 59, 76, 73, 87, 51, 65, 67, 68, 50, 57, 72, 68, 58, 56, 76, 50, 81, 60, 49, 72, 51, 65, 63, 69, 69, 92, 57, 55, 121, 84, 67, 55, 64, 64, 61, 59, 69, 67, 62, 47, 48, 71, 65, 76, 44, 80, 86, 53, 75, 52, 127, 55, 74, 50, 80, 68, 60, 71, 77, 95, 53, 70, 59, 57, 81, 77, 66, 70, 63, 57, 129, 84, 60, 57, 45, 76, 59, 51, 78, 61, 143, 64, 60, 53, 47, 104, 76, 74, 57, 72, 78, 66, 64, 66, 58, 55, 66, 61, 45, 67, 51, 73, 68, 66, 82, 63, 80, 50, 60, 61, 67, 66, 65, 120, 62, 61, 73, 63, 79, 72, 71, 71, 67, 88, 98, 112, 60, 44, 61, 59, 54, 77, 74, 63, 58, 75, 53, 56, 70, 76, 62, 54, 66, 63, 80, 62, 57, 79, 56, 83, 78, 66, 69, 63, 67, 54, 40, 62, 69, 61, 59, 68, 44, 61, 65, 93, 56, 48, 29, 56, 60, 50, 69, 71, 72, 74, 68, 70, 61, 53, 97, 66, 48, 51, 60, 64, 68, 49, 68, 60, 63, 56, 55, 66, 86, 74, 60, 66, 55, 67, 70, 56, 73, 41, 69, 71, 85, 85, 63, 68, 95, 76, 51, 61, 47, 54, 94, 62, 78, 107, 73, 103, 66, 49, 67, 55, 56, 57, 70, 83, 64, 84, 58, 51, 50, 55, 66, 63, 61, 67, 82, 71, 49, 65, 91, 60, 70, 47, 69, 46, 56, 66, 73, 106, 60, 59, 94, 59, 75, 70, 62, 82, 68, 65, 73, 75, 74, 64, 80, 52, 61, 76, 62, 60, 84, 82, 74, 63, 63, 60, 52, 93, 81, 57, 67, 57, 64, 65, 65, 46, 82, 105, 47, 86, 89, 63, 84, 76, 59, 65, 73, 101, 73, 68, 56, 44, 73, 69, 60, 60, 85, 106, 79, 47, 64, 61, 56, 45, 53, 60, 46, 64, 79, 50, 62, 53, 57, 58, 92, 47, 78, 55, 86, 58, 50, 85, 64, 75, 59, 44, 67, 62, 80, 97, 62, 71, 67, 70, 78, 52, 73, 69, 57, 63, 67, 74, 49, 69, 57, 58, 63, 50, 68, 86, 55, 53, 53, 58, 69, 57, 66, 56, 83, 60, 53, 57, 102, 45, 63, 51, 48, 123, 79, 82, 87, 65, 50, 74, 60, 60, 65, 44, 129, 73, 52, 55, 44, 62, 79, 60, 65, 101, 65, 72, 62, 58, 156, 49, 49, 49, 47, 56, 50, 65, 60, 67, 71, 59, 66, 85, 73, 65, 47, 69, 48, 55, 61, 64, 66, 70, 72, 50, 72, 45, 47, 46, 50, 77, 83, 59, 66, 53, 78, 45, 66, 57, 81, 66, 60, 89, 62, 57, 67, 69, 54, 58, 62, 64, 66, 68, 62, 94, 101, 100, 67, 53, 66, 62, 61, 62, 51, 67, 56, 44, 109, 62, 67, 61, 54, 44, 75, 65, 45, 70, 68, 64, 73, 80, 50, 51, 54, 66, 72, 60, 68, 70, 58, 57, 82, 63, 66, 63, 66, 81, 62, 61, 58, 68, 37, 63, 81, 60, 73, 46, 45, 67, 52, 61, 55, 73, 63, 124, 68, 60, 78, 74, 74, 64, 58, 81, 61, 74, 52, 64, 58, 75, 45, 57, 66, 64, 50, 63, 96, 73, 72, 60, 54, 48, 53, 45, 64, 64, 63, 81, 55, 80, 64, 79, 61, 62, 69, 78, 76, 78, 75, 50, 123, 67, 86, 50, 62, 87, 74, 58, 30, 28, 65, 80, 60, 76, 79, 77, 77, 74, 76, 53, 67, 60, 58, 58, 64, 71, 78, 49, 60, 53, 48, 48, 59, 58, 56, 79, 56, 70, 58, 59, 88, 65, 68, 60, 70, 57, 63, 57, 73, 63, 67, 41, 69, 61, 54, 94, 72, 52, 51, 57, 58, 58, 90, 62, 50, 52, 45, 55, 86, 77, 69, 60, 73, 59, 80, 54, 73, 49, 63, 43, 43, 50, 51, 65, 82, 50, 64, 63, 71, 91, 54, 60, 57, 65, 53, 50, 53, 47, 63, 61, 65, 48, 73, 74, 79, 50, 72, 56, 69, 59, 58, 77, 65, 69, 75, 74, 67, 83, 76, 59, 65, 53, 54, 72, 100, 62, 75, 56, 68, 93, 62, 56, 73, 51, 59, 68, 80, 54, 59, 55, 54, 52, 73, 79, 69, 51, 56, 68, 60, 74, 98, 75, 72, 69, 52, 78, 63, 67, 98, 59, 68, 60, 63, 62, 59, 79, 58, 72, 47, 54, 50, 50, 78, 53, 66, 67, 74, 72, 71, 49, 63, 57, 60, 50, 73, 52, 52, 68, 56, 62, 81, 68, 88, 74, 49, 97, 36, 63, 72, 72, 49, 51, 78, 69, 59, 78, 78, 76, 78, 62, 81, 54, 71, 93, 60, 75, 56, 65, 60, 81, 89, 68, 47, 63, 58, 132, 49, 53, 78, 66, 55, 75, 61, 56, 67, 46, 68, 55, 59, 64, 57, 64, 37, 58, 97, 45, 55, 75, 59, 83, 85, 56, 60, 100, 68, 77, 49, 69, 68, 42, 63, 56, 53, 52, 79, 54, 62, 83, 54, 66, 79, 84, 78, 62, 60, 90, 64, 63, 67, 104, 66, 69, 66, 53, 77, 71, 64, 72, 101, 55, 55, 103, 54, 74, 74, 92, 72, 58, 54, 53, 60, 92, 60, 54, 80, 64, 66, 55, 66, 80, 65, 71, 47, 82, 55, 85, 63, 95, 72, 75, 80, 52, 47, 73, 80, 81, 60, 61, 70, 48, 94, 46, 55, 82, 65, 75, 66, 82, 89, 62, 65, 68, 82, 66, 94, 57, 51, 59, 63, 63, 69, 62, 51, 88, 66, 89, 62, 77, 72, 72, 78, 56, 45, 49, 73, 53, 65, 66, 47, 65, 59, 57, 91, 72, 58, 83, 73, 74, 75, 58, 76, 70, 82, 92, 56, 65, 48, 66, 64, 82, 99, 54, 76, 54, 62, 61, 50, 75, 54, 65, 58, 45, 66, 54, 61, 58, 76, 44, 69, 75, 77, 82, 64, 58, 62, 93, 45, 63, 48, 47, 70, 60, 59, 55, 97, 60, 70, 59, 80, 72, 111, 79, 51, 68, 79, 45, 71, 64, 56, 61, 56, 90, 90, 65, 58, 100, 54, 50, 55, 67, 73, 81, 52, 67, 83, 74, 64, 50, 63, 62, 128, 70, 62, 78, 66, 64, 79, 87, 77, 73, 63, 73, 57, 64, 100, 69, 50, 95, 69, 81, 61, 64, 63, 73, 80, 69, 80, 65, 53, 96, 52, 48, 61, 56, 75, 73, 69, 60, 47, 69, 55, 66, 84, 110, 68, 86, 71, 108, 80, 74, 61, 60, 61, 76, 57, 62, 77, 80, 61, 78, 60, 81, 64, 59, 71, 85, 50, 85, 104, 64, 52, 76, 73, 59, 79, 84, 54, 53, 56, 58, 62, 48, 50, 85, 72, 60, 57, 52, 56, 59, 67, 61, 64, 57, 90, 75, 72, 69, 57, 51, 52, 62, 70, 63, 48, 77, 74, 51, 61, 72, 78, 58, 70, 86, 62, 57, 41, 60, 68, 57, 51, 52, 66, 117, 112, 68, 63, 67, 86, 62, 60, 66, 52, 93, 75, 51, 62, 75, 86, 72, 64, 47, 49, 47, 55, 74, 70, 63, 66, 102, 82, 63, 50, 44, 83, 47, 64, 50, 87, 60, 60, 76, 82, 73, 99, 93, 55, 54, 69, 63, 53, 70, 71, 70, 74, 73, 68, 60, 66, 67, 68, 60, 62, 63, 76, 77, 64, 72, 64, 60, 96, 69, 79, 81, 54, 42, 56, 59, 64, 56, 63, 59, 72, 97, 65, 63, 70, 68, 60, 63, 64, 39, 65, 52, 63, 63, 91, 67, 69, 150, 57, 63, 52, 73, 58, 68, 59, 50, 59, 78, 56, 39, 97, 52, 51, 54, 55, 54, 130, 68, 65, 62, 54, 58, 78, 54, 49, 64, 65, 65, 72, 40, 69, 55, 69, 70, 64, 59, 64, 64, 63, 68, 56, 72, 57, 60, 47, 100, 55, 67, 61, 46, 53, 70, 80, 80, 52, 60, 63, 67, 90, 69, 41, 50, 55, 55, 47, 77, 55, 75, 88, 84, 70, 62, 63, 74, 45, 67, 62, 49, 70, 66, 69, 56, 70, 81, 60, 87, 52, 59, 52, 54, 63, 76, 67, 64, 66, 82, 55, 45, 51, 91, 73, 38, 46, 56, 75, 60, 73, 89, 81, 50, 52, 64, 47, 51, 60, 67, 99, 69, 83, 57, 72, 48, 40, 73, 63, 50, 74, 56, 75, 63, 81, 72, 72, 61, 47, 36, 74, 66, 85, 56, 85, 56, 85, 46, 64, 55, 55, 78, 60, 52, 74, 76, 81, 59, 52, 55, 58, 58, 63, 54, 65, 60, 67, 65, 56, 76, 66, 68, 63, 53, 58, 71, 56, 115, 57, 62, 49, 74, 59, 57, 61, 94, 76, 64, 59, 63, 58, 69, 61, 52, 73, 51, 50, 57, 70, 82, 61, 45, 65, 70, 45, 52, 72, 41, 48, 59, 66, 61, 74, 64, 76, 68, 46, 78, 63, 83, 54, 54, 63, 78, 88, 66, 85, 60, 65, 96, 60, 56, 60, 52, 63, 100, 47, 77, 71, 75, 60, 108, 61, 104, 56, 84, 63, 107, 49, 44, 67, 59, 52, 61, 86, 52, 60, 54, 77, 56, 71, 51, 50, 44, 79, 80, 79, 74, 63, 80, 68, 131, 62, 59, 83, 61, 67, 47, 67, 46, 72, 61, 65, 63, 52, 71, 69, 79, 79, 60, 66, 45, 85, 66, 59, 66, 68, 52, 52, 77, 73, 82, 65, 56, 65, 80, 78, 62, 70, 85, 62, 62, 66, 75, 60, 64, 98, 61, 65, 74, 37, 58, 51, 68, 57, 80, 64, 73, 57, 53, 60, 87, 58, 49, 58, 54, 63, 51, 84, 66, 83, 68, 75, 79, 61, 44, 64, 54, 60, 58, 74, 62, 56, 59, 62, 59, 58, 61, 63, 55, 77, 79, 57, 60, 73, 61, 63, 76, 73, 65, 58, 62, 46, 64, 52, 63, 57, 87, 59, 55, 60, 58, 66, 46, 53, 48, 75, 49, 39, 54, 67, 71, 81, 53, 55, 75, 58, 53, 69, 44, 70, 78, 66, 67, 56, 65, 50, 58, 59, 60, 70, 69, 60, 59, 67, 65, 97, 93, 65, 45, 49, 62, 81, 58, 49, 60, 57, 51, 56, 53, 65, 46, 64, 47, 58, 46, 68, 79, 51, 62, 50, 80, 74, 65, 79, 48, 50, 62, 81, 57, 63, 96, 63, 69, 57, 51, 81, 60, 82, 88, 42, 52, 80, 73, 88, 65, 56, 62, 45, 62, 45, 77, 66, 63, 55, 59, 82, 71, 55, 50, 69, 55, 50, 68, 70, 62, 59, 109, 69, 122, 68, 92, 46, 83, 55, 117, 54, 48, 60, 77, 77, 71, 61, 80, 94, 135, 61, 70, 61, 64, 64, 84, 43, 45, 71, 56, 85, 72, 61, 64, 76, 66, 57, 63, 94, 65, 51, 59, 62, 89, 69, 46, 75, 70, 68, 65, 85, 50, 50, 63, 73, 80, 56, 71, 52, 63, 62, 57, 76, 76, 74, 75, 53, 90, 63, 63, 61, 55, 67, 54, 56, 73, 75, 56, 78, 58, 62, 54, 74, 59, 61, 53, 75, 82, 98, 131, 87, 70, 74, 42, 171, 80, 65, 45, 49, 57, 68, 80, 71, 45, 52, 61, 64, 74, 47, 79, 59, 54, 40, 62, 44, 73, 61, 58, 74, 58, 55, 77, 61, 69, 88, 61, 64, 62, 67, 55, 84, 55, 83, 45, 58, 59, 67, 59, 64, 70, 69, 81, 51, 57, 74, 76, 60, 58, 94, 61, 67, 51, 79, 60, 71, 85, 52, 69, 65, 48, 67, 69, 67, 62, 48, 43, 76, 54, 57, 72, 46, 90, 75, 58, 67, 76, 79, 60, 72, 83, 73, 60, 83, 60, 74, 41, 60, 55, 59, 46, 62, 71, 58, 58, 60, 49, 60, 51, 64, 67, 65, 71, 53, 63, 62, 87, 78, 63, 79, 187, 54, 75, 49, 55, 55, 106, 66, 72, 66, 66, 62, 48, 64, 50, 58, 60, 60, 66, 61, 70, 68, 58, 63, 82, 75, 57, 75, 60, 56, 89, 65, 60, 55, 74, 86, 88, 69, 49, 93, 67, 73, 58, 85, 60, 60, 82, 64, 71, 53, 65, 52, 56, 52, 67, 74, 65, 68, 54, 61, 81, 49, 60, 34, 66, 59, 58, 59, 73, 62, 58, 54, 67, 58, 61, 60, 55, 49, 68, 69, 57, 77, 73, 55, 61, 88, 52, 71, 68, 74, 53, 60, 80, 58, 56, 89, 52, 76, 46, 69, 106, 64, 65, 93, 68, 74, 60, 67, 62, 51, 47, 54, 49, 71, 85, 51, 57, 66, 60, 63, 52, 84, 125, 146, 51, 59, 71, 48, 64, 77, 60, 59, 56, 68, 62, 81, 48, 54, 73, 66, 58, 68, 55, 55, 63, 52, 57, 57, 67, 50, 50, 52, 53, 60, 72, 65, 53, 77, 65, 67, 91, 59, 60, 85, 69, 67, 80, 79, 84, 55, 89, 92, 67, 66, 97, 83, 68, 62, 30, 74, 46, 67, 58, 62, 66, 53, 48, 44, 60, 61, 56, 56, 81, 54, 39, 57, 95, 63, 56, 77, 49, 79, 90, 121, 75, 58, 66, 63, 55, 59, 56, 56, 47, 93, 50, 49, 86, 91, 77, 48, 57, 69, 48, 59, 67, 68, 62, 65, 100, 66, 52, 59, 55, 92, 53, 64, 57, 71, 58, 101, 77, 39, 52, 62, 67, 71, 59, 59, 85, 85, 65, 85, 49, 53, 72, 60, 65, 106, 56, 64, 58, 58, 58, 50, 50, 64, 61, 65, 65, 65, 52, 69, 61, 79, 77, 54, 67, 77, 62, 58, 52, 58, 79, 82, 76, 55, 75, 64, 54, 70, 59, 61, 80, 91, 58, 48, 78, 59, 64, 67, 51, 61, 70, 58, 75, 61, 60, 71, 52, 61, 68, 60, 40, 54, 65, 81, 69, 58, 55, 72, 64, 64, 62, 58, 59, 51, 59, 62, 48, 81, 55, 63, 58, 59, 66, 72, 55, 70, 56, 59, 72, 60, 56, 55, 71, 57, 74, 61, 54, 67, 82, 95, 74, 56, 85, 55, 55, 59, 53, 149, 57, 55, 67, 62, 46, 59, 57, 62, 62, 56, 59, 55, 72, 66, 60, 62, 61, 70, 51, 50, 58, 64, 87, 45, 52, 111, 94, 46, 59, 57, 72, 51, 77, 65, 48, 66, 66, 42, 52, 59, 67, 58, 68, 61, 57, 62, 59, 59, 53, 61, 56, 70, 61, 60, 106, 73, 54, 63, 68, 80, 46, 54, 59, 57, 64, 59, 95, 89, 71, 65, 65, 79, 77, 79, 45, 63, 58, 69, 54, 58, 53, 63, 51, 45, 52, 59, 62, 68, 72, 83, 57, 64, 54, 75, 66, 63, 58, 69, 76, 61, 71, 60, 59, 51, 80, 68, 67, 61, 70, 54, 74, 58, 86, 60, 57, 70, 74, 61, 57, 64, 58, 63, 69, 68, 58, 49, 65, 59, 48, 52, 50, 72, 41, 65, 51, 69, 76, 61, 68, 78, 68, 48, 81, 58, 53, 81, 64, 58, 65, 53, 67, 65, 80, 64, 54, 68, 55, 96, 60, 67, 57, 120, 123, 52, 56, 54, 67, 56, 68, 77, 66, 68, 48, 54, 92, 71, 62, 60, 63, 64, 68, 59, 82, 48, 81, 53, 66, 60, 66, 99, 59, 57, 62, 48, 81, 59, 39, 57, 50, 38, 60, 66, 83, 51, 66, 70, 65, 58, 79, 66, 47, 58, 53, 83, 68, 51, 73, 50, 42, 56, 128, 65, 63, 74, 93, 96, 61, 45, 55, 64, 54, 46, 91, 59, 58, 61, 69, 69, 88, 94, 70, 43, 73, 63, 56, 57, 73, 61, 67, 58, 65, 47, 55, 49, 86, 64, 106, 106, 54, 87, 59, 69, 52, 45, 70, 101, 59, 72, 81, 66, 66, 71, 81, 88, 71, 63, 108, 62, 60, 62, 78, 64, 66, 66, 41, 62, 67, 55, 54, 51, 58, 41, 52, 55, 78, 48, 63, 70, 66, 63, 55, 59, 71, 58, 53, 43, 66, 63, 57, 67, 63, 81, 60, 49, 94, 124, 68, 90, 54, 70, 59, 75, 82, 63, 54, 57, 68, 113, 85, 58, 54, 67, 65, 64, 55, 71, 70, 53, 72, 55, 54, 52, 62, 75, 61, 50, 76, 83, 71, 70, 78, 83, 56, 40, 53, 45, 59, 59, 56, 72, 57, 50, 54, 68, 94, 65, 76, 99, 75, 44, 78, 66, 66, 65, 72, 56, 72, 80, 62, 62, 55, 57, 67, 71, 68, 84, 59, 70, 57, 51, 97, 53, 55, 91, 99, 51, 62, 56, 62, 66, 55, 78, 51, 82, 55, 64, 63, 57, 67, 45, 63, 59, 63, 53, 70, 96, 53, 64, 55, 71, 73, 49, 48, 64, 84, 112, 44, 66, 58, 75, 60, 69, 54, 76, 61, 72, 76, 80, 52, 51, 47, 102, 59, 78, 58, 80, 83, 55, 50, 82, 62, 59, 75, 87, 60, 66, 58, 63, 58, 123, 84, 60, 41, 73, 61, 68, 77, 61, 60, 52, 62, 75, 63, 154, 60, 92, 55, 55, 57, 62, 73, 61, 101, 71, 72, 61, 58, 63, 67, 61, 89, 62, 48, 46, 59, 53, 80, 55, 70, 56, 76, 74, 50, 60, 79, 60, 74, 61, 58, 60, 57, 64, 80, 72, 53, 71, 71, 79, 66, 56, 55, 68, 75, 69, 78, 63, 67, 58, 64, 38, 66, 38, 65, 70, 56, 61, 79, 54, 68, 84, 54, 65, 66, 47, 70, 57, 68, 50, 92, 81, 61, 62, 43, 75, 56, 71, 52, 70, 64, 69, 87, 65, 73, 56, 60, 55, 97, 64, 58, 62, 71, 61, 67, 53, 67, 66, 79, 59, 53, 121, 68, 67, 54, 58, 53, 65, 51, 53, 64, 56, 57, 57, 65, 86, 90, 82, 48, 95, 49, 53, 68, 88, 70, 73, 59, 61, 56, 65, 55, 52, 75, 73, 72, 67, 64, 83, 66, 65, 80, 72, 64, 88, 62, 69, 75, 80, 80, 82, 54, 69, 60, 52, 59, 51, 58, 56, 69, 58, 75, 91, 77, 52, 60, 61, 64, 72, 68, 53, 37, 53, 74, 54, 80, 65, 61, 75, 66, 47, 55, 69, 92, 63, 59, 71, 60, 49, 66, 67, 60, 67, 75, 60, 67, 75, 64, 72, 59, 92, 83, 66, 53, 47, 65, 59, 54, 74, 101, 81, 60, 54, 61, 66, 46, 58, 71, 73, 57, 63, 63, 77, 69, 94, 63, 65, 73, 65, 72, 78, 71, 65, 77, 62, 70, 53, 59, 63, 51, 71, 65, 68, 70, 69, 61, 76, 98, 72, 77, 86, 118, 59, 64, 55, 55, 51, 85, 82, 56, 112, 53, 63, 61, 54, 57, 65, 62, 52, 55, 50, 111, 92, 72, 61, 71, 63, 64, 61, 70, 49, 57, 57, 59, 68, 52, 48, 56, 68, 66, 73, 55, 48, 79, 76, 56, 70, 53, 64, 70, 63, 69, 59, 66, 69, 61, 54, 52, 70, 53, 143, 49, 58, 60, 57, 78, 91, 63, 59, 71, 83, 68, 98, 66, 63, 86, 50, 59, 105, 54, 59, 67, 74, 78, 99, 64, 53, 57, 45, 49, 95, 53, 65, 64, 54, 58, 48, 68, 66, 53, 70, 86, 64, 50, 47, 63, 67, 68, 84, 75, 65, 86, 64, 50, 65, 83, 62, 70, 61, 59, 47, 54, 49, 50, 58, 54, 60, 66, 62, 73, 63, 66, 63, 62, 73, 65, 59, 56, 63, 65, 59, 49, 69, 69, 57, 66, 57, 52, 61, 61, 80, 56, 63, 59, 77, 71, 79, 74, 77, 44, 64, 56, 66, 51, 57, 60, 64, 64, 70, 72, 38, 56, 90, 55, 85, 60, 68, 62, 85, 56, 74, 73, 54, 54, 66, 141, 54, 63, 99, 55, 56, 53, 72, 68, 70, 53, 67, 63, 54, 66, 61, 46, 63, 85, 56, 82, 70, 68, 77, 83, 81, 58, 69, 110, 57, 62, 40, 60, 74, 124, 64, 56, 64, 68, 60, 53, 47, 61, 66, 64, 54, 94, 81, 64, 81, 52, 57, 63, 61, 61, 65, 59, 73, 59, 57, 69, 45, 73, 56, 59, 74, 73, 88, 54, 78, 82, 56, 74, 88, 61, 63, 50, 77, 66, 62, 66, 76, 57, 54, 72, 51, 82, 45, 62, 55, 59, 64, 81, 74, 91, 67, 71, 76, 67, 53, 71, 65, 48, 76, 78, 113, 75, 36, 68, 55, 60, 111, 64, 76, 65, 60, 100, 48, 71, 71, 65, 83, 57, 70, 42, 67, 89, 66, 75, 66, 64, 80, 81, 62, 96, 34, 76, 93, 83, 60, 52, 55, 70, 66, 67, 53, 58, 50, 91, 75, 54, 74, 75, 49, 78, 47, 70, 61, 74, 59, 54, 60, 58, 64, 60, 66, 116, 49, 54, 64, 91, 56, 66, 71, 63, 52, 76, 79, 72, 95, 74, 56, 61, 63, 89, 72, 56, 57, 56, 69, 60, 69, 56, 64, 52, 63, 55, 62, 60, 48, 55, 74, 72, 76, 48, 47, 65, 72, 58, 75, 91, 61, 72, 59, 88, 56, 52, 67, 71, 46, 57, 63, 94, 70, 69, 70, 63, 66, 105, 58, 91, 69, 53, 60, 55, 46, 69, 66, 58, 63, 58, 52, 77, 52, 60, 71, 78, 51, 73, 67, 91, 58, 51, 66, 104, 54, 69, 54, 59, 63, 58, 61, 62, 64, 70, 55, 54, 72, 54, 72, 78, 54, 63, 61, 137, 62, 53, 90, 66, 80, 86, 69, 80, 93, 61, 61, 67, 58, 66, 50, 59, 55, 77, 48, 83, 56, 65, 71, 64, 70, 74, 128, 88, 79, 64, 43, 69, 61, 58, 63, 63, 46, 61, 67, 66, 65, 63, 54, 67, 68, 82, 67, 62, 73, 60, 61, 63, 50, 64, 85, 52, 59, 84, 69, 67, 62, 44, 60, 62, 78, 54, 61, 52, 55, 42, 69, 89, 55, 63, 64, 60, 56, 55, 65, 65, 94, 42, 72, 88, 51, 67, 56, 54, 59, 55, 65, 51, 57, 65, 61, 62, 82, 67, 70, 78, 76, 68, 60, 63, 57, 52, 54, 79, 75, 67, 69, 78, 51, 60, 68, 53, 38, 70, 69, 71, 51, 78, 67, 63, 61, 64, 48, 62, 58, 53, 69, 54, 54, 66, 87, 59, 58, 59, 53, 60, 97, 61, 57, 57, 83, 54, 64, 76, 71, 69, 56, 81, 61, 75, 64, 71, 67, 74, 61, 55, 60, 56, 61, 81, 50, 101, 90, 83, 46, 72, 71, 61, 54, 71, 70, 62, 69, 55, 49, 60, 74, 63, 47, 91, 60, 82, 63, 60, 64, 78, 65, 80, 69, 70, 55, 59, 50, 66, 48, 50, 72, 66, 62, 62, 77, 63, 72, 71, 74, 67, 69, 62, 55, 58, 58, 68, 61, 72, 64, 57, 130, 65, 89, 76, 67, 71, 43, 67, 78, 60, 68, 102, 97, 60, 70, 72, 70, 48, 71, 61, 74, 46, 50, 60, 57, 68, 60, 58, 62, 54, 61, 82, 51, 56, 55, 55, 53, 71, 53, 57, 59, 113, 56, 65, 65, 71, 58, 60, 76, 72, 74, 58, 59, 50, 80, 85, 69, 65, 26, 55, 40, 65, 66, 66, 80, 67, 53, 71, 59, 64, 47, 48, 58, 66, 73, 60, 58, 60, 63, 51, 46, 95, 56, 69, 66, 95, 61, 58, 70, 60, 121, 64, 45, 64, 77, 58, 82, 86, 54, 88, 54, 76, 91, 60, 70, 78, 63, 50, 58, 58, 64, 63, 55, 57, 52, 64, 80, 66, 83, 79, 63, 75, 57, 77, 60, 54, 64, 67, 54, 77, 74, 75, 64, 77, 79, 68, 62, 81, 78, 72, 64, 57, 54, 67, 98, 124, 69, 58, 55, 62, 69, 73, 58, 64, 59, 55, 67, 53, 68, 78, 68, 74, 59, 66, 59, 91, 55, 68, 79, 89, 63, 69, 64, 62, 68, 61, 65, 71, 71, 62, 77, 58, 65, 79, 70, 67, 64, 69, 62, 72, 58, 55, 90, 63, 62, 56, 82, 71, 56, 58, 52, 62, 68, 63, 100, 63, 54, 71, 64, 61, 63, 56, 53, 78, 76, 72, 65, 65, 60, 80, 40, 71, 47, 62, 71, 63, 62, 88, 74, 79, 64, 45, 70, 58, 55, 120, 60, 65, 36, 72, 64, 53, 87, 84, 46, 71, 66, 70, 64, 59, 76, 59, 89, 69, 73, 81, 70, 51, 55, 71, 63, 64, 46, 66, 53, 56, 48, 58, 53, 63, 89, 85, 57, 72, 66, 67, 67, 80, 53, 65, 93, 96, 55, 79, 57, 60, 65, 66, 50, 69, 45, 59, 46, 47, 60, 62, 70, 81, 54, 55, 53, 60, 60, 79, 69, 60, 81, 64, 73, 103, 81, 61, 65, 54, 67, 55, 60, 69, 107, 59, 75, 62, 87, 72, 75, 66, 56, 51, 68, 58, 59, 53, 54, 66, 60, 62, 63, 65, 68, 47, 70, 64, 53, 62, 68, 45, 55, 55, 55, 47, 72, 57, 60, 62, 85, 64, 61, 62, 63, 69, 61, 72, 54, 62, 56, 75, 68, 66, 59, 64, 59, 81, 52, 72, 68, 65, 72, 61, 65, 68, 61, 75, 58, 49, 100, 67, 66, 60, 67, 49, 63, 78, 63, 56, 87, 124, 58, 60, 54, 81, 73, 68, 81, 49, 105, 56, 51, 63, 59, 58, 55, 68, 59, 66, 60, 56, 80, 62, 59, 74, 91, 64, 47, 56, 63, 61, 63, 70, 80, 58, 57, 58, 68, 70, 63, 50, 54, 57, 75, 61, 52, 60, 72, 55, 55, 75, 59, 63, 63, 140, 87, 63, 58, 65, 57, 64, 51, 65, 52, 108, 63, 55, 85, 82, 62, 71, 61, 72, 90, 57, 72, 65, 59, 61, 67, 70, 61, 43, 51, 57, 51, 58, 51, 43, 80, 54, 46, 67, 64, 64, 66, 54, 58, 69, 76, 108, 90, 59, 107, 54, 52, 75, 97, 56, 97, 39, 61, 85, 46, 68, 70, 72, 68, 57, 75, 70, 50, 55, 64, 56, 68, 54, 50, 83, 58, 57, 58, 66, 58, 132, 77, 85, 56, 88, 60, 71, 72, 69, 67, 66, 43, 57, 73, 70, 81, 57, 58, 65, 48, 53, 70, 69, 92, 66, 73, 75, 73, 54, 66, 78, 70, 59, 57, 62, 69, 51, 58, 64, 70, 59, 74, 52, 43, 65, 49, 90, 70, 57, 61, 56, 53, 67, 56, 65, 69, 69, 117, 62, 54, 56, 59, 83, 59, 44, 53, 59, 39, 61, 48, 60, 60, 99, 77, 69, 93, 57, 77, 66, 68, 65, 65, 73, 64, 65, 54, 68, 51, 59, 54, 71, 62, 59, 46, 64, 57, 70, 76, 62, 56, 78, 68, 74, 59, 83, 70, 65, 60, 59, 46, 53, 115, 71, 42, 71, 67, 88, 79, 61, 62, 53, 68, 59, 73, 65, 60, 75, 59, 61, 71, 54, 90, 47, 87, 80, 53, 67, 77, 122, 57, 56, 64, 80, 77, 59, 66, 58, 66, 62, 63, 84, 50, 73, 82, 79, 53, 81, 62, 77, 57, 108, 67, 59, 72, 52, 70, 110, 57, 70, 86, 62, 55, 77, 60, 75, 60, 63, 55, 76, 45, 88, 62, 58, 84, 82, 55, 89, 48, 53, 79, 55, 55, 55, 47, 73, 69, 50, 68, 73, 51, 62, 61, 50, 72, 51, 60, 72, 57, 54, 58, 80, 72, 73, 74, 73, 55, 84, 52, 59, 58, 48, 55, 95, 72, 61, 128, 59, 61, 84, 64, 68, 64, 41, 58, 81, 77, 48, 64, 69, 61, 63, 69, 45, 74, 66, 71, 64, 64, 51, 67, 79, 68, 68, 64, 51, 59, 53, 59, 57, 63, 74, 92, 73, 101, 59, 79, 59, 44, 86, 71, 51, 64, 62, 61, 141, 59, 83, 49, 99, 65, 62, 50, 68, 78, 62, 55, 55, 67, 64, 71, 65, 50, 57, 55, 56, 60, 96, 76, 64, 68, 75, 62, 61, 66, 69, 56, 64, 64, 44, 58, 53, 67, 94, 63, 59, 55, 78, 65, 64, 54, 72, 51, 62, 67, 51, 63, 91, 56, 57, 66, 71, 59, 64, 77, 67, 57, 52, 64, 58, 57, 57, 54, 76, 59, 51, 64, 63, 49, 58, 54, 74, 66, 60, 53, 74, 99, 62, 63, 77, 62, 64, 64, 54, 73, 65, 71, 61, 69, 61, 96, 53, 50, 61, 60, 50, 84, 54, 76, 69, 79, 63, 75, 61, 53, 65, 67, 79, 73, 45, 54, 55, 62, 68, 52, 64, 59, 50, 58, 66, 63, 58, 83, 61, 61, 57, 78, 57, 52, 52, 70, 64, 87, 53, 56, 62, 44, 68, 90, 75, 63, 57, 69, 57, 50, 43, 61, 56, 74, 51, 74, 119, 55, 63, 69, 64, 52, 66, 56, 66, 57, 60, 63, 82, 75, 77, 78, 53, 55, 62, 78, 59, 101, 67, 60, 70, 60, 59, 51, 105, 53, 79, 69, 67, 77, 57, 68, 79, 64, 57, 72, 71, 75, 67, 52, 67, 43, 69, 66, 69, 68, 52, 59, 56, 54, 73, 81, 55, 54, 74, 75, 57, 71, 58, 68, 56, 43, 68, 63, 87, 83, 66, 57, 51, 64, 71, 66, 86, 91, 45, 75, 87, 62, 60, 68, 55, 78, 71, 58, 58, 64, 73, 63, 54, 65, 79, 57, 51, 50, 83, 85, 51, 57, 61, 49, 62, 72, 119, 62, 76, 61, 60, 71, 67, 56, 57, 63, 50, 68, 70, 42, 59, 61, 62, 79, 50, 80, 62, 67, 68, 72, 57, 52, 75, 90, 56, 65, 51, 63, 69, 81, 57, 72, 61, 81, 57, 54, 58, 81, 77, 58, 82, 61, 77, 68, 66, 72, 80, 70, 70, 65, 64, 76, 72, 54, 60, 64, 50, 60, 56, 54, 62, 57, 64, 70, 81, 66, 55, 52, 70, 58, 57, 54, 59, 86, 69, 59, 58, 84, 46, 66, 72, 61, 64, 64, 61, 70, 75, 53, 58, 74, 66, 55, 54, 57, 55, 57, 70, 65, 55, 109, 91, 79, 62, 70, 58, 64, 65, 69, 77, 73, 46, 62, 62, 69, 65, 93, 58, 70, 56, 59, 69, 101, 86, 51, 99, 67, 60, 51, 59, 70, 60, 73, 57, 66, 75, 67, 46, 53, 63, 66, 58, 52, 79, 63, 63, 71, 68, 55, 49, 57, 68, 63, 78, 58, 47, 67, 76, 55, 74, 61, 72, 59, 71, 57, 69, 63, 58, 68, 90, 66, 82, 67, 62, 58, 71, 61, 72, 102, 52, 49, 50, 71, 67, 60, 59, 60, 44, 73, 71, 63, 52, 81, 57, 68, 75, 73, 69, 83, 52, 81, 62, 91, 54, 62, 75, 88, 93, 88, 57, 51, 63, 60, 54, 62, 62, 87, 52, 53, 87, 60, 64, 86, 67, 62, 84, 75, 64, 58, 64, 54, 59, 72, 44, 67, 57, 55, 105, 64, 59, 66, 58, 73, 66, 81, 73, 53, 55, 74, 85, 72, 71, 77, 72, 86, 90, 75, 68, 66, 62, 64, 76, 61, 62, 76, 50, 54, 66, 64, 71, 42, 46, 93, 83, 59, 128, 99, 63, 79, 80, 60, 69, 65, 76, 78, 57, 49, 60, 71, 68, 67, 56, 72, 50, 53, 70, 73, 86, 85, 54, 64, 79, 68, 73, 61, 68, 60, 76, 82, 53, 71, 54, 75, 51, 64, 72, 50, 57, 59, 40, 82, 84, 55, 66, 65, 81, 52, 67, 51, 54, 76, 76, 63, 62, 46, 93, 64, 63, 39, 66, 63, 61, 44, 64, 61, 71, 68, 67, 68, 37, 71, 84, 72, 61, 58, 48, 57, 52, 55, 53, 58, 61, 47, 51, 93, 70, 52, 52, 58, 50, 60, 57, 65, 63, 73, 57, 66, 80, 69, 73, 76, 99, 39, 64, 51, 52, 67, 57, 58, 57, 67, 64, 78, 56, 53, 63, 54, 58, 79, 64, 66, 77, 48, 64, 53, 57, 75, 65, 77, 53, 61, 64, 60, 54, 63, 68, 55, 52, 92, 54, 45, 60, 62, 73, 46, 68, 72, 62, 55, 64, 72, 32, 65, 67, 72, 80, 77, 75, 53, 61, 66, 58, 56, 70, 89, 60, 58, 91, 59, 60, 71, 57, 56, 44, 74, 60, 73, 71, 63, 86, 77, 51, 42, 60, 65, 61, 85, 70, 59, 58, 52, 60, 54, 68, 65, 51, 115, 74, 62, 78, 67, 61, 53, 71, 52, 68, 64, 65, 73, 56, 69, 74, 95, 54, 73, 54, 51, 64, 69, 58, 85, 65, 57, 61, 51, 83, 67, 50, 57, 59, 75, 73, 59, 52, 86, 147, 48, 52, 60, 61, 56, 54, 71, 63, 92, 70, 72, 46, 82, 75, 72, 87, 51, 60, 58, 65, 54, 107, 48, 51, 76, 74, 55, 68, 75, 72, 80, 54, 73, 71, 48, 60, 72, 58, 62, 73, 55, 53, 53, 45, 75, 62, 59, 62, 66, 65, 72, 73, 65, 79, 47, 59, 70, 78, 85, 59, 55, 79, 39, 70, 66, 63, 59, 75, 49, 61, 44, 57, 62, 102, 79, 51, 71, 64, 70, 72, 71, 53, 72, 63, 67, 66, 49, 55, 58, 79, 59, 73, 97, 56, 54, 63, 49, 71, 89, 70, 64, 49, 62, 69, 52, 69, 75, 96, 70, 76, 55, 128, 70, 54, 42, 81, 59, 65, 48, 65, 100, 91, 66, 78, 92, 44, 66, 60, 71, 74, 70, 64, 77, 87, 47, 67, 72, 59, 55, 66, 95, 68, 76, 55, 51, 46, 37, 68, 58, 69, 75, 61, 40, 49, 62, 55, 59, 85, 56, 74, 44, 62, 76, 56, 73, 60, 62, 63, 67, 62, 61, 55, 49, 72, 49, 56, 61, 55, 98, 64, 56, 60, 100, 65, 66, 60, 52, 65, 56, 78, 80, 64, 69, 81, 67, 65, 70, 59, 80, 57, 39, 76, 68, 58, 77, 57, 111, 72, 75, 50, 64, 58, 69, 57, 72, 73, 62, 70, 77, 56, 80, 76, 54, 61, 49, 63, 66, 63, 57, 79, 61, 58, 63, 96, 64, 62, 52, 63, 64, 61, 59, 77, 56, 45, 78, 76, 52, 65, 61, 56, 59, 59, 72, 60, 49, 53, 88, 64, 41, 57, 72, 62, 57, 70, 55, 77, 69, 58, 50, 57, 63, 65, 57, 60, 66, 77, 59, 68, 80, 55, 76, 57, 45, 74, 60, 63, 108, 53, 67, 73, 60, 78, 72, 71, 64, 33, 75, 47, 53, 48, 45, 62, 55, 62, 63, 83, 51, 57, 124, 75, 117, 69, 71, 79, 58, 58, 98, 79, 63, 67, 51, 71, 63, 62, 105, 61, 77, 77, 40, 63, 68, 86, 67, 69, 69, 70, 44, 82, 55, 91, 83, 53, 78, 67, 61, 55, 68, 61, 71, 63, 55, 71, 61, 52, 54, 87, 69, 83, 55, 57, 97, 53, 60, 58, 78, 67, 52, 63, 74, 54, 66, 67, 42, 54, 67, 63, 80, 60, 60, 52, 63, 60, 60, 72, 74, 55, 53, 71, 77, 53, 56, 77, 53, 65, 70, 78, 44, 74, 77, 58, 40, 78, 65, 56, 61, 48, 47, 60, 54, 67, 71, 82, 51, 59, 107, 67, 52, 63, 108, 66, 66, 61, 76, 55, 74, 64, 56, 72, 57, 60, 74, 72, 58, 91, 68, 58, 62, 62, 69, 50, 60, 72, 69, 86, 73, 62, 63, 75, 78, 88, 99, 51, 85, 86, 47, 68, 113, 72, 72, 51, 61, 61, 57, 72, 69, 60, 85, 79, 71, 65, 59, 89, 46, 66, 77, 52, 67, 81, 88, 82, 51, 72, 53, 60, 58, 73, 39, 71, 49, 73, 45, 57, 58, 62, 57, 53, 81, 105, 54, 71, 55, 57, 70, 51, 56, 72, 61, 52, 83, 59, 63, 83, 52, 74, 52, 66, 68, 62, 96, 76, 64, 44, 73, 57, 74, 74, 78, 49, 66, 72, 78, 53, 57, 75, 67, 45, 64, 64, 70, 78, 91, 54, 67, 44, 52, 58, 57, 71, 62, 61, 83, 51, 57, 51, 56, 61, 61, 71, 62, 70, 56, 88, 83, 70, 52, 56, 56, 67, 56, 61, 88, 89, 92, 57, 74, 87, 40, 59, 51, 60, 72, 61, 98, 64, 81, 64, 101, 71, 63, 65, 96, 64, 54, 46, 71, 54, 66, 53, 57, 80, 57, 51, 48, 72, 89, 54, 74, 72, 76, 57, 118, 58, 72, 57, 51, 81, 97, 82, 62, 71, 74, 53, 80, 76, 71, 49, 94, 47, 114, 70, 63, 49, 53, 91, 75, 85, 53, 73, 74, 51, 62, 66, 64, 60, 71, 81, 47, 37, 35, 72, 58, 77, 53, 58, 65, 73, 73, 38, 44, 65, 65, 68, 49, 76, 62, 51, 52, 68, 85, 71, 66, 79, 52, 71, 52, 92, 55, 74, 58, 67, 57, 57, 60, 48, 48, 49, 69, 61, 57, 47, 51, 76, 66, 55, 92, 48, 84, 78, 76, 53, 68, 84, 74, 61, 57, 67, 52, 92, 64, 53, 110, 68, 70, 70, 55, 111, 67, 47, 57, 55, 50, 58, 67, 53, 62, 53, 55, 52, 73, 71, 63, 75, 62, 85, 59, 52, 86, 82, 60, 57, 61, 88, 67, 45, 81, 56, 51, 63, 83, 56, 71, 55, 43, 60, 60, 76, 51, 51, 38, 73, 61, 61, 59, 88, 63, 63, 72, 68, 63, 58, 49, 60, 57, 53, 70, 71, 62, 67, 46, 69, 64, 114, 64, 82, 63, 56, 62, 91, 67, 53, 45, 50, 56, 38, 66, 65, 97, 57, 78, 69, 42, 54, 104, 63, 57, 85, 77, 44, 73, 86, 59, 75, 77, 53, 52, 56, 53, 50, 61, 64, 59, 63, 54, 37, 80, 52, 75, 81, 76, 71, 85, 57, 76, 54, 63, 46, 67, 40, 67, 52, 54, 62, 88, 54, 57, 68, 57, 47, 69, 57, 74, 54, 63, 71, 67, 78, 55, 59, 65, 48, 54, 62, 80, 52, 72, 78, 67, 78, 59, 76, 48, 80, 72, 53, 79, 61, 43, 54, 69, 56, 60, 54, 66, 49, 41, 67, 66, 101, 77, 69, 57, 41, 72, 65, 77, 55, 61, 64, 53, 76, 64, 88, 52, 71, 72, 83, 46, 50, 126, 69, 50, 92, 59, 84, 64, 87, 101, 60, 58, 95, 61, 50, 65, 59, 65, 55, 69, 52, 68, 68, 64, 70, 61, 71, 70, 63, 53, 88, 63, 51, 53, 107, 71, 60, 67, 71, 67, 77, 71, 61, 54, 60, 55, 59, 66, 57, 80, 56, 78, 70, 54, 50, 46, 55, 63, 53, 49, 57, 52, 82, 103, 59, 58, 59, 78, 92, 74, 63, 93, 50, 61, 50, 53, 45, 62, 106, 80, 67, 66, 70, 91, 64, 49, 75, 64, 82, 44, 82, 72, 88, 75, 53, 70, 84, 51, 63, 54, 57, 80, 77, 77, 59, 87, 60, 73, 58, 102, 47, 72, 87, 83, 74, 109, 44, 67, 63, 65, 68, 62, 59, 66, 49, 54, 58, 49, 78, 74, 49, 45, 68, 67, 65, 72, 65, 116, 56, 66, 72, 61, 46, 64, 78, 65, 67, 58, 50, 58, 85, 84, 57, 70, 53, 60, 72, 74, 74, 71, 55, 62, 62, 58, 65, 65, 58, 65, 72, 66, 74, 62, 68, 66, 75, 44, 68, 66, 101, 67, 69, 58, 57, 57, 52, 82, 72, 63, 71, 60, 80, 83, 82, 45, 91, 61, 64, 71, 53, 57, 84, 67, 73, 64, 62, 64, 94, 64, 55, 83, 58, 58, 49, 83, 62, 55, 56, 64, 81, 55, 80, 54, 55, 72, 59, 59, 55, 76, 60, 69, 61, 100, 47, 72, 87, 53, 58, 67, 74, 82, 77, 71, 60, 85, 63, 64, 58, 58, 78, 45, 75, 78, 72, 71, 77, 64, 60, 77, 61, 79, 68, 51, 50, 60, 56, 52, 76, 98, 57, 78, 44, 72, 82, 76, 101, 52, 63, 69, 58, 70, 65, 62, 63, 69, 56, 67, 72, 51, 73, 54, 40, 50, 71, 60, 62, 71, 61, 72, 78, 36, 91, 56, 43, 58, 81, 59, 52, 57, 75, 43, 60, 65, 53, 54, 85, 85, 76, 63, 57, 62, 57, 60, 59, 67, 66, 51, 66, 98, 46, 58, 81, 77, 73, 50, 68, 60, 80, 50, 56, 45, 61, 60, 62, 82, 61, 76, 47, 54, 68, 63, 53, 23, 52, 75, 69, 69, 80, 72, 65, 72, 73, 53, 78, 86, 79, 133, 62, 105, 100, 107, 59, 100, 51, 55, 57, 68, 59, 50, 67, 61, 68, 74, 121, 64, 62, 87, 65, 61, 68, 67, 71, 70, 96, 57, 69, 68, 77, 84, 79, 69, 75, 65, 50, 56, 70, 61, 48, 60, 64, 80, 61, 69, 73, 68, 67, 53, 37, 59, 79, 73, 62, 53, 65, 60, 60, 69, 64, 58, 61, 58, 79, 81, 62, 57, 56, 65, 69, 64, 58, 74, 65, 52, 85, 81, 70, 44, 54, 55, 61, 74, 57, 81, 69, 52, 66, 50, 76, 78, 53, 152, 61, 51, 49, 72, 54, 50, 52, 58, 76, 65, 48, 87, 95, 58, 67, 57, 87, 58, 64, 75, 83, 60, 62, 71, 58, 78, 54, 65, 44, 58, 63, 100, 73, 59, 48, 76, 64, 81, 57, 54, 64, 70, 61, 77, 74, 61, 82, 69, 66, 96, 64, 53, 52, 55, 66, 78, 57, 69, 66, 66, 59, 75, 59, 46, 73, 60, 82, 108, 95, 63, 66, 71, 70, 64, 62, 68, 54, 48, 85, 51, 69, 90, 74, 91, 49, 61, 56, 64, 74, 53, 43, 70, 52, 61, 67, 53, 100, 77, 81, 52, 59, 59, 50, 71, 68, 79, 54, 56, 62, 49, 47, 110, 70, 95, 67, 51, 65, 54, 72, 56, 59, 136, 61, 64, 78, 100, 58, 76, 52, 76, 77, 97, 56, 73, 84, 71, 84, 60, 70, 57, 74, 71, 59, 70, 72, 62, 53, 66, 54, 47, 88, 64, 94, 59, 50, 62, 52, 65, 73, 66, 56, 79, 61, 60, 50, 48, 89, 62, 68, 60, 70, 65, 70, 61, 63, 70, 37, 64, 74, 69, 69, 61, 78, 70, 55, 52, 80, 49, 60, 72, 73, 33, 72, 83, 73, 72, 66, 59, 53, 64, 78, 85, 63, 81, 73, 67, 69, 55, 74, 58, 62, 69, 59, 92, 64, 58, 62, 90, 44, 56, 73, 57, 62, 67, 68, 44, 83, 72, 38, 85, 68, 60, 60, 76, 73, 54, 65, 71, 48, 53, 74, 59, 79, 56, 106, 53, 66, 90, 65, 62, 68, 75, 68, 59, 67, 61, 62, 69, 110, 57, 71, 51, 77, 68, 84, 49, 84, 47, 62, 60, 37, 74, 64, 69, 62, 48, 68, 63, 67, 56, 60, 68, 48, 89, 65, 51, 58, 63, 68, 70, 82, 72, 58, 60, 50, 65, 60, 63, 84, 55, 155, 58, 60, 60, 67, 47, 73, 51, 75, 58, 68, 71, 74, 44, 57, 60, 68, 93, 50, 53, 64, 51, 50, 53, 76, 61, 72, 57, 50, 65, 78, 80, 59, 71, 59, 66, 77, 80, 81, 83, 68, 77, 57, 52, 61, 65, 64, 73, 82, 100, 65, 49, 78, 82, 69, 58, 53, 63, 84, 68, 65, 79, 59, 68, 103, 76, 54, 87, 77, 108, 58, 65, 66, 111, 57, 102, 69, 58, 68, 66, 73, 68, 64, 57, 51, 61, 53, 85, 57, 56, 51, 69, 60, 57, 81, 63, 67, 40, 63, 67, 48, 60, 45, 62, 76, 45, 89, 62, 65, 61, 82, 87, 60, 82, 66, 91, 62, 49, 66, 63, 74, 51, 101, 49, 68, 62, 59, 42, 69, 77, 60, 62, 76, 75, 61, 55, 70, 90, 73, 53, 53, 42, 73, 71, 76, 43, 58, 74, 65, 61, 57, 70, 54, 55, 44, 79, 41, 46, 64, 78, 58, 67, 49, 59, 48, 103, 73, 64, 50, 49, 48, 76, 63, 49, 67, 54, 60, 59, 54, 60, 65, 64, 50, 60, 67, 78, 52, 60, 57, 57, 69, 102, 79, 86, 67, 57, 79, 75, 51, 50, 58, 90, 103, 76, 95, 60, 54, 54, 63, 62, 61, 70, 58, 57, 54, 62, 73, 59, 77, 79, 62, 56, 60, 70, 81, 59, 67, 58, 51, 47, 58, 56, 52, 49, 60, 69, 63, 66, 64, 60, 60, 92, 69, 59, 63, 112, 59, 62, 93, 72, 48, 63, 53, 73, 56, 67, 52, 47, 88, 55, 73, 57, 60, 64, 64, 65, 38, 38, 76, 75, 55, 77, 83, 48, 65, 50, 85, 46, 48, 54, 51, 74, 86, 59, 68, 81, 65, 73, 101, 50, 49, 52, 83, 57, 62, 86, 64, 64, 90, 56, 49, 113, 62, 81, 64, 158, 60, 63, 73, 58, 60, 90, 64, 68, 54, 56, 68, 76, 62, 64, 51, 57, 70, 65, 84, 54, 122, 76, 64, 90, 57, 53, 63, 73, 63, 72, 74, 62, 71, 55, 64, 61, 53, 55, 68, 47, 63, 75, 61, 65, 69, 49, 79, 35, 47, 48, 100, 53, 54, 63, 83, 69, 62, 69, 65, 73, 59, 62, 66, 84, 48, 72, 60, 57, 53, 58, 65, 55, 72, 82, 97, 61, 53, 67, 49, 96, 73, 55, 65, 107, 57, 63, 84, 57, 63, 75, 43, 51, 74, 61, 54, 97, 75, 88, 57, 66, 53, 46, 89, 66, 73, 58, 59, 69, 66, 61, 54, 56, 61, 49, 59, 60, 74, 73, 65, 72, 56, 70, 51, 67, 92, 64, 59, 96, 67, 58, 44, 83, 60, 67, 50, 79, 71, 69, 58, 54, 65, 59, 70, 76, 69, 55, 45, 41, 117, 61, 59, 80, 59, 48, 70, 80, 53, 65, 56, 52, 66, 79, 60, 57, 57, 39, 77, 37, 63, 60, 94, 54, 56, 60, 54, 55, 81, 70, 52, 71, 42, 81, 92, 75, 58, 88, 71, 69, 71, 46, 60, 63, 59, 70, 85, 90, 83, 81, 61, 69, 70, 96, 61, 76, 66, 64, 82, 54, 65, 55, 72, 72, 109, 91, 61, 47, 75, 76, 101, 65, 81, 86, 63, 73, 81, 53, 47, 66, 50, 56, 55, 68, 66, 55, 58, 72, 55, 65, 49, 60, 55, 53, 81, 66, 65, 53, 68, 77, 63, 87, 58, 63, 61, 116, 58, 84, 80, 65, 62, 70, 62, 45, 61, 57, 92, 41, 75, 40, 58, 61, 69, 66, 46, 61, 71, 49, 70, 76, 62, 62, 73, 58, 73, 70, 78, 47, 80, 56, 69, 58, 76, 97, 68, 71, 80, 63, 60, 62, 50, 97, 58, 83, 48, 56, 69, 78, 65, 78, 63, 72, 103, 53, 69, 62, 82, 47, 60, 113, 68, 82, 45, 93, 66, 74, 65, 77, 64, 80, 64, 77, 64, 60, 77, 68, 57, 60, 52, 62, 77, 78, 81, 98, 52, 50, 68, 61, 101, 58, 63, 63, 57, 49, 58, 73, 59, 84, 64, 76, 92, 52, 74, 59, 45, 64, 67, 55, 73, 64, 72, 45, 113, 61, 90, 82, 36, 45, 88, 65, 77, 64, 59, 75, 68, 68, 40, 60, 50, 65, 75, 63, 55, 82, 99, 67, 28, 72, 72, 68, 81, 86, 61, 77, 64, 60, 56, 47, 51, 70, 64, 58, 70, 56, 61, 99, 79, 100, 73, 56, 69, 70, 52, 47, 60, 63, 38, 85, 57, 82, 58, 78, 62, 77, 80, 73, 56, 53, 75, 78, 58, 77, 67, 54, 63, 76, 43, 58, 48, 58, 59, 69, 50, 40, 54, 71, 31, 62, 73, 84, 72, 87, 76, 69, 68, 37, 73, 74, 68, 69, 65, 97, 73, 55, 71, 65, 64, 59, 72, 80, 52, 63, 59, 60, 53, 64, 60, 71, 72, 73, 69, 70, 53, 51, 53, 68, 84, 75, 69, 61, 64, 68, 86, 55, 68, 64, 59, 50, 58, 70, 50, 63, 62, 77, 51, 52, 47, 65, 86, 66, 53, 49, 31, 81, 55, 84, 58, 76, 88, 60, 60, 81, 72, 64, 57, 68, 76, 70, 54, 60, 63, 49, 68, 97, 64, 40, 59, 76, 57, 59, 60, 129, 71, 82, 59, 61, 60, 60, 65, 61, 49, 87, 59, 57, 58, 86, 57, 78, 78, 106, 81, 65, 63, 98, 71, 54, 46, 76, 83, 80, 82, 66, 62, 83, 55, 76, 79, 65, 54, 63, 64, 88, 68, 89, 65, 54, 70, 50, 56, 48, 74, 85, 49, 76, 64, 89, 89, 64, 63, 65, 64, 71, 69, 53, 60, 64, 85, 52, 57, 64, 62, 54, 62, 88, 62, 49, 66, 65, 70, 129, 58, 107, 76, 155, 63, 89, 69, 57, 78, 47, 50, 66, 61, 49, 57, 71, 112, 58, 49, 58, 54, 62, 62, 46, 66, 37, 79, 60, 69, 53, 76, 59, 77, 77, 60, 58, 53, 54, 59, 94, 58, 68, 62, 57, 58, 68, 52, 68, 77, 58, 90, 65, 56, 54, 67, 69, 64, 80, 75, 47, 68, 75, 66, 57, 62, 56, 57, 66, 54, 67, 38, 44, 58, 47, 65, 77, 69, 43, 73, 58, 88, 101, 74, 56, 46, 69, 68, 88, 60, 78, 82, 59, 43, 69, 53, 49, 72, 75, 121, 71, 51, 84, 51, 52, 74, 64, 54, 90, 38, 63, 61, 68, 60, 52, 68, 71, 63, 57, 71, 71, 45, 69, 44, 48, 87, 63, 58, 80, 97, 83, 44, 64, 69, 70, 85, 97, 72, 74, 82, 48, 67, 65, 63, 51, 60, 79, 63, 92, 84, 36, 63, 64, 53, 74, 92, 62, 78, 57, 55, 53, 56, 36, 55, 54, 63, 31, 78, 68, 57, 62, 45, 72, 59, 62, 54, 83, 87, 75, 51, 61, 67, 82, 46, 66, 71, 71, 70, 65, 67, 55, 50, 90, 81, 73, 51, 58, 65, 61, 43, 84, 53, 58, 57, 76, 78, 78, 58, 64, 71, 71, 73, 62, 72, 75, 67, 55, 54, 67, 91, 60, 89, 47, 69, 76, 69, 46, 85, 63, 78, 90, 112, 41, 79, 56, 90, 51, 71, 67, 43, 35, 78, 56, 82, 66, 82, 44, 59, 77, 51, 58, 84, 70, 61, 84, 80, 58, 68, 54, 57, 61, 111, 64, 78, 95, 45, 71, 103, 85, 57, 70, 87, 43, 65, 59, 64, 89, 55, 43, 66, 52, 65, 60, 40, 54, 81, 57, 50, 53, 66, 90, 68, 81, 90, 43, 60, 75, 62, 78, 66, 59, 91, 63, 67, 64, 71, 45, 116, 54, 62, 79, 70, 88, 60, 51, 105, 64, 52, 58, 54, 72, 45, 73, 54, 65, 60, 75, 54, 63, 80, 41, 93, 97, 68, 57, 48, 74, 83, 79, 61, 37, 69, 58, 74, 46, 85, 68, 52, 44, 74, 108, 47, 82, 52, 55, 81, 49, 93, 43, 51, 67, 78, 80, 78, 57, 58, 47, 65, 53, 66, 79, 107, 61, 71, 79, 70, 93, 72, 70, 61, 62, 69, 51, 61, 59, 68, 74, 62, 85, 65, 68, 58, 85, 82, 48, 60, 63, 46, 54, 68, 70, 55, 59, 65, 69, 85, 75, 47, 96, 44, 58, 55, 52, 97, 74, 78, 54, 57, 64, 48, 54, 84, 62, 56, 60, 58, 56, 63, 67, 55, 56, 75, 82, 57, 63, 61, 57, 62, 46, 64, 68, 70, 72, 64, 62, 49, 60, 85, 90, 74, 47, 71, 86, 81, 48, 92, 83, 96, 47, 76, 53, 81, 107, 61, 50, 73, 58, 55, 68, 54, 62, 56, 64, 46, 57, 56, 67, 62, 60, 88, 57, 79, 79, 89, 60, 76, 62, 50, 48, 74, 57, 65, 69, 85, 64, 117, 80, 74, 84, 50, 61, 84, 52, 107, 63, 56, 59, 68, 67, 83, 46, 65, 46, 61, 66, 55, 72, 46, 45, 106, 71, 47, 63, 75, 66, 49, 75, 72, 80, 70, 47, 68, 62, 59, 66, 71, 65, 56, 67, 54, 63, 69, 64, 58, 73, 77, 84, 57, 66, 68, 72, 57, 77, 66, 72, 65, 50, 67, 95, 75, 92, 62, 73, 46, 60, 57, 62, 55, 71, 62, 52, 69, 60, 58, 66, 66, 85, 65, 74, 57, 61, 52, 65, 89, 71, 58, 74, 79, 50, 55, 59, 66, 73, 57, 73, 59, 54, 59, 69, 78, 57, 71, 52, 51, 72, 47, 64, 79, 71, 66, 57, 58, 57, 48, 51, 60, 46, 69, 55, 65, 63, 82, 68, 54, 65, 52, 115, 67, 56, 72, 77, 56, 65, 52, 79, 66, 75, 47, 44, 55, 57, 41, 80, 34, 75, 91, 73, 70, 63, 59, 61, 44, 77, 68, 77, 69, 65, 95, 50, 47, 58, 61, 58, 77, 70, 71, 78, 75, 81, 48, 67, 85, 62, 66, 81, 79, 46, 59, 90, 72, 68, 81, 62, 65, 64, 64, 54, 115, 45, 67, 56, 59, 57, 61, 61, 101, 54, 51, 57, 59, 75, 64, 71, 78, 63, 61, 46, 67, 81, 75, 63, 81, 50, 32, 44, 50, 63, 55, 58, 57, 61, 56, 63, 67, 56, 70, 47, 67, 62, 38, 67, 66, 78, 62, 46, 73, 47, 81, 73, 80, 71, 66, 51, 72, 34, 76, 70, 63, 67, 65, 55, 67, 75, 48, 39, 70, 56, 82, 65, 59, 39, 75, 60, 71, 65, 79, 77, 91, 138, 79, 65, 68, 67, 74, 93, 77, 75, 62, 50, 92, 76, 43, 55, 71, 85, 100, 67, 88, 53, 61, 71, 74, 66, 74, 54, 62, 71, 71, 57, 57, 61, 57, 72, 69, 60, 76, 74, 84, 59, 67, 40, 73, 58, 94, 109, 61, 67, 81, 81, 66, 68, 60, 70, 56, 75, 65, 86, 117, 69, 71, 82, 60, 59, 76, 53, 70, 63, 82, 76, 62, 68, 73, 130, 58, 59, 51, 60, 41, 66, 63, 43, 54, 69, 67, 48, 55, 41, 55, 83, 66, 63, 53, 62, 56, 50, 68, 57, 85, 57, 131, 85, 54, 50, 54, 84, 48, 41, 52, 48, 71, 52, 69, 61, 72, 74, 67, 81, 83, 51, 88, 83, 73, 38, 49, 79, 47, 78, 56, 45, 63, 58, 61, 66, 59, 53, 86, 73, 72, 85, 53, 44, 79, 66, 48, 54, 50, 65, 73, 73, 70, 66, 58, 76, 56, 65, 44, 70, 53, 70, 53, 80, 62, 63, 49, 57, 77, 89, 92, 39, 76, 55, 77, 49, 91, 87, 69, 43, 85, 63, 74, 75, 53, 61, 66, 67, 78, 88, 79, 60, 74, 65, 45, 44, 60, 58, 66, 75, 65, 52, 87, 91, 57, 58, 81, 37, 51, 44, 68, 88, 57, 50, 61, 44, 65, 90, 73, 57, 64, 87, 56, 66, 71, 62, 70, 50, 43, 64, 58, 76, 54, 61, 65, 99, 74, 62, 77, 47, 52, 78, 70, 80, 71, 65, 67, 62, 67, 73, 54, 62, 58, 58, 75, 75, 70, 95, 70, 65, 56, 64, 56, 55, 65, 75, 48, 60, 57, 63, 89, 58, 51, 66, 76, 49, 77, 45, 82, 90, 102, 59, 50, 72, 49, 55, 54, 65, 47, 57, 58, 79, 100, 77, 67, 67, 74, 58, 72, 67, 64, 56, 98, 58, 59, 57, 34, 65, 63, 56, 80, 107, 64, 53, 72, 96, 66, 65, 49, 63, 67, 86, 106, 49, 74, 78, 85, 62, 75, 52, 58, 60, 52, 66, 62, 80, 89, 88, 65, 52, 95, 76, 66, 72, 93, 80, 74, 83, 50, 73, 76, 78, 58, 46, 44, 56, 74, 51, 108, 52, 63, 53, 66, 62, 67, 75, 80, 115, 65, 82, 71, 64, 81, 82, 65, 60, 56, 49, 57, 70, 79, 76, 117, 68, 58, 82, 49, 60, 75, 69, 68, 51, 72, 48, 87, 70, 54, 50, 77, 64, 93, 49, 58, 48, 55, 57, 66, 60, 55, 74, 61, 65, 70, 66, 75, 58, 82, 68, 80, 71, 51, 53, 53, 58, 55, 64, 67, 60, 68, 71, 58, 52, 68, 77, 63, 67, 62, 57, 67, 74, 69, 90, 115, 62, 65, 51, 54, 77, 42, 51, 54, 78, 50, 87, 68, 46, 89, 60, 81, 62, 82, 66, 61, 70, 49, 61, 62, 62, 100, 47, 62, 68, 168, 67, 84, 50, 67, 60, 97, 46, 79, 57, 67, 73, 27, 51, 50, 78, 54, 55, 67, 69, 72, 61, 57, 48, 76, 72, 67, 47, 66, 54, 55, 63, 68, 105, 49, 52, 64, 59, 71, 59, 73, 68, 69, 76, 50, 69, 61, 59, 71, 49, 59, 56, 61, 43, 41, 74, 74, 69, 66, 66, 78, 72, 51, 56, 63, 59, 78, 53, 53, 54, 49, 59, 61, 59, 63, 47, 59, 56, 58, 62, 53, 60, 47, 79, 78, 57, 67, 71, 104, 55, 78, 59, 55, 54, 100, 88, 52, 47, 80, 59, 65, 64, 62, 44, 78, 59, 51, 77, 67, 54, 77, 54, 84, 70, 56, 54, 78, 80, 65, 62, 74, 55, 64, 46, 70, 139, 64, 61, 64, 65, 62, 62, 61, 55, 64, 67, 64, 61, 62, 52, 81, 53, 70, 47, 95, 46, 37, 64, 85, 64, 57, 72, 63, 64, 80, 64, 47, 107, 83, 73, 104, 61, 69, 32, 109, 78, 82, 49, 96, 56, 69, 86, 56, 63, 51, 82, 51, 73, 60, 81, 66, 63, 58, 74, 51, 72, 66, 72, 46, 54, 63, 61, 82, 69, 88, 58, 54, 50, 62, 56, 68, 59, 58, 83, 67, 70, 54, 65, 78, 61, 72, 51, 73, 64, 106, 69, 72, 85, 78, 87, 77, 68, 80, 61, 82, 52, 60, 54, 66, 92, 102, 72, 64, 85, 44, 86, 56, 56, 55, 82, 72, 64, 75, 70, 68, 55, 74, 62, 75, 58, 81, 55, 40, 74, 62, 103, 78, 71, 80, 71, 76, 72, 57, 52, 52, 81, 42, 65, 69, 71, 71, 73, 58, 108, 57, 52, 46, 64, 74, 58, 56, 81, 38, 57, 58, 70, 63, 57, 45, 59, 101, 64, 73, 114, 63, 53, 69, 91, 82, 70, 71, 54, 76, 60, 57, 67, 57, 69, 68, 63, 59, 70, 46, 63, 92, 101, 66, 60, 57, 86, 68, 54, 70, 87, 37, 59, 74, 43, 61, 67, 54, 59, 80, 62, 79, 41, 64, 54, 64, 70, 54, 49, 86, 68, 52, 69, 76, 55, 57, 68, 68, 56, 56, 71, 58, 60, 62, 70, 73, 61, 93, 67, 73, 57, 67, 54, 80, 55, 39, 65, 103, 81, 70, 78, 91, 77, 60, 65, 53, 60, 72, 52, 48, 53, 57, 54, 74, 60, 62, 45, 52, 53, 74, 69, 66, 61, 55, 86, 89, 61, 67, 62, 107, 45, 68, 102, 52, 58, 77, 55, 64, 77, 95, 60, 55, 65, 82, 122, 59, 78, 63, 69, 80, 60, 51, 98, 54, 64, 61, 34, 62, 85, 51, 70, 86, 58, 58, 67, 57, 79, 64, 68, 76, 68, 81, 72, 80, 53, 69, 77, 71, 123, 52, 70, 62, 58, 59, 57, 60, 58, 61, 74, 64, 106, 57, 71, 57, 67, 57, 52, 74, 68, 76, 58, 68, 57, 88, 68, 100, 51, 55, 86, 76, 57, 63, 53, 80, 55, 74, 52, 65, 99, 66, 51, 62, 45, 67, 90, 72, 73, 85, 77, 81, 57, 59, 49, 61, 50, 54, 62, 58, 38, 74, 56, 58, 48, 57, 45, 73, 70, 87, 84, 64, 71, 55, 110, 69, 68, 45, 66, 69, 55, 60, 71, 63, 48, 78, 51, 60, 42, 48, 52, 81, 45, 61, 59, 58, 54, 127, 80, 49, 51, 57, 66, 53, 46, 123, 58, 54, 56, 66, 56, 60, 50, 75, 65, 67, 63, 72, 33, 46, 60, 74, 52, 70, 72, 62, 54, 58, 58, 57, 57, 41, 118, 75, 82, 62, 54, 76, 59, 45, 47, 105, 57, 86, 69, 60, 89, 62, 53, 52, 54, 71, 62, 48, 60, 77, 55, 69, 59, 69, 45, 73, 90, 79, 63, 54, 86, 112, 61, 55, 84, 42, 61, 79, 65, 63, 56, 81, 44, 61, 63, 62, 58, 58, 66, 42, 53, 67, 87, 82, 58, 50, 66, 66, 85, 60, 62, 58, 54, 75, 76, 48, 60, 57, 75, 67, 76, 60, 67, 64, 44, 62, 67, 51, 52, 64, 87, 75, 54, 69, 60, 55, 73, 54, 80, 64, 77, 70, 94, 55, 48, 73, 78, 73, 79, 71, 55, 51, 64, 61, 58, 59, 67, 56, 62, 73, 62, 65, 58, 74, 61, 57, 55, 53, 82, 59, 85, 61, 58, 49, 63, 55, 61, 77, 87, 71, 65, 65, 70, 72, 55, 60, 66, 50, 62, 71, 77, 51, 57, 60, 45, 64, 79, 54, 72, 51, 52, 54, 67, 68, 75, 67, 48, 56, 79, 57, 112, 62, 67, 69, 60, 46, 60, 61, 51, 66, 57, 63, 85, 50, 79, 70, 43, 66, 63, 68, 59, 59, 71, 115, 72, 93, 55, 64, 55, 81, 84, 51, 61, 58, 62, 92, 61, 61, 55, 76, 103, 60, 61, 56, 47, 53, 80, 64, 57, 40, 168, 68, 63, 76, 52, 62, 69, 60, 62, 47, 58, 64, 67, 69, 68, 90, 83, 91, 58, 84, 54, 62, 61, 71, 70, 71, 79, 67, 81, 67, 176, 74, 85, 76, 36, 59, 69, 54, 52, 63, 45, 50, 65, 68, 73, 51, 66, 50, 102, 87, 111, 76, 47, 48, 61, 67, 49, 48, 70, 59, 73, 67, 63, 64, 69, 66, 54, 51, 67, 56, 48, 76, 60, 82, 87, 76, 48, 76, 76, 56, 54, 61, 62, 93, 50, 66, 68, 55, 60, 67, 59, 54, 125, 69, 62, 41, 57, 40, 64, 71, 44, 60, 57, 81, 65, 56, 73, 71, 64, 68, 40, 86, 62, 55, 59, 59, 71, 70, 75, 61, 67, 56, 66, 56, 57, 84, 62, 89, 42, 47, 100, 61, 44, 84, 52, 77, 54, 71, 54, 60, 63, 82, 62, 58, 68, 93, 72, 73, 54, 59, 91, 45, 71, 43, 95, 78, 64, 85, 77, 64, 74, 80, 54, 46, 80, 75, 45, 69, 56, 71, 51, 74, 60, 49, 73, 59, 83, 61, 84, 72, 55, 49, 70, 73, 67, 76, 68, 52, 60, 54, 75, 66, 51, 89, 51, 57, 79, 46, 74, 64, 77, 61, 65, 58, 88, 50, 55, 68, 48, 64, 108, 72, 71, 81, 56, 92, 67, 96, 53, 40, 55, 60, 62, 71, 69, 83, 46, 69, 65, 64, 69, 65, 50, 102, 50, 46, 65, 68, 65, 72, 54, 73, 61, 73, 53, 48, 83, 70, 67, 61, 57, 65, 59, 74, 57, 57, 75, 49, 64, 129, 56, 75, 75, 108, 56, 56, 92, 128, 69, 69, 61, 56, 76, 68, 51, 76, 97, 87, 63, 70, 75, 72, 59, 44, 47, 64, 72, 70, 83, 74, 65, 56, 57, 59, 61, 72, 44, 61, 63, 57, 70, 72, 75, 57, 63, 68, 80, 83, 68, 68, 97, 54, 73, 56, 59, 48, 72, 86, 71, 60, 61, 81, 80, 57, 63, 67, 53, 65, 58, 58, 47, 62, 69, 64, 64, 72, 59, 65, 27, 91, 44, 38, 62, 88, 51, 64, 57, 66, 63, 58, 74, 80, 66, 58, 74, 78, 71, 72, 118, 64, 66, 54, 52, 83, 52, 55, 66, 54, 47, 77, 45, 89, 53, 55, 55, 130, 69, 46, 71, 72, 70, 58, 66, 52, 61, 64, 72, 61, 62, 73, 51, 79, 54, 67, 42, 49, 59, 66, 63, 78, 57, 42, 110, 55, 62, 80, 63, 71, 77, 61, 60, 75, 49, 89, 59, 61, 104, 67, 54, 58, 35, 64, 71, 71, 72, 91, 83, 85, 60, 81, 64, 61, 70, 76, 73, 44, 76, 88, 46, 57, 63, 90, 80, 60, 84, 57, 84, 53, 57, 51, 49, 84, 68, 75, 59, 54, 57, 58, 70, 55, 62, 79, 50, 64, 68, 49, 57, 58, 49, 52, 98, 101, 61, 78, 37, 70, 78, 80, 80, 49, 71, 92, 65, 59, 60, 64, 71, 58, 57, 77, 51, 60, 57, 49, 65, 60, 40, 76, 80, 88, 66, 62, 58, 43, 59, 57, 97, 49, 46, 80, 57, 55, 87, 66, 61, 51, 67, 92, 84, 69, 57, 66, 63, 69, 68, 59, 81, 64, 57, 61, 62, 70, 70, 102, 78, 72, 74, 65, 71, 59, 59, 73, 49, 93, 77, 41, 90, 83, 70, 72, 64, 77, 70, 60, 64, 62, 39, 68, 52, 30, 79, 50, 53, 64, 72, 73, 68, 59, 80, 59, 73, 75, 41, 86, 49, 63, 43, 41, 65, 95, 79, 74, 66, 87, 67, 39, 50, 42, 54, 70, 75, 85, 59, 64, 67, 54, 68, 58, 61, 76, 61, 81, 80, 60, 46, 61, 70, 60, 71, 69, 53, 69, 61, 71, 59, 104, 56, 43, 66, 55, 56, 67, 96, 66, 57, 79, 80, 59, 77, 76, 70, 59, 66, 55, 58, 83, 117, 71, 64, 52, 61, 54, 78, 100, 91, 67, 61, 61, 67, 78, 64, 58, 64, 47, 61, 70, 41, 58, 50, 61, 76, 66, 54, 46, 65, 61, 72, 57, 69, 46, 51, 63, 64, 50, 66, 54, 63, 55, 64, 58, 75, 55, 61, 52, 68, 58, 69, 62, 60, 59, 77, 47, 80, 61, 56, 75, 105, 56, 72, 45, 47, 60, 85, 61, 72, 73, 55, 65, 96, 65, 59, 70, 72, 72, 86, 62, 56, 69, 61, 47, 57, 91, 74, 47, 51, 51, 56, 55, 58, 50, 50, 42, 70, 68, 59, 91, 74, 97, 46, 75, 58, 72, 60, 77, 60, 60, 73, 69, 57, 47, 81, 64, 68, 51, 55, 57, 77, 61, 65, 48, 61, 68, 59, 69, 41, 63, 78, 79, 56, 47, 69, 102, 59, 47, 64, 66, 86, 57, 84, 78, 83, 77, 61, 70, 71, 47, 48, 69, 101, 75, 54, 77, 65, 75, 77, 77, 63, 48, 39, 68, 64, 43, 73, 43, 69, 78, 65, 77, 70, 69, 87, 72, 70, 63, 64, 84, 89, 82, 61, 83, 67, 48, 63, 60, 46, 54, 59, 62, 52, 56, 56, 57, 64, 56, 58, 76, 66, 75, 76, 71, 50, 69, 76, 54, 62, 73, 82, 60, 65, 77, 113, 60, 67, 76, 65, 64, 94, 85, 58, 60, 81, 56, 62, 66, 62, 71, 64, 51, 98, 60, 80, 77, 57, 97, 57, 54, 61, 60, 85, 76, 47, 41, 52, 57, 57, 62, 51, 54, 69, 48, 81, 53, 74, 54, 67, 55, 60, 43, 65, 72, 72, 41, 70, 66, 56, 78, 59, 59, 82, 69, 93, 63, 91, 56, 61, 66, 45, 63, 68, 83, 63, 81, 59, 57, 45, 52, 69, 58, 62, 51, 66, 77, 81, 49, 47, 73, 67, 82, 64, 68, 78, 59, 62, 74, 69, 65, 76, 69, 71, 69, 113, 68, 44, 65, 59, 49, 57, 78, 59, 38, 71, 77, 66, 51, 46, 44, 56, 56, 99, 66, 45, 60, 71, 165, 67, 66, 49, 95, 48, 55, 51, 46, 64, 122, 52, 51, 77, 73, 51, 77, 50, 68, 65, 56, 55, 71, 62, 92, 60, 78, 67, 65, 50, 73, 53, 61, 78, 67, 47, 67, 72, 60, 64, 64, 67, 52, 59, 60, 66, 62, 62, 67, 80, 48, 72, 54, 64, 115, 85, 74, 78, 70, 62, 77, 73, 48, 72, 29, 53, 61, 64, 64, 54, 53, 97, 51, 71, 74, 64, 60, 100, 101, 69, 59, 78, 74, 64, 85, 53, 82, 61, 55, 69, 51, 60, 73, 52, 58, 72, 68, 59, 62, 68, 60, 54, 50, 60, 65, 82, 87, 48, 52, 74, 67, 62, 113, 60, 69, 93, 77, 97, 82, 56, 64, 68, 75, 79, 52, 78, 63, 97, 84, 72, 72, 61, 65, 79, 70, 68, 63, 81, 67, 86, 50, 101, 84, 81, 57, 57, 64, 65, 81, 81, 85, 68, 85, 53, 48, 52, 82, 72, 58, 47, 68, 67, 91, 49, 64, 76, 57, 93, 47, 70, 68, 47, 83, 59, 138, 73, 93, 59, 98, 61, 43, 79, 55, 81, 74, 35, 70, 77, 82, 53, 83, 56, 65, 55, 65, 64, 49, 59, 62, 60, 50, 66, 80, 52, 82, 64, 61, 54, 50, 72, 75, 76, 89, 65, 56, 75, 35, 67, 92, 39, 48, 61, 66, 64, 87, 77, 69, 48, 85, 39, 68, 43, 68, 50, 49, 48, 59, 101, 80, 83, 99, 57, 56, 66, 45, 49, 53, 57, 103, 50, 45, 64, 54, 77, 76, 65, 54, 42, 63, 84, 66, 42, 55, 64, 66, 35, 53, 85, 81, 71, 72, 59, 58, 58, 50, 62, 50, 52, 66, 65, 58, 73, 63, 56, 71, 47, 64, 55, 60, 54, 84, 69, 73, 55, 85, 47, 80, 69, 67, 65, 47, 55, 93, 86, 74, 49, 60, 61, 53, 67, 74, 81, 46, 66, 55, 73, 71, 67, 61, 88, 64, 55, 99, 39, 51, 73, 66, 48, 53, 80, 54, 44, 33, 48, 61, 69, 71, 98, 82, 71, 38, 56, 43, 55, 76, 93, 61, 69, 79, 49, 85, 65, 66, 47, 61, 60, 60, 73, 56, 79, 64, 61, 65, 68, 47, 89, 83, 68, 102, 52, 65, 54, 50, 58, 55, 53, 86, 70, 60, 51, 63, 97, 68, 65, 66, 61, 43, 59, 60, 64, 79, 71, 88, 68, 63, 78, 58, 98, 70, 74, 62, 70, 104, 106, 72, 105, 75, 61, 57, 52, 50, 62, 52, 44, 71, 61, 88, 56, 65, 66, 66, 75, 73, 64, 85, 44, 69, 58, 79, 83, 96, 53, 76, 73, 58, 68, 67, 62, 62, 66, 44, 55, 72, 54, 65, 69, 81, 59, 48, 70, 82, 62, 61, 65, 64, 88, 97, 55, 51, 49, 65, 74, 80, 66, 86, 68, 88, 62, 72, 60, 46, 50, 94, 91, 60, 60, 66, 63, 48, 76, 68, 111, 62, 60, 58, 49, 43, 59, 55, 57, 48, 59, 65, 55, 59, 60, 51, 48, 59, 66, 75, 67, 57, 54, 62, 49, 74, 71, 98, 67, 98, 71, 43, 73, 63, 42, 72, 98, 70, 62, 78, 82, 77, 86, 92, 65, 70, 79, 104, 51, 62, 59, 65, 73, 55, 61, 53, 84, 62, 99, 63, 60, 77, 69, 77, 68, 65, 107, 57, 78, 66, 74, 64, 53, 52, 67, 62, 60, 71, 87, 98, 55, 89, 66, 72, 81, 57, 63, 87, 47, 42, 45, 53, 74, 47, 79, 72, 74, 55, 55, 72, 68, 67, 56, 63, 61, 60, 82, 80, 59, 81, 80, 104, 92, 69, 46, 54, 76, 67, 80, 55, 56, 73, 83, 88, 51, 75, 60, 76, 46, 67, 74, 53, 59, 69, 75, 65, 119, 42, 67, 49, 68, 62, 59, 65, 80, 61, 67, 64, 135, 70, 54, 62, 66, 74, 43, 90, 77, 61, 65, 68, 81, 46, 56, 77, 71, 61, 92, 78, 73, 62, 55, 105, 55, 45, 62, 83, 67, 47, 49, 75, 64, 51, 85, 68, 64, 99, 68, 62, 94, 82, 83, 83, 63, 63, 80, 80, 62, 80, 62, 56, 33, 89, 79, 96, 61, 79, 50, 58, 56, 65, 66, 60, 49, 64, 56, 65, 52, 66, 78, 54, 47, 57, 67, 89, 88, 54, 58, 91, 54, 68, 43, 92, 51, 59, 45, 87, 77, 83, 73, 55, 52, 53, 54, 65, 90, 63, 42, 80, 50, 86, 84, 84, 49, 50, 56, 38, 83, 67, 84, 82, 72, 55, 93, 37, 64, 103, 60, 63, 58, 66, 77, 49, 73, 81, 62, 67, 74, 60, 75, 63, 44, 45, 91, 67, 75, 47, 70, 80, 74, 73, 40, 65, 63, 64, 38, 81, 68, 49, 76, 69, 56, 83, 46, 54, 56, 65, 60, 53, 65, 73, 56, 48, 93, 75, 57, 75, 65, 89, 81, 60, 51, 63, 66, 57, 64, 62, 71, 66, 61, 49, 79, 67, 87, 51, 85, 106, 64, 72, 50, 67, 110, 69, 63, 64, 69, 97, 87, 65, 64, 77, 78, 59, 65, 87, 73, 75, 71, 97, 96, 41, 54, 82, 78, 61, 70, 67, 60, 84, 70, 54, 86, 103, 76, 58, 78, 62, 57, 65, 69, 90, 41, 65, 66, 79, 50, 60, 58, 67, 81, 85, 34, 67, 83, 81, 51, 89, 66, 60, 59, 71, 67, 59, 69, 53, 67, 55, 55, 55, 61, 54, 71, 54, 74, 70, 54, 61, 69, 67, 72, 83, 52, 61, 73, 68, 56, 44, 36, 52, 62, 78, 54, 69, 73, 52, 94, 56, 71, 75, 66, 42, 92, 59, 71, 61, 49, 57, 99, 64, 53, 72, 56, 50, 77, 67, 62, 82, 65, 58, 70, 73, 78, 67, 119, 68, 71, 89, 48, 65, 33, 69, 52, 67, 66, 49, 60, 68, 48, 97, 78, 85, 57, 57, 61, 69, 53, 73, 61, 69, 71, 68, 82, 51, 81, 45, 71, 50, 86, 66, 65, 63, 58, 76, 82, 56, 60, 59, 65, 67, 42, 39, 109, 76, 71, 72, 58, 71, 65, 53, 65, 57, 43, 66, 64, 66, 53, 69, 38, 62, 82, 75, 57, 64, 65, 55, 70, 75, 65, 62, 93, 68, 65, 67, 67, 54, 93, 40, 51, 63, 59, 110, 65, 53, 74, 49, 61, 64, 90, 44, 68, 102, 69, 68, 65, 44, 65, 71, 47, 64, 90, 50, 74, 79, 58, 68, 53, 41, 63, 81, 53, 68, 106, 55, 43, 66, 58, 64, 68, 75, 73, 66, 31, 71, 52, 65, 77, 69, 66, 52, 87, 55, 61, 65, 93, 69, 90, 60, 74, 58, 61, 53, 86, 89, 62, 53, 59, 73, 71, 67, 75, 59, 92, 54, 57, 67, 73, 96, 44, 71, 48, 70, 55, 103, 60, 44, 51, 53, 57, 80, 96, 77, 65, 54, 85, 65, 71, 65, 52, 87, 53, 77, 84, 92, 75, 44, 70, 62, 58, 69, 47, 55, 89, 64, 87, 95, 73, 57, 49, 73, 61, 89, 94, 46, 36, 101, 67, 62, 54, 53, 69, 56, 59, 48, 68, 67, 47, 69, 69, 71, 71, 82, 77, 100, 104, 75, 72, 57, 94, 59, 25, 67, 75, 52, 80, 75, 63, 60, 78, 77, 63, 56, 66, 60, 69, 72, 74, 59, 56, 59, 70, 66, 96, 38, 74, 62, 50, 54, 49, 70, 71, 49, 52, 79, 69, 77, 47, 66, 75, 52, 59, 67, 55, 58, 63, 73, 87, 61, 67, 81, 65, 83, 124, 66, 80, 72, 50, 61, 61, 73, 48, 112, 49, 71, 79, 56, 70, 72, 57, 56, 64, 53, 75, 59, 55, 57, 67, 57, 44, 50, 42, 91, 59, 61, 52, 59, 50, 53, 62, 56, 60, 59, 66, 54, 77, 80, 72, 56, 83, 49, 69, 57, 59, 60, 83, 59, 51, 53, 93, 56, 52, 79, 64, 58, 77, 51, 49, 54, 54, 49, 47, 66, 61, 86, 59, 67, 97, 77, 47, 85, 64, 50, 92, 98, 53, 81, 62, 67, 64, 87, 67, 49, 63, 96, 86, 72, 69, 42, 52, 67, 70, 68, 71, 52, 61, 79, 56, 68, 66, 56, 73, 49, 70, 66, 113, 66, 89, 39, 65, 63, 65, 45, 57, 52, 68, 63, 69, 52, 91, 76, 70, 77, 74, 73, 76, 78, 57, 69, 59, 63, 60, 73, 90, 45, 49, 99, 123, 64, 92, 66, 68, 65, 70, 68, 80, 58, 74, 75, 75, 45, 30, 58, 56, 72, 64, 47, 67, 70, 48, 46, 51, 67, 73, 78, 42, 66, 74, 60, 93, 49, 73, 63, 56, 75, 56, 51, 77, 68, 94, 72, 78, 65, 59, 74, 65, 71, 69, 62, 55, 67, 78, 57, 75, 77, 61, 38, 107, 87, 62, 55, 96, 73, 56, 72, 42, 61, 62, 89, 103, 48, 50, 95, 68, 65, 60, 54, 73, 101, 61, 63, 58, 79, 70, 58, 69, 64, 66, 53, 95, 55, 93, 45, 52, 59, 78, 82, 70, 82, 69, 76, 71, 71, 66, 78, 56, 58, 57, 83, 71, 56, 55, 72, 65, 76, 64, 49, 66, 71, 64, 63, 61, 56, 63, 54, 59, 75, 85, 61, 101, 73, 58, 55, 68, 51, 72, 104, 68, 66, 76, 62, 58, 67, 71, 68, 150, 63, 53, 53, 43, 78, 68, 86, 72, 38, 73, 70, 61, 50, 49, 88, 68, 67, 100, 107, 70, 67, 76, 55, 63, 53, 50, 60, 57, 74, 56, 50, 89, 65, 53, 56, 57, 74, 52, 68, 53, 39, 59, 95, 53, 72, 73, 65, 85, 67, 63, 56, 82, 136, 66, 70, 77, 71, 61, 69, 35, 68, 70, 46, 56, 56, 44, 82, 65, 77, 62, 60, 57, 47, 50, 62, 58, 90, 60, 52, 65, 53, 56, 55, 71, 64, 53, 77, 68, 87, 49, 42, 46, 60, 56, 90, 55, 58, 52, 79, 54, 46, 50, 59, 66, 69, 54, 67, 61, 66, 69, 73, 81, 61, 55, 53, 70, 76, 78, 57, 80, 58, 66, 65, 72, 72, 69, 59, 97, 71, 69, 76, 75, 68, 61, 76, 52, 72, 67, 61, 50, 71, 61, 80, 65, 75, 89, 60, 42, 55, 65, 62, 74, 44, 52, 59, 57, 55, 69, 60, 79, 68, 49, 61, 57, 61, 67, 59, 55, 82, 54, 69, 81, 69, 58, 110, 81, 60, 64, 49, 80, 73, 81, 55, 68, 71, 83, 67, 70, 57, 34, 63, 73, 49, 50, 50, 82, 74, 63, 54, 64, 74, 67, 64, 67, 65, 66, 79, 58, 76, 79, 60, 64, 65, 83, 77, 71, 54, 56, 67, 52, 70, 68, 86, 72, 65, 72, 48, 59, 61, 59, 63, 73, 47, 54, 93, 54, 49, 89, 61, 58, 57, 60, 83, 57, 58, 72, 68, 69, 78, 65, 59, 79, 55, 65, 48, 63, 81, 82, 85, 61, 66, 52, 61, 63, 66, 55, 98, 72, 53, 63, 55, 63, 55, 47, 73, 67, 74, 66, 100, 55, 63, 56, 54, 46, 75, 61, 60, 47, 65, 57, 58, 29, 73, 57, 62, 77, 55, 59, 56, 63, 55, 60, 88, 56, 64, 61, 61, 69, 70, 73, 64, 88, 59, 45, 68, 57, 73, 84, 64, 52, 66, 51, 64, 60, 62, 67, 74, 59, 73, 67, 106, 68, 79, 55, 66, 56, 67, 91, 91, 53, 55, 71, 67, 68, 82, 69, 69, 73, 63, 74, 82, 97, 65, 61, 78, 86, 71, 78, 68, 83, 64, 64, 54, 64, 54, 78, 64, 45, 61, 67, 57, 64, 56, 92, 80, 146, 53, 70, 62, 69, 68, 74, 76, 69, 67, 64, 72, 81, 64, 135, 105, 65, 56, 74, 79, 58, 72, 68, 64, 74, 45, 52, 63, 62, 70, 66, 54, 55, 57, 54, 69, 66, 61, 67, 74, 45, 87, 93, 67, 54, 61, 74, 62, 90, 55, 63, 64, 62, 65, 51, 87, 40, 59, 80, 64, 83, 59, 51, 57, 77, 54, 73, 73, 50, 86, 72, 59, 72, 58, 48, 65, 81, 63, 60, 59, 59, 56, 65, 55, 83, 45, 51, 69, 78, 62, 69, 38, 93, 84, 77, 42, 70, 56, 54, 70, 74, 105, 60, 71, 57, 59, 72, 57, 65, 55, 44, 89, 68, 60, 84, 66, 58, 88, 100, 71, 54, 71, 71, 72, 64, 69, 48, 73, 74, 87, 57, 96, 64, 56, 87, 61, 67, 68, 72, 65, 78, 58, 58, 73, 74, 79, 67, 64, 83, 63, 73, 91, 64, 67, 65, 62, 84, 57, 43, 71, 58, 60, 67, 53, 77, 53, 75, 55, 108, 86, 56, 63, 102, 64, 96, 59, 63, 63, 92, 64, 52, 47, 56, 64, 56, 50, 51, 60, 45, 56, 48, 54, 55, 55, 74, 52, 58, 61, 43, 52, 51, 47, 72, 51, 85, 68, 71, 53, 57, 53, 57, 70, 80, 98, 71, 75, 85, 52, 71, 79, 48, 81, 65, 72, 58, 60, 77, 67, 82, 64, 87, 53, 43, 67, 63, 79, 69, 73, 82, 59, 58, 59, 68, 54, 64, 74, 65, 70, 64, 58, 80, 68, 44, 46, 72, 52, 55, 54, 64, 67, 95, 66, 84, 68, 57, 55, 63, 93, 83, 133, 64, 85, 50, 54, 69, 84, 72, 67, 71, 68, 54, 66, 60, 118, 82, 78, 58, 62, 59, 71, 63, 54, 84, 99, 44, 67, 64, 59, 71, 72, 106, 63, 41, 64, 62, 78, 57, 79, 69, 77, 27, 87, 76, 50, 69, 63, 74, 67, 50, 54, 82, 53, 68, 51, 74, 81, 75, 75, 70, 67, 59, 66, 47, 78, 59, 64, 35, 74, 63, 80, 99, 53, 60, 67, 66, 54, 59, 68, 55, 39, 57, 85, 79, 63, 81, 78, 68, 78, 62, 50, 85, 66, 63, 65, 69, 63, 76, 61, 53, 81, 89, 60, 58, 45, 76, 58, 105, 65, 59, 62, 68, 126, 60, 75, 59, 64, 57, 75, 58, 92, 56, 68, 48, 64, 72, 65, 46, 76, 81, 41, 78, 34, 68, 67, 55, 66, 83, 59, 57, 51, 77, 68, 55, 46, 44, 81, 69, 53, 68, 53, 71, 78, 63, 45, 99, 43, 51, 100, 74, 65, 51, 68, 57, 60, 56, 75, 70, 63, 66, 56, 66, 68, 70, 100, 57, 60, 86, 50, 66, 56, 59, 69, 67, 79, 57, 72, 49, 71, 46, 71, 50, 86, 67, 72, 76, 60, 86, 61, 71, 72, 84, 80, 52, 73, 59, 57, 37, 91, 72, 47, 85, 81, 50, 48, 125, 63, 75, 52, 66, 87, 64, 73, 68, 57, 67, 59, 78, 71, 80, 88, 53, 33, 88, 69, 59, 54, 41, 113, 58, 49, 70, 70, 63, 61, 80, 76, 89, 63, 52, 42, 68, 55, 89, 91, 64, 76, 58, 74, 56, 72, 67, 67, 56, 62, 76, 89, 69, 78, 58, 131, 51, 90, 72, 67, 69, 78, 64, 57, 48, 51, 59, 69, 54, 55, 65, 50, 71, 44, 54, 77, 79, 63, 65, 54, 85, 52, 68, 52, 56, 77, 99, 77, 73, 63, 73, 79, 57, 45, 57, 67, 70, 50, 59, 57, 55, 63, 83, 77, 47, 53, 69, 52, 74, 46, 57, 60, 81, 73, 60, 55, 54, 105, 56, 47, 62, 41, 54, 71, 47, 57, 60, 74, 65, 67, 60, 68, 93, 77, 77, 55, 86, 77, 52, 62, 70, 43, 69, 66, 73, 74, 72, 62, 71, 53, 55, 42, 66, 61, 102, 59, 52, 75, 85, 64, 47, 38, 58, 78, 91, 65, 72, 74, 74, 50, 76, 72, 74, 48, 65, 69, 59, 75, 53, 81, 71, 53, 64, 60, 49, 79, 60, 51, 49, 74, 50, 69, 70, 87, 86, 47, 68, 37, 83, 65, 62, 60, 60, 58, 68, 64, 98, 97, 77, 70, 52, 84, 63, 50, 76, 62, 58, 63, 80, 55, 46, 58, 62, 69, 61, 47, 92, 62, 72, 58, 50, 34, 110, 89, 51, 57, 57, 61, 89, 61, 56, 64, 56, 67, 51, 51, 56, 93, 69, 57, 60, 82, 62, 54, 66, 56, 44, 45, 49, 53, 58, 83, 64, 75, 56, 69, 45, 66, 43, 62, 84, 76, 55, 52, 101, 51, 96, 54, 51, 89, 84, 55, 69, 53, 50, 77, 107, 87, 60, 57, 68, 63, 88, 64, 64, 59, 42, 76, 78, 70, 62, 42, 58, 57, 50, 63, 64, 60, 47, 60, 54, 58, 71, 76, 71, 73, 54, 69, 73, 52, 83, 66, 125, 81, 56, 65, 62, 73, 70, 62, 96, 90, 61, 125, 63, 47, 60, 63, 59, 90, 57, 68, 60, 46, 49, 65, 77, 73, 86, 71, 78, 60, 70, 72, 61, 46, 67, 78, 52, 73, 71, 76, 51, 74, 71, 73, 53, 56, 51, 42, 56, 50, 75, 57, 79, 67, 67, 78, 49, 45, 59, 67, 91, 64, 79, 45, 34, 69, 56, 42, 66, 77, 56, 71, 53, 61, 71, 64, 54, 42, 68, 78, 95, 59, 57, 71, 64, 72, 77, 62, 53, 81, 83, 87, 77, 46, 65, 64, 88, 68, 68, 47, 51, 68, 92, 65, 55, 41, 64, 56, 71, 80, 68, 53, 60, 54, 67, 72, 54, 45, 80, 59, 52, 58, 77, 80, 64, 50, 65, 83, 67, 64, 52, 96, 51, 36, 48, 69, 81, 83, 76, 48, 38, 63, 84, 74, 58, 56, 78, 57, 68, 62, 62, 64, 90, 69, 57, 78, 63, 71, 70, 45, 104, 53, 48, 65, 73, 51, 58, 55, 70, 74, 64, 66, 58, 98, 74, 67, 60, 46, 73, 71, 49, 69, 83, 56, 58, 73, 66, 55, 65, 62, 85, 78, 59, 57, 57, 67, 44, 68, 77, 70, 68, 42, 76, 76, 68, 55, 57, 55, 64, 70, 61, 87, 64, 87, 96, 54, 55, 73, 86, 44, 61, 49, 57, 53, 55, 83, 62, 45, 72, 101, 69, 54, 40, 60, 64, 54, 71, 72, 73, 60, 70, 62, 79, 79, 84, 66, 93, 68, 65, 52, 86, 68, 52, 40, 76, 63, 57, 50, 78, 72, 70, 69, 76, 49, 80, 68, 58, 57, 80, 65, 60, 96, 88, 59, 75, 35, 68, 67, 88, 92, 59, 66, 85, 68, 79, 64, 85, 48, 114, 61, 93, 78, 77, 62, 68, 53, 58, 64, 63, 45, 60, 54, 36, 68, 89, 50, 52, 95, 83, 84, 77, 77, 107, 91, 45, 58, 48, 47, 52, 59, 63, 59, 53, 57, 68, 70, 81, 42, 69, 82, 52, 79, 66, 87, 69, 82, 90, 89, 65, 65, 70, 44, 65, 68, 76, 84, 59, 77, 61, 51, 67, 73, 66, 59, 48, 62, 63, 64, 63, 70, 80, 88, 44, 74, 65, 54, 61, 112, 50, 60, 57, 73, 50, 53, 47, 57, 64, 115, 44, 78, 93, 56, 81, 72, 80, 54, 42, 62, 56, 68, 52, 62, 49, 71, 70, 70, 56, 83, 57, 87, 73, 55, 71, 59, 79, 79, 69, 63, 59, 40, 45, 100, 91, 75, 67, 68, 59, 70, 67, 48, 74, 74, 74, 57, 74, 66, 68, 50, 78, 60, 69, 46, 69, 62, 37, 33, 50, 58, 88, 53, 86, 58, 58, 66, 111, 59, 49, 48, 60, 43, 49, 55, 80, 78, 89, 51, 60, 66, 67, 43, 61, 67, 51, 66, 38, 87, 64, 63, 62, 69, 55, 81, 75, 69, 75, 57, 45, 67, 57, 64, 61, 71, 62, 98, 77, 68, 28, 45, 60, 67, 127, 53, 94, 80, 85, 74, 53, 71, 70, 59, 71, 44, 69, 44, 61, 70, 67, 68, 96, 71, 86, 48, 48, 62, 56, 74, 75, 64, 116, 62, 69, 55, 79, 57, 70, 47, 67, 61, 63, 58, 69, 49, 50, 76, 90, 81, 101, 63, 62, 84, 81, 88, 55, 52, 74, 94, 56, 60, 49, 50, 69, 79, 44, 61, 45, 57, 55, 77, 68, 96, 57, 84, 51, 65, 85, 28, 58, 76, 68, 52, 52, 67, 62, 76, 63, 73, 86, 56, 40, 42, 40, 62, 55, 52, 79, 63, 59, 62, 60, 78, 56, 93, 72, 67, 88, 80, 65, 60, 60, 96, 69, 54, 62, 114, 63, 88, 53, 88, 84, 79, 54, 57, 86, 64, 74, 67, 77, 58, 77, 58, 72, 59, 94, 68, 65, 66, 67, 61, 61, 59, 86, 80, 61, 61, 53, 67, 58, 62, 72, 73, 62, 63, 68, 63, 70, 57, 75, 75, 109, 50, 70, 56, 87, 38, 96, 50, 67, 130, 60, 52, 58, 66, 56, 70, 60, 50, 62, 54, 56, 80, 89, 61, 61, 63, 65, 79, 61, 78, 58, 59, 74, 86, 70, 67, 82, 58, 52, 61, 53, 66, 95, 80, 69, 32, 61, 55, 69, 67, 69, 67, 108, 67, 79, 55, 62, 60, 71, 47, 55, 59, 70, 56, 39, 63, 72, 85, 39, 73, 52, 70, 66, 55, 53, 62, 69, 82, 59, 55, 63, 81, 102, 115, 54, 71, 54, 54, 108, 74, 98, 71, 43, 44, 66, 62, 60, 57, 64, 56, 61, 54, 55, 89, 42, 69, 72, 41, 80, 73, 64, 64, 67, 73, 66, 62, 82, 108, 81, 55, 80, 72, 77, 64, 73, 56, 69, 66, 50, 65, 72, 57, 72, 92, 53, 75, 65, 76, 65, 68, 59, 67, 35, 78, 57, 75, 61, 73, 71, 56, 71, 52, 88, 47, 80, 71, 37, 79, 63, 81, 74, 81, 67, 50, 75, 85, 74, 62, 71, 86, 58, 93, 60, 59, 56, 78, 64, 82, 64, 68, 72, 88, 65, 75, 62, 85, 69, 124, 46, 85, 50, 65, 46, 72, 76, 79, 42, 75, 72, 70, 58, 45, 68, 47, 63, 65, 93, 55, 64, 52, 65, 66, 107, 80, 75, 90, 44, 52, 68, 68, 117, 96, 86, 113, 57, 52, 52, 66, 78, 58, 81, 64, 53, 70, 71, 42, 50, 69, 54, 59, 75, 71, 52, 73, 43, 62, 42, 70, 66, 63, 57, 57, 79, 60, 59, 47, 64, 48, 52, 93, 70, 51, 89, 74, 59, 47, 63, 72, 68, 64, 47, 52, 66, 64, 48, 84, 70, 65, 53, 131, 89, 64, 53, 65, 77, 77, 48, 65, 86, 45, 79, 57, 60, 54, 66, 65, 53, 47, 74, 61, 89, 77, 42, 74, 59, 73, 33, 78, 68, 64, 63, 66, 61, 58, 51, 67, 52, 82, 59, 74, 65, 67, 56, 65, 66, 78, 82, 60, 61, 66, 67, 68, 69, 64, 52, 48, 47, 57, 40, 82, 68, 64, 99, 103, 53, 56, 63, 81, 66, 51, 128, 57, 72, 72, 59, 89, 52, 69, 59, 55, 74, 59, 66, 43, 61, 59, 78, 77, 70, 53, 57, 84, 151, 67, 52, 51, 58, 90, 136, 77, 75, 63, 58, 49, 72, 62, 65, 56, 78, 91, 87, 53, 65, 63, 57, 69, 59, 72, 62, 66, 55, 81, 76, 109, 67, 46, 58, 75, 67, 72, 95, 76, 60, 81, 54, 58, 70, 68, 48, 82, 59, 67, 27, 77, 60, 82, 68, 61, 54, 73, 57, 67, 75, 75, 94, 74, 55, 38, 79, 61, 49, 69, 64, 72, 67, 76, 82, 48, 72, 69, 82, 54, 35, 57, 88, 41, 56, 40, 58, 65, 67, 75, 57, 70, 61, 60, 54, 58, 84, 51, 65, 71, 83, 69, 67, 79, 47, 53, 99, 43, 66, 82, 53, 80, 85, 55, 74, 80, 55, 58, 65, 52, 62, 61, 63, 54, 60, 52, 83, 55, 59, 60, 63, 59, 68, 62, 75, 62, 58, 59, 85, 87, 76, 67, 125, 69, 30, 93, 82, 49, 50, 60, 66, 51, 35, 70, 58, 47, 72, 80, 62, 50, 67, 49, 87, 69, 60, 83, 67, 51, 69, 62, 79, 72, 69, 68, 37, 72, 59, 76, 46, 59, 55, 50, 46, 66, 79, 84, 72, 76, 92, 57, 100, 92, 64, 106, 64, 86, 80, 74, 64, 70, 70, 62, 63, 64, 73, 73, 95, 57, 89, 118, 69, 60, 54, 74, 107, 71, 69, 67, 56, 58, 52, 25, 56, 60, 73, 54, 57, 60, 75, 52, 63, 88, 69, 49, 74, 57, 77, 82, 60, 59, 76, 57, 43, 85, 91, 64, 59, 54, 67, 71, 72, 51, 71, 68, 78, 49, 58, 61, 57, 61, 36, 72, 54, 69, 91, 60, 51, 65, 56, 74, 46, 66, 67, 50, 64, 88, 83, 58, 96, 60, 93, 63, 61, 46, 72, 58, 58, 42, 81, 79, 43, 61, 54, 69, 81, 56, 69, 89, 57, 63, 67, 83, 64, 78, 64, 79, 55, 54, 50, 57, 53, 55, 70, 58, 86, 67, 64, 69, 76, 61, 53, 56, 67, 89, 61, 56, 43, 60, 64, 46, 67, 46, 49, 62, 52, 54, 85, 60, 74, 67, 76, 70, 57, 54, 44, 54, 59, 66, 70, 63, 86, 53, 78, 44, 68, 100, 73, 70, 61, 62, 81, 62, 50, 81, 78, 53, 63, 72, 56, 49, 60, 71, 61, 63, 61, 64, 51, 28, 89, 70, 68, 60, 47, 63, 51, 58, 59, 51, 66, 77, 69, 56, 49, 54, 83, 57, 65, 65, 68, 67, 50, 66, 102, 76, 62, 50, 59, 58, 72, 44, 96, 42, 84, 77, 49, 72, 105, 69, 127, 75, 55, 48, 53, 48, 38, 81, 72, 58, 66, 77, 80, 49, 73, 79, 41, 77, 45, 54, 72, 78, 75, 51, 75, 70, 50, 38, 67, 68, 59, 59, 52, 43, 77, 99, 75, 52, 84, 56, 93, 57, 52, 80, 70, 58, 33, 57, 85, 60, 55, 42, 46, 54, 93, 68, 88, 141, 68, 44, 58, 84, 66, 64, 75, 69, 63, 74, 61, 60, 82, 104, 72, 70, 49, 52, 68, 67, 67, 101, 92, 49, 73, 74, 67, 63, 63, 33, 58, 69, 80, 67, 70, 41, 64, 51, 77, 58, 46, 62, 40, 52, 84, 52, 49, 76, 91, 59, 65, 86, 55, 56, 85, 64, 63, 66, 65, 52, 78, 66, 58, 64, 96, 48, 60, 58, 67, 51, 66, 48, 80, 78, 57, 72, 61, 67, 74, 59, 67, 58, 78, 79, 68, 34, 68, 82, 47, 59, 50, 76, 63, 45, 56, 54, 66, 83, 68, 76, 60, 54, 69, 69, 70, 145, 51, 55, 55, 56, 66, 50, 71, 68, 59, 57, 75, 54, 81, 70, 53, 56, 57, 66, 53, 58, 78, 58, 62, 64, 73, 66, 50, 62, 62, 71, 92, 76, 59, 68, 71, 62, 99, 63, 40, 47, 57, 69, 52, 70, 62, 73, 50, 69, 57, 50, 78, 52, 57, 49, 66, 70, 51, 46, 48, 73, 69, 76, 68, 86, 46, 55, 61, 91, 77, 66, 65, 65, 70, 62, 77, 59, 73, 44, 91, 51, 54, 65, 69, 53, 97, 53, 56, 72, 63, 48, 50, 78, 48, 68, 51, 81, 61, 45, 55, 51, 64, 49, 59, 57, 59, 68, 58, 92, 49, 77, 66, 57, 74, 63, 63, 80, 82, 74, 64, 57, 59, 64, 58, 62, 50, 83, 54, 57, 76, 84, 58, 74, 52, 53, 60, 88, 68, 107, 64, 43, 64, 66, 53, 61, 53, 71, 81, 61, 56, 64, 62, 60, 62, 50, 57, 72, 64, 87, 52, 62, 62, 56, 69, 69, 55, 53, 69, 85, 73, 76, 45, 64, 83, 61, 70, 64, 78, 78, 63, 48, 75, 64, 57, 82, 62, 71, 82, 77, 62, 64, 65, 56, 63, 67, 82, 60, 55, 73, 34, 119, 89, 46, 49, 65, 90, 56, 72, 56, 82, 105, 64, 59, 67, 87, 64, 112, 61, 59, 56, 63, 53, 68, 61, 58, 47, 55, 65, 67, 64, 68, 67, 82, 51, 57, 83, 53, 78, 55, 64, 78, 65, 48, 75, 65, 54, 59, 58, 80, 64, 63, 79, 57, 63, 75, 52, 68, 106, 54, 61, 74, 59, 56, 97, 87, 58, 90, 65, 95, 66, 55, 63, 41, 80, 86, 70, 82, 55, 76, 38, 55, 60, 58, 69, 64, 68, 35, 77, 77, 58, 64, 67, 61, 57, 77, 54, 70, 68, 67, 66, 42, 58, 57, 69, 55, 92, 58, 63, 63, 59, 66, 64, 65, 87, 53, 60, 52, 68, 86, 55, 72, 34, 82, 75, 69, 82, 61, 61, 65, 84, 73, 58, 57, 57, 82, 70, 97, 53, 43, 71, 59, 76, 57, 65, 116, 54, 81, 58, 80, 70, 64, 67, 63, 124, 77, 100, 65, 46, 56, 69, 63, 70, 74, 60, 50, 53, 64, 55, 76, 59, 60, 62, 67, 56, 74, 88, 76, 90, 81, 58, 70, 69, 58, 65, 57, 61, 51, 39, 69, 55, 56, 59, 51, 62, 82, 75, 73, 66, 69, 54, 71, 81, 67, 64, 75, 65, 54, 60, 53, 54, 54, 56, 53, 78, 72, 62, 54, 43, 48, 50, 62, 62, 58, 69, 69, 79, 59, 69, 64, 55, 65, 57, 73, 78, 68, 74, 63, 38, 48, 72, 50, 74, 68, 61, 56, 62, 74, 39, 57, 52, 47, 65, 49, 56, 62, 64, 57, 73, 64, 104, 62, 48, 67, 50, 65, 75, 82, 76, 45, 57, 65, 88, 81, 90, 76, 60, 49, 63, 68, 86, 81, 56, 69, 40, 45, 63, 51, 51, 33, 81, 66, 59, 52, 70, 63, 47, 83, 59, 58, 59, 80, 60, 107, 69, 46, 64, 67, 65, 54, 54, 186, 49, 65, 79, 57, 80, 51, 72, 55, 70, 68, 58, 63, 43, 56, 76, 52, 73, 65, 87, 53, 63, 68, 53, 70, 62, 72, 91, 61, 57, 44, 58, 49, 56, 55, 81, 50, 63, 71, 88, 57, 98, 82, 62, 76, 62, 55, 65, 66, 55, 97, 75, 51, 75, 60, 63, 58, 46, 76, 53, 51, 64, 48, 79, 64, 66, 61, 93, 60, 76, 67, 65, 39, 46, 76, 47, 69, 87, 72, 65, 46, 69, 55, 47, 46, 65, 99, 78, 62, 77, 65, 86, 51, 40, 65, 77, 57, 79, 50, 65, 64, 55, 63, 48, 51, 80, 42, 62, 65, 69, 63, 70, 57, 60, 67, 80, 47, 58, 79, 74, 78, 62, 71, 71, 65, 64, 72, 66, 57, 81, 75, 87, 65, 54, 86, 85, 69, 160, 80, 45, 66, 60, 104, 72, 72, 74, 71, 60, 64, 110, 56, 57, 47, 61, 55, 65, 74, 63, 56, 67, 76, 47, 70, 95, 50, 70, 54, 58, 64, 70, 81, 59, 45, 65, 75, 66, 57, 61, 82, 54, 57, 64, 58, 78, 69, 61, 64, 67, 141, 53, 58, 51, 57, 57, 59, 65, 70, 74, 68, 38, 52, 75, 52, 66, 55, 53, 62, 62, 77, 93, 87, 77, 53, 64, 71, 116, 63, 60, 53, 70, 61, 59, 66, 53, 87, 61, 62, 62, 77, 83, 65, 63, 81, 68, 77, 52, 50, 59, 73, 151, 56, 63, 55, 68, 62, 88, 71, 84, 101, 43, 48, 59, 100, 68, 55, 80, 75, 65, 75, 51, 69, 84, 44, 50, 41, 59, 50, 70, 66, 62, 84, 59, 61, 55, 66, 62, 55, 66, 71, 68, 56, 126, 68, 60, 74, 50, 64, 72, 54, 58, 70, 79, 69, 58, 71, 95, 62, 66, 103, 46, 67, 71, 80, 73, 55, 58, 68, 64, 75, 62, 62, 67, 64, 64, 76, 155, 73, 72, 52, 68, 69, 52, 72, 48, 56, 64, 86, 47, 77, 68, 88, 70, 65, 68, 55, 61, 47, 107, 45, 53, 56, 73, 65, 80, 53, 52, 61, 60, 51, 58, 58, 53, 65, 69, 56, 112, 46, 66, 74, 66, 60, 73, 76, 103, 62, 53, 64, 68, 42, 78, 76, 56, 67, 64, 74, 64, 50, 59, 48, 65, 53, 109, 60, 59, 64, 78, 56, 56, 91, 82, 35, 55, 54, 64, 54, 53, 52, 76, 71, 77, 44, 51, 79, 55, 93, 67, 45, 55, 65, 93, 82, 64, 61, 77, 59, 68, 62, 84, 55, 68, 51, 97, 63, 77, 61, 75, 67, 87, 66, 67, 61, 50, 68, 70, 66, 50, 60, 76, 83, 74, 49, 80, 53, 55, 66, 47, 86, 83, 54, 47, 72, 63, 62, 59, 69, 67, 39, 59, 72, 53, 76, 49, 58, 61, 78, 72, 70, 53, 60, 74, 76, 79, 71, 70, 58, 62, 60, 60, 55, 90, 101, 67, 86, 77, 81, 67, 74, 51, 58, 68, 46, 62, 60, 73, 71, 52, 49, 66, 96, 56, 64, 81, 84, 47, 53, 70, 74, 63, 56, 57, 68, 59, 75, 62, 75, 59, 66, 59, 59, 63, 59, 69, 70, 71, 61, 95, 49, 70, 63, 82, 67, 58, 73, 95, 38, 78, 59, 71, 70, 51, 54, 59, 50, 61, 80, 47, 48, 100, 65, 70, 58, 48, 80, 71, 77, 73, 104, 65, 79, 104, 70, 66, 65, 55, 70, 58, 61, 72, 39, 55, 80, 51, 48, 75, 60, 66, 80, 45, 64, 56, 74, 59, 68, 60, 49, 74, 45, 80, 100, 72, 61, 52, 57, 56, 47, 60, 57, 77, 55, 59, 94, 61, 85, 68, 76, 71, 63, 62, 56, 85, 52, 90, 153, 53, 56, 64, 72, 69, 65, 83, 60, 51, 60, 54, 71, 55, 62, 66, 60, 113, 54, 59, 55, 78, 67, 50, 67, 62, 67, 60, 50, 64, 63, 65, 53, 66, 80, 45, 62, 62, 58, 69, 66, 83, 49, 57, 77, 73, 53, 50, 79, 61, 74, 79, 68, 92, 44, 75, 61, 59, 53, 94, 80, 85, 95, 74, 43, 56, 60, 77, 59, 57, 59, 88, 60, 60, 47, 64, 67, 63, 50, 66, 80, 56, 64, 65, 68, 45, 55, 62, 53, 50, 70, 69, 55, 55, 57, 71, 48, 71, 53, 67, 60, 91, 71, 74, 65, 84, 72, 88, 55, 58, 83, 89, 84, 76, 57, 65, 68, 73, 49, 59, 70, 66, 71, 61, 52, 60, 109, 87, 62, 76, 61, 66, 82, 58, 57, 86, 76, 61, 66, 62, 58, 71, 73, 75, 84, 75, 49, 60, 53, 56, 52, 99, 56, 58, 67, 68, 72, 69, 52, 65, 64, 79, 71, 48, 74, 65, 81, 56, 41, 67, 83, 80, 53, 76, 142, 73, 59, 54, 75, 54, 76, 55, 61, 57, 93, 65, 65, 53, 42, 74, 80, 60, 73, 78, 58, 57, 162, 63, 87, 61, 59, 69, 58, 57, 56, 59, 52, 46, 63, 65, 99, 71, 63, 80, 57, 65, 55, 66, 55, 78, 45, 53, 107, 61, 74, 38, 104, 88, 48, 53, 49, 47, 58, 84, 92, 60, 70, 58, 66, 68, 78, 54, 106, 111, 62, 57, 49, 78, 56, 50, 75, 74, 90, 52, 69, 70, 71, 119, 70, 63, 58, 61, 72, 77, 57, 47, 53, 64, 80, 67, 62, 75, 55, 68, 69, 58, 57, 73, 54, 72, 73, 62, 80, 85, 58, 65, 61, 72, 52, 66, 57, 60, 69, 66, 65, 73, 81, 56, 66, 55, 53, 90, 73, 60, 59, 55, 49, 69, 80, 60, 61, 55, 61, 61, 71, 69, 78, 84, 71, 57, 52, 46, 73, 64, 63, 73, 71, 66, 55, 67, 59, 57, 77, 58, 72, 57, 75, 56, 49, 65, 62, 68, 54, 65, 68, 61, 44, 79, 53, 91, 88, 61, 66, 65, 74, 72, 73, 59, 98, 77, 68, 58, 101, 59, 59, 50, 50, 62, 52, 85, 68, 64, 73, 49, 48, 76, 89, 55, 65, 68, 70, 72, 41, 70, 75, 54, 66, 63, 64, 74, 38, 57, 39, 54, 68, 74, 62, 65, 58, 72, 58, 76, 49, 56, 68, 78, 64, 53, 76, 68, 78, 54, 75, 55, 60, 79, 54, 50, 91, 65, 56, 60, 82, 67, 74, 65, 54, 61, 57, 61, 74, 53, 64, 54, 72, 57, 57, 56, 46, 76, 66, 43, 59, 81, 52, 61, 70, 52, 54, 65, 55, 77, 51, 92, 66, 76, 75, 81, 71, 80, 60, 85, 71, 69, 76, 68, 56, 62, 64, 72, 98, 69, 75, 50, 85, 46, 81, 80, 47, 70, 49, 51, 47, 61, 58, 57, 48, 70, 98, 66, 53, 62, 69, 81, 55, 56, 62, 68, 37, 54, 67, 54, 74, 72, 62, 63, 40, 66, 70, 76, 69, 50, 88, 89, 62, 52, 66, 76, 79, 60, 69, 45, 84, 67, 60, 85, 64, 50, 47, 68, 63, 59, 61, 58, 48, 62, 78, 77, 46, 47, 65, 66, 62, 67, 64, 95, 62, 59, 46, 70, 63, 80, 62, 64, 97, 70, 93, 45, 55, 92, 71, 73, 68, 80, 66, 63, 73, 70, 52, 84, 70, 58, 66, 65, 66, 49, 69, 54, 50, 66, 55, 55, 72, 80, 66, 59, 52, 53, 71, 59, 79, 43, 71, 51, 80, 94, 79, 39, 60, 76, 55, 88, 71, 54, 55, 56, 72, 52, 75, 67, 81, 51, 54, 55, 54, 90, 60, 49, 41, 66, 65, 84, 74, 78, 52, 105, 83, 52, 76, 66, 62, 49, 90, 66, 53, 73, 56, 86, 68, 69, 78, 101, 56, 62, 66, 69, 60, 61, 121, 73, 59, 65, 68, 53, 55, 69, 63, 49, 64, 58, 63, 65, 73, 104, 66, 68, 68, 60, 53, 46, 74, 52, 99, 72, 70, 95, 58, 51, 67, 70, 53, 69, 80, 58, 62, 81, 56, 60, 73, 55, 47, 76, 62, 60, 80, 88, 65, 58, 72, 78, 54, 56, 74, 79, 81, 74, 83, 44, 69, 56, 53, 81, 68, 69, 54, 56, 70, 58, 77, 60, 44, 79, 72, 53, 62, 90, 70, 68, 50, 54, 75, 101, 94, 99, 64, 63, 59, 55, 43, 57, 62, 51, 79, 71, 66, 54, 55, 74, 87, 66, 54, 67, 49, 70, 73, 74, 70, 44, 76, 68, 53, 56, 81, 67, 53, 78, 69, 74, 83, 53, 53, 61, 60, 46, 71, 71, 69, 58, 70, 51, 81, 58, 49, 64, 74, 113, 94, 107, 61, 82, 87, 65, 67, 80, 68, 67, 46, 65, 66, 81, 81, 74, 75, 64, 49, 59, 74, 56, 63, 80, 77, 62, 67, 86, 65, 95, 69, 74, 61, 76, 62, 50, 69, 69, 56, 64, 54, 66, 54, 67, 54, 67, 64, 85, 79, 70, 59, 81, 65, 55, 80, 81, 59, 92, 55, 80, 52, 67, 52, 89, 71, 121, 64, 78, 55, 65, 58, 68, 70, 66, 107, 59, 56, 83, 58, 65, 56, 71, 64, 69, 62, 44, 74, 53, 92, 67, 65, 71, 72, 56, 55, 67, 35, 71, 59, 94, 60, 57, 57, 58, 60, 85, 69, 80, 62, 85, 78, 79, 79, 52, 83, 67, 46, 75, 46, 71, 53, 56, 74, 59, 91, 60, 98, 66, 53, 86, 52, 70, 74, 56, 86, 65, 60, 126, 82, 78, 80, 81, 70, 82, 77, 56, 69, 72, 63, 75, 60, 58, 66, 73, 70, 64, 77, 58, 42, 56, 64, 68, 73, 78, 87, 70, 56, 73, 46, 59, 74, 47, 69, 53, 47, 73, 73, 53, 94, 70, 46, 80, 40, 58, 93, 108, 64, 55, 81, 61, 76, 58, 107, 67, 79, 37, 60, 56, 73, 60, 48, 51, 78, 69, 74, 54, 72, 50, 87, 47, 84, 62, 58, 119, 63, 81, 69, 62, 76, 52, 71, 51, 62, 66, 77, 36, 106, 68, 56, 67, 68, 45, 45, 52, 70, 94, 83, 62, 72, 52, 77, 59, 95, 61, 65, 30, 122, 57, 50, 85, 57, 62, 63, 57, 51, 62, 72, 56, 56, 74, 68, 82, 56, 73, 130, 50, 72, 60, 66, 79, 67, 61, 71, 56, 63, 44, 64, 77, 86, 87, 88, 54, 56, 87, 69, 59, 121, 74, 60, 50, 47, 66, 66, 67, 39, 43, 67, 68, 62, 96, 48, 52, 47, 42, 68, 62, 81, 47, 43, 74, 56, 73, 60, 43, 61, 64, 68, 55, 69, 56, 55, 70, 53, 60, 89, 58, 63, 80, 48, 38, 51, 57, 69, 71, 44, 59, 62, 56, 64, 81, 67, 72, 88, 62, 84, 95, 71, 61, 62, 69, 55, 68, 49, 42, 55, 105, 61, 51, 81, 54, 57, 48, 101, 55, 82, 68, 91, 63, 65, 73, 51, 67, 63, 48, 77, 48, 50, 66, 78, 45, 63, 99, 57, 55, 71, 38, 51, 58, 58, 59, 90, 76, 49, 57, 72, 58, 60, 88, 71, 65, 67, 99, 52, 71, 81, 75, 67, 84, 82, 53, 83, 72, 46, 47, 64, 54, 53, 68, 65, 56, 63, 64, 85, 49, 65, 44, 61, 52, 78, 29, 52, 76, 73, 63, 68, 77, 65, 51, 46, 63, 51, 79, 60, 69, 65, 66, 63, 44, 63, 66, 63, 53, 53, 66, 58, 73, 72, 69, 52, 50, 58, 56, 43, 80, 59, 45, 78, 59, 51, 46, 44, 67, 66, 62, 51, 46, 57, 77, 56, 64, 71, 69, 72, 62, 91, 59, 84, 81, 48, 61, 96, 65, 30, 58, 65, 89, 53, 118, 81, 38, 66, 61, 67, 79, 77, 60, 50, 58, 58, 47, 67, 59, 59, 56, 66, 55, 62, 69, 70, 55, 62, 99, 47, 60, 81, 64, 66, 59, 82, 54, 61, 75, 93, 56, 64, 66, 55, 104, 57, 55, 50, 48, 58, 101, 73, 59, 65, 59, 66, 68, 92, 54, 64, 56, 85, 61, 77, 75, 86, 63, 53, 59, 62, 80, 61, 60, 62, 68, 71, 122, 33, 51, 88, 68, 76, 40, 67, 49, 64, 51, 55, 100, 54, 64, 53, 73, 58, 87, 59, 67, 65, 72, 95, 63, 60, 71, 84, 106, 45, 87, 53, 61, 48, 66, 50, 47, 87, 60, 56, 65, 53, 47, 58, 50, 97, 54, 55, 83, 61, 48, 106, 63, 75, 116, 90, 65, 78, 63, 59, 68, 61, 58, 114, 49, 54, 88, 79, 47, 50, 85, 83, 63, 59, 50, 88, 43, 67, 57, 45, 78, 65, 57, 67, 62, 48, 76, 43, 108, 53, 71, 81, 75, 54, 58, 95, 82, 95, 44, 36, 55, 56, 55, 56, 64, 70, 70, 85, 67, 111, 60, 47, 52, 56, 83, 51, 40, 87, 57, 90, 57, 67, 81, 56, 59, 89, 61, 85, 68, 68, 73, 41, 63, 88, 63, 51, 83, 70, 69, 90, 67, 50, 72, 35, 77, 71, 70, 48, 62, 51, 58, 75, 81, 64, 101, 68, 71, 68, 73, 64, 44, 65, 79, 43, 56, 83, 40, 94, 61, 56, 74, 54, 67, 65, 64, 108, 54, 74, 64, 67, 63, 66, 76, 67, 43, 60, 99, 53, 70, 70, 71, 65, 85, 58, 64, 51, 67, 53, 69, 55, 102, 60, 65, 61, 68, 52, 44, 63, 73, 53, 61, 72, 69, 66, 95, 63, 88, 43, 57, 86, 53, 65, 54, 47, 69, 69, 99, 69, 60, 66, 49, 84, 62, 59, 56, 57, 42, 78, 59, 49, 45, 60, 68, 53, 61, 72, 89, 49, 45, 76, 61, 72, 49, 41, 44, 78, 70, 77, 77, 67, 51, 68, 81, 62, 99, 95, 98, 63, 66, 77, 59, 63, 67, 54, 79, 53, 64, 78, 68, 54, 68, 73, 109, 69, 57, 63, 60, 42, 64, 57, 51, 45, 70, 80, 69, 76, 66, 55, 69, 46, 58, 70, 63, 63, 43, 40, 59, 76, 75, 67, 68, 44, 74, 76, 55, 80, 82, 79, 66, 61, 74, 65, 69, 73, 66, 82, 66, 77, 88, 63, 61, 65, 74, 69, 59, 66, 59, 63, 71, 57, 52, 64, 56, 68, 59, 55, 50, 88, 66, 82, 59, 82, 72, 44, 59, 55, 62, 83, 66, 68, 65, 80, 54, 75, 56, 50, 65, 96, 66, 60, 60, 54, 80, 69, 59, 59, 46, 66, 74, 80, 79, 85, 93, 65, 58, 62, 63, 84, 65, 66, 40, 39, 64, 60, 48, 53, 53, 70, 59, 94, 77, 88, 58, 93, 67, 63, 73, 68, 50, 76, 106, 71, 59, 86, 38, 72, 45, 68, 58, 53, 54, 61, 100, 61, 94, 75, 38, 86, 66, 73, 64, 63, 50, 66, 64, 65, 75, 56, 98, 74, 69, 81, 94, 56, 55, 66, 70, 51, 85, 50, 62, 77, 75, 51, 67, 58, 63, 74, 64, 86, 87, 50, 60, 81, 100, 36, 60, 66, 54, 54, 70, 84, 79, 57, 60, 70, 67, 39, 87, 63, 62, 73, 78, 98, 64, 60, 59, 73, 50, 67, 48, 58, 74, 53, 50, 84, 75, 55, 80, 57, 63, 71, 82, 62, 88, 85, 68, 58, 66, 59, 47, 46, 63, 61, 43, 65, 46, 82, 73, 51, 69, 87, 63, 47, 58, 55, 81, 64, 75, 61, 79, 91, 52, 58, 55, 61, 50, 83, 62, 53, 46, 86, 69, 89, 78, 63, 49, 55, 50, 69, 65, 46, 94, 40, 70, 79, 71, 51, 74, 86, 62, 57, 67, 53, 58, 62, 77, 59, 90, 63, 55, 97, 62, 68, 61, 58, 73, 68, 86, 48, 90, 76, 47, 58, 74, 69, 71, 35, 64, 88, 61, 51, 64, 49, 72, 81, 57, 54, 48, 56, 51, 56, 60, 60, 55, 72, 51, 88, 52, 67, 72, 52, 74, 56, 69, 78, 65, 48, 61, 49, 68, 54, 55, 57, 59, 54, 44, 62, 65, 79, 73, 49, 59, 75, 59, 77, 68, 69, 72, 52, 57, 71, 68, 108, 70, 72, 58, 62, 39, 82, 38, 59, 70, 64, 71, 61, 86, 41, 69, 70, 51, 105, 71, 69, 58, 83, 93, 62, 62, 66, 52, 38, 66, 79, 59, 107, 68, 71, 55, 64, 116, 86, 66, 73, 66, 98, 47, 54, 46, 57, 47, 74, 55, 80, 72, 68, 97, 90, 36, 95, 53, 72, 68, 84, 81, 59, 67, 39, 76, 59, 47, 54, 74, 57, 45, 64, 46, 91, 63, 88, 66, 66, 67, 75, 71, 86, 73, 77, 87, 53, 86, 59, 51, 59, 63, 75, 49, 89, 81, 55, 77, 66, 63, 54, 59, 52, 70, 65, 59, 69, 78, 45, 50, 75, 37, 73, 32, 89, 57, 107, 96, 72, 59, 52, 50, 78, 68, 51, 66, 63, 73, 59, 76, 73, 65, 66, 63, 69, 66, 73, 39, 60, 52, 73, 53, 83, 46, 71, 70, 50, 63, 69, 48, 82, 45, 67, 73, 49, 87, 71, 71, 68, 42, 51, 50, 62, 86, 82, 50, 90, 44, 77, 65, 88, 74, 76, 48, 43, 50, 73, 90, 75, 53, 82, 62, 67, 66, 83, 89, 54, 65, 50, 66, 61, 75, 61, 48, 61, 56, 54, 51, 58, 61, 66, 48, 87, 56, 54, 50, 66, 59, 59, 91, 58, 57, 126, 79, 66, 41, 47, 65, 63, 77, 52, 56, 48, 93, 64, 64, 70, 75, 55, 63, 54, 60, 64, 73, 68, 60, 81, 78, 73, 90, 78, 46, 59, 55, 75, 56, 63, 58, 64, 72, 44, 70, 44, 73, 71, 72, 58, 59, 66, 73, 71, 97, 59, 55, 59, 71, 57, 43, 82, 65, 53, 69, 59, 69, 109, 142, 67, 77, 103, 66, 64, 97, 69, 57, 98, 53, 56, 53, 57, 58, 67, 55, 52, 48, 59, 58, 91, 60, 61, 54, 67, 82, 80, 77, 58, 73, 53, 61, 76, 53, 46, 72, 58, 56, 51, 72, 45, 67, 60, 90, 56, 58, 71, 68, 76, 74, 97, 51, 67, 83, 68, 57, 51, 92, 59, 58, 76, 81, 52, 72, 83, 51, 59, 58, 86, 74, 72, 57, 54, 78, 57, 95, 71, 54, 47, 70, 54, 79, 63, 51, 62, 54, 53, 55, 75, 65, 73, 56, 73, 89, 68, 62, 57, 81, 42, 65, 45, 52, 87, 72, 62, 69, 104, 65, 50, 57, 62, 70, 52, 61, 69, 63, 58, 56, 40, 73, 61, 40, 52, 56, 58, 83, 55, 33, 93, 84, 42, 70, 61, 81, 64, 94, 68, 67, 57, 54, 73, 71, 98, 40, 59, 69, 66, 75, 56, 66, 35, 39, 41, 58, 70, 50, 41, 52, 70, 82, 64, 62, 69, 72, 70, 64, 108, 87, 71, 53, 51, 48, 68, 77, 50, 59, 86, 57, 75, 43, 66, 51, 53, 43, 61, 45, 66, 72, 65, 82, 77, 60, 84, 76, 68, 105, 91, 56, 65, 64, 75, 64, 112, 54, 65, 68, 78, 45, 64, 50, 69, 109, 81, 97, 56, 36, 83, 52, 66, 86, 65, 54, 79, 97, 58, 85, 59, 34, 93, 75, 61, 66, 57, 52, 70, 68, 79, 50, 67, 55, 72, 65, 40, 62, 40, 62, 63, 66, 53, 68, 71, 97, 42, 128, 73, 90, 60, 49, 57, 53, 104, 72, 75, 72, 65, 43, 35, 58, 48, 64, 50, 59, 47, 49, 59, 76, 55, 52, 62, 59, 87, 50, 64, 39, 51, 59, 66, 58, 47, 59, 75, 49, 43, 93, 83, 72, 70, 51, 67, 63, 75, 69, 56, 57, 63, 67, 107, 45, 67, 54, 80, 69, 74, 70, 58, 66, 53, 82, 58, 61, 66, 55, 96, 58, 70, 43, 83, 66, 61, 70, 74, 67, 64, 57, 72, 60, 66, 57, 41, 51, 87, 48, 88, 62, 54, 75, 45, 35, 57, 62, 80, 43, 68, 55, 65, 72, 73, 64, 56, 71, 73, 65, 83, 68, 76, 76, 88, 56, 65, 67, 64, 75, 53, 56, 61, 70, 44, 74, 85, 64, 53, 126, 56, 64, 49, 63, 66, 37, 59, 73, 60, 60, 64, 88, 60, 69, 44, 88, 105, 77, 51, 59, 60, 75, 58, 64, 97, 59, 76, 115, 58, 72, 50, 73, 46, 54, 78, 88, 53, 46, 77, 55, 59, 93, 40, 75, 81, 66, 87, 50, 57, 65, 73, 52, 62, 63, 62, 45, 52, 56, 60, 62, 73, 83, 54, 90, 73, 104, 68, 97, 65, 63, 69, 79, 82, 73, 47, 62, 66, 50, 47, 96, 73, 81, 50, 69, 92, 48, 56, 87, 65, 71, 70, 66, 41, 57, 66, 54, 70, 63, 51, 57, 64, 70, 67, 74, 75, 54, 58, 72, 67, 49, 75, 55, 64, 49, 86, 68, 75, 68, 82, 80, 58, 69, 48, 68, 45, 62, 84, 47, 66, 58, 90, 58, 65, 81, 56, 59, 88, 42, 56, 50, 55, 90, 51, 66, 45, 54, 50, 75, 80, 71, 78, 63, 104, 52, 62, 66, 63, 50, 73, 54, 50, 65, 67, 37, 94, 57, 130, 75, 68, 84, 57, 54, 58, 78, 94, 84, 58, 89, 67, 84, 100, 57, 51, 84, 54, 62, 95, 55, 54, 79, 57, 97, 65, 73, 63, 76, 68, 61, 61, 71, 69, 64, 62, 93, 59, 59, 150, 54, 66, 68, 74, 84, 45, 69, 56, 82, 38, 60, 56, 40, 104, 62, 94, 87, 67, 61, 50, 74, 46, 53, 48, 59, 49, 40, 62, 53, 69, 49, 64, 63, 63, 88, 76, 58, 65, 74, 87, 64, 49, 71, 49, 56, 72, 53, 46, 76, 94, 86, 77, 70, 56, 66, 76, 110, 58, 58, 51, 73, 69, 61, 61, 59, 70, 55, 47, 62, 63, 89, 49, 58, 77, 76, 66, 62, 54, 66, 98, 64, 56, 65, 80, 54, 71, 72, 56, 52, 56, 40, 62, 78, 89, 70, 65, 36, 75, 74, 79, 54, 71, 50, 81, 39, 54, 65, 66, 66, 59, 77, 76, 82, 67, 63, 56, 60, 92, 78, 69, 44, 56, 57, 63, 54, 64, 58, 61, 62, 49, 57, 66, 44, 89, 61, 67, 120, 79, 74, 72, 72, 70, 62, 49, 71, 56, 71, 86, 51, 64, 48, 60, 83, 71, 61, 85, 68, 58, 55, 77, 82, 63, 68, 120, 86, 57, 94, 68, 60, 57, 65, 56, 79, 78, 83, 62, 69, 50, 57, 43, 63, 71, 75, 85, 74, 50, 60, 59, 49, 75, 37, 94, 79, 64, 59, 37, 66, 87, 84, 49, 82, 64, 67, 83, 85, 71, 64, 67, 63, 47, 59, 60, 56, 55, 61, 55, 44, 57, 66, 76, 58, 80, 77, 71, 65, 68, 63, 77, 81, 86, 54, 69, 89, 60, 74, 65, 80, 82, 66, 70, 72, 75, 59, 46, 63, 57, 47, 69, 58, 63, 63, 46, 70, 74, 79, 62, 64, 61, 76, 66, 49, 86, 61, 60, 55, 68, 73, 95, 106, 55, 53, 62, 61, 87, 50, 79, 76, 72, 62, 54, 61, 55, 48, 62, 62, 106, 65, 66, 57, 101, 49, 56, 76, 56, 114, 65, 134, 96, 51, 54, 54, 50, 61, 70, 65, 49, 53, 39, 69, 71, 82, 40, 88, 104, 82, 107, 75, 63, 78, 63, 83, 51, 57, 62, 95, 83, 65, 73, 52, 57, 63, 64, 72, 87, 56, 74, 56, 51, 74, 56, 70, 83, 75, 69, 65, 56, 53, 53, 57, 64, 66, 78, 76, 59, 62, 73, 85, 54, 39, 75, 62, 75, 68, 62, 70, 77, 49, 60, 66, 69, 70, 51, 60, 53, 61, 62, 61, 77, 76, 69, 53, 73, 72, 52, 71, 69, 65, 66, 63, 55, 61, 119, 53, 76, 57, 63, 72, 82, 71, 59, 77, 60, 52, 50, 52, 56, 80, 54, 62, 56, 94, 67, 65, 62, 53, 54, 60, 101, 72, 69, 49, 63, 66, 54, 73, 53, 68, 57, 64, 68, 62, 76, 87, 62, 79, 39, 79, 57, 58, 55, 84, 61, 46, 74, 79, 69, 85, 64, 68, 58, 58, 50, 69, 69, 59, 59, 63, 54, 67, 128, 48, 57, 54, 50, 77, 59, 83, 62, 73, 63, 80, 76, 55, 58, 52, 68, 79, 51, 103, 53, 66, 57, 66, 56, 91, 76, 41, 166, 63, 48, 55, 61, 60, 89, 57, 62, 64, 46, 63, 59, 57, 75, 76, 45, 52, 60, 133, 54, 49, 71, 77, 86, 67, 59, 57, 66, 85, 62, 46, 53, 71, 51, 72, 69, 56, 54, 87, 62, 64, 61, 54, 43, 56, 54, 52, 75, 63, 74, 72, 70, 57, 72, 45, 65, 70, 52, 76, 63, 71, 55, 47, 84, 57, 68, 54, 57, 64, 108, 76, 82, 55, 60, 64, 140, 50, 90, 68, 55, 67, 55, 54, 70, 63, 59, 50, 84, 74, 48, 51, 56, 71, 58, 66, 63, 61, 77, 57, 66, 72, 48, 91, 86, 59, 48, 62, 69, 75, 81, 71, 52, 65, 61, 35, 74, 50, 67, 83, 72, 41, 77, 70, 40, 39, 55, 71, 60, 71, 54, 85, 70, 79, 68, 68, 61, 54, 62, 55, 54, 61, 87, 63, 76, 56, 61, 61, 56, 57, 67, 68, 58, 63, 52, 89, 55, 60, 74, 55, 54, 51, 87, 62, 69, 54, 68, 60, 65, 59, 49, 72, 73, 60, 54, 73, 67, 60, 50, 77, 85, 72, 74, 58, 57, 74, 50, 49, 71, 46, 78, 43, 59, 59, 66, 62, 65, 70, 64, 64, 61, 72, 77, 76, 58, 87, 55, 108, 66, 66, 74, 63, 71, 62, 40, 87, 105, 80, 53, 79, 61, 59, 64, 72, 93, 60, 64, 59, 61, 69, 57, 62, 72, 89, 51, 62, 59, 62, 56, 57, 76, 70, 86, 54, 65, 80, 48, 63, 71, 77, 55, 49, 66, 72, 41, 77, 60, 68, 35, 71, 81, 78, 60, 73, 68, 59, 65, 63, 57, 68, 76, 72, 58, 70, 52, 54, 56, 70, 54, 69, 67, 48, 59, 68, 71, 85, 87, 60, 49, 72, 55, 49, 81, 68, 87, 73, 62, 70, 70, 66, 71, 75, 57, 99, 76, 78, 44, 56, 80, 76, 64, 63, 84, 69, 84, 64, 38, 57, 64, 66, 48, 71, 72, 52, 59, 62, 53, 59, 71, 66, 68, 53, 62, 55, 72, 69, 59, 81, 68, 86, 62, 54, 101, 62, 91, 99, 65, 94, 64, 86, 70, 87, 50, 62, 51, 60, 69, 44, 69, 81, 79, 81, 68, 48, 73, 74, 82, 85, 63, 57, 45, 82, 68, 64, 68, 68, 82, 65, 62, 82, 79, 68, 58, 68, 53, 67, 66, 48, 55, 101, 61, 85, 62, 57, 69, 50, 51, 65, 60, 63, 56, 80, 62, 63, 50, 61, 82, 92, 58, 63, 57, 54, 43, 76, 98, 57, 79, 66, 55, 63, 63, 62, 61, 67, 47, 77, 74, 60, 57, 74, 50, 69, 75, 77, 88, 46, 65, 62, 69, 59, 58, 78, 123, 62, 79, 46, 61, 113, 76, 51, 89, 79, 49, 69, 61, 55, 61, 88, 83, 52, 65, 89, 81, 95, 61, 60, 65, 84, 66, 66, 61, 74, 76, 58, 73, 75, 66, 68, 59, 75, 44, 68, 59, 65, 44, 54, 127, 69, 97, 66, 58, 89, 58, 72, 104, 57, 63, 71, 45, 81, 64, 57, 42, 100, 129, 56, 53, 67, 67, 68, 109, 74, 67, 86, 57, 64, 71, 59, 53, 55, 53, 67, 64, 105, 43, 67, 72, 57, 65, 66, 40, 68, 70, 62, 76, 53, 64, 55, 65, 89, 51, 64, 63, 71, 56, 68, 52, 82, 62, 68, 66, 57, 78, 51, 62, 63, 53, 47, 75, 46, 76, 45, 47, 84, 63, 69, 66, 58, 52, 82, 61, 70, 77, 105, 103, 60, 57, 55, 54, 159, 56, 57, 64, 69, 47, 48, 102, 63, 79, 63, 49, 60, 75, 32, 74, 65, 71, 71, 77, 64, 44, 68, 71, 76, 66, 71, 51, 73, 67, 52, 58, 101, 61, 88, 55, 80, 128, 71, 50, 64, 58, 80, 49, 64, 62, 54, 66, 79, 64, 81, 68, 77, 68, 45, 71, 58, 71, 79, 82, 44, 47, 47, 72, 69, 69, 42, 62, 60, 56, 42, 37, 73, 73, 79, 59, 56, 94, 77, 52, 43, 78, 58, 55, 54, 83, 69, 90, 70, 68, 84, 55, 53, 65, 64, 53, 65, 69, 101, 61, 75, 69, 70, 105, 38, 59, 82, 60, 59, 99, 52, 65, 67, 64, 67, 69, 88, 69, 56, 58, 52, 59, 78, 57, 52, 76, 66, 62, 63, 66, 71, 67, 80, 99, 56, 50, 81, 55, 95, 45, 76, 62, 104, 54, 59, 72, 73, 86, 62, 67, 62, 55, 82, 64, 70, 76, 53, 66, 75, 63, 80, 58, 70, 87, 80, 54, 82, 49, 66, 51, 63, 45, 61, 55, 52, 53, 58, 49, 55, 60, 38, 80, 82, 74, 67, 94, 71, 59, 43, 73, 54, 64, 93, 69, 100, 49, 63, 66, 50, 81, 69, 61, 49, 76, 77, 89, 73, 82, 82, 60, 65, 95, 54, 48, 50, 64, 105, 54, 79, 60, 64, 126, 65, 65, 88, 68, 83, 60, 42, 113, 53, 47, 53, 60, 49, 55, 43, 64, 67, 64, 77, 59, 64, 57, 79, 62, 56, 80, 58, 72, 81, 57, 65, 71, 83, 65, 98, 63, 48, 64, 80, 57, 64, 56, 117, 74, 62, 91, 83, 65, 75, 65, 78, 54, 81, 93, 83, 75, 59, 73, 60, 56, 57, 71, 61, 57, 85, 76, 51, 71, 64, 49, 67, 70, 82, 43, 50, 50, 69, 59, 69, 58, 83, 60, 60, 73, 94, 65, 59, 74, 71, 61, 51, 44, 56, 86, 45, 87, 94, 70, 70, 63, 63, 56, 58, 56, 61, 77, 71, 60, 77, 97, 61, 50, 58, 51, 70, 58, 78, 80, 64, 60, 55, 94, 42, 48, 72, 51, 84, 62, 54, 62, 86, 57, 71, 53, 68, 68, 39, 97, 64, 72, 70, 34, 73, 61, 57, 84, 48, 58, 56, 47, 66, 69, 73, 51, 57, 51, 70, 65, 91, 84, 80, 54, 60, 56, 64, 55, 52, 54, 85, 54, 68, 118, 49, 51, 86, 63, 87, 44, 66, 51, 107, 82, 81, 110, 61, 39, 66, 64, 48, 67, 54, 54, 65, 69, 68, 98, 62, 81, 46, 65, 63, 56, 91, 61, 71, 64, 71, 69, 51, 67, 96, 56, 63, 67, 69, 46, 70, 74, 95, 51, 71, 69, 75, 63, 48, 69, 37, 67, 76, 79, 62, 52, 59, 57, 75, 63, 38, 65, 80, 64, 52, 84, 52, 53, 68, 89, 79, 61, 75, 81, 62, 70, 76, 55, 67, 70, 86, 58, 64, 51, 53, 61, 46, 56, 67, 68, 77, 79, 43, 51, 66, 47, 50, 40, 62, 47, 55, 52, 80, 72, 93, 58, 80, 88, 35, 64, 73, 52, 57, 89, 49, 60, 65, 96, 70, 48, 54, 46, 61, 54, 59, 60, 61, 45, 75, 56, 60, 56, 84, 43, 94, 49, 54, 83, 79, 67, 52, 73, 82, 54, 74, 61, 60, 66, 82, 73, 75, 69, 47, 49, 66, 49, 78, 67, 53, 60, 97, 66, 51, 70, 63, 74, 73, 98, 109, 90, 58, 48, 51, 71, 42, 82, 69, 49, 84, 50, 83, 59, 40, 101, 69, 61, 68, 68, 104, 73, 62, 54, 67, 60, 63, 83, 50, 35, 54, 69, 106, 80, 66, 58, 43, 83, 65, 71, 60, 91, 44, 79, 64, 63, 80, 62, 81, 60, 70, 35, 60, 53, 47, 77, 72, 41, 64, 57, 67, 79, 66, 65, 48, 51, 73, 76, 48, 82, 79, 41, 57, 55, 86, 60, 100, 82, 68, 38, 57, 47, 61, 51, 62, 54, 65, 53, 76, 67, 103, 64, 46, 56, 50, 47, 67, 67, 61, 81, 54, 83, 75, 65, 57, 92, 74, 83, 80, 83, 55, 80, 85, 86, 51, 64, 51, 106, 96, 68, 57, 40, 76, 74, 92, 81, 49, 32, 51, 57, 70, 60, 71, 54, 80, 38, 50, 60, 64, 55, 55, 38, 52, 42, 66, 58, 79, 73, 63, 83, 67, 62, 61, 65, 64, 93, 96, 76, 71, 59, 64, 43, 66, 60, 48, 51, 80, 73, 70, 59, 63, 49, 85, 69, 52, 64, 89, 75, 77, 72, 90, 52, 69, 58, 51, 82, 68, 75, 43, 75, 63, 52, 63, 58, 44, 62, 80, 64, 50, 67, 64, 92, 73, 72, 65, 64, 44, 53, 73, 61, 53, 57, 56, 64, 82, 33, 60, 60, 58, 43, 67, 88, 68, 79, 44, 52, 40, 58, 74, 59, 57, 43, 47, 60, 49, 87, 62, 49, 39, 92, 56, 60, 79, 64, 56, 58, 44, 75, 52, 69, 58, 42, 68, 66, 58, 84, 58, 71, 60, 65, 89, 84, 88, 101, 83, 66, 44, 39, 66, 85, 63, 106, 83, 66, 92, 100, 70, 63, 58, 109, 75, 46, 76, 66, 55, 75, 83, 55, 75, 55, 60, 71, 59, 69, 40, 64, 63, 80, 48, 80, 62, 54, 87, 58, 74, 67, 45, 58, 74, 65, 89, 53, 51, 54, 64, 59, 70, 56, 43, 62, 51, 55, 59, 61, 78, 82, 62, 83, 83, 58, 75, 58, 86, 72, 60, 95, 49, 74, 73, 63, 91, 56, 59, 44, 60, 64, 60, 63, 32, 62, 54, 52, 64, 75, 51, 72, 68, 71, 66, 95, 50, 79, 68, 64, 60, 55, 74, 31, 72, 80, 66, 50, 62, 64, 57, 54, 52, 53, 113, 85, 52, 55, 74, 79, 61, 40, 50, 56, 88, 65, 71, 71, 67, 82, 55, 60, 70, 68, 84, 87, 58, 50, 58, 59, 67, 62, 61, 58, 48, 66, 68, 64, 135, 65, 64, 61, 61, 89, 54, 77, 116, 72, 70, 61, 71, 70, 55, 56, 121, 61, 56, 123, 89, 71, 51, 64, 88, 66, 51, 60, 42, 71, 44, 77, 58, 44, 62, 97, 72, 107, 91, 81, 71, 59, 78, 71, 73, 84, 68, 81, 59, 46, 59, 48, 87, 51, 89, 84, 50, 91, 70, 52, 67, 70, 82, 89, 65, 98, 34, 69, 63, 56, 60, 66, 59, 94, 76, 71, 55, 60, 57, 56, 73, 66, 76, 54, 48, 50, 68, 61, 76, 71, 64, 59, 113, 58, 74, 94, 52, 73, 79, 62, 47, 75, 49, 48, 54, 69, 54, 74, 78, 78, 58, 57, 75, 61, 81, 38, 64, 51, 66, 82, 72, 55, 81, 79, 52, 72, 72, 77, 32, 61, 44, 46, 70, 67, 47, 74, 44, 72, 51, 49, 82, 59, 67, 59, 88, 53, 54, 78, 53, 62, 61, 66, 63, 102, 79, 58, 67, 82, 64, 66, 71, 66, 52, 63, 45, 59, 60, 74, 72, 65, 74, 45, 72, 72, 52, 65, 55, 126, 92, 64, 83, 64, 62, 73, 63, 57, 63, 64, 71, 55, 79, 61, 86, 66, 46, 42, 55, 50, 62, 64, 62, 66, 57, 59, 35, 74, 56, 77, 64, 67, 55, 51, 71, 90, 62, 61, 43, 54, 87, 56, 75, 65, 52, 71, 52, 80, 42, 56, 57, 64, 48, 78, 57, 69, 47, 47, 64, 49, 53, 53, 84, 82, 66, 68, 44, 102, 58, 59, 53, 63, 38, 52, 103, 53, 63, 69, 60, 82, 57, 77, 87, 70, 74, 56, 72, 51, 64, 50, 50, 56, 59, 68, 70, 74, 73, 65, 42, 69, 57, 61, 85, 56, 64, 87, 59, 82, 78, 48, 65, 49, 56, 77, 69, 47, 67, 61, 38, 48, 57, 79, 65, 85, 42, 60, 53, 62, 73, 69, 51, 38, 85, 51, 66, 56, 72, 65, 56, 59, 66, 65, 68, 68, 76, 78, 80, 57, 92, 64, 66, 89, 95, 97, 57, 69, 55, 47, 52, 66, 73, 73, 67, 60, 72, 56, 61, 61, 37, 46, 75, 63, 54, 64, 84, 64, 53, 60, 81, 86, 67, 77, 63, 68, 58, 43, 58, 61, 56, 51, 60, 70, 66, 67, 26, 82, 54, 63, 47, 76, 64, 50, 64, 66, 77, 80, 54, 70, 63, 58, 98, 60, 61, 67, 76, 64, 40, 55, 62, 43, 56, 75, 67, 46, 77, 91, 70, 44, 50, 75, 56, 62, 103, 52, 58, 53, 53, 48, 65, 50, 50, 44, 76, 74, 47, 82, 71, 58, 52, 73, 86, 51, 59, 61, 59, 63, 70, 57, 86, 63, 53, 66, 63, 61, 57, 46, 57, 54, 56, 88, 65, 76, 62, 84, 69, 93, 45, 43, 52, 63, 54, 88, 55, 97, 81, 86, 46, 66, 75, 156, 113, 62, 57, 52, 85, 78, 76, 122, 70, 61, 60, 51, 59, 68, 51, 49, 61, 56, 56, 92, 67, 74, 76, 72, 73, 114, 60, 64, 76, 88, 73, 65, 55, 66, 78, 77, 88, 57, 60, 59, 83, 72, 68, 76, 61, 66, 77, 47, 59, 62, 61, 63, 71, 54, 67, 59, 51, 58, 63, 99, 80, 60, 53, 63, 66, 45, 46, 55, 58, 79, 70, 45, 58, 72, 60, 63, 57, 79, 97, 104, 48, 57, 68, 59, 39, 44, 62, 52, 71, 66, 67, 58, 62, 90, 80, 52, 54, 50, 58, 55, 68, 116, 78, 64, 61, 61, 53, 73, 75, 72, 58, 55, 46, 68, 73, 74, 61, 63, 48, 82, 57, 57, 57, 59, 58, 49, 60, 61, 60, 104, 51, 56, 65, 69, 69, 67, 69, 62, 77, 79, 56, 66, 49, 52, 54, 109, 57, 68, 63, 69, 67, 62, 60, 59, 66, 58, 55, 67, 69, 103, 52, 70, 50, 104, 47, 66, 77, 68, 44, 60, 58, 36, 63, 82, 130, 55, 88, 75, 69, 56, 58, 50, 65, 63, 79, 95, 62, 82, 69, 60, 83, 62, 94, 92, 56, 80, 61, 63, 61, 73, 66, 79, 53, 52, 78, 71, 58, 89, 78, 50, 52, 74, 59, 64, 79, 75, 51, 45, 100, 92, 77, 26, 66, 83, 59, 63, 55, 96, 66, 69, 69, 56, 73, 78, 41, 55, 54, 66, 68, 82, 77, 54, 58, 68, 61, 74, 77, 58, 92, 63, 61, 74, 58, 78, 76, 51, 47, 68, 88, 63, 59, 60, 77, 61, 60, 85, 61, 68, 84, 128, 56, 74, 81, 56, 58, 90, 70, 74, 71, 61, 103, 78, 67, 69, 70, 88, 85, 96, 79, 52, 74, 75, 43, 75, 93, 64, 73, 80, 61, 47, 78, 62, 60, 83, 61, 73, 102, 70, 44, 77, 50, 71, 62, 75, 48, 57, 80, 80, 60, 64, 51, 78, 63, 72, 55, 69, 69, 46, 55, 48, 96, 69, 56, 68, 79, 93, 83, 68, 54, 87, 58, 62, 85, 68, 65, 45, 72, 47, 67, 75, 52, 61, 61, 51, 89, 58, 55, 52, 60, 63, 62, 56, 55, 66, 71, 91, 59, 66, 73, 72, 63, 82, 41, 109, 80, 81, 60, 62, 69, 56, 84, 63, 53, 61, 80, 62, 61, 95, 72, 51, 65, 67, 78, 94, 66, 72, 173, 71, 51, 48, 82, 68, 78, 49, 155, 62, 73, 73, 65, 74, 73, 68, 61, 57, 66, 71, 68, 114, 58, 55, 95, 62, 72, 72, 64, 70, 93, 57, 54, 70, 90, 72, 101, 61, 56, 65, 62, 46, 80, 73, 56, 83, 66, 55, 53, 50, 44, 53, 30, 64, 80, 77, 50, 49, 52, 92, 54, 55, 82, 46, 62, 64, 65, 44, 55, 57, 62, 71, 53, 81, 88, 65, 70, 77, 64, 54, 96, 54, 64, 53, 97, 106, 66, 77, 45, 40, 72, 105, 67, 97, 50, 63, 78, 77, 74, 46, 63, 74, 46, 44, 59, 82, 64, 56, 57, 62, 58, 66, 50, 59, 59, 75, 72, 52, 50, 67, 39, 63, 47, 60, 37, 55, 57, 53, 63, 38, 56, 54, 41, 84, 62, 70, 131, 85, 67, 75, 80, 51, 68, 61, 69, 76, 73, 62, 76, 73, 53, 65, 76, 56, 54, 61, 50, 49, 75, 50, 81, 96, 72, 62, 72, 59, 67, 87, 84, 76, 75, 60, 76, 83, 77, 53, 108, 52, 65, 67, 74, 98, 49, 55, 46, 87, 61, 47, 77, 75, 67, 74, 51, 67, 59, 66, 87, 52, 75, 63, 150, 63, 66, 79, 58, 60, 72, 101, 58, 57, 63, 64, 55, 96, 52, 71, 62, 110, 79, 62, 69, 65, 47, 72, 63, 67, 56, 124, 75, 62, 57, 63, 60, 70, 44, 61, 56, 52, 83, 82, 60, 60, 41, 44, 53, 67, 63, 94, 46, 66, 60, 63, 72, 43, 87, 60, 76, 53, 67, 57, 55, 56, 79, 73, 66, 58, 71, 65, 71, 80, 51, 74, 57, 60, 53, 61, 58, 65, 61, 69, 54, 86, 63, 49, 62, 58, 75, 64, 83, 69, 82, 83, 54, 52, 58, 69, 47, 71, 68, 53, 63, 79, 74, 62, 88, 49, 65, 61, 79, 51, 83, 62, 64, 66, 77, 69, 81, 68, 52, 56, 78, 57, 46, 87, 63, 63, 78, 71, 69, 71, 75, 50, 49, 67, 89, 69, 71, 63, 51, 55, 60, 50, 69, 47, 87, 56, 81, 58, 78, 107, 41, 63, 68, 59, 82, 129, 88, 80, 62, 59, 52, 58, 70, 63, 88, 58, 64, 70, 61, 63, 71, 69, 57, 68, 49, 57, 89, 46, 82, 73, 60, 66, 71, 53, 61, 42, 108, 79, 53, 67, 73, 65, 58, 77, 44, 55, 101, 56, 46, 57, 58, 53, 62, 58, 62, 80, 60, 58, 48, 68, 58, 79, 66, 58, 54, 95, 57, 68, 75, 57, 64, 65, 66, 53, 54, 54, 64, 70, 62, 62, 78, 71, 65, 67, 57, 57, 64, 68, 63, 69, 111, 71, 56, 56, 66, 85, 94, 68, 66, 68, 56, 71, 62, 46, 63, 117, 53, 45, 53, 76, 48, 47, 70, 81, 55, 142, 83, 65, 65, 60, 48, 79, 55, 66, 48, 57, 53, 75, 61, 64, 68, 59, 80, 52, 77, 96, 57, 76, 57, 65, 58, 69, 70, 69, 62, 51, 66, 61, 63, 63, 73, 52, 70, 58, 65, 84, 87, 73, 59, 45, 62, 70, 64, 65, 66, 74, 62, 57, 79, 60, 53, 64, 55, 69, 58, 60, 51, 53, 69, 51, 62, 92, 67, 63, 68, 82, 56, 89, 91, 46, 78, 74, 65, 46, 67, 80, 72, 62, 75, 54, 184, 78, 67, 53, 48, 43, 55, 49, 44, 63, 57, 67, 67, 48, 72, 72, 63, 59, 63, 86, 96, 60, 88, 97, 68, 75, 61, 54, 65, 39, 40, 88, 52, 36, 53, 79, 88, 54, 62, 67, 57, 68, 73, 72, 110, 56, 86, 68, 91, 79, 53, 63, 62, 49, 67, 54, 54, 72, 72, 82, 82, 66, 83, 88, 73, 60, 46, 75, 53, 62, 51, 64, 56, 64, 62, 89, 88, 68, 49, 68, 72, 84, 61, 65, 52, 47, 50, 62, 64, 49, 56, 54, 63, 71, 75, 65, 64, 58, 65, 48, 55, 57, 55, 87, 83, 64, 48, 137, 79, 50, 62, 60, 49, 67, 75, 77, 62, 60, 66, 64, 65, 61, 78, 57, 62, 43, 63, 78, 63, 79, 70, 40, 68, 69, 67, 66, 74, 57, 84, 70, 72, 94, 42, 60, 62, 56, 60, 80, 59, 74, 57, 73, 71, 55, 69, 59, 76, 70, 83, 50, 55, 72, 88, 67, 93, 52, 69, 60, 62, 44, 61, 61, 66, 78, 61, 72, 72, 42, 67, 76, 82, 69, 60, 63, 73, 63, 49, 61, 75, 97, 67, 55, 48, 62, 53, 62, 72, 72, 57, 99, 58, 49, 83, 59, 64, 45, 63, 78, 51, 72, 48, 50, 70, 66, 41, 69, 56, 64, 68, 52, 55, 68, 44, 62, 67, 58, 81, 56, 74, 81, 81, 63, 42, 43, 59, 66, 47, 60, 62, 64, 70, 68, 75, 67, 59, 59, 61, 81, 61, 54, 53, 56, 71, 50, 61, 62, 74, 58, 66, 48, 64, 64, 42, 71, 64, 74, 60, 74, 72, 53, 43, 58, 53, 63, 69, 78, 36, 67, 53, 75, 73, 73, 63, 45, 65, 63, 86, 74, 60, 47, 69, 72, 67, 55, 77, 43, 88, 59, 100, 92, 56, 77, 75, 59, 77, 62, 66, 48, 58, 68, 44, 51, 60, 83, 55, 59, 72, 59, 46, 83, 33, 73, 67, 50, 53, 55, 54, 47, 62, 66, 66, 59, 80, 61, 88, 66, 40, 69, 54, 69, 67, 66, 58, 51, 61, 49, 56, 73, 58, 77, 55, 57, 87, 84, 74, 57, 80, 60, 61, 64, 64, 56, 66, 66, 159, 55, 91, 61, 64, 49, 65, 83, 49, 69, 91, 72, 65, 85, 64, 60, 63, 79, 55, 59, 53, 59, 63, 49, 65, 64, 47, 80, 63, 55, 66, 62, 81, 73, 32, 88, 63, 52, 61, 55, 62, 45, 59, 47, 57, 88, 70, 70, 48, 57, 55, 55, 51, 62, 57, 66, 66, 54, 83, 76, 57, 55, 82, 66, 63, 69, 60, 90, 67, 57, 60, 83, 61, 54, 64, 57, 70, 86, 55, 67, 52, 82, 57, 88, 88, 55, 67, 66, 57, 69, 58, 58, 61, 73, 60, 52, 77, 97, 94, 61, 55, 54, 70, 60, 64, 52, 55, 74, 71, 62, 71, 62, 60, 62, 56, 42, 50, 128, 88, 80, 99, 85, 59, 49, 67, 47, 81, 71, 58, 68, 97, 48, 64, 78, 95, 55, 80, 59, 87, 42, 60, 78, 89, 84, 40, 62, 53, 75, 66, 50, 71, 77, 63, 69, 79, 56, 81, 68, 89, 67, 57, 51, 74, 70, 55, 69, 63, 54, 66, 46, 60, 93, 79, 65, 78, 55, 62, 66, 62, 59, 85, 71, 54, 69, 46, 60, 69, 42, 49, 78, 62, 67, 82, 59, 81, 70, 79, 60, 86, 51, 58, 78, 57, 61, 62, 78, 89, 47, 70, 50, 54, 66, 50, 69, 71, 133, 88, 53, 55, 65, 62, 52, 61, 71, 53, 79, 79, 57, 61, 150, 72, 67, 129, 63, 59, 50, 59, 94, 56, 88, 63, 61, 57, 71, 67, 89, 78, 72, 65, 59, 53, 61, 69, 51, 58, 91, 63, 78, 60, 50, 52, 71, 64, 48, 55, 54, 40, 71, 74, 110, 64, 63, 105, 63, 93, 67, 71, 62, 74, 66, 72, 87, 54, 62, 76, 49, 44, 83, 49, 70, 61, 52, 65, 63, 78, 50, 70, 50, 86, 66, 61, 66, 50, 72, 47, 71, 91, 72, 81, 55, 71, 67, 65, 51, 71, 70, 54, 84, 96, 80, 58, 55, 78, 63, 64, 56, 65, 54, 84, 68, 70, 71, 77, 62, 70, 54, 71, 97, 47, 52, 74, 50, 59, 73, 65, 61, 42, 74, 50, 65, 71, 55, 78, 35, 60, 54, 66, 122, 62, 58, 82, 56, 37, 63, 57, 50, 73, 62, 55, 48, 69, 63, 83, 69, 52, 46, 63, 65, 40, 57, 63, 72, 69, 67, 56, 59, 71, 55, 49, 68, 70, 90, 74, 55, 62, 63, 66, 55, 66, 63, 74, 83, 45, 55, 60, 39, 68, 83, 80, 68, 73, 72, 58, 60, 72, 73, 72, 62, 60, 64, 78, 69, 46, 44, 51, 52, 79, 81, 37, 69, 81, 67, 67, 89, 51, 63, 68, 55, 78, 38, 94, 56, 54, 53, 55, 65, 71, 40, 45, 63, 51, 70, 66, 57, 66, 66, 85, 82, 72, 96, 66, 47, 82, 50, 65, 138, 59, 76, 63, 51, 70, 55, 67, 45, 66, 60, 56, 73, 50, 84, 84, 48, 60, 73, 58, 66, 81, 58, 59, 55, 62, 77, 72, 44, 71, 50, 103, 69, 62, 89, 58, 73, 55, 76, 67, 89, 79, 82, 68, 87, 50, 52, 63, 59, 51, 60, 76, 60, 55, 49, 63, 52, 64, 80, 52, 108, 46, 67, 90, 50, 62, 65, 87, 68, 70, 69, 79, 52, 41, 52, 47, 66, 57, 61, 60, 87, 57, 81, 62, 72, 93, 61, 68, 68, 64, 80, 83, 64, 54, 74, 51, 65, 51, 32, 54, 75, 62, 50, 60, 68, 68, 72, 82, 95, 69, 132, 95, 53, 68, 58, 72, 59, 70, 74, 44, 74, 55, 50, 98, 51, 53, 69, 59, 54, 66, 61, 68, 71, 67, 83, 73, 55, 53, 45, 63, 66, 53, 56, 52, 44, 69, 51, 68, 59, 62, 57, 116, 82, 98, 59, 76, 61, 76, 57, 68, 61, 61, 46, 80, 74, 70, 68, 78, 79, 56, 65, 52, 50, 83, 58, 57, 98, 63, 65, 62, 57, 53, 98, 64, 44, 64, 70, 57, 63, 58, 51, 52, 47, 62, 52, 207, 79, 92, 61, 55, 77, 65, 68, 63, 75, 84, 115, 69, 67, 63, 79, 50, 65, 51, 118, 82, 66, 65, 65, 63, 83, 59, 64, 83, 54, 61, 71, 46, 53, 70, 72, 52, 51, 59, 44, 68, 52, 81, 61, 103, 58, 80, 47, 80, 58, 67, 53, 71, 65, 71, 49, 41, 81, 89, 55, 70, 47, 53, 56, 74, 62, 65, 62, 62, 56, 65, 69, 58, 60, 81, 110, 65, 73, 57, 65, 66, 67, 76, 66, 70, 49, 51, 53, 58, 56, 55, 53, 61, 66, 54, 62, 59, 67, 70, 57, 76, 63, 77, 54, 57, 56, 42, 121, 56, 88, 65, 48, 41, 55, 68, 75, 58, 62, 78, 57, 63, 51, 71, 85, 67, 45, 66, 64, 65, 44, 86, 42, 59, 87, 53, 36, 81, 62, 51, 48, 58, 125, 64, 61, 65, 50, 50, 82, 60, 56, 66, 52, 62, 55, 61, 59, 76, 77, 71, 53, 67, 58, 81, 54, 98, 89, 68, 67, 49, 45, 77, 71, 68, 88, 68, 61, 84, 70, 80, 67, 87, 60, 43, 70, 76, 81, 74, 55, 62, 91, 64, 65, 81, 50, 62, 47, 48, 85, 77, 93, 54, 48, 68, 58, 65, 70, 51, 62, 68, 85, 63, 59, 63, 58, 71, 77, 53, 49, 75, 59, 65, 67, 54, 57, 59, 79, 74, 60, 58, 64, 67, 83, 66, 52, 62, 65, 41, 49, 100, 54, 64, 76, 66, 62, 57, 66, 47, 71, 52, 89, 84, 50, 58, 52, 72, 76, 59, 74, 67, 49, 59, 48, 58, 68, 56, 77, 50, 93, 60, 59, 50, 61, 61, 50, 66, 67, 85, 55, 73, 62, 64, 52, 81, 75, 77, 63, 67, 71, 68, 52, 54, 74, 52, 59, 56, 68, 100, 61, 81, 114, 53, 70, 67, 79, 107, 51, 51, 91, 45, 72, 85, 55, 58, 56, 66, 67, 82, 88, 35, 52, 43, 66, 67, 59, 41, 68, 43, 45, 50, 81, 48, 65, 62, 54, 63, 47, 50, 66, 73, 43, 65, 72, 71, 65, 63, 55, 45, 69, 45, 85, 45, 53, 105, 87, 59, 89, 64, 47, 53, 58, 52, 68, 63, 54, 104, 67, 91, 55, 46, 52, 55, 64, 33, 73, 88, 52, 71, 76, 74, 48, 80, 70, 61, 79, 63, 85, 74, 57, 82, 56, 53, 43, 53, 54, 43, 51, 71, 59, 48, 76, 69, 57, 80, 59, 49, 69, 55, 52, 68, 70, 40, 58, 59, 49, 47, 31, 79, 65, 79, 71, 80, 64, 95, 58, 71, 53, 60, 53, 69, 61, 61, 65, 64, 41, 46, 75, 49, 61, 55, 51, 48, 63, 60, 57, 74, 89, 68, 56, 108, 67, 83, 62, 77, 53, 70, 63, 44, 63, 65, 43, 58, 86, 96, 53, 64, 50, 67, 57, 77, 67, 69, 75, 73, 103, 79, 53, 57, 68, 62, 75, 71, 113, 102, 77, 60, 81, 54, 90, 71, 58, 67, 47, 53, 86, 98, 61, 66, 64, 84, 58, 70, 41, 96, 61, 76, 70, 59, 83, 29, 38, 68, 83, 56, 71, 62, 67, 76, 43, 74, 44, 51, 61, 97, 71, 74, 64, 54, 77, 64, 79, 45, 55, 41, 56, 66, 79, 92, 47, 54, 71, 60, 86, 64, 53, 51, 60, 44, 66, 73, 67, 74, 55, 77, 87, 55, 55, 88, 64, 75, 108, 57, 64, 108, 68, 70, 74, 36, 54, 68, 67, 92, 49, 52, 50, 58, 61, 51, 67, 70, 108, 92, 57, 69, 74, 82, 52, 55, 66, 45, 62, 59, 57, 67, 186, 77, 75, 86, 51, 59, 61, 56, 101, 66, 85, 69, 73, 56, 71, 55, 74, 71, 86, 47, 57, 65, 67, 72, 36, 54, 55, 52, 109, 61, 46, 55, 55, 57, 52, 42, 51, 55, 73, 78, 99, 46, 53, 77, 64, 65, 43, 77, 51, 71, 185, 67, 69, 76, 59, 68, 50, 69, 105, 73, 89, 77, 58, 62, 43, 69, 86, 57, 51, 75, 73, 77, 76, 72, 47, 65, 59, 55, 91, 86, 48, 92, 66, 46, 54, 56, 63, 57, 77, 108, 81, 76, 72, 54, 63, 53, 71, 70, 48, 69, 77, 81, 56, 68, 81, 85, 67, 64, 88, 55, 59, 85, 63, 72, 66, 55, 62, 54, 76, 107, 74, 76, 58, 61, 57, 80, 51, 59, 71, 64, 65, 70, 61, 59, 62, 58, 74, 56, 71, 62, 63, 59, 61, 61, 61, 63, 52, 54, 70, 64, 87, 71, 52, 67, 61, 60, 56, 48, 55, 87, 56, 52, 60, 73, 56, 79, 66, 69, 83, 64, 63, 53, 68, 66, 78, 62, 61, 106, 69, 70, 60, 68, 68, 71, 80, 60, 62, 84, 87, 55, 57, 53, 58, 59, 52, 59, 57, 70, 61, 64, 70, 69, 113, 67, 56, 136, 60, 58, 63, 78, 79, 66, 48, 47, 61, 65, 89, 58, 59, 60, 71, 55, 70, 54, 54, 51, 60, 58, 69, 61, 64, 74, 69, 64, 71, 65, 57, 59, 77, 57, 81, 91, 75, 81, 68, 71, 47, 71, 68, 62, 90, 81, 65, 68, 53, 54, 60, 48, 67, 72, 60, 82, 66, 79, 59, 110, 56, 64, 82, 69, 62, 52, 67, 55, 60, 82, 77, 68, 53, 69, 62, 69, 65, 63, 50, 50, 65, 66, 56, 73, 52, 63, 73, 61, 60, 24, 62, 79, 70, 53, 56, 71, 97, 76, 61, 86, 64, 103, 62, 61, 64, 96, 119, 56, 60, 72, 76, 68, 60, 70, 61, 80, 61, 73, 50, 62, 55, 58, 60, 53, 87, 46, 73, 66, 44, 78, 51, 63, 73, 49, 64, 59, 52, 78, 81, 69, 95, 55, 94, 58, 49, 81, 62, 74, 117, 96, 64, 61, 73, 57, 66, 59, 57, 63, 66, 61, 53, 51, 33, 95, 97, 60, 52, 68, 71, 78, 56, 55, 79, 59, 90, 71, 60, 82, 76, 63, 58, 66, 71, 63, 70, 53, 72, 58, 56, 67, 48, 63, 63, 57, 59, 77, 67, 78, 49, 58, 50, 71, 58, 55, 48, 68, 63, 56, 38, 74, 59, 66, 68, 58, 63, 70, 68, 57, 66, 57, 63, 76, 61, 59, 57, 61, 45, 74, 49, 80, 58, 72, 65, 58, 68, 62, 53, 60, 57, 55, 64, 62, 48, 77, 83, 69, 57, 66, 54, 71, 79, 119, 60, 42, 69, 52, 76, 60, 54, 28, 77, 70, 70, 86, 75, 60, 66, 48, 52, 56, 77, 52, 66, 80, 64, 55, 56, 56, 57, 52, 57, 70, 97, 82, 60, 62, 64, 74, 63, 83, 56, 70, 55, 69, 60, 53, 66, 68, 59, 85, 66, 76, 66, 55, 63, 66, 66, 55, 87, 70, 63, 80, 72, 82, 57, 75, 75, 61, 63, 77, 55, 44, 71, 62, 69, 78, 59, 70, 62, 62, 65, 86, 53, 47, 65, 65, 58, 85, 71, 73, 80, 64, 60, 62, 77, 63, 69, 62, 54, 95, 56, 51, 64, 61, 98, 46, 72, 62, 60, 71, 68, 69, 64, 74, 64, 83, 73, 60, 61, 61, 48, 64, 67, 53, 71, 65, 56, 121, 68, 48, 59, 60, 45, 66, 57, 68, 40, 84, 61, 61, 62, 61, 68, 61, 74, 57, 92, 78, 67, 58, 52, 62, 61, 60, 79, 67, 53, 90, 64, 79, 85, 56, 64, 66, 55, 73, 70, 64, 61, 59, 87, 64, 93, 67, 67, 61, 50, 54, 59, 62, 48, 70, 55, 66, 61, 71, 52, 68, 78, 49, 50, 64, 46, 80, 53, 66, 61, 63, 59, 47, 63, 48, 57, 53, 57, 58, 56, 47, 79, 65, 76, 71, 78, 69, 75, 59, 86, 75, 63, 58, 54, 66, 59, 51, 57, 61, 44, 66, 67, 54, 54, 58, 60, 65, 75, 77, 59, 60, 56, 76, 69, 60, 62, 57, 56, 59, 68, 53, 70, 50, 67, 53, 37, 65, 76, 76, 57, 52, 47, 55, 77, 56, 69, 58, 53, 63, 75, 59, 63, 63, 78, 61, 66, 63, 58, 75, 75, 79, 91, 84, 51, 64, 64, 53, 65, 58, 58, 62, 65, 69, 61, 42, 61, 60, 52, 89, 56, 69, 67, 71, 54, 71, 73, 67, 61, 116, 54, 64, 68, 84, 62, 76, 88, 60, 69, 68, 87, 78, 67, 54, 73, 86, 74, 59, 71, 69, 78, 58, 63, 53, 52, 81, 74, 70, 67, 115, 55, 53, 47, 60, 50, 61, 71, 60, 69, 57, 74, 67, 66, 61, 68, 79, 79, 109, 58, 53, 73, 75, 55, 75, 54, 65, 69, 55, 62, 61, 66, 78, 66, 89, 78, 72, 51, 45, 52, 71, 57, 72, 67, 63, 65, 70, 78, 60, 59, 63, 56, 68, 64, 88, 64, 73, 61, 68, 73, 65, 60, 87, 54, 72, 56, 74, 76, 74, 64, 54, 65, 71, 73, 50, 71, 59, 64, 85, 83, 59, 57, 53, 69, 60, 64, 48, 54, 77, 68, 82, 57, 67, 81, 106, 63, 82, 68, 73, 80, 80, 56, 58, 70, 110, 57, 46, 61, 58, 61, 78, 58, 71, 63, 77, 56, 56, 53, 68, 74, 89, 67, 64, 69, 96, 68, 55, 67, 68, 60, 74, 76, 67, 79, 59, 66, 52, 44, 61, 69, 95, 65, 53, 71, 54, 63, 72, 54, 68, 57, 74, 56, 50, 57, 77, 62, 53, 73, 81, 68, 66, 65, 58, 56, 78, 62, 63, 57, 82, 73, 54, 57, 64, 68, 55, 93, 65, 54, 72, 83, 58, 71, 72, 57, 77, 48, 73, 93, 56, 70, 59, 67, 46, 69, 77, 87, 61, 77, 83, 52, 82, 68, 36, 52, 67, 59, 62, 54, 58, 58, 66, 57, 87, 63, 56, 49, 74, 72, 77, 67, 119, 57, 62, 64, 81, 76, 63, 56, 59, 103, 66, 61, 71, 52, 59, 59, 63, 48, 63, 70, 60, 86, 82, 81, 52, 80, 64, 51, 58, 59, 62, 66, 63, 89, 65, 77, 104, 64, 68, 60, 67, 117, 76, 91, 57, 71, 49, 54, 58, 74, 62, 67, 62, 68, 64, 53, 66, 69, 60, 69, 64, 55, 54, 85, 66, 65, 69, 61, 49, 58, 60, 102, 70, 62, 59, 60, 74, 69, 68, 68, 73, 72, 60, 76, 82, 65, 59, 64, 68, 62, 55, 64, 64, 72, 54, 59, 59, 73, 55, 62, 84, 53, 86, 44, 50, 75, 63, 62, 49, 51, 51, 66, 74, 61, 85, 81, 59, 84, 43, 64, 46, 108, 53, 67, 52, 66, 92, 69, 70, 64, 67, 62, 77, 86, 62, 76, 95, 67, 92, 73, 58, 71, 65, 61, 87, 75, 72, 97, 59, 64, 51, 50, 83, 79, 46, 49, 63, 62, 63, 60, 116, 79, 55, 61, 75, 55, 57, 85, 87, 72, 73, 66, 58, 80, 68, 61, 52, 100, 54, 72, 60, 77, 53, 59, 90, 51, 57, 48, 74, 54, 46, 45, 70, 73, 86, 60, 45, 59, 68, 69, 64, 55, 68, 67, 63, 53, 50, 73, 69, 72, 64, 59, 49, 72, 57, 75, 63, 53, 51, 82, 70, 52, 69, 67, 91, 58, 64, 60, 60, 47, 62, 80, 72, 85, 55, 73, 52, 56, 45, 67, 72, 67, 70, 83, 77, 57, 58, 66, 63, 64, 80, 77, 64, 90, 60, 73, 40, 64, 53, 68, 57, 86, 77, 69, 63, 72, 94, 64, 53, 61, 97, 64, 60, 56, 56, 59, 72, 85, 75, 83, 66, 55, 75, 89, 66, 57, 99, 65, 56, 71, 87, 71, 113, 86, 59, 78, 55, 65, 42, 64, 89, 63, 72, 69, 58, 70, 66, 71, 59, 63, 64, 36, 83, 65, 65, 77, 86, 63, 60, 65, 70, 72, 51, 44, 61, 80, 58, 61, 71, 55, 63, 84, 80, 57, 60, 56, 61, 69, 65, 91, 75, 56, 70, 91, 53, 54, 52, 64, 80, 71, 71, 61, 62, 62, 60, 67, 44, 64, 48, 52, 58, 83, 65, 39, 54, 40, 64, 91, 58, 55, 79, 90, 52, 81, 61, 63, 60, 71, 69, 68, 76, 63, 75, 58, 57, 57, 57, 65, 58, 71, 59, 47, 43, 70, 59, 65, 58, 51, 65, 56, 69, 54, 51, 77, 63, 59, 93, 60, 58, 66, 73, 69, 42, 66, 90, 47, 56, 70, 83, 54, 52, 75, 61, 78, 65, 93, 69, 54, 66, 60, 62, 42, 61, 62, 96, 71, 63, 54, 58, 70, 75, 64, 50, 55, 64, 82, 58, 55, 57, 58, 59, 62, 80, 67, 64, 54, 67, 56, 48, 93, 61, 67, 65, 61, 71, 70, 55, 54, 73, 67, 104, 66, 54, 64, 56, 72, 63, 70, 81, 86, 60, 69, 52, 65, 80, 57, 54, 69, 71, 61, 107, 67, 74, 60, 50, 62, 43, 85, 58, 59, 51, 66, 66, 60, 57, 84, 44, 45, 67, 69, 58, 64, 50, 67, 66, 57, 52, 112, 120, 89, 74, 44, 61, 58, 73, 96, 67, 74, 60, 78, 71, 60, 56, 61, 59, 73, 97, 60, 60, 55, 55, 96, 81, 73, 58, 79, 53, 54, 58, 55, 69, 51, 49, 39, 55, 47, 68, 54, 50, 59, 69, 49, 79, 77, 71, 94, 98, 55, 63, 57, 73, 49, 60, 70, 73, 78, 53, 57, 64, 66, 60, 64, 71, 64, 49, 64, 76, 50, 59, 68, 78, 98, 52, 55, 80, 77, 44, 67, 78, 79, 59, 74, 77, 79, 62, 104, 62, 68, 60, 80, 74, 49, 69, 50, 71, 73, 54, 54, 61, 61, 57, 76, 68, 65, 63, 36, 65, 61, 88, 71, 66, 46, 51, 61, 64, 68, 56, 93, 56, 71, 65, 60, 79, 73, 66, 63, 80, 57, 124, 57, 55, 53, 63, 70, 62, 73, 46, 63, 67, 78, 57, 60, 89, 63, 58, 81, 66, 59, 58, 59, 97, 63, 65, 84, 54, 74, 61, 52, 45, 69, 44, 58, 71, 51, 58, 73, 47, 76, 70, 55, 88, 71, 64, 104, 63, 65, 47, 67, 44, 33, 81, 72, 67, 61, 76, 38, 62, 55, 60, 74, 81, 80, 76, 75, 49, 44, 59, 73, 50, 57, 62, 45, 76, 94, 59, 72, 54, 73, 62, 66, 73, 57, 65, 85, 69, 57, 65, 59, 79, 58, 81, 46, 56, 63, 78, 71, 54, 70, 49, 63, 72, 72, 63, 61, 63, 44, 65, 63, 55, 58, 83, 53, 65, 45, 98, 76, 61, 70, 82, 70, 70, 63, 54, 86, 65, 39, 59, 63, 96, 86, 69, 64, 54, 56, 59, 66, 57, 68, 90, 66, 113, 75, 76, 61, 51, 56, 66, 61, 55, 57, 58, 94, 74, 71, 88, 45, 58, 96, 54, 81, 59, 51, 64, 57, 39, 64, 60, 56, 75, 73, 55, 47, 70, 36, 81, 63, 64, 47, 71, 47, 81, 56, 67, 69, 79, 73, 106, 64, 70, 57, 74, 62, 63, 93, 75, 52, 75, 51, 70, 97, 65, 75, 49, 62, 57, 63, 71, 94, 83, 60, 64, 64, 51, 46, 91, 67, 66, 64, 95, 84, 54, 53, 57, 58, 64, 91, 58, 52, 71, 59, 66, 62, 67, 62, 64, 72, 99, 73, 63, 45, 68, 113, 55, 57, 60, 99, 112, 63, 75, 87, 68, 49, 62, 70, 60, 74, 73, 65, 62, 59, 64, 88, 82, 65, 75, 91, 67, 71, 45, 72, 54, 76, 51, 82, 66, 57, 81, 60, 88, 65, 68, 77, 69, 65, 70, 53, 86, 62, 72, 82, 74, 68, 48, 70, 60, 57, 50, 46, 57, 77, 69, 72, 66, 68, 77, 71, 39, 53, 83, 60, 56, 65, 52, 62, 67, 67, 40, 61, 57, 88, 47, 52, 58, 48, 63, 61, 59, 75, 108, 63, 102, 75, 82, 64, 58, 62, 49, 107, 66, 49, 60, 93, 84, 66, 78, 64, 82, 70, 60, 48, 53, 55, 61, 62, 68, 75, 65, 63, 63, 58, 76, 51, 58, 77, 66, 60, 77, 57, 63, 53, 75, 56, 79, 79, 74, 74, 64, 59, 59, 64, 73, 71, 84, 69, 48, 50, 54, 75, 63, 89, 48, 61, 55, 66, 71, 62, 90, 88, 63, 69, 70, 67, 60, 68, 87, 60, 74, 65, 43, 123, 78, 78, 87, 65, 62, 58, 93, 58, 55, 53, 58, 72, 60, 84, 46, 54, 79, 68, 66, 73, 79, 64, 77, 73, 67, 70, 55, 106, 61, 52, 64, 75, 58, 57, 52, 53, 71, 45, 72, 53, 134, 57, 56, 97, 85, 65, 82, 84, 68, 60, 60, 77, 47, 70, 54, 72, 68, 60, 58, 54, 77, 79, 83, 58, 71, 112, 86, 64, 58, 87, 68, 54, 57, 63, 76, 74, 64, 67, 52, 66, 70, 59, 88, 61, 57, 63, 83, 53, 90, 64, 83, 34, 63, 63, 62, 59, 65, 132, 92, 90, 64, 59, 89, 60, 72, 59, 42, 51, 90, 118, 60, 45, 60, 55, 84, 81, 90, 69, 88, 66, 55, 79, 55, 73, 79, 75, 65, 84, 53, 97, 92, 88, 91, 47, 65, 64, 68, 56, 68, 56, 69, 57, 49, 114, 79, 83, 67, 59, 58, 31, 106, 56, 61, 81, 48, 57, 50, 48, 65, 47, 78, 83, 34, 77, 45, 79, 53, 74, 55, 69, 63, 39, 59, 54, 57, 62, 57, 61, 86, 66, 58, 70, 70, 65, 53, 51, 90, 44, 66, 46, 96, 80, 65, 68, 65, 72, 52, 56, 61, 39, 58, 62, 72, 80, 54, 49, 71, 62, 67, 63, 63, 48, 78, 60, 80, 78, 90, 53, 62, 52, 71, 83, 52, 65, 68, 78, 56, 66, 79, 52, 57, 72, 62, 94, 64, 91, 67, 69, 101, 62, 56, 62, 89, 69, 77, 74, 61, 73, 57, 73, 67, 84, 77, 61, 62, 43, 94, 61, 74, 51, 57, 55, 43, 57, 65, 69, 76, 74, 68, 72, 57, 74, 55, 60, 66, 87, 57, 62, 81, 67, 53, 53, 64, 75, 64, 65, 65, 80, 70, 82, 43, 63, 56, 67, 63, 48, 68, 74, 84, 65, 59, 61, 75, 63, 69, 45, 52, 56, 66, 53, 64, 55, 95, 104, 60, 60, 51, 70, 56, 65, 51, 82, 96, 68, 84, 103, 147, 66, 76, 63, 42, 81, 60, 64, 56, 58, 52, 66, 76, 51, 53, 59, 70, 66, 71, 57, 63, 65, 45, 46, 56, 55, 62, 55, 77, 70, 49, 76, 85, 49, 40, 57, 70, 62, 49, 98, 65, 46, 65, 68, 65, 49, 59, 56, 63, 49, 65, 60, 76, 96, 67, 50, 66, 48, 70, 58, 41, 104, 67, 58, 56, 67, 80, 71, 62, 57, 64, 58, 58, 78, 64, 47, 73, 50, 58, 48, 58, 58, 68, 81, 65, 57, 75, 63, 83, 64, 54, 64, 47, 75, 52, 69, 65, 89, 65, 65, 52, 82, 59, 71, 87, 57, 65, 85, 57, 84, 90, 36, 80, 52, 60, 49, 57, 82, 53, 61, 65, 65, 70, 86, 131, 69, 77, 83, 50, 42, 54, 78, 63, 69, 68, 64, 91, 69, 74, 51, 85, 81, 59, 67, 68, 52, 46, 58, 71, 73, 70, 75, 65, 70, 67, 74, 58, 74, 69, 62, 57, 57, 84, 96, 69, 74, 75, 73, 60, 53, 56, 81, 77, 60, 85, 53, 55, 50, 81, 84, 45, 69, 75, 65, 76, 66, 67, 82, 104, 122, 62, 58, 63, 49, 46, 66, 67, 69, 63, 59, 40, 56, 59, 82, 59, 62, 55, 92, 72, 57, 85, 60, 51, 76, 83, 55, 73, 62, 61, 73, 55, 77, 61, 61, 65, 67, 71, 32, 66, 82, 67, 71, 74, 67, 79, 46, 54, 58, 66, 51, 81, 66, 60, 49, 56, 63, 67, 56, 69, 40, 75, 48, 45, 67, 107, 89, 56, 49, 58, 74, 65, 62, 65, 69, 62, 63, 123, 57, 84, 75, 59, 53, 42, 46, 44, 70, 69, 95, 54, 49, 64, 62, 64, 59, 70, 56, 45, 76, 77, 66, 54, 61, 81, 52, 101, 67, 61, 72, 57, 62, 88, 77, 88, 67, 66, 45, 61, 34, 62, 52, 53, 50, 58, 80, 89, 115, 54, 55, 75, 71, 50, 89, 103, 84, 64, 68, 70, 43, 54, 54, 52, 86, 77, 79, 56, 66, 50, 100, 69, 46, 73, 59, 51, 46, 47, 46, 51, 72, 67, 73, 50, 77, 44, 49, 87, 82, 58, 57, 38, 111, 91, 73, 56, 72, 61, 76, 63, 63, 57, 85, 47, 58, 92, 91, 44, 50, 80, 85, 66, 46, 65, 58, 55, 37, 66, 78, 68, 71, 64, 63, 43, 72, 66, 92, 94, 62, 55, 75, 64, 79, 50, 59, 61, 49, 53, 87, 87, 83, 65, 82, 63, 69, 73, 95, 65, 50, 79, 116, 62, 69, 74, 46, 51, 58, 72, 70, 52, 60, 85, 49, 60, 94, 95, 64, 69, 79, 54, 62, 73, 67, 64, 78, 63, 56, 80, 68, 57, 46, 71, 75, 80, 60, 81, 99, 72, 82, 47, 59, 81, 68, 80, 68, 43, 68, 56, 95, 115, 65, 64, 55, 54, 61, 64, 90, 64, 74, 75, 93, 59, 69, 70, 77, 54, 60, 56, 68, 68, 50, 63, 56, 76, 48, 46, 52, 50, 40, 76, 114, 59, 53, 50, 74, 61, 62, 71, 74, 63, 100, 66, 46, 54, 64, 55, 50, 58, 60, 55, 71, 85, 53, 70, 68, 67, 61, 56, 66, 52, 52, 68, 53, 79, 63, 54, 90, 94, 50, 63, 71, 58, 59, 101, 92, 85, 63, 100, 55, 77, 53, 46, 61, 55, 74, 54, 60, 78, 56, 104, 71, 80, 48, 67, 73, 72, 81, 74, 65, 52, 67, 59, 79, 102, 58, 61, 41, 58, 74, 71, 64, 49, 49, 91, 90, 69, 70, 54, 99, 76, 71, 59, 71, 87, 102, 70, 56, 92, 58, 71, 76, 69, 82, 46, 67, 58, 74, 92, 51, 41, 68, 79, 63, 88, 63, 65, 70, 56, 42, 66, 45, 65, 55, 55, 90, 70, 58, 66, 74, 97, 60, 65, 93, 65, 58, 72, 69, 92, 74, 66, 66, 75, 77, 91, 61, 60, 94, 54, 62, 63, 64, 79, 71, 64, 80, 85, 74, 67, 64, 43, 73, 66, 75, 65, 62, 76, 50, 45, 52, 64, 66, 81, 67, 51, 44, 90, 78, 78, 64, 79, 66, 58, 40, 68, 53, 71, 55, 62, 69, 67, 76, 64, 71, 88, 61, 67, 42, 56, 133, 60, 64, 78, 88, 77, 68, 65, 113, 81, 73, 65, 79, 55, 92, 60, 67, 80, 62, 50, 46, 57, 73, 82, 46, 55, 94, 50, 67, 86, 82, 51, 56, 47, 61, 69, 79, 89, 60, 47, 57, 40, 58, 83, 57, 62, 62, 83, 62, 49, 56, 48, 83, 34, 68, 80, 78, 63, 52, 103, 67, 72, 62, 73, 68, 52, 60, 98, 41, 47, 59, 61, 67, 92, 55, 32, 74, 64, 51, 79, 72, 40, 60, 89, 75, 62, 59, 65, 85, 55, 62, 74, 68, 92, 49, 55, 64, 60, 79, 71, 67, 79, 100, 64, 74, 67, 54, 72, 64, 56, 70, 60, 68, 41, 50, 55, 75, 71, 66, 68, 60, 56, 75, 72, 59, 39, 76, 92, 46, 86, 49, 64, 98, 86, 55, 67, 101, 65, 71, 54, 64, 56, 68, 51, 56, 56, 59, 65, 78, 42, 91, 78, 68, 32, 59, 64, 101, 67, 66, 64, 68, 68, 67, 66, 69, 70, 54, 63, 71, 77, 38, 59, 73, 78, 69, 70, 44, 55, 42, 79, 65, 63, 75, 79, 78, 67, 78, 66, 56, 60, 51, 86, 67, 70, 57, 54, 72, 68, 72, 56, 65, 50, 59, 55, 49, 49, 75, 65, 62, 77, 63, 69, 49, 58, 73, 85, 73, 59, 58, 51, 69, 96, 82, 71, 56, 54, 60, 56, 44, 68, 79, 75, 60, 71, 61, 57, 56, 69, 52, 81, 64, 75, 96, 62, 51, 92, 88, 68, 66, 56, 61, 57, 78, 62, 62, 84, 65, 62, 57, 76, 45, 83, 70, 50, 44, 51, 55, 79, 50, 72, 53, 49, 56, 80, 59, 84, 79, 61, 61, 67, 68, 41, 51, 67, 77, 65, 57, 58, 67, 41, 68, 72, 70, 84, 77, 56, 67, 64, 76, 74, 56, 77, 82, 68, 83, 47, 60, 54, 53, 63, 108, 71, 61, 66, 81, 79, 77, 65, 70, 66, 67, 85, 56, 110, 51, 67, 73, 67, 44, 62, 45, 84, 95, 39, 81, 79, 57, 65, 115, 69, 68, 56, 61, 67, 68, 64, 75, 51, 68, 62, 86, 61, 57, 57, 72, 57, 83, 94, 77, 65, 74, 56, 80, 63, 84, 80, 100, 62, 78, 59, 46, 55, 94, 85, 47, 70, 57, 97, 57, 73, 52, 85, 67, 59, 44, 34, 51, 87, 72, 72, 55, 63, 71, 52, 56, 84, 54, 40, 65, 93, 62, 79, 71, 61, 54, 61, 83, 88, 73, 70, 72, 77, 72, 83, 69, 71, 60, 82, 78, 47, 79, 58, 52, 87, 64, 60, 56, 58, 55, 58, 45, 94, 54, 92, 65, 88, 81, 57, 60, 49, 67, 58, 98, 51, 81, 69, 65, 60, 61, 54, 60, 62, 67, 71, 76, 129, 59, 62, 47, 66, 81, 58, 62, 75, 73, 95, 105, 39, 57, 91, 69, 76, 65, 83, 79, 70, 54, 70, 57, 47, 60, 67, 67, 93, 45, 27, 54, 66, 67, 84, 53, 79, 58, 62, 90, 42, 64, 68, 57, 73, 75, 72, 59, 66, 73, 43, 73, 62, 90, 66, 71, 84, 48, 58, 58, 49, 50, 72, 89, 83, 68, 61, 64, 51, 58, 64, 49, 77, 47, 58, 71, 61, 80, 83, 95, 55, 82, 68, 55, 60, 84, 68, 56, 84, 74, 61, 77, 57, 89, 33, 61, 75, 65, 60, 69, 122, 59, 55, 63, 49, 85, 61, 84, 36, 53, 56, 45, 65, 77, 70, 59, 46, 71, 61, 81, 45, 33, 79, 86, 99, 127, 70, 80, 93, 59, 72, 86, 51, 39, 59, 61, 70, 43, 49, 58, 93, 60, 53, 75, 64, 50, 67, 48, 76, 48, 43, 77, 48, 70, 59, 65, 61, 62, 57, 58, 75, 42, 73, 86, 63, 75, 79, 59, 50, 62, 58, 69, 68, 60, 55, 60, 73, 94, 53, 57, 58, 58, 92, 71, 55, 65, 57, 64, 48, 68, 59, 63, 68, 84, 65, 50, 53, 75, 60, 66, 67, 78, 36, 62, 64, 70, 78, 69, 73, 68, 77, 85, 58, 59, 60, 63, 51, 60, 47, 53, 101, 61, 66, 66, 51, 49, 38, 74, 62, 79, 76, 77, 54, 68, 62, 77, 57, 150, 75, 49, 60, 58, 48, 59, 71, 94, 54, 64, 69, 76, 45, 77, 55, 79, 65, 55, 81, 88, 92, 105, 53, 71, 41, 66, 82, 64, 70, 71, 69, 83, 64, 75, 58, 77, 63, 72, 54, 54, 57, 55, 53, 62, 75, 68, 59, 59, 55, 66, 70, 88, 89, 49, 127, 58, 57, 64, 67, 74, 70, 67, 63, 67, 64, 51, 78, 77, 70, 66, 61, 62, 50, 84, 54, 58, 65, 67, 49, 96, 45, 73, 109, 60, 79, 70, 96, 74, 57, 60, 82, 82, 57, 63, 82, 74, 78, 59, 46, 67, 58, 38, 100, 59, 63, 59, 74, 64, 61, 65, 64, 48, 47, 53, 70, 73, 60, 88, 61, 98, 62, 81, 62, 63, 72, 74, 48, 75, 59, 65, 77, 52, 56, 63, 75, 64, 63, 88, 68, 53, 87, 65, 72, 54, 67, 57, 36, 101, 53, 43, 88, 66, 57, 87, 71, 67, 66, 76, 78, 69, 51, 93, 49, 75, 50, 77, 99, 61, 56, 59, 64, 58, 63, 54, 77, 60, 60, 67, 85, 76, 44, 69, 91, 64, 37, 55, 52, 37, 61, 70, 50, 64, 85, 45, 53, 61, 115, 49, 52, 79, 44, 64, 48, 81, 97, 73, 78, 67, 66, 73, 85, 53, 60, 56, 63, 78, 56, 66, 90, 60, 89, 82, 73, 96, 65, 54, 44, 65, 49, 77, 62, 66, 60, 67, 81, 35, 81, 59, 62, 45, 84, 56, 67, 62, 62, 53, 67, 68, 64, 74, 62, 52, 52, 45, 56, 66, 64, 69, 112, 104, 52, 60, 60, 84, 73, 84, 58, 82, 67, 68, 80, 91, 108, 40, 60, 84, 91, 53, 66, 45, 46, 38, 84, 68, 67, 52, 79, 70, 82, 61, 85, 61, 94, 70, 58, 49, 82, 42, 46, 95, 57, 117, 83, 80, 77, 85, 85, 82, 93, 60, 46, 48, 74, 80, 63, 62, 68, 74, 57, 68, 106, 61, 53, 65, 62, 53, 98, 52, 69, 71, 57, 63, 54, 70, 74, 55, 47, 145, 59, 88, 48, 90, 67, 57, 65, 65, 80, 68, 35, 63, 78, 75, 73, 51, 46, 86, 66, 48, 52, 68, 74, 56, 63, 102, 41, 80, 69, 74, 79, 78, 46, 66, 66, 69, 66, 72, 58, 68, 74, 74, 55, 50, 55, 58, 78, 63, 65, 57, 71, 52, 74, 89, 81, 48, 71, 74, 53, 63, 52, 64, 66, 71, 51, 89, 64, 76, 66, 49, 71, 71, 88, 42, 67, 59, 48, 74, 49, 42, 59, 78, 54, 68, 95, 61, 60, 52, 67, 59, 84, 59, 67, 61, 73, 47, 66, 43, 63, 73, 62, 72, 72, 72, 83, 63, 48, 65, 46, 71, 81, 62, 62, 54, 59, 42, 79, 74, 58, 88, 63, 56, 60, 60, 46, 70, 59, 65, 53, 68, 69, 97, 77, 64, 46, 87, 54, 62, 62, 56, 60, 64, 49, 67, 76, 68, 57, 71, 53, 71, 70, 90, 56, 62, 50, 83, 66, 72, 66, 54, 78, 57, 93, 61, 46, 67, 76, 70, 130, 58, 71, 92, 81, 94, 69, 62, 61, 53, 43, 60, 56, 59, 69, 57, 83, 54, 64, 55, 60, 79, 52, 77, 82, 78, 57, 69, 60, 48, 103, 58, 52, 66, 83, 88, 72, 55, 64, 58, 49, 60, 65, 47, 55, 54, 72, 75, 59, 90, 58, 70, 61, 67, 109, 70, 64, 66, 80, 71, 60, 55, 108, 58, 109, 55, 76, 73, 59, 75, 101, 57, 56, 44, 76, 59, 120, 75, 73, 73, 124, 72, 60, 59, 90, 66, 71, 69, 48, 75, 80, 87, 58, 50, 77, 51, 81, 72, 71, 61, 52, 62, 69, 58, 97, 75, 60, 58, 65, 81, 65, 64, 58, 54, 69, 60, 56, 42, 59, 83, 47, 71, 87, 47, 63, 83, 61, 63, 69, 72, 52, 66, 49, 69, 62, 66, 47, 57, 48, 84, 57, 72, 72, 70, 67, 67, 83, 82, 67, 89, 73, 59, 62, 73, 44, 50, 68, 64, 56, 75, 55, 57, 68, 53, 77, 122, 50, 61, 45, 64, 77, 86, 57, 61, 49, 64, 82, 70, 50, 64, 65, 45, 47, 71, 64, 52, 62, 76, 55, 70, 73, 85, 51, 59, 58, 67, 58, 48, 61, 57, 68, 72, 58, 74, 66, 74, 64, 56, 51, 50, 67, 49, 72, 40, 66, 62, 55, 55, 54, 55, 72, 78, 60, 68, 56, 57, 47, 45, 87, 72, 63, 73, 58, 52, 56, 57, 50, 78, 75, 53, 108, 71, 83, 71, 79, 69, 62, 55, 50, 78, 76, 65, 77, 80, 63, 66, 85, 49, 57, 68, 53, 125, 67, 91, 67, 58, 48, 64, 60, 111, 65, 75, 60, 48, 68, 45, 62, 52, 51, 65, 70, 52, 56, 50, 44, 79, 66, 78, 80, 67, 40, 66, 79, 57, 66, 60, 53, 66, 72, 64, 67, 49, 51, 57, 66, 53, 54, 46, 55, 101, 76, 78, 88, 53, 47, 53, 90, 71, 75, 61, 52, 63, 67, 65, 63, 67, 42, 60, 41, 72, 55, 63, 97, 58, 65, 53, 77, 65, 71, 54, 71, 65, 62, 55, 53, 69, 63, 56, 62, 66, 49, 60, 72, 83, 96, 57, 69, 86, 52, 52, 67, 49, 67, 85, 118, 54, 76, 65, 65, 69, 74, 94, 77, 70, 56, 55, 65, 58, 49, 89, 91, 80, 58, 72, 61, 60, 76, 83, 63, 84, 76, 92, 55, 63, 63, 55, 53, 56, 50, 51, 55, 95, 66, 62, 68, 67, 77, 84, 67, 66, 66, 59, 54, 120, 73, 59, 63, 56, 72, 60, 66, 57, 73, 64, 59, 57, 58, 73, 91, 65, 70, 75, 54, 62, 51, 65, 56, 67, 50, 71, 58, 56, 64, 57, 67, 67, 48, 60, 62, 55, 63, 79, 92, 50, 111, 47, 71, 74, 67, 36, 99, 85, 59, 56, 66, 49, 63, 45, 72, 58, 59, 57, 59, 57, 74, 55, 60, 73, 73, 59, 55, 75, 62, 62, 53, 64, 75, 76, 49, 79, 81, 91, 63, 83, 73, 73, 51, 83, 48, 86, 59, 62, 65, 119, 82, 57, 77, 52, 70, 82, 76, 70, 47, 49, 85, 77, 95, 69, 60, 78, 58, 65, 64, 64, 51, 52, 79, 47, 61, 88, 59, 49, 102, 77, 58, 68, 58, 52, 50, 63, 76, 69, 66, 71, 59, 105, 52, 57, 51, 52, 60, 61, 103, 114, 62, 56, 62, 90, 55, 82, 56, 83, 58, 53, 67, 70, 69, 46, 80, 74, 68, 43, 61, 69, 65, 109, 71, 56, 56, 63, 82, 57, 66, 66, 54, 101, 64, 46, 65, 73, 65, 68, 63, 55, 64, 61, 64, 68, 86, 53, 60, 60, 60, 88, 85, 89, 63, 62, 72, 58, 70, 61, 70, 67, 67, 104, 81, 63, 87, 55, 77, 85, 83, 84, 62, 61, 67, 91, 55, 47, 61, 69, 61, 62, 71, 59, 60, 77, 68, 59, 68, 54, 60, 46, 70, 74, 49, 60, 61, 71, 50, 61, 49, 99, 63, 70, 54, 59, 76, 94, 82, 42, 61, 73, 52, 61, 59, 66, 64, 33, 61, 80, 74, 50, 58, 69, 56, 69, 45, 73, 71, 51, 58, 79, 64, 44, 73, 65, 60, 59, 56, 62, 70, 77, 65, 94, 59, 70, 57, 64, 61, 95, 58, 74, 55, 53, 71, 97, 51, 54, 67, 70, 61, 53, 79, 74, 58, 63, 69, 57, 66, 59, 75, 78, 64, 55, 66, 67, 63, 79, 63, 109, 63, 65, 70, 55, 51, 61, 47, 63, 79, 53, 54, 188, 80, 66, 78, 48, 65, 57, 67, 64, 53, 54, 115, 56, 67, 68, 43, 64, 75, 69, 59, 57, 53, 61, 52, 58, 67, 81, 60, 128, 48, 58, 65, 52, 62, 65, 59, 51, 53, 58, 66, 65, 58, 67, 43, 53, 57, 63, 84, 58, 81, 65, 62, 122, 77, 77, 74, 58, 63, 60, 79, 45, 52, 63, 80, 46, 56, 69, 69, 65, 64, 52, 90, 86, 48, 64, 114, 69, 53, 47, 81, 100, 74, 67, 56, 55, 55, 47, 55, 86, 70, 62, 59, 58, 55, 64, 61, 115, 74, 68, 68, 74, 95, 66, 59, 70, 65, 63, 69, 51, 63, 53, 53, 75, 92, 64, 66, 93, 60, 65, 81, 47, 79, 66, 59, 57, 67, 78, 95, 77, 69, 72, 57, 82, 59, 90, 53, 55, 54, 74, 44, 70, 69, 65, 70, 67, 83, 58, 56, 67, 70, 72, 61, 68, 52, 46, 61, 49, 39, 69, 48, 41, 74, 53, 83, 71, 120, 84, 53, 102, 60, 102, 55, 59, 63, 64, 63, 73, 62, 67, 50, 85, 60, 48, 57, 45, 64, 88, 59, 51, 49, 76, 66, 58, 95, 86, 62, 58, 84, 71, 61, 67, 69, 59, 60, 79, 61, 66, 59, 55, 51, 75, 53, 61, 77, 64, 67, 75, 65, 91, 76, 65, 68, 78, 61, 86, 67, 76, 83, 63, 67, 49, 73, 57, 64, 48, 68, 53, 63, 47, 55, 73, 54, 61, 59, 66, 83, 65, 80, 42, 69, 96, 67, 63, 59, 69, 62, 59, 75, 54, 63, 55, 56, 62, 55, 88, 70, 71, 53, 50, 87, 61, 70, 78, 75, 52, 78, 52, 76, 61, 57, 64, 120, 89, 74, 51, 45, 56, 50, 60, 67, 65, 45, 68, 64, 63, 73, 63, 60, 55, 68, 77, 63, 77, 61, 62, 63, 55, 57, 75, 55, 57, 69, 67, 67, 61, 50, 73, 75, 59, 73, 71, 56, 70, 71, 96, 60, 45, 49, 67, 57, 65, 71, 48, 51, 53, 55, 83, 93, 68, 65, 82, 53, 71, 62, 86, 51, 72, 69, 61, 66, 76, 59, 67, 79, 60, 59, 57, 126, 74, 81, 64, 79, 61, 51, 50, 73, 63, 66, 76, 60, 62, 172, 69, 65, 100, 49, 70, 64, 38, 57, 53, 74, 61, 56, 75, 118, 57, 51, 62, 56, 88, 105, 62, 96, 65, 61, 73, 65, 58, 64, 112, 63, 97, 59, 60, 91, 52, 98, 60, 69, 62, 69, 81, 112, 45, 49, 65, 69, 56, 63, 74, 62, 56, 69, 56, 82, 49, 44, 72, 78, 76, 70, 66, 45, 70, 53, 59, 68, 84, 70, 79, 67, 61, 64, 50, 90, 76, 64, 45, 64, 53, 61, 59, 65, 65, 65, 66, 36, 67, 63, 61, 68, 61, 79, 59, 59, 73, 66, 60, 73, 59, 49, 67, 68, 60, 54, 47, 51, 70, 74, 60, 56, 81, 64, 63, 57, 69, 61, 61, 69, 78, 70, 61, 65, 62, 58, 79, 62, 68, 41, 63, 57, 115, 71, 63, 61, 57, 50, 82, 100, 80, 47, 60, 59, 70, 75, 99, 58, 71, 56, 54, 94, 53, 87, 82, 68, 63, 77, 63, 67, 78, 67, 68, 70, 57, 57, 46, 61, 69, 94, 78, 78, 58, 66, 77, 46, 67, 51, 52, 73, 128, 42, 49, 66, 62, 55, 74, 127, 55, 82, 60, 64, 70, 62, 61, 45, 66, 93, 40, 63, 91, 47, 78, 68, 68, 85, 65, 53, 66, 83, 56, 61, 73, 44, 61, 77, 56, 54, 78, 76, 58, 60, 62, 67, 80, 136, 62, 76, 69, 66, 61, 50, 78, 48, 61, 60, 69, 44, 73, 83, 80, 71, 62, 64, 71, 77, 67, 66, 67, 54, 84, 56, 54, 104, 56, 68, 41, 63, 70, 68, 77, 63, 66, 82, 64, 72, 59, 44, 50, 61, 75, 53, 118, 52, 59, 58, 60, 78, 64, 62, 55, 61, 61, 67, 79, 84, 69, 73, 83, 76, 42, 63, 65, 59, 57, 54, 97, 64, 49, 57, 65, 50, 62, 85, 105, 60, 52, 46, 66, 70, 66, 89, 69, 51, 73, 67, 67, 67, 54, 57, 84, 52, 72, 50, 68, 79, 71, 74, 75, 64, 65, 58, 69, 59, 62, 66, 71, 61, 62, 86, 49, 43, 86, 73, 57, 75, 71, 67, 76, 73, 131, 60, 73, 59, 53, 70, 42, 52, 55, 60, 71, 61, 54, 128, 49, 72, 78, 80, 39, 45, 71, 34, 51, 58, 60, 47, 75, 63, 61, 73, 58, 76, 103, 69, 60, 54, 62, 57, 60, 46, 79, 69, 68, 67, 70, 56, 64, 55, 58, 55, 72, 35, 56, 79, 55, 66, 48, 100, 53, 56, 76, 73, 53, 58, 72, 54, 78, 50, 57, 78, 75, 65, 52, 74, 66, 61, 55, 65, 64, 94, 59, 51, 60, 68, 56, 51, 55, 57, 72, 57, 51, 58, 58, 63, 79, 62, 54, 49, 63, 51, 63, 29, 58, 69, 61, 56, 67, 55, 43, 76, 61, 66, 80, 45, 75, 52, 84, 71, 64, 66, 52, 40, 53, 91, 76, 69, 62, 73, 64, 60, 55, 68, 62, 59, 45, 55, 84, 54, 61, 56, 41, 68, 67, 63, 78, 80, 64, 71, 75, 60, 64, 59, 58, 59, 69, 48, 87, 70, 57, 65, 53, 58, 61, 64, 58, 103, 63, 56, 55, 77, 62, 61, 76, 49, 61, 46, 65, 68, 79, 89, 70, 69, 77, 69, 65, 57, 64, 66, 62, 59, 67, 70, 82, 71, 68, 47, 53, 61, 107, 52, 56, 56, 53, 60, 59, 76, 61, 72, 61, 71, 59, 78, 64, 69, 54, 40, 63, 64, 54, 50, 88, 76, 68, 56, 68, 59, 62, 63, 76, 55, 49, 70, 57, 75, 60, 72, 78, 50, 72, 56, 84, 55, 72, 59, 53, 41, 56, 45, 61, 63, 71, 88, 51, 68, 63, 64, 71, 64, 51, 76, 72, 66, 71, 76, 64, 60, 61, 69, 39, 114, 55, 144, 67, 85, 96, 37, 55, 93, 84, 58, 96, 63, 51, 33, 59, 86, 65, 76, 68, 82, 63, 46, 79, 72, 50, 94, 69, 74, 72, 82, 70, 76, 55, 106, 90, 56, 64, 64, 75, 56, 59, 61, 76, 58, 70, 120, 61, 76, 50, 50, 75, 45, 76, 82, 56, 59, 52, 76, 36, 68, 80, 54, 58, 75, 61, 57, 74, 58, 60, 64, 48, 59, 57, 82, 67, 66, 46, 74, 46, 51, 71, 58, 68, 102, 58, 75, 57, 59, 99, 59, 46, 45, 68, 77, 71, 49, 90, 56, 60, 68, 53, 51, 64, 52, 76, 54, 64, 73, 65, 47, 48, 72, 63, 63, 69, 75, 46, 63, 91, 56, 67, 52, 54, 49, 54, 51, 54, 123, 55, 67, 71, 51, 55, 60, 64, 44, 82, 71, 65, 57, 112, 68, 59, 65, 48, 55, 80, 86, 71, 54, 38, 58, 92, 45, 88, 60, 68, 54, 58, 59, 73, 99, 61, 92, 60, 69, 114, 42, 61, 79, 61, 89, 57, 83, 86, 64, 46, 89, 62, 52, 45, 56, 68, 72, 56, 64, 62, 57, 73, 58, 65, 52, 47, 55, 64, 73, 69, 67, 57, 133, 69, 86, 83, 54, 52, 69, 53, 58, 123, 59, 72, 67, 59, 55, 46, 48, 71, 56, 51, 62, 60, 62, 69, 72, 88, 71, 57, 43, 121, 80, 67, 56, 58, 57, 80, 51, 93, 71, 74, 56, 62, 54, 76, 54, 36, 57, 69, 69, 61, 66, 64, 57, 71, 61, 68, 48, 58, 83, 57, 38, 69, 100, 60, 69, 78, 61, 56, 77, 87, 77, 64, 59, 83, 64, 61, 64, 55, 61, 47, 86, 44, 55, 65, 71, 64, 65, 51, 85, 52, 57, 70, 58, 88, 105, 58, 62, 59, 55, 81, 145, 55, 71, 57, 61, 101, 59, 64, 78, 81, 75, 116, 59, 64, 58, 68, 72, 54, 59, 50, 54, 56, 79, 53, 53, 67, 60, 49, 65, 60, 62, 74, 70, 69, 58, 48, 51, 56, 66, 70, 58, 67, 83, 66, 100, 77, 70, 47, 80, 58, 51, 59, 73, 68, 52, 64, 63, 69, 61, 61, 60, 75, 51, 100, 58, 70, 67, 65, 60, 57, 71, 43, 53, 79, 60, 79, 86, 90, 73, 101, 66, 67, 59, 87, 71, 46, 75, 98, 105, 63, 84, 61, 56, 61, 53, 54, 56, 61, 63, 76, 69, 66, 64, 65, 77, 52, 64, 72, 59, 89, 59, 54, 52, 79, 58, 74, 73, 91, 56, 66, 82, 59, 58, 67, 51, 73, 59, 58, 52, 73, 64, 64, 57, 83, 61, 65, 77, 53, 65, 64, 69, 63, 78, 77, 58, 73, 55, 68, 62, 54, 77, 60, 43, 50, 66, 61, 65, 80, 76, 50, 55, 58, 69, 59, 106, 85, 59, 79, 58, 57, 60, 62, 69, 91, 43, 63, 54, 57, 70, 62, 39, 73, 70, 54, 62, 67, 63, 85, 83, 67, 69, 71, 91, 68, 57, 102, 103, 67, 91, 68, 65, 87, 53, 70, 52, 87, 44, 89, 65, 73, 59, 57, 47, 61, 67, 114, 62, 75, 49, 59, 77, 49, 66, 76, 59, 52, 54, 66, 67, 67, 50, 70, 67, 53, 129, 57, 51, 59, 60, 65, 63, 43, 124, 67, 69, 55, 78, 99, 54, 46, 56, 51, 61, 59, 67, 175, 56, 70, 62, 54, 92, 67, 69, 49, 62, 75, 68, 68, 71, 88, 78, 76, 73, 54, 52, 54, 55, 91, 55, 38, 36, 60, 90, 52, 64, 63, 57, 81, 59, 84, 66, 62, 78, 70, 79, 98, 74, 75, 55, 58, 57, 65, 48, 54, 65, 75, 42, 44, 50, 60, 57, 94, 50, 74, 78, 72, 74, 55, 67, 71, 55, 63, 65, 55, 56, 52, 54, 45, 55, 62, 80, 59, 64, 76, 56, 47, 71, 72, 56, 55, 70, 74, 41, 53, 50, 66, 66, 47, 55, 70, 65, 43, 60, 58, 35, 64, 87, 82, 54, 61, 54, 50, 62, 61, 59, 68, 68, 59, 63, 51, 47, 49, 63, 50, 60, 62, 72, 42, 81, 63, 55, 61, 76, 49, 64, 51, 48, 64, 56, 85, 69, 54, 67, 40, 56, 55, 108, 71, 59, 69, 55, 72, 55, 69, 77, 67, 60, 57, 53, 62, 53, 70, 71, 69, 63, 57, 63, 41, 77, 55, 66, 66, 61, 57, 67, 124, 68, 85, 59, 76, 58, 58, 70, 59, 64, 82, 56, 46, 76, 61, 59, 87, 37, 52, 67, 63, 64, 59, 63, 52, 71, 67, 53, 118, 49, 70, 66, 67, 53, 54, 62, 102, 59, 104, 63, 60, 61, 65, 70, 58, 60, 72, 63, 61, 63, 66, 64, 61, 63, 63, 55, 60, 92, 58, 72, 47, 68, 57, 64, 70, 107, 43, 73, 51, 88, 76, 82, 58, 64, 62, 67, 47, 69, 36, 100, 92, 86, 68, 73, 72, 62, 103, 85, 95, 74, 69, 48, 67, 62, 47, 78, 60, 60, 71, 67, 80, 68, 50, 56, 65, 57, 51, 54, 75, 68, 72, 65, 73, 59, 67, 57, 77, 80, 55, 66, 65, 60, 66, 68, 53, 82, 61, 72, 62, 86, 65, 52, 78, 79, 58, 52, 60, 63, 50, 60, 55, 67, 56, 83, 55, 66, 108, 67, 47, 58, 56, 86, 66, 42, 60, 92, 56, 59, 66, 65, 56, 57, 66, 68, 54, 101, 79, 74, 55, 72, 64, 77, 73, 62, 53, 70, 97, 55, 68, 67, 70, 95, 74, 56, 65, 86, 89, 55, 53, 54, 49, 104, 71, 71, 81, 71, 75, 57, 52, 67, 47, 81, 60, 64, 59, 58, 78, 77, 64, 72, 52, 71, 59, 67, 70, 61, 75, 59, 92, 64, 66, 51, 49, 64, 60, 66, 85, 74, 62, 50, 73, 49, 64, 78, 71, 66, 36, 53, 55, 83, 71, 117, 79, 77, 61, 67, 64, 70, 64, 71, 73, 78, 58, 58, 67, 59, 55, 76, 76, 63, 43, 70, 64, 73, 51, 55, 108, 62, 63, 71, 66, 72, 59, 70, 62, 55, 64, 61, 73, 52, 65, 58, 64, 52, 50, 81, 30, 58, 71, 70, 71, 57, 73, 50, 55, 46, 68, 62, 59, 92, 58, 58, 52, 63, 56, 36, 51, 59, 82, 73, 85, 79, 69, 69, 59, 67, 64, 62, 67, 109, 70, 108, 61, 53, 69, 58, 46, 56, 68, 88, 63, 47, 88, 96, 49, 103, 72, 60, 59, 59, 63, 46, 65, 64, 63, 58, 81, 61, 63, 72, 71, 54, 68, 70, 82, 43, 52, 58, 63, 63, 55, 106, 77, 79, 99, 59, 86, 60, 93, 58, 66, 65, 71, 46, 62, 53, 62, 62, 56, 61, 59, 83, 74, 58, 75, 59, 64, 66, 65, 66, 35, 71, 97, 75, 48, 69, 52, 78, 77, 143, 58, 65, 74, 85, 56, 73, 72, 76, 59, 86, 65, 64, 57, 68, 58, 63, 54, 81, 66, 68, 51, 70, 66, 63, 62, 60, 53, 66, 43, 42, 86, 75, 55, 77, 63, 60, 52, 61, 60, 80, 54, 79, 58, 61, 73, 64, 89, 51, 58, 84, 69, 78, 68, 57, 32, 54, 57, 45, 53, 67, 64, 129, 64, 73, 68, 64, 99, 77, 63, 91, 57, 70, 68, 58, 64, 77, 64, 65, 73, 84, 75, 72, 65, 62, 66, 81, 50, 117, 87, 77, 85, 60, 58, 107, 55, 59, 75, 57, 52, 73, 66, 58, 63, 78, 46, 106, 70, 65, 77, 68, 67, 63, 62, 62, 87, 109, 67, 69, 100, 68, 70, 70, 59, 65, 76, 69, 40, 81, 56, 52, 80, 72, 63, 52, 54, 62, 70, 79, 55, 58, 69, 55, 62, 97, 71, 63, 55, 56, 80, 78, 53, 65, 58, 69, 64, 68, 46, 65, 75, 87, 74, 54, 52, 73, 57, 70, 56, 81, 60, 55, 69, 79, 76, 94, 70, 90, 51, 81, 59, 71, 63, 68, 50, 71, 67, 74, 75, 67, 83, 59, 63, 70, 91, 74, 47, 83, 40, 68, 86, 75, 51, 51, 61, 70, 52, 55, 65, 64, 73, 56, 52, 83, 61, 58, 58, 67, 66, 76, 63, 50, 49, 73, 47, 64, 70, 55, 60, 47, 105, 68, 61, 65, 86, 76, 53, 75, 44, 74, 56, 71, 44, 64, 72, 64, 76, 105, 78, 56, 64, 75, 80, 69, 51, 77, 195, 60, 61, 66, 101, 73, 62, 68, 60, 48, 62, 55, 78, 66, 37, 75, 101, 65, 73, 60, 59, 53, 89, 57, 62, 84, 50, 58, 88, 63, 81, 65, 57, 57, 47, 72, 73, 76, 54, 65, 61, 56, 56, 79, 112, 80, 86, 52, 68, 73, 83, 61, 54, 63, 72, 71, 73, 80, 46, 62, 110, 57, 58, 99, 54, 56, 57, 58, 102, 60, 55, 64, 58, 56, 73, 50, 55, 59, 44, 72, 74, 67, 64, 65, 50, 45, 57, 64, 66, 70, 43, 60, 61, 86, 59, 92, 54, 87, 40, 57, 58, 44, 80, 95, 90, 129, 96, 61, 49, 70, 48, 63, 83, 45, 61, 67, 48, 79, 78, 40, 78, 83, 68, 108, 64, 74, 58, 69, 35, 73, 63, 101, 71, 45, 53, 53, 77, 74, 71, 91, 65, 53, 72, 59, 106, 63, 75, 46, 78, 46, 70, 61, 60, 38, 54, 61, 72, 62, 49, 67, 73, 79, 61, 65, 50, 58, 84, 85, 72, 70, 44, 52, 72, 71, 45, 54, 49, 63, 64, 58, 72, 114, 75, 66, 57, 75, 52, 62, 87, 74, 89, 74, 73, 67, 67, 81, 68, 71, 62, 43, 58, 72, 107, 74, 63, 52, 59, 82, 98, 107, 66, 70, 52, 62, 72, 52, 124, 60, 66, 58, 58, 86, 64, 54, 41, 76, 106, 47, 69, 54, 63, 78, 62, 62, 64, 56, 57, 58, 52, 60, 66, 66, 58, 67, 60, 50, 74, 41, 68, 52, 77, 71, 46, 53, 62, 45, 60, 94, 90, 63, 68, 49, 68, 54, 54, 62, 73, 47, 58, 76, 54, 40, 62, 74, 54, 72, 49, 57, 70, 48, 75, 66, 103, 60, 67, 70, 52, 84, 62, 56, 51, 68, 60, 66, 67, 67, 58, 61, 141, 80, 47, 67, 55, 47, 75, 71, 63, 47, 56, 85, 62, 74, 66, 54, 66, 61, 57, 54, 79, 44, 66, 99, 66, 66, 60, 53, 67, 51, 64, 61, 61, 51, 43, 66, 59, 41, 60, 56, 75, 59, 64, 72, 79, 66, 74, 58, 59, 52, 71, 67, 60, 91, 66, 79, 46, 67, 88, 63, 65, 49, 77, 61, 58, 96, 66, 67, 46, 91, 87, 50, 79, 69, 54, 60, 61, 62, 67, 58, 70, 78, 51, 47, 74, 75, 50, 75, 93, 42, 79, 100, 62, 49, 51, 39, 60, 91, 51, 79, 73, 84, 63, 54, 85, 51, 68, 65, 57, 55, 83, 77, 49, 60, 43, 83, 86, 58, 57, 50, 68, 66, 62, 73, 70, 71, 64, 60, 72, 69, 57, 69, 68, 78, 62, 65, 46, 77, 67, 66, 59, 91, 64, 58, 49, 76, 81, 61, 66, 79, 65, 56, 59, 70, 61, 79, 57, 64, 64, 76, 57, 77, 53, 55, 72, 51, 70, 60, 74, 41, 120, 93, 60, 58, 45, 79, 69, 56, 91, 79, 91, 78, 71, 85, 68, 116, 60, 64, 64, 66, 47, 75, 64, 43, 50, 47, 64, 46, 72, 49, 62, 71, 70, 49, 74, 86, 59, 70, 84, 59, 85, 58, 65, 60, 60, 57, 63, 95, 58, 56, 54, 62, 68, 87, 54, 92, 53, 47, 69, 58, 73, 58, 83, 83, 67, 64, 60, 50, 70, 76, 76, 64, 56, 69, 53, 83, 104, 57, 64, 52, 54, 70, 73, 82, 70, 59, 66, 66, 69, 102, 78, 62, 59, 91, 72, 82, 59, 67, 72, 72, 79, 87, 50, 22, 60, 63, 87, 56, 54, 46, 75, 80, 62, 62, 58, 43, 44, 50, 50, 66, 91, 65, 71, 62, 63, 91, 56, 68, 74, 54, 77, 75, 63, 65, 77, 75, 55, 60, 58, 56, 65, 102, 82, 105, 68, 71, 54, 72, 53, 70, 84, 57, 92, 45, 68, 52, 52, 48, 52, 58, 60, 53, 96, 82, 46, 81, 66, 71, 66, 72, 70, 61, 64, 64, 59, 48, 71, 72, 72, 73, 74, 68, 56, 63, 65, 65, 64, 60, 82, 63, 88, 83, 84, 54, 41, 77, 92, 56, 55, 67, 72, 57, 50, 66, 40, 59, 50, 53, 78, 71, 59, 81, 86, 44, 81, 92, 62, 67, 71, 82, 69, 68, 84, 60, 50, 69, 78, 60, 58, 63, 118, 74, 63, 62, 55, 85, 61, 67, 48, 85, 53, 89, 40, 52, 63, 70, 88, 71, 88, 66, 89, 70, 60, 42, 50, 63, 74, 65, 77, 80, 52, 66, 65, 74, 80, 59, 58, 63, 64, 59, 82, 74, 51, 53, 66, 52, 72, 40, 90, 73, 70, 58, 65, 59, 53, 49, 52, 136, 90, 48, 54, 75, 77, 68, 51, 83, 72, 58, 67, 50, 47, 63, 72, 71, 69, 75, 92, 54, 73, 44, 87, 77, 71, 109, 58, 53, 44, 72, 75, 64, 79, 63, 63, 41, 70, 65, 74, 70, 56, 64, 57, 57, 77, 87, 59, 59, 57, 57, 62, 37, 53, 101, 66, 99, 46, 62, 65, 93, 71, 59, 53, 90, 84, 70, 55, 53, 45, 73, 68, 73, 68, 48, 57, 65, 66, 54, 85, 87, 41, 90, 48, 67, 55, 93, 85, 76, 61, 67, 88, 99, 60, 69, 55, 67, 61, 93, 116, 49, 47, 58, 63, 64, 64, 93, 60, 68, 63, 56, 66, 68, 55, 75, 82, 78, 106, 82, 51, 58, 68, 78, 56, 62, 55, 59, 73, 66, 61, 76, 70, 54, 76, 62, 47, 63, 75, 66, 42, 63, 56, 50, 60, 56, 69, 86, 73, 111, 59, 112, 47, 51, 76, 71, 63, 94, 68, 67, 71, 85, 59, 77, 82, 58, 58, 55, 60, 69, 47, 71, 69, 74, 53, 60, 89, 81, 110, 66, 73, 68, 69, 67, 61, 77, 47, 61, 60, 57, 64, 87, 78, 55, 101, 53, 58, 106, 47, 55, 90, 62, 61, 52, 87, 120, 75, 75, 71, 60, 64, 56, 65, 67, 81, 72, 59, 71, 52, 48, 63, 78, 70, 52, 64, 84, 60, 105, 51, 57, 72, 68, 56, 54, 59, 64, 50, 75, 36, 63, 58, 43, 55, 71, 56, 72, 64, 53, 50, 64, 60, 52, 59, 50, 69, 64, 57, 67, 53, 54, 70, 80, 91, 87, 61, 55, 83, 67, 58, 71, 46, 73, 60, 59, 56, 80, 46, 78, 62, 61, 78, 39, 72, 95, 60, 54, 85, 77, 56, 52, 54, 82, 47, 45, 38, 41, 63, 72, 51, 59, 42, 52, 74, 52, 79, 76, 73, 122, 84, 88, 74, 100, 50, 61, 29, 44, 69, 89, 58, 73, 64, 88, 58, 59, 72, 71, 70, 64, 58, 61, 41, 71, 61, 54, 67, 109, 36, 50, 60, 75, 84, 58, 66, 71, 53, 58, 68, 49, 56, 54, 92, 78, 48, 75, 40, 77, 74, 53, 64, 56, 67, 77, 79, 53, 39, 80, 69, 63, 77, 43, 40, 52, 62, 74, 68, 54, 76, 56, 60, 56, 47, 61, 61, 47, 71, 115, 63, 58, 76, 63, 63, 91, 83, 44, 58, 57, 66, 62, 100, 43, 82, 88, 61, 63, 68, 74, 74, 86, 89, 58, 75, 68, 47, 53, 63, 56, 66, 60, 51, 74, 45, 82, 69, 69, 60, 71, 42, 63, 54, 62, 68, 49, 58, 49, 62, 60, 69, 74, 65, 52, 73, 64, 100, 45, 73, 59, 60, 82, 91, 79, 75, 79, 56, 70, 58, 89, 64, 62, 50, 65, 69, 91, 50, 59, 52, 67, 82, 63, 52, 66, 62, 54, 57, 49, 63, 66, 63, 82, 60, 66, 54, 56, 62, 62, 75, 56, 89, 61, 68, 57, 62, 58, 35, 72, 72, 71, 73, 122, 84, 59, 48, 40, 76, 68, 64, 87, 37, 70, 49, 53, 77, 46, 89, 78, 73, 69, 72, 85, 66, 54, 56, 107, 74, 71, 118, 53, 54, 68, 65, 61, 70, 68, 58, 53, 66, 86, 116, 58, 51, 51, 60, 66, 66, 76, 59, 119, 55, 54, 70, 65, 59, 60, 48, 69, 79, 54, 66, 32, 72, 64, 50, 62, 55, 73, 79, 52, 77, 52, 43, 66, 61, 52, 55, 65, 64, 81, 39, 67, 79, 90, 68, 55, 76, 58, 49, 65, 45, 62, 63, 60, 63, 58, 126, 50, 79, 55, 56, 57, 58, 57, 49, 46, 133, 76, 64, 56, 60, 84, 102, 75, 75, 61, 54, 63, 53, 45, 68, 73, 70, 44, 67, 50, 72, 57, 66, 80, 56, 72, 60, 62, 72, 54, 94, 52, 75, 61, 69, 81, 45, 69, 64, 57, 61, 79, 64, 54, 71, 62, 69, 58, 47, 44, 49, 71, 75, 53, 59, 42, 56, 62, 56, 72, 85, 91, 55, 55, 69, 54, 43, 59, 63, 72, 71, 71, 75, 63, 61, 53, 59, 63, 59, 41, 67, 80, 61, 64, 97, 73, 68, 67, 54, 54, 96, 63, 56, 86, 57, 62, 79, 46, 52, 62, 80, 67, 71, 82, 74, 59, 69, 73, 69, 59, 68, 90, 61, 70, 70, 101, 57, 68, 79, 61, 68, 68, 70, 42, 65, 46, 65, 75, 71, 63, 68, 67, 60, 48, 83, 62, 65, 96, 44, 55, 72, 64, 91, 66, 68, 66, 62, 77, 80, 66, 160, 37, 57, 68, 51, 52, 46, 73, 68, 73, 59, 77, 62, 50, 78, 50, 62, 61, 65, 60, 95, 63, 68, 57, 58, 58, 49, 48, 64, 54, 61, 57, 103, 90, 46, 66, 73, 58, 55, 74, 38, 56, 59, 65, 67, 68, 69, 75, 65, 93, 56, 60, 41, 57, 70, 62, 65, 65, 70, 43, 55, 60, 79, 55, 74, 69, 76, 47, 91, 41, 75, 104, 54, 59, 70, 54, 68, 75, 62, 29, 72, 76, 88, 50, 49, 99, 56, 77, 78, 53, 55, 47, 80, 70, 68, 64, 59, 75, 50, 82, 55, 126, 68, 76, 42, 51, 75, 68, 62, 65, 110, 63, 59, 51, 71, 50, 52, 59, 53, 62, 104, 45, 64, 56, 57, 84, 74, 55, 70, 85, 67, 61, 72, 49, 67, 63, 71, 84, 96, 72, 94, 64, 66, 57, 85, 71, 73, 63, 67, 101, 69, 93, 70, 76, 83, 86, 72, 72, 80, 82, 71, 60, 115, 66, 63, 68, 41, 78, 59, 65, 39, 53, 52, 63, 59, 46, 76, 87, 60, 69, 68, 77, 69, 58, 46, 56, 52, 78, 58, 86, 40, 60, 59, 37, 62, 52, 87, 81, 56, 66, 76, 54, 89, 53, 68, 56, 75, 66, 69, 58, 58, 76, 73, 80, 58, 74, 62, 65, 71, 54, 59, 57, 58, 189, 73, 47, 50, 65, 81, 48, 50, 60, 39, 58, 70, 57, 79, 67, 61, 63, 58, 57, 53, 90, 62, 58, 81, 52, 80, 59, 58, 36, 65, 59, 86, 64, 64, 60, 79, 61, 73, 61, 91, 59, 107, 95, 56, 62, 85, 48, 67, 98, 70, 44, 67, 85, 58, 56, 57, 75, 86, 83, 87, 83, 71, 116, 90, 57, 83, 78, 70, 64, 73, 59, 72, 97, 72, 81, 51, 66, 64, 49, 40, 78, 68, 44, 67, 68, 97, 60, 78, 69, 58, 101, 55, 76, 63, 47, 76, 61, 58, 75, 86, 50, 49, 105, 66, 76, 58, 93, 65, 97, 40, 54, 59, 39, 42, 88, 62, 72, 51, 64, 78, 52, 63, 73, 42, 50, 58, 60, 66, 73, 77, 52, 78, 73, 59, 47, 61, 39, 96, 86, 71, 73, 57, 42, 47, 96, 48, 87, 55, 47, 83, 41, 44, 46, 51, 70, 83, 81, 80, 90, 68, 72, 65, 62, 65, 84, 58, 64, 97, 59, 62, 67, 68, 50, 48, 65, 88, 61, 54, 43, 67, 72, 37, 44, 66, 61, 56, 69, 76, 59, 66, 66, 71, 62, 53, 72, 91, 84, 63, 68, 80, 47, 118, 67, 111, 54, 61, 64, 51, 71, 65, 64, 63, 122, 60, 57, 75, 54, 79, 70, 58, 63, 75, 67, 67, 51, 77, 47, 42, 74, 54, 68, 69, 73, 56, 64, 62, 60, 47, 55, 79, 65, 65, 47, 35, 68, 114, 122, 68, 88, 52, 57, 66, 75, 60, 47, 45, 66, 46, 59, 50, 59, 47, 57, 66, 86, 72, 50, 51, 75, 72, 61, 90, 74, 55, 59, 50, 57, 49, 63, 65, 53, 37, 59, 82, 57, 42, 83, 82, 98, 57, 92, 66, 101, 60, 38, 59, 64, 51, 66, 61, 48, 57, 51, 57, 52, 64, 43, 72, 97, 58, 51, 62, 89, 59, 68, 44, 102, 59, 60, 72, 50, 53, 48, 66, 61, 76, 56, 88, 75, 43, 51, 51, 76, 51, 58, 47, 106, 103, 92, 60, 62, 103, 62, 89, 48, 53, 69, 67, 63, 58, 53, 64, 52, 41, 82, 59, 53, 59, 59, 65, 68, 52, 56, 76, 62, 102, 63, 61, 24, 72, 78, 61, 44, 93, 85, 76, 86, 83, 68, 57, 78, 47, 72, 100, 58, 33, 64, 63, 65, 71, 70, 83, 57, 78, 82, 67, 48, 72, 87, 47, 81, 69, 50, 56, 74, 57, 58, 61, 55, 68, 54, 75, 58, 69, 69, 77, 72, 121, 73, 67, 75, 55, 60, 78, 66, 89, 51, 44, 73, 88, 52, 58, 63, 81, 65, 58, 71, 72, 65, 77, 54, 64, 80, 82, 76, 117, 87, 89, 58, 49, 92, 95, 84, 79, 53, 79, 85, 62, 55, 70, 81, 56, 100, 65, 59, 56, 84, 52, 65, 50, 58, 100, 60, 70, 70, 50, 75, 57, 63, 73, 39, 60, 62, 60, 54, 78, 62, 86, 68, 79, 71, 68, 54, 80, 56, 42, 81, 51, 91, 93, 61, 63, 55, 62, 49, 57, 124, 73, 54, 56, 74, 84, 94, 70, 67, 53, 58, 63, 53, 53, 62, 47, 84, 87, 61, 65, 52, 45, 61, 46, 61, 70, 72, 68, 76, 69, 57, 88, 56, 72, 60, 34, 67, 45, 52, 56, 74, 34, 60, 77, 73, 73, 89, 68, 65, 81, 53, 57, 98, 56, 74, 58, 80, 78, 45, 56, 59, 51, 73, 57, 61, 52, 77, 46, 78, 54, 60, 59, 69, 47, 104, 58, 57, 70, 69, 66, 77, 45, 66, 51, 64, 67, 73, 54, 127, 68, 69, 52, 69, 75, 68, 63, 54, 71, 71, 57, 81, 69, 67, 62, 63, 58, 67, 67, 58, 63, 47, 64, 149, 61, 64, 67, 57, 81, 32, 61, 99, 77, 51, 79, 68, 78, 56, 48, 56, 52, 68, 80, 74, 61, 48, 58, 72, 61, 59, 67, 60, 71, 69, 49, 55, 77, 43, 101, 61, 56, 52, 193, 81, 77, 79, 71, 86, 89, 71, 61, 62, 62, 77, 62, 55, 55, 60, 78, 72, 65, 51, 72, 69, 89, 59, 28, 58, 80, 51, 61, 61, 98, 95, 56, 74, 82, 64, 80, 46, 67, 101, 76, 76, 48, 58, 55, 69, 59, 90, 68, 77, 59, 73, 74, 65, 78, 63, 83, 62, 45, 59, 54, 81, 57, 68, 42, 65, 74, 82, 96, 53, 78, 36, 53, 60, 74, 63, 51, 73, 76, 54, 57, 74, 53, 56, 66, 68, 58, 53, 56, 68, 88, 53, 71, 52, 65, 66, 44, 101, 63, 69, 46, 70, 58, 52, 48, 66, 67, 61, 60, 66, 54, 58, 54, 66, 38, 50, 68, 60, 51, 83, 49, 89, 63, 51, 78, 67, 71, 54, 51, 56, 53, 69, 73, 73, 48, 61, 78, 42, 61, 58, 53, 59, 90, 66, 123, 56, 60, 59, 44, 71, 70, 63, 53, 51, 81, 90, 77, 61, 63, 65, 77, 44, 78, 43, 58, 71, 65, 68, 81, 53, 63, 66, 75, 94, 70, 86, 76, 61, 60, 81, 56, 68, 93, 80, 50, 70, 90, 71, 82, 60, 69, 104, 55, 55, 79, 61, 79, 83, 63, 82, 63, 54, 72, 85, 52, 83, 42, 66, 60, 59, 57, 48, 71, 66, 64, 117, 74, 90, 73, 57, 64, 61, 75, 73, 63, 43, 87, 39, 68, 65, 78, 74, 57, 57, 31, 72, 53, 68, 62, 49, 67, 59, 80, 72, 56, 55, 75, 64, 52, 64, 74, 51, 48, 71, 69, 60, 47, 60, 81, 69, 72, 45, 54, 62, 78, 63, 69, 150, 82, 75, 61, 45, 95, 55, 53, 81, 106, 68, 51, 66, 59, 83, 56, 47, 52, 58, 76, 76, 60, 40, 83, 65, 63, 70, 90, 58, 50, 57, 62, 66, 76, 61, 103, 54, 49, 75, 52, 66, 54, 50, 80, 58, 54, 78, 24, 38, 52, 108, 55, 56, 58, 77, 59, 86, 48, 58, 42, 48, 34, 82, 69, 111, 68, 51, 74, 54, 60, 59, 88, 61, 53, 60, 69, 42, 58, 69, 53, 62, 57, 76, 71, 80, 54, 74, 55, 51, 89, 66, 74, 73, 52, 77, 55, 58, 88, 96, 65, 77, 55, 84, 44, 55, 59, 50, 69, 67, 81, 62, 79, 59, 69, 74, 82, 55, 66, 111, 59, 76, 66, 48, 56, 60, 83, 54, 73, 44, 92, 49, 70, 61, 80, 77, 67, 55, 52, 66, 51, 60, 87, 78, 93, 68, 113, 55, 75, 58, 43, 65, 52, 86, 94, 39, 94, 64, 60, 71, 57, 67, 54, 64, 58, 53, 68, 58, 62, 69, 86, 60, 75, 51, 74, 65, 59, 56, 53, 64, 49, 74, 46, 54, 60, 65, 96, 86, 88, 49, 69, 81, 41, 108, 58, 74, 80, 62, 50, 84, 55, 63, 72, 110, 44, 52, 53, 76, 51, 67, 65, 50, 70, 78, 40, 85, 76, 61, 74, 56, 60, 75, 62, 69, 72, 50, 82, 48, 34, 79, 57, 77, 59, 74, 75, 56, 68, 92, 49, 39, 72, 55, 62, 55, 93, 58, 60, 64, 53, 88, 66, 46, 57, 54, 79, 101, 69, 56, 97, 51, 63, 72, 71, 74, 48, 95, 70, 66, 54, 77, 75, 41, 84, 56, 61, 67, 81, 81, 43, 70, 73, 57, 72, 55, 59, 73, 45, 60, 80, 68, 52, 100, 66, 61, 80, 59, 63, 67, 57, 89, 65, 82, 71, 60, 61, 68, 70, 88, 88, 68, 62, 52, 76, 68, 40, 41, 65, 43, 69, 61, 77, 57, 101, 75, 68, 72, 42, 69, 60, 66, 61, 59, 67, 76, 84, 66, 66, 74, 38, 49, 71, 38, 73, 63, 60, 92, 81, 149, 62, 76, 55, 64, 85, 71, 69, 70, 72, 41, 66, 128, 50, 60, 56, 48, 73, 211, 74, 73, 76, 67, 65, 73, 50, 47, 42, 70, 69, 68, 63, 56, 80, 54, 73, 60, 72, 71, 45, 81, 53, 63, 68, 81, 62, 65, 78, 72, 76, 65, 76, 59, 53, 85, 50, 74, 63, 44, 73, 91, 57, 80, 39, 81, 71, 72, 88, 75, 58, 68, 73, 75, 67, 60, 33, 92, 46, 66, 98, 75, 89, 53, 49, 83, 58, 70, 64, 49, 73, 60, 77, 55, 49, 82, 46, 80, 57, 63, 73, 61, 67, 43, 68, 57, 60, 74, 74, 64, 64, 46, 56, 50, 69, 73, 55, 42, 78, 72, 52, 54, 68, 62, 57, 68, 59, 67, 76, 58, 52, 60, 72, 53, 50, 88, 70, 61, 55, 87, 52, 57, 61, 82, 65, 67, 56, 64, 57, 49, 93, 84, 76, 65, 84, 58, 64, 84, 62, 79, 89, 55, 57, 84, 76, 71, 79, 61, 65, 88, 57, 54, 67, 81, 68, 59, 67, 67, 125, 90, 72, 59, 63, 74, 64, 81, 90, 46, 51, 66, 65, 74, 64, 54, 105, 62, 62, 90, 60, 61, 69, 49, 58, 51, 80, 52, 76, 73, 56, 83, 59, 100, 66, 82, 62, 61, 54, 108, 53, 73, 42, 52, 65, 56, 75, 59, 59, 77, 107, 77, 74, 63, 56, 70, 67, 97, 65, 77, 82, 58, 68, 77, 119, 86, 73, 55, 69, 60, 70, 62, 54, 49, 48, 49, 76, 46, 54, 47, 63, 66, 78, 66, 63, 61, 78, 65, 67, 67, 86, 57, 80, 59, 55, 65, 61, 56, 69, 65, 81, 56, 66, 82, 44, 65, 51, 59, 83, 68, 71, 61, 46, 51, 60, 56, 56, 54, 51, 84, 84, 55, 72, 61, 57, 58, 32, 66, 55, 61, 64, 59, 49, 80, 70, 68, 81, 66, 62, 78, 64, 85, 63, 76, 47, 71, 66, 78, 75, 78, 48, 89, 69, 56, 76, 55, 65, 90, 61, 52, 69, 50, 144, 86, 59, 75, 66, 62, 68, 44, 69, 76, 77, 68, 60, 71, 63, 90, 87, 77, 63, 60, 66, 52, 77, 68, 66, 78, 50, 81, 41, 58, 54, 77, 56, 51, 97, 65, 71, 74, 94, 55, 69, 58, 54, 67, 65, 60, 77, 70, 72, 52, 80, 59, 66, 53, 59, 80, 64, 31, 69, 58, 59, 74, 57, 78, 69, 74, 60, 86, 49, 70, 64, 63, 66, 65, 57, 112, 74, 51, 59, 73, 74, 50, 58, 62, 59, 63, 67, 59, 101, 65, 65, 61, 74, 83, 57, 57, 82, 45, 65, 54, 85, 87, 82, 74, 71, 68, 40, 63, 55, 41, 61, 53, 49, 71, 75, 74, 52, 54, 30, 67, 53, 68, 82, 65, 76, 58, 59, 85, 65, 71, 63, 51, 56, 60, 68, 66, 74, 56, 82, 45, 52, 76, 52, 55, 60, 57, 75, 74, 48, 62, 52, 53, 59, 53, 59, 69, 65, 48, 86, 64, 49, 82, 58, 56, 52, 66, 58, 58, 70, 66, 64, 71, 49, 62, 81, 59, 64, 65, 69, 68, 50, 69, 80, 66, 61, 63, 65, 57, 69, 65, 55, 78, 62, 77, 67, 67, 48, 57, 79, 69, 57, 43, 57, 67, 60, 54, 99, 67, 54, 51, 73, 63, 83, 75, 70, 56, 112, 66, 63, 62, 57, 71, 77, 53, 57, 67, 76, 93, 102, 61, 50, 52, 65, 81, 66, 63, 68, 53, 49, 71, 71, 55, 48, 51, 70, 74, 52, 66, 87, 71, 47, 68, 56, 61, 55, 69, 74, 60, 52, 66, 85, 70, 88, 55, 44, 88, 77, 56, 62, 76, 68, 69, 68, 53, 63, 60, 72, 58, 62, 67, 65, 80, 52, 71, 81, 69, 74, 69, 83, 67, 55, 63, 65, 43, 72, 49, 66, 46, 67, 63, 49, 69, 66, 53, 69, 69, 67, 61, 62, 82, 53, 67, 73, 51, 63, 56, 73, 58, 62, 70, 72, 55, 71, 47, 52, 75, 69, 72, 40, 94, 88, 54, 58, 65, 69, 61, 54, 92, 79, 92, 66, 72, 56, 64, 44, 52, 38, 59, 56, 61, 58, 64, 67, 62, 77, 73, 49, 70, 73, 81, 62, 67, 59, 44, 74, 60, 70, 60, 65, 74, 61, 68, 61, 47, 76, 55, 57, 72, 49, 58, 71, 81, 78, 46, 65, 65, 63, 80, 60, 55, 76, 64, 80, 65, 61, 52, 66, 45, 86, 57, 77, 57, 71, 86, 57, 62, 66, 68, 88, 64, 94, 69, 44, 57, 81, 95, 85, 80, 66, 57, 71, 65, 94, 56, 69, 78, 62, 50, 74, 54, 67, 77, 67, 51, 76, 33, 70, 92, 80, 72, 73, 65, 54, 76, 88, 78, 49, 50, 104, 70, 80, 73, 54, 59, 73, 48, 75, 103, 49, 59, 72, 65, 64, 86, 89, 63, 68, 77, 47, 72, 51, 68, 54, 41, 54, 63, 96, 54, 75, 68, 51, 60, 64, 87, 135, 66, 47, 48, 73, 85, 56, 52, 56, 69, 73, 65, 72, 56, 60, 85, 77, 65, 81, 136, 54, 69, 67, 61, 33, 68, 46, 75, 86, 52, 69, 62, 47, 48, 77, 47, 83, 121, 49, 55, 59, 71, 69, 66, 75, 77, 62, 72, 57, 143, 63, 69, 71, 79, 76, 62, 41, 58, 65, 45, 55, 60, 91, 56, 62, 48, 70, 77, 52, 71, 75, 62, 88, 64, 69, 55, 60, 77, 65, 56, 56, 79, 48, 71, 50, 57, 60, 59, 72, 63, 73, 59, 56, 73, 65, 69, 85, 61, 67, 35, 75, 72, 59, 66, 52, 29, 63, 99, 51, 83, 81, 66, 59, 63, 65, 69, 37, 73, 74, 70, 55, 61, 60, 72, 69, 84, 41, 41, 70, 61, 57, 61, 86, 68, 96, 43, 59, 56, 66, 72, 61, 60, 80, 55, 68, 62, 80, 57, 67, 80, 63, 52, 77, 91, 57, 51, 67, 70, 68, 79, 58, 72, 58, 76, 69, 55, 71, 57, 47, 74, 79, 65, 50, 63, 70, 60, 67, 51, 93, 79, 68, 66, 61, 72, 61, 67, 75, 74, 59, 65, 70, 54, 60, 62, 76, 65, 57, 72, 74, 52, 71, 64, 65, 42, 81, 73, 59, 49, 67, 76, 64, 58, 90, 77, 50, 57, 69, 66, 76, 60, 69, 75, 53, 69, 49, 56, 63, 71, 58, 53, 75, 84, 56, 66, 60, 66, 61, 74, 43, 57, 45, 60, 52, 81, 66, 67, 118, 57, 65, 65, 67, 92, 64, 59, 53, 78, 57, 68, 60, 58, 67, 58, 65, 54, 54, 55, 89, 51, 57, 57, 46, 75, 75, 70, 64, 62, 84, 49, 60, 80, 57, 61, 73, 97, 70, 93, 73, 61, 63, 60, 50, 80, 61, 52, 55, 67, 61, 63, 59, 56, 61, 62, 56, 63, 64, 58, 66, 68, 57, 100, 53, 61, 96, 65, 59, 71, 68, 73, 65, 64, 52, 51, 56, 56, 60, 52, 62, 63, 61, 53, 77, 62, 67, 68, 71, 76, 53, 58, 62, 57, 70, 65, 80, 87, 71, 54, 63, 77, 50, 68, 47, 53, 86, 49, 51, 63, 60, 52, 61, 83, 70, 80, 76, 50, 54, 62, 78, 59, 62, 63, 63, 52, 68, 56, 54, 52, 49, 75, 62, 72, 62, 63, 47, 50, 63, 59, 53, 61, 73, 53, 48, 63, 63, 57, 70, 78, 67, 79, 100, 52, 76, 54, 49, 59, 63, 68, 82, 67, 78, 50, 77, 51, 62, 79, 51, 57, 127, 78, 46, 54, 47, 45, 89, 56, 56, 69, 53, 82, 114, 75, 57, 68, 60, 63, 61, 70, 78, 60, 54, 50, 63, 72, 60, 56, 58, 83, 57, 81, 59, 68, 55, 62, 57, 69, 88, 72, 63, 65, 83, 69, 73, 58, 88, 54, 64, 54, 83, 65, 69, 61, 57, 56, 63, 68, 56, 60, 67, 69, 60, 74, 49, 70, 70, 78, 62, 50, 88, 62, 58, 42, 69, 81, 68, 102, 80, 69, 76, 73, 64, 70, 95, 59, 59, 64, 73, 63, 58, 78, 70, 64, 81, 70, 68, 47, 81, 63, 54, 99, 93, 68, 63, 56, 64, 59, 72, 81, 47, 105, 53, 74, 75, 69, 71, 91, 60, 88, 70, 57, 63, 75, 67, 74, 57, 62, 61, 54, 62, 61, 68, 62, 50, 59, 74, 64, 78, 61, 62, 65, 51, 78, 66, 52, 72, 66, 65, 65, 55, 54, 48, 71, 65, 84, 69, 65, 53, 64, 66, 48, 76, 67, 79, 67, 56, 67, 80, 69, 63, 57, 69, 79, 63, 60, 57, 57, 73, 86, 70, 74, 71, 60, 54, 75, 60, 71, 54, 68, 59, 71, 70, 77, 47, 75, 56, 50, 63, 66, 59, 43, 68, 57, 73, 62, 65, 64, 72, 61, 59, 66, 68, 78, 50, 62, 64, 54, 59, 75, 50, 66, 82, 84, 83, 61, 60, 53, 64, 49, 59, 52, 63, 73, 72, 62, 60, 80, 66, 63, 69, 64, 69, 78, 66, 62, 77, 61, 64, 67, 66, 76, 59, 56, 66, 74, 72, 49, 64, 70, 71, 49, 56, 56, 74, 80, 71, 60, 59, 61, 64, 55, 68, 69, 61, 95, 60, 69, 62, 55, 62, 64, 57, 83, 65, 81, 65, 69, 55, 54, 66, 54, 92, 59, 63, 55, 64, 56, 59, 61, 50, 47, 66, 79, 59, 43, 67, 75, 72, 52, 77, 52, 68, 92, 56, 64, 50, 55, 61, 65, 63, 54, 57, 61, 122, 58, 54, 65, 60, 68, 87, 60, 59, 54, 60, 99, 52, 73, 72, 79, 65, 68, 59, 82, 94, 69, 52, 67, 71, 78, 59, 59, 68, 76, 69, 75, 80, 77, 74, 90, 65, 78, 87, 64, 68, 85, 59, 93, 47, 57, 58, 65, 84, 72, 56, 76, 61, 51, 59, 39, 58, 57, 57, 71, 69, 63, 67, 69, 105, 83, 62, 65, 62, 62, 71, 66, 65, 62, 45, 56, 41, 58, 73, 73, 77, 63, 64, 62, 57, 54, 75, 40, 69, 70, 43, 65, 60, 61, 56, 69, 58, 66, 67, 55, 49, 78, 54, 57, 66, 46, 60, 89, 64, 81, 55, 55, 57, 55, 41, 65, 71, 69, 49, 80, 58, 51, 61, 96, 65, 82, 52, 61, 52, 65, 63, 68, 51, 56, 71, 90, 66, 66, 64, 70, 80, 57, 61, 67, 59, 61, 49, 62, 68, 70, 83, 91, 68, 57, 43, 63, 100, 68, 54, 68, 61, 67, 89, 65, 82, 54, 70, 58, 60, 67, 55, 47, 57, 61, 39, 62, 69, 63, 42, 79, 59, 76, 103, 57, 75, 68, 56, 52, 78, 50, 83, 109, 87, 58, 64, 85, 86, 38, 66, 71, 53, 55, 55, 66, 79, 66, 80, 85, 59, 61, 57, 57, 78, 65, 66, 57, 59, 67, 80, 67, 41, 51, 49, 52, 55, 49, 64, 70, 63, 79, 58, 60, 52, 67, 78, 83, 56, 59, 66, 52, 56, 66, 56, 65, 52, 79, 60, 69, 51, 52, 70, 52, 80, 91, 83, 102, 76, 50, 77, 44, 53, 72, 47, 58, 67, 59, 72, 64, 58, 99, 84, 58, 55, 56, 111, 62, 93, 78, 52, 62, 52, 75, 65, 76, 70, 98, 75, 73, 57, 55, 72, 67, 47, 100, 54, 72, 83, 62, 66, 58, 63, 70, 48, 54, 47, 86, 63, 62, 54, 75, 69, 67, 59, 62, 81, 84, 62, 57, 75, 60, 68, 60, 81, 64, 59, 67, 52, 130, 63, 55, 51, 85, 78, 69, 79, 68, 62, 89, 55, 82, 61, 79, 77, 69, 58, 61, 82, 69, 66, 85, 69, 55, 63, 61, 46, 63, 60, 67, 92, 72, 64, 40, 76, 68, 62, 91, 79, 57, 53, 64, 61, 70, 85, 73, 59, 58, 73, 72, 75, 71, 79, 68, 84, 89, 89, 65, 58, 57, 45, 64, 74, 64, 52, 78, 61, 56, 64, 66, 48, 39, 76, 74, 59, 60, 79, 78, 66, 40, 68, 75, 69, 63, 61, 70, 76, 62, 53, 79, 63, 62, 58, 65, 72, 77, 80, 75, 73, 59, 78, 54, 62, 61, 60, 58, 60, 58, 64, 59, 65, 62, 67, 92, 75, 145, 69, 79, 56, 68, 48, 70, 69, 79, 60, 51, 59, 60, 56, 58, 61, 66, 64, 60, 66, 65, 51, 42, 97, 57, 52, 54, 79, 54, 63, 71, 52, 68, 59, 64, 63, 88, 59, 55, 66, 63, 56, 57, 61, 94, 65, 62, 75, 66, 65, 71, 57, 61, 65, 51, 56, 68, 67, 99, 70, 84, 51, 50, 55, 78, 63, 63, 68, 74, 69, 62, 84, 57, 60, 56, 58, 63, 63, 55, 86, 62, 69, 49, 67, 84, 62, 77, 80, 65, 80, 57, 88, 67, 79, 75, 62, 59, 66, 59, 114, 66, 75, 45, 67, 94, 50, 53, 42, 68, 69, 67, 88, 72, 71, 74, 64, 59, 59, 58, 89, 60, 63, 40, 72, 69, 58, 83, 70, 96, 73, 69, 70, 82, 61, 66, 109, 73, 61, 97, 75, 61, 70, 78, 69, 67, 81, 86, 64, 86, 60, 58, 62, 53, 60, 56, 75, 71, 90, 60, 72, 60, 67, 54, 55, 55, 79, 69, 54, 80, 73, 42, 69, 59, 72, 65, 67, 93, 57, 61, 61, 50, 108, 66, 68, 60, 60, 61, 63, 79, 77, 59, 71, 59, 70, 55, 62, 77, 112, 68, 70, 78, 62, 56, 58, 61, 39, 124, 60, 59, 77, 71, 70, 100, 60, 60, 46, 72, 57, 55, 69, 57, 72, 55, 63, 45, 59, 64, 61, 50, 62, 49, 57, 138, 55, 53, 85, 79, 58, 69, 57, 70, 65, 67, 69, 65, 51, 70, 79, 67, 84, 97, 83, 43, 57, 61, 70, 57, 57, 68, 40, 56, 72, 54, 61, 48, 70, 96, 93, 69, 72, 68, 79, 65, 55, 68, 64, 76, 60, 57, 55, 58, 56, 59, 69, 96, 63, 77, 63, 84, 58, 61, 63, 66, 67, 59, 59, 53, 96, 60, 64, 72, 53, 54, 51, 70, 80, 53, 69, 59, 56, 65, 49, 47, 55, 79, 61, 55, 55, 71, 74, 47, 72, 56, 67, 91, 51, 61, 80, 44, 76, 62, 46, 52, 66, 61, 78, 73, 79, 97, 38, 73, 60, 62, 73, 75, 59, 66, 65, 84, 109, 75, 47, 55, 50, 61, 53, 65, 52, 69, 65, 103, 70, 84, 57, 70, 58, 69, 69, 54, 66, 63, 83, 57, 67, 59, 70, 55, 64, 78, 74, 76, 53, 60, 55, 57, 60, 90, 89, 52, 73, 57, 67, 67, 71, 63, 58, 62, 59, 85, 55, 59, 63, 68, 56, 63, 67, 85, 51, 73, 51, 55, 61, 61, 78, 67, 66, 57, 55, 89, 55, 68, 70, 70, 65, 66, 96, 74, 61, 70, 64, 68, 60, 71, 60, 102, 92, 91, 60, 65, 75, 48, 61, 48, 54, 69, 66, 69, 84, 69, 59, 46, 68, 85, 66, 55, 92, 80, 76, 72, 66, 54, 55, 57, 59, 64, 65, 69, 68, 53, 51, 51, 48, 75, 72, 67, 37, 57, 73, 53, 60, 68, 61, 55, 83, 78, 68, 54, 58, 63, 63, 58, 66, 61, 65, 66, 69, 60, 90, 52, 60, 77, 70, 58, 55, 56, 46, 63, 69, 66, 75, 58, 74, 54, 63, 94, 58, 70, 59, 50, 55, 67, 77, 58, 84, 65, 61, 52, 64, 70, 69, 54, 54, 59, 69, 61, 61, 57, 69, 53, 57, 58, 101, 72, 66, 76, 113, 55, 64, 61, 65, 67, 61, 112, 77, 71, 78, 59, 69, 82, 75, 78, 41, 73, 58, 71, 76, 57, 69, 33, 63, 60, 58, 58, 54, 70, 65, 68, 75, 69, 54, 53, 87, 57, 52, 63, 62, 81, 69, 70, 86, 68, 67, 68, 57, 63, 57, 64, 79, 71, 64, 72, 60, 48, 78, 85, 66, 64, 70, 65, 82, 66, 78, 44, 52, 56, 72, 60, 71, 52, 68, 65, 51, 42, 52, 69, 62, 65, 53, 65, 94, 66, 70, 55, 73, 47, 45, 88, 60, 68, 62, 47, 83, 79, 60, 64, 61, 75, 62, 72, 63, 65, 68, 69, 71, 56, 85, 64, 88, 80, 61, 63, 70, 68, 117, 45, 87, 84, 70, 87, 61, 53, 46, 67, 74, 54, 79, 60, 58, 46, 70, 55, 73, 71, 59, 75, 75, 73, 72, 76, 53, 41, 53, 71, 63, 41, 81, 69, 62, 55, 45, 61, 54, 51, 61, 84, 75, 66, 87, 52, 51, 57, 64, 50, 57, 71, 84, 61, 82, 65, 57, 63, 53, 67, 54, 60, 82, 89, 60, 59, 56, 71, 67, 62, 59, 62, 63, 63, 64, 67, 52, 50, 66, 51, 70, 93, 98, 45, 66, 64, 55, 73, 53, 54, 66, 51, 73, 59, 61, 62, 55, 73, 69, 63, 58, 72, 59, 64, 73, 81, 66, 62, 68, 53, 37, 64, 71, 74, 57, 70, 49, 66, 60, 62, 74, 76, 61, 76, 70, 49, 101, 65, 65, 68, 62, 83, 61, 73, 67, 82, 100, 60, 64, 82, 59, 73, 68, 58, 56, 63, 69, 88, 65, 84, 60, 63, 62, 54, 68, 56, 79, 58, 55, 37, 61, 44, 57, 55, 97, 66, 55, 70, 82, 74, 72, 54, 57, 72, 69, 70, 52, 79, 81, 88, 78, 72, 65, 52, 49, 68, 58, 56, 57, 79, 58, 48, 65, 75, 62, 80, 75, 53, 73, 51, 64, 65, 54, 74, 55, 111, 59, 67, 56, 59, 55, 87, 65, 86, 68, 78, 55, 78, 63, 75, 108, 68, 67, 76, 66, 51, 58, 53, 55, 66, 61, 77, 66, 81, 45, 68, 47, 68, 76, 86, 67, 60, 53, 56, 41, 74, 63, 65, 61, 70, 70, 60, 43, 46, 60, 55, 60, 76, 50, 95, 61, 54, 66, 61, 73, 77, 52, 65, 59, 75, 54, 64, 70, 48, 64, 72, 76, 61, 71, 65, 59, 89, 61, 80, 56, 65, 47, 69, 55, 56, 49, 46, 65, 66, 88, 68, 44, 73, 52, 54, 86, 74, 61, 68, 48, 75, 60, 62, 53, 77, 65, 58, 67, 54, 62, 53, 89, 57, 52, 62, 53, 63, 59, 61, 70, 72, 71, 122, 78, 71, 53, 81, 47, 58, 43, 85, 61, 70, 86, 90, 67, 76, 35, 71, 50, 70, 65, 70, 56, 58, 48, 62, 63, 67, 59, 62, 60, 40, 61, 66, 46, 69, 122, 59, 78, 68, 63, 53, 78, 56, 75, 63, 53, 74, 87, 58, 44, 63, 70, 46, 39, 59, 84, 63, 73, 89, 72, 67, 50, 88, 38, 58, 88, 64, 67, 51, 58, 61, 54, 69, 50, 53, 57, 75, 70, 73, 57, 56, 53, 56, 96, 69, 89, 81, 50, 68, 55, 52, 62, 62, 89, 56, 84, 65, 65, 30, 64, 46, 48, 49, 55, 58, 49, 58, 60, 86, 48, 77, 54, 67, 63, 62, 67, 47, 68, 62, 72, 58, 59, 74, 54, 63, 82, 53, 58, 68, 63, 61, 75, 77, 61, 77, 101, 72, 50, 42, 58, 70, 56, 109, 85, 87, 96, 58, 47, 65, 62, 77, 63, 59, 90, 72, 43, 76, 87, 38, 36, 53, 43, 65, 65, 64, 56, 73, 49, 58, 68, 76, 72, 60, 83, 66, 81, 34, 74, 60, 62, 55, 59, 68, 53, 83, 74, 50, 65, 58, 71, 52, 68, 60, 71, 74, 62, 30, 59, 56, 66, 75, 71, 45, 64, 69, 52, 67, 85, 68, 64, 66, 46, 62, 48, 63, 76, 59, 75, 93, 79, 53, 66, 52, 66, 75, 69, 64, 41, 62, 63, 58, 60, 64, 54, 97, 77, 52, 51, 78, 58, 74, 49, 67, 66, 57, 89, 81, 70, 70, 49, 61, 73, 64, 79, 42, 91, 57, 89, 66, 63, 69, 63, 64, 109, 62, 74, 101, 46, 64, 59, 66, 55, 56, 56, 73, 73, 73, 68, 73, 52, 65, 79, 60, 43, 77, 67, 96, 74, 73, 84, 52, 50, 79, 80, 54, 58, 54, 64, 61, 49, 65, 60, 38, 66, 114, 146, 62, 66, 71, 72, 48, 88, 81, 55, 80, 70, 42, 56, 62, 73, 71, 65, 70, 52, 58, 59, 56, 78, 64, 56, 42, 78, 63, 60, 63, 60, 76, 103, 89, 76, 44, 77, 56, 59, 72, 48, 80, 64, 112, 52, 51, 72, 74, 53, 108, 70, 55, 89, 97, 75, 53, 42, 63, 70, 66, 62, 64, 62, 57, 74, 75, 65, 58, 52, 66, 71, 63, 92, 68, 55, 63, 60, 63, 63, 60, 70, 61, 144, 75, 60, 97, 67, 48, 49, 86, 80, 75, 65, 63, 80, 52, 68, 81, 56, 76, 69, 59, 62, 71, 66, 77, 52, 67, 74, 67, 46, 53, 52, 75, 54, 62, 71, 51, 74, 40, 59, 47, 61, 74, 79, 103, 41, 70, 59, 84, 75, 64, 59, 69, 64, 52, 63, 68, 94, 70, 76, 89, 78, 75, 53, 93, 57, 77, 71, 62, 85, 50, 69, 52, 62, 58, 56, 65, 65, 68, 58, 54, 137, 80, 51, 75, 61, 48, 57, 69, 63, 44, 60, 54, 107, 71, 66, 69, 52, 79, 63, 63, 76, 48, 57, 78, 68, 81, 57, 66, 66, 42, 62, 54, 54, 61, 96, 69, 100, 79, 87, 66, 71, 59, 64, 89, 59, 71, 91, 55, 52, 87, 79, 43, 65, 60, 57, 53, 60, 69, 63, 74, 93, 78, 57, 58, 54, 52, 55, 64, 58, 68, 59, 78, 76, 66, 75, 63, 59, 52, 69, 82, 59, 32, 56, 101, 90, 58, 58, 51, 65, 66, 53, 71, 40, 76, 53, 73, 48, 54, 91, 63, 50, 61, 48, 71, 46, 73, 65, 63, 60, 60, 110, 53, 85, 72, 58, 52, 58, 58, 60, 57, 62, 73, 80, 74, 71, 62, 50, 61, 86, 53, 85, 65, 73, 61, 54, 65, 58, 58, 63, 55, 112, 51, 78, 59, 67, 72, 46, 73, 64, 76, 41, 62, 65, 73, 56, 43, 64, 60, 94, 53, 57, 39, 64, 89, 55, 66, 39, 53, 65, 70, 51, 68, 60, 64, 76, 61, 50, 52, 49, 80, 80, 71, 44, 47, 68, 72, 59, 50, 60, 78, 58, 71, 70, 67, 62, 62, 73, 71, 39, 42, 65, 73, 60, 62, 89, 136, 62, 65, 60, 62, 62, 42, 57, 72, 75, 61, 54, 57, 69, 55, 69, 55, 76, 69, 46, 77, 70, 59, 44, 53, 62, 54, 61, 80, 56, 59, 80, 59, 71, 75, 60, 85, 71, 47, 86, 65, 63, 36, 75, 90, 50, 86, 64, 81, 69, 69, 63, 64, 56, 56, 84, 98, 70, 45, 44, 89, 61, 67, 86, 76, 59, 80, 54, 53, 79, 86, 73, 76, 55, 59, 73, 66, 55, 65, 68, 76, 50, 97, 64, 57, 69, 73, 59, 91, 60, 105, 69, 77, 42, 81, 63, 57, 79, 91, 66, 54, 50, 50, 59, 43, 62, 71, 58, 65, 78, 65, 64, 63, 64, 55, 85, 79, 74, 53, 70, 59, 60, 85, 61, 37, 37, 88, 64, 64, 66, 55, 68, 72, 76, 46, 67, 65, 57, 64, 63, 54, 92, 61, 59, 58, 67, 97, 75, 70, 43, 69, 59, 77, 81, 59, 51, 100, 73, 68, 65, 74, 53, 58, 64, 64, 58, 81, 64, 98, 51, 54, 66, 44, 60, 51, 51, 58, 122, 57, 50, 82, 68, 51, 63, 93, 82, 76, 60, 80, 65, 81, 62, 73, 60, 57, 73, 67, 57, 56, 95, 74, 56, 49, 67, 47, 86, 62, 66, 53, 66, 85, 58, 56, 49, 62, 45, 66, 68, 60, 82, 51, 83, 34, 54, 63, 59, 46, 67, 47, 56, 102, 62, 86, 84, 69, 63, 69, 94, 87, 64, 59, 89, 77, 92, 60, 82, 68, 64, 87, 59, 89, 61, 60, 66, 67, 58, 79, 79, 60, 77, 80, 91, 55, 58, 73, 74, 77, 78, 68, 60, 54, 83, 68, 60, 62, 52, 58, 57, 73, 139, 72, 77, 61, 48, 86, 53, 73, 64, 87, 62, 75, 74, 66, 55, 78, 66, 99, 71, 66, 44, 76, 58, 59, 62, 98, 71, 81, 73, 95, 46, 55, 78, 60, 58, 65, 57, 58, 75, 65, 66, 108, 70, 77, 49, 55, 46, 72, 64, 57, 56, 42, 72, 66, 65, 55, 80, 47, 66, 49, 70, 67, 74, 54, 59, 75, 80, 67, 69, 89, 72, 64, 64, 108, 67, 56, 52, 50, 75, 74, 73, 94, 60, 39, 67, 46, 66, 67, 59, 61, 98, 79, 53, 66, 64, 58, 57, 79, 52, 47, 73, 54, 58, 56, 76, 56, 47, 66, 88, 49, 61, 67, 50, 81, 56, 77, 55, 82, 77, 75, 93, 64, 72, 61, 72, 50, 89, 83, 52, 65, 84, 58, 55, 68, 53, 63, 51, 92, 56, 65, 71, 74, 105, 87, 65, 61, 113, 64, 57, 60, 57, 51, 68, 82, 52, 64, 47, 59, 77, 57, 73, 77, 52, 64, 60, 50, 65, 39, 71, 50, 53, 55, 61, 44, 83, 72, 97, 63, 55, 106, 66, 81, 51, 69, 45, 79, 77, 56, 74, 64, 92, 64, 59, 84, 53, 68, 65, 66, 81, 97, 75, 61, 58, 79, 64, 83, 68, 51, 55, 69, 62, 67, 52, 64, 91, 52, 67, 73, 58, 40, 70, 73, 46, 64, 55, 72, 65, 69, 97, 58, 67, 51, 67, 80, 58, 47, 72, 63, 60, 62, 54, 78, 55, 68, 48, 63, 125, 102, 58, 48, 65, 76, 56, 57, 53, 72, 57, 58, 63, 59, 68, 50, 63, 48, 80, 45, 58, 67, 38, 72, 50, 52, 51, 57, 65, 57, 81, 64, 49, 45, 61, 71, 56, 73, 121, 91, 69, 87, 68, 52, 62, 46, 47, 67, 57, 65, 67, 60, 74, 80, 51, 48, 54, 55, 60, 56, 61, 53, 84, 47, 68, 46, 60, 75, 46, 73, 61, 51, 67, 63, 55, 66, 68, 71, 111, 57, 82, 73, 71, 59, 66, 67, 53, 60, 69, 67, 88, 71, 70, 76, 60, 69, 61, 48, 65, 58, 53, 61, 66, 70, 46, 71, 52, 60, 64, 49, 79, 70, 71, 80, 37, 61, 87, 67, 69, 75, 71, 67, 61, 58, 52, 48, 60, 75, 63, 50, 64, 95, 63, 63, 55, 55, 71, 44, 63, 73, 73, 64, 62, 59, 56, 67, 55, 62, 53, 106, 50, 62, 76, 63, 74, 41, 55, 50, 65, 46, 67, 55, 84, 65, 61, 62, 88, 75, 79, 85, 68, 42, 68, 66, 72, 61, 80, 59, 76, 75, 69, 66, 67, 74, 66, 57, 60, 62, 65, 60, 62, 74, 44, 84, 57, 48, 52, 67, 85, 51, 74, 76, 93, 62, 62, 60, 61, 103, 59, 56, 63, 58, 75, 69, 58, 70, 91, 73, 73, 72, 70, 58, 106, 48, 60, 66, 56, 57, 59, 82, 66, 54, 69, 45, 62, 68, 65, 42, 61, 49, 62, 60, 69, 69, 96, 70, 38, 68, 65, 95, 65, 38, 58, 60, 80, 67, 67, 95, 51, 75, 40, 61, 68, 78, 83, 64, 62, 74, 53, 60, 42, 54, 54, 72, 98, 60, 68, 71, 58, 66, 79, 71, 74, 82, 73, 65, 83, 74, 56, 56, 63, 118, 86, 66, 61, 52, 78, 47, 147, 74, 59, 53, 84, 71, 76, 63, 63, 63, 61, 51, 47, 77, 59, 56, 54, 63, 49, 52, 43, 61, 71, 67, 62, 64, 62, 103, 59, 83, 62, 68, 60, 62, 53, 71, 92, 66, 56, 66, 74, 67, 124, 51, 84, 71, 61, 66, 79, 62, 62, 60, 83, 70, 57, 96, 84, 58, 99, 62, 64, 70, 59, 46, 60, 79, 56, 85, 67, 60, 67, 90, 71, 38, 69, 54, 54, 64, 61, 61, 60, 56, 65, 80, 67, 47, 63, 74, 52, 58, 42, 49, 69, 68, 69, 99, 67, 69, 61, 59, 65, 58, 64, 56, 61, 58, 59, 86, 68, 78, 60, 54, 64, 39, 63, 54, 64, 67, 61, 69, 62, 69, 73, 58, 79, 78, 63, 49, 73, 65, 63, 58, 63, 47, 79, 73, 60, 87, 69, 61, 49, 49, 76, 87, 76, 56, 75, 77, 52, 42, 56, 77, 77, 71, 63, 42, 55, 73, 72, 62, 85, 65, 66, 52, 59, 63, 49, 53, 69, 75, 71, 73, 57, 63, 73, 71, 56, 56, 59, 93, 69, 64, 52, 64, 59, 53, 89, 65, 76, 65, 63, 78, 67, 68, 64, 63, 80, 50, 64, 61, 86, 53, 50, 75, 63, 52, 61, 61, 60, 51, 70, 63, 62, 44, 69, 59, 56, 58, 51, 48, 74, 64, 107, 64, 69, 56, 49, 49, 69, 109, 93, 58, 70, 56, 83, 54, 52, 70, 94, 81, 70, 82, 77, 72, 64, 62, 57, 49, 56, 80, 71, 56, 49, 59, 78, 80, 70, 65, 142, 74, 51, 51, 144, 57, 72, 84, 72, 85, 55, 58, 62, 58, 60, 79, 59, 64, 67, 63, 47, 56, 88, 45, 64, 61, 50, 89, 62, 75, 66, 73, 59, 57, 60, 78, 66, 109, 58, 70, 95, 50, 47, 58, 68, 57, 52, 40, 36, 64, 77, 54, 43, 71, 62, 68, 56, 99, 45, 51, 81, 60, 75, 55, 45, 100, 78, 45, 48, 97, 91, 58, 55, 60, 80, 56, 45, 58, 48, 41, 38, 68, 69, 66, 71, 66, 56, 75, 77, 57, 59, 47, 53, 55, 83, 55, 49, 71, 88, 78, 65, 52, 59, 55, 69, 66, 55, 75, 62, 57, 62, 53, 60, 62, 71, 71, 58, 56, 123, 93, 58, 43, 54, 65, 73, 56, 88, 65, 51, 58, 67, 66, 69, 53, 60, 92, 55, 60, 73, 70, 70, 47, 60, 63, 60, 81, 61, 92, 76, 54, 59, 87, 67, 58, 72, 72, 63, 66, 68, 63, 71, 74, 79, 82, 55, 58, 121, 82, 72, 72, 65, 63, 60, 72, 57, 70, 115, 66, 64, 62, 50, 74, 63, 71, 68, 68, 51, 59, 62, 58, 109, 87, 72, 66, 71, 55, 72, 54, 71, 64, 59, 42, 74, 50, 73, 111, 49, 61, 84, 75, 55, 72, 57, 51, 58, 58, 63, 60, 52, 58, 54, 71, 70, 61, 76, 69, 64, 74, 47, 51, 60, 66, 57, 79, 41, 69, 57, 85, 73, 83, 68, 68, 73, 96, 50, 81, 58, 59, 74, 64, 83, 61, 70, 55, 51, 61, 84, 51, 71, 77, 81, 89, 73, 90, 49, 48, 63, 89, 66, 68, 71, 76, 69, 78, 73, 61, 71, 80, 44, 59, 66, 98, 63, 66, 73, 60, 70, 53, 58, 63, 65, 63, 128, 51, 62, 67, 68, 70, 77, 62, 54, 51, 46, 72, 56, 46, 64, 71, 59, 218, 74, 80, 68, 88, 124, 72, 65, 56, 59, 54, 66, 64, 78, 85, 52, 43, 70, 49, 53, 82, 84, 56, 66, 40, 68, 66, 60, 53, 57, 95, 60, 105, 58, 57, 57, 59, 63, 57, 37, 57, 151, 70, 54, 70, 73, 46, 48, 74, 61, 61, 66, 72, 54, 39, 58, 134, 64, 55, 85, 68, 53, 74, 66, 54, 72, 52, 96, 71, 67, 97, 69, 61, 61, 67, 56, 68, 65, 72, 70, 69, 45, 76, 53, 72, 86, 81, 99, 58, 86, 59, 72, 84, 65, 90, 74, 39, 60, 75, 55, 78, 50, 64, 55, 67, 52, 88, 64, 62, 67, 47, 50, 59, 67, 80, 56, 71, 75, 65, 78, 88, 60, 61, 94, 62, 52, 48, 72, 56, 97, 63, 69, 54, 49, 62, 77, 59, 86, 49, 81, 64, 61, 56, 51, 69, 50, 84, 71, 72, 64, 75, 53, 50, 63, 57, 62, 63, 91, 47, 53, 72, 73, 56, 60, 70, 48, 77, 71, 73, 58, 40, 61, 66, 74, 69, 65, 61, 70, 61, 70, 93, 50, 67, 48, 68, 63, 47, 86, 61, 91, 55, 83, 122, 41, 72, 85, 91, 50, 69, 57, 63, 44, 47, 94, 67, 67, 70, 78, 68, 68, 52, 60, 66, 87, 65, 87, 67, 59, 81, 67, 64, 80, 71, 58, 63, 58, 75, 70, 96, 63, 55, 64, 80, 66, 65, 83, 74, 66, 57, 52, 52, 59, 88, 36, 59, 81, 62, 71, 62, 85, 50, 68, 82, 40, 49, 53, 55, 63, 49, 56, 94, 63, 67, 77, 71, 53, 77, 67, 64, 75, 51, 46, 49, 65, 80, 60, 60, 58, 62, 89, 46, 43, 57, 64, 72, 58, 59, 102, 58, 67, 71, 127, 54, 61, 94, 62, 50, 52, 53, 50, 82, 76, 76, 76, 89, 50, 59, 59, 82, 61, 66, 60, 60, 66, 77, 67, 34, 73, 37, 91, 53, 75, 79, 73, 62, 61, 51, 69, 62, 42, 49, 59, 62, 79, 99, 54, 51, 61, 85, 84, 58, 63, 75, 58, 68, 71, 66, 71, 67, 60, 102, 49, 78, 60, 66, 72, 59, 73, 70, 84, 64, 67, 52, 89, 61, 62, 74, 53, 54, 55, 73, 56, 52, 81, 99, 68, 77, 59, 84, 92, 69, 52, 61, 85, 49, 62, 69, 69, 74, 81, 60, 70, 43, 50, 77, 80, 63, 68, 54, 60, 58, 66, 49, 67, 86, 76, 66, 73, 71, 55, 81, 84, 39, 46, 71, 56, 43, 70, 69, 76, 57, 77, 67, 57, 62, 53, 54, 60, 63, 71, 62, 68, 76, 80, 64, 54, 75, 72, 61, 51, 79, 51, 78, 56, 55, 59, 68, 58, 64, 102, 66, 80, 49, 57, 66, 71, 76, 64, 82, 42, 63, 60, 63, 50, 71, 69, 39, 77, 90, 56, 90, 49, 48, 69, 89, 62, 62, 59, 70, 76, 96, 50, 61, 87, 69, 80, 57, 75, 50, 86, 68, 60, 77, 67, 116, 73, 60, 85, 50, 62, 61, 70, 87, 82, 62, 71, 56, 63, 50, 61, 58, 70, 71, 91, 48, 56, 88, 48, 61, 72, 72, 53, 44, 74, 57, 48, 91, 71, 68, 60, 52, 75, 74, 64, 55, 71, 55, 56, 66, 55, 94, 54, 33, 70, 82, 68, 66, 46, 48, 63, 52, 59, 50, 64, 71, 60, 53, 62, 71, 55, 54, 83, 59, 67, 85, 84, 62, 57, 67, 63, 92, 62, 87, 51, 50, 56, 59, 69, 57, 59, 49, 50, 46, 94, 46, 60, 96, 75, 83, 57, 63, 68, 70, 60, 47, 78, 70, 60, 42, 62, 49, 69, 66, 60, 63, 66, 82, 77, 63, 58, 67, 59, 48, 56, 73, 61, 47, 48, 55, 61, 92, 95, 61, 81, 62, 61, 35, 111, 71, 58, 47, 78, 82, 54, 60, 60, 77, 66, 70, 56, 62, 73, 57, 72, 57, 55, 65, 65, 111, 100, 72, 82, 64, 70, 60, 71, 62, 53, 77, 69, 81, 91, 53, 42, 71, 56, 51, 61, 85, 81, 73, 57, 109, 58, 77, 44, 64, 61, 83, 70, 48, 80, 53, 70, 56, 35, 67, 63, 71, 64, 75, 75, 60, 50, 67, 49, 66, 61, 50, 52, 83, 49, 47, 37, 63, 82, 44, 85, 52, 81, 71, 96, 72, 31, 104, 90, 41, 68, 79, 74, 73, 78, 49, 57, 82, 67, 57, 68, 64, 63, 64, 63, 52, 48, 69, 77, 93, 91, 64, 75, 67, 65, 83, 56, 102, 73, 68, 81, 69, 50, 56, 70, 69, 62, 65, 64, 70, 45, 56, 56, 56, 58, 60, 82, 72, 62, 67, 56, 46, 56, 62, 56, 53, 91, 69, 60, 57, 66, 63, 59, 68, 83, 55, 63, 56, 64, 61, 54, 63, 58, 58, 59, 67, 50, 73, 51, 87, 63, 77, 75, 86, 65, 66, 82, 46, 61, 59, 52, 61, 65, 78, 59, 89, 60, 68, 67, 50, 65, 70, 81, 60, 68, 49, 61, 77, 67, 67, 44, 70, 64, 68, 55, 58, 67, 133, 55, 51, 65, 48, 61, 61, 64, 69, 72, 44, 52, 57, 37, 81, 69, 82, 67, 65, 137, 53, 47, 71, 86, 61, 50, 52, 70, 52, 70, 64, 53, 69, 79, 81, 52, 45, 53, 48, 64, 62, 85, 58, 61, 75, 46, 50, 61, 97, 67, 72, 69, 71, 87, 69, 62, 64, 49, 42, 92, 52, 73, 101, 61, 52, 56, 58, 100, 78, 54, 67, 41, 81, 59, 77, 67, 55, 57, 69, 50, 59, 73, 68, 59, 63, 37, 48, 64, 60, 43, 36, 82, 79, 66, 70, 55, 70, 59, 74, 49, 89, 85, 58, 82, 77, 53, 73, 62, 86, 57, 65, 77, 62, 62, 75, 55, 69, 54, 55, 50, 58, 63, 73, 63, 56, 68, 68, 65, 63, 55, 88, 64, 60, 88, 70, 43, 56, 63, 68, 82, 78, 53, 82, 76, 66, 82, 74, 101, 63, 70, 86, 64, 46, 60, 42, 65, 55, 55, 81, 56, 80, 69, 65, 54, 67, 61, 58, 60, 67, 71, 73, 85, 82, 65, 96, 42, 81, 67, 93, 102, 54, 56, 58, 65, 79, 69, 65, 55, 49, 54, 53, 55, 68, 55, 60, 60, 58, 74, 54, 84, 49, 85, 67, 59, 45, 61, 71, 74, 63, 62, 80, 87, 75, 101, 64, 61, 49, 58, 57, 86, 62, 73, 58, 85, 74, 42, 64, 62, 86, 52, 66, 107, 49, 53, 61, 44, 45, 51, 90, 61, 53, 64, 66, 51, 68, 64, 73, 53, 74, 73, 50, 88, 41, 54, 88, 73, 52, 62, 58, 77, 61, 74, 77, 50, 77, 82, 66, 62, 80, 73, 54, 59, 57, 67, 82, 70, 54, 37, 82, 67, 79, 48, 64, 50, 91, 66, 50, 78, 59, 44, 77, 65, 58, 70, 50, 70, 54, 70, 55, 47, 76, 54, 52, 80, 90, 75, 47, 81, 72, 60, 75, 64, 62, 105, 61, 58, 74, 63, 107, 78, 65, 57, 42, 53, 57, 81, 72, 91, 35, 51, 61, 87, 64, 68, 58, 63, 71, 49, 55, 62, 95, 58, 57, 68, 65, 51, 59, 67, 75, 59, 80, 59, 60, 63, 61, 60, 38, 67, 53, 45, 64, 81, 75, 66, 52, 65, 57, 45, 55, 63, 86, 62, 56, 63, 76, 53, 80, 60, 60, 66, 77, 56, 94, 70, 67, 72, 54, 52, 71, 63, 60, 61, 50, 71, 56, 75, 58, 59, 49, 76, 61, 72, 56, 64, 85, 60, 43, 55, 85, 83, 46, 72, 67, 69, 53, 51, 54, 67, 122, 56, 46, 72, 82, 58, 52, 61, 48, 70, 54, 54, 46, 59, 49, 59, 65, 76, 69, 81, 71, 55, 61, 50, 71, 83, 56, 63, 70, 71, 63, 64, 76, 59, 84, 70, 79, 70, 72, 70, 53, 53, 48, 62, 71, 63, 63, 61, 66, 52, 45, 72, 67, 58, 53, 71, 65, 69, 73, 59, 69, 61, 81, 167, 53, 68, 55, 68, 62, 69, 53, 57, 70, 62, 63, 80, 73, 75, 74, 63, 74, 72, 65, 68, 74, 68, 45, 116, 48, 73, 70, 77, 74, 62, 67, 79, 68, 62, 60, 63, 55, 51, 68, 73, 66, 59, 85, 76, 61, 88, 99, 85, 75, 54, 95, 67, 71, 89, 66, 50, 39, 64, 76, 77, 72, 54, 45, 74, 47, 110, 54, 124, 73, 69, 74, 80, 60, 63, 68, 88, 82, 48, 72, 52, 59, 115, 88, 56, 63, 96, 62, 103, 75, 47, 58, 70, 48, 57, 54, 53, 57, 71, 88, 47, 59, 58, 54, 72, 47, 62, 52, 86, 76, 57, 62, 64, 110, 64, 78, 66, 46, 64, 45, 77, 55, 57, 65, 59, 69, 85, 82, 69, 60, 80, 59, 72, 87, 65, 84, 67, 55, 48, 58, 51, 72, 61, 60, 80, 63, 72, 93, 59, 79, 83, 61, 57, 70, 50, 55, 75, 60, 63, 74, 74, 49, 84, 79, 52, 65, 69, 57, 62, 53, 55, 63, 63, 47, 79, 61, 49, 66, 53, 66, 63, 60, 63, 62, 45, 49, 72, 47, 64, 78, 78, 59, 59, 74, 40, 59, 81, 56, 86, 50, 49, 103, 73, 95, 83, 64, 67, 49, 54, 65, 48, 133, 66, 80, 74, 81, 56, 57, 60, 76, 56, 82, 96, 61, 67, 116, 88, 49, 57, 67, 66, 68, 72, 74, 74, 120, 75, 54, 72, 80, 83, 65, 71, 48, 63, 99, 56, 51, 81, 59, 62, 56, 71, 72, 59, 66, 88, 67, 49, 60, 77, 47, 63, 62, 86, 87, 62, 62, 54, 85, 80, 68, 90, 69, 79, 68, 87, 60, 53, 63, 73, 64, 73, 76, 54, 92, 58, 56, 64, 58, 55, 46, 61, 55, 95, 72, 65, 84, 54, 52, 63, 87, 122, 82, 64, 55, 41, 53, 62, 71, 67, 58, 75, 32, 53, 96, 62, 59, 63, 56, 64, 58, 71, 82, 73, 70, 53, 68, 69, 85, 79, 59, 75, 64, 71, 72, 76, 83, 81, 71, 57, 72, 63, 58, 49, 65, 82, 56, 76, 89, 63, 60, 118, 53, 65, 65, 65, 65, 42, 51, 44, 51, 72, 38, 52, 64, 46, 110, 71, 75, 73, 71, 36, 73, 72, 62, 69, 45, 62, 45, 74, 73, 51, 57, 56, 52, 63, 55, 84, 65, 54, 46, 62, 64, 61, 70, 45, 96, 65, 59, 99, 65, 59, 67, 73, 72, 72, 81, 62, 96, 80, 78, 62, 54, 53, 65, 70, 63, 72, 46, 96, 79, 45, 100, 50, 70, 67, 64, 53, 76, 62, 51, 58, 66, 79, 70, 57, 71, 52, 72, 82, 42, 66, 53, 61, 68, 89, 46, 79, 65, 66, 113, 53, 61, 73, 81, 105, 66, 71, 93, 79, 54, 83, 64, 60, 81, 69, 83, 55, 54, 39, 68, 60, 55, 53, 64, 87, 57, 67, 68, 60, 51, 98, 49, 76, 55, 50, 67, 46, 66, 68, 57, 55, 79, 64, 49, 72, 66, 61, 62, 78, 55, 75, 73, 64, 60, 38, 85, 76, 87, 75, 90, 100, 43, 55, 69, 106, 58, 62, 47, 57, 85, 56, 70, 74, 40, 76, 34, 58, 70, 62, 51, 62, 74, 70, 71, 65, 58, 60, 66, 51, 61, 66, 71, 42, 68, 68, 58, 59, 69, 41, 106, 67, 79, 65, 80, 77, 60, 69, 59, 56, 88, 84, 54, 48, 59, 66, 55, 67, 77, 57, 61, 64, 69, 89, 35, 58, 73, 62, 69, 75, 52, 43, 85, 84, 64, 66, 84, 50, 74, 59, 85, 48, 73, 62, 59, 55, 93, 53, 74, 44, 48, 53, 75, 96, 58, 54, 45, 46, 57, 95, 60, 68, 65, 81, 62, 56, 50, 66, 53, 63, 71, 59, 55, 63, 68, 51, 61, 56, 66, 64, 66, 64, 51, 68, 35, 55, 60, 52, 56, 64, 46, 71, 86, 54, 50, 83, 46, 64, 58, 61, 60, 87, 70, 83, 49, 53, 69, 72, 82, 52, 56, 49, 72, 63, 60, 43, 63, 95, 63, 73, 79, 60, 85, 54, 62, 76, 66, 36, 51, 66, 81, 66, 70, 48, 48, 59, 53, 63, 61, 53, 69, 56, 74, 63, 58, 68, 80, 59, 58, 59, 65, 57, 57, 72, 50, 69, 51, 56, 71, 57, 66, 68, 77, 57, 55, 72, 66, 61, 44, 85, 70, 92, 44, 70, 76, 38, 88, 53, 52, 58, 68, 57, 85, 63, 72, 57, 58, 65, 81, 65, 75, 69, 58, 62, 57, 65, 65, 52, 44, 70, 125, 55, 76, 57, 70, 75, 41, 72, 90, 62, 67, 78, 57, 48, 66, 82, 85, 92, 59, 58, 64, 99, 65, 53, 54, 83, 56, 66, 63, 85, 48, 51, 76, 75, 114, 61, 66, 68, 59, 75, 54, 107, 54, 71, 66, 66, 60, 52, 50, 46, 68, 83, 51, 100, 73, 124, 41, 54, 64, 54, 71, 85, 53, 40, 65, 66, 70, 85, 65, 61, 59, 59, 67, 86, 68, 79, 65, 55, 57, 73, 46, 70, 66, 68, 79, 83, 82, 64, 96, 85, 80, 67, 64, 52, 73, 75, 68, 73, 55, 49, 68, 77, 42, 67, 93, 101, 65, 59, 58, 56, 66, 62, 79, 81, 61, 79, 67, 68, 54, 65, 84, 65, 59, 118, 81, 87, 61, 66, 68, 56, 64, 109, 66, 60, 74, 56, 50, 102, 51, 48, 80, 67, 49, 60, 81, 60, 63, 88, 59, 54, 71, 62, 91, 75, 53, 74, 107, 55, 56, 72, 64, 68, 64, 61, 63, 72, 80, 58, 72, 68, 65, 60, 55, 103, 78, 73, 57, 51, 58, 42, 73, 66, 61, 50, 64, 92, 66, 72, 65, 63, 110, 73, 60, 66, 55, 75, 48, 59, 63, 123, 39, 60, 56, 59, 75, 60, 79, 123, 58, 64, 62, 57, 68, 52, 93, 52, 58, 40, 56, 97, 63, 71, 57, 104, 80, 63, 67, 42, 62, 48, 65, 63, 59, 48, 79, 57, 90, 65, 60, 60, 46, 68, 60, 78, 72, 47, 84, 49, 56, 50, 72, 52, 90, 51, 62, 70, 75, 70, 51, 55, 66, 59, 73, 68, 57, 61, 54, 69, 65, 75, 59, 56, 70, 51, 58, 53, 79, 51, 69, 87, 95, 74, 89, 52, 58, 64, 39, 100, 65, 55, 56, 76, 60, 60, 54, 62, 62, 75, 74, 27, 51, 84, 49, 73, 55, 60, 63, 55, 52, 53, 63, 78, 86, 38, 53, 50, 61, 53, 62, 58, 63, 57, 69, 67, 77, 58, 84, 78, 65, 77, 70, 64, 48, 83, 68, 50, 77, 79, 60, 54, 108, 61, 68, 55, 89, 39, 68, 64, 98, 71, 71, 70, 74, 91, 71, 60, 55, 67, 69, 54, 71, 71, 59, 87, 47, 68, 56, 58, 73, 64, 65, 104, 71, 68, 64, 52, 82, 76, 63, 58, 54, 83, 67, 63, 71, 65, 45, 75, 72, 69, 74, 27, 62, 60, 66, 75, 61, 74, 47, 63, 51, 55, 52, 61, 67, 44, 70, 65, 67, 52, 65, 72, 53, 78, 71, 43, 62, 77, 61, 100, 57, 74, 70, 68, 50, 60, 71, 73, 52, 52, 95, 65, 96, 88, 57, 73, 75, 97, 59, 65, 58, 60, 56, 59, 70, 80, 59, 68, 52, 93, 72, 54, 69, 91, 55, 53, 53, 68, 62, 73, 73, 108, 66, 63, 66, 71, 85, 58, 80, 76, 58, 65, 47, 67, 52, 124, 74, 74, 72, 54, 58, 65, 65, 64, 60, 58, 88, 78, 55, 72, 63, 55, 49, 50, 76, 54, 72, 76, 64, 97, 73, 54, 56, 59, 53, 51, 57, 53, 68, 69, 77, 61, 55, 54, 77, 48, 81, 73, 49, 75, 61, 41, 64, 63, 65, 68, 45, 52, 52, 58, 54, 62, 58, 89, 67, 42, 56, 60, 46, 66, 85, 60, 66, 72, 54, 57, 78, 51, 54, 67, 48, 74, 50, 69, 65, 89, 74, 64, 54, 50, 57, 41, 54, 41, 65, 48, 86, 74, 49, 57, 79, 48, 62, 68, 64, 63, 51, 60, 77, 62, 66, 77, 61, 50, 30, 68, 62, 60, 73, 56, 58, 48, 97, 73, 42, 56, 37, 36, 65, 58, 53, 38, 65, 90, 50, 78, 64, 51, 71, 57, 71, 50, 78, 59, 55, 73, 66, 82, 67, 76, 50, 62, 60, 62, 66, 51, 84, 64, 58, 57, 81, 136, 76, 62, 73, 72, 71, 51, 81, 57, 64, 82, 54, 75, 62, 92, 69, 86, 55, 56, 54, 65, 59, 67, 43, 62, 74, 57, 67, 76, 55, 59, 80, 45, 79, 97, 55, 55, 59, 92, 43, 67, 56, 62, 58, 86, 73, 86, 63, 75, 57, 69, 62, 60, 55, 62, 101, 74, 43, 86, 49, 57, 64, 56, 95, 61, 86, 89, 57, 75, 58, 73, 54, 80, 74, 64, 100, 66, 79, 68, 64, 87, 84, 65, 85, 52, 54, 43, 50, 109, 116, 52, 60, 55, 52, 64, 62, 59, 67, 92, 58, 73, 62, 87, 84, 63, 60, 79, 55, 76, 61, 66, 60, 54, 59, 62, 56, 67, 59, 67, 63, 70, 54, 69, 73, 56, 58, 47, 67, 53, 60, 55, 64, 47, 40, 52, 42, 56, 88, 70, 70, 73, 65, 78, 69, 80, 65, 71, 77, 84, 72, 77, 53, 72, 48, 50, 65, 43, 60, 55, 65, 77, 76, 80, 63, 67, 68, 68, 78, 68, 51, 119, 75, 70, 57, 52, 65, 70, 62, 45, 70, 75, 84, 63, 110, 70, 61, 46, 52, 64, 53, 56, 45, 109, 49, 64, 55, 85, 52, 62, 46, 64, 69, 57, 61, 81, 58, 81, 69, 47, 61, 58, 76, 77, 69, 51, 80, 64, 67, 78, 75, 59, 61, 83, 43, 63, 59, 82, 78, 69, 65, 66, 54, 58, 62, 50, 89, 60, 61, 58, 87, 72, 55, 61, 74, 64, 64, 70, 63, 72, 62, 73, 67, 64, 90, 67, 55, 72, 84, 52, 75, 95, 77, 63, 107, 57, 83, 72, 48, 42, 61, 51, 71, 58, 76, 59, 77, 56, 64, 65, 54, 59, 57, 90, 73, 65, 67, 65, 64, 67, 43, 64, 45, 64, 65, 68, 79, 54, 63, 73, 68, 56, 53, 53, 54, 63, 84, 58, 59, 87, 58, 74, 59, 62, 73, 50, 76, 61, 64, 50, 96, 43, 73, 58, 60, 73, 80, 74, 54, 87, 75, 60, 67, 58, 70, 68, 62, 46, 51, 67, 103, 51, 80, 76, 120, 62, 70, 48, 60, 44, 50, 88, 59, 51, 53, 61, 64, 70, 83, 75, 89, 61, 94, 45, 57, 64, 61, 81, 71, 67, 43, 56, 68, 65, 74, 67, 64, 56, 61, 75, 50, 51, 67, 59, 60, 76, 45, 80, 60, 54, 57, 69, 65, 89, 64, 56, 69, 66, 63, 76, 56, 70, 64, 60, 70, 67, 61, 73, 72, 79, 60, 105, 55, 66, 71, 61, 57, 51, 87, 50, 81, 76, 62, 76, 49, 59, 92, 74, 75, 48, 70, 63, 68, 74, 75, 83, 61, 96, 82, 53, 53, 84, 62, 76, 72, 78, 64, 60, 83, 71, 86, 70, 60, 54, 56, 73, 74, 54, 62, 84, 57, 81, 59, 66, 67, 58, 53, 70, 72, 57, 55, 68, 51, 62, 63, 50, 71, 62, 64, 61, 60, 72, 73, 76, 69, 50, 85, 70, 59, 49, 63, 54, 49, 56, 55, 66, 52, 53, 66, 47, 82, 81, 70, 60, 49, 46, 79, 90, 68, 63, 45, 61, 55, 72, 77, 80, 45, 56, 64, 68, 93, 69, 38, 55, 64, 50, 52, 63, 65, 71, 65, 60, 52, 98, 55, 61, 44, 83, 70, 106, 66, 92, 58, 57, 60, 67, 56, 59, 47, 89, 74, 64, 47, 67, 72, 68, 66, 87, 72, 87, 67, 105, 60, 56, 67, 57, 48, 55, 76, 56, 61, 88, 78, 96, 72, 82, 48, 73, 59, 42, 70, 83, 82, 68, 47, 75, 67, 70, 53, 56, 59, 54, 73, 65, 50, 69, 69, 71, 66, 75, 63, 77, 65, 106, 56, 72, 73, 64, 81, 106, 71, 52, 66, 110, 62, 46, 66, 66, 51, 59, 74, 65, 59, 63, 70, 52, 68, 61, 47, 59, 83, 72, 64, 59, 74, 61, 57, 63, 72, 63, 101, 71, 57, 67, 74, 52, 45, 74, 68, 107, 57, 60, 51, 64, 54, 65, 65, 49, 81, 48, 77, 57, 52, 57, 73, 72, 84, 62, 57, 51, 61, 60, 61, 64, 68, 72, 70, 55, 44, 88, 98, 62, 69, 94, 47, 74, 56, 61, 65, 74, 129, 55, 60, 67, 69, 79, 62, 50, 96, 57, 56, 64, 109, 76, 63, 43, 59, 69, 75, 72, 49, 69, 55, 54, 51, 51, 58, 53, 86, 66, 49, 80, 57, 58, 65, 70, 68, 59, 63, 56, 68, 54, 70, 85, 56, 69, 74, 57, 60, 71, 65, 49, 53, 70, 66, 58, 58, 57, 81, 56, 86, 74, 74, 54, 61, 41, 49, 79, 95, 47, 60, 58, 60, 80, 60, 62, 54, 55, 53, 72, 59, 70, 67, 63, 67, 63, 65, 74, 51, 63, 71, 67, 63, 76, 103, 60, 89, 65, 68, 55, 45, 90, 62, 65, 66, 59, 69, 62, 52, 61, 74, 70, 62, 55, 61, 84, 51, 77, 65, 76, 71, 47, 74, 51, 60, 65, 50, 54, 71, 52, 83, 61, 49, 49, 48, 68, 53, 61, 71, 83, 46, 88, 51, 60, 53, 49, 48, 48, 73, 61, 67, 67, 78, 77, 69, 86, 69, 54, 55, 59, 58, 51, 72, 48, 63, 69, 74, 62, 62, 50, 64, 106, 52, 63, 62, 85, 67, 51, 78, 52, 83, 66, 63, 56, 57, 62, 61, 47, 74, 63, 63, 53, 83, 80, 74, 72, 66, 58, 59, 63, 72, 73, 71, 70, 44, 73, 83, 53, 80, 85, 61, 55, 92, 80, 73, 61, 58, 64, 66, 73, 51, 73, 54, 58, 66, 54, 66, 68, 58, 72, 64, 55, 72, 77, 75, 60, 69, 123, 83, 74, 75, 45, 89, 70, 52, 74, 44, 42, 62, 54, 61, 67, 54, 53, 64, 62, 80, 57, 66, 60, 54, 65, 62, 94, 48, 72, 68, 50, 72, 42, 47, 72, 75, 68, 86, 73, 72, 56, 89, 52, 61, 46, 60, 76, 63, 67, 67, 58, 70, 49, 69, 81, 66, 62, 65, 61, 56, 53, 87, 56, 63, 52, 50, 57, 55, 59, 53, 55, 66, 62, 55, 54, 78, 73, 60, 70, 69, 78, 74, 86, 72, 67, 65, 54, 52, 57, 57, 61, 53, 59, 58, 54, 75, 67, 74, 60, 58, 64, 61, 71, 68, 67, 67, 45, 61, 73, 104, 51, 60, 55, 46, 73, 61, 61, 79, 65, 63, 83, 131, 63, 62, 55, 56, 50, 54, 82, 45, 99, 63, 51, 68, 53, 82, 69, 75, 70, 57, 78, 97, 70, 71, 69, 59, 68, 54, 47, 57, 54, 55, 83, 73, 66, 69, 68, 58, 60, 57, 66, 54, 78, 75, 55, 48, 69, 85, 54, 54, 63, 65, 63, 52, 62, 63, 46, 80, 75, 56, 81, 70, 64, 62, 59, 57, 55, 56, 63, 95, 61, 67, 77, 62, 59, 85, 69, 130, 74, 62, 63, 56, 50, 62, 70, 51, 61, 77, 67, 70, 77, 62, 106, 55, 54, 77, 84, 67, 69, 61, 70, 54, 64, 54, 80, 106, 63, 70, 62, 69, 67, 53, 74, 73, 55, 75, 80, 65, 55, 46, 50, 60, 72, 106, 64, 65, 124, 57, 48, 66, 58, 53, 93, 77, 59, 58, 49, 75, 55, 64, 70, 53, 55, 64, 75, 52, 45, 82, 55, 70, 52, 68, 59, 54, 46, 92, 46, 42, 70, 67, 65, 106, 54, 69, 77, 56, 43, 78, 66, 48, 65, 57, 68, 61, 70, 64, 49, 96, 65, 48, 81, 65, 72, 79, 57, 67, 69, 63, 58, 53, 82, 46, 96, 86, 49, 71, 107, 79, 60, 53, 137, 58, 60, 71, 60, 56, 78, 67, 57, 94, 140, 72, 60, 82, 67, 48, 48, 72, 81, 66, 63, 58, 66, 78, 76, 57, 94, 65, 66, 70, 69, 63, 59, 61, 50, 49, 42, 53, 67, 56, 57, 65, 86, 53, 100, 64, 67, 70, 89, 51, 61, 74, 58, 105, 70, 79, 117, 59, 76, 61, 48, 62, 51, 96, 60, 59, 56, 60, 78, 80, 69, 55, 75, 66, 66, 78, 63, 102, 87, 54, 64, 68, 51, 74, 58, 60, 62, 58, 78, 60, 61, 103, 61, 53, 73, 60, 61, 74, 54, 55, 53, 72, 75, 80, 77, 51, 51, 59, 50, 72, 59, 70, 103, 53, 55, 60, 70, 51, 57, 51, 54, 64, 56, 86, 75, 55, 83, 85, 76, 48, 70, 49, 63, 68, 60, 52, 63, 73, 69, 66, 73, 55, 70, 66, 68, 64, 84, 65, 79, 93, 53, 57, 49, 50, 69, 54, 50, 58, 96, 78, 68, 59, 80, 56, 67, 73, 43, 54, 56, 63, 69, 53, 57, 70, 62, 70, 58, 74, 69, 85, 68, 67, 53, 58, 80, 60, 63, 57, 66, 73, 63, 49, 54, 68, 72, 56, 71, 66, 69, 61, 51, 62, 60, 58, 68, 79, 47, 65, 66, 66, 54, 70, 60, 42, 61, 69, 67, 83, 76, 59, 61, 62, 77, 64, 68, 53, 60, 94, 60, 57, 69, 73, 52, 60, 44, 82, 55, 59, 73, 117, 59, 65, 65, 62, 50, 77, 65, 49, 54, 70, 42, 58, 69, 54, 52, 56, 61, 63, 70, 62, 59, 66, 55, 57, 72, 76, 67, 46, 63, 65, 62, 58, 55, 53, 49, 105, 61, 65, 80, 71, 83, 75, 68, 63, 61, 90, 50, 49, 71, 131, 65, 87, 60, 66, 61, 66, 65, 65, 80, 95, 101, 69, 70, 59, 59, 79, 59, 53, 63, 54, 56, 60, 55, 88, 62, 58, 61, 70, 65, 38, 82, 117, 72, 61, 59, 61, 67, 58, 58, 77, 64, 98, 72, 59, 62, 59, 53, 59, 70, 79, 60, 81, 54, 61, 74, 62, 69, 105, 64, 59, 67, 74, 34, 90, 68, 69, 69, 87, 68, 49, 61, 86, 62, 54, 65, 58, 68, 61, 112, 66, 73, 74, 76, 57, 91, 52, 88, 59, 65, 53, 80, 50, 64, 59, 54, 56, 59, 48, 56, 111, 50, 81, 63, 73, 78, 74, 60, 71, 56, 68, 68, 90, 71, 88, 65, 78, 64, 44, 48, 64, 58, 89, 53, 67, 67, 66, 77, 108, 79, 63, 56, 85, 53, 62, 82, 59, 51, 66, 65, 67, 106, 53, 59, 61, 79, 52, 62, 57, 65, 63, 58, 49, 68, 46, 62, 62, 89, 64, 61, 80, 92, 65, 88, 55, 53, 69, 71, 68, 65, 72, 60, 46, 66, 53, 48, 72, 73, 51, 74, 55, 61, 143, 86, 51, 61, 61, 65, 48, 54, 68, 66, 70, 104, 81, 62, 72, 53, 63, 56, 80, 63, 60, 55, 55, 63, 77, 58, 59, 58, 77, 49, 59, 72, 62, 60, 53, 95, 57, 59, 53, 94, 66, 124, 78, 81, 56, 61, 47, 74, 59, 48, 50, 77, 83, 55, 69, 72, 58, 60, 80, 56, 60, 57, 56, 77, 54, 63, 70, 61, 86, 69, 79, 53, 73, 61, 76, 94, 67, 70, 68, 53, 79, 65, 55, 62, 60, 46, 65, 73, 88, 69, 58, 68, 66, 61, 69, 64, 53, 83, 70, 86, 62, 58, 61, 69, 59, 77, 66, 73, 65, 54, 66, 85, 52, 73, 70, 70, 107, 61, 49, 62, 70, 54, 87, 68, 54, 63, 73, 76, 61, 66, 61, 80, 64, 62, 51, 79, 64, 56, 61, 46, 60, 83, 53, 97, 73, 72, 58, 51, 44, 80, 67, 56, 138, 61, 71, 63, 91, 102, 47, 57, 61, 58, 59, 94, 46, 71, 55, 60, 86, 60, 65, 76, 55, 50, 53, 77, 65, 67, 58, 43, 45, 53, 60, 69, 60, 61, 84, 78, 85, 56, 61, 50, 72, 54, 74, 57, 69, 43, 64, 58, 71, 42, 55, 73, 82, 79, 58, 63, 74, 61, 67, 87, 65, 93, 64, 66, 70, 57, 78, 71, 62, 53, 60, 51, 63, 68, 62, 59, 64, 71, 102, 60, 63, 61, 65, 51, 84, 64, 61, 72, 79, 62, 71, 61, 47, 72, 101, 72, 85, 55, 46, 73, 53, 67, 61, 78, 68, 88, 68, 70, 64, 55, 62, 50, 63, 65, 70, 52, 79, 64, 71, 73, 58, 83, 64, 61, 41, 44, 66, 84, 59, 73, 53, 46, 72, 62, 60, 52, 55, 67, 46, 57, 62, 53, 57, 53, 51, 59, 85, 58, 53, 49, 87, 78, 81, 57, 63, 58, 66, 85, 70, 65, 50, 62, 58, 72, 67, 69, 66, 63, 54, 56, 79, 63, 54, 55, 38, 58, 57, 72, 61, 62, 58, 71, 79, 73, 60, 103, 56, 58, 67, 76, 93, 71, 71, 59, 57, 62, 55, 70, 48, 70, 52, 81, 49, 49, 54, 53, 45, 88, 63, 69, 63, 53, 56, 60, 68, 72, 58, 55, 45, 70, 61, 62, 70, 57, 67, 65, 59, 77, 76, 63, 70, 51, 55, 61, 74, 70, 55, 80, 69, 72, 74, 56, 66, 62, 70, 64, 46, 60, 62, 62, 62, 65, 71, 64, 82, 39, 56, 53, 78, 59, 67, 53, 55, 109, 58, 60, 82, 63, 65, 51, 57, 60, 90, 57, 80, 84, 54, 78, 74, 54, 73, 78, 61, 56, 63, 90, 61, 81, 64, 60, 59, 62, 59, 59, 43, 86, 83, 49, 75, 55, 56, 55, 101, 60, 52, 47, 64, 67, 63, 75, 79, 63, 79, 56, 59, 109, 50, 67, 69, 59, 55, 71, 61, 71, 63, 70, 59, 51, 49, 62, 60, 57, 49, 51, 58, 55, 62, 56, 94, 67, 77, 58, 86, 117, 94, 55, 63, 66, 71, 63, 50, 62, 69, 76, 63, 68, 63, 77, 65, 65, 74, 62, 80, 54, 49, 71, 71, 69, 69, 59, 63, 66, 53, 64, 64, 62, 72, 74, 71, 69, 78, 57, 56, 60, 59, 49, 47, 47, 53, 79, 74, 71, 84, 76, 97, 58, 63, 36, 66, 78, 72, 64, 66, 64, 67, 70, 74, 131, 55, 59, 61, 68, 93, 72, 88, 52, 128, 64, 73, 58, 67, 78, 59, 62, 58, 67, 56, 78, 56, 54, 61, 57, 68, 52, 63, 75, 55, 60, 100, 78, 74, 90, 74, 64, 79, 67, 68, 51, 59, 59, 58, 56, 58, 90, 83, 47, 62, 65, 51, 73, 66, 70, 58, 60, 52, 67, 70, 60, 75, 68, 63, 56, 68, 81, 53, 60, 72, 57, 60, 78, 74, 47, 64, 60, 67, 65, 76, 72, 58, 97, 44, 52, 78, 50, 52, 56, 70, 59, 57, 77, 68, 50, 60, 63, 74, 76, 80, 80, 63, 59, 75, 57, 36, 69, 72, 47, 46, 62, 61, 56, 73, 59, 76, 97, 59, 70, 74, 47, 64, 76, 52, 79, 108, 53, 52, 65, 70, 65, 70, 60, 82, 84, 62, 52, 53, 51, 61, 57, 75, 62, 56, 48, 60, 137, 69, 77, 81, 58, 70, 53, 75, 90, 55, 69, 99, 65, 68, 91, 66, 67, 60, 59, 56, 72, 65, 71, 71, 49, 62, 72, 55, 68, 59, 58, 70, 75, 60, 85, 70, 93, 64, 91, 67, 81, 62, 78, 62, 52, 58, 61, 54, 62, 55, 61, 73, 60, 66, 75, 57, 56, 52, 91, 70, 71, 74, 64, 63, 63, 59, 44, 40, 77, 72, 51, 90, 82, 54, 59, 74, 64, 64, 47, 66, 57, 56, 53, 52, 77, 70, 61, 56, 58, 84, 59, 63, 65, 69, 73, 63, 60, 60, 60, 56, 75, 64, 66, 63, 78, 94, 57, 55, 63, 93, 49, 83, 47, 67, 64, 67, 50, 59, 45, 49, 61, 75, 49, 91, 92, 64, 64, 72, 82, 69, 68, 53, 54, 63, 74, 40, 69, 70, 74, 73, 70, 60, 78, 58, 58, 73, 67, 70, 68, 92, 51, 66, 73, 51, 48, 48, 42, 66, 54, 62, 74, 66, 65, 55, 50, 61, 46, 64, 67, 47, 72, 58, 52, 71, 68, 71, 69, 37, 68, 39, 69, 79, 60, 86, 81, 58, 68, 68, 100, 101, 66, 48, 61, 76, 63, 51, 45, 72, 76, 49, 74, 98, 52, 57, 72, 54, 64, 56, 69, 86, 71, 53, 60, 68, 56, 68, 76, 124, 67, 67, 45, 75, 61, 72, 46, 86, 60, 85, 40, 56, 63, 50, 56, 66, 67, 53, 81, 54, 49, 71, 100, 56, 84, 59, 79, 54, 63, 71, 90, 52, 70, 80, 67, 56, 81, 74, 66, 56, 57, 62, 66, 74, 65, 48, 69, 56, 77, 72, 57, 62, 58, 54, 120, 92, 84, 72, 57, 112, 63, 63, 68, 72, 70, 61, 58, 49, 70, 61, 68, 75, 66, 71, 68, 58, 71, 76, 60, 71, 40, 90, 52, 56, 73, 52, 50, 60, 81, 44, 81, 65, 61, 63, 63, 79, 61, 48, 80, 64, 82, 56, 56, 74, 59, 46, 70, 84, 80, 58, 65, 54, 62, 89, 88, 58, 77, 61, 72, 75, 61, 66, 52, 60, 54, 75, 57, 66, 53, 53, 52, 55, 82, 60, 66, 62, 57, 58, 73, 61, 70, 62, 67, 87, 60, 68, 54, 70, 59, 66, 62, 67, 66, 69, 109, 72, 71, 49, 72, 64, 62, 67, 96, 50, 58, 77, 76, 56, 69, 126, 68, 63, 58, 56, 65, 59, 75, 65, 58, 58, 54, 76, 61, 48, 79, 68, 64, 86, 55, 60, 83, 51, 68, 98, 65, 46, 69, 70, 65, 69, 57, 60, 60, 60, 69, 59, 55, 89, 63, 72, 40, 67, 68, 80, 74, 78, 67, 64, 51, 70, 62, 39, 66, 65, 90, 65, 55, 48, 79, 54, 60, 70, 55, 88, 57, 32, 74, 64, 76, 73, 69, 65, 79, 66, 54, 64, 101, 55, 61, 69, 64, 62, 80, 85, 67, 65, 57, 77, 73, 88, 66, 55, 59, 64, 60, 65, 64, 68, 61, 71, 73, 75, 81, 60, 63, 52, 73, 71, 47, 74, 60, 70, 74, 78, 55, 58, 51, 83, 72, 78, 82, 63, 79, 59, 57, 53, 83, 60, 76, 84, 88, 57, 53, 94, 63, 56, 69, 52, 78, 63, 69, 107, 59, 56, 61, 62, 74, 80, 61, 77, 45, 63, 84, 53, 68, 57, 48, 57, 51, 76, 84, 113, 64, 53, 58, 59, 68, 60, 60, 64, 68, 57, 52, 55, 75, 64, 59, 64, 56, 69, 57, 71, 87, 65, 68, 64, 87, 69, 45, 60, 53, 61, 68, 65, 69, 60, 77, 58, 70, 62, 58, 51, 49, 59, 80, 66, 63, 100, 68, 72, 49, 53, 59, 65, 69, 68, 49, 57, 61, 85, 69, 45, 54, 58, 60, 67, 55, 61, 80, 69, 162, 68, 59, 46, 84, 77, 50, 88, 49, 63, 55, 45, 64, 61, 59, 57, 65, 60, 57, 66, 74, 62, 50, 63, 57, 74, 78, 46, 62, 69, 59, 84, 74, 88, 63, 59, 62, 73, 52, 81, 61, 71, 68, 104, 53, 63, 60, 82, 74, 58, 89, 62, 88, 69, 66, 48, 54, 63, 63, 71, 61, 54, 55, 73, 59, 74, 90, 75, 98, 77, 78, 91, 55, 60, 79, 82, 60, 64, 69, 63, 28, 58, 79, 64, 58, 50, 60, 56, 46, 57, 42, 56, 71, 98, 56, 68, 53, 87, 75, 48, 69, 98, 57, 62, 64, 85, 41, 67, 70, 68, 75, 60, 61, 65, 55, 61, 47, 56, 62, 64, 64, 73, 52, 74, 75, 116, 57, 43, 27, 67, 65, 75, 57, 89, 55, 62, 52, 75, 100, 79, 55, 43, 51, 53, 57, 77, 67, 69, 97, 93, 64, 75, 52, 60, 74, 89, 61, 60, 71, 45, 86, 76, 63, 55, 75, 57, 67, 85, 63, 65, 53, 66, 60, 75, 82, 48, 61, 69, 55, 49, 87, 51, 64, 46, 68, 67, 68, 44, 61, 79, 69, 54, 59, 62, 64, 44, 62, 88, 65, 82, 71, 81, 68, 53, 52, 71, 46, 62, 77, 59, 47, 71, 69, 91, 64, 62, 54, 56, 61, 52, 61, 46, 67, 42, 48, 62, 64, 59, 71, 67, 63, 66, 68, 60, 68, 68, 60, 80, 72, 70, 58, 51, 75, 96, 65, 63, 51, 55, 85, 60, 58, 72, 74, 66, 44, 74, 59, 80, 50, 71, 84, 71, 65, 76, 86, 59, 58, 86, 57, 66, 58, 67, 55, 59, 67, 54, 69, 55, 48, 72, 52, 73, 58, 57, 72, 56, 73, 56, 72, 69, 50, 77, 73, 63, 73, 75, 77, 65, 72, 65, 56, 62, 71, 74, 69, 62, 56, 58, 57, 42, 63, 69, 66, 52, 55, 50, 93, 53, 54, 66, 59, 89, 60, 54, 58, 83, 43, 64, 79, 72, 70, 90, 65, 61, 65, 76, 61, 83, 55, 78, 84, 89, 89, 62, 75, 58, 25, 60, 61, 62, 56, 69, 54, 55, 59, 83, 61, 80, 60, 60, 55, 67, 70, 74, 57, 53, 57, 80, 58, 69, 52, 70, 61, 55, 63, 68, 56, 72, 55, 56, 58, 48, 67, 54, 61, 65, 80, 82, 73, 70, 76, 76, 68, 56, 58, 72, 95, 63, 65, 61, 62, 42, 78, 82, 67, 53, 51, 65, 57, 67, 65, 59, 60, 55, 58, 55, 61, 63, 109, 43, 59, 45, 54, 72, 59, 71, 72, 52, 35, 73, 47, 78, 61, 65, 67, 57, 53, 88, 60, 69, 89, 64, 62, 64, 42, 56, 63, 98, 50, 80, 65, 67, 64, 56, 59, 73, 46, 63, 70, 60, 54, 67, 68, 77, 73, 54, 56, 61, 77, 108, 42, 76, 52, 55, 85, 42, 69, 55, 62, 64, 58, 57, 83, 81, 63, 75, 74, 57, 54, 95, 61, 82, 68, 37, 63, 71, 67, 76, 69, 46, 65, 75, 150, 78, 45, 75, 66, 61, 58, 74, 82, 68, 78, 56, 71, 64, 87, 65, 49, 41, 60, 63, 63, 53, 67, 52, 69, 34, 39, 67, 50, 84, 88, 94, 77, 56, 74, 51, 49, 79, 58, 57, 112, 57, 89, 71, 87, 48, 59, 69, 92, 105, 71, 86, 101, 49, 63, 55, 63, 62, 66, 56, 54, 76, 93, 97, 55, 83, 72, 55, 77, 81, 66, 58, 63, 87, 57, 74, 86, 49, 67, 75, 85, 62, 51, 124, 49, 73, 85, 81, 70, 65, 80, 108, 51, 84, 45, 118, 71, 59, 77, 68, 54, 86, 59, 66, 49, 60, 76, 68, 51, 53, 62, 65, 57, 46, 57, 64, 85, 55, 123, 50, 57, 58, 67, 61, 50, 103, 62, 56, 72, 61, 81, 63, 39, 48, 63, 67, 59, 74, 125, 58, 60, 63, 57, 67, 63, 48, 64, 61, 59, 67, 63, 70, 89, 89, 123, 57, 61, 59, 68, 62, 72, 98, 58, 79, 81, 59, 84, 80, 66, 53, 54, 67, 92, 63, 63, 76, 70, 89, 57, 69, 113, 49, 68, 60, 85, 53, 72, 47, 79, 75, 54, 59, 80, 91, 76, 77, 57, 63, 62, 57, 76, 66, 52, 45, 41, 73, 65, 84, 44, 84, 89, 71, 44, 53, 56, 74, 46, 85, 81, 90, 77, 58, 86, 76, 52, 69, 74, 59, 74, 79, 104, 57, 76, 61, 67, 91, 56, 62, 64, 40, 56, 55, 54, 57, 68, 72, 69, 53, 48, 46, 62, 64, 65, 50, 51, 70, 60, 83, 75, 82, 62, 57, 60, 81, 36, 63, 79, 103, 42, 65, 48, 64, 65, 92, 48, 46, 72, 62, 78, 73, 58, 49, 87, 83, 76, 58, 78, 80, 38, 61, 56, 60, 67, 88, 60, 44, 87, 69, 74, 71, 50, 65, 45, 45, 85, 50, 73, 44, 65, 53, 71, 54, 44, 83, 60, 66, 66, 54, 61, 69, 67, 75, 76, 67, 71, 94, 48, 48, 57, 59, 49, 74, 58, 66, 61, 44, 49, 60, 68, 33, 63, 44, 67, 59, 59, 60, 68, 60, 97, 69, 72, 49, 74, 83, 44, 59, 57, 72, 94, 56, 48, 59, 73, 59, 81, 60, 60, 56, 54, 56, 81, 61, 71, 46, 62, 64, 89, 65, 61, 54, 56, 66, 50, 40, 74, 43, 70, 64, 79, 42, 92, 84, 72, 70, 49, 47, 52, 88, 65, 66, 69, 56, 66, 59, 114, 65, 72, 61, 99, 76, 67, 101, 62, 73, 39, 72, 72, 102, 76, 56, 77, 83, 49, 74, 57, 67, 39, 42, 101, 114, 47, 63, 58, 65, 39, 50, 62, 82, 59, 71, 57, 74, 87, 64, 68, 83, 51, 50, 64, 65, 61, 79, 82, 67, 68, 83, 58, 46, 38, 85, 60, 57, 59, 78, 56, 57, 64, 62, 94, 51, 79, 47, 50, 47, 67, 65, 63, 38, 75, 37, 77, 64, 71, 60, 45, 70, 88, 65, 81, 89, 24, 69, 73, 45, 46, 70, 53, 47, 77, 51, 91, 54, 69, 92, 70, 90, 52, 76, 69, 42, 64, 53, 57, 85, 76, 83, 55, 73, 116, 52, 71, 60, 47, 65, 53, 72, 53, 64, 62, 77, 58, 64, 88, 52, 137, 52, 91, 96, 64, 72, 48, 46, 76, 64, 87, 41, 60, 67, 67, 63, 60, 55, 61, 82, 67, 59, 71, 62, 78, 64, 60, 84, 60, 51, 51, 53, 80, 55, 57, 99, 79, 84, 67, 55, 54, 72, 44, 60, 49, 68, 51, 55, 51, 73, 62, 73, 57, 44, 46, 51, 53, 133, 61, 66, 70, 67, 58, 55, 67, 38, 72, 63, 85, 43, 62, 52, 130, 79, 60, 76, 56, 61, 61, 67, 45, 68, 92, 79, 43, 56, 82, 79, 73, 66, 73, 47, 72, 70, 88, 64, 68, 58, 71, 86, 42, 82, 87, 112, 67, 83, 56, 40, 65, 55, 49, 38, 82, 59, 53, 52, 77, 83, 98, 61, 65, 58, 55, 50, 68, 64, 61, 66, 84, 72, 74, 55, 53, 63, 75, 67, 73, 97, 91, 73, 71, 52, 61, 63, 49, 69, 58, 63, 92, 79, 73, 57, 47, 95, 60, 73, 56, 62, 83, 57, 79, 52, 88, 66, 61, 74, 52, 65, 51, 85, 68, 86, 60, 64, 63, 79, 55, 72, 98, 66, 57, 45, 91, 74, 72, 64, 69, 55, 86, 63, 61, 41, 82, 65, 54, 97, 70, 72, 80, 69, 59, 46, 65, 53, 57, 47, 50, 58, 58, 73, 43, 61, 44, 52, 83, 54, 61, 60, 115, 61, 63, 76, 61, 75, 66, 46, 71, 44, 70, 52, 65, 41, 57, 44, 54, 63, 52, 58, 59, 62, 82, 69, 80, 60, 53, 79, 68, 76, 65, 68, 70, 71, 73, 92, 46, 73, 66, 58, 77, 45, 75, 55, 53, 83, 60, 101, 59, 96, 86, 73, 87, 57, 59, 64, 49, 55, 65, 73, 63, 85, 48, 43, 55, 60, 71, 56, 74, 40, 53, 51, 37, 43, 48, 60, 46, 70, 71, 84, 53, 107, 48, 46, 76, 55, 71, 65, 84, 81, 83, 53, 70, 70, 49, 45, 52, 77, 61, 77, 52, 92, 89, 102, 66, 67, 53, 53, 48, 53, 108, 26, 51, 54, 60, 84, 60, 70, 64, 47, 46, 62, 72, 55, 86, 61, 53, 38, 66, 70, 79, 47, 52, 62, 54, 38, 112, 39, 60, 55, 62, 58, 62, 75, 35, 71, 82, 76, 63, 69, 59, 78, 64, 52, 81, 76, 62, 78, 46, 61, 83, 53, 63, 84, 49, 48, 53, 60, 77, 86, 47, 92, 50, 63, 85, 67, 66, 68, 48, 53, 82, 97, 47, 66, 46, 55, 46, 53, 52, 57, 46, 80, 51, 71, 69, 83, 64, 55, 103, 86, 50, 59, 70, 73, 69, 62, 97, 102, 72, 80, 55, 71, 63, 57, 58, 65, 62, 74, 78, 61, 66, 59, 60, 54, 56, 90, 70, 51, 73, 73, 68, 65, 69, 130, 47, 53, 60, 68, 86, 40, 97, 81, 61, 56, 76, 94, 63, 82, 56, 70, 72, 66, 61, 56, 89, 122, 52, 59, 78, 49, 70, 68, 63, 51, 53, 56, 57, 80, 53, 62, 60, 70, 67, 75, 75, 60, 56, 70, 55, 70, 92, 73, 89, 78, 101, 72, 54, 81, 73, 62, 71, 53, 71, 67, 56, 51, 47, 56, 57, 61, 57, 56, 98, 86, 42, 64, 61, 63, 84, 70, 44, 58, 72, 65, 63, 96, 54, 83, 52, 72, 76, 71, 50, 95, 60, 92, 72, 69, 93, 53, 50, 67, 82, 67, 73, 64, 63, 76, 57, 117, 65, 74, 55, 74, 80, 59, 60, 59, 57, 62, 52, 52, 70, 72, 67, 72, 67, 80, 93, 74, 42, 54, 62, 77, 50, 79, 101, 59, 50, 59, 66, 44, 75, 71, 55, 46, 87, 85, 41, 49, 66, 77, 86, 74, 65, 44, 56, 80, 51, 78, 66, 91, 79, 69, 55, 53, 83, 99, 143, 52, 60, 71, 68, 79, 70, 50, 45, 72, 44, 62, 62, 38, 93, 58, 59, 47, 50, 60, 87, 53, 69, 84, 63, 43, 59, 27, 65, 91, 50, 80, 53, 55, 65, 85, 53, 53, 60, 75, 70, 60, 63, 72, 53, 54, 90, 91, 51, 55, 74, 36, 40, 92, 65, 59, 82, 70, 59, 68, 64, 53, 71, 71, 45, 67, 66, 78, 85, 90, 15, 55, 60, 48, 84, 85, 52, 68, 71, 113, 71, 77, 61, 72, 70, 48, 55, 75, 76, 73, 78, 57, 85, 92, 49, 89, 42, 69, 60, 75, 56, 62, 102, 106, 59, 55, 53, 69, 58, 125, 59, 78, 67, 71, 70, 55, 96, 77, 80, 82, 92, 47, 82, 65, 66, 144, 76, 74, 52, 52, 56, 69, 76, 80, 53, 65, 50, 63, 79, 62, 89, 76, 75, 68, 78, 103, 37, 85, 69, 59, 67, 61, 44, 81, 40, 48, 76, 50, 45, 62, 66, 45, 52, 70, 66, 71, 69, 68, 62, 59, 91, 81, 79, 75, 45, 66, 60, 63, 121, 59, 47, 95, 77, 78, 104, 92, 58, 46, 85, 77, 72, 39, 62, 128, 45, 52, 69, 78, 72, 64, 48, 48, 61, 52, 65, 75, 66, 57, 96, 60, 102, 57, 60, 74, 58, 71, 58, 48, 73, 74, 59, 72, 39, 58, 93, 67, 51, 50, 50, 54, 35, 89, 59, 49, 67, 89, 76, 77, 51, 62, 72, 34, 56, 47, 55, 82, 34, 57, 70, 72, 65, 58, 101, 105, 65, 62, 115, 72, 61, 123, 62, 54, 94, 42, 67, 71, 85, 46, 49, 69, 63, 59, 81, 57, 58, 74, 69, 59, 54, 85, 76, 79, 50, 105, 75, 69, 81, 45, 57, 60, 52, 65, 94, 57, 83, 45, 99, 70, 104, 76, 104, 40, 66, 69, 69, 59, 57, 51, 73, 69, 68, 71, 67, 76, 45, 64, 70, 80, 73, 64, 74, 72, 88, 90, 60, 63, 86, 62, 48, 70, 79, 56, 87, 70, 95, 69, 56, 60, 51, 83, 65, 81, 59, 74, 49, 81, 70, 60, 66, 67, 65, 66, 79, 64, 88, 64, 75, 87, 49, 58, 79, 69, 101, 65, 51, 79, 53, 69, 76, 64, 65, 75, 39, 56, 81, 52, 48, 88, 38, 48, 60, 73, 47, 74, 55, 62, 71, 74, 62, 127, 77, 49, 63, 69, 85, 49, 78, 88, 58, 85, 80, 58, 60, 75, 60, 108, 84, 120, 66, 51, 132, 72, 62, 65, 67, 93, 65, 43, 83, 41, 68, 36, 74, 93, 54, 48, 54, 64, 110, 52, 85, 70, 88, 51, 61, 56, 47, 40, 62, 54, 50, 49, 63, 96, 76, 70, 55, 64, 81, 65, 61, 53, 46, 58, 69, 43, 66, 63, 50, 61, 66, 66, 105, 54, 51, 63, 62, 83, 69, 47, 74, 61, 59, 60, 68, 69, 41, 100, 64, 59, 58, 59, 59, 59, 38, 74, 85, 69, 63, 54, 60, 56, 73, 60, 65, 62, 48, 82, 55, 65, 67, 75, 85, 65, 50, 87, 67, 66, 61, 83, 78, 32, 62, 71, 57, 44, 75, 50, 82, 65, 85, 59, 62, 101, 75, 66, 66, 62, 65, 43, 49, 50, 46, 77, 60, 57, 43, 47, 68, 79, 84, 67, 106, 52, 71, 67, 55, 71, 74, 76, 52, 86, 49, 65, 76, 67, 59, 61, 43, 75, 55, 62, 81, 48, 51, 54, 58, 84, 76, 50, 70, 56, 71, 57, 66, 62, 78, 72, 72, 52, 49, 56, 49, 77, 56, 62, 54, 68, 88, 61, 44, 66, 59, 130, 69, 61, 49, 71, 63, 52, 35, 67, 56, 79, 94, 64, 33, 76, 61, 81, 61, 63, 76, 81, 63, 74, 104, 64, 89, 69, 63, 69, 59, 43, 73, 59, 81, 54, 84, 44, 41, 68, 43, 65, 70, 67, 41, 75, 51, 38, 62, 66, 68, 81, 60, 54, 70, 75, 95, 91, 40, 65, 43, 67, 58, 59, 47, 38, 69, 60, 69, 76, 61, 57, 50, 63, 82, 62, 55, 74, 51, 53, 65, 58, 65, 71, 69, 84, 62, 62, 75, 53, 62, 70, 106, 61, 73, 46, 39, 58, 57, 80, 89, 60, 54, 41, 59, 48, 80, 68, 60, 51, 53, 44, 63, 55, 56, 57, 78, 48, 57, 59, 120, 53, 54, 39, 41, 56, 75, 64, 60, 57, 51, 56, 66, 60, 92, 59, 65, 51, 66, 86, 70, 53, 59, 99, 59, 52, 74, 65, 40, 61, 63, 48, 64, 52, 79, 76, 54, 55, 56, 63, 95, 46, 46, 60, 83, 65, 58, 86, 125, 78, 53, 59, 55, 60, 65, 23, 48, 98, 64, 45, 65, 45, 63, 49, 62, 38, 77, 96, 58, 78, 26, 66, 50, 51, 47, 69, 56, 68, 121, 53, 94, 71, 56, 88, 97, 50, 55, 89, 87, 80, 61, 96, 77, 41, 78, 68, 55, 74, 39, 53, 51, 54, 58, 80, 70, 55, 51, 66, 47, 51, 48, 85, 74, 70, 78, 66, 43, 83, 70, 68, 87, 51, 50, 57, 74, 52, 152, 55, 47, 106, 69, 66, 71, 87, 63, 82, 54, 54, 57, 77, 64, 67, 70, 74, 58, 47, 55, 48, 59, 57, 78, 56, 56, 67, 53, 60, 62, 63, 40, 53, 73, 88, 68, 65, 53, 65, 60, 59, 58, 71, 69, 57, 52, 58, 58, 71, 61, 63, 64, 69, 66, 58, 55, 38, 73, 59, 106, 47, 74, 58, 70, 65, 53, 69, 72, 67, 65, 139, 69, 84, 73, 64, 83, 69, 34, 60, 49, 58, 57, 60, 76, 83, 62, 54, 61, 60, 47, 58, 64, 72, 58, 64, 59, 48, 65, 49, 72, 84, 55, 73, 95, 40, 68, 55, 56, 64, 55, 75, 71, 52, 61, 75, 68, 44, 55, 57, 72, 54, 66, 95, 84, 57, 75, 57, 85, 91, 48, 56, 75, 49, 61, 43, 68, 58, 67, 79, 60, 64, 87, 58, 54, 60, 61, 42, 65, 95, 59, 70, 56, 61, 76, 67, 57, 76, 71, 52, 87, 73, 61, 77, 65, 46, 80, 53, 61, 68, 92, 65, 66, 78, 65, 64, 53, 78, 100, 62, 55, 88, 45, 68, 70, 55, 67, 61, 65, 84, 87, 69, 52, 55, 55, 68, 70, 69, 96, 53, 50, 71, 77, 59, 47, 61, 49, 76, 83, 95, 65, 69, 59, 69, 65, 59, 63, 79, 63, 86, 64, 54, 50, 57, 89, 67, 64, 54, 84, 68, 66, 73, 70, 69, 59, 93, 79, 63, 62, 86, 92, 58, 38, 48, 42, 57, 82, 43, 61, 86, 60, 62, 59, 71, 48, 51, 66, 66, 63, 104, 74, 60, 66, 67, 52, 45, 91, 66, 53, 78, 70, 59, 67, 68, 77, 61, 49, 57, 69, 127, 80, 85, 56, 69, 29, 69, 76, 45, 47, 65, 74, 35, 63, 66, 71, 54, 63, 54, 74, 81, 61, 62, 37, 60, 64, 76, 47, 50, 77, 58, 42, 57, 68, 79, 51, 57, 73, 72, 54, 103, 80, 78, 86, 75, 39, 72, 73, 54, 65, 52, 65, 83, 70, 69, 44, 82, 71, 89, 53, 61, 74, 69, 55, 51, 65, 70, 133, 74, 61, 69, 82, 75, 52, 75, 68, 62, 49, 68, 63, 61, 76, 116, 68, 65, 61, 77, 65, 64, 76, 56, 64, 99, 52, 65, 81, 56, 55, 69, 104, 68, 86, 63, 79, 80, 61, 65, 66, 50, 70, 60, 53, 94, 59, 68, 55, 72, 69, 73, 63, 65, 68, 55, 65, 82, 79, 125, 68, 70, 53, 82, 70, 79, 71, 52, 59, 49, 58, 62, 59, 118, 70, 56, 56, 55, 72, 78, 76, 82, 73, 65, 61, 69, 74, 53, 61, 71, 80, 69, 58, 52, 77, 80, 76, 58, 54, 75, 78, 83, 106, 59, 53, 73, 78, 63, 61, 75, 62, 67, 31, 84, 69, 48, 54, 72, 50, 60, 52, 62, 120, 52, 71, 55, 68, 73, 71, 55, 73, 68, 85, 94, 54, 60, 99, 69, 57, 64, 77, 60, 76, 64, 54, 75, 57, 65, 63, 64, 84, 83, 49, 61, 73, 60, 60, 66, 77, 55, 62, 82, 71, 64, 62, 56, 76, 57, 75, 67, 61, 72, 57, 57, 45, 55, 52, 58, 89, 78, 83, 61, 70, 57, 72, 62, 54, 68, 60, 76, 56, 69, 64, 69, 71, 59, 61, 103, 62, 71, 51, 60, 81, 65, 57, 73, 64, 63, 72, 49, 76, 59, 73, 60, 56, 52, 98, 76, 80, 71, 54, 75, 61, 58, 61, 60, 67, 63, 71, 49, 60, 74, 73, 76, 79, 53, 50, 65, 72, 72, 48, 77, 42, 68, 61, 78, 66, 87, 72, 46, 53, 55, 83, 71, 60, 69, 64, 61, 61, 82, 60, 74, 53, 69, 67, 67, 60, 47, 72, 61, 55, 58, 55, 49, 77, 71, 78, 55, 72, 76, 43, 47, 108, 66, 61, 79, 59, 70, 66, 53, 85, 62, 59, 68, 59, 86, 69, 48, 57, 68, 53, 50, 63, 50, 41, 63, 85, 54, 65, 49, 60, 97, 65, 48, 53, 44, 58, 93, 78, 65, 80, 75, 88, 62, 68, 44, 69, 80, 47, 71, 70, 61, 62, 110, 66, 70, 62, 63, 65, 57, 72, 74, 63, 90, 79, 83, 61, 62, 53, 59, 57, 67, 67, 67, 59, 59, 60, 72, 72, 62, 73, 54, 51, 43, 64, 57, 74, 52, 58, 63, 54, 67, 70, 53, 62, 61, 55, 54, 67, 68, 71, 55, 53, 62, 74, 71, 65, 51, 94, 101, 58, 52, 65, 44, 53, 61, 71, 77, 52, 46, 56, 57, 64, 77, 67, 77, 87, 63, 56, 76, 55, 54, 55, 73, 87, 67, 59, 56, 80, 92, 67, 50, 61, 60, 63, 63, 68, 54, 69, 79, 65, 67, 46, 59, 54, 48, 62, 78, 83, 66, 63, 92, 68, 64, 83, 74, 73, 70, 58, 71, 44, 104, 76, 61, 57, 54, 100, 77, 55, 52, 53, 69, 46, 58, 66, 44, 57, 73, 45, 62, 43, 70, 67, 64, 74, 66, 59, 79, 59, 61, 62, 71, 63, 45, 66, 57, 68, 70, 77, 64, 56, 38, 70, 38, 55, 107, 68, 59, 64, 61, 73, 66, 63, 76, 56, 69, 80, 55, 76, 59, 47, 67, 73, 69, 69, 78, 82, 83, 82, 63, 77, 51, 72, 55, 85, 62, 53, 69, 77, 61, 65, 98, 81, 72, 65, 39, 54, 67, 78, 59, 43, 94, 65, 88, 66, 57, 61, 60, 59, 57, 51, 64, 45, 59, 58, 72, 59, 67, 52, 63, 51, 72, 65, 55, 68, 64, 57, 137, 53, 53, 52, 52, 74, 50, 75, 86, 72, 56, 57, 62, 72, 69, 58, 55, 65, 61, 60, 59, 54, 69, 104, 69, 55, 69, 44, 94, 65, 68, 96, 52, 60, 49, 87, 69, 73, 82, 60, 78, 62, 46, 72, 85, 71, 62, 69, 95, 97, 88, 76, 104, 68, 73, 66, 68, 62, 59, 133, 70, 66, 75, 57, 58, 61, 66, 75, 56, 73, 83, 85, 72, 63, 59, 48, 63, 67, 57, 40, 61, 70, 43, 64, 65, 60, 54, 74, 63, 54, 60, 48, 65, 62, 86, 92, 84, 67, 50, 65, 58, 51, 81, 69, 61, 61, 55, 62, 58, 55, 62, 74, 48, 42, 59, 84, 97, 67, 74, 77, 70, 77, 64, 59, 64, 54, 78, 81, 61, 94, 84, 58, 72, 65, 83, 63, 68, 69, 47, 63, 86, 67, 58, 62, 79, 81, 103, 71, 46, 62, 71, 57, 71, 76, 106, 88, 70, 62, 66, 52, 59, 44, 101, 82, 92, 68, 63, 69, 87, 77, 47, 75, 40, 98, 68, 68, 71, 61, 78, 111, 54, 55, 132, 42, 61, 62, 54, 60, 77, 55, 61, 68, 61, 88, 63, 94, 58, 77, 49, 54, 63, 57, 47, 57, 44, 60, 59, 64, 67, 67, 83, 44, 59, 61, 67, 81, 52, 55, 91, 67, 54, 39, 66, 65, 76, 68, 65, 98, 82, 60, 40, 55, 46, 65, 80, 67, 69, 57, 65, 54, 68, 72, 56, 43, 68, 55, 65, 60, 62, 46, 65, 60, 55, 71, 65, 47, 77, 59, 61, 71, 79, 58, 52, 72, 67, 44, 63, 61, 49, 49, 67, 56, 92, 56, 65, 61, 58, 55, 69, 64, 48, 60, 65, 68, 99, 65, 61, 48, 73, 84, 62, 59, 62, 68, 66, 63, 65, 59, 61, 84, 58, 51, 78, 66, 73, 66, 80, 92, 61, 57, 61, 76, 62, 62, 47, 58, 46, 67, 79, 52, 87, 68, 63, 56, 73, 65, 40, 51, 100, 54, 78, 65, 103, 56, 67, 63, 53, 80, 60, 72, 56, 51, 67, 43, 62, 83, 78, 64, 80, 63, 52, 58, 49, 50, 62, 77, 56, 74, 47, 57, 54, 64, 80, 77, 88, 81, 53, 63, 57, 46, 57, 55, 61, 72, 75, 54, 45, 87, 66, 60, 71, 61, 132, 66, 61, 72, 70, 82, 77, 70, 71, 69, 59, 84, 68, 76, 62, 57, 62, 71, 71, 63, 68, 70, 70, 70, 53, 67, 55, 75, 53, 69, 41, 59, 70, 56, 62, 85, 53, 56, 72, 74, 51, 72, 64, 60, 74, 89, 69, 68, 77, 77, 76, 82, 88, 36, 62, 44, 60, 53, 67, 54, 92, 72, 66, 62, 49, 55, 68, 65, 55, 55, 55, 61, 70, 49, 39, 54, 54, 63, 50, 73, 70, 53, 73, 76, 61, 63, 60, 65, 69, 73, 64, 72, 87, 55, 62, 74, 57, 66, 60, 58, 81, 60, 61, 65, 50, 72, 54, 70, 66, 86, 76, 79, 70, 58, 52, 58, 58, 64, 54, 61, 89, 53, 71, 56, 52, 65, 70, 82, 66, 68, 71, 58, 77, 66, 95, 63, 63, 74, 95, 63, 74, 36, 71, 61, 63, 70, 58, 58, 76, 75, 75, 71, 89, 61, 75, 84, 64, 58, 67, 58, 50, 64, 95, 56, 47, 66, 71, 58, 59, 49, 54, 60, 70, 59, 53, 84, 65, 72, 64, 65, 53, 68, 59, 52, 59, 59, 61, 41, 67, 41, 52, 51, 67, 67, 46, 80, 66, 82, 58, 72, 58, 67, 69, 48, 59, 76, 61, 74, 54, 72, 60, 69, 65, 53, 59, 66, 62, 53, 60, 71, 46, 77, 53, 83, 66, 42, 90, 46, 72, 58, 68, 58, 78, 81, 63, 49, 87, 74, 87, 66, 55, 68, 46, 77, 57, 53, 45, 72, 64, 56, 49, 55, 74, 82, 53, 63, 80, 65, 84, 86, 59, 62, 56, 55, 67, 66, 57, 85, 55, 57, 73, 51, 65, 65, 58, 62, 60, 57, 55, 75, 49, 62, 58, 61, 71, 79, 75, 60, 46, 66, 54, 68, 92, 68, 54, 61, 41, 68, 62, 56, 78, 61, 57, 78, 72, 64, 50, 58, 87, 76, 66, 63, 62, 49, 60, 59, 65, 63, 94, 82, 66, 50, 68, 45, 66, 65, 66, 60, 72, 57, 76, 45, 68, 64, 58, 75, 84, 42, 66, 77, 62, 56, 44, 53, 95, 51, 75, 62, 67, 77, 83, 61, 69, 64, 53, 64, 89, 62, 84, 69, 79, 67, 66, 61, 60, 58, 65, 48, 61, 55, 51, 61, 52, 77, 72, 75, 72, 112, 69, 53, 76, 65, 60, 62, 83, 59, 64, 73, 56, 69, 50, 50, 70, 75, 67, 74, 60, 72, 82, 40, 42, 73, 51, 52, 50, 56, 60, 55, 84, 71, 59, 45, 67, 61, 59, 78, 54, 70, 90, 65, 60, 63, 63, 81, 55, 80, 75, 63, 64, 65, 53, 86, 78, 56, 60, 58, 71, 57, 57, 51, 84, 55, 73, 68, 65, 67, 48, 70, 75, 65, 63, 59, 61, 60, 73, 63, 45, 58, 60, 66, 69, 68, 48, 72, 84, 61, 59, 55, 70, 67, 52, 66, 65, 69, 75, 58, 56, 88, 43, 71, 74, 62, 63, 51, 61, 59, 70, 87, 56, 65, 79, 61, 69, 57, 72, 65, 89, 64, 53, 75, 65, 59, 50, 110, 78, 71, 67, 58, 70, 89, 51, 74, 64, 76, 74, 69, 52, 60, 66, 100, 58, 54, 66, 40, 73, 71, 68, 41, 48, 58, 80, 67, 91, 55, 55, 74, 63, 58, 58, 60, 102, 55, 74, 67, 58, 52, 65, 65, 63, 63, 67, 42, 65, 58, 72, 59, 61, 47, 59, 57, 66, 77, 59, 61, 58, 66, 92, 49, 66, 62, 64, 134, 66, 67, 63, 60, 85, 61, 49, 71, 52, 78, 53, 83, 71, 55, 70, 56, 97, 78, 95, 86, 64, 53, 60, 72, 89, 160, 66, 68, 57, 83, 83, 108, 60, 78, 86, 65, 51, 56, 69, 63, 65, 71, 68, 70, 84, 50, 52, 55, 68, 64, 64, 66, 62, 75, 51, 64, 107, 56, 72, 69, 64, 66, 80, 51, 65, 56, 48, 67, 56, 64, 95, 54, 61, 55, 64, 55, 74, 50, 62, 63, 63, 65, 65, 74, 69, 54, 70, 51, 93, 54, 68, 62, 67, 59, 56, 66, 73, 55, 65, 83, 56, 64, 59, 57, 52, 77, 58, 78, 64, 60, 51, 64, 80, 81, 67, 61, 56, 60, 91, 93, 55, 53, 70, 49, 51, 56, 66, 49, 58, 57, 56, 59, 59, 43, 76, 56, 71, 93, 107, 44, 70, 58, 68, 62, 67, 77, 50, 60, 77, 46, 58, 48, 55, 68, 59, 82, 75, 62, 68, 60, 94, 77, 72, 81, 48, 71, 62, 52, 45, 51, 88, 78, 96, 57, 55, 62, 57, 64, 63, 52, 51, 72, 37, 53, 53, 69, 75, 76, 70, 51, 59, 64, 63, 69, 73, 99, 52, 74, 48, 69, 64, 68, 62, 92, 62, 40, 65, 64, 72, 49, 87, 92, 49, 57, 56, 76, 53, 71, 75, 80, 81, 69, 79, 56, 61, 95, 64, 79, 72, 80, 83, 80, 72, 60, 53, 64, 55, 66, 75, 53, 75, 57, 59, 76, 57, 112, 82, 59, 64, 78, 57, 100, 75, 58, 64, 68, 67, 78, 53, 77, 61, 55, 55, 64, 68, 74, 46, 53, 63, 67, 99, 73, 65, 51, 56, 54, 89, 57, 69, 53, 55, 76, 43, 64, 61, 77, 64, 88, 47, 60, 42, 72, 54, 53, 68, 55, 61, 76, 86, 59, 72, 65, 64, 52, 56, 69, 120, 79, 57, 108, 64, 59, 68, 50, 79, 61, 47, 68, 70, 65, 55, 51, 47, 77, 72, 52, 51, 47, 51, 54, 67, 63, 50, 76, 65, 63, 53, 62, 58, 60, 109, 58, 95, 75, 68, 69, 84, 50, 61, 116, 66, 97, 64, 57, 86, 64, 57, 60, 52, 109, 70, 81, 68, 63, 52, 48, 70, 76, 77, 55, 58, 56, 45, 72, 67, 67, 55, 53, 59, 53, 57, 63, 65, 60, 73, 38, 81, 60, 72, 76, 66, 82, 63, 56, 82, 64, 130, 60, 74, 72, 51, 54, 70, 51, 71, 54, 58, 46, 58, 53, 60, 59, 67, 65, 73, 70, 56, 70, 61, 46, 48, 57, 54, 83, 56, 60, 67, 53, 83, 116, 65, 60, 82, 93, 89, 58, 48, 79, 53, 68, 74, 55, 100, 82, 56, 80, 72, 47, 67, 94, 41, 60, 66, 72, 62, 57, 59, 56, 46, 66, 60, 52, 56, 60, 91, 75, 59, 53, 71, 55, 51, 75, 48, 49, 59, 59, 58, 69, 52, 58, 67, 78, 69, 68, 72, 55, 80, 59, 67, 51, 65, 59, 118, 68, 50, 69, 64, 65, 66, 85, 62, 87, 74, 44, 83, 70, 61, 51, 97, 62, 70, 68, 91, 55, 56, 68, 84, 73, 54, 54, 79, 86, 149, 80, 74, 51, 62, 83, 64, 43, 79, 78, 49, 95, 66, 78, 67, 62, 56, 61, 71, 58, 65, 50, 78, 58, 83, 53, 53, 70, 53, 73, 55, 42, 67, 52, 60, 60, 53, 80, 66, 59, 52, 53, 51, 98, 58, 72, 71, 59, 76, 64, 83, 59, 62, 69, 82, 88, 69, 84, 83, 78, 52, 54, 56, 70, 45, 56, 64, 51, 44, 53, 68, 67, 53, 47, 65, 64, 74, 66, 47, 71, 109, 84, 69, 55, 69, 65, 94, 43, 72, 67, 65, 79, 77, 55, 65, 69, 61, 53, 71, 52, 120, 64, 59, 56, 55, 55, 50, 84, 61, 87, 62, 66, 47, 90, 46, 54, 69, 60, 60, 70, 70, 56, 60, 55, 59, 82, 55, 80, 60, 52, 89, 82, 63, 79, 67, 53, 60, 67, 72, 50, 91, 56, 65, 88, 77, 60, 61, 83, 89, 62, 61, 61, 57, 137, 79, 62, 57, 71, 69, 68, 55, 55, 63, 56, 79, 68, 71, 66, 65, 53, 52, 67, 118, 62, 69, 33, 50, 50, 115, 62, 61, 60, 67, 63, 66, 47, 62, 63, 100, 68, 56, 57, 44, 54, 60, 55, 55, 80, 63, 64, 60, 61, 62, 52, 69, 66, 62, 86, 71, 49, 86, 66, 55, 56, 61, 74, 48, 56, 75, 74, 63, 52, 56, 63, 56, 114, 65, 57, 45, 43, 64, 68, 75, 66, 62, 58, 66, 68, 56, 60, 54, 61, 67, 74, 78, 60, 72, 44, 59, 97, 74, 61, 120, 87, 103, 63, 57, 58, 73, 73, 61, 67, 59, 56, 88, 43, 60, 38, 59, 58, 70, 100, 84, 73, 45, 75, 62, 76, 55, 48, 61, 50, 53, 65, 80, 65, 73, 71, 53, 43, 53, 53, 62, 79, 67, 49, 56, 55, 51, 33, 51, 71, 49, 72, 64, 67, 62, 46, 74, 62, 69, 60, 64, 63, 66, 80, 63, 68, 50, 55, 113, 65, 51, 65, 64, 53, 116, 76, 63, 113, 61, 51, 60, 40, 150, 61, 80, 54, 40, 53, 53, 50, 87, 69, 49, 84, 57, 61, 70, 99, 59, 82, 63, 66, 66, 60, 70, 85, 64, 70, 68, 75, 67, 70, 55, 35, 31, 65, 80, 52, 47, 71, 62, 60, 78, 53, 47, 63, 53, 126, 88, 50, 59, 57, 68, 66, 87, 88, 47, 72, 60, 63, 65, 56, 55, 71, 83, 76, 59, 68, 70, 74, 62, 85, 58, 66, 78, 72, 47, 66, 53, 66, 46, 49, 60, 43, 39, 71, 87, 80, 48, 44, 30, 69, 61, 83, 68, 89, 59, 57, 98, 68, 51, 86, 47, 50, 45, 66, 63, 58, 75, 63, 59, 47, 51, 50, 54, 54, 61, 77, 55, 101, 88, 65, 68, 55, 67, 62, 89, 54, 90, 70, 36, 50, 73, 75, 52, 72, 57, 50, 66, 46, 99, 61, 56, 63, 67, 75, 62, 52, 55, 61, 71, 59, 75, 67, 86, 95, 91, 74, 78, 60, 71, 78, 57, 62, 61, 70, 66, 73, 53, 111, 69, 72, 44, 39, 38, 84, 76, 90, 40, 86, 69, 54, 59, 69, 59, 54, 88, 40, 76, 62, 48, 68, 59, 74, 72, 71, 61, 70, 83, 54, 73, 86, 61, 70, 97, 68, 75, 81, 62, 51, 65, 51, 56, 63, 111, 67, 66, 62, 73, 77, 110, 86, 65, 59, 52, 77, 68, 75, 47, 53, 66, 77, 54, 64, 57, 55, 56, 56, 104, 56, 74, 73, 51, 46, 79, 52, 43, 64, 94, 58, 81, 61, 60, 63, 80, 83, 67, 89, 52, 52, 74, 68, 43, 67, 41, 65, 71, 59, 60, 63, 51, 64, 69, 59, 93, 45, 60, 53, 63, 68, 74, 51, 53, 54, 79, 66, 48, 59, 62, 78, 51, 72, 75, 56, 47, 60, 117, 53, 83, 59, 54, 67, 108, 53, 92, 64, 59, 70, 62, 87, 53, 61, 70, 60, 70, 66, 66, 40, 67, 55, 76, 68, 66, 83, 81, 67, 59, 56, 51, 73, 57, 64, 35, 51, 52, 64, 43, 51, 61, 65, 136, 66, 79, 73, 88, 73, 41, 65, 72, 56, 90, 71, 63, 36, 64, 91, 107, 84, 68, 67, 58, 66, 68, 61, 52, 76, 72, 64, 73, 62, 84, 52, 77, 64, 70, 61, 50, 56, 91, 62, 64, 75, 61, 89, 49, 76, 79, 56, 63, 61, 49, 57, 65, 59, 50, 70, 77, 102, 99, 63, 95, 64, 60, 96, 68, 55, 85, 88, 53, 77, 87, 69, 85, 102, 74, 64, 71, 68, 63, 70, 47, 57, 73, 136, 65, 66, 93, 96, 76, 61, 54, 78, 57, 62, 105, 74, 71, 70, 84, 80, 66, 55, 57, 73, 73, 52, 109, 34, 51, 36, 69, 72, 67, 80, 89, 53, 63, 70, 69, 56, 58, 69, 113, 73, 56, 41, 60, 90, 54, 50, 44, 116, 67, 60, 55, 94, 113, 63, 50, 69, 52, 74, 64, 65, 78, 48, 65, 64, 65, 69, 56, 57, 53, 56, 71, 73, 75, 95, 76, 61, 45, 95, 67, 60, 59, 78, 72, 88, 61, 71, 67, 67, 70, 69, 69, 43, 57, 60, 104, 62, 66, 89, 55, 78, 73, 65, 59, 71, 84, 55, 58, 71, 49, 54, 64, 82, 79, 49, 51, 66, 56, 57, 67, 62, 86, 57, 66, 90, 50, 55, 57, 68, 88, 65, 73, 85, 59, 48, 67, 106, 60, 54, 76, 95, 55, 78, 61, 53, 53, 57, 64, 70, 59, 65, 64, 51, 57, 59, 65, 74, 44, 55, 54, 67, 72, 51, 57, 61, 39, 75, 58, 62, 55, 64, 72, 54, 65, 50, 52, 61, 64, 68, 88, 60, 52, 53, 83, 40, 60, 88, 73, 70, 66, 89, 57, 58, 107, 79, 56, 52, 50, 100, 73, 52, 58, 44, 71, 57, 56, 84, 52, 84, 42, 67, 60, 48, 62, 51, 56, 67, 65, 62, 57, 48, 54, 47, 79, 65, 93, 76, 63, 71, 59, 93, 71, 58, 85, 76, 82, 79, 42, 74, 46, 77, 55, 95, 54, 56, 51, 58, 74, 41, 63, 74, 70, 44, 85, 119, 52, 65, 63, 78, 62, 61, 88, 67, 55, 116, 87, 56, 70, 65, 95, 39, 60, 59, 61, 85, 70, 63, 69, 45, 55, 54, 70, 63, 52, 54, 89, 51, 53, 67, 86, 48, 82, 36, 50, 74, 59, 59, 68, 108, 93, 64, 69, 56, 56, 68, 61, 76, 66, 45, 75, 53, 67, 59, 69, 152, 58, 60, 53, 61, 56, 60, 61, 71, 64, 57, 54, 70, 50, 60, 76, 80, 65, 73, 48, 53, 64, 73, 91, 66, 73, 61, 81, 46, 75, 74, 50, 86, 91, 65, 61, 58, 76, 66, 56, 58, 61, 76, 71, 54, 92, 63, 61, 85, 60, 85, 81, 56, 52, 46, 57, 93, 69, 49, 75, 56, 53, 54, 53, 67, 67, 71, 68, 50, 69, 65, 69, 47, 87, 76, 56, 61, 86, 55, 50, 95, 58, 56, 46, 44, 63, 58, 59, 89, 79, 54, 78, 78, 62, 83, 64, 60, 62, 55, 55, 45, 56, 78, 56, 69, 85, 68, 86, 77, 57, 53, 70, 57, 56, 48, 44, 104, 45, 100, 79, 39, 67, 65, 71, 56, 41, 54, 67, 46, 48, 76, 76, 56, 64, 51, 53, 53, 56, 71, 79, 56, 68, 53, 58, 52, 74, 66, 73, 82, 67, 61, 60, 57, 95, 66, 50, 56, 63, 50, 50, 81, 45, 78, 62, 70, 60, 57, 55, 63, 49, 59, 84, 70, 85, 41, 59, 64, 50, 56, 76, 57, 64, 65, 53, 71, 45, 50, 59, 44, 59, 48, 141, 55, 75, 57, 73, 45, 100, 58, 39, 59, 62, 57, 63, 70, 89, 65, 28, 65, 72, 88, 58, 52, 55, 64, 56, 67, 52, 51, 73, 79, 56, 100, 81, 133, 55, 45, 78, 68, 49, 42, 99, 54, 49, 67, 70, 46, 66, 64, 56, 51, 56, 65, 54, 63, 80, 92, 58, 79, 51, 90, 35, 53, 69, 106, 41, 63, 68, 80, 63, 59, 50, 52, 65, 78, 69, 66, 58, 53, 66, 61, 46, 70, 65, 44, 84, 58, 64, 55, 67, 61, 42, 75, 43, 92, 81, 72, 71, 74, 57, 85, 66, 62, 84, 70, 47, 70, 62, 96, 54, 90, 88, 57, 62, 85, 77, 63, 92, 52, 51, 69, 60, 57, 122, 63, 72, 67, 78, 81, 50, 56, 76, 62, 56, 66, 68, 71, 42, 83, 101, 49, 54, 66, 91, 67, 64, 59, 45, 63, 56, 64, 59, 87, 77, 68, 62, 70, 45, 69, 84, 52, 42, 65, 66, 72, 68, 55, 107, 83, 71, 40, 45, 53, 76, 55, 67, 71, 69, 67, 65, 92, 75, 60, 70, 71, 75, 131, 84, 164, 50, 62, 57, 46, 45, 66, 67, 44, 62, 77, 46, 70, 53, 93, 43, 82, 81, 57, 81, 62, 53, 64, 65, 66, 78, 44, 82, 71, 64, 42, 40, 78, 65, 101, 93, 50, 32, 89, 59, 70, 89, 64, 61, 64, 70, 71, 64, 42, 57, 57, 52, 55, 68, 39, 92, 51, 63, 69, 68, 65, 63, 71, 50, 92, 90, 62, 64, 41, 54, 53, 74, 70, 68, 59, 58, 71, 54, 66, 63, 51, 90, 101, 53, 93, 64, 78, 58, 59, 74, 89, 89, 35, 65, 84, 85, 48, 60, 54, 65, 63, 56, 60, 53, 62, 50, 115, 72, 62, 65, 65, 51, 63, 45, 57, 64, 100, 73, 94, 63, 70, 73, 47, 70, 57, 68, 80, 65, 57, 53, 64, 63, 69, 77, 64, 101, 63, 64, 61, 67, 59, 92, 70, 74, 67, 51, 64, 65, 78, 62, 70, 71, 53, 46, 55, 77, 69, 42, 56, 74, 78, 84, 57, 87, 72, 69, 45, 67, 57, 61, 52, 46, 86, 61, 83, 48, 69, 79, 66, 59, 67, 71, 71, 67, 52, 75, 42, 71, 82, 71, 64, 65, 60, 57, 37, 54, 41, 78, 60, 112, 56, 85, 61, 52, 75, 55, 60, 60, 82, 48, 74, 51, 56, 74, 68, 74, 52, 46, 80, 36, 70, 65, 80, 67, 80, 81, 61, 58, 61, 70, 68, 64, 71, 63, 61, 66, 80, 67, 82, 97, 72, 98, 79, 74, 76, 60, 48, 63, 72, 94, 54, 83, 65, 81, 53, 55, 56, 61, 53, 63, 77, 42, 78, 98, 73, 59, 61, 70, 53, 93, 98, 72, 72, 74, 56, 116, 60, 55, 97, 65, 47, 42, 83, 58, 90, 68, 76, 82, 85, 76, 67, 69, 73, 71, 61, 60, 60, 66, 57, 66, 52, 94, 65, 63, 70, 61, 64, 81, 47, 54, 75, 57, 47, 45, 61, 72, 58, 55, 59, 94, 67, 59, 71, 52, 85, 54, 45, 59, 64, 34, 72, 100, 65, 89, 71, 88, 109, 76, 56, 57, 54, 72, 59, 67, 56, 72, 74, 66, 62, 77, 85, 41, 61, 57, 67, 55, 69, 71, 61, 73, 57, 50, 73, 57, 69, 95, 44, 63, 77, 78, 97, 64, 38, 55, 50, 53, 89, 60, 54, 109, 67, 69, 67, 55, 120, 57, 78, 51, 80, 69, 65, 53, 67, 59, 64, 77, 68, 64, 62, 60, 94, 88, 69, 75, 57, 75, 65, 83, 63, 71, 77, 70, 49, 86, 72, 151, 58, 62, 83, 57, 58, 57, 73, 55, 57, 78, 52, 58, 65, 53, 63, 77, 81, 62, 55, 61, 47, 83, 67, 52, 55, 53, 72, 76, 49, 78, 57, 70, 73, 60, 68, 65, 81, 79, 53, 79, 77, 55, 76, 57, 69, 56, 80, 68, 85, 59, 67, 46, 58, 61, 56, 66, 58, 48, 60, 66, 46, 64, 88, 59, 59, 69, 52, 58, 58, 47, 53, 52, 45, 81, 72, 100, 86, 64, 81, 66, 67, 54, 56, 67, 53, 75, 64, 92, 58, 54, 70, 63, 65, 53, 79, 65, 73, 55, 67, 68, 55, 69, 70, 73, 47, 46, 61, 57, 60, 105, 85, 62, 42, 48, 48, 73, 130, 55, 56, 66, 72, 54, 77, 94, 73, 55, 43, 51, 77, 97, 67, 88, 45, 75, 56, 88, 46, 55, 67, 85, 59, 101, 49, 77, 69, 70, 72, 70, 59, 61, 55, 59, 47, 53, 68, 66, 57, 73, 90, 85, 51, 60, 66, 58, 73, 67, 54, 56, 27, 68, 73, 90, 78, 43, 46, 71, 47, 70, 62, 58, 90, 66, 65, 95, 62, 48, 65, 68, 50, 41, 101, 52, 50, 60, 51, 77, 53, 72, 57, 51, 59, 85, 67, 57, 67, 90, 59, 66, 57, 76, 47, 77, 73, 54, 70, 70, 53, 59, 66, 60, 73, 69, 54, 66, 73, 68, 62, 47, 58, 55, 69, 66, 70, 65, 62, 63, 51, 76, 55, 72, 88, 41, 57, 87, 71, 53, 72, 60, 60, 67, 86, 77, 57, 50, 96, 62, 75, 83, 45, 63, 70, 37, 66, 67, 47, 69, 85, 75, 69, 59, 68, 68, 66, 97, 69, 65, 71, 44, 82, 64, 67, 71, 105, 63, 94, 64, 91, 59, 58, 66, 63, 42, 61, 49, 60, 73, 55, 65, 81, 71, 54, 69, 64, 76, 50, 57, 61, 66, 56, 66, 61, 53, 43, 49, 70, 52, 84, 58, 57, 65, 68, 63, 58, 104, 57, 51, 50, 64, 56, 78, 75, 38, 61, 58, 52, 78, 51, 66, 66, 53, 67, 68, 94, 40, 55, 55, 46, 75, 39, 63, 68, 65, 61, 52, 71, 66, 65, 52, 53, 79, 58, 68, 53, 80, 65, 55, 64, 63, 74, 63, 67, 70, 66, 60, 68, 82, 72, 73, 68, 76, 53, 58, 56, 45, 81, 55, 63, 60, 61, 55, 60, 64, 72, 46, 63, 62, 67, 76, 69, 79, 79, 70, 77, 116, 65, 31, 48, 68, 80, 62, 65, 65, 65, 59, 83, 79, 64, 49, 56, 71, 67, 88, 71, 42, 60, 65, 76, 59, 83, 59, 61, 56, 69, 69, 62, 74, 47, 66, 68, 60, 92, 72, 59, 66, 51, 99, 68, 74, 55, 53, 80, 43, 36, 66, 77, 86, 68, 47, 60, 51, 52, 71, 69, 77, 78, 65, 59, 63, 80, 75, 65, 63, 68, 64, 54, 52, 49, 63, 47, 63, 70, 117, 58, 42, 64, 61, 55, 51, 71, 61, 45, 64, 50, 39, 80, 79, 58, 51, 85, 72, 69, 60, 66, 61, 75, 58, 44, 64, 87, 82, 68, 67, 87, 58, 84, 54, 53, 83, 59, 64, 56, 65, 66, 63, 82, 66, 48, 80, 97, 55, 71, 92, 67, 75, 79, 63, 73, 70, 54, 58, 96, 58, 65, 42, 62, 56, 49, 64, 74, 90, 86, 71, 42, 66, 63, 100, 58, 55, 59, 90, 39, 56, 57, 75, 63, 63, 69, 64, 90, 54, 69, 58, 65, 63, 63, 89, 85, 62, 51, 59, 117, 111, 59, 53, 69, 134, 60, 48, 39, 78, 101, 45, 72, 46, 60, 81, 52, 65, 85, 82, 66, 56, 63, 83, 91, 56, 99, 71, 67, 73, 66, 80, 58, 119, 70, 67, 64, 64, 57, 57, 59, 47, 102, 68, 70, 86, 68, 60, 60, 51, 63, 57, 61, 57, 80, 69, 66, 62, 66, 74, 86, 44, 77, 86, 50, 68, 75, 60, 56, 200, 69, 58, 57, 49, 60, 50, 65, 47, 63, 58, 75, 68, 61, 57, 58, 51, 60, 61, 66, 64, 76, 73, 68, 43, 89, 65, 69, 69, 73, 65, 68, 62, 76, 59, 59, 65, 64, 70, 53, 96, 59, 72, 70, 67, 62, 67, 73, 44, 42, 54, 66, 61, 72, 62, 77, 88, 74, 113, 66, 78, 58, 69, 51, 60, 86, 49, 62, 59, 54, 77, 55, 56, 97, 39, 48, 46, 85, 80, 65, 78, 71, 69, 63, 54, 85, 69, 81, 57, 75, 82, 55, 86, 55, 58, 63, 60, 53, 71, 62, 76, 50, 46, 69, 78, 94, 58, 73, 61, 55, 70, 87, 68, 79, 86, 68, 63, 82, 84, 69, 88, 73, 76, 59, 72, 96, 55, 53, 84, 61, 61, 68, 94, 56, 67, 65, 77, 66, 53, 59, 41, 49, 62, 92, 70, 69, 69, 55, 63, 56, 55, 75, 42, 64, 72, 48, 94, 58, 68, 49, 45, 83, 66, 52, 77, 64, 54, 66, 72, 72, 65, 48, 72, 64, 72, 64, 44, 73, 63, 45, 51, 45, 75, 83, 93, 60, 56, 68, 52, 72, 49, 59, 65, 63, 61, 64, 61, 61, 65, 55, 80, 77, 68, 40, 63, 58, 77, 62, 53, 109, 59, 61, 58, 82, 59, 125, 68, 63, 70, 81, 64, 74, 53, 62, 61, 64, 75, 67, 90, 69, 70, 68, 79, 65, 49, 63, 88, 66, 72, 74, 64, 74, 68, 68, 70, 60, 65, 66, 66, 58, 67, 118, 50, 65, 53, 57, 59, 76, 53, 56, 64, 63, 58, 64, 65, 65, 81, 54, 43, 66, 58, 58, 69, 62, 63, 80, 67, 57, 61, 94, 71, 66, 153, 58, 50, 59, 46, 67, 67, 53, 71, 80, 69, 49, 71, 87, 64, 65, 48, 47, 70, 67, 76, 72, 70, 67, 70, 61, 81, 62, 57, 76, 67, 62, 54, 69, 72, 65, 78, 47, 71, 76, 61, 47, 59, 57, 79, 75, 55, 85, 66, 61, 60, 50, 55, 59, 56, 68, 75, 69, 63, 64, 58, 65, 71, 57, 50, 53, 68, 64, 79, 57, 61, 49, 78, 72, 64, 67, 78, 61, 50, 66, 75, 63, 67, 94, 71, 68, 53, 65, 51, 64, 64, 56, 72, 63, 49, 66, 64, 68, 71, 66, 65, 55, 70, 71, 57, 62, 65, 66, 61, 57, 66, 64, 53, 46, 57, 57, 59, 80, 54, 103, 75, 50, 57, 56, 69, 108, 74, 58, 64, 68, 59, 62, 55, 87, 69, 55, 51, 59, 78, 54, 53, 81, 84, 66, 73, 54, 77, 68, 63, 69, 68, 66, 54, 75, 58, 73, 56, 91, 61, 66, 63, 75, 67, 54, 72, 74, 55, 61, 55, 72, 59, 58, 58, 73, 75, 58, 50, 69, 44, 56, 67, 136, 52, 89, 72, 56, 83, 61, 74, 89, 65, 70, 42, 42, 51, 54, 61, 66, 72, 79, 73, 74, 55, 66, 86, 68, 53, 74, 58, 56, 65, 62, 69, 85, 52, 46, 79, 70, 79, 60, 62, 70, 70, 65, 56, 57, 64, 81, 74, 66, 56, 55, 61, 61, 70, 93, 62, 57, 66, 60, 65, 64, 63, 66, 88, 68, 72, 68, 67, 58, 78, 62, 61, 56, 72, 59, 80, 62, 61, 63, 80, 66, 70, 62, 68, 74, 64, 72, 55, 69, 54, 68, 56, 69, 58, 57, 71, 55, 76, 62, 60, 51, 55, 82, 69, 60, 61, 61, 60, 67, 94, 67, 58, 91, 51, 57, 64, 74, 61, 68, 50, 67, 72, 70, 60, 63, 86, 62, 82, 65, 58, 77, 73, 47, 59, 78, 47, 56, 80, 76, 56, 69, 62, 64, 54, 56, 68, 68, 108, 70, 80, 66, 55, 54, 69, 60, 65, 66, 66, 62, 60, 63, 72, 72, 68, 78, 61, 59, 52, 60, 66, 63, 55, 63, 62, 66, 75, 62, 72, 64, 70, 61, 69, 68, 79, 71, 73, 63, 55, 69, 54, 60, 68, 35, 56, 66, 80, 73, 71, 61, 62, 72, 67, 67, 61, 54, 60, 67, 54, 62, 76, 62, 79, 67, 72, 71, 89, 66, 55, 51, 61, 69, 70, 71, 54, 66, 73, 67, 71, 68, 56, 60, 58, 52, 64, 87, 89, 79, 54, 59, 60, 63, 46, 72, 64, 104, 59, 94, 57, 55, 81, 68, 68, 55, 65, 59, 77, 59, 79, 75, 57, 69, 52, 125, 50, 101, 41, 63, 63, 69, 56, 69, 80, 74, 59, 65, 68, 56, 57, 51, 60, 76, 68, 63, 79, 62, 93, 56, 72, 59, 57, 57, 75, 74, 62, 63, 69, 68, 79, 58, 50, 59, 70, 52, 67, 58, 68, 57, 66, 58, 57, 68, 61, 66, 73, 83, 77, 76, 56, 63, 68, 58, 71, 59, 64, 63, 68, 50, 66, 64, 77, 71, 60, 54, 56, 58, 67, 63, 68, 53, 55, 61, 54, 70, 67, 95, 70, 69, 57, 74, 71, 74, 86, 62, 145, 51, 65, 63, 72, 67, 75, 77, 64, 64, 61, 74, 69, 62, 67, 81, 69, 58, 76, 71, 58, 82, 44, 60, 65, 57, 66, 68, 54, 61, 67, 90, 75, 64, 58, 57, 54, 49, 62, 58, 65, 83, 51, 61, 61, 60, 76, 51, 81, 59, 68, 67, 49, 65, 64, 65, 62, 66, 75, 66, 44, 67, 62, 65, 88, 53, 69, 81, 60, 61, 54, 56, 71, 72, 60, 67, 87, 54, 57, 63, 62, 68, 57, 87, 55, 62, 65, 66, 64, 46, 55, 76, 52, 65, 65, 61, 49, 66, 101, 65, 53, 56, 55, 71, 62, 56, 102, 86, 60, 80, 63, 58, 65, 56, 54, 76, 52, 60, 68, 55, 58, 59, 103, 62, 67, 61, 59, 67, 60, 64, 66, 51, 47, 70, 52, 69, 70, 57, 49, 62, 59, 57, 68, 70, 74, 55, 85, 63, 84, 72, 66, 56, 58, 63, 52, 87, 58, 60, 69, 75, 56, 75, 71, 68, 71, 57, 54, 78, 58, 68, 64, 64, 62, 59, 65, 77, 61, 83, 62, 102, 60, 65, 63, 63, 56, 52, 70, 66, 62, 59, 52, 68, 62, 87, 51, 58, 71, 55, 57, 57, 50, 52, 52, 91, 63, 59, 69, 57, 61, 71, 64, 47, 69, 54, 68, 72, 57, 71, 70, 83, 59, 69, 54, 48, 68, 62, 64, 50, 58, 78, 58, 66, 68, 67, 53, 62, 60, 59, 80, 61, 59, 55, 53, 50, 66, 63, 71, 71, 69, 67, 76, 52, 69, 59, 55, 53, 56, 60, 65, 54, 58, 68, 63, 50, 58, 72, 45, 125, 56, 70, 47, 56, 83, 73, 61, 61, 56, 67, 60, 73, 61, 58, 65, 64, 57, 62, 75, 65, 57, 87, 42, 72, 81, 52, 43, 66, 69, 69, 55, 43, 82, 62, 61, 100, 47, 80, 67, 74, 61, 58, 109, 85, 91, 70, 68, 59, 63, 52, 70, 66, 72, 52, 73, 64, 56, 75, 52, 60, 67, 64, 69, 56, 53, 67, 111, 71, 70, 71, 86, 60, 89, 89, 63, 60, 42, 55, 65, 65, 69, 63, 73, 64, 60, 68, 75, 58, 94, 45, 85, 56, 73, 42, 68, 63, 78, 78, 78, 66, 73, 65, 64, 67, 56, 76, 73, 66, 72, 62, 61, 57, 61, 46, 72, 60, 81, 100, 74, 98, 64, 55, 64, 72, 74, 67, 68, 67, 74, 89, 79, 51, 75, 57, 67, 69, 68, 52, 56, 50, 79, 69, 48, 70, 75, 61, 71, 52, 53, 81, 64, 66, 83, 79, 57, 78, 66, 60, 60, 57, 96, 77, 75, 91, 48, 72, 97, 82, 50, 71, 61, 55, 74, 62, 50, 61, 62, 81, 78, 77, 48, 60, 44, 44, 78, 49, 62, 57, 85, 69, 66, 144, 64, 53, 62, 77, 61, 76, 77, 64, 69, 54, 56, 52, 64, 82, 55, 84, 64, 60, 77, 92, 58, 75, 68, 80, 105, 48, 76, 96, 50, 58, 148, 49, 61, 66, 78, 63, 82, 50, 55, 71, 62, 65, 52, 85, 73, 73, 62, 71, 74, 64, 71, 62, 61, 59, 56, 72, 75, 87, 62, 70, 77, 48, 52, 51, 92, 71, 64, 68, 65, 138, 67, 70, 79, 77, 64, 50, 52, 58, 64, 76, 55, 57, 60, 66, 58, 58, 55, 52, 57, 72, 76, 69, 55, 69, 65, 74, 46, 59, 50, 53, 71, 60, 52, 60, 68, 54, 55, 63, 43, 61, 93, 64, 80, 117, 73, 58, 76, 67, 53, 61, 53, 66, 54, 64, 77, 47, 65, 69, 77, 73, 60, 82, 65, 63, 60, 69, 40, 65, 67, 50, 76, 50, 62, 56, 65, 68, 64, 61, 62, 85, 55, 69, 59, 67, 92, 66, 59, 62, 61, 57, 58, 52, 62, 69, 80, 72, 86, 45, 96, 60, 55, 65, 101, 92, 62, 70, 69, 78, 73, 72, 59, 81, 57, 54, 76, 92, 61, 68, 57, 67, 73, 68, 59, 50, 59, 58, 60, 44, 73, 83, 63, 48, 60, 55, 68, 81, 53, 57, 44, 65, 57, 116, 67, 60, 72, 48, 73, 71, 65, 61, 79, 73, 52, 47, 65, 62, 55, 66, 88, 66, 69, 73, 57, 76, 66, 58, 68, 76, 79, 57, 81, 93, 53, 80, 59, 70, 64, 85, 75, 66, 60, 73, 65, 58, 60, 49, 72, 71, 66, 58, 59, 73, 58, 57, 77, 62, 57, 79, 69, 69, 69, 66, 53, 58, 61, 82, 48, 59, 56, 63, 56, 60, 58, 74, 59, 59, 87, 73, 66, 56, 57, 71, 65, 56, 78, 59, 48, 70, 70, 51, 88, 73, 52, 67, 77, 72, 34, 72, 50, 58, 74, 94, 87, 54, 61, 46, 55, 77, 46, 48, 69, 74, 97, 78, 67, 62, 69, 32, 71, 63, 64, 50, 55, 64, 67, 42, 91, 68, 59, 80, 46, 63, 58, 77, 58, 63, 53, 70, 52, 55, 54, 62, 90, 63, 65, 64, 67, 61, 142, 67, 61, 58, 54, 70, 61, 57, 48, 56, 63, 49, 62, 71, 65, 60, 54, 60, 65, 54, 51, 74, 51, 54, 73, 74, 74, 75, 72, 76, 42, 74, 57, 80, 61, 53, 95, 62, 64, 55, 75, 64, 52, 53, 73, 89, 58, 66, 83, 60, 54, 61, 82, 60, 52, 54, 65, 63, 68, 77, 66, 65, 43, 67, 65, 42, 75, 78, 69, 93, 63, 69, 61, 57, 89, 58, 75, 66, 76, 64, 53, 59, 79, 80, 68, 51, 78, 78, 73, 68, 86, 47, 74, 49, 66, 54, 57, 103, 69, 86, 69, 49, 65, 68, 53, 81, 70, 63, 68, 63, 74, 70, 63, 57, 43, 83, 67, 50, 63, 68, 65, 62, 59, 52, 51, 48, 58, 61, 68, 73, 91, 58, 62, 59, 58, 63, 72, 85, 66, 59, 110, 82, 59, 68, 77, 57, 66, 56, 76, 82, 59, 61, 70, 58, 66, 54, 56, 63, 42, 55, 58, 58, 97, 65, 70, 59, 68, 62, 43, 61, 67, 55, 64, 67, 68, 70, 66, 57, 71, 60, 67, 55, 72, 52, 59, 91, 75, 68, 48, 72, 74, 53, 60, 62, 60, 52, 73, 90, 52, 47, 55, 111, 39, 73, 107, 73, 109, 51, 81, 69, 71, 53, 52, 68, 75, 52, 56, 65, 62, 48, 68, 80, 53, 42, 102, 60, 43, 71, 68, 49, 64, 62, 72, 71, 77, 58, 65, 79, 66, 80, 58, 74, 68, 87, 61, 97, 70, 69, 43, 76, 84, 63, 65, 55, 77, 58, 44, 63, 47, 54, 66, 54, 57, 52, 91, 49, 66, 63, 67, 90, 64, 56, 105, 68, 47, 63, 53, 55, 58, 58, 58, 99, 83, 83, 81, 65, 79, 52, 76, 61, 57, 51, 68, 59, 63, 47, 74, 60, 53, 41, 66, 65, 74, 45, 66, 61, 64, 66, 64, 58, 58, 72, 117, 57, 71, 71, 84, 61, 76, 56, 57, 53, 72, 39, 59, 61, 73, 57, 71, 69, 67, 75, 60, 54, 69, 53, 64, 58, 70, 55, 77, 47, 74, 70, 52, 81, 64, 57, 60, 65, 61, 94, 61, 65, 105, 62, 54, 69, 72, 54, 73, 68, 67, 45, 95, 39, 64, 84, 87, 53, 69, 67, 60, 63, 83, 75, 61, 65, 58, 73, 85, 72, 75, 73, 54, 81, 68, 70, 51, 47, 70, 95, 61, 64, 51, 58, 63, 48, 80, 76, 78, 68, 54, 57, 40, 62, 67, 72, 75, 78, 67, 66, 48, 63, 46, 71, 82, 60, 60, 80, 69, 77, 67, 51, 69, 88, 58, 84, 82, 70, 51, 59, 67, 65, 55, 55, 74, 68, 35, 67, 59, 72, 63, 57, 69, 71, 75, 73, 76, 56, 62, 65, 44, 88, 85, 62, 62, 48, 87, 63, 60, 62, 55, 83, 73, 46, 60, 74, 79, 56, 59, 61, 114, 114, 62, 65, 75, 66, 89, 58, 61, 65, 48, 69, 74, 63, 73, 61, 45, 63, 108, 65, 66, 69, 61, 61, 53, 78, 61, 55, 75, 53, 72, 73, 68, 69, 74, 86, 74, 62, 69, 62, 80, 69, 36, 74, 54, 68, 84, 64, 54, 58, 42, 81, 55, 77, 47, 85, 82, 65, 69, 54, 80, 66, 60, 71, 67, 44, 88, 46, 52, 75, 58, 65, 54, 55, 69, 76, 67, 126, 59, 69, 61, 55, 77, 55, 80, 31, 57, 45, 76, 62, 63, 85, 41, 65, 91, 67, 55, 49, 40, 73, 63, 80, 69, 57, 60, 52, 74, 55, 76, 60, 99, 65, 69, 60, 77, 61, 77, 93, 51, 62, 60, 67, 62, 67, 72, 60, 59, 52, 62, 88, 62, 91, 110, 47, 64, 55, 34, 75, 56, 62, 79, 75, 62, 56, 80, 77, 40, 62, 66, 54, 104, 77, 70, 70, 66, 56, 109, 66, 78, 66, 58, 55, 55, 80, 85, 61, 65, 108, 61, 74, 65, 66, 40, 76, 66, 64, 47, 60, 73, 68, 52, 57, 67, 54, 39, 86, 69, 49, 63, 72, 72, 98, 74, 33, 38, 46, 54, 58, 86, 63, 113, 66, 73, 70, 80, 61, 64, 63, 77, 58, 49, 54, 56, 50, 45, 49, 60, 63, 75, 61, 66, 65, 65, 61, 66, 70, 50, 51, 73, 47, 63, 62, 78, 84, 70, 67, 53, 67, 73, 62, 73, 53, 43, 62, 76, 74, 57, 77, 42, 81, 66, 67, 63, 74, 56, 65, 108, 75, 52, 68, 36, 41, 68, 61, 65, 73, 99, 68, 49, 58, 61, 59, 61, 67, 72, 75, 94, 58, 65, 67, 57, 60, 57, 63, 67, 64, 126, 56, 48, 35, 112, 52, 48, 81, 90, 50, 82, 51, 108, 57, 53, 85, 73, 76, 72, 106, 49, 66, 64, 56, 77, 57, 78, 59, 71, 65, 63, 67, 85, 73, 63, 70, 74, 53, 81, 55, 72, 55, 84, 66, 80, 71, 64, 50, 62, 66, 50, 77, 82, 56, 71, 96, 53, 63, 57, 68, 57, 76, 64, 74, 61, 58, 64, 70, 64, 62, 71, 31, 68, 62, 59, 82, 63, 57, 65, 53, 48, 52, 80, 63, 60, 78, 81, 53, 56, 65, 57, 65, 74, 75, 69, 61, 68, 68, 60, 56, 64, 76, 104, 42, 59, 79, 50, 66, 48, 56, 87, 80, 79, 50, 77, 63, 64, 87, 77, 75, 42, 71, 83, 64, 101, 71, 69, 70, 73, 83, 62, 103, 73, 62, 65, 66, 61, 69, 55, 75, 100, 52, 87, 59, 72, 72, 58, 54, 63, 82, 84, 56, 65, 64, 45, 45, 53, 66, 55, 100, 49, 60, 72, 74, 85, 54, 66, 54, 49, 60, 68, 54, 73, 56, 72, 70, 50, 59, 76, 74, 58, 64, 57, 63, 80, 47, 58, 74, 59, 63, 74, 58, 45, 53, 75, 53, 62, 44, 49, 93, 44, 57, 60, 70, 60, 80, 38, 132, 86, 46, 75, 58, 88, 90, 75, 66, 65, 59, 57, 60, 80, 62, 67, 127, 55, 58, 53, 65, 69, 75, 51, 71, 69, 61, 59, 50, 79, 75, 60, 65, 94, 70, 76, 71, 76, 140, 64, 74, 63, 75, 66, 65, 57, 58, 69, 49, 78, 47, 73, 76, 61, 66, 43, 66, 52, 61, 75, 71, 52, 97, 50, 60, 65, 70, 48, 70, 87, 67, 42, 47, 59, 72, 72, 72, 52, 77, 41, 55, 60, 77, 60, 59, 79, 75, 75, 50, 59, 66, 75, 54, 50, 49, 64, 72, 72, 41, 57, 73, 58, 73, 75, 75, 83, 74, 85, 57, 91, 56, 61, 59, 71, 72, 94, 75, 66, 75, 67, 69, 80, 69, 68, 61, 73, 41, 85, 68, 70, 81, 55, 60, 55, 59, 55, 58, 61, 47, 63, 73, 55, 77, 72, 90, 80, 71, 54, 45, 98, 51, 51, 88, 56, 59, 56, 98, 48, 74, 67, 92, 66, 61, 63, 52, 48, 47, 101, 70, 82, 80, 71, 55, 74, 61, 57, 67, 72, 73, 64, 51, 70, 89, 39, 60, 76, 74, 65, 62, 47, 74, 61, 66, 53, 73, 56, 56, 31, 49, 49, 61, 65, 84, 90, 69, 88, 82, 66, 79, 48, 76, 53, 78, 51, 51, 69, 90, 62, 76, 67, 82, 68, 130, 85, 35, 72, 60, 71, 73, 60, 59, 74, 60, 83, 85, 52, 67, 81, 58, 71, 72, 58, 60, 79, 64, 85, 56, 137, 54, 69, 66, 71, 63, 60, 81, 44, 75, 54, 58, 92, 64, 54, 75, 50, 68, 62, 45, 65, 65, 74, 61, 59, 62, 66, 68, 67, 79, 48, 86, 53, 64, 127, 61, 99, 52, 56, 37, 61, 70, 49, 49, 85, 71, 59, 90, 86, 72, 70, 62, 56, 39, 59, 60, 61, 52, 52, 68, 53, 72, 70, 62, 68, 62, 77, 65, 58, 66, 78, 68, 54, 59, 65, 67, 100, 72, 100, 50, 80, 61, 73, 58, 74, 50, 63, 71, 44, 49, 58, 63, 103, 100, 60, 86, 68, 83, 100, 47, 106, 57, 87, 82, 61, 50, 75, 79, 57, 49, 79, 82, 67, 56, 60, 49, 73, 55, 64, 46, 70, 40, 65, 57, 72, 47, 79, 70, 73, 53, 72, 47, 71, 82, 59, 71, 81, 87, 60, 69, 57, 45, 49, 70, 43, 58, 54, 63, 74, 63, 56, 72, 70, 51, 67, 66, 40, 41, 51, 85, 75, 44, 63, 61, 117, 59, 69, 80, 49, 92, 100, 67, 60, 92, 82, 51, 55, 49, 92, 62, 79, 63, 49, 82, 51, 84, 54, 61, 73, 92, 98, 76, 64, 50, 61, 49, 57, 76, 79, 47, 70, 66, 85, 86, 56, 56, 47, 65, 62, 58, 74, 56, 56, 52, 57, 59, 63, 64, 53, 52, 62, 59, 49, 44, 58, 65, 77, 60, 74, 47, 65, 75, 68, 55, 75, 72, 53, 84, 66, 82, 93, 58, 65, 55, 80, 65, 58, 63, 78, 53, 61, 71, 51, 65, 47, 99, 58, 65, 51, 43, 71, 127, 73, 58, 52, 57, 65, 52, 83, 35, 65, 57, 62, 62, 51, 46, 75, 57, 49, 89, 64, 75, 67, 110, 95, 61, 48, 106, 63, 56, 130, 38, 61, 62, 82, 84, 64, 60, 44, 66, 52, 65, 62, 46, 95, 59, 57, 53, 54, 46, 56, 70, 58, 51, 41, 55, 58, 59, 62, 58, 66, 57, 53, 60, 61, 68, 70, 50, 90, 73, 69, 58, 69, 64, 57, 62, 60, 47, 95, 73, 78, 53, 71, 61, 51, 73, 53, 90, 82, 64, 92, 74, 70, 86, 57, 62, 58, 72, 55, 75, 94, 111, 48, 54, 75, 52, 52, 45, 60, 87, 79, 59, 68, 59, 109, 50, 72, 67, 49, 81, 57, 38, 71, 54, 89, 57, 46, 77, 64, 79, 75, 64, 59, 82, 66, 67, 88, 57, 79, 69, 74, 87, 67, 46, 88, 62, 126, 59, 57, 57, 80, 65, 69, 55, 32, 44, 62, 63, 56, 85, 86, 57, 51, 70, 66, 62, 64, 74, 53, 73, 72, 59, 76, 63, 102, 52, 81, 75, 78, 79, 48, 70, 92, 46, 77, 78, 69, 55, 71, 74, 53, 51, 66, 61, 72, 104, 77, 73, 59, 83, 56, 56, 69, 74, 84, 86, 68, 81, 58, 85, 80, 68, 50, 59, 73, 51, 66, 77, 74, 51, 43, 88, 81, 50, 52, 68, 83, 65, 47, 40, 60, 69, 52, 66, 55, 67, 56, 65, 63, 75, 71, 73, 96, 66, 81, 45, 83, 79, 81, 49, 56, 60, 76, 66, 31, 74, 83, 77, 96, 72, 77, 86, 56, 58, 62, 91, 66, 65, 64, 52, 75, 53, 58, 42, 39, 88, 74, 51, 65, 54, 59, 59, 49, 65, 79, 57, 139, 33, 61, 65, 64, 109, 76, 49, 83, 47, 98, 51, 66, 71, 49, 69, 73, 66, 68, 64, 67, 73, 50, 56, 63, 61, 66, 106, 68, 52, 92, 100, 89, 69, 54, 48, 56, 52, 62, 71, 44, 51, 56, 60, 64, 72, 74, 66, 79, 52, 54, 29, 77, 53, 66, 60, 57, 65, 61, 82, 67, 82, 68, 44, 79, 60, 71, 51, 64, 64, 69, 68, 65, 80, 81, 63, 60, 39, 72, 34, 73, 67, 60, 75, 91, 52, 72, 63, 61, 74, 37, 51, 76, 49, 39, 40, 54, 90, 60, 65, 60, 73, 48, 87, 93, 69, 51, 27, 57, 48, 75, 55, 45, 64, 44, 44, 31, 57, 134, 85, 56, 42, 81, 64, 38, 82, 60, 62, 80, 65, 57, 73, 41, 69, 51, 70, 74, 64, 63, 84, 57, 54, 86, 58, 58, 70, 74, 81, 56, 74, 79, 74, 72, 68, 65, 68, 79, 57, 67, 59, 93, 75, 63, 54, 90, 80, 57, 65, 50, 90, 60, 63, 65, 83, 70, 48, 68, 70, 61, 63, 58, 67, 61, 46, 64, 56, 39, 91, 65, 68, 51, 56, 83, 45, 61, 55, 53, 63, 59, 50, 47, 72, 61, 120, 44, 89, 92, 61, 54, 63, 92, 63, 81, 61, 63, 84, 65, 49, 79, 68, 84, 67, 58, 47, 76, 68, 57, 45, 82, 87, 84, 55, 40, 60, 49, 80, 63, 66, 66, 67, 60, 53, 81, 87, 66, 56, 90, 42, 43, 60, 51, 68, 50, 62, 55, 58, 76, 73, 70, 59, 50, 50, 62, 82, 50, 76, 62, 65, 74, 98, 53, 85, 76, 58, 62, 65, 55, 88, 65, 65, 70, 92, 48, 66, 78, 70, 118, 68, 73, 52, 46, 64, 92, 75, 49, 66, 67, 76, 55, 74, 55, 73, 85, 64, 71, 70, 78, 49, 84, 65, 57, 75, 42, 46, 61, 72, 42, 46, 52, 71, 59, 88, 96, 57, 61, 75, 54, 63, 77, 78, 55, 77, 125, 80, 106, 70, 52, 54, 49, 58, 67, 66, 81, 66, 69, 51, 54, 61, 121, 64, 54, 61, 51, 82, 111, 60, 87, 70, 60, 71, 58, 57, 104, 43, 68, 45, 50, 42, 63, 72, 62, 58, 58, 72, 61, 69, 67, 60, 68, 69, 65, 68, 74, 48, 59, 64, 75, 53, 78, 52, 41, 65, 77, 65, 70, 55, 75, 64, 74, 49, 94, 66, 63, 118, 81, 64, 73, 64, 61, 56, 69, 49, 84, 69, 54, 70, 83, 93, 89, 73, 66, 54, 62, 58, 72, 67, 85, 61, 68, 51, 79, 56, 69, 76, 53, 55, 48, 88, 72, 64, 62, 79, 43, 64, 80, 53, 69, 71, 86, 64, 60, 63, 56, 91, 61, 64, 73, 80, 79, 53, 62, 82, 75, 59, 62, 87, 97, 58, 80, 87, 74, 74, 68, 55, 62, 74, 56, 89, 79, 62, 65, 65, 76, 58, 88, 69, 58, 56, 61, 69, 76, 68, 60, 63, 65, 52, 79, 69, 55, 50, 42, 73, 120, 59, 77, 85, 58, 59, 46, 41, 64, 68, 81, 48, 57, 67, 81, 59, 59, 69, 63, 58, 69, 77, 67, 63, 64, 75, 59, 52, 88, 77, 50, 61, 57, 68, 65, 35, 76, 69, 62, 70, 59, 82, 80, 76, 71, 70, 65, 60, 63, 59, 65, 42, 49, 49, 65, 69, 60, 56, 56, 88, 110, 74, 48, 53, 73, 48, 67, 55, 74, 73, 55, 50, 60, 62, 54, 67, 72, 51, 51, 67, 64, 67, 70, 40, 76, 55, 66, 74, 37, 70, 75, 63, 43, 58, 43, 36, 93, 52, 119, 70, 79, 49, 76, 61, 102, 61, 68, 54, 75, 63, 45, 60, 80, 43, 65, 47, 74, 74, 52, 75, 54, 61, 42, 66, 45, 58, 53, 59, 60, 50, 59, 83, 51, 85, 68, 48, 59, 49, 64, 80, 85, 53, 76, 96, 56, 95, 65, 123, 109, 90, 58, 56, 86, 48, 62, 69, 47, 89, 72, 29, 105, 79, 76, 57, 92, 54, 49, 65, 95, 68, 51, 64, 85, 69, 68, 80, 68, 87, 72, 72, 76, 57, 70, 68, 57, 113, 42, 72, 48, 58, 59, 45, 49, 68, 54, 65, 69, 44, 73, 59, 91, 138, 82, 67, 81, 94, 50, 94, 51, 35, 52, 49, 52, 55, 58, 75, 60, 46, 37, 62, 62, 57, 45, 84, 82, 79, 66, 83, 104, 77, 69, 82, 59, 43, 53, 70, 62, 53, 88, 56, 59, 97, 48, 56, 65, 68, 72, 64, 63, 53, 76, 62, 83, 152, 66, 69, 55, 48, 87, 58, 78, 59, 48, 74, 47, 66, 55, 56, 64, 65, 83, 62, 53, 41, 52, 82, 50, 64, 75, 59, 45, 69, 69, 71, 89, 50, 78, 68, 85, 57, 70, 63, 73, 72, 103, 42, 66, 107, 92, 85, 69, 58, 67, 54, 38, 69, 86, 72, 51, 69, 64, 58, 44, 52, 80, 61, 113, 110, 70, 56, 73, 80, 49, 66, 92, 83, 54, 83, 51, 76, 51, 45, 47, 95, 76, 67, 58, 82, 44, 47, 62, 72, 70, 53, 71, 72, 54, 50, 89, 53, 56, 161, 58, 80, 57, 80, 61, 44, 62, 66, 77, 46, 87, 70, 78, 59, 84, 62, 63, 80, 51, 63, 68, 52, 97, 51, 64, 76, 57, 55, 73, 58, 68, 70, 79, 78, 64, 94, 45, 61, 60, 62, 71, 94, 68, 89, 74, 95, 54, 63, 55, 59, 100, 48, 80, 68, 64, 60, 79, 60, 102, 66, 56, 59, 62, 99, 64, 119, 63, 61, 77, 54, 71, 65, 68, 72, 46, 47, 71, 45, 78, 79, 70, 73, 63, 55, 98, 73, 56, 62, 47, 63, 62, 49, 70, 66, 89, 88, 46, 48, 65, 59, 54, 155, 53, 60, 60, 65, 83, 57, 42, 48, 67, 59, 79, 75, 71, 72, 43, 58, 63, 57, 57, 65, 53, 59, 94, 63, 74, 71, 66, 53, 52, 76, 59, 72, 75, 45, 72, 79, 62, 50, 63, 69, 89, 65, 62, 76, 86, 62, 54, 71, 41, 50, 47, 67, 86, 61, 82, 75, 59, 66, 78, 58, 58, 53, 57, 70, 72, 71, 55, 44, 59, 57, 58, 57, 77, 62, 72, 68, 60, 54, 68, 80, 59, 70, 45, 69, 79, 84, 75, 72, 79, 68, 60, 81, 67, 57, 55, 53, 65, 64, 69, 57, 90, 65, 58, 75, 58, 69, 68, 79, 67, 65, 98, 81, 76, 72, 72, 67, 63, 44, 78, 56, 71, 50, 72, 61, 71, 65, 66, 76, 70, 65, 57, 59, 62, 49, 69, 48, 85, 74, 60, 55, 34, 76, 65, 52, 67, 62, 50, 40, 84, 51, 72, 66, 84, 84, 62, 59, 54, 65, 76, 68, 64, 54, 53, 59, 69, 86, 76, 63, 91, 46, 110, 67, 65, 69, 61, 75, 59, 58, 58, 65, 52, 73, 69, 57, 55, 54, 59, 86, 67, 71, 88, 59, 60, 73, 53, 63, 70, 58, 56, 66, 62, 54, 49, 89, 67, 67, 64, 56, 80, 64, 51, 58, 81, 78, 93, 54, 44, 65, 61, 80, 80, 55, 60, 66, 63, 54, 61, 86, 57, 74, 70, 71, 75, 57, 53, 59, 70, 74, 63, 145, 64, 80, 58, 57, 49, 75, 66, 92, 59, 61, 66, 43, 48, 71, 64, 60, 74, 51, 69, 61, 51, 46, 112, 61, 81, 84, 58, 66, 68, 83, 59, 89, 52, 89, 76, 106, 64, 58, 58, 80, 61, 151, 54, 66, 69, 57, 42, 61, 48, 60, 59, 80, 45, 57, 64, 70, 52, 95, 81, 63, 54, 57, 60, 58, 49, 55, 76, 54, 61, 69, 72, 52, 52, 66, 76, 63, 53, 55, 72, 70, 72, 56, 59, 64, 77, 60, 56, 53, 74, 85, 57, 61, 65, 59, 60, 73, 78, 68, 68, 76, 66, 66, 63, 50, 48, 63, 76, 63, 65, 51, 72, 60, 55, 78, 80, 69, 45, 67, 72, 54, 56, 82, 68, 87, 113, 55, 58, 52, 81, 53, 68, 74, 49, 68, 56, 85, 104, 45, 58, 63, 73, 65, 78, 69, 57, 67, 70, 63, 66, 69, 59, 60, 64, 86, 53, 50, 55, 50, 28, 51, 57, 70, 68, 55, 53, 43, 91, 69, 65, 62, 72, 70, 57, 51, 62, 72, 74, 70, 75, 70, 47, 72, 48, 58, 89, 65, 47, 68, 68, 79, 65, 70, 76, 80, 78, 70, 57, 75, 68, 72, 68, 51, 69, 43, 65, 32, 66, 64, 48, 63, 69, 53, 49, 56, 72, 78, 57, 74, 84, 85, 63, 62, 56, 78, 45, 53, 74, 65, 54, 70, 76, 72, 117, 61, 57, 63, 23, 62, 94, 66, 68, 56, 63, 58, 71, 70, 71, 64, 73, 59, 64, 43, 61, 82, 79, 79, 78, 71, 69, 64, 64, 98, 69, 74, 62, 81, 78, 67, 64, 50, 76, 56, 62, 39, 90, 74, 52, 53, 65, 63, 86, 48, 60, 47, 68, 64, 105, 47, 52, 57, 52, 62, 87, 55, 47, 68, 61, 106, 81, 55, 67, 73, 69, 51, 114, 53, 84, 58, 78, 65, 55, 62, 61, 54, 68, 52, 68, 50, 66, 68, 69, 55, 86, 86, 60, 43, 78, 63, 72, 68, 53, 64, 79, 62, 60, 107, 38, 91, 62, 66, 85, 57, 60, 59, 70, 65, 44, 59, 81, 53, 68, 89, 104, 53, 80, 55, 66, 82, 65, 61, 44, 74, 56, 69, 53, 66, 59, 79, 64, 54, 62, 97, 65, 48, 59, 58, 62, 78, 94, 70, 74, 120, 58, 60, 56, 58, 52, 55, 70, 45, 59, 66, 64, 70, 73, 59, 64, 53, 53, 70, 60, 59, 47, 56, 60, 63, 52, 50, 67, 81, 106, 77, 81, 69, 64, 60, 66, 65, 86, 71, 64, 61, 68, 80, 59, 75, 37, 77, 83, 111, 83, 52, 54, 116, 87, 83, 53, 44, 50, 80, 122, 72, 67, 70, 68, 72, 89, 58, 46, 82, 70, 60, 77, 67, 84, 81, 64, 53, 77, 70, 59, 63, 78, 57, 54, 58, 71, 73, 57, 80, 64, 69, 145, 80, 56, 58, 68, 55, 68, 38, 68, 43, 77, 53, 66, 66, 64, 48, 60, 84, 79, 52, 77, 50, 62, 48, 48, 70, 72, 66, 55, 73, 69, 75, 81, 73, 79, 37, 67, 64, 76, 50, 74, 47, 74, 56, 63, 58, 94, 61, 68, 73, 78, 54, 64, 75, 72, 70, 67, 58, 59, 63, 68, 64, 65, 57, 59, 63, 68, 54, 69, 58, 61, 69, 76, 48, 59, 53, 63, 65, 72, 67, 45, 89, 60, 63, 78, 99, 107, 62, 71, 64, 79, 116, 61, 82, 70, 51, 57, 58, 80, 73, 57, 49, 83, 58, 63, 75, 65, 57, 57, 59, 78, 87, 46, 73, 80, 58, 62, 84, 110, 44, 47, 59, 74, 57, 76, 65, 72, 73, 58, 58, 57, 71, 57, 71, 59, 59, 67, 61, 57, 46, 83, 64, 120, 72, 66, 69, 80, 68, 57, 51, 61, 52, 93, 123, 86, 69, 76, 50, 56, 51, 63, 76, 63, 85, 58, 43, 116, 47, 79, 43, 104, 56, 52, 57, 75, 65, 67, 73, 80, 58, 69, 76, 64, 69, 74, 81, 56, 87, 71, 85, 75, 60, 79, 77, 75, 55, 85, 65, 58, 78, 68, 68, 68, 79, 56, 67, 80, 57, 94, 70, 43, 65, 84, 58, 50, 63, 86, 66, 53, 45, 64, 63, 58, 62, 64, 69, 74, 66, 57, 65, 63, 64, 82, 55, 53, 64, 68, 95, 66, 80, 55, 78, 56, 59, 73, 66, 51, 87, 72, 61, 77, 56, 67, 73, 68, 107, 76, 55, 60, 67, 65, 54, 61, 68, 71, 42, 53, 65, 83, 69, 63, 56, 106, 61, 60, 60, 58, 64, 40, 73, 64, 68, 76, 62, 71, 76, 63, 70, 54, 73, 52, 57, 75, 68, 48, 61, 66, 73, 57, 134, 74, 55, 83, 87, 69, 63, 50, 62, 63, 78, 74, 61, 79, 67, 50, 98, 71, 68, 68, 56, 61, 62, 67, 45, 57, 75, 46, 64, 69, 85, 69, 144, 75, 81, 57, 66, 54, 45, 66, 54, 53, 68, 78, 64, 72, 67, 54, 56, 69, 64, 57, 75, 68, 84, 102, 86, 71, 55, 68, 55, 62, 53, 70, 91, 72, 70, 62, 60, 65, 122, 55, 70, 44, 75, 46, 77, 72, 74, 58, 55, 65, 47, 89, 61, 80, 79, 87, 95, 62, 88, 95, 76, 68, 83, 56, 49, 57, 66, 70, 80, 71, 50, 93, 72, 63, 55, 65, 55, 69, 66, 62, 63, 59, 63, 65, 49, 69, 70, 73, 68, 83, 68, 96, 60, 71, 58, 65, 65, 53, 82, 57, 78, 57, 62, 52, 68, 67, 52, 53, 55, 76, 62, 62, 91, 76, 64, 48, 70, 64, 66, 65, 104, 91, 87, 66, 62, 45, 85, 46, 53, 69, 71, 72, 68, 65, 50, 62, 83, 59, 71, 59, 68, 65, 67, 60, 76, 55, 56, 51, 116, 57, 51, 73, 56, 58, 81, 70, 80, 76, 83, 88, 72, 55, 49, 71, 64, 77, 62, 78, 66, 76, 79, 70, 54, 61, 70, 50, 53, 59, 64, 77, 67, 63, 62, 88, 65, 65, 75, 67, 59, 56, 59, 66, 68, 51, 89, 60, 67, 62, 52, 71, 58, 70, 59, 59, 62, 52, 51, 49, 67, 57, 61, 64, 71, 52, 66, 80, 75, 66, 66, 69, 62, 63, 69, 68, 81, 56, 116, 46, 76, 66, 48, 55, 56, 66, 69, 77, 61, 55, 50, 54, 62, 60, 59, 68, 60, 63, 59, 63, 65, 66, 61, 73, 57, 52, 71, 59, 86, 76, 69, 66, 65, 75, 70, 62, 61, 66, 65, 58, 58, 59, 46, 68, 51, 62, 80, 58, 70, 80, 55, 63, 68, 91, 84, 59, 61, 68, 61, 53, 71, 64, 67, 65, 54, 73, 56, 82, 59, 61, 72, 67, 55, 59, 79, 69, 72, 55, 59, 60, 69, 54, 72, 64, 55, 69, 81, 73, 61, 73, 80, 69, 72, 51, 57, 55, 48, 55, 53, 59, 74, 76, 63, 90, 78, 50, 56, 63, 74, 67, 64, 72, 73, 68, 52, 61, 68, 51, 74, 95, 74, 65, 61, 62, 65, 48, 61, 58, 44, 78, 58, 68, 53, 63, 66, 59, 68, 57, 122, 46, 65, 68, 54, 91, 69, 53, 78, 53, 65, 70, 60, 54, 61, 60, 64, 70, 65, 54, 61, 84, 55, 76, 65, 59, 75, 52, 76, 74, 67, 54, 55, 62, 63, 73, 71, 51, 67, 88, 93, 54, 71, 53, 60, 69, 61, 85, 63, 64, 62, 83, 55, 60, 79, 76, 59, 66, 75, 73, 63, 79, 61, 75, 69, 75, 72, 60, 78, 65, 50, 63, 92, 49, 64, 80, 58, 65, 74, 67, 60, 52, 64, 53, 44, 61, 70, 73, 77, 67, 59, 74, 59, 97, 69, 65, 64, 45, 75, 61, 81, 50, 64, 58, 57, 58, 64, 69, 61, 62, 76, 62, 62, 75, 58, 51, 88, 57, 43, 66, 51, 59, 46, 58, 69, 65, 77, 60, 76, 46, 78, 66, 57, 81, 64, 41, 88, 61, 62, 61, 75, 62, 57, 128, 66, 62, 70, 57, 67, 75, 78, 34, 57, 69, 71, 68, 84, 46, 42, 82, 44, 64, 122, 73, 49, 75, 64, 71, 61, 49, 62, 77, 71, 76, 50, 83, 67, 50, 56, 58, 66, 71, 49, 98, 64, 72, 56, 49, 58, 102, 79, 91, 53, 55, 68, 51, 55, 62, 80, 63, 143, 81, 57, 60, 57, 63, 77, 83, 65, 76, 59, 47, 59, 63, 53, 67, 68, 65, 70, 71, 77, 55, 70, 101, 78, 80, 104, 83, 60, 65, 62, 59, 44, 59, 80, 56, 55, 71, 98, 76, 63, 73, 82, 52, 59, 57, 76, 66, 59, 60, 72, 67, 55, 57, 87, 64, 46, 55, 84, 62, 60, 61, 70, 73, 62, 51, 92, 53, 58, 96, 44, 53, 63, 70, 66, 59, 72, 70, 59, 59, 76, 60, 69, 69, 96, 76, 72, 67, 51, 71, 59, 55, 75, 65, 55, 66, 75, 68, 61, 44, 79, 70, 58, 63, 91, 70, 71, 70, 61, 65, 66, 54, 72, 94, 64, 69, 59, 68, 53, 64, 62, 89, 55, 66, 68, 79, 58, 65, 57, 62, 78, 81, 57, 95, 67, 80, 83, 50, 67, 55, 74, 76, 68, 79, 72, 62, 81, 75, 56, 64, 72, 80, 44, 50, 50, 64, 61, 69, 57, 57, 61, 55, 68, 58, 58, 60, 66, 54, 57, 74, 68, 55, 77, 61, 68, 70, 81, 77, 69, 65, 69, 80, 79, 53, 61, 71, 55, 72, 55, 62, 50, 56, 59, 79, 70, 55, 57, 59, 64, 59, 72, 67, 61, 62, 93, 54, 69, 66, 70, 62, 55, 55, 68, 72, 71, 59, 56, 59, 56, 45, 53, 65, 64, 84, 55, 67, 66, 73, 66, 68, 60, 117, 65, 58, 63, 57, 50, 82, 52, 67, 64, 69, 67, 76, 63, 57, 49, 51, 61, 41, 52, 59, 81, 66, 68, 63, 56, 88, 64, 42, 76, 62, 61, 61, 52, 47, 60, 63, 74, 79, 62, 70, 61, 59, 40, 51, 59, 58, 49, 75, 64, 68, 60, 62, 77, 66, 60, 59, 57, 46, 55, 58, 67, 54, 81, 69, 76, 61, 61, 58, 102, 63, 82, 70, 52, 57, 98, 71, 73, 77, 75, 63, 64, 53, 51, 82, 46, 58, 60, 67, 64, 78, 95, 39, 58, 70, 78, 69, 71, 75, 42, 71, 41, 145, 48, 58, 74, 46, 61, 73, 62, 45, 55, 69, 60, 67, 61, 93, 54, 65, 55, 79, 76, 61, 60, 59, 58, 77, 61, 52, 43, 73, 63, 66, 69, 58, 43, 71, 61, 71, 60, 45, 71, 68, 84, 67, 61, 49, 56, 60, 63, 96, 86, 63, 62, 62, 70, 73, 75, 58, 46, 32, 46, 89, 62, 76, 52, 79, 55, 57, 63, 72, 56, 72, 68, 59, 70, 57, 79, 59, 63, 42, 57, 48, 52, 78, 103, 63, 65, 75, 62, 58, 73, 71, 52, 53, 69, 68, 71, 68, 50, 65, 78, 51, 61, 66, 48, 59, 63, 59, 69, 48, 56, 93, 58, 39, 41, 83, 74, 55, 47, 58, 72, 62, 81, 78, 63, 51, 80, 49, 48, 59, 79, 70, 58, 73, 65, 54, 76, 64, 71, 66, 57, 59, 69, 79, 59, 69, 50, 107, 47, 61, 78, 68, 73, 64, 51, 59, 82, 64, 66, 69, 48, 97, 91, 52, 54, 59, 55, 71, 55, 35, 57, 56, 80, 68, 62, 69, 74, 47, 75, 52, 60, 62, 70, 61, 82, 82, 65, 71, 57, 72, 62, 61, 47, 61, 61, 71, 60, 59, 62, 62, 64, 65, 47, 81, 79, 54, 58, 93, 57, 53, 76, 76, 56, 58, 57, 57, 97, 69, 78, 62, 62, 67, 65, 64, 65, 61, 65, 64, 70, 61, 74, 69, 60, 49, 52, 52, 93, 67, 64, 95, 36, 47, 53, 58, 71, 78, 119, 59, 55, 72, 57, 63, 70, 111, 77, 65, 51, 74, 55, 77, 65, 62, 61, 46, 64, 69, 62, 69, 52, 50, 80, 68, 54, 78, 55, 59, 87, 60, 116, 67, 84, 76, 64, 83, 60, 66, 65, 48, 64, 64, 62, 72, 86, 82, 68, 65, 54, 61, 62, 66, 68, 58, 73, 73, 55, 63, 52, 81, 67, 57, 75, 82, 105, 59, 54, 73, 59, 58, 61, 108, 56, 61, 61, 58, 83, 49, 94, 77, 72, 62, 50, 51, 57, 89, 58, 55, 59, 86, 56, 57, 76, 49, 70, 69, 89, 45, 120, 58, 72, 60, 69, 58, 62, 75, 74, 55, 70, 64, 59, 63, 68, 73, 70, 95, 71, 60, 49, 66, 53, 96, 58, 52, 55, 78, 52, 67, 60, 54, 58, 124, 70, 75, 69, 73, 62, 58, 62, 72, 73, 53, 50, 60, 50, 60, 58, 64, 61, 78, 69, 75, 70, 75, 72, 76, 63, 38, 57, 116, 52, 50, 117, 73, 52, 72, 59, 50, 50, 57, 76, 55, 50, 66, 67, 57, 91, 44, 69, 55, 60, 56, 76, 60, 59, 67, 49, 40, 86, 70, 44, 74, 52, 92, 64, 86, 50, 73, 84, 77, 67, 108, 68, 55, 63, 72, 78, 62, 81, 59, 69, 70, 73, 49, 71, 77, 69, 58, 60, 54, 64, 56, 82, 85, 62, 37, 47, 91, 50, 48, 46, 71, 62, 74, 52, 34, 57, 61, 68, 86, 89, 69, 75, 79, 70, 78, 54, 63, 103, 78, 53, 54, 64, 61, 68, 39, 63, 63, 56, 52, 115, 80, 81, 73, 86, 52, 61, 63, 73, 57, 45, 52, 60, 56, 66, 78, 63, 96, 61, 66, 52, 48, 46, 66, 59, 57, 97, 65, 56, 64, 91, 57, 60, 56, 46, 65, 64, 60, 57, 58, 61, 77, 59, 46, 62, 61, 71, 60, 50, 64, 52, 80, 49, 56, 68, 51, 64, 55, 73, 95, 51, 74, 60, 70, 68, 84, 54, 71, 58, 52, 83, 66, 65, 34, 55, 81, 76, 87, 53, 90, 71, 78, 52, 80, 51, 80, 55, 89, 70, 60, 69, 49, 91, 77, 69, 76, 50, 56, 62, 77, 57, 65, 80, 62, 61, 67, 57, 66, 66, 74, 64, 89, 43, 53, 64, 63, 73, 59, 73, 97, 58, 59, 48, 54, 45, 118, 63, 76, 61, 79, 47, 70, 66, 88, 66, 99, 65, 82, 48, 71, 77, 70, 72, 45, 56, 50, 68, 46, 150, 42, 62, 71, 60, 62, 72, 59, 55, 76, 46, 48, 79, 82, 51, 77, 75, 44, 73, 54, 72, 64, 69, 62, 62, 58, 89, 55, 68, 53, 46, 109, 67, 100, 65, 70, 49, 48, 72, 45, 70, 59, 67, 53, 64, 67, 94, 89, 65, 51, 54, 61, 56, 66, 53, 63, 72, 68, 74, 77, 66, 55, 63, 62, 63, 83, 68, 59, 85, 88, 85, 63, 81, 63, 39, 95, 48, 76, 60, 38, 116, 58, 60, 62, 61, 51, 52, 71, 54, 63, 66, 84, 59, 63, 51, 66, 64, 70, 61, 79, 49, 98, 58, 64, 80, 71, 83, 68, 50, 55, 55, 62, 75, 58, 57, 72, 66, 52, 54, 54, 61, 61, 82, 63, 48, 63, 68, 31, 48, 59, 81, 118, 90, 63, 49, 60, 65, 61, 91, 65, 43, 74, 72, 86, 63, 66, 83, 70, 50, 90, 59, 54, 68, 63, 73, 81, 49, 42, 59, 52, 66, 67, 80, 82, 64, 86, 56, 56, 53, 61, 75, 59, 53, 77, 68, 58, 52, 99, 65, 67, 57, 79, 47, 70, 79, 72, 91, 69, 74, 74, 54, 58, 73, 72, 68, 60, 81, 99, 59, 61, 64, 78, 64, 52, 45, 53, 76, 69, 80, 70, 50, 71, 49, 138, 62, 47, 51, 48, 74, 57, 60, 56, 73, 49, 63, 59, 79, 79, 57, 53, 67, 79, 65, 59, 59, 67, 74, 77, 76, 67, 74, 69, 83, 49, 59, 73, 65, 81, 109, 119, 66, 62, 90, 50, 68, 59, 74, 69, 59, 65, 81, 69, 65, 45, 70, 58, 50, 46, 56, 77, 62, 69, 72, 72, 70, 68, 76, 46, 56, 49, 50, 61, 80, 68, 62, 54, 79, 59, 72, 52, 72, 83, 58, 79, 38, 72, 67, 84, 50, 62, 60, 52, 74, 57, 86, 67, 70, 83, 70, 57, 72, 83, 33, 70, 45, 95, 115, 51, 57, 60, 65, 66, 47, 57, 95, 90, 72, 79, 56, 56, 59, 65, 57, 79, 42, 55, 69, 59, 60, 70, 47, 95, 68, 55, 66, 78, 69, 58, 56, 49, 58, 101, 55, 71, 39, 106, 61, 70, 84, 62, 56, 106, 71, 90, 70, 42, 66, 86, 48, 52, 97, 87, 69, 79, 57, 71, 70, 45, 77, 51, 67, 96, 38, 41, 70, 67, 54, 55, 54, 66, 58, 54, 66, 66, 76, 57, 102, 69, 75, 63, 59, 76, 66, 156, 73, 64, 60, 63, 64, 49, 51, 61, 79, 52, 59, 62, 92, 74, 71, 90, 61, 48, 62, 58, 71, 109, 76, 96, 63, 79, 62, 77, 55, 112, 61, 49, 58, 69, 60, 58, 58, 64, 65, 52, 69, 49, 47, 58, 60, 64, 61, 57, 69, 61, 61, 60, 93, 64, 68, 65, 55, 57, 67, 49, 58, 58, 80, 56, 69, 72, 52, 76, 64, 85, 102, 69, 66, 70, 63, 59, 75, 72, 66, 64, 48, 88, 60, 66, 53, 68, 52, 69, 72, 72, 62, 50, 68, 59, 64, 43, 53, 57, 54, 69, 53, 62, 42, 72, 63, 53, 81, 74, 63, 44, 67, 66, 94, 94, 99, 51, 51, 73, 75, 83, 91, 50, 102, 50, 67, 64, 65, 68, 49, 57, 66, 69, 71, 91, 58, 75, 60, 40, 60, 59, 74, 56, 58, 62, 71, 92, 47, 58, 64, 64, 65, 91, 47, 60, 99, 73, 62, 62, 116, 76, 74, 88, 62, 58, 55, 55, 59, 66, 77, 47, 79, 75, 77, 52, 52, 66, 70, 55, 80, 80, 67, 68, 58, 89, 59, 68, 60, 64, 76, 77, 59, 83, 67, 74, 74, 46, 59, 81, 74, 53, 63, 94, 88, 66, 75, 55, 82, 72, 53, 53, 73, 72, 110, 52, 88, 45, 51, 73, 48, 56, 82, 91, 66, 51, 60, 45, 71, 45, 76, 97, 63, 64, 58, 82, 86, 56, 66, 60, 65, 73, 60, 63, 69, 46, 74, 66, 58, 81, 64, 71, 58, 55, 68, 75, 50, 103, 65, 64, 44, 57, 69, 61, 53, 66, 72, 62, 63, 71, 66, 45, 67, 84, 56, 100, 82, 68, 43, 76, 60, 61, 64, 75, 57, 61, 70, 62, 55, 63, 50, 84, 41, 56, 55, 55, 68, 84, 73, 55, 66, 70, 83, 45, 76, 63, 62, 73, 73, 66, 80, 94, 79, 68, 51, 47, 63, 91, 69, 62, 40, 43, 57, 54, 78, 81, 59, 51, 56, 61, 74, 59, 53, 61, 61, 57, 45, 39, 73, 65, 71, 86, 67, 38, 50, 54, 73, 52, 60, 79, 80, 60, 71, 66, 41, 69, 41, 65, 69, 60, 68, 62, 80, 70, 57, 56, 71, 61, 93, 88, 68, 67, 62, 54, 48, 66, 56, 55, 69, 78, 57, 60, 63, 61, 50, 78, 70, 63, 69, 71, 74, 96, 63, 72, 47, 49, 64, 56, 75, 62, 55, 63, 70, 52, 61, 61, 47, 72, 55, 57, 77, 74, 55, 72, 78, 71, 66, 61, 55, 60, 52, 61, 63, 73, 65, 85, 57, 48, 59, 81, 67, 76, 56, 61, 68, 66, 70, 88, 81, 46, 109, 56, 66, 98, 58, 74, 65, 71, 53, 47, 77, 76, 45, 66, 54, 56, 66, 76, 42, 90, 95, 61, 58, 105, 63, 63, 83, 65, 66, 55, 45, 59, 80, 49, 74, 64, 58, 64, 59, 71, 96, 84, 53, 56, 67, 67, 84, 67, 58, 63, 61, 53, 68, 74, 64, 75, 49, 73, 50, 71, 78, 49, 68, 46, 53, 89, 44, 59, 103, 93, 56, 53, 53, 76, 72, 61, 62, 65, 66, 87, 59, 66, 104, 69, 61, 92, 78, 63, 75, 77, 80, 46, 99, 53, 97, 54, 41, 75, 55, 71, 66, 76, 54, 65, 78, 59, 69, 42, 71, 69, 46, 60, 52, 65, 80, 81, 57, 74, 60, 76, 74, 75, 50, 63, 60, 65, 54, 56, 94, 59, 72, 70, 52, 59, 55, 78, 54, 70, 93, 72, 67, 55, 54, 63, 74, 79, 55, 112, 73, 88, 59, 55, 80, 75, 59, 64, 68, 58, 76, 62, 53, 67, 92, 65, 73, 72, 73, 82, 59, 63, 72, 58, 70, 94, 66, 60, 62, 56, 60, 50, 58, 62, 62, 52, 78, 72, 50, 52, 38, 139, 67, 53, 44, 67, 48, 45, 59, 63, 54, 79, 66, 64, 49, 62, 72, 48, 50, 62, 56, 65, 62, 57, 51, 57, 54, 68, 84, 62, 83, 59, 59, 85, 71, 58, 59, 86, 68, 46, 52, 76, 62, 66, 73, 55, 85, 65, 62, 83, 66, 76, 90, 72, 88, 58, 54, 54, 66, 42, 106, 50, 74, 70, 58, 85, 63, 62, 69, 51, 57, 67, 40, 58, 37, 69, 58, 64, 54, 60, 56, 70, 106, 69, 104, 100, 82, 61, 71, 53, 61, 78, 58, 76, 70, 52, 76, 60, 51, 65, 56, 91, 46, 84, 57, 42, 64, 75, 67, 66, 65, 90, 81, 52, 68, 46, 66, 59, 56, 53, 74, 63, 65, 48, 48, 52, 57, 81, 67, 56, 62, 60, 59, 57, 63, 68, 65, 53, 62, 72, 61, 110, 75, 64, 69, 66, 56, 54, 58, 54, 68, 64, 56, 83, 43, 43, 73, 59, 69, 92, 53, 59, 68, 63, 47, 72, 57, 67, 63, 61, 77, 65, 55, 91, 76, 69, 55, 80, 59, 74, 49, 62, 46, 54, 56, 56, 122, 67, 77, 42, 74, 69, 47, 61, 57, 53, 80, 58, 69, 78, 55, 67, 82, 55, 81, 48, 73, 64, 71, 76, 55, 77, 63, 60, 59, 61, 66, 66, 75, 83, 57, 56, 64, 61, 59, 62, 56, 67, 56, 82, 65, 64, 61, 82, 82, 77, 69, 67, 56, 55, 66, 57, 82, 43, 58, 65, 87, 62, 59, 64, 53, 59, 49, 77, 72, 46, 62, 76, 81, 86, 61, 73, 50, 78, 72, 56, 69, 42, 63, 52, 66, 69, 64, 58, 62, 69, 77, 45, 56, 49, 95, 57, 52, 59, 50, 58, 59, 65, 56, 73, 57, 66, 80, 73, 57, 66, 79, 81, 54, 83, 47, 78, 52, 48, 61, 63, 68, 59, 67, 55, 70, 64, 66, 77, 66, 75, 61, 66, 55, 61, 50, 59, 107, 60, 84, 60, 73, 78, 67, 45, 59, 73, 40, 66, 70, 54, 109, 43, 53, 69, 42, 57, 73, 71, 70, 71, 63, 63, 55, 74, 69, 64, 65, 54, 69, 43, 62, 64, 76, 96, 57, 70, 54, 62, 75, 56, 51, 53, 57, 55, 87, 43, 61, 45, 71, 53, 66, 72, 69, 87, 50, 71, 54, 72, 59, 85, 62, 86, 85, 102, 69, 55, 59, 65, 54, 59, 55, 63, 93, 61, 51, 74, 49, 62, 57, 74, 81, 61, 46, 59, 51, 114, 98, 59, 52, 57, 69, 65, 70, 56, 66, 42, 46, 41, 49, 75, 65, 66, 66, 78, 84, 75, 79, 61, 79, 65, 72, 61, 77, 82, 102, 73, 56, 89, 73, 57, 66, 73, 60, 76, 48, 66, 67, 71, 83, 62, 64, 84, 59, 63, 87, 86, 72, 87, 60, 62, 59, 65, 63, 86, 66, 81, 79, 61, 72, 57, 77, 55, 54, 46, 55, 66, 87, 50, 69, 57, 45, 55, 76, 61, 56, 78, 69, 57, 59, 60, 76, 57, 68, 85, 63, 72, 58, 62, 78, 67, 64, 62, 55, 54, 71, 84, 66, 74, 49, 47, 57, 56, 70, 76, 54, 51, 52, 84, 49, 53, 84, 69, 69, 50, 62, 85, 88, 53, 70, 59, 56, 72, 74, 88, 47, 64, 46, 79, 64, 37, 74, 68, 47, 68, 75, 64, 66, 47, 58, 60, 86, 60, 85, 61, 62, 93, 61, 79, 75, 73, 64, 63, 76, 53, 48, 43, 55, 48, 47, 66, 49, 71, 66, 69, 74, 55, 72, 81, 57, 61, 76, 32, 69, 73, 86, 67, 64, 69, 45, 53, 53, 73, 77, 62, 76, 50, 85, 72, 55, 68, 74, 75, 66, 58, 81, 74, 73, 50, 84, 50, 88, 50, 57, 65, 73, 48, 72, 58, 66, 59, 78, 70, 81, 40, 63, 64, 47, 79, 57, 88, 59, 44, 164, 74, 76, 53, 48, 71, 78, 63, 59, 50, 57, 53, 60, 57, 84, 64, 55, 73, 61, 55, 74, 46, 90, 55, 69, 73, 59, 62, 59, 64, 46, 43, 57, 70, 65, 67, 120, 60, 65, 53, 50, 46, 59, 66, 68, 73, 61, 59, 69, 81, 73, 75, 82, 72, 73, 78, 61, 89, 46, 55, 77, 66, 81, 73, 68, 83, 65, 96, 59, 69, 62, 59, 60, 55, 63, 43, 91, 38, 43, 65, 61, 46, 51, 67, 82, 57, 45, 67, 116, 96, 71, 68, 61, 101, 54, 66, 45, 69, 69, 73, 77, 50, 79, 78, 92, 58, 62, 52, 84, 86, 65, 58, 48, 56, 46, 67, 64, 55, 43, 62, 39, 61, 52, 57, 59, 63, 56, 48, 44, 70, 70, 75, 62, 54, 68, 65, 65, 50, 87, 95, 41, 63, 68, 64, 70, 72, 57, 62, 91, 52, 82, 74, 57, 53, 57, 64, 69, 137, 112, 86, 75, 79, 58, 72, 65, 53, 81, 72, 60, 66, 47, 53, 58, 69, 62, 87, 59, 59, 33, 55, 60, 67, 59, 74, 78, 142, 41, 69, 43, 64, 63, 65, 72, 71, 76, 52, 56, 60, 55, 61, 79, 66, 65, 54, 80, 61, 69, 56, 55, 65, 55, 97, 69, 54, 88, 81, 48, 61, 53, 62, 81, 74, 49, 67, 57, 71, 44, 85, 55, 55, 66, 68, 71, 74, 67, 70, 63, 84, 36, 53, 48, 62, 93, 80, 61, 44, 73, 64, 61, 52, 72, 82, 47, 71, 49, 58, 88, 81, 59, 82, 57, 55, 70, 57, 50, 54, 54, 57, 73, 71, 66, 80, 95, 75, 52, 58, 45, 71, 66, 42, 51, 53, 57, 61, 62, 75, 43, 66, 66, 73, 43, 84, 46, 70, 62, 71, 62, 47, 60, 59, 57, 53, 69, 68, 45, 55, 48, 54, 64, 73, 60, 73, 59, 51, 52, 77, 69, 84, 68, 96, 64, 59, 76, 48, 62, 84, 72, 77, 56, 65, 59, 64, 55, 48, 65, 47, 56, 71, 64, 75, 57, 81, 49, 59, 59, 66, 63, 87, 68, 52, 70, 82, 87, 55, 60, 57, 80, 96, 73, 58, 81, 53, 76, 77, 58, 126, 73, 68, 76, 67, 67, 76, 80, 56, 93, 81, 55, 58, 76, 76, 61, 82, 84, 54, 57, 70, 67, 70, 70, 59, 55, 58, 67, 72, 82, 57, 75, 74, 71, 50, 59, 58, 62, 58, 63, 78, 137, 38, 65, 60, 60, 93, 48, 67, 73, 58, 78, 68, 72, 73, 60, 57, 79, 73, 64, 50, 114, 90, 75, 58, 75, 57, 90, 94, 78, 62, 69, 69, 83, 72, 77, 111, 74, 68, 65, 68, 63, 50, 78, 69, 57, 85, 58, 50, 65, 101, 75, 51, 65, 48, 72, 47, 71, 59, 63, 76, 74, 61, 44, 57, 57, 68, 60, 73, 71, 62, 64, 54, 78, 40, 59, 86, 60, 56, 51, 77, 60, 91, 86, 71, 67, 58, 66, 69, 76, 41, 76, 72, 58, 65, 66, 61, 39, 57, 56, 60, 71, 59, 62, 69, 71, 58, 69, 59, 68, 60, 54, 66, 62, 136, 71, 78, 56, 58, 56, 70, 76, 67, 59, 79, 50, 48, 68, 61, 57, 60, 64, 58, 69, 76, 41, 97, 71, 65, 79, 65, 60, 46, 39, 45, 50, 74, 82, 68, 79, 73, 68, 64, 80, 47, 50, 92, 60, 72, 59, 77, 86, 67, 45, 64, 76, 75, 56, 59, 70, 98, 66, 65, 45, 63, 69, 43, 49, 78, 90, 79, 81, 71, 65, 58, 68, 62, 38, 89, 39, 83, 90, 64, 57, 97, 67, 34, 67, 78, 95, 65, 55, 46, 56, 58, 85, 70, 74, 60, 81, 54, 46, 94, 43, 65, 67, 64, 67, 63, 68, 55, 77, 49, 80, 51, 92, 70, 76, 70, 89, 67, 90, 54, 75, 67, 79, 87, 73, 39, 65, 78, 69, 58, 43, 63, 81, 76, 58, 73, 71, 73, 50, 82, 52, 58, 83, 69, 55, 69, 72, 62, 51, 73, 116, 79, 86, 90, 46, 56, 84, 57, 44, 94, 76, 50, 52, 59, 53, 59, 73, 90, 54, 55, 98, 50, 67, 83, 57, 61, 50, 96, 59, 77, 74, 65, 61, 69, 80, 54, 70, 35, 72, 57, 55, 56, 69, 80, 54, 63, 64, 86, 49, 50, 95, 62, 65, 72, 59, 49, 69, 90, 79, 58, 74, 58, 98, 79, 38, 68, 44, 81, 95, 76, 56, 74, 58, 100, 68, 53, 45, 72, 68, 71, 76, 74, 74, 98, 88, 83, 44, 74, 71, 59, 64, 59, 66, 113, 69, 51, 56, 71, 64, 98, 53, 55, 72, 72, 83, 68, 57, 100, 70, 56, 61, 57, 62, 73, 87, 73, 56, 56, 65, 63, 54, 64, 55, 71, 89, 68, 82, 55, 64, 56, 72, 57, 71, 53, 62, 77, 60, 77, 59, 66, 62, 79, 64, 63, 74, 66, 64, 70, 51, 51, 67, 69, 93, 70, 53, 88, 64, 69, 92, 61, 62, 64, 46, 50, 79, 55, 76, 80, 88, 52, 68, 60, 77, 75, 73, 48, 87, 50, 43, 62, 67, 48, 93, 74, 71, 58, 67, 60, 61, 47, 56, 59, 82, 39, 65, 49, 72, 48, 62, 59, 47, 67, 82, 72, 90, 79, 53, 61, 106, 64, 56, 69, 70, 55, 65, 94, 135, 75, 52, 71, 46, 84, 83, 72, 57, 57, 62, 77, 47, 62, 48, 95, 46, 54, 54, 51, 85, 53, 69, 128, 57, 65, 56, 68, 51, 54, 45, 51, 72, 51, 68, 80, 85, 56, 83, 98, 97, 84, 59, 64, 75, 56, 93, 96, 55, 56, 100, 59, 41, 67, 68, 85, 67, 49, 73, 65, 50, 68, 73, 55, 76, 66, 96, 81, 73, 83, 51, 100, 68, 64, 69, 60, 72, 64, 61, 61, 56, 51, 81, 40, 52, 98, 59, 66, 57, 86, 75, 59, 64, 65, 55, 50, 68, 46, 39, 68, 59, 74, 62, 62, 61, 72, 55, 70, 68, 38, 50, 73, 70, 71, 52, 74, 56, 68, 69, 75, 54, 63, 80, 69, 52, 101, 76, 55, 71, 45, 57, 53, 50, 72, 79, 86, 115, 70, 72, 61, 64, 94, 82, 88, 62, 54, 110, 55, 83, 69, 84, 41, 75, 84, 58, 60, 82, 55, 91, 66, 49, 69, 73, 60, 138, 73, 65, 65, 68, 66, 74, 62, 62, 99, 82, 63, 73, 64, 86, 79, 59, 75, 63, 56, 72, 58, 53, 49, 67, 91, 77, 82, 71, 64, 49, 72, 48, 69, 50, 61, 56, 77, 84, 56, 56, 56, 90, 58, 62, 94, 74, 58, 40, 103, 69, 73, 64, 74, 69, 46, 46, 49, 78, 76, 48, 52, 70, 48, 65, 62, 61, 65, 55, 60, 65, 39, 63, 83, 54, 55, 56, 62, 61, 59, 35, 84, 58, 79, 50, 67, 105, 63, 54, 63, 61, 68, 61, 67, 79, 78, 71, 50, 64, 62, 70, 60, 80, 75, 83, 73, 62, 49, 94, 46, 62, 54, 42, 56, 95, 67, 84, 69, 53, 55, 42, 70, 74, 55, 58, 40, 62, 64, 82, 62, 72, 57, 70, 57, 82, 62, 50, 40, 49, 85, 53, 84, 64, 67, 63, 103, 55, 49, 70, 56, 62, 84, 66, 54, 69, 59, 48, 88, 68, 49, 59, 105, 73, 43, 51, 81, 51, 101, 64, 52, 69, 87, 67, 65, 91, 62, 78, 49, 71, 49, 68, 65, 56, 60, 48, 44, 74, 55, 85, 51, 49, 46, 58, 65, 42, 76, 69, 55, 65, 60, 69, 55, 71, 56, 53, 48, 54, 78, 57, 52, 62, 63, 62, 63, 74, 73, 48, 89, 69, 56, 73, 53, 60, 72, 69, 59, 102, 79, 52, 64, 72, 49, 63, 109, 73, 62, 48, 61, 73, 79, 61, 67, 43, 78, 49, 65, 45, 54, 56, 53, 61, 46, 71, 82, 48, 60, 71, 94, 63, 55, 71, 53, 92, 65, 59, 93, 81, 54, 62, 71, 96, 66, 95, 61, 62, 42, 73, 98, 66, 92, 73, 70, 69, 72, 69, 52, 107, 56, 74, 65, 69, 51, 78, 53, 75, 54, 69, 68, 43, 58, 64, 53, 83, 63, 58, 46, 64, 57, 98, 55, 46, 54, 58, 139, 62, 62, 43, 54, 46, 50, 88, 66, 78, 61, 74, 58, 75, 66, 70, 68, 58, 53, 59, 74, 40, 58, 74, 58, 59, 56, 39, 59, 97, 72, 50, 57, 52, 76, 75, 69, 54, 51, 92, 64, 73, 61, 67, 61, 65, 67, 55, 53, 72, 52, 66, 79, 117, 62, 52, 55, 48, 71, 63, 63, 57, 48, 84, 72, 50, 53, 46, 63, 80, 81, 50, 76, 59, 71, 60, 61, 65, 68, 86, 58, 59, 80, 65, 71, 73, 76, 64, 58, 79, 72, 57, 59, 53, 67, 54, 68, 82, 85, 63, 47, 69, 80, 60, 43, 89, 67, 80, 53, 61, 59, 64, 89, 50, 76, 65, 67, 78, 48, 58, 82, 54, 63, 88, 63, 77, 71, 62, 60, 67, 82, 68, 68, 74, 62, 71, 108, 69, 69, 71, 69, 55, 59, 78, 53, 60, 84, 73, 57, 61, 71, 54, 66, 59, 51, 72, 52, 47, 58, 131, 76, 53, 80, 63, 51, 63, 87, 65, 92, 59, 53, 62, 66, 57, 60, 74, 101, 66, 84, 61, 66, 73, 61, 79, 86, 63, 66, 76, 52, 89, 95, 66, 61, 65, 56, 47, 37, 85, 79, 54, 60, 52, 62, 64, 56, 65, 37, 53, 59, 65, 73, 59, 71, 70, 68, 60, 74, 77, 61, 82, 62, 50, 76, 59, 61, 65, 63, 75, 78, 68, 72, 61, 70, 51, 69, 76, 144, 82, 73, 80, 72, 65, 54, 43, 94, 47, 41, 61, 66, 64, 67, 63, 67, 83, 68, 66, 55, 104, 99, 52, 55, 63, 74, 57, 89, 124, 68, 58, 51, 119, 59, 56, 112, 74, 69, 94, 61, 67, 51, 79, 35, 73, 95, 92, 67, 46, 110, 56, 55, 66, 57, 122, 60, 53, 59, 71, 74, 77, 51, 67, 44, 62, 75, 57, 66, 47, 67, 60, 52, 66, 55, 69, 64, 69, 59, 72, 79, 83, 78, 78, 75, 39, 85, 71, 79, 69, 63, 56, 48, 60, 68, 66, 95, 64, 60, 78, 54, 86, 54, 67, 55, 80, 55, 55, 62, 89, 74, 81, 65, 59, 61, 78, 71, 80, 71, 41, 60, 61, 93, 39, 58, 88, 53, 72, 57, 54, 74, 67, 70, 58, 69, 77, 58, 72, 61, 44, 68, 57, 53, 76, 55, 41, 71, 69, 49, 46, 65, 71, 59, 101, 67, 70, 76, 55, 51, 54, 57, 63, 57, 62, 60, 85, 58, 64, 64, 54, 54, 74, 93, 63, 72, 51, 47, 61, 53, 96, 47, 52, 106, 61, 64, 76, 78, 55, 69, 58, 51, 69, 56, 81, 71, 68, 47, 44, 77, 80, 59, 67, 60, 62, 64, 57, 57, 81, 75, 65, 55, 47, 80, 71, 61, 71, 38, 71, 66, 66, 58, 69, 43, 74, 70, 64, 85, 59, 101, 55, 69, 70, 46, 63, 70, 120, 121, 113, 48, 63, 46, 59, 82, 49, 46, 82, 64, 86, 54, 75, 63, 65, 77, 68, 60, 76, 61, 70, 48, 49, 63, 75, 82, 73, 104, 58, 94, 55, 72, 58, 61, 84, 50, 80, 86, 77, 76, 36, 85, 42, 58, 65, 67, 69, 62, 69, 71, 71, 89, 71, 50, 59, 77, 56, 95, 60, 65, 50, 80, 80, 69, 82, 60, 46, 57, 56, 55, 53, 62, 56, 66, 68, 78, 78, 58, 63, 76, 58, 41, 81, 68, 73, 55, 73, 38, 75, 71, 78, 76, 71, 56, 51, 45, 71, 68, 62, 72, 83, 79, 88, 74, 58, 78, 71, 46, 65, 81, 51, 56, 93, 45, 65, 74, 65, 51, 59, 58, 92, 38, 50, 62, 73, 52, 44, 81, 61, 60, 63, 54, 75, 48, 74, 72, 75, 67, 77, 57, 55, 59, 64, 63, 68, 89, 77, 55, 78, 63, 74, 72, 79, 88, 70, 64, 68, 63, 66, 47, 68, 62, 69, 63, 48, 87, 73, 63, 64, 73, 39, 65, 73, 66, 64, 69, 64, 61, 65, 93, 59, 40, 59, 80, 70, 47, 82, 78, 63, 100, 80, 67, 107, 72, 79, 60, 92, 75, 58, 75, 70, 76, 66, 53, 58, 46, 45, 56, 55, 67, 55, 44, 90, 78, 105, 82, 74, 79, 64, 47, 66, 48, 87, 60, 61, 102, 100, 62, 55, 121, 97, 99, 78, 64, 54, 49, 59, 50, 89, 40, 77, 98, 70, 65, 98, 62, 66, 44, 95, 75, 44, 80, 53, 63, 53, 64, 56, 54, 66, 68, 63, 41, 50, 72, 84, 61, 73, 88, 72, 51, 84, 66, 47, 59, 46, 83, 59, 41, 67, 80, 67, 89, 69, 44, 72, 94, 58, 71, 48, 79, 93, 74, 46, 74, 70, 65, 96, 68, 71, 79, 68, 57, 59, 73, 55, 68, 59, 52, 53, 48, 51, 51, 41, 70, 61, 57, 87, 41, 63, 59, 50, 55, 74, 53, 88, 51, 50, 62, 60, 50, 46, 66, 43, 82, 60, 62, 86, 65, 62, 82, 78, 51, 55, 63, 56, 75, 73, 60, 97, 71, 63, 57, 76, 55, 103, 69, 38, 70, 79, 87, 55, 59, 55, 112, 58, 55, 45, 51, 61, 47, 59, 106, 44, 57, 99, 67, 67, 58, 62, 49, 60, 50, 59, 84, 58, 55, 84, 105, 69, 53, 38, 56, 82, 53, 67, 49, 65, 61, 64, 64, 65, 57, 57, 80, 58, 35, 81, 49, 69, 70, 49, 62, 79, 82, 72, 70, 137, 79, 68, 67, 70, 57, 78, 65, 75, 67, 74, 77, 60, 57, 64, 101, 54, 84, 69, 56, 62, 71, 54, 72, 60, 91, 47, 64, 76, 101, 51, 71, 60, 64, 66, 76, 61, 119, 55, 63, 66, 59, 54, 56, 83, 80, 94, 53, 74, 52, 94, 74, 70, 73, 68, 43, 81, 64, 53, 85, 68, 67, 44, 44, 93, 62, 63, 59, 67, 55, 42, 61, 59, 60, 95, 75, 57, 88, 53, 42, 48, 61, 63, 39, 49, 78, 77, 64, 101, 44, 71, 41, 88, 58, 57, 78, 53, 77, 63, 65, 88, 64, 62, 60, 72, 45, 50, 80, 67, 106, 39, 49, 76, 76, 54, 67, 100, 60, 43, 66, 54, 62, 51, 77, 77, 69, 74, 67, 51, 73, 76, 75, 59, 70, 94, 57, 60, 54, 76, 55, 52, 58, 73, 64, 43, 65, 68, 45, 93, 58, 60, 77, 75, 52, 80, 54, 59, 36, 58, 49, 72, 91, 46, 40, 53, 70, 62, 89, 84, 64, 82, 63, 57, 66, 92, 72, 81, 75, 77, 62, 60, 78, 68, 73, 62, 98, 56, 62, 81, 58, 60, 76, 52, 71, 60, 62, 85, 62, 63, 56, 49, 65, 66, 61, 112, 48, 58, 96, 61, 78, 58, 60, 64, 51, 73, 58, 72, 58, 74, 69, 52, 72, 43, 50, 87, 41, 54, 78, 73, 80, 49, 65, 52, 58, 70, 51, 60, 42, 74, 60, 58, 67, 74, 75, 71, 72, 51, 70, 75, 76, 82, 61, 53, 50, 64, 103, 58, 61, 46, 60, 75, 93, 58, 26, 79, 55, 66, 69, 78, 78, 58, 68, 47, 58, 37, 85, 49, 92, 62, 86, 71, 54, 99, 66, 81, 46, 70, 50, 74, 52, 58, 60, 44, 71, 41, 68, 45, 51, 44, 70, 76, 85, 70, 54, 49, 67, 84, 61, 88, 89, 67, 72, 56, 64, 61, 59, 60, 49, 41, 61, 55, 79, 57, 49, 78, 68, 63, 54, 72, 69, 43, 83, 68, 81, 65, 52, 74, 70, 38, 62, 58, 82, 91, 66, 60, 56, 76, 80, 46, 78, 71, 89, 66, 61, 86, 35, 77, 41, 97, 75, 58, 55, 66, 74, 41, 89, 85, 55, 102, 60, 44, 83, 113, 45, 75, 86, 76, 52, 42, 84, 68, 71, 64, 68, 99, 57, 58, 60, 46, 54, 88, 75, 68, 59, 71, 76, 60, 75, 56, 93, 76, 79, 112, 47, 68, 83, 57, 62, 108, 66, 64, 65, 68, 48, 60, 45, 51, 51, 70, 71, 70, 31, 83, 66, 57, 75, 71, 89, 49, 57, 62, 52, 58, 31, 90, 66, 77, 64, 71, 64, 71, 45, 91, 68, 83, 34, 102, 65, 69, 71, 60, 85, 58, 52, 66, 58, 87, 56, 54, 81, 70, 65, 102, 67, 63, 60, 116, 40, 50, 83, 70, 72, 66, 77, 66, 54, 74, 66, 82, 81, 72, 74, 77, 48, 46, 70, 55, 87, 70, 74, 80, 44, 65, 94, 74, 70, 66, 62, 68, 52, 80, 65, 54, 68, 60, 63, 83, 53, 73, 76, 77, 49, 70, 57, 80, 62, 61, 39, 70, 55, 66, 65, 71, 72, 70, 84, 47, 52, 58, 66, 49, 63, 77, 59, 77, 53, 62, 72, 94, 75, 70, 99, 69, 75, 89, 67, 52, 81, 69, 50, 69, 73, 95, 86, 76, 69, 55, 83, 45, 69, 61, 81, 34, 53, 83, 62, 92, 85, 70, 50, 67, 47, 59, 69, 66, 40, 66, 60, 56, 72, 94, 62, 80, 92, 79, 63, 56, 66, 94, 67, 57, 85, 51, 76, 64, 64, 77, 67, 54, 46, 56, 60, 52, 55, 97, 49, 50, 73, 49, 124, 67, 65, 73, 76, 76, 86, 97, 52, 106, 85, 62, 66, 52, 108, 79, 46, 89, 93, 77, 53, 74, 63, 75, 49, 41, 38, 104, 82, 56, 69, 63, 73, 47, 91, 58, 75, 74, 69, 17, 46, 54, 44, 63, 82, 52, 61, 80, 79, 64, 69, 38, 67, 57, 71, 76, 53, 93, 67, 59, 49, 36, 114, 99, 97, 66, 60, 82, 35, 70, 68, 53, 62, 87, 73, 90, 49, 56, 54, 71, 69, 57, 76, 75, 47, 73, 46, 88, 69, 55, 64, 53, 61, 80, 53, 68, 92, 45, 77, 60, 71, 47, 84, 100, 42, 50, 114, 71, 60, 56, 77, 65, 44, 80, 58, 69, 80, 67, 76, 39, 57, 63, 99, 34, 47, 77, 73, 59, 77, 71, 75, 64, 70, 60, 54, 65, 91, 45, 61, 63, 56, 36, 77, 81, 32, 54, 65, 57, 86, 89, 49, 68, 55, 41, 84, 74, 68, 68, 51, 86, 57, 36, 74, 62, 71, 62, 54, 65, 58, 48, 61, 71, 100, 65, 52, 61, 67, 68, 63, 51, 43, 63, 64, 56, 44, 49, 63, 63, 56, 61, 68, 73, 72, 72, 51, 49, 69, 90, 62, 28, 57, 76, 70, 72, 40, 60, 70, 65, 73, 59, 62, 59, 70, 70, 61, 70, 56, 79, 97, 48, 58, 58, 51, 81, 55, 53, 51, 62, 60, 45, 62, 92, 84, 95, 89, 71, 68, 65, 61, 75, 61, 58, 49, 78, 57, 71, 69, 53, 77, 57, 43, 83, 60, 51, 60, 55, 78, 60, 69, 44, 47, 55, 59, 89, 70, 55, 63, 71, 54, 56, 55, 66, 55, 64, 63, 66, 81, 56, 43, 64, 70, 68, 83, 71, 70, 87, 75, 70, 63, 77, 85, 56, 79, 67, 60, 103, 72, 73, 59, 74, 71, 82, 46, 57, 64, 73, 61, 45, 91, 76, 78, 52, 56, 59, 73, 75, 59, 57, 74, 65, 77, 111, 46, 97, 62, 87, 74, 52, 86, 66, 50, 80, 60, 57, 42, 89, 47, 81, 45, 47, 63, 119, 53, 91, 38, 79, 53, 68, 84, 61, 73, 69, 45, 67, 81, 79, 71, 38, 50, 72, 78, 74, 56, 76, 48, 44, 83, 105, 77, 56, 66, 69, 69, 62, 70, 53, 57, 55, 54, 87, 62, 78, 89, 74, 96, 68, 61, 58, 55, 59, 70, 64, 64, 60, 62, 66, 64, 40, 64, 83, 73, 49, 60, 61, 56, 79, 73, 51, 95, 65, 67, 35, 88, 51, 77, 80, 74, 96, 79, 77, 65, 62, 76, 72, 79, 56, 68, 83, 52, 83, 40, 50, 66, 76, 41, 53, 90, 73, 50, 79, 60, 54, 43, 71, 49, 61, 52, 54, 77, 80, 36, 50, 44, 52, 53, 47, 71, 79, 73, 56, 58, 68, 78, 63, 67, 52, 48, 54, 91, 45, 59, 43, 66, 66, 66, 66, 62, 93, 49, 31, 73, 62, 70, 80, 52, 80, 97, 64, 84, 74, 56, 74, 69, 64, 80, 42, 44, 58, 57, 53, 58, 70, 68, 75, 77, 48, 51, 48, 70, 59, 85, 56, 36, 74, 69, 83, 64, 91, 59, 62, 61, 69, 71, 72, 43, 78, 63, 68, 76, 70, 43, 57, 60, 43, 55, 46, 94, 78, 66, 77, 86, 74, 71, 69, 57, 52, 63, 55, 73, 53, 35, 62, 86, 75, 40, 51, 80, 40, 58, 86, 74, 73, 85, 92, 49, 86, 78, 62, 53, 59, 90, 109, 73, 59, 80, 87, 77, 65, 41, 79, 68, 59, 69, 54, 47, 49, 56, 58, 53, 135, 66, 92, 88, 55, 96, 69, 56, 61, 59, 53, 69, 64, 105, 52, 68, 43, 48, 90, 47, 65, 58, 48, 64, 64, 57, 68, 69, 44, 54, 61, 90, 64, 47, 59, 56, 43, 61, 45, 54, 46, 77, 63, 76, 74, 65, 58, 78, 38, 76, 71, 70, 94, 40, 76, 73, 73, 58, 83, 63, 102, 38, 76, 98, 59, 86, 81, 46, 59, 43, 71, 67, 75, 40, 71, 65, 61, 79, 59, 68, 76, 59, 91, 106, 57, 52, 39, 59, 76, 58, 65, 42, 75, 62, 59, 76, 69, 65, 65, 43, 52, 81, 108, 121, 71, 67, 79, 60, 63, 72, 86, 65, 73, 69, 53, 78, 73, 73, 66, 87, 35, 61, 54, 70, 67, 52, 77, 51, 52, 59, 62, 70, 128, 54, 86, 69, 72, 70, 67, 64, 64, 79, 48, 53, 47, 70, 55, 65, 60, 54, 90, 69, 80, 45, 59, 52, 77, 39, 62, 76, 76, 49, 58, 82, 41, 80, 66, 47, 49, 54, 104, 35, 86, 64, 85, 100, 91, 30, 50, 45, 59, 59, 60, 82, 75, 112, 125, 51, 59, 62, 56, 46, 71, 60, 69, 50, 51, 41, 65, 87, 67, 104, 94, 66, 73, 57, 71, 58, 61, 84, 51, 64, 106, 60, 51, 59, 56, 56, 47, 63, 63, 61, 73, 56, 56, 45, 64, 83, 82, 67, 63, 68, 73, 59, 74, 64, 40, 59, 38, 77, 58, 64, 56, 72, 87, 64, 74, 54, 75, 56, 119, 43, 93, 72, 71, 44, 72, 53, 69, 66, 74, 70, 37, 54, 67, 55, 62, 53, 88, 92, 49, 63, 60, 56, 104, 92, 72, 70, 86, 66, 82, 79, 78, 59, 91, 45, 61, 77, 58, 75, 54, 101, 100, 58, 46, 80, 64, 54, 66, 66, 64, 60, 90, 57, 67, 43, 75, 52, 72, 59, 57, 26, 59, 79, 74, 58, 126, 79, 113, 71, 70, 49, 62, 59, 87, 48, 53, 83, 55, 61, 69, 48, 77, 81, 45, 57, 65, 62, 70, 57, 74, 60, 64, 43, 99, 65, 69, 67, 44, 72, 86, 54, 68, 55, 55, 61, 115, 77, 88, 35, 88, 60, 63, 64, 113, 63, 81, 68, 84, 46, 81, 60, 72, 76, 81, 62, 44, 64, 55, 47, 65, 72, 43, 55, 47, 58, 98, 46, 53, 67, 48, 55, 56, 40, 71, 54, 78, 45, 79, 77, 75, 67, 75, 73, 81, 65, 49, 86, 76, 65, 46, 83, 46, 53, 53, 42, 72, 61, 61, 85, 56, 76, 48, 57, 79, 47, 63, 65, 61, 52, 56, 63, 60, 51, 43, 59, 63, 70, 78, 79, 67, 70, 76, 84, 58, 75, 73, 48, 64, 73, 56, 83, 67, 60, 55, 57, 63, 65, 75, 62, 61, 70, 72, 55, 94, 88, 56, 68, 73, 55, 75, 54, 68, 64, 73, 67, 66, 81, 54, 65, 58, 55, 53, 59, 54, 77, 71, 52, 60, 74, 72, 53, 72, 74, 90, 62, 55, 58, 68, 91, 72, 55, 98, 55, 74, 74, 76, 53, 68, 65, 73, 75, 63, 56, 74, 59, 61, 79, 67, 83, 52, 69, 74, 67, 51, 47, 62, 56, 54, 48, 63, 59, 51, 64, 71, 67, 57, 73, 81, 60, 59, 63, 60, 42, 60, 77, 57, 81, 62, 67, 64, 75, 65, 65, 75, 61, 72, 76, 46, 69, 54, 58, 60, 62, 55, 48, 60, 36, 84, 68, 59, 72, 52, 68, 59, 47, 85, 77, 53, 40, 66, 49, 45, 49, 95, 85, 70, 49, 78, 58, 59, 59, 66, 70, 61, 80, 74, 55, 56, 58, 68, 56, 71, 60, 71, 73, 59, 65, 70, 97, 45, 108, 59, 50, 37, 70, 56, 68, 64, 66, 78, 68, 55, 53, 59, 42, 111, 49, 53, 59, 53, 53, 78, 68, 73, 57, 64, 60, 96, 67, 52, 68, 44, 75, 65, 51, 57, 75, 164, 58, 35, 66, 58, 68, 56, 66, 71, 57, 64, 56, 66, 72, 53, 50, 48, 53, 80, 111, 80, 57, 71, 62, 60, 52, 50, 68, 56, 62, 56, 82, 60, 72, 68, 57, 130, 63, 79, 52, 75, 68, 64, 87, 82, 64, 74, 61, 58, 70, 49, 71, 57, 97, 59, 69, 65, 55, 74, 56, 63, 67, 87, 43, 75, 61, 69, 87, 43, 69, 83, 67, 79, 76, 60, 57, 60, 75, 56, 71, 61, 55, 66, 71, 65, 84, 57, 95, 44, 98, 75, 88, 68, 96, 70, 86, 87, 86, 62, 56, 45, 62, 48, 62, 48, 59, 85, 79, 104, 77, 86, 58, 59, 68, 65, 65, 69, 56, 65, 44, 70, 59, 55, 51, 71, 77, 60, 85, 68, 73, 62, 75, 50, 71, 55, 61, 65, 92, 64, 98, 55, 73, 72, 50, 43, 83, 44, 62, 72, 52, 61, 57, 82, 62, 77, 64, 57, 93, 88, 69, 49, 60, 75, 65, 59, 55, 55, 48, 46, 77, 65, 51, 53, 62, 71, 43, 44, 54, 69, 63, 71, 65, 63, 50, 55, 55, 49, 54, 64, 58, 57, 42, 60, 61, 90, 51, 76, 56, 63, 69, 55, 73, 55, 53, 49, 67, 86, 71, 62, 78, 65, 59, 66, 56, 61, 67, 69, 51, 86, 72, 74, 66, 59, 60, 50, 49, 51, 67, 67, 88, 90, 72, 63, 73, 63, 66, 62, 100, 65, 69, 62, 52, 67, 42, 62, 55, 66, 72, 100, 64, 54, 50, 51, 34, 70, 96, 64, 60, 53, 67, 56, 61, 68, 69, 54, 56, 61, 73, 57, 50, 54, 88, 75, 61, 74, 95, 67, 50, 94, 76, 58, 74, 68, 45, 89, 59, 54, 53, 70, 52, 57, 80, 73, 60, 53, 50, 77, 82, 71, 54, 58, 74, 43, 65, 72, 86, 74, 43, 63, 76, 74, 56, 59, 64, 59, 46, 45, 68, 70, 68, 76, 64, 67, 82, 62, 62, 58, 65, 82, 61, 70, 68, 51, 41, 83, 53, 46, 57, 59, 64, 66, 48, 53, 69, 76, 72, 69, 57, 66, 60, 53, 64, 89, 62, 54, 53, 80, 86, 64, 43, 58, 75, 48, 59, 52, 73, 66, 69, 67, 92, 59, 73, 69, 56, 58, 70, 59, 57, 66, 49, 70, 63, 71, 67, 61, 77, 45, 52, 111, 64, 62, 54, 52, 54, 55, 53, 70, 69, 73, 70, 78, 80, 74, 76, 63, 67, 73, 90, 70, 68, 67, 71, 69, 48, 78, 56, 61, 67, 70, 53, 64, 65, 69, 51, 51, 62, 79, 141, 62, 61, 63, 41, 53, 61, 69, 69, 71, 69, 73, 57, 117, 73, 72, 61, 64, 55, 50, 61, 62, 86, 66, 66, 77, 67, 51, 75, 76, 70, 66, 40, 72, 80, 82, 61, 64, 55, 71, 45, 68, 54, 46, 67, 69, 49, 58, 85, 73, 56, 86, 54, 86, 93, 64, 54, 90, 135, 62, 57, 62, 56, 69, 48, 66, 53, 58, 73, 46, 80, 60, 75, 66, 57, 66, 72, 77, 59, 62, 43, 47, 106, 43, 51, 76, 63, 55, 46, 60, 99, 53, 54, 65, 58, 59, 68, 59, 79, 61, 76, 52, 83, 77, 67, 53, 57, 68, 69, 61, 48, 47, 52, 67, 64, 62, 60, 59, 53, 81, 59, 67, 63, 80, 48, 43, 59, 67, 69, 45, 78, 56, 74, 66, 82, 47, 45, 53, 55, 85, 54, 84, 102, 43, 62, 75, 64, 55, 70, 49, 77, 61, 103, 65, 82, 65, 72, 63, 56, 76, 62, 67, 68, 97, 51, 73, 73, 52, 66, 83, 67, 56, 77, 58, 59, 49, 66, 63, 63, 55, 78, 63, 71, 66, 101, 64, 56, 63, 77, 64, 74, 50, 91, 64, 60, 52, 62, 49, 80, 44, 76, 65, 46, 80, 65, 60, 77, 131, 76, 83, 73, 77, 54, 74, 59, 52, 62, 75, 76, 57, 65, 61, 92, 84, 77, 61, 76, 104, 58, 60, 80, 36, 52, 73, 73, 64, 64, 78, 81, 54, 62, 96, 68, 63, 66, 56, 96, 56, 45, 69, 56, 63, 85, 60, 51, 60, 90, 74, 62, 74, 76, 65, 63, 63, 62, 74, 91, 57, 55, 57, 68, 70, 74, 75, 122, 65, 74, 60, 61, 63, 58, 58, 78, 63, 93, 82, 68, 62, 93, 52, 75, 53, 64, 63, 62, 58, 67, 62, 129, 68, 59, 58, 67, 71, 54, 50, 73, 68, 70, 66, 63, 62, 59, 40, 123, 58, 56, 71, 71, 55, 79, 79, 74, 59, 91, 78, 69, 58, 72, 70, 66, 40, 70, 52, 89, 68, 49, 65, 55, 66, 72, 65, 61, 67, 65, 46, 61, 77, 70, 54, 69, 58, 87, 73, 60, 54, 68, 62, 118, 63, 45, 79, 51, 72, 83, 46, 58, 59, 49, 63, 58, 61, 47, 47, 50, 64, 59, 62, 72, 70, 55, 63, 57, 50, 59, 108, 71, 65, 62, 71, 61, 54, 56, 102, 65, 60, 97, 62, 54, 76, 62, 79, 66, 52, 49, 56, 59, 70, 60, 82, 58, 59, 62, 71, 57, 67, 55, 82, 70, 43, 68, 75, 71, 57, 76, 60, 72, 62, 77, 56, 50, 70, 64, 58, 68, 81, 57, 56, 36, 73, 93, 67, 59, 79, 88, 67, 60, 58, 72, 70, 53, 70, 54, 69, 56, 60, 60, 64, 54, 110, 53, 61, 85, 78, 93, 60, 66, 71, 70, 57, 68, 80, 36, 56, 62, 83, 42, 69, 71, 65, 61, 52, 55, 67, 58, 61, 71, 75, 78, 51, 62, 68, 61, 75, 53, 62, 54, 78, 99, 67, 69, 78, 65, 62, 89, 60, 57, 53, 74, 54, 65, 63, 59, 64, 56, 54, 73, 62, 65, 72, 73, 59, 86, 60, 61, 56, 54, 55, 50, 55, 71, 58, 69, 54, 61, 55, 52, 58, 83, 62, 67, 69, 55, 50, 77, 80, 70, 65, 88, 63, 71, 71, 75, 118, 63, 75, 74, 61, 51, 45, 71, 82, 51, 61, 61, 82, 61, 59, 58, 75, 56, 59, 56, 45, 63, 50, 56, 67, 65, 45, 51, 64, 53, 59, 80, 57, 98, 56, 58, 63, 65, 85, 62, 64, 60, 55, 66, 69, 86, 58, 68, 62, 50, 63, 40, 51, 73, 62, 74, 92, 102, 55, 63, 67, 54, 70, 88, 55, 63, 61, 57, 53, 73, 62, 66, 57, 61, 59, 63, 61, 66, 60, 61, 117, 70, 82, 63, 99, 71, 71, 68, 79, 75, 68, 68, 74, 63, 58, 69, 76, 63, 60, 68, 62, 59, 71, 43, 59, 60, 44, 66, 70, 68, 61, 69, 74, 73, 66, 51, 61, 64, 54, 61, 61, 75, 54, 71, 53, 49, 47, 70, 60, 63, 66, 82, 50, 88, 58, 51, 55, 48, 90, 66, 45, 68, 76, 67, 54, 59, 78, 67, 51, 66, 70, 62, 60, 60, 66, 69, 71, 54, 53, 57, 81, 62, 58, 68, 63, 65, 65, 57, 68, 64, 67, 60, 56, 67, 58, 66, 63, 68, 62, 69, 70, 68, 62, 70, 64, 61, 100, 53, 61, 54, 57, 63, 67, 40, 71, 60, 71, 50, 50, 69, 57, 52, 71, 75, 63, 77, 74, 75, 67, 67, 50, 64, 69, 69, 54, 55, 70, 65, 64, 53, 57, 67, 61, 83, 74, 69, 73, 61, 69, 67, 59, 76, 57, 49, 54, 59, 59, 57, 77, 59, 68, 55, 61, 56, 56, 65, 66, 48, 65, 59, 86, 65, 57, 59, 54, 57, 61, 54, 68, 62, 56, 75, 79, 128, 85, 40, 53, 77, 54, 107, 57, 72, 65, 65, 87, 49, 80, 54, 66, 57, 63, 64, 46, 60, 81, 60, 60, 62, 71, 67, 61, 61, 81, 64, 55, 81, 48, 57, 64, 56, 67, 55, 64, 59, 57, 83, 84, 58, 94, 57, 66, 59, 66, 66, 64, 55, 90, 57, 47, 62, 92, 63, 68, 57, 60, 84, 86, 53, 80, 70, 79, 63, 49, 65, 47, 69, 115, 59, 123, 83, 70, 57, 65, 59, 63, 62, 57, 70, 55, 54, 49, 84, 54, 73, 42, 57, 58, 45, 75, 71, 60, 105, 77, 77, 66, 72, 67, 77, 61, 76, 50, 67, 65, 65, 72, 63, 57, 63, 58, 96, 46, 73, 56, 57, 79, 82, 61, 58, 65, 57, 56, 43, 83, 89, 50, 60, 72, 69, 90, 59, 78, 59, 66, 58, 67, 61, 67, 69, 75, 65, 70, 48, 60, 56, 64, 86, 53, 67, 59, 69, 62, 60, 65, 75, 49, 71, 64, 72, 71, 65, 59, 56, 86, 67, 72, 85, 56, 122, 61, 93, 85, 58, 58, 62, 60, 59, 67, 54, 61, 69, 57, 65, 62, 69, 69, 80, 87, 39, 69, 82, 42, 74, 63, 54, 67, 64, 60, 87, 67, 74, 78, 65, 68, 61, 54, 69, 86, 75, 57, 55, 51, 81, 49, 63, 69, 64, 68, 95, 56, 57, 71, 78, 51, 85, 56, 64, 54, 81, 79, 63, 59, 63, 50, 57, 59, 66, 49, 57, 81, 85, 66, 58, 72, 72, 60, 61, 45, 69, 57, 67, 56, 61, 56, 52, 68, 68, 69, 82, 77, 61, 62, 104, 79, 61, 46, 73, 65, 69, 66, 55, 68, 67, 48, 66, 48, 63, 66, 70, 58, 64, 67, 68, 46, 69, 46, 62, 68, 57, 55, 65, 69, 55, 63, 72, 66, 59, 59, 73, 66, 77, 59, 51, 49, 63, 59, 54, 54, 65, 70, 68, 76, 67, 65, 78, 75, 80, 96, 64, 63, 65, 66, 55, 50, 61, 69, 60, 56, 62, 73, 128, 102, 64, 60, 70, 56, 70, 54, 66, 76, 96, 63, 55, 70, 82, 60, 67, 125, 57, 72, 68, 60, 92, 65, 71, 71, 67, 67, 63, 51, 42, 69, 44, 58, 66, 80, 56, 83, 74, 69, 57, 65, 62, 71, 102, 77, 68, 51, 63, 59, 63, 58, 58, 57, 103, 57, 98, 66, 67, 49, 61, 54, 98, 67, 77, 80, 80, 75, 60, 58, 64, 59, 133, 68, 69, 50, 54, 53, 63, 63, 55, 64, 75, 67, 60, 66, 77, 93, 73, 68, 63, 64, 60, 84, 61, 90, 80, 60, 67, 64, 59, 58, 83, 64, 57, 57, 59, 60, 67, 56, 59, 86, 73, 52, 70, 56, 76, 75, 61, 62, 68, 61, 64, 76, 65, 66, 63, 81, 62, 53, 60, 55, 58, 65, 78, 58, 73, 80, 77, 88, 57, 66, 83, 54, 63, 65, 65, 48, 67, 72, 56, 63, 85, 59, 47, 51, 55, 93, 67, 59, 67, 60, 72, 62, 102, 69, 66, 79, 59, 64, 82, 55, 71, 88, 54, 56, 62, 72, 48, 62, 66, 62, 66, 68, 65, 61, 91, 59, 59, 51, 61, 48, 62, 59, 70, 67, 54, 69, 75, 122, 56, 64, 63, 59, 64, 69, 71, 75, 70, 62, 91, 64, 75, 92, 73, 62, 48, 59, 57, 63, 66, 78, 68, 56, 69, 94, 60, 51, 55, 71, 68, 71, 62, 91, 60, 58, 56, 49, 59, 60, 60, 93, 64, 63, 97, 64, 70, 75, 53, 54, 49, 119, 63, 52, 61, 74, 59, 64, 63, 55, 79, 68, 74, 66, 89, 76, 61, 61, 76, 68, 53, 89, 61, 53, 65, 44, 65, 95, 55, 57, 53, 58, 50, 60, 88, 56, 72, 86, 42, 62, 62, 51, 55, 58, 76, 59, 53, 66, 65, 56, 62, 44, 76, 69, 51, 62, 62, 84, 78, 45, 62, 69, 61, 79, 52, 107, 58, 63, 53, 83, 57, 54, 64, 53, 62, 49, 70, 65, 53, 71, 58, 57, 113, 57, 71, 41, 60, 65, 54, 78, 66, 77, 71, 61, 76, 61, 70, 41, 90, 93, 56, 73, 51, 58, 66, 69, 75, 68, 59, 78, 82, 43, 62, 74, 70, 85, 53, 66, 49, 122, 60, 68, 71, 71, 41, 55, 58, 61, 53, 56, 54, 70, 75, 93, 73, 64, 54, 70, 71, 57, 78, 84, 72, 72, 60, 59, 72, 59, 58, 45, 67, 98, 84, 57, 42, 58, 66, 77, 48, 65, 47, 38, 75, 69, 64, 54, 74, 71, 59, 76, 77, 71, 48, 51, 66, 67, 65, 65, 55, 79, 61, 58, 71, 101, 85, 53, 64, 64, 52, 47, 70, 58, 68, 54, 65, 66, 66, 53, 64, 76, 59, 62, 68, 67, 64, 46, 47, 80, 63, 74, 43, 62, 76, 50, 90, 95, 51, 53, 49, 73, 59, 52, 82, 53, 72, 55, 69, 80, 79, 93, 81, 89, 54, 60, 68, 69, 75, 38, 62, 71, 66, 52, 69, 62, 44, 53, 89, 63, 61, 72, 69, 69, 59, 53, 66, 74, 58, 50, 50, 75, 66, 85, 71, 55, 61, 73, 40, 63, 57, 63, 84, 71, 59, 64, 100, 92, 72, 56, 40, 72, 42, 62, 86, 85, 57, 76, 65, 79, 46, 75, 73, 76, 84, 85, 48, 80, 58, 63, 71, 43, 49, 75, 58, 96, 49, 64, 57, 58, 57, 79, 49, 48, 44, 81, 45, 42, 62, 89, 46, 85, 67, 48, 132, 72, 70, 70, 74, 71, 84, 60, 51, 65, 94, 94, 55, 60, 65, 69, 96, 48, 63, 83, 59, 94, 61, 55, 88, 59, 56, 57, 67, 75, 61, 63, 74, 51, 63, 58, 58, 51, 68, 76, 83, 72, 47, 60, 61, 64, 58, 53, 68, 64, 56, 54, 54, 67, 53, 96, 71, 78, 71, 58, 68, 88, 75, 116, 73, 48, 73, 51, 84, 101, 63, 63, 61, 54, 53, 41, 71, 71, 61, 60, 72, 50, 53, 71, 67, 72, 58, 71, 77, 70, 56, 66, 58, 67, 55, 65, 66, 61, 72, 65, 74, 67, 63, 78, 65, 73, 51, 67, 64, 50, 76, 71, 73, 54, 71, 45, 79, 79, 65, 74, 56, 59, 91, 91, 71, 68, 43, 71, 72, 51, 96, 70, 54, 54, 64, 102, 79, 46, 58, 53, 54, 71, 57, 65, 52, 57, 66, 57, 67, 81, 57, 69, 54, 60, 43, 76, 60, 65, 67, 57, 131, 66, 76, 50, 62, 70, 101, 51, 88, 60, 63, 104, 74, 45, 71, 73, 78, 45, 54, 49, 57, 81, 76, 65, 39, 82, 61, 54, 48, 67, 65, 71, 81, 87, 63, 52, 65, 79, 51, 93, 70, 69, 57, 39, 88, 57, 63, 43, 74, 62, 64, 57, 52, 95, 56, 43, 65, 52, 52, 75, 48, 67, 58, 58, 77, 59, 67, 71, 55, 74, 53, 82, 86, 60, 45, 79, 50, 66, 74, 64, 61, 48, 62, 55, 66, 70, 68, 72, 101, 86, 75, 70, 79, 66, 58, 66, 79, 91, 74, 54, 51, 60, 76, 71, 66, 57, 67, 57, 71, 71, 54, 60, 51, 49, 58, 69, 76, 60, 52, 63, 46, 52, 65, 74, 52, 66, 66, 54, 94, 58, 81, 77, 52, 97, 73, 56, 107, 56, 77, 73, 83, 68, 59, 68, 66, 58, 73, 56, 102, 69, 63, 82, 77, 72, 85, 51, 58, 34, 57, 43, 57, 59, 62, 66, 77, 48, 68, 61, 73, 63, 95, 56, 61, 97, 48, 90, 59, 69, 52, 54, 57, 66, 58, 49, 44, 64, 65, 64, 72, 69, 89, 67, 35, 80, 62, 68, 81, 54, 65, 67, 64, 98, 57, 57, 93, 51, 75, 52, 77, 95, 73, 46, 74, 65, 112, 64, 44, 70, 53, 64, 65, 54, 73, 56, 54, 67, 77, 76, 68, 45, 60, 41, 69, 60, 68, 63, 69, 58, 45, 52, 71, 66, 66, 63, 59, 61, 60, 47, 60, 56, 59, 71, 71, 80, 61, 61, 60, 65, 74, 75, 54, 50, 76, 62, 95, 41, 58, 72, 60, 57, 52, 62, 70, 65, 67, 76, 74, 66, 63, 61, 69, 55, 57, 63, 59, 87, 81, 65, 50, 56, 62, 63, 54, 51, 42, 66, 73, 71, 52, 63, 95, 56, 61, 57, 49, 69, 96, 54, 54, 58, 78, 74, 45, 78, 54, 75, 58, 70, 45, 62, 62, 59, 75, 57, 72, 61, 95, 64, 51, 74, 60, 62, 58, 76, 91, 71, 55, 66, 79, 65, 40, 69, 68, 59, 74, 122, 68, 67, 46, 57, 67, 66, 59, 83, 47, 75, 72, 62, 77, 93, 69, 60, 49, 52, 64, 64, 71, 70, 56, 66, 55, 60, 66, 68, 53, 53, 56, 72, 77, 79, 73, 61, 49, 47, 42, 79, 71, 52, 85, 57, 90, 69, 56, 50, 63, 54, 56, 71, 65, 68, 57, 55, 117, 109, 90, 65, 68, 57, 64, 69, 84, 64, 62, 81, 83, 59, 63, 69, 76, 66, 52, 59, 73, 51, 70, 82, 83, 66, 62, 69, 53, 71, 50, 47, 53, 58, 49, 58, 58, 75, 77, 74, 47, 72, 73, 58, 73, 59, 71, 80, 73, 72, 61, 77, 87, 60, 46, 84, 76, 64, 49, 60, 54, 70, 61, 74, 69, 60, 90, 77, 58, 68, 89, 53, 79, 98, 102, 61, 49, 88, 68, 71, 68, 71, 83, 70, 51, 50, 42, 77, 56, 58, 64, 46, 74, 155, 71, 62, 47, 65, 64, 66, 49, 71, 58, 53, 65, 53, 53, 69, 67, 68, 63, 74, 77, 71, 51, 71, 75, 55, 67, 82, 56, 80, 67, 83, 61, 63, 72, 46, 71, 67, 109, 85, 56, 81, 71, 53, 65, 87, 67, 67, 77, 70, 67, 55, 63, 53, 75, 60, 89, 52, 69, 81, 55, 73, 73, 63, 66, 49, 54, 80, 54, 76, 56, 57, 67, 54, 59, 81, 57, 62, 90, 80, 48, 60, 114, 59, 66, 63, 91, 45, 53, 94, 67, 73, 54, 58, 48, 84, 55, 61, 57, 52, 81, 63, 54, 68, 49, 69, 71, 57, 61, 82, 65, 63, 72, 80, 66, 65, 43, 60, 56, 90, 60, 47, 47, 79, 65, 64, 73, 55, 82, 64, 76, 59, 39, 101, 41, 106, 69, 70, 59, 53, 58, 68, 70, 76, 52, 75, 67, 55, 60, 44, 51, 90, 56, 53, 75, 77, 70, 86, 72, 68, 68, 62, 88, 75, 80, 44, 69, 81, 61, 76, 50, 76, 55, 75, 82, 87, 61, 51, 48, 58, 63, 53, 71, 61, 56, 64, 43, 52, 69, 56, 66, 47, 58, 54, 70, 86, 64, 45, 72, 74, 89, 69, 44, 83, 50, 54, 66, 97, 64, 61, 59, 63, 73, 54, 71, 55, 57, 51, 79, 51, 65, 51, 49, 59, 63, 72, 65, 58, 52, 71, 61, 73, 72, 96, 59, 86, 72, 66, 46, 57, 55, 78, 75, 70, 60, 59, 58, 82, 63, 47, 79, 64, 61, 64, 57, 85, 65, 65, 48, 57, 52, 53, 74, 53, 69, 59, 78, 71, 54, 52, 47, 75, 73, 73, 53, 77, 69, 77, 55, 62, 76, 55, 47, 51, 68, 68, 65, 68, 64, 106, 47, 76, 43, 96, 70, 68, 52, 63, 45, 57, 45, 73, 51, 59, 87, 60, 60, 146, 46, 46, 69, 55, 85, 73, 63, 68, 60, 77, 66, 69, 64, 52, 58, 72, 64, 91, 66, 66, 71, 53, 73, 49, 84, 52, 77, 68, 51, 70, 123, 58, 80, 54, 50, 57, 63, 58, 67, 60, 59, 63, 59, 56, 63, 44, 64, 65, 62, 94, 67, 67, 56, 73, 66, 66, 68, 67, 63, 75, 81, 45, 53, 50, 81, 66, 70, 58, 66, 82, 69, 70, 78, 55, 88, 81, 63, 71, 63, 79, 61, 53, 60, 86, 70, 53, 65, 70, 58, 71, 96, 60, 50, 62, 58, 61, 50, 99, 66, 54, 94, 65, 111, 67, 52, 49, 53, 66, 66, 51, 93, 56, 36, 72, 54, 63, 59, 68, 73, 72, 66, 51, 82, 63, 102, 58, 68, 64, 50, 63, 64, 70, 50, 74, 53, 77, 81, 80, 55, 78, 55, 56, 68, 65, 63, 57, 67, 66, 63, 61, 54, 42, 75, 38, 48, 79, 80, 68, 75, 46, 57, 60, 75, 66, 54, 78, 88, 71, 58, 55, 52, 97, 67, 54, 44, 48, 60, 72, 58, 77, 98, 60, 65, 61, 56, 70, 61, 68, 52, 70, 67, 76, 53, 89, 79, 54, 78, 52, 75, 62, 77, 58, 54, 91, 62, 65, 58, 50, 58, 53, 45, 61, 58, 64, 50, 73, 76, 76, 78, 55, 78, 71, 63, 77, 88, 52, 89, 63, 71, 55, 50, 64, 65, 58, 60, 60, 65, 93, 73, 63, 55, 78, 61, 60, 80, 68, 76, 73, 78, 68, 64, 71, 64, 109, 70, 75, 77, 65, 80, 72, 50, 57, 72, 49, 50, 58, 70, 59, 68, 61, 52, 64, 58, 47, 52, 59, 70, 81, 55, 61, 57, 62, 110, 55, 92, 71, 66, 52, 75, 84, 59, 61, 81, 44, 59, 61, 60, 64, 85, 61, 51, 63, 68, 70, 105, 74, 49, 67, 51, 67, 82, 80, 69, 77, 66, 82, 63, 60, 62, 54, 89, 59, 59, 83, 56, 61, 80, 45, 74, 65, 56, 61, 42, 62, 78, 49, 78, 49, 58, 71, 55, 82, 63, 55, 65, 81, 68, 84, 108, 79, 62, 59, 126, 44, 64, 60, 52, 64, 51, 53, 77, 99, 59, 70, 71, 60, 70, 56, 67, 105, 45, 77, 77, 54, 55, 51, 51, 35, 82, 69, 69, 73, 60, 68, 71, 63, 71, 75, 68, 79, 48, 58, 53, 57, 67, 48, 52, 73, 62, 79, 68, 66, 55, 66, 61, 74, 98, 63, 65, 67, 64, 72, 49, 40, 53, 57, 61, 87, 69, 55, 78, 60, 54, 68, 80, 73, 66, 84, 71, 102, 78, 52, 71, 100, 53, 67, 51, 52, 88, 72, 69, 64, 74, 70, 67, 59, 99, 78, 82, 74, 73, 56, 68, 53, 39, 65, 63, 72, 65, 88, 59, 56, 76, 48, 64, 58, 85, 69, 73, 53, 63, 94, 73, 72, 52, 59, 62, 48, 58, 111, 61, 46, 59, 52, 38, 60, 80, 59, 67, 62, 66, 60, 62, 62, 91, 92, 64, 87, 48, 64, 50, 66, 84, 72, 32, 53, 69, 83, 57, 55, 44, 66, 56, 101, 113, 124, 59, 66, 78, 58, 67, 57, 67, 61, 45, 57, 61, 78, 85, 38, 67, 75, 74, 80, 53, 69, 62, 56, 57, 59, 71, 63, 72, 45, 66, 60, 72, 69, 55, 93, 72, 64, 88, 50, 50, 66, 65, 69, 68, 71, 83, 67, 53, 73, 74, 71, 83, 56, 115, 60, 68, 82, 72, 46, 52, 82, 80, 54, 76, 74, 71, 51, 51, 57, 49, 58, 46, 58, 70, 62, 53, 43, 68, 70, 69, 63, 50, 67, 62, 101, 64, 88, 54, 71, 63, 41, 66, 68, 83, 86, 83, 61, 65, 66, 63, 55, 59, 65, 60, 70, 66, 51, 63, 65, 53, 54, 42, 66, 57, 93, 68, 64, 61, 46, 73, 67, 70, 53, 87, 64, 61, 56, 36, 77, 53, 68, 54, 65, 75, 70, 131, 86, 56, 71, 50, 68, 64, 74, 75, 50, 59, 62, 46, 54, 65, 99, 58, 49, 51, 75, 49, 95, 57, 60, 52, 66, 65, 62, 92, 54, 73, 49, 58, 71, 60, 48, 88, 89, 65, 69, 73, 63, 62, 59, 46, 55, 67, 85, 65, 84, 47, 66, 66, 57, 60, 73, 67, 104, 68, 65, 78, 52, 55, 61, 61, 54, 45, 57, 59, 53, 54, 80, 67, 62, 69, 69, 51, 84, 66, 66, 75, 63, 57, 90, 68, 69, 70, 108, 76, 76, 89, 59, 61, 58, 82, 73, 57, 80, 47, 58, 89, 73, 51, 62, 60, 72, 112, 50, 85, 57, 51, 62, 100, 94, 58, 73, 84, 94, 50, 160, 80, 68, 44, 73, 50, 68, 82, 44, 73, 105, 63, 73, 63, 88, 63, 77, 63, 64, 58, 55, 45, 59, 50, 69, 75, 82, 65, 71, 50, 77, 83, 59, 65, 78, 87, 66, 60, 52, 57, 50, 59, 92, 85, 76, 45, 67, 74, 67, 82, 70, 143, 59, 67, 106, 58, 46, 60, 90, 76, 72, 66, 67, 41, 57, 55, 54, 71, 57, 59, 101, 84, 51, 48, 66, 64, 77, 86, 46, 58, 55, 57, 48, 64, 58, 63, 78, 70, 67, 50, 67, 64, 66, 75, 62, 66, 74, 67, 78, 79, 67, 64, 80, 62, 76, 71, 71, 74, 82, 53, 60, 71, 66, 76, 85, 83, 62, 73, 78, 61, 65, 65, 97, 72, 70, 63, 85, 112, 72, 55, 67, 54, 80, 62, 67, 52, 64, 70, 73, 60, 69, 73, 65, 71, 53, 84, 69, 64, 53, 69, 64, 60, 74, 55, 56, 66, 59, 58, 57, 59, 61, 57, 49, 60, 64, 81, 67, 60, 61, 47, 51, 52, 68, 67, 86, 46, 69, 78, 56, 112, 91, 49, 49, 70, 84, 55, 79, 64, 70, 72, 65, 63, 58, 80, 69, 59, 66, 68, 54, 63, 78, 70, 44, 84, 70, 57, 49, 54, 71, 59, 67, 61, 58, 54, 54, 70, 88, 67, 95, 94, 80, 73, 85, 71, 77, 62, 62, 74, 46, 99, 66, 101, 79, 76, 65, 49, 77, 61, 73, 64, 52, 58, 60, 71, 85, 68, 65, 51, 67, 61, 58, 73, 55, 43, 28, 72, 64, 72, 51, 55, 58, 59, 58, 69, 76, 64, 104, 78, 72, 55, 73, 47, 59, 86, 94, 67, 65, 69, 81, 70, 74, 51, 69, 73, 65, 57, 84, 66, 78, 49, 73, 74, 66, 72, 80, 45, 56, 83, 82, 57, 73, 52, 65, 67, 56, 72, 76, 62, 58, 52, 57, 84, 59, 66, 73, 77, 72, 75, 71, 71, 49, 55, 72, 55, 48, 52, 67, 79, 90, 77, 83, 64, 46, 67, 59, 57, 84, 62, 80, 62, 64, 94, 52, 73, 76, 87, 75, 70, 73, 64, 61, 98, 73, 68, 70, 55, 62, 58, 52, 69, 50, 81, 68, 62, 85, 70, 54, 67, 64, 58, 70, 40, 77, 40, 65, 77, 50, 46, 62, 80, 71, 59, 43, 67, 75, 49, 76, 49, 66, 64, 75, 58, 45, 81, 86, 84, 65, 69, 89, 76, 63, 71, 60, 74, 60, 61, 81, 68, 57, 61, 63, 53, 60, 89, 84, 49, 95, 62, 60, 62, 69, 63, 58, 86, 48, 61, 60, 51, 70, 47, 52, 42, 67, 63, 74, 72, 83, 40, 60, 69, 53, 55, 55, 63, 51, 81, 65, 83, 70, 70, 70, 68, 67, 68, 104, 49, 76, 66, 69, 63, 93, 62, 45, 51, 93, 89, 56, 56, 56, 71, 86, 84, 78, 50, 55, 62, 67, 75, 46, 98, 68, 53, 61, 60, 67, 61, 59, 55, 62, 67, 42, 87, 97, 87, 65, 56, 54, 54, 67, 58, 56, 66, 77, 97, 66, 52, 86, 68, 75, 55, 67, 76, 49, 52, 34, 66, 90, 63, 78, 75, 58, 55, 59, 72, 56, 88, 58, 55, 70, 64, 40, 62, 70, 93, 66, 65, 52, 75, 57, 80, 70, 75, 64, 71, 53, 63, 67, 68, 70, 65, 47, 68, 37, 73, 63, 84, 58, 58, 52, 48, 55, 85, 61, 71, 51, 62, 68, 54, 77, 77, 68, 54, 55, 55, 82, 77, 103, 62, 70, 58, 68, 47, 82, 61, 77, 50, 66, 68, 74, 88, 61, 68, 83, 84, 56, 42, 66, 67, 50, 61, 92, 64, 49, 26, 55, 72, 52, 75, 36, 76, 58, 72, 100, 61, 90, 61, 77, 47, 54, 59, 58, 52, 68, 66, 72, 42, 89, 68, 72, 60, 92, 64, 52, 106, 79, 94, 54, 60, 53, 57, 114, 67, 75, 48, 80, 59, 78, 77, 68, 53, 103, 58, 68, 39, 82, 73, 77, 59, 46, 51, 67, 68, 53, 45, 110, 73, 83, 61, 47, 42, 56, 52, 44, 66, 79, 65, 82, 83, 42, 82, 59, 68, 95, 63, 73, 59, 53, 57, 56, 71, 70, 71, 107, 74, 65, 81, 51, 62, 70, 58, 63, 60, 63, 55, 60, 58, 54, 62, 71, 69, 73, 64, 74, 65, 77, 46, 60, 49, 61, 59, 55, 61, 71, 54, 64, 77, 64, 59, 66, 63, 80, 77, 72, 93, 61, 60, 67, 63, 49, 59, 63, 64, 56, 58, 60, 78, 50, 73, 53, 87, 75, 78, 64, 78, 60, 62, 92, 61, 58, 62, 55, 53, 69, 59, 71, 120, 78, 56, 76, 66, 93, 64, 76, 64, 78, 55, 96, 63, 81, 75, 86, 80, 51, 61, 70, 69, 53, 114, 54, 55, 90, 64, 43, 60, 90, 47, 68, 73, 76, 76, 95, 80, 120, 73, 45, 48, 80, 70, 72, 80, 74, 68, 75, 76, 69, 89, 64, 56, 155, 62, 75, 49, 65, 52, 94, 45, 56, 42, 72, 73, 72, 54, 74, 83, 54, 43, 82, 76, 62, 61, 82, 78, 61, 70, 73, 36, 81, 58, 68, 51, 96, 53, 116, 69, 61, 60, 84, 85, 70, 67, 48, 84, 89, 62, 55, 64, 65, 99, 58, 46, 75, 62, 49, 71, 69, 68, 56, 65, 61, 140, 38, 66, 91, 84, 52, 58, 70, 57, 40, 50, 61, 53, 58, 55, 51, 84, 71, 52, 49, 86, 46, 59, 77, 69, 60, 61, 89, 59, 63, 68, 54, 65, 90, 62, 59, 53, 69, 68, 57, 61, 78, 62, 73, 62, 60, 50, 65, 62, 65, 68, 63, 67, 70, 62, 68, 60, 64, 49, 97, 81, 69, 74, 56, 74, 63, 60, 58, 49, 62, 52, 88, 58, 65, 71, 81, 79, 56, 55, 70, 69, 61, 77, 82, 48, 91, 91, 84, 87, 56, 86, 75, 80, 53, 62, 71, 65, 80, 64, 54, 50, 74, 58, 49, 76, 80, 74, 49, 55, 58, 61, 59, 75, 54, 66, 58, 69, 77, 63, 68, 65, 69, 57, 70, 42, 63, 65, 67, 49, 58, 69, 76, 83, 72, 60, 68, 50, 64, 81, 58, 54, 55, 57, 95, 81, 70, 91, 64, 52, 68, 55, 79, 84, 50, 61, 44, 62, 52, 69, 78, 43, 57, 45, 99, 77, 34, 91, 45, 69, 85, 71, 60, 65, 41, 60, 58, 55, 110, 37, 89, 51, 60, 55, 49, 70, 54, 76, 63, 56, 63, 50, 64, 50, 62, 107, 74, 77, 66, 69, 60, 71, 61, 61, 86, 64, 59, 66, 86, 53, 69, 70, 98, 91, 54, 63, 50, 39, 67, 50, 55, 41, 55, 54, 41, 90, 61, 54, 93, 59, 68, 87, 53, 60, 53, 71, 69, 130, 65, 47, 81, 60, 52, 84, 102, 58, 90, 69, 73, 60, 74, 71, 60, 83, 63, 103, 72, 90, 71, 70, 59, 91, 67, 57, 56, 64, 61, 61, 61, 58, 68, 44, 82, 53, 85, 69, 47, 75, 74, 52, 81, 91, 70, 71, 67, 62, 77, 51, 68, 54, 79, 70, 70, 75, 45, 64, 70, 60, 85, 75, 69, 57, 72, 86, 82, 76, 67, 68, 63, 82, 54, 68, 102, 107, 67, 87, 60, 74, 71, 38, 66, 67, 71, 57, 120, 59, 78, 67, 75, 60, 74, 56, 71, 65, 86, 90, 67, 54, 71, 117, 68, 71, 56, 54, 73, 54, 48, 64, 58, 64, 57, 60, 75, 66, 57, 70, 75, 55, 57, 50, 63, 90, 57, 69, 108, 64, 62, 76, 87, 51, 66, 49, 97, 66, 68, 94, 63, 50, 53, 81, 68, 113, 53, 79, 78, 60, 46, 58, 64, 61, 67, 67, 66, 58, 59, 81, 50, 41, 49, 42, 59, 58, 59, 54, 75, 63, 63, 71, 75, 56, 70, 55, 76, 103, 51, 74, 54, 96, 49, 33, 54, 76, 71, 67, 57, 53, 57, 66, 73, 39, 74, 96, 72, 88, 77, 71, 94, 78, 85, 66, 62, 51, 52, 71, 59, 86, 75, 54, 67, 57, 71, 58, 57, 57, 62, 64, 68, 89, 76, 59, 45, 41, 61, 83, 56, 73, 78, 49, 70, 63, 59, 73, 50, 58, 59, 48, 85, 55, 39, 94, 55, 68, 91, 62, 69, 54, 63, 61, 49, 72, 67, 66, 81, 61, 72, 71, 71, 53, 44, 70, 71, 62, 66, 93, 116, 65, 40, 66, 72, 56, 93, 73, 40, 69, 86, 59, 56, 74, 71, 86, 66, 41, 57, 53, 61, 48, 75, 78, 58, 83, 71, 45, 78, 62, 67, 40, 57, 58, 72, 106, 70, 79, 64, 55, 64, 61, 47, 97, 53, 105, 55, 100, 63, 60, 59, 84, 70, 39, 64, 62, 48, 57, 84, 86, 71, 46, 68, 43, 81, 85, 44, 40, 59, 59, 44, 62, 61, 79, 36, 67, 72, 51, 78, 73, 54, 52, 68, 75, 57, 50, 52, 42, 59, 78, 64, 67, 69, 60, 73, 77, 67, 40, 84, 61, 39, 55, 46, 51, 61, 53, 64, 53, 58, 74, 56, 79, 81, 52, 65, 45, 70, 55, 48, 63, 56, 78, 39, 87, 69, 71, 68, 63, 50, 55, 81, 57, 54, 62, 76, 64, 64, 83, 95, 63, 64, 120, 54, 87, 82, 83, 72, 60, 77, 52, 60, 71, 70, 61, 77, 43, 43, 62, 78, 87, 64, 63, 69, 53, 59, 85, 56, 75, 65, 46, 72, 81, 94, 55, 84, 62, 41, 67, 86, 82, 73, 64, 85, 56, 117, 76, 54, 64, 59, 83, 55, 113, 76, 36, 91, 54, 66, 93, 74, 80, 72, 59, 103, 53, 108, 54, 61, 62, 75, 70, 78, 71, 99, 55, 51, 71, 88, 68, 83, 62, 68, 69, 72, 83, 59, 50, 51, 59, 58, 46, 56, 80, 51, 40, 78, 78, 68, 64, 65, 66, 82, 57, 126, 63, 58, 76, 98, 56, 39, 85, 44, 54, 64, 66, 55, 85, 73, 81, 63, 61, 71, 67, 67, 75, 62, 94, 75, 92, 57, 66, 71, 71, 71, 75, 52, 53, 77, 79, 62, 50, 42, 56, 48, 64, 96, 41, 68, 66, 50, 70, 55, 69, 60, 54, 95, 73, 82, 67, 53, 42, 69, 58, 47, 81, 54, 97, 62, 47, 74, 56, 73, 62, 56, 69, 59, 58, 76, 60, 69, 58, 55, 82, 64, 67, 56, 73, 66, 70, 52, 79, 82, 96, 75, 81, 61, 29, 60, 57, 63, 64, 69, 79, 45, 65, 64, 78, 47, 85, 61, 70, 88, 88, 62, 58, 50, 59, 39, 60, 70, 76, 58, 63, 79, 56, 70, 97, 108, 77, 66, 79, 66, 77, 63, 68, 61, 46, 56, 58, 60, 50, 77, 61, 53, 55, 78, 62, 59, 48, 42, 61, 60, 52, 67, 55, 60, 75, 58, 67, 82, 58, 70, 47, 57, 62, 54, 66, 58, 75, 67, 73, 53, 41, 72, 54, 49, 51, 77, 57, 95, 85, 53, 61, 76, 33, 74, 76, 53, 80, 46, 66, 53, 74, 62, 90, 51, 58, 89, 71, 81, 79, 59, 74, 78, 54, 77, 46, 63, 43, 78, 66, 90, 74, 50, 71, 81, 56, 55, 86, 85, 46, 70, 85, 64, 59, 55, 46, 122, 78, 71, 65, 68, 74, 55, 98, 38, 48, 70, 95, 67, 82, 71, 66, 58, 91, 71, 98, 48, 56, 65, 76, 82, 50, 63, 53, 71, 70, 64, 51, 59, 71, 77, 72, 78, 67, 46, 56, 48, 73, 95, 44, 68, 68, 54, 69, 42, 60, 46, 62, 89, 116, 66, 73, 55, 49, 54, 51, 65, 40, 51, 63, 82, 81, 66, 61, 72, 64, 83, 99, 60, 78, 64, 80, 62, 78, 62, 53, 60, 47, 43, 77, 98, 55, 67, 49, 68, 76, 69, 68, 58, 49, 72, 69, 58, 60, 59, 53, 59, 51, 100, 55, 55, 67, 64, 94, 71, 56, 75, 52, 59, 46, 51, 33, 57, 108, 58, 75, 68, 58, 77, 75, 64, 68, 102, 75, 58, 81, 94, 84, 63, 58, 57, 90, 57, 70, 65, 64, 52, 57, 82, 75, 48, 74, 52, 105, 48, 35, 73, 74, 60, 64, 79, 71, 76, 72, 52, 60, 60, 62, 72, 97, 65, 64, 66, 59, 63, 71, 72, 73, 73, 72, 75, 60, 71, 136, 52, 49, 87, 57, 48, 46, 90, 51, 68, 69, 55, 67, 66, 65, 61, 88, 50, 81, 65, 59, 51, 56, 48, 65, 49, 76, 64, 66, 56, 79, 55, 67, 78, 77, 73, 53, 69, 69, 64, 60, 70, 91, 89, 61, 68, 70, 75, 51, 60, 70, 72, 55, 67, 50, 48, 73, 63, 48, 97, 90, 51, 62, 57, 61, 69, 63, 73, 63, 53, 41, 80, 61, 139, 73, 38, 58, 69, 101, 71, 69, 65, 57, 67, 47, 82, 76, 80, 71, 71, 51, 50, 50, 72, 86, 56, 48, 45, 60, 73, 55, 55, 71, 55, 66, 57, 67, 56, 62, 49, 70, 74, 75, 59, 73, 63, 63, 69, 57, 75, 74, 74, 64, 64, 49, 68, 59, 56, 80, 43, 52, 69, 72, 56, 60, 101, 84, 55, 62, 39, 63, 52, 48, 53, 56, 93, 47, 71, 73, 77, 61, 74, 81, 58, 63, 37, 57, 58, 78, 73, 78, 57, 85, 54, 49, 57, 58, 73, 71, 95, 56, 51, 59, 68, 49, 47, 55, 70, 61, 45, 54, 62, 87, 49, 61, 74, 50, 52, 71, 66, 61, 38, 103, 78, 87, 64, 69, 54, 83, 88, 50, 63, 72, 47, 62, 71, 104, 77, 73, 94, 95, 63, 56, 86, 68, 108, 56, 54, 71, 46, 61, 81, 94, 78, 58, 110, 102, 60, 73, 57, 53, 68, 44, 67, 70, 92, 71, 74, 67, 53, 78, 69, 50, 47, 86, 77, 73, 61, 60, 48, 79, 66, 78, 55, 74, 83, 45, 53, 80, 64, 73, 52, 60, 68, 71, 71, 95, 57, 49, 62, 56, 59, 49, 95, 50, 75, 60, 51, 62, 54, 56, 70, 61, 59, 56, 64, 78, 54, 59, 64, 51, 71, 63, 85, 89, 71, 62, 90, 48, 79, 61, 53, 49, 69, 58, 63, 69, 63, 64, 76, 75, 58, 42, 66, 54, 67, 86, 90, 64, 55, 66, 42, 74, 37, 54, 52, 52, 70, 51, 67, 57, 77, 67, 54, 67, 54, 63, 58, 89, 61, 65, 116, 74, 63, 68, 70, 86, 58, 83, 66, 70, 58, 69, 56, 70, 78, 61, 72, 58, 49, 54, 73, 83, 71, 48, 47, 81, 88, 74, 51, 82, 63, 66, 72, 57, 52, 84, 89, 75, 68, 49, 75, 72, 54, 69, 40, 56, 62, 49, 68, 44, 63, 56, 51, 79, 72, 67, 82, 72, 103, 62, 77, 68, 57, 71, 43, 72, 46, 62, 78, 63, 48, 65, 71, 47, 65, 65, 57, 67, 69, 48, 45, 60, 80, 73, 49, 64, 75, 94, 72, 71, 57, 68, 91, 73, 81, 54, 57, 101, 71, 61, 61, 64, 60, 105, 68, 64, 78, 72, 59, 50, 69, 50, 73, 66, 79, 89, 78, 95, 57, 59, 73, 50, 56, 67, 60, 64, 57, 46, 60, 42, 76, 72, 59, 70, 61, 54, 76, 84, 51, 51, 71, 50, 68, 60, 61, 56, 75, 91, 69, 69, 87, 91, 98, 73, 62, 73, 62, 78, 58, 47, 62, 54, 104, 89, 59, 52, 69, 51, 67, 59, 73, 54, 63, 60, 56, 54, 109, 67, 78, 62, 60, 42, 65, 58, 85, 65, 62, 87, 98, 61, 63, 65, 60, 58, 62, 50, 58, 69, 71, 66, 49, 63, 60, 60, 63, 74, 53, 68, 42, 54, 63, 84, 56, 72, 66, 95, 71, 63, 67, 55, 49, 57, 58, 74, 37, 74, 59, 55, 112, 51, 65, 61, 70, 76, 43, 70, 80, 58, 58, 62, 50, 55, 46, 79, 76, 66, 109, 63, 63, 70, 78, 66, 57, 48, 42, 38, 63, 62, 65, 64, 82, 60, 59, 60, 65, 52, 61, 53, 72, 55, 53, 53, 46, 72, 59, 41, 53, 51, 67, 87, 82, 81, 67, 55, 78, 50, 83, 73, 35, 55, 80, 59, 88, 46, 64, 67, 56, 47, 61, 60, 63, 88, 54, 69, 54, 47, 55, 68, 72, 72, 50, 73, 118, 64, 67, 58, 93, 54, 56, 65, 70, 51, 67, 67, 47, 63, 78, 75, 76, 50, 52, 63, 74, 58, 66, 53, 81, 76, 77, 53, 65, 69, 83, 72, 79, 61, 62, 58, 66, 46, 48, 90, 62, 59, 86, 101, 48, 58, 80, 55, 67, 63, 72, 99, 67, 57, 111, 66, 42, 54, 49, 73, 66, 66, 106, 118, 78, 61, 66, 86, 47, 62, 51, 31, 76, 62, 61, 64, 60, 104, 74, 94, 38, 52, 73, 79, 84, 67, 68, 66, 50, 67, 81, 76, 51, 89, 58, 72, 70, 73, 99, 52, 82, 58, 96, 71, 57, 70, 53, 88, 61, 60, 63, 83, 56, 71, 60, 70, 49, 80, 86, 54, 79, 61, 56, 64, 64, 63, 54, 52, 45, 66, 89, 73, 53, 101, 74, 64, 52, 57, 82, 56, 67, 64, 87, 65, 50, 71, 48, 62, 67, 65, 62, 55, 55, 88, 85, 64, 99, 59, 46, 69, 76, 72, 65, 54, 48, 66, 65, 52, 67, 66, 69, 68, 81, 68, 56, 48, 94, 76, 66, 65, 105, 52, 50, 71, 62, 53, 67, 53, 100, 72, 66, 48, 48, 62, 68, 42, 74, 58, 56, 38, 50, 68, 76, 65, 85, 72, 69, 63, 57, 63, 89, 63, 67, 52, 81, 69, 69, 81, 70, 51, 57, 58, 73, 67, 58, 52, 62, 73, 40, 78, 76, 81, 40, 86, 130, 55, 66, 89, 47, 65, 72, 76, 67, 77, 78, 62, 70, 49, 76, 58, 83, 97, 65, 53, 68, 58, 58, 49, 96, 57, 87, 46, 63, 55, 60, 59, 76, 81, 73, 74, 58, 52, 78, 57, 63, 76, 54, 83, 45, 78, 67, 77, 76, 121, 65, 135, 66, 66, 76, 54, 66, 58, 78, 43, 82, 69, 57, 78, 65, 60, 65, 58, 101, 93, 75, 59, 73, 91, 58, 70, 75, 61, 68, 62, 80, 46, 60, 44, 72, 78, 76, 89, 87, 66, 82, 63, 57, 87, 70, 84, 63, 68, 68, 64, 67, 74, 52, 74, 96, 69, 76, 67, 63, 54, 50, 72, 83, 71, 74, 77, 48, 56, 52, 77, 64, 48, 56, 72, 92, 46, 60, 78, 67, 53, 54, 55, 49, 51, 62, 82, 69, 72, 58, 82, 99, 85, 63, 72, 55, 59, 47, 72, 62, 73, 52, 69, 60, 56, 74, 75, 68, 59, 79, 89, 80, 55, 73, 86, 72, 61, 53, 62, 78, 61, 53, 59, 58, 53, 54, 49, 58, 56, 92, 56, 70, 64, 66, 49, 65, 89, 70, 81, 62, 56, 72, 51, 54, 67, 97, 66, 92, 92, 82, 72, 73, 53, 75, 77, 61, 57, 58, 88, 53, 56, 50, 78, 64, 68, 53, 67, 70, 50, 71, 52, 56, 53, 93, 53, 56, 69, 82, 82, 54, 75, 53, 67, 59, 73, 65, 63, 46, 67, 72, 70, 98, 59, 43, 69, 70, 55, 54, 67, 78, 81, 59, 67, 123, 67, 98, 49, 53, 69, 106, 70, 73, 63, 55, 77, 70, 59, 48, 68, 63, 79, 76, 70, 56, 48, 59, 51, 61, 66, 60, 77, 89, 72, 59, 41, 51, 109, 55, 49, 72, 55, 62, 73, 59, 64, 60, 61, 50, 49, 64, 50, 66, 57, 55, 63, 65, 41, 58, 81, 63, 60, 67, 57, 54, 64, 46, 80, 46, 77, 68, 73, 81, 60, 58, 93, 55, 81, 81, 54, 64, 62, 59, 64, 65, 63, 56, 81, 72, 80, 70, 102, 67, 80, 69, 61, 67, 62, 77, 49, 70, 63, 67, 77, 37, 50, 70, 60, 87, 61, 57, 60, 61, 71, 65, 57, 50, 61, 89, 59, 69, 53, 44, 70, 105, 55, 47, 72, 59, 89, 58, 72, 97, 154, 70, 107, 54, 63, 81, 87, 54, 62, 62, 77, 67, 95, 50, 107, 93, 45, 90, 69, 57, 84, 67, 94, 57, 48, 79, 80, 80, 69, 55, 86, 84, 58, 58, 50, 76, 74, 74, 53, 97, 83, 69, 56, 33, 60, 105, 54, 70, 61, 64, 60, 32, 89, 57, 69, 79, 56, 64, 32, 62, 59, 87, 115, 41, 86, 77, 55, 59, 89, 58, 48, 63, 51, 69, 50, 65, 80, 62, 56, 59, 60, 75, 57, 78, 66, 59, 51, 61, 48, 86, 49, 47, 61, 59, 62, 65, 64, 68, 54, 62, 44, 57, 60, 80, 80, 65, 75, 88, 53, 73, 68, 94, 45, 53, 59, 47, 48, 75, 98, 53, 61, 64, 74, 78, 50, 79, 96, 70, 66, 62, 75, 79, 74, 78, 81, 60, 61, 59, 66, 53, 49, 77, 47, 121, 91, 75, 63, 76, 63, 59, 51, 46, 60, 65, 77, 67, 52, 63, 63, 46, 76, 61, 68, 49, 61, 73, 77, 59, 76, 53, 64, 54, 55, 68, 56, 50, 74, 72, 88, 43, 85, 64, 51, 54, 49, 62, 40, 53, 58, 77, 68, 92, 55, 44, 53, 52, 56, 67, 71, 65, 71, 56, 58, 69, 62, 76, 75, 68, 60, 66, 57, 74, 77, 51, 64, 89, 47, 82, 59, 52, 66, 57, 59, 75, 80, 51, 69, 60, 48, 56, 68, 84, 83, 57, 51, 58, 70, 68, 71, 53, 77, 68, 49, 57, 50, 95, 77, 59, 80, 85, 62, 55, 61, 77, 70, 61, 71, 48, 62, 56, 69, 78, 56, 70, 44, 51, 56, 59, 67, 78, 52, 72, 114, 73, 52, 61, 71, 50, 62, 80, 50, 109, 40, 79, 105, 100, 64, 66, 60, 83, 52, 45, 91, 41, 71, 53, 62, 64, 71, 66, 76, 103, 51, 79, 76, 57, 54, 56, 80, 88, 84, 78, 63, 60, 65, 41, 54, 62, 55, 90, 52, 57, 75, 68, 59, 70, 56, 48, 68, 49, 81, 66, 66, 40, 51, 70, 76, 58, 74, 54, 61, 43, 43, 52, 53, 66, 60, 59, 60, 65, 49, 75, 54, 67, 61, 63, 58, 57, 69, 47, 71, 65, 59, 103, 92, 79, 47, 59, 74, 72, 85, 68, 61, 89, 61, 60, 44, 65, 73, 65, 92, 82, 70, 87, 47, 53, 40, 60, 67, 71, 65, 71, 35, 80, 48, 65, 106, 51, 65, 66, 58, 82, 50, 95, 46, 75, 69, 72, 56, 44, 50, 78, 75, 69, 56, 79, 112, 50, 77, 53, 61, 62, 103, 85, 66, 81, 80, 67, 75, 62, 53, 78, 52, 74, 77, 59, 67, 74, 68, 90, 80, 58, 52, 54, 43, 69, 55, 62, 58, 77, 79, 42, 79, 51, 72, 69, 63, 83, 67, 58, 78, 51, 53, 79, 78, 53, 48, 57, 63, 51, 67, 53, 45, 65, 60, 71, 55, 53, 54, 54, 75, 96, 76, 62, 59, 52, 64, 46, 56, 46, 63, 58, 47, 72, 73, 44, 49, 48, 110, 86, 56, 51, 70, 56, 66, 86, 77, 51, 57, 56, 67, 104, 62, 70, 58, 52, 81, 80, 51, 69, 51, 97, 78, 68, 83, 58, 67, 66, 80, 93, 76, 77, 63, 86, 52, 88, 72, 77, 80, 83, 60, 48, 85, 42, 62, 62, 58, 74, 99, 63, 69, 50, 59, 58, 78, 69, 67, 60, 55, 74, 57, 72, 70, 28, 55, 34, 74, 125, 50, 44, 55, 49, 67, 37, 51, 56, 53, 70, 68, 39, 56, 72, 56, 70, 69, 61, 43, 70, 65, 45, 45, 56, 56, 51, 68, 70, 67, 82, 49, 67, 65, 57, 102, 77, 73, 102, 77, 52, 55, 55, 67, 53, 51, 69, 71, 76, 62, 75, 69, 54, 90, 50, 77, 58, 90, 83, 53, 65, 45, 76, 59, 70, 80, 113, 50, 80, 63, 61, 68, 55, 74, 68, 77, 103, 64, 43, 38, 105, 62, 67, 78, 80, 68, 70, 54, 56, 65, 78, 60, 102, 67, 64, 57, 59, 80, 63, 43, 74, 56, 50, 53, 75, 58, 52, 59, 42, 65, 76, 93, 56, 68, 57, 77, 84, 56, 74, 67, 77, 59, 89, 145, 58, 61, 45, 56, 59, 75, 52, 66, 76, 61, 73, 59, 69, 83, 53, 70, 61, 53, 51, 64, 59, 77, 59, 72, 82, 66, 58, 48, 66, 55, 94, 84, 64, 50, 55, 59, 51, 62, 70, 78, 62, 63, 47, 42, 85, 70, 61, 107, 89, 72, 32, 50, 60, 54, 66, 61, 69, 71, 61, 67, 67, 60, 72, 71, 53, 73, 85, 61, 50, 93, 75, 69, 82, 84, 47, 53, 58, 114, 84, 134, 63, 84, 44, 77, 60, 56, 55, 46, 68, 75, 66, 51, 61, 72, 73, 69, 79, 78, 77, 44, 46, 55, 45, 58, 65, 63, 43, 62, 61, 52, 131, 76, 72, 92, 67, 75, 57, 76, 60, 61, 75, 49, 61, 64, 74, 72, 53, 58, 95, 46, 80, 47, 56, 65, 50, 73, 74, 53, 60, 76, 82, 72, 58, 72, 65, 53, 90, 42, 54, 76, 75, 72, 88, 65, 66, 62, 54, 64, 66, 74, 64, 69, 85, 39, 48, 51, 99, 79, 62, 63, 96, 98, 55, 70, 59, 45, 89, 63, 48, 94, 60, 93, 45, 80, 55, 80, 60, 69, 68, 60, 53, 111, 79, 66, 68, 58, 44, 60, 70, 58, 110, 44, 54, 81, 51, 71, 52, 58, 99, 100, 41, 59, 71, 83, 37, 74, 83, 53, 55, 75, 133, 57, 58, 70, 62, 52, 39, 62, 80, 55, 54, 64, 55, 76, 47, 82, 86, 51, 81, 83, 63, 71, 61, 60, 41, 72, 66, 38, 73, 104, 51, 59, 70, 71, 97, 34, 54, 54, 49, 70, 49, 68, 62, 59, 56, 57, 67, 58, 47, 60, 66, 58, 57, 48, 58, 58, 63, 59, 66, 58, 52, 80, 59, 48, 48, 66, 47, 40, 55, 56, 48, 64, 35, 93, 46, 73, 81, 63, 46, 84, 44, 42, 61, 88, 83, 84, 64, 67, 59, 72, 69, 67, 67, 45, 129, 64, 64, 71, 51, 65, 69, 70, 39, 49, 81, 53, 52, 67, 54, 46, 60, 56, 74, 66, 74, 57, 81, 52, 41, 50, 56, 54, 85, 62, 58, 61, 59, 93, 40, 52, 48, 79, 64, 74, 41, 77, 55, 61, 71, 68, 75, 87, 62, 79, 88, 59, 58, 56, 84, 69, 69, 70, 55, 57, 56, 49, 50, 65, 56, 120, 104, 72, 51, 52, 58, 62, 60, 56, 81, 77, 66, 44, 85, 60, 58, 65, 92, 59, 74, 67, 82, 77, 72, 59, 70, 68, 76, 64, 74, 85, 57, 55, 68, 72, 77, 63, 56, 84, 43, 113, 45, 65, 55, 62, 58, 51, 49, 97, 103, 76, 60, 68, 73, 54, 78, 93, 115, 75, 70, 87, 65, 85, 57, 69, 73, 65, 58, 48, 109, 68, 67, 64, 34, 56, 43, 82, 77, 69, 65, 66, 61, 61, 75, 69, 84, 58, 64, 83, 71, 63, 72, 88, 60, 58, 64, 60, 59, 78, 59, 60, 86, 54, 60, 60, 56, 67, 79, 62, 74, 59, 58, 81, 83, 76, 60, 63, 68, 69, 57, 54, 63, 36, 111, 81, 72, 55, 46, 76, 83, 66, 88, 63, 46, 76, 63, 57, 62, 87, 55, 104, 48, 81, 60, 88, 64, 53, 69, 34, 80, 76, 96, 60, 47, 60, 67, 58, 87, 80, 56, 72, 63, 35, 91, 65, 63, 59, 61, 54, 54, 73, 71, 55, 68, 72, 47, 73, 59, 81, 58, 64, 45, 57, 74, 53, 69, 65, 88, 74, 76, 60, 50, 65, 83, 97, 91, 53, 58, 74, 75, 88, 115, 46, 68, 54, 88, 65, 86, 38, 56, 62, 57, 65, 41, 113, 76, 70, 51, 59, 61, 45, 55, 64, 82, 45, 65, 77, 66, 60, 122, 58, 66, 58, 84, 67, 81, 99, 54, 99, 57, 73, 42, 57, 75, 103, 53, 44, 87, 54, 65, 99, 47, 59, 73, 88, 86, 80, 61, 50, 65, 57, 102, 67, 63, 58, 60, 61, 54, 70, 73, 60, 67, 93, 65, 54, 81, 56, 63, 63, 82, 73, 80, 36, 57, 62, 65, 55, 48, 68, 47, 61, 83, 66, 90, 65, 51, 61, 70, 78, 60, 48, 53, 35, 51, 55, 64, 75, 73, 37, 63, 108, 85, 82, 40, 58, 82, 57, 68, 66, 58, 57, 53, 53, 73, 54, 68, 102, 71, 82, 62, 30, 53, 54, 60, 52, 63, 74, 59, 58, 84, 75, 78, 51, 84, 69, 78, 53, 50, 72, 71, 79, 60, 68, 63, 109, 66, 112, 106, 62, 59, 32, 64, 100, 50, 59, 67, 64, 69, 57, 48, 70, 58, 81, 61, 60, 48, 43, 66, 55, 48, 47, 64, 63, 34, 54, 64, 70, 32, 67, 68, 72, 58, 79, 63, 81, 70, 78, 42, 64, 59, 79, 91, 76, 66, 70, 66, 80, 55, 66, 37, 59, 46, 108, 90, 47, 67, 36, 78, 63, 64, 52, 88, 42, 68, 65, 64, 68, 52, 55, 63, 89, 64, 73, 91, 28, 46, 95, 48, 46, 42, 65, 61, 71, 54, 58, 33, 133, 78, 59, 38, 59, 71, 43, 79, 78, 88, 55, 78, 57, 63, 63, 69, 81, 41, 45, 71, 78, 71, 67, 64, 114, 76, 64, 61, 90, 76, 80, 46, 110, 53, 47, 59, 46, 76, 53, 65, 48, 78, 45, 56, 73, 89, 44, 62, 73, 58, 54, 77, 50, 64, 66, 55, 69, 49, 63, 46, 49, 56, 60, 71, 70, 43, 74, 57, 64, 55, 64, 66, 42, 56, 42, 43, 62, 47, 87, 76, 52, 79, 52, 116, 50, 49, 51, 85, 110, 65, 68, 50, 64, 55, 43, 75, 63, 74, 60, 69, 65, 77, 51, 74, 49, 73, 55, 54, 102, 101, 84, 72, 60, 70, 95, 94, 60, 60, 52, 70, 71, 85, 64, 43, 60, 55, 42, 69, 65, 82, 56, 33, 74, 66, 68, 70, 86, 57, 82, 76, 57, 86, 46, 82, 57, 66, 62, 51, 68, 51, 74, 84, 48, 102, 78, 51, 69, 43, 38, 96, 94, 52, 69, 55, 58, 59, 76, 64, 60, 71, 73, 57, 41, 73, 78, 80, 46, 86, 84, 83, 64, 36, 66, 75, 62, 56, 51, 55, 103, 122, 59, 60, 65, 75, 65, 47, 64, 79, 91, 57, 62, 119, 61, 73, 69, 53, 95, 78, 55, 71, 79, 76, 64, 83, 81, 95, 59, 56, 53, 74, 57, 60, 57, 65, 76, 65, 80, 83, 74, 70, 85, 73, 38, 64, 72, 70, 50, 80, 66, 66, 81, 85, 57, 75, 60, 73, 75, 62, 93, 43, 54, 144, 79, 58, 50, 80, 44, 60, 68, 69, 71, 51, 70, 66, 80, 73, 61, 59, 56, 65, 70, 50, 41, 46, 83, 68, 76, 96, 49, 74, 77, 65, 73, 105, 82, 57, 61, 61, 79, 57, 70, 67, 70, 33, 68, 53, 59, 62, 84, 52, 71, 57, 67, 62, 75, 63, 62, 77, 52, 78, 69, 63, 62, 79, 52, 66, 102, 67, 55, 62, 59, 64, 57, 77, 66, 70, 74, 55, 61, 62, 67, 83, 83, 64, 59, 67, 63, 57, 58, 59, 67, 77, 58, 99, 96, 62, 62, 69, 69, 88, 91, 68, 65, 49, 56, 72, 64, 68, 61, 82, 64, 58, 58, 60, 40, 65, 46, 57, 68, 71, 91, 60, 49, 49, 63, 60, 64, 40, 49, 99, 77, 64, 55, 50, 75, 124, 43, 71, 61, 62, 59, 51, 84, 68, 51, 51, 114, 57, 63, 66, 61, 70, 66, 51, 69, 69, 53, 56, 45, 55, 80, 63, 96, 64, 77, 52, 66, 61, 62, 37, 58, 53, 57, 73, 58, 56, 66, 60, 59, 59, 63, 56, 61, 60, 58, 81, 66, 62, 60, 47, 61, 62, 71, 51, 68, 49, 49, 82, 58, 80, 61, 64, 57, 40, 78, 62, 74, 63, 53, 71, 62, 62, 59, 60, 65, 43, 86, 71, 83, 87, 83, 53, 59, 94, 63, 69, 56, 93, 51, 60, 57, 67, 49, 67, 67, 64, 57, 68, 94, 40, 70, 54, 60, 71, 88, 79, 90, 60, 52, 62, 57, 57, 82, 88, 77, 59, 62, 70, 48, 54, 65, 54, 56, 57, 55, 88, 71, 57, 56, 64, 54, 78, 65, 48, 135, 80, 76, 56, 62, 52, 69, 68, 62, 68, 68, 55, 71, 70, 68, 59, 55, 63, 71, 68, 54, 50, 64, 71, 74, 41, 61, 46, 69, 63, 54, 63, 42, 83, 56, 48, 58, 58, 73, 53, 57, 58, 72, 68, 76, 71, 59, 70, 74, 55, 57, 74, 65, 65, 66, 67, 55, 74, 55, 66, 55, 71, 54, 60, 57, 66, 63, 58, 64, 68, 55, 94, 70, 79, 64, 65, 54, 60, 75, 88, 77, 56, 59, 101, 48, 63, 74, 58, 80, 76, 71, 59, 59, 68, 72, 66, 71, 60, 74, 85, 61, 73, 54, 75, 63, 81, 54, 52, 58, 35, 66, 58, 77, 79, 57, 67, 53, 52, 66, 59, 78, 56, 60, 50, 60, 51, 67, 80, 68, 59, 65, 75, 52, 56, 54, 81, 64, 63, 84, 88, 62, 61, 67, 61, 61, 61, 55, 66, 60, 42, 70, 69, 68, 66, 96, 68, 55, 70, 75, 98, 98, 75, 41, 76, 73, 76, 71, 61, 45, 53, 61, 82, 54, 78, 44, 64, 53, 71, 61, 62, 60, 60, 58, 82, 67, 61, 70, 71, 68, 74, 62, 58, 74, 52, 64, 80, 79, 64, 71, 58, 46, 57, 53, 69, 70, 51, 76, 100, 76, 82, 64, 70, 101, 61, 73, 59, 46, 52, 59, 56, 69, 59, 70, 63, 65, 53, 56, 64, 57, 63, 55, 85, 66, 57, 60, 72, 56, 63, 60, 62, 65, 75, 76, 63, 85, 50, 57, 61, 61, 60, 65, 54, 62, 67, 61, 62, 53, 83, 68, 71, 63, 58, 61, 57, 68, 67, 69, 53, 64, 79, 59, 64, 48, 106, 67, 84, 56, 85, 66, 68, 56, 43, 49, 62, 73, 56, 68, 53, 61, 63, 53, 67, 41, 57, 56, 62, 62, 61, 35, 69, 56, 81, 64, 62, 80, 54, 71, 77, 52, 58, 57, 87, 68, 60, 53, 98, 70, 73, 65, 60, 83, 61, 60, 111, 61, 61, 66, 86, 65, 73, 55, 70, 67, 64, 64, 65, 54, 60, 63, 60, 59, 69, 63, 57, 59, 62, 61, 68, 70, 68, 83, 76, 73, 78, 51, 119, 55, 59, 170, 69, 49, 67, 68, 53, 79, 45, 62, 62, 61, 62, 67, 72, 51, 62, 59, 71, 67, 63, 58, 86, 62, 59, 70, 78, 54, 65, 73, 74, 70, 59, 78, 64, 89, 61, 67, 61, 75, 76, 67, 59, 61, 62, 53, 65, 52, 53, 57, 77, 69, 52, 59, 48, 104, 60, 61, 60, 63, 68, 64, 65, 71, 50, 46, 62, 79, 53, 58, 67, 94, 61, 68, 69, 66, 64, 66, 67, 112, 70, 108, 65, 77, 75, 59, 70, 63, 65, 52, 71, 62, 114, 68, 66, 70, 54, 61, 57, 102, 51, 78, 53, 52, 78, 64, 67, 51, 97, 51, 53, 65, 73, 53, 67, 72, 55, 65, 51, 62, 68, 69, 71, 64, 77, 67, 40, 62, 66, 52, 80, 58, 56, 50, 82, 51, 46, 67, 66, 52, 82, 66, 54, 54, 76, 54, 64, 99, 77, 64, 57, 105, 66, 98, 73, 82, 63, 106, 61, 54, 67, 84, 63, 69, 81, 51, 83, 51, 63, 49, 65, 72, 64, 115, 58, 73, 82, 74, 89, 65, 61, 57, 64, 147, 55, 97, 41, 86, 48, 66, 86, 64, 48, 72, 63, 51, 56, 89, 51, 69, 52, 68, 59, 59, 94, 76, 48, 68, 59, 67, 58, 72, 60, 75, 65, 64, 63, 88, 62, 56, 68, 48, 81, 84, 62, 56, 53, 52, 63, 63, 63, 58, 62, 53, 60, 71, 61, 51, 47, 85, 83, 89, 45, 62, 64, 87, 55, 63, 69, 59, 60, 53, 70, 74, 60, 68, 73, 62, 89, 66, 72, 70, 62, 79, 58, 61, 88, 63, 86, 70, 84, 59, 76, 56, 70, 61, 73, 75, 64, 61, 49, 63, 84, 56, 64, 62, 71, 76, 82, 68, 71, 85, 58, 76, 55, 61, 77, 56, 68, 71, 75, 57, 80, 55, 89, 48, 79, 49, 58, 61, 71, 59, 73, 71, 73, 74, 100, 59, 70, 58, 49, 59, 66, 55, 78, 60, 60, 54, 55, 69, 61, 55, 66, 86, 72, 59, 55, 75, 128, 76, 50, 66, 69, 52, 69, 52, 83, 64, 86, 81, 63, 88, 60, 80, 59, 78, 50, 57, 65, 67, 52, 69, 52, 88, 49, 88, 70, 63, 69, 84, 65, 61, 40, 59, 71, 71, 75, 50, 72, 90, 67, 64, 56, 78, 66, 75, 70, 70, 61, 56, 62, 63, 56, 60, 74, 56, 67, 69, 64, 64, 70, 52, 56, 88, 89, 58, 56, 71, 62, 60, 69, 47, 74, 60, 82, 72, 69, 66, 55, 77, 74, 87, 51, 64, 69, 73, 64, 74, 68, 60, 58, 46, 65, 89, 60, 66, 60, 38, 60, 78, 64, 62, 64, 66, 55, 72, 57, 46, 60, 71, 42, 53, 57, 64, 66, 60, 75, 67, 77, 73, 61, 75, 47, 62, 70, 67, 47, 57, 68, 76, 48, 72, 74, 67, 55, 76, 67, 79, 57, 81, 52, 62, 60, 56, 64, 60, 80, 79, 70, 72, 80, 58, 73, 74, 73, 62, 85, 68, 72, 66, 91, 95, 56, 53, 79, 75, 50, 59, 64, 68, 80, 103, 52, 83, 57, 63, 66, 71, 50, 56, 60, 76, 57, 65, 66, 65, 67, 58, 73, 56, 47, 76, 56, 62, 66, 86, 73, 96, 55, 52, 44, 97, 59, 56, 65, 52, 65, 69, 77, 86, 86, 59, 54, 71, 68, 53, 55, 81, 51, 63, 57, 72, 47, 58, 73, 81, 68, 67, 69, 55, 78, 53, 64, 73, 73, 87, 57, 76, 54, 44, 61, 55, 74, 69, 71, 91, 58, 41, 61, 69, 58, 60, 60, 52, 76, 69, 61, 69, 110, 67, 56, 78, 71, 100, 57, 57, 73, 64, 63, 52, 38, 64, 52, 83, 49, 66, 72, 90, 67, 65, 62, 61, 61, 58, 46, 55, 65, 59, 85, 52, 90, 59, 53, 75, 54, 72, 69, 63, 85, 58, 54, 61, 60, 65, 117, 63, 46, 51, 75, 67, 61, 71, 70, 61, 68, 71, 68, 47, 58, 54, 57, 63, 65, 69, 59, 77, 71, 63, 58, 89, 65, 66, 63, 59, 74, 59, 60, 57, 60, 61, 63, 62, 63, 60, 59, 70, 70, 68, 79, 53, 60, 69, 57, 56, 43, 86, 63, 56, 170, 78, 68, 96, 80, 55, 72, 64, 71, 61, 137, 55, 91, 60, 76, 72, 106, 55, 57, 64, 47, 59, 60, 73, 76, 64, 69, 59, 174, 60, 59, 69, 76, 83, 56, 64, 61, 77, 65, 72, 68, 60, 80, 65, 61, 66, 53, 57, 58, 67, 51, 51, 87, 68, 65, 59, 54, 103, 64, 46, 50, 72, 65, 79, 72, 61, 68, 58, 51, 58, 68, 67, 56, 78, 44, 75, 51, 61, 87, 72, 62, 57, 67, 71, 84, 56, 69, 58, 89, 52, 67, 63, 73, 55, 65, 76, 86, 57, 74, 65, 69, 49, 53, 84, 51, 67, 65, 64, 64, 70, 71, 49, 57, 62, 60, 77, 59, 62, 66, 78, 70, 77, 68, 65, 75, 57, 71, 91, 65, 68, 67, 73, 79, 52, 76, 72, 52, 63, 52, 56, 63, 69, 81, 76, 72, 64, 82, 68, 60, 66, 62, 99, 67, 82, 70, 58, 66, 75, 77, 58, 69, 69, 50, 61, 67, 62, 62, 65, 68, 61, 45, 71, 79, 61, 73, 67, 42, 72, 72, 66, 60, 72, 55, 77, 80, 53, 77, 71, 53, 73, 67, 53, 56, 65, 70, 65, 68, 44, 61, 61, 53, 59, 92, 52, 67, 92, 48, 61, 48, 66, 77, 75, 38, 58, 57, 74, 67, 79, 83, 62, 66, 50, 58, 52, 64, 74, 82, 75, 63, 71, 65, 66, 64, 77, 69, 54, 67, 48, 110, 59, 72, 69, 51, 63, 70, 48, 59, 63, 71, 50, 64, 57, 56, 51, 56, 66, 74, 62, 59, 61, 74, 115, 63, 92, 90, 71, 68, 68, 61, 71, 62, 80, 84, 55, 65, 74, 54, 60, 88, 72, 72, 63, 52, 66, 67, 65, 56, 63, 54, 72, 61, 57, 65, 99, 64, 60, 66, 70, 65, 57, 74, 54, 64, 81, 57, 60, 47, 61, 58, 55, 56, 48, 67, 73, 61, 68, 66, 77, 63, 66, 84, 64, 53, 75, 69, 98, 61, 62, 43, 60, 65, 65, 68, 73, 52, 61, 69, 67, 50, 51, 60, 85, 61, 57, 69, 67, 103, 59, 77, 68, 66, 58, 49, 77, 70, 60, 67, 60, 84, 90, 75, 91, 42, 119, 73, 83, 87, 77, 72, 67, 60, 69, 53, 71, 63, 70, 60, 54, 73, 57, 70, 60, 62, 57, 72, 59, 76, 68, 77, 55, 68, 63, 63, 58, 53, 87, 62, 60, 77, 66, 50, 54, 118, 57, 69, 82, 58, 56, 65, 90, 61, 72, 85, 58, 65, 69, 61, 63, 55, 61, 70, 76, 61, 71, 56, 80, 54, 64, 85, 87, 69, 63, 71, 65, 74, 51, 61, 55, 69, 81, 69, 86, 60, 80, 57, 66, 64, 65, 63, 80, 79, 54, 43, 62, 64, 72, 71, 63, 55, 66, 54, 70, 68, 70, 74, 57, 59, 65, 66, 60, 71, 68, 74, 72, 68, 65, 54, 70, 51, 62, 78, 67, 70, 55, 73, 57, 78, 59, 63, 66, 60, 66, 55, 95, 60, 75, 58, 95, 44, 69, 58, 65, 60, 62, 58, 90, 57, 43, 61, 48, 75, 57, 49, 74, 54, 55, 53, 60, 54, 77, 51, 74, 84, 64, 37, 102, 80, 57, 71, 62, 64, 53, 50, 79, 65, 74, 80, 64, 58, 63, 86, 41, 67, 78, 79, 60, 74, 74, 49, 66, 79, 60, 58, 52, 56, 63, 49, 61, 62, 68, 56, 72, 68, 84, 65, 65, 39, 55, 81, 73, 91, 59, 54, 55, 65, 63, 72, 60, 60, 51, 50, 50, 70, 72, 56, 55, 59, 93, 62, 70, 51, 64, 60, 51, 63, 56, 71, 74, 76, 68, 58, 65, 79, 76, 51, 69, 61, 59, 65, 65, 78, 57, 50, 74, 57, 75, 64, 82, 57, 75, 76, 60, 66, 48, 53, 51, 66, 81, 78, 63, 71, 55, 67, 51, 57, 61, 59, 58, 71, 70, 58, 51, 54, 58, 70, 53, 72, 73, 111, 59, 46, 64, 63, 58, 82, 55, 52, 64, 38, 65, 46, 84, 83, 53, 64, 64, 62, 70, 56, 45, 59, 62, 72, 57, 73, 55, 77, 82, 69, 65, 83, 59, 62, 62, 60, 72, 61, 64, 75, 87, 72, 82, 94, 48, 71, 38, 62, 71, 90, 60, 57, 59, 73, 63, 88, 57, 51, 57, 53, 57, 68, 70, 67, 72, 64, 58, 69, 65, 50, 55, 72, 53, 74, 48, 73, 44, 74, 73, 58, 75, 68, 65, 47, 63, 78, 68, 79, 51, 53, 63, 48, 45, 56, 45, 71, 57, 78, 70, 70, 62, 75, 56, 68, 63, 64, 75, 74, 83, 53, 62, 57, 52, 67, 54, 61, 55, 58, 38, 50, 60, 67, 50, 62, 78, 57, 67, 64, 60, 68, 65, 64, 62, 67, 70, 83, 43, 58, 57, 65, 72, 89, 55, 76, 44, 58, 73, 37, 58, 66, 94, 63, 58, 54, 71, 117, 42, 76, 75, 72, 61, 85, 47, 53, 65, 76, 58, 70, 57, 67, 65, 59, 57, 74, 67, 62, 60, 81, 78, 69, 54, 37, 79, 58, 82, 72, 77, 58, 62, 51, 68, 160, 71, 79, 56, 53, 78, 59, 54, 59, 100, 60, 68, 40, 70, 60, 57, 67, 76, 56, 69, 81, 49, 70, 81, 63, 61, 55, 89, 78, 90, 89, 55, 72, 64, 106, 76, 53, 70, 68, 63, 62, 68, 54, 67, 70, 56, 71, 63, 57, 54, 78, 74, 71, 55, 59, 73, 81, 98, 63, 73, 66, 99, 68, 81, 52, 61, 85, 44, 52, 65, 54, 73, 53, 72, 46, 56, 67, 59, 50, 43, 53, 73, 59, 48, 57, 60, 54, 45, 66, 64, 60, 54, 53, 51, 77, 41, 88, 53, 58, 70, 65, 76, 63, 62, 59, 39, 64, 64, 61, 82, 72, 72, 62, 69, 80, 62, 82, 62, 69, 62, 109, 69, 67, 71, 61, 69, 63, 52, 66, 49, 66, 94, 68, 70, 71, 62, 70, 61, 43, 90, 43, 47, 63, 67, 84, 68, 52, 68, 58, 95, 53, 48, 54, 68, 56, 67, 69, 56, 58, 66, 94, 60, 54, 58, 52, 57, 69, 66, 41, 50, 70, 71, 69, 87, 62, 45, 78, 67, 61, 47, 65, 81, 68, 49, 68, 55, 66, 72, 76, 73, 57, 78, 89, 62, 66, 61, 55, 71, 55, 65, 68, 67, 68, 80, 55, 55, 61, 57, 51, 64, 67, 51, 55, 56, 81, 65, 54, 61, 63, 93, 59, 71, 50, 60, 63, 55, 85, 114, 63, 66, 80, 101, 61, 61, 65, 52, 61, 54, 64, 65, 64, 56, 74, 59, 80, 81, 60, 59, 61, 42, 88, 83, 57, 66, 86, 60, 68, 62, 61, 67, 47, 51, 51, 72, 66, 73, 59, 79, 113, 64, 70, 42, 57, 48, 50, 62, 47, 67, 67, 51, 68, 51, 38, 69, 54, 60, 65, 61, 63, 67, 62, 52, 60, 89, 66, 73, 51, 57, 55, 60, 64, 56, 82, 63, 107, 65, 58, 92, 62, 68, 75, 89, 51, 52, 40, 69, 80, 62, 71, 76, 111, 83, 54, 50, 62, 62, 68, 72, 53, 202, 46, 59, 50, 87, 79, 59, 56, 75, 74, 79, 68, 60, 54, 55, 60, 103, 71, 76, 86, 51, 90, 63, 60, 59, 63, 66, 59, 62, 89, 61, 72, 56, 64, 60, 74, 56, 59, 59, 66, 52, 64, 90, 102, 52, 72, 64, 61, 55, 66, 68, 99, 63, 61, 56, 85, 115, 81, 57, 69, 65, 67, 66, 47, 59, 55, 72, 59, 59, 55, 56, 64, 85, 65, 55, 65, 62, 52, 51, 49, 62, 56, 59, 64, 51, 67, 61, 46, 68, 58, 60, 43, 63, 72, 70, 68, 73, 53, 95, 72, 72, 60, 49, 66, 71, 76, 82, 75, 69, 68, 58, 57, 56, 73, 93, 40, 98, 58, 101, 57, 74, 69, 57, 68, 54, 52, 78, 99, 61, 86, 56, 52, 73, 73, 72, 60, 82, 53, 58, 74, 59, 61, 98, 73, 66, 59, 51, 59, 56, 79, 90, 94, 154, 55, 82, 88, 79, 67, 77, 58, 58, 103, 55, 78, 75, 50, 67, 58, 65, 60, 75, 48, 56, 70, 86, 83, 84, 83, 57, 56, 67, 69, 60, 60, 67, 67, 77, 70, 73, 59, 88, 74, 52, 72, 68, 57, 74, 69, 62, 105, 57, 61, 80, 103, 60, 57, 54, 64, 80, 59, 54, 95, 65, 54, 84, 57, 64, 69, 96, 82, 56, 75, 61, 65, 144, 72, 71, 61, 56, 63, 48, 48, 72, 53, 53, 58, 91, 67, 55, 71, 68, 54, 62, 63, 60, 63, 135, 67, 83, 61, 90, 72, 49, 65, 70, 67, 66, 61, 78, 56, 63, 68, 63, 51, 79, 64, 88, 58, 62, 47, 59, 72, 91, 78, 76, 61, 67, 51, 69, 75, 79, 74, 73, 68, 52, 60, 49, 49, 65, 61, 56, 72, 66, 69, 41, 46, 55, 46, 59, 70, 60, 60, 69, 56, 61, 56, 60, 84, 47, 70, 71, 58, 61, 81, 56, 56, 62, 61, 53, 58, 74, 96, 69, 57, 67, 68, 58, 59, 66, 84, 47, 58, 71, 66, 65, 62, 71, 65, 52, 69, 65, 61, 47, 58, 54, 53, 75, 63, 80, 66, 58, 58, 54, 81, 74, 74, 67, 70, 77, 84, 56, 70, 59, 55, 65, 70, 66, 48, 70, 56, 49, 53, 60, 90, 49, 78, 59, 64, 72, 53, 48, 66, 94, 67, 84, 59, 75, 54, 79, 66, 72, 48, 79, 52, 97, 53, 54, 79, 46, 67, 71, 108, 59, 55, 71, 64, 68, 70, 72, 63, 71, 72, 77, 65, 90, 69, 50, 73, 88, 57, 69, 65, 50, 60, 38, 63, 55, 61, 81, 68, 66, 76, 57, 88, 77, 66, 78, 73, 68, 54, 65, 64, 64, 57, 78, 58, 75, 62, 106, 70, 62, 58, 77, 52, 76, 60, 72, 69, 87, 54, 78, 71, 60, 81, 67, 79, 91, 57, 52, 57, 62, 63, 67, 77, 79, 96, 40, 66, 64, 67, 61, 64, 87, 59, 52, 70, 55, 67, 64, 48, 106, 67, 89, 51, 69, 59, 75, 65, 65, 70, 56, 64, 77, 68, 39, 87, 59, 72, 56, 83, 56, 77, 91, 71, 76, 56, 64, 53, 69, 69, 49, 45, 61, 47, 71, 58, 66, 96, 43, 55, 67, 63, 117, 61, 50, 58, 58, 87, 73, 81, 57, 48, 95, 55, 59, 62, 80, 64, 57, 98, 55, 64, 61, 56, 50, 70, 105, 64, 95, 62, 72, 95, 54, 78, 77, 67, 83, 60, 85, 54, 63, 65, 73, 50, 55, 58, 54, 54, 65, 70, 93, 64, 67, 57, 88, 64, 88, 57, 53, 96, 70, 60, 44, 46, 44, 72, 49, 73, 74, 59, 60, 60, 55, 48, 56, 59, 61, 75, 66, 48, 53, 76, 62, 45, 75, 55, 56, 79, 68, 83, 56, 69, 49, 73, 58, 57, 63, 57, 39, 53, 77, 52, 82, 59, 62, 64, 60, 67, 32, 83, 84, 60, 52, 82, 64, 74, 91, 61, 51, 64, 65, 59, 54, 83, 60, 59, 58, 56, 58, 65, 67, 47, 69, 79, 77, 67, 148, 70, 68, 74, 93, 64, 67, 78, 75, 89, 58, 73, 41, 81, 90, 66, 64, 49, 77, 54, 79, 70, 59, 58, 76, 53, 46, 76, 101, 49, 52, 45, 72, 81, 77, 44, 66, 85, 90, 58, 91, 80, 57, 71, 73, 61, 66, 51, 78, 59, 59, 58, 65, 63, 55, 71, 72, 67, 75, 61, 91, 56, 64, 87, 68, 70, 51, 77, 80, 62, 48, 56, 47, 50, 68, 50, 73, 57, 71, 68, 49, 73, 58, 72, 65, 57, 66, 80, 45, 60, 62, 61, 77, 74, 52, 58, 64, 77, 75, 55, 71, 80, 60, 79, 64, 79, 67, 76, 96, 79, 71, 79, 70, 46, 69, 57, 65, 82, 57, 61, 81, 73, 73, 59, 71, 74, 71, 45, 76, 70, 87, 91, 64, 42, 89, 47, 72, 41, 61, 50, 62, 57, 69, 75, 39, 63, 77, 63, 66, 75, 44, 63, 85, 52, 55, 48, 59, 86, 74, 65, 94, 72, 45, 60, 57, 49, 82, 70, 59, 84, 72, 87, 50, 68, 54, 66, 66, 61, 84, 75, 65, 76, 71, 66, 65, 66, 50, 77, 60, 63, 73, 61, 61, 45, 75, 65, 67, 48, 58, 63, 50, 39, 71, 55, 98, 62, 69, 88, 56, 72, 82, 62, 57, 86, 96, 43, 61, 62, 49, 76, 65, 54, 78, 70, 70, 77, 41, 64, 91, 91, 65, 61, 57, 90, 53, 79, 83, 67, 37, 53, 56, 73, 55, 69, 47, 68, 80, 46, 69, 51, 69, 74, 42, 65, 61, 62, 73, 75, 58, 53, 42, 52, 71, 61, 131, 49, 64, 65, 51, 63, 50, 52, 73, 51, 71, 68, 74, 59, 66, 61, 67, 42, 54, 57, 85, 74, 67, 59, 79, 49, 71, 69, 86, 61, 85, 65, 62, 61, 57, 61, 58, 88, 76, 71, 66, 64, 85, 80, 64, 64, 54, 64, 94, 57, 77, 91, 66, 81, 71, 61, 84, 74, 76, 83, 75, 44, 58, 69, 66, 56, 53, 71, 68, 89, 61, 67, 61, 62, 55, 54, 74, 47, 65, 72, 71, 63, 86, 62, 48, 60, 57, 81, 65, 68, 64, 64, 70, 64, 69, 46, 62, 64, 64, 67, 51, 82, 77, 92, 66, 60, 85, 59, 79, 46, 66, 77, 62, 56, 68, 73, 73, 76, 66, 71, 53, 71, 104, 56, 62, 62, 57, 50, 60, 79, 73, 62, 37, 55, 55, 76, 64, 70, 50, 45, 58, 58, 78, 64, 73, 55, 57, 113, 65, 87, 62, 57, 42, 74, 60, 56, 71, 60, 96, 72, 110, 59, 66, 64, 73, 86, 54, 43, 56, 80, 49, 71, 86, 73, 55, 55, 70, 79, 83, 69, 64, 80, 53, 63, 55, 67, 81, 77, 62, 56, 54, 68, 65, 57, 84, 68, 59, 75, 61, 53, 51, 59, 66, 67, 53, 64, 62, 88, 58, 60, 80, 57, 53, 65, 51, 50, 66, 68, 87, 70, 65, 60, 79, 69, 69, 59, 64, 58, 115, 56, 54, 63, 51, 62, 64, 61, 48, 71, 62, 72, 59, 50, 69, 68, 64, 72, 99, 47, 78, 84, 57, 92, 73, 75, 49, 76, 90, 60, 51, 67, 62, 63, 58, 92, 46, 79, 82, 57, 61, 68, 66, 54, 54, 59, 72, 76, 57, 106, 59, 79, 104, 85, 61, 60, 78, 79, 41, 81, 63, 68, 54, 48, 64, 46, 52, 60, 51, 97, 59, 58, 90, 78, 65, 38, 54, 59, 55, 47, 61, 42, 51, 65, 59, 69, 73, 62, 63, 68, 78, 60, 68, 48, 78, 63, 65, 55, 80, 76, 59, 76, 71, 99, 66, 68, 67, 62, 77, 57, 65, 69, 65, 56, 54, 81, 51, 59, 110, 54, 76, 104, 56, 62, 64, 62, 53, 64, 50, 50, 48, 79, 56, 69, 63, 49, 74, 64, 49, 78, 96, 78, 83, 45, 75, 46, 56, 62, 67, 64, 53, 68, 55, 82, 64, 80, 62, 67, 69, 56, 73, 60, 76, 62, 64, 70, 55, 92, 62, 73, 52, 50, 57, 55, 53, 57, 81, 74, 64, 69, 61, 64, 40, 60, 72, 66, 62, 93, 73, 64, 112, 93, 66, 59, 66, 77, 53, 57, 102, 93, 71, 42, 51, 56, 42, 47, 53, 73, 67, 51, 81, 56, 71, 52, 53, 56, 73, 60, 78, 62, 87, 92, 70, 82, 45, 67, 64, 66, 64, 85, 51, 72, 61, 102, 46, 90, 71, 64, 76, 48, 52, 60, 54, 85, 47, 67, 80, 56, 72, 84, 59, 62, 74, 75, 64, 56, 59, 59, 53, 34, 57, 72, 52, 63, 67, 65, 57, 70, 77, 49, 61, 56, 59, 95, 51, 51, 45, 70, 61, 79, 48, 52, 68, 71, 37, 83, 66, 54, 67, 89, 63, 52, 64, 64, 58, 57, 97, 69, 68, 71, 63, 56, 71, 38, 53, 61, 70, 86, 42, 59, 55, 73, 68, 55, 66, 52, 60, 73, 52, 55, 57, 76, 55, 55, 42, 74, 66, 58, 60, 67, 58, 80, 75, 57, 62, 83, 57, 50, 57, 62, 46, 56, 81, 79, 74, 58, 73, 77, 48, 72, 73, 83, 75, 59, 72, 85, 83, 48, 111, 71, 56, 63, 82, 50, 72, 58, 60, 55, 66, 88, 51, 51, 52, 83, 80, 51, 63, 62, 84, 63, 76, 70, 88, 68, 46, 76, 41, 42, 84, 87, 55, 64, 80, 63, 65, 42, 81, 98, 78, 74, 50, 50, 103, 62, 69, 67, 59, 72, 80, 58, 60, 56, 51, 74, 59, 84, 76, 59, 72, 79, 56, 50, 86, 81, 81, 82, 58, 100, 76, 76, 68, 70, 56, 78, 76, 62, 68, 49, 69, 56, 50, 100, 51, 86, 71, 51, 30, 60, 82, 52, 74, 56, 97, 72, 54, 67, 61, 75, 55, 60, 67, 54, 33, 63, 62, 53, 52, 57, 67, 64, 78, 62, 71, 61, 77, 80, 82, 96, 93, 64, 53, 71, 79, 66, 67, 100, 65, 42, 82, 67, 53, 59, 81, 83, 71, 59, 85, 89, 50, 49, 53, 80, 65, 59, 63, 75, 51, 66, 58, 99, 63, 70, 42, 78, 58, 60, 73, 63, 63, 63, 63, 52, 58, 57, 68, 81, 56, 69, 67, 53, 74, 27, 83, 76, 37, 74, 66, 64, 52, 62, 62, 66, 64, 73, 61, 77, 72, 63, 66, 57, 60, 76, 50, 55, 72, 62, 68, 71, 71, 47, 63, 86, 71, 55, 58, 79, 35, 82, 61, 59, 64, 54, 97, 161, 61, 66, 69, 82, 65, 73, 64, 79, 53, 56, 64, 77, 56, 58, 66, 36, 38, 75, 77, 68, 85, 64, 71, 29, 42, 69, 66, 64, 53, 99, 51, 70, 52, 67, 72, 45, 81, 62, 46, 60, 64, 92, 58, 84, 75, 75, 65, 64, 76, 64, 49, 121, 61, 49, 70, 82, 69, 69, 75, 68, 63, 78, 116, 77, 63, 63, 45, 63, 56, 88, 91, 56, 56, 52, 53, 49, 66, 54, 46, 84, 88, 64, 67, 73, 52, 77, 81, 60, 66, 97, 68, 58, 92, 82, 83, 67, 89, 59, 63, 97, 114, 57, 68, 54, 70, 53, 51, 52, 54, 68, 57, 59, 49, 83, 58, 83, 51, 58, 58, 73, 49, 67, 72, 62, 60, 68, 62, 62, 66, 58, 65, 56, 60, 58, 55, 59, 65, 110, 56, 50, 69, 66, 56, 65, 72, 71, 58, 57, 90, 78, 67, 87, 57, 90, 70, 66, 50, 74, 61, 79, 41, 60, 91, 59, 53, 106, 85, 63, 81, 55, 63, 72, 64, 52, 63, 71, 60, 84, 63, 45, 78, 72, 70, 74, 54, 59, 68, 76, 71, 45, 65, 67, 59, 56, 61, 56, 38, 68, 80, 63, 52, 63, 87, 87, 60, 67, 76, 49, 51, 48, 85, 57, 68, 58, 55, 64, 59, 69, 90, 61, 53, 62, 77, 50, 63, 75, 63, 82, 84, 61, 54, 41, 57, 63, 84, 73, 62, 72, 59, 89, 55, 55, 69, 59, 55, 63, 52, 60, 85, 66, 59, 57, 54, 81, 56, 71, 58, 61, 67, 73, 54, 62, 63, 75, 61, 56, 68, 41, 70, 69, 74, 65, 80, 52, 70, 83, 62, 53, 82, 63, 55, 61, 87, 79, 57, 49, 48, 62, 41, 64, 94, 75, 53, 69, 69, 62, 60, 50, 81, 82, 61, 65, 62, 63, 58, 40, 54, 41, 39, 54, 63, 72, 61, 55, 69, 54, 76, 68, 58, 119, 55, 57, 83, 56, 78, 69, 67, 49, 71, 60, 50, 69, 64, 66, 54, 76, 66, 72, 63, 116, 66, 54, 58, 54, 126, 41, 64, 72, 55, 80, 47, 76, 81, 54, 49, 62, 66, 77, 58, 71, 77, 65, 74, 54, 78, 69, 46, 60, 76, 68, 60, 64, 70, 52, 62, 93, 63, 72, 76, 59, 96, 71, 70, 72, 67, 112, 53, 85, 70, 41, 72, 79, 70, 82, 65, 74, 71, 56, 63, 91, 66, 55, 64, 53, 87, 74, 75, 58, 64, 69, 72, 47, 64, 74, 73, 63, 87, 75, 57, 68, 100, 76, 73, 51, 56, 56, 67, 80, 93, 59, 54, 59, 79, 49, 54, 72, 84, 52, 81, 76, 46, 72, 62, 92, 64, 79, 53, 61, 77, 72, 71, 64, 52, 68, 49, 88, 45, 79, 91, 49, 86, 50, 74, 68, 61, 71, 43, 79, 61, 73, 68, 76, 66, 50, 58, 59, 66, 80, 71, 58, 71, 36, 60, 62, 66, 69, 59, 80, 52, 62, 61, 64, 66, 60, 53, 67, 66, 81, 58, 53, 97, 75, 57, 68, 75, 54, 48, 53, 74, 48, 84, 56, 50, 72, 52, 62, 71, 76, 73, 77, 82, 60, 85, 63, 90, 63, 69, 88, 57, 55, 53, 103, 77, 73, 64, 109, 76, 70, 86, 66, 80, 63, 60, 49, 61, 56, 107, 51, 69, 59, 82, 58, 53, 51, 66, 64, 52, 75, 53, 66, 61, 79, 60, 63, 51, 65, 62, 49, 71, 83, 52, 75, 76, 62, 73, 80, 59, 50, 85, 64, 64, 77, 67, 50, 62, 72, 71, 61, 65, 54, 65, 59, 47, 77, 84, 75, 88, 91, 69, 64, 76, 61, 92, 58, 62, 74, 59, 65, 45, 55, 79, 76, 63, 86, 60, 54, 74, 71, 71, 47, 71, 62, 67, 58, 87, 73, 68, 46, 66, 95, 113, 60, 61, 55, 107, 60, 44, 68, 87, 51, 70, 59, 75, 65, 64, 55, 84, 45, 80, 75, 77, 64, 70, 71, 72, 70, 78, 71, 43, 64, 55, 61, 67, 78, 55, 60, 62, 67, 60, 65, 46, 57, 48, 86, 58, 83, 71, 60, 68, 50, 59, 58, 69, 79, 92, 64, 75, 80, 58, 59, 70, 62, 85, 80, 87, 60, 67, 74, 80, 67, 63, 68, 65, 72, 69, 57, 68, 72, 84, 61, 61, 63, 73, 76, 58, 39, 71, 50, 83, 80, 64, 67, 61, 81, 69, 64, 40, 54, 64, 55, 46, 78, 82, 67, 67, 65, 65, 84, 33, 64, 60, 62, 83, 55, 64, 61, 64, 53, 68, 42, 68, 64, 89, 64, 77, 71, 58, 58, 57, 57, 116, 46, 71, 54, 51, 66, 35, 50, 65, 76, 59, 66, 47, 73, 93, 62, 57, 73, 70, 67, 75, 48, 60, 71, 48, 63, 67, 51, 69, 61, 64, 75, 59, 65, 45, 56, 74, 64, 65, 62, 43, 61, 105, 90, 62, 55, 68, 56, 81, 63, 71, 58, 58, 61, 78, 54, 50, 59, 61, 50, 45, 71, 71, 45, 42, 68, 87, 65, 66, 55, 60, 64, 60, 54, 62, 92, 122, 49, 76, 52, 54, 89, 75, 75, 63, 69, 63, 62, 74, 63, 72, 64, 86, 95, 46, 67, 66, 64, 52, 71, 52, 86, 81, 52, 48, 57, 45, 50, 62, 74, 81, 73, 43, 62, 46, 89, 103, 60, 65, 60, 72, 60, 61, 80, 72, 66, 50, 79, 47, 63, 65, 53, 77, 67, 47, 63, 43, 64, 90, 66, 60, 48, 97, 55, 60, 69, 66, 60, 68, 71, 45, 62, 113, 71, 51, 60, 64, 80, 84, 53, 64, 65, 72, 76, 68, 40, 63, 59, 61, 59, 56, 50, 35, 62, 80, 55, 56, 70, 63, 64, 67, 88, 57, 68, 63, 60, 63, 52, 58, 71, 67, 57, 60, 39, 55, 69, 83, 71, 67, 59, 67, 51, 53, 44, 75, 65, 67, 64, 41, 45, 55, 66, 52, 66, 69, 61, 68, 64, 64, 91, 69, 52, 60, 61, 76, 62, 45, 56, 62, 63, 93, 59, 71, 91, 60, 64, 85, 60, 69, 98, 73, 72, 68, 62, 70, 76, 94, 85, 75, 76, 66, 74, 65, 59, 53, 65, 71, 70, 58, 57, 70, 56, 62, 59, 59, 54, 86, 73, 66, 73, 68, 58, 78, 74, 76, 99, 51, 60, 51, 76, 94, 68, 80, 49, 72, 67, 61, 71, 72, 63, 52, 75, 48, 80, 39, 67, 66, 97, 59, 63, 60, 62, 67, 64, 68, 94, 51, 70, 44, 59, 54, 69, 86, 58, 88, 84, 83, 63, 68, 70, 83, 70, 59, 105, 53, 65, 51, 66, 89, 70, 62, 58, 60, 62, 58, 68, 77, 63, 56, 52, 57, 57, 66, 62, 80, 69, 72, 70, 48, 76, 101, 61, 77, 66, 56, 58, 68, 56, 49, 62, 68, 60, 69, 81, 70, 69, 59, 111, 45, 55, 100, 64, 83, 82, 61, 54, 43, 74, 49, 60, 69, 58, 62, 67, 59, 98, 66, 57, 69, 75, 88, 65, 62, 73, 48, 64, 64, 57, 72, 50, 65, 52, 47, 84, 65, 55, 70, 65, 60, 67, 46, 54, 58, 59, 70, 64, 63, 76, 61, 51, 53, 60, 53, 76, 76, 59, 46, 83, 100, 77, 69, 80, 72, 66, 61, 65, 63, 81, 64, 58, 70, 54, 52, 59, 51, 120, 85, 61, 49, 58, 66, 94, 49, 64, 63, 62, 68, 70, 63, 71, 93, 68, 60, 54, 48, 49, 58, 60, 69, 56, 69, 76, 71, 57, 81, 54, 70, 62, 69, 63, 76, 47, 52, 67, 46, 73, 58, 82, 68, 57, 54, 67, 57, 58, 63, 70, 57, 69, 75, 72, 75, 84, 53, 49, 59, 48, 63, 74, 58, 76, 78, 64, 57, 77, 47, 53, 71, 57, 50, 62, 93, 84, 52, 86, 66, 117, 57, 55, 52, 69, 60, 49, 61, 43, 71, 89, 77, 67, 73, 56, 46, 59, 86, 57, 62, 58, 76, 75, 67, 55, 50, 62, 61, 57, 67, 55, 113, 63, 59, 73, 57, 67, 59, 71, 68, 68, 71, 75, 73, 52, 69, 55, 54, 59, 74, 69, 55, 89, 69, 53, 49, 63, 67, 72, 74, 69, 59, 47, 68, 56, 73, 74, 57, 65, 38, 60, 62, 81, 104, 55, 78, 58, 66, 105, 52, 64, 68, 65, 79, 63, 47, 62, 64, 60, 78, 73, 49, 70, 83, 90, 60, 63, 73, 65, 87, 72, 48, 60, 58, 54, 64, 63, 60, 55, 57, 57, 52, 65, 70, 47, 59, 62, 66, 50, 59, 54, 62, 66, 48, 92, 70, 53, 60, 66, 66, 54, 86, 78, 58, 67, 58, 62, 64, 60, 75, 69, 63, 58, 68, 59, 66, 55, 69, 96, 39, 75, 69, 53, 76, 60, 48, 79, 52, 77, 44, 67, 75, 91, 57, 59, 59, 66, 77, 77, 65, 76, 63, 81, 40, 81, 60, 57, 49, 73, 90, 53, 50, 63, 67, 52, 49, 58, 73, 68, 68, 61, 51, 63, 70, 85, 81, 52, 68, 103, 52, 79, 69, 68, 50, 52, 77, 70, 58, 77, 46, 50, 69, 51, 51, 63, 52, 60, 62, 53, 72, 56, 55, 46, 54, 68, 61, 69, 56, 69, 65, 73, 60, 59, 60, 86, 46, 67, 78, 50, 51, 44, 68, 63, 74, 83, 54, 62, 70, 69, 57, 63, 77, 62, 67, 45, 56, 78, 51, 44, 78, 67, 73, 92, 78, 67, 79, 49, 55, 53, 87, 62, 67, 43, 49, 61, 80, 68, 73, 58, 75, 35, 56, 71, 69, 65, 71, 62, 64, 76, 74, 74, 49, 46, 73, 70, 60, 49, 72, 84, 73, 65, 58, 75, 65, 86, 75, 91, 71, 114, 65, 98, 77, 50, 55, 64, 54, 62, 56, 42, 50, 72, 70, 76, 62, 64, 59, 56, 58, 46, 69, 60, 56, 72, 79, 55, 75, 71, 65, 77, 65, 66, 63, 57, 63, 64, 55, 33, 46, 92, 45, 88, 47, 72, 68, 65, 51, 129, 51, 87, 75, 48, 67, 75, 63, 70, 41, 89, 102, 73, 58, 68, 56, 60, 69, 57, 56, 82, 64, 77, 77, 85, 65, 81, 67, 68, 72, 51, 75, 67, 46, 31, 56, 84, 81, 94, 64, 76, 64, 70, 59, 77, 61, 68, 82, 60, 61, 62, 100, 59, 49, 75, 53, 65, 56, 64, 76, 92, 67, 60, 57, 67, 82, 62, 45, 58, 74, 75, 59, 66, 60, 64, 58, 105, 70, 75, 82, 69, 61, 43, 99, 84, 62, 96, 66, 74, 54, 65, 75, 52, 62, 66, 63, 44, 44, 78, 87, 58, 51, 69, 62, 84, 51, 76, 57, 75, 71, 53, 84, 46, 67, 86, 81, 60, 71, 52, 59, 55, 49, 61, 74, 66, 63, 56, 63, 76, 57, 71, 62, 59, 86, 39, 66, 82, 51, 59, 62, 45, 77, 65, 79, 41, 55, 68, 68, 51, 50, 62, 71, 86, 45, 60, 67, 77, 71, 75, 51, 56, 47, 99, 70, 73, 81, 83, 67, 58, 69, 64, 68, 61, 110, 83, 53, 68, 42, 78, 86, 56, 54, 59, 66, 73, 74, 80, 67, 81, 82, 55, 70, 107, 84, 60, 55, 53, 74, 62, 59, 69, 79, 76, 71, 73, 48, 64, 55, 78, 68, 59, 57, 66, 71, 47, 134, 52, 67, 102, 43, 64, 84, 63, 57, 70, 62, 69, 75, 59, 53, 70, 56, 72, 71, 75, 54, 60, 41, 59, 52, 57, 67, 72, 41, 52, 66, 87, 56, 63, 63, 38, 72, 75, 76, 78, 113, 68, 45, 63, 69, 66, 61, 59, 71, 51, 61, 41, 68, 75, 75, 87, 93, 83, 79, 82, 64, 64, 59, 100, 86, 57, 67, 68, 51, 54, 64, 76, 59, 73, 39, 109, 62, 67, 51, 54, 60, 70, 64, 76, 71, 70, 62, 93, 53, 79, 55, 72, 61, 80, 74, 59, 62, 78, 86, 66, 75, 56, 49, 59, 74, 67, 55, 63, 53, 57, 83, 45, 77, 50, 63, 68, 51, 51, 72, 75, 62, 57, 59, 63, 61, 75, 60, 56, 48, 78, 64, 61, 51, 158, 67, 104, 45, 69, 55, 71, 49, 67, 63, 62, 67, 54, 64, 57, 70, 70, 46, 79, 49, 58, 42, 84, 52, 50, 71, 68, 64, 52, 89, 60, 83, 61, 49, 61, 58, 79, 58, 62, 65, 73, 54, 58, 52, 57, 61, 61, 68, 66, 64, 89, 68, 59, 61, 60, 55, 64, 62, 76, 74, 66, 39, 55, 60, 56, 71, 64, 55, 49, 66, 52, 72, 92, 54, 68, 67, 67, 72, 60, 54, 47, 74, 46, 76, 42, 63, 53, 69, 47, 77, 79, 62, 82, 60, 81, 76, 58, 51, 67, 64, 71, 66, 79, 53, 92, 54, 69, 65, 98, 62, 60, 55, 95, 63, 45, 53, 52, 65, 82, 71, 69, 74, 68, 94, 55, 61, 95, 77, 80, 70, 60, 52, 52, 60, 62, 60, 57, 65, 57, 82, 57, 79, 93, 53, 54, 104, 54, 68, 79, 72, 41, 55, 75, 68, 68, 70, 55, 70, 55, 61, 78, 45, 62, 57, 69, 62, 45, 52, 66, 73, 64, 57, 76, 81, 76, 71, 47, 67, 68, 66, 66, 69, 78, 64, 65, 108, 98, 56, 79, 55, 42, 67, 57, 60, 79, 74, 57, 51, 58, 68, 60, 56, 55, 65, 74, 61, 67, 63, 72, 46, 53, 57, 66, 72, 65, 71, 54, 57, 61, 68, 63, 63, 70, 62, 54, 77, 54, 70, 65, 69, 58, 64, 57, 107, 62, 79, 65, 78, 53, 69, 49, 68, 59, 63, 60, 59, 78, 84, 61, 76, 81, 107, 82, 110, 65, 64, 65, 49, 172, 49, 57, 60, 73, 94, 68, 77, 65, 50, 61, 68, 59, 55, 82, 66, 50, 62, 81, 62, 45, 58, 66, 74, 76, 80, 103, 62, 61, 78, 56, 69, 78, 68, 53, 61, 48, 75, 86, 56, 49, 70, 58, 52, 54, 73, 76, 78, 111, 69, 55, 67, 51, 76, 83, 53, 64, 56, 67, 57, 102, 79, 83, 75, 52, 81, 76, 54, 67, 55, 65, 56, 67, 59, 81, 55, 62, 53, 65, 64, 106, 45, 58, 39, 69, 108, 57, 64, 64, 60, 60, 69, 52, 56, 68, 52, 52, 58, 46, 91, 66, 61, 76, 61, 59, 76, 65, 63, 43, 66, 86, 56, 98, 44, 60, 48, 53, 59, 41, 61, 89, 89, 60, 85, 47, 54, 51, 66, 64, 63, 72, 84, 65, 80, 112, 48, 46, 49, 55, 57, 72, 69, 63, 39, 46, 81, 52, 61, 54, 70, 62, 51, 47, 62, 67, 69, 65, 71, 83, 54, 72, 65, 69, 56, 55, 55, 59, 89, 56, 86, 85, 67, 64, 72, 77, 73, 62, 67, 65, 74, 87, 56, 63, 95, 72, 73, 58, 62, 61, 47, 71, 58, 75, 51, 55, 58, 56, 65, 66, 65, 56, 91, 48, 48, 84, 50, 52, 51, 60, 64, 78, 58, 89, 56, 79, 86, 69, 49, 56, 63, 68, 85, 59, 68, 64, 51, 51, 54, 62, 59, 57, 45, 50, 84, 71, 84, 79, 79, 62, 78, 86, 78, 75, 72, 68, 65, 60, 45, 39, 69, 51, 61, 57, 60, 54, 91, 90, 70, 74, 52, 136, 75, 61, 67, 58, 59, 63, 53, 77, 67, 70, 66, 47, 61, 55, 46, 62, 75, 83, 61, 64, 48, 50, 64, 42, 62, 86, 66, 76, 87, 56, 51, 62, 68, 60, 59, 66, 70, 61, 57, 149, 95, 52, 45, 57, 60, 70, 51, 54, 63, 53, 66, 54, 88, 72, 88, 51, 77, 45, 79, 74, 78, 55, 90, 58, 92, 70, 68, 84, 54, 59, 49, 67, 68, 55, 91, 77, 83, 106, 72, 50, 85, 68, 66, 79, 61, 54, 65, 71, 120, 63, 52, 49, 45, 41, 42, 65, 56, 63, 53, 69, 40, 64, 57, 67, 68, 60, 84, 61, 39, 50, 53, 70, 61, 93, 59, 74, 58, 56, 62, 47, 88, 57, 63, 46, 66, 60, 57, 62, 63, 63, 64, 82, 63, 46, 103, 72, 65, 67, 58, 62, 54, 71, 66, 53, 53, 66, 81, 61, 52, 57, 59, 81, 70, 85, 59, 64, 61, 68, 64, 62, 56, 76, 63, 52, 61, 68, 76, 88, 44, 67, 76, 66, 77, 54, 71, 49, 66, 76, 72, 67, 78, 71, 73, 47, 72, 55, 51, 63, 48, 54, 58, 74, 95, 69, 54, 67, 58, 69, 90, 59, 88, 53, 72, 65, 83, 63, 88, 50, 58, 70, 55, 68, 91, 62, 46, 60, 50, 69, 73, 57, 57, 42, 59, 60, 61, 54, 52, 61, 75, 70, 57, 99, 54, 54, 53, 87, 65, 83, 77, 64, 66, 69, 90, 60, 55, 54, 50, 56, 58, 94, 66, 66, 67, 109, 62, 65, 61, 59, 63, 45, 59, 69, 58, 56, 67, 72, 64, 64, 67, 73, 59, 65, 109, 97, 87, 66, 60, 75, 46, 58, 62, 64, 74, 70, 83, 59, 52, 71, 82, 65, 72, 64, 71, 55, 59, 59, 76, 75, 72, 72, 60, 75, 71, 98, 50, 74, 77, 78, 60, 64, 49, 53, 69, 45, 50, 66, 70, 55, 51, 68, 64, 57, 69, 53, 62, 79, 56, 51, 105, 59, 65, 69, 88, 63, 65, 67, 50, 55, 88, 41, 84, 87, 70, 87, 66, 55, 83, 64, 49, 61, 55, 58, 70, 65, 69, 61, 69, 48, 63, 70, 81, 63, 36, 74, 73, 58, 47, 66, 52, 71, 58, 87, 42, 75, 64, 43, 66, 61, 55, 109, 45, 71, 80, 74, 47, 65, 64, 55, 55, 54, 63, 59, 69, 101, 63, 55, 66, 84, 61, 54, 58, 71, 75, 56, 49, 105, 71, 76, 55, 78, 52, 59, 78, 76, 73, 75, 72, 67, 78, 76, 60, 79, 62, 69, 67, 54, 92, 76, 62, 52, 70, 60, 64, 64, 50, 51, 71, 60, 48, 65, 62, 71, 59, 65, 63, 58, 58, 69, 48, 56, 86, 66, 64, 52, 65, 68, 63, 111, 121, 81, 41, 67, 48, 79, 54, 61, 65, 64, 54, 56, 97, 103, 63, 66, 49, 70, 61, 44, 55, 98, 67, 79, 65, 62, 76, 71, 55, 62, 53, 51, 83, 71, 76, 69, 62, 96, 61, 51, 61, 59, 68, 57, 35, 50, 66, 64, 61, 87, 75, 64, 68, 71, 74, 58, 50, 67, 59, 64, 57, 73, 53, 65, 57, 82, 53, 42, 99, 56, 58, 51, 82, 78, 56, 57, 91, 117, 56, 64, 55, 52, 63, 73, 52, 54, 68, 49, 76, 50, 62, 66, 73, 78, 79, 72, 56, 78, 63, 72, 80, 57, 49, 58, 75, 112, 79, 71, 68, 69, 64, 63, 50, 72, 67, 57, 62, 84, 56, 68, 66, 67, 59, 64, 95, 57, 62, 71, 71, 67, 49, 93, 86, 62, 42, 67, 59, 86, 48, 54, 86, 58, 39, 71, 62, 82, 80, 95, 60, 78, 76, 70, 59, 64, 62, 76, 94, 64, 53, 51, 50, 73, 49, 71, 38, 70, 69, 77, 50, 66, 67, 78, 68, 46, 63, 74, 58, 51, 77, 68, 80, 60, 58, 57, 51, 54, 50, 47, 75, 62, 73, 97, 58, 59, 75, 85, 67, 58, 63, 57, 81, 53, 75, 67, 63, 59, 92, 61, 67, 52, 68, 52, 53, 71, 59, 48, 57, 47, 56, 71, 70, 89, 50, 50, 68, 62, 62, 75, 52, 66, 83, 76, 37, 56, 51, 80, 57, 44, 70, 68, 64, 52, 77, 81, 66, 48, 72, 57, 58, 82, 75, 51, 58, 56, 52, 69, 56, 56, 49, 72, 43, 64, 36, 57, 74, 65, 60, 65, 56, 116, 61, 52, 67, 68, 44, 68, 50, 52, 59, 48, 127, 77, 84, 55, 66, 49, 55, 58, 57, 109, 46, 69, 81, 59, 37, 71, 64, 69, 64, 62, 85, 79, 92, 64, 81, 87, 53, 82, 59, 71, 67, 77, 57, 49, 64, 99, 66, 70, 70, 78, 61, 58, 73, 78, 64, 58, 111, 66, 83, 59, 50, 56, 76, 51, 70, 74, 56, 46, 101, 65, 74, 57, 60, 69, 68, 59, 64, 64, 62, 77, 61, 55, 75, 63, 82, 62, 66, 64, 79, 60, 57, 84, 94, 64, 55, 47, 53, 55, 62, 48, 71, 111, 43, 42, 87, 66, 92, 83, 64, 53, 79, 71, 74, 99, 59, 57, 55, 59, 62, 70, 65, 65, 73, 73, 62, 54, 57, 76, 68, 92, 65, 58, 61, 55, 77, 66, 70, 66, 74, 78, 68, 62, 76, 78, 57, 65, 54, 82, 89, 58, 73, 48, 51, 72, 55, 53, 59, 61, 81, 69, 68, 51, 62, 49, 66, 56, 48, 54, 61, 51, 49, 127, 86, 89, 70, 67, 73, 54, 77, 45, 90, 55, 58, 58, 52, 83, 69, 65, 80, 98, 103, 75, 60, 65, 87, 58, 66, 75, 63, 59, 51, 62, 52, 86, 53, 53, 89, 51, 60, 73, 59, 72, 58, 54, 78, 63, 62, 130, 91, 65, 98, 72, 64, 106, 70, 81, 64, 70, 71, 48, 69, 56, 66, 74, 42, 63, 62, 70, 62, 74, 53, 86, 53, 76, 71, 55, 69, 56, 60, 51, 56, 54, 65, 93, 75, 74, 70, 45, 58, 60, 68, 85, 59, 83, 57, 84, 37, 73, 73, 50, 55, 54, 88, 62, 55, 83, 112, 55, 60, 71, 42, 89, 63, 64, 94, 56, 75, 59, 98, 53, 48, 105, 64, 46, 71, 63, 47, 73, 80, 71, 63, 71, 68, 57, 58, 70, 41, 71, 45, 82, 55, 50, 54, 46, 42, 59, 53, 68, 69, 62, 62, 70, 49, 92, 76, 73, 60, 48, 71, 68, 58, 65, 70, 74, 81, 51, 62, 66, 73, 58, 46, 53, 80, 106, 105, 60, 59, 63, 53, 57, 88, 71, 57, 80, 72, 66, 57, 60, 92, 48, 53, 47, 59, 67, 63, 65, 53, 88, 68, 82, 72, 65, 110, 67, 58, 56, 67, 53, 70, 109, 66, 83, 69, 67, 61, 82, 70, 64, 66, 58, 91, 50, 53, 52, 51, 48, 52, 79, 87, 53, 64, 84, 55, 64, 67, 68, 64, 90, 62, 60, 71, 62, 58, 82, 95, 79, 66, 72, 64, 72, 46, 52, 62, 67, 89, 67, 94, 60, 49, 59, 63, 65, 62, 64, 83, 31, 55, 71, 68, 54, 46, 72, 74, 77, 65, 56, 48, 72, 97, 65, 67, 86, 41, 45, 72, 63, 81, 69, 85, 70, 66, 49, 70, 58, 91, 30, 60, 62, 51, 69, 71, 83, 53, 84, 58, 52, 55, 58, 32, 70, 62, 77, 63, 64, 72, 45, 60, 50, 75, 88, 57, 55, 76, 51, 48, 63, 73, 85, 68, 64, 79, 68, 80, 64, 74, 63, 74, 62, 64, 66, 66, 55, 60, 51, 89, 76, 68, 51, 70, 70, 70, 78, 71, 50, 48, 58, 68, 87, 80, 50, 41, 39, 42, 58, 62, 65, 78, 72, 70, 54, 64, 61, 64, 49, 71, 47, 57, 62, 68, 67, 51, 102, 67, 69, 63, 48, 69, 60, 57, 72, 53, 67, 54, 69, 51, 58, 54, 56, 54, 69, 50, 66, 67, 55, 82, 87, 152, 62, 52, 59, 65, 81, 55, 53, 80, 56, 61, 61, 70, 72, 58, 60, 97, 53, 47, 46, 54, 104, 75, 73, 66, 52, 53, 67, 49, 72, 58, 60, 69, 72, 74, 62, 74, 67, 69, 88, 57, 63, 55, 68, 68, 61, 68, 56, 55, 44, 84, 60, 83, 54, 54, 58, 57, 57, 91, 81, 81, 60, 76, 61, 83, 81, 54, 74, 92, 56, 69, 69, 58, 54, 61, 56, 71, 63, 68, 73, 54, 56, 72, 69, 76, 71, 82, 57, 51, 57, 75, 76, 61, 58, 60, 93, 65, 73, 51, 77, 120, 70, 81, 63, 60, 57, 73, 128, 66, 76, 71, 88, 44, 65, 51, 64, 54, 77, 62, 58, 62, 98, 59, 54, 54, 67, 49, 85, 47, 61, 59, 59, 72, 82, 56, 72, 49, 59, 97, 106, 55, 52, 65, 61, 45, 63, 57, 80, 64, 135, 60, 60, 57, 75, 84, 71, 59, 72, 53, 62, 75, 59, 67, 69, 93, 59, 64, 78, 62, 73, 66, 62, 74, 60, 61, 41, 77, 81, 52, 86, 65, 76, 69, 58, 53, 47, 64, 55, 53, 44, 62, 85, 69, 66, 84, 63, 60, 40, 94, 72, 65, 49, 62, 56, 62, 74, 49, 75, 89, 60, 62, 47, 90, 104, 62, 108, 54, 51, 51, 48, 78, 59, 67, 55, 63, 74, 54, 52, 111, 56, 74, 44, 59, 59, 61, 55, 60, 64, 72, 70, 50, 50, 60, 98, 72, 53, 113, 60, 55, 75, 80, 78, 57, 82, 74, 78, 52, 69, 65, 63, 73, 73, 73, 56, 58, 57, 52, 84, 63, 62, 69, 54, 82, 51, 54, 69, 54, 73, 75, 65, 64, 61, 52, 87, 70, 57, 82, 66, 65, 67, 56, 75, 63, 56, 59, 84, 62, 81, 62, 57, 67, 52, 93, 67, 67, 49, 79, 65, 64, 80, 83, 66, 53, 70, 77, 61, 41, 53, 80, 98, 71, 64, 74, 62, 65, 78, 45, 48, 39, 82, 59, 63, 70, 85, 60, 63, 59, 52, 41, 78, 42, 52, 55, 68, 64, 70, 47, 72, 73, 62, 64, 68, 87, 75, 42, 74, 87, 54, 70, 86, 75, 49, 73, 62, 69, 64, 63, 52, 72, 92, 77, 57, 77, 66, 58, 82, 91, 73, 91, 71, 65, 72, 58, 65, 64, 73, 69, 46, 66, 75, 51, 65, 65, 45, 53, 74, 61, 56, 83, 67, 55, 48, 71, 59, 73, 65, 64, 67, 88, 74, 91, 86, 51, 74, 59, 71, 83, 51, 61, 71, 61, 85, 84, 57, 60, 67, 68, 64, 61, 49, 58, 54, 62, 60, 79, 68, 49, 68, 51, 55, 68, 63, 86, 97, 88, 75, 70, 78, 60, 72, 55, 80, 51, 67, 50, 61, 67, 52, 123, 65, 74, 51, 77, 53, 52, 65, 61, 120, 42, 56, 68, 81, 62, 72, 58, 56, 69, 56, 55, 42, 49, 61, 52, 92, 54, 84, 59, 55, 73, 90, 75, 54, 79, 105, 61, 51, 46, 72, 73, 58, 61, 54, 74, 68, 94, 89, 83, 79, 72, 73, 62, 48, 102, 66, 92, 63, 51, 63, 63, 65, 60, 70, 46, 51, 77, 80, 67, 73, 80, 53, 75, 70, 73, 80, 90, 65, 43, 72, 53, 55, 50, 68, 69, 67, 72, 43, 67, 75, 41, 87, 71, 69, 58, 73, 83, 68, 87, 64, 73, 60, 101, 63, 79, 70, 64, 60, 66, 63, 80, 58, 64, 58, 51, 63, 59, 68, 66, 51, 69, 62, 58, 63, 59, 62, 92, 63, 63, 60, 48, 67, 49, 65, 73, 72, 69, 77, 68, 48, 63, 65, 67, 101, 66, 53, 57, 48, 86, 69, 70, 71, 53, 54, 53, 48, 65, 66, 57, 75, 90, 125, 67, 53, 63, 52, 68, 60, 66, 71, 81, 60, 70, 64, 78, 59, 61, 84, 75, 89, 89, 58, 81, 72, 68, 57, 84, 57, 65, 72, 48, 74, 55, 62, 67, 80, 72, 55, 85, 67, 61, 72, 57, 54, 65, 62, 65, 76, 73, 56, 62, 62, 54, 86, 66, 64, 62, 61, 61, 58, 51, 52, 78, 60, 58, 88, 79, 64, 68, 60, 65, 69, 62, 52, 66, 55, 55, 67, 59, 62, 71, 53, 65, 69, 59, 80, 46, 64, 62, 83, 69, 66, 69, 65, 47, 78, 52, 70, 68, 60, 66, 48, 79, 63, 69, 89, 98, 65, 60, 65, 52, 77, 67, 86, 94, 63, 44, 66, 88, 61, 52, 92, 65, 85, 46, 100, 45, 52, 56, 60, 74, 52, 103, 64, 54, 55, 66, 67, 54, 66, 55, 52, 43, 70, 58, 44, 65, 66, 74, 78, 54, 98, 70, 84, 103, 66, 59, 68, 72, 61, 58, 58, 72, 80, 76, 66, 63, 57, 67, 67, 71, 30, 69, 61, 56, 48, 65, 57, 58, 53, 52, 64, 56, 89, 49, 66, 62, 60, 90, 64, 71, 64, 57, 54, 41, 63, 62, 59, 82, 44, 72, 86, 91, 63, 54, 53, 64, 61, 49, 91, 74, 69, 87, 58, 57, 50, 71, 55, 65, 73, 75, 58, 53, 42, 59, 81, 67, 78, 96, 70, 64, 81, 62, 48, 65, 86, 67, 96, 87, 55, 63, 59, 68, 91, 54, 60, 53, 62, 53, 66, 51, 39, 49, 66, 44, 50, 84, 58, 63, 59, 61, 68, 50, 63, 70, 53, 69, 50, 70, 82, 62, 59, 75, 65, 69, 61, 58, 42, 56, 50, 73, 73, 43, 59, 54, 75, 55, 68, 50, 60, 92, 48, 63, 74, 85, 74, 41, 57, 58, 55, 79, 59, 77, 77, 69, 65, 42, 42, 64, 81, 87, 75, 51, 62, 59, 66, 80, 88, 61, 66, 62, 47, 95, 58, 64, 56, 58, 77, 51, 47, 86, 61, 76, 88, 54, 53, 64, 53, 77, 58, 70, 54, 62, 57, 80, 59, 55, 52, 48, 92, 48, 96, 64, 80, 66, 71, 78, 52, 57, 59, 58, 60, 71, 59, 60, 55, 55, 80, 62, 56, 74, 82, 79, 58, 64, 82, 57, 57, 55, 82, 62, 72, 56, 91, 55, 62, 72, 53, 47, 62, 43, 83, 69, 74, 45, 76, 64, 59, 61, 53, 75, 63, 51, 63, 77, 76, 142, 79, 50, 60, 44, 69, 57, 48, 77, 59, 66, 63, 54, 80, 75, 53, 61, 44, 68, 88, 82, 115, 68, 86, 84, 62, 54, 57, 57, 51, 78, 51, 57, 59, 60, 82, 67, 65, 56, 62, 73, 66, 63, 73, 74, 76, 60, 63, 67, 57, 71, 72, 51, 67, 65, 71, 42, 78, 47, 79, 66, 68, 58, 70, 51, 97, 63, 70, 62, 53, 66, 58, 76, 61, 67, 88, 65, 46, 78, 62, 56, 59, 50, 65, 93, 94, 74, 52, 56, 83, 78, 60, 73, 55, 77, 95, 60, 79, 66, 83, 71, 69, 74, 43, 58, 69, 51, 84, 71, 69, 71, 80, 71, 67, 63, 79, 54, 69, 61, 55, 69, 59, 53, 67, 63, 77, 81, 73, 67, 43, 53, 58, 53, 56, 64, 65, 59, 69, 89, 105, 65, 48, 45, 86, 56, 89, 64, 64, 72, 111, 58, 67, 79, 63, 68, 85, 49, 79, 67, 74, 90, 61, 68, 58, 131, 50, 67, 74, 73, 79, 63, 56, 60, 61, 36, 75, 79, 104, 68, 72, 69, 50, 58, 65, 48, 76, 47, 63, 75, 62, 64, 56, 62, 58, 87, 84, 56, 61, 55, 59, 94, 60, 57, 64, 54, 52, 53, 80, 82, 63, 61, 62, 73, 79, 81, 76, 68, 63, 56, 97, 42, 69, 58, 90, 64, 48, 64, 53, 78, 70, 67, 63, 76, 46, 61, 57, 44, 64, 70, 70, 44, 76, 75, 63, 67, 66, 53, 65, 58, 56, 74, 61, 59, 48, 76, 57, 62, 67, 57, 62, 69, 128, 65, 60, 63, 75, 110, 64, 76, 58, 62, 45, 54, 65, 74, 73, 42, 42, 90, 69, 61, 67, 59, 50, 65, 54, 57, 59, 68, 64, 54, 121, 43, 65, 63, 64, 75, 67, 72, 59, 79, 86, 58, 87, 68, 64, 80, 81, 57, 65, 68, 65, 61, 44, 51, 70, 70, 58, 46, 98, 67, 54, 55, 63, 57, 47, 75, 54, 51, 71, 86, 73, 44, 49, 83, 76, 90, 73, 61, 58, 56, 59, 92, 96, 60, 83, 90, 73, 54, 54, 74, 61, 51, 63, 51, 54, 67, 62, 61, 66, 69, 73, 59, 68, 68, 100, 60, 60, 65, 65, 56, 57, 56, 57, 42, 56, 73, 65, 62, 62, 69, 62, 59, 59, 61, 57, 81, 74, 66, 57, 60, 54, 57, 78, 64, 61, 74, 62, 77, 72, 72, 70, 58, 61, 65, 87, 65, 58, 61, 60, 72, 48, 63, 71, 75, 66, 65, 68, 67, 65, 88, 65, 64, 48, 72, 50, 60, 66, 57, 59, 72, 59, 98, 63, 71, 58, 52, 68, 71, 57, 105, 98, 62, 99, 75, 59, 52, 63, 73, 46, 51, 70, 57, 80, 65, 65, 66, 99, 72, 73, 64, 55, 54, 96, 55, 64, 66, 72, 58, 49, 73, 57, 75, 62, 72, 71, 52, 62, 56, 68, 54, 68, 64, 55, 67, 48, 65, 80, 63, 78, 72, 70, 104, 66, 88, 61, 55, 67, 65, 78, 80, 61, 70, 50, 91, 61, 60, 62, 59, 71, 57, 59, 58, 74, 99, 56, 90, 54, 65, 55, 56, 77, 76, 59, 86, 51, 57, 72, 62, 67, 82, 66, 45, 63, 53, 80, 77, 65, 78, 70, 64, 61, 65, 82, 54, 60, 104, 57, 61, 49, 57, 62, 64, 62, 74, 57, 72, 65, 63, 65, 66, 62, 81, 50, 64, 59, 76, 60, 62, 85, 73, 58, 79, 53, 64, 61, 82, 62, 62, 50, 61, 72, 54, 72, 61, 67, 60, 70, 60, 68, 52, 73, 80, 58, 53, 81, 49, 76, 68, 67, 68, 49, 55, 67, 54, 57, 52, 79, 65, 61, 65, 60, 61, 60, 58, 67, 48, 62, 57, 67, 63, 62, 54, 56, 61, 69, 61, 54, 81, 85, 65, 63, 94, 92, 53, 85, 52, 49, 60, 69, 64, 57, 69, 80, 94, 57, 58, 74, 65, 75, 71, 66, 58, 54, 61, 83, 52, 62, 61, 77, 59, 58, 70, 76, 64, 61, 96, 63, 60, 64, 57, 57, 61, 57, 56, 78, 64, 81, 78, 73, 59, 121, 83, 79, 63, 58, 67, 67, 75, 60, 61, 53, 55, 52, 52, 64, 64, 73, 63, 67, 51, 70, 49, 58, 57, 64, 50, 82, 71, 69, 70, 55, 59, 71, 68, 81, 67, 57, 77, 46, 63, 41, 68, 91, 67, 63, 67, 71, 55, 48, 73, 71, 88, 71, 53, 42, 64, 75, 52, 59, 64, 61, 71, 68, 73, 63, 59, 55, 71, 78, 66, 85, 100, 75, 57, 50, 63, 75, 64, 57, 82, 74, 67, 54, 66, 67, 70, 65, 62, 66, 59, 55, 44, 66, 70, 65, 69, 70, 63, 92, 81, 54, 60, 56, 59, 83, 70, 79, 57, 63, 77, 61, 48, 56, 60, 68, 82, 65, 62, 60, 71, 70, 61, 70, 64, 68, 65, 72, 70, 72, 56, 68, 94, 75, 63, 59, 51, 75, 61, 61, 70, 71, 58, 51, 74, 67, 55, 66, 60, 58, 64, 46, 65, 55, 64, 60, 123, 81, 62, 81, 49, 78, 59, 60, 50, 71, 80, 86, 59, 70, 125, 73, 38, 66, 74, 68, 82, 78, 64, 71, 49, 81, 52, 76, 87, 114, 59, 58, 54, 74, 67, 59, 102, 74, 67, 63, 88, 79, 52, 72, 69, 63, 57, 115, 55, 45, 52, 67, 64, 71, 57, 67, 59, 85, 109, 83, 49, 56, 67, 55, 64, 56, 105, 60, 83, 78, 55, 77, 62, 71, 73, 57, 58, 90, 62, 62, 67, 70, 79, 68, 58, 59, 50, 58, 60, 66, 45, 51, 58, 69, 65, 55, 71, 52, 66, 77, 70, 50, 81, 54, 47, 63, 69, 79, 81, 57, 59, 63, 64, 72, 63, 74, 57, 77, 49, 61, 62, 65, 75, 75, 46, 63, 59, 54, 68, 58, 54, 69, 101, 60, 66, 79, 68, 75, 73, 77, 66, 62, 80, 90, 49, 75, 55, 62, 94, 66, 65, 67, 79, 67, 75, 63, 80, 67, 62, 58, 56, 69, 75, 59, 64, 54, 57, 56, 67, 64, 58, 83, 51, 63, 83, 65, 67, 83, 73, 66, 62, 60, 66, 74, 56, 54, 60, 79, 62, 80, 52, 57, 65, 70, 54, 68, 54, 57, 65, 63, 62, 61, 62, 63, 62, 65, 62, 42, 56, 52, 53, 47, 64, 53, 60, 71, 76, 62, 51, 70, 70, 69, 62, 61, 55, 65, 64, 71, 105, 51, 68, 61, 70, 59, 63, 76, 69, 60, 64, 85, 41, 88, 79, 60, 84, 68, 66, 70, 66, 59, 60, 60, 36, 65, 54, 110, 73, 82, 60, 61, 67, 64, 48, 63, 50, 60, 63, 68, 45, 66, 70, 75, 63, 54, 76, 64, 66, 66, 78, 49, 52, 82, 61, 64, 68, 87, 63, 76, 51, 56, 74, 61, 67, 61, 49, 60, 66, 48, 61, 67, 64, 67, 63, 70, 61, 93, 62, 83, 46, 159, 51, 70, 64, 67, 52, 60, 60, 70, 67, 52, 83, 63, 67, 57, 95, 61, 68, 59, 59, 60, 45, 52, 109, 67, 73, 57, 66, 67, 59, 63, 56, 67, 43, 88, 92, 68, 52, 57, 81, 57, 63, 68, 82, 57, 50, 64, 77, 74, 58, 49, 55, 56, 118, 83, 55, 66, 52, 88, 99, 59, 46, 64, 57, 76, 68, 61, 93, 52, 77, 70, 77, 81, 73, 53, 63, 60, 64, 64, 79, 75, 64, 62, 52, 62, 91, 49, 48, 42, 80, 66, 68, 45, 77, 78, 64, 62, 53, 51, 72, 69, 78, 60, 89, 61, 64, 79, 67, 55, 77, 61, 63, 60, 71, 76, 51, 55, 60, 53, 54, 71, 54, 67, 52, 72, 60, 64, 69, 88, 61, 80, 85, 56, 51, 55, 95, 69, 88, 66, 49, 58, 57, 52, 58, 84, 82, 68, 59, 66, 54, 73, 55, 69, 74, 67, 65, 80, 53, 51, 60, 54, 56, 42, 69, 60, 69, 83, 62, 67, 85, 89, 67, 59, 52, 69, 62, 62, 65, 81, 79, 56, 66, 76, 64, 61, 66, 57, 72, 77, 58, 72, 87, 57, 60, 61, 115, 64, 82, 76, 58, 60, 52, 60, 85, 54, 63, 71, 61, 66, 68, 61, 71, 67, 39, 64, 85, 67, 58, 48, 95, 61, 75, 85, 66, 61, 49, 58, 75, 57, 63, 71, 60, 76, 96, 61, 69, 74, 66, 66, 44, 51, 63, 48, 74, 53, 66, 55, 64, 71, 51, 51, 53, 58, 83, 57, 62, 83, 53, 51, 60, 106, 53, 81, 71, 70, 48, 73, 61, 63, 87, 55, 74, 44, 104, 70, 65, 65, 85, 58, 54, 31, 54, 65, 62, 73, 75, 62, 55, 60, 77, 58, 59, 57, 120, 56, 64, 72, 82, 41, 82, 87, 55, 59, 53, 55, 62, 71, 68, 45, 74, 70, 112, 79, 72, 65, 65, 63, 78, 69, 55, 76, 100, 63, 57, 54, 62, 63, 57, 59, 63, 90, 57, 81, 62, 77, 75, 84, 80, 58, 65, 72, 66, 51, 66, 65, 64, 67, 63, 89, 41, 69, 50, 102, 68, 41, 58, 107, 65, 55, 67, 78, 67, 50, 62, 63, 71, 66, 88, 55, 45, 64, 71, 54, 143, 66, 75, 55, 78, 69, 52, 73, 61, 63, 46, 57, 87, 74, 80, 64, 71, 67, 45, 78, 62, 49, 76, 66, 54, 42, 43, 58, 57, 73, 78, 85, 64, 73, 61, 61, 64, 59, 96, 67, 65, 58, 59, 68, 68, 77, 54, 72, 55, 49, 62, 68, 71, 60, 71, 48, 70, 67, 51, 47, 52, 61, 79, 57, 92, 80, 59, 61, 56, 80, 79, 76, 54, 62, 57, 61, 60, 56, 69, 67, 73, 60, 66, 59, 51, 62, 60, 63, 57, 60, 39, 61, 89, 58, 86, 60, 66, 62, 60, 60, 53, 51, 64, 65, 69, 58, 64, 81, 66, 62, 51, 69, 52, 54, 57, 60, 58, 62, 70, 68, 55, 53, 90, 53, 66, 49, 69, 55, 74, 60, 61, 69, 77, 45, 88, 54, 46, 83, 61, 48, 75, 62, 50, 55, 60, 63, 46, 82, 58, 82, 102, 65, 76, 76, 61, 66, 79, 70, 55, 77, 57, 65, 67, 72, 56, 94, 69, 59, 70, 66, 49, 57, 71, 44, 58, 64, 59, 63, 71, 63, 64, 63, 92, 81, 53, 60, 63, 46, 83, 53, 57, 99, 95, 67, 73, 67, 80, 47, 52, 72, 68, 56, 74, 66, 60, 76, 65, 53, 64, 59, 79, 101, 34, 69, 80, 41, 78, 54, 106, 67, 54, 38, 73, 74, 67, 94, 63, 59, 54, 55, 71, 56, 64, 92, 73, 72, 71, 62, 60, 80, 51, 80, 47, 63, 61, 45, 58, 85, 62, 60, 49, 75, 67, 61, 68, 45, 129, 40, 46, 120, 56, 80, 60, 61, 61, 57, 60, 69, 60, 78, 60, 71, 61, 67, 69, 62, 77, 86, 73, 91, 53, 60, 61, 56, 76, 56, 61, 50, 52, 79, 53, 53, 54, 82, 55, 50, 66, 67, 79, 70, 63, 51, 74, 75, 65, 67, 59, 63, 62, 70, 60, 94, 61, 55, 48, 70, 63, 53, 112, 76, 57, 42, 78, 112, 49, 53, 76, 62, 72, 86, 70, 75, 84, 57, 59, 53, 75, 58, 49, 53, 58, 54, 49, 59, 53, 65, 44, 80, 50, 76, 92, 62, 55, 69, 76, 68, 59, 65, 62, 88, 76, 57, 64, 61, 64, 69, 81, 64, 70, 52, 67, 60, 70, 54, 86, 56, 60, 115, 62, 75, 75, 56, 46, 56, 79, 59, 51, 64, 58, 87, 63, 62, 52, 68, 60, 36, 66, 52, 64, 51, 69, 67, 54, 58, 67, 63, 103, 48, 56, 57, 52, 65, 67, 54, 67, 68, 82, 55, 75, 88, 95, 57, 52, 69, 51, 109, 54, 91, 57, 69, 64, 72, 52, 67, 75, 66, 67, 88, 64, 94, 79, 58, 57, 63, 67, 46, 62, 57, 33, 72, 48, 50, 63, 60, 82, 53, 74, 52, 77, 83, 62, 69, 59, 53, 56, 61, 72, 83, 63, 47, 64, 55, 46, 53, 66, 54, 75, 62, 70, 64, 44, 71, 54, 87, 81, 56, 64, 59, 59, 43, 60, 62, 76, 71, 78, 59, 77, 47, 53, 59, 65, 58, 76, 93, 57, 69, 43, 80, 85, 38, 57, 49, 56, 70, 55, 61, 82, 57, 52, 74, 59, 61, 65, 31, 67, 55, 59, 62, 55, 60, 77, 66, 61, 73, 75, 65, 56, 75, 62, 57, 71, 56, 59, 82, 66, 60, 83, 66, 78, 61, 58, 71, 90, 66, 76, 82, 55, 59, 56, 104, 58, 74, 92, 73, 55, 69, 56, 65, 65, 55, 48, 103, 76, 54, 67, 44, 77, 50, 73, 79, 54, 63, 65, 78, 62, 84, 60, 67, 62, 63, 74, 58, 76, 57, 63, 79, 53, 89, 97, 62, 69, 69, 60, 62, 69, 64, 46, 62, 66, 58, 53, 41, 57, 54, 74, 85, 73, 62, 45, 46, 52, 88, 88, 60, 60, 104, 54, 52, 118, 48, 57, 50, 82, 57, 46, 56, 64, 90, 69, 55, 71, 74, 51, 61, 72, 64, 69, 51, 72, 88, 108, 51, 86, 109, 55, 88, 53, 67, 62, 62, 40, 55, 66, 64, 58, 75, 67, 62, 73, 50, 110, 63, 41, 44, 62, 56, 111, 60, 52, 121, 72, 55, 64, 56, 62, 66, 67, 50, 47, 66, 78, 49, 77, 53, 84, 51, 77, 56, 54, 55, 47, 58, 49, 59, 51, 90, 64, 56, 70, 85, 64, 48, 70, 49, 57, 51, 41, 85, 55, 69, 65, 69, 53, 62, 70, 62, 49, 69, 59, 60, 58, 53, 81, 49, 48, 61, 60, 65, 48, 53, 53, 48, 59, 68, 52, 75, 67, 57, 78, 65, 92, 72, 71, 52, 60, 74, 50, 55, 65, 57, 47, 63, 52, 55, 77, 56, 83, 58, 59, 47, 68, 76, 55, 60, 78, 89, 124, 65, 59, 79, 57, 83, 56, 91, 47, 91, 50, 69, 59, 53, 93, 55, 60, 61, 68, 53, 52, 121, 65, 68, 65, 67, 56, 57, 86, 72, 56, 35, 72, 80, 71, 63, 95, 88, 60, 58, 75, 79, 59, 59, 24, 89, 53, 78, 53, 89, 59, 57, 76, 75, 54, 45, 79, 96, 93, 69, 65, 72, 66, 97, 68, 58, 43, 91, 75, 64, 45, 70, 81, 70, 89, 46, 63, 64, 49, 50, 70, 61, 55, 72, 116, 48, 56, 120, 62, 93, 53, 75, 80, 75, 63, 70, 66, 63, 73, 49, 80, 63, 53, 47, 57, 59, 72, 52, 81, 72, 61, 52, 77, 76, 81, 62, 76, 61, 60, 76, 50, 75, 63, 66, 74, 54, 49, 81, 61, 83, 101, 74, 74, 47, 54, 60, 60, 70, 66, 83, 45, 64, 70, 82, 70, 88, 66, 49, 68, 72, 47, 63, 73, 48, 61, 90, 69, 71, 58, 75, 56, 65, 90, 86, 71, 87, 66, 73, 40, 86, 87, 62, 56, 58, 65, 72, 59, 56, 80, 79, 63, 58, 51, 76, 43, 51, 57, 52, 70, 62, 73, 50, 74, 56, 62, 62, 69, 45, 97, 71, 62, 88, 91, 65, 69, 56, 76, 67, 55, 54, 71, 74, 137, 63, 63, 59, 71, 46, 66, 67, 67, 125, 70, 66, 57, 62, 68, 35, 57, 60, 56, 63, 62, 61, 63, 57, 56, 84, 74, 95, 65, 62, 59, 63, 46, 67, 95, 51, 63, 58, 57, 58, 39, 59, 56, 79, 71, 59, 92, 94, 64, 61, 45, 60, 65, 83, 58, 54, 104, 52, 47, 52, 73, 79, 53, 52, 61, 65, 52, 71, 68, 73, 67, 63, 76, 72, 61, 60, 79, 64, 74, 60, 62, 70, 46, 57, 66, 66, 63, 57, 70, 81, 59, 56, 76, 98, 64, 63, 71, 55, 91, 56, 66, 58, 107, 79, 96, 56, 56, 56, 37, 58, 73, 72, 52, 61, 58, 65, 58, 82, 57, 76, 68, 58, 67, 52, 64, 46, 55, 51, 66, 87, 58, 48, 46, 72, 70, 95, 50, 61, 72, 47, 72, 64, 54, 112, 49, 51, 77, 66, 82, 52, 55, 68, 70, 69, 91, 56, 73, 50, 68, 90, 105, 115, 64, 65, 59, 64, 62, 64, 57, 71, 71, 54, 64, 51, 62, 70, 67, 48, 73, 54, 76, 61, 100, 54, 74, 61, 73, 64, 63, 81, 66, 63, 47, 68, 75, 57, 81, 88, 76, 67, 52, 76, 43, 60, 82, 51, 70, 64, 56, 57, 54, 42, 62, 65, 59, 71, 52, 67, 60, 36, 44, 57, 60, 64, 65, 60, 56, 70, 58, 52, 66, 63, 78, 49, 47, 50, 70, 73, 41, 70, 63, 63, 55, 67, 74, 58, 56, 46, 47, 65, 89, 98, 61, 75, 43, 70, 66, 65, 66, 47, 67, 69, 59, 73, 48, 78, 97, 54, 60, 78, 67, 66, 52, 68, 68, 45, 63, 68, 75, 76, 59, 95, 63, 70, 52, 113, 64, 73, 94, 63, 45, 71, 99, 47, 67, 58, 64, 84, 53, 89, 84, 44, 77, 58, 68, 64, 63, 78, 67, 58, 47, 40, 60, 62, 106, 70, 56, 81, 64, 72, 76, 64, 66, 77, 49, 68, 70, 94, 43, 53, 70, 74, 66, 61, 47, 52, 43, 53, 111, 49, 70, 66, 71, 76, 71, 62, 58, 58, 81, 68, 69, 77, 66, 58, 59, 72, 80, 58, 81, 82, 59, 77, 73, 75, 54, 60, 68, 73, 84, 67, 63, 53, 57, 59, 65, 63, 62, 71, 59, 56, 78, 60, 54, 56, 103, 51, 109, 82, 71, 49, 59, 63, 48, 47, 86, 74, 46, 46, 62, 55, 63, 50, 56, 46, 57, 64, 46, 73, 44, 60, 52, 61, 70, 52, 60, 69, 67, 62, 55, 92, 88, 58, 66, 80, 60, 58, 72, 66, 76, 64, 59, 67, 95, 75, 73, 72, 54, 65, 61, 74, 47, 62, 46, 50, 69, 89, 67, 47, 79, 60, 86, 57, 61, 74, 54, 75, 78, 72, 51, 50, 111, 97, 58, 75, 49, 63, 73, 61, 46, 65, 68, 69, 63, 67, 56, 77, 56, 63, 63, 58, 70, 67, 105, 80, 51, 56, 77, 78, 58, 59, 70, 62, 64, 71, 55, 60, 64, 73, 87, 67, 55, 38, 63, 76, 110, 57, 58, 65, 49, 89, 62, 61, 65, 62, 75, 54, 58, 50, 42, 86, 70, 64, 107, 65, 62, 80, 106, 104, 66, 68, 59, 80, 74, 38, 64, 102, 53, 60, 56, 91, 63, 78, 70, 80, 64, 86, 64, 56, 62, 55, 66, 78, 69, 43, 56, 79, 60, 70, 66, 55, 75, 62, 60, 54, 50, 101, 99, 83, 90, 66, 51, 58, 77, 75, 64, 64, 43, 67, 70, 81, 39, 72, 55, 32, 56, 48, 62, 100, 57, 77, 54, 65, 56, 60, 74, 48, 70, 67, 74, 63, 59, 68, 77, 50, 50, 80, 52, 53, 60, 62, 103, 68, 54, 38, 62, 54, 64, 67, 61, 54, 64, 71, 71, 45, 71, 84, 78, 46, 50, 56, 62, 95, 58, 48, 99, 47, 51, 65, 45, 55, 71, 69, 56, 74, 71, 60, 65, 61, 51, 88, 79, 81, 53, 62, 62, 53, 45, 70, 62, 63, 66, 105, 71, 55, 70, 89, 87, 62, 69, 58, 79, 64, 69, 58, 83, 59, 66, 80, 63, 80, 69, 81, 63, 81, 65, 50, 77, 92, 61, 82, 64, 81, 71, 89, 56, 47, 58, 52, 38, 73, 72, 60, 56, 67, 104, 58, 76, 60, 64, 75, 77, 72, 58, 52, 56, 67, 45, 68, 90, 66, 69, 73, 70, 49, 87, 66, 68, 69, 62, 38, 114, 62, 61, 84, 107, 56, 53, 53, 59, 60, 63, 60, 58, 91, 35, 79, 63, 74, 77, 85, 89, 54, 60, 65, 67, 33, 53, 65, 75, 57, 69, 64, 73, 65, 64, 53, 84, 60, 67, 76, 118, 75, 71, 58, 71, 65, 57, 109, 48, 63, 53, 87, 57, 47, 52, 46, 79, 60, 74, 59, 65, 57, 65, 70, 70, 55, 43, 55, 78, 65, 56, 48, 66, 56, 69, 48, 58, 77, 83, 63, 68, 55, 75, 68, 66, 60, 60, 66, 66, 70, 52, 52, 48, 74, 60, 61, 59, 76, 109, 60, 71, 75, 62, 113, 71, 71, 59, 59, 77, 61, 60, 56, 66, 48, 61, 80, 75, 43, 50, 63, 64, 96, 69, 75, 65, 55, 51, 62, 64, 53, 68, 63, 75, 52, 91, 76, 62, 52, 95, 61, 54, 62, 41, 52, 49, 45, 61, 66, 52, 70, 82, 46, 81, 69, 53, 70, 69, 53, 61, 73, 55, 45, 55, 61, 75, 58, 65, 94, 62, 70, 62, 63, 64, 53, 58, 60, 76, 48, 65, 74, 49, 59, 62, 78, 48, 54, 61, 66, 81, 55, 75, 72, 70, 77, 71, 56, 55, 54, 62, 60, 69, 58, 96, 77, 82, 65, 49, 56, 105, 88, 72, 73, 62, 67, 57, 58, 78, 60, 49, 107, 46, 60, 72, 75, 57, 53, 54, 62, 59, 78, 57, 73, 68, 83, 45, 58, 57, 64, 56, 67, 61, 65, 57, 52, 68, 55, 79, 82, 56, 64, 62, 61, 74, 69, 78, 69, 57, 53, 51, 79, 56, 67, 56, 63, 125, 56, 54, 81, 66, 64, 60, 66, 67, 65, 60, 50, 63, 61, 70, 48, 86, 72, 58, 103, 123, 58, 68, 74, 48, 70, 56, 68, 72, 73, 57, 77, 53, 72, 72, 70, 72, 56, 72, 62, 58, 56, 64, 100, 66, 83, 69, 79, 48, 67, 60, 47, 68, 53, 77, 55, 64, 51, 60, 55, 44, 65, 61, 62, 57, 66, 60, 59, 65, 72, 76, 76, 57, 77, 77, 53, 54, 58, 62, 53, 61, 65, 77, 93, 60, 52, 69, 60, 51, 64, 68, 68, 70, 63, 64, 44, 76, 116, 53, 49, 47, 77, 74, 72, 70, 67, 68, 70, 62, 79, 71, 75, 55, 79, 76, 63, 59, 67, 59, 66, 56, 61, 40, 98, 67, 60, 77, 85, 62, 48, 66, 43, 49, 50, 64, 51, 116, 61, 103, 73, 64, 56, 146, 48, 58, 81, 64, 81, 58, 78, 65, 64, 106, 49, 83, 62, 59, 73, 85, 133, 57, 58, 57, 51, 162, 61, 54, 79, 57, 68, 69, 50, 69, 64, 89, 88, 46, 141, 45, 60, 74, 59, 105, 54, 65, 74, 61, 52, 69, 57, 73, 60, 69, 88, 69, 71, 53, 49, 55, 59, 64, 76, 55, 55, 65, 50, 67, 71, 61, 53, 59, 53, 77, 60, 60, 55, 80, 56, 51, 52, 57, 74, 62, 57, 63, 66, 54, 51, 65, 46, 68, 62, 63, 85, 53, 60, 56, 75, 65, 72, 87, 71, 66, 71, 69, 68, 86, 97, 77, 70, 55, 50, 52, 104, 66, 47, 65, 71, 72, 60, 64, 64, 72, 98, 76, 92, 40, 48, 66, 56, 57, 75, 59, 58, 75, 72, 75, 55, 65, 65, 50, 66, 77, 56, 101, 55, 37, 51, 65, 60, 92, 60, 52, 60, 89, 67, 59, 54, 58, 65, 62, 59, 65, 72, 47, 57, 65, 97, 66, 60, 56, 71, 74, 62, 82, 66, 52, 62, 57, 67, 62, 71, 56, 62, 71, 71, 76, 64, 67, 46, 59, 73, 48, 60, 58, 63, 68, 64, 70, 57, 71, 86, 66, 68, 67, 70, 59, 47, 66, 61, 52, 57, 70, 53, 53, 69, 53, 69, 67, 69, 67, 73, 74, 61, 101, 43, 58, 65, 62, 92, 54, 75, 46, 99, 45, 58, 77, 59, 61, 54, 76, 71, 76, 67, 56, 66, 58, 59, 66, 45, 87, 49, 59, 68, 66, 70, 76, 68, 154, 51, 69, 59, 59, 65, 59, 73, 63, 71, 61, 70, 70, 49, 73, 64, 61, 68, 77, 71, 74, 70, 67, 49, 68, 85, 62, 55, 61, 82, 58, 55, 68, 70, 62, 61, 72, 52, 47, 66, 54, 96, 61, 55, 52, 73, 70, 62, 61, 60, 56, 78, 54, 57, 85, 52, 61, 56, 75, 61, 103, 75, 60, 55, 67, 134, 64, 50, 64, 76, 69, 60, 63, 69, 69, 64, 52, 67, 55, 61, 49, 54, 71, 68, 54, 74, 61, 68, 62, 73, 69, 66, 59, 82, 68, 58, 76, 57, 76, 89, 76, 46, 49, 58, 100, 68, 82, 61, 68, 80, 69, 61, 63, 59, 56, 61, 63, 99, 75, 75, 71, 79, 65, 59, 55, 70, 75, 75, 57, 50, 83, 67, 79, 71, 114, 61, 54, 104, 80, 101, 73, 76, 66, 54, 54, 57, 66, 70, 59, 81, 61, 52, 64, 67, 69, 94, 82, 61, 50, 48, 61, 74, 56, 65, 66, 50, 56, 54, 56, 35, 53, 54, 48, 85, 61, 59, 48, 69, 89, 83, 66, 63, 64, 57, 57, 62, 51, 97, 59, 87, 66, 65, 60, 76, 63, 107, 73, 63, 62, 60, 53, 55, 60, 71, 59, 61, 56, 57, 57, 67, 58, 79, 47, 52, 98, 60, 48, 56, 62, 55, 55, 58, 68, 58, 50, 61, 65, 50, 62, 45, 79, 87, 60, 53, 63, 85, 59, 55, 83, 55, 70, 76, 70, 67, 68, 72, 64, 65, 54, 63, 61, 48, 58, 62, 56, 66, 69, 73, 80, 64, 50, 68, 73, 49, 57, 59, 65, 51, 81, 42, 46, 60, 44, 52, 61, 73, 37, 62, 75, 60, 59, 109, 63, 124, 51, 72, 75, 81, 73, 64, 73, 77, 59, 53, 64, 64, 77, 71, 95, 62, 50, 65, 52, 55, 56, 80, 65, 56, 66, 61, 102, 54, 81, 88, 86, 69, 48, 71, 85, 58, 64, 54, 78, 63, 77, 74, 86, 65, 76, 74, 92, 64, 70, 69, 87, 60, 64, 63, 66, 71, 68, 52, 76, 79, 95, 47, 59, 63, 69, 69, 89, 63, 52, 60, 53, 59, 70, 55, 55, 56, 73, 67, 54, 75, 79, 53, 76, 55, 117, 112, 69, 57, 73, 35, 174, 43, 65, 76, 67, 61, 39, 38, 63, 53, 55, 107, 68, 73, 38, 69, 65, 67, 55, 64, 72, 56, 47, 63, 64, 44, 58, 60, 85, 58, 69, 69, 54, 48, 73, 56, 103, 47, 40, 59, 53, 61, 79, 46, 99, 73, 82, 58, 40, 46, 60, 73, 48, 37, 52, 55, 63, 55, 71, 48, 68, 71, 65, 80, 47, 57, 51, 59, 76, 61, 106, 43, 77, 79, 59, 89, 68, 103, 63, 66, 68, 42, 32, 61, 42, 63, 53, 64, 76, 77, 58, 74, 52, 66, 76, 75, 78, 69, 39, 83, 54, 61, 53, 52, 71, 86, 60, 54, 82, 96, 49, 43, 68, 65, 49, 64, 95, 46, 78, 73, 107, 58, 52, 62, 48, 79, 86, 55, 63, 62, 66, 31, 70, 71, 71, 59, 51, 52, 60, 72, 48, 72, 53, 49, 90, 51, 103, 45, 70, 61, 67, 75, 55, 78, 69, 86, 61, 31, 52, 61, 58, 66, 69, 89, 75, 69, 62, 40, 80, 88, 61, 69, 41, 50, 64, 77, 57, 59, 63, 55, 57, 63, 67, 92, 57, 67, 60, 57, 74, 47, 98, 79, 73, 51, 49, 48, 85, 67, 73, 65, 81, 107, 78, 58, 88, 117, 39, 69, 55, 53, 66, 65, 74, 65, 64, 67, 102, 50, 66, 61, 48, 96, 59, 29, 69, 62, 69, 57, 84, 62, 55, 55, 48, 106, 60, 35, 63, 59, 63, 102, 71, 62, 66, 57, 43, 62, 95, 91, 68, 82, 67, 86, 81, 72, 49, 71, 74, 57, 46, 55, 50, 44, 67, 51, 59, 81, 77, 54, 80, 34, 42, 70, 84, 45, 74, 54, 43, 61, 76, 54, 50, 55, 78, 68, 68, 65, 51, 55, 62, 72, 65, 73, 64, 81, 35, 118, 62, 71, 55, 84, 73, 50, 55, 60, 56, 63, 60, 75, 64, 61, 49, 102, 63, 79, 94, 73, 50, 58, 72, 92, 74, 62, 50, 52, 63, 73, 71, 57, 51, 71, 73, 60, 85, 55, 58, 47, 48, 61, 65, 82, 64, 61, 69, 75, 73, 69, 73, 52, 99, 83, 62, 60, 50, 79, 64, 73, 106, 80, 75, 69, 88, 57, 40, 61, 69, 45, 67, 75, 90, 67, 50, 70, 82, 60, 44, 57, 68, 90, 55, 61, 65, 73, 55, 48, 76, 92, 95, 66, 76, 51, 34, 65, 75, 57, 56, 71, 59, 59, 67, 83, 57, 87, 59, 49, 62, 58, 71, 89, 52, 88, 63, 38, 61, 82, 65, 57, 39, 76, 39, 38, 72, 31, 62, 71, 57, 90, 127, 67, 58, 53, 95, 63, 77, 54, 71, 63, 86, 61, 49, 62, 52, 99, 62, 69, 46, 62, 48, 54, 72, 65, 58, 54, 39, 64, 47, 67, 71, 67, 59, 121, 56, 63, 75, 66, 70, 67, 66, 70, 66, 115, 72, 61, 78, 59, 55, 71, 52, 79, 68, 70, 70, 62, 64, 66, 44, 73, 86, 71, 74, 48, 81, 53, 55, 47, 50, 56, 63, 40, 56, 47, 41, 53, 76, 55, 54, 62, 68, 81, 49, 93, 44, 83, 81, 103, 71, 54, 91, 65, 88, 45, 54, 67, 82, 52, 58, 72, 83, 58, 74, 60, 72, 75, 74, 77, 73, 71, 42, 66, 45, 71, 74, 62, 58, 76, 94, 74, 61, 68, 102, 41, 70, 96, 42, 78, 65, 64, 76, 66, 60, 78, 64, 55, 56, 114, 63, 41, 93, 84, 72, 66, 54, 57, 63, 58, 46, 65, 58, 106, 69, 67, 56, 65, 67, 52, 66, 58, 64, 62, 74, 70, 77, 75, 47, 43, 67, 83, 99, 58, 79, 53, 43, 83, 58, 68, 118, 65, 57, 96, 52, 53, 51, 47, 88, 55, 61, 67, 54, 76, 68, 70, 58, 53, 50, 61, 55, 80, 61, 50, 60, 73, 154, 55, 73, 87, 56, 61, 75, 50, 77, 60, 110, 63, 91, 90, 62, 48, 82, 51, 87, 43, 68, 49, 68, 72, 70, 66, 48, 45, 57, 49, 68, 78, 84, 61, 57, 71, 64, 49, 46, 52, 65, 68, 72, 76, 41, 63, 51, 54, 72, 67, 70, 119, 61, 58, 47, 60, 65, 60, 44, 60, 49, 83, 70, 73, 59, 55, 93, 60, 78, 74, 76, 73, 62, 87, 87, 68, 51, 46, 67, 65, 79, 62, 50, 52, 99, 45, 67, 74, 84, 69, 54, 59, 60, 91, 73, 54, 55, 53, 86, 60, 50, 61, 34, 79, 62, 65, 85, 62, 64, 43, 63, 61, 51, 50, 72, 74, 55, 61, 62, 68, 104, 66, 76, 92, 78, 74, 55, 73, 60, 45, 118, 75, 59, 74, 117, 55, 76, 52, 54, 68, 71, 79, 78, 66, 100, 79, 45, 57, 78, 65, 104, 63, 66, 53, 82, 75, 117, 53, 61, 63, 52, 83, 73, 69, 54, 83, 81, 67, 52, 80, 63, 111, 55, 50, 44, 77, 50, 75, 72, 89, 87, 54, 69, 53, 48, 58, 90, 63, 85, 61, 75, 76, 75, 86, 59, 72, 54, 62, 72, 74, 46, 58, 49, 52, 38, 55, 57, 44, 86, 39, 101, 95, 62, 88, 54, 55, 64, 75, 50, 51, 60, 75, 59, 59, 73, 80, 94, 55, 48, 75, 60, 66, 68, 101, 42, 85, 60, 66, 55, 112, 60, 59, 75, 59, 55, 74, 69, 72, 48, 85, 57, 61, 45, 64, 69, 35, 57, 71, 49, 54, 67, 57, 48, 73, 51, 75, 58, 57, 60, 74, 82, 70, 50, 94, 53, 65, 85, 61, 57, 82, 61, 64, 48, 86, 85, 58, 56, 82, 65, 62, 52, 54, 50, 69, 69, 62, 69, 123, 94, 49, 76, 84, 77, 69, 47, 56, 71, 68, 60, 61, 56, 81, 72, 89, 75, 50, 67, 48, 45, 63, 63, 59, 57, 54, 69, 73, 60, 56, 64, 87, 78, 68, 66, 67, 57, 73, 31, 64, 63, 67, 77, 59, 61, 93, 59, 80, 93, 58, 68, 62, 93, 46, 73, 64, 62, 45, 84, 46, 47, 98, 37, 50, 83, 51, 65, 61, 67, 67, 38, 47, 67, 63, 77, 66, 50, 62, 67, 71, 57, 81, 76, 62, 64, 55, 61, 70, 53, 57, 60, 62, 64, 41, 58, 40, 55, 91, 65, 77, 69, 53, 55, 52, 51, 76, 58, 50, 78, 65, 73, 76, 63, 64, 58, 50, 73, 70, 70, 67, 147, 74, 55, 71, 65, 67, 57, 67, 69, 73, 76, 58, 126, 72, 52, 71, 60, 71, 76, 74, 87, 71, 72, 60, 58, 82, 79, 55, 65, 65, 82, 88, 73, 60, 78, 80, 74, 55, 58, 39, 57, 60, 54, 65, 77, 46, 46, 46, 66, 66, 57, 62, 54, 59, 63, 64, 53, 66, 64, 64, 55, 94, 49, 83, 66, 67, 66, 58, 61, 54, 96, 35, 77, 56, 71, 61, 60, 58, 79, 46, 49, 88, 56, 52, 67, 53, 81, 81, 74, 62, 89, 69, 40, 44, 67, 59, 65, 90, 78, 54, 73, 79, 68, 69, 51, 88, 70, 84, 41, 56, 79, 67, 51, 60, 60, 69, 50, 63, 93, 59, 47, 88, 72, 89, 71, 62, 59, 62, 83, 69, 64, 54, 75, 62, 65, 57, 72, 69, 74, 55, 73, 39, 56, 98, 48, 39, 59, 59, 72, 60, 55, 62, 63, 94, 60, 70, 73, 56, 83, 48, 60, 106, 60, 78, 81, 92, 63, 65, 93, 69, 84, 53, 63, 41, 98, 77, 74, 53, 62, 72, 67, 62, 60, 45, 92, 56, 53, 85, 76, 67, 74, 42, 43, 49, 72, 49, 54, 48, 81, 81, 82, 73, 65, 62, 72, 77, 44, 60, 72, 77, 39, 74, 51, 77, 53, 86, 40, 58, 80, 43, 82, 59, 41, 75, 59, 43, 71, 80, 71, 65, 49, 65, 69, 52, 56, 87, 60, 73, 56, 39, 70, 62, 86, 70, 60, 68, 27, 47, 68, 69, 71, 74, 66, 70, 40, 57, 68, 46, 53, 63, 58, 50, 68, 43, 51, 55, 74, 63, 59, 41, 42, 47, 69, 55, 111, 57, 52, 58, 47, 60, 63, 54, 68, 42, 84, 66, 67, 77, 74, 104, 70, 56, 78, 60, 69, 70, 69, 57, 83, 72, 80, 49, 49, 59, 62, 67, 84, 100, 63, 48, 48, 79, 80, 91, 63, 50, 66, 89, 93, 113, 68, 46, 46, 75, 57, 61, 46, 62, 71, 81, 72, 60, 50, 91, 65, 76, 49, 69, 38, 71, 90, 40, 56, 119, 72, 64, 67, 54, 51, 62, 56, 51, 86, 65, 47, 73, 82, 78, 87, 72, 70, 71, 59, 43, 55, 59, 66, 88, 55, 56, 66, 86, 87, 54, 76, 61, 53, 66, 81, 86, 46, 66, 40, 83, 51, 95, 69, 70, 44, 79, 76, 52, 64, 75, 75, 76, 84, 56, 33, 65, 78, 59, 60, 43, 63, 59, 63, 61, 55, 68, 86, 38, 55, 59, 68, 66, 67, 91, 44, 66, 86, 67, 64, 98, 73, 60, 65, 63, 87, 97, 62, 61, 50, 104, 74, 66, 77, 70, 77, 59, 96, 45, 74, 52, 64, 59, 86, 53, 49, 62, 75, 112, 71, 56, 78, 62, 63, 45, 90, 64, 53, 89, 84, 57, 72, 47, 155, 52, 48, 57, 53, 72, 67, 58, 58, 62, 77, 54, 59, 83, 81, 45, 39, 69, 54, 74, 65, 95, 70, 56, 62, 67, 77, 62, 64, 69, 68, 59, 65, 51, 56, 59, 82, 53, 87, 89, 61, 74, 70, 39, 59, 60, 78, 76, 60, 75, 71, 81, 59, 65, 62, 48, 70, 86, 105, 81, 39, 63, 79, 78, 58, 63, 67, 49, 75, 43, 36, 103, 50, 63, 69, 107, 82, 64, 65, 78, 78, 39, 46, 58, 44, 56, 76, 63, 76, 82, 51, 81, 65, 70, 67, 81, 43, 55, 49, 60, 62, 70, 73, 86, 90, 70, 76, 51, 49, 82, 88, 65, 80, 78, 55, 83, 78, 98, 37, 75, 75, 77, 83, 78, 55, 86, 100, 56, 62, 72, 28, 69, 78, 64, 57, 93, 71, 67, 44, 67, 67, 52, 68, 98, 97, 61, 67, 70, 79, 70, 60, 68, 64, 74, 60, 61, 67, 65, 75, 110, 96, 68, 69, 79, 58, 93, 60, 60, 77, 72, 77, 79, 105, 53, 93, 64, 103, 59, 87, 68, 77, 62, 64, 69, 66, 69, 57, 63, 70, 76, 69, 62, 58, 86, 79, 61, 54, 86, 48, 71, 44, 73, 64, 80, 43, 63, 61, 70, 46, 54, 70, 59, 71, 76, 72, 62, 45, 72, 67, 81, 66, 68, 63, 52, 67, 71, 52, 77, 74, 72, 60, 65, 81, 65, 59, 62, 55, 66, 53, 68, 60, 63, 57, 78, 76, 67, 55, 72, 87, 66, 85, 57, 61, 49, 73, 84, 66, 75, 66, 74, 66, 61, 68, 91, 83, 58, 90, 59, 87, 39, 95, 58, 48, 73, 60, 65, 64, 51, 68, 52, 85, 74, 89, 74, 59, 63, 69, 44, 65, 89, 96, 64, 48, 70, 84, 59, 92, 48, 53, 73, 77, 56, 74, 45, 71, 59, 60, 39, 99, 76, 64, 83, 64, 65, 52, 67, 68, 63, 65, 135, 57, 62, 54, 70, 89, 72, 58, 88, 63, 60, 81, 63, 62, 53, 50, 59, 71, 68, 61, 102, 62, 126, 76, 79, 55, 78, 54, 83, 65, 57, 57, 83, 57, 45, 42, 72, 66, 31, 58, 51, 73, 47, 56, 47, 56, 80, 55, 64, 74, 80, 49, 61, 56, 84, 63, 60, 104, 59, 74, 63, 78, 36, 47, 52, 63, 77, 64, 62, 77, 76, 70, 62, 44, 61, 66, 63, 62, 60, 65, 99, 70, 66, 51, 93, 52, 89, 86, 40, 77, 44, 75, 49, 73, 91, 80, 59, 68, 36, 59, 47, 88, 68, 100, 60, 46, 60, 80, 86, 64, 46, 105, 84, 66, 68, 56, 99, 57, 59, 46, 54, 64, 84, 81, 63, 49, 65, 61, 76, 56, 60, 60, 48, 127, 53, 55, 56, 64, 68, 62, 63, 69, 77, 52, 53, 62, 67, 66, 60, 44, 73, 45, 72, 59, 67, 57, 65, 41, 62, 90, 77, 52, 78, 62, 84, 74, 65, 69, 54, 54, 71, 70, 61, 78, 50, 53, 72, 88, 54, 80, 63, 55, 74, 33, 79, 69, 54, 74, 51, 111, 68, 70, 73, 47, 57, 66, 61, 73, 40, 53, 49, 89, 69, 62, 83, 71, 89, 79, 74, 63, 62, 62, 63, 71, 60, 59, 67, 73, 63, 78, 53, 72, 64, 70, 78, 89, 47, 71, 50, 69, 53, 55, 48, 48, 70, 56, 86, 68, 75, 90, 74, 54, 65, 62, 50, 81, 71, 72, 79, 81, 60, 59, 58, 68, 53, 82, 86, 143, 79, 58, 57, 74, 79, 42, 59, 68, 47, 70, 80, 76, 90, 65, 63, 72, 69, 66, 72, 67, 63, 47, 59, 42, 56, 63, 52, 54, 70, 58, 82, 87, 62, 63, 56, 57, 64, 44, 91, 46, 65, 78, 68, 60, 74, 95, 75, 71, 72, 60, 59, 59, 79, 59, 79, 63, 84, 52, 68, 65, 55, 70, 77, 80, 63, 67, 61, 58, 64, 68, 58, 67, 53, 79, 56, 70, 54, 53, 86, 59, 50, 51, 61, 62, 52, 68, 67, 39, 67, 54, 68, 67, 52, 79, 83, 53, 87, 79, 49, 57, 112, 87, 64, 79, 99, 58, 61, 79, 64, 65, 49, 79, 70, 73, 79, 91, 54, 59, 73, 59, 87, 60, 57, 79, 77, 67, 55, 70, 56, 56, 58, 63, 78, 61, 56, 38, 99, 75, 68, 48, 68, 65, 68, 61, 56, 87, 104, 67, 68, 84, 65, 78, 58, 53, 55, 52, 65, 69, 57, 77, 71, 85, 48, 90, 92, 54, 62, 55, 41, 48, 52, 67, 52, 84, 59, 63, 49, 81, 55, 43, 55, 82, 52, 56, 84, 82, 59, 71, 101, 47, 61, 65, 64, 59, 56, 62, 61, 46, 92, 46, 61, 75, 56, 57, 66, 64, 77, 59, 68, 72, 58, 58, 86, 68, 58, 52, 70, 62, 75, 65, 27, 100, 61, 66, 65, 78, 69, 80, 59, 96, 60, 83, 53, 52, 74, 94, 53, 72, 51, 64, 84, 73, 67, 48, 53, 64, 76, 48, 48, 68, 74, 46, 78, 85, 46, 66, 76, 68, 71, 57, 46, 81, 69, 61, 84, 60, 57, 51, 56, 45, 66, 84, 54, 82, 57, 77, 57, 57, 80, 84, 45, 67, 66, 60, 65, 60, 57, 53, 84, 53, 50, 61, 70, 52, 58, 65, 61, 66, 81, 68, 61, 62, 58, 65, 59, 103, 47, 75, 58, 54, 67, 53, 59, 60, 67, 51, 66, 63, 83, 51, 62, 62, 54, 62, 57, 46, 36, 67, 77, 65, 31, 77, 59, 67, 43, 64, 73, 78, 76, 76, 74, 82, 60, 97, 60, 48, 78, 68, 55, 69, 57, 65, 69, 49, 56, 56, 85, 52, 66, 83, 62, 70, 76, 52, 56, 59, 68, 67, 65, 74, 66, 53, 69, 58, 48, 93, 90, 61, 69, 64, 53, 73, 67, 69, 58, 37, 59, 55, 77, 59, 67, 70, 66, 73, 68, 62, 60, 81, 40, 50, 79, 56, 43, 64, 52, 68, 73, 80, 68, 61, 48, 56, 57, 79, 61, 53, 54, 81, 85, 61, 61, 75, 60, 94, 83, 70, 47, 67, 51, 75, 87, 57, 97, 74, 59, 56, 68, 60, 59, 71, 41, 61, 69, 66, 76, 63, 65, 73, 51, 63, 56, 46, 81, 78, 52, 68, 64, 65, 67, 73, 70, 62, 61, 48, 86, 56, 59, 59, 59, 77, 51, 59, 67, 53, 43, 95, 55, 55, 104, 41, 64, 51, 70, 61, 60, 74, 82, 75, 69, 63, 57, 53, 84, 67, 60, 74, 86, 50, 71, 64, 88, 65, 79, 59, 58, 68, 56, 56, 74, 74, 72, 75, 51, 87, 61, 67, 83, 76, 60, 94, 60, 64, 70, 76, 75, 50, 59, 63, 51, 55, 65, 46, 64, 55, 49, 56, 74, 67, 100, 57, 66, 89, 92, 85, 72, 41, 63, 61, 67, 64, 53, 66, 49, 64, 81, 82, 62, 78, 83, 52, 75, 67, 87, 71, 87, 73, 67, 69, 56, 73, 69, 64, 76, 72, 71, 40, 56, 79, 53, 77, 56, 73, 96, 76, 55, 56, 71, 72, 75, 65, 49, 203, 67, 49, 50, 71, 78, 82, 72, 57, 66, 64, 68, 92, 78, 90, 43, 64, 66, 65, 73, 60, 52, 62, 66, 61, 45, 60, 71, 73, 66, 70, 67, 65, 68, 50, 71, 52, 91, 44, 49, 99, 64, 62, 63, 71, 59, 62, 69, 68, 89, 63, 88, 87, 56, 99, 66, 69, 73, 53, 66, 27, 69, 54, 54, 68, 59, 80, 62, 58, 87, 77, 71, 57, 71, 55, 65, 49, 40, 57, 61, 67, 64, 67, 81, 67, 72, 62, 82, 72, 47, 57, 61, 74, 59, 60, 107, 47, 59, 56, 47, 70, 63, 74, 59, 68, 76, 71, 76, 55, 60, 66, 54, 68, 66, 60, 47, 70, 76, 63, 50, 57, 54, 65, 66, 79, 55, 82, 88, 65, 39, 55, 63, 68, 77, 57, 60, 97, 86, 53, 51, 67, 96, 59, 39, 50, 58, 85, 49, 38, 78, 45, 68, 74, 62, 64, 77, 52, 49, 69, 70, 59, 57, 63, 74, 48, 84, 56, 78, 63, 63, 84, 78, 72, 72, 81, 65, 67, 73, 53, 81, 73, 73, 113, 66, 49, 65, 75, 88, 66, 59, 67, 88, 71, 89, 74, 69, 67, 66, 71, 75, 69, 58, 66, 105, 56, 63, 57, 93, 87, 71, 71, 67, 58, 65, 61, 54, 73, 71, 63, 61, 73, 67, 69, 64, 68, 86, 79, 59, 48, 69, 72, 62, 56, 92, 81, 51, 51, 41, 52, 62, 67, 64, 62, 71, 102, 50, 75, 48, 53, 68, 62, 91, 54, 47, 68, 81, 69, 48, 48, 83, 63, 67, 73, 64, 72, 59, 70, 76, 76, 81, 62, 55, 82, 43, 77, 57, 77, 73, 71, 54, 44, 46, 38, 62, 61, 68, 66, 58, 60, 58, 49, 86, 53, 46, 67, 65, 41, 58, 62, 64, 75, 49, 60, 57, 62, 72, 60, 53, 82, 66, 45, 55, 73, 70, 92, 61, 64, 55, 77, 50, 60, 83, 56, 46, 55, 80, 67, 59, 65, 59, 55, 88, 79, 71, 59, 64, 69, 67, 66, 68, 58, 54, 45, 59, 67, 71, 84, 49, 54, 77, 71, 58, 47, 76, 64, 44, 72, 74, 65, 75, 83, 62, 77, 66, 51, 74, 63, 49, 60, 59, 62, 71, 56, 78, 72, 52, 67, 54, 108, 70, 57, 60, 71, 67, 41, 55, 77, 51, 66, 83, 64, 51, 68, 64, 55, 62, 70, 57, 86, 69, 62, 54, 57, 56, 62, 62, 66, 71, 66, 65, 58, 89, 71, 78, 56, 59, 65, 76, 55, 53, 56, 67, 57, 52, 57, 49, 106, 88, 60, 62, 88, 55, 74, 60, 66, 56, 57, 48, 68, 68, 70, 62, 102, 61, 61, 110, 58, 65, 54, 47, 70, 65, 43, 43, 63, 86, 64, 89, 35, 94, 55, 64, 65, 82, 61, 67, 53, 70, 65, 64, 110, 51, 51, 72, 58, 65, 46, 92, 58, 64, 75, 58, 63, 78, 75, 57, 68, 54, 68, 79, 57, 61, 66, 60, 51, 49, 74, 66, 34, 84, 63, 63, 57, 63, 49, 89, 65, 64, 74, 53, 58, 64, 78, 67, 76, 50, 68, 50, 49, 74, 64, 67, 60, 50, 92, 69, 51, 72, 66, 54, 67, 71, 91, 124, 52, 70, 50, 76, 62, 51, 88, 58, 58, 63, 66, 60, 68, 60, 85, 57, 53, 66, 45, 67, 54, 45, 58, 62, 64, 76, 56, 66, 83, 55, 51, 73, 66, 71, 70, 60, 46, 56, 80, 57, 71, 79, 81, 61, 46, 45, 47, 46, 72, 59, 70, 72, 86, 65, 68, 76, 69, 64, 57, 68, 50, 46, 58, 71, 70, 76, 82, 66, 55, 54, 71, 56, 71, 70, 71, 47, 75, 66, 57, 75, 88, 80, 42, 57, 81, 46, 60, 72, 61, 92, 86, 54, 63, 70, 67, 75, 65, 53, 59, 66, 65, 59, 97, 82, 96, 99, 73, 81, 76, 99, 55, 80, 60, 64, 50, 59, 43, 57, 76, 61, 63, 52, 82, 48, 50, 56, 62, 79, 81, 41, 51, 95, 50, 58, 61, 66, 48, 70, 47, 70, 55, 59, 60, 59, 75, 48, 51, 79, 42, 73, 64, 88, 40, 57, 62, 55, 84, 58, 55, 62, 78, 66, 70, 68, 61, 58, 58, 64, 83, 65, 85, 56, 72, 70, 74, 71, 68, 73, 74, 72, 43, 67, 40, 59, 73, 59, 60, 68, 67, 64, 40, 72, 99, 84, 84, 86, 51, 45, 67, 63, 87, 66, 52, 86, 77, 62, 56, 71, 63, 71, 63, 91, 71, 108, 81, 67, 57, 47, 48, 61, 66, 63, 68, 60, 51, 55, 67, 48, 65, 54, 70, 58, 61, 86, 65, 72, 66, 56, 81, 58, 61, 71, 57, 74, 57, 83, 50, 77, 79, 47, 66, 54, 51, 80, 55, 76, 65, 65, 44, 49, 66, 54, 114, 99, 59, 57, 63, 67, 113, 72, 89, 59, 41, 49, 49, 60, 60, 55, 56, 65, 82, 70, 70, 54, 50, 60, 50, 53, 73, 74, 178, 57, 61, 51, 45, 48, 76, 64, 72, 63, 66, 47, 68, 51, 56, 55, 73, 59, 71, 76, 79, 49, 61, 59, 64, 78, 64, 49, 66, 67, 124, 41, 91, 64, 51, 77, 56, 64, 55, 65, 69, 109, 65, 43, 65, 59, 48, 81, 66, 60, 56, 58, 78, 60, 61, 64, 83, 66, 83, 38, 61, 56, 74, 53, 62, 51, 81, 70, 52, 46, 67, 55, 70, 67, 75, 59, 66, 62, 61, 51, 68, 69, 49, 68, 80, 82, 67, 79, 52, 57, 79, 65, 62, 61, 76, 69, 87, 66, 50, 55, 87, 57, 84, 47, 69, 113, 74, 55, 67, 63, 71, 70, 65, 77, 59, 61, 68, 38, 52, 60, 54, 76, 73, 89, 64, 50, 55, 53, 68, 48, 76, 71, 43, 49, 92, 64, 57, 57, 75, 49, 52, 40, 53, 62, 52, 90, 65, 77, 57, 65, 61, 60, 85, 65, 67, 65, 54, 66, 69, 96, 66, 78, 51, 67, 61, 66, 95, 76, 62, 43, 51, 70, 76, 100, 77, 60, 46, 92, 63, 51, 91, 56, 73, 91, 39, 77, 35, 68, 50, 101, 56, 59, 62, 61, 58, 87, 57, 57, 65, 70, 101, 66, 51, 66, 81, 87, 63, 62, 65, 53, 72, 76, 48, 70, 85, 106, 63, 72, 46, 79, 66, 110, 55, 50, 47, 56, 101, 60, 131, 63, 78, 69, 93, 58, 65, 65, 68, 59, 73, 71, 56, 59, 82, 78, 56, 58, 45, 74, 63, 104, 112, 77, 48, 38, 73, 68, 78, 59, 52, 67, 54, 76, 89, 66, 66, 62, 90, 69, 56, 80, 72, 60, 53, 89, 62, 61, 63, 56, 89, 54, 88, 60, 87, 65, 64, 91, 63, 79, 68, 42, 57, 49, 72, 88, 62, 114, 55, 54, 67, 63, 57, 71, 83, 62, 51, 45, 74, 57, 65, 58, 86, 63, 64, 60, 56, 72, 60, 56, 57, 73, 71, 73, 89, 44, 100, 79, 100, 69, 49, 67, 75, 52, 87, 77, 83, 48, 67, 83, 69, 72, 61, 83, 65, 92, 62, 67, 76, 129, 51, 62, 58, 67, 65, 70, 98, 80, 111, 80, 81, 54, 57, 65, 56, 65, 66, 72, 66, 93, 65, 58, 69, 55, 62, 65, 67, 91, 83, 93, 55, 58, 95, 71, 61, 72, 51, 61, 57, 76, 46, 55, 90, 45, 62, 72, 64, 103, 78, 73, 59, 54, 66, 82, 74, 63, 63, 62, 51, 51, 87, 66, 54, 106, 60, 52, 72, 56, 59, 64, 99, 80, 61, 63, 49, 62, 63, 129, 71, 65, 62, 73, 67, 75, 60, 61, 73, 58, 57, 48, 52, 70, 73, 84, 60, 72, 40, 108, 60, 54, 54, 36, 43, 57, 74, 63, 67, 69, 70, 42, 53, 61, 58, 94, 64, 68, 55, 99, 63, 62, 75, 72, 73, 58, 63, 74, 67, 60, 63, 64, 48, 58, 64, 53, 75, 94, 85, 50, 73, 78, 61, 67, 66, 116, 74, 46, 73, 78, 57, 52, 56, 44, 76, 60, 73, 102, 58, 82, 64, 54, 56, 81, 66, 68, 55, 67, 70, 72, 77, 53, 69, 74, 68, 63, 51, 43, 72, 53, 62, 81, 79, 76, 82, 57, 61, 71, 76, 83, 66, 62, 60, 61, 88, 67, 47, 83, 72, 67, 69, 64, 59, 69, 72, 78, 73, 54, 55, 58, 54, 56, 58, 53, 74, 65, 61, 55, 72, 40, 64, 83, 69, 72, 63, 121, 44, 50, 88, 87, 83, 59, 64, 72, 53, 72, 79, 58, 82, 72, 50, 48, 103, 46, 79, 69, 56, 55, 63, 59, 55, 74, 50, 74, 51, 78, 71, 61, 93, 78, 67, 67, 55, 45, 65, 79, 56, 75, 81, 84, 63, 76, 63, 64, 79, 55, 67, 43, 50, 77, 54, 57, 71, 80, 42, 65, 66, 74, 69, 102, 77, 65, 65, 67, 63, 53, 74, 71, 78, 62, 66, 95, 66, 60, 75, 53, 55, 72, 56, 63, 103, 56, 48, 74, 53, 77, 45, 50, 53, 88, 47, 71, 69, 68, 78, 71, 70, 53, 87, 46, 56, 51, 61, 37, 60, 72, 71, 59, 67, 68, 75, 80, 53, 82, 60, 56, 53, 65, 51, 83, 92, 56, 49, 72, 68, 65, 110, 50, 85, 52, 65, 37, 76, 61, 33, 50, 69, 46, 55, 59, 81, 50, 66, 62, 51, 67, 78, 49, 54, 86, 62, 72, 123, 66, 79, 83, 61, 68, 44, 43, 78, 54, 98, 56, 52, 58, 57, 63, 68, 54, 79, 78, 44, 58, 55, 73, 76, 58, 54, 69, 59, 46, 57, 49, 72, 61, 133, 84, 73, 112, 81, 50, 49, 56, 49, 71, 72, 60, 57, 69, 62, 61, 80, 68, 42, 73, 93, 33, 37, 54, 57, 74, 43, 69, 52, 50, 63, 54, 74, 66, 71, 58, 84, 70, 53, 55, 70, 68, 59, 36, 52, 80, 85, 60, 61, 32, 77, 61, 62, 63, 72, 78, 55, 79, 57, 82, 47, 54, 90, 50, 77, 70, 57, 40, 59, 52, 79, 82, 97, 42, 53, 100, 62, 72, 92, 67, 83, 59, 63, 65, 61, 64, 59, 60, 53, 68, 48, 67, 73, 50, 58, 71, 44, 58, 58, 67, 48, 61, 46, 92, 53, 64, 56, 53, 105, 89, 72, 69, 57, 63, 50, 86, 56, 58, 100, 66, 73, 51, 74, 56, 72, 78, 62, 55, 68, 122, 41, 71, 76, 43, 58, 88, 49, 44, 52, 83, 87, 58, 55, 53, 55, 57, 55, 57, 69, 112, 76, 86, 72, 55, 59, 62, 32, 50, 77, 57, 83, 57, 56, 70, 62, 93, 64, 65, 56, 55, 72, 86, 50, 62, 52, 63, 59, 107, 59, 87, 62, 68, 47, 67, 66, 61, 103, 86, 64, 68, 55, 55, 64, 92, 67, 73, 81, 60, 69, 85, 53, 39, 71, 57, 70, 98, 56, 65, 60, 61, 84, 56, 76, 52, 63, 87, 55, 78, 97, 69, 60, 37, 76, 62, 58, 80, 65, 79, 50, 72, 58, 79, 89, 74, 54, 54, 55, 71, 68, 52, 70, 68, 49, 61, 65, 68, 89, 68, 54, 65, 86, 65, 71, 66, 66, 65, 54, 66, 59, 95, 63, 45, 63, 63, 46, 56, 53, 65, 84, 44, 127, 58, 83, 64, 65, 51, 78, 81, 60, 58, 86, 81, 65, 57, 58, 65, 49, 65, 53, 75, 75, 65, 66, 53, 67, 78, 36, 51, 92, 46, 50, 63, 75, 59, 67, 72, 69, 66, 64, 64, 63, 55, 53, 57, 73, 116, 77, 71, 49, 59, 61, 58, 59, 63, 84, 61, 88, 69, 55, 43, 49, 86, 68, 57, 72, 105, 75, 63, 81, 58, 84, 49, 49, 39, 59, 37, 48, 78, 63, 79, 54, 64, 59, 86, 60, 61, 73, 56, 72, 82, 49, 51, 63, 61, 71, 65, 71, 61, 57, 49, 56, 77, 64, 82, 77, 62, 70, 53, 69, 53, 51, 51, 87, 57, 63, 55, 63, 72, 48, 66, 53, 62, 55, 69, 35, 55, 74, 62, 57, 67, 56, 52, 69, 67, 53, 59, 66, 64, 53, 136, 53, 59, 61, 57, 53, 49, 65, 62, 83, 51, 68, 89, 69, 51, 72, 55, 56, 72, 55, 61, 57, 98, 67, 59, 76, 100, 48, 60, 109, 87, 73, 54, 65, 64, 112, 75, 78, 95, 86, 92, 57, 88, 52, 139, 55, 55, 63, 71, 62, 86, 68, 44, 58, 76, 53, 69, 76, 45, 53, 72, 63, 54, 75, 61, 108, 46, 67, 69, 51, 56, 61, 78, 95, 58, 91, 97, 54, 78, 64, 49, 62, 77, 97, 66, 57, 71, 57, 90, 75, 85, 77, 62, 45, 65, 75, 66, 77, 57, 88, 60, 80, 63, 65, 63, 51, 81, 53, 89, 59, 64, 63, 61, 56, 50, 65, 59, 43, 51, 90, 59, 61, 66, 70, 86, 64, 97, 64, 66, 59, 76, 60, 52, 105, 60, 77, 78, 69, 71, 77, 53, 92, 53, 58, 61, 89, 56, 121, 64, 51, 68, 76, 77, 85, 63, 64, 53, 59, 60, 52, 71, 84, 52, 87, 45, 65, 46, 79, 61, 62, 51, 73, 46, 81, 50, 61, 94, 65, 64, 71, 55, 56, 53, 73, 55, 63, 44, 48, 91, 60, 49, 83, 71, 49, 127, 106, 80, 79, 62, 71, 75, 51, 71, 73, 59, 52, 115, 47, 59, 70, 90, 76, 58, 78, 72, 57, 52, 55, 53, 65, 63, 61, 46, 65, 53, 67, 65, 95, 53, 71, 59, 77, 49, 76, 60, 44, 49, 52, 101, 70, 83, 74, 63, 95, 93, 52, 57, 57, 69, 59, 71, 58, 68, 84, 95, 57, 65, 56, 98, 78, 70, 44, 78, 62, 77, 79, 67, 75, 80, 68, 65, 55, 43, 61, 66, 73, 63, 58, 50, 69, 53, 46, 68, 52, 60, 62, 63, 68, 91, 67, 62, 71, 61, 82, 68, 68, 71, 50, 65, 61, 79, 66, 80, 74, 63, 87, 63, 117, 39, 69, 56, 58, 55, 74, 47, 62, 77, 39, 70, 60, 106, 68, 107, 67, 65, 64, 56, 94, 73, 77, 65, 66, 77, 98, 50, 95, 59, 70, 70, 65, 95, 51, 87, 86, 68, 51, 95, 64, 52, 53, 59, 50, 47, 60, 74, 48, 80, 56, 65, 104, 77, 51, 74, 86, 75, 86, 55, 70, 73, 65, 76, 33, 57, 66, 141, 61, 81, 87, 45, 72, 82, 64, 45, 83, 53, 50, 59, 54, 63, 54, 82, 57, 50, 81, 65, 46, 50, 72, 57, 75, 59, 62, 103, 66, 46, 72, 66, 66, 77, 68, 57, 75, 59, 92, 60, 70, 44, 82, 80, 71, 55, 64, 73, 52, 61, 92, 68, 60, 75, 53, 44, 68, 53, 78, 50, 50, 76, 84, 69, 67, 56, 77, 61, 73, 76, 62, 79, 56, 64, 58, 73, 74, 81, 47, 35, 60, 55, 64, 65, 57, 56, 53, 100, 60, 86, 86, 56, 90, 67, 68, 69, 67, 55, 54, 79, 67, 45, 77, 60, 88, 59, 48, 58, 57, 61, 64, 49, 43, 66, 65, 61, 45, 80, 69, 55, 51, 70, 64, 53, 79, 89, 51, 58, 49, 74, 70, 66, 77, 64, 56, 74, 72, 48, 74, 56, 37, 49, 55, 47, 73, 85, 59, 70, 75, 54, 64, 43, 62, 66, 70, 53, 70, 67, 59, 75, 60, 92, 52, 52, 66, 76, 63, 70, 68, 56, 61, 67, 56, 64, 68, 135, 65, 59, 78, 53, 56, 58, 59, 78, 67, 67, 85, 62, 53, 49, 50, 59, 33, 64, 62, 66, 68, 48, 85, 60, 52, 90, 48, 66, 74, 70, 115, 60, 62, 48, 82, 67, 60, 78, 46, 60, 63, 61, 73, 58, 78, 38, 65, 94, 52, 78, 54, 52, 54, 81, 69, 62, 80, 58, 62, 82, 73, 56, 57, 49, 65, 67, 97, 68, 53, 60, 56, 57, 54, 69, 75, 82, 67, 71, 61, 50, 61, 60, 71, 97, 65, 72, 74, 66, 59, 52, 65, 63, 57, 83, 83, 67, 67, 72, 56, 63, 67, 54, 56, 40, 47, 53, 63, 72, 48, 74, 43, 52, 59, 53, 66, 91, 53, 58, 79, 72, 62, 60, 61, 62, 74, 59, 72, 158, 63, 71, 71, 68, 75, 60, 64, 79, 62, 78, 71, 71, 46, 62, 68, 78, 75, 73, 76, 63, 99, 52, 78, 93, 68, 63, 89, 53, 65, 48, 55, 87, 74, 51, 71, 63, 58, 79, 54, 60, 65, 58, 63, 84, 52, 71, 52, 74, 76, 61, 59, 51, 73, 56, 81, 68, 58, 87, 74, 94, 68, 59, 60, 82, 60, 47, 104, 56, 64, 71, 79, 46, 53, 69, 60, 86, 65, 60, 120, 45, 35, 112, 75, 84, 59, 68, 80, 64, 58, 69, 96, 59, 95, 52, 60, 66, 56, 67, 86, 79, 86, 60, 45, 73, 76, 46, 71, 81, 55, 76, 41, 88, 59, 55, 58, 64, 69, 67, 63, 72, 65, 67, 47, 61, 69, 66, 52, 64, 74, 68, 66, 67, 83, 71, 54, 66, 71, 60, 81, 43, 70, 52, 86, 57, 48, 76, 73, 69, 71, 52, 59, 105, 54, 65, 40, 71, 79, 75, 70, 67, 59, 55, 50, 77, 96, 106, 60, 72, 58, 51, 51, 98, 82, 91, 70, 80, 82, 70, 61, 98, 69, 61, 62, 76, 90, 76, 64, 59, 88, 52, 75, 58, 78, 67, 63, 70, 82, 60, 65, 86, 67, 53, 51, 58, 55, 59, 77, 74, 75, 54, 83, 85, 49, 69, 56, 60, 117, 68, 57, 72, 66, 68, 69, 50, 79, 55, 60, 64, 59, 58, 92, 57, 60, 69, 65, 82, 63, 64, 74, 70, 71, 66, 78, 54, 77, 67, 61, 72, 69, 58, 51, 56, 80, 69, 79, 74, 44, 71, 65, 55, 50, 74, 59, 75, 48, 75, 71, 62, 76, 91, 40, 68, 54, 69, 59, 56, 59, 65, 74, 67, 66, 73, 89, 68, 44, 68, 87, 57, 78, 57, 91, 55, 89, 57, 64, 50, 61, 54, 61, 78, 55, 43, 74, 72, 72, 62, 84, 53, 71, 68, 62, 66, 41, 79, 61, 81, 80, 69, 72, 93, 51, 81, 60, 55, 62, 61, 57, 61, 90, 59, 103, 68, 67, 67, 65, 61, 60, 77, 47, 65, 73, 49, 67, 84, 53, 45, 66, 60, 57, 73, 73, 80, 75, 84, 70, 85, 75, 64, 59, 57, 66, 68, 69, 79, 57, 56, 59, 59, 69, 69, 60, 80, 58, 57, 68, 61, 62, 68, 50, 46, 81, 65, 58, 63, 99, 66, 72, 84, 61, 56, 66, 89, 48, 74, 69, 84, 78, 63, 50, 80, 59, 67, 76, 72, 56, 71, 75, 83, 57, 86, 61, 70, 50, 69, 47, 73, 61, 51, 103, 42, 73, 67, 66, 51, 64, 50, 49, 55, 60, 58, 74, 62, 56, 50, 64, 42, 55, 53, 47, 78, 63, 67, 59, 55, 79, 69, 76, 65, 71, 100, 54, 64, 71, 38, 88, 71, 64, 43, 77, 52, 53, 52, 73, 71, 59, 50, 60, 75, 54, 65, 50, 76, 37, 64, 59, 60, 46, 52, 78, 90, 50, 69, 81, 80, 70, 53, 53, 36, 60, 56, 51, 67, 83, 92, 73, 58, 66, 60, 61, 79, 55, 65, 61, 75, 58, 80, 97, 40, 63, 53, 77, 60, 81, 75, 64, 82, 79, 75, 77, 55, 92, 61, 64, 88, 71, 61, 64, 73, 71, 70, 75, 54, 70, 48, 57, 57, 44, 43, 43, 62, 55, 52, 42, 78, 74, 77, 67, 50, 67, 56, 49, 71, 63, 55, 61, 58, 59, 62, 58, 117, 41, 49, 62, 65, 87, 97, 61, 60, 75, 61, 63, 76, 90, 67, 36, 56, 99, 62, 57, 84, 79, 55, 62, 52, 54, 49, 47, 74, 70, 58, 55, 71, 45, 59, 80, 53, 68, 58, 81, 92, 50, 151, 64, 61, 67, 59, 69, 64, 62, 78, 58, 78, 33, 59, 90, 55, 85, 61, 67, 47, 54, 60, 73, 88, 84, 69, 86, 67, 57, 82, 71, 36, 64, 39, 78, 57, 64, 58, 58, 81, 73, 66, 47, 90, 66, 52, 63, 88, 85, 61, 81, 53, 56, 46, 51, 64, 48, 62, 74, 68, 65, 74, 64, 99, 70, 47, 102, 57, 59, 74, 55, 64, 67, 65, 68, 50, 74, 68, 49, 54, 107, 74, 59, 68, 83, 44, 66, 58, 84, 71, 65, 62, 48, 70, 57, 62, 56, 58, 82, 47, 69, 63, 64, 56, 88, 58, 62, 69, 53, 60, 56, 82, 73, 53, 73, 71, 89, 80, 73, 74, 46, 81, 49, 60, 71, 65, 80, 64, 54, 53, 67, 70, 73, 68, 54, 52, 54, 95, 58, 69, 56, 64, 59, 59, 60, 60, 100, 77, 96, 77, 71, 46, 70, 102, 61, 64, 49, 71, 57, 76, 56, 67, 71, 104, 54, 64, 47, 117, 66, 57, 62, 65, 72, 75, 80, 79, 50, 62, 57, 66, 84, 63, 51, 63, 69, 61, 57, 69, 98, 54, 65, 66, 49, 63, 85, 60, 76, 70, 68, 60, 89, 57, 61, 61, 55, 71, 68, 45, 56, 68, 58, 77, 57, 74, 57, 90, 64, 60, 47, 65, 67, 58, 54, 69, 51, 63, 58, 68, 81, 68, 53, 72, 54, 66, 58, 62, 58, 54, 78, 62, 102, 63, 59, 60, 92, 92, 66, 61, 74, 81, 56, 67, 67, 53, 74, 42, 79, 54, 76, 58, 57, 52, 60, 61, 65, 60, 46, 64, 38, 57, 63, 61, 59, 60, 77, 56, 74, 77, 61, 65, 67, 56, 52, 57, 67, 58, 53, 63, 59, 63, 59, 81, 59, 54, 66, 87, 67, 54, 91, 60, 60, 53, 49, 44, 66, 75, 70, 63, 54, 65, 57, 64, 62, 73, 45, 50, 65, 85, 90, 58, 65, 71, 52, 81, 86, 64, 58, 55, 60, 60, 62, 58, 75, 62, 55, 59, 59, 59, 80, 77, 84, 70, 55, 68, 54, 89, 55, 62, 65, 73, 76, 69, 47, 63, 59, 73, 68, 58, 56, 66, 67, 73, 51, 62, 46, 65, 73, 74, 62, 57, 63, 69, 66, 65, 68, 51, 64, 63, 65, 53, 68, 51, 62, 51, 60, 61, 75, 55, 47, 56, 74, 67, 59, 55, 66, 65, 61, 77, 64, 64, 56, 66, 62, 59, 84, 72, 62, 60, 62, 62, 48, 83, 58, 67, 82, 59, 74, 56, 73, 66, 77, 63, 73, 146, 75, 64, 54, 56, 79, 77, 53, 74, 80, 49, 73, 59, 73, 85, 60, 60, 50, 64, 63, 47, 85, 63, 73, 65, 63, 75, 57, 58, 58, 66, 69, 58, 68, 65, 61, 59, 58, 68, 56, 70, 61, 64, 61, 41, 61, 90, 58, 59, 65, 57, 67, 83, 73, 68, 67, 67, 65, 65, 57, 65, 67, 74, 74, 60, 65, 49, 73, 74, 73, 69, 64, 55, 55, 76, 49, 97, 60, 58, 99, 78, 73, 81, 71, 58, 74, 60, 68, 72, 65, 65, 73, 71, 69, 71, 50, 60, 66, 77, 58, 54, 56, 66, 57, 68, 63, 61, 59, 52, 63, 63, 66, 50, 61, 56, 54, 90, 74, 62, 46, 49, 151, 65, 78, 57, 57, 66, 63, 76, 55, 59, 69, 72, 79, 71, 79, 66, 64, 64, 62, 63, 98, 48, 67, 73, 59, 77, 63, 65, 57, 50, 85, 51, 64, 80, 55, 55, 64, 105, 78, 69, 59, 62, 65, 65, 104, 69, 64, 70, 63, 63, 91, 93, 80, 69, 71, 58, 62, 60, 62, 76, 87, 64, 88, 60, 63, 54, 58, 57, 66, 75, 68, 69, 75, 57, 67, 59, 49, 66, 63, 59, 68, 51, 54, 63, 74, 57, 63, 94, 60, 64, 49, 71, 71, 63, 67, 70, 82, 54, 68, 86, 62, 66, 61, 74, 70, 58, 66, 60, 67, 70, 71, 66, 53, 58, 53, 58, 80, 60, 60, 70, 74, 58, 49, 75, 74, 62, 63, 62, 63, 64, 70, 90, 65, 52, 57, 56, 76, 72, 57, 73, 53, 57, 56, 63, 59, 84, 68, 56, 56, 87, 56, 59, 76, 57, 60, 70, 57, 55, 57, 71, 68, 70, 85, 66, 57, 57, 56, 61, 68, 58, 92, 54, 75, 65, 68, 63, 59, 63, 71, 59, 61, 81, 55, 65, 65, 70, 60, 54, 54, 69, 59, 71, 59, 96, 63, 88, 78, 58, 63, 79, 66, 58, 57, 61, 67, 61, 54, 69, 61, 67, 72, 83, 76, 55, 69, 73, 75, 70, 69, 54, 67, 80, 100, 55, 72, 58, 58, 71, 70, 59, 61, 72, 79, 67, 62, 66, 58, 114, 58, 45, 55, 57, 65, 65, 91, 78, 65, 66, 55, 63, 70, 64, 69, 58, 55, 64, 69, 64, 57, 57, 69, 75, 62, 63, 76, 62, 66, 88, 47, 65, 60, 69, 67, 64, 69, 71, 73, 56, 71, 62, 61, 65, 77, 68, 58, 65, 56, 64, 72, 58, 64, 56, 64, 77, 57, 71, 59, 77, 55, 85, 66, 52, 68, 58, 62, 52, 48, 76, 56, 54, 60, 66, 74, 84, 66, 58, 62, 71, 52, 65, 59, 54, 73, 75, 69, 61, 68, 51, 59, 93, 44, 82, 55, 62, 124, 55, 64, 84, 63, 57, 60, 67, 75, 60, 51, 78, 76, 53, 67, 72, 60, 59, 64, 61, 70, 69, 67, 62, 67, 70, 59, 48, 73, 49, 61, 76, 83, 55, 54, 53, 64, 72, 51, 70, 66, 63, 49, 51, 49, 46, 70, 61, 59, 59, 76, 61, 105, 58, 68, 74, 69, 60, 70, 79, 54, 51, 63, 65, 51, 66, 61, 58, 58, 75, 64, 62, 71, 57, 84, 73, 81, 53, 70, 71, 60, 65, 55, 71, 54, 59, 61, 59, 62, 66, 56, 56, 111, 83, 57, 71, 61, 73, 55, 66, 96, 54, 65, 62, 60, 42, 70, 67, 60, 60, 66, 67, 75, 61, 70, 58, 59, 58, 74, 54, 53, 76, 61, 79, 75, 63, 55, 56, 56, 61, 62, 76, 45, 78, 52, 65, 58, 77, 69, 72, 96, 61, 56, 59, 51, 62, 49, 120, 64, 62, 65, 62, 70, 61, 61, 63, 77, 62, 65, 51, 78, 53, 75, 77, 58, 57, 89, 59, 58, 68, 64, 96, 57, 67, 75, 63, 48, 63, 80, 72, 47, 66, 71, 50, 59, 68, 74, 64, 65, 76, 62, 56, 63, 61, 85, 71, 63, 70, 65, 63, 54, 63, 59, 55, 74, 50, 60, 70, 56, 64, 60, 60, 87, 65, 59, 51, 59, 73, 64, 64, 74, 79, 49, 54, 59, 57, 58, 81, 58, 48, 77, 66, 63, 65, 75, 60, 83, 52, 96, 61, 75, 58, 64, 68, 48, 58, 73, 87, 79, 59, 69, 65, 59, 73, 86, 68, 68, 99, 52, 62, 73, 98, 61, 70, 93, 62, 66, 87, 64, 71, 55, 64, 69, 69, 67, 52, 71, 69, 56, 58, 66, 62, 61, 57, 52, 55, 61, 75, 115, 58, 56, 73, 85, 63, 62, 65, 53, 74, 52, 66, 58, 70, 64, 84, 54, 78, 68, 52, 88, 61, 95, 56, 69, 50, 63, 62, 55, 55, 82, 52, 64, 99, 84, 72, 76, 77, 62, 56, 65, 68, 74, 79, 64, 64, 67, 58, 77, 67, 79, 83, 60, 50, 69, 49, 61, 70, 57, 62, 59, 63, 59, 72, 56, 60, 83, 63, 84, 72, 72, 75, 70, 66, 54, 46, 72, 54, 57, 71, 59, 79, 94, 72, 57, 76, 51, 72, 59, 73, 82, 77, 72, 106, 48, 37, 36, 67, 97, 49, 65, 86, 66, 58, 61, 61, 81, 81, 99, 86, 111, 61, 71, 79, 95, 71, 47, 70, 51, 105, 71, 86, 76, 59, 59, 39, 45, 77, 74, 106, 66, 68, 43, 50, 45, 40, 37, 88, 61, 75, 63, 59, 59, 46, 43, 72, 57, 67, 75, 66, 64, 63, 54, 66, 64, 51, 64, 80, 65, 65, 46, 56, 54, 63, 81, 51, 46, 60, 124, 61, 62, 61, 52, 54, 80, 87, 51, 67, 69, 69, 101, 101, 59, 85, 59, 78, 70, 54, 63, 45, 73, 63, 77, 86, 61, 65, 74, 62, 60, 93, 64, 89, 78, 82, 75, 54, 71, 81, 59, 62, 75, 66, 74, 71, 44, 97, 58, 87, 47, 65, 61, 104, 65, 87, 47, 67, 51, 78, 103, 60, 44, 53, 51, 62, 56, 155, 68, 61, 90, 59, 75, 162, 120, 68, 62, 40, 41, 56, 43, 74, 59, 54, 67, 79, 73, 64, 76, 84, 64, 91, 64, 73, 36, 76, 45, 60, 72, 70, 38, 61, 63, 67, 56, 45, 71, 104, 77, 90, 64, 43, 74, 52, 68, 107, 49, 64, 62, 55, 51, 46, 64, 75, 55, 65, 54, 65, 50, 57, 79, 65, 63, 39, 47, 59, 46, 51, 61, 64, 67, 59, 102, 76, 78, 54, 46, 71, 73, 108, 66, 76, 65, 62, 72, 65, 49, 77, 73, 74, 41, 61, 60, 51, 55, 72, 55, 47, 63, 101, 68, 71, 72, 68, 79, 64, 52, 73, 57, 70, 58, 49, 67, 69, 91, 86, 74, 92, 96, 59, 97, 76, 61, 71, 72, 130, 48, 57, 66, 64, 59, 50, 54, 83, 63, 65, 37, 74, 87, 41, 70, 62, 57, 53, 69, 95, 50, 20, 74, 49, 72, 70, 62, 80, 54, 37, 51, 66, 64, 64, 84, 49, 70, 65, 55, 66, 48, 58, 57, 65, 63, 61, 70, 74, 46, 43, 47, 56, 83, 69, 56, 48, 84, 72, 51, 63, 71, 43, 73, 69, 46, 72, 71, 79, 50, 93, 75, 61, 61, 75, 61, 90, 42, 52, 64, 71, 53, 54, 54, 55, 46, 55, 82, 106, 49, 84, 104, 63, 66, 106, 93, 66, 65, 85, 65, 106, 63, 100, 72, 54, 64, 50, 63, 92, 63, 101, 79, 84, 80, 57, 68, 57, 70, 65, 72, 54, 71, 52, 66, 50, 72, 72, 64, 42, 66, 71, 44, 126, 43, 81, 79, 52, 67, 56, 97, 58, 54, 52, 65, 55, 65, 95, 64, 93, 98, 99, 78, 58, 54, 54, 51, 73, 77, 137, 69, 58, 50, 56, 69, 64, 57, 74, 84, 52, 60, 55, 73, 78, 64, 62, 63, 75, 47, 60, 65, 69, 49, 97, 54, 53, 67, 49, 60, 66, 79, 52, 52, 69, 66, 55, 78, 61, 54, 109, 75, 69, 63, 52, 65, 74, 57, 78, 51, 78, 74, 72, 72, 74, 106, 52, 52, 26, 67, 120, 55, 72, 60, 84, 66, 65, 63, 109, 120, 78, 60, 71, 35, 67, 63, 59, 80, 60, 56, 64, 41, 62, 50, 61, 62, 66, 55, 75, 75, 69, 54, 55, 59, 84, 77, 57, 56, 66, 95, 72, 53, 66, 62, 67, 62, 65, 70, 62, 70, 72, 89, 74, 89, 69, 46, 55, 52, 86, 65, 48, 92, 48, 72, 67, 44, 58, 50, 53, 59, 41, 72, 64, 61, 74, 95, 79, 87, 55, 97, 53, 64, 88, 77, 67, 53, 34, 62, 82, 58, 77, 70, 64, 52, 41, 66, 58, 76, 51, 72, 54, 57, 70, 54, 45, 49, 61, 62, 73, 50, 90, 58, 56, 69, 75, 93, 68, 64, 56, 73, 58, 61, 50, 68, 49, 93, 63, 56, 68, 47, 136, 50, 42, 97, 110, 69, 92, 42, 87, 54, 73, 87, 64, 49, 71, 50, 68, 64, 74, 67, 49, 66, 68, 42, 56, 75, 55, 45, 48, 59, 96, 94, 47, 40, 74, 62, 67, 54, 65, 70, 59, 70, 78, 44, 99, 76, 58, 68, 48, 49, 67, 85, 48, 73, 58, 55, 56, 71, 54, 61, 82, 83, 75, 61, 52, 76, 52, 68, 92, 73, 85, 60, 40, 66, 50, 52, 66, 55, 43, 68, 75, 73, 51, 76, 48, 73, 73, 63, 82, 64, 80, 72, 66, 62, 86, 45, 55, 72, 57, 87, 27, 66, 84, 59, 66, 51, 66, 73, 72, 48, 68, 37, 74, 50, 45, 66, 56, 54, 88, 60, 43, 62, 69, 74, 72, 63, 54, 57, 64, 49, 78, 63, 52, 81, 85, 69, 66, 73, 61, 57, 58, 62, 61, 59, 70, 69, 62, 76, 73, 68, 43, 54, 62, 59, 66, 53, 54, 73, 63, 78, 65, 70, 99, 67, 79, 74, 113, 99, 52, 46, 67, 55, 67, 66, 107, 55, 34, 76, 72, 56, 85, 66, 65, 67, 76, 65, 62, 64, 127, 42, 86, 41, 77, 43, 49, 94, 67, 61, 83, 63, 58, 68, 56, 89, 68, 94, 43, 56, 57, 50, 62, 53, 47, 122, 93, 113, 76, 59, 79, 38, 65, 49, 71, 60, 50, 85, 85, 89, 69, 69, 91, 84, 54, 67, 97, 56, 89, 81, 55, 46, 74, 40, 66, 65, 77, 59, 62, 57, 73, 81, 60, 68, 71, 51, 63, 96, 57, 52, 65, 79, 64, 65, 57, 53, 65, 62, 88, 36, 56, 45, 46, 67, 68, 68, 49, 42, 90, 60, 76, 73, 103, 62, 78, 77, 44, 64, 56, 82, 79, 45, 60, 77, 60, 53, 55, 39, 63, 54, 60, 53, 53, 66, 60, 44, 52, 66, 89, 57, 65, 78, 50, 45, 69, 99, 54, 78, 60, 75, 66, 78, 86, 77, 70, 59, 65, 64, 62, 101, 83, 61, 69, 64, 84, 76, 84, 73, 86, 68, 53, 96, 81, 65, 62, 58, 40, 51, 80, 93, 54, 55, 66, 72, 51, 46, 54, 67, 84, 137, 56, 77, 53, 63, 79, 60, 64, 90, 37, 66, 68, 53, 98, 70, 63, 68, 69, 56, 61, 76, 127, 54, 75, 75, 77, 56, 57, 56, 92, 61, 66, 58, 68, 57, 68, 72, 61, 53, 77, 60, 70, 51, 76, 63, 134, 61, 57, 72, 77, 62, 77, 78, 51, 78, 57, 49, 52, 152, 69, 69, 74, 120, 85, 60, 53, 68, 74, 74, 73, 65, 64, 67, 58, 71, 52, 52, 56, 66, 59, 66, 68, 70, 54, 73, 61, 63, 61, 66, 62, 72, 56, 58, 79, 64, 60, 69, 75, 61, 91, 45, 51, 54, 58, 62, 109, 59, 59, 57, 91, 66, 75, 69, 62, 57, 89, 64, 55, 57, 76, 54, 54, 68, 63, 74, 74, 57, 55, 56, 62, 59, 69, 74, 79, 46, 69, 69, 67, 73, 59, 66, 57, 68, 68, 93, 63, 46, 49, 67, 73, 57, 58, 90, 70, 51, 79, 77, 83, 54, 56, 53, 57, 58, 53, 60, 95, 76, 61, 69, 71, 55, 53, 69, 61, 50, 77, 72, 53, 78, 65, 72, 65, 62, 66, 95, 58, 78, 66, 49, 65, 65, 63, 64, 76, 63, 57, 74, 74, 60, 60, 64, 67, 65, 70, 53, 74, 70, 51, 46, 65, 98, 58, 56, 69, 64, 92, 55, 78, 56, 54, 67, 74, 84, 51, 58, 62, 71, 70, 79, 60, 69, 82, 62, 63, 52, 63, 84, 117, 59, 55, 58, 68, 89, 61, 68, 85, 74, 49, 56, 60, 69, 79, 60, 64, 60, 61, 52, 56, 71, 71, 80, 54, 94, 73, 74, 67, 56, 82, 53, 71, 64, 68, 81, 69, 60, 52, 61, 60, 64, 71, 70, 43, 57, 67, 71, 58, 78, 54, 65, 68, 71, 57, 72, 52, 65, 62, 65, 87, 85, 58, 68, 67, 67, 67, 58, 78, 57, 83, 43, 62, 68, 78, 61, 55, 67, 54, 83, 72, 64, 73, 60, 60, 67, 71, 93, 56, 67, 113, 57, 60, 72, 62, 69, 76, 55, 63, 83, 57, 65, 55, 57, 59, 66, 71, 69, 51, 83, 93, 67, 55, 53, 56, 78, 82, 60, 57, 66, 45, 52, 97, 74, 47, 89, 73, 56, 82, 57, 58, 48, 40, 72, 60, 70, 80, 61, 67, 71, 65, 89, 65, 67, 71, 77, 64, 49, 67, 71, 54, 64, 63, 65, 69, 62, 58, 70, 43, 65, 77, 64, 69, 65, 69, 80, 61, 63, 76, 60, 75, 57, 69, 61, 68, 57, 59, 68, 71, 58, 74, 104, 59, 71, 67, 65, 69, 62, 97, 89, 87, 64, 69, 37, 57, 58, 76, 58, 63, 63, 72, 59, 52, 86, 45, 63, 55, 100, 79, 70, 58, 63, 54, 57, 80, 80, 56, 79, 65, 77, 81, 49, 52, 47, 77, 58, 77, 75, 62, 53, 77, 89, 84, 63, 56, 53, 67, 64, 60, 58, 70, 59, 53, 57, 59, 66, 61, 59, 84, 65, 53, 63, 69, 67, 62, 75, 106, 57, 62, 61, 48, 62, 88, 71, 62, 58, 60, 63, 66, 81, 66, 79, 45, 63, 68, 61, 34, 70, 69, 70, 36, 67, 74, 69, 81, 58, 70, 60, 61, 72, 75, 79, 57, 67, 56, 68, 60, 58, 56, 56, 67, 72, 79, 74, 69, 59, 62, 57, 64, 84, 52, 59, 81, 67, 59, 50, 59, 70, 89, 61, 97, 46, 80, 77, 56, 66, 61, 54, 54, 49, 58, 67, 52, 53, 62, 54, 60, 53, 69, 79, 69, 75, 91, 74, 65, 62, 59, 76, 67, 61, 59, 66, 79, 77, 49, 93, 87, 67, 68, 57, 65, 67, 52, 68, 77, 53, 71, 56, 74, 54, 49, 53, 76, 57, 59, 67, 56, 68, 67, 61, 64, 57, 74, 69, 60, 64, 78, 69, 56, 69, 62, 63, 55, 60, 62, 75, 86, 63, 65, 48, 79, 60, 56, 51, 67, 67, 62, 76, 71, 62, 43, 57, 79, 61, 57, 97, 71, 77, 80, 62, 72, 68, 54, 60, 48, 91, 61, 94, 107, 55, 56, 66, 68, 72, 56, 86, 50, 59, 61, 59, 89, 59, 110, 60, 56, 74, 65, 66, 51, 64, 84, 45, 86, 58, 57, 69, 62, 58, 74, 51, 70, 65, 71, 82, 58, 67, 83, 56, 74, 53, 60, 61, 52, 63, 63, 78, 60, 68, 70, 69, 48, 75, 58, 54, 64, 60, 66, 67, 66, 64, 65, 67, 71, 69, 59, 51, 71, 57, 76, 67, 63, 60, 61, 54, 53, 62, 49, 94, 74, 69, 66, 49, 61, 70, 60, 73, 80, 62, 59, 72, 61, 71, 79, 62, 89, 66, 70, 69, 57, 59, 67, 111, 58, 64, 73, 68, 59, 58, 59, 55, 55, 63, 67, 73, 59, 49, 71, 43, 66, 70, 42, 62, 50, 78, 69, 84, 49, 81, 81, 55, 70, 50, 63, 51, 46, 62, 64, 72, 53, 75, 69, 120, 61, 61, 56, 66, 62, 51, 88, 61, 60, 71, 60, 67, 57, 55, 44, 59, 86, 92, 74, 57, 51, 83, 67, 53, 65, 57, 67, 57, 62, 59, 97, 48, 60, 69, 52, 54, 66, 61, 73, 63, 55, 64, 60, 90, 57, 79, 77, 53, 62, 79, 73, 81, 68, 59, 76, 49, 67, 59, 71, 65, 63, 66, 61, 52, 57, 81, 53, 61, 77, 59, 61, 58, 57, 65, 72, 53, 87, 67, 52, 60, 66, 62, 56, 69, 70, 120, 51, 66, 52, 68, 69, 65, 74, 48, 56, 66, 51, 71, 63, 93, 53, 71, 62, 73, 46, 70, 80, 46, 52, 64, 75, 63, 54, 83, 61, 78, 59, 70, 67, 54, 73, 64, 89, 78, 57, 44, 49, 46, 47, 53, 68, 86, 67, 68, 64, 63, 51, 72, 62, 63, 130, 54, 50, 54, 73, 52, 58, 96, 60, 107, 65, 58, 66, 53, 73, 78, 63, 57, 56, 76, 53, 77, 66, 56, 57, 51, 61, 90, 70, 66, 66, 108, 69, 87, 59, 99, 56, 74, 60, 82, 57, 57, 62, 66, 51, 52, 83, 58, 59, 66, 71, 53, 58, 84, 66, 50, 50, 89, 55, 79, 69, 64, 83, 76, 57, 72, 71, 71, 84, 55, 68, 100, 68, 73, 58, 42, 59, 63, 56, 66, 67, 69, 72, 64, 78, 73, 46, 52, 69, 48, 48, 72, 78, 70, 70, 53, 76, 65, 83, 36, 109, 53, 72, 57, 83, 39, 61, 64, 54, 82, 65, 56, 77, 62, 60, 68, 55, 29, 73, 65, 67, 52, 76, 53, 69, 56, 71, 44, 65, 62, 57, 97, 57, 79, 70, 54, 62, 91, 61, 64, 61, 90, 49, 72, 59, 48, 51, 72, 86, 69, 110, 77, 67, 97, 52, 66, 84, 50, 52, 71, 78, 67, 57, 93, 55, 62, 63, 70, 65, 65, 63, 50, 47, 55, 53, 76, 119, 63, 98, 82, 55, 66, 64, 61, 58, 58, 98, 80, 63, 75, 72, 55, 75, 58, 65, 73, 44, 91, 76, 84, 82, 57, 70, 77, 53, 67, 58, 54, 63, 43, 53, 42, 68, 71, 76, 64, 63, 59, 63, 61, 87, 78, 60, 63, 68, 75, 47, 59, 69, 65, 71, 66, 69, 57, 73, 73, 56, 63, 58, 70, 88, 52, 94, 53, 66, 66, 104, 56, 76, 61, 84, 64, 59, 75, 65, 52, 58, 57, 87, 65, 57, 66, 51, 61, 73, 68, 53, 69, 76, 55, 50, 71, 61, 89, 56, 90, 60, 64, 59, 84, 61, 45, 67, 54, 75, 62, 61, 77, 60, 59, 65, 56, 76, 95, 65, 71, 67, 81, 78, 56, 88, 67, 54, 75, 75, 76, 77, 60, 77, 61, 31, 71, 67, 72, 70, 53, 52, 88, 65, 52, 72, 79, 49, 88, 52, 66, 71, 65, 57, 78, 73, 62, 56, 72, 67, 86, 64, 71, 52, 71, 80, 65, 70, 69, 73, 46, 76, 72, 46, 56, 59, 53, 74, 79, 79, 73, 61, 70, 67, 60, 70, 68, 55, 58, 68, 83, 56, 61, 75, 58, 89, 64, 70, 95, 92, 54, 80, 47, 63, 56, 75, 74, 55, 51, 77, 49, 64, 53, 69, 58, 57, 37, 82, 68, 68, 73, 108, 79, 55, 65, 54, 67, 78, 85, 70, 64, 58, 59, 65, 64, 65, 78, 61, 69, 81, 43, 64, 55, 67, 53, 84, 66, 98, 57, 81, 44, 60, 64, 78, 75, 83, 62, 76, 73, 69, 74, 54, 76, 48, 69, 68, 57, 58, 59, 61, 68, 77, 63, 88, 74, 46, 70, 109, 67, 59, 54, 73, 53, 54, 63, 77, 68, 53, 83, 47, 50, 81, 67, 146, 108, 72, 69, 54, 72, 133, 46, 83, 61, 55, 60, 68, 68, 49, 61, 64, 107, 69, 68, 65, 64, 54, 75, 80, 81, 60, 45, 78, 43, 62, 49, 74, 93, 74, 55, 46, 80, 56, 55, 55, 75, 58, 63, 70, 41, 63, 80, 54, 70, 81, 65, 65, 63, 68, 56, 61, 64, 64, 72, 57, 66, 77, 57, 62, 42, 102, 65, 60, 65, 49, 57, 75, 72, 61, 113, 63, 47, 49, 59, 70, 51, 70, 68, 37, 64, 70, 67, 64, 55, 58, 53, 54, 79, 57, 47, 74, 67, 69, 69, 71, 71, 62, 59, 59, 90, 82, 47, 69, 70, 82, 59, 56, 105, 81, 46, 55, 79, 103, 58, 65, 63, 44, 80, 67, 81, 62, 63, 71, 77, 61, 78, 51, 49, 64, 109, 59, 82, 57, 105, 70, 64, 49, 68, 75, 83, 53, 108, 50, 110, 56, 52, 54, 85, 83, 92, 68, 47, 61, 58, 98, 74, 94, 65, 86, 57, 73, 56, 69, 58, 47, 65, 67, 56, 51, 63, 69, 57, 56, 69, 83, 60, 62, 68, 66, 62, 57, 85, 51, 80, 70, 69, 58, 59, 70, 57, 69, 76, 59, 80, 60, 63, 43, 47, 74, 67, 70, 52, 66, 71, 53, 56, 87, 77, 84, 83, 58, 59, 54, 50, 71, 105, 60, 51, 64, 50, 66, 80, 57, 66, 67, 61, 78, 41, 66, 71, 39, 50, 42, 46, 61, 76, 60, 73, 75, 58, 67, 56, 62, 78, 63, 59, 76, 74, 73, 62, 80, 52, 50, 56, 57, 59, 50, 39, 46, 82, 53, 60, 78, 94, 67, 55, 55, 75, 47, 56, 47, 62, 61, 75, 73, 60, 70, 57, 56, 81, 73, 62, 50, 94, 55, 54, 95, 65, 57, 50, 56, 36, 58, 64, 119, 53, 77, 48, 63, 51, 91, 53, 36, 47, 59, 91, 85, 72, 55, 61, 65, 70, 63, 67, 75, 59, 54, 66, 83, 65, 66, 66, 56, 96, 50, 57, 73, 60, 67, 82, 91, 54, 64, 59, 49, 58, 79, 60, 61, 66, 68, 63, 59, 58, 69, 62, 68, 52, 74, 63, 60, 63, 60, 46, 53, 117, 106, 118, 64, 62, 102, 68, 71, 74, 61, 55, 59, 63, 70, 59, 59, 76, 59, 54, 47, 52, 58, 81, 64, 62, 60, 57, 71, 78, 39, 51, 59, 59, 59, 77, 103, 86, 69, 67, 74, 56, 65, 51, 65, 54, 53, 59, 98, 41, 57, 81, 57, 82, 55, 62, 46, 55, 62, 34, 75, 77, 74, 64, 84, 81, 53, 52, 56, 54, 84, 72, 60, 63, 73, 70, 39, 56, 67, 67, 51, 73, 61, 90, 62, 59, 63, 54, 67, 50, 58, 71, 50, 67, 75, 76, 56, 54, 53, 60, 86, 46, 64, 74, 66, 70, 62, 49, 59, 77, 42, 66, 75, 64, 56, 50, 70, 72, 53, 65, 57, 38, 90, 57, 71, 55, 38, 74, 57, 67, 71, 67, 59, 54, 66, 75, 62, 64, 68, 88, 65, 75, 120, 72, 72, 74, 62, 58, 49, 57, 80, 66, 52, 63, 61, 75, 73, 55, 68, 53, 63, 63, 45, 64, 54, 43, 74, 29, 101, 76, 56, 55, 69, 67, 70, 70, 74, 62, 40, 50, 95, 71, 83, 53, 72, 61, 74, 116, 49, 61, 114, 68, 59, 53, 52, 41, 78, 64, 58, 51, 54, 78, 56, 70, 83, 67, 54, 72, 61, 142, 67, 83, 67, 69, 65, 54, 53, 53, 69, 80, 44, 63, 67, 43, 67, 60, 76, 66, 55, 73, 61, 65, 57, 83, 74, 86, 82, 82, 64, 51, 73, 69, 48, 63, 72, 48, 59, 74, 68, 83, 49, 57, 56, 74, 51, 83, 41, 63, 46, 62, 89, 55, 66, 56, 54, 98, 55, 89, 62, 37, 65, 58, 60, 42, 62, 60, 76, 73, 71, 60, 54, 69, 52, 65, 72, 80, 66, 47, 59, 53, 64, 70, 62, 56, 59, 73, 40, 68, 72, 53, 69, 77, 61, 68, 63, 72, 61, 51, 66, 66, 71, 82, 52, 66, 67, 54, 66, 73, 39, 66, 64, 59, 48, 66, 71, 57, 52, 62, 70, 112, 60, 71, 44, 47, 55, 55, 91, 75, 46, 74, 63, 74, 50, 56, 76, 48, 81, 67, 57, 61, 56, 45, 71, 66, 51, 69, 43, 67, 88, 61, 69, 67, 67, 81, 70, 59, 75, 62, 43, 55, 97, 50, 68, 68, 79, 69, 83, 75, 66, 41, 73, 69, 71, 53, 67, 60, 67, 66, 75, 93, 73, 63, 79, 60, 68, 69, 72, 55, 111, 51, 66, 78, 46, 67, 91, 55, 84, 51, 55, 52, 54, 54, 70, 84, 66, 56, 70, 64, 68, 74, 70, 67, 59, 91, 43, 70, 130, 83, 76, 79, 46, 56, 57, 74, 64, 50, 92, 64, 59, 65, 61, 62, 68, 76, 55, 46, 62, 47, 67, 57, 80, 110, 51, 81, 62, 45, 65, 67, 63, 41, 52, 68, 104, 61, 61, 59, 64, 66, 49, 93, 59, 50, 91, 55, 65, 69, 75, 61, 40, 53, 67, 79, 60, 79, 70, 56, 81, 71, 57, 73, 67, 86, 59, 84, 80, 55, 70, 79, 95, 63, 58, 66, 94, 56, 46, 65, 53, 68, 61, 57, 71, 84, 65, 46, 56, 85, 55, 79, 57, 63, 76, 85, 55, 55, 48, 65, 73, 60, 50, 59, 56, 64, 63, 47, 75, 61, 52, 100, 72, 76, 113, 70, 69, 56, 53, 61, 59, 69, 74, 66, 75, 72, 60, 59, 62, 81, 78, 81, 54, 62, 63, 49, 66, 63, 78, 63, 70, 59, 66, 94, 73, 69, 57, 105, 71, 60, 47, 66, 57, 61, 73, 62, 90, 55, 54, 53, 70, 86, 44, 88, 54, 58, 51, 77, 63, 62, 70, 76, 60, 78, 44, 98, 41, 59, 70, 82, 82, 56, 62, 47, 53, 61, 67, 60, 73, 63, 53, 75, 77, 54, 53, 63, 53, 67, 71, 85, 58, 111, 58, 63, 67, 53, 49, 63, 65, 62, 59, 63, 63, 61, 77, 57, 50, 135, 33, 74, 65, 71, 59, 63, 51, 75, 60, 73, 73, 52, 76, 75, 67, 42, 59, 58, 62, 56, 47, 74, 87, 76, 50, 60, 55, 52, 46, 61, 71, 59, 76, 76, 66, 83, 66, 70, 59, 64, 60, 58, 65, 62, 122, 87, 78, 68, 81, 65, 62, 65, 50, 57, 70, 51, 66, 66, 57, 88, 55, 85, 61, 58, 83, 69, 49, 68, 56, 77, 52, 58, 90, 57, 50, 49, 63, 48, 82, 39, 65, 75, 60, 79, 48, 56, 49, 74, 71, 64, 63, 56, 74, 56, 76, 69, 87, 88, 72, 70, 52, 68, 76, 70, 55, 68, 44, 63, 42, 78, 51, 67, 62, 82, 65, 56, 48, 69, 61, 60, 114, 74, 52, 62, 63, 78, 77, 62, 56, 76, 44, 62, 60, 74, 121, 59, 76, 72, 66, 67, 59, 80, 65, 100, 88, 66, 75, 60, 57, 56, 49, 62, 74, 60, 41, 75, 73, 68, 59, 70, 59, 84, 44, 60, 59, 86, 65, 59, 53, 62, 66, 58, 47, 77, 65, 40, 67, 42, 52, 82, 86, 60, 64, 92, 66, 62, 73, 61, 48, 56, 58, 54, 62, 72, 82, 53, 75, 63, 53, 77, 51, 50, 69, 50, 60, 111, 68, 66, 54, 56, 69, 65, 75, 71, 86, 59, 52, 60, 73, 68, 57, 50, 46, 60, 52, 69, 87, 64, 66, 101, 93, 89, 75, 66, 60, 47, 71, 68, 76, 88, 74, 64, 69, 84, 55, 64, 61, 63, 64, 72, 56, 67, 77, 60, 51, 59, 94, 76, 45, 52, 62, 50, 56, 47, 100, 69, 80, 63, 57, 65, 52, 80, 60, 66, 61, 64, 89, 59, 63, 73, 52, 59, 51, 70, 60, 54, 59, 52, 59, 73, 111, 64, 59, 69, 68, 58, 58, 69, 64, 53, 53, 55, 67, 87, 74, 64, 71, 67, 56, 68, 53, 63, 73, 81, 61, 60, 82, 80, 89, 86, 79, 86, 70, 63, 67, 54, 67, 56, 62, 55, 59, 58, 67, 85, 67, 77, 67, 63, 62, 72, 56, 63, 73, 58, 71, 69, 71, 57, 51, 51, 79, 77, 59, 69, 81, 89, 69, 62, 92, 67, 51, 69, 56, 61, 57, 80, 64, 134, 82, 74, 54, 82, 57, 64, 61, 63, 68, 61, 92, 63, 68, 67, 58, 59, 73, 66, 64, 59, 61, 61, 82, 83, 75, 50, 56, 67, 69, 72, 51, 61, 63, 55, 63, 50, 80, 51, 77, 57, 52, 72, 47, 72, 60, 67, 52, 63, 65, 64, 42, 77, 51, 96, 62, 62, 77, 59, 59, 67, 50, 82, 89, 58, 97, 70, 88, 62, 45, 117, 63, 72, 53, 77, 65, 54, 56, 69, 79, 67, 67, 57, 66, 62, 84, 75, 59, 77, 63, 69, 48, 60, 83, 61, 64, 66, 58, 59, 76, 66, 55, 69, 57, 100, 65, 64, 63, 76, 75, 59, 62, 72, 73, 62, 49, 45, 68, 81, 58, 68, 54, 78, 47, 70, 80, 56, 64, 69, 68, 61, 66, 78, 54, 66, 81, 48, 52, 75, 73, 41, 64, 66, 66, 62, 60, 48, 65, 63, 54, 75, 58, 66, 94, 58, 67, 68, 55, 59, 57, 78, 77, 71, 84, 77, 53, 52, 66, 70, 54, 40, 92, 81, 52, 65, 71, 53, 84, 75, 62, 54, 59, 65, 79, 75, 48, 80, 64, 60, 74, 39, 88, 60, 71, 55, 81, 58, 58, 71, 93, 88, 75, 65, 67, 63, 81, 59, 77, 64, 43, 48, 67, 61, 51, 53, 74, 58, 68, 61, 69, 51, 55, 76, 60, 55, 53, 60, 90, 48, 87, 63, 121, 58, 84, 55, 75, 65, 49, 69, 59, 65, 72, 81, 66, 70, 54, 60, 66, 66, 76, 67, 68, 64, 47, 63, 58, 64, 55, 90, 63, 73, 88, 67, 38, 47, 31, 134, 77, 55, 54, 69, 87, 52, 58, 72, 74, 62, 59, 73, 59, 65, 71, 92, 72, 90, 68, 81, 65, 69, 99, 69, 85, 82, 68, 60, 54, 70, 56, 71, 65, 59, 78, 70, 41, 66, 60, 63, 43, 57, 68, 60, 60, 65, 64, 65, 54, 62, 76, 69, 70, 56, 58, 49, 69, 91, 68, 52, 56, 66, 102, 72, 60, 73, 47, 84, 95, 54, 70, 54, 67, 100, 57, 59, 54, 66, 73, 44, 52, 65, 68, 84, 65, 66, 69, 70, 57, 82, 51, 62, 67, 70, 65, 60, 59, 63, 70, 62, 52, 58, 73, 68, 91, 47, 91, 59, 44, 81, 65, 61, 52, 51, 59, 66, 66, 50, 55, 71, 67, 61, 60, 45, 72, 34, 87, 46, 72, 55, 62, 47, 95, 56, 71, 62, 65, 58, 55, 54, 76, 56, 56, 43, 83, 58, 69, 78, 79, 84, 93, 54, 73, 50, 81, 76, 85, 56, 94, 71, 68, 54, 73, 124, 54, 86, 92, 58, 121, 60, 74, 69, 71, 84, 53, 52, 44, 62, 67, 46, 81, 57, 59, 93, 61, 55, 107, 59, 56, 84, 57, 75, 77, 69, 85, 110, 38, 52, 57, 76, 73, 61, 62, 59, 58, 51, 60, 78, 48, 59, 65, 55, 59, 62, 59, 70, 74, 59, 53, 71, 73, 76, 41, 65, 60, 51, 103, 71, 64, 72, 57, 73, 63, 48, 78, 85, 71, 58, 65, 82, 58, 60, 65, 48, 71, 59, 63, 82, 105, 61, 70, 63, 56, 65, 77, 56, 101, 62, 54, 65, 62, 73, 71, 58, 71, 52, 48, 47, 60, 76, 75, 86, 56, 129, 60, 63, 71, 58, 44, 89, 81, 62, 59, 58, 65, 54, 62, 48, 67, 75, 45, 64, 67, 91, 67, 56, 68, 36, 83, 52, 51, 77, 83, 76, 43, 62, 82, 64, 68, 80, 30, 57, 63, 69, 92, 70, 51, 80, 107, 77, 63, 52, 67, 65, 48, 56, 68, 52, 53, 65, 60, 68, 98, 55, 54, 91, 80, 87, 56, 57, 68, 56, 71, 60, 94, 53, 50, 69, 64, 49, 83, 56, 60, 67, 76, 68, 142, 77, 63, 71, 54, 59, 47, 117, 64, 66, 53, 32, 43, 65, 66, 53, 62, 86, 72, 57, 56, 45, 67, 40, 50, 68, 65, 68, 59, 86, 87, 53, 58, 67, 58, 70, 47, 65, 57, 66, 69, 73, 59, 67, 52, 51, 47, 56, 42, 70, 64, 63, 83, 55, 42, 52, 79, 75, 54, 52, 52, 83, 67, 64, 63, 72, 58, 65, 74, 56, 78, 58, 50, 46, 58, 61, 60, 58, 84, 58, 58, 59, 76, 40, 55, 61, 71, 56, 86, 43, 55, 116, 49, 58, 75, 75, 53, 54, 74, 63, 60, 65, 60, 60, 55, 61, 55, 64, 52, 63, 69, 60, 68, 53, 64, 63, 73, 86, 65, 52, 63, 64, 58, 91, 63, 65, 79, 75, 60, 52, 33, 74, 64, 62, 74, 75, 51, 84, 70, 63, 55, 79, 83, 89, 78, 53, 73, 57, 69, 53, 62, 63, 76, 50, 69, 68, 70, 51, 60, 72, 49, 95, 72, 72, 64, 62, 53, 57, 85, 61, 49, 57, 58, 62, 77, 50, 62, 127, 68, 85, 75, 77, 57, 107, 86, 41, 58, 92, 55, 66, 59, 61, 67, 77, 57, 63, 56, 60, 46, 63, 55, 55, 79, 67, 70, 122, 99, 68, 74, 71, 57, 81, 62, 67, 51, 64, 71, 39, 68, 61, 62, 72, 48, 58, 49, 62, 84, 59, 70, 74, 68, 72, 57, 62, 57, 72, 78, 48, 71, 112, 69, 75, 120, 62, 69, 56, 55, 62, 76, 44, 63, 61, 63, 78, 60, 59, 47, 67, 52, 64, 68, 58, 79, 83, 97, 69, 61, 65, 59, 66, 63, 54, 55, 64, 95, 58, 60, 62, 74, 85, 61, 70, 54, 52, 109, 66, 57, 61, 60, 67, 82, 78, 79, 99, 58, 81, 50, 63, 83, 53, 58, 57, 48, 77, 49, 98, 70, 71, 63, 57, 76, 76, 64, 74, 87, 69, 59, 80, 64, 73, 58, 55, 61, 86, 77, 68, 87, 61, 54, 84, 57, 50, 57, 69, 56, 52, 54, 90, 69, 84, 75, 83, 59, 55, 109, 53, 74, 70, 43, 51, 71, 83, 84, 57, 89, 61, 74, 61, 63, 54, 68, 70, 66, 55, 53, 58, 57, 89, 101, 58, 98, 96, 50, 84, 65, 69, 45, 67, 52, 49, 49, 87, 54, 90, 74, 74, 66, 65, 55, 50, 78, 67, 66, 64, 55, 71, 88, 69, 71, 52, 66, 67, 87, 58, 51, 51, 51, 72, 52, 56, 72, 111, 84, 43, 61, 55, 71, 57, 62, 65, 65, 63, 109, 78, 84, 65, 66, 60, 57, 60, 91, 50, 74, 61, 72, 49, 66, 61, 79, 43, 61, 53, 51, 57, 56, 68, 58, 55, 67, 50, 54, 64, 60, 67, 68, 65, 66, 67, 51, 50, 54, 55, 67, 65, 78, 55, 63, 66, 97, 57, 62, 83, 79, 71, 54, 60, 59, 71, 64, 69, 101, 54, 66, 72, 69, 73, 91, 62, 68, 82, 81, 88, 62, 75, 52, 61, 56, 78, 64, 58, 52, 46, 59, 71, 71, 66, 61, 60, 62, 46, 46, 75, 69, 62, 56, 49, 61, 92, 65, 76, 73, 60, 61, 50, 70, 66, 62, 58, 40, 55, 64, 72, 43, 102, 56, 90, 77, 73, 50, 90, 67, 50, 57, 75, 70, 55, 42, 65, 70, 72, 56, 83, 71, 35, 67, 75, 78, 71, 66, 83, 57, 56, 66, 73, 89, 55, 62, 68, 55, 84, 61, 66, 62, 38, 76, 48, 67, 65, 46, 46, 64, 46, 61, 59, 51, 79, 54, 62, 80, 53, 63, 74, 58, 46, 75, 73, 100, 75, 72, 70, 50, 66, 82, 74, 46, 67, 82, 42, 70, 50, 110, 89, 61, 72, 64, 72, 59, 54, 72, 62, 57, 44, 71, 60, 57, 55, 55, 60, 73, 57, 36, 56, 58, 63, 64, 58, 120, 74, 66, 51, 57, 52, 64, 62, 70, 69, 73, 65, 81, 89, 153, 70, 58, 63, 51, 68, 74, 60, 122, 49, 67, 64, 61, 70, 74, 70, 78, 126, 50, 67, 73, 68, 45, 70, 82, 64, 53, 66, 51, 68, 82, 86, 81, 66, 52, 84, 62, 76, 51, 69, 94, 76, 45, 66, 49, 56, 101, 68, 73, 73, 59, 76, 104, 77, 63, 52, 52, 69, 70, 70, 56, 71, 72, 47, 86, 114, 59, 60, 60, 61, 54, 61, 83, 91, 80, 62, 48, 137, 65, 60, 54, 50, 96, 64, 61, 49, 82, 70, 60, 90, 49, 59, 78, 71, 57, 71, 57, 52, 48, 42, 73, 67, 65, 150, 70, 85, 78, 66, 52, 72, 49, 86, 85, 76, 64, 136, 72, 59, 83, 67, 55, 64, 54, 62, 74, 65, 62, 74, 62, 43, 85, 86, 60, 80, 64, 42, 82, 77, 61, 78, 60, 55, 59, 60, 51, 92, 52, 89, 79, 94, 62, 76, 55, 48, 56, 84, 44, 76, 64, 68, 85, 67, 56, 75, 71, 67, 62, 46, 87, 72, 75, 90, 54, 65, 56, 78, 72, 70, 65, 97, 56, 51, 71, 82, 71, 68, 65, 49, 81, 70, 61, 36, 60, 74, 50, 61, 57, 63, 61, 126, 75, 64, 58, 60, 68, 66, 58, 51, 60, 50, 54, 67, 103, 69, 79, 75, 79, 80, 79, 75, 44, 80, 73, 69, 61, 54, 52, 64, 55, 56, 75, 54, 50, 73, 78, 84, 75, 80, 62, 97, 54, 57, 96, 64, 58, 62, 39, 82, 76, 66, 53, 88, 74, 53, 66, 67, 84, 82, 48, 80, 51, 78, 81, 73, 80, 53, 64, 41, 61, 57, 54, 56, 41, 60, 53, 48, 77, 67, 59, 58, 60, 83, 115, 38, 53, 71, 113, 49, 75, 73, 56, 62, 45, 67, 53, 60, 50, 43, 64, 96, 51, 58, 49, 63, 80, 53, 55, 125, 72, 85, 40, 78, 80, 84, 56, 58, 82, 38, 57, 70, 75, 64, 77, 58, 114, 83, 66, 66, 72, 60, 60, 73, 50, 59, 68, 53, 75, 50, 71, 71, 81, 70, 70, 78, 58, 58, 57, 94, 37, 82, 82, 52, 79, 65, 58, 56, 78, 66, 65, 76, 66, 62, 80, 64, 50, 62, 55, 53, 55, 121, 100, 74, 71, 77, 59, 65, 75, 44, 70, 53, 69, 79, 65, 62, 54, 60, 94, 67, 64, 99, 59, 56, 96, 81, 74, 64, 60, 65, 63, 59, 66, 53, 75, 55, 86, 100, 59, 56, 58, 74, 78, 57, 53, 70, 88, 70, 78, 43, 79, 64, 64, 64, 30, 60, 77, 60, 71, 45, 79, 62, 67, 59, 61, 54, 77, 59, 69, 44, 32, 69, 50, 66, 68, 73, 61, 68, 84, 68, 43, 46, 58, 74, 69, 63, 57, 76, 80, 85, 63, 78, 42, 55, 63, 55, 71, 67, 64, 73, 59, 74, 71, 69, 84, 74, 64, 86, 79, 75, 83, 62, 55, 82, 65, 73, 48, 73, 56, 53, 55, 49, 72, 56, 62, 59, 77, 61, 73, 58, 47, 57, 53, 68, 46, 83, 80, 51, 60, 51, 70, 43, 55, 50, 75, 63, 101, 71, 63, 75, 62, 54, 73, 54, 65, 60, 104, 46, 49, 60, 101, 49, 74, 52, 43, 106, 66, 69, 62, 76, 73, 65, 74, 59, 61, 55, 89, 53, 71, 60, 69, 86, 57, 44, 64, 67, 49, 98, 54, 48, 73, 53, 76, 55, 68, 79, 57, 51, 46, 51, 56, 74, 61, 79, 38, 52, 57, 81, 58, 57, 52, 65, 77, 196, 54, 58, 89, 60, 71, 82, 70, 63, 71, 48, 69, 58, 56, 45, 44, 75, 59, 60, 61, 82, 47, 85, 72, 64, 59, 59, 65, 75, 64, 52, 49, 50, 82, 65, 66, 61, 125, 62, 85, 72, 63, 77, 51, 81, 68, 72, 55, 78, 80, 61, 71, 63, 60, 55, 76, 84, 85, 64, 79, 82, 56, 69, 66, 62, 77, 70, 70, 39, 42, 54, 73, 50, 58, 71, 66, 66, 67, 59, 68, 57, 82, 61, 56, 70, 70, 67, 75, 62, 72, 57, 52, 69, 65, 63, 76, 60, 87, 60, 112, 63, 57, 63, 59, 92, 70, 48, 74, 75, 88, 99, 84, 66, 49, 67, 54, 105, 54, 68, 48, 43, 61, 45, 58, 40, 71, 62, 61, 112, 67, 81, 59, 48, 71, 53, 67, 80, 63, 67, 86, 52, 62, 64, 76, 59, 43, 47, 85, 69, 82, 65, 59, 63, 56, 80, 71, 49, 60, 69, 87, 58, 70, 66, 61, 47, 71, 44, 63, 48, 78, 84, 91, 70, 81, 55, 60, 68, 59, 67, 45, 61, 72, 51, 73, 59, 78, 48, 51, 95, 77, 88, 73, 43, 66, 32, 55, 54, 47, 81, 42, 80, 72, 62, 53, 141, 114, 58, 85, 40, 77, 77, 45, 52, 65, 59, 60, 88, 52, 46, 64, 70, 105, 81, 70, 56, 65, 70, 50, 55, 73, 61, 68, 94, 73, 59, 56, 72, 77, 76, 63, 58, 71, 79, 90, 65, 54, 66, 57, 58, 48, 57, 65, 88, 84, 75, 64, 59, 68, 51, 51, 65, 54, 65, 70, 65, 87, 93, 80, 52, 48, 50, 89, 78, 76, 73, 65, 51, 55, 80, 88, 79, 47, 31, 67, 52, 64, 66, 74, 61, 58, 82, 69, 64, 75, 76, 52, 75, 71, 50, 63, 62, 93, 57, 63, 56, 45, 75, 63, 68, 73, 73, 64, 57, 128, 68, 74, 54, 60, 83, 67, 70, 79, 69, 74, 45, 104, 55, 64, 73, 55, 49, 56, 98, 52, 72, 91, 56, 57, 52, 80, 49, 57, 66, 72, 54, 59, 63, 62, 51, 74, 53, 58, 54, 72, 100, 73, 81, 82, 90, 57, 67, 75, 75, 61, 55, 72, 55, 63, 66, 60, 82, 76, 68, 64, 64, 82, 78, 63, 58, 57, 62, 51, 59, 56, 53, 80, 80, 65, 58, 65, 94, 66, 59, 121, 87, 88, 56, 50, 55, 74, 64, 68, 82, 55, 64, 74, 88, 53, 49, 53, 92, 70, 67, 80, 68, 51, 64, 62, 65, 108, 72, 53, 61, 66, 74, 48, 57, 56, 55, 57, 57, 57, 73, 68, 56, 89, 72, 81, 57, 89, 60, 57, 54, 73, 70, 61, 72, 52, 35, 84, 50, 54, 72, 64, 58, 69, 70, 71, 69, 45, 59, 58, 81, 97, 77, 72, 52, 58, 49, 49, 90, 73, 64, 59, 73, 67, 73, 54, 44, 64, 69, 70, 67, 54, 66, 48, 76, 62, 57, 87, 74, 78, 48, 57, 65, 68, 45, 92, 51, 72, 75, 66, 56, 55, 75, 54, 71, 57, 72, 69, 55, 51, 88, 70, 68, 62, 59, 60, 83, 75, 47, 53, 62, 55, 52, 68, 74, 53, 64, 72, 72, 61, 82, 57, 77, 66, 55, 63, 69, 67, 54, 85, 68, 86, 60, 78, 69, 59, 57, 65, 69, 60, 74, 63, 65, 62, 55, 66, 75, 55, 67, 56, 59, 58, 68, 161, 64, 43, 61, 77, 65, 69, 57, 58, 51, 81, 62, 72, 75, 69, 57, 50, 63, 55, 70, 56, 68, 52, 68, 53, 62, 65, 93, 52, 67, 90, 68, 75, 84, 66, 60, 89, 48, 59, 57, 66, 63, 63, 65, 73, 69, 39, 49, 75, 59, 63, 52, 69, 62, 68, 77, 55, 56, 76, 65, 69, 71, 70, 78, 61, 59, 54, 65, 75, 66, 70, 60, 58, 77, 51, 100, 57, 64, 62, 63, 61, 64, 53, 57, 76, 76, 87, 57, 76, 60, 76, 62, 84, 63, 51, 56, 58, 52, 68, 64, 83, 58, 56, 52, 67, 55, 68, 71, 64, 58, 77, 69, 70, 77, 56, 67, 62, 69, 62, 60, 65, 98, 71, 65, 59, 69, 71, 86, 64, 60, 82, 69, 69, 64, 67, 61, 82, 69, 64, 66, 69, 64, 69, 64, 69, 55, 75, 62, 65, 56, 47, 65, 72, 72, 78, 64, 60, 64, 58, 60, 56, 61, 58, 74, 76, 58, 75, 79, 52, 83, 82, 72, 57, 66, 69, 77, 69, 80, 54, 63, 58, 61, 61, 61, 62, 68, 59, 59, 79, 56, 68, 66, 69, 72, 50, 63, 109, 68, 70, 57, 66, 73, 56, 69, 63, 55, 67, 73, 50, 65, 64, 78, 57, 57, 59, 56, 68, 63, 69, 55, 65, 55, 67, 134, 68, 56, 91, 59, 56, 63, 65, 48, 49, 97, 76, 68, 85, 67, 80, 53, 35, 60, 82, 63, 74, 64, 71, 67, 54, 70, 66, 64, 65, 82, 63, 69, 53, 59, 68, 57, 69, 71, 76, 64, 71, 65, 52, 67, 63, 60, 75, 55, 60, 61, 81, 63, 69, 66, 129, 67, 73, 57, 95, 76, 55, 100, 66, 68, 66, 64, 61, 73, 74, 76, 57, 61, 74, 79, 58, 74, 63, 52, 70, 72, 77, 66, 60, 71, 75, 71, 62, 77, 68, 79, 69, 59, 54, 67, 54, 77, 61, 52, 66, 72, 69, 58, 69, 55, 56, 57, 72, 60, 67, 46, 68, 60, 65, 68, 60, 59, 70, 78, 97, 57, 66, 61, 53, 69, 67, 68, 73, 58, 61, 59, 44, 77, 65, 65, 59, 93, 64, 55, 56, 59, 56, 59, 63, 77, 65, 63, 63, 80, 70, 62, 62, 63, 65, 73, 67, 58, 88, 65, 84, 89, 72, 69, 65, 66, 76, 60, 83, 63, 71, 63, 50, 70, 72, 59, 80, 74, 61, 59, 36, 63, 67, 106, 63, 58, 60, 54, 69, 60, 61, 79, 52, 57, 64, 66, 101, 64, 79, 62, 59, 71, 46, 68, 66, 94, 58, 66, 89, 70, 58, 60, 113, 72, 59, 61, 62, 50, 69, 68, 62, 66, 72, 79, 58, 60, 62, 58, 56, 69, 55, 59, 44, 77, 46, 63, 43, 78, 109, 69, 61, 60, 58, 55, 51, 55, 90, 82, 57, 73, 64, 53, 101, 60, 49, 99, 68, 64, 65, 68, 75, 59, 65, 55, 56, 72, 56, 63, 69, 63, 68, 55, 69, 51, 64, 84, 55, 85, 63, 73, 85, 63, 62, 73, 63, 54, 82, 64, 65, 66, 52, 58, 53, 74, 73, 54, 48, 68, 71, 56, 63, 68, 59, 55, 89, 71, 61, 59, 62, 55, 64, 68, 27, 69, 78, 58, 62, 67, 70, 58, 60, 65, 56, 72, 61, 92, 53, 53, 58, 46, 46, 80, 63, 53, 46, 55, 56, 63, 68, 57, 88, 74, 56, 66, 57, 62, 62, 86, 61, 85, 54, 47, 48, 65, 63, 63, 66, 53, 53, 54, 58, 65, 64, 61, 88, 66, 65, 69, 84, 81, 58, 60, 77, 55, 87, 81, 74, 68, 63, 51, 66, 65, 66, 56, 55, 70, 58, 56, 51, 96, 77, 50, 79, 100, 99, 59, 90, 73, 73, 54, 63, 63, 67, 67, 34, 66, 60, 64, 71, 59, 75, 57, 63, 70, 59, 62, 64, 57, 63, 66, 76, 65, 57, 59, 53, 82, 66, 69, 58, 52, 58, 64, 72, 56, 108, 77, 70, 67, 66, 52, 51, 65, 84, 61, 98, 68, 66, 49, 90, 57, 60, 69, 61, 63, 57, 66, 67, 61, 62, 60, 77, 56, 56, 81, 67, 76, 71, 55, 62, 42, 61, 67, 156, 60, 55, 83, 92, 74, 57, 76, 52, 52, 68, 50, 63, 88, 57, 75, 69, 83, 60, 55, 67, 62, 63, 69, 56, 54, 63, 59, 59, 80, 76, 54, 71, 54, 69, 59, 63, 77, 80, 64, 64, 66, 61, 53, 64, 72, 77, 70, 57, 69, 59, 59, 56, 59, 50, 84, 77, 64, 79, 53, 60, 65, 71, 58, 67, 71, 65, 46, 67, 59, 60, 59, 60, 68, 61, 75, 69, 57, 73, 62, 70, 58, 53, 59, 64, 70, 61, 45, 72, 76, 55, 53, 44, 62, 61, 102, 55, 84, 63, 68, 50, 72, 59, 62, 76, 54, 60, 59, 82, 123, 72, 59, 63, 60, 50, 55, 61, 50, 54, 65, 64, 54, 69, 53, 65, 53, 61, 54, 65, 72, 52, 60, 59, 59, 65, 84, 70, 61, 59, 58, 64, 64, 57, 81, 63, 68, 49, 65, 64, 68, 57, 63, 61, 60, 48, 76, 72, 62, 48, 72, 69, 56, 72, 66, 67, 64, 64, 51, 68, 60, 69, 71, 64, 60, 56, 52, 57, 61, 66, 60, 51, 47, 78, 63, 58, 55, 60, 63, 43, 70, 72, 55, 107, 58, 72, 67, 88, 104, 59, 57, 74, 59, 64, 65, 55, 71, 54, 69, 48, 61, 71, 95, 68, 76, 63, 88, 62, 69, 68, 76, 52, 52, 57, 66, 60, 62, 53, 65, 59, 63, 59, 70, 75, 62, 59, 60, 62, 67, 49, 63, 82, 74, 72, 68, 51, 72, 63, 63, 63, 64, 65, 56, 61, 59, 59, 65, 74, 55, 58, 72, 59, 61, 60, 56, 55, 81, 62, 80, 57, 58, 62, 69, 81, 97, 60, 62, 46, 65, 60, 77, 58, 69, 56, 58, 65, 97, 51, 60, 73, 61, 65, 67, 74, 61, 59, 54, 86, 70, 69, 82, 72, 48, 76, 45, 63, 58, 73, 71, 54, 60, 62, 54, 44, 71, 56, 65, 60, 78, 60, 51, 61, 60, 52, 69, 95, 82, 63, 67, 56, 42, 79, 61, 57, 77, 58, 58, 64, 64, 60, 67, 50, 60, 77, 53, 84, 72, 78, 71, 73, 96, 61, 58, 70, 77, 63, 76, 66, 60, 58, 57, 68, 79, 45, 77, 51, 76, 72, 82, 78, 67, 79, 78, 72, 71, 49, 64, 61, 67, 60, 73, 59, 72, 90, 61, 56, 90, 81, 67, 57, 60, 81, 70, 74, 62, 65, 67, 61, 82, 77, 37, 45, 56, 70, 72, 70, 61, 71, 69, 78, 61, 83, 64, 47, 59, 74, 63, 80, 53, 57, 58, 62, 73, 70, 67, 84, 48, 58, 48, 62, 59, 57, 77, 69, 69, 54, 62, 53, 68, 57, 107, 69, 68, 59, 59, 59, 45, 68, 58, 62, 53, 68, 68, 69, 46, 114, 60, 44, 71, 63, 64, 75, 76, 69, 68, 56, 79, 74, 75, 52, 62, 87, 63, 58, 73, 54, 59, 60, 65, 68, 57, 65, 63, 66, 63, 49, 65, 62, 65, 74, 78, 52, 70, 85, 88, 77, 82, 81, 58, 74, 62, 74, 66, 67, 58, 75, 70, 68, 57, 52, 74, 62, 57, 55, 56, 73, 82, 75, 67, 65, 65, 68, 58, 49, 67, 57, 90, 62, 70, 76, 58, 75, 57, 70, 68, 62, 74, 54, 65, 56, 69, 58, 60, 58, 75, 56, 53, 79, 52, 59, 81, 59, 45, 73, 79, 89, 87, 54, 74, 80, 51, 78, 65, 54, 76, 81, 64, 65, 48, 59, 60, 64, 68, 84, 65, 69, 80, 55, 46, 76, 74, 61, 88, 72, 107, 58, 67, 64, 92, 48, 82, 61, 67, 77, 74, 69, 77, 57, 48, 65, 60, 75, 55, 84, 51, 87, 64, 48, 55, 70, 57, 52, 61, 62, 52, 78, 55, 57, 60, 62, 51, 51, 44, 61, 90, 62, 71, 65, 61, 68, 58, 62, 82, 88, 65, 78, 53, 67, 64, 80, 60, 44, 64, 101, 55, 67, 53, 68, 49, 84, 54, 72, 95, 51, 88, 68, 81, 45, 68, 43, 73, 62, 65, 45, 67, 106, 46, 63, 53, 69, 71, 60, 75, 68, 48, 55, 52, 54, 64, 55, 63, 65, 60, 66, 51, 66, 52, 52, 54, 63, 70, 78, 58, 82, 53, 60, 55, 65, 62, 66, 70, 81, 36, 65, 61, 72, 50, 59, 67, 90, 55, 66, 66, 60, 64, 77, 46, 62, 57, 72, 76, 54, 62, 61, 64, 74, 68, 81, 79, 66, 65, 97, 58, 73, 59, 73, 53, 72, 101, 64, 77, 67, 72, 65, 72, 72, 60, 77, 52, 68, 54, 93, 64, 81, 66, 50, 60, 63, 55, 49, 80, 64, 91, 67, 73, 66, 64, 63, 70, 55, 84, 63, 55, 88, 56, 65, 63, 62, 65, 70, 72, 57, 55, 69, 65, 61, 70, 50, 50, 67, 63, 76, 54, 59, 65, 34, 54, 73, 56, 81, 76, 75, 78, 62, 63, 60, 61, 65, 53, 106, 57, 71, 71, 59, 66, 70, 78, 68, 59, 71, 71, 61, 63, 57, 69, 49, 54, 73, 57, 64, 75, 66, 63, 58, 55, 67, 54, 69, 71, 70, 65, 51, 66, 73, 74, 64, 35, 97, 64, 80, 77, 85, 128, 57, 54, 71, 60, 62, 49, 61, 66, 49, 74, 67, 52, 64, 67, 65, 74, 75, 87, 59, 69, 58, 65, 51, 67, 64, 80, 63, 71, 48, 52, 64, 82, 80, 59, 52, 70, 50, 65, 63, 64, 60, 62, 68, 53, 68, 53, 65, 66, 55, 44, 87, 58, 54, 61, 51, 78, 67, 85, 65, 53, 60, 106, 58, 58, 66, 82, 71, 62, 59, 77, 61, 68, 53, 48, 68, 67, 62, 81, 62, 96, 70, 48, 71, 70, 67, 74, 62, 65, 66, 58, 76, 51, 63, 55, 78, 56, 117, 68, 66, 58, 60, 53, 76, 66, 68, 56, 60, 60, 55, 45, 55, 60, 78, 64, 61, 65, 83, 58, 67, 82, 84, 62, 53, 55, 80, 50, 63, 78, 43, 65, 67, 62, 69, 60, 64, 49, 67, 65, 66, 76, 55, 48, 70, 60, 60, 70, 51, 83, 48, 84, 83, 64, 72, 79, 58, 78, 43, 66, 59, 84, 75, 50, 73, 64, 83, 70, 70, 59, 60, 82, 67, 60, 67, 98, 65, 54, 71, 68, 79, 54, 62, 103, 66, 70, 57, 72, 49, 65, 69, 64, 64, 43, 34, 69, 63, 83, 48, 73, 75, 46, 68, 69, 77, 85, 77, 63, 65, 73, 54, 59, 63, 58, 50, 49, 49, 58, 46, 59, 64, 55, 81, 36, 67, 67, 44, 65, 57, 40, 47, 51, 57, 84, 57, 63, 56, 69, 50, 106, 72, 89, 71, 54, 60, 105, 80, 112, 46, 50, 53, 69, 46, 54, 49, 62, 81, 51, 98, 63, 66, 86, 52, 77, 74, 54, 88, 55, 75, 62, 50, 89, 61, 67, 74, 60, 118, 70, 70, 54, 66, 61, 50, 72, 62, 67, 80, 56, 83, 60, 67, 59, 53, 65, 56, 55, 66, 70, 64, 77, 101, 58, 61, 61, 59, 65, 52, 54, 79, 60, 66, 79, 57, 60, 77, 91, 92, 71, 74, 49, 60, 67, 61, 76, 64, 59, 57, 61, 57, 92, 54, 60, 53, 58, 76, 83, 74, 62, 73, 66, 53, 80, 84, 67, 57, 78, 91, 113, 68, 70, 65, 89, 46, 69, 69, 67, 49, 82, 78, 50, 71, 84, 88, 48, 62, 81, 50, 71, 77, 68, 91, 69, 152, 52, 60, 101, 50, 73, 46, 63, 59, 53, 64, 77, 59, 50, 50, 66, 85, 55, 63, 55, 67, 56, 66, 55, 67, 70, 62, 70, 91, 49, 65, 48, 67, 65, 59, 65, 56, 67, 62, 55, 63, 75, 66, 64, 64, 100, 82, 71, 44, 62, 73, 59, 59, 79, 65, 49, 93, 60, 58, 71, 65, 42, 89, 62, 56, 86, 53, 60, 61, 105, 76, 73, 55, 35, 60, 58, 82, 59, 52, 60, 40, 59, 66, 49, 56, 53, 65, 57, 86, 92, 83, 76, 74, 58, 94, 64, 85, 64, 100, 80, 50, 38, 71, 82, 55, 50, 85, 76, 68, 62, 71, 43, 71, 61, 40, 37, 70, 56, 74, 96, 78, 76, 52, 90, 97, 56, 70, 59, 55, 62, 92, 62, 63, 79, 39, 50, 51, 59, 71, 50, 47, 45, 56, 75, 49, 66, 62, 74, 51, 53, 65, 73, 56, 73, 54, 82, 83, 71, 112, 69, 75, 90, 79, 61, 64, 63, 45, 78, 51, 75, 46, 72, 53, 54, 57, 64, 61, 52, 75, 45, 99, 66, 90, 56, 62, 95, 86, 54, 75, 91, 50, 45, 54, 80, 69, 53, 89, 52, 47, 48, 74, 46, 70, 58, 73, 68, 60, 61, 70, 53, 65, 57, 72, 96, 62, 68, 57, 53, 57, 61, 58, 62, 39, 57, 79, 65, 70, 65, 66, 75, 81, 45, 70, 58, 94, 73, 64, 63, 45, 90, 57, 71, 68, 75, 65, 71, 49, 94, 104, 48, 58, 62, 68, 64, 79, 53, 68, 79, 53, 60, 49, 57, 76, 77, 66, 59, 67, 65, 56, 92, 73, 72, 54, 47, 71, 116, 56, 61, 53, 62, 73, 49, 72, 46, 68, 54, 72, 54, 64, 62, 67, 65, 74, 81, 51, 72, 62, 77, 55, 75, 57, 54, 85, 52, 60, 78, 46, 68, 46, 58, 61, 51, 51, 57, 64, 60, 43, 23, 95, 77, 95, 76, 75, 77, 61, 64, 57, 59, 85, 46, 87, 78, 87, 67, 111, 52, 70, 78, 71, 63, 66, 88, 76, 66, 60, 62, 73, 63, 64, 52, 53, 101, 51, 91, 72, 55, 71, 50, 43, 100, 56, 91, 70, 68, 45, 71, 57, 66, 61, 82, 84, 65, 64, 90, 46, 52, 69, 42, 81, 40, 71, 61, 53, 34, 96, 89, 44, 56, 67, 85, 47, 90, 51, 112, 60, 77, 65, 62, 48, 94, 60, 88, 67, 75, 61, 60, 61, 52, 61, 76, 69, 71, 74, 56, 46, 61, 70, 46, 76, 53, 57, 59, 63, 80, 75, 48, 66, 73, 76, 85, 41, 62, 51, 83, 108, 79, 80, 47, 130, 56, 99, 42, 79, 61, 102, 65, 109, 43, 81, 65, 87, 76, 51, 55, 76, 81, 66, 69, 68, 75, 73, 59, 114, 74, 64, 61, 91, 97, 54, 55, 63, 78, 54, 79, 95, 58, 55, 57, 73, 62, 76, 81, 57, 77, 59, 66, 50, 65, 66, 51, 66, 61, 67, 61, 60, 44, 71, 43, 57, 66, 49, 51, 76, 59, 73, 43, 47, 61, 70, 40, 87, 64, 54, 49, 60, 65, 63, 72, 68, 74, 59, 77, 91, 47, 62, 57, 70, 71, 57, 98, 69, 44, 42, 66, 45, 51, 56, 77, 78, 74, 68, 48, 52, 85, 64, 69, 70, 51, 57, 80, 58, 36, 79, 100, 92, 56, 53, 52, 45, 57, 96, 48, 63, 69, 61, 83, 48, 56, 49, 48, 56, 68, 41, 58, 52, 108, 58, 64, 67, 56, 57, 39, 66, 68, 59, 66, 137, 66, 102, 58, 63, 54, 46, 70, 78, 67, 58, 58, 56, 69, 80, 71, 58, 88, 53, 36, 62, 78, 66, 64, 63, 85, 83, 63, 65, 80, 39, 71, 61, 45, 70, 50, 50, 58, 62, 79, 66, 67, 53, 64, 83, 55, 66, 54, 84, 93, 87, 81, 65, 51, 86, 57, 67, 59, 54, 51, 73, 66, 47, 57, 85, 93, 68, 102, 44, 62, 65, 63, 56, 73, 61, 53, 76, 55, 56, 75, 81, 50, 99, 70, 37, 46, 75, 66, 47, 64, 87, 36, 58, 73, 102, 49, 55, 74, 54, 75, 47, 45, 59, 76, 86, 60, 53, 80, 56, 88, 49, 54, 56, 61, 72, 79, 68, 58, 57, 46, 100, 68, 38, 67, 68, 48, 62, 69, 54, 63, 78, 71, 63, 82, 75, 61, 122, 48, 52, 79, 48, 64, 56, 58, 63, 60, 49, 64, 71, 52, 69, 84, 65, 69, 82, 105, 49, 54, 103, 54, 81, 79, 45, 60, 96, 70, 74, 68, 50, 97, 58, 84, 65, 74, 57, 56, 87, 63, 89, 33, 92, 64, 57, 76, 58, 51, 72, 48, 125, 45, 60, 77, 71, 92, 65, 70, 73, 72, 74, 73, 63, 53, 59, 50, 54, 90, 77, 57, 59, 57, 75, 64, 79, 69, 66, 56, 47, 66, 89, 91, 63, 111, 54, 62, 95, 60, 62, 85, 33, 71, 77, 57, 55, 52, 69, 73, 129, 75, 57, 79, 66, 56, 72, 72, 56, 75, 180, 66, 84, 100, 44, 63, 65, 71, 61, 42, 62, 82, 56, 69, 70, 62, 40, 86, 43, 48, 64, 129, 65, 41, 50, 116, 54, 45, 65, 65, 66, 75, 45, 62, 62, 77, 53, 37, 39, 65, 88, 76, 53, 62, 53, 57, 59, 56, 53, 82, 68, 52, 64, 85, 29, 44, 55, 90, 70, 50, 79, 71, 90, 72, 55, 77, 64, 58, 67, 83, 53, 66, 77, 62, 80, 75, 80, 53, 43, 47, 66, 57, 59, 71, 60, 71, 43, 44, 48, 57, 57, 59, 92, 88, 70, 46, 61, 96, 50, 74, 44, 68, 61, 87, 73, 65, 73, 41, 58, 68, 83, 73, 77, 75, 116, 71, 26, 74, 58, 59, 78, 56, 54, 79, 100, 52, 78, 66, 59, 62, 59, 97, 58, 61, 51, 68, 76, 57, 66, 82, 85, 81, 86, 97, 75, 64, 130, 94, 106, 60, 61, 57, 74, 76, 81, 56, 123, 59, 85, 75, 53, 99, 68, 75, 59, 47, 51, 54, 54, 57, 63, 63, 76, 94, 64, 77, 56, 57, 79, 70, 52, 51, 68, 74, 76, 70, 70, 55, 69, 41, 69, 46, 73, 47, 46, 44, 51, 78, 87, 45, 47, 73, 61, 82, 49, 65, 79, 79, 65, 49, 63, 34, 81, 53, 66, 56, 66, 62, 37, 59, 72, 74, 63, 74, 109, 102, 87, 79, 71, 49, 54, 59, 74, 56, 40, 74, 84, 53, 65, 69, 63, 58, 93, 55, 97, 53, 54, 51, 77, 72, 58, 90, 49, 66, 84, 52, 77, 76, 62, 55, 99, 74, 95, 64, 52, 69, 66, 86, 59, 90, 57, 63, 82, 62, 93, 79, 58, 97, 65, 68, 75, 58, 62, 89, 67, 86, 43, 54, 55, 64, 43, 88, 117, 61, 73, 71, 63, 52, 48, 67, 53, 38, 80, 98, 63, 46, 77, 53, 53, 57, 76, 61, 51, 84, 61, 61, 54, 60, 65, 74, 75, 75, 59, 86, 65, 61, 62, 70, 69, 67, 70, 59, 64, 68, 58, 145, 61, 67, 72, 47, 59, 76, 56, 62, 58, 63, 71, 54, 62, 76, 49, 53, 57, 68, 65, 61, 49, 51, 56, 50, 68, 54, 102, 93, 90, 68, 75, 97, 92, 56, 56, 71, 53, 61, 53, 66, 73, 45, 60, 95, 66, 81, 68, 66, 57, 83, 96, 51, 111, 72, 50, 70, 43, 86, 87, 80, 53, 68, 83, 53, 64, 71, 65, 58, 55, 65, 59, 57, 103, 42, 37, 67, 72, 92, 72, 60, 63, 83, 60, 73, 59, 53, 66, 57, 63, 49, 61, 50, 80, 67, 56, 68, 69, 84, 89, 59, 66, 79, 62, 50, 80, 79, 80, 72, 77, 59, 52, 77, 63, 71, 57, 65, 58, 82, 65, 62, 51, 80, 77, 59, 78, 79, 53, 47, 79, 100, 111, 65, 74, 58, 63, 59, 92, 81, 73, 45, 58, 77, 57, 86, 62, 59, 67, 43, 68, 76, 72, 54, 54, 59, 51, 64, 51, 48, 68, 61, 65, 69, 59, 57, 87, 75, 59, 62, 78, 59, 59, 80, 59, 84, 78, 63, 60, 66, 109, 44, 62, 71, 55, 68, 66, 73, 61, 84, 57, 79, 70, 49, 66, 62, 83, 53, 75, 52, 77, 55, 51, 58, 100, 70, 45, 46, 130, 72, 64, 89, 75, 52, 70, 100, 63, 72, 65, 86, 62, 91, 71, 51, 63, 68, 55, 55, 45, 50, 39, 65, 64, 64, 65, 86, 63, 93, 32, 72, 56, 96, 65, 61, 70, 54, 82, 84, 70, 71, 74, 91, 58, 66, 58, 73, 61, 52, 63, 57, 71, 85, 74, 71, 62, 60, 59, 86, 59, 67, 63, 55, 46, 70, 83, 52, 70, 47, 53, 64, 53, 61, 93, 67, 66, 66, 50, 62, 74, 52, 122, 76, 70, 61, 72, 69, 59, 41, 72, 57, 43, 58, 52, 80, 72, 82, 61, 63, 52, 69, 55, 104, 48, 66, 84, 65, 54, 65, 73, 55, 72, 81, 58, 77, 84, 84, 64, 63, 58, 76, 62, 119, 53, 64, 50, 62, 85, 42, 68, 73, 69, 58, 51, 60, 58, 73, 54, 55, 73, 83, 65, 55, 39, 71, 67, 93, 74, 63, 52, 61, 47, 66, 91, 60, 79, 49, 50, 73, 63, 68, 83, 66, 57, 78, 75, 68, 59, 90, 61, 66, 51, 58, 63, 50, 70, 71, 48, 73, 63, 56, 60, 76, 52, 72, 57, 62, 68, 100, 57, 54, 53, 109, 55, 86, 69, 57, 74, 68, 75, 55, 66, 116, 47, 70, 79, 50, 44, 60, 56, 59, 50, 58, 50, 67, 77, 62, 61, 53, 104, 69, 72, 89, 48, 63, 41, 53, 61, 67, 47, 69, 85, 59, 74, 120, 43, 74, 79, 60, 43, 56, 69, 76, 93, 67, 58, 64, 53, 50, 57, 57, 70, 43, 61, 80, 58, 62, 43, 53, 83, 56, 89, 51, 60, 65, 78, 103, 56, 84, 53, 69, 51, 79, 89, 60, 99, 55, 58, 56, 73, 87, 75, 37, 87, 52, 46, 74, 52, 51, 71, 54, 65, 53, 55, 70, 52, 71, 43, 53, 60, 57, 71, 45, 97, 62, 55, 55, 84, 56, 60, 80, 45, 51, 85, 91, 43, 74, 71, 114, 82, 67, 79, 42, 55, 64, 51, 47, 79, 78, 69, 71, 73, 61, 79, 60, 57, 55, 78, 67, 60, 69, 49, 61, 50, 59, 84, 67, 45, 75, 65, 84, 117, 55, 63, 58, 75, 82, 121, 54, 108, 71, 35, 99, 51, 77, 62, 92, 85, 56, 72, 60, 52, 68, 61, 84, 110, 63, 64, 63, 56, 72, 47, 66, 53, 78, 71, 67, 51, 91, 65, 54, 62, 50, 66, 55, 76, 71, 93, 59, 67, 54, 75, 68, 54, 53, 53, 84, 92, 86, 70, 74, 69, 57, 61, 62, 71, 76, 80, 69, 49, 56, 93, 61, 52, 70, 74, 68, 63, 55, 55, 42, 87, 64, 72, 71, 71, 75, 53, 61, 61, 55, 59, 59, 81, 49, 74, 68, 77, 62, 79, 90, 57, 51, 69, 74, 71, 47, 64, 69, 51, 64, 61, 88, 58, 50, 67, 59, 79, 87, 86, 68, 53, 70, 42, 62, 53, 55, 78, 71, 60, 67, 73, 37, 63, 68, 83, 72, 67, 84, 50, 39, 60, 60, 51, 73, 80, 70, 52, 59, 54, 69, 44, 70, 69, 63, 61, 63, 95, 72, 65, 45, 55, 75, 63, 61, 66, 60, 60, 68, 54, 70, 59, 70, 60, 79, 43, 101, 55, 55, 53, 69, 76, 72, 69, 73, 72, 62, 76, 62, 76, 74, 72, 63, 97, 61, 57, 67, 73, 58, 57, 59, 65, 71, 70, 93, 80, 79, 64, 45, 58, 65, 43, 55, 63, 50, 75, 59, 66, 73, 70, 62, 63, 57, 70, 86, 74, 76, 68, 56, 45, 71, 51, 67, 72, 48, 51, 55, 62, 67, 57, 98, 63, 57, 70, 54, 73, 62, 55, 49, 60, 70, 79, 62, 78, 53, 62, 73, 46, 96, 100, 43, 53, 51, 122, 65, 64, 87, 64, 79, 94, 66, 49, 79, 62, 85, 75, 56, 56, 50, 74, 71, 59, 53, 116, 78, 55, 69, 61, 66, 66, 70, 42, 106, 93, 63, 57, 60, 52, 67, 61, 76, 77, 84, 53, 50, 73, 45, 81, 41, 90, 53, 58, 84, 53, 65, 40, 59, 64, 68, 61, 49, 53, 76, 60, 48, 66, 69, 57, 102, 60, 59, 60, 61, 59, 46, 65, 52, 69, 78, 69, 63, 86, 63, 46, 67, 98, 75, 44, 73, 50, 66, 68, 57, 64, 62, 78, 79, 73, 77, 58, 63, 54, 56, 51, 67, 76, 57, 59, 54, 68, 103, 88, 54, 65, 73, 58, 67, 64, 63, 60, 45, 65, 75, 74, 55, 77, 62, 71, 65, 61, 71, 78, 69, 78, 45, 56, 37, 49, 92, 85, 63, 88, 72, 108, 70, 95, 64, 71, 62, 84, 46, 66, 82, 82, 74, 79, 65, 50, 75, 81, 88, 64, 59, 141, 68, 77, 92, 65, 92, 63, 68, 65, 59, 65, 72, 46, 93, 45, 91, 69, 62, 48, 61, 61, 60, 64, 47, 61, 49, 78, 59, 74, 66, 87, 94, 57, 77, 70, 66, 53, 69, 58, 61, 52, 69, 62, 108, 62, 48, 67, 84, 70, 63, 64, 73, 63, 60, 78, 56, 61, 75, 54, 49, 51, 51, 60, 52, 76, 72, 70, 50, 55, 54, 54, 39, 55, 83, 62, 59, 64, 77, 79, 62, 69, 65, 84, 63, 93, 78, 76, 102, 44, 84, 63, 69, 74, 64, 74, 68, 42, 48, 83, 81, 68, 42, 63, 48, 73, 71, 69, 68, 70, 75, 49, 60, 52, 83, 43, 56, 88, 68, 59, 75, 65, 88, 52, 66, 67, 64, 50, 54, 64, 51, 68, 66, 63, 57, 56, 57, 66, 95, 73, 63, 61, 54, 68, 87, 49, 59, 53, 58, 80, 72, 78, 67, 65, 56, 67, 71, 60, 68, 40, 55, 45, 94, 63, 66, 69, 62, 84, 61, 46, 66, 76, 69, 73, 59, 80, 62, 62, 79, 60, 46, 85, 71, 74, 54, 40, 88, 50, 111, 71, 89, 66, 67, 77, 58, 63, 72, 69, 70, 85, 62, 61, 70, 68, 68, 69, 59, 53, 72, 53, 48, 49, 65, 111, 58, 73, 63, 69, 62, 71, 43, 55, 91, 56, 81, 40, 61, 72, 56, 55, 70, 61, 61, 84, 64, 53, 79, 65, 53, 74, 53, 75, 51, 53, 67, 69, 68, 77, 63, 78, 56, 96, 53, 66, 69, 69, 59, 67, 54, 49, 57, 61, 38, 52, 70, 64, 60, 61, 57, 63, 75, 60, 59, 73, 88, 83, 62, 57, 66, 61, 67, 65, 50, 74, 76, 40, 73, 46, 61, 47, 44, 72, 54, 62, 121, 60, 51, 67, 74, 69, 47, 47, 85, 90, 52, 69, 65, 70, 52, 59, 50, 72, 77, 66, 47, 66, 40, 93, 61, 88, 69, 55, 64, 58, 69, 68, 67, 74, 72, 57, 78, 61, 56, 57, 115, 49, 59, 97, 71, 60, 79, 53, 53, 85, 60, 73, 58, 76, 74, 80, 81, 85, 66, 69, 72, 54, 67, 61, 73, 77, 70, 44, 67, 67, 69, 67, 71, 85, 26, 100, 59, 67, 86, 59, 49, 47, 62, 92, 147, 76, 52, 83, 51, 64, 71, 59, 64, 75, 64, 54, 69, 59, 54, 60, 49, 71, 46, 75, 78, 109, 47, 78, 68, 64, 86, 71, 73, 69, 78, 48, 84, 73, 49, 63, 81, 64, 49, 73, 54, 64, 79, 68, 73, 65, 60, 73, 96, 56, 68, 57, 76, 57, 65, 72, 86, 54, 62, 57, 63, 92, 67, 78, 79, 65, 58, 59, 62, 71, 67, 98, 47, 82, 53, 73, 55, 72, 69, 77, 57, 53, 71, 38, 89, 69, 67, 77, 79, 67, 65, 67, 56, 75, 53, 74, 65, 64, 69, 73, 79, 56, 54, 84, 74, 83, 79, 61, 109, 79, 88, 53, 64, 64, 61, 61, 40, 66, 86, 66, 47, 67, 57, 86, 63, 62, 76, 55, 69, 61, 73, 56, 63, 52, 69, 46, 59, 55, 56, 74, 68, 59, 82, 60, 65, 90, 53, 80, 73, 63, 58, 68, 72, 49, 83, 68, 50, 57, 58, 64, 55, 58, 63, 26, 67, 79, 52, 81, 68, 61, 56, 66, 54, 88, 99, 78, 62, 47, 72, 58, 56, 125, 94, 82, 64, 81, 62, 76, 79, 64, 71, 47, 74, 65, 51, 84, 70, 79, 70, 66, 48, 53, 80, 76, 47, 73, 59, 54, 62, 46, 91, 68, 77, 67, 73, 55, 54, 64, 66, 42, 66, 50, 68, 65, 48, 89, 73, 57, 72, 50, 58, 53, 65, 74, 80, 64, 67, 70, 61, 53, 63, 61, 73, 75, 59, 94, 71, 99, 100, 65, 58, 76, 84, 60, 69, 57, 51, 61, 55, 63, 57, 60, 63, 72, 61, 52, 68, 52, 89, 85, 52, 58, 64, 82, 74, 53, 60, 71, 69, 69, 88, 64, 88, 59, 53, 77, 63, 70, 51, 60, 52, 49, 66, 73, 58, 56, 46, 70, 81, 72, 68, 79, 55, 64, 76, 60, 69, 71, 42, 74, 81, 56, 74, 49, 57, 67, 72, 54, 50, 67, 80, 65, 70, 92, 62, 49, 59, 52, 78, 74, 84, 95, 75, 77, 79, 42, 52, 38, 55, 66, 56, 59, 65, 75, 41, 59, 70, 49, 59, 61, 62, 70, 81, 56, 54, 81, 57, 78, 75, 58, 44, 41, 51, 84, 73, 57, 72, 60, 74, 73, 78, 74, 53, 61, 75, 46, 80, 65, 68, 64, 68, 90, 44, 73, 66, 76, 68, 61, 64, 87, 70, 57, 50, 67, 87, 94, 73, 66, 80, 74, 91, 67, 73, 57, 63, 51, 52, 66, 76, 40, 56, 54, 50, 57, 60, 67, 53, 85, 55, 84, 48, 47, 78, 80, 30, 82, 51, 62, 69, 76, 79, 52, 69, 46, 82, 64, 57, 75, 66, 57, 70, 70, 71, 51, 69, 88, 79, 46, 54, 73, 59, 68, 72, 47, 43, 48, 46, 56, 60, 66, 71, 64, 61, 62, 59, 51, 47, 63, 63, 85, 84, 54, 45, 56, 48, 46, 70, 79, 63, 74, 81, 77, 61, 110, 49, 74, 58, 79, 83, 56, 70, 50, 79, 62, 66, 81, 60, 70, 85, 71, 85, 65, 93, 74, 67, 58, 59, 84, 63, 78, 70, 73, 77, 71, 74, 55, 64, 66, 70, 95, 68, 87, 61, 64, 48, 88, 87, 40, 49, 55, 52, 56, 55, 77, 64, 62, 46, 65, 83, 83, 48, 68, 79, 54, 57, 72, 82, 64, 45, 57, 79, 70, 55, 55, 51, 65, 42, 79, 52, 78, 81, 51, 70, 70, 59, 85, 56, 52, 69, 60, 76, 61, 60, 53, 56, 80, 59, 67, 78, 65, 70, 29, 52, 119, 63, 84, 63, 63, 69, 71, 58, 80, 43, 56, 48, 79, 53, 56, 63, 130, 57, 73, 61, 79, 71, 61, 71, 50, 53, 76, 72, 77, 60, 55, 58, 80, 97, 47, 85, 60, 73, 48, 89, 90, 68, 67, 67, 78, 61, 54, 60, 64, 36, 84, 80, 59, 69, 74, 65, 54, 80, 86, 51, 66, 71, 54, 71, 67, 74, 79, 101, 54, 73, 55, 64, 60, 48, 59, 73, 129, 67, 71, 69, 49, 99, 69, 58, 63, 73, 70, 81, 58, 41, 62, 63, 72, 74, 63, 95, 74, 74, 70, 71, 64, 82, 75, 43, 64, 51, 64, 98, 48, 55, 71, 51, 79, 42, 64, 52, 69, 70, 69, 54, 61, 59, 74, 63, 68, 59, 54, 56, 63, 74, 57, 68, 71, 70, 80, 61, 89, 63, 81, 55, 62, 64, 90, 53, 90, 93, 40, 56, 68, 102, 57, 113, 51, 77, 46, 76, 57, 63, 77, 71, 54, 100, 50, 56, 68, 81, 57, 109, 94, 77, 51, 73, 71, 85, 61, 70, 67, 48, 63, 61, 124, 47, 48, 65, 62, 106, 64, 58, 66, 42, 65, 82, 65, 80, 66, 63, 46, 52, 63, 75, 67, 52, 49, 93, 62, 62, 61, 62, 74, 67, 78, 76, 52, 82, 67, 53, 50, 54, 60, 79, 52, 74, 54, 62, 65, 53, 73, 85, 43, 72, 69, 77, 74, 103, 67, 64, 73, 88, 66, 79, 64, 71, 57, 61, 74, 47, 54, 59, 57, 83, 67, 87, 72, 66, 43, 77, 59, 56, 77, 37, 97, 59, 72, 75, 69, 58, 58, 39, 68, 67, 57, 79, 75, 78, 42, 67, 158, 59, 76, 62, 48, 61, 74, 78, 53, 83, 57, 66, 55, 60, 66, 61, 74, 73, 100, 66, 66, 84, 53, 58, 86, 44, 53, 59, 56, 73, 84, 72, 78, 57, 69, 58, 83, 53, 127, 57, 51, 77, 53, 55, 47, 57, 63, 72, 57, 61, 71, 64, 68, 49, 63, 63, 58, 59, 56, 67, 66, 79, 57, 65, 58, 68, 55, 85, 64, 57, 55, 52, 58, 50, 68, 84, 71, 64, 64, 49, 68, 142, 57, 63, 60, 67, 72, 74, 55, 67, 59, 70, 47, 69, 67, 81, 47, 56, 54, 75, 73, 67, 90, 63, 87, 72, 99, 59, 64, 52, 49, 56, 64, 67, 67, 51, 81, 49, 57, 72, 51, 91, 61, 65, 70, 75, 72, 58, 53, 69, 59, 68, 94, 58, 48, 62, 64, 46, 56, 74, 41, 72, 65, 46, 71, 62, 64, 65, 59, 54, 48, 58, 45, 55, 84, 41, 86, 84, 82, 45, 71, 65, 53, 55, 77, 69, 69, 77, 60, 49, 64, 68, 66, 77, 55, 42, 57, 58, 54, 72, 74, 61, 66, 25, 77, 66, 77, 77, 90, 69, 66, 101, 108, 48, 54, 77, 65, 82, 56, 52, 101, 85, 59, 63, 55, 45, 81, 66, 62, 50, 70, 52, 43, 77, 43, 72, 91, 55, 65, 53, 57, 89, 63, 67, 57, 70, 71, 65, 58, 44, 75, 77, 64, 54, 74, 70, 100, 47, 56, 68, 102, 64, 64, 106, 64, 69, 52, 66, 42, 62, 99, 87, 66, 68, 73, 66, 38, 63, 67, 53, 78, 74, 64, 62, 47, 78, 70, 52, 79, 78, 79, 53, 67, 95, 69, 74, 81, 59, 60, 60, 69, 61, 48, 79, 59, 63, 73, 58, 64, 67, 66, 54, 53, 64, 45, 91, 52, 63, 72, 67, 52, 52, 81, 64, 72, 47, 69, 67, 52, 56, 63, 64, 61, 93, 72, 61, 58, 67, 61, 68, 66, 65, 60, 68, 55, 75, 78, 71, 44, 76, 71, 68, 85, 48, 77, 54, 63, 83, 51, 83, 56, 67, 80, 71, 69, 55, 80, 89, 81, 62, 60, 51, 78, 75, 77, 57, 56, 106, 131, 116, 56, 51, 73, 44, 58, 64, 67, 62, 76, 57, 67, 73, 72, 57, 68, 54, 54, 68, 95, 55, 54, 76, 66, 64, 84, 60, 68, 74, 74, 51, 53, 74, 68, 56, 64, 79, 65, 55, 70, 63, 83, 59, 74, 57, 58, 41, 52, 50, 61, 61, 86, 49, 66, 65, 62, 60, 84, 74, 51, 59, 49, 56, 56, 50, 45, 60, 58, 67, 45, 48, 77, 57, 64, 94, 89, 45, 61, 57, 65, 93, 50, 81, 63, 38, 82, 121, 65, 61, 53, 49, 96, 58, 58, 64, 69, 69, 66, 62, 60, 67, 93, 52, 66, 64, 52, 69, 59, 54, 70, 62, 49, 90, 75, 79, 75, 72, 71, 49, 80, 77, 56, 48, 80, 55, 58, 69, 67, 73, 86, 87, 66, 67, 66, 68, 57, 65, 75, 67, 59, 81, 60, 94, 78, 49, 60, 52, 53, 64, 106, 67, 65, 104, 65, 62, 52, 71, 61, 57, 50, 66, 88, 70, 73, 71, 68, 81, 80, 54, 65, 57, 64, 61, 88, 64, 59, 72, 47, 62, 51, 92, 67, 52, 62, 59, 63, 42, 90, 81, 60, 74, 109, 78, 75, 78, 50, 43, 35, 46, 63, 62, 84, 55, 81, 81, 72, 62, 57, 79, 48, 69, 48, 59, 59, 50, 63, 61, 95, 58, 72, 54, 60, 60, 67, 53, 58, 65, 65, 64, 70, 34, 71, 90, 39, 91, 94, 63, 85, 58, 87, 66, 63, 51, 60, 67, 56, 71, 81, 62, 63, 87, 61, 68, 58, 76, 63, 68, 67, 58, 85, 64, 60, 67, 75, 54, 55, 61, 68, 80, 58, 40, 65, 55, 61, 55, 61, 57, 65, 64, 60, 69, 47, 58, 63, 61, 50, 66, 54, 53, 102, 62, 79, 50, 86, 49, 70, 64, 55, 74, 60, 47, 62, 86, 63, 90, 55, 89, 42, 56, 60, 54, 47, 59, 118, 47, 52, 57, 52, 52, 51, 86, 60, 49, 64, 71, 58, 67, 62, 61, 71, 66, 64, 93, 63, 99, 73, 82, 78, 95, 55, 46, 63, 67, 52, 56, 77, 63, 59, 55, 78, 66, 46, 62, 49, 72, 51, 64, 84, 60, 74, 60, 39, 65, 54, 57, 70, 92, 58, 64, 87, 68, 67, 70, 49, 55, 56, 97, 63, 58, 72, 67, 57, 58, 52, 90, 73, 67, 44, 70, 124, 57, 88, 49, 89, 53, 57, 66, 77, 102, 57, 76, 57, 43, 51, 60, 99, 74, 80, 62, 83, 31, 78, 63, 57, 56, 56, 61, 55, 63, 54, 44, 48, 50, 58, 53, 68, 52, 99, 76, 71, 51, 86, 74, 61, 81, 66, 70, 113, 42, 55, 64, 69, 91, 47, 94, 66, 61, 67, 56, 61, 54, 52, 75, 57, 68, 35, 78, 92, 62, 58, 57, 69, 69, 80, 57, 77, 62, 61, 52, 61, 69, 54, 82, 72, 64, 42, 62, 81, 66, 67, 51, 57, 57, 70, 53, 106, 70, 77, 80, 69, 91, 44, 59, 44, 62, 53, 55, 58, 84, 57, 65, 78, 90, 146, 69, 61, 78, 60, 65, 52, 66, 55, 62, 71, 78, 69, 40, 49, 77, 68, 76, 72, 85, 62, 48, 47, 79, 62, 66, 86, 72, 72, 68, 51, 64, 65, 64, 82, 54, 84, 68, 71, 106, 93, 81, 56, 76, 76, 52, 63, 78, 63, 58, 58, 51, 70, 50, 97, 83, 63, 49, 63, 58, 57, 38, 57, 66, 86, 45, 46, 69, 32, 37, 46, 47, 59, 52, 72, 48, 71, 43, 64, 68, 66, 73, 66, 61, 54, 60, 87, 63, 72, 75, 75, 68, 53, 60, 59, 54, 53, 62, 76, 48, 73, 59, 69, 54, 60, 74, 62, 89, 120, 51, 79, 54, 53, 73, 52, 75, 52, 51, 73, 75, 38, 96, 49, 59, 46, 61, 142, 64, 58, 84, 61, 70, 51, 74, 66, 70, 56, 90, 92, 57, 68, 64, 57, 50, 50, 70, 56, 69, 68, 57, 65, 95, 60, 99, 60, 50, 58, 57, 56, 59, 49, 60, 76, 57, 72, 59, 59, 57, 56, 64, 62, 80, 54, 72, 84, 49, 72, 58, 56, 45, 61, 48, 74, 48, 95, 56, 50, 59, 52, 69, 55, 58, 51, 72, 70, 63, 79, 68, 68, 55, 51, 65, 56, 58, 73, 85, 74, 64, 62, 49, 65, 55, 76, 83, 50, 97, 82, 84, 62, 49, 20, 56, 38, 57, 74, 61, 44, 81, 68, 88, 62, 66, 47, 49, 65, 68, 52, 60, 91, 53, 92, 46, 68, 60, 38, 59, 51, 57, 76, 61, 68, 83, 71, 39, 76, 52, 74, 71, 63, 61, 69, 62, 45, 68, 87, 54, 85, 63, 59, 90, 42, 68, 60, 79, 62, 63, 54, 61, 98, 97, 55, 60, 63, 73, 69, 57, 53, 46, 53, 51, 102, 79, 70, 62, 80, 47, 51, 57, 56, 71, 48, 62, 82, 65, 57, 44, 62, 64, 62, 68, 60, 79, 75, 73, 97, 61, 94, 76, 71, 57, 60, 76, 58, 44, 52, 64, 77, 57, 53, 109, 66, 52, 46, 66, 73, 51, 67, 63, 60, 53, 57, 73, 63, 79, 85, 65, 58, 127, 67, 38, 51, 79, 51, 87, 70, 65, 50, 75, 60, 72, 82, 50, 59, 65, 64, 65, 47, 82, 72, 72, 54, 107, 59, 71, 93, 36, 52, 37, 55, 44, 83, 57, 74, 53, 52, 78, 86, 71, 49, 56, 60, 49, 79, 51, 64, 67, 56, 52, 35, 60, 43, 92, 65, 53, 63, 64, 75, 58, 77, 54, 68, 63, 77, 58, 74, 78, 55, 41, 61, 67, 50, 66, 55, 74, 45, 60, 79, 68, 60, 67, 58, 52, 65, 68, 73, 50, 83, 72, 70, 67, 84, 57, 57, 148, 91, 63, 43, 58, 76, 101, 105, 52, 58, 60, 57, 58, 71, 68, 65, 58, 101, 74, 83, 53, 77, 50, 83, 53, 79, 51, 59, 69, 37, 36, 45, 67, 77, 61, 85, 68, 52, 52, 57, 50, 95, 68, 57, 49, 64, 71, 43, 44, 63, 78, 65, 61, 61, 53, 86, 103, 74, 69, 85, 68, 63, 62, 69, 70, 81, 85, 69, 92, 61, 76, 48, 112, 66, 49, 114, 55, 119, 53, 59, 61, 52, 79, 61, 42, 55, 54, 61, 70, 65, 79, 50, 50, 80, 67, 48, 55, 69, 80, 54, 45, 79, 86, 92, 57, 36, 68, 42, 54, 74, 59, 58, 49, 75, 48, 45, 80, 57, 44, 48, 73, 55, 66, 72, 68, 89, 70, 78, 83, 68, 52, 69, 58, 86, 76, 55, 52, 54, 75, 70, 51, 50, 79, 55, 68, 82, 90, 66, 57, 88, 45, 49, 71, 51, 64, 50, 71, 64, 53, 69, 81, 70, 64, 61, 36, 66, 73, 64, 75, 70, 54, 59, 74, 71, 71, 81, 66, 64, 73, 71, 56, 54, 71, 62, 57, 77, 54, 54, 73, 72, 65, 82, 60, 96, 61, 61, 61, 110, 124, 54, 69, 60, 67, 56, 55, 40, 56, 63, 87, 61, 90, 49, 40, 61, 65, 93, 88, 66, 62, 79, 55, 74, 76, 43, 72, 76, 60, 61, 46, 66, 59, 92, 45, 87, 76, 77, 71, 54, 52, 64, 69, 75, 100, 49, 67, 63, 77, 84, 62, 70, 80, 46, 62, 77, 78, 78, 50, 78, 64, 49, 46, 40, 63, 97, 69, 47, 53, 59, 63, 74, 70, 56, 71, 67, 59, 80, 84, 42, 73, 67, 115, 65, 93, 60, 51, 46, 70, 64, 54, 69, 126, 90, 53, 70, 55, 92, 66, 62, 70, 62, 59, 58, 62, 49, 47, 64, 72, 59, 75, 114, 84, 52, 59, 106, 62, 67, 42, 84, 69, 51, 55, 58, 69, 55, 83, 62, 68, 64, 64, 55, 74, 44, 44, 75, 56, 59, 64, 85, 54, 54, 59, 46, 94, 64, 95, 78, 67, 64, 96, 83, 78, 73, 77, 61, 73, 94, 64, 63, 65, 65, 145, 64, 81, 91, 63, 53, 49, 51, 64, 63, 68, 56, 67, 61, 63, 41, 66, 74, 37, 123, 82, 71, 53, 79, 71, 52, 51, 66, 71, 49, 74, 67, 54, 56, 71, 82, 86, 86, 93, 66, 40, 59, 77, 65, 71, 55, 72, 75, 91, 53, 67, 71, 69, 63, 76, 61, 67, 74, 55, 59, 46, 74, 54, 58, 65, 68, 73, 71, 65, 76, 55, 77, 88, 76, 68, 62, 44, 63, 45, 89, 53, 50, 53, 48, 50, 70, 46, 60, 74, 59, 78, 57, 82, 106, 54, 76, 78, 54, 63, 115, 55, 72, 56, 68, 84, 60, 56, 62, 63, 49, 54, 61, 78, 72, 68, 65, 60, 62, 69, 62, 106, 53, 62, 67, 66, 72, 79, 79, 81, 66, 100, 43, 54, 77, 72, 76, 57, 85, 52, 62, 42, 68, 101, 106, 47, 54, 75, 72, 69, 58, 70, 66, 56, 70, 90, 51, 67, 34, 47, 55, 93, 79, 93, 40, 67, 71, 63, 62, 73, 69, 86, 98, 75, 55, 49, 47, 60, 74, 102, 56, 57, 78, 86, 64, 98, 50, 62, 69, 60, 61, 87, 65, 64, 74, 51, 60, 63, 65, 85, 75, 62, 107, 32, 83, 67, 49, 55, 66, 53, 74, 50, 75, 53, 61, 45, 40, 107, 89, 60, 41, 50, 60, 105, 62, 64, 73, 75, 74, 53, 61, 55, 68, 65, 72, 58, 57, 77, 65, 57, 54, 66, 72, 99, 64, 57, 67, 51, 44, 97, 99, 48, 56, 63, 91, 45, 76, 63, 110, 61, 73, 93, 62, 68, 85, 97, 47, 65, 46, 62, 71, 73, 70, 57, 65, 104, 61, 96, 78, 65, 54, 56, 92, 77, 72, 46, 113, 60, 46, 84, 75, 67, 60, 44, 98, 51, 41, 86, 57, 117, 60, 70, 59, 63, 79, 62, 53, 68, 97, 50, 53, 77, 78, 63, 62, 61, 75, 87, 68, 51, 74, 58, 54, 77, 58, 56, 70, 52, 84, 60, 76, 55, 69, 81, 54, 84, 58, 62, 60, 72, 71, 54, 62, 107, 64, 59, 59, 71, 72, 62, 86, 47, 88, 58, 110, 79, 54, 57, 77, 64, 55, 59, 53, 62, 63, 69, 64, 76, 50, 45, 79, 65, 51, 58, 74, 54, 73, 68, 69, 59, 97, 59, 56, 55, 95, 62, 40, 49, 59, 56, 62, 62, 77, 75, 48, 61, 63, 58, 73, 49, 59, 114, 75, 49, 52, 56, 53, 71, 43, 49, 51, 63, 47, 51, 85, 75, 70, 64, 94, 94, 52, 70, 61, 66, 61, 75, 87, 83, 63, 76, 72, 73, 52, 66, 90, 84, 69, 85, 67, 55, 55, 53, 63, 72, 45, 59, 64, 57, 72, 62, 54, 69, 46, 67, 59, 78, 81, 74, 75, 55, 62, 73, 53, 61, 47, 69, 60, 72, 51, 122, 95, 55, 69, 55, 56, 54, 81, 67, 79, 45, 67, 53, 61, 61, 64, 48, 142, 61, 46, 66, 75, 49, 66, 62, 86, 64, 70, 58, 52, 92, 99, 46, 68, 75, 87, 88, 39, 56, 60, 43, 47, 63, 44, 86, 70, 45, 61, 82, 101, 78, 43, 69, 109, 54, 65, 73, 64, 64, 52, 67, 51, 59, 81, 47, 58, 62, 100, 45, 60, 91, 57, 70, 67, 86, 61, 72, 79, 53, 46, 68, 82, 73, 71, 61, 60, 47, 57, 52, 64, 60, 87, 115, 51, 63, 46, 68, 59, 64, 72, 56, 60, 92, 62, 60, 89, 56, 81, 60, 76, 94, 76, 90, 84, 63, 83, 46, 53, 63, 54, 70, 59, 66, 39, 87, 97, 68, 57, 47, 54, 43, 71, 102, 60, 60, 56, 65, 48, 42, 70, 77, 72, 52, 57, 64, 86, 78, 47, 68, 58, 55, 50, 56, 67, 72, 73, 51, 79, 53, 81, 62, 51, 51, 77, 47, 88, 67, 46, 51, 58, 63, 51, 54, 64, 69, 110, 33, 51, 69, 57, 54, 64, 57, 42, 78, 69, 64, 64, 53, 58, 52, 97, 31, 53, 59, 67, 49, 97, 77, 97, 54, 66, 55, 87, 58, 54, 61, 59, 57, 67, 67, 81, 58, 52, 72, 66, 50, 65, 97, 72, 97, 53, 65, 55, 76, 38, 44, 44, 89, 62, 48, 60, 95, 69, 68, 51, 77, 63, 58, 69, 99, 63, 60, 77, 59, 80, 71, 59, 78, 61, 77, 72, 55, 57, 53, 53, 64, 106, 63, 51, 92, 63, 89, 84, 57, 60, 44, 60, 58, 63, 52, 69, 66, 58, 58, 77, 54, 68, 38, 63, 95, 59, 60, 83, 102, 88, 47, 66, 87, 51, 105, 86, 67, 94, 64, 104, 61, 61, 71, 66, 72, 63, 61, 71, 63, 64, 52, 62, 40, 58, 77, 40, 55, 54, 110, 72, 52, 76, 82, 75, 68, 61, 51, 86, 63, 74, 68, 62, 63, 72, 68, 62, 60, 49, 55, 61, 75, 85, 72, 67, 128, 54, 61, 75, 67, 45, 51, 45, 62, 75, 57, 58, 69, 41, 72, 74, 76, 67, 84, 87, 81, 50, 62, 82, 65, 103, 52, 51, 79, 62, 54, 64, 61, 73, 75, 45, 75, 63, 51, 92, 98, 79, 34, 57, 81, 140, 53, 50, 52, 85, 91, 48, 71, 49, 80, 66, 54, 73, 68, 63, 112, 51, 116, 67, 70, 50, 72, 76, 70, 86, 99, 71, 79, 74, 72, 91, 71, 62, 69, 34, 72, 67, 64, 64, 34, 77, 76, 69, 84, 60, 49, 51, 76, 78, 55, 79, 63, 69, 67, 63, 56, 72, 63, 58, 57, 94, 76, 66, 61, 64, 47, 72, 65, 50, 46, 52, 51, 67, 84, 96, 56, 85, 59, 52, 82, 74, 70, 49, 78, 70, 64, 38, 86, 59, 68, 55, 60, 53, 63, 54, 82, 42, 85, 52, 52, 52, 98, 64, 62, 99, 69, 59, 62, 56, 65, 56, 61, 68, 80, 81, 68, 59, 58, 60, 63, 56, 69, 76, 69, 57, 49, 40, 68, 53, 71, 38, 61, 48, 46, 66, 70, 70, 80, 78, 61, 96, 50, 48, 65, 57, 75, 53, 57, 80, 68, 63, 59, 54, 67, 57, 57, 60, 67, 65, 67, 60, 54, 57, 45, 49, 68, 65, 107, 81, 51, 71, 40, 73, 67, 61, 88, 75, 66, 74, 66, 60, 79, 60, 86, 47, 61, 64, 79, 68, 62, 69, 80, 91, 64, 59, 66, 100, 56, 65, 58, 62, 63, 64, 69, 57, 62, 76, 48, 66, 61, 60, 42, 82, 59, 55, 55, 71, 74, 62, 118, 97, 67, 69, 68, 52, 62, 59, 49, 50, 57, 84, 61, 34, 77, 87, 62, 51, 62, 65, 54, 36, 77, 46, 59, 85, 59, 77, 86, 81, 66, 54, 58, 56, 64, 53, 32, 68, 87, 52, 59, 46, 51, 88, 46, 62, 43, 52, 61, 96, 66, 51, 85, 55, 66, 58, 55, 56, 82, 60, 59, 87, 85, 61, 77, 74, 73, 63, 67, 82, 90, 87, 90, 75, 75, 79, 62, 45, 76, 70, 33, 63, 54, 56, 65, 76, 73, 48, 70, 48, 50, 43, 74, 67, 63, 60, 55, 83, 46, 57, 64, 65, 64, 60, 73, 59, 56, 93, 52, 44, 85, 76, 69, 46, 108, 54, 65, 59, 97, 74, 49, 61, 64, 54, 71, 71, 68, 68, 81, 60, 55, 81, 75, 51, 71, 66, 50, 45, 81, 58, 112, 67, 52, 79, 67, 76, 63, 59, 69, 66, 52, 61, 53, 83, 53, 65, 59, 89, 57, 85, 53, 66, 82, 68, 60, 70, 68, 79, 80, 77, 56, 59, 76, 48, 67, 65, 73, 77, 79, 54, 59, 59, 60, 71, 83, 64, 56, 53, 69, 63, 63, 73, 54, 62, 53, 63, 47, 70, 64, 79, 66, 93, 52, 78, 53, 84, 74, 91, 71, 191, 51, 73, 77, 68, 85, 49, 105, 60, 65, 66, 68, 75, 59, 61, 77, 64, 60, 64, 59, 58, 64, 58, 57, 62, 60, 66, 61, 67, 55, 63, 69, 62, 54, 82, 48, 54, 81, 63, 55, 78, 78, 57, 51, 52, 57, 57, 63, 62, 61, 81, 90, 67, 71, 69, 64, 64, 113, 51, 87, 63, 70, 65, 67, 63, 48, 53, 76, 85, 75, 56, 47, 62, 89, 56, 67, 40, 65, 71, 58, 74, 52, 62, 76, 60, 50, 60, 74, 49, 77, 52, 72, 54, 59, 78, 70, 78, 69, 61, 56, 69, 65, 49, 70, 58, 39, 93, 91, 58, 88, 42, 38, 45, 41, 60, 79, 72, 57, 58, 64, 59, 75, 84, 59, 41, 48, 66, 77, 64, 55, 58, 47, 73, 60, 72, 98, 69, 65, 48, 59, 70, 49, 55, 74, 63, 66, 58, 83, 39, 54, 60, 72, 71, 61, 67, 73, 88, 74, 50, 65, 65, 73, 58, 65, 74, 83, 62, 66, 76, 48, 60, 107, 68, 80, 66, 65, 62, 80, 69, 63, 68, 62, 42, 58, 75, 60, 58, 70, 51, 65, 54, 52, 51, 67, 64, 70, 65, 80, 68, 65, 43, 73, 64, 74, 77, 77, 67, 51, 66, 63, 64, 56, 69, 48, 71, 67, 70, 71, 78, 66, 57, 51, 63, 55, 69, 90, 51, 56, 50, 80, 68, 49, 51, 54, 81, 52, 70, 71, 65, 68, 75, 48, 58, 62, 81, 65, 79, 55, 64, 77, 75, 113, 77, 70, 60, 64, 52, 48, 54, 75, 66, 60, 59, 73, 68, 76, 70, 73, 65, 66, 72, 64, 51, 61, 73, 70, 54, 75, 68, 66, 65, 78, 73, 64, 61, 78, 81, 58, 64, 81, 51, 88, 78, 82, 72, 60, 65, 77, 59, 59, 75, 58, 46, 51, 63, 55, 62, 67, 49, 60, 58, 56, 60, 54, 70, 108, 65, 62, 55, 79, 94, 86, 112, 57, 50, 54, 75, 64, 64, 86, 63, 71, 74, 81, 58, 61, 62, 63, 78, 67, 82, 62, 68, 58, 55, 66, 67, 67, 47, 59, 61, 71, 57, 69, 70, 58, 94, 68, 86, 84, 59, 131, 67, 61, 57, 77, 74, 59, 46, 86, 63, 68, 91, 63, 77, 95, 51, 79, 78, 60, 68, 67, 69, 52, 60, 57, 65, 56, 67, 79, 58, 44, 86, 64, 56, 53, 58, 49, 77, 72, 62, 60, 57, 51, 56, 66, 47, 68, 71, 54, 57, 69, 88, 63, 49, 69, 104, 50, 81, 60, 65, 59, 76, 79, 86, 72, 61, 68, 118, 62, 61, 66, 87, 57, 71, 68, 79, 67, 76, 73, 107, 54, 64, 71, 60, 55, 66, 69, 66, 43, 87, 65, 80, 67, 43, 69, 76, 83, 48, 55, 49, 78, 59, 58, 63, 61, 51, 59, 69, 72, 56, 53, 39, 80, 57, 50, 70, 85, 55, 60, 80, 68, 62, 80, 85, 79, 56, 62, 60, 48, 63, 102, 64, 59, 68, 58, 69, 56, 49, 47, 67, 63, 74, 83, 70, 67, 55, 83, 54, 65, 53, 60, 52, 86, 61, 58, 57, 74, 57, 67, 65, 65, 53, 81, 62, 62, 68, 73, 57, 50, 60, 55, 56, 65, 75, 63, 55, 77, 56, 81, 53, 74, 73, 74, 65, 71, 61, 50, 64, 54, 81, 78, 62, 60, 78, 74, 69, 59, 65, 73, 59, 76, 66, 54, 62, 45, 74, 67, 68, 53, 73, 84, 61, 68, 74, 65, 63, 78, 60, 72, 49, 68, 46, 72, 61, 62, 58, 86, 87, 73, 44, 76, 68, 64, 63, 81, 82, 59, 71, 71, 76, 73, 58, 69, 126, 45, 47, 47, 57, 59, 57, 88, 53, 75, 82, 42, 68, 90, 65, 56, 94, 79, 59, 73, 54, 70, 66, 44, 68, 84, 55, 49, 73, 73, 66, 53, 62, 64, 57, 83, 65, 69, 62, 68, 80, 62, 59, 99, 72, 47, 81, 61, 62, 63, 71, 48, 60, 72, 61, 50, 70, 48, 74, 73, 59, 59, 59, 58, 59, 84, 75, 59, 42, 70, 61, 79, 71, 65, 54, 56, 84, 74, 95, 66, 40, 70, 49, 49, 53, 85, 55, 49, 74, 59, 75, 58, 52, 87, 66, 112, 66, 93, 68, 61, 76, 63, 57, 61, 86, 58, 67, 82, 69, 68, 72, 53, 76, 89, 65, 68, 67, 76, 62, 60, 75, 61, 59, 67, 66, 65, 138, 67, 77, 74, 54, 62, 60, 82, 81, 67, 44, 75, 45, 81, 77, 58, 61, 73, 71, 56, 52, 76, 56, 54, 80, 48, 51, 57, 35, 48, 55, 53, 53, 96, 60, 58, 90, 54, 96, 70, 65, 67, 90, 59, 74, 63, 58, 74, 63, 79, 55, 75, 69, 70, 62, 56, 63, 73, 89, 58, 66, 73, 59, 69, 80, 64, 63, 56, 71, 59, 76, 68, 56, 68, 70, 78, 53, 63, 71, 53, 47, 84, 55, 70, 71, 70, 54, 77, 59, 92, 53, 62, 77, 94, 65, 72, 91, 74, 60, 78, 63, 60, 63, 72, 82, 55, 57, 69, 71, 65, 82, 62, 67, 59, 40, 52, 104, 65, 66, 66, 69, 84, 85, 70, 62, 65, 64, 65, 78, 81, 61, 63, 88, 58, 71, 58, 62, 71, 64, 65, 90, 60, 53, 77, 74, 77, 89, 73, 67, 43, 49, 56, 71, 65, 51, 61, 65, 58, 74, 71, 50, 62, 66, 70, 95, 83, 65, 86, 75, 54, 50, 74, 89, 71, 76, 67, 61, 54, 66, 61, 55, 55, 66, 83, 69, 61, 72, 72, 106, 109, 64, 76, 132, 70, 71, 83, 74, 91, 57, 71, 64, 57, 60, 65, 69, 96, 107, 52, 58, 104, 56, 81, 49, 57, 66, 50, 57, 79, 76, 76, 70, 59, 83, 43, 81, 60, 46, 51, 58, 56, 39, 73, 62, 56, 69, 80, 55, 55, 56, 88, 65, 71, 67, 70, 92, 72, 72, 65, 62, 57, 100, 53, 71, 63, 101, 73, 48, 71, 53, 73, 58, 95, 66, 78, 64, 73, 67, 67, 51, 97, 91, 68, 67, 68, 63, 67, 69, 60, 75, 57, 49, 54, 74, 66, 87, 72, 74, 61, 55, 49, 72, 59, 62, 56, 70, 68, 49, 76, 65, 74, 68, 53, 63, 61, 140, 79, 56, 67, 48, 90, 61, 49, 66, 61, 60, 50, 47, 80, 68, 48, 75, 47, 63, 56, 72, 77, 65, 70, 82, 57, 68, 51, 61, 63, 58, 88, 59, 76, 44, 56, 71, 61, 43, 39, 77, 66, 86, 72, 90, 65, 79, 72, 45, 66, 59, 51, 68, 57, 75, 79, 64, 64, 68, 50, 66, 75, 54, 91, 53, 70, 51, 63, 53, 46, 88, 56, 63, 75, 92, 53, 63, 84, 74, 73, 63, 78, 45, 64, 51, 65, 74, 48, 49, 57, 56, 53, 71, 75, 66, 52, 67, 82, 52, 67, 67, 61, 92, 63, 42, 69, 58, 79, 74, 83, 69, 53, 81, 73, 52, 81, 53, 51, 69, 41, 51, 51, 57, 53, 58, 67, 49, 72, 68, 96, 76, 53, 55, 66, 72, 63, 71, 65, 49, 52, 57, 49, 70, 59, 63, 79, 63, 69, 83, 66, 90, 71, 46, 84, 48, 71, 82, 40, 77, 69, 60, 53, 72, 59, 64, 59, 60, 60, 70, 76, 55, 63, 52, 73, 105, 76, 80, 75, 52, 52, 54, 66, 62, 57, 79, 65, 54, 55, 72, 62, 63, 58, 70, 75, 76, 69, 88, 80, 66, 57, 55, 65, 65, 66, 56, 58, 53, 53, 60, 60, 58, 86, 62, 72, 70, 78, 87, 112, 66, 55, 63, 63, 50, 59, 41, 68, 57, 87, 84, 58, 64, 50, 54, 53, 75, 72, 77, 66, 61, 55, 84, 53, 66, 88, 66, 71, 78, 40, 62, 44, 72, 65, 56, 81, 54, 67, 52, 75, 50, 61, 70, 61, 60, 67, 56, 69, 149, 76, 62, 49, 87, 66, 72, 59, 70, 71, 69, 57, 59, 76, 63, 55, 63, 71, 81, 55, 58, 56, 62, 73, 51, 83, 53, 80, 68, 69, 55, 71, 48, 68, 53, 71, 69, 75, 70, 63, 69, 51, 53, 57, 59, 58, 67, 48, 88, 68, 64, 63, 62, 65, 59, 45, 66, 55, 84, 73, 68, 59, 67, 57, 70, 81, 63, 70, 52, 45, 78, 44, 90, 58, 67, 89, 62, 72, 72, 59, 70, 65, 59, 75, 55, 81, 74, 65, 115, 67, 61, 89, 57, 57, 61, 67, 68, 144, 65, 64, 48, 45, 71, 66, 36, 71, 68, 38, 75, 73, 59, 83, 61, 66, 64, 74, 52, 60, 55, 86, 84, 64, 80, 78, 60, 63, 71, 67, 95, 48, 58, 64, 66, 44, 47, 40, 50, 59, 62, 44, 69, 66, 47, 71, 82, 63, 61, 53, 72, 58, 42, 62, 78, 74, 71, 60, 70, 55, 55, 73, 74, 75, 76, 73, 54, 49, 68, 62, 61, 60, 68, 51, 62, 69, 78, 44, 57, 53, 51, 86, 37, 67, 49, 71, 72, 74, 48, 64, 59, 57, 109, 53, 76, 60, 67, 64, 45, 72, 62, 52, 69, 97, 62, 76, 51, 63, 76, 52, 74, 55, 58, 84, 76, 67, 64, 84, 55, 62, 76, 73, 64, 56, 58, 75, 95, 73, 65, 58, 66, 66, 78, 75, 55, 98, 51, 56, 77, 70, 75, 98, 45, 53, 58, 64, 75, 72, 85, 72, 61, 51, 56, 74, 51, 64, 56, 90, 41, 68, 69, 58, 69, 71, 77, 49, 86, 60, 71, 50, 51, 68, 47, 76, 71, 71, 62, 72, 46, 47, 54, 65, 59, 51, 62, 71, 55, 78, 69, 72, 60, 68, 56, 59, 71, 50, 58, 61, 66, 58, 68, 49, 53, 55, 59, 64, 62, 60, 106, 47, 56, 80, 58, 80, 89, 76, 65, 56, 55, 67, 60, 62, 53, 58, 70, 71, 69, 71, 82, 44, 79, 73, 60, 57, 50, 71, 54, 80, 48, 79, 88, 63, 67, 70, 63, 53, 51, 50, 74, 111, 66, 63, 63, 55, 49, 66, 42, 50, 71, 53, 72, 99, 63, 74, 66, 48, 53, 52, 93, 52, 81, 53, 77, 53, 64, 81, 44, 65, 63, 85, 71, 61, 71, 51, 57, 58, 68, 109, 71, 63, 27, 60, 76, 78, 78, 93, 68, 71, 54, 67, 82, 55, 69, 93, 79, 71, 70, 88, 80, 54, 56, 79, 66, 78, 52, 56, 66, 80, 78, 67, 59, 47, 76, 74, 55, 39, 61, 48, 49, 57, 54, 58, 91, 88, 53, 60, 62, 48, 63, 58, 84, 62, 77, 57, 60, 89, 68, 53, 98, 75, 64, 80, 62, 80, 71, 71, 67, 45, 55, 54, 70, 70, 57, 69, 61, 42, 61, 69, 65, 45, 60, 66, 50, 62, 75, 55, 70, 63, 60, 67, 75, 52, 96, 93, 53, 48, 61, 46, 73, 65, 48, 51, 76, 92, 64, 61, 52, 73, 74, 67, 77, 96, 72, 83, 80, 52, 67, 54, 67, 92, 74, 66, 70, 49, 65, 81, 98, 94, 58, 65, 47, 96, 54, 42, 84, 68, 55, 58, 65, 102, 53, 71, 75, 55, 67, 68, 51, 38, 62, 86, 66, 82, 76, 53, 68, 103, 60, 53, 44, 77, 74, 60, 76, 72, 61, 67, 71, 46, 52, 53, 66, 55, 67, 57, 62, 58, 54, 68, 70, 68, 76, 114, 63, 41, 104, 53, 47, 75, 51, 79, 97, 70, 77, 70, 49, 64, 58, 85, 91, 64, 58, 71, 58, 79, 71, 77, 73, 74, 46, 75, 54, 77, 43, 57, 60, 71, 57, 52, 71, 82, 70, 56, 49, 60, 107, 48, 81, 48, 67, 66, 77, 85, 72, 43, 60, 64, 68, 58, 75, 85, 62, 48, 66, 59, 68, 68, 64, 61, 53, 55, 66, 107, 50, 83, 76, 81, 59, 71, 68, 65, 65, 71, 72, 59, 60, 92, 93, 67, 66, 55, 53, 66, 59, 88, 53, 124, 59, 61, 46, 64, 93, 57, 84, 67, 69, 64, 74, 59, 70, 60, 61, 57, 36, 78, 61, 56, 60, 168, 53, 75, 100, 106, 97, 89, 78, 56, 75, 52, 68, 91, 64, 94, 54, 60, 70, 68, 74, 57, 83, 58, 73, 61, 55, 58, 61, 58, 81, 64, 78, 72, 74, 70, 79, 66, 58, 107, 73, 65, 61, 67, 70, 60, 67, 65, 49, 59, 64, 45, 56, 64, 93, 59, 71, 61, 76, 55, 65, 68, 94, 68, 62, 74, 49, 66, 38, 62, 59, 68, 71, 65, 54, 79, 76, 67, 54, 82, 78, 76, 86, 68, 69, 77, 45, 68, 64, 66, 62, 66, 60, 62, 66, 59, 66, 73, 67, 69, 80, 62, 64, 61, 62, 60, 77, 69, 54, 65, 59, 67, 50, 71, 56, 55, 61, 55, 65, 57, 54, 66, 55, 59, 60, 97, 68, 61, 61, 65, 47, 59, 62, 48, 66, 60, 58, 59, 57, 48, 87, 63, 56, 67, 58, 50, 76, 68, 50, 52, 54, 62, 68, 47, 84, 62, 50, 75, 45, 60, 61, 60, 63, 106, 60, 65, 59, 62, 72, 57, 51, 69, 60, 65, 62, 63, 73, 60, 49, 73, 63, 73, 72, 66, 72, 56, 69, 77, 57, 69, 54, 59, 60, 78, 58, 60, 68, 61, 63, 64, 66, 78, 61, 84, 78, 58, 67, 83, 74, 78, 58, 70, 66, 60, 76, 76, 135, 54, 84, 64, 52, 71, 84, 69, 79, 63, 56, 81, 71, 68, 76, 58, 64, 72, 105, 62, 60, 46, 63, 55, 75, 91, 81, 131, 63, 55, 62, 77, 95, 61, 52, 54, 63, 64, 58, 67, 62, 94, 55, 58, 57, 50, 48, 54, 70, 70, 65, 63, 94, 59, 51, 62, 64, 76, 58, 66, 72, 55, 56, 76, 62, 60, 59, 61, 48, 58, 68, 65, 48, 69, 70, 61, 62, 64, 76, 75, 55, 64, 60, 69, 75, 62, 63, 61, 61, 63, 64, 60, 72, 53, 55, 74, 53, 59, 67, 61, 54, 72, 70, 52, 60, 59, 71, 77, 71, 55, 85, 69, 68, 51, 72, 54, 70, 60, 57, 56, 62, 75, 63, 57, 61, 63, 63, 53, 74, 68, 52, 72, 70, 63, 67, 65, 50, 67, 58, 80, 62, 73, 63, 68, 61, 49, 70, 61, 68, 58, 61, 64, 67, 59, 71, 81, 64, 64, 55, 71, 80, 58, 54, 66, 62, 76, 56, 55, 51, 62, 58, 64, 59, 53, 79, 59, 74, 66, 64, 89, 65, 62, 50, 39, 61, 58, 47, 67, 91, 59, 56, 74, 57, 81, 64, 69, 70, 61, 76, 77, 66, 59, 54, 59, 56, 70, 56, 55, 49, 63, 84, 61, 72, 56, 57, 74, 52, 77, 64, 42, 154, 70, 64, 48, 78, 77, 65, 61, 63, 81, 77, 60, 51, 66, 79, 67, 62, 79, 118, 56, 73, 63, 64, 72, 52, 71, 59, 81, 93, 57, 92, 62, 62, 80, 50, 67, 54, 94, 47, 58, 53, 54, 64, 58, 61, 49, 81, 65, 78, 88, 88, 50, 74, 58, 74, 52, 62, 72, 56, 77, 57, 73, 49, 56, 73, 52, 75, 66, 65, 47, 61, 55, 45, 62, 66, 73, 70, 68, 81, 40, 60, 66, 79, 64, 63, 66, 59, 68, 63, 59, 57, 60, 75, 52, 52, 58, 66, 78, 58, 70, 63, 60, 86, 52, 71, 39, 57, 67, 61, 70, 63, 45, 73, 64, 59, 63, 56, 58, 56, 63, 55, 71, 75, 51, 88, 110, 89, 71, 93, 67, 68, 105, 59, 92, 72, 66, 66, 81, 74, 64, 65, 70, 59, 54, 65, 73, 69, 66, 67, 98, 58, 77, 139, 58, 61, 60, 59, 69, 64, 73, 66, 54, 59, 51, 61, 65, 79, 63, 68, 71, 59, 66, 65, 52, 54, 61, 78, 63, 84, 68, 73, 45, 80, 73, 122, 73, 66, 73, 76, 71, 81, 47, 59, 64, 57, 52, 92, 59, 64, 68, 55, 61, 60, 57, 61, 67, 53, 109, 78, 53, 69, 51, 61, 59, 62, 57, 57, 44, 59, 69, 87, 55, 58, 73, 62, 74, 77, 55, 60, 86, 57, 69, 56, 62, 59, 73, 70, 92, 57, 40, 53, 68, 61, 58, 71, 62, 68, 53, 68, 74, 121, 58, 68, 68, 74, 67, 59, 119, 53, 61, 65, 62, 65, 54, 62, 63, 75, 51, 67, 73, 60, 46, 63, 63, 54, 63, 54, 53, 66, 59, 60, 73, 58, 72, 67, 74, 68, 67, 53, 62, 66, 64, 84, 62, 44, 78, 55, 68, 68, 73, 65, 74, 67, 61, 61, 57, 72, 66, 59, 66, 148, 72, 69, 68, 62, 76, 79, 59, 66, 57, 63, 53, 64, 47, 62, 59, 72, 74, 56, 65, 62, 72, 58, 71, 64, 67, 88, 60, 60, 57, 73, 47, 60, 58, 64, 79, 67, 69, 60, 114, 78, 57, 62, 60, 60, 56, 77, 74, 74, 63, 57, 55, 68, 59, 83, 72, 58, 80, 66, 49, 53, 58, 60, 49, 59, 84, 48, 72, 67, 72, 68, 70, 81, 73, 72, 44, 51, 52, 57, 90, 70, 47, 64, 53, 71, 67, 60, 61, 58, 64, 41, 75, 70, 77, 85, 81, 64, 100, 54, 61, 89, 72, 65, 83, 68, 59, 69, 98, 74, 69, 85, 73, 61, 64, 67, 71, 64, 90, 64, 61, 94, 64, 61, 57, 62, 90, 61, 74, 71, 47, 70, 62, 72, 71, 62, 59, 67, 61, 60, 51, 59, 75, 69, 57, 57, 55, 75, 68, 61, 56, 41, 67, 71, 57, 61, 90, 57, 52, 63, 75, 54, 61, 64, 69, 48, 64, 75, 44, 57, 64, 86, 77, 58, 71, 52, 57, 44, 62, 76, 57, 68, 44, 40, 49, 56, 59, 79, 86, 54, 65, 66, 66, 61, 76, 58, 68, 73, 64, 69, 66, 69, 62, 53, 85, 61, 57, 76, 68, 77, 65, 58, 63, 59, 59, 63, 54, 61, 72, 55, 78, 62, 60, 61, 63, 78, 94, 61, 58, 53, 63, 63, 64, 57, 63, 61, 67, 56, 33, 74, 55, 59, 79, 65, 62, 56, 42, 70, 51, 66, 62, 55, 68, 72, 57, 78, 69, 56, 87, 65, 84, 59, 56, 59, 53, 77, 54, 61, 56, 59, 79, 78, 69, 53, 45, 67, 52, 61, 68, 78, 52, 93, 45, 46, 65, 58, 85, 47, 51, 85, 101, 58, 58, 57, 68, 87, 55, 57, 66, 71, 62, 65, 70, 60, 60, 64, 53, 77, 76, 62, 65, 61, 65, 62, 44, 69, 75, 60, 85, 70, 82, 59, 63, 106, 56, 67, 63, 47, 69, 60, 100, 67, 102, 65, 74, 72, 52, 73, 85, 75, 64, 51, 70, 60, 56, 60, 63, 52, 77, 69, 74, 79, 60, 52, 59, 63, 59, 77, 67, 71, 52, 83, 75, 60, 72, 61, 59, 61, 95, 64, 51, 58, 81, 64, 62, 74, 50, 89, 62, 43, 62, 66, 49, 54, 92, 75, 47, 66, 76, 71, 68, 59, 64, 51, 54, 77, 55, 56, 75, 68, 48, 70, 72, 67, 76, 61, 75, 63, 53, 63, 62, 43, 60, 59, 58, 94, 60, 68, 84, 77, 66, 87, 67, 73, 76, 70, 63, 47, 71, 58, 61, 75, 64, 59, 59, 47, 79, 53, 83, 69, 42, 82, 75, 75, 73, 61, 60, 59, 67, 65, 59, 60, 80, 65, 73, 80, 66, 74, 53, 59, 59, 50, 65, 66, 60, 71, 61, 49, 55, 56, 53, 61, 61, 62, 42, 66, 62, 55, 101, 76, 55, 49, 46, 77, 55, 69, 51, 68, 51, 79, 41, 74, 66, 158, 40, 66, 52, 61, 56, 148, 73, 59, 52, 61, 64, 74, 82, 45, 71, 62, 60, 76, 82, 81, 63, 73, 52, 70, 71, 65, 105, 63, 69, 60, 88, 77, 62, 64, 60, 73, 56, 44, 75, 72, 43, 49, 56, 63, 61, 76, 70, 58, 58, 67, 59, 77, 76, 69, 63, 69, 74, 74, 45, 48, 73, 89, 50, 83, 61, 47, 54, 42, 74, 79, 76, 72, 64, 67, 77, 66, 53, 82, 55, 73, 83, 59, 57, 28, 61, 55, 49, 57, 52, 60, 68, 61, 82, 54, 82, 71, 84, 47, 58, 57, 70, 80, 49, 55, 65, 53, 68, 56, 91, 53, 102, 51, 59, 50, 64, 72, 60, 67, 78, 61, 52, 59, 58, 69, 73, 64, 68, 73, 54, 68, 62, 52, 75, 78, 66, 65, 89, 58, 61, 62, 57, 64, 57, 64, 54, 71, 69, 63, 52, 64, 63, 52, 92, 63, 55, 68, 74, 83, 69, 51, 75, 51, 35, 67, 51, 45, 75, 66, 53, 73, 58, 56, 84, 62, 48, 60, 61, 78, 80, 44, 67, 63, 60, 62, 59, 67, 68, 67, 68, 64, 76, 100, 68, 49, 69, 68, 43, 65, 101, 65, 53, 74, 68, 60, 73, 58, 53, 55, 68, 74, 51, 62, 69, 58, 44, 75, 75, 58, 70, 59, 72, 64, 100, 61, 51, 46, 57, 98, 63, 57, 73, 65, 55, 69, 53, 56, 75, 47, 65, 66, 64, 66, 78, 57, 65, 61, 71, 75, 98, 75, 54, 50, 51, 86, 63, 66, 54, 81, 77, 111, 46, 54, 56, 68, 57, 66, 71, 71, 68, 50, 65, 52, 54, 53, 32, 60, 58, 65, 70, 58, 64, 57, 70, 75, 115, 59, 63, 69, 62, 77, 47, 75, 60, 56, 60, 61, 57, 46, 56, 48, 57, 60, 93, 73, 50, 72, 52, 56, 54, 71, 84, 60, 64, 76, 52, 73, 78, 65, 66, 65, 70, 81, 59, 133, 57, 72, 61, 55, 70, 55, 78, 97, 61, 54, 59, 78, 74, 66, 74, 93, 71, 75, 112, 96, 59, 48, 75, 60, 83, 63, 53, 70, 75, 80, 77, 89, 60, 58, 80, 78, 63, 84, 66, 81, 54, 62, 58, 57, 85, 81, 60, 79, 67, 54, 49, 68, 68, 76, 67, 61, 75, 61, 76, 61, 86, 61, 68, 130, 65, 54, 59, 62, 80, 66, 66, 66, 59, 53, 55, 107, 65, 62, 65, 57, 59, 68, 89, 55, 55, 69, 52, 62, 40, 59, 65, 57, 69, 73, 75, 55, 67, 112, 59, 52, 69, 52, 58, 53, 70, 66, 51, 68, 69, 51, 75, 59, 57, 59, 61, 68, 58, 49, 57, 61, 60, 50, 103, 71, 54, 88, 82, 58, 60, 47, 92, 66, 71, 44, 75, 70, 72, 75, 54, 43, 61, 64, 86, 65, 65, 56, 67, 89, 65, 38, 64, 84, 70, 79, 71, 34, 61, 64, 49, 59, 55, 78, 69, 92, 69, 56, 75, 64, 51, 81, 60, 65, 75, 65, 57, 57, 58, 48, 60, 63, 89, 72, 55, 88, 80, 51, 71, 90, 51, 55, 102, 74, 79, 65, 81, 71, 55, 54, 52, 51, 73, 51, 49, 75, 60, 106, 46, 86, 56, 97, 58, 58, 65, 74, 82, 67, 65, 75, 66, 41, 59, 76, 68, 54, 54, 68, 62, 79, 80, 67, 66, 52, 63, 64, 87, 66, 59, 47, 68, 59, 58, 73, 64, 59, 71, 57, 65, 93, 71, 69, 74, 59, 77, 57, 79, 64, 75, 71, 63, 64, 67, 62, 74, 51, 78, 61, 60, 67, 51, 62, 84, 56, 67, 98, 53, 101, 58, 56, 52, 60, 82, 59, 77, 65, 99, 46, 61, 94, 61, 43, 62, 81, 70, 58, 65, 68, 68, 58, 60, 63, 64, 58, 89, 74, 66, 59, 68, 76, 67, 64, 47, 50, 68, 61, 56, 62, 57, 64, 44, 94, 50, 51, 58, 49, 73, 64, 138, 51, 57, 53, 51, 65, 64, 62, 78, 60, 71, 80, 66, 55, 56, 64, 55, 61, 58, 79, 61, 48, 61, 53, 56, 68, 73, 89, 70, 64, 78, 76, 48, 56, 59, 73, 65, 76, 52, 76, 64, 43, 77, 72, 84, 69, 92, 68, 66, 74, 60, 48, 67, 57, 72, 93, 77, 100, 48, 65, 64, 58, 56, 107, 56, 63, 51, 62, 52, 60, 57, 60, 61, 56, 91, 52, 63, 57, 72, 59, 57, 60, 66, 71, 56, 66, 66, 45, 58, 72, 84, 65, 69, 60, 53, 58, 51, 52, 69, 80, 72, 71, 83, 69, 72, 57, 53, 45, 73, 66, 57, 62, 76, 46, 43, 69, 49, 70, 46, 62, 89, 67, 52, 66, 52, 87, 98, 54, 74, 50, 106, 53, 43, 59, 56, 79, 55, 96, 45, 93, 62, 49, 47, 66, 50, 48, 82, 71, 50, 83, 110, 79, 91, 81, 35, 70, 68, 76, 60, 111, 73, 69, 41, 68, 62, 78, 77, 51, 68, 64, 64, 104, 50, 75, 78, 52, 63, 60, 100, 62, 59, 51, 74, 105, 90, 51, 78, 68, 127, 70, 101, 79, 56, 61, 71, 68, 66, 66, 57, 61, 72, 58, 65, 67, 61, 68, 61, 102, 58, 71, 47, 73, 75, 63, 55, 65, 70, 57, 66, 53, 47, 66, 81, 70, 44, 42, 91, 67, 74, 79, 63, 62, 80, 68, 86, 61, 67, 82, 75, 75, 77, 54, 53, 51, 67, 66, 63, 73, 73, 79, 59, 79, 54, 72, 85, 66, 49, 52, 61, 93, 62, 66, 72, 73, 73, 48, 68, 44, 44, 64, 64, 53, 56, 48, 73, 68, 112, 100, 65, 65, 54, 81, 70, 60, 56, 56, 92, 46, 68, 65, 49, 89, 60, 51, 57, 60, 66, 56, 76, 58, 61, 51, 76, 54, 59, 67, 75, 46, 64, 57, 66, 68, 50, 57, 49, 66, 67, 57, 47, 68, 63, 137, 47, 74, 81, 57, 70, 64, 70, 87, 45, 56, 68, 63, 74, 46, 71, 59, 46, 47, 55, 126, 61, 88, 76, 52, 88, 36, 52, 75, 48, 69, 55, 66, 80, 59, 63, 70, 78, 81, 68, 59, 57, 65, 66, 66, 67, 83, 58, 70, 64, 78, 56, 52, 65, 37, 56, 73, 55, 77, 74, 67, 65, 51, 63, 45, 66, 80, 81, 54, 61, 74, 61, 56, 87, 55, 54, 74, 72, 57, 68, 60, 65, 69, 61, 66, 83, 55, 59, 63, 62, 71, 108, 64, 80, 52, 59, 63, 49, 78, 52, 54, 55, 77, 57, 112, 108, 46, 60, 35, 57, 61, 66, 54, 78, 77, 62, 62, 67, 72, 69, 58, 61, 87, 81, 43, 75, 77, 54, 48, 80, 73, 79, 54, 67, 75, 89, 50, 97, 64, 85, 71, 77, 49, 56, 66, 46, 58, 51, 108, 43, 61, 58, 53, 56, 60, 44, 77, 68, 52, 59, 53, 61, 64, 80, 71, 63, 56, 72, 81, 85, 76, 63, 66, 68, 121, 62, 62, 53, 46, 48, 29, 70, 84, 94, 52, 59, 66, 74, 60, 50, 54, 57, 67, 60, 82, 85, 85, 49, 69, 53, 61, 55, 48, 54, 58, 57, 60, 72, 86, 102, 67, 37, 61, 54, 70, 65, 85, 60, 115, 77, 54, 38, 55, 91, 63, 58, 99, 70, 47, 74, 56, 62, 53, 66, 74, 70, 56, 71, 51, 93, 77, 56, 62, 57, 74, 109, 55, 60, 76, 55, 65, 54, 95, 52, 58, 69, 46, 57, 50, 113, 62, 63, 66, 48, 63, 63, 94, 74, 66, 109, 78, 58, 173, 51, 59, 54, 60, 57, 74, 65, 93, 48, 52, 57, 41, 53, 61, 79, 66, 51, 45, 55, 64, 77, 70, 70, 67, 80, 46, 58, 68, 84, 112, 82, 50, 35, 51, 45, 80, 75, 43, 56, 53, 61, 50, 70, 75, 74, 66, 73, 57, 89, 53, 50, 50, 40, 98, 68, 72, 48, 44, 76, 80, 118, 53, 54, 48, 55, 40, 66, 92, 65, 67, 60, 69, 64, 47, 57, 51, 64, 71, 60, 56, 54, 69, 61, 52, 54, 87, 72, 48, 60, 60, 58, 61, 61, 54, 62, 67, 56, 79, 67, 77, 58, 78, 71, 67, 100, 101, 40, 47, 72, 67, 48, 60, 50, 63, 61, 86, 73, 67, 90, 53, 80, 71, 80, 58, 58, 67, 76, 53, 57, 69, 61, 68, 65, 71, 68, 64, 80, 52, 56, 63, 54, 65, 45, 42, 85, 90, 59, 62, 51, 62, 94, 75, 52, 66, 106, 49, 47, 76, 53, 51, 48, 68, 79, 98, 56, 59, 71, 76, 78, 64, 78, 70, 49, 53, 80, 55, 57, 55, 53, 46, 30, 57, 51, 81, 57, 59, 51, 50, 53, 38, 71, 47, 54, 62, 92, 68, 63, 94, 82, 49, 87, 54, 66, 69, 78, 84, 49, 72, 51, 60, 48, 52, 73, 64, 40, 89, 60, 68, 91, 63, 50, 82, 52, 51, 88, 111, 79, 71, 63, 58, 72, 56, 57, 61, 71, 69, 59, 59, 156, 73, 62, 77, 65, 77, 68, 70, 97, 67, 51, 90, 42, 72, 61, 56, 84, 47, 61, 50, 44, 58, 65, 48, 97, 67, 51, 57, 36, 87, 85, 60, 109, 58, 75, 43, 75, 68, 55, 60, 65, 62, 64, 67, 71, 120, 63, 51, 94, 59, 60, 71, 54, 118, 58, 60, 56, 56, 74, 62, 63, 65, 85, 111, 74, 58, 118, 68, 53, 90, 64, 71, 43, 69, 65, 57, 67, 58, 96, 68, 66, 61, 50, 66, 51, 76, 54, 76, 60, 79, 63, 66, 66, 85, 62, 118, 40, 73, 57, 79, 80, 49, 55, 86, 63, 60, 66, 50, 74, 61, 65, 69, 59, 86, 70, 67, 60, 97, 68, 67, 60, 66, 68, 30, 72, 72, 57, 58, 59, 66, 44, 71, 51, 52, 79, 53, 57, 62, 44, 78, 54, 56, 62, 54, 65, 54, 72, 62, 63, 70, 66, 56, 54, 78, 73, 72, 69, 78, 68, 83, 68, 77, 59, 64, 62, 54, 87, 61, 67, 53, 75, 49, 42, 67, 62, 73, 55, 85, 67, 55, 80, 81, 78, 62, 46, 56, 55, 65, 90, 77, 86, 78, 80, 66, 51, 88, 92, 57, 78, 77, 63, 66, 63, 47, 45, 56, 77, 91, 74, 69, 54, 57, 70, 77, 71, 102, 59, 51, 89, 56, 53, 79, 63, 65, 55, 65, 71, 46, 99, 77, 56, 43, 69, 57, 88, 76, 71, 120, 68, 84, 68, 77, 64, 82, 64, 47, 52, 62, 68, 67, 60, 67, 62, 67, 86, 59, 56, 101, 62, 86, 71, 43, 47, 65, 60, 81, 62, 68, 53, 59, 56, 56, 89, 50, 95, 40, 77, 62, 53, 62, 69, 70, 81, 100, 72, 59, 56, 39, 54, 69, 73, 67, 68, 61, 83, 55, 61, 69, 56, 61, 72, 66, 55, 68, 58, 49, 65, 62, 67, 52, 66, 77, 59, 66, 64, 47, 83, 85, 68, 85, 61, 60, 95, 59, 62, 58, 73, 73, 84, 71, 84, 61, 69, 72, 47, 55, 66, 72, 57, 62, 74, 54, 113, 82, 56, 39, 71, 57, 55, 58, 73, 53, 63, 75, 56, 68, 60, 68, 77, 67, 87, 70, 63, 61, 54, 73, 81, 64, 89, 61, 71, 58, 57, 71, 48, 89, 48, 75, 81, 60, 82, 56, 65, 65, 40, 78, 49, 97, 69, 55, 45, 74, 46, 64, 66, 68, 72, 99, 83, 69, 77, 82, 75, 62, 79, 58, 135, 65, 64, 60, 73, 68, 67, 80, 70, 69, 73, 64, 100, 52, 62, 59, 56, 156, 63, 48, 80, 36, 61, 60, 71, 51, 66, 67, 51, 84, 57, 52, 63, 62, 69, 79, 55, 56, 69, 61, 87, 54, 52, 67, 53, 83, 90, 70, 64, 61, 61, 64, 76, 45, 61, 46, 54, 68, 73, 65, 90, 57, 77, 61, 68, 72, 58, 54, 69, 75, 71, 78, 56, 70, 81, 53, 55, 70, 56, 67, 59, 52, 70, 56, 70, 70, 91, 54, 60, 63, 62, 78, 59, 84, 48, 45, 53, 82, 58, 65, 46, 66, 39, 69, 46, 89, 57, 47, 78, 53, 53, 61, 70, 60, 59, 53, 65, 62, 57, 72, 87, 50, 131, 107, 70, 59, 73, 84, 52, 54, 65, 80, 64, 52, 64, 61, 63, 71, 74, 60, 90, 86, 59, 47, 68, 82, 50, 42, 58, 73, 43, 66, 69, 65, 47, 42, 43, 65, 67, 61, 63, 49, 66, 77, 65, 82, 60, 60, 75, 71, 76, 68, 84, 75, 71, 68, 69, 41, 78, 81, 42, 44, 70, 110, 102, 70, 67, 88, 67, 58, 98, 61, 73, 83, 67, 45, 50, 73, 49, 60, 71, 61, 69, 58, 65, 64, 51, 101, 74, 82, 62, 106, 79, 60, 69, 77, 52, 60, 64, 112, 87, 61, 56, 58, 87, 81, 69, 91, 66, 67, 70, 89, 80, 68, 80, 67, 57, 81, 77, 55, 66, 64, 58, 73, 51, 72, 68, 105, 87, 78, 60, 68, 58, 68, 58, 95, 74, 56, 76, 61, 53, 68, 53, 45, 70, 62, 64, 74, 74, 80, 72, 63, 63, 69, 74, 54, 70, 65, 67, 50, 67, 141, 66, 59, 62, 50, 68, 58, 53, 57, 74, 76, 56, 52, 54, 69, 42, 64, 44, 81, 62, 62, 150, 78, 70, 52, 54, 54, 79, 62, 77, 55, 77, 79, 56, 134, 50, 59, 78, 69, 89, 80, 87, 73, 51, 70, 69, 69, 89, 48, 65, 51, 49, 83, 90, 93, 55, 48, 54, 95, 65, 78, 76, 65, 50, 61, 58, 54, 72, 57, 54, 66, 58, 74, 67, 70, 82, 57, 61, 85, 61, 60, 44, 56, 51, 72, 51, 71, 73, 76, 71, 54, 72, 67, 61, 55, 79, 61, 79, 86, 49, 56, 63, 66, 63, 89, 57, 105, 52, 59, 63, 64, 56, 39, 43, 73, 82, 72, 55, 83, 71, 60, 52, 73, 61, 76, 72, 80, 59, 62, 84, 64, 59, 73, 66, 60, 49, 66, 67, 57, 54, 82, 68, 66, 47, 60, 84, 80, 60, 50, 49, 59, 53, 59, 47, 72, 64, 45, 70, 77, 50, 62, 93, 60, 70, 71, 69, 83, 53, 56, 53, 88, 96, 57, 59, 60, 100, 62, 61, 48, 70, 71, 57, 78, 56, 50, 42, 80, 49, 62, 64, 59, 58, 61, 71, 52, 72, 118, 68, 54, 60, 59, 72, 78, 97, 55, 76, 61, 67, 66, 68, 56, 54, 58, 64, 80, 73, 53, 57, 52, 77, 54, 50, 62, 52, 76, 62, 57, 75, 64, 95, 63, 56, 44, 73, 55, 53, 75, 70, 54, 77, 59, 70, 63, 60, 70, 93, 80, 49, 45, 54, 97, 52, 62, 48, 80, 66, 102, 85, 77, 46, 82, 59, 72, 63, 50, 66, 85, 140, 60, 62, 53, 56, 62, 62, 72, 50, 82, 55, 69, 69, 121, 56, 69, 60, 68, 57, 75, 79, 69, 92, 52, 60, 49, 56, 51, 72, 79, 96, 46, 85, 83, 66, 53, 78, 62, 43, 59, 56, 56, 73, 72, 63, 51, 58, 53, 66, 74, 60, 75, 77, 87, 55, 60, 82, 72, 56, 60, 69, 78, 85, 56, 54, 68, 60, 63, 76, 52, 77, 61, 69, 61, 73, 82, 65, 81, 85, 85, 58, 84, 76, 78, 59, 59, 63, 60, 48, 76, 52, 66, 43, 64, 66, 79, 83, 74, 48, 78, 51, 56, 75, 65, 61, 95, 87, 64, 56, 69, 84, 63, 56, 45, 48, 79, 59, 49, 80, 77, 52, 47, 66, 69, 45, 65, 58, 72, 111, 54, 51, 80, 72, 78, 64, 67, 106, 48, 67, 43, 55, 61, 77, 57, 53, 71, 70, 54, 70, 63, 73, 68, 55, 58, 65, 76, 62, 95, 42, 74, 55, 91, 59, 59, 68, 67, 65, 87, 82, 51, 97, 62, 73, 81, 68, 58, 68, 60, 66, 61, 60, 26, 72, 46, 78, 56, 59, 46, 51, 56, 58, 39, 50, 54, 67, 66, 55, 78, 79, 63, 61, 67, 82, 81, 81, 65, 51, 70, 57, 53, 65, 67, 42, 72, 78, 79, 68, 90, 80, 57, 62, 61, 51, 55, 56, 93, 48, 60, 63, 71, 58, 95, 64, 76, 63, 89, 74, 58, 51, 73, 69, 99, 42, 64, 54, 66, 55, 55, 63, 94, 62, 49, 66, 71, 78, 92, 58, 66, 77, 59, 65, 61, 79, 65, 57, 57, 59, 59, 42, 68, 87, 57, 59, 48, 63, 69, 66, 80, 68, 43, 65, 69, 69, 50, 113, 60, 73, 46, 68, 57, 40, 77, 65, 68, 64, 89, 58, 58, 74, 62, 71, 62, 73, 49, 62, 62, 64, 83, 65, 60, 80, 65, 54, 61, 70, 73, 51, 50, 69, 75, 57, 43, 85, 53, 67, 74, 56, 51, 59, 53, 74, 58, 61, 73, 70, 63, 72, 67, 56, 41, 67, 60, 61, 59, 63, 97, 65, 79, 64, 67, 82, 48, 54, 55, 66, 71, 77, 61, 60, 42, 73, 80, 74, 59, 69, 86, 45, 71, 101, 81, 73, 54, 50, 42, 50, 64, 63, 56, 49, 79, 64, 77, 51, 58, 60, 52, 65, 66, 75, 51, 78, 67, 65, 61, 66, 61, 82, 85, 49, 57, 56, 68, 83, 70, 50, 56, 56, 69, 83, 60, 55, 66, 45, 67, 62, 91, 71, 60, 34, 74, 68, 81, 82, 62, 64, 88, 79, 67, 100, 90, 68, 67, 49, 59, 51, 76, 58, 141, 61, 40, 65, 56, 69, 71, 59, 94, 70, 53, 60, 69, 72, 57, 66, 56, 82, 85, 80, 53, 60, 46, 66, 53, 47, 68, 68, 65, 72, 67, 52, 69, 66, 89, 67, 71, 59, 71, 89, 69, 71, 78, 67, 68, 67, 66, 75, 67, 62, 71, 47, 73, 63, 68, 70, 52, 55, 89, 66, 42, 82, 79, 68, 60, 62, 57, 70, 58, 69, 53, 68, 47, 65, 62, 68, 73, 61, 79, 50, 65, 80, 70, 69, 73, 65, 71, 81, 76, 39, 69, 75, 67, 76, 59, 54, 83, 82, 64, 58, 56, 113, 53, 62, 57, 55, 71, 50, 53, 62, 64, 93, 79, 51, 85, 65, 61, 74, 61, 36, 61, 68, 67, 68, 61, 48, 54, 106, 74, 55, 52, 65, 80, 68, 80, 59, 78, 84, 56, 67, 59, 51, 71, 56, 72, 62, 59, 65, 88, 99, 67, 93, 81, 61, 48, 71, 78, 69, 69, 64, 94, 82, 85, 60, 52, 73, 61, 70, 59, 70, 73, 51, 55, 78, 49, 60, 35, 51, 76, 71, 76, 52, 58, 82, 62, 111, 56, 59, 60, 82, 62, 44, 83, 54, 78, 70, 90, 71, 68, 71, 67, 82, 74, 61, 59, 64, 50, 60, 65, 77, 93, 55, 54, 38, 60, 87, 69, 80, 81, 56, 85, 64, 62, 60, 56, 62, 66, 54, 43, 65, 48, 75, 46, 52, 41, 74, 63, 67, 68, 51, 51, 54, 51, 72, 61, 76, 53, 80, 76, 59, 42, 53, 45, 71, 71, 69, 61, 62, 73, 52, 50, 68, 46, 77, 60, 74, 58, 52, 80, 58, 74, 57, 55, 51, 65, 46, 62, 64, 80, 65, 82, 62, 88, 62, 82, 86, 66, 80, 50, 63, 51, 63, 83, 61, 67, 60, 74, 53, 91, 51, 105, 70, 64, 65, 74, 60, 146, 91, 61, 73, 47, 41, 71, 70, 63, 84, 52, 70, 57, 75, 79, 55, 69, 71, 78, 86, 65, 53, 104, 67, 72, 80, 58, 83, 77, 68, 58, 76, 72, 60, 77, 75, 35, 73, 81, 62, 50, 70, 74, 63, 52, 71, 59, 57, 62, 50, 77, 64, 44, 52, 75, 56, 46, 69, 68, 59, 102, 66, 51, 71, 69, 53, 95, 74, 72, 91, 68, 67, 81, 67, 58, 95, 42, 72, 91, 73, 57, 57, 64, 78, 59, 77, 63, 70, 45, 57, 34, 57, 71, 72, 80, 58, 57, 38, 77, 78, 59, 86, 72, 50, 78, 63, 91, 62, 45, 63, 103, 58, 58, 75, 61, 53, 45, 55, 64, 91, 68, 75, 54, 47, 68, 63, 65, 60, 69, 64, 37, 53, 78, 135, 71, 64, 48, 60, 54, 73, 75, 61, 60, 118, 55, 68, 90, 58, 62, 27, 69, 43, 55, 70, 81, 76, 72, 87, 60, 98, 74, 66, 69, 71, 51, 63, 63, 85, 78, 86, 46, 52, 77, 61, 74, 54, 51, 66, 88, 63, 75, 41, 64, 66, 75, 63, 88, 64, 66, 74, 43, 51, 56, 44, 62, 87, 100, 54, 71, 45, 78, 95, 94, 66, 69, 52, 54, 52, 103, 81, 60, 65, 50, 103, 63, 106, 83, 80, 85, 66, 50, 77, 68, 52, 75, 37, 58, 99, 59, 63, 47, 65, 63, 60, 51, 55, 103, 60, 57, 66, 50, 75, 61, 67, 64, 67, 71, 48, 74, 69, 62, 112, 60, 57, 47, 53, 74, 55, 67, 82, 59, 63, 61, 99, 64, 54, 73, 53, 74, 65, 75, 50, 38, 70, 69, 60, 66, 58, 49, 68, 61, 73, 61, 70, 60, 57, 71, 64, 65, 89, 70, 59, 64, 75, 69, 55, 59, 39, 56, 55, 58, 71, 51, 77, 73, 67, 56, 48, 58, 84, 70, 66, 72, 59, 77, 48, 60, 64, 69, 59, 58, 57, 58, 58, 48, 50, 86, 59, 76, 65, 82, 52, 65, 74, 111, 67, 97, 73, 58, 69, 122, 56, 52, 53, 57, 65, 47, 67, 67, 63, 60, 57, 53, 53, 68, 79, 89, 62, 56, 50, 57, 46, 77, 54, 60, 57, 61, 75, 67, 65, 59, 67, 58, 66, 64, 73, 111, 56, 89, 73, 63, 55, 75, 76, 70, 78, 72, 52, 102, 69, 56, 80, 56, 58, 54, 74, 48, 72, 71, 61, 71, 76, 52, 55, 74, 41, 62, 56, 68, 72, 94, 53, 49, 161, 98, 60, 68, 79, 68, 75, 61, 73, 35, 48, 72, 89, 65, 75, 64, 56, 76, 58, 54, 72, 43, 62, 71, 95, 91, 73, 44, 59, 64, 51, 57, 80, 55, 71, 65, 72, 57, 64, 50, 58, 35, 85, 75, 55, 72, 57, 70, 63, 57, 91, 57, 50, 49, 50, 55, 55, 57, 63, 47, 69, 46, 54, 67, 59, 71, 63, 52, 75, 74, 62, 62, 73, 75, 62, 53, 72, 73, 72, 73, 53, 83, 67, 59, 67, 73, 63, 68, 65, 106, 45, 63, 86, 57, 52, 46, 40, 57, 74, 69, 87, 62, 80, 36, 36, 63, 93, 77, 52, 72, 61, 52, 133, 59, 86, 46, 55, 73, 74, 73, 43, 83, 63, 88, 61, 59, 70, 69, 77, 66, 80, 120, 40, 88, 63, 71, 49, 68, 66, 86, 52, 71, 67, 57, 85, 62, 81, 85, 66, 57, 77, 59, 51, 84, 68, 56, 49, 60, 64, 79, 64, 84, 44, 65, 69, 39, 67, 55, 76, 93, 55, 53, 73, 72, 81, 75, 74, 72, 100, 89, 78, 59, 53, 69, 53, 73, 62, 51, 74, 78, 58, 42, 117, 61, 64, 58, 75, 58, 50, 71, 69, 62, 77, 66, 40, 67, 76, 64, 52, 84, 60, 46, 55, 60, 56, 86, 46, 73, 66, 73, 60, 64, 74, 53, 65, 68, 73, 58, 67, 56, 65, 58, 89, 66, 111, 58, 86, 70, 80, 53, 60, 55, 64, 49, 60, 69, 64, 53, 58, 60, 45, 55, 57, 46, 63, 88, 61, 93, 67, 37, 62, 49, 72, 80, 79, 91, 67, 62, 54, 69, 85, 79, 56, 54, 85, 59, 79, 79, 79, 51, 60, 58, 60, 75, 90, 55, 77, 67, 61, 54, 68, 51, 66, 52, 57, 72, 64, 59, 63, 52, 79, 74, 61, 67, 70, 69, 71, 50, 65, 79, 52, 68, 53, 57, 53, 80, 160, 45, 71, 59, 92, 65, 86, 67, 67, 73, 55, 50, 65, 59, 74, 76, 93, 52, 66, 67, 33, 54, 69, 87, 57, 75, 67, 43, 76, 61, 64, 67, 68, 80, 70, 68, 103, 84, 62, 63, 45, 68, 60, 63, 60, 64, 62, 78, 76, 43, 66, 75, 75, 56, 59, 80, 88, 50, 63, 66, 52, 79, 65, 59, 90, 61, 45, 57, 69, 83, 83, 53, 68, 73, 58, 61, 59, 75, 45, 60, 81, 84, 44, 40, 63, 84, 78, 80, 49, 23, 62, 68, 81, 56, 81, 70, 59, 67, 48, 26, 66, 63, 60, 85, 48, 64, 78, 91, 54, 67, 68, 62, 47, 62, 68, 88, 74, 73, 61, 47, 59, 87, 65, 59, 72, 88, 75, 72, 71, 60, 77, 74, 48, 67, 59, 57, 79, 75, 67, 62, 46, 54, 64, 59, 92, 86, 62, 88, 69, 103, 42, 68, 47, 58, 62, 59, 59, 66, 62, 55, 57, 56, 51, 59, 65, 74, 69, 60, 60, 64, 76, 74, 60, 51, 88, 56, 81, 58, 69, 45, 65, 80, 60, 104, 68, 76, 64, 82, 73, 69, 52, 79, 96, 71, 53, 95, 74, 64, 68, 82, 56, 61, 52, 59, 60, 85, 87, 59, 68, 91, 67, 79, 53, 66, 58, 48, 43, 40, 77, 76, 86, 68, 75, 61, 85, 46, 78, 71, 63, 52, 58, 47, 62, 41, 118, 69, 50, 69, 69, 48, 75, 67, 49, 75, 62, 59, 72, 91, 67, 58, 67, 62, 64, 69, 52, 80, 49, 53, 58, 67, 65, 57, 84, 47, 51, 62, 63, 70, 60, 79, 66, 53, 43, 89, 59, 65, 67, 69, 81, 82, 77, 87, 70, 55, 61, 70, 68, 65, 61, 77, 74, 75, 48, 63, 54, 60, 76, 41, 70, 56, 64, 49, 70, 69, 47, 49, 47, 67, 46, 46, 51, 59, 60, 65, 52, 63, 82, 65, 92, 70, 74, 63, 54, 54, 70, 62, 47, 84, 68, 68, 64, 72, 78, 72, 68, 58, 65, 48, 52, 66, 79, 70, 53, 64, 80, 55, 61, 46, 42, 95, 53, 53, 80, 63, 48, 110, 59, 63, 133, 58, 96, 50, 75, 61, 34, 61, 55, 107, 87, 101, 69, 57, 73, 73, 85, 73, 71, 60, 46, 59, 109, 55, 57, 90, 65, 79, 62, 57, 60, 52, 59, 49, 52, 57, 61, 68, 59, 56, 50, 67, 51, 55, 99, 75, 74, 96, 79, 91, 64, 64, 59, 60, 68, 71, 53, 48, 73, 49, 55, 75, 57, 51, 59, 69, 69, 89, 67, 43, 85, 49, 75, 77, 72, 58, 43, 81, 72, 86, 67, 51, 68, 73, 77, 101, 84, 68, 70, 55, 61, 62, 71, 42, 81, 65, 86, 74, 47, 62, 62, 65, 64, 68, 70, 60, 57, 53, 81, 57, 67, 53, 88, 53, 65, 64, 70, 59, 171, 66, 51, 60, 74, 66, 66, 62, 66, 57, 69, 48, 57, 58, 55, 52, 68, 47, 59, 46, 74, 34, 72, 49, 47, 60, 76, 58, 94, 41, 56, 55, 81, 104, 90, 73, 41, 76, 63, 59, 67, 51, 74, 112, 64, 65, 135, 69, 66, 36, 55, 78, 52, 72, 46, 46, 63, 65, 68, 65, 62, 97, 71, 69, 65, 87, 49, 44, 49, 69, 65, 79, 67, 56, 74, 75, 54, 61, 69, 54, 61, 71, 58, 56, 74, 53, 63, 66, 71, 85, 66, 44, 44, 50, 66, 62, 60, 57, 53, 77, 67, 68, 72, 59, 65, 47, 73, 70, 52, 56, 77, 56, 74, 83, 80, 48, 57, 83, 86, 97, 33, 70, 56, 57, 52, 63, 66, 64, 64, 71, 90, 54, 60, 49, 59, 42, 59, 80, 81, 57, 78, 55, 69, 43, 77, 59, 57, 77, 71, 60, 48, 48, 66, 209, 50, 95, 97, 76, 57, 61, 66, 69, 62, 73, 61, 61, 48, 62, 74, 60, 47, 45, 79, 68, 59, 76, 64, 59, 75, 79, 58, 81, 56, 64, 51, 66, 72, 51, 93, 88, 64, 64, 65, 79, 71, 109, 57, 66, 47, 84, 64, 71, 68, 66, 52, 74, 45, 36, 51, 92, 81, 66, 60, 79, 80, 57, 85, 75, 57, 88, 72, 68, 47, 81, 79, 54, 87, 83, 61, 72, 86, 86, 86, 59, 44, 52, 66, 42, 68, 58, 53, 65, 59, 48, 71, 51, 74, 65, 78, 49, 66, 53, 67, 68, 77, 53, 63, 73, 67, 53, 55, 67, 72, 48, 57, 47, 59, 92, 78, 64, 81, 62, 61, 59, 104, 68, 62, 50, 67, 56, 70, 66, 71, 64, 55, 71, 62, 75, 96, 59, 62, 55, 77, 63, 60, 74, 60, 63, 63, 71, 70, 69, 64, 58, 49, 96, 72, 74, 72, 66, 68, 50, 63, 65, 106, 69, 64, 41, 83, 68, 93, 61, 43, 49, 53, 78, 62, 89, 70, 54, 29, 47, 64, 71, 46, 68, 59, 52, 59, 71, 70, 72, 91, 63, 70, 56, 88, 71, 66, 73, 64, 73, 59, 49, 61, 83, 64, 66, 67, 54, 70, 97, 74, 75, 54, 55, 83, 62, 78, 79, 54, 100, 69, 72, 58, 61, 57, 99, 148, 92, 80, 74, 60, 71, 82, 55, 78, 61, 70, 87, 56, 88, 77, 74, 46, 62, 51, 52, 44, 70, 78, 82, 59, 49, 53, 62, 57, 62, 92, 63, 76, 83, 53, 68, 85, 44, 64, 63, 65, 71, 65, 70, 54, 57, 45, 57, 49, 34, 68, 77, 56, 63, 65, 59, 50, 78, 89, 43, 61, 59, 94, 49, 67, 65, 52, 82, 76, 59, 77, 95, 69, 86, 81, 104, 57, 49, 47, 38, 90, 67, 103, 87, 80, 69, 78, 80, 55, 54, 70, 50, 75, 63, 81, 104, 67, 79, 71, 53, 50, 64, 77, 72, 65, 95, 52, 48, 57, 78, 46, 60, 74, 45, 79, 58, 65, 53, 78, 54, 88, 74, 76, 48, 88, 64, 46, 55, 62, 111, 83, 61, 67, 46, 61, 58, 60, 60, 47, 65, 73, 61, 77, 60, 72, 54, 52, 79, 88, 43, 75, 69, 56, 76, 88, 69, 69, 62, 51, 63, 121, 58, 60, 51, 82, 82, 54, 61, 68, 50, 63, 124, 48, 95, 82, 54, 54, 73, 57, 51, 72, 60, 72, 56, 61, 53, 75, 61, 69, 78, 66, 68, 44, 61, 56, 65, 60, 42, 77, 48, 35, 56, 74, 81, 97, 79, 50, 71, 76, 76, 59, 88, 70, 53, 58, 72, 86, 67, 89, 91, 62, 88, 59, 108, 64, 53, 46, 52, 73, 69, 60, 64, 49, 95, 71, 68, 84, 66, 73, 89, 31, 63, 55, 66, 62, 64, 51, 77, 89, 72, 54, 66, 81, 40, 56, 62, 50, 57, 73, 74, 74, 68, 53, 84, 80, 55, 46, 65, 50, 68, 67, 39, 51, 65, 49, 85, 68, 89, 61, 55, 73, 60, 60, 89, 61, 103, 45, 53, 53, 54, 46, 91, 65, 65, 63, 56, 88, 58, 68, 90, 70, 58, 85, 76, 54, 78, 67, 78, 63, 75, 76, 70, 53, 30, 50, 66, 59, 111, 82, 63, 87, 51, 58, 70, 99, 57, 74, 63, 69, 30, 71, 57, 65, 61, 84, 73, 59, 56, 73, 64, 75, 88, 61, 50, 58, 70, 59, 101, 66, 63, 48, 99, 58, 64, 43, 93, 62, 53, 70, 71, 51, 61, 56, 44, 64, 73, 44, 66, 53, 59, 49, 48, 73, 65, 59, 88, 65, 84, 59, 59, 62, 65, 73, 63, 63, 70, 92, 51, 39, 72, 63, 72, 67, 61, 138, 73, 70, 64, 71, 56, 60, 51, 82, 65, 70, 62, 56, 74, 40, 61, 62, 70, 37, 58, 56, 150, 65, 67, 57, 50, 98, 57, 48, 64, 58, 54, 71, 86, 63, 103, 51, 68, 52, 49, 79, 42, 58, 66, 53, 66, 68, 58, 91, 64, 45, 56, 77, 50, 75, 60, 54, 65, 68, 64, 45, 131, 75, 57, 64, 70, 89, 80, 67, 58, 55, 46, 44, 77, 60, 60, 83, 58, 93, 82, 67, 59, 90, 56, 58, 70, 66, 68, 71, 54, 82, 78, 79, 86, 66, 77, 74, 62, 81, 67, 48, 63, 80, 61, 46, 45, 62, 68, 78, 51, 65, 56, 51, 51, 70, 76, 74, 75, 49, 63, 85, 91, 64, 71, 56, 70, 85, 69, 52, 42, 68, 78, 60, 82, 36, 65, 68, 57, 62, 50, 53, 53, 69, 43, 60, 66, 53, 69, 50, 47, 83, 60, 62, 57, 52, 98, 69, 58, 73, 47, 65, 44, 108, 71, 50, 65, 84, 72, 65, 43, 76, 73, 59, 55, 45, 93, 41, 56, 88, 73, 58, 75, 56, 58, 50, 82, 64, 78, 53, 106, 82, 108, 59, 66, 54, 64, 98, 56, 70, 77, 72, 77, 69, 49, 76, 75, 46, 40, 39, 55, 108, 56, 35, 55, 67, 51, 62, 61, 68, 123, 49, 78, 59, 54, 62, 95, 57, 68, 60, 73, 45, 65, 92, 60, 56, 61, 55, 42, 63, 65, 64, 70, 57, 63, 49, 71, 75, 44, 90, 66, 51, 44, 63, 52, 60, 92, 102, 70, 57, 57, 74, 65, 101, 77, 63, 61, 57, 83, 68, 60, 70, 75, 115, 60, 60, 57, 84, 76, 81, 92, 55, 59, 55, 70, 66, 55, 87, 70, 66, 63, 61, 60, 60, 68, 53, 50, 54, 52, 74, 57, 70, 77, 60, 52, 60, 76, 65, 72, 69, 54, 53, 66, 81, 83, 89, 65, 92, 76, 54, 50, 65, 71, 60, 65, 66, 61, 63, 100, 40, 53, 47, 50, 61, 60, 80, 67, 62, 107, 50, 68, 62, 60, 72, 52, 69, 58, 80, 60, 46, 76, 61, 59, 75, 76, 76, 66, 74, 54, 80, 54, 56, 65, 70, 64, 86, 69, 65, 77, 45, 48, 60, 59, 53, 70, 73, 52, 80, 74, 87, 57, 74, 62, 107, 59, 63, 67, 56, 58, 57, 114, 76, 55, 72, 69, 54, 47, 74, 70, 73, 61, 65, 57, 63, 84, 67, 55, 69, 67, 66, 88, 49, 64, 57, 50, 76, 67, 109, 85, 77, 66, 78, 76, 79, 54, 61, 58, 59, 32, 61, 43, 54, 57, 94, 90, 76, 75, 57, 65, 69, 61, 66, 51, 54, 55, 64, 76, 59, 60, 52, 81, 52, 53, 40, 65, 71, 69, 57, 102, 70, 90, 73, 67, 62, 55, 70, 50, 61, 54, 56, 52, 57, 61, 86, 94, 52, 81, 98, 58, 77, 68, 71, 52, 67, 65, 59, 63, 68, 45, 56, 79, 100, 59, 46, 65, 79, 60, 63, 41, 76, 78, 102, 81, 55, 76, 79, 66, 77, 55, 79, 46, 99, 83, 106, 53, 68, 71, 71, 45, 47, 50, 66, 50, 55, 75, 69, 76, 72, 72, 51, 49, 44, 71, 53, 68, 77, 88, 37, 79, 62, 58, 68, 66, 49, 53, 67, 55, 41, 45, 59, 70, 88, 57, 93, 75, 99, 47, 71, 72, 58, 79, 73, 86, 73, 77, 75, 53, 71, 83, 86, 58, 53, 69, 67, 55, 57, 79, 55, 59, 73, 51, 83, 66, 62, 63, 69, 93, 69, 79, 75, 107, 116, 48, 57, 77, 88, 52, 61, 64, 74, 73, 40, 51, 42, 75, 71, 54, 63, 57, 97, 71, 63, 42, 65, 67, 69, 60, 77, 71, 56, 71, 75, 68, 58, 45, 80, 75, 66, 51, 78, 49, 47, 67, 67, 37, 71, 75, 50, 86, 59, 80, 71, 67, 64, 51, 81, 64, 69, 67, 68, 76, 77, 58, 131, 49, 69, 52, 64, 73, 93, 52, 70, 53, 73, 64, 61, 70, 63, 53, 60, 69, 57, 59, 54, 50, 43, 63, 74, 42, 73, 74, 71, 46, 58, 49, 98, 55, 64, 45, 53, 41, 64, 60, 66, 47, 91, 80, 64, 47, 54, 56, 32, 77, 65, 65, 65, 60, 97, 56, 69, 87, 58, 61, 46, 74, 74, 85, 65, 66, 77, 71, 62, 80, 89, 95, 54, 59, 63, 64, 83, 62, 76, 58, 77, 59, 54, 70, 65, 81, 75, 70, 54, 63, 83, 97, 67, 60, 60, 65, 56, 70, 72, 68, 75, 108, 57, 55, 68, 90, 52, 70, 59, 64, 53, 60, 77, 60, 67, 67, 74, 81, 69, 57, 60, 69, 68, 48, 57, 57, 73, 74, 57, 70, 60, 66, 56, 75, 57, 51, 90, 58, 58, 53, 62, 85, 51, 64, 72, 47, 53, 70, 68, 55, 46, 63, 94, 60, 56, 64, 64, 57, 56, 71, 77, 89, 61, 69, 56, 47, 57, 92, 72, 70, 67, 70, 67, 68, 59, 84, 53, 55, 89, 66, 69, 78, 53, 83, 101, 67, 64, 59, 39, 62, 43, 57, 54, 52, 77, 64, 84, 102, 63, 56, 64, 70, 55, 55, 61, 65, 68, 65, 60, 111, 59, 69, 88, 77, 48, 74, 70, 109, 68, 65, 77, 45, 90, 53, 52, 92, 87, 70, 70, 60, 63, 54, 55, 64, 74, 95, 53, 56, 64, 56, 75, 73, 62, 61, 50, 61, 86, 55, 48, 59, 63, 57, 68, 55, 66, 67, 64, 59, 72, 52, 44, 69, 82, 83, 54, 62, 86, 73, 62, 57, 51, 53, 52, 68, 64, 106, 61, 65, 72, 51, 103, 49, 49, 84, 104, 62, 71, 57, 60, 86, 69, 64, 66, 63, 50, 67, 74, 64, 69, 92, 55, 77, 65, 65, 62, 53, 59, 68, 66, 57, 72, 50, 124, 92, 66, 51, 60, 64, 65, 55, 77, 112, 51, 53, 94, 85, 45, 60, 70, 59, 71, 59, 61, 78, 57, 53, 54, 68, 69, 111, 68, 81, 44, 56, 62, 50, 52, 80, 53, 70, 59, 71, 52, 49, 63, 108, 70, 68, 56, 70, 65, 62, 60, 102, 64, 55, 75, 97, 66, 56, 68, 60, 70, 65, 31, 60, 73, 78, 58, 55, 55, 56, 62, 122, 55, 52, 45, 62, 62, 75, 56, 60, 61, 51, 55, 51, 64, 61, 50, 61, 61, 56, 52, 46, 67, 63, 89, 56, 63, 86, 69, 69, 68, 95, 75, 74, 47, 57, 70, 78, 52, 56, 63, 82, 52, 87, 77, 67, 70, 59, 48, 59, 113, 63, 68, 55, 58, 51, 37, 62, 70, 76, 68, 69, 51, 56, 56, 46, 47, 83, 66, 65, 65, 76, 58, 71, 46, 65, 55, 61, 72, 52, 59, 87, 77, 83, 61, 65, 60, 61, 64, 90, 61, 56, 45, 61, 72, 51, 106, 43, 53, 73, 56, 51, 56, 61, 86, 80, 45, 67, 52, 72, 55, 64, 69, 73, 82, 65, 83, 67, 58, 76, 59, 63, 46, 64, 63, 65, 60, 54, 53, 52, 95, 104, 77, 42, 64, 72, 53, 77, 54, 79, 46, 49, 47, 46, 65, 59, 57, 64, 72, 55, 87, 81, 69, 57, 63, 63, 62, 46, 67, 50, 65, 63, 43, 64, 67, 54, 83, 110, 69, 66, 59, 37, 129, 58, 73, 77, 72, 61, 75, 66, 49, 81, 55, 62, 59, 76, 61, 79, 66, 55, 56, 48, 55, 82, 78, 78, 50, 67, 45, 53, 74, 73, 49, 68, 56, 76, 79, 49, 46, 58, 90, 63, 67, 87, 74, 55, 73, 58, 36, 69, 71, 58, 58, 55, 71, 71, 65, 81, 70, 48, 90, 57, 41, 45, 57, 56, 62, 51, 52, 66, 70, 64, 79, 46, 55, 77, 68, 56, 61, 83, 48, 58, 54, 68, 59, 68, 53, 44, 62, 50, 74, 57, 65, 72, 73, 56, 69, 65, 67, 67, 71, 55, 108, 53, 95, 75, 72, 63, 64, 60, 77, 53, 51, 69, 68, 55, 61, 72, 77, 52, 60, 65, 66, 60, 72, 65, 84, 57, 56, 78, 74, 69, 47, 57, 59, 66, 70, 68, 93, 51, 59, 68, 57, 77, 55, 59, 53, 49, 78, 53, 77, 56, 61, 68, 72, 63, 52, 97, 65, 56, 69, 61, 65, 89, 68, 73, 49, 83, 85, 52, 52, 50, 70, 66, 72, 78, 69, 68, 68, 68, 73, 97, 46, 64, 61, 73, 95, 79, 54, 68, 66, 45, 53, 57, 57, 58, 55, 54, 89, 79, 57, 122, 66, 56, 79, 54, 76, 57, 63, 70, 103, 80, 69, 60, 34, 56, 55, 56, 79, 61, 57, 70, 80, 88, 65, 50, 64, 51, 83, 50, 81, 77, 89, 68, 57, 66, 55, 79, 61, 76, 85, 61, 81, 71, 63, 59, 59, 57, 55, 83, 59, 63, 96, 60, 53, 81, 74, 83, 70, 53, 94, 60, 87, 43, 57, 72, 87, 59, 60, 61, 140, 46, 72, 49, 65, 60, 65, 60, 53, 70, 55, 76, 57, 56, 66, 53, 79, 48, 65, 54, 67, 51, 72, 42, 63, 63, 88, 98, 79, 58, 53, 81, 59, 62, 50, 54, 47, 53, 80, 56, 64, 55, 62, 73, 59, 96, 47, 70, 67, 61, 92, 80, 75, 58, 71, 80, 88, 72, 71, 59, 63, 82, 61, 56, 71, 65, 86, 64, 49, 68, 76, 51, 81, 71, 64, 64, 52, 61, 75, 58, 97, 46, 59, 65, 80, 78, 71, 54, 51, 50, 75, 78, 103, 68, 75, 48, 74, 63, 64, 67, 66, 103, 58, 73, 67, 56, 50, 52, 64, 53, 56, 72, 61, 72, 78, 56, 59, 75, 64, 70, 89, 58, 88, 81, 77, 61, 81, 77, 60, 59, 69, 75, 66, 72, 56, 69, 41, 80, 71, 85, 65, 56, 63, 67, 89, 47, 90, 71, 83, 65, 69, 47, 89, 63, 57, 60, 66, 73, 63, 68, 82, 69, 80, 67, 74, 65, 66, 56, 53, 64, 61, 56, 64, 54, 69, 65, 50, 59, 43, 79, 80, 59, 61, 70, 63, 65, 69, 104, 69, 58, 62, 42, 98, 65, 96, 55, 60, 62, 62, 48, 77, 52, 71, 71, 82, 61, 54, 67, 55, 47, 84, 53, 75, 50, 63, 67, 64, 65, 69, 72, 55, 75, 70, 65, 54, 105, 60, 44, 51, 54, 91, 54, 54, 61, 60, 53, 33, 71, 67, 75, 60, 66, 53, 75, 84, 65, 72, 101, 63, 57, 60, 83, 62, 69, 87, 47, 56, 74, 69, 62, 52, 109, 58, 42, 58, 68, 64, 82, 68, 59, 61, 60, 71, 60, 55, 54, 66, 81, 49, 52, 60, 49, 84, 71, 44, 60, 65, 86, 75, 57, 55, 66, 53, 85, 48, 69, 102, 76, 70, 70, 56, 87, 70, 76, 63, 61, 55, 52, 36, 66, 76, 79, 73, 75, 62, 55, 72, 79, 66, 75, 80, 54, 61, 59, 69, 73, 78, 66, 68, 65, 58, 57, 59, 58, 89, 64, 55, 55, 49, 110, 60, 73, 81, 106, 92, 79, 83, 67, 67, 49, 69, 47, 56, 71, 80, 83, 63, 62, 58, 85, 71, 52, 56, 60, 79, 75, 103, 45, 54, 56, 71, 70, 59, 41, 79, 43, 74, 69, 57, 72, 66, 61, 86, 97, 63, 55, 73, 83, 57, 66, 61, 61, 67, 60, 70, 56, 42, 55, 77, 42, 78, 51, 50, 64, 55, 66, 113, 42, 59, 46, 65, 54, 68, 56, 50, 56, 52, 64, 75, 60, 89, 71, 65, 72, 57, 65, 50, 53, 14, 58, 65, 82, 127, 42, 57, 54, 101, 63, 68, 53, 58, 57, 59, 46, 64, 76, 65, 62, 51, 54, 35, 79, 53, 69, 76, 68, 65, 79, 72, 64, 64, 69, 37, 50, 64, 62, 64, 60, 57, 68, 59, 58, 55, 70, 55, 95, 71, 64, 55, 70, 96, 72, 68, 56, 72, 93, 43, 82, 82, 52, 60, 62, 78, 58, 56, 75, 56, 113, 37, 69, 50, 74, 71, 61, 72, 74, 56, 59, 71, 74, 69, 70, 43, 56, 57, 52, 61, 68, 70, 48, 43, 58, 52, 72, 76, 55, 63, 96, 40, 88, 58, 75, 52, 80, 54, 73, 68, 91, 63, 65, 50, 67, 72, 51, 50, 58, 53, 52, 64, 35, 81, 47, 52, 54, 72, 83, 84, 59, 67, 57, 76, 79, 47, 66, 42, 74, 51, 52, 70, 66, 49, 71, 64, 60, 60, 43, 62, 56, 70, 64, 67, 67, 69, 67, 63, 82, 98, 53, 70, 52, 71, 70, 82, 67, 53, 67, 114, 67, 65, 89, 61, 78, 64, 59, 52, 47, 54, 93, 65, 61, 68, 48, 115, 68, 83, 38, 56, 97, 48, 76, 60, 64, 69, 63, 67, 88, 82, 55, 64, 83, 69, 67, 78, 57, 72, 81, 75, 57, 62, 56, 65, 81, 124, 78, 51, 66, 65, 73, 78, 67, 53, 57, 70, 65, 65, 62, 65, 45, 60, 76, 79, 49, 63, 52, 51, 73, 63, 60, 63, 58, 54, 47, 103, 74, 78, 56, 64, 60, 54, 41, 70, 50, 66, 61, 83, 65, 60, 49, 57, 75, 99, 57, 68, 67, 70, 59, 52, 64, 82, 42, 73, 58, 89, 64, 57, 81, 56, 54, 87, 44, 71, 81, 67, 66, 66, 87, 83, 73, 65, 77, 64, 72, 65, 51, 73, 57, 42, 85, 59, 65, 84, 59, 72, 56, 82, 122, 78, 45, 79, 80, 45, 58, 63, 79, 53, 69, 68, 64, 81, 71, 62, 47, 49, 63, 58, 73, 67, 76, 52, 51, 72, 88, 63, 63, 35, 77, 55, 52, 59, 58, 59, 49, 58, 66, 51, 82, 50, 58, 60, 95, 57, 65, 58, 48, 51, 62, 83, 73, 81, 62, 63, 36, 70, 49, 79, 75, 65, 73, 52, 79, 72, 54, 62, 78, 88, 72, 80, 65, 59, 41, 66, 120, 76, 74, 67, 53, 62, 61, 48, 58, 61, 85, 52, 75, 93, 69, 64, 49, 43, 49, 56, 51, 78, 52, 71, 67, 58, 60, 68, 86, 54, 52, 49, 93, 67, 86, 73, 51, 58, 73, 47, 60, 60, 87, 77, 43, 60, 79, 70, 52, 86, 47, 62, 58, 77, 51, 49, 68, 70, 57, 53, 55, 71, 73, 53, 80, 61, 67, 45, 64, 56, 74, 84, 35, 77, 110, 65, 87, 71, 63, 76, 57, 70, 82, 55, 65, 73, 68, 69, 72, 55, 47, 80, 74, 78, 49, 56, 75, 111, 48, 46, 58, 52, 46, 50, 106, 68, 79, 42, 73, 77, 50, 66, 85, 59, 61, 56, 63, 87, 74, 66, 82, 71, 61, 53, 51, 81, 67, 47, 67, 50, 44, 68, 40, 77, 106, 64, 93, 66, 94, 58, 78, 55, 62, 70, 65, 64, 51, 74, 65, 77, 53, 84, 57, 60, 67, 51, 75, 55, 101, 77, 71, 73, 49, 50, 86, 63, 75, 135, 97, 69, 90, 71, 85, 87, 84, 79, 61, 59, 55, 75, 80, 83, 84, 76, 66, 58, 37, 58, 53, 46, 59, 74, 44, 60, 75, 72, 66, 65, 55, 68, 58, 77, 69, 66, 81, 70, 66, 75, 70, 48, 66, 67, 80, 51, 65, 102, 70, 51, 61, 70, 52, 124, 78, 64, 55, 72, 108, 53, 85, 75, 110, 74, 78, 61, 63, 54, 41, 71, 97, 67, 62, 66, 90, 55, 83, 48, 59, 71, 72, 50, 78, 59, 82, 69, 71, 58, 109, 60, 103, 69, 75, 115, 77, 55, 68, 66, 87, 52, 86, 45, 52, 64, 54, 58, 56, 72, 58, 72, 61, 60, 58, 79, 60, 80, 56, 84, 98, 59, 52, 127, 90, 61, 62, 48, 68, 92, 68, 69, 54, 80, 75, 52, 53, 90, 55, 68, 52, 53, 49, 58, 75, 44, 48, 75, 62, 56, 69, 46, 41, 60, 50, 58, 60, 52, 57, 69, 70, 77, 67, 52, 50, 59, 106, 55, 78, 127, 77, 88, 60, 40, 90, 55, 74, 67, 73, 65, 70, 70, 61, 68, 70, 65, 65, 58, 84, 91, 55, 53, 58, 44, 62, 53, 48, 60, 52, 60, 80, 73, 54, 38, 75, 55, 67, 77, 74, 47, 37, 71, 66, 95, 99, 99, 57, 54, 77, 52, 51, 64, 61, 69, 68, 89, 63, 65, 91, 86, 54, 70, 73, 52, 75, 61, 70, 60, 50, 54, 79, 64, 71, 70, 43, 72, 45, 67, 58, 60, 98, 57, 54, 62, 93, 83, 51, 79, 76, 59, 78, 83, 57, 47, 62, 69, 78, 52, 63, 68, 66, 77, 63, 67, 68, 47, 47, 70, 70, 75, 70, 70, 75, 84, 58, 50, 66, 64, 82, 75, 53, 80, 65, 52, 50, 55, 54, 81, 58, 59, 79, 78, 113, 59, 57, 93, 62, 59, 70, 75, 72, 70, 95, 45, 63, 58, 59, 65, 66, 65, 50, 46, 42, 75, 69, 69, 107, 40, 50, 62, 67, 64, 53, 66, 59, 56, 74, 45, 70, 83, 63, 79, 78, 72, 49, 66, 68, 67, 85, 58, 68, 81, 66, 56, 92, 64, 74, 64, 79, 70, 84, 56, 54, 60, 53, 85, 63, 69, 57, 45, 85, 68, 55, 68, 84, 92, 59, 65, 51, 67, 67, 65, 63, 65, 71, 56, 62, 73, 63, 68, 54, 77, 67, 81, 75, 66, 60, 55, 71, 88, 60, 88, 144, 64, 69, 69, 76, 53, 76, 40, 67, 68, 55, 74, 77, 61, 59, 59, 44, 75, 53, 66, 62, 57, 64, 46, 59, 69, 92, 73, 65, 93, 86, 51, 71, 45, 59, 63, 66, 66, 63, 76, 57, 53, 79, 54, 62, 54, 74, 65, 44, 71, 60, 79, 72, 52, 72, 57, 65, 52, 63, 69, 38, 81, 54, 120, 70, 61, 76, 84, 51, 66, 71, 56, 64, 67, 66, 63, 64, 41, 63, 72, 58, 79, 39, 39, 50, 50, 75, 59, 71, 64, 94, 80, 49, 53, 57, 61, 61, 68, 62, 74, 94, 68, 83, 83, 64, 63, 56, 43, 53, 55, 66, 48, 56, 69, 62, 55, 88, 117, 44, 58, 86, 45, 66, 99, 50, 66, 62, 94, 76, 51, 85, 45, 52, 49, 61, 70, 51, 73, 78, 66, 67, 66, 73, 63, 85, 46, 46, 63, 51, 83, 95, 52, 93, 83, 90, 63, 68, 31, 46, 58, 83, 52, 56, 77, 49, 57, 65, 61, 69, 71, 66, 64, 61, 79, 71, 57, 76, 75, 71, 47, 57, 64, 84, 83, 47, 57, 78, 55, 78, 62, 53, 60, 78, 57, 97, 58, 63, 67, 54, 70, 71, 36, 79, 92, 88, 43, 68, 86, 73, 57, 63, 64, 56, 55, 60, 60, 47, 76, 59, 48, 68, 55, 57, 56, 49, 45, 50, 67, 68, 48, 31, 65, 54, 104, 85, 59, 60, 70, 73, 54, 67, 73, 67, 68, 77, 68, 63, 59, 54, 86, 49, 86, 96, 61, 56, 83, 87, 58, 72, 77, 77, 70, 62, 46, 70, 82, 69, 58, 72, 62, 74, 56, 65, 54, 86, 81, 53, 69, 50, 72, 69, 55, 57, 52, 66, 79, 58, 80, 71, 70, 61, 70, 64, 51, 44, 55, 75, 60, 90, 79, 59, 73, 67, 43, 74, 55, 55, 58, 53, 54, 60, 87, 87, 68, 83, 61, 52, 65, 67, 79, 76, 69, 55, 89, 59, 53, 78, 54, 56, 54, 53, 68, 67, 60, 63, 73, 89, 62, 57, 73, 102, 68, 91, 84, 55, 102, 83, 37, 82, 56, 75, 50, 62, 90, 61, 80, 57, 59, 96, 64, 32, 52, 53, 61, 57, 53, 44, 44, 61, 81, 62, 56, 39, 61, 60, 70, 58, 50, 72, 79, 53, 97, 72, 38, 54, 57, 78, 56, 85, 80, 44, 91, 73, 61, 50, 47, 70, 45, 61, 69, 95, 64, 52, 74, 87, 76, 54, 60, 73, 69, 84, 102, 65, 59, 47, 53, 78, 68, 83, 71, 64, 69, 63, 85, 44, 49, 77, 40, 59, 71, 51, 56, 64, 49, 53, 70, 68, 86, 69, 79, 49, 80, 49, 69, 72, 66, 106, 72, 73, 66, 61, 73, 66, 63, 70, 56, 61, 69, 66, 76, 61, 61, 69, 69, 74, 85, 75, 52, 64, 56, 61, 72, 68, 52, 70, 63, 50, 58, 69, 46, 63, 104, 70, 64, 63, 63, 95, 52, 66, 53, 81, 96, 55, 52, 73, 48, 72, 54, 96, 85, 68, 67, 56, 79, 49, 59, 83, 61, 61, 83, 42, 56, 40, 92, 68, 55, 56, 85, 54, 54, 107, 76, 56, 74, 29, 69, 81, 63, 55, 73, 65, 73, 89, 45, 90, 50, 78, 84, 93, 73, 71, 86, 59, 70, 76, 68, 46, 77, 47, 79, 62, 60, 50, 53, 53, 86, 92, 60, 60, 69, 56, 57, 84, 59, 82, 55, 47, 94, 50, 86, 74, 76, 48, 88, 71, 63, 72, 51, 76, 67, 77, 73, 72, 75, 45, 88, 116, 40, 60, 56, 65, 52, 62, 78, 95, 84, 64, 51, 87, 49, 91, 54, 58, 76, 50, 68, 51, 58, 50, 52, 76, 39, 71, 55, 81, 85, 76, 71, 56, 76, 69, 78, 65, 64, 58, 80, 47, 81, 73, 44, 73, 65, 75, 44, 53, 83, 41, 70, 54, 62, 60, 67, 71, 63, 68, 74, 70, 74, 55, 66, 60, 73, 79, 54, 77, 64, 85, 56, 57, 61, 61, 87, 88, 80, 69, 65, 78, 56, 51, 63, 57, 68, 64, 65, 56, 88, 60, 73, 54, 63, 60, 71, 63, 87, 72, 101, 66, 71, 75, 48, 58, 85, 58, 59, 48, 76, 59, 57, 63, 82, 60, 56, 54, 66, 75, 83, 83, 46, 61, 56, 57, 70, 63, 54, 71, 78, 70, 59, 76, 64, 63, 47, 71, 53, 53, 93, 65, 70, 46, 67, 87, 59, 66, 66, 66, 77, 57, 66, 76, 57, 57, 64, 67, 85, 77, 68, 71, 88, 56, 49, 67, 54, 76, 70, 54, 76, 59, 58, 63, 46, 74, 73, 40, 67, 58, 44, 60, 50, 70, 56, 88, 63, 82, 62, 50, 85, 57, 75, 74, 50, 52, 75, 62, 58, 71, 43, 59, 64, 54, 76, 60, 83, 72, 64, 80, 83, 58, 48, 57, 58, 52, 74, 45, 62, 73, 59, 69, 52, 50, 86, 47, 50, 68, 79, 65, 65, 57, 103, 67, 81, 53, 77, 79, 65, 46, 63, 53, 93, 62, 79, 66, 84, 65, 76, 61, 70, 72, 90, 75, 67, 44, 72, 71, 74, 67, 53, 45, 77, 74, 57, 150, 62, 60, 53, 67, 68, 61, 63, 98, 62, 61, 54, 71, 66, 70, 68, 73, 56, 67, 57, 58, 90, 68, 68, 53, 83, 60, 91, 63, 83, 72, 56, 54, 50, 78, 47, 62, 47, 69, 60, 75, 80, 56, 65, 70, 68, 52, 57, 68, 74, 60, 76, 35, 60, 56, 84, 36, 70, 53, 83, 85, 58, 53, 99, 102, 77, 68, 49, 67, 68, 65, 52, 52, 49, 69, 59, 76, 67, 71, 67, 63, 57, 43, 64, 59, 61, 59, 52, 101, 54, 68, 58, 58, 58, 58, 58, 74, 59, 97, 61, 43, 95, 54, 65, 78, 59, 70, 76, 72, 61, 70, 60, 69, 85, 71, 63, 65, 85, 61, 64, 82, 90, 57, 75, 53, 68, 74, 50, 92, 83, 69, 55, 57, 67, 78, 69, 67, 69, 46, 78, 58, 71, 59, 74, 65, 51, 84, 63, 48, 65, 64, 61, 73, 72, 53, 78, 71, 72, 61, 104, 52, 79, 53, 60, 84, 59, 54, 73, 65, 68, 139, 50, 89, 64, 70, 63, 55, 50, 59, 59, 74, 73, 77, 68, 47, 53, 64, 71, 68, 76, 63, 54, 58, 56, 62, 55, 72, 70, 62, 70, 47, 60, 56, 95, 68, 78, 67, 75, 68, 53, 80, 65, 65, 43, 69, 49, 50, 67, 68, 74, 42, 56, 64, 45, 66, 59, 66, 66, 83, 59, 53, 66, 73, 59, 48, 63, 58, 70, 66, 69, 72, 67, 62, 64, 71, 67, 47, 70, 73, 60, 64, 58, 85, 55, 76, 56, 71, 60, 64, 59, 68, 68, 83, 97, 57, 73, 64, 62, 67, 57, 62, 50, 72, 63, 80, 69, 68, 70, 67, 70, 65, 71, 57, 52, 74, 60, 76, 50, 59, 57, 49, 55, 70, 62, 60, 44, 64, 57, 67, 65, 78, 93, 73, 55, 65, 64, 60, 66, 56, 73, 59, 56, 59, 51, 47, 45, 99, 58, 47, 71, 82, 84, 72, 71, 68, 76, 73, 83, 68, 60, 43, 65, 60, 76, 86, 62, 55, 82, 58, 74, 58, 68, 54, 64, 62, 61, 90, 69, 68, 53, 56, 60, 60, 61, 62, 86, 69, 78, 64, 60, 80, 63, 75, 76, 57, 53, 79, 56, 61, 61, 51, 48, 59, 68, 54, 53, 65, 65, 87, 58, 73, 110, 51, 58, 55, 67, 65, 56, 67, 70, 68, 70, 65, 166, 76, 79, 65, 70, 60, 75, 58, 103, 84, 67, 55, 67, 82, 71, 62, 57, 60, 37, 62, 62, 136, 50, 66, 73, 60, 67, 68, 62, 59, 77, 81, 58, 89, 75, 74, 55, 69, 63, 64, 56, 42, 75, 51, 66, 66, 40, 54, 83, 53, 51, 66, 78, 52, 93, 86, 53, 56, 68, 58, 74, 77, 65, 79, 59, 84, 63, 82, 58, 47, 60, 68, 58, 64, 77, 49, 66, 76, 49, 82, 46, 50, 64, 53, 64, 68, 59, 68, 72, 75, 87, 54, 68, 71, 50, 57, 79, 65, 81, 53, 65, 68, 113, 74, 53, 67, 54, 55, 56, 68, 55, 77, 77, 60, 89, 58, 55, 37, 78, 65, 71, 91, 72, 71, 74, 61, 39, 59, 62, 52, 56, 71, 60, 98, 68, 49, 63, 72, 83, 62, 71, 65, 69, 74, 44, 62, 71, 74, 55, 69, 78, 67, 60, 60, 84, 53, 75, 55, 66, 54, 67, 66, 105, 62, 64, 81, 57, 61, 58, 48, 70, 57, 81, 64, 68, 71, 53, 57, 63, 68, 72, 71, 66, 66, 45, 56, 57, 76, 60, 72, 75, 115, 64, 79, 77, 71, 73, 76, 76, 67, 101, 57, 40, 51, 80, 65, 85, 68, 49, 60, 115, 59, 85, 80, 57, 48, 67, 59, 78, 77, 53, 59, 59, 76, 60, 56, 70, 70, 64, 74, 78, 64, 80, 68, 45, 63, 60, 74, 59, 65, 38, 64, 67, 51, 53, 66, 61, 74, 108, 68, 69, 51, 67, 52, 66, 72, 110, 63, 57, 80, 83, 52, 52, 61, 51, 83, 65, 46, 73, 59, 66, 58, 174, 62, 72, 51, 100, 82, 86, 68, 61, 57, 63, 57, 72, 54, 91, 67, 65, 73, 48, 77, 77, 50, 44, 64, 60, 81, 81, 85, 78, 75, 57, 64, 58, 61, 75, 49, 71, 70, 61, 66, 73, 67, 73, 77, 97, 57, 55, 66, 59, 68, 72, 84, 72, 65, 73, 60, 68, 59, 62, 63, 63, 54, 90, 57, 44, 117, 58, 56, 73, 51, 56, 63, 68, 58, 69, 57, 68, 61, 53, 72, 87, 83, 51, 57, 64, 72, 67, 57, 51, 73, 58, 63, 78, 62, 71, 83, 68, 64, 66, 63, 72, 54, 69, 69, 74, 79, 76, 47, 62, 57, 71, 63, 75, 70, 66, 67, 66, 61, 56, 44, 62, 47, 52, 62, 63, 59, 58, 76, 51, 52, 65, 67, 57, 66, 54, 68, 73, 65, 71, 57, 62, 62, 76, 60, 114, 52, 79, 67, 42, 53, 67, 55, 67, 73, 70, 61, 54, 52, 71, 41, 67, 46, 62, 96, 68, 77, 58, 51, 69, 67, 76, 56, 65, 53, 68, 70, 72, 67, 76, 55, 70, 82, 72, 81, 60, 72, 74, 58, 56, 59, 55, 60, 62, 52, 69, 59, 66, 65, 72, 60, 58, 69, 64, 68, 106, 64, 84, 74, 64, 64, 71, 56, 53, 54, 59, 68, 57, 54, 70, 56, 56, 73, 68, 75, 60, 88, 69, 58, 77, 99, 57, 64, 80, 83, 81, 50, 59, 50, 80, 69, 108, 73, 67, 51, 59, 66, 46, 58, 62, 56, 50, 74, 88, 58, 53, 71, 68, 67, 71, 73, 73, 70, 62, 107, 60, 81, 58, 54, 58, 54, 94, 60, 67, 70, 74, 55, 53, 53, 68, 75, 58, 78, 63, 44, 70, 72, 70, 70, 54, 65, 63, 56, 54, 57, 57, 80, 60, 66, 48, 59, 65, 64, 60, 69, 62, 82, 65, 45, 54, 65, 49, 85, 66, 100, 71, 60, 54, 82, 114, 46, 51, 56, 88, 62, 61, 54, 96, 74, 64, 62, 49, 62, 64, 58, 71, 44, 61, 46, 66, 56, 70, 70, 68, 58, 49, 61, 82, 53, 76, 84, 55, 51, 73, 59, 73, 60, 93, 80, 63, 44, 70, 71, 61, 70, 73, 77, 60, 64, 68, 66, 74, 89, 68, 51, 57, 57, 61, 87, 51, 67, 109, 54, 59, 49, 74, 101, 91, 57, 77, 61, 59, 62, 74, 55, 60, 71, 54, 61, 60, 52, 55, 55, 77, 72, 34, 52, 79, 63, 85, 78, 59, 54, 73, 50, 71, 65, 71, 81, 55, 53, 67, 62, 62, 85, 64, 44, 53, 64, 73, 78, 71, 73, 66, 62, 75, 40, 76, 72, 56, 56, 61, 61, 75, 61, 72, 91, 63, 63, 74, 57, 59, 62, 59, 65, 60, 65, 69, 67, 77, 107, 106, 124, 50, 63, 56, 100, 68, 86, 38, 56, 71, 57, 65, 72, 46, 56, 80, 62, 75, 79, 73, 57, 92, 71, 103, 58, 90, 78, 63, 72, 68, 50, 68, 75, 88, 57, 109, 57, 37, 53, 57, 62, 67, 35, 51, 76, 58, 71, 55, 73, 95, 59, 73, 46, 65, 93, 74, 95, 68, 58, 59, 64, 67, 84, 63, 85, 71, 81, 66, 76, 60, 49, 47, 76, 60, 68, 64, 105, 57, 61, 40, 43, 59, 54, 59, 62, 58, 51, 64, 72, 56, 58, 105, 44, 79, 61, 65, 58, 54, 40, 64, 68, 81, 74, 76, 64, 73, 54, 61, 55, 78, 59, 46, 54, 66, 82, 44, 64, 64, 35, 81, 69, 63, 47, 61, 66, 64, 63, 134, 55, 76, 66, 53, 67, 76, 61, 87, 61, 71, 85, 58, 81, 68, 73, 58, 67, 91, 71, 49, 69, 54, 55, 68, 48, 63, 55, 60, 71, 66, 65, 69, 61, 56, 67, 69, 59, 65, 76, 52, 65, 79, 64, 62, 75, 76, 84, 57, 54, 51, 67, 111, 57, 56, 86, 40, 70, 60, 59, 121, 66, 52, 51, 51, 75, 69, 91, 55, 49, 55, 59, 64, 57, 62, 56, 52, 56, 57, 68, 53, 47, 64, 53, 93, 44, 92, 63, 55, 53, 53, 72, 66, 72, 41, 92, 58, 63, 56, 59, 69, 55, 80, 61, 77, 63, 84, 71, 74, 73, 64, 73, 48, 72, 75, 47, 58, 67, 58, 65, 139, 52, 52, 52, 98, 75, 53, 80, 62, 66, 55, 59, 52, 54, 62, 59, 68, 87, 84, 74, 95, 103, 67, 63, 80, 85, 71, 80, 75, 69, 83, 61, 58, 86, 63, 75, 61, 73, 62, 72, 75, 109, 78, 76, 92, 42, 61, 75, 53, 81, 50, 66, 60, 76, 77, 73, 64, 94, 59, 65, 79, 66, 62, 61, 51, 54, 51, 76, 63, 32, 89, 81, 63, 68, 47, 44, 74, 55, 58, 60, 64, 61, 60, 58, 76, 69, 46, 57, 60, 54, 57, 59, 66, 60, 91, 63, 64, 85, 58, 58, 64, 54, 79, 60, 64, 62, 65, 66, 53, 57, 80, 53, 59, 46, 73, 56, 86, 55, 68, 57, 76, 84, 72, 53, 51, 81, 62, 79, 58, 65, 54, 95, 65, 67, 60, 72, 75, 57, 70, 57, 51, 73, 57, 64, 83, 60, 78, 48, 58, 66, 75, 66, 59, 62, 75, 53, 68, 60, 63, 39, 117, 67, 59, 74, 51, 87, 50, 60, 63, 144, 68, 74, 66, 47, 53, 91, 84, 75, 56, 49, 50, 72, 53, 70, 63, 62, 58, 59, 66, 50, 50, 65, 62, 58, 78, 69, 60, 65, 65, 56, 64, 86, 60, 69, 71, 66, 93, 67, 73, 81, 53, 66, 43, 64, 68, 91, 61, 53, 75, 139, 56, 98, 71, 54, 80, 67, 32, 48, 62, 54, 68, 71, 67, 63, 47, 64, 63, 57, 55, 70, 71, 79, 56, 111, 84, 49, 63, 50, 58, 47, 57, 61, 56, 82, 67, 71, 98, 64, 78, 96, 63, 63, 69, 70, 58, 56, 73, 88, 49, 71, 75, 68, 62, 100, 58, 50, 56, 44, 68, 71, 63, 72, 59, 68, 75, 70, 62, 64, 65, 76, 61, 71, 62, 83, 63, 60, 76, 66, 57, 67, 55, 87, 61, 53, 52, 54, 62, 53, 59, 57, 57, 102, 56, 59, 58, 68, 54, 109, 81, 67, 51, 64, 55, 52, 57, 69, 71, 82, 67, 70, 55, 86, 56, 64, 66, 67, 53, 66, 60, 82, 67, 89, 73, 78, 37, 77, 72, 53, 62, 73, 85, 51, 64, 70, 54, 65, 54, 54, 68, 52, 60, 63, 69, 63, 53, 82, 83, 90, 58, 78, 66, 66, 55, 54, 63, 52, 79, 90, 56, 64, 87, 62, 63, 76, 55, 57, 56, 67, 60, 59, 54, 61, 65, 50, 44, 75, 54, 47, 75, 82, 68, 73, 58, 77, 57, 58, 58, 51, 53, 65, 64, 80, 59, 57, 68, 67, 46, 62, 64, 70, 71, 52, 63, 60, 70, 59, 69, 55, 85, 75, 71, 58, 93, 73, 78, 63, 70, 59, 57, 61, 59, 59, 68, 80, 69, 114, 77, 52, 67, 58, 76, 50, 48, 64, 60, 58, 52, 76, 82, 59, 76, 64, 59, 65, 72, 72, 59, 54, 48, 80, 63, 67, 82, 79, 83, 74, 49, 71, 75, 60, 67, 47, 61, 70, 67, 59, 58, 76, 50, 92, 51, 71, 73, 55, 71, 93, 59, 61, 101, 62, 78, 52, 95, 82, 56, 60, 71, 39, 59, 77, 81, 79, 63, 59, 48, 61, 61, 70, 151, 72, 59, 61, 54, 54, 57, 59, 57, 62, 49, 54, 87, 72, 62, 61, 94, 56, 56, 58, 49, 38, 55, 68, 63, 89, 52, 55, 54, 57, 46, 75, 73, 51, 71, 52, 94, 85, 72, 62, 62, 61, 57, 52, 87, 76, 65, 76, 59, 155, 59, 43, 52, 92, 48, 70, 80, 58, 89, 47, 56, 59, 83, 117, 63, 88, 52, 65, 47, 64, 56, 67, 74, 62, 51, 79, 58, 73, 63, 74, 66, 79, 69, 55, 77, 64, 58, 72, 56, 60, 56, 87, 35, 67, 55, 53, 59, 52, 58, 55, 52, 54, 57, 64, 57, 52, 67, 77, 50, 61, 62, 52, 51, 55, 68, 50, 74, 45, 57, 66, 71, 57, 70, 65, 76, 82, 84, 64, 69, 45, 82, 39, 55, 69, 59, 52, 85, 88, 68, 61, 75, 49, 65, 51, 78, 57, 57, 60, 56, 63, 51, 98, 44, 68, 67, 80, 62, 62, 63, 65, 61, 56, 93, 65, 50, 40, 71, 61, 63, 86, 74, 58, 75, 65, 59, 58, 61, 57, 65, 57, 55, 66, 96, 65, 66, 46, 75, 66, 73, 62, 123, 68, 62, 65, 60, 50, 71, 55, 60, 51, 113, 70, 86, 85, 73, 73, 53, 65, 66, 59, 66, 79, 80, 66, 58, 53, 76, 66, 71, 92, 79, 60, 80, 61, 51, 97, 85, 60, 73, 80, 72, 106, 51, 39, 90, 80, 87, 66, 70, 70, 68, 58, 75, 59, 45, 63, 73, 65, 104, 54, 55, 102, 66, 58, 67, 79, 48, 42, 82, 46, 68, 62, 65, 57, 56, 53, 78, 67, 40, 66, 122, 78, 48, 72, 75, 66, 80, 64, 79, 63, 52, 70, 77, 93, 68, 63, 84, 83, 68, 78, 91, 62, 66, 84, 57, 76, 67, 51, 63, 54, 62, 64, 61, 95, 104, 70, 56, 55, 71, 68, 79, 63, 55, 56, 68, 91, 53, 80, 63, 59, 100, 95, 68, 79, 83, 51, 80, 42, 79, 50, 63, 61, 131, 72, 51, 88, 45, 38, 68, 43, 58, 63, 55, 65, 87, 53, 56, 57, 64, 63, 59, 54, 65, 43, 62, 74, 67, 93, 61, 40, 42, 45, 80, 46, 51, 57, 110, 91, 74, 54, 64, 71, 72, 61, 57, 70, 53, 56, 75, 60, 64, 63, 68, 49, 62, 55, 118, 66, 55, 49, 67, 53, 49, 52, 73, 76, 51, 59, 83, 51, 56, 69, 63, 58, 57, 68, 80, 58, 141, 44, 83, 73, 58, 66, 53, 79, 80, 68, 70, 68, 49, 70, 72, 64, 75, 55, 70, 64, 67, 43, 70, 34, 72, 58, 55, 55, 65, 52, 59, 72, 60, 53, 60, 51, 70, 57, 59, 96, 70, 83, 42, 86, 39, 58, 61, 88, 80, 69, 67, 66, 65, 58, 66, 83, 79, 64, 65, 49, 70, 65, 66, 100, 56, 56, 93, 64, 67, 71, 64, 105, 62, 81, 72, 68, 73, 68, 72, 46, 56, 49, 56, 64, 64, 65, 88, 59, 66, 95, 52, 61, 63, 90, 68, 102, 44, 55, 58, 66, 67, 78, 76, 62, 78, 59, 100, 73, 59, 58, 70, 63, 57, 64, 48, 122, 52, 57, 61, 61, 62, 53, 80, 71, 74, 57, 63, 48, 59, 74, 64, 56, 62, 75, 56, 50, 56, 50, 85, 65, 55, 73, 55, 59, 69, 65, 69, 76, 57, 63, 58, 55, 71, 109, 43, 61, 71, 63, 67, 67, 49, 45, 89, 58, 64, 57, 90, 50, 93, 68, 65, 60, 90, 35, 70, 50, 50, 85, 38, 69, 68, 63, 75, 81, 76, 72, 44, 61, 59, 72, 52, 76, 60, 138, 80, 48, 69, 64, 62, 96, 115, 81, 60, 85, 67, 52, 68, 62, 65, 67, 87, 62, 59, 48, 47, 56, 71, 55, 56, 62, 72, 60, 75, 58, 58, 52, 70, 60, 61, 84, 62, 38, 55, 50, 55, 70, 67, 84, 58, 60, 59, 77, 69, 65, 74, 71, 52, 78, 70, 52, 79, 51, 81, 63, 57, 57, 92, 64, 70, 68, 62, 80, 76, 82, 58, 66, 51, 48, 47, 96, 66, 51, 77, 80, 41, 66, 55, 70, 64, 63, 62, 47, 50, 58, 64, 56, 61, 80, 66, 73, 62, 91, 56, 83, 61, 53, 59, 62, 48, 69, 51, 89, 67, 90, 91, 63, 63, 70, 60, 58, 74, 94, 54, 77, 60, 156, 60, 68, 57, 37, 71, 60, 105, 79, 65, 55, 56, 65, 80, 55, 56, 65, 72, 46, 66, 67, 55, 53, 58, 61, 42, 50, 55, 80, 58, 56, 46, 61, 54, 54, 58, 63, 67, 54, 72, 51, 60, 68, 58, 57, 68, 78, 60, 100, 85, 87, 54, 39, 52, 65, 51, 65, 62, 72, 54, 111, 58, 71, 54, 52, 71, 74, 51, 54, 52, 105, 70, 64, 67, 96, 58, 60, 94, 81, 66, 54, 72, 55, 70, 69, 60, 65, 143, 55, 51, 75, 100, 74, 56, 90, 60, 65, 81, 54, 79, 76, 79, 53, 61, 87, 61, 68, 69, 42, 79, 94, 71, 80, 75, 62, 85, 61, 59, 62, 62, 71, 51, 87, 67, 65, 84, 49, 45, 55, 81, 82, 91, 83, 70, 78, 48, 59, 57, 55, 70, 51, 60, 65, 54, 57, 65, 57, 86, 74, 43, 92, 86, 59, 70, 54, 78, 63, 59, 67, 68, 58, 61, 72, 66, 75, 50, 73, 67, 40, 52, 110, 65, 81, 59, 62, 50, 106, 84, 72, 55, 78, 78, 67, 49, 51, 67, 52, 50, 51, 51, 69, 56, 54, 54, 56, 82, 77, 61, 73, 53, 73, 73, 54, 45, 72, 52, 56, 66, 71, 59, 60, 62, 88, 69, 53, 76, 63, 63, 66, 32, 56, 82, 117, 81, 76, 54, 77, 52, 66, 69, 66, 86, 78, 52, 54, 60, 64, 45, 53, 62, 73, 59, 63, 73, 64, 57, 62, 66, 55, 63, 60, 64, 54, 64, 59, 65, 63, 68, 70, 65, 53, 53, 72, 101, 75, 49, 67, 52, 73, 73, 58, 60, 70, 58, 35, 92, 44, 50, 80, 52, 74, 89, 44, 81, 79, 51, 89, 62, 44, 71, 59, 85, 81, 76, 53, 55, 60, 68, 60, 52, 72, 94, 77, 55, 63, 56, 81, 59, 63, 75, 55, 77, 66, 56, 73, 69, 78, 61, 55, 68, 58, 68, 61, 72, 91, 40, 61, 65, 79, 64, 72, 49, 71, 95, 59, 54, 63, 131, 60, 52, 106, 67, 65, 88, 62, 55, 59, 66, 63, 87, 50, 91, 67, 82, 66, 60, 87, 64, 61, 76, 79, 47, 55, 80, 64, 61, 63, 58, 63, 64, 37, 72, 68, 60, 70, 44, 61, 60, 84, 73, 76, 77, 53, 65, 62, 68, 85, 56, 48, 59, 46, 58, 53, 62, 73, 85, 68, 58, 36, 67, 62, 65, 83, 70, 66, 72, 60, 63, 45, 50, 72, 78, 55, 78, 65, 66, 54, 70, 55, 45, 71, 90, 59, 70, 84, 65, 63, 46, 57, 67, 73, 79, 102, 94, 84, 47, 70, 59, 53, 63, 55, 63, 71, 68, 67, 34, 57, 54, 78, 46, 60, 60, 85, 69, 64, 86, 61, 54, 86, 65, 56, 67, 66, 49, 99, 93, 71, 75, 153, 42, 68, 82, 68, 77, 74, 69, 47, 68, 69, 81, 46, 69, 75, 78, 106, 70, 68, 76, 76, 78, 96, 78, 54, 64, 62, 62, 48, 61, 66, 59, 47, 82, 55, 86, 67, 61, 54, 76, 66, 58, 62, 70, 73, 56, 71, 71, 65, 58, 110, 48, 66, 69, 55, 74, 57, 65, 34, 60, 77, 61, 62, 60, 37, 63, 66, 69, 104, 52, 68, 99, 46, 84, 81, 68, 84, 66, 65, 58, 82, 82, 49, 44, 60, 66, 66, 58, 68, 54, 53, 68, 74, 57, 71, 62, 59, 59, 84, 73, 110, 60, 58, 109, 62, 71, 60, 39, 70, 51, 63, 64, 111, 63, 76, 57, 52, 78, 71, 67, 110, 47, 38, 66, 64, 58, 55, 62, 54, 63, 59, 65, 55, 64, 61, 45, 63, 70, 55, 57, 57, 77, 64, 63, 61, 67, 83, 60, 63, 64, 60, 49, 56, 73, 77, 67, 76, 74, 38, 58, 80, 67, 63, 86, 55, 80, 60, 55, 59, 56, 57, 49, 72, 51, 58, 61, 61, 71, 66, 75, 82, 73, 56, 55, 75, 56, 72, 62, 56, 114, 52, 72, 60, 65, 53, 50, 70, 46, 83, 65, 63, 80, 60, 54, 76, 101, 104, 43, 79, 73, 58, 61, 99, 82, 55, 46, 45, 50, 71, 54, 79, 56, 55, 60, 51, 68, 58, 78, 65, 83, 52, 65, 74, 50, 67, 53, 81, 43, 77, 54, 68, 57, 99, 51, 68, 75, 56, 69, 50, 70, 52, 66, 79, 71, 48, 54, 63, 73, 69, 55, 60, 74, 56, 65, 69, 54, 63, 70, 67, 81, 60, 76, 78, 74, 53, 61, 57, 69, 67, 63, 67, 69, 60, 56, 43, 46, 57, 63, 64, 76, 65, 53, 66, 56, 69, 65, 159, 43, 56, 69, 41, 50, 63, 58, 95, 67, 107, 46, 62, 88, 61, 61, 75, 70, 66, 69, 58, 67, 98, 77, 60, 76, 74, 28, 66, 69, 55, 65, 47, 48, 82, 77, 57, 48, 64, 60, 65, 67, 68, 80, 84, 59, 53, 75, 59, 82, 74, 65, 70, 66, 57, 60, 65, 56, 74, 75, 74, 61, 69, 46, 52, 72, 43, 86, 66, 75, 86, 67, 113, 56, 62, 63, 68, 73, 72, 70, 50, 58, 56, 70, 48, 56, 82, 54, 104, 78, 66, 65, 84, 66, 45, 69, 53, 88, 62, 53, 102, 54, 70, 65, 57, 78, 90, 86, 73, 67, 91, 67, 56, 83, 68, 45, 51, 83, 63, 63, 63, 53, 68, 63, 60, 51, 57, 71, 56, 44, 93, 50, 66, 55, 88, 81, 60, 65, 62, 55, 82, 51, 60, 47, 96, 50, 65, 65, 46, 94, 71, 75, 99, 61, 99, 63, 78, 62, 108, 53, 46, 64, 64, 63, 61, 52, 64, 76, 62, 58, 55, 85, 76, 54, 85, 64, 57, 45, 64, 79, 82, 55, 86, 82, 60, 48, 34, 82, 72, 78, 72, 54, 51, 81, 124, 103, 86, 50, 58, 88, 52, 75, 66, 65, 66, 42, 49, 56, 75, 52, 83, 55, 62, 62, 63, 75, 56, 72, 57, 68, 67, 63, 69, 56, 44, 76, 61, 64, 85, 62, 69, 79, 64, 70, 66, 85, 76, 78, 75, 93, 70, 53, 53, 66, 71, 84, 73, 65, 53, 70, 68, 85, 64, 68, 56, 43, 49, 74, 78, 54, 60, 62, 68, 52, 73, 73, 69, 167, 62, 48, 64, 66, 58, 80, 59, 64, 49, 73, 80, 42, 55, 72, 84, 67, 37, 88, 59, 49, 66, 70, 54, 48, 61, 58, 82, 52, 84, 55, 63, 81, 67, 74, 74, 70, 74, 68, 74, 67, 69, 92, 66, 70, 56, 33, 79, 66, 95, 72, 52, 76, 66, 65, 61, 49, 68, 75, 47, 67, 63, 82, 69, 51, 55, 61, 59, 71, 62, 56, 68, 56, 63, 47, 71, 66, 60, 63, 64, 160, 66, 66, 65, 65, 64, 62, 39, 58, 53, 58, 75, 45, 75, 80, 75, 67, 64, 65, 50, 81, 58, 63, 72, 58, 59, 71, 66, 49, 70, 55, 62, 57, 82, 48, 65, 58, 56, 68, 142, 68, 64, 79, 55, 57, 59, 69, 85, 72, 65, 56, 64, 60, 66, 77, 54, 64, 35, 71, 77, 87, 43, 52, 69, 95, 47, 56, 54, 51, 77, 68, 73, 57, 51, 56, 71, 83, 72, 54, 53, 77, 79, 82, 58, 51, 66, 83, 63, 57, 82, 61, 71, 64, 70, 79, 81, 55, 101, 33, 54, 66, 67, 56, 53, 37, 52, 58, 68, 59, 59, 83, 71, 74, 57, 43, 68, 60, 73, 79, 63, 61, 70, 68, 56, 81, 80, 62, 53, 72, 62, 49, 66, 77, 87, 67, 57, 76, 54, 55, 143, 65, 59, 69, 77, 73, 83, 62, 58, 57, 62, 74, 58, 50, 76, 68, 50, 72, 62, 46, 63, 106, 51, 54, 61, 63, 72, 63, 49, 74, 56, 84, 65, 72, 94, 52, 63, 57, 67, 43, 63, 67, 63, 41, 80, 63, 54, 52, 46, 71, 70, 50, 78, 72, 64, 80, 58, 58, 104, 61, 59, 55, 56, 91, 56, 74, 66, 87, 66, 76, 72, 69, 51, 66, 91, 66, 59, 70, 84, 75, 73, 88, 56, 60, 44, 105, 64, 62, 65, 84, 77, 48, 95, 72, 59, 57, 60, 43, 61, 49, 82, 87, 73, 63, 65, 52, 90, 75, 59, 88, 47, 54, 64, 76, 62, 53, 85, 57, 52, 88, 73, 72, 75, 80, 60, 66, 70, 75, 66, 92, 55, 73, 82, 58, 65, 61, 82, 79, 74, 60, 62, 73, 78, 44, 65, 69, 67, 51, 53, 68, 78, 88, 64, 46, 72, 61, 55, 63, 92, 52, 83, 68, 59, 49, 48, 46, 64, 43, 61, 73, 65, 63, 77, 90, 65, 70, 52, 30, 76, 49, 83, 54, 65, 71, 76, 62, 69, 38, 51, 72, 53, 72, 46, 62, 45, 96, 63, 62, 59, 63, 69, 82, 57, 61, 57, 48, 53, 80, 70, 54, 68, 77, 59, 95, 58, 70, 83, 48, 57, 58, 69, 68, 90, 64, 68, 65, 60, 62, 74, 72, 73, 67, 54, 55, 66, 47, 57, 66, 49, 76, 83, 40, 67, 64, 47, 92, 82, 71, 64, 50, 85, 72, 87, 61, 74, 52, 56, 88, 55, 84, 78, 55, 69, 59, 98, 58, 78, 61, 53, 127, 51, 79, 51, 71, 14, 67, 86, 52, 61, 54, 67, 90, 78, 71, 68, 64, 59, 67, 75, 55, 67, 60, 47, 61, 45, 64, 100, 67, 60, 50, 61, 53, 47, 54, 47, 59, 85, 62, 77, 70, 140, 58, 66, 84, 87, 83, 54, 69, 72, 46, 51, 119, 69, 61, 60, 66, 53, 43, 69, 71, 65, 57, 76, 70, 67, 60, 60, 85, 78, 81, 53, 52, 72, 83, 70, 66, 68, 70, 88, 76, 81, 57, 59, 66, 67, 49, 74, 57, 60, 64, 71, 64, 93, 57, 87, 65, 56, 99, 47, 51, 57, 74, 61, 59, 57, 67, 63, 44, 57, 67, 64, 42, 81, 57, 82, 63, 57, 68, 66, 61, 61, 67, 77, 55, 70, 62, 58, 83, 81, 60, 81, 90, 62, 74, 67, 75, 77, 79, 74, 52, 71, 86, 59, 63, 80, 63, 64, 62, 58, 57, 92, 71, 78, 63, 65, 63, 56, 55, 59, 78, 38, 74, 69, 79, 62, 71, 67, 74, 56, 32, 65, 77, 83, 62, 82, 51, 61, 103, 41, 64, 63, 62, 60, 58, 67, 50, 73, 66, 85, 63, 78, 64, 62, 47, 53, 64, 79, 54, 85, 52, 61, 103, 47, 70, 77, 66, 78, 77, 60, 49, 51, 112, 69, 43, 66, 64, 50, 48, 68, 66, 65, 57, 57, 73, 51, 56, 65, 54, 74, 57, 70, 60, 78, 66, 73, 52, 49, 74, 77, 80, 64, 58, 70, 49, 47, 69, 78, 76, 71, 61, 93, 68, 67, 67, 66, 55, 62, 70, 65, 48, 88, 71, 71, 72, 73, 57, 68, 56, 66, 60, 57, 59, 81, 71, 47, 71, 72, 63, 162, 61, 72, 63, 71, 48, 63, 70, 79, 59, 73, 63, 57, 77, 48, 52, 38, 91, 68, 52, 63, 50, 64, 39, 66, 62, 64, 69, 66, 64, 57, 77, 57, 64, 75, 49, 100, 69, 74, 56, 45, 61, 60, 76, 67, 61, 67, 66, 81, 65, 85, 74, 79, 78, 56, 87, 54, 101, 44, 85, 43, 77, 60, 66, 60, 58, 61, 102, 52, 87, 72, 89, 85, 67, 66, 62, 97, 43, 73, 63, 42, 71, 53, 79, 69, 46, 60, 77, 110, 78, 76, 55, 43, 77, 52, 75, 54, 68, 71, 76, 47, 65, 66, 70, 48, 56, 60, 54, 71, 73, 69, 79, 55, 72, 71, 59, 81, 47, 41, 45, 69, 77, 54, 58, 71, 67, 38, 66, 66, 71, 53, 74, 72, 58, 52, 78, 65, 72, 78, 75, 78, 61, 74, 49, 82, 82, 60, 59, 87, 52, 80, 79, 68, 62, 51, 55, 58, 134, 109, 69, 49, 84, 54, 73, 66, 62, 66, 80, 47, 54, 62, 52, 53, 74, 44, 99, 73, 41, 62, 66, 71, 65, 72, 53, 61, 165, 60, 83, 59, 54, 51, 60, 62, 53, 67, 79, 69, 59, 55, 63, 49, 68, 68, 73, 75, 52, 86, 56, 64, 74, 62, 43, 64, 55, 78, 59, 64, 49, 67, 53, 72, 54, 51, 77, 77, 78, 37, 73, 79, 67, 89, 53, 69, 83, 72, 78, 52, 82, 50, 36, 56, 87, 77, 65, 65, 58, 78, 56, 70, 68, 68, 79, 44, 67, 62, 56, 92, 75, 82, 76, 53, 44, 64, 81, 65, 43, 71, 47, 90, 65, 78, 53, 72, 67, 69, 69, 58, 66, 61, 57, 75, 87, 58, 62, 60, 90, 66, 66, 57, 62, 54, 70, 60, 76, 57, 60, 59, 68, 70, 75, 37, 56, 50, 60, 63, 73, 60, 77, 84, 63, 71, 81, 46, 45, 63, 71, 76, 64, 59, 95, 56, 60, 62, 58, 53, 77, 52, 58, 58, 46, 55, 66, 60, 43, 43, 71, 46, 83, 77, 52, 81, 57, 72, 68, 72, 58, 54, 71, 72, 63, 78, 92, 102, 54, 46, 38, 55, 97, 77, 69, 60, 68, 59, 70, 57, 114, 60, 52, 62, 55, 64, 60, 82, 62, 77, 83, 59, 64, 59, 71, 60, 75, 84, 61, 60, 71, 77, 52, 79, 76, 72, 65, 71, 54, 72, 60, 57, 49, 61, 60, 61, 76, 41, 73, 47, 62, 139, 61, 52, 46, 63, 82, 51, 69, 64, 56, 75, 64, 64, 65, 64, 72, 69, 73, 52, 51, 73, 93, 63, 60, 75, 67, 58, 84, 57, 68, 54, 67, 69, 79, 68, 71, 41, 59, 60, 88, 52, 53, 86, 68, 65, 63, 66, 50, 55, 123, 80, 49, 58, 50, 58, 68, 47, 48, 60, 94, 78, 85, 75, 63, 76, 70, 72, 65, 62, 60, 67, 74, 84, 59, 56, 88, 64, 50, 57, 70, 69, 80, 72, 64, 50, 86, 61, 63, 68, 68, 69, 73, 48, 96, 90, 60, 55, 70, 68, 51, 50, 59, 54, 64, 92, 70, 58, 56, 73, 55, 77, 55, 69, 158, 57, 51, 58, 70, 57, 63, 69, 59, 76, 63, 63, 65, 99, 72, 70, 84, 55, 55, 54, 60, 53, 71, 86, 52, 65, 72, 59, 55, 78, 55, 56, 55, 67, 49, 74, 55, 65, 70, 59, 48, 69, 91, 67, 58, 54, 66, 65, 63, 55, 70, 87, 46, 63, 56, 57, 80, 66, 63, 54, 84, 72, 61, 62, 71, 59, 73, 66, 64, 80, 63, 58, 69, 72, 78, 43, 68, 94, 72, 54, 53, 49, 52, 35, 85, 102, 62, 58, 57, 62, 47, 98, 55, 76, 67, 89, 58, 55, 85, 73, 57, 55, 70, 69, 68, 50, 57, 70, 54, 64, 53, 84, 83, 75, 79, 82, 59, 73, 76, 67, 79, 59, 82, 79, 74, 65, 83, 52, 78, 57, 66, 88, 77, 81, 90, 66, 60, 64, 62, 44, 65, 68, 42, 55, 56, 69, 57, 60, 75, 120, 64, 68, 77, 77, 38, 87, 49, 65, 80, 77, 57, 79, 54, 68, 72, 67, 50, 67, 61, 90, 58, 63, 58, 60, 66, 72, 90, 83, 69, 57, 79, 61, 76, 64, 78, 72, 58, 47, 55, 53, 49, 56, 106, 74, 63, 61, 96, 53, 85, 53, 57, 88, 49, 68, 61, 81, 94, 46, 56, 74, 75, 86, 60, 57, 62, 53, 66, 86, 63, 62, 64, 51, 83, 63, 64, 55, 62, 53, 68, 63, 66, 82, 86, 54, 93, 60, 74, 67, 74, 54, 66, 71, 100, 77, 70, 58, 59, 50, 104, 71, 80, 72, 68, 60, 64, 50, 91, 69, 62, 76, 64, 71, 64, 48, 71, 66, 61, 58, 71, 72, 74, 58, 48, 72, 64, 74, 61, 59, 63, 71, 60, 84, 66, 58, 66, 47, 49, 60, 57, 76, 66, 48, 80, 47, 61, 61, 61, 64, 77, 65, 46, 74, 70, 53, 86, 61, 55, 63, 64, 81, 55, 43, 64, 80, 62, 68, 91, 46, 75, 67, 70, 58, 67, 65, 60, 72, 52, 81, 90, 64, 93, 51, 72, 58, 62, 62, 64, 64, 98, 62, 53, 79, 63, 80, 48, 69, 72, 67, 61, 63, 59, 45, 60, 68, 85, 74, 55, 50, 62, 52, 56, 55, 69, 51, 69, 116, 49, 67, 39, 67, 65, 125, 79, 57, 31, 46, 66, 82, 49, 54, 60, 58, 56, 67, 80, 53, 53, 79, 58, 57, 60, 58, 68, 68, 70, 51, 84, 63, 74, 50, 55, 60, 63, 68, 72, 56, 71, 76, 52, 72, 72, 57, 57, 59, 81, 75, 99, 64, 65, 83, 33, 58, 54, 54, 68, 85, 88, 76, 58, 61, 71, 73, 72, 53, 73, 52, 69, 79, 57, 67, 63, 65, 56, 60, 101, 74, 75, 67, 73, 73, 69, 64, 51, 45, 58, 63, 106, 72, 62, 66, 65, 58, 89, 52, 55, 78, 65, 85, 86, 54, 57, 65, 62, 70, 60, 65, 102, 82, 64, 73, 65, 88, 52, 55, 65, 107, 95, 58, 63, 62, 57, 54, 66, 72, 49, 71, 71, 75, 46, 72, 55, 54, 58, 75, 63, 61, 59, 63, 73, 71, 77, 53, 81, 72, 57, 70, 70, 66, 55, 47, 69, 39, 67, 63, 56, 62, 57, 54, 56, 66, 87, 62, 72, 47, 58, 48, 72, 131, 58, 90, 48, 59, 72, 59, 59, 64, 75, 55, 64, 66, 71, 66, 48, 49, 77, 71, 47, 75, 80, 57, 59, 91, 59, 51, 90, 58, 55, 55, 65, 67, 50, 83, 55, 70, 126, 60, 67, 60, 65, 114, 90, 66, 65, 65, 57, 51, 63, 41, 101, 66, 62, 54, 52, 68, 51, 69, 84, 70, 55, 58, 71, 54, 66, 58, 59, 77, 74, 57, 72, 82, 52, 72, 60, 59, 61, 82, 62, 66, 51, 81, 63, 64, 52, 53, 60, 66, 48, 69, 66, 70, 53, 64, 54, 61, 70, 70, 67, 56, 67, 57, 59, 65, 70, 50, 69, 58, 56, 58, 64, 65, 58, 76, 60, 84, 35, 57, 51, 54, 69, 56, 81, 52, 51, 69, 67, 76, 47, 66, 60, 57, 57, 62, 63, 58, 54, 51, 67, 67, 61, 57, 62, 76, 58, 68, 54, 69, 56, 53, 66, 66, 72, 59, 65, 63, 56, 65, 60, 62, 54, 71, 69, 63, 73, 129, 58, 54, 79, 70, 73, 57, 56, 56, 77, 60, 71, 47, 53, 57, 64, 71, 61, 59, 57, 63, 84, 75, 60, 61, 74, 72, 65, 63, 79, 68, 64, 90, 35, 75, 91, 70, 57, 59, 63, 76, 73, 57, 58, 75, 67, 66, 61, 70, 44, 62, 90, 64, 64, 74, 57, 53, 58, 72, 69, 50, 57, 60, 66, 88, 67, 79, 45, 90, 72, 67, 54, 104, 61, 88, 60, 70, 68, 54, 70, 55, 52, 63, 72, 47, 56, 90, 76, 82, 51, 72, 59, 67, 99, 74, 62, 48, 103, 81, 57, 86, 75, 74, 61, 83, 57, 53, 101, 45, 80, 59, 59, 61, 53, 72, 80, 72, 78, 55, 70, 65, 64, 63, 52, 60, 63, 58, 73, 54, 51, 50, 55, 51, 64, 51, 53, 62, 88, 93, 69, 59, 60, 65, 84, 64, 61, 70, 56, 60, 68, 51, 83, 65, 57, 87, 57, 68, 64, 45, 57, 64, 63, 83, 73, 69, 66, 53, 68, 54, 68, 57, 60, 73, 67, 58, 81, 62, 58, 60, 70, 103, 71, 55, 64, 61, 78, 69, 60, 60, 80, 74, 58, 45, 92, 72, 50, 64, 67, 59, 67, 53, 43, 68, 69, 60, 76, 60, 104, 66, 70, 69, 65, 69, 74, 66, 65, 97, 52, 77, 77, 65, 48, 60, 75, 77, 77, 61, 120, 65, 56, 51, 66, 66, 65, 65, 65, 54, 84, 66, 40, 60, 49, 60, 51, 59, 72, 80, 61, 127, 51, 72, 69, 52, 58, 80, 86, 71, 65, 78, 39, 58, 60, 56, 74, 71, 55, 66, 65, 65, 75, 169, 56, 77, 129, 56, 58, 61, 69, 58, 51, 58, 62, 65, 63, 66, 74, 54, 55, 57, 58, 47, 69, 65, 66, 60, 65, 57, 55, 93, 66, 65, 87, 71, 80, 57, 69, 59, 94, 57, 58, 61, 66, 64, 76, 62, 58, 58, 59, 61, 56, 72, 54, 73, 53, 64, 47, 54, 70, 73, 107, 65, 51, 54, 65, 78, 63, 53, 69, 65, 67, 65, 71, 71, 54, 53, 44, 72, 63, 89, 64, 61, 59, 76, 64, 62, 58, 95, 66, 96, 61, 47, 71, 71, 76, 70, 73, 56, 58, 69, 57, 72, 50, 66, 65, 81, 68, 81, 53, 65, 79, 81, 69, 78, 58, 61, 75, 60, 73, 81, 66, 52, 80, 71, 64, 62, 64, 57, 47, 62, 57, 84, 48, 62, 46, 76, 52, 73, 75, 74, 69, 69, 71, 54, 55, 66, 57, 68, 58, 61, 90, 85, 104, 49, 84, 77, 55, 53, 74, 74, 51, 52, 76, 64, 79, 64, 71, 54, 56, 63, 72, 65, 61, 41, 65, 35, 56, 61, 69, 65, 43, 58, 77, 61, 71, 68, 72, 67, 76, 55, 148, 51, 63, 61, 62, 54, 61, 58, 59, 142, 66, 81, 73, 56, 74, 49, 48, 68, 121, 60, 69, 79, 71, 75, 58, 76, 71, 61, 104, 55, 77, 60, 69, 78, 60, 64, 65, 79, 59, 49, 54, 59, 86, 66, 59, 70, 85, 61, 61, 64, 54, 53, 55, 63, 73, 83, 52, 57, 62, 93, 68, 45, 97, 62, 49, 94, 63, 50, 75, 65, 82, 61, 65, 55, 69, 61, 56, 50, 58, 66, 89, 63, 70, 59, 72, 89, 65, 58, 67, 53, 63, 77, 62, 54, 65, 54, 58, 55, 60, 42, 64, 71, 59, 62, 65, 59, 58, 58, 62, 58, 77, 69, 62, 59, 74, 71, 79, 92, 84, 61, 44, 79, 80, 57, 47, 54, 78, 54, 64, 60, 41, 70, 50, 43, 71, 72, 63, 74, 51, 98, 50, 50, 62, 57, 42, 45, 55, 66, 62, 57, 78, 75, 66, 75, 72, 60, 71, 69, 53, 65, 67, 67, 65, 59, 42, 63, 106, 73, 56, 42, 66, 58, 80, 80, 71, 73, 64, 67, 65, 68, 65, 63, 68, 62, 70, 73, 58, 76, 109, 52, 74, 52, 82, 117, 74, 55, 66, 71, 70, 61, 52, 65, 93, 66, 76, 60, 53, 59, 51, 70, 53, 90, 61, 71, 51, 69, 59, 54, 67, 58, 73, 64, 45, 59, 70, 85, 58, 55, 109, 54, 63, 53, 69, 89, 70, 72, 74, 51, 62, 65, 81, 76, 52, 65, 67, 81, 60, 60, 87, 66, 56, 77, 58, 52, 70, 93, 63, 64, 46, 92, 52, 85, 85, 58, 82, 54, 63, 75, 69, 82, 67, 68, 93, 69, 68, 84, 70, 52, 53, 80, 65, 53, 59, 56, 72, 56, 78, 46, 61, 77, 62, 58, 58, 49, 46, 57, 77, 105, 66, 88, 60, 45, 71, 67, 55, 78, 55, 65, 103, 76, 75, 76, 70, 68, 88, 54, 69, 63, 74, 60, 47, 65, 67, 77, 60, 69, 68, 73, 50, 74, 69, 69, 68, 62, 72, 90, 82, 51, 81, 41, 55, 59, 52, 52, 76, 58, 67, 53, 95, 56, 65, 95, 79, 89, 64, 50, 51, 54, 47, 72, 55, 67, 68, 74, 87, 42, 66, 81, 49, 79, 67, 82, 62, 55, 89, 71, 61, 47, 52, 96, 55, 49, 71, 63, 59, 72, 107, 64, 59, 51, 60, 72, 52, 57, 70, 58, 50, 64, 57, 132, 58, 81, 73, 57, 68, 56, 66, 73, 53, 58, 65, 45, 69, 86, 70, 69, 72, 64, 75, 60, 57, 53, 63, 48, 54, 78, 69, 64, 73, 61, 59, 49, 88, 64, 57, 76, 75, 51, 71, 55, 75, 68, 55, 68, 57, 57, 69, 65, 88, 46, 66, 58, 52, 74, 50, 72, 54, 83, 70, 53, 56, 52, 76, 78, 65, 50, 68, 62, 49, 52, 62, 64, 52, 47, 99, 67, 74, 55, 65, 59, 52, 56, 71, 54, 54, 77, 57, 43, 50, 62, 61, 43, 92, 65, 39, 58, 51, 54, 82, 53, 37, 67, 59, 76, 71, 73, 71, 64, 93, 57, 59, 83, 61, 61, 46, 64, 45, 86, 32, 49, 78, 81, 61, 52, 44, 60, 56, 75, 71, 56, 64, 66, 64, 67, 76, 67, 75, 68, 63, 67, 53, 57, 77, 79, 68, 93, 52, 57, 60, 63, 59, 59, 55, 55, 53, 53, 87, 60, 47, 88, 61, 49, 72, 58, 57, 92, 62, 47, 56, 84, 68, 62, 90, 76, 63, 53, 79, 82, 58, 78, 69, 65, 43, 67, 62, 91, 48, 60, 43, 70, 52, 68, 84, 50, 56, 65, 73, 69, 72, 67, 79, 60, 58, 51, 49, 54, 61, 70, 51, 65, 61, 80, 52, 77, 69, 93, 73, 73, 151, 65, 52, 82, 61, 51, 55, 49, 87, 57, 56, 75, 77, 78, 82, 58, 78, 85, 55, 62, 57, 69, 69, 72, 54, 91, 106, 59, 80, 53, 48, 66, 67, 73, 58, 72, 62, 66, 62, 52, 49, 42, 57, 72, 81, 44, 65, 54, 62, 96, 61, 75, 64, 71, 62, 77, 63, 59, 47, 55, 68, 57, 63, 62, 81, 56, 47, 72, 68, 63, 60, 63, 81, 47, 87, 58, 87, 58, 78, 54, 56, 47, 85, 70, 65, 70, 66, 38, 72, 77, 66, 74, 59, 50, 57, 64, 88, 75, 56, 65, 77, 62, 65, 72, 47, 50, 51, 85, 56, 70, 64, 64, 62, 64, 56, 42, 44, 88, 60, 56, 75, 72, 84, 61, 64, 69, 63, 88, 56, 74, 55, 70, 76, 71, 54, 49, 59, 80, 65, 63, 58, 47, 72, 61, 74, 56, 77, 55, 68, 56, 74, 60, 64, 52, 78, 59, 51, 63, 67, 62, 83, 74, 55, 61, 64, 73, 73, 59, 82, 63, 55, 52, 68, 66, 63, 56, 46, 79, 57, 69, 56, 64, 75, 64, 54, 78, 54, 43, 62, 65, 85, 78, 62, 46, 53, 50, 64, 65, 78, 60, 73, 92, 93, 43, 65, 65, 63, 59, 73, 44, 70, 72, 59, 97, 68, 92, 59, 62, 106, 51, 47, 71, 65, 53, 85, 57, 62, 68, 55, 60, 79, 55, 58, 62, 51, 35, 58, 76, 66, 70, 63, 53, 115, 115, 54, 73, 61, 66, 72, 65, 93, 66, 74, 47, 52, 56, 54, 61, 56, 82, 79, 74, 76, 59, 77, 63, 74, 72, 53, 65, 53, 62, 71, 53, 62, 52, 81, 52, 70, 50, 69, 61, 49, 76, 62, 65, 68, 75, 64, 63, 62, 54, 61, 60, 85, 52, 66, 70, 66, 63, 59, 76, 110, 56, 61, 79, 60, 64, 63, 64, 79, 52, 87, 56, 69, 63, 67, 67, 61, 73, 69, 87, 45, 89, 67, 79, 77, 72, 59, 67, 77, 55, 67, 57, 66, 81, 52, 142, 68, 78, 86, 72, 76, 68, 72, 69, 65, 47, 49, 54, 70, 61, 65, 66, 58, 71, 59, 60, 31, 72, 65, 98, 54, 50, 70, 76, 59, 69, 83, 89, 63, 91, 74, 65, 65, 56, 78, 80, 69, 64, 62, 63, 45, 67, 73, 64, 51, 63, 53, 61, 72, 71, 52, 69, 53, 55, 77, 65, 50, 83, 76, 64, 65, 68, 58, 50, 65, 93, 89, 53, 95, 102, 62, 68, 46, 52, 66, 63, 52, 57, 56, 71, 73, 58, 63, 65, 66, 69, 77, 62, 59, 76, 56, 88, 77, 60, 59, 68, 77, 75, 52, 83, 77, 52, 52, 62, 50, 98, 52, 65, 71, 72, 60, 72, 94, 76, 76, 78, 61, 72, 83, 70, 80, 58, 67, 49, 52, 53, 70, 75, 68, 56, 64, 86, 63, 73, 99, 74, 164, 56, 64, 74, 76, 60, 47, 68, 68, 50, 60, 67, 67, 65, 83, 67, 76, 83, 44, 67, 53, 64, 91, 49, 48, 60, 72, 59, 69, 64, 70, 71, 57, 67, 54, 87, 70, 65, 61, 60, 57, 53, 67, 57, 57, 51, 66, 59, 85, 74, 73, 89, 66, 78, 54, 74, 68, 56, 58, 61, 61, 74, 77, 70, 60, 59, 73, 66, 61, 60, 49, 55, 63, 70, 67, 59, 63, 77, 71, 70, 63, 64, 62, 56, 63, 71, 73, 64, 67, 57, 59, 72, 70, 57, 117, 69, 61, 43, 83, 57, 60, 53, 71, 63, 86, 69, 64, 77, 56, 45, 50, 53, 54, 86, 65, 56, 134, 56, 50, 63, 79, 125, 86, 84, 83, 62, 60, 83, 69, 68, 72, 82, 59, 45, 62, 50, 58, 74, 40, 59, 54, 61, 75, 70, 77, 59, 71, 63, 60, 70, 54, 62, 80, 90, 58, 61, 87, 76, 57, 67, 70, 62, 72, 62, 57, 61, 63, 65, 67, 91, 54, 70, 68, 45, 62, 90, 53, 95, 58, 88, 52, 60, 71, 84, 61, 105, 58, 66, 50, 87, 95, 82, 91, 55, 62, 67, 66, 81, 78, 75, 70, 78, 45, 72, 66, 39, 60, 71, 53, 59, 62, 60, 62, 60, 92, 56, 73, 50, 54, 50, 60, 71, 77, 71, 77, 70, 52, 72, 46, 68, 56, 53, 52, 63, 48, 50, 92, 78, 73, 66, 77, 80, 81, 60, 69, 69, 61, 69, 84, 63, 63, 53, 71, 85, 59, 76, 67, 62, 67, 72, 72, 58, 111, 81, 51, 40, 53, 57, 76, 73, 57, 47, 82, 46, 60, 64, 67, 52, 39, 72, 78, 108, 57, 64, 36, 57, 80, 64, 69, 70, 64, 57, 60, 53, 68, 68, 57, 47, 84, 69, 60, 68, 64, 57, 68, 64, 63, 70, 83, 52, 52, 54, 62, 75, 74, 59, 98, 64, 61, 70, 50, 78, 62, 71, 59, 71, 63, 92, 82, 47, 62, 41, 48, 77, 71, 61, 55, 75, 59, 66, 58, 88, 88, 45, 62, 73, 91, 77, 66, 57, 62, 59, 77, 79, 64, 77, 106, 63, 84, 61, 75, 61, 58, 42, 66, 58, 58, 58, 69, 62, 57, 76, 69, 69, 93, 52, 76, 43, 49, 76, 79, 74, 56, 63, 71, 94, 58, 73, 45, 60, 64, 60, 53, 60, 68, 52, 64, 86, 54, 42, 73, 78, 89, 50, 76, 63, 59, 56, 66, 64, 46, 63, 54, 63, 61, 46, 49, 52, 46, 47, 79, 60, 61, 41, 67, 78, 41, 71, 74, 87, 58, 66, 48, 73, 66, 82, 63, 77, 69, 72, 68, 55, 52, 66, 59, 65, 52, 81, 77, 68, 61, 67, 57, 61, 51, 82, 77, 58, 54, 60, 55, 54, 59, 69, 57, 90, 96, 63, 61, 70, 68, 70, 75, 63, 71, 52, 52, 64, 40, 60, 60, 80, 51, 66, 93, 54, 56, 62, 82, 53, 83, 74, 79, 73, 75, 62, 74, 68, 69, 51, 95, 76, 57, 52, 71, 74, 80, 64, 54, 55, 57, 65, 71, 83, 50, 66, 53, 61, 64, 64, 54, 45, 57, 77, 64, 51, 56, 62, 60, 84, 65, 69, 69, 62, 55, 51, 51, 62, 54, 60, 58, 78, 47, 88, 98, 67, 132, 62, 63, 63, 60, 64, 72, 69, 88, 44, 73, 82, 65, 61, 93, 61, 67, 84, 60, 64, 54, 54, 73, 66, 53, 79, 96, 76, 59, 60, 65, 65, 78, 61, 57, 66, 59, 75, 64, 66, 62, 46, 68, 64, 63, 64, 44, 53, 63, 89, 65, 84, 51, 73, 52, 78, 67, 80, 67, 52, 40, 61, 63, 72, 63, 45, 63, 66, 60, 61, 70, 60, 78, 66, 63, 66, 76, 77, 62, 65, 62, 66, 79, 59, 68, 77, 68, 50, 67, 73, 63, 49, 57, 80, 62, 53, 94, 70, 68, 60, 52, 62, 72, 52, 63, 63, 52, 70, 48, 61, 60, 56, 68, 45, 57, 56, 76, 67, 61, 61, 47, 64, 80, 47, 72, 50, 69, 60, 68, 70, 85, 68, 64, 65, 53, 45, 64, 64, 80, 73, 55, 53, 69, 76, 81, 75, 81, 64, 61, 69, 61, 37, 82, 70, 67, 73, 110, 63, 66, 72, 54, 61, 69, 78, 67, 74, 80, 66, 69, 74, 55, 53, 73, 64, 58, 55, 75, 74, 59, 53, 78, 110, 63, 66, 59, 65, 61, 84, 54, 59, 56, 81, 78, 75, 58, 55, 54, 68, 68, 56, 60, 78, 84, 59, 58, 47, 72, 61, 60, 63, 62, 50, 50, 66, 80, 73, 73, 60, 105, 66, 58, 71, 62, 77, 65, 71, 57, 64, 76, 62, 84, 50, 56, 67, 55, 106, 67, 88, 69, 73, 51, 63, 62, 132, 60, 54, 45, 53, 65, 58, 65, 61, 78, 57, 43, 69, 64, 53, 67, 87, 64, 52, 108, 56, 91, 48, 74, 76, 80, 50, 49, 60, 85, 56, 61, 82, 75, 59, 77, 56, 85, 58, 58, 61, 44, 60, 83, 58, 62, 36, 92, 59, 66, 64, 66, 61, 110, 65, 60, 69, 51, 69, 76, 66, 67, 59, 82, 67, 62, 62, 66, 73, 63, 65, 62, 57, 64, 73, 62, 54, 60, 93, 57, 76, 67, 60, 73, 80, 92, 64, 101, 65, 54, 50, 62, 64, 54, 76, 66, 57, 131, 76, 60, 66, 66, 68, 74, 71, 57, 94, 61, 64, 74, 64, 64, 61, 75, 59, 56, 60, 79, 75, 78, 66, 75, 65, 63, 46, 60, 99, 71, 69, 65, 60, 56, 60, 88, 71, 66, 56, 57, 59, 82, 53, 84, 65, 64, 55, 58, 74, 53, 68, 64, 47, 71, 57, 48, 59, 60, 62, 86, 56, 66, 66, 89, 59, 63, 86, 63, 56, 74, 93, 59, 54, 65, 71, 59, 82, 59, 67, 63, 68, 70, 61, 73, 64, 84, 70, 50, 64, 64, 60, 62, 90, 76, 48, 67, 69, 76, 82, 71, 76, 63, 168, 74, 70, 74, 67, 85, 55, 73, 66, 67, 78, 76, 65, 79, 55, 63, 63, 65, 66, 41, 73, 61, 71, 73, 61, 43, 45, 59, 77, 57, 108, 81, 49, 68, 60, 66, 82, 60, 40, 71, 67, 60, 62, 61, 63, 62, 75, 61, 72, 73, 54, 56, 52, 56, 45, 80, 49, 85, 62, 35, 64, 54, 74, 77, 74, 60, 105, 54, 53, 75, 74, 55, 88, 57, 73, 58, 43, 65, 62, 66, 70, 41, 80, 70, 78, 81, 76, 76, 61, 58, 96, 56, 76, 55, 58, 78, 68, 77, 74, 62, 65, 55, 73, 73, 80, 66, 78, 37, 77, 86, 41, 62, 73, 53, 67, 83, 61, 80, 70, 57, 79, 62, 73, 77, 58, 100, 58, 86, 40, 66, 95, 51, 90, 49, 67, 61, 48, 67, 62, 47, 48, 62, 69, 65, 49, 74, 59, 81, 71, 82, 71, 71, 65, 77, 66, 65, 177, 58, 38, 59, 68, 67, 52, 40, 40, 39, 72, 51, 68, 50, 77, 51, 56, 74, 43, 45, 61, 79, 52, 103, 57, 53, 41, 96, 56, 69, 65, 48, 81, 67, 52, 61, 57, 53, 53, 88, 55, 61, 55, 62, 52, 53, 72, 55, 51, 85, 53, 95, 104, 57, 83, 44, 79, 85, 73, 69, 63, 81, 74, 85, 89, 46, 63, 99, 64, 52, 69, 88, 75, 64, 76, 85, 61, 46, 65, 60, 58, 48, 61, 48, 65, 62, 77, 81, 37, 72, 60, 51, 46, 66, 64, 73, 51, 75, 64, 73, 60, 79, 88, 35, 62, 69, 61, 57, 73, 68, 60, 61, 62, 55, 88, 78, 65, 84, 55, 95, 57, 88, 59, 77, 65, 68, 76, 61, 66, 37, 82, 61, 70, 69, 63, 62, 57, 62, 54, 53, 55, 77, 81, 59, 42, 68, 65, 65, 75, 63, 76, 124, 68, 69, 78, 61, 78, 71, 87, 86, 51, 62, 61, 49, 43, 56, 59, 54, 57, 63, 64, 63, 64, 79, 62, 58, 73, 69, 51, 66, 65, 77, 53, 56, 69, 80, 51, 85, 61, 66, 77, 57, 78, 68, 59, 59, 55, 99, 63, 66, 62, 46, 47, 67, 55, 80, 76, 85, 85, 69, 74, 77, 71, 70, 48, 58, 70, 49, 53, 55, 71, 62, 60, 69, 70, 51, 57, 73, 90, 66, 48, 49, 56, 73, 54, 65, 67, 71, 65, 68, 83, 67, 82, 103, 63, 52, 57, 75, 81, 69, 82, 67, 61, 65, 48, 98, 59, 70, 66, 61, 69, 49, 71, 63, 69, 70, 59, 119, 86, 61, 72, 48, 72, 65, 76, 62, 49, 61, 52, 50, 68, 74, 40, 63, 41, 72, 63, 75, 59, 71, 61, 63, 68, 60, 62, 63, 104, 59, 58, 36, 41, 50, 71, 62, 82, 59, 51, 60, 48, 82, 48, 59, 60, 54, 64, 72, 73, 81, 85, 88, 70, 61, 64, 43, 73, 78, 73, 58, 74, 55, 59, 81, 82, 62, 67, 67, 83, 59, 66, 62, 83, 48, 104, 101, 78, 79, 47, 55, 42, 70, 89, 65, 57, 44, 67, 78, 88, 41, 47, 73, 77, 89, 62, 51, 52, 66, 74, 100, 43, 68, 80, 63, 71, 48, 57, 63, 58, 67, 50, 60, 44, 58, 88, 69, 70, 75, 69, 139, 109, 61, 56, 48, 70, 54, 66, 46, 68, 59, 57, 37, 90, 72, 59, 72, 57, 54, 49, 60, 67, 49, 70, 91, 62, 51, 64, 61, 64, 79, 53, 61, 82, 68, 68, 80, 57, 42, 61, 59, 48, 96, 53, 57, 64, 59, 76, 62, 52, 71, 81, 63, 58, 83, 59, 69, 66, 62, 68, 60, 73, 78, 94, 70, 67, 79, 64, 96, 98, 55, 56, 61, 56, 69, 79, 59, 43, 59, 71, 49, 68, 80, 65, 45, 62, 47, 79, 55, 59, 61, 76, 59, 74, 82, 60, 72, 72, 91, 57, 85, 89, 80, 91, 62, 154, 74, 69, 69, 99, 58, 66, 78, 66, 64, 47, 63, 78, 53, 62, 74, 65, 56, 69, 71, 71, 78, 51, 69, 66, 75, 71, 78, 84, 53, 53, 67, 66, 57, 67, 54, 63, 83, 65, 61, 104, 46, 70, 62, 67, 45, 44, 84, 49, 74, 68, 75, 57, 64, 79, 66, 64, 67, 89, 60, 65, 85, 58, 90, 41, 82, 63, 59, 61, 49, 59, 78, 59, 64, 54, 77, 89, 88, 112, 63, 64, 73, 91, 69, 66, 72, 68, 56, 50, 63, 61, 58, 56, 56, 85, 89, 59, 78, 96, 64, 70, 52, 56, 57, 60, 58, 60, 54, 61, 56, 97, 88, 80, 66, 55, 52, 71, 42, 68, 59, 64, 73, 54, 72, 56, 65, 62, 57, 67, 60, 54, 102, 53, 61, 80, 43, 52, 88, 62, 74, 62, 92, 76, 55, 60, 91, 58, 66, 88, 67, 61, 61, 82, 58, 64, 76, 69, 61, 68, 73, 51, 66, 65, 56, 85, 40, 85, 59, 48, 53, 44, 48, 73, 45, 56, 59, 56, 59, 65, 58, 59, 62, 50, 143, 56, 96, 88, 89, 75, 56, 77, 61, 75, 71, 63, 52, 61, 88, 64, 96, 55, 70, 76, 58, 69, 130, 70, 62, 70, 67, 55, 80, 46, 53, 74, 71, 73, 78, 79, 147, 77, 62, 49, 38, 65, 73, 90, 53, 63, 91, 53, 50, 75, 67, 70, 73, 62, 56, 51, 63, 61, 54, 89, 58, 65, 86, 116, 63, 42, 64, 59, 62, 41, 60, 49, 55, 64, 48, 54, 83, 69, 31, 67, 55, 61, 53, 58, 38, 68, 41, 68, 67, 74, 65, 55, 62, 68, 48, 54, 68, 56, 56, 73, 74, 57, 45, 87, 55, 65, 52, 72, 71, 65, 56, 104, 53, 103, 64, 67, 40, 62, 67, 94, 50, 66, 92, 65, 60, 90, 59, 71, 72, 132, 80, 66, 49, 60, 53, 54, 57, 83, 64, 48, 77, 78, 47, 46, 52, 59, 87, 30, 50, 68, 73, 67, 52, 53, 82, 36, 87, 73, 19, 62, 49, 73, 69, 56, 64, 66, 80, 57, 91, 62, 56, 56, 78, 121, 49, 67, 71, 98, 69, 88, 41, 58, 62, 60, 64, 61, 44, 81, 55, 46, 69, 59, 63, 62, 81, 52, 68, 54, 50, 70, 57, 60, 54, 61, 57, 69, 46, 68, 68, 59, 63, 65, 83, 71, 52, 113, 58, 66, 73, 61, 64, 76, 51, 84, 85, 49, 69, 96, 64, 51, 52, 63, 61, 58, 62, 57, 56, 113, 51, 50, 70, 89, 48, 84, 62, 56, 62, 48, 53, 50, 87, 72, 54, 67, 62, 59, 49, 47, 50, 63, 68, 86, 75, 70, 68, 45, 66, 52, 73, 58, 48, 67, 61, 47, 69, 107, 94, 60, 64, 81, 51, 49, 56, 65, 66, 51, 61, 54, 76, 81, 77, 60, 62, 55, 84, 69, 78, 57, 77, 65, 56, 50, 52, 109, 47, 54, 53, 70, 57, 57, 65, 73, 72, 60, 49, 51, 84, 62, 56, 65, 75, 72, 48, 98, 58, 67, 64, 77, 78, 66, 60, 88, 74, 74, 63, 98, 151, 61, 58, 75, 58, 94, 65, 110, 64, 58, 64, 58, 59, 41, 56, 55, 68, 75, 78, 59, 87, 51, 86, 64, 112, 62, 67, 59, 60, 84, 88, 43, 49, 58, 54, 86, 58, 58, 76, 53, 69, 77, 66, 62, 41, 80, 51, 50, 58, 57, 58, 66, 66, 70, 36, 46, 54, 72, 66, 55, 54, 42, 55, 60, 60, 72, 57, 64, 78, 58, 60, 64, 60, 33, 76, 52, 80, 55, 71, 63, 47, 53, 67, 74, 68, 61, 62, 80, 57, 83, 67, 75, 59, 74, 72, 76, 66, 52, 54, 52, 59, 55, 80, 75, 47, 39, 72, 59, 59, 80, 71, 56, 71, 50, 61, 61, 69, 63, 62, 80, 94, 58, 80, 66, 76, 51, 50, 68, 47, 63, 62, 45, 92, 77, 66, 66, 70, 64, 70, 90, 72, 59, 58, 60, 43, 71, 73, 84, 74, 64, 78, 64, 59, 64, 72, 86, 60, 72, 41, 80, 61, 73, 70, 58, 57, 54, 60, 87, 75, 59, 68, 72, 68, 69, 50, 64, 57, 85, 73, 59, 86, 56, 36, 59, 103, 80, 62, 93, 55, 61, 54, 69, 66, 67, 64, 60, 50, 87, 62, 51, 66, 51, 59, 80, 72, 61, 50, 68, 60, 55, 50, 57, 68, 57, 74, 58, 51, 74, 70, 63, 63, 55, 108, 78, 49, 58, 89, 87, 78, 80, 54, 75, 50, 60, 62, 54, 61, 46, 69, 63, 63, 49, 61, 55, 70, 60, 66, 51, 57, 68, 34, 64, 66, 53, 67, 47, 56, 149, 74, 62, 46, 79, 73, 62, 104, 61, 57, 57, 73, 68, 79, 63, 121, 75, 62, 67, 34, 76, 71, 55, 87, 70, 52, 67, 116, 67, 61, 60, 47, 62, 73, 59, 53, 87, 70, 65, 64, 78, 81, 70, 71, 64, 51, 55, 49, 79, 84, 53, 56, 84, 79, 44, 64, 71, 64, 73, 53, 75, 92, 47, 62, 43, 65, 61, 86, 66, 59, 62, 57, 98, 58, 65, 51, 61, 56, 95, 117, 66, 76, 80, 59, 53, 47, 71, 77, 52, 73, 64, 81, 49, 60, 54, 56, 67, 48, 73, 70, 59, 79, 66, 132, 73, 81, 64, 47, 64, 89, 53, 55, 78, 72, 53, 67, 70, 70, 85, 43, 46, 54, 67, 56, 58, 68, 70, 58, 68, 67, 107, 62, 47, 57, 63, 73, 62, 52, 65, 51, 49, 51, 40, 56, 54, 61, 47, 69, 61, 62, 67, 54, 66, 58, 56, 46, 63, 83, 68, 63, 74, 78, 67, 66, 95, 47, 69, 50, 66, 53, 65, 46, 61, 56, 59, 59, 73, 80, 47, 57, 52, 57, 57, 65, 66, 64, 62, 63, 86, 62, 65, 59, 95, 75, 48, 72, 54, 102, 43, 72, 62, 56, 73, 76, 55, 71, 47, 84, 66, 86, 50, 76, 63, 84, 71, 61, 89, 63, 67, 63, 83, 77, 66, 71, 49, 82, 77, 84, 66, 57, 39, 55, 58, 33, 65, 80, 83, 43, 58, 62, 85, 69, 51, 67, 62, 78, 73, 65, 51, 65, 61, 53, 62, 53, 47, 64, 74, 57, 58, 60, 57, 76, 85, 50, 63, 55, 62, 68, 59, 53, 61, 88, 52, 53, 59, 61, 100, 58, 51, 70, 52, 81, 67, 51, 67, 62, 108, 124, 47, 84, 57, 62, 70, 73, 52, 65, 57, 78, 42, 83, 66, 59, 69, 51, 56, 63, 45, 63, 67, 67, 106, 67, 68, 71, 70, 69, 57, 76, 55, 86, 56, 46, 70, 99, 62, 55, 74, 65, 62, 60, 98, 74, 40, 61, 65, 74, 85, 56, 41, 65, 69, 66, 71, 65, 57, 51, 55, 72, 57, 59, 62, 72, 87, 57, 40, 63, 42, 92, 58, 64, 68, 63, 44, 53, 56, 87, 43, 64, 61, 67, 72, 47, 63, 57, 84, 92, 74, 84, 90, 84, 54, 75, 68, 46, 55, 84, 65, 55, 63, 57, 90, 53, 50, 62, 42, 61, 70, 65, 67, 68, 59, 71, 58, 70, 44, 75, 72, 54, 49, 66, 79, 123, 49, 73, 69, 74, 90, 57, 52, 67, 65, 60, 61, 82, 65, 68, 65, 66, 66, 73, 50, 73, 72, 76, 72, 65, 52, 81, 76, 59, 81, 76, 66, 69, 69, 63, 68, 45, 51, 60, 63, 61, 66, 69, 67, 75, 99, 47, 72, 122, 90, 75, 61, 62, 55, 63, 56, 71, 65, 57, 72, 67, 41, 44, 73, 49, 56, 72, 70, 69, 75, 74, 81, 116, 48, 66, 57, 79, 69, 69, 58, 60, 62, 40, 64, 47, 49, 107, 60, 68, 46, 87, 75, 62, 78, 61, 65, 58, 80, 49, 55, 82, 62, 85, 64, 80, 80, 53, 67, 99, 68, 56, 92, 83, 78, 66, 75, 37, 41, 50, 50, 46, 80, 41, 56, 57, 63, 50, 75, 63, 64, 64, 52, 88, 36, 68, 76, 63, 71, 69, 59, 62, 67, 83, 73, 66, 58, 59, 50, 52, 64, 75, 59, 50, 56, 76, 57, 66, 74, 56, 50, 55, 57, 46, 123, 59, 58, 60, 74, 67, 66, 69, 59, 58, 76, 47, 75, 59, 58, 62, 63, 84, 56, 67, 51, 79, 81, 74, 52, 79, 57, 54, 66, 57, 68, 66, 54, 61, 58, 66, 44, 50, 71, 70, 46, 79, 63, 46, 72, 33, 66, 52, 84, 60, 81, 48, 51, 77, 101, 57, 58, 80, 74, 52, 48, 82, 66, 64, 60, 63, 58, 74, 100, 65, 50, 62, 67, 81, 62, 76, 95, 82, 52, 61, 45, 57, 49, 99, 33, 50, 51, 37, 76, 63, 77, 137, 53, 69, 66, 72, 66, 91, 80, 86, 50, 66, 76, 69, 63, 42, 69, 71, 58, 58, 78, 66, 86, 91, 110, 80, 52, 105, 60, 67, 81, 63, 50, 64, 68, 74, 72, 52, 92, 96, 54, 68, 59, 56, 60, 68, 55, 55, 110, 137, 42, 65, 57, 67, 68, 73, 61, 75, 48, 86, 65, 72, 70, 60, 73, 66, 76, 61, 66, 55, 55, 89, 60, 56, 67, 53, 74, 72, 78, 68, 75, 65, 69, 82, 76, 82, 66, 55, 68, 75, 80, 80, 74, 56, 42, 81, 83, 81, 51, 70, 64, 71, 95, 56, 54, 45, 51, 51, 72, 53, 49, 111, 71, 68, 79, 78, 65, 68, 61, 50, 91, 54, 44, 62, 49, 55, 60, 64, 46, 67, 71, 73, 58, 55, 57, 57, 50, 72, 66, 78, 93, 50, 59, 69, 39, 51, 70, 74, 78, 60, 74, 56, 59, 50, 55, 78, 55, 97, 79, 74, 81, 60, 61, 64, 73, 66, 57, 66, 82, 53, 91, 65, 71, 72, 80, 84, 61, 49, 87, 50, 56, 114, 99, 71, 74, 74, 75, 93, 67, 82, 80, 83, 111, 79, 80, 63, 76, 71, 75, 82, 89, 50, 58, 62, 67, 72, 79, 89, 44, 69, 77, 76, 73, 48, 59, 57, 69, 80, 62, 71, 42, 48, 45, 68, 65, 59, 77, 95, 66, 61, 68, 63, 61, 48, 82, 63, 55, 66, 55, 76, 50, 106, 67, 50, 51, 74, 60, 58, 58, 74, 55, 44, 59, 55, 65, 54, 52, 61, 48, 76, 59, 70, 74, 101, 65, 54, 60, 67, 45, 69, 66, 54, 45, 66, 54, 66, 51, 62, 42, 72, 71, 87, 63, 72, 64, 52, 69, 58, 71, 61, 65, 65, 68, 76, 61, 80, 60, 64, 63, 50, 56, 53, 82, 62, 73, 54, 64, 67, 58, 59, 56, 78, 55, 60, 54, 77, 52, 71, 61, 64, 68, 61, 51, 95, 53, 64, 58, 51, 70, 64, 42, 54, 60, 61, 80, 56, 65, 92, 61, 78, 78, 65, 41, 59, 65, 61, 57, 62, 71, 62, 71, 54, 62, 74, 80, 87, 64, 68, 57, 56, 62, 47, 85, 60, 60, 58, 67, 73, 65, 85, 53, 70, 45, 92, 73, 43, 134, 70, 56, 43, 81, 80, 68, 64, 67, 49, 55, 63, 62, 80, 60, 72, 46, 51, 49, 67, 68, 77, 58, 71, 80, 55, 70, 60, 57, 62, 63, 73, 64, 58, 52, 70, 75, 63, 44, 65, 83, 56, 73, 30, 63, 68, 59, 44, 90, 91, 73, 76, 63, 53, 101, 55, 71, 96, 50, 66, 65, 51, 61, 44, 65, 101, 83, 62, 66, 69, 57, 67, 56, 75, 69, 63, 61, 67, 41, 56, 58, 74, 94, 80, 84, 100, 70, 64, 53, 66, 71, 67, 54, 50, 71, 78, 59, 74, 50, 69, 74, 63, 63, 59, 55, 51, 84, 82, 92, 63, 64, 65, 38, 58, 66, 50, 66, 53, 93, 57, 77, 47, 72, 63, 48, 47, 70, 68, 44, 58, 73, 95, 65, 94, 59, 67, 46, 49, 69, 83, 65, 61, 59, 67, 44, 54, 54, 105, 53, 55, 79, 75, 55, 55, 79, 65, 69, 64, 40, 52, 67, 54, 55, 76, 56, 65, 67, 65, 58, 70, 91, 74, 88, 70, 79, 59, 45, 56, 71, 87, 66, 75, 57, 70, 77, 68, 63, 67, 58, 53, 60, 90, 74, 54, 84, 75, 73, 43, 68, 82, 75, 61, 55, 63, 44, 56, 73, 63, 88, 68, 78, 68, 80, 109, 63, 60, 57, 51, 57, 69, 77, 76, 64, 59, 56, 66, 50, 70, 66, 62, 50, 73, 77, 61, 47, 88, 74, 76, 79, 56, 68, 69, 63, 57, 112, 50, 68, 68, 58, 47, 49, 67, 52, 85, 67, 69, 74, 49, 81, 51, 74, 105, 64, 61, 67, 63, 76, 54, 66, 69, 49, 61, 85, 54, 70, 43, 60, 58, 72, 82, 51, 52, 47, 76, 57, 95, 65, 73, 66, 62, 47, 84, 67, 48, 56, 89, 84, 64, 73, 62, 102, 56, 54, 118, 66, 67, 60, 72, 85, 64, 72, 71, 73, 65, 61, 84, 68, 53, 78, 98, 83, 36, 63, 77, 95, 92, 50, 78, 55, 63, 66, 80, 81, 93, 63, 60, 74, 63, 87, 68, 66, 52, 51, 59, 47, 49, 59, 72, 42, 67, 55, 70, 60, 72, 42, 44, 63, 59, 47, 78, 70, 75, 63, 69, 58, 50, 127, 88, 70, 69, 55, 95, 120, 75, 85, 56, 65, 50, 42, 69, 79, 57, 71, 70, 62, 51, 78, 67, 67, 70, 63, 72, 76, 65, 72, 65, 61, 37, 76, 61, 85, 63, 66, 63, 75, 62, 53, 83, 61, 62, 56, 48, 44, 85, 71, 59, 60, 61, 67, 60, 65, 71, 93, 62, 72, 62, 62, 57, 58, 90, 64, 59, 67, 68, 87, 70, 74, 78, 57, 65, 63, 64, 74, 62, 60, 49, 53, 55, 74, 93, 58, 82, 72, 64, 75, 89, 92, 90, 56, 56, 52, 73, 56, 65, 77, 69, 72, 72, 71, 49, 73, 75, 59, 54, 63, 65, 86, 67, 72, 64, 39, 61, 79, 78, 76, 70, 73, 66, 54, 36, 64, 56, 54, 57, 74, 71, 61, 79, 60, 74, 56, 64, 70, 64, 73, 88, 63, 65, 59, 70, 57, 68, 44, 102, 46, 76, 66, 64, 80, 77, 58, 53, 44, 49, 71, 74, 66, 74, 65, 61, 86, 67, 38, 74, 69, 74, 49, 73, 73, 61, 61, 77, 50, 47, 71, 51, 65, 51, 43, 56, 68, 62, 86, 74, 69, 63, 84, 67, 61, 53, 51, 64, 65, 56, 69, 102, 63, 64, 57, 45, 52, 80, 82, 72, 61, 95, 63, 54, 84, 76, 68, 46, 58, 66, 71, 52, 65, 58, 49, 78, 70, 59, 73, 51, 53, 78, 59, 57, 75, 57, 72, 63, 74, 59, 67, 71, 61, 61, 82, 94, 59, 63, 62, 50, 61, 65, 50, 64, 55, 46, 67, 69, 68, 71, 121, 72, 54, 60, 62, 66, 54, 59, 83, 77, 73, 66, 44, 56, 46, 76, 77, 55, 68, 91, 73, 68, 87, 69, 61, 56, 111, 75, 65, 57, 52, 78, 85, 61, 82, 81, 45, 69, 73, 39, 51, 82, 39, 69, 58, 59, 53, 66, 64, 63, 42, 70, 65, 62, 70, 60, 84, 91, 67, 62, 52, 40, 79, 59, 54, 51, 80, 69, 53, 35, 93, 75, 64, 70, 71, 82, 79, 59, 65, 84, 51, 71, 66, 43, 64, 60, 58, 75, 69, 66, 78, 88, 59, 72, 79, 58, 71, 52, 60, 68, 54, 108, 84, 74, 60, 68, 70, 89, 80, 61, 50, 61, 65, 87, 57, 76, 93, 93, 55, 75, 79, 55, 67, 65, 60, 51, 46, 63, 81, 49, 57, 60, 116, 100, 65, 75, 65, 55, 52, 65, 50, 57, 95, 47, 58, 57, 72, 95, 55, 68, 65, 70, 56, 70, 62, 75, 60, 62, 56, 73, 61, 64, 51, 89, 81, 69, 74, 68, 59, 65, 57, 91, 64, 55, 89, 67, 73, 60, 43, 85, 56, 102, 55, 89, 50, 65, 66, 50, 64, 68, 57, 59, 59, 58, 73, 62, 79, 95, 59, 62, 52, 57, 53, 53, 63, 59, 81, 71, 79, 71, 48, 67, 74, 58, 57, 49, 91, 61, 86, 79, 58, 74, 71, 73, 57, 58, 67, 47, 56, 42, 66, 102, 71, 79, 75, 59, 52, 74, 51, 48, 75, 72, 75, 62, 57, 63, 68, 49, 78, 77, 63, 79, 62, 69, 54, 88, 69, 54, 70, 64, 71, 70, 58, 78, 53, 132, 64, 68, 56, 69, 68, 65, 70, 71, 52, 63, 56, 57, 61, 67, 74, 46, 50, 54, 88, 76, 65, 91, 75, 61, 73, 79, 46, 60, 65, 70, 48, 43, 64, 60, 56, 57, 71, 64, 76, 56, 58, 63, 71, 70, 60, 28, 59, 68, 68, 80, 80, 61, 72, 63, 68, 76, 59, 73, 76, 70, 79, 50, 62, 63, 51, 67, 70, 88, 64, 58, 57, 57, 70, 76, 60, 52, 62, 63, 71, 85, 59, 50, 52, 74, 65, 51, 55, 61, 58, 78, 81, 45, 69, 68, 52, 83, 55, 62, 65, 78, 54, 77, 69, 52, 53, 35, 59, 51, 57, 60, 62, 59, 67, 81, 65, 75, 52, 66, 82, 51, 74, 72, 62, 65, 63, 65, 75, 55, 69, 69, 53, 71, 45, 56, 93, 80, 67, 57, 92, 69, 67, 63, 56, 78, 82, 68, 62, 65, 70, 70, 97, 56, 63, 79, 86, 62, 46, 65, 98, 68, 60, 46, 53, 74, 54, 60, 79, 54, 82, 58, 78, 84, 67, 61, 64, 61, 60, 80, 80, 62, 58, 54, 83, 56, 76, 52, 78, 63, 75, 54, 74, 58, 57, 82, 110, 49, 84, 75, 50, 57, 56, 66, 82, 67, 72, 73, 61, 82, 56, 59, 49, 57, 73, 54, 60, 65, 144, 73, 67, 58, 62, 64, 66, 56, 49, 81, 61, 81, 52, 76, 71, 65, 73, 51, 87, 58, 56, 54, 68, 40, 108, 88, 50, 59, 73, 41, 75, 55, 50, 60, 74, 64, 62, 62, 73, 70, 67, 50, 72, 61, 71, 76, 64, 60, 72, 82, 50, 81, 54, 62, 55, 52, 54, 76, 70, 58, 35, 62, 67, 77, 70, 68, 61, 53, 49, 76, 92, 66, 51, 58, 51, 74, 58, 51, 58, 63, 68, 101, 54, 52, 70, 66, 61, 88, 56, 59, 58, 89, 65, 59, 58, 53, 64, 89, 64, 59, 58, 62, 73, 83, 86, 63, 59, 71, 54, 64, 74, 72, 84, 64, 93, 53, 49, 61, 55, 52, 54, 69, 52, 77, 51, 39, 58, 41, 45, 68, 69, 131, 59, 68, 59, 68, 81, 94, 62, 63, 65, 69, 69, 60, 74, 41, 48, 64, 70, 38, 74, 66, 57, 79, 70, 56, 64, 96, 46, 69, 46, 53, 92, 74, 49, 45, 55, 72, 43, 68, 68, 55, 45, 90, 67, 52, 85, 54, 78, 104, 48, 76, 52, 74, 68, 69, 54, 86, 62, 43, 86, 48, 83, 74, 83, 59, 48, 53, 57, 50, 60, 84, 55, 67, 61, 79, 58, 50, 91, 63, 67, 62, 70, 116, 69, 55, 71, 48, 80, 63, 65, 97, 70, 83, 84, 56, 105, 88, 57, 65, 51, 59, 34, 71, 64, 69, 75, 83, 65, 66, 53, 61, 75, 74, 77, 67, 55, 55, 44, 54, 78, 73, 51, 56, 55, 86, 77, 59, 70, 62, 56, 59, 58, 59, 65, 58, 62, 66, 59, 63, 64, 73, 69, 84, 83, 44, 69, 46, 52, 64, 60, 59, 63, 60, 93, 99, 65, 67, 77, 65, 128, 73, 54, 80, 67, 70, 63, 71, 56, 52, 63, 68, 44, 62, 53, 62, 59, 60, 57, 98, 74, 69, 72, 62, 51, 34, 74, 62, 87, 84, 69, 70, 62, 81, 51, 74, 56, 88, 50, 64, 67, 70, 91, 59, 59, 109, 61, 83, 61, 69, 78, 62, 74, 89, 55, 77, 53, 88, 77, 77, 58, 70, 93, 59, 55, 67, 62, 67, 118, 54, 67, 76, 62, 44, 65, 65, 66, 60, 61, 76, 56, 74, 65, 56, 62, 70, 63, 68, 119, 67, 51, 69, 87, 80, 79, 62, 68, 43, 71, 76, 54, 78, 65, 73, 81, 70, 76, 47, 54, 61, 98, 79, 64, 60, 72, 58, 59, 45, 49, 64, 57, 79, 74, 74, 87, 61, 61, 67, 62, 74, 60, 87, 52, 97, 74, 53, 57, 79, 52, 58, 72, 63, 65, 79, 59, 73, 63, 78, 78, 46, 70, 95, 82, 60, 48, 59, 75, 54, 75, 65, 69, 51, 49, 48, 69, 64, 62, 60, 61, 88, 52, 58, 65, 68, 61, 52, 74, 57, 75, 58, 69, 64, 58, 68, 51, 58, 82, 91, 67, 66, 88, 65, 58, 100, 57, 62, 64, 54, 64, 73, 73, 60, 61, 74, 62, 70, 79, 70, 55, 63, 65, 71, 54, 82, 65, 55, 70, 53, 69, 60, 83, 66, 48, 52, 79, 70, 67, 58, 49, 57, 56, 57, 56, 71, 97, 78, 83, 70, 75, 61, 63, 63, 64, 87, 54, 66, 57, 71, 62, 53, 71, 64, 73, 68, 66, 60, 61, 81, 66, 68, 63, 44, 78, 62, 75, 71, 62, 58, 54, 63, 55, 66, 53, 68, 97, 119, 60, 42, 77, 55, 77, 44, 72, 95, 89, 60, 51, 54, 62, 46, 69, 68, 64, 98, 48, 75, 65, 67, 56, 61, 76, 70, 56, 60, 78, 67, 54, 57, 86, 83, 56, 83, 55, 47, 59, 47, 67, 83, 85, 112, 64, 65, 90, 90, 42, 80, 73, 95, 64, 71, 77, 62, 70, 47, 75, 87, 55, 51, 62, 58, 58, 61, 60, 64, 41, 64, 60, 66, 77, 70, 66, 60, 63, 67, 57, 78, 68, 71, 66, 65, 80, 43, 78, 53, 68, 60, 58, 60, 62, 82, 54, 90, 83, 114, 73, 62, 67, 51, 66, 62, 62, 55, 68, 56, 62, 85, 52, 81, 59, 80, 52, 51, 57, 95, 67, 91, 43, 58, 67, 60, 54, 79, 48, 68, 48, 52, 75, 59, 72, 59, 86, 77, 45, 66, 113, 67, 64, 61, 34, 69, 98, 56, 67, 56, 75, 62, 93, 61, 68, 62, 64, 50, 76, 56, 66, 71, 73, 64, 65, 55, 71, 82, 52, 63, 84, 66, 57, 83, 68, 60, 56, 51, 60, 65, 63, 48, 66, 104, 64, 57, 76, 79, 53, 62, 58, 64, 55, 83, 65, 60, 65, 77, 50, 56, 60, 57, 71, 52, 75, 109, 65, 80, 60, 58, 61, 58, 58, 65, 46, 69, 67, 70, 80, 56, 48, 83, 73, 63, 59, 58, 61, 69, 74, 61, 60, 54, 64, 85, 62, 91, 65, 66, 86, 57, 77, 87, 57, 50, 79, 61, 68, 55, 52, 60, 63, 76, 55, 76, 72, 54, 53, 62, 72, 66, 82, 55, 59, 62, 51, 63, 60, 53, 67, 72, 54, 69, 62, 54, 72, 63, 60, 46, 77, 58, 62, 72, 60, 92, 55, 51, 62, 58, 76, 56, 53, 66, 102, 71, 63, 55, 63, 71, 52, 82, 68, 36, 59, 58, 83, 92, 60, 69, 97, 58, 85, 157, 63, 78, 47, 67, 56, 74, 44, 84, 59, 45, 61, 55, 103, 50, 54, 64, 51, 66, 60, 58, 55, 63, 58, 60, 56, 56, 48, 64, 68, 64, 72, 70, 61, 51, 80, 56, 61, 42, 55, 53, 77, 64, 59, 69, 52, 72, 62, 69, 78, 59, 63, 63, 65, 62, 91, 67, 94, 55, 67, 82, 60, 45, 60, 69, 49, 69, 76, 55, 69, 73, 60, 108, 67, 69, 49, 105, 66, 72, 68, 65, 57, 61, 50, 69, 63, 57, 54, 55, 69, 77, 55, 78, 56, 78, 73, 57, 73, 64, 74, 87, 52, 72, 70, 52, 59, 64, 53, 63, 56, 57, 69, 86, 81, 58, 87, 62, 88, 51, 51, 83, 67, 53, 50, 57, 60, 70, 55, 57, 63, 69, 65, 37, 56, 86, 66, 72, 53, 56, 81, 64, 60, 61, 52, 70, 65, 54, 79, 120, 64, 58, 72, 73, 63, 52, 65, 55, 77, 69, 94, 88, 73, 67, 80, 73, 62, 65, 72, 77, 73, 77, 63, 56, 70, 65, 57, 63, 78, 68, 73, 64, 65, 66, 81, 68, 67, 67, 80, 59, 72, 55, 67, 47, 47, 62, 59, 68, 71, 80, 46, 42, 48, 60, 63, 46, 70, 107, 69, 50, 64, 68, 53, 73, 58, 88, 73, 51, 55, 62, 59, 73, 50, 66, 55, 54, 68, 61, 55, 79, 61, 58, 48, 65, 75, 54, 85, 82, 65, 70, 35, 73, 57, 82, 64, 78, 80, 85, 54, 63, 63, 81, 85, 58, 62, 66, 57, 61, 58, 103, 60, 41, 48, 48, 68, 60, 34, 55, 58, 77, 69, 57, 63, 83, 60, 63, 76, 76, 66, 74, 73, 60, 57, 70, 58, 68, 39, 64, 87, 55, 58, 88, 60, 54, 55, 66, 68, 66, 50, 69, 84, 61, 59, 68, 59, 73, 70, 39, 70, 59, 40, 67, 39, 63, 54, 87, 76, 57, 60, 77, 62, 63, 60, 87, 74, 69, 55, 60, 69, 56, 63, 77, 57, 90, 56, 71, 68, 47, 63, 51, 67, 60, 58, 52, 37, 69, 48, 65, 54, 58, 85, 60, 61, 57, 56, 60, 70, 82, 61, 61, 62, 59, 83, 54, 62, 66, 58, 74, 85, 55, 68, 65, 51, 84, 88, 91, 82, 46, 61, 80, 75, 79, 67, 60, 54, 76, 72, 61, 45, 51, 52, 75, 63, 40, 53, 140, 79, 52, 68, 66, 56, 62, 74, 61, 69, 57, 73, 51, 51, 49, 105, 67, 64, 63, 47, 36, 89, 47, 46, 51, 59, 106, 66, 71, 53, 74, 64, 74, 45, 68, 60, 78, 55, 64, 54, 81, 82, 70, 51, 55, 55, 102, 56, 47, 60, 59, 91, 67, 66, 103, 72, 77, 50, 55, 58, 56, 57, 79, 60, 60, 69, 70, 73, 84, 63, 55, 61, 60, 60, 69, 77, 52, 52, 71, 53, 126, 86, 69, 45, 79, 60, 87, 62, 72, 99, 59, 55, 68, 61, 73, 60, 46, 84, 57, 68, 67, 49, 58, 58, 46, 65, 83, 68, 67, 70, 75, 73, 71, 68, 62, 80, 71, 81, 81, 68, 68, 76, 80, 60, 75, 53, 63, 58, 60, 61, 65, 68, 46, 65, 51, 69, 59, 72, 60, 57, 44, 61, 59, 84, 65, 67, 95, 62, 67, 47, 70, 64, 65, 64, 54, 75, 61, 60, 53, 73, 55, 75, 60, 75, 86, 84, 93, 75, 65, 72, 68, 58, 56, 86, 67, 129, 57, 53, 56, 71, 54, 68, 56, 64, 86, 50, 49, 57, 88, 63, 57, 79, 85, 56, 69, 79, 59, 64, 80, 109, 68, 87, 81, 64, 60, 49, 71, 58, 68, 69, 84, 46, 68, 68, 58, 61, 61, 58, 80, 71, 80, 81, 61, 77, 62, 67, 61, 61, 65, 53, 102, 58, 73, 76, 63, 53, 59, 73, 73, 48, 85, 63, 56, 57, 84, 52, 87, 89, 94, 55, 72, 56, 57, 66, 75, 56, 62, 56, 46, 55, 83, 75, 88, 59, 60, 63, 48, 60, 68, 67, 81, 100, 96, 79, 61, 46, 66, 57, 55, 78, 69, 52, 81, 65, 81, 86, 66, 44, 68, 53, 64, 66, 133, 74, 83, 102, 56, 74, 48, 74, 82, 88, 91, 67, 81, 72, 61, 62, 65, 51, 42, 71, 89, 66, 76, 79, 77, 75, 76, 94, 56, 93, 64, 42, 60, 53, 59, 62, 68, 59, 71, 59, 54, 56, 69, 73, 57, 59, 92, 54, 51, 62, 91, 44, 75, 61, 76, 67, 58, 72, 78, 77, 65, 49, 77, 65, 65, 46, 68, 56, 76, 50, 65, 61, 105, 56, 52, 69, 66, 78, 58, 82, 67, 60, 68, 73, 52, 92, 65, 67, 57, 64, 83, 54, 58, 68, 55, 64, 73, 71, 63, 70, 75, 88, 63, 77, 53, 75, 72, 69, 56, 69, 96, 73, 73, 51, 62, 73, 67, 58, 65, 84, 75, 61, 83, 61, 86, 68, 65, 58, 72, 63, 74, 59, 62, 64, 62, 53, 62, 60, 66, 69, 70, 58, 74, 84, 72, 84, 83, 65, 61, 63, 64, 70, 64, 66, 63, 69, 54, 53, 73, 55, 54, 67, 57, 63, 61, 64, 48, 82, 68, 65, 68, 56, 70, 72, 64, 60, 75, 43, 56, 77, 56, 70, 30, 73, 61, 68, 66, 55, 74, 73, 92, 74, 61, 65, 57, 60, 69, 82, 69, 66, 66, 69, 62, 58, 63, 62, 76, 71, 53, 74, 59, 49, 63, 110, 69, 64, 53, 75, 58, 55, 53, 94, 75, 65, 55, 70, 44, 58, 55, 68, 56, 65, 71, 58, 84, 52, 51, 65, 68, 73, 65, 63, 71, 106, 72, 65, 44, 54, 63, 67, 73, 50, 80, 51, 54, 78, 54, 61, 56, 67, 132, 62, 57, 78, 59, 70, 61, 46, 62, 62, 63, 64, 80, 74, 64, 58, 69, 70, 57, 73, 69, 60, 67, 59, 59, 70, 63, 40, 59, 70, 55, 73, 66, 65, 55, 58, 79, 73, 92, 61, 93, 77, 62, 79, 64, 59, 47, 50, 52, 45, 57, 62, 56, 73, 78, 106, 62, 69, 64, 84, 55, 55, 57, 62, 68, 64, 58, 72, 64, 69, 55, 60, 67, 55, 71, 61, 69, 52, 54, 68, 44, 67, 55, 71, 52, 71, 66, 69, 63, 66, 60, 66, 57, 59, 68, 59, 68, 63, 84, 90, 67, 58, 57, 75, 73, 66, 81, 50, 88, 55, 66, 68, 65, 71, 56, 71, 66, 89, 57, 66, 63, 70, 65, 85, 55, 59, 62, 59, 58, 143, 70, 45, 67, 64, 59, 60, 57, 52, 58, 48, 63, 72, 57, 66, 99, 85, 62, 43, 77, 89, 72, 72, 57, 65, 79, 54, 64, 74, 60, 56, 70, 63, 70, 47, 61, 52, 61, 64, 82, 76, 40, 64, 70, 54, 68, 63, 78, 56, 59, 80, 60, 68, 59, 66, 78, 64, 85, 69, 58, 54, 88, 52, 69, 50, 57, 63, 108, 61, 64, 74, 57, 84, 41, 64, 81, 61, 63, 57, 69, 67, 80, 65, 56, 81, 66, 52, 62, 77, 107, 62, 90, 76, 52, 71, 71, 75, 65, 59, 86, 58, 64, 61, 61, 73, 66, 83, 61, 58, 59, 71, 82, 76, 67, 58, 60, 65, 57, 64, 65, 68, 63, 62, 78, 63, 50, 66, 85, 65, 55, 69, 55, 80, 56, 69, 61, 54, 59, 60, 49, 70, 66, 63, 72, 75, 50, 50, 75, 50, 60, 56, 65, 68, 68, 56, 68, 62, 58, 51, 53, 53, 63, 57, 66, 64, 56, 48, 55, 66, 66, 58, 78, 80, 67, 63, 58, 69, 64, 63, 56, 71, 63, 90, 64, 68, 71, 71, 61, 77, 75, 66, 66, 59, 67, 66, 48, 66, 57, 60, 66, 75, 69, 79, 60, 106, 88, 65, 67, 51, 64, 76, 49, 54, 54, 72, 79, 90, 65, 58, 76, 75, 63, 54, 61, 58, 57, 116, 82, 58, 66, 69, 83, 57, 51, 80, 54, 90, 66, 57, 58, 33, 68, 48, 45, 66, 68, 51, 66, 59, 64, 64, 56, 66, 64, 69, 71, 74, 61, 55, 81, 77, 34, 59, 72, 53, 66, 67, 66, 73, 63, 47, 69, 68, 64, 51, 82, 80, 55, 52, 56, 47, 85, 57, 53, 71, 48, 52, 60, 77, 65, 64, 50, 52, 62, 68, 61, 82, 76, 68, 66, 56, 57, 61, 86, 77, 55, 60, 60, 64, 61, 58, 52, 55, 63, 62, 48, 66, 63, 58, 42, 69, 62, 56, 65, 69, 55, 60, 72, 53, 70, 90, 62, 70, 52, 59, 70, 54, 77, 54, 59, 85, 72, 53, 77, 47, 75, 69, 77, 63, 66, 61, 73, 59, 65, 56, 60, 68, 96, 66, 46, 55, 64, 65, 77, 63, 114, 58, 109, 71, 58, 51, 63, 74, 69, 71, 59, 64, 45, 62, 69, 66, 46, 83, 110, 54, 61, 68, 87, 53, 90, 54, 56, 75, 58, 57, 60, 62, 69, 48, 57, 46, 60, 48, 67, 60, 63, 71, 73, 99, 68, 55, 75, 80, 50, 71, 57, 63, 69, 76, 82, 67, 87, 78, 56, 76, 99, 65, 54, 58, 53, 68, 48, 54, 79, 89, 50, 70, 63, 80, 63, 61, 80, 87, 48, 73, 63, 65, 94, 62, 48, 77, 66, 41, 59, 68, 56, 73, 54, 72, 82, 62, 68, 44, 64, 73, 73, 62, 64, 56, 183, 51, 65, 68, 58, 44, 54, 49, 63, 61, 51, 68, 86, 49, 52, 72, 64, 74, 52, 66, 93, 77, 64, 58, 53, 70, 65, 67, 63, 68, 58, 82, 92, 60, 60, 56, 82, 74, 64, 64, 64, 62, 65, 66, 42, 67, 81, 66, 73, 50, 63, 52, 69, 71, 40, 51, 59, 68, 61, 64, 70, 75, 65, 54, 72, 75, 59, 70, 56, 73, 66, 68, 53, 65, 67, 61, 68, 73, 61, 52, 60, 64, 84, 87, 59, 86, 51, 49, 68, 50, 51, 53, 56, 78, 57, 51, 63, 63, 52, 47, 54, 66, 61, 77, 61, 107, 55, 74, 79, 60, 70, 92, 55, 82, 65, 66, 58, 67, 69, 67, 62, 44, 65, 62, 56, 60, 55, 76, 55, 83, 43, 65, 60, 48, 55, 64, 53, 67, 81, 79, 66, 71, 80, 56, 59, 64, 63, 77, 62, 76, 76, 62, 67, 66, 79, 47, 60, 69, 76, 56, 76, 64, 66, 86, 56, 58, 68, 51, 75, 60, 68, 62, 64, 71, 78, 78, 54, 72, 62, 50, 73, 82, 57, 74, 38, 58, 90, 59, 61, 70, 50, 74, 88, 68, 81, 67, 55, 99, 64, 55, 85, 53, 57, 71, 66, 57, 75, 85, 68, 70, 73, 49, 51, 60, 65, 59, 65, 122, 69, 82, 67, 63, 79, 65, 63, 70, 62, 57, 63, 76, 71, 54, 62, 80, 67, 59, 70, 58, 54, 47, 67, 70, 58, 74, 68, 75, 70, 76, 55, 59, 60, 64, 59, 61, 52, 56, 54, 65, 44, 57, 63, 59, 53, 34, 49, 36, 54, 76, 88, 50, 67, 50, 53, 77, 57, 80, 61, 66, 67, 63, 61, 96, 76, 57, 61, 52, 71, 73, 116, 60, 60, 51, 90, 67, 66, 43, 73, 96, 108, 54, 70, 40, 74, 66, 51, 89, 74, 58, 78, 73, 63, 41, 55, 60, 75, 52, 88, 46, 56, 48, 63, 52, 67, 64, 49, 57, 44, 71, 66, 67, 77, 61, 64, 81, 62, 63, 56, 77, 77, 58, 70, 49, 59, 82, 66, 67, 72, 66, 59, 58, 67, 61, 57, 67, 71, 79, 65, 49, 68, 74, 88, 62, 69, 126, 76, 56, 76, 75, 67, 77, 76, 64, 49, 64, 60, 47, 56, 73, 67, 53, 68, 49, 72, 52, 50, 72, 49, 57, 52, 53, 103, 67, 69, 74, 74, 34, 54, 47, 68, 65, 60, 75, 75, 54, 62, 64, 70, 77, 57, 85, 105, 74, 67, 57, 56, 63, 62, 63, 85, 78, 69, 52, 40, 64, 74, 69, 71, 88, 60, 51, 44, 45, 77, 82, 98, 54, 53, 80, 56, 83, 58, 57, 75, 84, 65, 53, 57, 70, 78, 59, 63, 53, 57, 54, 69, 66, 58, 61, 85, 57, 38, 56, 61, 79, 87, 38, 52, 51, 97, 65, 64, 123, 73, 68, 67, 73, 72, 59, 73, 86, 66, 69, 42, 50, 77, 62, 77, 63, 70, 53, 46, 49, 66, 47, 48, 68, 73, 59, 63, 44, 51, 55, 40, 94, 60, 52, 51, 55, 107, 50, 54, 64, 59, 67, 54, 60, 61, 75, 107, 65, 48, 60, 80, 70, 70, 58, 68, 60, 63, 71, 67, 108, 62, 64, 67, 73, 61, 68, 59, 65, 51, 66, 62, 57, 46, 47, 83, 71, 50, 73, 62, 107, 64, 74, 58, 59, 47, 53, 48, 59, 67, 65, 73, 58, 57, 59, 76, 98, 63, 77, 81, 39, 56, 48, 54, 44, 64, 80, 61, 54, 67, 51, 77, 66, 47, 63, 64, 65, 51, 52, 60, 57, 54, 62, 75, 59, 92, 65, 54, 60, 74, 58, 90, 55, 76, 53, 63, 53, 71, 57, 71, 60, 55, 72, 48, 66, 96, 73, 56, 65, 50, 52, 77, 50, 70, 40, 54, 31, 72, 69, 67, 50, 55, 58, 47, 70, 65, 91, 78, 64, 63, 95, 93, 53, 74, 65, 67, 54, 78, 72, 68, 61, 51, 75, 70, 58, 69, 60, 74, 71, 76, 51, 45, 39, 69, 50, 44, 76, 55, 64, 71, 76, 57, 70, 59, 52, 75, 61, 87, 76, 69, 67, 46, 102, 70, 70, 75, 81, 80, 83, 75, 60, 61, 66, 65, 68, 76, 90, 70, 60, 50, 65, 61, 83, 66, 58, 44, 67, 44, 50, 72, 82, 65, 49, 73, 60, 81, 65, 54, 54, 56, 70, 65, 53, 121, 58, 65, 101, 52, 46, 67, 63, 77, 67, 86, 83, 66, 64, 68, 66, 74, 62, 43, 86, 58, 63, 78, 76, 88, 73, 93, 53, 60, 97, 77, 61, 68, 51, 48, 73, 75, 51, 52, 53, 81, 63, 116, 72, 61, 67, 55, 85, 99, 63, 98, 77, 46, 52, 39, 55, 113, 54, 94, 84, 69, 87, 62, 74, 65, 42, 56, 81, 45, 58, 105, 64, 60, 57, 58, 63, 57, 46, 49, 59, 61, 53, 53, 49, 71, 46, 59, 94, 66, 78, 96, 66, 57, 65, 58, 68, 43, 61, 66, 61, 69, 49, 54, 70, 56, 80, 59, 63, 47, 60, 50, 68, 62, 64, 66, 84, 60, 78, 59, 54, 57, 61, 63, 50, 64, 86, 58, 47, 64, 67, 47, 68, 69, 120, 85, 55, 55, 53, 59, 69, 60, 53, 70, 96, 45, 68, 68, 70, 56, 52, 57, 58, 86, 93, 57, 65, 34, 64, 54, 54, 70, 54, 70, 47, 171, 67, 60, 73, 62, 50, 53, 66, 70, 51, 64, 59, 61, 60, 63, 64, 37, 57, 131, 57, 66, 64, 59, 76, 63, 59, 61, 78, 56, 48, 40, 70, 66, 75, 49, 61, 55, 72, 48, 55, 60, 62, 61, 59, 67, 63, 70, 79, 68, 48, 108, 148, 77, 57, 56, 55, 70, 39, 57, 58, 59, 61, 62, 61, 41, 77, 53, 56, 85, 74, 57, 69, 94, 85, 66, 95, 70, 50, 65, 54, 111, 114, 46, 75, 58, 48, 54, 50, 77, 50, 69, 79, 58, 64, 46, 68, 46, 60, 74, 56, 85, 75, 64, 66, 91, 93, 81, 81, 71, 64, 98, 75, 95, 53, 65, 66, 67, 70, 71, 69, 62, 55, 77, 59, 76, 58, 50, 72, 105, 47, 74, 92, 55, 65, 74, 54, 62, 32, 64, 57, 47, 59, 63, 74, 69, 71, 43, 63, 63, 60, 55, 57, 87, 59, 34, 54, 60, 54, 56, 49, 81, 62, 63, 70, 70, 141, 48, 75, 70, 66, 58, 48, 65, 72, 88, 85, 61, 73, 69, 59, 71, 62, 72, 76, 121, 75, 81, 66, 76, 80, 66, 59, 63, 78, 51, 155, 67, 50, 68, 64, 74, 82, 72, 49, 81, 71, 58, 57, 57, 63, 51, 74, 69, 68, 78, 103, 70, 107, 58, 55, 54, 64, 61, 68, 62, 83, 47, 76, 73, 63, 61, 63, 93, 74, 81, 75, 55, 71, 67, 118, 68, 50, 49, 70, 46, 62, 54, 57, 63, 64, 55, 73, 66, 54, 68, 63, 55, 57, 70, 65, 50, 54, 79, 36, 61, 71, 61, 81, 66, 58, 67, 62, 99, 63, 82, 56, 72, 65, 64, 47, 58, 57, 98, 74, 94, 143, 143, 65, 53, 63, 67, 48, 77, 71, 60, 77, 108, 64, 68, 82, 67, 63, 93, 57, 72, 72, 65, 103, 72, 93, 111, 57, 64, 56, 56, 50, 99, 51, 78, 73, 52, 46, 54, 72, 50, 61, 74, 82, 89, 78, 41, 69, 62, 80, 73, 65, 68, 54, 50, 64, 79, 64, 74, 62, 74, 69, 76, 62, 58, 49, 29, 82, 58, 62, 80, 59, 54, 56, 64, 50, 44, 106, 63, 90, 59, 67, 50, 50, 77, 54, 68, 50, 40, 70, 84, 66, 84, 52, 55, 32, 56, 74, 46, 51, 67, 56, 72, 74, 68, 62, 68, 53, 57, 44, 53, 56, 58, 60, 80, 56, 56, 83, 62, 57, 65, 60, 74, 71, 57, 61, 62, 65, 68, 50, 50, 73, 63, 69, 66, 56, 67, 87, 64, 59, 57, 41, 50, 66, 59, 63, 77, 88, 60, 76, 54, 56, 79, 58, 89, 43, 71, 70, 57, 66, 77, 60, 58, 71, 52, 43, 60, 66, 66, 63, 53, 78, 60, 79, 90, 58, 61, 66, 37, 66, 66, 54, 64, 67, 61, 53, 60, 55, 58, 60, 50, 49, 71, 63, 81, 47, 50, 52, 53, 34, 65, 49, 67, 62, 78, 67, 82, 55, 62, 50, 59, 77, 94, 65, 69, 68, 65, 56, 54, 73, 44, 50, 85, 71, 77, 54, 60, 53, 80, 69, 64, 48, 63, 69, 45, 71, 104, 66, 55, 64, 51, 76, 71, 53, 81, 50, 145, 89, 67, 57, 61, 43, 65, 65, 51, 90, 68, 70, 64, 66, 64, 59, 79, 62, 67, 67, 58, 44, 60, 62, 65, 60, 50, 34, 68, 50, 49, 84, 49, 54, 57, 68, 115, 56, 94, 62, 74, 48, 67, 53, 81, 88, 68, 50, 60, 92, 84, 101, 63, 158, 74, 41, 56, 55, 82, 88, 73, 66, 54, 63, 78, 62, 58, 59, 64, 76, 57, 65, 53, 62, 49, 60, 56, 48, 61, 69, 94, 70, 71, 62, 73, 49, 57, 59, 54, 42, 59, 48, 58, 56, 65, 64, 94, 63, 77, 60, 61, 54, 54, 80, 45, 69, 66, 53, 70, 65, 63, 60, 61, 39, 113, 67, 80, 104, 67, 77, 56, 61, 67, 63, 76, 48, 64, 65, 56, 57, 63, 127, 61, 54, 73, 52, 79, 67, 52, 81, 61, 50, 53, 88, 64, 70, 106, 65, 45, 71, 69, 90, 56, 42, 56, 66, 58, 75, 110, 84, 61, 89, 44, 67, 63, 79, 56, 78, 59, 80, 70, 62, 66, 66, 61, 64, 67, 66, 78, 55, 72, 62, 64, 59, 45, 50, 57, 57, 60, 56, 68, 57, 55, 83, 72, 77, 53, 61, 84, 63, 77, 66, 62, 59, 64, 59, 107, 65, 72, 58, 73, 85, 69, 79, 63, 61, 53, 78, 45, 47, 64, 108, 50, 64, 44, 68, 61, 42, 66, 55, 65, 65, 57, 42, 53, 53, 63, 65, 69, 58, 75, 59, 60, 53, 56, 58, 67, 69, 58, 55, 70, 57, 68, 75, 49, 52, 57, 52, 56, 77, 58, 89, 60, 70, 51, 63, 73, 61, 53, 56, 72, 68, 72, 49, 52, 78, 72, 54, 64, 53, 55, 63, 72, 105, 118, 70, 99, 56, 64, 83, 64, 65, 90, 58, 54, 53, 65, 67, 53, 112, 47, 64, 48, 66, 92, 83, 61, 55, 62, 53, 82, 48, 75, 96, 57, 76, 53, 62, 87, 68, 78, 69, 45, 65, 87, 84, 69, 65, 88, 84, 57, 62, 65, 78, 76, 72, 81, 59, 77, 52, 66, 59, 49, 52, 70, 67, 81, 57, 53, 70, 92, 62, 74, 64, 77, 67, 58, 60, 62, 37, 65, 60, 59, 71, 86, 33, 58, 86, 61, 78, 64, 63, 49, 89, 62, 66, 69, 76, 87, 78, 65, 54, 57, 75, 84, 80, 55, 55, 60, 65, 120, 61, 60, 70, 66, 57, 60, 62, 45, 62, 75, 63, 73, 57, 71, 75, 66, 48, 73, 92, 42, 70, 53, 64, 51, 65, 69, 52, 89, 61, 64, 65, 50, 68, 55, 63, 65, 53, 51, 81, 66, 55, 85, 52, 55, 42, 62, 51, 60, 69, 64, 68, 59, 83, 63, 61, 64, 83, 60, 53, 69, 75, 83, 72, 69, 77, 68, 73, 67, 54, 68, 61, 67, 40, 76, 57, 56, 90, 45, 48, 61, 69, 63, 60, 67, 72, 99, 71, 68, 71, 55, 66, 59, 66, 75, 47, 70, 88, 62, 64, 55, 64, 75, 74, 53, 77, 62, 49, 60, 65, 64, 51, 66, 59, 56, 50, 63, 64, 71, 82, 63, 79, 97, 57, 86, 61, 59, 68, 58, 112, 60, 107, 54, 59, 43, 81, 51, 64, 60, 72, 73, 83, 72, 83, 56, 55, 57, 64, 56, 69, 53, 83, 64, 67, 53, 67, 66, 69, 61, 72, 66, 72, 77, 65, 65, 78, 128, 178, 72, 69, 66, 71, 61, 53, 57, 91, 62, 119, 65, 67, 85, 51, 59, 58, 54, 58, 68, 61, 68, 79, 66, 49, 93, 62, 56, 77, 87, 53, 57, 52, 77, 71, 63, 70, 75, 63, 55, 66, 100, 63, 63, 65, 62, 57, 58, 73, 67, 61, 68, 63, 47, 62, 50, 62, 66, 57, 67, 73, 100, 65, 69, 77, 74, 68, 51, 91, 70, 73, 53, 82, 63, 74, 51, 60, 56, 68, 48, 62, 78, 68, 56, 57, 53, 85, 68, 73, 84, 76, 85, 62, 53, 65, 69, 77, 52, 73, 69, 60, 59, 58, 58, 67, 84, 56, 53, 65, 55, 72, 55, 66, 70, 81, 63, 67, 60, 59, 47, 64, 59, 65, 66, 99, 58, 64, 73, 58, 52, 73, 53, 83, 62, 67, 60, 67, 84, 70, 52, 41, 46, 64, 65, 73, 53, 65, 59, 58, 85, 71, 62, 59, 74, 51, 60, 54, 67, 42, 68, 65, 73, 42, 54, 57, 92, 66, 49, 44, 64, 52, 58, 50, 65, 71, 66, 69, 123, 60, 50, 67, 75, 60, 95, 55, 76, 59, 91, 68, 78, 60, 58, 52, 59, 65, 92, 81, 65, 91, 65, 66, 60, 67, 67, 61, 78, 70, 61, 58, 50, 53, 53, 34, 48, 66, 51, 54, 60, 44, 65, 67, 71, 79, 49, 64, 65, 49, 54, 90, 50, 51, 63, 54, 77, 54, 64, 67, 68, 60, 56, 55, 57, 92, 57, 81, 70, 78, 49, 44, 67, 47, 56, 54, 82, 63, 58, 66, 63, 63, 76, 70, 64, 70, 88, 63, 66, 69, 50, 96, 57, 76, 68, 68, 46, 64, 67, 61, 66, 73, 54, 70, 75, 77, 81, 74, 62, 67, 70, 75, 79, 55, 83, 75, 50, 66, 77, 77, 57, 61, 69, 74, 76, 52, 56, 97, 68, 68, 53, 49, 77, 55, 73, 57, 56, 65, 49, 52, 62, 64, 87, 58, 63, 74, 83, 95, 65, 69, 71, 86, 60, 60, 67, 51, 78, 60, 61, 66, 59, 56, 118, 72, 58, 59, 52, 58, 58, 80, 56, 59, 55, 65, 65, 61, 59, 61, 75, 56, 60, 53, 73, 57, 55, 47, 75, 69, 50, 59, 69, 84, 63, 66, 59, 85, 87, 74, 64, 67, 65, 74, 68, 81, 70, 80, 55, 70, 74, 90, 68, 69, 90, 60, 68, 78, 63, 45, 58, 58, 91, 69, 94, 92, 65, 69, 58, 82, 53, 63, 74, 47, 53, 67, 60, 58, 58, 51, 65, 68, 68, 73, 65, 67, 59, 78, 63, 85, 48, 60, 34, 65, 55, 56, 88, 76, 82, 45, 69, 87, 63, 72, 81, 93, 63, 92, 56, 70, 65, 82, 64, 64, 109, 56, 69, 39, 73, 60, 70, 46, 90, 67, 92, 65, 65, 51, 58, 82, 78, 96, 59, 64, 64, 61, 58, 107, 80, 64, 84, 51, 56, 69, 73, 71, 73, 67, 31, 67, 70, 71, 54, 46, 72, 82, 56, 58, 74, 67, 60, 71, 57, 60, 34, 70, 73, 80, 68, 50, 70, 37, 51, 47, 72, 70, 65, 55, 77, 66, 55, 68, 67, 73, 67, 75, 61, 72, 60, 92, 54, 60, 59, 77, 91, 85, 77, 70, 66, 61, 57, 54, 67, 66, 71, 53, 70, 67, 90, 76, 58, 86, 94, 68, 64, 51, 78, 74, 48, 59, 64, 64, 60, 70, 66, 74, 77, 46, 88, 56, 76, 68, 70, 59, 68, 71, 94, 62, 91, 70, 100, 51, 66, 71, 79, 55, 45, 69, 75, 79, 64, 58, 82, 69, 62, 77, 75, 55, 44, 59, 76, 72, 64, 43, 50, 77, 66, 48, 53, 61, 72, 63, 82, 69, 67, 58, 58, 46, 52, 64, 70, 52, 65, 60, 61, 69, 55, 89, 68, 48, 69, 61, 118, 77, 59, 75, 69, 54, 74, 68, 66, 50, 59, 70, 93, 85, 92, 63, 61, 42, 56, 70, 65, 76, 67, 72, 58, 60, 60, 60, 57, 52, 52, 61, 69, 89, 72, 62, 63, 61, 76, 64, 53, 75, 57, 67, 51, 64, 52, 53, 59, 86, 62, 76, 73, 58, 55, 51, 43, 44, 44, 72, 63, 63, 66, 84, 63, 66, 64, 58, 74, 62, 48, 69, 80, 71, 68, 51, 85, 65, 44, 53, 61, 65, 57, 54, 74, 43, 77, 59, 62, 84, 62, 66, 60, 47, 79, 56, 74, 57, 57, 61, 75, 51, 54, 56, 66, 52, 55, 67, 62, 81, 48, 52, 57, 67, 70, 63, 68, 41, 67, 62, 57, 60, 78, 65, 61, 68, 72, 73, 58, 76, 59, 78, 98, 68, 69, 75, 68, 69, 50, 58, 55, 53, 66, 66, 75, 62, 68, 58, 70, 91, 77, 66, 72, 73, 68, 65, 50, 81, 71, 75, 41, 48, 57, 53, 77, 99, 97, 56, 69, 59, 72, 56, 85, 70, 58, 53, 72, 81, 53, 76, 66, 60, 62, 97, 74, 75, 68, 66, 80, 62, 61, 60, 62, 67, 77, 56, 65, 63, 68, 80, 73, 62, 68, 56, 62, 70, 56, 68, 49, 66, 65, 110, 90, 65, 71, 64, 62, 70, 59, 72, 61, 66, 69, 85, 81, 58, 91, 80, 67, 78, 74, 56, 62, 56, 74, 77, 50, 58, 55, 49, 61, 73, 50, 60, 51, 56, 61, 51, 52, 57, 68, 66, 52, 73, 60, 67, 58, 54, 79, 60, 37, 60, 82, 63, 63, 54, 85, 59, 72, 65, 60, 66, 35, 59, 55, 88, 69, 47, 64, 50, 82, 73, 73, 56, 63, 56, 66, 56, 70, 88, 60, 63, 55, 57, 69, 55, 56, 52, 65, 79, 48, 66, 68, 76, 67, 81, 61, 51, 64, 62, 66, 75, 57, 34, 70, 71, 75, 102, 113, 70, 50, 87, 82, 47, 59, 59, 72, 74, 65, 59, 67, 72, 63, 56, 42, 69, 70, 59, 55, 52, 61, 55, 86, 57, 97, 77, 76, 64, 70, 92, 66, 60, 69, 52, 59, 60, 88, 75, 56, 96, 78, 53, 67, 58, 73, 49, 81, 66, 70, 111, 90, 44, 51, 51, 82, 66, 56, 132, 70, 59, 71, 68, 70, 63, 94, 72, 46, 55, 54, 93, 55, 51, 68, 45, 83, 85, 65, 72, 78, 45, 57, 83, 71, 84, 46, 63, 66, 73, 63, 77, 71, 67, 74, 42, 49, 52, 84, 53, 60, 57, 55, 61, 76, 45, 58, 53, 61, 49, 64, 67, 61, 87, 51, 90, 69, 58, 60, 47, 64, 49, 72, 66, 42, 73, 60, 76, 62, 83, 63, 66, 69, 55, 65, 68, 62, 56, 45, 60, 60, 66, 51, 60, 66, 73, 65, 66, 53, 83, 73, 68, 83, 101, 53, 61, 91, 61, 72, 59, 49, 60, 70, 72, 76, 58, 68, 79, 71, 80, 47, 80, 84, 61, 75, 58, 70, 73, 54, 63, 57, 65, 57, 72, 54, 143, 81, 81, 60, 52, 55, 29, 63, 78, 63, 65, 77, 56, 54, 58, 68, 99, 51, 62, 58, 52, 79, 56, 45, 46, 56, 91, 55, 60, 69, 68, 58, 68, 60, 56, 61, 66, 93, 68, 78, 32, 62, 64, 70, 51, 64, 53, 78, 103, 78, 53, 66, 49, 48, 55, 61, 62, 74, 66, 51, 71, 53, 73, 73, 60, 61, 63, 50, 94, 79, 59, 65, 88, 104, 60, 48, 71, 50, 65, 61, 59, 82, 54, 58, 51, 82, 57, 76, 69, 59, 50, 75, 63, 70, 120, 79, 58, 37, 73, 77, 63, 62, 90, 64, 50, 77, 56, 86, 64, 72, 65, 74, 56, 76, 65, 74, 56, 76, 61, 72, 76, 73, 67, 55, 59, 93, 66, 91, 48, 99, 56, 60, 79, 69, 73, 77, 115, 64, 67, 75, 60, 70, 71, 54, 68, 56, 59, 58, 72, 91, 94, 58, 75, 64, 50, 73, 52, 54, 64, 49, 59, 47, 43, 49, 55, 61, 76, 83, 65, 65, 74, 64, 56, 66, 56, 42, 66, 58, 61, 49, 61, 90, 75, 48, 54, 70, 63, 63, 71, 67, 48, 55, 62, 75, 56, 58, 57, 76, 55, 56, 48, 86, 78, 74, 65, 86, 92, 67, 66, 61, 85, 60, 63, 75, 56, 59, 34, 72, 39, 59, 99, 59, 65, 57, 93, 54, 67, 71, 69, 39, 61, 54, 72, 90, 58, 68, 63, 59, 62, 56, 68, 97, 67, 73, 60, 66, 76, 70, 60, 97, 49, 71, 62, 64, 72, 61, 66, 62, 56, 62, 47, 57, 61, 65, 58, 45, 65, 64, 61, 66, 55, 56, 54, 76, 83, 80, 55, 53, 63, 51, 67, 72, 64, 125, 59, 84, 53, 47, 62, 73, 71, 69, 52, 73, 66, 81, 82, 66, 68, 55, 101, 67, 71, 49, 76, 71, 67, 65, 70, 51, 55, 58, 55, 51, 74, 66, 60, 71, 57, 61, 57, 69, 59, 62, 79, 65, 52, 65, 97, 58, 70, 71, 76, 75, 45, 53, 61, 65, 72, 75, 68, 64, 75, 101, 60, 67, 65, 70, 80, 53, 58, 108, 66, 65, 64, 70, 88, 69, 61, 48, 65, 46, 89, 77, 49, 62, 69, 53, 75, 67, 78, 66, 65, 68, 125, 84, 61, 57, 76, 95, 50, 65, 66, 63, 73, 57, 59, 75, 70, 70, 67, 56, 74, 46, 64, 74, 54, 51, 54, 69, 48, 94, 61, 56, 67, 57, 76, 56, 56, 75, 68, 64, 81, 81, 71, 80, 73, 55, 54, 68, 76, 70, 76, 66, 63, 55, 77, 58, 113, 70, 60, 67, 60, 48, 63, 70, 57, 79, 67, 56, 62, 56, 65, 46, 56, 49, 66, 81, 64, 56, 64, 55, 73, 61, 60, 65, 61, 81, 47, 68, 67, 62, 69, 115, 61, 54, 56, 58, 75, 60, 56, 68, 58, 73, 58, 65, 60, 46, 65, 62, 77, 68, 58, 86, 63, 56, 37, 65, 71, 80, 68, 57, 62, 59, 53, 76, 70, 63, 72, 84, 49, 56, 79, 54, 60, 61, 83, 65, 100, 66, 59, 92, 44, 51, 40, 68, 49, 78, 62, 98, 74, 79, 58, 71, 85, 73, 65, 42, 61, 57, 61, 57, 64, 85, 80, 65, 67, 81, 85, 68, 56, 56, 60, 87, 62, 58, 63, 81, 74, 67, 69, 60, 60, 72, 49, 66, 56, 60, 51, 66, 55, 70, 54, 57, 68, 62, 69, 72, 49, 65, 70, 81, 50, 82, 66, 61, 57, 95, 65, 62, 61, 75, 54, 83, 65, 61, 46, 67, 83, 61, 69, 124, 58, 56, 72, 80, 62, 57, 60, 67, 54, 69, 130, 70, 81, 78, 66, 77, 66, 56, 69, 59, 58, 71, 68, 89, 58, 72, 65, 66, 62, 72, 74, 77, 64, 67, 63, 44, 69, 66, 59, 69, 72, 62, 84, 66, 65, 102, 60, 55, 65, 60, 98, 63, 69, 46, 63, 68, 71, 62, 64, 61, 58, 64, 72, 59, 72, 59, 71, 54, 78, 74, 95, 55, 62, 64, 71, 70, 56, 59, 68, 85, 104, 107, 63, 51, 74, 52, 66, 66, 59, 66, 76, 63, 85, 58, 77, 48, 60, 76, 68, 80, 65, 67, 58, 83, 80, 68, 72, 74, 67, 58, 59, 58, 72, 49, 55, 60, 54, 45, 72, 55, 104, 61, 52, 63, 58, 65, 69, 59, 86, 61, 64, 75, 68, 63, 69, 60, 69, 65, 76, 74, 60, 82, 52, 62, 59, 49, 68, 77, 50, 51, 73, 124, 122, 75, 78, 68, 64, 61, 52, 56, 60, 60, 65, 55, 69, 65, 63, 65, 79, 66, 71, 77, 66, 68, 69, 76, 48, 81, 54, 47, 63, 90, 51, 49, 58, 78, 59, 93, 67, 64, 62, 83, 67, 54, 74, 60, 118, 61, 76, 58, 70, 54, 67, 65, 57, 77, 50, 67, 72, 53, 62, 75, 57, 56, 59, 58, 67, 55, 63, 66, 59, 53, 76, 66, 54, 60, 60, 67, 58, 66, 80, 71, 63, 63, 75, 67, 71, 66, 63, 64, 58, 61, 55, 67, 74, 61, 64, 63, 63, 62, 70, 54, 61, 67, 68, 76, 55, 79, 84, 73, 94, 62, 68, 82, 73, 53, 61, 61, 64, 78, 68, 65, 64, 67, 62, 65, 50, 58, 134, 120, 59, 60, 52, 84, 78, 46, 60, 65, 66, 77, 66, 43, 84, 61, 68, 72, 119, 55, 48, 61, 86, 63, 89, 62, 62, 58, 63, 53, 53, 53, 66, 74, 55, 48, 79, 70, 75, 65, 76, 81, 70, 66, 72, 73, 70, 48, 54, 83, 69, 64, 71, 52, 58, 137, 46, 94, 68, 66, 63, 51, 56, 79, 72, 67, 99, 74, 62, 62, 50, 65, 73, 70, 47, 55, 55, 68, 68, 45, 58, 69, 55, 62, 60, 51, 47, 59, 61, 48, 78, 55, 55, 52, 70, 49, 91, 63, 57, 62, 75, 52, 77, 63, 70, 67, 66, 67, 58, 65, 60, 60, 54, 80, 61, 58, 74, 62, 73, 67, 60, 66, 72, 57, 65, 74, 66, 55, 68, 65, 82, 51, 66, 54, 69, 43, 52, 67, 52, 46, 72, 71, 71, 65, 59, 73, 74, 68, 55, 56, 57, 53, 68, 58, 59, 56, 65, 92, 57, 60, 81, 56, 81, 59, 61, 80, 51, 63, 68, 64, 45, 63, 50, 93, 60, 36, 70, 75, 50, 70, 69, 63, 61, 54, 68, 75, 62, 59, 70, 84, 60, 79, 59, 76, 55, 60, 83, 57, 71, 65, 64, 71, 60, 64, 76, 87, 61, 69, 53, 76, 55, 67, 44, 52, 88, 95, 66, 93, 63, 140, 60, 68, 121, 65, 59, 64, 67, 64, 105, 53, 57, 68, 60, 78, 65, 67, 80, 69, 70, 74, 56, 66, 70, 108, 57, 69, 63, 84, 65, 63, 60, 67, 64, 74, 51, 90, 68, 75, 59, 63, 56, 62, 75, 69, 61, 53, 61, 52, 107, 58, 62, 65, 72, 81, 65, 57, 68, 59, 53, 95, 57, 58, 62, 41, 65, 69, 66, 57, 72, 58, 67, 58, 58, 63, 59, 49, 64, 63, 70, 54, 46, 55, 61, 57, 57, 66, 61, 61, 67, 48, 69, 76, 67, 64, 63, 63, 74, 53, 64, 52, 63, 65, 81, 59, 74, 70, 60, 94, 60, 74, 69, 109, 70, 65, 57, 59, 48, 67, 57, 59, 59, 45, 52, 59, 60, 60, 90, 70, 54, 76, 76, 45, 69, 53, 73, 76, 64, 57, 57, 64, 47, 110, 75, 64, 64, 70, 60, 88, 63, 67, 54, 89, 54, 65, 71, 56, 100, 72, 69, 61, 56, 66, 57, 46, 57, 73, 57, 110, 76, 85, 79, 62, 45, 56, 61, 77, 71, 57, 73, 64, 70, 57, 51, 59, 56, 68, 78, 72, 48, 37, 53, 58, 75, 68, 83, 60, 71, 50, 65, 63, 54, 71, 63, 63, 52, 47, 63, 54, 72, 67, 59, 51, 57, 72, 67, 80, 57, 80, 71, 54, 48, 70, 101, 45, 69, 86, 58, 96, 70, 76, 68, 67, 67, 70, 80, 55, 72, 68, 71, 60, 84, 75, 69, 64, 80, 97, 65, 69, 83, 79, 47, 62, 69, 81, 69, 80, 98, 49, 65, 45, 75, 55, 71, 55, 46, 53, 63, 58, 73, 63, 75, 50, 46, 52, 63, 61, 58, 56, 52, 75, 83, 56, 67, 74, 71, 63, 50, 84, 56, 84, 85, 83, 62, 150, 63, 60, 63, 48, 61, 67, 42, 67, 50, 92, 66, 59, 54, 85, 62, 62, 73, 74, 50, 53, 63, 63, 53, 52, 47, 68, 52, 46, 58, 60, 64, 86, 85, 62, 54, 68, 63, 58, 77, 72, 71, 62, 78, 74, 60, 71, 65, 67, 60, 71, 66, 113, 81, 73, 95, 56, 60, 61, 66, 58, 90, 55, 65, 46, 57, 60, 57, 66, 88, 99, 57, 52, 126, 53, 61, 70, 60, 70, 79, 78, 78, 74, 48, 74, 56, 66, 49, 42, 65, 66, 77, 58, 64, 56, 50, 74, 59, 75, 57, 72, 66, 64, 51, 64, 66, 49, 64, 74, 62, 83, 53, 57, 52, 66, 78, 65, 61, 84, 58, 57, 53, 57, 45, 60, 72, 83, 57, 57, 78, 92, 51, 57, 52, 63, 52, 69, 86, 68, 66, 63, 38, 88, 63, 58, 75, 92, 67, 72, 56, 74, 47, 62, 58, 62, 59, 60, 68, 66, 81, 49, 69, 67, 62, 64, 45, 62, 77, 66, 60, 86, 77, 96, 87, 58, 72, 82, 67, 60, 61, 59, 58, 83, 59, 66, 81, 54, 92, 57, 81, 65, 50, 75, 60, 51, 76, 86, 57, 73, 46, 48, 60, 51, 75, 64, 68, 72, 68, 55, 69, 78, 64, 73, 73, 71, 63, 54, 62, 58, 55, 69, 71, 84, 65, 91, 59, 62, 59, 43, 67, 59, 61, 69, 56, 45, 51, 73, 74, 107, 53, 74, 60, 60, 54, 67, 89, 58, 74, 67, 73, 79, 70, 51, 60, 65, 59, 68, 60, 72, 65, 54, 96, 66, 52, 71, 54, 51, 61, 47, 52, 67, 64, 57, 52, 72, 45, 52, 58, 55, 63, 55, 64, 61, 53, 43, 89, 71, 70, 91, 77, 64, 57, 56, 61, 76, 81, 83, 70, 58, 70, 70, 56, 72, 72, 61, 68, 61, 57, 56, 65, 61, 79, 64, 53, 68, 59, 78, 78, 78, 55, 59, 49, 67, 53, 75, 52, 61, 56, 62, 57, 80, 52, 64, 67, 54, 51, 67, 50, 70, 57, 65, 67, 68, 66, 72, 64, 54, 56, 76, 129, 71, 74, 53, 54, 62, 66, 75, 97, 53, 64, 65, 104, 62, 69, 73, 49, 69, 69, 74, 71, 82, 85, 53, 88, 70, 54, 62, 52, 78, 64, 42, 84, 69, 77, 65, 75, 65, 70, 61, 45, 59, 62, 64, 53, 85, 46, 43, 46, 72, 72, 89, 69, 71, 63, 56, 51, 83, 66, 88, 55, 58, 93, 91, 65, 64, 54, 55, 92, 63, 59, 79, 54, 81, 58, 57, 54, 47, 53, 65, 74, 55, 60, 52, 81, 70, 66, 54, 82, 64, 43, 57, 116, 55, 59, 80, 76, 72, 63, 87, 82, 45, 58, 54, 66, 69, 75, 77, 56, 80, 66, 63, 50, 56, 54, 75, 57, 63, 124, 62, 71, 57, 61, 72, 83, 80, 52, 79, 63, 73, 103, 69, 67, 41, 47, 54, 69, 59, 58, 84, 56, 69, 39, 48, 68, 72, 72, 64, 50, 81, 61, 52, 58, 69, 58, 96, 78, 79, 61, 85, 72, 70, 60, 55, 73, 52, 82, 67, 56, 98, 74, 53, 72, 71, 91, 54, 67, 59, 56, 53, 69, 66, 47, 85, 51, 75, 64, 82, 54, 63, 85, 51, 60, 70, 63, 75, 66, 66, 63, 70, 59, 84, 59, 57, 57, 77, 57, 61, 58, 73, 75, 61, 74, 64, 61, 69, 75, 68, 84, 41, 71, 70, 72, 76, 73, 64, 67, 50, 71, 62, 66, 39, 52, 69, 61, 52, 59, 71, 74, 73, 53, 72, 64, 73, 86, 68, 78, 54, 63, 65, 59, 63, 57, 67, 64, 56, 53, 50, 42, 70, 57, 69, 62, 43, 53, 83, 84, 57, 67, 52, 43, 66, 83, 81, 66, 54, 44, 48, 87, 69, 51, 71, 65, 65, 53, 79, 43, 66, 64, 66, 64, 62, 67, 76, 65, 76, 65, 69, 68, 57, 98, 59, 59, 68, 84, 54, 60, 70, 82, 68, 52, 68, 61, 58, 60, 77, 92, 77, 94, 66, 55, 68, 80, 54, 60, 74, 86, 60, 63, 43, 70, 100, 47, 65, 64, 70, 76, 55, 79, 79, 60, 57, 69, 74, 64, 94, 74, 84, 63, 74, 52, 60, 51, 77, 50, 61, 58, 77, 87, 66, 57, 74, 73, 54, 59, 66, 52, 79, 74, 64, 59, 57, 87, 71, 87, 75, 63, 49, 90, 61, 77, 67, 87, 74, 57, 105, 58, 64, 60, 61, 69, 79, 56, 59, 77, 76, 50, 69, 54, 69, 85, 87, 54, 52, 58, 60, 64, 76, 77, 93, 69, 67, 49, 55, 74, 64, 48, 49, 57, 53, 61, 68, 57, 82, 71, 69, 77, 81, 70, 77, 70, 74, 67, 68, 53, 43, 54, 54, 84, 46, 62, 52, 60, 56, 61, 59, 58, 60, 51, 61, 59, 58, 57, 58, 62, 73, 52, 63, 54, 60, 74, 71, 58, 46, 74, 59, 86, 67, 60, 99, 47, 73, 89, 55, 64, 73, 64, 73, 56, 77, 69, 59, 71, 69, 82, 74, 47, 80, 68, 75, 76, 72, 57, 65, 49, 63, 58, 46, 89, 127, 67, 50, 67, 69, 67, 74, 62, 56, 65, 59, 77, 60, 51, 71, 86, 89, 59, 69, 56, 49, 50, 87, 91, 58, 60, 79, 60, 76, 74, 68, 67, 75, 61, 76, 60, 79, 85, 85, 52, 57, 69, 53, 79, 59, 53, 46, 71, 74, 56, 59, 100, 57, 70, 104, 70, 28, 88, 65, 48, 70, 77, 74, 78, 59, 57, 62, 64, 71, 67, 54, 75, 71, 62, 70, 80, 72, 75, 67, 67, 117, 114, 51, 60, 52, 51, 60, 51, 47, 55, 47, 73, 57, 62, 72, 68, 76, 79, 71, 73, 69, 60, 76, 79, 67, 48, 46, 76, 54, 56, 40, 64, 50, 50, 52, 59, 65, 54, 71, 131, 43, 54, 69, 67, 72, 49, 49, 81, 57, 71, 54, 62, 84, 60, 49, 46, 62, 60, 56, 62, 50, 90, 68, 67, 59, 60, 82, 41, 39, 41, 52, 76, 56, 50, 62, 62, 37, 62, 62, 70, 72, 62, 66, 97, 67, 48, 42, 64, 72, 70, 55, 49, 67, 57, 41, 91, 51, 69, 77, 61, 56, 44, 60, 72, 72, 84, 71, 67, 62, 73, 62, 67, 88, 35, 49, 87, 50, 65, 68, 62, 47, 82, 80, 69, 75, 79, 75, 63, 62, 53, 38, 57, 63, 43, 55, 69, 71, 68, 71, 68, 57, 67, 53, 57, 57, 51, 72, 45, 72, 72, 59, 91, 79, 64, 59, 62, 83, 58, 58, 42, 55, 71, 53, 46, 66, 67, 84, 60, 54, 68, 74, 56, 65, 53, 65, 64, 39, 43, 62, 66, 63, 66, 57, 50, 64, 149, 58, 78, 72, 64, 45, 54, 64, 43, 73, 69, 63, 75, 97, 132, 63, 30, 64, 74, 57, 86, 39, 99, 59, 61, 72, 66, 69, 81, 61, 46, 63, 61, 73, 49, 61, 42, 39, 73, 40, 63, 79, 78, 69, 59, 80, 56, 63, 81, 82, 65, 129, 76, 49, 58, 71, 65, 56, 63, 61, 46, 58, 92, 53, 59, 119, 36, 55, 84, 61, 88, 49, 64, 65, 63, 70, 71, 64, 96, 67, 57, 66, 74, 68, 54, 59, 96, 46, 77, 51, 77, 58, 68, 66, 72, 57, 67, 104, 56, 74, 86, 63, 67, 35, 60, 56, 78, 61, 46, 55, 62, 50, 78, 70, 68, 84, 69, 61, 64, 73, 52, 61, 74, 95, 74, 65, 48, 62, 60, 90, 80, 63, 88, 63, 69, 63, 63, 60, 60, 77, 56, 88, 66, 44, 63, 51, 69, 96, 69, 60, 59, 68, 80, 53, 78, 55, 60, 95, 62, 51, 61, 60, 89, 72, 61, 67, 80, 90, 53, 62, 59, 60, 69, 55, 41, 67, 60, 52, 76, 52, 69, 50, 78, 83, 62, 79, 78, 68, 58, 58, 51, 72, 85, 56, 54, 43, 90, 77, 102, 83, 50, 109, 144, 49, 66, 60, 54, 52, 79, 70, 74, 58, 63, 47, 43, 70, 89, 63, 67, 48, 69, 75, 36, 54, 49, 73, 60, 58, 53, 88, 87, 60, 59, 61, 42, 57, 60, 55, 50, 54, 58, 76, 47, 63, 75, 68, 73, 57, 89, 84, 106, 70, 74, 49, 73, 80, 79, 55, 74, 52, 87, 52, 50, 79, 65, 74, 69, 45, 64, 77, 71, 69, 58, 61, 57, 82, 52, 76, 58, 96, 88, 77, 54, 85, 62, 70, 62, 65, 48, 75, 60, 67, 58, 62, 80, 65, 84, 70, 79, 79, 45, 65, 44, 79, 65, 81, 65, 60, 62, 79, 58, 76, 59, 77, 68, 79, 66, 70, 48, 72, 52, 88, 83, 70, 83, 86, 76, 73, 64, 68, 62, 73, 42, 84, 57, 53, 71, 75, 63, 58, 48, 70, 42, 96, 87, 58, 60, 49, 71, 74, 76, 56, 103, 60, 64, 58, 72, 64, 93, 72, 68, 48, 68, 113, 53, 77, 67, 58, 55, 64, 68, 67, 55, 72, 44, 59, 65, 59, 58, 67, 55, 78, 56, 74, 65, 38, 76, 57, 58, 76, 81, 72, 58, 44, 96, 75, 71, 74, 83, 68, 71, 92, 46, 65, 56, 83, 66, 65, 59, 78, 61, 81, 64, 54, 47, 87, 74, 47, 62, 49, 64, 83, 61, 69, 85, 59, 62, 70, 41, 36, 70, 75, 76, 78, 60, 54, 43, 64, 71, 75, 69, 53, 67, 71, 47, 64, 79, 81, 53, 63, 52, 97, 54, 65, 77, 74, 62, 50, 61, 61, 65, 74, 47, 86, 61, 55, 78, 68, 78, 58, 53, 41, 68, 63, 50, 47, 54, 65, 61, 56, 53, 55, 80, 101, 62, 53, 49, 55, 50, 63, 67, 50, 62, 41, 56, 58, 56, 50, 41, 60, 42, 75, 63, 34, 58, 47, 89, 92, 74, 73, 57, 72, 43, 45, 79, 84, 80, 64, 84, 56, 47, 80, 65, 59, 60, 88, 78, 50, 65, 62, 85, 66, 54, 81, 64, 87, 47, 73, 41, 69, 91, 48, 68, 111, 55, 55, 57, 88, 57, 49, 64, 63, 65, 64, 58, 63, 63, 67, 75, 68, 78, 41, 67, 78, 66, 108, 44, 62, 63, 63, 64, 61, 70, 86, 48, 88, 46, 81, 65, 58, 62, 74, 44, 76, 58, 75, 62, 70, 65, 120, 66, 48, 52, 62, 58, 59, 55, 26, 46, 66, 57, 70, 59, 76, 54, 54, 54, 65, 62, 51, 65, 77, 78, 46, 63, 66, 79, 84, 68, 93, 49, 42, 75, 60, 61, 83, 55, 69, 98, 68, 56, 71, 68, 61, 43, 47, 77, 87, 54, 64, 67, 57, 62, 64, 79, 62, 54, 57, 69, 67, 64, 106, 78, 54, 88, 45, 59, 42, 65, 72, 50, 72, 59, 35, 85, 52, 62, 60, 74, 56, 61, 65, 55, 73, 52, 58, 69, 53, 60, 72, 49, 61, 71, 57, 85, 55, 75, 66, 57, 82, 44, 48, 75, 64, 50, 69, 101, 73, 69, 84, 53, 54, 70, 58, 68, 83, 66, 95, 65, 141, 81, 64, 69, 36, 84, 71, 75, 60, 70, 78, 81, 57, 94, 70, 61, 84, 57, 66, 87, 60, 47, 51, 49, 78, 66, 60, 77, 49, 49, 65, 78, 96, 86, 70, 66, 72, 64, 70, 67, 65, 61, 58, 83, 143, 67, 72, 75, 75, 55, 87, 67, 94, 43, 48, 72, 81, 73, 58, 65, 88, 77, 97, 50, 51, 46, 111, 83, 46, 44, 40, 70, 75, 60, 80, 47, 57, 55, 76, 99, 80, 61, 51, 63, 60, 70, 85, 90, 140, 66, 64, 45, 58, 58, 82, 52, 61, 68, 63, 63, 63, 77, 56, 70, 66, 69, 57, 77, 42, 81, 60, 70, 60, 70, 47, 62, 79, 71, 62, 59, 79, 72, 77, 63, 71, 89, 59, 64, 60, 99, 55, 53, 94, 64, 57, 54, 58, 73, 62, 53, 65, 47, 58, 74, 59, 68, 73, 71, 64, 68, 97, 59, 83, 55, 58, 64, 62, 70, 63, 59, 69, 73, 68, 72, 64, 79, 63, 51, 59, 59, 55, 54, 64, 58, 75, 61, 76, 73, 63, 60, 76, 56, 57, 58, 82, 92, 55, 65, 86, 64, 57, 74, 66, 64, 82, 66, 54, 55, 61, 59, 61, 68, 79, 65, 46, 64, 62, 79, 45, 52, 64, 62, 81, 86, 66, 64, 75, 56, 82, 71, 72, 88, 52, 68, 86, 53, 65, 74, 65, 80, 102, 77, 74, 73, 51, 68, 65, 77, 63, 62, 73, 70, 76, 70, 64, 59, 109, 66, 67, 60, 66, 68, 62, 63, 50, 64, 47, 56, 59, 58, 47, 68, 64, 57, 86, 56, 59, 66, 57, 53, 61, 58, 55, 72, 70, 60, 79, 53, 96, 62, 54, 59, 77, 61, 63, 100, 75, 68, 79, 72, 55, 55, 46, 68, 63, 43, 60, 58, 72, 118, 73, 81, 59, 62, 87, 66, 53, 52, 144, 66, 51, 62, 57, 73, 65, 60, 68, 58, 71, 60, 62, 85, 60, 97, 81, 86, 65, 63, 56, 60, 56, 73, 63, 61, 87, 81, 54, 53, 64, 59, 55, 73, 66, 64, 91, 98, 55, 64, 107, 45, 47, 84, 74, 68, 64, 56, 74, 113, 57, 61, 62, 63, 72, 68, 65, 64, 95, 59, 86, 77, 63, 78, 61, 69, 64, 73, 56, 62, 73, 121, 55, 61, 62, 56, 70, 57, 58, 37, 106, 63, 90, 83, 59, 60, 50, 75, 62, 48, 79, 69, 65, 57, 38, 64, 57, 54, 58, 93, 65, 58, 74, 54, 61, 65, 60, 71, 55, 57, 73, 48, 61, 67, 60, 56, 74, 73, 63, 87, 57, 75, 55, 80, 56, 67, 68, 75, 56, 62, 74, 76, 63, 78, 75, 69, 60, 83, 60, 70, 56, 79, 78, 58, 64, 63, 57, 58, 57, 63, 62, 78, 63, 54, 55, 72, 84, 57, 57, 60, 64, 63, 44, 70, 61, 68, 62, 43, 50, 71, 64, 55, 51, 73, 69, 63, 68, 65, 74, 71, 51, 45, 73, 54, 55, 67, 81, 80, 59, 68, 64, 54, 86, 65, 72, 53, 91, 63, 63, 56, 77, 58, 70, 71, 70, 66, 56, 84, 58, 66, 57, 53, 125, 83, 54, 66, 51, 78, 56, 45, 69, 60, 54, 62, 65, 56, 60, 96, 82, 76, 42, 55, 69, 66, 68, 66, 64, 69, 53, 54, 63, 68, 53, 45, 45, 90, 95, 60, 74, 66, 73, 66, 55, 74, 54, 73, 89, 72, 61, 68, 69, 58, 49, 67, 61, 86, 71, 46, 53, 63, 75, 79, 66, 46, 67, 66, 61, 54, 63, 78, 59, 69, 60, 70, 61, 63, 59, 58, 52, 79, 80, 107, 51, 69, 70, 50, 78, 64, 60, 47, 74, 68, 62, 72, 87, 51, 55, 69, 59, 62, 65, 63, 59, 42, 64, 57, 51, 79, 73, 70, 66, 61, 64, 57, 50, 42, 66, 75, 58, 64, 49, 53, 67, 59, 46, 61, 66, 99, 40, 71, 61, 51, 62, 77, 54, 72, 44, 62, 57, 86, 58, 80, 58, 68, 81, 68, 50, 68, 57, 66, 50, 53, 45, 59, 67, 54, 65, 53, 58, 65, 62, 57, 76, 51, 57, 82, 46, 78, 54, 55, 70, 81, 61, 66, 72, 51, 57, 65, 53, 67, 56, 64, 60, 53, 88, 63, 54, 61, 91, 83, 59, 65, 73, 63, 82, 63, 67, 59, 73, 50, 84, 86, 63, 67, 54, 56, 57, 65, 57, 70, 69, 72, 75, 56, 64, 119, 62, 52, 66, 58, 54, 57, 59, 50, 61, 59, 55, 60, 61, 75, 74, 67, 77, 63, 62, 56, 72, 73, 60, 139, 72, 84, 84, 54, 65, 72, 60, 110, 63, 61, 59, 73, 63, 57, 59, 68, 51, 76, 60, 94, 65, 95, 83, 65, 61, 65, 65, 56, 94, 68, 98, 84, 63, 54, 62, 69, 80, 60, 69, 53, 83, 88, 66, 59, 68, 64, 62, 70, 70, 46, 70, 75, 94, 55, 45, 76, 57, 53, 63, 58, 53, 79, 65, 80, 66, 61, 70, 76, 73, 71, 87, 44, 79, 57, 80, 67, 71, 68, 46, 64, 72, 56, 67, 62, 73, 62, 61, 56, 86, 76, 60, 61, 54, 73, 36, 93, 73, 65, 64, 88, 68, 68, 74, 79, 71, 53, 55, 58, 74, 61, 59, 60, 48, 66, 52, 81, 69, 68, 62, 54, 57, 60, 69, 80, 54, 62, 66, 68, 68, 75, 84, 61, 66, 115, 63, 70, 80, 58, 70, 71, 53, 59, 59, 69, 77, 50, 70, 81, 61, 78, 68, 67, 55, 73, 62, 60, 55, 65, 75, 76, 77, 55, 73, 57, 74, 78, 68, 69, 76, 64, 54, 61, 80, 59, 75, 54, 48, 70, 58, 79, 75, 108, 64, 64, 60, 49, 65, 74, 70, 77, 55, 34, 56, 73, 74, 73, 58, 70, 46, 59, 58, 98, 126, 87, 56, 75, 64, 66, 34, 69, 64, 62, 89, 50, 78, 59, 62, 65, 62, 82, 56, 69, 68, 66, 77, 76, 82, 52, 122, 60, 92, 63, 76, 62, 53, 64, 97, 64, 56, 61, 111, 61, 63, 61, 80, 60, 61, 70, 77, 83, 75, 77, 55, 63, 66, 67, 59, 60, 66, 56, 82, 71, 53, 68, 59, 53, 60, 76, 85, 60, 64, 63, 60, 61, 59, 55, 75, 61, 71, 58, 85, 57, 65, 48, 71, 64, 83, 59, 76, 65, 54, 84, 64, 61, 63, 68, 69, 74, 68, 64, 74, 52, 53, 64, 48, 69, 86, 70, 67, 85, 67, 62, 63, 67, 88, 71, 69, 61, 74, 47, 54, 66, 68, 59, 64, 54, 90, 63, 64, 61, 79, 65, 67, 63, 71, 62, 66, 63, 47, 45, 76, 58, 78, 62, 62, 58, 59, 63, 58, 50, 53, 69, 55, 70, 61, 86, 66, 64, 94, 56, 67, 65, 49, 68, 77, 48, 58, 81, 49, 116, 59, 86, 62, 74, 45, 62, 68, 84, 67, 46, 68, 61, 74, 72, 55, 58, 88, 67, 77, 57, 68, 57, 73, 82, 56, 72, 62, 79, 53, 52, 56, 62, 65, 72, 117, 88, 54, 70, 74, 91, 66, 65, 64, 81, 50, 58, 38, 64, 67, 76, 68, 72, 95, 61, 58, 60, 62, 73, 67, 65, 58, 66, 65, 38, 58, 59, 48, 68, 71, 46, 59, 59, 72, 68, 78, 68, 59, 64, 51, 64, 50, 48, 70, 77, 53, 63, 57, 50, 80, 56, 33, 70, 73, 51, 58, 60, 73, 78, 62, 74, 63, 67, 52, 67, 60, 61, 53, 81, 93, 86, 77, 73, 64, 82, 65, 60, 81, 63, 63, 93, 60, 46, 45, 58, 68, 94, 50, 73, 98, 61, 46, 63, 51, 66, 53, 70, 69, 77, 78, 50, 82, 49, 61, 63, 40, 57, 88, 55, 56, 52, 71, 80, 66, 72, 85, 51, 69, 62, 48, 52, 83, 79, 42, 70, 72, 63, 84, 60, 49, 55, 50, 82, 53, 61, 77, 55, 69, 44, 55, 72, 56, 71, 72, 71, 37, 91, 72, 56, 74, 102, 46, 55, 54, 63, 59, 51, 73, 71, 64, 72, 51, 74, 53, 65, 79, 67, 48, 62, 77, 82, 76, 65, 50, 81, 67, 89, 56, 55, 96, 60, 81, 73, 66, 70, 60, 68, 92, 85, 93, 65, 75, 101, 57, 83, 36, 59, 80, 65, 62, 78, 60, 51, 49, 56, 77, 62, 74, 79, 57, 69, 55, 55, 62, 87, 63, 65, 55, 87, 90, 70, 75, 53, 60, 67, 65, 91, 61, 53, 57, 75, 58, 38, 68, 66, 62, 69, 62, 61, 82, 65, 113, 47, 83, 69, 67, 74, 45, 78, 45, 72, 64, 38, 74, 52, 95, 83, 76, 60, 75, 85, 58, 76, 62, 91, 71, 46, 61, 67, 69, 54, 60, 63, 86, 70, 78, 85, 66, 64, 49, 64, 74, 69, 59, 45, 52, 68, 36, 101, 60, 59, 73, 57, 73, 62, 74, 74, 37, 91, 69, 52, 77, 79, 65, 46, 80, 77, 71, 65, 54, 53, 94, 37, 54, 61, 58, 49, 64, 55, 79, 66, 44, 58, 56, 76, 50, 72, 59, 71, 62, 45, 70, 59, 62, 72, 49, 34, 66, 66, 60, 64, 67, 85, 99, 100, 59, 50, 52, 42, 72, 51, 53, 69, 117, 64, 52, 75, 68, 59, 57, 106, 94, 87, 108, 74, 71, 57, 61, 55, 106, 55, 77, 81, 86, 54, 47, 91, 80, 167, 56, 74, 58, 46, 75, 66, 63, 59, 51, 71, 50, 87, 72, 66, 46, 53, 57, 100, 70, 59, 70, 58, 55, 53, 57, 57, 104, 86, 77, 63, 80, 48, 63, 74, 47, 63, 34, 65, 76, 64, 56, 88, 60, 88, 93, 66, 72, 78, 67, 55, 71, 54, 64, 64, 90, 61, 69, 66, 57, 59, 45, 64, 82, 81, 68, 151, 71, 62, 61, 103, 52, 43, 88, 54, 65, 67, 108, 69, 86, 41, 60, 71, 73, 87, 75, 56, 60, 50, 49, 58, 102, 78, 43, 83, 67, 80, 85, 61, 60, 69, 59, 79, 51, 85, 60, 91, 48, 55, 61, 62, 66, 74, 103, 49, 61, 58, 49, 45, 60, 58, 49, 56, 52, 76, 51, 89, 60, 63, 60, 57, 59, 60, 63, 69, 121, 82, 90, 48, 55, 63, 53, 69, 69, 35, 112, 93, 61, 78, 108, 60, 65, 70, 46, 63, 84, 82, 51, 101, 50, 63, 77, 69, 69, 83, 80, 71, 69, 58, 68, 63, 68, 60, 87, 86, 125, 57, 63, 66, 62, 66, 63, 91, 71, 71, 49, 72, 75, 71, 74, 71, 65, 58, 68, 79, 66, 73, 97, 60, 73, 51, 61, 70, 54, 83, 64, 67, 63, 54, 56, 56, 62, 42, 28, 45, 68, 39, 76, 75, 58, 52, 49, 76, 43, 59, 71, 48, 61, 50, 42, 53, 85, 89, 49, 61, 52, 67, 68, 73, 51, 82, 85, 73, 65, 58, 61, 50, 100, 55, 40, 58, 78, 83, 62, 81, 52, 71, 63, 48, 73, 51, 83, 83, 61, 57, 50, 68, 48, 55, 75, 70, 55, 66, 75, 49, 70, 52, 85, 60, 70, 57, 59, 78, 55, 64, 82, 55, 56, 80, 76, 52, 70, 63, 63, 86, 46, 49, 57, 56, 64, 54, 77, 60, 76, 46, 89, 55, 65, 95, 48, 68, 54, 131, 58, 58, 66, 96, 68, 66, 61, 71, 59, 73, 54, 83, 69, 56, 53, 55, 72, 73, 48, 75, 84, 62, 67, 58, 73, 49, 52, 64, 36, 51, 93, 68, 54, 56, 105, 74, 61, 77, 76, 57, 59, 71, 70, 57, 78, 88, 68, 70, 68, 63, 60, 59, 82, 50, 46, 56, 51, 52, 62, 36, 70, 79, 56, 61, 52, 46, 85, 40, 55, 51, 85, 80, 43, 56, 69, 88, 64, 55, 58, 57, 48, 90, 80, 73, 69, 61, 74, 89, 85, 81, 66, 68, 60, 60, 47, 56, 59, 95, 88, 76, 75, 46, 62, 49, 62, 67, 54, 79, 62, 68, 65, 47, 59, 44, 81, 86, 68, 58, 61, 71, 55, 83, 50, 91, 81, 95, 54, 61, 108, 64, 59, 63, 60, 57, 40, 65, 68, 66, 75, 59, 57, 69, 62, 55, 58, 72, 55, 66, 57, 84, 87, 45, 52, 64, 78, 50, 64, 42, 73, 61, 76, 59, 46, 30, 79, 47, 50, 93, 48, 70, 43, 64, 55, 75, 74, 70, 85, 77, 47, 68, 72, 78, 89, 64, 134, 73, 62, 51, 77, 80, 62, 56, 61, 90, 70, 59, 54, 54, 58, 44, 88, 39, 70, 84, 48, 81, 48, 72, 56, 48, 71, 49, 79, 70, 91, 71, 73, 52, 46, 55, 66, 71, 60, 52, 54, 43, 55, 99, 78, 78, 74, 91, 57, 60, 74, 64, 70, 70, 60, 57, 74, 62, 64, 60, 71, 50, 60, 53, 59, 56, 71, 47, 64, 66, 86, 53, 67, 79, 53, 78, 83, 73, 68, 66, 51, 48, 59, 75, 50, 80, 68, 81, 91, 48, 58, 37, 68, 71, 76, 90, 71, 75, 54, 53, 78, 57, 48, 47, 73, 49, 58, 58, 67, 99, 50, 76, 62, 50, 66, 36, 78, 87, 77, 58, 52, 60, 79, 71, 71, 58, 60, 61, 65, 67, 45, 65, 41, 31, 52, 58, 71, 81, 44, 55, 51, 61, 79, 76, 74, 79, 75, 65, 48, 66, 61, 53, 89, 95, 67, 69, 50, 67, 87, 57, 76, 77, 81, 59, 88, 39, 56, 68, 81, 48, 59, 61, 67, 74, 58, 61, 55, 75, 72, 61, 58, 48, 76, 57, 60, 56, 85, 73, 65, 55, 61, 54, 82, 55, 68, 60, 78, 41, 59, 43, 69, 71, 54, 44, 66, 70, 61, 49, 101, 44, 74, 71, 47, 66, 67, 45, 76, 60, 100, 71, 83, 68, 69, 73, 50, 43, 84, 40, 66, 78, 75, 52, 67, 61, 70, 60, 40, 97, 73, 84, 63, 53, 60, 75, 54, 86, 92, 74, 88, 61, 49, 98, 66, 67, 83, 82, 72, 57, 69, 56, 68, 77, 38, 76, 77, 55, 77, 65, 83, 96, 59, 113, 64, 77, 83, 75, 64, 82, 52, 72, 82, 48, 37, 65, 57, 62, 76, 61, 58, 85, 75, 69, 66, 58, 62, 90, 60, 64, 53, 113, 53, 104, 69, 71, 36, 79, 78, 37, 96, 50, 51, 62, 47, 49, 46, 56, 67, 71, 64, 57, 67, 69, 71, 88, 61, 81, 49, 80, 87, 71, 73, 67, 63, 48, 74, 54, 73, 66, 79, 79, 51, 65, 94, 48, 80, 51, 86, 59, 71, 91, 60, 65, 59, 72, 87, 57, 69, 67, 52, 71, 49, 76, 60, 65, 66, 67, 63, 92, 58, 53, 46, 78, 53, 58, 74, 59, 70, 68, 56, 73, 63, 43, 121, 67, 69, 63, 69, 56, 73, 85, 100, 62, 55, 47, 53, 57, 70, 42, 66, 96, 58, 59, 64, 75, 51, 83, 57, 70, 30, 83, 35, 65, 85, 78, 81, 60, 79, 72, 72, 46, 64, 69, 45, 50, 65, 74, 69, 49, 51, 65, 57, 67, 69, 99, 71, 63, 77, 76, 63, 84, 61, 65, 54, 40, 71, 56, 40, 74, 48, 76, 68, 74, 36, 99, 57, 68, 65, 51, 48, 85, 80, 51, 62, 63, 53, 77, 90, 55, 94, 51, 86, 69, 50, 77, 59, 63, 70, 77, 69, 58, 74, 91, 52, 63, 65, 49, 54, 52, 64, 62, 39, 95, 57, 57, 60, 84, 45, 57, 70, 67, 49, 62, 87, 50, 72, 52, 48, 50, 104, 88, 118, 60, 97, 52, 64, 68, 146, 59, 103, 61, 81, 75, 110, 57, 66, 73, 48, 158, 57, 60, 84, 75, 84, 63, 60, 68, 81, 56, 87, 85, 70, 65, 55, 41, 74, 97, 104, 63, 74, 51, 74, 56, 55, 63, 46, 53, 64, 62, 88, 58, 43, 54, 61, 46, 51, 89, 96, 59, 58, 59, 57, 64, 69, 70, 74, 72, 55, 58, 67, 70, 66, 66, 50, 45, 57, 45, 78, 46, 56, 50, 71, 63, 75, 156, 90, 62, 54, 102, 52, 45, 82, 70, 73, 66, 81, 59, 44, 55, 57, 62, 53, 98, 63, 81, 80, 84, 58, 61, 67, 63, 61, 61, 80, 80, 82, 62, 57, 86, 73, 92, 56, 73, 65, 72, 56, 66, 68, 107, 60, 79, 65, 82, 62, 60, 53, 57, 74, 86, 57, 57, 64, 51, 69, 68, 63, 83, 77, 62, 73, 74, 58, 72, 140, 88, 58, 62, 50, 60, 65, 68, 105, 96, 69, 71, 26, 71, 62, 70, 65, 72, 49, 65, 68, 47, 39, 149, 70, 53, 69, 73, 105, 85, 59, 87, 58, 62, 121, 51, 73, 85, 45, 86, 96, 38, 54, 63, 61, 49, 85, 63, 49, 62, 80, 69, 58, 68, 41, 53, 54, 58, 71, 51, 63, 51, 64, 52, 55, 64, 64, 49, 67, 84, 55, 63, 52, 82, 53, 66, 70, 47, 56, 66, 72, 45, 81, 56, 66, 65, 68, 92, 36, 55, 87, 71, 55, 75, 57, 73, 50, 103, 72, 53, 79, 70, 53, 62, 48, 66, 95, 67, 43, 61, 50, 40, 93, 60, 60, 74, 61, 67, 87, 84, 38, 81, 65, 65, 81, 56, 63, 62, 50, 65, 41, 63, 69, 71, 64, 63, 41, 55, 72, 54, 70, 62, 70, 65, 86, 55, 78, 91, 48, 81, 62, 48, 55, 60, 88, 60, 53, 73, 60, 82, 61, 50, 45, 77, 79, 47, 55, 82, 88, 48, 44, 70, 54, 78, 57, 50, 72, 58, 63, 77, 59, 77, 66, 76, 63, 87, 60, 50, 63, 66, 63, 74, 73, 61, 74, 61, 68, 72, 69, 40, 83, 59, 82, 47, 65, 90, 67, 47, 84, 60, 57, 75, 76, 65, 53, 58, 52, 85, 58, 65, 63, 71, 50, 52, 58, 84, 71, 69, 62, 46, 102, 76, 66, 49, 59, 75, 73, 85, 64, 80, 66, 64, 86, 57, 63, 71, 76, 59, 64, 54, 76, 95, 82, 62, 71, 41, 52, 56, 49, 82, 59, 73, 82, 69, 78, 72, 60, 69, 68, 67, 81, 67, 57, 65, 86, 51, 82, 63, 49, 65, 42, 52, 46, 74, 78, 71, 70, 93, 73, 59, 69, 81, 69, 78, 85, 73, 58, 63, 72, 85, 64, 95, 54, 110, 61, 53, 102, 74, 79, 99, 77, 57, 42, 64, 79, 86, 45, 78, 49, 61, 52, 64, 60, 59, 62, 55, 52, 43, 97, 56, 41, 43, 48, 58, 72, 50, 61, 76, 60, 59, 83, 60, 68, 56, 43, 74, 50, 76, 46, 57, 71, 65, 65, 116, 90, 78, 64, 63, 70, 67, 65, 66, 144, 72, 65, 65, 75, 53, 69, 106, 62, 88, 82, 52, 71, 64, 72, 56, 62, 76, 67, 70, 76, 64, 47, 57, 51, 54, 71, 61, 60, 67, 48, 58, 95, 67, 58, 56, 73, 98, 59, 56, 60, 64, 54, 77, 70, 57, 94, 73, 40, 61, 47, 98, 58, 74, 48, 50, 55, 65, 57, 68, 63, 71, 82, 75, 42, 47, 53, 66, 61, 70, 90, 40, 67, 93, 66, 55, 49, 70, 72, 61, 52, 52, 63, 72, 56, 67, 96, 77, 49, 40, 91, 77, 64, 61, 59, 88, 61, 44, 50, 78, 69, 70, 61, 63, 60, 73, 53, 72, 60, 76, 86, 64, 63, 39, 83, 41, 61, 75, 76, 81, 94, 61, 94, 59, 97, 91, 90, 63, 43, 52, 88, 81, 49, 55, 56, 71, 50, 66, 88, 70, 64, 70, 73, 59, 83, 72, 67, 46, 58, 61, 86, 42, 81, 80, 72, 70, 72, 88, 65, 62, 61, 63, 50, 67, 65, 62, 64, 57, 70, 38, 62, 90, 86, 99, 108, 79, 51, 56, 64, 71, 57, 45, 64, 65, 71, 62, 57, 81, 63, 51, 80, 94, 63, 69, 65, 71, 61, 75, 55, 36, 63, 69, 53, 52, 47, 64, 40, 136, 69, 55, 96, 74, 47, 67, 39, 53, 57, 57, 81, 45, 44, 71, 103, 69, 68, 60, 51, 61, 53, 40, 51, 49, 48, 49, 69, 68, 64, 90, 53, 71, 51, 68, 70, 69, 51, 42, 57, 64, 83, 67, 81, 71, 53, 64, 46, 61, 78, 62, 60, 48, 76, 54, 71, 74, 61, 56, 53, 21, 97, 47, 71, 71, 89, 56, 56, 94, 79, 73, 65, 82, 46, 52, 85, 88, 60, 70, 87, 60, 67, 63, 62, 61, 59, 42, 47, 64, 53, 86, 83, 96, 44, 75, 118, 86, 71, 49, 61, 64, 68, 75, 74, 61, 55, 99, 76, 58, 77, 53, 74, 77, 60, 82, 52, 43, 77, 56, 91, 57, 61, 54, 65, 54, 64, 68, 105, 72, 59, 72, 63, 49, 57, 46, 65, 103, 49, 39, 72, 56, 70, 80, 70, 48, 53, 65, 61, 69, 81, 61, 72, 62, 85, 82, 71, 58, 46, 47, 74, 56, 101, 65, 53, 49, 65, 61, 78, 57, 77, 60, 37, 80, 62, 55, 84, 65, 65, 60, 80, 96, 91, 79, 62, 45, 63, 49, 57, 92, 68, 56, 57, 59, 53, 60, 57, 72, 60, 52, 48, 64, 73, 60, 71, 83, 103, 55, 72, 86, 85, 77, 76, 52, 82, 65, 85, 60, 38, 64, 54, 67, 72, 79, 63, 42, 81, 72, 77, 46, 62, 65, 50, 60, 108, 58, 85, 58, 48, 61, 57, 56, 72, 61, 90, 107, 47, 121, 70, 60, 56, 60, 66, 94, 61, 64, 80, 89, 59, 76, 82, 64, 66, 81, 89, 57, 51, 77, 44, 60, 72, 76, 60, 75, 72, 54, 59, 85, 65, 29, 64, 58, 46, 65, 60, 49, 50, 60, 46, 78, 57, 177, 139, 54, 57, 50, 89, 66, 74, 85, 61, 50, 50, 59, 42, 61, 51, 81, 45, 64, 74, 73, 77, 79, 78, 70, 62, 115, 71, 61, 51, 75, 89, 62, 69, 70, 74, 78, 53, 60, 71, 71, 67, 51, 92, 71, 73, 53, 77, 34, 64, 60, 42, 53, 56, 65, 72, 64, 65, 65, 53, 91, 68, 83, 77, 62, 53, 53, 68, 51, 77, 78, 68, 58, 52, 58, 68, 64, 50, 57, 63, 48, 51, 46, 62, 61, 55, 87, 40, 60, 62, 70, 62, 46, 81, 90, 88, 65, 60, 61, 46, 65, 67, 38, 32, 67, 47, 39, 60, 61, 53, 86, 58, 48, 65, 75, 39, 95, 49, 61, 50, 49, 65, 62, 53, 59, 47, 60, 53, 47, 70, 60, 42, 84, 69, 83, 85, 85, 53, 53, 67, 55, 69, 50, 57, 56, 59, 83, 64, 69, 42, 70, 53, 54, 83, 80, 53, 50, 48, 61, 75, 80, 56, 54, 68, 48, 43, 65, 57, 65, 44, 58, 46, 87, 45, 67, 126, 41, 68, 92, 70, 73, 63, 77, 86, 66, 57, 118, 60, 70, 63, 43, 65, 52, 109, 61, 58, 81, 101, 51, 55, 51, 65, 71, 90, 54, 87, 38, 40, 88, 89, 37, 78, 80, 42, 73, 50, 63, 50, 70, 94, 75, 59, 61, 74, 67, 80, 60, 72, 58, 63, 66, 83, 60, 98, 82, 54, 67, 50, 59, 56, 94, 61, 46, 75, 78, 62, 81, 58, 64, 79, 41, 47, 62, 66, 96, 77, 66, 71, 75, 54, 49, 65, 43, 80, 55, 65, 81, 73, 60, 70, 107, 52, 55, 63, 59, 83, 80, 53, 58, 62, 51, 72, 64, 59, 55, 74, 62, 102, 42, 97, 39, 60, 87, 59, 69, 81, 59, 63, 85, 63, 61, 68, 54, 76, 105, 60, 63, 110, 51, 83, 53, 56, 83, 67, 72, 42, 74, 91, 52, 75, 59, 43, 94, 78, 65, 39, 83, 98, 27, 66, 61, 79, 79, 34, 49, 71, 86, 61, 58, 61, 72, 68, 58, 58, 74, 55, 83, 78, 41, 56, 69, 54, 57, 50, 35, 69, 53, 55, 49, 64, 62, 67, 69, 60, 53, 69, 105, 43, 64, 51, 67, 55, 77, 57, 90, 95, 75, 36, 95, 59, 81, 79, 58, 60, 63, 57, 62, 64, 91, 65, 59, 55, 70, 69, 69, 75, 61, 162, 84, 77, 60, 56, 52, 57, 73, 130, 86, 64, 62, 81, 73, 62, 59, 87, 52, 76, 58, 77, 95, 68, 49, 92, 46, 52, 67, 75, 122, 53, 52, 43, 52, 56, 83, 111, 67, 49, 71, 68, 43, 84, 72, 51, 79, 73, 63, 48, 76, 55, 57, 85, 57, 78, 77, 55, 68, 58, 114, 55, 22, 64, 65, 76, 87, 40, 107, 46, 59, 34, 47, 59, 91, 73, 61, 52, 73, 60, 48, 95, 37, 73, 76, 86, 70, 55, 61, 70, 55, 60, 78, 86, 77, 60, 75, 66, 82, 66, 62, 64, 52, 79, 66, 55, 98, 68, 59, 69, 39, 67, 69, 76, 69, 78, 71, 50, 65, 50, 79, 54, 58, 61, 51, 64, 54, 70, 59, 65, 51, 55, 92, 75, 62, 61, 71, 82, 80, 70, 50, 80, 53, 64, 74, 51, 59, 67, 49, 55, 68, 71, 54, 111, 75, 61, 56, 51, 57, 76, 35, 61, 110, 63, 66, 96, 55, 36, 93, 81, 60, 72, 56, 80, 73, 58, 71, 51, 55, 69, 69, 75, 77, 83, 54, 50, 80, 71, 58, 79, 100, 69, 82, 70, 54, 66, 70, 68, 73, 49, 83, 165, 64, 55, 40, 68, 59, 71, 82, 61, 73, 84, 83, 70, 58, 62, 49, 67, 74, 69, 62, 67, 57, 58, 67, 58, 75, 35, 105, 67, 63, 56, 78, 60, 60, 61, 60, 69, 80, 56, 107, 54, 106, 57, 58, 80, 81, 52, 63, 57, 52, 73, 94, 76, 86, 68, 88, 83, 55, 59, 59, 70, 69, 58, 63, 43, 54, 41, 54, 74, 70, 63, 57, 55, 65, 51, 74, 82, 62, 81, 83, 53, 74, 49, 100, 86, 74, 63, 58, 56, 78, 73, 93, 101, 46, 73, 75, 72, 70, 66, 54, 56, 74, 71, 62, 61, 52, 58, 63, 62, 59, 61, 63, 70, 60, 66, 62, 57, 84, 61, 91, 86, 57, 45, 56, 53, 61, 71, 59, 74, 52, 57, 62, 79, 51, 60, 65, 62, 77, 65, 73, 64, 57, 63, 74, 61, 52, 67, 62, 40, 110, 64, 76, 82, 70, 83, 50, 84, 61, 61, 68, 74, 42, 78, 77, 75, 63, 74, 63, 86, 52, 109, 53, 54, 78, 61, 48, 54, 51, 63, 93, 67, 68, 75, 70, 76, 67, 129, 85, 52, 90, 64, 61, 66, 89, 72, 63, 77, 64, 42, 65, 71, 64, 69, 55, 68, 60, 71, 68, 57, 65, 37, 61, 83, 42, 60, 68, 81, 62, 69, 54, 101, 54, 64, 58, 25, 97, 63, 98, 60, 76, 73, 72, 72, 86, 75, 93, 50, 56, 65, 74, 69, 63, 44, 75, 66, 64, 55, 60, 58, 64, 68, 51, 109, 61, 64, 70, 80, 61, 71, 66, 56, 43, 52, 84, 61, 47, 68, 69, 69, 59, 74, 59, 78, 58, 81, 77, 66, 79, 59, 69, 59, 61, 57, 63, 64, 72, 127, 65, 97, 46, 61, 71, 34, 53, 56, 70, 74, 59, 81, 47, 84, 53, 74, 52, 65, 59, 50, 104, 68, 79, 70, 79, 85, 67, 67, 69, 78, 38, 80, 44, 57, 33, 77, 73, 59, 62, 60, 57, 61, 68, 52, 68, 78, 66, 69, 57, 81, 55, 65, 65, 68, 69, 49, 85, 64, 47, 56, 58, 115, 64, 58, 65, 48, 57, 69, 101, 73, 73, 72, 58, 81, 72, 57, 94, 64, 67, 60, 78, 63, 57, 71, 69, 69, 67, 114, 55, 59, 96, 72, 53, 62, 41, 97, 59, 44, 70, 95, 62, 39, 71, 76, 75, 52, 40, 71, 56, 76, 50, 58, 51, 62, 63, 63, 68, 58, 90, 52, 42, 47, 120, 53, 62, 63, 65, 59, 82, 83, 69, 68, 69, 67, 52, 54, 71, 51, 52, 62, 74, 81, 43, 53, 96, 70, 50, 60, 72, 54, 57, 56, 67, 66, 54, 56, 60, 71, 57, 72, 102, 74, 61, 65, 71, 43, 54, 79, 35, 46, 111, 96, 62, 68, 48, 57, 72, 42, 46, 35, 64, 69, 44, 62, 79, 71, 74, 58, 53, 122, 64, 44, 87, 49, 56, 73, 50, 61, 69, 60, 80, 62, 81, 73, 53, 65, 54, 86, 50, 71, 64, 62, 79, 49, 106, 76, 59, 67, 72, 63, 94, 62, 88, 63, 60, 78, 92, 72, 44, 61, 61, 40, 72, 91, 91, 52, 40, 84, 66, 69, 56, 58, 103, 59, 53, 63, 66, 72, 53, 48, 57, 54, 63, 66, 69, 56, 82, 95, 43, 61, 93, 57, 54, 72, 71, 76, 63, 61, 77, 88, 74, 62, 58, 81, 65, 50, 66, 60, 98, 64, 44, 58, 51, 52, 67, 73, 85, 61, 85, 68, 74, 75, 83, 43, 49, 48, 60, 54, 73, 49, 63, 54, 87, 63, 49, 66, 82, 84, 59, 83, 55, 73, 44, 60, 45, 71, 54, 68, 109, 71, 59, 76, 51, 46, 74, 63, 81, 62, 99, 63, 100, 50, 63, 72, 50, 49, 62, 63, 70, 50, 35, 58, 74, 79, 94, 66, 38, 58, 49, 71, 63, 81, 60, 60, 65, 90, 61, 58, 53, 58, 41, 65, 69, 37, 65, 64, 103, 54, 70, 60, 65, 70, 57, 58, 44, 69, 51, 53, 80, 63, 61, 57, 74, 53, 75, 54, 71, 84, 82, 69, 47, 60, 64, 65, 60, 52, 87, 47, 75, 81, 46, 76, 58, 50, 147, 53, 78, 102, 55, 82, 37, 55, 37, 55, 72, 49, 62, 56, 105, 72, 45, 86, 86, 42, 91, 86, 95, 55, 64, 85, 73, 61, 69, 61, 56, 105, 78, 62, 63, 43, 85, 60, 58, 80, 92, 61, 123, 67, 70, 72, 80, 60, 51, 60, 63, 62, 56, 73, 53, 52, 75, 69, 48, 91, 55, 85, 58, 62, 71, 48, 75, 59, 57, 56, 74, 62, 81, 63, 60, 81, 71, 56, 41, 61, 81, 70, 56, 55, 50, 70, 97, 85, 63, 77, 59, 48, 97, 45, 74, 109, 75, 58, 45, 90, 60, 104, 58, 68, 74, 81, 128, 52, 49, 57, 54, 82, 57, 56, 46, 145, 62, 69, 71, 60, 52, 62, 51, 37, 84, 64, 74, 66, 83, 50, 78, 58, 55, 62, 68, 59, 67, 67, 88, 56, 52, 81, 70, 81, 52, 41, 56, 66, 53, 46, 71, 66, 134, 59, 44, 56, 73, 53, 54, 65, 62, 67, 68, 55, 52, 74, 75, 89, 128, 45, 54, 61, 80, 78, 102, 94, 59, 70, 60, 83, 48, 66, 60, 62, 57, 71, 65, 61, 45, 69, 78, 77, 54, 67, 89, 50, 69, 53, 70, 70, 57, 63, 75, 48, 65, 73, 93, 68, 74, 60, 60, 80, 63, 64, 67, 54, 55, 68, 61, 45, 35, 61, 44, 72, 66, 49, 69, 93, 87, 95, 86, 85, 85, 57, 63, 65, 48, 57, 73, 69, 64, 53, 66, 69, 61, 116, 107, 68, 53, 55, 56, 78, 71, 71, 62, 76, 61, 70, 49, 81, 55, 44, 57, 76, 67, 58, 111, 50, 65, 93, 74, 72, 62, 57, 86, 61, 63, 38, 66, 54, 92, 55, 78, 61, 59, 46, 64, 80, 59, 52, 50, 60, 63, 91, 61, 63, 51, 67, 68, 67, 74, 68, 74, 64, 53, 77, 67, 95, 71, 61, 71, 68, 67, 74, 58, 66, 68, 54, 56, 56, 73, 66, 82, 49, 62, 83, 81, 59, 78, 77, 62, 72, 56, 69, 57, 52, 58, 67, 56, 55, 78, 75, 60, 45, 73, 68, 67, 46, 54, 56, 90, 64, 77, 103, 66, 76, 47, 85, 53, 78, 37, 62, 54, 62, 54, 66, 51, 62, 63, 70, 84, 77, 64, 48, 42, 73, 57, 60, 58, 69, 96, 81, 68, 68, 87, 56, 44, 52, 51, 55, 71, 57, 56, 65, 49, 83, 52, 53, 50, 67, 84, 82, 79, 70, 64, 74, 60, 58, 75, 114, 56, 71, 66, 42, 89, 45, 65, 64, 55, 69, 64, 59, 53, 61, 74, 39, 87, 68, 52, 61, 103, 62, 66, 97, 52, 73, 48, 53, 85, 56, 63, 84, 68, 61, 45, 82, 61, 89, 42, 82, 79, 65, 76, 86, 59, 70, 56, 63, 95, 54, 61, 59, 80, 93, 52, 69, 69, 55, 50, 52, 76, 67, 75, 81, 58, 84, 66, 75, 66, 57, 83, 67, 94, 43, 67, 89, 57, 73, 102, 86, 70, 100, 53, 58, 32, 61, 80, 55, 67, 73, 87, 62, 57, 82, 53, 33, 88, 47, 54, 69, 86, 84, 79, 49, 63, 60, 82, 82, 75, 65, 63, 80, 55, 92, 77, 48, 65, 63, 50, 62, 70, 60, 65, 114, 55, 54, 48, 57, 41, 91, 73, 73, 43, 76, 71, 58, 73, 99, 78, 73, 68, 51, 69, 66, 81, 80, 48, 58, 59, 65, 51, 54, 64, 70, 59, 60, 45, 54, 61, 56, 43, 67, 79, 98, 69, 52, 45, 92, 66, 78, 65, 71, 72, 68, 88, 41, 79, 56, 92, 46, 67, 76, 62, 60, 73, 68, 58, 57, 85, 52, 65, 71, 86, 55, 79, 65, 76, 51, 53, 62, 67, 97, 63, 99, 60, 61, 57, 56, 76, 84, 64, 64, 66, 73, 48, 60, 67, 68, 72, 71, 59, 64, 83, 76, 48, 69, 46, 57, 52, 29, 82, 55, 65, 60, 66, 61, 52, 93, 54, 54, 74, 63, 51, 71, 82, 61, 66, 53, 42, 49, 55, 84, 59, 50, 87, 55, 63, 72, 45, 83, 64, 50, 61, 80, 63, 68, 79, 77, 63, 65, 74, 76, 53, 63, 79, 71, 55, 76, 54, 68, 55, 71, 62, 62, 60, 81, 37, 32, 59, 33, 56, 70, 53, 80, 75, 76, 71, 67, 50, 58, 68, 58, 61, 87, 44, 65, 55, 72, 62, 64, 55, 42, 75, 75, 67, 66, 60, 45, 49, 68, 51, 70, 67, 72, 48, 52, 72, 58, 56, 67, 64, 53, 58, 64, 61, 58, 67, 64, 53, 50, 99, 69, 51, 67, 81, 55, 116, 62, 36, 91, 89, 68, 66, 64, 57, 70, 75, 77, 88, 78, 52, 67, 70, 63, 70, 59, 57, 56, 56, 44, 49, 92, 70, 60, 57, 54, 63, 60, 68, 122, 66, 66, 41, 56, 48, 56, 94, 62, 41, 59, 86, 146, 84, 64, 68, 56, 62, 47, 47, 79, 69, 61, 36, 93, 71, 40, 53, 63, 73, 66, 70, 100, 53, 47, 71, 57, 54, 92, 57, 61, 72, 42, 79, 77, 69, 57, 59, 50, 65, 49, 48, 70, 54, 48, 88, 80, 52, 66, 60, 47, 55, 65, 42, 68, 65, 54, 59, 82, 78, 58, 64, 69, 62, 58, 81, 89, 81, 39, 48, 81, 69, 63, 78, 64, 90, 70, 51, 60, 34, 86, 59, 79, 52, 71, 112, 47, 36, 50, 100, 55, 53, 80, 59, 49, 82, 48, 81, 80, 58, 82, 59, 95, 56, 79, 78, 91, 78, 64, 46, 89, 54, 64, 102, 55, 80, 59, 80, 90, 49, 63, 142, 53, 64, 75, 92, 72, 60, 85, 107, 74, 65, 57, 41, 47, 49, 72, 74, 86, 65, 100, 60, 65, 79, 66, 75, 73, 50, 44, 36, 79, 59, 82, 66, 83, 60, 64, 80, 52, 52, 48, 43, 57, 73, 63, 57, 90, 89, 72, 85, 93, 64, 52, 42, 70, 67, 47, 81, 75, 62, 58, 76, 61, 59, 75, 69, 53, 72, 67, 39, 66, 86, 75, 80, 50, 51, 56, 120, 66, 54, 50, 60, 74, 74, 71, 82, 54, 74, 71, 51, 78, 51, 118, 78, 48, 80, 78, 65, 54, 49, 51, 65, 74, 50, 70, 91, 67, 68, 59, 76, 44, 74, 66, 55, 68, 60, 93, 58, 76, 67, 41, 54, 79, 49, 57, 75, 62, 77, 63, 57, 57, 72, 78, 52, 76, 67, 84, 90, 71, 53, 81, 63, 73, 61, 56, 74, 51, 55, 73, 45, 67, 44, 61, 55, 68, 97, 58, 89, 64, 78, 82, 68, 85, 58, 51, 53, 72, 39, 75, 70, 58, 73, 61, 53, 76, 59, 37, 84, 33, 104, 53, 63, 75, 56, 53, 69, 91, 62, 36, 77, 81, 107, 68, 52, 51, 53, 58, 73, 67, 50, 46, 68, 60, 80, 60, 89, 62, 59, 62, 56, 49, 83, 82, 59, 60, 81, 63, 71, 67, 89, 50, 54, 96, 91, 62, 40, 68, 56, 91, 69, 43, 53, 65, 59, 32, 90, 74, 61, 80, 83, 64, 54, 70, 61, 50, 62, 53, 94, 60, 50, 100, 43, 79, 44, 52, 66, 100, 62, 61, 70, 71, 72, 72, 46, 52, 55, 66, 64, 82, 60, 64, 63, 49, 81, 74, 108, 94, 79, 67, 114, 46, 90, 58, 57, 76, 63, 47, 62, 73, 90, 93, 40, 61, 112, 64, 65, 65, 68, 56, 101, 54, 78, 73, 86, 64, 68, 49, 73, 71, 61, 71, 79, 79, 53, 61, 45, 57, 58, 64, 62, 64, 52, 84, 58, 70, 52, 99, 94, 76, 90, 56, 51, 67, 55, 68, 73, 77, 76, 81, 56, 66, 56, 55, 91, 75, 76, 78, 77, 62, 54, 49, 44, 76, 73, 81, 63, 49, 68, 78, 74, 51, 64, 55, 74, 85, 86, 77, 81, 55, 56, 62, 45, 81, 52, 90, 55, 96, 56, 51, 53, 96, 64, 54, 67, 47, 59, 65, 62, 114, 43, 57, 76, 56, 52, 64, 59, 92, 43, 81, 76, 125, 55, 73, 45, 68, 63, 90, 73, 63, 49, 47, 70, 66, 97, 78, 58, 68, 76, 76, 84, 68, 40, 83, 89, 47, 45, 74, 63, 38, 70, 69, 47, 89, 80, 47, 142, 72, 77, 84, 93, 64, 73, 46, 97, 72, 48, 85, 64, 63, 93, 79, 78, 92, 75, 61, 66, 62, 65, 61, 61, 64, 61, 65, 48, 53, 77, 51, 52, 73, 63, 62, 71, 54, 60, 45, 53, 74, 65, 59, 59, 66, 60, 58, 72, 62, 62, 59, 65, 83, 77, 64, 60, 70, 70, 81, 60, 71, 60, 62, 60, 65, 80, 58, 84, 54, 80, 66, 63, 54, 73, 55, 83, 73, 55, 99, 52, 54, 71, 66, 72, 84, 53, 56, 65, 53, 87, 74, 65, 49, 64, 93, 53, 89, 57, 74, 66, 74, 63, 45, 65, 65, 54, 60, 105, 62, 52, 56, 65, 63, 54, 75, 66, 55, 77, 83, 63, 55, 53, 51, 54, 64, 66, 61, 54, 51, 91, 96, 62, 53, 82, 65, 83, 74, 57, 69, 69, 103, 78, 92, 60, 61, 103, 80, 70, 58, 79, 77, 76, 61, 74, 76, 75, 56, 73, 46, 67, 66, 71, 53, 66, 104, 58, 75, 50, 49, 98, 76, 53, 89, 57, 61, 50, 38, 64, 65, 43, 92, 81, 79, 62, 84, 71, 68, 66, 51, 92, 44, 83, 49, 67, 101, 63, 64, 70, 66, 69, 68, 55, 77, 65, 103, 109, 74, 69, 65, 56, 57, 61, 48, 62, 62, 75, 68, 73, 74, 64, 69, 59, 77, 47, 83, 51, 51, 78, 71, 68, 63, 54, 58, 62, 99, 113, 72, 55, 80, 54, 50, 73, 73, 73, 51, 59, 56, 80, 71, 73, 72, 74, 59, 50, 65, 55, 65, 58, 85, 73, 126, 79, 43, 105, 68, 55, 48, 37, 53, 65, 55, 46, 62, 60, 56, 78, 75, 81, 72, 60, 84, 60, 52, 56, 64, 58, 71, 39, 63, 59, 76, 43, 61, 56, 56, 63, 56, 79, 54, 84, 59, 81, 100, 51, 53, 85, 70, 51, 73, 54, 53, 56, 67, 83, 54, 52, 66, 78, 57, 63, 48, 68, 73, 72, 72, 57, 81, 61, 62, 55, 62, 41, 65, 58, 56, 58, 72, 39, 77, 46, 63, 63, 62, 75, 64, 62, 68, 91, 51, 55, 86, 57, 63, 61, 69, 60, 73, 162, 100, 56, 62, 63, 56, 63, 88, 53, 80, 102, 91, 71, 64, 58, 63, 64, 59, 45, 77, 51, 64, 84, 66, 74, 80, 108, 71, 54, 71, 43, 58, 68, 64, 55, 82, 71, 67, 77, 70, 55, 102, 119, 59, 62, 72, 53, 51, 84, 51, 60, 73, 56, 75, 73, 72, 55, 54, 67, 62, 53, 72, 59, 80, 51, 57, 53, 77, 59, 65, 101, 61, 63, 63, 61, 78, 60, 72, 51, 77, 68, 63, 77, 68, 54, 53, 63, 52, 69, 63, 58, 57, 79, 111, 56, 70, 142, 50, 73, 61, 55, 39, 76, 91, 62, 82, 53, 40, 59, 52, 56, 71, 47, 67, 51, 60, 58, 70, 51, 76, 59, 62, 66, 48, 61, 48, 55, 67, 69, 66, 55, 55, 75, 68, 66, 59, 80, 92, 73, 72, 65, 57, 62, 55, 56, 60, 81, 44, 80, 67, 35, 64, 49, 69, 52, 40, 65, 67, 54, 56, 48, 42, 81, 59, 61, 63, 70, 84, 71, 65, 63, 65, 65, 63, 91, 63, 61, 73, 80, 75, 68, 58, 68, 65, 98, 69, 53, 64, 57, 49, 73, 68, 58, 69, 73, 60, 64, 55, 75, 75, 49, 60, 57, 67, 64, 76, 83, 55, 52, 55, 68, 66, 49, 68, 60, 77, 57, 66, 66, 79, 76, 68, 60, 73, 59, 75, 74, 73, 46, 62, 72, 62, 47, 49, 57, 65, 61, 84, 42, 64, 60, 68, 61, 57, 59, 72, 39, 58, 59, 66, 50, 82, 73, 56, 52, 45, 76, 80, 74, 68, 74, 76, 78, 76, 91, 70, 69, 60, 56, 57, 58, 65, 49, 61, 45, 57, 98, 62, 62, 70, 53, 89, 63, 63, 56, 64, 67, 55, 52, 78, 42, 68, 46, 61, 50, 74, 104, 59, 71, 84, 86, 92, 75, 59, 68, 55, 61, 64, 59, 72, 48, 77, 74, 62, 74, 60, 72, 63, 47, 60, 75, 74, 59, 53, 79, 67, 75, 67, 58, 71, 65, 67, 78, 82, 60, 69, 87, 52, 101, 71, 91, 70, 66, 73, 65, 70, 51, 58, 79, 76, 51, 62, 73, 45, 80, 70, 68, 65, 58, 69, 62, 65, 49, 42, 71, 58, 90, 65, 59, 88, 45, 59, 63, 73, 42, 86, 53, 57, 58, 75, 66, 65, 80, 74, 96, 51, 71, 53, 52, 70, 90, 45, 54, 61, 92, 83, 102, 49, 56, 102, 73, 98, 54, 69, 91, 62, 57, 83, 75, 60, 101, 68, 66, 49, 62, 75, 69, 53, 81, 80, 54, 55, 98, 59, 63, 39, 39, 59, 42, 112, 59, 47, 53, 71, 54, 80, 72, 84, 59, 46, 78, 72, 78, 51, 72, 66, 74, 75, 53, 80, 62, 50, 57, 89, 62, 70, 67, 64, 64, 61, 72, 66, 91, 69, 65, 81, 65, 52, 58, 59, 59, 72, 95, 82, 78, 102, 58, 55, 64, 66, 76, 78, 56, 49, 71, 59, 63, 50, 62, 74, 53, 63, 62, 56, 80, 73, 62, 77, 81, 56, 76, 66, 57, 50, 62, 73, 71, 57, 52, 52, 76, 72, 92, 75, 67, 65, 43, 60, 66, 68, 63, 68, 59, 52, 60, 68, 49, 69, 65, 47, 70, 79, 62, 48, 70, 69, 72, 77, 78, 55, 72, 71, 74, 66, 61, 70, 65, 72, 53, 47, 63, 66, 61, 77, 83, 65, 71, 70, 62, 71, 54, 50, 62, 49, 69, 64, 57, 66, 63, 64, 65, 80, 67, 74, 51, 56, 54, 70, 72, 65, 66, 66, 112, 57, 88, 61, 58, 79, 102, 81, 97, 46, 66, 73, 77, 63, 62, 72, 66, 112, 117, 62, 66, 66, 68, 61, 112, 58, 61, 74, 63, 61, 65, 63, 73, 60, 81, 63, 54, 73, 61, 56, 66, 69, 67, 87, 86, 50, 50, 68, 62, 82, 56, 69, 41, 80, 68, 59, 63, 67, 72, 63, 74, 75, 44, 73, 85, 59, 61, 53, 64, 55, 50, 66, 63, 41, 67, 84, 49, 79, 55, 56, 60, 76, 59, 59, 61, 85, 59, 75, 90, 60, 69, 70, 54, 183, 66, 56, 58, 52, 82, 61, 79, 46, 62, 70, 54, 76, 66, 79, 67, 74, 89, 46, 43, 50, 42, 56, 51, 54, 59, 57, 54, 64, 72, 123, 52, 68, 63, 68, 58, 64, 96, 57, 72, 70, 66, 57, 55, 79, 64, 69, 80, 69, 53, 49, 61, 67, 70, 77, 62, 70, 63, 68, 52, 64, 46, 71, 63, 75, 67, 68, 55, 60, 61, 124, 57, 58, 59, 87, 60, 80, 99, 60, 63, 68, 61, 68, 55, 58, 67, 70, 53, 52, 60, 49, 50, 61, 70, 70, 54, 54, 74, 48, 61, 61, 85, 65, 70, 57, 56, 62, 51, 60, 61, 65, 66, 50, 49, 74, 69, 74, 82, 65, 79, 55, 67, 72, 66, 103, 69, 67, 54, 83, 72, 58, 87, 60, 76, 59, 80, 56, 64, 59, 58, 72, 78, 61, 66, 47, 67, 63, 61, 55, 56, 175, 79, 62, 70, 57, 75, 100, 60, 63, 59, 86, 45, 61, 61, 88, 57, 75, 67, 69, 65, 64, 65, 89, 64, 72, 63, 62, 75, 61, 61, 53, 70, 71, 61, 54, 65, 67, 54, 58, 57, 56, 54, 75, 55, 70, 62, 52, 55, 56, 66, 73, 57, 58, 56, 97, 83, 60, 58, 72, 66, 58, 68, 61, 75, 53, 102, 70, 95, 57, 57, 54, 61, 64, 66, 62, 80, 67, 65, 67, 41, 53, 59, 82, 61, 57, 61, 61, 72, 80, 66, 63, 62, 65, 124, 79, 71, 79, 39, 66, 75, 58, 57, 54, 65, 61, 55, 63, 58, 77, 51, 54, 81, 95, 63, 57, 55, 79, 66, 75, 55, 67, 66, 54, 56, 66, 60, 66, 56, 63, 51, 62, 62, 90, 51, 56, 66, 55, 55, 71, 64, 64, 61, 65, 59, 66, 59, 64, 68, 53, 59, 67, 62, 71, 74, 65, 62, 61, 78, 65, 55, 64, 54, 52, 64, 75, 65, 70, 72, 56, 70, 67, 75, 51, 66, 58, 66, 57, 61, 96, 47, 56, 64, 64, 58, 58, 60, 56, 78, 71, 71, 49, 60, 62, 89, 70, 60, 58, 57, 55, 58, 61, 76, 55, 54, 83, 67, 92, 67, 72, 59, 61, 56, 65, 71, 64, 72, 66, 60, 62, 55, 76, 68, 64, 70, 63, 64, 75, 66, 70, 94, 66, 63, 66, 59, 67, 56, 67, 64, 69, 57, 88, 64, 64, 45, 66, 60, 63, 62, 61, 67, 69, 91, 82, 67, 63, 66, 70, 69, 57, 60, 58, 60, 55, 60, 62, 48, 56, 60, 65, 64, 58, 59, 55, 54, 62, 72, 61, 64, 63, 61, 57, 67, 59, 61, 57, 69, 60, 64, 56, 73, 54, 68, 91, 55, 76, 65, 58, 72, 73, 57, 90, 62, 57, 87, 62, 85, 58, 58, 73, 81, 58, 60, 63, 53, 50, 71, 93, 72, 83, 68, 59, 64, 59, 78, 88, 61, 65, 60, 56, 59, 73, 65, 80, 64, 81, 66, 59, 58, 49, 62, 61, 73, 64, 52, 52, 55, 57, 70, 59, 54, 56, 69, 80, 64, 85, 56, 52, 58, 115, 61, 71, 99, 69, 63, 84, 58, 62, 68, 59, 56, 73, 66, 76, 61, 73, 94, 71, 57, 67, 69, 50, 73, 57, 60, 47, 59, 75, 52, 60, 60, 88, 153, 66, 82, 45, 82, 69, 66, 80, 83, 59, 52, 65, 71, 88, 64, 90, 55, 67, 68, 65, 63, 76, 81, 85, 58, 111, 56, 98, 65, 62, 69, 67, 66, 80, 73, 54, 80, 70, 79, 72, 67, 68, 74, 73, 63, 62, 63, 51, 79, 74, 59, 74, 55, 66, 63, 70, 64, 62, 51, 65, 73, 77, 71, 71, 68, 61, 57, 62, 63, 73, 73, 59, 72, 55, 61, 64, 62, 61, 72, 118, 58, 51, 50, 66, 55, 53, 67, 79, 59, 61, 63, 37, 54, 68, 61, 60, 74, 67, 68, 84, 83, 82, 69, 70, 80, 47, 60, 65, 55, 78, 57, 61, 70, 58, 61, 91, 75, 77, 60, 76, 61, 55, 57, 63, 68, 52, 83, 66, 51, 64, 58, 78, 60, 114, 58, 56, 61, 55, 68, 52, 55, 52, 52, 64, 64, 71, 75, 58, 65, 57, 63, 59, 65, 67, 49, 68, 66, 87, 62, 58, 64, 69, 58, 71, 60, 50, 80, 76, 67, 72, 54, 62, 53, 78, 65, 64, 57, 49, 59, 65, 53, 69, 63, 51, 68, 53, 62, 76, 65, 61, 60, 70, 67, 67, 68, 104, 51, 71, 52, 67, 50, 64, 77, 71, 57, 69, 58, 62, 63, 52, 93, 68, 62, 58, 65, 70, 70, 57, 64, 81, 58, 58, 57, 64, 59, 68, 51, 80, 70, 62, 53, 59, 54, 75, 56, 100, 64, 58, 56, 65, 57, 83, 55, 67, 63, 66, 81, 60, 60, 70, 84, 71, 60, 57, 62, 56, 63, 60, 67, 71, 52, 71, 71, 121, 71, 54, 67, 90, 65, 58, 60, 59, 61, 78, 59, 57, 58, 63, 72, 73, 96, 57, 71, 61, 56, 80, 61, 54, 65, 58, 59, 64, 67, 54, 63, 60, 65, 52, 66, 61, 64, 87, 60, 79, 70, 65, 68, 81, 80, 68, 58, 67, 67, 76, 62, 78, 57, 72, 50, 99, 63, 76, 63, 67, 65, 54, 88, 82, 63, 61, 55, 55, 58, 72, 64, 75, 74, 48, 57, 56, 55, 58, 55, 54, 55, 49, 63, 47, 54, 83, 70, 58, 58, 66, 69, 59, 74, 61, 62, 67, 59, 70, 60, 68, 65, 85, 61, 60, 59, 51, 64, 53, 54, 67, 65, 73, 52, 59, 68, 70, 80, 55, 61, 71, 65, 61, 65, 103, 54, 63, 61, 65, 54, 63, 73, 61, 67, 67, 61, 60, 59, 60, 66, 53, 60, 65, 61, 96, 64, 72, 66, 61, 63, 50, 67, 53, 63, 69, 65, 74, 72, 104, 55, 59, 73, 71, 71, 95, 70, 65, 96, 61, 59, 49, 57, 55, 70, 65, 58, 67, 63, 59, 77, 56, 61, 52, 57, 58, 61, 72, 89, 51, 54, 61, 82, 56, 73, 88, 73, 68, 54, 62, 61, 67, 60, 72, 75, 61, 69, 64, 65, 66, 82, 59, 70, 61, 120, 55, 61, 57, 56, 62, 70, 54, 59, 60, 49, 82, 65, 66, 59, 60, 68, 71, 64, 54, 127, 58, 72, 62, 55, 59, 70, 60, 115, 64, 58, 56, 60, 52, 76, 48, 59, 59, 84, 96, 53, 56, 61, 53, 63, 59, 61, 53, 58, 57, 101, 53, 58, 72, 67, 67, 59, 62, 53, 71, 73, 58, 64, 77, 66, 60, 59, 67, 71, 52, 62, 56, 68, 76, 50, 80, 77, 105, 61, 68, 66, 60, 54, 69, 69, 83, 71, 56, 59, 62, 71, 58, 62, 66, 59, 66, 62, 64, 75, 59, 56, 77, 48, 51, 60, 60, 58, 68, 44, 66, 90, 51, 55, 79, 94, 59, 62, 111, 65, 57, 64, 67, 66, 59, 63, 73, 80, 68, 83, 57, 72, 64, 58, 67, 55, 65, 66, 81, 86, 59, 52, 64, 78, 70, 62, 63, 68, 55, 72, 55, 74, 68, 72, 57, 62, 74, 50, 60, 56, 57, 68, 90, 75, 69, 74, 72, 58, 61, 80, 65, 61, 60, 57, 61, 65, 64, 66, 65, 72, 69, 59, 46, 69, 76, 71, 71, 84, 62, 60, 77, 64, 64, 60, 54, 58, 45, 56, 85, 33, 73, 68, 71, 68, 61, 58, 58, 65, 53, 61, 69, 66, 62, 69, 62, 50, 45, 66, 77, 73, 51, 71, 53, 80, 48, 72, 63, 65, 63, 67, 57, 68, 45, 59, 59, 61, 57, 76, 74, 63, 60, 60, 60, 110, 69, 67, 59, 66, 46, 71, 65, 81, 74, 62, 56, 55, 74, 62, 60, 69, 59, 63, 74, 58, 73, 72, 51, 50, 92, 53, 65, 65, 54, 63, 66, 76, 40, 61, 56, 81, 60, 62, 80, 63, 63, 62, 60, 70, 62, 63, 78, 56, 70, 59, 81, 64, 56, 85, 55, 96, 62, 67, 61, 73, 60, 54, 75, 75, 98, 49, 57, 55, 61, 64, 63, 64, 50, 60, 60, 59, 70, 74, 68, 70, 55, 88, 64, 64, 62, 72, 105, 62, 58, 85, 49, 60, 76, 67, 68, 53, 71, 62, 77, 56, 55, 88, 65, 71, 61, 61, 65, 55, 74, 85, 56, 57, 61, 62, 77, 69, 64, 57, 73, 55, 62, 57, 78, 74, 68, 70, 64, 56, 55, 70, 90, 77, 61, 61, 77, 69, 64, 65, 62, 59, 60, 64, 61, 62, 64, 57, 76, 58, 73, 62, 109, 76, 69, 69, 68, 56, 66, 49, 53, 61, 59, 77, 68, 58, 93, 71, 69, 62, 66, 57, 57, 62, 51, 60, 54, 59, 61, 58, 51, 68, 61, 57, 77, 56, 61, 56, 71, 57, 61, 125, 71, 62, 58, 56, 52, 55, 79, 60, 61, 68, 52, 52, 80, 76, 71, 69, 55, 63, 70, 63, 67, 60, 64, 72, 68, 58, 58, 69, 58, 65, 69, 66, 88, 60, 70, 62, 64, 66, 75, 54, 48, 51, 63, 55, 96, 73, 58, 55, 80, 72, 59, 60, 65, 67, 82, 71, 58, 64, 67, 63, 65, 49, 74, 61, 60, 73, 73, 62, 63, 51, 63, 66, 74, 51, 49, 80, 84, 60, 73, 72, 53, 71, 69, 61, 70, 77, 42, 66, 66, 74, 75, 65, 62, 68, 52, 58, 72, 64, 62, 91, 64, 63, 63, 60, 64, 65, 69, 68, 68, 76, 64, 67, 68, 61, 61, 70, 79, 62, 69, 54, 53, 61, 58, 56, 71, 65, 72, 63, 56, 109, 61, 57, 59, 64, 65, 70, 61, 130, 70, 52, 60, 69, 61, 69, 62, 72, 60, 63, 52, 58, 79, 72, 74, 73, 64, 49, 65, 60, 71, 47, 71, 71, 68, 50, 69, 69, 63, 63, 56, 53, 79, 60, 59, 57, 63, 65, 59, 57, 60, 72, 67, 72, 61, 55, 83, 72, 66, 64, 63, 60, 57, 68, 60, 66, 73, 68, 60, 55, 78, 65, 60, 72, 58, 77, 100, 69, 71, 65, 58, 67, 54, 60, 49, 75, 64, 58, 71, 60, 72, 56, 79, 76, 76, 52, 93, 54, 57, 64, 96, 71, 74, 61, 62, 54, 73, 66, 67, 88, 63, 67, 62, 67, 64, 62, 56, 63, 53, 58, 68, 87, 70, 69, 55, 54, 66, 119, 48, 54, 68, 87, 49, 53, 71, 68, 74, 51, 61, 56, 65, 56, 67, 76, 65, 60, 66, 60, 75, 85, 74, 58, 64, 51, 59, 61, 62, 69, 68, 64, 58, 59, 70, 58, 92, 47, 89, 62, 63, 56, 51, 62, 60, 113, 61, 62, 60, 61, 58, 54, 58, 77, 56, 64, 57, 47, 64, 71, 110, 64, 63, 70, 63, 53, 63, 53, 100, 111, 64, 74, 66, 68, 55, 59, 68, 65, 61, 61, 79, 80, 57, 68, 97, 68, 52, 60, 59, 60, 61, 66, 71, 59, 62, 63, 65, 63, 87, 55, 93, 68, 52, 69, 67, 55, 74, 59, 60, 61, 66, 58, 65, 61, 70, 63, 60, 68, 58, 70, 59, 63, 52, 63, 70, 66, 72, 66, 61, 50, 66, 62, 57, 59, 58, 60, 56, 69, 62, 80, 62, 60, 51, 71, 63, 39, 80, 58, 64, 58, 61, 84, 56, 68, 70, 69, 69, 63, 126, 66, 61, 67, 59, 50, 67, 64, 87, 63, 61, 67, 52, 68, 76, 65, 62, 54, 77, 62, 70, 60, 69, 55, 74, 70, 62, 71, 69, 72, 60, 118, 56, 59, 57, 59, 64, 53, 64, 61, 66, 69, 69, 55, 50, 67, 53, 68, 66, 64, 61, 50, 56, 63, 66, 67, 75, 82, 65, 70, 84, 64, 53, 90, 68, 63, 81, 70, 68, 63, 66, 82, 57, 68, 49, 65, 67, 75, 56, 54, 66, 54, 57, 70, 68, 63, 80, 60, 71, 71, 78, 58, 104, 143, 72, 56, 64, 59, 57, 70, 82, 61, 62, 67, 74, 66, 57, 127, 67, 65, 69, 49, 65, 54, 72, 60, 72, 75, 58, 68, 65, 51, 68, 59, 70, 63, 61, 57, 67, 59, 66, 65, 55, 111, 81, 58, 60, 69, 106, 65, 46, 73, 62, 63, 73, 53, 70, 54, 65, 55, 75, 69, 50, 88, 61, 63, 64, 63, 69, 58, 85, 68, 67, 49, 71, 67, 60, 58, 64, 57, 75, 60, 93, 77, 65, 52, 59, 60, 101, 57, 58, 74, 58, 72, 59, 58, 61, 61, 117, 91, 56, 65, 63, 82, 67, 74, 61, 70, 55, 74, 123, 96, 62, 68, 99, 62, 69, 77, 55, 61, 84, 71, 81, 60, 49, 64, 52, 53, 58, 72, 85, 60, 62, 48, 70, 65, 58, 56, 44, 64, 65, 68, 53, 86, 67, 64, 70, 59, 104, 55, 77, 84, 61, 58, 44, 71, 70, 69, 65, 49, 44, 68, 57, 82, 63, 57, 70, 49, 75, 60, 91, 100, 58, 72, 69, 61, 72, 74, 40, 79, 53, 82, 88, 58, 35, 68, 76, 86, 65, 69, 48, 84, 56, 98, 72, 59, 90, 58, 60, 59, 68, 146, 62, 54, 74, 64, 72, 58, 49, 93, 67, 50, 79, 69, 104, 74, 64, 66, 51, 67, 67, 70, 72, 73, 63, 60, 74, 57, 62, 67, 62, 92, 91, 37, 59, 54, 76, 76, 51, 62, 86, 63, 73, 83, 81, 70, 69, 79, 79, 53, 69, 86, 61, 80, 63, 52, 44, 74, 75, 53, 80, 76, 55, 67, 78, 51, 87, 67, 52, 62, 48, 70, 53, 73, 70, 52, 61, 44, 67, 71, 57, 80, 82, 74, 93, 50, 64, 90, 50, 46, 101, 109, 65, 72, 69, 94, 65, 50, 67, 63, 55, 57, 60, 70, 58, 86, 66, 77, 83, 67, 49, 72, 43, 70, 63, 58, 53, 74, 42, 78, 69, 53, 75, 78, 55, 57, 81, 68, 51, 73, 68, 66, 38, 52, 83, 42, 79, 61, 70, 125, 80, 60, 72, 41, 53, 66, 61, 76, 85, 68, 67, 77, 83, 53, 78, 76, 74, 57, 78, 58, 45, 86, 74, 59, 70, 65, 68, 94, 85, 58, 63, 58, 75, 67, 61, 61, 60, 64, 52, 80, 53, 52, 32, 48, 57, 49, 63, 65, 72, 48, 68, 54, 61, 58, 82, 60, 81, 57, 58, 53, 70, 70, 65, 65, 54, 58, 74, 60, 47, 60, 66, 39, 58, 81, 82, 58, 61, 52, 62, 56, 104, 72, 73, 71, 45, 95, 62, 81, 76, 63, 70, 68, 61, 61, 77, 40, 51, 55, 65, 52, 66, 64, 57, 66, 62, 61, 59, 61, 54, 69, 51, 67, 57, 61, 55, 48, 55, 79, 75, 64, 56, 44, 58, 61, 79, 62, 66, 86, 49, 69, 63, 50, 76, 65, 67, 71, 51, 106, 55, 70, 41, 68, 61, 61, 58, 61, 67, 59, 72, 63, 82, 60, 52, 79, 82, 80, 71, 46, 73, 89, 70, 55, 79, 62, 69, 64, 62, 60, 63, 57, 55, 76, 66, 85, 58, 50, 65, 69, 97, 82, 90, 67, 65, 71, 40, 70, 61, 66, 65, 64, 96, 60, 54, 65, 72, 67, 76, 57, 92, 50, 68, 46, 58, 64, 58, 67, 57, 70, 66, 77, 59, 89, 58, 76, 73, 75, 64, 63, 65, 56, 83, 109, 64, 65, 56, 71, 69, 58, 45, 53, 66, 89, 60, 52, 68, 69, 77, 46, 76, 61, 54, 55, 75, 74, 68, 66, 80, 59, 58, 64, 83, 102, 74, 87, 80, 67, 57, 69, 49, 64, 59, 65, 70, 52, 54, 66, 52, 63, 52, 59, 88, 58, 89, 53, 65, 83, 56, 70, 85, 95, 60, 53, 101, 70, 58, 56, 50, 47, 74, 74, 71, 74, 74, 86, 84, 70, 54, 83, 87, 75, 68, 84, 55, 120, 68, 43, 45, 90, 55, 58, 66, 89, 90, 104, 56, 46, 63, 53, 43, 62, 84, 68, 66, 63, 54, 48, 54, 83, 67, 59, 56, 44, 81, 60, 57, 64, 83, 38, 55, 59, 50, 55, 58, 79, 56, 64, 96, 45, 59, 109, 59, 72, 71, 54, 81, 69, 66, 53, 55, 90, 51, 52, 58, 55, 57, 47, 79, 51, 46, 75, 74, 74, 60, 76, 53, 88, 58, 76, 83, 75, 73, 35, 47, 49, 57, 67, 49, 59, 81, 49, 66, 63, 87, 71, 77, 77, 74, 75, 62, 70, 65, 71, 51, 80, 76, 72, 64, 94, 75, 53, 59, 64, 70, 57, 71, 68, 64, 53, 70, 62, 66, 57, 52, 55, 72, 51, 82, 86, 49, 53, 103, 61, 72, 42, 50, 88, 60, 66, 73, 61, 62, 47, 80, 46, 72, 68, 68, 67, 65, 61, 71, 57, 47, 72, 59, 95, 44, 80, 58, 121, 71, 58, 37, 69, 55, 57, 59, 112, 58, 68, 70, 72, 75, 64, 71, 48, 52, 81, 76, 42, 63, 61, 74, 59, 54, 83, 78, 74, 52, 85, 83, 48, 99, 74, 75, 60, 96, 83, 42, 63, 41, 54, 69, 68, 61, 64, 52, 42, 65, 80, 65, 54, 88, 60, 69, 91, 54, 67, 57, 61, 77, 66, 81, 80, 54, 58, 65, 59, 49, 65, 52, 51, 83, 69, 78, 52, 75, 44, 58, 62, 57, 77, 61, 83, 99, 54, 68, 53, 51, 57, 67, 55, 66, 71, 60, 65, 79, 58, 63, 70, 85, 70, 89, 74, 65, 64, 86, 68, 52, 81, 86, 41, 78, 69, 49, 57, 50, 98, 86, 49, 53, 124, 83, 64, 106, 78, 76, 71, 47, 59, 58, 46, 58, 63, 52, 38, 56, 56, 54, 53, 51, 78, 66, 84, 74, 73, 78, 65, 57, 62, 50, 75, 62, 55, 72, 53, 46, 57, 57, 60, 73, 70, 102, 70, 61, 60, 66, 73, 71, 64, 65, 81, 71, 69, 50, 69, 66, 45, 54, 66, 79, 75, 44, 59, 74, 78, 43, 72, 60, 70, 58, 51, 61, 71, 94, 60, 64, 49, 62, 77, 68, 88, 63, 87, 94, 66, 63, 58, 63, 58, 58, 61, 44, 62, 59, 64, 66, 68, 49, 75, 59, 45, 45, 64, 54, 64, 46, 74, 78, 60, 51, 71, 90, 88, 63, 51, 77, 58, 67, 69, 63, 42, 63, 86, 67, 61, 69, 65, 56, 104, 73, 67, 51, 63, 67, 77, 94, 61, 63, 62, 70, 47, 42, 94, 66, 48, 61, 51, 41, 38, 60, 80, 63, 54, 54, 82, 61, 85, 38, 84, 49, 55, 67, 59, 59, 65, 60, 72, 61, 97, 46, 79, 62, 90, 58, 59, 77, 47, 60, 72, 112, 56, 90, 73, 41, 64, 47, 56, 65, 63, 65, 43, 50, 67, 84, 59, 73, 41, 73, 51, 62, 70, 66, 52, 72, 53, 55, 81, 46, 57, 59, 55, 65, 111, 64, 48, 78, 62, 59, 56, 84, 59, 60, 62, 45, 77, 68, 52, 73, 57, 69, 90, 59, 58, 38, 56, 64, 92, 69, 75, 90, 85, 86, 73, 66, 83, 67, 61, 39, 62, 82, 57, 56, 76, 72, 63, 67, 49, 57, 72, 58, 80, 96, 140, 59, 72, 82, 67, 101, 57, 69, 61, 57, 83, 61, 68, 80, 58, 86, 51, 57, 70, 86, 52, 48, 66, 71, 65, 71, 56, 45, 64, 57, 66, 60, 53, 68, 57, 54, 54, 53, 72, 52, 52, 74, 86, 46, 36, 57, 56, 55, 59, 77, 84, 54, 66, 74, 58, 60, 53, 51, 88, 69, 68, 52, 78, 71, 60, 66, 67, 42, 118, 82, 45, 67, 51, 72, 51, 125, 55, 104, 123, 71, 68, 65, 93, 69, 63, 78, 50, 78, 68, 51, 71, 83, 56, 64, 74, 60, 77, 75, 68, 43, 50, 58, 50, 66, 59, 57, 65, 52, 74, 122, 45, 61, 45, 42, 61, 82, 55, 81, 68, 63, 51, 52, 64, 59, 82, 63, 67, 87, 57, 48, 57, 70, 77, 80, 62, 84, 70, 81, 70, 71, 66, 51, 58, 57, 90, 59, 76, 44, 65, 70, 69, 53, 73, 67, 58, 48, 76, 129, 65, 49, 62, 54, 52, 66, 66, 60, 63, 60, 56, 84, 110, 52, 86, 48, 62, 88, 60, 67, 64, 63, 64, 76, 58, 51, 97, 69, 62, 57, 72, 71, 63, 78, 51, 60, 83, 66, 49, 61, 41, 80, 88, 63, 49, 36, 58, 41, 65, 76, 64, 70, 81, 60, 61, 63, 69, 59, 49, 96, 52, 60, 84, 54, 88, 63, 46, 62, 60, 59, 45, 71, 83, 57, 61, 57, 94, 66, 71, 74, 127, 51, 51, 57, 97, 56, 78, 54, 63, 46, 52, 48, 69, 76, 72, 60, 51, 77, 53, 50, 67, 56, 67, 77, 58, 77, 56, 63, 66, 80, 40, 58, 59, 55, 74, 65, 93, 75, 67, 66, 60, 57, 57, 142, 70, 58, 60, 110, 67, 46, 51, 49, 63, 53, 101, 109, 83, 96, 56, 60, 71, 86, 53, 55, 85, 50, 59, 56, 84, 77, 69, 58, 64, 77, 72, 61, 48, 60, 61, 59, 62, 61, 63, 59, 61, 57, 64, 80, 67, 69, 63, 66, 63, 64, 59, 61, 64, 84, 128, 44, 57, 68, 58, 74, 75, 65, 72, 65, 83, 62, 67, 60, 43, 74, 51, 68, 43, 73, 63, 70, 60, 65, 76, 66, 64, 64, 71, 103, 68, 73, 65, 50, 56, 60, 58, 71, 56, 77, 57, 52, 69, 55, 69, 70, 38, 67, 69, 59, 68, 71, 49, 71, 69, 75, 57, 71, 52, 44, 59, 72, 69, 59, 58, 63, 76, 61, 54, 58, 73, 61, 67, 68, 74, 64, 65, 60, 66, 63, 66, 62, 87, 52, 64, 76, 45, 62, 55, 68, 95, 69, 54, 49, 96, 58, 71, 73, 59, 75, 97, 50, 85, 46, 75, 70, 80, 83, 57, 63, 54, 53, 54, 80, 93, 78, 105, 59, 60, 70, 56, 61, 60, 69, 66, 76, 55, 43, 60, 70, 69, 64, 55, 79, 59, 69, 55, 93, 63, 57, 62, 102, 53, 74, 57, 81, 67, 82, 36, 57, 53, 55, 61, 56, 66, 65, 55, 50, 63, 72, 58, 59, 66, 58, 67, 65, 52, 64, 82, 74, 70, 61, 47, 88, 55, 61, 86, 63, 60, 55, 93, 69, 50, 70, 72, 73, 55, 71, 48, 50, 47, 87, 74, 60, 63, 48, 69, 53, 76, 43, 62, 81, 54, 62, 55, 52, 111, 50, 69, 50, 83, 57, 45, 65, 68, 59, 58, 75, 62, 57, 55, 73, 111, 109, 63, 64, 81, 45, 72, 69, 59, 69, 59, 61, 46, 53, 78, 61, 60, 58, 67, 53, 120, 61, 57, 59, 61, 64, 51, 67, 63, 104, 41, 63, 69, 54, 57, 62, 52, 66, 75, 40, 52, 78, 70, 62, 50, 49, 67, 52, 63, 42, 55, 60, 67, 57, 76, 59, 72, 71, 53, 45, 48, 57, 76, 60, 54, 58, 44, 57, 47, 57, 61, 68, 56, 57, 67, 109, 53, 58, 63, 53, 64, 77, 59, 77, 69, 51, 34, 109, 50, 60, 55, 74, 64, 67, 54, 49, 54, 58, 69, 62, 85, 64, 101, 47, 63, 56, 43, 49, 61, 56, 62, 56, 72, 72, 92, 64, 70, 65, 73, 67, 55, 65, 43, 56, 63, 85, 79, 83, 53, 60, 70, 59, 66, 65, 64, 59, 79, 70, 65, 70, 72, 74, 77, 125, 110, 80, 66, 56, 65, 70, 52, 64, 64, 82, 55, 58, 66, 57, 72, 64, 53, 80, 54, 77, 76, 72, 70, 56, 95, 54, 86, 38, 49, 53, 69, 59, 60, 56, 69, 57, 64, 45, 66, 58, 51, 65, 73, 57, 80, 62, 65, 72, 83, 64, 70, 56, 45, 76, 50, 57, 60, 55, 56, 74, 76, 106, 66, 73, 50, 52, 62, 66, 82, 88, 62, 53, 72, 50, 128, 47, 51, 87, 73, 56, 44, 68, 94, 84, 55, 63, 80, 59, 46, 74, 82, 76, 87, 52, 74, 58, 62, 59, 53, 46, 46, 65, 63, 55, 65, 62, 53, 66, 70, 69, 44, 88, 53, 54, 58, 56, 69, 66, 77, 78, 56, 50, 61, 58, 77, 48, 65, 56, 78, 74, 73, 56, 82, 113, 53, 53, 49, 61, 79, 72, 80, 53, 50, 90, 66, 83, 75, 73, 52, 76, 69, 69, 57, 65, 63, 67, 78, 57, 82, 56, 52, 75, 93, 76, 62, 61, 56, 55, 48, 68, 98, 57, 54, 44, 68, 62, 79, 84, 59, 79, 74, 67, 73, 56, 62, 63, 67, 76, 58, 57, 64, 51, 65, 67, 77, 67, 59, 53, 57, 60, 73, 50, 49, 62, 42, 59, 68, 68, 45, 59, 64, 48, 50, 57, 97, 58, 74, 47, 58, 51, 60, 47, 57, 93, 57, 56, 84, 76, 81, 54, 64, 72, 66, 87, 60, 67, 76, 64, 53, 100, 66, 65, 45, 78, 77, 69, 118, 56, 79, 68, 55, 86, 64, 79, 60, 117, 70, 68, 51, 94, 57, 69, 86, 56, 75, 51, 90, 53, 85, 63, 59, 74, 59, 54, 50, 70, 70, 57, 61, 58, 61, 61, 66, 68, 59, 69, 62, 55, 93, 99, 93, 37, 61, 73, 51, 58, 79, 41, 60, 61, 48, 57, 86, 88, 57, 61, 56, 60, 63, 93, 93, 72, 67, 76, 52, 68, 72, 58, 62, 55, 89, 58, 66, 93, 81, 94, 74, 62, 58, 70, 46, 92, 72, 70, 73, 62, 52, 53, 60, 63, 76, 56, 82, 84, 46, 63, 58, 62, 62, 54, 83, 93, 55, 72, 56, 78, 87, 68, 81, 55, 69, 69, 70, 57, 92, 57, 95, 75, 67, 69, 73, 51, 54, 94, 55, 43, 68, 87, 68, 74, 60, 63, 72, 56, 58, 72, 75, 56, 75, 81, 65, 92, 56, 75, 57, 64, 56, 56, 54, 96, 67, 81, 53, 59, 65, 58, 66, 67, 101, 52, 54, 74, 54, 77, 84, 81, 75, 66, 57, 106, 53, 53, 68, 63, 69, 61, 62, 87, 71, 47, 57, 71, 42, 75, 56, 113, 76, 57, 60, 63, 49, 67, 55, 47, 67, 46, 49, 67, 60, 73, 94, 58, 42, 85, 77, 52, 65, 48, 49, 86, 52, 112, 113, 57, 79, 79, 67, 61, 83, 66, 36, 55, 57, 84, 72, 54, 87, 54, 58, 58, 76, 73, 58, 66, 56, 69, 53, 88, 52, 51, 105, 68, 71, 60, 51, 46, 71, 72, 49, 59, 57, 67, 73, 70, 51, 63, 69, 62, 62, 56, 83, 64, 53, 87, 68, 41, 62, 75, 35, 78, 51, 57, 65, 56, 60, 44, 36, 71, 44, 41, 107, 63, 57, 83, 77, 73, 78, 49, 49, 72, 52, 95, 75, 44, 95, 70, 54, 67, 61, 73, 44, 59, 136, 74, 55, 63, 88, 48, 59, 59, 82, 55, 85, 85, 63, 73, 72, 51, 64, 79, 55, 72, 44, 38, 55, 58, 75, 98, 63, 45, 121, 51, 56, 94, 107, 73, 71, 95, 81, 54, 66, 98, 72, 115, 75, 65, 71, 55, 35, 96, 54, 52, 59, 61, 60, 61, 57, 62, 49, 75, 64, 36, 55, 85, 59, 77, 59, 76, 59, 63, 61, 70, 70, 61, 50, 43, 56, 63, 78, 60, 56, 53, 55, 50, 61, 83, 63, 98, 62, 74, 73, 78, 85, 27, 63, 59, 53, 45, 40, 31, 41, 74, 75, 73, 54, 49, 72, 74, 49, 59, 90, 82, 46, 55, 52, 55, 62, 63, 60, 78, 66, 42, 53, 51, 80, 70, 79, 113, 92, 67, 96, 103, 115, 78, 70, 68, 71, 65, 69, 44, 78, 53, 52, 101, 64, 75, 65, 73, 90, 93, 90, 95, 63, 59, 42, 58, 84, 73, 49, 79, 67, 59, 46, 95, 70, 64, 53, 98, 36, 81, 81, 73, 68, 57, 53, 56, 55, 55, 61, 60, 56, 58, 58, 66, 65, 75, 52, 64, 69, 56, 58, 66, 68, 37, 62, 63, 62, 58, 73, 71, 79, 55, 70, 81, 46, 78, 75, 76, 54, 51, 62, 95, 58, 59, 82, 69, 72, 55, 116, 64, 76, 37, 58, 74, 74, 68, 71, 50, 56, 88, 75, 61, 47, 73, 93, 84, 79, 75, 63, 61, 51, 65, 95, 52, 65, 53, 30, 60, 66, 81, 58, 47, 59, 86, 59, 74, 68, 62, 75, 99, 79, 76, 55, 56, 72, 54, 75, 61, 60, 53, 70, 61, 61, 61, 75, 64, 85, 88, 58, 65, 68, 49, 59, 43, 69, 57, 44, 51, 47, 88, 57, 60, 56, 111, 63, 58, 61, 42, 58, 54, 83, 66, 56, 57, 63, 46, 53, 49, 60, 46, 70, 99, 75, 62, 56, 45, 50, 58, 66, 54, 56, 46, 52, 81, 52, 59, 51, 77, 64, 82, 55, 66, 63, 85, 71, 59, 110, 56, 60, 63, 49, 62, 81, 49, 57, 75, 60, 83, 87, 86, 69, 41, 79, 67, 61, 48, 35, 57, 56, 55, 49, 68, 86, 45, 54, 109, 58, 61, 90, 72, 67, 69, 69, 72, 61, 92, 96, 60, 68, 65, 72, 56, 76, 91, 52, 68, 48, 65, 72, 89, 77, 81, 57, 49, 49, 63, 48, 46, 87, 67, 56, 60, 47, 62, 43, 83, 66, 63, 69, 60, 50, 75, 53, 85, 55, 55, 83, 61, 54, 43, 51, 46, 50, 79, 53, 89, 44, 92, 90, 78, 59, 64, 73, 66, 90, 55, 69, 66, 77, 74, 58, 59, 86, 50, 70, 68, 52, 52, 68, 43, 60, 60, 72, 89, 58, 43, 69, 67, 60, 83, 74, 64, 47, 66, 58, 74, 53, 80, 74, 77, 63, 66, 53, 60, 65, 68, 101, 52, 65, 57, 63, 63, 74, 60, 72, 71, 69, 58, 57, 77, 47, 59, 75, 82, 49, 55, 52, 80, 80, 71, 107, 67, 64, 115, 65, 83, 50, 70, 56, 59, 50, 63, 71, 71, 61, 88, 52, 79, 48, 66, 48, 57, 88, 114, 51, 83, 77, 75, 60, 62, 54, 70, 87, 55, 66, 56, 62, 67, 50, 54, 54, 90, 36, 75, 45, 64, 68, 74, 44, 56, 84, 80, 62, 66, 104, 77, 58, 62, 61, 79, 79, 60, 62, 51, 79, 76, 85, 63, 54, 68, 73, 135, 90, 60, 67, 84, 69, 52, 36, 90, 71, 43, 41, 61, 51, 83, 69, 66, 71, 74, 56, 75, 68, 65, 71, 57, 66, 47, 45, 81, 65, 71, 71, 59, 73, 57, 72, 69, 70, 71, 44, 39, 66, 50, 42, 69, 67, 61, 68, 66, 126, 68, 68, 74, 66, 58, 53, 53, 77, 57, 94, 59, 48, 64, 63, 98, 74, 62, 101, 66, 80, 59, 56, 46, 77, 50, 47, 65, 84, 58, 61, 58, 60, 62, 64, 55, 61, 59, 71, 77, 58, 81, 87, 64, 52, 49, 75, 65, 53, 43, 61, 56, 70, 75, 54, 66, 67, 57, 63, 38, 89, 62, 45, 86, 73, 95, 68, 57, 141, 89, 63, 69, 54, 57, 69, 53, 52, 69, 57, 74, 59, 60, 72, 51, 62, 66, 66, 51, 51, 48, 61, 56, 67, 64, 82, 82, 92, 70, 58, 54, 49, 64, 61, 54, 65, 62, 88, 42, 69, 61, 59, 57, 41, 58, 57, 80, 65, 49, 100, 58, 56, 62, 72, 80, 73, 75, 71, 62, 70, 77, 62, 55, 65, 62, 66, 78, 61, 56, 72, 82, 92, 66, 60, 54, 56, 54, 60, 68, 74, 101, 63, 86, 64, 61, 78, 58, 69, 61, 72, 68, 75, 56, 99, 65, 65, 71, 59, 74, 66, 61, 63, 76, 55, 70, 56, 63, 63, 58, 75, 66, 75, 84, 59, 55, 35, 61, 67, 71, 61, 58, 59, 57, 59, 66, 50, 76, 83, 58, 83, 61, 63, 68, 62, 63, 84, 72, 61, 62, 62, 77, 74, 73, 71, 64, 68, 87, 63, 70, 69, 63, 78, 34, 78, 57, 57, 60, 80, 47, 59, 72, 65, 73, 52, 84, 68, 71, 69, 72, 71, 94, 61, 61, 59, 59, 73, 79, 69, 71, 57, 75, 67, 62, 61, 60, 68, 64, 64, 56, 61, 66, 65, 59, 45, 71, 60, 73, 69, 62, 60, 75, 68, 46, 58, 92, 63, 71, 68, 50, 67, 56, 52, 78, 66, 70, 44, 62, 60, 44, 62, 66, 62, 48, 58, 68, 67, 50, 60, 72, 80, 60, 58, 86, 63, 58, 41, 86, 59, 57, 55, 56, 57, 61, 83, 71, 63, 44, 62, 47, 64, 75, 71, 73, 68, 58, 71, 39, 54, 75, 56, 76, 74, 49, 67, 72, 62, 51, 64, 77, 117, 79, 72, 49, 60, 78, 70, 73, 55, 49, 61, 56, 70, 59, 60, 69, 68, 64, 82, 70, 53, 51, 57, 95, 133, 79, 54, 75, 64, 78, 74, 92, 64, 76, 72, 57, 71, 61, 47, 73, 83, 65, 56, 68, 58, 54, 55, 69, 75, 68, 56, 64, 64, 73, 51, 122, 76, 80, 54, 71, 59, 66, 65, 71, 40, 68, 44, 61, 77, 69, 65, 90, 73, 71, 47, 41, 65, 61, 39, 65, 73, 64, 71, 77, 114, 120, 137, 59, 70, 64, 64, 65, 58, 64, 74, 64, 62, 49, 74, 63, 47, 67, 64, 64, 60, 66, 63, 72, 76, 77, 52, 66, 61, 70, 52, 89, 83, 106, 68, 63, 80, 66, 92, 52, 63, 60, 66, 69, 46, 76, 61, 50, 65, 54, 58, 81, 62, 74, 52, 48, 62, 41, 55, 70, 57, 63, 63, 64, 58, 74, 62, 59, 66, 78, 82, 54, 52, 63, 63, 73, 78, 59, 92, 59, 79, 55, 64, 66, 50, 58, 51, 113, 52, 68, 71, 58, 53, 82, 76, 74, 52, 75, 54, 81, 56, 61, 92, 67, 39, 72, 64, 60, 66, 65, 60, 77, 63, 89, 58, 56, 53, 59, 62, 61, 61, 71, 72, 92, 74, 67, 72, 63, 64, 62, 88, 66, 76, 75, 87, 59, 48, 71, 59, 65, 67, 76, 70, 92, 80, 81, 100, 62, 72, 70, 58, 79, 57, 102, 53, 59, 59, 64, 62, 66, 70, 73, 58, 68, 61, 83, 114, 92, 67, 79, 48, 57, 63, 66, 52, 99, 65, 63, 79, 45, 71, 43, 79, 75, 52, 74, 70, 59, 59, 67, 73, 56, 51, 65, 52, 54, 68, 59, 72, 61, 69, 50, 61, 72, 73, 66, 61, 66, 71, 63, 56, 63, 52, 64, 58, 73, 80, 69, 60, 83, 60, 62, 54, 62, 71, 43, 62, 90, 47, 65, 50, 49, 63, 74, 70, 63, 46, 60, 59, 64, 71, 82, 62, 64, 54, 85, 68, 77, 63, 71, 58, 70, 47, 63, 76, 83, 69, 64, 95, 61, 63, 53, 57, 64, 66, 69, 69, 85, 49, 65, 70, 88, 68, 62, 65, 48, 54, 63, 71, 60, 75, 68, 74, 61, 59, 65, 79, 60, 57, 73, 65, 65, 66, 78, 85, 56, 67, 66, 100, 65, 66, 71, 59, 55, 66, 66, 68, 58, 60, 91, 90, 58, 63, 78, 55, 65, 42, 67, 71, 60, 52, 58, 81, 70, 59, 47, 56, 71, 61, 87, 69, 61, 85, 63, 63, 58, 65, 62, 54, 64, 58, 59, 62, 66, 70, 76, 61, 62, 81, 70, 67, 75, 57, 65, 64, 55, 65, 67, 68, 91, 39, 56, 79, 71, 67, 51, 79, 70, 55, 80, 51, 74, 78, 81, 73, 68, 69, 63, 77, 63, 48, 68, 50, 87, 52, 63, 63, 66, 62, 76, 174, 71, 77, 90, 50, 68, 61, 59, 72, 52, 83, 61, 73, 76, 77, 67, 55, 71, 71, 99, 74, 52, 64, 77, 51, 50, 65, 70, 95, 76, 72, 76, 111, 61, 78, 57, 67, 76, 73, 56, 61, 52, 76, 69, 43, 62, 68, 66, 77, 86, 52, 70, 41, 68, 82, 68, 63, 68, 84, 89, 46, 97, 68, 64, 52, 60, 71, 56, 68, 66, 81, 78, 49, 57, 68, 62, 70, 69, 61, 88, 57, 64, 64, 84, 75, 61, 48, 120, 53, 72, 76, 69, 57, 62, 52, 59, 62, 63, 50, 45, 53, 62, 56, 73, 67, 67, 64, 61, 41, 74, 69, 68, 56, 84, 72, 46, 72, 56, 53, 83, 60, 66, 50, 55, 72, 61, 55, 56, 52, 80, 74, 62, 84, 59, 62, 61, 60, 72, 54, 65, 75, 97, 118, 50, 71, 81, 64, 63, 50, 80, 66, 56, 57, 69, 77, 67, 60, 59, 77, 77, 91, 63, 121, 50, 57, 55, 71, 69, 61, 45, 54, 56, 85, 57, 67, 80, 82, 69, 82, 57, 85, 72, 79, 74, 54, 66, 73, 72, 77, 80, 67, 57, 53, 76, 48, 67, 57, 73, 70, 62, 61, 67, 70, 60, 63, 41, 57, 77, 70, 66, 92, 55, 69, 43, 57, 52, 55, 60, 74, 65, 63, 67, 64, 63, 65, 57, 70, 59, 71, 58, 61, 67, 66, 64, 53, 46, 65, 57, 53, 97, 67, 67, 60, 56, 52, 57, 86, 69, 40, 80, 52, 66, 68, 66, 78, 65, 58, 83, 57, 72, 66, 73, 78, 70, 63, 61, 87, 79, 58, 91, 68, 44, 56, 65, 55, 50, 63, 80, 61, 75, 58, 55, 67, 83, 71, 64, 56, 115, 60, 71, 55, 85, 71, 53, 73, 100, 75, 85, 55, 74, 56, 57, 67, 82, 79, 83, 58, 49, 60, 64, 83, 67, 64, 59, 61, 34, 49, 67, 56, 72, 76, 75, 35, 52, 56, 55, 82, 65, 62, 55, 89, 55, 61, 71, 62, 55, 67, 67, 63, 54, 63, 60, 69, 44, 78, 68, 72, 73, 59, 49, 91, 58, 58, 59, 102, 61, 64, 51, 70, 76, 50, 84, 41, 49, 65, 60, 74, 89, 79, 59, 72, 61, 88, 51, 70, 59, 59, 88, 68, 94, 61, 66, 68, 60, 54, 53, 65, 69, 78, 62, 64, 80, 84, 91, 58, 58, 59, 56, 74, 90, 63, 57, 89, 75, 56, 60, 59, 63, 63, 63, 78, 61, 66, 55, 86, 43, 72, 62, 68, 50, 46, 73, 70, 64, 55, 64, 44, 59, 65, 47, 110, 72, 56, 102, 57, 67, 74, 70, 54, 63, 50, 61, 73, 57, 59, 62, 49, 53, 55, 68, 60, 63, 59, 44, 65, 88, 75, 74, 59, 67, 74, 63, 72, 56, 64, 59, 92, 51, 57, 74, 77, 75, 72, 75, 57, 74, 53, 58, 60, 56, 100, 72, 46, 58, 60, 67, 73, 63, 60, 65, 49, 45, 69, 57, 76, 42, 60, 42, 75, 71, 76, 128, 59, 72, 65, 51, 64, 59, 42, 84, 49, 60, 72, 70, 51, 74, 65, 72, 48, 75, 96, 57, 62, 52, 65, 67, 62, 56, 66, 63, 68, 78, 60, 55, 67, 57, 63, 80, 55, 89, 76, 55, 57, 79, 38, 46, 69, 66, 45, 65, 70, 53, 84, 47, 65, 56, 59, 82, 148, 65, 52, 68, 70, 48, 58, 63, 67, 68, 76, 61, 62, 50, 70, 68, 68, 46, 53, 57, 47, 84, 70, 57, 67, 67, 69, 77, 58, 44, 69, 61, 75, 73, 55, 60, 61, 71, 78, 60, 70, 78, 63, 63, 68, 68, 75, 68, 63, 54, 132, 59, 77, 53, 56, 60, 110, 64, 70, 66, 65, 61, 77, 55, 58, 69, 67, 70, 56, 74, 68, 63, 70, 77, 57, 54, 104, 63, 71, 72, 63, 50, 67, 66, 62, 71, 59, 53, 60, 60, 71, 59, 48, 65, 59, 79, 43, 61, 73, 61, 60, 48, 79, 55, 78, 70, 58, 46, 77, 69, 89, 76, 52, 52, 70, 54, 67, 52, 52, 74, 63, 126, 75, 87, 71, 65, 64, 54, 56, 56, 60, 68, 88, 63, 50, 75, 54, 91, 50, 64, 70, 49, 84, 62, 73, 55, 61, 52, 65, 66, 76, 87, 70, 89, 85, 67, 53, 99, 69, 64, 65, 60, 65, 65, 52, 54, 68, 62, 107, 68, 63, 72, 71, 64, 59, 51, 62, 52, 57, 56, 43, 65, 56, 95, 51, 50, 49, 57, 49, 66, 56, 74, 54, 81, 75, 47, 68, 61, 73, 66, 74, 62, 52, 51, 51, 68, 72, 56, 51, 59, 62, 55, 76, 63, 59, 69, 63, 111, 55, 66, 75, 71, 59, 56, 54, 90, 74, 58, 74, 60, 67, 53, 47, 53, 73, 73, 73, 36, 68, 49, 51, 60, 62, 72, 67, 69, 70, 62, 63, 72, 61, 50, 67, 73, 69, 40, 57, 71, 64, 64, 85, 53, 89, 68, 59, 94, 80, 70, 61, 70, 61, 81, 59, 57, 83, 57, 89, 53, 58, 64, 53, 66, 84, 57, 55, 52, 64, 65, 65, 76, 85, 89, 56, 62, 68, 61, 59, 70, 53, 56, 90, 59, 53, 41, 78, 45, 65, 44, 80, 57, 62, 77, 76, 64, 99, 74, 76, 50, 92, 68, 89, 79, 61, 78, 62, 77, 52, 66, 72, 68, 90, 82, 69, 55, 82, 44, 73, 57, 59, 72, 52, 53, 80, 63, 71, 86, 49, 65, 68, 59, 76, 71, 65, 57, 69, 70, 67, 52, 45, 64, 56, 97, 63, 72, 71, 65, 74, 68, 76, 61, 71, 57, 72, 56, 68, 96, 62, 65, 84, 69, 75, 87, 71, 50, 62, 82, 63, 64, 73, 84, 42, 63, 58, 82, 56, 63, 47, 61, 56, 66, 61, 77, 58, 60, 61, 63, 70, 75, 57, 60, 57, 62, 67, 56, 52, 89, 93, 76, 47, 69, 75, 54, 73, 48, 74, 66, 72, 52, 62, 68, 58, 71, 65, 51, 69, 66, 67, 49, 61, 67, 61, 32, 70, 59, 58, 64, 52, 62, 53, 53, 71, 80, 63, 69, 64, 113, 65, 49, 68, 57, 61, 54, 73, 58, 83, 62, 100, 80, 50, 32, 47, 93, 80, 77, 58, 71, 54, 54, 85, 52, 73, 43, 68, 88, 63, 75, 64, 58, 92, 128, 66, 50, 63, 69, 67, 62, 54, 69, 70, 74, 81, 49, 61, 66, 60, 65, 67, 98, 87, 77, 73, 67, 109, 59, 66, 75, 70, 47, 59, 65, 54, 65, 59, 50, 57, 49, 65, 59, 57, 45, 65, 81, 64, 45, 53, 77, 71, 53, 49, 78, 52, 62, 60, 58, 70, 112, 61, 79, 61, 75, 61, 70, 42, 65, 74, 86, 52, 71, 56, 44, 58, 82, 54, 55, 61, 68, 97, 85, 45, 106, 68, 44, 62, 61, 68, 67, 60, 52, 64, 47, 64, 53, 58, 91, 73, 67, 66, 76, 76, 70, 86, 60, 80, 80, 77, 55, 54, 63, 63, 105, 42, 66, 123, 66, 64, 62, 45, 53, 61, 53, 72, 48, 73, 42, 58, 56, 52, 62, 68, 68, 73, 69, 59, 63, 49, 71, 85, 65, 57, 68, 65, 70, 80, 48, 75, 73, 46, 79, 68, 57, 59, 100, 76, 53, 64, 57, 59, 82, 55, 106, 66, 48, 54, 68, 57, 60, 63, 64, 60, 61, 82, 61, 71, 61, 56, 69, 61, 85, 74, 67, 71, 78, 62, 61, 54, 56, 116, 59, 61, 47, 61, 76, 80, 51, 60, 75, 62, 73, 62, 79, 69, 67, 57, 61, 68, 46, 71, 62, 75, 87, 72, 71, 75, 66, 54, 69, 77, 65, 74, 100, 59, 38, 92, 78, 58, 66, 113, 56, 53, 84, 73, 49, 69, 44, 52, 76, 62, 62, 68, 64, 103, 100, 50, 109, 59, 61, 47, 61, 54, 68, 80, 84, 59, 108, 78, 58, 69, 56, 68, 42, 65, 64, 58, 58, 70, 69, 47, 77, 86, 52, 87, 55, 61, 47, 61, 118, 66, 76, 56, 69, 61, 74, 49, 76, 51, 63, 118, 64, 85, 70, 67, 43, 56, 40, 64, 62, 57, 59, 67, 46, 74, 111, 64, 113, 71, 65, 79, 60, 64, 33, 81, 67, 65, 65, 95, 109, 81, 37, 53, 80, 54, 66, 50, 48, 78, 72, 56, 61, 52, 97, 61, 77, 60, 74, 59, 55, 74, 59, 80, 54, 59, 97, 49, 58, 82, 74, 61, 68, 60, 50, 54, 58, 62, 64, 67, 68, 74, 61, 61, 67, 65, 58, 63, 84, 48, 59, 96, 49, 75, 95, 67, 60, 69, 46, 66, 90, 102, 97, 70, 81, 66, 94, 65, 77, 80, 82, 64, 104, 48, 87, 64, 68, 56, 61, 69, 53, 85, 76, 52, 55, 77, 62, 75, 57, 131, 119, 59, 62, 74, 92, 61, 56, 67, 67, 87, 58, 70, 74, 62, 69, 56, 63, 103, 83, 49, 62, 66, 56, 132, 67, 73, 69, 94, 61, 85, 61, 60, 59, 69, 112, 50, 57, 72, 76, 69, 63, 67, 61, 68, 66, 68, 56, 86, 59, 66, 45, 72, 64, 42, 88, 48, 71, 56, 87, 60, 63, 65, 67, 79, 64, 74, 88, 66, 66, 45, 53, 61, 43, 82, 61, 50, 51, 67, 63, 60, 56, 53, 97, 63, 61, 68, 71, 57, 61, 51, 59, 60, 75, 60, 85, 75, 64, 63, 70, 53, 55, 49, 54, 61, 59, 68, 58, 62, 59, 71, 64, 56, 79, 56, 47, 59, 66, 57, 52, 56, 62, 71, 57, 87, 44, 53, 68, 62, 114, 63, 69, 48, 79, 81, 63, 68, 52, 58, 48, 59, 69, 85, 61, 53, 59, 56, 60, 76, 78, 72, 65, 52, 61, 61, 55, 85, 65, 58, 69, 77, 46, 57, 60, 59, 58, 65, 49, 60, 50, 94, 69, 49, 85, 44, 65, 61, 73, 54, 70, 62, 63, 64, 58, 52, 51, 69, 67, 72, 60, 49, 64, 54, 68, 73, 62, 58, 56, 64, 59, 49, 55, 62, 80, 88, 55, 55, 61, 67, 84, 58, 59, 94, 140, 63, 65, 67, 57, 70, 76, 50, 64, 61, 100, 77, 43, 57, 64, 62, 100, 56, 62, 139, 73, 69, 61, 47, 62, 75, 59, 83, 55, 66, 60, 45, 64, 92, 59, 55, 58, 69, 83, 62, 73, 75, 72, 82, 53, 71, 69, 78, 62, 49, 68, 42, 88, 73, 60, 54, 55, 68, 63, 64, 81, 68, 54, 58, 60, 62, 48, 61, 53, 53, 57, 48, 73, 72, 59, 88, 95, 58, 57, 52, 54, 79, 57, 50, 84, 74, 53, 60, 68, 60, 58, 50, 90, 61, 61, 65, 57, 55, 71, 67, 69, 81, 51, 63, 55, 57, 61, 75, 44, 55, 69, 56, 56, 71, 45, 73, 56, 63, 51, 55, 75, 63, 66, 57, 73, 57, 71, 115, 70, 76, 56, 52, 116, 64, 69, 50, 81, 68, 70, 73, 72, 63, 57, 65, 75, 49, 63, 64, 89, 84, 47, 74, 85, 58, 54, 36, 46, 66, 60, 50, 69, 66, 60, 53, 78, 49, 121, 59, 58, 57, 59, 66, 67, 60, 62, 63, 73, 55, 75, 65, 62, 66, 43, 106, 41, 91, 55, 94, 86, 71, 63, 48, 62, 65, 54, 61, 72, 52, 75, 65, 82, 60, 49, 62, 56, 59, 60, 67, 82, 64, 102, 96, 71, 118, 86, 57, 61, 73, 34, 56, 79, 82, 62, 67, 59, 58, 65, 54, 74, 77, 59, 71, 56, 44, 69, 57, 58, 59, 49, 64, 72, 53, 59, 56, 52, 90, 54, 56, 92, 66, 59, 63, 58, 64, 51, 65, 74, 46, 75, 32, 66, 60, 59, 71, 53, 60, 48, 87, 71, 56, 57, 72, 75, 63, 60, 57, 63, 68, 74, 73, 67, 64, 44, 62, 58, 74, 65, 62, 54, 69, 54, 80, 68, 66, 76, 53, 82, 74, 58, 47, 62, 55, 82, 63, 64, 60, 55, 55, 47, 52, 68, 38, 51, 71, 71, 66, 69, 50, 92, 97, 59, 61, 106, 58, 67, 51, 62, 69, 64, 66, 64, 80, 47, 58, 60, 60, 55, 71, 78, 51, 53, 52, 89, 65, 76, 67, 66, 55, 60, 64, 59, 54, 52, 72, 49, 64, 53, 63, 56, 75, 65, 66, 60, 64, 65, 66, 60, 62, 76, 70, 59, 69, 53, 67, 81, 90, 64, 133, 73, 41, 73, 73, 61, 58, 51, 54, 59, 70, 58, 81, 49, 55, 56, 62, 62, 67, 50, 58, 73, 145, 64, 61, 52, 73, 58, 63, 76, 66, 43, 70, 82, 75, 53, 76, 95, 46, 89, 65, 46, 68, 58, 55, 79, 57, 56, 61, 69, 57, 41, 77, 79, 58, 68, 53, 60, 61, 65, 72, 97, 62, 96, 53, 69, 100, 54, 62, 56, 76, 81, 86, 97, 97, 54, 54, 55, 58, 80, 73, 70, 58, 51, 54, 61, 63, 59, 67, 56, 77, 58, 104, 59, 58, 62, 56, 87, 67, 49, 62, 68, 64, 51, 56, 65, 67, 56, 80, 116, 71, 56, 60, 46, 66, 53, 61, 55, 61, 55, 61, 55, 65, 71, 38, 75, 101, 73, 59, 54, 72, 82, 40, 69, 60, 50, 62, 52, 65, 44, 69, 61, 69, 73, 69, 68, 83, 64, 59, 56, 76, 67, 46, 65, 57, 67, 78, 65, 59, 65, 60, 72, 66, 62, 75, 70, 81, 91, 72, 60, 64, 88, 103, 53, 59, 54, 77, 60, 63, 56, 62, 54, 91, 61, 67, 90, 51, 80, 63, 62, 61, 59, 58, 57, 117, 76, 60, 48, 59, 55, 76, 74, 70, 73, 44, 58, 56, 59, 73, 63, 56, 69, 65, 78, 66, 93, 57, 76, 49, 45, 67, 73, 53, 69, 74, 67, 65, 61, 75, 65, 67, 63, 67, 85, 71, 64, 60, 65, 53, 81, 55, 62, 54, 68, 59, 71, 61, 53, 52, 64, 51, 100, 56, 120, 55, 68, 72, 50, 72, 51, 38, 58, 49, 56, 66, 51, 56, 100, 64, 63, 51, 68, 47, 62, 65, 61, 73, 53, 43, 61, 69, 70, 57, 69, 74, 65, 75, 53, 60, 54, 64, 61, 53, 58, 59, 69, 92, 45, 70, 67, 97, 97, 88, 77, 73, 74, 82, 58, 53, 58, 84, 66, 53, 57, 56, 63, 65, 57, 71, 93, 65, 65, 67, 66, 58, 62, 61, 62, 106, 57, 62, 62, 83, 52, 63, 60, 64, 66, 70, 72, 60, 61, 51, 65, 95, 69, 79, 65, 59, 69, 67, 56, 61, 55, 91, 64, 62, 66, 62, 58, 58, 59, 76, 62, 79, 62, 53, 82, 64, 54, 65, 70, 59, 57, 64, 59, 70, 89, 57, 71, 57, 74, 75, 80, 51, 61, 59, 62, 41, 54, 57, 88, 50, 100, 44, 81, 67, 75, 57, 122, 56, 72, 59, 76, 61, 60, 84, 70, 65, 81, 58, 54, 66, 70, 93, 58, 45, 60, 73, 79, 64, 57, 83, 80, 69, 63, 65, 46, 58, 80, 47, 66, 66, 56, 73, 73, 87, 63, 50, 88, 87, 75, 41, 65, 44, 50, 68, 70, 64, 58, 55, 66, 60, 96, 78, 49, 71, 82, 59, 45, 42, 61, 63, 74, 75, 49, 54, 56, 56, 76, 62, 49, 76, 65, 54, 59, 69, 62, 52, 64, 87, 49, 64, 73, 65, 74, 101, 50, 64, 66, 59, 64, 58, 98, 68, 70, 66, 53, 67, 53, 68, 72, 50, 59, 61, 64, 63, 69, 81, 57, 87, 58, 64, 56, 69, 56, 56, 75, 55, 62, 63, 69, 54, 36, 51, 58, 54, 59, 41, 75, 77, 69, 69, 54, 62, 65, 58, 62, 63, 61, 73, 71, 40, 72, 122, 80, 73, 78, 60, 65, 57, 56, 70, 64, 97, 63, 62, 52, 94, 55, 64, 62, 63, 99, 63, 68, 62, 77, 56, 70, 69, 54, 55, 63, 54, 123, 66, 72, 64, 67, 55, 55, 68, 61, 72, 62, 69, 57, 58, 64, 53, 67, 52, 78, 65, 101, 55, 54, 54, 63, 83, 63, 61, 60, 72, 85, 67, 93, 62, 65, 64, 72, 91, 68, 43, 84, 67, 51, 115, 57, 88, 48, 66, 70, 51, 79, 50, 47, 44, 98, 79, 54, 78, 62, 56, 54, 61, 73, 75, 72, 85, 60, 47, 68, 61, 61, 67, 34, 62, 104, 50, 67, 49, 57, 70, 35, 59, 71, 44, 71, 44, 52, 53, 62, 56, 59, 107, 69, 64, 86, 70, 51, 54, 50, 109, 62, 58, 70, 66, 46, 65, 56, 68, 89, 61, 48, 64, 81, 66, 88, 69, 63, 66, 81, 78, 40, 103, 69, 80, 71, 50, 53, 72, 69, 55, 79, 64, 75, 60, 67, 63, 91, 58, 46, 55, 63, 57, 59, 61, 53, 56, 54, 60, 50, 61, 59, 66, 55, 63, 71, 35, 94, 65, 57, 68, 60, 52, 60, 71, 79, 74, 62, 69, 53, 56, 69, 73, 64, 60, 79, 54, 65, 51, 83, 77, 57, 70, 52, 72, 52, 56, 64, 55, 66, 77, 52, 51, 65, 56, 75, 76, 92, 79, 66, 57, 64, 57, 73, 67, 105, 66, 55, 61, 66, 48, 83, 56, 62, 76, 51, 83, 67, 50, 65, 59, 57, 69, 77, 66, 84, 68, 76, 52, 48, 58, 61, 72, 50, 59, 62, 77, 71, 69, 70, 56, 69, 57, 69, 59, 66, 60, 65, 58, 75, 50, 54, 48, 59, 65, 53, 57, 55, 90, 63, 76, 82, 53, 79, 52, 58, 115, 68, 54, 64, 69, 70, 89, 50, 56, 68, 72, 72, 57, 66, 85, 86, 71, 74, 68, 80, 64, 59, 38, 89, 76, 60, 56, 73, 75, 51, 71, 65, 82, 58, 78, 68, 43, 77, 83, 54, 50, 60, 57, 68, 64, 55, 62, 51, 64, 67, 69, 55, 59, 63, 47, 60, 72, 56, 69, 48, 64, 62, 62, 67, 79, 48, 57, 56, 69, 63, 60, 60, 120, 79, 78, 59, 59, 75, 76, 54, 57, 71, 59, 58, 51, 73, 62, 60, 68, 47, 55, 74, 74, 60, 69, 50, 78, 85, 63, 82, 53, 58, 60, 45, 67, 79, 75, 56, 58, 58, 69, 76, 46, 58, 58, 63, 62, 59, 61, 64, 53, 59, 70, 59, 91, 51, 61, 116, 49, 67, 76, 101, 74, 61, 140, 79, 51, 107, 55, 57, 44, 58, 58, 36, 69, 77, 46, 57, 57, 58, 80, 53, 73, 94, 65, 78, 70, 57, 68, 65, 60, 68, 54, 93, 61, 61, 98, 76, 73, 74, 60, 73, 70, 74, 66, 62, 65, 89, 69, 82, 81, 73, 72, 54, 74, 66, 55, 83, 63, 58, 60, 58, 60, 46, 69, 60, 73, 79, 56, 66, 71, 74, 68, 68, 59, 53, 68, 49, 74, 58, 67, 77, 73, 102, 51, 63, 56, 114, 81, 53, 53, 58, 55, 81, 57, 129, 63, 61, 48, 83, 59, 49, 65, 43, 66, 69, 57, 63, 60, 70, 55, 52, 68, 86, 58, 65, 79, 74, 66, 64, 75, 64, 41, 69, 57, 77, 64, 76, 59, 72, 68, 72, 64, 50, 57, 46, 57, 41, 58, 69, 54, 63, 71, 50, 60, 55, 85, 75, 63, 60, 62, 44, 67, 61, 59, 55, 48, 86, 77, 62, 38, 66, 78, 85, 84, 61, 61, 65, 52, 57, 62, 67, 68, 62, 72, 72, 62, 80, 73, 74, 59, 51, 43, 87, 67, 56, 74, 71, 64, 53, 60, 53, 69, 59, 64, 64, 56, 60, 82, 58, 55, 91, 61, 50, 67, 56, 63, 70, 47, 54, 58, 60, 63, 61, 58, 66, 63, 56, 75, 82, 66, 51, 43, 51, 76, 43, 92, 122, 66, 62, 74, 68, 74, 60, 58, 61, 71, 68, 51, 66, 52, 67, 64, 62, 80, 52, 64, 66, 94, 57, 71, 57, 64, 63, 60, 76, 62, 74, 62, 63, 62, 109, 57, 52, 53, 45, 64, 72, 67, 59, 58, 62, 59, 58, 58, 44, 62, 67, 55, 71, 75, 84, 69, 54, 68, 71, 65, 106, 62, 48, 83, 70, 66, 65, 65, 80, 63, 43, 66, 74, 59, 64, 68, 64, 66, 49, 84, 112, 87, 99, 74, 45, 61, 73, 52, 49, 56, 80, 70, 70, 61, 76, 64, 71, 47, 100, 58, 88, 52, 103, 55, 52, 71, 45, 74, 69, 54, 47, 59, 70, 89, 56, 61, 77, 61, 100, 76, 93, 65, 72, 39, 45, 70, 72, 139, 85, 82, 57, 61, 71, 69, 64, 88, 60, 41, 58, 60, 52, 71, 79, 65, 69, 64, 72, 88, 79, 62, 68, 53, 54, 59, 50, 82, 55, 66, 69, 102, 53, 54, 55, 57, 70, 56, 61, 50, 54, 116, 73, 63, 46, 54, 53, 65, 69, 52, 74, 80, 63, 61, 46, 68, 72, 61, 65, 60, 69, 58, 65, 82, 59, 74, 59, 62, 48, 55, 58, 66, 76, 75, 48, 70, 74, 48, 113, 71, 89, 63, 64, 70, 85, 67, 41, 59, 52, 79, 72, 62, 58, 61, 80, 76, 50, 69, 102, 57, 73, 73, 63, 53, 46, 59, 51, 73, 61, 75, 61, 65, 56, 75, 55, 60, 62, 68, 82, 85, 64, 63, 63, 76, 78, 70, 75, 81, 62, 56, 60, 130, 59, 62, 70, 97, 41, 66, 63, 65, 60, 50, 63, 74, 57, 57, 106, 87, 62, 71, 59, 68, 61, 63, 66, 71, 60, 108, 46, 68, 54, 73, 72, 56, 63, 54, 67, 62, 57, 66, 65, 64, 66, 71, 91, 72, 65, 58, 110, 58, 71, 68, 79, 37, 42, 55, 71, 62, 81, 94, 48, 53, 61, 68, 54, 67, 61, 75, 44, 53, 75, 65, 57, 67, 47, 52, 65, 72, 57, 72, 59, 62, 55, 71, 60, 74, 45, 44, 79, 77, 86, 76, 77, 63, 70, 60, 90, 55, 30, 62, 83, 58, 67, 57, 92, 67, 62, 53, 76, 70, 53, 63, 45, 58, 49, 54, 94, 63, 63, 77, 76, 57, 80, 66, 74, 62, 62, 70, 56, 67, 86, 37, 51, 116, 59, 64, 63, 70, 94, 61, 74, 66, 58, 53, 66, 51, 85, 90, 69, 64, 86, 58, 50, 72, 48, 35, 66, 43, 77, 62, 53, 77, 86, 67, 64, 92, 91, 62, 93, 62, 75, 83, 76, 44, 54, 66, 59, 87, 50, 74, 72, 61, 63, 60, 76, 68, 54, 56, 81, 59, 48, 80, 81, 67, 78, 65, 73, 54, 101, 73, 84, 49, 85, 91, 59, 74, 52, 70, 70, 67, 56, 74, 88, 94, 69, 64, 61, 50, 64, 57, 80, 59, 70, 84, 62, 64, 56, 83, 76, 63, 78, 77, 79, 69, 67, 56, 65, 60, 69, 56, 83, 75, 62, 56, 48, 46, 55, 70, 70, 77, 68, 58, 51, 53, 80, 82, 94, 67, 80, 58, 64, 57, 56, 53, 54, 68, 78, 84, 63, 64, 59, 72, 98, 67, 64, 60, 79, 80, 86, 41, 55, 65, 55, 65, 50, 58, 76, 64, 62, 74, 63, 114, 67, 53, 60, 56, 61, 60, 69, 73, 95, 68, 62, 64, 70, 71, 45, 46, 64, 69, 63, 66, 61, 86, 55, 71, 63, 60, 63, 66, 65, 63, 71, 68, 69, 51, 64, 70, 52, 69, 70, 76, 61, 65, 72, 94, 69, 71, 55, 59, 58, 52, 52, 59, 72, 113, 47, 71, 73, 61, 47, 82, 71, 80, 53, 45, 64, 46, 68, 70, 71, 62, 66, 68, 84, 66, 67, 63, 50, 61, 46, 70, 71, 54, 57, 53, 67, 77, 60, 51, 58, 74, 74, 57, 73, 62, 61, 51, 78, 48, 58, 74, 66, 32, 89, 59, 52, 60, 44, 73, 54, 64, 48, 92, 47, 63, 70, 61, 53, 38, 61, 54, 60, 77, 100, 68, 60, 106, 65, 64, 65, 55, 121, 51, 68, 82, 64, 50, 58, 74, 68, 57, 55, 51, 83, 67, 66, 59, 69, 51, 57, 71, 77, 67, 62, 89, 77, 81, 76, 104, 54, 57, 59, 65, 53, 97, 151, 61, 69, 79, 85, 72, 80, 69, 97, 72, 64, 60, 85, 67, 65, 78, 65, 55, 63, 77, 97, 70, 67, 80, 55, 52, 57, 58, 70, 71, 57, 47, 112, 66, 69, 108, 71, 45, 100, 108, 125, 76, 75, 83, 59, 64, 84, 62, 64, 64, 61, 75, 73, 50, 72, 56, 50, 54, 59, 72, 63, 59, 65, 37, 90, 54, 72, 69, 49, 64, 70, 80, 58, 54, 61, 46, 74, 116, 64, 50, 81, 51, 51, 70, 58, 62, 66, 53, 67, 76, 68, 99, 75, 83, 77, 94, 106, 89, 66, 54, 68, 104, 58, 58, 66, 86, 63, 73, 65, 49, 80, 57, 64, 66, 78, 87, 51, 62, 66, 51, 67, 47, 57, 61, 68, 70, 64, 101, 75, 90, 96, 62, 59, 46, 66, 65, 30, 65, 62, 61, 84, 56, 62, 67, 65, 79, 57, 62, 70, 63, 74, 93, 69, 59, 78, 55, 73, 43, 72, 84, 68, 68, 56, 107, 54, 54, 71, 55, 71, 108, 74, 126, 41, 57, 41, 73, 68, 71, 62, 67, 84, 61, 82, 52, 51, 77, 59, 66, 68, 58, 58, 58, 57, 63, 53, 96, 81, 76, 64, 51, 76, 81, 103, 63, 56, 65, 36, 91, 44, 48, 70, 60, 75, 83, 49, 70, 56, 58, 73, 65, 80, 53, 112, 45, 79, 57, 102, 65, 53, 58, 62, 64, 55, 34, 52, 57, 70, 67, 59, 62, 75, 73, 64, 74, 67, 58, 60, 57, 99, 54, 54, 62, 91, 64, 93, 47, 61, 85, 76, 65, 66, 60, 60, 95, 46, 55, 88, 54, 65, 73, 84, 70, 61, 57, 85, 46, 57, 51, 59, 79, 52, 51, 61, 120, 72, 79, 75, 41, 45, 62, 88, 75, 53, 60, 70, 114, 59, 66, 69, 61, 79, 67, 62, 71, 73, 49, 72, 63, 77, 59, 62, 70, 55, 114, 54, 59, 49, 50, 66, 66, 61, 42, 78, 58, 69, 79, 80, 76, 45, 57, 57, 58, 51, 58, 46, 83, 57, 73, 77, 74, 50, 59, 56, 59, 61, 51, 57, 68, 60, 54, 76, 56, 35, 59, 72, 68, 63, 60, 61, 77, 53, 60, 79, 53, 65, 58, 62, 67, 71, 55, 70, 56, 92, 58, 73, 71, 67, 57, 92, 81, 82, 66, 71, 63, 45, 72, 65, 50, 48, 79, 82, 59, 62, 51, 57, 42, 69, 65, 65, 53, 54, 60, 53, 63, 63, 72, 56, 62, 63, 58, 56, 48, 48, 60, 57, 64, 79, 78, 53, 51, 115, 71, 52, 76, 60, 63, 62, 65, 72, 81, 62, 62, 74, 42, 61, 42, 53, 41, 76, 54, 111, 69, 109, 70, 71, 60, 74, 75, 71, 69, 60, 72, 75, 105, 58, 73, 64, 85, 69, 59, 66, 53, 63, 45, 59, 78, 61, 48, 52, 63, 74, 62, 70, 68, 51, 50, 46, 83, 50, 51, 51, 76, 46, 72, 52, 67, 79, 68, 62, 76, 51, 59, 79, 47, 74, 60, 86, 69, 69, 70, 59, 68, 79, 62, 62, 61, 77, 57, 55, 81, 67, 56, 65, 61, 75, 64, 87, 59, 64, 53, 82, 64, 62, 79, 63, 33, 70, 66, 59, 62, 62, 71, 70, 61, 63, 45, 50, 83, 54, 80, 51, 69, 77, 52, 70, 74, 58, 73, 73, 67, 73, 54, 67, 71, 56, 66, 78, 43, 71, 57, 54, 60, 63, 68, 66, 43, 60, 106, 52, 75, 75, 60, 50, 45, 69, 49, 45, 92, 57, 75, 59, 77, 61, 49, 69, 53, 81, 76, 103, 92, 58, 78, 56, 66, 75, 56, 62, 76, 77, 85, 49, 49, 67, 71, 66, 64, 70, 58, 56, 69, 86, 47, 54, 93, 73, 65, 67, 103, 54, 89, 68, 67, 56, 73, 74, 57, 46, 49, 61, 49, 53, 59, 75, 70, 57, 67, 89, 50, 44, 58, 66, 50, 73, 78, 64, 68, 89, 74, 55, 71, 61, 66, 53, 59, 99, 51, 46, 56, 66, 59, 55, 62, 55, 54, 52, 70, 64, 65, 77, 57, 63, 70, 75, 68, 73, 76, 59, 65, 78, 48, 77, 63, 79, 49, 102, 69, 76, 71, 61, 79, 58, 47, 81, 66, 84, 86, 66, 64, 66, 57, 69, 54, 67, 64, 99, 81, 50, 66, 55, 63, 80, 61, 59, 46, 60, 62, 55, 60, 75, 70, 70, 91, 71, 64, 58, 45, 60, 74, 63, 45, 112, 53, 106, 59, 66, 73, 70, 53, 94, 67, 78, 51, 69, 59, 54, 67, 76, 46, 72, 67, 59, 55, 64, 77, 93, 68, 63, 61, 61, 104, 64, 71, 71, 74, 88, 61, 115, 61, 53, 63, 73, 52, 57, 64, 57, 85, 67, 63, 62, 63, 71, 64, 55, 55, 36, 72, 62, 52, 75, 64, 63, 84, 72, 78, 69, 61, 54, 69, 50, 70, 74, 66, 51, 61, 61, 61, 62, 65, 57, 80, 52, 74, 60, 55, 71, 42, 65, 92, 57, 66, 84, 61, 81, 62, 63, 57, 62, 69, 52, 90, 74, 80, 52, 85, 58, 69, 69, 60, 45, 59, 68, 70, 69, 55, 72, 64, 64, 64, 55, 67, 55, 58, 59, 42, 69, 52, 71, 70, 68, 52, 90, 68, 60, 44, 62, 66, 62, 68, 53, 53, 61, 76, 51, 77, 90, 58, 156, 58, 49, 50, 56, 60, 54, 62, 63, 80, 63, 73, 47, 51, 71, 61, 52, 74, 50, 66, 74, 81, 69, 73, 42, 61, 77, 43, 60, 52, 128, 69, 52, 68, 71, 63, 68, 71, 59, 53, 60, 63, 45, 62, 71, 78, 70, 69, 74, 66, 66, 64, 57, 49, 55, 62, 66, 107, 81, 73, 66, 70, 66, 70, 54, 63, 74, 53, 65, 70, 79, 63, 65, 55, 48, 72, 82, 65, 62, 76, 68, 56, 72, 66, 66, 67, 36, 47, 57, 90, 64, 68, 65, 46, 75, 88, 120, 67, 63, 73, 53, 63, 63, 79, 65, 70, 76, 63, 55, 57, 76, 55, 65, 51, 48, 63, 83, 76, 56, 105, 61, 58, 74, 58, 84, 77, 94, 79, 62, 81, 67, 46, 58, 106, 70, 33, 65, 61, 48, 75, 66, 117, 112, 80, 87, 51, 46, 60, 69, 49, 54, 75, 55, 119, 41, 75, 70, 57, 66, 63, 62, 51, 82, 69, 72, 67, 70, 56, 84, 48, 54, 64, 67, 50, 58, 81, 69, 58, 46, 77, 63, 88, 63, 58, 67, 43, 69, 52, 58, 44, 78, 68, 57, 72, 64, 64, 82, 65, 76, 74, 54, 75, 69, 64, 93, 66, 52, 52, 53, 64, 64, 80, 69, 71, 60, 62, 64, 62, 70, 56, 69, 60, 58, 53, 54, 70, 75, 77, 70, 68, 88, 90, 47, 53, 62, 83, 49, 60, 84, 51, 89, 57, 54, 77, 78, 45, 61, 55, 61, 53, 47, 77, 57, 51, 63, 98, 79, 61, 53, 67, 55, 70, 133, 71, 68, 69, 71, 57, 95, 70, 66, 63, 47, 62, 62, 80, 50, 90, 62, 51, 66, 45, 66, 55, 67, 78, 46, 64, 51, 52, 78, 66, 58, 46, 66, 75, 64, 97, 71, 54, 56, 59, 64, 74, 65, 76, 77, 57, 46, 63, 59, 90, 56, 59, 99, 70, 60, 67, 47, 43, 106, 66, 58, 54, 68, 53, 95, 66, 91, 90, 69, 55, 59, 75, 83, 59, 83, 63, 59, 101, 81, 51, 67, 69, 56, 62, 59, 58, 63, 56, 65, 56, 45, 62, 67, 76, 64, 89, 70, 53, 93, 58, 76, 59, 60, 65, 61, 88, 72, 74, 67, 56, 45, 69, 55, 63, 51, 63, 72, 70, 58, 55, 65, 68, 74, 66, 66, 53, 74, 90, 67, 56, 53, 92, 66, 79, 58, 90, 82, 57, 79, 50, 76, 49, 71, 41, 71, 58, 78, 83, 63, 68, 45, 50, 70, 75, 73, 52, 47, 59, 63, 94, 77, 54, 65, 67, 72, 64, 74, 76, 65, 64, 77, 74, 57, 67, 67, 65, 64, 57, 62, 116, 60, 59, 57, 63, 52, 69, 62, 66, 66, 55, 64, 63, 68, 57, 53, 73, 57, 72, 98, 54, 60, 89, 50, 68, 59, 38, 65, 69, 72, 66, 61, 51, 86, 63, 62, 61, 68, 53, 57, 53, 55, 89, 57, 86, 104, 56, 62, 73, 35, 63, 57, 74, 55, 71, 87, 65, 73, 55, 68, 64, 70, 49, 76, 68, 70, 58, 71, 78, 57, 46, 55, 89, 64, 66, 48, 65, 41, 81, 55, 54, 61, 90, 75, 49, 68, 45, 84, 60, 58, 91, 72, 48, 43, 63, 59, 58, 60, 52, 64, 50, 65, 74, 63, 68, 37, 75, 68, 64, 83, 63, 67, 47, 74, 88, 55, 67, 94, 73, 56, 64, 64, 64, 64, 63, 51, 85, 78, 58, 75, 40, 112, 66, 70, 53, 51, 77, 70, 77, 63, 71, 73, 68, 94, 107, 56, 66, 78, 74, 67, 42, 90, 80, 70, 58, 65, 59, 87, 43, 68, 55, 62, 54, 49, 65, 69, 56, 51, 73, 56, 72, 47, 71, 61, 73, 69, 61, 61, 56, 73, 61, 77, 64, 63, 84, 70, 49, 57, 54, 61, 137, 70, 69, 74, 59, 71, 51, 55, 63, 62, 70, 62, 65, 55, 80, 56, 62, 106, 56, 119, 55, 56, 47, 63, 57, 54, 49, 41, 70, 64, 67, 57, 55, 71, 61, 73, 66, 74, 73, 76, 70, 51, 69, 68, 65, 61, 75, 56, 91, 56, 74, 83, 51, 59, 74, 59, 72, 92, 69, 72, 80, 58, 54, 59, 61, 67, 52, 81, 69, 74, 83, 68, 49, 68, 82, 64, 51, 92, 54, 99, 63, 47, 77, 76, 79, 70, 63, 65, 57, 51, 65, 50, 78, 56, 63, 70, 65, 46, 54, 44, 41, 102, 70, 93, 99, 74, 75, 63, 66, 67, 70, 82, 69, 49, 60, 99, 53, 37, 63, 61, 73, 85, 59, 59, 66, 95, 70, 62, 58, 68, 160, 35, 55, 77, 60, 74, 48, 70, 75, 57, 56, 69, 62, 85, 85, 68, 74, 52, 80, 67, 109, 49, 70, 106, 43, 54, 69, 75, 106, 86, 86, 62, 55, 51, 71, 70, 54, 53, 99, 56, 50, 74, 58, 95, 84, 77, 71, 73, 101, 70, 68, 73, 88, 67, 78, 65, 67, 80, 83, 52, 84, 69, 53, 47, 85, 68, 69, 43, 103, 73, 47, 78, 40, 41, 79, 66, 56, 60, 74, 52, 49, 54, 70, 44, 68, 82, 61, 51, 60, 58, 68, 43, 65, 63, 77, 89, 58, 45, 56, 76, 74, 55, 39, 70, 96, 116, 75, 47, 63, 65, 55, 55, 56, 79, 70, 54, 70, 56, 65, 95, 59, 75, 67, 128, 47, 83, 59, 59, 67, 57, 61, 107, 62, 66, 65, 63, 62, 54, 64, 48, 62, 46, 75, 67, 119, 92, 55, 68, 65, 67, 57, 78, 52, 61, 63, 66, 71, 66, 53, 100, 60, 74, 62, 66, 77, 64, 79, 61, 67, 57, 71, 60, 63, 55, 51, 66, 69, 48, 44, 52, 64, 38, 61, 92, 47, 59, 40, 71, 78, 80, 79, 59, 62, 71, 54, 94, 94, 60, 74, 58, 57, 46, 127, 76, 70, 85, 77, 48, 75, 46, 72, 72, 62, 52, 78, 54, 95, 61, 74, 58, 63, 85, 69, 58, 85, 62, 68, 74, 73, 75, 63, 92, 63, 79, 91, 61, 58, 54, 41, 47, 79, 53, 53, 65, 56, 73, 57, 90, 47, 66, 62, 53, 56, 61, 89, 51, 81, 58, 92, 69, 87, 94, 73, 62, 130, 54, 60, 59, 97, 57, 76, 64, 54, 66, 69, 58, 56, 72, 56, 45, 72, 58, 124, 35, 62, 50, 44, 108, 64, 59, 54, 63, 57, 50, 50, 51, 91, 44, 111, 96, 51, 83, 49, 50, 41, 65, 51, 58, 56, 52, 62, 58, 80, 60, 41, 55, 51, 78, 77, 39, 41, 37, 97, 57, 58, 64, 70, 73, 91, 71, 66, 41, 83, 55, 54, 53, 37, 58, 67, 64, 62, 46, 74, 118, 74, 97, 68, 42, 81, 86, 70, 89, 67, 63, 92, 113, 67, 26, 72, 57, 75, 55, 58, 59, 70, 64, 52, 75, 61, 57, 57, 73, 53, 64, 64, 50, 53, 81, 55, 66, 68, 40, 51, 49, 82, 59, 69, 65, 91, 69, 53, 42, 83, 57, 58, 71, 68, 46, 64, 49, 81, 56, 88, 76, 63, 81, 76, 68, 70, 69, 59, 40, 60, 74, 78, 52, 45, 75, 85, 51, 53, 98, 41, 77, 68, 77, 69, 106, 62, 66, 59, 68, 51, 55, 41, 48, 48, 77, 51, 122, 69, 61, 80, 85, 62, 59, 71, 93, 65, 71, 64, 62, 60, 63, 53, 55, 71, 70, 54, 55, 74, 61, 76, 49, 116, 61, 59, 93, 136, 66, 62, 71, 60, 77, 67, 72, 71, 58, 76, 64, 60, 53, 54, 89, 60, 48, 65, 51, 68, 68, 68, 69, 99, 69, 59, 65, 61, 63, 58, 66, 91, 73, 65, 63, 68, 64, 76, 79, 65, 62, 73, 47, 85, 44, 43, 64, 66, 60, 47, 52, 47, 87, 65, 63, 57, 55, 82, 49, 73, 45, 57, 107, 67, 55, 77, 44, 59, 58, 67, 65, 56, 54, 66, 60, 105, 70, 48, 60, 71, 81, 72, 127, 80, 78, 104, 71, 53, 60, 67, 49, 51, 90, 52, 101, 67, 57, 62, 92, 62, 67, 65, 66, 47, 58, 57, 74, 49, 57, 41, 52, 89, 80, 53, 47, 60, 60, 55, 64, 60, 69, 72, 63, 72, 50, 65, 68, 63, 70, 72, 66, 54, 89, 82, 53, 76, 70, 77, 60, 58, 84, 56, 70, 71, 67, 56, 80, 50, 63, 78, 66, 74, 67, 40, 44, 55, 67, 97, 52, 62, 48, 65, 44, 59, 79, 69, 67, 83, 71, 58, 57, 71, 71, 51, 96, 62, 66, 69, 69, 53, 63, 50, 56, 36, 33, 85, 57, 71, 53, 60, 100, 84, 60, 68, 70, 57, 70, 44, 97, 71, 77, 49, 71, 65, 73, 63, 57, 77, 53, 56, 89, 52, 79, 57, 84, 57, 69, 70, 65, 63, 40, 96, 84, 53, 60, 65, 69, 53, 66, 67, 68, 53, 67, 67, 65, 76, 92, 55, 57, 85, 67, 55, 64, 66, 77, 82, 69, 78, 91, 62, 69, 57, 63, 66, 63, 74, 48, 54, 93, 61, 38, 69, 71, 64, 63, 58, 57, 70, 63, 89, 69, 57, 96, 76, 51, 66, 65, 70, 64, 53, 90, 66, 70, 87, 40, 119, 65, 66, 34, 95, 72, 52, 69, 64, 51, 64, 78, 93, 83, 74, 41, 47, 66, 73, 97, 77, 64, 67, 37, 37, 59, 78, 78, 65, 59, 78, 65, 77, 81, 56, 53, 61, 55, 88, 77, 53, 66, 85, 63, 57, 64, 44, 68, 38, 63, 61, 55, 70, 50, 55, 83, 85, 76, 66, 40, 59, 123, 72, 63, 65, 72, 57, 53, 59, 69, 65, 58, 93, 52, 70, 69, 53, 42, 58, 83, 45, 72, 50, 83, 40, 57, 39, 94, 48, 71, 54, 51, 63, 92, 60, 68, 53, 70, 44, 88, 38, 61, 68, 62, 61, 56, 58, 62, 80, 76, 76, 80, 50, 52, 51, 78, 55, 87, 95, 78, 83, 58, 75, 77, 59, 50, 58, 64, 66, 75, 56, 96, 92, 83, 62, 68, 68, 59, 68, 83, 56, 70, 75, 62, 58, 58, 70, 76, 54, 69, 63, 61, 38, 72, 83, 54, 59, 82, 65, 50, 58, 67, 57, 56, 64, 70, 55, 63, 80, 78, 61, 64, 48, 46, 73, 91, 57, 87, 71, 72, 62, 54, 50, 89, 113, 63, 67, 67, 56, 58, 50, 42, 74, 78, 103, 89, 58, 52, 65, 51, 73, 50, 73, 81, 77, 57, 71, 64, 74, 62, 67, 76, 62, 73, 81, 64, 60, 50, 65, 68, 95, 66, 70, 64, 62, 65, 83, 64, 60, 79, 53, 48, 40, 76, 66, 79, 60, 72, 61, 51, 77, 58, 66, 72, 63, 61, 62, 57, 60, 61, 62, 54, 90, 85, 44, 62, 58, 57, 89, 70, 69, 77, 64, 52, 57, 74, 71, 66, 51, 62, 67, 57, 57, 52, 79, 56, 74, 89, 82, 52, 61, 96, 76, 70, 77, 61, 57, 53, 54, 70, 77, 34, 78, 80, 70, 60, 59, 56, 83, 62, 47, 59, 58, 133, 91, 75, 47, 48, 79, 99, 60, 81, 63, 79, 67, 85, 67, 65, 79, 99, 61, 51, 65, 105, 72, 74, 60, 59, 47, 73, 66, 80, 62, 55, 78, 76, 57, 59, 60, 73, 66, 77, 75, 69, 60, 60, 58, 78, 45, 70, 79, 61, 61, 65, 62, 71, 63, 28, 71, 81, 47, 78, 87, 57, 62, 63, 51, 72, 58, 46, 64, 66, 125, 62, 52, 124, 83, 40, 69, 76, 59, 64, 67, 79, 54, 89, 64, 60, 81, 52, 78, 66, 48, 63, 69, 79, 64, 57, 46, 60, 50, 71, 81, 65, 59, 55, 98, 62, 51, 63, 73, 61, 71, 55, 50, 62, 85, 52, 53, 49, 65, 66, 82, 56, 77, 36, 60, 70, 64, 57, 55, 72, 73, 64, 84, 56, 69, 75, 71, 63, 50, 54, 80, 45, 59, 45, 65, 65, 54, 52, 71, 40, 61, 60, 96, 60, 51, 50, 71, 62, 74, 58, 74, 74, 73, 58, 59, 109, 65, 56, 40, 62, 72, 64, 51, 51, 62, 68, 64, 63, 72, 58, 34, 54, 57, 66, 69, 55, 70, 57, 55, 70, 83, 53, 59, 87, 47, 66, 66, 58, 47, 48, 45, 93, 59, 69, 65, 44, 64, 70, 101, 67, 65, 70, 91, 91, 79, 65, 63, 98, 55, 74, 55, 34, 98, 61, 50, 52, 56, 54, 60, 74, 69, 95, 52, 57, 66, 61, 82, 57, 62, 69, 75, 48, 49, 80, 49, 68, 53, 54, 81, 61, 66, 67, 64, 64, 62, 59, 88, 94, 54, 85, 50, 52, 41, 66, 64, 65, 59, 64, 62, 105, 61, 54, 74, 49, 75, 59, 86, 54, 50, 45, 78, 87, 83, 62, 54, 71, 71, 66, 101, 68, 105, 79, 52, 63, 73, 72, 76, 47, 78, 55, 65, 76, 85, 64, 63, 54, 84, 69, 64, 55, 46, 59, 84, 51, 62, 68, 69, 80, 64, 72, 71, 57, 65, 83, 67, 71, 70, 130, 64, 68, 41, 71, 76, 70, 81, 61, 49, 88, 69, 63, 56, 61, 52, 63, 66, 92, 60, 71, 66, 61, 59, 80, 51, 72, 85, 50, 81, 54, 65, 81, 87, 76, 75, 56, 72, 65, 51, 59, 72, 71, 63, 63, 99, 61, 86, 59, 96, 78, 43, 44, 54, 61, 78, 62, 44, 57, 49, 94, 73, 66, 48, 79, 56, 80, 66, 61, 42, 30, 60, 60, 63, 72, 70, 68, 84, 65, 46, 64, 49, 64, 77, 80, 74, 53, 87, 74, 73, 91, 48, 65, 66, 90, 62, 53, 64, 79, 71, 62, 69, 74, 69, 77, 71, 58, 41, 67, 60, 56, 133, 56, 46, 50, 70, 73, 56, 56, 131, 77, 52, 67, 72, 66, 63, 66, 58, 90, 76, 52, 67, 81, 77, 60, 82, 86, 57, 70, 57, 113, 90, 62, 72, 43, 51, 67, 88, 70, 82, 63, 63, 54, 53, 54, 46, 134, 82, 45, 74, 79, 49, 74, 57, 67, 81, 68, 73, 74, 63, 52, 79, 68, 64, 51, 55, 67, 84, 62, 49, 71, 68, 96, 59, 78, 52, 95, 55, 52, 82, 56, 48, 77, 42, 86, 60, 83, 60, 55, 47, 80, 65, 142, 73, 44, 74, 56, 60, 61, 58, 80, 79, 61, 47, 77, 93, 64, 61, 52, 50, 58, 105, 75, 69, 102, 54, 61, 65, 54, 58, 60, 57, 52, 59, 52, 61, 88, 90, 52, 95, 59, 70, 70, 49, 47, 72, 59, 76, 84, 49, 53, 70, 87, 48, 63, 67, 63, 68, 72, 90, 63, 71, 68, 47, 54, 72, 61, 86, 61, 70, 65, 75, 87, 59, 97, 63, 76, 88, 55, 58, 113, 54, 71, 115, 61, 70, 80, 63, 56, 55, 63, 81, 56, 69, 64, 65, 58, 73, 89, 59, 58, 51, 72, 49, 54, 66, 60, 56, 81, 71, 65, 60, 51, 48, 50, 45, 50, 87, 58, 72, 52, 69, 82, 67, 59, 78, 72, 62, 50, 80, 62, 45, 51, 57, 74, 44, 74, 63, 49, 69, 80, 73, 69, 65, 65, 76, 84, 61, 65, 61, 87, 45, 54, 67, 85, 70, 65, 79, 81, 62, 64, 61, 74, 56, 72, 56, 66, 67, 53, 58, 78, 58, 90, 58, 55, 44, 73, 42, 84, 57, 58, 58, 85, 74, 46, 66, 72, 63, 60, 78, 53, 71, 58, 66, 61, 68, 57, 53, 51, 56, 60, 57, 65, 54, 76, 83, 37, 64, 52, 54, 47, 74, 72, 54, 54, 67, 71, 75, 84, 59, 60, 98, 70, 63, 60, 72, 64, 77, 68, 66, 53, 60, 73, 63, 45, 63, 61, 74, 98, 75, 79, 61, 62, 70, 59, 78, 68, 53, 63, 60, 66, 68, 58, 54, 87, 59, 57, 56, 51, 68, 63, 85, 51, 51, 52, 74, 58, 76, 66, 89, 65, 42, 115, 66, 66, 54, 91, 50, 40, 54, 75, 72, 62, 72, 58, 58, 75, 86, 74, 78, 95, 95, 54, 56, 54, 73, 91, 70, 84, 59, 64, 63, 50, 73, 62, 72, 63, 68, 63, 73, 67, 75, 81, 73, 40, 70, 72, 74, 72, 65, 98, 54, 57, 50, 74, 74, 67, 57, 54, 94, 66, 75, 71, 71, 62, 49, 66, 66, 62, 87, 44, 72, 82, 46, 81, 62, 68, 57, 71, 63, 49, 52, 72, 56, 49, 49, 61, 68, 56, 53, 67, 45, 60, 37, 65, 52, 62, 49, 62, 100, 81, 72, 71, 87, 62, 68, 81, 77, 77, 61, 77, 58, 80, 81, 66, 71, 66, 66, 71, 52, 70, 64, 63, 45, 94, 88, 61, 58, 42, 60, 48, 58, 110, 67, 71, 67, 61, 56, 96, 92, 57, 92, 64, 49, 78, 71, 80, 73, 79, 60, 50, 78, 58, 59, 56, 75, 94, 71, 65, 97, 68, 67, 47, 56, 60, 106, 116, 56, 66, 60, 63, 58, 64, 71, 56, 44, 61, 55, 83, 69, 60, 55, 81, 95, 66, 81, 55, 69, 74, 57, 97, 59, 63, 72, 70, 62, 50, 48, 57, 63, 96, 53, 63, 55, 51, 84, 36, 59, 55, 51, 59, 70, 65, 57, 65, 33, 66, 56, 61, 121, 132, 63, 52, 50, 70, 63, 58, 52, 46, 48, 73, 46, 105, 87, 96, 64, 80, 58, 64, 47, 63, 63, 88, 74, 53, 62, 69, 60, 79, 60, 53, 68, 59, 75, 49, 47, 59, 77, 42, 80, 85, 69, 52, 55, 107, 45, 75, 68, 55, 79, 61, 54, 58, 71, 59, 127, 69, 58, 81, 73, 69, 74, 66, 73, 60, 55, 50, 64, 53, 44, 71, 50, 59, 80, 88, 91, 60, 109, 54, 61, 56, 60, 79, 73, 39, 66, 74, 65, 56, 59, 54, 71, 60, 51, 61, 93, 51, 61, 52, 66, 84, 63, 65, 85, 54, 55, 58, 112, 63, 59, 59, 61, 61, 65, 53, 56, 69, 48, 49, 47, 67, 63, 45, 56, 74, 54, 80, 54, 73, 66, 47, 67, 61, 81, 60, 65, 78, 54, 59, 64, 57, 74, 84, 71, 42, 69, 52, 45, 45, 71, 60, 65, 68, 82, 71, 76, 60, 97, 67, 60, 82, 58, 64, 73, 58, 84, 59, 73, 61, 70, 66, 50, 80, 80, 92, 67, 127, 50, 59, 74, 67, 64, 74, 69, 70, 67, 73, 65, 54, 82, 64, 61, 67, 91, 54, 55, 67, 42, 68, 55, 58, 48, 53, 60, 68, 93, 58, 112, 53, 65, 85, 49, 107, 61, 77, 56, 24, 96, 49, 68, 80, 52, 119, 50, 58, 79, 56, 70, 89, 97, 68, 59, 46, 47, 106, 65, 88, 88, 36, 62, 71, 64, 58, 64, 64, 61, 63, 56, 82, 60, 81, 67, 80, 84, 82, 60, 55, 75, 69, 68, 50, 49, 56, 60, 90, 59, 129, 62, 62, 50, 117, 52, 51, 76, 67, 54, 68, 73, 154, 88, 54, 54, 72, 76, 70, 58, 65, 66, 60, 70, 51, 79, 76, 73, 78, 76, 74, 123, 54, 53, 64, 66, 56, 65, 54, 52, 56, 52, 56, 62, 72, 57, 59, 48, 89, 68, 124, 59, 65, 106, 89, 68, 58, 71, 72, 85, 77, 58, 66, 63, 64, 55, 52, 59, 72, 54, 43, 56, 52, 53, 52, 80, 77, 44, 50, 66, 63, 66, 69, 108, 81, 59, 57, 69, 77, 64, 64, 69, 64, 53, 60, 85, 61, 58, 49, 49, 80, 82, 97, 75, 55, 63, 51, 80, 81, 102, 79, 49, 52, 84, 66, 52, 79, 81, 84, 57, 60, 69, 53, 63, 65, 96, 66, 60, 59, 56, 51, 46, 52, 61, 64, 61, 55, 60, 96, 72, 68, 58, 61, 77, 59, 60, 80, 49, 67, 62, 63, 46, 78, 57, 65, 65, 53, 75, 78, 45, 52, 39, 60, 40, 58, 72, 67, 67, 65, 76, 83, 84, 41, 69, 76, 76, 95, 62, 64, 47, 68, 63, 61, 57, 52, 67, 59, 63, 66, 58, 112, 51, 47, 64, 52, 77, 61, 59, 55, 101, 90, 62, 70, 63, 64, 49, 49, 83, 61, 77, 54, 65, 61, 75, 71, 55, 81, 97, 84, 65, 60, 68, 74, 76, 74, 77, 68, 63, 54, 86, 63, 58, 65, 58, 60, 45, 58, 83, 58, 68, 74, 67, 73, 53, 73, 54, 71, 66, 75, 50, 78, 74, 89, 74, 76, 56, 59, 52, 68, 79, 61, 54, 81, 53, 95, 61, 56, 57, 65, 58, 84, 48, 80, 65, 41, 65, 66, 46, 51, 61, 61, 58, 63, 84, 64, 101, 57, 71, 37, 78, 77, 88, 73, 52, 59, 46, 65, 43, 65, 57, 47, 63, 63, 69, 51, 78, 66, 53, 54, 71, 65, 75, 80, 58, 51, 78, 63, 63, 82, 106, 55, 74, 52, 71, 67, 58, 67, 58, 72, 67, 48, 66, 59, 67, 47, 50, 69, 107, 52, 53, 79, 65, 85, 65, 68, 120, 62, 59, 74, 61, 75, 67, 64, 89, 56, 62, 54, 66, 56, 57, 48, 67, 77, 82, 73, 62, 49, 58, 93, 71, 81, 65, 56, 69, 58, 72, 55, 81, 76, 70, 60, 58, 56, 104, 56, 89, 38, 109, 57, 76, 65, 52, 63, 97, 61, 50, 44, 77, 65, 70, 68, 90, 82, 47, 99, 54, 61, 56, 74, 62, 98, 72, 61, 86, 126, 69, 62, 52, 59, 49, 64, 84, 63, 72, 49, 77, 98, 71, 85, 51, 71, 48, 86, 62, 53, 44, 67, 66, 62, 89, 62, 85, 48, 64, 67, 39, 58, 49, 54, 60, 76, 63, 81, 71, 60, 67, 71, 47, 56, 65, 74, 61, 105, 68, 62, 98, 64, 56, 78, 71, 69, 92, 80, 77, 54, 76, 70, 47, 66, 81, 80, 66, 55, 68, 51, 84, 54, 72, 72, 53, 70, 49, 78, 67, 62, 65, 71, 60, 47, 78, 52, 50, 54, 57, 71, 69, 85, 53, 46, 72, 60, 63, 75, 70, 55, 69, 76, 65, 56, 45, 65, 46, 44, 70, 54, 70, 90, 52, 55, 117, 56, 60, 52, 51, 48, 51, 66, 60, 57, 60, 76, 48, 61, 58, 60, 55, 62, 65, 59, 61, 53, 88, 79, 61, 63, 51, 56, 62, 71, 67, 68, 61, 63, 59, 48, 63, 54, 60, 52, 61, 48, 59, 35, 65, 46, 61, 50, 56, 82, 89, 79, 68, 56, 66, 81, 62, 62, 62, 63, 76, 63, 53, 55, 81, 55, 65, 59, 67, 69, 60, 93, 61, 74, 86, 83, 70, 59, 70, 58, 52, 67, 65, 64, 85, 56, 64, 56, 45, 50, 76, 80, 51, 72, 42, 79, 64, 54, 54, 65, 51, 64, 81, 119, 63, 77, 60, 53, 50, 61, 76, 78, 80, 55, 58, 67, 72, 62, 67, 66, 56, 46, 54, 72, 56, 104, 48, 47, 51, 64, 58, 62, 54, 44, 84, 50, 68, 65, 61, 64, 79, 65, 71, 66, 76, 55, 69, 60, 78, 53, 55, 63, 86, 61, 58, 67, 50, 52, 60, 57, 51, 72, 58, 108, 99, 56, 63, 79, 49, 80, 95, 51, 62, 69, 113, 67, 55, 62, 67, 49, 53, 57, 67, 79, 79, 70, 97, 70, 57, 62, 67, 68, 97, 66, 81, 77, 52, 55, 55, 52, 67, 91, 66, 62, 60, 66, 58, 57, 98, 69, 56, 72, 81, 74, 80, 67, 78, 37, 67, 55, 71, 57, 63, 55, 58, 65, 53, 67, 50, 62, 55, 77, 71, 79, 56, 49, 67, 53, 71, 58, 58, 60, 59, 63, 72, 80, 59, 59, 49, 95, 49, 86, 85, 57, 62, 65, 65, 60, 69, 61, 87, 76, 75, 76, 63, 56, 61, 58, 64, 50, 53, 69, 79, 58, 68, 63, 61, 87, 61, 64, 64, 73, 63, 59, 52, 70, 83, 60, 71, 58, 51, 110, 71, 66, 87, 74, 55, 56, 71, 57, 63, 65, 59, 45, 58, 53, 64, 61, 53, 64, 70, 78, 85, 51, 76, 58, 73, 60, 81, 117, 59, 50, 49, 67, 61, 60, 63, 71, 88, 63, 68, 74, 116, 55, 62, 62, 76, 61, 68, 59, 52, 60, 76, 58, 77, 49, 74, 71, 78, 70, 69, 60, 50, 96, 62, 48, 69, 58, 78, 61, 63, 60, 58, 76, 67, 75, 93, 62, 92, 84, 82, 89, 49, 62, 53, 62, 69, 81, 43, 64, 71, 58, 77, 61, 65, 59, 52, 55, 65, 68, 65, 66, 105, 58, 92, 44, 117, 74, 48, 57, 75, 64, 44, 74, 55, 73, 65, 74, 77, 53, 64, 73, 58, 47, 63, 81, 66, 57, 59, 54, 61, 59, 72, 52, 72, 55, 95, 74, 50, 59, 70, 53, 59, 54, 76, 53, 66, 65, 68, 84, 56, 52, 65, 80, 56, 48, 64, 46, 61, 65, 61, 66, 62, 67, 57, 61, 51, 81, 61, 76, 47, 49, 59, 67, 71, 66, 62, 54, 66, 52, 65, 65, 60, 79, 78, 67, 72, 78, 59, 59, 62, 64, 89, 60, 62, 65, 64, 55, 66, 61, 55, 45, 43, 62, 76, 85, 72, 55, 72, 86, 49, 76, 69, 74, 76, 75, 54, 99, 54, 80, 82, 57, 64, 82, 76, 68, 71, 72, 77, 58, 80, 65, 72, 62, 72, 71, 53, 85, 54, 72, 63, 69, 63, 66, 62, 66, 59, 64, 91, 59, 69, 66, 57, 83, 67, 66, 65, 48, 70, 65, 57, 59, 56, 58, 69, 55, 61, 63, 64, 60, 59, 74, 54, 47, 72, 112, 45, 65, 54, 86, 61, 83, 114, 98, 68, 58, 44, 59, 67, 54, 64, 54, 69, 74, 65, 72, 70, 59, 139, 55, 69, 103, 73, 85, 64, 60, 63, 83, 93, 50, 91, 86, 62, 64, 64, 101, 59, 71, 46, 64, 64, 57, 36, 80, 71, 46, 70, 45, 59, 69, 80, 48, 81, 52, 84, 58, 68, 59, 57, 57, 66, 50, 72, 51, 76, 53, 44, 47, 91, 60, 61, 63, 72, 58, 56, 71, 51, 50, 66, 58, 59, 52, 62, 78, 57, 46, 91, 81, 86, 56, 52, 60, 63, 58, 75, 76, 76, 89, 62, 63, 50, 53, 62, 70, 80, 72, 65, 82, 72, 115, 65, 62, 65, 47, 65, 52, 73, 66, 65, 74, 50, 67, 72, 60, 84, 53, 63, 68, 73, 86, 50, 81, 77, 52, 48, 49, 61, 61, 51, 62, 55, 90, 49, 62, 68, 68, 70, 51, 59, 42, 67, 65, 48, 57, 52, 72, 95, 63, 66, 64, 61, 88, 76, 60, 61, 70, 61, 59, 61, 67, 71, 56, 57, 64, 55, 45, 113, 71, 60, 68, 85, 61, 55, 90, 67, 73, 43, 60, 79, 87, 64, 68, 56, 61, 63, 75, 60, 62, 49, 62, 44, 67, 51, 100, 87, 78, 65, 88, 68, 58, 63, 58, 63, 59, 81, 74, 59, 66, 58, 58, 62, 79, 73, 70, 57, 83, 89, 68, 58, 59, 52, 71, 80, 48, 64, 56, 69, 83, 63, 63, 48, 46, 61, 43, 61, 65, 57, 53, 75, 59, 57, 70, 56, 83, 46, 50, 69, 43, 50, 68, 54, 52, 61, 93, 64, 127, 51, 78, 53, 59, 68, 68, 82, 69, 77, 65, 49, 74, 64, 112, 66, 52, 83, 67, 63, 54, 58, 66, 83, 71, 92, 56, 69, 58, 62, 65, 61, 65, 68, 63, 56, 74, 72, 92, 73, 120, 57, 67, 72, 56, 52, 55, 51, 86, 94, 72, 54, 60, 54, 58, 53, 59, 64, 66, 63, 64, 55, 65, 72, 62, 60, 68, 82, 75, 58, 59, 51, 77, 69, 58, 70, 64, 61, 68, 66, 70, 64, 71, 56, 62, 63, 58, 53, 60, 60, 105, 55, 78, 61, 46, 59, 62, 69, 62, 64, 57, 61, 66, 53, 58, 65, 76, 51, 60, 78, 71, 69, 78, 76, 58, 61, 56, 78, 43, 91, 69, 66, 56, 77, 88, 71, 53, 60, 65, 55, 68, 63, 58, 61, 45, 108, 57, 64, 75, 59, 57, 54, 65, 93, 95, 53, 76, 63, 53, 65, 73, 61, 61, 75, 58, 112, 53, 53, 55, 62, 62, 68, 63, 54, 67, 60, 44, 60, 64, 91, 58, 62, 72, 68, 50, 76, 64, 94, 131, 94, 63, 66, 66, 74, 50, 63, 60, 90, 73, 45, 62, 53, 64, 76, 48, 75, 74, 76, 65, 68, 82, 57, 52, 71, 88, 82, 90, 73, 95, 70, 56, 46, 71, 49, 66, 77, 79, 45, 72, 67, 73, 60, 44, 74, 56, 71, 65, 60, 67, 84, 57, 54, 56, 52, 57, 61, 88, 54, 58, 54, 78, 60, 103, 60, 64, 85, 59, 55, 59, 80, 66, 58, 50, 66, 71, 60, 68, 62, 57, 75, 73, 70, 52, 86, 57, 119, 74, 91, 69, 85, 147, 58, 77, 56, 71, 54, 56, 67, 61, 74, 87, 89, 50, 64, 50, 58, 52, 51, 68, 82, 42, 63, 53, 62, 64, 49, 67, 48, 67, 51, 68, 101, 101, 60, 59, 55, 72, 63, 77, 80, 78, 56, 67, 68, 57, 88, 48, 122, 100, 55, 69, 57, 67, 70, 74, 68, 57, 57, 105, 96, 51, 50, 67, 56, 91, 80, 116, 59, 55, 65, 67, 57, 77, 111, 68, 45, 58, 66, 65, 48, 65, 109, 42, 76, 67, 73, 67, 67, 55, 53, 52, 58, 43, 39, 62, 63, 52, 40, 50, 54, 66, 77, 60, 64, 51, 107, 74, 71, 54, 91, 70, 65, 68, 53, 58, 70, 94, 70, 63, 70, 87, 69, 114, 73, 54, 67, 92, 53, 63, 65, 109, 68, 68, 48, 67, 58, 53, 100, 45, 56, 83, 53, 57, 84, 55, 50, 47, 72, 51, 57, 56, 83, 60, 41, 36, 70, 83, 46, 53, 63, 56, 58, 80, 69, 54, 45, 62, 70, 69, 65, 79, 53, 82, 59, 89, 72, 60, 70, 71, 79, 64, 69, 47, 80, 49, 58, 72, 84, 50, 68, 68, 67, 74, 60, 52, 70, 45, 76, 53, 50, 78, 95, 63, 77, 56, 88, 76, 70, 79, 71, 59, 60, 53, 82, 63, 64, 53, 70, 61, 76, 72, 65, 81, 82, 60, 45, 75, 85, 66, 47, 63, 51, 63, 66, 56, 44, 52, 62, 57, 52, 58, 52, 56, 88, 40, 62, 62, 57, 69, 73, 60, 55, 63, 82, 26, 64, 56, 48, 85, 74, 81, 90, 67, 86, 67, 82, 76, 75, 55, 75, 59, 51, 73, 62, 60, 66, 44, 42, 55, 71, 66, 66, 48, 68, 68, 59, 78, 64, 59, 59, 61, 55, 64, 79, 83, 69, 52, 97, 66, 83, 58, 104, 70, 66, 78, 63, 44, 78, 74, 67, 65, 50, 68, 60, 90, 57, 63, 68, 69, 161, 64, 75, 73, 72, 77, 80, 62, 60, 56, 60, 71, 74, 57, 64, 61, 71, 92, 44, 82, 65, 56, 55, 66, 53, 89, 47, 65, 61, 60, 68, 64, 79, 64, 70, 90, 51, 67, 48, 67, 82, 62, 62, 54, 58, 56, 68, 79, 49, 67, 63, 83, 57, 51, 70, 80, 49, 57, 46, 61, 60, 75, 57, 84, 68, 50, 69, 65, 79, 71, 63, 81, 61, 66, 57, 78, 69, 78, 51, 84, 61, 89, 47, 55, 83, 67, 80, 82, 78, 66, 66, 44, 72, 47, 64, 38, 58, 69, 61, 62, 54, 40, 43, 72, 78, 47, 68, 53, 89, 50, 74, 55, 56, 70, 54, 67, 49, 85, 41, 73, 57, 44, 64, 91, 76, 53, 68, 96, 77, 57, 65, 66, 79, 82, 70, 89, 48, 59, 49, 73, 71, 61, 79, 74, 46, 50, 83, 53, 57, 65, 49, 52, 48, 73, 48, 53, 80, 63, 77, 58, 78, 99, 90, 77, 63, 62, 49, 70, 66, 93, 48, 74, 68, 41, 61, 85, 49, 45, 78, 48, 69, 63, 74, 72, 72, 73, 59, 41, 73, 48, 64, 75, 72, 43, 88, 60, 46, 71, 77, 105, 63, 47, 71, 68, 65, 73, 56, 66, 41, 99, 47, 39, 46, 76, 54, 56, 42, 87, 52, 43, 58, 55, 97, 71, 56, 55, 50, 67, 53, 56, 66, 60, 70, 84, 60, 46, 61, 49, 65, 59, 56, 72, 97, 55, 81, 72, 63, 61, 71, 71, 47, 63, 43, 62, 60, 50, 83, 61, 84, 57, 84, 46, 57, 67, 61, 63, 60, 67, 64, 68, 47, 83, 87, 59, 67, 61, 42, 69, 47, 70, 88, 48, 65, 59, 136, 90, 76, 59, 57, 75, 53, 67, 79, 62, 53, 53, 48, 77, 49, 73, 47, 81, 69, 70, 79, 62, 52, 56, 67, 60, 67, 50, 48, 64, 38, 57, 68, 64, 53, 52, 80, 52, 97, 58, 47, 64, 56, 94, 76, 80, 72, 94, 48, 43, 65, 68, 69, 63, 53, 70, 66, 114, 53, 72, 49, 87, 85, 86, 49, 104, 67, 41, 84, 62, 71, 82, 68, 99, 58, 91, 65, 62, 70, 56, 66, 66, 67, 36, 78, 66, 50, 69, 66, 61, 146, 59, 53, 60, 73, 52, 77, 81, 68, 78, 76, 73, 71, 58, 70, 63, 70, 85, 58, 62, 79, 65, 68, 70, 56, 77, 84, 65, 66, 61, 68, 60, 77, 72, 63, 56, 61, 65, 70, 61, 41, 59, 74, 57, 69, 77, 65, 53, 57, 62, 59, 54, 87, 82, 67, 45, 68, 64, 60, 82, 89, 64, 47, 50, 64, 60, 61, 47, 50, 69, 65, 57, 64, 56, 73, 57, 70, 86, 56, 75, 85, 96, 84, 68, 49, 47, 82, 97, 126, 60, 74, 80, 59, 85, 47, 75, 56, 57, 66, 70, 57, 43, 57, 72, 86, 62, 58, 75, 50, 56, 49, 70, 62, 73, 66, 77, 64, 116, 66, 75, 58, 64, 57, 74, 80, 71, 72, 89, 58, 77, 67, 60, 55, 91, 90, 64, 69, 67, 68, 59, 66, 81, 64, 63, 75, 61, 86, 80, 69, 85, 61, 84, 52, 60, 57, 77, 68, 82, 77, 67, 85, 62, 46, 69, 65, 59, 90, 68, 59, 75, 55, 74, 58, 50, 32, 104, 69, 49, 73, 99, 67, 61, 65, 77, 71, 61, 89, 69, 76, 70, 55, 71, 55, 63, 68, 81, 52, 71, 100, 83, 56, 96, 57, 51, 45, 75, 60, 52, 77, 58, 69, 52, 74, 62, 74, 87, 60, 80, 62, 79, 61, 55, 78, 46, 52, 61, 44, 54, 94, 61, 47, 95, 62, 60, 63, 64, 69, 67, 78, 57, 59, 66, 76, 61, 57, 70, 66, 65, 73, 87, 35, 47, 79, 55, 58, 46, 79, 56, 48, 67, 38, 64, 78, 100, 67, 65, 79, 71, 59, 55, 35, 74, 52, 53, 61, 65, 67, 45, 60, 129, 61, 87, 80, 42, 97, 62, 67, 101, 74, 50, 60, 68, 61, 50, 81, 42, 79, 59, 67, 82, 44, 65, 54, 65, 78, 90, 58, 71, 49, 49, 82, 63, 59, 62, 53, 61, 48, 61, 69, 104, 59, 68, 69, 58, 118, 51, 58, 79, 39, 80, 69, 58, 60, 63, 58, 67, 70, 65, 71, 47, 69, 71, 67, 70, 52, 73, 50, 60, 75, 71, 48, 53, 70, 81, 107, 80, 67, 67, 68, 54, 79, 41, 64, 73, 60, 88, 74, 49, 71, 69, 105, 47, 71, 99, 57, 109, 41, 65, 81, 66, 78, 72, 81, 56, 57, 61, 62, 60, 63, 60, 55, 75, 57, 54, 55, 83, 67, 67, 69, 71, 61, 44, 61, 74, 57, 77, 67, 43, 80, 82, 53, 82, 53, 74, 69, 72, 74, 63, 89, 54, 57, 82, 101, 60, 63, 55, 61, 65, 75, 61, 78, 52, 60, 63, 74, 78, 60, 80, 72, 75, 57, 60, 50, 62, 90, 50, 73, 54, 54, 88, 57, 75, 66, 60, 98, 42, 63, 64, 49, 70, 70, 67, 59, 82, 56, 69, 60, 76, 68, 73, 101, 58, 64, 46, 87, 48, 79, 38, 52, 79, 64, 85, 115, 53, 57, 50, 77, 61, 60, 50, 61, 59, 64, 61, 67, 72, 55, 108, 75, 73, 119, 67, 74, 80, 71, 65, 66, 48, 78, 58, 85, 70, 61, 67, 80, 69, 53, 60, 55, 85, 55, 66, 63, 55, 65, 76, 67, 52, 64, 68, 69, 57, 59, 59, 55, 50, 67, 58, 69, 77, 53, 63, 83, 59, 72, 77, 63, 62, 48, 64, 70, 52, 84, 49, 57, 59, 57, 51, 49, 59, 116, 61, 30, 64, 70, 75, 76, 76, 68, 53, 50, 49, 58, 57, 66, 55, 92, 119, 51, 60, 49, 131, 89, 46, 76, 40, 81, 49, 48, 78, 69, 64, 61, 58, 35, 48, 69, 54, 108, 67, 67, 70, 77, 50, 105, 76, 45, 69, 61, 60, 104, 53, 48, 75, 75, 56, 66, 88, 48, 63, 73, 60, 53, 46, 57, 98, 59, 76, 69, 71, 56, 72, 65, 71, 56, 51, 58, 86, 48, 95, 76, 74, 74, 57, 63, 77, 88, 68, 64, 60, 57, 58, 62, 74, 72, 50, 60, 72, 65, 87, 79, 59, 47, 100, 89, 54, 69, 63, 79, 65, 71, 86, 39, 42, 73, 67, 59, 51, 65, 88, 54, 49, 62, 60, 44, 85, 54, 61, 72, 52, 56, 78, 70, 67, 85, 39, 57, 69, 57, 44, 89, 64, 48, 41, 67, 48, 75, 67, 60, 56, 73, 69, 50, 51, 75, 78, 97, 56, 59, 42, 60, 44, 71, 53, 63, 68, 97, 86, 67, 48, 64, 48, 78, 121, 64, 57, 83, 87, 65, 58, 78, 56, 69, 75, 63, 79, 61, 58, 72, 56, 79, 70, 67, 57, 57, 62, 64, 48, 64, 73, 69, 53, 80, 59, 73, 60, 59, 60, 38, 64, 69, 74, 59, 61, 60, 74, 63, 62, 55, 72, 55, 86, 65, 53, 81, 67, 59, 65, 71, 60, 61, 50, 59, 70, 86, 67, 67, 77, 78, 52, 69, 84, 57, 71, 88, 123, 32, 45, 68, 76, 70, 62, 70, 56, 73, 67, 90, 101, 46, 50, 55, 46, 62, 74, 64, 59, 62, 41, 72, 62, 64, 72, 78, 68, 71, 67, 41, 69, 51, 72, 59, 61, 87, 59, 55, 66, 88, 54, 59, 48, 67, 62, 64, 68, 73, 41, 104, 64, 60, 139, 86, 67, 76, 62, 73, 83, 53, 66, 120, 60, 53, 42, 64, 57, 49, 72, 49, 63, 57, 60, 52, 53, 60, 70, 92, 65, 50, 60, 55, 64, 68, 75, 62, 77, 46, 74, 46, 63, 77, 44, 56, 47, 102, 51, 61, 50, 66, 74, 66, 67, 62, 72, 59, 68, 104, 104, 75, 64, 71, 46, 56, 54, 95, 50, 60, 47, 60, 70, 43, 80, 62, 59, 87, 46, 46, 52, 56, 73, 79, 62, 67, 55, 85, 52, 81, 62, 56, 57, 61, 63, 92, 77, 60, 65, 55, 52, 55, 67, 69, 46, 61, 56, 48, 58, 46, 56, 53, 74, 93, 51, 86, 80, 100, 69, 82, 88, 69, 71, 54, 50, 79, 66, 73, 56, 56, 73, 68, 77, 54, 42, 64, 77, 53, 71, 52, 66, 56, 64, 60, 71, 73, 54, 59, 89, 67, 88, 63, 48, 48, 85, 60, 61, 74, 57, 74, 58, 73, 34, 53, 79, 66, 60, 47, 70, 50, 80, 63, 50, 58, 72, 60, 83, 46, 76, 77, 71, 70, 97, 84, 64, 70, 43, 53, 85, 91, 93, 47, 64, 65, 74, 79, 41, 58, 53, 52, 62, 77, 57, 67, 50, 63, 62, 91, 58, 66, 59, 60, 86, 56, 90, 76, 71, 58, 85, 71, 58, 68, 62, 57, 71, 64, 78, 56, 61, 58, 59, 76, 100, 81, 45, 72, 51, 51, 53, 63, 97, 76, 53, 60, 66, 59, 55, 62, 66, 63, 59, 49, 52, 88, 64, 62, 70, 50, 46, 68, 63, 54, 109, 64, 67, 71, 48, 76, 59, 60, 51, 51, 60, 57, 67, 66, 67, 99, 89, 66, 58, 58, 41, 82, 72, 70, 64, 75, 73, 70, 52, 68, 77, 66, 61, 60, 58, 85, 54, 58, 69, 76, 58, 69, 56, 64, 67, 71, 58, 59, 73, 53, 55, 71, 70, 70, 75, 65, 59, 57, 56, 54, 62, 54, 59, 61, 49, 84, 43, 59, 58, 40, 55, 56, 50, 62, 85, 67, 52, 47, 86, 62, 71, 67, 54, 65, 84, 54, 68, 67, 89, 112, 67, 77, 98, 70, 52, 75, 68, 69, 136, 40, 64, 57, 53, 93, 67, 76, 53, 73, 73, 60, 113, 55, 49, 76, 43, 59, 54, 48, 70, 76, 95, 41, 63, 75, 80, 50, 47, 51, 54, 77, 99, 49, 49, 52, 62, 60, 72, 68, 44, 68, 38, 68, 64, 59, 58, 83, 52, 47, 65, 50, 68, 46, 89, 55, 106, 64, 96, 58, 48, 98, 55, 58, 63, 71, 64, 49, 82, 55, 64, 99, 60, 102, 74, 56, 67, 51, 87, 83, 72, 76, 62, 54, 67, 67, 70, 93, 70, 59, 67, 73, 59, 70, 50, 69, 80, 57, 58, 77, 59, 51, 70, 56, 72, 59, 65, 81, 70, 67, 63, 79, 79, 69, 65, 75, 52, 72, 83, 48, 90, 61, 98, 61, 50, 58, 85, 62, 84, 50, 64, 55, 68, 64, 69, 48, 49, 61, 57, 51, 70, 58, 57, 77, 74, 58, 61, 89, 64, 56, 53, 68, 73, 65, 60, 61, 66, 54, 71, 73, 58, 70, 47, 68, 72, 67, 63, 49, 53, 59, 61, 75, 88, 54, 71, 66, 58, 73, 61, 61, 65, 61, 51, 54, 67, 65, 69, 43, 57, 73, 60, 77, 69, 70, 60, 61, 43, 51, 63, 63, 66, 52, 69, 62, 91, 62, 60, 65, 59, 65, 57, 61, 73, 61, 73, 55, 56, 63, 60, 165, 76, 85, 66, 67, 66, 69, 53, 56, 59, 66, 57, 66, 77, 67, 98, 65, 67, 63, 57, 63, 57, 72, 75, 57, 60, 62, 70, 67, 58, 59, 79, 68, 99, 58, 68, 62, 80, 63, 74, 92, 51, 78, 72, 60, 56, 41, 82, 131, 67, 62, 63, 62, 86, 57, 62, 72, 58, 78, 50, 102, 73, 67, 68, 51, 59, 63, 59, 58, 67, 73, 71, 69, 75, 61, 58, 56, 51, 71, 76, 65, 54, 62, 57, 54, 44, 66, 71, 56, 57, 62, 54, 65, 75, 66, 50, 81, 77, 58, 60, 54, 59, 67, 66, 49, 63, 53, 64, 61, 64, 81, 69, 61, 68, 87, 65, 68, 73, 49, 65, 50, 59, 79, 75, 54, 76, 63, 81, 55, 55, 58, 60, 74, 68, 64, 58, 55, 47, 73, 63, 67, 77, 64, 58, 52, 71, 66, 57, 64, 62, 71, 77, 92, 80, 62, 58, 59, 71, 70, 62, 59, 77, 68, 67, 80, 65, 65, 73, 51, 60, 67, 78, 65, 75, 71, 63, 69, 51, 60, 58, 64, 50, 71, 65, 83, 65, 60, 52, 67, 54, 63, 59, 59, 74, 59, 80, 67, 59, 65, 49, 63, 67, 71, 71, 64, 81, 80, 74, 57, 79, 65, 72, 96, 75, 108, 79, 57, 76, 94, 86, 67, 67, 59, 90, 76, 64, 49, 68, 57, 59, 75, 73, 85, 54, 53, 47, 67, 58, 77, 69, 71, 64, 48, 63, 80, 49, 49, 76, 90, 74, 53, 58, 50, 62, 52, 75, 67, 68, 50, 66, 68, 63, 72, 83, 84, 45, 59, 87, 56, 42, 64, 96, 51, 54, 60, 61, 52, 58, 61, 62, 56, 59, 71, 46, 64, 62, 76, 85, 83, 57, 76, 69, 63, 59, 60, 66, 63, 108, 61, 75, 78, 69, 91, 46, 58, 76, 68, 80, 71, 67, 59, 60, 65, 88, 65, 70, 82, 65, 63, 69, 63, 81, 56, 71, 41, 89, 63, 62, 71, 63, 69, 78, 59, 69, 57, 70, 73, 88, 66, 58, 68, 82, 59, 71, 71, 60, 65, 53, 66, 69, 57, 51, 63, 62, 60, 53, 70, 74, 69, 63, 63, 51, 57, 68, 52, 64, 53, 56, 61, 62, 64, 58, 70, 60, 55, 59, 63, 75, 61, 54, 65, 72, 55, 77, 73, 71, 66, 78, 81, 60, 70, 60, 71, 63, 80, 66, 59, 58, 61, 63, 56, 42, 80, 55, 67, 55, 70, 54, 77, 65, 79, 76, 53, 68, 70, 77, 107, 71, 48, 77, 44, 82, 63, 55, 77, 59, 62, 82, 63, 66, 90, 69, 76, 80, 72, 48, 56, 59, 47, 60, 55, 90, 87, 53, 56, 55, 55, 54, 133, 52, 101, 63, 65, 53, 68, 68, 56, 53, 68, 66, 53, 61, 75, 54, 65, 58, 60, 48, 61, 70, 78, 112, 70, 67, 66, 91, 54, 62, 58, 79, 64, 59, 53, 70, 73, 65, 66, 55, 67, 77, 56, 65, 68, 57, 81, 73, 56, 49, 68, 77, 58, 57, 81, 67, 76, 70, 51, 55, 70, 66, 72, 71, 80, 92, 66, 54, 65, 79, 56, 61, 73, 57, 63, 59, 54, 54, 63, 57, 69, 58, 65, 53, 73, 53, 63, 58, 62, 76, 79, 56, 69, 63, 62, 55, 74, 73, 82, 84, 70, 79, 50, 85, 73, 51, 65, 68, 57, 60, 73, 55, 39, 69, 92, 62, 55, 114, 49, 62, 47, 54, 67, 67, 68, 74, 57, 76, 64, 71, 48, 56, 46, 59, 117, 69, 38, 53, 62, 74, 63, 44, 62, 70, 59, 65, 62, 56, 62, 69, 68, 58, 68, 149, 62, 61, 56, 72, 61, 44, 66, 50, 96, 63, 60, 86, 75, 55, 80, 98, 57, 54, 58, 72, 53, 46, 79, 66, 66, 66, 67, 62, 55, 45, 66, 54, 78, 50, 56, 55, 64, 62, 83, 64, 74, 44, 79, 52, 74, 51, 58, 57, 104, 62, 64, 70, 82, 69, 75, 70, 61, 65, 73, 60, 70, 76, 49, 73, 59, 68, 78, 70, 56, 60, 64, 48, 63, 60, 63, 66, 70, 55, 53, 65, 57, 74, 53, 69, 61, 70, 62, 55, 64, 56, 63, 58, 54, 61, 65, 58, 52, 106, 76, 53, 104, 62, 66, 58, 61, 80, 56, 73, 65, 66, 73, 54, 71, 80, 99, 60, 64, 58, 67, 79, 44, 57, 65, 77, 78, 84, 54, 73, 75, 59, 71, 55, 69, 59, 67, 57, 51, 52, 75, 52, 64, 50, 60, 56, 57, 68, 73, 58, 58, 61, 65, 65, 61, 61, 66, 49, 152, 59, 62, 42, 71, 74, 59, 66, 91, 55, 69, 49, 62, 57, 71, 72, 46, 67, 67, 64, 85, 67, 54, 91, 47, 64, 55, 61, 70, 65, 73, 61, 55, 84, 67, 48, 81, 53, 61, 54, 69, 96, 57, 63, 63, 110, 46, 73, 60, 73, 59, 91, 50, 78, 73, 99, 52, 61, 65, 53, 65, 53, 60, 57, 64, 67, 74, 98, 63, 70, 63, 58, 76, 56, 76, 49, 63, 47, 69, 69, 50, 67, 49, 76, 65, 70, 92, 60, 56, 81, 64, 70, 59, 71, 54, 116, 64, 60, 68, 55, 66, 64, 65, 55, 63, 70, 59, 57, 59, 101, 46, 61, 78, 93, 68, 84, 90, 108, 75, 99, 55, 83, 55, 109, 75, 61, 74, 65, 63, 60, 90, 90, 71, 69, 53, 87, 59, 70, 63, 63, 57, 78, 68, 87, 58, 50, 50, 80, 50, 74, 58, 64, 61, 66, 68, 60, 59, 92, 61, 47, 90, 66, 60, 69, 58, 69, 81, 66, 61, 57, 69, 85, 71, 73, 59, 54, 51, 66, 61, 51, 58, 71, 80, 81, 159, 52, 61, 70, 63, 72, 56, 61, 72, 103, 52, 52, 61, 51, 70, 67, 115, 85, 62, 58, 63, 55, 61, 71, 61, 73, 45, 73, 97, 92, 59, 50, 77, 67, 62, 56, 94, 57, 66, 99, 57, 58, 71, 72, 85, 83, 88, 58, 63, 85, 48, 63, 62, 74, 52, 84, 81, 51, 71, 52, 67, 65, 59, 83, 75, 81, 74, 40, 83, 54, 77, 66, 67, 57, 49, 67, 49, 68, 61, 59, 66, 64, 54, 47, 58, 64, 81, 63, 56, 61, 58, 62, 66, 52, 49, 68, 74, 70, 77, 65, 55, 74, 78, 76, 62, 56, 50, 68, 79, 60, 78, 70, 66, 66, 50, 67, 80, 62, 55, 80, 85, 50, 71, 157, 54, 83, 70, 68, 41, 144, 81, 88, 46, 81, 78, 51, 86, 59, 74, 87, 70, 55, 79, 85, 61, 77, 61, 67, 64, 65, 71, 110, 62, 51, 69, 45, 73, 66, 90, 53, 64, 69, 54, 52, 62, 59, 59, 70, 60, 51, 60, 61, 57, 66, 74, 72, 57, 66, 57, 76, 67, 55, 62, 73, 56, 75, 49, 68, 66, 76, 67, 79, 70, 63, 90, 70, 50, 74, 77, 80, 48, 72, 61, 62, 60, 71, 61, 62, 68, 66, 63, 59, 62, 69, 57, 60, 63, 62, 59, 62, 59, 58, 116, 80, 55, 58, 52, 67, 68, 79, 61, 55, 84, 52, 75, 81, 69, 60, 71, 66, 63, 83, 54, 68, 74, 76, 75, 69, 59, 72, 48, 72, 62, 56, 73, 55, 65, 54, 69, 64, 73, 102, 48, 51, 70, 52, 68, 61, 86, 45, 78, 68, 76, 63, 73, 81, 65, 60, 50, 45, 61, 52, 67, 67, 71, 47, 64, 76, 52, 69, 71, 52, 66, 72, 55, 62, 77, 47, 59, 63, 55, 108, 60, 64, 63, 58, 58, 79, 67, 54, 37, 65, 59, 54, 81, 66, 53, 62, 54, 52, 56, 76, 67, 46, 73, 59, 56, 63, 69, 66, 56, 58, 61, 66, 62, 87, 80, 71, 72, 62, 57, 55, 76, 89, 64, 43, 79, 41, 66, 56, 57, 57, 57, 53, 67, 52, 56, 69, 73, 62, 60, 53, 68, 65, 61, 49, 48, 59, 65, 67, 63, 72, 47, 65, 49, 59, 69, 58, 67, 61, 79, 62, 77, 61, 66, 59, 65, 64, 58, 66, 68, 74, 60, 73, 49, 62, 65, 56, 58, 56, 65, 66, 56, 78, 69, 62, 66, 47, 73, 62, 54, 53, 60, 63, 47, 77, 56, 63, 58, 69, 67, 63, 57, 56, 69, 79, 48, 58, 52, 54, 73, 85, 83, 65, 50, 63, 64, 71, 97, 71, 45, 76, 70, 74, 59, 56, 65, 72, 76, 74, 87, 56, 77, 69, 65, 56, 56, 74, 60, 71, 63, 56, 47, 73, 60, 54, 53, 53, 55, 70, 93, 62, 63, 55, 88, 54, 65, 57, 60, 74, 105, 58, 55, 66, 42, 55, 65, 71, 56, 72, 120, 78, 61, 56, 72, 79, 52, 68, 66, 58, 55, 67, 55, 53, 90, 56, 70, 64, 49, 71, 52, 53, 63, 60, 50, 72, 55, 59, 47, 92, 146, 70, 60, 61, 58, 51, 43, 90, 58, 75, 67, 59, 71, 78, 52, 86, 65, 92, 66, 60, 67, 95, 65, 62, 66, 111, 82, 61, 59, 55, 55, 62, 62, 56, 50, 92, 100, 76, 63, 79, 85, 60, 76, 58, 90, 52, 52, 60, 63, 61, 57, 77, 52, 71, 49, 62, 50, 66, 61, 61, 74, 49, 35, 49, 45, 70, 56, 66, 61, 87, 57, 69, 91, 81, 78, 68, 60, 55, 85, 96, 74, 55, 68, 62, 67, 77, 67, 63, 85, 82, 52, 61, 79, 60, 74, 58, 63, 67, 59, 47, 74, 48, 59, 97, 59, 59, 77, 61, 68, 48, 67, 58, 49, 60, 57, 53, 67, 70, 50, 68, 56, 62, 67, 78, 76, 63, 79, 68, 44, 73, 62, 49, 60, 100, 58, 66, 56, 63, 54, 51, 62, 65, 65, 61, 69, 61, 62, 74, 63, 64, 54, 64, 61, 66, 52, 54, 60, 73, 81, 62, 66, 63, 61, 91, 66, 48, 69, 71, 65, 84, 59, 77, 92, 53, 62, 48, 68, 78, 69, 69, 68, 83, 62, 74, 79, 57, 50, 89, 58, 53, 49, 69, 45, 72, 68, 66, 59, 60, 46, 86, 63, 46, 72, 68, 66, 80, 55, 68, 79, 89, 87, 60, 55, 55, 58, 67, 63, 65, 63, 48, 52, 70, 59, 65, 56, 60, 53, 67, 76, 74, 60, 58, 51, 71, 65, 86, 47, 56, 67, 60, 63, 86, 80, 63, 56, 63, 76, 55, 70, 77, 72, 77, 64, 61, 57, 62, 54, 57, 58, 81, 51, 57, 44, 81, 76, 159, 68, 96, 51, 69, 59, 52, 65, 59, 74, 53, 67, 81, 60, 60, 79, 62, 73, 69, 44, 72, 62, 81, 57, 59, 80, 79, 59, 83, 60, 55, 46, 55, 65, 60, 46, 98, 61, 61, 52, 64, 87, 64, 72, 88, 57, 72, 75, 74, 69, 58, 79, 65, 63, 38, 65, 63, 52, 54, 59, 70, 77, 116, 55, 46, 62, 43, 55, 54, 75, 83, 67, 62, 52, 69, 62, 75, 70, 101, 62, 53, 58, 64, 65, 47, 53, 65, 66, 47, 67, 44, 56, 56, 73, 78, 74, 70, 61, 46, 54, 70, 47, 62, 81, 61, 71, 66, 51, 49, 65, 98, 73, 71, 74, 84, 36, 113, 62, 101, 63, 60, 66, 89, 76, 58, 54, 61, 65, 92, 54, 55, 70, 65, 58, 75, 69, 62, 76, 68, 57, 56, 62, 96, 68, 71, 53, 65, 61, 52, 86, 58, 67, 53, 67, 72, 66, 53, 64, 60, 81, 88, 49, 81, 52, 58, 72, 64, 65, 61, 61, 60, 83, 77, 69, 93, 59, 65, 55, 67, 58, 104, 63, 70, 59, 54, 52, 109, 67, 58, 77, 61, 51, 98, 57, 63, 65, 39, 80, 44, 74, 67, 89, 76, 73, 60, 67, 51, 62, 68, 63, 60, 113, 51, 75, 86, 56, 63, 67, 63, 66, 64, 87, 47, 66, 74, 50, 70, 65, 57, 86, 71, 52, 68, 55, 59, 59, 60, 75, 54, 105, 74, 64, 71, 68, 62, 55, 78, 63, 64, 68, 71, 73, 66, 75, 54, 52, 67, 62, 69, 89, 69, 77, 55, 55, 91, 63, 58, 53, 58, 61, 80, 68, 85, 72, 52, 59, 47, 73, 80, 66, 47, 57, 72, 63, 109, 75, 75, 66, 71, 64, 65, 66, 57, 54, 56, 79, 56, 69, 63, 61, 57, 87, 74, 89, 56, 78, 64, 55, 50, 70, 65, 106, 70, 60, 67, 64, 60, 92, 66, 70, 77, 48, 68, 50, 69, 63, 51, 47, 75, 97, 49, 54, 69, 52, 84, 61, 65, 53, 80, 65, 83, 82, 66, 49, 121, 63, 93, 61, 112, 51, 89, 52, 50, 57, 53, 69, 57, 101, 58, 61, 88, 54, 76, 57, 60, 148, 67, 62, 64, 54, 55, 72, 71, 67, 58, 53, 50, 70, 66, 53, 42, 59, 54, 51, 43, 37, 82, 63, 72, 51, 66, 66, 57, 63, 95, 72, 70, 61, 44, 71, 76, 56, 112, 73, 60, 59, 74, 58, 78, 110, 70, 86, 65, 70, 73, 55, 62, 45, 53, 69, 65, 73, 65, 38, 56, 90, 68, 81, 61, 88, 65, 63, 52, 55, 54, 44, 65, 61, 63, 75, 54, 57, 76, 65, 76, 104, 57, 54, 63, 78, 77, 73, 58, 68, 60, 62, 70, 66, 52, 50, 61, 74, 63, 75, 74, 69, 72, 59, 80, 90, 115, 74, 82, 54, 73, 56, 72, 56, 47, 57, 69, 60, 58, 83, 55, 74, 73, 63, 60, 77, 65, 63, 53, 62, 97, 57, 61, 65, 65, 78, 38, 71, 70, 53, 52, 61, 68, 81, 70, 69, 56, 54, 50, 65, 53, 55, 52, 72, 65, 59, 57, 66, 70, 82, 57, 58, 57, 40, 61, 68, 66, 72, 47, 70, 57, 61, 76, 52, 71, 65, 69, 55, 54, 65, 55, 74, 73, 69, 66, 52, 55, 61, 65, 72, 54, 76, 59, 45, 49, 108, 59, 72, 58, 56, 65, 56, 90, 99, 53, 67, 57, 60, 69, 57, 60, 77, 57, 27, 87, 69, 53, 45, 62, 53, 55, 45, 57, 58, 69, 60, 60, 93, 65, 80, 54, 79, 59, 68, 51, 44, 67, 78, 87, 81, 63, 70, 71, 58, 59, 70, 75, 67, 49, 69, 57, 95, 75, 45, 63, 66, 60, 90, 52, 62, 66, 57, 45, 63, 78, 66, 57, 55, 47, 80, 63, 70, 55, 47, 56, 66, 95, 74, 48, 62, 59, 62, 55, 100, 54, 63, 111, 67, 63, 60, 70, 61, 86, 71, 49, 49, 99, 63, 55, 134, 72, 50, 71, 62, 77, 72, 69, 76, 60, 55, 75, 63, 74, 58, 73, 52, 92, 86, 84, 98, 49, 49, 70, 80, 76, 50, 66, 63, 82, 82, 66, 60, 73, 63, 57, 62, 70, 51, 76, 53, 52, 64, 51, 75, 53, 70, 66, 109, 56, 68, 45, 56, 79, 62, 60, 65, 68, 58, 50, 58, 57, 57, 70, 58, 58, 66, 50, 69, 59, 81, 57, 88, 48, 50, 67, 70, 65, 79, 81, 107, 51, 90, 64, 68, 77, 58, 46, 68, 42, 100, 67, 69, 54, 46, 61, 56, 53, 66, 61, 57, 46, 59, 79, 85, 53, 71, 88, 63, 62, 76, 91, 56, 60, 55, 41, 69, 67, 74, 65, 68, 49, 50, 62, 57, 46, 64, 73, 68, 83, 74, 92, 62, 72, 60, 63, 95, 60, 51, 59, 68, 45, 62, 60, 77, 69, 56, 57, 70, 35, 76, 85, 58, 71, 48, 78, 62, 60, 62, 65, 62, 83, 112, 97, 62, 57, 70, 73, 56, 81, 82, 94, 57, 60, 66, 72, 59, 58, 70, 64, 63, 60, 56, 44, 65, 63, 69, 51, 75, 55, 68, 67, 59, 41, 88, 51, 62, 54, 36, 64, 64, 75, 67, 80, 64, 50, 50, 99, 90, 79, 61, 55, 44, 66, 47, 56, 61, 72, 62, 49, 76, 88, 100, 73, 69, 61, 62, 63, 66, 49, 59, 57, 94, 151, 91, 37, 78, 58, 59, 83, 87, 61, 49, 75, 55, 63, 89, 60, 66, 55, 88, 56, 71, 89, 75, 64, 52, 66, 61, 95, 65, 67, 73, 122, 75, 107, 66, 47, 54, 92, 61, 89, 65, 80, 55, 52, 57, 89, 55, 59, 59, 95, 61, 57, 66, 77, 108, 53, 52, 62, 62, 44, 69, 73, 68, 67, 65, 61, 79, 55, 79, 69, 50, 76, 64, 63, 53, 72, 83, 64, 60, 90, 81, 64, 81, 97, 66, 71, 60, 58, 64, 42, 83, 57, 76, 64, 54, 67, 54, 39, 97, 50, 104, 67, 48, 54, 56, 63, 86, 65, 74, 54, 59, 64, 78, 59, 56, 73, 58, 65, 57, 56, 55, 58, 57, 61, 47, 62, 44, 63, 58, 114, 93, 50, 80, 64, 82, 58, 53, 64, 60, 57, 50, 56, 83, 54, 55, 74, 69, 92, 35, 57, 82, 49, 70, 73, 76, 46, 56, 55, 55, 60, 68, 69, 59, 65, 49, 58, 65, 59, 116, 63, 63, 60, 72, 66, 78, 65, 90, 67, 65, 52, 63, 75, 83, 71, 57, 45, 74, 55, 51, 53, 81, 65, 66, 67, 59, 45, 63, 70, 78, 70, 70, 59, 94, 82, 75, 50, 71, 64, 47, 50, 47, 68, 64, 62, 75, 78, 55, 73, 78, 64, 49, 40, 82, 72, 71, 79, 64, 62, 52, 49, 82, 55, 110, 67, 101, 69, 68, 73, 66, 67, 88, 92, 127, 54, 60, 49, 73, 73, 71, 70, 85, 77, 84, 51, 104, 78, 79, 78, 54, 57, 69, 53, 64, 78, 61, 87, 61, 70, 43, 55, 44, 74, 58, 63, 51, 71, 62, 61, 57, 59, 48, 75, 60, 71, 80, 94, 53, 49, 54, 65, 90, 59, 62, 77, 55, 59, 49, 59, 86, 52, 76, 66, 80, 68, 53, 82, 56, 56, 111, 58, 59, 77, 65, 65, 65, 51, 84, 55, 46, 76, 66, 47, 67, 90, 63, 59, 76, 95, 55, 44, 43, 83, 88, 62, 49, 68, 62, 54, 69, 53, 76, 79, 62, 57, 62, 62, 70, 61, 79, 71, 43, 65, 62, 50, 57, 68, 68, 73, 83, 63, 50, 55, 82, 84, 59, 87, 103, 71, 72, 54, 52, 70, 64, 80, 62, 64, 56, 60, 102, 50, 67, 48, 117, 62, 87, 62, 67, 60, 68, 63, 57, 60, 65, 76, 52, 79, 79, 70, 67, 102, 70, 59, 52, 70, 73, 43, 52, 63, 60, 73, 75, 62, 81, 75, 48, 84, 82, 85, 64, 99, 72, 78, 76, 61, 66, 65, 91, 71, 79, 46, 65, 85, 35, 86, 69, 75, 89, 63, 41, 68, 63, 87, 72, 65, 67, 52, 73, 48, 51, 36, 51, 82, 61, 78, 64, 74, 60, 69, 65, 70, 60, 88, 61, 82, 64, 66, 71, 75, 44, 63, 68, 63, 47, 50, 70, 87, 59, 60, 96, 118, 68, 64, 78, 57, 58, 43, 58, 37, 67, 59, 75, 65, 60, 32, 74, 57, 60, 58, 51, 45, 67, 95, 55, 59, 36, 48, 50, 61, 58, 86, 51, 62, 58, 42, 67, 75, 62, 54, 60, 52, 71, 60, 74, 70, 65, 50, 113, 96, 80, 63, 69, 69, 72, 54, 45, 60, 50, 60, 76, 62, 63, 57, 61, 61, 71, 64, 47, 60, 73, 43, 52, 72, 68, 82, 67, 76, 78, 77, 59, 44, 56, 86, 55, 48, 61, 67, 75, 73, 66, 55, 95, 55, 84, 100, 71, 62, 58, 58, 76, 70, 56, 84, 70, 54, 64, 89, 67, 56, 61, 71, 90, 61, 56, 65, 60, 67, 79, 69, 74, 54, 65, 60, 28, 56, 46, 47, 65, 62, 52, 43, 79, 45, 69, 49, 74, 90, 85, 61, 59, 107, 87, 66, 67, 61, 71, 80, 51, 84, 78, 76, 63, 70, 72, 59, 47, 44, 73, 56, 65, 67, 60, 89, 81, 56, 103, 49, 74, 65, 81, 57, 105, 57, 80, 57, 102, 71, 60, 68, 67, 91, 65, 57, 59, 90, 63, 58, 57, 58, 70, 53, 55, 52, 51, 58, 79, 86, 30, 60, 56, 78, 82, 46, 61, 80, 83, 68, 58, 68, 62, 91, 55, 60, 41, 64, 65, 52, 61, 72, 62, 78, 59, 60, 68, 68, 64, 90, 80, 65, 77, 76, 62, 87, 50, 66, 67, 61, 49, 76, 84, 51, 47, 58, 68, 103, 81, 68, 56, 74, 68, 70, 70, 65, 91, 53, 69, 77, 59, 61, 52, 85, 71, 59, 54, 84, 79, 70, 67, 69, 50, 56, 78, 54, 60, 49, 68, 63, 53, 71, 73, 52, 64, 86, 42, 58, 78, 64, 56, 53, 87, 79, 51, 61, 78, 70, 60, 61, 48, 72, 57, 89, 77, 64, 60, 81, 61, 61, 49, 68, 79, 69, 74, 57, 79, 65, 44, 56, 46, 75, 79, 75, 51, 71, 62, 67, 49, 49, 76, 68, 81, 49, 59, 62, 93, 66, 48, 46, 58, 76, 72, 62, 67, 70, 62, 62, 74, 93, 59, 90, 55, 69, 56, 52, 78, 55, 59, 64, 87, 77, 65, 82, 60, 70, 68, 70, 58, 57, 83, 53, 80, 54, 77, 41, 73, 31, 85, 64, 41, 55, 72, 54, 111, 63, 77, 79, 54, 111, 58, 71, 60, 58, 115, 54, 60, 66, 76, 70, 35, 66, 76, 70, 81, 65, 62, 50, 67, 98, 59, 51, 45, 74, 60, 66, 71, 63, 60, 50, 53, 60, 74, 83, 51, 69, 61, 64, 47, 71, 58, 59, 74, 53, 73, 70, 77, 54, 91, 70, 52, 92, 62, 69, 48, 59, 66, 50, 60, 43, 51, 68, 88, 56, 71, 74, 54, 69, 86, 63, 79, 76, 62, 70, 97, 57, 68, 66, 72, 71, 103, 62, 61, 45, 53, 55, 63, 64, 86, 79, 60, 49, 108, 40, 58, 69, 75, 80, 57, 49, 68, 46, 67, 45, 82, 74, 79, 67, 70, 69, 57, 61, 65, 51, 35, 67, 50, 66, 65, 80, 71, 58, 46, 91, 75, 53, 86, 69, 119, 68, 67, 67, 61, 89, 57, 56, 38, 59, 71, 51, 92, 100, 66, 86, 59, 111, 83, 62, 56, 73, 60, 47, 59, 60, 35, 68, 62, 36, 79, 59, 99, 64, 70, 65, 72, 69, 77, 51, 68, 61, 44, 52, 77, 81, 78, 92, 60, 41, 58, 48, 65, 76, 57, 56, 95, 69, 114, 75, 74, 56, 69, 68, 70, 83, 88, 74, 66, 57, 72, 41, 76, 72, 65, 58, 43, 63, 78, 61, 97, 46, 49, 74, 87, 72, 62, 74, 86, 47, 64, 72, 50, 74, 50, 58, 43, 53, 54, 62, 41, 69, 73, 55, 70, 63, 66, 37, 72, 52, 71, 54, 77, 68, 67, 77, 73, 72, 91, 70, 72, 57, 52, 74, 73, 73, 67, 68, 57, 79, 75, 63, 51, 67, 54, 73, 64, 84, 58, 100, 93, 63, 58, 56, 104, 62, 52, 58, 63, 109, 77, 49, 49, 170, 89, 62, 71, 65, 57, 55, 68, 94, 64, 77, 61, 49, 70, 66, 57, 110, 51, 69, 68, 64, 76, 79, 50, 60, 49, 68, 71, 77, 92, 65, 64, 78, 50, 53, 74, 39, 86, 68, 62, 57, 78, 68, 63, 64, 83, 60, 63, 61, 40, 51, 73, 98, 156, 62, 58, 74, 85, 88, 42, 64, 47, 53, 62, 83, 57, 46, 63, 73, 65, 64, 66, 73, 48, 62, 65, 73, 69, 57, 46, 77, 59, 83, 63, 65, 39, 69, 69, 65, 72, 74, 79, 90, 56, 49, 67, 61, 61, 55, 38, 75, 64, 76, 71, 58, 62, 79, 28, 71, 52, 49, 49, 65, 52, 103, 86, 85, 73, 70, 62, 65, 59, 65, 96, 71, 50, 66, 84, 57, 93, 122, 103, 76, 89, 65, 57, 84, 93, 53, 64, 51, 69, 50, 74, 98, 64, 51, 44, 74, 61, 80, 67, 51, 56, 104, 72, 53, 74, 66, 40, 48, 55, 47, 79, 57, 98, 57, 80, 67, 69, 71, 43, 74, 73, 98, 47, 75, 56, 44, 63, 72, 99, 75, 78, 78, 59, 52, 54, 74, 46, 61, 69, 60, 55, 66, 56, 66, 82, 70, 84, 91, 52, 73, 77, 52, 39, 88, 65, 60, 41, 65, 49, 55, 59, 76, 74, 76, 73, 75, 82, 72, 64, 61, 59, 72, 77, 60, 62, 73, 54, 57, 79, 71, 69, 28, 78, 78, 58, 80, 62, 65, 66, 73, 73, 67, 71, 67, 78, 74, 86, 58, 60, 72, 80, 72, 73, 58, 55, 71, 59, 59, 50, 66, 66, 127, 42, 66, 71, 66, 55, 71, 76, 62, 63, 67, 108, 54, 53, 76, 81, 63, 52, 51, 68, 76, 77, 85, 68, 70, 58, 60, 59, 78, 56, 65, 67, 71, 82, 103, 90, 72, 50, 55, 58, 90, 60, 53, 63, 51, 61, 73, 62, 66, 49, 74, 72, 66, 53, 67, 60, 74, 66, 53, 55, 69, 89, 91, 59, 77, 78, 54, 55, 51, 88, 53, 54, 63, 94, 68, 64, 71, 74, 66, 60, 87, 66, 64, 61, 57, 67, 66, 66, 83, 50, 63, 71, 58, 59, 78, 65, 105, 57, 62, 72, 86, 77, 54, 96, 56, 62, 63, 69, 51, 94, 70, 59, 78, 78, 67, 52, 59, 73, 69, 63, 55, 70, 72, 56, 53, 78, 56, 64, 60, 66, 66, 100, 52, 51, 49, 54, 53, 67, 71, 66, 49, 70, 71, 74, 64, 78, 44, 71, 73, 60, 79, 87, 63, 63, 99, 59, 62, 46, 69, 74, 60, 62, 49, 61, 47, 83, 74, 60, 69, 75, 72, 70, 40, 80, 66, 64, 63, 53, 71, 72, 71, 85, 94, 62, 64, 80, 63, 55, 47, 59, 61, 57, 72, 65, 57, 61, 44, 54, 61, 81, 58, 57, 93, 68, 76, 55, 69, 52, 80, 61, 43, 79, 52, 55, 81, 62, 51, 49, 63, 60, 60, 77, 70, 65, 50, 61, 46, 71, 72, 63, 35, 56, 49, 65, 78, 51, 68, 67, 68, 74, 74, 64, 57, 74, 57, 68, 80, 57, 72, 66, 47, 55, 87, 46, 45, 66, 51, 65, 110, 65, 70, 55, 49, 73, 62, 81, 48, 53, 46, 82, 76, 81, 39, 62, 52, 63, 50, 60, 57, 60, 46, 63, 51, 56, 66, 78, 55, 51, 70, 46, 54, 69, 49, 69, 74, 59, 95, 38, 84, 74, 50, 63, 74, 102, 60, 55, 70, 88, 71, 58, 67, 59, 55, 83, 72, 66, 62, 65, 51, 68, 50, 75, 54, 61, 66, 53, 55, 58, 55, 73, 53, 50, 60, 96, 72, 56, 42, 83, 65, 59, 67, 54, 53, 73, 70, 74, 96, 62, 87, 76, 78, 76, 72, 76, 66, 56, 89, 58, 85, 61, 69, 67, 55, 57, 78, 71, 87, 86, 84, 69, 98, 54, 71, 66, 55, 49, 88, 60, 62, 61, 64, 79, 31, 59, 66, 72, 95, 74, 68, 60, 73, 72, 63, 47, 77, 92, 79, 61, 78, 54, 63, 64, 60, 48, 74, 63, 57, 65, 65, 69, 54, 72, 53, 61, 79, 61, 60, 67, 61, 69, 56, 63, 59, 56, 70, 75, 57, 43, 69, 77, 62, 75, 59, 73, 62, 86, 55, 39, 81, 57, 84, 63, 73, 104, 59, 79, 65, 57, 56, 51, 78, 53, 83, 48, 57, 56, 45, 68, 86, 47, 60, 71, 64, 60, 66, 53, 44, 63, 66, 87, 55, 97, 52, 52, 68, 40, 50, 63, 72, 63, 69, 54, 71, 64, 60, 62, 63, 86, 55, 54, 60, 58, 56, 41, 55, 69, 62, 48, 50, 56, 71, 72, 71, 66, 53, 66, 58, 76, 53, 59, 67, 97, 86, 137, 76, 90, 62, 70, 55, 71, 53, 60, 85, 127, 72, 60, 85, 53, 71, 65, 83, 77, 68, 67, 60, 49, 58, 67, 72, 76, 45, 62, 78, 63, 71, 57, 81, 44, 66, 63, 72, 68, 85, 56, 67, 41, 65, 72, 49, 56, 93, 56, 45, 135, 76, 44, 141, 75, 47, 56, 68, 60, 55, 54, 56, 54, 69, 83, 49, 63, 50, 68, 69, 58, 74, 52, 65, 83, 82, 68, 63, 71, 73, 88, 76, 57, 65, 66, 69, 62, 98, 60, 76, 76, 59, 67, 53, 60, 64, 75, 61, 67, 56, 70, 72, 69, 56, 58, 50, 64, 53, 47, 44, 46, 60, 82, 72, 51, 91, 41, 79, 60, 50, 64, 61, 59, 109, 73, 65, 74, 62, 56, 64, 95, 74, 61, 89, 58, 59, 60, 60, 73, 78, 64, 50, 55, 65, 56, 72, 71, 48, 89, 57, 89, 83, 94, 49, 75, 62, 49, 68, 73, 61, 68, 63, 56, 70, 75, 65, 66, 67, 59, 107, 59, 54, 59, 65, 65, 66, 65, 42, 74, 72, 74, 87, 52, 70, 61, 62, 67, 64, 52, 66, 57, 54, 77, 74, 70, 61, 61, 88, 51, 63, 71, 57, 71, 53, 64, 63, 71, 71, 71, 61, 71, 54, 70, 39, 65, 49, 119, 46, 70, 58, 47, 64, 61, 73, 76, 71, 63, 53, 82, 59, 75, 71, 64, 53, 100, 66, 75, 90, 67, 68, 78, 51, 83, 71, 59, 78, 51, 64, 51, 62, 52, 87, 90, 66, 90, 71, 61, 88, 55, 67, 63, 72, 59, 72, 54, 51, 72, 72, 72, 68, 72, 60, 64, 76, 67, 65, 75, 80, 53, 49, 56, 55, 49, 55, 65, 68, 61, 70, 53, 87, 70, 91, 62, 142, 57, 69, 58, 110, 51, 74, 66, 60, 76, 61, 61, 58, 61, 68, 73, 30, 144, 97, 78, 71, 86, 62, 63, 50, 75, 68, 56, 53, 84, 83, 74, 61, 42, 74, 68, 126, 31, 64, 72, 79, 78, 62, 68, 60, 52, 51, 68, 61, 58, 67, 79, 74, 46, 97, 57, 65, 56, 49, 55, 42, 41, 69, 42, 56, 58, 47, 58, 63, 69, 69, 50, 70, 98, 76, 62, 50, 56, 53, 60, 53, 94, 50, 57, 64, 53, 59, 87, 62, 70, 71, 55, 51, 47, 91, 75, 80, 48, 55, 47, 61, 81, 81, 56, 61, 84, 73, 56, 68, 70, 56, 58, 87, 59, 43, 42, 61, 68, 91, 62, 55, 59, 63, 79, 103, 56, 77, 55, 45, 71, 56, 80, 71, 69, 66, 62, 59, 92, 78, 74, 85, 63, 98, 48, 52, 82, 55, 59, 55, 68, 41, 57, 60, 58, 61, 61, 44, 57, 70, 59, 69, 85, 81, 74, 59, 75, 56, 76, 107, 62, 59, 63, 61, 83, 71, 73, 78, 54, 56, 69, 82, 75, 66, 71, 65, 94, 57, 82, 60, 63, 69, 71, 71, 63, 70, 57, 70, 74, 84, 56, 40, 57, 62, 85, 72, 75, 66, 63, 46, 52, 58, 84, 74, 75, 60, 66, 65, 65, 55, 49, 62, 77, 45, 74, 93, 58, 51, 57, 74, 73, 59, 95, 60, 55, 63, 71, 60, 64, 57, 52, 51, 68, 63, 67, 73, 54, 69, 65, 88, 98, 49, 55, 78, 41, 77, 73, 54, 51, 72, 49, 60, 63, 79, 57, 69, 70, 94, 62, 68, 46, 62, 60, 57, 71, 55, 54, 56, 56, 56, 71, 60, 65, 65, 68, 44, 70, 59, 69, 53, 57, 113, 81, 107, 66, 72, 77, 57, 82, 71, 63, 41, 65, 94, 63, 67, 46, 58, 33, 56, 59, 57, 54, 67, 78, 54, 73, 70, 60, 70, 73, 46, 63, 90, 56, 64, 59, 56, 63, 72, 78, 64, 59, 58, 62, 50, 76, 69, 69, 65, 69, 74, 86, 76, 66, 56, 51, 73, 76, 67, 76, 52, 57, 65, 68, 80, 52, 36, 108, 65, 68, 87, 57, 64, 59, 56, 67, 85, 51, 65, 85, 53, 46, 80, 52, 60, 61, 57, 64, 132, 44, 69, 66, 66, 60, 52, 55, 62, 71, 57, 64, 64, 63, 57, 97, 60, 78, 51, 62, 64, 66, 88, 72, 74, 79, 60, 68, 62, 62, 61, 63, 56, 66, 88, 82, 71, 81, 61, 61, 59, 53, 51, 40, 66, 56, 57, 59, 77, 48, 53, 53, 67, 90, 70, 54, 148, 60, 58, 57, 77, 74, 97, 65, 57, 53, 91, 73, 41, 49, 71, 45, 58, 75, 74, 103, 49, 56, 76, 71, 78, 65, 68, 69, 47, 73, 72, 69, 56, 98, 63, 65, 63, 57, 72, 62, 60, 47, 81, 66, 42, 47, 69, 85, 48, 76, 57, 56, 50, 53, 59, 47, 71, 50, 79, 61, 77, 51, 73, 66, 72, 73, 64, 51, 57, 77, 75, 49, 55, 62, 47, 56, 65, 56, 64, 35, 43, 95, 59, 67, 90, 56, 64, 64, 47, 57, 92, 63, 70, 59, 81, 78, 63, 66, 57, 61, 47, 70, 69, 80, 50, 62, 69, 48, 68, 52, 61, 108, 87, 91, 63, 61, 65, 79, 53, 51, 100, 85, 51, 72, 44, 60, 67, 66, 73, 54, 68, 51, 83, 74, 69, 60, 70, 60, 56, 63, 64, 60, 80, 48, 67, 76, 85, 58, 73, 66, 58, 63, 70, 81, 70, 50, 49, 59, 65, 71, 74, 82, 51, 68, 57, 59, 79, 63, 52, 56, 45, 75, 65, 70, 59, 65, 73, 62, 74, 60, 52, 49, 39, 74, 44, 81, 63, 113, 57, 54, 67, 65, 59, 75, 93, 83, 85, 73, 71, 55, 60, 60, 61, 56, 54, 74, 61, 68, 56, 57, 61, 68, 48, 68, 48, 60, 63, 60, 73, 53, 52, 42, 54, 64, 81, 57, 60, 55, 54, 72, 82, 67, 72, 53, 68, 70, 55, 61, 63, 68, 49, 98, 76, 60, 60, 82, 71, 48, 59, 57, 37, 57, 141, 65, 52, 68, 55, 53, 68, 83, 85, 53, 57, 53, 82, 67, 84, 66, 59, 65, 74, 58, 73, 90, 68, 72, 65, 60, 44, 65, 92, 54, 64, 68, 57, 63, 78, 100, 59, 61, 48, 70, 97, 71, 39, 63, 57, 93, 76, 53, 60, 77, 60, 68, 70, 86, 65, 51, 90, 62, 53, 55, 67, 63, 49, 71, 51, 64, 59, 70, 47, 82, 70, 74, 42, 52, 62, 40, 41, 64, 63, 76, 58, 65, 91, 55, 51, 68, 56, 68, 76, 63, 83, 96, 134, 49, 56, 61, 62, 64, 60, 58, 70, 64, 80, 58, 62, 75, 61, 68, 78, 58, 69, 47, 50, 49, 46, 75, 69, 62, 60, 71, 76, 62, 69, 81, 101, 38, 89, 81, 66, 75, 75, 57, 73, 104, 77, 70, 89, 79, 54, 69, 67, 90, 50, 51, 51, 69, 53, 64, 71, 53, 85, 59, 61, 51, 63, 62, 60, 73, 72, 62, 56, 74, 49, 56, 86, 58, 106, 59, 56, 58, 69, 77, 89, 64, 45, 49, 57, 94, 59, 53, 63, 88, 69, 63, 59, 62, 55, 56, 51, 54, 76, 73, 74, 42, 65, 70, 55, 65, 52, 86, 68, 59, 72, 58, 56, 89, 64, 49, 54, 72, 56, 70, 58, 54, 60, 62, 64, 74, 64, 65, 121, 73, 77, 57, 65, 62, 87, 69, 112, 67, 80, 76, 77, 61, 54, 43, 54, 89, 64, 63, 74, 48, 68, 73, 64, 73, 72, 60, 56, 68, 57, 79, 52, 62, 60, 52, 61, 71, 59, 74, 95, 68, 64, 61, 100, 59, 95, 59, 113, 61, 95, 59, 59, 63, 45, 59, 57, 65, 44, 38, 53, 69, 59, 50, 54, 51, 71, 64, 55, 56, 69, 48, 59, 57, 80, 68, 95, 98, 104, 76, 53, 65, 69, 51, 72, 54, 101, 67, 73, 65, 77, 67, 56, 53, 90, 56, 66, 59, 56, 65, 55, 64, 52, 48, 75, 90, 75, 74, 59, 60, 51, 60, 76, 64, 69, 67, 57, 81, 76, 90, 66, 86, 51, 61, 83, 76, 65, 69, 118, 83, 62, 55, 83, 47, 28, 69, 67, 74, 86, 77, 155, 55, 57, 57, 64, 64, 67, 76, 61, 77, 64, 59, 58, 56, 65, 72, 78, 70, 52, 66, 59, 48, 50, 68, 60, 58, 66, 57, 103, 48, 72, 61, 60, 71, 75, 66, 48, 61, 60, 47, 71, 61, 56, 69, 53, 55, 74, 55, 70, 55, 51, 60, 84, 50, 63, 52, 91, 53, 43, 47, 57, 54, 54, 72, 64, 81, 90, 66, 55, 63, 76, 67, 52, 56, 62, 41, 55, 98, 41, 61, 54, 54, 71, 69, 66, 54, 72, 65, 69, 73, 53, 56, 89, 44, 80, 64, 66, 72, 77, 72, 72, 56, 96, 63, 69, 134, 75, 65, 65, 55, 67, 64, 60, 46, 57, 90, 51, 58, 104, 59, 51, 63, 51, 69, 67, 57, 64, 79, 44, 63, 48, 83, 47, 70, 82, 66, 52, 71, 47, 86, 97, 58, 34, 76, 52, 68, 66, 47, 57, 62, 56, 82, 80, 65, 53, 79, 70, 45, 52, 67, 71, 59, 56, 70, 43, 80, 59, 87, 58, 112, 99, 51, 91, 63, 58, 56, 61, 84, 121, 53, 89, 64, 66, 65, 102, 94, 72, 57, 57, 66, 84, 67, 70, 73, 83, 49, 62, 65, 52, 77, 68, 48, 66, 58, 52, 52, 60, 89, 54, 46, 100, 101, 45, 57, 61, 59, 76, 65, 60, 59, 65, 62, 61, 43, 86, 76, 43, 58, 69, 62, 84, 63, 53, 57, 64, 75, 66, 36, 82, 62, 92, 55, 43, 66, 57, 59, 78, 92, 67, 78, 65, 82, 53, 62, 77, 63, 62, 71, 72, 48, 58, 68, 52, 87, 83, 78, 75, 69, 52, 58, 75, 66, 64, 56, 143, 65, 72, 71, 50, 85, 90, 60, 61, 62, 70, 81, 53, 64, 61, 65, 78, 106, 76, 79, 85, 82, 44, 64, 70, 81, 50, 59, 90, 66, 66, 72, 75, 69, 49, 102, 45, 61, 79, 88, 79, 93, 67, 61, 61, 64, 55, 64, 58, 49, 53, 56, 68, 64, 73, 82, 94, 71, 43, 72, 61, 72, 88, 76, 71, 49, 92, 65, 69, 53, 57, 78, 97, 61, 71, 65, 65, 55, 47, 60, 54, 55, 43, 65, 98, 68, 53, 67, 58, 55, 64, 104, 62, 69, 91, 84, 74, 52, 43, 54, 67, 60, 61, 77, 49, 59, 72, 83, 59, 69, 66, 59, 57, 66, 68, 75, 82, 78, 38, 77, 58, 56, 47, 56, 127, 60, 68, 59, 57, 69, 56, 92, 70, 96, 44, 34, 56, 63, 86, 54, 57, 84, 67, 73, 68, 56, 52, 66, 86, 68, 94, 69, 52, 65, 40, 59, 72, 60, 51, 51, 68, 49, 45, 71, 96, 76, 68, 75, 60, 55, 75, 58, 53, 69, 89, 40, 68, 50, 86, 63, 68, 57, 60, 76, 79, 90, 60, 70, 44, 43, 81, 57, 55, 94, 56, 48, 50, 55, 85, 91, 52, 58, 51, 79, 73, 67, 62, 48, 66, 48, 65, 55, 59, 65, 69, 68, 89, 59, 63, 75, 66, 72, 70, 65, 83, 80, 53, 46, 47, 49, 80, 68, 79, 73, 69, 56, 25, 99, 75, 57, 111, 61, 72, 61, 63, 62, 42, 81, 79, 55, 73, 47, 63, 46, 74, 57, 63, 76, 76, 79, 101, 66, 70, 86, 64, 48, 66, 44, 81, 68, 62, 75, 61, 77, 52, 44, 87, 42, 52, 77, 72, 44, 53, 43, 57, 89, 61, 50, 70, 66, 75, 56, 50, 85, 77, 66, 56, 39, 72, 142, 65, 109, 108, 55, 85, 77, 56, 84, 75, 89, 61, 72, 52, 75, 66, 44, 71, 60, 67, 54, 65, 66, 66, 48, 94, 39, 107, 65, 60, 57, 70, 50, 53, 60, 56, 61, 57, 53, 77, 58, 60, 38, 62, 69, 65, 71, 68, 82, 71, 60, 76, 65, 61, 56, 76, 54, 67, 67, 56, 51, 59, 67, 52, 55, 66, 46, 65, 70, 136, 115, 66, 71, 42, 79, 70, 62, 54, 77, 61, 87, 40, 63, 56, 55, 74, 58, 60, 52, 70, 93, 79, 65, 61, 71, 69, 108, 72, 59, 51, 51, 64, 50, 52, 73, 39, 71, 60, 65, 101, 96, 39, 54, 71, 77, 65, 74, 73, 50, 59, 57, 49, 46, 80, 83, 45, 62, 44, 90, 65, 55, 59, 73, 57, 48, 81, 80, 40, 57, 60, 60, 43, 51, 66, 71, 55, 50, 68, 76, 64, 42, 66, 42, 80, 82, 39, 58, 51, 67, 90, 69, 67, 62, 35, 54, 69, 72, 67, 62, 76, 71, 66, 58, 73, 54, 71, 69, 69, 68, 62, 72, 69, 75, 74, 58, 64, 57, 122, 76, 83, 71, 53, 84, 66, 62, 57, 71, 53, 64, 86, 77, 102, 87, 82, 67, 89, 56, 52, 74, 68, 66, 90, 100, 68, 57, 67, 63, 66, 90, 56, 59, 80, 49, 85, 63, 59, 72, 46, 65, 65, 71, 78, 95, 63, 66, 93, 79, 64, 76, 85, 89, 75, 50, 69, 55, 57, 45, 66, 72, 82, 56, 69, 109, 81, 72, 58, 83, 63, 65, 54, 49, 63, 77, 71, 62, 59, 51, 67, 73, 60, 92, 63, 95, 48, 69, 64, 80, 73, 53, 40, 57, 49, 65, 69, 56, 68, 65, 72, 52, 72, 71, 62, 78, 62, 60, 117, 75, 62, 48, 66, 54, 69, 65, 51, 75, 54, 81, 75, 81, 49, 60, 82, 48, 45, 71, 59, 71, 72, 101, 57, 75, 57, 73, 34, 62, 52, 53, 56, 71, 63, 49, 47, 79, 66, 61, 74, 56, 69, 68, 58, 69, 62, 67, 105, 57, 44, 65, 63, 67, 63, 53, 56, 53, 72, 60, 72, 65, 86, 112, 66, 91, 75, 72, 69, 68, 62, 96, 93, 53, 58, 62, 38, 66, 53, 108, 75, 94, 54, 41, 55, 61, 61, 60, 71, 71, 81, 60, 63, 69, 76, 53, 56, 79, 72, 79, 63, 52, 52, 48, 59, 47, 44, 101, 58, 73, 63, 59, 75, 91, 88, 94, 66, 75, 63, 62, 50, 56, 45, 83, 46, 52, 88, 87, 71, 67, 64, 54, 55, 77, 100, 97, 70, 78, 83, 77, 93, 80, 51, 50, 80, 88, 50, 56, 60, 57, 51, 77, 53, 64, 79, 72, 68, 51, 53, 43, 48, 55, 62, 73, 61, 63, 95, 63, 87, 60, 63, 48, 53, 64, 56, 77, 67, 58, 57, 55, 52, 93, 64, 42, 73, 59, 70, 95, 95, 53, 71, 35, 60, 40, 85, 69, 69, 81, 51, 103, 78, 79, 57, 59, 54, 48, 49, 75, 63, 52, 61, 65, 83, 39, 57, 57, 62, 49, 87, 45, 57, 84, 67, 60, 71, 92, 66, 70, 63, 63, 68, 46, 84, 70, 79, 66, 62, 79, 61, 67, 52, 58, 65, 63, 43, 68, 54, 69, 78, 61, 62, 55, 113, 83, 55, 69, 57, 71, 70, 96, 50, 105, 90, 54, 77, 51, 41, 107, 66, 75, 59, 57, 85, 57, 62, 66, 55, 82, 97, 50, 77, 57, 69, 56, 73, 64, 66, 53, 62, 85, 79, 41, 62, 71, 59, 81, 79, 51, 66, 95, 68, 67, 85, 139, 37, 64, 65, 78, 70, 68, 49, 72, 66, 61, 70, 42, 48, 72, 68, 59, 71, 58, 108, 56, 71, 56, 76, 72, 65, 70, 65, 40, 70, 88, 47, 47, 88, 53, 76, 62, 77, 67, 73, 55, 57, 101, 67, 54, 68, 58, 53, 52, 73, 86, 72, 48, 48, 55, 64, 65, 94, 96, 69, 60, 65, 62, 60, 54, 53, 43, 46, 71, 67, 51, 64, 74, 61, 70, 81, 95, 56, 49, 72, 60, 48, 60, 52, 97, 47, 75, 57, 58, 75, 77, 63, 54, 62, 60, 52, 52, 57, 73, 62, 46, 77, 60, 64, 71, 80, 67, 51, 64, 53, 61, 68, 48, 57, 56, 55, 70, 67, 61, 69, 65, 66, 83, 101, 44, 61, 48, 64, 61, 63, 67, 61, 68, 55, 53, 64, 80, 44, 74, 56, 63, 45, 52, 123, 40, 58, 70, 54, 74, 71, 58, 72, 82, 49, 56, 79, 73, 81, 62, 68, 109, 79, 112, 54, 66, 62, 61, 55, 53, 51, 60, 52, 67, 58, 75, 51, 58, 50, 72, 105, 53, 60, 45, 63, 74, 57, 55, 92, 49, 65, 69, 56, 62, 82, 69, 92, 79, 91, 66, 61, 62, 64, 62, 142, 60, 48, 92, 61, 64, 67, 58, 38, 64, 68, 66, 55, 40, 56, 68, 49, 44, 48, 73, 50, 65, 83, 54, 49, 43, 145, 47, 69, 67, 60, 105, 52, 72, 52, 62, 57, 52, 63, 59, 117, 82, 63, 58, 55, 61, 65, 52, 44, 43, 82, 51, 54, 76, 65, 56, 56, 79, 78, 78, 70, 79, 61, 48, 45, 74, 77, 48, 104, 54, 56, 54, 53, 77, 76, 71, 83, 85, 83, 57, 51, 81, 81, 51, 50, 65, 71, 43, 87, 84, 55, 76, 61, 66, 50, 83, 59, 91, 61, 55, 54, 80, 57, 59, 53, 74, 106, 89, 72, 83, 55, 57, 55, 136, 62, 88, 56, 50, 74, 64, 97, 66, 62, 67, 64, 60, 41, 57, 66, 63, 56, 70, 63, 60, 64, 57, 52, 67, 48, 54, 62, 82, 41, 95, 78, 84, 76, 67, 91, 55, 76, 75, 66, 51, 53, 67, 84, 57, 57, 62, 53, 62, 89, 47, 57, 93, 58, 73, 54, 67, 59, 67, 71, 113, 74, 89, 69, 48, 59, 98, 71, 76, 60, 75, 89, 74, 71, 67, 56, 90, 45, 59, 48, 63, 54, 48, 49, 59, 122, 70, 58, 53, 54, 50, 54, 62, 90, 53, 66, 59, 61, 25, 120, 55, 57, 54, 62, 71, 101, 70, 79, 52, 75, 72, 155, 61, 56, 70, 72, 69, 86, 72, 63, 65, 50, 55, 62, 47, 57, 72, 51, 53, 59, 65, 73, 54, 63, 51, 77, 85, 69, 87, 57, 78, 43, 59, 37, 61, 92, 62, 65, 68, 72, 52, 52, 67, 72, 60, 88, 68, 66, 64, 59, 56, 74, 38, 99, 70, 58, 68, 88, 46, 64, 76, 65, 62, 126, 54, 75, 48, 55, 60, 113, 59, 54, 64, 53, 61, 73, 76, 52, 69, 47, 63, 55, 49, 67, 58, 50, 53, 58, 40, 91, 64, 78, 60, 44, 64, 74, 65, 78, 75, 83, 98, 52, 65, 80, 50, 60, 72, 64, 73, 53, 53, 106, 75, 50, 69, 64, 78, 66, 57, 60, 63, 65, 59, 106, 69, 88, 92, 128, 62, 86, 67, 67, 58, 67, 55, 66, 51, 70, 53, 47, 63, 59, 69, 107, 59, 70, 80, 63, 77, 45, 45, 55, 66, 63, 83, 57, 76, 64, 129, 52, 79, 44, 86, 51, 66, 50, 46, 51, 66, 51, 42, 82, 60, 72, 49, 69, 64, 67, 39, 45, 57, 63, 84, 68, 83, 49, 70, 70, 95, 56, 73, 57, 54, 92, 69, 64, 36, 93, 73, 82, 62, 50, 83, 50, 77, 88, 46, 53, 117, 90, 63, 68, 70, 88, 58, 75, 65, 86, 58, 56, 64, 73, 55, 67, 46, 119, 56, 79, 100, 80, 66, 51, 53, 69, 75, 67, 58, 54, 66, 47, 46, 58, 76, 66, 84, 66, 55, 73, 48, 57, 54, 64, 78, 58, 50, 65, 68, 86, 65, 34, 74, 83, 80, 64, 70, 48, 66, 75, 51, 70, 81, 50, 60, 65, 73, 55, 89, 60, 91, 62, 63, 71, 67, 60, 86, 66, 76, 82, 68, 60, 66, 70, 65, 71, 42, 58, 47, 82, 48, 85, 54, 67, 56, 45, 85, 68, 84, 103, 80, 62, 51, 59, 53, 56, 57, 54, 56, 41, 58, 54, 55, 85, 53, 72, 66, 50, 59, 85, 62, 43, 62, 51, 82, 72, 65, 48, 77, 64, 55, 87, 54, 59, 50, 54, 55, 69, 69, 68, 71, 62, 54, 102, 113, 63, 67, 67, 65, 58, 63, 77, 55, 59, 69, 54, 87, 88, 64, 50, 60, 89, 104, 59, 46, 46, 64, 67, 77, 61, 77, 55, 83, 54, 80, 50, 58, 37, 86, 39, 59, 45, 54, 65, 60, 75, 74, 49, 72, 51, 74, 91, 97, 54, 79, 61, 79, 64, 60, 58, 116, 73, 53, 63, 71, 66, 78, 51, 87, 60, 128, 58, 57, 50, 75, 78, 58, 85, 58, 84, 58, 62, 69, 67, 57, 49, 74, 80, 58, 84, 53, 67, 72, 41, 80, 87, 63, 89, 38, 78, 82, 44, 77, 60, 55, 67, 56, 56, 77, 72, 88, 62, 63, 56, 42, 63, 55, 58, 59, 88, 61, 74, 50, 75, 79, 55, 50, 64, 60, 84, 58, 94, 74, 56, 74, 104, 65, 89, 83, 61, 50, 63, 78, 60, 72, 79, 54, 59, 66, 60, 47, 58, 51, 55, 51, 53, 78, 54, 112, 75, 53, 57, 84, 43, 51, 52, 60, 58, 47, 67, 56, 67, 68, 61, 52, 62, 41, 55, 53, 58, 73, 60, 57, 40, 70, 53, 52, 67, 50, 76, 55, 71, 46, 61, 57, 44, 61, 84, 64, 53, 95, 48, 41, 58, 49, 49, 93, 65, 86, 52, 71, 60, 67, 62, 78, 70, 87, 62, 68, 56, 102, 68, 123, 65, 83, 53, 56, 71, 55, 125, 76, 55, 54, 86, 47, 71, 71, 64, 56, 100, 59, 59, 47, 53, 55, 52, 59, 90, 117, 87, 65, 67, 58, 105, 58, 60, 55, 84, 78, 66, 81, 57, 46, 50, 62, 61, 46, 63, 50, 64, 60, 64, 63, 70, 25, 106, 73, 57, 55, 67, 75, 72, 48, 59, 75, 51, 55, 96, 55, 60, 67, 74, 80, 56, 74, 76, 64, 73, 73, 68, 76, 63, 66, 80, 97, 73, 37, 52, 83, 65, 61, 52, 114, 68, 51, 84, 75, 113, 62, 75, 68, 75, 57, 65, 66, 57, 73, 79, 49, 62, 69, 66, 44, 72, 68, 78, 68, 67, 84, 57, 64, 86, 65, 64, 68, 69, 48, 77, 61, 65, 77, 58, 45, 67, 53, 55, 78, 62, 52, 59, 73, 73, 61, 76, 69, 80, 59, 67, 70, 51, 76, 67, 62, 55, 84, 50, 44, 50, 74, 70, 68, 52, 75, 62, 48, 93, 80, 53, 91, 61, 68, 82, 67, 82, 63, 61, 52, 65, 44, 53, 52, 62, 54, 58, 85, 56, 56, 51, 71, 101, 92, 73, 50, 52, 47, 48, 59, 114, 62, 67, 72, 76, 63, 62, 57, 47, 65, 70, 75, 70, 64, 69, 65, 73, 80, 71, 69, 74, 55, 66, 52, 65, 70, 90, 61, 71, 54, 62, 78, 81, 65, 65, 70, 50, 71, 60, 81, 94, 53, 62, 101, 116, 67, 64, 65, 62, 81, 66, 62, 67, 69, 57, 64, 47, 58, 62, 81, 66, 70, 54, 56, 57, 87, 77, 50, 75, 80, 47, 58, 53, 77, 58, 58, 59, 79, 53, 67, 60, 51, 59, 59, 74, 65, 60, 71, 79, 66, 50, 74, 74, 55, 54, 67, 38, 81, 59, 68, 70, 61, 66, 78, 85, 53, 75, 87, 53, 79, 64, 60, 78, 66, 56, 58, 81, 69, 82, 60, 66, 71, 62, 54, 65, 58, 63, 61, 78, 61, 60, 60, 43, 58, 55, 77, 37, 73, 53, 61, 76, 62, 59, 39, 66, 106, 61, 46, 69, 64, 59, 76, 82, 60, 63, 49, 74, 56, 69, 61, 72, 76, 72, 80, 80, 51, 75, 76, 41, 78, 42, 84, 58, 73, 50, 75, 77, 83, 61, 54, 75, 68, 57, 91, 74, 113, 80, 70, 105, 64, 58, 47, 78, 55, 78, 55, 83, 64, 57, 79, 51, 62, 74, 64, 73, 57, 65, 65, 70, 55, 50, 71, 53, 97, 86, 56, 91, 88, 57, 70, 69, 69, 62, 56, 64, 59, 60, 101, 75, 86, 70, 68, 48, 62, 42, 74, 56, 65, 53, 104, 57, 79, 55, 49, 72, 48, 48, 72, 55, 77, 61, 68, 85, 69, 71, 81, 76, 66, 61, 45, 68, 80, 52, 76, 44, 69, 65, 51, 80, 68, 75, 104, 74, 71, 67, 77, 42, 51, 71, 51, 79, 59, 52, 73, 60, 92, 73, 47, 64, 65, 62, 83, 87, 73, 76, 76, 62, 65, 74, 75, 57, 66, 66, 37, 64, 85, 58, 94, 52, 89, 66, 54, 74, 81, 61, 58, 56, 83, 52, 65, 64, 56, 62, 47, 56, 58, 52, 72, 76, 61, 67, 68, 58, 59, 60, 67, 66, 73, 55, 49, 51, 76, 53, 65, 91, 76, 79, 72, 95, 57, 51, 73, 42, 50, 79, 55, 115, 63, 43, 77, 70, 62, 63, 77, 65, 77, 89, 69, 83, 51, 72, 52, 94, 46, 52, 70, 76, 67, 56, 76, 100, 68, 59, 48, 47, 75, 72, 83, 45, 52, 59, 72, 52, 53, 42, 48, 70, 71, 70, 53, 84, 46, 84, 52, 43, 82, 68, 61, 60, 59, 69, 73, 52, 76, 80, 68, 78, 77, 65, 90, 69, 84, 49, 57, 63, 87, 65, 53, 61, 101, 52, 45, 77, 72, 46, 51, 54, 75, 57, 69, 64, 45, 68, 59, 55, 66, 88, 95, 68, 56, 65, 71, 50, 79, 74, 55, 65, 66, 74, 60, 67, 73, 67, 78, 66, 47, 85, 72, 78, 53, 64, 57, 73, 50, 70, 82, 75, 87, 67, 61, 58, 40, 64, 59, 63, 45, 66, 67, 43, 66, 74, 63, 67, 49, 82, 49, 64, 111, 53, 56, 61, 55, 58, 68, 87, 60, 76, 64, 73, 64, 77, 73, 99, 60, 59, 46, 65, 91, 43, 60, 61, 66, 67, 57, 61, 83, 53, 58, 68, 43, 73, 58, 77, 50, 45, 66, 66, 77, 49, 61, 55, 65, 73, 88, 66, 58, 78, 51, 73, 56, 56, 67, 66, 53, 130, 48, 69, 70, 55, 72, 74, 64, 71, 46, 84, 68, 70, 66, 73, 58, 74, 81, 96, 68, 69, 78, 70, 74, 63, 63, 72, 55, 73, 54, 70, 96, 57, 64, 59, 69, 55, 79, 48, 86, 56, 97, 92, 61, 63, 92, 73, 101, 64, 78, 91, 61, 56, 82, 61, 49, 56, 53, 64, 49, 64, 63, 61, 73, 64, 53, 57, 48, 63, 68, 63, 71, 79, 100, 62, 65, 68, 54, 67, 45, 74, 77, 68, 63, 60, 64, 43, 71, 52, 71, 71, 51, 103, 62, 75, 52, 55, 75, 54, 97, 86, 68, 69, 67, 82, 51, 48, 98, 72, 52, 50, 77, 71, 67, 74, 71, 53, 59, 58, 79, 65, 63, 50, 64, 61, 75, 58, 60, 84, 54, 77, 76, 53, 67, 72, 77, 68, 60, 69, 40, 43, 41, 72, 79, 64, 76, 89, 59, 76, 78, 62, 72, 67, 81, 56, 65, 60, 61, 65, 68, 50, 58, 53, 45, 72, 75, 53, 64, 50, 68, 42, 59, 47, 67, 57, 51, 61, 55, 71, 54, 132, 71, 77, 81, 58, 73, 62, 60, 60, 62, 62, 68, 42, 71, 65, 75, 46, 56, 53, 71, 61, 72, 73, 64, 58, 88, 66, 76, 62, 75, 84, 77, 63, 50, 83, 61, 45, 70, 45, 73, 70, 60, 69, 59, 61, 73, 75, 58, 85, 54, 71, 64, 67, 70, 87, 64, 61, 87, 59, 57, 76, 71, 59, 72, 68, 58, 69, 74, 41, 48, 57, 75, 69, 48, 79, 50, 71, 55, 61, 55, 60, 39, 70, 79, 76, 52, 60, 64, 93, 54, 59, 47, 58, 80, 42, 62, 49, 66, 63, 84, 62, 79, 64, 71, 83, 84, 74, 76, 85, 60, 50, 59, 74, 51, 82, 60, 69, 52, 75, 63, 71, 56, 57, 73, 48, 55, 60, 69, 64, 71, 71, 63, 67, 79, 56, 62, 64, 67, 62, 59, 60, 58, 71, 56, 89, 67, 70, 73, 51, 72, 73, 61, 69, 64, 83, 55, 53, 86, 67, 54, 54, 60, 77, 69, 59, 98, 68, 56, 53, 48, 86, 67, 60, 48, 67, 63, 69, 67, 102, 60, 63, 52, 56, 61, 63, 59, 78, 62, 49, 65, 39, 65, 62, 77, 61, 52, 69, 56, 52, 59, 78, 68, 71, 50, 82, 62, 48, 51, 58, 68, 60, 78, 53, 61, 61, 60, 93, 58, 61, 51, 61, 70, 53, 84, 51, 76, 58, 87, 58, 73, 61, 63, 57, 58, 57, 64, 61, 78, 49, 49, 59, 56, 69, 77, 64, 63, 66, 61, 72, 72, 80, 50, 69, 74, 82, 54, 95, 51, 93, 76, 72, 62, 63, 71, 58, 139, 59, 88, 56, 75, 80, 60, 66, 74, 62, 57, 62, 57, 72, 69, 64, 34, 74, 60, 60, 85, 60, 60, 63, 48, 111, 80, 53, 63, 63, 58, 47, 59, 62, 62, 59, 62, 63, 69, 121, 78, 69, 56, 68, 59, 54, 96, 70, 60, 57, 59, 56, 74, 58, 54, 157, 54, 58, 51, 58, 52, 56, 55, 58, 70, 48, 60, 61, 70, 66, 65, 72, 68, 74, 58, 73, 67, 70, 75, 97, 66, 96, 60, 56, 57, 75, 56, 75, 65, 64, 66, 71, 77, 46, 61, 81, 61, 62, 68, 79, 70, 129, 51, 63, 62, 56, 77, 67, 61, 71, 34, 74, 53, 53, 94, 57, 65, 61, 65, 83, 67, 73, 71, 53, 71, 33, 63, 54, 65, 80, 63, 62, 54, 77, 50, 66, 72, 57, 88, 61, 58, 74, 73, 57, 58, 38, 88, 80, 67, 73, 72, 52, 71, 71, 57, 55, 141, 68, 73, 61, 58, 67, 75, 63, 69, 61, 94, 68, 44, 47, 58, 50, 59, 56, 53, 89, 62, 54, 50, 55, 63, 58, 68, 75, 83, 42, 62, 56, 62, 79, 75, 51, 62, 57, 62, 69, 73, 59, 59, 70, 55, 73, 72, 54, 66, 62, 89, 68, 90, 70, 57, 71, 63, 75, 59, 55, 54, 55, 61, 50, 64, 75, 48, 55, 64, 97, 76, 64, 72, 53, 64, 88, 75, 63, 57, 61, 75, 62, 114, 46, 56, 56, 56, 70, 74, 71, 63, 75, 56, 65, 66, 58, 59, 62, 75, 101, 75, 78, 68, 98, 63, 83, 53, 69, 52, 51, 135, 30, 68, 68, 59, 63, 57, 68, 71, 67, 44, 71, 75, 58, 57, 77, 58, 71, 67, 44, 58, 53, 85, 53, 58, 69, 55, 77, 50, 63, 53, 52, 79, 66, 61, 64, 45, 78, 58, 77, 59, 65, 41, 48, 63, 63, 96, 87, 75, 74, 57, 86, 72, 87, 66, 65, 53, 77, 81, 75, 61, 62, 73, 55, 71, 102, 63, 80, 82, 71, 56, 98, 68, 55, 66, 55, 57, 59, 53, 86, 125, 63, 97, 61, 62, 64, 52, 60, 92, 93, 66, 66, 75, 72, 64, 65, 68, 68, 80, 69, 52, 68, 62, 69, 57, 55, 46, 63, 61, 47, 66, 56, 69, 63, 68, 58, 59, 67, 65, 64, 65, 59, 60, 65, 69, 63, 56, 56, 74, 58, 77, 76, 107, 58, 74, 27, 50, 69, 68, 47, 89, 58, 80, 60, 82, 55, 52, 49, 61, 48, 65, 73, 68, 59, 51, 68, 54, 56, 59, 52, 64, 62, 60, 68, 68, 63, 84, 70, 62, 79, 65, 65, 53, 59, 62, 57, 72, 95, 66, 57, 56, 74, 85, 41, 55, 74, 62, 54, 102, 60, 62, 58, 64, 74, 45, 73, 98, 78, 69, 75, 65, 50, 50, 52, 56, 71, 61, 52, 47, 63, 47, 72, 77, 51, 42, 57, 66, 70, 59, 65, 52, 78, 55, 69, 52, 68, 95, 72, 89, 69, 54, 58, 55, 61, 94, 87, 58, 63, 76, 77, 60, 92, 58, 137, 69, 63, 57, 53, 74, 65, 72, 70, 59, 49, 59, 68, 68, 56, 65, 58, 77, 59, 60, 44, 53, 79, 71, 58, 86, 49, 79, 65, 51, 49, 61, 63, 59, 58, 71, 60, 84, 50, 68, 57, 72, 72, 51, 83, 51, 51, 119, 68, 56, 61, 46, 64, 53, 57, 56, 50, 62, 84, 69, 82, 68, 50, 64, 72, 75, 87, 62, 65, 81, 84, 58, 51, 52, 90, 99, 65, 62, 61, 79, 68, 69, 53, 54, 37, 76, 68, 68, 60, 66, 67, 51, 44, 64, 87, 120, 54, 42, 67, 64, 70, 33, 52, 76, 51, 59, 61, 79, 69, 65, 44, 58, 58, 56, 63, 62, 60, 64, 62, 65, 61, 81, 60, 52, 51, 80, 65, 61, 69, 58, 54, 50, 60, 54, 79, 98, 127, 69, 69, 66, 69, 62, 82, 65, 69, 93, 59, 78, 55, 65, 67, 63, 83, 55, 62, 72, 55, 55, 60, 67, 39, 77, 43, 61, 59, 54, 60, 61, 70, 62, 53, 58, 63, 69, 69, 59, 61, 82, 58, 56, 66, 79, 58, 46, 74, 59, 58, 50, 62, 50, 58, 70, 71, 53, 55, 60, 58, 60, 67, 55, 71, 54, 49, 69, 78, 107, 68, 40, 71, 59, 71, 59, 59, 77, 56, 63, 72, 65, 118, 74, 65, 79, 61, 88, 81, 55, 68, 76, 82, 58, 52, 61, 54, 61, 72, 59, 84, 65, 64, 72, 60, 63, 76, 57, 52, 74, 66, 108, 77, 47, 53, 50, 50, 53, 75, 80, 80, 63, 73, 62, 63, 91, 62, 77, 58, 60, 65, 70, 67, 61, 54, 82, 70, 64, 74, 71, 54, 61, 57, 73, 77, 63, 65, 89, 58, 53, 57, 52, 54, 64, 68, 110, 60, 67, 60, 80, 62, 53, 85, 77, 60, 76, 51, 61, 66, 61, 56, 58, 53, 54, 57, 71, 54, 60, 55, 65, 75, 52, 58, 64, 54, 104, 62, 67, 77, 57, 66, 58, 73, 60, 63, 69, 56, 82, 64, 51, 96, 74, 61, 58, 45, 80, 59, 61, 87, 56, 65, 49, 66, 71, 84, 64, 77, 57, 59, 40, 85, 64, 51, 61, 64, 62, 68, 61, 78, 54, 67, 59, 71, 59, 71, 73, 77, 50, 82, 101, 85, 67, 54, 57, 49, 62, 71, 66, 59, 66, 58, 70, 52, 75, 46, 62, 38, 94, 79, 72, 71, 57, 67, 65, 54, 116, 61, 77, 71, 61, 76, 79, 70, 85, 65, 50, 52, 56, 55, 100, 66, 79, 69, 60, 68, 66, 47, 55, 62, 67, 101, 48, 79, 70, 66, 62, 57, 77, 64, 66, 45, 60, 50, 95, 48, 63, 77, 72, 76, 64, 58, 49, 73, 70, 46, 55, 64, 57, 70, 56, 57, 72, 74, 49, 75, 66, 56, 66, 76, 65, 63, 58, 75, 88, 66, 87, 89, 82, 72, 53, 58, 61, 54, 58, 56, 74, 70, 67, 62, 69, 59, 52, 68, 79, 113, 83, 65, 49, 69, 70, 54, 60, 67, 63, 61, 61, 55, 53, 66, 51, 64, 54, 61, 71, 41, 87, 63, 64, 78, 81, 45, 59, 43, 55, 85, 68, 58, 67, 93, 67, 62, 57, 59, 74, 88, 69, 66, 62, 52, 58, 69, 86, 110, 69, 57, 51, 60, 65, 61, 65, 56, 69, 56, 64, 58, 55, 68, 44, 76, 43, 56, 61, 69, 70, 71, 59, 67, 70, 48, 51, 102, 63, 56, 63, 60, 56, 79, 47, 51, 67, 56, 70, 52, 86, 43, 67, 50, 48, 82, 59, 67, 63, 66, 51, 73, 70, 62, 63, 93, 55, 69, 52, 62, 67, 60, 77, 55, 72, 62, 75, 57, 75, 76, 61, 60, 68, 71, 70, 53, 53, 70, 62, 56, 86, 48, 66, 78, 70, 79, 36, 61, 71, 57, 86, 66, 73, 71, 50, 63, 64, 74, 77, 57, 72, 85, 69, 50, 79, 55, 65, 58, 61, 44, 70, 62, 48, 59, 60, 98, 83, 50, 75, 54, 73, 58, 105, 70, 62, 59, 50, 106, 67, 65, 83, 47, 54, 74, 65, 71, 77, 85, 62, 68, 66, 60, 111, 72, 45, 57, 62, 55, 81, 63, 63, 58, 63, 73, 72, 66, 52, 59, 57, 51, 71, 63, 32, 60, 59, 51, 79, 87, 57, 51, 79, 59, 80, 75, 57, 61, 91, 64, 40, 76, 67, 57, 87, 52, 49, 79, 67, 56, 62, 73, 47, 77, 75, 70, 65, 57, 64, 66, 43, 74, 83, 68, 60, 98, 61, 47, 71, 78, 49, 57, 75, 70, 71, 64, 58, 67, 66, 128, 44, 67, 102, 51, 66, 71, 56, 67, 66, 71, 61, 51, 79, 55, 53, 55, 43, 66, 85, 66, 96, 60, 78, 59, 67, 73, 82, 56, 67, 62, 61, 64, 72, 56, 73, 56, 67, 71, 49, 82, 52, 64, 67, 71, 68, 91, 55, 54, 57, 50, 77, 66, 43, 64, 54, 60, 52, 70, 99, 83, 58, 67, 59, 59, 62, 103, 87, 63, 76, 62, 68, 79, 61, 73, 50, 55, 56, 69, 55, 65, 67, 69, 83, 75, 61, 68, 87, 58, 62, 57, 56, 85, 58, 61, 45, 75, 77, 69, 66, 60, 81, 73, 60, 78, 56, 44, 60, 61, 41, 64, 73, 66, 72, 89, 54, 54, 87, 61, 31, 83, 66, 52, 77, 66, 74, 63, 63, 59, 71, 77, 56, 94, 65, 47, 97, 59, 46, 55, 58, 77, 79, 65, 60, 51, 50, 56, 93, 61, 71, 65, 52, 77, 54, 75, 83, 78, 70, 57, 62, 57, 65, 69, 58, 54, 78, 53, 69, 61, 58, 57, 48, 73, 68, 67, 63, 44, 65, 59, 78, 68, 59, 68, 76, 66, 74, 65, 74, 89, 57, 50, 59, 60, 75, 67, 102, 59, 52, 64, 63, 65, 119, 72, 71, 78, 68, 76, 61, 75, 60, 58, 59, 89, 51, 66, 71, 128, 56, 62, 69, 53, 88, 82, 68, 60, 71, 53, 69, 68, 57, 44, 97, 53, 76, 68, 79, 60, 60, 71, 83, 55, 70, 72, 66, 78, 84, 50, 60, 60, 94, 78, 65, 58, 91, 59, 60, 114, 75, 60, 67, 56, 68, 50, 63, 65, 71, 71, 63, 42, 67, 55, 49, 66, 70, 61, 63, 83, 66, 46, 58, 80, 69, 60, 54, 54, 68, 44, 69, 63, 59, 47, 72, 45, 76, 58, 94, 59, 69, 56, 79, 64, 80, 65, 54, 70, 65, 88, 70, 44, 107, 94, 69, 73, 62, 68, 76, 59, 59, 58, 92, 63, 75, 95, 60, 58, 58, 55, 55, 53, 54, 56, 46, 71, 77, 63, 60, 49, 74, 100, 74, 30, 69, 61, 66, 76, 55, 60, 48, 63, 109, 42, 79, 78, 59, 64, 56, 93, 55, 56, 67, 57, 75, 59, 60, 67, 74, 35, 56, 68, 67, 62, 54, 94, 49, 77, 57, 112, 52, 66, 65, 50, 61, 65, 86, 72, 54, 71, 58, 62, 56, 76, 52, 58, 55, 87, 69, 69, 55, 84, 59, 73, 61, 64, 57, 83, 40, 68, 73, 81, 63, 62, 62, 58, 66, 77, 67, 75, 68, 61, 76, 57, 60, 73, 60, 62, 53, 93, 79, 44, 57, 69, 60, 83, 62, 52, 95, 69, 74, 53, 80, 56, 133, 94, 48, 57, 67, 80, 61, 78, 64, 50, 53, 57, 63, 62, 61, 75, 76, 97, 54, 61, 63, 59, 62, 81, 109, 58, 49, 71, 56, 53, 81, 68, 64, 55, 59, 56, 80, 85, 67, 54, 50, 72, 49, 68, 48, 65, 55, 98, 70, 64, 92, 82, 66, 67, 70, 66, 46, 61, 74, 82, 62, 61, 100, 87, 62, 58, 70, 62, 64, 53, 43, 54, 90, 73, 59, 70, 66, 75, 85, 88, 40, 71, 42, 64, 74, 82, 57, 47, 66, 60, 46, 60, 68, 86, 67, 54, 53, 75, 54, 67, 59, 65, 99, 79, 54, 70, 65, 71, 63, 71, 76, 90, 64, 66, 69, 73, 78, 95, 69, 62, 59, 69, 71, 63, 74, 53, 76, 63, 78, 56, 69, 71, 103, 69, 87, 63, 68, 63, 63, 63, 65, 55, 53, 63, 54, 65, 49, 51, 57, 74, 48, 68, 135, 74, 75, 84, 72, 58, 58, 57, 78, 55, 52, 67, 64, 61, 60, 58, 95, 42, 66, 57, 76, 77, 57, 81, 59, 65, 61, 81, 58, 73, 87, 56, 52, 81, 50, 91, 60, 63, 59, 58, 77, 54, 64, 57, 74, 56, 64, 53, 83, 67, 95, 67, 59, 70, 68, 61, 58, 60, 69, 60, 84, 68, 61, 56, 60, 62, 76, 56, 88, 68, 64, 66, 75, 66, 80, 48, 61, 62, 68, 66, 55, 66, 76, 53, 55, 55, 64, 70, 55, 67, 79, 62, 70, 60, 66, 81, 52, 59, 53, 71, 72, 74, 81, 58, 56, 74, 53, 67, 58, 62, 56, 63, 72, 67, 88, 64, 60, 78, 54, 70, 76, 57, 61, 62, 68, 90, 55, 70, 76, 67, 53, 63, 58, 75, 56, 63, 68, 52, 79, 60, 67, 61, 56, 56, 56, 63, 61, 82, 63, 57, 51, 87, 118, 58, 89, 73, 43, 112, 61, 62, 59, 74, 50, 62, 66, 80, 70, 94, 58, 53, 73, 53, 78, 67, 83, 66, 67, 77, 67, 61, 63, 48, 70, 64, 39, 78, 57, 67, 73, 69, 81, 80, 101, 58, 53, 62, 70, 61, 62, 67, 44, 55, 63, 66, 60, 46, 77, 63, 79, 48, 72, 56, 75, 55, 57, 86, 50, 47, 66, 43, 62, 81, 71, 52, 61, 52, 60, 79, 61, 73, 67, 75, 82, 72, 53, 62, 70, 112, 61, 79, 62, 74, 68, 57, 59, 72, 63, 58, 49, 61, 50, 53, 76, 65, 60, 58, 57, 51, 61, 64, 62, 79, 71, 77, 37, 56, 59, 73, 63, 69, 69, 85, 72, 50, 76, 54, 57, 72, 77, 131, 72, 48, 59, 71, 49, 67, 79, 77, 69, 82, 65, 92, 57, 63, 99, 50, 70, 56, 59, 73, 59, 76, 52, 56, 66, 63, 72, 59, 71, 61, 53, 51, 90, 50, 53, 43, 83, 111, 77, 99, 58, 70, 50, 74, 59, 52, 77, 62, 74, 66, 77, 57, 54, 40, 58, 67, 99, 55, 41, 57, 48, 74, 64, 59, 62, 69, 75, 67, 58, 69, 67, 61, 109, 53, 67, 61, 81, 73, 69, 77, 75, 68, 55, 53, 62, 101, 58, 51, 49, 77, 61, 57, 75, 55, 69, 44, 68, 68, 51, 50, 71, 79, 72, 57, 41, 59, 60, 52, 73, 60, 62, 68, 95, 61, 66, 57, 130, 80, 60, 60, 68, 72, 69, 81, 50, 77, 79, 66, 54, 66, 82, 55, 56, 70, 61, 82, 67, 58, 57, 76, 91, 76, 60, 74, 75, 54, 117, 66, 57, 54, 44, 64, 74, 58, 90, 55, 57, 64, 81, 87, 71, 50, 62, 45, 46, 47, 62, 75, 52, 97, 76, 56, 60, 71, 46, 62, 76, 108, 56, 71, 53, 63, 90, 64, 62, 46, 55, 76, 62, 64, 59, 70, 75, 61, 58, 50, 63, 71, 71, 53, 56, 82, 75, 62, 70, 70, 75, 58, 65, 74, 63, 62, 53, 67, 64, 53, 66, 62, 74, 74, 66, 53, 66, 56, 69, 76, 55, 66, 72, 89, 65, 78, 58, 92, 59, 62, 59, 63, 74, 43, 63, 92, 52, 67, 82, 56, 63, 96, 73, 57, 57, 57, 70, 54, 78, 95, 67, 118, 126, 54, 59, 50, 51, 48, 56, 58, 68, 55, 53, 52, 58, 63, 80, 87, 71, 65, 61, 95, 39, 79, 60, 64, 72, 65, 78, 75, 54, 51, 66, 43, 70, 77, 78, 72, 103, 80, 78, 82, 46, 53, 50, 61, 45, 72, 70, 54, 72, 75, 108, 82, 91, 58, 67, 48, 75, 85, 62, 103, 69, 60, 54, 75, 74, 55, 75, 86, 80, 54, 71, 66, 81, 70, 64, 72, 55, 60, 83, 66, 63, 79, 66, 64, 67, 65, 71, 60, 61, 53, 63, 106, 56, 66, 61, 80, 74, 76, 68, 74, 64, 61, 38, 53, 84, 61, 66, 71, 61, 57, 52, 67, 57, 58, 57, 71, 74, 61, 55, 55, 59, 57, 64, 54, 72, 56, 66, 76, 74, 71, 78, 58, 66, 85, 65, 91, 67, 62, 76, 62, 99, 73, 62, 57, 68, 74, 91, 52, 70, 68, 58, 59, 50, 75, 85, 66, 66, 80, 66, 67, 78, 54, 59, 54, 86, 57, 63, 77, 67, 53, 44, 70, 59, 57, 72, 93, 57, 54, 45, 61, 76, 75, 68, 72, 72, 69, 78, 67, 72, 66, 61, 60, 55, 60, 62, 71, 82, 61, 38, 55, 75, 55, 65, 71, 52, 78, 51, 108, 73, 50, 66, 72, 60, 62, 109, 51, 76, 50, 46, 62, 63, 68, 61, 75, 58, 52, 61, 72, 59, 73, 64, 56, 50, 37, 50, 63, 70, 60, 67, 83, 52, 59, 58, 78, 53, 68, 65, 47, 69, 55, 61, 54, 74, 49, 64, 119, 55, 64, 43, 66, 56, 62, 72, 67, 107, 66, 58, 68, 70, 79, 55, 60, 81, 41, 59, 62, 74, 45, 43, 56, 65, 78, 50, 65, 76, 58, 88, 68, 76, 58, 61, 62, 69, 71, 61, 102, 65, 122, 48, 64, 53, 66, 54, 73, 53, 77, 75, 67, 71, 71, 75, 76, 71, 59, 57, 50, 63, 69, 56, 64, 73, 40, 85, 58, 72, 72, 59, 52, 58, 46, 70, 54, 65, 59, 71, 74, 56, 62, 57, 58, 58, 44, 41, 57, 79, 58, 56, 65, 61, 63, 68, 59, 85, 92, 76, 63, 65, 71, 80, 50, 66, 70, 63, 50, 90, 93, 86, 57, 107, 74, 75, 65, 55, 63, 61, 71, 58, 52, 60, 76, 67, 74, 57, 84, 60, 76, 61, 146, 62, 54, 59, 68, 74, 59, 61, 79, 63, 74, 60, 65, 71, 62, 76, 88, 53, 60, 66, 58, 120, 58, 59, 60, 52, 65, 59, 67, 164, 113, 67, 64, 66, 60, 48, 51, 54, 91, 80, 54, 78, 64, 60, 47, 50, 51, 62, 68, 66, 87, 57, 54, 46, 65, 45, 56, 60, 71, 65, 55, 70, 56, 55, 44, 113, 53, 68, 64, 42, 57, 57, 120, 46, 62, 53, 59, 76, 53, 42, 56, 53, 62, 56, 62, 57, 59, 51, 105, 33, 64, 46, 56, 53, 50, 74, 55, 76, 66, 95, 63, 60, 101, 87, 67, 62, 62, 80, 54, 59, 67, 76, 67, 64, 67, 70, 107, 72, 92, 66, 64, 64, 58, 59, 94, 58, 63, 76, 59, 61, 49, 58, 48, 70, 50, 44, 63, 59, 64, 54, 66, 70, 77, 58, 63, 68, 78, 63, 56, 53, 69, 60, 68, 57, 60, 47, 52, 65, 83, 59, 71, 90, 64, 69, 60, 65, 79, 87, 73, 70, 69, 61, 59, 74, 61, 66, 83, 80, 53, 59, 64, 63, 56, 64, 63, 58, 79, 62, 78, 77, 77, 66, 68, 56, 57, 56, 68, 67, 74, 77, 58, 71, 91, 79, 60, 60, 64, 85, 83, 69, 52, 71, 82, 73, 56, 62, 60, 69, 71, 50, 62, 56, 63, 52, 78, 85, 57, 47, 67, 69, 68, 75, 64, 70, 73, 60, 57, 99, 149, 59, 64, 130, 62, 69, 69, 50, 79, 63, 58, 77, 63, 80, 62, 110, 98, 55, 64, 68, 68, 77, 64, 57, 76, 71, 64, 52, 60, 71, 65, 79, 52, 63, 54, 72, 82, 48, 84, 52, 128, 62, 45, 70, 67, 116, 79, 72, 50, 60, 67, 79, 60, 64, 70, 41, 70, 68, 29, 56, 93, 64, 60, 50, 75, 56, 62, 58, 74, 73, 66, 61, 64, 88, 67, 68, 64, 58, 64, 58, 65, 83, 53, 61, 94, 69, 105, 67, 78, 74, 65, 66, 63, 94, 81, 66, 57, 70, 43, 63, 82, 75, 61, 68, 78, 72, 56, 64, 57, 77, 67, 68, 65, 62, 66, 70, 58, 60, 52, 64, 57, 68, 83, 86, 49, 64, 40, 51, 106, 79, 97, 61, 69, 90, 66, 63, 64, 83, 47, 74, 45, 55, 69, 64, 60, 87, 63, 72, 45, 60, 72, 54, 65, 71, 58, 66, 67, 59, 50, 69, 83, 69, 73, 66, 76, 80, 59, 74, 81, 61, 72, 65, 61, 74, 133, 58, 56, 77, 79, 51, 63, 58, 71, 80, 46, 71, 94, 64, 100, 58, 55, 53, 51, 71, 60, 50, 60, 57, 52, 71, 56, 68, 64, 56, 52, 65, 54, 87, 60, 82, 56, 69, 70, 90, 74, 61, 61, 63, 64, 38, 64, 50, 54, 82, 61, 67, 61, 70, 56, 47, 48, 72, 54, 71, 55, 54, 124, 61, 74, 68, 59, 55, 76, 66, 73, 57, 71, 57, 47, 56, 63, 60, 67, 50, 62, 65, 66, 63, 58, 52, 64, 61, 81, 65, 51, 63, 56, 49, 66, 71, 77, 61, 62, 60, 59, 53, 56, 84, 70, 82, 64, 54, 54, 49, 67, 69, 65, 65, 46, 52, 46, 74, 67, 81, 53, 56, 78, 81, 82, 56, 52, 64, 54, 67, 67, 66, 67, 60, 68, 67, 57, 72, 55, 60, 61, 55, 60, 126, 67, 59, 53, 64, 76, 63, 62, 54, 51, 63, 64, 63, 53, 56, 67, 68, 43, 52, 56, 65, 73, 55, 88, 66, 54, 69, 68, 60, 47, 56, 56, 73, 72, 68, 94, 58, 59, 62, 65, 62, 66, 61, 67, 61, 61, 112, 66, 71, 67, 56, 70, 57, 53, 74, 69, 75, 60, 56, 60, 71, 48, 57, 57, 77, 72, 69, 43, 53, 78, 40, 46, 84, 62, 60, 55, 51, 56, 69, 68, 44, 58, 86, 50, 74, 55, 69, 49, 68, 65, 49, 66, 67, 73, 69, 46, 57, 69, 60, 62, 64, 42, 45, 54, 63, 55, 112, 79, 56, 52, 77, 81, 47, 53, 55, 65, 66, 62, 65, 63, 64, 63, 48, 66, 63, 58, 71, 59, 66, 72, 65, 51, 49, 60, 56, 70, 55, 76, 36, 75, 65, 115, 60, 71, 50, 66, 50, 88, 61, 57, 61, 69, 55, 64, 57, 52, 41, 72, 69, 64, 77, 79, 94, 64, 50, 57, 54, 87, 66, 73, 68, 74, 60, 63, 83, 62, 56, 73, 66, 74, 61, 62, 54, 78, 48, 51, 62, 64, 72, 66, 55, 57, 66, 68, 75, 64, 50, 59, 65, 58, 69, 84, 51, 56, 64, 56, 57, 65, 55, 59, 56, 84, 61, 64, 62, 79, 53, 73, 64, 85, 59, 59, 56, 63, 62, 62, 81, 65, 57, 72, 47, 69, 70, 76, 60, 68, 66, 63, 53, 76, 77, 59, 61, 74, 55, 100, 65, 52, 70, 139, 66, 77, 60, 66, 97, 47, 46, 62, 62, 60, 80, 86, 74, 73, 62, 66, 62, 67, 68, 109, 69, 59, 65, 49, 63, 51, 73, 61, 59, 61, 58, 67, 57, 65, 58, 67, 51, 60, 72, 96, 76, 57, 85, 68, 53, 58, 142, 64, 55, 44, 93, 55, 70, 85, 59, 46, 65, 49, 121, 78, 62, 55, 66, 58, 122, 64, 56, 58, 50, 62, 71, 57, 64, 63, 67, 64, 84, 69, 74, 48, 69, 69, 73, 70, 66, 62, 63, 99, 67, 76, 86, 73, 60, 63, 73, 55, 69, 67, 79, 70, 87, 64, 63, 64, 50, 63, 67, 64, 69, 64, 61, 57, 56, 67, 63, 62, 54, 57, 70, 60, 54, 79, 68, 60, 77, 56, 69, 47, 61, 56, 52, 58, 42, 64, 39, 75, 57, 74, 75, 69, 62, 72, 63, 100, 63, 64, 57, 58, 59, 60, 56, 70, 70, 52, 45, 57, 152, 68, 71, 41, 60, 89, 66, 74, 50, 63, 69, 64, 66, 44, 40, 58, 54, 112, 62, 52, 55, 95, 67, 59, 78, 62, 55, 71, 62, 61, 55, 70, 71, 78, 58, 62, 57, 60, 63, 74, 69, 49, 54, 51, 77, 67, 57, 63, 77, 73, 67, 61, 56, 77, 62, 98, 60, 75, 65, 64, 67, 52, 73, 59, 67, 36, 55, 59, 72, 66, 68, 68, 70, 78, 93, 66, 58, 59, 57, 57, 57, 67, 68, 69, 119, 64, 66, 70, 52, 47, 61, 69, 56, 69, 52, 56, 59, 59, 64, 63, 60, 78, 53, 58, 71, 63, 58, 82, 60, 69, 117, 74, 62, 60, 68, 81, 75, 50, 45, 68, 56, 51, 69, 91, 71, 64, 61, 70, 64, 65, 45, 95, 69, 59, 80, 67, 64, 49, 77, 63, 52, 99, 72, 54, 65, 53, 60, 59, 61, 53, 53, 67, 53, 67, 53, 56, 74, 61, 63, 60, 86, 63, 62, 57, 47, 67, 74, 57, 61, 60, 65, 60, 71, 59, 67, 52, 60, 89, 67, 85, 70, 78, 67, 57, 62, 73, 61, 60, 73, 112, 59, 61, 53, 58, 56, 60, 82, 69, 70, 81, 62, 82, 83, 77, 65, 65, 58, 57, 73, 51, 62, 70, 71, 48, 55, 57, 59, 67, 60, 78, 62, 88, 85, 85, 59, 55, 69, 58, 63, 73, 67, 47, 54, 50, 73, 70, 88, 64, 68, 67, 84, 85, 65, 63, 66, 64, 50, 84, 48, 57, 61, 54, 75, 70, 73, 94, 68, 54, 77, 77, 59, 62, 68, 69, 71, 71, 93, 71, 68, 54, 95, 86, 67, 78, 67, 85, 66, 57, 52, 77, 105, 64, 70, 61, 85, 67, 76, 79, 95, 82, 46, 65, 56, 75, 88, 57, 44, 47, 56, 51, 66, 57, 74, 77, 42, 71, 62, 61, 66, 53, 91, 50, 62, 65, 66, 66, 51, 73, 79, 48, 72, 76, 65, 57, 67, 68, 55, 51, 59, 71, 61, 61, 53, 54, 61, 62, 64, 54, 72, 73, 51, 104, 58, 67, 68, 75, 62, 72, 60, 62, 60, 67, 83, 50, 71, 73, 73, 57, 72, 56, 65, 71, 65, 71, 67, 71, 69, 40, 61, 37, 65, 50, 89, 50, 64, 82, 45, 65, 62, 60, 80, 63, 55, 69, 55, 82, 65, 65, 59, 58, 65, 58, 83, 67, 55, 69, 78, 68, 80, 61, 91, 59, 53, 61, 66, 64, 64, 53, 61, 72, 52, 100, 60, 104, 121, 87, 72, 46, 73, 63, 36, 61, 50, 57, 66, 53, 48, 69, 48, 67, 69, 61, 70, 51, 65, 50, 57, 73, 80, 67, 50, 75, 76, 56, 43, 87, 55, 69, 89, 63, 77, 84, 73, 77, 53, 50, 74, 53, 65, 53, 48, 69, 44, 68, 68, 59, 66, 66, 69, 63, 66, 89, 60, 79, 58, 68, 56, 66, 63, 56, 49, 84, 75, 78, 55, 90, 69, 71, 67, 62, 104, 65, 74, 58, 58, 81, 61, 66, 84, 79, 85, 57, 50, 59, 40, 71, 88, 58, 46, 66, 53, 74, 51, 70, 54, 64, 61, 62, 67, 75, 49, 53, 77, 53, 60, 92, 75, 80, 67, 79, 69, 88, 61, 69, 76, 57, 103, 58, 58, 52, 63, 60, 49, 69, 79, 49, 56, 71, 88, 81, 54, 66, 80, 67, 53, 87, 88, 56, 54, 63, 63, 81, 59, 59, 61, 65, 64, 52, 86, 60, 61, 79, 51, 40, 73, 52, 81, 57, 58, 58, 70, 70, 66, 72, 76, 60, 39, 63, 48, 58, 104, 60, 43, 75, 65, 44, 98, 86, 59, 75, 62, 57, 67, 73, 81, 57, 64, 87, 76, 47, 60, 63, 110, 55, 44, 55, 59, 65, 60, 53, 57, 71, 59, 87, 75, 63, 116, 49, 69, 67, 48, 48, 60, 41, 108, 85, 86, 70, 55, 89, 70, 62, 66, 53, 96, 48, 75, 80, 106, 73, 50, 57, 59, 73, 69, 82, 65, 61, 49, 74, 60, 64, 73, 42, 59, 43, 67, 67, 114, 80, 71, 65, 57, 56, 61, 75, 49, 48, 57, 67, 45, 67, 80, 66, 70, 88, 63, 62, 91, 57, 60, 62, 76, 73, 40, 56, 65, 65, 62, 100, 60, 65, 60, 95, 47, 50, 70, 35, 88, 75, 71, 42, 83, 47, 67, 77, 46, 44, 84, 54, 61, 69, 55, 70, 71, 61, 72, 73, 64, 72, 68, 72, 51, 72, 123, 58, 57, 71, 69, 58, 71, 66, 70, 83, 86, 49, 54, 76, 63, 80, 45, 63, 64, 77, 56, 64, 71, 58, 65, 52, 62, 61, 82, 70, 74, 63, 72, 50, 85, 64, 68, 64, 67, 69, 48, 73, 78, 81, 78, 60, 56, 80, 62, 58, 73, 44, 62, 59, 90, 80, 63, 52, 59, 100, 56, 56, 66, 68, 41, 74, 65, 42, 60, 58, 82, 85, 62, 76, 59, 48, 63, 62, 77, 66, 63, 79, 52, 67, 80, 62, 62, 61, 61, 43, 58, 71, 54, 59, 82, 51, 84, 94, 74, 42, 77, 57, 78, 62, 63, 52, 59, 54, 87, 71, 81, 70, 69, 65, 61, 68, 54, 59, 63, 52, 78, 41, 57, 82, 60, 74, 47, 53, 56, 47, 101, 44, 45, 76, 70, 53, 81, 70, 59, 80, 54, 66, 62, 43, 70, 93, 76, 72, 70, 48, 103, 68, 48, 77, 110, 85, 82, 50, 47, 65, 61, 60, 44, 59, 67, 58, 85, 56, 96, 51, 75, 61, 71, 65, 72, 81, 52, 54, 45, 58, 103, 74, 49, 57, 42, 52, 61, 64, 88, 54, 53, 56, 69, 42, 91, 92, 65, 66, 89, 91, 75, 96, 85, 71, 73, 72, 44, 66, 52, 73, 81, 84, 52, 56, 71, 66, 58, 78, 83, 69, 72, 68, 72, 68, 72, 44, 80, 67, 77, 61, 42, 94, 75, 47, 51, 61, 59, 59, 52, 70, 81, 78, 81, 49, 84, 67, 66, 67, 63, 63, 57, 57, 77, 66, 87, 50, 68, 66, 67, 61, 64, 66, 87, 61, 47, 73, 82, 63, 65, 75, 61, 60, 59, 51, 78, 78, 61, 62, 61, 51, 81, 64, 63, 89, 50, 93, 58, 67, 77, 47, 79, 57, 68, 66, 71, 75, 74, 69, 61, 55, 65, 83, 64, 66, 69, 72, 57, 45, 48, 106, 76, 60, 72, 58, 63, 58, 73, 90, 50, 64, 55, 81, 72, 64, 103, 80, 36, 99, 68, 49, 68, 57, 44, 87, 61, 63, 80, 81, 107, 56, 76, 71, 80, 60, 62, 57, 82, 57, 89, 57, 70, 74, 55, 66, 54, 73, 64, 60, 96, 54, 65, 59, 79, 91, 66, 109, 70, 57, 63, 58, 64, 68, 80, 75, 53, 74, 70, 110, 78, 56, 84, 91, 59, 62, 43, 83, 65, 63, 76, 61, 57, 45, 73, 72, 52, 60, 70, 74, 81, 91, 53, 49, 62, 81, 83, 83, 81, 66, 63, 60, 64, 76, 50, 84, 61, 58, 92, 55, 65, 39, 71, 83, 63, 68, 51, 56, 61, 45, 81, 54, 69, 58, 99, 83, 50, 78, 71, 58, 75, 63, 69, 59, 74, 65, 51, 77, 69, 55, 52, 49, 82, 60, 67, 61, 64, 67, 48, 59, 68, 51, 67, 71, 72, 96, 80, 92, 79, 80, 54, 59, 66, 81, 63, 66, 67, 65, 59, 50, 64, 73, 54, 61, 79, 72, 76, 67, 63, 57, 61, 72, 75, 81, 65, 51, 47, 62, 66, 70, 59, 50, 52, 77, 72, 83, 43, 70, 81, 54, 60, 67, 79, 81, 61, 61, 57, 62, 64, 65, 73, 72, 88, 67, 49, 26, 46, 58, 59, 58, 112, 45, 85, 86, 60, 74, 63, 82, 72, 113, 63, 61, 75, 89, 69, 47, 56, 59, 59, 55, 70, 87, 58, 70, 59, 59, 61, 47, 63, 63, 68, 70, 128, 49, 80, 64, 71, 97, 70, 68, 69, 73, 101, 56, 60, 67, 38, 61, 120, 75, 63, 80, 53, 52, 53, 77, 54, 44, 68, 53, 61, 70, 62, 60, 60, 83, 68, 79, 56, 61, 65, 61, 50, 68, 75, 70, 85, 61, 89, 51, 58, 59, 78, 67, 79, 66, 74, 66, 66, 70, 70, 57, 92, 67, 65, 65, 70, 77, 73, 57, 62, 134, 66, 54, 96, 66, 73, 53, 65, 53, 73, 62, 72, 59, 57, 68, 88, 89, 70, 76, 73, 72, 67, 66, 41, 55, 59, 53, 57, 59, 49, 65, 63, 65, 43, 71, 63, 79, 61, 61, 84, 76, 59, 84, 69, 62, 56, 70, 70, 62, 104, 79, 71, 66, 85, 45, 49, 38, 47, 54, 52, 72, 81, 62, 64, 73, 53, 109, 88, 58, 51, 69, 94, 56, 51, 82, 56, 68, 59, 80, 68, 66, 75, 56, 48, 83, 58, 54, 79, 64, 61, 69, 70, 72, 60, 62, 68, 60, 73, 63, 73, 62, 67, 69, 81, 77, 55, 65, 63, 93, 62, 70, 64, 86, 71, 48, 81, 74, 48, 76, 76, 83, 57, 43, 55, 73, 56, 56, 62, 55, 74, 81, 96, 66, 98, 72, 78, 83, 52, 77, 91, 67, 70, 53, 57, 68, 56, 56, 48, 79, 64, 94, 59, 68, 55, 55, 59, 53, 60, 47, 67, 60, 93, 83, 45, 60, 73, 51, 65, 69, 73, 58, 69, 59, 57, 63, 59, 59, 66, 92, 64, 50, 73, 61, 67, 76, 75, 60, 57, 56, 67, 72, 59, 94, 72, 65, 82, 60, 66, 73, 95, 65, 89, 56, 60, 68, 54, 31, 78, 62, 77, 44, 51, 49, 60, 111, 68, 74, 64, 51, 59, 62, 41, 64, 101, 116, 48, 51, 64, 59, 60, 58, 63, 83, 57, 78, 33, 80, 72, 64, 48, 48, 95, 74, 50, 59, 48, 57, 88, 40, 84, 70, 62, 41, 78, 44, 67, 58, 46, 57, 67, 65, 124, 61, 84, 58, 57, 59, 82, 60, 68, 74, 76, 61, 66, 67, 55, 50, 83, 70, 74, 55, 64, 66, 97, 92, 64, 97, 70, 76, 67, 50, 51, 66, 76, 63, 68, 105, 56, 82, 90, 59, 62, 87, 54, 55, 69, 69, 69, 73, 64, 68, 57, 70, 67, 65, 57, 57, 63, 50, 51, 75, 59, 63, 68, 66, 74, 54, 69, 65, 77, 52, 63, 75, 56, 70, 70, 98, 85, 65, 73, 67, 72, 58, 59, 49, 75, 73, 79, 75, 61, 41, 48, 60, 48, 89, 58, 75, 72, 83, 79, 66, 50, 54, 68, 90, 67, 70, 87, 50, 59, 61, 60, 74, 57, 59, 51, 50, 47, 76, 66, 75, 59, 72, 50, 66, 76, 60, 57, 66, 43, 52, 66, 61, 62, 62, 60, 64, 57, 58, 102, 77, 51, 58, 67, 76, 57, 60, 50, 72, 72, 107, 51, 70, 82, 62, 62, 71, 66, 44, 85, 37, 67, 62, 61, 74, 85, 106, 72, 78, 89, 58, 87, 74, 44, 66, 45, 92, 61, 47, 70, 51, 73, 57, 58, 71, 61, 70, 69, 73, 66, 60, 62, 56, 63, 59, 68, 77, 61, 54, 54, 61, 57, 57, 72, 65, 61, 60, 58, 66, 54, 61, 75, 87, 28, 72, 74, 54, 78, 61, 63, 74, 72, 67, 57, 43, 77, 95, 40, 90, 81, 58, 53, 52, 66, 79, 76, 61, 57, 91, 61, 72, 63, 57, 84, 80, 70, 49, 82, 57, 109, 67, 75, 64, 69, 84, 83, 62, 52, 59, 82, 74, 75, 67, 53, 71, 55, 60, 55, 68, 75, 68, 53, 65, 76, 61, 74, 51, 64, 65, 82, 63, 54, 54, 69, 48, 61, 65, 56, 68, 66, 70, 75, 69, 53, 61, 61, 76, 96, 57, 59, 72, 63, 51, 72, 82, 65, 70, 66, 61, 74, 49, 78, 60, 71, 42, 58, 66, 56, 68, 48, 77, 66, 68, 57, 78, 68, 57, 83, 67, 56, 52, 76, 67, 62, 57, 57, 59, 85, 60, 55, 78, 57, 64, 51, 69, 81, 66, 68, 75, 54, 56, 50, 71, 70, 64, 42, 59, 61, 60, 53, 53, 54, 61, 70, 67, 72, 58, 59, 54, 50, 59, 82, 47, 56, 86, 66, 65, 66, 72, 57, 69, 50, 68, 79, 59, 56, 85, 85, 74, 73, 46, 54, 63, 84, 65, 61, 82, 59, 65, 55, 90, 60, 84, 93, 86, 51, 70, 86, 58, 55, 70, 59, 56, 73, 66, 72, 66, 58, 64, 64, 73, 73, 70, 59, 69, 65, 65, 81, 78, 63, 65, 56, 62, 53, 61, 81, 71, 61, 83, 58, 73, 71, 58, 55, 49, 61, 41, 48, 79, 77, 101, 52, 51, 63, 63, 45, 61, 52, 87, 63, 53, 56, 61, 72, 69, 64, 74, 70, 52, 75, 70, 74, 56, 64, 69, 45, 57, 71, 61, 57, 72, 83, 42, 46, 56, 51, 89, 65, 61, 53, 64, 61, 73, 76, 71, 53, 64, 68, 55, 47, 81, 92, 49, 93, 63, 70, 61, 52, 65, 52, 56, 79, 62, 68, 92, 83, 33, 69, 82, 76, 70, 67, 69, 70, 59, 54, 69, 71, 80, 71, 45, 71, 52, 60, 85, 67, 78, 82, 69, 81, 49, 69, 58, 68, 60, 65, 84, 66, 76, 72, 67, 58, 106, 47, 72, 43, 65, 68, 65, 56, 103, 36, 86, 91, 87, 75, 62, 75, 59, 64, 55, 78, 84, 73, 101, 57, 72, 39, 87, 78, 82, 56, 65, 56, 64, 68, 35, 60, 56, 59, 96, 59, 85, 55, 72, 73, 72, 125, 60, 80, 71, 68, 47, 54, 85, 78, 51, 67, 77, 81, 73, 67, 68, 65, 64, 41, 66, 58, 64, 66, 62, 49, 51, 57, 80, 57, 70, 82, 50, 53, 84, 52, 64, 71, 92, 55, 69, 69, 93, 46, 66, 57, 115, 62, 68, 68, 44, 66, 62, 74, 73, 61, 83, 81, 52, 47, 44, 72, 44, 51, 66, 95, 63, 86, 74, 67, 74, 64, 68, 66, 64, 65, 85, 61, 56, 66, 44, 71, 69, 92, 66, 93, 42, 71, 56, 67, 56, 78, 81, 72, 70, 63, 57, 55, 70, 53, 60, 66, 78, 49, 86, 61, 67, 79, 54, 58, 61, 132, 52, 61, 67, 63, 54, 66, 42, 50, 72, 61, 88, 54, 65, 43, 75, 60, 66, 65, 85, 50, 51, 57, 81, 44, 95, 59, 66, 50, 54, 55, 58, 60, 47, 58, 45, 51, 82, 77, 62, 71, 47, 61, 80, 59, 85, 78, 66, 56, 59, 65, 60, 55, 76, 54, 49, 57, 77, 43, 72, 61, 75, 42, 84, 70, 64, 67, 58, 74, 60, 45, 86, 55, 94, 70, 60, 57, 82, 71, 56, 81, 66, 49, 97, 55, 87, 48, 97, 69, 69, 71, 90, 97, 58, 56, 49, 74, 60, 77, 41, 58, 69, 55, 71, 65, 68, 60, 47, 71, 60, 65, 50, 66, 82, 64, 56, 61, 57, 70, 44, 50, 66, 57, 50, 51, 55, 60, 73, 98, 89, 69, 46, 65, 95, 68, 48, 46, 50, 66, 57, 45, 50, 48, 52, 99, 70, 52, 71, 64, 57, 73, 53, 70, 63, 61, 63, 65, 58, 67, 72, 54, 49, 63, 47, 75, 53, 83, 55, 54, 99, 63, 51, 51, 54, 47, 64, 72, 67, 47, 76, 62, 59, 51, 58, 55, 71, 47, 55, 74, 109, 46, 62, 88, 89, 84, 68, 63, 68, 32, 86, 54, 65, 60, 80, 54, 141, 82, 65, 64, 63, 53, 101, 94, 61, 64, 56, 67, 58, 91, 86, 87, 78, 79, 59, 60, 57, 54, 79, 97, 60, 47, 103, 86, 59, 64, 61, 67, 68, 78, 56, 74, 68, 60, 56, 67, 71, 69, 57, 68, 58, 42, 68, 66, 60, 57, 71, 65, 51, 60, 69, 75, 54, 70, 59, 54, 61, 50, 60, 62, 41, 68, 73, 48, 55, 53, 64, 59, 61, 76, 53, 94, 73, 62, 70, 61, 71, 66, 58, 48, 69, 69, 60, 61, 57, 45, 49, 64, 66, 70, 69, 79, 64, 67, 60, 70, 64, 69, 55, 52, 87, 54, 56, 98, 45, 75, 40, 66, 52, 68, 57, 59, 87, 57, 59, 74, 90, 75, 111, 68, 48, 106, 82, 55, 72, 71, 63, 81, 59, 70, 67, 56, 57, 88, 52, 55, 111, 63, 65, 79, 69, 66, 74, 64, 114, 53, 65, 98, 81, 64, 73, 91, 58, 102, 64, 72, 58, 64, 63, 63, 83, 53, 50, 71, 64, 70, 66, 64, 81, 59, 62, 55, 81, 70, 63, 37, 79, 72, 83, 63, 80, 74, 43, 130, 61, 62, 75, 70, 55, 50, 49, 87, 53, 62, 67, 57, 120, 56, 51, 71, 57, 74, 74, 64, 66, 66, 74, 97, 67, 65, 42, 73, 58, 63, 63, 70, 73, 66, 52, 53, 60, 61, 63, 80, 66, 52, 66, 65, 38, 55, 80, 67, 80, 98, 55, 73, 51, 61, 72, 46, 87, 85, 97, 60, 61, 79, 66, 74, 75, 43, 61, 54, 68, 64, 73, 56, 51, 62, 55, 69, 62, 66, 77, 70, 83, 59, 41, 85, 65, 61, 91, 61, 82, 95, 58, 72, 51, 54, 60, 51, 60, 57, 61, 104, 70, 45, 56, 70, 67, 62, 53, 69, 54, 63, 49, 64, 71, 65, 55, 54, 50, 70, 52, 54, 84, 63, 94, 91, 49, 85, 56, 49, 43, 69, 58, 94, 61, 67, 47, 51, 82, 35, 75, 58, 54, 74, 43, 66, 66, 79, 67, 71, 65, 82, 48, 50, 76, 76, 46, 74, 80, 62, 55, 73, 129, 56, 57, 59, 52, 57, 75, 64, 72, 66, 57, 68, 68, 67, 67, 58, 68, 76, 49, 56, 76, 47, 52, 59, 62, 48, 73, 69, 67, 91, 38, 132, 59, 45, 58, 64, 60, 51, 83, 69, 55, 58, 60, 47, 51, 67, 52, 83, 49, 70, 83, 59, 91, 57, 55, 56, 87, 65, 53, 67, 63, 88, 54, 64, 63, 74, 59, 59, 62, 89, 66, 55, 37, 76, 76, 38, 59, 67, 51, 69, 55, 64, 68, 57, 52, 52, 56, 51, 104, 55, 48, 56, 58, 56, 110, 61, 59, 68, 58, 56, 74, 46, 69, 66, 64, 70, 57, 59, 49, 58, 65, 68, 54, 74, 58, 62, 71, 73, 57, 53, 60, 63, 60, 74, 54, 50, 66, 100, 58, 73, 47, 69, 52, 77, 63, 58, 72, 66, 50, 49, 60, 48, 61, 77, 75, 79, 53, 52, 75, 86, 92, 98, 55, 64, 50, 105, 64, 64, 67, 74, 59, 62, 86, 66, 76, 55, 62, 67, 64, 70, 71, 49, 92, 73, 71, 59, 58, 61, 46, 70, 53, 73, 78, 69, 67, 53, 61, 94, 60, 93, 57, 52, 57, 58, 88, 54, 63, 64, 60, 62, 78, 44, 71, 56, 68, 75, 72, 64, 74, 58, 62, 64, 57, 69, 93, 62, 63, 51, 66, 67, 57, 108, 61, 53, 66, 90, 50, 58, 83, 67, 58, 61, 67, 54, 76, 66, 76, 95, 73, 76, 54, 51, 64, 71, 61, 87, 54, 58, 57, 71, 61, 51, 61, 70, 69, 83, 144, 58, 51, 68, 98, 71, 59, 81, 55, 77, 56, 53, 59, 81, 55, 78, 61, 50, 58, 73, 65, 55, 58, 56, 90, 101, 59, 80, 59, 51, 70, 68, 59, 68, 91, 45, 57, 69, 84, 50, 66, 71, 99, 69, 94, 56, 45, 63, 37, 87, 63, 54, 57, 70, 56, 78, 90, 73, 59, 77, 74, 80, 52, 53, 49, 78, 54, 71, 122, 63, 66, 76, 68, 48, 45, 48, 99, 69, 49, 61, 66, 57, 81, 54, 70, 60, 46, 52, 52, 67, 55, 60, 67, 61, 61, 64, 76, 45, 71, 49, 66, 85, 60, 97, 49, 71, 66, 52, 72, 55, 72, 84, 67, 72, 78, 62, 61, 65, 69, 59, 63, 60, 87, 73, 55, 73, 60, 88, 119, 53, 44, 52, 69, 60, 73, 68, 65, 65, 82, 73, 66, 61, 71, 88, 46, 83, 77, 67, 73, 77, 54, 42, 64, 54, 90, 70, 51, 77, 46, 61, 70, 70, 66, 76, 53, 75, 51, 81, 165, 83, 61, 66, 58, 69, 57, 78, 47, 60, 57, 99, 51, 56, 61, 73, 51, 75, 73, 79, 65, 56, 76, 78, 60, 80, 72, 78, 51, 55, 70, 55, 57, 54, 77, 59, 74, 69, 85, 78, 56, 49, 59, 68, 66, 84, 72, 69, 64, 79, 56, 59, 80, 61, 84, 82, 56, 72, 72, 83, 92, 52, 63, 57, 76, 53, 88, 60, 72, 54, 59, 78, 88, 67, 111, 68, 63, 61, 62, 126, 65, 54, 94, 71, 68, 44, 63, 72, 64, 67, 79, 58, 51, 66, 69, 65, 63, 62, 61, 73, 71, 66, 39, 60, 63, 61, 55, 96, 69, 41, 64, 53, 56, 67, 56, 82, 67, 86, 59, 79, 86, 47, 57, 73, 51, 60, 67, 79, 44, 71, 81, 55, 78, 50, 62, 59, 93, 60, 86, 50, 132, 66, 66, 52, 58, 59, 65, 100, 84, 63, 101, 50, 81, 63, 57, 54, 58, 59, 74, 63, 64, 66, 72, 73, 67, 81, 71, 56, 55, 67, 73, 59, 86, 70, 53, 67, 61, 64, 51, 64, 67, 66, 67, 55, 68, 58, 65, 68, 66, 119, 56, 56, 75, 64, 70, 76, 63, 70, 66, 75, 75, 64, 73, 71, 110, 52, 65, 60, 50, 66, 55, 63, 94, 106, 59, 97, 51, 63, 103, 61, 63, 77, 62, 56, 46, 78, 68, 92, 67, 57, 72, 74, 85, 59, 68, 59, 63, 43, 40, 62, 67, 65, 81, 68, 43, 61, 68, 81, 94, 101, 46, 63, 81, 65, 86, 60, 71, 55, 63, 59, 66, 56, 71, 70, 69, 64, 66, 79, 55, 59, 68, 44, 52, 50, 69, 71, 57, 90, 51, 70, 82, 58, 61, 57, 76, 102, 72, 57, 70, 66, 66, 59, 58, 47, 58, 62, 67, 58, 62, 74, 67, 82, 71, 49, 74, 56, 78, 58, 70, 109, 55, 55, 60, 54, 60, 85, 64, 47, 76, 76, 69, 62, 48, 67, 52, 80, 48, 64, 75, 74, 64, 46, 67, 65, 82, 59, 72, 67, 80, 66, 62, 60, 69, 64, 83, 60, 93, 65, 77, 73, 93, 41, 52, 53, 50, 52, 75, 42, 57, 57, 62, 53, 34, 52, 66, 72, 51, 67, 67, 71, 41, 57, 61, 75, 76, 53, 65, 52, 69, 54, 66, 63, 61, 60, 68, 87, 71, 67, 61, 80, 51, 45, 68, 90, 71, 57, 65, 86, 57, 82, 66, 53, 63, 67, 64, 51, 45, 63, 72, 61, 56, 77, 50, 81, 56, 60, 78, 72, 62, 55, 48, 73, 60, 72, 61, 73, 53, 68, 70, 73, 64, 65, 77, 40, 83, 84, 51, 54, 57, 49, 54, 61, 54, 68, 61, 54, 59, 43, 87, 67, 65, 72, 69, 60, 56, 65, 67, 72, 68, 63, 69, 73, 72, 68, 54, 54, 95, 63, 55, 46, 66, 52, 63, 56, 66, 49, 65, 59, 49, 64, 78, 43, 70, 53, 58, 68, 69, 74, 55, 61, 86, 70, 61, 58, 48, 85, 78, 66, 89, 77, 64, 96, 56, 67, 65, 75, 50, 65, 62, 48, 88, 60, 86, 65, 66, 56, 59, 86, 46, 61, 63, 67, 80, 69, 49, 87, 63, 34, 67, 73, 51, 70, 50, 45, 62, 66, 82, 76, 46, 60, 96, 59, 67, 53, 60, 56, 89, 68, 83, 73, 59, 52, 106, 59, 63, 64, 46, 52, 56, 86, 80, 64, 51, 53, 52, 72, 57, 50, 63, 112, 62, 74, 48, 43, 81, 56, 70, 55, 74, 52, 66, 152, 67, 66, 69, 64, 60, 114, 70, 73, 62, 67, 49, 57, 53, 53, 70, 64, 73, 60, 50, 62, 74, 75, 77, 81, 59, 77, 64, 77, 58, 56, 52, 52, 54, 56, 56, 78, 71, 67, 64, 50, 63, 76, 65, 87, 31, 65, 57, 72, 69, 79, 58, 52, 54, 56, 66, 59, 40, 58, 55, 55, 66, 73, 50, 69, 76, 62, 114, 63, 66, 66, 45, 61, 53, 133, 61, 60, 95, 57, 45, 44, 54, 79, 72, 58, 67, 57, 63, 66, 69, 95, 76, 68, 51, 64, 70, 48, 50, 61, 54, 71, 79, 72, 65, 60, 55, 69, 47, 69, 78, 28, 48, 65, 70, 36, 67, 67, 59, 65, 87, 105, 57, 61, 93, 53, 55, 45, 47, 65, 63, 57, 69, 60, 51, 50, 52, 72, 85, 69, 52, 67, 54, 50, 69, 44, 64, 68, 60, 49, 61, 69, 68, 62, 75, 113, 68, 66, 72, 65, 61, 58, 58, 71, 70, 50, 75, 53, 53, 72, 81, 75, 60, 56, 64, 93, 58, 64, 38, 52, 62, 69, 69, 75, 66, 56, 93, 39, 56, 62, 57, 59, 109, 75, 55, 60, 90, 59, 57, 77, 47, 60, 60, 55, 71, 62, 56, 55, 102, 68, 80, 59, 67, 60, 56, 56, 80, 64, 54, 56, 69, 58, 58, 88, 66, 41, 78, 79, 55, 60, 52, 41, 79, 54, 85, 67, 71, 61, 67, 72, 76, 93, 44, 60, 67, 67, 61, 79, 70, 85, 52, 62, 58, 50, 53, 63, 72, 64, 47, 36, 77, 83, 85, 68, 41, 68, 61, 74, 74, 47, 54, 72, 60, 71, 48, 44, 75, 61, 59, 56, 50, 68, 70, 58, 67, 61, 59, 91, 90, 62, 64, 54, 63, 58, 72, 76, 60, 63, 40, 55, 128, 55, 84, 54, 72, 89, 50, 63, 61, 60, 61, 66, 64, 79, 56, 78, 59, 72, 51, 69, 77, 44, 58, 92, 72, 67, 53, 71, 113, 55, 87, 63, 52, 75, 64, 56, 88, 67, 107, 54, 56, 67, 53, 76, 63, 53, 67, 64, 46, 64, 75, 45, 57, 70, 61, 61, 83, 48, 61, 62, 67, 45, 55, 66, 65, 54, 71, 65, 75, 102, 66, 59, 118, 47, 71, 34, 43, 76, 55, 56, 50, 71, 79, 65, 80, 66, 102, 66, 69, 57, 51, 68, 60, 65, 63, 95, 77, 53, 43, 49, 65, 72, 57, 67, 42, 49, 54, 102, 130, 59, 64, 95, 102, 89, 60, 96, 41, 58, 64, 52, 58, 91, 34, 53, 54, 53, 64, 76, 65, 57, 75, 70, 72, 46, 75, 64, 61, 93, 47, 85, 54, 110, 67, 102, 61, 75, 45, 66, 61, 121, 59, 66, 74, 67, 70, 54, 74, 59, 62, 72, 57, 61, 93, 61, 51, 45, 72, 47, 82, 60, 53, 63, 68, 75, 62, 60, 92, 81, 56, 71, 58, 58, 60, 73, 51, 82, 43, 52, 83, 54, 57, 51, 74, 44, 49, 49, 60, 53, 55, 61, 61, 58, 51, 60, 64, 103, 50, 66, 66, 74, 74, 66, 67, 72, 87, 76, 67, 55, 49, 58, 71, 60, 83, 47, 58, 78, 49, 73, 60, 51, 67, 59, 80, 66, 70, 67, 57, 57, 105, 77, 55, 81, 51, 48, 68, 59, 70, 105, 53, 64, 69, 74, 47, 44, 75, 69, 94, 78, 61, 87, 52, 44, 62, 59, 53, 59, 57, 67, 81, 64, 54, 72, 50, 79, 56, 47, 69, 64, 80, 58, 57, 51, 51, 76, 80, 65, 83, 48, 49, 60, 54, 64, 87, 39, 50, 50, 80, 57, 62, 69, 62, 76, 51, 109, 58, 66, 58, 71, 84, 61, 69, 61, 72, 102, 55, 75, 58, 59, 58, 51, 57, 59, 74, 65, 68, 54, 72, 70, 65, 65, 76, 54, 64, 69, 54, 91, 58, 61, 70, 57, 58, 64, 90, 84, 79, 62, 53, 64, 52, 54, 67, 64, 98, 66, 71, 61, 57, 78, 57, 81, 63, 57, 64, 42, 77, 70, 52, 86, 70, 63, 59, 80, 54, 51, 62, 80, 61, 69, 61, 58, 64, 76, 62, 72, 58, 55, 65, 60, 55, 59, 80, 59, 72, 57, 54, 57, 60, 55, 69, 80, 101, 75, 63, 64, 69, 67, 46, 61, 55, 68, 70, 81, 69, 58, 48, 51, 72, 151, 79, 51, 61, 52, 76, 75, 59, 71, 71, 51, 64, 66, 55, 66, 62, 61, 60, 56, 46, 58, 64, 75, 66, 71, 79, 60, 85, 68, 81, 51, 78, 58, 59, 72, 69, 61, 56, 78, 81, 50, 61, 75, 58, 55, 51, 51, 52, 73, 70, 73, 67, 76, 64, 58, 61, 68, 67, 63, 49, 52, 57, 60, 57, 44, 76, 61, 53, 93, 59, 112, 81, 56, 56, 69, 73, 73, 79, 77, 62, 74, 60, 66, 67, 65, 70, 66, 60, 61, 68, 50, 75, 57, 75, 62, 62, 67, 60, 68, 52, 61, 73, 80, 81, 60, 100, 51, 48, 81, 67, 50, 85, 70, 56, 64, 62, 77, 71, 42, 68, 64, 57, 60, 62, 68, 60, 60, 67, 59, 56, 48, 53, 68, 62, 61, 77, 83, 62, 62, 81, 43, 62, 78, 83, 76, 69, 72, 65, 59, 57, 59, 75, 48, 89, 67, 47, 67, 69, 69, 58, 60, 67, 70, 73, 59, 67, 42, 52, 50, 60, 72, 63, 67, 59, 81, 58, 52, 65, 49, 62, 62, 66, 80, 104, 66, 72, 75, 61, 68, 58, 64, 80, 58, 55, 57, 73, 58, 59, 61, 58, 52, 61, 67, 61, 78, 51, 56, 64, 57, 67, 61, 71, 64, 59, 64, 52, 69, 67, 56, 78, 58, 65, 50, 77, 61, 63, 86, 62, 80, 74, 60, 60, 64, 47, 80, 79, 68, 53, 66, 54, 71, 59, 83, 69, 54, 71, 73, 52, 82, 63, 66, 59, 64, 80, 89, 63, 60, 42, 50, 55, 62, 63, 67, 83, 58, 75, 50, 96, 68, 64, 70, 61, 44, 55, 68, 70, 65, 46, 101, 59, 69, 70, 68, 51, 46, 94, 72, 83, 76, 42, 78, 49, 50, 58, 59, 80, 70, 54, 57, 105, 71, 63, 54, 82, 47, 57, 65, 81, 70, 97, 57, 73, 70, 73, 58, 72, 71, 59, 60, 54, 65, 59, 62, 62, 99, 76, 55, 66, 62, 60, 70, 63, 68, 64, 74, 62, 56, 54, 80, 79, 68, 67, 75, 67, 61, 67, 46, 58, 79, 91, 58, 71, 51, 48, 56, 76, 72, 47, 58, 57, 65, 65, 88, 64, 63, 68, 73, 49, 63, 52, 59, 81, 71, 42, 56, 68, 50, 85, 54, 56, 53, 62, 63, 67, 39, 58, 51, 57, 122, 85, 56, 51, 64, 72, 55, 75, 65, 65, 70, 47, 77, 70, 62, 64, 74, 60, 47, 54, 69, 61, 72, 67, 61, 106, 56, 58, 73, 70, 64, 93, 52, 57, 70, 71, 88, 57, 44, 59, 47, 56, 65, 60, 61, 71, 63, 67, 44, 60, 63, 70, 68, 75, 84, 69, 63, 58, 55, 95, 76, 70, 65, 69, 57, 63, 65, 95, 48, 49, 49, 57, 68, 59, 83, 71, 86, 53, 46, 68, 58, 79, 62, 76, 57, 88, 62, 86, 70, 74, 54, 48, 73, 55, 69, 79, 64, 55, 59, 75, 93, 69, 64, 61, 56, 67, 69, 86, 59, 63, 56, 60, 68, 71, 59, 70, 74, 74, 61, 61, 50, 62, 60, 60, 124, 50, 89, 94, 98, 74, 80, 82, 58, 32, 70, 65, 66, 61, 59, 58, 86, 56, 77, 69, 55, 58, 49, 78, 62, 65, 58, 70, 66, 70, 70, 72, 61, 54, 65, 74, 69, 61, 75, 53, 66, 90, 61, 66, 39, 55, 61, 95, 69, 62, 65, 74, 58, 63, 41, 57, 48, 66, 61, 71, 66, 56, 67, 74, 66, 88, 63, 87, 51, 67, 56, 69, 45, 61, 48, 57, 90, 65, 87, 58, 51, 59, 63, 69, 58, 51, 89, 61, 75, 71, 57, 62, 67, 79, 59, 70, 75, 56, 79, 60, 60, 69, 53, 57, 55, 71, 65, 58, 68, 82, 64, 67, 53, 58, 64, 89, 74, 74, 57, 68, 44, 81, 82, 59, 55, 89, 78, 43, 70, 49, 81, 65, 96, 51, 55, 65, 77, 72, 67, 111, 52, 64, 74, 65, 82, 68, 66, 59, 68, 86, 49, 68, 75, 72, 65, 54, 58, 54, 76, 70, 72, 74, 71, 56, 89, 60, 64, 122, 68, 53, 104, 62, 76, 74, 81, 62, 62, 51, 94, 60, 62, 88, 68, 67, 86, 83, 80, 76, 68, 75, 49, 65, 66, 64, 88, 83, 79, 66, 77, 47, 58, 51, 92, 60, 79, 56, 56, 61, 74, 63, 59, 86, 64, 52, 131, 64, 63, 65, 73, 67, 61, 68, 67, 63, 47, 58, 58, 80, 78, 82, 68, 53, 61, 81, 46, 47, 61, 88, 62, 54, 98, 55, 96, 71, 43, 54, 65, 56, 63, 67, 89, 67, 64, 66, 79, 62, 100, 68, 78, 39, 72, 56, 52, 68, 54, 67, 67, 109, 56, 56, 56, 54, 60, 66, 68, 55, 106, 74, 53, 59, 91, 80, 76, 39, 64, 80, 59, 58, 68, 56, 80, 78, 52, 61, 51, 43, 58, 52, 62, 68, 48, 60, 71, 70, 52, 66, 51, 80, 64, 45, 70, 90, 70, 74, 73, 63, 57, 55, 120, 54, 71, 72, 91, 89, 44, 59, 70, 81, 52, 77, 79, 72, 61, 81, 44, 74, 72, 97, 62, 76, 64, 75, 68, 70, 55, 49, 75, 69, 66, 64, 64, 68, 68, 55, 81, 48, 61, 70, 49, 55, 73, 60, 66, 87, 41, 74, 70, 65, 65, 64, 79, 59, 123, 53, 69, 81, 61, 53, 63, 49, 80, 53, 75, 41, 54, 51, 46, 65, 70, 62, 66, 77, 61, 91, 67, 54, 62, 43, 79, 64, 59, 47, 55, 117, 94, 78, 74, 81, 76, 77, 77, 83, 47, 71, 78, 77, 93, 58, 60, 55, 59, 68, 49, 62, 51, 52, 65, 97, 57, 42, 68, 55, 71, 57, 56, 69, 69, 81, 69, 64, 74, 51, 84, 62, 81, 65, 90, 43, 62, 77, 58, 90, 64, 65, 38, 61, 58, 68, 62, 47, 69, 58, 67, 52, 80, 69, 67, 51, 72, 64, 50, 57, 67, 81, 65, 67, 57, 89, 63, 71, 58, 68, 70, 87, 71, 50, 55, 94, 83, 47, 34, 74, 57, 70, 50, 50, 102, 60, 67, 57, 69, 67, 68, 48, 46, 67, 55, 39, 72, 76, 56, 44, 96, 70, 85, 54, 66, 71, 66, 74, 52, 72, 73, 69, 59, 49, 49, 80, 50, 75, 56, 54, 76, 58, 95, 69, 78, 63, 46, 55, 83, 65, 71, 70, 56, 59, 75, 51, 86, 68, 57, 68, 69, 62, 59, 48, 64, 62, 64, 70, 53, 48, 50, 64, 106, 66, 58, 59, 63, 50, 56, 68, 67, 68, 45, 79, 69, 72, 65, 64, 75, 56, 92, 73, 52, 107, 86, 40, 60, 92, 73, 74, 59, 52, 73, 66, 45, 52, 55, 81, 54, 62, 52, 79, 66, 68, 62, 57, 68, 78, 71, 53, 67, 64, 69, 86, 76, 73, 79, 98, 79, 63, 80, 67, 55, 51, 64, 55, 51, 64, 101, 60, 65, 76, 58, 66, 51, 57, 118, 68, 64, 54, 76, 78, 59, 72, 83, 54, 53, 71, 80, 76, 52, 55, 62, 69, 73, 64, 61, 71, 64, 63, 54, 70, 61, 55, 32, 66, 54, 61, 79, 67, 75, 62, 60, 72, 68, 59, 67, 57, 75, 48, 65, 44, 47, 63, 78, 47, 50, 68, 45, 72, 68, 56, 67, 75, 57, 106, 49, 51, 59, 59, 59, 60, 56, 84, 79, 55, 67, 47, 78, 87, 54, 59, 82, 69, 49, 43, 69, 61, 66, 52, 68, 65, 48, 57, 69, 52, 58, 59, 65, 70, 70, 63, 47, 125, 51, 61, 56, 72, 72, 82, 72, 80, 60, 47, 72, 89, 79, 59, 46, 77, 66, 70, 63, 71, 46, 68, 68, 89, 86, 61, 58, 87, 59, 95, 107, 64, 69, 67, 46, 55, 63, 69, 45, 52, 69, 57, 34, 94, 59, 69, 81, 51, 100, 64, 66, 71, 81, 75, 68, 73, 50, 60, 62, 56, 62, 53, 69, 75, 59, 53, 74, 50, 64, 55, 66, 74, 100, 52, 70, 51, 58, 70, 59, 71, 61, 66, 46, 52, 67, 60, 68, 80, 54, 55, 62, 79, 90, 65, 63, 74, 59, 58, 58, 63, 53, 50, 76, 75, 64, 61, 55, 69, 77, 61, 56, 61, 73, 82, 75, 59, 57, 74, 43, 74, 76, 81, 65, 63, 42, 77, 106, 45, 57, 76, 52, 59, 64, 78, 76, 57, 49, 62, 57, 54, 74, 84, 55, 79, 70, 74, 65, 61, 67, 64, 58, 73, 41, 51, 53, 42, 73, 62, 99, 85, 72, 82, 80, 62, 58, 73, 70, 100, 42, 73, 51, 55, 91, 55, 59, 61, 71, 88, 68, 70, 74, 79, 54, 71, 61, 62, 66, 84, 95, 89, 61, 50, 52, 57, 59, 58, 68, 69, 72, 53, 60, 75, 58, 62, 68, 82, 50, 65, 94, 65, 69, 66, 53, 80, 58, 52, 64, 58, 79, 58, 74, 70, 61, 51, 72, 69, 76, 49, 53, 46, 72, 87, 65, 57, 64, 51, 50, 59, 58, 74, 64, 66, 64, 71, 48, 57, 56, 52, 51, 67, 77, 61, 61, 65, 64, 61, 73, 96, 79, 64, 89, 69, 76, 79, 51, 65, 66, 76, 59, 54, 59, 65, 54, 53, 75, 77, 42, 85, 44, 82, 60, 56, 64, 59, 76, 54, 70, 96, 77, 66, 80, 57, 51, 53, 74, 67, 67, 48, 60, 62, 52, 57, 72, 58, 69, 82, 54, 66, 68, 69, 75, 74, 69, 45, 74, 46, 69, 72, 57, 87, 56, 64, 85, 54, 68, 68, 56, 53, 80, 76, 76, 50, 64, 61, 75, 73, 62, 58, 71, 55, 86, 59, 57, 55, 96, 59, 69, 71, 68, 78, 65, 75, 75, 53, 74, 49, 57, 90, 64, 73, 65, 68, 67, 66, 78, 48, 64, 70, 55, 65, 68, 66, 103, 41, 49, 63, 48, 66, 66, 53, 53, 53, 49, 77, 79, 65, 64, 69, 68, 54, 77, 59, 62, 67, 41, 50, 61, 63, 64, 63, 70, 111, 79, 67, 77, 59, 59, 92, 87, 78, 73, 77, 64, 82, 66, 92, 68, 111, 66, 52, 53, 71, 75, 77, 90, 74, 55, 69, 55, 70, 77, 59, 82, 48, 51, 76, 53, 88, 91, 81, 48, 45, 83, 67, 47, 67, 67, 56, 68, 57, 77, 71, 62, 69, 50, 73, 77, 72, 100, 71, 61, 71, 100, 70, 54, 50, 37, 71, 73, 76, 50, 85, 60, 46, 104, 99, 60, 46, 64, 58, 70, 64, 75, 75, 49, 58, 47, 50, 79, 69, 58, 45, 66, 74, 78, 74, 61, 60, 66, 39, 81, 52, 79, 39, 68, 67, 57, 62, 60, 67, 75, 63, 76, 60, 122, 54, 85, 53, 69, 54, 89, 82, 86, 48, 78, 88, 43, 62, 60, 97, 68, 82, 85, 70, 63, 63, 49, 62, 87, 78, 68, 88, 60, 57, 55, 44, 69, 91, 53, 64, 52, 50, 71, 46, 57, 74, 71, 115, 51, 85, 61, 60, 50, 76, 78, 60, 55, 51, 53, 67, 56, 50, 67, 62, 99, 50, 68, 62, 55, 70, 64, 62, 65, 70, 70, 80, 56, 65, 53, 72, 48, 87, 51, 69, 65, 63, 67, 65, 87, 54, 52, 58, 51, 61, 59, 61, 73, 50, 67, 55, 51, 50, 56, 55, 53, 48, 63, 47, 74, 61, 69, 26, 66, 73, 61, 86, 68, 64, 71, 34, 92, 65, 78, 72, 66, 79, 92, 51, 51, 69, 73, 58, 59, 69, 89, 57, 70, 67, 65, 71, 77, 48, 73, 44, 73, 43, 70, 67, 53, 70, 64, 67, 89, 56, 56, 55, 168, 59, 77, 62, 75, 56, 40, 68, 55, 63, 56, 61, 55, 66, 58, 72, 64, 60, 50, 62, 54, 64, 84, 39, 66, 82, 59, 97, 57, 68, 54, 58, 67, 73, 46, 64, 85, 70, 69, 72, 121, 84, 78, 75, 68, 66, 60, 61, 61, 54, 43, 46, 47, 61, 76, 69, 94, 65, 60, 69, 54, 84, 111, 61, 58, 65, 74, 82, 52, 73, 75, 63, 81, 59, 103, 44, 72, 46, 60, 108, 68, 50, 61, 63, 74, 78, 65, 61, 88, 112, 88, 57, 51, 73, 80, 75, 65, 89, 82, 71, 112, 121, 83, 69, 77, 50, 69, 71, 39, 69, 81, 63, 62, 52, 57, 68, 68, 56, 66, 85, 85, 66, 63, 64, 52, 83, 89, 58, 84, 56, 59, 47, 107, 68, 61, 73, 49, 54, 67, 58, 65, 57, 55, 52, 60, 41, 72, 64, 73, 81, 68, 66, 57, 114, 70, 67, 59, 72, 49, 58, 94, 109, 103, 68, 67, 55, 71, 79, 65, 56, 55, 52, 64, 88, 73, 89, 50, 72, 55, 73, 45, 64, 76, 89, 64, 67, 56, 66, 51, 47, 52, 56, 59, 62, 67, 57, 58, 61, 62, 45, 71, 50, 73, 89, 89, 63, 52, 70, 46, 49, 55, 65, 41, 62, 56, 45, 57, 78, 74, 58, 57, 62, 62, 129, 64, 61, 63, 68, 89, 60, 66, 66, 65, 72, 64, 85, 57, 71, 65, 52, 56, 48, 50, 62, 61, 57, 67, 122, 60, 91, 67, 65, 54, 51, 61, 88, 63, 74, 60, 63, 56, 38, 72, 87, 67, 82, 65, 87, 48, 56, 96, 83, 36, 70, 67, 75, 77, 48, 87, 90, 42, 47, 96, 71, 66, 100, 66, 58, 66, 53, 70, 82, 87, 66, 73, 69, 52, 40, 81, 81, 59, 54, 54, 60, 72, 67, 61, 56, 79, 49, 79, 50, 55, 73, 83, 52, 57, 68, 67, 75, 65, 62, 69, 66, 64, 38, 83, 59, 72, 60, 65, 67, 35, 56, 77, 79, 82, 75, 57, 61, 62, 80, 57, 65, 67, 64, 56, 43, 62, 50, 73, 76, 50, 65, 72, 61, 77, 54, 49, 59, 69, 52, 56, 48, 80, 64, 54, 60, 55, 59, 76, 89, 69, 46, 67, 73, 54, 49, 65, 66, 74, 78, 57, 55, 54, 102, 72, 61, 116, 113, 39, 60, 64, 83, 70, 57, 77, 45, 121, 56, 52, 51, 56, 60, 67, 73, 71, 79, 80, 55, 49, 55, 79, 66, 59, 72, 66, 59, 56, 68, 55, 72, 47, 56, 58, 40, 59, 86, 70, 62, 58, 58, 51, 54, 58, 58, 44, 57, 65, 52, 86, 113, 60, 57, 59, 82, 67, 69, 81, 46, 69, 62, 69, 71, 57, 73, 77, 86, 69, 55, 66, 75, 67, 92, 56, 61, 65, 44, 50, 65, 83, 64, 75, 68, 68, 70, 72, 96, 55, 63, 72, 71, 78, 56, 79, 61, 59, 52, 67, 55, 58, 50, 156, 96, 69, 100, 74, 73, 59, 68, 73, 80, 65, 54, 59, 67, 71, 67, 86, 71, 57, 65, 52, 67, 84, 46, 75, 62, 64, 63, 47, 63, 56, 66, 51, 99, 78, 50, 99, 70, 92, 54, 92, 52, 77, 84, 72, 84, 62, 77, 45, 55, 67, 58, 68, 40, 70, 74, 76, 82, 78, 36, 80, 60, 77, 77, 60, 72, 64, 70, 80, 128, 59, 68, 92, 52, 66, 56, 65, 58, 48, 54, 52, 54, 74, 52, 61, 74, 68, 109, 88, 68, 57, 60, 70, 59, 72, 95, 81, 50, 57, 44, 52, 84, 62, 66, 88, 59, 50, 53, 64, 72, 51, 62, 65, 60, 59, 51, 54, 72, 77, 61, 77, 80, 58, 56, 71, 46, 62, 55, 67, 63, 53, 48, 73, 85, 83, 49, 49, 66, 48, 70, 63, 75, 60, 76, 68, 70, 68, 51, 81, 65, 49, 78, 78, 52, 53, 56, 65, 55, 63, 69, 73, 67, 82, 59, 84, 73, 57, 61, 46, 54, 68, 96, 61, 67, 82, 53, 43, 65, 44, 76, 109, 52, 72, 54, 73, 50, 57, 57, 94, 76, 62, 52, 70, 51, 65, 60, 73, 70, 73, 62, 45, 60, 51, 55, 75, 86, 64, 62, 70, 58, 59, 58, 65, 60, 66, 49, 63, 80, 66, 70, 76, 58, 76, 74, 46, 86, 52, 60, 64, 62, 42, 64, 68, 63, 77, 56, 49, 50, 47, 68, 60, 84, 56, 51, 41, 54, 73, 69, 69, 75, 64, 60, 60, 74, 62, 58, 51, 84, 58, 38, 47, 72, 69, 71, 64, 87, 60, 79, 51, 66, 48, 63, 54, 91, 66, 76, 77, 81, 59, 67, 82, 116, 66, 69, 51, 55, 63, 92, 66, 62, 52, 63, 58, 59, 50, 74, 69, 65, 52, 67, 101, 73, 53, 76, 76, 52, 63, 71, 63, 67, 79, 73, 75, 61, 58, 64, 39, 75, 67, 57, 68, 55, 54, 68, 77, 67, 87, 62, 69, 53, 85, 55, 65, 77, 81, 59, 65, 59, 53, 59, 42, 47, 66, 59, 64, 49, 57, 68, 59, 66, 73, 50, 69, 56, 63, 77, 66, 59, 86, 78, 68, 45, 85, 64, 85, 39, 67, 63, 59, 100, 70, 82, 64, 55, 61, 83, 45, 74, 73, 50, 74, 71, 52, 63, 69, 62, 63, 52, 47, 62, 57, 78, 82, 68, 74, 50, 44, 57, 110, 47, 69, 46, 64, 46, 76, 76, 81, 67, 89, 44, 57, 71, 65, 116, 78, 59, 78, 85, 111, 71, 66, 44, 76, 66, 52, 77, 118, 63, 79, 81, 63, 64, 82, 85, 72, 54, 88, 66, 66, 57, 84, 57, 47, 73, 72, 43, 98, 48, 53, 114, 42, 67, 54, 81, 64, 51, 64, 55, 66, 54, 54, 58, 69, 63, 43, 65, 55, 57, 53, 66, 71, 77, 76, 50, 62, 54, 67, 79, 65, 70, 59, 64, 55, 41, 58, 64, 109, 47, 88, 59, 46, 83, 106, 87, 85, 34, 63, 66, 73, 64, 74, 74, 44, 79, 75, 93, 92, 66, 49, 70, 40, 69, 55, 59, 72, 84, 96, 42, 64, 109, 45, 60, 91, 87, 109, 52, 46, 65, 61, 70, 65, 78, 55, 42, 70, 58, 71, 53, 101, 62, 61, 53, 76, 68, 61, 73, 53, 44, 67, 86, 56, 56, 72, 49, 73, 56, 66, 73, 63, 43, 64, 50, 81, 42, 89, 72, 46, 74, 184, 74, 65, 35, 90, 71, 56, 79, 71, 36, 71, 66, 82, 93, 90, 52, 58, 61, 73, 76, 80, 57, 73, 107, 98, 74, 40, 57, 71, 42, 56, 88, 71, 55, 50, 61, 48, 77, 63, 51, 53, 82, 73, 69, 55, 68, 76, 62, 61, 82, 37, 59, 102, 48, 65, 57, 69, 41, 80, 58, 74, 55, 61, 65, 50, 56, 73, 59, 42, 55, 62, 61, 47, 48, 43, 55, 80, 27, 55, 86, 77, 45, 37, 61, 67, 47, 76, 52, 45, 80, 44, 60, 43, 69, 57, 61, 81, 57, 80, 40, 46, 60, 63, 77, 53, 34, 63, 63, 71, 53, 55, 74, 74, 67, 54, 54, 69, 57, 43, 44, 66, 56, 53, 47, 59, 52, 62, 99, 79, 90, 75, 58, 46, 76, 67, 108, 48, 83, 74, 67, 76, 95, 41, 54, 56, 79, 82, 63, 53, 57, 44, 91, 60, 71, 106, 86, 76, 56, 70, 43, 71, 79, 47, 40, 46, 48, 61, 76, 86, 67, 75, 70, 66, 99, 57, 52, 80, 64, 28, 55, 42, 68, 68, 80, 69, 60, 51, 57, 72, 57, 81, 52, 66, 112, 50, 62, 67, 80, 71, 66, 69, 43, 36, 41, 56, 54, 56, 53, 61, 55, 76, 73, 74, 85, 59, 54, 66, 57, 90, 83, 69, 77, 70, 49, 53, 51, 60, 53, 71, 47, 72, 79, 100, 58, 70, 71, 48, 80, 44, 49, 89, 94, 124, 58, 64, 85, 68, 55, 62, 49, 33, 58, 58, 82, 52, 73, 68, 48, 66, 83, 69, 85, 60, 117, 54, 70, 85, 72, 52, 47, 44, 61, 67, 61, 55, 83, 49, 85, 46, 52, 66, 55, 63, 65, 51, 56, 51, 55, 64, 60, 45, 71, 57, 68, 87, 65, 72, 42, 50, 75, 66, 68, 39, 70, 62, 83, 91, 63, 83, 53, 82, 54, 53, 63, 77, 59, 65, 70, 96, 37, 31, 52, 85, 67, 50, 88, 65, 86, 56, 60, 58, 50, 97, 46, 63, 45, 64, 50, 57, 60, 39, 60, 84, 61, 71, 48, 77, 88, 70, 70, 53, 83, 58, 59, 79, 106, 38, 53, 67, 92, 69, 107, 92, 78, 58, 71, 60, 113, 76, 58, 77, 68, 75, 61, 55, 79, 49, 66, 41, 34, 76, 81, 60, 89, 54, 79, 76, 75, 44, 44, 79, 76, 63, 66, 75, 67, 71, 109, 60, 53, 65, 78, 67, 61, 94, 77, 65, 52, 61, 70, 75, 61, 68, 71, 103, 96, 71, 76, 60, 55, 66, 82, 77, 60, 65, 78, 105, 55, 81, 47, 65, 64, 58, 71, 37, 57, 63, 84, 68, 106, 60, 68, 96, 57, 46, 58, 39, 50, 80, 69, 94, 73, 49, 73, 94, 57, 59, 49, 85, 61, 39, 55, 55, 76, 74, 70, 88, 77, 42, 66, 86, 100, 67, 100, 60, 52, 48, 61, 83, 70, 47, 67, 21, 60, 59, 49, 68, 60, 73, 56, 85, 48, 50, 78, 72, 55, 62, 68, 46, 73, 75, 66, 80, 76, 51, 70, 55, 93, 88, 68, 54, 66, 58, 38, 44, 52, 55, 93, 70, 39, 65, 57, 77, 68, 101, 52, 58, 80, 43, 50, 70, 72, 38, 45, 60, 81, 55, 80, 69, 76, 74, 56, 48, 69, 58, 62, 87, 79, 66, 85, 57, 74, 52, 109, 66, 101, 73, 90, 64, 53, 115, 64, 58, 81, 53, 65, 51, 51, 60, 70, 99, 86, 89, 56, 47, 42, 64, 73, 60, 60, 51, 39, 57, 89, 73, 63, 46, 64, 67, 72, 43, 51, 51, 106, 44, 42, 88, 103, 25, 94, 58, 64, 73, 74, 70, 65, 79, 98, 86, 34, 78, 99, 53, 67, 50, 78, 75, 60, 68, 66, 94, 45, 43, 69, 81, 87, 45, 59, 79, 57, 37, 68, 81, 58, 77, 38, 61, 65, 105, 56, 33, 64, 65, 56, 68, 44, 45, 48, 33, 66, 43, 85, 83, 55, 108, 68, 56, 73, 49, 75, 80, 58, 58, 49, 101, 58, 55, 53, 85, 56, 48, 46, 83, 58, 47, 63, 42, 65, 72, 89, 70, 68, 82, 51, 56, 61, 70, 80, 71, 81, 81, 61, 71, 56, 66, 46, 81, 64, 48, 64, 77, 67, 60, 55, 109, 61, 58, 65, 58, 79, 56, 18, 50, 62, 77, 45, 64, 171, 89, 68, 80, 62, 52, 54, 56, 51, 67, 71, 50, 54, 69, 76, 51, 46, 64, 76, 72, 74, 77, 55, 82, 52, 50, 70, 58, 52, 50, 59, 104, 77, 90, 49, 65, 73, 76, 56, 78, 41, 64, 52, 79, 61, 42, 59, 54, 51, 72, 61, 48, 71, 61, 71, 57, 74, 58, 92, 85, 52, 88, 75, 45, 47, 52, 67, 57, 49, 98, 73, 99, 81, 72, 58, 65, 73, 64, 73, 89, 51, 73, 56, 65, 48, 46, 87, 54, 69, 86, 97, 61, 64, 70, 98, 54, 68, 86, 90, 56, 69, 51, 98, 59, 61, 72, 65, 57, 69, 59, 74, 87, 61, 75, 50, 62, 78, 61, 63, 68, 64, 75, 60, 64, 69, 57, 52, 65, 61, 65, 67, 63, 64, 95, 70, 70, 70, 60, 59, 73, 52, 59, 95, 75, 97, 55, 62, 52, 74, 87, 69, 88, 70, 49, 76, 69, 41, 77, 87, 48, 83, 58, 42, 40, 94, 70, 61, 42, 97, 125, 70, 75, 54, 62, 63, 72, 71, 73, 37, 94, 54, 56, 73, 55, 62, 73, 77, 62, 61, 65, 88, 91, 59, 80, 94, 67, 54, 46, 56, 67, 68, 50, 59, 68, 57, 49, 91, 80, 53, 75, 80, 77, 101, 66, 65, 86, 44, 75, 69, 54, 51, 86, 83, 49, 86, 62, 69, 76, 59, 36, 75, 54, 64, 58, 48, 58, 84, 56, 65, 93, 56, 96, 71, 74, 85, 54, 64, 50, 31, 83, 62, 77, 59, 65, 58, 96, 59, 63, 52, 76, 89, 54, 68, 88, 63, 76, 71, 52, 75, 58, 49, 57, 79, 62, 70, 104, 62, 63, 74, 52, 79, 67, 69, 84, 44, 80, 85, 69, 65, 84, 56, 80, 87, 35, 37, 60, 88, 67, 54, 67, 54, 73, 50, 59, 67, 77, 75, 108, 59, 115, 57, 67, 74, 70, 46, 52, 55, 90, 80, 61, 106, 81, 70, 54, 75, 65, 59, 70, 67, 65, 73, 55, 78, 81, 62, 70, 55, 60, 43, 45, 62, 61, 58, 112, 78, 50, 69, 60, 56, 111, 74, 52, 62, 51, 58, 81, 82, 69, 73, 90, 45, 72, 58, 47, 64, 58, 52, 103, 72, 76, 57, 58, 62, 77, 88, 57, 48, 47, 88, 53, 44, 70, 48, 65, 55, 55, 93, 65, 72, 73, 57, 69, 67, 53, 64, 61, 88, 52, 79, 93, 94, 48, 91, 83, 59, 57, 75, 51, 54, 53, 49, 62, 48, 80, 48, 94, 45, 59, 67, 75, 65, 54, 93, 62, 71, 74, 84, 70, 75, 75, 75, 63, 69, 61, 64, 72, 64, 68, 59, 77, 61, 55, 54, 57, 65, 79, 82, 60, 75, 49, 93, 55, 65, 112, 64, 66, 53, 51, 69, 58, 96, 45, 59, 74, 65, 49, 81, 63, 45, 50, 87, 66, 69, 80, 83, 58, 62, 65, 69, 76, 67, 42, 56, 65, 63, 67, 88, 72, 64, 64, 59, 94, 67, 68, 73, 71, 80, 66, 70, 103, 60, 91, 53, 64, 54, 89, 64, 69, 95, 61, 65, 49, 59, 68, 66, 62, 66, 77, 68, 61, 148, 90, 44, 49, 64, 50, 56, 94, 63, 69, 78, 104, 56, 59, 74, 119, 81, 61, 72, 103, 96, 70, 84, 70, 71, 57, 61, 52, 48, 72, 68, 66, 63, 59, 59, 58, 92, 62, 60, 67, 66, 69, 63, 47, 43, 66, 85, 55, 70, 60, 66, 77, 62, 69, 61, 95, 58, 70, 59, 52, 51, 79, 62, 70, 90, 55, 49, 54, 65, 74, 45, 49, 75, 67, 66, 60, 66, 61, 54, 63, 48, 95, 63, 53, 35, 55, 38, 77, 88, 44, 45, 65, 86, 52, 55, 79, 71, 59, 52, 55, 63, 53, 54, 91, 54, 82, 59, 61, 60, 64, 64, 74, 51, 70, 71, 86, 66, 59, 65, 62, 56, 64, 51, 63, 77, 73, 60, 60, 87, 62, 57, 89, 89, 71, 62, 58, 89, 61, 68, 57, 38, 49, 48, 60, 79, 73, 58, 80, 57, 65, 58, 64, 74, 59, 50, 65, 50, 61, 60, 60, 71, 78, 60, 73, 68, 75, 69, 84, 39, 52, 63, 58, 55, 90, 59, 55, 37, 79, 76, 80, 71, 58, 49, 51, 59, 63, 67, 64, 67, 79, 61, 62, 57, 63, 78, 70, 71, 73, 73, 51, 51, 45, 79, 57, 59, 46, 82, 63, 48, 48, 45, 52, 71, 65, 53, 43, 83, 58, 57, 67, 44, 49, 66, 45, 76, 91, 55, 77, 98, 59, 71, 34, 64, 68, 71, 59, 74, 65, 78, 57, 66, 47, 63, 63, 83, 71, 83, 79, 47, 44, 75, 65, 62, 68, 73, 47, 36, 117, 70, 48, 55, 55, 59, 51, 73, 88, 52, 57, 58, 90, 54, 73, 107, 74, 68, 75, 70, 93, 61, 70, 75, 37, 66, 76, 82, 41, 55, 60, 58, 59, 55, 68, 71, 60, 72, 76, 61, 47, 65, 61, 108, 60, 60, 63, 68, 62, 77, 65, 66, 62, 74, 68, 58, 76, 86, 90, 61, 54, 73, 35, 67, 43, 81, 63, 69, 51, 76, 68, 78, 60, 77, 57, 58, 62, 69, 74, 66, 60, 75, 56, 84, 63, 52, 79, 64, 69, 61, 54, 69, 57, 42, 51, 74, 78, 62, 57, 60, 73, 65, 54, 56, 69, 90, 64, 64, 76, 63, 61, 52, 60, 65, 64, 46, 57, 58, 53, 82, 70, 79, 62, 69, 55, 38, 38, 74, 86, 44, 61, 67, 73, 85, 55, 107, 63, 74, 85, 56, 60, 77, 85, 62, 67, 57, 51, 50, 60, 66, 60, 43, 71, 65, 58, 42, 69, 68, 66, 101, 36, 61, 79, 54, 92, 55, 61, 64, 56, 68, 50, 65, 67, 86, 84, 68, 69, 67, 58, 80, 55, 71, 60, 90, 54, 75, 99, 60, 50, 62, 76, 57, 65, 76, 68, 62, 79, 74, 50, 74, 67, 45, 78, 66, 106, 56, 60, 59, 70, 67, 71, 83, 85, 67, 79, 68, 53, 53, 69, 76, 64, 54, 63, 52, 76, 59, 67, 67, 59, 63, 63, 69, 71, 83, 63, 72, 69, 58, 46, 76, 71, 49, 74, 43, 89, 78, 61, 92, 79, 46, 50, 68, 156, 103, 57, 62, 63, 55, 66, 54, 73, 91, 71, 55, 58, 61, 53, 55, 71, 80, 56, 69, 63, 76, 58, 58, 123, 68, 46, 70, 85, 58, 71, 86, 87, 50, 88, 61, 68, 62, 76, 51, 75, 82, 88, 87, 54, 72, 39, 61, 41, 63, 51, 68, 78, 76, 72, 62, 59, 74, 68, 59, 56, 51, 45, 94, 69, 68, 61, 81, 79, 73, 61, 68, 62, 76, 48, 67, 75, 56, 56, 58, 56, 51, 74, 67, 66, 65, 62, 64, 51, 63, 57, 53, 69, 73, 75, 55, 84, 92, 55, 46, 61, 66, 89, 57, 71, 77, 110, 59, 78, 59, 60, 85, 58, 64, 65, 56, 48, 65, 94, 66, 82, 66, 45, 80, 78, 54, 93, 58, 45, 37, 56, 66, 65, 67, 56, 72, 53, 58, 57, 61, 69, 73, 63, 59, 56, 69, 55, 72, 52, 55, 57, 63, 80, 62, 59, 67, 64, 73, 80, 55, 82, 52, 62, 62, 71, 80, 59, 66, 70, 57, 90, 61, 50, 67, 68, 63, 76, 76, 66, 81, 55, 91, 53, 55, 61, 64, 74, 79, 79, 64, 63, 59, 55, 46, 72, 56, 87, 82, 50, 65, 63, 64, 68, 50, 48, 52, 41, 62, 63, 70, 57, 62, 70, 57, 106, 60, 67, 76, 64, 66, 62, 52, 65, 69, 56, 53, 86, 59, 64, 70, 74, 59, 56, 77, 99, 118, 64, 61, 49, 63, 70, 68, 68, 70, 74, 59, 67, 60, 74, 73, 68, 65, 56, 65, 66, 59, 63, 49, 53, 72, 69, 53, 64, 58, 59, 57, 57, 62, 85, 76, 68, 67, 41, 59, 65, 68, 65, 58, 60, 68, 72, 46, 50, 103, 62, 57, 50, 60, 61, 80, 111, 63, 67, 60, 51, 56, 73, 60, 74, 60, 62, 84, 56, 58, 60, 87, 65, 55, 59, 54, 49, 53, 66, 52, 65, 49, 69, 72, 70, 69, 57, 73, 56, 64, 66, 99, 86, 60, 62, 62, 61, 56, 44, 73, 55, 66, 67, 51, 45, 57, 62, 60, 55, 71, 70, 72, 103, 53, 112, 80, 62, 55, 62, 55, 69, 75, 71, 70, 56, 70, 63, 62, 49, 61, 66, 60, 67, 103, 57, 65, 78, 66, 85, 78, 63, 63, 73, 58, 64, 70, 56, 70, 51, 55, 76, 58, 56, 58, 54, 67, 69, 55, 59, 44, 81, 66, 82, 58, 75, 57, 39, 70, 66, 88, 83, 69, 64, 78, 70, 57, 61, 64, 89, 79, 59, 53, 48, 53, 51, 86, 67, 57, 53, 67, 55, 62, 77, 60, 76, 52, 67, 66, 82, 55, 60, 59, 76, 63, 87, 60, 51, 55, 50, 62, 64, 55, 60, 56, 61, 68, 51, 62, 53, 59, 71, 67, 45, 58, 64, 87, 72, 80, 65, 64, 68, 68, 79, 73, 51, 88, 66, 74, 55, 54, 92, 81, 82, 65, 66, 65, 60, 57, 47, 60, 67, 71, 56, 70, 65, 69, 78, 52, 85, 65, 62, 73, 61, 70, 59, 66, 68, 54, 72, 70, 59, 63, 52, 62, 61, 80, 79, 36, 52, 80, 71, 53, 61, 65, 60, 66, 64, 75, 75, 52, 62, 57, 53, 72, 78, 54, 55, 68, 72, 47, 48, 58, 63, 71, 67, 82, 65, 64, 55, 68, 49, 70, 75, 69, 66, 57, 62, 68, 55, 95, 111, 60, 53, 63, 71, 58, 72, 66, 58, 55, 60, 61, 50, 74, 57, 66, 63, 62, 65, 56, 57, 72, 64, 68, 73, 61, 75, 64, 127, 62, 70, 77, 69, 64, 56, 66, 56, 58, 60, 61, 47, 64, 63, 78, 77, 79, 61, 70, 69, 56, 46, 53, 73, 60, 59, 55, 65, 89, 75, 69, 84, 139, 61, 64, 53, 120, 64, 67, 67, 66, 64, 57, 83, 53, 67, 62, 54, 69, 75, 69, 51, 67, 90, 57, 57, 82, 73, 69, 113, 59, 79, 104, 66, 67, 84, 55, 75, 100, 94, 64, 73, 70, 55, 74, 85, 70, 60, 72, 80, 67, 59, 57, 63, 40, 63, 82, 74, 52, 66, 66, 68, 56, 65, 78, 70, 95, 61, 54, 66, 81, 70, 90, 70, 62, 62, 57, 54, 77, 65, 67, 61, 69, 51, 65, 59, 87, 69, 53, 74, 127, 60, 67, 69, 74, 73, 59, 71, 82, 66, 54, 54, 57, 59, 62, 68, 68, 55, 54, 52, 43, 53, 68, 68, 67, 71, 58, 60, 40, 59, 66, 50, 67, 58, 76, 56, 75, 62, 69, 68, 88, 58, 54, 58, 66, 56, 56, 60, 47, 56, 46, 52, 56, 104, 46, 53, 77, 67, 63, 56, 83, 62, 61, 53, 61, 56, 65, 50, 52, 73, 70, 92, 57, 54, 81, 63, 46, 60, 82, 67, 61, 55, 73, 71, 101, 82, 79, 70, 51, 53, 63, 67, 67, 91, 59, 44, 78, 91, 64, 54, 72, 61, 58, 61, 46, 73, 62, 58, 53, 72, 65, 63, 57, 63, 74, 82, 101, 68, 69, 109, 75, 63, 75, 45, 62, 58, 95, 74, 45, 74, 67, 49, 74, 59, 74, 62, 86, 66, 52, 66, 69, 56, 96, 70, 76, 57, 64, 50, 63, 69, 69, 84, 57, 53, 65, 62, 69, 99, 64, 66, 69, 66, 44, 59, 53, 66, 72, 61, 67, 80, 67, 78, 72, 62, 59, 77, 72, 76, 53, 62, 89, 62, 69, 71, 88, 74, 72, 59, 54, 50, 66, 76, 78, 60, 62, 50, 60, 82, 69, 61, 66, 51, 81, 66, 50, 54, 61, 70, 62, 75, 64, 56, 61, 74, 60, 94, 62, 62, 60, 57, 52, 62, 49, 57, 61, 60, 67, 49, 66, 68, 86, 50, 64, 43, 84, 62, 55, 77, 60, 55, 60, 45, 69, 64, 68, 55, 71, 67, 53, 62, 68, 63, 58, 70, 79, 53, 95, 88, 74, 53, 64, 63, 62, 61, 66, 65, 65, 60, 57, 64, 51, 58, 69, 54, 68, 58, 147, 71, 75, 68, 46, 63, 65, 69, 58, 67, 80, 91, 62, 74, 52, 61, 85, 71, 64, 60, 44, 48, 93, 61, 56, 56, 52, 75, 54, 69, 82, 62, 63, 82, 47, 58, 56, 57, 62, 53, 66, 63, 60, 69, 73, 65, 62, 78, 63, 60, 64, 57, 65, 87, 77, 57, 59, 66, 61, 73, 54, 102, 59, 71, 63, 86, 65, 57, 69, 45, 70, 69, 111, 79, 50, 56, 52, 64, 78, 65, 72, 58, 158, 57, 58, 59, 60, 94, 46, 53, 60, 59, 84, 76, 76, 53, 75, 57, 49, 77, 53, 86, 66, 86, 60, 53, 62, 68, 63, 81, 74, 54, 55, 60, 55, 83, 61, 70, 68, 46, 63, 71, 55, 79, 68, 62, 43, 65, 81, 95, 68, 68, 72, 64, 55, 108, 62, 64, 76, 63, 76, 55, 78, 66, 57, 62, 47, 63, 51, 70, 45, 61, 75, 60, 52, 84, 63, 51, 84, 93, 47, 63, 49, 75, 48, 51, 87, 55, 58, 81, 79, 64, 76, 59, 60, 57, 66, 62, 99, 68, 85, 44, 63, 63, 96, 83, 64, 54, 55, 61, 67, 62, 75, 44, 68, 68, 90, 62, 67, 67, 67, 57, 61, 54, 90, 70, 57, 59, 45, 63, 65, 71, 62, 46, 66, 58, 68, 66, 58, 121, 73, 75, 133, 58, 71, 83, 75, 68, 53, 74, 64, 80, 70, 87, 60, 67, 88, 78, 54, 48, 71, 90, 64, 52, 64, 66, 74, 53, 77, 80, 56, 57, 72, 64, 86, 60, 79, 75, 44, 54, 60, 66, 68, 71, 64, 48, 78, 64, 65, 59, 47, 68, 57, 68, 66, 64, 61, 59, 61, 58, 52, 54, 91, 51, 65, 54, 61, 82, 83, 75, 56, 51, 62, 84, 53, 82, 82, 59, 88, 66, 51, 62, 79, 46, 58, 64, 85, 58, 53, 81, 54, 32, 53, 38, 54, 53, 44, 59, 68, 62, 68, 78, 61, 65, 58, 62, 58, 78, 50, 67, 80, 64, 73, 76, 62, 50, 66, 56, 65, 56, 61, 74, 86, 59, 62, 50, 62, 67, 96, 76, 52, 111, 72, 56, 47, 87, 61, 64, 53, 58, 70, 72, 63, 57, 69, 49, 42, 72, 51, 48, 94, 58, 63, 57, 77, 66, 38, 58, 72, 86, 69, 62, 61, 88, 75, 67, 63, 61, 33, 61, 73, 60, 47, 83, 76, 83, 54, 49, 58, 63, 84, 62, 58, 98, 67, 70, 75, 74, 40, 55, 64, 69, 57, 60, 81, 57, 96, 104, 60, 75, 33, 58, 70, 87, 60, 103, 99, 66, 53, 80, 59, 72, 59, 51, 48, 40, 70, 50, 61, 106, 63, 58, 73, 61, 48, 70, 52, 65, 65, 80, 60, 59, 66, 35, 55, 57, 62, 63, 50, 64, 62, 49, 95, 53, 51, 47, 76, 72, 72, 60, 59, 78, 74, 56, 70, 72, 74, 68, 68, 60, 43, 69, 70, 61, 66, 66, 94, 70, 80, 48, 59, 95, 119, 81, 50, 91, 69, 44, 99, 56, 57, 57, 84, 60, 68, 71, 64, 74, 59, 74, 74, 59, 85, 65, 99, 55, 52, 49, 56, 52, 68, 62, 73, 63, 95, 54, 59, 105, 68, 45, 43, 84, 63, 72, 65, 99, 68, 62, 100, 52, 55, 65, 45, 99, 53, 66, 84, 53, 57, 64, 108, 66, 69, 60, 72, 73, 65, 35, 72, 58, 77, 84, 48, 64, 51, 82, 54, 74, 80, 61, 47, 47, 69, 79, 47, 56, 52, 87, 59, 71, 75, 42, 48, 52, 76, 54, 46, 105, 101, 124, 79, 39, 72, 71, 59, 68, 106, 50, 49, 61, 65, 59, 82, 55, 54, 76, 71, 59, 78, 73, 57, 43, 58, 75, 60, 66, 53, 97, 42, 86, 59, 72, 58, 69, 49, 64, 72, 74, 61, 45, 61, 63, 79, 72, 68, 57, 64, 51, 70, 81, 57, 62, 61, 78, 76, 72, 79, 89, 75, 68, 67, 34, 69, 47, 76, 69, 68, 74, 88, 62, 74, 62, 42, 84, 54, 63, 58, 70, 62, 65, 73, 71, 50, 56, 73, 59, 51, 66, 80, 55, 71, 62, 85, 56, 57, 64, 75, 94, 53, 78, 107, 58, 75, 76, 66, 61, 61, 72, 58, 70, 96, 66, 72, 70, 85, 77, 43, 61, 68, 94, 55, 74, 70, 58, 68, 71, 55, 64, 45, 64, 38, 61, 65, 54, 75, 64, 62, 67, 60, 45, 57, 63, 77, 42, 61, 58, 47, 66, 78, 56, 54, 82, 117, 45, 83, 73, 61, 77, 51, 61, 66, 58, 60, 53, 72, 74, 63, 67, 62, 67, 54, 63, 88, 88, 55, 87, 73, 69, 82, 76, 81, 71, 45, 68, 80, 58, 89, 60, 74, 52, 94, 39, 43, 65, 60, 61, 79, 94, 70, 92, 50, 47, 53, 64, 81, 68, 62, 70, 53, 66, 85, 69, 65, 91, 96, 38, 65, 56, 52, 60, 85, 78, 39, 81, 77, 57, 66, 86, 73, 50, 63, 80, 58, 52, 53, 62, 31, 66, 71, 77, 55, 63, 71, 64, 63, 59, 52, 71, 62, 72, 70, 72, 42, 68, 82, 76, 77, 68, 53, 76, 84, 57, 59, 55, 79, 53, 55, 80, 54, 54, 63, 54, 58, 58, 69, 57, 64, 61, 53, 93, 27, 67, 69, 70, 62, 61, 57, 43, 72, 48, 59, 111, 77, 62, 49, 87, 68, 51, 57, 81, 72, 100, 82, 40, 87, 48, 62, 43, 65, 59, 57, 84, 78, 50, 137, 84, 78, 57, 72, 83, 57, 56, 82, 75, 87, 79, 54, 48, 72, 75, 79, 62, 52, 75, 57, 64, 54, 82, 110, 80, 63, 87, 78, 46, 97, 75, 84, 62, 61, 66, 74, 91, 43, 73, 72, 81, 47, 65, 46, 80, 54, 73, 76, 85, 76, 86, 48, 74, 69, 89, 68, 77, 62, 56, 64, 65, 52, 71, 52, 37, 82, 84, 49, 49, 50, 61, 69, 70, 85, 90, 63, 70, 72, 65, 52, 44, 64, 66, 75, 50, 93, 65, 55, 82, 68, 86, 68, 68, 78, 61, 58, 71, 71, 73, 70, 65, 56, 78, 71, 61, 122, 78, 64, 76, 56, 46, 51, 52, 64, 62, 50, 83, 57, 52, 51, 71, 60, 54, 78, 65, 59, 49, 65, 78, 55, 70, 86, 69, 69, 46, 43, 90, 39, 62, 75, 59, 58, 46, 48, 69, 72, 32, 84, 64, 47, 65, 63, 74, 84, 62, 70, 54, 66, 89, 44, 64, 43, 61, 55, 67, 75, 59, 80, 59, 70, 54, 89, 59, 48, 49, 82, 43, 70, 57, 95, 45, 64, 80, 52, 56, 55, 46, 95, 95, 56, 70, 65, 62, 81, 90, 74, 74, 79, 52, 73, 83, 58, 63, 57, 84, 77, 85, 72, 92, 85, 57, 72, 71, 74, 45, 63, 53, 62, 83, 53, 58, 63, 51, 82, 54, 65, 57, 84, 48, 51, 87, 45, 74, 69, 107, 64, 77, 48, 59, 62, 37, 82, 42, 67, 54, 78, 70, 53, 62, 73, 72, 46, 37, 93, 62, 62, 63, 71, 85, 66, 57, 82, 76, 54, 68, 65, 72, 50, 61, 53, 50, 57, 51, 55, 54, 50, 81, 61, 71, 69, 67, 76, 59, 77, 76, 57, 71, 93, 97, 64, 64, 45, 77, 58, 74, 99, 65, 62, 85, 53, 76, 67, 72, 60, 79, 65, 82, 56, 94, 65, 84, 62, 47, 67, 48, 76, 66, 47, 57, 57, 68, 65, 65, 52, 66, 50, 46, 50, 58, 90, 59, 86, 54, 65, 88, 67, 80, 63, 57, 47, 71, 51, 45, 65, 61, 72, 45, 52, 71, 64, 64, 73, 51, 56, 67, 91, 59, 50, 55, 74, 60, 80, 71, 59, 83, 86, 70, 71, 88, 59, 59, 96, 42, 46, 107, 59, 41, 58, 69, 67, 58, 58, 100, 82, 48, 119, 68, 77, 71, 58, 67, 65, 62, 81, 64, 55, 59, 53, 54, 52, 78, 65, 48, 57, 56, 61, 62, 56, 72, 60, 64, 81, 40, 63, 58, 81, 70, 85, 98, 46, 88, 53, 60, 60, 54, 47, 59, 63, 75, 69, 89, 43, 92, 45, 62, 67, 58, 67, 56, 50, 76, 66, 67, 65, 78, 71, 99, 45, 38, 71, 65, 62, 43, 59, 46, 68, 62, 57, 70, 67, 66, 74, 58, 62, 55, 74, 56, 83, 121, 84, 50, 88, 67, 76, 70, 64, 68, 86, 64, 80, 65, 55, 57, 52, 66, 54, 88, 63, 48, 61, 62, 52, 72, 73, 52, 71, 64, 64, 76, 48, 60, 64, 69, 76, 45, 67, 58, 50, 58, 56, 67, 60, 73, 59, 66, 58, 74, 74, 78, 68, 58, 53, 71, 79, 86, 61, 71, 56, 92, 67, 57, 65, 76, 73, 73, 58, 103, 75, 51, 56, 97, 73, 60, 52, 61, 59, 64, 54, 66, 50, 54, 75, 77, 55, 71, 65, 57, 56, 60, 69, 60, 53, 71, 77, 58, 81, 63, 50, 89, 55, 82, 65, 55, 69, 135, 72, 72, 54, 71, 60, 56, 43, 71, 62, 68, 79, 66, 63, 71, 81, 108, 53, 60, 73, 49, 44, 60, 69, 93, 72, 54, 85, 75, 57, 64, 85, 81, 59, 47, 85, 96, 37, 66, 76, 69, 74, 73, 67, 54, 63, 77, 69, 91, 54, 57, 79, 76, 82, 58, 62, 41, 61, 62, 40, 121, 70, 65, 66, 56, 43, 62, 53, 59, 61, 88, 36, 78, 73, 53, 70, 61, 48, 50, 102, 67, 84, 47, 64, 71, 55, 36, 80, 44, 69, 64, 48, 50, 55, 56, 57, 60, 57, 55, 70, 103, 57, 67, 47, 68, 48, 64, 101, 93, 72, 52, 79, 60, 77, 54, 51, 83, 63, 70, 75, 57, 72, 68, 65, 74, 59, 45, 65, 59, 73, 58, 84, 53, 56, 74, 72, 64, 53, 52, 57, 84, 76, 70, 64, 83, 82, 75, 50, 90, 56, 61, 94, 79, 79, 65, 73, 71, 61, 76, 57, 63, 85, 54, 70, 52, 65, 55, 63, 48, 62, 58, 82, 88, 65, 61, 47, 56, 83, 57, 65, 75, 86, 84, 122, 59, 46, 78, 65, 50, 120, 53, 66, 63, 60, 71, 66, 54, 69, 82, 64, 59, 33, 75, 58, 81, 58, 60, 83, 48, 71, 73, 68, 59, 62, 57, 53, 56, 104, 86, 64, 54, 47, 54, 76, 59, 91, 57, 60, 65, 60, 64, 57, 58, 48, 39, 64, 78, 79, 62, 65, 69, 63, 62, 104, 46, 71, 76, 69, 41, 51, 74, 68, 87, 65, 77, 72, 71, 57, 81, 75, 87, 75, 61, 61, 62, 56, 50, 47, 83, 46, 59, 54, 79, 61, 65, 58, 65, 49, 69, 68, 81, 56, 67, 67, 53, 44, 79, 98, 47, 42, 54, 61, 46, 67, 67, 54, 59, 50, 79, 79, 68, 76, 67, 71, 51, 57, 98, 56, 73, 68, 83, 48, 93, 67, 53, 44, 63, 65, 86, 81, 48, 57, 70, 75, 76, 58, 81, 56, 55, 48, 73, 84, 85, 117, 83, 59, 53, 71, 54, 76, 104, 61, 93, 59, 51, 55, 57, 60, 56, 86, 56, 46, 72, 67, 65, 92, 64, 64, 77, 51, 60, 64, 78, 50, 85, 66, 59, 42, 65, 52, 77, 53, 70, 47, 54, 54, 95, 83, 56, 74, 52, 91, 50, 58, 98, 71, 55, 45, 71, 73, 108, 59, 64, 122, 66, 67, 67, 53, 68, 48, 55, 63, 78, 114, 63, 71, 61, 59, 68, 68, 84, 48, 66, 68, 82, 57, 50, 49, 62, 43, 64, 50, 61, 64, 63, 64, 63, 58, 79, 64, 71, 93, 78, 81, 54, 38, 97, 59, 50, 78, 91, 69, 50, 85, 42, 76, 49, 45, 61, 71, 60, 63, 84, 77, 60, 63, 65, 69, 58, 78, 77, 82, 71, 76, 59, 75, 72, 70, 72, 65, 36, 76, 101, 71, 58, 79, 54, 75, 55, 73, 57, 101, 76, 73, 75, 62, 53, 68, 66, 91, 52, 45, 53, 57, 62, 56, 95, 74, 43, 60, 59, 51, 56, 68, 65, 67, 53, 74, 70, 82, 60, 53, 56, 142, 63, 70, 54, 53, 46, 59, 126, 51, 61, 67, 63, 70, 65, 67, 66, 94, 65, 79, 60, 110, 52, 57, 50, 84, 83, 58, 42, 62, 44, 86, 61, 70, 79, 66, 77, 61, 46, 149, 106, 62, 69, 73, 59, 81, 56, 71, 55, 82, 69, 52, 62, 70, 139, 64, 45, 75, 67, 71, 49, 94, 83, 75, 96, 93, 73, 101, 48, 59, 61, 63, 66, 66, 58, 72, 42, 89, 62, 67, 73, 73, 99, 76, 54, 73, 66, 67, 68, 54, 38, 77, 57, 42, 75, 48, 87, 59, 65, 67, 67, 55, 75, 53, 64, 77, 42, 68, 80, 92, 52, 76, 80, 73, 51, 63, 70, 60, 59, 87, 78, 57, 53, 80, 54, 79, 57, 82, 50, 73, 72, 85, 63, 133, 65, 64, 55, 42, 58, 86, 60, 59, 64, 65, 68, 97, 90, 52, 57, 99, 82, 54, 83, 59, 72, 107, 51, 73, 62, 49, 46, 68, 74, 53, 46, 43, 79, 99, 60, 65, 78, 85, 60, 98, 57, 70, 47, 81, 94, 73, 54, 62, 63, 73, 36, 78, 64, 55, 56, 110, 70, 76, 82, 69, 59, 102, 59, 61, 57, 101, 62, 47, 89, 64, 63, 76, 77, 58, 53, 64, 61, 63, 70, 71, 53, 55, 59, 43, 64, 65, 84, 69, 65, 43, 75, 84, 66, 84, 40, 63, 70, 55, 71, 53, 78, 43, 83, 45, 63, 88, 65, 77, 65, 44, 58, 71, 64, 72, 82, 84, 76, 79, 67, 60, 76, 88, 74, 72, 57, 61, 47, 72, 72, 69, 44, 58, 47, 87, 45, 70, 66, 68, 39, 63, 39, 44, 70, 78, 63, 101, 51, 81, 72, 62, 50, 75, 68, 106, 148, 60, 51, 51, 69, 69, 79, 77, 69, 65, 68, 53, 67, 58, 50, 73, 82, 71, 61, 47, 88, 95, 71, 67, 64, 55, 64, 48, 81, 74, 70, 57, 61, 66, 54, 79, 83, 85, 50, 104, 65, 78, 89, 56, 70, 75, 53, 48, 76, 110, 57, 69, 66, 57, 61, 41, 68, 83, 62, 44, 65, 101, 70, 92, 49, 50, 48, 43, 55, 62, 61, 76, 68, 59, 78, 59, 70, 67, 60, 46, 69, 40, 66, 77, 72, 43, 77, 64, 53, 67, 69, 65, 71, 83, 81, 75, 38, 76, 73, 95, 69, 62, 68, 62, 62, 65, 56, 58, 59, 70, 71, 57, 63, 72, 44, 47, 106, 81, 80, 56, 39, 73, 53, 74, 59, 95, 55, 60, 58, 69, 73, 59, 59, 76, 85, 54, 53, 74, 81, 51, 60, 66, 50, 53, 58, 49, 66, 69, 75, 68, 69, 53, 84, 72, 54, 58, 45, 75, 79, 56, 45, 57, 59, 51, 68, 78, 68, 78, 51, 61, 68, 55, 40, 88, 55, 83, 93, 84, 89, 39, 30, 63, 69, 64, 92, 51, 83, 53, 67, 79, 74, 68, 71, 62, 87, 62, 67, 67, 71, 38, 68, 60, 51, 68, 92, 63, 91, 51, 74, 105, 73, 81, 53, 76, 46, 43, 37, 65, 50, 44, 72, 74, 54, 65, 54, 87, 59, 62, 86, 70, 75, 67, 78, 69, 61, 67, 68, 63, 74, 53, 79, 52, 71, 65, 62, 72, 63, 60, 62, 66, 58, 91, 50, 49, 54, 65, 66, 71, 47, 68, 70, 140, 68, 68, 68, 70, 70, 43, 63, 71, 83, 51, 72, 42, 91, 77, 56, 65, 68, 64, 46, 65, 61, 89, 57, 78, 42, 46, 48, 73, 71, 40, 61, 60, 63, 62, 82, 67, 64, 75, 75, 79, 73, 69, 59, 63, 63, 55, 89, 39, 59, 72, 67, 45, 67, 73, 83, 64, 90, 43, 71, 73, 75, 49, 68, 61, 67, 72, 69, 98, 94, 65, 78, 61, 64, 52, 66, 59, 62, 50, 70, 61, 93, 53, 84, 44, 82, 121, 67, 96, 81, 71, 70, 85, 66, 79, 87, 51, 90, 76, 65, 66, 68, 68, 67, 72, 40, 69, 55, 74, 71, 52, 68, 70, 56, 88, 71, 83, 64, 79, 73, 53, 80, 75, 46, 66, 68, 60, 65, 55, 58, 67, 71, 66, 47, 74, 84, 68, 47, 30, 64, 50, 61, 59, 51, 71, 73, 61, 37, 63, 88, 68, 59, 56, 61, 56, 94, 75, 80, 49, 55, 64, 63, 66, 78, 58, 58, 62, 54, 65, 38, 53, 78, 26, 73, 74, 69, 48, 56, 70, 72, 98, 45, 83, 68, 69, 88, 63, 89, 72, 81, 52, 70, 66, 42, 63, 73, 57, 74, 67, 55, 62, 66, 64, 68, 75, 73, 47, 75, 85, 68, 59, 58, 65, 85, 69, 61, 59, 69, 63, 76, 52, 71, 65, 61, 90, 54, 51, 68, 89, 56, 42, 101, 76, 73, 73, 60, 61, 44, 60, 95, 61, 52, 60, 72, 55, 136, 88, 78, 63, 50, 59, 68, 69, 52, 73, 75, 78, 65, 67, 59, 61, 66, 59, 69, 55, 63, 65, 82, 42, 56, 95, 67, 70, 38, 46, 67, 60, 55, 86, 70, 64, 54, 42, 65, 57, 77, 68, 59, 53, 73, 52, 56, 68, 57, 92, 58, 125, 71, 68, 62, 49, 66, 62, 77, 55, 74, 49, 49, 58, 76, 82, 70, 65, 58, 58, 77, 77, 60, 45, 59, 44, 59, 71, 46, 74, 83, 68, 59, 112, 62, 96, 82, 80, 44, 54, 55, 46, 63, 61, 116, 57, 63, 63, 65, 56, 97, 57, 100, 65, 56, 45, 96, 60, 59, 54, 74, 54, 52, 47, 48, 120, 47, 81, 65, 71, 56, 59, 54, 114, 58, 52, 60, 54, 63, 70, 55, 71, 50, 73, 69, 47, 64, 67, 52, 60, 86, 63, 48, 62, 70, 66, 43, 42, 67, 85, 52, 114, 72, 56, 81, 65, 82, 61, 62, 57, 58, 61, 70, 71, 78, 65, 45, 96, 123, 79, 37, 71, 61, 53, 70, 44, 88, 68, 61, 77, 67, 58, 82, 75, 65, 79, 81, 44, 64, 60, 67, 78, 74, 64, 119, 38, 66, 81, 86, 61, 61, 56, 92, 66, 66, 40, 55, 60, 70, 52, 37, 72, 132, 65, 65, 60, 58, 79, 79, 66, 74, 70, 44, 57, 66, 74, 59, 73, 75, 55, 54, 80, 79, 81, 55, 51, 40, 42, 76, 87, 50, 75, 58, 69, 107, 63, 79, 55, 71, 46, 63, 63, 56, 70, 67, 95, 69, 71, 85, 56, 63, 48, 62, 76, 96, 77, 87, 77, 77, 68, 70, 61, 66, 52, 59, 55, 69, 76, 83, 49, 86, 58, 62, 65, 80, 59, 61, 63, 46, 57, 60, 85, 87, 49, 45, 38, 81, 61, 54, 81, 50, 57, 62, 78, 63, 64, 67, 70, 66, 52, 76, 71, 71, 79, 57, 51, 87, 68, 125, 83, 48, 46, 61, 55, 80, 62, 85, 49, 73, 55, 72, 51, 66, 82, 55, 60, 70, 60, 53, 65, 79, 51, 107, 70, 73, 81, 68, 73, 72, 46, 39, 55, 58, 67, 49, 56, 115, 88, 55, 82, 60, 61, 53, 98, 60, 71, 79, 48, 54, 69, 62, 69, 71, 91, 83, 48, 46, 63, 64, 45, 70, 48, 52, 56, 111, 62, 40, 70, 68, 57, 34, 52, 44, 61, 80, 86, 76, 69, 78, 67, 65, 46, 87, 77, 55, 58, 53, 57, 47, 64, 67, 42, 62, 45, 75, 84, 62, 83, 40, 95, 56, 84, 65, 65, 67, 76, 68, 71, 69, 71, 54, 119, 76, 56, 95, 60, 50, 74, 92, 63, 72, 57, 34, 79, 105, 98, 66, 49, 67, 38, 84, 50, 66, 48, 92, 87, 75, 64, 63, 58, 64, 61, 47, 64, 74, 76, 54, 58, 65, 61, 59, 75, 71, 61, 72, 54, 63, 64, 76, 85, 50, 54, 49, 59, 57, 59, 68, 116, 51, 75, 53, 87, 91, 80, 72, 63, 71, 51, 56, 53, 49, 66, 63, 56, 45, 57, 76, 52, 59, 57, 67, 61, 63, 84, 85, 56, 57, 55, 107, 76, 57, 76, 64, 72, 69, 67, 50, 73, 45, 69, 77, 72, 65, 56, 66, 72, 52, 65, 75, 69, 55, 83, 69, 53, 73, 63, 63, 49, 56, 58, 60, 75, 67, 72, 64, 58, 61, 70, 66, 97, 52, 50, 58, 48, 59, 63, 54, 54, 60, 80, 62, 56, 56, 48, 60, 55, 57, 44, 46, 63, 63, 73, 86, 58, 68, 60, 54, 86, 82, 72, 62, 64, 68, 70, 66, 67, 68, 54, 66, 64, 102, 74, 66, 61, 71, 57, 64, 64, 78, 54, 99, 88, 60, 53, 62, 55, 69, 94, 59, 58, 38, 74, 74, 48, 55, 40, 82, 61, 55, 86, 52, 67, 51, 80, 57, 60, 56, 47, 68, 78, 66, 58, 63, 50, 53, 67, 57, 67, 89, 49, 75, 65, 78, 60, 62, 71, 63, 57, 65, 100, 62, 70, 69, 74, 63, 72, 77, 58, 52, 78, 73, 68, 57, 64, 50, 53, 45, 59, 59, 67, 69, 54, 92, 75, 69, 77, 54, 63, 85, 90, 73, 50, 55, 82, 64, 65, 51, 53, 76, 64, 56, 57, 48, 58, 67, 48, 64, 61, 86, 75, 65, 95, 76, 67, 67, 53, 41, 62, 68, 44, 60, 61, 65, 68, 93, 79, 59, 54, 56, 47, 48, 50, 54, 57, 75, 58, 42, 60, 104, 76, 56, 70, 76, 69, 56, 76, 66, 90, 61, 72, 83, 53, 85, 63, 52, 57, 65, 75, 71, 51, 58, 54, 71, 59, 71, 68, 86, 65, 72, 84, 86, 52, 71, 48, 63, 78, 75, 65, 57, 64, 59, 48, 67, 63, 88, 85, 61, 85, 46, 90, 72, 56, 61, 35, 70, 63, 65, 69, 107, 115, 62, 69, 70, 51, 67, 61, 84, 56, 60, 58, 62, 57, 57, 51, 67, 57, 92, 57, 65, 64, 59, 46, 47, 67, 53, 51, 82, 101, 87, 63, 72, 68, 42, 59, 84, 70, 52, 66, 67, 58, 71, 61, 86, 61, 70, 66, 56, 63, 59, 75, 60, 55, 74, 63, 61, 62, 60, 77, 67, 60, 57, 54, 63, 60, 61, 37, 58, 40, 42, 84, 67, 63, 69, 73, 84, 78, 64, 57, 69, 58, 59, 59, 69, 68, 68, 74, 64, 63, 44, 59, 72, 64, 61, 69, 73, 46, 61, 50, 76, 70, 66, 65, 81, 78, 61, 60, 70, 60, 52, 61, 58, 69, 53, 60, 59, 47, 48, 59, 63, 80, 60, 67, 52, 67, 57, 72, 73, 59, 71, 58, 54, 55, 64, 52, 62, 78, 66, 53, 71, 69, 45, 75, 79, 85, 64, 61, 62, 85, 66, 61, 81, 46, 58, 72, 74, 52, 52, 81, 61, 67, 49, 72, 63, 65, 65, 86, 64, 57, 82, 62, 65, 69, 71, 54, 74, 70, 86, 57, 58, 70, 78, 51, 51, 61, 72, 58, 59, 75, 62, 62, 88, 92, 66, 63, 62, 53, 107, 88, 55, 72, 74, 68, 54, 69, 55, 51, 71, 60, 40, 59, 69, 45, 75, 48, 66, 74, 61, 54, 54, 59, 52, 58, 64, 54, 67, 51, 75, 73, 69, 70, 58, 45, 66, 65, 61, 62, 117, 67, 71, 59, 60, 69, 45, 53, 72, 64, 68, 65, 61, 74, 103, 58, 85, 74, 59, 74, 80, 79, 94, 68, 81, 91, 61, 72, 73, 44, 66, 66, 100, 65, 53, 76, 72, 103, 69, 56, 75, 58, 75, 61, 65, 59, 72, 64, 73, 66, 67, 57, 66, 63, 48, 71, 86, 60, 55, 91, 57, 69, 82, 65, 57, 50, 57, 72, 64, 60, 68, 72, 68, 78, 64, 62, 65, 47, 69, 63, 88, 73, 65, 69, 53, 49, 63, 57, 88, 50, 67, 55, 88, 51, 66, 62, 79, 51, 100, 59, 57, 50, 63, 62, 71, 95, 67, 61, 62, 57, 76, 60, 61, 69, 89, 66, 72, 66, 69, 80, 45, 74, 84, 79, 76, 60, 88, 83, 79, 79, 63, 51, 56, 60, 61, 48, 59, 47, 53, 59, 65, 45, 57, 83, 92, 62, 57, 57, 57, 36, 78, 68, 82, 66, 56, 81, 58, 97, 73, 83, 73, 61, 57, 55, 64, 63, 49, 111, 62, 55, 64, 120, 62, 94, 58, 84, 69, 54, 66, 46, 71, 81, 98, 87, 68, 62, 68, 101, 55, 62, 49, 55, 71, 118, 69, 51, 77, 74, 77, 59, 78, 64, 86, 111, 51, 61, 120, 57, 87, 57, 62, 57, 52, 84, 64, 59, 76, 68, 52, 65, 68, 70, 44, 70, 47, 82, 56, 58, 99, 54, 82, 59, 66, 63, 49, 46, 52, 57, 63, 59, 67, 66, 57, 51, 55, 91, 69, 123, 83, 50, 54, 58, 78, 59, 69, 45, 85, 49, 62, 57, 60, 55, 82, 54, 71, 60, 74, 53, 50, 74, 66, 59, 67, 54, 65, 66, 141, 71, 70, 69, 49, 68, 70, 49, 67, 82, 67, 72, 54, 63, 65, 58, 54, 53, 82, 61, 45, 61, 62, 69, 56, 54, 85, 70, 69, 65, 62, 71, 71, 49, 90, 56, 65, 64, 82, 89, 56, 59, 70, 64, 77, 48, 61, 66, 65, 89, 68, 55, 59, 59, 54, 59, 61, 63, 84, 63, 69, 69, 54, 77, 65, 54, 54, 60, 64, 64, 70, 57, 91, 68, 71, 45, 59, 53, 56, 67, 74, 72, 63, 57, 69, 60, 63, 52, 69, 63, 101, 63, 65, 57, 61, 54, 53, 45, 56, 59, 78, 80, 61, 63, 118, 62, 65, 63, 60, 54, 67, 62, 68, 108, 56, 63, 67, 83, 57, 79, 61, 59, 64, 58, 65, 77, 58, 71, 57, 69, 83, 60, 56, 83, 63, 62, 76, 58, 67, 60, 69, 73, 45, 54, 67, 62, 89, 63, 67, 83, 67, 62, 66, 51, 60, 82, 79, 40, 64, 67, 78, 63, 60, 66, 68, 69, 80, 50, 69, 75, 57, 67, 63, 50, 69, 65, 58, 87, 52, 50, 49, 79, 70, 67, 82, 55, 61, 40, 45, 82, 57, 79, 49, 54, 60, 75, 65, 46, 60, 64, 65, 64, 70, 74, 46, 91, 43, 65, 53, 81, 65, 58, 88, 70, 65, 64, 63, 54, 35, 47, 57, 48, 83, 68, 69, 44, 59, 69, 79, 78, 77, 72, 77, 70, 98, 62, 62, 58, 43, 86, 69, 60, 72, 42, 55, 64, 77, 67, 44, 53, 51, 77, 57, 56, 43, 69, 61, 69, 94, 50, 50, 74, 68, 67, 54, 86, 65, 63, 62, 60, 85, 76, 67, 68, 68, 74, 77, 41, 96, 55, 91, 54, 61, 85, 81, 62, 71, 46, 48, 69, 66, 78, 69, 57, 60, 69, 52, 74, 64, 81, 65, 51, 51, 56, 62, 59, 75, 65, 47, 71, 53, 57, 46, 59, 67, 76, 40, 65, 73, 58, 72, 86, 68, 63, 132, 59, 77, 62, 65, 46, 75, 58, 52, 59, 80, 62, 56, 64, 88, 49, 68, 46, 61, 79, 76, 106, 70, 40, 92, 41, 75, 62, 64, 98, 81, 68, 71, 104, 65, 66, 67, 87, 74, 93, 59, 76, 52, 40, 64, 50, 50, 59, 65, 83, 55, 44, 45, 53, 88, 68, 53, 77, 72, 77, 73, 80, 61, 59, 72, 74, 63, 58, 88, 78, 83, 60, 59, 49, 63, 60, 121, 68, 71, 64, 60, 69, 73, 55, 45, 57, 51, 114, 69, 72, 57, 56, 74, 50, 74, 73, 77, 82, 60, 76, 84, 79, 58, 51, 76, 65, 61, 69, 85, 73, 60, 62, 49, 45, 67, 62, 71, 54, 71, 54, 53, 64, 71, 56, 86, 60, 50, 86, 45, 54, 67, 59, 87, 95, 61, 82, 75, 66, 68, 50, 62, 67, 52, 93, 91, 59, 45, 63, 53, 66, 80, 59, 45, 67, 81, 57, 64, 75, 104, 64, 62, 80, 64, 46, 61, 94, 74, 63, 57, 42, 55, 76, 58, 83, 59, 79, 67, 81, 54, 84, 75, 62, 57, 86, 84, 80, 76, 50, 75, 62, 65, 56, 75, 69, 80, 71, 55, 87, 61, 53, 64, 49, 65, 51, 53, 82, 70, 83, 78, 69, 61, 105, 68, 52, 55, 43, 73, 34, 66, 54, 67, 72, 57, 56, 67, 61, 67, 47, 70, 58, 59, 58, 69, 66, 59, 81, 94, 57, 60, 138, 57, 89, 69, 50, 71, 67, 78, 62, 53, 60, 74, 58, 69, 44, 60, 76, 59, 89, 85, 71, 54, 51, 51, 49, 39, 80, 43, 80, 72, 66, 36, 46, 59, 69, 67, 42, 58, 95, 49, 52, 61, 76, 47, 60, 72, 81, 65, 55, 96, 43, 78, 75, 63, 64, 51, 70, 55, 63, 55, 44, 98, 71, 57, 55, 56, 85, 95, 59, 79, 74, 79, 82, 61, 58, 77, 70, 77, 70, 76, 60, 73, 70, 81, 57, 80, 70, 62, 65, 92, 71, 69, 60, 94, 77, 50, 49, 86, 57, 82, 54, 73, 64, 77, 58, 49, 79, 63, 68, 54, 89, 75, 60, 56, 53, 55, 48, 65, 68, 65, 54, 48, 55, 50, 70, 51, 63, 60, 76, 58, 75, 56, 74, 67, 53, 31, 70, 71, 66, 64, 81, 48, 76, 74, 90, 75, 70, 89, 56, 54, 79, 48, 68, 77, 51, 59, 70, 83, 51, 75, 58, 84, 78, 55, 69, 79, 64, 67, 83, 67, 79, 51, 49, 76, 51, 47, 87, 60, 44, 64, 56, 63, 67, 68, 80, 67, 51, 90, 53, 87, 51, 59, 100, 60, 68, 60, 65, 60, 55, 51, 70, 67, 61, 66, 50, 56, 63, 89, 65, 77, 55, 77, 53, 88, 92, 69, 66, 64, 89, 44, 69, 78, 87, 59, 75, 73, 70, 56, 52, 63, 89, 77, 53, 89, 65, 40, 52, 70, 61, 51, 65, 76, 76, 71, 57, 44, 53, 48, 70, 53, 85, 49, 82, 44, 74, 67, 79, 54, 70, 54, 66, 64, 62, 69, 64, 53, 57, 61, 109, 100, 60, 67, 63, 50, 58, 65, 94, 47, 55, 59, 72, 64, 72, 85, 63, 82, 63, 58, 48, 62, 104, 61, 71, 57, 46, 54, 48, 85, 63, 52, 55, 68, 74, 78, 66, 73, 81, 56, 76, 126, 42, 77, 89, 69, 56, 54, 49, 58, 89, 70, 64, 81, 47, 68, 44, 59, 54, 69, 65, 59, 80, 84, 75, 63, 72, 58, 88, 79, 44, 73, 59, 58, 59, 95, 67, 66, 89, 87, 58, 72, 61, 91, 107, 151, 37, 77, 65, 78, 94, 65, 71, 66, 85, 77, 60, 59, 81, 64, 63, 72, 106, 61, 56, 63, 52, 72, 76, 56, 87, 57, 55, 39, 92, 66, 57, 72, 75, 49, 41, 70, 49, 70, 55, 66, 93, 61, 65, 49, 118, 49, 54, 80, 68, 66, 61, 57, 60, 66, 61, 70, 66, 53, 62, 63, 84, 87, 79, 65, 70, 83, 86, 55, 67, 55, 64, 56, 66, 52, 67, 64, 52, 70, 82, 79, 96, 67, 45, 49, 56, 58, 71, 63, 59, 67, 66, 52, 64, 84, 55, 112, 50, 69, 51, 61, 73, 56, 55, 55, 69, 56, 78, 71, 69, 71, 67, 44, 55, 59, 71, 92, 60, 68, 88, 65, 44, 50, 52, 68, 49, 75, 66, 63, 81, 52, 54, 112, 56, 60, 68, 73, 72, 70, 77, 46, 78, 53, 64, 70, 85, 49, 65, 73, 77, 35, 49, 44, 65, 77, 58, 59, 65, 87, 78, 53, 45, 77, 50, 58, 53, 86, 73, 76, 37, 48, 52, 52, 58, 67, 52, 88, 103, 107, 48, 57, 66, 58, 69, 50, 66, 65, 68, 76, 76, 81, 68, 77, 57, 67, 70, 57, 88, 51, 74, 53, 61, 64, 70, 59, 64, 55, 71, 89, 60, 70, 57, 55, 38, 68, 63, 82, 68, 63, 68, 92, 53, 55, 77, 57, 40, 80, 80, 49, 76, 65, 79, 63, 47, 97, 60, 53, 95, 60, 77, 70, 76, 47, 60, 67, 90, 87, 63, 60, 64, 79, 66, 76, 53, 89, 76, 72, 76, 88, 86, 53, 67, 95, 42, 72, 85, 50, 68, 28, 67, 66, 83, 77, 72, 64, 81, 55, 62, 55, 63, 65, 45, 61, 57, 85, 101, 55, 47, 56, 73, 59, 60, 72, 59, 64, 61, 59, 55, 61, 74, 48, 62, 77, 60, 46, 57, 51, 54, 88, 65, 71, 80, 55, 74, 57, 67, 59, 65, 45, 59, 66, 47, 50, 53, 57, 53, 78, 73, 45, 56, 86, 95, 60, 127, 67, 88, 69, 66, 82, 60, 85, 52, 51, 52, 55, 79, 40, 54, 99, 46, 67, 73, 72, 74, 45, 50, 88, 69, 61, 72, 63, 48, 55, 53, 77, 51, 78, 70, 58, 69, 116, 56, 68, 57, 87, 59, 56, 59, 76, 52, 55, 60, 67, 75, 51, 78, 58, 82, 63, 98, 63, 35, 76, 86, 71, 63, 63, 88, 57, 42, 99, 52, 64, 49, 60, 58, 79, 76, 51, 65, 81, 54, 71, 57, 122, 97, 71, 67, 71, 69, 53, 52, 86, 60, 48, 63, 73, 74, 65, 52, 86, 65, 42, 50, 60, 77, 50, 44, 75, 63, 77, 59, 56, 57, 60, 61, 52, 57, 75, 67, 72, 57, 55, 60, 68, 72, 76, 99, 62, 92, 59, 53, 57, 82, 74, 104, 69, 34, 50, 57, 63, 56, 72, 58, 48, 69, 56, 68, 64, 73, 48, 53, 63, 69, 63, 50, 58, 49, 65, 71, 85, 57, 60, 58, 66, 86, 72, 49, 67, 69, 79, 42, 52, 63, 66, 63, 52, 77, 68, 49, 60, 75, 66, 78, 55, 58, 76, 57, 49, 72, 48, 66, 69, 103, 71, 50, 45, 46, 48, 69, 73, 92, 88, 65, 65, 77, 57, 101, 81, 71, 75, 55, 59, 67, 78, 76, 56, 75, 74, 68, 69, 59, 84, 63, 102, 66, 63, 69, 55, 97, 53, 60, 45, 71, 83, 85, 69, 71, 50, 53, 69, 61, 65, 65, 55, 70, 76, 91, 55, 73, 62, 64, 52, 65, 56, 47, 43, 50, 70, 44, 59, 83, 62, 115, 62, 82, 46, 69, 73, 91, 52, 82, 79, 64, 71, 87, 58, 62, 86, 56, 56, 62, 52, 74, 94, 52, 70, 91, 56, 82, 68, 49, 78, 114, 63, 64, 53, 62, 58, 48, 73, 60, 57, 53, 99, 63, 51, 95, 57, 64, 72, 76, 89, 69, 72, 63, 63, 34, 67, 63, 46, 80, 56, 68, 45, 51, 67, 74, 88, 55, 64, 58, 72, 69, 64, 54, 57, 63, 67, 61, 61, 76, 82, 60, 116, 57, 65, 56, 69, 58, 48, 65, 55, 88, 77, 66, 58, 77, 73, 36, 84, 60, 61, 65, 75, 40, 78, 57, 77, 68, 66, 60, 53, 49, 41, 84, 56, 53, 65, 79, 56, 44, 58, 72, 67, 93, 48, 71, 62, 47, 77, 53, 70, 77, 64, 73, 109, 48, 62, 65, 54, 57, 51, 63, 51, 61, 64, 58, 71, 42, 61, 63, 49, 62, 69, 56, 34, 58, 84, 53, 53, 88, 71, 63, 51, 69, 53, 68, 58, 74, 78, 72, 74, 69, 47, 59, 55, 54, 46, 71, 74, 50, 51, 56, 81, 57, 82, 54, 49, 63, 58, 71, 65, 123, 48, 64, 60, 41, 70, 67, 41, 68, 72, 49, 57, 65, 69, 60, 63, 58, 59, 83, 44, 90, 63, 50, 59, 53, 61, 77, 89, 84, 72, 68, 67, 63, 53, 61, 97, 66, 52, 74, 66, 60, 67, 63, 103, 62, 59, 46, 74, 67, 110, 47, 67, 63, 62, 61, 46, 66, 82, 64, 58, 49, 111, 67, 51, 83, 57, 40, 60, 58, 84, 83, 60, 58, 46, 71, 97, 114, 76, 60, 59, 79, 55, 67, 56, 86, 65, 43, 90, 67, 65, 56, 42, 76, 96, 55, 95, 113, 47, 67, 51, 86, 50, 56, 64, 54, 72, 57, 56, 55, 66, 92, 68, 59, 65, 49, 53, 54, 45, 70, 61, 101, 87, 59, 63, 64, 71, 75, 59, 62, 76, 57, 73, 30, 66, 91, 39, 64, 65, 75, 57, 58, 57, 74, 66, 69, 75, 67, 85, 69, 69, 63, 58, 79, 63, 71, 44, 77, 80, 56, 74, 45, 57, 47, 61, 65, 69, 65, 73, 53, 62, 63, 65, 82, 59, 58, 55, 55, 46, 98, 48, 60, 64, 102, 54, 53, 69, 63, 29, 61, 53, 38, 70, 67, 99, 77, 71, 83, 57, 59, 78, 76, 50, 69, 77, 62, 109, 60, 62, 58, 41, 100, 73, 76, 61, 66, 88, 70, 56, 50, 69, 55, 56, 53, 82, 45, 73, 43, 66, 105, 96, 83, 66, 50, 66, 52, 57, 97, 53, 65, 78, 48, 58, 77, 46, 97, 60, 65, 64, 72, 75, 61, 45, 76, 53, 64, 50, 67, 59, 86, 58, 82, 60, 69, 54, 70, 37, 131, 60, 78, 74, 52, 38, 59, 61, 63, 51, 93, 54, 57, 75, 77, 74, 71, 56, 45, 69, 77, 69, 55, 71, 54, 62, 79, 92, 56, 61, 44, 67, 69, 56, 53, 75, 68, 88, 50, 61, 69, 46, 73, 56, 66, 57, 92, 76, 72, 90, 63, 64, 55, 81, 64, 41, 63, 46, 48, 65, 58, 150, 53, 76, 59, 51, 55, 70, 55, 64, 60, 60, 64, 67, 40, 38, 70, 67, 79, 61, 86, 47, 69, 141, 93, 58, 71, 51, 76, 68, 60, 68, 78, 53, 129, 77, 61, 52, 53, 49, 54, 96, 66, 63, 59, 75, 103, 70, 61, 44, 60, 57, 89, 60, 68, 48, 69, 62, 55, 54, 57, 70, 66, 60, 94, 65, 47, 53, 55, 56, 93, 65, 70, 62, 84, 59, 60, 70, 44, 54, 79, 58, 55, 82, 66, 86, 70, 51, 67, 55, 56, 114, 60, 70, 66, 52, 49, 101, 65, 69, 59, 82, 97, 71, 65, 88, 61, 78, 64, 56, 70, 54, 67, 88, 62, 90, 71, 42, 48, 74, 58, 65, 58, 74, 68, 60, 57, 69, 79, 82, 39, 64, 85, 54, 85, 87, 48, 55, 73, 56, 64, 52, 61, 51, 61, 57, 64, 67, 71, 39, 64, 44, 52, 91, 60, 75, 68, 49, 47, 56, 72, 59, 76, 53, 83, 40, 61, 95, 61, 69, 72, 57, 61, 66, 81, 56, 47, 56, 98, 51, 71, 100, 72, 60, 62, 46, 77, 41, 75, 57, 69, 50, 51, 53, 75, 72, 78, 87, 55, 58, 67, 53, 68, 46, 78, 63, 65, 62, 80, 50, 60, 63, 73, 52, 117, 58, 80, 53, 53, 78, 68, 61, 40, 63, 86, 71, 71, 72, 42, 61, 70, 62, 51, 59, 79, 69, 61, 61, 62, 39, 83, 125, 56, 82, 38, 65, 70, 106, 56, 66, 62, 52, 52, 94, 51, 56, 86, 71, 56, 79, 73, 64, 60, 38, 57, 66, 68, 49, 58, 64, 75, 58, 63, 54, 53, 64, 60, 56, 61, 92, 59, 63, 91, 50, 116, 64, 70, 56, 59, 50, 61, 40, 79, 58, 66, 73, 89, 41, 100, 99, 78, 91, 67, 75, 66, 61, 43, 56, 76, 59, 73, 42, 58, 61, 70, 53, 84, 74, 55, 59, 78, 57, 47, 51, 59, 53, 52, 40, 52, 34, 66, 65, 88, 52, 54, 47, 54, 57, 57, 71, 59, 63, 66, 74, 62, 51, 50, 67, 52, 62, 80, 79, 64, 101, 53, 78, 54, 56, 75, 58, 79, 54, 57, 50, 57, 79, 51, 72, 108, 66, 73, 117, 73, 59, 106, 54, 75, 50, 52, 80, 66, 64, 54, 91, 50, 97, 75, 84, 76, 32, 89, 59, 55, 79, 100, 76, 71, 61, 28, 59, 65, 51, 60, 92, 86, 55, 47, 71, 52, 71, 64, 91, 63, 60, 51, 55, 61, 79, 70, 61, 72, 76, 57, 80, 47, 55, 51, 53, 60, 54, 91, 70, 63, 69, 58, 59, 59, 63, 58, 69, 67, 52, 43, 67, 72, 82, 53, 68, 92, 63, 67, 65, 50, 76, 73, 57, 42, 85, 63, 51, 106, 82, 76, 54, 43, 61, 72, 77, 49, 97, 56, 65, 59, 53, 56, 56, 63, 73, 82, 46, 81, 98, 61, 56, 83, 48, 91, 55, 78, 39, 45, 62, 76, 80, 70, 54, 52, 60, 66, 56, 56, 64, 68, 52, 94, 82, 77, 80, 94, 61, 54, 48, 58, 98, 63, 66, 53, 61, 51, 93, 65, 87, 70, 62, 57, 47, 75, 138, 54, 54, 70, 58, 53, 87, 70, 59, 38, 79, 81, 53, 59, 47, 93, 70, 56, 74, 81, 57, 47, 83, 58, 86, 63, 64, 87, 86, 80, 51, 77, 77, 63, 53, 71, 59, 69, 38, 49, 62, 98, 57, 46, 76, 67, 76, 68, 55, 54, 64, 82, 95, 52, 72, 105, 52, 50, 88, 62, 79, 65, 40, 58, 59, 62, 58, 53, 60, 73, 87, 154, 59, 52, 71, 71, 55, 108, 60, 73, 100, 49, 75, 71, 44, 99, 68, 55, 61, 43, 55, 73, 61, 52, 108, 67, 104, 72, 79, 58, 65, 48, 68, 62, 59, 78, 59, 78, 80, 79, 57, 70, 35, 68, 63, 53, 79, 70, 63, 110, 62, 62, 61, 47, 62, 70, 76, 52, 67, 65, 61, 59, 65, 62, 59, 62, 72, 79, 64, 53, 54, 46, 61, 82, 68, 56, 63, 84, 46, 81, 53, 64, 70, 110, 63, 46, 76, 58, 81, 46, 65, 38, 68, 59, 55, 107, 67, 53, 67, 58, 56, 81, 62, 55, 63, 53, 47, 75, 56, 55, 54, 66, 52, 53, 80, 67, 98, 62, 67, 53, 57, 51, 50, 78, 68, 57, 79, 60, 46, 91, 70, 61, 87, 57, 65, 71, 73, 110, 64, 78, 62, 85, 61, 79, 85, 72, 64, 60, 71, 65, 58, 51, 70, 94, 72, 61, 78, 65, 76, 70, 50, 69, 73, 69, 66, 51, 59, 62, 66, 68, 60, 71, 71, 57, 61, 55, 82, 60, 78, 57, 63, 67, 47, 55, 56, 63, 52, 64, 59, 93, 49, 90, 67, 79, 87, 69, 54, 53, 73, 50, 66, 81, 59, 45, 75, 63, 69, 62, 54, 77, 63, 141, 56, 72, 85, 57, 66, 71, 57, 48, 53, 103, 85, 62, 99, 61, 41, 81, 57, 60, 58, 64, 55, 47, 66, 71, 59, 70, 57, 59, 59, 60, 65, 67, 58, 61, 63, 118, 50, 77, 72, 54, 60, 62, 98, 62, 63, 56, 55, 94, 58, 86, 85, 57, 70, 62, 79, 64, 94, 65, 76, 54, 97, 107, 58, 64, 55, 74, 69, 97, 66, 63, 94, 61, 62, 66, 78, 50, 69, 71, 73, 94, 76, 59, 49, 60, 58, 87, 87, 59, 67, 66, 62, 64, 65, 50, 62, 81, 50, 59, 80, 69, 66, 73, 77, 75, 64, 66, 49, 44, 51, 61, 54, 96, 65, 55, 37, 89, 62, 109, 39, 79, 79, 82, 77, 51, 70, 58, 100, 55, 78, 73, 78, 51, 88, 54, 63, 62, 50, 90, 60, 69, 66, 58, 67, 117, 65, 111, 82, 46, 57, 61, 50, 71, 59, 56, 56, 33, 57, 73, 40, 50, 61, 38, 59, 84, 48, 47, 68, 56, 45, 71, 108, 68, 70, 52, 73, 60, 67, 53, 95, 72, 73, 29, 47, 78, 63, 57, 59, 69, 56, 56, 63, 79, 89, 60, 53, 46, 53, 70, 56, 64, 66, 43, 62, 82, 52, 63, 51, 74, 60, 55, 45, 57, 67, 44, 82, 75, 71, 67, 53, 60, 79, 97, 43, 49, 49, 54, 59, 65, 71, 95, 57, 69, 69, 47, 51, 65, 58, 66, 111, 81, 61, 50, 90, 62, 59, 79, 64, 57, 98, 65, 69, 74, 74, 63, 61, 58, 59, 59, 57, 58, 69, 91, 61, 66, 58, 74, 54, 67, 57, 41, 94, 94, 78, 49, 76, 61, 44, 81, 66, 84, 35, 54, 68, 72, 75, 59, 73, 57, 88, 62, 51, 64, 67, 50, 43, 60, 69, 80, 54, 65, 61, 83, 95, 50, 67, 45, 55, 67, 59, 81, 69, 73, 42, 73, 71, 42, 47, 82, 60, 38, 73, 57, 65, 74, 75, 82, 66, 86, 69, 58, 50, 55, 54, 51, 77, 60, 66, 70, 69, 58, 54, 67, 73, 66, 69, 75, 63, 54, 54, 69, 82, 68, 40, 66, 74, 71, 77, 53, 60, 68, 49, 73, 46, 37, 66, 54, 78, 68, 62, 53, 34, 75, 56, 52, 58, 57, 66, 67, 85, 80, 79, 87, 57, 59, 64, 66, 48, 75, 103, 54, 67, 66, 67, 75, 85, 56, 103, 44, 44, 81, 84, 59, 77, 59, 52, 54, 71, 60, 54, 69, 83, 75, 53, 65, 59, 84, 73, 53, 51, 63, 78, 64, 65, 67, 71, 63, 69, 65, 65, 65, 96, 56, 53, 63, 72, 54, 74, 78, 59, 45, 55, 46, 59, 77, 59, 75, 62, 57, 54, 72, 75, 59, 65, 54, 77, 54, 94, 60, 78, 57, 66, 47, 56, 52, 77, 58, 48, 70, 54, 50, 58, 51, 60, 74, 61, 46, 52, 53, 84, 60, 69, 60, 70, 77, 73, 47, 61, 64, 74, 66, 65, 67, 72, 59, 62, 68, 64, 61, 52, 68, 72, 54, 53, 45, 56, 60, 69, 55, 100, 68, 70, 58, 53, 85, 89, 106, 66, 58, 64, 73, 57, 56, 58, 76, 48, 76, 65, 49, 53, 64, 78, 61, 56, 93, 66, 57, 63, 59, 82, 83, 79, 53, 57, 54, 72, 72, 45, 70, 60, 57, 57, 58, 59, 75, 54, 51, 56, 64, 74, 55, 76, 67, 72, 61, 56, 56, 68, 52, 77, 71, 79, 68, 47, 50, 63, 61, 52, 73, 42, 71, 60, 69, 63, 60, 84, 91, 54, 60, 163, 82, 65, 105, 72, 57, 54, 62, 67, 51, 54, 48, 87, 60, 66, 56, 58, 64, 73, 70, 55, 60, 53, 67, 69, 61, 88, 52, 65, 63, 47, 79, 60, 68, 48, 70, 69, 48, 58, 63, 66, 52, 68, 67, 60, 66, 63, 56, 58, 89, 60, 67, 70, 80, 60, 65, 122, 127, 62, 85, 77, 75, 64, 70, 59, 72, 68, 52, 70, 41, 61, 52, 81, 49, 58, 77, 80, 62, 39, 59, 89, 58, 66, 59, 52, 64, 64, 67, 94, 62, 40, 69, 67, 62, 60, 72, 62, 58, 60, 140, 105, 42, 55, 46, 57, 63, 68, 59, 56, 81, 67, 58, 51, 80, 66, 75, 63, 62, 60, 77, 71, 63, 69, 69, 66, 67, 78, 45, 61, 52, 59, 54, 48, 76, 62, 60, 69, 66, 51, 43, 50, 61, 63, 65, 64, 66, 55, 68, 66, 74, 76, 73, 57, 63, 82, 63, 65, 65, 73, 78, 69, 59, 66, 56, 48, 71, 76, 55, 65, 63, 65, 61, 62, 74, 72, 59, 65, 82, 65, 56, 82, 60, 67, 64, 60, 55, 61, 52, 66, 66, 55, 51, 69, 79, 70, 60, 62, 76, 104, 154, 48, 60, 45, 62, 59, 60, 62, 58, 67, 98, 65, 78, 58, 70, 78, 59, 59, 60, 44, 72, 56, 80, 91, 63, 68, 69, 66, 62, 53, 89, 60, 47, 84, 53, 98, 74, 102, 69, 57, 71, 72, 65, 57, 59, 64, 63, 70, 48, 61, 52, 103, 60, 62, 57, 56, 64, 57, 92, 68, 66, 66, 66, 82, 59, 84, 81, 56, 71, 69, 75, 69, 62, 63, 72, 68, 69, 69, 53, 64, 68, 78, 66, 72, 61, 74, 66, 77, 51, 74, 64, 54, 83, 55, 51, 66, 63, 66, 82, 71, 53, 59, 136, 50, 65, 62, 74, 68, 68, 54, 57, 88, 66, 75, 58, 68, 53, 61, 61, 60, 89, 71, 58, 76, 56, 67, 62, 71, 56, 84, 60, 58, 66, 67, 57, 48, 70, 69, 66, 76, 86, 77, 161, 78, 45, 74, 45, 47, 69, 52, 54, 54, 56, 72, 72, 47, 68, 67, 63, 70, 58, 67, 90, 77, 69, 54, 68, 61, 63, 51, 57, 71, 65, 61, 68, 68, 72, 60, 56, 56, 74, 66, 61, 83, 104, 64, 71, 56, 76, 58, 88, 64, 110, 56, 59, 49, 66, 61, 57, 67, 53, 66, 73, 47, 76, 81, 78, 48, 50, 58, 54, 58, 63, 54, 69, 73, 51, 72, 58, 72, 54, 62, 76, 47, 58, 48, 72, 58, 57, 63, 62, 80, 62, 65, 73, 54, 59, 81, 52, 82, 66, 57, 72, 47, 61, 56, 68, 59, 91, 62, 70, 73, 85, 65, 70, 66, 70, 67, 65, 74, 67, 55, 76, 65, 66, 63, 51, 67, 68, 104, 69, 72, 59, 77, 91, 60, 91, 63, 50, 67, 65, 64, 63, 70, 72, 53, 89, 54, 50, 66, 60, 76, 46, 81, 44, 105, 69, 97, 58, 62, 56, 63, 123, 66, 68, 66, 73, 66, 63, 68, 84, 55, 62, 82, 75, 67, 90, 61, 67, 42, 62, 45, 102, 60, 65, 79, 85, 67, 64, 64, 57, 79, 52, 61, 69, 59, 60, 93, 66, 65, 56, 67, 74, 63, 66, 55, 64, 48, 74, 80, 66, 104, 64, 74, 57, 95, 61, 79, 61, 61, 62, 63, 66, 71, 69, 69, 75, 67, 60, 78, 62, 61, 110, 55, 64, 66, 40, 76, 52, 66, 50, 65, 72, 61, 96, 42, 56, 88, 61, 55, 71, 75, 59, 70, 62, 86, 79, 54, 63, 71, 51, 67, 52, 67, 54, 95, 65, 73, 50, 75, 40, 47, 72, 74, 59, 74, 61, 75, 63, 59, 75, 64, 68, 49, 55, 79, 56, 52, 49, 55, 67, 67, 57, 60, 54, 93, 70, 60, 56, 54, 71, 50, 97, 63, 56, 67, 67, 70, 88, 68, 67, 66, 83, 46, 49, 73, 62, 66, 68, 56, 58, 62, 61, 49, 56, 71, 63, 92, 61, 60, 68, 63, 84, 56, 56, 55, 80, 54, 65, 62, 61, 70, 69, 81, 54, 68, 58, 90, 53, 79, 61, 61, 56, 65, 63, 71, 54, 62, 63, 57, 94, 76, 78, 67, 85, 59, 60, 58, 122, 67, 71, 59, 89, 85, 69, 59, 67, 64, 74, 68, 85, 51, 65, 75, 92, 62, 79, 84, 69, 64, 70, 74, 67, 52, 58, 60, 54, 59, 53, 86, 72, 67, 57, 67, 59, 52, 57, 50, 58, 65, 65, 52, 63, 59, 68, 54, 62, 66, 80, 64, 51, 58, 96, 66, 55, 82, 65, 51, 60, 63, 44, 69, 71, 70, 130, 62, 71, 57, 67, 54, 62, 58, 108, 70, 96, 65, 69, 72, 89, 122, 61, 67, 48, 54, 48, 67, 49, 66, 58, 70, 68, 67, 61, 69, 91, 82, 84, 68, 58, 52, 101, 79, 50, 76, 56, 74, 75, 59, 77, 60, 81, 61, 63, 54, 99, 112, 68, 77, 62, 128, 82, 66, 62, 59, 59, 57, 86, 54, 48, 58, 75, 51, 67, 54, 63, 79, 73, 105, 62, 62, 59, 75, 52, 59, 96, 67, 66, 51, 61, 58, 49, 68, 50, 56, 61, 62, 55, 83, 52, 50, 61, 38, 72, 68, 55, 61, 86, 56, 67, 68, 87, 75, 52, 52, 67, 64, 55, 46, 61, 71, 63, 59, 68, 77, 62, 71, 62, 69, 50, 64, 77, 49, 91, 58, 62, 79, 68, 54, 62, 61, 90, 60, 52, 69, 59, 53, 40, 87, 93, 68, 85, 80, 60, 55, 55, 60, 69, 53, 74, 49, 67, 84, 59, 54, 51, 81, 91, 72, 73, 67, 65, 69, 61, 59, 104, 52, 60, 65, 58, 64, 54, 73, 65, 70, 107, 67, 73, 61, 82, 49, 68, 50, 67, 71, 43, 39, 56, 79, 59, 57, 70, 70, 65, 59, 65, 60, 70, 66, 63, 35, 71, 59, 41, 66, 75, 63, 64, 88, 51, 91, 36, 73, 75, 79, 91, 65, 60, 65, 47, 65, 53, 49, 75, 58, 58, 60, 64, 59, 93, 94, 79, 57, 49, 60, 56, 86, 61, 54, 97, 69, 46, 77, 64, 75, 74, 57, 60, 76, 63, 73, 45, 55, 51, 70, 57, 54, 68, 67, 55, 56, 64, 55, 52, 85, 78, 67, 76, 66, 50, 67, 51, 59, 52, 60, 68, 60, 77, 70, 59, 93, 59, 79, 50, 70, 104, 55, 67, 67, 69, 85, 53, 54, 69, 78, 66, 57, 61, 68, 53, 46, 61, 50, 56, 75, 54, 64, 89, 59, 59, 67, 66, 61, 54, 61, 70, 52, 58, 76, 59, 62, 80, 65, 62, 75, 52, 91, 57, 87, 68, 59, 47, 60, 58, 44, 60, 82, 47, 77, 62, 64, 53, 81, 68, 62, 70, 71, 55, 54, 58, 58, 62, 99, 67, 72, 59, 80, 58, 55, 58, 81, 58, 67, 56, 70, 71, 65, 76, 86, 78, 57, 85, 61, 43, 65, 58, 77, 48, 49, 58, 68, 90, 61, 63, 59, 60, 56, 61, 78, 55, 95, 104, 43, 62, 62, 74, 80, 75, 56, 42, 61, 70, 70, 65, 50, 69, 61, 66, 44, 67, 67, 62, 66, 83, 79, 68, 44, 62, 69, 75, 83, 39, 67, 70, 73, 68, 61, 46, 64, 72, 117, 93, 61, 60, 60, 60, 50, 58, 60, 81, 61, 85, 63, 72, 61, 51, 51, 71, 57, 59, 90, 55, 72, 72, 74, 51, 63, 57, 66, 66, 62, 80, 41, 68, 66, 69, 50, 88, 55, 78, 60, 65, 73, 60, 56, 69, 87, 62, 55, 62, 65, 60, 66, 73, 61, 56, 87, 59, 49, 83, 60, 65, 57, 59, 90, 87, 87, 79, 65, 46, 56, 81, 45, 58, 70, 67, 73, 64, 50, 56, 65, 71, 64, 57, 48, 69, 39, 73, 79, 65, 62, 78, 56, 55, 63, 61, 63, 45, 59, 62, 64, 59, 57, 77, 59, 71, 65, 92, 74, 71, 71, 48, 71, 56, 58, 54, 107, 56, 62, 61, 56, 58, 79, 58, 85, 55, 47, 60, 56, 127, 58, 54, 87, 75, 54, 76, 116, 58, 93, 68, 58, 81, 88, 65, 62, 67, 60, 60, 80, 65, 94, 64, 127, 62, 87, 78, 74, 81, 74, 71, 63, 60, 71, 70, 64, 63, 64, 76, 73, 64, 54, 65, 62, 73, 46, 82, 40, 71, 55, 56, 50, 70, 55, 65, 54, 82, 48, 89, 66, 67, 67, 57, 67, 55, 48, 65, 47, 50, 70, 62, 59, 67, 84, 62, 69, 73, 96, 69, 58, 74, 53, 58, 49, 58, 45, 70, 56, 70, 56, 47, 70, 58, 90, 59, 45, 63, 50, 58, 50, 66, 68, 83, 75, 61, 80, 60, 81, 90, 78, 85, 66, 67, 73, 65, 51, 62, 63, 56, 50, 64, 53, 70, 57, 108, 73, 87, 64, 55, 73, 63, 103, 59, 61, 74, 71, 69, 81, 75, 60, 51, 53, 47, 40, 57, 66, 66, 57, 87, 70, 71, 43, 61, 64, 70, 86, 51, 78, 80, 78, 51, 58, 64, 94, 64, 62, 111, 69, 58, 90, 76, 80, 76, 61, 78, 70, 91, 62, 71, 61, 47, 104, 61, 52, 55, 86, 48, 92, 71, 84, 81, 53, 67, 66, 67, 56, 60, 67, 62, 60, 43, 52, 47, 55, 67, 61, 90, 75, 105, 74, 65, 68, 66, 55, 45, 60, 53, 65, 52, 30, 101, 63, 62, 66, 51, 98, 78, 51, 64, 97, 81, 67, 79, 62, 54, 62, 77, 73, 48, 49, 70, 60, 69, 41, 73, 61, 81, 62, 89, 49, 60, 47, 46, 66, 70, 63, 81, 75, 85, 78, 72, 53, 58, 67, 53, 55, 66, 56, 50, 76, 62, 51, 61, 96, 142, 58, 55, 67, 66, 104, 74, 51, 67, 70, 52, 67, 82, 64, 54, 66, 53, 56, 58, 72, 69, 98, 114, 43, 61, 70, 82, 72, 51, 58, 54, 63, 59, 60, 57, 60, 60, 75, 58, 56, 76, 57, 98, 56, 79, 62, 73, 84, 64, 62, 54, 56, 53, 70, 69, 71, 67, 62, 63, 75, 67, 62, 59, 63, 63, 50, 67, 79, 65, 61, 85, 61, 56, 64, 62, 61, 63, 56, 52, 61, 72, 51, 43, 55, 72, 72, 151, 76, 51, 47, 71, 66, 72, 74, 69, 70, 59, 70, 62, 109, 65, 81, 84, 66, 52, 67, 71, 71, 99, 66, 59, 51, 41, 49, 58, 55, 78, 73, 77, 78, 70, 63, 69, 48, 81, 54, 74, 54, 57, 83, 66, 79, 70, 82, 83, 52, 90, 53, 81, 65, 109, 66, 86, 64, 79, 40, 76, 66, 60, 54, 77, 91, 81, 57, 71, 55, 50, 46, 67, 72, 49, 53, 58, 86, 78, 45, 67, 91, 59, 52, 89, 67, 55, 54, 74, 57, 69, 82, 69, 57, 62, 78, 51, 62, 94, 88, 67, 81, 74, 60, 39, 80, 68, 53, 62, 67, 69, 66, 63, 45, 55, 100, 68, 48, 71, 63, 60, 70, 75, 78, 52, 62, 73, 56, 77, 83, 53, 70, 62, 67, 89, 54, 75, 74, 105, 62, 69, 55, 64, 58, 69, 66, 76, 67, 68, 95, 52, 50, 51, 50, 69, 54, 61, 68, 64, 66, 61, 68, 79, 72, 82, 76, 59, 58, 57, 80, 46, 94, 77, 60, 95, 138, 62, 48, 83, 59, 102, 85, 72, 49, 100, 77, 63, 73, 61, 51, 64, 74, 91, 40, 83, 76, 73, 58, 66, 87, 64, 80, 51, 47, 66, 92, 63, 68, 104, 57, 53, 74, 52, 72, 68, 69, 80, 99, 64, 80, 67, 61, 123, 68, 69, 61, 52, 63, 50, 54, 60, 77, 60, 61, 72, 74, 86, 53, 59, 58, 64, 63, 75, 75, 61, 61, 72, 78, 76, 52, 35, 66, 75, 74, 74, 60, 97, 103, 108, 55, 57, 72, 46, 51, 74, 56, 57, 67, 77, 70, 49, 99, 52, 66, 42, 60, 66, 54, 96, 44, 78, 57, 94, 64, 60, 49, 60, 87, 84, 45, 92, 73, 50, 68, 68, 55, 87, 63, 83, 90, 61, 62, 91, 68, 71, 61, 55, 60, 81, 72, 45, 69, 84, 65, 71, 56, 43, 60, 61, 68, 56, 56, 49, 61, 74, 43, 70, 66, 55, 50, 48, 60, 72, 68, 82, 47, 77, 62, 72, 54, 66, 62, 79, 58, 53, 76, 43, 78, 74, 64, 50, 114, 71, 65, 55, 81, 56, 65, 87, 69, 75, 55, 69, 76, 62, 64, 82, 92, 61, 56, 83, 80, 92, 69, 64, 69, 59, 57, 68, 68, 73, 72, 61, 100, 74, 66, 79, 67, 50, 56, 67, 59, 57, 73, 68, 97, 50, 76, 59, 70, 69, 77, 62, 105, 64, 93, 62, 66, 77, 75, 50, 67, 54, 69, 59, 60, 75, 49, 51, 63, 59, 74, 56, 64, 46, 55, 108, 69, 81, 54, 44, 54, 59, 60, 72, 66, 78, 51, 76, 74, 65, 69, 48, 66, 68, 55, 68, 75, 72, 76, 59, 57, 70, 65, 78, 48, 70, 92, 74, 67, 85, 70, 70, 48, 63, 68, 57, 67, 98, 64, 76, 84, 70, 73, 59, 77, 77, 74, 58, 60, 58, 67, 53, 48, 78, 63, 76, 60, 95, 75, 70, 58, 82, 73, 71, 87, 76, 50, 70, 52, 57, 62, 53, 70, 59, 61, 63, 70, 55, 81, 72, 50, 54, 77, 69, 64, 34, 52, 50, 64, 59, 76, 50, 57, 82, 37, 45, 82, 59, 64, 83, 75, 54, 87, 73, 77, 59, 84, 96, 75, 59, 64, 48, 93, 61, 74, 65, 70, 64, 38, 74, 78, 59, 54, 98, 49, 68, 62, 66, 73, 61, 79, 42, 67, 78, 69, 69, 72, 45, 64, 60, 55, 59, 78, 91, 65, 66, 90, 80, 66, 27, 54, 76, 52, 65, 70, 54, 63, 54, 115, 70, 54, 62, 62, 68, 52, 98, 47, 45, 63, 60, 85, 62, 61, 55, 67, 69, 59, 77, 68, 75, 56, 52, 55, 62, 81, 37, 75, 86, 93, 61, 76, 68, 70, 55, 75, 59, 57, 33, 74, 65, 55, 52, 57, 83, 74, 55, 55, 62, 50, 59, 60, 65, 86, 65, 62, 60, 74, 83, 61, 53, 53, 92, 56, 62, 74, 55, 68, 83, 107, 90, 61, 64, 106, 60, 72, 77, 52, 57, 36, 67, 91, 68, 60, 56, 40, 72, 58, 62, 55, 87, 66, 71, 54, 79, 49, 89, 65, 58, 65, 87, 68, 64, 67, 71, 70, 60, 66, 43, 84, 136, 58, 69, 54, 66, 58, 57, 66, 34, 72, 57, 80, 73, 63, 69, 69, 32, 79, 61, 54, 74, 53, 57, 57, 65, 60, 50, 67, 63, 79, 80, 59, 55, 63, 96, 66, 53, 83, 58, 67, 48, 50, 128, 52, 67, 64, 50, 50, 74, 84, 68, 49, 75, 81, 63, 42, 78, 70, 70, 89, 83, 48, 71, 42, 62, 63, 62, 59, 115, 64, 72, 52, 50, 68, 38, 105, 77, 74, 50, 88, 68, 52, 63, 68, 73, 71, 72, 61, 69, 63, 58, 50, 58, 89, 70, 88, 70, 57, 63, 58, 51, 65, 54, 72, 72, 61, 51, 56, 72, 71, 64, 80, 69, 92, 52, 74, 66, 71, 64, 46, 58, 76, 57, 84, 53, 62, 70, 59, 112, 65, 69, 63, 69, 76, 58, 67, 73, 74, 47, 35, 53, 80, 65, 70, 42, 76, 84, 73, 68, 60, 94, 66, 75, 130, 76, 46, 47, 73, 60, 68, 83, 78, 61, 72, 62, 76, 77, 66, 53, 85, 58, 78, 75, 61, 62, 82, 59, 51, 70, 58, 68, 96, 93, 61, 41, 73, 53, 67, 75, 69, 88, 55, 90, 51, 91, 64, 57, 72, 59, 72, 51, 82, 74, 47, 142, 80, 76, 55, 51, 63, 54, 69, 71, 74, 62, 73, 71, 52, 60, 66, 86, 66, 55, 72, 58, 65, 59, 71, 44, 79, 59, 96, 72, 95, 115, 93, 79, 52, 50, 51, 48, 93, 59, 70, 63, 58, 71, 98, 60, 68, 60, 73, 63, 38, 92, 73, 58, 61, 66, 64, 73, 41, 71, 76, 66, 69, 108, 77, 65, 57, 78, 64, 56, 48, 44, 52, 67, 65, 82, 70, 78, 53, 75, 71, 46, 60, 72, 52, 66, 63, 93, 74, 48, 85, 51, 49, 51, 54, 69, 51, 62, 64, 50, 50, 58, 49, 63, 74, 65, 33, 92, 61, 65, 80, 59, 62, 51, 107, 66, 67, 81, 93, 84, 63, 39, 59, 56, 66, 67, 69, 74, 85, 57, 93, 57, 94, 67, 88, 59, 58, 51, 88, 62, 72, 85, 80, 67, 49, 70, 56, 50, 46, 51, 56, 52, 48, 67, 46, 59, 49, 60, 57, 103, 62, 54, 71, 67, 70, 70, 57, 53, 48, 73, 93, 63, 86, 72, 85, 51, 72, 92, 60, 78, 59, 74, 72, 59, 75, 54, 72, 68, 63, 75, 92, 50, 64, 52, 53, 48, 80, 59, 75, 54, 65, 68, 68, 78, 61, 69, 57, 65, 75, 40, 77, 69, 59, 52, 61, 63, 61, 61, 62, 75, 79, 56, 61, 62, 86, 67, 56, 56, 55, 91, 51, 57, 73, 88, 92, 65, 100, 64, 72, 82, 53, 61, 69, 47, 39, 46, 57, 60, 71, 60, 61, 48, 69, 59, 48, 78, 47, 60, 57, 62, 91, 50, 66, 54, 55, 54, 77, 40, 70, 57, 59, 55, 75, 63, 52, 48, 60, 69, 91, 45, 53, 61, 49, 81, 56, 65, 84, 60, 90, 81, 63, 63, 68, 59, 52, 46, 45, 64, 74, 102, 61, 51, 75, 56, 53, 57, 71, 42, 59, 62, 55, 64, 57, 109, 62, 63, 56, 49, 50, 48, 67, 67, 69, 77, 85, 92, 81, 52, 44, 40, 67, 67, 55, 55, 77, 59, 57, 62, 62, 65, 90, 46, 91, 70, 57, 81, 66, 68, 60, 27, 88, 50, 96, 62, 72, 69, 64, 109, 70, 71, 66, 56, 93, 69, 68, 65, 63, 83, 66, 63, 49, 72, 68, 38, 53, 50, 103, 60, 49, 93, 64, 73, 67, 76, 62, 68, 86, 64, 49, 62, 68, 58, 75, 52, 59, 58, 57, 58, 64, 73, 73, 66, 54, 65, 61, 67, 52, 109, 54, 68, 43, 95, 59, 67, 66, 96, 62, 66, 77, 55, 63, 59, 68, 61, 84, 74, 63, 61, 78, 79, 68, 56, 79, 42, 68, 61, 59, 46, 58, 56, 67, 94, 80, 53, 77, 72, 109, 59, 70, 56, 60, 64, 38, 56, 65, 83, 53, 72, 63, 58, 72, 68, 59, 81, 60, 71, 54, 52, 56, 66, 67, 85, 68, 87, 30, 69, 51, 62, 54, 102, 58, 73, 69, 74, 66, 52, 65, 95, 75, 109, 65, 73, 53, 64, 66, 66, 83, 83, 40, 60, 70, 48, 72, 76, 82, 64, 70, 56, 55, 57, 61, 43, 58, 65, 42, 64, 90, 75, 62, 57, 70, 79, 50, 59, 64, 66, 94, 55, 72, 59, 51, 70, 58, 41, 70, 51, 67, 63, 61, 60, 65, 56, 66, 59, 75, 73, 73, 74, 93, 57, 73, 51, 68, 64, 58, 67, 69, 65, 79, 80, 62, 52, 87, 64, 51, 52, 61, 68, 71, 66, 73, 60, 55, 53, 72, 54, 69, 71, 65, 55, 68, 93, 47, 88, 74, 58, 71, 93, 74, 78, 59, 73, 64, 77, 84, 66, 79, 52, 48, 63, 62, 60, 41, 67, 53, 58, 70, 49, 54, 68, 42, 34, 59, 65, 63, 59, 67, 78, 57, 64, 66, 109, 67, 77, 69, 49, 57, 55, 80, 57, 77, 56, 73, 51, 67, 88, 93, 69, 86, 50, 56, 103, 64, 40, 53, 44, 63, 46, 88, 48, 70, 48, 74, 67, 109, 64, 72, 57, 54, 58, 79, 73, 60, 74, 68, 55, 69, 65, 82, 55, 68, 57, 51, 55, 80, 59, 46, 58, 50, 53, 72, 54, 53, 86, 71, 77, 61, 65, 87, 61, 61, 62, 71, 102, 63, 59, 71, 72, 63, 67, 65, 98, 67, 53, 61, 64, 45, 59, 90, 44, 106, 67, 59, 62, 63, 64, 57, 59, 42, 76, 59, 99, 73, 62, 65, 75, 64, 53, 59, 63, 73, 67, 53, 69, 60, 62, 72, 83, 61, 51, 68, 54, 68, 54, 48, 49, 86, 88, 64, 58, 55, 57, 44, 48, 58, 81, 64, 55, 70, 73, 62, 55, 66, 73, 65, 57, 54, 64, 55, 47, 63, 51, 77, 58, 66, 45, 52, 60, 53, 63, 87, 43, 79, 53, 105, 67, 61, 69, 56, 60, 49, 41, 71, 41, 48, 60, 58, 61, 84, 73, 45, 60, 82, 49, 58, 100, 64, 60, 91, 70, 109, 71, 82, 64, 69, 60, 73, 56, 74, 57, 55, 60, 61, 72, 51, 63, 61, 67, 76, 59, 65, 72, 80, 43, 82, 64, 64, 66, 55, 54, 51, 53, 58, 64, 58, 65, 59, 54, 58, 47, 60, 81, 72, 72, 75, 116, 62, 64, 92, 52, 71, 60, 64, 53, 47, 71, 58, 50, 80, 51, 52, 53, 79, 64, 60, 75, 99, 95, 97, 66, 53, 75, 61, 82, 70, 47, 53, 48, 57, 80, 47, 79, 50, 64, 65, 115, 63, 67, 62, 56, 54, 57, 59, 67, 63, 63, 77, 80, 63, 63, 65, 49, 46, 65, 53, 63, 48, 58, 67, 61, 56, 55, 72, 50, 70, 63, 49, 57, 64, 73, 67, 57, 117, 106, 48, 70, 67, 64, 76, 64, 69, 67, 64, 80, 56, 61, 71, 73, 55, 81, 63, 78, 59, 95, 64, 90, 59, 41, 60, 60, 53, 89, 98, 58, 78, 63, 111, 63, 67, 57, 54, 66, 56, 47, 81, 77, 63, 68, 56, 58, 61, 67, 75, 74, 49, 71, 53, 66, 72, 70, 66, 83, 86, 52, 54, 70, 62, 47, 70, 57, 87, 79, 70, 52, 68, 48, 59, 63, 101, 89, 66, 82, 42, 62, 72, 73, 60, 55, 56, 76, 64, 73, 76, 76, 51, 115, 113, 70, 48, 62, 72, 74, 44, 71, 75, 63, 65, 47, 62, 58, 67, 60, 52, 93, 71, 63, 58, 57, 63, 59, 72, 67, 109, 88, 44, 84, 64, 57, 55, 65, 62, 65, 65, 62, 65, 53, 44, 76, 49, 56, 65, 59, 71, 85, 56, 46, 50, 53, 62, 49, 73, 66, 62, 57, 51, 71, 86, 123, 71, 50, 73, 58, 57, 47, 50, 66, 72, 70, 70, 64, 60, 90, 54, 47, 62, 88, 61, 66, 60, 56, 63, 100, 77, 55, 62, 56, 46, 60, 57, 62, 52, 81, 64, 79, 85, 61, 76, 50, 68, 58, 80, 54, 51, 61, 68, 59, 80, 50, 83, 59, 59, 45, 57, 56, 58, 91, 74, 58, 58, 58, 51, 75, 101, 67, 70, 48, 106, 51, 72, 54, 88, 78, 71, 57, 54, 53, 79, 63, 64, 72, 87, 78, 50, 56, 63, 58, 113, 54, 65, 58, 78, 83, 58, 62, 60, 78, 62, 69, 61, 77, 55, 80, 61, 65, 69, 52, 81, 65, 54, 80, 63, 63, 58, 41, 157, 72, 59, 63, 71, 67, 67, 42, 59, 62, 65, 65, 62, 106, 50, 74, 67, 57, 61, 54, 87, 61, 58, 65, 55, 44, 64, 67, 56, 81, 76, 60, 86, 76, 68, 62, 80, 53, 39, 66, 53, 64, 94, 66, 71, 72, 57, 73, 65, 70, 73, 53, 67, 79, 70, 90, 94, 67, 54, 58, 52, 59, 134, 73, 94, 60, 74, 59, 69, 59, 49, 55, 48, 75, 74, 57, 79, 70, 46, 48, 52, 61, 47, 82, 40, 64, 57, 72, 51, 65, 59, 61, 53, 62, 57, 46, 93, 86, 72, 62, 100, 46, 53, 50, 54, 61, 51, 96, 59, 62, 48, 62, 66, 82, 65, 72, 70, 69, 64, 59, 65, 65, 60, 74, 82, 61, 63, 65, 87, 73, 59, 63, 63, 66, 66, 69, 65, 63, 53, 58, 79, 58, 65, 67, 60, 60, 74, 47, 60, 67, 67, 65, 58, 61, 78, 78, 57, 56, 52, 48, 66, 69, 50, 62, 61, 91, 70, 114, 56, 61, 60, 86, 63, 73, 73, 63, 64, 64, 64, 60, 56, 72, 77, 70, 45, 60, 77, 62, 63, 54, 60, 66, 60, 58, 67, 85, 72, 71, 52, 71, 104, 62, 60, 72, 91, 59, 62, 78, 55, 57, 61, 74, 54, 59, 69, 44, 63, 62, 66, 69, 83, 64, 57, 64, 54, 90, 90, 69, 81, 52, 88, 58, 82, 55, 49, 64, 56, 67, 68, 59, 60, 103, 72, 93, 57, 69, 72, 83, 60, 90, 75, 72, 63, 55, 60, 56, 55, 63, 72, 67, 65, 75, 59, 67, 59, 72, 60, 39, 49, 90, 66, 61, 77, 108, 69, 86, 60, 51, 72, 64, 46, 61, 60, 71, 65, 51, 65, 66, 65, 77, 65, 72, 46, 45, 56, 59, 51, 62, 56, 95, 56, 48, 55, 67, 64, 65, 48, 58, 67, 62, 59, 74, 89, 58, 56, 83, 60, 72, 63, 95, 52, 53, 72, 45, 60, 65, 54, 45, 59, 67, 60, 67, 84, 56, 68, 43, 73, 79, 58, 66, 50, 42, 59, 52, 60, 50, 60, 55, 63, 51, 54, 60, 70, 76, 58, 59, 66, 61, 95, 67, 47, 72, 70, 58, 77, 56, 62, 74, 66, 63, 62, 115, 50, 59, 60, 58, 84, 50, 57, 78, 48, 67, 68, 65, 59, 61, 36, 87, 92, 71, 64, 66, 83, 73, 66, 63, 69, 90, 69, 63, 60, 63, 59, 46, 66, 52, 50, 50, 72, 62, 65, 69, 64, 65, 53, 60, 65, 69, 68, 59, 69, 63, 79, 56, 49, 81, 58, 68, 75, 64, 62, 64, 70, 56, 68, 74, 61, 67, 70, 60, 68, 72, 60, 58, 67, 66, 71, 64, 58, 66, 68, 75, 41, 65, 69, 47, 79, 61, 54, 57, 61, 49, 84, 90, 53, 58, 55, 52, 61, 75, 63, 45, 46, 65, 72, 62, 67, 61, 67, 55, 74, 61, 78, 63, 41, 57, 96, 55, 61, 68, 60, 59, 62, 66, 74, 58, 62, 78, 97, 87, 68, 60, 63, 70, 82, 48, 69, 61, 68, 60, 64, 71, 61, 56, 59, 76, 80, 70, 78, 63, 68, 49, 130, 66, 64, 117, 70, 77, 51, 56, 51, 52, 76, 69, 71, 82, 61, 51, 48, 57, 92, 72, 61, 59, 75, 47, 63, 65, 59, 81, 54, 64, 76, 50, 67, 65, 61, 69, 71, 56, 73, 60, 71, 75, 53, 67, 44, 84, 59, 63, 87, 92, 74, 67, 66, 67, 59, 96, 70, 62, 56, 66, 67, 45, 60, 64, 73, 90, 75, 48, 59, 62, 66, 55, 52, 51, 77, 61, 77, 58, 57, 55, 78, 71, 64, 61, 60, 64, 72, 86, 73, 67, 56, 57, 76, 49, 84, 50, 72, 46, 54, 71, 67, 72, 49, 69, 63, 44, 89, 76, 65, 75, 66, 68, 66, 63, 56, 67, 59, 67, 55, 104, 61, 73, 86, 74, 85, 57, 77, 65, 54, 53, 79, 62, 62, 66, 56, 64, 55, 75, 137, 61, 74, 73, 55, 65, 61, 58, 64, 71, 65, 57, 70, 88, 48, 72, 54, 57, 61, 66, 53, 62, 57, 90, 59, 66, 75, 56, 74, 69, 105, 58, 61, 121, 62, 72, 70, 67, 53, 66, 69, 69, 61, 46, 64, 70, 47, 62, 77, 71, 49, 60, 64, 57, 56, 65, 71, 69, 65, 58, 80, 49, 55, 81, 88, 61, 78, 54, 81, 40, 91, 56, 89, 75, 59, 69, 72, 56, 74, 69, 103, 58, 61, 58, 53, 43, 56, 53, 53, 53, 52, 85, 45, 103, 62, 56, 61, 67, 58, 93, 64, 62, 79, 83, 63, 63, 62, 59, 60, 60, 54, 47, 57, 85, 94, 57, 99, 68, 188, 67, 55, 56, 77, 62, 69, 63, 69, 41, 60, 61, 63, 48, 70, 67, 67, 56, 77, 65, 57, 69, 63, 126, 106, 66, 67, 74, 64, 66, 49, 49, 74, 67, 61, 71, 61, 103, 72, 57, 68, 46, 62, 58, 63, 70, 113, 57, 71, 60, 61, 57, 70, 52, 41, 40, 60, 60, 64, 54, 56, 79, 69, 66, 59, 47, 62, 53, 65, 73, 55, 49, 81, 75, 61, 74, 57, 59, 68, 65, 50, 64, 78, 77, 71, 66, 109, 64, 68, 53, 61, 54, 74, 96, 64, 65, 59, 76, 66, 72, 54, 57, 81, 58, 53, 58, 65, 67, 83, 54, 67, 54, 73, 66, 54, 74, 64, 54, 82, 67, 71, 49, 70, 79, 71, 59, 59, 61, 57, 55, 67, 47, 68, 78, 60, 53, 68, 70, 63, 59, 59, 71, 85, 82, 65, 80, 90, 71, 55, 70, 54, 52, 67, 51, 71, 62, 68, 55, 51, 133, 51, 48, 69, 69, 59, 69, 58, 95, 62, 64, 57, 74, 77, 69, 62, 67, 58, 63, 73, 76, 89, 63, 91, 71, 64, 63, 64, 53, 70, 98, 94, 63, 50, 53, 78, 73, 60, 69, 60, 45, 64, 61, 55, 65, 61, 59, 60, 67, 62, 68, 76, 66, 64, 63, 66, 76, 55, 68, 62, 65, 57, 58, 66, 68, 64, 50, 38, 57, 58, 66, 42, 60, 76, 40, 49, 75, 50, 55, 68, 70, 58, 59, 72, 59, 65, 62, 44, 58, 65, 61, 68, 93, 151, 75, 52, 55, 53, 54, 70, 73, 51, 53, 82, 86, 58, 64, 124, 65, 57, 62, 73, 48, 59, 51, 79, 59, 54, 62, 58, 53, 52, 66, 69, 60, 78, 51, 65, 66, 70, 94, 74, 69, 124, 83, 77, 64, 68, 63, 71, 58, 85, 68, 62, 84, 90, 82, 76, 49, 66, 51, 47, 77, 79, 80, 55, 68, 54, 63, 69, 40, 67, 95, 44, 73, 62, 70, 53, 57, 75, 63, 95, 81, 87, 56, 70, 66, 51, 108, 61, 66, 73, 63, 60, 57, 49, 73, 92, 92, 106, 64, 71, 66, 65, 55, 62, 55, 88, 38, 57, 84, 83, 57, 62, 102, 67, 33, 90, 51, 63, 68, 69, 67, 45, 61, 101, 81, 73, 77, 63, 65, 55, 81, 66, 53, 53, 77, 87, 59, 56, 54, 118, 59, 78, 50, 54, 65, 70, 72, 61, 33, 65, 58, 83, 72, 64, 52, 72, 102, 86, 61, 52, 42, 60, 58, 54, 73, 58, 76, 62, 43, 52, 57, 68, 49, 55, 52, 83, 68, 91, 57, 73, 74, 59, 70, 45, 57, 58, 68, 44, 73, 49, 77, 53, 55, 80, 61, 44, 67, 59, 100, 79, 40, 50, 69, 43, 71, 45, 67, 61, 57, 64, 63, 70, 56, 105, 47, 86, 63, 52, 78, 55, 50, 90, 57, 38, 53, 62, 54, 77, 74, 136, 76, 45, 45, 65, 62, 116, 36, 81, 61, 50, 82, 72, 69, 67, 54, 69, 54, 75, 59, 94, 72, 48, 85, 105, 78, 71, 60, 67, 47, 57, 57, 66, 52, 67, 65, 104, 73, 56, 102, 73, 53, 69, 83, 60, 66, 70, 60, 72, 53, 56, 61, 84, 78, 57, 58, 61, 35, 55, 78, 63, 66, 47, 79, 68, 84, 95, 79, 61, 63, 74, 73, 65, 78, 73, 61, 58, 46, 80, 61, 55, 59, 42, 32, 110, 74, 56, 55, 51, 75, 65, 49, 74, 72, 105, 83, 98, 64, 75, 71, 55, 50, 60, 42, 101, 75, 62, 50, 64, 71, 71, 61, 52, 90, 49, 71, 78, 71, 64, 48, 85, 41, 52, 63, 69, 68, 50, 58, 41, 57, 97, 50, 58, 49, 60, 85, 43, 68, 54, 67, 98, 69, 63, 68, 48, 53, 64, 84, 69, 67, 52, 59, 61, 55, 63, 74, 62, 88, 88, 87, 101, 48, 57, 52, 69, 60, 71, 69, 125, 62, 61, 66, 54, 62, 48, 73, 53, 51, 54, 57, 53, 71, 75, 80, 74, 65, 58, 56, 65, 74, 85, 85, 69, 65, 87, 69, 64, 79, 63, 53, 62, 95, 65, 46, 63, 58, 65, 68, 75, 83, 79, 60, 63, 56, 95, 73, 64, 55, 62, 81, 84, 68, 54, 53, 65, 61, 53, 74, 78, 95, 70, 78, 68, 52, 55, 64, 63, 92, 52, 64, 61, 51, 57, 93, 68, 62, 52, 71, 72, 59, 70, 83, 59, 57, 46, 68, 66, 54, 71, 69, 79, 64, 78, 68, 52, 75, 70, 60, 78, 71, 80, 65, 54, 56, 83, 72, 38, 60, 61, 88, 57, 65, 61, 76, 48, 71, 101, 48, 80, 41, 56, 55, 55, 84, 64, 71, 62, 69, 57, 60, 38, 63, 64, 68, 84, 58, 58, 75, 66, 82, 76, 80, 72, 44, 59, 61, 73, 60, 55, 72, 80, 51, 80, 52, 69, 54, 57, 67, 55, 74, 64, 43, 52, 63, 84, 49, 52, 73, 80, 41, 64, 53, 73, 73, 53, 83, 63, 61, 67, 64, 84, 77, 57, 94, 49, 62, 60, 59, 53, 71, 58, 68, 71, 52, 53, 62, 57, 84, 47, 68, 63, 54, 58, 103, 104, 58, 65, 79, 74, 76, 52, 37, 58, 64, 62, 47, 93, 87, 58, 81, 62, 45, 50, 53, 68, 66, 55, 80, 82, 70, 68, 72, 99, 83, 81, 110, 50, 57, 81, 87, 72, 49, 49, 43, 65, 75, 69, 97, 62, 89, 72, 49, 46, 57, 48, 85, 42, 51, 48, 67, 86, 72, 89, 75, 67, 57, 55, 41, 67, 96, 67, 56, 72, 40, 45, 70, 58, 77, 76, 63, 82, 132, 57, 75, 46, 65, 69, 69, 65, 66, 91, 54, 56, 94, 78, 67, 61, 71, 59, 63, 81, 63, 69, 61, 81, 81, 57, 53, 89, 75, 66, 83, 82, 57, 76, 65, 90, 83, 53, 65, 52, 64, 62, 69, 90, 36, 64, 70, 82, 67, 52, 88, 68, 48, 66, 57, 65, 34, 55, 71, 57, 69, 53, 48, 65, 52, 70, 95, 72, 61, 79, 81, 90, 60, 57, 90, 47, 44, 42, 67, 53, 48, 59, 55, 67, 65, 81, 59, 71, 46, 55, 70, 68, 44, 48, 59, 62, 65, 70, 66, 72, 58, 64, 76, 36, 68, 83, 59, 79, 58, 62, 65, 53, 92, 82, 62, 64, 47, 52, 50, 66, 53, 72, 68, 63, 68, 74, 47, 67, 78, 59, 61, 41, 105, 61, 63, 88, 73, 66, 83, 78, 64, 114, 94, 86, 54, 57, 87, 76, 65, 66, 81, 67, 67, 57, 70, 55, 53, 50, 58, 49, 63, 60, 94, 52, 67, 41, 78, 102, 67, 58, 111, 62, 76, 64, 77, 77, 43, 41, 76, 63, 57, 77, 47, 62, 81, 55, 47, 91, 82, 56, 52, 68, 66, 75, 81, 43, 59, 73, 72, 63, 72, 46, 47, 57, 62, 44, 52, 58, 70, 80, 67, 53, 67, 84, 46, 68, 59, 73, 74, 55, 51, 71, 53, 95, 80, 73, 46, 102, 84, 65, 63, 86, 83, 60, 87, 76, 65, 46, 85, 56, 61, 53, 84, 64, 96, 57, 58, 68, 52, 62, 53, 54, 73, 37, 68, 59, 65, 56, 49, 63, 61, 53, 56, 64, 62, 69, 76, 73, 65, 38, 64, 64, 64, 60, 71, 84, 64, 68, 69, 49, 82, 72, 77, 54, 82, 56, 73, 73, 70, 63, 67, 55, 68, 73, 75, 50, 56, 70, 67, 66, 65, 61, 63, 54, 64, 67, 64, 91, 87, 51, 61, 55, 66, 83, 59, 79, 44, 57, 87, 106, 89, 91, 82, 69, 55, 56, 74, 72, 88, 54, 58, 60, 68, 73, 71, 51, 62, 68, 56, 35, 53, 53, 93, 65, 54, 40, 112, 56, 67, 84, 71, 58, 54, 66, 54, 73, 31, 49, 47, 53, 53, 64, 65, 63, 55, 74, 50, 71, 60, 81, 62, 59, 86, 57, 55, 72, 148, 72, 92, 48, 66, 68, 49, 74, 61, 62, 75, 50, 65, 56, 70, 67, 54, 72, 76, 77, 112, 77, 55, 66, 65, 48, 76, 58, 58, 83, 53, 58, 95, 55, 57, 55, 56, 58, 69, 64, 71, 65, 67, 76, 44, 79, 38, 67, 43, 66, 53, 85, 55, 50, 68, 51, 59, 72, 73, 76, 62, 59, 93, 63, 68, 65, 54, 58, 59, 90, 63, 59, 79, 85, 49, 65, 63, 63, 70, 51, 68, 53, 43, 70, 159, 91, 63, 62, 69, 84, 55, 47, 53, 81, 49, 64, 115, 64, 46, 43, 58, 44, 63, 60, 55, 68, 56, 89, 63, 60, 61, 56, 69, 52, 81, 63, 67, 59, 85, 66, 84, 81, 75, 88, 55, 72, 79, 43, 38, 63, 88, 58, 69, 74, 65, 81, 79, 66, 52, 49, 97, 79, 68, 75, 43, 66, 50, 72, 61, 66, 65, 53, 71, 96, 65, 46, 64, 69, 61, 65, 63, 103, 68, 80, 52, 48, 74, 75, 71, 68, 59, 45, 91, 65, 70, 43, 48, 56, 69, 57, 84, 82, 86, 67, 60, 38, 59, 74, 65, 63, 79, 80, 65, 51, 73, 77, 66, 46, 70, 61, 65, 63, 90, 53, 47, 67, 72, 76, 45, 51, 96, 86, 83, 78, 52, 80, 71, 56, 71, 79, 107, 71, 50, 57, 66, 48, 38, 52, 24, 52, 56, 85, 60, 63, 83, 81, 84, 45, 68, 88, 90, 63, 37, 48, 56, 83, 96, 67, 67, 82, 73, 55, 68, 55, 57, 67, 69, 114, 72, 67, 61, 68, 67, 54, 45, 65, 78, 59, 69, 60, 65, 39, 53, 47, 83, 69, 62, 44, 78, 80, 64, 78, 59, 49, 92, 51, 35, 32, 102, 68, 85, 68, 50, 64, 54, 48, 57, 64, 69, 98, 63, 46, 75, 70, 70, 38, 56, 89, 40, 67, 80, 47, 56, 88, 58, 67, 61, 68, 57, 57, 56, 62, 85, 52, 92, 78, 93, 65, 74, 59, 62, 56, 74, 48, 47, 80, 86, 58, 58, 95, 70, 58, 44, 68, 66, 45, 64, 80, 65, 71, 58, 63, 60, 73, 66, 62, 65, 56, 84, 72, 69, 67, 63, 59, 84, 57, 68, 78, 63, 87, 72, 88, 67, 73, 66, 104, 90, 76, 85, 80, 72, 90, 82, 77, 70, 62, 83, 75, 88, 60, 67, 56, 66, 69, 63, 55, 74, 91, 80, 38, 61, 97, 74, 82, 67, 51, 68, 61, 57, 58, 94, 65, 79, 73, 62, 63, 67, 84, 59, 48, 84, 63, 69, 49, 115, 75, 82, 79, 56, 55, 54, 50, 62, 70, 62, 55, 45, 74, 50, 81, 79, 56, 80, 68, 50, 83, 66, 64, 48, 64, 69, 65, 61, 64, 87, 78, 55, 108, 58, 53, 44, 64, 62, 83, 86, 67, 54, 61, 58, 92, 81, 56, 49, 77, 41, 46, 32, 52, 48, 108, 70, 64, 38, 67, 66, 68, 64, 48, 65, 79, 60, 53, 89, 97, 73, 62, 59, 59, 67, 52, 68, 70, 55, 92, 57, 42, 81, 50, 62, 68, 64, 35, 87, 75, 55, 77, 74, 53, 47, 48, 90, 59, 82, 71, 79, 53, 106, 64, 45, 72, 67, 65, 81, 30, 68, 67, 32, 57, 41, 53, 77, 53, 59, 66, 65, 75, 83, 34, 71, 79, 105, 70, 52, 63, 38, 61, 78, 73, 77, 76, 46, 56, 71, 67, 72, 60, 72, 52, 80, 68, 65, 76, 50, 52, 70, 40, 105, 75, 94, 64, 50, 73, 72, 81, 66, 63, 83, 66, 67, 79, 66, 92, 63, 88, 54, 73, 57, 68, 57, 74, 102, 49, 59, 91, 76, 58, 75, 44, 75, 66, 58, 85, 41, 65, 57, 50, 53, 51, 97, 75, 83, 51, 57, 87, 77, 61, 70, 65, 46, 107, 50, 56, 51, 49, 55, 48, 64, 63, 74, 73, 50, 65, 76, 66, 52, 56, 57, 74, 58, 64, 67, 54, 64, 62, 69, 89, 73, 51, 47, 70, 74, 62, 71, 63, 64, 69, 50, 72, 79, 78, 95, 55, 72, 58, 74, 79, 59, 50, 71, 46, 80, 75, 59, 54, 68, 76, 75, 76, 50, 51, 59, 57, 62, 63, 59, 63, 60, 64, 47, 71, 66, 54, 76, 89, 69, 34, 63, 64, 59, 88, 68, 54, 51, 69, 53, 74, 70, 77, 71, 61, 63, 66, 71, 81, 77, 72, 85, 82, 82, 57, 62, 43, 59, 42, 50, 42, 80, 54, 60, 50, 57, 60, 75, 74, 53, 64, 78, 68, 75, 78, 82, 87, 55, 81, 63, 68, 71, 58, 65, 47, 58, 73, 105, 52, 61, 70, 44, 102, 60, 71, 74, 51, 78, 55, 66, 119, 67, 55, 88, 68, 74, 44, 58, 57, 82, 64, 71, 83, 87, 66, 81, 51, 58, 71, 76, 65, 60, 58, 81, 70, 67, 66, 80, 68, 59, 66, 93, 34, 90, 77, 57, 45, 47, 51, 74, 58, 79, 60, 61, 71, 55, 100, 59, 73, 64, 51, 69, 61, 69, 51, 60, 79, 72, 65, 82, 72, 50, 61, 69, 89, 69, 61, 64, 63, 80, 79, 57, 81, 53, 71, 71, 113, 42, 48, 65, 50, 84, 65, 63, 64, 57, 86, 87, 108, 68, 68, 77, 64, 62, 82, 62, 89, 55, 64, 53, 89, 68, 42, 62, 59, 92, 74, 79, 77, 63, 60, 86, 49, 83, 106, 91, 60, 102, 66, 57, 61, 70, 57, 78, 75, 56, 63, 53, 58, 47, 47, 50, 54, 56, 109, 94, 47, 65, 68, 69, 75, 59, 45, 59, 77, 56, 54, 50, 59, 45, 61, 39, 53, 51, 41, 99, 56, 64, 73, 61, 76, 58, 85, 60, 39, 47, 81, 59, 62, 61, 49, 60, 62, 70, 54, 75, 54, 51, 72, 61, 66, 69, 60, 79, 68, 69, 53, 82, 88, 74, 79, 88, 64, 60, 50, 50, 64, 112, 52, 62, 65, 61, 63, 60, 50, 63, 84, 80, 73, 84, 100, 72, 99, 65, 64, 56, 72, 59, 73, 69, 69, 94, 74, 57, 53, 52, 38, 92, 63, 58, 80, 65, 94, 91, 90, 70, 58, 66, 68, 73, 76, 75, 81, 52, 83, 47, 91, 93, 82, 59, 55, 56, 61, 88, 57, 76, 64, 56, 64, 71, 82, 62, 79, 90, 66, 68, 108, 59, 62, 61, 61, 73, 52, 116, 68, 70, 57, 48, 82, 64, 61, 62, 55, 69, 87, 57, 66, 67, 65, 47, 55, 78, 92, 52, 75, 79, 69, 76, 78, 58, 47, 50, 59, 54, 62, 95, 80, 65, 70, 59, 83, 46, 103, 46, 86, 70, 38, 59, 75, 57, 67, 58, 69, 47, 54, 43, 57, 50, 81, 70, 66, 85, 73, 55, 72, 51, 63, 68, 53, 53, 35, 55, 75, 69, 57, 64, 89, 52, 74, 59, 51, 59, 63, 59, 97, 54, 82, 52, 66, 77, 69, 72, 66, 50, 72, 68, 78, 52, 63, 49, 92, 52, 56, 58, 59, 49, 61, 64, 83, 63, 88, 54, 60, 57, 65, 78, 69, 62, 58, 52, 55, 47, 80, 77, 54, 94, 58, 69, 68, 53, 73, 76, 69, 80, 61, 61, 82, 58, 48, 60, 71, 61, 66, 74, 83, 61, 59, 93, 89, 55, 45, 51, 70, 63, 61, 61, 57, 66, 47, 110, 58, 58, 91, 49, 62, 77, 61, 66, 85, 56, 85, 64, 54, 63, 66, 71, 50, 50, 73, 80, 60, 61, 75, 64, 48, 76, 59, 58, 75, 66, 72, 63, 43, 53, 66, 65, 70, 81, 59, 51, 71, 59, 50, 68, 69, 55, 55, 66, 70, 64, 83, 83, 76, 55, 53, 68, 71, 61, 67, 60, 64, 67, 64, 54, 59, 75, 69, 60, 53, 81, 51, 57, 63, 98, 57, 77, 66, 71, 68, 62, 61, 56, 77, 66, 76, 61, 62, 73, 96, 64, 84, 67, 57, 61, 54, 101, 70, 58, 74, 79, 54, 54, 53, 72, 55, 63, 51, 46, 55, 65, 68, 64, 75, 58, 59, 51, 61, 80, 89, 58, 68, 67, 48, 60, 60, 60, 72, 74, 59, 56, 82, 65, 70, 82, 71, 57, 63, 65, 62, 46, 69, 64, 58, 60, 62, 53, 54, 78, 66, 81, 77, 59, 61, 76, 62, 49, 88, 67, 47, 59, 87, 67, 77, 78, 68, 70, 59, 60, 69, 55, 64, 87, 48, 56, 66, 55, 57, 94, 55, 72, 64, 64, 60, 64, 91, 50, 54, 55, 53, 52, 63, 75, 74, 49, 66, 62, 57, 66, 58, 69, 81, 79, 57, 69, 74, 65, 82, 70, 61, 49, 69, 64, 76, 116, 52, 60, 67, 53, 56, 70, 56, 90, 50, 116, 80, 72, 62, 67, 62, 57, 50, 62, 52, 46, 63, 64, 46, 78, 64, 53, 55, 43, 86, 56, 84, 65, 64, 57, 43, 58, 45, 49, 89, 53, 71, 55, 29, 70, 60, 83, 150, 63, 72, 81, 58, 61, 108, 51, 80, 51, 111, 51, 96, 62, 71, 53, 45, 87, 64, 82, 55, 63, 73, 112, 73, 57, 84, 75, 48, 52, 61, 74, 78, 63, 79, 98, 66, 57, 86, 56, 64, 94, 67, 54, 67, 101, 55, 64, 69, 61, 72, 65, 72, 93, 63, 73, 57, 77, 62, 55, 71, 61, 59, 80, 65, 53, 88, 73, 54, 98, 58, 49, 63, 76, 54, 80, 112, 66, 61, 55, 56, 77, 63, 81, 83, 55, 72, 51, 48, 77, 55, 79, 66, 61, 63, 87, 51, 75, 68, 59, 48, 65, 69, 83, 80, 64, 85, 73, 62, 80, 64, 76, 65, 53, 66, 70, 65, 54, 58, 50, 69, 43, 56, 87, 77, 44, 60, 57, 41, 54, 58, 48, 52, 73, 78, 58, 64, 78, 81, 60, 72, 76, 68, 65, 52, 51, 57, 59, 55, 96, 58, 69, 106, 62, 55, 53, 66, 40, 92, 52, 57, 64, 76, 65, 78, 57, 62, 60, 50, 66, 57, 46, 54, 69, 47, 48, 70, 65, 88, 52, 63, 69, 54, 100, 69, 74, 56, 66, 50, 69, 59, 59, 59, 63, 62, 85, 72, 52, 78, 61, 56, 52, 47, 56, 70, 67, 51, 65, 56, 70, 67, 75, 89, 59, 54, 60, 72, 57, 60, 80, 69, 70, 57, 71, 66, 103, 58, 75, 62, 65, 60, 61, 67, 81, 49, 79, 41, 75, 59, 72, 77, 49, 86, 72, 51, 55, 65, 44, 98, 54, 55, 74, 65, 47, 66, 53, 55, 48, 56, 83, 62, 59, 62, 54, 57, 70, 51, 70, 90, 63, 58, 96, 68, 59, 88, 70, 73, 60, 59, 80, 52, 66, 91, 49, 46, 58, 54, 81, 77, 61, 78, 62, 75, 69, 86, 62, 77, 65, 58, 65, 63, 63, 85, 69, 69, 59, 49, 53, 53, 70, 76, 72, 60, 60, 46, 54, 73, 59, 57, 75, 73, 54, 56, 69, 62, 62, 68, 51, 61, 63, 77, 56, 52, 64, 71, 48, 78, 65, 49, 63, 69, 69, 66, 54, 69, 65, 57, 72, 70, 90, 51, 61, 87, 60, 83, 59, 63, 77, 52, 75, 57, 60, 70, 66, 76, 63, 58, 67, 52, 67, 65, 69, 65, 46, 60, 63, 49, 79, 89, 65, 71, 52, 79, 61, 67, 53, 85, 68, 64, 82, 40, 63, 99, 55, 49, 65, 75, 67, 70, 60, 66, 52, 88, 62, 56, 56, 75, 95, 80, 69, 57, 90, 69, 74, 56, 61, 69, 78, 67, 73, 70, 65, 79, 69, 77, 54, 100, 96, 66, 68, 76, 65, 87, 57, 101, 50, 43, 55, 63, 112, 71, 41, 68, 69, 60, 75, 80, 99, 63, 74, 57, 70, 60, 71, 60, 66, 67, 109, 64, 66, 68, 58, 78, 62, 77, 82, 61, 79, 64, 54, 58, 72, 75, 66, 66, 74, 59, 66, 75, 80, 67, 58, 55, 62, 53, 66, 58, 65, 52, 54, 55, 73, 43, 68, 54, 56, 74, 60, 76, 71, 79, 67, 84, 67, 64, 65, 75, 57, 50, 64, 51, 68, 66, 44, 55, 58, 66, 67, 51, 62, 66, 67, 65, 64, 75, 64, 74, 59, 83, 60, 63, 68, 61, 79, 59, 86, 63, 58, 63, 62, 56, 46, 52, 53, 68, 67, 57, 87, 60, 40, 65, 81, 56, 79, 51, 64, 61, 82, 59, 70, 75, 53, 27, 77, 66, 59, 85, 56, 40, 66, 74, 63, 69, 99, 67, 64, 65, 56, 58, 75, 68, 92, 72, 54, 87, 47, 67, 68, 53, 79, 60, 72, 75, 43, 76, 61, 153, 82, 68, 67, 51, 64, 58, 92, 70, 78, 69, 77, 80, 96, 58, 71, 76, 74, 57, 79, 61, 63, 58, 73, 59, 76, 53, 67, 59, 68, 54, 70, 46, 118, 51, 57, 80, 63, 52, 91, 57, 70, 67, 67, 73, 127, 69, 56, 66, 52, 50, 74, 62, 77, 57, 64, 54, 68, 62, 51, 77, 60, 90, 71, 71, 60, 62, 63, 86, 65, 91, 58, 80, 68, 77, 58, 57, 75, 50, 76, 66, 115, 62, 49, 66, 66, 75, 69, 76, 56, 60, 64, 55, 65, 58, 68, 68, 60, 80, 56, 55, 69, 119, 66, 87, 73, 73, 51, 71, 85, 70, 77, 54, 64, 56, 59, 96, 60, 91, 72, 69, 54, 59, 63, 73, 66, 44, 57, 51, 71, 54, 68, 55, 81, 68, 47, 77, 70, 60, 70, 49, 81, 78, 56, 68, 59, 49, 57, 85, 55, 45, 72, 67, 55, 51, 62, 63, 63, 69, 68, 71, 67, 64, 58, 75, 63, 62, 66, 65, 65, 68, 64, 70, 64, 68, 51, 57, 56, 70, 55, 50, 40, 57, 63, 68, 83, 47, 68, 53, 67, 79, 91, 56, 71, 64, 108, 54, 73, 55, 58, 70, 53, 68, 70, 50, 81, 53, 67, 73, 52, 71, 66, 70, 72, 87, 68, 53, 60, 57, 55, 53, 45, 73, 62, 62, 53, 68, 80, 65, 73, 66, 52, 45, 86, 55, 56, 78, 50, 43, 65, 58, 40, 70, 67, 54, 60, 125, 53, 67, 57, 70, 56, 80, 48, 96, 54, 68, 56, 79, 81, 50, 54, 59, 57, 58, 119, 50, 50, 58, 81, 56, 73, 55, 54, 78, 72, 62, 69, 90, 66, 57, 60, 61, 60, 52, 90, 59, 71, 46, 82, 53, 38, 57, 71, 55, 67, 64, 60, 45, 55, 69, 57, 91, 57, 56, 75, 50, 83, 62, 41, 56, 86, 61, 94, 64, 62, 90, 55, 48, 61, 59, 52, 62, 70, 46, 102, 91, 88, 53, 54, 74, 78, 54, 38, 63, 83, 44, 40, 63, 67, 66, 69, 70, 59, 76, 67, 61, 60, 63, 68, 58, 60, 54, 64, 59, 51, 52, 60, 45, 52, 69, 62, 66, 56, 83, 69, 70, 69, 69, 87, 57, 61, 81, 83, 52, 58, 54, 71, 67, 69, 91, 69, 79, 55, 83, 77, 81, 57, 60, 115, 76, 66, 53, 65, 51, 82, 56, 66, 77, 63, 55, 79, 39, 64, 49, 70, 68, 68, 74, 55, 79, 58, 60, 57, 87, 26, 65, 66, 81, 86, 51, 71, 59, 74, 70, 77, 58, 97, 56, 68, 56, 57, 55, 84, 108, 61, 57, 62, 73, 66, 89, 56, 57, 61, 81, 76, 66, 75, 85, 82, 74, 71, 116, 47, 88, 89, 73, 71, 61, 50, 65, 62, 73, 64, 74, 50, 51, 65, 61, 118, 73, 77, 52, 92, 61, 69, 74, 58, 89, 69, 61, 50, 64, 62, 71, 74, 55, 82, 60, 66, 64, 93, 59, 56, 88, 69, 72, 66, 60, 63, 65, 59, 57, 125, 64, 69, 63, 54, 66, 72, 63, 68, 58, 58, 66, 71, 67, 87, 75, 48, 54, 63, 84, 74, 41, 63, 49, 49, 61, 59, 70, 67, 53, 62, 59, 63, 56, 70, 61, 58, 55, 62, 54, 62, 60, 66, 100, 71, 71, 66, 43, 60, 62, 69, 66, 76, 71, 70, 74, 50, 70, 78, 65, 62, 56, 52, 40, 55, 46, 52, 58, 86, 60, 50, 69, 60, 93, 56, 66, 68, 64, 35, 65, 70, 59, 88, 64, 65, 59, 67, 77, 54, 66, 83, 74, 61, 79, 78, 68, 73, 56, 52, 51, 82, 50, 94, 77, 79, 68, 63, 112, 39, 58, 85, 62, 77, 59, 69, 62, 68, 58, 69, 59, 73, 62, 74, 176, 45, 44, 72, 63, 60, 49, 68, 44, 51, 55, 52, 67, 57, 77, 51, 55, 45, 44, 110, 63, 73, 52, 76, 69, 74, 70, 60, 67, 48, 54, 75, 57, 65, 79, 55, 90, 55, 63, 47, 72, 50, 61, 54, 69, 54, 75, 54, 92, 53, 79, 50, 71, 92, 66, 52, 65, 45, 31, 45, 57, 55, 102, 64, 53, 91, 100, 90, 46, 61, 67, 88, 68, 54, 58, 57, 72, 63, 56, 66, 51, 52, 94, 57, 69, 81, 77, 68, 56, 90, 55, 49, 72, 48, 67, 78, 49, 61, 76, 59, 70, 68, 56, 71, 61, 45, 69, 66, 82, 137, 76, 62, 79, 58, 52, 60, 43, 62, 78, 78, 46, 67, 54, 100, 66, 86, 76, 67, 93, 79, 112, 61, 72, 74, 79, 55, 51, 141, 56, 65, 88, 82, 57, 72, 69, 79, 58, 93, 67, 51, 57, 65, 59, 61, 65, 65, 69, 57, 56, 75, 48, 71, 61, 54, 40, 57, 59, 80, 59, 54, 58, 57, 54, 84, 54, 63, 57, 86, 77, 55, 51, 63, 73, 59, 67, 63, 58, 75, 126, 76, 50, 59, 59, 56, 70, 47, 85, 52, 55, 64, 61, 53, 63, 50, 88, 49, 72, 70, 77, 67, 75, 60, 41, 77, 65, 49, 101, 62, 81, 59, 51, 55, 108, 65, 70, 60, 78, 47, 50, 57, 62, 87, 62, 64, 46, 61, 66, 89, 57, 159, 65, 62, 71, 80, 65, 51, 63, 116, 89, 54, 74, 64, 60, 102, 66, 53, 58, 63, 71, 71, 61, 74, 63, 66, 65, 53, 104, 70, 60, 65, 73, 52, 78, 60, 58, 69, 71, 68, 63, 66, 62, 94, 54, 65, 59, 70, 69, 67, 63, 81, 47, 118, 54, 56, 70, 56, 66, 93, 75, 70, 65, 65, 91, 64, 65, 67, 47, 63, 73, 73, 63, 76, 68, 58, 74, 80, 74, 75, 79, 61, 72, 68, 61, 51, 93, 66, 58, 53, 45, 78, 75, 52, 54, 64, 60, 65, 63, 49, 41, 56, 62, 81, 70, 49, 68, 49, 80, 53, 66, 43, 60, 61, 65, 85, 72, 70, 79, 64, 50, 69, 66, 54, 79, 82, 64, 101, 63, 59, 65, 95, 71, 58, 53, 73, 54, 59, 40, 61, 65, 67, 68, 79, 42, 63, 64, 113, 60, 68, 66, 50, 84, 76, 61, 68, 56, 47, 71, 56, 81, 65, 71, 49, 65, 64, 75, 72, 75, 66, 61, 71, 68, 55, 77, 60, 56, 74, 71, 73, 81, 51, 68, 42, 64, 62, 58, 53, 62, 72, 74, 64, 76, 42, 69, 62, 64, 68, 66, 97, 76, 75, 66, 69, 62, 67, 84, 70, 66, 55, 45, 77, 41, 64, 49, 60, 52, 65, 54, 67, 68, 47, 59, 57, 58, 73, 68, 80, 81, 59, 58, 69, 104, 56, 65, 59, 64, 80, 57, 81, 57, 61, 53, 61, 47, 53, 55, 62, 60, 59, 73, 72, 62, 76, 57, 71, 104, 49, 68, 58, 60, 76, 88, 70, 58, 62, 55, 74, 46, 74, 55, 46, 57, 55, 63, 45, 53, 62, 73, 82, 65, 76, 61, 57, 63, 77, 55, 62, 88, 60, 63, 57, 101, 56, 62, 55, 79, 62, 70, 61, 49, 66, 64, 69, 88, 51, 58, 86, 61, 57, 65, 59, 63, 74, 57, 62, 55, 51, 62, 77, 70, 65, 62, 59, 77, 62, 72, 52, 70, 46, 64, 104, 83, 50, 56, 47, 68, 63, 48, 62, 90, 53, 75, 71, 71, 58, 73, 56, 53, 61, 60, 79, 55, 70, 63, 58, 91, 52, 66, 80, 88, 52, 56, 59, 59, 57, 68, 63, 73, 63, 60, 70, 47, 74, 66, 49, 48, 63, 141, 48, 61, 60, 48, 69, 46, 55, 112, 56, 63, 69, 65, 60, 71, 64, 67, 73, 66, 64, 58, 63, 57, 91, 60, 61, 74, 58, 66, 73, 81, 65, 48, 48, 69, 62, 72, 60, 87, 79, 63, 60, 51, 89, 65, 61, 64, 71, 73, 79, 68, 81, 62, 64, 82, 69, 60, 56, 60, 53, 80, 50, 58, 96, 88, 65, 68, 57, 61, 60, 54, 52, 91, 72, 65, 76, 63, 63, 53, 57, 79, 68, 68, 53, 57, 71, 60, 43, 57, 56, 56, 82, 62, 66, 101, 66, 69, 78, 58, 52, 97, 60, 59, 64, 55, 70, 67, 54, 81, 55, 79, 65, 70, 73, 65, 55, 62, 67, 100, 69, 67, 61, 51, 58, 76, 62, 63, 80, 67, 53, 29, 67, 58, 56, 73, 56, 64, 75, 77, 49, 88, 60, 78, 78, 68, 69, 57, 60, 60, 60, 72, 51, 62, 52, 63, 65, 63, 70, 68, 52, 68, 54, 57, 77, 62, 64, 69, 66, 81, 79, 74, 51, 72, 61, 82, 54, 73, 78, 76, 68, 66, 62, 62, 69, 67, 77, 57, 60, 59, 56, 66, 73, 52, 84, 75, 66, 82, 62, 116, 71, 62, 59, 70, 56, 58, 53, 64, 52, 74, 65, 40, 87, 69, 61, 52, 63, 45, 128, 85, 58, 51, 67, 67, 56, 62, 73, 80, 99, 88, 34, 71, 82, 83, 53, 71, 93, 65, 42, 50, 82, 77, 72, 54, 67, 52, 95, 51, 55, 57, 62, 74, 65, 71, 62, 52, 79, 88, 56, 84, 60, 63, 63, 61, 120, 93, 64, 63, 67, 58, 49, 81, 73, 94, 79, 47, 76, 66, 62, 62, 66, 62, 90, 74, 88, 81, 77, 69, 60, 60, 58, 64, 60, 78, 59, 82, 66, 53, 63, 51, 67, 63, 79, 58, 61, 61, 52, 60, 50, 76, 64, 82, 77, 56, 66, 80, 65, 63, 70, 59, 58, 65, 48, 68, 48, 82, 70, 69, 66, 45, 80, 60, 51, 67, 61, 84, 49, 53, 53, 66, 61, 70, 56, 69, 69, 72, 61, 52, 78, 62, 60, 67, 62, 61, 63, 71, 57, 62, 73, 68, 50, 68, 57, 66, 50, 69, 55, 82, 57, 58, 93, 110, 86, 86, 65, 58, 58, 68, 56, 67, 77, 64, 61, 54, 66, 47, 91, 66, 56, 60, 52, 61, 71, 55, 79, 60, 98, 56, 94, 59, 42, 65, 68, 83, 65, 66, 89, 63, 67, 58, 49, 57, 59, 78, 59, 74, 57, 77, 60, 60, 52, 75, 65, 54, 88, 60, 54, 60, 60, 62, 67, 60, 69, 64, 65, 62, 51, 63, 70, 47, 56, 65, 60, 63, 69, 65, 95, 55, 73, 58, 67, 79, 78, 67, 55, 63, 65, 59, 56, 60, 60, 68, 108, 89, 73, 54, 55, 72, 68, 91, 67, 81, 64, 54, 71, 68, 38, 56, 84, 68, 78, 78, 75, 55, 64, 66, 49, 60, 68, 52, 61, 57, 86, 65, 65, 88, 71, 49, 63, 89, 65, 67, 58, 59, 77, 53, 44, 56, 61, 65, 66, 60, 56, 55, 72, 94, 66, 66, 75, 70, 81, 76, 63, 54, 64, 58, 52, 114, 69, 67, 74, 58, 59, 64, 63, 47, 70, 82, 91, 64, 52, 58, 80, 60, 65, 56, 120, 79, 73, 59, 59, 65, 63, 71, 75, 52, 68, 75, 110, 74, 61, 72, 63, 72, 92, 58, 59, 54, 67, 54, 59, 61, 51, 42, 59, 61, 76, 84, 69, 67, 71, 66, 65, 54, 66, 57, 51, 60, 59, 56, 70, 59, 68, 87, 64, 64, 57, 89, 57, 64, 62, 54, 71, 84, 66, 67, 81, 70, 60, 61, 68, 51, 78, 54, 55, 46, 64, 58, 69, 81, 58, 64, 88, 61, 66, 62, 74, 135, 73, 68, 61, 61, 70, 61, 60, 98, 50, 65, 51, 56, 64, 58, 51, 61, 76, 44, 53, 52, 75, 64, 50, 61, 93, 63, 137, 74, 54, 78, 70, 42, 50, 54, 87, 80, 81, 70, 67, 68, 61, 46, 77, 63, 43, 61, 91, 79, 91, 61, 64, 60, 46, 66, 59, 70, 63, 66, 65, 61, 57, 60, 56, 55, 55, 66, 52, 61, 83, 71, 86, 87, 69, 74, 81, 59, 73, 58, 64, 65, 68, 69, 61, 59, 74, 77, 99, 97, 44, 63, 56, 106, 64, 70, 56, 55, 79, 60, 73, 70, 64, 79, 58, 64, 66, 89, 62, 68, 92, 56, 63, 66, 75, 59, 59, 69, 75, 57, 47, 69, 83, 70, 66, 67, 83, 55, 74, 58, 63, 73, 68, 95, 60, 62, 45, 60, 59, 105, 78, 65, 67, 70, 70, 66, 56, 62, 57, 57, 87, 59, 70, 80, 51, 78, 56, 58, 65, 52, 59, 88, 58, 56, 71, 70, 60, 71, 73, 54, 68, 70, 69, 74, 55, 86, 75, 66, 61, 59, 71, 57, 52, 46, 66, 68, 63, 40, 86, 56, 67, 66, 60, 67, 64, 66, 71, 57, 58, 74, 76, 55, 52, 59, 69, 60, 53, 69, 64, 65, 59, 82, 78, 62, 64, 66, 66, 61, 57, 61, 90, 37, 69, 61, 67, 67, 66, 48, 45, 64, 53, 64, 57, 64, 57, 56, 49, 59, 105, 62, 80, 66, 86, 70, 69, 49, 64, 59, 61, 73, 78, 45, 57, 81, 55, 60, 57, 54, 92, 58, 61, 102, 58, 78, 76, 82, 53, 65, 61, 51, 92, 88, 60, 65, 86, 79, 75, 63, 73, 56, 77, 45, 67, 59, 79, 60, 46, 84, 70, 83, 67, 132, 42, 74, 54, 65, 51, 64, 69, 60, 55, 53, 71, 58, 60, 62, 80, 66, 55, 68, 59, 72, 59, 54, 56, 70, 81, 65, 73, 56, 71, 44, 58, 49, 70, 47, 65, 51, 56, 65, 67, 59, 67, 88, 69, 57, 69, 59, 71, 68, 50, 69, 67, 54, 77, 67, 43, 57, 58, 66, 62, 64, 72, 90, 85, 74, 55, 90, 95, 57, 43, 91, 66, 48, 51, 67, 65, 55, 49, 59, 107, 53, 66, 102, 95, 88, 49, 61, 60, 95, 79, 75, 79, 88, 70, 83, 72, 68, 63, 83, 57, 87, 64, 66, 61, 58, 51, 50, 45, 117, 55, 68, 68, 43, 41, 53, 58, 58, 48, 66, 86, 71, 68, 42, 50, 55, 79, 56, 67, 59, 126, 68, 66, 111, 74, 54, 73, 57, 71, 65, 78, 67, 65, 55, 66, 63, 38, 68, 52, 84, 59, 82, 62, 61, 55, 68, 78, 59, 49, 62, 59, 71, 63, 47, 55, 79, 69, 78, 55, 58, 69, 58, 85, 71, 69, 57, 66, 76, 92, 71, 56, 58, 65, 64, 71, 73, 71, 53, 64, 68, 56, 65, 72, 113, 57, 56, 74, 74, 64, 74, 57, 56, 66, 56, 47, 61, 55, 76, 58, 71, 99, 77, 58, 93, 57, 62, 52, 90, 56, 80, 64, 74, 75, 60, 61, 81, 81, 68, 65, 63, 63, 69, 70, 79, 64, 45, 61, 72, 54, 42, 61, 128, 60, 58, 57, 70, 69, 49, 58, 58, 81, 64, 66, 68, 53, 56, 56, 80, 80, 64, 71, 60, 50, 82, 61, 54, 73, 67, 60, 66, 48, 67, 92, 83, 74, 63, 65, 59, 57, 75, 83, 78, 60, 67, 81, 56, 57, 61, 65, 42, 74, 50, 101, 61, 48, 104, 68, 46, 44, 127, 66, 54, 48, 72, 53, 55, 60, 53, 58, 71, 56, 61, 59, 56, 52, 58, 123, 62, 84, 59, 58, 99, 75, 78, 72, 56, 86, 67, 60, 87, 77, 87, 83, 63, 55, 38, 61, 74, 93, 48, 78, 79, 61, 69, 65, 66, 59, 60, 67, 71, 67, 76, 59, 60, 78, 55, 84, 100, 59, 105, 58, 59, 73, 68, 63, 53, 57, 73, 77, 79, 59, 82, 67, 56, 55, 61, 75, 54, 85, 67, 61, 63, 80, 75, 71, 55, 54, 65, 68, 60, 67, 55, 63, 70, 56, 54, 55, 60, 66, 67, 70, 55, 58, 83, 93, 57, 63, 45, 65, 53, 136, 55, 55, 56, 54, 63, 73, 62, 84, 48, 76, 73, 61, 56, 61, 54, 62, 54, 61, 56, 49, 60, 64, 94, 63, 65, 80, 102, 73, 52, 47, 43, 71, 72, 76, 47, 64, 69, 48, 74, 69, 59, 60, 64, 58, 80, 70, 60, 59, 62, 63, 55, 64, 52, 77, 62, 70, 77, 74, 48, 57, 56, 74, 51, 73, 74, 57, 60, 78, 70, 73, 76, 84, 41, 46, 63, 88, 57, 59, 63, 56, 84, 61, 70, 83, 53, 129, 63, 70, 54, 60, 71, 62, 93, 62, 68, 59, 65, 129, 62, 54, 58, 62, 50, 62, 45, 77, 64, 54, 70, 50, 51, 55, 67, 112, 40, 66, 64, 61, 56, 63, 79, 59, 88, 62, 36, 68, 49, 59, 64, 80, 63, 85, 46, 86, 56, 70, 79, 63, 68, 63, 79, 71, 67, 74, 48, 54, 67, 51, 64, 53, 84, 53, 83, 84, 84, 67, 64, 79, 54, 59, 71, 55, 71, 57, 53, 62, 62, 69, 54, 53, 51, 73, 54, 64, 53, 48, 69, 69, 73, 62, 61, 92, 71, 52, 60, 55, 58, 134, 77, 64, 45, 65, 78, 63, 60, 64, 68, 37, 63, 55, 70, 65, 63, 70, 72, 66, 60, 66, 59, 58, 74, 66, 75, 65, 80, 46, 49, 92, 55, 63, 64, 64, 77, 59, 67, 74, 81, 63, 56, 58, 58, 92, 56, 60, 64, 65, 81, 83, 67, 114, 64, 54, 74, 90, 77, 60, 74, 46, 53, 56, 56, 55, 66, 37, 82, 81, 58, 97, 67, 55, 81, 69, 76, 55, 58, 71, 66, 68, 71, 76, 53, 61, 71, 53, 64, 70, 67, 60, 41, 95, 74, 89, 62, 69, 64, 64, 72, 65, 69, 79, 57, 85, 67, 52, 81, 46, 60, 49, 64, 65, 58, 61, 63, 70, 57, 57, 88, 74, 75, 58, 47, 54, 55, 82, 76, 59, 67, 67, 59, 83, 132, 77, 63, 67, 66, 62, 84, 66, 57, 69, 69, 79, 90, 51, 56, 61, 64, 64, 58, 58, 82, 80, 80, 55, 57, 37, 62, 52, 83, 56, 60, 64, 71, 82, 90, 81, 47, 76, 55, 64, 63, 44, 53, 51, 72, 62, 61, 65, 95, 59, 79, 68, 61, 54, 57, 80, 43, 39, 57, 52, 55, 79, 84, 58, 58, 100, 53, 70, 46, 84, 71, 50, 62, 77, 47, 69, 72, 67, 94, 44, 66, 65, 67, 65, 59, 59, 57, 57, 82, 60, 54, 81, 63, 68, 56, 67, 64, 69, 53, 102, 55, 90, 57, 71, 61, 85, 64, 39, 58, 50, 52, 60, 53, 91, 76, 81, 56, 106, 60, 83, 74, 59, 55, 66, 57, 67, 77, 71, 59, 77, 97, 45, 46, 46, 65, 61, 58, 76, 84, 62, 77, 67, 52, 59, 59, 53, 65, 58, 63, 75, 60, 72, 63, 81, 66, 52, 61, 70, 63, 78, 104, 61, 61, 138, 60, 57, 60, 48, 58, 77, 65, 67, 59, 57, 71, 51, 58, 59, 52, 56, 81, 61, 56, 62, 77, 68, 79, 55, 90, 55, 32, 76, 52, 54, 55, 45, 67, 90, 65, 47, 90, 47, 56, 41, 52, 78, 83, 60, 71, 55, 66, 85, 45, 74, 59, 61, 58, 91, 51, 58, 68, 58, 62, 63, 63, 110, 54, 56, 60, 104, 57, 59, 63, 68, 63, 67, 64, 84, 79, 63, 78, 58, 89, 71, 62, 55, 84, 59, 67, 71, 58, 56, 54, 54, 79, 62, 84, 65, 83, 52, 67, 56, 64, 62, 51, 50, 71, 88, 40, 55, 36, 61, 61, 78, 48, 47, 78, 81, 63, 73, 45, 71, 95, 66, 77, 63, 62, 60, 43, 62, 49, 47, 65, 66, 87, 67, 69, 75, 46, 61, 83, 122, 84, 55, 55, 58, 88, 84, 51, 52, 60, 56, 60, 63, 91, 50, 48, 62, 60, 61, 48, 63, 64, 69, 64, 48, 57, 19, 44, 51, 56, 61, 68, 73, 85, 64, 64, 65, 48, 72, 89, 41, 68, 75, 61, 65, 56, 52, 81, 52, 77, 86, 74, 58, 89, 70, 66, 72, 60, 69, 65, 57, 51, 53, 75, 54, 73, 41, 52, 75, 64, 52, 70, 51, 63, 83, 55, 85, 62, 46, 56, 67, 63, 55, 74, 47, 62, 96, 82, 67, 62, 63, 77, 45, 65, 61, 76, 54, 55, 74, 62, 80, 97, 52, 41, 45, 63, 63, 80, 74, 83, 68, 56, 84, 70, 51, 55, 79, 55, 62, 52, 104, 58, 73, 62, 60, 69, 110, 78, 55, 66, 48, 52, 65, 64, 70, 68, 72, 85, 59, 67, 57, 52, 69, 54, 68, 58, 89, 93, 59, 62, 71, 67, 56, 73, 66, 65, 68, 46, 64, 50, 47, 67, 93, 45, 61, 70, 69, 35, 58, 69, 100, 60, 55, 66, 45, 60, 82, 83, 99, 51, 57, 76, 58, 70, 59, 55, 52, 65, 51, 62, 71, 91, 75, 49, 61, 69, 58, 59, 90, 53, 47, 43, 77, 64, 65, 53, 64, 53, 72, 50, 74, 50, 73, 52, 72, 77, 87, 56, 61, 78, 52, 60, 68, 63, 64, 103, 50, 56, 58, 75, 91, 52, 67, 136, 67, 44, 92, 59, 75, 51, 83, 61, 52, 55, 59, 83, 59, 61, 61, 93, 56, 55, 63, 67, 68, 57, 55, 77, 62, 47, 95, 79, 47, 78, 86, 78, 53, 81, 75, 63, 68, 66, 70, 66, 67, 54, 68, 61, 54, 76, 69, 59, 57, 60, 44, 60, 66, 67, 60, 69, 42, 72, 41, 68, 74, 59, 71, 81, 52, 72, 55, 42, 59, 68, 66, 64, 62, 73, 87, 69, 66, 74, 52, 110, 80, 101, 63, 33, 70, 63, 72, 71, 100, 68, 67, 89, 66, 72, 65, 47, 95, 68, 73, 76, 68, 52, 68, 75, 104, 60, 51, 66, 68, 65, 52, 50, 69, 60, 53, 82, 60, 44, 73, 119, 51, 78, 59, 59, 45, 64, 105, 82, 67, 67, 64, 74, 54, 61, 98, 63, 69, 62, 38, 80, 71, 67, 70, 54, 62, 70, 55, 70, 102, 56, 85, 76, 64, 101, 51, 66, 42, 49, 86, 71, 77, 60, 78, 63, 44, 64, 51, 72, 45, 58, 51, 54, 52, 66, 84, 65, 58, 81, 72, 55, 56, 63, 65, 55, 79, 65, 77, 63, 54, 57, 57, 51, 61, 119, 69, 68, 49, 53, 62, 55, 78, 63, 52, 88, 60, 51, 54, 94, 55, 76, 50, 58, 54, 44, 70, 70, 44, 79, 51, 52, 53, 93, 69, 59, 66, 70, 49, 68, 63, 75, 69, 82, 65, 56, 46, 62, 69, 59, 84, 70, 91, 56, 61, 72, 73, 65, 56, 61, 55, 64, 62, 76, 72, 67, 72, 51, 76, 59, 78, 68, 60, 56, 59, 54, 58, 52, 72, 53, 57, 50, 72, 63, 82, 92, 73, 47, 48, 68, 94, 59, 69, 56, 63, 54, 54, 75, 63, 61, 55, 41, 62, 117, 104, 59, 54, 68, 52, 52, 65, 56, 81, 92, 76, 51, 65, 64, 54, 68, 123, 69, 58, 69, 61, 60, 74, 61, 63, 78, 65, 57, 59, 75, 62, 68, 69, 64, 106, 61, 52, 96, 76, 64, 62, 58, 62, 71, 42, 51, 89, 113, 41, 64, 66, 43, 57, 72, 75, 70, 68, 72, 69, 68, 63, 48, 52, 56, 63, 77, 79, 60, 67, 68, 61, 82, 79, 66, 72, 58, 55, 70, 68, 47, 56, 53, 62, 82, 51, 114, 52, 65, 57, 71, 58, 93, 74, 65, 54, 71, 66, 55, 53, 62, 100, 74, 80, 70, 68, 55, 100, 58, 61, 64, 49, 62, 79, 72, 43, 64, 70, 68, 113, 88, 41, 67, 90, 83, 65, 58, 54, 77, 43, 60, 82, 47, 71, 91, 78, 77, 66, 92, 57, 69, 60, 72, 63, 41, 65, 55, 68, 76, 55, 63, 70, 61, 62, 49, 64, 40, 48, 50, 57, 61, 61, 65, 61, 66, 47, 70, 58, 63, 131, 65, 66, 55, 44, 77, 61, 76, 62, 75, 54, 64, 74, 64, 63, 73, 101, 54, 62, 76, 65, 47, 146, 64, 87, 79, 48, 85, 56, 73, 59, 71, 113, 65, 74, 102, 72, 79, 59, 55, 43, 58, 55, 60, 79, 92, 57, 52, 70, 64, 66, 54, 108, 57, 70, 58, 56, 40, 70, 125, 66, 65, 62, 49, 74, 54, 55, 54, 75, 60, 67, 42, 57, 54, 68, 78, 98, 64, 72, 51, 45, 50, 70, 90, 103, 66, 45, 68, 54, 58, 55, 75, 45, 51, 46, 52, 47, 56, 66, 52, 52, 73, 52, 63, 55, 118, 82, 85, 57, 84, 57, 67, 56, 69, 71, 61, 54, 57, 66, 94, 60, 61, 47, 51, 72, 49, 67, 71, 61, 85, 71, 64, 59, 65, 55, 69, 78, 66, 64, 58, 58, 72, 57, 75, 59, 52, 75, 95, 75, 78, 55, 59, 66, 53, 64, 65, 77, 61, 54, 94, 61, 72, 77, 128, 59, 47, 66, 48, 60, 63, 52, 65, 59, 65, 73, 53, 78, 74, 45, 71, 92, 67, 48, 54, 66, 58, 70, 60, 54, 63, 55, 64, 71, 59, 67, 72, 75, 42, 125, 65, 55, 62, 86, 65, 82, 65, 65, 66, 71, 80, 60, 74, 54, 68, 63, 54, 62, 65, 67, 57, 54, 48, 69, 69, 59, 79, 45, 57, 71, 66, 61, 82, 71, 87, 64, 66, 56, 100, 49, 68, 74, 70, 71, 52, 57, 71, 79, 54, 79, 58, 80, 57, 66, 65, 78, 72, 51, 67, 51, 76, 62, 71, 62, 68, 87, 114, 65, 46, 83, 83, 63, 68, 70, 74, 55, 75, 58, 78, 66, 49, 50, 82, 68, 71, 80, 78, 91, 69, 41, 64, 63, 73, 56, 78, 43, 35, 70, 60, 55, 88, 57, 50, 91, 75, 53, 52, 55, 69, 47, 59, 55, 70, 64, 47, 90, 61, 82, 55, 48, 66, 72, 95, 60, 92, 68, 44, 41, 96, 43, 110, 60, 66, 48, 72, 121, 82, 59, 51, 64, 68, 54, 65, 42, 85, 81, 73, 68, 74, 80, 71, 68, 123, 62, 64, 55, 76, 79, 74, 86, 64, 42, 48, 92, 74, 60, 70, 67, 56, 60, 47, 83, 100, 77, 52, 82, 79, 66, 53, 40, 45, 50, 65, 71, 49, 71, 34, 38, 116, 46, 67, 57, 67, 64, 65, 56, 81, 41, 61, 69, 61, 62, 73, 85, 58, 75, 57, 100, 57, 68, 74, 48, 59, 58, 127, 93, 43, 90, 88, 71, 73, 54, 65, 50, 54, 59, 67, 48, 63, 52, 80, 62, 55, 46, 58, 59, 92, 68, 91, 27, 42, 104, 59, 52, 55, 68, 83, 48, 67, 44, 51, 76, 49, 99, 64, 81, 74, 66, 81, 74, 57, 58, 44, 51, 70, 77, 65, 85, 85, 75, 62, 56, 105, 72, 59, 71, 58, 59, 47, 70, 62, 65, 65, 65, 63, 95, 74, 70, 83, 102, 69, 64, 45, 64, 68, 76, 49, 70, 84, 57, 86, 56, 52, 48, 64, 73, 98, 51, 42, 92, 77, 63, 63, 81, 53, 99, 50, 67, 52, 51, 73, 55, 63, 99, 69, 64, 88, 58, 86, 56, 40, 46, 69, 72, 55, 54, 72, 71, 70, 73, 56, 61, 47, 129, 84, 50, 47, 52, 72, 93, 76, 78, 91, 50, 76, 55, 52, 68, 79, 64, 71, 73, 61, 68, 63, 76, 57, 71, 62, 47, 69, 83, 79, 105, 67, 65, 57, 66, 95, 74, 67, 54, 62, 67, 49, 43, 53, 81, 65, 101, 76, 57, 69, 56, 86, 78, 64, 63, 39, 52, 47, 77, 52, 46, 61, 61, 60, 52, 42, 69, 70, 51, 69, 63, 85, 50, 57, 72, 64, 106, 71, 75, 52, 60, 55, 70, 76, 57, 67, 75, 80, 76, 82, 54, 54, 71, 56, 73, 53, 93, 86, 48, 58, 50, 72, 66, 90, 53, 118, 47, 67, 71, 53, 65, 73, 61, 46, 64, 39, 58, 53, 68, 35, 51, 43, 69, 69, 59, 82, 59, 83, 49, 51, 55, 65, 44, 75, 56, 47, 68, 97, 107, 89, 82, 56, 62, 70, 67, 77, 85, 51, 73, 83, 69, 50, 62, 49, 76, 60, 73, 62, 52, 57, 60, 48, 84, 60, 80, 57, 111, 70, 59, 62, 108, 61, 62, 52, 66, 60, 53, 61, 52, 56, 76, 38, 72, 74, 76, 110, 61, 53, 39, 69, 92, 58, 58, 72, 68, 52, 62, 52, 69, 57, 42, 110, 61, 64, 73, 73, 41, 82, 84, 59, 68, 62, 59, 51, 71, 125, 73, 78, 62, 70, 59, 105, 48, 50, 49, 63, 85, 70, 76, 39, 43, 84, 60, 64, 42, 64, 76, 83, 53, 56, 59, 56, 65, 42, 61, 51, 55, 62, 63, 106, 57, 83, 48, 60, 56, 70, 58, 60, 60, 66, 63, 64, 63, 80, 70, 66, 82, 39, 71, 84, 43, 70, 51, 91, 54, 58, 53, 58, 52, 57, 78, 106, 81, 80, 48, 39, 60, 71, 74, 65, 70, 55, 37, 47, 78, 71, 67, 45, 57, 93, 77, 75, 41, 55, 46, 63, 87, 78, 73, 55, 61, 76, 54, 63, 63, 53, 61, 88, 49, 56, 43, 64, 57, 60, 78, 66, 56, 73, 44, 74, 49, 76, 50, 49, 57, 78, 55, 45, 67, 95, 64, 47, 49, 82, 54, 58, 87, 62, 68, 83, 58, 53, 58, 53, 68, 52, 37, 67, 74, 70, 68, 63, 92, 52, 106, 93, 64, 69, 63, 60, 63, 56, 73, 58, 73, 64, 87, 54, 68, 58, 73, 70, 69, 88, 49, 49, 54, 60, 54, 53, 60, 68, 43, 48, 61, 70, 35, 64, 64, 64, 55, 72, 58, 78, 65, 66, 78, 57, 75, 110, 62, 57, 44, 68, 78, 84, 75, 91, 76, 57, 79, 66, 78, 57, 82, 60, 84, 58, 64, 44, 61, 50, 103, 86, 63, 73, 62, 66, 95, 42, 83, 45, 76, 45, 76, 71, 95, 70, 47, 71, 62, 83, 77, 43, 83, 81, 75, 62, 39, 52, 39, 74, 43, 66, 50, 35, 68, 73, 65, 59, 64, 51, 72, 79, 81, 61, 47, 84, 71, 83, 56, 66, 73, 61, 70, 85, 83, 54, 49, 59, 127, 73, 54, 70, 100, 59, 67, 69, 62, 38, 57, 103, 58, 47, 78, 76, 73, 79, 48, 62, 50, 110, 63, 50, 60, 69, 49, 64, 51, 55, 89, 54, 41, 71, 84, 59, 48, 82, 99, 70, 63, 92, 88, 54, 69, 56, 56, 88, 81, 77, 61, 80, 59, 86, 39, 58, 94, 57, 82, 97, 63, 66, 70, 44, 54, 124, 85, 63, 71, 61, 61, 67, 75, 47, 84, 91, 86, 69, 105, 68, 53, 73, 58, 51, 79, 55, 75, 62, 81, 101, 83, 49, 89, 74, 48, 67, 51, 45, 68, 66, 38, 69, 60, 99, 54, 99, 68, 153, 64, 58, 57, 53, 75, 59, 54, 65, 80, 57, 67, 89, 51, 54, 66, 66, 62, 62, 51, 74, 59, 67, 112, 47, 55, 68, 53, 57, 47, 67, 70, 58, 57, 66, 80, 50, 79, 102, 82, 60, 81, 54, 82, 134, 62, 45, 70, 67, 53, 36, 76, 53, 40, 48, 58, 73, 61, 87, 65, 56, 57, 62, 78, 78, 64, 50, 64, 91, 51, 78, 94, 60, 62, 57, 94, 59, 70, 70, 69, 62, 46, 61, 84, 35, 71, 81, 59, 45, 92, 61, 68, 53, 80, 62, 54, 51, 44, 120, 70, 68, 35, 52, 79, 57, 74, 67, 72, 50, 92, 86, 99, 63, 99, 77, 70, 84, 71, 69, 71, 65, 62, 50, 81, 26, 51, 63, 85, 68, 58, 81, 57, 63, 71, 60, 82, 107, 53, 49, 69, 82, 57, 82, 43, 80, 56, 111, 50, 42, 80, 78, 94, 67, 78, 67, 78, 64, 62, 57, 62, 58, 42, 59, 64, 56, 44, 58, 58, 58, 54, 62, 54, 66, 72, 75, 71, 83, 62, 52, 53, 66, 49, 62, 73, 68, 68, 53, 58, 87, 59, 59, 63, 77, 73, 81, 107, 66, 57, 74, 63, 103, 56, 62, 51, 74, 69, 61, 57, 74, 58, 61, 72, 85, 62, 70, 56, 74, 68, 57, 57, 52, 45, 52, 63, 64, 64, 62, 65, 80, 65, 51, 124, 90, 65, 67, 49, 71, 54, 82, 66, 58, 69, 79, 55, 52, 62, 62, 81, 84, 74, 65, 62, 74, 77, 50, 64, 51, 60, 52, 51, 76, 84, 94, 88, 59, 60, 53, 62, 67, 64, 52, 61, 58, 63, 106, 65, 53, 56, 65, 73, 53, 63, 67, 57, 67, 62, 77, 60, 68, 76, 53, 107, 53, 57, 61, 46, 55, 49, 70, 59, 76, 72, 54, 64, 63, 66, 59, 61, 54, 59, 68, 66, 81, 59, 55, 57, 70, 84, 82, 100, 68, 56, 50, 68, 56, 70, 82, 63, 68, 64, 58, 54, 59, 70, 54, 63, 68, 64, 69, 67, 64, 69, 58, 67, 59, 58, 47, 59, 64, 55, 81, 63, 49, 71, 78, 82, 59, 94, 64, 58, 76, 55, 149, 78, 73, 69, 61, 59, 69, 61, 59, 65, 76, 98, 60, 61, 53, 67, 57, 76, 55, 64, 62, 63, 64, 46, 70, 72, 71, 65, 69, 62, 69, 82, 64, 62, 67, 109, 62, 54, 57, 71, 57, 87, 68, 59, 68, 55, 61, 67, 62, 69, 60, 55, 67, 58, 70, 71, 57, 59, 48, 60, 66, 46, 73, 52, 61, 66, 70, 72, 48, 66, 56, 67, 58, 66, 71, 69, 66, 63, 69, 79, 41, 64, 71, 72, 76, 68, 61, 68, 66, 99, 76, 62, 64, 69, 75, 67, 59, 58, 54, 67, 83, 63, 56, 92, 61, 67, 57, 60, 65, 56, 69, 61, 76, 73, 61, 61, 84, 54, 78, 79, 68, 50, 66, 59, 128, 65, 61, 49, 70, 79, 51, 62, 56, 68, 72, 74, 64, 70, 59, 64, 55, 69, 59, 83, 57, 70, 91, 56, 92, 66, 57, 97, 71, 68, 53, 60, 62, 48, 77, 57, 52, 64, 107, 54, 75, 90, 59, 101, 56, 79, 87, 60, 78, 63, 62, 81, 73, 58, 58, 52, 39, 61, 60, 59, 59, 77, 67, 66, 62, 57, 45, 57, 67, 52, 69, 69, 50, 56, 72, 55, 59, 60, 88, 65, 60, 68, 68, 41, 60, 69, 65, 68, 62, 67, 68, 71, 55, 61, 61, 71, 65, 62, 66, 54, 55, 68, 87, 74, 75, 69, 80, 60, 74, 75, 53, 52, 60, 60, 58, 59, 52, 78, 61, 60, 56, 73, 62, 69, 69, 68, 70, 53, 78, 59, 59, 76, 64, 81, 50, 66, 58, 66, 44, 58, 69, 69, 57, 97, 65, 54, 63, 72, 88, 61, 55, 60, 81, 71, 57, 54, 58, 63, 58, 68, 56, 56, 70, 60, 63, 54, 51, 67, 69, 69, 67, 67, 62, 45, 65, 58, 70, 61, 57, 65, 59, 62, 75, 66, 95, 103, 77, 71, 73, 51, 57, 60, 66, 89, 67, 59, 60, 83, 80, 64, 59, 63, 81, 58, 56, 54, 67, 76, 57, 57, 76, 67, 64, 58, 63, 60, 57, 56, 54, 62, 50, 62, 71, 57, 64, 64, 66, 48, 70, 66, 82, 57, 69, 75, 43, 69, 55, 59, 45, 56, 56, 65, 59, 65, 71, 58, 83, 61, 49, 59, 60, 74, 55, 67, 59, 63, 58, 63, 69, 48, 60, 63, 63, 47, 90, 66, 60, 70, 89, 76, 76, 67, 53, 54, 77, 68, 63, 47, 77, 67, 58, 70, 64, 62, 70, 67, 67, 81, 55, 59, 69, 63, 57, 64, 106, 59, 66, 97, 46, 60, 72, 63, 58, 75, 60, 53, 61, 63, 63, 76, 89, 56, 76, 61, 71, 64, 57, 67, 70, 70, 62, 70, 63, 72, 63, 56, 75, 64, 62, 55, 62, 57, 71, 63, 84, 56, 48, 69, 66, 85, 63, 70, 70, 65, 50, 59, 65, 64, 65, 82, 62, 60, 60, 115, 70, 61, 77, 56, 65, 55, 109, 75, 113, 74, 68, 84, 60, 69, 62, 61, 72, 57, 64, 69, 84, 61, 59, 79, 59, 63, 76, 65, 70, 67, 60, 58, 64, 103, 61, 73, 43, 66, 73, 75, 68, 76, 71, 75, 59, 65, 61, 69, 53, 56, 55, 50, 66, 56, 62, 68, 62, 56, 75, 71, 72, 72, 79, 53, 103, 54, 60, 59, 66, 73, 46, 58, 52, 56, 68, 51, 74, 84, 91, 57, 61, 83, 101, 61, 59, 65, 58, 64, 68, 67, 111, 49, 117, 64, 71, 57, 61, 87, 55, 65, 57, 55, 66, 65, 69, 83, 84, 60, 81, 59, 73, 62, 65, 47, 81, 49, 95, 58, 105, 54, 69, 57, 65, 66, 88, 66, 63, 65, 62, 81, 60, 54, 64, 60, 107, 49, 64, 83, 66, 55, 70, 66, 49, 58, 70, 59, 66, 88, 62, 67, 83, 69, 76, 87, 69, 64, 80, 73, 66, 58, 60, 69, 75, 64, 90, 55, 56, 91, 60, 72, 56, 52, 75, 74, 63, 61, 72, 70, 56, 64, 53, 85, 60, 92, 58, 51, 84, 57, 102, 65, 54, 62, 49, 60, 52, 64, 56, 76, 71, 57, 60, 78, 58, 60, 58, 81, 60, 57, 52, 64, 55, 62, 69, 62, 71, 71, 68, 70, 64, 68, 68, 66, 56, 84, 56, 53, 68, 63, 56, 62, 83, 62, 60, 64, 70, 75, 63, 60, 56, 62, 62, 64, 56, 70, 75, 59, 58, 68, 55, 75, 58, 55, 65, 53, 62, 63, 67, 61, 59, 106, 62, 59, 46, 55, 55, 70, 63, 57, 67, 52, 111, 63, 70, 67, 62, 66, 66, 66, 64, 77, 69, 80, 60, 54, 81, 62, 65, 61, 97, 61, 75, 69, 65, 66, 68, 52, 57, 57, 56, 87, 62, 55, 67, 61, 59, 76, 65, 62, 52, 58, 51, 69, 69, 73, 84, 51, 81, 67, 76, 49, 57, 63, 96, 68, 68, 78, 56, 72, 54, 55, 49, 72, 60, 68, 63, 88, 92, 61, 61, 60, 86, 63, 54, 64, 63, 56, 71, 68, 60, 82, 104, 75, 55, 54, 65, 75, 61, 85, 65, 66, 72, 57, 57, 52, 52, 95, 64, 63, 44, 66, 61, 67, 49, 60, 67, 64, 60, 48, 66, 44, 113, 55, 64, 59, 74, 81, 61, 65, 50, 82, 82, 59, 58, 67, 57, 47, 74, 63, 69, 64, 69, 68, 102, 82, 67, 41, 90, 61, 91, 48, 54, 69, 53, 67, 61, 58, 66, 78, 73, 90, 92, 65, 76, 64, 79, 56, 62, 43, 60, 61, 66, 45, 89, 48, 61, 85, 64, 58, 46, 74, 43, 54, 71, 57, 104, 77, 57, 56, 55, 53, 80, 65, 63, 61, 55, 89, 70, 68, 68, 55, 67, 58, 60, 100, 68, 67, 73, 95, 46, 81, 51, 70, 45, 56, 42, 58, 67, 54, 65, 61, 64, 63, 72, 58, 84, 56, 79, 75, 90, 46, 53, 63, 50, 76, 88, 72, 52, 69, 70, 71, 80, 59, 59, 70, 66, 43, 68, 70, 60, 58, 59, 76, 84, 73, 66, 65, 55, 45, 53, 57, 48, 67, 68, 82, 68, 72, 95, 68, 66, 68, 82, 79, 58, 59, 95, 64, 73, 68, 58, 74, 55, 74, 62, 64, 63, 79, 57, 108, 64, 67, 75, 55, 70, 58, 55, 59, 81, 55, 58, 45, 62, 63, 69, 81, 85, 60, 67, 59, 84, 86, 60, 64, 65, 80, 112, 71, 91, 110, 76, 74, 73, 88, 104, 47, 75, 58, 59, 64, 45, 67, 57, 55, 67, 56, 64, 45, 85, 59, 66, 95, 72, 54, 51, 58, 56, 65, 54, 63, 62, 32, 69, 41, 41, 59, 75, 70, 48, 69, 54, 66, 77, 60, 43, 64, 57, 68, 49, 67, 51, 44, 55, 65, 76, 62, 62, 46, 79, 58, 59, 56, 62, 66, 54, 64, 47, 75, 70, 75, 74, 69, 53, 58, 59, 57, 70, 68, 75, 78, 58, 69, 71, 79, 59, 71, 64, 60, 62, 50, 48, 62, 71, 92, 72, 55, 65, 62, 70, 75, 74, 63, 43, 53, 64, 76, 64, 67, 55, 67, 63, 57, 68, 72, 80, 86, 58, 59, 58, 64, 67, 65, 59, 63, 84, 80, 50, 86, 59, 67, 56, 63, 72, 91, 77, 70, 80, 50, 87, 47, 61, 56, 92, 72, 67, 61, 44, 59, 52, 64, 99, 67, 44, 63, 75, 75, 66, 96, 66, 97, 60, 33, 51, 60, 61, 68, 57, 44, 64, 41, 67, 76, 59, 65, 51, 58, 49, 70, 64, 111, 68, 51, 83, 57, 51, 60, 60, 59, 63, 65, 64, 62, 79, 55, 73, 60, 62, 62, 62, 53, 52, 61, 78, 65, 47, 54, 49, 88, 62, 62, 74, 73, 62, 46, 65, 35, 89, 46, 73, 82, 68, 76, 54, 67, 60, 62, 75, 58, 58, 56, 47, 52, 61, 61, 53, 60, 56, 61, 44, 60, 63, 67, 77, 73, 63, 68, 86, 52, 54, 58, 58, 60, 60, 48, 73, 55, 59, 68, 60, 59, 44, 59, 68, 64, 59, 60, 55, 79, 64, 43, 57, 54, 132, 78, 73, 62, 90, 54, 55, 65, 64, 68, 67, 67, 79, 73, 56, 56, 66, 54, 63, 61, 69, 61, 48, 48, 64, 109, 89, 55, 52, 71, 101, 70, 64, 63, 62, 77, 94, 57, 42, 62, 55, 57, 56, 142, 93, 59, 40, 56, 77, 64, 75, 52, 65, 79, 47, 43, 54, 51, 67, 68, 60, 49, 57, 73, 53, 74, 68, 58, 35, 40, 77, 71, 43, 59, 74, 42, 72, 60, 74, 74, 64, 59, 58, 63, 52, 118, 65, 62, 59, 54, 60, 85, 59, 79, 65, 94, 53, 81, 34, 78, 41, 74, 57, 68, 52, 77, 65, 50, 80, 74, 56, 70, 66, 88, 62, 73, 66, 62, 71, 73, 87, 83, 47, 72, 92, 70, 104, 70, 29, 52, 58, 55, 67, 65, 72, 58, 64, 64, 63, 71, 78, 69, 59, 64, 57, 64, 56, 66, 54, 64, 64, 76, 71, 73, 83, 98, 67, 68, 71, 70, 73, 72, 66, 96, 75, 59, 55, 69, 86, 58, 76, 54, 59, 71, 56, 59, 61, 87, 80, 66, 80, 38, 74, 70, 61, 59, 76, 75, 66, 65, 64, 51, 56, 55, 62, 93, 59, 74, 101, 64, 71, 59, 55, 99, 66, 78, 66, 64, 89, 81, 63, 58, 106, 58, 48, 72, 49, 61, 64, 55, 64, 81, 77, 62, 71, 52, 56, 71, 62, 56, 71, 74, 54, 54, 76, 63, 128, 74, 75, 69, 60, 65, 53, 57, 62, 80, 48, 52, 74, 60, 60, 53, 68, 75, 39, 74, 61, 97, 55, 63, 84, 44, 64, 75, 60, 61, 59, 82, 61, 62, 44, 85, 57, 90, 73, 57, 61, 58, 46, 57, 60, 114, 68, 57, 88, 62, 67, 63, 84, 152, 50, 57, 73, 59, 76, 49, 60, 63, 41, 55, 56, 77, 76, 66, 69, 77, 71, 46, 76, 91, 78, 76, 58, 103, 55, 79, 61, 85, 54, 56, 55, 62, 51, 88, 83, 52, 51, 62, 53, 81, 48, 60, 56, 48, 55, 79, 46, 59, 73, 69, 70, 64, 55, 60, 63, 53, 61, 57, 54, 53, 51, 55, 83, 77, 65, 64, 73, 54, 70, 68, 58, 67, 68, 58, 56, 62, 73, 54, 73, 70, 78, 68, 86, 76, 67, 83, 68, 83, 69, 61, 56, 72, 81, 75, 69, 51, 75, 63, 72, 83, 64, 73, 63, 68, 65, 73, 82, 52, 45, 63, 78, 72, 61, 62, 65, 78, 57, 53, 82, 58, 54, 89, 87, 63, 46, 61, 70, 103, 61, 69, 102, 59, 65, 80, 77, 80, 59, 67, 64, 51, 46, 78, 62, 90, 71, 61, 74, 77, 60, 40, 64, 51, 68, 70, 82, 57, 49, 62, 65, 71, 60, 80, 68, 50, 54, 70, 71, 55, 56, 80, 77, 63, 39, 55, 46, 73, 67, 99, 68, 69, 93, 75, 57, 58, 66, 50, 100, 82, 112, 50, 52, 62, 67, 62, 80, 70, 89, 63, 59, 57, 47, 55, 61, 78, 67, 60, 71, 71, 88, 53, 52, 58, 62, 53, 64, 94, 54, 53, 66, 62, 55, 128, 88, 63, 76, 56, 78, 68, 58, 62, 84, 52, 99, 77, 53, 61, 50, 82, 94, 64, 58, 58, 70, 77, 72, 62, 66, 64, 69, 57, 64, 58, 68, 57, 87, 63, 66, 61, 66, 48, 54, 74, 59, 59, 33, 47, 61, 59, 62, 69, 69, 57, 75, 61, 72, 81, 63, 34, 50, 67, 78, 68, 53, 67, 79, 54, 56, 75, 71, 58, 91, 56, 55, 60, 57, 94, 67, 65, 84, 66, 68, 51, 62, 93, 42, 55, 63, 62, 60, 56, 39, 113, 62, 89, 68, 56, 67, 70, 61, 58, 37, 58, 58, 73, 66, 70, 44, 53, 59, 100, 64, 52, 66, 55, 60, 47, 66, 54, 80, 65, 51, 62, 56, 61, 79, 65, 62, 63, 76, 48, 51, 55, 45, 68, 70, 69, 61, 41, 64, 78, 53, 70, 60, 69, 94, 51, 59, 61, 67, 70, 96, 86, 53, 82, 51, 62, 58, 68, 63, 59, 69, 66, 67, 63, 46, 64, 64, 74, 59, 76, 70, 56, 105, 62, 59, 73, 57, 57, 83, 66, 59, 60, 51, 55, 88, 63, 49, 54, 61, 67, 61, 79, 67, 75, 64, 43, 58, 44, 81, 76, 71, 51, 57, 56, 73, 48, 42, 82, 124, 53, 66, 67, 56, 61, 59, 87, 71, 60, 60, 60, 60, 60, 54, 71, 72, 63, 45, 100, 100, 85, 101, 69, 65, 80, 61, 57, 66, 60, 62, 83, 70, 59, 48, 56, 57, 60, 66, 61, 59, 80, 39, 45, 75, 87, 61, 88, 56, 45, 50, 59, 66, 63, 71, 53, 59, 59, 62, 60, 82, 74, 74, 64, 40, 75, 88, 96, 70, 58, 62, 69, 58, 63, 78, 70, 51, 71, 56, 104, 100, 66, 74, 53, 57, 67, 100, 56, 62, 75, 66, 57, 72, 88, 64, 56, 106, 63, 71, 84, 60, 52, 68, 48, 51, 81, 65, 53, 60, 68, 71, 63, 103, 58, 70, 61, 63, 56, 80, 69, 82, 53, 59, 73, 71, 86, 70, 52, 59, 54, 43, 81, 54, 77, 70, 76, 72, 58, 59, 57, 88, 54, 75, 75, 56, 52, 51, 68, 95, 85, 60, 80, 81, 60, 100, 73, 63, 61, 68, 54, 65, 78, 68, 58, 78, 65, 59, 74, 46, 59, 49, 52, 61, 83, 69, 42, 70, 63, 50, 57, 60, 58, 77, 99, 51, 58, 70, 92, 66, 72, 64, 60, 65, 57, 56, 91, 54, 57, 66, 101, 60, 62, 68, 35, 63, 80, 74, 66, 80, 56, 90, 74, 62, 60, 71, 66, 56, 42, 69, 65, 109, 66, 56, 61, 65, 64, 52, 81, 38, 69, 58, 54, 68, 64, 64, 72, 60, 93, 67, 51, 55, 57, 59, 57, 60, 46, 48, 92, 55, 79, 58, 53, 84, 58, 57, 49, 42, 52, 78, 75, 64, 59, 69, 55, 65, 89, 72, 52, 83, 73, 65, 74, 69, 80, 69, 51, 49, 48, 55, 62, 68, 61, 40, 71, 53, 77, 62, 62, 56, 69, 77, 62, 64, 54, 53, 73, 74, 70, 50, 68, 54, 86, 56, 58, 82, 77, 50, 47, 81, 71, 78, 62, 50, 65, 71, 50, 88, 68, 50, 65, 80, 57, 84, 68, 63, 63, 65, 36, 71, 64, 75, 68, 54, 59, 69, 54, 71, 69, 53, 76, 66, 55, 81, 54, 71, 63, 69, 63, 69, 73, 58, 52, 78, 62, 55, 56, 63, 88, 70, 110, 78, 55, 54, 78, 57, 60, 85, 66, 60, 65, 72, 64, 58, 62, 81, 52, 55, 125, 52, 81, 49, 96, 99, 62, 59, 81, 91, 71, 68, 97, 57, 61, 56, 56, 62, 88, 63, 82, 62, 63, 51, 114, 54, 68, 95, 49, 79, 63, 45, 63, 70, 83, 47, 77, 80, 96, 64, 49, 69, 52, 72, 65, 73, 47, 59, 55, 77, 66, 47, 84, 133, 79, 54, 78, 65, 68, 89, 59, 63, 62, 50, 42, 67, 47, 58, 59, 59, 56, 89, 42, 64, 53, 55, 75, 78, 43, 61, 61, 63, 79, 72, 88, 53, 57, 57, 52, 55, 41, 59, 58, 95, 59, 52, 72, 54, 38, 61, 58, 84, 49, 83, 86, 65, 56, 50, 83, 50, 79, 56, 59, 64, 67, 59, 63, 56, 64, 56, 49, 53, 79, 56, 66, 59, 58, 74, 91, 66, 55, 60, 58, 70, 82, 52, 54, 78, 64, 62, 70, 52, 69, 52, 114, 94, 55, 65, 63, 76, 59, 77, 72, 60, 61, 50, 60, 58, 64, 53, 72, 65, 51, 64, 65, 65, 63, 48, 73, 61, 70, 69, 78, 51, 69, 53, 70, 52, 57, 58, 83, 53, 57, 53, 54, 83, 71, 75, 79, 76, 58, 54, 40, 45, 77, 57, 78, 62, 49, 52, 68, 62, 67, 83, 79, 75, 59, 68, 80, 67, 68, 51, 105, 63, 62, 47, 106, 65, 62, 52, 76, 79, 63, 56, 76, 64, 77, 72, 66, 71, 61, 68, 66, 66, 52, 69, 50, 62, 60, 69, 74, 127, 56, 67, 82, 49, 57, 58, 60, 62, 52, 57, 83, 66, 72, 89, 81, 70, 55, 60, 63, 62, 74, 67, 44, 59, 58, 71, 74, 72, 61, 61, 63, 74, 85, 80, 114, 71, 70, 91, 68, 84, 41, 67, 48, 51, 69, 55, 63, 54, 81, 54, 48, 56, 59, 109, 78, 66, 76, 79, 67, 69, 57, 61, 57, 69, 104, 69, 89, 54, 71, 63, 60, 58, 79, 61, 67, 78, 75, 50, 61, 45, 69, 65, 62, 56, 54, 58, 72, 71, 92, 63, 52, 53, 65, 54, 68, 45, 62, 57, 87, 57, 38, 58, 59, 53, 91, 61, 119, 60, 60, 68, 43, 46, 49, 62, 79, 74, 102, 61, 43, 68, 50, 73, 65, 60, 66, 70, 71, 80, 74, 64, 65, 70, 53, 67, 89, 52, 66, 105, 67, 61, 81, 56, 62, 86, 66, 45, 54, 58, 58, 58, 102, 65, 94, 58, 61, 78, 58, 56, 58, 60, 68, 55, 65, 93, 57, 65, 67, 50, 54, 74, 85, 54, 74, 61, 65, 69, 74, 50, 53, 41, 55, 82, 63, 68, 67, 61, 99, 69, 58, 48, 58, 55, 64, 88, 55, 78, 87, 71, 82, 67, 83, 65, 65, 119, 79, 50, 55, 59, 53, 68, 66, 55, 53, 60, 57, 61, 47, 80, 65, 52, 75, 67, 51, 83, 73, 68, 63, 67, 69, 55, 86, 77, 58, 56, 69, 78, 69, 61, 51, 65, 70, 87, 90, 58, 79, 69, 69, 57, 64, 52, 42, 84, 54, 50, 76, 47, 80, 57, 79, 50, 78, 58, 58, 51, 77, 64, 70, 78, 77, 52, 98, 71, 54, 77, 109, 76, 62, 46, 70, 63, 45, 63, 68, 82, 72, 71, 75, 52, 48, 66, 75, 71, 84, 112, 74, 61, 61, 80, 69, 68, 91, 72, 68, 54, 52, 58, 70, 63, 64, 58, 61, 52, 60, 62, 70, 68, 90, 57, 50, 65, 61, 64, 67, 70, 71, 66, 80, 79, 57, 61, 89, 73, 59, 45, 51, 67, 68, 61, 60, 66, 58, 56, 63, 93, 71, 51, 66, 54, 93, 81, 76, 65, 46, 71, 85, 73, 66, 65, 52, 91, 74, 74, 62, 71, 79, 58, 45, 73, 60, 68, 82, 73, 44, 51, 59, 51, 92, 48, 79, 68, 59, 92, 67, 64, 56, 82, 66, 46, 57, 75, 57, 70, 61, 60, 66, 66, 62, 85, 58, 82, 61, 65, 62, 62, 66, 59, 53, 71, 77, 55, 87, 71, 55, 54, 72, 60, 76, 101, 91, 59, 70, 48, 45, 91, 76, 49, 51, 75, 54, 108, 59, 58, 66, 65, 61, 91, 65, 92, 61, 99, 65, 99, 69, 62, 60, 61, 72, 61, 57, 68, 65, 44, 59, 63, 65, 72, 62, 68, 95, 51, 57, 59, 82, 64, 61, 53, 57, 48, 63, 64, 78, 50, 70, 49, 61, 73, 63, 57, 53, 73, 77, 74, 64, 56, 64, 53, 59, 66, 70, 68, 56, 73, 52, 60, 111, 95, 61, 81, 62, 55, 61, 44, 54, 67, 54, 62, 63, 77, 66, 73, 78, 70, 86, 48, 57, 64, 51, 65, 63, 58, 48, 55, 58, 69, 72, 70, 99, 68, 104, 68, 92, 48, 83, 54, 41, 62, 60, 65, 60, 75, 62, 80, 79, 64, 62, 57, 77, 82, 57, 54, 96, 52, 69, 82, 56, 59, 63, 46, 79, 44, 75, 46, 71, 71, 60, 69, 57, 99, 64, 84, 71, 46, 54, 73, 61, 71, 73, 55, 61, 66, 52, 67, 58, 58, 62, 58, 47, 43, 69, 93, 75, 93, 56, 53, 58, 66, 105, 59, 93, 57, 76, 74, 73, 60, 61, 59, 73, 73, 59, 66, 70, 61, 99, 71, 35, 78, 76, 53, 59, 61, 59, 79, 64, 65, 47, 63, 85, 60, 68, 57, 57, 68, 66, 72, 70, 73, 51, 80, 56, 61, 81, 59, 78, 47, 59, 51, 91, 73, 61, 57, 49, 54, 70, 94, 64, 82, 70, 66, 58, 76, 78, 73, 54, 59, 63, 56, 62, 78, 50, 61, 54, 62, 59, 59, 68, 68, 62, 49, 55, 60, 63, 79, 46, 67, 75, 92, 41, 59, 75, 79, 58, 68, 59, 63, 62, 69, 66, 42, 94, 52, 57, 75, 57, 57, 69, 75, 62, 49, 55, 55, 60, 48, 50, 62, 51, 72, 67, 68, 81, 46, 89, 52, 56, 59, 77, 51, 73, 56, 52, 62, 46, 63, 63, 58, 74, 61, 75, 63, 63, 91, 52, 57, 51, 67, 88, 62, 43, 57, 71, 81, 78, 60, 66, 73, 78, 75, 66, 70, 64, 79, 74, 58, 74, 60, 71, 70, 72, 46, 58, 61, 61, 65, 79, 83, 67, 78, 58, 71, 81, 57, 50, 55, 60, 79, 86, 86, 60, 67, 74, 60, 71, 58, 53, 54, 60, 78, 128, 43, 94, 61, 68, 69, 100, 49, 88, 69, 73, 75, 77, 95, 45, 75, 62, 61, 26, 70, 63, 67, 63, 58, 57, 50, 45, 59, 71, 56, 36, 54, 84, 56, 110, 54, 61, 75, 69, 83, 71, 51, 74, 96, 79, 49, 74, 60, 51, 92, 62, 53, 55, 55, 72, 76, 74, 49, 57, 60, 66, 69, 54, 52, 69, 57, 67, 67, 47, 90, 76, 64, 69, 70, 63, 92, 51, 71, 39, 64, 67, 80, 67, 50, 80, 72, 81, 71, 55, 58, 67, 93, 69, 59, 85, 34, 71, 64, 107, 59, 56, 86, 57, 90, 75, 61, 52, 67, 51, 54, 64, 63, 93, 113, 65, 50, 69, 67, 54, 86, 71, 56, 51, 69, 44, 64, 61, 66, 64, 48, 69, 51, 71, 53, 78, 55, 46, 43, 68, 57, 40, 62, 54, 79, 60, 40, 71, 89, 63, 82, 59, 99, 60, 64, 89, 95, 60, 55, 65, 55, 68, 44, 46, 52, 63, 92, 60, 57, 65, 49, 57, 52, 87, 62, 122, 73, 59, 76, 68, 64, 50, 34, 59, 57, 68, 71, 71, 63, 67, 74, 41, 57, 55, 82, 68, 84, 74, 60, 45, 58, 68, 73, 83, 68, 71, 60, 76, 79, 62, 104, 42, 82, 98, 88, 60, 65, 81, 72, 90, 56, 55, 48, 51, 73, 58, 73, 72, 63, 51, 73, 58, 66, 71, 85, 68, 74, 58, 64, 80, 67, 44, 59, 77, 52, 100, 59, 43, 64, 48, 65, 48, 77, 75, 55, 62, 63, 52, 65, 59, 55, 52, 93, 49, 51, 79, 63, 61, 58, 54, 65, 45, 68, 36, 86, 57, 61, 59, 90, 57, 50, 55, 69, 57, 93, 59, 50, 41, 98, 60, 61, 66, 50, 52, 60, 67, 41, 63, 72, 50, 45, 71, 72, 55, 72, 56, 55, 62, 85, 46, 49, 65, 60, 58, 78, 71, 56, 58, 75, 67, 59, 72, 59, 91, 57, 51, 58, 74, 63, 65, 60, 74, 81, 71, 92, 58, 83, 61, 67, 86, 55, 67, 51, 59, 61, 59, 57, 64, 69, 59, 94, 69, 73, 104, 62, 79, 80, 61, 62, 71, 65, 45, 34, 66, 49, 48, 61, 52, 55, 153, 58, 55, 52, 54, 47, 60, 68, 72, 62, 50, 63, 67, 59, 63, 59, 80, 63, 89, 74, 60, 69, 59, 56, 61, 60, 97, 69, 58, 59, 59, 70, 69, 54, 75, 59, 42, 50, 83, 55, 46, 63, 78, 64, 64, 74, 81, 58, 71, 57, 89, 56, 75, 61, 70, 54, 68, 58, 90, 78, 62, 64, 58, 58, 117, 64, 81, 67, 76, 69, 79, 59, 62, 74, 80, 65, 53, 67, 74, 72, 86, 83, 80, 76, 47, 75, 68, 68, 59, 59, 55, 76, 56, 85, 61, 68, 53, 69, 49, 50, 61, 73, 59, 68, 56, 62, 50, 46, 65, 68, 57, 40, 47, 64, 77, 57, 70, 62, 80, 78, 68, 58, 67, 79, 56, 58, 64, 58, 68, 66, 63, 54, 73, 68, 73, 65, 65, 71, 54, 70, 53, 78, 79, 66, 60, 60, 68, 69, 63, 67, 73, 56, 85, 62, 61, 86, 81, 77, 80, 95, 59, 73, 49, 60, 68, 96, 56, 49, 61, 65, 61, 79, 67, 56, 53, 54, 85, 78, 55, 50, 66, 65, 55, 56, 65, 62, 72, 117, 58, 68, 77, 71, 69, 48, 51, 56, 66, 63, 69, 80, 79, 56, 81, 70, 59, 57, 69, 47, 58, 62, 62, 46, 55, 62, 58, 66, 58, 74, 59, 71, 52, 75, 46, 59, 72, 54, 61, 76, 72, 65, 62, 61, 75, 58, 74, 59, 50, 56, 36, 65, 89, 79, 76, 64, 66, 66, 123, 81, 69, 63, 49, 72, 52, 56, 69, 60, 53, 72, 60, 73, 60, 68, 68, 64, 88, 65, 56, 66, 53, 43, 62, 49, 62, 46, 56, 63, 71, 63, 80, 73, 71, 49, 64, 48, 76, 70, 57, 65, 85, 88, 46, 59, 65, 90, 57, 90, 47, 49, 87, 68, 58, 64, 71, 69, 92, 56, 72, 68, 45, 49, 52, 73, 60, 40, 63, 58, 81, 93, 59, 53, 58, 75, 77, 53, 73, 58, 74, 64, 55, 71, 67, 46, 52, 69, 71, 83, 72, 67, 60, 41, 58, 76, 61, 40, 48, 64, 107, 45, 62, 76, 85, 49, 83, 58, 55, 58, 59, 72, 61, 68, 72, 70, 74, 46, 65, 55, 74, 48, 56, 61, 72, 66, 64, 69, 67, 71, 80, 57, 81, 61, 73, 56, 63, 47, 62, 58, 67, 71, 77, 55, 78, 73, 90, 79, 44, 75, 78, 90, 71, 65, 68, 63, 56, 50, 95, 77, 58, 49, 73, 69, 75, 74, 63, 81, 72, 62, 48, 58, 85, 49, 65, 83, 62, 67, 42, 52, 70, 56, 61, 50, 75, 76, 95, 74, 72, 50, 75, 59, 65, 51, 54, 47, 73, 65, 71, 77, 70, 60, 45, 58, 52, 83, 52, 58, 58, 115, 69, 46, 57, 121, 63, 79, 57, 64, 66, 62, 79, 62, 68, 92, 75, 59, 84, 71, 46, 54, 58, 128, 111, 72, 119, 83, 53, 69, 66, 69, 78, 52, 46, 73, 65, 86, 55, 81, 57, 51, 51, 65, 72, 54, 59, 62, 54, 255, 75, 70, 60, 60, 58, 69, 58, 52, 72, 70, 47, 78, 106, 69, 60, 62, 71, 82, 59, 59, 44, 61, 83, 56, 72, 65, 70, 56, 70, 58, 63, 62, 68, 83, 54, 68, 68, 76, 68, 86, 62, 53, 54, 39, 83, 82, 63, 62, 49, 62, 69, 58, 59, 70, 69, 61, 60, 66, 83, 66, 53, 68, 42, 52, 55, 72, 69, 86, 62, 66, 51, 58, 71, 66, 85, 56, 63, 73, 55, 56, 66, 70, 56, 85, 77, 109, 72, 66, 58, 69, 59, 85, 58, 102, 63, 69, 75, 67, 59, 73, 52, 141, 62, 60, 50, 77, 72, 54, 74, 70, 84, 86, 67, 66, 51, 55, 52, 66, 55, 60, 59, 69, 66, 50, 59, 65, 54, 46, 90, 56, 51, 63, 70, 43, 65, 82, 62, 67, 92, 56, 59, 118, 69, 63, 68, 49, 62, 139, 52, 49, 65, 56, 55, 66, 56, 53, 61, 62, 86, 60, 51, 94, 54, 61, 64, 53, 60, 71, 55, 118, 73, 52, 67, 75, 112, 94, 53, 49, 57, 42, 68, 61, 52, 59, 70, 51, 36, 68, 62, 81, 66, 44, 77, 58, 62, 69, 57, 47, 64, 59, 63, 71, 50, 67, 61, 51, 72, 44, 63, 87, 64, 59, 68, 59, 67, 76, 72, 62, 58, 102, 88, 70, 43, 74, 61, 63, 71, 94, 71, 109, 70, 58, 71, 73, 69, 65, 59, 73, 57, 88, 67, 58, 62, 75, 58, 71, 91, 60, 44, 70, 54, 46, 51, 83, 58, 67, 61, 105, 65, 113, 63, 104, 81, 58, 69, 104, 80, 81, 54, 60, 46, 60, 49, 61, 60, 75, 74, 70, 77, 73, 55, 64, 83, 50, 71, 54, 107, 49, 57, 109, 56, 57, 38, 56, 54, 60, 63, 47, 64, 99, 97, 72, 90, 59, 68, 64, 56, 104, 64, 55, 65, 76, 41, 64, 61, 70, 63, 88, 69, 76, 88, 60, 68, 89, 104, 71, 77, 63, 63, 57, 80, 58, 71, 49, 65, 40, 72, 60, 65, 59, 34, 63, 66, 60, 43, 72, 75, 64, 53, 52, 67, 93, 51, 72, 163, 51, 64, 67, 78, 59, 68, 65, 66, 55, 62, 73, 92, 90, 38, 39, 71, 56, 69, 72, 74, 63, 68, 65, 64, 64, 65, 60, 69, 69, 60, 52, 69, 51, 65, 76, 78, 59, 57, 55, 64, 61, 54, 53, 72, 56, 69, 56, 70, 71, 73, 76, 60, 73, 62, 49, 93, 77, 59, 56, 59, 56, 69, 72, 56, 88, 72, 78, 67, 67, 44, 45, 62, 56, 75, 53, 58, 54, 80, 60, 71, 54, 79, 72, 75, 48, 43, 57, 62, 66, 74, 62, 70, 66, 79, 60, 56, 65, 58, 103, 69, 47, 79, 86, 55, 46, 91, 65, 73, 61, 79, 67, 61, 57, 72, 73, 63, 60, 65, 55, 58, 61, 61, 72, 72, 64, 84, 58, 75, 71, 48, 78, 56, 58, 73, 70, 49, 55, 58, 67, 54, 57, 72, 69, 111, 44, 78, 90, 57, 48, 70, 76, 66, 70, 61, 78, 71, 70, 81, 55, 47, 84, 69, 47, 55, 78, 47, 58, 78, 62, 72, 95, 63, 63, 71, 42, 56, 50, 38, 64, 67, 52, 72, 68, 69, 73, 58, 43, 56, 56, 86, 76, 71, 61, 70, 84, 68, 53, 60, 82, 82, 70, 66, 50, 80, 66, 64, 48, 85, 55, 68, 74, 70, 62, 65, 78, 58, 52, 70, 94, 60, 64, 52, 71, 58, 51, 53, 63, 58, 60, 47, 51, 83, 65, 48, 77, 89, 48, 69, 56, 67, 66, 66, 56, 47, 57, 69, 63, 65, 49, 81, 52, 65, 75, 73, 58, 65, 47, 59, 63, 53, 86, 59, 65, 75, 60, 50, 99, 81, 60, 68, 57, 54, 58, 67, 65, 70, 78, 75, 62, 62, 76, 58, 58, 47, 78, 48, 100, 65, 61, 68, 73, 61, 54, 60, 67, 64, 65, 81, 88, 48, 75, 54, 59, 63, 71, 64, 71, 62, 46, 62, 70, 55, 71, 94, 52, 92, 59, 69, 86, 62, 64, 53, 64, 76, 64, 60, 68, 66, 60, 74, 74, 96, 67, 73, 76, 82, 67, 63, 56, 53, 73, 77, 93, 54, 69, 67, 53, 60, 53, 77, 65, 59, 56, 52, 72, 62, 61, 53, 63, 74, 50, 55, 56, 93, 103, 70, 76, 53, 69, 66, 82, 66, 56, 58, 82, 54, 90, 55, 52, 57, 60, 61, 70, 60, 51, 72, 83, 66, 59, 59, 58, 66, 56, 45, 94, 78, 61, 66, 59, 61, 59, 64, 67, 51, 58, 67, 39, 67, 72, 90, 69, 64, 66, 60, 84, 110, 49, 66, 52, 66, 74, 59, 59, 65, 81, 69, 65, 76, 58, 63, 80, 61, 57, 75, 59, 82, 63, 60, 64, 64, 64, 59, 50, 76, 55, 67, 76, 67, 73, 61, 99, 66, 70, 49, 64, 58, 53, 60, 69, 68, 64, 60, 39, 79, 72, 62, 69, 87, 70, 70, 74, 73, 57, 56, 89, 51, 59, 63, 65, 71, 85, 53, 89, 58, 63, 46, 74, 59, 65, 62, 70, 131, 60, 48, 62, 48, 69, 59, 71, 56, 57, 87, 72, 67, 98, 70, 83, 68, 72, 57, 49, 67, 60, 70, 90, 57, 63, 59, 68, 61, 68, 65, 54, 63, 64, 65, 102, 87, 54, 56, 57, 61, 56, 59, 66, 88, 60, 60, 55, 65, 56, 74, 67, 69, 57, 65, 66, 67, 63, 52, 57, 62, 93, 60, 73, 49, 107, 75, 82, 92, 70, 75, 66, 71, 64, 59, 52, 44, 77, 54, 58, 60, 64, 48, 59, 60, 79, 62, 84, 62, 55, 76, 73, 62, 59, 61, 50, 52, 106, 60, 66, 69, 85, 76, 58, 50, 54, 60, 54, 62, 51, 61, 69, 99, 73, 54, 67, 61, 64, 63, 52, 66, 63, 58, 55, 46, 66, 55, 60, 75, 82, 42, 74, 65, 64, 98, 65, 62, 60, 61, 63, 100, 57, 64, 71, 65, 62, 72, 79, 59, 75, 92, 77, 74, 105, 61, 64, 57, 53, 106, 65, 50, 73, 53, 56, 54, 99, 95, 63, 72, 61, 76, 98, 71, 66, 55, 52, 115, 80, 48, 74, 77, 60, 59, 60, 52, 60, 89, 49, 44, 94, 65, 74, 78, 71, 69, 78, 68, 50, 66, 59, 65, 62, 69, 70, 87, 58, 72, 71, 72, 62, 43, 53, 58, 60, 54, 68, 51, 110, 62, 82, 81, 59, 61, 67, 85, 59, 70, 79, 66, 70, 65, 56, 81, 49, 52, 63, 54, 69, 71, 73, 64, 73, 60, 70, 76, 63, 69, 59, 62, 67, 73, 48, 58, 78, 66, 51, 64, 54, 78, 69, 58, 64, 61, 79, 85, 92, 59, 107, 75, 67, 63, 47, 54, 78, 56, 53, 50, 89, 71, 67, 64, 63, 58, 56, 68, 63, 53, 62, 59, 73, 79, 67, 54, 68, 77, 56, 60, 53, 54, 60, 79, 70, 71, 65, 53, 44, 52, 68, 52, 58, 76, 48, 58, 65, 95, 59, 60, 90, 68, 55, 57, 88, 74, 51, 65, 63, 57, 76, 69, 72, 54, 90, 63, 80, 63, 62, 56, 55, 65, 75, 82, 86, 55, 68, 72, 90, 73, 70, 55, 70, 56, 51, 64, 60, 63, 56, 85, 66, 92, 56, 52, 66, 151, 82, 63, 63, 86, 50, 87, 67, 89, 58, 52, 65, 38, 47, 97, 66, 73, 72, 56, 59, 58, 77, 73, 68, 73, 52, 93, 59, 58, 44, 104, 83, 62, 75, 96, 59, 91, 55, 61, 58, 66, 52, 57, 60, 57, 49, 53, 60, 60, 61, 73, 64, 66, 60, 53, 67, 63, 49, 76, 58, 92, 45, 47, 53, 58, 57, 67, 57, 58, 76, 160, 66, 55, 76, 64, 69, 61, 62, 87, 54, 73, 71, 55, 62, 50, 65, 66, 51, 44, 55, 68, 51, 61, 62, 71, 99, 53, 69, 87, 62, 70, 52, 65, 58, 59, 61, 49, 86, 84, 57, 66, 65, 57, 66, 60, 62, 58, 55, 52, 51, 61, 48, 59, 70, 70, 54, 67, 87, 52, 68, 68, 98, 53, 56, 61, 82, 62, 62, 56, 43, 99, 85, 70, 60, 63, 86, 99, 59, 76, 85, 54, 57, 59, 57, 73, 54, 63, 49, 65, 62, 91, 66, 76, 52, 51, 57, 104, 111, 72, 99, 69, 53, 52, 55, 56, 63, 63, 68, 63, 68, 103, 48, 82, 55, 88, 73, 77, 119, 62, 74, 60, 29, 75, 61, 50, 65, 54, 76, 88, 47, 51, 71, 62, 72, 78, 58, 74, 92, 42, 55, 72, 85, 69, 89, 76, 62, 63, 64, 61, 80, 56, 60, 66, 72, 60, 54, 67, 67, 64, 56, 86, 61, 53, 63, 70, 54, 73, 68, 66, 61, 76, 75, 61, 69, 48, 67, 82, 60, 67, 77, 58, 107, 53, 54, 62, 71, 59, 63, 105, 88, 99, 52, 69, 64, 49, 68, 64, 56, 84, 56, 66, 93, 65, 48, 55, 58, 57, 87, 48, 48, 59, 73, 69, 73, 73, 64, 66, 55, 65, 58, 84, 57, 70, 61, 66, 48, 48, 69, 54, 68, 45, 64, 86, 68, 55, 72, 59, 49, 45, 60, 59, 90, 68, 75, 55, 58, 41, 65, 90, 61, 55, 53, 66, 106, 57, 67, 64, 73, 63, 52, 72, 65, 54, 69, 61, 78, 64, 70, 57, 62, 68, 56, 59, 50, 72, 41, 79, 64, 67, 80, 60, 55, 58, 66, 46, 52, 128, 71, 43, 55, 66, 61, 57, 48, 77, 51, 72, 76, 62, 59, 60, 54, 62, 70, 37, 45, 77, 61, 68, 55, 65, 57, 63, 59, 54, 89, 70, 65, 61, 66, 59, 53, 74, 51, 49, 52, 116, 91, 75, 64, 72, 60, 76, 62, 59, 84, 68, 70, 76, 59, 55, 77, 55, 67, 112, 54, 57, 74, 90, 41, 74, 64, 81, 50, 84, 78, 58, 94, 67, 58, 94, 45, 70, 47, 75, 98, 57, 73, 53, 43, 66, 82, 49, 63, 58, 77, 62, 43, 49, 57, 57, 46, 49, 88, 94, 60, 124, 51, 85, 62, 73, 85, 38, 57, 55, 54, 77, 60, 67, 72, 53, 64, 55, 76, 54, 60, 59, 89, 72, 108, 58, 81, 88, 79, 70, 78, 59, 84, 71, 57, 80, 57, 66, 63, 52, 49, 55, 66, 48, 51, 79, 61, 81, 72, 46, 45, 42, 64, 60, 70, 62, 45, 64, 99, 72, 74, 59, 45, 86, 94, 86, 55, 80, 81, 62, 92, 55, 62, 37, 86, 54, 53, 82, 60, 82, 61, 88, 66, 58, 61, 55, 47, 78, 84, 60, 64, 63, 70, 80, 62, 41, 88, 55, 74, 84, 45, 45, 65, 62, 58, 93, 59, 84, 78, 76, 66, 82, 62, 74, 69, 76, 56, 67, 40, 65, 69, 68, 74, 51, 75, 72, 60, 77, 38, 73, 44, 61, 68, 62, 69, 64, 59, 75, 47, 62, 56, 63, 51, 73, 68, 59, 59, 54, 70, 46, 81, 63, 77, 71, 82, 54, 71, 87, 104, 47, 70, 80, 59, 64, 79, 46, 76, 49, 67, 75, 95, 78, 52, 45, 69, 70, 90, 57, 59, 61, 50, 60, 64, 48, 66, 44, 64, 81, 63, 45, 54, 63, 79, 56, 60, 68, 57, 70, 65, 67, 76, 62, 41, 60, 51, 105, 68, 43, 55, 61, 59, 78, 67, 74, 56, 54, 46, 74, 80, 62, 66, 63, 66, 66, 69, 50, 89, 64, 77, 54, 69, 82, 56, 89, 57, 58, 54, 53, 89, 65, 82, 85, 74, 75, 67, 56, 60, 84, 67, 77, 57, 58, 56, 85, 69, 73, 50, 92, 52, 61, 84, 80, 67, 61, 50, 58, 69, 58, 47, 58, 59, 55, 68, 121, 63, 66, 69, 69, 52, 54, 55, 82, 48, 60, 45, 45, 81, 80, 58, 92, 63, 73, 63, 57, 60, 115, 50, 63, 49, 50, 50, 59, 77, 79, 83, 50, 95, 73, 71, 30, 75, 91, 77, 58, 55, 102, 81, 52, 54, 72, 87, 79, 96, 85, 81, 66, 62, 54, 41, 60, 63, 64, 77, 73, 62, 60, 62, 76, 58, 63, 82, 58, 111, 54, 47, 50, 73, 62, 48, 47, 112, 24, 53, 50, 61, 84, 119, 85, 57, 82, 57, 75, 67, 79, 70, 78, 45, 54, 50, 110, 65, 62, 89, 57, 97, 92, 56, 55, 100, 34, 67, 64, 57, 106, 66, 69, 75, 78, 54, 69, 56, 64, 75, 53, 58, 73, 47, 68, 80, 72, 78, 69, 65, 51, 76, 74, 50, 86, 57, 75, 71, 83, 60, 64, 79, 63, 71, 69, 56, 67, 134, 73, 73, 70, 60, 70, 96, 84, 88, 58, 64, 99, 75, 64, 71, 68, 62, 51, 62, 63, 53, 73, 62, 60, 49, 61, 79, 103, 65, 75, 65, 53, 64, 126, 58, 49, 56, 49, 47, 49, 70, 62, 76, 55, 65, 57, 56, 47, 66, 54, 52, 58, 57, 57, 81, 56, 72, 82, 54, 79, 62, 61, 43, 59, 71, 65, 83, 64, 54, 52, 59, 72, 102, 55, 67, 78, 81, 74, 82, 59, 56, 48, 72, 86, 84, 64, 60, 85, 51, 48, 51, 64, 124, 68, 57, 52, 51, 58, 93, 49, 59, 83, 92, 61, 51, 46, 85, 49, 76, 48, 78, 63, 50, 70, 63, 57, 64, 63, 91, 51, 36, 76, 37, 61, 68, 58, 84, 56, 65, 56, 51, 64, 48, 70, 116, 90, 61, 79, 87, 75, 59, 90, 72, 51, 63, 48, 60, 50, 58, 81, 71, 66, 93, 95, 29, 51, 52, 70, 57, 53, 84, 52, 77, 64, 99, 59, 54, 79, 82, 42, 52, 49, 79, 69, 76, 86, 80, 65, 58, 59, 58, 83, 59, 68, 93, 60, 61, 92, 60, 50, 60, 43, 70, 47, 59, 49, 65, 55, 50, 76, 87, 50, 51, 72, 66, 51, 47, 59, 70, 77, 43, 60, 71, 50, 75, 69, 73, 57, 77, 70, 69, 83, 53, 71, 97, 105, 111, 69, 64, 91, 59, 81, 64, 68, 74, 63, 56, 44, 74, 72, 54, 48, 68, 56, 56, 65, 83, 70, 65, 58, 71, 72, 64, 73, 105, 72, 42, 55, 56, 48, 74, 61, 55, 82, 71, 64, 67, 60, 98, 66, 112, 103, 58, 85, 48, 66, 59, 56, 58, 69, 66, 58, 60, 59, 54, 58, 74, 70, 66, 70, 65, 66, 63, 67, 74, 61, 73, 66, 56, 85, 58, 63, 110, 48, 82, 64, 61, 101, 47, 49, 76, 59, 64, 62, 53, 80, 65, 56, 64, 79, 52, 75, 77, 64, 60, 67, 74, 57, 71, 68, 63, 69, 73, 63, 51, 56, 107, 66, 67, 72, 44, 61, 56, 69, 66, 56, 66, 85, 53, 62, 103, 85, 59, 70, 41, 92, 61, 85, 51, 70, 65, 64, 63, 72, 53, 69, 71, 76, 42, 75, 72, 80, 47, 70, 36, 51, 71, 80, 48, 62, 61, 69, 68, 53, 59, 50, 67, 59, 84, 55, 68, 58, 50, 53, 73, 84, 61, 58, 67, 61, 87, 53, 72, 44, 50, 69, 62, 38, 60, 52, 58, 72, 52, 63, 73, 54, 47, 65, 81, 58, 78, 52, 69, 92, 76, 78, 55, 99, 63, 77, 62, 43, 61, 60, 67, 68, 50, 87, 69, 74, 43, 82, 66, 92, 89, 60, 73, 67, 64, 57, 81, 41, 77, 87, 58, 71, 37, 66, 59, 83, 70, 91, 73, 83, 69, 43, 69, 55, 81, 48, 71, 73, 59, 48, 55, 79, 82, 68, 61, 68, 67, 55, 56, 52, 110, 60, 46, 72, 69, 68, 69, 63, 72, 57, 124, 59, 65, 59, 61, 48, 63, 64, 81, 70, 71, 50, 61, 60, 62, 70, 55, 53, 64, 96, 57, 53, 58, 75, 58, 54, 57, 77, 55, 83, 81, 57, 79, 87, 52, 66, 67, 43, 57, 55, 63, 79, 77, 60, 90, 67, 70, 81, 45, 70, 98, 69, 60, 72, 69, 77, 60, 66, 64, 53, 104, 42, 70, 53, 70, 76, 65, 62, 51, 74, 62, 67, 67, 59, 81, 72, 64, 63, 61, 55, 66, 75, 63, 57, 54, 59, 94, 59, 55, 68, 70, 53, 97, 63, 66, 62, 85, 55, 58, 53, 40, 62, 79, 48, 53, 45, 47, 64, 135, 75, 50, 62, 68, 75, 67, 67, 69, 62, 56, 57, 79, 89, 48, 73, 62, 53, 61, 71, 60, 70, 35, 66, 55, 61, 61, 63, 83, 52, 63, 64, 53, 58, 59, 74, 76, 60, 59, 68, 76, 39, 71, 63, 86, 79, 83, 55, 68, 87, 113, 59, 64, 177, 46, 74, 70, 66, 58, 66, 59, 73, 71, 62, 68, 60, 68, 93, 64, 78, 76, 58, 68, 54, 63, 64, 96, 65, 49, 63, 76, 62, 72, 51, 52, 58, 80, 68, 51, 60, 59, 58, 63, 68, 55, 74, 64, 73, 80, 59, 74, 76, 134, 63, 84, 54, 89, 55, 65, 77, 59, 50, 69, 60, 66, 72, 53, 74, 77, 57, 59, 67, 75, 65, 90, 73, 65, 66, 68, 80, 67, 79, 87, 70, 63, 63, 55, 77, 56, 55, 74, 75, 109, 93, 91, 121, 61, 58, 74, 85, 75, 62, 72, 69, 63, 55, 55, 68, 52, 65, 41, 78, 54, 59, 73, 76, 58, 57, 58, 50, 47, 69, 59, 95, 58, 66, 83, 54, 83, 63, 82, 46, 88, 59, 48, 69, 81, 79, 70, 103, 67, 72, 55, 70, 71, 53, 56, 66, 63, 58, 87, 59, 68, 79, 59, 76, 59, 41, 64, 56, 58, 49, 60, 55, 48, 59, 74, 63, 87, 58, 63, 64, 73, 84, 78, 56, 78, 53, 48, 58, 61, 67, 49, 76, 58, 77, 63, 160, 68, 73, 59, 79, 82, 66, 83, 90, 61, 50, 57, 56, 67, 56, 54, 63, 60, 78, 60, 74, 47, 71, 47, 58, 61, 56, 60, 60, 60, 80, 59, 57, 88, 48, 52, 60, 58, 61, 83, 56, 84, 56, 102, 76, 94, 62, 51, 84, 56, 79, 66, 41, 47, 57, 85, 61, 93, 80, 82, 56, 66, 49, 57, 64, 94, 70, 60, 50, 57, 50, 57, 50, 63, 67, 61, 66, 47, 58, 53, 69, 53, 68, 121, 79, 49, 63, 66, 66, 54, 79, 48, 59, 68, 53, 83, 71, 61, 53, 68, 76, 65, 126, 66, 70, 68, 72, 55, 64, 66, 83, 85, 88, 94, 67, 76, 72, 67, 14, 53, 53, 73, 48, 93, 85, 61, 57, 70, 61, 55, 77, 60, 77, 64, 71, 67, 44, 58, 62, 88, 58, 51, 63, 50, 63, 58, 71, 59, 56, 61, 56, 53, 43, 79, 66, 72, 57, 58, 74, 72, 80, 48, 72, 56, 59, 76, 59, 50, 48, 73, 77, 53, 58, 88, 82, 72, 79, 46, 59, 60, 58, 67, 57, 59, 72, 60, 49, 69, 61, 59, 66, 70, 79, 40, 43, 70, 72, 49, 48, 58, 43, 75, 82, 42, 60, 76, 62, 63, 65, 52, 46, 75, 70, 70, 58, 59, 69, 79, 66, 68, 77, 61, 79, 59, 58, 56, 78, 65, 54, 66, 47, 54, 82, 68, 38, 58, 62, 75, 62, 69, 62, 66, 57, 61, 49, 113, 69, 99, 68, 100, 103, 59, 49, 59, 57, 86, 94, 72, 49, 55, 62, 49, 58, 58, 73, 59, 60, 67, 61, 59, 73, 68, 72, 58, 68, 55, 52, 79, 50, 51, 55, 59, 72, 67, 77, 56, 67, 68, 54, 60, 44, 62, 62, 77, 73, 70, 45, 51, 53, 68, 70, 88, 124, 41, 100, 89, 70, 57, 69, 62, 84, 48, 55, 59, 97, 53, 92, 51, 57, 81, 74, 61, 79, 54, 63, 37, 58, 75, 55, 79, 50, 52, 59, 47, 36, 55, 57, 64, 50, 80, 58, 91, 55, 90, 44, 75, 63, 49, 78, 66, 64, 53, 131, 56, 68, 72, 68, 69, 51, 66, 74, 71, 64, 50, 74, 66, 50, 50, 58, 64, 65, 76, 60, 70, 59, 63, 56, 69, 55, 52, 52, 63, 67, 62, 72, 58, 55, 75, 55, 65, 66, 57, 54, 61, 76, 77, 79, 72, 59, 56, 63, 52, 55, 59, 68, 55, 63, 81, 70, 68, 64, 82, 68, 68, 63, 113, 61, 69, 52, 55, 95, 70, 43, 66, 64, 59, 62, 57, 57, 77, 31, 61, 61, 77, 57, 51, 69, 52, 52, 62, 63, 68, 52, 57, 72, 53, 57, 73, 82, 53, 106, 73, 71, 71, 55, 70, 56, 63, 79, 70, 60, 61, 68, 68, 61, 98, 60, 67, 70, 76, 65, 59, 60, 53, 79, 53, 64, 69, 69, 42, 74, 61, 62, 50, 27, 69, 65, 51, 80, 52, 60, 63, 63, 64, 76, 67, 60, 48, 86, 77, 87, 83, 71, 73, 45, 82, 57, 56, 96, 59, 70, 60, 69, 56, 79, 57, 61, 70, 61, 68, 80, 70, 47, 74, 90, 58, 56, 73, 72, 55, 73, 64, 66, 67, 58, 44, 81, 79, 88, 59, 114, 90, 81, 58, 109, 58, 79, 117, 63, 60, 54, 67, 73, 92, 50, 56, 53, 81, 40, 132, 79, 51, 52, 88, 44, 64, 82, 68, 60, 71, 83, 51, 83, 65, 71, 116, 60, 59, 81, 34, 57, 48, 77, 62, 59, 68, 61, 70, 74, 54, 92, 58, 70, 46, 93, 59, 59, 79, 55, 76, 69, 80, 78, 52, 92, 82, 71, 69, 71, 74, 52, 69, 41, 51, 60, 61, 67, 66, 65, 62, 64, 53, 70, 67, 53, 103, 48, 62, 73, 54, 50, 56, 58, 71, 81, 60, 73, 75, 61, 65, 70, 83, 51, 64, 62, 53, 45, 82, 51, 86, 57, 53, 79, 72, 84, 67, 60, 128, 42, 54, 65, 70, 66, 37, 58, 98, 60, 55, 59, 63, 73, 46, 67, 66, 53, 65, 75, 68, 82, 81, 72, 65, 36, 67, 61, 72, 70, 72, 59, 71, 62, 61, 55, 51, 74, 56, 61, 85, 71, 61, 67, 76, 70, 42, 87, 86, 96, 54, 58, 81, 65, 64, 70, 48, 116, 72, 63, 62, 67, 64, 62, 69, 26, 67, 59, 55, 63, 65, 74, 86, 59, 52, 62, 46, 65, 67, 61, 63, 65, 85, 67, 67, 76, 67, 54, 65, 62, 62, 63, 67, 54, 64, 67, 80, 85, 61, 72, 55, 67, 62, 70, 48, 64, 55, 59, 64, 62, 56, 57, 82, 51, 62, 83, 56, 53, 47, 59, 77, 45, 50, 53, 70, 105, 84, 60, 91, 48, 65, 67, 65, 52, 48, 56, 46, 61, 64, 78, 72, 74, 70, 58, 81, 62, 45, 45, 68, 60, 51, 52, 72, 51, 71, 76, 61, 53, 83, 55, 57, 87, 68, 60, 74, 74, 77, 70, 72, 61, 60, 73, 72, 59, 69, 54, 64, 56, 60, 52, 62, 70, 49, 45, 60, 46, 66, 51, 59, 49, 70, 64, 74, 74, 77, 58, 43, 95, 92, 93, 53, 83, 48, 68, 52, 64, 62, 45, 58, 51, 56, 77, 62, 44, 38, 65, 73, 83, 58, 46, 58, 88, 57, 65, 62, 69, 63, 41, 63, 49, 76, 57, 62, 71, 60, 98, 55, 83, 78, 63, 95, 82, 78, 46, 65, 61, 62, 80, 66, 62, 50, 73, 58, 69, 57, 55, 64, 85, 87, 65, 53, 79, 76, 47, 71, 131, 81, 52, 49, 87, 78, 57, 79, 56, 68, 124, 78, 64, 69, 45, 65, 69, 73, 74, 44, 59, 62, 50, 57, 51, 101, 68, 68, 53, 52, 61, 120, 39, 53, 65, 67, 74, 77, 102, 47, 68, 62, 78, 80, 36, 51, 74, 67, 58, 60, 53, 53, 66, 49, 74, 60, 80, 87, 68, 62, 66, 54, 57, 71, 54, 71, 61, 63, 62, 65, 68, 49, 64, 97, 63, 50, 70, 86, 87, 73, 61, 74, 71, 56, 72, 72, 63, 80, 62, 61, 90, 48, 50, 56, 56, 73, 57, 68, 71, 70, 57, 50, 75, 58, 41, 64, 70, 66, 69, 88, 75, 58, 89, 73, 48, 51, 67, 82, 47, 56, 89, 56, 55, 78, 70, 54, 43, 101, 89, 60, 54, 79, 92, 79, 103, 61, 83, 88, 72, 64, 53, 77, 64, 56, 48, 52, 123, 72, 72, 65, 71, 54, 60, 52, 65, 50, 65, 84, 70, 68, 65, 79, 123, 67, 85, 66, 81, 63, 64, 130, 67, 56, 70, 54, 57, 52, 52, 78, 83, 85, 44, 65, 62, 58, 71, 67, 68, 60, 81, 85, 56, 74, 72, 80, 67, 63, 92, 82, 56, 67, 57, 70, 82, 61, 87, 58, 43, 66, 50, 51, 79, 59, 82, 61, 65, 70, 53, 35, 68, 57, 90, 60, 122, 69, 54, 55, 74, 75, 59, 71, 52, 50, 73, 73, 46, 56, 55, 55, 85, 79, 56, 77, 59, 62, 48, 73, 39, 68, 77, 68, 54, 80, 58, 54, 67, 63, 67, 54, 80, 71, 78, 66, 75, 55, 62, 53, 73, 91, 77, 39, 74, 76, 68, 51, 52, 67, 59, 109, 53, 55, 59, 68, 76, 58, 86, 94, 70, 53, 54, 79, 56, 69, 59, 77, 65, 81, 71, 52, 76, 69, 91, 70, 61, 58, 67, 41, 82, 66, 41, 101, 71, 57, 69, 71, 74, 40, 68, 58, 65, 57, 59, 68, 68, 74, 67, 126, 51, 65, 51, 70, 56, 60, 72, 62, 71, 74, 81, 43, 87, 66, 75, 57, 67, 64, 46, 70, 50, 52, 64, 75, 48, 55, 49, 74, 57, 56, 59, 58, 74, 82, 64, 76, 95, 97, 61, 58, 51, 72, 50, 78, 65, 77, 42, 65, 86, 74, 63, 86, 54, 67, 44, 49, 64, 93, 57, 115, 62, 66, 60, 72, 45, 99, 65, 67, 99, 50, 68, 69, 64, 106, 76, 70, 72, 72, 84, 42, 69, 49, 87, 70, 79, 61, 60, 42, 80, 64, 52, 71, 61, 76, 49, 59, 50, 68, 53, 55, 53, 69, 72, 54, 58, 60, 59, 63, 60, 57, 55, 54, 56, 49, 71, 46, 52, 84, 57, 54, 67, 59, 58, 66, 51, 73, 66, 126, 98, 77, 62, 55, 50, 63, 66, 54, 72, 78, 51, 61, 65, 72, 63, 52, 63, 65, 68, 44, 80, 49, 70, 55, 61, 74, 72, 63, 76, 70, 67, 61, 60, 59, 65, 62, 52, 62, 64, 54, 68, 96, 66, 47, 66, 67, 73, 58, 52, 72, 70, 70, 90, 58, 80, 75, 80, 80, 112, 53, 63, 66, 63, 58, 47, 77, 78, 60, 58, 65, 78, 103, 55, 50, 99, 55, 55, 87, 71, 107, 37, 111, 92, 47, 47, 50, 50, 60, 81, 70, 69, 49, 81, 60, 53, 62, 126, 90, 71, 50, 76, 79, 91, 63, 65, 57, 68, 56, 50, 63, 63, 98, 54, 66, 56, 60, 58, 62, 46, 157, 63, 48, 71, 57, 64, 56, 53, 57, 80, 47, 65, 72, 62, 57, 45, 90, 49, 76, 77, 55, 65, 46, 77, 80, 60, 63, 76, 59, 56, 47, 61, 66, 88, 50, 137, 107, 53, 86, 56, 68, 58, 67, 117, 53, 41, 74, 58, 59, 73, 60, 81, 60, 58, 70, 82, 105, 67, 58, 69, 50, 57, 49, 89, 57, 68, 77, 107, 62, 56, 40, 45, 55, 70, 84, 54, 60, 66, 71, 51, 55, 64, 60, 68, 63, 66, 39, 49, 60, 43, 49, 74, 62, 58, 51, 64, 58, 65, 50, 53, 84, 60, 82, 61, 63, 64, 56, 57, 56, 49, 82, 72, 77, 59, 65, 67, 51, 68, 48, 112, 73, 78, 63, 98, 69, 112, 53, 60, 56, 61, 43, 54, 62, 61, 65, 47, 45, 58, 80, 55, 77, 54, 83, 58, 60, 65, 51, 63, 66, 93, 43, 76, 69, 77, 43, 53, 54, 38, 53, 74, 57, 58, 63, 57, 65, 84, 94, 46, 52, 72, 80, 74, 82, 96, 46, 65, 43, 46, 69, 87, 90, 77, 73, 68, 50, 90, 72, 67, 37, 94, 61, 59, 67, 66, 75, 75, 54, 98, 50, 85, 78, 69, 64, 67, 89, 67, 51, 60, 86, 69, 61, 85, 70, 85, 63, 72, 75, 44, 74, 63, 55, 84, 48, 72, 52, 42, 70, 40, 73, 60, 66, 83, 64, 54, 55, 84, 84, 73, 54, 87, 77, 55, 53, 57, 62, 58, 88, 74, 48, 81, 65, 77, 39, 43, 55, 69, 68, 76, 75, 94, 58, 57, 65, 77, 74, 75, 53, 66, 60, 55, 75, 55, 48, 86, 63, 66, 73, 55, 50, 70, 51, 58, 70, 81, 59, 120, 55, 48, 62, 59, 62, 71, 68, 88, 72, 59, 74, 100, 90, 59, 48, 62, 69, 95, 61, 83, 82, 69, 62, 85, 60, 53, 56, 72, 85, 51, 51, 36, 69, 65, 73, 69, 103, 57, 70, 69, 56, 57, 80, 73, 51, 78, 59, 63, 75, 65, 56, 63, 58, 62, 65, 53, 65, 61, 77, 84, 47, 71, 80, 56, 91, 41, 64, 62, 64, 76, 62, 77, 59, 64, 66, 89, 57, 81, 56, 59, 56, 64, 80, 87, 80, 63, 66, 69, 74, 73, 95, 56, 53, 71, 58, 92, 82, 64, 64, 76, 59, 45, 61, 62, 46, 56, 45, 82, 111, 77, 64, 71, 55, 61, 63, 64, 41, 46, 63, 62, 73, 74, 62, 75, 58, 75, 62, 51, 73, 61, 116, 57, 71, 59, 71, 56, 64, 45, 59, 75, 92, 68, 77, 60, 63, 70, 86, 60, 119, 47, 68, 51, 87, 71, 52, 97, 49, 80, 39, 61, 66, 64, 40, 50, 71, 58, 42, 45, 54, 79, 73, 81, 57, 64, 48, 58, 79, 62, 48, 75, 70, 84, 56, 52, 69, 75, 69, 71, 52, 87, 72, 73, 33, 63, 56, 119, 106, 55, 69, 74, 73, 85, 36, 90, 57, 78, 58, 61, 51, 64, 83, 47, 61, 62, 70, 62, 78, 49, 102, 61, 73, 59, 85, 40, 56, 53, 53, 76, 63, 69, 80, 64, 38, 55, 60, 57, 66, 70, 68, 75, 71, 70, 80, 53, 69, 61, 89, 59, 66, 73, 50, 61, 78, 55, 44, 68, 92, 52, 66, 57, 49, 148, 79, 58, 77, 66, 53, 70, 54, 71, 82, 59, 71, 50, 76, 81, 125, 59, 58, 52, 61, 73, 92, 75, 87, 60, 48, 80, 46, 60, 76, 46, 68, 63, 68, 78, 61, 86, 69, 49, 93, 52, 70, 51, 62, 68, 106, 84, 72, 60, 53, 71, 68, 83, 64, 57, 65, 88, 65, 67, 73, 67, 89, 68, 92, 78, 55, 61, 62, 61, 68, 50, 86, 65, 82, 64, 78, 61, 50, 58, 58, 43, 50, 78, 68, 80, 65, 72, 76, 64, 51, 51, 87, 63, 67, 45, 67, 62, 66, 43, 49, 69, 72, 59, 40, 63, 98, 53, 79, 68, 81, 45, 49, 71, 69, 59, 64, 82, 57, 70, 79, 88, 100, 41, 90, 54, 84, 62, 62, 55, 61, 50, 66, 66, 35, 68, 90, 54, 49, 79, 92, 79, 50, 69, 54, 51, 57, 64, 70, 52, 65, 64, 77, 93, 71, 92, 63, 69, 40, 81, 49, 68, 53, 84, 66, 54, 58, 85, 48, 65, 52, 47, 75, 66, 55, 58, 65, 56, 82, 57, 46, 56, 68, 70, 54, 51, 68, 63, 68, 62, 64, 35, 75, 75, 58, 60, 71, 63, 63, 64, 58, 76, 76, 50, 72, 62, 64, 64, 82, 80, 63, 66, 73, 54, 51, 51, 71, 49, 55, 81, 68, 73, 47, 71, 95, 52, 69, 93, 57, 53, 62, 90, 96, 44, 77, 65, 62, 56, 58, 56, 60, 74, 59, 58, 66, 59, 68, 59, 56, 55, 52, 77, 66, 57, 74, 50, 105, 64, 72, 67, 67, 78, 64, 88, 83, 63, 65, 78, 51, 68, 62, 73, 60, 41, 69, 70, 71, 43, 75, 76, 62, 82, 81, 43, 85, 73, 66, 96, 54, 52, 88, 78, 65, 56, 76, 60, 45, 96, 60, 57, 53, 74, 72, 47, 57, 49, 108, 72, 63, 95, 71, 47, 67, 67, 73, 78, 54, 56, 95, 30, 61, 57, 63, 59, 84, 44, 65, 69, 88, 63, 56, 46, 59, 59, 53, 59, 71, 63, 82, 77, 57, 56, 71, 59, 60, 60, 61, 75, 67, 111, 50, 56, 73, 68, 53, 55, 67, 51, 33, 57, 91, 64, 78, 63, 53, 62, 63, 96, 50, 63, 71, 68, 58, 43, 67, 72, 86, 63, 55, 54, 76, 67, 67, 63, 69, 55, 48, 49, 61, 67, 59, 85, 53, 63, 87, 65, 61, 45, 77, 67, 62, 54, 57, 86, 78, 50, 53, 73, 56, 57, 86, 54, 82, 58, 65, 64, 73, 67, 61, 52, 70, 77, 61, 73, 73, 67, 49, 40, 65, 59, 62, 83, 81, 50, 49, 59, 60, 85, 80, 55, 81, 80, 74, 99, 61, 50, 60, 88, 59, 60, 47, 73, 60, 65, 73, 62, 93, 89, 52, 85, 77, 60, 43, 83, 91, 79, 58, 53, 55, 54, 51, 57, 61, 91, 67, 55, 65, 51, 38, 59, 60, 68, 79, 75, 55, 54, 93, 80, 53, 57, 63, 46, 67, 56, 71, 64, 64, 73, 66, 56, 61, 51, 74, 61, 53, 113, 65, 65, 44, 91, 55, 44, 124, 57, 59, 74, 50, 85, 74, 74, 74, 80, 92, 83, 77, 102, 63, 65, 93, 77, 80, 72, 72, 67, 65, 69, 75, 76, 62, 91, 63, 53, 51, 76, 56, 90, 65, 43, 58, 43, 50, 73, 64, 80, 58, 61, 61, 67, 53, 59, 59, 60, 70, 61, 68, 71, 44, 72, 58, 45, 59, 62, 67, 54, 82, 57, 81, 41, 100, 79, 52, 66, 75, 54, 70, 58, 64, 63, 60, 54, 43, 90, 83, 68, 64, 49, 48, 80, 71, 54, 66, 49, 57, 55, 52, 65, 85, 67, 78, 61, 74, 66, 70, 56, 52, 105, 45, 66, 81, 83, 72, 68, 41, 57, 62, 38, 97, 82, 85, 54, 59, 39, 88, 51, 65, 59, 49, 77, 52, 60, 54, 64, 79, 58, 71, 95, 70, 72, 38, 68, 81, 74, 67, 57, 81, 61, 67, 64, 79, 58, 60, 104, 63, 94, 58, 63, 80, 81, 67, 41, 70, 81, 82, 59, 101, 56, 71, 55, 101, 52, 71, 83, 85, 50, 83, 71, 44, 65, 74, 64, 84, 59, 44, 55, 81, 57, 72, 50, 63, 61, 60, 58, 82, 53, 66, 57, 44, 73, 90, 70, 82, 41, 63, 81, 61, 56, 80, 76, 54, 62, 60, 58, 85, 55, 89, 79, 72, 67, 70, 52, 52, 43, 72, 53, 67, 38, 100, 59, 59, 61, 87, 59, 71, 62, 72, 65, 82, 73, 60, 74, 49, 57, 61, 70, 89, 53, 68, 53, 67, 73, 67, 67, 73, 68, 53, 75, 65, 106, 61, 62, 62, 62, 72, 55, 52, 64, 63, 61, 60, 68, 72, 59, 82, 59, 70, 59, 102, 53, 47, 80, 58, 55, 78, 66, 75, 72, 80, 94, 57, 54, 64, 71, 85, 80, 65, 62, 45, 59, 85, 64, 58, 144, 73, 62, 56, 81, 73, 77, 75, 50, 64, 65, 68, 72, 82, 56, 74, 52, 74, 55, 66, 55, 69, 57, 72, 93, 63, 73, 59, 59, 62, 77, 68, 62, 63, 67, 66, 61, 53, 79, 119, 78, 61, 62, 61, 50, 60, 76, 62, 79, 94, 81, 55, 47, 80, 75, 62, 87, 77, 63, 66, 67, 62, 56, 58, 58, 88, 56, 63, 59, 96, 57, 55, 60, 66, 60, 67, 50, 69, 76, 45, 67, 60, 59, 55, 68, 78, 63, 85, 66, 61, 78, 73, 76, 125, 62, 55, 54, 61, 65, 56, 52, 56, 51, 63, 73, 57, 67, 91, 60, 65, 81, 71, 63, 67, 57, 89, 80, 54, 74, 70, 76, 79, 85, 68, 68, 57, 70, 65, 97, 61, 80, 54, 75, 81, 87, 56, 65, 63, 79, 56, 57, 68, 50, 29, 73, 56, 63, 45, 85, 78, 59, 67, 59, 80, 75, 35, 57, 56, 72, 79, 82, 59, 79, 49, 73, 62, 69, 99, 46, 80, 69, 90, 96, 57, 90, 67, 68, 63, 59, 53, 69, 70, 72, 76, 75, 62, 49, 60, 65, 57, 66, 70, 37, 65, 77, 78, 60, 61, 68, 72, 76, 72, 46, 74, 39, 67, 78, 79, 67, 54, 69, 69, 58, 52, 60, 66, 65, 66, 84, 73, 44, 43, 47, 78, 64, 64, 69, 57, 61, 58, 60, 67, 64, 69, 61, 68, 56, 64, 59, 53, 56, 77, 54, 50, 62, 63, 71, 75, 59, 71, 76, 58, 68, 47, 48, 74, 71, 58, 35, 67, 69, 65, 69, 63, 70, 69, 70, 54, 81, 48, 64, 126, 71, 28, 50, 64, 73, 121, 57, 58, 50, 55, 66, 64, 45, 54, 65, 75, 91, 72, 72, 53, 41, 83, 72, 73, 65, 59, 66, 42, 57, 117, 66, 78, 61, 81, 52, 66, 58, 63, 74, 54, 63, 75, 78, 67, 61, 67, 80, 58, 73, 59, 67, 51, 77, 54, 71, 72, 61, 60, 65, 54, 56, 97, 53, 66, 56, 63, 41, 65, 61, 80, 69, 55, 85, 78, 64, 58, 67, 63, 45, 44, 49, 81, 59, 65, 63, 89, 61, 64, 61, 58, 65, 51, 60, 66, 71, 73, 56, 88, 69, 65, 51, 66, 56, 66, 55, 50, 56, 81, 49, 52, 59, 66, 48, 54, 69, 65, 73, 71, 71, 63, 59, 35, 58, 66, 59, 78, 80, 62, 73, 53, 66, 52, 83, 52, 58, 81, 67, 65, 55, 60, 74, 92, 68, 89, 79, 67, 56, 64, 89, 48, 56, 76, 55, 77, 55, 65, 62, 58, 72, 72, 61, 75, 69, 62, 58, 59, 58, 67, 56, 73, 59, 72, 72, 64, 59, 72, 67, 54, 48, 61, 58, 42, 69, 58, 79, 60, 75, 66, 64, 57, 60, 68, 73, 99, 56, 56, 77, 59, 51, 72, 92, 57, 72, 52, 74, 64, 61, 94, 63, 75, 77, 60, 54, 77, 51, 63, 63, 73, 64, 63, 59, 55, 59, 69, 55, 73, 65, 70, 54, 72, 50, 79, 57, 59, 62, 67, 56, 63, 67, 68, 76, 60, 59, 63, 78, 65, 61, 61, 88, 54, 118, 85, 67, 57, 47, 74, 52, 53, 79, 50, 76, 71, 100, 69, 62, 80, 54, 64, 81, 60, 56, 55, 101, 58, 56, 50, 52, 49, 62, 64, 56, 56, 51, 60, 115, 60, 50, 88, 73, 81, 71, 53, 65, 81, 60, 53, 70, 68, 73, 82, 72, 50, 96, 58, 69, 58, 80, 52, 70, 69, 57, 52, 45, 56, 70, 59, 86, 62, 61, 65, 58, 91, 65, 54, 66, 84, 51, 53, 67, 68, 56, 83, 60, 64, 65, 27, 65, 58, 67, 53, 73, 75, 109, 54, 56, 74, 87, 65, 70, 65, 57, 58, 44, 64, 51, 69, 56, 44, 70, 75, 67, 77, 71, 58, 69, 57, 86, 66, 50, 64, 57, 57, 74, 76, 73, 43, 59, 68, 53, 97, 63, 60, 52, 77, 61, 62, 76, 98, 71, 55, 66, 63, 60, 68, 63, 74, 67, 65, 59, 60, 53, 45, 60, 65, 60, 64, 66, 58, 78, 62, 59, 68, 62, 93, 74, 56, 60, 61, 59, 64, 78, 61, 72, 56, 69, 68, 69, 56, 69, 78, 64, 57, 45, 78, 69, 64, 61, 75, 65, 61, 79, 56, 73, 71, 66, 58, 84, 61, 63, 60, 57, 42, 54, 87, 74, 60, 69, 66, 66, 46, 89, 65, 51, 57, 58, 60, 67, 62, 78, 81, 55, 61, 80, 60, 67, 70, 54, 68, 54, 59, 80, 54, 135, 68, 76, 62, 85, 63, 72, 81, 114, 75, 90, 65, 147, 57, 68, 66, 70, 68, 60, 58, 45, 74, 69, 63, 72, 62, 53, 74, 76, 71, 55, 66, 75, 73, 67, 72, 42, 46, 79, 81, 56, 61, 77, 60, 77, 61, 59, 50, 61, 59, 61, 69, 61, 68, 62, 77, 66, 76, 51, 66, 59, 64, 78, 60, 63, 66, 44, 53, 56, 73, 82, 53, 47, 79, 64, 64, 90, 73, 54, 48, 58, 63, 72, 76, 68, 54, 64, 65, 72, 48, 54, 71, 59, 56, 74, 67, 77, 64, 70, 79, 57, 67, 74, 73, 78, 41, 84, 42, 54, 69, 72, 65, 63, 61, 72, 67, 79, 67, 45, 55, 63, 83, 71, 42, 55, 64, 100, 71, 69, 66, 69, 56, 60, 59, 58, 53, 63, 49, 94, 91, 52, 76, 51, 67, 76, 59, 55, 79, 83, 60, 109, 49, 60, 46, 54, 52, 73, 74, 50, 54, 70, 62, 89, 66, 78, 63, 80, 76, 65, 87, 49, 89, 50, 52, 69, 67, 47, 76, 62, 71, 67, 48, 73, 60, 61, 55, 70, 68, 61, 78, 46, 46, 67, 67, 69, 60, 61, 74, 71, 44, 78, 92, 57, 74, 58, 76, 65, 85, 111, 37, 96, 38, 51, 94, 73, 60, 61, 67, 51, 83, 79, 137, 75, 77, 83, 61, 45, 64, 96, 53, 60, 65, 73, 82, 56, 35, 60, 95, 54, 52, 72, 40, 74, 67, 58, 60, 67, 56, 41, 74, 49, 67, 90, 67, 60, 79, 64, 69, 96, 39, 90, 64, 29, 63, 53, 60, 75, 72, 91, 45, 61, 68, 74, 55, 54, 109, 63, 53, 58, 92, 105, 51, 39, 82, 101, 77, 76, 77, 92, 66, 44, 55, 77, 48, 51, 64, 51, 99, 65, 60, 52, 47, 62, 61, 78, 71, 54, 87, 48, 91, 72, 90, 71, 65, 79, 82, 55, 87, 119, 121, 92, 39, 56, 68, 52, 82, 64, 60, 84, 76, 69, 47, 53, 69, 70, 57, 44, 68, 35, 83, 65, 85, 76, 81, 63, 54, 58, 82, 109, 67, 67, 73, 75, 64, 46, 81, 88, 61, 46, 84, 50, 89, 62, 114, 56, 95, 73, 70, 79, 47, 64, 51, 60, 63, 56, 67, 61, 64, 101, 70, 55, 57, 96, 62, 58, 97, 47, 97, 43, 48, 67, 57, 60, 59, 81, 71, 61, 54, 84, 75, 88, 62, 45, 53, 68, 103, 80, 67, 55, 91, 80, 52, 88, 74, 51, 56, 46, 65, 81, 75, 82, 70, 48, 49, 74, 84, 44, 55, 77, 71, 73, 41, 74, 75, 51, 89, 70, 64, 94, 58, 53, 105, 43, 40, 47, 67, 72, 54, 65, 54, 53, 86, 82, 44, 66, 49, 102, 55, 83, 69, 51, 72, 66, 65, 61, 50, 72, 65, 59, 87, 55, 58, 75, 44, 60, 55, 48, 76, 82, 120, 111, 51, 60, 83, 69, 41, 79, 110, 90, 81, 59, 53, 61, 58, 80, 90, 44, 84, 57, 77, 47, 62, 70, 59, 61, 77, 68, 66, 72, 65, 62, 84, 99, 63, 69, 64, 38, 68, 86, 72, 59, 72, 73, 56, 86, 79, 74, 87, 68, 61, 76, 51, 101, 59, 64, 56, 69, 86, 64, 51, 74, 69, 66, 59, 58, 53, 68, 77, 81, 59, 56, 61, 69, 70, 62, 75, 62, 71, 72, 72, 82, 56, 59, 77, 106, 65, 55, 56, 67, 39, 55, 74, 75, 81, 56, 74, 57, 69, 57, 67, 81, 63, 70, 98, 46, 55, 63, 69, 65, 86, 56, 73, 53, 68, 67, 56, 67, 40, 64, 60, 59, 74, 72, 46, 74, 56, 58, 94, 54, 63, 84, 56, 67, 49, 85, 58, 57, 68, 66, 97, 52, 65, 84, 58, 89, 56, 99, 56, 105, 83, 67, 78, 73, 64, 76, 90, 82, 74, 66, 60, 60, 63, 55, 80, 45, 66, 65, 52, 80, 97, 69, 34, 69, 70, 40, 71, 57, 64, 54, 84, 58, 91, 75, 65, 63, 41, 62, 76, 78, 74, 54, 70, 48, 70, 55, 73, 73, 66, 82, 73, 57, 54, 48, 78, 52, 46, 81, 73, 81, 78, 98, 62, 75, 102, 83, 83, 56, 64, 62, 62, 75, 83, 102, 54, 91, 69, 64, 71, 76, 135, 81, 62, 81, 71, 60, 44, 65, 43, 53, 60, 62, 75, 62, 77, 98, 81, 55, 74, 57, 52, 57, 65, 83, 68, 76, 80, 59, 62, 87, 60, 40, 56, 77, 62, 100, 52, 74, 55, 46, 74, 60, 60, 77, 80, 57, 99, 51, 53, 92, 56, 86, 76, 65, 70, 58, 75, 47, 64, 96, 77, 56, 30, 70, 48, 82, 78, 64, 51, 66, 43, 86, 62, 49, 62, 54, 55, 69, 72, 59, 46, 76, 45, 47, 62, 50, 70, 62, 89, 62, 54, 43, 52, 65, 49, 66, 49, 92, 54, 45, 68, 82, 27, 59, 72, 69, 73, 34, 66, 58, 57, 55, 40, 71, 50, 77, 79, 51, 67, 85, 43, 55, 62, 57, 83, 58, 124, 64, 58, 70, 58, 58, 71, 62, 97, 79, 56, 76, 70, 54, 60, 112, 75, 44, 54, 31, 66, 93, 64, 63, 53, 76, 89, 55, 76, 84, 50, 66, 88, 44, 46, 47, 55, 58, 53, 70, 45, 37, 59, 75, 41, 54, 54, 77, 63, 77, 82, 64, 75, 75, 66, 42, 70, 49, 50, 72, 57, 100, 71, 59, 54, 64, 89, 68, 69, 60, 77, 78, 90, 73, 79, 86, 83, 60, 58, 79, 50, 51, 88, 67, 65, 61, 52, 65, 54, 43, 64, 87, 73, 48, 68, 66, 42, 86, 83, 128, 84, 55, 82, 59, 44, 59, 65, 50, 87, 86, 81, 78, 70, 48, 57, 65, 86, 81, 54, 57, 41, 67, 44, 85, 63, 53, 54, 66, 67, 47, 41, 60, 42, 42, 39, 75, 100, 56, 40, 71, 66, 105, 85, 50, 67, 58, 70, 55, 84, 58, 67, 84, 72, 61, 56, 59, 67, 52, 75, 60, 60, 69, 78, 53, 64, 67, 75, 93, 59, 64, 100, 78, 70, 67, 94, 72, 59, 93, 97, 63, 69, 77, 59, 60, 48, 80, 62, 81, 75, 41, 51, 66, 40, 56, 53, 105, 80, 63, 69, 51, 64, 69, 60, 63, 97, 41, 58, 67, 76, 91, 60, 51, 55, 62, 81, 51, 56, 69, 64, 82, 67, 53, 74, 64, 56, 70, 45, 56, 106, 78, 41, 60, 69, 74, 83, 43, 103, 61, 60, 96, 71, 61, 68, 88, 61, 61, 28, 65, 62, 68, 54, 51, 52, 61, 57, 41, 67, 87, 83, 65, 60, 58, 56, 64, 40, 81, 72, 79, 55, 69, 36, 69, 64, 70, 46, 75, 68, 61, 67, 62, 69, 75, 101, 59, 60, 72, 63, 68, 109, 67, 64, 43, 53, 77, 63, 80, 68, 47, 82, 40, 64, 34, 46, 56, 67, 62, 59, 75, 74, 89, 57, 44, 59, 67, 75, 69, 74, 71, 56, 56, 55, 50, 60, 42, 57, 51, 61, 71, 59, 60, 53, 43, 48, 57, 79, 61, 77, 47, 59, 62, 61, 73, 45, 66, 75, 63, 51, 88, 77, 70, 72, 71, 97, 53, 72, 62, 47, 56, 35, 55, 60, 81, 67, 63, 35, 61, 72, 51, 67, 70, 62, 66, 68, 58, 56, 74, 85, 73, 67, 69, 61, 42, 69, 56, 60, 54, 119, 58, 59, 54, 63, 61, 60, 76, 39, 60, 76, 67, 90, 62, 53, 51, 66, 98, 61, 78, 82, 71, 61, 51, 65, 53, 74, 70, 47, 96, 74, 37, 61, 61, 183, 80, 73, 60, 80, 62, 65, 81, 68, 72, 60, 86, 70, 64, 52, 78, 60, 38, 52, 69, 42, 54, 66, 64, 71, 49, 68, 70, 61, 67, 100, 60, 59, 66, 77, 70, 70, 80, 51, 69, 82, 64, 75, 54, 53, 71, 70, 58, 87, 69, 53, 76, 69, 69, 82, 90, 66, 96, 70, 52, 76, 67, 88, 57, 46, 66, 77, 61, 74, 70, 66, 70, 55, 84, 65, 100, 56, 50, 43, 64, 63, 51, 79, 72, 89, 43, 53, 58, 67, 86, 58, 75, 66, 45, 52, 73, 59, 60, 78, 87, 71, 81, 70, 77, 52, 111, 106, 60, 67, 54, 95, 48, 56, 38, 52, 43, 51, 54, 59, 62, 67, 60, 84, 81, 83, 57, 57, 71, 81, 74, 76, 78, 58, 62, 87, 65, 43, 55, 75, 53, 53, 64, 47, 49, 72, 65, 41, 71, 48, 47, 65, 54, 74, 66, 41, 75, 59, 75, 45, 60, 69, 51, 83, 63, 65, 78, 79, 55, 86, 49, 81, 80, 111, 57, 71, 57, 75, 61, 46, 54, 72, 61, 73, 73, 87, 59, 72, 63, 66, 85, 73, 60, 66, 50, 49, 82, 44, 85, 59, 66, 79, 69, 62, 59, 65, 62, 59, 53, 56, 79, 78, 61, 63, 41, 82, 78, 69, 61, 63, 68, 52, 77, 84, 73, 76, 54, 53, 117, 98, 119, 75, 60, 73, 57, 73, 46, 51, 51, 61, 43, 70, 89, 80, 55, 52, 66, 67, 49, 88, 77, 70, 70, 57, 49, 59, 78, 64, 36, 82, 37, 64, 73, 74, 59, 63, 76, 60, 93, 63, 60, 61, 52, 97, 55, 60, 70, 55, 69, 74, 76, 70, 80, 62, 57, 56, 53, 57, 56, 44, 88, 46, 51, 61, 84, 60, 78, 76, 69, 73, 55, 88, 110, 70, 53, 49, 64, 70, 89, 39, 44, 63, 70, 77, 53, 73, 82, 54, 65, 66, 61, 66, 72, 65, 90, 43, 67, 64, 60, 66, 70, 84, 40, 53, 54, 59, 77, 83, 42, 64, 94, 52, 90, 62, 51, 58, 72, 71, 83, 68, 79, 51, 60, 73, 70, 57, 84, 67, 63, 77, 76, 48, 83, 52, 76, 53, 59, 54, 52, 57, 41, 82, 79, 78, 60, 70, 77, 54, 66, 71, 69, 54, 85, 65, 58, 66, 78, 69, 71, 57, 67, 60, 93, 61, 74, 57, 55, 65, 77, 45, 63, 71, 55, 79, 61, 73, 62, 78, 74, 54, 61, 70, 73, 112, 70, 63, 84, 62, 90, 84, 62, 56, 92, 54, 62, 62, 67, 63, 65, 47, 62, 53, 82, 62, 66, 75, 76, 65, 60, 80, 47, 62, 64, 82, 59, 68, 66, 66, 59, 58, 67, 50, 60, 57, 31, 72, 61, 69, 67, 63, 65, 64, 68, 60, 72, 66, 86, 59, 51, 62, 94, 60, 47, 65, 59, 70, 65, 55, 88, 59, 85, 64, 70, 70, 50, 49, 86, 57, 67, 77, 47, 64, 36, 73, 76, 66, 83, 58, 69, 74, 70, 86, 57, 52, 47, 61, 45, 87, 62, 57, 75, 83, 55, 66, 74, 59, 61, 76, 54, 68, 65, 97, 51, 54, 81, 61, 67, 64, 84, 93, 87, 58, 64, 54, 67, 65, 49, 94, 59, 50, 56, 46, 80, 70, 83, 71, 54, 62, 66, 72, 75, 64, 70, 151, 69, 53, 57, 65, 57, 56, 49, 75, 57, 73, 48, 60, 41, 69, 78, 65, 74, 56, 73, 52, 70, 65, 70, 84, 44, 88, 62, 67, 66, 79, 74, 54, 57, 56, 73, 71, 60, 118, 50, 66, 43, 80, 66, 57, 53, 61, 64, 65, 60, 90, 72, 88, 64, 71, 61, 56, 62, 70, 81, 53, 71, 40, 62, 73, 65, 49, 87, 64, 58, 65, 74, 84, 62, 45, 66, 80, 43, 62, 71, 57, 54, 70, 67, 71, 75, 100, 88, 60, 50, 109, 47, 80, 102, 57, 55, 77, 84, 64, 56, 74, 74, 55, 73, 77, 88, 54, 58, 56, 59, 53, 65, 54, 58, 54, 80, 71, 58, 45, 63, 62, 83, 59, 63, 69, 60, 67, 62, 54, 97, 69, 78, 68, 68, 82, 50, 52, 72, 69, 54, 59, 71, 46, 69, 45, 71, 90, 67, 64, 79, 80, 73, 50, 49, 53, 58, 67, 59, 71, 41, 91, 61, 87, 82, 64, 64, 31, 71, 61, 49, 62, 57, 39, 59, 88, 59, 62, 50, 37, 53, 63, 65, 83, 68, 65, 54, 47, 56, 49, 53, 72, 63, 69, 65, 67, 74, 89, 66, 44, 55, 73, 67, 46, 65, 62, 56, 47, 73, 61, 81, 51, 84, 82, 35, 79, 69, 47, 54, 86, 62, 71, 56, 67, 72, 77, 64, 85, 43, 75, 69, 54, 51, 74, 68, 60, 76, 68, 55, 79, 82, 77, 86, 54, 61, 45, 74, 64, 50, 70, 51, 67, 90, 82, 65, 48, 73, 47, 90, 100, 63, 60, 77, 87, 63, 114, 59, 63, 75, 70, 47, 58, 55, 44, 122, 69, 67, 49, 46, 38, 82, 69, 57, 66, 63, 80, 56, 41, 75, 57, 64, 64, 71, 60, 77, 72, 70, 69, 71, 82, 77, 59, 85, 52, 93, 45, 53, 78, 67, 83, 85, 76, 37, 54, 43, 81, 58, 72, 64, 66, 53, 71, 73, 58, 62, 70, 80, 74, 71, 68, 65, 82, 48, 83, 56, 87, 61, 79, 52, 59, 59, 78, 76, 54, 75, 69, 56, 53, 92, 71, 55, 57, 40, 58, 72, 62, 67, 51, 61, 61, 68, 57, 62, 59, 83, 68, 77, 75, 48, 85, 84, 64, 53, 88, 56, 73, 54, 67, 55, 50, 64, 81, 94, 64, 78, 55, 50, 76, 53, 80, 51, 78, 125, 56, 70, 54, 72, 52, 41, 76, 60, 73, 88, 71, 49, 52, 40, 72, 69, 47, 52, 78, 79, 62, 89, 65, 56, 36, 74, 78, 68, 44, 68, 70, 56, 78, 112, 65, 64, 73, 60, 61, 43, 96, 102, 78, 72, 42, 57, 50, 63, 65, 61, 94, 60, 65, 79, 56, 68, 75, 65, 70, 80, 59, 52, 76, 55, 70, 60, 90, 75, 60, 52, 67, 55, 53, 77, 55, 68, 80, 66, 63, 57, 67, 47, 57, 147, 74, 69, 50, 69, 56, 43, 67, 60, 51, 57, 75, 64, 62, 44, 58, 69, 62, 54, 98, 65, 26, 109, 51, 68, 70, 50, 86, 68, 79, 88, 89, 57, 64, 51, 94, 71, 71, 61, 67, 67, 75, 68, 78, 79, 58, 62, 71, 60, 70, 63, 79, 58, 57, 68, 78, 37, 74, 94, 105, 51, 74, 80, 82, 70, 58, 56, 65, 86, 56, 73, 76, 73, 59, 46, 57, 63, 61, 76, 62, 51, 48, 71, 84, 59, 38, 34, 68, 64, 76, 72, 73, 98, 70, 65, 52, 67, 53, 55, 80, 61, 87, 54, 62, 72, 64, 77, 51, 46, 71, 71, 35, 65, 89, 49, 68, 60, 75, 55, 63, 50, 74, 54, 77, 96, 58, 64, 85, 68, 67, 79, 52, 57, 60, 69, 37, 59, 52, 52, 63, 65, 44, 71, 74, 63, 64, 50, 58, 115, 56, 58, 57, 56, 57, 67, 59, 65, 54, 56, 88, 69, 70, 79, 59, 53, 59, 97, 89, 40, 58, 64, 62, 79, 73, 46, 75, 65, 67, 87, 75, 62, 54, 63, 63, 52, 47, 62, 68, 62, 43, 61, 67, 62, 67, 69, 55, 62, 89, 55, 49, 46, 76, 65, 55, 121, 66, 65, 64, 50, 57, 63, 50, 58, 51, 42, 45, 68, 54, 51, 58, 89, 58, 59, 74, 67, 76, 67, 64, 67, 56, 59, 65, 83, 85, 103, 79, 57, 57, 70, 83, 54, 49, 70, 80, 56, 79, 53, 158, 72, 67, 67, 57, 66, 45, 58, 73, 49, 71, 76, 57, 91, 59, 71, 54, 51, 61, 50, 64, 66, 72, 62, 54, 71, 59, 68, 71, 60, 44, 84, 61, 84, 62, 74, 59, 68, 80, 54, 56, 67, 57, 77, 113, 56, 48, 68, 42, 101, 60, 52, 58, 78, 61, 65, 92, 67, 49, 48, 81, 55, 71, 67, 63, 69, 71, 62, 71, 70, 57, 68, 77, 93, 60, 49, 69, 58, 64, 72, 68, 44, 69, 56, 58, 54, 78, 51, 115, 46, 56, 79, 93, 45, 69, 52, 70, 103, 91, 76, 56, 32, 63, 53, 50, 101, 96, 64, 41, 43, 80, 66, 70, 77, 56, 46, 70, 87, 68, 41, 48, 71, 63, 52, 69, 58, 51, 70, 77, 64, 82, 67, 55, 92, 57, 98, 87, 69, 63, 59, 72, 64, 57, 75, 66, 47, 64, 59, 60, 54, 60, 71, 77, 70, 71, 69, 66, 86, 69, 59, 53, 72, 84, 49, 54, 73, 71, 44, 62, 55, 77, 66, 62, 64, 69, 79, 67, 53, 53, 67, 56, 85, 62, 75, 75, 45, 65, 66, 45, 53, 51, 70, 61, 60, 59, 58, 68, 39, 59, 50, 80, 71, 88, 56, 106, 119, 77, 48, 78, 55, 76, 75, 60, 50, 52, 59, 76, 57, 64, 95, 36, 66, 68, 58, 67, 58, 76, 72, 61, 71, 78, 59, 56, 71, 64, 51, 39, 71, 72, 64, 68, 52, 42, 62, 63, 61, 63, 55, 76, 59, 73, 54, 66, 61, 71, 72, 82, 56, 62, 64, 73, 66, 55, 95, 61, 81, 65, 62, 77, 68, 54, 94, 60, 87, 59, 60, 58, 67, 70, 56, 62, 53, 64, 80, 80, 83, 90, 57, 61, 80, 58, 77, 82, 59, 51, 59, 59, 62, 77, 47, 79, 72, 59, 73, 40, 68, 61, 71, 67, 69, 47, 71, 98, 57, 69, 58, 65, 78, 74, 55, 67, 77, 75, 53, 65, 62, 76, 78, 56, 53, 53, 74, 77, 55, 69, 65, 60, 41, 54, 57, 80, 82, 81, 83, 62, 56, 88, 65, 56, 68, 67, 58, 66, 75, 42, 46, 83, 68, 71, 38, 62, 79, 63, 47, 64, 50, 65, 84, 66, 50, 42, 55, 60, 73, 72, 64, 52, 70, 86, 53, 53, 73, 64, 68, 74, 49, 66, 54, 73, 65, 89, 52, 58, 84, 59, 45, 81, 69, 72, 67, 56, 59, 79, 61, 63, 88, 78, 73, 62, 78, 52, 65, 61, 99, 65, 91, 66, 71, 78, 76, 49, 75, 60, 52, 60, 62, 66, 45, 64, 121, 66, 84, 68, 63, 77, 68, 53, 87, 63, 57, 49, 64, 50, 58, 71, 68, 49, 64, 75, 73, 69, 75, 52, 76, 58, 62, 43, 73, 73, 76, 56, 53, 78, 80, 66, 59, 85, 67, 45, 76, 57, 86, 77, 72, 81, 56, 80, 56, 68, 47, 57, 61, 44, 80, 65, 81, 68, 56, 51, 63, 70, 107, 56, 76, 76, 64, 68, 41, 65, 39, 69, 42, 60, 67, 100, 77, 107, 60, 75, 58, 79, 87, 80, 73, 76, 49, 54, 66, 55, 53, 67, 66, 61, 48, 62, 87, 92, 77, 83, 68, 51, 90, 67, 71, 58, 76, 61, 53, 84, 65, 68, 73, 49, 82, 59, 92, 89, 62, 77, 71, 67, 66, 68, 60, 49, 33, 70, 48, 66, 63, 63, 52, 63, 61, 85, 66, 68, 77, 80, 53, 55, 70, 50, 70, 166, 54, 62, 65, 60, 60, 55, 92, 66, 62, 59, 85, 84, 83, 85, 71, 77, 40, 90, 58, 72, 49, 56, 72, 69, 60, 61, 64, 78, 72, 93, 79, 76, 53, 66, 79, 51, 66, 117, 56, 63, 76, 95, 61, 76, 87, 86, 57, 63, 60, 66, 64, 67, 62, 79, 44, 56, 75, 79, 35, 72, 59, 69, 57, 70, 95, 65, 67, 50, 75, 59, 54, 70, 54, 86, 78, 75, 54, 53, 46, 63, 76, 79, 60, 70, 60, 47, 77, 47, 78, 73, 69, 66, 59, 59, 63, 64, 68, 69, 74, 76, 59, 54, 46, 95, 91, 37, 85, 65, 75, 62, 76, 74, 74, 71, 54, 74, 79, 65, 54, 78, 67, 50, 45, 87, 81, 96, 110, 64, 76, 68, 90, 63, 38, 70, 52, 85, 84, 60, 57, 53, 69, 63, 91, 48, 68, 61, 50, 65, 69, 58, 75, 69, 66, 56, 58, 60, 52, 78, 72, 48, 68, 85, 50, 60, 69, 66, 63, 43, 67, 67, 102, 56, 67, 53, 56, 58, 61, 74, 59, 67, 72, 58, 78, 56, 61, 70, 71, 76, 64, 49, 43, 65, 59, 57, 67, 67, 59, 61, 56, 61, 70, 46, 79, 65, 85, 70, 57, 57, 71, 72, 70, 61, 53, 72, 81, 46, 89, 58, 53, 61, 69, 43, 48, 60, 90, 66, 46, 55, 57, 74, 61, 71, 63, 76, 68, 57, 82, 86, 75, 70, 54, 82, 74, 69, 49, 79, 60, 75, 63, 64, 60, 73, 81, 69, 65, 70, 60, 49, 44, 66, 85, 65, 67, 67, 77, 72, 54, 57, 71, 81, 54, 85, 84, 59, 68, 78, 49, 69, 112, 71, 43, 66, 62, 74, 63, 58, 80, 110, 66, 71, 66, 71, 59, 60, 55, 67, 58, 75, 39, 66, 87, 63, 125, 59, 70, 63, 67, 52, 81, 62, 61, 58, 36, 70, 55, 55, 72, 83, 65, 73, 76, 73, 51, 46, 62, 63, 70, 68, 68, 59, 67, 73, 89, 95, 112, 72, 71, 54, 47, 93, 67, 36, 87, 59, 89, 51, 58, 75, 37, 66, 47, 56, 50, 69, 63, 67, 60, 62, 50, 57, 66, 59, 70, 61, 62, 61, 52, 54, 103, 43, 100, 67, 55, 102, 67, 51, 64, 61, 68, 73, 73, 78, 53, 57, 54, 69, 47, 50, 115, 44, 56, 98, 59, 77, 63, 56, 61, 45, 56, 69, 61, 113, 63, 71, 55, 61, 71, 41, 60, 95, 79, 57, 44, 71, 59, 55, 74, 60, 80, 45, 40, 86, 72, 77, 91, 96, 76, 69, 45, 100, 49, 63, 55, 90, 44, 67, 74, 76, 67, 71, 47, 62, 63, 73, 97, 51, 77, 53, 68, 76, 58, 72, 65, 52, 90, 66, 57, 61, 64, 61, 67, 62, 63, 61, 51, 54, 54, 59, 88, 50, 64, 74, 67, 67, 63, 62, 102, 45, 64, 64, 47, 57, 59, 72, 63, 99, 71, 53, 64, 68, 70, 57, 61, 104, 60, 54, 77, 67, 56, 70, 56, 62, 92, 57, 71, 58, 49, 88, 63, 56, 75, 87, 85, 54, 63, 68, 75, 70, 76, 70, 52, 80, 89, 57, 57, 99, 62, 71, 43, 69, 70, 81, 64, 93, 123, 53, 76, 81, 57, 64, 57, 58, 120, 72, 70, 82, 72, 65, 52, 65, 70, 66, 58, 104, 55, 68, 58, 64, 59, 72, 68, 46, 49, 58, 76, 51, 50, 52, 58, 72, 63, 80, 79, 66, 69, 97, 55, 45, 62, 83, 61, 58, 52, 58, 41, 84, 101, 63, 62, 73, 73, 49, 63, 74, 65, 61, 87, 48, 64, 64, 70, 86, 72, 56, 61, 40, 60, 52, 58, 78, 61, 59, 70, 68, 79, 57, 52, 51, 61, 68, 72, 66, 74, 48, 75, 72, 58, 79, 73, 60, 61, 75, 71, 62, 53, 63, 71, 69, 67, 67, 53, 76, 54, 45, 63, 48, 60, 69, 58, 68, 53, 66, 63, 60, 84, 47, 69, 85, 64, 56, 93, 62, 115, 55, 61, 70, 63, 61, 73, 64, 68, 43, 62, 72, 78, 80, 43, 72, 67, 73, 61, 51, 69, 36, 66, 175, 69, 64, 83, 61, 54, 74, 59, 63, 66, 59, 71, 73, 60, 74, 67, 83, 86, 65, 63, 64, 53, 69, 70, 56, 84, 79, 74, 80, 68, 57, 54, 51, 47, 75, 54, 80, 60, 62, 61, 55, 71, 54, 51, 48, 64, 71, 62, 68, 58, 82, 46, 60, 57, 73, 65, 62, 62, 77, 84, 49, 55, 74, 57, 35, 118, 58, 70, 86, 71, 74, 65, 60, 66, 80, 55, 50, 74, 78, 102, 58, 62, 79, 60, 65, 92, 60, 88, 61, 74, 65, 75, 61, 59, 92, 82, 63, 70, 64, 76, 65, 52, 70, 105, 58, 63, 54, 42, 86, 48, 67, 61, 74, 56, 45, 52, 94, 79, 57, 57, 67, 54, 59, 63, 59, 87, 61, 69, 65, 70, 88, 39, 50, 62, 68, 70, 69, 52, 50, 49, 87, 73, 73, 56, 73, 57, 65, 80, 46, 66, 53, 61, 75, 60, 57, 44, 56, 35, 75, 68, 48, 75, 67, 67, 52, 72, 65, 64, 67, 85, 64, 65, 64, 55, 56, 65, 68, 67, 55, 63, 75, 48, 49, 94, 43, 68, 68, 60, 48, 76, 79, 71, 52, 57, 75, 50, 58, 72, 60, 58, 62, 61, 59, 49, 58, 49, 78, 60, 62, 69, 70, 65, 38, 67, 74, 85, 56, 75, 52, 68, 72, 63, 74, 47, 72, 86, 89, 52, 39, 57, 73, 66, 74, 40, 60, 64, 67, 68, 69, 54, 69, 69, 67, 94, 63, 81, 77, 66, 65, 89, 60, 73, 71, 74, 72, 85, 94, 70, 70, 51, 53, 62, 68, 56, 48, 69, 52, 63, 55, 62, 64, 56, 48, 61, 66, 62, 46, 73, 87, 58, 51, 75, 77, 71, 60, 53, 67, 58, 48, 43, 54, 75, 42, 70, 93, 46, 49, 69, 66, 87, 72, 68, 81, 70, 81, 71, 64, 59, 59, 52, 60, 54, 54, 64, 62, 65, 70, 72, 59, 70, 60, 83, 47, 68, 75, 57, 66, 73, 72, 67, 65, 51, 65, 24, 72, 77, 46, 96, 59, 61, 84, 60, 88, 49, 63, 60, 82, 58, 69, 74, 63, 57, 75, 83, 64, 59, 74, 59, 84, 64, 84, 56, 66, 55, 41, 88, 75, 106, 56, 61, 67, 79, 61, 67, 56, 36, 52, 63, 68, 64, 61, 34, 97, 54, 58, 55, 61, 84, 44, 88, 51, 67, 57, 66, 64, 60, 82, 81, 63, 44, 78, 68, 115, 70, 39, 58, 50, 72, 72, 95, 50, 71, 44, 58, 83, 69, 56, 65, 77, 59, 59, 80, 60, 105, 55, 59, 78, 59, 57, 69, 81, 44, 65, 76, 71, 76, 121, 60, 69, 63, 83, 79, 56, 76, 58, 69, 42, 55, 62, 68, 53, 64, 58, 82, 55, 44, 77, 68, 70, 54, 85, 75, 76, 110, 66, 78, 80, 52, 60, 54, 60, 63, 74, 85, 84, 111, 73, 58, 64, 42, 69, 79, 72, 111, 58, 75, 83, 66, 60, 62, 69, 71, 55, 39, 65, 69, 69, 62, 45, 58, 71, 90, 67, 85, 88, 69, 61, 70, 48, 85, 68, 51, 122, 51, 87, 62, 65, 81, 53, 59, 51, 54, 46, 63, 58, 53, 53, 67, 72, 81, 71, 42, 50, 56, 82, 80, 86, 67, 70, 59, 54, 66, 71, 75, 69, 63, 71, 60, 68, 58, 62, 49, 64, 70, 80, 68, 75, 57, 60, 68, 58, 107, 67, 99, 62, 50, 69, 62, 98, 66, 85, 75, 76, 63, 68, 52, 65, 81, 55, 59, 84, 74, 74, 92, 65, 67, 69, 56, 78, 55, 64, 60, 89, 57, 45, 62, 63, 79, 66, 52, 60, 65, 53, 69, 54, 61, 69, 56, 73, 75, 52, 61, 47, 82, 59, 76, 51, 59, 56, 61, 75, 72, 74, 44, 63, 60, 66, 78, 68, 71, 42, 72, 64, 66, 77, 58, 61, 70, 55, 88, 46, 69, 60, 62, 60, 55, 54, 64, 91, 56, 81, 63, 54, 72, 55, 57, 66, 73, 90, 65, 54, 65, 67, 45, 67, 33, 74, 99, 63, 51, 74, 58, 71, 74, 64, 63, 44, 118, 57, 70, 66, 75, 79, 84, 75, 51, 91, 85, 59, 125, 82, 86, 70, 50, 61, 82, 63, 61, 72, 59, 64, 88, 66, 68, 56, 101, 53, 75, 58, 69, 64, 57, 66, 48, 63, 73, 49, 68, 83, 84, 58, 66, 56, 70, 59, 52, 114, 61, 56, 58, 67, 49, 76, 71, 75, 72, 60, 73, 76, 71, 71, 64, 68, 55, 73, 58, 89, 53, 61, 73, 48, 81, 61, 79, 43, 60, 58, 57, 60, 58, 81, 60, 91, 71, 38, 79, 55, 59, 61, 62, 79, 63, 132, 92, 58, 106, 76, 59, 79, 71, 61, 66, 52, 58, 46, 78, 82, 55, 47, 59, 59, 58, 55, 50, 54, 74, 75, 61, 70, 62, 65, 58, 45, 85, 56, 75, 65, 75, 53, 64, 56, 80, 73, 44, 65, 52, 70, 62, 51, 86, 65, 59, 85, 84, 71, 57, 49, 57, 74, 78, 67, 65, 63, 63, 76, 107, 58, 47, 72, 57, 65, 57, 85, 94, 60, 65, 61, 69, 58, 44, 58, 90, 65, 63, 79, 51, 70, 83, 48, 52, 86, 62, 66, 68, 82, 54, 57, 59, 66, 60, 96, 69, 46, 69, 71, 41, 65, 108, 80, 79, 45, 64, 47, 53, 47, 85, 50, 60, 67, 58, 56, 60, 64, 70, 75, 61, 67, 55, 50, 60, 49, 53, 53, 67, 53, 59, 71, 96, 60, 64, 65, 66, 68, 48, 103, 64, 76, 87, 88, 53, 58, 50, 45, 61, 55, 78, 75, 88, 45, 52, 76, 57, 64, 77, 73, 43, 80, 60, 52, 42, 52, 77, 65, 75, 104, 88, 48, 57, 61, 51, 94, 52, 64, 53, 81, 66, 70, 83, 69, 43, 52, 95, 52, 66, 50, 71, 45, 64, 59, 64, 77, 66, 77, 48, 52, 81, 77, 59, 72, 105, 64, 56, 63, 55, 43, 81, 60, 68, 72, 64, 45, 84, 62, 58, 59, 55, 66, 60, 60, 82, 70, 55, 53, 74, 60, 61, 70, 70, 48, 66, 73, 49, 53, 71, 58, 60, 122, 83, 57, 62, 58, 47, 67, 75, 61, 70, 62, 58, 51, 56, 48, 81, 66, 60, 78, 60, 51, 63, 71, 72, 74, 114, 72, 77, 81, 67, 55, 55, 52, 50, 61, 70, 90, 78, 66, 70, 74, 73, 46, 64, 74, 71, 76, 70, 66, 74, 55, 69, 47, 67, 69, 59, 61, 64, 78, 74, 68, 105, 72, 58, 70, 55, 59, 66, 57, 64, 48, 62, 86, 120, 66, 68, 65, 69, 74, 84, 67, 58, 77, 57, 67, 56, 70, 61, 75, 62, 60, 49, 71, 45, 71, 71, 61, 58, 43, 102, 67, 68, 51, 119, 64, 72, 77, 54, 68, 64, 74, 65, 71, 73, 55, 74, 65, 60, 68, 84, 135, 68, 78, 61, 72, 74, 54, 65, 50, 57, 67, 52, 65, 54, 55, 61, 73, 59, 59, 62, 89, 45, 59, 60, 69, 79, 66, 72, 63, 48, 76, 66, 82, 64, 91, 52, 65, 52, 69, 56, 57, 62, 60, 57, 64, 68, 65, 46, 85, 73, 58, 42, 66, 70, 56, 35, 52, 65, 63, 85, 57, 62, 52, 97, 65, 47, 68, 51, 67, 69, 90, 76, 52, 64, 78, 63, 74, 56, 63, 79, 59, 69, 61, 80, 100, 86, 79, 73, 50, 47, 73, 59, 49, 73, 73, 72, 55, 69, 75, 82, 63, 58, 67, 60, 54, 63, 69, 67, 48, 62, 81, 53, 53, 64, 50, 67, 78, 51, 62, 58, 62, 54, 79, 65, 49, 52, 64, 54, 60, 57, 79, 72, 83, 59, 49, 67, 51, 109, 47, 63, 70, 54, 63, 62, 51, 67, 51, 71, 66, 80, 76, 63, 112, 103, 62, 83, 68, 74, 101, 72, 63, 64, 74, 66, 49, 54, 99, 55, 78, 126, 56, 64, 99, 88, 78, 65, 56, 89, 45, 65, 56, 42, 66, 69, 55, 55, 58, 91, 72, 84, 85, 60, 57, 113, 69, 71, 84, 67, 62, 64, 52, 61, 52, 63, 91, 56, 57, 57, 65, 66, 56, 50, 57, 74, 66, 45, 69, 54, 66, 46, 63, 60, 64, 63, 64, 52, 70, 58, 61, 63, 83, 69, 55, 65, 60, 56, 48, 75, 62, 83, 72, 87, 66, 50, 119, 75, 63, 62, 45, 65, 56, 64, 61, 64, 63, 61, 51, 56, 55, 64, 67, 48, 63, 83, 93, 85, 86, 75, 59, 67, 93, 61, 77, 59, 66, 58, 54, 50, 63, 75, 41, 64, 58, 76, 60, 93, 52, 84, 92, 57, 63, 55, 65, 63, 70, 85, 80, 75, 60, 58, 57, 85, 55, 59, 66, 51, 49, 60, 61, 65, 57, 48, 86, 60, 57, 73, 86, 64, 65, 49, 57, 81, 79, 64, 75, 43, 85, 59, 71, 71, 76, 50, 65, 72, 65, 55, 51, 67, 78, 58, 65, 62, 58, 60, 83, 52, 56, 90, 53, 55, 60, 71, 64, 60, 74, 58, 69, 61, 67, 41, 82, 57, 68, 53, 63, 68, 58, 62, 48, 45, 60, 59, 71, 62, 83, 63, 72, 45, 53, 62, 50, 73, 66, 64, 101, 54, 58, 58, 57, 57, 62, 138, 61, 76, 55, 73, 64, 57, 49, 88, 57, 61, 63, 78, 47, 54, 51, 67, 62, 105, 40, 54, 56, 66, 58, 47, 73, 104, 57, 63, 66, 58, 44, 96, 72, 53, 81, 53, 49, 67, 80, 55, 92, 88, 53, 68, 49, 59, 55, 61, 70, 58, 72, 69, 65, 54, 48, 77, 73, 73, 53, 61, 65, 53, 72, 71, 93, 62, 47, 71, 68, 58, 72, 54, 58, 99, 57, 63, 74, 60, 50, 66, 66, 81, 77, 99, 75, 52, 63, 76, 105, 94, 71, 55, 55, 85, 69, 54, 111, 63, 54, 70, 65, 84, 75, 70, 51, 50, 71, 59, 47, 73, 53, 87, 90, 49, 78, 65, 97, 68, 56, 71, 86, 97, 52, 68, 64, 37, 69, 37, 70, 72, 61, 77, 38, 63, 57, 57, 77, 57, 66, 78, 117, 82, 73, 48, 80, 68, 75, 65, 80, 64, 55, 53, 88, 65, 69, 70, 61, 42, 52, 56, 60, 56, 80, 68, 153, 66, 90, 35, 88, 65, 65, 64, 66, 74, 52, 83, 54, 70, 62, 76, 61, 64, 101, 58, 75, 75, 65, 72, 88, 63, 70, 67, 65, 74, 46, 78, 65, 69, 76, 70, 100, 71, 60, 73, 53, 82, 62, 57, 57, 64, 82, 75, 53, 64, 53, 70, 54, 67, 63, 50, 51, 59, 82, 76, 85, 54, 73, 68, 61, 79, 55, 64, 73, 81, 82, 59, 45, 62, 54, 71, 80, 40, 62, 48, 92, 81, 49, 47, 60, 72, 47, 60, 57, 40, 68, 52, 71, 74, 77, 107, 72, 62, 73, 64, 59, 63, 47, 61, 52, 65, 51, 60, 70, 48, 64, 81, 105, 79, 75, 53, 80, 53, 95, 96, 71, 67, 61, 65, 37, 92, 69, 67, 66, 42, 77, 53, 70, 74, 75, 78, 59, 69, 71, 63, 43, 75, 72, 61, 91, 66, 79, 48, 61, 57, 67, 80, 52, 71, 70, 90, 56, 71, 112, 51, 81, 82, 66, 60, 79, 83, 58, 78, 69, 55, 57, 61, 54, 54, 54, 69, 53, 58, 80, 65, 52, 57, 67, 56, 83, 72, 35, 56, 51, 74, 53, 73, 65, 62, 74, 55, 62, 73, 79, 69, 63, 85, 51, 52, 65, 70, 53, 80, 60, 68, 60, 68, 56, 50, 48, 70, 59, 62, 52, 86, 63, 41, 41, 55, 90, 56, 71, 62, 84, 55, 65, 85, 77, 56, 56, 64, 61, 64, 73, 62, 54, 87, 66, 88, 77, 97, 57, 66, 56, 67, 50, 77, 39, 52, 54, 51, 48, 73, 103, 70, 65, 77, 54, 63, 55, 71, 66, 50, 74, 65, 70, 66, 50, 62, 80, 49, 48, 73, 62, 61, 63, 62, 113, 56, 58, 78, 80, 48, 62, 76, 61, 43, 60, 72, 72, 56, 65, 64, 69, 51, 76, 71, 77, 42, 58, 69, 68, 85, 83, 81, 63, 65, 91, 59, 85, 90, 80, 63, 52, 65, 90, 83, 91, 100, 41, 75, 69, 68, 57, 69, 60, 42, 73, 71, 89, 63, 44, 67, 58, 67, 63, 79, 71, 62, 63, 47, 31, 46, 49, 71, 68, 64, 68, 62, 43, 44, 62, 56, 75, 87, 55, 56, 71, 62, 55, 63, 56, 80, 59, 56, 59, 70, 45, 56, 92, 71, 63, 121, 43, 70, 77, 49, 71, 96, 58, 53, 87, 59, 71, 76, 61, 47, 71, 54, 73, 80, 84, 60, 75, 93, 59, 54, 62, 77, 67, 52, 53, 74, 70, 60, 53, 74, 70, 85, 90, 43, 64, 49, 95, 48, 88, 40, 66, 66, 63, 66, 85, 58, 75, 69, 63, 62, 55, 85, 55, 70, 71, 39, 55, 52, 86, 78, 78, 47, 49, 88, 52, 54, 79, 63, 61, 68, 69, 69, 56, 76, 70, 60, 66, 55, 68, 74, 58, 78, 68, 60, 75, 68, 83, 58, 57, 78, 69, 56, 86, 76, 73, 54, 71, 74, 69, 61, 75, 61, 69, 55, 60, 70, 80, 77, 75, 63, 67, 68, 70, 65, 57, 67, 75, 65, 61, 44, 61, 63, 86, 46, 68, 70, 52, 64, 50, 35, 58, 78, 59, 76, 68, 68, 59, 77, 54, 67, 76, 64, 69, 52, 51, 77, 55, 96, 76, 55, 47, 56, 56, 66, 49, 75, 87, 73, 50, 56, 51, 60, 51, 45, 54, 64, 68, 74, 68, 68, 47, 56, 65, 78, 65, 83, 72, 63, 75, 88, 49, 80, 49, 66, 44, 75, 83, 84, 57, 53, 73, 76, 90, 67, 66, 78, 81, 79, 61, 93, 74, 87, 70, 51, 60, 72, 58, 84, 54, 45, 62, 65, 87, 65, 59, 67, 60, 40, 44, 68, 51, 67, 60, 70, 90, 70, 22, 76, 56, 79, 59, 68, 47, 87, 75, 61, 49, 45, 55, 74, 36, 47, 70, 74, 87, 70, 76, 75, 60, 73, 84, 41, 83, 85, 102, 53, 77, 75, 48, 60, 66, 54, 50, 74, 69, 61, 89, 61, 59, 37, 74, 65, 62, 73, 77, 43, 64, 54, 67, 72, 72, 51, 44, 60, 68, 71, 79, 69, 52, 64, 55, 74, 59, 58, 36, 71, 55, 91, 52, 86, 96, 60, 72, 61, 77, 42, 67, 53, 45, 57, 69, 44, 72, 52, 54, 45, 75, 41, 61, 61, 62, 68, 67, 51, 71, 66, 75, 55, 58, 62, 46, 82, 57, 70, 52, 56, 58, 89, 84, 63, 61, 58, 45, 59, 98, 90, 72, 64, 65, 68, 69, 78, 84, 65, 86, 69, 61, 54, 56, 69, 73, 48, 62, 82, 87, 71, 67, 51, 73, 66, 65, 55, 63, 63, 90, 66, 73, 108, 59, 56, 70, 51, 90, 76, 66, 71, 74, 55, 62, 86, 26, 63, 61, 72, 38, 53, 66, 73, 82, 57, 73, 79, 43, 45, 81, 104, 78, 81, 54, 59, 72, 76, 75, 63, 31, 62, 72, 80, 60, 96, 77, 42, 69, 78, 82, 78, 50, 69, 62, 56, 63, 47, 59, 63, 77, 61, 74, 70, 54, 95, 63, 43, 55, 81, 96, 58, 54, 50, 79, 63, 85, 69, 34, 81, 44, 49, 55, 53, 78, 64, 52, 65, 55, 47, 70, 74, 80, 66, 71, 55, 71, 72, 68, 63, 60, 58, 59, 80, 94, 75, 48, 56, 46, 73, 49, 56, 52, 65, 60, 62, 75, 48, 62, 68, 64, 60, 57, 41, 59, 49, 60, 57, 61, 57, 75, 70, 61, 72, 75, 64, 73, 68, 71, 62, 71, 72, 48, 55, 68, 49, 83, 76, 75, 50, 89, 62, 60, 47, 43, 79, 59, 65, 71, 58, 88, 78, 84, 51, 57, 54, 62, 46, 51, 69, 54, 57, 157, 53, 79, 40, 70, 66, 47, 71, 71, 72, 67, 56, 58, 50, 62, 52, 53, 68, 69, 67, 85, 63, 64, 73, 62, 54, 61, 72, 106, 73, 61, 138, 81, 43, 48, 72, 80, 68, 70, 62, 60, 67, 57, 58, 52, 70, 61, 71, 66, 81, 61, 98, 38, 35, 63, 78, 77, 61, 71, 62, 62, 65, 54, 54, 65, 103, 79, 70, 72, 55, 104, 99, 49, 54, 61, 68, 69, 72, 63, 61, 62, 61, 55, 58, 40, 75, 61, 53, 73, 48, 65, 59, 69, 60, 68, 71, 71, 54, 71, 68, 59, 72, 43, 52, 63, 61, 55, 52, 60, 86, 62, 73, 90, 68, 99, 89, 56, 62, 65, 53, 55, 66, 68, 72, 62, 47, 99, 46, 83, 83, 69, 76, 59, 51, 61, 70, 92, 55, 76, 63, 62, 104, 61, 61, 66, 62, 51, 89, 36, 61, 93, 61, 65, 58, 59, 79, 72, 78, 65, 56, 80, 62, 55, 75, 84, 70, 54, 54, 74, 57, 50, 57, 72, 97, 48, 84, 77, 73, 83, 77, 76, 92, 73, 70, 47, 108, 66, 57, 55, 100, 67, 72, 67, 66, 52, 72, 58, 81, 56, 64, 90, 68, 82, 61, 84, 52, 55, 65, 66, 49, 50, 55, 130, 57, 80, 71, 70, 56, 73, 63, 48, 56, 51, 72, 57, 59, 73, 65, 61, 64, 72, 50, 74, 48, 55, 87, 64, 82, 62, 70, 59, 88, 78, 78, 92, 71, 102, 80, 91, 73, 60, 71, 40, 62, 72, 68, 73, 60, 72, 65, 75, 82, 66, 54, 84, 75, 75, 52, 47, 65, 45, 64, 68, 51, 60, 64, 96, 52, 50, 61, 86, 80, 57, 67, 47, 69, 59, 68, 77, 73, 62, 72, 62, 67, 68, 68, 63, 55, 64, 70, 68, 61, 63, 60, 68, 55, 63, 61, 56, 82, 74, 69, 52, 92, 60, 60, 75, 94, 72, 48, 53, 55, 70, 65, 62, 73, 58, 63, 57, 61, 61, 65, 48, 56, 54, 87, 19, 85, 50, 64, 59, 70, 66, 62, 47, 83, 63, 44, 75, 64, 54, 65, 68, 63, 58, 50, 64, 64, 62, 115, 56, 81, 56, 55, 52, 62, 64, 62, 32, 55, 65, 59, 61, 50, 79, 76, 71, 84, 54, 65, 59, 62, 70, 58, 57, 57, 80, 57, 75, 73, 73, 53, 50, 63, 73, 115, 56, 57, 55, 62, 54, 79, 48, 53, 99, 64, 65, 77, 47, 65, 53, 33, 63, 80, 55, 54, 65, 67, 66, 60, 76, 76, 40, 78, 62, 65, 112, 81, 79, 69, 43, 68, 77, 67, 67, 91, 45, 67, 78, 67, 46, 62, 59, 97, 43, 57, 87, 57, 55, 74, 51, 86, 59, 56, 43, 61, 98, 57, 61, 70, 74, 62, 59, 62, 61, 63, 61, 66, 74, 65, 86, 46, 49, 54, 72, 66, 74, 70, 53, 70, 59, 50, 57, 55, 35, 67, 82, 70, 69, 82, 48, 65, 59, 70, 63, 64, 78, 84, 65, 76, 56, 58, 70, 60, 59, 45, 62, 79, 71, 44, 72, 60, 56, 69, 55, 75, 76, 74, 63, 47, 75, 72, 88, 64, 77, 91, 63, 55, 77, 73, 77, 76, 55, 70, 64, 54, 78, 69, 52, 72, 48, 52, 61, 41, 49, 63, 65, 54, 57, 51, 73, 48, 49, 62, 66, 73, 94, 60, 56, 48, 77, 74, 58, 110, 48, 106, 66, 59, 67, 89, 55, 60, 60, 55, 64, 63, 64, 71, 77, 61, 72, 47, 61, 107, 67, 71, 82, 72, 47, 58, 66, 96, 78, 66, 52, 91, 74, 65, 70, 56, 85, 65, 77, 50, 52, 54, 46, 60, 66, 58, 65, 80, 63, 74, 66, 62, 71, 61, 49, 58, 72, 59, 50, 85, 51, 70, 54, 79, 72, 77, 53, 91, 56, 67, 71, 73, 53, 65, 62, 62, 40, 63, 84, 47, 83, 59, 70, 66, 66, 44, 58, 64, 64, 66, 50, 65, 54, 73, 51, 49, 32, 63, 66, 81, 109, 78, 60, 81, 71, 61, 58, 91, 51, 63, 70, 96, 62, 56, 63, 53, 37, 49, 73, 65, 60, 49, 60, 83, 112, 67, 48, 55, 43, 59, 64, 60, 51, 49, 67, 58, 60, 83, 55, 88, 67, 61, 66, 82, 63, 72, 80, 47, 52, 64, 59, 79, 49, 61, 64, 75, 91, 69, 60, 77, 66, 55, 91, 70, 51, 62, 49, 70, 77, 90, 72, 64, 69, 65, 55, 84, 59, 67, 66, 45, 82, 80, 67, 50, 44, 70, 59, 56, 76, 63, 50, 64, 80, 68, 89, 73, 56, 80, 53, 78, 71, 80, 63, 52, 83, 75, 61, 50, 61, 57, 72, 73, 63, 59, 66, 60, 62, 88, 66, 59, 78, 75, 66, 60, 66, 52, 64, 93, 66, 107, 64, 63, 54, 58, 65, 74, 46, 63, 66, 56, 63, 91, 72, 55, 62, 48, 48, 26, 82, 67, 62, 53, 63, 82, 63, 69, 47, 49, 79, 89, 83, 59, 64, 93, 70, 46, 58, 88, 168, 51, 63, 80, 74, 81, 73, 57, 63, 49, 64, 73, 67, 70, 56, 56, 56, 73, 81, 57, 72, 50, 81, 73, 57, 66, 44, 67, 72, 57, 57, 66, 98, 69, 51, 61, 81, 48, 61, 66, 82, 70, 57, 71, 77, 77, 61, 58, 68, 54, 56, 59, 74, 64, 67, 69, 60, 85, 52, 63, 69, 57, 53, 77, 63, 65, 72, 57, 72, 63, 73, 64, 62, 71, 82, 49, 84, 74, 61, 64, 63, 63, 63, 71, 54, 67, 78, 73, 61, 79, 62, 71, 58, 124, 85, 58, 40, 81, 70, 78, 72, 74, 63, 53, 61, 66, 58, 83, 64, 53, 54, 80, 67, 71, 49, 74, 79, 90, 63, 55, 88, 76, 62, 85, 64, 45, 60, 48, 73, 53, 85, 86, 47, 77, 51, 57, 58, 59, 63, 79, 55, 64, 66, 103, 62, 60, 42, 60, 59, 67, 59, 54, 63, 50, 59, 59, 55, 54, 50, 74, 62, 66, 78, 51, 79, 67, 46, 46, 70, 49, 56, 67, 101, 59, 66, 75, 63, 100, 66, 59, 45, 74, 60, 82, 67, 83, 88, 75, 70, 46, 104, 70, 64, 82, 62, 96, 60, 62, 102, 113, 65, 77, 69, 60, 109, 81, 53, 66, 62, 76, 53, 60, 52, 59, 50, 57, 70, 73, 53, 73, 69, 66, 67, 57, 86, 82, 52, 65, 75, 66, 94, 80, 68, 66, 72, 73, 67, 50, 69, 47, 62, 62, 66, 63, 70, 51, 61, 59, 103, 69, 48, 58, 62, 101, 55, 57, 64, 64, 61, 63, 59, 56, 53, 93, 70, 63, 77, 58, 69, 52, 61, 56, 59, 110, 56, 56, 72, 75, 58, 85, 60, 84, 50, 58, 76, 63, 92, 65, 68, 60, 56, 81, 58, 66, 51, 56, 52, 72, 63, 52, 61, 63, 68, 47, 58, 75, 58, 75, 71, 48, 81, 82, 62, 79, 75, 65, 72, 63, 54, 67, 70, 50, 67, 60, 61, 87, 58, 69, 77, 70, 65, 83, 77, 72, 80, 69, 63, 58, 63, 52, 67, 60, 83, 68, 48, 45, 51, 103, 67, 63, 76, 91, 64, 66, 50, 80, 77, 57, 57, 59, 64, 75, 49, 82, 69, 51, 57, 73, 64, 92, 73, 76, 62, 69, 60, 83, 50, 88, 63, 89, 54, 72, 62, 71, 45, 74, 60, 65, 75, 62, 74, 69, 59, 66, 64, 81, 73, 82, 68, 44, 67, 57, 77, 67, 60, 51, 47, 55, 66, 54, 65, 76, 44, 62, 78, 57, 67, 65, 46, 54, 69, 68, 54, 58, 70, 65, 54, 83, 72, 54, 69, 131, 64, 118, 69, 64, 62, 78, 55, 55, 63, 66, 64, 59, 58, 62, 57, 58, 74, 55, 70, 63, 76, 54, 65, 54, 52, 52, 52, 48, 72, 86, 54, 66, 63, 57, 65, 73, 70, 85, 63, 70, 48, 55, 58, 58, 66, 42, 111, 54, 59, 40, 73, 69, 57, 64, 59, 70, 70, 62, 66, 65, 52, 83, 77, 61, 58, 55, 57, 65, 55, 71, 66, 64, 41, 59, 63, 86, 58, 60, 65, 68, 95, 79, 73, 82, 78, 62, 71, 58, 57, 66, 72, 61, 82, 46, 61, 58, 39, 51, 66, 61, 43, 91, 62, 55, 52, 73, 54, 67, 87, 73, 55, 75, 47, 59, 59, 77, 73, 78, 60, 75, 63, 55, 58, 75, 77, 56, 79, 72, 57, 69, 57, 100, 62, 50, 100, 57, 62, 54, 62, 61, 51, 63, 57, 71, 84, 59, 53, 100, 62, 75, 82, 77, 55, 59, 54, 73, 76, 57, 62, 62, 63, 65, 40, 74, 61, 87, 59, 62, 78, 64, 65, 78, 68, 75, 59, 56, 51, 68, 61, 54, 55, 66, 108, 63, 71, 57, 54, 57, 71, 69, 73, 65, 72, 52, 45, 69, 77, 93, 70, 41, 64, 59, 61, 62, 52, 68, 42, 70, 52, 72, 100, 55, 81, 80, 44, 58, 55, 82, 48, 55, 90, 55, 68, 82, 74, 65, 61, 60, 54, 80, 80, 91, 69, 57, 57, 41, 66, 65, 66, 63, 54, 73, 81, 58, 68, 61, 65, 88, 60, 57, 58, 62, 58, 64, 75, 44, 46, 61, 66, 58, 77, 61, 76, 61, 66, 59, 67, 62, 65, 61, 60, 55, 66, 55, 68, 47, 68, 74, 53, 73, 70, 53, 59, 62, 63, 62, 65, 55, 50, 95, 63, 99, 57, 61, 63, 77, 59, 76, 58, 54, 57, 63, 80, 55, 79, 57, 73, 40, 63, 59, 60, 76, 54, 92, 64, 55, 47, 106, 64, 55, 61, 108, 78, 117, 56, 45, 66, 68, 67, 67, 83, 63, 54, 71, 78, 67, 52, 68, 80, 50, 118, 86, 64, 80, 61, 71, 52, 54, 44, 58, 69, 64, 47, 64, 54, 73, 57, 53, 43, 70, 54, 68, 54, 55, 62, 55, 56, 68, 82, 85, 73, 67, 80, 68, 63, 53, 97, 58, 69, 53, 63, 64, 55, 68, 64, 65, 54, 73, 77, 63, 51, 77, 57, 75, 67, 67, 59, 57, 66, 67, 60, 60, 65, 51, 61, 53, 74, 61, 64, 81, 36, 65, 80, 86, 80, 65, 52, 59, 73, 60, 66, 75, 51, 51, 58, 56, 58, 62, 80, 62, 62, 56, 56, 74, 57, 55, 61, 61, 65, 66, 58, 74, 85, 59, 69, 62, 56, 64, 83, 82, 58, 67, 52, 64, 80, 52, 65, 74, 102, 53, 59, 99, 65, 54, 106, 75, 45, 55, 77, 60, 70, 71, 59, 80, 68, 52, 56, 71, 62, 70, 51, 71, 71, 56, 80, 74, 70, 55, 58, 57, 66, 64, 61, 76, 55, 82, 83, 64, 82, 69, 63, 82, 113, 68, 73, 57, 76, 61, 56, 65, 57, 62, 66, 66, 58, 71, 72, 73, 64, 58, 61, 51, 52, 53, 56, 65, 67, 56, 84, 62, 51, 68, 57, 70, 53, 64, 97, 62, 54, 91, 52, 77, 60, 86, 61, 59, 58, 44, 112, 62, 70, 72, 62, 71, 54, 64, 69, 70, 62, 64, 83, 62, 66, 75, 69, 66, 65, 55, 47, 84, 98, 66, 60, 59, 73, 71, 68, 52, 50, 49, 98, 49, 68, 92, 80, 52, 72, 52, 58, 50, 55, 65, 74, 69, 71, 69, 76, 60, 62, 102, 75, 74, 68, 67, 61, 68, 58, 51, 68, 88, 68, 70, 68, 64, 83, 68, 62, 77, 56, 64, 56, 86, 61, 58, 69, 71, 62, 95, 60, 100, 68, 72, 71, 38, 60, 80, 57, 72, 59, 67, 75, 63, 70, 59, 66, 69, 51, 81, 46, 68, 48, 48, 64, 59, 54, 47, 55, 60, 53, 64, 51, 61, 58, 73, 64, 69, 54, 73, 47, 55, 65, 65, 54, 59, 53, 61, 98, 75, 64, 52, 75, 49, 80, 62, 55, 57, 64, 65, 53, 68, 51, 73, 57, 87, 66, 53, 74, 64, 78, 45, 64, 64, 55, 60, 59, 61, 78, 71, 80, 55, 66, 50, 58, 59, 68, 63, 67, 77, 88, 50, 78, 76, 72, 69, 82, 50, 77, 56, 77, 73, 34, 51, 59, 70, 58, 75, 69, 74, 77, 63, 71, 79, 63, 95, 76, 61, 58, 104, 58, 69, 43, 61, 45, 70, 56, 84, 77, 62, 62, 74, 60, 47, 54, 60, 53, 73, 56, 53, 118, 60, 65, 33, 83, 68, 107, 62, 82, 58, 55, 77, 68, 99, 52, 67, 45, 90, 47, 104, 47, 57, 63, 59, 59, 79, 49, 65, 52, 60, 52, 62, 53, 83, 58, 70, 63, 79, 113, 82, 90, 82, 75, 93, 76, 60, 61, 96, 58, 55, 54, 101, 77, 47, 116, 70, 61, 74, 37, 50, 59, 89, 37, 98, 54, 49, 53, 71, 71, 70, 51, 55, 128, 64, 47, 73, 78, 80, 71, 77, 68, 74, 98, 79, 54, 47, 61, 54, 68, 49, 111, 68, 80, 53, 64, 94, 59, 74, 68, 61, 53, 90, 99, 50, 75, 65, 139, 52, 69, 75, 49, 46, 54, 50, 76, 83, 76, 44, 65, 48, 70, 62, 64, 38, 73, 86, 39, 64, 50, 49, 119, 46, 68, 62, 83, 67, 46, 58, 94, 72, 52, 76, 65, 49, 70, 73, 65, 76, 73, 55, 70, 81, 89, 108, 62, 52, 66, 56, 51, 63, 75, 56, 45, 54, 66, 67, 60, 61, 70, 50, 71, 55, 68, 58, 50, 58, 76, 68, 64, 50, 53, 60, 60, 102, 72, 68, 70, 56, 54, 78, 101, 43, 54, 56, 42, 50, 63, 53, 67, 73, 46, 76, 47, 61, 65, 72, 54, 109, 50, 73, 61, 84, 116, 66, 48, 126, 61, 53, 66, 91, 58, 86, 54, 41, 60, 65, 56, 50, 34, 73, 84, 71, 68, 86, 66, 53, 60, 66, 61, 57, 75, 63, 70, 66, 54, 49, 60, 72, 74, 66, 55, 107, 44, 100, 49, 54, 63, 44, 86, 41, 75, 79, 75, 60, 49, 31, 80, 65, 74, 63, 61, 69, 40, 62, 66, 60, 68, 52, 79, 73, 64, 76, 74, 60, 63, 56, 90, 96, 68, 63, 65, 53, 93, 67, 107, 81, 101, 65, 60, 69, 54, 50, 51, 69, 51, 72, 71, 74, 97, 57, 57, 77, 64, 54, 56, 88, 57, 72, 61, 53, 66, 77, 103, 68, 34, 47, 55, 81, 93, 106, 66, 62, 89, 68, 54, 69, 62, 43, 76, 55, 90, 46, 69, 114, 59, 69, 50, 57, 65, 64, 68, 78, 59, 91, 75, 109, 96, 87, 65, 60, 70, 48, 70, 66, 50, 75, 62, 59, 78, 80, 35, 53, 70, 85, 64, 62, 56, 77, 75, 53, 57, 80, 46, 71, 55, 57, 59, 73, 56, 59, 47, 49, 99, 60, 75, 86, 44, 78, 80, 92, 63, 72, 56, 62, 43, 67, 64, 54, 70, 54, 67, 45, 88, 59, 63, 59, 56, 39, 68, 81, 65, 47, 80, 37, 109, 73, 73, 69, 50, 84, 92, 60, 62, 89, 72, 68, 78, 46, 59, 52, 98, 73, 78, 60, 53, 65, 68, 39, 94, 61, 58, 45, 75, 59, 68, 77, 69, 54, 66, 64, 69, 74, 74, 53, 59, 88, 72, 84, 98, 75, 70, 129, 129, 40, 41, 75, 58, 55, 81, 71, 88, 69, 50, 68, 48, 66, 35, 44, 106, 82, 63, 58, 48, 62, 84, 78, 35, 49, 77, 76, 77, 56, 55, 68, 45, 39, 38, 66, 66, 84, 71, 66, 59, 60, 61, 68, 44, 30, 101, 83, 56, 85, 54, 53, 42, 64, 71, 59, 50, 57, 38, 61, 82, 69, 59, 65, 49, 69, 57, 63, 79, 89, 47, 47, 99, 76, 107, 96, 88, 89, 53, 46, 63, 64, 63, 53, 51, 68, 66, 38, 47, 39, 72, 54, 91, 105, 62, 111, 52, 66, 74, 57, 87, 52, 50, 46, 49, 52, 80, 84, 87, 64, 44, 57, 64, 61, 61, 66, 49, 99, 68, 85, 62, 44, 74, 66, 69, 84, 90, 43, 49, 39, 79, 58, 82, 47, 51, 72, 66, 72, 128, 43, 58, 63, 76, 71, 57, 46, 64, 79, 55, 77, 50, 63, 61, 147, 59, 50, 59, 69, 40, 55, 51, 57, 69, 105, 76, 51, 53, 64, 50, 47, 68, 63, 72, 69, 64, 42, 61, 47, 67, 69, 92, 50, 52, 29, 74, 40, 68, 68, 76, 57, 71, 50, 47, 74, 91, 69, 67, 65, 60, 58, 68, 72, 62, 59, 62, 51, 49, 80, 52, 86, 53, 61, 69, 61, 53, 50, 49, 68, 96, 90, 41, 72, 82, 56, 82, 82, 59, 104, 48, 55, 53, 91, 58, 38, 61, 52, 57, 50, 73, 62, 54, 81, 68, 64, 88, 79, 62, 46, 43, 72, 65, 66, 76, 56, 46, 60, 71, 72, 48, 52, 113, 66, 64, 57, 71, 68, 89, 43, 60, 99, 63, 72, 55, 45, 79, 62, 108, 77, 44, 85, 61, 47, 79, 67, 76, 56, 32, 42, 72, 71, 48, 69, 78, 74, 73, 67, 65, 55, 74, 70, 56, 71, 57, 80, 58, 67, 70, 27, 86, 53, 37, 54, 52, 29, 79, 35, 44, 69, 71, 58, 84, 90, 58, 66, 42, 41, 52, 57, 47, 45, 84, 61, 54, 64, 101, 76, 63, 60, 52, 47, 79, 80, 54, 62, 66, 56, 59, 60, 68, 53, 105, 56, 71, 75, 69, 54, 39, 66, 61, 66, 49, 48, 74, 82, 87, 60, 68, 95, 44, 69, 79, 45, 64, 107, 52, 92, 90, 66, 94, 62, 45, 84, 133, 63, 47, 61, 75, 53, 67, 55, 61, 84, 78, 72, 48, 50, 63, 70, 79, 52, 59, 65, 61, 55, 83, 62, 68, 77, 61, 68, 33, 91, 53, 72, 59, 68, 51, 67, 64, 70, 93, 82, 81, 66, 75, 72, 71, 54, 57, 69, 66, 93, 76, 59, 55, 56, 80, 54, 51, 64, 59, 132, 51, 102, 69, 80, 61, 51, 66, 54, 52, 47, 47, 78, 114, 59, 58, 48, 47, 55, 51, 54, 64, 68, 42, 50, 81, 71, 67, 61, 50, 66, 58, 60, 60, 68, 77, 70, 72, 58, 35, 68, 49, 71, 61, 53, 75, 53, 66, 73, 79, 51, 67, 29, 66, 77, 65, 70, 69, 63, 57, 96, 33, 47, 67, 59, 63, 75, 45, 68, 55, 85, 67, 60, 80, 54, 54, 87, 58, 74, 68, 65, 54, 51, 52, 54, 74, 52, 55, 70, 77, 57, 58, 65, 66, 96, 51, 48, 63, 58, 79, 55, 72, 61, 54, 99, 58, 62, 64, 42, 82, 59, 59, 68, 56, 62, 75, 74, 53, 70, 79, 70, 95, 59, 59, 132, 56, 71, 67, 44, 61, 35, 63, 74, 97, 86, 59, 56, 68, 49, 53, 72, 65, 70, 62, 76, 68, 62, 64, 40, 85, 59, 68, 76, 64, 55, 62, 55, 50, 36, 48, 73, 62, 68, 51, 65, 66, 68, 104, 100, 55, 49, 95, 75, 54, 58, 50, 76, 50, 50, 70, 61, 97, 89, 45, 78, 57, 59, 78, 55, 57, 50, 59, 70, 57, 63, 68, 61, 58, 77, 52, 71, 55, 56, 88, 84, 51, 64, 65, 46, 71, 62, 62, 61, 49, 69, 67, 117, 73, 66, 52, 69, 57, 75, 45, 63, 85, 50, 74, 63, 65, 57, 69, 64, 53, 58, 51, 77, 56, 57, 59, 61, 48, 71, 63, 62, 66, 58, 72, 88, 50, 63, 61, 78, 49, 72, 48, 83, 51, 62, 57, 71, 60, 77, 85, 54, 59, 58, 63, 60, 50, 66, 45, 68, 57, 48, 41, 84, 67, 68, 53, 73, 56, 40, 87, 81, 75, 55, 73, 62, 53, 72, 65, 58, 55, 72, 57, 73, 69, 101, 93, 82, 81, 49, 68, 42, 63, 89, 64, 49, 53, 112, 62, 74, 52, 60, 57, 75, 60, 97, 29, 61, 69, 111, 67, 53, 56, 60, 94, 64, 65, 54, 52, 61, 79, 62, 68, 73, 135, 120, 71, 77, 57, 71, 70, 50, 63, 49, 63, 83, 76, 68, 65, 61, 51, 63, 86, 75, 82, 51, 43, 78, 74, 54, 62, 53, 62, 80, 54, 65, 60, 74, 56, 62, 58, 49, 59, 79, 63, 57, 78, 84, 83, 63, 47, 56, 72, 51, 50, 43, 84, 72, 71, 94, 78, 62, 85, 70, 52, 69, 64, 81, 49, 59, 87, 62, 80, 57, 78, 67, 69, 75, 59, 70, 69, 71, 112, 69, 82, 79, 64, 51, 51, 64, 43, 73, 58, 57, 60, 58, 69, 51, 86, 60, 69, 62, 71, 62, 68, 87, 104, 80, 53, 62, 64, 63, 55, 68, 54, 73, 91, 55, 98, 65, 52, 71, 59, 51, 61, 50, 61, 70, 55, 54, 89, 64, 61, 57, 62, 47, 60, 86, 61, 60, 72, 108, 57, 79, 67, 64, 54, 90, 52, 59, 53, 49, 67, 72, 63, 74, 70, 92, 44, 74, 74, 102, 86, 60, 67, 63, 63, 65, 72, 64, 45, 67, 65, 65, 46, 61, 78, 62, 70, 71, 62, 53, 68, 84, 71, 65, 73, 85, 43, 71, 72, 67, 66, 69, 64, 44, 104, 62, 62, 54, 67, 69, 47, 45, 54, 57, 48, 66, 64, 67, 49, 69, 96, 74, 61, 64, 73, 55, 61, 81, 85, 49, 64, 63, 54, 56, 86, 47, 89, 69, 63, 63, 73, 64, 48, 61, 47, 54, 64, 63, 60, 60, 81, 63, 58, 54, 60, 79, 84, 67, 58, 68, 83, 90, 48, 61, 54, 79, 95, 65, 67, 71, 63, 74, 65, 65, 78, 64, 56, 55, 61, 90, 51, 74, 53, 62, 71, 53, 60, 78, 53, 67, 60, 63, 55, 74, 63, 86, 55, 137, 98, 64, 61, 56, 72, 64, 71, 53, 66, 77, 56, 58, 79, 65, 86, 76, 65, 76, 40, 55, 46, 69, 49, 43, 93, 78, 56, 70, 73, 75, 64, 51, 83, 70, 82, 70, 67, 76, 70, 51, 62, 64, 71, 66, 52, 130, 61, 84, 54, 83, 62, 58, 83, 57, 61, 47, 60, 102, 57, 59, 59, 58, 62, 63, 62, 67, 70, 109, 49, 53, 101, 56, 59, 57, 72, 76, 54, 62, 61, 58, 68, 65, 50, 56, 76, 67, 68, 80, 58, 69, 58, 51, 63, 52, 72, 49, 70, 58, 52, 65, 75, 48, 121, 51, 55, 81, 71, 52, 54, 60, 70, 68, 46, 66, 56, 67, 84, 102, 56, 59, 65, 70, 46, 44, 51, 51, 62, 122, 62, 66, 52, 64, 93, 47, 55, 67, 73, 65, 37, 50, 57, 75, 75, 76, 57, 47, 67, 95, 60, 57, 63, 71, 50, 63, 74, 51, 65, 90, 87, 85, 81, 127, 71, 73, 64, 52, 62, 40, 83, 60, 83, 69, 59, 67, 101, 73, 43, 69, 53, 63, 64, 72, 72, 66, 64, 61, 69, 75, 72, 57, 76, 56, 53, 65, 87, 66, 59, 79, 64, 62, 72, 63, 96, 73, 53, 54, 55, 65, 59, 72, 71, 70, 69, 71, 42, 60, 63, 49, 56, 69, 106, 58, 63, 50, 58, 69, 57, 55, 90, 116, 102, 62, 101, 56, 59, 52, 57, 75, 75, 76, 54, 83, 68, 54, 61, 60, 57, 57, 58, 55, 55, 65, 61, 68, 65, 42, 71, 59, 73, 93, 55, 57, 60, 57, 68, 65, 49, 76, 83, 74, 65, 71, 68, 89, 55, 91, 63, 52, 57, 56, 61, 63, 61, 86, 56, 51, 75, 65, 66, 61, 57, 70, 85, 89, 60, 61, 73, 57, 59, 63, 65, 125, 52, 54, 60, 71, 59, 56, 76, 80, 63, 64, 77, 66, 83, 55, 58, 54, 43, 66, 61, 63, 81, 100, 72, 72, 69, 66, 43, 77, 63, 107, 61, 64, 69, 74, 70, 50, 56, 46, 59, 63, 60, 89, 62, 61, 71, 65, 59, 46, 76, 52, 63, 72, 58, 50, 65, 71, 81, 54, 72, 51, 57, 53, 51, 106, 69, 58, 60, 66, 76, 111, 74, 61, 56, 65, 75, 54, 71, 57, 66, 72, 54, 61, 44, 49, 90, 67, 63, 55, 46, 84, 69, 60, 67, 74, 106, 74, 66, 57, 69, 86, 51, 39, 67, 78, 66, 50, 69, 56, 55, 100, 69, 70, 61, 44, 70, 63, 91, 74, 70, 50, 81, 80, 78, 78, 50, 65, 65, 76, 46, 66, 58, 54, 62, 82, 68, 62, 46, 58, 60, 62, 45, 63, 63, 65, 64, 76, 69, 68, 52, 65, 120, 45, 88, 65, 106, 68, 63, 80, 59, 65, 67, 52, 58, 87, 64, 55, 85, 64, 56, 57, 67, 81, 60, 58, 60, 52, 61, 125, 55, 81, 61, 71, 57, 61, 57, 68, 116, 58, 69, 67, 62, 54, 90, 57, 56, 76, 60, 53, 76, 52, 50, 104, 60, 60, 45, 71, 58, 51, 53, 55, 66, 71, 65, 71, 69, 81, 62, 62, 78, 52, 60, 68, 52, 73, 60, 55, 59, 59, 68, 69, 51, 77, 61, 66, 63, 72, 57, 90, 49, 68, 67, 58, 46, 67, 72, 59, 68, 65, 94, 57, 55, 69, 81, 66, 56, 65, 65, 72, 60, 87, 49, 94, 106, 45, 50, 56, 56, 62, 67, 74, 66, 67, 92, 86, 69, 66, 81, 68, 55, 52, 75, 63, 65, 71, 85, 66, 62, 80, 49, 63, 52, 54, 53, 79, 73, 77, 69, 67, 59, 65, 61, 64, 73, 79, 109, 58, 51, 73, 80, 55, 55, 81, 62, 62, 68, 76, 58, 79, 64, 66, 58, 60, 72, 62, 69, 53, 62, 70, 55, 67, 55, 65, 79, 52, 59, 60, 63, 60, 62, 84, 56, 58, 61, 70, 74, 65, 57, 81, 90, 66, 61, 60, 101, 43, 59, 54, 61, 55, 76, 60, 58, 58, 84, 62, 51, 71, 58, 58, 64, 62, 67, 61, 42, 57, 60, 60, 114, 46, 59, 51, 51, 66, 70, 45, 68, 117, 67, 55, 60, 49, 62, 61, 62, 65, 54, 66, 63, 88, 56, 63, 55, 127, 65, 73, 63, 53, 66, 67, 72, 67, 70, 90, 76, 61, 65, 74, 55, 66, 81, 74, 53, 80, 55, 56, 50, 89, 59, 68, 64, 72, 79, 52, 53, 72, 65, 66, 53, 69, 88, 56, 53, 76, 54, 50, 85, 61, 72, 60, 57, 54, 66, 58, 54, 60, 57, 64, 48, 68, 70, 55, 67, 52, 62, 49, 62, 125, 64, 59, 57, 74, 46, 66, 65, 68, 58, 79, 68, 84, 66, 90, 50, 52, 66, 63, 49, 61, 58, 78, 61, 61, 53, 61, 62, 65, 76, 54, 63, 58, 77, 62, 58, 72, 64, 83, 45, 69, 70, 83, 78, 76, 85, 58, 70, 67, 55, 66, 68, 70, 68, 57, 53, 55, 60, 68, 57, 53, 68, 71, 53, 65, 67, 60, 60, 60, 53, 63, 65, 69, 71, 49, 66, 81, 56, 66, 57, 68, 61, 49, 53, 46, 71, 62, 53, 56, 40, 66, 65, 59, 52, 63, 71, 77, 59, 66, 65, 80, 65, 69, 84, 70, 71, 67, 57, 48, 68, 57, 59, 78, 88, 61, 55, 67, 55, 57, 66, 55, 63, 55, 64, 67, 60, 68, 71, 61, 79, 65, 65, 69, 57, 64, 60, 69, 76, 61, 58, 68, 57, 52, 86, 66, 51, 70, 82, 60, 52, 77, 72, 79, 65, 57, 60, 82, 61, 65, 81, 76, 76, 61, 66, 63, 94, 123, 63, 59, 65, 86, 56, 73, 64, 61, 62, 72, 84, 58, 79, 80, 52, 89, 98, 60, 79, 59, 64, 67, 52, 71, 55, 62, 80, 62, 74, 52, 87, 68, 60, 52, 50, 47, 77, 65, 60, 66, 60, 57, 65, 59, 105, 64, 70, 75, 70, 62, 58, 63, 72, 65, 77, 63, 76, 54, 86, 67, 60, 74, 75, 76, 56, 58, 64, 57, 55, 46, 54, 79, 61, 74, 67, 68, 55, 55, 58, 75, 53, 77, 66, 52, 57, 63, 61, 61, 49, 62, 87, 60, 73, 71, 77, 58, 81, 58, 56, 75, 29, 53, 95, 54, 62, 66, 52, 68, 52, 60, 68, 70, 56, 73, 75, 51, 52, 49, 58, 66, 60, 65, 62, 68, 52, 76, 52, 69, 49, 60, 80, 72, 59, 61, 60, 64, 84, 67, 111, 59, 65, 59, 65, 60, 56, 78, 69, 48, 69, 47, 63, 114, 100, 67, 76, 86, 79, 66, 52, 80, 69, 66, 48, 60, 51, 64, 64, 64, 63, 57, 81, 62, 68, 52, 66, 52, 88, 74, 68, 88, 53, 72, 67, 86, 73, 66, 68, 68, 66, 63, 63, 73, 86, 90, 52, 63, 50, 61, 72, 55, 61, 76, 79, 78, 70, 76, 58, 100, 61, 62, 111, 47, 73, 69, 103, 87, 55, 67, 72, 47, 57, 55, 83, 64, 64, 62, 57, 61, 55, 62, 65, 63, 67, 80, 61, 62, 61, 59, 53, 56, 59, 65, 70, 64, 56, 60, 66, 76, 70, 54, 65, 98, 64, 64, 80, 63, 58, 60, 73, 60, 65, 65, 57, 98, 58, 46, 35, 71, 60, 63, 62, 74, 79, 71, 73, 74, 43, 72, 65, 60, 63, 92, 65, 93, 58, 60, 71, 66, 62, 51, 72, 60, 66, 56, 63, 64, 66, 62, 77, 48, 71, 77, 66, 61, 74, 70, 57, 90, 76, 65, 56, 73, 58, 60, 64, 59, 55, 74, 82, 59, 51, 62, 53, 53, 49, 85, 64, 69, 65, 68, 63, 75, 73, 64, 53, 64, 120, 84, 54, 71, 77, 78, 81, 81, 60, 67, 69, 71, 58, 57, 72, 71, 62, 102, 56, 67, 59, 92, 50, 67, 50, 57, 56, 66, 49, 85, 60, 52, 67, 62, 51, 72, 57, 87, 67, 68, 60, 64, 86, 58, 61, 55, 56, 75, 65, 57, 62, 63, 64, 62, 69, 76, 56, 59, 70, 60, 67, 66, 76, 61, 55, 76, 53, 68, 65, 75, 59, 62, 84, 96, 61, 61, 62, 73, 60, 52, 56, 77, 65, 61, 60, 61, 69, 60, 65, 64, 63, 52, 79, 83, 61, 95, 67, 65, 68, 50, 54, 58, 75, 72, 62, 82, 57, 80, 64, 61, 53, 85, 67, 75, 59, 65, 65, 63, 58, 64, 76, 67, 51, 60, 70, 80, 46, 94, 50, 63, 56, 62, 67, 101, 51, 50, 59, 62, 58, 65, 58, 77, 58, 65, 72, 57, 57, 105, 69, 63, 80, 52, 64, 65, 67, 64, 54, 53, 52, 60, 69, 52, 66, 63, 68, 60, 79, 48, 58, 77, 70, 74, 57, 58, 74, 52, 49, 49, 72, 59, 67, 48, 92, 56, 62, 69, 84, 69, 68, 59, 93, 52, 62, 56, 63, 58, 61, 68, 60, 68, 53, 58, 88, 72, 53, 68, 46, 56, 68, 66, 55, 63, 80, 58, 60, 68, 58, 92, 61, 70, 110, 62, 67, 63, 83, 89, 57, 79, 56, 67, 63, 104, 54, 67, 54, 50, 75, 53, 55, 65, 67, 35, 57, 37, 39, 74, 60, 91, 72, 100, 61, 61, 53, 53, 50, 74, 46, 69, 81, 45, 64, 57, 74, 54, 47, 44, 125, 53, 50, 76, 65, 101, 123, 72, 55, 57, 82, 70, 60, 105, 59, 53, 60, 45, 70, 66, 79, 43, 57, 69, 52, 60, 65, 53, 57, 59, 62, 76, 62, 91, 47, 82, 73, 69, 68, 73, 78, 91, 66, 81, 73, 58, 39, 59, 75, 49, 57, 79, 78, 80, 58, 75, 53, 54, 60, 63, 72, 61, 80, 53, 66, 76, 108, 76, 57, 66, 53, 65, 69, 50, 54, 48, 66, 56, 67, 91, 63, 106, 53, 69, 89, 51, 49, 40, 74, 63, 49, 69, 70, 49, 73, 59, 77, 94, 58, 80, 80, 117, 73, 65, 67, 54, 71, 79, 67, 76, 53, 65, 72, 55, 72, 55, 107, 45, 62, 49, 78, 48, 44, 72, 75, 87, 71, 73, 104, 89, 126, 58, 40, 79, 74, 85, 64, 75, 77, 63, 90, 61, 99, 54, 50, 62, 53, 63, 99, 75, 90, 49, 73, 52, 66, 91, 45, 51, 42, 55, 47, 63, 61, 62, 76, 64, 67, 69, 42, 51, 92, 46, 56, 59, 56, 55, 72, 59, 57, 52, 70, 59, 71, 47, 43, 63, 55, 66, 97, 60, 93, 74, 63, 57, 51, 57, 59, 63, 59, 59, 56, 62, 73, 62, 80, 50, 59, 76, 50, 72, 80, 81, 45, 53, 56, 75, 71, 81, 65, 68, 57, 86, 55, 61, 74, 41, 66, 55, 83, 72, 67, 72, 90, 57, 80, 54, 76, 47, 65, 60, 113, 56, 50, 73, 53, 63, 55, 71, 62, 91, 50, 60, 56, 45, 58, 76, 86, 56, 67, 70, 100, 52, 60, 74, 72, 46, 119, 80, 55, 72, 56, 82, 57, 82, 72, 91, 77, 47, 55, 45, 79, 54, 89, 69, 89, 62, 85, 66, 47, 66, 83, 58, 46, 62, 61, 58, 75, 63, 74, 59, 68, 62, 37, 45, 55, 58, 65, 62, 71, 85, 65, 73, 60, 56, 51, 56, 67, 64, 66, 59, 64, 75, 72, 46, 71, 59, 53, 50, 59, 53, 90, 47, 64, 56, 43, 61, 75, 68, 74, 62, 102, 75, 63, 117, 60, 61, 90, 62, 76, 60, 102, 58, 75, 59, 74, 61, 88, 56, 76, 57, 85, 63, 142, 66, 87, 72, 86, 51, 49, 62, 61, 49, 60, 98, 65, 115, 52, 37, 90, 65, 91, 92, 53, 84, 64, 55, 47, 70, 58, 72, 65, 68, 59, 67, 61, 65, 67, 68, 72, 55, 63, 100, 53, 54, 64, 40, 91, 60, 57, 64, 60, 52, 103, 69, 40, 66, 52, 39, 79, 61, 75, 94, 111, 42, 35, 68, 83, 56, 83, 114, 57, 57, 56, 70, 67, 69, 88, 64, 50, 79, 66, 89, 64, 64, 109, 59, 82, 64, 67, 66, 55, 38, 46, 65, 72, 82, 62, 62, 70, 59, 74, 58, 67, 75, 69, 71, 74, 53, 42, 54, 70, 59, 93, 70, 65, 53, 77, 82, 57, 63, 57, 58, 58, 74, 84, 79, 64, 50, 106, 109, 57, 53, 56, 72, 63, 44, 56, 52, 82, 59, 63, 61, 60, 71, 51, 65, 106, 91, 66, 50, 92, 55, 75, 52, 60, 66, 59, 53, 65, 104, 57, 48, 57, 63, 56, 61, 72, 68, 56, 56, 74, 54, 91, 56, 55, 48, 54, 65, 54, 54, 95, 43, 71, 75, 93, 58, 71, 28, 65, 52, 71, 64, 68, 73, 66, 72, 56, 65, 83, 87, 57, 69, 66, 96, 84, 73, 78, 81, 68, 88, 63, 46, 60, 58, 54, 62, 70, 72, 73, 66, 66, 36, 72, 67, 61, 65, 55, 69, 61, 87, 57, 71, 70, 48, 42, 70, 65, 75, 86, 57, 49, 95, 54, 46, 48, 56, 63, 58, 64, 46, 97, 75, 33, 63, 81, 68, 54, 56, 54, 58, 47, 79, 68, 73, 58, 67, 59, 46, 94, 56, 47, 44, 45, 73, 70, 108, 66, 61, 93, 67, 82, 62, 57, 57, 54, 51, 71, 73, 68, 69, 61, 46, 58, 62, 75, 79, 58, 53, 89, 56, 67, 54, 63, 51, 88, 74, 91, 59, 63, 57, 83, 65, 57, 57, 73, 78, 66, 66, 58, 58, 59, 51, 62, 60, 64, 67, 53, 50, 56, 59, 83, 60, 47, 83, 73, 65, 70, 70, 54, 59, 69, 54, 67, 76, 53, 56, 90, 63, 96, 61, 76, 82, 60, 65, 47, 68, 70, 56, 43, 66, 68, 59, 73, 75, 46, 60, 84, 74, 77, 72, 71, 49, 54, 103, 64, 75, 61, 52, 58, 66, 63, 62, 64, 62, 62, 79, 69, 53, 56, 78, 79, 49, 65, 40, 89, 77, 51, 36, 66, 47, 70, 49, 63, 59, 67, 60, 52, 59, 49, 55, 56, 81, 54, 73, 60, 59, 65, 82, 65, 77, 65, 45, 71, 42, 94, 56, 50, 53, 65, 56, 58, 82, 82, 61, 94, 31, 109, 58, 79, 39, 64, 71, 87, 66, 45, 66, 46, 53, 59, 82, 62, 57, 69, 59, 57, 53, 85, 59, 46, 57, 83, 45, 126, 64, 63, 57, 59, 74, 57, 60, 44, 72, 56, 51, 45, 57, 97, 66, 124, 62, 58, 87, 58, 74, 26, 69, 68, 74, 68, 76, 157, 75, 53, 81, 36, 65, 70, 33, 52, 67, 88, 58, 115, 69, 54, 69, 52, 84, 47, 51, 72, 57, 52, 56, 95, 56, 64, 65, 84, 68, 47, 54, 69, 66, 48, 55, 48, 59, 85, 52, 68, 62, 90, 63, 55, 84, 50, 62, 46, 79, 47, 70, 91, 81, 67, 49, 51, 83, 50, 47, 74, 63, 75, 65, 49, 62, 56, 73, 115, 75, 50, 69, 86, 74, 54, 59, 81, 65, 70, 66, 76, 70, 87, 72, 75, 57, 68, 72, 89, 80, 53, 72, 69, 75, 62, 70, 78, 85, 69, 66, 62, 47, 72, 78, 69, 58, 61, 85, 81, 62, 51, 54, 102, 73, 63, 84, 61, 69, 64, 71, 77, 54, 75, 95, 64, 50, 72, 70, 72, 72, 46, 52, 66, 48, 59, 65, 46, 52, 66, 88, 72, 63, 52, 56, 54, 72, 56, 35, 76, 61, 65, 60, 48, 80, 52, 52, 67, 58, 79, 58, 71, 46, 78, 79, 74, 81, 90, 69, 44, 49, 67, 83, 56, 80, 42, 67, 76, 51, 81, 79, 73, 67, 79, 69, 70, 69, 51, 52, 46, 62, 66, 57, 77, 64, 85, 55, 60, 79, 50, 46, 67, 70, 163, 44, 75, 81, 45, 66, 65, 46, 84, 56, 69, 70, 68, 60, 64, 62, 56, 65, 74, 58, 40, 65, 63, 43, 69, 60, 57, 57, 58, 51, 61, 59, 86, 70, 76, 55, 75, 55, 61, 82, 76, 61, 84, 104, 70, 67, 67, 83, 55, 59, 64, 77, 53, 68, 78, 81, 88, 76, 71, 48, 48, 56, 56, 59, 87, 67, 61, 72, 54, 58, 62, 63, 61, 71, 69, 56, 46, 112, 50, 66, 72, 48, 56, 51, 55, 53, 61, 70, 56, 49, 70, 86, 63, 71, 53, 70, 53, 87, 49, 93, 70, 93, 87, 81, 71, 59, 61, 67, 60, 50, 95, 72, 58, 49, 80, 73, 48, 78, 66, 54, 57, 72, 55, 40, 66, 59, 59, 67, 73, 72, 60, 55, 67, 46, 60, 57, 65, 56, 46, 70, 64, 50, 64, 59, 64, 56, 57, 57, 57, 70, 68, 68, 48, 65, 56, 54, 58, 78, 72, 114, 48, 64, 67, 65, 74, 67, 70, 49, 56, 52, 57, 55, 70, 53, 71, 55, 60, 87, 78, 86, 75, 70, 69, 51, 53, 61, 54, 56, 57, 70, 46, 67, 55, 34, 68, 41, 89, 75, 93, 67, 66, 76, 69, 63, 60, 65, 73, 64, 60, 58, 59, 50, 62, 81, 58, 74, 85, 45, 73, 58, 91, 55, 61, 63, 51, 33, 61, 60, 72, 64, 56, 47, 61, 65, 81, 78, 62, 64, 60, 66, 64, 60, 59, 69, 60, 63, 64, 48, 70, 60, 81, 81, 61, 114, 48, 58, 54, 70, 59, 69, 75, 71, 51, 94, 90, 49, 52, 60, 61, 52, 93, 60, 65, 64, 44, 67, 70, 71, 50, 64, 55, 89, 64, 69, 45, 90, 51, 65, 62, 71, 67, 80, 63, 37, 57, 57, 106, 83, 60, 27, 147, 53, 70, 52, 79, 61, 88, 87, 81, 64, 71, 64, 113, 83, 59, 70, 54, 75, 54, 45, 54, 73, 61, 90, 75, 67, 64, 61, 43, 83, 71, 46, 68, 60, 57, 60, 65, 59, 46, 47, 94, 77, 80, 55, 71, 66, 61, 59, 79, 59, 79, 47, 67, 88, 40, 58, 93, 55, 53, 65, 77, 74, 54, 59, 59, 49, 68, 46, 75, 70, 71, 47, 67, 48, 73, 76, 72, 78, 68, 92, 86, 60, 67, 57, 63, 72, 54, 57, 70, 52, 61, 39, 69, 57, 54, 78, 68, 65, 34, 68, 80, 60, 38, 51, 67, 73, 59, 68, 51, 57, 54, 57, 56, 50, 63, 69, 82, 59, 74, 64, 69, 53, 50, 60, 64, 63, 57, 54, 60, 76, 73, 64, 54, 52, 73, 66, 73, 83, 52, 93, 74, 53, 72, 52, 47, 57, 57, 50, 94, 83, 53, 55, 51, 63, 56, 56, 76, 69, 104, 62, 55, 52, 70, 76, 78, 70, 88, 58, 59, 80, 64, 69, 47, 62, 63, 46, 58, 41, 91, 74, 75, 63, 55, 81, 65, 63, 79, 102, 64, 60, 52, 54, 58, 60, 49, 67, 65, 74, 48, 72, 49, 68, 96, 65, 100, 48, 55, 71, 91, 49, 41, 51, 68, 63, 60, 80, 83, 63, 53, 64, 102, 81, 51, 60, 40, 67, 76, 56, 67, 46, 71, 68, 74, 71, 84, 54, 49, 51, 64, 50, 63, 70, 79, 57, 74, 66, 67, 64, 63, 74, 65, 57, 57, 52, 99, 65, 56, 62, 41, 53, 72, 74, 73, 68, 76, 55, 56, 61, 63, 73, 69, 53, 73, 52, 87, 58, 52, 73, 52, 90, 82, 55, 73, 58, 68, 59, 55, 53, 49, 57, 56, 60, 53, 62, 80, 65, 74, 75, 64, 57, 103, 63, 65, 84, 46, 70, 76, 53, 66, 66, 76, 44, 59, 67, 71, 51, 79, 43, 68, 75, 58, 63, 76, 70, 58, 55, 91, 70, 68, 59, 68, 62, 56, 52, 68, 60, 96, 77, 90, 91, 101, 53, 47, 65, 57, 66, 107, 71, 74, 53, 52, 50, 54, 81, 90, 59, 54, 62, 79, 56, 76, 65, 80, 78, 64, 63, 87, 62, 45, 67, 75, 51, 83, 47, 53, 62, 67, 57, 77, 67, 56, 61, 61, 78, 113, 46, 46, 37, 57, 77, 60, 63, 63, 78, 114, 41, 76, 74, 78, 60, 33, 83, 89, 91, 63, 66, 44, 52, 54, 53, 68, 78, 45, 69, 78, 75, 65, 38, 55, 151, 38, 53, 55, 59, 57, 74, 64, 72, 29, 71, 49, 56, 70, 49, 60, 71, 78, 83, 82, 63, 81, 44, 55, 52, 47, 71, 43, 81, 66, 69, 75, 75, 69, 73, 113, 106, 54, 61, 62, 75, 78, 54, 89, 48, 66, 53, 76, 60, 58, 71, 65, 101, 49, 69, 85, 55, 75, 59, 49, 77, 67, 68, 72, 63, 47, 66, 82, 63, 71, 48, 55, 80, 57, 70, 54, 61, 75, 57, 55, 59, 69, 75, 48, 70, 51, 78, 86, 78, 102, 53, 72, 80, 67, 94, 74, 59, 64, 78, 47, 48, 70, 67, 80, 61, 54, 105, 69, 50, 58, 46, 63, 75, 89, 81, 56, 63, 134, 61, 58, 58, 142, 88, 92, 53, 49, 60, 66, 49, 78, 82, 102, 54, 66, 53, 69, 94, 75, 65, 86, 55, 65, 71, 55, 65, 69, 70, 72, 64, 61, 61, 63, 51, 68, 74, 80, 55, 66, 59, 50, 74, 72, 65, 77, 75, 71, 66, 50, 71, 89, 66, 67, 60, 72, 55, 57, 89, 54, 81, 70, 91, 46, 67, 94, 52, 67, 59, 62, 74, 84, 51, 60, 103, 54, 55, 79, 44, 59, 64, 77, 73, 58, 68, 57, 94, 74, 54, 62, 68, 87, 65, 61, 56, 102, 78, 113, 54, 57, 52, 71, 52, 58, 78, 70, 67, 46, 72, 57, 86, 57, 95, 52, 68, 50, 85, 56, 49, 74, 61, 50, 90, 85, 61, 57, 54, 74, 65, 71, 42, 75, 70, 79, 80, 63, 68, 71, 80, 53, 77, 66, 38, 49, 57, 67, 81, 73, 107, 125, 51, 88, 98, 47, 52, 44, 51, 48, 48, 79, 62, 66, 54, 56, 57, 87, 70, 69, 70, 44, 82, 80, 81, 78, 68, 64, 48, 48, 46, 56, 67, 52, 102, 53, 65, 68, 62, 57, 77, 78, 79, 61, 112, 60, 43, 84, 73, 83, 56, 71, 56, 55, 77, 64, 43, 69, 79, 44, 85, 58, 87, 58, 66, 59, 87, 47, 84, 48, 62, 94, 67, 71, 68, 49, 91, 71, 70, 49, 39, 50, 67, 66, 51, 40, 53, 55, 49, 80, 93, 60, 68, 70, 61, 49, 68, 56, 84, 78, 59, 67, 62, 40, 97, 51, 71, 77, 66, 67, 83, 59, 83, 57, 49, 73, 60, 74, 107, 84, 82, 58, 81, 58, 76, 58, 65, 56, 68, 50, 53, 53, 83, 70, 79, 91, 71, 54, 78, 70, 74, 132, 66, 68, 52, 73, 49, 97, 66, 78, 91, 51, 91, 96, 52, 46, 57, 58, 53, 61, 50, 58, 38, 66, 91, 45, 53, 58, 50, 68, 63, 95, 60, 48, 43, 69, 64, 68, 67, 51, 71, 103, 52, 79, 56, 64, 68, 69, 58, 62, 67, 54, 59, 45, 88, 89, 73, 45, 50, 84, 57, 87, 60, 65, 59, 100, 80, 58, 112, 60, 60, 65, 40, 68, 50, 68, 53, 81, 75, 68, 83, 65, 110, 55, 84, 76, 50, 36, 75, 58, 81, 52, 71, 65, 65, 84, 87, 75, 56, 82, 57, 68, 66, 65, 57, 59, 65, 84, 62, 70, 56, 73, 57, 51, 58, 51, 68, 61, 67, 66, 74, 56, 72, 58, 72, 67, 48, 61, 57, 63, 70, 68, 71, 57, 74, 80, 49, 53, 53, 56, 53, 68, 80, 91, 82, 81, 50, 67, 85, 65, 79, 69, 65, 62, 76, 83, 59, 55, 66, 52, 87, 54, 56, 69, 57, 72, 54, 68, 54, 49, 72, 64, 53, 91, 75, 70, 64, 70, 74, 75, 57, 70, 52, 77, 64, 61, 42, 65, 53, 69, 59, 95, 64, 82, 54, 60, 58, 71, 44, 73, 85, 50, 49, 79, 75, 51, 81, 55, 61, 73, 61, 109, 53, 69, 61, 50, 51, 73, 86, 60, 61, 55, 77, 52, 82, 84, 90, 76, 98, 81, 62, 68, 101, 72, 65, 67, 68, 65, 55, 100, 70, 64, 58, 43, 80, 51, 69, 54, 81, 48, 61, 51, 89, 67, 61, 54, 50, 54, 46, 55, 67, 58, 52, 53, 59, 76, 51, 65, 59, 55, 78, 66, 68, 61, 52, 67, 81, 59, 74, 50, 69, 52, 63, 42, 51, 43, 65, 54, 66, 63, 69, 61, 65, 51, 45, 51, 61, 59, 66, 41, 74, 66, 67, 89, 79, 72, 72, 79, 66, 83, 65, 60, 53, 72, 82, 83, 51, 80, 50, 73, 51, 40, 43, 56, 62, 86, 73, 51, 61, 67, 85, 72, 83, 55, 96, 57, 64, 57, 64, 55, 78, 61, 72, 77, 78, 45, 68, 78, 67, 48, 74, 79, 64, 49, 49, 91, 70, 62, 78, 56, 71, 47, 60, 63, 60, 64, 57, 83, 66, 68, 51, 74, 56, 82, 63, 78, 55, 98, 74, 72, 66, 65, 36, 73, 54, 115, 53, 68, 59, 74, 81, 58, 54, 55, 57, 56, 73, 39, 80, 64, 65, 74, 53, 76, 71, 60, 72, 47, 67, 76, 64, 55, 81, 71, 66, 51, 71, 53, 63, 39, 65, 69, 62, 78, 71, 49, 63, 75, 55, 87, 56, 55, 42, 65, 61, 59, 50, 111, 73, 55, 67, 68, 52, 54, 75, 67, 96, 79, 68, 70, 80, 57, 52, 53, 55, 57, 74, 64, 61, 51, 73, 63, 70, 90, 92, 47, 90, 68, 62, 99, 51, 55, 87, 55, 50, 71, 71, 76, 67, 72, 60, 89, 48, 74, 82, 69, 71, 75, 79, 50, 61, 43, 84, 67, 51, 77, 74, 63, 66, 59, 77, 53, 43, 61, 75, 67, 66, 69, 64, 66, 51, 75, 71, 64, 66, 68, 70, 51, 69, 54, 40, 69, 47, 76, 64, 63, 94, 61, 67, 83, 75, 69, 54, 70, 62, 73, 60, 79, 70, 73, 60, 83, 76, 84, 51, 84, 77, 77, 84, 68, 81, 69, 63, 62, 49, 84, 60, 83, 71, 69, 101, 64, 78, 46, 84, 77, 73, 65, 60, 71, 70, 73, 55, 71, 64, 69, 51, 44, 57, 95, 67, 81, 77, 72, 62, 68, 53, 72, 94, 66, 66, 55, 58, 64, 69, 52, 53, 50, 76, 51, 67, 68, 65, 60, 93, 60, 76, 83, 74, 57, 72, 83, 50, 45, 88, 47, 71, 57, 80, 55, 86, 56, 52, 59, 69, 62, 54, 65, 77, 84, 68, 92, 75, 63, 63, 68, 58, 58, 64, 55, 39, 53, 65, 74, 74, 44, 101, 76, 70, 69, 77, 56, 59, 64, 65, 80, 58, 61, 45, 63, 63, 73, 100, 84, 59, 89, 86, 96, 67, 52, 83, 55, 63, 95, 85, 57, 68, 79, 62, 72, 60, 56, 48, 39, 60, 70, 85, 74, 54, 56, 61, 93, 77, 56, 91, 91, 62, 71, 53, 60, 68, 70, 65, 64, 79, 48, 60, 58, 56, 39, 57, 63, 64, 56, 71, 76, 76, 58, 70, 69, 46, 107, 60, 80, 69, 78, 64, 59, 74, 59, 62, 43, 53, 61, 65, 84, 71, 90, 57, 64, 79, 51, 57, 67, 78, 67, 72, 75, 63, 66, 49, 64, 80, 66, 61, 57, 58, 53, 52, 44, 66, 73, 96, 73, 76, 69, 62, 75, 58, 83, 78, 67, 72, 63, 72, 54, 61, 75, 39, 76, 59, 50, 56, 57, 98, 62, 52, 49, 57, 84, 66, 63, 83, 69, 87, 44, 67, 65, 57, 49, 73, 60, 55, 62, 84, 50, 53, 53, 73, 65, 66, 54, 74, 63, 63, 50, 58, 77, 69, 69, 71, 63, 84, 72, 70, 60, 73, 61, 85, 84, 77, 67, 62, 68, 61, 53, 67, 77, 62, 75, 85, 69, 74, 50, 58, 59, 56, 112, 73, 46, 55, 63, 63, 70, 74, 77, 65, 84, 54, 57, 59, 72, 57, 59, 41, 68, 57, 64, 36, 77, 61, 87, 69, 62, 60, 54, 84, 60, 50, 64, 80, 81, 61, 88, 41, 62, 56, 62, 86, 60, 62, 51, 59, 70, 56, 65, 56, 62, 76, 69, 95, 74, 131, 66, 66, 67, 55, 70, 70, 85, 65, 54, 62, 60, 59, 58, 98, 54, 66, 70, 45, 53, 91, 59, 56, 72, 77, 56, 59, 82, 75, 70, 53, 69, 63, 77, 73, 77, 67, 101, 59, 63, 75, 53, 70, 61, 69, 57, 65, 68, 63, 61, 63, 69, 50, 80, 86, 63, 51, 74, 74, 87, 56, 68, 81, 59, 60, 81, 56, 70, 82, 64, 70, 79, 60, 68, 91, 44, 55, 69, 73, 50, 64, 47, 63, 73, 75, 87, 47, 88, 75, 69, 53, 63, 52, 29, 65, 54, 58, 50, 67, 57, 58, 64, 86, 53, 59, 58, 102, 96, 95, 53, 48, 92, 68, 44, 83, 48, 66, 58, 76, 68, 51, 52, 68, 63, 87, 68, 95, 65, 57, 54, 65, 54, 109, 66, 61, 72, 56, 101, 71, 59, 68, 76, 69, 68, 46, 75, 64, 66, 75, 65, 61, 69, 62, 50, 47, 54, 49, 80, 67, 84, 65, 83, 78, 73, 55, 78, 91, 55, 78, 58, 94, 64, 64, 59, 57, 61, 93, 78, 60, 34, 72, 33, 86, 72, 53, 74, 56, 54, 66, 63, 62, 93, 48, 62, 72, 45, 77, 68, 57, 74, 103, 85, 59, 56, 77, 49, 60, 57, 81, 49, 67, 52, 100, 52, 49, 58, 56, 68, 59, 79, 83, 50, 81, 79, 74, 72, 69, 72, 57, 61, 67, 58, 73, 58, 62, 64, 57, 73, 50, 47, 74, 86, 68, 52, 57, 94, 78, 53, 65, 53, 67, 57, 86, 62, 68, 58, 52, 63, 92, 82, 103, 49, 64, 64, 74, 38, 39, 67, 81, 81, 49, 57, 61, 73, 82, 51, 77, 54, 65, 101, 65, 62, 66, 47, 42, 61, 60, 56, 79, 39, 56, 53, 61, 82, 83, 60, 100, 48, 72, 49, 58, 77, 54, 70, 75, 72, 65, 73, 79, 55, 68, 62, 51, 63, 54, 44, 79, 73, 65, 45, 62, 77, 82, 55, 82, 55, 80, 67, 64, 54, 101, 57, 78, 81, 48, 54, 70, 72, 56, 87, 52, 67, 54, 49, 84, 91, 49, 57, 67, 63, 81, 67, 64, 39, 54, 127, 91, 62, 73, 78, 99, 69, 58, 71, 65, 61, 54, 48, 78, 63, 63, 67, 51, 97, 78, 59, 57, 69, 80, 71, 89, 81, 97, 60, 58, 51, 76, 73, 55, 56, 70, 43, 72, 83, 61, 64, 95, 66, 64, 73, 76, 67, 57, 68, 37, 39, 49, 71, 73, 52, 66, 58, 67, 80, 45, 53, 68, 53, 81, 97, 61, 53, 76, 59, 60, 60, 42, 88, 66, 84, 67, 66, 58, 68, 72, 58, 69, 86, 63, 46, 54, 87, 60, 57, 69, 104, 71, 76, 67, 58, 64, 62, 58, 86, 115, 50, 37, 67, 61, 68, 50, 63, 85, 55, 38, 43, 63, 61, 66, 63, 50, 60, 59, 75, 89, 76, 68, 71, 67, 71, 57, 63, 65, 51, 53, 96, 72, 66, 50, 79, 66, 59, 56, 99, 78, 94, 75, 45, 47, 44, 69, 48, 50, 93, 50, 84, 63, 51, 35, 70, 44, 89, 68, 69, 51, 68, 55, 59, 85, 88, 70, 62, 65, 71, 62, 48, 138, 51, 92, 61, 68, 67, 62, 62, 70, 68, 46, 87, 60, 51, 50, 67, 77, 72, 77, 48, 72, 60, 44, 49, 63, 53, 42, 67, 73, 82, 78, 62, 60, 62, 75, 61, 68, 78, 71, 95, 62, 76, 67, 64, 46, 52, 71, 71, 52, 80, 63, 55, 67, 85, 64, 104, 75, 41, 67, 60, 59, 42, 54, 60, 72, 45, 83, 70, 52, 66, 47, 64, 71, 56, 41, 74, 58, 54, 57, 64, 38, 95, 75, 81, 47, 73, 47, 59, 63, 90, 36, 71, 79, 52, 35, 72, 65, 60, 57, 53, 58, 59, 62, 89, 50, 62, 75, 40, 82, 56, 66, 72, 61, 75, 101, 63, 54, 64, 65, 88, 56, 55, 112, 49, 54, 64, 68, 57, 58, 52, 53, 97, 64, 112, 63, 68, 44, 99, 75, 104, 85, 102, 69, 81, 43, 60, 83, 60, 69, 75, 67, 77, 60, 56, 71, 69, 60, 68, 53, 66, 36, 83, 48, 62, 51, 71, 60, 67, 61, 59, 61, 75, 46, 70, 59, 69, 70, 61, 65, 93, 74, 59, 68, 62, 93, 63, 46, 63, 49, 61, 41, 48, 60, 41, 48, 107, 67, 69, 56, 55, 133, 58, 63, 59, 63, 86, 64, 75, 61, 68, 58, 62, 57, 71, 77, 70, 57, 62, 69, 68, 77, 63, 55, 74, 66, 50, 67, 79, 65, 50, 68, 80, 83, 76, 74, 57, 65, 78, 69, 61, 78, 78, 54, 72, 69, 57, 68, 64, 60, 62, 54, 71, 98, 95, 72, 63, 58, 64, 87, 77, 61, 74, 71, 74, 49, 76, 47, 105, 37, 43, 59, 58, 63, 83, 64, 68, 54, 71, 64, 48, 58, 100, 67, 67, 60, 89, 94, 69, 79, 55, 48, 77, 84, 72, 62, 68, 57, 54, 72, 55, 46, 61, 74, 65, 85, 60, 34, 80, 49, 66, 80, 85, 56, 79, 58, 81, 61, 79, 54, 50, 41, 80, 72, 69, 63, 53, 51, 74, 78, 69, 59, 64, 68, 53, 51, 65, 72, 77, 66, 47, 67, 53, 69, 64, 75, 61, 68, 79, 71, 80, 50, 66, 73, 54, 62, 55, 54, 54, 45, 74, 61, 72, 51, 81, 59, 64, 77, 78, 61, 80, 46, 63, 63, 53, 48, 50, 52, 109, 53, 70, 71, 59, 55, 58, 75, 56, 55, 41, 75, 70, 88, 82, 94, 52, 53, 81, 73, 85, 63, 64, 57, 94, 67, 49, 80, 69, 81, 55, 65, 66, 61, 74, 83, 63, 67, 70, 90, 76, 75, 96, 50, 48, 64, 64, 77, 53, 59, 58, 53, 56, 58, 82, 92, 113, 58, 53, 106, 87, 54, 45, 52, 83, 58, 63, 78, 61, 54, 84, 65, 70, 76, 66, 59, 42, 68, 51, 82, 69, 50, 49, 52, 87, 61, 69, 102, 60, 45, 48, 43, 79, 80, 58, 93, 70, 57, 56, 63, 64, 48, 57, 77, 84, 67, 98, 67, 88, 66, 46, 70, 68, 83, 113, 80, 97, 48, 58, 103, 67, 90, 38, 62, 62, 72, 78, 53, 57, 68, 68, 74, 98, 69, 75, 75, 72, 69, 47, 60, 57, 65, 57, 59, 74, 117, 58, 68, 70, 52, 76, 55, 55, 69, 52, 80, 46, 78, 82, 75, 38, 68, 86, 49, 46, 44, 62, 78, 57, 78, 45, 56, 59, 111, 94, 37, 78, 80, 38, 55, 52, 66, 51, 73, 48, 59, 81, 70, 66, 77, 78, 58, 55, 84, 60, 49, 55, 44, 83, 83, 66, 49, 82, 91, 52, 61, 114, 72, 63, 57, 75, 51, 75, 62, 80, 45, 90, 53, 66, 65, 41, 62, 59, 65, 68, 95, 81, 47, 123, 58, 132, 93, 53, 73, 62, 102, 60, 53, 47, 70, 63, 100, 77, 78, 71, 54, 39, 50, 66, 59, 63, 51, 75, 70, 63, 60, 67, 62, 75, 67, 89, 77, 39, 55, 48, 81, 77, 57, 54, 63, 69, 73, 66, 80, 26, 55, 84, 66, 48, 50, 82, 49, 52, 59, 108, 60, 60, 51, 84, 88, 56, 41, 71, 78, 61, 56, 61, 80, 63, 54, 72, 68, 70, 39, 46, 66, 50, 63, 77, 56, 58, 80, 75, 70, 51, 66, 59, 57, 76, 77, 70, 74, 92, 64, 72, 76, 33, 111, 67, 52, 74, 66, 59, 79, 81, 52, 57, 69, 77, 81, 50, 88, 67, 56, 55, 53, 60, 92, 58, 44, 59, 63, 40, 119, 75, 64, 72, 62, 74, 45, 60, 58, 56, 91, 73, 63, 72, 92, 94, 60, 45, 60, 71, 54, 52, 42, 49, 52, 53, 62, 102, 83, 50, 76, 56, 58, 67, 80, 39, 68, 54, 46, 67, 53, 66, 56, 59, 49, 74, 55, 88, 72, 63, 68, 96, 88, 108, 49, 57, 73, 82, 94, 74, 93, 40, 77, 76, 58, 31, 72, 45, 53, 112, 62, 66, 68, 56, 61, 59, 100, 66, 67, 55, 66, 70, 67, 78, 45, 40, 47, 56, 48, 44, 64, 53, 40, 53, 64, 58, 47, 57, 63, 53, 71, 88, 61, 87, 79, 92, 45, 85, 92, 73, 55, 76, 94, 65, 58, 83, 69, 106, 59, 78, 74, 86, 65, 52, 86, 60, 61, 87, 60, 64, 54, 80, 65, 50, 41, 69, 102, 45, 56, 58, 59, 57, 86, 62, 78, 42, 86, 79, 82, 80, 62, 57, 46, 65, 67, 77, 63, 67, 87, 61, 44, 57, 46, 87, 44, 77, 69, 37, 52, 56, 71, 58, 50, 87, 69, 62, 64, 42, 29, 53, 59, 78, 60, 105, 65, 79, 58, 97, 42, 54, 70, 64, 67, 66, 75, 55, 118, 77, 59, 60, 54, 68, 65, 65, 60, 79, 67, 74, 61, 69, 98, 106, 62, 57, 45, 101, 38, 60, 61, 68, 86, 68, 76, 56, 79, 57, 59, 82, 75, 111, 44, 71, 35, 61, 35, 61, 19, 65, 67, 60, 85, 52, 46, 56, 54, 78, 87, 64, 106, 68, 64, 60, 56, 49, 86, 54, 70, 108, 55, 82, 90, 125, 68, 52, 40, 99, 60, 29, 94, 66, 74, 50, 55, 56, 58, 59, 78, 77, 60, 67, 67, 48, 94, 78, 76, 64, 55, 38, 67, 66, 68, 97, 54, 92, 74, 44, 53, 42, 50, 67, 62, 69, 120, 66, 61, 61, 67, 68, 49, 73, 64, 64, 58, 47, 91, 47, 70, 71, 74, 62, 77, 55, 61, 50, 78, 54, 80, 73, 68, 46, 49, 78, 50, 99, 80, 53, 78, 49, 91, 82, 100, 125, 38, 75, 68, 57, 80, 104, 82, 58, 61, 80, 74, 48, 58, 100, 90, 70, 60, 75, 61, 96, 82, 60, 48, 53, 68, 57, 52, 70, 83, 62, 94, 39, 75, 67, 61, 77, 54, 91, 69, 61, 50, 65, 58, 70, 79, 57, 65, 50, 80, 49, 49, 51, 80, 74, 84, 52, 55, 45, 85, 50, 72, 67, 48, 52, 69, 60, 47, 64, 84, 93, 72, 54, 87, 74, 67, 70, 64, 81, 60, 60, 55, 78, 79, 110, 65, 68, 90, 52, 60, 44, 71, 66, 75, 48, 30, 68, 47, 65, 54, 79, 65, 46, 80, 50, 95, 42, 84, 64, 64, 67, 70, 60, 74, 64, 79, 71, 68, 62, 77, 60, 75, 43, 54, 58, 71, 71, 98, 89, 70, 55, 54, 70, 64, 48, 63, 85, 41, 29, 61, 40, 45, 87, 87, 58, 70, 60, 63, 75, 66, 62, 68, 75, 96, 81, 66, 48, 65, 81, 67, 67, 43, 69, 83, 59, 68, 68, 66, 65, 90, 72, 70, 89, 56, 41, 50, 93, 57, 64, 56, 83, 74, 44, 103, 52, 64, 65, 51, 54, 50, 65, 66, 44, 60, 62, 56, 79, 72, 68, 69, 85, 71, 68, 65, 56, 96, 73, 58, 71, 87, 66, 53, 80, 61, 77, 85, 84, 52, 80, 58, 38, 78, 63, 64, 70, 57, 69, 64, 46, 40, 70, 48, 56, 51, 53, 80, 70, 59, 71, 71, 73, 84, 80, 60, 80, 60, 52, 49, 66, 84, 69, 78, 67, 55, 68, 74, 56, 62, 61, 77, 79, 59, 85, 88, 88, 76, 65, 102, 55, 53, 109, 73, 75, 80, 92, 72, 58, 58, 62, 48, 80, 71, 77, 50, 63, 53, 62, 54, 63, 30, 61, 77, 58, 54, 65, 65, 75, 57, 48, 55, 53, 47, 57, 79, 47, 50, 69, 49, 86, 53, 67, 69, 72, 58, 67, 79, 89, 69, 68, 62, 50, 65, 64, 54, 70, 78, 60, 55, 41, 68, 56, 54, 42, 90, 54, 51, 67, 42, 89, 54, 83, 48, 71, 52, 78, 56, 79, 71, 75, 91, 82, 70, 54, 62, 67, 71, 58, 62, 90, 70, 43, 46, 59, 57, 77, 58, 72, 51, 50, 53, 67, 56, 72, 70, 67, 53, 68, 59, 75, 95, 71, 77, 36, 40, 84, 50, 72, 58, 43, 70, 55, 77, 63, 94, 73, 59, 45, 58, 46, 61, 71, 59, 70, 44, 55, 79, 48, 66, 55, 81, 68, 51, 64, 61, 47, 49, 53, 67, 75, 102, 73, 82, 68, 81, 58, 64, 77, 74, 71, 64, 54, 69, 73, 55, 65, 79, 62, 52, 102, 59, 103, 44, 51, 40, 41, 46, 69, 64, 44, 59, 79, 72, 48, 57, 74, 68, 61, 67, 53, 64, 71, 86, 66, 58, 80, 50, 52, 66, 68, 60, 76, 70, 61, 56, 58, 56, 104, 60, 83, 72, 44, 52, 62, 65, 63, 91, 62, 130, 76, 71, 61, 75, 67, 90, 43, 58, 80, 69, 81, 97, 75, 55, 59, 79, 69, 81, 56, 62, 43, 70, 77, 59, 84, 57, 79, 50, 79, 65, 109, 73, 70, 54, 75, 68, 54, 62, 64, 51, 52, 83, 61, 89, 69, 63, 74, 82, 78, 54, 98, 44, 63, 72, 54, 83, 79, 52, 63, 71, 62, 60, 58, 57, 63, 72, 51, 59, 59, 73, 68, 70, 68, 52, 53, 79, 74, 74, 70, 65, 75, 56, 62, 50, 59, 84, 62, 98, 72, 74, 44, 55, 62, 46, 60, 91, 54, 64, 65, 91, 45, 68, 65, 73, 45, 72, 64, 75, 106, 54, 80, 69, 60, 81, 80, 63, 57, 74, 65, 74, 63, 57, 79, 63, 76, 68, 59, 113, 38, 50, 91, 54, 54, 54, 60, 72, 95, 82, 54, 54, 62, 88, 51, 61, 56, 60, 59, 52, 68, 70, 63, 71, 51, 64, 73, 60, 48, 80, 47, 65, 54, 99, 56, 86, 61, 57, 80, 42, 90, 63, 68, 55, 45, 66, 89, 53, 65, 55, 55, 49, 57, 70, 69, 82, 59, 78, 79, 54, 73, 83, 61, 68, 64, 83, 104, 59, 56, 69, 62, 62, 61, 81, 71, 59, 75, 59, 59, 72, 74, 48, 66, 58, 80, 57, 61, 62, 81, 70, 50, 46, 51, 61, 67, 76, 54, 67, 53, 40, 71, 62, 68, 56, 57, 82, 58, 64, 58, 57, 58, 61, 62, 80, 70, 65, 55, 70, 90, 48, 72, 82, 100, 75, 55, 60, 55, 66, 69, 61, 86, 87, 92, 88, 59, 62, 47, 81, 57, 72, 65, 54, 72, 111, 93, 69, 77, 84, 64, 52, 58, 72, 62, 69, 48, 68, 45, 66, 50, 61, 47, 68, 59, 67, 59, 69, 64, 80, 56, 89, 51, 56, 72, 79, 60, 49, 71, 58, 60, 63, 66, 34, 93, 63, 71, 58, 66, 61, 60, 79, 51, 74, 57, 68, 50, 56, 63, 66, 63, 58, 60, 51, 68, 80, 57, 92, 57, 67, 63, 80, 57, 95, 59, 52, 89, 103, 57, 49, 55, 65, 64, 67, 68, 55, 74, 43, 78, 86, 70, 35, 77, 54, 75, 91, 74, 69, 59, 86, 108, 70, 59, 72, 55, 45, 52, 95, 66, 80, 56, 70, 65, 75, 53, 76, 75, 77, 73, 70, 68, 52, 60, 66, 51, 89, 59, 50, 64, 63, 70, 54, 61, 44, 78, 33, 54, 63, 49, 73, 63, 51, 118, 60, 77, 47, 98, 70, 74, 59, 56, 51, 39, 46, 54, 51, 83, 46, 72, 55, 68, 70, 68, 58, 72, 75, 73, 66, 117, 55, 66, 58, 78, 69, 57, 65, 46, 72, 59, 58, 43, 112, 52, 59, 50, 79, 89, 39, 46, 75, 64, 72, 97, 68, 74, 56, 62, 60, 53, 65, 63, 68, 79, 65, 37, 53, 69, 46, 98, 52, 79, 57, 91, 80, 57, 50, 51, 46, 63, 68, 61, 55, 56, 60, 85, 30, 92, 51, 67, 63, 65, 62, 47, 64, 75, 59, 53, 69, 91, 82, 57, 61, 72, 98, 74, 61, 97, 87, 76, 62, 71, 62, 75, 61, 39, 57, 78, 48, 60, 93, 89, 34, 90, 40, 56, 68, 111, 61, 51, 64, 56, 73, 68, 73, 75, 60, 51, 49, 41, 49, 66, 85, 38, 86, 74, 51, 47, 70, 44, 43, 67, 68, 47, 51, 76, 47, 67, 60, 45, 51, 55, 107, 51, 92, 65, 56, 78, 52, 56, 83, 56, 60, 61, 65, 57, 65, 80, 64, 51, 111, 85, 63, 71, 61, 60, 52, 60, 59, 75, 86, 64, 80, 124, 82, 70, 50, 57, 89, 68, 72, 49, 70, 58, 97, 54, 62, 70, 82, 67, 54, 60, 59, 78, 61, 58, 87, 64, 66, 61, 65, 68, 66, 57, 57, 70, 65, 72, 85, 34, 94, 67, 55, 60, 78, 49, 70, 45, 72, 59, 89, 46, 64, 80, 72, 42, 69, 55, 75, 92, 52, 54, 60, 52, 72, 66, 74, 64, 44, 37, 76, 69, 54, 71, 97, 88, 61, 84, 57, 80, 58, 79, 59, 73, 67, 98, 65, 92, 84, 67, 74, 65, 76, 70, 68, 57, 100, 60, 77, 42, 64, 107, 48, 72, 81, 63, 40, 62, 55, 57, 56, 83, 77, 59, 42, 46, 85, 64, 54, 81, 79, 57, 69, 62, 44, 66, 83, 78, 68, 61, 57, 66, 58, 83, 74, 68, 78, 69, 64, 38, 83, 84, 69, 67, 59, 70, 77, 54, 74, 65, 96, 85, 56, 50, 71, 74, 49, 60, 57, 89, 50, 57, 71, 83, 66, 58, 74, 64, 89, 65, 65, 56, 69, 65, 48, 68, 81, 61, 66, 39, 65, 86, 90, 67, 49, 65, 60, 59, 83, 101, 61, 58, 74, 59, 35, 62, 70, 52, 77, 71, 91, 88, 68, 78, 77, 51, 57, 69, 58, 54, 46, 76, 103, 55, 66, 69, 64, 61, 45, 120, 60, 56, 116, 64, 36, 68, 88, 53, 50, 75, 72, 49, 69, 53, 67, 104, 32, 71, 66, 84, 59, 79, 59, 48, 67, 72, 80, 56, 80, 56, 54, 79, 64, 64, 93, 122, 63, 70, 65, 66, 52, 79, 50, 69, 84, 40, 64, 76, 75, 59, 59, 69, 70, 90, 64, 60, 79, 71, 90, 59, 40, 75, 94, 86, 73, 59, 59, 71, 55, 62, 64, 61, 56, 54, 70, 63, 59, 64, 55, 58, 79, 57, 61, 77, 80, 48, 62, 63, 58, 38, 57, 38, 58, 53, 50, 92, 53, 69, 52, 59, 58, 50, 62, 60, 73, 74, 61, 52, 58, 57, 68, 65, 48, 71, 66, 48, 87, 59, 66, 61, 66, 113, 67, 79, 61, 66, 63, 57, 56, 72, 61, 63, 47, 52, 60, 75, 70, 64, 141, 69, 42, 57, 62, 65, 66, 60, 70, 40, 54, 57, 48, 84, 53, 62, 65, 45, 62, 77, 61, 50, 82, 71, 52, 52, 61, 67, 61, 60, 46, 61, 68, 46, 87, 58, 62, 46, 56, 78, 72, 77, 69, 67, 74, 78, 65, 66, 54, 76, 62, 64, 59, 55, 75, 44, 52, 55, 84, 68, 77, 68, 90, 78, 58, 65, 65, 71, 59, 62, 45, 74, 75, 59, 56, 69, 61, 61, 62, 64, 51, 65, 41, 82, 63, 59, 75, 67, 85, 65, 81, 74, 73, 74, 67, 87, 80, 68, 61, 51, 65, 52, 66, 56, 40, 63, 82, 53, 55, 52, 70, 56, 69, 37, 56, 68, 59, 86, 49, 88, 89, 42, 60, 98, 66, 55, 55, 54, 56, 67, 60, 45, 62, 44, 80, 78, 42, 68, 57, 48, 57, 78, 48, 108, 83, 74, 46, 73, 74, 62, 49, 88, 81, 57, 81, 48, 93, 56, 38, 95, 50, 60, 79, 56, 72, 67, 89, 66, 81, 63, 53, 59, 82, 65, 65, 76, 78, 62, 57, 69, 65, 43, 72, 63, 57, 72, 71, 88, 62, 57, 92, 61, 63, 75, 57, 65, 67, 98, 71, 72, 58, 63, 78, 78, 53, 54, 56, 51, 60, 84, 62, 62, 55, 53, 43, 68, 69, 82, 81, 51, 90, 68, 48, 57, 42, 76, 75, 60, 49, 79, 64, 55, 66, 77, 64, 66, 46, 101, 72, 54, 80, 58, 59, 65, 44, 58, 49, 55, 45, 86, 88, 74, 53, 53, 71, 62, 58, 48, 59, 67, 97, 49, 51, 71, 70, 64, 67, 74, 60, 60, 101, 51, 74, 54, 77, 69, 56, 68, 83, 75, 52, 62, 49, 67, 59, 84, 63, 97, 58, 106, 37, 56, 63, 75, 76, 48, 48, 57, 70, 56, 84, 78, 40, 85, 55, 51, 64, 74, 61, 71, 56, 63, 61, 60, 52, 65, 73, 74, 83, 66, 50, 51, 51, 88, 73, 69, 58, 66, 83, 71, 41, 46, 76, 50, 61, 88, 60, 67, 37, 33, 51, 51, 89, 74, 74, 66, 58, 75, 75, 80, 101, 46, 49, 58, 68, 68, 73, 63, 69, 76, 65, 68, 71, 62, 48, 100, 52, 70, 65, 60, 61, 69, 55, 60, 44, 47, 60, 71, 64, 58, 74, 100, 71, 67, 63, 53, 65, 66, 64, 90, 49, 69, 69, 66, 78, 64, 68, 42, 57, 58, 58, 60, 55, 59, 62, 103, 86, 63, 87, 53, 71, 75, 49, 66, 70, 89, 93, 62, 53, 57, 57, 55, 63, 61, 75, 42, 90, 75, 39, 40, 87, 55, 56, 70, 37, 47, 71, 57, 89, 64, 67, 111, 55, 61, 47, 62, 75, 70, 70, 66, 59, 53, 59, 67, 74, 91, 67, 53, 82, 40, 43, 72, 97, 43, 56, 46, 67, 57, 73, 61, 69, 69, 76, 71, 70, 59, 60, 67, 67, 56, 113, 99, 39, 59, 60, 52, 61, 43, 72, 61, 52, 67, 58, 76, 56, 94, 70, 72, 71, 66, 75, 54, 57, 81, 54, 84, 59, 49, 62, 68, 65, 53, 143, 79, 58, 51, 90, 60, 62, 56, 53, 64, 55, 55, 53, 98, 85, 66, 70, 60, 57, 52, 70, 92, 87, 54, 82, 66, 78, 46, 68, 51, 71, 69, 60, 65, 58, 67, 60, 78, 44, 66, 78, 76, 64, 73, 49, 104, 58, 86, 94, 93, 67, 46, 56, 70, 60, 51, 61, 63, 67, 70, 64, 85, 63, 62, 61, 69, 64, 61, 47, 73, 89, 45, 56, 58, 92, 112, 75, 78, 71, 72, 69, 51, 83, 50, 44, 97, 48, 66, 70, 73, 72, 53, 69, 72, 65, 83, 54, 88, 53, 75, 60, 58, 69, 65, 94, 67, 79, 51, 63, 50, 72, 73, 86, 63, 65, 82, 104, 76, 71, 58, 81, 54, 52, 71, 63, 50, 60, 60, 74, 62, 96, 63, 111, 67, 51, 79, 63, 75, 52, 68, 53, 84, 104, 53, 55, 58, 59, 75, 62, 73, 63, 79, 51, 62, 60, 62, 59, 62, 83, 86, 73, 92, 57, 61, 61, 55, 56, 61, 91, 50, 50, 87, 57, 71, 71, 67, 56, 64, 67, 85, 73, 65, 62, 64, 53, 50, 56, 56, 96, 55, 58, 49, 47, 46, 67, 74, 95, 57, 43, 71, 69, 88, 79, 61, 78, 67, 81, 47, 84, 68, 64, 54, 72, 63, 87, 65, 113, 52, 66, 52, 49, 81, 58, 70, 63, 51, 68, 75, 62, 44, 92, 83, 53, 58, 63, 75, 75, 87, 64, 55, 62, 59, 75, 88, 55, 62, 65, 121, 72, 60, 60, 58, 58, 62, 79, 63, 69, 75, 64, 70, 59, 84, 57, 67, 48, 79, 51, 98, 60, 61, 57, 65, 64, 103, 63, 67, 51, 66, 53, 53, 52, 74, 60, 41, 68, 64, 76, 70, 49, 74, 56, 55, 90, 74, 54, 72, 53, 60, 69, 85, 67, 92, 68, 65, 58, 98, 49, 73, 51, 68, 67, 91, 59, 68, 53, 84, 49, 52, 43, 66, 50, 68, 58, 52, 59, 80, 75, 90, 76, 48, 74, 65, 72, 72, 62, 57, 67, 62, 71, 78, 52, 57, 69, 72, 72, 46, 77, 56, 50, 73, 75, 47, 66, 59, 66, 79, 44, 100, 56, 60, 63, 72, 81, 73, 57, 65, 78, 63, 87, 60, 63, 60, 87, 59, 60, 99, 53, 85, 54, 59, 61, 73, 44, 59, 93, 54, 63, 66, 68, 77, 59, 75, 59, 88, 62, 59, 45, 80, 81, 49, 65, 76, 48, 68, 45, 62, 70, 72, 63, 75, 55, 92, 74, 59, 84, 67, 65, 29, 106, 66, 69, 92, 51, 65, 57, 81, 70, 54, 59, 65, 63, 70, 67, 75, 87, 91, 68, 45, 55, 72, 64, 67, 62, 76, 46, 64, 51, 64, 62, 83, 53, 56, 78, 78, 52, 55, 62, 50, 92, 65, 25, 64, 38, 59, 57, 74, 83, 103, 64, 71, 55, 48, 61, 51, 65, 93, 53, 64, 60, 76, 71, 74, 70, 35, 85, 46, 90, 55, 76, 48, 64, 60, 100, 62, 57, 38, 56, 50, 80, 73, 55, 54, 78, 69, 55, 65, 62, 35, 56, 33, 79, 96, 102, 68, 46, 65, 41, 56, 59, 74, 74, 72, 65, 85, 79, 69, 70, 80, 52, 50, 75, 43, 56, 76, 62, 58, 54, 79, 64, 41, 55, 89, 50, 55, 73, 64, 55, 60, 65, 64, 69, 51, 91, 60, 80, 77, 89, 63, 65, 69, 75, 55, 102, 88, 42, 45, 52, 83, 44, 76, 63, 76, 55, 76, 54, 114, 59, 66, 65, 67, 77, 73, 74, 81, 65, 67, 80, 41, 67, 62, 76, 67, 71, 65, 58, 60, 93, 75, 52, 42, 55, 66, 62, 74, 71, 83, 95, 56, 57, 41, 57, 85, 62, 65, 91, 68, 55, 76, 78, 74, 54, 74, 58, 58, 59, 76, 71, 58, 63, 42, 62, 93, 95, 79, 45, 62, 46, 61, 61, 74, 62, 64, 81, 56, 62, 76, 70, 110, 54, 62, 66, 57, 69, 68, 70, 67, 108, 57, 60, 64, 59, 71, 56, 62, 64, 37, 90, 64, 60, 74, 67, 58, 60, 44, 58, 80, 68, 62, 74, 59, 67, 83, 52, 77, 59, 85, 63, 50, 63, 63, 71, 79, 65, 75, 67, 77, 71, 56, 81, 83, 62, 59, 79, 73, 59, 40, 69, 61, 86, 53, 58, 102, 38, 91, 66, 59, 69, 64, 76, 51, 92, 105, 58, 77, 56, 100, 69, 77, 68, 64, 74, 78, 67, 57, 47, 63, 56, 63, 61, 63, 65, 80, 121, 86, 61, 61, 90, 89, 70, 49, 61, 57, 60, 54, 47, 74, 49, 57, 72, 52, 63, 58, 58, 53, 66, 95, 78, 69, 56, 60, 48, 56, 59, 81, 58, 62, 60, 59, 63, 58, 69, 68, 53, 70, 67, 58, 52, 70, 51, 42, 68, 67, 41, 92, 58, 82, 77, 74, 64, 51, 64, 63, 82, 58, 60, 88, 65, 79, 67, 69, 64, 48, 58, 60, 57, 68, 56, 86, 68, 62, 50, 68, 51, 61, 65, 71, 45, 69, 65, 53, 46, 49, 60, 56, 49, 53, 68, 57, 55, 63, 74, 64, 68, 38, 68, 73, 65, 58, 78, 75, 82, 75, 76, 70, 74, 52, 81, 109, 69, 78, 54, 69, 86, 71, 69, 59, 52, 64, 76, 69, 75, 40, 66, 68, 76, 61, 89, 58, 62, 119, 65, 67, 80, 89, 69, 84, 55, 63, 75, 51, 60, 39, 50, 59, 59, 53, 70, 67, 73, 50, 69, 51, 110, 66, 58, 56, 89, 77, 72, 73, 88, 62, 80, 62, 60, 74, 92, 91, 51, 78, 76, 61, 82, 59, 107, 60, 60, 55, 44, 83, 68, 69, 65, 73, 62, 59, 56, 62, 61, 73, 74, 76, 61, 61, 81, 59, 56, 88, 66, 53, 65, 59, 73, 54, 66, 78, 56, 112, 46, 96, 72, 58, 60, 72, 53, 94, 81, 62, 70, 71, 40, 103, 48, 73, 103, 62, 73, 69, 94, 53, 63, 70, 52, 84, 69, 62, 74, 41, 76, 38, 66, 70, 76, 88, 63, 82, 65, 63, 63, 96, 103, 77, 77, 87, 79, 78, 64, 44, 59, 66, 75, 55, 56, 52, 67, 62, 49, 64, 67, 67, 63, 54, 41, 52, 57, 64, 44, 77, 68, 86, 77, 39, 54, 66, 66, 44, 76, 50, 82, 58, 62, 74, 61, 68, 53, 62, 65, 67, 43, 57, 82, 82, 77, 67, 79, 52, 63, 68, 47, 46, 56, 59, 67, 58, 70, 69, 70, 65, 57, 77, 56, 69, 75, 47, 61, 56, 60, 59, 52, 97, 47, 101, 73, 78, 60, 71, 69, 50, 97, 58, 61, 69, 92, 58, 73, 71, 59, 55, 48, 68, 76, 89, 63, 75, 50, 65, 71, 39, 58, 24, 44, 82, 64, 53, 77, 67, 73, 83, 61, 92, 60, 82, 77, 85, 65, 48, 66, 71, 57, 88, 54, 58, 53, 59, 50, 53, 59, 53, 56, 52, 53, 67, 80, 58, 83, 58, 82, 61, 79, 71, 55, 58, 126, 51, 46, 76, 64, 63, 63, 73, 84, 50, 48, 58, 56, 114, 58, 85, 61, 52, 68, 48, 55, 82, 102, 48, 62, 66, 62, 55, 68, 54, 37, 88, 59, 55, 71, 70, 56, 51, 60, 57, 49, 65, 58, 79, 76, 62, 79, 38, 62, 53, 75, 76, 111, 66, 89, 60, 48, 57, 82, 89, 61, 62, 41, 65, 74, 60, 76, 56, 63, 87, 73, 56, 72, 60, 56, 75, 96, 55, 89, 74, 52, 67, 76, 73, 77, 73, 78, 60, 61, 63, 70, 55, 73, 90, 45, 59, 56, 74, 53, 67, 76, 54, 52, 108, 88, 60, 56, 57, 68, 67, 58, 69, 108, 48, 88, 50, 73, 52, 68, 84, 47, 55, 50, 70, 84, 68, 67, 45, 70, 85, 65, 90, 89, 97, 82, 45, 75, 63, 58, 55, 70, 69, 83, 76, 73, 54, 67, 89, 63, 88, 38, 68, 47, 83, 45, 53, 51, 55, 52, 66, 62, 77, 77, 38, 77, 58, 70, 54, 71, 65, 80, 79, 62, 114, 63, 51, 51, 95, 60, 69, 57, 69, 43, 73, 74, 59, 78, 56, 70, 61, 76, 76, 70, 59, 94, 68, 75, 65, 53, 73, 56, 77, 52, 76, 68, 52, 58, 94, 76, 68, 67, 53, 46, 62, 69, 69, 54, 123, 57, 53, 79, 72, 81, 71, 65, 44, 109, 68, 66, 55, 50, 50, 65, 93, 60, 66, 60, 70, 57, 75, 85, 58, 59, 59, 78, 54, 56, 69, 52, 72, 68, 141, 60, 67, 51, 69, 50, 74, 49, 52, 80, 69, 113, 56, 60, 70, 80, 83, 77, 52, 78, 70, 58, 83, 68, 56, 50, 76, 40, 47, 68, 67, 63, 69, 93, 67, 51, 52, 57, 80, 58, 66, 57, 86, 59, 67, 71, 60, 65, 65, 61, 90, 56, 55, 66, 91, 82, 85, 51, 66, 48, 74, 72, 86, 81, 80, 73, 71, 58, 69, 48, 46, 55, 77, 66, 65, 94, 70, 63, 76, 60, 64, 41, 70, 91, 67, 47, 39, 45, 75, 42, 67, 80, 51, 66, 56, 76, 85, 92, 68, 86, 51, 64, 57, 72, 70, 66, 46, 68, 65, 74, 72, 54, 55, 73, 47, 69, 70, 66, 95, 53, 72, 60, 62, 72, 79, 83, 55, 50, 60, 57, 76, 88, 72, 120, 54, 62, 72, 67, 75, 49, 79, 73, 72, 49, 88, 75, 73, 72, 78, 54, 57, 72, 57, 71, 47, 80, 43, 107, 66, 49, 61, 51, 78, 61, 69, 69, 66, 78, 94, 77, 63, 56, 47, 97, 57, 65, 60, 55, 55, 70, 77, 44, 62, 56, 74, 71, 78, 76, 47, 45, 74, 48, 48, 62, 71, 35, 79, 70, 64, 51, 70, 70, 54, 84, 81, 68, 57, 66, 42, 58, 87, 78, 69, 62, 77, 102, 69, 62, 89, 43, 76, 62, 65, 44, 57, 58, 59, 63, 82, 64, 60, 59, 58, 59, 44, 71, 72, 106, 56, 51, 80, 54, 62, 56, 68, 61, 61, 75, 55, 61, 57, 70, 77, 81, 71, 75, 62, 52, 80, 69, 64, 68, 61, 56, 49, 54, 74, 74, 57, 43, 64, 102, 70, 65, 48, 80, 49, 54, 61, 57, 52, 53, 66, 82, 59, 83, 103, 69, 62, 49, 69, 52, 63, 61, 72, 46, 61, 54, 77, 54, 39, 54, 47, 59, 77, 62, 64, 66, 70, 52, 67, 60, 85, 99, 83, 79, 54, 77, 85, 49, 59, 71, 80, 65, 77, 62, 48, 71, 47, 71, 45, 67, 93, 62, 81, 66, 47, 66, 60, 73, 67, 61, 79, 64, 73, 80, 62, 47, 51, 63, 55, 55, 59, 117, 62, 53, 53, 41, 78, 77, 52, 81, 51, 88, 55, 64, 52, 70, 54, 66, 57, 73, 65, 71, 70, 51, 89, 48, 108, 104, 69, 69, 76, 71, 56, 64, 49, 72, 86, 53, 62, 59, 38, 59, 50, 95, 50, 61, 61, 41, 73, 70, 65, 67, 67, 60, 71, 75, 83, 81, 54, 72, 72, 61, 48, 44, 64, 73, 62, 59, 58, 49, 54, 72, 68, 73, 79, 68, 70, 80, 68, 61, 48, 66, 68, 47, 57, 68, 57, 55, 84, 50, 94, 55, 51, 57, 50, 52, 68, 67, 57, 70, 71, 63, 57, 61, 67, 66, 58, 70, 63, 52, 53, 85, 96, 55, 82, 72, 65, 61, 57, 55, 73, 76, 60, 86, 47, 67, 45, 76, 92, 67, 63, 53, 92, 52, 51, 50, 47, 80, 81, 74, 46, 55, 66, 116, 68, 56, 130, 56, 60, 55, 57, 60, 88, 96, 47, 61, 77, 63, 67, 48, 70, 71, 58, 86, 71, 54, 72, 61, 47, 52, 55, 57, 107, 69, 68, 46, 67, 66, 64, 65, 53, 64, 71, 66, 59, 67, 71, 65, 76, 58, 42, 112, 59, 47, 63, 51, 73, 126, 62, 72, 63, 51, 63, 64, 79, 85, 60, 38, 70, 62, 55, 50, 52, 67, 49, 86, 62, 65, 66, 71, 64, 60, 57, 66, 66, 63, 76, 72, 69, 65, 47, 56, 46, 68, 61, 51, 72, 52, 41, 65, 67, 45, 91, 66, 64, 63, 55, 61, 38, 63, 80, 71, 54, 46, 74, 59, 108, 56, 76, 76, 79, 47, 86, 61, 57, 53, 56, 54, 63, 59, 82, 68, 63, 109, 76, 85, 46, 53, 58, 83, 66, 72, 76, 47, 65, 56, 103, 52, 68, 82, 58, 58, 52, 71, 61, 65, 70, 66, 86, 99, 76, 64, 46, 82, 71, 72, 57, 60, 67, 61, 59, 52, 102, 54, 49, 53, 60, 85, 75, 70, 58, 57, 28, 65, 59, 63, 78, 57, 58, 71, 66, 52, 66, 74, 45, 93, 71, 69, 51, 59, 76, 57, 55, 87, 72, 54, 90, 56, 63, 48, 80, 55, 73, 61, 72, 80, 64, 66, 53, 47, 59, 68, 66, 59, 95, 77, 79, 69, 52, 82, 56, 80, 90, 49, 58, 64, 57, 90, 54, 67, 54, 76, 108, 131, 81, 79, 83, 65, 50, 82, 113, 69, 81, 67, 59, 46, 44, 59, 55, 74, 54, 75, 64, 47, 44, 53, 48, 59, 62, 58, 60, 70, 69, 67, 71, 61, 74, 69, 74, 73, 62, 63, 48, 66, 61, 53, 68, 51, 67, 83, 71, 70, 67, 67, 58, 76, 63, 58, 89, 62, 54, 55, 72, 93, 93, 71, 65, 70, 69, 53, 74, 79, 71, 82, 55, 76, 57, 66, 65, 49, 74, 76, 74, 82, 70, 58, 52, 79, 71, 54, 57, 71, 106, 93, 69, 79, 67, 72, 63, 82, 56, 60, 57, 79, 51, 59, 76, 62, 49, 92, 66, 66, 67, 56, 66, 100, 67, 73, 56, 60, 61, 60, 76, 64, 67, 49, 65, 59, 62, 65, 32, 55, 59, 88, 64, 62, 66, 83, 67, 56, 63, 67, 56, 57, 77, 99, 82, 70, 59, 57, 54, 81, 65, 56, 58, 61, 56, 82, 52, 65, 81, 112, 72, 64, 60, 73, 38, 57, 55, 71, 87, 76, 93, 57, 64, 75, 63, 57, 45, 68, 60, 67, 107, 58, 82, 49, 40, 89, 101, 77, 82, 65, 65, 63, 66, 70, 66, 57, 61, 80, 76, 75, 65, 59, 60, 69, 93, 112, 72, 102, 63, 55, 79, 41, 79, 78, 62, 73, 87, 44, 51, 74, 44, 59, 101, 56, 62, 55, 78, 56, 118, 127, 58, 66, 63, 70, 64, 69, 57, 52, 76, 92, 71, 66, 76, 64, 41, 53, 68, 67, 66, 44, 71, 43, 49, 64, 72, 43, 66, 71, 85, 105, 78, 70, 99, 74, 71, 112, 49, 63, 59, 45, 55, 70, 46, 72, 62, 75, 88, 74, 53, 87, 96, 41, 45, 62, 50, 81, 71, 65, 65, 58, 45, 54, 63, 80, 60, 55, 61, 52, 62, 73, 52, 62, 73, 74, 52, 57, 57, 60, 65, 54, 67, 59, 87, 66, 44, 86, 81, 48, 78, 55, 50, 47, 67, 89, 66, 58, 65, 56, 85, 75, 75, 47, 40, 74, 63, 61, 67, 66, 71, 77, 44, 65, 70, 64, 56, 50, 102, 41, 56, 60, 86, 63, 51, 62, 81, 46, 74, 87, 71, 71, 61, 93, 64, 57, 64, 43, 64, 55, 70, 50, 60, 72, 83, 77, 81, 93, 131, 59, 62, 75, 52, 60, 81, 77, 50, 79, 70, 48, 78, 92, 57, 47, 109, 78, 82, 71, 62, 81, 53, 70, 63, 80, 69, 53, 68, 66, 65, 42, 43, 93, 72, 54, 66, 66, 62, 105, 70, 89, 79, 63, 80, 56, 55, 60, 71, 55, 55, 67, 52, 74, 68, 65, 68, 61, 69, 67, 79, 62, 69, 52, 56, 65, 82, 78, 45, 72, 84, 72, 74, 59, 56, 80, 63, 87, 64, 73, 72, 65, 63, 70, 58, 83, 63, 68, 69, 50, 57, 82, 53, 75, 73, 100, 58, 65, 55, 71, 88, 65, 64, 76, 67, 62, 72, 70, 59, 55, 53, 49, 52, 58, 100, 100, 62, 53, 79, 57, 57, 65, 83, 77, 56, 83, 76, 76, 65, 60, 63, 86, 72, 77, 64, 59, 67, 55, 52, 50, 52, 69, 59, 47, 70, 81, 72, 71, 56, 71, 83, 79, 48, 55, 58, 59, 65, 53, 67, 34, 91, 51, 56, 59, 103, 66, 45, 76, 57, 89, 81, 92, 78, 54, 64, 69, 62, 71, 72, 67, 57, 61, 95, 75, 72, 73, 64, 41, 79, 69, 73, 62, 82, 63, 62, 69, 62, 84, 59, 82, 43, 69, 82, 63, 61, 62, 71, 62, 55, 72, 84, 66, 50, 50, 80, 56, 66, 49, 56, 60, 68, 58, 77, 91, 50, 47, 60, 79, 87, 47, 54, 84, 55, 68, 64, 63, 72, 75, 92, 83, 57, 74, 80, 90, 57, 57, 68, 69, 61, 58, 80, 60, 67, 94, 68, 82, 66, 74, 72, 63, 88, 56, 98, 50, 86, 58, 60, 50, 53, 62, 79, 88, 47, 66, 57, 53, 83, 86, 69, 49, 65, 71, 69, 71, 61, 99, 68, 70, 97, 52, 71, 71, 44, 57, 48, 48, 72, 78, 60, 84, 64, 56, 56, 72, 82, 67, 62, 68, 60, 65, 61, 58, 53, 51, 56, 64, 58, 69, 70, 83, 87, 77, 70, 74, 70, 48, 65, 73, 72, 73, 104, 43, 60, 41, 60, 80, 39, 56, 70, 69, 49, 67, 72, 57, 89, 80, 74, 83, 88, 67, 69, 71, 67, 77, 70, 67, 74, 68, 63, 74, 66, 71, 49, 58, 67, 68, 51, 87, 63, 56, 58, 39, 60, 69, 87, 73, 51, 68, 41, 53, 76, 67, 55, 80, 87, 71, 45, 75, 39, 66, 46, 41, 52, 69, 96, 43, 42, 63, 76, 57, 83, 63, 115, 72, 66, 49, 60, 60, 59, 110, 74, 79, 52, 50, 86, 63, 47, 99, 54, 85, 51, 64, 43, 59, 99, 68, 74, 71, 66, 59, 71, 60, 54, 102, 50, 56, 51, 68, 95, 71, 67, 56, 64, 48, 63, 68, 62, 51, 55, 69, 50, 48, 57, 50, 70, 59, 67, 48, 71, 84, 60, 59, 71, 64, 69, 63, 62, 65, 62, 48, 65, 62, 69, 68, 73, 50, 60, 58, 62, 68, 66, 76, 71, 65, 55, 48, 62, 76, 68, 70, 70, 69, 64, 66, 48, 74, 37, 81, 50, 58, 61, 85, 61, 76, 67, 61, 84, 65, 75, 63, 50, 64, 54, 45, 51, 70, 59, 62, 33, 65, 51, 67, 74, 45, 60, 63, 45, 57, 64, 66, 73, 75, 62, 82, 67, 57, 42, 71, 76, 79, 60, 56, 64, 69, 52, 56, 53, 89, 60, 57, 54, 90, 66, 79, 64, 60, 67, 81, 74, 69, 55, 57, 86, 66, 61, 63, 67, 69, 68, 65, 51, 83, 68, 65, 66, 48, 63, 57, 61, 74, 51, 52, 75, 63, 58, 64, 55, 69, 67, 67, 74, 61, 70, 43, 70, 55, 71, 68, 74, 64, 89, 66, 63, 71, 32, 58, 77, 76, 65, 59, 58, 98, 56, 63, 58, 54, 49, 103, 57, 77, 60, 58, 58, 55, 70, 77, 44, 53, 54, 91, 62, 66, 108, 68, 74, 61, 71, 68, 51, 68, 155, 58, 82, 74, 100, 59, 81, 75, 76, 71, 56, 64, 78, 71, 50, 77, 53, 85, 63, 58, 89, 67, 63, 55, 63, 56, 82, 62, 72, 71, 55, 79, 62, 80, 64, 66, 73, 72, 54, 88, 63, 83, 65, 80, 41, 67, 66, 103, 58, 68, 74, 57, 74, 84, 62, 65, 45, 56, 85, 69, 61, 54, 71, 66, 62, 73, 100, 55, 73, 81, 67, 93, 62, 47, 50, 79, 74, 61, 59, 61, 61, 61, 82, 74, 65, 68, 55, 70, 53, 52, 41, 65, 82, 61, 60, 62, 55, 78, 44, 64, 75, 116, 52, 54, 90, 64, 65, 64, 83, 52, 84, 52, 66, 68, 68, 57, 66, 59, 56, 60, 73, 56, 52, 67, 48, 102, 47, 65, 54, 47, 55, 72, 53, 70, 57, 55, 54, 94, 77, 61, 66, 62, 52, 62, 84, 54, 72, 64, 63, 84, 68, 86, 62, 66, 75, 70, 61, 61, 57, 77, 63, 54, 65, 58, 64, 67, 75, 69, 70, 60, 43, 53, 65, 84, 88, 61, 79, 61, 49, 48, 79, 52, 73, 64, 60, 64, 69, 51, 56, 69, 69, 46, 72, 78, 70, 59, 82, 106, 74, 80, 78, 77, 96, 72, 69, 54, 80, 78, 63, 45, 66, 66, 61, 74, 62, 98, 40, 65, 80, 84, 61, 58, 70, 58, 77, 56, 67, 60, 71, 82, 76, 57, 71, 56, 78, 63, 55, 82, 56, 54, 60, 76, 72, 66, 66, 70, 64, 70, 64, 58, 49, 70, 66, 73, 71, 60, 66, 62, 50, 69, 80, 80, 62, 74, 61, 88, 69, 50, 63, 67, 48, 67, 59, 72, 70, 67, 54, 62, 53, 64, 55, 82, 51, 62, 68, 41, 71, 51, 54, 67, 70, 73, 49, 79, 68, 60, 57, 53, 54, 56, 67, 69, 58, 67, 60, 52, 71, 77, 65, 42, 53, 70, 57, 85, 63, 63, 64, 58, 92, 75, 46, 65, 59, 64, 81, 78, 73, 52, 60, 121, 68, 117, 55, 70, 63, 70, 59, 50, 53, 74, 62, 76, 117, 51, 59, 91, 62, 73, 53, 59, 59, 62, 84, 58, 52, 88, 48, 92, 62, 84, 63, 51, 55, 70, 57, 68, 76, 71, 67, 62, 60, 75, 48, 61, 68, 65, 51, 75, 73, 56, 46, 78, 60, 52, 57, 70, 76, 81, 65, 78, 55, 56, 75, 65, 79, 65, 84, 64, 78, 46, 71, 52, 38, 61, 37, 77, 57, 66, 62, 83, 66, 34, 58, 57, 64, 66, 56, 92, 72, 67, 62, 57, 73, 107, 68, 82, 78, 67, 69, 73, 63, 67, 70, 69, 66, 53, 45, 68, 60, 49, 63, 57, 63, 61, 89, 57, 79, 52, 66, 57, 82, 59, 65, 71, 58, 80, 66, 73, 56, 72, 66, 58, 62, 74, 87, 57, 79, 62, 54, 92, 61, 74, 75, 40, 54, 55, 65, 85, 74, 80, 61, 62, 47, 94, 71, 59, 62, 67, 80, 56, 67, 59, 70, 54, 70, 70, 44, 49, 88, 94, 53, 70, 67, 62, 78, 48, 81, 77, 62, 67, 63, 76, 60, 54, 55, 68, 61, 67, 69, 74, 70, 65, 58, 56, 61, 64, 60, 51, 70, 53, 77, 58, 64, 49, 77, 70, 64, 55, 64, 55, 68, 44, 62, 59, 70, 64, 69, 66, 73, 67, 56, 84, 59, 70, 75, 81, 66, 65, 66, 64, 59, 62, 48, 62, 79, 58, 74, 48, 74, 55, 68, 58, 58, 81, 65, 70, 76, 62, 58, 70, 64, 96, 64, 91, 84, 60, 73, 63, 57, 57, 86, 51, 85, 90, 72, 71, 53, 50, 70, 80, 69, 39, 58, 57, 66, 73, 56, 82, 60, 58, 48, 65, 77, 53, 53, 97, 58, 62, 66, 67, 55, 63, 91, 97, 63, 51, 65, 84, 73, 69, 75, 56, 74, 71, 60, 90, 65, 115, 57, 62, 88, 72, 69, 63, 92, 56, 92, 34, 70, 55, 69, 65, 62, 42, 57, 69, 49, 76, 54, 56, 66, 57, 92, 50, 62, 66, 79, 75, 60, 98, 70, 57, 84, 57, 53, 65, 52, 66, 106, 50, 64, 68, 68, 100, 54, 45, 52, 62, 77, 73, 51, 84, 54, 65, 81, 56, 63, 66, 47, 55, 61, 79, 48, 74, 71, 76, 70, 57, 71, 58, 69, 60, 73, 84, 88, 60, 73, 57, 56, 87, 61, 43, 50, 69, 53, 59, 67, 48, 98, 58, 65, 78, 88, 53, 60, 59, 73, 75, 58, 76, 73, 76, 81, 54, 57, 66, 59, 71, 68, 57, 54, 63, 67, 59, 68, 63, 61, 52, 59, 63, 52, 70, 59, 48, 78, 56, 64, 77, 68, 67, 48, 69, 35, 69, 48, 44, 53, 60, 97, 56, 48, 59, 83, 70, 76, 72, 105, 44, 53, 49, 69, 57, 58, 107, 64, 82, 57, 65, 84, 87, 59, 114, 66, 83, 53, 74, 61, 77, 101, 60, 57, 62, 66, 57, 79, 52, 60, 109, 61, 67, 42, 65, 67, 62, 52, 46, 47, 60, 66, 52, 68, 47, 54, 66, 46, 68, 56, 58, 68, 54, 71, 38, 66, 68, 55, 57, 64, 76, 72, 61, 73, 63, 71, 62, 75, 68, 76, 72, 64, 71, 60, 58, 78, 71, 69, 72, 68, 64, 48, 75, 44, 71, 67, 85, 80, 66, 89, 39, 78, 61, 56, 60, 38, 66, 67, 68, 60, 71, 59, 49, 57, 49, 74, 68, 51, 65, 65, 54, 55, 56, 59, 61, 59, 59, 52, 59, 61, 56, 65, 56, 51, 67, 65, 76, 70, 79, 75, 66, 64, 56, 45, 68, 53, 59, 68, 74, 65, 61, 66, 51, 47, 69, 57, 56, 69, 82, 52, 44, 72, 54, 60, 75, 56, 61, 59, 62, 86, 64, 45, 65, 67, 69, 95, 58, 47, 72, 72, 52, 66, 47, 73, 78, 64, 80, 36, 79, 67, 61, 63, 68, 68, 54, 93, 76, 66, 53, 63, 58, 58, 66, 71, 65, 59, 56, 88, 67, 58, 62, 115, 77, 71, 71, 74, 82, 56, 80, 68, 65, 48, 51, 62, 105, 68, 70, 45, 68, 60, 53, 61, 81, 52, 71, 63, 76, 63, 68, 101, 61, 72, 57, 85, 64, 74, 63, 158, 61, 85, 77, 102, 59, 53, 86, 71, 58, 61, 65, 64, 63, 46, 54, 64, 81, 58, 56, 86, 71, 55, 63, 61, 49, 90, 47, 79, 58, 50, 67, 60, 99, 68, 76, 58, 57, 47, 96, 62, 59, 77, 75, 37, 57, 80, 109, 51, 78, 76, 53, 77, 82, 72, 65, 69, 71, 71, 58, 66, 63, 65, 65, 47, 86, 104, 52, 68, 49, 70, 105, 63, 52, 45, 82, 57, 63, 59, 82, 73, 66, 65, 72, 59, 66, 71, 57, 64, 68, 54, 57, 56, 74, 75, 70, 61, 80, 56, 52, 68, 117, 61, 52, 67, 54, 76, 58, 68, 57, 76, 65, 63, 53, 66, 60, 101, 54, 53, 61, 57, 54, 47, 58, 56, 86, 64, 63, 57, 63, 50, 80, 65, 87, 79, 60, 62, 88, 68, 56, 79, 80, 50, 55, 85, 60, 70, 68, 76, 78, 76, 87, 77, 68, 82, 70, 52, 69, 73, 81, 58, 71, 68, 68, 64, 69, 75, 67, 53, 69, 65, 64, 61, 65, 83, 53, 60, 69, 53, 60, 93, 64, 103, 69, 59, 58, 76, 55, 51, 77, 64, 60, 64, 61, 48, 50, 77, 100, 84, 71, 53, 74, 89, 53, 51, 60, 61, 58, 67, 49, 75, 72, 62, 48, 45, 66, 42, 53, 71, 80, 54, 62, 49, 69, 67, 60, 61, 69, 63, 67, 60, 73, 62, 43, 74, 73, 55, 79, 67, 72, 61, 69, 80, 76, 68, 75, 46, 74, 61, 60, 65, 60, 71, 62, 88, 61, 67, 70, 64, 61, 62, 75, 66, 84, 57, 101, 56, 49, 60, 70, 60, 63, 57, 59, 65, 57, 61, 68, 59, 59, 66, 64, 66, 56, 51, 45, 81, 61, 61, 62, 70, 72, 58, 64, 63, 83, 52, 66, 45, 56, 64, 50, 47, 73, 63, 52, 55, 67, 45, 55, 74, 64, 69, 87, 77, 61, 65, 59, 72, 63, 51, 53, 60, 70, 79, 100, 62, 77, 70, 136, 73, 137, 61, 76, 62, 67, 67, 46, 58, 78, 60, 74, 108, 55, 59, 65, 63, 69, 55, 60, 46, 77, 70, 63, 73, 89, 62, 77, 63, 100, 34, 57, 44, 70, 63, 78, 74, 81, 86, 57, 50, 72, 60, 94, 62, 61, 65, 64, 64, 72, 74, 86, 71, 46, 64, 65, 80, 88, 56, 77, 78, 57, 66, 65, 69, 90, 88, 70, 68, 65, 64, 70, 62, 78, 64, 46, 74, 60, 49, 81, 64, 52, 54, 67, 67, 69, 66, 54, 61, 57, 64, 63, 63, 74, 56, 74, 95, 70, 94, 69, 59, 56, 67, 67, 62, 71, 62, 47, 82, 60, 72, 64, 51, 69, 71, 52, 70, 53, 53, 62, 65, 57, 61, 60, 70, 69, 78, 72, 91, 68, 64, 54, 61, 55, 57, 55, 78, 70, 59, 65, 67, 63, 80, 67, 54, 68, 62, 64, 59, 67, 97, 82, 91, 70, 60, 67, 68, 75, 74, 49, 57, 48, 59, 62, 94, 85, 65, 71, 37, 66, 62, 49, 65, 65, 71, 76, 71, 64, 71, 61, 80, 71, 63, 65, 78, 60, 64, 61, 70, 60, 62, 82, 48, 71, 69, 63, 84, 67, 64, 64, 58, 67, 53, 69, 76, 64, 71, 53, 123, 69, 51, 62, 61, 58, 63, 74, 67, 93, 56, 56, 64, 78, 50, 73, 66, 69, 53, 73, 57, 61, 63, 71, 64, 55, 70, 56, 68, 67, 63, 67, 73, 52, 73, 61, 67, 64, 66, 64, 61, 99, 81, 55, 61, 74, 75, 73, 68, 50, 49, 75, 68, 62, 79, 68, 65, 64, 73, 92, 66, 64, 73, 45, 60, 65, 69, 63, 118, 56, 66, 65, 46, 54, 62, 70, 120, 69, 54, 61, 71, 70, 61, 85, 70, 60, 63, 70, 70, 59, 56, 76, 70, 55, 53, 77, 82, 71, 58, 56, 51, 63, 68, 71, 73, 75, 60, 67, 64, 66, 59, 86, 59, 70, 66, 73, 49, 55, 70, 50, 60, 57, 66, 51, 55, 59, 56, 60, 77, 58, 74, 64, 65, 65, 57, 63, 65, 74, 63, 86, 61, 56, 58, 70, 59, 78, 77, 71, 58, 65, 88, 61, 57, 93, 78, 63, 52, 58, 92, 66, 71, 73, 67, 57, 68, 60, 57, 74, 88, 59, 60, 117, 69, 53, 72, 65, 58, 55, 81, 67, 85, 69, 51, 64, 59, 64, 65, 63, 71, 73, 65, 73, 73, 60, 52, 74, 76, 71, 57, 76, 54, 57, 63, 69, 68, 69, 62, 70, 85, 51, 62, 57, 62, 43, 78, 61, 62, 62, 67, 47, 56, 56, 58, 72, 65, 48, 65, 56, 70, 67, 61, 68, 49, 43, 61, 64, 79, 82, 54, 66, 53, 74, 64, 67, 70, 69, 67, 88, 66, 64, 55, 65, 54, 61, 76, 77, 63, 47, 68, 82, 50, 62, 79, 70, 90, 69, 58, 55, 60, 62, 57, 57, 76, 57, 79, 68, 57, 83, 46, 58, 63, 67, 55, 59, 57, 58, 61, 64, 59, 55, 61, 68, 56, 69, 65, 62, 68, 68, 86, 67, 59, 70, 66, 72, 86, 66, 60, 68, 63, 67, 77, 57, 56, 62, 68, 68, 62, 63, 70, 52, 64, 61, 75, 64, 59, 67, 64, 129, 70, 75, 67, 61, 54, 64, 63, 80, 72, 66, 58, 60, 66, 68, 66, 60, 57, 50, 66, 58, 67, 65, 63, 76, 58, 65, 64, 65, 65, 71, 60, 66, 64, 73, 84, 57, 65, 70, 57, 58, 66, 65, 59, 65, 68, 59, 56, 71, 55, 62, 59, 62, 98, 87, 87, 54, 76, 72, 65, 62, 57, 64, 57, 71, 58, 57, 71, 59, 62, 66, 102, 65, 76, 68, 51, 64, 57, 49, 52, 64, 58, 80, 67, 69, 45, 54, 55, 72, 78, 59, 56, 72, 60, 66, 64, 64, 100, 56, 69, 49, 73, 49, 65, 53, 83, 70, 61, 76, 61, 72, 84, 54, 53, 57, 50, 52, 73, 71, 86, 56, 59, 63, 56, 67, 66, 95, 76, 72, 55, 47, 93, 92, 66, 59, 53, 68, 70, 63, 65, 60, 78, 69, 62, 60, 55, 67, 60, 64, 72, 54, 67, 53, 74, 56, 64, 77, 73, 67, 63, 74, 53, 59, 65, 63, 53, 63, 62, 59, 42, 65, 55, 59, 52, 55, 62, 72, 63, 55, 57, 58, 72, 87, 68, 64, 55, 77, 59, 60, 65, 53, 60, 79, 63, 69, 62, 81, 60, 57, 54, 45, 61, 75, 74, 63, 87, 73, 45, 76, 87, 66, 58, 67, 80, 51, 62, 71, 56, 85, 66, 78, 67, 61, 57, 73, 57, 56, 55, 80, 61, 75, 64, 66, 75, 47, 74, 81, 79, 60, 65, 61, 63, 68, 61, 59, 58, 72, 68, 85, 122, 53, 51, 84, 67, 73, 75, 70, 69, 64, 77, 61, 46, 71, 54, 83, 59, 78, 61, 63, 56, 63, 70, 55, 63, 64, 59, 37, 59, 90, 68, 68, 53, 58, 49, 55, 69, 65, 98, 69, 59, 52, 46, 64, 64, 56, 69, 62, 65, 97, 62, 50, 42, 67, 54, 63, 71, 66, 79, 75, 54, 60, 63, 68, 54, 63, 71, 103, 67, 61, 67, 52, 52, 64, 72, 59, 89, 77, 59, 66, 58, 82, 70, 57, 71, 64, 75, 91, 63, 84, 62, 86, 65, 51, 66, 74, 53, 82, 60, 63, 58, 54, 70, 74, 56, 78, 60, 66, 50, 64, 49, 64, 65, 85, 60, 63, 63, 70, 59, 67, 50, 60, 82, 75, 61, 58, 59, 69, 73, 60, 64, 63, 66, 79, 49, 66, 70, 63, 61, 64, 91, 80, 53, 52, 61, 74, 57, 62, 65, 68, 78, 73, 54, 80, 99, 56, 68, 71, 68, 58, 55, 70, 60, 55, 64, 54, 55, 57, 59, 69, 62, 60, 55, 84, 67, 62, 56, 82, 50, 57, 69, 57, 78, 62, 66, 66, 84, 57, 58, 61, 84, 63, 59, 56, 66, 69, 50, 58, 92, 60, 63, 74, 54, 50, 73, 56, 68, 62, 76, 64, 57, 58, 81, 66, 68, 66, 59, 59, 56, 58, 59, 62, 76, 67, 87, 64, 61, 64, 55, 67, 62, 73, 68, 69, 65, 52, 60, 61, 80, 60, 54, 60, 63, 60, 68, 64, 131, 70, 61, 65, 82, 63, 54, 69, 57, 67, 71, 65, 64, 57, 83, 68, 52, 68, 71, 62, 79, 81, 81, 69, 66, 56, 68, 68, 68, 67, 60, 63, 86, 165, 76, 51, 50, 53, 71, 100, 52, 67, 55, 70, 67, 61, 85, 66, 62, 64, 62, 63, 60, 60, 59, 77, 60, 58, 66, 61, 59, 65, 58, 62, 55, 64, 74, 55, 78, 59, 61, 73, 63, 63, 56, 55, 51, 55, 81, 64, 61, 69, 69, 45, 62, 64, 51, 88, 68, 90, 51, 70, 62, 79, 53, 61, 70, 84, 44, 62, 63, 79, 62, 56, 51, 48, 70, 49, 55, 55, 72, 93, 71, 89, 77, 72, 48, 80, 62, 41, 61, 91, 54, 60, 74, 82, 67, 97, 94, 82, 89, 63, 74, 52, 71, 44, 90, 61, 82, 68, 90, 77, 50, 75, 61, 51, 49, 51, 54, 31, 73, 56, 84, 58, 54, 86, 67, 49, 51, 74, 58, 68, 76, 71, 53, 75, 80, 95, 57, 77, 98, 82, 80, 100, 48, 52, 75, 66, 61, 70, 70, 54, 59, 73, 57, 54, 36, 57, 53, 62, 67, 129, 61, 59, 75, 71, 71, 88, 81, 76, 72, 65, 64, 62, 98, 74, 69, 70, 70, 80, 69, 61, 60, 55, 51, 58, 81, 44, 81, 60, 84, 81, 74, 57, 68, 65, 93, 58, 56, 84, 49, 71, 53, 70, 62, 66, 72, 66, 40, 98, 63, 35, 77, 133, 50, 48, 53, 70, 65, 57, 85, 61, 63, 55, 88, 72, 60, 73, 63, 64, 77, 61, 63, 58, 64, 82, 54, 73, 62, 81, 50, 84, 44, 56, 54, 65, 38, 68, 67, 67, 70, 65, 97, 55, 52, 89, 66, 62, 62, 60, 65, 75, 81, 52, 74, 45, 68, 76, 60, 54, 32, 64, 102, 57, 49, 61, 40, 56, 42, 79, 53, 79, 45, 65, 50, 55, 71, 50, 63, 62, 52, 89, 41, 35, 36, 67, 73, 72, 59, 45, 53, 79, 93, 50, 90, 58, 41, 62, 50, 54, 64, 68, 89, 76, 68, 74, 98, 72, 58, 45, 56, 60, 48, 57, 70, 51, 71, 62, 102, 79, 55, 58, 90, 66, 73, 81, 70, 89, 50, 50, 53, 64, 62, 79, 49, 51, 66, 54, 88, 79, 58, 63, 39, 56, 49, 115, 70, 75, 68, 69, 67, 66, 102, 55, 74, 63, 83, 67, 72, 68, 102, 66, 54, 100, 91, 78, 55, 53, 135, 63, 54, 74, 45, 73, 69, 66, 93, 50, 51, 62, 74, 65, 39, 33, 51, 62, 52, 79, 84, 52, 54, 54, 65, 63, 64, 72, 107, 69, 56, 58, 59, 50, 71, 96, 48, 64, 54, 66, 77, 63, 98, 60, 92, 89, 52, 39, 77, 72, 58, 53, 61, 84, 61, 123, 58, 61, 84, 70, 75, 63, 48, 73, 95, 87, 73, 72, 56, 66, 72, 70, 62, 80, 71, 78, 52, 62, 52, 67, 70, 56, 85, 58, 136, 77, 77, 66, 61, 54, 59, 92, 79, 82, 86, 80, 93, 58, 74, 60, 85, 46, 93, 60, 38, 44, 61, 62, 78, 51, 64, 77, 65, 32, 67, 64, 59, 54, 60, 67, 79, 62, 83, 78, 44, 48, 48, 51, 77, 51, 59, 41, 70, 77, 64, 75, 76, 69, 58, 90, 78, 62, 69, 63, 71, 75, 74, 66, 61, 63, 78, 67, 33, 53, 42, 68, 74, 53, 56, 84, 63, 44, 53, 66, 80, 83, 90, 99, 78, 64, 63, 60, 63, 62, 60, 51, 91, 62, 55, 66, 75, 52, 58, 58, 64, 50, 74, 37, 68, 86, 88, 58, 47, 61, 54, 60, 91, 48, 80, 63, 63, 66, 53, 57, 72, 55, 65, 51, 69, 76, 43, 47, 87, 54, 76, 45, 54, 59, 77, 64, 63, 71, 63, 76, 74, 80, 65, 52, 78, 60, 73, 59, 67, 96, 106, 60, 33, 86, 68, 82, 53, 76, 64, 60, 74, 65, 59, 52, 51, 59, 59, 89, 60, 60, 106, 59, 63, 79, 80, 46, 66, 49, 88, 80, 63, 61, 67, 60, 85, 75, 69, 77, 72, 49, 55, 70, 70, 50, 67, 87, 31, 73, 53, 66, 54, 50, 90, 57, 58, 80, 61, 49, 54, 64, 65, 59, 66, 69, 58, 65, 61, 63, 59, 71, 36, 71, 79, 78, 74, 57, 98, 68, 83, 67, 50, 75, 88, 67, 52, 86, 82, 55, 61, 50, 61, 58, 92, 80, 56, 59, 54, 66, 61, 85, 73, 78, 84, 56, 90, 91, 49, 70, 45, 74, 69, 70, 63, 56, 71, 81, 62, 68, 69, 79, 105, 69, 56, 62, 62, 65, 64, 65, 71, 88, 73, 59, 67, 63, 52, 52, 80, 50, 126, 61, 91, 44, 69, 52, 56, 84, 80, 77, 76, 56, 74, 62, 90, 62, 52, 52, 56, 70, 59, 78, 76, 55, 42, 70, 51, 123, 82, 90, 57, 53, 66, 97, 48, 59, 78, 58, 92, 73, 59, 127, 65, 52, 62, 58, 85, 57, 48, 41, 70, 46, 106, 41, 87, 67, 74, 72, 71, 64, 53, 65, 83, 71, 82, 54, 45, 79, 71, 51, 76, 51, 75, 52, 72, 50, 37, 88, 99, 70, 57, 62, 73, 72, 37, 63, 64, 50, 84, 75, 47, 49, 98, 73, 69, 105, 47, 68, 79, 74, 54, 53, 63, 48, 62, 65, 90, 53, 73, 49, 90, 92, 55, 58, 54, 54, 68, 74, 115, 56, 53, 87, 67, 51, 67, 63, 92, 64, 75, 57, 69, 70, 66, 75, 75, 57, 96, 84, 72, 70, 58, 80, 67, 57, 88, 52, 62, 59, 62, 67, 80, 42, 99, 56, 57, 76, 60, 63, 88, 81, 97, 75, 60, 51, 85, 66, 70, 69, 71, 71, 50, 60, 75, 65, 35, 81, 57, 79, 92, 59, 71, 77, 52, 61, 96, 64, 32, 57, 88, 60, 50, 53, 49, 79, 84, 51, 52, 61, 58, 41, 63, 78, 95, 47, 58, 71, 49, 72, 56, 72, 109, 58, 59, 68, 77, 59, 58, 70, 72, 57, 70, 88, 62, 58, 42, 61, 82, 120, 56, 58, 43, 68, 72, 57, 67, 62, 61, 116, 40, 41, 82, 66, 56, 52, 54, 63, 51, 59, 98, 69, 89, 98, 76, 51, 69, 96, 77, 77, 68, 62, 67, 69, 68, 60, 57, 53, 57, 65, 67, 80, 76, 59, 72, 31, 62, 119, 53, 75, 58, 64, 21, 93, 73, 76, 61, 90, 59, 75, 72, 71, 61, 66, 55, 85, 47, 60, 67, 74, 74, 47, 88, 62, 66, 71, 91, 52, 64, 64, 50, 68, 60, 71, 53, 64, 68, 81, 76, 53, 77, 87, 48, 60, 59, 82, 109, 70, 48, 67, 78, 74, 58, 85, 69, 54, 59, 76, 69, 73, 57, 66, 142, 57, 60, 72, 71, 54, 66, 61, 70, 76, 55, 56, 67, 76, 33, 66, 45, 90, 90, 69, 37, 73, 62, 73, 67, 58, 105, 48, 46, 65, 100, 78, 56, 54, 88, 52, 73, 75, 56, 80, 79, 62, 48, 62, 72, 51, 49, 68, 68, 50, 73, 59, 61, 49, 57, 58, 72, 68, 46, 53, 51, 79, 68, 58, 63, 62, 62, 56, 70, 90, 51, 57, 57, 42, 70, 50, 64, 67, 64, 61, 74, 43, 51, 75, 70, 89, 61, 78, 84, 68, 65, 67, 56, 76, 74, 56, 71, 50, 64, 42, 77, 54, 102, 99, 72, 68, 81, 74, 75, 100, 58, 45, 75, 48, 51, 65, 76, 74, 62, 68, 60, 49, 50, 63, 53, 58, 57, 68, 58, 51, 66, 49, 53, 77, 60, 64, 68, 70, 43, 70, 63, 53, 44, 62, 74, 63, 54, 65, 63, 65, 72, 52, 48, 71, 61, 84, 49, 59, 111, 168, 49, 95, 46, 73, 56, 62, 72, 48, 56, 44, 66, 61, 58, 52, 44, 66, 53, 77, 73, 55, 48, 42, 71, 54, 53, 62, 69, 58, 57, 67, 64, 62, 64, 75, 68, 57, 89, 51, 50, 68, 52, 64, 55, 51, 57, 147, 72, 74, 39, 63, 69, 81, 47, 64, 72, 105, 77, 67, 60, 74, 63, 56, 74, 72, 75, 63, 49, 72, 97, 62, 60, 100, 60, 68, 61, 67, 67, 61, 86, 77, 70, 89, 73, 41, 94, 67, 66, 60, 62, 46, 50, 60, 69, 69, 76, 58, 70, 68, 56, 53, 73, 123, 88, 66, 54, 49, 59, 65, 58, 84, 68, 78, 61, 62, 67, 127, 66, 68, 57, 60, 75, 52, 86, 62, 51, 47, 60, 61, 54, 88, 63, 73, 64, 87, 73, 68, 59, 54, 75, 71, 89, 74, 63, 63, 64, 62, 62, 53, 77, 65, 55, 69, 111, 53, 47, 57, 64, 63, 71, 90, 77, 67, 70, 61, 77, 52, 60, 60, 60, 80, 64, 59, 46, 56, 61, 72, 50, 90, 72, 45, 72, 48, 53, 64, 59, 48, 56, 98, 55, 65, 83, 57, 49, 87, 70, 61, 70, 64, 51, 70, 62, 51, 72, 59, 65, 91, 68, 54, 75, 58, 124, 81, 59, 80, 60, 103, 59, 56, 60, 91, 69, 50, 53, 57, 80, 65, 65, 67, 56, 60, 66, 82, 58, 95, 58, 46, 72, 89, 55, 70, 58, 65, 53, 74, 42, 73, 79, 79, 102, 63, 89, 65, 69, 52, 95, 72, 55, 55, 65, 67, 71, 43, 61, 63, 50, 63, 65, 59, 63, 67, 121, 55, 43, 77, 69, 59, 76, 53, 58, 62, 59, 59, 62, 56, 73, 62, 55, 57, 59, 63, 41, 55, 61, 54, 69, 73, 58, 54, 80, 56, 70, 51, 112, 73, 59, 60, 62, 62, 75, 53, 86, 61, 70, 52, 63, 48, 60, 75, 65, 68, 75, 102, 48, 66, 55, 52, 47, 66, 71, 60, 64, 68, 59, 66, 59, 52, 56, 58, 64, 48, 57, 71, 65, 65, 56, 69, 65, 65, 58, 61, 87, 84, 82, 68, 49, 53, 74, 59, 73, 50, 79, 80, 72, 56, 65, 64, 74, 71, 40, 97, 67, 92, 55, 69, 70, 74, 61, 77, 69, 71, 66, 84, 60, 63, 53, 53, 75, 55, 53, 82, 62, 64, 70, 60, 58, 67, 55, 66, 60, 89, 67, 45, 63, 92, 58, 46, 56, 56, 58, 78, 55, 76, 88, 67, 71, 66, 86, 75, 71, 50, 72, 53, 43, 76, 47, 74, 67, 61, 70, 90, 47, 70, 54, 84, 34, 59, 39, 58, 62, 52, 65, 67, 51, 72, 70, 56, 79, 57, 62, 61, 77, 84, 64, 47, 58, 59, 72, 49, 56, 52, 80, 56, 51, 75, 60, 64, 52, 66, 45, 59, 47, 64, 78, 43, 69, 62, 79, 43, 61, 87, 54, 57, 70, 48, 77, 51, 71, 57, 109, 65, 63, 74, 70, 66, 58, 101, 55, 59, 61, 67, 61, 79, 69, 85, 54, 48, 69, 44, 64, 55, 62, 54, 71, 119, 84, 61, 75, 59, 66, 91, 69, 67, 48, 48, 69, 73, 49, 77, 63, 62, 65, 88, 48, 66, 58, 65, 73, 71, 61, 67, 55, 61, 62, 73, 58, 90, 51, 64, 51, 89, 55, 75, 59, 62, 63, 71, 64, 88, 59, 73, 72, 56, 80, 42, 62, 100, 57, 64, 65, 87, 96, 65, 53, 49, 53, 59, 47, 60, 51, 58, 73, 60, 63, 72, 62, 64, 84, 68, 74, 60, 47, 78, 99, 47, 74, 85, 73, 69, 54, 63, 67, 123, 73, 57, 60, 62, 61, 73, 91, 49, 70, 72, 72, 59, 60, 67, 57, 68, 82, 74, 71, 58, 60, 57, 46, 64, 48, 103, 54, 55, 71, 46, 66, 83, 98, 74, 50, 68, 62, 67, 105, 63, 75, 69, 54, 60, 62, 101, 66, 33, 79, 55, 67, 86, 72, 68, 37, 68, 83, 56, 85, 51, 64, 62, 68, 86, 81, 69, 71, 67, 49, 61, 46, 72, 83, 59, 58, 78, 55, 67, 57, 112, 63, 71, 62, 78, 64, 86, 90, 47, 60, 71, 80, 74, 78, 68, 66, 41, 75, 70, 50, 50, 58, 73, 73, 90, 87, 68, 69, 84, 50, 82, 62, 65, 57, 49, 56, 112, 53, 90, 67, 62, 59, 84, 61, 67, 70, 113, 59, 60, 57, 83, 66, 60, 80, 42, 50, 61, 46, 68, 49, 65, 47, 70, 78, 59, 117, 70, 83, 57, 82, 118, 55, 80, 67, 47, 62, 70, 69, 54, 104, 71, 50, 74, 84, 61, 61, 72, 53, 50, 68, 47, 59, 55, 59, 73, 67, 55, 76, 65, 59, 79, 75, 45, 59, 49, 63, 62, 86, 43, 45, 102, 52, 61, 67, 57, 79, 68, 46, 80, 87, 76, 59, 71, 49, 47, 73, 70, 71, 47, 60, 71, 55, 49, 58, 57, 73, 68, 46, 75, 53, 83, 61, 51, 52, 73, 71, 82, 73, 77, 48, 64, 55, 56, 74, 51, 39, 54, 118, 56, 70, 104, 75, 73, 82, 57, 89, 66, 70, 69, 67, 71, 63, 63, 57, 96, 61, 71, 37, 63, 61, 48, 54, 63, 66, 105, 54, 63, 73, 49, 77, 71, 80, 52, 83, 57, 79, 65, 69, 65, 72, 68, 133, 83, 59, 67, 69, 64, 51, 71, 62, 63, 73, 53, 54, 62, 77, 49, 60, 57, 61, 61, 61, 52, 49, 70, 53, 58, 51, 75, 48, 78, 68, 45, 53, 63, 57, 72, 70, 67, 102, 59, 59, 68, 87, 75, 77, 56, 70, 89, 60, 72, 64, 60, 74, 75, 65, 58, 68, 82, 55, 52, 82, 77, 41, 87, 73, 86, 65, 69, 68, 56, 75, 63, 32, 57, 50, 67, 69, 72, 52, 68, 56, 71, 60, 79, 61, 69, 63, 67, 44, 47, 66, 54, 56, 69, 71, 92, 66, 68, 88, 72, 47, 74, 80, 65, 61, 61, 64, 50, 64, 59, 61, 61, 93, 76, 37, 55, 54, 87, 61, 79, 78, 33, 62, 51, 59, 63, 70, 59, 98, 78, 60, 64, 68, 64, 54, 70, 60, 75, 64, 65, 54, 76, 66, 43, 58, 41, 79, 78, 67, 55, 63, 58, 73, 47, 94, 55, 78, 107, 78, 47, 46, 52, 96, 67, 61, 36, 61, 55, 69, 77, 57, 67, 76, 62, 62, 42, 73, 82, 50, 60, 73, 48, 59, 67, 50, 55, 55, 63, 64, 40, 60, 79, 64, 58, 102, 82, 106, 69, 46, 87, 55, 65, 80, 65, 52, 61, 50, 50, 53, 60, 74, 55, 83, 63, 73, 60, 66, 71, 82, 74, 60, 47, 69, 80, 62, 65, 53, 57, 81, 73, 65, 71, 64, 74, 58, 76, 63, 69, 90, 79, 39, 50, 57, 87, 57, 63, 60, 64, 74, 72, 77, 116, 82, 50, 64, 55, 87, 73, 78, 70, 71, 63, 72, 58, 90, 77, 60, 55, 78, 65, 109, 64, 70, 78, 78, 57, 62, 75, 66, 67, 68, 84, 69, 109, 35, 61, 71, 86, 66, 96, 105, 90, 62, 70, 63, 52, 82, 72, 52, 56, 73, 69, 65, 86, 69, 71, 50, 48, 64, 68, 71, 72, 54, 58, 68, 56, 55, 67, 67, 63, 68, 74, 82, 79, 69, 56, 60, 60, 52, 62, 32, 97, 60, 61, 93, 63, 81, 65, 56, 71, 61, 66, 58, 61, 82, 49, 72, 66, 86, 79, 59, 42, 40, 54, 68, 72, 61, 62, 56, 58, 133, 66, 60, 78, 74, 41, 61, 70, 65, 86, 53, 80, 68, 59, 57, 46, 62, 81, 88, 76, 57, 69, 60, 67, 67, 69, 82, 71, 78, 73, 72, 59, 69, 51, 71, 65, 55, 83, 83, 68, 62, 48, 61, 60, 59, 45, 67, 59, 64, 80, 63, 91, 53, 59, 93, 56, 66, 58, 71, 101, 79, 76, 85, 76, 52, 47, 52, 63, 69, 56, 78, 80, 68, 55, 108, 53, 56, 67, 57, 48, 71, 72, 77, 75, 48, 52, 35, 47, 48, 77, 63, 84, 67, 54, 61, 58, 63, 66, 71, 47, 56, 54, 50, 56, 54, 58, 75, 65, 80, 52, 55, 71, 81, 66, 42, 73, 76, 47, 72, 69, 60, 71, 74, 58, 90, 76, 51, 56, 90, 70, 53, 41, 49, 55, 65, 62, 81, 71, 66, 64, 49, 58, 73, 81, 54, 62, 59, 69, 77, 71, 52, 68, 41, 54, 66, 39, 53, 32, 76, 58, 67, 73, 45, 87, 52, 59, 70, 52, 77, 60, 43, 68, 52, 74, 63, 93, 74, 68, 36, 55, 85, 63, 64, 72, 63, 103, 73, 75, 47, 70, 73, 98, 72, 63, 84, 71, 65, 96, 51, 42, 68, 60, 54, 73, 61, 67, 70, 68, 59, 48, 57, 49, 60, 170, 80, 59, 66, 70, 48, 56, 52, 70, 50, 57, 64, 68, 73, 59, 34, 57, 87, 60, 63, 53, 64, 58, 82, 62, 71, 59, 85, 61, 60, 72, 61, 57, 55, 57, 50, 57, 72, 60, 72, 59, 81, 81, 57, 72, 91, 59, 88, 52, 68, 65, 63, 79, 69, 60, 69, 73, 61, 71, 74, 71, 81, 73, 85, 60, 83, 65, 44, 79, 61, 66, 111, 67, 77, 57, 87, 60, 86, 52, 51, 66, 43, 75, 67, 55, 63, 76, 58, 71, 72, 54, 65, 62, 67, 81, 92, 71, 79, 53, 57, 48, 61, 61, 44, 74, 66, 56, 73, 58, 73, 67, 52, 68, 47, 65, 51, 78, 64, 58, 54, 50, 93, 57, 89, 67, 70, 68, 51, 70, 87, 52, 74, 78, 74, 76, 51, 62, 65, 77, 58, 63, 59, 53, 78, 95, 67, 58, 98, 63, 84, 62, 63, 75, 59, 48, 50, 70, 61, 73, 81, 85, 54, 62, 91, 81, 53, 66, 59, 84, 68, 62, 44, 51, 45, 45, 68, 54, 67, 50, 80, 65, 66, 61, 106, 50, 74, 75, 52, 70, 61, 66, 54, 61, 57, 85, 83, 77, 74, 56, 87, 95, 54, 65, 64, 66, 65, 63, 64, 64, 74, 69, 83, 56, 93, 66, 79, 55, 75, 97, 71, 68, 81, 74, 88, 73, 60, 65, 62, 53, 81, 66, 75, 77, 45, 60, 66, 55, 75, 55, 56, 53, 41, 60, 60, 57, 78, 52, 61, 85, 74, 82, 95, 54, 53, 72, 51, 56, 49, 54, 56, 68, 81, 60, 34, 77, 88, 63, 57, 35, 47, 55, 95, 50, 70, 74, 66, 62, 47, 66, 71, 81, 94, 103, 69, 66, 51, 42, 87, 68, 79, 54, 74, 67, 48, 81, 87, 62, 80, 39, 91, 48, 67, 63, 60, 82, 49, 66, 56, 72, 86, 57, 62, 66, 68, 109, 63, 68, 72, 71, 62, 77, 50, 65, 88, 68, 52, 48, 64, 87, 71, 61, 52, 61, 72, 61, 60, 51, 49, 60, 68, 77, 73, 95, 64, 58, 85, 54, 65, 49, 77, 71, 67, 69, 62, 56, 56, 50, 68, 55, 53, 56, 71, 50, 66, 60, 65, 76, 85, 53, 66, 61, 81, 91, 60, 69, 56, 63, 65, 49, 79, 78, 73, 51, 83, 74, 65, 66, 70, 51, 71, 81, 76, 67, 87, 79, 70, 46, 53, 66, 76, 53, 65, 61, 97, 78, 71, 79, 59, 85, 62, 47, 65, 64, 62, 48, 62, 71, 85, 70, 56, 84, 71, 90, 61, 52, 56, 52, 140, 108, 81, 100, 74, 81, 60, 45, 84, 114, 59, 56, 55, 93, 61, 71, 59, 61, 67, 82, 92, 66, 89, 92, 48, 63, 52, 60, 66, 56, 74, 59, 62, 63, 44, 72, 86, 41, 114, 63, 61, 79, 54, 57, 53, 143, 80, 83, 98, 62, 48, 42, 79, 55, 87, 65, 50, 68, 79, 61, 60, 66, 42, 68, 59, 82, 73, 84, 70, 64, 103, 46, 58, 57, 63, 85, 55, 57, 57, 53, 82, 69, 54, 60, 91, 53, 70, 59, 56, 53, 52, 98, 63, 70, 41, 98, 53, 70, 86, 47, 82, 71, 73, 69, 49, 56, 76, 62, 62, 57, 62, 80, 79, 56, 69, 105, 95, 74, 71, 61, 80, 65, 59, 63, 83, 60, 56, 73, 58, 52, 65, 87, 90, 41, 49, 48, 69, 68, 48, 82, 68, 50, 64, 68, 60, 82, 79, 49, 55, 75, 58, 71, 67, 57, 63, 73, 53, 57, 51, 57, 72, 51, 96, 54, 68, 81, 87, 90, 81, 55, 66, 61, 65, 62, 65, 55, 60, 76, 56, 68, 49, 57, 74, 58, 46, 72, 46, 42, 63, 48, 82, 53, 139, 58, 79, 64, 84, 85, 65, 53, 57, 53, 63, 75, 59, 79, 56, 62, 48, 64, 58, 69, 66, 89, 58, 60, 52, 58, 71, 81, 59, 72, 94, 68, 51, 53, 69, 44, 53, 42, 79, 63, 73, 57, 75, 60, 75, 56, 50, 74, 77, 86, 108, 69, 68, 49, 82, 89, 69, 47, 78, 73, 48, 38, 56, 53, 50, 58, 49, 52, 73, 84, 78, 120, 56, 72, 49, 69, 95, 57, 73, 52, 60, 49, 57, 67, 75, 71, 58, 62, 73, 49, 79, 73, 76, 52, 78, 71, 67, 43, 86, 53, 65, 63, 72, 64, 71, 58, 94, 122, 84, 77, 71, 40, 59, 58, 65, 79, 42, 81, 68, 54, 76, 71, 101, 109, 71, 60, 64, 69, 93, 55, 64, 45, 71, 55, 127, 66, 80, 72, 69, 56, 50, 59, 74, 100, 63, 60, 75, 60, 73, 68, 71, 95, 60, 45, 60, 53, 55, 53, 59, 51, 87, 77, 88, 60, 51, 71, 66, 73, 69, 127, 58, 90, 66, 72, 68, 55, 74, 41, 62, 49, 52, 55, 80, 79, 63, 64, 70, 61, 92, 77, 68, 91, 68, 52, 103, 66, 110, 78, 60, 54, 56, 74, 61, 63, 61, 44, 81, 74, 61, 57, 94, 62, 53, 56, 78, 94, 63, 109, 75, 49, 60, 101, 44, 105, 57, 78, 70, 47, 69, 95, 56, 55, 58, 50, 44, 71, 69, 63, 97, 41, 97, 51, 62, 48, 53, 54, 58, 59, 49, 53, 52, 51, 66, 83, 84, 52, 81, 59, 66, 70, 63, 81, 46, 59, 65, 68, 50, 63, 61, 56, 69, 65, 87, 76, 43, 50, 104, 64, 63, 74, 85, 78, 63, 49, 66, 52, 58, 62, 67, 49, 54, 57, 63, 54, 63, 53, 57, 59, 51, 44, 59, 70, 58, 60, 116, 53, 94, 80, 57, 60, 65, 73, 79, 89, 38, 81, 27, 58, 68, 63, 68, 65, 59, 71, 53, 55, 61, 61, 108, 64, 68, 58, 49, 53, 54, 71, 73, 61, 87, 59, 73, 57, 84, 56, 64, 71, 50, 61, 78, 75, 66, 61, 64, 64, 68, 69, 80, 53, 70, 43, 47, 98, 52, 108, 52, 61, 89, 48, 66, 61, 58, 45, 108, 57, 76, 86, 72, 68, 44, 56, 63, 70, 71, 67, 63, 51, 144, 45, 67, 48, 40, 85, 54, 54, 94, 58, 45, 84, 57, 68, 53, 46, 51, 62, 99, 76, 76, 94, 64, 63, 65, 52, 84, 55, 48, 77, 97, 60, 59, 68, 63, 54, 69, 67, 60, 56, 76, 57, 63, 80, 76, 91, 61, 53, 120, 50, 51, 56, 36, 56, 88, 64, 75, 73, 56, 65, 42, 66, 60, 64, 125, 51, 59, 50, 64, 38, 78, 39, 69, 49, 64, 49, 61, 61, 71, 68, 63, 87, 57, 91, 57, 58, 56, 54, 60, 69, 55, 83, 63, 71, 63, 66, 47, 70, 61, 44, 111, 82, 65, 83, 69, 44, 50, 72, 77, 44, 66, 66, 58, 42, 54, 67, 86, 84, 59, 52, 76, 53, 60, 74, 52, 70, 67, 53, 58, 80, 81, 70, 55, 52, 66, 71, 51, 74, 52, 58, 67, 47, 47, 78, 73, 94, 63, 40, 64, 51, 72, 54, 43, 56, 72, 64, 70, 59, 74, 44, 58, 95, 39, 58, 70, 60, 52, 59, 67, 79, 46, 87, 54, 70, 78, 79, 75, 64, 61, 62, 69, 74, 76, 58, 126, 71, 47, 56, 62, 43, 97, 59, 66, 76, 28, 58, 79, 52, 56, 43, 64, 80, 49, 47, 86, 59, 64, 50, 66, 70, 64, 69, 72, 43, 40, 48, 67, 51, 64, 75, 80, 62, 82, 34, 62, 57, 52, 44, 47, 72, 73, 59, 65, 72, 82, 59, 64, 54, 58, 59, 77, 92, 49, 62, 65, 52, 40, 65, 43, 76, 55, 70, 59, 81, 66, 63, 72, 56, 62, 55, 62, 89, 73, 89, 56, 47, 42, 86, 80, 71, 73, 78, 76, 54, 55, 42, 101, 43, 63, 75, 52, 70, 49, 55, 54, 66, 115, 63, 71, 70, 50, 55, 111, 64, 40, 77, 62, 70, 91, 64, 50, 70, 79, 74, 53, 61, 71, 63, 89, 66, 72, 67, 58, 55, 53, 103, 68, 51, 53, 79, 71, 75, 104, 81, 75, 42, 62, 60, 68, 31, 121, 63, 83, 110, 71, 51, 73, 55, 66, 41, 70, 70, 61, 51, 58, 50, 58, 48, 81, 67, 53, 69, 49, 59, 73, 47, 45, 82, 79, 54, 83, 58, 47, 61, 55, 43, 80, 88, 81, 93, 63, 95, 62, 49, 59, 69, 73, 52, 67, 67, 66, 48, 63, 61, 55, 70, 105, 61, 80, 64, 70, 59, 42, 61, 42, 50, 75, 62, 57, 73, 52, 92, 74, 52, 47, 50, 74, 57, 73, 69, 50, 60, 70, 86, 45, 80, 83, 72, 79, 72, 58, 71, 71, 75, 66, 68, 66, 74, 60, 49, 52, 50, 77, 69, 72, 87, 75, 52, 49, 54, 69, 64, 74, 74, 62, 69, 58, 75, 94, 120, 64, 64, 73, 75, 55, 68, 75, 56, 74, 66, 49, 41, 48, 70, 54, 63, 78, 62, 65, 65, 48, 76, 64, 62, 97, 63, 101, 53, 55, 59, 76, 49, 54, 53, 69, 62, 66, 64, 61, 55, 50, 62, 58, 57, 73, 80, 70, 95, 58, 61, 62, 51, 88, 81, 62, 44, 65, 57, 78, 68, 85, 67, 76, 44, 63, 62, 74, 67, 61, 71, 79, 54, 64, 75, 59, 72, 63, 64, 65, 46, 78, 47, 66, 66, 53, 94, 61, 61, 68, 67, 139, 54, 59, 62, 71, 56, 58, 60, 55, 68, 57, 71, 58, 58, 62, 45, 57, 69, 80, 58, 84, 72, 55, 129, 62, 69, 99, 51, 73, 70, 64, 104, 58, 62, 65, 57, 55, 68, 64, 64, 60, 62, 86, 64, 76, 66, 44, 53, 71, 59, 87, 103, 80, 78, 58, 66, 58, 56, 62, 73, 80, 71, 61, 48, 63, 51, 78, 44, 53, 53, 73, 56, 58, 78, 57, 58, 73, 75, 59, 71, 51, 54, 69, 71, 75, 72, 71, 58, 65, 62, 77, 75, 68, 58, 55, 61, 53, 59, 58, 48, 96, 70, 63, 81, 106, 58, 71, 82, 58, 77, 53, 62, 60, 82, 61, 65, 45, 84, 54, 68, 61, 67, 87, 66, 78, 61, 82, 88, 53, 56, 85, 66, 66, 70, 59, 48, 62, 54, 64, 61, 59, 95, 59, 65, 55, 59, 64, 79, 63, 64, 49, 61, 65, 96, 69, 73, 64, 48, 86, 62, 66, 83, 85, 56, 67, 72, 68, 65, 94, 67, 57, 63, 60, 64, 59, 61, 60, 60, 63, 70, 67, 64, 56, 85, 68, 58, 56, 79, 75, 44, 53, 67, 61, 50, 69, 44, 101, 101, 69, 61, 60, 82, 51, 57, 68, 68, 71, 62, 63, 56, 48, 67, 80, 69, 77, 61, 60, 54, 59, 61, 51, 65, 56, 64, 81, 65, 66, 61, 57, 113, 63, 50, 50, 60, 67, 56, 84, 69, 65, 77, 64, 72, 63, 63, 57, 66, 63, 70, 58, 59, 66, 63, 72, 88, 61, 67, 82, 57, 63, 64, 77, 64, 56, 76, 72, 63, 59, 62, 59, 61, 58, 70, 58, 67, 52, 57, 69, 66, 76, 109, 87, 73, 64, 69, 74, 121, 73, 84, 52, 61, 45, 67, 83, 70, 71, 59, 71, 87, 54, 84, 67, 62, 67, 56, 65, 54, 58, 82, 74, 100, 50, 60, 60, 57, 56, 80, 50, 51, 66, 32, 58, 71, 68, 51, 68, 88, 55, 53, 65, 70, 61, 73, 53, 68, 60, 57, 67, 61, 49, 67, 59, 148, 77, 83, 141, 56, 70, 55, 50, 66, 71, 71, 72, 75, 74, 59, 72, 67, 72, 76, 75, 65, 74, 70, 92, 51, 63, 74, 56, 39, 67, 63, 79, 53, 55, 60, 60, 85, 61, 66, 61, 56, 76, 59, 72, 51, 50, 42, 57, 63, 57, 70, 69, 66, 52, 60, 81, 60, 75, 58, 63, 78, 54, 54, 141, 61, 60, 62, 60, 66, 66, 58, 66, 63, 61, 64, 41, 60, 74, 57, 67, 76, 65, 61, 56, 69, 63, 64, 84, 71, 62, 65, 50, 60, 85, 73, 75, 71, 71, 77, 80, 72, 66, 95, 47, 68, 61, 65, 62, 72, 67, 66, 75, 59, 70, 53, 66, 48, 55, 61, 97, 52, 88, 69, 60, 62, 67, 66, 78, 65, 56, 56, 76, 43, 73, 69, 61, 61, 75, 66, 62, 67, 55, 63, 84, 55, 72, 58, 70, 67, 53, 70, 59, 69, 48, 61, 80, 63, 66, 68, 62, 70, 69, 53, 48, 57, 49, 58, 61, 50, 83, 61, 59, 64, 59, 51, 60, 65, 72, 57, 64, 68, 53, 111, 71, 144, 67, 61, 66, 52, 58, 79, 56, 56, 67, 76, 69, 64, 72, 78, 52, 62, 70, 53, 61, 60, 67, 69, 58, 91, 57, 66, 69, 76, 67, 62, 58, 56, 56, 74, 83, 50, 57, 57, 62, 69, 63, 81, 57, 48, 41, 56, 72, 42, 75, 62, 63, 64, 55, 70, 65, 68, 101, 76, 60, 68, 70, 70, 76, 65, 62, 53, 69, 75, 56, 59, 75, 67, 64, 104, 55, 58, 66, 54, 55, 78, 63, 64, 40, 51, 54, 105, 56, 66, 64, 70, 50, 52, 62, 55, 78, 44, 66, 59, 67, 63, 56, 65, 77, 70, 56, 63, 70, 41, 74, 55, 71, 91, 59, 66, 76, 61, 56, 62, 59, 65, 62, 68, 98, 54, 71, 53, 74, 68, 68, 74, 64, 58, 104, 62, 63, 65, 61, 62, 83, 54, 68, 46, 66, 57, 60, 59, 72, 81, 46, 56, 67, 64, 96, 53, 55, 62, 89, 64, 56, 60, 67, 60, 63, 66, 73, 64, 63, 82, 93, 71, 50, 41, 81, 93, 72, 95, 77, 68, 70, 85, 88, 71, 61, 60, 57, 53, 57, 61, 48, 56, 65, 88, 76, 56, 66, 72, 53, 60, 61, 95, 63, 51, 58, 67, 72, 62, 71, 58, 70, 47, 60, 54, 60, 68, 58, 64, 45, 55, 63, 54, 87, 73, 85, 68, 58, 78, 68, 56, 52, 56, 91, 58, 55, 50, 53, 62, 57, 61, 71, 49, 60, 75, 57, 78, 71, 56, 54, 60, 49, 57, 42, 68, 69, 60, 66, 66, 60, 75, 71, 58, 74, 73, 57, 97, 73, 74, 60, 65, 59, 57, 113, 63, 76, 41, 86, 87, 53, 53, 57, 62, 60, 79, 63, 71, 76, 62, 65, 58, 62, 55, 62, 75, 52, 73, 86, 56, 92, 42, 62, 68, 67, 80, 72, 51, 53, 59, 64, 85, 62, 63, 90, 66, 65, 65, 75, 64, 116, 50, 80, 48, 65, 74, 61, 64, 67, 64, 96, 57, 73, 67, 58, 67, 49, 83, 62, 52, 81, 75, 69, 66, 83, 67, 54, 59, 84, 71, 54, 69, 75, 75, 94, 95, 71, 90, 108, 58, 105, 50, 80, 72, 36, 39, 59, 63, 59, 68, 72, 61, 74, 63, 59, 90, 54, 77, 63, 76, 57, 62, 53, 61, 84, 61, 64, 65, 65, 57, 62, 70, 56, 62, 69, 63, 76, 67, 101, 61, 31, 61, 69, 53, 102, 71, 68, 58, 70, 68, 76, 46, 65, 75, 47, 61, 97, 69, 64, 55, 69, 84, 72, 58, 81, 51, 91, 56, 57, 70, 81, 52, 62, 57, 56, 61, 77, 66, 61, 40, 75, 57, 52, 59, 90, 58, 73, 72, 64, 45, 67, 86, 70, 65, 120, 65, 104, 48, 62, 52, 70, 58, 65, 71, 100, 67, 81, 74, 47, 72, 53, 57, 69, 58, 116, 73, 60, 54, 56, 67, 61, 63, 66, 60, 87, 72, 71, 56, 57, 89, 58, 58, 77, 46, 69, 48, 72, 44, 61, 70, 63, 70, 55, 71, 69, 71, 65, 67, 57, 61, 77, 64, 69, 91, 43, 61, 65, 62, 49, 67, 75, 69, 62, 88, 64, 78, 66, 59, 77, 60, 56, 71, 64, 58, 80, 70, 60, 51, 76, 56, 51, 59, 58, 77, 51, 74, 51, 59, 60, 46, 57, 55, 56, 52, 79, 61, 57, 54, 62, 68, 62, 56, 121, 58, 52, 76, 69, 107, 75, 55, 72, 61, 62, 73, 47, 92, 49, 74, 75, 58, 64, 65, 67, 63, 73, 65, 52, 54, 67, 55, 58, 50, 86, 66, 74, 80, 83, 71, 54, 62, 69, 60, 70, 97, 63, 66, 74, 99, 62, 57, 68, 58, 65, 70, 71, 47, 65, 68, 62, 49, 73, 67, 67, 69, 53, 73, 53, 75, 52, 80, 60, 104, 71, 65, 59, 68, 67, 83, 69, 72, 52, 64, 35, 59, 58, 69, 67, 53, 58, 64, 77, 62, 62, 55, 84, 45, 56, 73, 56, 52, 87, 65, 64, 85, 62, 57, 57, 125, 53, 55, 72, 72, 85, 145, 68, 72, 68, 54, 55, 67, 70, 55, 48, 74, 58, 82, 83, 77, 72, 55, 59, 53, 66, 74, 61, 57, 58, 66, 104, 57, 63, 66, 65, 61, 81, 73, 57, 84, 84, 39, 57, 76, 78, 56, 56, 60, 55, 53, 71, 62, 66, 47, 63, 50, 61, 33, 53, 51, 88, 70, 65, 72, 62, 67, 65, 63, 77, 80, 64, 68, 57, 70, 72, 77, 79, 45, 60, 64, 58, 62, 50, 69, 40, 56, 64, 69, 57, 44, 69, 58, 56, 59, 60, 67, 67, 58, 73, 83, 62, 78, 58, 61, 47, 67, 63, 82, 57, 58, 60, 82, 79, 58, 58, 72, 70, 52, 72, 64, 64, 70, 61, 58, 49, 59, 67, 56, 98, 46, 69, 65, 63, 59, 68, 61, 45, 68, 55, 77, 65, 70, 53, 54, 65, 55, 48, 58, 93, 72, 57, 62, 56, 90, 75, 45, 73, 65, 75, 63, 46, 66, 92, 65, 64, 68, 53, 62, 69, 71, 73, 85, 91, 56, 94, 75, 67, 80, 74, 54, 81, 71, 80, 51, 68, 65, 41, 59, 36, 59, 56, 55, 73, 66, 58, 63, 58, 69, 60, 39, 73, 60, 59, 55, 85, 58, 58, 97, 78, 58, 54, 43, 54, 37, 46, 69, 87, 53, 55, 69, 78, 67, 54, 77, 61, 62, 55, 57, 54, 50, 62, 62, 56, 56, 69, 62, 90, 73, 62, 52, 70, 61, 46, 50, 57, 78, 48, 63, 69, 62, 51, 63, 56, 42, 69, 70, 105, 61, 76, 59, 66, 58, 47, 68, 39, 63, 55, 46, 67, 72, 75, 73, 65, 81, 75, 66, 76, 63, 63, 55, 62, 71, 77, 73, 59, 74, 67, 60, 70, 56, 77, 66, 51, 56, 81, 59, 127, 58, 88, 59, 57, 54, 77, 53, 70, 41, 77, 71, 45, 70, 85, 38, 42, 58, 42, 74, 90, 63, 68, 65, 77, 59, 63, 57, 64, 71, 50, 52, 75, 101, 66, 61, 77, 62, 57, 67, 98, 65, 63, 89, 43, 83, 59, 61, 60, 54, 79, 60, 67, 52, 61, 55, 67, 55, 64, 63, 51, 77, 54, 52, 68, 71, 77, 56, 80, 64, 55, 66, 68, 55, 62, 73, 72, 55, 27, 67, 85, 80, 81, 65, 113, 83, 66, 93, 75, 55, 53, 54, 136, 64, 46, 66, 61, 90, 72, 70, 65, 65, 60, 69, 53, 101, 77, 54, 70, 46, 60, 52, 66, 95, 86, 82, 86, 69, 80, 80, 57, 47, 92, 83, 46, 62, 39, 67, 55, 48, 73, 68, 83, 81, 67, 69, 49, 74, 87, 62, 60, 37, 64, 55, 62, 67, 61, 68, 56, 62, 69, 66, 64, 55, 75, 96, 66, 68, 70, 63, 66, 73, 81, 50, 67, 81, 61, 49, 58, 64, 55, 59, 74, 55, 83, 66, 55, 50, 58, 63, 62, 71, 58, 44, 51, 56, 77, 73, 47, 56, 138, 66, 67, 49, 55, 77, 49, 69, 77, 71, 39, 80, 88, 58, 58, 74, 70, 80, 65, 62, 54, 59, 57, 59, 41, 56, 97, 61, 59, 80, 56, 46, 78, 62, 81, 46, 71, 62, 71, 78, 57, 67, 67, 70, 51, 65, 74, 88, 81, 102, 80, 102, 63, 89, 97, 65, 63, 68, 50, 64, 84, 56, 68, 67, 93, 81, 70, 68, 76, 66, 77, 58, 65, 77, 66, 71, 64, 60, 75, 63, 51, 61, 70, 74, 73, 61, 55, 58, 64, 56, 51, 58, 68, 62, 53, 75, 66, 59, 66, 69, 75, 67, 54, 71, 53, 61, 52, 74, 63, 45, 63, 77, 51, 60, 54, 77, 65, 47, 61, 50, 57, 91, 71, 85, 67, 55, 63, 69, 79, 62, 68, 77, 54, 71, 57, 45, 56, 78, 105, 69, 63, 56, 65, 87, 71, 65, 60, 58, 90, 63, 66, 45, 58, 47, 67, 84, 59, 98, 68, 47, 77, 54, 68, 68, 71, 82, 85, 57, 63, 72, 69, 56, 47, 68, 66, 58, 65, 49, 62, 59, 56, 51, 47, 74, 69, 66, 41, 64, 76, 43, 98, 72, 72, 57, 82, 88, 86, 72, 54, 61, 60, 82, 64, 64, 72, 80, 69, 88, 82, 59, 39, 68, 74, 53, 101, 57, 56, 61, 58, 64, 69, 168, 62, 53, 77, 84, 60, 89, 69, 59, 49, 46, 58, 70, 55, 54, 59, 71, 57, 96, 81, 62, 65, 76, 63, 73, 47, 79, 58, 75, 84, 49, 66, 54, 55, 49, 132, 56, 57, 87, 57, 74, 56, 62, 55, 76, 84, 49, 70, 92, 92, 68, 62, 76, 69, 52, 48, 68, 74, 62, 91, 64, 75, 70, 62, 61, 65, 66, 50, 74, 42, 62, 82, 72, 71, 57, 86, 79, 67, 70, 98, 73, 70, 73, 61, 66, 75, 62, 65, 68, 75, 63, 78, 65, 70, 62, 68, 71, 60, 74, 64, 50, 72, 48, 66, 61, 45, 44, 82, 58, 69, 61, 53, 36, 50, 64, 51, 66, 58, 67, 82, 74, 67, 75, 53, 58, 59, 58, 61, 77, 67, 65, 81, 58, 56, 68, 65, 52, 66, 62, 53, 84, 58, 69, 52, 62, 57, 64, 89, 78, 81, 68, 54, 49, 34, 62, 80, 60, 49, 90, 67, 62, 77, 47, 69, 76, 62, 75, 84, 48, 64, 54, 66, 55, 53, 59, 66, 78, 56, 55, 59, 88, 77, 47, 50, 63, 69, 51, 73, 90, 57, 69, 70, 66, 65, 59, 48, 63, 66, 46, 90, 81, 70, 55, 98, 71, 91, 71, 75, 66, 60, 90, 77, 63, 70, 60, 56, 63, 59, 64, 53, 65, 64, 75, 70, 65, 73, 67, 81, 93, 52, 78, 76, 65, 76, 46, 60, 60, 44, 58, 70, 108, 45, 82, 39, 52, 102, 48, 47, 65, 60, 60, 60, 98, 73, 69, 55, 75, 66, 88, 92, 67, 73, 57, 67, 78, 72, 66, 48, 62, 89, 48, 60, 59, 60, 50, 69, 63, 91, 56, 89, 57, 58, 57, 91, 77, 55, 77, 85, 65, 58, 84, 100, 70, 58, 52, 72, 55, 47, 94, 109, 99, 88, 67, 69, 48, 71, 71, 62, 64, 55, 113, 65, 50, 76, 53, 83, 61, 44, 76, 69, 65, 59, 58, 57, 61, 52, 53, 65, 74, 116, 64, 82, 70, 59, 54, 44, 69, 54, 51, 59, 91, 55, 88, 55, 70, 57, 53, 49, 85, 72, 68, 50, 69, 63, 62, 57, 63, 56, 60, 66, 87, 65, 41, 71, 65, 58, 55, 80, 72, 49, 59, 64, 78, 71, 59, 56, 71, 60, 72, 56, 61, 72, 102, 72, 72, 41, 62, 53, 74, 57, 98, 84, 78, 78, 68, 93, 60, 96, 59, 48, 57, 67, 58, 46, 63, 43, 62, 51, 58, 56, 71, 96, 64, 67, 50, 51, 63, 53, 76, 36, 60, 68, 56, 73, 61, 121, 70, 57, 72, 69, 56, 71, 54, 60, 69, 76, 67, 76, 50, 50, 63, 86, 54, 64, 63, 58, 30, 87, 48, 69, 83, 64, 67, 85, 61, 63, 73, 49, 91, 75, 55, 91, 61, 68, 76, 59, 61, 53, 88, 88, 67, 59, 57, 67, 51, 49, 47, 97, 49, 63, 67, 57, 73, 58, 43, 71, 64, 62, 54, 61, 50, 155, 73, 58, 67, 45, 57, 60, 80, 66, 73, 57, 73, 87, 62, 60, 73, 62, 51, 40, 56, 61, 65, 52, 77, 62, 73, 83, 66, 53, 52, 58, 58, 67, 46, 80, 57, 131, 58, 97, 69, 48, 44, 70, 83, 89, 70, 85, 67, 87, 57, 78, 82, 65, 92, 55, 55, 77, 70, 79, 56, 53, 50, 56, 39, 66, 76, 64, 57, 55, 63, 72, 80, 70, 120, 55, 62, 66, 72, 66, 72, 73, 53, 70, 98, 81, 68, 53, 82, 68, 65, 81, 63, 56, 68, 66, 85, 56, 68, 61, 59, 79, 49, 79, 58, 68, 49, 64, 67, 68, 56, 86, 61, 88, 55, 75, 63, 59, 67, 70, 43, 78, 57, 58, 33, 56, 64, 54, 60, 69, 62, 72, 54, 55, 67, 70, 55, 53, 53, 63, 52, 93, 56, 74, 60, 71, 58, 90, 51, 69, 53, 67, 70, 74, 87, 59, 50, 69, 80, 103, 52, 71, 57, 60, 49, 47, 70, 67, 62, 75, 62, 51, 65, 64, 57, 58, 84, 46, 72, 71, 74, 67, 60, 61, 46, 77, 81, 64, 64, 59, 78, 92, 59, 71, 79, 45, 63, 71, 52, 78, 93, 77, 73, 59, 72, 84, 120, 56, 123, 85, 54, 62, 57, 74, 63, 80, 52, 67, 85, 60, 63, 54, 65, 66, 61, 50, 72, 61, 64, 127, 63, 52, 63, 54, 79, 67, 57, 100, 65, 62, 79, 78, 53, 54, 61, 69, 49, 61, 67, 64, 43, 75, 61, 66, 78, 68, 61, 71, 60, 61, 77, 117, 69, 92, 75, 92, 80, 73, 51, 47, 56, 81, 55, 70, 61, 53, 57, 51, 80, 57, 77, 57, 60, 49, 61, 66, 60, 50, 63, 80, 44, 51, 62, 75, 99, 61, 93, 77, 78, 54, 96, 66, 61, 53, 101, 95, 59, 56, 52, 74, 77, 54, 66, 66, 70, 75, 65, 73, 57, 75, 62, 69, 68, 77, 71, 82, 63, 42, 55, 57, 71, 79, 73, 70, 57, 83, 61, 81, 79, 61, 41, 67, 43, 56, 48, 84, 55, 84, 57, 71, 67, 53, 96, 62, 58, 86, 69, 76, 60, 102, 56, 79, 107, 69, 53, 69, 76, 80, 72, 62, 55, 111, 83, 63, 47, 49, 41, 88, 47, 63, 60, 61, 53, 64, 46, 60, 76, 66, 65, 78, 88, 64, 56, 72, 72, 45, 81, 65, 35, 50, 83, 53, 75, 53, 75, 86, 58, 57, 62, 64, 41, 91, 64, 88, 53, 64, 56, 54, 72, 69, 67, 73, 60, 38, 42, 51, 51, 62, 50, 74, 60, 74, 50, 76, 59, 65, 87, 57, 63, 48, 47, 59, 60, 85, 45, 53, 40, 52, 62, 96, 67, 74, 50, 74, 54, 54, 69, 53, 47, 72, 64, 55, 57, 60, 55, 82, 89, 80, 74, 88, 50, 47, 80, 91, 63, 68, 67, 70, 64, 43, 73, 77, 81, 66, 47, 106, 50, 70, 61, 60, 74, 86, 59, 81, 63, 68, 78, 93, 84, 73, 56, 53, 97, 57, 42, 60, 54, 50, 74, 56, 56, 54, 49, 50, 80, 60, 62, 77, 77, 70, 42, 80, 71, 85, 65, 71, 100, 59, 64, 50, 47, 60, 87, 55, 49, 57, 85, 60, 85, 52, 82, 58, 58, 61, 56, 46, 55, 61, 59, 77, 64, 68, 77, 62, 74, 50, 53, 62, 60, 62, 71, 66, 56, 58, 58, 95, 71, 61, 67, 88, 60, 84, 54, 65, 56, 89, 49, 63, 50, 73, 60, 80, 61, 81, 51, 65, 60, 80, 65, 55, 56, 47, 84, 59, 59, 68, 50, 49, 67, 52, 48, 56, 55, 82, 90, 66, 71, 67, 63, 62, 84, 40, 62, 102, 70, 68, 132, 73, 68, 61, 85, 47, 58, 67, 75, 54, 67, 78, 67, 58, 77, 58, 62, 63, 165, 93, 63, 53, 65, 56, 69, 84, 61, 61, 69, 70, 58, 59, 62, 61, 83, 70, 62, 53, 76, 71, 56, 65, 53, 78, 57, 55, 61, 63, 56, 62, 59, 82, 67, 50, 77, 80, 67, 55, 81, 49, 47, 47, 65, 59, 67, 74, 63, 58, 51, 64, 71, 49, 62, 68, 75, 54, 69, 79, 81, 62, 70, 54, 52, 64, 74, 56, 102, 59, 75, 67, 49, 54, 64, 101, 51, 75, 58, 82, 79, 105, 67, 50, 51, 64, 54, 56, 73, 48, 79, 68, 52, 52, 72, 70, 89, 55, 66, 65, 73, 57, 60, 52, 76, 57, 67, 55, 60, 51, 53, 30, 66, 62, 52, 89, 64, 46, 75, 100, 75, 85, 57, 68, 72, 63, 45, 64, 64, 60, 108, 55, 62, 66, 90, 61, 53, 87, 64, 69, 68, 79, 50, 76, 66, 55, 61, 67, 51, 53, 51, 71, 77, 67, 65, 45, 83, 56, 60, 62, 59, 96, 56, 74, 59, 48, 43, 65, 55, 65, 77, 63, 93, 63, 75, 54, 66, 60, 68, 47, 62, 54, 75, 66, 72, 59, 64, 81, 67, 48, 69, 83, 69, 73, 56, 64, 76, 64, 56, 52, 48, 64, 60, 56, 53, 73, 70, 72, 58, 50, 85, 26, 71, 81, 53, 67, 97, 83, 68, 75, 69, 60, 99, 57, 43, 94, 101, 62, 85, 84, 62, 76, 69, 54, 46, 53, 60, 76, 61, 64, 78, 117, 75, 96, 58, 58, 50, 49, 77, 63, 66, 70, 53, 89, 52, 46, 64, 77, 50, 84, 71, 49, 66, 75, 82, 70, 64, 59, 85, 59, 62, 65, 57, 67, 46, 69, 78, 72, 64, 50, 56, 54, 83, 59, 78, 74, 66, 58, 55, 55, 50, 79, 47, 101, 64, 78, 56, 123, 53, 47, 63, 63, 75, 61, 51, 66, 46, 54, 60, 52, 49, 63, 66, 52, 59, 75, 59, 64, 61, 62, 63, 57, 67, 73, 60, 63, 69, 69, 58, 70, 54, 94, 75, 69, 77, 54, 62, 91, 54, 53, 67, 57, 53, 55, 87, 66, 61, 66, 47, 110, 66, 67, 60, 52, 59, 67, 67, 69, 63, 64, 58, 79, 53, 65, 54, 67, 64, 53, 72, 77, 53, 76, 53, 61, 64, 70, 52, 76, 79, 63, 69, 83, 52, 49, 50, 69, 151, 68, 59, 51, 73, 63, 77, 72, 55, 59, 59, 65, 72, 62, 74, 53, 46, 60, 65, 65, 66, 54, 78, 68, 60, 66, 65, 36, 78, 68, 94, 46, 78, 62, 59, 43, 47, 54, 60, 103, 67, 73, 51, 63, 62, 68, 62, 74, 46, 57, 66, 61, 52, 68, 74, 62, 60, 84, 62, 63, 70, 72, 91, 48, 55, 76, 56, 60, 66, 52, 71, 90, 54, 48, 58, 66, 57, 70, 73, 33, 76, 53, 75, 63, 57, 58, 87, 74, 72, 73, 58, 75, 57, 127, 68, 75, 75, 66, 68, 63, 66, 68, 61, 41, 70, 53, 73, 89, 65, 62, 87, 83, 68, 73, 55, 51, 69, 81, 87, 70, 55, 64, 75, 62, 57, 57, 71, 48, 50, 80, 68, 53, 57, 56, 57, 68, 41, 53, 56, 55, 50, 72, 79, 53, 83, 52, 52, 75, 64, 53, 50, 44, 57, 67, 61, 59, 75, 74, 72, 56, 87, 78, 72, 55, 60, 62, 68, 55, 51, 57, 63, 64, 69, 50, 52, 89, 54, 60, 72, 72, 64, 101, 88, 45, 85, 48, 67, 49, 63, 64, 54, 61, 63, 52, 71, 63, 60, 69, 66, 72, 66, 127, 58, 56, 60, 60, 68, 57, 66, 68, 73, 57, 68, 67, 55, 84, 82, 42, 45, 54, 55, 53, 64, 58, 70, 59, 83, 95, 80, 56, 80, 71, 76, 68, 56, 63, 50, 56, 56, 60, 69, 82, 78, 60, 73, 64, 62, 71, 46, 50, 51, 71, 61, 71, 65, 66, 65, 69, 106, 70, 64, 59, 47, 59, 64, 53, 72, 94, 65, 61, 52, 71, 58, 57, 70, 58, 53, 62, 58, 57, 57, 67, 70, 63, 51, 42, 46, 95, 61, 54, 78, 71, 84, 70, 68, 52, 81, 61, 64, 63, 50, 71, 57, 65, 51, 49, 152, 53, 109, 47, 53, 50, 61, 54, 69, 67, 66, 57, 50, 68, 53, 55, 73, 54, 68, 43, 60, 61, 63, 35, 58, 51, 67, 60, 78, 49, 85, 53, 60, 38, 75, 45, 81, 74, 60, 30, 61, 63, 65, 77, 62, 81, 60, 70, 54, 70, 77, 61, 76, 69, 70, 59, 65, 85, 58, 63, 60, 64, 51, 71, 71, 72, 54, 59, 64, 72, 60, 84, 80, 62, 68, 74, 48, 55, 53, 46, 56, 96, 55, 61, 62, 55, 56, 49, 83, 75, 68, 71, 70, 55, 70, 69, 78, 101, 50, 143, 67, 54, 71, 72, 150, 56, 66, 63, 56, 84, 40, 62, 64, 60, 57, 88, 64, 64, 51, 48, 47, 51, 59, 52, 63, 62, 70, 51, 53, 69, 45, 81, 68, 55, 77, 64, 72, 61, 55, 66, 61, 58, 73, 49, 90, 71, 65, 82, 66, 52, 52, 85, 64, 70, 60, 58, 51, 62, 69, 49, 73, 56, 63, 79, 57, 56, 56, 51, 90, 52, 82, 86, 73, 57, 69, 60, 54, 71, 92, 69, 79, 103, 60, 92, 46, 67, 54, 105, 98, 50, 43, 68, 65, 52, 55, 66, 54, 65, 71, 60, 39, 67, 44, 56, 69, 50, 54, 38, 79, 59, 73, 67, 89, 73, 60, 89, 69, 53, 61, 71, 57, 54, 58, 47, 43, 75, 70, 71, 85, 61, 67, 82, 66, 57, 64, 84, 83, 58, 77, 62, 82, 54, 58, 75, 76, 64, 44, 68, 49, 62, 55, 36, 69, 73, 48, 39, 51, 70, 57, 53, 58, 59, 74, 83, 76, 115, 54, 78, 62, 72, 57, 59, 86, 90, 44, 59, 44, 37, 86, 82, 81, 69, 75, 54, 80, 80, 71, 61, 67, 57, 50, 68, 62, 59, 64, 57, 86, 62, 62, 62, 51, 68, 60, 54, 55, 66, 59, 56, 68, 78, 69, 68, 76, 72, 54, 68, 50, 62, 60, 63, 87, 77, 61, 111, 59, 61, 50, 72, 59, 69, 58, 54, 58, 67, 62, 63, 72, 56, 67, 73, 54, 58, 62, 63, 71, 53, 58, 95, 89, 53, 71, 44, 70, 79, 47, 88, 87, 83, 55, 50, 68, 63, 66, 75, 55, 55, 59, 56, 62, 62, 94, 63, 55, 73, 58, 58, 61, 77, 77, 43, 57, 67, 62, 60, 66, 70, 67, 61, 65, 115, 63, 37, 70, 64, 66, 61, 59, 61, 96, 68, 68, 67, 59, 73, 82, 51, 47, 72, 64, 59, 58, 83, 63, 62, 58, 73, 77, 57, 27, 67, 67, 78, 64, 59, 62, 61, 62, 57, 68, 65, 66, 60, 53, 60, 54, 81, 80, 59, 57, 66, 55, 81, 58, 67, 49, 66, 59, 60, 74, 68, 78, 63, 91, 51, 63, 64, 52, 70, 91, 68, 77, 61, 70, 47, 80, 64, 80, 88, 54, 56, 78, 72, 90, 68, 73, 79, 94, 71, 50, 101, 60, 61, 40, 87, 62, 57, 54, 64, 80, 88, 64, 61, 61, 64, 54, 87, 66, 76, 55, 54, 46, 60, 75, 68, 62, 81, 64, 45, 66, 70, 76, 47, 86, 72, 57, 63, 77, 82, 53, 89, 60, 53, 52, 58, 66, 43, 68, 78, 57, 70, 66, 63, 65, 55, 57, 65, 51, 60, 75, 106, 58, 74, 66, 65, 54, 77, 61, 54, 68, 56, 82, 60, 64, 60, 73, 52, 57, 56, 47, 77, 62, 66, 60, 57, 70, 66, 93, 69, 82, 52, 55, 48, 64, 58, 73, 69, 63, 64, 58, 111, 59, 58, 59, 87, 62, 91, 62, 66, 67, 71, 63, 58, 81, 52, 76, 44, 91, 57, 79, 67, 64, 61, 53, 63, 64, 61, 41, 97, 63, 72, 55, 55, 64, 54, 57, 65, 66, 53, 61, 69, 71, 47, 57, 68, 56, 99, 43, 74, 86, 84, 58, 74, 61, 69, 77, 88, 87, 72, 87, 67, 77, 73, 63, 62, 73, 58, 69, 72, 62, 66, 61, 63, 52, 88, 63, 49, 51, 60, 62, 60, 78, 60, 63, 62, 91, 67, 75, 61, 101, 82, 45, 54, 51, 77, 72, 63, 63, 82, 58, 77, 56, 72, 64, 54, 64, 73, 58, 58, 51, 55, 56, 54, 63, 98, 66, 54, 60, 60, 69, 62, 54, 52, 71, 61, 56, 63, 61, 63, 53, 53, 64, 69, 55, 50, 68, 56, 66, 62, 56, 81, 57, 61, 57, 62, 46, 43, 75, 58, 73, 60, 79, 67, 69, 52, 53, 60, 59, 73, 64, 63, 55, 56, 84, 55, 59, 38, 64, 90, 69, 64, 56, 57, 51, 74, 92, 60, 62, 62, 68, 57, 45, 65, 78, 89, 76, 103, 67, 56, 54, 63, 83, 77, 50, 60, 61, 50, 63, 92, 73, 50, 60, 65, 70, 73, 60, 81, 65, 132, 56, 58, 53, 34, 96, 68, 55, 78, 55, 49, 67, 39, 61, 81, 70, 67, 61, 54, 57, 68, 60, 52, 72, 66, 72, 58, 55, 62, 81, 55, 51, 56, 68, 67, 75, 86, 62, 58, 75, 65, 67, 63, 79, 53, 59, 50, 66, 79, 69, 65, 56, 76, 53, 48, 82, 84, 61, 75, 61, 72, 57, 56, 71, 83, 40, 49, 59, 53, 86, 64, 53, 52, 41, 82, 73, 62, 87, 69, 57, 56, 56, 78, 66, 56, 71, 42, 56, 53, 63, 90, 70, 58, 54, 63, 86, 60, 60, 64, 83, 72, 52, 65, 92, 58, 53, 81, 51, 70, 55, 65, 58, 67, 64, 62, 77, 64, 71, 73, 51, 60, 55, 67, 65, 51, 63, 62, 76, 51, 50, 57, 77, 62, 71, 61, 64, 95, 67, 64, 66, 77, 57, 66, 52, 64, 78, 49, 85, 50, 70, 70, 78, 64, 85, 60, 52, 58, 105, 64, 61, 80, 62, 57, 72, 61, 62, 80, 67, 58, 69, 71, 108, 60, 48, 74, 72, 80, 65, 62, 62, 56, 51, 46, 71, 64, 54, 53, 60, 64, 83, 84, 68, 70, 63, 50, 71, 54, 59, 54, 57, 71, 56, 59, 78, 78, 57, 54, 70, 60, 60, 62, 75, 79, 54, 58, 57, 58, 69, 58, 77, 72, 69, 85, 62, 63, 65, 55, 77, 75, 73, 60, 66, 70, 70, 56, 73, 70, 44, 70, 60, 74, 67, 67, 81, 69, 68, 60, 57, 84, 65, 63, 59, 65, 73, 53, 71, 61, 63, 78, 57, 43, 80, 58, 59, 51, 42, 64, 74, 66, 105, 66, 85, 63, 61, 74, 80, 57, 69, 56, 73, 83, 60, 53, 67, 54, 53, 64, 55, 85, 56, 65, 53, 71, 67, 61, 62, 67, 63, 63, 64, 56, 59, 103, 62, 50, 81, 59, 62, 113, 60, 61, 57, 65, 66, 45, 49, 50, 80, 49, 50, 73, 71, 51, 73, 76, 92, 61, 62, 69, 67, 73, 68, 79, 65, 55, 72, 65, 106, 67, 82, 68, 58, 68, 58, 64, 54, 67, 68, 76, 72, 57, 64, 69, 81, 73, 61, 80, 50, 51, 141, 56, 42, 62, 56, 64, 81, 56, 58, 70, 66, 70, 44, 62, 67, 59, 54, 64, 57, 46, 59, 75, 61, 62, 75, 56, 64, 58, 82, 68, 125, 87, 72, 86, 69, 63, 53, 70, 57, 54, 75, 58, 57, 62, 75, 101, 60, 55, 61, 56, 54, 63, 59, 79, 75, 61, 59, 54, 71, 55, 56, 59, 73, 69, 68, 59, 53, 65, 73, 45, 53, 71, 65, 65, 50, 53, 38, 72, 43, 111, 63, 42, 60, 73, 74, 72, 85, 47, 65, 83, 57, 74, 68, 65, 59, 69, 62, 67, 53, 56, 77, 51, 70, 83, 73, 74, 67, 62, 47, 57, 86, 70, 56, 61, 70, 64, 61, 64, 70, 63, 50, 69, 58, 68, 58, 68, 56, 70, 69, 68, 64, 67, 79, 68, 81, 103, 50, 68, 55, 57, 72, 63, 68, 67, 62, 81, 56, 61, 78, 79, 83, 63, 57, 62, 81, 61, 73, 58, 73, 55, 70, 63, 67, 83, 89, 54, 58, 65, 70, 58, 44, 65, 90, 74, 76, 72, 98, 41, 99, 60, 63, 56, 38, 47, 80, 77, 71, 78, 54, 71, 98, 42, 50, 62, 75, 47, 46, 53, 71, 72, 55, 76, 72, 71, 77, 80, 88, 54, 132, 63, 50, 109, 43, 52, 59, 54, 46, 72, 55, 73, 75, 54, 51, 66, 40, 73, 83, 67, 71, 66, 64, 55, 99, 88, 78, 77, 78, 81, 78, 44, 63, 69, 89, 75, 76, 47, 70, 66, 55, 40, 80, 68, 62, 63, 74, 52, 61, 67, 66, 80, 47, 43, 37, 77, 59, 59, 52, 64, 109, 80, 66, 83, 66, 55, 97, 65, 56, 70, 55, 76, 87, 43, 86, 74, 101, 69, 74, 62, 64, 66, 59, 61, 70, 70, 64, 55, 65, 58, 51, 68, 76, 48, 56, 92, 65, 75, 67, 54, 66, 64, 66, 76, 42, 55, 64, 82, 59, 114, 49, 46, 51, 56, 66, 59, 64, 78, 74, 87, 68, 86, 55, 66, 82, 56, 84, 64, 61, 53, 63, 63, 83, 77, 48, 70, 65, 36, 68, 65, 84, 67, 68, 54, 62, 53, 71, 71, 69, 74, 63, 75, 60, 45, 70, 56, 67, 50, 51, 55, 74, 73, 84, 65, 75, 45, 73, 61, 70, 62, 51, 50, 45, 82, 79, 68, 74, 53, 67, 86, 69, 57, 46, 56, 70, 53, 65, 53, 72, 47, 49, 53, 66, 62, 94, 54, 85, 55, 82, 73, 88, 51, 60, 60, 57, 64, 75, 69, 73, 69, 62, 70, 60, 69, 77, 36, 89, 40, 76, 82, 49, 74, 41, 62, 73, 54, 52, 60, 73, 55, 66, 84, 44, 64, 58, 67, 52, 119, 63, 47, 80, 64, 72, 68, 74, 90, 64, 79, 62, 56, 49, 68, 69, 73, 68, 64, 80, 63, 80, 76, 49, 47, 56, 81, 64, 73, 73, 89, 40, 74, 76, 79, 80, 51, 56, 84, 52, 145, 105, 86, 57, 66, 66, 49, 67, 65, 74, 80, 98, 43, 63, 73, 71, 72, 79, 61, 65, 28, 60, 71, 71, 81, 67, 97, 58, 91, 50, 49, 83, 66, 67, 61, 64, 48, 75, 35, 61, 62, 71, 63, 62, 43, 70, 64, 64, 52, 51, 63, 73, 56, 43, 90, 91, 47, 50, 75, 79, 38, 55, 68, 47, 43, 70, 69, 74, 72, 59, 62, 92, 48, 69, 57, 73, 114, 75, 45, 57, 48, 55, 59, 63, 63, 49, 70, 61, 66, 42, 49, 74, 75, 64, 90, 77, 70, 54, 56, 82, 49, 82, 74, 72, 75, 60, 50, 78, 69, 54, 58, 48, 53, 57, 64, 104, 66, 40, 75, 75, 62, 45, 65, 58, 56, 62, 76, 53, 86, 74, 62, 65, 84, 65, 55, 61, 96, 77, 67, 68, 62, 68, 72, 78, 60, 44, 28, 66, 69, 76, 71, 80, 60, 63, 59, 67, 62, 82, 68, 66, 59, 44, 63, 53, 65, 85, 79, 69, 95, 67, 48, 53, 68, 68, 97, 56, 70, 83, 63, 63, 54, 72, 55, 63, 94, 65, 73, 70, 55, 54, 52, 74, 67, 69, 61, 45, 44, 56, 71, 70, 66, 55, 70, 90, 72, 53, 60, 58, 70, 61, 63, 83, 81, 50, 63, 51, 58, 76, 79, 74, 73, 74, 48, 76, 75, 89, 80, 59, 53, 63, 96, 55, 114, 74, 67, 95, 51, 74, 78, 92, 90, 69, 65, 71, 32, 65, 77, 122, 36, 64, 54, 112, 40, 87, 61, 24, 83, 70, 74, 68, 76, 61, 80, 89, 97, 47, 40, 58, 44, 85, 52, 49, 72, 71, 66, 48, 65, 67, 70, 64, 68, 86, 45, 77, 73, 68, 81, 54, 58, 66, 75, 62, 53, 81, 60, 53, 58, 64, 73, 58, 50, 71, 64, 69, 64, 61, 54, 71, 43, 55, 59, 74, 100, 71, 48, 78, 71, 102, 46, 89, 73, 55, 57, 51, 80, 40, 35, 54, 48, 73, 96, 68, 96, 66, 117, 80, 70, 62, 124, 48, 71, 43, 79, 54, 64, 63, 53, 89, 65, 94, 65, 72, 79, 69, 67, 94, 57, 61, 50, 54, 69, 72, 53, 126, 64, 69, 77, 70, 64, 87, 72, 64, 85, 71, 53, 67, 79, 53, 64, 55, 111, 68, 49, 63, 86, 60, 72, 72, 64, 68, 85, 71, 42, 52, 86, 64, 65, 108, 57, 82, 120, 63, 50, 89, 66, 58, 62, 59, 67, 67, 87, 44, 55, 48, 65, 84, 40, 72, 88, 56, 71, 50, 56, 68, 63, 77, 102, 62, 57, 54, 73, 59, 65, 61, 52, 60, 59, 49, 59, 57, 44, 33, 84, 55, 102, 51, 98, 85, 76, 57, 106, 65, 66, 58, 77, 38, 45, 46, 77, 73, 113, 53, 58, 70, 60, 71, 69, 73, 51, 61, 93, 62, 55, 67, 46, 56, 90, 79, 62, 56, 59, 95, 62, 60, 56, 72, 93, 62, 47, 61, 62, 85, 61, 62, 71, 38, 107, 69, 90, 69, 73, 52, 67, 59, 60, 87, 58, 65, 59, 51, 57, 55, 56, 79, 59, 45, 65, 73, 57, 71, 77, 61, 68, 48, 77, 75, 63, 68, 63, 53, 61, 57, 59, 57, 69, 45, 59, 75, 70, 58, 69, 86, 77, 73, 46, 61, 67, 50, 75, 75, 87, 82, 70, 45, 68, 84, 110, 55, 57, 66, 72, 77, 80, 63, 46, 63, 69, 46, 118, 53, 63, 59, 86, 47, 58, 62, 61, 71, 87, 83, 62, 70, 68, 79, 70, 78, 64, 47, 49, 76, 94, 62, 68, 73, 78, 69, 67, 61, 56, 117, 69, 43, 70, 68, 51, 46, 93, 41, 56, 72, 66, 57, 77, 70, 68, 61, 51, 55, 46, 72, 82, 57, 48, 53, 73, 74, 87, 60, 64, 80, 59, 87, 74, 73, 76, 67, 53, 67, 61, 64, 72, 52, 71, 50, 66, 66, 79, 48, 69, 59, 39, 69, 72, 64, 47, 53, 58, 74, 59, 76, 52, 81, 70, 58, 53, 61, 87, 76, 60, 57, 93, 68, 56, 48, 66, 77, 93, 50, 52, 58, 54, 57, 46, 57, 48, 73, 73, 86, 73, 67, 65, 60, 73, 99, 54, 75, 74, 53, 47, 54, 96, 71, 67, 57, 53, 53, 50, 91, 51, 65, 54, 35, 69, 51, 86, 64, 57, 57, 47, 87, 54, 74, 50, 66, 113, 133, 60, 65, 56, 75, 52, 108, 54, 69, 55, 79, 87, 67, 35, 70, 78, 44, 89, 64, 56, 127, 61, 47, 56, 81, 54, 55, 51, 67, 54, 71, 65, 51, 74, 76, 70, 48, 52, 61, 65, 60, 54, 70, 60, 69, 75, 70, 60, 89, 78, 67, 57, 58, 78, 52, 76, 91, 78, 64, 71, 68, 64, 60, 47, 57, 61, 67, 65, 79, 58, 60, 66, 61, 83, 63, 68, 71, 98, 76, 61, 69, 71, 53, 77, 63, 56, 71, 51, 52, 64, 90, 71, 71, 65, 70, 69, 77, 57, 56, 52, 58, 70, 61, 66, 60, 66, 56, 71, 63, 100, 56, 66, 71, 61, 66, 75, 61, 48, 63, 57, 70, 63, 73, 118, 106, 73, 120, 53, 68, 61, 66, 56, 84, 107, 71, 68, 76, 58, 54, 59, 47, 64, 74, 80, 51, 50, 73, 99, 60, 66, 57, 58, 45, 58, 59, 57, 77, 64, 59, 51, 55, 81, 60, 68, 75, 64, 98, 62, 62, 68, 64, 51, 75, 71, 48, 94, 63, 59, 74, 50, 79, 64, 57, 61, 50, 96, 50, 80, 66, 75, 57, 52, 73, 66, 60, 62, 59, 78, 54, 51, 55, 60, 63, 62, 70, 59, 48, 87, 59, 91, 86, 70, 70, 72, 59, 74, 73, 82, 75, 62, 71, 60, 58, 51, 53, 65, 80, 54, 70, 61, 78, 75, 88, 63, 85, 85, 74, 69, 49, 83, 50, 59, 54, 72, 51, 99, 69, 68, 74, 58, 113, 59, 75, 79, 59, 56, 59, 84, 69, 78, 67, 64, 55, 57, 80, 108, 53, 69, 47, 72, 65, 53, 58, 63, 59, 55, 68, 70, 63, 56, 64, 62, 87, 72, 78, 61, 87, 68, 66, 50, 58, 67, 51, 84, 61, 41, 69, 83, 56, 68, 48, 72, 78, 48, 72, 79, 65, 62, 73, 73, 78, 55, 73, 65, 34, 83, 31, 63, 53, 73, 66, 59, 67, 54, 57, 47, 73, 75, 58, 58, 30, 59, 55, 54, 67, 91, 81, 74, 62, 64, 66, 59, 53, 57, 69, 65, 58, 62, 54, 66, 71, 45, 75, 86, 70, 74, 55, 65, 56, 61, 69, 55, 73, 69, 49, 64, 73, 43, 68, 53, 67, 48, 51, 67, 62, 51, 86, 46, 71, 68, 88, 85, 74, 69, 61, 69, 57, 58, 53, 59, 47, 53, 84, 44, 57, 79, 55, 74, 56, 68, 116, 62, 103, 70, 47, 54, 55, 69, 62, 99, 61, 75, 68, 79, 72, 75, 60, 80, 50, 70, 51, 66, 63, 59, 74, 92, 69, 68, 62, 64, 118, 44, 56, 77, 56, 46, 72, 69, 60, 58, 103, 72, 66, 74, 53, 59, 36, 63, 71, 63, 56, 72, 81, 80, 65, 49, 76, 65, 54, 49, 63, 76, 72, 115, 56, 63, 49, 64, 70, 45, 54, 61, 42, 75, 64, 59, 84, 58, 58, 55, 57, 60, 74, 69, 59, 54, 59, 63, 67, 64, 80, 58, 73, 40, 65, 95, 94, 59, 85, 76, 64, 104, 56, 53, 73, 64, 56, 83, 56, 49, 70, 68, 77, 73, 57, 74, 67, 70, 53, 58, 58, 68, 56, 61, 61, 52, 57, 46, 59, 61, 65, 78, 82, 60, 54, 70, 69, 62, 65, 77, 62, 70, 68, 84, 64, 53, 59, 62, 62, 61, 53, 39, 65, 51, 63, 65, 48, 80, 77, 76, 72, 73, 91, 50, 62, 57, 63, 69, 40, 62, 80, 57, 83, 64, 63, 100, 80, 74, 67, 62, 82, 72, 91, 47, 66, 70, 67, 63, 64, 52, 81, 102, 55, 59, 54, 86, 60, 54, 51, 80, 67, 89, 68, 57, 61, 62, 66, 67, 61, 74, 71, 68, 80, 86, 58, 52, 41, 64, 48, 49, 43, 67, 46, 63, 64, 51, 57, 59, 70, 65, 80, 81, 59, 43, 68, 42, 63, 71, 64, 55, 56, 59, 70, 65, 55, 53, 64, 71, 59, 65, 53, 58, 106, 129, 60, 41, 71, 57, 58, 63, 66, 57, 55, 74, 62, 69, 78, 61, 61, 66, 47, 70, 59, 41, 80, 48, 67, 137, 69, 78, 65, 68, 78, 65, 59, 72, 39, 86, 75, 54, 49, 49, 78, 62, 52, 63, 65, 64, 57, 68, 50, 78, 71, 63, 57, 59, 58, 77, 70, 62, 73, 53, 67, 57, 87, 78, 92, 50, 43, 65, 65, 98, 78, 77, 81, 57, 57, 59, 64, 52, 50, 72, 63, 77, 64, 73, 98, 71, 64, 58, 53, 71, 49, 45, 40, 62, 47, 58, 68, 70, 55, 64, 67, 78, 57, 63, 68, 67, 56, 57, 66, 42, 69, 73, 60, 70, 80, 70, 62, 79, 66, 63, 69, 78, 66, 73, 65, 93, 74, 62, 68, 58, 72, 51, 64, 95, 64, 68, 59, 62, 70, 85, 64, 56, 55, 62, 52, 49, 84, 68, 57, 55, 55, 86, 91, 54, 77, 46, 66, 55, 70, 60, 76, 67, 67, 60, 62, 87, 60, 72, 74, 76, 76, 53, 58, 70, 39, 69, 75, 49, 61, 59, 45, 45, 76, 65, 59, 62, 65, 55, 50, 63, 82, 68, 57, 54, 69, 46, 59, 56, 78, 66, 71, 58, 60, 57, 70, 54, 62, 59, 69, 89, 68, 72, 68, 68, 51, 59, 59, 59, 63, 69, 63, 67, 67, 63, 61, 44, 72, 87, 73, 55, 59, 61, 76, 54, 71, 124, 60, 51, 56, 62, 58, 94, 99, 62, 71, 92, 61, 79, 69, 79, 54, 56, 67, 53, 58, 51, 64, 55, 52, 79, 63, 66, 63, 73, 49, 73, 69, 73, 74, 96, 63, 63, 90, 52, 51, 53, 75, 66, 73, 83, 76, 83, 67, 51, 74, 55, 63, 71, 59, 78, 66, 75, 66, 82, 75, 92, 67, 67, 85, 53, 63, 52, 50, 60, 78, 61, 52, 64, 64, 62, 68, 81, 58, 179, 72, 66, 63, 54, 89, 63, 52, 53, 54, 81, 76, 77, 60, 67, 55, 65, 65, 54, 86, 69, 73, 56, 64, 67, 90, 65, 52, 59, 80, 69, 54, 56, 65, 72, 49, 53, 37, 49, 61, 65, 63, 61, 44, 51, 58, 41, 67, 77, 86, 120, 73, 65, 63, 72, 58, 71, 61, 57, 67, 52, 67, 56, 63, 89, 51, 67, 57, 46, 61, 61, 64, 55, 67, 56, 73, 77, 76, 51, 63, 68, 83, 73, 57, 69, 70, 102, 48, 45, 67, 46, 65, 48, 65, 58, 49, 48, 57, 54, 61, 74, 74, 80, 46, 67, 64, 54, 61, 66, 67, 64, 69, 99, 124, 67, 63, 48, 46, 79, 50, 82, 59, 64, 46, 72, 81, 38, 69, 51, 109, 39, 80, 100, 104, 55, 54, 67, 50, 77, 58, 54, 66, 60, 58, 62, 58, 78, 64, 75, 64, 51, 56, 61, 48, 59, 74, 57, 71, 61, 69, 72, 60, 69, 41, 59, 60, 76, 94, 55, 62, 51, 66, 57, 67, 71, 59, 51, 83, 74, 60, 101, 67, 44, 44, 71, 69, 52, 70, 58, 80, 75, 80, 71, 66, 69, 50, 56, 94, 70, 61, 53, 44, 62, 79, 65, 73, 64, 57, 58, 73, 48, 62, 57, 85, 69, 45, 78, 83, 63, 84, 65, 156, 56, 68, 49, 73, 45, 72, 80, 59, 63, 71, 65, 51, 68, 84, 66, 59, 51, 69, 87, 55, 53, 92, 82, 51, 90, 77, 64, 41, 56, 82, 63, 71, 75, 55, 86, 119, 74, 75, 56, 75, 59, 69, 59, 73, 69, 76, 66, 73, 74, 55, 44, 98, 53, 71, 68, 63, 69, 67, 56, 60, 65, 74, 65, 63, 63, 81, 39, 66, 73, 54, 78, 58, 87, 62, 57, 83, 62, 67, 77, 75, 55, 71, 69, 70, 59, 60, 63, 58, 44, 88, 66, 55, 53, 53, 75, 70, 73, 73, 74, 64, 70, 68, 76, 63, 50, 78, 85, 47, 63, 73, 48, 55, 73, 82, 65, 71, 59, 73, 55, 59, 60, 55, 82, 63, 73, 62, 84, 62, 45, 75, 75, 58, 73, 55, 62, 78, 67, 83, 47, 58, 69, 41, 102, 64, 49, 61, 70, 53, 35, 51, 67, 80, 49, 59, 60, 61, 65, 61, 75, 83, 73, 68, 52, 71, 88, 65, 63, 54, 59, 80, 58, 65, 56, 63, 67, 72, 65, 68, 63, 50, 76, 68, 60, 61, 77, 55, 46, 45, 79, 70, 60, 40, 76, 67, 57, 37, 57, 48, 80, 71, 71, 62, 50, 87, 43, 60, 37, 59, 92, 36, 61, 32, 62, 64, 73, 92, 56, 55, 77, 65, 55, 78, 84, 57, 43, 66, 60, 72, 62, 65, 67, 55, 70, 68, 56, 39, 59, 79, 72, 57, 68, 55, 84, 42, 53, 51, 66, 64, 41, 83, 60, 66, 59, 48, 72, 42, 83, 97, 67, 62, 56, 81, 48, 72, 63, 93, 61, 80, 69, 43, 63, 51, 45, 74, 72, 51, 50, 65, 59, 47, 63, 62, 62, 62, 63, 74, 50, 67, 58, 57, 73, 169, 52, 73, 53, 50, 98, 57, 69, 68, 58, 83, 69, 57, 66, 54, 72, 44, 57, 56, 66, 62, 61, 71, 68, 51, 93, 81, 77, 62, 107, 83, 51, 106, 57, 65, 66, 72, 61, 46, 68, 63, 71, 92, 44, 58, 84, 75, 55, 82, 62, 50, 47, 92, 57, 62, 66, 56, 59, 53, 72, 79, 62, 72, 67, 104, 68, 65, 58, 72, 67, 63, 58, 58, 66, 64, 82, 67, 50, 61, 73, 58, 56, 58, 62, 75, 64, 89, 67, 81, 56, 53, 57, 45, 71, 71, 81, 41, 90, 60, 76, 74, 74, 124, 58, 53, 85, 61, 48, 80, 62, 88, 56, 58, 65, 71, 76, 83, 79, 54, 49, 84, 65, 56, 87, 46, 54, 52, 54, 55, 77, 62, 62, 68, 90, 85, 57, 71, 62, 73, 101, 50, 68, 52, 100, 81, 49, 60, 55, 54, 54, 88, 72, 84, 57, 68, 69, 82, 78, 74, 56, 65, 94, 65, 69, 49, 76, 46, 50, 63, 53, 82, 57, 73, 72, 80, 82, 70, 78, 61, 53, 49, 40, 70, 46, 42, 79, 61, 115, 67, 41, 38, 59, 62, 58, 83, 92, 57, 64, 56, 59, 66, 64, 50, 67, 69, 68, 57, 69, 55, 53, 66, 62, 60, 59, 71, 51, 79, 78, 57, 62, 69, 62, 71, 76, 84, 68, 95, 93, 63, 70, 136, 52, 86, 71, 72, 44, 69, 72, 72, 61, 65, 72, 70, 59, 53, 84, 58, 69, 59, 68, 88, 68, 88, 33, 52, 66, 66, 76, 63, 62, 75, 63, 69, 79, 69, 71, 60, 43, 69, 43, 65, 53, 71, 76, 69, 67, 55, 113, 45, 69, 77, 55, 56, 40, 23, 93, 62, 60, 70, 69, 67, 67, 94, 69, 63, 45, 59, 85, 61, 72, 69, 68, 66, 62, 77, 51, 75, 54, 76, 50, 51, 62, 76, 58, 51, 53, 52, 77, 73, 63, 87, 72, 69, 86, 65, 48, 73, 68, 65, 71, 66, 62, 67, 55, 86, 90, 59, 51, 80, 60, 40, 96, 94, 50, 54, 59, 61, 62, 72, 71, 55, 49, 67, 71, 60, 59, 59, 47, 46, 58, 70, 57, 70, 62, 88, 84, 58, 51, 66, 59, 75, 59, 94, 67, 56, 71, 64, 81, 66, 61, 73, 111, 56, 55, 71, 71, 74, 58, 57, 126, 80, 69, 55, 56, 105, 73, 78, 77, 90, 70, 59, 90, 58, 71, 79, 54, 63, 54, 59, 72, 57, 61, 34, 82, 76, 58, 55, 49, 59, 63, 51, 78, 71, 58, 56, 47, 48, 52, 82, 77, 63, 51, 60, 69, 49, 37, 88, 76, 55, 52, 55, 63, 80, 103, 82, 74, 113, 54, 66, 78, 53, 51, 48, 55, 60, 80, 76, 86, 56, 58, 101, 68, 68, 75, 74, 81, 54, 61, 64, 67, 67, 78, 36, 55, 59, 86, 54, 48, 48, 69, 91, 51, 61, 68, 67, 65, 59, 71, 52, 52, 78, 69, 76, 63, 47, 65, 73, 93, 64, 80, 71, 88, 51, 42, 71, 47, 60, 45, 72, 93, 71, 54, 38, 83, 70, 94, 62, 54, 38, 53, 64, 55, 82, 48, 72, 64, 59, 86, 48, 74, 104, 72, 67, 81, 73, 90, 60, 88, 70, 75, 69, 94, 87, 89, 79, 58, 54, 61, 93, 77, 71, 60, 62, 149, 58, 79, 59, 66, 93, 61, 45, 54, 49, 65, 60, 96, 69, 90, 73, 52, 48, 58, 93, 106, 54, 70, 64, 59, 94, 60, 88, 43, 66, 83, 93, 51, 61, 61, 66, 57, 48, 67, 53, 57, 64, 56, 75, 83, 85, 50, 55, 59, 59, 63, 53, 69, 73, 64, 70, 65, 68, 67, 61, 55, 53, 67, 105, 62, 55, 42, 59, 59, 66, 61, 64, 82, 71, 49, 68, 64, 66, 58, 71, 56, 73, 50, 82, 73, 86, 69, 51, 59, 64, 74, 79, 81, 43, 50, 70, 64, 75, 68, 63, 111, 60, 53, 52, 59, 63, 72, 67, 75, 71, 63, 81, 43, 55, 68, 63, 69, 55, 65, 63, 55, 77, 67, 48, 56, 70, 63, 54, 68, 82, 65, 98, 73, 55, 57, 69, 123, 75, 62, 72, 61, 87, 62, 54, 77, 58, 83, 68, 51, 47, 63, 45, 80, 63, 67, 87, 72, 87, 48, 67, 37, 80, 59, 62, 83, 70, 58, 81, 64, 55, 74, 128, 69, 70, 47, 65, 75, 52, 88, 60, 51, 59, 78, 63, 50, 63, 61, 58, 47, 74, 48, 77, 81, 54, 56, 79, 52, 59, 40, 63, 65, 70, 64, 62, 83, 76, 79, 69, 70, 63, 59, 53, 44, 71, 91, 67, 99, 63, 60, 61, 64, 71, 76, 57, 61, 67, 99, 54, 76, 110, 49, 87, 64, 94, 65, 69, 45, 54, 85, 72, 71, 48, 48, 61, 49, 71, 84, 76, 52, 67, 91, 67, 60, 58, 60, 56, 53, 66, 65, 72, 57, 58, 53, 59, 54, 66, 84, 66, 87, 61, 65, 63, 50, 83, 64, 73, 75, 69, 57, 86, 67, 71, 70, 124, 65, 64, 66, 58, 58, 60, 91, 56, 76, 83, 68, 61, 72, 51, 58, 62, 68, 65, 69, 69, 71, 49, 56, 72, 63, 87, 69, 42, 57, 55, 70, 78, 63, 59, 63, 56, 67, 48, 83, 108, 69, 64, 33, 53, 66, 45, 63, 67, 54, 54, 64, 59, 80, 61, 107, 41, 75, 69, 58, 59, 54, 76, 93, 73, 63, 73, 66, 62, 75, 76, 55, 58, 68, 55, 64, 67, 54, 45, 61, 60, 67, 74, 61, 75, 61, 76, 81, 56, 71, 151, 90, 52, 60, 64, 46, 48, 77, 78, 70, 96, 65, 65, 62, 37, 74, 64, 41, 41, 58, 73, 91, 60, 74, 74, 65, 90, 55, 67, 72, 62, 54, 62, 59, 64, 92, 69, 63, 63, 47, 89, 83, 89, 72, 56, 100, 94, 61, 64, 55, 57, 76, 81, 54, 76, 69, 68, 53, 51, 75, 74, 74, 62, 72, 72, 64, 68, 69, 57, 49, 60, 74, 61, 52, 81, 49, 55, 61, 63, 53, 55, 88, 77, 65, 50, 61, 66, 63, 55, 75, 45, 69, 56, 89, 82, 40, 54, 57, 48, 62, 65, 76, 79, 83, 64, 63, 87, 52, 70, 47, 62, 68, 65, 56, 59, 59, 56, 61, 67, 61, 70, 60, 117, 56, 67, 74, 79, 63, 63, 57, 59, 86, 65, 73, 54, 65, 77, 66, 73, 77, 102, 74, 66, 64, 62, 76, 43, 91, 82, 58, 48, 73, 63, 64, 73, 90, 58, 91, 42, 60, 77, 80, 59, 29, 63, 55, 58, 30, 53, 61, 66, 90, 65, 74, 64, 47, 52, 65, 52, 72, 50, 62, 56, 59, 61, 51, 67, 100, 63, 59, 59, 56, 59, 111, 57, 79, 58, 73, 66, 69, 52, 83, 77, 65, 51, 78, 75, 64, 51, 58, 42, 66, 107, 61, 56, 75, 83, 71, 50, 62, 64, 72, 61, 47, 62, 65, 94, 70, 67, 50, 85, 96, 41, 99, 55, 70, 55, 96, 55, 57, 68, 79, 69, 63, 64, 51, 74, 70, 33, 61, 63, 56, 77, 85, 85, 68, 52, 63, 52, 80, 68, 43, 53, 48, 48, 47, 71, 75, 70, 116, 52, 58, 74, 86, 82, 70, 74, 76, 50, 91, 54, 74, 47, 76, 81, 51, 51, 76, 71, 68, 74, 83, 75, 66, 80, 47, 79, 77, 62, 70, 60, 74, 89, 65, 89, 63, 77, 70, 59, 60, 90, 63, 62, 60, 63, 66, 65, 67, 61, 63, 36, 60, 98, 75, 62, 62, 67, 90, 71, 67, 57, 45, 64, 52, 66, 78, 73, 47, 68, 60, 68, 82, 47, 60, 58, 74, 60, 60, 49, 54, 44, 58, 66, 56, 66, 58, 46, 64, 70, 67, 81, 72, 72, 57, 36, 69, 68, 78, 57, 52, 77, 60, 51, 62, 59, 69, 56, 60, 79, 62, 65, 62, 58, 58, 70, 71, 49, 60, 57, 52, 52, 62, 57, 64, 73, 60, 60, 48, 43, 68, 64, 64, 77, 68, 72, 58, 56, 52, 57, 75, 80, 64, 61, 65, 68, 66, 97, 35, 70, 91, 57, 64, 54, 72, 44, 70, 51, 66, 51, 103, 60, 60, 61, 57, 58, 79, 62, 56, 40, 68, 82, 59, 76, 53, 59, 74, 69, 134, 68, 65, 68, 62, 50, 95, 54, 67, 69, 114, 48, 52, 66, 54, 58, 72, 74, 69, 69, 59, 63, 58, 59, 57, 56, 103, 47, 54, 69, 70, 65, 69, 79, 64, 74, 53, 50, 72, 66, 56, 55, 60, 90, 72, 99, 57, 63, 69, 46, 57, 61, 52, 72, 64, 56, 65, 70, 46, 91, 107, 71, 51, 55, 98, 47, 75, 48, 64, 72, 62, 73, 65, 60, 69, 71, 52, 63, 66, 63, 44, 56, 78, 53, 63, 67, 63, 84, 68, 64, 60, 61, 71, 61, 70, 59, 74, 71, 47, 54, 54, 84, 61, 59, 73, 89, 50, 48, 82, 57, 63, 66, 68, 51, 93, 57, 59, 62, 60, 63, 54, 66, 69, 57, 51, 55, 59, 56, 58, 68, 52, 79, 53, 67, 72, 66, 70, 113, 42, 76, 83, 47, 53, 47, 67, 52, 106, 90, 54, 96, 73, 65, 80, 49, 63, 39, 78, 87, 74, 49, 96, 49, 62, 76, 97, 65, 70, 67, 64, 98, 67, 75, 63, 64, 57, 86, 56, 51, 68, 64, 56, 44, 95, 81, 48, 48, 72, 68, 67, 78, 63, 63, 56, 51, 60, 68, 72, 74, 73, 55, 67, 104, 70, 60, 50, 55, 60, 51, 80, 66, 80, 64, 67, 65, 74, 63, 57, 72, 66, 53, 71, 47, 71, 55, 80, 64, 52, 59, 44, 58, 61, 67, 66, 70, 61, 65, 44, 66, 76, 63, 51, 78, 91, 69, 56, 47, 53, 49, 75, 68, 74, 52, 75, 68, 57, 65, 81, 84, 56, 66, 67, 61, 67, 70, 56, 72, 83, 51, 47, 62, 61, 85, 65, 67, 57, 51, 75, 64, 54, 51, 78, 51, 67, 70, 93, 63, 70, 71, 71, 61, 44, 65, 77, 50, 78, 64, 96, 43, 73, 47, 69, 65, 82, 58, 75, 67, 74, 73, 67, 54, 53, 41, 58, 64, 60, 34, 74, 46, 63, 66, 80, 73, 88, 68, 68, 62, 75, 39, 75, 81, 68, 61, 34, 56, 79, 51, 72, 53, 60, 72, 61, 65, 54, 59, 59, 90, 63, 69, 50, 66, 60, 60, 55, 50, 69, 57, 63, 56, 55, 75, 60, 64, 79, 71, 60, 70, 63, 55, 67, 51, 54, 78, 56, 64, 60, 75, 61, 65, 44, 67, 66, 54, 68, 55, 27, 66, 77, 79, 63, 53, 60, 66, 66, 70, 78, 64, 71, 52, 57, 58, 73, 64, 67, 84, 57, 62, 82, 66, 59, 61, 54, 51, 65, 55, 72, 58, 50, 54, 71, 65, 58, 74, 65, 52, 47, 38, 82, 52, 51, 66, 93, 61, 49, 100, 64, 98, 73, 75, 61, 62, 60, 95, 99, 59, 59, 74, 93, 80, 62, 45, 41, 53, 53, 66, 65, 70, 40, 54, 73, 86, 109, 48, 39, 57, 67, 60, 69, 52, 66, 53, 62, 105, 68, 79, 46, 79, 68, 60, 83, 82, 62, 64, 79, 75, 81, 82, 61, 58, 76, 83, 63, 30, 66, 58, 92, 53, 59, 73, 98, 60, 83, 69, 77, 57, 78, 67, 86, 78, 63, 60, 103, 68, 65, 81, 70, 80, 62, 63, 59, 77, 72, 63, 64, 82, 67, 46, 67, 68, 73, 60, 70, 42, 55, 67, 82, 66, 68, 67, 104, 44, 85, 65, 68, 45, 86, 62, 61, 58, 65, 48, 42, 74, 81, 89, 69, 86, 62, 92, 43, 70, 64, 65, 41, 67, 53, 62, 59, 60, 57, 58, 45, 84, 77, 100, 69, 64, 58, 60, 75, 48, 55, 61, 77, 64, 55, 78, 85, 82, 47, 68, 56, 60, 67, 67, 79, 55, 54, 69, 89, 104, 53, 54, 77, 70, 70, 63, 70, 53, 69, 50, 71, 46, 46, 85, 68, 71, 59, 62, 59, 52, 52, 46, 79, 71, 69, 57, 95, 75, 72, 58, 62, 54, 61, 68, 48, 65, 49, 49, 92, 72, 76, 91, 64, 57, 81, 71, 77, 55, 81, 81, 55, 72, 112, 61, 73, 46, 69, 77, 69, 68, 64, 75, 43, 42, 81, 52, 64, 69, 64, 44, 51, 85, 52, 56, 55, 66, 89, 58, 50, 74, 71, 57, 71, 32, 76, 88, 60, 92, 57, 61, 63, 107, 63, 63, 56, 75, 65, 89, 76, 53, 71, 58, 68, 56, 63, 56, 72, 61, 78, 86, 67, 56, 73, 79, 83, 76, 74, 57, 47, 84, 55, 47, 56, 66, 34, 82, 56, 46, 55, 58, 57, 61, 61, 58, 60, 109, 61, 75, 42, 47, 65, 55, 58, 88, 62, 56, 77, 76, 68, 58, 74, 50, 60, 72, 68, 50, 51, 54, 59, 69, 74, 67, 70, 61, 59, 61, 61, 72, 102, 64, 72, 59, 60, 54, 69, 85, 60, 63, 66, 59, 58, 66, 74, 59, 107, 60, 65, 68, 61, 82, 65, 64, 58, 62, 54, 65, 62, 87, 75, 78, 67, 55, 67, 59, 65, 75, 73, 51, 67, 66, 65, 72, 63, 121, 55, 104, 96, 101, 75, 58, 78, 56, 55, 49, 46, 52, 66, 87, 73, 63, 68, 101, 60, 80, 69, 61, 47, 56, 70, 45, 83, 76, 53, 50, 59, 85, 80, 72, 102, 57, 68, 58, 71, 66, 60, 67, 53, 47, 61, 42, 65, 65, 70, 71, 79, 70, 64, 100, 71, 69, 63, 66, 71, 75, 51, 68, 71, 56, 81, 88, 67, 73, 47, 58, 58, 72, 54, 73, 69, 80, 60, 68, 59, 49, 82, 65, 59, 61, 66, 45, 75, 62, 67, 75, 57, 57, 102, 128, 38, 70, 70, 60, 64, 44, 57, 47, 67, 62, 78, 73, 75, 61, 42, 60, 50, 51, 61, 77, 50, 71, 67, 57, 53, 75, 60, 64, 62, 62, 75, 47, 83, 52, 74, 90, 76, 69, 68, 91, 75, 89, 75, 54, 62, 82, 53, 61, 57, 69, 57, 63, 55, 71, 66, 54, 50, 57, 97, 72, 58, 61, 73, 52, 62, 72, 47, 124, 70, 56, 61, 66, 55, 58, 71, 58, 59, 57, 61, 45, 58, 52, 66, 60, 71, 65, 74, 59, 61, 77, 51, 53, 54, 65, 54, 50, 79, 52, 52, 63, 68, 67, 69, 49, 63, 92, 56, 81, 55, 80, 70, 77, 78, 76, 66, 84, 55, 66, 57, 65, 88, 100, 80, 80, 64, 42, 105, 56, 48, 81, 65, 79, 65, 47, 59, 71, 62, 42, 45, 81, 66, 58, 59, 79, 58, 73, 78, 63, 65, 63, 103, 61, 71, 77, 72, 56, 67, 74, 63, 71, 85, 70, 58, 71, 74, 63, 73, 64, 45, 106, 78, 64, 61, 82, 78, 56, 71, 100, 58, 52, 49, 66, 83, 62, 60, 73, 69, 61, 59, 68, 57, 51, 65, 54, 68, 75, 105, 73, 61, 55, 70, 48, 71, 64, 70, 57, 83, 60, 92, 51, 49, 76, 52, 81, 66, 57, 53, 52, 68, 89, 67, 59, 76, 43, 35, 79, 80, 68, 63, 68, 51, 67, 65, 87, 82, 40, 59, 75, 63, 70, 98, 86, 75, 57, 86, 63, 69, 73, 74, 66, 76, 64, 65, 67, 84, 64, 55, 52, 75, 53, 68, 69, 54, 74, 66, 103, 48, 66, 60, 59, 55, 61, 54, 62, 55, 52, 67, 63, 84, 45, 63, 58, 64, 72, 69, 44, 51, 57, 59, 95, 65, 47, 78, 75, 46, 61, 66, 67, 65, 79, 121, 74, 57, 53, 79, 73, 70, 65, 70, 69, 74, 58, 50, 62, 77, 69, 55, 76, 87, 71, 52, 61, 59, 69, 81, 65, 71, 75, 64, 52, 59, 57, 113, 77, 60, 61, 53, 54, 68, 59, 59, 69, 55, 59, 57, 65, 59, 75, 66, 33, 48, 72, 53, 53, 45, 74, 69, 65, 66, 76, 54, 60, 58, 89, 87, 46, 81, 46, 55, 67, 98, 58, 66, 100, 57, 63, 51, 60, 61, 61, 68, 58, 90, 57, 59, 74, 79, 66, 53, 65, 70, 53, 57, 76, 41, 84, 80, 56, 51, 57, 61, 63, 98, 48, 55, 51, 81, 54, 60, 76, 53, 60, 66, 54, 95, 59, 72, 55, 57, 93, 51, 102, 62, 56, 65, 67, 49, 60, 68, 52, 86, 63, 59, 38, 72, 50, 86, 59, 63, 62, 76, 66, 46, 66, 59, 77, 60, 53, 70, 45, 67, 55, 58, 71, 59, 47, 87, 71, 91, 70, 74, 61, 52, 66, 59, 62, 74, 77, 52, 81, 83, 73, 70, 54, 60, 87, 60, 94, 83, 56, 70, 75, 63, 71, 45, 60, 77, 89, 58, 54, 53, 38, 88, 54, 63, 59, 57, 48, 69, 48, 58, 73, 104, 77, 64, 57, 52, 63, 76, 61, 52, 66, 56, 102, 70, 75, 68, 59, 61, 74, 74, 67, 69, 62, 81, 57, 70, 58, 67, 97, 60, 42, 101, 72, 67, 76, 58, 44, 130, 82, 46, 59, 53, 77, 46, 73, 49, 81, 65, 54, 58, 66, 61, 62, 70, 74, 73, 61, 65, 71, 60, 101, 93, 76, 60, 64, 57, 68, 67, 60, 72, 54, 72, 45, 56, 105, 92, 58, 51, 77, 83, 63, 79, 71, 63, 65, 52, 74, 58, 68, 66, 79, 53, 74, 53, 77, 90, 70, 54, 71, 58, 59, 80, 56, 65, 42, 47, 81, 52, 53, 60, 51, 53, 55, 87, 49, 69, 68, 47, 47, 47, 99, 49, 39, 72, 72, 82, 68, 75, 71, 61, 80, 68, 50, 68, 67, 52, 61, 57, 67, 53, 54, 49, 60, 70, 73, 72, 73, 70, 67, 70, 55, 45, 60, 69, 64, 74, 67, 57, 78, 64, 58, 41, 60, 71, 57, 62, 58, 120, 77, 71, 65, 62, 56, 126, 45, 73, 47, 115, 66, 67, 63, 84, 59, 58, 79, 68, 54, 51, 60, 78, 83, 80, 59, 77, 75, 55, 58, 50, 65, 40, 57, 63, 107, 50, 46, 85, 43, 43, 98, 59, 56, 66, 69, 64, 72, 67, 56, 55, 54, 55, 79, 52, 64, 51, 56, 61, 51, 61, 71, 71, 64, 61, 70, 52, 78, 69, 51, 65, 80, 54, 37, 80, 99, 88, 58, 52, 52, 61, 75, 66, 49, 70, 62, 48, 74, 92, 61, 55, 60, 64, 76, 66, 70, 62, 76, 70, 78, 61, 75, 74, 54, 39, 58, 54, 64, 62, 91, 66, 72, 49, 43, 78, 60, 58, 73, 69, 59, 61, 56, 63, 68, 47, 73, 76, 49, 63, 61, 55, 74, 55, 78, 46, 73, 48, 64, 56, 62, 98, 68, 59, 78, 83, 66, 59, 71, 85, 61, 51, 68, 71, 51, 74, 47, 66, 48, 63, 110, 69, 69, 73, 55, 65, 75, 64, 74, 62, 65, 58, 75, 66, 56, 84, 54, 79, 59, 82, 41, 61, 52, 67, 107, 57, 43, 65, 55, 73, 57, 73, 56, 48, 57, 55, 80, 52, 76, 70, 62, 70, 48, 83, 69, 59, 57, 63, 62, 55, 58, 61, 61, 37, 60, 74, 81, 81, 84, 49, 76, 60, 88, 56, 49, 55, 114, 88, 63, 68, 72, 67, 37, 67, 100, 72, 79, 66, 96, 62, 64, 141, 80, 82, 50, 65, 62, 71, 81, 101, 62, 82, 82, 101, 80, 85, 70, 67, 64, 55, 64, 86, 80, 47, 55, 71, 70, 41, 68, 101, 59, 62, 51, 52, 56, 91, 52, 64, 55, 65, 92, 45, 72, 61, 52, 71, 77, 70, 62, 57, 78, 79, 65, 64, 60, 61, 116, 78, 53, 81, 68, 98, 52, 69, 90, 52, 70, 68, 62, 57, 48, 79, 58, 57, 98, 48, 64, 99, 66, 69, 77, 64, 59, 61, 74, 59, 55, 79, 52, 74, 87, 63, 71, 41, 68, 49, 59, 68, 64, 53, 47, 65, 69, 55, 65, 69, 50, 71, 59, 55, 110, 45, 63, 76, 74, 71, 87, 89, 70, 63, 54, 57, 79, 45, 70, 53, 69, 82, 57, 53, 57, 72, 81, 53, 55, 68, 71, 71, 67, 70, 67, 50, 68, 70, 74, 68, 61, 62, 66, 75, 51, 44, 66, 53, 78, 44, 47, 52, 84, 66, 73, 62, 67, 103, 71, 59, 51, 61, 72, 78, 56, 54, 100, 67, 68, 80, 56, 52, 55, 55, 60, 70, 60, 76, 70, 71, 58, 72, 49, 81, 131, 55, 56, 58, 67, 80, 74, 66, 63, 64, 73, 77, 84, 55, 48, 89, 92, 65, 74, 77, 62, 53, 57, 62, 54, 43, 34, 86, 59, 82, 61, 86, 104, 65, 79, 72, 60, 72, 84, 60, 49, 47, 53, 60, 66, 54, 72, 68, 58, 80, 66, 55, 70, 77, 98, 63, 49, 61, 70, 56, 61, 68, 62, 63, 59, 64, 63, 49, 49, 96, 61, 97, 85, 86, 63, 69, 42, 118, 62, 60, 51, 67, 68, 114, 66, 60, 65, 68, 67, 63, 60, 63, 57, 61, 68, 93, 39, 61, 54, 51, 61, 58, 53, 52, 59, 67, 71, 55, 77, 62, 77, 54, 51, 63, 67, 46, 56, 62, 78, 89, 61, 50, 46, 92, 50, 56, 57, 71, 55, 58, 72, 60, 61, 67, 68, 56, 62, 86, 80, 41, 59, 54, 61, 60, 70, 63, 75, 37, 62, 67, 48, 106, 66, 70, 66, 46, 61, 40, 65, 76, 106, 43, 70, 63, 44, 65, 54, 53, 72, 49, 71, 74, 74, 66, 75, 70, 88, 60, 125, 70, 68, 65, 48, 60, 50, 65, 95, 73, 93, 58, 105, 60, 51, 50, 51, 67, 44, 77, 62, 47, 81, 55, 78, 48, 80, 62, 50, 45, 53, 74, 65, 78, 57, 63, 67, 59, 50, 65, 48, 55, 53, 80, 86, 67, 87, 44, 72, 81, 61, 93, 60, 87, 64, 66, 94, 50, 79, 61, 60, 66, 64, 74, 54, 74, 75, 63, 63, 54, 71, 67, 51, 56, 67, 48, 61, 63, 57, 64, 80, 74, 55, 49, 68, 67, 69, 66, 68, 51, 66, 53, 60, 49, 52, 73, 57, 61, 65, 61, 61, 62, 76, 59, 43, 78, 63, 64, 90, 38, 67, 79, 58, 55, 102, 62, 61, 68, 61, 56, 44, 69, 75, 68, 65, 76, 74, 83, 77, 59, 53, 64, 65, 57, 65, 62, 55, 89, 54, 70, 68, 66, 46, 82, 73, 79, 48, 51, 65, 91, 64, 85, 73, 91, 58, 71, 58, 54, 70, 65, 71, 77, 61, 69, 32, 65, 68, 59, 58, 74, 60, 61, 45, 69, 55, 65, 56, 46, 55, 62, 58, 58, 69, 54, 49, 80, 63, 78, 75, 51, 51, 51, 68, 52, 65, 57, 77, 63, 55, 56, 60, 64, 69, 57, 63, 71, 57, 58, 55, 69, 67, 63, 68, 66, 67, 67, 50, 67, 90, 53, 82, 62, 59, 40, 75, 59, 82, 73, 55, 79, 80, 51, 56, 62, 61, 68, 91, 54, 73, 68, 45, 45, 66, 68, 73, 51, 55, 47, 72, 52, 87, 79, 75, 69, 69, 55, 54, 66, 58, 61, 35, 72, 55, 55, 64, 58, 59, 65, 55, 58, 90, 80, 60, 81, 64, 90, 55, 56, 53, 70, 70, 55, 52, 67, 62, 72, 61, 63, 63, 84, 46, 52, 57, 76, 66, 54, 92, 44, 76, 49, 70, 58, 77, 68, 67, 61, 46, 95, 46, 58, 82, 43, 56, 58, 64, 82, 81, 70, 59, 68, 51, 74, 80, 54, 51, 124, 89, 56, 40, 62, 67, 86, 65, 47, 62, 69, 53, 100, 65, 61, 54, 61, 58, 79, 80, 75, 61, 82, 62, 72, 95, 66, 40, 78, 63, 64, 53, 62, 50, 60, 66, 69, 75, 105, 73, 64, 72, 66, 62, 85, 66, 72, 59, 66, 56, 121, 47, 71, 70, 65, 78, 63, 91, 78, 80, 62, 73, 62, 83, 58, 49, 50, 81, 69, 54, 55, 60, 72, 66, 68, 60, 63, 65, 79, 63, 95, 76, 66, 46, 71, 44, 59, 59, 51, 63, 60, 83, 66, 99, 63, 53, 59, 63, 64, 71, 52, 55, 65, 68, 61, 69, 65, 67, 45, 62, 58, 81, 76, 84, 78, 60, 76, 80, 70, 61, 48, 72, 57, 70, 80, 86, 67, 73, 53, 46, 65, 73, 69, 75, 68, 58, 66, 67, 86, 88, 66, 60, 55, 82, 69, 68, 77, 71, 73, 59, 63, 74, 64, 85, 57, 43, 71, 90, 71, 47, 67, 83, 50, 64, 73, 74, 70, 69, 65, 63, 63, 59, 54, 46, 63, 62, 59, 55, 67, 77, 56, 65, 84, 64, 75, 66, 52, 64, 49, 69, 58, 61, 119, 75, 62, 68, 55, 71, 52, 76, 67, 67, 50, 72, 58, 72, 54, 70, 60, 42, 70, 65, 58, 80, 67, 51, 64, 55, 61, 72, 59, 62, 61, 75, 57, 58, 57, 72, 74, 54, 80, 56, 62, 74, 69, 85, 58, 66, 61, 62, 62, 71, 69, 47, 55, 65, 61, 71, 61, 62, 75, 77, 71, 67, 93, 70, 62, 50, 66, 58, 88, 65, 67, 64, 73, 80, 64, 63, 77, 63, 67, 56, 59, 72, 55, 129, 62, 87, 73, 52, 68, 91, 74, 67, 69, 67, 87, 73, 82, 62, 79, 44, 70, 74, 65, 67, 87, 51, 49, 66, 67, 71, 55, 58, 81, 75, 38, 68, 64, 59, 65, 64, 66, 64, 69, 58, 49, 53, 68, 56, 70, 57, 60, 63, 91, 54, 69, 74, 52, 61, 70, 47, 68, 60, 69, 80, 50, 59, 97, 74, 46, 70, 87, 66, 75, 95, 69, 57, 62, 74, 64, 79, 42, 92, 64, 70, 80, 86, 64, 69, 62, 61, 90, 65, 76, 74, 63, 91, 67, 87, 55, 59, 68, 78, 48, 68, 61, 60, 51, 73, 53, 69, 59, 77, 62, 77, 67, 48, 125, 55, 60, 75, 78, 59, 49, 59, 66, 68, 52, 55, 73, 51, 68, 74, 75, 56, 74, 82, 67, 50, 70, 79, 65, 63, 60, 52, 59, 60, 86, 72, 69, 54, 59, 53, 56, 91, 68, 62, 71, 78, 59, 84, 65, 80, 53, 73, 65, 65, 53, 72, 66, 64, 58, 85, 65, 69, 53, 135, 74, 50, 58, 58, 71, 63, 73, 77, 65, 70, 48, 77, 82, 74, 71, 61, 62, 51, 63, 64, 57, 64, 63, 58, 64, 65, 72, 51, 56, 64, 52, 65, 62, 58, 58, 97, 69, 74, 70, 72, 58, 75, 58, 69, 57, 69, 68, 73, 77, 67, 53, 57, 63, 63, 59, 66, 39, 56, 120, 67, 64, 69, 64, 68, 75, 72, 78, 135, 86, 60, 67, 85, 67, 73, 55, 71, 90, 60, 61, 72, 74, 57, 62, 61, 62, 62, 59, 56, 56, 64, 64, 66, 55, 70, 58, 66, 65, 54, 68, 66, 41, 69, 56, 75, 63, 86, 59, 78, 44, 63, 72, 74, 80, 78, 59, 58, 71, 65, 53, 65, 66, 98, 63, 63, 51, 47, 64, 56, 95, 96, 65, 82, 71, 50, 52, 67, 87, 63, 57, 95, 66, 59, 86, 59, 67, 76, 97, 57, 62, 74, 102, 65, 59, 60, 43, 51, 49, 65, 43, 77, 69, 96, 50, 74, 78, 73, 65, 64, 63, 39, 58, 73, 69, 57, 64, 62, 68, 50, 63, 61, 43, 60, 64, 60, 56, 59, 75, 62, 66, 80, 77, 104, 55, 63, 66, 74, 68, 58, 57, 62, 54, 57, 60, 74, 66, 49, 75, 56, 97, 68, 60, 68, 43, 75, 79, 54, 60, 78, 65, 84, 75, 72, 64, 72, 71, 73, 72, 58, 91, 82, 51, 63, 52, 48, 76, 74, 65, 60, 50, 70, 99, 90, 68, 65, 68, 63, 85, 94, 58, 84, 86, 74, 68, 75, 49, 73, 82, 67, 80, 51, 62, 69, 52, 64, 75, 68, 52, 61, 55, 62, 53, 61, 71, 67, 42, 83, 38, 68, 55, 42, 62, 70, 59, 67, 67, 60, 48, 64, 59, 103, 52, 86, 74, 60, 99, 68, 68, 45, 73, 59, 102, 68, 60, 63, 61, 64, 69, 62, 53, 50, 55, 66, 66, 56, 54, 75, 55, 65, 56, 76, 46, 67, 47, 53, 71, 86, 77, 67, 64, 70, 48, 51, 62, 58, 59, 57, 52, 71, 72, 50, 87, 69, 90, 63, 55, 62, 58, 74, 72, 69, 81, 61, 56, 69, 75, 76, 131, 68, 42, 61, 76, 52, 48, 63, 45, 30, 66, 77, 66, 55, 72, 58, 66, 66, 44, 55, 66, 66, 47, 65, 58, 55, 66, 65, 78, 49, 56, 64, 95, 79, 59, 73, 72, 87, 73, 52, 54, 60, 83, 65, 60, 71, 67, 41, 61, 56, 58, 65, 71, 58, 94, 91, 99, 82, 57, 73, 58, 68, 53, 76, 68, 59, 64, 47, 65, 41, 60, 49, 72, 75, 66, 88, 69, 75, 87, 53, 52, 76, 72, 60, 55, 60, 74, 70, 77, 66, 56, 87, 49, 72, 62, 69, 57, 61, 68, 51, 74, 98, 55, 67, 49, 72, 63, 52, 64, 81, 81, 89, 53, 66, 57, 59, 42, 60, 61, 66, 69, 72, 60, 60, 84, 78, 62, 45, 91, 67, 109, 85, 64, 73, 84, 92, 71, 58, 46, 60, 52, 124, 72, 65, 83, 59, 94, 54, 59, 147, 67, 64, 58, 68, 86, 52, 71, 56, 70, 58, 83, 71, 54, 39, 80, 70, 63, 64, 100, 160, 62, 43, 57, 65, 85, 70, 62, 62, 58, 79, 61, 54, 50, 60, 79, 38, 55, 88, 56, 77, 65, 64, 70, 88, 54, 49, 56, 63, 68, 55, 57, 90, 100, 74, 69, 79, 89, 59, 57, 73, 63, 50, 66, 62, 71, 87, 87, 55, 75, 63, 55, 59, 70, 51, 72, 63, 65, 67, 55, 70, 53, 72, 59, 57, 66, 51, 76, 69, 74, 53, 77, 52, 76, 63, 63, 67, 42, 71, 67, 54, 51, 62, 69, 67, 51, 71, 66, 70, 73, 84, 88, 69, 62, 70, 86, 53, 63, 65, 63, 60, 74, 46, 75, 65, 64, 69, 69, 69, 73, 58, 67, 64, 76, 57, 73, 58, 56, 78, 84, 68, 56, 65, 58, 58, 92, 48, 64, 46, 82, 63, 101, 55, 49, 66, 75, 72, 68, 64, 60, 86, 74, 65, 61, 63, 73, 69, 63, 60, 44, 80, 45, 54, 76, 68, 69, 59, 72, 58, 52, 55, 65, 67, 62, 65, 43, 58, 62, 73, 55, 74, 53, 28, 91, 49, 66, 69, 78, 48, 67, 48, 56, 63, 53, 50, 75, 46, 92, 65, 58, 74, 76, 72, 70, 51, 78, 64, 78, 55, 54, 70, 46, 95, 44, 55, 53, 60, 70, 77, 62, 51, 57, 73, 51, 65, 64, 58, 70, 52, 57, 72, 52, 49, 61, 70, 71, 71, 85, 59, 57, 80, 68, 109, 75, 77, 44, 137, 63, 53, 55, 67, 44, 58, 60, 48, 59, 70, 61, 63, 65, 62, 81, 70, 61, 66, 46, 79, 64, 50, 92, 56, 82, 45, 78, 65, 110, 87, 58, 77, 79, 62, 71, 60, 65, 55, 52, 65, 56, 74, 65, 55, 52, 59, 70, 70, 62, 53, 70, 70, 69, 54, 62, 71, 75, 91, 70, 62, 58, 76, 75, 62, 55, 69, 78, 61, 95, 58, 55, 61, 54, 77, 59, 67, 67, 115, 59, 57, 72, 58, 51, 60, 78, 61, 70, 74, 53, 61, 58, 90, 79, 58, 83, 53, 61, 71, 94, 63, 71, 62, 54, 79, 65, 57, 59, 59, 65, 74, 87, 59, 48, 49, 74, 62, 71, 101, 52, 62, 58, 84, 55, 62, 83, 88, 72, 72, 65, 76, 80, 53, 66, 57, 64, 79, 48, 79, 70, 66, 62, 58, 52, 59, 54, 48, 83, 66, 59, 67, 67, 65, 68, 58, 64, 61, 65, 87, 79, 68, 68, 92, 118, 46, 69, 72, 63, 73, 72, 61, 55, 72, 80, 56, 69, 70, 67, 58, 65, 73, 62, 68, 82, 61, 126, 53, 67, 46, 41, 66, 88, 65, 65, 48, 86, 81, 57, 63, 60, 71, 103, 43, 60, 70, 66, 57, 78, 63, 49, 52, 76, 70, 71, 79, 88, 64, 63, 58, 63, 45, 49, 57, 54, 57, 64, 74, 59, 73, 101, 55, 69, 72, 88, 50, 71, 77, 63, 65, 49, 80, 71, 71, 78, 96, 54, 61, 62, 47, 52, 99, 56, 61, 56, 69, 61, 52, 50, 77, 66, 101, 41, 81, 58, 89, 60, 77, 52, 72, 97, 62, 53, 73, 72, 76, 68, 61, 73, 59, 62, 79, 71, 62, 74, 132, 45, 82, 78, 53, 66, 72, 54, 63, 100, 74, 48, 52, 58, 57, 62, 58, 49, 70, 48, 70, 65, 89, 79, 72, 49, 79, 48, 60, 48, 90, 49, 31, 54, 57, 74, 60, 66, 85, 75, 67, 61, 69, 60, 60, 98, 65, 56, 62, 70, 54, 70, 73, 44, 63, 54, 55, 102, 52, 62, 69, 63, 59, 72, 54, 65, 46, 51, 79, 81, 74, 61, 55, 88, 48, 55, 95, 55, 65, 83, 50, 103, 83, 71, 100, 63, 63, 103, 67, 58, 74, 62, 68, 67, 55, 68, 48, 61, 67, 56, 45, 66, 54, 63, 51, 52, 65, 75, 58, 70, 105, 65, 59, 75, 56, 74, 76, 66, 63, 48, 69, 61, 77, 71, 53, 62, 67, 48, 58, 59, 63, 64, 77, 96, 58, 60, 61, 66, 62, 43, 96, 124, 73, 135, 49, 87, 62, 47, 72, 57, 71, 73, 53, 51, 80, 98, 56, 62, 62, 71, 53, 80, 70, 68, 63, 70, 69, 63, 69, 52, 76, 67, 52, 69, 59, 71, 66, 57, 53, 69, 63, 48, 85, 69, 69, 63, 60, 61, 70, 68, 110, 51, 128, 59, 61, 60, 56, 54, 60, 61, 52, 54, 61, 89, 65, 67, 57, 64, 64, 53, 77, 50, 64, 64, 73, 60, 46, 52, 52, 70, 65, 52, 54, 62, 58, 42, 59, 62, 66, 67, 86, 58, 70, 58, 60, 69, 66, 50, 66, 73, 70, 71, 58, 86, 74, 73, 107, 51, 57, 58, 75, 63, 51, 67, 64, 61, 81, 74, 59, 66, 81, 54, 76, 72, 99, 63, 46, 56, 67, 65, 60, 39, 57, 49, 60, 43, 74, 61, 78, 64, 70, 61, 85, 51, 57, 68, 52, 71, 78, 86, 80, 57, 54, 83, 96, 107, 61, 50, 73, 60, 64, 69, 66, 79, 54, 63, 73, 39, 23, 57, 57, 68, 58, 56, 59, 65, 91, 59, 47, 70, 88, 71, 60, 55, 62, 53, 61, 63, 47, 40, 58, 61, 67, 43, 55, 74, 76, 77, 61, 96, 46, 57, 60, 46, 76, 41, 65, 59, 75, 42, 72, 71, 64, 50, 74, 79, 65, 55, 78, 75, 45, 70, 61, 57, 76, 64, 52, 79, 79, 79, 68, 68, 57, 60, 55, 137, 54, 64, 65, 71, 71, 58, 59, 85, 78, 52, 75, 57, 87, 74, 47, 70, 51, 71, 73, 56, 62, 52, 60, 59, 78, 97, 76, 74, 63, 59, 98, 44, 80, 62, 43, 62, 67, 64, 71, 50, 61, 65, 58, 84, 73, 70, 67, 69, 71, 54, 64, 55, 75, 78, 71, 70, 53, 64, 61, 75, 69, 77, 61, 81, 42, 73, 70, 70, 60, 55, 64, 71, 62, 108, 72, 63, 49, 66, 69, 58, 79, 74, 47, 81, 76, 43, 61, 47, 59, 47, 69, 78, 56, 73, 60, 73, 60, 66, 68, 50, 40, 68, 110, 61, 81, 78, 68, 56, 69, 63, 42, 70, 56, 82, 62, 58, 57, 68, 70, 62, 65, 73, 57, 76, 53, 66, 66, 81, 70, 86, 71, 77, 75, 52, 50, 73, 67, 82, 96, 90, 40, 62, 51, 64, 68, 48, 56, 58, 83, 77, 65, 30, 57, 56, 61, 83, 64, 44, 68, 52, 61, 61, 52, 59, 49, 56, 79, 67, 75, 60, 67, 55, 68, 48, 66, 48, 57, 48, 68, 59, 62, 53, 64, 63, 50, 57, 52, 55, 59, 101, 59, 64, 69, 62, 46, 65, 83, 76, 59, 88, 91, 62, 71, 78, 62, 49, 67, 73, 64, 134, 77, 47, 60, 67, 58, 70, 82, 95, 74, 48, 72, 102, 61, 56, 76, 62, 67, 60, 81, 59, 62, 101, 69, 51, 80, 60, 83, 78, 66, 56, 88, 52, 72, 95, 56, 65, 58, 62, 61, 101, 99, 75, 50, 57, 68, 60, 84, 76, 51, 53, 67, 67, 82, 66, 52, 65, 67, 55, 60, 48, 86, 54, 77, 56, 76, 71, 82, 57, 58, 60, 50, 117, 66, 86, 54, 60, 60, 63, 66, 63, 60, 79, 66, 65, 62, 64, 73, 61, 56, 48, 78, 62, 69, 50, 78, 71, 71, 60, 71, 67, 79, 61, 60, 62, 48, 72, 60, 73, 63, 55, 68, 68, 80, 50, 71, 59, 63, 69, 62, 66, 88, 62, 69, 61, 49, 48, 80, 62, 66, 51, 65, 69, 42, 50, 56, 83, 56, 46, 66, 54, 64, 77, 74, 57, 78, 58, 71, 49, 76, 56, 61, 66, 53, 87, 65, 52, 66, 73, 53, 59, 83, 52, 47, 52, 47, 69, 60, 43, 55, 50, 73, 61, 94, 67, 58, 67, 58, 69, 66, 72, 54, 86, 55, 61, 69, 82, 62, 80, 55, 76, 64, 73, 49, 70, 74, 59, 81, 55, 66, 77, 61, 81, 62, 49, 58, 63, 65, 87, 66, 60, 56, 87, 67, 50, 54, 58, 50, 57, 90, 64, 47, 63, 66, 56, 57, 53, 65, 55, 68, 60, 67, 74, 67, 63, 96, 82, 49, 68, 62, 58, 71, 74, 53, 60, 57, 83, 85, 55, 63, 59, 63, 64, 56, 82, 74, 61, 58, 57, 62, 66, 64, 63, 61, 61, 70, 80, 73, 66, 49, 104, 78, 59, 59, 37, 68, 74, 51, 69, 56, 48, 86, 49, 57, 100, 89, 52, 68, 46, 77, 60, 77, 55, 87, 55, 54, 64, 64, 90, 55, 72, 73, 76, 54, 71, 103, 48, 78, 61, 71, 40, 58, 68, 60, 93, 55, 64, 63, 70, 73, 65, 67, 56, 52, 73, 56, 64, 93, 58, 78, 61, 57, 76, 41, 65, 58, 82, 62, 70, 61, 74, 63, 63, 65, 77, 57, 43, 62, 61, 74, 53, 72, 63, 60, 62, 55, 64, 98, 67, 67, 55, 58, 68, 62, 65, 55, 79, 61, 74, 72, 56, 77, 102, 64, 87, 52, 70, 59, 67, 60, 67, 72, 80, 54, 79, 47, 52, 63, 62, 82, 56, 60, 55, 66, 76, 64, 63, 50, 52, 83, 46, 76, 64, 88, 74, 64, 61, 96, 57, 62, 62, 59, 63, 92, 65, 57, 77, 67, 66, 37, 53, 63, 48, 68, 64, 64, 99, 69, 60, 74, 72, 88, 72, 137, 61, 70, 55, 73, 66, 60, 73, 67, 78, 89, 62, 61, 64, 57, 85, 97, 54, 64, 96, 47, 78, 73, 62, 75, 67, 76, 50, 62, 56, 61, 83, 65, 47, 60, 76, 141, 48, 68, 59, 57, 94, 80, 58, 82, 63, 88, 87, 57, 73, 63, 80, 74, 68, 89, 58, 53, 57, 91, 70, 56, 80, 64, 62, 70, 62, 65, 61, 89, 71, 83, 59, 71, 57, 55, 54, 87, 63, 61, 55, 60, 54, 81, 57, 74, 77, 61, 73, 64, 62, 61, 69, 57, 53, 64, 62, 67, 56, 75, 47, 65, 54, 65, 53, 75, 54, 56, 73, 80, 50, 44, 63, 60, 65, 82, 57, 53, 68, 67, 62, 46, 83, 64, 78, 65, 66, 59, 58, 78, 93, 72, 79, 55, 57, 67, 66, 48, 65, 79, 66, 68, 74, 52, 59, 58, 78, 73, 59, 74, 62, 59, 91, 50, 62, 55, 89, 81, 65, 59, 80, 60, 44, 44, 84, 60, 41, 76, 87, 57, 95, 44, 52, 64, 84, 57, 82, 53, 73, 82, 73, 64, 62, 38, 63, 47, 57, 65, 128, 73, 93, 85, 74, 83, 80, 82, 55, 68, 44, 75, 45, 77, 62, 53, 39, 50, 63, 75, 59, 62, 70, 67, 82, 111, 79, 59, 53, 46, 60, 74, 69, 64, 53, 49, 55, 55, 60, 60, 86, 80, 53, 89, 67, 82, 54, 60, 63, 69, 82, 80, 65, 59, 77, 60, 55, 53, 53, 90, 54, 82, 57, 55, 45, 54, 81, 70, 67, 66, 125, 70, 44, 79, 70, 60, 63, 51, 56, 66, 61, 63, 63, 58, 79, 38, 60, 74, 52, 75, 48, 57, 50, 50, 60, 78, 61, 74, 65, 57, 57, 50, 56, 72, 71, 59, 54, 53, 54, 60, 62, 82, 63, 80, 48, 69, 73, 65, 58, 90, 99, 53, 58, 64, 64, 71, 73, 66, 53, 84, 85, 54, 64, 64, 162, 59, 54, 47, 89, 79, 52, 63, 79, 57, 67, 66, 55, 59, 64, 53, 99, 64, 58, 64, 51, 69, 50, 136, 54, 53, 58, 88, 67, 49, 63, 45, 78, 78, 91, 62, 60, 103, 81, 56, 86, 84, 61, 85, 68, 60, 61, 36, 73, 49, 61, 49, 64, 66, 67, 59, 55, 79, 56, 57, 63, 54, 92, 48, 61, 70, 57, 54, 70, 52, 62, 59, 68, 48, 63, 66, 75, 67, 40, 72, 51, 75, 62, 62, 96, 63, 91, 74, 63, 59, 66, 54, 64, 75, 46, 56, 40, 41, 65, 63, 68, 49, 47, 60, 59, 107, 77, 58, 70, 51, 56, 76, 83, 95, 57, 95, 60, 40, 51, 55, 57, 39, 60, 70, 75, 83, 39, 51, 60, 75, 46, 46, 69, 64, 69, 83, 56, 77, 53, 69, 51, 71, 69, 86, 91, 66, 58, 78, 46, 60, 64, 70, 75, 63, 55, 57, 65, 63, 62, 64, 73, 63, 60, 67, 54, 83, 81, 57, 61, 79, 95, 55, 59, 53, 59, 48, 61, 79, 92, 84, 62, 76, 63, 71, 58, 55, 73, 58, 70, 58, 48, 59, 59, 68, 78, 58, 72, 52, 60, 73, 65, 49, 72, 61, 78, 88, 75, 56, 61, 60, 66, 72, 70, 70, 60, 49, 63, 73, 67, 77, 77, 60, 89, 71, 96, 95, 68, 89, 65, 57, 73, 72, 78, 52, 63, 78, 70, 64, 71, 66, 67, 58, 62, 91, 70, 60, 77, 57, 57, 64, 79, 57, 78, 80, 76, 56, 90, 56, 61, 54, 61, 53, 52, 59, 76, 48, 68, 76, 53, 40, 60, 55, 73, 75, 61, 89, 61, 96, 51, 63, 60, 76, 52, 62, 80, 59, 73, 37, 46, 65, 66, 51, 61, 65, 70, 61, 57, 97, 54, 69, 66, 61, 63, 97, 69, 80, 56, 63, 56, 69, 105, 75, 81, 61, 73, 57, 93, 59, 42, 67, 70, 49, 71, 67, 59, 53, 67, 76, 71, 91, 49, 60, 100, 77, 81, 69, 63, 63, 78, 54, 55, 54, 59, 75, 53, 39, 60, 57, 75, 44, 71, 45, 65, 84, 80, 67, 43, 49, 63, 61, 59, 53, 53, 60, 56, 62, 64, 77, 65, 53, 74, 58, 50, 68, 61, 63, 84, 66, 73, 80, 89, 109, 50, 78, 51, 64, 80, 95, 65, 74, 49, 76, 56, 76, 78, 40, 72, 75, 56, 91, 63, 86, 105, 60, 67, 67, 57, 53, 90, 56, 65, 61, 47, 56, 63, 57, 71, 43, 54, 58, 61, 88, 68, 76, 62, 58, 56, 59, 80, 48, 45, 86, 58, 94, 109, 48, 65, 61, 61, 76, 71, 79, 64, 74, 99, 64, 52, 92, 66, 66, 72, 43, 148, 53, 50, 67, 57, 74, 71, 72, 71, 72, 67, 30, 81, 75, 57, 66, 80, 66, 76, 75, 61, 55, 83, 78, 61, 98, 68, 86, 95, 65, 52, 56, 52, 60, 62, 81, 57, 104, 77, 65, 51, 67, 74, 61, 78, 92, 56, 61, 54, 87, 75, 55, 64, 49, 101, 63, 55, 100, 77, 79, 67, 55, 63, 94, 71, 57, 59, 59, 87, 52, 72, 59, 56, 62, 65, 62, 55, 68, 55, 59, 63, 57, 58, 70, 43, 61, 58, 64, 68, 88, 40, 68, 51, 70, 67, 57, 63, 56, 79, 51, 71, 58, 69, 50, 62, 64, 89, 57, 66, 72, 81, 81, 48, 68, 68, 57, 73, 59, 59, 63, 70, 61, 79, 68, 62, 75, 78, 61, 54, 47, 71, 58, 56, 54, 52, 52, 52, 66, 61, 57, 59, 74, 54, 66, 67, 51, 47, 58, 83, 65, 67, 82, 62, 90, 72, 59, 53, 53, 58, 70, 61, 90, 54, 39, 77, 71, 62, 56, 90, 81, 67, 82, 54, 59, 95, 58, 81, 40, 102, 63, 61, 68, 43, 74, 56, 59, 51, 88, 64, 73, 64, 81, 74, 59, 54, 81, 49, 58, 76, 63, 57, 60, 58, 68, 67, 69, 57, 68, 52, 60, 60, 83, 60, 52, 66, 63, 63, 80, 47, 75, 66, 58, 49, 58, 83, 79, 61, 62, 61, 42, 91, 79, 66, 67, 64, 72, 70, 77, 72, 61, 53, 58, 50, 46, 55, 101, 44, 50, 62, 71, 57, 56, 74, 53, 61, 52, 70, 87, 89, 60, 59, 46, 67, 69, 66, 66, 67, 52, 74, 52, 82, 71, 74, 55, 67, 64, 62, 47, 74, 59, 63, 64, 77, 70, 61, 54, 48, 59, 75, 93, 76, 66, 54, 52, 57, 48, 67, 66, 58, 114, 73, 75, 51, 77, 49, 63, 56, 58, 78, 50, 90, 52, 60, 62, 68, 77, 49, 64, 77, 64, 55, 60, 102, 60, 43, 67, 62, 54, 74, 66, 57, 66, 69, 51, 79, 82, 75, 62, 58, 70, 59, 70, 63, 59, 49, 71, 66, 74, 44, 57, 70, 75, 88, 53, 106, 70, 98, 106, 63, 93, 69, 58, 70, 81, 68, 70, 63, 63, 71, 77, 64, 47, 39, 71, 65, 56, 72, 79, 68, 76, 82, 61, 54, 57, 81, 60, 44, 55, 43, 62, 71, 89, 57, 66, 79, 80, 80, 56, 58, 67, 77, 67, 51, 57, 80, 72, 69, 52, 48, 61, 81, 88, 100, 58, 90, 58, 90, 67, 56, 50, 52, 63, 70, 56, 70, 57, 62, 58, 95, 109, 84, 54, 47, 45, 55, 47, 103, 68, 59, 57, 47, 62, 58, 65, 61, 94, 64, 51, 68, 60, 77, 51, 53, 62, 80, 63, 73, 57, 77, 64, 79, 40, 72, 56, 50, 38, 50, 60, 67, 45, 57, 58, 58, 51, 81, 73, 83, 63, 73, 42, 91, 57, 51, 54, 78, 61, 50, 66, 70, 80, 55, 64, 85, 76, 81, 61, 58, 78, 66, 69, 66, 77, 71, 57, 59, 71, 75, 53, 75, 71, 60, 54, 34, 59, 85, 67, 47, 71, 80, 62, 72, 109, 43, 56, 70, 63, 67, 50, 66, 46, 75, 85, 59, 85, 87, 42, 56, 81, 40, 60, 59, 74, 46, 56, 59, 58, 54, 62, 67, 68, 67, 64, 58, 84, 76, 83, 62, 66, 65, 71, 72, 41, 57, 58, 58, 71, 80, 60, 54, 72, 64, 61, 71, 67, 71, 84, 62, 74, 58, 73, 67, 67, 50, 69, 42, 69, 60, 56, 64, 64, 64, 78, 55, 72, 50, 57, 81, 81, 62, 60, 53, 65, 65, 59, 62, 54, 60, 64, 61, 85, 68, 65, 62, 69, 72, 56, 64, 53, 68, 67, 80, 52, 54, 72, 64, 71, 73, 70, 58, 49, 74, 52, 62, 70, 65, 78, 63, 65, 56, 93, 47, 73, 81, 60, 56, 68, 63, 72, 52, 73, 50, 76, 70, 62, 80, 47, 66, 56, 56, 81, 84, 46, 53, 74, 63, 61, 81, 74, 63, 61, 70, 79, 65, 66, 118, 55, 57, 112, 50, 76, 53, 78, 69, 66, 79, 64, 103, 49, 54, 65, 54, 56, 55, 53, 48, 74, 52, 78, 57, 71, 63, 88, 63, 61, 80, 60, 57, 70, 65, 62, 65, 57, 79, 56, 62, 66, 62, 61, 56, 56, 77, 53, 79, 74, 56, 59, 60, 56, 54, 60, 46, 151, 69, 59, 65, 53, 63, 77, 61, 63, 58, 67, 61, 107, 55, 55, 56, 82, 124, 54, 64, 64, 52, 63, 81, 64, 62, 58, 53, 68, 68, 84, 71, 64, 67, 94, 63, 60, 67, 56, 66, 57, 56, 61, 61, 58, 59, 67, 57, 40, 62, 63, 62, 95, 77, 74, 58, 72, 65, 74, 42, 94, 62, 56, 82, 65, 62, 59, 59, 73, 65, 63, 68, 69, 69, 61, 68, 58, 101, 80, 78, 69, 80, 109, 79, 53, 66, 66, 86, 69, 88, 62, 56, 68, 92, 65, 60, 64, 71, 55, 76, 50, 64, 47, 80, 52, 68, 63, 68, 58, 69, 59, 66, 51, 72, 55, 57, 71, 64, 59, 62, 61, 59, 77, 53, 56, 66, 60, 58, 69, 85, 51, 88, 98, 52, 57, 48, 60, 85, 55, 57, 63, 57, 59, 69, 75, 70, 62, 54, 68, 61, 65, 61, 75, 75, 58, 81, 69, 47, 76, 82, 57, 91, 66, 59, 71, 49, 58, 57, 54, 65, 46, 72, 54, 70, 55, 62, 79, 55, 85, 66, 66, 57, 64, 57, 65, 80, 69, 73, 84, 74, 60, 69, 78, 81, 83, 61, 59, 80, 69, 54, 69, 62, 76, 65, 56, 63, 71, 68, 57, 59, 69, 50, 58, 52, 65, 56, 68, 75, 60, 71, 67, 62, 64, 53, 71, 55, 66, 71, 55, 62, 60, 70, 64, 75, 74, 70, 55, 73, 60, 60, 50, 60, 67, 75, 63, 82, 77, 57, 73, 46, 72, 83, 72, 67, 66, 49, 64, 58, 56, 90, 64, 48, 64, 93, 64, 62, 59, 64, 68, 62, 69, 43, 95, 50, 59, 52, 57, 60, 78, 84, 54, 62, 63, 62, 58, 46, 78, 73, 70, 83, 67, 51, 65, 64, 56, 62, 61, 48, 61, 57, 49, 66, 86, 64, 74, 92, 62, 76, 55, 78, 60, 42, 51, 44, 55, 79, 58, 103, 81, 63, 52, 76, 90, 61, 53, 63, 77, 64, 48, 72, 65, 80, 68, 66, 55, 46, 76, 62, 58, 47, 74, 52, 77, 87, 58, 61, 69, 55, 59, 80, 51, 52, 59, 99, 77, 60, 75, 76, 81, 59, 61, 67, 62, 70, 57, 61, 61, 68, 54, 69, 81, 51, 73, 67, 59, 73, 61, 101, 67, 43, 65, 63, 57, 63, 66, 101, 78, 52, 41, 49, 74, 68, 62, 75, 60, 74, 76, 66, 55, 49, 78, 72, 70, 60, 67, 116, 50, 66, 66, 66, 43, 77, 48, 55, 59, 56, 82, 47, 61, 68, 65, 83, 68, 57, 79, 51, 93, 75, 66, 62, 90, 80, 66, 67, 56, 65, 55, 80, 60, 57, 87, 59, 69, 64, 56, 69, 76, 63, 51, 69, 60, 58, 61, 74, 102, 64, 81, 69, 62, 57, 59, 80, 60, 70, 61, 62, 90, 61, 71, 86, 62, 73, 80, 48, 63, 53, 60, 93, 52, 70, 69, 63, 59, 48, 75, 47, 59, 71, 44, 71, 67, 54, 61, 65, 61, 87, 85, 69, 72, 62, 59, 51, 77, 76, 64, 63, 64, 71, 75, 77, 70, 57, 60, 57, 77, 61, 92, 68, 53, 69, 68, 75, 57, 54, 69, 57, 50, 52, 97, 58, 45, 56, 54, 52, 51, 53, 44, 66, 52, 76, 48, 70, 53, 75, 77, 73, 67, 68, 58, 57, 53, 68, 69, 63, 61, 71, 57, 77, 98, 46, 57, 58, 61, 57, 89, 70, 49, 67, 84, 62, 50, 58, 53, 69, 52, 43, 59, 64, 71, 83, 57, 78, 58, 70, 66, 60, 55, 58, 48, 69, 62, 50, 53, 66, 56, 54, 90, 72, 49, 60, 68, 65, 63, 58, 56, 65, 59, 61, 55, 71, 66, 65, 57, 72, 90, 91, 72, 59, 61, 79, 44, 76, 53, 56, 58, 55, 73, 69, 56, 60, 56, 75, 51, 64, 113, 65, 59, 60, 76, 70, 69, 57, 96, 43, 70, 87, 78, 50, 60, 62, 65, 65, 60, 59, 74, 60, 63, 72, 64, 67, 97, 65, 82, 63, 68, 64, 48, 58, 55, 64, 75, 68, 62, 60, 68, 67, 68, 74, 58, 64, 61, 68, 40, 57, 58, 59, 60, 50, 53, 58, 60, 79, 56, 51, 66, 62, 67, 59, 105, 71, 100, 75, 68, 47, 83, 68, 44, 52, 83, 54, 60, 65, 71, 45, 60, 57, 87, 73, 67, 65, 61, 66, 52, 63, 50, 70, 78, 69, 62, 58, 66, 63, 65, 66, 60, 60, 42, 74, 62, 65, 85, 68, 70, 58, 62, 57, 122, 68, 61, 59, 71, 66, 80, 67, 40, 61, 62, 47, 61, 81, 74, 53, 75, 103, 61, 81, 79, 61, 74, 69, 75, 72, 42, 69, 60, 70, 61, 66, 98, 74, 36, 62, 71, 57, 53, 70, 78, 85, 54, 93, 68, 72, 52, 59, 84, 68, 62, 67, 58, 72, 47, 55, 54, 83, 72, 55, 51, 57, 75, 69, 60, 58, 51, 61, 47, 55, 65, 70, 84, 66, 69, 62, 52, 67, 56, 80, 54, 74, 67, 108, 90, 60, 50, 91, 49, 97, 57, 133, 78, 65, 55, 47, 58, 70, 61, 54, 72, 67, 59, 57, 68, 67, 67, 62, 63, 50, 56, 68, 39, 67, 62, 67, 54, 58, 71, 54, 67, 46, 60, 73, 63, 69, 58, 69, 81, 67, 56, 64, 59, 59, 52, 64, 75, 50, 87, 54, 99, 59, 54, 68, 65, 68, 60, 66, 55, 59, 58, 53, 70, 69, 74, 79, 52, 58, 59, 71, 55, 59, 48, 62, 59, 65, 60, 73, 68, 74, 77, 58, 63, 82, 50, 79, 75, 60, 65, 61, 83, 62, 42, 56, 61, 69, 103, 66, 84, 73, 66, 60, 58, 74, 87, 63, 57, 65, 68, 72, 60, 65, 57, 42, 57, 84, 60, 63, 83, 60, 64, 53, 67, 69, 58, 62, 35, 71, 68, 64, 64, 87, 50, 70, 60, 101, 56, 69, 83, 75, 59, 68, 56, 77, 59, 62, 59, 59, 57, 58, 71, 63, 60, 58, 74, 67, 49, 74, 60, 124, 61, 58, 84, 52, 51, 56, 71, 78, 66, 69, 65, 66, 90, 72, 48, 60, 62, 57, 54, 63, 55, 76, 80, 78, 68, 69, 93, 69, 76, 76, 55, 69, 71, 56, 109, 56, 64, 77, 60, 77, 80, 52, 72, 75, 67, 69, 65, 62, 63, 55, 62, 59, 64, 82, 128, 128, 59, 92, 65, 65, 60, 53, 66, 46, 66, 64, 50, 65, 58, 54, 61, 75, 49, 55, 65, 55, 64, 66, 58, 71, 72, 49, 91, 57, 68, 65, 70, 52, 66, 60, 57, 30, 56, 73, 49, 55, 106, 77, 62, 57, 49, 41, 51, 97, 57, 70, 61, 58, 61, 139, 64, 59, 53, 62, 58, 85, 61, 64, 71, 58, 82, 64, 59, 77, 59, 59, 58, 56, 90, 55, 70, 77, 64, 61, 63, 60, 61, 89, 79, 66, 57, 60, 57, 69, 60, 60, 59, 76, 57, 63, 79, 58, 61, 58, 67, 73, 61, 76, 70, 68, 62, 77, 58, 65, 70, 77, 53, 70, 80, 66, 74, 67, 62, 66, 60, 71, 65, 78, 56, 74, 59, 63, 62, 104, 107, 71, 85, 72, 54, 103, 64, 74, 52, 30, 57, 59, 63, 73, 97, 67, 82, 36, 76, 75, 60, 65, 68, 50, 91, 57, 51, 72, 64, 45, 61, 59, 68, 69, 90, 80, 57, 52, 75, 65, 74, 68, 58, 60, 73, 58, 76, 69, 69, 59, 61, 37, 55, 58, 95, 62, 64, 72, 55, 64, 46, 70, 49, 71, 58, 56, 59, 69, 55, 65, 48, 54, 69, 81, 58, 65, 71, 74, 65, 54, 70, 68, 68, 86, 62, 81, 94, 57, 70, 61, 65, 41, 84, 49, 82, 44, 80, 56, 66, 68, 60, 56, 72, 64, 75, 54, 84, 54, 80, 76, 67, 67, 56, 71, 66, 62, 99, 77, 68, 56, 59, 54, 63, 59, 69, 61, 78, 72, 50, 76, 62, 91, 57, 67, 53, 58, 61, 82, 68, 58, 44, 70, 57, 60, 66, 60, 62, 56, 53, 60, 82, 53, 54, 101, 49, 59, 67, 62, 55, 57, 84, 57, 82, 46, 60, 75, 57, 85, 55, 44, 59, 66, 66, 80, 58, 72, 63, 84, 62, 65, 81, 68, 68, 58, 82, 60, 59, 85, 68, 70, 83, 63, 70, 67, 59, 60, 51, 73, 56, 71, 71, 49, 57, 44, 78, 69, 67, 61, 67, 62, 92, 52, 76, 46, 67, 61, 73, 37, 57, 53, 54, 61, 61, 56, 69, 63, 28, 57, 69, 51, 62, 53, 64, 78, 72, 68, 55, 52, 52, 72, 86, 68, 65, 72, 85, 55, 67, 81, 59, 60, 59, 50, 103, 65, 89, 66, 54, 66, 66, 69, 60, 57, 63, 61, 79, 67, 59, 48, 85, 88, 75, 62, 45, 53, 114, 76, 60, 51, 73, 64, 49, 73, 51, 87, 64, 59, 57, 74, 64, 61, 61, 61, 57, 69, 57, 53, 86, 54, 59, 65, 63, 67, 78, 64, 54, 56, 72, 66, 56, 60, 87, 61, 56, 115, 73, 64, 86, 52, 59, 62, 58, 77, 48, 64, 66, 48, 59, 83, 60, 64, 60, 79, 72, 58, 72, 57, 62, 58, 39, 59, 63, 63, 71, 71, 103, 54, 54, 85, 70, 54, 58, 62, 81, 59, 59, 59, 60, 70, 69, 47, 80, 63, 62, 52, 64, 73, 60, 65, 60, 56, 51, 61, 66, 74, 59, 63, 64, 67, 71, 66, 101, 53, 56, 69, 49, 79, 74, 95, 59, 61, 77, 65, 54, 59, 70, 59, 65, 75, 58, 90, 42, 100, 83, 79, 59, 62, 55, 64, 75, 62, 60, 57, 34, 62, 78, 65, 54, 60, 63, 73, 87, 60, 57, 61, 66, 68, 60, 49, 76, 62, 66, 52, 71, 65, 54, 61, 48, 74, 52, 60, 70, 81, 60, 83, 55, 58, 70, 58, 61, 57, 63, 60, 53, 51, 64, 46, 64, 91, 62, 66, 70, 69, 65, 58, 70, 100, 62, 63, 73, 83, 86, 60, 64, 49, 59, 97, 60, 51, 88, 67, 72, 76, 69, 74, 89, 55, 67, 66, 54, 61, 60, 59, 55, 81, 58, 55, 105, 76, 59, 64, 59, 75, 99, 59, 115, 66, 78, 49, 126, 50, 70, 72, 56, 58, 75, 80, 67, 67, 55, 63, 89, 67, 59, 75, 68, 115, 66, 68, 56, 55, 73, 65, 88, 69, 93, 75, 61, 61, 63, 64, 62, 59, 98, 63, 57, 61, 51, 54, 56, 61, 66, 54, 62, 63, 55, 69, 52, 56, 70, 52, 51, 74, 49, 59, 61, 61, 66, 69, 66, 76, 60, 60, 66, 51, 56, 59, 119, 53, 66, 75, 81, 47, 60, 61, 100, 74, 48, 77, 65, 63, 57, 69, 77, 67, 63, 59, 61, 60, 85, 84, 60, 86, 60, 71, 74, 54, 47, 94, 59, 48, 62, 58, 54, 62, 70, 60, 58, 57, 76, 60, 89, 57, 82, 72, 62, 78, 60, 52, 50, 57, 84, 59, 75, 88, 52, 61, 45, 61, 58, 89, 78, 60, 77, 63, 60, 62, 56, 78, 69, 63, 57, 99, 67, 64, 53, 60, 75, 60, 68, 58, 60, 63, 63, 76, 60, 50, 56, 58, 42, 65, 112, 67, 72, 69, 62, 54, 99, 71, 68, 54, 72, 78, 60, 81, 59, 54, 83, 54, 86, 60, 83, 49, 67, 51, 49, 62, 109, 62, 41, 47, 50, 60, 86, 59, 85, 65, 48, 61, 68, 70, 88, 52, 73, 44, 86, 48, 59, 62, 41, 70, 61, 77, 57, 103, 61, 53, 70, 84, 65, 69, 100, 62, 64, 60, 77, 95, 73, 60, 72, 43, 50, 67, 78, 69, 37, 74, 55, 58, 59, 65, 53, 91, 51, 85, 71, 70, 77, 66, 74, 77, 79, 88, 72, 63, 78, 76, 67, 76, 60, 61, 52, 89, 61, 63, 91, 103, 62, 59, 47, 62, 52, 67, 55, 67, 80, 60, 61, 69, 43, 72, 84, 67, 58, 71, 71, 54, 81, 106, 52, 67, 59, 61, 87, 83, 72, 54, 68, 46, 107, 78, 46, 90, 84, 70, 99, 49, 88, 37, 52, 71, 55, 65, 59, 82, 51, 65, 67, 74, 55, 53, 67, 66, 55, 48, 49, 73, 94, 67, 61, 57, 89, 61, 55, 62, 54, 63, 70, 48, 55, 74, 54, 52, 60, 82, 116, 48, 79, 61, 54, 49, 60, 44, 94, 59, 73, 39, 56, 96, 46, 79, 48, 69, 71, 71, 50, 85, 74, 71, 68, 57, 50, 70, 61, 81, 58, 68, 55, 66, 47, 55, 59, 55, 64, 94, 69, 66, 70, 63, 64, 67, 79, 61, 70, 64, 72, 96, 76, 44, 53, 62, 79, 71, 64, 44, 68, 88, 79, 56, 53, 72, 54, 63, 65, 54, 56, 47, 77, 85, 61, 55, 56, 67, 42, 76, 89, 52, 82, 63, 61, 75, 55, 81, 102, 63, 41, 82, 91, 67, 61, 52, 51, 82, 61, 58, 37, 82, 93, 75, 55, 81, 58, 66, 66, 70, 84, 52, 77, 67, 67, 66, 58, 50, 58, 76, 46, 84, 61, 66, 59, 56, 70, 72, 81, 54, 52, 56, 47, 76, 106, 62, 73, 77, 80, 62, 78, 78, 78, 66, 93, 67, 65, 54, 42, 75, 46, 99, 50, 50, 62, 56, 100, 75, 67, 56, 52, 54, 91, 70, 83, 53, 68, 56, 56, 56, 47, 56, 75, 67, 52, 72, 69, 70, 66, 63, 58, 110, 58, 54, 58, 67, 76, 74, 63, 62, 63, 74, 56, 72, 50, 64, 47, 74, 74, 56, 52, 63, 88, 59, 66, 64, 91, 59, 74, 70, 66, 50, 66, 60, 58, 51, 52, 56, 82, 57, 69, 54, 57, 53, 39, 44, 91, 70, 57, 83, 40, 92, 81, 66, 79, 72, 87, 83, 43, 47, 56, 71, 66, 57, 55, 64, 75, 71, 74, 88, 82, 67, 84, 74, 67, 66, 56, 51, 65, 64, 56, 59, 65, 57, 77, 64, 70, 69, 56, 65, 81, 43, 43, 45, 49, 82, 49, 65, 64, 63, 58, 63, 63, 85, 73, 67, 72, 76, 67, 65, 63, 57, 44, 65, 77, 76, 59, 54, 44, 98, 59, 74, 60, 138, 55, 55, 90, 82, 48, 64, 69, 46, 57, 52, 57, 62, 63, 61, 50, 102, 57, 69, 68, 52, 70, 74, 95, 99, 58, 69, 69, 85, 49, 55, 70, 80, 62, 69, 84, 87, 81, 57, 85, 72, 43, 45, 57, 47, 72, 41, 46, 65, 75, 68, 87, 61, 65, 86, 61, 66, 55, 87, 57, 64, 57, 30, 72, 64, 69, 80, 83, 63, 77, 76, 65, 56, 99, 56, 75, 56, 49, 79, 56, 74, 64, 99, 41, 86, 57, 57, 65, 69, 57, 57, 64, 87, 81, 62, 54, 68, 63, 90, 82, 57, 67, 73, 50, 55, 59, 43, 92, 59, 92, 91, 62, 48, 65, 85, 49, 124, 51, 61, 68, 58, 74, 49, 70, 68, 48, 73, 57, 102, 86, 79, 53, 85, 91, 85, 41, 54, 74, 69, 62, 69, 81, 73, 55, 97, 65, 64, 71, 53, 38, 72, 48, 86, 55, 63, 74, 67, 39, 52, 67, 71, 71, 45, 54, 69, 83, 84, 87, 72, 48, 52, 76, 48, 64, 55, 68, 57, 64, 60, 80, 69, 68, 66, 56, 57, 54, 58, 43, 64, 71, 63, 48, 79, 73, 60, 53, 60, 59, 51, 56, 54, 91, 66, 49, 49, 76, 60, 67, 87, 59, 53, 71, 84, 83, 77, 56, 65, 62, 59, 58, 56, 89, 101, 39, 45, 62, 78, 52, 64, 67, 73, 53, 50, 58, 51, 56, 48, 57, 73, 72, 79, 56, 66, 47, 52, 58, 89, 58, 59, 53, 47, 62, 81, 70, 53, 62, 62, 52, 58, 56, 59, 80, 73, 57, 47, 81, 66, 63, 53, 55, 80, 57, 49, 64, 59, 52, 52, 74, 76, 64, 76, 72, 61, 89, 52, 64, 76, 53, 59, 79, 73, 82, 57, 59, 50, 66, 71, 48, 59, 93, 68, 56, 70, 51, 75, 54, 43, 66, 57, 61, 79, 77, 62, 55, 55, 76, 77, 64, 66, 74, 70, 59, 46, 65, 81, 75, 70, 75, 83, 74, 57, 104, 59, 63, 53, 108, 61, 56, 79, 110, 56, 85, 60, 66, 41, 53, 57, 50, 59, 52, 101, 76, 106, 68, 55, 62, 61, 61, 57, 56, 77, 46, 62, 60, 48, 56, 54, 50, 92, 73, 65, 63, 132, 66, 81, 52, 60, 54, 72, 89, 57, 45, 74, 58, 63, 55, 63, 64, 59, 111, 54, 64, 60, 64, 82, 46, 60, 71, 90, 56, 64, 63, 63, 76, 70, 68, 64, 42, 66, 65, 81, 61, 66, 51, 89, 69, 64, 47, 87, 65, 73, 61, 57, 50, 59, 89, 49, 43, 69, 107, 75, 56, 62, 64, 96, 76, 60, 45, 66, 64, 68, 68, 75, 73, 67, 68, 106, 94, 51, 89, 74, 42, 76, 53, 89, 51, 73, 81, 51, 69, 61, 70, 69, 55, 60, 71, 52, 60, 56, 52, 54, 45, 69, 65, 53, 46, 83, 81, 58, 59, 53, 64, 93, 63, 77, 61, 112, 65, 62, 38, 63, 84, 58, 55, 63, 66, 40, 77, 63, 60, 55, 52, 50, 60, 63, 47, 81, 55, 43, 89, 52, 43, 63, 52, 50, 63, 72, 54, 84, 55, 60, 64, 65, 61, 65, 64, 56, 60, 63, 66, 106, 64, 74, 55, 55, 47, 49, 78, 60, 68, 78, 54, 74, 66, 50, 84, 107, 75, 77, 88, 63, 61, 53, 61, 58, 57, 61, 76, 38, 98, 60, 63, 56, 72, 60, 47, 77, 75, 61, 62, 45, 47, 58, 69, 55, 69, 55, 55, 66, 72, 69, 79, 89, 86, 47, 55, 47, 42, 62, 59, 49, 82, 84, 64, 59, 56, 65, 39, 72, 58, 43, 66, 56, 77, 56, 73, 50, 56, 50, 52, 64, 61, 124, 53, 46, 60, 96, 61, 47, 67, 74, 52, 47, 54, 69, 66, 45, 62, 58, 67, 93, 65, 63, 53, 37, 51, 75, 62, 70, 51, 50, 48, 69, 57, 53, 74, 80, 63, 67, 51, 72, 73, 85, 74, 54, 62, 49, 75, 58, 76, 77, 48, 78, 65, 55, 58, 53, 53, 61, 69, 76, 60, 91, 80, 74, 70, 51, 99, 68, 65, 135, 54, 50, 75, 59, 50, 43, 88, 64, 56, 62, 54, 56, 71, 49, 68, 75, 67, 56, 66, 70, 66, 57, 92, 80, 53, 60, 68, 42, 65, 73, 53, 70, 42, 62, 55, 92, 69, 58, 68, 65, 71, 61, 56, 69, 58, 58, 81, 38, 77, 64, 62, 53, 56, 49, 79, 49, 67, 57, 61, 76, 68, 104, 63, 74, 46, 66, 90, 62, 54, 46, 66, 69, 73, 63, 53, 93, 56, 62, 73, 68, 55, 65, 63, 81, 61, 55, 64, 63, 55, 64, 80, 60, 58, 27, 76, 50, 80, 62, 65, 63, 92, 76, 58, 101, 57, 68, 55, 74, 45, 61, 72, 73, 40, 58, 60, 56, 67, 72, 55, 61, 69, 66, 56, 56, 96, 65, 62, 83, 77, 61, 51, 65, 54, 61, 64, 47, 63, 85, 74, 63, 64, 61, 73, 81, 61, 60, 47, 56, 68, 90, 67, 55, 76, 71, 76, 49, 51, 57, 113, 73, 59, 82, 74, 97, 76, 52, 69, 74, 73, 95, 52, 58, 73, 70, 66, 74, 63, 50, 51, 71, 51, 66, 68, 76, 54, 56, 68, 60, 64, 83, 55, 51, 70, 46, 72, 63, 59, 87, 53, 66, 83, 68, 60, 58, 56, 92, 61, 58, 55, 90, 58, 44, 83, 94, 58, 75, 98, 56, 75, 60, 49, 68, 49, 63, 50, 65, 56, 67, 55, 60, 52, 66, 73, 50, 48, 77, 72, 50, 46, 82, 60, 79, 72, 60, 57, 53, 53, 82, 82, 76, 57, 44, 80, 60, 60, 59, 55, 54, 81, 50, 74, 79, 60, 50, 85, 74, 67, 68, 51, 71, 63, 58, 68, 53, 82, 67, 48, 63, 75, 72, 65, 68, 51, 63, 61, 79, 68, 69, 69, 73, 63, 73, 80, 69, 59, 47, 36, 73, 72, 60, 68, 87, 80, 48, 65, 52, 60, 52, 57, 61, 64, 69, 71, 86, 104, 86, 63, 64, 72, 66, 55, 64, 47, 60, 78, 82, 56, 60, 66, 55, 64, 56, 51, 58, 60, 58, 64, 83, 67, 69, 62, 65, 74, 60, 53, 60, 54, 66, 57, 51, 68, 137, 78, 74, 70, 64, 54, 63, 82, 68, 88, 78, 58, 81, 56, 77, 65, 40, 72, 69, 73, 48, 96, 64, 61, 63, 91, 81, 64, 68, 74, 64, 50, 83, 66, 64, 56, 61, 61, 42, 88, 51, 72, 57, 58, 58, 51, 63, 62, 80, 80, 73, 88, 56, 64, 98, 61, 81, 88, 54, 66, 59, 75, 65, 73, 60, 43, 55, 97, 61, 47, 64, 64, 67, 71, 60, 72, 80, 66, 56, 47, 84, 74, 49, 58, 71, 71, 46, 60, 91, 55, 50, 42, 61, 97, 50, 74, 74, 55, 39, 76, 61, 54, 69, 66, 66, 60, 86, 71, 60, 76, 57, 55, 51, 39, 46, 70, 54, 64, 72, 63, 61, 72, 71, 49, 90, 73, 56, 49, 58, 64, 68, 40, 71, 53, 57, 70, 72, 58, 61, 51, 88, 54, 65, 64, 54, 51, 47, 71, 66, 54, 46, 47, 57, 68, 53, 81, 106, 69, 73, 67, 80, 63, 59, 87, 62, 48, 94, 55, 47, 108, 78, 76, 54, 72, 83, 72, 64, 63, 60, 50, 62, 77, 59, 69, 82, 53, 78, 80, 60, 55, 85, 60, 59, 58, 63, 80, 52, 58, 82, 73, 67, 63, 79, 53, 104, 58, 46, 53, 65, 55, 70, 56, 83, 67, 95, 69, 94, 71, 54, 53, 65, 64, 74, 81, 75, 60, 64, 60, 69, 72, 49, 79, 55, 88, 62, 58, 58, 71, 88, 70, 60, 69, 49, 70, 64, 53, 64, 62, 58, 67, 65, 60, 56, 97, 56, 65, 46, 52, 68, 53, 55, 69, 60, 76, 53, 70, 48, 75, 61, 56, 61, 95, 70, 73, 63, 57, 57, 70, 63, 50, 61, 70, 66, 59, 64, 74, 51, 83, 51, 58, 79, 75, 63, 63, 59, 64, 63, 70, 87, 63, 92, 56, 75, 62, 59, 59, 56, 57, 61, 60, 51, 50, 58, 75, 63, 66, 51, 58, 75, 72, 67, 64, 66, 79, 56, 59, 78, 65, 56, 75, 59, 48, 50, 73, 60, 57, 80, 85, 61, 92, 75, 74, 70, 61, 54, 78, 53, 65, 79, 55, 58, 59, 53, 76, 66, 66, 69, 80, 74, 62, 60, 72, 82, 60, 49, 55, 58, 76, 73, 65, 64, 66, 65, 74, 65, 74, 87, 70, 46, 79, 60, 47, 47, 103, 64, 72, 86, 49, 60, 71, 53, 66, 45, 49, 61, 64, 70, 84, 53, 49, 58, 91, 55, 56, 106, 92, 64, 81, 63, 73, 68, 80, 85, 70, 55, 68, 52, 49, 68, 68, 71, 49, 56, 76, 64, 60, 71, 74, 65, 65, 73, 64, 57, 70, 57, 59, 60, 58, 62, 50, 81, 68, 47, 73, 62, 74, 59, 59, 54, 63, 81, 63, 72, 62, 69, 81, 62, 75, 66, 59, 84, 81, 72, 41, 115, 69, 80, 56, 91, 86, 88, 69, 68, 95, 72, 74, 58, 83, 72, 70, 76, 65, 66, 50, 76, 76, 67, 82, 57, 57, 57, 63, 54, 80, 59, 90, 65, 74, 42, 118, 54, 44, 62, 61, 89, 66, 112, 55, 55, 52, 65, 47, 87, 73, 53, 67, 58, 77, 68, 69, 54, 55, 95, 53, 70, 57, 53, 70, 75, 64, 64, 65, 49, 66, 102, 69, 73, 68, 68, 61, 71, 61, 75, 65, 67, 63, 66, 72, 62, 51, 56, 55, 64, 56, 67, 58, 61, 68, 67, 47, 66, 61, 75, 55, 54, 65, 58, 75, 84, 70, 70, 64, 63, 63, 70, 68, 44, 48, 78, 79, 65, 67, 74, 73, 69, 73, 102, 72, 68, 110, 73, 70, 46, 61, 131, 82, 65, 59, 80, 58, 73, 61, 65, 65, 66, 68, 49, 50, 63, 69, 62, 51, 63, 93, 98, 56, 69, 68, 55, 74, 59, 56, 68, 68, 71, 93, 110, 83, 53, 69, 38, 67, 63, 73, 94, 82, 63, 64, 68, 67, 67, 61, 66, 56, 69, 64, 65, 87, 80, 74, 61, 67, 93, 80, 82, 96, 89, 62, 56, 81, 58, 60, 84, 70, 52, 81, 69, 73, 67, 42, 68, 81, 61, 59, 68, 61, 59, 64, 75, 63, 70, 49, 73, 71, 64, 76, 48, 71, 55, 66, 56, 61, 76, 65, 67, 69, 64, 60, 65, 82, 53, 65, 74, 62, 56, 58, 78, 72, 62, 73, 60, 62, 44, 64, 90, 85, 36, 57, 55, 77, 68, 64, 72, 66, 64, 51, 97, 78, 74, 69, 78, 58, 73, 54, 65, 63, 76, 67, 52, 71, 104, 55, 49, 61, 55, 56, 57, 53, 56, 60, 50, 50, 55, 57, 84, 61, 56, 54, 81, 66, 68, 51, 65, 56, 84, 72, 82, 67, 49, 72, 66, 53, 64, 66, 69, 69, 63, 75, 58, 77, 73, 75, 60, 59, 39, 64, 78, 70, 56, 53, 50, 53, 83, 57, 68, 61, 66, 63, 77, 47, 74, 86, 29, 72, 75, 43, 60, 58, 81, 69, 72, 65, 88, 73, 79, 62, 63, 60, 51, 118, 71, 60, 58, 55, 60, 67, 65, 52, 68, 73, 56, 76, 67, 59, 53, 62, 74, 53, 57, 76, 59, 68, 54, 59, 52, 45, 100, 70, 61, 51, 89, 49, 65, 81, 65, 57, 60, 76, 69, 73, 64, 56, 53, 66, 62, 58, 57, 54, 61, 67, 82, 63, 57, 64, 72, 82, 73, 64, 50, 65, 73, 73, 49, 61, 68, 80, 65, 58, 44, 74, 43, 50, 63, 78, 54, 70, 67, 71, 77, 67, 60, 59, 87, 62, 50, 54, 85, 95, 59, 95, 50, 68, 68, 79, 55, 87, 55, 62, 66, 62, 61, 88, 55, 66, 61, 63, 63, 54, 51, 64, 70, 68, 59, 72, 70, 65, 64, 66, 74, 76, 62, 60, 45, 60, 83, 73, 86, 69, 59, 103, 46, 72, 74, 46, 56, 46, 59, 81, 57, 54, 43, 66, 82, 52, 51, 46, 86, 74, 59, 62, 77, 79, 80, 58, 63, 65, 66, 77, 70, 73, 69, 67, 79, 64, 49, 89, 55, 49, 76, 65, 53, 72, 80, 54, 65, 58, 61, 65, 74, 55, 70, 75, 49, 77, 55, 72, 54, 74, 64, 57, 54, 59, 86, 62, 53, 53, 88, 47, 81, 123, 56, 70, 66, 62, 57, 64, 73, 54, 42, 64, 63, 53, 63, 68, 71, 60, 100, 42, 60, 66, 59, 73, 61, 76, 74, 67, 50, 51, 54, 93, 49, 48, 51, 48, 77, 99, 57, 63, 67, 59, 69, 58, 78, 58, 61, 69, 56, 61, 77, 53, 85, 64, 69, 62, 83, 76, 61, 72, 53, 61, 68, 63, 70, 81, 50, 89, 69, 51, 53, 54, 71, 66, 99, 89, 69, 87, 63, 62, 59, 51, 57, 69, 58, 52, 43, 64, 56, 65, 67, 59, 64, 70, 25, 80, 66, 84, 53, 73, 57, 60, 68, 54, 67, 66, 68, 68, 59, 54, 59, 63, 63, 54, 58, 53, 55, 63, 60, 69, 73, 50, 76, 58, 65, 44, 83, 45, 74, 60, 56, 58, 87, 40, 59, 63, 60, 91, 64, 61, 66, 70, 92, 69, 89, 46, 64, 56, 63, 47, 45, 68, 61, 82, 74, 57, 68, 40, 56, 94, 69, 61, 70, 80, 61, 78, 103, 60, 57, 60, 62, 51, 73, 73, 59, 64, 51, 45, 57, 67, 54, 79, 120, 43, 61, 51, 75, 77, 59, 38, 58, 64, 61, 68, 73, 57, 73, 52, 53, 82, 74, 64, 88, 75, 58, 45, 73, 80, 70, 68, 86, 78, 86, 59, 65, 51, 105, 54, 60, 71, 60, 42, 64, 52, 57, 66, 58, 76, 68, 80, 61, 73, 48, 65, 49, 65, 55, 48, 100, 82, 64, 63, 67, 61, 110, 58, 76, 57, 72, 75, 74, 65, 79, 53, 65, 65, 54, 71, 60, 89, 87, 80, 65, 80, 52, 83, 62, 87, 77, 61, 60, 63, 69, 59, 70, 38, 51, 72, 54, 69, 50, 91, 60, 69, 40, 66, 62, 65, 56, 56, 43, 71, 69, 53, 67, 59, 69, 49, 51, 57, 83, 77, 76, 86, 64, 59, 75, 57, 51, 63, 56, 50, 63, 68, 70, 54, 69, 89, 91, 86, 53, 68, 109, 65, 65, 73, 73, 61, 67, 83, 69, 54, 55, 76, 53, 69, 84, 71, 65, 79, 65, 210, 56, 66, 57, 45, 53, 70, 55, 80, 75, 56, 69, 71, 101, 73, 54, 73, 55, 63, 69, 68, 79, 78, 63, 72, 54, 61, 86, 67, 106, 59, 72, 62, 77, 52, 51, 68, 74, 72, 52, 52, 65, 98, 51, 78, 56, 53, 56, 61, 50, 70, 66, 60, 52, 70, 79, 37, 66, 62, 76, 77, 55, 44, 55, 50, 61, 84, 96, 71, 53, 79, 81, 59, 77, 50, 51, 68, 62, 65, 74, 56, 51, 57, 58, 73, 63, 67, 56, 69, 50, 66, 56, 56, 89, 74, 73, 51, 71, 70, 75, 84, 69, 68, 91, 92, 56, 57, 41, 68, 72, 63, 65, 78, 82, 61, 71, 67, 51, 60, 76, 62, 76, 68, 84, 67, 80, 74, 72, 63, 56, 69, 58, 58, 103, 71, 53, 71, 79, 33, 71, 66, 61, 39, 55, 81, 95, 77, 69, 43, 68, 92, 119, 73, 66, 61, 79, 67, 61, 69, 52, 57, 60, 80, 64, 68, 68, 117, 66, 71, 56, 51, 49, 73, 65, 58, 63, 51, 86, 66, 45, 61, 69, 57, 52, 55, 74, 80, 91, 79, 87, 73, 45, 65, 89, 94, 53, 77, 64, 45, 65, 53, 53, 62, 44, 59, 50, 72, 63, 68, 65, 60, 51, 49, 64, 54, 57, 65, 56, 72, 61, 61, 67, 75, 87, 68, 59, 68, 73, 69, 68, 56, 48, 58, 64, 71, 109, 76, 63, 53, 74, 60, 87, 86, 48, 102, 52, 74, 72, 55, 62, 83, 84, 48, 43, 49, 85, 53, 60, 82, 94, 45, 62, 70, 67, 50, 53, 55, 59, 44, 84, 72, 56, 57, 71, 74, 104, 60, 87, 93, 69, 64, 56, 52, 73, 62, 59, 65, 48, 76, 52, 69, 70, 55, 72, 68, 63, 61, 65, 59, 53, 77, 41, 56, 58, 64, 61, 55, 52, 91, 59, 72, 33, 51, 75, 57, 63, 58, 63, 51, 55, 70, 73, 69, 52, 65, 70, 61, 60, 57, 67, 59, 64, 83, 73, 69, 61, 67, 61, 51, 61, 75, 54, 102, 40, 42, 72, 57, 60, 73, 69, 63, 57, 76, 77, 71, 58, 57, 53, 61, 79, 48, 56, 81, 62, 60, 80, 57, 70, 61, 59, 76, 69, 75, 53, 62, 52, 69, 62, 53, 68, 70, 71, 64, 61, 57, 80, 76, 84, 53, 60, 88, 69, 56, 121, 75, 62, 46, 71, 37, 76, 52, 62, 78, 56, 73, 68, 79, 62, 71, 66, 72, 71, 48, 64, 68, 69, 73, 65, 61, 62, 59, 91, 63, 77, 55, 65, 62, 96, 66, 57, 82, 57, 89, 47, 86, 39, 63, 46, 67, 50, 51, 61, 52, 72, 89, 57, 84, 82, 70, 63, 82, 84, 72, 65, 51, 64, 51, 61, 66, 57, 109, 47, 69, 59, 61, 64, 73, 64, 45, 69, 42, 84, 43, 109, 56, 51, 71, 69, 58, 54, 66, 53, 51, 67, 80, 78, 56, 76, 68, 68, 62, 61, 71, 59, 63, 51, 40, 57, 57, 52, 67, 67, 64, 62, 65, 50, 71, 61, 57, 63, 49, 70, 76, 63, 51, 71, 61, 57, 68, 60, 59, 67, 54, 129, 59, 84, 51, 65, 55, 72, 67, 46, 84, 43, 73, 61, 65, 63, 52, 41, 69, 60, 95, 71, 72, 58, 56, 71, 81, 70, 68, 72, 86, 101, 60, 122, 54, 50, 64, 55, 80, 85, 66, 91, 69, 75, 61, 65, 59, 62, 64, 75, 112, 71, 77, 79, 80, 44, 51, 47, 65, 79, 58, 105, 52, 73, 67, 63, 68, 61, 57, 56, 58, 60, 51, 77, 61, 63, 64, 47, 64, 59, 77, 75, 76, 55, 52, 63, 99, 86, 50, 69, 65, 70, 60, 44, 64, 63, 54, 47, 63, 66, 57, 62, 58, 110, 125, 57, 64, 83, 42, 80, 77, 73, 70, 35, 66, 89, 67, 79, 47, 47, 58, 73, 70, 92, 63, 55, 78, 92, 69, 53, 30, 56, 85, 79, 51, 68, 92, 68, 80, 55, 65, 84, 63, 51, 96, 69, 65, 72, 83, 108, 50, 57, 60, 67, 63, 64, 58, 60, 74, 66, 76, 45, 75, 83, 48, 65, 68, 75, 67, 72, 124, 62, 67, 50, 65, 71, 61, 67, 60, 93, 66, 53, 55, 67, 90, 69, 65, 48, 34, 49, 63, 46, 60, 70, 79, 67, 68, 63, 60, 49, 73, 64, 112, 87, 68, 107, 63, 62, 38, 63, 72, 65, 74, 67, 70, 51, 72, 67, 54, 55, 59, 55, 40, 65, 65, 47, 63, 57, 83, 59, 87, 60, 55, 65, 68, 59, 62, 74, 59, 66, 55, 62, 50, 97, 65, 58, 69, 54, 50, 71, 74, 61, 35, 60, 65, 69, 55, 53, 81, 65, 61, 70, 72, 61, 67, 55, 52, 57, 53, 39, 60, 67, 68, 45, 60, 54, 68, 62, 70, 47, 86, 49, 65, 55, 60, 59, 65, 63, 67, 48, 64, 70, 64, 72, 62, 59, 80, 93, 79, 68, 72, 86, 69, 61, 79, 62, 75, 93, 44, 63, 65, 60, 68, 63, 81, 60, 70, 63, 68, 70, 60, 75, 52, 75, 92, 79, 73, 67, 52, 72, 48, 53, 70, 61, 74, 56, 61, 79, 64, 61, 96, 66, 81, 57, 71, 67, 83, 66, 60, 81, 78, 91, 52, 60, 55, 77, 55, 52, 93, 51, 62, 60, 58, 59, 65, 73, 60, 73, 52, 50, 80, 60, 88, 87, 64, 74, 78, 51, 69, 81, 78, 88, 61, 62, 77, 60, 47, 81, 60, 68, 52, 49, 60, 54, 85, 67, 56, 79, 75, 65, 67, 57, 61, 60, 62, 58, 62, 110, 69, 66, 66, 80, 65, 71, 55, 36, 71, 57, 41, 80, 68, 101, 65, 68, 53, 60, 56, 65, 68, 72, 59, 56, 57, 71, 66, 59, 47, 73, 60, 76, 84, 51, 56, 56, 67, 68, 100, 46, 58, 51, 58, 68, 54, 73, 92, 65, 67, 61, 55, 49, 80, 43, 68, 45, 71, 77, 66, 100, 86, 50, 57, 61, 51, 55, 60, 72, 62, 59, 68, 64, 69, 69, 67, 81, 51, 43, 98, 111, 42, 66, 62, 103, 72, 53, 62, 61, 46, 51, 50, 51, 66, 56, 61, 82, 90, 82, 93, 82, 63, 79, 69, 130, 53, 61, 67, 60, 65, 59, 47, 59, 69, 55, 73, 49, 59, 79, 55, 89, 80, 57, 48, 61, 54, 73, 50, 51, 49, 61, 52, 56, 64, 67, 65, 72, 81, 57, 62, 70, 58, 69, 65, 133, 65, 71, 41, 60, 65, 68, 77, 84, 129, 77, 79, 55, 59, 74, 61, 58, 71, 68, 83, 50, 42, 62, 59, 50, 59, 67, 55, 57, 102, 41, 77, 55, 64, 126, 55, 54, 65, 66, 67, 66, 63, 55, 47, 76, 62, 73, 82, 54, 68, 64, 48, 67, 74, 69, 56, 81, 70, 67, 71, 64, 56, 59, 73, 72, 70, 67, 63, 52, 63, 67, 98, 87, 91, 45, 49, 72, 68, 61, 76, 65, 74, 88, 54, 56, 47, 57, 70, 77, 68, 61, 55, 57, 53, 81, 71, 67, 60, 96, 86, 104, 61, 57, 73, 59, 54, 85, 53, 49, 48, 66, 52, 54, 76, 78, 53, 52, 64, 52, 50, 62, 57, 72, 71, 60, 89, 58, 65, 89, 93, 75, 61, 62, 61, 63, 83, 77, 62, 56, 54, 59, 66, 74, 58, 49, 73, 31, 59, 49, 52, 75, 51, 81, 69, 100, 67, 60, 83, 50, 83, 66, 98, 60, 82, 56, 67, 69, 80, 100, 53, 136, 75, 80, 68, 39, 69, 59, 54, 63, 66, 65, 58, 65, 59, 74, 65, 78, 64, 73, 53, 59, 96, 72, 105, 58, 64, 69, 67, 71, 70, 72, 59, 69, 52, 51, 74, 59, 122, 55, 55, 58, 45, 54, 70, 69, 71, 64, 52, 58, 55, 54, 70, 40, 70, 62, 82, 73, 56, 74, 58, 65, 76, 54, 50, 56, 56, 36, 64, 64, 71, 42, 44, 62, 56, 56, 63, 85, 82, 68, 74, 60, 58, 51, 60, 58, 58, 52, 49, 69, 59, 61, 63, 41, 57, 60, 42, 75, 97, 84, 71, 73, 71, 83, 60, 52, 52, 49, 54, 77, 65, 54, 82, 125, 92, 69, 69, 69, 40, 59, 95, 43, 69, 76, 81, 52, 66, 65, 113, 47, 53, 49, 37, 50, 77, 68, 71, 45, 53, 91, 71, 56, 61, 82, 95, 53, 71, 61, 37, 63, 71, 44, 48, 74, 55, 47, 51, 52, 87, 71, 62, 87, 62, 66, 60, 63, 79, 50, 72, 48, 66, 63, 71, 68, 52, 99, 75, 55, 58, 85, 64, 65, 72, 70, 76, 88, 54, 94, 66, 91, 79, 60, 80, 99, 77, 63, 71, 64, 50, 67, 64, 70, 57, 78, 87, 114, 72, 45, 78, 83, 65, 77, 58, 52, 49, 63, 42, 63, 73, 80, 54, 66, 60, 43, 67, 46, 63, 79, 65, 70, 84, 80, 49, 93, 60, 52, 45, 81, 42, 115, 70, 84, 89, 43, 53, 53, 77, 54, 41, 53, 77, 86, 44, 55, 58, 61, 64, 53, 48, 51, 71, 48, 61, 80, 52, 48, 77, 49, 48, 50, 58, 69, 104, 55, 81, 91, 67, 60, 73, 49, 64, 148, 59, 64, 72, 73, 65, 80, 57, 72, 59, 65, 57, 29, 56, 67, 76, 58, 61, 70, 62, 65, 66, 64, 41, 45, 68, 84, 43, 85, 60, 83, 111, 56, 67, 65, 58, 60, 71, 104, 67, 59, 91, 72, 48, 81, 42, 87, 88, 73, 86, 61, 62, 62, 82, 81, 66, 74, 84, 64, 53, 49, 56, 47, 87, 80, 49, 63, 49, 61, 50, 109, 56, 53, 50, 65, 59, 59, 68, 85, 115, 80, 87, 43, 48, 68, 63, 63, 50, 89, 63, 45, 76, 65, 59, 90, 82, 57, 43, 47, 57, 62, 75, 50, 70, 79, 56, 75, 64, 71, 58, 62, 60, 53, 69, 51, 100, 64, 59, 34, 82, 69, 77, 50, 73, 55, 113, 67, 58, 72, 73, 73, 67, 62, 73, 105, 85, 99, 65, 70, 63, 53, 54, 63, 50, 58, 76, 48, 50, 57, 74, 66, 55, 48, 55, 87, 80, 46, 42, 58, 57, 66, 98, 68, 64, 49, 71, 61, 43, 71, 78, 71, 86, 58, 64, 87, 74, 52, 56, 75, 64, 71, 59, 70, 34, 60, 85, 98, 62, 90, 64, 82, 69, 87, 69, 87, 61, 58, 48, 82, 78, 96, 62, 64, 69, 62, 70, 72, 55, 73, 67, 64, 88, 54, 56, 64, 54, 48, 67, 82, 80, 67, 61, 72, 80, 80, 60, 68, 59, 52, 76, 61, 69, 69, 68, 62, 59, 63, 48, 67, 84, 65, 68, 61, 63, 41, 72, 67, 68, 44, 51, 64, 71, 67, 68, 94, 78, 56, 84, 62, 52, 78, 57, 81, 87, 58, 41, 72, 45, 57, 58, 59, 128, 55, 74, 77, 62, 46, 58, 64, 60, 57, 74, 55, 67, 42, 60, 51, 70, 75, 77, 62, 54, 103, 64, 47, 63, 83, 140, 64, 58, 88, 69, 91, 48, 58, 69, 102, 51, 87, 59, 60, 76, 51, 66, 50, 68, 78, 78, 66, 60, 75, 60, 83, 79, 88, 49, 66, 66, 59, 68, 76, 55, 63, 57, 66, 71, 47, 54, 62, 90, 71, 62, 47, 58, 70, 57, 97, 63, 96, 69, 100, 62, 54, 76, 71, 82, 78, 74, 76, 65, 85, 63, 63, 62, 57, 86, 57, 46, 63, 45, 71, 78, 65, 64, 88, 59, 64, 61, 54, 67, 54, 54, 79, 80, 85, 80, 85, 52, 73, 50, 80, 83, 82, 63, 70, 52, 44, 69, 72, 56, 54, 86, 66, 57, 56, 60, 49, 59, 71, 69, 50, 60, 91, 78, 74, 58, 69, 70, 80, 91, 80, 59, 71, 65, 56, 64, 48, 73, 63, 56, 60, 85, 83, 88, 69, 64, 71, 70, 54, 69, 70, 91, 54, 82, 72, 82, 83, 54, 101, 57, 62, 72, 83, 93, 58, 52, 74, 38, 55, 61, 55, 63, 83, 50, 83, 54, 88, 60, 60, 58, 71, 55, 66, 59, 69, 48, 75, 57, 66, 66, 61, 62, 70, 73, 55, 67, 53, 50, 73, 56, 53, 52, 60, 69, 52, 48, 95, 50, 118, 58, 51, 121, 37, 52, 67, 58, 60, 62, 40, 85, 50, 86, 77, 58, 79, 41, 56, 46, 50, 83, 72, 90, 83, 61, 53, 70, 55, 73, 87, 54, 76, 62, 72, 71, 43, 64, 59, 74, 62, 84, 63, 38, 91, 47, 62, 43, 53, 72, 32, 63, 63, 79, 67, 60, 69, 54, 66, 64, 63, 43, 57, 64, 56, 61, 67, 48, 87, 51, 70, 63, 87, 63, 62, 67, 54, 45, 62, 67, 66, 86, 52, 72, 105, 75, 61, 62, 59, 91, 68, 74, 60, 79, 54, 69, 53, 80, 76, 76, 82, 64, 76, 53, 60, 87, 52, 44, 85, 68, 130, 83, 142, 59, 62, 58, 82, 77, 73, 57, 60, 55, 53, 68, 65, 76, 79, 82, 47, 109, 60, 55, 69, 72, 62, 63, 70, 95, 37, 67, 56, 56, 43, 41, 79, 63, 72, 58, 69, 85, 58, 75, 73, 80, 75, 76, 61, 58, 52, 60, 62, 62, 54, 85, 78, 62, 57, 51, 93, 65, 56, 37, 74, 71, 65, 68, 84, 94, 67, 56, 86, 60, 54, 73, 58, 76, 70, 59, 51, 87, 70, 78, 34, 55, 50, 55, 65, 64, 78, 58, 45, 74, 64, 70, 52, 42, 63, 64, 76, 51, 49, 66, 68, 76, 68, 56, 77, 85, 93, 60, 84, 83, 77, 84, 72, 56, 58, 64, 58, 57, 56, 43, 63, 76, 56, 52, 61, 77, 46, 104, 81, 63, 87, 64, 51, 85, 54, 98, 58, 45, 62, 59, 49, 57, 51, 83, 121, 72, 63, 53, 57, 59, 60, 77, 55, 68, 123, 56, 67, 69, 55, 66, 57, 68, 64, 72, 73, 73, 58, 63, 51, 78, 80, 59, 87, 55, 74, 47, 119, 59, 49, 57, 59, 56, 77, 68, 59, 73, 66, 55, 50, 61, 57, 64, 55, 53, 53, 68, 55, 58, 64, 74, 88, 82, 57, 63, 64, 50, 72, 71, 65, 44, 49, 68, 65, 63, 89, 81, 64, 58, 61, 66, 55, 68, 58, 77, 73, 75, 56, 67, 65, 65, 84, 68, 64, 62, 61, 70, 64, 54, 75, 43, 47, 73, 66, 87, 75, 72, 69, 62, 61, 54, 63, 68, 92, 53, 56, 54, 77, 66, 63, 47, 57, 71, 86, 53, 59, 58, 69, 47, 73, 62, 43, 49, 60, 52, 59, 107, 78, 70, 58, 73, 72, 53, 78, 68, 72, 69, 57, 65, 62, 67, 49, 75, 67, 80, 69, 61, 62, 70, 65, 62, 53, 114, 69, 84, 66, 43, 62, 57, 54, 84, 72, 128, 59, 87, 48, 70, 62, 64, 64, 62, 65, 55, 78, 52, 59, 65, 50, 89, 50, 43, 56, 61, 75, 54, 60, 59, 78, 57, 49, 63, 51, 63, 62, 71, 84, 88, 53, 55, 85, 74, 99, 81, 78, 58, 61, 65, 57, 80, 57, 84, 60, 78, 62, 48, 53, 68, 57, 95, 50, 59, 74, 64, 89, 48, 63, 52, 60, 75, 81, 70, 70, 55, 69, 88, 63, 62, 60, 67, 53, 64, 47, 62, 71, 63, 43, 75, 64, 49, 56, 53, 53, 53, 61, 82, 51, 63, 59, 51, 62, 84, 64, 87, 64, 55, 60, 62, 56, 58, 65, 60, 72, 88, 58, 76, 95, 71, 73, 48, 69, 69, 52, 79, 71, 67, 62, 103, 44, 61, 62, 45, 40, 72, 59, 91, 79, 68, 97, 78, 69, 67, 74, 63, 65, 69, 106, 58, 78, 46, 53, 72, 69, 64, 71, 79, 56, 52, 82, 54, 61, 62, 68, 79, 53, 70, 70, 70, 65, 79, 60, 48, 73, 77, 58, 53, 75, 47, 70, 77, 59, 67, 61, 69, 84, 68, 61, 57, 47, 82, 61, 72, 53, 59, 74, 60, 46, 65, 58, 103, 76, 62, 69, 62, 80, 63, 74, 56, 62, 73, 63, 102, 65, 57, 57, 57, 85, 71, 47, 46, 80, 65, 69, 65, 65, 48, 62, 51, 68, 79, 53, 86, 50, 56, 70, 50, 72, 77, 79, 62, 70, 58, 54, 79, 69, 76, 75, 61, 85, 61, 67, 56, 83, 61, 62, 51, 56, 69, 60, 58, 84, 84, 65, 47, 74, 63, 65, 52, 65, 46, 66, 61, 120, 71, 69, 54, 50, 57, 57, 65, 82, 55, 44, 67, 61, 56, 116, 65, 62, 74, 65, 80, 83, 76, 58, 63, 84, 77, 67, 70, 87, 64, 51, 55, 89, 68, 69, 54, 66, 77, 55, 70, 52, 47, 58, 68, 67, 88, 62, 49, 71, 74, 59, 68, 73, 84, 67, 66, 98, 95, 83, 62, 58, 70, 117, 118, 60, 58, 70, 53, 89, 82, 84, 74, 79, 60, 61, 77, 57, 74, 69, 52, 64, 57, 63, 64, 51, 59, 55, 81, 62, 75, 68, 37, 72, 57, 73, 65, 56, 58, 63, 62, 71, 90, 62, 61, 72, 63, 48, 62, 56, 73, 55, 58, 52, 67, 55, 41, 83, 74, 59, 67, 51, 64, 65, 71, 50, 75, 56, 74, 94, 68, 67, 72, 70, 65, 59, 56, 66, 74, 54, 56, 47, 63, 54, 95, 67, 73, 69, 47, 63, 64, 74, 58, 67, 58, 64, 60, 64, 74, 74, 76, 48, 35, 75, 57, 69, 86, 57, 73, 70, 62, 59, 67, 67, 56, 63, 46, 84, 54, 64, 53, 74, 74, 55, 74, 71, 53, 67, 60, 61, 56, 80, 65, 66, 66, 61, 60, 93, 54, 58, 62, 55, 73, 56, 43, 55, 60, 73, 63, 47, 60, 114, 65, 53, 69, 58, 62, 60, 24, 74, 58, 72, 65, 64, 55, 57, 51, 71, 40, 77, 92, 62, 54, 82, 53, 59, 58, 66, 50, 74, 60, 53, 67, 58, 56, 51, 78, 88, 71, 89, 77, 74, 77, 49, 53, 111, 80, 54, 101, 86, 46, 45, 68, 75, 69, 56, 53, 56, 80, 56, 57, 84, 60, 61, 65, 46, 59, 68, 55, 70, 65, 61, 69, 68, 86, 53, 89, 157, 54, 56, 55, 65, 86, 61, 77, 61, 49, 38, 61, 69, 70, 67, 78, 62, 105, 78, 81, 73, 73, 63, 66, 38, 100, 79, 55, 70, 77, 79, 70, 52, 63, 68, 63, 64, 62, 53, 64, 180, 63, 70, 67, 62, 81, 75, 72, 78, 72, 59, 63, 66, 49, 51, 56, 110, 60, 72, 90, 57, 66, 54, 72, 59, 72, 61, 69, 55, 54, 69, 57, 64, 66, 63, 61, 76, 83, 133, 120, 54, 69, 72, 106, 95, 66, 62, 72, 92, 67, 65, 61, 63, 63, 72, 68, 89, 56, 60, 67, 63, 96, 64, 69, 63, 62, 47, 63, 56, 44, 58, 66, 57, 67, 76, 42, 66, 71, 60, 68, 65, 66, 61, 48, 52, 71, 71, 75, 64, 86, 77, 73, 52, 55, 74, 55, 44, 68, 56, 64, 47, 73, 82, 90, 85, 71, 71, 41, 71, 48, 56, 83, 60, 76, 38, 55, 87, 48, 61, 62, 57, 100, 57, 59, 66, 80, 68, 86, 59, 95, 57, 50, 74, 56, 84, 97, 80, 67, 73, 57, 98, 54, 61, 63, 65, 117, 59, 66, 61, 100, 44, 63, 62, 54, 70, 65, 84, 53, 59, 80, 75, 60, 95, 43, 64, 90, 68, 47, 71, 73, 134, 80, 55, 47, 87, 55, 65, 59, 57, 77, 88, 70, 83, 75, 60, 71, 68, 71, 53, 72, 60, 58, 60, 86, 69, 77, 68, 55, 39, 65, 71, 74, 64, 82, 67, 61, 51, 67, 56, 75, 72, 72, 80, 60, 57, 62, 54, 59, 50, 61, 54, 70, 62, 51, 47, 52, 83, 75, 60, 78, 55, 68, 64, 75, 81, 48, 54, 46, 58, 69, 51, 60, 68, 60, 61, 67, 59, 86, 67, 106, 61, 56, 64, 68, 73, 73, 68, 56, 73, 56, 61, 64, 51, 74, 78, 55, 62, 68, 79, 65, 62, 56, 84, 67, 70, 60, 77, 36, 72, 68, 71, 41, 45, 82, 81, 56, 56, 59, 73, 51, 62, 72, 49, 65, 63, 72, 57, 75, 79, 77, 53, 45, 63, 74, 60, 69, 49, 70, 59, 57, 68, 65, 62, 71, 64, 62, 60, 58, 64, 62, 85, 72, 56, 70, 46, 82, 59, 60, 66, 61, 81, 58, 81, 66, 58, 73, 59, 74, 56, 66, 61, 81, 100, 59, 67, 60, 63, 58, 60, 72, 50, 69, 56, 71, 71, 48, 69, 57, 62, 62, 54, 79, 43, 73, 63, 65, 69, 53, 86, 53, 72, 94, 73, 128, 63, 52, 80, 66, 53, 63, 79, 77, 69, 67, 104, 66, 63, 81, 58, 75, 70, 82, 63, 76, 75, 67, 77, 67, 66, 63, 55, 67, 58, 66, 64, 70, 66, 75, 59, 53, 66, 70, 51, 64, 61, 84, 59, 69, 50, 52, 64, 70, 82, 63, 66, 66, 67, 98, 89, 67, 104, 71, 44, 58, 80, 61, 69, 39, 65, 64, 58, 47, 58, 70, 61, 49, 120, 61, 81, 61, 57, 65, 57, 67, 53, 79, 72, 60, 60, 68, 66, 52, 69, 57, 59, 75, 58, 63, 72, 64, 68, 67, 55, 71, 77, 53, 75, 80, 66, 47, 54, 66, 58, 41, 46, 66, 60, 72, 65, 63, 54, 60, 70, 60, 70, 66, 59, 75, 69, 72, 51, 62, 60, 56, 52, 59, 55, 64, 56, 62, 74, 50, 64, 99, 76, 71, 64, 50, 57, 65, 70, 59, 56, 56, 64, 71, 57, 68, 73, 64, 69, 57, 74, 76, 78, 67, 67, 49, 48, 79, 61, 61, 62, 78, 66, 82, 75, 68, 58, 53, 52, 96, 57, 48, 64, 72, 61, 54, 61, 55, 41, 56, 65, 68, 67, 65, 47, 62, 70, 71, 62, 56, 63, 79, 81, 56, 56, 74, 67, 69, 83, 56, 62, 125, 75, 51, 73, 77, 69, 75, 57, 58, 78, 69, 65, 71, 62, 80, 76, 49, 63, 68, 63, 56, 69, 52, 62, 59, 59, 57, 87, 133, 61, 61, 65, 48, 66, 52, 81, 62, 63, 75, 61, 78, 59, 65, 80, 55, 54, 61, 63, 57, 72, 72, 73, 61, 73, 59, 72, 61, 63, 61, 69, 72, 82, 61, 55, 82, 68, 60, 60, 65, 79, 50, 64, 59, 61, 66, 59, 53, 79, 83, 51, 61, 68, 67, 63, 59, 51, 68, 40, 61, 105, 75, 73, 65, 54, 71, 64, 59, 58, 61, 68, 57, 88, 60, 70, 57, 76, 66, 56, 90, 65, 57, 57, 84, 61, 65, 63, 44, 98, 66, 71, 51, 68, 64, 68, 64, 44, 50, 61, 45, 56, 60, 61, 92, 75, 58, 61, 81, 68, 67, 142, 59, 65, 60, 73, 63, 67, 71, 51, 70, 72, 75, 42, 54, 54, 75, 73, 58, 61, 58, 61, 51, 74, 53, 74, 81, 60, 72, 89, 93, 76, 63, 52, 68, 55, 64, 63, 72, 64, 65, 51, 59, 69, 63, 63, 67, 86, 71, 78, 73, 84, 68, 66, 73, 60, 61, 92, 83, 59, 71, 70, 64, 68, 77, 66, 63, 65, 73, 121, 72, 77, 60, 55, 108, 60, 56, 58, 61, 71, 62, 86, 75, 68, 56, 76, 63, 74, 56, 51, 73, 65, 59, 84, 73, 59, 63, 63, 64, 55, 77, 66, 56, 60, 61, 65, 38, 96, 67, 95, 131, 60, 63, 56, 60, 56, 59, 70, 83, 81, 60, 59, 55, 80, 74, 71, 63, 60, 84, 67, 61, 61, 61, 73, 63, 50, 67, 55, 61, 59, 56, 75, 62, 71, 76, 76, 60, 58, 73, 62, 69, 57, 51, 58, 55, 62, 88, 132, 61, 62, 89, 83, 66, 58, 76, 72, 46, 68, 49, 76, 80, 70, 71, 65, 85, 61, 74, 54, 52, 70, 73, 71, 48, 62, 52, 61, 65, 75, 61, 65, 81, 75, 71, 56, 65, 68, 106, 61, 54, 74, 54, 53, 63, 86, 57, 72, 55, 65, 53, 61, 53, 66, 59, 57, 86, 61, 72, 94, 71, 55, 108, 57, 67, 100, 71, 67, 49, 62, 53, 55, 55, 62, 77, 59, 55, 58, 74, 82, 55, 48, 78, 68, 51, 62, 54, 84, 61, 68, 69, 60, 47, 71, 70, 71, 94, 54, 58, 60, 67, 58, 63, 56, 68, 57, 58, 55, 54, 70, 65, 57, 61, 62, 81, 63, 70, 61, 57, 65, 74, 64, 70, 56, 70, 51, 66, 63, 92, 61, 108, 76, 49, 69, 75, 52, 56, 71, 58, 57, 56, 91, 78, 121, 86, 73, 73, 75, 64, 53, 66, 64, 49, 78, 63, 71, 60, 61, 58, 89, 53, 55, 76, 57, 63, 59, 64, 59, 57, 82, 76, 56, 61, 56, 53, 61, 72, 57, 62, 54, 81, 64, 74, 57, 71, 54, 68, 54, 84, 69, 93, 60, 60, 71, 64, 60, 57, 57, 52, 60, 73, 64, 56, 59, 49, 62, 71, 58, 67, 67, 87, 62, 65, 53, 65, 64, 69, 74, 51, 65, 71, 58, 47, 70, 60, 56, 94, 61, 103, 48, 67, 67, 52, 73, 80, 60, 73, 60, 111, 79, 76, 69, 59, 71, 80, 56, 72, 61, 55, 70, 52, 68, 74, 78, 69, 59, 63, 61, 63, 48, 48, 64, 64, 55, 60, 64, 49, 54, 58, 60, 64, 62, 68, 45, 62, 67, 71, 68, 55, 59, 65, 85, 62, 76, 63, 61, 72, 34, 68, 58, 69, 56, 98, 51, 59, 71, 56, 70, 62, 64, 58, 55, 80, 66, 78, 53, 66, 63, 64, 64, 54, 62, 61, 76, 98, 81, 63, 72, 57, 59, 73, 53, 69, 65, 65, 73, 43, 69, 64, 85, 72, 66, 65, 62, 74, 81, 67, 59, 54, 74, 62, 63, 149, 61, 61, 59, 55, 69, 51, 88, 61, 72, 71, 55, 62, 76, 78, 65, 74, 53, 59, 42, 54, 61, 57, 110, 82, 65, 71, 68, 81, 68, 58, 71, 51, 53, 93, 87, 58, 86, 53, 69, 58, 70, 69, 92, 82, 66, 66, 65, 84, 83, 58, 80, 59, 47, 57, 49, 67, 80, 54, 56, 65, 56, 58, 81, 54, 69, 54, 61, 76, 59, 83, 89, 62, 63, 74, 66, 68, 53, 58, 72, 86, 80, 66, 55, 61, 74, 57, 71, 61, 56, 69, 52, 78, 82, 72, 66, 75, 49, 65, 55, 69, 70, 46, 69, 77, 81, 74, 45, 106, 53, 41, 81, 73, 56, 62, 81, 66, 99, 50, 61, 60, 74, 57, 119, 67, 137, 73, 68, 57, 62, 84, 61, 53, 82, 68, 80, 43, 52, 78, 54, 71, 58, 70, 56, 68, 77, 64, 57, 68, 74, 61, 60, 57, 72, 65, 59, 100, 65, 64, 72, 72, 77, 51, 56, 44, 81, 46, 65, 49, 62, 57, 70, 62, 56, 43, 57, 52, 57, 60, 70, 57, 64, 59, 78, 62, 65, 62, 64, 78, 66, 63, 66, 55, 103, 71, 57, 74, 55, 56, 62, 53, 62, 67, 62, 74, 64, 53, 80, 74, 67, 69, 39, 68, 77, 71, 51, 56, 57, 88, 76, 71, 53, 66, 50, 68, 64, 59, 61, 77, 63, 57, 74, 64, 57, 53, 84, 46, 68, 86, 78, 77, 50, 60, 70, 47, 65, 46, 60, 44, 54, 92, 82, 72, 57, 45, 52, 66, 61, 50, 59, 72, 52, 68, 56, 71, 88, 68, 62, 43, 66, 45, 87, 68, 84, 57, 56, 63, 60, 63, 78, 60, 83, 72, 68, 89, 48, 100, 78, 79, 64, 60, 76, 68, 70, 46, 60, 54, 69, 57, 87, 77, 70, 47, 73, 95, 64, 96, 58, 60, 58, 71, 67, 58, 66, 70, 60, 65, 52, 92, 70, 52, 68, 83, 46, 64, 52, 48, 81, 110, 63, 69, 66, 56, 60, 75, 68, 59, 60, 65, 51, 41, 64, 47, 40, 53, 61, 86, 79, 58, 68, 61, 68, 58, 78, 126, 60, 48, 64, 88, 47, 57, 67, 62, 72, 50, 59, 47, 121, 46, 82, 62, 59, 53, 69, 76, 57, 43, 57, 62, 59, 75, 74, 47, 57, 63, 62, 82, 64, 61, 58, 67, 66, 58, 63, 57, 60, 60, 78, 64, 55, 85, 63, 64, 62, 62, 71, 55, 89, 69, 69, 73, 82, 58, 70, 75, 47, 64, 86, 67, 63, 109, 85, 66, 65, 50, 90, 67, 64, 65, 67, 95, 65, 57, 61, 63, 63, 80, 70, 41, 62, 79, 61, 81, 57, 54, 54, 60, 72, 46, 52, 50, 70, 77, 54, 59, 60, 60, 56, 66, 60, 63, 61, 56, 80, 78, 62, 70, 70, 48, 57, 79, 46, 58, 63, 72, 64, 62, 76, 44, 64, 53, 52, 62, 78, 70, 66, 68, 69, 61, 55, 50, 60, 55, 58, 64, 62, 76, 77, 74, 95, 81, 61, 64, 66, 73, 60, 83, 66, 94, 61, 66, 60, 66, 65, 48, 58, 45, 59, 50, 61, 57, 82, 59, 67, 59, 46, 63, 75, 59, 67, 57, 80, 70, 56, 59, 73, 65, 98, 49, 66, 58, 78, 64, 81, 57, 59, 57, 57, 69, 67, 73, 67, 54, 94, 79, 71, 89, 72, 62, 71, 70, 66, 63, 48, 60, 83, 75, 64, 69, 48, 63, 68, 51, 50, 66, 35, 63, 88, 69, 65, 75, 65, 78, 55, 86, 66, 60, 62, 73, 38, 73, 67, 91, 54, 75, 101, 44, 59, 64, 76, 57, 70, 61, 48, 66, 47, 79, 96, 72, 85, 69, 54, 84, 49, 61, 51, 71, 85, 69, 51, 67, 62, 66, 79, 77, 99, 69, 66, 66, 74, 63, 51, 48, 64, 69, 57, 64, 55, 79, 67, 50, 57, 80, 80, 77, 59, 74, 84, 60, 81, 65, 63, 68, 61, 64, 81, 46, 55, 59, 67, 64, 72, 67, 60, 63, 57, 76, 72, 73, 51, 65, 83, 57, 62, 49, 66, 64, 57, 77, 61, 68, 56, 55, 78, 64, 62, 52, 51, 98, 59, 51, 56, 65, 94, 59, 52, 47, 49, 54, 66, 70, 52, 61, 75, 74, 98, 41, 71, 64, 58, 55, 44, 73, 68, 60, 62, 59, 61, 90, 49, 58, 60, 53, 62, 157, 48, 58, 60, 65, 53, 57, 53, 69, 77, 69, 65, 88, 89, 56, 54, 42, 56, 58, 55, 53, 62, 61, 60, 73, 112, 57, 63, 44, 53, 61, 81, 58, 62, 54, 71, 58, 64, 71, 51, 60, 75, 44, 65, 67, 52, 73, 68, 66, 97, 82, 89, 64, 142, 86, 54, 72, 77, 49, 55, 55, 73, 82, 64, 66, 63, 75, 81, 71, 74, 58, 53, 64, 69, 65, 62, 72, 66, 55, 61, 68, 69, 71, 61, 55, 67, 90, 51, 50, 63, 69, 61, 55, 68, 64, 64, 51, 55, 96, 75, 49, 88, 48, 59, 84, 64, 69, 49, 76, 70, 64, 50, 61, 59, 67, 68, 50, 65, 66, 94, 56, 70, 66, 73, 73, 66, 82, 55, 91, 82, 78, 59, 46, 53, 56, 64, 49, 57, 54, 64, 68, 50, 66, 67, 50, 73, 70, 61, 88, 68, 70, 78, 54, 64, 105, 60, 92, 143, 67, 53, 56, 65, 69, 64, 65, 56, 86, 68, 75, 72, 56, 51, 100, 90, 75, 83, 67, 59, 56, 71, 53, 54, 55, 49, 74, 73, 58, 67, 56, 45, 55, 58, 53, 79, 52, 64, 70, 56, 68, 59, 57, 77, 87, 80, 54, 61, 79, 49, 63, 73, 72, 86, 85, 59, 58, 64, 71, 65, 60, 68, 69, 54, 69, 54, 66, 56, 51, 64, 61, 84, 67, 54, 73, 53, 59, 81, 65, 67, 64, 54, 104, 65, 95, 89, 55, 58, 69, 58, 67, 69, 49, 67, 64, 66, 48, 57, 68, 70, 53, 70, 55, 72, 57, 77, 63, 65, 72, 61, 53, 75, 59, 79, 89, 78, 84, 64, 76, 65, 73, 70, 79, 62, 68, 44, 83, 60, 68, 80, 55, 69, 57, 61, 108, 76, 65, 70, 61, 89, 47, 54, 82, 74, 79, 62, 56, 76, 47, 56, 77, 50, 68, 77, 72, 59, 53, 61, 60, 76, 84, 67, 63, 59, 75, 72, 49, 60, 65, 56, 55, 67, 63, 57, 57, 63, 52, 101, 52, 56, 52, 65, 72, 160, 50, 68, 70, 67, 63, 54, 56, 57, 71, 60, 80, 61, 54, 59, 57, 58, 79, 61, 62, 51, 44, 85, 72, 56, 55, 54, 70, 63, 71, 74, 76, 53, 62, 72, 67, 55, 70, 66, 68, 67, 59, 54, 51, 57, 59, 67, 66, 66, 55, 64, 79, 60, 72, 81, 84, 61, 74, 57, 57, 60, 52, 87, 63, 75, 61, 62, 50, 63, 66, 96, 60, 73, 112, 80, 58, 85, 56, 75, 49, 67, 65, 63, 65, 56, 69, 39, 57, 58, 74, 66, 63, 69, 76, 72, 82, 87, 67, 78, 50, 58, 46, 77, 96, 57, 61, 52, 55, 58, 58, 64, 86, 65, 69, 61, 65, 55, 89, 67, 58, 74, 73, 72, 53, 74, 87, 58, 49, 91, 72, 47, 68, 76, 56, 92, 52, 56, 94, 60, 67, 55, 47, 69, 64, 63, 69, 72, 43, 76, 61, 59, 76, 60, 68, 93, 57, 62, 61, 47, 58, 69, 68, 64, 75, 49, 65, 66, 82, 67, 63, 49, 73, 53, 72, 43, 57, 70, 64, 62, 60, 66, 88, 56, 58, 71, 74, 63, 68, 164, 67, 52, 67, 51, 63, 76, 57, 74, 54, 62, 80, 70, 62, 68, 51, 59, 61, 71, 55, 58, 62, 58, 56, 60, 64, 78, 51, 82, 49, 79, 63, 63, 80, 72, 60, 82, 51, 61, 92, 72, 55, 70, 78, 75, 55, 71, 67, 58, 69, 76, 90, 81, 79, 61, 53, 73, 60, 73, 58, 48, 63, 60, 47, 64, 71, 56, 75, 79, 63, 61, 69, 56, 55, 72, 53, 74, 60, 68, 55, 104, 45, 54, 64, 52, 68, 52, 68, 66, 71, 54, 60, 91, 57, 56, 57, 49, 76, 71, 51, 63, 80, 67, 80, 61, 64, 67, 84, 59, 59, 60, 51, 62, 62, 65, 67, 78, 65, 76, 71, 62, 89, 75, 51, 56, 63, 44, 64, 67, 60, 121, 77, 70, 61, 67, 49, 71, 65, 62, 83, 49, 61, 62, 43, 48, 62, 63, 68, 57, 84, 64, 51, 59, 64, 67, 104, 40, 60, 64, 68, 119, 49, 106, 61, 33, 55, 68, 83, 69, 68, 62, 64, 59, 55, 73, 74, 68, 66, 77, 101, 58, 50, 58, 67, 56, 52, 60, 48, 69, 76, 94, 65, 63, 75, 59, 67, 58, 61, 63, 65, 43, 62, 100, 43, 77, 69, 64, 57, 60, 71, 64, 66, 56, 56, 83, 105, 73, 66, 96, 65, 76, 56, 53, 66, 63, 70, 71, 65, 61, 59, 54, 66, 87, 136, 50, 69, 71, 73, 87, 57, 55, 60, 55, 63, 63, 61, 62, 62, 69, 67, 65, 53, 69, 75, 50, 88, 51, 74, 65, 77, 77, 49, 80, 62, 70, 83, 67, 54, 65, 62, 109, 62, 45, 72, 62, 61, 65, 52, 69, 68, 46, 65, 63, 70, 63, 60, 52, 58, 65, 66, 61, 95, 71, 53, 65, 59, 91, 63, 69, 139, 63, 68, 67, 62, 66, 62, 79, 69, 103, 72, 73, 56, 52, 53, 69, 56, 71, 61, 68, 63, 70, 51, 90, 62, 62, 92, 51, 48, 64, 67, 66, 118, 74, 71, 93, 62, 57, 69, 55, 63, 51, 53, 65, 72, 48, 67, 61, 59, 65, 69, 64, 55, 56, 70, 68, 61, 63, 59, 59, 87, 66, 43, 56, 57, 71, 55, 71, 61, 59, 48, 65, 68, 79, 61, 56, 51, 49, 57, 60, 60, 65, 44, 66, 59, 63, 63, 57, 60, 44, 53, 55, 63, 53, 50, 72, 53, 64, 70, 67, 56, 65, 63, 78, 71, 69, 83, 59, 72, 49, 66, 70, 65, 65, 71, 75, 69, 53, 76, 52, 72, 64, 59, 64, 39, 85, 85, 68, 62, 68, 84, 72, 51, 79, 63, 55, 75, 114, 66, 76, 69, 66, 81, 67, 79, 71, 47, 59, 75, 88, 69, 82, 61, 71, 60, 67, 68, 64, 71, 61, 58, 46, 71, 79, 86, 71, 61, 58, 61, 63, 63, 49, 68, 70, 49, 69, 67, 62, 50, 83, 68, 71, 68, 62, 64, 54, 56, 59, 65, 61, 47, 44, 44, 71, 68, 69, 57, 67, 56, 92, 71, 65, 90, 70, 61, 59, 83, 52, 47, 60, 75, 92, 69, 62, 57, 58, 63, 74, 71, 53, 60, 64, 61, 53, 61, 59, 70, 51, 79, 78, 54, 65, 49, 55, 61, 57, 80, 136, 74, 61, 64, 74, 60, 71, 51, 51, 66, 65, 47, 62, 68, 77, 50, 71, 71, 69, 68, 75, 69, 81, 73, 89, 57, 65, 72, 62, 66, 55, 44, 45, 81, 68, 65, 52, 85, 79, 100, 64, 69, 61, 73, 86, 67, 75, 91, 79, 57, 68, 69, 53, 54, 57, 59, 68, 79, 72, 73, 92, 70, 58, 66, 64, 50, 63, 55, 79, 77, 85, 59, 66, 72, 57, 50, 58, 68, 62, 51, 93, 70, 58, 72, 89, 85, 47, 62, 59, 57, 39, 69, 58, 32, 54, 58, 86, 94, 61, 83, 64, 76, 73, 73, 124, 54, 61, 82, 82, 56, 67, 68, 49, 44, 73, 50, 75, 65, 53, 57, 86, 74, 66, 62, 57, 66, 71, 57, 73, 58, 52, 70, 71, 61, 61, 67, 56, 70, 66, 74, 81, 65, 68, 66, 147, 66, 59, 50, 43, 61, 52, 86, 85, 115, 77, 68, 66, 58, 75, 59, 66, 58, 66, 69, 56, 73, 66, 68, 58, 62, 56, 60, 68, 103, 68, 57, 72, 75, 111, 66, 67, 79, 61, 75, 60, 69, 71, 43, 73, 52, 40, 64, 47, 72, 60, 63, 59, 82, 75, 72, 74, 70, 56, 75, 59, 66, 60, 88, 53, 66, 62, 49, 63, 53, 67, 86, 75, 81, 70, 54, 80, 48, 74, 52, 72, 73, 68, 85, 64, 62, 57, 63, 70, 81, 66, 70, 46, 43, 80, 68, 65, 80, 90, 72, 88, 57, 65, 79, 62, 57, 85, 59, 33, 59, 73, 62, 62, 67, 59, 53, 57, 72, 60, 60, 71, 58, 62, 53, 58, 94, 71, 69, 83, 80, 67, 54, 75, 63, 76, 80, 81, 82, 49, 73, 64, 81, 77, 63, 69, 59, 53, 67, 72, 54, 66, 65, 84, 72, 47, 79, 50, 63, 65, 85, 64, 67, 72, 64, 66, 53, 55, 68, 57, 51, 57, 48, 84, 75, 71, 67, 58, 65, 60, 64, 61, 61, 50, 73, 61, 55, 74, 71, 64, 67, 77, 63, 68, 54, 72, 54, 67, 78, 49, 48, 68, 90, 64, 61, 42, 59, 65, 84, 63, 62, 79, 67, 79, 64, 66, 78, 58, 81, 63, 62, 65, 45, 65, 63, 81, 69, 64, 62, 55, 90, 77, 56, 57, 78, 97, 66, 48, 66, 66, 71, 90, 80, 72, 52, 47, 61, 63, 62, 56, 75, 67, 71, 45, 64, 55, 59, 51, 88, 71, 47, 86, 51, 55, 72, 59, 69, 92, 56, 75, 69, 51, 71, 50, 83, 52, 68, 57, 49, 62, 77, 64, 63, 63, 120, 63, 54, 53, 64, 86, 67, 56, 66, 72, 120, 42, 110, 77, 57, 65, 57, 65, 61, 60, 61, 63, 64, 57, 96, 68, 57, 86, 54, 49, 71, 67, 63, 68, 75, 53, 60, 63, 55, 60, 52, 82, 66, 50, 41, 70, 75, 58, 70, 55, 62, 41, 81, 64, 56, 71, 57, 51, 89, 76, 76, 64, 66, 62, 71, 57, 54, 70, 80, 55, 55, 58, 52, 62, 63, 60, 64, 62, 59, 100, 61, 68, 68, 83, 64, 86, 35, 59, 56, 69, 51, 92, 75, 46, 60, 80, 68, 57, 61, 66, 65, 56, 58, 55, 55, 70, 80, 55, 79, 66, 77, 83, 67, 78, 77, 75, 91, 72, 62, 75, 70, 59, 77, 45, 81, 67, 52, 64, 131, 83, 49, 46, 68, 63, 62, 51, 57, 57, 60, 66, 60, 59, 61, 62, 59, 68, 71, 51, 62, 67, 55, 59, 48, 79, 61, 71, 55, 76, 60, 82, 67, 75, 58, 32, 56, 55, 64, 68, 56, 86, 76, 69, 59, 67, 54, 70, 57, 59, 68, 77, 73, 52, 32, 80, 59, 39, 56, 57, 70, 88, 61, 71, 50, 80, 83, 58, 58, 56, 75, 48, 77, 76, 79, 72, 48, 107, 73, 53, 73, 54, 86, 75, 62, 63, 66, 75, 67, 83, 58, 82, 51, 88, 95, 132, 57, 95, 82, 58, 50, 69, 42, 53, 37, 100, 66, 52, 53, 48, 73, 63, 70, 64, 72, 75, 84, 54, 56, 57, 60, 62, 55, 69, 60, 69, 48, 65, 57, 78, 54, 60, 58, 53, 78, 70, 64, 61, 64, 75, 79, 73, 49, 73, 43, 65, 78, 67, 61, 71, 81, 73, 57, 69, 71, 59, 54, 81, 67, 64, 56, 52, 57, 57, 64, 98, 65, 60, 66, 62, 38, 102, 65, 70, 77, 57, 81, 68, 59, 64, 70, 69, 59, 66, 78, 61, 61, 78, 54, 93, 63, 71, 61, 59, 56, 66, 62, 87, 76, 76, 59, 56, 73, 69, 53, 50, 90, 70, 81, 52, 78, 119, 55, 65, 50, 52, 56, 74, 48, 68, 66, 90, 67, 49, 56, 50, 68, 32, 58, 69, 46, 58, 49, 59, 68, 76, 75, 58, 59, 85, 75, 56, 51, 58, 60, 71, 67, 78, 65, 68, 64, 69, 65, 86, 57, 66, 69, 68, 68, 89, 77, 69, 65, 67, 80, 78, 61, 73, 65, 59, 101, 51, 120, 57, 66, 57, 63, 81, 75, 61, 61, 79, 64, 64, 61, 58, 70, 101, 64, 55, 74, 64, 87, 61, 86, 64, 65, 61, 50, 71, 85, 69, 58, 58, 48, 74, 55, 54, 76, 102, 62, 106, 63, 49, 49, 65, 65, 51, 63, 56, 64, 60, 77, 72, 69, 60, 58, 48, 60, 56, 61, 71, 80, 78, 57, 69, 67, 61, 85, 81, 81, 67, 31, 86, 93, 46, 67, 60, 74, 68, 51, 63, 68, 72, 70, 64, 71, 78, 90, 71, 58, 102, 66, 52, 67, 76, 65, 52, 73, 54, 68, 38, 71, 57, 52, 60, 94, 58, 67, 60, 46, 43, 64, 45, 60, 73, 65, 79, 64, 68, 59, 93, 44, 75, 70, 69, 106, 75, 68, 72, 62, 68, 56, 98, 67, 76, 58, 71, 52, 62, 51, 75, 70, 63, 70, 72, 73, 57, 60, 50, 75, 94, 60, 69, 66, 66, 64, 63, 48, 68, 65, 82, 48, 55, 94, 58, 60, 45, 49, 58, 79, 81, 51, 82, 61, 56, 65, 61, 50, 85, 59, 59, 76, 78, 54, 64, 50, 82, 80, 57, 82, 90, 64, 60, 88, 101, 55, 66, 75, 66, 83, 49, 53, 52, 75, 70, 72, 39, 73, 58, 78, 60, 48, 47, 62, 61, 65, 54, 69, 64, 60, 98, 58, 68, 66, 62, 69, 78, 65, 67, 64, 107, 77, 82, 78, 62, 72, 71, 104, 64, 60, 59, 57, 59, 65, 69, 77, 65, 85, 71, 58, 57, 49, 58, 48, 58, 63, 78, 73, 61, 83, 65, 59, 64, 45, 52, 63, 56, 52, 65, 69, 47, 67, 72, 65, 44, 70, 58, 57, 112, 78, 59, 69, 122, 67, 73, 49, 68, 66, 71, 65, 59, 48, 84, 66, 60, 68, 74, 64, 70, 55, 65, 76, 69, 52, 76, 94, 43, 69, 70, 55, 64, 68, 57, 52, 71, 59, 62, 53, 62, 78, 69, 66, 64, 65, 63, 83, 68, 85, 81, 58, 39, 109, 67, 64, 69, 50, 47, 63, 60, 61, 66, 72, 84, 54, 60, 56, 51, 44, 67, 63, 77, 129, 63, 83, 72, 67, 81, 62, 66, 58, 55, 62, 61, 72, 63, 79, 75, 41, 51, 61, 67, 65, 76, 87, 54, 84, 91, 64, 50, 64, 57, 81, 58, 53, 72, 39, 62, 73, 82, 86, 49, 77, 66, 67, 90, 61, 80, 60, 73, 72, 41, 54, 44, 55, 71, 44, 52, 56, 74, 62, 63, 75, 56, 73, 80, 46, 61, 76, 54, 66, 69, 61, 59, 65, 82, 83, 58, 53, 53, 62, 55, 68, 75, 64, 60, 72, 85, 58, 61, 66, 66, 51, 66, 70, 55, 70, 55, 67, 59, 74, 55, 63, 66, 49, 56, 61, 65, 78, 88, 56, 75, 65, 67, 80, 66, 62, 65, 79, 67, 78, 74, 67, 58, 84, 62, 44, 58, 69, 61, 61, 78, 47, 63, 79, 53, 74, 59, 79, 43, 49, 85, 104, 61, 49, 47, 61, 82, 67, 49, 63, 62, 54, 54, 66, 68, 70, 49, 74, 72, 64, 58, 59, 65, 65, 65, 59, 67, 56, 54, 59, 72, 73, 75, 47, 74, 61, 80, 74, 72, 60, 58, 65, 78, 49, 66, 67, 51, 61, 111, 78, 49, 59, 66, 63, 63, 55, 55, 65, 77, 54, 64, 60, 71, 56, 58, 80, 43, 138, 74, 66, 63, 44, 67, 51, 60, 93, 71, 96, 72, 66, 67, 64, 64, 73, 73, 52, 51, 76, 52, 70, 100, 56, 64, 53, 61, 41, 86, 57, 90, 61, 50, 60, 64, 78, 70, 71, 75, 65, 59, 68, 72, 57, 125, 80, 62, 62, 62, 61, 82, 68, 70, 61, 78, 65, 59, 61, 71, 69, 68, 47, 60, 74, 104, 84, 78, 64, 53, 69, 86, 66, 78, 69, 61, 39, 53, 71, 64, 82, 66, 70, 72, 53, 64, 68, 59, 56, 52, 53, 67, 77, 70, 55, 62, 68, 58, 66, 58, 63, 66, 88, 71, 75, 48, 61, 60, 65, 60, 53, 58, 54, 67, 73, 73, 82, 62, 64, 54, 107, 54, 36, 74, 55, 51, 86, 67, 73, 76, 60, 85, 55, 74, 73, 86, 66, 92, 68, 65, 76, 48, 69, 54, 49, 96, 72, 84, 52, 53, 76, 61, 52, 69, 59, 59, 64, 73, 61, 58, 54, 68, 71, 71, 62, 88, 58, 51, 141, 76, 66, 64, 57, 69, 67, 62, 68, 64, 70, 72, 65, 52, 72, 57, 73, 59, 75, 58, 58, 69, 66, 70, 69, 68, 60, 67, 61, 66, 55, 67, 101, 88, 88, 69, 61, 67, 55, 90, 65, 77, 48, 66, 65, 75, 60, 104, 59, 69, 47, 64, 58, 109, 62, 53, 67, 80, 64, 70, 96, 64, 61, 60, 65, 57, 51, 72, 75, 82, 107, 65, 65, 64, 69, 61, 71, 71, 60, 79, 62, 65, 66, 69, 56, 66, 65, 65, 74, 56, 68, 63, 67, 77, 66, 66, 63, 65, 53, 58, 58, 77, 65, 73, 67, 67, 65, 54, 54, 72, 50, 59, 66, 71, 62, 96, 56, 75, 50, 65, 61, 50, 86, 64, 56, 57, 96, 58, 52, 78, 75, 65, 62, 76, 52, 71, 81, 69, 53, 86, 69, 84, 62, 65, 78, 56, 69, 72, 60, 40, 81, 55, 97, 74, 69, 72, 68, 59, 76, 62, 69, 79, 134, 59, 79, 71, 64, 54, 59, 69, 69, 49, 70, 66, 62, 59, 57, 49, 78, 76, 51, 82, 57, 65, 62, 59, 86, 79, 65, 61, 52, 54, 70, 69, 64, 58, 80, 69, 62, 67, 72, 61, 57, 74, 68, 67, 61, 66, 62, 66, 51, 65, 59, 68, 60, 63, 60, 66, 42, 66, 67, 47, 62, 65, 71, 82, 49, 69, 66, 58, 59, 64, 67, 134, 61, 62, 62, 78, 59, 68, 66, 58, 68, 76, 54, 63, 67, 56, 67, 69, 85, 79, 70, 68, 53, 74, 70, 58, 66, 51, 58, 53, 90, 61, 62, 79, 57, 78, 77, 85, 59, 84, 68, 52, 65, 63, 67, 60, 64, 80, 71, 73, 54, 62, 61, 65, 68, 61, 79, 58, 54, 85, 61, 60, 59, 56, 61, 55, 66, 63, 64, 61, 60, 80, 56, 74, 44, 63, 62, 82, 69, 87, 65, 59, 58, 49, 73, 61, 76, 58, 74, 60, 66, 60, 56, 66, 64, 69, 70, 38, 72, 56, 55, 56, 66, 50, 70, 61, 67, 67, 61, 62, 64, 58, 59, 89, 61, 50, 73, 134, 71, 61, 74, 62, 48, 55, 59, 73, 64, 61, 55, 68, 67, 70, 54, 62, 60, 48, 75, 60, 60, 91, 65, 59, 55, 64, 53, 65, 69, 58, 56, 56, 62, 62, 69, 107, 73, 53, 56, 50, 68, 62, 53, 88, 54, 61, 64, 54, 69, 60, 67, 62, 65, 53, 57, 65, 54, 61, 62, 53, 74, 56, 48, 57, 91, 65, 58, 53, 66, 86, 101, 63, 59, 53, 57, 54, 67, 63, 75, 69, 69, 66, 120, 76, 50, 64, 66, 100, 62, 94, 59, 62, 66, 48, 74, 56, 70, 65, 54, 58, 52, 72, 73, 60, 60, 75, 97, 81, 112, 60, 71, 63, 49, 60, 60, 90, 82, 55, 82, 59, 56, 57, 54, 51, 85, 56, 68, 70, 66, 63, 90, 57, 75, 58, 65, 60, 52, 60, 73, 74, 73, 78, 65, 53, 63, 51, 53, 73, 60, 56, 62, 61, 61, 71, 60, 51, 86, 78, 65, 77, 77, 62, 61, 59, 71, 54, 53, 63, 60, 74, 60, 59, 63, 70, 66, 66, 46, 74, 55, 60, 103, 56, 82, 63, 55, 69, 68, 80, 66, 53, 50, 60, 62, 76, 87, 51, 61, 62, 50, 59, 57, 61, 73, 48, 63, 72, 96, 67, 60, 51, 76, 57, 90, 59, 59, 68, 58, 57, 62, 68, 67, 60, 48, 60, 63, 70, 59, 74, 39, 56, 76, 57, 64, 72, 78, 57, 59, 57, 71, 57, 71, 55, 58, 57, 84, 77, 57, 49, 54, 59, 57, 63, 64, 52, 70, 84, 61, 64, 63, 55, 80, 77, 70, 78, 85, 49, 71, 60, 73, 57, 60, 57, 66, 56, 52, 61, 69, 63, 85, 87, 78, 77, 51, 93, 69, 66, 62, 64, 49, 61, 68, 66, 58, 86, 70, 87, 48, 61, 53, 69, 72, 89, 58, 53, 51, 69, 93, 65, 75, 81, 52, 60, 61, 65, 64, 71, 59, 74, 67, 56, 57, 62, 88, 56, 62, 72, 62, 69, 66, 55, 90, 72, 62, 72, 51, 58, 99, 61, 75, 60, 89, 63, 59, 65, 58, 73, 68, 77, 51, 52, 61, 54, 60, 58, 79, 55, 53, 64, 58, 43, 48, 53, 69, 74, 61, 69, 64, 63, 51, 93, 63, 71, 62, 92, 75, 51, 64, 71, 80, 102, 82, 58, 59, 60, 49, 99, 42, 67, 79, 63, 61, 63, 71, 75, 65, 64, 63, 47, 61, 96, 71, 57, 49, 64, 81, 43, 63, 65, 65, 64, 57, 47, 56, 65, 54, 61, 76, 61, 83, 74, 69, 58, 59, 53, 59, 67, 62, 59, 56, 74, 71, 56, 60, 48, 54, 44, 53, 72, 59, 76, 88, 67, 42, 73, 57, 77, 73, 104, 72, 65, 67, 62, 45, 65, 46, 62, 65, 54, 61, 59, 73, 51, 73, 67, 60, 69, 60, 62, 99, 53, 93, 65, 55, 84, 102, 71, 53, 48, 37, 39, 68, 65, 73, 69, 47, 62, 51, 66, 71, 59, 68, 54, 66, 53, 57, 75, 132, 51, 54, 74, 75, 133, 64, 58, 47, 58, 66, 73, 55, 68, 51, 77, 51, 74, 70, 73, 70, 54, 67, 60, 45, 59, 107, 71, 75, 79, 49, 64, 80, 47, 54, 62, 57, 75, 61, 59, 95, 112, 71, 73, 62, 86, 86, 64, 62, 50, 64, 68, 62, 85, 53, 60, 31, 67, 70, 74, 66, 49, 47, 80, 52, 44, 69, 95, 69, 116, 58, 79, 92, 80, 97, 51, 81, 51, 53, 70, 68, 84, 52, 87, 64, 56, 76, 64, 72, 69, 63, 54, 74, 54, 64, 87, 74, 81, 35, 75, 53, 89, 62, 61, 44, 60, 70, 101, 56, 88, 57, 53, 57, 58, 86, 64, 67, 59, 61, 57, 95, 97, 65, 62, 40, 64, 128, 51, 52, 70, 61, 54, 85, 65, 50, 53, 57, 68, 81, 67, 62, 60, 69, 84, 74, 55, 66, 63, 55, 68, 51, 55, 77, 66, 61, 56, 72, 62, 61, 76, 55, 66, 77, 100, 65, 97, 69, 35, 43, 52, 81, 42, 61, 53, 61, 90, 76, 52, 85, 58, 57, 51, 49, 77, 64, 53, 65, 67, 85, 66, 63, 63, 84, 51, 65, 70, 49, 54, 45, 77, 32, 126, 64, 68, 90, 81, 62, 67, 67, 85, 56, 62, 81, 72, 87, 71, 77, 55, 38, 61, 54, 65, 67, 74, 50, 89, 75, 105, 64, 55, 84, 54, 66, 74, 56, 48, 77, 85, 55, 67, 102, 50, 74, 55, 79, 38, 66, 66, 65, 64, 52, 53, 63, 46, 62, 77, 91, 60, 47, 67, 71, 69, 63, 78, 78, 66, 70, 63, 80, 64, 67, 43, 88, 58, 76, 54, 67, 63, 65, 66, 73, 54, 59, 63, 67, 64, 59, 54, 82, 61, 55, 53, 58, 70, 107, 65, 67, 43, 55, 57, 60, 70, 68, 57, 63, 81, 67, 64, 38, 48, 50, 50, 64, 78, 99, 102, 61, 64, 54, 69, 71, 106, 62, 70, 65, 60, 52, 66, 30, 48, 67, 83, 58, 39, 54, 55, 42, 56, 61, 69, 68, 56, 76, 67, 79, 64, 63, 42, 83, 66, 53, 47, 61, 55, 81, 79, 67, 65, 91, 74, 48, 75, 66, 54, 64, 56, 98, 70, 65, 60, 55, 67, 57, 54, 84, 51, 77, 59, 52, 59, 46, 50, 67, 59, 67, 77, 58, 54, 62, 71, 58, 68, 48, 52, 78, 76, 84, 63, 68, 53, 67, 67, 65, 67, 59, 56, 64, 52, 61, 64, 52, 74, 68, 55, 44, 60, 52, 44, 56, 51, 68, 64, 67, 57, 70, 60, 55, 79, 80, 72, 133, 62, 54, 59, 57, 60, 71, 63, 83, 63, 76, 55, 56, 107, 63, 63, 70, 81, 86, 61, 45, 59, 86, 45, 62, 82, 87, 54, 67, 49, 51, 98, 61, 60, 69, 58, 75, 69, 38, 53, 71, 64, 63, 53, 73, 59, 53, 76, 49, 69, 69, 83, 73, 65, 57, 98, 61, 76, 84, 76, 76, 52, 60, 66, 68, 64, 71, 75, 78, 76, 45, 61, 32, 59, 58, 66, 65, 77, 53, 78, 68, 64, 55, 73, 65, 56, 68, 49, 68, 74, 44, 70, 70, 49, 65, 80, 88, 83, 48, 51, 71, 56, 71, 66, 47, 61, 51, 67, 47, 62, 69, 54, 61, 52, 53, 58, 61, 46, 57, 61, 63, 88, 64, 48, 44, 53, 52, 82, 48, 70, 61, 71, 64, 72, 64, 58, 59, 70, 65, 70, 48, 65, 91, 64, 63, 61, 93, 53, 76, 67, 50, 64, 99, 74, 72, 76, 65, 66, 62, 102, 59, 41, 57, 56, 82, 68, 80, 50, 57, 60, 78, 47, 56, 60, 63, 56, 67, 54, 81, 70, 46, 63, 75, 76, 64, 57, 56, 60, 60, 59, 42, 90, 87, 59, 50, 49, 53, 42, 59, 54, 58, 87, 81, 54, 58, 54, 56, 75, 72, 68, 68, 49, 57, 72, 100, 69, 77, 63, 93, 55, 59, 64, 63, 81, 72, 72, 78, 66, 58, 67, 102, 74, 55, 61, 58, 94, 93, 79, 37, 78, 61, 53, 73, 108, 67, 52, 54, 62, 60, 55, 72, 51, 65, 77, 77, 71, 48, 44, 42, 85, 71, 72, 63, 45, 76, 63, 54, 70, 61, 60, 58, 65, 54, 52, 69, 81, 60, 50, 65, 45, 88, 69, 54, 64, 84, 61, 82, 68, 74, 58, 58, 119, 58, 94, 50, 59, 60, 57, 89, 67, 76, 60, 74, 64, 49, 49, 54, 82, 69, 98, 70, 76, 86, 75, 59, 93, 73, 59, 79, 60, 50, 83, 59, 72, 62, 51, 58, 75, 83, 48, 61, 37, 58, 85, 54, 53, 72, 70, 62, 53, 112, 57, 67, 68, 87, 55, 53, 103, 42, 52, 60, 61, 52, 51, 54, 98, 70, 65, 64, 77, 52, 61, 64, 77, 71, 74, 67, 83, 53, 92, 73, 70, 54, 72, 57, 56, 79, 56, 47, 68, 65, 52, 96, 66, 67, 57, 45, 66, 65, 71, 71, 91, 64, 80, 66, 40, 70, 41, 58, 79, 71, 53, 58, 71, 75, 57, 48, 125, 65, 64, 63, 81, 63, 65, 55, 82, 55, 63, 67, 62, 47, 74, 57, 59, 70, 87, 95, 75, 56, 42, 69, 161, 68, 68, 71, 60, 58, 98, 59, 63, 61, 45, 147, 79, 70, 36, 94, 80, 50, 60, 55, 62, 63, 50, 69, 65, 57, 65, 89, 82, 47, 78, 61, 57, 63, 82, 75, 61, 53, 58, 76, 69, 71, 115, 55, 83, 80, 75, 63, 61, 56, 51, 54, 61, 67, 72, 69, 82, 49, 58, 113, 64, 50, 73, 60, 60, 58, 60, 55, 41, 83, 60, 93, 84, 55, 69, 69, 54, 61, 69, 48, 37, 86, 63, 84, 53, 58, 56, 64, 49, 76, 81, 52, 46, 49, 82, 63, 84, 61, 65, 52, 108, 72, 57, 55, 55, 61, 41, 62, 65, 67, 58, 75, 67, 64, 53, 57, 69, 76, 57, 64, 50, 50, 75, 60, 35, 82, 59, 54, 55, 80, 50, 51, 60, 74, 80, 63, 67, 59, 52, 93, 50, 84, 54, 102, 77, 97, 56, 59, 70, 59, 59, 69, 57, 86, 64, 69, 86, 97, 69, 104, 53, 82, 88, 68, 58, 56, 58, 64, 79, 53, 55, 87, 68, 54, 58, 67, 65, 71, 54, 47, 91, 74, 70, 74, 59, 58, 61, 59, 44, 77, 52, 43, 68, 52, 88, 88, 50, 66, 90, 49, 78, 88, 69, 71, 69, 61, 89, 74, 71, 81, 68, 62, 74, 61, 77, 27, 54, 58, 46, 81, 48, 40, 73, 62, 59, 57, 95, 52, 63, 54, 55, 69, 58, 77, 58, 64, 103, 47, 60, 86, 43, 46, 74, 77, 100, 56, 64, 66, 71, 52, 59, 67, 81, 59, 62, 56, 66, 69, 82, 56, 72, 60, 79, 81, 77, 91, 74, 47, 24, 54, 85, 51, 63, 74, 68, 86, 56, 47, 48, 49, 61, 57, 48, 53, 56, 72, 90, 37, 68, 94, 57, 64, 68, 76, 75, 55, 63, 76, 62, 57, 67, 59, 65, 44, 70, 70, 53, 80, 78, 88, 64, 62, 80, 53, 57, 72, 55, 56, 84, 71, 81, 57, 67, 67, 51, 79, 40, 65, 69, 44, 116, 56, 76, 73, 64, 56, 75, 83, 84, 56, 73, 54, 49, 88, 65, 59, 85, 80, 58, 91, 74, 54, 41, 63, 56, 60, 131, 69, 72, 69, 79, 55, 61, 47, 65, 67, 62, 69, 67, 77, 50, 68, 79, 69, 64, 82, 61, 76, 52, 69, 83, 82, 65, 64, 55, 50, 88, 61, 103, 88, 93, 42, 79, 55, 56, 54, 66, 60, 65, 49, 77, 50, 77, 65, 70, 62, 61, 149, 80, 71, 79, 57, 47, 61, 73, 66, 66, 63, 64, 45, 99, 89, 50, 121, 68, 64, 73, 48, 85, 76, 71, 79, 54, 59, 64, 84, 50, 50, 60, 75, 51, 50, 59, 60, 41, 52, 70, 108, 75, 62, 57, 72, 60, 47, 52, 50, 61, 65, 54, 93, 58, 73, 56, 47, 67, 93, 63, 66, 69, 70, 67, 67, 60, 57, 67, 48, 63, 51, 57, 51, 63, 67, 52, 62, 62, 95, 50, 74, 67, 47, 48, 55, 115, 81, 102, 50, 61, 78, 49, 71, 52, 66, 91, 57, 67, 61, 63, 76, 44, 50, 58, 87, 98, 47, 61, 67, 75, 68, 83, 36, 58, 53, 80, 72, 41, 111, 34, 68, 49, 82, 82, 78, 67, 56, 45, 47, 36, 66, 84, 85, 76, 70, 67, 42, 64, 97, 71, 67, 131, 66, 94, 52, 52, 55, 84, 64, 55, 68, 86, 39, 42, 47, 74, 59, 70, 63, 67, 71, 61, 80, 54, 47, 50, 58, 69, 44, 65, 73, 58, 55, 58, 55, 66, 69, 62, 140, 50, 83, 56, 45, 48, 49, 59, 56, 52, 81, 55, 40, 53, 78, 62, 54, 108, 59, 75, 70, 78, 52, 68, 65, 50, 77, 51, 76, 78, 72, 54, 53, 62, 69, 45, 63, 58, 70, 90, 73, 65, 40, 34, 54, 49, 86, 78, 61, 53, 53, 61, 64, 68, 78, 82, 47, 61, 47, 75, 62, 83, 72, 62, 44, 76, 73, 58, 97, 70, 72, 59, 74, 71, 78, 66, 60, 56, 65, 53, 84, 72, 101, 90, 35, 84, 63, 78, 80, 74, 58, 71, 69, 81, 61, 52, 67, 66, 83, 61, 66, 64, 73, 83, 104, 90, 64, 56, 39, 55, 83, 52, 76, 61, 61, 81, 101, 62, 58, 70, 39, 25, 78, 70, 89, 39, 67, 69, 46, 76, 65, 53, 55, 156, 75, 49, 67, 87, 67, 84, 40, 97, 65, 51, 56, 68, 73, 52, 40, 90, 81, 60, 71, 92, 49, 54, 72, 46, 60, 57, 68, 59, 101, 84, 78, 130, 47, 68, 70, 76, 61, 62, 78, 59, 68, 54, 57, 61, 76, 56, 48, 74, 55, 99, 114, 55, 68, 53, 49, 78, 91, 61, 58, 72, 57, 79, 77, 97, 72, 79, 56, 77, 59, 55, 74, 59, 74, 62, 66, 96, 83, 49, 67, 49, 77, 70, 66, 72, 60, 54, 67, 77, 105, 87, 81, 55, 65, 77, 69, 80, 73, 53, 63, 90, 77, 72, 68, 80, 83, 69, 57, 76, 41, 113, 49, 66, 61, 81, 52, 66, 71, 79, 64, 54, 87, 71, 64, 62, 58, 51, 75, 56, 151, 65, 78, 73, 60, 55, 66, 47, 71, 73, 73, 65, 60, 67, 77, 50, 71, 81, 56, 72, 105, 63, 85, 66, 51, 65, 54, 88, 55, 88, 58, 72, 67, 50, 74, 49, 45, 69, 64, 85, 93, 65, 51, 47, 71, 58, 69, 76, 54, 72, 64, 54, 54, 73, 52, 79, 92, 61, 49, 51, 57, 83, 71, 79, 60, 100, 118, 64, 53, 58, 62, 49, 89, 91, 60, 44, 54, 48, 75, 61, 54, 54, 57, 82, 59, 67, 57, 84, 49, 58, 55, 44, 59, 77, 63, 90, 64, 73, 83, 61, 81, 103, 58, 52, 42, 56, 86, 43, 53, 63, 53, 53, 62, 94, 68, 67, 83, 53, 53, 62, 77, 67, 78, 68, 75, 56, 68, 64, 62, 66, 71, 62, 46, 62, 57, 56, 54, 78, 73, 42, 53, 64, 53, 70, 71, 74, 60, 77, 45, 69, 74, 53, 57, 62, 95, 85, 69, 51, 55, 79, 75, 62, 93, 61, 60, 51, 71, 70, 51, 84, 84, 62, 66, 68, 40, 68, 73, 77, 73, 83, 73, 67, 61, 58, 52, 66, 74, 103, 81, 54, 69, 56, 76, 53, 57, 91, 66, 53, 85, 49, 50, 98, 63, 98, 50, 65, 40, 54, 100, 68, 69, 65, 86, 53, 56, 86, 56, 57, 56, 35, 60, 96, 52, 78, 67, 37, 61, 54, 46, 66, 47, 60, 67, 67, 65, 60, 67, 70, 65, 71, 94, 78, 61, 86, 76, 64, 58, 67, 77, 92, 61, 76, 76, 50, 49, 79, 47, 58, 57, 49, 47, 52, 66, 85, 75, 87, 76, 73, 58, 61, 46, 97, 73, 99, 57, 75, 58, 69, 59, 70, 85, 56, 53, 71, 65, 67, 61, 68, 62, 68, 94, 73, 56, 47, 61, 68, 62, 75, 60, 56, 83, 46, 51, 65, 66, 62, 61, 80, 59, 82, 55, 67, 60, 66, 69, 51, 85, 55, 54, 67, 48, 58, 105, 89, 73, 60, 65, 80, 50, 62, 47, 61, 64, 53, 80, 64, 59, 55, 77, 72, 75, 76, 67, 61, 47, 59, 69, 73, 79, 58, 62, 67, 62, 55, 70, 87, 58, 53, 43, 77, 54, 61, 53, 72, 59, 51, 58, 59, 81, 93, 74, 86, 58, 85, 49, 66, 68, 130, 75, 58, 78, 68, 47, 68, 52, 46, 50, 56, 112, 67, 66, 51, 66, 52, 58, 62, 59, 66, 70, 47, 70, 85, 65, 87, 71, 65, 73, 72, 54, 47, 76, 76, 62, 38, 115, 65, 55, 60, 66, 69, 69, 96, 77, 64, 52, 78, 35, 46, 50, 71, 58, 87, 70, 64, 54, 52, 65, 66, 74, 59, 68, 68, 90, 67, 79, 56, 51, 69, 46, 88, 49, 73, 71, 61, 64, 51, 59, 46, 57, 63, 57, 72, 47, 65, 52, 57, 51, 92, 58, 61, 106, 77, 48, 67, 63, 53, 67, 53, 63, 67, 67, 60, 65, 62, 68, 45, 56, 57, 81, 50, 90, 55, 68, 51, 60, 68, 64, 69, 67, 61, 54, 90, 71, 62, 57, 64, 61, 60, 48, 78, 63, 58, 63, 54, 74, 52, 54, 54, 95, 64, 76, 60, 73, 63, 71, 62, 56, 73, 55, 81, 59, 57, 97, 56, 102, 76, 38, 58, 57, 59, 59, 71, 52, 46, 66, 94, 47, 66, 32, 43, 72, 60, 55, 71, 57, 64, 65, 86, 81, 107, 83, 67, 65, 63, 57, 70, 74, 42, 61, 72, 74, 64, 72, 58, 78, 56, 60, 70, 66, 65, 49, 74, 53, 52, 37, 56, 63, 50, 75, 49, 78, 54, 75, 63, 73, 60, 55, 59, 74, 64, 59, 78, 59, 78, 55, 74, 72, 72, 61, 74, 78, 67, 56, 83, 65, 45, 63, 64, 75, 59, 80, 72, 50, 69, 55, 54, 71, 77, 45, 79, 62, 55, 63, 73, 57, 71, 58, 111, 94, 70, 62, 70, 61, 70, 63, 55, 55, 64, 45, 60, 64, 70, 85, 80, 66, 57, 97, 62, 72, 74, 68, 53, 78, 84, 63, 58, 69, 62, 60, 46, 78, 76, 57, 62, 61, 50, 46, 66, 63, 59, 101, 64, 71, 59, 78, 55, 73, 62, 70, 58, 57, 54, 58, 51, 71, 40, 58, 70, 94, 60, 50, 50, 80, 57, 55, 62, 64, 67, 65, 65, 58, 53, 90, 53, 53, 69, 81, 82, 69, 57, 79, 57, 70, 74, 48, 72, 63, 56, 72, 59, 79, 64, 79, 55, 50, 60, 58, 74, 69, 51, 77, 71, 53, 67, 52, 55, 49, 76, 67, 49, 68, 56, 55, 87, 53, 61, 72, 66, 81, 49, 83, 77, 64, 59, 64, 93, 49, 73, 58, 47, 86, 64, 65, 54, 51, 62, 52, 106, 96, 57, 54, 71, 58, 57, 52, 71, 61, 58, 61, 69, 52, 69, 57, 68, 72, 72, 56, 64, 59, 62, 76, 47, 70, 62, 66, 51, 90, 61, 66, 73, 62, 93, 58, 60, 54, 52, 58, 62, 56, 61, 70, 92, 52, 102, 56, 71, 51, 54, 55, 58, 65, 71, 56, 72, 80, 66, 69, 60, 63, 52, 58, 58, 62, 64, 66, 92, 78, 104, 53, 74, 51, 71, 50, 67, 58, 103, 60, 62, 50, 47, 71, 64, 65, 108, 60, 54, 60, 79, 80, 75, 72, 48, 64, 77, 80, 62, 63, 71, 110, 48, 60, 67, 66, 98, 69, 59, 95, 61, 40, 48, 69, 70, 52, 56, 46, 57, 66, 73, 97, 48, 64, 68, 82, 53, 67, 62, 44, 87, 77, 78, 64, 127, 70, 65, 94, 64, 84, 55, 84, 67, 74, 71, 58, 64, 68, 58, 91, 50, 88, 56, 48, 60, 64, 78, 65, 79, 73, 66, 65, 62, 81, 68, 72, 60, 81, 55, 68, 56, 57, 55, 62, 70, 54, 69, 58, 74, 46, 68, 58, 64, 78, 47, 73, 55, 54, 67, 87, 59, 32, 76, 60, 52, 87, 75, 69, 70, 65, 93, 72, 55, 63, 68, 62, 63, 84, 59, 80, 54, 52, 42, 79, 56, 50, 65, 43, 73, 58, 53, 68, 59, 57, 57, 67, 50, 80, 52, 163, 69, 88, 76, 64, 59, 61, 74, 51, 70, 75, 65, 56, 83, 59, 56, 64, 63, 67, 59, 50, 53, 53, 59, 57, 62, 74, 71, 54, 65, 74, 55, 76, 62, 65, 53, 124, 65, 71, 65, 117, 59, 89, 72, 50, 60, 54, 63, 64, 75, 55, 73, 45, 44, 60, 68, 65, 64, 57, 63, 56, 56, 51, 81, 84, 51, 69, 38, 125, 80, 64, 56, 53, 54, 58, 61, 55, 70, 74, 64, 59, 73, 94, 59, 55, 98, 60, 70, 56, 65, 54, 86, 67, 70, 82, 63, 73, 93, 70, 60, 73, 63, 59, 66, 88, 62, 75, 68, 56, 68, 49, 71, 77, 67, 56, 56, 74, 70, 57, 63, 83, 60, 112, 62, 65, 58, 46, 69, 76, 72, 78, 53, 104, 87, 68, 67, 57, 61, 61, 76, 47, 87, 46, 73, 47, 60, 63, 67, 91, 58, 67, 103, 62, 57, 62, 64, 52, 58, 71, 66, 99, 65, 72, 62, 70, 55, 51, 62, 72, 51, 40, 52, 59, 65, 63, 85, 73, 64, 78, 58, 51, 66, 47, 59, 80, 72, 58, 46, 105, 72, 58, 59, 72, 71, 69, 65, 74, 72, 59, 48, 55, 66, 62, 58, 56, 71, 61, 61, 46, 94, 62, 74, 65, 78, 74, 68, 66, 59, 75, 111, 84, 52, 44, 93, 64, 85, 66, 71, 60, 61, 59, 51, 54, 68, 98, 81, 56, 69, 81, 66, 74, 82, 61, 57, 68, 53, 68, 94, 72, 64, 103, 94, 56, 53, 61, 67, 72, 50, 78, 94, 54, 68, 61, 62, 49, 72, 71, 71, 67, 60, 61, 63, 50, 61, 61, 76, 67, 55, 77, 59, 65, 48, 51, 50, 68, 60, 63, 74, 47, 56, 57, 80, 61, 33, 52, 68, 63, 47, 49, 65, 74, 63, 78, 67, 58, 59, 60, 63, 67, 94, 85, 55, 56, 59, 56, 46, 41, 61, 68, 66, 58, 47, 68, 55, 89, 48, 66, 54, 82, 67, 67, 95, 67, 57, 116, 65, 96, 41, 51, 71, 81, 65, 70, 101, 59, 68, 66, 111, 76, 62, 68, 70, 76, 73, 69, 77, 91, 59, 63, 46, 108, 76, 54, 67, 65, 72, 78, 65, 60, 43, 42, 65, 63, 58, 70, 57, 50, 67, 49, 51, 62, 76, 93, 70, 80, 63, 78, 48, 56, 73, 71, 61, 57, 64, 56, 50, 59, 66, 45, 37, 49, 80, 81, 61, 59, 69, 84, 52, 58, 64, 65, 62, 77, 66, 61, 51, 81, 66, 81, 59, 62, 50, 91, 76, 92, 34, 113, 92, 66, 56, 70, 59, 59, 50, 27, 61, 76, 98, 74, 72, 68, 74, 62, 59, 57, 62, 47, 80, 42, 49, 47, 67, 50, 99, 80, 67, 66, 72, 68, 81, 57, 67, 53, 52, 84, 91, 68, 95, 95, 58, 96, 72, 75, 97, 61, 61, 79, 46, 81, 86, 58, 62, 71, 75, 56, 59, 87, 56, 49, 57, 74, 63, 51, 61, 44, 77, 67, 83, 64, 70, 57, 60, 66, 60, 47, 68, 79, 108, 76, 96, 50, 43, 78, 57, 48, 89, 78, 41, 54, 69, 59, 82, 54, 62, 68, 61, 63, 35, 58, 54, 55, 67, 69, 65, 89, 73, 53, 116, 58, 86, 59, 89, 67, 62, 55, 84, 67, 74, 60, 86, 54, 83, 59, 90, 90, 74, 58, 59, 45, 90, 70, 46, 53, 85, 41, 58, 47, 93, 68, 84, 73, 62, 72, 62, 85, 84, 76, 73, 76, 46, 89, 72, 47, 62, 59, 80, 85, 65, 59, 51, 65, 52, 54, 55, 57, 80, 51, 61, 81, 59, 59, 68, 77, 48, 77, 95, 53, 91, 72, 62, 28, 60, 58, 38, 51, 41, 67, 63, 97, 59, 62, 78, 40, 78, 91, 48, 61, 53, 71, 73, 33, 82, 78, 57, 67, 64, 81, 38, 59, 80, 52, 59, 70, 77, 70, 61, 55, 96, 64, 77, 63, 46, 57, 44, 70, 24, 77, 65, 62, 61, 87, 82, 60, 44, 67, 47, 75, 70, 73, 64, 50, 82, 76, 43, 58, 88, 60, 68, 55, 57, 53, 46, 70, 53, 65, 52, 86, 82, 50, 60, 83, 43, 63, 70, 70, 55, 43, 69, 76, 56, 80, 65, 60, 62, 63, 85, 61, 59, 56, 100, 61, 60, 62, 62, 85, 69, 83, 57, 70, 105, 72, 69, 96, 87, 71, 101, 87, 51, 76, 22, 122, 70, 88, 124, 81, 72, 55, 56, 93, 70, 65, 61, 85, 68, 49, 48, 57, 98, 60, 55, 48, 80, 66, 45, 68, 51, 60, 55, 56, 55, 55, 92, 92, 49, 59, 64, 38, 66, 54, 71, 70, 68, 76, 74, 80, 66, 75, 77, 65, 73, 63, 48, 70, 64, 64, 59, 53, 59, 76, 47, 54, 59, 57, 51, 50, 58, 73, 63, 64, 72, 57, 87, 67, 68, 72, 59, 74, 53, 72, 65, 78, 47, 74, 105, 57, 70, 116, 52, 69, 56, 85, 69, 57, 64, 58, 48, 44, 40, 107, 77, 35, 61, 39, 59, 61, 79, 51, 51, 126, 61, 70, 85, 72, 67, 55, 58, 83, 51, 101, 54, 63, 79, 54, 69, 55, 84, 100, 62, 87, 57, 57, 62, 66, 69, 73, 76, 72, 47, 76, 69, 49, 83, 77, 73, 63, 66, 68, 64, 92, 70, 61, 76, 65, 84, 55, 62, 56, 63, 47, 70, 96, 66, 73, 76, 59, 50, 66, 72, 48, 72, 54, 85, 82, 37, 64, 58, 84, 63, 62, 83, 58, 71, 60, 63, 65, 68, 76, 51, 71, 94, 74, 56, 56, 53, 54, 52, 49, 83, 79, 48, 73, 69, 54, 93, 52, 64, 58, 66, 91, 66, 73, 71, 66, 66, 73, 58, 77, 75, 49, 42, 73, 92, 37, 64, 57, 101, 37, 63, 122, 55, 56, 58, 73, 62, 82, 54, 86, 76, 54, 68, 67, 93, 61, 83, 75, 50, 62, 118, 35, 52, 67, 48, 62, 41, 39, 136, 73, 35, 63, 80, 55, 64, 70, 66, 56, 68, 82, 73, 61, 70, 104, 54, 42, 73, 39, 74, 62, 84, 62, 34, 65, 91, 115, 72, 108, 62, 68, 100, 84, 54, 53, 54, 77, 89, 57, 66, 69, 53, 45, 69, 79, 53, 49, 95, 77, 96, 111, 78, 66, 66, 49, 71, 32, 47, 71, 58, 51, 53, 96, 75, 72, 84, 63, 90, 68, 54, 68, 69, 84, 63, 76, 68, 80, 153, 71, 92, 75, 54, 66, 63, 65, 79, 70, 60, 49, 51, 64, 58, 45, 73, 36, 61, 47, 55, 54, 112, 50, 77, 64, 44, 57, 51, 55, 48, 96, 90, 85, 91, 99, 77, 49, 44, 77, 52, 65, 44, 79, 76, 60, 68, 59, 52, 74, 60, 57, 71, 51, 70, 66, 76, 93, 103, 75, 75, 41, 63, 74, 78, 70, 65, 59, 52, 53, 69, 52, 69, 92, 76, 47, 51, 50, 70, 36, 61, 82, 53, 49, 91, 61, 62, 64, 52, 79, 51, 72, 85, 65, 48, 64, 51, 63, 69, 55, 95, 59, 79, 51, 52, 73, 72, 82, 72, 50, 60, 58, 60, 71, 63, 32, 54, 79, 39, 58, 53, 94, 70, 77, 109, 62, 60, 81, 72, 64, 45, 69, 77, 78, 80, 67, 54, 61, 40, 63, 52, 50, 61, 49, 110, 84, 47, 81, 77, 59, 48, 50, 46, 53, 49, 57, 63, 87, 57, 65, 79, 77, 65, 74, 29, 61, 78, 64, 77, 77, 49, 51, 37, 56, 95, 83, 61, 73, 64, 63, 75, 53, 77, 67, 55, 49, 79, 46, 45, 81, 50, 47, 81, 54, 54, 88, 72, 75, 77, 59, 92, 58, 64, 61, 61, 59, 61, 62, 61, 49, 54, 73, 72, 51, 58, 59, 59, 96, 82, 43, 50, 91, 51, 60, 61, 42, 60, 62, 56, 60, 67, 66, 95, 33, 43, 42, 50, 54, 76, 81, 62, 75, 77, 61, 89, 33, 64, 67, 64, 83, 49, 52, 81, 72, 84, 81, 60, 47, 50, 85, 62, 65, 50, 53, 66, 79, 39, 65, 58, 72, 63, 60, 78, 144, 58, 58, 84, 72, 76, 90, 61, 63, 66, 47, 68, 86, 52, 88, 62, 73, 80, 72, 77, 64, 50, 45, 59, 43, 51, 86, 47, 74, 46, 86, 63, 54, 60, 64, 70, 72, 74, 58, 126, 59, 67, 86, 45, 58, 56, 71, 40, 85, 94, 72, 72, 42, 61, 56, 66, 38, 65, 69, 47, 63, 63, 64, 89, 56, 98, 59, 65, 57, 76, 49, 84, 68, 86, 67, 49, 51, 102, 61, 61, 63, 50, 60, 58, 68, 60, 58, 59, 64, 44, 88, 72, 59, 42, 68, 94, 76, 68, 89, 62, 72, 57, 60, 41, 53, 59, 74, 77, 98, 68, 71, 71, 75, 65, 49, 71, 66, 85, 61, 73, 38, 55, 80, 68, 67, 55, 47, 56, 60, 58, 55, 61, 50, 82, 67, 74, 84, 65, 42, 70, 51, 50, 77, 83, 73, 56, 45, 59, 57, 57, 57, 107, 66, 64, 78, 81, 38, 62, 46, 55, 99, 87, 84, 58, 56, 81, 46, 76, 91, 49, 61, 52, 70, 77, 66, 86, 55, 69, 47, 55, 66, 66, 43, 66, 56, 56, 51, 57, 69, 55, 108, 63, 68, 75, 62, 47, 68, 57, 64, 74, 113, 71, 74, 63, 60, 65, 80, 57, 63, 65, 69, 70, 58, 77, 48, 52, 56, 54, 48, 71, 78, 82, 69, 76, 60, 86, 54, 88, 63, 82, 59, 81, 59, 62, 58, 70, 53, 98, 61, 48, 85, 76, 52, 74, 75, 56, 63, 85, 68, 58, 70, 49, 71, 66, 51, 83, 61, 56, 43, 70, 63, 69, 39, 75, 43, 62, 80, 76, 54, 88, 58, 68, 41, 57, 64, 75, 59, 59, 94, 50, 58, 92, 84, 58, 65, 94, 53, 82, 48, 51, 38, 46, 83, 59, 68, 69, 76, 82, 36, 81, 53, 64, 65, 66, 61, 63, 94, 51, 88, 73, 68, 63, 74, 69, 72, 55, 59, 56, 42, 74, 68, 61, 136, 73, 59, 64, 49, 85, 67, 86, 58, 64, 80, 97, 43, 61, 93, 67, 57, 48, 80, 69, 53, 81, 58, 71, 76, 78, 54, 73, 84, 56, 64, 85, 53, 61, 67, 61, 81, 52, 65, 56, 48, 49, 77, 67, 75, 72, 39, 62, 73, 106, 63, 55, 61, 60, 56, 50, 52, 72, 69, 49, 57, 73, 84, 54, 46, 57, 82, 68, 54, 58, 70, 73, 70, 69, 48, 100, 76, 65, 48, 96, 64, 63, 57, 51, 48, 66, 77, 119, 71, 42, 70, 59, 84, 58, 69, 48, 45, 58, 72, 115, 82, 70, 70, 66, 58, 53, 67, 82, 80, 57, 38, 62, 46, 48, 81, 78, 66, 73, 59, 94, 58, 48, 76, 59, 34, 57, 53, 52, 61, 68, 62, 63, 57, 78, 44, 53, 71, 50, 87, 61, 61, 98, 88, 75, 54, 46, 48, 63, 87, 72, 67, 70, 83, 87, 65, 65, 54, 43, 51, 40, 81, 60, 51, 97, 97, 71, 49, 44, 64, 115, 46, 52, 62, 51, 58, 73, 58, 76, 60, 58, 59, 81, 78, 60, 80, 48, 54, 59, 87, 76, 87, 87, 60, 52, 60, 79, 64, 74, 68, 71, 70, 62, 63, 66, 49, 76, 67, 81, 56, 55, 63, 62, 86, 83, 67, 68, 67, 60, 67, 70, 42, 65, 83, 64, 65, 57, 69, 59, 78, 61, 40, 70, 45, 66, 58, 42, 61, 71, 64, 72, 73, 72, 70, 54, 64, 65, 75, 55, 58, 79, 78, 68, 57, 94, 67, 62, 64, 82, 50, 76, 58, 93, 57, 60, 57, 80, 70, 49, 42, 64, 73, 114, 67, 74, 76, 57, 69, 69, 91, 56, 68, 54, 56, 77, 36, 73, 79, 89, 58, 51, 67, 60, 62, 90, 77, 70, 62, 66, 59, 64, 61, 69, 68, 66, 83, 50, 63, 37, 75, 39, 51, 72, 77, 70, 73, 87, 59, 61, 68, 73, 120, 38, 62, 74, 56, 69, 44, 72, 62, 48, 54, 56, 70, 71, 55, 64, 59, 81, 51, 48, 70, 63, 54, 110, 130, 64, 59, 60, 63, 43, 62, 74, 51, 48, 53, 76, 73, 59, 82, 75, 66, 58, 50, 59, 66, 36, 71, 110, 69, 82, 42, 70, 85, 95, 68, 62, 53, 53, 61, 72, 61, 64, 54, 40, 39, 62, 67, 75, 41, 105, 67, 57, 55, 74, 90, 61, 59, 82, 76, 68, 111, 61, 68, 75, 81, 73, 44, 65, 40, 78, 63, 64, 62, 69, 46, 52, 64, 53, 69, 82, 64, 68, 80, 74, 59, 48, 83, 56, 59, 88, 84, 52, 38, 68, 65, 57, 57, 63, 56, 66, 61, 66, 59, 49, 76, 70, 47, 83, 57, 72, 84, 49, 85, 112, 64, 56, 92, 51, 68, 77, 73, 66, 74, 51, 75, 60, 62, 50, 93, 57, 45, 94, 61, 65, 74, 79, 74, 70, 71, 82, 104, 65, 76, 72, 46, 50, 57, 62, 48, 59, 62, 64, 65, 78, 73, 60, 60, 68, 48, 58, 55, 79, 82, 51, 67, 57, 51, 55, 91, 74, 53, 62, 48, 40, 64, 45, 62, 55, 69, 50, 66, 54, 69, 77, 91, 54, 83, 66, 57, 80, 75, 57, 71, 63, 59, 54, 64, 51, 47, 84, 45, 51, 92, 62, 55, 73, 59, 57, 59, 70, 74, 58, 73, 59, 73, 113, 68, 72, 60, 55, 55, 89, 56, 88, 60, 64, 80, 64, 61, 68, 90, 49, 46, 49, 54, 75, 57, 87, 106, 86, 56, 69, 55, 59, 54, 82, 66, 53, 80, 58, 102, 52, 76, 109, 43, 67, 58, 78, 53, 63, 59, 65, 63, 81, 59, 62, 69, 72, 74, 72, 67, 85, 58, 64, 71, 56, 77, 57, 50, 58, 60, 55, 58, 110, 57, 71, 44, 59, 78, 79, 37, 56, 64, 72, 57, 65, 64, 95, 64, 61, 52, 41, 56, 34, 57, 64, 68, 38, 54, 78, 80, 52, 97, 93, 91, 59, 76, 93, 70, 90, 84, 62, 69, 66, 54, 80, 36, 60, 54, 102, 75, 47, 69, 52, 49, 61, 65, 52, 36, 61, 65, 58, 63, 54, 78, 66, 81, 47, 72, 68, 94, 60, 49, 46, 66, 80, 49, 67, 64, 60, 63, 65, 60, 75, 60, 70, 73, 50, 56, 71, 71, 58, 72, 51, 70, 67, 66, 87, 65, 51, 65, 68, 56, 62, 58, 64, 71, 91, 67, 72, 80, 65, 41, 96, 66, 51, 79, 58, 75, 41, 94, 59, 46, 50, 66, 41, 55, 70, 64, 67, 85, 62, 66, 81, 53, 65, 56, 62, 76, 79, 69, 81, 118, 70, 67, 44, 48, 60, 61, 88, 50, 57, 71, 84, 58, 64, 63, 68, 62, 56, 94, 82, 65, 67, 63, 61, 94, 65, 66, 78, 71, 57, 85, 61, 33, 66, 80, 61, 60, 47, 64, 59, 59, 59, 56, 40, 51, 57, 46, 57, 57, 53, 85, 61, 66, 62, 67, 74, 47, 81, 60, 79, 70, 58, 62, 48, 56, 68, 70, 68, 67, 64, 68, 59, 62, 68, 73, 75, 39, 75, 63, 90, 64, 72, 75, 46, 51, 59, 70, 65, 72, 60, 75, 69, 61, 73, 61, 64, 68, 70, 59, 75, 46, 80, 82, 68, 67, 62, 89, 77, 47, 56, 74, 70, 55, 57, 67, 51, 69, 56, 48, 54, 111, 38, 56, 69, 72, 153, 74, 79, 76, 63, 63, 55, 73, 58, 52, 63, 64, 50, 45, 77, 58, 70, 48, 65, 59, 57, 54, 49, 42, 73, 69, 67, 61, 76, 61, 146, 47, 76, 108, 59, 69, 43, 74, 55, 89, 66, 70, 85, 52, 63, 63, 58, 52, 63, 65, 50, 46, 62, 60, 58, 59, 64, 73, 76, 66, 59, 73, 53, 69, 71, 75, 73, 53, 64, 65, 76, 86, 53, 77, 77, 63, 43, 69, 96, 107, 75, 107, 69, 74, 59, 94, 57, 66, 90, 52, 58, 94, 51, 76, 57, 52, 58, 54, 79, 55, 82, 40, 72, 40, 68, 62, 67, 60, 88, 62, 67, 67, 56, 71, 73, 60, 79, 27, 71, 58, 72, 69, 55, 52, 53, 85, 61, 111, 53, 57, 62, 50, 57, 54, 57, 75, 54, 64, 88, 58, 88, 53, 62, 57, 54, 64, 109, 53, 59, 120, 77, 57, 65, 59, 62, 159, 80, 51, 63, 62, 47, 55, 63, 75, 72, 78, 76, 50, 76, 61, 72, 65, 57, 75, 75, 63, 72, 69, 78, 59, 58, 49, 79, 56, 69, 86, 52, 63, 58, 89, 69, 86, 65, 77, 57, 66, 53, 43, 57, 48, 77, 70, 79, 139, 49, 70, 85, 59, 76, 60, 73, 59, 68, 104, 70, 68, 79, 47, 46, 66, 46, 54, 85, 74, 64, 72, 56, 82, 64, 59, 55, 73, 54, 61, 60, 51, 56, 57, 89, 60, 48, 60, 54, 69, 50, 71, 49, 91, 58, 68, 51, 54, 67, 58, 70, 75, 62, 66, 68, 77, 67, 80, 45, 64, 57, 78, 44, 44, 39, 57, 64, 58, 99, 89, 70, 56, 38, 73, 68, 65, 64, 65, 68, 70, 74, 64, 64, 136, 78, 117, 63, 49, 71, 67, 60, 71, 67, 66, 64, 103, 68, 56, 66, 68, 95, 64, 60, 57, 58, 73, 62, 65, 66, 65, 60, 76, 65, 67, 62, 77, 61, 78, 33, 64, 89, 57, 61, 56, 55, 75, 49, 82, 55, 70, 61, 55, 57, 62, 66, 81, 62, 79, 49, 60, 65, 56, 80, 63, 62, 61, 76, 54, 55, 52, 115, 62, 63, 63, 53, 57, 66, 50, 56, 73, 61, 55, 72, 90, 54, 65, 67, 56, 64, 72, 69, 58, 61, 74, 57, 65, 78, 72, 62, 45, 90, 59, 58, 55, 73, 57, 57, 93, 57, 67, 42, 130, 50, 77, 75, 61, 89, 75, 124, 67, 54, 85, 75, 60, 51, 60, 69, 70, 67, 43, 58, 68, 65, 64, 62, 65, 76, 55, 51, 62, 48, 57, 61, 48, 85, 61, 70, 92, 72, 66, 64, 79, 60, 64, 44, 63, 50, 64, 63, 73, 60, 54, 80, 76, 59, 50, 67, 79, 28, 61, 63, 69, 54, 51, 65, 69, 70, 48, 64, 70, 46, 62, 68, 43, 71, 45, 83, 82, 67, 69, 66, 52, 56, 58, 82, 52, 41, 69, 81, 51, 56, 60, 63, 55, 75, 85, 55, 72, 118, 45, 60, 80, 37, 45, 61, 76, 58, 65, 69, 41, 59, 52, 46, 62, 58, 76, 73, 63, 62, 65, 61, 70, 69, 47, 87, 53, 63, 83, 65, 80, 52, 72, 86, 82, 77, 62, 43, 51, 48, 90, 55, 76, 82, 76, 63, 56, 93, 78, 64, 72, 43, 55, 69, 56, 50, 103, 60, 107, 58, 48, 59, 57, 61, 62, 62, 71, 36, 63, 51, 56, 55, 75, 95, 67, 72, 77, 55, 54, 84, 78, 63, 47, 64, 74, 54, 85, 64, 48, 72, 93, 68, 65, 63, 73, 72, 60, 68, 47, 82, 87, 72, 79, 83, 61, 74, 60, 52, 67, 78, 74, 67, 66, 58, 70, 49, 86, 83, 56, 56, 68, 95, 49, 67, 81, 87, 72, 68, 52, 69, 53, 54, 48, 82, 56, 66, 109, 93, 52, 43, 69, 61, 47, 40, 66, 55, 51, 88, 58, 78, 63, 66, 71, 46, 62, 61, 53, 54, 80, 42, 63, 83, 81, 58, 70, 83, 75, 69, 70, 63, 64, 56, 88, 72, 65, 65, 48, 89, 139, 59, 64, 59, 61, 78, 75, 75, 50, 88, 64, 71, 78, 67, 76, 72, 67, 66, 66, 52, 66, 56, 61, 69, 55, 50, 64, 65, 44, 64, 72, 64, 74, 63, 69, 77, 91, 64, 82, 69, 63, 63, 57, 68, 66, 138, 69, 82, 50, 50, 75, 69, 94, 59, 63, 64, 65, 84, 81, 49, 59, 75, 64, 51, 80, 61, 66, 74, 94, 54, 58, 66, 82, 60, 58, 51, 68, 66, 61, 40, 70, 65, 57, 77, 61, 52, 75, 51, 45, 73, 65, 59, 63, 76, 54, 67, 53, 75, 79, 60, 64, 49, 56, 60, 90, 77, 105, 51, 75, 65, 138, 59, 69, 48, 93, 67, 52, 68, 48, 71, 63, 60, 71, 44, 58, 71, 74, 55, 63, 59, 55, 64, 65, 63, 52, 43, 53, 49, 79, 68, 73, 74, 97, 44, 63, 56, 63, 82, 64, 110, 67, 65, 75, 79, 81, 74, 77, 72, 66, 96, 50, 72, 68, 73, 71, 69, 89, 82, 63, 66, 72, 52, 102, 57, 47, 84, 56, 58, 69, 65, 131, 67, 63, 79, 55, 108, 72, 52, 73, 78, 77, 72, 65, 68, 73, 49, 63, 71, 75, 89, 89, 77, 65, 79, 67, 57, 49, 68, 54, 47, 74, 89, 83, 54, 70, 78, 67, 74, 62, 49, 88, 73, 67, 80, 68, 80, 87, 62, 68, 54, 65, 54, 91, 72, 59, 60, 89, 84, 76, 60, 80, 56, 68, 89, 62, 63, 68, 75, 75, 67, 67, 80, 66, 97, 53, 64, 60, 61, 53, 101, 62, 56, 60, 79, 76, 75, 78, 84, 57, 145, 56, 64, 67, 71, 59, 66, 53, 74, 72, 44, 70, 62, 63, 60, 52, 55, 80, 55, 55, 61, 57, 55, 54, 49, 63, 62, 62, 62, 65, 59, 77, 59, 72, 81, 82, 86, 62, 79, 52, 75, 59, 82, 54, 87, 64, 59, 65, 62, 48, 56, 61, 68, 56, 89, 72, 62, 75, 65, 80, 45, 57, 55, 80, 40, 76, 76, 73, 65, 60, 52, 60, 61, 94, 55, 58, 90, 64, 73, 63, 66, 55, 83, 60, 82, 69, 116, 65, 65, 98, 77, 63, 71, 54, 69, 62, 88, 68, 89, 65, 49, 73, 50, 66, 57, 53, 57, 70, 56, 54, 58, 53, 80, 56, 60, 59, 60, 59, 62, 76, 82, 55, 52, 72, 75, 77, 93, 72, 65, 71, 50, 57, 54, 101, 86, 66, 57, 66, 56, 73, 72, 94, 80, 55, 69, 61, 61, 45, 56, 71, 46, 67, 109, 62, 84, 46, 68, 76, 65, 55, 55, 64, 76, 50, 57, 50, 57, 87, 58, 76, 71, 50, 48, 60, 60, 66, 56, 56, 68, 69, 55, 47, 61, 55, 49, 66, 59, 78, 76, 67, 58, 90, 61, 61, 71, 60, 83, 57, 71, 69, 69, 38, 88, 82, 76, 50, 48, 76, 67, 71, 42, 91, 70, 66, 86, 59, 89, 56, 72, 44, 80, 65, 54, 51, 64, 74, 63, 67, 57, 65, 58, 56, 77, 54, 47, 69, 79, 70, 68, 82, 75, 77, 57, 73, 61, 51, 55, 69, 74, 77, 72, 63, 69, 61, 82, 79, 71, 51, 72, 71, 94, 47, 64, 66, 49, 57, 85, 51, 78, 63, 81, 72, 69, 59, 57, 42, 50, 74, 56, 68, 60, 57, 71, 65, 100, 78, 59, 80, 75, 74, 51, 51, 81, 77, 83, 83, 64, 53, 48, 73, 64, 54, 80, 62, 63, 72, 56, 59, 55, 50, 77, 59, 62, 74, 60, 52, 83, 72, 59, 61, 69, 54, 66, 48, 63, 60, 68, 77, 68, 58, 54, 57, 83, 69, 70, 85, 41, 53, 68, 84, 74, 104, 56, 46, 58, 70, 57, 72, 68, 50, 116, 55, 66, 43, 70, 61, 54, 62, 60, 52, 70, 72, 60, 60, 52, 55, 48, 63, 51, 45, 61, 70, 37, 75, 81, 75, 43, 80, 48, 93, 56, 58, 53, 72, 84, 64, 55, 56, 76, 61, 64, 47, 61, 80, 61, 61, 71, 40, 56, 59, 77, 103, 78, 94, 71, 76, 49, 85, 54, 56, 60, 59, 67, 59, 80, 107, 47, 61, 78, 62, 48, 69, 55, 56, 66, 60, 83, 60, 65, 56, 67, 69, 65, 76, 72, 78, 74, 60, 69, 80, 64, 73, 59, 66, 83, 64, 71, 60, 70, 63, 47, 49, 49, 62, 65, 60, 73, 48, 72, 61, 50, 60, 62, 77, 51, 74, 70, 66, 51, 70, 64, 79, 64, 63, 65, 61, 79, 64, 74, 67, 61, 99, 52, 67, 60, 61, 66, 89, 57, 69, 84, 45, 63, 79, 54, 60, 71, 46, 85, 78, 48, 52, 68, 60, 79, 81, 47, 55, 64, 85, 78, 67, 50, 74, 105, 48, 61, 68, 82, 77, 84, 56, 49, 56, 77, 48, 61, 51, 58, 90, 94, 69, 84, 71, 56, 58, 95, 124, 73, 81, 87, 80, 64, 62, 75, 48, 76, 81, 69, 67, 67, 52, 60, 83, 77, 57, 58, 63, 60, 71, 55, 57, 53, 67, 59, 68, 73, 67, 66, 39, 57, 54, 66, 68, 81, 51, 49, 63, 44, 96, 73, 63, 88, 72, 48, 53, 72, 67, 77, 65, 57, 60, 70, 75, 53, 58, 76, 76, 76, 75, 53, 56, 78, 66, 79, 69, 68, 56, 62, 59, 66, 48, 76, 57, 54, 82, 72, 55, 53, 70, 52, 102, 53, 67, 67, 65, 79, 66, 80, 118, 79, 72, 74, 86, 52, 104, 78, 80, 71, 39, 76, 73, 77, 64, 55, 51, 72, 58, 57, 62, 59, 60, 49, 72, 65, 67, 59, 54, 52, 57, 64, 84, 61, 76, 60, 64, 66, 57, 80, 68, 49, 61, 62, 56, 59, 57, 95, 80, 55, 51, 57, 55, 52, 57, 169, 60, 64, 60, 62, 53, 68, 54, 44, 53, 57, 59, 53, 71, 47, 54, 64, 64, 65, 74, 83, 83, 63, 79, 52, 41, 54, 67, 51, 68, 61, 50, 59, 75, 78, 64, 58, 68, 57, 81, 73, 68, 52, 47, 59, 69, 74, 64, 70, 63, 70, 68, 59, 65, 55, 47, 76, 88, 64, 79, 62, 61, 80, 68, 57, 58, 79, 84, 66, 63, 77, 86, 53, 68, 103, 68, 71, 59, 69, 58, 67, 72, 75, 76, 62, 62, 80, 56, 56, 80, 55, 59, 51, 74, 71, 55, 56, 65, 63, 76, 59, 51, 69, 59, 69, 66, 80, 51, 53, 60, 59, 109, 64, 82, 46, 51, 83, 63, 71, 57, 46, 48, 61, 55, 56, 53, 73, 68, 58, 67, 35, 54, 60, 60, 68, 75, 57, 78, 68, 58, 52, 70, 70, 70, 56, 89, 59, 55, 89, 64, 69, 77, 52, 70, 54, 64, 84, 59, 44, 80, 57, 67, 60, 56, 71, 74, 37, 75, 65, 94, 87, 56, 68, 66, 57, 62, 59, 59, 74, 53, 63, 77, 68, 65, 49, 70, 68, 67, 62, 85, 93, 68, 83, 51, 52, 72, 49, 59, 64, 56, 70, 90, 56, 69, 55, 76, 55, 43, 69, 98, 78, 61, 48, 72, 60, 75, 73, 72, 87, 67, 67, 57, 36, 78, 83, 70, 54, 55, 48, 70, 55, 55, 64, 57, 67, 63, 70, 99, 72, 61, 53, 64, 71, 54, 122, 68, 64, 59, 50, 98, 73, 78, 97, 39, 78, 63, 103, 101, 78, 78, 60, 56, 52, 52, 62, 53, 66, 93, 69, 61, 70, 62, 69, 49, 42, 54, 63, 55, 81, 92, 66, 50, 54, 43, 87, 70, 63, 53, 74, 69, 47, 45, 51, 49, 71, 59, 61, 59, 60, 70, 49, 48, 51, 68, 85, 70, 82, 81, 75, 54, 45, 83, 63, 66, 59, 62, 71, 53, 75, 66, 52, 67, 76, 57, 81, 49, 53, 49, 58, 81, 46, 47, 60, 78, 60, 58, 53, 75, 55, 64, 58, 76, 81, 71, 53, 58, 52, 66, 89, 77, 82, 46, 58, 56, 61, 86, 65, 144, 55, 57, 61, 43, 79, 55, 85, 58, 68, 93, 58, 61, 52, 63, 78, 68, 61, 62, 50, 78, 44, 66, 98, 62, 66, 85, 96, 66, 56, 62, 57, 92, 70, 58, 90, 70, 49, 67, 46, 81, 58, 49, 60, 65, 63, 62, 77, 64, 102, 58, 72, 70, 67, 55, 86, 47, 55, 61, 57, 83, 60, 79, 92, 57, 75, 61, 71, 57, 79, 84, 70, 55, 77, 78, 62, 63, 60, 82, 55, 62, 62, 65, 67, 90, 47, 68, 50, 39, 69, 55, 76, 52, 68, 73, 57, 46, 75, 73, 43, 68, 80, 58, 59, 71, 73, 72, 50, 66, 54, 62, 49, 57, 84, 71, 52, 67, 69, 53, 68, 76, 55, 55, 60, 66, 77, 55, 51, 67, 55, 62, 51, 53, 98, 77, 62, 51, 78, 74, 85, 62, 87, 109, 71, 45, 65, 109, 60, 73, 57, 48, 67, 58, 56, 67, 91, 67, 60, 61, 57, 89, 136, 53, 68, 32, 49, 51, 68, 57, 70, 55, 50, 62, 63, 58, 72, 70, 71, 49, 44, 64, 58, 53, 38, 104, 53, 57, 56, 77, 51, 68, 35, 118, 51, 50, 52, 62, 49, 67, 62, 97, 74, 65, 89, 83, 66, 59, 44, 63, 43, 66, 80, 72, 100, 70, 72, 60, 62, 70, 65, 48, 69, 64, 67, 65, 62, 53, 72, 73, 73, 67, 61, 52, 97, 61, 69, 47, 79, 61, 53, 84, 84, 53, 82, 92, 73, 84, 70, 62, 85, 84, 72, 76, 45, 63, 61, 65, 43, 63, 64, 55, 70, 57, 57, 76, 65, 39, 51, 67, 75, 54, 60, 72, 55, 66, 93, 58, 58, 63, 77, 48, 101, 74, 52, 41, 81, 83, 59, 63, 62, 66, 61, 61, 68, 66, 51, 77, 58, 47, 60, 62, 60, 73, 60, 56, 67, 69, 87, 77, 61, 64, 52, 70, 71, 60, 48, 64, 71, 69, 55, 71, 82, 82, 74, 75, 61, 66, 73, 51, 44, 64, 69, 79, 65, 55, 77, 64, 49, 66, 71, 69, 85, 57, 98, 52, 61, 64, 73, 49, 54, 73, 74, 63, 79, 70, 62, 61, 83, 57, 55, 55, 51, 58, 49, 85, 54, 69, 52, 69, 55, 49, 46, 46, 41, 65, 59, 72, 49, 61, 74, 62, 59, 70, 73, 49, 70, 74, 61, 63, 68, 67, 72, 68, 62, 55, 60, 62, 80, 52, 70, 80, 62, 64, 74, 87, 69, 71, 55, 59, 56, 80, 63, 82, 73, 63, 60, 73, 63, 51, 51, 75, 79, 55, 62, 68, 57, 67, 79, 70, 65, 78, 109, 52, 71, 66, 77, 109, 51, 89, 56, 95, 79, 83, 53, 44, 88, 46, 56, 70, 61, 61, 69, 65, 90, 43, 71, 73, 57, 48, 50, 80, 57, 44, 89, 54, 53, 49, 54, 46, 75, 56, 34, 56, 67, 76, 86, 53, 61, 61, 65, 78, 60, 55, 77, 86, 56, 50, 82, 66, 77, 50, 60, 63, 65, 62, 36, 58, 58, 86, 67, 59, 75, 54, 75, 55, 83, 80, 89, 65, 70, 73, 61, 74, 61, 105, 60, 66, 71, 68, 70, 69, 129, 82, 42, 63, 64, 82, 63, 74, 55, 70, 60, 61, 82, 90, 72, 70, 53, 79, 55, 66, 67, 93, 63, 68, 80, 66, 76, 70, 74, 55, 73, 58, 73, 51, 66, 69, 40, 71, 58, 52, 96, 43, 46, 58, 53, 106, 108, 68, 71, 68, 56, 77, 88, 65, 74, 94, 61, 67, 61, 56, 74, 73, 44, 73, 53, 63, 57, 62, 81, 65, 57, 43, 85, 48, 59, 49, 72, 79, 56, 67, 55, 54, 67, 75, 70, 89, 52, 66, 69, 77, 79, 59, 59, 94, 73, 70, 66, 63, 43, 71, 53, 92, 59, 45, 62, 57, 58, 61, 59, 39, 48, 92, 76, 56, 81, 50, 60, 49, 42, 46, 63, 63, 74, 61, 52, 74, 45, 58, 95, 56, 106, 54, 49, 58, 63, 61, 81, 54, 67, 87, 47, 77, 78, 67, 67, 76, 83, 46, 55, 65, 82, 83, 41, 105, 48, 46, 75, 47, 71, 64, 58, 60, 65, 54, 64, 68, 68, 59, 57, 63, 48, 48, 79, 59, 69, 110, 65, 60, 79, 61, 85, 78, 63, 55, 82, 49, 64, 70, 55, 62, 48, 99, 62, 74, 79, 61, 38, 57, 48, 98, 82, 49, 56, 71, 74, 42, 69, 59, 57, 76, 61, 55, 100, 57, 59, 62, 60, 126, 69, 67, 87, 62, 98, 79, 68, 57, 76, 44, 67, 71, 81, 85, 48, 69, 54, 82, 48, 64, 81, 55, 55, 63, 46, 62, 83, 59, 90, 73, 62, 70, 128, 75, 60, 70, 61, 59, 54, 67, 67, 59, 76, 64, 83, 57, 66, 36, 60, 75, 37, 45, 75, 71, 89, 38, 45, 83, 37, 64, 81, 78, 43, 53, 61, 50, 61, 59, 57, 54, 72, 72, 73, 63, 105, 70, 49, 75, 62, 52, 66, 92, 92, 40, 56, 72, 57, 80, 74, 82, 64, 59, 53, 62, 47, 74, 46, 62, 66, 86, 82, 80, 69, 83, 56, 70, 77, 69, 71, 70, 67, 50, 91, 54, 51, 69, 58, 59, 54, 80, 53, 68, 57, 53, 68, 72, 67, 57, 69, 79, 47, 70, 77, 51, 130, 77, 56, 52, 55, 45, 89, 99, 79, 60, 64, 55, 85, 60, 68, 74, 84, 76, 71, 61, 45, 49, 55, 50, 87, 62, 60, 64, 51, 53, 66, 66, 37, 63, 64, 71, 59, 80, 70, 57, 91, 75, 55, 69, 73, 71, 62, 70, 72, 64, 59, 60, 71, 74, 61, 70, 56, 146, 76, 51, 56, 62, 52, 29, 52, 76, 73, 66, 68, 65, 68, 63, 43, 76, 64, 79, 90, 76, 63, 97, 68, 73, 71, 49, 84, 49, 61, 46, 80, 59, 69, 49, 105, 76, 74, 78, 66, 68, 67, 51, 63, 64, 69, 66, 69, 78, 80, 37, 71, 63, 60, 74, 72, 43, 62, 79, 106, 67, 56, 57, 103, 50, 79, 68, 66, 69, 60, 53, 86, 74, 60, 78, 60, 71, 66, 39, 72, 57, 58, 63, 85, 61, 56, 60, 49, 87, 58, 77, 102, 86, 63, 49, 64, 94, 49, 64, 73, 71, 46, 70, 61, 80, 56, 56, 53, 54, 79, 79, 62, 51, 59, 57, 74, 74, 69, 84, 55, 57, 56, 68, 66, 77, 62, 68, 91, 72, 61, 110, 55, 55, 62, 50, 47, 61, 73, 62, 52, 53, 53, 85, 51, 65, 63, 73, 52, 131, 77, 64, 56, 61, 64, 69, 68, 79, 94, 59, 104, 70, 55, 58, 66, 70, 36, 49, 67, 65, 71, 62, 66, 66, 72, 44, 83, 71, 58, 81, 46, 72, 75, 60, 52, 67, 84, 65, 69, 51, 56, 64, 76, 63, 61, 65, 84, 51, 81, 77, 73, 66, 82, 77, 66, 94, 81, 65, 57, 45, 63, 50, 59, 61, 59, 57, 61, 59, 81, 64, 54, 99, 53, 62, 82, 59, 62, 105, 53, 54, 54, 61, 62, 63, 58, 91, 48, 56, 63, 75, 67, 64, 50, 61, 79, 63, 83, 66, 147, 61, 72, 60, 86, 73, 67, 38, 86, 86, 55, 53, 51, 49, 67, 61, 66, 59, 51, 60, 45, 48, 66, 49, 61, 67, 59, 36, 50, 64, 67, 63, 70, 65, 62, 62, 51, 76, 71, 64, 50, 62, 56, 82, 72, 46, 55, 61, 75, 66, 53, 60, 54, 72, 66, 66, 79, 76, 66, 67, 80, 66, 38, 80, 64, 39, 57, 53, 61, 58, 63, 71, 63, 69, 70, 49, 65, 73, 54, 58, 35, 69, 56, 63, 70, 75, 66, 62, 85, 64, 78, 78, 89, 54, 56, 45, 37, 86, 56, 63, 54, 44, 84, 66, 79, 83, 80, 59, 55, 69, 68, 67, 64, 73, 51, 69, 61, 65, 67, 65, 65, 64, 54, 55, 61, 76, 59, 76, 43, 69, 55, 75, 39, 84, 67, 93, 59, 73, 47, 63, 75, 65, 45, 86, 55, 63, 66, 70, 86, 83, 57, 64, 58, 71, 77, 53, 54, 88, 55, 58, 60, 75, 78, 65, 62, 46, 69, 70, 55, 59, 70, 81, 64, 71, 65, 60, 56, 68, 72, 80, 53, 53, 55, 86, 76, 47, 59, 53, 70, 50, 62, 54, 53, 56, 62, 66, 69, 58, 57, 49, 57, 86, 78, 81, 105, 133, 65, 57, 58, 66, 66, 70, 77, 57, 60, 62, 69, 62, 71, 82, 63, 50, 75, 48, 58, 71, 74, 52, 79, 71, 45, 84, 77, 67, 62, 60, 38, 46, 71, 51, 70, 61, 44, 54, 50, 69, 48, 77, 57, 45, 64, 53, 64, 78, 97, 65, 93, 64, 66, 71, 89, 55, 79, 57, 59, 55, 43, 73, 70, 80, 63, 57, 82, 44, 88, 57, 56, 69, 59, 24, 66, 71, 68, 76, 70, 82, 82, 77, 79, 58, 76, 56, 69, 74, 69, 58, 64, 54, 22, 52, 81, 101, 61, 64, 43, 71, 66, 84, 48, 77, 46, 69, 104, 61, 48, 79, 76, 62, 53, 72, 75, 64, 63, 75, 56, 85, 67, 63, 45, 75, 53, 75, 69, 58, 56, 63, 64, 61, 68, 47, 74, 83, 54, 62, 57, 68, 85, 49, 63, 84, 67, 56, 63, 79, 53, 62, 76, 91, 45, 63, 76, 50, 61, 52, 46, 61, 73, 83, 42, 82, 65, 68, 66, 51, 74, 77, 67, 63, 65, 63, 65, 80, 73, 52, 72, 65, 76, 58, 68, 56, 76, 70, 67, 67, 71, 55, 74, 41, 62, 74, 63, 80, 57, 81, 66, 73, 69, 77, 70, 52, 76, 75, 75, 93, 57, 87, 66, 63, 106, 80, 46, 65, 60, 71, 58, 49, 61, 94, 69, 67, 52, 57, 56, 48, 50, 54, 52, 73, 58, 56, 77, 59, 63, 59, 70, 57, 58, 79, 71, 69, 69, 64, 76, 85, 67, 67, 52, 73, 61, 70, 64, 54, 69, 75, 67, 49, 45, 80, 67, 77, 82, 90, 56, 70, 35, 51, 89, 54, 56, 50, 61, 82, 59, 90, 74, 92, 47, 68, 65, 57, 66, 108, 74, 46, 67, 53, 60, 64, 38, 56, 59, 54, 60, 64, 73, 56, 114, 58, 51, 67, 73, 45, 75, 75, 64, 68, 55, 76, 55, 66, 55, 70, 71, 73, 92, 43, 96, 63, 81, 65, 65, 50, 68, 91, 72, 82, 55, 52, 81, 60, 67, 73, 49, 60, 53, 110, 68, 68, 65, 68, 83, 79, 54, 61, 62, 45, 64, 41, 55, 55, 53, 54, 91, 50, 79, 33, 91, 70, 49, 91, 57, 55, 66, 57, 165, 74, 94, 64, 70, 46, 53, 93, 74, 95, 67, 80, 96, 68, 71, 54, 65, 56, 76, 59, 53, 70, 58, 45, 76, 67, 60, 60, 73, 65, 63, 64, 66, 70, 86, 60, 64, 50, 121, 49, 74, 70, 80, 76, 46, 54, 70, 64, 61, 53, 80, 90, 63, 65, 69, 50, 61, 65, 81, 71, 78, 52, 76, 78, 73, 90, 55, 65, 62, 69, 76, 67, 67, 62, 71, 75, 62, 56, 66, 61, 69, 74, 63, 57, 50, 53, 59, 72, 65, 85, 77, 70, 68, 56, 72, 58, 81, 70, 75, 79, 63, 75, 62, 78, 100, 72, 75, 61, 68, 53, 63, 77, 65, 79, 75, 88, 69, 64, 47, 52, 68, 49, 33, 80, 74, 65, 69, 64, 49, 62, 52, 88, 71, 77, 76, 67, 59, 100, 64, 51, 57, 65, 54, 58, 59, 79, 77, 61, 74, 56, 70, 63, 53, 70, 56, 49, 59, 54, 73, 79, 78, 82, 57, 61, 59, 86, 57, 78, 59, 48, 66, 110, 88, 69, 41, 60, 70, 65, 63, 74, 54, 81, 71, 60, 71, 91, 56, 74, 64, 66, 64, 64, 63, 56, 64, 44, 59, 82, 57, 54, 66, 56, 58, 77, 70, 79, 81, 59, 76, 72, 71, 79, 62, 61, 96, 52, 57, 64, 70, 74, 59, 62, 59, 62, 77, 64, 97, 77, 68, 92, 47, 58, 73, 65, 49, 67, 67, 69, 72, 56, 58, 55, 77, 66, 90, 91, 79, 55, 53, 61, 58, 46, 75, 71, 96, 58, 76, 58, 51, 68, 43, 61, 73, 80, 76, 59, 67, 58, 56, 49, 61, 64, 66, 68, 71, 80, 67, 51, 67, 67, 100, 60, 71, 73, 69, 54, 78, 79, 77, 59, 55, 58, 50, 59, 66, 66, 72, 62, 44, 77, 67, 78, 47, 63, 65, 61, 86, 59, 60, 50, 85, 101, 65, 45, 81, 54, 70, 55, 66, 54, 61, 79, 77, 58, 66, 49, 57, 53, 72, 56, 61, 59, 83, 60, 62, 51, 81, 66, 50, 56, 80, 51, 75, 98, 76, 56, 51, 49, 64, 64, 60, 57, 70, 65, 66, 68, 70, 50, 74, 53, 55, 70, 59, 42, 60, 77, 72, 62, 60, 56, 75, 76, 49, 91, 55, 71, 59, 60, 47, 59, 72, 70, 54, 68, 96, 53, 74, 74, 58, 76, 60, 65, 96, 88, 60, 58, 74, 72, 74, 138, 57, 55, 75, 68, 55, 66, 57, 83, 52, 71, 68, 54, 64, 57, 68, 81, 52, 53, 66, 50, 59, 30, 43, 64, 46, 77, 58, 62, 76, 71, 54, 67, 60, 55, 72, 74, 70, 81, 59, 61, 65, 66, 62, 60, 80, 54, 60, 67, 86, 65, 62, 60, 66, 52, 61, 60, 70, 60, 61, 57, 58, 55, 57, 53, 50, 59, 61, 79, 69, 65, 76, 57, 50, 54, 53, 62, 71, 52, 74, 80, 103, 60, 105, 76, 54, 65, 69, 79, 48, 56, 62, 73, 39, 97, 60, 70, 59, 63, 94, 67, 78, 78, 58, 60, 67, 56, 73, 62, 56, 68, 58, 87, 63, 60, 81, 84, 48, 59, 67, 62, 67, 58, 68, 68, 63, 79, 61, 85, 56, 58, 63, 61, 58, 77, 60, 54, 60, 57, 63, 60, 59, 75, 60, 64, 59, 78, 66, 45, 73, 45, 63, 56, 54, 66, 63, 80, 50, 59, 59, 58, 84, 75, 80, 74, 62, 91, 49, 63, 67, 56, 55, 64, 57, 79, 75, 67, 58, 63, 65, 62, 58, 54, 80, 41, 62, 75, 54, 61, 49, 68, 71, 67, 65, 56, 77, 127, 63, 56, 62, 58, 61, 64, 54, 51, 61, 80, 68, 85, 58, 71, 60, 112, 65, 87, 69, 79, 63, 66, 60, 66, 76, 71, 86, 61, 73, 72, 54, 60, 64, 53, 76, 69, 62, 66, 64, 59, 59, 58, 57, 55, 61, 64, 68, 72, 61, 54, 61, 84, 63, 49, 65, 59, 57, 70, 69, 63, 63, 60, 53, 58, 118, 61, 69, 62, 62, 53, 52, 70, 59, 73, 66, 72, 70, 58, 59, 63, 62, 59, 62, 69, 54, 69, 59, 65, 91, 70, 64, 58, 48, 87, 51, 73, 64, 71, 55, 64, 54, 70, 83, 68, 57, 85, 57, 69, 65, 56, 54, 76, 63, 78, 66, 69, 69, 58, 69, 61, 59, 73, 59, 60, 70, 56, 65, 47, 72, 76, 55, 59, 91, 68, 66, 68, 87, 84, 63, 53, 62, 69, 51, 64, 78, 58, 76, 74, 51, 79, 60, 63, 56, 60, 64, 54, 67, 67, 78, 63, 104, 69, 60, 60, 78, 47, 81, 65, 71, 81, 70, 60, 74, 63, 52, 60, 65, 42, 76, 68, 64, 65, 60, 91, 61, 70, 101, 71, 61, 57, 70, 45, 74, 53, 74, 63, 69, 59, 63, 56, 57, 71, 69, 70, 70, 67, 76, 81, 56, 57, 66, 66, 58, 86, 59, 52, 46, 55, 58, 71, 47, 71, 82, 112, 164, 70, 56, 59, 62, 65, 91, 70, 58, 61, 66, 72, 75, 68, 79, 66, 62, 74, 65, 75, 71, 48, 71, 56, 74, 58, 80, 72, 53, 60, 59, 63, 77, 67, 63, 66, 58, 73, 61, 53, 142, 82, 127, 60, 56, 74, 54, 53, 58, 62, 59, 62, 55, 87, 62, 51, 68, 69, 65, 117, 65, 42, 58, 69, 45, 64, 60, 59, 69, 101, 74, 99, 72, 64, 71, 66, 71, 66, 64, 64, 66, 55, 64, 63, 59, 61, 70, 62, 63, 64, 78, 61, 72, 82, 67, 52, 67, 84, 66, 58, 70, 81, 57, 59, 64, 59, 62, 52, 60, 71, 58, 79, 72, 53, 68, 64, 54, 71, 59, 67, 59, 59, 78, 52, 57, 65, 61, 78, 47, 72, 66, 52, 68, 64, 47, 57, 74, 68, 91, 51, 85, 76, 54, 80, 58, 48, 53, 61, 54, 49, 59, 81, 53, 64, 66, 71, 67, 71, 74, 63, 68, 67, 64, 69, 67, 50, 66, 68, 63, 101, 68, 70, 94, 63, 71, 63, 69, 89, 66, 52, 52, 57, 54, 54, 51, 58, 66, 56, 59, 67, 63, 71, 66, 57, 54, 66, 51, 55, 87, 56, 58, 52, 79, 59, 98, 80, 54, 80, 59, 71, 56, 68, 46, 51, 63, 57, 73, 86, 69, 62, 62, 65, 64, 73, 63, 67, 62, 84, 67, 66, 57, 60, 58, 80, 67, 50, 104, 61, 62, 58, 57, 57, 64, 61, 79, 71, 69, 69, 54, 61, 55, 71, 55, 71, 56, 55, 60, 79, 57, 44, 64, 68, 55, 78, 56, 71, 75, 78, 68, 84, 60, 81, 59, 69, 104, 57, 65, 73, 86, 62, 62, 78, 53, 72, 69, 60, 58, 69, 59, 60, 57, 53, 61, 58, 67, 60, 66, 63, 67, 53, 69, 78, 69, 45, 53, 62, 53, 69, 81, 57, 53, 78, 73, 58, 81, 77, 70, 75, 66, 74, 57, 72, 56, 96, 70, 62, 69, 55, 51, 68, 65, 58, 54, 85, 40, 75, 56, 61, 73, 93, 94, 52, 59, 69, 50, 72, 90, 77, 59, 51, 68, 69, 61, 76, 52, 63, 54, 111, 95, 67, 57, 64, 63, 59, 62, 74, 62, 62, 71, 56, 57, 46, 53, 66, 65, 62, 56, 71, 74, 52, 44, 59, 57, 39, 48, 105, 63, 57, 74, 59, 60, 69, 82, 69, 58, 79, 58, 70, 54, 65, 95, 71, 46, 64, 54, 79, 64, 49, 57, 57, 75, 88, 52, 64, 91, 67, 71, 56, 75, 81, 74, 73, 81, 83, 64, 86, 71, 125, 48, 60, 40, 49, 62, 58, 63, 53, 77, 84, 69, 57, 68, 59, 33, 64, 73, 64, 57, 60, 64, 77, 52, 57, 57, 54, 44, 92, 38, 62, 57, 46, 57, 51, 48, 93, 66, 49, 73, 64, 68, 57, 66, 65, 64, 65, 66, 60, 66, 60, 54, 90, 108, 76, 63, 83, 51, 56, 62, 53, 61, 57, 62, 93, 59, 51, 80, 56, 79, 87, 72, 63, 69, 93, 81, 46, 71, 46, 163, 61, 44, 60, 60, 63, 65, 72, 62, 55, 89, 83, 50, 68, 82, 68, 97, 52, 69, 63, 57, 50, 50, 75, 61, 58, 61, 47, 100, 106, 82, 68, 61, 67, 54, 70, 57, 70, 59, 47, 50, 71, 50, 97, 131, 87, 73, 75, 53, 50, 47, 65, 61, 66, 59, 58, 59, 54, 54, 56, 98, 74, 52, 75, 68, 58, 73, 67, 118, 66, 70, 53, 60, 80, 77, 84, 70, 58, 56, 79, 63, 53, 62, 59, 54, 68, 74, 72, 58, 54, 53, 91, 56, 63, 62, 64, 64, 62, 60, 60, 70, 67, 49, 63, 84, 132, 68, 71, 81, 75, 74, 47, 57, 72, 55, 57, 50, 54, 59, 64, 60, 107, 55, 118, 70, 74, 61, 74, 61, 70, 53, 63, 65, 53, 57, 50, 68, 63, 49, 63, 63, 63, 56, 69, 89, 57, 71, 49, 72, 71, 42, 61, 69, 60, 58, 71, 66, 41, 49, 71, 43, 82, 55, 77, 63, 57, 105, 65, 51, 83, 60, 72, 47, 76, 79, 46, 57, 51, 78, 69, 64, 62, 73, 71, 61, 81, 62, 61, 74, 72, 86, 52, 55, 77, 84, 75, 79, 71, 53, 46, 56, 67, 115, 80, 77, 65, 73, 49, 107, 64, 80, 60, 37, 58, 57, 64, 97, 116, 73, 63, 67, 55, 47, 62, 62, 69, 70, 60, 72, 58, 39, 52, 59, 55, 73, 57, 56, 71, 68, 54, 77, 76, 45, 58, 73, 83, 73, 72, 63, 50, 76, 56, 71, 66, 66, 75, 61, 79, 78, 74, 75, 57, 49, 68, 134, 50, 69, 51, 64, 67, 62, 74, 62, 75, 69, 65, 71, 82, 78, 65, 67, 68, 66, 70, 60, 62, 46, 70, 62, 52, 59, 52, 47, 62, 79, 62, 68, 48, 142, 78, 71, 58, 66, 57, 58, 65, 71, 51, 65, 66, 41, 55, 65, 54, 77, 72, 63, 79, 77, 49, 74, 57, 66, 44, 61, 68, 65, 57, 98, 49, 37, 58, 74, 61, 60, 32, 50, 52, 94, 47, 51, 65, 57, 61, 77, 51, 60, 63, 96, 66, 52, 78, 79, 72, 53, 84, 51, 58, 70, 69, 75, 73, 87, 56, 52, 66, 58, 81, 76, 40, 72, 59, 75, 58, 54, 57, 49, 80, 59, 97, 52, 70, 57, 80, 67, 65, 85, 72, 57, 70, 47, 52, 51, 54, 61, 57, 71, 33, 61, 93, 75, 50, 66, 57, 58, 62, 69, 46, 75, 54, 62, 68, 77, 59, 60, 63, 80, 72, 76, 69, 42, 92, 53, 53, 56, 53, 71, 95, 59, 78, 55, 56, 91, 60, 47, 70, 82, 62, 55, 86, 59, 56, 68, 64, 62, 61, 108, 77, 50, 42, 67, 60, 53, 66, 69, 69, 54, 62, 64, 95, 60, 45, 69, 68, 86, 70, 83, 72, 142, 113, 64, 66, 69, 57, 58, 54, 97, 58, 94, 78, 61, 63, 60, 128, 51, 52, 59, 76, 72, 63, 58, 55, 75, 67, 58, 60, 73, 57, 57, 69, 85, 67, 71, 45, 56, 50, 72, 62, 69, 50, 58, 57, 51, 46, 75, 73, 46, 63, 78, 52, 55, 78, 52, 53, 64, 50, 78, 54, 70, 72, 71, 80, 65, 67, 56, 55, 73, 58, 51, 58, 51, 66, 46, 51, 87, 78, 82, 60, 58, 66, 64, 84, 58, 73, 92, 38, 62, 73, 110, 53, 43, 126, 71, 88, 84, 68, 63, 95, 51, 73, 81, 70, 53, 48, 73, 55, 48, 50, 45, 60, 61, 68, 73, 59, 49, 51, 76, 78, 83, 47, 41, 68, 58, 86, 39, 51, 74, 49, 86, 70, 67, 58, 82, 62, 49, 76, 37, 61, 66, 85, 64, 96, 62, 57, 54, 71, 81, 52, 65, 59, 48, 53, 64, 62, 74, 84, 71, 39, 69, 71, 71, 51, 69, 57, 76, 96, 58, 56, 57, 58, 62, 67, 54, 33, 78, 81, 57, 57, 59, 107, 67, 73, 66, 57, 60, 60, 49, 79, 70, 87, 69, 77, 59, 62, 119, 51, 51, 98, 72, 61, 56, 56, 71, 77, 73, 46, 49, 56, 55, 128, 57, 63, 69, 77, 58, 76, 63, 66, 66, 56, 84, 61, 63, 69, 61, 69, 75, 67, 115, 74, 57, 71, 52, 62, 59, 67, 64, 63, 52, 58, 65, 50, 95, 72, 72, 67, 81, 105, 58, 61, 55, 61, 74, 63, 46, 56, 65, 81, 62, 67, 79, 48, 67, 56, 55, 66, 82, 61, 46, 62, 61, 68, 89, 47, 70, 50, 65, 73, 88, 51, 65, 50, 74, 53, 56, 122, 93, 67, 68, 63, 94, 72, 75, 47, 71, 74, 56, 44, 61, 62, 67, 58, 70, 76, 66, 68, 52, 70, 55, 74, 81, 87, 53, 51, 58, 85, 71, 62, 59, 42, 58, 63, 74, 69, 68, 66, 74, 81, 54, 62, 58, 53, 46, 52, 67, 50, 52, 70, 65, 82, 55, 102, 63, 58, 66, 119, 50, 46, 46, 61, 59, 85, 69, 52, 74, 72, 76, 62, 45, 84, 68, 54, 52, 53, 82, 78, 61, 86, 43, 63, 58, 99, 48, 46, 62, 63, 49, 65, 67, 69, 64, 66, 56, 90, 56, 81, 62, 60, 53, 65, 57, 72, 77, 55, 79, 64, 58, 58, 56, 56, 83, 69, 80, 84, 75, 75, 82, 52, 61, 68, 63, 77, 62, 71, 57, 84, 84, 60, 49, 78, 59, 53, 74, 70, 60, 60, 60, 62, 71, 85, 65, 66, 58, 50, 57, 46, 60, 56, 83, 61, 32, 59, 64, 100, 64, 55, 28, 66, 102, 61, 52, 71, 69, 98, 89, 82, 74, 62, 104, 96, 76, 48, 96, 77, 52, 64, 117, 65, 61, 62, 65, 60, 71, 46, 85, 66, 108, 59, 84, 79, 54, 60, 98, 76, 75, 64, 83, 46, 50, 62, 60, 76, 56, 110, 57, 57, 56, 82, 58, 71, 44, 62, 53, 102, 54, 71, 70, 52, 52, 102, 66, 95, 59, 49, 65, 56, 61, 87, 92, 63, 63, 57, 60, 81, 78, 94, 68, 80, 57, 79, 65, 66, 66, 53, 68, 47, 51, 86, 48, 59, 65, 86, 66, 60, 60, 57, 57, 71, 67, 51, 68, 49, 68, 63, 85, 59, 44, 63, 55, 113, 73, 82, 57, 90, 48, 62, 97, 55, 52, 46, 52, 60, 49, 39, 84, 71, 75, 76, 67, 81, 63, 62, 67, 94, 108, 42, 53, 73, 65, 55, 33, 84, 70, 46, 59, 58, 40, 111, 80, 63, 59, 79, 77, 71, 50, 83, 48, 48, 97, 52, 85, 63, 87, 47, 95, 72, 63, 68, 81, 46, 75, 94, 55, 53, 69, 69, 58, 46, 59, 50, 68, 72, 49, 83, 40, 77, 54, 52, 61, 66, 79, 88, 67, 61, 59, 67, 48, 63, 51, 69, 66, 52, 55, 70, 45, 44, 49, 93, 44, 63, 82, 78, 60, 92, 50, 68, 61, 41, 76, 47, 82, 83, 84, 83, 56, 53, 58, 79, 63, 84, 67, 42, 66, 75, 55, 53, 68, 69, 66, 67, 63, 58, 58, 43, 62, 61, 52, 54, 59, 52, 68, 55, 79, 57, 81, 39, 73, 57, 50, 93, 61, 68, 63, 102, 46, 70, 53, 59, 66, 71, 68, 83, 61, 62, 86, 66, 80, 109, 88, 75, 64, 80, 62, 84, 51, 63, 76, 48, 45, 52, 63, 55, 80, 60, 69, 61, 52, 60, 61, 74, 77, 66, 63, 71, 72, 68, 122, 45, 57, 69, 47, 68, 90, 72, 54, 54, 62, 80, 60, 48, 82, 63, 43, 61, 61, 56, 48, 72, 93, 87, 78, 74, 74, 81, 57, 73, 67, 68, 47, 69, 60, 136, 64, 68, 65, 60, 52, 41, 87, 70, 57, 65, 62, 77, 120, 46, 68, 103, 54, 65, 68, 84, 45, 58, 94, 88, 73, 60, 93, 37, 62, 68, 73, 63, 74, 53, 64, 92, 58, 57, 61, 98, 39, 91, 54, 81, 67, 58, 72, 63, 74, 83, 55, 58, 55, 73, 72, 46, 107, 76, 59, 61, 87, 70, 44, 52, 65, 59, 48, 55, 86, 64, 58, 104, 50, 75, 74, 67, 63, 65, 61, 51, 47, 92, 64, 53, 127, 54, 67, 76, 57, 85, 76, 57, 55, 67, 68, 53, 55, 57, 54, 52, 81, 86, 55, 57, 89, 84, 51, 88, 56, 58, 78, 63, 58, 90, 49, 82, 84, 125, 59, 61, 62, 61, 83, 63, 58, 58, 53, 76, 64, 57, 64, 55, 40, 108, 61, 72, 27, 71, 53, 72, 101, 83, 67, 70, 62, 49, 65, 61, 56, 81, 59, 66, 91, 44, 62, 38, 58, 76, 70, 58, 85, 51, 69, 68, 45, 67, 62, 76, 57, 50, 63, 48, 67, 83, 81, 78, 81, 54, 59, 75, 56, 34, 67, 62, 84, 59, 73, 63, 63, 56, 68, 59, 83, 69, 42, 56, 107, 42, 81, 56, 40, 65, 73, 83, 57, 78, 67, 51, 96, 59, 96, 83, 50, 74, 57, 60, 70, 49, 77, 55, 64, 53, 58, 53, 51, 69, 81, 69, 68, 49, 98, 76, 52, 85, 58, 59, 70, 55, 67, 52, 58, 52, 56, 70, 67, 141, 87, 76, 108, 56, 51, 88, 64, 66, 50, 77, 69, 74, 44, 34, 60, 75, 64, 69, 68, 57, 69, 59, 75, 92, 53, 62, 54, 48, 65, 97, 66, 83, 71, 63, 47, 54, 70, 95, 61, 62, 67, 48, 46, 58, 92, 57, 53, 69, 58, 86, 110, 78, 54, 80, 64, 59, 64, 67, 61, 81, 104, 58, 87, 79, 60, 73, 78, 116, 75, 74, 91, 50, 67, 72, 66, 44, 58, 21, 72, 128, 68, 56, 64, 38, 75, 60, 95, 64, 39, 67, 54, 79, 75, 76, 45, 96, 47, 51, 65, 60, 71, 97, 74, 46, 82, 56, 103, 51, 77, 59, 42, 73, 70, 88, 47, 71, 70, 84, 85, 41, 62, 45, 57, 62, 39, 63, 76, 47, 67, 50, 39, 100, 60, 52, 57, 68, 76, 48, 55, 39, 58, 81, 51, 91, 70, 76, 93, 72, 75, 52, 94, 55, 67, 58, 57, 67, 64, 68, 50, 58, 72, 71, 67, 67, 55, 66, 74, 62, 74, 54, 64, 90, 73, 56, 58, 90, 56, 67, 100, 89, 99, 53, 104, 58, 60, 71, 59, 73, 61, 75, 95, 56, 65, 52, 76, 63, 70, 55, 63, 76, 38, 48, 61, 79, 66, 59, 70, 65, 86, 60, 67, 45, 65, 67, 78, 60, 83, 50, 69, 64, 62, 69, 73, 60, 72, 69, 60, 81, 57, 106, 64, 65, 30, 48, 61, 64, 65, 41, 61, 67, 57, 74, 81, 62, 81, 69, 61, 49, 70, 66, 79, 56, 99, 66, 54, 68, 51, 90, 77, 55, 69, 71, 78, 46, 63, 81, 52, 70, 102, 69, 55, 39, 78, 58, 95, 55, 78, 55, 69, 70, 61, 68, 74, 59, 70, 52, 66, 77, 69, 65, 56, 57, 71, 62, 61, 67, 63, 66, 46, 59, 85, 69, 51, 39, 60, 53, 60, 75, 47, 54, 77, 41, 70, 55, 64, 64, 65, 43, 64, 86, 52, 69, 75, 53, 63, 60, 78, 45, 51, 51, 54, 62, 50, 65, 54, 80, 54, 62, 70, 57, 42, 54, 60, 74, 73, 86, 59, 84, 78, 38, 59, 76, 39, 76, 60, 59, 69, 48, 78, 88, 54, 65, 54, 56, 52, 57, 63, 56, 49, 71, 75, 57, 48, 61, 70, 72, 61, 83, 87, 75, 70, 76, 81, 45, 56, 62, 80, 79, 95, 51, 99, 49, 88, 75, 62, 66, 59, 51, 43, 60, 54, 62, 71, 67, 63, 45, 84, 53, 89, 68, 108, 72, 72, 72, 57, 66, 58, 52, 68, 60, 72, 65, 67, 51, 51, 59, 69, 75, 65, 73, 51, 65, 55, 72, 60, 81, 61, 85, 67, 52, 62, 64, 98, 70, 55, 78, 47, 71, 58, 63, 59, 100, 60, 59, 63, 60, 55, 63, 67, 82, 89, 74, 84, 69, 61, 72, 60, 61, 85, 52, 82, 69, 59, 64, 58, 58, 73, 72, 74, 44, 62, 71, 59, 92, 67, 95, 66, 67, 53, 56, 66, 66, 60, 81, 79, 72, 69, 64, 70, 54, 53, 61, 66, 63, 52, 64, 64, 76, 73, 61, 77, 61, 60, 62, 54, 71, 64, 59, 67, 59, 65, 61, 81, 58, 68, 70, 63, 73, 65, 61, 66, 65, 62, 83, 77, 54, 59, 51, 56, 94, 75, 70, 56, 67, 73, 69, 53, 63, 56, 80, 51, 64, 42, 61, 57, 66, 71, 75, 58, 93, 76, 55, 51, 75, 63, 59, 62, 65, 70, 65, 86, 64, 67, 64, 77, 62, 101, 61, 58, 86, 87, 56, 60, 52, 54, 51, 48, 70, 74, 62, 84, 54, 61, 85, 74, 53, 62, 60, 57, 65, 67, 51, 58, 57, 58, 82, 60, 70, 59, 61, 61, 55, 76, 78, 62, 51, 82, 80, 53, 57, 85, 58, 63, 65, 92, 89, 84, 61, 52, 70, 44, 74, 65, 61, 62, 62, 60, 64, 54, 57, 84, 74, 61, 60, 56, 67, 61, 67, 68, 51, 46, 57, 57, 73, 65, 76, 56, 64, 64, 65, 64, 73, 54, 56, 70, 89, 74, 66, 60, 69, 64, 70, 56, 55, 71, 75, 54, 58, 76, 68, 62, 59, 90, 62, 68, 66, 67, 55, 44, 75, 57, 64, 91, 53, 74, 67, 67, 60, 58, 54, 131, 67, 65, 57, 55, 62, 59, 63, 58, 59, 68, 60, 62, 58, 69, 73, 74, 55, 61, 68, 56, 72, 71, 57, 56, 65, 64, 61, 79, 59, 72, 61, 104, 72, 58, 65, 53, 66, 71, 62, 62, 59, 61, 57, 50, 62, 67, 61, 59, 72, 59, 72, 73, 51, 69, 48, 61, 97, 58, 70, 68, 62, 56, 62, 65, 63, 70, 63, 65, 64, 66, 72, 66, 58, 64, 69, 53, 80, 56, 66, 51, 75, 59, 62, 65, 95, 57, 63, 62, 66, 63, 68, 65, 73, 97, 70, 66, 58, 100, 68, 53, 54, 67, 59, 79, 55, 59, 51, 62, 56, 97, 66, 45, 79, 66, 60, 68, 63, 90, 63, 62, 56, 64, 56, 61, 52, 59, 65, 60, 64, 65, 75, 64, 75, 107, 99, 67, 66, 61, 61, 66, 59, 64, 54, 69, 56, 76, 58, 61, 70, 55, 55, 55, 52, 91, 90, 56, 82, 80, 82, 68, 69, 61, 68, 53, 57, 66, 74, 57, 57, 86, 66, 54, 77, 70, 61, 60, 58, 62, 75, 64, 51, 65, 61, 70, 66, 64, 73, 57, 60, 59, 59, 70, 66, 72, 69, 69, 52, 64, 62, 54, 64, 77, 54, 67, 62, 60, 69, 67, 78, 68, 53, 65, 63, 60, 57, 63, 58, 74, 64, 71, 55, 68, 61, 58, 58, 63, 55, 60, 59, 74, 75, 67, 75, 64, 68, 50, 59, 63, 58, 56, 143, 54, 63, 66, 82, 52, 61, 65, 85, 71, 59, 61, 70, 56, 106, 43, 63, 81, 81, 92, 75, 58, 90, 60, 70, 69, 75, 95, 57, 56, 57, 90, 66, 70, 84, 50, 58, 63, 84, 70, 76, 60, 67, 62, 59, 45, 70, 59, 89, 56, 62, 53, 63, 49, 69, 60, 76, 55, 55, 60, 43, 85, 55, 40, 79, 65, 65, 65, 43, 52, 61, 59, 67, 64, 78, 63, 71, 74, 54, 63, 57, 54, 100, 66, 68, 71, 67, 67, 66, 93, 77, 67, 80, 49, 86, 74, 58, 52, 50, 82, 55, 65, 59, 73, 57, 82, 59, 69, 55, 90, 64, 80, 57, 60, 61, 59, 82, 68, 68, 70, 76, 67, 86, 67, 66, 56, 74, 68, 55, 112, 58, 79, 60, 74, 59, 61, 59, 74, 61, 53, 76, 72, 101, 69, 56, 73, 60, 70, 66, 53, 65, 65, 65, 116, 67, 53, 58, 56, 65, 67, 73, 71, 73, 81, 64, 67, 66, 53, 60, 73, 67, 67, 56, 50, 61, 50, 71, 87, 70, 56, 122, 57, 82, 64, 66, 67, 65, 47, 91, 61, 59, 67, 61, 60, 62, 78, 52, 64, 56, 70, 66, 76, 44, 63, 70, 53, 48, 49, 82, 61, 45, 74, 77, 60, 51, 61, 118, 56, 52, 65, 66, 86, 55, 66, 52, 61, 55, 65, 59, 56, 71, 61, 55, 60, 56, 61, 68, 58, 82, 64, 66, 60, 57, 130, 68, 77, 62, 65, 81, 65, 73, 62, 45, 83, 64, 73, 69, 54, 89, 56, 70, 60, 71, 54, 56, 65, 68, 86, 84, 87, 59, 64, 64, 62, 63, 71, 70, 75, 66, 55, 67, 62, 55, 64, 60, 58, 73, 67, 63, 58, 60, 87, 68, 51, 70, 64, 68, 60, 60, 66, 77, 88, 76, 56, 74, 81, 63, 55, 64, 83, 81, 57, 75, 62, 67, 63, 61, 63, 53, 57, 58, 70, 64, 58, 55, 59, 56, 62, 84, 71, 65, 56, 78, 55, 61, 60, 67, 61, 51, 67, 60, 90, 65, 71, 82, 67, 65, 63, 61, 59, 66, 73, 69, 66, 101, 64, 55, 54, 72, 67, 53, 59, 83, 76, 63, 83, 60, 59, 54, 57, 68, 54, 74, 69, 54, 57, 59, 68, 69, 87, 61, 63, 65, 70, 65, 67, 60, 60, 73, 60, 60, 84, 61, 57, 73, 57, 52, 69, 68, 64, 67, 57, 75, 60, 57, 55, 62, 68, 56, 64, 68, 108, 65, 60, 60, 56, 61, 101, 70, 59, 62, 56, 65, 69, 63, 64, 52, 63, 68, 62, 54, 71, 60, 78, 64, 57, 59, 62, 96, 99, 69, 60, 83, 64, 74, 56, 72, 47, 57, 58, 53, 60, 69, 74, 60, 82, 59, 68, 74, 63, 57, 71, 57, 69, 58, 82, 62, 70, 61, 83, 69, 52, 61, 60, 62, 65, 57, 116, 61, 56, 59, 78, 75, 61, 78, 58, 92, 72, 61, 51, 55, 70, 84, 57, 39, 71, 65, 50, 74, 56, 54, 58, 102, 53, 59, 72, 59, 74, 57, 136, 55, 57, 74, 69, 57, 50, 59, 45, 65, 47, 69, 57, 50, 85, 67, 62, 61, 84, 99, 102, 44, 77, 65, 55, 61, 62, 74, 79, 49, 87, 84, 73, 70, 56, 89, 54, 86, 51, 63, 55, 58, 62, 102, 50, 67, 50, 69, 96, 65, 89, 79, 76, 64, 82, 58, 43, 23, 81, 67, 81, 76, 59, 98, 56, 67, 51, 52, 85, 69, 62, 70, 57, 44, 68, 62, 70, 60, 72, 81, 55, 87, 45, 66, 67, 61, 85, 58, 51, 73, 54, 94, 69, 77, 52, 57, 66, 58, 60, 34, 51, 78, 60, 51, 71, 60, 60, 72, 76, 55, 85, 92, 64, 57, 43, 68, 63, 94, 87, 69, 53, 39, 58, 57, 54, 50, 105, 60, 67, 53, 50, 64, 71, 59, 85, 44, 60, 93, 48, 63, 96, 81, 75, 63, 55, 51, 64, 60, 67, 81, 84, 72, 68, 54, 51, 61, 66, 56, 53, 54, 92, 91, 71, 54, 55, 61, 56, 53, 48, 81, 68, 112, 61, 60, 52, 64, 57, 52, 69, 56, 65, 67, 63, 68, 59, 77, 84, 60, 75, 50, 61, 73, 48, 55, 83, 44, 55, 57, 58, 64, 106, 60, 75, 49, 60, 66, 56, 66, 62, 68, 65, 69, 80, 56, 55, 54, 54, 47, 78, 41, 65, 52, 58, 86, 64, 62, 55, 61, 109, 102, 50, 65, 60, 40, 58, 52, 65, 66, 48, 70, 77, 67, 61, 64, 69, 56, 68, 51, 54, 70, 59, 31, 67, 55, 89, 62, 88, 54, 50, 57, 84, 100, 48, 76, 64, 50, 72, 67, 82, 68, 63, 62, 62, 72, 73, 67, 58, 66, 66, 65, 68, 53, 72, 84, 66, 48, 60, 62, 53, 65, 77, 61, 43, 56, 51, 41, 54, 51, 70, 58, 63, 61, 37, 43, 82, 133, 80, 52, 52, 67, 75, 80, 60, 59, 51, 68, 64, 95, 67, 53, 65, 62, 52, 66, 128, 76, 99, 58, 65, 60, 56, 43, 74, 66, 62, 71, 60, 71, 103, 53, 59, 90, 80, 73, 66, 68, 81, 57, 49, 74, 58, 75, 51, 61, 46, 64, 83, 80, 35, 57, 58, 46, 56, 69, 83, 63, 51, 71, 66, 64, 74, 58, 61, 86, 56, 43, 59, 54, 72, 97, 61, 73, 70, 51, 63, 102, 55, 73, 81, 57, 60, 92, 49, 64, 50, 39, 74, 57, 62, 71, 47, 71, 75, 72, 63, 59, 57, 52, 68, 113, 60, 60, 64, 88, 69, 56, 61, 72, 65, 70, 73, 57, 65, 52, 88, 88, 64, 50, 103, 75, 59, 46, 86, 81, 55, 85, 49, 69, 39, 84, 80, 60, 57, 83, 62, 71, 45, 93, 60, 56, 89, 42, 62, 64, 68, 87, 62, 64, 59, 58, 59, 58, 60, 103, 58, 69, 79, 45, 65, 57, 54, 76, 61, 35, 76, 48, 49, 66, 59, 48, 37, 54, 84, 58, 44, 76, 57, 71, 52, 47, 37, 71, 87, 41, 54, 62, 78, 66, 75, 60, 64, 95, 67, 79, 106, 51, 61, 60, 65, 76, 57, 57, 61, 38, 44, 69, 65, 69, 61, 50, 65, 56, 42, 60, 60, 55, 57, 80, 62, 50, 80, 63, 41, 69, 48, 56, 62, 66, 72, 37, 52, 57, 83, 75, 70, 62, 94, 46, 77, 52, 72, 58, 78, 50, 55, 69, 57, 78, 68, 55, 71, 59, 85, 87, 62, 64, 72, 82, 64, 48, 55, 74, 70, 65, 91, 53, 68, 85, 54, 70, 66, 47, 67, 78, 68, 58, 70, 54, 57, 79, 56, 89, 59, 60, 51, 65, 63, 101, 46, 55, 96, 68, 49, 42, 67, 35, 46, 83, 55, 67, 54, 83, 51, 78, 72, 66, 66, 68, 58, 44, 76, 58, 68, 62, 64, 73, 84, 59, 37, 68, 66, 51, 72, 105, 62, 85, 52, 57, 46, 75, 44, 58, 79, 64, 95, 60, 109, 44, 48, 72, 65, 40, 53, 59, 60, 52, 77, 65, 90, 71, 70, 72, 67, 48, 71, 60, 81, 63, 65, 77, 58, 65, 81, 59, 74, 47, 85, 54, 74, 110, 62, 75, 70, 71, 58, 44, 46, 60, 75, 57, 43, 48, 80, 58, 75, 65, 55, 80, 59, 79, 83, 89, 69, 74, 50, 71, 81, 87, 56, 74, 59, 69, 73, 75, 68, 66, 46, 88, 68, 75, 58, 61, 55, 141, 61, 69, 60, 67, 58, 44, 56, 85, 54, 71, 69, 71, 55, 58, 62, 71, 58, 54, 82, 95, 51, 47, 53, 67, 56, 62, 67, 60, 58, 56, 74, 56, 110, 49, 74, 60, 44, 74, 68, 91, 65, 37, 77, 87, 61, 77, 54, 85, 46, 62, 44, 41, 77, 68, 73, 37, 62, 53, 105, 69, 70, 59, 77, 58, 71, 79, 56, 62, 86, 86, 107, 66, 71, 52, 54, 47, 61, 46, 65, 69, 47, 72, 90, 70, 64, 55, 69, 53, 51, 78, 105, 64, 46, 72, 52, 60, 72, 101, 103, 116, 80, 78, 52, 65, 59, 78, 68, 64, 84, 86, 64, 67, 72, 90, 55, 62, 59, 75, 79, 64, 67, 60, 60, 62, 69, 84, 81, 81, 60, 70, 79, 60, 109, 61, 64, 66, 54, 57, 67, 47, 64, 90, 72, 91, 79, 95, 52, 60, 39, 63, 81, 71, 81, 51, 73, 57, 115, 70, 52, 26, 64, 56, 59, 57, 68, 50, 54, 61, 63, 53, 53, 42, 42, 51, 85, 89, 39, 56, 45, 36, 67, 64, 89, 72, 86, 62, 40, 63, 71, 61, 59, 82, 112, 69, 56, 49, 57, 48, 70, 66, 69, 70, 83, 62, 68, 73, 52, 53, 76, 48, 59, 49, 66, 43, 63, 70, 51, 47, 68, 70, 67, 74, 36, 70, 75, 86, 90, 63, 74, 58, 51, 64, 65, 84, 77, 62, 54, 88, 92, 78, 49, 41, 68, 83, 65, 72, 68, 42, 48, 76, 59, 74, 57, 61, 67, 56, 86, 53, 62, 50, 46, 68, 51, 59, 50, 64, 63, 72, 56, 70, 65, 49, 59, 64, 112, 114, 41, 78, 88, 138, 60, 55, 94, 81, 56, 80, 97, 75, 70, 65, 64, 56, 61, 57, 51, 69, 53, 71, 46, 69, 52, 68, 59, 63, 88, 80, 62, 87, 63, 58, 79, 91, 71, 54, 65, 46, 70, 63, 47, 58, 45, 87, 60, 89, 58, 64, 72, 82, 37, 58, 100, 56, 64, 80, 88, 47, 58, 47, 52, 53, 57, 73, 46, 48, 57, 60, 58, 56, 45, 62, 66, 59, 85, 66, 67, 68, 57, 57, 60, 61, 73, 47, 60, 53, 67, 67, 67, 58, 56, 62, 100, 67, 71, 67, 59, 70, 57, 66, 60, 54, 131, 56, 118, 70, 57, 79, 53, 56, 65, 52, 66, 64, 56, 59, 59, 52, 85, 63, 57, 56, 56, 58, 58, 47, 144, 54, 82, 48, 63, 67, 66, 99, 49, 99, 85, 58, 54, 73, 65, 68, 83, 77, 66, 64, 93, 55, 56, 60, 106, 60, 45, 68, 55, 73, 61, 63, 66, 88, 68, 62, 63, 67, 68, 90, 52, 60, 63, 53, 63, 49, 76, 70, 47, 63, 60, 76, 73, 76, 119, 101, 58, 69, 83, 127, 75, 63, 52, 43, 74, 69, 62, 53, 61, 47, 91, 65, 65, 63, 70, 77, 63, 61, 68, 43, 55, 89, 64, 67, 63, 68, 63, 81, 49, 75, 55, 73, 85, 57, 62, 57, 59, 73, 73, 51, 54, 62, 51, 49, 61, 42, 77, 53, 61, 88, 50, 63, 59, 61, 63, 65, 54, 85, 87, 107, 45, 71, 72, 55, 100, 74, 59, 90, 78, 64, 59, 92, 57, 82, 62, 68, 67, 83, 56, 63, 60, 65, 63, 61, 73, 68, 67, 56, 82, 65, 74, 55, 46, 56, 79, 58, 58, 64, 59, 70, 55, 86, 75, 58, 81, 50, 60, 86, 70, 68, 67, 101, 64, 53, 65, 60, 101, 54, 74, 64, 58, 67, 61, 59, 54, 70, 79, 66, 111, 68, 47, 103, 57, 65, 41, 60, 70, 63, 59, 65, 73, 62, 64, 65, 74, 58, 119, 90, 53, 62, 56, 49, 59, 69, 70, 73, 54, 75, 80, 72, 59, 61, 75, 76, 118, 57, 70, 63, 65, 72, 59, 64, 65, 60, 74, 98, 67, 66, 65, 53, 60, 60, 76, 59, 64, 65, 56, 56, 74, 64, 66, 70, 58, 79, 62, 74, 133, 64, 56, 62, 66, 57, 70, 55, 66, 60, 75, 70, 63, 68, 39, 64, 58, 70, 51, 56, 61, 58, 63, 63, 68, 69, 79, 64, 57, 58, 66, 71, 60, 40, 69, 93, 58, 62, 57, 58, 89, 65, 53, 57, 67, 61, 55, 66, 68, 56, 72, 80, 65, 60, 66, 73, 45, 69, 68, 57, 52, 53, 66, 47, 62, 63, 66, 52, 61, 60, 61, 54, 66, 79, 57, 93, 62, 58, 64, 63, 57, 67, 76, 67, 65, 70, 62, 82, 61, 55, 75, 58, 65, 66, 59, 53, 61, 67, 68, 105, 54, 87, 78, 53, 56, 65, 67, 42, 62, 57, 52, 57, 130, 86, 92, 85, 60, 59, 86, 66, 63, 60, 71, 57, 69, 47, 64, 78, 58, 71, 82, 53, 80, 76, 67, 82, 60, 53, 63, 70, 80, 69, 68, 51, 64, 68, 125, 66, 70, 62, 58, 70, 60, 63, 105, 57, 58, 58, 65, 75, 66, 69, 59, 46, 62, 75, 67, 60, 58, 71, 58, 76, 98, 70, 61, 58, 74, 60, 52, 71, 58, 76, 52, 120, 66, 58, 44, 50, 54, 49, 40, 71, 50, 78, 84, 72, 64, 58, 54, 56, 78, 60, 42, 60, 77, 62, 100, 70, 62, 62, 65, 63, 74, 66, 90, 58, 70, 88, 54, 69, 67, 70, 66, 101, 60, 62, 53, 51, 66, 92, 77, 71, 51, 76, 74, 58, 72, 72, 65, 47, 55, 66, 76, 49, 60, 87, 73, 48, 58, 86, 88, 40, 64, 47, 76, 83, 53, 49, 58, 43, 61, 74, 65, 60, 62, 58, 67, 60, 62, 63, 80, 60, 59, 76, 59, 57, 51, 78, 47, 65, 52, 51, 57, 46, 69, 62, 66, 48, 54, 55, 68, 47, 76, 73, 75, 72, 56, 68, 90, 66, 68, 81, 56, 53, 48, 33, 84, 55, 58, 57, 58, 96, 55, 65, 55, 59, 55, 103, 62, 54, 50, 54, 58, 62, 75, 63, 55, 68, 50, 57, 64, 85, 79, 81, 66, 54, 38, 61, 66, 51, 60, 66, 68, 84, 52, 70, 58, 66, 62, 107, 80, 83, 71, 55, 62, 94, 67, 57, 55, 67, 80, 62, 60, 76, 61, 64, 75, 76, 60, 68, 72, 54, 107, 91, 66, 77, 52, 67, 67, 73, 68, 50, 59, 46, 72, 61, 52, 68, 56, 63, 62, 56, 63, 66, 78, 56, 77, 68, 57, 51, 62, 52, 58, 51, 58, 51, 62, 90, 65, 43, 55, 123, 116, 72, 61, 68, 54, 60, 61, 64, 65, 55, 64, 60, 79, 62, 58, 63, 62, 60, 42, 74, 54, 64, 76, 69, 58, 70, 75, 70, 57, 56, 51, 69, 78, 72, 56, 68, 83, 63, 78, 52, 78, 67, 57, 70, 66, 63, 51, 63, 75, 69, 62, 68, 81, 77, 83, 61, 35, 61, 51, 49, 63, 57, 57, 54, 52, 54, 47, 107, 59, 54, 62, 63, 60, 56, 74, 52, 43, 62, 53, 56, 66, 60, 69, 58, 56, 50, 129, 62, 69, 63, 73, 53, 58, 59, 78, 65, 88, 57, 57, 50, 68, 55, 81, 63, 95, 61, 57, 67, 72, 66, 51, 58, 46, 63, 59, 61, 67, 75, 61, 91, 70, 46, 73, 65, 59, 46, 84, 69, 68, 52, 56, 66, 60, 56, 61, 105, 76, 66, 50, 74, 86, 61, 93, 58, 73, 71, 53, 58, 56, 58, 56, 70, 66, 55, 60, 70, 60, 84, 56, 59, 79, 59, 64, 60, 52, 51, 59, 64, 61, 73, 68, 69, 74, 73, 64, 82, 83, 67, 58, 62, 88, 75, 50, 59, 56, 66, 50, 51, 63, 54, 95, 53, 68, 58, 61, 71, 69, 70, 58, 103, 66, 55, 56, 64, 60, 66, 78, 49, 72, 54, 90, 63, 69, 40, 53, 63, 57, 74, 76, 68, 65, 95, 54, 85, 55, 51, 63, 51, 66, 61, 56, 50, 58, 64, 70, 74, 60, 47, 110, 55, 72, 75, 51, 50, 64, 67, 71, 65, 51, 80, 58, 55, 54, 69, 76, 79, 70, 77, 75, 70, 88, 58, 63, 86, 65, 58, 68, 81, 87, 106, 67, 60, 57, 70, 78, 66, 72, 63, 68, 84, 61, 60, 65, 63, 50, 73, 103, 64, 51, 139, 79, 70, 62, 81, 97, 55, 64, 64, 59, 87, 59, 65, 59, 74, 56, 74, 77, 77, 57, 83, 97, 91, 61, 73, 52, 57, 55, 95, 74, 52, 66, 63, 52, 114, 73, 60, 91, 72, 59, 73, 67, 67, 54, 74, 69, 71, 58, 64, 69, 59, 63, 64, 70, 55, 66, 64, 51, 51, 83, 62, 42, 66, 69, 69, 62, 52, 90, 53, 49, 55, 124, 71, 43, 91, 52, 112, 52, 71, 71, 48, 79, 50, 51, 42, 55, 73, 111, 70, 75, 58, 55, 70, 67, 70, 55, 87, 73, 59, 53, 73, 63, 47, 39, 85, 81, 92, 61, 53, 83, 56, 62, 37, 63, 61, 49, 88, 63, 62, 53, 63, 58, 59, 81, 67, 68, 42, 95, 44, 59, 68, 70, 60, 48, 64, 50, 78, 76, 76, 72, 64, 59, 63, 61, 45, 51, 83, 64, 74, 48, 57, 56, 72, 73, 54, 61, 65, 71, 53, 70, 62, 54, 71, 81, 64, 91, 65, 69, 67, 50, 61, 51, 54, 65, 60, 80, 101, 56, 58, 54, 50, 58, 69, 79, 47, 66, 76, 79, 62, 56, 86, 75, 61, 47, 66, 64, 55, 68, 85, 59, 66, 64, 60, 56, 64, 72, 64, 57, 59, 74, 80, 88, 100, 78, 48, 64, 62, 67, 49, 65, 73, 80, 56, 62, 78, 75, 86, 51, 53, 107, 80, 64, 101, 62, 82, 52, 67, 78, 47, 49, 54, 60, 42, 61, 56, 79, 81, 60, 57, 54, 59, 55, 153, 82, 57, 47, 84, 63, 71, 71, 98, 41, 63, 64, 71, 71, 64, 49, 76, 60, 57, 76, 57, 79, 94, 70, 47, 51, 65, 80, 84, 64, 54, 59, 64, 76, 65, 75, 61, 79, 56, 62, 68, 54, 60, 62, 60, 48, 75, 60, 62, 58, 48, 71, 67, 64, 73, 65, 86, 73, 63, 52, 44, 76, 96, 76, 77, 62, 55, 53, 65, 58, 35, 59, 66, 73, 59, 52, 61, 72, 80, 49, 93, 61, 55, 70, 68, 60, 65, 47, 66, 58, 59, 85, 55, 56, 64, 56, 65, 60, 76, 64, 58, 56, 77, 119, 47, 64, 69, 61, 80, 44, 53, 57, 76, 64, 62, 58, 35, 61, 67, 89, 79, 66, 55, 51, 59, 81, 67, 63, 62, 69, 76, 82, 46, 103, 60, 72, 56, 90, 54, 86, 65, 69, 67, 55, 69, 47, 72, 57, 79, 70, 61, 50, 60, 64, 66, 61, 81, 68, 48, 75, 65, 118, 74, 69, 47, 71, 51, 65, 52, 72, 77, 91, 50, 68, 42, 63, 74, 71, 61, 69, 97, 65, 68, 63, 94, 73, 55, 73, 77, 41, 72, 80, 51, 64, 60, 68, 72, 76, 65, 75, 63, 65, 70, 60, 56, 80, 72, 43, 42, 60, 80, 64, 55, 58, 54, 60, 63, 82, 82, 61, 58, 60, 65, 79, 63, 68, 107, 80, 59, 59, 69, 76, 68, 67, 68, 70, 53, 58, 100, 60, 69, 66, 69, 71, 80, 73, 74, 61, 48, 71, 73, 81, 77, 65, 68, 63, 81, 74, 68, 98, 41, 62, 69, 59, 55, 64, 59, 69, 69, 83, 76, 56, 51, 72, 53, 55, 74, 67, 73, 64, 57, 74, 61, 51, 60, 78, 55, 72, 70, 81, 72, 63, 60, 85, 55, 61, 49, 53, 81, 57, 66, 44, 61, 60, 54, 64, 53, 62, 82, 64, 72, 36, 52, 104, 65, 60, 76, 67, 57, 90, 55, 69, 61, 83, 139, 61, 61, 98, 67, 41, 64, 69, 58, 67, 61, 63, 56, 64, 62, 73, 87, 108, 69, 75, 61, 59, 79, 57, 74, 59, 64, 48, 54, 62, 69, 63, 58, 79, 65, 65, 64, 50, 72, 84, 84, 70, 68, 73, 84, 37, 42, 61, 59, 52, 69, 64, 53, 59, 58, 116, 133, 68, 67, 74, 57, 43, 68, 66, 65, 44, 87, 60, 67, 78, 93, 65, 53, 77, 52, 60, 73, 59, 48, 67, 74, 77, 74, 41, 43, 68, 52, 71, 63, 54, 70, 60, 54, 71, 51, 54, 46, 71, 72, 49, 75, 49, 85, 61, 74, 64, 70, 59, 67, 77, 70, 66, 81, 87, 61, 71, 68, 61, 63, 49, 60, 72, 63, 76, 47, 81, 50, 54, 51, 60, 77, 59, 44, 53, 64, 57, 67, 47, 56, 63, 92, 58, 63, 76, 62, 93, 54, 64, 63, 70, 72, 67, 52, 89, 67, 67, 63, 58, 66, 45, 67, 54, 72, 74, 52, 54, 70, 51, 51, 46, 57, 105, 60, 57, 60, 105, 79, 63, 70, 55, 89, 72, 43, 90, 81, 65, 67, 59, 53, 72, 54, 56, 63, 106, 112, 75, 70, 59, 60, 69, 72, 65, 66, 74, 77, 62, 76, 61, 51, 88, 59, 65, 56, 64, 56, 41, 65, 41, 90, 87, 49, 89, 66, 92, 55, 70, 62, 48, 65, 65, 87, 53, 67, 63, 63, 53, 56, 71, 58, 51, 53, 53, 64, 79, 68, 83, 67, 50, 60, 74, 48, 68, 55, 63, 88, 72, 70, 91, 58, 58, 60, 91, 79, 46, 103, 66, 56, 35, 70, 67, 61, 74, 53, 73, 69, 54, 58, 63, 63, 73, 87, 62, 63, 56, 68, 60, 48, 63, 39, 89, 55, 107, 64, 55, 60, 61, 57, 76, 76, 52, 47, 55, 85, 75, 75, 52, 52, 69, 68, 48, 52, 67, 61, 91, 75, 57, 47, 54, 71, 44, 66, 65, 56, 74, 54, 82, 56, 115, 76, 68, 64, 65, 46, 61, 65, 63, 89, 62, 65, 61, 49, 62, 83, 69, 78, 70, 48, 57, 61, 48, 74, 87, 76, 62, 65, 68, 75, 64, 66, 71, 61, 63, 60, 66, 86, 68, 72, 93, 83, 97, 62, 70, 70, 51, 46, 80, 50, 67, 76, 74, 64, 110, 69, 45, 52, 60, 57, 63, 68, 48, 67, 48, 68, 64, 72, 93, 79, 93, 56, 70, 97, 73, 43, 69, 68, 71, 74, 59, 66, 64, 60, 85, 86, 60, 54, 54, 52, 53, 93, 58, 57, 54, 53, 73, 64, 75, 56, 61, 75, 77, 97, 66, 57, 102, 85, 83, 60, 51, 61, 68, 46, 72, 43, 81, 62, 85, 83, 61, 60, 64, 67, 75, 49, 60, 68, 50, 72, 55, 78, 66, 63, 56, 54, 62, 84, 71, 56, 59, 52, 69, 71, 78, 71, 71, 52, 56, 66, 66, 72, 70, 57, 103, 63, 77, 60, 63, 77, 80, 82, 58, 57, 70, 58, 72, 68, 54, 71, 76, 110, 65, 43, 70, 58, 82, 65, 67, 60, 58, 62, 72, 65, 59, 77, 85, 61, 64, 67, 64, 89, 62, 71, 66, 59, 73, 74, 60, 65, 60, 66, 57, 66, 57, 75, 47, 81, 57, 85, 66, 60, 73, 63, 55, 58, 64, 64, 67, 44, 72, 71, 75, 69, 84, 67, 86, 71, 67, 82, 61, 50, 79, 51, 69, 49, 61, 93, 57, 43, 73, 70, 80, 57, 60, 108, 54, 64, 64, 58, 77, 61, 49, 56, 77, 79, 68, 66, 82, 58, 101, 52, 67, 77, 66, 63, 71, 78, 68, 74, 61, 82, 57, 61, 59, 70, 75, 55, 51, 71, 81, 57, 72, 77, 59, 63, 53, 59, 62, 62, 83, 82, 56, 90, 65, 66, 62, 65, 46, 94, 67, 72, 73, 63, 62, 47, 88, 64, 63, 61, 73, 64, 72, 57, 63, 72, 61, 54, 80, 61, 77, 74, 41, 76, 50, 65, 66, 58, 73, 60, 62, 33, 61, 69, 44, 65, 75, 63, 59, 67, 66, 53, 53, 69, 64, 91, 69, 60, 52, 75, 60, 57, 79, 58, 69, 86, 57, 67, 86, 62, 62, 75, 63, 78, 56, 64, 77, 53, 58, 73, 75, 65, 57, 74, 78, 64, 58, 65, 79, 61, 64, 56, 43, 60, 76, 102, 58, 60, 68, 36, 53, 71, 66, 79, 73, 95, 62, 60, 67, 60, 70, 80, 60, 78, 49, 44, 46, 78, 53, 82, 63, 53, 70, 76, 67, 59, 47, 57, 62, 70, 77, 51, 62, 76, 81, 66, 60, 47, 55, 49, 60, 85, 148, 60, 65, 62, 44, 56, 99, 71, 71, 80, 70, 64, 94, 70, 52, 72, 51, 59, 73, 71, 57, 57, 49, 106, 67, 90, 92, 99, 69, 64, 66, 59, 94, 66, 74, 98, 42, 83, 80, 57, 57, 93, 68, 70, 60, 85, 49, 70, 57, 59, 72, 64, 68, 78, 65, 54, 57, 63, 65, 54, 61, 65, 67, 65, 43, 58, 65, 67, 75, 58, 60, 46, 69, 74, 60, 64, 87, 51, 74, 89, 50, 59, 59, 67, 64, 66, 55, 69, 62, 63, 64, 81, 72, 56, 58, 85, 61, 57, 79, 59, 58, 69, 57, 71, 75, 66, 63, 57, 77, 77, 57, 73, 58, 64, 63, 67, 74, 83, 51, 68, 55, 68, 61, 73, 64, 58, 49, 59, 67, 54, 52, 65, 60, 57, 45, 61, 62, 64, 67, 59, 68, 65, 58, 62, 58, 77, 76, 69, 67, 92, 54, 89, 99, 54, 62, 60, 52, 48, 71, 61, 73, 67, 68, 58, 65, 84, 51, 56, 60, 66, 82, 67, 47, 69, 75, 64, 46, 62, 65, 80, 66, 65, 53, 82, 58, 55, 62, 51, 51, 60, 52, 58, 59, 60, 69, 59, 75, 63, 73, 61, 57, 61, 68, 63, 56, 54, 63, 68, 65, 47, 67, 74, 94, 54, 67, 64, 86, 51, 64, 104, 63, 57, 67, 40, 81, 108, 46, 74, 62, 71, 60, 60, 76, 98, 61, 78, 75, 112, 58, 60, 51, 63, 74, 77, 66, 49, 66, 49, 89, 57, 55, 65, 49, 56, 60, 59, 55, 65, 78, 74, 74, 42, 73, 58, 68, 58, 66, 76, 69, 85, 57, 67, 66, 53, 74, 55, 74, 69, 58, 75, 58, 49, 74, 74, 60, 74, 80, 64, 63, 72, 66, 71, 74, 55, 60, 63, 59, 53, 59, 56, 75, 68, 87, 81, 71, 62, 69, 64, 79, 68, 72, 61, 54, 74, 66, 79, 69, 52, 56, 61, 53, 56, 55, 61, 71, 68, 72, 53, 59, 72, 80, 65, 49, 63, 65, 58, 68, 65, 56, 74, 72, 80, 57, 71, 61, 47, 92, 58, 75, 96, 65, 70, 76, 70, 38, 71, 66, 68, 65, 70, 59, 82, 66, 66, 95, 54, 64, 69, 50, 58, 62, 65, 36, 72, 70, 87, 50, 76, 43, 69, 52, 50, 67, 72, 66, 59, 81, 51, 63, 60, 54, 55, 81, 56, 64, 81, 83, 69, 56, 77, 66, 54, 93, 59, 62, 52, 74, 72, 38, 73, 58, 79, 73, 60, 60, 76, 49, 73, 57, 58, 62, 63, 71, 55, 61, 60, 70, 57, 71, 66, 65, 43, 69, 54, 75, 59, 66, 64, 73, 111, 62, 68, 69, 62, 42, 60, 74, 104, 59, 59, 60, 52, 47, 63, 62, 50, 62, 82, 61, 64, 58, 80, 101, 42, 57, 68, 50, 60, 59, 64, 85, 44, 72, 56, 63, 64, 77, 66, 61, 51, 70, 53, 56, 56, 56, 65, 56, 69, 71, 54, 59, 79, 53, 71, 61, 66, 51, 71, 62, 72, 98, 76, 89, 62, 52, 58, 75, 73, 56, 59, 62, 71, 74, 77, 49, 79, 56, 78, 45, 62, 70, 59, 40, 82, 81, 49, 52, 55, 82, 55, 66, 53, 70, 34, 62, 88, 69, 80, 68, 61, 68, 51, 74, 70, 51, 64, 65, 86, 56, 61, 59, 79, 53, 80, 70, 75, 61, 77, 45, 89, 64, 62, 43, 81, 76, 67, 67, 57, 56, 73, 93, 66, 57, 102, 53, 51, 63, 47, 58, 74, 71, 79, 70, 54, 60, 53, 77, 58, 74, 70, 45, 72, 64, 52, 71, 59, 144, 63, 76, 83, 48, 68, 62, 82, 56, 53, 48, 90, 108, 76, 64, 52, 54, 53, 71, 64, 55, 89, 55, 72, 51, 71, 65, 73, 73, 65, 56, 56, 61, 115, 62, 63, 65, 98, 67, 80, 73, 70, 75, 59, 65, 115, 59, 66, 55, 52, 57, 60, 60, 55, 55, 59, 93, 70, 50, 66, 48, 58, 69, 76, 51, 60, 73, 72, 78, 50, 61, 68, 63, 52, 77, 61, 39, 69, 76, 76, 60, 66, 57, 65, 77, 64, 66, 65, 90, 63, 82, 63, 64, 74, 70, 75, 55, 58, 56, 69, 67, 78, 73, 56, 73, 51, 64, 50, 78, 72, 56, 59, 55, 78, 73, 58, 53, 56, 89, 44, 46, 53, 70, 53, 42, 62, 70, 60, 59, 61, 62, 45, 57, 79, 58, 104, 60, 59, 53, 49, 57, 73, 68, 57, 70, 60, 64, 92, 54, 58, 76, 76, 89, 63, 75, 79, 60, 47, 63, 75, 50, 58, 68, 82, 75, 62, 50, 66, 55, 67, 70, 124, 73, 57, 57, 55, 59, 59, 53, 72, 68, 78, 67, 65, 59, 51, 63, 52, 60, 58, 51, 63, 62, 68, 56, 69, 77, 65, 64, 70, 60, 56, 66, 81, 79, 47, 75, 52, 76, 52, 57, 52, 54, 46, 84, 52, 68, 71, 72, 52, 54, 64, 57, 75, 45, 77, 115, 60, 65, 56, 59, 64, 75, 46, 84, 63, 64, 64, 65, 64, 70, 84, 59, 63, 50, 64, 41, 80, 50, 65, 52, 68, 59, 76, 59, 53, 77, 84, 62, 53, 67, 59, 68, 52, 82, 92, 73, 89, 79, 93, 57, 60, 40, 59, 43, 64, 70, 69, 72, 66, 69, 92, 64, 58, 58, 62, 65, 61, 41, 76, 50, 67, 58, 74, 66, 58, 69, 66, 53, 44, 60, 78, 56, 76, 48, 59, 56, 72, 49, 57, 47, 73, 107, 80, 61, 62, 55, 79, 67, 57, 83, 70, 61, 68, 50, 54, 46, 47, 59, 54, 77, 46, 43, 71, 89, 63, 89, 75, 56, 66, 69, 61, 64, 84, 68, 46, 90, 50, 74, 52, 53, 39, 70, 65, 69, 86, 66, 57, 82, 119, 68, 78, 53, 62, 58, 64, 66, 73, 69, 58, 68, 60, 59, 85, 55, 66, 73, 63, 69, 56, 60, 51, 59, 61, 78, 81, 74, 78, 67, 62, 65, 61, 62, 69, 58, 59, 77, 66, 63, 52, 78, 61, 65, 75, 72, 48, 62, 67, 60, 65, 71, 69, 69, 58, 81, 50, 121, 60, 59, 50, 65, 69, 65, 56, 53, 84, 97, 41, 64, 106, 37, 66, 62, 76, 62, 109, 86, 64, 55, 56, 68, 69, 70, 60, 46, 64, 76, 64, 57, 91, 52, 71, 87, 46, 63, 61, 61, 48, 94, 58, 69, 55, 112, 83, 73, 63, 59, 64, 63, 57, 63, 99, 62, 86, 51, 50, 90, 60, 65, 62, 53, 116, 145, 56, 68, 54, 99, 60, 43, 58, 78, 103, 63, 63, 75, 49, 71, 58, 59, 81, 66, 62, 86, 79, 57, 67, 74, 66, 60, 43, 68, 77, 85, 55, 88, 59, 60, 89, 47, 48, 102, 70, 75, 56, 41, 46, 64, 78, 67, 55, 70, 56, 59, 42, 78, 51, 63, 44, 62, 67, 61, 57, 77, 57, 74, 50, 47, 71, 71, 73, 49, 56, 56, 56, 59, 52, 54, 63, 59, 60, 53, 67, 79, 54, 61, 64, 59, 75, 54, 44, 62, 57, 72, 71, 53, 71, 65, 31, 70, 78, 64, 93, 61, 55, 89, 56, 72, 58, 86, 92, 70, 62, 59, 52, 44, 50, 58, 71, 67, 53, 75, 96, 53, 59, 68, 49, 61, 88, 73, 66, 59, 65, 75, 82, 64, 73, 68, 52, 59, 70, 70, 80, 66, 76, 77, 83, 66, 44, 63, 53, 80, 59, 63, 76, 67, 77, 70, 51, 59, 73, 59, 107, 53, 57, 56, 64, 84, 63, 53, 45, 66, 53, 49, 49, 53, 70, 56, 64, 63, 74, 84, 67, 58, 70, 80, 70, 52, 48, 39, 91, 72, 62, 61, 78, 63, 94, 71, 59, 62, 111, 68, 81, 49, 54, 60, 86, 75, 71, 97, 51, 78, 58, 119, 62, 75, 76, 73, 80, 74, 63, 53, 56, 50, 63, 61, 53, 61, 68, 55, 75, 71, 70, 78, 62, 62, 74, 65, 56, 84, 56, 59, 73, 78, 71, 50, 82, 60, 66, 64, 91, 68, 67, 95, 65, 77, 56, 78, 82, 63, 76, 83, 48, 74, 36, 112, 72, 55, 63, 62, 46, 58, 50, 86, 59, 68, 111, 49, 59, 89, 58, 59, 68, 59, 101, 46, 72, 83, 62, 69, 52, 65, 88, 69, 76, 56, 116, 53, 57, 64, 55, 61, 53, 58, 70, 83, 64, 51, 88, 49, 71, 47, 60, 70, 64, 58, 62, 49, 85, 57, 62, 55, 65, 60, 64, 59, 58, 57, 64, 78, 65, 55, 68, 62, 63, 81, 80, 53, 67, 66, 62, 101, 73, 65, 67, 71, 64, 83, 52, 63, 72, 57, 59, 69, 62, 50, 75, 70, 84, 64, 60, 59, 77, 61, 56, 136, 98, 63, 64, 59, 82, 53, 67, 70, 67, 83, 70, 62, 60, 56, 70, 61, 47, 57, 65, 49, 68, 67, 70, 67, 91, 59, 103, 59, 46, 59, 54, 58, 52, 46, 60, 100, 60, 65, 65, 65, 109, 50, 61, 63, 76, 58, 64, 77, 84, 71, 84, 56, 56, 43, 86, 78, 64, 76, 62, 63, 66, 57, 61, 58, 59, 57, 59, 62, 78, 65, 67, 61, 61, 54, 65, 65, 72, 69, 53, 68, 64, 50, 77, 69, 58, 84, 69, 72, 91, 69, 62, 74, 49, 64, 92, 62, 76, 97, 70, 79, 82, 63, 69, 67, 67, 98, 56, 63, 66, 59, 53, 69, 86, 60, 56, 83, 83, 59, 65, 67, 78, 65, 54, 103, 59, 48, 77, 77, 83, 72, 48, 83, 54, 69, 97, 62, 55, 67, 64, 43, 95, 71, 47, 60, 75, 56, 51, 48, 119, 72, 53, 77, 62, 65, 72, 50, 66, 55, 62, 87, 52, 65, 63, 72, 63, 77, 55, 62, 65, 62, 70, 90, 52, 78, 77, 50, 59, 109, 54, 74, 66, 70, 74, 66, 71, 64, 69, 60, 81, 60, 43, 67, 49, 46, 69, 54, 64, 65, 68, 71, 60, 68, 52, 72, 72, 67, 86, 70, 64, 62, 56, 61, 55, 122, 61, 87, 85, 58, 49, 66, 44, 77, 71, 75, 62, 70, 70, 56, 52, 84, 105, 59, 55, 72, 75, 64, 47, 71, 72, 63, 54, 62, 66, 59, 57, 67, 67, 68, 106, 60, 52, 50, 84, 66, 80, 106, 76, 66, 62, 82, 69, 39, 110, 81, 74, 50, 63, 80, 54, 60, 61, 71, 46, 69, 62, 66, 84, 55, 42, 67, 61, 98, 71, 51, 65, 65, 76, 45, 47, 87, 65, 83, 74, 55, 69, 80, 71, 49, 62, 60, 77, 89, 67, 58, 71, 53, 82, 57, 48, 47, 79, 48, 50, 66, 81, 40, 36, 67, 88, 72, 55, 69, 69, 62, 54, 43, 53, 52, 68, 87, 65, 66, 60, 57, 55, 71, 68, 51, 51, 58, 95, 44, 60, 83, 109, 57, 52, 96, 50, 67, 74, 48, 54, 95, 55, 56, 96, 78, 37, 62, 76, 75, 29, 69, 103, 50, 56, 88, 95, 49, 57, 61, 99, 65, 64, 61, 95, 92, 57, 90, 44, 48, 81, 68, 87, 86, 87, 38, 45, 80, 66, 74, 50, 50, 73, 60, 63, 92, 83, 59, 91, 57, 62, 103, 53, 50, 112, 55, 57, 77, 71, 69, 62, 65, 75, 76, 84, 79, 59, 55, 68, 61, 49, 76, 64, 77, 76, 50, 62, 67, 43, 85, 71, 90, 50, 77, 60, 67, 74, 62, 47, 47, 59, 47, 68, 66, 48, 83, 57, 61, 51, 66, 73, 75, 64, 52, 65, 65, 70, 54, 52, 110, 43, 84, 70, 59, 44, 50, 85, 56, 69, 51, 77, 40, 47, 68, 80, 95, 58, 58, 35, 60, 93, 61, 65, 73, 64, 58, 71, 48, 60, 64, 70, 60, 72, 69, 69, 70, 75, 74, 56, 76, 63, 50, 70, 58, 85, 47, 69, 62, 66, 65, 91, 49, 104, 57, 71, 54, 70, 47, 56, 72, 71, 47, 72, 57, 73, 48, 83, 86, 58, 57, 68, 81, 65, 38, 64, 53, 60, 68, 53, 68, 87, 69, 70, 56, 78, 73, 80, 76, 78, 51, 61, 65, 61, 59, 52, 56, 56, 64, 144, 76, 63, 59, 57, 81, 70, 55, 69, 66, 96, 62, 91, 78, 52, 64, 60, 56, 52, 73, 90, 110, 67, 76, 90, 59, 69, 59, 67, 66, 61, 111, 82, 65, 73, 63, 68, 48, 85, 70, 65, 97, 75, 58, 119, 101, 82, 60, 72, 96, 64, 154, 67, 68, 56, 66, 61, 60, 70, 49, 69, 45, 55, 74, 62, 37, 63, 95, 64, 82, 74, 62, 51, 55, 47, 60, 63, 71, 99, 65, 52, 42, 55, 82, 57, 60, 68, 69, 58, 56, 45, 80, 59, 48, 71, 47, 66, 67, 56, 45, 92, 70, 59, 68, 62, 55, 57, 60, 90, 67, 63, 57, 47, 73, 59, 74, 96, 61, 83, 56, 74, 65, 52, 56, 73, 52, 71, 56, 53, 63, 53, 65, 67, 54, 87, 70, 82, 47, 59, 58, 95, 73, 70, 57, 87, 46, 52, 74, 65, 64, 55, 67, 107, 86, 87, 46, 74, 119, 58, 52, 53, 60, 63, 68, 95, 55, 74, 70, 45, 55, 107, 47, 88, 47, 73, 72, 97, 68, 69, 92, 54, 59, 59, 58, 77, 64, 76, 62, 54, 52, 51, 38, 60, 74, 54, 57, 80, 73, 54, 81, 55, 53, 62, 54, 54, 57, 71, 63, 111, 69, 64, 44, 52, 62, 49, 89, 64, 62, 55, 69, 44, 54, 65, 69, 89, 60, 88, 52, 70, 64, 63, 65, 56, 55, 42, 66, 54, 54, 56, 53, 70, 54, 80, 51, 66, 69, 68, 68, 61, 48, 61, 74, 75, 60, 71, 66, 68, 58, 58, 60, 76, 58, 64, 61, 75, 40, 79, 62, 70, 39, 104, 53, 65, 53, 65, 71, 82, 38, 80, 74, 35, 68, 77, 64, 63, 65, 62, 75, 64, 65, 43, 70, 49, 28, 88, 65, 62, 60, 47, 48, 57, 72, 44, 71, 63, 89, 79, 64, 77, 52, 50, 68, 69, 68, 56, 119, 77, 64, 58, 59, 72, 61, 73, 62, 60, 67, 68, 62, 51, 72, 79, 54, 74, 52, 74, 46, 74, 76, 61, 45, 53, 63, 57, 55, 49, 107, 79, 107, 62, 45, 72, 70, 56, 81, 57, 89, 65, 69, 61, 61, 60, 59, 62, 85, 64, 52, 73, 58, 68, 63, 68, 52, 56, 53, 65, 87, 60, 61, 112, 54, 97, 62, 68, 73, 72, 80, 55, 83, 70, 92, 61, 97, 74, 79, 63, 61, 55, 47, 67, 63, 79, 62, 74, 53, 71, 70, 52, 48, 42, 52, 45, 60, 39, 57, 53, 79, 49, 60, 75, 62, 79, 73, 75, 62, 62, 64, 67, 41, 78, 69, 62, 62, 51, 49, 52, 61, 49, 62, 70, 71, 92, 121, 60, 112, 42, 57, 56, 68, 51, 82, 62, 53, 67, 75, 52, 47, 64, 67, 52, 135, 69, 55, 57, 78, 62, 77, 64, 44, 99, 63, 87, 73, 66, 57, 66, 54, 68, 67, 70, 76, 48, 71, 53, 60, 65, 75, 51, 72, 72, 59, 73, 62, 43, 72, 58, 66, 60, 54, 44, 51, 56, 61, 62, 67, 91, 74, 82, 34, 67, 49, 79, 56, 73, 82, 63, 75, 61, 44, 83, 89, 68, 95, 69, 97, 58, 56, 52, 63, 74, 36, 54, 51, 81, 110, 72, 60, 61, 48, 62, 65, 72, 109, 77, 41, 77, 105, 90, 72, 75, 73, 58, 63, 59, 54, 60, 81, 58, 75, 52, 57, 74, 59, 66, 67, 42, 89, 104, 50, 57, 69, 58, 67, 81, 62, 73, 71, 49, 74, 53, 99, 62, 49, 53, 71, 80, 72, 74, 49, 60, 77, 54, 63, 60, 56, 65, 63, 48, 60, 62, 67, 60, 73, 76, 83, 59, 68, 54, 48, 56, 77, 76, 72, 47, 66, 72, 79, 77, 57, 41, 63, 93, 62, 80, 65, 59, 65, 61, 75, 73, 60, 62, 77, 60, 63, 73, 80, 58, 69, 63, 80, 75, 74, 61, 80, 48, 59, 76, 81, 68, 58, 65, 51, 72, 63, 62, 57, 59, 46, 54, 58, 58, 63, 78, 51, 58, 64, 85, 51, 100, 47, 50, 61, 54, 82, 73, 52, 84, 70, 71, 56, 64, 100, 62, 70, 63, 69, 52, 63, 70, 66, 71, 53, 80, 65, 52, 58, 54, 54, 72, 61, 101, 60, 59, 82, 55, 59, 67, 79, 73, 80, 64, 85, 70, 61, 52, 61, 95, 73, 66, 80, 47, 70, 71, 74, 70, 77, 71, 57, 64, 64, 91, 57, 72, 58, 76, 53, 47, 56, 64, 65, 96, 67, 76, 84, 67, 50, 59, 63, 78, 61, 69, 78, 55, 70, 46, 86, 69, 57, 50, 61, 58, 64, 70, 76, 70, 63, 76, 59, 77, 79, 62, 61, 69, 64, 88, 74, 45, 79, 69, 100, 59, 72, 76, 74, 47, 82, 50, 68, 58, 76, 56, 109, 66, 63, 67, 60, 60, 105, 49, 66, 49, 70, 59, 67, 56, 61, 41, 58, 67, 67, 63, 93, 59, 66, 55, 42, 76, 64, 62, 53, 57, 62, 63, 48, 63, 42, 51, 80, 64, 75, 60, 73, 48, 63, 65, 78, 74, 55, 57, 90, 66, 79, 60, 65, 47, 55, 56, 76, 63, 77, 57, 55, 88, 55, 63, 54, 63, 74, 43, 61, 82, 77, 79, 73, 47, 81, 37, 53, 59, 59, 46, 61, 67, 60, 73, 81, 83, 63, 62, 76, 98, 40, 53, 108, 61, 62, 70, 74, 78, 74, 74, 57, 91, 67, 57, 62, 62, 45, 68, 60, 64, 52, 72, 60, 58, 77, 94, 56, 69, 101, 70, 65, 89, 71, 62, 56, 60, 78, 65, 85, 65, 48, 58, 55, 79, 81, 45, 67, 52, 55, 55, 58, 63, 49, 73, 106, 71, 72, 70, 55, 56, 43, 66, 74, 63, 65, 36, 68, 68, 55, 60, 57, 61, 57, 41, 49, 61, 68, 51, 71, 72, 62, 62, 76, 60, 52, 84, 49, 50, 46, 68, 85, 53, 61, 84, 55, 64, 62, 47, 66, 48, 88, 73, 50, 56, 45, 88, 66, 60, 96, 83, 67, 63, 69, 70, 57, 60, 61, 64, 51, 60, 66, 61, 75, 64, 84, 76, 51, 66, 82, 61, 63, 45, 68, 67, 79, 59, 32, 57, 84, 63, 66, 53, 80, 88, 71, 64, 80, 87, 71, 60, 46, 49, 61, 60, 45, 80, 90, 62, 55, 78, 68, 62, 61, 66, 61, 75, 74, 69, 69, 65, 68, 87, 55, 83, 61, 70, 49, 66, 60, 55, 92, 90, 49, 70, 42, 66, 57, 63, 49, 45, 81, 48, 98, 65, 52, 52, 55, 90, 49, 70, 77, 79, 67, 67, 64, 84, 59, 63, 56, 108, 82, 80, 89, 52, 73, 62, 76, 107, 66, 67, 80, 62, 60, 51, 109, 81, 76, 67, 100, 60, 69, 49, 62, 79, 54, 66, 58, 57, 48, 67, 67, 60, 61, 53, 52, 79, 42, 58, 40, 67, 43, 76, 67, 75, 47, 56, 63, 73, 60, 57, 67, 60, 60, 62, 73, 63, 75, 80, 87, 88, 64, 52, 80, 58, 78, 84, 48, 69, 80, 47, 60, 54, 78, 61, 66, 70, 57, 72, 69, 101, 73, 84, 59, 79, 51, 44, 63, 90, 85, 55, 74, 56, 83, 82, 96, 62, 58, 50, 76, 81, 69, 61, 74, 64, 75, 74, 88, 85, 45, 62, 73, 81, 71, 48, 61, 68, 66, 67, 40, 67, 76, 70, 78, 53, 74, 61, 63, 87, 55, 66, 83, 47, 69, 87, 84, 79, 69, 97, 72, 62, 48, 45, 67, 73, 64, 80, 68, 71, 69, 68, 49, 72, 52, 50, 66, 83, 56, 74, 69, 57, 63, 52, 67, 61, 45, 86, 74, 66, 51, 71, 65, 60, 63, 70, 63, 86, 73, 91, 61, 41, 64, 56, 69, 56, 58, 45, 65, 78, 53, 61, 57, 39, 48, 62, 107, 59, 61, 74, 50, 90, 59, 60, 62, 82, 103, 68, 65, 91, 62, 62, 66, 51, 74, 49, 67, 62, 52, 45, 60, 56, 83, 67, 85, 79, 62, 67, 72, 42, 74, 93, 48, 68, 80, 57, 65, 66, 51, 61, 66, 95, 77, 56, 63, 59, 89, 70, 45, 76, 71, 75, 50, 68, 64, 90, 68, 61, 63, 65, 52, 58, 46, 63, 54, 52, 43, 63, 62, 79, 75, 70, 51, 78, 69, 39, 46, 94, 67, 54, 61, 68, 53, 63, 82, 96, 67, 79, 71, 78, 73, 58, 51, 66, 64, 47, 74, 61, 71, 37, 83, 56, 58, 48, 56, 48, 92, 68, 62, 65, 61, 105, 49, 45, 56, 58, 55, 49, 52, 71, 84, 49, 74, 65, 90, 89, 63, 83, 64, 85, 73, 80, 63, 52, 111, 72, 81, 64, 121, 92, 54, 66, 70, 66, 55, 58, 82, 36, 64, 88, 85, 56, 102, 89, 53, 110, 59, 65, 70, 53, 71, 73, 62, 88, 59, 62, 69, 97, 64, 79, 59, 46, 77, 63, 89, 66, 55, 48, 82, 67, 62, 88, 62, 82, 55, 76, 65, 70, 69, 47, 81, 54, 61, 87, 56, 58, 75, 72, 67, 63, 98, 67, 55, 96, 60, 64, 62, 79, 63, 62, 58, 57, 63, 84, 52, 77, 64, 76, 58, 58, 80, 69, 64, 80, 57, 57, 85, 53, 77, 73, 55, 57, 84, 82, 60, 55, 85, 65, 58, 54, 79, 67, 57, 69, 45, 65, 51, 68, 78, 75, 59, 81, 53, 54, 60, 80, 59, 53, 81, 70, 55, 86, 62, 78, 47, 76, 55, 54, 67, 50, 77, 61, 60, 64, 61, 63, 67, 71, 61, 93, 54, 61, 73, 54, 65, 60, 68, 59, 78, 57, 60, 53, 54, 74, 110, 65, 65, 59, 65, 35, 75, 57, 65, 60, 74, 50, 59, 63, 66, 61, 60, 69, 56, 63, 65, 68, 76, 56, 77, 78, 62, 66, 45, 83, 72, 54, 54, 76, 65, 50, 86, 78, 47, 63, 63, 78, 62, 46, 64, 76, 109, 68, 84, 78, 65, 64, 63, 69, 62, 47, 71, 74, 67, 63, 63, 61, 79, 83, 72, 73, 70, 66, 58, 55, 68, 54, 59, 71, 65, 56, 103, 55, 53, 57, 62, 77, 67, 56, 79, 54, 76, 63, 70, 54, 84, 69, 61, 45, 70, 53, 53, 65, 62, 72, 84, 81, 67, 72, 78, 42, 57, 54, 103, 64, 54, 34, 46, 65, 53, 60, 52, 70, 57, 75, 71, 53, 65, 94, 77, 79, 77, 77, 87, 79, 48, 67, 59, 53, 97, 71, 66, 53, 73, 93, 38, 60, 49, 70, 52, 33, 37, 86, 83, 76, 61, 62, 51, 69, 74, 81, 70, 76, 76, 56, 64, 81, 60, 55, 65, 79, 70, 68, 78, 61, 47, 77, 39, 48, 70, 50, 70, 70, 80, 61, 84, 53, 49, 53, 80, 63, 34, 44, 105, 46, 54, 67, 62, 66, 70, 74, 67, 100, 95, 55, 76, 43, 87, 62, 46, 43, 98, 62, 93, 60, 58, 79, 71, 103, 46, 55, 54, 72, 55, 68, 84, 98, 49, 84, 65, 51, 53, 57, 60, 43, 61, 69, 85, 61, 60, 72, 52, 53, 76, 52, 71, 71, 56, 63, 53, 73, 67, 64, 69, 66, 65, 72, 42, 60, 51, 63, 70, 62, 122, 62, 50, 61, 46, 119, 99, 51, 71, 71, 68, 89, 74, 61, 47, 72, 52, 58, 95, 62, 72, 63, 63, 79, 61, 71, 92, 72, 90, 56, 69, 83, 67, 92, 83, 59, 40, 63, 53, 79, 62, 62, 56, 64, 53, 80, 65, 53, 73, 59, 109, 62, 60, 52, 94, 56, 42, 72, 67, 72, 53, 58, 44, 54, 66, 63, 54, 38, 111, 53, 72, 72, 63, 55, 57, 74, 59, 66, 50, 72, 65, 69, 82, 85, 94, 85, 63, 60, 74, 90, 88, 82, 71, 53, 61, 58, 67, 46, 85, 90, 56, 92, 59, 96, 58, 83, 69, 62, 53, 46, 60, 68, 69, 65, 66, 88, 76, 57, 50, 70, 106, 89, 97, 65, 78, 77, 62, 71, 121, 110, 66, 73, 60, 74, 67, 79, 78, 67, 77, 70, 55, 43, 68, 132, 85, 71, 150, 65, 72, 60, 85, 94, 37, 46, 86, 77, 68, 82, 97, 71, 41, 72, 62, 57, 58, 62, 93, 84, 90, 62, 84, 63, 55, 53, 105, 30, 49, 58, 60, 52, 103, 100, 63, 66, 80, 45, 52, 61, 74, 60, 49, 94, 85, 79, 58, 77, 62, 88, 74, 72, 77, 69, 50, 79, 68, 62, 81, 46, 56, 67, 57, 87, 71, 67, 84, 58, 65, 46, 57, 53, 66, 56, 67, 40, 47, 72, 56, 50, 74, 71, 56, 65, 77, 57, 46, 51, 82, 76, 73, 63, 39, 62, 35, 47, 59, 40, 64, 63, 114, 44, 58, 69, 60, 49, 69, 64, 79, 65, 63, 69, 78, 92, 73, 74, 84, 61, 48, 55, 48, 69, 58, 51, 98, 60, 80, 55, 56, 61, 53, 60, 70, 67, 61, 58, 63, 71, 48, 47, 63, 52, 72, 69, 53, 53, 74, 79, 52, 73, 42, 74, 72, 51, 51, 58, 68, 50, 88, 84, 57, 66, 57, 81, 58, 104, 61, 56, 37, 70, 93, 87, 60, 65, 58, 84, 80, 76, 79, 56, 53, 79, 76, 61, 80, 77, 77, 52, 60, 73, 49, 53, 78, 64, 93, 47, 62, 62, 91, 53, 55, 64, 53, 48, 89, 61, 59, 69, 61, 79, 55, 62, 70, 79, 54, 74, 73, 61, 53, 57, 59, 63, 57, 65, 66, 52, 66, 67, 78, 40, 69, 85, 63, 51, 60, 41, 72, 55, 77, 53, 72, 72, 53, 58, 81, 84, 49, 65, 75, 95, 50, 54, 73, 93, 57, 57, 70, 84, 61, 54, 59, 65, 72, 70, 97, 50, 79, 62, 63, 76, 76, 53, 49, 56, 44, 74, 39, 97, 63, 84, 63, 65, 72, 81, 65, 88, 68, 52, 40, 66, 52, 61, 68, 59, 76, 90, 43, 57, 74, 57, 69, 50, 56, 43, 59, 72, 76, 43, 63, 48, 71, 73, 70, 101, 61, 71, 60, 68, 64, 62, 47, 61, 54, 73, 58, 66, 68, 59, 39, 72, 70, 62, 56, 67, 63, 74, 60, 44, 50, 77, 70, 65, 60, 58, 89, 53, 83, 54, 65, 63, 46, 79, 75, 63, 99, 40, 78, 69, 53, 71, 68, 109, 87, 49, 55, 46, 48, 47, 63, 92, 64, 87, 77, 55, 67, 72, 60, 64, 51, 59, 44, 56, 74, 71, 81, 50, 101, 83, 67, 79, 70, 83, 95, 63, 65, 51, 69, 53, 54, 72, 59, 64, 69, 84, 34, 35, 69, 53, 68, 66, 38, 77, 78, 60, 86, 70, 53, 66, 78, 41, 108, 86, 61, 69, 69, 57, 71, 52, 64, 61, 56, 57, 61, 97, 75, 75, 61, 66, 65, 84, 62, 56, 57, 59, 59, 76, 59, 59, 58, 53, 89, 56, 68, 63, 59, 61, 90, 67, 78, 73, 53, 64, 66, 57, 67, 57, 63, 54, 59, 70, 47, 53, 80, 63, 74, 66, 52, 62, 60, 92, 81, 60, 53, 44, 45, 57, 66, 77, 76, 76, 54, 74, 121, 58, 50, 53, 48, 48, 75, 56, 59, 65, 78, 63, 61, 82, 69, 37, 68, 69, 84, 53, 74, 57, 75, 78, 61, 76, 57, 62, 48, 81, 62, 91, 82, 54, 53, 70, 65, 78, 70, 38, 50, 69, 57, 80, 71, 84, 50, 66, 92, 61, 60, 78, 53, 61, 71, 98, 105, 56, 57, 75, 78, 74, 46, 84, 78, 73, 69, 63, 43, 66, 55, 48, 79, 72, 59, 84, 61, 72, 68, 40, 69, 63, 62, 75, 50, 80, 69, 97, 81, 59, 68, 100, 41, 62, 60, 87, 54, 76, 53, 64, 67, 65, 54, 56, 48, 45, 68, 93, 56, 56, 96, 67, 71, 64, 87, 64, 59, 62, 77, 62, 64, 69, 134, 57, 48, 66, 70, 65, 68, 59, 63, 71, 84, 66, 80, 68, 99, 54, 75, 63, 84, 74, 56, 63, 64, 65, 62, 43, 120, 60, 60, 71, 51, 81, 56, 46, 65, 62, 62, 59, 56, 63, 62, 58, 101, 68, 61, 72, 64, 39, 67, 78, 52, 57, 57, 61, 83, 64, 77, 132, 92, 56, 72, 77, 51, 82, 53, 67, 50, 74, 100, 69, 57, 72, 60, 54, 54, 60, 42, 69, 50, 57, 61, 75, 92, 49, 60, 84, 47, 61, 80, 76, 71, 67, 73, 53, 72, 62, 61, 85, 59, 83, 70, 52, 67, 74, 85, 96, 53, 70, 60, 64, 62, 53, 68, 63, 56, 70, 50, 82, 59, 70, 90, 71, 59, 72, 39, 72, 75, 93, 54, 65, 59, 46, 75, 76, 76, 80, 73, 52, 65, 56, 64, 79, 73, 59, 48, 61, 118, 75, 48, 61, 69, 74, 61, 59, 79, 71, 72, 62, 70, 92, 58, 61, 54, 62, 59, 113, 60, 64, 63, 121, 73, 53, 79, 46, 63, 58, 70, 53, 67, 67, 55, 82, 47, 65, 46, 79, 62, 79, 59, 53, 73, 62, 63, 62, 84, 72, 53, 80, 68, 48, 77, 51, 77, 59, 75, 53, 71, 69, 59, 57, 63, 49, 48, 62, 72, 47, 63, 118, 68, 57, 74, 59, 82, 95, 58, 54, 50, 57, 45, 52, 61, 55, 100, 76, 51, 68, 58, 65, 44, 53, 84, 74, 65, 71, 51, 72, 68, 82, 70, 62, 78, 44, 78, 49, 50, 65, 57, 45, 70, 81, 76, 57, 65, 70, 73, 57, 61, 65, 56, 64, 59, 74, 76, 65, 52, 75, 69, 74, 59, 55, 64, 70, 62, 56, 60, 58, 71, 62, 62, 73, 80, 56, 65, 44, 51, 88, 68, 58, 86, 92, 59, 59, 91, 69, 59, 83, 65, 91, 59, 69, 55, 66, 67, 52, 109, 81, 61, 71, 74, 82, 120, 55, 61, 71, 45, 51, 79, 57, 64, 77, 56, 65, 70, 68, 59, 73, 70, 70, 73, 61, 68, 57, 68, 59, 58, 74, 61, 64, 54, 82, 64, 47, 49, 66, 69, 62, 69, 68, 58, 75, 59, 54, 71, 79, 100, 67, 81, 63, 79, 69, 82, 60, 60, 68, 54, 52, 60, 79, 85, 74, 64, 85, 68, 70, 91, 63, 50, 64, 57, 93, 76, 77, 57, 61, 54, 69, 49, 53, 59, 72, 49, 51, 54, 54, 64, 81, 65, 54, 56, 77, 51, 37, 71, 83, 57, 61, 57, 66, 75, 48, 70, 63, 60, 79, 52, 64, 89, 52, 51, 68, 72, 64, 65, 59, 120, 68, 81, 64, 65, 58, 51, 63, 74, 95, 72, 65, 69, 48, 54, 72, 60, 74, 93, 113, 62, 110, 64, 47, 52, 60, 71, 60, 66, 59, 55, 71, 83, 43, 60, 64, 68, 62, 103, 63, 58, 69, 73, 56, 45, 52, 62, 60, 67, 47, 53, 53, 52, 64, 106, 55, 66, 56, 60, 62, 46, 68, 75, 46, 74, 56, 51, 68, 43, 71, 50, 65, 64, 53, 78, 63, 77, 70, 51, 47, 98, 49, 60, 70, 77, 60, 52, 57, 70, 63, 88, 69, 74, 67, 64, 60, 52, 59, 53, 53, 77, 70, 75, 80, 67, 58, 38, 65, 75, 50, 53, 65, 58, 54, 63, 56, 56, 89, 62, 59, 47, 52, 67, 53, 65, 58, 76, 58, 61, 63, 94, 54, 54, 66, 46, 62, 56, 62, 58, 83, 66, 54, 49, 70, 90, 56, 76, 93, 63, 85, 62, 131, 63, 61, 76, 68, 55, 58, 57, 85, 74, 62, 73, 74, 52, 60, 62, 49, 69, 58, 64, 75, 65, 60, 66, 76, 62, 49, 48, 52, 48, 99, 75, 96, 51, 78, 60, 64, 45, 52, 61, 57, 72, 59, 64, 81, 55, 68, 64, 92, 75, 59, 61, 65, 42, 60, 59, 75, 58, 83, 50, 83, 57, 64, 65, 63, 79, 53, 51, 54, 47, 96, 62, 71, 69, 52, 57, 55, 64, 52, 88, 86, 67, 93, 49, 74, 75, 105, 62, 71, 54, 58, 90, 62, 77, 67, 49, 48, 63, 64, 71, 58, 71, 91, 80, 62, 55, 72, 68, 51, 59, 77, 69, 66, 53, 73, 62, 104, 54, 58, 70, 54, 54, 53, 71, 86, 114, 80, 58, 57, 61, 48, 73, 53, 62, 61, 72, 61, 59, 65, 61, 61, 80, 55, 74, 51, 69, 61, 61, 74, 66, 58, 59, 57, 52, 62, 86, 58, 70, 71, 47, 47, 60, 62, 69, 60, 85, 54, 56, 69, 67, 66, 83, 63, 113, 52, 88, 63, 90, 51, 58, 82, 66, 66, 68, 59, 94, 90, 65, 56, 48, 120, 57, 83, 63, 64, 81, 71, 97, 101, 62, 57, 61, 82, 63, 73, 60, 66, 69, 59, 64, 55, 65, 46, 59, 117, 55, 58, 77, 53, 55, 71, 72, 52, 83, 91, 60, 66, 54, 46, 57, 54, 63, 57, 53, 71, 48, 48, 53, 75, 85, 79, 57, 108, 73, 60, 170, 80, 63, 68, 66, 58, 68, 103, 54, 59, 53, 55, 81, 85, 76, 61, 65, 55, 55, 75, 62, 72, 86, 76, 56, 65, 82, 66, 70, 68, 84, 64, 61, 132, 67, 56, 54, 57, 76, 52, 55, 95, 60, 78, 61, 77, 46, 86, 76, 65, 58, 47, 55, 72, 59, 54, 55, 70, 54, 62, 73, 65, 61, 64, 54, 60, 82, 46, 46, 68, 64, 60, 88, 86, 51, 60, 63, 61, 57, 51, 62, 71, 66, 73, 50, 53, 57, 66, 60, 52, 55, 51, 71, 61, 55, 56, 56, 67, 57, 66, 54, 71, 64, 114, 61, 62, 57, 57, 48, 55, 60, 96, 79, 60, 62, 55, 51, 42, 58, 54, 51, 67, 58, 61, 63, 64, 79, 73, 61, 47, 63, 60, 72, 46, 57, 49, 106, 72, 63, 61, 86, 58, 75, 86, 64, 60, 38, 73, 53, 69, 99, 64, 59, 72, 64, 66, 66, 57, 79, 63, 69, 77, 69, 65, 60, 47, 64, 68, 52, 57, 68, 60, 81, 63, 58, 76, 58, 63, 96, 58, 54, 69, 49, 68, 81, 62, 66, 64, 65, 53, 68, 68, 63, 50, 69, 82, 45, 73, 70, 64, 74, 60, 56, 73, 94, 52, 69, 106, 58, 71, 52, 106, 90, 70, 63, 69, 81, 69, 68, 51, 93, 86, 44, 81, 64, 33, 55, 43, 52, 102, 55, 54, 48, 71, 66, 57, 70, 70, 55, 66, 61, 69, 60, 82, 66, 63, 69, 61, 68, 48, 66, 51, 69, 48, 54, 83, 66, 67, 58, 85, 70, 81, 67, 54, 71, 68, 76, 47, 70, 49, 45, 71, 52, 64, 77, 52, 61, 58, 63, 66, 65, 70, 67, 72, 74, 73, 60, 58, 77, 68, 69, 67, 69, 60, 55, 49, 58, 60, 82, 76, 100, 82, 71, 63, 57, 53, 84, 69, 72, 61, 81, 59, 71, 106, 65, 45, 54, 71, 69, 44, 55, 55, 49, 63, 65, 66, 57, 52, 71, 67, 55, 63, 52, 89, 53, 60, 54, 69, 61, 57, 65, 61, 42, 81, 54, 45, 77, 58, 83, 56, 64, 69, 76, 101, 87, 68, 57, 60, 78, 80, 80, 81, 47, 75, 82, 104, 56, 72, 99, 55, 66, 104, 67, 52, 70, 52, 59, 56, 50, 60, 71, 65, 70, 66, 51, 39, 60, 57, 51, 112, 60, 57, 109, 41, 58, 81, 53, 72, 49, 53, 66, 79, 71, 48, 79, 47, 64, 57, 49, 54, 64, 86, 91, 63, 92, 62, 62, 59, 70, 50, 58, 65, 65, 63, 77, 70, 65, 94, 147, 61, 73, 81, 55, 62, 70, 92, 62, 44, 66, 74, 47, 61, 61, 43, 78, 31, 62, 58, 75, 65, 96, 84, 55, 56, 96, 67, 75, 69, 47, 71, 76, 33, 61, 55, 118, 51, 50, 59, 54, 48, 84, 73, 45, 73, 72, 51, 49, 82, 65, 59, 56, 83, 64, 84, 94, 89, 61, 92, 88, 69, 72, 57, 92, 59, 50, 79, 115, 53, 76, 63, 77, 61, 64, 76, 65, 62, 70, 61, 66, 83, 66, 66, 77, 41, 86, 61, 62, 74, 99, 56, 71, 87, 81, 77, 53, 72, 46, 57, 69, 74, 78, 56, 57, 86, 66, 78, 63, 74, 87, 52, 60, 69, 83, 84, 74, 67, 107, 84, 46, 51, 65, 63, 71, 82, 87, 61, 47, 59, 50, 46, 75, 30, 80, 47, 45, 57, 63, 67, 85, 45, 51, 69, 69, 61, 66, 60, 84, 92, 75, 53, 59, 65, 53, 67, 86, 53, 67, 59, 90, 66, 70, 74, 59, 77, 85, 85, 82, 68, 62, 44, 62, 68, 65, 94, 70, 43, 52, 79, 66, 36, 55, 107, 64, 66, 52, 55, 59, 54, 55, 58, 58, 62, 56, 50, 42, 83, 66, 72, 83, 55, 41, 57, 70, 55, 65, 70, 56, 61, 60, 77, 57, 80, 64, 67, 86, 79, 67, 65, 74, 71, 82, 92, 48, 53, 44, 57, 63, 70, 67, 55, 95, 64, 51, 62, 58, 70, 64, 45, 27, 57, 63, 62, 80, 47, 64, 63, 74, 64, 53, 90, 62, 59, 73, 61, 52, 50, 88, 92, 90, 66, 76, 62, 55, 69, 86, 65, 107, 66, 35, 41, 61, 66, 46, 49, 77, 82, 57, 72, 81, 77, 76, 83, 76, 74, 67, 51, 63, 55, 61, 60, 63, 60, 60, 69, 53, 69, 61, 49, 57, 71, 39, 53, 106, 77, 46, 67, 66, 72, 62, 56, 88, 56, 63, 41, 62, 75, 76, 84, 46, 74, 87, 50, 69, 77, 50, 52, 82, 62, 70, 51, 73, 67, 69, 73, 48, 54, 70, 65, 57, 47, 67, 101, 56, 71, 52, 72, 51, 53, 57, 45, 63, 103, 83, 79, 54, 84, 89, 47, 52, 102, 72, 61, 62, 83, 70, 67, 74, 46, 74, 73, 55, 62, 73, 65, 90, 57, 82, 57, 77, 44, 80, 116, 55, 73, 76, 46, 61, 55, 64, 85, 81, 37, 57, 59, 80, 56, 65, 73, 83, 72, 42, 80, 87, 46, 49, 60, 40, 49, 67, 36, 82, 58, 75, 45, 79, 80, 59, 69, 59, 57, 67, 55, 81, 62, 98, 53, 60, 91, 92, 66, 78, 69, 44, 55, 102, 75, 71, 62, 91, 66, 87, 62, 58, 97, 61, 60, 81, 63, 55, 55, 97, 73, 89, 41, 48, 90, 45, 83, 54, 40, 81, 57, 75, 66, 56, 63, 79, 65, 54, 83, 63, 49, 59, 68, 71, 76, 64, 62, 75, 65, 125, 71, 70, 60, 64, 34, 65, 49, 75, 88, 53, 85, 60, 81, 83, 66, 53, 71, 73, 44, 69, 67, 63, 98, 49, 57, 112, 54, 58, 79, 37, 78, 54, 45, 82, 64, 42, 54, 58, 79, 61, 62, 48, 44, 79, 38, 81, 61, 72, 72, 55, 75, 54, 102, 68, 57, 56, 73, 62, 67, 55, 66, 100, 74, 106, 69, 60, 74, 57, 81, 65, 65, 70, 80, 71, 63, 90, 66, 61, 56, 61, 94, 48, 68, 65, 47, 61, 60, 65, 33, 49, 60, 65, 61, 83, 63, 68, 59, 62, 37, 63, 58, 65, 64, 52, 65, 74, 83, 59, 75, 77, 58, 84, 69, 70, 66, 70, 70, 68, 55, 64, 93, 59, 78, 48, 39, 55, 81, 63, 89, 52, 57, 68, 62, 107, 54, 66, 50, 81, 66, 64, 66, 47, 52, 60, 78, 55, 60, 80, 89, 36, 69, 88, 98, 88, 53, 41, 59, 68, 80, 41, 65, 58, 69, 71, 82, 61, 69, 45, 69, 89, 78, 47, 81, 62, 81, 58, 60, 52, 111, 56, 65, 42, 60, 54, 62, 47, 60, 71, 43, 70, 68, 53, 59, 71, 80, 53, 72, 68, 47, 54, 65, 71, 55, 77, 58, 47, 74, 78, 71, 103, 79, 50, 40, 49, 77, 57, 84, 61, 50, 58, 58, 68, 67, 78, 77, 75, 40, 107, 66, 71, 68, 46, 75, 55, 74, 68, 59, 63, 51, 65, 75, 61, 79, 59, 60, 60, 63, 74, 103, 76, 67, 54, 48, 74, 54, 65, 46, 72, 64, 101, 70, 44, 54, 76, 65, 81, 42, 85, 74, 58, 66, 56, 39, 72, 86, 78, 69, 56, 78, 51, 53, 63, 63, 68, 102, 84, 65, 56, 74, 63, 67, 66, 47, 88, 78, 38, 55, 79, 59, 82, 63, 66, 57, 52, 64, 58, 43, 77, 77, 46, 66, 73, 44, 44, 44, 61, 77, 67, 55, 78, 108, 78, 67, 73, 62, 36, 66, 70, 56, 90, 73, 47, 80, 59, 44, 59, 76, 66, 78, 61, 62, 75, 80, 91, 42, 70, 68, 43, 71, 82, 58, 52, 68, 88, 74, 59, 53, 74, 57, 47, 78, 74, 43, 57, 65, 67, 73, 57, 73, 63, 69, 79, 74, 67, 69, 76, 69, 67, 58, 128, 70, 87, 38, 80, 52, 54, 79, 90, 73, 72, 75, 56, 48, 66, 78, 67, 73, 69, 88, 58, 49, 81, 79, 64, 62, 56, 46, 90, 61, 55, 115, 41, 64, 69, 60, 44, 105, 57, 56, 49, 62, 57, 70, 75, 86, 68, 50, 59, 96, 54, 79, 91, 71, 64, 59, 51, 73, 42, 67, 52, 48, 69, 50, 89, 58, 54, 75, 79, 91, 51, 47, 75, 50, 44, 68, 61, 57, 73, 49, 88, 69, 65, 55, 60, 59, 76, 80, 107, 56, 63, 74, 39, 52, 60, 81, 88, 76, 83, 45, 76, 58, 77, 57, 69, 67, 53, 82, 66, 74, 54, 77, 54, 84, 74, 72, 67, 71, 50, 66, 58, 73, 54, 80, 88, 62, 68, 67, 62, 109, 54, 38, 100, 50, 39, 55, 77, 80, 80, 47, 62, 59, 61, 62, 75, 106, 79, 83, 152, 78, 72, 67, 73, 70, 53, 83, 64, 70, 78, 59, 82, 43, 49, 57, 119, 47, 55, 86, 49, 45, 60, 63, 131, 84, 71, 81, 64, 52, 69, 54, 55, 62, 47, 64, 59, 49, 55, 58, 48, 76, 59, 81, 57, 57, 76, 93, 56, 76, 40, 80, 61, 67, 55, 55, 69, 88, 65, 94, 45, 69, 87, 63, 72, 61, 80, 58, 48, 83, 69, 67, 67, 67, 82, 52, 55, 90, 79, 48, 43, 65, 79, 53, 65, 65, 60, 72, 55, 68, 63, 39, 62, 49, 37, 78, 42, 66, 57, 50, 60, 93, 69, 45, 64, 68, 54, 50, 90, 88, 45, 98, 62, 76, 90, 61, 58, 43, 76, 93, 66, 53, 60, 81, 63, 72, 61, 73, 55, 55, 62, 68, 62, 88, 52, 70, 73, 52, 46, 94, 77, 97, 69, 76, 75, 65, 53, 74, 63, 61, 76, 51, 66, 68, 60, 53, 60, 69, 45, 79, 77, 51, 66, 43, 71, 50, 67, 61, 56, 73, 85, 65, 56, 64, 63, 72, 79, 65, 53, 33, 53, 47, 77, 108, 71, 59, 54, 62, 117, 40, 68, 75, 56, 81, 52, 84, 76, 70, 81, 45, 49, 48, 97, 71, 53, 100, 132, 50, 61, 61, 82, 59, 72, 43, 56, 86, 77, 72, 69, 76, 55, 68, 60, 79, 73, 35, 56, 82, 68, 72, 57, 41, 43, 61, 84, 60, 85, 69, 70, 55, 62, 91, 83, 52, 72, 64, 57, 62, 44, 47, 59, 74, 83, 62, 68, 64, 57, 48, 59, 68, 59, 96, 67, 48, 72, 38, 90, 81, 80, 74, 71, 55, 57, 86, 63, 63, 59, 53, 62, 67, 77, 50, 43, 90, 66, 50, 65, 62, 63, 64, 82, 58, 48, 71, 75, 47, 98, 71, 37, 86, 68, 65, 85, 60, 53, 36, 51, 61, 40, 73, 65, 31, 92, 105, 53, 65, 70, 55, 94, 57, 62, 60, 64, 66, 71, 37, 77, 49, 64, 42, 80, 86, 80, 70, 69, 65, 16, 64, 86, 52, 85, 75, 36, 63, 65, 46, 62, 68, 91, 68, 70, 70, 84, 53, 54, 53, 81, 82, 89, 69, 52, 61, 45, 64, 79, 78, 69, 118, 76, 56, 49, 62, 66, 46, 64, 76, 87, 54, 70, 70, 63, 59, 77, 70, 69, 62, 73, 45, 59, 53, 79, 91, 69, 70, 83, 64, 55, 42, 77, 46, 66, 67, 56, 78, 81, 58, 76, 63, 49, 61, 56, 68, 49, 74, 89, 69, 79, 101, 106, 80, 43, 59, 95, 52, 67, 104, 72, 49, 72, 63, 62, 75, 56, 72, 56, 81, 63, 75, 44, 76, 49, 61, 59, 70, 80, 67, 72, 52, 51, 66, 104, 51, 71, 67, 45, 58, 74, 66, 63, 68, 41, 82, 45, 67, 81, 79, 119, 126, 77, 86, 55, 74, 66, 99, 76, 64, 79, 72, 52, 81, 86, 70, 43, 64, 78, 56, 43, 85, 64, 49, 51, 53, 48, 54, 78, 53, 73, 92, 64, 59, 57, 116, 68, 48, 44, 43, 56, 64, 50, 56, 86, 78, 42, 45, 70, 40, 80, 66, 60, 91, 80, 70, 83, 46, 79, 51, 67, 44, 23, 71, 88, 64, 53, 77, 50, 74, 61, 101, 56, 49, 62, 68, 59, 36, 77, 94, 49, 79, 68, 74, 50, 82, 68, 68, 77, 53, 77, 52, 79, 58, 55, 58, 91, 61, 65, 42, 41, 52, 64, 50, 78, 81, 59, 63, 67, 58, 70, 69, 56, 53, 50, 58, 66, 90, 57, 76, 56, 56, 101, 55, 80, 88, 62, 50, 63, 46, 63, 54, 68, 92, 65, 52, 73, 51, 58, 60, 77, 66, 69, 45, 79, 58, 51, 75, 78, 38, 52, 56, 79, 77, 77, 61, 65, 63, 60, 60, 80, 47, 83, 66, 67, 50, 42, 67, 85, 62, 60, 84, 82, 66, 72, 72, 56, 55, 93, 62, 59, 81, 85, 47, 82, 53, 81, 74, 57, 66, 40, 64, 97, 69, 95, 75, 63, 87, 82, 49, 89, 127, 64, 68, 67, 55, 68, 62, 72, 78, 85, 79, 76, 76, 51, 60, 81, 54, 54, 53, 53, 48, 69, 60, 71, 82, 44, 75, 74, 73, 73, 47, 60, 62, 64, 58, 65, 56, 63, 51, 71, 67, 74, 36, 78, 110, 65, 66, 70, 46, 43, 78, 60, 81, 59, 43, 46, 60, 51, 82, 70, 49, 85, 57, 71, 97, 59, 63, 63, 72, 70, 86, 68, 53, 59, 52, 78, 56, 36, 59, 67, 45, 66, 95, 81, 86, 37, 60, 65, 53, 79, 61, 43, 73, 76, 92, 57, 57, 52, 94, 73, 54, 74, 126, 119, 54, 130, 101, 54, 82, 74, 81, 72, 46, 62, 78, 51, 63, 44, 42, 55, 100, 44, 64, 67, 50, 51, 63, 56, 45, 54, 55, 59, 48, 43, 54, 61, 34, 61, 56, 68, 69, 61, 68, 73, 69, 55, 36, 67, 80, 68, 116, 65, 50, 53, 51, 64, 109, 66, 76, 73, 61, 79, 93, 61, 61, 61, 50, 71, 73, 55, 56, 63, 86, 72, 73, 59, 82, 63, 74, 101, 50, 76, 37, 66, 48, 68, 76, 72, 55, 61, 75, 71, 61, 65, 48, 58, 55, 76, 53, 98, 114, 91, 91, 70, 94, 65, 56, 61, 75, 79, 72, 62, 73, 59, 57, 70, 54, 73, 54, 47, 64, 47, 86, 46, 62, 52, 52, 57, 71, 89, 43, 53, 44, 49, 39, 75, 66, 78, 59, 65, 86, 58, 121, 60, 72, 69, 91, 64, 57, 72, 45, 48, 84, 58, 79, 57, 87, 71, 58, 69, 55, 45, 50, 78, 51, 59, 49, 45, 76, 69, 79, 62, 55, 75, 60, 74, 70, 66, 87, 57, 60, 55, 45, 76, 104, 46, 59, 78, 48, 64, 58, 47, 73, 80, 53, 70, 56, 62, 58, 68, 47, 67, 60, 61, 59, 56, 70, 73, 62, 48, 42, 56, 81, 80, 65, 50, 49, 58, 39, 67, 50, 72, 52, 82, 58, 64, 50, 82, 66, 55, 75, 65, 81, 58, 44, 53, 55, 57, 55, 76, 55, 72, 76, 72, 64, 63, 62, 44, 55, 50, 56, 72, 74, 58, 50, 76, 82, 58, 57, 63, 61, 78, 56, 77, 81, 60, 52, 67, 51, 63, 57, 61, 56, 62, 67, 92, 41, 70, 75, 69, 107, 37, 79, 67, 63, 64, 63, 85, 67, 100, 66, 64, 122, 55, 64, 50, 66, 71, 62, 58, 64, 64, 47, 59, 51, 58, 60, 76, 73, 65, 50, 48, 78, 58, 63, 57, 52, 68, 41, 68, 55, 70, 64, 73, 64, 76, 65, 61, 81, 58, 65, 61, 55, 70, 60, 64, 51, 58, 70, 45, 60, 84, 56, 61, 51, 95, 63, 78, 46, 51, 50, 61, 53, 61, 67, 65, 61, 64, 68, 62, 74, 68, 50, 69, 62, 59, 70, 55, 44, 61, 93, 64, 74, 67, 53, 76, 56, 73, 61, 54, 61, 73, 59, 58, 107, 59, 68, 59, 74, 46, 50, 77, 86, 70, 52, 62, 57, 64, 68, 58, 83, 56, 46, 62, 86, 90, 64, 58, 58, 75, 65, 50, 63, 70, 86, 58, 61, 83, 65, 26, 68, 49, 73, 83, 64, 150, 68, 58, 82, 52, 133, 58, 65, 68, 69, 61, 73, 68, 72, 62, 63, 65, 63, 57, 84, 63, 62, 81, 66, 69, 46, 65, 59, 74, 71, 31, 51, 68, 63, 47, 99, 68, 69, 63, 57, 71, 53, 63, 58, 46, 77, 64, 67, 55, 71, 67, 86, 59, 82, 70, 59, 79, 56, 68, 55, 55, 46, 63, 74, 62, 61, 70, 58, 72, 57, 69, 60, 59, 111, 51, 61, 53, 82, 78, 50, 80, 92, 65, 61, 70, 80, 58, 52, 74, 53, 69, 69, 81, 52, 77, 47, 86, 51, 48, 56, 47, 74, 59, 73, 60, 61, 65, 61, 39, 49, 63, 59, 66, 57, 57, 101, 76, 77, 53, 89, 81, 80, 50, 60, 52, 66, 92, 67, 69, 73, 83, 79, 67, 80, 84, 52, 57, 74, 76, 70, 68, 68, 41, 61, 89, 67, 80, 60, 70, 51, 106, 66, 67, 90, 59, 74, 57, 80, 64, 65, 52, 61, 68, 85, 45, 63, 58, 60, 54, 67, 61, 90, 78, 66, 68, 102, 65, 40, 69, 52, 57, 64, 64, 80, 67, 78, 59, 71, 63, 64, 57, 67, 92, 61, 66, 65, 61, 67, 72, 75, 89, 55, 51, 55, 75, 53, 75, 69, 67, 69, 66, 69, 64, 74, 58, 53, 58, 44, 69, 64, 58, 73, 69, 60, 70, 76, 56, 69, 62, 77, 89, 62, 58, 61, 71, 60, 55, 56, 74, 83, 56, 52, 59, 59, 51, 79, 57, 71, 69, 77, 59, 101, 59, 60, 45, 70, 79, 72, 53, 51, 59, 62, 53, 80, 62, 92, 65, 67, 89, 49, 63, 85, 66, 74, 50, 60, 51, 91, 65, 45, 78, 58, 46, 48, 69, 65, 50, 60, 54, 81, 66, 71, 56, 101, 51, 64, 86, 68, 79, 87, 48, 52, 71, 65, 67, 70, 79, 65, 57, 75, 91, 83, 96, 64, 61, 74, 70, 61, 68, 69, 67, 58, 54, 68, 60, 56, 54, 106, 71, 108, 55, 66, 74, 64, 90, 51, 62, 71, 55, 60, 69, 71, 62, 60, 66, 72, 70, 67, 56, 58, 97, 69, 66, 113, 46, 52, 65, 61, 48, 57, 65, 62, 54, 70, 79, 111, 47, 82, 62, 61, 54, 65, 57, 60, 88, 65, 62, 66, 59, 76, 81, 58, 53, 64, 49, 88, 83, 82, 68, 77, 90, 49, 69, 78, 58, 68, 100, 71, 56, 89, 53, 60, 80, 55, 68, 78, 78, 108, 54, 69, 58, 56, 61, 78, 55, 56, 76, 59, 57, 66, 58, 62, 56, 71, 77, 60, 63, 124, 75, 52, 66, 77, 53, 80, 73, 60, 66, 71, 56, 62, 94, 76, 57, 53, 65, 69, 49, 55, 82, 76, 57, 84, 51, 58, 68, 59, 62, 59, 63, 76, 59, 70, 56, 61, 69, 74, 68, 60, 59, 50, 72, 91, 71, 59, 62, 63, 71, 60, 55, 66, 46, 50, 50, 74, 78, 66, 70, 105, 54, 56, 46, 49, 98, 62, 65, 47, 46, 77, 60, 82, 125, 45, 62, 62, 74, 69, 84, 59, 53, 60, 62, 60, 59, 104, 77, 55, 87, 62, 58, 59, 66, 51, 49, 66, 53, 75, 63, 64, 81, 53, 109, 59, 53, 58, 66, 49, 55, 64, 43, 56, 57, 60, 57, 56, 67, 84, 54, 50, 64, 88, 74, 79, 74, 62, 64, 67, 75, 51, 59, 57, 88, 52, 55, 69, 59, 48, 76, 45, 66, 76, 61, 49, 44, 67, 74, 60, 64, 54, 90, 62, 59, 71, 79, 61, 65, 73, 67, 66, 49, 76, 91, 106, 60, 92, 74, 50, 60, 105, 101, 36, 58, 50, 64, 71, 77, 48, 63, 57, 80, 57, 82, 59, 63, 62, 79, 65, 59, 56, 84, 56, 52, 55, 51, 82, 93, 62, 54, 79, 86, 67, 80, 68, 66, 47, 32, 56, 55, 59, 76, 96, 81, 63, 59, 55, 81, 82, 69, 70, 66, 53, 76, 53, 77, 75, 69, 57, 80, 60, 51, 52, 71, 57, 57, 61, 44, 52, 60, 59, 76, 66, 58, 57, 87, 82, 64, 60, 41, 53, 58, 51, 74, 53, 50, 59, 72, 65, 81, 65, 84, 60, 63, 60, 71, 71, 92, 55, 56, 67, 76, 50, 68, 75, 66, 67, 62, 108, 61, 69, 49, 37, 47, 97, 63, 63, 48, 68, 77, 63, 53, 32, 78, 58, 73, 55, 54, 56, 124, 75, 76, 68, 56, 99, 57, 93, 52, 115, 94, 40, 61, 54, 52, 56, 68, 79, 64, 72, 60, 100, 51, 50, 62, 58, 59, 81, 63, 71, 91, 53, 67, 71, 57, 67, 54, 48, 55, 75, 61, 60, 75, 77, 61, 78, 60, 75, 62, 59, 59, 53, 66, 72, 82, 47, 48, 72, 55, 80, 85, 59, 47, 56, 86, 70, 69, 44, 39, 55, 63, 56, 63, 61, 58, 85, 67, 86, 81, 59, 63, 53, 66, 76, 63, 71, 57, 57, 59, 74, 66, 67, 59, 88, 66, 59, 72, 81, 68, 81, 81, 104, 67, 64, 58, 74, 65, 82, 63, 40, 49, 67, 52, 56, 61, 54, 102, 91, 56, 72, 46, 59, 66, 72, 58, 73, 80, 77, 63, 65, 105, 56, 69, 61, 71, 107, 74, 58, 70, 71, 51, 64, 64, 66, 61, 68, 62, 72, 105, 78, 71, 67, 51, 85, 54, 45, 44, 62, 78, 59, 90, 56, 58, 53, 75, 63, 67, 50, 55, 62, 55, 64, 57, 62, 84, 82, 63, 61, 82, 68, 57, 81, 40, 61, 83, 55, 71, 63, 91, 80, 69, 77, 56, 58, 55, 80, 78, 53, 73, 86, 61, 65, 49, 67, 57, 87, 77, 68, 53, 66, 69, 92, 71, 59, 69, 75, 63, 67, 49, 55, 72, 59, 62, 66, 51, 63, 52, 65, 83, 63, 67, 63, 62, 72, 93, 65, 66, 69, 72, 66, 61, 60, 75, 68, 49, 83, 68, 64, 63, 66, 49, 36, 48, 85, 76, 67, 69, 50, 61, 55, 91, 73, 87, 65, 60, 71, 66, 50, 59, 45, 57, 72, 61, 73, 99, 68, 62, 61, 55, 67, 61, 65, 67, 66, 55, 75, 63, 65, 55, 61, 58, 51, 47, 65, 73, 59, 73, 61, 70, 73, 78, 62, 67, 73, 77, 89, 56, 56, 71, 86, 68, 60, 63, 46, 55, 66, 59, 58, 66, 79, 55, 64, 50, 81, 81, 61, 76, 75, 58, 74, 58, 56, 65, 62, 54, 73, 80, 59, 68, 68, 60, 87, 57, 67, 70, 45, 83, 64, 70, 80, 64, 55, 61, 62, 62, 78, 60, 62, 64, 74, 65, 71, 66, 68, 61, 66, 100, 86, 73, 59, 91, 69, 69, 77, 61, 85, 62, 70, 74, 71, 63, 58, 80, 43, 62, 48, 68, 64, 88, 44, 73, 53, 54, 66, 52, 78, 67, 101, 50, 80, 61, 81, 56, 62, 65, 82, 49, 67, 72, 78, 50, 83, 67, 72, 82, 81, 53, 70, 62, 71, 60, 42, 66, 71, 60, 84, 58, 69, 66, 62, 72, 70, 75, 65, 64, 66, 47, 62, 69, 69, 57, 77, 81, 53, 65, 56, 88, 75, 46, 66, 65, 78, 80, 67, 50, 67, 74, 49, 58, 64, 53, 58, 70, 41, 61, 74, 55, 60, 66, 74, 60, 59, 34, 75, 63, 58, 65, 82, 61, 69, 54, 65, 73, 55, 71, 66, 77, 48, 56, 92, 62, 69, 73, 63, 75, 55, 60, 73, 89, 64, 83, 78, 58, 73, 61, 66, 53, 74, 63, 60, 63, 67, 77, 89, 80, 72, 61, 69, 66, 71, 65, 61, 46, 80, 55, 93, 58, 75, 58, 39, 65, 75, 50, 54, 66, 65, 64, 59, 63, 55, 54, 45, 54, 54, 64, 65, 52, 96, 65, 44, 163, 66, 73, 52, 63, 72, 82, 79, 68, 69, 56, 82, 70, 57, 65, 67, 71, 67, 51, 55, 61, 61, 52, 74, 47, 79, 55, 64, 53, 72, 68, 50, 83, 77, 69, 46, 72, 88, 32, 61, 72, 56, 73, 46, 41, 45, 78, 56, 58, 47, 69, 54, 56, 62, 49, 68, 69, 50, 55, 64, 62, 71, 63, 51, 61, 53, 66, 57, 76, 79, 71, 97, 55, 91, 61, 60, 71, 56, 54, 65, 93, 72, 67, 51, 77, 76, 49, 60, 29, 67, 65, 74, 73, 54, 59, 67, 68, 79, 74, 58, 69, 70, 75, 66, 63, 73, 74, 67, 61, 64, 53, 54, 61, 43, 61, 86, 73, 81, 63, 63, 61, 75, 85, 67, 55, 59, 69, 61, 55, 55, 89, 81, 63, 53, 83, 67, 50, 52, 70, 82, 71, 65, 59, 78, 58, 63, 66, 72, 71, 57, 69, 59, 60, 73, 59, 89, 79, 49, 64, 79, 75, 67, 63, 63, 69, 72, 107, 74, 62, 82, 82, 55, 54, 66, 79, 64, 70, 62, 52, 58, 65, 65, 69, 64, 84, 68, 75, 99, 79, 58, 65, 70, 67, 75, 43, 75, 70, 69, 71, 61, 46, 61, 97, 64, 85, 59, 47, 47, 64, 62, 75, 61, 65, 57, 66, 91, 32, 67, 57, 55, 54, 82, 70, 66, 58, 67, 79, 68, 58, 69, 57, 76, 64, 57, 55, 52, 51, 63, 71, 86, 67, 57, 71, 54, 73, 66, 55, 63, 70, 53, 55, 67, 61, 58, 80, 58, 69, 54, 47, 58, 66, 64, 59, 67, 58, 50, 61, 65, 63, 56, 63, 73, 59, 42, 71, 52, 73, 82, 69, 57, 66, 51, 65, 62, 70, 71, 55, 90, 62, 68, 67, 40, 70, 57, 50, 56, 48, 48, 87, 57, 113, 57, 71, 76, 52, 68, 68, 86, 59, 67, 49, 68, 76, 62, 64, 68, 37, 73, 62, 73, 71, 45, 42, 59, 76, 50, 88, 61, 66, 57, 61, 39, 54, 101, 58, 62, 72, 61, 63, 77, 76, 57, 65, 52, 63, 67, 62, 89, 45, 46, 53, 61, 61, 61, 65, 63, 67, 68, 76, 75, 70, 69, 62, 83, 73, 72, 49, 68, 63, 83, 61, 52, 54, 86, 87, 73, 59, 49, 53, 89, 60, 62, 56, 82, 45, 77, 42, 78, 63, 69, 61, 80, 70, 58, 66, 47, 82, 66, 69, 70, 54, 69, 68, 56, 87, 60, 60, 68, 70, 61, 64, 88, 75, 68, 63, 53, 63, 71, 69, 76, 66, 57, 72, 60, 65, 51, 64, 102, 65, 63, 42, 72, 54, 59, 60, 52, 74, 66, 62, 42, 70, 68, 78, 65, 54, 62, 59, 77, 58, 76, 70, 51, 56, 50, 67, 63, 67, 89, 60, 60, 71, 86, 80, 63, 121, 71, 53, 64, 48, 62, 75, 58, 57, 67, 70, 99, 67, 84, 64, 81, 62, 58, 61, 62, 71, 59, 53, 47, 73, 62, 53, 83, 73, 65, 61, 57, 42, 78, 70, 90, 53, 66, 72, 58, 72, 67, 49, 59, 85, 56, 45, 61, 77, 48, 65, 77, 62, 67, 65, 73, 66, 59, 115, 99, 51, 68, 51, 69, 91, 51, 57, 79, 57, 70, 55, 60, 88, 68, 51, 61, 55, 74, 59, 62, 65, 74, 68, 50, 69, 63, 47, 57, 59, 46, 68, 98, 81, 94, 66, 57, 83, 66, 63, 46, 83, 97, 71, 54, 56, 71, 108, 93, 70, 70, 59, 76, 62, 59, 78, 64, 74, 88, 59, 62, 110, 44, 69, 71, 64, 82, 82, 75, 59, 65, 57, 44, 49, 69, 64, 72, 54, 66, 87, 70, 58, 71, 65, 58, 51, 53, 58, 69, 74, 62, 63, 66, 53, 77, 60, 70, 63, 62, 57, 69, 54, 51, 49, 67, 83, 56, 61, 86, 52, 70, 92, 71, 52, 65, 67, 64, 66, 127, 65, 58, 75, 41, 67, 62, 60, 76, 60, 61, 47, 33, 75, 62, 93, 50, 65, 80, 75, 60, 47, 128, 66, 86, 97, 86, 65, 67, 48, 68, 58, 59, 64, 66, 68, 37, 75, 52, 70, 92, 71, 72, 57, 47, 67, 71, 64, 119, 60, 51, 64, 65, 60, 76, 92, 54, 54, 71, 56, 74, 61, 64, 50, 63, 61, 67, 56, 69, 50, 56, 58, 73, 104, 128, 60, 67, 55, 56, 65, 53, 79, 78, 61, 55, 70, 63, 55, 44, 63, 69, 41, 53, 46, 51, 66, 68, 78, 62, 73, 67, 73, 70, 46, 68, 53, 62, 57, 48, 63, 58, 83, 56, 68, 55, 58, 63, 59, 81, 56, 49, 64, 43, 58, 56, 57, 55, 53, 63, 84, 85, 110, 58, 57, 53, 56, 72, 64, 75, 86, 54, 44, 69, 70, 55, 57, 86, 64, 63, 56, 64, 57, 43, 68, 49, 58, 89, 78, 50, 66, 113, 71, 61, 60, 59, 58, 63, 75, 69, 62, 59, 72, 101, 55, 81, 56, 76, 89, 97, 66, 68, 60, 80, 51, 65, 41, 57, 47, 73, 60, 78, 105, 60, 63, 61, 74, 62, 65, 67, 63, 55, 83, 62, 70, 53, 72, 56, 64, 76, 54, 69, 80, 50, 86, 72, 55, 63, 66, 52, 60, 70, 77, 52, 63, 84, 83, 60, 170, 73, 71, 47, 55, 81, 70, 58, 58, 44, 93, 60, 65, 61, 74, 45, 69, 66, 60, 65, 50, 62, 97, 81, 65, 63, 70, 84, 69, 59, 55, 56, 62, 74, 46, 47, 66, 79, 78, 71, 61, 84, 50, 46, 69, 60, 51, 87, 69, 72, 66, 85, 69, 39, 80, 91, 65, 44, 56, 66, 59, 60, 69, 71, 60, 58, 80, 78, 68, 57, 78, 59, 84, 53, 59, 70, 55, 61, 51, 54, 78, 83, 69, 74, 92, 127, 63, 63, 62, 56, 69, 66, 61, 57, 79, 70, 99, 83, 56, 55, 61, 58, 66, 66, 54, 78, 68, 66, 69, 70, 54, 59, 62, 61, 66, 62, 65, 79, 71, 45, 86, 71, 63, 56, 60, 55, 78, 73, 59, 71, 61, 87, 70, 53, 72, 53, 104, 103, 50, 66, 85, 52, 61, 93, 66, 63, 63, 114, 63, 74, 111, 66, 73, 43, 71, 59, 84, 67, 60, 69, 58, 48, 67, 83, 55, 70, 70, 61, 71, 66, 65, 61, 57, 62, 54, 75, 55, 77, 67, 69, 57, 65, 57, 58, 56, 69, 77, 86, 56, 63, 101, 53, 54, 67, 60, 54, 66, 75, 47, 52, 78, 64, 64, 77, 69, 63, 64, 55, 55, 63, 50, 39, 44, 61, 36, 84, 70, 80, 60, 65, 58, 74, 67, 62, 77, 50, 72, 67, 69, 76, 71, 57, 58, 51, 67, 55, 59, 143, 55, 68, 54, 46, 71, 60, 98, 36, 60, 79, 75, 55, 68, 63, 57, 58, 68, 52, 56, 77, 63, 102, 56, 54, 94, 48, 73, 77, 74, 57, 76, 73, 73, 59, 54, 56, 50, 71, 71, 90, 57, 69, 68, 73, 50, 59, 76, 83, 58, 61, 58, 77, 64, 57, 74, 68, 68, 61, 60, 64, 49, 64, 55, 49, 61, 55, 79, 54, 62, 67, 51, 54, 63, 63, 89, 72, 50, 38, 73, 69, 74, 101, 50, 69, 62, 57, 47, 53, 78, 94, 59, 71, 58, 58, 64, 96, 67, 69, 80, 56, 68, 45, 83, 66, 108, 59, 67, 88, 67, 58, 70, 95, 56, 75, 66, 44, 95, 59, 41, 69, 67, 82, 98, 102, 101, 72, 68, 50, 44, 60, 93, 64, 52, 66, 72, 59, 56, 72, 64, 116, 70, 63, 63, 70, 87, 65, 80, 62, 53, 66, 67, 69, 75, 66, 58, 74, 48, 67, 87, 68, 64, 72, 70, 63, 58, 91, 76, 73, 78, 65, 70, 67, 71, 61, 57, 101, 65, 58, 58, 42, 74, 61, 54, 67, 45, 63, 62, 66, 120, 78, 59, 70, 79, 50, 72, 59, 60, 63, 82, 52, 60, 69, 65, 44, 59, 48, 63, 51, 57, 48, 64, 43, 99, 50, 54, 67, 77, 76, 72, 62, 56, 55, 67, 51, 80, 55, 59, 88, 57, 60, 43, 77, 77, 88, 56, 86, 61, 72, 85, 49, 83, 62, 67, 55, 61, 55, 46, 66, 59, 57, 65, 67, 55, 73, 57, 107, 59, 63, 80, 102, 68, 67, 64, 69, 43, 70, 61, 49, 62, 50, 67, 84, 98, 58, 57, 58, 69, 60, 68, 70, 68, 75, 75, 96, 66, 35, 68, 77, 83, 66, 74, 66, 111, 65, 62, 81, 48, 64, 83, 63, 66, 97, 75, 73, 64, 62, 89, 67, 62, 74, 72, 65, 69, 67, 120, 57, 77, 50, 80, 110, 48, 75, 81, 67, 61, 66, 71, 70, 59, 66, 60, 61, 58, 118, 73, 47, 52, 59, 58, 51, 63, 56, 54, 68, 71, 65, 86, 66, 62, 106, 54, 69, 97, 56, 58, 70, 54, 46, 69, 65, 69, 70, 60, 72, 65, 51, 58, 54, 58, 78, 70, 65, 56, 63, 58, 66, 60, 53, 56, 75, 72, 55, 61, 58, 70, 69, 54, 64, 67, 75, 75, 73, 49, 59, 57, 82, 48, 77, 110, 34, 71, 62, 41, 62, 67, 74, 63, 46, 70, 53, 77, 72, 58, 67, 80, 62, 49, 60, 77, 55, 62, 91, 46, 71, 77, 80, 56, 56, 60, 100, 49, 61, 101, 54, 66, 61, 77, 62, 48, 63, 78, 52, 57, 46, 81, 70, 83, 62, 52, 67, 66, 54, 67, 77, 44, 68, 113, 58, 39, 69, 97, 54, 62, 122, 76, 67, 68, 43, 72, 58, 116, 55, 67, 78, 56, 53, 57, 53, 60, 88, 71, 58, 53, 67, 69, 61, 65, 63, 59, 53, 77, 82, 86, 37, 74, 39, 51, 59, 65, 64, 42, 67, 62, 65, 63, 51, 74, 76, 82, 70, 81, 79, 53, 71, 61, 76, 70, 47, 59, 53, 55, 114, 70, 53, 81, 80, 54, 80, 42, 53, 53, 56, 66, 53, 66, 66, 77, 73, 80, 60, 54, 68, 40, 59, 66, 50, 61, 53, 57, 39, 62, 77, 70, 51, 65, 72, 72, 79, 58, 49, 84, 70, 69, 94, 53, 65, 64, 51, 57, 70, 68, 79, 61, 52, 54, 63, 70, 51, 66, 69, 59, 86, 66, 45, 64, 70, 83, 58, 66, 59, 54, 55, 67, 52, 68, 55, 107, 44, 60, 82, 51, 65, 57, 60, 65, 63, 95, 39, 61, 73, 62, 130, 54, 70, 59, 50, 54, 81, 65, 87, 63, 61, 64, 67, 71, 45, 59, 65, 76, 77, 63, 50, 68, 64, 77, 69, 72, 69, 61, 82, 55, 117, 70, 54, 84, 75, 68, 67, 67, 50, 70, 59, 52, 47, 62, 59, 54, 64, 66, 79, 72, 48, 78, 80, 105, 50, 54, 108, 73, 51, 56, 88, 76, 77, 67, 66, 62, 87, 53, 50, 60, 48, 83, 59, 62, 96, 60, 48, 65, 72, 76, 49, 68, 102, 48, 70, 80, 56, 87, 72, 65, 80, 61, 57, 75, 74, 52, 58, 77, 64, 94, 76, 59, 41, 93, 55, 70, 53, 76, 55, 75, 80, 105, 70, 81, 82, 60, 31, 77, 38, 57, 67, 62, 86, 52, 57, 81, 54, 35, 60, 64, 61, 57, 48, 57, 52, 62, 77, 62, 54, 48, 82, 135, 78, 58, 51, 63, 61, 75, 67, 61, 68, 47, 75, 58, 60, 69, 72, 63, 109, 68, 139, 84, 119, 81, 63, 68, 74, 85, 74, 57, 59, 53, 63, 58, 49, 57, 76, 41, 72, 40, 72, 70, 60, 62, 80, 62, 65, 36, 75, 72, 52, 64, 68, 65, 62, 69, 65, 65, 57, 73, 117, 60, 68, 96, 65, 62, 66, 76, 52, 40, 60, 47, 84, 47, 57, 84, 80, 73, 57, 90, 78, 70, 52, 62, 92, 66, 72, 77, 80, 89, 68, 64, 82, 78, 86, 42, 49, 60, 61, 66, 59, 70, 50, 66, 84, 80, 74, 59, 46, 58, 80, 67, 73, 43, 92, 52, 61, 69, 72, 70, 51, 64, 50, 64, 67, 75, 81, 48, 73, 60, 47, 85, 133, 52, 44, 65, 87, 67, 55, 54, 57, 71, 67, 126, 70, 72, 53, 65, 72, 72, 67, 46, 69, 54, 58, 76, 55, 58, 34, 59, 76, 60, 83, 80, 57, 57, 71, 68, 63, 61, 57, 70, 57, 83, 59, 79, 62, 61, 72, 72, 54, 46, 62, 41, 51, 61, 49, 65, 64, 50, 62, 80, 90, 116, 62, 59, 52, 67, 58, 71, 56, 114, 113, 68, 88, 66, 70, 44, 53, 88, 60, 51, 51, 57, 71, 60, 52, 54, 48, 47, 57, 65, 68, 61, 100, 62, 63, 39, 50, 50, 74, 76, 68, 46, 55, 122, 72, 47, 33, 56, 69, 87, 79, 74, 82, 90, 71, 58, 84, 57, 82, 100, 57, 69, 62, 56, 44, 58, 61, 144, 77, 116, 79, 108, 63, 61, 72, 71, 85, 71, 53, 57, 76, 65, 63, 41, 53, 52, 65, 49, 69, 63, 50, 71, 82, 45, 78, 55, 59, 70, 75, 89, 51, 55, 74, 62, 68, 80, 49, 82, 65, 67, 75, 62, 60, 59, 59, 56, 73, 47, 64, 78, 80, 67, 49, 51, 75, 74, 61, 66, 59, 59, 53, 59, 71, 74, 73, 54, 80, 41, 61, 33, 61, 64, 80, 59, 50, 72, 66, 77, 60, 44, 56, 52, 63, 61, 72, 67, 52, 38, 59, 44, 66, 59, 51, 68, 60, 48, 48, 59, 59, 64, 80, 73, 86, 57, 69, 57, 73, 67, 69, 53, 72, 50, 63, 69, 86, 63, 76, 107, 59, 71, 43, 74, 61, 71, 46, 76, 93, 60, 55, 51, 60, 43, 59, 69, 71, 56, 41, 70, 59, 96, 57, 69, 78, 44, 56, 53, 54, 72, 75, 80, 70, 75, 65, 73, 80, 67, 54, 57, 50, 81, 46, 67, 94, 56, 55, 47, 89, 108, 80, 56, 67, 54, 63, 54, 51, 72, 75, 68, 63, 148, 73, 86, 35, 71, 48, 78, 55, 67, 65, 68, 86, 55, 79, 68, 67, 74, 60, 48, 97, 66, 72, 69, 66, 47, 62, 54, 59, 61, 72, 59, 72, 82, 95, 68, 70, 85, 37, 44, 61, 62, 70, 69, 46, 47, 56, 49, 131, 72, 56, 59, 83, 68, 65, 73, 67, 77, 55, 78, 78, 33, 65, 81, 70, 74, 100, 55, 62, 61, 54, 76, 77, 86, 76, 74, 54, 75, 87, 98, 70, 80, 70, 70, 48, 64, 54, 93, 48, 66, 48, 56, 71, 53, 68, 89, 72, 75, 61, 54, 69, 76, 65, 59, 87, 57, 55, 68, 88, 77, 62, 89, 70, 58, 56, 81, 72, 48, 56, 92, 64, 65, 82, 75, 64, 55, 50, 75, 63, 72, 55, 78, 65, 68, 75, 84, 55, 53, 59, 36, 65, 88, 66, 50, 54, 56, 73, 89, 52, 71, 55, 45, 58, 65, 54, 74, 58, 37, 124, 101, 53, 88, 40, 74, 73, 35, 54, 63, 79, 71, 46, 69, 51, 61, 58, 85, 100, 80, 48, 51, 68, 56, 65, 88, 53, 70, 112, 80, 73, 63, 111, 46, 54, 71, 68, 68, 71, 53, 51, 86, 71, 45, 69, 79, 66, 63, 75, 74, 67, 72, 50, 72, 52, 73, 44, 62, 83, 67, 43, 72, 74, 52, 85, 73, 72, 46, 58, 53, 60, 42, 55, 53, 68, 61, 68, 49, 69, 33, 110, 69, 48, 94, 63, 58, 69, 81, 75, 83, 67, 60, 58, 70, 73, 65, 60, 55, 62, 65, 63, 54, 68, 58, 47, 58, 62, 83, 53, 81, 59, 79, 65, 42, 148, 58, 100, 62, 73, 99, 55, 72, 92, 62, 102, 56, 48, 65, 71, 53, 80, 54, 89, 58, 79, 50, 56, 58, 89, 65, 32, 55, 100, 67, 78, 63, 93, 59, 76, 55, 50, 80, 41, 60, 61, 51, 54, 103, 58, 52, 57, 55, 78, 90, 70, 51, 65, 85, 55, 68, 60, 76, 65, 78, 66, 59, 55, 71, 62, 53, 69, 38, 69, 67, 60, 64, 58, 67, 85, 80, 62, 53, 88, 60, 59, 58, 69, 70, 79, 84, 110, 72, 80, 69, 76, 67, 79, 62, 64, 69, 52, 73, 51, 62, 64, 70, 53, 76, 47, 70, 61, 88, 71, 84, 53, 88, 86, 78, 53, 58, 60, 55, 69, 66, 94, 52, 56, 60, 60, 41, 65, 84, 62, 78, 42, 59, 61, 59, 65, 60, 73, 69, 71, 56, 65, 63, 61, 62, 54, 52, 68, 62, 75, 97, 60, 71, 41, 64, 64, 73, 77, 77, 85, 64, 55, 65, 56, 55, 68, 115, 60, 63, 61, 60, 72, 54, 78, 55, 67, 58, 71, 71, 76, 50, 65, 61, 56, 56, 64, 60, 78, 76, 73, 64, 61, 60, 56, 68, 64, 99, 75, 40, 71, 74, 61, 61, 46, 68, 44, 68, 88, 72, 84, 82, 63, 78, 58, 62, 53, 58, 70, 59, 55, 58, 70, 51, 51, 78, 44, 73, 76, 72, 45, 51, 79, 52, 69, 52, 58, 46, 91, 73, 69, 60, 79, 60, 85, 61, 59, 73, 66, 71, 74, 65, 83, 57, 77, 72, 61, 66, 67, 78, 68, 64, 65, 65, 57, 62, 52, 59, 70, 53, 69, 63, 57, 63, 78, 56, 53, 82, 63, 92, 96, 72, 62, 88, 60, 83, 67, 80, 96, 74, 63, 61, 79, 105, 71, 75, 52, 104, 74, 76, 51, 72, 65, 73, 75, 53, 64, 59, 44, 70, 61, 86, 77, 72, 46, 65, 66, 58, 85, 92, 47, 58, 53, 57, 55, 85, 65, 51, 76, 75, 63, 81, 91, 53, 54, 73, 91, 56, 94, 51, 58, 84, 59, 65, 82, 62, 69, 52, 79, 44, 65, 65, 64, 69, 59, 56, 53, 61, 60, 72, 81, 68, 60, 141, 42, 93, 58, 52, 59, 78, 58, 62, 48, 61, 75, 69, 63, 66, 63, 63, 85, 88, 66, 79, 47, 69, 72, 45, 72, 95, 74, 41, 76, 45, 95, 80, 66, 73, 77, 78, 55, 64, 57, 50, 70, 83, 70, 71, 89, 82, 153, 64, 72, 67, 48, 47, 63, 72, 67, 53, 58, 80, 61, 57, 78, 57, 59, 37, 53, 38, 92, 69, 59, 59, 73, 81, 70, 55, 59, 51, 51, 81, 75, 76, 83, 50, 85, 64, 57, 57, 94, 58, 43, 65, 68, 85, 43, 67, 48, 70, 71, 67, 68, 88, 64, 73, 81, 84, 70, 76, 66, 61, 71, 51, 90, 70, 75, 55, 59, 69, 71, 99, 62, 62, 76, 65, 85, 42, 62, 60, 54, 78, 73, 75, 47, 78, 107, 62, 58, 74, 70, 85, 66, 58, 70, 85, 87, 59, 59, 72, 49, 62, 62, 72, 54, 75, 66, 57, 51, 69, 64, 79, 65, 68, 63, 69, 75, 69, 51, 126, 73, 64, 71, 65, 58, 68, 68, 60, 51, 62, 74, 69, 82, 85, 80, 70, 49, 95, 55, 49, 73, 70, 78, 71, 66, 65, 84, 56, 76, 67, 80, 64, 80, 56, 57, 60, 67, 50, 58, 61, 59, 47, 40, 58, 55, 71, 58, 79, 63, 69, 51, 43, 69, 61, 56, 109, 57, 74, 73, 51, 65, 54, 58, 66, 53, 50, 72, 115, 62, 48, 71, 67, 63, 77, 58, 61, 40, 70, 60, 70, 72, 59, 46, 51, 77, 45, 64, 78, 93, 57, 66, 74, 52, 77, 66, 64, 65, 68, 63, 63, 54, 60, 80, 90, 55, 43, 72, 110, 59, 65, 49, 50, 54, 70, 47, 63, 61, 63, 43, 74, 86, 57, 79, 55, 65, 61, 70, 75, 55, 73, 66, 62, 68, 55, 55, 56, 57, 65, 55, 59, 68, 67, 81, 44, 58, 52, 58, 49, 49, 62, 58, 60, 64, 64, 62, 29, 75, 87, 56, 67, 41, 45, 63, 57, 64, 59, 81, 63, 72, 64, 56, 62, 62, 55, 62, 50, 54, 60, 68, 65, 52, 80, 70, 73, 85, 63, 69, 63, 69, 63, 52, 71, 63, 68, 61, 62, 63, 49, 55, 49, 64, 55, 57, 37, 104, 67, 64, 58, 50, 66, 70, 55, 54, 64, 66, 74, 59, 71, 39, 56, 55, 67, 77, 95, 62, 74, 49, 41, 69, 49, 52, 99, 69, 68, 54, 67, 64, 65, 81, 64, 51, 68, 64, 77, 50, 60, 54, 84, 87, 58, 73, 62, 70, 60, 92, 70, 58, 77, 65, 69, 79, 59, 74, 98, 54, 65, 66, 93, 63, 135, 63, 48, 54, 108, 83, 64, 95, 58, 70, 88, 50, 63, 55, 66, 65, 99, 41, 50, 74, 69, 65, 66, 54, 78, 82, 63, 64, 57, 58, 56, 98, 61, 63, 68, 59, 63, 70, 64, 54, 75, 70, 55, 75, 58, 72, 62, 54, 72, 53, 54, 82, 62, 51, 60, 78, 71, 64, 57, 60, 62, 67, 70, 94, 68, 48, 61, 62, 53, 65, 62, 77, 51, 71, 64, 66, 62, 70, 69, 64, 90, 84, 40, 63, 42, 61, 51, 67, 61, 74, 75, 77, 77, 54, 97, 63, 62, 63, 63, 75, 60, 59, 53, 58, 110, 76, 68, 57, 63, 65, 69, 48, 37, 59, 62, 64, 55, 61, 59, 65, 61, 61, 75, 55, 54, 53, 74, 108, 56, 31, 48, 47, 53, 85, 69, 69, 86, 88, 65, 69, 59, 62, 85, 53, 51, 51, 73, 75, 50, 49, 64, 68, 73, 110, 69, 68, 60, 84, 61, 82, 67, 68, 72, 55, 76, 95, 63, 61, 95, 56, 62, 56, 71, 46, 57, 62, 61, 126, 83, 70, 76, 67, 76, 82, 75, 71, 65, 44, 61, 69, 73, 46, 46, 45, 62, 61, 69, 82, 50, 76, 54, 66, 81, 53, 55, 75, 67, 87, 54, 72, 56, 101, 60, 45, 70, 76, 58, 88, 55, 62, 64, 63, 55, 52, 80, 53, 65, 84, 84, 63, 94, 72, 52, 56, 64, 63, 81, 51, 65, 51, 57, 68, 107, 58, 61, 82, 60, 65, 55, 58, 68, 77, 74, 55, 70, 80, 71, 83, 67, 94, 68, 57, 74, 57, 63, 58, 55, 62, 59, 64, 65, 55, 62, 54, 55, 67, 63, 85, 59, 42, 134, 67, 63, 75, 55, 68, 75, 73, 84, 66, 62, 55, 81, 66, 101, 73, 85, 81, 80, 71, 51, 54, 65, 62, 56, 82, 61, 73, 71, 66, 47, 76, 56, 66, 69, 63, 33, 81, 68, 64, 49, 72, 62, 81, 73, 77, 61, 64, 57, 64, 56, 66, 60, 37, 51, 82, 73, 51, 70, 75, 67, 59, 54, 42, 56, 69, 81, 51, 59, 41, 80, 61, 41, 55, 45, 84, 68, 68, 51, 78, 65, 46, 65, 46, 45, 66, 54, 74, 75, 47, 62, 51, 56, 96, 61, 80, 65, 62, 67, 55, 59, 69, 93, 48, 60, 51, 53, 60, 69, 61, 64, 55, 66, 63, 75, 58, 48, 74, 62, 68, 64, 68, 64, 65, 35, 48, 65, 64, 59, 64, 111, 76, 60, 53, 72, 71, 47, 50, 59, 73, 61, 68, 64, 61, 108, 64, 68, 73, 47, 62, 61, 73, 87, 89, 67, 58, 55, 54, 60, 53, 51, 66, 68, 104, 68, 68, 50, 56, 73, 83, 49, 50, 59, 64, 54, 62, 93, 34, 75, 56, 72, 58, 81, 77, 80, 37, 64, 49, 60, 68, 77, 84, 83, 84, 51, 49, 36, 63, 61, 52, 92, 91, 67, 78, 91, 103, 53, 65, 61, 107, 34, 76, 79, 78, 96, 67, 57, 74, 64, 77, 72, 69, 71, 62, 92, 77, 71, 59, 96, 98, 72, 66, 83, 97, 70, 70, 46, 72, 65, 50, 73, 71, 82, 73, 62, 48, 78, 59, 74, 64, 66, 73, 61, 57, 61, 60, 50, 48, 48, 65, 71, 57, 80, 58, 65, 71, 62, 51, 60, 56, 63, 69, 63, 76, 64, 52, 85, 63, 97, 71, 70, 35, 105, 60, 91, 74, 73, 103, 69, 53, 52, 45, 58, 77, 68, 61, 67, 60, 68, 55, 48, 84, 74, 53, 53, 63, 79, 70, 56, 55, 78, 53, 91, 40, 68, 59, 65, 65, 86, 80, 62, 56, 48, 60, 53, 76, 55, 63, 61, 61, 69, 70, 115, 71, 51, 67, 73, 73, 86, 60, 54, 54, 79, 56, 62, 66, 51, 87, 79, 46, 94, 61, 81, 84, 50, 43, 61, 72, 62, 69, 69, 52, 76, 60, 67, 41, 55, 125, 62, 105, 54, 77, 76, 65, 78, 58, 52, 75, 69, 67, 61, 66, 72, 67, 66, 102, 73, 59, 75, 101, 78, 75, 86, 49, 72, 63, 65, 67, 54, 70, 65, 104, 47, 55, 76, 46, 64, 59, 79, 50, 68, 57, 74, 69, 42, 84, 72, 55, 78, 65, 45, 46, 61, 56, 47, 71, 67, 52, 59, 61, 62, 61, 43, 54, 62, 57, 51, 54, 73, 52, 60, 60, 74, 68, 49, 60, 89, 70, 52, 61, 59, 55, 94, 50, 70, 47, 62, 66, 55, 78, 72, 53, 64, 49, 49, 65, 60, 53, 65, 82, 56, 60, 49, 58, 72, 52, 57, 61, 60, 53, 88, 57, 65, 75, 58, 68, 89, 59, 73, 55, 78, 67, 56, 63, 53, 54, 43, 77, 65, 59, 55, 44, 50, 56, 73, 70, 62, 71, 68, 69, 65, 76, 67, 50, 61, 61, 89, 92, 57, 67, 66, 55, 63, 56, 186, 46, 61, 61, 64, 77, 77, 120, 52, 57, 70, 77, 63, 76, 75, 60, 68, 59, 59, 134, 71, 62, 61, 75, 76, 52, 55, 79, 69, 63, 71, 60, 73, 63, 61, 49, 52, 69, 84, 39, 73, 71, 56, 67, 53, 69, 61, 53, 70, 57, 91, 57, 49, 86, 60, 52, 87, 57, 59, 69, 73, 66, 65, 54, 70, 72, 90, 70, 73, 62, 62, 99, 60, 65, 68, 58, 62, 73, 44, 50, 62, 73, 54, 62, 65, 55, 65, 74, 69, 113, 66, 62, 45, 67, 55, 51, 49, 51, 77, 54, 67, 45, 79, 58, 53, 58, 61, 63, 52, 109, 53, 68, 64, 73, 64, 66, 59, 54, 65, 63, 61, 60, 57, 97, 43, 68, 70, 64, 61, 66, 89, 65, 46, 66, 93, 54, 64, 138, 67, 77, 62, 62, 79, 79, 54, 85, 62, 69, 55, 65, 66, 64, 66, 68, 78, 36, 76, 47, 47, 52, 78, 71, 51, 45, 54, 64, 55, 79, 76, 63, 63, 63, 62, 58, 67, 53, 51, 64, 75, 64, 55, 64, 56, 64, 44, 67, 64, 76, 120, 94, 64, 71, 73, 66, 43, 63, 62, 40, 67, 62, 76, 57, 52, 56, 106, 53, 70, 67, 69, 62, 80, 59, 42, 65, 67, 41, 78, 57, 60, 56, 74, 60, 48, 82, 95, 56, 82, 58, 50, 71, 67, 67, 71, 55, 68, 66, 70, 67, 61, 159, 74, 74, 54, 55, 67, 73, 61, 131, 100, 62, 79, 86, 71, 72, 60, 54, 110, 67, 82, 62, 61, 57, 58, 66, 68, 80, 96, 58, 81, 66, 61, 65, 65, 58, 60, 66, 70, 54, 62, 71, 62, 97, 69, 78, 34, 77, 78, 54, 51, 61, 68, 98, 88, 46, 64, 76, 73, 67, 58, 47, 54, 72, 85, 47, 73, 63, 59, 65, 73, 58, 56, 54, 77, 86, 68, 74, 97, 32, 55, 56, 61, 66, 71, 77, 119, 61, 54, 43, 43, 63, 63, 53, 64, 62, 65, 54, 53, 59, 54, 65, 82, 56, 59, 87, 69, 57, 62, 52, 57, 68, 65, 48, 46, 60, 43, 36, 89, 75, 74, 53, 75, 74, 85, 81, 75, 79, 62, 51, 63, 91, 87, 66, 82, 80, 53, 83, 65, 69, 62, 56, 54, 81, 60, 57, 56, 98, 68, 60, 76, 67, 57, 46, 54, 62, 69, 60, 39, 64, 80, 106, 52, 55, 72, 75, 61, 78, 57, 60, 55, 87, 84, 72, 59, 66, 60, 67, 59, 69, 56, 63, 78, 77, 70, 61, 67, 51, 79, 68, 61, 58, 84, 86, 60, 48, 47, 72, 76, 77, 68, 86, 60, 50, 56, 77, 69, 48, 65, 46, 93, 57, 67, 65, 81, 56, 75, 65, 117, 67, 69, 68, 47, 58, 59, 49, 85, 55, 83, 57, 79, 66, 61, 45, 60, 56, 76, 65, 64, 57, 74, 80, 45, 49, 110, 67, 60, 90, 68, 97, 74, 81, 83, 84, 54, 48, 68, 62, 39, 63, 67, 56, 59, 64, 71, 55, 66, 42, 52, 61, 112, 48, 44, 49, 65, 58, 65, 51, 101, 55, 51, 70, 51, 77, 53, 72, 81, 55, 68, 82, 74, 61, 44, 48, 74, 56, 62, 72, 54, 48, 63, 69, 62, 54, 121, 47, 78, 73, 71, 52, 67, 58, 76, 57, 61, 57, 57, 54, 51, 70, 71, 57, 78, 61, 53, 48, 40, 54, 44, 67, 82, 32, 63, 54, 59, 61, 58, 58, 80, 48, 68, 58, 64, 62, 81, 72, 53, 79, 57, 75, 80, 75, 64, 64, 61, 41, 68, 71, 60, 67, 51, 101, 46, 56, 67, 60, 56, 53, 50, 55, 68, 65, 63, 80, 65, 58, 74, 87, 49, 56, 58, 56, 62, 52, 48, 52, 74, 67, 74, 84, 55, 53, 79, 80, 62, 44, 55, 73, 76, 51, 58, 54, 56, 63, 58, 64, 54, 55, 41, 79, 68, 57, 72, 53, 70, 64, 94, 79, 76, 65, 57, 85, 51, 39, 68, 69, 76, 94, 46, 51, 51, 91, 94, 80, 68, 43, 75, 63, 80, 68, 47, 44, 49, 73, 88, 64, 59, 51, 50, 76, 67, 78, 41, 71, 86, 63, 81, 52, 93, 84, 54, 72, 73, 80, 60, 88, 86, 54, 63, 53, 46, 34, 82, 48, 77, 47, 62, 61, 89, 72, 76, 74, 58, 58, 67, 78, 92, 67, 93, 93, 97, 72, 45, 50, 77, 83, 62, 45, 66, 57, 50, 78, 69, 57, 56, 70, 54, 33, 66, 69, 47, 61, 65, 43, 87, 58, 81, 67, 99, 37, 72, 80, 72, 60, 95, 68, 69, 65, 57, 46, 67, 68, 58, 89, 56, 51, 58, 53, 88, 75, 63, 50, 64, 69, 55, 65, 48, 72, 66, 68, 53, 87, 57, 59, 81, 99, 40, 59, 69, 68, 49, 73, 89, 66, 56, 54, 74, 57, 71, 77, 68, 59, 56, 58, 64, 77, 76, 77, 68, 79, 81, 82, 47, 64, 44, 80, 66, 58, 53, 84, 63, 68, 81, 57, 63, 85, 62, 74, 54, 41, 108, 83, 54, 74, 80, 105, 106, 71, 67, 81, 60, 56, 56, 97, 39, 98, 63, 87, 59, 73, 61, 71, 73, 60, 71, 69, 89, 73, 71, 80, 55, 78, 62, 87, 94, 55, 52, 57, 70, 76, 66, 52, 83, 71, 40, 59, 44, 53, 74, 87, 105, 64, 53, 102, 68, 40, 50, 78, 70, 65, 72, 61, 83, 111, 60, 67, 55, 65, 79, 52, 64, 60, 74, 73, 49, 50, 61, 99, 77, 57, 78, 69, 53, 49, 91, 73, 58, 70, 57, 50, 59, 61, 78, 45, 44, 74, 73, 44, 58, 63, 48, 70, 74, 63, 63, 63, 76, 53, 54, 45, 72, 69, 66, 59, 45, 53, 56, 55, 40, 66, 60, 56, 66, 76, 36, 74, 34, 51, 71, 51, 70, 55, 43, 48, 89, 74, 76, 79, 54, 82, 66, 46, 72, 72, 72, 65, 89, 57, 104, 52, 72, 85, 54, 44, 52, 67, 58, 46, 47, 69, 69, 75, 18, 95, 60, 67, 95, 62, 82, 86, 51, 72, 75, 64, 86, 62, 55, 61, 73, 105, 72, 101, 66, 72, 55, 54, 51, 45, 77, 49, 69, 77, 54, 70, 69, 68, 61, 66, 85, 50, 59, 69, 69, 75, 50, 87, 95, 71, 57, 60, 67, 80, 53, 60, 64, 87, 46, 72, 51, 72, 58, 54, 66, 70, 57, 50, 75, 51, 45, 42, 84, 68, 76, 69, 78, 64, 63, 49, 62, 66, 68, 75, 82, 87, 65, 50, 79, 50, 56, 53, 70, 63, 63, 74, 89, 68, 81, 64, 58, 82, 75, 48, 57, 78, 62, 70, 77, 64, 62, 38, 74, 65, 69, 61, 59, 52, 45, 55, 67, 88, 45, 77, 59, 55, 61, 56, 40, 63, 99, 66, 61, 72, 84, 55, 65, 43, 61, 57, 59, 55, 68, 50, 71, 67, 78, 70, 67, 66, 74, 65, 60, 47, 52, 53, 85, 126, 54, 120, 100, 53, 45, 58, 76, 84, 58, 65, 81, 37, 61, 86, 58, 55, 59, 70, 44, 72, 71, 47, 64, 62, 72, 66, 66, 53, 82, 41, 74, 59, 67, 54, 122, 69, 86, 84, 59, 74, 46, 63, 49, 65, 97, 52, 69, 44, 70, 71, 54, 60, 73, 59, 67, 56, 61, 70, 55, 77, 64, 76, 78, 72, 60, 62, 92, 62, 58, 87, 63, 58, 66, 51, 38, 52, 65, 53, 67, 81, 127, 75, 65, 79, 56, 58, 38, 72, 70, 75, 61, 73, 58, 71, 73, 72, 102, 62, 51, 47, 49, 48, 56, 66, 80, 72, 71, 59, 65, 53, 50, 61, 81, 75, 67, 99, 56, 57, 52, 57, 87, 74, 69, 78, 78, 59, 56, 91, 125, 58, 85, 58, 60, 88, 52, 56, 67, 70, 59, 63, 75, 74, 57, 58, 79, 70, 73, 74, 65, 56, 72, 43, 56, 75, 74, 95, 55, 59, 63, 48, 72, 89, 69, 68, 82, 71, 60, 66, 53, 50, 49, 52, 67, 66, 99, 60, 67, 69, 54, 94, 78, 54, 65, 63, 63, 77, 49, 72, 58, 51, 90, 65, 36, 53, 68, 69, 46, 77, 63, 70, 61, 56, 67, 68, 57, 55, 62, 57, 76, 85, 48, 69, 53, 58, 59, 37, 68, 60, 62, 62, 50, 50, 50, 64, 114, 104, 70, 78, 56, 72, 51, 54, 77, 51, 61, 51, 67, 70, 63, 68, 77, 46, 65, 94, 57, 53, 79, 32, 84, 57, 55, 71, 74, 55, 50, 84, 79, 55, 78, 63, 56, 51, 63, 75, 43, 61, 79, 64, 68, 103, 60, 65, 64, 69, 66, 81, 50, 117, 84, 54, 101, 56, 52, 68, 53, 41, 61, 81, 67, 71, 69, 62, 59, 61, 72, 86, 79, 68, 64, 97, 65, 63, 51, 80, 86, 91, 73, 53, 73, 63, 57, 50, 63, 69, 71, 71, 55, 62, 63, 52, 63, 90, 60, 62, 76, 86, 70, 74, 61, 59, 51, 95, 57, 59, 109, 68, 47, 55, 72, 57, 58, 103, 66, 83, 69, 51, 59, 69, 49, 54, 63, 73, 54, 52, 60, 90, 53, 92, 72, 72, 60, 52, 49, 70, 49, 60, 84, 66, 55, 74, 56, 84, 78, 74, 59, 67, 87, 58, 82, 75, 59, 56, 77, 103, 71, 64, 75, 58, 68, 76, 66, 77, 54, 72, 63, 53, 69, 52, 81, 73, 50, 73, 57, 57, 45, 98, 73, 77, 63, 33, 79, 50, 73, 59, 67, 65, 51, 62, 66, 55, 71, 70, 46, 61, 61, 76, 51, 56, 52, 58, 49, 72, 57, 93, 69, 60, 49, 68, 57, 50, 76, 71, 43, 72, 59, 71, 75, 105, 48, 55, 111, 69, 52, 63, 41, 72, 79, 63, 63, 73, 58, 63, 49, 82, 76, 108, 54, 90, 33, 71, 55, 48, 56, 64, 61, 57, 53, 54, 73, 49, 56, 79, 76, 56, 90, 68, 89, 60, 55, 57, 91, 84, 50, 67, 67, 63, 71, 61, 66, 53, 82, 95, 52, 92, 98, 73, 68, 50, 53, 52, 58, 58, 73, 77, 56, 47, 64, 80, 53, 47, 58, 60, 44, 49, 61, 49, 71, 84, 68, 53, 67, 80, 62, 82, 68, 71, 54, 59, 62, 60, 62, 72, 48, 76, 81, 64, 77, 47, 45, 56, 101, 78, 67, 54, 56, 37, 60, 67, 50, 51, 52, 71, 71, 43, 49, 57, 56, 59, 49, 59, 86, 30, 58, 62, 51, 60, 65, 100, 60, 68, 70, 57, 101, 60, 64, 45, 62, 54, 55, 51, 72, 74, 62, 56, 48, 95, 59, 101, 90, 67, 116, 76, 59, 54, 123, 64, 68, 59, 69, 51, 68, 56, 68, 75, 64, 62, 85, 74, 67, 47, 69, 61, 102, 48, 72, 65, 70, 71, 75, 77, 62, 73, 65, 54, 59, 70, 57, 93, 70, 63, 65, 56, 69, 43, 53, 48, 108, 67, 57, 65, 75, 61, 56, 73, 113, 46, 60, 72, 65, 73, 75, 65, 66, 57, 58, 47, 54, 51, 61, 68, 65, 70, 79, 67, 76, 74, 56, 64, 53, 84, 81, 74, 92, 54, 80, 93, 72, 53, 87, 62, 61, 69, 48, 115, 55, 69, 71, 63, 75, 83, 64, 70, 68, 53, 66, 86, 105, 84, 51, 96, 60, 60, 108, 113, 93, 78, 52, 69, 86, 59, 44, 69, 49, 52, 74, 61, 48, 50, 48, 68, 67, 58, 79, 44, 70, 72, 57, 54, 58, 76, 64, 91, 56, 54, 50, 68, 64, 51, 69, 56, 60, 56, 61, 65, 53, 41, 99, 75, 43, 72, 54, 56, 106, 49, 52, 58, 57, 167, 79, 67, 77, 63, 62, 59, 75, 51, 64, 100, 41, 58, 90, 62, 61, 71, 60, 89, 64, 58, 39, 69, 64, 67, 77, 74, 44, 51, 37, 48, 64, 91, 58, 49, 102, 82, 45, 65, 69, 62, 50, 90, 69, 60, 57, 73, 50, 41, 69, 74, 66, 71, 59, 57, 66, 75, 58, 66, 66, 67, 74, 82, 54, 59, 83, 70, 54, 47, 68, 54, 61, 78, 66, 65, 60, 46, 53, 59, 123, 62, 76, 49, 66, 58, 49, 78, 72, 56, 64, 54, 97, 64, 55, 47, 58, 89, 59, 57, 42, 70, 40, 44, 42, 40, 56, 47, 57, 69, 92, 70, 84, 83, 91, 54, 104, 69, 56, 76, 70, 61, 38, 76, 49, 69, 55, 65, 71, 64, 84, 56, 72, 67, 70, 98, 75, 62, 77, 76, 61, 62, 52, 67, 60, 68, 86, 68, 50, 78, 73, 67, 82, 130, 89, 45, 73, 75, 65, 54, 52, 96, 50, 55, 68, 68, 66, 93, 49, 78, 56, 55, 43, 67, 36, 72, 55, 88, 62, 63, 73, 66, 56, 56, 73, 56, 72, 90, 82, 89, 47, 76, 89, 74, 75, 51, 58, 58, 55, 72, 72, 67, 57, 85, 107, 70, 56, 50, 68, 88, 63, 69, 71, 73, 56, 59, 56, 81, 58, 58, 65, 61, 67, 68, 55, 71, 71, 69, 70, 67, 61, 50, 62, 39, 62, 79, 54, 106, 63, 82, 65, 65, 77, 62, 55, 68, 57, 70, 80, 52, 70, 79, 54, 67, 60, 76, 74, 55, 65, 111, 60, 71, 77, 66, 46, 55, 69, 65, 65, 65, 90, 75, 43, 67, 58, 62, 60, 98, 63, 63, 83, 63, 85, 76, 49, 56, 60, 44, 80, 57, 48, 51, 58, 70, 56, 114, 63, 61, 64, 48, 68, 57, 77, 73, 50, 40, 63, 88, 75, 54, 53, 79, 70, 45, 63, 99, 49, 88, 46, 51, 74, 62, 52, 42, 43, 80, 44, 53, 65, 36, 69, 80, 78, 50, 50, 93, 68, 65, 64, 54, 89, 81, 59, 60, 105, 81, 62, 53, 120, 45, 67, 54, 83, 81, 157, 69, 62, 72, 50, 78, 65, 60, 61, 65, 86, 77, 65, 65, 50, 56, 62, 62, 74, 77, 62, 77, 100, 59, 72, 92, 78, 64, 71, 93, 53, 64, 65, 69, 39, 52, 53, 79, 67, 47, 84, 46, 92, 54, 83, 62, 51, 72, 52, 63, 71, 66, 53, 57, 94, 69, 49, 70, 69, 57, 76, 61, 71, 52, 80, 78, 64, 58, 69, 51, 62, 69, 59, 70, 67, 63, 59, 63, 60, 58, 64, 70, 91, 49, 70, 84, 77, 47, 65, 133, 66, 97, 53, 78, 84, 74, 87, 63, 59, 55, 85, 65, 51, 81, 60, 69, 60, 59, 39, 36, 59, 44, 48, 67, 57, 65, 57, 96, 59, 77, 73, 70, 72, 71, 51, 51, 69, 49, 67, 47, 64, 68, 57, 58, 60, 71, 70, 48, 45, 43, 61, 64, 75, 77, 70, 52, 44, 58, 68, 76, 69, 66, 66, 62, 93, 77, 47, 43, 57, 63, 49, 81, 55, 50, 65, 66, 92, 67, 63, 28, 64, 64, 75, 74, 64, 56, 53, 73, 65, 62, 57, 55, 126, 79, 62, 83, 81, 55, 71, 47, 56, 69, 72, 67, 60, 88, 69, 52, 62, 61, 56, 47, 73, 55, 114, 79, 68, 68, 158, 62, 58, 77, 58, 64, 50, 75, 54, 65, 77, 55, 119, 83, 64, 54, 67, 65, 64, 70, 66, 70, 85, 38, 59, 76, 66, 60, 56, 66, 62, 55, 49, 84, 63, 71, 58, 68, 67, 58, 66, 125, 49, 68, 71, 74, 63, 64, 86, 81, 68, 50, 69, 71, 61, 55, 66, 58, 45, 118, 82, 64, 62, 62, 47, 69, 61, 68, 51, 61, 69, 66, 63, 53, 52, 122, 84, 58, 44, 70, 54, 91, 50, 69, 61, 99, 54, 63, 102, 72, 57, 58, 53, 73, 59, 73, 56, 64, 72, 47, 86, 58, 52, 51, 62, 66, 54, 79, 81, 90, 62, 95, 62, 59, 50, 66, 68, 55, 51, 68, 63, 62, 45, 54, 93, 92, 63, 72, 49, 68, 90, 69, 68, 80, 56, 44, 59, 61, 68, 84, 59, 91, 86, 66, 77, 73, 83, 64, 64, 49, 62, 51, 57, 46, 85, 94, 69, 58, 67, 81, 55, 162, 70, 61, 68, 89, 82, 66, 60, 58, 72, 68, 62, 64, 91, 68, 57, 66, 55, 64, 52, 61, 56, 94, 42, 83, 59, 47, 61, 64, 71, 72, 56, 61, 68, 64, 63, 35, 60, 68, 60, 62, 48, 47, 71, 63, 45, 59, 85, 53, 66, 62, 59, 72, 56, 115, 82, 55, 74, 80, 61, 67, 74, 75, 67, 116, 71, 77, 58, 55, 63, 56, 79, 77, 65, 48, 76, 50, 48, 70, 55, 63, 64, 52, 60, 58, 62, 51, 45, 99, 76, 61, 61, 64, 88, 76, 64, 65, 76, 48, 71, 69, 55, 63, 57, 52, 65, 74, 69, 67, 64, 63, 85, 67, 55, 100, 71, 59, 54, 61, 83, 70, 90, 47, 61, 76, 70, 58, 56, 56, 53, 59, 60, 86, 102, 64, 87, 60, 80, 45, 85, 72, 80, 58, 52, 58, 57, 63, 67, 56, 58, 93, 76, 53, 58, 43, 61, 53, 55, 71, 48, 57, 69, 52, 57, 67, 55, 84, 100, 37, 65, 68, 67, 54, 89, 54, 50, 85, 79, 83, 86, 48, 51, 55, 63, 62, 71, 57, 66, 65, 75, 46, 69, 49, 83, 91, 47, 67, 73, 47, 53, 66, 67, 55, 61, 91, 62, 73, 74, 53, 55, 51, 63, 51, 79, 86, 52, 86, 66, 53, 62, 77, 70, 51, 74, 55, 58, 56, 67, 69, 89, 46, 80, 59, 46, 93, 55, 64, 59, 61, 79, 61, 78, 68, 61, 62, 52, 50, 54, 56, 61, 61, 63, 61, 48, 59, 46, 56, 56, 50, 63, 64, 59, 67, 62, 56, 64, 65, 55, 69, 49, 63, 57, 56, 67, 68, 56, 67, 84, 92, 46, 55, 73, 82, 60, 67, 56, 70, 51, 79, 55, 66, 61, 67, 91, 67, 46, 57, 61, 60, 67, 65, 58, 65, 55, 63, 61, 56, 61, 52, 83, 62, 58, 72, 72, 66, 64, 88, 65, 106, 84, 81, 56, 69, 101, 86, 64, 60, 64, 55, 70, 93, 83, 65, 62, 71, 66, 80, 62, 74, 57, 78, 53, 51, 59, 68, 69, 75, 97, 56, 64, 43, 62, 50, 64, 58, 31, 59, 48, 80, 49, 45, 106, 90, 62, 81, 70, 78, 79, 47, 47, 78, 74, 58, 53, 80, 93, 55, 61, 71, 76, 50, 68, 67, 67, 73, 62, 58, 62, 75, 61, 66, 142, 53, 81, 89, 59, 60, 69, 59, 99, 65, 63, 57, 59, 67, 71, 93, 71, 52, 58, 52, 77, 66, 58, 79, 81, 86, 52, 69, 46, 51, 51, 61, 60, 75, 68, 44, 76, 46, 67, 62, 50, 66, 72, 63, 54, 53, 58, 75, 44, 45, 75, 55, 104, 56, 89, 53, 61, 66, 68, 58, 80, 62, 60, 72, 55, 42, 48, 57, 70, 71, 44, 69, 112, 61, 62, 69, 54, 60, 66, 102, 46, 67, 63, 70, 63, 80, 54, 83, 59, 63, 63, 82, 77, 59, 71, 47, 64, 87, 53, 80, 41, 80, 76, 82, 74, 58, 63, 52, 61, 63, 57, 60, 67, 54, 62, 63, 58, 69, 70, 93, 74, 68, 50, 91, 61, 73, 89, 63, 116, 71, 71, 69, 51, 91, 44, 76, 121, 50, 32, 70, 63, 86, 63, 62, 82, 65, 70, 72, 77, 48, 61, 87, 51, 50, 53, 82, 59, 81, 48, 73, 63, 59, 79, 57, 57, 51, 84, 69, 70, 81, 73, 74, 50, 73, 67, 59, 54, 58, 57, 85, 60, 58, 55, 62, 63, 60, 55, 78, 65, 64, 55, 87, 54, 71, 64, 97, 76, 47, 86, 71, 70, 73, 93, 81, 64, 51, 67, 56, 79, 48, 75, 57, 60, 60, 69, 66, 53, 64, 60, 55, 63, 59, 69, 68, 67, 88, 55, 61, 81, 56, 59, 33, 66, 54, 73, 75, 68, 78, 51, 61, 61, 62, 66, 63, 83, 68, 58, 56, 73, 62, 58, 61, 73, 65, 73, 58, 59, 47, 51, 71, 92, 79, 68, 111, 79, 67, 67, 69, 65, 67, 69, 60, 50, 84, 59, 54, 57, 82, 89, 59, 78, 53, 92, 60, 70, 69, 68, 88, 60, 70, 51, 62, 51, 61, 55, 57, 46, 65, 86, 45, 66, 103, 57, 66, 71, 66, 55, 83, 88, 74, 61, 84, 73, 50, 51, 79, 70, 72, 62, 104, 44, 92, 72, 58, 64, 69, 42, 75, 70, 55, 45, 42, 67, 51, 72, 62, 54, 52, 43, 64, 52, 70, 74, 50, 58, 57, 47, 51, 48, 61, 83, 67, 72, 76, 65, 50, 76, 71, 60, 72, 53, 61, 47, 73, 51, 119, 44, 57, 60, 52, 76, 87, 38, 70, 51, 62, 58, 39, 88, 59, 61, 55, 52, 64, 60, 55, 58, 71, 68, 62, 41, 46, 79, 55, 60, 55, 56, 73, 50, 93, 61, 63, 103, 61, 73, 55, 100, 63, 70, 52, 50, 79, 73, 61, 67, 78, 79, 72, 68, 58, 44, 41, 64, 66, 64, 59, 51, 93, 58, 93, 88, 47, 85, 63, 56, 55, 69, 45, 51, 83, 79, 46, 67, 72, 71, 73, 66, 55, 77, 64, 89, 46, 69, 77, 90, 84, 48, 91, 69, 63, 71, 78, 59, 90, 70, 53, 68, 57, 47, 83, 49, 63, 76, 50, 63, 57, 114, 43, 61, 44, 52, 60, 85, 63, 60, 62, 72, 47, 75, 44, 46, 45, 73, 57, 56, 55, 146, 68, 45, 54, 72, 76, 78, 74, 87, 54, 78, 67, 50, 61, 55, 52, 61, 59, 39, 123, 60, 75, 51, 49, 66, 45, 63, 59, 80, 73, 68, 83, 88, 53, 58, 81, 73, 51, 51, 58, 58, 78, 40, 64, 86, 64, 51, 77, 59, 61, 50, 71, 59, 75, 49, 51, 57, 62, 70, 70, 63, 72, 69, 63, 48, 69, 78, 62, 78, 47, 53, 64, 84, 61, 64, 61, 57, 90, 99, 61, 62, 60, 88, 69, 102, 84, 50, 55, 45, 60, 70, 78, 51, 65, 73, 66, 71, 60, 87, 77, 57, 44, 69, 64, 64, 76, 69, 58, 73, 62, 79, 80, 85, 66, 85, 62, 81, 57, 71, 41, 81, 73, 53, 53, 87, 56, 50, 96, 63, 79, 66, 42, 66, 65, 61, 68, 52, 71, 74, 56, 64, 80, 57, 60, 53, 65, 54, 68, 59, 73, 67, 70, 59, 63, 61, 50, 56, 54, 64, 80, 69, 61, 55, 78, 57, 71, 65, 87, 78, 64, 56, 62, 70, 48, 68, 61, 66, 43, 63, 78, 57, 60, 61, 66, 60, 94, 65, 68, 70, 54, 71, 55, 67, 79, 45, 80, 71, 57, 62, 71, 64, 62, 54, 63, 51, 66, 71, 81, 61, 66, 61, 61, 65, 71, 61, 58, 69, 69, 72, 57, 62, 59, 61, 55, 69, 58, 68, 76, 55, 60, 83, 56, 74, 57, 50, 67, 64, 60, 50, 103, 58, 67, 71, 67, 74, 82, 85, 47, 65, 70, 55, 60, 126, 66, 73, 75, 58, 67, 52, 61, 77, 84, 55, 44, 79, 65, 81, 46, 70, 49, 40, 67, 65, 83, 70, 56, 33, 86, 80, 75, 65, 64, 64, 92, 57, 71, 63, 99, 58, 50, 65, 61, 61, 68, 59, 78, 76, 56, 42, 60, 54, 85, 109, 63, 103, 62, 58, 72, 74, 80, 81, 69, 51, 66, 95, 62, 55, 41, 100, 59, 61, 60, 81, 65, 51, 86, 43, 62, 57, 55, 77, 122, 74, 53, 79, 66, 68, 57, 79, 56, 88, 47, 56, 72, 71, 59, 118, 74, 67, 43, 83, 64, 53, 51, 77, 69, 66, 42, 67, 58, 52, 76, 62, 74, 52, 60, 58, 71, 71, 46, 51, 58, 54, 63, 53, 55, 56, 74, 83, 76, 51, 51, 64, 57, 59, 64, 83, 60, 53, 77, 63, 52, 75, 59, 58, 57, 55, 74, 52, 54, 50, 47, 75, 67, 78, 48, 73, 63, 59, 61, 58, 49, 98, 51, 74, 61, 63, 53, 68, 64, 57, 64, 46, 68, 54, 51, 65, 71, 63, 89, 74, 46, 56, 63, 99, 70, 54, 65, 78, 68, 55, 61, 81, 94, 63, 63, 66, 35, 69, 55, 52, 63, 96, 81, 89, 56, 62, 76, 74, 56, 77, 83, 60, 65, 59, 58, 106, 83, 66, 43, 71, 59, 53, 57, 82, 68, 68, 60, 70, 47, 47, 49, 65, 53, 70, 66, 62, 88, 54, 57, 71, 69, 76, 70, 58, 68, 53, 55, 55, 83, 68, 59, 67, 78, 76, 66, 100, 61, 79, 58, 66, 65, 55, 60, 65, 79, 76, 70, 55, 61, 67, 61, 54, 98, 41, 65, 56, 82, 44, 48, 82, 66, 77, 64, 73, 50, 78, 64, 31, 59, 60, 58, 76, 83, 62, 80, 74, 53, 65, 71, 54, 55, 51, 79, 73, 70, 56, 66, 56, 80, 57, 90, 61, 50, 63, 53, 69, 71, 45, 58, 53, 76, 98, 70, 68, 63, 77, 92, 65, 76, 99, 52, 60, 80, 75, 91, 73, 81, 73, 60, 56, 52, 56, 59, 59, 56, 69, 78, 90, 51, 58, 74, 56, 54, 64, 65, 67, 84, 72, 82, 85, 69, 59, 63, 86, 70, 79, 57, 71, 82, 63, 65, 66, 76, 67, 53, 86, 87, 84, 45, 56, 69, 55, 73, 65, 95, 77, 61, 59, 61, 66, 74, 63, 52, 50, 51, 56, 83, 86, 93, 69, 76, 94, 91, 46, 60, 66, 54, 93, 53, 63, 91, 65, 60, 73, 63, 63, 51, 87, 56, 56, 64, 86, 54, 65, 64, 62, 59, 66, 58, 58, 71, 69, 77, 74, 57, 68, 59, 56, 51, 67, 40, 64, 50, 41, 94, 71, 62, 63, 61, 76, 65, 55, 74, 74, 58, 68, 66, 66, 28, 67, 54, 60, 76, 58, 61, 69, 57, 70, 54, 77, 77, 70, 49, 62, 84, 67, 64, 66, 55, 119, 52, 59, 57, 47, 65, 58, 43, 83, 68, 65, 71, 53, 69, 59, 64, 43, 69, 69, 55, 57, 59, 57, 71, 65, 58, 69, 40, 64, 56, 59, 69, 62, 57, 63, 66, 55, 67, 60, 55, 67, 59, 67, 86, 56, 30, 77, 61, 58, 74, 62, 45, 55, 73, 52, 57, 60, 56, 53, 60, 81, 83, 74, 59, 68, 61, 47, 66, 61, 64, 62, 51, 76, 75, 62, 61, 54, 71, 84, 69, 87, 62, 71, 64, 53, 76, 53, 77, 86, 73, 57, 65, 62, 72, 76, 88, 50, 55, 69, 66, 68, 67, 73, 67, 75, 64, 56, 77, 75, 61, 50, 86, 60, 59, 59, 71, 63, 63, 97, 61, 67, 59, 64, 61, 93, 66, 54, 53, 41, 100, 65, 59, 57, 67, 57, 58, 75, 46, 76, 56, 55, 103, 59, 46, 58, 64, 52, 91, 61, 83, 51, 91, 61, 144, 50, 40, 77, 51, 64, 57, 51, 64, 50, 67, 67, 72, 82, 60, 42, 76, 70, 67, 62, 79, 61, 71, 66, 72, 88, 83, 56, 72, 64, 61, 73, 84, 63, 60, 61, 57, 82, 69, 69, 74, 27, 50, 60, 65, 74, 51, 53, 49, 53, 61, 75, 49, 60, 68, 53, 63, 74, 100, 49, 65, 64, 63, 65, 68, 52, 67, 53, 47, 52, 95, 64, 42, 80, 69, 117, 103, 51, 98, 82, 59, 64, 78, 60, 78, 55, 52, 70, 53, 73, 91, 49, 55, 78, 62, 76, 91, 58, 68, 55, 69, 66, 80, 58, 51, 60, 87, 90, 69, 62, 63, 58, 65, 71, 73, 78, 47, 56, 42, 77, 67, 42, 53, 61, 63, 70, 85, 74, 71, 47, 56, 83, 73, 72, 67, 56, 57, 57, 66, 66, 64, 77, 63, 66, 50, 84, 75, 94, 60, 66, 85, 75, 47, 63, 59, 58, 72, 68, 67, 78, 46, 62, 81, 58, 60, 68, 73, 87, 58, 56, 62, 61, 68, 69, 71, 74, 65, 61, 63, 101, 67, 64, 54, 38, 40, 66, 61, 53, 71, 70, 89, 64, 51, 77, 67, 65, 97, 74, 90, 70, 61, 66, 72, 131, 86, 53, 68, 73, 58, 73, 66, 61, 47, 53, 64, 62, 61, 32, 67, 62, 65, 59, 47, 59, 87, 70, 72, 61, 70, 77, 56, 47, 49, 70, 77, 65, 76, 53, 44, 72, 64, 63, 89, 65, 50, 72, 80, 63, 73, 51, 70, 48, 64, 56, 69, 69, 48, 88, 51, 67, 53, 56, 73, 63, 55, 59, 85, 67, 45, 65, 61, 70, 71, 75, 80, 62, 48, 89, 79, 67, 56, 69, 68, 71, 53, 107, 61, 61, 64, 54, 63, 65, 62, 66, 64, 54, 77, 70, 57, 81, 72, 64, 58, 85, 86, 68, 85, 48, 44, 66, 97, 70, 59, 68, 60, 59, 95, 48, 76, 73, 61, 67, 112, 66, 51, 76, 61, 56, 70, 77, 55, 68, 62, 66, 71, 82, 58, 64, 59, 54, 66, 59, 63, 53, 72, 63, 61, 56, 76, 61, 63, 61, 57, 47, 112, 76, 86, 82, 57, 87, 100, 78, 86, 75, 66, 75, 56, 57, 45, 55, 54, 48, 58, 57, 74, 55, 93, 78, 58, 51, 92, 37, 52, 76, 46, 52, 63, 66, 61, 82, 70, 57, 73, 75, 81, 64, 44, 59, 70, 51, 62, 58, 57, 76, 63, 43, 60, 63, 77, 58, 53, 75, 76, 69, 140, 57, 68, 58, 56, 51, 70, 68, 60, 61, 57, 49, 66, 61, 107, 67, 76, 76, 58, 60, 64, 88, 68, 48, 67, 77, 55, 90, 65, 57, 57, 44, 73, 61, 60, 53, 73, 59, 58, 61, 52, 59, 70, 61, 69, 74, 84, 64, 51, 57, 48, 53, 67, 55, 93, 68, 58, 97, 55, 52, 49, 67, 71, 59, 83, 61, 59, 62, 61, 69, 96, 60, 68, 77, 66, 61, 62, 53, 81, 41, 46, 84, 66, 83, 66, 65, 68, 77, 51, 64, 66, 73, 68, 50, 64, 80, 77, 87, 90, 66, 54, 61, 44, 71, 73, 44, 98, 74, 68, 49, 74, 71, 83, 62, 78, 73, 86, 78, 77, 45, 51, 89, 79, 62, 88, 49, 54, 58, 57, 55, 63, 103, 63, 89, 78, 70, 46, 55, 70, 85, 75, 57, 60, 55, 56, 104, 56, 59, 74, 52, 69, 57, 68, 55, 74, 84, 57, 48, 54, 54, 65, 66, 78, 75, 47, 53, 113, 66, 74, 60, 57, 66, 65, 59, 79, 54, 130, 81, 61, 75, 87, 49, 50, 69, 83, 53, 56, 72, 69, 74, 51, 58, 60, 72, 73, 56, 57, 70, 60, 65, 108, 78, 73, 71, 73, 80, 86, 39, 51, 77, 63, 53, 68, 43, 48, 54, 80, 62, 63, 69, 51, 86, 44, 68, 65, 49, 49, 65, 57, 80, 68, 88, 62, 55, 67, 48, 68, 74, 79, 75, 68, 55, 67, 64, 112, 65, 67, 40, 62, 55, 60, 46, 62, 75, 78, 97, 82, 75, 101, 59, 83, 59, 52, 58, 60, 63, 40, 65, 46, 53, 84, 61, 62, 72, 71, 65, 67, 66, 62, 78, 64, 119, 90, 67, 60, 96, 69, 67, 74, 69, 39, 53, 68, 70, 59, 33, 56, 64, 61, 69, 62, 62, 72, 52, 57, 75, 55, 77, 56, 58, 38, 62, 87, 58, 41, 42, 45, 62, 54, 89, 67, 115, 63, 59, 59, 64, 49, 82, 64, 57, 62, 67, 84, 51, 88, 64, 78, 49, 53, 148, 87, 70, 49, 52, 99, 76, 102, 66, 89, 71, 67, 61, 71, 81, 72, 48, 95, 67, 86, 63, 86, 47, 66, 64, 73, 41, 57, 80, 61, 54, 73, 57, 83, 66, 68, 65, 47, 47, 59, 83, 53, 77, 58, 68, 66, 57, 60, 55, 64, 84, 64, 71, 54, 64, 66, 67, 82, 60, 63, 72, 53, 61, 61, 53, 73, 57, 52, 59, 61, 75, 48, 59, 100, 48, 64, 62, 75, 68, 58, 66, 63, 66, 56, 76, 80, 68, 92, 57, 78, 89, 89, 71, 58, 84, 65, 77, 72, 72, 86, 44, 65, 54, 62, 79, 64, 64, 72, 75, 59, 54, 51, 45, 60, 66, 54, 46, 59, 76, 77, 67, 62, 61, 67, 30, 124, 70, 68, 54, 58, 56, 45, 63, 59, 65, 72, 70, 50, 58, 69, 68, 137, 64, 69, 57, 81, 60, 98, 70, 86, 67, 90, 51, 51, 62, 68, 62, 57, 71, 65, 71, 125, 51, 67, 56, 54, 59, 93, 62, 43, 83, 39, 63, 68, 109, 65, 58, 77, 92, 69, 73, 77, 61, 66, 84, 64, 61, 56, 66, 55, 58, 57, 59, 54, 63, 60, 78, 77, 67, 58, 54, 94, 83, 63, 53, 67, 61, 72, 71, 76, 56, 59, 80, 62, 69, 70, 76, 117, 62, 61, 69, 63, 100, 37, 100, 68, 57, 80, 82, 54, 50, 41, 65, 60, 64, 54, 54, 48, 64, 53, 84, 63, 53, 51, 72, 84, 57, 70, 62, 61, 73, 75, 51, 81, 74, 56, 51, 61, 46, 66, 77, 57, 50, 46, 50, 60, 64, 50, 58, 63, 62, 117, 45, 84, 43, 115, 62, 71, 66, 84, 59, 74, 40, 52, 64, 67, 58, 64, 72, 63, 46, 69, 55, 56, 76, 58, 62, 97, 69, 93, 62, 93, 70, 81, 78, 62, 63, 49, 73, 63, 58, 54, 53, 50, 59, 59, 56, 90, 39, 67, 74, 50, 66, 64, 63, 70, 57, 64, 57, 59, 87, 63, 58, 58, 80, 56, 73, 48, 57, 59, 91, 64, 61, 66, 76, 55, 83, 51, 119, 62, 68, 79, 59, 77, 54, 79, 62, 64, 81, 63, 74, 44, 116, 57, 54, 66, 68, 88, 56, 63, 66, 58, 67, 35, 62, 84, 68, 72, 70, 60, 42, 73, 64, 62, 67, 58, 63, 90, 101, 48, 56, 71, 34, 57, 66, 50, 65, 60, 64, 64, 153, 108, 58, 62, 58, 52, 61, 44, 61, 64, 71, 52, 62, 68, 83, 43, 52, 36, 59, 71, 58, 70, 61, 74, 69, 56, 51, 87, 82, 88, 54, 73, 91, 52, 55, 68, 38, 74, 50, 69, 49, 59, 50, 67, 73, 67, 51, 52, 79, 58, 73, 97, 71, 66, 56, 92, 77, 61, 87, 71, 83, 74, 52, 73, 65, 66, 60, 56, 81, 40, 75, 68, 64, 66, 63, 69, 75, 53, 73, 70, 83, 47, 103, 60, 58, 66, 64, 61, 57, 98, 49, 68, 54, 65, 55, 70, 62, 68, 59, 63, 47, 69, 48, 62, 55, 72, 83, 63, 61, 79, 66, 78, 91, 48, 67, 56, 56, 35, 70, 41, 54, 50, 52, 77, 74, 60, 51, 62, 76, 83, 69, 72, 97, 69, 61, 59, 78, 47, 63, 55, 55, 60, 67, 58, 61, 66, 49, 65, 71, 57, 60, 74, 42, 57, 68, 65, 75, 49, 44, 47, 63, 66, 66, 63, 62, 86, 58, 44, 67, 72, 75, 36, 51, 55, 72, 79, 76, 72, 76, 60, 65, 64, 66, 66, 50, 84, 49, 74, 60, 60, 47, 72, 70, 73, 96, 73, 53, 62, 68, 40, 98, 60, 73, 56, 69, 54, 52, 49, 95, 70, 67, 61, 65, 71, 59, 109, 78, 93, 43, 50, 61, 49, 53, 68, 82, 65, 57, 54, 87, 77, 85, 78, 54, 67, 74, 67, 70, 89, 65, 93, 64, 54, 53, 76, 83, 48, 89, 48, 60, 54, 62, 65, 68, 87, 86, 50, 69, 61, 81, 70, 102, 85, 62, 54, 56, 51, 53, 73, 71, 88, 44, 60, 54, 79, 67, 79, 63, 59, 72, 53, 88, 85, 76, 70, 75, 70, 62, 41, 69, 76, 54, 56, 90, 53, 49, 73, 72, 90, 79, 56, 71, 78, 58, 79, 64, 78, 35, 57, 68, 63, 60, 80, 50, 41, 88, 65, 101, 52, 64, 66, 51, 53, 73, 51, 103, 49, 68, 48, 74, 88, 51, 44, 81, 76, 80, 59, 53, 54, 60, 70, 55, 87, 112, 69, 50, 62, 69, 85, 97, 71, 56, 73, 68, 50, 35, 63, 56, 51, 79, 63, 72, 63, 38, 46, 59, 69, 50, 77, 68, 41, 59, 88, 47, 100, 57, 55, 80, 52, 72, 73, 73, 55, 68, 56, 51, 74, 68, 51, 77, 65, 78, 71, 95, 101, 52, 80, 56, 62, 73, 78, 50, 74, 90, 53, 54, 93, 65, 87, 33, 69, 61, 68, 73, 56, 55, 80, 69, 91, 70, 84, 58, 87, 59, 83, 52, 89, 85, 83, 46, 69, 78, 62, 71, 58, 46, 70, 52, 54, 48, 66, 74, 50, 59, 49, 56, 76, 76, 78, 68, 65, 88, 74, 65, 68, 70, 65, 40, 68, 71, 86, 54, 58, 71, 46, 62, 63, 101, 79, 63, 55, 67, 57, 48, 60, 65, 79, 50, 56, 71, 62, 50, 52, 76, 66, 70, 99, 80, 59, 83, 50, 53, 59, 72, 55, 84, 72, 63, 65, 52, 52, 50, 59, 63, 65, 139, 55, 62, 73, 63, 58, 69, 71, 64, 86, 76, 82, 83, 75, 60, 69, 74, 80, 57, 88, 64, 55, 83, 57, 85, 100, 73, 59, 60, 90, 74, 75, 86, 57, 49, 89, 47, 73, 87, 61, 67, 68, 69, 58, 74, 54, 60, 53, 85, 60, 74, 60, 46, 84, 45, 54, 87, 66, 60, 41, 84, 54, 56, 73, 67, 63, 63, 61, 93, 50, 70, 80, 78, 45, 70, 49, 68, 51, 83, 52, 79, 59, 70, 91, 59, 53, 57, 58, 116, 37, 58, 65, 51, 47, 76, 63, 68, 67, 66, 47, 85, 66, 62, 67, 42, 57, 67, 62, 68, 93, 68, 58, 98, 77, 62, 66, 56, 48, 68, 70, 47, 71, 101, 76, 77, 54, 44, 56, 59, 48, 82, 60, 57, 59, 61, 43, 47, 55, 66, 63, 62, 46, 61, 57, 56, 99, 66, 75, 71, 75, 89, 66, 46, 51, 51, 54, 62, 66, 68, 78, 111, 56, 54, 59, 56, 49, 96, 45, 75, 78, 65, 84, 62, 53, 73, 55, 67, 55, 80, 71, 73, 78, 58, 89, 63, 73, 43, 66, 67, 62, 76, 65, 72, 49, 62, 73, 65, 87, 52, 73, 62, 47, 149, 89, 79, 66, 70, 62, 53, 68, 56, 66, 48, 54, 59, 76, 62, 66, 66, 98, 62, 74, 71, 78, 50, 44, 64, 48, 73, 79, 63, 52, 72, 54, 55, 66, 64, 127, 78, 74, 46, 64, 73, 57, 45, 59, 49, 91, 70, 57, 67, 48, 91, 55, 56, 54, 73, 70, 75, 60, 64, 42, 74, 59, 67, 76, 61, 68, 72, 58, 48, 87, 49, 54, 59, 58, 75, 73, 70, 77, 58, 63, 54, 73, 52, 73, 58, 63, 90, 50, 50, 76, 60, 69, 61, 52, 57, 53, 57, 66, 61, 68, 79, 96, 60, 47, 74, 50, 66, 50, 68, 87, 68, 68, 67, 63, 77, 60, 52, 56, 86, 42, 72, 98, 77, 87, 55, 55, 62, 116, 45, 60, 86, 71, 53, 51, 54, 76, 66, 63, 84, 87, 53, 60, 62, 72, 69, 80, 76, 91, 48, 76, 55, 55, 73, 45, 99, 63, 63, 72, 56, 74, 68, 64, 94, 100, 108, 67, 46, 62, 48, 50, 76, 51, 54, 60, 63, 55, 73, 82, 59, 60, 54, 82, 72, 57, 65, 86, 72, 66, 80, 84, 79, 68, 61, 50, 51, 64, 53, 71, 61, 83, 56, 63, 78, 42, 54, 94, 71, 58, 51, 77, 62, 82, 72, 61, 71, 60, 85, 52, 68, 84, 52, 59, 74, 53, 71, 50, 67, 57, 61, 86, 51, 69, 53, 57, 58, 51, 66, 63, 91, 55, 53, 88, 77, 66, 100, 69, 66, 65, 50, 64, 68, 45, 61, 79, 51, 64, 85, 88, 52, 96, 61, 49, 71, 51, 57, 50, 88, 51, 65, 74, 55, 81, 72, 77, 85, 78, 50, 72, 93, 69, 69, 57, 62, 64, 41, 93, 61, 73, 55, 80, 55, 91, 52, 67, 57, 82, 58, 86, 86, 50, 60, 69, 89, 62, 80, 68, 83, 73, 84, 69, 75, 79, 65, 68, 71, 136, 66, 60, 45, 59, 78, 52, 48, 61, 60, 86, 84, 107, 40, 99, 68, 90, 73, 61, 78, 75, 80, 68, 73, 92, 98, 38, 56, 66, 53, 69, 74, 51, 62, 77, 51, 83, 100, 81, 66, 63, 72, 68, 55, 88, 59, 51, 59, 63, 85, 103, 104, 68, 84, 48, 63, 81, 53, 61, 66, 75, 68, 95, 69, 71, 65, 71, 61, 115, 71, 72, 92, 71, 70, 111, 68, 89, 65, 62, 65, 67, 49, 81, 60, 46, 57, 53, 57, 79, 46, 72, 84, 58, 110, 71, 76, 64, 59, 48, 58, 74, 57, 68, 86, 62, 59, 69, 64, 52, 66, 53, 58, 63, 44, 67, 64, 81, 47, 52, 57, 71, 46, 80, 60, 71, 44, 54, 59, 77, 48, 73, 61, 44, 76, 30, 60, 66, 75, 71, 86, 57, 75, 52, 77, 68, 55, 74, 66, 54, 56, 57, 88, 45, 65, 116, 66, 79, 48, 76, 86, 77, 51, 64, 65, 78, 80, 56, 64, 80, 79, 86, 94, 68, 65, 76, 46, 81, 100, 68, 63, 59, 49, 64, 63, 65, 52, 71, 59, 53, 48, 49, 54, 57, 65, 67, 93, 57, 52, 89, 43, 79, 43, 71, 81, 68, 65, 59, 41, 72, 54, 73, 65, 92, 47, 69, 60, 66, 95, 113, 56, 52, 54, 55, 57, 60, 65, 51, 78, 60, 56, 49, 62, 70, 60, 71, 52, 72, 42, 49, 53, 45, 56, 63, 56, 60, 57, 66, 63, 48, 61, 73, 80, 70, 56, 59, 48, 75, 64, 73, 53, 52, 98, 58, 50, 53, 63, 51, 67, 86, 71, 79, 81, 82, 64, 61, 66, 73, 72, 48, 48, 70, 71, 63, 44, 63, 55, 62, 61, 64, 31, 66, 62, 65, 97, 66, 79, 77, 87, 74, 53, 50, 60, 61, 71, 77, 67, 75, 47, 64, 69, 55, 71, 67, 78, 44, 78, 58, 52, 58, 42, 64, 99, 55, 35, 51, 94, 55, 75, 118, 77, 74, 53, 113, 84, 79, 55, 71, 90, 57, 79, 53, 68, 81, 66, 42, 52, 65, 62, 57, 39, 54, 52, 65, 88, 84, 80, 103, 66, 61, 75, 54, 41, 62, 58, 59, 60, 80, 102, 62, 82, 63, 52, 56, 49, 67, 52, 90, 61, 75, 58, 114, 60, 51, 96, 60, 77, 62, 80, 66, 61, 80, 65, 68, 77, 64, 78, 54, 54, 55, 46, 37, 52, 82, 83, 50, 71, 66, 67, 70, 73, 70, 79, 58, 70, 65, 50, 82, 89, 63, 66, 44, 85, 90, 79, 71, 80, 73, 103, 62, 64, 72, 48, 65, 75, 64, 66, 61, 88, 69, 56, 71, 53, 63, 64, 79, 85, 65, 54, 112, 50, 51, 67, 66, 60, 50, 79, 47, 64, 40, 92, 69, 61, 63, 73, 49, 52, 72, 61, 65, 45, 62, 58, 46, 59, 63, 58, 36, 67, 95, 84, 67, 68, 70, 65, 64, 76, 66, 65, 59, 70, 64, 76, 46, 74, 89, 76, 56, 61, 62, 67, 58, 65, 51, 82, 52, 78, 60, 49, 69, 82, 61, 66, 60, 54, 54, 84, 73, 59, 79, 84, 54, 58, 50, 74, 40, 66, 78, 90, 62, 74, 92, 53, 71, 71, 70, 47, 73, 114, 61, 68, 60, 64, 69, 58, 69, 59, 67, 67, 82, 67, 69, 76, 57, 62, 85, 67, 69, 70, 38, 55, 83, 69, 66, 45, 78, 70, 61, 75, 111, 47, 79, 54, 62, 54, 84, 60, 59, 49, 73, 40, 72, 75, 58, 61, 93, 51, 71, 73, 107, 61, 61, 78, 46, 71, 62, 57, 60, 110, 56, 67, 60, 79, 53, 70, 89, 62, 63, 59, 70, 63, 73, 69, 47, 72, 55, 49, 55, 67, 64, 68, 65, 70, 80, 65, 64, 63, 71, 74, 45, 56, 54, 54, 56, 51, 72, 53, 67, 59, 67, 54, 81, 59, 40, 67, 86, 56, 86, 58, 74, 74, 55, 61, 48, 65, 76, 55, 58, 49, 77, 54, 69, 74, 79, 66, 51, 60, 72, 50, 85, 49, 54, 46, 64, 53, 92, 78, 70, 47, 108, 68, 70, 56, 58, 81, 89, 51, 52, 44, 70, 81, 66, 55, 63, 80, 67, 92, 73, 57, 53, 156, 91, 73, 57, 63, 73, 63, 37, 59, 56, 56, 77, 59, 60, 72, 58, 74, 68, 53, 64, 74, 80, 52, 62, 76, 68, 106, 84, 47, 42, 98, 63, 81, 65, 68, 79, 62, 45, 65, 58, 50, 76, 71, 70, 51, 64, 59, 53, 62, 48, 58, 56, 44, 61, 53, 63, 67, 63, 68, 88, 77, 55, 79, 72, 51, 91, 68, 64, 48, 74, 73, 51, 74, 52, 76, 56, 65, 59, 64, 53, 45, 58, 70, 59, 52, 69, 40, 79, 63, 102, 69, 77, 84, 75, 75, 61, 67, 72, 74, 69, 69, 63, 63, 49, 67, 70, 60, 74, 71, 67, 74, 74, 83, 45, 63, 69, 68, 63, 53, 43, 59, 56, 58, 79, 74, 50, 108, 64, 77, 74, 68, 52, 60, 64, 78, 60, 50, 69, 64, 59, 61, 87, 84, 69, 58, 67, 55, 71, 58, 37, 61, 69, 75, 79, 74, 52, 32, 53, 89, 64, 48, 51, 61, 69, 62, 69, 43, 69, 93, 62, 74, 61, 61, 63, 61, 49, 67, 43, 59, 92, 68, 54, 73, 63, 92, 56, 68, 54, 78, 57, 66, 65, 81, 65, 67, 38, 116, 64, 76, 47, 65, 70, 66, 62, 94, 75, 56, 57, 60, 73, 55, 93, 71, 49, 51, 62, 65, 55, 66, 84, 56, 65, 78, 74, 57, 69, 53, 52, 78, 66, 128, 59, 59, 68, 70, 64, 64, 60, 51, 90, 76, 111, 91, 73, 63, 68, 49, 66, 66, 69, 55, 68, 46, 73, 41, 68, 58, 81, 110, 77, 58, 71, 66, 72, 67, 55, 67, 71, 59, 87, 59, 55, 72, 65, 55, 57, 59, 63, 47, 66, 55, 65, 71, 55, 105, 105, 78, 59, 50, 61, 69, 70, 59, 69, 57, 83, 57, 86, 79, 38, 65, 56, 66, 68, 58, 44, 70, 46, 69, 87, 54, 73, 68, 79, 47, 65, 55, 66, 62, 62, 56, 49, 84, 45, 59, 62, 67, 76, 88, 63, 74, 100, 67, 39, 61, 91, 70, 76, 51, 61, 65, 47, 70, 75, 75, 91, 81, 62, 51, 73, 42, 77, 63, 59, 52, 74, 55, 61, 57, 105, 84, 116, 61, 90, 87, 76, 62, 54, 57, 69, 64, 55, 74, 49, 57, 85, 61, 87, 69, 44, 67, 90, 60, 53, 53, 67, 43, 73, 99, 47, 92, 62, 74, 91, 73, 82, 107, 94, 75, 37, 59, 74, 61, 53, 82, 53, 48, 58, 57, 68, 39, 92, 52, 50, 67, 72, 74, 48, 58, 52, 54, 65, 59, 92, 61, 102, 49, 73, 85, 58, 53, 43, 56, 71, 67, 58, 104, 45, 55, 80, 55, 109, 83, 48, 57, 56, 70, 58, 57, 74, 57, 67, 62, 108, 44, 47, 53, 62, 38, 70, 65, 58, 65, 60, 60, 113, 76, 62, 57, 56, 66, 81, 54, 54, 62, 48, 68, 52, 63, 65, 69, 46, 63, 50, 61, 36, 78, 49, 80, 69, 75, 67, 63, 51, 90, 65, 64, 60, 57, 42, 66, 117, 60, 57, 118, 66, 72, 47, 63, 74, 66, 66, 66, 46, 45, 60, 58, 59, 77, 79, 75, 116, 60, 67, 56, 71, 57, 55, 99, 49, 54, 55, 62, 65, 58, 79, 39, 74, 82, 67, 83, 59, 78, 69, 50, 51, 52, 51, 46, 90, 36, 43, 80, 87, 79, 101, 78, 42, 47, 52, 35, 130, 69, 61, 96, 82, 73, 37, 62, 71, 37, 71, 55, 48, 35, 58, 47, 59, 71, 49, 51, 50, 83, 55, 61, 60, 56, 64, 105, 80, 73, 58, 64, 45, 62, 36, 63, 64, 111, 60, 97, 75, 54, 66, 68, 52, 66, 68, 55, 98, 85, 96, 63, 53, 89, 55, 57, 56, 127, 74, 59, 115, 61, 71, 69, 51, 42, 79, 41, 79, 86, 73, 104, 74, 53, 31, 70, 91, 50, 62, 67, 95, 74, 39, 72, 66, 57, 43, 49, 74, 79, 47, 61, 80, 63, 42, 63, 67, 43, 108, 59, 62, 101, 59, 102, 68, 84, 89, 60, 75, 66, 49, 71, 71, 57, 52, 69, 65, 49, 57, 101, 63, 74, 83, 52, 46, 86, 67, 66, 56, 81, 75, 97, 90, 53, 58, 68, 55, 51, 52, 49, 68, 51, 74, 57, 93, 66, 66, 67, 66, 30, 58, 92, 50, 81, 62, 75, 55, 62, 65, 63, 60, 60, 67, 61, 63, 78, 75, 99, 73, 74, 48, 48, 74, 60, 84, 84, 61, 73, 34, 43, 67, 57, 54, 74, 82, 76, 78, 71, 63, 78, 70, 38, 69, 88, 55, 97, 81, 38, 58, 71, 51, 89, 68, 55, 105, 64, 51, 65, 54, 66, 75, 52, 57, 59, 87, 64, 53, 59, 83, 71, 64, 42, 61, 80, 60, 59, 73, 73, 59, 75, 65, 49, 59, 91, 47, 73, 61, 55, 88, 67, 62, 75, 106, 90, 77, 54, 73, 60, 99, 61, 65, 48, 59, 88, 81, 66, 41, 58, 78, 74, 59, 65, 65, 44, 86, 67, 76, 59, 71, 78, 55, 61, 75, 53, 51, 36, 76, 64, 36, 92, 61, 82, 71, 104, 73, 60, 90, 69, 84, 58, 52, 110, 87, 52, 60, 60, 80, 96, 69, 61, 62, 79, 58, 57, 60, 114, 84, 63, 37, 60, 67, 77, 55, 63, 69, 89, 69, 54, 82, 78, 49, 72, 67, 66, 64, 79, 61, 46, 61, 54, 54, 56, 48, 83, 61, 97, 54, 87, 73, 90, 69, 83, 56, 84, 90, 56, 50, 81, 79, 48, 50, 52, 146, 55, 69, 72, 93, 71, 60, 38, 62, 126, 76, 80, 83, 60, 71, 76, 51, 53, 68, 84, 48, 39, 51, 79, 84, 51, 88, 45, 70, 59, 71, 55, 67, 65, 74, 51, 55, 77, 68, 50, 71, 74, 67, 85, 114, 57, 58, 61, 50, 66, 78, 57, 102, 53, 71, 54, 78, 60, 51, 63, 49, 53, 48, 55, 40, 82, 50, 60, 61, 63, 81, 80, 69, 78, 68, 85, 84, 84, 93, 78, 41, 57, 52, 52, 46, 60, 67, 74, 47, 95, 68, 38, 49, 39, 65, 54, 87, 64, 65, 64, 51, 65, 83, 52, 55, 58, 69, 79, 63, 49, 47, 71, 80, 76, 51, 43, 56, 63, 73, 55, 75, 55, 78, 58, 60, 61, 71, 55, 65, 93, 42, 61, 42, 66, 97, 86, 70, 63, 60, 84, 58, 69, 55, 45, 102, 71, 50, 41, 62, 100, 77, 56, 67, 69, 92, 68, 45, 67, 77, 68, 59, 86, 61, 42, 62, 54, 125, 77, 104, 136, 67, 42, 53, 58, 78, 61, 89, 48, 56, 58, 82, 88, 58, 58, 66, 64, 115, 52, 41, 72, 80, 49, 58, 77, 49, 61, 65, 51, 45, 84, 45, 82, 63, 71, 99, 81, 52, 76, 69, 100, 56, 55, 82, 61, 50, 79, 51, 75, 51, 30, 82, 62, 73, 60, 58, 86, 47, 55, 37, 76, 33, 41, 66, 67, 58, 65, 71, 120, 76, 82, 62, 54, 64, 31, 59, 63, 67, 53, 34, 61, 59, 68, 67, 89, 59, 66, 51, 141, 55, 52, 40, 85, 56, 45, 41, 90, 56, 110, 56, 61, 71, 63, 66, 52, 56, 60, 61, 56, 90, 64, 71, 68, 58, 35, 75, 56, 58, 48, 54, 60, 84, 55, 67, 55, 36, 57, 63, 84, 62, 72, 41, 42, 61, 49, 63, 50, 47, 47, 80, 31, 46, 54, 52, 55, 57, 77, 88, 48, 98, 53, 68, 72, 100, 93, 67, 65, 48, 128, 56, 47, 69, 71, 96, 56, 80, 58, 55, 41, 44, 67, 58, 91, 60, 64, 44, 97, 45, 71, 60, 61, 89, 95, 52, 62, 62, 101, 68, 94, 62, 90, 44, 69, 56, 48, 56, 46, 68, 69, 60, 110, 57, 71, 49, 76, 49, 45, 76, 60, 39, 65, 51, 61, 53, 87, 64, 39, 53, 58, 69, 47, 91, 79, 66, 57, 66, 103, 40, 75, 41, 102, 52, 68, 46, 64, 62, 49, 56, 25, 84, 48, 60, 93, 65, 97, 87, 53, 80, 115, 48, 71, 69, 72, 110, 47, 72, 44, 53, 98, 62, 53, 39, 54, 66, 64, 71, 68, 91, 52, 54, 93, 68, 73, 80, 55, 72, 65, 66, 44, 76, 31, 88, 53, 61, 84, 60, 69, 77, 47, 58, 49, 99, 75, 72, 67, 61, 43, 94, 53, 47, 61, 89, 71, 46, 65, 61, 72, 57, 66, 71, 82, 75, 53, 108, 65, 61, 63, 66, 62, 76, 74, 54, 106, 84, 69, 102, 51, 60, 53, 46, 59, 42, 69, 45, 71, 63, 72, 62, 58, 93, 54, 75, 54, 67, 34, 84, 54, 80, 69, 87, 88, 61, 66, 86, 74, 73, 62, 61, 58, 84, 59, 73, 86, 59, 77, 77, 71, 58, 96, 67, 62, 70, 60, 51, 84, 63, 99, 48, 49, 87, 76, 66, 53, 91, 55, 80, 41, 73, 70, 55, 73, 65, 87, 80, 50, 51, 73, 62, 60, 48, 65, 62, 51, 66, 67, 60, 51, 63, 68, 48, 71, 84, 86, 88, 57, 75, 74, 53, 86, 70, 57, 79, 72, 66, 72, 66, 46, 69, 83, 73, 92, 68, 67, 83, 71, 60, 62, 44, 82, 102, 61, 58, 81, 41, 80, 55, 53, 62, 78, 62, 68, 85, 55, 59, 71, 74, 59, 53, 54, 51, 77, 44, 135, 65, 47, 46, 57, 99, 66, 56, 52, 99, 72, 70, 82, 65, 74, 53, 90, 70, 62, 55, 66, 54, 91, 82, 85, 71, 71, 72, 76, 47, 62, 82, 44, 81, 69, 62, 57, 57, 69, 71, 80, 48, 58, 64, 57, 60, 76, 57, 61, 66, 36, 70, 64, 60, 57, 69, 61, 46, 113, 55, 87, 58, 58, 84, 71, 55, 50, 52, 55, 70, 60, 59, 75, 60, 76, 58, 43, 84, 56, 71, 50, 80, 66, 66, 102, 61, 75, 55, 35, 79, 71, 66, 49, 80, 35, 68, 78, 40, 60, 67, 81, 68, 50, 64, 63, 60, 56, 74, 68, 65, 113, 43, 61, 75, 62, 82, 59, 86, 76, 62, 34, 90, 54, 47, 59, 78, 63, 70, 85, 81, 47, 65, 75, 73, 53, 54, 40, 74, 73, 56, 70, 82, 77, 84, 65, 50, 57, 64, 82, 84, 65, 82, 79, 87, 63, 57, 50, 60, 60, 77, 43, 92, 51, 49, 66, 63, 78, 80, 57, 64, 44, 72, 57, 58, 63, 71, 67, 66, 60, 67, 63, 51, 84, 54, 47, 57, 56, 47, 58, 56, 99, 68, 73, 72, 56, 87, 66, 42, 66, 52, 62, 109, 76, 73, 86, 63, 74, 74, 70, 52, 109, 49, 56, 40, 81, 80, 77, 55, 76, 58, 70, 59, 75, 81, 56, 125, 119, 77, 91, 63, 40, 73, 65, 79, 58, 64, 53, 58, 58, 46, 69, 60, 58, 98, 56, 76, 58, 60, 62, 76, 56, 75, 58, 68, 60, 45, 57, 88, 46, 53, 55, 60, 64, 68, 70, 50, 70, 56, 59, 73, 54, 75, 69, 63, 36, 57, 63, 78, 76, 49, 77, 58, 58, 62, 61, 64, 69, 53, 52, 62, 77, 83, 72, 58, 84, 78, 60, 65, 88, 79, 68, 67, 92, 69, 55, 78, 90, 59, 50, 65, 51, 63, 69, 102, 80, 82, 90, 47, 110, 73, 72, 80, 81, 65, 143, 63, 85, 62, 61, 79, 87, 50, 70, 117, 81, 57, 65, 78, 54, 65, 55, 79, 81, 66, 57, 40, 75, 85, 43, 55, 52, 58, 70, 73, 68, 110, 49, 59, 73, 80, 65, 56, 50, 99, 51, 62, 58, 54, 58, 58, 86, 81, 75, 48, 55, 73, 86, 78, 61, 57, 64, 43, 58, 44, 109, 90, 94, 66, 59, 68, 69, 58, 63, 49, 42, 44, 69, 48, 70, 60, 46, 64, 84, 71, 51, 64, 41, 75, 65, 68, 80, 54, 51, 56, 72, 84, 63, 68, 48, 75, 44, 75, 90, 67, 65, 54, 67, 41, 70, 58, 65, 84, 61, 64, 63, 70, 92, 77, 71, 39, 47, 49, 80, 52, 63, 98, 49, 88, 64, 45, 89, 67, 70, 70, 52, 59, 44, 72, 79, 55, 66, 112, 70, 47, 53, 61, 60, 74, 120, 61, 71, 67, 54, 65, 58, 79, 66, 57, 62, 46, 88, 47, 49, 64, 56, 52, 67, 56, 54, 43, 67, 61, 60, 56, 44, 76, 46, 95, 55, 83, 41, 61, 68, 65, 60, 85, 56, 75, 66, 57, 67, 56, 56, 54, 69, 63, 42, 35, 52, 35, 64, 68, 65, 67, 63, 115, 71, 41, 75, 55, 75, 47, 81, 87, 57, 75, 89, 85, 71, 42, 74, 42, 87, 53, 56, 96, 78, 65, 61, 78, 48, 78, 42, 52, 71, 52, 81, 53, 89, 85, 88, 59, 69, 59, 63, 69, 61, 74, 79, 84, 73, 56, 70, 71, 55, 58, 66, 53, 65, 51, 94, 50, 65, 53, 62, 73, 46, 94, 77, 71, 52, 73, 85, 56, 71, 70, 65, 60, 70, 53, 64, 47, 50, 74, 59, 50, 55, 65, 73, 40, 50, 58, 53, 61, 68, 58, 78, 64, 62, 93, 87, 54, 68, 82, 56, 71, 72, 62, 60, 72, 57, 66, 56, 52, 69, 68, 75, 67, 69, 56, 62, 81, 77, 30, 59, 67, 52, 81, 38, 56, 58, 66, 49, 59, 60, 56, 35, 56, 53, 74, 60, 102, 82, 71, 62, 82, 72, 84, 52, 58, 57, 98, 97, 57, 56, 81, 75, 77, 52, 72, 60, 69, 66, 85, 80, 58, 73, 48, 67, 51, 84, 110, 62, 62, 47, 49, 57, 54, 71, 83, 45, 101, 63, 36, 44, 33, 67, 84, 56, 57, 44, 71, 68, 80, 48, 50, 42, 47, 87, 65, 111, 59, 62, 65, 90, 86, 52, 39, 60, 34, 68, 73, 66, 62, 54, 92, 108, 49, 86, 59, 62, 60, 45, 79, 73, 60, 59, 87, 63, 82, 76, 64, 60, 70, 39, 66, 73, 76, 71, 88, 65, 55, 46, 80, 55, 58, 58, 64, 55, 92, 46, 107, 65, 78, 56, 56, 33, 72, 56, 56, 60, 55, 49, 72, 84, 82, 67, 65, 82, 90, 71, 50, 80, 35, 54, 84, 76, 39, 44, 57, 56, 83, 51, 73, 64, 83, 63, 63, 92, 45, 39, 71, 82, 67, 71, 62, 58, 73, 43, 67, 53, 56, 55, 53, 68, 78, 82, 60, 83, 67, 63, 54, 82, 70, 53, 67, 39, 90, 55, 61, 51, 64, 46, 87, 56, 68, 94, 62, 60, 67, 71, 62, 51, 69, 82, 53, 79, 77, 55, 71, 83, 52, 52, 89, 108, 49, 99, 78, 39, 60, 89, 77, 63, 53, 61, 49, 47, 58, 59, 46, 100, 70, 65, 82, 74, 59, 73, 86, 48, 50, 70, 51, 64, 62, 61, 65, 59, 50, 68, 62, 44, 55, 48, 91, 61, 74, 76, 59, 67, 59, 61, 60, 97, 60, 61, 65, 63, 59, 48, 70, 53, 89, 81, 76, 74, 59, 70, 42, 63, 54, 56, 62, 53, 40, 62, 78, 62, 85, 79, 88, 61, 76, 81, 77, 67, 59, 70, 74, 54, 64, 42, 53, 65, 56, 81, 48, 64, 77, 92, 62, 86, 70, 71, 64, 70, 68, 80, 72, 80, 62, 68, 68, 70, 72, 74, 80, 69, 68, 67, 62, 69, 55, 105, 86, 75, 59, 72, 64, 56, 47, 62, 59, 54, 83, 61, 71, 66, 68, 58, 52, 66, 60, 62, 42, 70, 57, 51, 53, 83, 51, 57, 59, 65, 63, 71, 93, 57, 63, 70, 60, 62, 67, 53, 60, 76, 66, 67, 59, 81, 76, 66, 70, 74, 69, 66, 74, 75, 60, 50, 74, 49, 62, 76, 64, 59, 47, 53, 58, 50, 66, 54, 54, 58, 66, 112, 53, 52, 57, 72, 56, 58, 80, 52, 53, 87, 57, 51, 55, 59, 47, 62, 68, 51, 73, 65, 72, 59, 90, 58, 81, 50, 68, 60, 57, 65, 50, 75, 62, 55, 51, 59, 55, 70, 79, 76, 60, 64, 60, 77, 81, 65, 70, 60, 68, 83, 86, 50, 107, 60, 74, 63, 63, 49, 52, 48, 94, 71, 74, 75, 67, 61, 55, 55, 54, 64, 56, 69, 67, 42, 64, 59, 58, 65, 90, 70, 80, 81, 73, 83, 50, 88, 46, 58, 73, 59, 69, 58, 70, 56, 63, 45, 66, 53, 49, 109, 64, 63, 43, 66, 44, 80, 76, 58, 56, 68, 73, 65, 78, 53, 75, 59, 68, 67, 63, 55, 70, 91, 68, 62, 50, 64, 60, 53, 76, 61, 83, 69, 66, 90, 79, 71, 93, 80, 69, 57, 69, 76, 69, 58, 60, 50, 51, 89, 54, 54, 66, 41, 50, 67, 68, 63, 75, 82, 63, 44, 106, 146, 54, 60, 76, 59, 66, 57, 73, 53, 75, 46, 76, 63, 50, 70, 62, 63, 63, 57, 69, 96, 64, 61, 73, 58, 56, 69, 57, 65, 50, 57, 67, 96, 47, 52, 52, 80, 67, 75, 63, 48, 66, 66, 82, 95, 64, 63, 58, 47, 55, 61, 85, 55, 70, 63, 59, 93, 81, 75, 63, 63, 62, 73, 72, 71, 84, 53, 57, 81, 66, 57, 54, 63, 68, 74, 81, 106, 58, 90, 64, 113, 56, 55, 54, 63, 60, 72, 65, 55, 62, 65, 86, 52, 55, 61, 50, 75, 74, 64, 62, 86, 54, 50, 67, 44, 93, 75, 63, 60, 63, 72, 59, 70, 72, 63, 63, 55, 74, 41, 61, 69, 71, 88, 53, 55, 70, 53, 86, 53, 45, 76, 73, 72, 63, 57, 57, 50, 72, 71, 51, 55, 52, 66, 64, 65, 59, 67, 64, 52, 46, 54, 67, 50, 41, 85, 59, 70, 71, 72, 52, 62, 125, 59, 63, 54, 54, 60, 49, 53, 65, 79, 67, 49, 62, 62, 66, 46, 56, 75, 93, 65, 84, 77, 67, 63, 71, 57, 75, 62, 43, 61, 50, 38, 56, 68, 61, 63, 59, 62, 80, 70, 53, 82, 71, 74, 64, 66, 61, 99, 62, 69, 43, 73, 68, 48, 61, 47, 60, 60, 64, 67, 66, 58, 48, 76, 77, 68, 74, 72, 65, 77, 90, 72, 64, 66, 66, 76, 57, 78, 66, 65, 76, 58, 59, 88, 67, 54, 59, 76, 65, 69, 55, 64, 140, 67, 73, 45, 73, 83, 73, 51, 65, 58, 62, 75, 59, 67, 89, 78, 86, 54, 72, 59, 55, 56, 63, 64, 53, 87, 43, 56, 54, 64, 67, 74, 117, 77, 41, 44, 54, 57, 66, 74, 77, 98, 60, 44, 66, 68, 71, 59, 61, 75, 72, 65, 60, 81, 81, 75, 53, 77, 56, 77, 66, 57, 60, 77, 75, 73, 65, 48, 96, 60, 54, 118, 66, 71, 68, 99, 73, 56, 75, 64, 86, 57, 71, 45, 59, 75, 54, 43, 91, 48, 67, 53, 85, 47, 56, 72, 62, 61, 63, 63, 61, 66, 93, 57, 74, 61, 67, 59, 94, 66, 53, 58, 71, 75, 67, 50, 43, 67, 77, 51, 74, 49, 82, 67, 61, 64, 57, 64, 46, 62, 87, 64, 60, 59, 65, 70, 60, 86, 68, 64, 78, 58, 88, 92, 59, 66, 54, 65, 93, 61, 74, 51, 86, 60, 85, 93, 55, 52, 87, 56, 86, 61, 92, 59, 72, 62, 49, 57, 77, 66, 60, 64, 79, 54, 43, 97, 64, 52, 101, 48, 81, 70, 40, 67, 61, 83, 52, 49, 95, 55, 59, 49, 58, 65, 62, 53, 66, 60, 73, 47, 95, 72, 78, 74, 39, 51, 60, 70, 64, 63, 71, 54, 41, 61, 72, 52, 76, 77, 58, 60, 88, 93, 76, 62, 60, 47, 70, 72, 60, 58, 81, 82, 96, 46, 56, 53, 62, 61, 69, 66, 80, 58, 50, 64, 64, 60, 57, 47, 60, 100, 57, 56, 75, 43, 54, 50, 105, 82, 54, 52, 61, 71, 64, 68, 57, 79, 81, 74, 76, 95, 94, 74, 62, 78, 72, 101, 61, 66, 77, 96, 65, 77, 41, 58, 57, 115, 67, 52, 61, 49, 57, 50, 81, 101, 54, 67, 59, 53, 56, 86, 54, 68, 57, 50, 75, 59, 56, 61, 76, 57, 67, 102, 62, 100, 55, 80, 88, 57, 65, 80, 67, 53, 97, 68, 52, 50, 75, 66, 92, 66, 56, 66, 59, 56, 65, 60, 114, 77, 70, 58, 55, 53, 62, 75, 78, 103, 50, 74, 82, 61, 66, 60, 58, 60, 73, 69, 60, 78, 60, 46, 73, 55, 45, 86, 71, 63, 61, 73, 59, 60, 76, 92, 54, 75, 48, 42, 53, 70, 62, 52, 58, 81, 51, 64, 64, 63, 78, 87, 66, 57, 53, 49, 52, 50, 62, 59, 72, 79, 72, 59, 61, 64, 81, 64, 74, 47, 61, 81, 62, 71, 58, 52, 48, 71, 61, 74, 69, 56, 68, 61, 62, 70, 68, 61, 67, 109, 70, 63, 69, 65, 76, 74, 68, 51, 90, 74, 63, 63, 55, 60, 63, 64, 61, 83, 56, 50, 60, 47, 79, 68, 46, 55, 68, 89, 61, 81, 52, 65, 36, 70, 82, 51, 63, 46, 91, 57, 86, 60, 75, 66, 56, 71, 74, 89, 66, 63, 61, 54, 63, 71, 61, 72, 67, 76, 61, 70, 51, 52, 72, 46, 61, 62, 73, 129, 60, 66, 78, 65, 68, 73, 79, 80, 70, 57, 56, 61, 70, 64, 70, 45, 54, 58, 90, 93, 71, 64, 63, 52, 63, 57, 83, 41, 66, 91, 72, 53, 67, 51, 68, 76, 79, 69, 76, 64, 70, 80, 62, 57, 63, 55, 83, 69, 77, 59, 53, 58, 62, 70, 55, 79, 59, 60, 59, 52, 59, 78, 67, 46, 76, 62, 72, 52, 70, 71, 58, 61, 65, 50, 87, 120, 60, 66, 49, 55, 65, 71, 66, 68, 49, 57, 61, 70, 98, 56, 55, 62, 58, 76, 53, 57, 83, 76, 58, 93, 79, 64, 74, 59, 57, 84, 74, 85, 52, 75, 58, 60, 67, 61, 104, 51, 50, 41, 64, 67, 58, 82, 59, 70, 71, 69, 55, 73, 48, 82, 46, 69, 75, 58, 66, 68, 66, 66, 72, 49, 74, 57, 44, 73, 51, 53, 60, 55, 74, 60, 63, 80, 73, 84, 61, 56, 52, 64, 57, 85, 98, 61, 72, 69, 59, 49, 62, 85, 61, 61, 63, 54, 61, 74, 93, 78, 72, 64, 79, 62, 50, 44, 79, 58, 78, 81, 62, 138, 65, 51, 66, 64, 50, 111, 149, 52, 84, 52, 75, 100, 71, 53, 73, 56, 44, 69, 48, 66, 66, 75, 69, 76, 73, 57, 58, 63, 57, 73, 55, 45, 54, 47, 45, 74, 75, 109, 56, 66, 76, 67, 74, 67, 72, 61, 59, 64, 68, 78, 59, 55, 60, 60, 63, 52, 81, 67, 56, 56, 79, 54, 53, 58, 74, 55, 72, 65, 64, 72, 53, 99, 74, 58, 55, 59, 82, 63, 70, 63, 61, 49, 69, 65, 71, 72, 80, 48, 64, 67, 82, 89, 57, 63, 41, 66, 82, 70, 67, 52, 77, 57, 65, 61, 67, 42, 46, 54, 59, 69, 76, 56, 74, 74, 64, 70, 60, 61, 72, 61, 54, 61, 59, 74, 108, 68, 62, 71, 71, 83, 81, 54, 80, 53, 59, 53, 59, 75, 65, 66, 57, 55, 74, 51, 68, 84, 72, 68, 70, 64, 85, 99, 59, 65, 46, 51, 88, 59, 64, 67, 68, 61, 62, 77, 63, 87, 70, 75, 83, 59, 56, 77, 94, 53, 64, 61, 56, 59, 74, 52, 81, 65, 72, 62, 50, 61, 64, 79, 59, 56, 65, 50, 67, 64, 50, 66, 56, 56, 53, 66, 62, 107, 71, 67, 65, 63, 61, 66, 53, 84, 63, 103, 106, 64, 67, 43, 67, 65, 54, 44, 64, 66, 53, 55, 57, 55, 67, 65, 66, 62, 63, 67, 57, 48, 72, 62, 121, 97, 63, 58, 47, 57, 48, 63, 56, 51, 66, 63, 70, 78, 77, 57, 111, 92, 63, 73, 79, 85, 62, 48, 56, 64, 74, 66, 73, 69, 69, 44, 63, 53, 58, 94, 58, 66, 51, 63, 57, 63, 68, 77, 74, 75, 71, 80, 52, 60, 44, 60, 76, 40, 57, 53, 69, 56, 107, 48, 47, 34, 56, 55, 94, 78, 64, 60, 63, 61, 57, 82, 79, 84, 64, 65, 62, 62, 79, 49, 66, 58, 63, 63, 72, 50, 62, 65, 51, 58, 67, 79, 62, 67, 60, 75, 69, 50, 62, 75, 59, 58, 80, 61, 70, 55, 65, 62, 58, 71, 65, 60, 79, 56, 58, 54, 76, 85, 63, 64, 73, 65, 62, 64, 109, 62, 67, 77, 49, 63, 77, 105, 61, 55, 49, 58, 71, 65, 60, 51, 66, 68, 44, 42, 86, 36, 51, 43, 73, 63, 68, 77, 68, 56, 57, 71, 61, 63, 62, 57, 62, 65, 57, 53, 68, 61, 90, 85, 58, 105, 123, 56, 75, 67, 63, 51, 68, 62, 64, 44, 63, 56, 68, 59, 75, 51, 65, 76, 70, 67, 67, 64, 69, 66, 62, 48, 65, 56, 76, 58, 83, 73, 71, 60, 49, 52, 89, 61, 78, 59, 62, 77, 64, 72, 50, 67, 53, 54, 76, 59, 56, 71, 63, 76, 78, 50, 57, 59, 72, 61, 63, 48, 52, 44, 85, 69, 56, 44, 56, 66, 62, 58, 60, 66, 50, 66, 84, 46, 71, 70, 56, 51, 89, 66, 82, 60, 55, 70, 71, 67, 81, 55, 64, 81, 66, 59, 71, 64, 70, 61, 97, 55, 55, 78, 69, 66, 52, 63, 69, 62, 63, 54, 62, 66, 74, 94, 81, 80, 70, 57, 61, 40, 64, 54, 81, 96, 73, 63, 57, 61, 54, 68, 69, 66, 63, 40, 51, 56, 68, 43, 77, 73, 62, 95, 46, 52, 54, 69, 71, 62, 64, 67, 60, 66, 100, 64, 52, 73, 52, 67, 49, 69, 59, 63, 59, 70, 79, 94, 46, 59, 69, 67, 65, 61, 69, 90, 65, 61, 64, 57, 57, 74, 76, 58, 74, 76, 64, 59, 74, 71, 55, 53, 65, 50, 70, 53, 59, 54, 58, 63, 49, 63, 71, 52, 68, 48, 66, 68, 46, 104, 54, 64, 78, 46, 88, 64, 61, 56, 59, 62, 49, 53, 55, 55, 62, 53, 71, 65, 44, 57, 76, 101, 76, 49, 67, 87, 67, 87, 64, 56, 52, 63, 81, 68, 62, 87, 69, 62, 136, 73, 63, 68, 63, 53, 68, 73, 60, 58, 57, 136, 63, 68, 70, 55, 60, 66, 78, 54, 64, 59, 71, 96, 59, 58, 63, 61, 94, 50, 68, 55, 64, 56, 55, 53, 62, 69, 68, 72, 59, 59, 50, 57, 62, 64, 59, 76, 70, 69, 96, 65, 56, 64, 66, 63, 75, 57, 47, 78, 78, 66, 75, 83, 78, 64, 54, 49, 78, 57, 63, 74, 69, 69, 58, 89, 118, 85, 103, 86, 61, 59, 58, 64, 69, 64, 82, 52, 58, 63, 65, 57, 65, 57, 60, 93, 68, 62, 53, 58, 107, 82, 50, 77, 74, 59, 53, 60, 84, 68, 85, 84, 67, 64, 42, 62, 68, 67, 59, 61, 96, 58, 72, 80, 84, 48, 82, 84, 60, 62, 52, 68, 51, 53, 59, 81, 65, 76, 74, 94, 67, 75, 76, 84, 79, 42, 49, 70, 75, 66, 85, 51, 70, 102, 60, 43, 69, 70, 102, 59, 41, 60, 48, 58, 79, 71, 69, 75, 42, 47, 91, 56, 67, 93, 43, 63, 142, 60, 74, 52, 60, 38, 61, 59, 77, 43, 64, 75, 66, 44, 52, 60, 53, 62, 42, 56, 103, 62, 59, 87, 58, 96, 73, 82, 65, 59, 68, 65, 93, 86, 59, 79, 65, 51, 58, 60, 61, 55, 54, 55, 51, 70, 45, 60, 90, 57, 51, 75, 73, 101, 77, 64, 49, 58, 66, 66, 69, 58, 69, 51, 64, 62, 44, 59, 66, 89, 85, 56, 69, 54, 51, 55, 64, 59, 52, 69, 76, 62, 130, 60, 58, 52, 59, 60, 95, 77, 52, 57, 64, 80, 113, 74, 87, 58, 54, 109, 51, 62, 50, 52, 56, 52, 81, 93, 58, 98, 63, 75, 111, 42, 59, 75, 61, 73, 71, 54, 51, 55, 60, 83, 59, 67, 79, 64, 67, 49, 70, 95, 42, 54, 50, 49, 46, 63, 79, 48, 52, 56, 74, 80, 50, 51, 59, 53, 59, 56, 45, 60, 56, 64, 54, 61, 78, 58, 75, 86, 68, 44, 61, 60, 71, 68, 65, 61, 51, 44, 69, 122, 86, 50, 43, 63, 57, 98, 99, 38, 97, 53, 49, 76, 74, 55, 66, 67, 68, 67, 77, 95, 95, 43, 50, 62, 65, 57, 48, 63, 63, 67, 64, 61, 55, 62, 60, 58, 62, 57, 52, 52, 59, 60, 54, 85, 87, 69, 69, 56, 62, 62, 53, 76, 61, 69, 69, 78, 61, 53, 43, 56, 66, 52, 99, 71, 57, 66, 63, 87, 67, 50, 58, 76, 48, 62, 49, 101, 57, 51, 64, 69, 63, 75, 84, 110, 64, 77, 85, 64, 61, 73, 74, 45, 70, 64, 47, 74, 59, 82, 79, 48, 98, 113, 61, 82, 61, 65, 55, 67, 53, 47, 108, 60, 60, 38, 49, 66, 103, 74, 70, 73, 80, 72, 73, 48, 48, 77, 48, 51, 59, 66, 62, 59, 49, 67, 40, 90, 69, 64, 76, 87, 56, 85, 61, 62, 69, 82, 79, 91, 88, 63, 68, 91, 70, 49, 75, 73, 87, 72, 64, 52, 58, 71, 84, 55, 69, 66, 66, 67, 74, 69, 96, 110, 60, 46, 62, 56, 74, 70, 53, 66, 67, 72, 66, 62, 65, 64, 71, 45, 107, 51, 76, 98, 79, 60, 63, 61, 52, 77, 61, 61, 48, 103, 57, 77, 74, 64, 67, 49, 95, 71, 88, 77, 62, 71, 73, 89, 54, 83, 48, 52, 60, 67, 55, 68, 65, 45, 57, 57, 63, 54, 82, 51, 77, 66, 64, 49, 43, 62, 51, 56, 65, 67, 54, 80, 74, 61, 48, 69, 65, 74, 65, 62, 60, 46, 58, 35, 50, 53, 68, 66, 83, 47, 55, 64, 51, 57, 75, 58, 63, 74, 74, 63, 77, 84, 86, 63, 49, 67, 62, 82, 53, 50, 85, 54, 65, 64, 70, 64, 48, 76, 79, 50, 64, 52, 58, 148, 93, 53, 43, 47, 78, 65, 49, 60, 39, 79, 68, 70, 75, 72, 62, 79, 69, 73, 63, 87, 70, 60, 59, 101, 74, 90, 70, 50, 75, 87, 72, 62, 76, 64, 68, 80, 69, 45, 56, 59, 65, 63, 63, 67, 68, 72, 86, 64, 63, 51, 62, 90, 74, 51, 56, 84, 77, 55, 59, 62, 76, 60, 61, 65, 52, 61, 47, 65, 90, 35, 48, 83, 68, 77, 71, 66, 56, 57, 54, 64, 59, 65, 51, 74, 67, 113, 51, 53, 59, 57, 50, 66, 52, 58, 48, 65, 59, 61, 48, 30, 66, 56, 54, 99, 52, 53, 71, 63, 73, 65, 55, 72, 79, 69, 67, 64, 55, 76, 49, 76, 51, 96, 63, 42, 65, 53, 70, 49, 60, 75, 57, 65, 76, 96, 83, 68, 59, 65, 58, 93, 71, 62, 54, 66, 54, 55, 53, 68, 71, 75, 67, 41, 62, 77, 64, 73, 101, 85, 59, 71, 71, 70, 65, 60, 76, 44, 60, 68, 41, 58, 54, 63, 51, 96, 96, 61, 74, 51, 52, 46, 72, 49, 70, 105, 75, 67, 59, 58, 58, 78, 85, 70, 83, 72, 75, 55, 60, 66, 52, 59, 62, 73, 74, 55, 68, 69, 59, 53, 103, 60, 46, 76, 45, 63, 51, 56, 94, 62, 58, 62, 38, 74, 57, 84, 73, 59, 81, 63, 74, 55, 61, 53, 68, 64, 66, 67, 55, 56, 37, 72, 63, 113, 72, 58, 66, 78, 67, 53, 70, 59, 46, 50, 57, 79, 51, 55, 59, 66, 60, 80, 65, 66, 36, 65, 69, 49, 57, 52, 61, 67, 60, 78, 67, 58, 56, 55, 80, 65, 81, 61, 64, 41, 65, 63, 44, 83, 59, 43, 46, 58, 52, 67, 43, 72, 72, 74, 58, 54, 62, 65, 75, 57, 50, 50, 57, 60, 55, 52, 56, 80, 81, 100, 74, 45, 56, 62, 58, 53, 67, 65, 40, 43, 50, 62, 79, 59, 33, 68, 57, 56, 56, 86, 97, 46, 60, 59, 61, 62, 92, 49, 118, 98, 65, 66, 48, 58, 40, 70, 52, 74, 126, 69, 85, 61, 52, 91, 51, 78, 65, 58, 48, 85, 71, 71, 63, 64, 74, 59, 49, 109, 73, 85, 58, 75, 56, 78, 97, 115, 108, 122, 67, 78, 153, 69, 54, 77, 69, 71, 76, 68, 58, 67, 52, 43, 65, 77, 74, 49, 109, 69, 48, 52, 58, 75, 82, 83, 64, 95, 82, 70, 72, 74, 54, 51, 54, 59, 61, 76, 59, 66, 40, 95, 58, 59, 56, 67, 42, 66, 81, 72, 65, 58, 75, 67, 58, 66, 60, 87, 86, 80, 77, 60, 71, 64, 73, 44, 54, 64, 79, 77, 58, 77, 44, 67, 107, 73, 64, 47, 71, 67, 68, 47, 73, 56, 77, 71, 64, 61, 56, 57, 52, 81, 62, 55, 64, 53, 84, 44, 51, 62, 62, 57, 55, 69, 51, 57, 68, 70, 57, 78, 59, 52, 51, 68, 79, 92, 67, 53, 61, 86, 53, 97, 63, 52, 48, 54, 72, 58, 81, 84, 73, 70, 56, 58, 74, 53, 78, 58, 70, 93, 52, 61, 75, 50, 61, 59, 55, 64, 57, 80, 55, 87, 62, 56, 88, 61, 57, 61, 48, 59, 79, 64, 55, 67, 49, 64, 73, 60, 70, 53, 63, 66, 68, 51, 61, 72, 75, 55, 76, 70, 81, 68, 53, 60, 63, 69, 64, 57, 54, 72, 65, 61, 112, 62, 59, 67, 30, 92, 108, 68, 55, 59, 57, 42, 82, 59, 70, 49, 77, 61, 72, 59, 91, 59, 68, 65, 81, 37, 59, 62, 63, 66, 61, 59, 68, 66, 69, 69, 79, 61, 69, 53, 69, 72, 68, 67, 60, 54, 65, 51, 83, 60, 62, 56, 52, 92, 99, 71, 60, 79, 67, 73, 81, 51, 97, 73, 56, 74, 67, 57, 61, 63, 95, 44, 57, 64, 61, 68, 93, 66, 56, 64, 64, 61, 59, 46, 45, 67, 73, 63, 74, 53, 61, 76, 144, 47, 105, 65, 66, 37, 69, 62, 71, 62, 66, 60, 65, 50, 61, 86, 51, 45, 60, 52, 55, 67, 77, 63, 63, 56, 64, 60, 80, 66, 61, 61, 45, 70, 83, 63, 52, 55, 72, 98, 62, 59, 82, 94, 63, 65, 82, 69, 61, 59, 45, 63, 66, 64, 44, 66, 68, 63, 36, 103, 64, 79, 39, 70, 55, 61, 64, 60, 55, 58, 48, 74, 81, 149, 64, 46, 66, 75, 71, 62, 49, 65, 64, 53, 62, 60, 56, 91, 56, 49, 68, 81, 71, 76, 64, 68, 78, 65, 58, 65, 73, 74, 51, 75, 62, 51, 65, 68, 77, 61, 57, 54, 78, 59, 66, 104, 56, 60, 51, 63, 56, 55, 70, 86, 56, 63, 57, 68, 73, 77, 68, 51, 52, 82, 77, 73, 69, 81, 73, 76, 59, 56, 99, 53, 68, 92, 66, 38, 60, 82, 71, 65, 61, 67, 110, 65, 61, 55, 51, 68, 66, 50, 64, 82, 64, 67, 82, 74, 70, 55, 53, 64, 63, 53, 69, 50, 72, 93, 54, 63, 59, 70, 62, 71, 107, 67, 65, 66, 55, 44, 87, 85, 80, 66, 43, 67, 63, 71, 64, 51, 54, 82, 57, 48, 66, 80, 64, 49, 72, 34, 62, 57, 33, 68, 62, 59, 58, 73, 68, 50, 70, 63, 67, 73, 83, 75, 69, 54, 75, 63, 74, 64, 63, 62, 57, 80, 64, 67, 48, 75, 87, 51, 61, 86, 75, 56, 54, 60, 86, 63, 61, 63, 78, 73, 56, 83, 56, 58, 48, 82, 65, 80, 56, 69, 57, 55, 75, 60, 49, 77, 51, 48, 57, 59, 55, 60, 79, 91, 61, 60, 78, 67, 62, 52, 56, 61, 71, 62, 73, 63, 55, 50, 66, 50, 83, 98, 100, 55, 71, 78, 72, 56, 60, 87, 53, 52, 54, 69, 62, 57, 64, 68, 70, 58, 99, 56, 62, 75, 61, 56, 67, 58, 59, 59, 128, 55, 68, 76, 41, 78, 87, 59, 61, 61, 60, 52, 54, 59, 65, 47, 66, 50, 72, 59, 45, 55, 55, 58, 67, 57, 49, 45, 49, 66, 67, 59, 58, 64, 94, 69, 67, 61, 85, 82, 68, 59, 54, 66, 90, 70, 67, 38, 54, 73, 59, 71, 61, 88, 59, 59, 70, 58, 72, 95, 76, 67, 54, 60, 61, 69, 53, 89, 53, 81, 56, 63, 86, 76, 76, 79, 93, 60, 75, 51, 102, 63, 56, 60, 53, 59, 52, 52, 64, 74, 81, 58, 65, 70, 54, 66, 58, 49, 65, 71, 66, 53, 52, 70, 77, 62, 53, 65, 60, 80, 68, 76, 56, 47, 67, 58, 74, 52, 59, 66, 64, 61, 57, 66, 56, 63, 97, 66, 69, 79, 94, 73, 54, 71, 83, 69, 63, 88, 72, 53, 61, 59, 66, 68, 85, 69, 71, 60, 57, 57, 94, 66, 52, 50, 86, 66, 67, 67, 67, 60, 66, 45, 65, 64, 65, 73, 96, 60, 69, 52, 79, 63, 66, 73, 54, 74, 56, 57, 73, 63, 75, 73, 65, 58, 56, 56, 63, 81, 79, 107, 59, 58, 70, 62, 61, 65, 102, 115, 54, 70, 109, 69, 65, 74, 80, 88, 78, 63, 87, 61, 50, 65, 78, 74, 65, 112, 60, 55, 54, 55, 70, 41, 89, 57, 69, 74, 48, 70, 62, 60, 79, 57, 62, 61, 69, 103, 58, 49, 59, 43, 57, 76, 78, 93, 71, 87, 62, 71, 63, 67, 103, 53, 62, 58, 57, 51, 67, 79, 115, 55, 67, 70, 68, 80, 34, 52, 104, 59, 77, 61, 48, 70, 68, 59, 58, 50, 112, 76, 71, 101, 52, 49, 88, 63, 47, 80, 55, 66, 63, 50, 78, 76, 74, 54, 81, 69, 57, 51, 60, 63, 63, 80, 73, 70, 75, 80, 61, 66, 67, 45, 68, 89, 105, 55, 64, 69, 63, 61, 71, 89, 74, 66, 59, 54, 67, 98, 64, 70, 54, 47, 48, 63, 97, 51, 53, 54, 72, 52, 71, 54, 60, 76, 41, 64, 57, 79, 108, 105, 77, 102, 61, 92, 73, 54, 56, 55, 64, 45, 33, 97, 48, 64, 57, 50, 51, 51, 56, 75, 70, 47, 77, 99, 53, 62, 58, 47, 66, 50, 52, 69, 64, 71, 72, 128, 82, 66, 67, 52, 60, 82, 62, 57, 73, 60, 91, 102, 67, 86, 63, 59, 52, 56, 75, 64, 58, 57, 66, 64, 82, 61, 53, 43, 50, 52, 61, 76, 84, 78, 60, 65, 74, 57, 47, 60, 64, 52, 58, 46, 76, 71, 49, 64, 78, 57, 58, 60, 62, 51, 67, 74, 58, 77, 41, 69, 62, 89, 82, 55, 58, 66, 57, 42, 73, 58, 81, 98, 74, 62, 54, 67, 75, 53, 68, 50, 76, 61, 107, 60, 54, 65, 83, 67, 78, 61, 95, 58, 68, 60, 72, 73, 58, 61, 105, 66, 76, 120, 67, 56, 57, 66, 58, 55, 82, 60, 68, 58, 53, 71, 55, 51, 70, 69, 123, 49, 111, 74, 55, 58, 76, 61, 92, 58, 66, 82, 64, 75, 62, 55, 80, 75, 59, 62, 96, 68, 77, 62, 54, 64, 54, 63, 80, 80, 76, 76, 52, 63, 97, 74, 70, 68, 63, 67, 61, 47, 72, 82, 81, 60, 61, 60, 67, 39, 60, 74, 64, 47, 54, 53, 65, 54, 43, 63, 82, 71, 65, 54, 60, 57, 62, 77, 54, 67, 55, 69, 60, 62, 60, 69, 61, 54, 60, 76, 73, 84, 61, 42, 64, 157, 67, 68, 45, 77, 60, 64, 61, 54, 53, 57, 54, 85, 51, 67, 60, 60, 50, 84, 73, 63, 67, 61, 53, 53, 67, 53, 71, 55, 63, 47, 71, 67, 74, 118, 77, 61, 65, 67, 88, 51, 52, 88, 73, 58, 78, 53, 76, 70, 99, 58, 86, 52, 48, 96, 66, 52, 91, 60, 73, 58, 63, 53, 71, 75, 52, 85, 59, 69, 63, 41, 59, 60, 78, 66, 65, 71, 50, 73, 49, 41, 76, 63, 65, 70, 63, 64, 65, 80, 61, 72, 68, 144, 81, 64, 41, 62, 63, 49, 87, 57, 56, 60, 65, 59, 73, 49, 70, 56, 74, 48, 55, 59, 51, 78, 85, 73, 66, 69, 44, 60, 75, 57, 115, 65, 59, 56, 58, 81, 77, 64, 92, 60, 52, 64, 66, 47, 63, 72, 63, 87, 66, 55, 43, 76, 70, 62, 74, 62, 69, 65, 78, 68, 65, 73, 47, 51, 50, 64, 55, 66, 49, 74, 56, 74, 61, 61, 77, 59, 70, 64, 87, 66, 73, 64, 46, 71, 73, 80, 87, 54, 60, 70, 63, 62, 62, 92, 68, 60, 89, 46, 57, 89, 46, 76, 59, 53, 69, 53, 68, 46, 73, 77, 59, 42, 62, 60, 60, 59, 51, 67, 66, 73, 67, 53, 93, 70, 74, 69, 75, 53, 62, 77, 62, 70, 77, 49, 46, 70, 69, 53, 63, 65, 79, 77, 46, 55, 71, 62, 80, 65, 64, 55, 77, 71, 62, 77, 71, 86, 57, 66, 76, 68, 75, 64, 55, 49, 68, 74, 62, 59, 57, 67, 124, 66, 72, 68, 57, 73, 92, 47, 89, 67, 50, 62, 57, 69, 69, 82, 79, 54, 68, 59, 73, 79, 49, 81, 63, 61, 70, 69, 64, 64, 103, 54, 74, 63, 74, 62, 62, 56, 74, 56, 72, 61, 85, 78, 54, 72, 68, 63, 63, 74, 57, 56, 72, 72, 54, 55, 43, 71, 68, 83, 65, 71, 63, 52, 73, 55, 49, 99, 66, 62, 73, 58, 54, 60, 68, 66, 79, 71, 57, 58, 64, 74, 60, 55, 57, 62, 72, 69, 62, 73, 78, 50, 88, 62, 58, 67, 56, 75, 88, 77, 60, 71, 77, 50, 59, 65, 88, 69, 65, 65, 63, 61, 95, 54, 64, 66, 64, 65, 61, 87, 76, 62, 79, 54, 68, 46, 71, 60, 79, 53, 54, 69, 71, 63, 61, 55, 68, 68, 69, 74, 52, 58, 68, 56, 65, 75, 67, 80, 69, 63, 62, 54, 51, 50, 59, 69, 77, 65, 64, 68, 82, 80, 58, 60, 54, 84, 67, 66, 60, 69, 69, 73, 74, 49, 55, 89, 53, 48, 67, 56, 88, 77, 64, 60, 61, 65, 67, 39, 64, 96, 70, 66, 64, 91, 73, 62, 65, 64, 64, 61, 50, 84, 69, 52, 96, 56, 52, 76, 75, 53, 68, 61, 46, 112, 52, 66, 93, 73, 78, 56, 65, 66, 68, 64, 90, 91, 58, 66, 50, 72, 30, 59, 67, 51, 82, 54, 69, 55, 173, 59, 58, 66, 60, 72, 83, 81, 64, 75, 56, 66, 58, 40, 74, 70, 70, 67, 59, 72, 80, 78, 74, 73, 50, 41, 74, 46, 51, 59, 77, 70, 57, 57, 61, 59, 85, 71, 63, 73, 68, 78, 75, 66, 58, 57, 46, 58, 63, 72, 98, 60, 56, 54, 71, 69, 79, 65, 54, 69, 65, 76, 63, 86, 55, 69, 41, 42, 70, 75, 53, 65, 51, 70, 51, 68, 74, 57, 58, 64, 70, 49, 86, 79, 76, 64, 61, 60, 80, 81, 58, 56, 43, 62, 50, 70, 56, 72, 36, 62, 51, 56, 72, 67, 46, 86, 64, 75, 63, 45, 63, 51, 47, 63, 43, 40, 55, 63, 59, 74, 65, 51, 82, 52, 86, 54, 61, 42, 72, 55, 65, 50, 61, 60, 54, 71, 83, 62, 81, 63, 72, 64, 67, 41, 73, 58, 77, 64, 52, 72, 47, 75, 54, 109, 52, 64, 55, 100, 58, 76, 69, 67, 73, 77, 46, 77, 58, 81, 116, 49, 69, 64, 60, 65, 64, 82, 51, 58, 56, 78, 58, 50, 48, 57, 76, 65, 65, 54, 65, 70, 51, 45, 55, 59, 62, 72, 65, 71, 59, 69, 76, 77, 67, 50, 51, 69, 59, 57, 60, 43, 71, 63, 48, 59, 68, 56, 62, 59, 58, 72, 50, 78, 60, 67, 128, 49, 88, 83, 70, 44, 52, 61, 75, 115, 82, 61, 72, 65, 60, 88, 49, 52, 51, 36, 98, 72, 68, 55, 60, 67, 51, 57, 81, 71, 55, 60, 77, 68, 69, 57, 60, 61, 66, 48, 73, 61, 54, 58, 84, 51, 65, 70, 65, 67, 68, 57, 70, 65, 68, 66, 83, 77, 53, 59, 66, 42, 66, 66, 57, 47, 81, 59, 66, 45, 60, 58, 73, 70, 85, 61, 112, 69, 45, 107, 45, 56, 63, 64, 75, 47, 70, 67, 71, 109, 50, 50, 55, 49, 64, 73, 65, 48, 70, 73, 47, 65, 76, 72, 49, 48, 75, 65, 59, 68, 57, 70, 83, 76, 75, 59, 65, 75, 70, 53, 64, 60, 52, 65, 76, 59, 63, 53, 39, 46, 86, 52, 68, 55, 58, 62, 54, 73, 65, 58, 66, 67, 77, 93, 96, 76, 62, 50, 63, 92, 51, 66, 58, 58, 99, 59, 53, 61, 75, 73, 59, 61, 44, 71, 44, 87, 74, 42, 75, 77, 55, 56, 60, 63, 43, 64, 70, 70, 92, 67, 44, 63, 61, 64, 53, 69, 97, 121, 59, 38, 80, 59, 59, 93, 52, 69, 63, 65, 61, 66, 83, 95, 64, 62, 96, 45, 74, 43, 77, 55, 63, 54, 73, 58, 51, 60, 77, 58, 70, 70, 60, 112, 61, 70, 73, 60, 49, 67, 53, 65, 69, 53, 64, 72, 59, 60, 84, 66, 46, 72, 71, 59, 55, 68, 54, 44, 57, 62, 91, 74, 75, 85, 60, 72, 57, 73, 52, 48, 52, 56, 51, 65, 62, 54, 87, 68, 84, 67, 65, 59, 64, 62, 69, 92, 60, 79, 62, 71, 52, 92, 62, 74, 77, 56, 62, 64, 65, 61, 91, 69, 57, 72, 60, 41, 60, 51, 64, 73, 71, 75, 63, 55, 66, 78, 51, 60, 62, 64, 73, 65, 55, 70, 63, 71, 66, 60, 82, 48, 51, 44, 74, 69, 62, 60, 59, 71, 90, 65, 62, 54, 111, 64, 62, 54, 63, 67, 66, 71, 73, 69, 57, 73, 60, 57, 56, 74, 54, 70, 63, 52, 62, 69, 70, 76, 58, 72, 61, 83, 91, 74, 80, 58, 68, 73, 73, 63, 61, 52, 67, 56, 88, 61, 61, 47, 70, 61, 68, 77, 54, 60, 83, 78, 75, 57, 41, 66, 48, 64, 52, 79, 73, 60, 57, 53, 61, 56, 73, 60, 65, 50, 60, 55, 64, 62, 50, 49, 80, 68, 69, 57, 58, 70, 59, 59, 48, 62, 80, 84, 56, 62, 48, 63, 76, 60, 54, 83, 62, 81, 51, 68, 56, 57, 67, 68, 71, 77, 85, 69, 82, 54, 66, 57, 57, 61, 61, 72, 66, 51, 58, 60, 58, 82, 46, 55, 57, 76, 72, 68, 83, 63, 63, 52, 61, 74, 61, 50, 100, 61, 71, 67, 87, 74, 67, 85, 66, 66, 53, 46, 73, 61, 59, 67, 60, 74, 60, 57, 59, 68, 56, 57, 50, 133, 46, 75, 58, 49, 55, 91, 56, 45, 79, 65, 51, 98, 50, 66, 106, 63, 69, 62, 65, 61, 58, 99, 66, 59, 76, 62, 62, 71, 62, 62, 75, 75, 66, 59, 73, 60, 54, 50, 61, 61, 64, 67, 52, 56, 61, 83, 55, 64, 55, 65, 60, 74, 63, 72, 68, 63, 83, 69, 68, 65, 73, 66, 58, 84, 95, 59, 58, 58, 62, 60, 90, 61, 65, 69, 82, 44, 75, 138, 62, 78, 63, 59, 54, 62, 50, 58, 63, 52, 73, 53, 72, 94, 82, 87, 67, 63, 58, 118, 82, 59, 58, 57, 59, 89, 63, 63, 69, 48, 88, 68, 67, 61, 83, 68, 69, 73, 80, 63, 60, 55, 50, 49, 57, 60, 63, 66, 67, 60, 63, 70, 82, 56, 68, 62, 73, 54, 93, 60, 61, 65, 59, 72, 67, 70, 81, 74, 57, 55, 52, 53, 58, 51, 97, 67, 56, 58, 69, 76, 80, 67, 67, 81, 65, 75, 53, 69, 68, 58, 55, 77, 63, 62, 87, 70, 68, 57, 68, 89, 69, 69, 63, 79, 68, 64, 71, 53, 57, 71, 56, 51, 51, 80, 59, 53, 58, 64, 92, 48, 65, 67, 78, 64, 48, 56, 71, 55, 59, 71, 57, 58, 79, 53, 50, 59, 43, 54, 59, 59, 47, 54, 82, 50, 57, 63, 80, 52, 65, 94, 79, 51, 52, 72, 52, 51, 57, 44, 61, 65, 61, 65, 43, 81, 71, 74, 91, 87, 54, 57, 77, 73, 67, 71, 90, 104, 73, 59, 72, 76, 66, 56, 68, 70, 70, 61, 92, 53, 64, 59, 70, 56, 61, 52, 72, 69, 38, 69, 88, 45, 68, 61, 52, 63, 80, 52, 63, 48, 67, 90, 41, 82, 59, 59, 54, 39, 73, 71, 60, 56, 61, 57, 57, 59, 100, 47, 81, 54, 70, 64, 60, 79, 55, 59, 68, 63, 65, 57, 55, 40, 56, 55, 72, 62, 60, 77, 72, 61, 75, 49, 41, 72, 34, 64, 79, 63, 60, 72, 53, 94, 79, 80, 64, 69, 78, 75, 58, 89, 51, 68, 81, 70, 67, 61, 71, 61, 62, 63, 78, 71, 38, 58, 55, 52, 57, 66, 52, 53, 99, 63, 62, 54, 44, 64, 66, 101, 53, 64, 91, 81, 55, 83, 67, 72, 63, 64, 69, 70, 60, 102, 71, 64, 72, 64, 59, 74, 55, 74, 65, 65, 74, 48, 61, 65, 76, 88, 55, 57, 50, 59, 40, 87, 90, 61, 68, 54, 61, 67, 73, 65, 65, 58, 75, 53, 76, 60, 65, 55, 53, 67, 64, 53, 73, 75, 51, 59, 55, 57, 54, 75, 51, 61, 68, 57, 68, 68, 52, 73, 73, 94, 59, 80, 59, 60, 54, 66, 87, 55, 50, 68, 77, 100, 75, 49, 57, 69, 60, 61, 66, 60, 56, 55, 67, 62, 65, 82, 62, 83, 60, 69, 73, 60, 77, 53, 106, 58, 67, 65, 46, 57, 72, 58, 61, 66, 85, 72, 59, 80, 60, 82, 88, 80, 56, 71, 54, 66, 45, 49, 55, 63, 65, 60, 55, 117, 52, 71, 91, 65, 49, 69, 84, 62, 65, 64, 57, 75, 78, 70, 66, 82, 65, 68, 55, 66, 70, 89, 50, 52, 52, 61, 48, 45, 74, 79, 61, 103, 85, 69, 68, 78, 56, 59, 70, 65, 77, 59, 68, 50, 68, 45, 85, 103, 71, 62, 69, 55, 54, 53, 106, 61, 63, 80, 75, 61, 63, 61, 54, 61, 76, 68, 108, 56, 65, 61, 59, 79, 65, 60, 53, 75, 58, 58, 61, 66, 48, 72, 68, 50, 56, 79, 67, 61, 71, 77, 56, 59, 76, 50, 77, 51, 87, 70, 61, 65, 60, 49, 106, 66, 51, 70, 59, 67, 52, 68, 56, 56, 62, 51, 66, 74, 75, 62, 85, 56, 66, 67, 63, 68, 61, 86, 53, 73, 49, 46, 65, 87, 75, 60, 63, 68, 64, 59, 126, 70, 61, 67, 63, 62, 58, 92, 67, 55, 68, 75, 83, 55, 60, 81, 62, 83, 63, 76, 69, 66, 56, 92, 60, 67, 75, 68, 67, 41, 66, 112, 53, 57, 61, 57, 56, 66, 60, 58, 58, 61, 69, 74, 95, 59, 94, 81, 61, 80, 49, 67, 69, 72, 67, 105, 62, 119, 63, 61, 57, 64, 62, 100, 67, 78, 68, 62, 62, 65, 67, 54, 74, 79, 64, 64, 64, 39, 59, 45, 61, 68, 54, 100, 74, 69, 57, 58, 55, 75, 51, 66, 63, 55, 71, 78, 50, 60, 48, 41, 75, 76, 66, 64, 56, 83, 63, 59, 66, 63, 57, 52, 66, 62, 93, 59, 51, 71, 59, 54, 52, 68, 64, 58, 71, 68, 85, 80, 63, 49, 59, 62, 71, 68, 79, 76, 61, 64, 77, 63, 50, 70, 65, 60, 50, 84, 95, 74, 61, 68, 67, 107, 65, 65, 49, 60, 83, 75, 68, 52, 39, 58, 58, 65, 50, 79, 90, 69, 46, 46, 54, 55, 69, 49, 82, 58, 63, 55, 54, 67, 47, 68, 68, 54, 64, 58, 55, 66, 49, 84, 55, 46, 69, 64, 47, 69, 74, 64, 62, 107, 56, 62, 78, 68, 60, 58, 89, 65, 63, 58, 63, 65, 64, 119, 63, 79, 66, 71, 82, 68, 78, 73, 58, 75, 88, 76, 72, 54, 73, 55, 56, 62, 53, 72, 79, 87, 76, 57, 69, 98, 67, 64, 64, 49, 78, 62, 60, 76, 50, 58, 59, 88, 49, 71, 79, 55, 70, 61, 78, 53, 72, 93, 37, 93, 67, 62, 54, 73, 69, 41, 66, 58, 88, 54, 61, 62, 69, 57, 41, 44, 64, 67, 63, 72, 69, 59, 73, 54, 71, 45, 76, 67, 68, 60, 62, 76, 58, 49, 60, 60, 70, 65, 55, 60, 77, 104, 67, 71, 87, 56, 65, 83, 63, 109, 71, 50, 67, 55, 43, 64, 75, 68, 78, 62, 69, 55, 91, 62, 91, 66, 66, 57, 63, 63, 75, 58, 46, 82, 62, 82, 67, 66, 65, 57, 73, 95, 101, 38, 97, 58, 55, 42, 68, 57, 61, 39, 71, 65, 66, 63, 44, 77, 66, 66, 61, 102, 71, 53, 40, 52, 67, 42, 64, 46, 56, 89, 67, 67, 65, 58, 73, 68, 65, 61, 60, 77, 65, 56, 61, 71, 63, 62, 54, 107, 60, 71, 64, 67, 54, 66, 65, 86, 97, 57, 60, 58, 56, 58, 49, 69, 87, 69, 97, 66, 66, 47, 66, 68, 72, 49, 67, 63, 56, 58, 63, 50, 63, 76, 68, 65, 58, 65, 84, 70, 53, 54, 57, 65, 84, 57, 81, 45, 77, 70, 48, 70, 52, 75, 71, 70, 74, 72, 85, 62, 49, 63, 76, 75, 51, 48, 56, 53, 45, 68, 51, 66, 55, 67, 45, 55, 57, 60, 50, 75, 69, 72, 48, 64, 77, 80, 74, 62, 79, 85, 70, 58, 46, 104, 69, 47, 66, 71, 53, 62, 54, 65, 78, 55, 75, 50, 65, 59, 70, 69, 62, 70, 72, 55, 52, 51, 69, 85, 75, 64, 45, 67, 81, 57, 61, 72, 66, 50, 55, 60, 57, 75, 62, 73, 60, 83, 54, 70, 71, 71, 66, 66, 44, 74, 57, 82, 78, 64, 54, 67, 58, 66, 54, 71, 79, 77, 59, 66, 75, 81, 90, 66, 50, 56, 55, 65, 60, 72, 67, 64, 79, 59, 55, 78, 67, 58, 66, 47, 60, 57, 50, 53, 59, 54, 74, 70, 60, 69, 57, 54, 81, 59, 50, 79, 58, 98, 77, 53, 72, 64, 60, 77, 73, 74, 80, 54, 82, 35, 54, 58, 91, 86, 66, 63, 71, 51, 56, 64, 63, 87, 80, 66, 81, 76, 47, 66, 66, 66, 68, 50, 48, 74, 50, 94, 67, 49, 52, 44, 57, 48, 71, 79, 69, 76, 84, 65, 56, 57, 74, 55, 63, 68, 67, 62, 80, 63, 115, 68, 53, 51, 67, 57, 65, 66, 83, 70, 65, 80, 54, 57, 60, 79, 53, 73, 68, 80, 69, 69, 60, 48, 59, 56, 59, 55, 60, 81, 53, 79, 81, 53, 59, 60, 74, 54, 62, 64, 65, 61, 72, 58, 49, 74, 56, 59, 65, 65, 66, 58, 44, 64, 71, 57, 64, 64, 68, 76, 78, 70, 50, 77, 63, 52, 71, 55, 67, 96, 111, 67, 76, 75, 58, 58, 60, 61, 60, 41, 62, 86, 54, 60, 77, 62, 73, 77, 66, 55, 63, 66, 60, 74, 58, 57, 71, 76, 88, 86, 67, 72, 78, 67, 57, 77, 63, 59, 89, 59, 79, 71, 55, 60, 67, 57, 65, 63, 48, 61, 79, 64, 69, 50, 85, 54, 44, 88, 54, 123, 68, 73, 66, 67, 66, 55, 74, 60, 100, 81, 48, 57, 59, 67, 53, 62, 71, 68, 68, 52, 69, 81, 60, 80, 78, 62, 65, 59, 72, 65, 70, 86, 64, 81, 63, 72, 46, 60, 47, 54, 102, 100, 56, 66, 67, 79, 73, 61, 55, 66, 60, 63, 86, 49, 52, 75, 56, 60, 56, 59, 50, 64, 69, 56, 80, 87, 77, 81, 46, 70, 81, 65, 46, 79, 63, 66, 58, 65, 63, 69, 84, 64, 66, 72, 43, 55, 60, 60, 54, 67, 59, 76, 68, 87, 58, 62, 69, 71, 47, 58, 78, 53, 72, 73, 60, 58, 67, 65, 41, 79, 73, 84, 81, 41, 53, 62, 70, 57, 51, 63, 77, 72, 53, 67, 59, 102, 98, 68, 48, 60, 42, 79, 81, 63, 76, 114, 73, 65, 77, 60, 67, 87, 83, 65, 66, 73, 65, 64, 88, 62, 63, 45, 68, 75, 64, 52, 58, 64, 55, 91, 76, 65, 63, 51, 65, 64, 68, 70, 56, 52, 72, 62, 89, 87, 93, 55, 64, 80, 72, 52, 68, 74, 62, 50, 59, 61, 68, 56, 62, 72, 53, 62, 62, 71, 76, 54, 54, 72, 73, 50, 68, 67, 61, 61, 74, 40, 67, 66, 60, 58, 73, 64, 57, 73, 84, 67, 68, 69, 76, 99, 67, 70, 82, 65, 83, 84, 64, 74, 89, 56, 67, 52, 109, 61, 53, 69, 90, 56, 70, 53, 80, 49, 59, 54, 42, 50, 55, 40, 77, 65, 60, 73, 79, 65, 68, 62, 48, 55, 63, 61, 62, 97, 80, 38, 54, 62, 43, 54, 50, 71, 68, 53, 129, 55, 58, 79, 59, 61, 79, 82, 60, 80, 77, 81, 71, 50, 51, 71, 58, 52, 68, 57, 55, 49, 63, 91, 73, 73, 62, 45, 64, 69, 57, 77, 56, 44, 69, 55, 44, 54, 61, 55, 55, 72, 54, 55, 66, 54, 94, 52, 66, 83, 76, 65, 52, 50, 79, 143, 69, 63, 69, 81, 63, 58, 65, 62, 55, 66, 79, 65, 55, 51, 58, 74, 61, 61, 69, 58, 71, 61, 91, 75, 70, 57, 76, 69, 94, 46, 53, 73, 76, 48, 49, 63, 62, 57, 56, 56, 64, 119, 53, 55, 68, 52, 57, 74, 66, 62, 57, 60, 61, 58, 57, 70, 110, 54, 80, 95, 58, 136, 62, 61, 69, 59, 61, 60, 65, 106, 69, 77, 81, 57, 72, 56, 54, 42, 53, 78, 49, 55, 71, 48, 85, 64, 84, 49, 66, 61, 61, 58, 69, 56, 46, 63, 74, 72, 60, 63, 81, 73, 64, 49, 49, 66, 55, 72, 83, 60, 57, 105, 50, 58, 72, 65, 59, 114, 69, 92, 65, 81, 59, 62, 62, 60, 65, 59, 62, 59, 63, 52, 66, 52, 66, 47, 52, 72, 71, 112, 58, 46, 57, 58, 61, 45, 61, 74, 64, 76, 73, 65, 109, 64, 63, 58, 82, 66, 75, 72, 55, 64, 70, 57, 51, 74, 61, 67, 79, 52, 92, 78, 65, 58, 103, 47, 60, 48, 52, 51, 49, 65, 57, 61, 102, 70, 49, 46, 70, 63, 66, 62, 66, 77, 61, 62, 81, 65, 58, 70, 68, 71, 61, 57, 60, 44, 67, 66, 58, 49, 54, 62, 71, 53, 65, 52, 53, 138, 55, 62, 62, 53, 63, 54, 56, 64, 61, 88, 105, 66, 54, 57, 55, 81, 53, 49, 54, 66, 46, 77, 71, 64, 60, 69, 58, 52, 68, 68, 60, 54, 70, 59, 48, 64, 53, 58, 74, 55, 128, 48, 41, 72, 65, 48, 71, 85, 52, 66, 63, 74, 68, 77, 61, 73, 55, 83, 41, 42, 55, 77, 63, 64, 52, 69, 82, 64, 45, 73, 75, 55, 81, 77, 70, 63, 70, 68, 56, 76, 62, 62, 71, 63, 65, 98, 64, 52, 84, 68, 58, 60, 55, 64, 69, 68, 58, 57, 58, 74, 56, 49, 64, 45, 60, 72, 62, 57, 85, 51, 69, 85, 69, 63, 59, 54, 79, 54, 69, 68, 63, 64, 60, 56, 70, 55, 69, 85, 113, 69, 52, 53, 65, 73, 78, 57, 51, 46, 55, 67, 70, 56, 73, 56, 61, 58, 60, 114, 63, 45, 92, 79, 76, 69, 64, 60, 56, 52, 57, 65, 73, 76, 71, 55, 74, 87, 89, 62, 88, 75, 63, 91, 54, 59, 45, 75, 70, 71, 59, 71, 72, 71, 113, 91, 61, 79, 67, 41, 54, 58, 60, 58, 60, 69, 65, 64, 74, 83, 82, 69, 52, 63, 62, 69, 51, 56, 97, 76, 71, 55, 110, 92, 64, 69, 74, 66, 47, 66, 84, 57, 59, 49, 45, 80, 88, 63, 91, 46, 58, 63, 74, 74, 77, 53, 69, 60, 58, 69, 55, 73, 60, 61, 97, 74, 48, 54, 49, 69, 65, 60, 61, 97, 78, 72, 67, 71, 72, 54, 54, 37, 56, 49, 53, 64, 51, 62, 64, 39, 62, 71, 66, 80, 76, 62, 71, 61, 67, 70, 52, 75, 85, 60, 64, 62, 67, 65, 76, 68, 61, 43, 41, 36, 50, 44, 71, 60, 76, 69, 46, 80, 82, 82, 74, 46, 70, 75, 62, 78, 131, 70, 72, 62, 58, 106, 56, 65, 64, 68, 56, 60, 95, 75, 51, 70, 101, 73, 84, 72, 67, 65, 67, 56, 64, 50, 67, 62, 64, 72, 69, 70, 79, 78, 68, 34, 64, 57, 58, 87, 67, 77, 63, 60, 73, 67, 70, 43, 64, 73, 63, 66, 42, 58, 39, 55, 77, 62, 66, 72, 59, 50, 57, 70, 75, 59, 58, 57, 66, 86, 46, 74, 73, 57, 81, 65, 76, 71, 81, 70, 82, 66, 76, 70, 58, 72, 95, 71, 68, 74, 53, 60, 55, 72, 68, 78, 56, 54, 106, 48, 58, 56, 91, 80, 82, 77, 77, 51, 56, 70, 55, 79, 77, 101, 56, 57, 76, 68, 66, 76, 65, 57, 68, 72, 61, 96, 71, 68, 80, 50, 60, 52, 57, 56, 51, 57, 60, 83, 62, 64, 60, 61, 56, 60, 94, 43, 68, 99, 59, 92, 67, 57, 68, 47, 80, 48, 97, 58, 58, 80, 54, 63, 81, 62, 87, 57, 68, 107, 78, 60, 71, 70, 74, 75, 43, 54, 66, 74, 61, 75, 56, 65, 46, 67, 59, 60, 48, 66, 80, 93, 62, 42, 70, 83, 50, 77, 63, 75, 51, 64, 77, 69, 71, 77, 82, 62, 56, 67, 61, 99, 49, 60, 85, 69, 66, 58, 91, 65, 90, 50, 68, 68, 53, 70, 56, 63, 76, 64, 60, 55, 55, 76, 67, 60, 74, 80, 92, 64, 62, 69, 89, 80, 79, 53, 70, 64, 103, 69, 72, 56, 57, 73, 68, 56, 76, 62, 51, 60, 67, 71, 55, 86, 70, 57, 72, 78, 70, 54, 68, 55, 74, 81, 54, 91, 82, 56, 55, 73, 68, 69, 45, 65, 49, 79, 72, 62, 67, 60, 49, 82, 77, 55, 61, 80, 63, 51, 47, 56, 58, 71, 56, 74, 50, 63, 68, 68, 91, 53, 65, 64, 50, 70, 72, 90, 89, 74, 51, 65, 63, 61, 65, 88, 70, 37, 51, 43, 69, 69, 58, 52, 50, 62, 51, 90, 63, 48, 69, 92, 80, 72, 118, 82, 56, 51, 95, 62, 59, 84, 45, 48, 51, 54, 75, 63, 70, 67, 68, 83, 55, 79, 78, 60, 68, 62, 57, 48, 60, 53, 92, 60, 65, 68, 76, 98, 49, 76, 64, 50, 44, 67, 53, 58, 69, 75, 87, 64, 60, 82, 69, 67, 61, 65, 134, 91, 52, 60, 67, 63, 55, 60, 54, 64, 57, 82, 62, 42, 64, 55, 60, 48, 68, 74, 74, 93, 68, 59, 63, 50, 61, 50, 62, 64, 58, 77, 91, 72, 89, 72, 70, 55, 70, 62, 48, 58, 80, 93, 58, 60, 55, 42, 87, 57, 54, 80, 51, 71, 69, 58, 84, 96, 64, 44, 58, 60, 46, 61, 62, 80, 54, 74, 62, 66, 65, 77, 46, 58, 58, 80, 56, 71, 63, 59, 60, 44, 69, 54, 75, 75, 62, 64, 76, 59, 73, 69, 66, 100, 83, 59, 48, 62, 58, 99, 64, 62, 46, 71, 68, 44, 62, 60, 63, 76, 85, 79, 62, 62, 60, 62, 69, 59, 63, 79, 61, 63, 71, 73, 48, 54, 79, 61, 72, 83, 69, 68, 92, 80, 65, 88, 53, 51, 56, 117, 84, 68, 78, 77, 80, 62, 59, 20, 88, 62, 108, 61, 64, 44, 67, 62, 88, 41, 54, 115, 51, 69, 86, 54, 68, 66, 70, 62, 62, 78, 63, 59, 63, 86, 59, 43, 67, 64, 66, 56, 64, 85, 77, 54, 68, 67, 52, 78, 72, 57, 63, 68, 56, 47, 60, 42, 76, 61, 74, 92, 63, 64, 68, 72, 66, 95, 69, 108, 62, 59, 62, 66, 91, 54, 89, 63, 48, 65, 50, 63, 68, 51, 57, 64, 81, 58, 68, 82, 55, 52, 61, 67, 54, 66, 74, 71, 86, 55, 48, 89, 81, 48, 61, 71, 57, 57, 63, 68, 98, 58, 50, 54, 65, 42, 69, 57, 78, 87, 64, 69, 67, 81, 61, 78, 56, 83, 58, 66, 136, 46, 54, 61, 75, 77, 60, 64, 87, 74, 60, 60, 80, 46, 50, 63, 44, 70, 76, 69, 59, 48, 58, 40, 49, 68, 73, 50, 77, 79, 70, 72, 61, 52, 70, 75, 69, 52, 60, 74, 49, 58, 121, 72, 65, 71, 47, 56, 67, 51, 78, 45, 66, 84, 60, 52, 61, 61, 63, 91, 45, 66, 63, 57, 54, 72, 69, 90, 39, 65, 40, 94, 45, 75, 68, 46, 49, 80, 59, 65, 71, 60, 89, 57, 98, 52, 74, 81, 68, 75, 54, 64, 52, 49, 55, 85, 69, 72, 78, 75, 65, 58, 78, 72, 53, 70, 57, 71, 47, 52, 70, 64, 83, 67, 62, 54, 54, 77, 44, 103, 75, 54, 78, 68, 73, 81, 60, 69, 64, 73, 78, 57, 83, 62, 54, 47, 55, 54, 53, 59, 81, 97, 56, 60, 59, 46, 61, 53, 60, 84, 84, 56, 63, 51, 68, 51, 56, 51, 64, 47, 53, 56, 66, 51, 65, 47, 64, 85, 49, 57, 71, 82, 57, 61, 80, 82, 71, 50, 79, 85, 61, 70, 57, 76, 42, 64, 56, 49, 71, 58, 81, 72, 43, 68, 79, 59, 91, 36, 61, 66, 71, 48, 52, 61, 70, 65, 50, 56, 50, 108, 71, 78, 81, 54, 67, 56, 74, 64, 64, 66, 53, 74, 68, 78, 69, 74, 86, 75, 56, 46, 79, 61, 32, 72, 60, 68, 47, 72, 55, 66, 51, 43, 52, 71, 74, 76, 58, 81, 59, 71, 49, 80, 61, 79, 87, 64, 80, 79, 64, 71, 61, 74, 71, 59, 62, 58, 53, 76, 61, 69, 55, 53, 52, 62, 61, 66, 71, 65, 78, 73, 39, 63, 98, 88, 43, 52, 92, 57, 79, 56, 58, 77, 69, 52, 57, 56, 42, 63, 53, 76, 59, 66, 55, 67, 71, 41, 67, 68, 59, 67, 72, 68, 57, 50, 96, 58, 55, 59, 129, 65, 66, 53, 63, 48, 68, 50, 70, 65, 84, 71, 88, 61, 62, 88, 99, 89, 66, 103, 68, 58, 55, 57, 63, 58, 68, 74, 66, 80, 51, 48, 72, 47, 45, 79, 34, 55, 46, 64, 64, 44, 54, 74, 46, 94, 70, 51, 64, 69, 64, 49, 72, 58, 55, 88, 54, 50, 51, 66, 74, 77, 73, 41, 71, 57, 90, 85, 75, 69, 62, 68, 61, 95, 105, 91, 79, 61, 64, 72, 47, 67, 71, 45, 39, 72, 64, 87, 48, 51, 63, 75, 46, 71, 65, 57, 62, 126, 49, 57, 67, 58, 62, 46, 60, 93, 43, 47, 58, 69, 85, 74, 55, 71, 65, 91, 67, 50, 73, 61, 50, 61, 52, 72, 64, 47, 64, 66, 70, 52, 53, 37, 50, 72, 48, 55, 94, 67, 80, 64, 72, 55, 63, 49, 58, 73, 68, 115, 73, 69, 81, 57, 52, 86, 72, 83, 72, 45, 86, 103, 97, 78, 66, 68, 81, 64, 72, 60, 77, 61, 68, 77, 57, 66, 73, 49, 50, 61, 70, 87, 66, 91, 86, 81, 81, 68, 71, 58, 51, 27, 46, 46, 76, 133, 53, 82, 73, 74, 76, 65, 100, 51, 57, 89, 46, 68, 69, 77, 74, 60, 60, 81, 82, 83, 50, 56, 49, 70, 61, 62, 58, 54, 99, 76, 64, 55, 66, 70, 69, 109, 52, 66, 69, 73, 62, 71, 70, 66, 115, 94, 62, 64, 60, 56, 60, 73, 60, 54, 91, 55, 64, 70, 70, 64, 59, 100, 37, 74, 58, 65, 63, 62, 109, 41, 74, 56, 61, 66, 36, 66, 62, 59, 90, 104, 49, 59, 90, 68, 48, 68, 63, 80, 47, 61, 60, 56, 67, 64, 61, 66, 63, 52, 75, 50, 66, 77, 47, 62, 64, 59, 47, 77, 39, 62, 56, 60, 81, 83, 73, 43, 79, 63, 63, 68, 68, 68, 89, 63, 42, 68, 67, 62, 81, 54, 61, 53, 44, 67, 58, 145, 65, 77, 64, 62, 55, 89, 93, 67, 58, 75, 64, 90, 67, 79, 56, 61, 85, 63, 65, 77, 47, 56, 47, 59, 48, 72, 89, 61, 75, 80, 67, 59, 54, 74, 71, 49, 77, 100, 63, 65, 59, 52, 71, 60, 98, 74, 43, 51, 69, 68, 63, 64, 78, 81, 69, 90, 85, 76, 54, 68, 90, 52, 59, 41, 63, 41, 90, 65, 59, 75, 50, 52, 76, 61, 52, 34, 50, 67, 60, 51, 70, 62, 57, 87, 65, 51, 67, 50, 56, 63, 44, 56, 46, 62, 38, 46, 52, 49, 103, 83, 63, 67, 80, 88, 61, 63, 71, 124, 48, 55, 56, 53, 61, 78, 55, 90, 61, 84, 59, 48, 43, 39, 63, 57, 75, 62, 70, 77, 54, 66, 84, 90, 87, 65, 56, 73, 72, 54, 52, 110, 56, 56, 64, 67, 67, 78, 53, 59, 65, 81, 66, 73, 57, 64, 98, 63, 116, 63, 54, 55, 64, 58, 60, 69, 69, 71, 117, 54, 55, 96, 58, 82, 73, 100, 80, 52, 69, 49, 73, 67, 76, 61, 66, 164, 66, 58, 50, 79, 81, 60, 58, 67, 58, 66, 55, 61, 53, 65, 45, 69, 57, 65, 70, 49, 57, 87, 53, 56, 63, 69, 77, 61, 64, 68, 73, 53, 46, 53, 52, 75, 80, 80, 59, 76, 57, 73, 44, 65, 59, 82, 84, 74, 56, 61, 64, 48, 53, 94, 55, 47, 75, 71, 81, 73, 69, 115, 58, 46, 89, 67, 65, 70, 57, 66, 46, 72, 62, 72, 84, 85, 69, 50, 76, 112, 104, 62, 56, 49, 99, 68, 76, 63, 64, 55, 68, 104, 51, 56, 61, 50, 65, 69, 62, 62, 66, 64, 66, 57, 93, 44, 109, 85, 61, 109, 46, 62, 76, 78, 56, 74, 50, 51, 71, 56, 51, 75, 60, 68, 75, 98, 79, 107, 57, 70, 57, 52, 62, 118, 70, 59, 46, 74, 64, 71, 52, 51, 67, 66, 60, 70, 57, 73, 80, 81, 76, 68, 55, 87, 77, 56, 71, 86, 59, 60, 72, 53, 63, 69, 80, 67, 85, 82, 52, 78, 58, 60, 74, 64, 52, 66, 57, 74, 67, 53, 62, 75, 71, 57, 60, 54, 55, 63, 61, 67, 68, 77, 61, 48, 57, 54, 82, 73, 37, 81, 63, 53, 76, 63, 47, 72, 57, 65, 72, 44, 33, 75, 67, 52, 80, 66, 70, 75, 57, 70, 103, 69, 61, 58, 58, 62, 49, 73, 82, 50, 56, 60, 118, 63, 54, 85, 57, 76, 65, 59, 58, 64, 53, 68, 61, 48, 48, 69, 76, 70, 68, 65, 62, 58, 59, 50, 78, 72, 78, 77, 62, 56, 74, 67, 64, 80, 66, 54, 64, 55, 50, 60, 58, 78, 71, 76, 56, 57, 65, 103, 82, 93, 52, 57, 66, 66, 63, 56, 60, 76, 48, 48, 87, 50, 56, 61, 52, 58, 51, 88, 67, 66, 64, 68, 82, 67, 61, 75, 57, 54, 70, 61, 38, 54, 53, 67, 72, 61, 79, 47, 100, 48, 58, 54, 57, 63, 102, 53, 62, 68, 63, 76, 86, 62, 59, 58, 37, 50, 67, 52, 62, 95, 119, 43, 55, 56, 59, 54, 72, 85, 52, 48, 64, 63, 61, 62, 94, 71, 61, 86, 75, 77, 71, 72, 88, 84, 59, 69, 54, 69, 76, 68, 71, 57, 46, 72, 55, 62, 59, 75, 62, 89, 77, 80, 77, 67, 48, 64, 76, 56, 80, 59, 89, 42, 57, 50, 80, 55, 76, 55, 68, 78, 67, 71, 70, 52, 79, 77, 61, 57, 70, 97, 58, 94, 78, 66, 70, 47, 66, 52, 72, 87, 70, 67, 62, 59, 73, 49, 56, 61, 178, 49, 47, 66, 73, 49, 67, 59, 63, 49, 49, 66, 72, 65, 69, 69, 62, 87, 70, 84, 48, 63, 62, 64, 58, 69, 47, 81, 55, 60, 57, 66, 57, 67, 59, 66, 81, 63, 55, 58, 44, 64, 54, 53, 71, 72, 50, 34, 60, 59, 65, 54, 47, 71, 51, 71, 74, 99, 69, 49, 81, 48, 67, 60, 75, 65, 65, 76, 81, 85, 64, 65, 65, 61, 78, 83, 72, 58, 86, 58, 68, 64, 59, 87, 65, 61, 64, 65, 55, 78, 58, 63, 75, 75, 58, 47, 72, 69, 66, 69, 57, 85, 69, 57, 63, 65, 71, 41, 57, 58, 54, 40, 68, 90, 65, 50, 59, 56, 69, 74, 77, 71, 64, 73, 84, 97, 87, 59, 64, 67, 110, 53, 44, 69, 62, 72, 91, 72, 55, 66, 65, 45, 61, 63, 69, 51, 68, 68, 47, 59, 72, 60, 64, 66, 60, 82, 56, 74, 69, 70, 49, 55, 67, 55, 85, 72, 95, 75, 94, 80, 67, 74, 58, 74, 65, 51, 77, 66, 66, 69, 70, 37, 82, 56, 60, 44, 60, 54, 61, 60, 73, 78, 54, 50, 74, 45, 67, 82, 39, 51, 51, 56, 61, 69, 72, 98, 62, 69, 68, 70, 59, 64, 124, 78, 58, 43, 76, 75, 46, 59, 68, 63, 83, 58, 37, 68, 59, 49, 77, 46, 64, 55, 72, 63, 71, 57, 67, 58, 62, 54, 59, 44, 57, 93, 57, 49, 56, 44, 65, 50, 78, 47, 46, 67, 45, 88, 65, 63, 55, 81, 39, 70, 78, 60, 60, 77, 68, 69, 66, 73, 57, 65, 65, 56, 68, 59, 114, 62, 105, 63, 82, 58, 67, 57, 88, 57, 69, 81, 59, 48, 57, 62, 65, 79, 64, 51, 69, 108, 63, 61, 52, 68, 69, 62, 66, 60, 55, 57, 68, 56, 54, 61, 57, 72, 69, 60, 70, 91, 66, 81, 88, 83, 101, 67, 74, 66, 57, 80, 73, 47, 68, 56, 52, 91, 68, 65, 63, 77, 67, 65, 70, 63, 66, 75, 64, 77, 94, 50, 69, 62, 69, 76, 69, 52, 68, 59, 64, 61, 45, 78, 45, 122, 66, 72, 64, 73, 53, 71, 80, 48, 63, 75, 50, 77, 60, 54, 66, 68, 53, 69, 58, 75, 65, 79, 69, 34, 49, 81, 68, 75, 64, 64, 75, 85, 72, 67, 58, 63, 72, 65, 79, 71, 83, 65, 56, 77, 76, 56, 65, 90, 51, 53, 93, 60, 62, 76, 61, 57, 51, 61, 70, 65, 57, 78, 63, 69, 69, 67, 82, 72, 76, 81, 88, 82, 77, 67, 38, 66, 81, 58, 55, 31, 76, 60, 64, 59, 53, 62, 85, 51, 72, 84, 60, 60, 68, 62, 65, 65, 63, 69, 92, 83, 54, 72, 58, 61, 58, 65, 64, 72, 58, 73, 79, 98, 60, 53, 72, 84, 47, 55, 53, 53, 56, 91, 56, 50, 68, 67, 86, 64, 39, 53, 57, 130, 41, 81, 66, 62, 63, 75, 65, 51, 61, 49, 54, 64, 69, 83, 75, 80, 70, 66, 61, 72, 87, 58, 56, 61, 95, 47, 87, 63, 88, 61, 42, 61, 65, 67, 50, 56, 84, 60, 42, 68, 50, 60, 62, 58, 142, 85, 62, 59, 69, 64, 79, 75, 56, 71, 54, 54, 75, 81, 56, 75, 43, 56, 83, 54, 80, 76, 75, 61, 65, 56, 64, 71, 57, 63, 52, 81, 68, 59, 59, 46, 127, 76, 69, 103, 52, 43, 68, 58, 62, 64, 67, 60, 60, 70, 37, 64, 44, 61, 74, 70, 40, 101, 65, 55, 89, 54, 63, 48, 52, 66, 69, 76, 61, 63, 56, 77, 46, 69, 68, 64, 84, 58, 59, 60, 64, 69, 78, 81, 47, 49, 56, 71, 72, 59, 65, 63, 73, 65, 79, 71, 60, 61, 73, 61, 49, 52, 50, 64, 78, 59, 66, 56, 73, 69, 73, 65, 38, 67, 52, 57, 67, 65, 67, 70, 66, 98, 71, 54, 71, 68, 64, 40, 88, 61, 64, 51, 53, 60, 64, 41, 54, 63, 78, 88, 75, 57, 76, 66, 75, 62, 91, 59, 59, 73, 45, 96, 72, 65, 65, 86, 52, 66, 51, 80, 56, 55, 31, 81, 88, 43, 43, 50, 65, 35, 64, 63, 53, 50, 61, 90, 74, 45, 62, 51, 43, 36, 58, 73, 66, 58, 41, 55, 79, 52, 59, 65, 57, 57, 50, 41, 54, 126, 60, 52, 54, 69, 71, 48, 53, 51, 67, 55, 84, 68, 69, 74, 62, 121, 70, 79, 59, 62, 56, 62, 74, 48, 37, 52, 66, 57, 58, 61, 91, 59, 62, 70, 47, 62, 65, 71, 63, 65, 44, 63, 56, 111, 55, 77, 45, 57, 47, 68, 88, 52, 87, 88, 59, 49, 62, 67, 103, 82, 69, 75, 65, 45, 69, 60, 46, 78, 80, 46, 82, 55, 116, 66, 81, 66, 53, 44, 58, 64, 50, 67, 51, 75, 63, 31, 66, 65, 66, 53, 75, 46, 73, 62, 76, 86, 67, 60, 83, 73, 117, 61, 63, 58, 57, 71, 88, 57, 93, 76, 58, 74, 57, 54, 57, 87, 69, 43, 74, 54, 55, 76, 57, 58, 52, 56, 62, 67, 86, 61, 82, 75, 52, 62, 67, 76, 71, 59, 39, 48, 74, 50, 53, 40, 82, 44, 77, 73, 61, 72, 48, 72, 62, 67, 49, 73, 119, 67, 53, 66, 99, 82, 85, 71, 50, 68, 59, 43, 70, 89, 41, 75, 126, 89, 109, 50, 66, 59, 95, 49, 69, 47, 93, 56, 68, 36, 56, 49, 57, 63, 52, 64, 71, 59, 96, 51, 64, 47, 79, 82, 46, 62, 67, 42, 62, 58, 58, 51, 97, 66, 44, 55, 72, 58, 56, 52, 52, 49, 55, 60, 68, 69, 50, 74, 64, 50, 67, 65, 61, 81, 52, 55, 49, 52, 79, 69, 140, 83, 81, 53, 49, 65, 60, 56, 68, 62, 59, 107, 83, 62, 55, 56, 89, 46, 90, 58, 48, 60, 57, 59, 57, 64, 97, 74, 52, 113, 42, 44, 66, 57, 86, 45, 88, 68, 62, 73, 63, 42, 57, 66, 79, 102, 61, 63, 55, 56, 65, 72, 59, 68, 52, 53, 48, 81, 54, 72, 64, 85, 49, 83, 63, 67, 67, 79, 91, 64, 63, 53, 89, 65, 67, 61, 66, 68, 74, 72, 89, 68, 79, 53, 51, 97, 52, 56, 78, 70, 56, 57, 107, 82, 41, 84, 76, 77, 57, 82, 70, 44, 54, 85, 62, 76, 63, 55, 71, 46, 54, 76, 67, 78, 82, 59, 66, 67, 80, 77, 60, 39, 74, 49, 61, 51, 107, 53, 58, 79, 81, 49, 67, 57, 83, 59, 57, 67, 77, 55, 63, 62, 66, 83, 91, 63, 89, 70, 60, 52, 71, 105, 73, 54, 73, 73, 70, 52, 66, 67, 66, 70, 50, 73, 55, 71, 51, 56, 39, 52, 42, 51, 67, 66, 69, 54, 81, 67, 72, 57, 51, 58, 74, 55, 58, 54, 69, 96, 72, 69, 62, 81, 79, 53, 74, 56, 51, 63, 97, 61, 78, 74, 50, 57, 35, 68, 39, 92, 89, 46, 58, 48, 46, 69, 96, 68, 60, 58, 74, 29, 40, 72, 59, 70, 63, 53, 58, 62, 67, 84, 61, 68, 81, 56, 85, 60, 62, 80, 54, 60, 61, 69, 77, 51, 61, 72, 51, 91, 58, 86, 48, 103, 69, 53, 74, 84, 72, 110, 59, 48, 49, 58, 54, 52, 50, 62, 48, 59, 57, 62, 59, 77, 56, 65, 80, 71, 67, 61, 112, 121, 58, 65, 84, 69, 52, 54, 41, 71, 67, 55, 68, 74, 54, 106, 80, 90, 65, 56, 126, 67, 60, 63, 60, 72, 62, 71, 69, 110, 73, 71, 78, 83, 68, 74, 70, 52, 83, 50, 89, 51, 29, 117, 96, 71, 53, 72, 71, 62, 54, 69, 81, 62, 50, 61, 46, 83, 61, 90, 61, 50, 74, 62, 43, 60, 58, 60, 70, 45, 81, 50, 62, 59, 68, 57, 61, 70, 66, 52, 71, 55, 78, 85, 56, 70, 71, 90, 72, 73, 99, 72, 47, 57, 46, 82, 50, 73, 60, 92, 69, 75, 55, 81, 74, 74, 63, 103, 75, 65, 50, 58, 57, 62, 82, 48, 42, 90, 59, 61, 64, 57, 56, 73, 102, 50, 81, 59, 43, 75, 72, 65, 51, 54, 52, 54, 88, 54, 72, 56, 44, 91, 69, 60, 57, 59, 81, 89, 44, 53, 66, 66, 63, 91, 85, 81, 65, 55, 59, 56, 60, 74, 56, 56, 82, 65, 78, 61, 60, 55, 66, 62, 100, 67, 66, 54, 59, 47, 51, 50, 76, 63, 60, 97, 59, 57, 85, 40, 70, 97, 70, 67, 136, 54, 73, 79, 52, 81, 48, 46, 62, 81, 53, 49, 82, 41, 58, 63, 68, 88, 69, 61, 61, 159, 117, 48, 56, 62, 60, 57, 66, 85, 53, 62, 93, 129, 67, 70, 98, 48, 65, 52, 75, 41, 102, 37, 69, 53, 49, 89, 57, 68, 70, 51, 46, 63, 83, 63, 37, 68, 84, 66, 65, 55, 53, 60, 76, 59, 91, 44, 39, 65, 63, 60, 56, 37, 60, 118, 70, 44, 42, 53, 62, 53, 90, 63, 64, 104, 52, 57, 62, 65, 60, 49, 91, 66, 93, 73, 56, 83, 70, 76, 66, 77, 70, 94, 67, 70, 62, 86, 99, 63, 53, 65, 86, 85, 48, 78, 102, 51, 77, 73, 85, 89, 74, 41, 54, 57, 81, 66, 60, 97, 58, 73, 54, 59, 68, 53, 51, 78, 63, 41, 97, 63, 86, 56, 55, 64, 48, 54, 114, 61, 96, 70, 60, 52, 80, 72, 43, 86, 49, 71, 55, 74, 50, 58, 63, 107, 49, 92, 62, 72, 55, 57, 64, 46, 70, 95, 65, 65, 50, 89, 55, 74, 68, 55, 65, 69, 70, 47, 51, 57, 65, 66, 86, 65, 82, 67, 70, 75, 79, 67, 78, 61, 48, 64, 81, 68, 56, 93, 51, 68, 57, 50, 79, 77, 65, 43, 85, 93, 76, 64, 67, 66, 56, 78, 77, 56, 51, 58, 82, 56, 64, 55, 65, 66, 83, 53, 60, 61, 68, 96, 81, 72, 79, 66, 71, 72, 49, 70, 58, 72, 86, 72, 51, 52, 64, 57, 52, 47, 74, 58, 78, 41, 62, 67, 61, 60, 77, 56, 71, 54, 53, 63, 58, 55, 53, 100, 44, 80, 82, 59, 77, 55, 75, 50, 59, 81, 40, 62, 48, 60, 47, 56, 56, 80, 71, 64, 87, 38, 48, 46, 56, 55, 52, 98, 68, 68, 65, 57, 75, 63, 47, 39, 63, 53, 67, 60, 83, 61, 82, 63, 77, 59, 48, 61, 51, 60, 83, 51, 113, 61, 79, 51, 68, 66, 98, 61, 63, 52, 102, 72, 49, 51, 74, 52, 67, 48, 75, 65, 60, 50, 78, 62, 58, 66, 77, 71, 75, 55, 92, 52, 73, 58, 61, 66, 69, 78, 55, 54, 75, 72, 71, 55, 69, 53, 54, 50, 68, 63, 61, 73, 53, 67, 85, 66, 48, 69, 49, 66, 70, 51, 70, 59, 40, 66, 78, 102, 68, 103, 63, 77, 43, 83, 74, 69, 81, 51, 63, 51, 59, 68, 75, 66, 58, 51, 73, 66, 65, 97, 77, 66, 74, 56, 68, 50, 76, 71, 53, 67, 58, 76, 82, 75, 63, 58, 96, 90, 83, 50, 129, 57, 37, 77, 47, 57, 63, 71, 61, 39, 69, 62, 55, 68, 48, 84, 47, 102, 64, 59, 79, 63, 50, 72, 77, 71, 71, 48, 64, 61, 64, 55, 64, 63, 60, 41, 63, 74, 43, 76, 75, 66, 70, 53, 65, 65, 81, 74, 89, 55, 64, 70, 64, 65, 71, 61, 44, 70, 41, 82, 65, 98, 90, 67, 59, 57, 54, 52, 61, 69, 46, 57, 73, 95, 62, 76, 51, 50, 66, 62, 46, 61, 76, 73, 77, 50, 61, 54, 70, 70, 76, 85, 66, 68, 88, 64, 48, 58, 57, 53, 58, 67, 47, 96, 88, 50, 45, 72, 60, 74, 66, 66, 66, 65, 77, 63, 78, 83, 59, 42, 89, 75, 62, 54, 62, 72, 92, 92, 78, 44, 52, 36, 55, 61, 51, 47, 65, 72, 63, 40, 73, 62, 61, 73, 68, 57, 88, 61, 49, 59, 53, 90, 43, 85, 79, 52, 65, 56, 60, 53, 57, 66, 43, 64, 63, 83, 88, 78, 70, 71, 55, 65, 60, 70, 65, 61, 56, 55, 114, 64, 63, 74, 72, 66, 53, 73, 69, 90, 55, 51, 63, 64, 83, 68, 40, 76, 75, 74, 52, 70, 56, 74, 72, 53, 60, 68, 68, 60, 102, 47, 64, 68, 80, 57, 63, 67, 72, 57, 85, 50, 57, 60, 75, 49, 67, 86, 56, 66, 53, 46, 88, 70, 62, 70, 58, 80, 50, 85, 66, 61, 51, 88, 62, 51, 64, 50, 60, 45, 53, 61, 93, 67, 60, 77, 59, 69, 60, 64, 49, 60, 55, 55, 67, 60, 62, 58, 74, 73, 63, 78, 61, 64, 94, 73, 102, 58, 55, 64, 77, 53, 52, 53, 91, 64, 65, 67, 54, 61, 52, 52, 73, 65, 58, 68, 86, 68, 60, 57, 52, 62, 60, 44, 86, 66, 73, 54, 69, 54, 77, 86, 64, 93, 60, 64, 62, 49, 72, 66, 59, 55, 94, 60, 68, 65, 78, 65, 65, 94, 59, 59, 67, 68, 63, 44, 58, 45, 70, 78, 58, 67, 47, 85, 96, 62, 67, 71, 69, 41, 70, 63, 96, 51, 70, 91, 80, 38, 58, 64, 88, 66, 56, 78, 78, 72, 46, 81, 53, 70, 61, 67, 65, 74, 67, 57, 65, 57, 55, 88, 42, 59, 102, 53, 96, 67, 77, 129, 82, 78, 56, 48, 65, 72, 76, 65, 71, 58, 64, 63, 55, 64, 76, 60, 56, 73, 65, 69, 55, 61, 58, 59, 67, 85, 67, 62, 62, 51, 71, 75, 73, 61, 72, 72, 81, 57, 81, 83, 60, 59, 70, 73, 70, 73, 62, 52, 55, 56, 64, 71, 59, 88, 119, 60, 63, 68, 65, 59, 54, 79, 79, 56, 55, 76, 99, 78, 60, 59, 108, 59, 77, 74, 75, 62, 59, 71, 54, 62, 73, 52, 60, 62, 68, 53, 55, 53, 74, 78, 74, 67, 63, 80, 62, 67, 80, 65, 48, 65, 66, 87, 65, 66, 63, 44, 76, 77, 90, 60, 66, 66, 60, 48, 64, 61, 54, 54, 60, 53, 215, 73, 74, 66, 85, 66, 60, 71, 76, 57, 69, 61, 63, 83, 54, 81, 90, 66, 64, 69, 79, 67, 81, 51, 139, 70, 69, 74, 55, 59, 64, 59, 61, 59, 54, 69, 53, 68, 65, 54, 73, 80, 65, 56, 73, 72, 66, 67, 46, 62, 75, 84, 62, 62, 63, 49, 57, 63, 58, 53, 87, 77, 64, 61, 89, 56, 43, 62, 55, 43, 79, 57, 54, 65, 44, 50, 63, 45, 77, 51, 55, 90, 74, 62, 76, 57, 64, 67, 44, 60, 49, 62, 82, 63, 69, 80, 76, 63, 63, 55, 58, 60, 51, 53, 89, 46, 52, 73, 47, 66, 65, 59, 69, 77, 69, 61, 60, 71, 57, 65, 51, 96, 59, 67, 51, 66, 58, 57, 71, 57, 58, 55, 95, 52, 72, 83, 58, 36, 56, 46, 65, 60, 81, 79, 69, 59, 68, 67, 61, 57, 64, 81, 69, 60, 66, 51, 56, 63, 65, 64, 103, 67, 56, 70, 62, 51, 76, 69, 72, 50, 60, 65, 73, 103, 73, 70, 46, 71, 49, 56, 62, 68, 53, 54, 55, 66, 68, 72, 49, 79, 71, 106, 46, 73, 91, 64, 68, 60, 46, 61, 65, 79, 68, 63, 74, 70, 57, 80, 71, 76, 62, 67, 66, 66, 136, 50, 70, 77, 67, 78, 82, 55, 114, 95, 71, 62, 61, 85, 73, 87, 61, 96, 60, 73, 68, 58, 72, 62, 68, 53, 68, 69, 106, 97, 66, 65, 71, 57, 65, 73, 48, 81, 60, 67, 65, 73, 56, 87, 57, 50, 61, 80, 88, 59, 81, 57, 64, 73, 59, 83, 79, 57, 73, 44, 64, 68, 50, 81, 47, 96, 80, 62, 47, 72, 59, 83, 83, 57, 55, 68, 61, 51, 70, 46, 62, 77, 65, 87, 57, 46, 69, 53, 71, 85, 54, 61, 65, 63, 67, 61, 78, 68, 68, 72, 57, 60, 100, 73, 58, 74, 49, 55, 55, 80, 65, 59, 58, 62, 61, 70, 55, 66, 52, 69, 65, 56, 77, 77, 85, 51, 80, 61, 60, 81, 55, 77, 56, 71, 87, 63, 56, 67, 56, 64, 63, 45, 69, 81, 72, 53, 55, 77, 60, 88, 82, 55, 63, 63, 76, 60, 72, 58, 88, 62, 68, 63, 62, 64, 80, 84, 64, 61, 55, 72, 75, 64, 87, 56, 69, 77, 60, 59, 67, 49, 68, 62, 53, 71, 77, 63, 51, 101, 63, 79, 60, 54, 79, 70, 50, 74, 80, 69, 46, 63, 65, 55, 63, 72, 54, 84, 75, 53, 52, 63, 69, 62, 116, 53, 69, 60, 84, 49, 73, 62, 99, 68, 82, 53, 64, 77, 73, 63, 86, 57, 74, 58, 84, 70, 55, 71, 72, 65, 105, 65, 63, 51, 45, 69, 59, 53, 62, 84, 73, 51, 51, 66, 84, 65, 66, 53, 65, 72, 61, 66, 59, 59, 59, 75, 72, 59, 53, 63, 65, 54, 66, 67, 64, 49, 80, 66, 75, 71, 70, 81, 80, 78, 90, 56, 67, 73, 62, 77, 64, 67, 78, 48, 56, 69, 63, 76, 74, 43, 57, 49, 52, 43, 62, 89, 71, 60, 94, 58, 59, 88, 113, 58, 62, 59, 59, 75, 64, 44, 68, 53, 72, 52, 74, 82, 70, 73, 89, 75, 87, 57, 61, 48, 64, 69, 67, 49, 71, 69, 105, 61, 73, 65, 63, 60, 64, 68, 70, 56, 64, 76, 98, 35, 73, 64, 55, 52, 71, 74, 56, 74, 58, 75, 47, 57, 53, 80, 55, 54, 60, 53, 78, 64, 65, 51, 51, 62, 65, 59, 59, 49, 73, 62, 71, 61, 91, 68, 77, 59, 60, 65, 142, 56, 84, 58, 59, 49, 67, 77, 67, 64, 85, 58, 67, 64, 68, 58, 71, 68, 66, 80, 73, 67, 75, 61, 63, 69, 65, 54, 98, 67, 66, 62, 71, 50, 62, 62, 85, 58, 73, 83, 63, 89, 65, 81, 48, 115, 70, 51, 59, 64, 62, 78, 98, 51, 80, 64, 50, 55, 57, 64, 84, 56, 68, 60, 76, 67, 64, 68, 66, 66, 61, 56, 60, 61, 59, 57, 102, 53, 65, 53, 67, 76, 82, 64, 113, 63, 67, 65, 74, 52, 79, 65, 68, 62, 75, 59, 67, 81, 76, 61, 70, 66, 52, 80, 62, 63, 73, 54, 66, 59, 49, 74, 65, 80, 63, 61, 77, 58, 56, 62, 76, 63, 65, 60, 64, 61, 82, 88, 59, 55, 57, 61, 91, 51, 52, 55, 74, 58, 57, 106, 64, 97, 54, 65, 68, 95, 58, 72, 56, 47, 85, 78, 58, 62, 65, 73, 70, 55, 59, 51, 59, 53, 49, 69, 92, 56, 83, 60, 78, 53, 63, 63, 55, 81, 71, 58, 71, 57, 63, 53, 57, 80, 54, 90, 57, 64, 53, 52, 48, 69, 56, 92, 65, 73, 63, 64, 67, 70, 69, 57, 51, 66, 42, 54, 66, 70, 66, 61, 72, 78, 72, 132, 86, 61, 76, 54, 63, 63, 76, 64, 56, 51, 54, 62, 57, 68, 71, 72, 61, 71, 65, 57, 67, 60, 62, 66, 63, 63, 55, 52, 72, 55, 71, 62, 71, 91, 61, 51, 71, 60, 64, 69, 53, 68, 59, 60, 81, 57, 79, 71, 68, 60, 54, 72, 64, 62, 74, 85, 70, 66, 51, 71, 48, 63, 66, 105, 71, 86, 61, 100, 62, 70, 76, 66, 69, 66, 52, 61, 57, 60, 51, 84, 67, 52, 66, 63, 95, 58, 51, 72, 64, 48, 75, 53, 53, 111, 50, 63, 65, 75, 60, 66, 65, 84, 58, 66, 66, 70, 99, 47, 55, 51, 57, 55, 71, 70, 61, 64, 54, 81, 57, 80, 57, 76, 71, 58, 92, 71, 64, 50, 59, 63, 76, 54, 72, 49, 58, 55, 64, 75, 70, 72, 82, 82, 56, 73, 85, 59, 65, 45, 64, 62, 70, 55, 65, 56, 66, 69, 70, 114, 70, 53, 70, 84, 82, 49, 71, 93, 74, 55, 65, 81, 48, 55, 55, 70, 71, 62, 58, 115, 59, 61, 64, 59, 55, 75, 67, 64, 56, 60, 58, 57, 59, 67, 56, 78, 44, 66, 76, 47, 40, 69, 89, 75, 67, 85, 88, 57, 99, 72, 63, 57, 56, 49, 62, 53, 68, 73, 77, 57, 78, 90, 78, 97, 80, 43, 53, 63, 70, 53, 57, 71, 91, 65, 66, 44, 63, 66, 55, 90, 67, 58, 70, 57, 55, 54, 72, 61, 53, 69, 72, 59, 59, 84, 60, 82, 76, 78, 76, 57, 68, 60, 63, 52, 72, 65, 60, 65, 68, 69, 75, 55, 60, 66, 71, 70, 60, 82, 69, 71, 53, 49, 79, 56, 56, 57, 66, 72, 60, 73, 77, 60, 70, 102, 66, 62, 72, 63, 45, 84, 83, 62, 72, 75, 65, 63, 64, 70, 57, 54, 57, 70, 54, 67, 50, 63, 55, 75, 59, 66, 58, 60, 58, 55, 68, 64, 63, 56, 55, 62, 55, 58, 99, 70, 47, 60, 58, 56, 57, 36, 65, 50, 71, 64, 65, 62, 70, 64, 56, 60, 68, 91, 59, 81, 67, 62, 61, 64, 69, 65, 88, 73, 75, 68, 55, 82, 57, 60, 62, 70, 63, 50, 100, 73, 90, 63, 56, 52, 70, 76, 58, 54, 58, 69, 61, 69, 50, 105, 74, 71, 80, 54, 80, 72, 69, 71, 75, 60, 71, 61, 55, 73, 68, 56, 63, 72, 61, 62, 56, 58, 76, 66, 63, 64, 60, 66, 52, 69, 52, 74, 53, 57, 65, 62, 57, 68, 42, 69, 77, 59, 68, 57, 62, 61, 51, 59, 70, 67, 69, 50, 94, 118, 59, 68, 56, 79, 53, 52, 71, 80, 72, 58, 73, 57, 59, 61, 60, 66, 80, 55, 79, 76, 76, 82, 64, 56, 66, 75, 64, 52, 72, 58, 61, 61, 55, 62, 58, 54, 53, 56, 54, 57, 64, 66, 56, 66, 125, 57, 71, 54, 47, 73, 73, 73, 75, 69, 58, 48, 59, 73, 47, 69, 70, 79, 64, 59, 73, 74, 54, 66, 61, 43, 74, 36, 57, 71, 55, 83, 99, 77, 68, 64, 76, 73, 57, 76, 54, 79, 61, 94, 87, 79, 79, 75, 59, 55, 79, 94, 59, 63, 57, 77, 75, 123, 70, 93, 90, 42, 49, 104, 59, 53, 89, 50, 82, 59, 78, 40, 51, 84, 43, 47, 63, 63, 55, 70, 65, 59, 70, 68, 75, 37, 64, 80, 55, 80, 48, 73, 84, 69, 64, 65, 97, 50, 48, 72, 75, 77, 62, 44, 49, 55, 100, 41, 65, 58, 62, 41, 63, 66, 63, 58, 59, 65, 65, 69, 52, 63, 70, 45, 69, 51, 65, 54, 45, 50, 59, 71, 56, 42, 42, 76, 62, 45, 58, 63, 47, 56, 76, 84, 55, 60, 75, 73, 43, 67, 101, 59, 51, 88, 56, 61, 68, 76, 54, 70, 67, 46, 40, 66, 55, 81, 95, 84, 70, 50, 65, 77, 71, 52, 73, 82, 68, 66, 96, 89, 62, 51, 80, 44, 66, 56, 47, 67, 46, 68, 72, 91, 51, 43, 68, 43, 71, 70, 53, 60, 81, 62, 73, 50, 66, 51, 65, 49, 83, 70, 69, 85, 69, 54, 67, 65, 63, 69, 51, 77, 76, 56, 54, 59, 56, 78, 90, 72, 59, 63, 51, 81, 67, 80, 79, 43, 94, 65, 76, 61, 64, 54, 80, 52, 58, 68, 83, 75, 59, 72, 95, 62, 78, 78, 70, 56, 79, 72, 62, 77, 74, 71, 66, 71, 70, 58, 50, 57, 67, 79, 75, 82, 64, 67, 63, 108, 86, 79, 67, 62, 76, 69, 51, 55, 66, 76, 71, 71, 59, 65, 72, 61, 59, 60, 75, 74, 62, 69, 64, 33, 109, 63, 61, 63, 62, 40, 69, 65, 55, 65, 47, 78, 71, 113, 40, 78, 96, 63, 53, 69, 93, 74, 90, 64, 66, 58, 68, 68, 54, 68, 65, 71, 61, 49, 44, 57, 65, 54, 69, 66, 57, 69, 76, 55, 78, 74, 64, 54, 56, 53, 65, 82, 63, 70, 72, 53, 151, 75, 57, 59, 59, 64, 48, 58, 79, 50, 62, 49, 69, 69, 60, 47, 76, 62, 38, 71, 72, 57, 51, 81, 49, 105, 56, 62, 56, 76, 63, 74, 65, 72, 53, 63, 77, 76, 65, 90, 88, 67, 70, 60, 44, 93, 66, 85, 80, 82, 59, 65, 57, 63, 53, 34, 50, 80, 74, 50, 83, 70, 63, 78, 41, 63, 75, 48, 67, 55, 64, 70, 66, 81, 62, 63, 46, 50, 82, 72, 64, 64, 66, 77, 81, 64, 81, 81, 60, 66, 78, 67, 72, 60, 48, 86, 79, 67, 56, 65, 58, 43, 74, 98, 42, 94, 63, 84, 60, 49, 122, 68, 72, 70, 79, 60, 77, 70, 48, 85, 65, 59, 61, 61, 57, 80, 90, 48, 87, 44, 47, 78, 52, 60, 77, 50, 72, 68, 87, 49, 74, 37, 69, 53, 53, 45, 58, 74, 50, 81, 73, 64, 63, 74, 59, 84, 62, 95, 67, 93, 73, 93, 69, 74, 48, 56, 50, 58, 77, 70, 60, 61, 62, 56, 59, 56, 53, 65, 41, 81, 108, 77, 58, 78, 59, 65, 62, 54, 53, 70, 76, 53, 91, 59, 55, 66, 61, 54, 60, 60, 69, 54, 72, 78, 67, 87, 53, 59, 58, 67, 67, 59, 70, 53, 53, 53, 62, 67, 63, 76, 56, 67, 92, 71, 63, 68, 77, 86, 55, 55, 71, 83, 85, 56, 55, 53, 84, 60, 60, 53, 65, 62, 53, 60, 94, 70, 74, 60, 46, 71, 67, 57, 72, 64, 69, 56, 58, 61, 44, 105, 64, 63, 65, 65, 66, 61, 38, 70, 67, 48, 55, 45, 70, 77, 46, 68, 58, 61, 60, 92, 46, 68, 79, 62, 41, 76, 69, 49, 59, 68, 56, 56, 53, 72, 64, 64, 78, 88, 69, 50, 63, 57, 65, 87, 63, 37, 83, 47, 82, 59, 75, 76, 76, 55, 78, 84, 84, 81, 56, 80, 71, 57, 69, 80, 75, 74, 107, 72, 58, 110, 57, 92, 70, 60, 64, 67, 64, 62, 68, 79, 58, 61, 69, 49, 84, 64, 55, 52, 51, 46, 60, 55, 71, 99, 48, 50, 63, 58, 117, 50, 49, 54, 73, 65, 62, 57, 76, 69, 54, 79, 77, 84, 46, 74, 74, 57, 57, 68, 55, 50, 68, 52, 42, 58, 75, 66, 51, 71, 75, 63, 71, 55, 50, 61, 80, 72, 72, 76, 52, 76, 79, 60, 53, 57, 50, 84, 66, 66, 81, 60, 48, 74, 79, 99, 53, 108, 66, 79, 54, 55, 74, 61, 68, 67, 70, 46, 65, 65, 68, 80, 62, 56, 61, 67, 87, 83, 67, 69, 55, 51, 49, 74, 56, 61, 83, 63, 71, 47, 64, 52, 50, 67, 71, 54, 68, 61, 57, 63, 66, 54, 72, 69, 66, 71, 62, 68, 76, 54, 54, 73, 60, 72, 46, 100, 63, 67, 50, 77, 83, 69, 70, 62, 52, 59, 62, 54, 74, 56, 53, 75, 64, 54, 60, 93, 58, 77, 75, 62, 36, 77, 47, 44, 61, 59, 62, 58, 58, 67, 69, 64, 80, 80, 69, 81, 78, 76, 67, 81, 62, 43, 77, 66, 74, 57, 67, 77, 70, 65, 68, 70, 87, 71, 57, 78, 67, 66, 70, 80, 68, 76, 63, 61, 66, 45, 54, 64, 80, 66, 86, 74, 62, 84, 51, 61, 57, 51, 66, 72, 70, 60, 49, 58, 50, 70, 58, 61, 57, 104, 31, 79, 48, 84, 95, 63, 44, 67, 78, 58, 74, 71, 65, 70, 67, 84, 64, 67, 46, 51, 63, 49, 63, 62, 74, 59, 75, 64, 83, 59, 66, 65, 74, 76, 57, 52, 84, 74, 65, 71, 75, 55, 103, 63, 57, 86, 79, 78, 45, 74, 64, 45, 88, 50, 57, 72, 58, 72, 53, 60, 105, 52, 54, 73, 62, 74, 58, 81, 44, 55, 65, 74, 76, 66, 54, 61, 93, 77, 78, 82, 42, 60, 59, 58, 70, 87, 43, 68, 65, 39, 69, 90, 76, 57, 81, 71, 56, 69, 74, 116, 76, 83, 75, 70, 71, 56, 51, 72, 90, 69, 75, 77, 81, 53, 70, 106, 73, 75, 71, 61, 78, 53, 49, 53, 56, 78, 60, 72, 50, 64, 57, 65, 74, 56, 60, 68, 56, 51, 61, 54, 60, 65, 111, 62, 61, 77, 102, 81, 51, 65, 67, 78, 74, 88, 73, 61, 74, 96, 69, 38, 52, 68, 93, 53, 59, 56, 86, 66, 68, 47, 58, 59, 57, 94, 76, 58, 103, 76, 72, 54, 85, 54, 94, 55, 40, 79, 48, 40, 45, 65, 85, 44, 75, 50, 46, 70, 65, 51, 52, 64, 63, 63, 47, 90, 59, 53, 73, 74, 85, 51, 52, 90, 100, 70, 54, 59, 49, 64, 65, 51, 95, 70, 52, 49, 51, 43, 58, 63, 77, 56, 47, 47, 72, 58, 48, 57, 65, 60, 55, 45, 65, 45, 59, 91, 54, 62, 85, 94, 87, 67, 55, 61, 92, 56, 51, 76, 55, 73, 47, 69, 64, 70, 56, 61, 54, 80, 65, 76, 58, 73, 54, 58, 65, 43, 62, 68, 71, 80, 74, 58, 69, 63, 78, 101, 48, 46, 57, 75, 53, 56, 62, 66, 81, 67, 65, 98, 77, 61, 60, 47, 74, 71, 118, 64, 63, 55, 68, 54, 80, 62, 48, 76, 67, 56, 73, 76, 66, 66, 52, 65, 68, 64, 85, 46, 48, 66, 85, 77, 39, 94, 67, 48, 72, 60, 40, 65, 60, 85, 66, 48, 52, 57, 71, 38, 87, 50, 42, 84, 60, 62, 66, 55, 48, 46, 52, 97, 68, 48, 74, 68, 65, 48, 42, 84, 69, 41, 77, 58, 54, 49, 58, 63, 59, 52, 60, 66, 64, 81, 71, 74, 101, 66, 75, 79, 54, 111, 52, 71, 53, 65, 77, 57, 67, 70, 42, 46, 47, 79, 67, 58, 68, 80, 52, 61, 82, 68, 58, 61, 59, 85, 51, 71, 79, 66, 66, 85, 78, 82, 53, 57, 80, 86, 64, 78, 41, 52, 54, 63, 57, 60, 77, 57, 86, 58, 55, 67, 57, 48, 73, 78, 78, 73, 94, 52, 59, 61, 75, 57, 48, 59, 61, 62, 100, 69, 61, 60, 72, 80, 50, 67, 52, 95, 66, 57, 69, 116, 74, 81, 84, 56, 61, 61, 55, 50, 129, 60, 58, 68, 97, 62, 80, 86, 63, 60, 51, 47, 101, 58, 81, 42, 59, 72, 59, 49, 65, 48, 58, 114, 59, 75, 73, 72, 59, 52, 108, 59, 64, 60, 61, 79, 41, 103, 58, 55, 70, 55, 60, 53, 56, 60, 63, 61, 65, 45, 60, 65, 61, 52, 63, 56, 47, 66, 55, 73, 70, 80, 55, 72, 84, 56, 74, 84, 65, 71, 52, 52, 53, 58, 70, 62, 50, 76, 61, 82, 74, 81, 89, 85, 50, 84, 45, 41, 67, 70, 48, 57, 56, 43, 65, 54, 42, 67, 56, 52, 79, 64, 51, 70, 70, 83, 52, 67, 50, 73, 79, 66, 68, 82, 46, 61, 58, 70, 58, 52, 72, 60, 62, 102, 54, 58, 82, 49, 58, 54, 68, 57, 64, 58, 73, 53, 49, 72, 66, 95, 51, 85, 75, 112, 63, 78, 71, 81, 72, 98, 67, 59, 53, 47, 60, 55, 60, 43, 40, 59, 50, 51, 76, 61, 86, 62, 74, 119, 50, 64, 47, 50, 55, 81, 70, 93, 124, 77, 83, 51, 77, 63, 63, 100, 53, 54, 70, 54, 95, 61, 64, 76, 63, 71, 88, 78, 54, 75, 65, 76, 71, 69, 64, 74, 95, 70, 64, 78, 72, 74, 81, 62, 74, 56, 64, 85, 54, 78, 53, 84, 53, 64, 65, 47, 67, 59, 41, 52, 61, 94, 47, 87, 55, 68, 60, 73, 47, 73, 63, 52, 80, 89, 50, 48, 75, 52, 87, 55, 61, 73, 70, 64, 74, 70, 65, 57, 75, 73, 57, 67, 77, 114, 49, 41, 60, 63, 86, 81, 39, 120, 77, 37, 45, 86, 57, 55, 66, 64, 60, 65, 81, 77, 83, 92, 70, 64, 56, 65, 66, 49, 102, 66, 100, 61, 75, 49, 71, 92, 82, 65, 68, 87, 47, 64, 61, 51, 63, 51, 84, 55, 50, 42, 55, 54, 62, 48, 62, 54, 58, 66, 64, 65, 53, 57, 71, 104, 70, 49, 55, 39, 63, 51, 57, 69, 63, 53, 49, 65, 62, 69, 74, 64, 51, 65, 81, 74, 68, 50, 56, 67, 78, 111, 74, 66, 70, 64, 73, 75, 54, 89, 56, 68, 65, 71, 53, 65, 43, 75, 66, 56, 124, 71, 56, 78, 60, 59, 72, 72, 107, 64, 63, 46, 67, 57, 91, 53, 54, 66, 78, 52, 51, 54, 71, 79, 58, 58, 69, 58, 69, 66, 70, 55, 52, 52, 55, 67, 58, 60, 61, 48, 69, 45, 120, 59, 73, 72, 52, 48, 60, 56, 52, 58, 62, 60, 62, 96, 58, 95, 52, 55, 101, 51, 80, 40, 59, 81, 61, 74, 73, 56, 89, 65, 84, 55, 72, 59, 92, 82, 62, 50, 56, 86, 44, 54, 66, 46, 55, 61, 49, 70, 63, 59, 34, 61, 46, 55, 59, 73, 69, 62, 89, 76, 63, 112, 66, 105, 44, 60, 67, 79, 85, 71, 79, 63, 64, 61, 53, 60, 49, 78, 108, 60, 66, 85, 66, 39, 75, 45, 71, 57, 53, 78, 60, 73, 55, 58, 63, 63, 67, 68, 70, 75, 55, 63, 83, 69, 79, 48, 67, 59, 49, 79, 71, 65, 60, 49, 59, 59, 43, 51, 77, 73, 52, 74, 66, 57, 67, 83, 80, 51, 66, 54, 64, 65, 65, 57, 43, 53, 72, 66, 87, 42, 87, 66, 81, 67, 36, 41, 48, 128, 102, 50, 64, 122, 78, 67, 56, 59, 60, 66, 96, 56, 111, 99, 63, 62, 65, 73, 63, 96, 45, 47, 54, 79, 61, 90, 88, 72, 64, 73, 66, 75, 50, 70, 64, 65, 56, 64, 64, 43, 78, 62, 64, 70, 61, 53, 68, 54, 59, 84, 67, 79, 113, 58, 83, 66, 52, 64, 58, 76, 64, 53, 53, 86, 73, 58, 79, 68, 53, 77, 54, 62, 62, 73, 81, 68, 63, 61, 74, 80, 60, 50, 64, 101, 68, 100, 53, 41, 70, 76, 77, 77, 92, 63, 90, 55, 51, 59, 80, 69, 83, 66, 71, 57, 54, 60, 93, 50, 56, 56, 48, 65, 70, 74, 70, 63, 43, 76, 57, 82, 63, 65, 68, 79, 66, 50, 60, 67, 68, 59, 65, 60, 76, 61, 59, 68, 65, 52, 113, 82, 64, 71, 55, 88, 75, 77, 63, 35, 73, 59, 47, 51, 78, 73, 59, 63, 63, 102, 74, 67, 53, 51, 70, 67, 53, 63, 71, 71, 81, 62, 59, 71, 124, 72, 87, 80, 62, 62, 61, 55, 85, 72, 73, 81, 50, 55, 66, 65, 65, 59, 96, 41, 52, 111, 60, 70, 63, 67, 65, 59, 86, 51, 65, 53, 58, 63, 55, 67, 66, 56, 39, 54, 53, 52, 76, 73, 58, 46, 96, 80, 66, 49, 59, 68, 82, 45, 57, 58, 72, 72, 74, 86, 58, 81, 64, 57, 75, 59, 67, 61, 68, 68, 63, 61, 93, 48, 56, 67, 80, 70, 81, 55, 53, 50, 86, 74, 118, 48, 72, 45, 59, 64, 69, 45, 79, 54, 74, 46, 58, 58, 80, 64, 82, 54, 93, 72, 63, 85, 64, 59, 51, 51, 54, 62, 75, 52, 60, 52, 61, 48, 59, 53, 71, 64, 65, 87, 52, 65, 58, 64, 63, 73, 53, 54, 64, 96, 56, 74, 57, 55, 55, 69, 68, 79, 64, 50, 67, 61, 75, 61, 66, 70, 61, 67, 57, 71, 65, 95, 51, 136, 63, 58, 79, 66, 60, 64, 58, 60, 102, 61, 55, 53, 62, 62, 44, 65, 53, 68, 73, 67, 74, 56, 95, 53, 89, 65, 44, 66, 61, 46, 60, 58, 75, 60, 58, 54, 47, 53, 67, 56, 70, 63, 76, 54, 78, 59, 61, 76, 43, 74, 73, 65, 78, 53, 66, 63, 44, 87, 62, 68, 79, 69, 59, 86, 68, 71, 64, 75, 65, 79, 49, 71, 92, 65, 44, 62, 50, 67, 61, 53, 56, 87, 69, 53, 53, 77, 66, 51, 75, 57, 86, 82, 76, 95, 92, 55, 66, 55, 65, 85, 69, 82, 90, 81, 60, 83, 58, 73, 102, 66, 48, 98, 63, 33, 66, 60, 71, 61, 69, 71, 43, 63, 82, 61, 56, 67, 55, 60, 57, 66, 68, 63, 53, 58, 64, 65, 70, 81, 47, 83, 75, 64, 58, 50, 52, 60, 72, 97, 56, 65, 108, 88, 67, 64, 54, 57, 71, 37, 56, 55, 65, 67, 72, 66, 141, 64, 94, 60, 70, 58, 65, 103, 61, 54, 80, 71, 63, 59, 42, 75, 79, 79, 69, 68, 35, 63, 58, 48, 56, 81, 61, 54, 58, 60, 71, 86, 78, 62, 56, 70, 54, 71, 49, 55, 50, 68, 57, 72, 48, 64, 45, 53, 71, 49, 67, 69, 60, 66, 72, 67, 75, 68, 51, 66, 54, 69, 82, 51, 74, 56, 63, 65, 47, 107, 62, 72, 57, 67, 86, 68, 77, 65, 46, 71, 94, 54, 58, 65, 64, 61, 64, 72, 51, 78, 45, 58, 100, 68, 64, 84, 53, 54, 53, 53, 65, 83, 71, 46, 65, 67, 63, 88, 69, 48, 67, 89, 62, 48, 72, 54, 60, 70, 59, 66, 65, 56, 83, 67, 68, 56, 73, 55, 63, 66, 70, 66, 60, 62, 70, 56, 68, 59, 74, 48, 44, 59, 69, 77, 69, 77, 68, 52, 95, 53, 65, 80, 54, 80, 64, 64, 46, 47, 74, 66, 58, 68, 60, 71, 41, 57, 62, 50, 103, 83, 74, 78, 44, 59, 95, 66, 61, 65, 53, 94, 81, 58, 38, 60, 101, 87, 74, 70, 70, 56, 58, 92, 58, 55, 76, 95, 66, 51, 66, 91, 75, 74, 81, 104, 54, 56, 50, 61, 43, 77, 97, 51, 58, 62, 58, 52, 55, 40, 63, 64, 79, 76, 54, 56, 60, 56, 77, 59, 54, 78, 58, 56, 45, 85, 81, 49, 79, 54, 69, 60, 53, 63, 70, 58, 58, 63, 65, 72, 82, 76, 63, 73, 71, 93, 75, 61, 63, 57, 72, 63, 73, 54, 63, 54, 88, 54, 46, 55, 76, 53, 65, 108, 61, 71, 71, 84, 101, 73, 56, 58, 110, 77, 67, 84, 71, 73, 56, 112, 54, 61, 56, 70, 61, 107, 69, 57, 57, 70, 37, 63, 65, 90, 57, 62, 51, 72, 76, 84, 85, 78, 72, 71, 54, 62, 64, 74, 95, 80, 84, 66, 77, 54, 51, 84, 50, 76, 65, 131, 61, 64, 61, 75, 67, 56, 78, 37, 64, 96, 72, 78, 68, 63, 70, 67, 66, 81, 56, 47, 69, 71, 87, 78, 76, 64, 64, 66, 93, 63, 56, 67, 59, 80, 64, 80, 60, 86, 74, 56, 76, 62, 61, 61, 71, 81, 35, 57, 61, 69, 59, 45, 66, 60, 50, 60, 80, 60, 51, 47, 56, 73, 64, 66, 49, 56, 65, 48, 49, 60, 51, 55, 63, 74, 60, 63, 65, 67, 57, 58, 57, 72, 92, 92, 64, 65, 37, 73, 55, 67, 59, 61, 46, 69, 65, 70, 55, 59, 82, 95, 44, 42, 58, 74, 46, 79, 72, 58, 65, 75, 84, 59, 66, 61, 84, 56, 78, 54, 61, 86, 97, 53, 55, 88, 59, 63, 77, 58, 80, 58, 80, 91, 68, 82, 56, 67, 69, 67, 60, 57, 68, 77, 60, 65, 61, 54, 66, 57, 73, 76, 71, 55, 70, 61, 74, 65, 75, 72, 48, 57, 62, 54, 37, 60, 54, 56, 91, 52, 65, 66, 65, 56, 62, 69, 84, 48, 63, 85, 76, 62, 57, 52, 50, 88, 63, 55, 84, 69, 35, 101, 57, 71, 58, 83, 71, 49, 63, 57, 48, 74, 66, 62, 70, 78, 48, 59, 83, 40, 64, 59, 76, 70, 54, 49, 59, 53, 66, 89, 63, 58, 56, 112, 65, 93, 54, 67, 102, 76, 78, 80, 81, 69, 104, 63, 40, 69, 53, 49, 58, 55, 66, 49, 60, 89, 66, 62, 104, 54, 53, 92, 66, 70, 85, 50, 55, 77, 82, 83, 62, 70, 69, 63, 54, 73, 73, 79, 45, 58, 69, 59, 66, 66, 62, 63, 67, 66, 71, 58, 52, 70, 87, 83, 90, 69, 60, 51, 72, 60, 79, 57, 68, 62, 72, 60, 67, 63, 64, 42, 69, 63, 70, 46, 50, 70, 81, 94, 61, 49, 58, 60, 56, 79, 74, 79, 65, 61, 103, 91, 61, 105, 75, 78, 64, 86, 76, 97, 71, 80, 97, 69, 65, 55, 68, 62, 46, 57, 70, 53, 57, 65, 68, 50, 79, 65, 78, 66, 49, 42, 67, 67, 49, 52, 77, 77, 55, 65, 66, 72, 60, 108, 52, 66, 56, 114, 73, 72, 47, 40, 59, 61, 55, 81, 66, 46, 64, 27, 65, 64, 83, 41, 80, 48, 76, 39, 79, 61, 152, 65, 59, 63, 73, 78, 71, 55, 79, 54, 66, 68, 56, 65, 68, 100, 60, 52, 80, 65, 59, 78, 43, 79, 49, 49, 61, 70, 52, 72, 80, 57, 84, 52, 63, 64, 48, 75, 47, 65, 45, 63, 82, 78, 87, 54, 69, 71, 70, 54, 68, 60, 75, 48, 55, 92, 93, 65, 71, 77, 48, 99, 52, 56, 61, 78, 66, 86, 71, 47, 46, 81, 79, 76, 58, 80, 49, 82, 56, 64, 57, 64, 50, 75, 68, 78, 55, 81, 67, 82, 63, 74, 71, 76, 72, 54, 94, 74, 85, 54, 70, 79, 55, 51, 68, 64, 76, 46, 48, 76, 59, 59, 64, 91, 84, 65, 67, 62, 85, 61, 74, 70, 60, 67, 81, 74, 54, 68, 54, 63, 77, 63, 75, 76, 113, 62, 48, 62, 58, 64, 77, 62, 62, 66, 51, 65, 83, 74, 72, 73, 56, 50, 90, 64, 53, 51, 62, 60, 71, 68, 67, 124, 71, 76, 54, 82, 76, 69, 65, 59, 92, 68, 75, 73, 83, 70, 53, 49, 53, 73, 70, 68, 99, 63, 59, 62, 86, 57, 66, 62, 53, 56, 77, 55, 51, 66, 75, 78, 53, 78, 78, 97, 70, 59, 84, 78, 56, 59, 60, 71, 69, 71, 92, 54, 64, 75, 60, 66, 50, 56, 57, 78, 50, 70, 51, 56, 77, 75, 59, 77, 47, 50, 68, 59, 80, 93, 59, 75, 79, 72, 56, 70, 47, 65, 65, 65, 66, 79, 73, 62, 85, 51, 64, 66, 82, 61, 39, 64, 72, 79, 69, 66, 58, 56, 60, 66, 69, 62, 47, 57, 83, 45, 66, 105, 51, 54, 61, 67, 74, 89, 50, 109, 73, 51, 101, 72, 136, 66, 78, 67, 52, 95, 83, 86, 50, 56, 60, 87, 63, 61, 70, 60, 70, 91, 66, 70, 45, 59, 76, 61, 77, 64, 69, 71, 66, 83, 77, 70, 63, 101, 77, 66, 79, 75, 74, 74, 93, 64, 68, 69, 54, 82, 65, 44, 54, 61, 61, 62, 63, 61, 57, 61, 84, 46, 63, 71, 59, 45, 70, 58, 75, 63, 67, 44, 42, 68, 72, 67, 47, 57, 71, 42, 71, 109, 78, 68, 57, 76, 56, 80, 69, 62, 51, 98, 50, 70, 81, 85, 53, 55, 60, 76, 67, 68, 58, 93, 72, 51, 84, 43, 74, 67, 84, 66, 62, 55, 76, 59, 62, 75, 79, 78, 75, 71, 102, 61, 71, 80, 52, 98, 95, 48, 50, 77, 63, 87, 60, 77, 56, 68, 40, 51, 67, 69, 60, 67, 78, 77, 69, 80, 72, 55, 51, 70, 51, 56, 61, 63, 64, 55, 74, 98, 70, 76, 68, 61, 80, 86, 64, 82, 71, 59, 85, 75, 51, 73, 61, 50, 52, 75, 76, 61, 63, 49, 52, 58, 63, 64, 58, 66, 85, 74, 72, 78, 79, 71, 93, 59, 66, 73, 78, 59, 41, 69, 60, 76, 48, 68, 49, 49, 51, 57, 64, 54, 76, 71, 57, 46, 74, 55, 83, 83, 72, 55, 64, 83, 95, 52, 55, 114, 67, 86, 50, 65, 70, 57, 63, 83, 64, 67, 48, 158, 77, 53, 72, 87, 71, 52, 64, 64, 52, 74, 60, 69, 68, 64, 54, 51, 56, 67, 48, 60, 61, 72, 76, 69, 56, 64, 74, 47, 84, 55, 84, 62, 64, 67, 63, 87, 54, 82, 77, 75, 53, 55, 71, 63, 44, 50, 50, 58, 51, 70, 63, 64, 56, 59, 64, 61, 58, 64, 76, 27, 71, 52, 60, 71, 60, 69, 71, 71, 70, 52, 74, 48, 86, 50, 106, 70, 57, 77, 70, 53, 63, 93, 59, 100, 63, 68, 58, 81, 46, 58, 77, 69, 73, 75, 52, 69, 75, 59, 98, 71, 98, 69, 60, 62, 112, 72, 67, 64, 60, 59, 60, 56, 46, 87, 50, 54, 63, 76, 78, 73, 75, 88, 45, 81, 79, 47, 62, 58, 71, 71, 55, 60, 100, 73, 56, 54, 70, 62, 64, 76, 64, 36, 66, 55, 46, 74, 79, 59, 55, 56, 64, 42, 53, 74, 66, 71, 59, 61, 62, 69, 75, 47, 74, 77, 62, 68, 68, 92, 81, 70, 83, 82, 62, 48, 56, 70, 64, 52, 65, 75, 59, 55, 68, 64, 58, 55, 101, 55, 70, 65, 60, 60, 65, 88, 77, 68, 102, 56, 58, 100, 80, 48, 68, 61, 71, 56, 55, 69, 67, 70, 67, 73, 86, 85, 70, 46, 81, 60, 48, 68, 53, 62, 70, 69, 63, 65, 77, 74, 58, 57, 63, 88, 65, 52, 57, 74, 99, 71, 59, 53, 39, 64, 73, 77, 47, 69, 89, 59, 68, 73, 85, 90, 57, 65, 89, 55, 60, 86, 52, 52, 64, 103, 66, 55, 65, 71, 67, 59, 41, 60, 76, 72, 53, 90, 67, 53, 68, 99, 55, 83, 89, 59, 42, 64, 67, 53, 54, 76, 96, 67, 72, 60, 66, 64, 48, 60, 56, 60, 43, 53, 55, 70, 75, 62, 52, 67, 46, 57, 38, 61, 48, 59, 61, 63, 54, 57, 44, 58, 44, 60, 96, 69, 56, 60, 80, 50, 54, 64, 74, 45, 112, 88, 104, 69, 72, 78, 75, 52, 83, 43, 66, 60, 62, 60, 65, 91, 53, 75, 61, 58, 65, 75, 72, 34, 62, 58, 41, 62, 37, 74, 59, 52, 60, 54, 73, 73, 61, 54, 66, 51, 44, 79, 46, 55, 52, 80, 76, 60, 49, 62, 58, 70, 81, 67, 51, 74, 75, 67, 58, 66, 61, 48, 72, 48, 57, 69, 100, 70, 39, 71, 50, 90, 52, 60, 71, 51, 70, 55, 66, 57, 46, 67, 70, 60, 61, 66, 56, 60, 44, 71, 76, 54, 61, 70, 64, 88, 36, 68, 82, 62, 84, 64, 55, 82, 63, 49, 34, 69, 86, 65, 60, 50, 50, 69, 53, 57, 59, 70, 65, 47, 94, 67, 85, 62, 83, 69, 75, 47, 58, 62, 52, 76, 84, 61, 69, 66, 79, 64, 76, 62, 103, 85, 49, 46, 169, 78, 52, 47, 100, 83, 45, 76, 65, 51, 53, 57, 64, 54, 79, 52, 83, 57, 87, 66, 63, 55, 65, 81, 42, 61, 57, 53, 72, 77, 68, 54, 52, 53, 71, 72, 61, 48, 95, 46, 55, 80, 60, 62, 72, 63, 57, 66, 99, 65, 73, 67, 59, 72, 69, 85, 64, 61, 55, 60, 56, 42, 64, 77, 57, 75, 61, 51, 58, 57, 49, 68, 60, 59, 70, 49, 60, 104, 79, 65, 67, 60, 78, 82, 70, 71, 103, 64, 55, 71, 58, 47, 36, 52, 60, 66, 86, 58, 62, 68, 57, 59, 73, 73, 57, 50, 65, 65, 66, 65, 52, 67, 53, 53, 59, 57, 80, 86, 83, 87, 51, 55, 49, 57, 89, 60, 41, 47, 61, 57, 85, 67, 59, 57, 63, 52, 82, 52, 89, 86, 73, 49, 59, 50, 51, 76, 95, 58, 58, 45, 77, 52, 65, 52, 102, 45, 74, 60, 57, 58, 70, 73, 71, 67, 70, 53, 76, 61, 64, 53, 46, 61, 92, 54, 78, 71, 82, 69, 56, 103, 59, 48, 73, 64, 49, 63, 69, 62, 63, 60, 64, 61, 60, 82, 61, 49, 55, 67, 56, 53, 52, 49, 56, 60, 81, 58, 62, 59, 52, 57, 68, 70, 76, 58, 69, 65, 93, 88, 76, 73, 56, 49, 62, 85, 63, 58, 68, 67, 61, 52, 65, 81, 48, 63, 46, 39, 59, 55, 63, 70, 60, 57, 46, 116, 57, 76, 50, 81, 70, 67, 92, 63, 77, 64, 40, 59, 71, 46, 84, 72, 63, 106, 64, 69, 55, 83, 54, 51, 62, 65, 86, 62, 42, 70, 112, 59, 46, 79, 86, 53, 43, 67, 49, 65, 79, 48, 59, 56, 60, 69, 62, 72, 58, 49, 69, 74, 74, 53, 61, 57, 64, 74, 100, 66, 65, 70, 58, 88, 61, 54, 68, 62, 56, 58, 78, 70, 82, 54, 59, 83, 88, 60, 73, 72, 88, 56, 73, 47, 60, 62, 73, 65, 80, 66, 69, 70, 64, 84, 59, 58, 83, 48, 54, 106, 69, 110, 61, 85, 65, 57, 68, 71, 71, 63, 49, 56, 46, 58, 63, 75, 62, 74, 77, 80, 82, 57, 60, 61, 40, 85, 55, 60, 78, 73, 63, 68, 84, 63, 74, 62, 77, 64, 52, 47, 61, 77, 54, 85, 37, 57, 91, 66, 96, 64, 49, 91, 54, 64, 54, 40, 61, 81, 47, 79, 71, 32, 66, 71, 57, 69, 98, 69, 59, 43, 60, 75, 50, 63, 85, 76, 62, 67, 51, 73, 118, 73, 60, 83, 55, 60, 61, 75, 84, 60, 79, 103, 65, 53, 62, 60, 54, 75, 86, 96, 69, 60, 59, 78, 96, 68, 65, 60, 54, 68, 62, 87, 55, 73, 49, 48, 63, 69, 89, 49, 51, 77, 51, 69, 53, 79, 78, 53, 91, 66, 80, 56, 70, 46, 47, 56, 65, 56, 76, 65, 60, 53, 70, 52, 56, 51, 105, 68, 46, 70, 57, 58, 66, 87, 73, 58, 63, 44, 99, 56, 50, 67, 63, 48, 66, 67, 80, 57, 47, 46, 60, 76, 55, 78, 101, 65, 56, 67, 68, 53, 58, 69, 56, 54, 83, 97, 56, 74, 79, 58, 94, 68, 76, 72, 55, 47, 81, 55, 94, 85, 66, 74, 49, 69, 50, 61, 72, 53, 73, 53, 87, 61, 73, 53, 71, 60, 73, 67, 53, 69, 77, 111, 74, 60, 65, 66, 71, 65, 65, 68, 38, 53, 53, 92, 57, 53, 56, 72, 64, 59, 67, 71, 61, 81, 49, 61, 84, 56, 51, 99, 35, 50, 137, 68, 75, 39, 48, 64, 57, 55, 44, 85, 60, 82, 81, 45, 71, 52, 71, 55, 80, 59, 51, 61, 63, 61, 56, 80, 63, 48, 62, 47, 106, 92, 50, 87, 51, 65, 66, 50, 86, 60, 74, 87, 57, 55, 55, 60, 56, 66, 60, 61, 92, 82, 66, 43, 71, 56, 69, 80, 53, 49, 54, 60, 54, 55, 90, 59, 59, 52, 102, 59, 65, 62, 63, 79, 67, 113, 120, 49, 60, 87, 60, 51, 64, 46, 57, 71, 57, 70, 75, 61, 88, 76, 75, 78, 61, 58, 74, 57, 72, 82, 49, 55, 62, 64, 59, 57, 84, 65, 60, 56, 71, 62, 45, 72, 56, 57, 62, 59, 87, 60, 78, 66, 44, 61, 67, 53, 66, 60, 55, 66, 50, 59, 72, 41, 88, 70, 69, 73, 88, 69, 69, 47, 66, 63, 59, 67, 56, 63, 49, 65, 43, 61, 59, 72, 100, 71, 48, 69, 69, 68, 63, 54, 73, 60, 57, 56, 77, 70, 65, 53, 59, 101, 61, 51, 97, 74, 80, 61, 69, 68, 81, 57, 54, 61, 88, 78, 83, 70, 58, 94, 49, 73, 47, 62, 50, 80, 74, 68, 67, 62, 108, 69, 55, 62, 72, 59, 61, 66, 61, 80, 59, 69, 56, 62, 76, 86, 77, 94, 82, 66, 61, 76, 59, 50, 67, 59, 74, 68, 68, 83, 59, 69, 61, 66, 65, 80, 74, 61, 56, 125, 89, 56, 74, 70, 73, 52, 49, 43, 62, 60, 72, 50, 70, 39, 51, 59, 53, 95, 73, 48, 77, 63, 89, 65, 72, 68, 82, 54, 75, 48, 48, 57, 64, 64, 65, 63, 43, 87, 53, 53, 61, 54, 55, 63, 79, 104, 94, 100, 42, 62, 71, 86, 47, 59, 76, 113, 75, 61, 49, 90, 51, 44, 89, 61, 60, 74, 61, 50, 74, 66, 48, 70, 66, 47, 55, 55, 110, 53, 54, 48, 59, 35, 72, 80, 66, 59, 132, 60, 61, 44, 64, 77, 49, 70, 54, 61, 62, 40, 60, 91, 55, 59, 77, 64, 57, 76, 52, 63, 101, 58, 64, 65, 90, 66, 63, 58, 50, 74, 58, 60, 56, 78, 78, 83, 61, 52, 69, 67, 51, 70, 69, 80, 66, 63, 63, 57, 98, 73, 79, 71, 60, 75, 57, 82, 47, 41, 75, 53, 62, 86, 64, 69, 54, 75, 70, 74, 96, 71, 58, 76, 55, 65, 87, 50, 65, 48, 70, 56, 71, 56, 109, 64, 62, 70, 70, 60, 57, 57, 57, 55, 49, 47, 69, 67, 51, 58, 71, 64, 60, 54, 57, 66, 87, 75, 62, 77, 45, 48, 59, 63, 90, 80, 54, 55, 98, 49, 59, 45, 66, 76, 62, 52, 67, 71, 54, 90, 65, 68, 47, 92, 103, 72, 73, 75, 56, 59, 65, 65, 71, 84, 64, 43, 52, 61, 104, 39, 69, 78, 94, 51, 49, 64, 65, 52, 46, 60, 84, 50, 58, 53, 54, 58, 55, 69, 65, 58, 95, 68, 38, 44, 57, 64, 103, 54, 107, 37, 81, 55, 53, 58, 78, 52, 63, 71, 69, 56, 89, 57, 63, 65, 98, 55, 70, 87, 83, 65, 54, 79, 56, 130, 57, 68, 67, 56, 59, 65, 50, 41, 74, 86, 72, 62, 57, 106, 71, 58, 57, 65, 46, 63, 69, 95, 101, 52, 80, 57, 51, 81, 52, 64, 90, 63, 70, 60, 88, 44, 47, 76, 57, 60, 68, 72, 76, 62, 80, 58, 68, 59, 50, 62, 64, 34, 50, 60, 52, 54, 53, 86, 33, 58, 49, 82, 76, 72, 62, 58, 91, 75, 47, 50, 51, 67, 84, 61, 53, 61, 75, 44, 42, 86, 60, 53, 51, 59, 74, 78, 63, 53, 59, 101, 62, 56, 52, 63, 56, 73, 64, 60, 81, 68, 75, 72, 48, 84, 70, 51, 94, 58, 64, 69, 54, 46, 52, 97, 56, 67, 65, 74, 54, 88, 50, 53, 84, 92, 67, 71, 62, 47, 57, 42, 46, 28, 115, 53, 57, 50, 67, 62, 56, 56, 57, 54, 54, 86, 54, 64, 49, 91, 69, 61, 59, 83, 53, 62, 59, 59, 45, 63, 58, 75, 73, 54, 77, 52, 64, 61, 79, 51, 63, 60, 58, 65, 69, 97, 105, 80, 63, 61, 58, 43, 70, 45, 59, 79, 55, 58, 60, 69, 58, 60, 61, 51, 67, 54, 52, 58, 65, 50, 54, 69, 62, 63, 60, 58, 56, 62, 55, 65, 67, 63, 70, 54, 51, 76, 99, 83, 103, 95, 60, 58, 67, 113, 37, 59, 65, 72, 55, 50, 86, 72, 88, 68, 77, 51, 78, 40, 63, 48, 66, 78, 65, 46, 94, 61, 50, 57, 37, 63, 68, 70, 44, 61, 54, 67, 80, 47, 57, 61, 70, 71, 81, 81, 42, 77, 49, 59, 64, 55, 70, 71, 70, 51, 74, 58, 79, 70, 100, 121, 59, 77, 61, 57, 60, 64, 75, 104, 64, 99, 66, 69, 46, 68, 79, 64, 77, 67, 70, 72, 80, 71, 61, 65, 61, 51, 83, 61, 59, 60, 51, 80, 49, 75, 43, 76, 64, 69, 90, 56, 64, 54, 78, 59, 49, 86, 92, 65, 75, 62, 67, 61, 66, 66, 61, 34, 75, 49, 59, 63, 54, 52, 60, 80, 84, 65, 84, 73, 66, 68, 56, 60, 114, 52, 63, 62, 75, 64, 92, 93, 50, 49, 65, 55, 79, 72, 54, 63, 73, 42, 85, 39, 69, 82, 62, 99, 54, 80, 89, 58, 61, 49, 50, 66, 84, 55, 67, 76, 88, 72, 59, 77, 74, 79, 54, 66, 77, 70, 91, 49, 76, 73, 79, 62, 82, 67, 62, 75, 68, 64, 99, 50, 114, 63, 91, 49, 66, 84, 49, 85, 57, 59, 60, 45, 46, 87, 61, 66, 37, 50, 81, 61, 59, 65, 67, 57, 61, 55, 84, 65, 50, 48, 58, 89, 83, 67, 62, 68, 76, 55, 55, 75, 67, 77, 102, 65, 93, 65, 62, 68, 93, 70, 46, 65, 69, 70, 80, 44, 66, 68, 54, 43, 65, 48, 82, 65, 77, 80, 51, 72, 45, 67, 82, 95, 50, 84, 57, 73, 55, 100, 78, 109, 52, 74, 70, 63, 69, 58, 94, 59, 43, 75, 53, 58, 78, 70, 57, 70, 44, 77, 63, 63, 74, 75, 66, 58, 61, 61, 68, 59, 48, 61, 73, 67, 77, 69, 96, 65, 67, 41, 79, 58, 40, 76, 70, 64, 70, 99, 81, 62, 60, 125, 55, 46, 53, 57, 42, 52, 63, 63, 76, 53, 56, 56, 63, 69, 66, 49, 50, 80, 107, 62, 59, 67, 67, 53, 97, 62, 58, 67, 67, 54, 86, 61, 60, 67, 67, 60, 85, 72, 53, 61, 85, 46, 76, 99, 59, 67, 69, 71, 57, 47, 97, 75, 68, 46, 50, 50, 65, 56, 84, 64, 45, 53, 66, 46, 59, 57, 79, 61, 63, 42, 74, 64, 67, 60, 78, 59, 52, 42, 53, 98, 67, 111, 57, 67, 58, 48, 61, 85, 55, 83, 64, 59, 69, 54, 63, 48, 86, 54, 63, 94, 69, 55, 56, 75, 46, 75, 79, 56, 66, 66, 129, 48, 46, 62, 66, 47, 68, 76, 77, 75, 72, 67, 52, 74, 86, 71, 165, 71, 120, 75, 68, 65, 68, 53, 90, 97, 64, 103, 79, 51, 52, 49, 69, 57, 56, 53, 86, 49, 62, 60, 45, 61, 59, 63, 57, 69, 49, 52, 63, 61, 55, 82, 65, 58, 61, 95, 81, 53, 76, 42, 134, 73, 51, 73, 53, 60, 57, 64, 61, 68, 64, 56, 64, 64, 63, 72, 75, 68, 79, 47, 75, 41, 57, 77, 75, 46, 41, 69, 60, 75, 86, 45, 65, 46, 56, 88, 71, 52, 75, 64, 49, 61, 40, 72, 76, 64, 64, 55, 90, 67, 107, 50, 68, 77, 79, 67, 52, 65, 60, 51, 62, 33, 57, 72, 94, 44, 71, 65, 82, 55, 71, 72, 82, 49, 72, 73, 71, 66, 71, 46, 60, 78, 53, 72, 113, 54, 59, 59, 75, 49, 66, 55, 68, 48, 58, 61, 47, 75, 59, 93, 56, 76, 64, 68, 56, 59, 87, 126, 79, 53, 79, 66, 79, 61, 59, 64, 68, 76, 40, 67, 69, 73, 50, 79, 102, 48, 119, 68, 61, 91, 64, 55, 60, 80, 59, 66, 58, 69, 86, 66, 53, 80, 80, 86, 32, 79, 67, 53, 51, 133, 54, 65, 52, 72, 56, 60, 82, 54, 79, 70, 77, 53, 59, 63, 65, 107, 57, 72, 49, 50, 94, 60, 64, 70, 53, 157, 56, 41, 71, 75, 80, 78, 65, 61, 79, 46, 65, 58, 65, 49, 75, 67, 47, 50, 98, 51, 75, 124, 74, 47, 91, 56, 68, 46, 62, 50, 60, 78, 89, 70, 62, 73, 101, 64, 81, 80, 67, 73, 62, 88, 74, 67, 92, 47, 54, 81, 74, 86, 65, 64, 98, 55, 49, 67, 49, 78, 70, 79, 66, 70, 83, 74, 64, 78, 49, 63, 77, 57, 64, 82, 56, 80, 67, 72, 90, 70, 67, 105, 88, 66, 81, 62, 57, 70, 70, 74, 49, 39, 70, 60, 73, 58, 53, 57, 70, 52, 93, 46, 67, 41, 79, 89, 48, 59, 66, 52, 87, 63, 115, 103, 88, 75, 62, 57, 63, 55, 72, 63, 47, 56, 56, 79, 79, 59, 51, 92, 83, 78, 65, 57, 40, 57, 89, 70, 63, 88, 68, 48, 66, 84, 82, 67, 64, 54, 55, 48, 68, 102, 59, 63, 62, 72, 98, 85, 64, 53, 83, 52, 56, 66, 67, 61, 77, 55, 85, 55, 73, 71, 62, 74, 60, 84, 59, 80, 47, 54, 29, 62, 75, 89, 71, 64, 68, 47, 59, 75, 79, 73, 73, 42, 40, 51, 57, 62, 65, 53, 77, 53, 66, 98, 63, 59, 87, 112, 67, 54, 41, 77, 89, 63, 49, 62, 59, 47, 60, 59, 73, 63, 73, 45, 58, 84, 67, 70, 99, 60, 71, 67, 76, 71, 44, 112, 78, 61, 56, 52, 69, 62, 58, 61, 48, 57, 43, 60, 47, 61, 72, 70, 63, 60, 68, 71, 65, 65, 77, 55, 69, 75, 57, 73, 53, 81, 72, 88, 54, 67, 70, 93, 55, 79, 70, 85, 38, 56, 93, 58, 84, 58, 82, 81, 79, 61, 112, 82, 55, 73, 70, 105, 74, 82, 60, 147, 51, 51, 80, 62, 64, 64, 68, 45, 54, 81, 68, 49, 81, 67, 73, 77, 50, 59, 56, 88, 60, 88, 55, 92, 58, 63, 66, 86, 93, 62, 41, 73, 88, 55, 66, 76, 66, 78, 39, 74, 81, 42, 59, 78, 46, 50, 54, 46, 53, 75, 54, 84, 38, 57, 73, 58, 78, 19, 68, 98, 39, 120, 66, 71, 67, 59, 53, 80, 88, 51, 63, 53, 73, 55, 58, 50, 73, 63, 63, 50, 52, 43, 74, 69, 63, 56, 67, 75, 54, 64, 63, 73, 44, 45, 71, 85, 68, 72, 66, 76, 66, 73, 55, 67, 67, 101, 68, 96, 55, 63, 53, 73, 62, 67, 36, 70, 51, 72, 61, 52, 65, 53, 98, 56, 101, 85, 19, 57, 68, 65, 68, 89, 47, 98, 57, 99, 72, 72, 53, 53, 56, 43, 82, 56, 94, 52, 51, 54, 85, 47, 49, 67, 59, 93, 52, 69, 63, 68, 36, 58, 63, 65, 82, 62, 57, 68, 80, 80, 78, 64, 42, 79, 59, 66, 67, 86, 72, 54, 51, 50, 83, 54, 57, 66, 46, 61, 69, 55, 51, 63, 90, 67, 108, 57, 56, 77, 83, 46, 79, 73, 55, 80, 72, 59, 48, 81, 59, 68, 49, 77, 71, 57, 39, 55, 92, 81, 64, 49, 63, 64, 70, 40, 74, 58, 60, 53, 55, 69, 65, 61, 87, 47, 51, 84, 52, 73, 67, 64, 47, 86, 59, 78, 52, 70, 48, 53, 61, 63, 60, 78, 72, 75, 48, 69, 53, 34, 87, 80, 51, 69, 79, 58, 50, 61, 72, 57, 47, 81, 55, 46, 115, 31, 71, 50, 78, 59, 77, 87, 46, 58, 85, 54, 71, 62, 61, 57, 76, 68, 54, 70, 75, 60, 72, 83, 104, 82, 58, 56, 75, 80, 57, 67, 52, 80, 82, 52, 58, 80, 67, 60, 96, 46, 82, 71, 40, 53, 74, 96, 68, 100, 62, 55, 78, 64, 38, 73, 67, 50, 42, 65, 62, 60, 61, 103, 85, 57, 80, 71, 42, 56, 54, 74, 48, 64, 60, 76, 63, 42, 81, 93, 87, 73, 73, 39, 86, 65, 68, 52, 52, 152, 79, 62, 64, 57, 61, 70, 44, 61, 71, 66, 69, 86, 48, 78, 49, 86, 68, 72, 59, 54, 40, 76, 57, 60, 51, 59, 84, 61, 71, 48, 66, 76, 55, 70, 61, 73, 106, 68, 59, 61, 48, 55, 42, 89, 53, 57, 71, 70, 65, 65, 54, 83, 84, 68, 57, 82, 53, 80, 52, 81, 62, 55, 58, 55, 78, 53, 57, 94, 58, 57, 44, 61, 88, 68, 71, 47, 57, 74, 65, 59, 64, 81, 49, 61, 58, 50, 74, 62, 57, 49, 56, 68, 71, 49, 62, 61, 90, 85, 75, 79, 70, 89, 53, 70, 69, 69, 40, 51, 60, 78, 65, 60, 78, 38, 62, 96, 67, 78, 51, 72, 62, 70, 77, 71, 64, 60, 66, 75, 69, 65, 64, 94, 72, 57, 68, 57, 87, 76, 61, 61, 111, 34, 51, 80, 72, 88, 41, 61, 59, 52, 98, 63, 65, 68, 105, 61, 41, 67, 67, 82, 70, 62, 66, 83, 43, 99, 75, 55, 80, 57, 69, 63, 78, 67, 79, 70, 64, 48, 43, 71, 78, 99, 99, 102, 62, 58, 64, 64, 64, 46, 50, 69, 71, 77, 60, 65, 50, 62, 63, 64, 64, 96, 44, 82, 134, 56, 80, 73, 53, 85, 68, 57, 55, 57, 41, 64, 97, 63, 62, 78, 50, 78, 68, 58, 66, 68, 57, 50, 72, 62, 52, 55, 66, 89, 48, 50, 100, 56, 84, 48, 44, 72, 57, 61, 43, 74, 63, 65, 76, 62, 60, 51, 60, 49, 76, 76, 77, 50, 69, 57, 65, 47, 64, 83, 64, 41, 70, 63, 97, 45, 77, 96, 88, 67, 69, 58, 70, 34, 70, 76, 70, 93, 70, 50, 90, 62, 72, 61, 38, 68, 45, 61, 87, 64, 43, 89, 64, 60, 60, 79, 98, 47, 57, 79, 50, 71, 60, 81, 59, 78, 68, 73, 57, 101, 71, 64, 76, 81, 45, 75, 42, 77, 51, 50, 82, 53, 68, 51, 37, 68, 77, 58, 72, 81, 58, 78, 62, 53, 58, 61, 73, 62, 87, 71, 53, 63, 86, 34, 58, 100, 72, 73, 60, 68, 50, 83, 76, 61, 93, 70, 65, 79, 80, 95, 78, 74, 64, 57, 76, 85, 64, 53, 67, 57, 72, 42, 60, 49, 62, 62, 65, 64, 65, 56, 60, 76, 64, 49, 58, 57, 58, 59, 73, 58, 70, 58, 67, 122, 78, 69, 46, 73, 74, 63, 54, 67, 85, 49, 57, 59, 64, 68, 63, 72, 55, 72, 72, 61, 123, 48, 73, 70, 79, 66, 53, 60, 59, 69, 62, 59, 57, 63, 63, 81, 49, 73, 58, 55, 86, 63, 65, 84, 69, 49, 84, 58, 74, 64, 55, 83, 64, 78, 71, 63, 80, 104, 67, 69, 51, 69, 68, 56, 62, 50, 73, 50, 76, 67, 65, 58, 57, 52, 82, 62, 44, 104, 72, 60, 62, 71, 62, 66, 58, 87, 62, 39, 57, 77, 65, 64, 45, 45, 75, 54, 67, 65, 62, 59, 74, 84, 54, 55, 49, 61, 58, 71, 59, 79, 54, 49, 65, 53, 63, 78, 62, 54, 67, 81, 49, 72, 58, 67, 66, 55, 66, 48, 57, 64, 67, 61, 63, 50, 85, 73, 71, 65, 59, 63, 86, 60, 81, 88, 75, 53, 62, 67, 57, 62, 61, 72, 70, 53, 54, 70, 67, 61, 46, 69, 55, 54, 61, 69, 70, 49, 54, 63, 48, 63, 45, 63, 115, 75, 63, 65, 68, 89, 66, 57, 63, 58, 61, 76, 63, 59, 91, 64, 69, 64, 72, 59, 67, 53, 83, 78, 76, 67, 63, 73, 73, 83, 64, 72, 57, 59, 81, 71, 48, 65, 37, 47, 65, 54, 72, 71, 65, 88, 50, 60, 41, 68, 68, 73, 49, 88, 70, 70, 53, 37, 52, 68, 90, 73, 52, 27, 61, 47, 63, 39, 63, 43, 61, 66, 69, 87, 80, 52, 64, 80, 94, 41, 89, 73, 70, 64, 55, 69, 58, 61, 75, 45, 67, 66, 57, 60, 47, 67, 73, 61, 63, 60, 49, 69, 53, 49, 63, 97, 90, 58, 102, 63, 78, 60, 76, 55, 68, 52, 70, 68, 66, 68, 61, 78, 81, 56, 64, 60, 67, 69, 64, 62, 59, 44, 53, 55, 48, 79, 117, 42, 37, 69, 59, 63, 68, 54, 89, 83, 65, 75, 71, 71, 64, 78, 85, 57, 65, 84, 66, 58, 64, 63, 46, 62, 77, 52, 53, 82, 65, 66, 62, 59, 60, 75, 59, 62, 69, 61, 65, 64, 84, 114, 57, 54, 55, 69, 70, 56, 91, 52, 65, 61, 53, 60, 87, 57, 57, 59, 52, 86, 71, 68, 65, 99, 60, 86, 85, 58, 64, 51, 74, 73, 71, 58, 52, 61, 74, 65, 56, 60, 54, 49, 65, 103, 74, 62, 76, 67, 59, 62, 65, 62, 51, 57, 64, 47, 54, 68, 55, 65, 57, 62, 93, 68, 59, 56, 60, 109, 57, 62, 57, 64, 83, 58, 58, 76, 74, 57, 68, 61, 62, 67, 28, 64, 55, 50, 94, 50, 37, 118, 74, 56, 81, 43, 51, 119, 69, 89, 68, 87, 60, 67, 66, 52, 47, 51, 72, 91, 46, 60, 63, 52, 61, 72, 75, 100, 74, 95, 77, 54, 74, 65, 50, 70, 94, 88, 70, 55, 63, 64, 66, 106, 57, 72, 69, 69, 45, 61, 65, 58, 79, 65, 52, 71, 114, 68, 60, 56, 105, 53, 53, 85, 54, 75, 71, 49, 70, 55, 54, 58, 73, 40, 54, 77, 68, 61, 62, 104, 54, 59, 51, 57, 80, 53, 83, 70, 57, 68, 61, 60, 78, 89, 77, 59, 50, 49, 68, 53, 59, 73, 59, 47, 57, 48, 56, 113, 88, 53, 74, 65, 71, 58, 63, 60, 85, 52, 87, 48, 62, 85, 70, 109, 109, 70, 69, 78, 36, 64, 81, 64, 67, 62, 84, 52, 77, 100, 55, 76, 82, 54, 111, 61, 77, 58, 51, 55, 66, 61, 67, 54, 76, 75, 69, 115, 68, 116, 65, 48, 75, 53, 62, 59, 66, 79, 75, 59, 91, 71, 62, 82, 50, 81, 51, 84, 63, 75, 52, 69, 81, 73, 88, 61, 72, 59, 58, 67, 77, 43, 73, 73, 63, 75, 58, 64, 54, 49, 63, 70, 68, 90, 63, 56, 52, 52, 60, 59, 60, 69, 106, 55, 55, 48, 84, 46, 61, 51, 60, 34, 74, 70, 94, 71, 49, 48, 65, 73, 48, 60, 59, 74, 101, 60, 75, 54, 50, 67, 66, 51, 69, 56, 55, 62, 42, 46, 65, 61, 104, 58, 99, 70, 68, 60, 53, 81, 64, 79, 62, 61, 35, 50, 83, 55, 75, 74, 71, 59, 43, 55, 56, 68, 78, 58, 77, 56, 66, 96, 91, 46, 45, 79, 68, 61, 57, 54, 66, 71, 66, 53, 59, 60, 104, 52, 67, 75, 66, 71, 64, 79, 55, 58, 53, 61, 71, 72, 76, 89, 52, 64, 50, 56, 57, 73, 67, 50, 54, 54, 65, 60, 63, 54, 45, 63, 126, 53, 53, 68, 55, 61, 59, 57, 77, 64, 57, 88, 47, 78, 71, 50, 64, 65, 61, 70, 74, 77, 49, 52, 78, 56, 62, 88, 77, 71, 62, 51, 64, 48, 54, 82, 106, 68, 55, 58, 62, 58, 77, 70, 78, 59, 78, 52, 69, 57, 62, 60, 91, 66, 70, 46, 77, 82, 64, 63, 50, 47, 56, 53, 81, 64, 56, 84, 67, 70, 60, 83, 100, 64, 75, 50, 78, 67, 55, 58, 68, 67, 71, 53, 46, 44, 55, 86, 57, 92, 52, 52, 61, 68, 95, 49, 52, 56, 71, 70, 60, 63, 51, 51, 60, 74, 63, 71, 62, 64, 75, 60, 75, 68, 67, 57, 73, 61, 68, 63, 55, 30, 50, 52, 64, 80, 74, 68, 109, 85, 66, 84, 70, 44, 51, 67, 77, 50, 55, 59, 71, 52, 67, 72, 40, 55, 71, 85, 77, 55, 70, 63, 53, 83, 64, 60, 60, 56, 107, 91, 62, 60, 65, 73, 47, 77, 41, 65, 54, 107, 48, 77, 52, 67, 50, 68, 57, 80, 62, 72, 56, 43, 73, 55, 63, 52, 59, 58, 60, 77, 54, 123, 52, 71, 54, 65, 64, 68, 51, 60, 68, 64, 58, 55, 70, 89, 53, 67, 37, 62, 57, 72, 72, 58, 75, 66, 39, 83, 69, 67, 52, 54, 155, 64, 43, 52, 59, 70, 123, 66, 69, 100, 58, 55, 65, 59, 62, 73, 79, 64, 83, 64, 62, 62, 63, 71, 62, 89, 73, 69, 67, 53, 117, 76, 61, 75, 70, 54, 68, 58, 82, 55, 63, 40, 70, 57, 41, 73, 60, 79, 51, 81, 52, 71, 71, 60, 52, 73, 85, 36, 95, 66, 60, 68, 79, 61, 58, 79, 76, 70, 64, 67, 79, 75, 76, 46, 66, 62, 49, 41, 68, 83, 73, 64, 53, 64, 54, 60, 84, 43, 48, 69, 66, 74, 66, 70, 71, 60, 64, 51, 42, 70, 47, 63, 78, 53, 71, 61, 46, 54, 58, 71, 45, 55, 56, 39, 76, 74, 56, 90, 63, 74, 49, 69, 69, 54, 70, 50, 62, 74, 77, 81, 73, 61, 59, 87, 71, 61, 60, 87, 90, 73, 77, 92, 57, 40, 64, 68, 72, 59, 61, 64, 68, 42, 70, 67, 55, 43, 68, 92, 63, 49, 76, 55, 72, 80, 67, 100, 60, 72, 55, 50, 70, 75, 56, 74, 58, 85, 64, 53, 88, 74, 72, 50, 62, 85, 44, 76, 80, 66, 94, 84, 44, 57, 75, 46, 104, 61, 69, 59, 72, 56, 68, 69, 47, 49, 51, 85, 61, 60, 70, 68, 65, 59, 74, 63, 73, 83, 69, 96, 62, 50, 59, 50, 109, 52, 58, 41, 74, 88, 76, 48, 60, 56, 84, 54, 83, 54, 66, 78, 54, 32, 71, 86, 63, 54, 49, 99, 61, 54, 53, 72, 71, 76, 64, 48, 86, 52, 102, 79, 59, 75, 85, 71, 62, 68, 78, 76, 69, 55, 73, 68, 67, 52, 40, 70, 57, 95, 71, 82, 88, 57, 52, 94, 59, 71, 61, 51, 38, 49, 65, 53, 58, 85, 48, 61, 61, 84, 66, 64, 48, 72, 62, 68, 46, 64, 64, 86, 71, 82, 68, 50, 58, 61, 70, 74, 75, 63, 65, 84, 57, 63, 59, 80, 72, 74, 60, 49, 52, 78, 57, 85, 66, 81, 74, 102, 74, 48, 66, 56, 76, 63, 81, 84, 61, 52, 107, 69, 73, 50, 97, 48, 78, 64, 49, 83, 97, 75, 72, 84, 56, 90, 91, 47, 70, 41, 69, 43, 46, 55, 81, 53, 53, 68, 65, 68, 38, 54, 62, 84, 72, 55, 59, 67, 65, 78, 80, 53, 80, 58, 73, 50, 60, 52, 57, 77, 82, 89, 45, 56, 69, 38, 71, 44, 68, 48, 46, 41, 51, 55, 40, 86, 67, 81, 104, 68, 103, 66, 74, 78, 76, 70, 62, 48, 73, 49, 80, 71, 65, 59, 78, 76, 123, 52, 82, 64, 79, 68, 75, 59, 36, 65, 77, 65, 40, 57, 80, 62, 46, 50, 45, 78, 60, 64, 47, 65, 50, 80, 87, 67, 55, 81, 61, 75, 52, 73, 64, 62, 58, 63, 62, 45, 60, 85, 90, 57, 71, 45, 97, 84, 61, 77, 74, 62, 70, 60, 60, 54, 54, 65, 64, 70, 58, 51, 59, 56, 55, 57, 79, 63, 48, 75, 42, 70, 83, 77, 74, 56, 43, 58, 50, 51, 71, 76, 41, 80, 61, 69, 50, 74, 44, 111, 53, 49, 47, 67, 62, 96, 67, 71, 53, 73, 60, 86, 80, 101, 59, 60, 101, 63, 51, 75, 59, 129, 61, 68, 70, 79, 75, 51, 64, 61, 48, 57, 91, 59, 86, 88, 65, 59, 60, 52, 73, 56, 44, 71, 71, 70, 57, 85, 64, 111, 45, 73, 53, 66, 57, 75, 83, 75, 55, 64, 63, 65, 77, 62, 67, 48, 89, 61, 59, 82, 65, 73, 72, 48, 72, 68, 71, 57, 53, 75, 55, 67, 76, 70, 83, 79, 75, 56, 62, 71, 127, 68, 68, 54, 59, 82, 65, 51, 74, 100, 70, 91, 61, 57, 46, 49, 106, 76, 54, 61, 95, 54, 53, 71, 48, 81, 27, 66, 100, 52, 97, 55, 59, 88, 44, 47, 68, 62, 60, 58, 44, 51, 61, 71, 68, 60, 76, 71, 71, 59, 71, 71, 60, 65, 73, 82, 47, 79, 71, 91, 60, 57, 71, 72, 65, 81, 77, 113, 90, 61, 69, 57, 72, 63, 66, 61, 57, 87, 53, 53, 56, 61, 59, 46, 60, 74, 72, 105, 52, 47, 52, 66, 67, 63, 79, 82, 74, 73, 46, 94, 75, 76, 69, 50, 85, 45, 71, 54, 68, 75, 56, 61, 61, 77, 70, 74, 75, 78, 86, 64, 66, 56, 34, 65, 86, 55, 90, 62, 59, 96, 65, 54, 55, 89, 90, 72, 63, 84, 65, 86, 59, 71, 51, 62, 75, 70, 88, 113, 66, 90, 56, 72, 58, 44, 58, 64, 81, 62, 65, 59, 89, 49, 94, 67, 55, 52, 52, 47, 54, 77, 66, 92, 75, 60, 79, 54, 76, 65, 63, 79, 65, 87, 51, 86, 55, 88, 44, 76, 84, 82, 68, 57, 54, 76, 55, 74, 44, 46, 111, 79, 97, 70, 66, 64, 103, 58, 97, 84, 73, 62, 97, 54, 92, 66, 91, 55, 77, 82, 70, 73, 55, 65, 103, 53, 49, 68, 89, 42, 63, 70, 56, 74, 49, 66, 80, 97, 59, 47, 60, 84, 57, 39, 32, 59, 57, 80, 63, 95, 63, 86, 96, 61, 47, 89, 51, 71, 62, 59, 69, 52, 58, 55, 74, 68, 70, 37, 61, 63, 94, 52, 71, 62, 58, 64, 74, 63, 94, 52, 61, 58, 60, 59, 55, 79, 58, 82, 74, 29, 50, 54, 47, 42, 100, 70, 73, 68, 48, 68, 64, 60, 88, 74, 56, 77, 57, 59, 47, 55, 56, 82, 53, 53, 66, 86, 59, 64, 59, 56, 62, 89, 58, 70, 57, 58, 76, 67, 61, 69, 62, 66, 58, 67, 57, 62, 87, 67, 60, 82, 56, 79, 93, 62, 69, 75, 70, 55, 60, 78, 71, 85, 126, 78, 61, 77, 89, 59, 57, 81, 74, 63, 72, 59, 75, 57, 63, 76, 74, 71, 57, 47, 80, 77, 64, 67, 69, 72, 55, 75, 62, 81, 66, 116, 82, 69, 100, 67, 54, 69, 77, 73, 56, 40, 81, 41, 35, 57, 60, 48, 64, 66, 47, 58, 81, 58, 57, 84, 58, 61, 67, 56, 77, 93, 55, 57, 64, 110, 72, 81, 53, 56, 50, 68, 36, 54, 67, 70, 57, 55, 56, 97, 49, 61, 52, 64, 77, 80, 59, 60, 59, 59, 55, 85, 55, 45, 82, 59, 60, 52, 64, 72, 59, 61, 55, 54, 73, 48, 62, 44, 61, 76, 59, 64, 62, 52, 53, 91, 53, 68, 77, 68, 65, 43, 73, 55, 77, 95, 62, 77, 45, 53, 62, 111, 93, 65, 135, 63, 66, 61, 72, 76, 62, 66, 62, 34, 64, 58, 52, 65, 53, 55, 58, 61, 84, 45, 61, 73, 62, 59, 69, 56, 42, 68, 56, 61, 74, 77, 57, 65, 57, 64, 46, 40, 66, 67, 50, 54, 63, 60, 62, 70, 70, 70, 49, 54, 70, 90, 71, 84, 60, 59, 91, 72, 59, 66, 69, 73, 60, 67, 78, 69, 66, 61, 48, 75, 74, 100, 50, 85, 53, 76, 71, 72, 72, 54, 50, 75, 61, 61, 83, 74, 60, 64, 36, 47, 71, 63, 75, 61, 74, 74, 51, 53, 66, 64, 60, 63, 91, 57, 78, 45, 58, 60, 91, 59, 57, 54, 60, 58, 67, 60, 59, 75, 58, 70, 85, 59, 64, 65, 47, 59, 66, 55, 48, 57, 67, 55, 77, 61, 62, 73, 59, 44, 58, 55, 51, 77, 71, 71, 70, 68, 57, 59, 58, 66, 63, 63, 56, 59, 66, 68, 57, 68, 42, 72, 56, 56, 65, 61, 70, 66, 56, 54, 55, 54, 46, 64, 72, 63, 63, 66, 63, 36, 58, 79, 87, 58, 94, 68, 85, 56, 90, 56, 57, 67, 56, 84, 63, 70, 56, 71, 61, 54, 64, 53, 50, 57, 55, 61, 70, 77, 90, 51, 73, 101, 60, 59, 61, 62, 85, 53, 67, 76, 75, 59, 77, 57, 67, 62, 57, 53, 59, 60, 61, 82, 62, 62, 50, 65, 62, 55, 94, 42, 82, 56, 49, 63, 61, 69, 67, 77, 49, 85, 62, 47, 44, 42, 54, 61, 54, 66, 58, 37, 71, 119, 64, 69, 54, 54, 57, 83, 53, 51, 47, 75, 86, 76, 51, 53, 64, 83, 59, 69, 62, 61, 69, 59, 51, 62, 60, 59, 84, 86, 57, 86, 58, 71, 52, 70, 63, 56, 66, 55, 56, 44, 65, 68, 112, 39, 63, 56, 93, 52, 69, 76, 73, 72, 120, 58, 66, 53, 56, 68, 69, 75, 73, 65, 88, 61, 54, 65, 58, 64, 65, 62, 71, 61, 80, 61, 95, 63, 62, 58, 64, 64, 59, 63, 63, 99, 63, 62, 80, 88, 54, 67, 56, 45, 45, 61, 56, 71, 67, 82, 64, 58, 63, 58, 53, 104, 68, 64, 61, 73, 57, 55, 85, 61, 57, 72, 77, 105, 60, 65, 48, 67, 64, 64, 59, 59, 53, 63, 61, 53, 54, 83, 54, 103, 66, 64, 68, 60, 63, 64, 62, 70, 63, 74, 53, 63, 70, 60, 95, 67, 72, 67, 78, 55, 76, 53, 65, 95, 67, 120, 65, 64, 97, 63, 59, 56, 56, 78, 63, 52, 90, 65, 58, 80, 41, 85, 71, 62, 78, 60, 64, 65, 87, 97, 72, 67, 59, 99, 47, 86, 63, 57, 66, 63, 79, 83, 61, 68, 53, 73, 58, 69, 60, 77, 67, 79, 71, 61, 44, 62, 98, 84, 58, 74, 58, 73, 53, 52, 55, 68, 55, 58, 63, 61, 63, 61, 78, 70, 39, 60, 66, 60, 61, 54, 92, 56, 78, 79, 77, 75, 64, 49, 68, 67, 60, 49, 86, 63, 66, 57, 52, 77, 78, 65, 67, 69, 92, 79, 66, 80, 67, 66, 64, 60, 64, 70, 58, 60, 51, 56, 84, 55, 75, 57, 71, 92, 68, 57, 51, 57, 51, 50, 72, 58, 69, 69, 68, 55, 55, 71, 46, 68, 63, 54, 51, 72, 78, 74, 47, 71, 62, 57, 60, 67, 103, 55, 105, 103, 105, 57, 86, 60, 64, 64, 74, 66, 63, 54, 77, 54, 65, 76, 49, 71, 93, 60, 57, 65, 100, 68, 54, 73, 74, 64, 67, 69, 68, 61, 81, 63, 64, 74, 56, 61, 82, 62, 64, 53, 61, 63, 67, 73, 67, 79, 60, 52, 63, 74, 78, 53, 86, 69, 57, 69, 90, 67, 59, 60, 64, 107, 57, 71, 55, 81, 65, 55, 59, 65, 56, 68, 84, 76, 78, 64, 64, 71, 66, 61, 58, 69, 89, 53, 70, 62, 57, 66, 91, 64, 137, 51, 63, 68, 65, 51, 65, 59, 74, 84, 58, 51, 43, 61, 63, 73, 69, 55, 69, 61, 59, 54, 61, 91, 66, 82, 63, 41, 66, 58, 57, 49, 69, 78, 65, 63, 103, 65, 44, 55, 56, 71, 79, 56, 63, 68, 67, 68, 65, 64, 95, 68, 68, 75, 55, 70, 70, 53, 52, 67, 60, 46, 61, 46, 61, 51, 57, 97, 93, 86, 59, 59, 79, 68, 63, 52, 58, 70, 68, 60, 74, 84, 63, 63, 83, 74, 64, 52, 55, 69, 56, 62, 63, 64, 55, 66, 69, 66, 64, 68, 65, 63, 66, 73, 67, 68, 70, 59, 52, 81, 58, 52, 82, 78, 66, 49, 60, 62, 87, 62, 72, 64, 125, 70, 99, 56, 92, 55, 51, 90, 115, 83, 108, 54, 60, 89, 64, 90, 61, 60, 76, 58, 67, 67, 61, 56, 60, 85, 61, 64, 53, 100, 69, 97, 68, 62, 55, 67, 56, 68, 73, 78, 87, 51, 66, 52, 76, 79, 47, 73, 68, 58, 71, 62, 77, 50, 58, 82, 49, 63, 65, 60, 47, 66, 51, 51, 41, 64, 55, 71, 57, 57, 108, 58, 57, 58, 91, 80, 45, 73, 60, 76, 65, 55, 64, 67, 63, 64, 57, 60, 62, 61, 90, 72, 74, 57, 59, 63, 44, 56, 57, 57, 54, 51, 50, 71, 61, 80, 60, 68, 54, 73, 60, 58, 75, 55, 67, 63, 69, 60, 65, 58, 36, 58, 54, 75, 54, 75, 66, 61, 100, 63, 71, 67, 53, 69, 53, 57, 56, 65, 64, 47, 64, 67, 68, 49, 55, 60, 92, 61, 55, 63, 75, 63, 78, 62, 65, 43, 71, 60, 62, 47, 49, 82, 80, 67, 59, 74, 60, 56, 68, 90, 45, 72, 61, 63, 47, 68, 82, 51, 62, 134, 79, 64, 69, 60, 71, 42, 51, 71, 44, 124, 69, 68, 70, 49, 69, 65, 54, 72, 54, 63, 71, 71, 51, 70, 52, 74, 104, 63, 35, 74, 58, 54, 57, 55, 64, 65, 56, 57, 48, 67, 67, 102, 56, 58, 65, 60, 74, 73, 47, 47, 81, 74, 55, 51, 63, 74, 59, 85, 62, 53, 71, 66, 72, 70, 53, 55, 96, 50, 50, 51, 93, 52, 62, 58, 69, 70, 60, 66, 58, 55, 67, 63, 51, 51, 64, 58, 67, 62, 56, 87, 66, 54, 70, 76, 96, 144, 67, 55, 77, 59, 78, 78, 68, 79, 72, 42, 83, 67, 74, 87, 59, 87, 65, 71, 54, 83, 70, 74, 69, 60, 70, 48, 65, 82, 70, 43, 57, 63, 61, 66, 76, 88, 64, 69, 55, 93, 73, 59, 64, 98, 91, 45, 78, 57, 91, 77, 61, 81, 73, 66, 66, 67, 78, 106, 41, 63, 72, 47, 90, 75, 65, 46, 53, 38, 74, 64, 57, 61, 69, 54, 33, 77, 61, 56, 63, 54, 71, 84, 54, 57, 66, 67, 58, 52, 71, 59, 86, 62, 51, 76, 51, 60, 74, 59, 64, 68, 57, 49, 86, 58, 47, 48, 50, 104, 88, 38, 69, 63, 54, 53, 54, 60, 76, 49, 76, 67, 65, 45, 61, 102, 54, 64, 55, 64, 66, 44, 64, 54, 73, 54, 46, 95, 77, 75, 37, 89, 68, 77, 60, 73, 66, 41, 65, 52, 75, 56, 49, 56, 62, 55, 48, 74, 46, 62, 53, 59, 58, 59, 69, 62, 45, 50, 42, 71, 67, 55, 69, 56, 71, 45, 64, 56, 49, 49, 59, 81, 67, 74, 56, 58, 62, 60, 85, 47, 60, 67, 70, 79, 49, 55, 129, 72, 64, 63, 51, 51, 89, 78, 61, 77, 50, 58, 66, 65, 65, 95, 88, 83, 77, 57, 62, 49, 61, 66, 57, 65, 58, 82, 83, 59, 85, 49, 76, 52, 115, 67, 71, 60, 76, 58, 74, 53, 86, 50, 54, 63, 75, 49, 71, 85, 73, 63, 75, 70, 62, 73, 68, 53, 52, 70, 72, 87, 81, 74, 67, 63, 50, 55, 52, 47, 71, 59, 76, 49, 42, 61, 98, 63, 58, 54, 68, 63, 54, 64, 82, 70, 56, 83, 60, 74, 62, 70, 55, 61, 97, 78, 57, 67, 66, 75, 38, 70, 85, 56, 170, 83, 82, 58, 83, 80, 62, 57, 94, 63, 55, 80, 55, 69, 37, 58, 62, 62, 60, 71, 65, 60, 58, 61, 73, 59, 98, 74, 41, 70, 71, 50, 38, 83, 59, 85, 76, 58, 46, 71, 59, 56, 70, 71, 61, 67, 58, 78, 85, 84, 65, 43, 89, 51, 54, 65, 71, 75, 51, 69, 65, 90, 68, 71, 55, 67, 71, 67, 54, 61, 68, 84, 50, 49, 66, 81, 60, 67, 97, 80, 56, 62, 90, 72, 89, 48, 60, 62, 66, 44, 70, 48, 58, 57, 61, 73, 74, 57, 70, 74, 77, 47, 60, 77, 56, 48, 80, 68, 108, 83, 75, 59, 74, 70, 65, 67, 92, 61, 67, 69, 71, 52, 65, 67, 39, 86, 67, 56, 73, 57, 62, 55, 57, 60, 75, 57, 68, 77, 62, 72, 60, 39, 73, 79, 61, 54, 51, 89, 57, 52, 72, 69, 62, 55, 62, 96, 65, 63, 77, 61, 75, 58, 55, 77, 70, 69, 62, 70, 94, 81, 55, 62, 61, 74, 74, 69, 47, 59, 73, 58, 65, 55, 66, 63, 71, 35, 56, 44, 66, 77, 65, 64, 105, 41, 61, 114, 59, 60, 152, 63, 47, 71, 59, 65, 77, 52, 56, 62, 60, 45, 58, 51, 76, 73, 54, 62, 75, 58, 58, 68, 76, 63, 53, 81, 80, 54, 76, 65, 65, 75, 91, 60, 68, 72, 63, 64, 59, 65, 59, 56, 73, 52, 53, 56, 65, 47, 48, 44, 59, 64, 65, 55, 87, 56, 79, 77, 68, 54, 98, 58, 73, 39, 69, 63, 59, 63, 54, 66, 64, 71, 52, 46, 64, 71, 50, 70, 81, 54, 78, 54, 69, 63, 69, 56, 86, 48, 73, 82, 61, 83, 49, 49, 85, 70, 75, 65, 67, 47, 63, 73, 63, 56, 56, 64, 73, 47, 55, 62, 64, 58, 59, 58, 67, 37, 71, 84, 61, 70, 70, 62, 61, 69, 70, 50, 58, 78, 86, 62, 79, 66, 56, 84, 61, 57, 56, 51, 83, 41, 63, 61, 63, 57, 67, 75, 98, 59, 87, 53, 72, 73, 86, 77, 95, 73, 77, 68, 63, 66, 70, 72, 70, 50, 64, 73, 64, 91, 46, 49, 63, 66, 97, 65, 83, 74, 54, 74, 52, 62, 74, 74, 152, 57, 76, 78, 44, 59, 54, 58, 75, 69, 56, 62, 76, 77, 72, 74, 89, 61, 32, 80, 65, 90, 68, 71, 48, 69, 73, 61, 62, 51, 62, 61, 81, 66, 70, 72, 63, 74, 62, 67, 69, 62, 63, 79, 80, 68, 67, 54, 56, 48, 76, 61, 54, 59, 87, 43, 138, 85, 83, 67, 67, 59, 47, 76, 68, 67, 72, 58, 44, 74, 52, 61, 71, 60, 58, 111, 94, 60, 105, 53, 57, 48, 46, 61, 93, 88, 73, 68, 75, 51, 78, 82, 72, 94, 73, 75, 65, 79, 44, 78, 75, 66, 66, 67, 69, 70, 60, 63, 80, 73, 80, 68, 77, 63, 55, 54, 71, 91, 70, 68, 48, 97, 75, 58, 71, 67, 56, 92, 37, 71, 76, 75, 49, 68, 76, 61, 82, 68, 71, 81, 70, 69, 58, 50, 68, 64, 70, 56, 60, 56, 81, 72, 80, 59, 64, 55, 63, 64, 77, 66, 67, 58, 65, 74, 71, 79, 60, 53, 78, 79, 68, 49, 82, 58, 65, 66, 54, 53, 60, 67, 57, 62, 72, 56, 70, 63, 62, 67, 53, 135, 68, 56, 49, 69, 75, 41, 46, 69, 59, 57, 88, 47, 65, 76, 77, 52, 39, 73, 68, 74, 62, 63, 60, 63, 61, 46, 65, 85, 80, 72, 64, 65, 65, 48, 43, 48, 66, 54, 43, 51, 66, 82, 77, 61, 73, 70, 53, 46, 102, 63, 59, 68, 73, 80, 60, 65, 58, 64, 63, 89, 77, 81, 55, 49, 94, 89, 52, 70, 69, 70, 49, 52, 49, 58, 65, 59, 56, 96, 81, 67, 57, 50, 66, 65, 61, 56, 51, 66, 106, 66, 65, 82, 64, 59, 60, 97, 76, 60, 82, 60, 55, 78, 74, 54, 68, 71, 47, 61, 55, 77, 58, 65, 41, 92, 74, 74, 54, 57, 58, 58, 58, 48, 76, 73, 63, 60, 93, 68, 67, 68, 66, 79, 74, 71, 66, 54, 59, 49, 84, 73, 75, 69, 55, 65, 73, 76, 61, 64, 65, 67, 62, 59, 59, 53, 71, 62, 53, 120, 61, 64, 83, 63, 57, 91, 78, 85, 67, 53, 63, 59, 64, 67, 63, 53, 48, 67, 76, 50, 61, 63, 69, 63, 59, 52, 60, 54, 53, 63, 106, 65, 55, 72, 61, 49, 76, 82, 78, 63, 71, 58, 50, 92, 88, 43, 62, 62, 59, 80, 76, 50, 53, 77, 72, 52, 61, 55, 71, 53, 85, 56, 70, 51, 62, 46, 73, 58, 71, 68, 68, 55, 69, 64, 62, 54, 55, 46, 73, 76, 48, 56, 52, 61, 46, 78, 44, 47, 69, 60, 52, 58, 61, 66, 67, 111, 61, 59, 57, 47, 68, 58, 66, 67, 67, 59, 35, 54, 75, 51, 52, 101, 60, 52, 63, 78, 54, 44, 61, 63, 66, 58, 70, 51, 66, 65, 67, 67, 67, 62, 94, 63, 62, 71, 67, 50, 74, 59, 56, 64, 82, 67, 54, 79, 116, 66, 73, 101, 79, 103, 52, 53, 71, 58, 68, 92, 64, 52, 59, 63, 80, 53, 89, 90, 52, 66, 55, 96, 46, 95, 56, 90, 71, 60, 39, 83, 61, 67, 94, 93, 70, 72, 68, 145, 63, 53, 58, 53, 64, 69, 50, 59, 78, 53, 76, 68, 60, 61, 83, 49, 58, 43, 113, 58, 53, 78, 54, 67, 64, 57, 68, 46, 57, 67, 51, 55, 63, 60, 48, 55, 48, 69, 55, 63, 79, 47, 66, 79, 65, 84, 83, 71, 77, 59, 50, 65, 35, 76, 75, 52, 61, 47, 69, 55, 59, 75, 59, 149, 70, 56, 63, 69, 62, 53, 43, 81, 62, 49, 50, 68, 63, 62, 64, 46, 54, 95, 70, 52, 81, 70, 66, 66, 98, 52, 67, 75, 83, 73, 72, 82, 88, 113, 79, 43, 74, 61, 73, 53, 47, 49, 60, 63, 44, 92, 55, 59, 71, 86, 61, 63, 66, 76, 60, 72, 86, 65, 58, 77, 63, 62, 43, 61, 80, 47, 72, 56, 64, 63, 64, 73, 52, 68, 82, 60, 51, 55, 60, 51, 90, 76, 66, 71, 69, 71, 57, 114, 64, 65, 56, 75, 60, 61, 62, 75, 50, 58, 59, 71, 54, 49, 49, 62, 63, 70, 83, 79, 49, 48, 64, 70, 59, 59, 91, 54, 62, 68, 64, 70, 80, 62, 69, 54, 67, 58, 71, 59, 47, 52, 69, 69, 68, 69, 59, 74, 73, 46, 70, 86, 66, 47, 68, 55, 57, 84, 72, 77, 49, 69, 61, 61, 56, 52, 91, 57, 62, 55, 71, 65, 62, 66, 60, 64, 65, 64, 73, 66, 85, 59, 50, 81, 54, 68, 56, 50, 61, 51, 70, 74, 57, 56, 74, 54, 69, 69, 48, 72, 62, 62, 73, 67, 71, 55, 65, 77, 70, 83, 53, 63, 76, 86, 60, 53, 77, 54, 62, 61, 72, 75, 63, 63, 63, 68, 74, 67, 48, 72, 68, 58, 55, 48, 55, 72, 57, 51, 105, 58, 62, 73, 54, 64, 81, 68, 66, 99, 54, 57, 54, 66, 60, 60, 81, 75, 71, 58, 75, 44, 64, 125, 61, 55, 86, 61, 74, 52, 54, 74, 67, 65, 66, 68, 64, 58, 85, 73, 74, 71, 63, 47, 104, 67, 60, 66, 57, 63, 53, 54, 71, 66, 61, 82, 118, 83, 56, 65, 57, 59, 73, 65, 82, 53, 56, 54, 64, 49, 58, 58, 51, 89, 88, 49, 75, 67, 56, 63, 77, 57, 65, 63, 59, 52, 48, 103, 67, 78, 51, 52, 49, 62, 69, 86, 56, 65, 77, 93, 59, 81, 53, 48, 68, 57, 65, 69, 56, 58, 57, 76, 78, 65, 51, 51, 83, 59, 57, 54, 58, 63, 59, 53, 75, 54, 64, 160, 79, 63, 109, 50, 58, 59, 58, 65, 54, 61, 61, 46, 56, 77, 71, 61, 56, 64, 60, 58, 60, 80, 57, 73, 66, 85, 53, 57, 73, 85, 63, 80, 56, 93, 89, 62, 75, 51, 54, 33, 68, 68, 70, 62, 69, 86, 57, 66, 94, 58, 54, 37, 63, 84, 74, 48, 67, 52, 58, 50, 62, 56, 61, 69, 55, 63, 68, 57, 45, 61, 65, 56, 65, 61, 60, 66, 65, 71, 62, 58, 63, 72, 66, 90, 74, 59, 77, 67, 64, 144, 46, 86, 73, 76, 65, 89, 93, 60, 58, 58, 68, 116, 71, 68, 97, 56, 70, 64, 69, 61, 72, 34, 60, 65, 70, 65, 64, 76, 67, 64, 81, 98, 47, 99, 67, 126, 42, 56, 50, 60, 76, 38, 73, 61, 84, 83, 81, 54, 58, 54, 63, 59, 58, 61, 62, 91, 41, 80, 84, 73, 43, 61, 78, 54, 65, 52, 63, 73, 116, 61, 59, 59, 61, 63, 67, 71, 66, 50, 71, 50, 72, 65, 62, 71, 47, 70, 72, 63, 49, 55, 104, 66, 58, 58, 56, 69, 76, 53, 61, 57, 68, 71, 94, 69, 63, 61, 68, 61, 69, 59, 74, 73, 72, 54, 85, 52, 94, 74, 67, 78, 61, 75, 61, 58, 59, 51, 58, 68, 47, 61, 128, 64, 55, 88, 73, 57, 61, 57, 63, 70, 58, 68, 75, 102, 73, 68, 85, 56, 72, 61, 55, 53, 59, 75, 107, 69, 91, 63, 49, 92, 60, 64, 47, 81, 63, 71, 129, 75, 53, 56, 64, 64, 57, 65, 74, 54, 78, 58, 56, 66, 71, 51, 84, 59, 62, 63, 59, 60, 63, 70, 98, 93, 61, 72, 61, 53, 74, 60, 66, 66, 63, 55, 72, 61, 49, 69, 72, 58, 62, 80, 59, 62, 53, 52, 65, 63, 68, 70, 62, 52, 51, 65, 90, 50, 63, 63, 72, 56, 74, 57, 75, 72, 56, 93, 54, 81, 65, 56, 54, 50, 54, 60, 63, 48, 75, 59, 77, 51, 98, 74, 53, 78, 75, 85, 82, 75, 67, 75, 60, 58, 54, 68, 79, 57, 102, 73, 51, 58, 45, 63, 51, 50, 56, 142, 53, 64, 65, 48, 67, 62, 75, 55, 58, 43, 99, 72, 65, 83, 86, 63, 71, 78, 55, 55, 79, 67, 86, 44, 54, 99, 57, 53, 86, 72, 56, 63, 79, 57, 60, 60, 79, 77, 65, 58, 67, 51, 62, 58, 84, 67, 48, 71, 52, 61, 96, 62, 116, 70, 51, 76, 62, 72, 64, 65, 59, 54, 54, 66, 73, 68, 53, 78, 42, 79, 85, 59, 61, 66, 76, 49, 59, 81, 55, 64, 61, 39, 54, 55, 54, 56, 70, 83, 109, 124, 50, 98, 85, 70, 71, 65, 54, 103, 60, 58, 81, 63, 67, 56, 44, 60, 67, 61, 82, 58, 75, 64, 55, 54, 82, 87, 37, 53, 95, 80, 65, 63, 54, 54, 53, 58, 91, 64, 52, 48, 89, 67, 64, 68, 92, 66, 50, 66, 46, 36, 57, 64, 58, 57, 57, 92, 68, 69, 51, 51, 142, 55, 63, 57, 86, 53, 52, 68, 92, 44, 52, 76, 55, 55, 71, 81, 42, 67, 70, 66, 86, 50, 58, 90, 63, 74, 52, 64, 72, 77, 75, 77, 66, 58, 59, 63, 94, 64, 57, 64, 63, 51, 85, 55, 43, 61, 58, 65, 64, 58, 54, 72, 53, 97, 54, 56, 61, 85, 58, 73, 70, 58, 81, 79, 85, 60, 70, 59, 83, 64, 64, 85, 36, 68, 59, 59, 65, 57, 80, 68, 76, 75, 57, 53, 76, 57, 68, 84, 47, 83, 51, 52, 67, 55, 55, 65, 92, 65, 56, 129, 64, 57, 52, 74, 62, 55, 31, 80, 55, 72, 57, 65, 98, 71, 54, 75, 73, 64, 48, 59, 65, 56, 68, 61, 60, 86, 58, 51, 62, 44, 66, 88, 56, 62, 64, 37, 62, 82, 59, 49, 75, 52, 98, 56, 50, 52, 50, 86, 86, 46, 96, 71, 65, 86, 60, 84, 47, 69, 106, 64, 75, 57, 68, 60, 87, 62, 63, 55, 59, 64, 68, 91, 73, 61, 63, 72, 68, 58, 84, 44, 70, 95, 62, 72, 75, 65, 60, 97, 104, 60, 71, 75, 66, 62, 91, 63, 62, 51, 59, 71, 54, 77, 79, 87, 62, 54, 50, 79, 84, 83, 70, 111, 84, 70, 60, 55, 58, 63, 55, 58, 62, 50, 86, 53, 64, 48, 52, 30, 75, 65, 52, 58, 68, 60, 70, 60, 64, 57, 50, 75, 65, 48, 58, 72, 73, 85, 66, 47, 80, 102, 63, 61, 70, 56, 59, 85, 53, 97, 56, 38, 73, 104, 55, 67, 81, 73, 85, 70, 57, 52, 76, 69, 61, 71, 54, 79, 70, 60, 97, 54, 79, 71, 68, 54, 92, 62, 51, 55, 83, 71, 76, 89, 56, 38, 59, 69, 71, 78, 64, 45, 76, 59, 106, 33, 69, 93, 49, 65, 66, 62, 99, 74, 67, 48, 66, 71, 65, 56, 59, 93, 66, 99, 83, 54, 58, 69, 68, 67, 75, 75, 65, 56, 83, 97, 82, 80, 65, 73, 52, 76, 72, 72, 72, 75, 58, 76, 73, 54, 66, 56, 63, 61, 86, 59, 81, 63, 59, 63, 62, 60, 64, 57, 86, 51, 80, 74, 80, 70, 43, 49, 61, 82, 54, 56, 68, 60, 62, 57, 77, 70, 73, 72, 54, 61, 48, 70, 70, 79, 62, 49, 68, 99, 51, 60, 79, 75, 66, 67, 55, 51, 70, 71, 49, 62, 56, 51, 55, 53, 55, 57, 80, 70, 86, 56, 76, 62, 76, 46, 73, 74, 72, 76, 77, 67, 65, 47, 56, 70, 81, 69, 72, 74, 76, 54, 58, 68, 99, 44, 73, 53, 49, 63, 55, 62, 88, 70, 42, 82, 57, 61, 53, 57, 71, 51, 49, 56, 108, 103, 60, 84, 81, 72, 57, 86, 67, 68, 50, 73, 63, 81, 68, 49, 78, 49, 66, 53, 67, 47, 65, 49, 103, 63, 61, 68, 32, 58, 75, 62, 60, 54, 43, 63, 60, 77, 76, 67, 36, 66, 64, 67, 90, 49, 81, 65, 57, 51, 62, 51, 88, 66, 67, 52, 68, 54, 84, 82, 85, 76, 70, 65, 57, 63, 115, 62, 47, 54, 96, 53, 71, 115, 51, 44, 73, 87, 61, 59, 71, 58, 69, 64, 47, 56, 79, 70, 60, 101, 54, 78, 72, 83, 83, 59, 100, 72, 60, 80, 77, 59, 77, 50, 96, 76, 30, 80, 60, 71, 59, 87, 65, 82, 83, 79, 58, 92, 63, 57, 51, 70, 65, 51, 60, 81, 61, 51, 72, 58, 69, 63, 49, 60, 52, 71, 71, 74, 39, 82, 57, 50, 63, 67, 62, 53, 58, 61, 55, 80, 73, 67, 72, 51, 57, 87, 54, 71, 63, 56, 58, 66, 82, 72, 68, 60, 46, 75, 59, 56, 79, 65, 53, 50, 72, 76, 67, 86, 66, 61, 65, 59, 87, 42, 63, 71, 79, 74, 51, 57, 38, 59, 51, 69, 98, 69, 62, 74, 54, 39, 113, 53, 51, 57, 42, 111, 90, 54, 70, 86, 67, 63, 56, 69, 61, 71, 70, 53, 64, 68, 89, 45, 44, 80, 48, 66, 59, 86, 80, 57, 66, 49, 53, 53, 81, 51, 61, 66, 66, 82, 78, 51, 61, 62, 48, 79, 66, 61, 76, 49, 82, 63, 56, 127, 70, 41, 59, 72, 61, 58, 58, 64, 84, 64, 78, 52, 52, 56, 53, 48, 76, 61, 66, 81, 54, 47, 73, 74, 68, 62, 77, 58, 65, 87, 61, 63, 41, 72, 40, 80, 78, 58, 81, 48, 86, 54, 76, 82, 79, 73, 67, 70, 92, 54, 74, 70, 57, 57, 56, 53, 73, 57, 65, 61, 51, 71, 67, 53, 64, 92, 46, 53, 75, 57, 62, 63, 90, 77, 80, 71, 69, 85, 72, 83, 75, 81, 55, 45, 76, 45, 64, 80, 45, 70, 67, 59, 54, 56, 59, 75, 73, 74, 84, 62, 69, 81, 46, 64, 73, 63, 62, 56, 60, 61, 82, 88, 84, 67, 54, 38, 96, 66, 57, 60, 46, 57, 75, 79, 46, 77, 68, 64, 61, 63, 56, 67, 69, 58, 68, 74, 63, 95, 65, 68, 62, 68, 64, 107, 92, 132, 88, 74, 90, 74, 67, 81, 99, 49, 65, 67, 65, 69, 60, 88, 59, 54, 72, 49, 43, 48, 60, 81, 65, 69, 93, 52, 52, 67, 57, 49, 70, 63, 88, 56, 78, 72, 83, 70, 56, 59, 64, 52, 59, 72, 57, 70, 58, 76, 72, 57, 86, 40, 56, 60, 47, 63, 52, 56, 53, 76, 69, 81, 64, 62, 66, 103, 56, 70, 78, 70, 80, 88, 60, 52, 50, 53, 79, 68, 53, 93, 71, 73, 51, 66, 55, 50, 59, 81, 66, 50, 52, 58, 68, 81, 53, 56, 63, 106, 57, 49, 41, 80, 46, 61, 63, 69, 79, 63, 79, 60, 57, 40, 88, 64, 55, 65, 60, 59, 71, 70, 53, 69, 51, 78, 46, 69, 70, 76, 83, 60, 59, 65, 56, 56, 72, 52, 62, 49, 61, 77, 61, 66, 56, 70, 52, 71, 62, 49, 74, 93, 62, 77, 49, 50, 73, 54, 43, 63, 55, 46, 79, 69, 39, 65, 51, 60, 73, 46, 63, 97, 73, 72, 72, 84, 73, 65, 69, 60, 68, 67, 59, 76, 77, 72, 86, 70, 62, 59, 98, 59, 62, 56, 96, 70, 72, 72, 72, 62, 79, 47, 67, 63, 74, 66, 59, 90, 52, 67, 61, 63, 54, 55, 58, 73, 62, 77, 59, 78, 55, 62, 56, 77, 59, 68, 60, 105, 50, 77, 82, 89, 65, 50, 56, 53, 80, 55, 54, 92, 75, 52, 78, 58, 69, 64, 68, 63, 61, 46, 46, 66, 33, 93, 49, 57, 69, 56, 109, 61, 70, 61, 67, 54, 55, 75, 57, 69, 53, 45, 66, 115, 80, 65, 58, 68, 70, 52, 62, 68, 77, 97, 76, 46, 49, 54, 55, 78, 84, 62, 73, 81, 62, 44, 56, 76, 75, 54, 71, 68, 53, 92, 58, 49, 63, 61, 72, 81, 57, 66, 62, 107, 95, 52, 56, 58, 52, 52, 70, 93, 64, 57, 76, 64, 45, 111, 50, 49, 99, 64, 53, 92, 71, 75, 70, 65, 62, 67, 80, 62, 83, 55, 64, 53, 49, 69, 88, 71, 67, 61, 104, 48, 67, 69, 64, 48, 61, 70, 72, 84, 71, 62, 65, 72, 74, 58, 64, 57, 83, 60, 66, 71, 99, 86, 85, 61, 80, 50, 60, 67, 59, 50, 71, 60, 51, 63, 54, 47, 60, 60, 49, 60, 51, 75, 63, 63, 114, 56, 75, 48, 70, 59, 54, 57, 59, 60, 56, 100, 81, 69, 65, 65, 66, 86, 67, 59, 68, 129, 53, 61, 65, 74, 70, 71, 85, 67, 65, 71, 64, 67, 58, 46, 68, 61, 54, 73, 102, 72, 59, 88, 74, 56, 84, 72, 76, 54, 58, 57, 89, 68, 80, 65, 49, 54, 68, 67, 54, 84, 57, 55, 76, 65, 74, 71, 66, 70, 44, 92, 72, 79, 65, 73, 89, 59, 54, 71, 65, 62, 59, 47, 71, 81, 90, 47, 83, 63, 61, 51, 49, 77, 82, 47, 100, 51, 111, 69, 81, 77, 47, 72, 67, 68, 51, 71, 63, 60, 73, 87, 54, 82, 65, 65, 80, 62, 69, 54, 72, 54, 79, 55, 64, 70, 64, 64, 92, 79, 55, 55, 67, 71, 57, 74, 52, 51, 70, 70, 64, 62, 51, 69, 62, 59, 38, 54, 62, 92, 43, 76, 64, 51, 59, 64, 54, 76, 38, 64, 61, 53, 77, 46, 48, 64, 64, 72, 89, 98, 45, 47, 70, 105, 56, 75, 62, 67, 36, 67, 71, 85, 89, 53, 62, 52, 61, 74, 90, 43, 82, 54, 73, 66, 70, 69, 72, 53, 70, 87, 61, 41, 47, 60, 65, 63, 69, 61, 100, 75, 51, 65, 53, 100, 56, 74, 65, 62, 67, 60, 67, 55, 50, 75, 70, 105, 66, 53, 53, 58, 64, 61, 62, 47, 44, 71, 81, 59, 70, 71, 74, 95, 74, 59, 69, 56, 63, 68, 56, 57, 76, 49, 84, 89, 57, 82, 71, 66, 73, 57, 61, 59, 77, 65, 87, 64, 57, 85, 59, 134, 63, 83, 66, 85, 53, 80, 83, 61, 69, 80, 68, 75, 70, 64, 69, 58, 62, 82, 87, 50, 45, 56, 69, 51, 72, 58, 71, 78, 60, 63, 70, 55, 60, 55, 67, 87, 53, 66, 70, 62, 72, 60, 71, 65, 67, 63, 62, 67, 61, 65, 50, 121, 65, 68, 76, 82, 60, 49, 60, 53, 58, 98, 58, 65, 59, 55, 51, 60, 56, 61, 80, 68, 71, 51, 49, 43, 65, 66, 47, 59, 88, 40, 48, 37, 68, 85, 55, 70, 77, 79, 69, 59, 63, 67, 57, 48, 50, 72, 76, 57, 74, 61, 52, 39, 65, 47, 59, 59, 74, 40, 77, 82, 57, 86, 72, 58, 66, 55, 67, 77, 85, 75, 77, 74, 48, 47, 56, 66, 53, 55, 55, 70, 80, 62, 70, 49, 86, 77, 63, 52, 67, 61, 56, 60, 70, 72, 95, 77, 63, 55, 77, 59, 58, 80, 81, 46, 45, 84, 95, 75, 54, 103, 63, 48, 103, 44, 75, 64, 59, 75, 32, 76, 57, 73, 55, 86, 62, 64, 62, 47, 70, 68, 75, 62, 59, 71, 54, 73, 44, 90, 77, 70, 54, 73, 78, 72, 129, 56, 54, 45, 55, 48, 46, 55, 65, 39, 72, 66, 75, 71, 51, 97, 73, 78, 45, 67, 52, 72, 68, 61, 69, 72, 74, 61, 57, 69, 89, 57, 50, 80, 55, 56, 57, 82, 88, 75, 49, 77, 78, 51, 50, 69, 70, 67, 58, 76, 57, 62, 48, 64, 68, 78, 98, 65, 81, 70, 80, 70, 49, 53, 55, 87, 75, 55, 65, 66, 53, 41, 59, 66, 42, 61, 54, 58, 69, 76, 68, 50, 81, 58, 70, 63, 101, 73, 79, 72, 78, 82, 63, 61, 69, 60, 63, 63, 68, 63, 74, 60, 61, 44, 71, 73, 56, 47, 91, 106, 55, 62, 84, 70, 64, 60, 70, 42, 62, 69, 55, 46, 54, 65, 49, 58, 53, 52, 69, 57, 57, 75, 43, 71, 75, 81, 62, 76, 56, 53, 78, 67, 56, 64, 67, 54, 55, 77, 62, 72, 39, 82, 70, 50, 95, 74, 75, 52, 63, 53, 61, 88, 63, 52, 53, 51, 60, 73, 54, 76, 76, 60, 67, 71, 50, 65, 57, 57, 74, 53, 60, 83, 61, 55, 84, 58, 73, 47, 71, 31, 46, 75, 54, 95, 49, 53, 77, 66, 73, 58, 67, 61, 72, 57, 65, 73, 46, 80, 91, 56, 50, 151, 54, 89, 47, 72, 84, 59, 63, 84, 67, 60, 62, 80, 65, 52, 64, 75, 68, 41, 54, 45, 67, 59, 70, 58, 61, 65, 79, 58, 55, 56, 61, 58, 59, 58, 92, 76, 76, 62, 68, 60, 67, 56, 86, 72, 75, 63, 66, 50, 43, 142, 96, 92, 69, 49, 91, 68, 75, 78, 53, 90, 54, 84, 81, 74, 60, 72, 58, 47, 56, 70, 59, 68, 61, 68, 62, 84, 59, 56, 110, 63, 48, 68, 55, 72, 65, 57, 79, 69, 53, 66, 54, 47, 51, 69, 82, 64, 65, 79, 68, 56, 60, 74, 58, 52, 53, 72, 82, 69, 71, 50, 70, 81, 57, 62, 55, 64, 70, 65, 60, 52, 47, 64, 65, 58, 77, 71, 65, 70, 65, 73, 53, 66, 80, 60, 57, 56, 65, 55, 67, 52, 73, 86, 104, 75, 58, 63, 69, 63, 45, 73, 80, 87, 61, 83, 59, 99, 54, 65, 76, 64, 61, 52, 46, 61, 52, 82, 47, 55, 87, 78, 65, 78, 67, 53, 47, 63, 57, 94, 25, 59, 72, 104, 60, 72, 75, 84, 55, 61, 65, 64, 72, 60, 75, 57, 52, 64, 51, 80, 45, 89, 61, 46, 96, 73, 61, 69, 64, 76, 54, 42, 40, 44, 48, 69, 71, 58, 63, 76, 81, 35, 62, 54, 69, 56, 98, 68, 88, 82, 61, 52, 52, 65, 63, 68, 59, 79, 79, 89, 81, 67, 67, 65, 77, 63, 68, 85, 65, 63, 63, 108, 90, 73, 69, 51, 51, 58, 60, 51, 99, 75, 59, 66, 61, 61, 70, 81, 80, 52, 82, 55, 61, 79, 81, 97, 106, 58, 52, 52, 52, 65, 49, 49, 60, 76, 132, 45, 53, 103, 89, 48, 83, 73, 54, 56, 86, 50, 55, 77, 74, 65, 78, 48, 57, 63, 78, 89, 38, 62, 52, 62, 95, 70, 47, 50, 69, 49, 73, 48, 59, 51, 49, 64, 75, 69, 69, 56, 71, 84, 68, 81, 65, 70, 56, 89, 76, 66, 91, 51, 73, 79, 80, 79, 69, 73, 82, 54, 51, 56, 43, 64, 59, 60, 77, 58, 55, 54, 68, 67, 60, 68, 60, 64, 65, 84, 73, 111, 55, 144, 98, 62, 65, 64, 64, 50, 111, 54, 54, 68, 63, 81, 73, 88, 51, 58, 62, 61, 70, 65, 75, 60, 62, 54, 41, 57, 66, 90, 71, 47, 58, 60, 68, 65, 60, 55, 52, 65, 89, 66, 68, 54, 69, 67, 61, 52, 48, 63, 61, 87, 46, 82, 75, 63, 59, 67, 84, 38, 86, 56, 49, 84, 68, 54, 59, 72, 67, 56, 58, 57, 80, 59, 80, 50, 72, 58, 77, 64, 57, 62, 64, 91, 52, 51, 63, 66, 50, 67, 48, 59, 90, 58, 82, 70, 60, 59, 93, 64, 52, 74, 77, 74, 60, 62, 73, 72, 59, 56, 116, 71, 53, 114, 56, 81, 52, 78, 71, 52, 60, 64, 80, 94, 47, 71, 61, 79, 90, 81, 58, 66, 60, 66, 67, 63, 63, 85, 53, 60, 76, 71, 51, 82, 63, 47, 80, 66, 64, 126, 64, 61, 64, 66, 56, 73, 76, 63, 70, 66, 65, 77, 52, 65, 70, 108, 65, 74, 53, 55, 43, 61, 52, 74, 80, 71, 55, 72, 68, 84, 48, 53, 79, 57, 65, 74, 58, 64, 71, 52, 50, 74, 46, 56, 58, 64, 67, 54, 88, 80, 56, 67, 98, 72, 66, 101, 51, 69, 61, 64, 61, 70, 54, 60, 50, 53, 61, 57, 64, 43, 79, 53, 42, 92, 50, 102, 75, 49, 70, 90, 45, 72, 46, 60, 62, 67, 50, 77, 52, 54, 67, 63, 59, 61, 61, 49, 58, 53, 95, 57, 89, 88, 75, 78, 57, 53, 50, 62, 58, 76, 70, 66, 39, 59, 59, 60, 137, 62, 55, 47, 69, 53, 70, 58, 63, 48, 59, 67, 60, 69, 59, 62, 65, 89, 52, 85, 56, 75, 58, 62, 52, 45, 55, 95, 74, 81, 60, 67, 72, 56, 71, 48, 60, 69, 36, 66, 54, 68, 66, 43, 68, 54, 61, 73, 88, 42, 46, 67, 64, 55, 55, 69, 57, 83, 57, 61, 90, 65, 66, 134, 79, 52, 45, 70, 84, 51, 69, 46, 68, 94, 59, 71, 54, 48, 75, 61, 71, 56, 71, 78, 50, 57, 55, 64, 56, 64, 76, 70, 58, 57, 78, 73, 71, 91, 71, 64, 76, 67, 61, 61, 50, 101, 54, 70, 71, 48, 55, 72, 66, 60, 56, 74, 55, 60, 71, 75, 58, 90, 86, 51, 65, 50, 68, 49, 111, 68, 61, 51, 68, 96, 55, 64, 58, 52, 82, 68, 41, 136, 68, 50, 68, 72, 77, 49, 66, 55, 67, 77, 68, 54, 59, 74, 78, 79, 63, 53, 48, 29, 60, 63, 102, 59, 70, 68, 57, 74, 69, 65, 43, 46, 60, 66, 112, 52, 64, 60, 45, 78, 58, 55, 62, 57, 57, 73, 65, 72, 86, 125, 53, 73, 82, 74, 80, 68, 120, 57, 113, 54, 42, 61, 67, 66, 70, 91, 85, 53, 63, 59, 62, 72, 49, 50, 67, 71, 56, 56, 58, 62, 65, 60, 46, 72, 67, 76, 45, 66, 67, 65, 62, 83, 70, 127, 57, 62, 66, 65, 63, 45, 76, 66, 66, 146, 71, 65, 72, 60, 43, 56, 50, 73, 62, 51, 53, 51, 70, 85, 72, 52, 79, 73, 63, 103, 62, 47, 64, 73, 56, 66, 91, 51, 74, 63, 53, 68, 44, 64, 52, 55, 84, 63, 80, 55, 81, 57, 74, 80, 60, 63, 82, 57, 55, 60, 54, 89, 68, 66, 91, 61, 89, 77, 66, 65, 62, 60, 70, 68, 66, 50, 68, 62, 77, 63, 72, 62, 55, 67, 63, 76, 53, 71, 62, 59, 55, 74, 53, 65, 46, 81, 80, 64, 71, 65, 94, 58, 65, 63, 65, 60, 58, 66, 58, 76, 56, 58, 56, 58, 77, 72, 77, 54, 47, 58, 76, 70, 75, 59, 84, 65, 54, 60, 66, 75, 66, 64, 69, 62, 80, 93, 63, 98, 101, 79, 115, 44, 83, 51, 56, 67, 64, 137, 47, 78, 85, 60, 70, 58, 79, 54, 64, 48, 63, 64, 63, 59, 62, 89, 71, 57, 55, 93, 64, 74, 61, 61, 78, 50, 59, 59, 47, 73, 63, 76, 73, 67, 76, 46, 69, 71, 80, 57, 70, 72, 60, 61, 56, 55, 57, 72, 52, 69, 70, 51, 70, 73, 63, 68, 64, 89, 46, 57, 62, 80, 73, 64, 66, 81, 60, 63, 53, 57, 83, 70, 64, 57, 55, 76, 52, 65, 55, 57, 58, 67, 59, 56, 47, 62, 84, 79, 56, 80, 58, 80, 76, 70, 58, 55, 68, 90, 146, 70, 70, 53, 59, 50, 68, 57, 79, 70, 55, 37, 76, 57, 62, 66, 57, 72, 58, 53, 52, 53, 62, 51, 58, 72, 71, 57, 61, 78, 68, 61, 62, 84, 80, 61, 59, 47, 74, 59, 75, 46, 69, 60, 73, 47, 54, 58, 38, 63, 66, 53, 59, 93, 72, 66, 60, 72, 71, 61, 58, 59, 63, 95, 74, 75, 64, 48, 80, 72, 51, 70, 50, 43, 62, 65, 66, 84, 62, 55, 54, 68, 56, 68, 79, 52, 54, 72, 88, 50, 64, 54, 58, 47, 55, 58, 61, 68, 61, 70, 55, 103, 61, 74, 59, 71, 106, 84, 43, 69, 64, 72, 96, 73, 65, 60, 75, 62, 52, 80, 79, 74, 64, 66, 80, 42, 70, 97, 63, 93, 49, 72, 87, 65, 64, 58, 66, 91, 77, 91, 70, 67, 89, 67, 57, 62, 65, 70, 55, 63, 63, 52, 77, 61, 60, 71, 96, 73, 51, 54, 44, 76, 115, 38, 64, 72, 53, 71, 52, 64, 55, 64, 60, 70, 58, 87, 82, 56, 72, 45, 77, 51, 67, 70, 123, 73, 71, 63, 60, 58, 87, 70, 64, 101, 98, 48, 56, 80, 67, 50, 52, 64, 67, 81, 65, 45, 79, 67, 64, 70, 77, 43, 68, 83, 54, 79, 57, 63, 78, 59, 59, 60, 63, 62, 64, 61, 67, 71, 56, 42, 68, 69, 61, 58, 64, 85, 81, 75, 59, 71, 45, 52, 55, 62, 69, 69, 53, 42, 75, 59, 73, 39, 77, 70, 68, 57, 61, 46, 63, 56, 63, 49, 43, 58, 74, 64, 82, 77, 83, 70, 74, 61, 46, 85, 79, 60, 70, 66, 83, 57, 62, 48, 45, 69, 54, 76, 63, 89, 74, 67, 69, 54, 41, 92, 43, 53, 69, 68, 80, 52, 84, 69, 48, 67, 66, 62, 55, 43, 65, 45, 59, 82, 74, 73, 64, 80, 46, 79, 77, 54, 52, 92, 68, 57, 53, 70, 43, 56, 53, 64, 82, 61, 69, 68, 97, 66, 91, 70, 52, 61, 72, 61, 43, 63, 79, 54, 49, 60, 65, 66, 51, 90, 53, 44, 65, 53, 59, 31, 51, 70, 88, 47, 60, 55, 71, 53, 62, 71, 61, 66, 76, 58, 72, 67, 99, 67, 59, 78, 70, 71, 63, 83, 75, 77, 56, 60, 74, 83, 59, 67, 58, 66, 45, 68, 62, 91, 57, 68, 59, 89, 46, 64, 70, 56, 40, 77, 61, 115, 68, 54, 60, 61, 55, 67, 45, 38, 70, 81, 52, 84, 35, 81, 74, 56, 83, 72, 81, 49, 64, 71, 65, 65, 76, 100, 56, 57, 138, 95, 61, 72, 116, 94, 67, 60, 68, 35, 54, 71, 35, 66, 55, 57, 85, 60, 40, 82, 75, 65, 77, 54, 47, 70, 62, 66, 55, 74, 50, 83, 71, 65, 84, 50, 68, 81, 63, 84, 67, 61, 64, 67, 75, 88, 109, 64, 52, 88, 75, 57, 48, 46, 77, 67, 70, 55, 62, 76, 88, 55, 78, 92, 63, 76, 119, 64, 62, 69, 66, 71, 70, 65, 74, 58, 65, 59, 58, 42, 79, 60, 61, 69, 56, 53, 61, 64, 74, 60, 72, 70, 53, 70, 83, 66, 80, 65, 49, 66, 86, 57, 66, 55, 71, 65, 94, 41, 66, 51, 62, 63, 51, 61, 62, 60, 65, 72, 80, 72, 63, 55, 84, 47, 55, 66, 64, 70, 48, 67, 51, 69, 98, 96, 43, 75, 83, 41, 123, 130, 43, 76, 75, 79, 81, 81, 63, 86, 70, 63, 47, 64, 58, 64, 61, 59, 69, 63, 79, 58, 55, 50, 97, 63, 74, 92, 72, 49, 78, 95, 76, 65, 53, 68, 52, 84, 70, 65, 63, 99, 61, 84, 50, 77, 79, 116, 70, 49, 73, 87, 63, 70, 57, 41, 57, 60, 41, 68, 54, 81, 62, 68, 66, 58, 92, 64, 63, 41, 49, 43, 74, 60, 89, 56, 84, 85, 75, 54, 48, 67, 54, 65, 69, 61, 74, 64, 89, 51, 73, 88, 64, 55, 55, 65, 68, 79, 68, 88, 74, 69, 70, 72, 64, 39, 42, 63, 57, 59, 59, 93, 57, 61, 72, 58, 53, 99, 61, 52, 52, 83, 67, 66, 66, 78, 59, 120, 54, 59, 62, 47, 70, 79, 85, 60, 41, 54, 70, 58, 69, 40, 56, 60, 89, 60, 67, 75, 74, 66, 53, 88, 62, 62, 84, 96, 66, 49, 72, 71, 97, 60, 70, 63, 67, 53, 90, 64, 62, 75, 77, 65, 56, 51, 83, 55, 118, 73, 69, 66, 69, 82, 78, 53, 62, 76, 83, 58, 64, 86, 71, 61, 63, 48, 60, 54, 76, 61, 55, 59, 38, 66, 42, 62, 41, 62, 93, 100, 75, 64, 58, 73, 73, 55, 56, 45, 65, 69, 57, 56, 62, 75, 52, 75, 70, 55, 79, 86, 100, 87, 59, 78, 71, 73, 86, 61, 59, 82, 88, 43, 85, 58, 60, 69, 81, 46, 70, 60, 50, 62, 68, 85, 52, 73, 66, 57, 50, 64, 124, 69, 76, 66, 51, 61, 87, 63, 49, 63, 48, 69, 83, 76, 61, 43, 48, 63, 95, 66, 54, 62, 32, 63, 52, 50, 74, 61, 46, 59, 54, 85, 57, 63, 60, 66, 53, 97, 42, 74, 72, 107, 82, 74, 73, 58, 64, 75, 56, 92, 41, 47, 57, 54, 50, 92, 59, 54, 71, 71, 77, 80, 63, 84, 59, 52, 70, 59, 79, 93, 68, 90, 86, 90, 66, 78, 64, 64, 51, 110, 70, 55, 51, 54, 72, 49, 45, 59, 43, 35, 70, 80, 54, 61, 55, 61, 70, 93, 83, 66, 102, 60, 64, 75, 64, 77, 69, 59, 56, 48, 47, 49, 58, 62, 67, 57, 39, 68, 61, 76, 61, 120, 81, 48, 69, 63, 71, 67, 78, 61, 65, 62, 53, 85, 62, 62, 73, 61, 55, 95, 69, 61, 62, 64, 89, 57, 63, 79, 77, 73, 64, 48, 72, 59, 71, 83, 62, 62, 47, 64, 54, 79, 68, 68, 60, 58, 59, 54, 87, 82, 76, 93, 51, 84, 84, 74, 73, 104, 51, 66, 67, 67, 80, 67, 66, 71, 52, 64, 60, 54, 90, 36, 72, 60, 70, 77, 61, 62, 66, 57, 56, 74, 59, 64, 58, 62, 94, 64, 44, 50, 50, 70, 68, 58, 81, 66, 76, 61, 62, 69, 62, 58, 62, 67, 65, 78, 78, 70, 78, 71, 64, 73, 54, 71, 74, 72, 68, 55, 64, 72, 63, 53, 51, 61, 90, 48, 60, 48, 69, 70, 54, 59, 50, 66, 71, 72, 55, 66, 58, 59, 71, 78, 67, 111, 65, 68, 68, 48, 47, 68, 77, 50, 59, 57, 40, 55, 70, 80, 64, 57, 59, 55, 62, 64, 65, 83, 67, 62, 81, 78, 67, 68, 53, 67, 44, 63, 53, 60, 76, 67, 58, 54, 59, 67, 58, 50, 64, 58, 75, 54, 59, 60, 56, 58, 165, 63, 90, 81, 66, 61, 52, 62, 56, 77, 57, 39, 68, 85, 78, 51, 68, 74, 61, 83, 62, 64, 47, 56, 51, 64, 77, 57, 57, 66, 65, 70, 82, 64, 74, 90, 61, 69, 73, 53, 69, 58, 69, 65, 69, 51, 67, 72, 55, 63, 55, 76, 66, 74, 64, 58, 58, 65, 67, 64, 71, 73, 63, 61, 73, 86, 63, 81, 59, 55, 98, 59, 99, 60, 62, 76, 76, 61, 57, 55, 62, 62, 86, 69, 109, 63, 70, 54, 46, 64, 63, 91, 64, 63, 91, 49, 76, 77, 57, 48, 53, 71, 62, 82, 65, 51, 65, 54, 60, 59, 64, 73, 65, 66, 91, 65, 69, 44, 63, 88, 62, 63, 63, 82, 43, 62, 52, 60, 51, 46, 69, 53, 84, 61, 80, 90, 80, 53, 72, 66, 66, 65, 61, 64, 60, 29, 51, 64, 58, 73, 63, 65, 70, 53, 60, 61, 48, 73, 63, 56, 74, 74, 59, 51, 80, 51, 52, 53, 84, 70, 70, 51, 64, 73, 80, 50, 66, 63, 77, 60, 79, 62, 71, 71, 96, 71, 74, 55, 64, 63, 48, 60, 67, 49, 73, 78, 67, 55, 56, 52, 69, 65, 61, 66, 63, 68, 70, 61, 50, 87, 58, 74, 66, 70, 60, 72, 76, 74, 55, 44, 60, 63, 57, 73, 70, 53, 56, 65, 44, 86, 63, 66, 47, 62, 60, 62, 44, 52, 64, 82, 53, 76, 42, 85, 49, 61, 72, 48, 66, 62, 79, 63, 55, 57, 53, 75, 52, 67, 60, 104, 81, 50, 57, 52, 55, 63, 50, 62, 78, 60, 59, 51, 65, 54, 52, 62, 68, 65, 64, 49, 63, 63, 62, 81, 62, 53, 46, 64, 59, 50, 87, 81, 81, 59, 68, 67, 75, 107, 61, 90, 70, 51, 54, 60, 83, 72, 73, 59, 57, 48, 77, 76, 70, 60, 66, 50, 73, 53, 68, 71, 43, 58, 65, 71, 55, 57, 79, 68, 55, 64, 68, 68, 76, 58, 87, 63, 69, 79, 63, 57, 77, 46, 68, 47, 66, 81, 34, 58, 71, 38, 50, 48, 59, 53, 65, 76, 62, 49, 46, 85, 64, 53, 54, 71, 67, 73, 68, 62, 73, 80, 79, 61, 66, 66, 64, 50, 60, 63, 67, 60, 79, 50, 68, 62, 56, 61, 58, 55, 76, 63, 86, 54, 72, 58, 86, 81, 56, 66, 67, 53, 90, 64, 58, 56, 42, 79, 66, 72, 47, 70, 62, 68, 83, 64, 69, 62, 68, 89, 61, 51, 68, 57, 66, 67, 75, 79, 70, 75, 68, 60, 82, 105, 83, 91, 48, 53, 74, 79, 56, 64, 49, 70, 64, 67, 73, 68, 68, 79, 56, 104, 74, 63, 86, 79, 73, 73, 105, 63, 79, 59, 67, 75, 71, 56, 67, 77, 69, 69, 73, 60, 48, 68, 86, 65, 65, 76, 78, 57, 62, 60, 73, 71, 67, 66, 51, 59, 91, 75, 57, 68, 84, 70, 72, 89, 118, 64, 74, 63, 65, 63, 63, 52, 60, 52, 65, 83, 88, 97, 64, 108, 97, 85, 73, 60, 78, 50, 70, 62, 66, 42, 62, 66, 70, 63, 85, 53, 80, 65, 54, 68, 70, 62, 62, 41, 59, 79, 72, 67, 62, 74, 58, 42, 69, 58, 86, 55, 45, 65, 72, 64, 53, 69, 78, 59, 76, 70, 69, 60, 54, 60, 58, 62, 55, 52, 71, 59, 74, 63, 75, 62, 56, 57, 64, 42, 64, 64, 83, 103, 74, 60, 77, 57, 73, 72, 69, 109, 57, 51, 63, 60, 41, 56, 51, 70, 60, 67, 52, 92, 85, 63, 60, 73, 54, 69, 62, 51, 47, 89, 77, 53, 71, 84, 73, 79, 42, 59, 67, 68, 72, 61, 61, 56, 70, 76, 65, 43, 54, 70, 35, 68, 78, 62, 56, 53, 48, 59, 41, 69, 73, 53, 65, 85, 87, 67, 50, 68, 57, 89, 92, 58, 61, 75, 57, 63, 57, 82, 87, 68, 69, 52, 63, 70, 99, 50, 58, 76, 55, 65, 67, 65, 83, 80, 61, 66, 68, 53, 58, 69, 55, 55, 59, 73, 71, 90, 65, 53, 68, 59, 53, 61, 43, 42, 59, 72, 66, 50, 59, 67, 59, 65, 62, 82, 141, 59, 38, 54, 102, 66, 63, 62, 72, 84, 60, 77, 66, 53, 54, 63, 63, 73, 94, 64, 75, 70, 66, 63, 67, 67, 63, 56, 51, 88, 65, 59, 63, 84, 83, 42, 63, 82, 50, 72, 58, 90, 73, 56, 76, 83, 73, 71, 59, 72, 61, 61, 64, 57, 51, 50, 53, 48, 62, 52, 74, 72, 56, 63, 45, 87, 67, 63, 82, 61, 66, 66, 66, 62, 63, 74, 77, 48, 36, 80, 60, 50, 53, 58, 55, 66, 71, 67, 67, 68, 77, 60, 41, 82, 67, 65, 95, 66, 68, 71, 58, 89, 74, 86, 65, 65, 75, 66, 55, 55, 84, 70, 96, 65, 63, 73, 66, 55, 69, 73, 73, 55, 70, 81, 86, 69, 60, 61, 63, 57, 62, 70, 54, 110, 52, 41, 59, 102, 64, 76, 75, 81, 70, 52, 59, 70, 57, 64, 69, 81, 75, 57, 67, 87, 85, 55, 70, 98, 57, 64, 58, 63, 59, 89, 49, 28, 51, 73, 77, 70, 70, 67, 53, 66, 60, 65, 81, 74, 75, 69, 40, 72, 60, 75, 72, 83, 60, 69, 53, 70, 44, 51, 69, 78, 68, 58, 76, 57, 57, 66, 86, 44, 45, 53, 68, 71, 67, 67, 57, 75, 75, 68, 74, 58, 83, 64, 99, 50, 67, 81, 72, 71, 68, 80, 60, 60, 69, 58, 70, 57, 59, 61, 62, 126, 56, 64, 53, 60, 62, 70, 92, 71, 83, 81, 68, 65, 57, 52, 125, 62, 69, 78, 36, 67, 55, 91, 62, 55, 76, 52, 75, 81, 70, 38, 57, 57, 58, 66, 63, 55, 59, 66, 84, 54, 62, 77, 67, 88, 70, 70, 62, 58, 81, 58, 82, 78, 58, 63, 89, 65, 65, 75, 70, 90, 81, 63, 71, 57, 76, 59, 71, 64, 62, 63, 73, 64, 69, 78, 96, 82, 59, 75, 67, 53, 55, 60, 74, 56, 70, 45, 67, 107, 62, 60, 72, 75, 53, 71, 119, 60, 70, 65, 53, 83, 60, 60, 61, 56, 79, 70, 56, 66, 82, 75, 68, 54, 65, 74, 51, 66, 61, 70, 57, 38, 73, 69, 91, 49, 94, 70, 76, 76, 95, 47, 57, 77, 87, 62, 57, 68, 72, 58, 51, 56, 56, 73, 70, 63, 69, 78, 57, 59, 90, 49, 74, 61, 73, 72, 63, 40, 52, 64, 66, 57, 62, 60, 73, 48, 33, 39, 77, 60, 47, 67, 45, 61, 65, 65, 70, 76, 70, 72, 64, 91, 53, 51, 98, 73, 102, 67, 67, 64, 76, 58, 54, 66, 70, 84, 71, 47, 52, 53, 66, 55, 68, 62, 51, 67, 76, 65, 47, 77, 60, 39, 55, 84, 95, 51, 63, 80, 72, 64, 72, 67, 73, 58, 65, 63, 66, 66, 60, 54, 46, 61, 60, 62, 82, 83, 55, 64, 70, 85, 61, 64, 55, 58, 82, 64, 71, 80, 89, 52, 59, 63, 50, 66, 58, 53, 63, 40, 71, 70, 67, 63, 117, 62, 64, 58, 68, 61, 57, 74, 111, 52, 69, 86, 42, 65, 75, 67, 65, 66, 50, 69, 65, 67, 75, 67, 48, 85, 64, 54, 48, 92, 80, 86, 70, 43, 76, 55, 46, 71, 67, 75, 97, 70, 57, 62, 57, 65, 66, 58, 57, 87, 60, 59, 68, 61, 94, 48, 61, 55, 67, 55, 49, 52, 61, 62, 102, 75, 72, 65, 62, 71, 50, 53, 64, 73, 66, 37, 106, 65, 49, 62, 79, 108, 71, 79, 57, 63, 57, 89, 75, 58, 93, 58, 51, 56, 57, 78, 85, 77, 74, 86, 73, 62, 58, 63, 57, 58, 60, 71, 78, 67, 59, 49, 48, 63, 58, 88, 68, 59, 56, 45, 69, 51, 94, 61, 51, 81, 66, 77, 133, 60, 59, 63, 71, 57, 58, 62, 75, 72, 62, 76, 64, 44, 56, 53, 68, 55, 55, 59, 79, 75, 55, 71, 87, 75, 41, 55, 75, 67, 67, 80, 51, 74, 86, 61, 77, 49, 70, 63, 73, 55, 70, 70, 62, 65, 61, 58, 64, 58, 63, 52, 64, 48, 59, 81, 74, 69, 64, 60, 98, 53, 50, 85, 59, 59, 58, 67, 57, 36, 69, 63, 67, 63, 60, 49, 63, 60, 50, 61, 77, 57, 73, 49, 67, 55, 55, 60, 78, 50, 56, 66, 53, 62, 58, 61, 57, 48, 74, 54, 52, 61, 67, 50, 77, 59, 123, 60, 59, 52, 85, 62, 89, 41, 60, 61, 55, 63, 70, 71, 89, 78, 100, 72, 74, 76, 58, 66, 91, 75, 53, 52, 57, 48, 80, 70, 81, 69, 70, 89, 59, 64, 101, 57, 67, 47, 42, 103, 63, 77, 58, 68, 54, 51, 64, 63, 77, 52, 86, 68, 54, 65, 70, 73, 71, 62, 93, 54, 86, 69, 73, 57, 56, 58, 59, 56, 83, 56, 74, 92, 65, 38, 70, 66, 71, 57, 68, 74, 54, 41, 79, 58, 66, 76, 64, 68, 75, 52, 49, 95, 66, 68, 65, 76, 45, 77, 63, 39, 57, 65, 69, 40, 47, 49, 51, 72, 82, 68, 61, 73, 67, 75, 76, 61, 58, 73, 76, 68, 68, 59, 69, 81, 80, 55, 85, 66, 69, 75, 64, 80, 57, 37, 84, 71, 56, 55, 75, 62, 77, 68, 57, 76, 76, 97, 62, 69, 53, 70, 67, 39, 98, 69, 67, 61, 62, 79, 66, 57, 40, 82, 77, 80, 45, 102, 53, 63, 68, 48, 56, 51, 56, 66, 55, 74, 68, 55, 88, 76, 48, 67, 63, 52, 47, 64, 69, 55, 49, 56, 58, 58, 60, 49, 54, 59, 50, 72, 84, 63, 72, 75, 57, 73, 70, 91, 77, 93, 58, 68, 52, 60, 99, 69, 52, 57, 71, 50, 52, 51, 69, 73, 61, 83, 76, 58, 57, 63, 82, 78, 96, 61, 57, 64, 50, 87, 87, 70, 71, 53, 111, 52, 50, 89, 67, 85, 116, 82, 89, 63, 55, 68, 74, 48, 51, 68, 40, 100, 42, 50, 53, 59, 88, 52, 55, 68, 48, 49, 68, 67, 58, 50, 53, 68, 89, 61, 64, 48, 51, 72, 79, 61, 71, 59, 71, 55, 77, 77, 55, 87, 77, 70, 63, 60, 55, 79, 81, 46, 50, 73, 55, 63, 64, 57, 79, 49, 81, 48, 82, 76, 81, 66, 65, 77, 74, 50, 69, 42, 52, 66, 47, 89, 101, 62, 101, 94, 51, 55, 60, 65, 65, 55, 72, 53, 33, 81, 86, 58, 77, 71, 48, 54, 58, 88, 75, 59, 60, 55, 77, 68, 77, 72, 102, 70, 48, 62, 76, 55, 71, 54, 63, 69, 52, 57, 62, 69, 88, 62, 62, 65, 71, 68, 59, 57, 55, 76, 77, 55, 72, 105, 74, 84, 72, 56, 61, 95, 54, 88, 56, 42, 69, 51, 56, 47, 71, 69, 48, 57, 58, 46, 75, 73, 68, 59, 57, 144, 62, 45, 72, 83, 38, 67, 62, 53, 61, 77, 55, 43, 63, 86, 59, 66, 58, 63, 94, 68, 71, 72, 70, 57, 60, 56, 62, 57, 64, 77, 87, 54, 55, 75, 60, 60, 60, 46, 70, 65, 49, 46, 42, 49, 69, 69, 62, 68, 57, 76, 73, 74, 70, 80, 46, 50, 47, 76, 50, 73, 72, 71, 44, 62, 66, 36, 66, 67, 68, 59, 67, 68, 65, 46, 58, 62, 60, 62, 63, 76, 56, 66, 56, 63, 66, 55, 84, 52, 91, 58, 58, 91, 49, 88, 75, 72, 50, 67, 72, 100, 61, 42, 83, 79, 58, 37, 62, 50, 108, 58, 74, 44, 56, 70, 71, 55, 75, 69, 76, 51, 69, 69, 108, 70, 56, 68, 78, 58, 71, 91, 50, 74, 44, 74, 86, 75, 54, 60, 70, 29, 58, 75, 80, 96, 48, 57, 47, 66, 42, 70, 80, 64, 51, 75, 69, 56, 68, 63, 47, 49, 67, 40, 53, 82, 72, 63, 69, 71, 70, 116, 72, 71, 66, 133, 75, 89, 67, 71, 104, 73, 65, 65, 68, 60, 45, 64, 57, 58, 89, 64, 65, 51, 78, 79, 85, 65, 68, 75, 63, 58, 77, 67, 69, 48, 80, 68, 58, 57, 50, 48, 68, 55, 63, 52, 42, 42, 40, 72, 85, 66, 56, 51, 72, 85, 78, 56, 43, 64, 76, 83, 77, 87, 67, 79, 48, 74, 84, 86, 63, 81, 58, 74, 78, 68, 46, 72, 70, 79, 50, 78, 72, 51, 69, 64, 59, 54, 73, 67, 53, 48, 60, 58, 72, 55, 68, 57, 70, 30, 76, 115, 56, 152, 66, 48, 61, 58, 67, 35, 60, 68, 56, 79, 59, 79, 89, 63, 63, 53, 59, 56, 68, 52, 61, 58, 82, 68, 72, 64, 68, 66, 66, 51, 68, 66, 68, 61, 73, 54, 66, 63, 61, 48, 46, 60, 77, 62, 42, 78, 63, 62, 58, 57, 57, 56, 76, 64, 65, 50, 45, 34, 86, 59, 75, 86, 64, 64, 58, 87, 64, 55, 68, 74, 105, 50, 53, 60, 92, 57, 59, 55, 58, 55, 71, 54, 100, 58, 63, 57, 60, 56, 71, 64, 57, 70, 76, 57, 49, 73, 48, 65, 43, 85, 61, 47, 78, 56, 60, 73, 78, 55, 58, 74, 105, 82, 69, 71, 63, 50, 89, 65, 57, 70, 80, 57, 35, 71, 59, 63, 65, 62, 72, 55, 59, 55, 67, 95, 58, 50, 59, 58, 87, 50, 85, 58, 80, 55, 56, 63, 59, 69, 58, 28, 52, 47, 51, 63, 75, 75, 52, 75, 43, 60, 62, 57, 61, 89, 69, 78, 51, 59, 62, 71, 52, 75, 76, 67, 58, 88, 79, 52, 53, 75, 49, 54, 55, 62, 67, 46, 95, 64, 68, 61, 78, 68, 63, 82, 45, 68, 62, 52, 74, 53, 82, 53, 65, 56, 71, 49, 54, 55, 70, 68, 88, 59, 63, 79, 61, 77, 61, 73, 48, 68, 70, 65, 80, 91, 60, 64, 52, 84, 57, 60, 64, 57, 85, 65, 77, 95, 58, 80, 49, 65, 118, 46, 47, 92, 61, 62, 48, 73, 69, 84, 58, 61, 62, 75, 89, 65, 75, 65, 44, 59, 53, 57, 49, 60, 64, 71, 58, 91, 53, 55, 52, 68, 58, 62, 50, 66, 76, 67, 41, 52, 74, 44, 91, 51, 66, 64, 118, 100, 54, 48, 111, 60, 79, 67, 71, 75, 76, 91, 58, 60, 68, 60, 53, 71, 69, 69, 73, 51, 69, 58, 49, 44, 63, 50, 64, 52, 135, 63, 67, 38, 57, 58, 71, 47, 42, 73, 62, 72, 56, 87, 122, 67, 55, 94, 100, 65, 53, 51, 67, 50, 53, 59, 60, 48, 64, 80, 54, 63, 65, 86, 46, 60, 81, 60, 73, 66, 74, 99, 55, 70, 52, 70, 65, 98, 79, 70, 49, 60, 52, 47, 60, 99, 53, 59, 62, 66, 86, 54, 66, 64, 58, 76, 65, 52, 89, 81, 77, 58, 55, 69, 41, 43, 64, 74, 67, 83, 56, 48, 66, 45, 60, 59, 46, 75, 58, 49, 44, 47, 54, 74, 94, 49, 68, 63, 65, 67, 41, 54, 68, 74, 73, 63, 58, 81, 46, 103, 61, 44, 73, 64, 37, 71, 64, 63, 93, 61, 59, 83, 87, 53, 59, 87, 64, 58, 88, 62, 77, 76, 74, 68, 101, 58, 54, 77, 66, 62, 60, 52, 92, 64, 106, 56, 70, 48, 54, 63, 63, 58, 52, 63, 89, 65, 41, 79, 75, 45, 54, 75, 49, 79, 68, 43, 77, 111, 62, 62, 82, 56, 49, 58, 54, 53, 69, 67, 82, 61, 58, 52, 58, 84, 74, 81, 59, 76, 59, 53, 64, 55, 63, 66, 65, 78, 82, 72, 78, 76, 68, 60, 63, 46, 68, 62, 63, 83, 64, 62, 78, 86, 63, 59, 79, 56, 59, 115, 71, 54, 72, 76, 35, 61, 68, 56, 72, 74, 65, 93, 69, 73, 86, 45, 60, 51, 45, 75, 69, 43, 90, 59, 62, 57, 54, 57, 55, 34, 51, 62, 90, 59, 51, 60, 71, 52, 45, 42, 93, 46, 74, 76, 68, 69, 49, 77, 55, 62, 69, 44, 96, 57, 65, 75, 53, 64, 78, 63, 61, 85, 75, 67, 71, 31, 74, 65, 54, 59, 57, 63, 101, 116, 86, 60, 84, 68, 60, 80, 63, 68, 66, 73, 60, 75, 60, 63, 54, 58, 59, 40, 80, 100, 59, 63, 52, 62, 61, 61, 64, 69, 79, 48, 70, 71, 66, 69, 53, 71, 73, 76, 64, 89, 45, 62, 56, 52, 72, 55, 80, 56, 52, 49, 69, 59, 29, 81, 72, 70, 51, 90, 58, 39, 61, 65, 84, 93, 46, 69, 60, 53, 75, 83, 67, 60, 73, 120, 52, 63, 61, 42, 73, 83, 85, 73, 77, 57, 65, 47, 83, 59, 49, 51, 68, 68, 56, 51, 68, 77, 77, 44, 61, 69, 52, 71, 73, 58, 63, 60, 56, 73, 60, 58, 65, 82, 72, 88, 49, 73, 46, 53, 63, 69, 56, 82, 61, 61, 75, 65, 81, 110, 58, 66, 73, 64, 75, 49, 73, 71, 56, 60, 73, 63, 60, 72, 51, 60, 50, 37, 46, 68, 78, 51, 66, 71, 49, 71, 79, 75, 61, 66, 52, 88, 69, 61, 77, 67, 78, 45, 61, 61, 62, 85, 68, 61, 60, 41, 63, 54, 40, 55, 69, 65, 45, 84, 88, 81, 86, 58, 71, 48, 74, 52, 81, 54, 39, 63, 54, 84, 50, 68, 71, 54, 69, 59, 91, 66, 56, 76, 59, 73, 69, 71, 48, 65, 60, 62, 72, 63, 72, 69, 83, 50, 49, 43, 66, 55, 54, 63, 56, 68, 86, 66, 50, 45, 71, 71, 71, 65, 102, 95, 85, 44, 66, 66, 54, 48, 62, 59, 77, 60, 73, 65, 68, 78, 70, 76, 40, 67, 53, 97, 77, 57, 72, 83, 96, 62, 42, 55, 59, 64, 122, 82, 51, 87, 71, 83, 54, 61, 145, 60, 57, 50, 55, 63, 58, 69, 64, 76, 52, 73, 49, 66, 35, 65, 87, 59, 45, 96, 146, 53, 53, 55, 63, 57, 71, 57, 61, 63, 75, 58, 65, 75, 44, 65, 42, 46, 82, 70, 80, 68, 69, 79, 102, 51, 60, 57, 67, 78, 61, 55, 96, 101, 56, 66, 68, 72, 43, 58, 97, 67, 63, 74, 68, 63, 71, 91, 63, 83, 55, 49, 56, 68, 68, 54, 60, 67, 49, 63, 71, 67, 69, 40, 69, 73, 51, 72, 91, 70, 47, 59, 56, 82, 66, 76, 73, 64, 61, 61, 73, 66, 65, 64, 54, 63, 64, 67, 52, 69, 74, 81, 47, 47, 69, 64, 48, 62, 60, 59, 51, 67, 58, 62, 59, 73, 57, 61, 70, 41, 65, 68, 45, 89, 66, 62, 61, 67, 73, 80, 72, 64, 71, 61, 73, 89, 64, 76, 48, 74, 52, 103, 65, 67, 50, 72, 72, 71, 81, 72, 79, 78, 69, 82, 87, 63, 47, 63, 67, 57, 63, 57, 63, 65, 66, 69, 52, 66, 55, 55, 67, 57, 60, 61, 51, 48, 81, 60, 76, 59, 69, 69, 39, 81, 45, 75, 65, 47, 68, 74, 59, 61, 57, 78, 45, 80, 58, 82, 64, 60, 70, 72, 68, 50, 58, 67, 70, 67, 63, 50, 79, 56, 98, 52, 59, 72, 68, 69, 65, 67, 71, 65, 61, 40, 57, 47, 61, 58, 46, 62, 77, 69, 62, 51, 51, 76, 67, 58, 50, 52, 75, 71, 85, 73, 84, 42, 140, 54, 61, 48, 56, 49, 86, 58, 52, 68, 67, 71, 82, 67, 77, 77, 67, 58, 59, 61, 83, 73, 58, 62, 54, 79, 64, 82, 65, 117, 99, 67, 71, 73, 80, 59, 67, 54, 47, 62, 59, 44, 75, 75, 60, 37, 63, 62, 55, 75, 74, 73, 57, 60, 41, 47, 66, 88, 101, 67, 64, 62, 70, 87, 46, 47, 70, 91, 53, 90, 67, 52, 56, 57, 65, 61, 62, 59, 100, 59, 70, 62, 63, 57, 66, 53, 49, 72, 57, 55, 59, 62, 84, 57, 51, 91, 56, 54, 69, 106, 69, 49, 59, 61, 57, 49, 56, 63, 46, 69, 73, 89, 63, 61, 54, 77, 67, 77, 79, 84, 59, 65, 72, 61, 62, 79, 73, 65, 64, 88, 61, 47, 59, 80, 47, 59, 68, 77, 85, 62, 71, 65, 56, 54, 33, 59, 44, 86, 59, 65, 61, 61, 71, 63, 51, 55, 72, 63, 79, 74, 67, 83, 90, 129, 59, 83, 70, 60, 62, 71, 49, 68, 68, 84, 62, 66, 80, 55, 55, 56, 77, 59, 70, 88, 64, 124, 51, 63, 65, 50, 54, 99, 76, 61, 41, 97, 67, 40, 32, 59, 68, 78, 62, 61, 66, 69, 51, 57, 78, 55, 71, 86, 59, 70, 79, 99, 71, 61, 73, 58, 62, 51, 44, 67, 63, 52, 76, 58, 69, 81, 77, 54, 83, 81, 89, 100, 77, 57, 93, 50, 78, 50, 67, 74, 82, 60, 61, 68, 52, 40, 103, 49, 79, 68, 75, 61, 52, 76, 80, 77, 94, 46, 81, 55, 76, 52, 74, 60, 72, 94, 62, 71, 69, 56, 78, 73, 58, 70, 67, 71, 56, 54, 50, 59, 129, 50, 70, 75, 63, 61, 71, 57, 53, 106, 66, 59, 54, 57, 71, 54, 68, 61, 71, 45, 57, 59, 90, 85, 84, 65, 56, 48, 60, 63, 62, 55, 60, 40, 51, 66, 38, 67, 75, 40, 74, 53, 69, 87, 65, 103, 66, 51, 70, 65, 58, 63, 67, 54, 66, 57, 77, 77, 58, 57, 70, 65, 67, 73, 62, 69, 79, 44, 91, 74, 84, 52, 71, 86, 52, 77, 81, 60, 77, 90, 47, 94, 75, 79, 86, 59, 44, 89, 64, 67, 70, 56, 56, 62, 66, 78, 70, 69, 55, 64, 49, 78, 55, 71, 44, 48, 65, 75, 55, 70, 85, 83, 79, 70, 47, 77, 74, 64, 64, 44, 73, 66, 79, 61, 64, 53, 54, 64, 70, 58, 35, 65, 85, 108, 47, 42, 77, 76, 67, 51, 76, 126, 73, 138, 72, 72, 68, 59, 62, 57, 66, 59, 54, 57, 96, 106, 58, 56, 67, 58, 61, 57, 66, 54, 64, 54, 55, 56, 52, 73, 78, 73, 55, 66, 50, 66, 42, 59, 49, 70, 54, 52, 83, 77, 52, 73, 57, 64, 66, 50, 110, 66, 134, 74, 55, 52, 68, 65, 44, 52, 67, 77, 64, 98, 69, 62, 57, 65, 66, 45, 78, 67, 60, 58, 67, 66, 55, 62, 61, 66, 62, 66, 70, 82, 45, 48, 81, 55, 80, 68, 89, 56, 67, 53, 58, 80, 54, 47, 65, 68, 67, 77, 57, 85, 61, 66, 76, 50, 58, 48, 62, 63, 52, 63, 55, 71, 76, 75, 61, 76, 74, 52, 73, 51, 112, 55, 69, 60, 60, 58, 69, 57, 63, 67, 52, 52, 84, 52, 60, 72, 51, 56, 86, 58, 45, 70, 51, 88, 67, 45, 62, 72, 56, 63, 82, 70, 79, 73, 75, 43, 25, 71, 67, 67, 57, 72, 56, 54, 52, 67, 70, 59, 66, 55, 62, 88, 65, 53, 62, 72, 65, 38, 53, 73, 77, 64, 67, 79, 43, 77, 35, 58, 69, 52, 80, 57, 103, 60, 71, 44, 75, 67, 57, 63, 89, 75, 58, 57, 63, 46, 77, 49, 57, 65, 58, 66, 76, 62, 75, 79, 56, 39, 59, 84, 78, 51, 47, 98, 53, 66, 49, 76, 73, 91, 67, 54, 69, 79, 66, 65, 58, 76, 102, 49, 42, 90, 80, 55, 50, 80, 47, 38, 75, 70, 85, 68, 55, 65, 74, 50, 51, 53, 54, 72, 83, 51, 59, 87, 64, 77, 78, 54, 80, 69, 84, 72, 109, 82, 48, 55, 55, 63, 38, 66, 59, 68, 59, 46, 58, 48, 115, 76, 68, 59, 54, 56, 70, 113, 64, 77, 72, 59, 86, 43, 58, 61, 59, 71, 73, 76, 68, 69, 54, 69, 70, 61, 72, 66, 85, 55, 90, 63, 56, 46, 57, 59, 67, 74, 80, 61, 70, 57, 66, 104, 98, 51, 45, 71, 74, 62, 53, 55, 77, 66, 54, 45, 76, 61, 77, 83, 44, 73, 69, 64, 65, 107, 58, 51, 53, 101, 113, 63, 72, 60, 60, 45, 46, 55, 53, 64, 67, 55, 47, 51, 62, 53, 67, 69, 85, 113, 64, 67, 46, 66, 57, 90, 107, 67, 74, 52, 61, 52, 44, 40, 78, 72, 47, 80, 61, 84, 56, 73, 62, 51, 64, 55, 51, 53, 72, 53, 57, 86, 57, 64, 67, 54, 69, 62, 60, 49, 98, 65, 52, 67, 63, 61, 45, 76, 77, 86, 49, 67, 63, 81, 75, 67, 111, 59, 75, 62, 65, 67, 56, 70, 65, 49, 72, 76, 45, 60, 50, 62, 64, 54, 76, 49, 92, 49, 83, 68, 62, 91, 61, 59, 39, 42, 69, 53, 52, 59, 54, 90, 51, 66, 55, 58, 136, 63, 73, 76, 58, 64, 71, 80, 105, 66, 63, 68, 48, 35, 42, 75, 78, 54, 68, 36, 51, 51, 52, 59, 58, 59, 70, 57, 108, 125, 50, 59, 70, 44, 51, 89, 83, 72, 67, 72, 56, 62, 55, 60, 49, 55, 56, 65, 51, 70, 101, 50, 44, 69, 54, 59, 60, 46, 68, 45, 64, 78, 46, 50, 127, 86, 68, 63, 78, 83, 43, 64, 87, 70, 76, 86, 80, 69, 101, 71, 94, 57, 60, 53, 55, 63, 66, 52, 39, 62, 47, 48, 107, 64, 63, 64, 53, 77, 70, 63, 61, 49, 108, 53, 41, 48, 97, 85, 66, 52, 49, 67, 48, 88, 37, 64, 64, 78, 46, 61, 59, 54, 52, 57, 74, 54, 64, 50, 61, 42, 86, 56, 63, 69, 76, 65, 82, 54, 68, 73, 69, 59, 51, 73, 61, 83, 49, 88, 74, 61, 65, 51, 64, 42, 59, 59, 74, 71, 73, 49, 60, 67, 66, 134, 47, 85, 94, 90, 66, 48, 50, 59, 54, 60, 67, 75, 90, 63, 66, 50, 67, 73, 93, 83, 59, 73, 60, 58, 37, 61, 58, 63, 63, 80, 86, 74, 66, 63, 90, 72, 56, 50, 73, 65, 50, 51, 59, 75, 52, 55, 60, 56, 54, 93, 75, 51, 66, 72, 62, 64, 73, 76, 75, 65, 46, 67, 43, 41, 53, 49, 59, 151, 53, 65, 74, 66, 72, 56, 97, 51, 96, 48, 53, 43, 42, 67, 93, 59, 68, 53, 68, 58, 62, 51, 73, 51, 59, 69, 45, 81, 39, 89, 59, 101, 59, 67, 53, 68, 62, 53, 51, 68, 81, 74, 52, 64, 51, 71, 65, 110, 104, 79, 37, 45, 57, 78, 58, 58, 58, 56, 57, 59, 88, 74, 45, 60, 78, 51, 52, 100, 46, 50, 55, 54, 79, 61, 70, 60, 103, 65, 56, 61, 80, 79, 68, 59, 73, 53, 86, 54, 58, 57, 57, 61, 44, 69, 68, 75, 55, 60, 71, 139, 78, 82, 67, 87, 61, 100, 70, 71, 88, 66, 94, 52, 58, 46, 74, 54, 65, 51, 64, 46, 78, 35, 76, 69, 68, 63, 90, 78, 85, 80, 79, 47, 78, 75, 84, 76, 89, 50, 56, 90, 44, 48, 62, 97, 58, 68, 63, 49, 63, 85, 87, 64, 117, 69, 105, 55, 65, 85, 94, 47, 63, 68, 47, 72, 56, 64, 65, 51, 54, 86, 66, 65, 67, 75, 68, 91, 63, 108, 79, 67, 86, 56, 80, 67, 74, 93, 58, 56, 55, 45, 60, 58, 62, 58, 61, 56, 42, 49, 60, 55, 60, 61, 64, 63, 106, 67, 59, 52, 74, 69, 60, 62, 69, 60, 53, 47, 99, 90, 68, 79, 78, 50, 46, 44, 99, 58, 64, 67, 37, 51, 65, 42, 62, 58, 60, 56, 73, 52, 63, 78, 60, 52, 77, 47, 57, 104, 48, 70, 64, 59, 42, 68, 53, 70, 78, 55, 75, 86, 78, 56, 60, 68, 65, 59, 76, 78, 92, 114, 101, 61, 72, 38, 50, 85, 47, 72, 73, 59, 81, 94, 63, 45, 67, 48, 58, 58, 50, 100, 102, 77, 58, 58, 69, 46, 71, 138, 50, 83, 67, 48, 66, 69, 54, 67, 55, 72, 65, 58, 49, 72, 59, 46, 68, 71, 60, 77, 54, 84, 60, 42, 95, 45, 77, 63, 75, 95, 92, 92, 70, 79, 48, 53, 68, 69, 78, 63, 54, 55, 74, 74, 78, 63, 59, 50, 61, 67, 53, 54, 52, 73, 52, 74, 79, 47, 54, 47, 60, 71, 81, 71, 75, 104, 76, 85, 59, 81, 85, 52, 55, 54, 57, 57, 61, 59, 56, 50, 62, 71, 62, 107, 50, 57, 56, 69, 56, 55, 66, 67, 67, 59, 62, 65, 83, 71, 79, 65, 50, 42, 124, 56, 67, 98, 70, 45, 59, 50, 76, 103, 64, 45, 63, 99, 51, 59, 73, 81, 57, 68, 40, 58, 51, 105, 83, 66, 62, 52, 71, 56, 64, 55, 66, 70, 36, 81, 55, 79, 63, 56, 82, 51, 61, 55, 50, 49, 62, 47, 65, 81, 68, 66, 55, 50, 94, 59, 69, 64, 73, 83, 73, 49, 70, 61, 63, 67, 69, 66, 67, 51, 65, 46, 44, 71, 61, 89, 73, 91, 82, 60, 66, 61, 56, 81, 69, 41, 88, 48, 98, 60, 55, 52, 63, 70, 67, 48, 80, 68, 85, 69, 50, 56, 36, 67, 60, 82, 75, 88, 55, 45, 51, 41, 115, 48, 65, 67, 69, 48, 52, 84, 61, 108, 82, 103, 127, 52, 56, 63, 98, 63, 78, 86, 53, 61, 55, 61, 71, 23, 67, 81, 44, 51, 53, 61, 72, 94, 54, 65, 60, 61, 67, 47, 60, 58, 71, 53, 58, 67, 61, 54, 70, 63, 56, 98, 52, 60, 92, 51, 71, 70, 64, 84, 68, 64, 53, 81, 108, 113, 40, 76, 67, 77, 64, 63, 58, 66, 76, 62, 53, 54, 50, 57, 97, 76, 55, 65, 63, 73, 67, 68, 58, 75, 91, 67, 59, 56, 70, 83, 49, 57, 51, 68, 61, 62, 51, 86, 128, 72, 61, 57, 67, 63, 90, 83, 62, 63, 57, 38, 82, 57, 60, 65, 92, 59, 72, 77, 59, 73, 71, 81, 96, 86, 160, 65, 56, 46, 61, 51, 88, 54, 64, 49, 72, 52, 51, 82, 84, 73, 45, 60, 53, 50, 66, 64, 53, 47, 61, 68, 72, 70, 67, 73, 88, 52, 65, 70, 69, 77, 83, 70, 53, 49, 87, 88, 67, 62, 46, 35, 50, 61, 76, 45, 59, 60, 44, 38, 67, 54, 58, 81, 59, 68, 66, 79, 55, 114, 76, 51, 63, 62, 58, 57, 65, 71, 63, 48, 66, 99, 46, 65, 75, 56, 46, 81, 91, 48, 86, 63, 51, 67, 64, 51, 77, 36, 54, 61, 57, 80, 58, 70, 87, 57, 50, 71, 89, 46, 62, 66, 58, 67, 62, 80, 70, 44, 61, 123, 61, 57, 62, 75, 77, 62, 63, 68, 56, 93, 104, 75, 55, 80, 70, 73, 71, 64, 60, 62, 55, 53, 61, 87, 75, 74, 54, 59, 81, 61, 71, 69, 58, 59, 71, 64, 77, 45, 84, 90, 72, 49, 53, 61, 35, 77, 63, 104, 59, 72, 61, 67, 86, 87, 67, 52, 59, 76, 64, 70, 48, 69, 53, 86, 51, 55, 40, 83, 50, 43, 53, 66, 107, 82, 61, 46, 78, 48, 62, 57, 68, 76, 60, 72, 54, 82, 36, 81, 58, 88, 72, 56, 60, 77, 63, 69, 51, 58, 43, 45, 82, 70, 58, 74, 57, 48, 63, 55, 75, 124, 56, 56, 78, 64, 57, 51, 57, 61, 60, 86, 74, 71, 104, 53, 52, 60, 61, 56, 80, 105, 61, 64, 64, 54, 65, 49, 66, 48, 71, 55, 55, 57, 56, 78, 72, 70, 71, 63, 74, 88, 66, 93, 64, 65, 56, 69, 71, 48, 51, 58, 68, 51, 62, 71, 54, 77, 54, 83, 72, 63, 57, 66, 78, 68, 73, 57, 71, 68, 67, 75, 63, 118, 77, 56, 81, 74, 40, 59, 71, 80, 65, 68, 57, 60, 50, 48, 58, 53, 74, 53, 62, 50, 69, 56, 61, 55, 60, 62, 59, 77, 74, 66, 51, 71, 60, 66, 60, 50, 53, 52, 59, 51, 62, 64, 71, 59, 85, 68, 70, 63, 88, 63, 60, 60, 62, 54, 65, 55, 58, 51, 52, 52, 52, 54, 62, 65, 46, 47, 72, 71, 68, 91, 68, 70, 56, 80, 64, 63, 54, 59, 69, 40, 56, 59, 129, 56, 64, 78, 53, 60, 66, 44, 53, 65, 81, 61, 55, 82, 66, 41, 62, 85, 59, 90, 98, 65, 78, 112, 65, 52, 81, 54, 100, 68, 66, 48, 88, 65, 59, 73, 55, 87, 57, 52, 104, 82, 60, 64, 60, 67, 80, 70, 52, 55, 92, 66, 68, 73, 93, 69, 46, 74, 88, 61, 51, 76, 90, 61, 75, 65, 70, 65, 44, 71, 71, 56, 79, 64, 41, 74, 75, 52, 88, 49, 56, 61, 55, 47, 60, 55, 48, 48, 47, 78, 56, 94, 97, 98, 59, 49, 67, 65, 74, 84, 45, 101, 57, 74, 59, 73, 67, 65, 62, 58, 81, 54, 91, 51, 47, 122, 55, 74, 58, 72, 52, 87, 49, 100, 86, 58, 73, 51, 55, 65, 51, 63, 88, 89, 38, 67, 64, 55, 84, 67, 68, 85, 83, 59, 76, 41, 126, 89, 82, 68, 70, 81, 63, 105, 54, 68, 52, 78, 64, 99, 82, 41, 62, 70, 71, 56, 58, 68, 81, 106, 75, 66, 59, 56, 97, 67, 56, 59, 66, 41, 96, 65, 52, 58, 57, 60, 66, 45, 49, 65, 55, 56, 62, 55, 47, 64, 48, 45, 61, 65, 66, 77, 69, 59, 56, 51, 64, 66, 66, 73, 72, 74, 58, 47, 103, 50, 55, 63, 84, 55, 116, 63, 90, 76, 79, 50, 67, 83, 62, 62, 69, 51, 85, 69, 99, 89, 52, 75, 55, 125, 86, 54, 76, 67, 52, 59, 62, 85, 55, 49, 71, 63, 80, 68, 100, 54, 63, 55, 67, 55, 63, 91, 56, 75, 63, 57, 68, 61, 48, 52, 60, 69, 100, 54, 44, 101, 111, 71, 77, 55, 59, 66, 47, 54, 57, 49, 68, 66, 68, 56, 58, 63, 66, 57, 65, 51, 42, 88, 44, 74, 56, 67, 44, 80, 61, 41, 55, 66, 58, 59, 67, 91, 78, 51, 67, 70, 74, 62, 84, 51, 60, 59, 58, 42, 60, 77, 58, 70, 70, 77, 77, 80, 38, 65, 56, 78, 50, 68, 60, 70, 85, 67, 47, 65, 71, 64, 63, 62, 65, 64, 64, 57, 81, 55, 54, 77, 52, 65, 73, 74, 57, 62, 51, 82, 51, 66, 59, 78, 87, 63, 55, 54, 78, 69, 69, 70, 51, 63, 53, 61, 72, 43, 63, 73, 53, 53, 63, 59, 108, 49, 57, 40, 54, 78, 43, 41, 54, 75, 66, 101, 78, 51, 77, 73, 98, 90, 65, 71, 60, 73, 59, 86, 59, 58, 67, 52, 59, 63, 79, 59, 34, 85, 54, 56, 69, 61, 71, 63, 69, 58, 83, 75, 72, 82, 70, 60, 54, 75, 89, 75, 87, 65, 55, 75, 60, 74, 70, 77, 72, 66, 57, 51, 56, 62, 54, 49, 57, 61, 57, 54, 77, 47, 65, 58, 51, 88, 77, 41, 63, 85, 67, 73, 96, 57, 78, 53, 111, 63, 54, 71, 69, 79, 68, 68, 67, 79, 50, 58, 74, 72, 70, 60, 76, 79, 54, 107, 52, 65, 64, 71, 82, 84, 53, 47, 56, 94, 54, 51, 49, 67, 71, 43, 53, 62, 69, 62, 122, 97, 69, 70, 52, 90, 65, 86, 70, 56, 63, 71, 60, 74, 66, 54, 78, 64, 67, 49, 81, 50, 59, 71, 72, 45, 44, 63, 83, 65, 47, 58, 55, 78, 71, 61, 69, 73, 52, 59, 99, 76, 68, 59, 74, 70, 92, 61, 56, 68, 59, 68, 51, 75, 75, 83, 49, 71, 64, 64, 70, 73, 55, 54, 64, 57, 56, 76, 47, 53, 62, 46, 59, 65, 80, 113, 56, 60, 84, 68, 53, 81, 87, 68, 82, 104, 59, 42, 54, 54, 76, 53, 48, 49, 58, 76, 51, 57, 73, 64, 78, 154, 65, 103, 72, 65, 101, 67, 69, 86, 72, 43, 100, 62, 58, 53, 93, 37, 68, 58, 48, 85, 74, 71, 70, 58, 95, 53, 51, 68, 43, 72, 35, 57, 87, 47, 111, 64, 80, 68, 97, 56, 41, 35, 78, 71, 66, 78, 93, 60, 146, 69, 67, 49, 69, 50, 87, 76, 91, 137, 54, 63, 72, 72, 81, 95, 45, 66, 42, 50, 53, 51, 86, 56, 76, 65, 159, 61, 72, 72, 65, 69, 45, 59, 78, 54, 68, 87, 59, 56, 70, 100, 55, 65, 86, 57, 79, 39, 112, 47, 52, 57, 80, 64, 91, 90, 95, 53, 67, 62, 50, 79, 29, 58, 55, 104, 64, 89, 74, 81, 57, 74, 40, 57, 54, 75, 57, 58, 53, 53, 59, 66, 44, 46, 64, 67, 43, 57, 68, 64, 65, 59, 68, 91, 77, 57, 71, 66, 65, 98, 78, 70, 55, 68, 60, 61, 49, 70, 89, 63, 85, 82, 71, 71, 116, 58, 58, 39, 31, 73, 67, 72, 73, 88, 73, 58, 62, 79, 64, 66, 45, 66, 76, 64, 87, 84, 102, 59, 50, 76, 59, 96, 49, 53, 40, 61, 74, 73, 70, 71, 54, 89, 60, 39, 59, 45, 53, 56, 58, 117, 78, 59, 64, 85, 47, 48, 72, 55, 93, 66, 99, 113, 61, 64, 47, 56, 74, 61, 46, 54, 68, 38, 83, 70, 67, 93, 60, 81, 86, 68, 63, 61, 93, 64, 74, 56, 58, 42, 56, 59, 67, 82, 66, 67, 94, 43, 79, 60, 69, 60, 86, 73, 66, 84, 42, 64, 48, 54, 56, 52, 88, 61, 42, 75, 65, 55, 39, 41, 77, 80, 74, 51, 65, 65, 71, 68, 50, 64, 42, 55, 84, 74, 58, 63, 87, 53, 67, 82, 116, 56, 117, 62, 60, 60, 59, 67, 100, 39, 71, 58, 73, 51, 82, 48, 65, 54, 54, 42, 63, 47, 74, 55, 60, 56, 54, 70, 74, 50, 87, 54, 61, 71, 53, 57, 59, 73, 50, 58, 59, 66, 70, 58, 61, 62, 64, 81, 73, 71, 106, 79, 48, 71, 55, 91, 57, 80, 52, 48, 76, 53, 91, 51, 72, 45, 53, 65, 78, 57, 43, 63, 65, 62, 65, 52, 61, 60, 55, 81, 75, 83, 49, 63, 48, 89, 67, 51, 71, 61, 82, 73, 54, 57, 55, 71, 57, 40, 81, 61, 55, 59, 51, 61, 68, 98, 66, 88, 59, 51, 81, 65, 47, 63, 55, 74, 36, 76, 58, 51, 58, 79, 68, 86, 71, 68, 53, 90, 55, 39, 105, 59, 80, 65, 55, 65, 59, 59, 71, 96, 60, 51, 73, 59, 58, 86, 59, 59, 46, 66, 60, 70, 57, 71, 69, 47, 31, 118, 84, 53, 60, 38, 65, 85, 59, 54, 103, 55, 63, 47, 55, 69, 50, 56, 62, 73, 94, 51, 58, 65, 64, 63, 61, 75, 62, 62, 45, 64, 62, 62, 73, 53, 54, 63, 90, 67, 58, 60, 45, 62, 82, 59, 103, 64, 83, 74, 52, 76, 66, 64, 86, 47, 68, 71, 54, 56, 63, 61, 75, 52, 73, 68, 59, 85, 62, 54, 49, 61, 50, 57, 70, 69, 83, 65, 50, 54, 58, 104, 63, 76, 77, 69, 55, 69, 93, 55, 75, 73, 64, 38, 80, 64, 52, 70, 86, 60, 61, 107, 66, 63, 90, 124, 49, 103, 77, 61, 86, 54, 49, 96, 61, 39, 58, 82, 78, 77, 67, 85, 70, 84, 73, 52, 49, 61, 76, 67, 60, 104, 63, 48, 50, 71, 46, 71, 37, 63, 54, 72, 66, 43, 66, 60, 39, 45, 78, 42, 86, 60, 56, 78, 56, 64, 48, 65, 72, 78, 70, 62, 47, 58, 55, 108, 79, 60, 54, 53, 50, 51, 60, 70, 72, 72, 69, 144, 49, 61, 69, 83, 74, 53, 66, 53, 68, 53, 93, 66, 58, 70, 54, 110, 65, 65, 108, 76, 54, 75, 57, 51, 69, 67, 88, 84, 36, 63, 66, 79, 90, 61, 58, 51, 68, 63, 69, 107, 62, 58, 106, 69, 52, 61, 73, 59, 70, 54, 60, 77, 73, 71, 50, 56, 77, 54, 74, 44, 66, 61, 49, 56, 71, 86, 53, 97, 69, 46, 51, 40, 76, 55, 53, 89, 75, 64, 61, 66, 74, 92, 85, 58, 72, 52, 74, 74, 42, 60, 70, 71, 78, 80, 62, 44, 67, 50, 74, 58, 91, 49, 86, 80, 69, 74, 49, 41, 55, 75, 60, 80, 74, 54, 129, 61, 58, 36, 49, 69, 69, 69, 76, 39, 98, 64, 64, 57, 62, 74, 55, 111, 60, 76, 71, 73, 86, 47, 65, 65, 102, 72, 63, 49, 101, 58, 57, 101, 63, 73, 72, 81, 71, 51, 66, 56, 47, 65, 72, 50, 68, 48, 30, 61, 84, 67, 59, 59, 69, 71, 61, 54, 66, 68, 55, 83, 106, 74, 66, 64, 48, 67, 48, 53, 50, 57, 72, 51, 42, 63, 63, 81, 82, 51, 59, 84, 60, 58, 61, 52, 56, 36, 65, 62, 61, 58, 67, 66, 78, 57, 66, 61, 62, 50, 67, 69, 43, 49, 94, 75, 61, 65, 44, 54, 47, 98, 42, 74, 50, 57, 66, 95, 79, 40, 50, 60, 70, 65, 52, 69, 52, 54, 69, 66, 72, 86, 59, 78, 44, 57, 60, 61, 55, 87, 69, 53, 53, 36, 45, 81, 95, 76, 60, 82, 41, 47, 61, 52, 58, 62, 62, 86, 63, 106, 76, 52, 54, 66, 91, 51, 70, 71, 53, 83, 65, 38, 57, 60, 68, 40, 68, 53, 70, 60, 62, 73, 79, 62, 78, 63, 72, 61, 70, 73, 61, 73, 51, 48, 51, 76, 113, 74, 52, 77, 56, 105, 76, 79, 98, 66, 74, 84, 54, 89, 38, 63, 76, 55, 70, 73, 58, 96, 75, 65, 47, 67, 52, 68, 70, 90, 65, 72, 70, 75, 73, 67, 55, 73, 84, 62, 65, 65, 67, 76, 80, 37, 80, 45, 62, 122, 97, 72, 73, 54, 55, 80, 55, 58, 63, 52, 93, 56, 70, 45, 55, 84, 69, 57, 66, 81, 72, 86, 60, 61, 56, 75, 73, 61, 55, 67, 75, 51, 66, 93, 62, 94, 82, 74, 52, 58, 67, 54, 59, 61, 125, 62, 61, 59, 70, 81, 47, 90, 51, 69, 96, 78, 83, 116, 75, 70, 95, 62, 68, 49, 73, 59, 83, 58, 48, 52, 50, 62, 73, 83, 99, 55, 46, 63, 58, 65, 49, 70, 55, 94, 58, 53, 52, 79, 62, 64, 51, 81, 75, 70, 72, 66, 53, 97, 52, 67, 54, 46, 66, 69, 82, 56, 85, 77, 72, 81, 54, 60, 49, 91, 62, 77, 48, 71, 60, 86, 103, 50, 64, 49, 67, 67, 67, 69, 60, 63, 108, 59, 56, 81, 64, 67, 50, 54, 68, 36, 83, 64, 72, 80, 81, 61, 57, 49, 50, 73, 74, 56, 77, 68, 62, 53, 74, 76, 71, 47, 67, 62, 59, 57, 58, 55, 77, 52, 46, 85, 56, 73, 80, 71, 58, 71, 60, 77, 84, 63, 59, 98, 58, 77, 48, 74, 61, 80, 68, 78, 114, 72, 73, 86, 91, 62, 62, 75, 68, 69, 44, 81, 64, 81, 42, 50, 70, 55, 61, 71, 65, 74, 61, 74, 59, 62, 76, 65, 46, 41, 59, 56, 50, 53, 55, 82, 61, 48, 68, 79, 64, 43, 81, 71, 88, 43, 63, 81, 76, 77, 68, 49, 57, 57, 62, 89, 55, 42, 82, 60, 100, 58, 71, 63, 48, 55, 60, 55, 56, 42, 43, 59, 56, 66, 89, 60, 68, 151, 72, 54, 77, 84, 96, 83, 71, 46, 70, 43, 70, 67, 42, 65, 66, 58, 83, 67, 62, 40, 45, 68, 105, 89, 60, 46, 77, 71, 47, 68, 46, 57, 68, 59, 67, 60, 71, 79, 66, 73, 89, 65, 115, 68, 84, 51, 49, 62, 48, 70, 68, 91, 49, 94, 85, 55, 107, 67, 58, 58, 55, 75, 82, 54, 66, 64, 53, 90, 64, 48, 66, 48, 78, 55, 35, 69, 45, 65, 44, 63, 68, 44, 72, 66, 68, 89, 42, 68, 65, 69, 70, 81, 65, 64, 73, 96, 45, 72, 69, 55, 52, 71, 70, 59, 65, 57, 53, 97, 47, 75, 64, 70, 73, 76, 80, 68, 51, 51, 61, 57, 86, 93, 91, 69, 73, 51, 65, 48, 76, 65, 61, 78, 58, 64, 60, 69, 72, 41, 81, 60, 74, 65, 63, 64, 77, 61, 86, 105, 48, 74, 53, 69, 75, 60, 90, 66, 57, 73, 47, 58, 84, 63, 95, 55, 59, 46, 39, 57, 72, 53, 75, 52, 59, 43, 76, 72, 57, 64, 51, 51, 68, 50, 63, 83, 68, 48, 64, 48, 68, 24, 55, 115, 56, 72, 51, 94, 62, 34, 71, 62, 67, 75, 73, 58, 52, 47, 55, 37, 87, 46, 53, 74, 61, 67, 96, 73, 68, 63, 60, 51, 69, 60, 70, 66, 52, 47, 72, 56, 55, 48, 69, 57, 71, 57, 84, 55, 63, 54, 67, 95, 35, 84, 62, 85, 47, 50, 55, 58, 60, 97, 73, 62, 42, 63, 60, 72, 84, 67, 52, 64, 42, 69, 97, 58, 71, 78, 63, 78, 84, 42, 61, 73, 118, 45, 59, 63, 72, 56, 49, 77, 66, 37, 58, 57, 65, 88, 75, 73, 64, 91, 69, 56, 61, 63, 88, 47, 72, 78, 53, 33, 78, 55, 73, 76, 79, 43, 67, 60, 35, 55, 58, 77, 43, 57, 55, 70, 71, 92, 65, 42, 45, 60, 70, 78, 75, 65, 81, 59, 66, 44, 57, 42, 65, 53, 48, 54, 63, 56, 74, 58, 67, 81, 59, 67, 58, 63, 62, 62, 67, 68, 52, 70, 67, 41, 46, 64, 70, 58, 60, 58, 42, 71, 66, 47, 79, 65, 71, 61, 64, 83, 62, 80, 68, 53, 57, 47, 52, 59, 65, 61, 59, 71, 86, 80, 97, 65, 80, 53, 63, 65, 65, 79, 69, 63, 82, 50, 58, 96, 67, 68, 66, 51, 65, 77, 76, 108, 61, 64, 56, 83, 59, 60, 77, 48, 69, 68, 66, 54, 70, 101, 58, 81, 53, 60, 49, 71, 65, 52, 54, 61, 76, 80, 53, 58, 72, 37, 60, 78, 67, 39, 80, 55, 81, 81, 55, 68, 61, 72, 47, 61, 68, 64, 63, 57, 50, 67, 44, 70, 57, 90, 40, 61, 101, 52, 72, 82, 54, 80, 75, 68, 65, 75, 65, 75, 58, 96, 50, 56, 74, 61, 58, 53, 61, 80, 39, 77, 44, 51, 62, 118, 54, 98, 66, 68, 55, 70, 67, 66, 68, 55, 73, 59, 65, 65, 91, 52, 68, 57, 46, 40, 53, 56, 42, 57, 54, 76, 73, 62, 65, 78, 56, 73, 61, 130, 79, 70, 57, 69, 69, 61, 58, 57, 81, 61, 92, 76, 72, 63, 53, 78, 62, 74, 47, 76, 95, 71, 48, 58, 74, 91, 89, 56, 64, 68, 72, 54, 84, 52, 83, 56, 73, 65, 61, 59, 46, 104, 65, 49, 67, 102, 60, 78, 78, 60, 73, 53, 61, 55, 70, 110, 43, 56, 64, 53, 58, 78, 55, 51, 66, 72, 43, 80, 57, 46, 54, 87, 70, 75, 57, 65, 66, 88, 88, 48, 58, 70, 89, 66, 56, 74, 61, 64, 75, 49, 53, 63, 67, 42, 84, 73, 94, 78, 57, 83, 58, 64, 41, 81, 59, 91, 84, 58, 84, 67, 64, 67, 57, 67, 69, 68, 58, 52, 49, 92, 62, 78, 52, 65, 82, 75, 67, 58, 73, 101, 72, 79, 90, 58, 91, 50, 54, 62, 105, 65, 30, 56, 72, 68, 44, 61, 47, 58, 58, 66, 72, 58, 58, 78, 75, 76, 71, 60, 65, 67, 51, 48, 98, 70, 68, 82, 65, 71, 94, 71, 60, 103, 57, 58, 56, 63, 64, 59, 47, 59, 41, 68, 71, 62, 123, 45, 57, 59, 67, 65, 63, 61, 67, 54, 66, 79, 79, 105, 79, 58, 88, 63, 56, 74, 70, 45, 90, 62, 55, 59, 63, 44, 82, 64, 57, 57, 68, 59, 60, 87, 57, 68, 58, 63, 83, 67, 61, 71, 126, 110, 70, 53, 78, 67, 62, 79, 71, 65, 67, 63, 61, 81, 69, 66, 33, 54, 87, 66, 51, 80, 71, 68, 60, 62, 51, 93, 64, 43, 56, 79, 117, 67, 66, 81, 81, 47, 59, 67, 71, 55, 59, 107, 74, 84, 45, 57, 79, 59, 65, 80, 60, 46, 45, 50, 57, 57, 104, 55, 78, 107, 53, 66, 57, 85, 56, 80, 70, 115, 81, 54, 57, 59, 54, 62, 79, 64, 43, 55, 64, 65, 68, 65, 64, 67, 136, 50, 49, 62, 88, 60, 88, 41, 75, 89, 91, 66, 50, 48, 85, 71, 77, 83, 51, 71, 82, 39, 62, 63, 58, 60, 55, 90, 56, 78, 68, 89, 61, 52, 90, 84, 67, 83, 100, 72, 56, 53, 65, 66, 79, 52, 48, 70, 54, 72, 87, 61, 84, 67, 38, 65, 69, 72, 65, 73, 77, 63, 66, 120, 74, 80, 64, 69, 72, 57, 84, 62, 48, 93, 58, 91, 57, 79, 81, 90, 59, 71, 51, 60, 53, 59, 81, 42, 65, 53, 81, 43, 67, 53, 61, 79, 60, 44, 52, 63, 66, 58, 75, 51, 56, 78, 75, 65, 71, 65, 61, 66, 83, 51, 75, 119, 74, 77, 77, 79, 86, 34, 82, 35, 92, 44, 65, 47, 72, 44, 64, 52, 63, 84, 41, 45, 46, 89, 68, 49, 68, 86, 48, 68, 63, 78, 83, 50, 58, 57, 73, 72, 49, 84, 53, 55, 59, 57, 72, 63, 82, 53, 61, 68, 53, 64, 57, 62, 55, 43, 62, 63, 58, 68, 64, 72, 79, 77, 51, 55, 57, 67, 65, 73, 54, 73, 42, 56, 62, 74, 70, 57, 91, 75, 81, 76, 79, 62, 66, 58, 77, 76, 53, 63, 54, 64, 55, 67, 38, 68, 114, 54, 64, 60, 79, 85, 63, 64, 82, 51, 41, 67, 54, 48, 52, 70, 53, 58, 48, 96, 69, 71, 80, 58, 69, 67, 56, 75, 60, 116, 86, 48, 80, 87, 58, 62, 65, 66, 70, 52, 79, 45, 53, 67, 67, 68, 60, 75, 68, 92, 73, 63, 69, 95, 75, 65, 69, 75, 52, 57, 43, 35, 59, 64, 67, 67, 81, 94, 93, 66, 91, 71, 67, 49, 47, 80, 52, 78, 103, 84, 65, 55, 113, 66, 72, 65, 64, 70, 70, 72, 69, 68, 56, 64, 50, 42, 76, 61, 69, 50, 51, 57, 38, 78, 51, 72, 61, 48, 65, 67, 73, 60, 63, 62, 62, 44, 59, 86, 36, 57, 56, 82, 55, 59, 152, 59, 46, 73, 91, 84, 59, 81, 57, 66, 45, 52, 51, 57, 92, 38, 60, 71, 72, 72, 59, 50, 70, 70, 74, 39, 71, 78, 62, 59, 55, 59, 58, 62, 84, 74, 45, 56, 58, 98, 78, 61, 62, 94, 61, 46, 46, 54, 64, 80, 99, 75, 74, 65, 77, 85, 50, 110, 52, 56, 48, 90, 52, 83, 58, 78, 40, 70, 80, 64, 69, 77, 92, 67, 69, 56, 70, 65, 71, 37, 57, 81, 67, 61, 50, 75, 64, 62, 71, 62, 44, 70, 89, 64, 43, 66, 76, 64, 50, 61, 66, 77, 70, 47, 62, 59, 81, 77, 34, 65, 66, 94, 64, 105, 54, 67, 80, 46, 76, 55, 36, 70, 62, 64, 77, 66, 50, 55, 87, 58, 69, 99, 76, 59, 58, 78, 62, 58, 69, 42, 52, 61, 50, 66, 51, 74, 80, 73, 69, 83, 46, 53, 62, 66, 83, 67, 57, 62, 53, 70, 45, 70, 58, 59, 50, 96, 70, 56, 102, 36, 69, 61, 68, 67, 65, 96, 77, 61, 54, 91, 66, 63, 55, 77, 65, 77, 55, 61, 79, 43, 95, 93, 73, 53, 73, 61, 66, 43, 61, 62, 85, 46, 91, 53, 48, 63, 61, 105, 72, 66, 98, 55, 56, 60, 52, 56, 70, 65, 98, 69, 63, 49, 71, 46, 76, 63, 57, 95, 78, 59, 49, 85, 85, 80, 52, 74, 64, 73, 99, 81, 37, 77, 73, 52, 65, 64, 85, 88, 66, 59, 73, 71, 83, 64, 50, 73, 79, 54, 51, 56, 127, 66, 153, 93, 80, 52, 67, 58, 53, 30, 55, 74, 55, 46, 67, 59, 83, 64, 63, 54, 69, 66, 28, 71, 71, 50, 38, 60, 77, 70, 69, 64, 67, 63, 57, 55, 49, 55, 48, 52, 68, 60, 54, 95, 54, 70, 59, 50, 67, 112, 79, 68, 88, 66, 69, 65, 41, 40, 45, 61, 52, 70, 67, 64, 59, 66, 68, 75, 91, 57, 62, 53, 56, 75, 68, 98, 68, 74, 51, 58, 44, 72, 70, 69, 45, 66, 54, 40, 52, 74, 77, 76, 69, 61, 83, 86, 100, 64, 56, 54, 67, 91, 70, 58, 55, 81, 63, 64, 62, 59, 46, 78, 93, 77, 50, 45, 74, 68, 74, 73, 74, 51, 69, 51, 58, 68, 80, 61, 69, 61, 70, 56, 59, 52, 63, 53, 68, 75, 57, 61, 47, 64, 57, 75, 66, 60, 88, 55, 69, 68, 73, 45, 88, 73, 41, 64, 46, 58, 78, 66, 93, 75, 83, 75, 90, 66, 65, 45, 56, 79, 70, 100, 79, 68, 49, 69, 76, 73, 83, 54, 57, 86, 63, 57, 77, 54, 69, 78, 70, 106, 85, 48, 67, 86, 60, 57, 48, 84, 51, 65, 57, 67, 42, 80, 53, 63, 68, 85, 68, 61, 60, 58, 104, 55, 75, 80, 59, 43, 99, 48, 72, 72, 83, 86, 97, 63, 43, 73, 74, 62, 72, 62, 77, 59, 59, 97, 62, 58, 53, 53, 62, 90, 55, 110, 69, 50, 69, 56, 63, 73, 56, 84, 92, 58, 66, 84, 47, 58, 61, 69, 59, 73, 78, 68, 55, 61, 71, 47, 63, 99, 59, 52, 43, 64, 52, 61, 68, 60, 57, 64, 79, 63, 71, 47, 71, 48, 51, 74, 62, 75, 59, 75, 49, 62, 70, 64, 75, 80, 63, 87, 79, 76, 77, 69, 86, 73, 79, 97, 46, 65, 39, 66, 71, 80, 56, 145, 68, 40, 65, 54, 76, 63, 59, 83, 49, 47, 66, 67, 70, 64, 70, 80, 61, 54, 77, 82, 53, 66, 73, 65, 57, 62, 71, 75, 53, 58, 61, 59, 78, 63, 54, 54, 63, 61, 75, 54, 61, 44, 49, 57, 74, 52, 60, 95, 60, 67, 44, 78, 69, 105, 79, 63, 63, 67, 70, 79, 59, 82, 64, 53, 58, 77, 63, 56, 87, 66, 85, 61, 48, 65, 53, 70, 58, 56, 74, 64, 67, 91, 66, 63, 49, 48, 94, 48, 71, 74, 62, 68, 71, 62, 85, 68, 62, 48, 89, 73, 60, 62, 63, 94, 60, 82, 55, 57, 64, 50, 64, 58, 56, 102, 47, 65, 61, 67, 60, 67, 70, 62, 72, 56, 66, 53, 80, 72, 66, 48, 87, 71, 70, 56, 54, 61, 53, 55, 60, 63, 66, 84, 61, 49, 82, 61, 61, 64, 68, 72, 63, 71, 64, 72, 74, 57, 97, 88, 60, 62, 79, 52, 40, 69, 60, 53, 56, 65, 68, 71, 33, 49, 57, 94, 60, 69, 73, 56, 53, 71, 61, 78, 65, 47, 77, 42, 72, 65, 58, 88, 92, 61, 101, 63, 113, 66, 57, 67, 50, 65, 104, 63, 69, 74, 41, 58, 79, 62, 70, 48, 67, 72, 64, 75, 75, 68, 59, 71, 72, 60, 55, 60, 89, 69, 69, 74, 38, 60, 83, 65, 78, 94, 79, 74, 51, 66, 90, 61, 69, 66, 50, 57, 53, 84, 48, 58, 75, 53, 63, 64, 75, 71, 43, 57, 52, 55, 60, 69, 51, 68, 68, 64, 75, 57, 62, 57, 95, 61, 44, 65, 73, 70, 76, 55, 58, 59, 64, 95, 64, 61, 60, 72, 49, 61, 49, 66, 78, 74, 84, 60, 51, 38, 76, 74, 76, 72, 136, 54, 68, 87, 67, 64, 76, 67, 88, 81, 91, 56, 56, 72, 60, 62, 85, 53, 60, 87, 68, 63, 65, 66, 60, 60, 73, 51, 83, 57, 57, 77, 72, 57, 58, 61, 72, 62, 76, 89, 45, 54, 67, 61, 71, 54, 76, 58, 52, 50, 41, 70, 56, 59, 57, 75, 39, 63, 49, 76, 62, 56, 54, 59, 70, 57, 79, 85, 57, 49, 60, 68, 48, 83, 62, 46, 68, 38, 74, 73, 80, 66, 93, 84, 62, 82, 46, 89, 70, 62, 64, 54, 58, 74, 57, 66, 68, 62, 87, 61, 70, 73, 61, 62, 49, 66, 56, 67, 99, 58, 85, 41, 86, 57, 49, 65, 54, 64, 73, 88, 72, 80, 54, 74, 60, 80, 74, 68, 64, 54, 57, 58, 78, 83, 113, 68, 62, 67, 46, 90, 45, 62, 64, 75, 70, 77, 58, 67, 47, 66, 57, 87, 52, 66, 65, 87, 100, 78, 82, 76, 64, 66, 81, 48, 59, 63, 76, 62, 48, 69, 58, 55, 67, 72, 73, 40, 74, 63, 49, 68, 70, 60, 122, 52, 65, 51, 68, 71, 65, 84, 65, 53, 71, 62, 70, 37, 68, 78, 76, 44, 77, 51, 82, 57, 60, 75, 61, 47, 67, 46, 63, 77, 65, 59, 59, 64, 69, 76, 65, 56, 67, 79, 70, 69, 57, 52, 70, 54, 66, 72, 58, 60, 85, 75, 72, 60, 59, 38, 67, 57, 80, 58, 52, 55, 65, 51, 55, 80, 42, 50, 50, 55, 66, 57, 58, 51, 60, 63, 40, 62, 66, 70, 84, 72, 52, 67, 66, 58, 68, 73, 70, 86, 51, 65, 63, 48, 80, 46, 68, 86, 67, 49, 76, 71, 64, 66, 66, 69, 54, 68, 61, 85, 71, 63, 68, 65, 50, 103, 44, 55, 72, 66, 60, 59, 48, 59, 46, 47, 67, 78, 41, 73, 60, 77, 63, 46, 59, 64, 41, 62, 61, 62, 85, 63, 81, 59, 73, 78, 45, 73, 67, 57, 73, 56, 60, 82, 63, 70, 80, 63, 55, 61, 71, 63, 67, 64, 53, 49, 59, 54, 57, 53, 61, 81, 71, 69, 54, 84, 72, 79, 59, 146, 74, 76, 65, 53, 59, 60, 60, 43, 73, 79, 63, 80, 55, 78, 80, 59, 60, 74, 77, 80, 61, 62, 57, 54, 60, 53, 55, 63, 55, 69, 53, 60, 58, 82, 53, 78, 59, 62, 71, 68, 97, 64, 76, 90, 67, 58, 88, 60, 70, 69, 75, 54, 65, 49, 58, 56, 57, 63, 72, 59, 74, 84, 57, 58, 55, 75, 79, 89, 89, 66, 64, 55, 48, 61, 57, 72, 74, 79, 66, 66, 102, 47, 60, 63, 52, 61, 62, 57, 79, 43, 62, 60, 60, 68, 77, 84, 61, 53, 83, 157, 71, 83, 56, 84, 91, 75, 78, 58, 63, 52, 98, 113, 55, 53, 77, 85, 41, 67, 45, 66, 74, 80, 71, 72, 59, 55, 65, 54, 53, 65, 54, 105, 64, 46, 56, 45, 55, 68, 79, 64, 74, 59, 63, 70, 59, 78, 49, 55, 50, 66, 57, 77, 59, 59, 92, 71, 70, 80, 56, 49, 50, 60, 74, 54, 72, 68, 62, 63, 63, 53, 43, 62, 98, 62, 68, 55, 54, 74, 84, 87, 67, 52, 76, 46, 70, 68, 58, 41, 58, 81, 85, 51, 105, 67, 69, 68, 96, 70, 68, 82, 64, 60, 79, 53, 55, 59, 65, 86, 86, 40, 46, 78, 89, 60, 77, 77, 71, 116, 43, 52, 67, 45, 108, 59, 42, 68, 76, 51, 70, 56, 72, 57, 62, 73, 64, 52, 51, 69, 74, 55, 56, 69, 80, 69, 68, 43, 40, 64, 50, 68, 61, 63, 59, 66, 88, 62, 54, 76, 54, 71, 69, 66, 69, 57, 77, 67, 74, 77, 61, 63, 76, 72, 67, 61, 56, 46, 47, 54, 78, 42, 71, 93, 65, 68, 82, 58, 74, 60, 57, 50, 57, 60, 94, 59, 62, 41, 56, 62, 43, 51, 57, 87, 57, 71, 58, 74, 56, 72, 69, 91, 62, 62, 65, 74, 47, 87, 85, 67, 50, 54, 62, 37, 81, 42, 61, 71, 97, 54, 66, 68, 86, 58, 49, 45, 52, 70, 58, 77, 86, 84, 52, 60, 52, 71, 52, 75, 84, 67, 72, 76, 65, 86, 64, 109, 47, 39, 48, 77, 56, 59, 57, 63, 77, 55, 76, 65, 58, 80, 68, 62, 63, 56, 70, 100, 62, 50, 44, 45, 48, 87, 46, 112, 57, 63, 71, 101, 84, 61, 69, 72, 69, 51, 59, 48, 76, 76, 63, 66, 58, 67, 53, 64, 67, 71, 61, 67, 58, 62, 78, 66, 70, 85, 77, 69, 87, 63, 49, 51, 66, 68, 49, 74, 67, 68, 65, 53, 48, 59, 50, 62, 57, 61, 57, 55, 105, 82, 73, 61, 73, 62, 49, 77, 52, 57, 74, 54, 81, 71, 70, 50, 114, 61, 40, 63, 76, 74, 65, 65, 51, 55, 42, 65, 72, 43, 57, 56, 88, 75, 85, 64, 52, 64, 57, 83, 61, 68, 96, 75, 81, 83, 72, 51, 67, 55, 52, 59, 62, 64, 56, 75, 53, 61, 54, 45, 56, 85, 93, 43, 65, 62, 56, 47, 64, 61, 45, 40, 73, 60, 78, 75, 70, 80, 59, 56, 49, 90, 67, 67, 80, 57, 65, 53, 66, 77, 48, 59, 66, 55, 80, 85, 76, 63, 51, 53, 76, 72, 37, 68, 42, 46, 67, 74, 74, 78, 56, 87, 55, 70, 58, 63, 61, 131, 60, 63, 67, 51, 78, 60, 57, 85, 57, 76, 82, 58, 54, 59, 53, 70, 62, 70, 87, 52, 55, 45, 60, 61, 70, 62, 60, 65, 59, 58, 63, 57, 88, 81, 47, 61, 59, 65, 74, 53, 66, 62, 64, 57, 72, 66, 65, 91, 58, 45, 88, 65, 62, 39, 60, 56, 52, 62, 60, 55, 67, 75, 61, 69, 81, 68, 55, 64, 56, 49, 49, 46, 70, 80, 106, 73, 50, 60, 52, 76, 77, 60, 59, 87, 55, 68, 50, 51, 59, 63, 55, 79, 75, 68, 88, 60, 75, 69, 94, 67, 64, 56, 83, 48, 54, 78, 63, 63, 68, 86, 89, 73, 54, 61, 59, 77, 69, 51, 60, 60, 68, 108, 75, 52, 87, 70, 51, 79, 69, 55, 35, 88, 70, 60, 64, 67, 57, 59, 59, 59, 51, 69, 77, 65, 71, 95, 60, 57, 65, 58, 45, 53, 57, 97, 67, 60, 71, 62, 73, 64, 51, 66, 101, 82, 76, 69, 64, 62, 62, 60, 61, 53, 63, 55, 66, 65, 65, 78, 76, 89, 77, 36, 70, 42, 77, 58, 65, 58, 64, 89, 49, 56, 58, 64, 84, 60, 76, 66, 100, 76, 63, 63, 64, 54, 65, 56, 52, 82, 50, 67, 70, 86, 81, 54, 55, 48, 70, 43, 106, 63, 56, 54, 67, 73, 40, 57, 47, 36, 61, 71, 92, 89, 87, 77, 61, 54, 72, 66, 71, 58, 56, 109, 79, 73, 66, 65, 79, 84, 54, 67, 50, 57, 57, 50, 53, 61, 80, 79, 90, 46, 57, 61, 65, 65, 54, 57, 32, 72, 57, 59, 56, 68, 61, 67, 44, 76, 95, 80, 59, 62, 52, 63, 51, 64, 80, 89, 54, 74, 55, 47, 60, 63, 50, 75, 73, 57, 60, 104, 62, 74, 111, 56, 68, 46, 68, 77, 65, 75, 82, 62, 57, 56, 54, 48, 78, 74, 57, 69, 42, 42, 68, 59, 56, 71, 66, 67, 53, 56, 69, 69, 80, 56, 75, 65, 60, 74, 44, 62, 83, 78, 76, 69, 79, 105, 46, 45, 67, 76, 112, 54, 63, 74, 100, 57, 69, 94, 61, 46, 64, 52, 58, 55, 54, 77, 67, 66, 77, 63, 63, 55, 64, 71, 53, 68, 70, 66, 67, 88, 74, 66, 70, 51, 83, 57, 92, 72, 62, 88, 45, 108, 81, 53, 64, 52, 41, 56, 61, 49, 72, 86, 69, 64, 59, 58, 58, 88, 60, 64, 48, 56, 60, 65, 64, 60, 64, 58, 66, 52, 74, 42, 65, 89, 75, 52, 77, 51, 69, 78, 71, 59, 59, 68, 75, 48, 91, 65, 72, 56, 74, 69, 66, 55, 48, 74, 46, 48, 95, 107, 77, 67, 69, 77, 78, 65, 71, 69, 84, 60, 67, 95, 63, 67, 52, 73, 48, 49, 62, 101, 61, 73, 44, 68, 73, 78, 65, 55, 55, 95, 60, 87, 53, 65, 55, 58, 51, 65, 81, 74, 86, 84, 60, 57, 54, 67, 71, 64, 68, 56, 79, 87, 61, 79, 54, 62, 66, 58, 60, 59, 39, 53, 55, 89, 60, 71, 66, 81, 66, 54, 58, 58, 61, 56, 44, 65, 57, 70, 57, 70, 69, 92, 53, 86, 55, 64, 56, 66, 87, 73, 77, 59, 55, 78, 54, 67, 56, 57, 66, 79, 61, 65, 62, 70, 76, 66, 52, 76, 70, 68, 89, 64, 56, 68, 36, 63, 55, 54, 54, 83, 61, 68, 66, 87, 68, 73, 62, 76, 112, 66, 61, 66, 124, 54, 71, 68, 56, 58, 53, 62, 56, 62, 69, 62, 75, 69, 86, 49, 58, 96, 82, 80, 78, 50, 52, 52, 53, 72, 67, 76, 68, 62, 76, 50, 66, 69, 64, 76, 51, 45, 59, 48, 70, 78, 58, 69, 68, 69, 66, 62, 81, 86, 90, 60, 75, 63, 54, 58, 70, 51, 62, 48, 48, 74, 58, 94, 80, 62, 64, 72, 80, 48, 151, 54, 83, 63, 56, 46, 74, 49, 93, 44, 62, 59, 69, 59, 80, 86, 45, 71, 79, 53, 53, 61, 71, 67, 45, 72, 83, 72, 68, 68, 44, 75, 53, 48, 88, 52, 41, 73, 63, 70, 67, 76, 45, 55, 51, 75, 89, 58, 80, 64, 69, 76, 75, 46, 77, 65, 76, 104, 56, 70, 42, 82, 48, 94, 68, 73, 47, 76, 68, 47, 84, 55, 81, 53, 51, 63, 73, 69, 71, 62, 53, 51, 69, 74, 69, 67, 63, 64, 74, 69, 69, 87, 71, 70, 45, 65, 76, 82, 76, 66, 46, 79, 77, 67, 44, 69, 50, 47, 80, 61, 62, 72, 83, 49, 66, 73, 84, 74, 64, 73, 46, 48, 50, 62, 72, 76, 72, 63, 64, 45, 55, 60, 83, 47, 55, 67, 55, 56, 75, 56, 70, 72, 51, 55, 84, 67, 69, 74, 48, 48, 84, 59, 67, 63, 42, 74, 65, 81, 47, 91, 63, 58, 54, 66, 35, 80, 48, 58, 72, 63, 57, 62, 75, 52, 64, 83, 59, 60, 70, 77, 65, 64, 56, 82, 53, 66, 65, 59, 54, 60, 75, 45, 125, 70, 87, 52, 58, 70, 67, 69, 63, 57, 51, 54, 46, 42, 104, 63, 63, 70, 65, 111, 67, 51, 58, 64, 108, 48, 59, 68, 57, 56, 67, 62, 63, 72, 60, 80, 57, 45, 60, 72, 39, 89, 75, 65, 58, 76, 84, 23, 62, 66, 62, 76, 50, 61, 55, 55, 58, 60, 64, 61, 51, 61, 62, 39, 65, 57, 56, 94, 84, 89, 35, 76, 82, 59, 49, 73, 145, 52, 72, 52, 78, 63, 54, 76, 63, 66, 66, 70, 94, 58, 54, 74, 55, 57, 55, 67, 64, 67, 73, 71, 66, 58, 58, 76, 64, 62, 50, 59, 70, 51, 72, 115, 91, 65, 59, 67, 58, 56, 126, 72, 41, 56, 71, 64, 42, 67, 45, 61, 46, 59, 65, 71, 98, 58, 90, 59, 56, 63, 103, 47, 74, 58, 64, 60, 56, 77, 75, 60, 72, 70, 65, 59, 73, 49, 92, 81, 56, 77, 66, 64, 86, 59, 86, 58, 77, 98, 69, 48, 106, 58, 57, 61, 57, 55, 49, 75, 74, 69, 63, 54, 53, 64, 111, 74, 62, 75, 118, 53, 75, 62, 51, 53, 81, 61, 49, 59, 49, 49, 70, 65, 51, 71, 64, 64, 82, 61, 85, 56, 48, 66, 78, 78, 39, 61, 85, 96, 49, 63, 44, 49, 92, 57, 38, 60, 92, 53, 63, 56, 75, 77, 64, 61, 76, 60, 79, 49, 67, 47, 47, 49, 152, 56, 49, 62, 44, 74, 83, 62, 67, 58, 51, 61, 57, 62, 78, 78, 85, 60, 64, 63, 66, 71, 65, 67, 59, 97, 82, 71, 67, 125, 67, 69, 48, 87, 63, 77, 87, 48, 47, 69, 72, 40, 58, 86, 69, 51, 36, 85, 50, 72, 103, 68, 63, 74, 65, 65, 81, 76, 75, 66, 70, 84, 66, 54, 58, 53, 48, 76, 72, 71, 60, 57, 83, 60, 100, 61, 45, 63, 74, 58, 45, 89, 95, 83, 69, 107, 62, 62, 57, 64, 67, 59, 66, 62, 75, 60, 62, 48, 59, 65, 63, 67, 59, 48, 64, 66, 65, 75, 69, 65, 80, 76, 77, 77, 64, 44, 51, 54, 66, 77, 83, 25, 48, 57, 55, 73, 55, 74, 62, 68, 58, 66, 45, 43, 61, 67, 61, 58, 55, 51, 69, 52, 61, 69, 66, 48, 55, 72, 65, 97, 56, 70, 57, 46, 49, 68, 63, 64, 71, 54, 56, 57, 68, 75, 58, 71, 63, 68, 75, 64, 52, 69, 56, 95, 70, 94, 68, 52, 74, 65, 76, 56, 62, 56, 65, 57, 63, 81, 67, 71, 45, 60, 84, 68, 75, 53, 76, 76, 37, 110, 122, 84, 73, 64, 55, 68, 73, 55, 87, 48, 70, 60, 65, 56, 44, 82, 48, 41, 57, 64, 62, 77, 86, 68, 64, 65, 59, 45, 79, 57, 63, 69, 46, 71, 75, 55, 53, 56, 71, 69, 73, 51, 72, 47, 49, 31, 59, 79, 102, 49, 73, 68, 85, 59, 54, 45, 56, 54, 63, 48, 74, 69, 59, 87, 55, 70, 93, 67, 48, 49, 89, 60, 72, 86, 53, 59, 59, 65, 56, 78, 48, 84, 83, 61, 63, 66, 100, 72, 59, 71, 72, 57, 64, 72, 73, 56, 81, 41, 69, 72, 49, 52, 64, 62, 89, 52, 62, 74, 60, 49, 56, 56, 50, 74, 60, 53, 58, 74, 77, 78, 58, 63, 63, 57, 86, 78, 75, 61, 75, 48, 75, 48, 58, 63, 61, 77, 72, 52, 46, 58, 77, 63, 47, 72, 52, 60, 56, 93, 66, 67, 69, 61, 77, 55, 51, 37, 76, 68, 58, 81, 50, 49, 62, 63, 90, 69, 49, 74, 48, 71, 80, 40, 49, 67, 62, 65, 54, 74, 60, 51, 62, 82, 74, 86, 56, 77, 55, 35, 66, 90, 52, 75, 57, 57, 66, 52, 62, 65, 83, 81, 75, 85, 71, 67, 58, 39, 69, 55, 58, 105, 100, 42, 50, 63, 76, 60, 62, 61, 66, 68, 55, 75, 107, 76, 56, 67, 64, 112, 58, 67, 74, 55, 73, 49, 65, 46, 88, 43, 96, 39, 64, 75, 46, 62, 77, 65, 71, 54, 43, 59, 60, 52, 65, 56, 75, 59, 58, 55, 105, 91, 82, 82, 72, 62, 58, 56, 98, 100, 68, 59, 120, 72, 81, 75, 63, 52, 64, 73, 76, 85, 61, 51, 78, 85, 50, 57, 61, 38, 103, 59, 62, 134, 65, 84, 54, 67, 68, 56, 77, 77, 74, 75, 62, 144, 69, 70, 53, 76, 62, 48, 78, 53, 59, 61, 96, 55, 53, 79, 45, 79, 59, 54, 56, 64, 66, 78, 50, 81, 44, 93, 87, 65, 75, 89, 63, 74, 67, 71, 62, 106, 70, 65, 79, 45, 54, 98, 82, 77, 82, 56, 35, 71, 86, 59, 82, 79, 49, 72, 76, 48, 69, 78, 56, 67, 38, 57, 49, 52, 71, 63, 58, 67, 147, 63, 79, 74, 59, 51, 61, 66, 65, 57, 82, 94, 61, 59, 58, 69, 42, 45, 49, 77, 75, 83, 57, 80, 75, 80, 62, 74, 55, 84, 57, 62, 31, 64, 55, 49, 68, 72, 81, 56, 67, 67, 62, 50, 72, 55, 92, 62, 103, 76, 78, 66, 69, 60, 55, 79, 61, 65, 59, 57, 71, 69, 61, 82, 72, 49, 93, 61, 65, 44, 55, 72, 54, 55, 106, 56, 45, 62, 41, 60, 61, 80, 38, 54, 79, 67, 59, 75, 59, 79, 88, 55, 71, 53, 76, 63, 78, 63, 69, 81, 80, 65, 63, 58, 75, 72, 45, 76, 57, 59, 83, 58, 72, 55, 53, 62, 52, 55, 50, 90, 87, 84, 68, 58, 46, 119, 92, 69, 71, 61, 60, 64, 94, 86, 76, 67, 71, 61, 61, 69, 47, 82, 63, 79, 54, 69, 68, 83, 45, 59, 71, 74, 46, 47, 79, 82, 85, 64, 54, 69, 90, 49, 55, 55, 121, 91, 67, 78, 65, 68, 75, 63, 60, 36, 81, 53, 82, 58, 91, 60, 70, 67, 62, 78, 73, 68, 63, 71, 58, 94, 61, 86, 70, 67, 76, 54, 64, 63, 76, 58, 66, 77, 54, 67, 50, 45, 56, 104, 65, 64, 64, 64, 51, 63, 116, 67, 94, 50, 57, 45, 62, 68, 63, 55, 76, 52, 47, 75, 77, 53, 53, 82, 69, 57, 71, 63, 60, 67, 89, 73, 62, 76, 99, 54, 56, 56, 62, 81, 74, 60, 56, 50, 63, 63, 111, 85, 53, 53, 55, 107, 65, 59, 56, 58, 51, 53, 57, 44, 72, 77, 57, 65, 61, 70, 54, 59, 61, 57, 62, 64, 67, 78, 51, 64, 84, 61, 52, 74, 67, 61, 59, 73, 74, 108, 66, 75, 75, 64, 67, 75, 70, 67, 58, 55, 75, 83, 63, 42, 64, 62, 69, 82, 88, 53, 84, 56, 44, 68, 63, 69, 52, 59, 85, 65, 71, 79, 58, 66, 85, 80, 69, 72, 86, 61, 68, 55, 59, 58, 69, 64, 53, 54, 62, 79, 66, 48, 72, 52, 74, 69, 51, 42, 67, 59, 57, 81, 60, 54, 54, 46, 61, 78, 69, 109, 56, 63, 58, 60, 63, 66, 74, 62, 57, 76, 48, 71, 58, 45, 77, 61, 64, 61, 55, 45, 65, 46, 66, 74, 64, 56, 82, 74, 71, 81, 100, 61, 61, 61, 54, 60, 57, 76, 63, 39, 54, 74, 53, 69, 86, 80, 95, 68, 68, 88, 81, 71, 70, 58, 71, 83, 77, 74, 58, 55, 78, 64, 56, 73, 73, 69, 52, 102, 66, 59, 93, 63, 67, 82, 81, 50, 72, 72, 53, 64, 64, 57, 63, 57, 59, 57, 55, 56, 59, 61, 77, 55, 71, 51, 60, 58, 54, 61, 66, 64, 104, 51, 68, 68, 77, 55, 64, 76, 74, 68, 71, 69, 91, 67, 55, 58, 87, 57, 73, 72, 63, 60, 85, 64, 48, 57, 57, 71, 51, 55, 77, 48, 67, 80, 49, 63, 53, 67, 57, 49, 63, 72, 72, 90, 51, 60, 77, 65, 58, 65, 65, 77, 84, 66, 62, 73, 75, 67, 51, 74, 67, 76, 61, 61, 66, 67, 73, 70, 76, 46, 98, 69, 53, 46, 62, 53, 61, 63, 58, 71, 68, 65, 73, 53, 65, 51, 85, 94, 53, 53, 67, 52, 53, 86, 68, 73, 82, 60, 46, 71, 86, 87, 75, 43, 59, 66, 58, 58, 92, 53, 60, 59, 103, 53, 72, 41, 53, 42, 75, 60, 69, 57, 71, 56, 62, 71, 56, 61, 87, 57, 65, 55, 71, 76, 66, 108, 62, 75, 53, 51, 56, 51, 68, 54, 68, 78, 64, 61, 73, 64, 61, 70, 71, 59, 73, 77, 73, 57, 87, 60, 60, 37, 73, 80, 93, 92, 59, 75, 68, 52, 56, 62, 38, 52, 61, 95, 59, 35, 59, 86, 72, 59, 73, 60, 64, 36, 54, 71, 63, 68, 66, 65, 67, 82, 61, 121, 72, 46, 48, 37, 63, 61, 87, 59, 105, 56, 55, 81, 64, 86, 60, 80, 44, 55, 79, 52, 68, 57, 73, 68, 49, 94, 57, 54, 84, 66, 73, 56, 62, 64, 55, 66, 59, 87, 53, 58, 123, 50, 140, 102, 59, 63, 31, 89, 54, 101, 54, 54, 54, 58, 49, 70, 78, 105, 83, 57, 40, 61, 52, 74, 74, 83, 60, 52, 51, 60, 72, 64, 48, 82, 86, 62, 48, 56, 74, 53, 55, 61, 76, 32, 69, 114, 40, 57, 52, 61, 73, 80, 98, 71, 63, 69, 87, 69, 63, 57, 58, 59, 68, 44, 62, 82, 62, 77, 65, 42, 98, 61, 56, 38, 49, 53, 94, 94, 49, 66, 67, 62, 77, 71, 62, 69, 69, 49, 43, 70, 65, 84, 44, 90, 84, 55, 83, 90, 51, 57, 54, 63, 63, 60, 87, 87, 66, 77, 59, 70, 65, 61, 82, 80, 61, 79, 57, 56, 62, 52, 70, 70, 50, 66, 96, 81, 66, 61, 79, 59, 91, 74, 46, 77, 71, 65, 45, 61, 59, 82, 65, 55, 70, 58, 83, 66, 49, 48, 115, 58, 88, 45, 56, 73, 55, 50, 35, 57, 69, 53, 72, 53, 52, 83, 57, 72, 51, 62, 52, 64, 50, 53, 57, 64, 86, 60, 75, 59, 70, 41, 69, 54, 54, 65, 68, 50, 53, 56, 95, 62, 53, 83, 89, 45, 63, 48, 69, 69, 56, 89, 63, 63, 82, 91, 61, 61, 64, 66, 63, 52, 43, 57, 57, 56, 79, 68, 53, 55, 81, 78, 51, 49, 58, 62, 51, 86, 77, 60, 67, 73, 74, 86, 80, 66, 77, 69, 80, 56, 63, 47, 73, 89, 78, 71, 86, 52, 73, 77, 62, 71, 71, 53, 55, 64, 92, 59, 62, 73, 58, 60, 66, 61, 72, 65, 67, 78, 55, 72, 58, 74, 77, 53, 82, 82, 87, 61, 90, 75, 52, 65, 78, 93, 50, 80, 73, 66, 84, 57, 67, 57, 86, 64, 74, 97, 75, 76, 51, 89, 64, 85, 70, 62, 63, 64, 75, 110, 94, 43, 82, 63, 65, 68, 61, 51, 64, 47, 74, 46, 56, 45, 63, 71, 74, 54, 75, 50, 67, 71, 58, 51, 70, 77, 72, 63, 73, 53, 59, 51, 81, 53, 61, 48, 64, 67, 69, 63, 85, 79, 93, 56, 36, 42, 67, 73, 64, 55, 65, 52, 81, 94, 72, 46, 52, 94, 55, 51, 72, 52, 66, 72, 42, 45, 90, 50, 64, 70, 63, 75, 58, 73, 77, 73, 62, 196, 83, 43, 65, 71, 78, 135, 108, 71, 65, 53, 61, 51, 43, 68, 50, 59, 50, 79, 63, 70, 73, 77, 55, 102, 48, 73, 79, 49, 61, 71, 63, 67, 50, 67, 87, 123, 62, 51, 53, 75, 59, 155, 73, 58, 96, 73, 44, 66, 60, 72, 57, 77, 100, 31, 65, 50, 70, 71, 67, 72, 62, 57, 58, 99, 46, 53, 79, 77, 68, 52, 73, 48, 83, 63, 70, 67, 71, 60, 67, 57, 70, 69, 64, 86, 61, 74, 63, 63, 70, 63, 58, 69, 69, 55, 66, 74, 62, 61, 51, 45, 70, 76, 80, 66, 85, 70, 53, 51, 55, 41, 67, 95, 95, 62, 132, 55, 73, 69, 81, 115, 76, 59, 50, 68, 61, 41, 51, 53, 63, 65, 55, 59, 54, 61, 54, 83, 61, 54, 57, 51, 100, 56, 74, 65, 61, 70, 60, 70, 77, 56, 82, 104, 48, 49, 83, 55, 60, 50, 51, 65, 65, 62, 81, 86, 43, 101, 51, 100, 63, 81, 71, 80, 41, 80, 38, 48, 114, 71, 66, 66, 80, 105, 65, 41, 44, 44, 66, 76, 77, 52, 92, 86, 96, 58, 52, 53, 65, 58, 68, 75, 65, 92, 60, 61, 52, 56, 47, 71, 36, 71, 44, 101, 80, 58, 59, 67, 55, 48, 51, 46, 90, 90, 94, 55, 92, 68, 82, 62, 46, 45, 73, 57, 46, 58, 52, 65, 79, 78, 64, 57, 78, 96, 60, 32, 61, 46, 81, 51, 75, 56, 51, 84, 64, 59, 60, 59, 58, 60, 58, 82, 65, 72, 73, 60, 84, 63, 75, 89, 50, 39, 52, 46, 64, 101, 55, 46, 99, 78, 67, 92, 72, 63, 121, 96, 45, 61, 50, 57, 50, 53, 89, 92, 37, 71, 79, 78, 56, 42, 77, 87, 69, 33, 98, 66, 56, 49, 65, 45, 59, 39, 83, 59, 78, 57, 80, 87, 62, 52, 63, 57, 57, 51, 64, 67, 66, 45, 107, 67, 59, 90, 62, 66, 64, 57, 66, 101, 64, 30, 69, 64, 64, 72, 68, 90, 56, 60, 46, 58, 67, 67, 57, 73, 60, 88, 60, 52, 80, 83, 70, 78, 62, 72, 62, 62, 59, 77, 73, 104, 56, 50, 73, 55, 63, 43, 76, 70, 85, 63, 62, 74, 55, 57, 53, 63, 56, 79, 59, 88, 72, 72, 91, 74, 62, 56, 88, 54, 54, 59, 64, 71, 89, 58, 69, 69, 75, 82, 98, 60, 68, 55, 76, 68, 51, 51, 73, 64, 42, 55, 65, 56, 80, 65, 61, 53, 74, 58, 67, 54, 67, 60, 63, 64, 58, 48, 76, 54, 79, 61, 58, 62, 90, 50, 54, 79, 82, 62, 44, 71, 65, 79, 80, 33, 76, 80, 62, 35, 95, 59, 55, 48, 57, 57, 123, 46, 60, 68, 53, 90, 50, 86, 59, 74, 50, 49, 98, 49, 89, 41, 58, 73, 49, 60, 48, 55, 73, 95, 100, 98, 89, 61, 60, 59, 70, 45, 90, 72, 56, 57, 63, 69, 66, 55, 42, 63, 70, 68, 49, 65, 65, 62, 54, 42, 78, 51, 40, 46, 53, 45, 73, 54, 71, 50, 69, 55, 108, 75, 49, 85, 62, 53, 72, 74, 70, 54, 71, 77, 76, 69, 72, 72, 76, 68, 45, 56, 86, 72, 81, 65, 77, 63, 56, 52, 53, 74, 60, 78, 58, 66, 50, 57, 66, 83, 73, 54, 67, 61, 67, 46, 75, 56, 50, 70, 61, 92, 67, 82, 92, 93, 79, 67, 70, 66, 57, 59, 69, 48, 77, 88, 59, 102, 54, 65, 87, 79, 61, 102, 59, 14, 74, 75, 96, 56, 52, 69, 96, 45, 62, 101, 53, 49, 59, 95, 69, 50, 74, 69, 65, 65, 75, 62, 82, 59, 48, 72, 50, 75, 69, 40, 82, 79, 62, 64, 64, 100, 70, 65, 66, 37, 68, 64, 118, 67, 61, 57, 68, 64, 50, 73, 99, 80, 63, 91, 55, 52, 57, 97, 74, 82, 78, 87, 47, 52, 64, 62, 72, 63, 49, 64, 60, 72, 57, 68, 83, 62, 84, 82, 49, 93, 66, 75, 51, 57, 113, 63, 59, 72, 40, 67, 68, 79, 68, 61, 67, 87, 55, 73, 58, 64, 72, 54, 53, 72, 48, 69, 63, 67, 107, 58, 70, 83, 55, 46, 80, 64, 71, 50, 66, 64, 67, 51, 86, 77, 111, 81, 59, 79, 90, 57, 58, 59, 63, 71, 71, 66, 96, 47, 54, 62, 49, 67, 85, 55, 88, 61, 68, 81, 68, 57, 31, 57, 71, 94, 54, 54, 69, 55, 81, 59, 66, 83, 65, 48, 91, 72, 45, 67, 60, 63, 50, 70, 61, 76, 67, 77, 83, 67, 54, 88, 68, 95, 63, 81, 65, 53, 64, 44, 93, 94, 65, 69, 56, 58, 50, 74, 55, 47, 71, 62, 65, 52, 59, 67, 50, 77, 70, 54, 74, 48, 106, 56, 76, 62, 60, 101, 52, 62, 85, 59, 76, 91, 75, 56, 55, 76, 82, 60, 56, 51, 60, 64, 87, 74, 75, 91, 54, 107, 66, 95, 53, 66, 79, 68, 46, 87, 46, 98, 69, 42, 55, 45, 41, 86, 110, 57, 41, 51, 69, 46, 77, 87, 52, 70, 73, 46, 56, 66, 75, 68, 76, 62, 72, 55, 54, 51, 50, 42, 73, 85, 74, 65, 70, 82, 67, 94, 66, 54, 38, 61, 69, 52, 54, 71, 128, 91, 60, 63, 68, 62, 60, 62, 79, 66, 59, 69, 55, 56, 46, 52, 43, 79, 41, 73, 67, 96, 67, 62, 67, 73, 48, 63, 56, 65, 70, 77, 49, 63, 60, 54, 67, 54, 61, 45, 63, 63, 59, 60, 71, 67, 79, 67, 51, 59, 60, 66, 73, 67, 82, 66, 63, 61, 66, 80, 44, 56, 65, 57, 52, 76, 69, 65, 60, 48, 61, 54, 53, 38, 64, 44, 67, 72, 49, 83, 39, 74, 59, 68, 76, 68, 40, 64, 73, 85, 70, 80, 66, 72, 81, 100, 66, 71, 80, 78, 77, 62, 74, 48, 41, 81, 56, 58, 70, 58, 61, 71, 71, 56, 58, 81, 64, 61, 50, 57, 91, 62, 61, 44, 80, 96, 82, 80, 60, 59, 38, 65, 106, 69, 76, 50, 46, 73, 103, 56, 60, 35, 61, 64, 60, 61, 80, 95, 52, 69, 80, 56, 61, 58, 98, 83, 61, 46, 64, 56, 79, 74, 47, 57, 81, 64, 50, 76, 47, 66, 57, 48, 58, 60, 69, 78, 57, 105, 56, 66, 59, 65, 69, 63, 67, 90, 50, 88, 74, 50, 67, 60, 81, 58, 73, 101, 65, 67, 78, 65, 47, 52, 64, 55, 58, 70, 42, 62, 77, 72, 56, 60, 52, 62, 57, 69, 59, 67, 55, 71, 67, 98, 70, 60, 45, 63, 87, 61, 56, 70, 81, 63, 74, 74, 70, 76, 55, 72, 73, 46, 57, 73, 70, 62, 57, 59, 66, 62, 69, 69, 78, 66, 75, 79, 62, 61, 83, 80, 60, 71, 45, 76, 53, 65, 49, 80, 110, 63, 63, 68, 75, 38, 55, 49, 62, 61, 57, 56, 76, 51, 62, 78, 59, 71, 58, 47, 62, 55, 53, 69, 66, 45, 64, 68, 42, 57, 64, 64, 80, 74, 75, 63, 87, 47, 69, 84, 63, 76, 66, 66, 60, 54, 72, 46, 73, 54, 71, 70, 54, 71, 57, 58, 80, 58, 104, 49, 65, 92, 117, 61, 58, 87, 103, 67, 73, 73, 70, 70, 67, 67, 58, 63, 67, 80, 65, 72, 75, 69, 70, 58, 83, 61, 62, 70, 75, 69, 72, 67, 64, 67, 83, 55, 49, 63, 77, 51, 65, 69, 67, 66, 55, 60, 69, 67, 56, 61, 92, 88, 57, 63, 76, 76, 63, 65, 57, 60, 59, 88, 54, 61, 57, 55, 80, 64, 87, 60, 92, 54, 77, 59, 52, 88, 49, 50, 58, 160, 51, 64, 44, 77, 66, 63, 55, 103, 142, 54, 54, 54, 55, 81, 74, 57, 66, 89, 66, 54, 94, 81, 64, 87, 86, 73, 73, 49, 78, 72, 82, 79, 74, 71, 71, 48, 88, 51, 82, 52, 64, 49, 52, 66, 55, 59, 58, 57, 61, 85, 62, 89, 67, 56, 47, 84, 50, 80, 84, 74, 73, 62, 60, 87, 46, 77, 66, 67, 52, 46, 68, 56, 66, 57, 67, 56, 54, 70, 63, 85, 72, 77, 74, 51, 55, 60, 92, 55, 67, 48, 62, 60, 75, 96, 73, 62, 64, 73, 51, 56, 70, 75, 57, 70, 83, 62, 55, 74, 61, 60, 106, 81, 65, 82, 64, 61, 80, 64, 54, 59, 57, 60, 60, 67, 68, 63, 45, 80, 55, 77, 59, 53, 51, 71, 59, 58, 61, 47, 70, 49, 69, 64, 60, 46, 57, 74, 56, 83, 63, 57, 55, 52, 54, 74, 74, 64, 62, 62, 88, 63, 75, 66, 66, 65, 62, 81, 57, 64, 65, 79, 55, 89, 61, 69, 53, 48, 74, 58, 51, 69, 51, 66, 63, 66, 69, 62, 50, 43, 62, 49, 67, 68, 68, 55, 59, 99, 74, 46, 69, 54, 70, 54, 82, 70, 55, 89, 63, 57, 69, 68, 57, 75, 68, 60, 100, 67, 80, 59, 66, 49, 103, 90, 70, 61, 64, 56, 80, 103, 71, 68, 59, 86, 43, 66, 61, 55, 75, 52, 61, 70, 52, 60, 57, 69, 60, 50, 50, 58, 51, 76, 70, 78, 36, 70, 72, 57, 72, 67, 60, 61, 47, 48, 58, 62, 64, 50, 56, 71, 82, 71, 67, 58, 69, 61, 78, 63, 61, 77, 64, 59, 64, 60, 55, 67, 64, 53, 77, 121, 64, 78, 52, 79, 63, 50, 61, 61, 63, 78, 56, 84, 78, 53, 61, 47, 64, 62, 62, 64, 68, 95, 55, 74, 62, 39, 55, 123, 63, 61, 89, 67, 63, 52, 76, 60, 98, 54, 56, 74, 46, 47, 65, 69, 76, 74, 57, 51, 44, 57, 70, 72, 69, 64, 53, 70, 73, 77, 49, 47, 81, 57, 63, 85, 52, 63, 61, 88, 69, 76, 68, 74, 64, 56, 62, 51, 51, 54, 80, 79, 71, 62, 60, 59, 78, 96, 56, 60, 68, 78, 83, 67, 61, 88, 51, 70, 57, 63, 48, 59, 60, 39, 71, 62, 58, 84, 74, 76, 60, 73, 60, 62, 58, 66, 54, 49, 71, 64, 33, 48, 68, 50, 76, 81, 58, 63, 45, 65, 68, 55, 82, 59, 45, 49, 72, 59, 56, 64, 63, 62, 63, 67, 75, 56, 75, 94, 67, 67, 52, 62, 54, 56, 61, 76, 87, 71, 92, 47, 54, 60, 70, 78, 67, 73, 60, 69, 70, 65, 70, 48, 91, 58, 74, 81, 59, 50, 49, 76, 96, 46, 80, 58, 75, 77, 74, 62, 55, 60, 68, 59, 55, 65, 70, 70, 69, 63, 65, 64, 62, 77, 83, 66, 54, 73, 56, 67, 46, 74, 72, 50, 52, 53, 61, 90, 60, 46, 76, 54, 59, 59, 88, 76, 59, 48, 57, 75, 53, 74, 94, 62, 83, 70, 61, 47, 68, 66, 55, 61, 71, 54, 62, 70, 64, 62, 57, 69, 107, 57, 60, 77, 66, 54, 56, 87, 73, 64, 59, 60, 61, 73, 54, 50, 48, 67, 58, 65, 61, 72, 84, 62, 65, 58, 69, 72, 74, 79, 68, 61, 64, 67, 85, 55, 68, 69, 70, 62, 76, 40, 77, 50, 92, 60, 52, 58, 61, 64, 71, 73, 65, 64, 61, 54, 63, 98, 59, 52, 51, 53, 64, 60, 84, 72, 61, 65, 79, 65, 68, 68, 66, 52, 60, 55, 64, 75, 83, 69, 91, 78, 66, 83, 78, 76, 76, 60, 95, 56, 69, 81, 66, 56, 48, 49, 71, 65, 75, 58, 72, 58, 60, 68, 84, 74, 58, 66, 53, 69, 65, 56, 75, 53, 118, 89, 62, 58, 57, 68, 65, 58, 58, 81, 48, 52, 56, 52, 122, 68, 67, 59, 85, 71, 113, 89, 88, 61, 63, 58, 73, 54, 58, 53, 67, 73, 55, 87, 65, 67, 62, 63, 92, 85, 88, 68, 69, 75, 62, 70, 89, 61, 56, 51, 80, 59, 60, 68, 68, 59, 59, 60, 90, 67, 77, 73, 57, 69, 50, 78, 50, 77, 69, 59, 51, 61, 63, 50, 78, 70, 84, 53, 72, 54, 59, 58, 56, 59, 71, 104, 51, 61, 73, 90, 125, 65, 67, 66, 41, 64, 42, 60, 79, 64, 48, 57, 131, 50, 59, 67, 64, 58, 55, 74, 74, 64, 57, 63, 71, 53, 37, 63, 65, 74, 68, 92, 63, 53, 72, 61, 74, 88, 64, 56, 66, 61, 66, 64, 49, 56, 50, 57, 64, 56, 75, 58, 63, 66, 86, 71, 71, 62, 66, 59, 61, 73, 86, 62, 52, 62, 77, 70, 59, 72, 61, 61, 56, 94, 55, 54, 56, 69, 57, 79, 72, 48, 74, 64, 84, 60, 46, 45, 59, 119, 63, 100, 78, 87, 71, 72, 59, 56, 67, 67, 53, 110, 54, 57, 81, 38, 67, 51, 91, 86, 70, 81, 54, 88, 49, 67, 92, 40, 49, 80, 66, 53, 79, 48, 87, 54, 64, 53, 70, 63, 62, 79, 49, 54, 59, 85, 86, 63, 99, 68, 55, 70, 132, 58, 74, 52, 68, 64, 101, 54, 56, 76, 74, 71, 81, 60, 57, 90, 60, 53, 69, 63, 45, 49, 58, 59, 75, 62, 37, 59, 80, 82, 71, 86, 76, 76, 48, 68, 68, 70, 48, 67, 76, 94, 47, 76, 70, 74, 74, 56, 60, 69, 56, 55, 56, 77, 58, 58, 54, 60, 62, 67, 69, 53, 87, 55, 89, 59, 58, 51, 59, 68, 81, 83, 71, 67, 63, 65, 65, 64, 73, 57, 55, 54, 74, 116, 61, 58, 54, 36, 123, 68, 63, 42, 89, 64, 76, 59, 58, 65, 69, 74, 76, 73, 69, 84, 60, 61, 44, 55, 67, 55, 80, 80, 47, 72, 48, 52, 79, 75, 57, 49, 73, 90, 64, 64, 68, 103, 54, 59, 50, 77, 63, 61, 70, 66, 71, 50, 58, 52, 72, 82, 58, 71, 62, 74, 46, 57, 65, 63, 74, 56, 53, 62, 50, 55, 47, 62, 67, 78, 74, 70, 77, 51, 79, 100, 55, 60, 58, 69, 72, 69, 43, 63, 92, 71, 70, 99, 154, 49, 68, 64, 46, 61, 60, 71, 52, 78, 61, 58, 44, 54, 49, 55, 62, 50, 82, 62, 76, 65, 45, 66, 64, 60, 59, 80, 62, 62, 55, 66, 55, 67, 62, 77, 62, 67, 97, 114, 49, 59, 71, 67, 69, 79, 83, 65, 70, 53, 65, 58, 70, 77, 52, 79, 54, 65, 62, 57, 86, 92, 60, 56, 73, 75, 85, 59, 70, 59, 96, 55, 62, 77, 54, 59, 75, 73, 44, 69, 66, 61, 50, 65, 72, 58, 79, 71, 90, 57, 49, 75, 54, 83, 79, 51, 69, 92, 48, 80, 56, 63, 65, 69, 95, 65, 67, 63, 59, 74, 66, 45, 51, 59, 47, 38, 85, 75, 63, 76, 56, 74, 47, 76, 133, 73, 51, 95, 59, 38, 60, 89, 80, 75, 88, 70, 65, 53, 74, 85, 75, 82, 63, 71, 68, 63, 53, 61, 85, 79, 61, 84, 68, 56, 64, 87, 51, 68, 58, 94, 47, 65, 82, 81, 63, 82, 83, 66, 92, 54, 52, 74, 58, 82, 70, 51, 64, 50, 64, 77, 59, 56, 60, 66, 61, 77, 43, 73, 82, 125, 74, 55, 69, 65, 47, 75, 87, 73, 84, 65, 58, 62, 84, 52, 79, 55, 55, 88, 49, 52, 59, 82, 54, 49, 66, 76, 85, 49, 52, 40, 66, 67, 67, 71, 58, 77, 80, 50, 55, 63, 53, 77, 61, 82, 78, 81, 61, 50, 55, 61, 60, 65, 63, 63, 67, 82, 54, 70, 72, 69, 75, 69, 57, 72, 67, 41, 65, 65, 59, 67, 72, 87, 83, 80, 59, 58, 129, 60, 65, 64, 49, 58, 81, 42, 50, 57, 69, 78, 60, 77, 65, 127, 66, 61, 71, 55, 49, 95, 66, 58, 56, 73, 53, 86, 60, 60, 64, 61, 80, 68, 55, 68, 64, 66, 60, 96, 80, 67, 51, 56, 60, 78, 51, 79, 57, 137, 52, 57, 52, 65, 45, 67, 78, 74, 69, 56, 54, 56, 69, 63, 63, 74, 61, 54, 105, 60, 82, 85, 60, 47, 78, 86, 60, 81, 54, 51, 47, 65, 63, 61, 78, 61, 56, 81, 66, 67, 76, 52, 30, 97, 87, 73, 52, 58, 59, 60, 79, 67, 48, 64, 56, 66, 52, 67, 51, 44, 58, 91, 46, 64, 52, 54, 46, 52, 52, 58, 63, 45, 64, 67, 72, 48, 67, 92, 78, 69, 62, 56, 53, 76, 64, 70, 41, 59, 68, 49, 58, 83, 66, 82, 50, 65, 76, 125, 79, 47, 72, 108, 52, 92, 40, 61, 46, 61, 60, 59, 38, 52, 66, 44, 69, 82, 69, 64, 67, 64, 38, 45, 48, 47, 82, 61, 67, 63, 55, 55, 65, 63, 70, 69, 78, 93, 79, 59, 98, 74, 80, 52, 77, 66, 82, 67, 55, 75, 62, 83, 55, 81, 82, 76, 52, 66, 61, 60, 64, 57, 82, 108, 70, 93, 48, 88, 57, 64, 59, 55, 72, 49, 60, 71, 59, 69, 78, 82, 71, 62, 72, 47, 41, 62, 47, 76, 69, 54, 80, 60, 58, 72, 69, 60, 78, 52, 58, 54, 51, 59, 58, 73, 64, 58, 46, 61, 40, 51, 54, 69, 60, 69, 81, 66, 51, 57, 67, 78, 95, 62, 51, 58, 62, 78, 70, 71, 70, 43, 63, 59, 48, 74, 73, 57, 65, 65, 65, 42, 54, 64, 60, 42, 59, 51, 77, 66, 72, 119, 55, 66, 67, 68, 56, 75, 75, 64, 34, 75, 87, 51, 55, 72, 64, 45, 66, 64, 55, 70, 47, 70, 79, 61, 81, 75, 60, 84, 68, 47, 113, 61, 76, 72, 95, 75, 57, 86, 88, 53, 82, 56, 59, 69, 63, 55, 79, 65, 74, 78, 67, 48, 64, 48, 69, 57, 71, 74, 70, 56, 60, 87, 63, 59, 57, 74, 54, 52, 45, 54, 140, 66, 56, 59, 37, 82, 54, 75, 56, 94, 84, 66, 80, 73, 60, 72, 60, 48, 112, 70, 75, 53, 61, 64, 79, 67, 55, 93, 59, 43, 68, 75, 71, 61, 85, 68, 47, 77, 69, 52, 91, 42, 47, 60, 54, 65, 57, 53, 58, 42, 72, 72, 63, 71, 50, 56, 98, 71, 78, 53, 59, 104, 60, 72, 81, 80, 85, 65, 52, 76, 74, 95, 49, 66, 40, 67, 42, 43, 88, 68, 101, 53, 70, 62, 59, 35, 61, 56, 79, 55, 73, 88, 67, 66, 43, 47, 59, 74, 73, 48, 68, 57, 62, 63, 51, 70, 64, 66, 55, 72, 63, 88, 78, 45, 52, 71, 85, 72, 67, 72, 61, 79, 77, 70, 75, 54, 80, 48, 95, 62, 65, 70, 68, 62, 60, 91, 68, 69, 59, 45, 82, 65, 81, 51, 64, 65, 63, 81, 67, 103, 63, 59, 64, 74, 76, 59, 61, 65, 73, 65, 50, 63, 50, 61, 59, 61, 75, 70, 65, 58, 68, 58, 67, 63, 62, 67, 62, 78, 85, 54, 57, 75, 68, 63, 54, 72, 59, 88, 74, 49, 70, 58, 61, 38, 52, 70, 54, 54, 108, 58, 60, 66, 57, 54, 60, 66, 55, 71, 53, 56, 51, 65, 67, 73, 92, 72, 74, 66, 83, 67, 58, 77, 69, 47, 55, 69, 60, 70, 105, 54, 75, 65, 64, 58, 58, 55, 72, 56, 71, 110, 58, 65, 65, 55, 65, 69, 80, 57, 65, 61, 83, 50, 75, 93, 67, 57, 55, 52, 80, 73, 60, 91, 43, 76, 96, 51, 60, 64, 57, 42, 56, 62, 48, 75, 60, 65, 60, 47, 47, 119, 81, 63, 62, 79, 60, 54, 70, 53, 65, 83, 61, 52, 50, 62, 77, 62, 48, 89, 57, 62, 78, 76, 75, 67, 53, 55, 56, 63, 59, 69, 78, 75, 61, 53, 63, 78, 69, 55, 71, 76, 83, 60, 50, 62, 54, 61, 70, 49, 114, 58, 64, 68, 95, 64, 60, 64, 81, 58, 59, 49, 63, 67, 67, 70, 55, 52, 59, 61, 53, 76, 78, 55, 46, 116, 72, 60, 62, 57, 58, 66, 75, 70, 68, 89, 62, 77, 77, 60, 54, 52, 50, 71, 65, 65, 55, 74, 63, 68, 51, 58, 56, 97, 60, 52, 77, 58, 76, 83, 73, 57, 62, 59, 86, 58, 77, 60, 70, 56, 77, 83, 45, 83, 73, 66, 63, 63, 46, 72, 53, 56, 60, 61, 61, 139, 60, 61, 62, 84, 57, 56, 60, 79, 72, 121, 76, 86, 72, 59, 65, 86, 78, 69, 79, 64, 61, 98, 58, 73, 67, 72, 54, 74, 84, 84, 40, 69, 68, 62, 53, 93, 59, 69, 61, 72, 40, 83, 59, 48, 60, 44, 71, 78, 51, 70, 76, 94, 66, 85, 86, 60, 56, 52, 74, 91, 75, 62, 51, 69, 67, 58, 60, 60, 59, 81, 41, 56, 63, 52, 62, 63, 58, 95, 53, 53, 54, 99, 56, 83, 91, 65, 55, 72, 67, 53, 54, 48, 59, 79, 61, 79, 82, 48, 79, 45, 89, 54, 51, 65, 74, 65, 55, 45, 61, 64, 69, 60, 53, 67, 67, 73, 98, 68, 62, 71, 58, 63, 64, 58, 69, 52, 65, 68, 81, 67, 75, 74, 66, 60, 100, 66, 65, 57, 72, 84, 58, 77, 67, 62, 60, 71, 67, 65, 46, 62, 72, 51, 57, 61, 56, 71, 91, 60, 66, 60, 77, 66, 61, 67, 86, 72, 76, 73, 59, 111, 72, 52, 60, 94, 91, 58, 56, 64, 58, 60, 73, 66, 65, 81, 79, 98, 60, 64, 103, 72, 63, 60, 64, 60, 70, 63, 42, 58, 76, 66, 58, 71, 49, 46, 97, 83, 46, 54, 80, 90, 55, 104, 72, 54, 80, 41, 66, 51, 65, 53, 57, 71, 60, 61, 70, 71, 46, 55, 46, 65, 75, 83, 52, 75, 55, 55, 53, 56, 67, 71, 57, 74, 49, 66, 37, 61, 76, 78, 54, 64, 57, 39, 61, 63, 81, 52, 77, 50, 60, 68, 84, 64, 90, 59, 69, 88, 70, 70, 35, 85, 55, 53, 64, 80, 57, 65, 61, 48, 84, 82, 104, 67, 58, 55, 62, 64, 51, 66, 51, 74, 55, 93, 53, 53, 70, 71, 44, 72, 73, 86, 60, 70, 57, 65, 63, 58, 68, 44, 64, 45, 86, 52, 60, 64, 44, 80, 61, 59, 70, 56, 57, 72, 85, 72, 59, 59, 71, 103, 69, 56, 57, 59, 41, 66, 47, 50, 74, 66, 61, 55, 48, 83, 50, 53, 77, 69, 84, 80, 88, 66, 65, 78, 68, 51, 62, 60, 76, 64, 65, 90, 72, 65, 70, 61, 58, 54, 67, 68, 63, 68, 76, 60, 74, 47, 72, 78, 70, 68, 60, 65, 52, 85, 57, 76, 65, 72, 65, 56, 69, 70, 74, 100, 59, 64, 67, 80, 86, 79, 69, 55, 55, 56, 61, 40, 62, 68, 96, 50, 56, 67, 78, 61, 62, 62, 68, 65, 72, 59, 74, 77, 66, 57, 52, 54, 54, 55, 78, 53, 76, 76, 77, 73, 68, 82, 72, 61, 86, 59, 79, 62, 67, 60, 53, 66, 56, 56, 66, 47, 38, 38, 136, 66, 90, 51, 67, 55, 81, 63, 42, 46, 61, 60, 73, 72, 56, 55, 65, 64, 49, 57, 76, 68, 51, 59, 61, 51, 60, 76, 69, 81, 99, 63, 66, 57, 63, 64, 85, 62, 57, 75, 76, 63, 53, 68, 52, 63, 68, 63, 62, 63, 77, 67, 56, 92, 60, 86, 54, 87, 68, 61, 54, 64, 64, 66, 77, 57, 65, 53, 104, 58, 67, 46, 81, 52, 59, 53, 65, 63, 67, 54, 69, 55, 76, 55, 51, 71, 73, 68, 69, 58, 64, 42, 91, 64, 66, 62, 68, 79, 63, 74, 67, 47, 52, 59, 46, 69, 110, 58, 68, 52, 87, 57, 98, 64, 62, 61, 79, 77, 83, 63, 52, 63, 64, 63, 63, 83, 73, 60, 88, 59, 51, 67, 75, 57, 78, 90, 62, 64, 53, 52, 47, 68, 53, 70, 63, 78, 65, 50, 62, 53, 58, 97, 76, 74, 55, 76, 56, 66, 93, 62, 53, 75, 65, 58, 46, 59, 58, 47, 62, 55, 95, 75, 60, 60, 57, 63, 63, 72, 71, 48, 87, 63, 44, 33, 79, 44, 69, 42, 59, 58, 59, 66, 68, 67, 53, 61, 71, 85, 69, 58, 69, 64, 55, 54, 54, 52, 64, 70, 85, 86, 77, 57, 96, 58, 60, 64, 79, 61, 49, 72, 71, 60, 61, 66, 48, 67, 47, 80, 54, 49, 79, 75, 48, 76, 95, 137, 53, 69, 67, 77, 66, 70, 94, 67, 69, 75, 46, 48, 70, 52, 97, 84, 63, 61, 75, 52, 76, 70, 58, 63, 71, 55, 70, 62, 50, 50, 57, 54, 76, 68, 71, 57, 57, 58, 58, 73, 51, 57, 56, 75, 52, 56, 60, 64, 66, 66, 66, 53, 49, 55, 102, 65, 77, 65, 55, 72, 60, 79, 59, 105, 73, 128, 68, 71, 57, 78, 62, 79, 71, 109, 68, 60, 73, 80, 52, 56, 70, 67, 57, 63, 52, 76, 57, 59, 94, 48, 69, 78, 79, 38, 66, 75, 63, 68, 74, 72, 56, 66, 66, 44, 80, 76, 64, 68, 52, 55, 56, 76, 61, 59, 94, 59, 74, 57, 95, 70, 126, 84, 54, 75, 67, 68, 70, 112, 56, 57, 65, 72, 79, 70, 74, 60, 109, 55, 56, 61, 89, 59, 68, 68, 72, 77, 70, 38, 81, 54, 89, 91, 57, 83, 55, 69, 56, 63, 60, 67, 55, 64, 65, 46, 48, 51, 45, 61, 64, 38, 50, 80, 59, 57, 46, 39, 119, 78, 52, 75, 79, 74, 52, 70, 99, 47, 80, 35, 67, 49, 78, 70, 55, 59, 94, 66, 91, 59, 44, 87, 101, 62, 53, 113, 48, 54, 71, 52, 77, 104, 85, 76, 91, 59, 70, 97, 104, 55, 50, 70, 71, 67, 70, 60, 71, 60, 81, 60, 48, 57, 62, 77, 55, 76, 61, 83, 57, 48, 60, 51, 95, 69, 76, 58, 74, 66, 63, 57, 57, 57, 64, 47, 54, 74, 66, 53, 51, 47, 85, 44, 75, 48, 66, 86, 72, 64, 67, 46, 51, 60, 47, 57, 72, 80, 93, 56, 76, 39, 73, 66, 62, 58, 62, 36, 58, 53, 89, 59, 40, 56, 60, 104, 58, 48, 57, 65, 71, 55, 73, 101, 47, 66, 68, 56, 44, 68, 88, 93, 67, 54, 81, 53, 55, 73, 49, 81, 72, 59, 99, 48, 68, 57, 96, 53, 85, 75, 98, 64, 52, 76, 68, 66, 60, 55, 82, 73, 63, 41, 67, 61, 58, 49, 73, 68, 64, 48, 60, 60, 56, 69, 56, 50, 46, 53, 64, 79, 88, 46, 51, 77, 62, 44, 57, 67, 63, 48, 70, 53, 53, 70, 84, 53, 70, 39, 48, 69, 79, 64, 75, 83, 80, 68, 62, 56, 55, 58, 80, 43, 68, 41, 62, 69, 55, 67, 60, 58, 66, 48, 61, 86, 72, 89, 76, 46, 55, 50, 58, 82, 73, 52, 96, 83, 42, 59, 68, 57, 113, 94, 60, 67, 58, 68, 52, 109, 66, 48, 94, 55, 100, 78, 92, 87, 57, 81, 59, 41, 60, 49, 60, 67, 71, 60, 37, 43, 66, 78, 70, 71, 69, 85, 71, 63, 47, 68, 52, 70, 65, 57, 68, 66, 76, 63, 62, 52, 63, 62, 49, 62, 50, 65, 45, 47, 82, 79, 78, 51, 82, 55, 46, 65, 64, 58, 70, 65, 74, 46, 51, 64, 77, 54, 54, 57, 84, 48, 175, 55, 80, 87, 45, 77, 50, 64, 53, 111, 72, 77, 55, 52, 64, 66, 55, 84, 41, 74, 64, 83, 57, 51, 76, 51, 75, 81, 52, 89, 81, 59, 73, 77, 64, 65, 39, 45, 56, 83, 57, 73, 40, 73, 50, 118, 62, 68, 75, 79, 56, 60, 57, 97, 57, 63, 64, 79, 80, 47, 71, 63, 62, 58, 46, 63, 63, 59, 49, 66, 44, 50, 55, 97, 35, 54, 46, 64, 65, 67, 49, 61, 58, 115, 95, 58, 48, 97, 77, 51, 61, 57, 55, 84, 67, 112, 68, 66, 70, 68, 133, 42, 64, 57, 61, 67, 93, 90, 60, 58, 67, 58, 78, 70, 64, 51, 76, 100, 38, 52, 51, 49, 69, 64, 53, 70, 50, 66, 64, 41, 65, 60, 74, 69, 73, 65, 56, 48, 58, 58, 67, 60, 80, 57, 90, 65, 59, 75, 60, 54, 55, 84, 64, 55, 69, 47, 88, 71, 70, 51, 87, 73, 67, 67, 49, 99, 67, 80, 61, 34, 59, 98, 100, 70, 61, 87, 78, 62, 88, 61, 70, 57, 70, 52, 45, 71, 80, 69, 108, 90, 33, 60, 62, 80, 151, 92, 63, 69, 55, 44, 65, 89, 48, 71, 68, 62, 61, 66, 69, 75, 56, 58, 71, 56, 76, 81, 79, 67, 79, 51, 46, 93, 57, 64, 57, 62, 98, 52, 91, 57, 54, 60, 64, 51, 75, 41, 48, 56, 74, 51, 64, 88, 86, 63, 47, 94, 73, 64, 74, 66, 64, 75, 62, 104, 57, 69, 64, 52, 100, 55, 87, 51, 41, 57, 54, 106, 89, 58, 76, 88, 49, 56, 103, 93, 57, 62, 74, 68, 80, 71, 66, 88, 91, 86, 45, 93, 99, 37, 58, 83, 55, 36, 95, 101, 63, 70, 55, 58, 63, 53, 48, 75, 67, 51, 94, 64, 77, 49, 75, 72, 34, 71, 71, 37, 105, 72, 104, 60, 78, 74, 88, 64, 65, 76, 81, 100, 77, 69, 74, 58, 95, 67, 68, 143, 66, 41, 89, 74, 46, 73, 80, 32, 69, 66, 72, 70, 69, 90, 91, 81, 59, 88, 70, 56, 94, 59, 158, 46, 67, 59, 68, 76, 66, 59, 72, 68, 63, 63, 71, 65, 58, 71, 51, 48, 54, 59, 52, 86, 87, 75, 102, 58, 66, 44, 64, 65, 58, 48, 92, 81, 89, 48, 53, 87, 56, 49, 62, 95, 73, 44, 46, 59, 62, 82, 62, 78, 76, 71, 53, 65, 51, 79, 90, 61, 44, 83, 87, 77, 65, 90, 59, 63, 71, 91, 67, 61, 55, 36, 57, 77, 64, 56, 84, 48, 37, 62, 43, 44, 78, 77, 55, 70, 74, 48, 64, 83, 51, 55, 74, 80, 58, 83, 72, 73, 48, 73, 80, 58, 48, 49, 75, 91, 45, 74, 54, 53, 88, 90, 52, 66, 40, 84, 59, 62, 71, 70, 48, 50, 110, 58, 50, 77, 62, 62, 80, 54, 67, 56, 68, 74, 77, 78, 85, 42, 51, 54, 65, 71, 53, 63, 79, 64, 63, 90, 79, 37, 55, 50, 30, 88, 65, 74, 74, 80, 50, 67, 55, 58, 54, 72, 76, 66, 57, 77, 75, 65, 94, 61, 59, 79, 88, 54, 76, 59, 63, 62, 88, 50, 47, 68, 76, 67, 42, 39, 57, 50, 83, 89, 50, 66, 79, 61, 87, 58, 47, 80, 51, 92, 54, 116, 73, 48, 60, 52, 80, 51, 63, 80, 85, 45, 95, 68, 82, 69, 38, 91, 72, 48, 56, 46, 55, 73, 67, 67, 62, 54, 82, 54, 101, 79, 46, 72, 63, 102, 60, 79, 81, 48, 50, 62, 60, 80, 46, 62, 66, 81, 72, 51, 50, 51, 62, 61, 72, 77, 59, 73, 50, 74, 84, 79, 69, 67, 63, 61, 60, 58, 87, 66, 36, 66, 63, 52, 68, 76, 67, 76, 59, 69, 65, 57, 65, 81, 89, 64, 66, 39, 78, 68, 63, 62, 116, 55, 101, 64, 74, 71, 71, 74, 68, 70, 55, 49, 108, 84, 59, 88, 60, 54, 66, 58, 55, 55, 101, 58, 68, 71, 78, 70, 69, 60, 83, 57, 62, 74, 52, 62, 50, 74, 86, 59, 68, 66, 68, 55, 52, 52, 56, 56, 69, 51, 73, 65, 70, 53, 63, 73, 43, 55, 70, 60, 79, 59, 49, 65, 61, 49, 56, 55, 61, 57, 62, 76, 54, 55, 53, 48, 62, 64, 72, 63, 93, 50, 75, 53, 53, 46, 63, 79, 65, 87, 68, 63, 69, 50, 63, 76, 63, 76, 61, 54, 62, 64, 65, 62, 91, 62, 101, 48, 49, 64, 65, 61, 65, 62, 60, 65, 55, 53, 71, 54, 65, 62, 83, 69, 85, 101, 86, 52, 50, 74, 64, 78, 54, 75, 57, 58, 58, 70, 53, 76, 77, 58, 51, 59, 70, 65, 53, 57, 54, 50, 66, 61, 57, 66, 65, 67, 52, 60, 92, 73, 58, 67, 63, 68, 75, 99, 54, 84, 55, 62, 76, 77, 84, 78, 58, 51, 65, 65, 66, 71, 67, 67, 57, 68, 80, 74, 57, 74, 74, 82, 39, 56, 53, 62, 61, 64, 62, 60, 73, 79, 64, 52, 52, 44, 66, 48, 59, 59, 92, 56, 66, 72, 83, 69, 102, 88, 61, 81, 65, 62, 56, 46, 66, 72, 49, 72, 53, 70, 60, 56, 55, 75, 72, 63, 83, 79, 68, 58, 43, 68, 71, 56, 80, 54, 64, 45, 68, 41, 82, 54, 63, 61, 57, 69, 72, 66, 63, 50, 71, 74, 59, 55, 74, 53, 59, 51, 65, 82, 70, 56, 48, 61, 60, 60, 74, 52, 61, 61, 69, 61, 61, 100, 78, 57, 64, 54, 59, 65, 67, 65, 64, 76, 47, 70, 53, 61, 64, 50, 85, 57, 55, 83, 50, 110, 49, 69, 77, 51, 74, 86, 95, 65, 81, 73, 48, 73, 61, 76, 93, 58, 66, 52, 37, 59, 76, 51, 62, 56, 54, 73, 47, 66, 73, 66, 61, 83, 61, 52, 78, 48, 66, 65, 56, 79, 63, 59, 81, 62, 64, 68, 77, 88, 61, 72, 85, 77, 59, 75, 75, 79, 64, 77, 68, 61, 66, 39, 84, 76, 59, 71, 68, 54, 57, 60, 75, 56, 58, 70, 74, 61, 62, 56, 52, 63, 89, 64, 79, 72, 55, 76, 72, 61, 73, 69, 75, 75, 65, 62, 61, 54, 70, 51, 70, 52, 55, 66, 60, 92, 61, 72, 65, 55, 53, 63, 57, 80, 61, 61, 112, 58, 68, 100, 73, 55, 77, 65, 60, 98, 63, 78, 51, 69, 73, 62, 84, 58, 46, 72, 58, 84, 85, 48, 62, 64, 59, 68, 57, 54, 101, 68, 67, 68, 73, 79, 60, 64, 56, 62, 58, 66, 52, 83, 62, 85, 60, 79, 84, 62, 54, 78, 59, 66, 64, 50, 112, 56, 50, 58, 53, 64, 93, 86, 73, 72, 76, 50, 58, 42, 63, 62, 69, 58, 78, 72, 58, 85, 80, 53, 49, 73, 70, 52, 56, 77, 72, 61, 81, 42, 93, 58, 66, 52, 63, 80, 74, 64, 102, 56, 57, 60, 64, 77, 70, 79, 45, 61, 62, 85, 102, 63, 72, 68, 86, 87, 68, 60, 104, 47, 58, 50, 67, 72, 101, 75, 71, 73, 72, 64, 65, 64, 74, 71, 55, 60, 104, 55, 65, 96, 60, 74, 78, 56, 95, 70, 81, 54, 48, 80, 60, 55, 60, 60, 87, 55, 44, 112, 57, 101, 65, 75, 64, 67, 62, 73, 77, 56, 62, 59, 56, 47, 66, 67, 56, 63, 54, 64, 61, 49, 52, 56, 77, 65, 54, 72, 66, 53, 63, 51, 70, 73, 67, 83, 79, 87, 54, 60, 67, 49, 61, 81, 60, 79, 69, 86, 62, 54, 63, 73, 56, 67, 106, 67, 70, 63, 57, 58, 72, 62, 94, 50, 72, 67, 81, 72, 62, 69, 70, 60, 55, 65, 48, 52, 63, 51, 55, 60, 80, 52, 66, 74, 74, 51, 66, 56, 77, 49, 63, 57, 64, 87, 93, 67, 67, 59, 62, 64, 79, 52, 79, 64, 53, 30, 112, 67, 67, 45, 66, 79, 54, 63, 75, 52, 67, 62, 52, 76, 75, 60, 72, 57, 72, 74, 72, 79, 45, 59, 57, 98, 65, 52, 84, 64, 75, 61, 72, 64, 58, 62, 52, 60, 59, 62, 73, 82, 65, 73, 58, 124, 83, 71, 56, 48, 61, 125, 67, 59, 69, 72, 64, 43, 57, 67, 55, 43, 109, 62, 57, 75, 78, 61, 81, 73, 59, 64, 61, 69, 40, 64, 54, 87, 74, 74, 72, 57, 66, 71, 72, 66, 105, 59, 71, 86, 73, 77, 71, 64, 44, 62, 75, 68, 63, 62, 70, 93, 63, 59, 74, 62, 74, 87, 85, 44, 57, 75, 40, 60, 60, 44, 49, 41, 43, 59, 66, 62, 69, 57, 50, 72, 67, 64, 60, 66, 50, 64, 56, 77, 76, 63, 57, 73, 60, 46, 77, 72, 56, 73, 96, 60, 45, 54, 76, 60, 75, 52, 45, 63, 57, 64, 106, 89, 80, 80, 57, 74, 60, 66, 52, 65, 63, 72, 53, 50, 60, 63, 64, 50, 66, 60, 58, 83, 73, 54, 78, 63, 66, 42, 67, 50, 62, 78, 62, 58, 83, 62, 67, 96, 93, 76, 53, 33, 68, 68, 49, 61, 45, 75, 51, 53, 60, 68, 90, 74, 66, 76, 61, 62, 65, 63, 65, 52, 60, 85, 57, 68, 65, 55, 51, 61, 66, 56, 51, 66, 65, 50, 74, 49, 70, 40, 76, 70, 82, 74, 50, 74, 61, 76, 60, 39, 53, 85, 75, 68, 86, 71, 91, 103, 62, 60, 67, 59, 80, 69, 65, 54, 50, 76, 55, 77, 55, 81, 53, 79, 57, 61, 63, 60, 63, 69, 58, 102, 44, 71, 55, 63, 53, 56, 142, 73, 71, 65, 66, 71, 66, 59, 54, 87, 70, 49, 59, 92, 76, 62, 57, 51, 106, 61, 62, 45, 81, 43, 44, 38, 76, 61, 64, 60, 56, 62, 58, 88, 76, 90, 54, 62, 58, 61, 67, 40, 61, 84, 71, 64, 75, 58, 68, 57, 62, 82, 56, 78, 54, 70, 48, 44, 80, 52, 63, 50, 66, 61, 42, 49, 59, 67, 66, 60, 104, 45, 54, 75, 56, 51, 66, 68, 61, 50, 57, 59, 82, 64, 72, 46, 99, 56, 75, 104, 77, 61, 53, 54, 85, 67, 55, 105, 49, 82, 72, 57, 61, 51, 68, 66, 63, 54, 75, 78, 76, 64, 51, 48, 95, 77, 60, 65, 59, 68, 68, 69, 68, 82, 56, 70, 90, 75, 55, 65, 41, 52, 65, 72, 84, 54, 88, 65, 65, 107, 71, 75, 49, 65, 57, 61, 57, 51, 60, 54, 63, 51, 54, 34, 74, 68, 68, 54, 40, 85, 48, 52, 77, 77, 65, 71, 55, 54, 61, 51, 48, 72, 73, 51, 69, 53, 55, 67, 84, 63, 105, 59, 52, 51, 86, 63, 91, 75, 54, 78, 81, 68, 55, 82, 92, 55, 56, 58, 57, 60, 59, 72, 56, 64, 96, 66, 84, 47, 57, 54, 63, 63, 69, 74, 59, 83, 63, 96, 42, 56, 76, 52, 77, 53, 80, 110, 49, 65, 53, 69, 47, 67, 58, 67, 61, 38, 76, 72, 69, 58, 64, 57, 57, 69, 64, 78, 73, 42, 68, 107, 96, 77, 77, 63, 44, 56, 60, 91, 59, 65, 59, 79, 67, 57, 63, 74, 66, 43, 101, 48, 64, 61, 71, 72, 64, 75, 76, 58, 61, 63, 58, 44, 72, 87, 89, 72, 63, 65, 85, 79, 98, 99, 75, 67, 47, 63, 57, 76, 67, 64, 81, 33, 69, 57, 66, 103, 69, 40, 55, 59, 60, 60, 56, 57, 55, 49, 74, 60, 40, 64, 63, 101, 60, 75, 80, 61, 59, 80, 43, 56, 61, 60, 50, 60, 35, 79, 61, 51, 54, 54, 63, 91, 221, 47, 58, 54, 43, 53, 55, 56, 64, 50, 87, 77, 68, 63, 62, 92, 73, 51, 69, 88, 74, 70, 65, 63, 105, 60, 55, 54, 56, 71, 63, 72, 64, 53, 98, 51, 50, 65, 75, 71, 83, 63, 75, 51, 45, 83, 59, 64, 56, 68, 51, 79, 70, 90, 102, 49, 57, 75, 63, 61, 82, 63, 50, 77, 65, 62, 76, 70, 55, 70, 58, 79, 85, 56, 63, 64, 77, 52, 77, 64, 50, 82, 61, 85, 68, 62, 56, 67, 48, 63, 77, 67, 82, 51, 78, 58, 35, 55, 65, 64, 84, 58, 69, 52, 85, 53, 68, 60, 49, 82, 59, 55, 48, 50, 53, 74, 54, 54, 66, 59, 63, 61, 69, 102, 83, 93, 53, 69, 58, 53, 47, 73, 72, 76, 57, 55, 126, 60, 93, 51, 103, 57, 73, 62, 67, 55, 58, 100, 82, 98, 43, 81, 77, 54, 93, 83, 63, 51, 55, 90, 60, 69, 75, 59, 80, 74, 43, 67, 46, 52, 51, 68, 58, 59, 82, 75, 75, 68, 53, 57, 77, 64, 70, 71, 53, 49, 101, 75, 101, 73, 75, 37, 106, 69, 129, 71, 49, 95, 59, 107, 77, 53, 63, 67, 86, 64, 56, 49, 59, 60, 55, 50, 56, 59, 66, 88, 62, 69, 54, 76, 76, 65, 75, 63, 60, 90, 59, 66, 57, 84, 97, 76, 68, 60, 60, 62, 51, 69, 85, 51, 61, 40, 78, 55, 42, 65, 70, 57, 49, 49, 66, 69, 60, 81, 81, 93, 77, 73, 48, 58, 45, 57, 70, 45, 58, 85, 45, 98, 76, 65, 71, 44, 48, 77, 66, 71, 73, 65, 57, 75, 91, 78, 56, 92, 56, 56, 71, 53, 80, 99, 101, 72, 35, 76, 57, 75, 55, 57, 68, 64, 78, 59, 58, 64, 74, 68, 59, 55, 72, 75, 56, 49, 57, 55, 72, 57, 45, 49, 70, 58, 56, 72, 71, 56, 48, 56, 63, 61, 53, 62, 55, 62, 59, 49, 43, 81, 53, 53, 63, 79, 70, 74, 56, 54, 55, 70, 111, 68, 56, 47, 118, 79, 62, 77, 65, 66, 64, 65, 61, 58, 66, 57, 68, 72, 52, 70, 51, 103, 57, 57, 76, 57, 87, 68, 122, 87, 70, 57, 47, 65, 71, 79, 41, 64, 54, 60, 69, 38, 48, 53, 71, 76, 40, 62, 63, 51, 49, 80, 37, 74, 87, 74, 74, 82, 87, 35, 55, 80, 56, 61, 69, 60, 62, 97, 117, 44, 62, 85, 55, 69, 69, 62, 45, 61, 49, 61, 60, 56, 105, 83, 70, 71, 60, 69, 64, 75, 33, 60, 66, 86, 67, 57, 61, 75, 56, 69, 43, 74, 51, 81, 51, 71, 89, 55, 56, 70, 50, 56, 72, 70, 84, 70, 68, 62, 66, 62, 67, 67, 57, 70, 63, 82, 59, 76, 62, 78, 108, 49, 35, 56, 108, 67, 78, 76, 71, 74, 78, 66, 41, 73, 79, 47, 52, 72, 60, 63, 53, 62, 102, 45, 67, 63, 81, 53, 67, 59, 49, 64, 72, 61, 50, 61, 66, 66, 56, 84, 87, 82, 68, 56, 70, 61, 66, 76, 78, 69, 76, 73, 62, 61, 76, 49, 78, 59, 79, 81, 69, 65, 53, 65, 45, 58, 51, 64, 74, 59, 57, 67, 55, 72, 69, 46, 62, 52, 47, 49, 49, 63, 69, 69, 51, 80, 65, 50, 67, 63, 70, 53, 66, 64, 74, 48, 75, 62, 55, 43, 52, 47, 123, 57, 55, 71, 61, 63, 65, 103, 56, 72, 67, 69, 54, 55, 79, 82, 60, 54, 56, 70, 68, 85, 64, 56, 80, 85, 63, 56, 79, 69, 47, 47, 55, 66, 58, 68, 78, 68, 74, 85, 79, 84, 63, 47, 67, 69, 56, 62, 77, 59, 73, 87, 64, 71, 75, 98, 70, 65, 65, 68, 66, 61, 60, 65, 85, 73, 58, 43, 52, 63, 65, 57, 59, 88, 50, 57, 71, 50, 48, 52, 41, 57, 77, 67, 58, 101, 53, 55, 63, 54, 66, 71, 51, 60, 76, 76, 56, 40, 71, 49, 73, 78, 68, 54, 56, 69, 53, 51, 62, 65, 56, 78, 64, 63, 69, 64, 59, 69, 66, 61, 29, 67, 71, 51, 63, 66, 40, 60, 56, 65, 88, 79, 62, 96, 45, 82, 65, 63, 158, 75, 69, 63, 42, 71, 80, 92, 55, 57, 51, 77, 58, 68, 66, 55, 60, 64, 78, 74, 59, 77, 78, 55, 93, 102, 106, 66, 63, 66, 75, 106, 80, 52, 78, 72, 50, 71, 51, 78, 69, 59, 62, 54, 59, 68, 68, 85, 69, 62, 72, 58, 80, 58, 69, 97, 59, 75, 65, 81, 66, 70, 38, 63, 52, 60, 75, 64, 50, 61, 68, 66, 53, 55, 78, 66, 52, 62, 57, 86, 58, 53, 98, 79, 68, 68, 55, 73, 82, 73, 71, 75, 65, 69, 73, 55, 46, 65, 56, 55, 64, 69, 85, 63, 63, 65, 65, 61, 79, 79, 71, 76, 53, 60, 65, 96, 57, 61, 71, 80, 69, 73, 73, 72, 61, 59, 46, 70, 56, 43, 57, 80, 73, 75, 86, 53, 61, 61, 79, 94, 72, 63, 79, 62, 75, 78, 87, 56, 70, 85, 45, 72, 90, 58, 52, 57, 80, 55, 70, 46, 78, 72, 68, 90, 86, 62, 70, 58, 71, 67, 60, 61, 115, 58, 57, 80, 72, 55, 63, 41, 61, 58, 68, 48, 57, 82, 63, 59, 41, 98, 59, 67, 50, 62, 52, 88, 71, 64, 72, 49, 52, 61, 91, 59, 61, 57, 62, 62, 75, 86, 72, 49, 71, 62, 78, 72, 72, 80, 46, 47, 54, 85, 55, 78, 65, 54, 75, 65, 79, 44, 94, 59, 83, 56, 65, 94, 73, 54, 92, 54, 49, 74, 66, 48, 74, 56, 59, 77, 72, 81, 99, 79, 81, 51, 70, 70, 73, 57, 52, 82, 51, 52, 87, 65, 63, 70, 70, 65, 60, 72, 59, 56, 92, 74, 78, 53, 72, 60, 59, 52, 65, 59, 81, 52, 76, 61, 69, 45, 65, 75, 72, 77, 73, 66, 43, 66, 79, 80, 98, 92, 65, 60, 68, 69, 56, 64, 89, 57, 48, 48, 89, 67, 50, 57, 54, 75, 97, 69, 64, 54, 75, 64, 62, 43, 69, 73, 71, 80, 53, 60, 74, 92, 72, 74, 62, 82, 58, 64, 61, 83, 55, 85, 84, 65, 51, 73, 67, 87, 93, 56, 49, 58, 57, 59, 79, 71, 58, 77, 52, 78, 65, 46, 77, 54, 74, 61, 77, 43, 47, 80, 77, 43, 51, 64, 43, 62, 59, 60, 62, 82, 67, 79, 65, 61, 58, 62, 58, 51, 75, 56, 60, 58, 49, 71, 50, 67, 98, 43, 56, 49, 56, 82, 60, 60, 65, 75, 56, 64, 70, 83, 64, 63, 50, 68, 52, 48, 79, 75, 79, 55, 70, 56, 77, 50, 61, 83, 51, 61, 51, 73, 68, 74, 75, 71, 56, 52, 58, 59, 70, 97, 55, 85, 47, 56, 48, 96, 59, 58, 53, 67, 52, 46, 77, 83, 77, 56, 53, 96, 68, 62, 62, 48, 66, 62, 51, 64, 75, 53, 60, 81, 64, 66, 70, 84, 93, 92, 66, 45, 82, 75, 66, 68, 57, 59, 61, 48, 73, 87, 56, 86, 85, 84, 55, 108, 62, 42, 46, 54, 38, 65, 60, 64, 90, 89, 67, 53, 60, 104, 37, 52, 58, 83, 53, 62, 89, 60, 52, 68, 84, 70, 56, 77, 85, 114, 58, 75, 53, 74, 57, 60, 50, 82, 57, 54, 60, 56, 87, 105, 64, 54, 51, 64, 57, 55, 73, 93, 70, 82, 52, 49, 59, 69, 75, 75, 59, 61, 63, 48, 51, 50, 71, 75, 73, 43, 72, 80, 71, 89, 50, 75, 66, 51, 36, 61, 57, 71, 57, 49, 51, 67, 62, 70, 66, 57, 76, 52, 123, 89, 71, 91, 36, 39, 59, 65, 56, 53, 103, 56, 82, 49, 79, 68, 58, 46, 63, 37, 52, 78, 72, 50, 71, 70, 51, 58, 63, 68, 53, 55, 102, 59, 44, 46, 55, 73, 72, 68, 53, 59, 55, 96, 72, 48, 76, 43, 67, 62, 68, 84, 59, 53, 57, 82, 76, 62, 56, 55, 50, 76, 67, 39, 65, 75, 67, 54, 83, 73, 71, 68, 62, 82, 55, 76, 57, 59, 88, 54, 57, 56, 57, 62, 120, 58, 49, 66, 100, 82, 52, 47, 66, 74, 85, 58, 79, 42, 73, 63, 65, 58, 57, 55, 60, 73, 55, 85, 55, 40, 64, 56, 76, 75, 68, 81, 80, 56, 74, 69, 99, 73, 63, 92, 37, 53, 44, 104, 52, 101, 84, 75, 81, 66, 76, 59, 59, 51, 41, 49, 48, 90, 33, 71, 65, 52, 45, 69, 75, 68, 61, 62, 57, 59, 70, 48, 122, 50, 73, 50, 79, 105, 62, 78, 80, 60, 113, 69, 51, 97, 69, 77, 60, 67, 52, 58, 43, 75, 73, 89, 86, 75, 63, 54, 65, 75, 66, 73, 73, 73, 46, 58, 64, 84, 55, 76, 53, 77, 55, 56, 62, 28, 61, 81, 58, 57, 38, 64, 69, 67, 82, 71, 32, 62, 57, 67, 62, 91, 44, 68, 69, 60, 69, 59, 43, 71, 75, 62, 66, 42, 70, 69, 70, 75, 56, 54, 69, 59, 62, 113, 73, 58, 45, 68, 60, 68, 61, 89, 68, 71, 72, 55, 70, 49, 42, 77, 63, 68, 59, 61, 57, 48, 55, 51, 76, 64, 67, 89, 42, 55, 76, 60, 49, 80, 56, 77, 57, 66, 101, 68, 80, 55, 52, 81, 47, 55, 70, 57, 52, 86, 40, 67, 75, 59, 47, 61, 73, 98, 38, 74, 74, 69, 71, 82, 63, 53, 40, 54, 69, 63, 88, 72, 66, 90, 70, 62, 79, 50, 55, 72, 70, 68, 79, 66, 59, 73, 57, 49, 70, 72, 46, 73, 59, 59, 55, 78, 47, 68, 60, 47, 73, 73, 51, 100, 64, 66, 89, 62, 47, 90, 58, 83, 61, 49, 76, 73, 64, 56, 70, 62, 81, 63, 55, 63, 51, 59, 74, 76, 53, 80, 64, 54, 45, 61, 50, 71, 70, 51, 58, 107, 32, 56, 59, 69, 69, 67, 74, 63, 58, 69, 64, 84, 74, 84, 76, 62, 65, 84, 60, 49, 58, 61, 87, 83, 67, 61, 52, 78, 67, 49, 52, 60, 79, 68, 72, 80, 57, 44, 74, 54, 77, 75, 65, 55, 59, 65, 113, 51, 62, 52, 69, 70, 62, 63, 55, 67, 88, 55, 69, 70, 71, 82, 54, 69, 61, 78, 61, 45, 90, 59, 86, 63, 63, 63, 48, 63, 53, 72, 47, 52, 66, 85, 62, 44, 57, 77, 53, 59, 120, 47, 77, 66, 59, 74, 47, 62, 53, 63, 74, 82, 61, 48, 51, 82, 39, 100, 70, 68, 69, 81, 59, 98, 59, 84, 56, 66, 54, 108, 71, 60, 70, 51, 55, 60, 74, 54, 67, 70, 61, 55, 53, 60, 63, 69, 55, 61, 81, 68, 64, 62, 66, 87, 68, 58, 55, 64, 61, 62, 60, 64, 49, 59, 52, 61, 103, 52, 61, 54, 72, 72, 87, 72, 50, 76, 74, 74, 75, 46, 88, 56, 65, 75, 62, 69, 67, 60, 106, 72, 82, 65, 51, 63, 74, 52, 81, 58, 80, 99, 78, 88, 64, 72, 55, 49, 98, 66, 71, 67, 75, 68, 55, 48, 68, 61, 58, 54, 71, 78, 56, 58, 59, 66, 72, 72, 56, 69, 67, 66, 72, 82, 59, 76, 60, 50, 65, 69, 76, 80, 91, 83, 61, 69, 62, 79, 83, 74, 81, 59, 60, 48, 75, 63, 76, 61, 77, 77, 63, 64, 96, 51, 53, 64, 56, 60, 78, 66, 54, 74, 68, 57, 58, 50, 62, 56, 62, 66, 77, 65, 57, 64, 95, 66, 49, 53, 55, 96, 60, 52, 87, 106, 51, 46, 96, 70, 65, 43, 57, 64, 59, 86, 70, 72, 76, 59, 75, 41, 76, 65, 53, 56, 42, 62, 60, 59, 57, 66, 61, 39, 72, 64, 58, 61, 50, 56, 69, 55, 67, 73, 72, 102, 59, 46, 72, 87, 49, 49, 55, 85, 60, 85, 64, 71, 60, 63, 87, 79, 60, 59, 60, 76, 78, 100, 60, 65, 58, 62, 59, 68, 56, 56, 65, 71, 81, 73, 52, 63, 50, 66, 148, 82, 93, 50, 51, 64, 71, 73, 83, 82, 71, 58, 62, 57, 70, 67, 72, 62, 89, 112, 83, 52, 59, 102, 80, 62, 63, 76, 62, 55, 63, 55, 71, 72, 90, 61, 67, 47, 55, 64, 73, 108, 64, 63, 55, 72, 55, 56, 81, 48, 69, 48, 84, 54, 62, 71, 57, 74, 73, 83, 40, 60, 76, 53, 58, 54, 49, 63, 57, 69, 76, 81, 75, 43, 50, 99, 68, 74, 77, 73, 52, 49, 68, 64, 83, 68, 67, 53, 75, 67, 61, 65, 88, 61, 76, 50, 71, 63, 67, 54, 74, 58, 46, 63, 72, 58, 64, 57, 58, 78, 54, 70, 64, 59, 67, 83, 56, 47, 54, 69, 59, 74, 79, 76, 58, 53, 66, 68, 60, 63, 96, 74, 59, 58, 67, 79, 75, 66, 72, 56, 60, 61, 63, 71, 53, 69, 65, 76, 60, 69, 60, 48, 52, 69, 78, 44, 44, 41, 69, 64, 87, 74, 58, 62, 70, 70, 78, 78, 68, 62, 79, 60, 49, 67, 101, 47, 113, 55, 76, 76, 84, 54, 55, 64, 69, 71, 52, 59, 66, 48, 65, 59, 81, 76, 96, 49, 60, 61, 77, 108, 59, 62, 65, 70, 66, 77, 74, 44, 60, 65, 55, 52, 60, 64, 52, 48, 57, 51, 66, 74, 69, 69, 74, 65, 63, 66, 45, 68, 77, 65, 49, 64, 94, 84, 76, 61, 70, 46, 77, 66, 48, 58, 59, 77, 66, 59, 69, 64, 66, 54, 64, 58, 43, 70, 56, 54, 68, 73, 59, 48, 73, 60, 56, 57, 66, 47, 69, 58, 47, 73, 62, 79, 62, 67, 73, 50, 68, 78, 92, 67, 57, 50, 64, 74, 62, 69, 59, 52, 59, 31, 52, 75, 83, 60, 56, 60, 48, 44, 70, 58, 42, 65, 62, 58, 84, 58, 69, 54, 92, 68, 60, 60, 56, 63, 76, 68, 70, 72, 113, 49, 55, 63, 71, 56, 72, 40, 53, 73, 59, 57, 78, 60, 59, 97, 56, 54, 56, 90, 53, 64, 54, 79, 52, 78, 66, 60, 51, 64, 79, 79, 67, 76, 69, 112, 94, 63, 61, 41, 77, 68, 81, 62, 64, 92, 80, 46, 91, 77, 71, 94, 42, 60, 83, 53, 58, 49, 60, 68, 77, 83, 67, 56, 61, 43, 66, 83, 53, 76, 58, 65, 71, 55, 66, 53, 73, 55, 52, 41, 134, 111, 76, 64, 51, 57, 72, 68, 56, 89, 51, 40, 90, 66, 62, 51, 87, 99, 52, 49, 57, 59, 43, 60, 54, 78, 68, 54, 42, 70, 58, 67, 63, 64, 60, 75, 49, 65, 58, 51, 72, 67, 43, 57, 78, 55, 68, 55, 60, 58, 81, 69, 70, 67, 65, 55, 77, 50, 82, 67, 88, 68, 70, 69, 62, 62, 60, 68, 51, 58, 78, 61, 70, 49, 57, 80, 74, 58, 67, 65, 57, 48, 76, 66, 71, 57, 72, 61, 69, 59, 50, 54, 44, 63, 58, 46, 79, 52, 63, 78, 87, 64, 67, 50, 75, 55, 70, 72, 60, 69, 57, 87, 65, 58, 63, 73, 74, 56, 80, 129, 71, 86, 81, 51, 64, 62, 37, 68, 57, 70, 65, 57, 54, 58, 64, 54, 76, 62, 64, 47, 58, 56, 84, 65, 49, 68, 53, 47, 74, 85, 96, 61, 64, 75, 75, 97, 53, 57, 77, 57, 78, 83, 53, 56, 83, 91, 58, 68, 69, 51, 63, 60, 88, 64, 68, 66, 51, 91, 53, 77, 63, 73, 85, 70, 53, 65, 75, 83, 94, 61, 44, 75, 56, 62, 68, 78, 68, 77, 57, 63, 73, 87, 43, 73, 70, 93, 48, 60, 56, 52, 70, 56, 30, 65, 67, 70, 48, 46, 65, 72, 66, 58, 73, 118, 58, 50, 57, 76, 79, 58, 70, 58, 83, 57, 73, 71, 58, 40, 55, 57, 70, 54, 73, 48, 71, 135, 71, 53, 74, 71, 59, 55, 69, 86, 71, 84, 56, 65, 73, 74, 83, 70, 64, 48, 60, 62, 74, 64, 58, 81, 52, 61, 51, 58, 58, 55, 87, 79, 72, 46, 62, 56, 67, 81, 68, 77, 62, 72, 69, 58, 52, 50, 63, 75, 67, 80, 77, 76, 59, 80, 111, 68, 52, 67, 91, 54, 70, 49, 66, 55, 94, 75, 54, 63, 59, 62, 66, 57, 108, 72, 106, 55, 89, 62, 62, 88, 56, 79, 97, 92, 70, 75, 68, 46, 96, 101, 75, 68, 52, 71, 64, 64, 63, 41, 48, 106, 77, 57, 160, 72, 89, 80, 50, 71, 43, 59, 66, 101, 68, 58, 67, 64, 47, 67, 50, 69, 38, 68, 60, 58, 53, 53, 73, 76, 59, 48, 61, 73, 63, 61, 42, 71, 61, 61, 81, 68, 51, 62, 88, 70, 65, 48, 81, 71, 47, 50, 48, 42, 63, 42, 74, 63, 65, 55, 84, 82, 47, 75, 77, 55, 64, 56, 94, 59, 58, 58, 60, 65, 62, 93, 70, 53, 75, 62, 53, 42, 85, 74, 63, 74, 70, 89, 56, 61, 40, 74, 62, 67, 50, 116, 50, 74, 61, 48, 42, 87, 55, 87, 51, 56, 71, 56, 71, 71, 60, 75, 48, 46, 58, 64, 68, 76, 39, 63, 55, 54, 50, 72, 56, 52, 78, 53, 70, 67, 74, 75, 52, 68, 65, 81, 59, 86, 82, 63, 75, 54, 53, 50, 73, 43, 53, 117, 93, 62, 71, 69, 75, 66, 70, 62, 78, 64, 69, 70, 76, 59, 67, 56, 68, 74, 50, 55, 66, 50, 52, 84, 48, 87, 55, 36, 78, 70, 67, 58, 53, 53, 69, 76, 75, 96, 76, 61, 59, 89, 68, 47, 59, 58, 64, 69, 65, 75, 71, 57, 48, 65, 63, 80, 59, 46, 55, 66, 45, 69, 71, 67, 74, 64, 115, 74, 73, 61, 70, 47, 81, 80, 69, 106, 57, 54, 65, 72, 56, 92, 64, 62, 57, 88, 75, 84, 79, 80, 80, 68, 61, 62, 65, 55, 72, 55, 82, 107, 76, 44, 113, 63, 77, 66, 49, 46, 80, 67, 74, 52, 47, 67, 59, 46, 63, 60, 57, 47, 65, 58, 36, 43, 54, 57, 71, 45, 55, 55, 56, 75, 97, 58, 59, 59, 57, 60, 50, 96, 63, 113, 78, 49, 73, 79, 50, 91, 115, 90, 66, 77, 63, 62, 128, 56, 64, 72, 52, 60, 63, 63, 79, 47, 47, 61, 88, 131, 82, 82, 60, 60, 48, 82, 64, 67, 64, 75, 63, 50, 62, 65, 59, 52, 68, 51, 61, 56, 74, 44, 90, 53, 51, 73, 53, 54, 83, 49, 66, 41, 57, 132, 62, 72, 63, 59, 74, 60, 57, 103, 68, 70, 56, 80, 73, 62, 81, 45, 63, 52, 51, 64, 66, 61, 64, 60, 70, 47, 55, 48, 59, 65, 102, 59, 59, 76, 56, 70, 54, 54, 56, 46, 52, 49, 60, 53, 57, 54, 58, 55, 81, 64, 44, 76, 61, 39, 48, 59, 57, 62, 110, 84, 55, 71, 65, 86, 48, 54, 60, 49, 61, 54, 36, 52, 72, 80, 54, 95, 58, 89, 79, 82, 56, 63, 65, 83, 122, 73, 58, 69, 52, 77, 81, 81, 60, 58, 51, 89, 76, 63, 75, 64, 70, 30, 40, 75, 30, 71, 50, 45, 64, 73, 63, 57, 76, 77, 81, 53, 72, 63, 76, 93, 64, 77, 120, 91, 52, 53, 39, 86, 50, 48, 65, 43, 80, 74, 73, 73, 47, 69, 66, 81, 61, 51, 101, 57, 60, 60, 45, 78, 39, 83, 55, 56, 62, 69, 42, 61, 53, 65, 59, 90, 61, 34, 81, 73, 59, 53, 66, 56, 97, 43, 76, 62, 77, 71, 53, 48, 86, 64, 53, 73, 52, 79, 57, 89, 59, 80, 56, 68, 60, 92, 76, 68, 59, 69, 69, 78, 57, 52, 44, 57, 73, 40, 116, 68, 74, 48, 65, 86, 68, 36, 49, 49, 63, 59, 59, 68, 74, 71, 107, 76, 48, 85, 66, 82, 61, 68, 75, 51, 59, 60, 53, 74, 56, 43, 71, 53, 64, 70, 70, 51, 45, 77, 63, 82, 57, 51, 48, 69, 51, 42, 57, 62, 63, 67, 67, 75, 73, 51, 63, 64, 65, 78, 59, 56, 69, 78, 53, 55, 41, 64, 55, 63, 59, 57, 50, 56, 75, 82, 47, 92, 70, 58, 58, 39, 70, 84, 68, 55, 47, 48, 55, 76, 80, 57, 69, 69, 49, 73, 55, 54, 65, 71, 112, 84, 86, 76, 57, 58, 61, 61, 69, 65, 96, 69, 51, 67, 42, 69, 66, 70, 69, 69, 117, 46, 46, 53, 50, 62, 55, 55, 81, 76, 52, 65, 90, 55, 133, 85, 56, 64, 55, 85, 57, 91, 62, 77, 59, 88, 63, 47, 65, 62, 72, 44, 82, 67, 56, 69, 62, 52, 123, 93, 58, 107, 103, 51, 110, 71, 77, 52, 63, 83, 64, 62, 42, 71, 66, 75, 63, 33, 51, 49, 65, 88, 58, 53, 92, 64, 57, 40, 54, 55, 57, 57, 80, 67, 50, 81, 96, 84, 64, 64, 66, 54, 58, 68, 61, 52, 63, 55, 60, 46, 42, 43, 54, 77, 55, 60, 55, 63, 85, 88, 60, 129, 57, 73, 49, 65, 56, 68, 69, 50, 60, 99, 61, 54, 76, 50, 55, 75, 70, 80, 49, 43, 61, 62, 75, 111, 69, 62, 56, 65, 58, 84, 77, 62, 63, 94, 87, 80, 118, 62, 65, 88, 58, 60, 54, 105, 66, 81, 56, 58, 65, 53, 61, 36, 48, 54, 74, 70, 73, 61, 90, 48, 63, 69, 75, 104, 78, 84, 61, 92, 48, 60, 87, 48, 98, 86, 71, 57, 51, 97, 63, 57, 66, 79, 68, 56, 75, 87, 55, 42, 53, 65, 69, 74, 51, 62, 60, 55, 43, 57, 94, 70, 83, 83, 63, 73, 53, 54, 75, 64, 60, 88, 42, 86, 39, 73, 64, 70, 85, 84, 69, 103, 69, 86, 68, 94, 92, 43, 68, 73, 51, 55, 71, 67, 59, 64, 91, 59, 69, 61, 73, 62, 90, 69, 53, 75, 59, 65, 47, 49, 67, 68, 48, 65, 62, 110, 70, 66, 50, 93, 89, 56, 50, 51, 54, 63, 73, 82, 75, 89, 57, 42, 74, 69, 57, 71, 70, 62, 59, 51, 76, 71, 55, 66, 81, 79, 60, 64, 43, 60, 84, 72, 54, 85, 51, 57, 69, 71, 39, 76, 64, 75, 86, 109, 52, 78, 54, 49, 67, 55, 72, 77, 72, 69, 54, 43, 49, 58, 57, 59, 58, 56, 70, 62, 53, 58, 87, 57, 54, 62, 65, 63, 77, 79, 78, 92, 55, 59, 65, 84, 81, 48, 44, 80, 52, 56, 52, 80, 79, 65, 59, 49, 57, 60, 52, 59, 110, 85, 73, 79, 38, 61, 47, 70, 49, 116, 65, 77, 54, 59, 63, 77, 44, 36, 62, 55, 49, 79, 60, 79, 79, 45, 77, 62, 59, 69, 57, 73, 60, 64, 73, 82, 55, 52, 94, 71, 68, 72, 88, 73, 94, 61, 59, 68, 58, 78, 27, 77, 66, 55, 46, 61, 98, 86, 58, 79, 72, 41, 71, 56, 58, 60, 69, 69, 57, 71, 58, 92, 51, 55, 66, 60, 42, 62, 79, 70, 62, 109, 62, 68, 63, 75, 80, 55, 64, 59, 77, 123, 77, 84, 75, 59, 62, 99, 81, 90, 67, 56, 59, 52, 62, 74, 72, 51, 82, 55, 61, 69, 122, 52, 51, 82, 39, 70, 72, 56, 58, 61, 77, 74, 68, 56, 77, 69, 58, 81, 50, 57, 64, 96, 53, 78, 66, 64, 53, 61, 69, 60, 73, 97, 107, 68, 100, 69, 58, 68, 58, 72, 52, 57, 74, 65, 81, 52, 39, 85, 81, 53, 55, 50, 74, 41, 46, 42, 57, 61, 50, 72, 51, 65, 61, 49, 97, 53, 73, 49, 61, 90, 53, 57, 65, 73, 73, 73, 67, 63, 67, 81, 53, 54, 92, 55, 50, 58, 87, 85, 79, 73, 61, 62, 132, 75, 73, 88, 99, 47, 62, 70, 62, 61, 64, 74, 93, 85, 63, 91, 56, 77, 68, 57, 59, 115, 61, 70, 70, 75, 64, 71, 64, 61, 95, 64, 87, 66, 81, 76, 71, 75, 92, 69, 86, 46, 76, 70, 69, 58, 62, 54, 56, 70, 89, 103, 61, 43, 50, 55, 82, 62, 66, 60, 63, 73, 49, 70, 51, 60, 69, 42, 77, 73, 81, 80, 92, 53, 48, 52, 50, 42, 53, 106, 61, 92, 62, 62, 50, 95, 77, 71, 126, 85, 60, 63, 66, 68, 54, 66, 89, 56, 85, 66, 54, 52, 70, 74, 75, 47, 103, 81, 81, 63, 63, 68, 67, 61, 73, 29, 73, 84, 54, 42, 93, 62, 56, 48, 52, 50, 57, 47, 73, 48, 66, 69, 44, 61, 67, 77, 71, 51, 68, 63, 81, 161, 81, 50, 65, 66, 89, 66, 62, 96, 84, 68, 51, 55, 41, 66, 73, 63, 50, 55, 51, 62, 67, 65, 71, 67, 64, 57, 55, 66, 81, 42, 55, 32, 42, 79, 77, 76, 68, 51, 54, 50, 61, 64, 50, 83, 74, 67, 55, 58, 57, 76, 63, 89, 74, 83, 49, 62, 54, 86, 73, 70, 62, 78, 58, 61, 62, 66, 58, 40, 63, 65, 75, 51, 65, 58, 79, 62, 63, 93, 76, 73, 43, 63, 44, 53, 53, 56, 43, 82, 58, 82, 76, 49, 100, 76, 75, 47, 46, 53, 58, 68, 68, 52, 62, 46, 57, 40, 84, 55, 52, 75, 56, 76, 64, 66, 57, 65, 65, 56, 75, 80, 60, 115, 85, 55, 59, 68, 56, 68, 76, 60, 62, 76, 58, 74, 81, 54, 45, 89, 86, 82, 53, 38, 85, 79, 69, 63, 80, 55, 68, 46, 62, 65, 70, 86, 68, 58, 87, 52, 61, 60, 83, 61, 86, 56, 54, 78, 68, 58, 72, 90, 74, 66, 70, 69, 73, 53, 58, 63, 58, 58, 61, 29, 67, 63, 97, 62, 65, 36, 80, 53, 67, 66, 49, 69, 83, 69, 70, 52, 75, 57, 79, 47, 48, 78, 67, 56, 42, 73, 60, 46, 69, 72, 53, 89, 54, 55, 66, 64, 83, 74, 61, 89, 52, 68, 53, 84, 86, 65, 69, 72, 55, 73, 72, 60, 56, 69, 79, 58, 69, 44, 53, 55, 62, 61, 58, 54, 64, 49, 74, 73, 52, 54, 50, 69, 62, 47, 79, 67, 57, 49, 59, 67, 64, 57, 88, 46, 71, 57, 87, 69, 48, 73, 74, 57, 78, 64, 65, 94, 67, 83, 66, 61, 52, 38, 65, 72, 53, 55, 69, 81, 64, 54, 63, 60, 53, 64, 77, 75, 94, 51, 57, 68, 52, 76, 91, 59, 81, 36, 59, 57, 66, 46, 70, 49, 61, 61, 69, 62, 52, 67, 79, 48, 132, 59, 53, 43, 80, 62, 53, 72, 78, 92, 58, 61, 76, 56, 120, 77, 68, 75, 67, 55, 52, 55, 61, 77, 65, 43, 47, 64, 50, 58, 55, 67, 55, 63, 57, 65, 48, 66, 66, 76, 71, 64, 91, 74, 55, 55, 82, 42, 49, 73, 106, 74, 46, 75, 64, 93, 58, 87, 50, 50, 99, 67, 50, 55, 87, 59, 63, 61, 76, 91, 54, 53, 76, 62, 51, 58, 100, 76, 63, 64, 51, 45, 56, 42, 62, 48, 55, 77, 80, 75, 61, 32, 79, 67, 67, 65, 74, 51, 73, 72, 81, 116, 68, 62, 53, 63, 61, 65, 50, 45, 49, 81, 87, 65, 37, 49, 88, 72, 101, 54, 70, 67, 56, 76, 58, 75, 58, 68, 63, 52, 66, 91, 64, 54, 57, 55, 63, 59, 74, 44, 94, 56, 71, 66, 69, 54, 71, 73, 58, 46, 43, 57, 55, 85, 62, 75, 63, 71, 67, 77, 73, 61, 78, 56, 74, 76, 101, 59, 114, 92, 58, 65, 83, 66, 92, 66, 48, 38, 79, 76, 72, 72, 61, 59, 55, 57, 86, 78, 66, 76, 55, 54, 55, 100, 73, 62, 47, 60, 73, 59, 59, 44, 74, 61, 86, 50, 72, 76, 59, 44, 65, 82, 66, 73, 76, 57, 89, 47, 63, 60, 41, 59, 70, 71, 80, 51, 55, 64, 72, 63, 73, 82, 46, 67, 40, 75, 87, 49, 75, 54, 48, 56, 62, 60, 51, 90, 63, 53, 84, 50, 53, 64, 62, 57, 60, 58, 70, 58, 71, 65, 112, 60, 72, 64, 64, 51, 69, 118, 57, 114, 66, 51, 71, 50, 70, 86, 66, 69, 80, 100, 61, 90, 69, 100, 48, 90, 67, 42, 64, 68, 64, 63, 72, 97, 51, 44, 85, 71, 64, 79, 96, 79, 60, 60, 65, 78, 48, 79, 55, 63, 47, 59, 59, 46, 55, 65, 61, 33, 50, 61, 67, 73, 55, 59, 61, 69, 43, 55, 69, 56, 77, 60, 71, 65, 74, 57, 71, 58, 57, 65, 60, 53, 46, 52, 71, 48, 79, 97, 54, 58, 74, 66, 87, 61, 71, 60, 61, 60, 58, 70, 40, 76, 95, 52, 61, 49, 72, 65, 61, 68, 64, 88, 58, 81, 78, 48, 42, 97, 53, 87, 67, 62, 68, 50, 52, 60, 69, 93, 70, 59, 64, 47, 90, 77, 72, 46, 48, 74, 56, 68, 49, 64, 73, 74, 93, 54, 70, 64, 65, 61, 68, 71, 55, 69, 52, 59, 65, 71, 60, 64, 54, 72, 64, 29, 60, 48, 91, 80, 60, 48, 96, 68, 65, 72, 96, 71, 62, 73, 59, 67, 53, 73, 54, 75, 70, 76, 55, 50, 68, 61, 66, 89, 63, 62, 69, 59, 78, 48, 58, 82, 48, 41, 75, 93, 71, 54, 67, 44, 70, 100, 60, 48, 59, 62, 71, 67, 92, 64, 78, 59, 68, 66, 103, 49, 43, 99, 74, 57, 60, 67, 79, 62, 82, 67, 64, 43, 70, 108, 73, 66, 66, 125, 82, 67, 64, 59, 71, 62, 60, 61, 58, 65, 55, 47, 67, 60, 109, 78, 64, 54, 59, 56, 96, 57, 107, 79, 52, 46, 72, 66, 62, 76, 65, 74, 70, 57, 74, 66, 64, 139, 79, 73, 75, 66, 50, 58, 49, 59, 78, 92, 67, 72, 54, 52, 66, 106, 57, 72, 60, 67, 58, 66, 68, 64, 85, 77, 111, 66, 61, 74, 65, 51, 48, 93, 61, 84, 61, 61, 53, 66, 62, 73, 67, 74, 69, 50, 54, 59, 69, 86, 93, 66, 66, 57, 66, 68, 65, 50, 65, 67, 57, 55, 78, 70, 57, 49, 44, 68, 73, 91, 42, 54, 77, 69, 81, 53, 83, 75, 65, 70, 47, 58, 61, 69, 70, 79, 67, 56, 78, 58, 97, 73, 74, 47, 141, 62, 73, 46, 64, 68, 65, 53, 56, 65, 54, 60, 81, 91, 72, 40, 69, 53, 52, 54, 55, 79, 65, 66, 77, 37, 75, 49, 95, 56, 58, 60, 69, 56, 60, 84, 78, 58, 72, 46, 75, 54, 62, 98, 73, 63, 78, 89, 62, 128, 64, 63, 76, 63, 51, 99, 123, 80, 77, 68, 69, 74, 54, 48, 91, 71, 68, 53, 87, 65, 54, 54, 71, 73, 82, 52, 93, 78, 59, 82, 91, 73, 50, 66, 71, 68, 46, 63, 88, 75, 73, 88, 54, 71, 73, 48, 63, 57, 58, 37, 60, 74, 50, 54, 70, 67, 62, 59, 60, 60, 62, 70, 82, 79, 60, 69, 92, 43, 58, 60, 39, 80, 63, 72, 62, 57, 92, 57, 71, 63, 53, 65, 51, 73, 96, 90, 82, 53, 50, 70, 70, 74, 73, 56, 44, 63, 50, 68, 55, 64, 59, 53, 86, 64, 53, 75, 60, 69, 61, 67, 54, 86, 56, 73, 57, 58, 81, 68, 67, 71, 57, 86, 105, 69, 57, 56, 75, 68, 73, 86, 90, 55, 67, 58, 51, 83, 68, 53, 68, 59, 64, 58, 69, 47, 67, 45, 126, 66, 64, 134, 77, 90, 70, 63, 69, 49, 69, 60, 55, 139, 67, 98, 67, 60, 82, 58, 49, 66, 73, 61, 52, 68, 64, 61, 67, 56, 56, 68, 56, 64, 58, 69, 69, 45, 81, 54, 53, 69, 68, 46, 60, 67, 90, 62, 50, 70, 70, 47, 71, 55, 63, 54, 34, 49, 109, 52, 68, 53, 59, 83, 59, 66, 48, 74, 57, 94, 65, 59, 69, 73, 57, 47, 80, 91, 67, 57, 51, 90, 72, 70, 72, 78, 67, 64, 75, 47, 64, 53, 55, 60, 44, 75, 67, 64, 48, 84, 69, 86, 54, 71, 74, 84, 61, 65, 50, 62, 70, 59, 73, 78, 75, 70, 60, 56, 54, 54, 59, 51, 65, 75, 55, 71, 59, 67, 61, 64, 54, 70, 50, 54, 71, 77, 61, 74, 56, 68, 61, 52, 63, 70, 55, 61, 66, 56, 50, 62, 72, 54, 36, 67, 62, 69, 81, 54, 86, 82, 52, 74, 78, 75, 61, 49, 53, 51, 132, 58, 50, 77, 62, 83, 51, 68, 69, 85, 59, 77, 66, 63, 62, 74, 58, 57, 58, 77, 73, 57, 60, 71, 59, 60, 62, 71, 52, 76, 53, 63, 78, 53, 65, 120, 71, 81, 58, 74, 59, 69, 55, 76, 44, 134, 56, 58, 59, 39, 74, 67, 57, 56, 54, 75, 70, 56, 46, 59, 54, 67, 79, 86, 60, 69, 61, 79, 49, 52, 55, 82, 50, 71, 91, 131, 72, 110, 65, 69, 48, 80, 53, 56, 79, 63, 59, 54, 52, 60, 47, 87, 47, 73, 63, 46, 63, 92, 69, 57, 51, 57, 91, 84, 61, 68, 55, 61, 84, 56, 83, 95, 60, 66, 51, 77, 88, 68, 76, 77, 74, 60, 52, 67, 53, 55, 50, 52, 64, 71, 57, 79, 53, 49, 79, 68, 49, 58, 68, 57, 66, 63, 81, 63, 66, 55, 86, 71, 56, 49, 58, 76, 65, 84, 63, 71, 90, 70, 69, 60, 61, 68, 69, 67, 55, 54, 77, 53, 72, 39, 72, 64, 65, 53, 60, 60, 67, 75, 56, 46, 48, 72, 67, 58, 49, 68, 79, 71, 95, 69, 56, 65, 64, 69, 93, 59, 74, 60, 67, 34, 48, 66, 82, 65, 51, 77, 48, 71, 86, 60, 81, 58, 51, 76, 76, 70, 77, 80, 60, 65, 52, 69, 71, 61, 66, 82, 69, 69, 51, 65, 67, 70, 55, 58, 73, 62, 75, 58, 50, 48, 55, 61, 60, 55, 55, 60, 83, 70, 66, 91, 62, 54, 45, 55, 44, 81, 60, 98, 54, 57, 78, 69, 41, 57, 61, 73, 57, 80, 71, 40, 81, 34, 69, 79, 53, 47, 87, 56, 94, 68, 62, 93, 82, 79, 82, 63, 88, 61, 66, 67, 57, 67, 50, 71, 88, 55, 69, 52, 49, 57, 62, 55, 88, 68, 54, 67, 74, 58, 68, 57, 58, 59, 56, 58, 46, 59, 76, 61, 61, 75, 45, 71, 72, 57, 45, 72, 51, 58, 55, 54, 58, 69, 79, 75, 76, 99, 68, 54, 95, 65, 75, 73, 76, 63, 58, 56, 50, 53, 43, 62, 54, 63, 50, 71, 70, 95, 46, 81, 68, 58, 83, 54, 81, 64, 68, 92, 155, 88, 76, 61, 61, 59, 65, 62, 90, 45, 67, 58, 49, 70, 62, 72, 67, 69, 59, 43, 103, 61, 37, 62, 51, 56, 62, 63, 85, 71, 64, 78, 49, 89, 83, 40, 53, 56, 70, 49, 69, 68, 48, 56, 54, 77, 61, 68, 74, 71, 60, 53, 64, 58, 44, 54, 88, 61, 60, 60, 69, 57, 107, 68, 64, 58, 59, 65, 69, 64, 64, 71, 67, 59, 72, 54, 56, 97, 55, 105, 51, 59, 60, 62, 57, 68, 59, 64, 75, 77, 77, 47, 57, 96, 47, 79, 67, 64, 76, 82, 61, 74, 80, 63, 55, 57, 57, 86, 74, 72, 68, 148, 53, 58, 52, 63, 67, 65, 63, 52, 62, 53, 78, 73, 82, 57, 66, 55, 79, 60, 99, 121, 80, 76, 58, 61, 61, 59, 76, 67, 59, 61, 61, 42, 56, 54, 59, 61, 66, 72, 59, 60, 66, 66, 39, 60, 112, 59, 49, 48, 85, 58, 57, 81, 85, 51, 68, 59, 55, 66, 58, 81, 110, 42, 72, 72, 64, 63, 60, 70, 56, 66, 60, 60, 78, 105, 45, 76, 68, 76, 72, 80, 85, 60, 72, 77, 59, 77, 65, 57, 43, 44, 58, 60, 49, 63, 80, 54, 52, 67, 61, 68, 70, 50, 55, 63, 61, 61, 85, 42, 77, 73, 74, 46, 67, 67, 35, 49, 62, 56, 74, 68, 86, 55, 82, 74, 70, 69, 68, 58, 63, 66, 66, 50, 59, 65, 60, 52, 65, 77, 92, 88, 56, 39, 75, 68, 82, 64, 69, 60, 59, 58, 77, 62, 64, 76, 69, 74, 57, 73, 57, 62, 51, 45, 49, 56, 57, 75, 71, 62, 97, 56, 80, 57, 77, 74, 73, 71, 66, 55, 44, 55, 44, 63, 55, 56, 71, 80, 78, 88, 59, 63, 53, 96, 67, 90, 61, 85, 59, 71, 59, 73, 62, 81, 54, 64, 57, 59, 75, 47, 76, 63, 65, 56, 64, 66, 98, 71, 59, 69, 46, 69, 51, 61, 106, 58, 62, 80, 41, 55, 84, 69, 63, 65, 69, 44, 41, 81, 71, 76, 43, 76, 61, 67, 48, 58, 62, 62, 67, 61, 55, 70, 76, 73, 50, 89, 67, 68, 41, 65, 66, 58, 59, 69, 88, 69, 98, 32, 76, 59, 69, 45, 73, 55, 65, 66, 72, 78, 66, 51, 44, 60, 82, 79, 51, 68, 65, 65, 62, 67, 71, 63, 73, 65, 69, 63, 67, 65, 59, 54, 48, 57, 93, 66, 70, 63, 64, 83, 51, 73, 71, 45, 62, 64, 64, 54, 63, 72, 54, 68, 90, 58, 95, 80, 73, 60, 49, 101, 71, 53, 127, 83, 64, 41, 57, 52, 47, 69, 68, 70, 52, 52, 90, 43, 82, 54, 56, 93, 61, 94, 80, 66, 53, 76, 66, 100, 48, 81, 76, 63, 62, 63, 63, 71, 66, 48, 41, 44, 65, 51, 49, 65, 77, 56, 56, 56, 42, 69, 88, 71, 56, 75, 103, 80, 57, 85, 69, 56, 62, 65, 61, 77, 64, 48, 59, 71, 84, 66, 65, 70, 102, 58, 57, 63, 43, 75, 65, 52, 86, 61, 68, 71, 67, 63, 69, 63, 44, 92, 79, 60, 49, 70, 57, 111, 113, 45, 64, 55, 64, 42, 78, 74, 72, 107, 80, 47, 91, 56, 52, 94, 67, 75, 59, 46, 64, 70, 68, 79, 96, 89, 90, 69, 46, 79, 64, 97, 61, 58, 86, 55, 66, 43, 70, 70, 69, 76, 52, 73, 81, 53, 83, 84, 100, 53, 54, 61, 56, 71, 51, 56, 76, 81, 83, 63, 58, 61, 59, 69, 67, 63, 82, 52, 74, 78, 44, 72, 56, 70, 59, 102, 57, 76, 59, 50, 58, 49, 52, 61, 71, 41, 55, 50, 54, 61, 61, 68, 57, 70, 64, 67, 55, 52, 62, 57, 57, 95, 60, 54, 83, 46, 71, 64, 64, 70, 69, 61, 55, 64, 71, 49, 58, 60, 120, 83, 73, 104, 64, 68, 78, 76, 73, 60, 72, 81, 67, 67, 85, 63, 70, 70, 67, 62, 61, 55, 66, 57, 59, 86, 87, 49, 58, 58, 56, 45, 66, 93, 90, 81, 79, 57, 126, 50, 71, 79, 71, 65, 102, 84, 74, 52, 70, 109, 60, 49, 71, 60, 53, 74, 71, 72, 67, 73, 42, 48, 85, 140, 92, 64, 97, 49, 78, 57, 86, 58, 67, 53, 69, 84, 79, 69, 72, 73, 54, 58, 57, 60, 41, 85, 79, 68, 59, 91, 72, 62, 71, 84, 60, 106, 51, 73, 72, 69, 57, 64, 60, 57, 54, 61, 59, 57, 52, 60, 52, 63, 55, 71, 62, 80, 65, 77, 48, 51, 58, 64, 69, 58, 67, 75, 69, 72, 79, 66, 46, 62, 57, 84, 43, 57, 76, 61, 49, 79, 49, 64, 53, 71, 48, 63, 71, 79, 66, 58, 81, 120, 70, 72, 63, 70, 71, 64, 69, 70, 61, 60, 57, 64, 62, 91, 65, 68, 50, 65, 76, 63, 78, 36, 57, 67, 61, 58, 61, 55, 62, 77, 59, 79, 67, 60, 55, 66, 90, 69, 48, 50, 52, 62, 97, 82, 59, 60, 64, 76, 52, 85, 68, 66, 55, 59, 84, 81, 80, 44, 53, 55, 80, 78, 94, 56, 64, 69, 73, 67, 68, 66, 63, 64, 68, 51, 56, 63, 137, 56, 61, 40, 66, 42, 54, 61, 80, 71, 54, 52, 65, 121, 78, 81, 76, 55, 59, 64, 42, 88, 49, 47, 69, 68, 53, 46, 66, 82, 55, 60, 79, 63, 84, 83, 92, 78, 67, 59, 60, 58, 70, 76, 57, 59, 59, 55, 84, 52, 72, 60, 58, 39, 70, 132, 112, 52, 59, 98, 68, 73, 52, 73, 47, 51, 62, 70, 66, 87, 75, 58, 56, 68, 76, 56, 77, 91, 78, 58, 52, 55, 61, 76, 48, 141, 52, 77, 93, 56, 64, 72, 69, 48, 80, 70, 67, 83, 60, 67, 58, 49, 62, 60, 51, 98, 79, 49, 80, 68, 76, 49, 60, 51, 49, 74, 62, 71, 58, 63, 66, 67, 77, 90, 47, 73, 67, 79, 102, 61, 78, 83, 69, 62, 70, 61, 82, 74, 97, 47, 56, 45, 69, 103, 65, 80, 81, 71, 73, 79, 43, 64, 58, 129, 69, 92, 70, 57, 65, 57, 84, 45, 79, 112, 68, 54, 67, 63, 72, 71, 67, 49, 69, 60, 69, 62, 66, 70, 58, 74, 74, 55, 43, 56, 89, 53, 70, 69, 65, 56, 82, 69, 45, 66, 65, 126, 73, 69, 47, 55, 44, 73, 69, 64, 49, 51, 52, 62, 113, 67, 83, 69, 58, 55, 55, 46, 77, 39, 45, 77, 84, 50, 54, 57, 70, 80, 61, 62, 54, 60, 63, 82, 62, 61, 65, 59, 85, 67, 81, 58, 65, 94, 63, 64, 45, 52, 60, 63, 44, 67, 53, 62, 58, 60, 64, 54, 47, 92, 63, 59, 50, 69, 55, 93, 55, 73, 49, 77, 72, 83, 93, 114, 72, 49, 27, 66, 90, 44, 65, 74, 61, 67, 77, 71, 83, 66, 51, 115, 77, 75, 96, 65, 69, 49, 93, 74, 57, 71, 41, 50, 48, 60, 56, 75, 57, 60, 83, 54, 85, 45, 61, 57, 73, 50, 74, 60, 61, 65, 49, 83, 51, 63, 77, 67, 44, 41, 79, 67, 64, 47, 57, 52, 63, 80, 38, 52, 34, 60, 74, 75, 61, 47, 68, 67, 64, 73, 60, 61, 64, 78, 75, 56, 56, 59, 44, 77, 65, 56, 52, 64, 74, 47, 61, 60, 57, 64, 64, 50, 93, 76, 59, 74, 72, 56, 69, 65, 78, 93, 59, 94, 57, 51, 46, 49, 58, 128, 82, 66, 77, 64, 60, 57, 61, 62, 75, 67, 57, 77, 69, 68, 91, 63, 62, 97, 73, 51, 47, 88, 71, 49, 59, 61, 71, 70, 72, 54, 58, 67, 57, 43, 89, 83, 65, 65, 97, 72, 68, 70, 52, 63, 87, 103, 57, 93, 53, 71, 57, 60, 87, 50, 80, 55, 52, 58, 86, 91, 69, 40, 92, 75, 68, 67, 55, 54, 63, 47, 66, 64, 56, 57, 67, 44, 70, 64, 40, 58, 55, 55, 78, 86, 59, 61, 73, 84, 64, 65, 61, 53, 66, 61, 76, 42, 80, 66, 64, 39, 91, 40, 48, 60, 57, 56, 55, 58, 47, 57, 71, 60, 50, 54, 70, 59, 77, 74, 70, 55, 71, 71, 47, 95, 78, 64, 56, 78, 107, 59, 51, 67, 62, 75, 81, 86, 68, 59, 86, 57, 69, 76, 68, 67, 87, 64, 40, 62, 63, 80, 52, 51, 68, 66, 93, 63, 56, 64, 77, 67, 79, 79, 71, 50, 61, 45, 54, 107, 83, 61, 85, 64, 53, 61, 73, 53, 49, 55, 48, 47, 108, 73, 85, 35, 81, 59, 50, 102, 80, 56, 81, 52, 69, 45, 51, 83, 60, 72, 36, 56, 88, 77, 56, 57, 58, 54, 108, 54, 62, 80, 64, 82, 53, 60, 45, 66, 59, 47, 91, 50, 54, 74, 62, 74, 91, 51, 76, 67, 72, 56, 58, 51, 47, 112, 73, 44, 57, 50, 56, 70, 73, 75, 58, 124, 84, 48, 46, 66, 56, 67, 63, 72, 52, 59, 85, 59, 61, 107, 87, 51, 106, 85, 51, 69, 78, 50, 44, 62, 55, 96, 67, 58, 64, 74, 58, 45, 56, 100, 91, 55, 48, 82, 53, 76, 65, 49, 72, 60, 60, 84, 85, 48, 84, 84, 123, 68, 51, 77, 89, 75, 63, 41, 68, 118, 63, 72, 55, 94, 72, 94, 78, 68, 64, 86, 59, 76, 92, 75, 58, 60, 72, 55, 61, 50, 64, 81, 57, 54, 84, 97, 74, 65, 82, 64, 75, 82, 76, 68, 94, 81, 58, 55, 63, 103, 60, 53, 65, 85, 52, 56, 76, 68, 74, 67, 87, 73, 44, 55, 67, 52, 68, 46, 85, 64, 64, 57, 55, 75, 62, 70, 70, 58, 58, 69, 56, 38, 63, 55, 70, 54, 65, 104, 56, 51, 58, 64, 70, 76, 35, 78, 63, 67, 49, 63, 78, 59, 42, 48, 73, 54, 61, 47, 53, 58, 62, 58, 60, 56, 71, 57, 61, 78, 60, 76, 46, 55, 61, 64, 66, 54, 109, 60, 63, 57, 61, 60, 76, 58, 48, 68, 79, 67, 69, 78, 78, 99, 83, 63, 50, 60, 71, 73, 53, 77, 69, 60, 71, 56, 66, 54, 61, 57, 79, 60, 71, 67, 55, 47, 53, 47, 122, 43, 83, 87, 112, 79, 59, 56, 55, 80, 107, 88, 50, 71, 65, 83, 85, 50, 61, 52, 50, 73, 66, 44, 49, 57, 79, 67, 88, 52, 89, 82, 57, 79, 95, 51, 54, 77, 59, 66, 65, 72, 50, 81, 67, 61, 59, 63, 62, 69, 54, 78, 69, 65, 62, 56, 64, 51, 71, 69, 54, 96, 81, 74, 48, 55, 56, 54, 37, 78, 63, 96, 64, 76, 97, 78, 51, 97, 62, 59, 61, 50, 78, 69, 64, 56, 61, 60, 70, 71, 47, 55, 54, 78, 53, 55, 73, 36, 67, 53, 63, 64, 83, 35, 68, 60, 64, 103, 78, 71, 53, 49, 64, 79, 73, 56, 40, 76, 49, 57, 46, 33, 40, 57, 72, 60, 51, 65, 69, 55, 71, 77, 54, 80, 75, 60, 64, 64, 56, 66, 62, 69, 51, 106, 58, 49, 61, 45, 93, 70, 88, 59, 97, 64, 37, 65, 97, 87, 114, 69, 67, 71, 54, 57, 78, 63, 71, 73, 97, 59, 44, 44, 48, 61, 59, 55, 64, 50, 64, 67, 52, 59, 56, 61, 84, 81, 57, 93, 63, 82, 58, 67, 57, 55, 74, 69, 59, 87, 69, 45, 60, 60, 45, 119, 70, 51, 62, 62, 59, 62, 74, 48, 84, 69, 57, 73, 43, 74, 78, 60, 69, 78, 84, 89, 93, 65, 78, 67, 65, 99, 68, 48, 74, 53, 57, 63, 47, 40, 65, 72, 53, 59, 38, 65, 37, 67, 95, 71, 75, 70, 39, 60, 71, 55, 94, 82, 66, 68, 123, 59, 60, 50, 59, 67, 38, 50, 61, 43, 57, 56, 40, 62, 65, 50, 53, 56, 61, 70, 68, 76, 65, 53, 76, 54, 57, 68, 63, 77, 78, 75, 68, 69, 56, 63, 72, 60, 76, 66, 92, 62, 74, 60, 52, 62, 57, 52, 58, 44, 53, 53, 47, 71, 57, 72, 65, 60, 76, 73, 55, 52, 61, 56, 60, 52, 62, 73, 60, 65, 59, 88, 76, 61, 66, 65, 79, 61, 52, 49, 68, 83, 55, 53, 49, 84, 61, 73, 59, 50, 62, 132, 57, 87, 42, 55, 65, 82, 60, 52, 68, 70, 63, 49, 72, 80, 64, 49, 69, 70, 68, 63, 70, 72, 67, 57, 77, 48, 62, 74, 54, 69, 70, 69, 77, 91, 60, 63, 50, 59, 51, 60, 58, 61, 45, 55, 73, 60, 47, 70, 51, 61, 57, 82, 61, 60, 64, 69, 76, 72, 65, 60, 36, 83, 64, 52, 83, 81, 48, 57, 58, 56, 65, 54, 56, 63, 65, 77, 42, 61, 82, 54, 46, 52, 61, 62, 64, 62, 64, 64, 67, 59, 73, 64, 57, 53, 92, 60, 56, 72, 78, 67, 94, 70, 51, 69, 70, 64, 129, 44, 127, 59, 73, 54, 66, 69, 60, 54, 75, 72, 57, 72, 58, 65, 47, 66, 52, 75, 49, 46, 49, 57, 57, 65, 75, 57, 103, 56, 55, 67, 69, 61, 84, 75, 79, 66, 67, 67, 59, 79, 42, 100, 72, 80, 67, 57, 69, 60, 64, 58, 60, 56, 75, 55, 73, 51, 72, 63, 59, 72, 62, 110, 54, 71, 47, 42, 59, 84, 126, 63, 73, 54, 76, 73, 75, 81, 72, 67, 60, 65, 79, 62, 63, 59, 56, 54, 71, 74, 69, 54, 83, 64, 79, 95, 136, 61, 66, 72, 62, 65, 57, 64, 61, 56, 54, 67, 71, 83, 63, 51, 61, 60, 59, 66, 75, 51, 52, 46, 61, 61, 46, 75, 50, 72, 70, 62, 43, 62, 66, 57, 67, 55, 72, 63, 59, 76, 77, 69, 58, 84, 56, 57, 77, 62, 77, 76, 80, 62, 64, 56, 69, 76, 79, 73, 62, 49, 73, 72, 55, 51, 54, 55, 142, 66, 76, 73, 70, 62, 64, 60, 52, 70, 78, 42, 79, 78, 61, 71, 55, 73, 62, 65, 78, 45, 60, 106, 71, 61, 43, 70, 61, 96, 79, 51, 63, 48, 62, 54, 99, 59, 101, 63, 62, 78, 66, 62, 51, 52, 92, 80, 59, 64, 76, 70, 59, 43, 63, 58, 53, 69, 62, 72, 53, 66, 75, 58, 84, 62, 68, 56, 59, 74, 76, 71, 115, 87, 127, 60, 73, 65, 62, 68, 63, 63, 56, 59, 56, 64, 61, 55, 79, 85, 68, 66, 70, 72, 62, 62, 63, 79, 59, 72, 59, 61, 47, 65, 66, 93, 72, 77, 60, 71, 60, 63, 89, 78, 58, 66, 52, 70, 81, 69, 71, 133, 49, 54, 70, 70, 73, 63, 73, 66, 74, 83, 66, 66, 66, 57, 84, 55, 82, 50, 84, 73, 62, 48, 52, 66, 76, 66, 54, 109, 53, 55, 66, 88, 55, 59, 53, 76, 57, 42, 72, 67, 51, 71, 61, 88, 76, 69, 80, 84, 52, 73, 62, 100, 70, 69, 63, 57, 59, 55, 76, 80, 54, 59, 62, 56, 70, 68, 46, 67, 57, 61, 79, 66, 50, 73, 64, 65, 53, 108, 50, 65, 53, 73, 66, 64, 61, 80, 55, 60, 59, 49, 67, 54, 88, 74, 58, 67, 49, 61, 64, 87, 63, 50, 41, 83, 53, 85, 85, 66, 64, 46, 74, 65, 77, 57, 69, 57, 60, 75, 80, 73, 55, 54, 57, 67, 67, 51, 92, 54, 48, 59, 80, 58, 70, 58, 68, 77, 74, 72, 78, 64, 53, 70, 64, 66, 71, 65, 75, 62, 87, 64, 60, 98, 70, 67, 93, 48, 101, 59, 54, 50, 58, 56, 63, 60, 67, 71, 60, 62, 57, 59, 82, 80, 65, 51, 59, 54, 41, 65, 52, 61, 72, 65, 53, 72, 51, 50, 76, 68, 73, 102, 78, 64, 74, 79, 58, 65, 64, 69, 62, 60, 73, 64, 59, 45, 67, 61, 56, 73, 60, 69, 67, 70, 54, 89, 54, 56, 85, 44, 71, 65, 62, 63, 77, 77, 67, 62, 62, 91, 71, 59, 63, 51, 77, 66, 59, 78, 60, 87, 58, 57, 72, 91, 76, 56, 50, 74, 43, 50, 70, 42, 69, 63, 65, 65, 63, 62, 90, 66, 82, 78, 66, 68, 57, 63, 50, 80, 65, 49, 68, 65, 59, 60, 55, 59, 57, 79, 54, 63, 58, 78, 67, 48, 59, 82, 58, 68, 85, 75, 47, 63, 62, 65, 50, 57, 51, 62, 62, 46, 67, 73, 60, 58, 67, 57, 56, 63, 49, 50, 54, 55, 90, 64, 76, 55, 60, 42, 65, 65, 61, 66, 75, 43, 90, 62, 62, 50, 65, 71, 70, 67, 57, 77, 57, 75, 62, 78, 48, 60, 69, 94, 86, 61, 72, 55, 87, 77, 83, 44, 94, 63, 52, 119, 71, 56, 67, 78, 107, 58, 53, 57, 73, 73, 72, 54, 72, 56, 61, 66, 73, 100, 72, 63, 95, 57, 67, 42, 74, 72, 62, 53, 48, 74, 42, 71, 72, 59, 64, 70, 95, 62, 38, 60, 123, 59, 67, 63, 54, 64, 55, 60, 50, 63, 54, 98, 75, 66, 65, 65, 56, 70, 65, 74, 60, 53, 55, 85, 57, 109, 64, 56, 63, 61, 75, 64, 53, 63, 62, 64, 115, 82, 54, 65, 75, 111, 57, 75, 60, 59, 54, 65, 69, 68, 59, 53, 27, 65, 52, 61, 68, 66, 48, 54, 54, 54, 55, 65, 92, 60, 69, 58, 64, 100, 53, 70, 61, 69, 71, 58, 55, 71, 73, 71, 60, 80, 95, 61, 79, 62, 67, 77, 51, 81, 64, 80, 48, 46, 62, 48, 59, 53, 61, 90, 64, 64, 54, 60, 40, 111, 57, 56, 57, 43, 41, 66, 79, 55, 59, 81, 68, 64, 76, 67, 55, 92, 56, 56, 79, 78, 51, 34, 73, 77, 72, 67, 68, 58, 60, 53, 51, 66, 72, 67, 54, 86, 83, 67, 80, 47, 75, 76, 64, 57, 54, 62, 64, 78, 77, 77, 66, 86, 58, 51, 70, 61, 69, 115, 75, 62, 63, 62, 56, 89, 59, 56, 88, 60, 55, 65, 62, 70, 56, 90, 82, 52, 58, 82, 75, 69, 93, 74, 47, 47, 79, 48, 69, 29, 66, 71, 79, 87, 85, 85, 63, 35, 55, 57, 75, 66, 55, 93, 51, 62, 70, 73, 52, 38, 56, 57, 55, 71, 70, 59, 71, 83, 57, 80, 57, 96, 71, 67, 75, 66, 81, 98, 74, 75, 65, 80, 95, 88, 64, 60, 71, 77, 59, 74, 48, 89, 70, 64, 78, 63, 57, 58, 65, 69, 70, 68, 48, 54, 51, 45, 70, 82, 55, 59, 69, 60, 57, 62, 52, 67, 55, 75, 65, 69, 75, 77, 78, 72, 66, 68, 72, 62, 76, 78, 77, 53, 71, 51, 71, 47, 79, 68, 47, 63, 75, 48, 63, 70, 61, 83, 72, 73, 43, 61, 92, 75, 57, 50, 63, 48, 66, 39, 57, 57, 74, 71, 72, 63, 55, 96, 44, 86, 55, 49, 67, 61, 71, 66, 69, 48, 62, 62, 58, 55, 56, 61, 72, 59, 72, 84, 56, 86, 61, 68, 87, 59, 88, 110, 65, 64, 30, 72, 55, 62, 73, 91, 57, 77, 71, 97, 63, 62, 55, 109, 64, 61, 71, 61, 44, 92, 52, 71, 63, 81, 69, 47, 52, 86, 85, 59, 59, 59, 53, 58, 51, 52, 58, 77, 84, 79, 72, 82, 66, 40, 66, 54, 71, 41, 51, 91, 57, 59, 48, 83, 76, 60, 100, 91, 53, 60, 51, 67, 39, 77, 64, 52, 66, 67, 75, 52, 57, 48, 47, 59, 71, 57, 51, 64, 56, 65, 55, 84, 61, 58, 57, 61, 93, 66, 72, 65, 66, 91, 64, 48, 73, 65, 97, 61, 74, 76, 56, 76, 64, 102, 58, 79, 51, 72, 55, 64, 67, 78, 52, 43, 48, 53, 71, 68, 92, 81, 65, 43, 58, 100, 57, 69, 58, 72, 77, 81, 83, 64, 68, 64, 47, 66, 74, 52, 75, 77, 55, 66, 78, 58, 72, 64, 76, 46, 62, 128, 73, 79, 68, 68, 71, 67, 57, 56, 84, 55, 57, 63, 64, 59, 46, 60, 59, 69, 67, 58, 70, 87, 62, 69, 74, 49, 96, 70, 64, 84, 70, 78, 78, 58, 70, 63, 50, 77, 77, 68, 48, 59, 72, 77, 45, 88, 60, 71, 64, 52, 55, 60, 84, 66, 45, 54, 68, 70, 68, 68, 71, 55, 44, 79, 56, 50, 82, 73, 50, 71, 70, 60, 60, 48, 71, 76, 67, 55, 77, 42, 60, 66, 93, 67, 61, 52, 85, 58, 67, 66, 41, 64, 70, 51, 53, 44, 77, 70, 52, 60, 50, 77, 50, 93, 104, 84, 61, 52, 79, 45, 58, 62, 60, 64, 89, 53, 57, 58, 58, 86, 62, 65, 53, 58, 88, 67, 62, 89, 81, 51, 89, 59, 60, 63, 70, 51, 65, 77, 60, 80, 62, 53, 59, 63, 76, 81, 62, 54, 66, 68, 68, 72, 50, 65, 52, 55, 69, 48, 54, 66, 77, 79, 75, 76, 71, 74, 58, 41, 59, 85, 68, 80, 75, 59, 61, 56, 67, 62, 72, 60, 64, 59, 74, 64, 57, 64, 56, 61, 75, 66, 84, 60, 56, 46, 51, 71, 63, 91, 77, 56, 57, 55, 54, 71, 55, 79, 58, 50, 70, 58, 92, 76, 63, 67, 57, 73, 72, 77, 68, 54, 52, 60, 55, 81, 76, 59, 73, 72, 57, 77, 61, 63, 52, 64, 58, 85, 74, 57, 78, 47, 90, 57, 57, 62, 45, 46, 50, 55, 94, 72, 48, 80, 61, 59, 62, 45, 81, 101, 57, 68, 100, 52, 45, 90, 73, 65, 66, 61, 70, 59, 55, 88, 59, 60, 38, 78, 79, 66, 42, 93, 59, 70, 66, 78, 71, 53, 69, 58, 44, 66, 69, 69, 80, 78, 62, 87, 73, 54, 62, 70, 47, 85, 83, 73, 77, 72, 66, 37, 98, 75, 60, 56, 70, 62, 46, 71, 76, 57, 47, 66, 58, 67, 64, 67, 42, 61, 50, 56, 75, 73, 84, 67, 88, 65, 59, 80, 38, 51, 73, 53, 49, 68, 71, 72, 70, 64, 57, 53, 77, 63, 62, 60, 111, 72, 48, 76, 73, 49, 67, 66, 62, 53, 58, 77, 72, 56, 70, 71, 64, 75, 43, 84, 74, 66, 63, 87, 75, 57, 74, 70, 50, 58, 76, 62, 80, 64, 57, 63, 62, 60, 77, 49, 58, 46, 62, 47, 67, 80, 56, 63, 72, 61, 68, 56, 73, 68, 65, 79, 60, 64, 79, 105, 71, 60, 75, 37, 86, 74, 63, 59, 60, 61, 57, 73, 84, 62, 49, 61, 70, 42, 46, 72, 63, 57, 59, 69, 50, 52, 62, 69, 63, 65, 50, 58, 67, 69, 72, 53, 76, 54, 44, 69, 104, 86, 99, 59, 49, 94, 62, 74, 59, 83, 69, 55, 62, 76, 55, 60, 70, 55, 64, 80, 69, 64, 64, 60, 54, 71, 67, 63, 75, 79, 78, 86, 65, 114, 62, 75, 52, 75, 54, 63, 66, 96, 65, 59, 89, 65, 55, 75, 89, 49, 78, 75, 51, 62, 46, 103, 55, 34, 73, 62, 79, 59, 80, 64, 63, 65, 58, 69, 68, 69, 49, 59, 48, 54, 58, 73, 55, 48, 50, 85, 63, 53, 72, 67, 88, 45, 69, 75, 71, 73, 54, 61, 68, 65, 58, 67, 72, 49, 55, 68, 60, 79, 56, 64, 61, 67, 74, 62, 57, 72, 68, 82, 54, 54, 68, 52, 49, 74, 57, 65, 67, 78, 64, 73, 62, 56, 46, 70, 62, 59, 58, 61, 78, 58, 67, 60, 69, 81, 59, 76, 70, 70, 45, 48, 69, 73, 90, 80, 58, 111, 67, 58, 70, 84, 63, 67, 59, 66, 59, 87, 70, 47, 82, 58, 66, 122, 75, 74, 75, 64, 62, 69, 59, 65, 64, 80, 142, 59, 51, 74, 48, 56, 56, 71, 73, 76, 62, 69, 80, 65, 72, 82, 66, 69, 63, 60, 64, 85, 87, 47, 77, 68, 52, 57, 46, 74, 52, 59, 81, 74, 71, 65, 65, 100, 55, 58, 79, 53, 67, 76, 83, 59, 76, 50, 36, 106, 77, 68, 66, 67, 104, 72, 49, 125, 69, 59, 46, 107, 67, 67, 69, 62, 72, 70, 68, 55, 68, 59, 63, 61, 70, 61, 54, 44, 51, 63, 57, 49, 72, 72, 56, 65, 61, 64, 59, 60, 40, 56, 63, 49, 40, 70, 57, 71, 56, 66, 105, 78, 69, 80, 55, 78, 118, 62, 59, 81, 72, 65, 64, 70, 58, 57, 53, 70, 83, 65, 72, 63, 59, 66, 43, 55, 59, 55, 71, 77, 82, 91, 51, 55, 88, 81, 72, 53, 46, 62, 73, 40, 78, 61, 62, 65, 51, 64, 63, 134, 53, 73, 62, 53, 46, 49, 70, 87, 58, 50, 58, 72, 60, 68, 62, 79, 64, 56, 68, 63, 57, 56, 79, 65, 61, 60, 82, 52, 78, 65, 69, 44, 50, 54, 67, 73, 65, 53, 47, 66, 85, 76, 75, 56, 67, 69, 56, 63, 70, 79, 63, 69, 65, 60, 70, 63, 40, 74, 64, 75, 75, 48, 61, 58, 54, 61, 81, 56, 78, 56, 69, 62, 53, 62, 79, 59, 70, 70, 51, 75, 71, 71, 58, 92, 68, 78, 55, 46, 65, 80, 81, 57, 55, 79, 66, 54, 40, 71, 64, 65, 81, 70, 81, 70, 51, 75, 70, 46, 80, 125, 77, 57, 65, 66, 68, 89, 66, 101, 55, 60, 67, 54, 42, 66, 71, 66, 77, 59, 63, 67, 63, 63, 61, 55, 52, 82, 60, 60, 73, 54, 61, 99, 50, 68, 62, 66, 54, 102, 113, 54, 58, 62, 63, 69, 94, 89, 70, 71, 58, 57, 62, 68, 51, 50, 50, 55, 114, 85, 59, 57, 53, 42, 62, 92, 74, 82, 57, 83, 61, 46, 76, 74, 73, 46, 66, 64, 76, 84, 62, 68, 65, 67, 55, 76, 73, 75, 51, 62, 74, 53, 49, 70, 111, 41, 73, 74, 63, 55, 77, 56, 53, 70, 59, 61, 60, 70, 79, 56, 64, 100, 62, 59, 57, 64, 72, 60, 64, 60, 60, 56, 68, 76, 73, 91, 59, 62, 77, 64, 63, 74, 63, 96, 80, 55, 43, 79, 61, 62, 58, 77, 130, 67, 55, 71, 77, 66, 80, 59, 72, 79, 89, 70, 76, 65, 81, 69, 73, 68, 41, 62, 55, 74, 56, 65, 56, 57, 73, 75, 71, 56, 45, 67, 85, 65, 66, 83, 58, 73, 83, 54, 73, 71, 56, 62, 54, 49, 60, 73, 71, 118, 73, 47, 59, 89, 83, 58, 102, 131, 76, 62, 48, 53, 62, 63, 60, 73, 101, 80, 42, 86, 68, 68, 78, 36, 79, 69, 60, 57, 85, 57, 81, 58, 60, 52, 59, 95, 56, 60, 59, 64, 48, 47, 46, 56, 66, 49, 62, 57, 58, 80, 78, 59, 74, 53, 55, 84, 68, 57, 58, 54, 84, 75, 69, 85, 63, 62, 68, 80, 46, 75, 62, 52, 72, 73, 67, 69, 72, 47, 65, 60, 59, 59, 60, 93, 44, 70, 74, 68, 57, 56, 51, 79, 62, 71, 84, 75, 108, 59, 65, 76, 62, 63, 51, 36, 80, 108, 69, 60, 54, 72, 51, 57, 70, 60, 68, 73, 64, 68, 70, 68, 55, 80, 80, 70, 66, 47, 71, 69, 55, 66, 65, 73, 41, 57, 58, 81, 60, 53, 82, 52, 54, 56, 69, 70, 80, 50, 76, 74, 76, 68, 67, 63, 59, 61, 69, 54, 92, 71, 45, 58, 58, 70, 68, 67, 45, 64, 48, 57, 122, 56, 62, 56, 78, 53, 71, 59, 65, 70, 48, 89, 60, 50, 89, 72, 118, 51, 78, 69, 54, 55, 55, 65, 72, 61, 57, 79, 76, 71, 51, 54, 48, 59, 79, 86, 77, 51, 67, 86, 78, 68, 41, 65, 55, 77, 89, 111, 60, 70, 79, 58, 49, 66, 63, 66, 59, 50, 53, 60, 54, 64, 60, 69, 61, 65, 58, 79, 88, 77, 69, 70, 74, 71, 80, 53, 77, 56, 68, 66, 60, 71, 52, 38, 74, 79, 73, 51, 42, 74, 52, 64, 81, 100, 56, 59, 71, 60, 82, 79, 65, 66, 57, 56, 76, 57, 69, 80, 58, 67, 38, 78, 54, 70, 65, 50, 54, 52, 84, 52, 67, 60, 60, 55, 68, 57, 57, 55, 62, 70, 64, 79, 56, 67, 67, 60, 68, 85, 66, 71, 68, 74, 56, 52, 55, 62, 59, 63, 89, 45, 62, 55, 53, 70, 52, 45, 56, 66, 57, 78, 57, 51, 60, 61, 61, 69, 62, 75, 69, 69, 74, 93, 57, 53, 73, 52, 75, 53, 53, 51, 57, 61, 74, 61, 58, 104, 69, 60, 89, 55, 59, 94, 79, 47, 46, 69, 71, 83, 62, 81, 35, 74, 51, 68, 63, 51, 81, 52, 61, 65, 68, 57, 48, 66, 60, 132, 70, 53, 83, 69, 72, 48, 58, 89, 55, 121, 56, 54, 55, 60, 50, 58, 69, 73, 69, 83, 69, 64, 77, 64, 61, 68, 122, 52, 65, 84, 88, 69, 58, 79, 129, 53, 52, 65, 91, 74, 53, 68, 78, 45, 88, 64, 78, 60, 72, 65, 76, 65, 65, 49, 60, 70, 52, 68, 63, 54, 64, 63, 65, 62, 71, 61, 82, 46, 74, 53, 65, 62, 59, 56, 51, 64, 61, 59, 51, 54, 60, 75, 57, 58, 76, 79, 88, 55, 67, 66, 45, 67, 64, 51, 56, 50, 55, 104, 44, 70, 64, 89, 69, 49, 62, 52, 57, 85, 53, 60, 68, 75, 66, 56, 61, 44, 75, 45, 83, 70, 70, 62, 66, 78, 58, 64, 69, 44, 71, 78, 73, 81, 56, 60, 70, 79, 55, 86, 71, 62, 78, 76, 56, 62, 53, 58, 74, 55, 64, 53, 85, 37, 57, 56, 49, 117, 91, 59, 61, 60, 72, 74, 70, 77, 70, 117, 60, 95, 75, 41, 56, 61, 78, 70, 52, 54, 56, 64, 74, 72, 60, 67, 43, 61, 80, 85, 57, 68, 57, 70, 60, 70, 97, 64, 104, 67, 78, 66, 47, 65, 69, 55, 40, 81, 68, 60, 96, 85, 52, 73, 53, 78, 67, 78, 79, 75, 87, 62, 62, 65, 51, 69, 50, 58, 63, 58, 42, 59, 94, 79, 63, 92, 56, 108, 65, 42, 68, 64, 49, 60, 49, 74, 85, 57, 48, 63, 79, 64, 37, 55, 58, 47, 59, 68, 79, 57, 68, 64, 43, 61, 69, 54, 89, 73, 76, 94, 57, 50, 78, 56, 50, 86, 80, 82, 62, 68, 69, 73, 60, 74, 45, 59, 68, 63, 74, 69, 59, 54, 72, 70, 59, 83, 90, 71, 55, 47, 63, 96, 54, 57, 91, 39, 85, 48, 52, 86, 56, 76, 86, 76, 61, 72, 62, 68, 64, 77, 70, 44, 71, 64, 67, 56, 50, 48, 57, 64, 65, 73, 76, 74, 84, 71, 44, 72, 43, 37, 52, 54, 58, 43, 47, 66, 70, 57, 71, 41, 125, 56, 79, 77, 54, 64, 82, 62, 45, 127, 71, 62, 64, 37, 90, 54, 80, 68, 101, 50, 59, 96, 57, 78, 72, 96, 81, 63, 63, 89, 39, 65, 88, 64, 63, 92, 60, 54, 63, 66, 67, 70, 59, 62, 90, 52, 69, 58, 82, 56, 76, 69, 98, 43, 77, 73, 59, 67, 52, 85, 67, 46, 60, 87, 61, 72, 66, 71, 67, 69, 48, 82, 112, 75, 50, 64, 55, 55, 64, 72, 77, 50, 59, 72, 76, 62, 56, 65, 71, 66, 76, 70, 66, 48, 59, 83, 63, 47, 53, 97, 61, 54, 79, 58, 66, 68, 50, 61, 63, 92, 83, 64, 55, 65, 52, 64, 63, 52, 77, 68, 73, 58, 79, 60, 47, 71, 62, 56, 63, 62, 59, 61, 64, 73, 66, 76, 50, 155, 98, 103, 63, 42, 50, 63, 70, 59, 68, 73, 41, 72, 55, 56, 63, 64, 70, 62, 61, 54, 95, 76, 58, 100, 55, 94, 39, 49, 58, 57, 59, 65, 88, 56, 65, 46, 87, 106, 65, 62, 77, 63, 62, 65, 61, 70, 93, 64, 73, 60, 49, 53, 69, 62, 45, 74, 69, 76, 84, 87, 64, 78, 62, 38, 86, 75, 77, 71, 67, 61, 54, 127, 61, 57, 58, 61, 70, 46, 104, 80, 58, 56, 74, 50, 75, 41, 55, 67, 55, 56, 57, 47, 39, 63, 84, 54, 79, 104, 42, 65, 56, 56, 66, 67, 57, 70, 64, 50, 63, 68, 59, 47, 49, 53, 100, 83, 67, 60, 76, 79, 60, 78, 88, 61, 63, 67, 58, 59, 62, 61, 59, 90, 83, 71, 79, 45, 72, 54, 50, 49, 35, 79, 54, 50, 88, 70, 66, 58, 71, 67, 71, 70, 63, 66, 65, 49, 52, 54, 70, 81, 54, 59, 58, 67, 51, 77, 91, 71, 59, 67, 63, 99, 83, 50, 65, 62, 60, 85, 62, 66, 62, 102, 81, 50, 57, 77, 58, 51, 62, 51, 48, 59, 102, 69, 80, 66, 64, 81, 68, 50, 49, 60, 51, 56, 55, 48, 93, 51, 50, 60, 43, 92, 51, 63, 71, 56, 91, 74, 56, 64, 71, 73, 51, 59, 128, 72, 85, 64, 65, 67, 64, 73, 69, 60, 67, 72, 36, 57, 70, 95, 43, 51, 52, 49, 63, 43, 82, 35, 61, 62, 59, 73, 76, 67, 63, 74, 61, 59, 62, 77, 53, 63, 56, 47, 55, 50, 52, 64, 71, 74, 61, 87, 60, 47, 49, 84, 77, 90, 75, 82, 70, 73, 47, 66, 38, 76, 67, 59, 44, 108, 58, 68, 69, 51, 61, 63, 67, 64, 53, 73, 61, 73, 63, 66, 68, 89, 58, 64, 109, 46, 60, 76, 62, 72, 62, 44, 60, 80, 43, 64, 73, 50, 60, 56, 63, 69, 41, 91, 60, 67, 80, 86, 103, 46, 95, 61, 65, 65, 67, 58, 61, 75, 39, 66, 76, 76, 77, 61, 80, 53, 63, 35, 65, 60, 71, 68, 45, 80, 73, 53, 59, 46, 68, 63, 66, 69, 58, 64, 63, 59, 65, 77, 69, 72, 50, 68, 112, 99, 71, 82, 73, 82, 57, 64, 37, 64, 85, 90, 67, 75, 67, 60, 53, 67, 59, 58, 53, 61, 65, 81, 58, 46, 63, 60, 91, 84, 53, 66, 72, 92, 55, 64, 76, 78, 85, 51, 58, 55, 57, 64, 66, 64, 120, 77, 61, 74, 66, 47, 66, 79, 61, 59, 64, 41, 88, 54, 74, 67, 64, 68, 56, 47, 62, 78, 65, 41, 65, 50, 47, 92, 97, 73, 87, 55, 120, 52, 61, 73, 54, 73, 41, 59, 94, 52, 54, 58, 80, 69, 68, 72, 105, 73, 63, 40, 53, 59, 79, 61, 74, 99, 51, 67, 56, 74, 72, 70, 65, 65, 50, 63, 74, 77, 73, 51, 60, 57, 53, 65, 74, 83, 69, 64, 72, 71, 104, 67, 96, 64, 62, 66, 68, 55, 48, 43, 58, 46, 62, 55, 94, 51, 79, 65, 53, 84, 74, 57, 50, 67, 46, 82, 80, 68, 93, 42, 64, 55, 81, 49, 54, 52, 51, 64, 87, 52, 83, 58, 51, 64, 56, 55, 79, 68, 53, 67, 55, 73, 68, 60, 57, 51, 74, 60, 50, 105, 57, 77, 112, 67, 61, 64, 66, 59, 82, 66, 63, 44, 70, 75, 50, 57, 49, 52, 59, 69, 68, 81, 61, 70, 95, 67, 56, 66, 65, 71, 48, 71, 70, 45, 53, 77, 106, 67, 61, 101, 72, 57, 69, 60, 44, 46, 90, 73, 66, 78, 47, 73, 56, 61, 86, 60, 58, 64, 66, 81, 61, 54, 94, 64, 62, 57, 52, 61, 68, 69, 40, 68, 39, 64, 60, 58, 54, 115, 60, 74, 57, 61, 49, 61, 57, 66, 79, 69, 47, 61, 63, 74, 58, 49, 55, 65, 60, 59, 62, 51, 58, 54, 96, 79, 45, 60, 41, 66, 73, 51, 103, 78, 71, 77, 85, 51, 81, 69, 66, 58, 63, 54, 50, 50, 47, 80, 60, 51, 73, 49, 64, 69, 59, 71, 57, 85, 51, 64, 77, 61, 80, 59, 59, 50, 83, 63, 71, 81, 61, 62, 76, 66, 56, 82, 104, 67, 51, 35, 48, 69, 48, 59, 66, 56, 67, 107, 69, 46, 58, 78, 69, 73, 54, 58, 47, 53, 68, 75, 57, 86, 74, 75, 78, 57, 63, 57, 76, 39, 58, 67, 50, 58, 56, 88, 48, 68, 73, 76, 99, 65, 65, 62, 52, 93, 70, 53, 81, 68, 58, 65, 67, 59, 45, 68, 66, 92, 76, 52, 69, 69, 56, 61, 66, 64, 84, 84, 76, 51, 79, 129, 76, 57, 75, 74, 59, 54, 53, 37, 67, 84, 77, 71, 41, 57, 68, 54, 65, 77, 55, 53, 83, 83, 61, 90, 53, 50, 43, 51, 73, 50, 90, 44, 55, 66, 64, 76, 65, 59, 76, 65, 49, 74, 48, 62, 105, 76, 101, 52, 82, 69, 71, 46, 52, 57, 54, 48, 39, 94, 29, 56, 59, 59, 72, 69, 72, 73, 66, 74, 88, 82, 66, 79, 63, 63, 57, 58, 64, 87, 65, 75, 72, 63, 66, 76, 68, 56, 59, 106, 65, 57, 52, 95, 51, 91, 67, 81, 59, 69, 56, 54, 66, 56, 88, 103, 74, 53, 85, 60, 121, 86, 65, 88, 69, 57, 66, 73, 50, 60, 54, 95, 67, 58, 75, 78, 75, 76, 54, 55, 62, 54, 84, 82, 93, 101, 56, 55, 155, 49, 70, 80, 79, 66, 77, 59, 58, 34, 65, 48, 63, 118, 66, 62, 68, 126, 65, 56, 59, 74, 89, 76, 70, 50, 58, 58, 66, 77, 66, 68, 54, 63, 76, 84, 69, 56, 45, 63, 47, 65, 63, 52, 72, 58, 53, 70, 69, 80, 67, 80, 58, 75, 95, 84, 74, 59, 42, 56, 66, 66, 83, 76, 80, 59, 74, 72, 89, 47, 61, 60, 125, 57, 87, 80, 71, 68, 50, 66, 57, 49, 55, 79, 64, 69, 67, 63, 72, 40, 81, 97, 61, 33, 57, 87, 58, 56, 63, 48, 95, 53, 59, 63, 59, 62, 67, 63, 61, 71, 59, 63, 44, 91, 55, 65, 65, 81, 50, 49, 71, 52, 66, 46, 119, 63, 63, 57, 42, 85, 71, 51, 59, 50, 41, 70, 56, 77, 62, 64, 57, 61, 82, 63, 51, 67, 55, 51, 56, 40, 62, 70, 84, 62, 77, 40, 55, 48, 78, 53, 87, 40, 53, 77, 68, 51, 69, 60, 66, 56, 62, 52, 60, 80, 56, 102, 77, 88, 52, 64, 47, 78, 44, 61, 78, 63, 60, 68, 111, 74, 60, 45, 69, 43, 65, 94, 48, 38, 48, 70, 75, 45, 64, 66, 74, 81, 81, 66, 66, 84, 69, 85, 53, 51, 57, 79, 66, 70, 48, 52, 60, 61, 74, 81, 78, 142, 47, 79, 55, 67, 79, 63, 66, 67, 60, 73, 94, 66, 52, 68, 85, 81, 61, 112, 92, 72, 68, 68, 68, 78, 72, 53, 48, 99, 58, 68, 48, 97, 52, 60, 114, 76, 81, 66, 48, 74, 71, 63, 75, 66, 55, 78, 48, 68, 71, 75, 37, 68, 94, 48, 45, 80, 78, 67, 48, 82, 52, 53, 46, 77, 137, 69, 64, 73, 73, 58, 74, 55, 87, 68, 50, 43, 58, 77, 74, 55, 91, 54, 71, 49, 55, 55, 88, 38, 105, 88, 61, 55, 75, 92, 51, 71, 98, 85, 94, 63, 44, 74, 52, 56, 50, 74, 61, 74, 62, 88, 74, 46, 75, 60, 66, 80, 46, 70, 45, 56, 47, 47, 72, 81, 67, 60, 70, 56, 82, 62, 63, 84, 67, 49, 55, 60, 62, 48, 55, 88, 62, 71, 71, 46, 62, 67, 63, 60, 105, 68, 91, 66, 58, 106, 82, 80, 70, 50, 72, 50, 72, 52, 62, 57, 55, 62, 77, 67, 63, 88, 59, 71, 70, 86, 81, 104, 67, 53, 77, 64, 46, 83, 50, 69, 81, 61, 47, 54, 81, 86, 119, 52, 64, 70, 52, 72, 64, 62, 78, 72, 79, 58, 62, 45, 57, 66, 63, 61, 55, 77, 90, 70, 58, 46, 66, 63, 55, 70, 56, 54, 59, 63, 54, 69, 61, 72, 53, 89, 46, 81, 46, 68, 58, 69, 62, 47, 74, 103, 95, 74, 45, 52, 52, 89, 82, 84, 56, 57, 75, 52, 55, 42, 45, 34, 53, 35, 52, 91, 75, 39, 69, 87, 73, 50, 70, 57, 100, 71, 42, 48, 57, 91, 44, 59, 69, 49, 78, 61, 58, 78, 48, 93, 62, 69, 95, 68, 62, 113, 63, 90, 42, 56, 75, 42, 71, 66, 81, 97, 86, 76, 50, 65, 56, 57, 52, 79, 81, 56, 59, 64, 83, 67, 37, 50, 60, 50, 35, 72, 59, 57, 73, 52, 81, 92, 62, 72, 70, 53, 48, 71, 56, 70, 38, 66, 70, 79, 71, 46, 72, 80, 65, 78, 62, 66, 58, 58, 69, 71, 63, 68, 75, 76, 55, 83, 44, 61, 78, 72, 74, 77, 43, 66, 66, 52, 60, 46, 45, 76, 68, 40, 61, 61, 67, 52, 81, 58, 73, 57, 72, 54, 85, 51, 48, 36, 75, 51, 73, 87, 67, 72, 80, 84, 61, 83, 57, 53, 84, 75, 57, 48, 69, 62, 71, 79, 69, 46, 85, 23, 67, 56, 88, 43, 57, 80, 72, 91, 96, 79, 47, 40, 108, 44, 31, 73, 61, 48, 102, 76, 68, 58, 77, 110, 68, 90, 96, 54, 79, 50, 71, 82, 50, 82, 86, 50, 53, 60, 75, 63, 61, 43, 59, 60, 62, 34, 90, 51, 53, 63, 47, 62, 84, 106, 48, 74, 34, 42, 55, 56, 62, 34, 74, 40, 60, 35, 84, 78, 56, 74, 80, 79, 62, 40, 67, 89, 80, 63, 58, 95, 66, 51, 51, 47, 54, 48, 50, 64, 69, 66, 74, 37, 49, 58, 66, 64, 63, 82, 64, 66, 70, 57, 40, 87, 52, 72, 64, 62, 69, 52, 45, 70, 52, 83, 60, 52, 50, 92, 59, 61, 87, 69, 58, 72, 76, 53, 48, 53, 55, 76, 41, 73, 99, 48, 61, 55, 68, 70, 52, 71, 88, 63, 71, 57, 68, 66, 45, 67, 62, 95, 76, 41, 77, 76, 54, 85, 57, 50, 82, 65, 41, 46, 64, 43, 63, 57, 83, 47, 62, 55, 96, 50, 87, 79, 72, 93, 62, 51, 72, 102, 48, 63, 42, 73, 54, 56, 78, 83, 48, 42, 73, 64, 73, 129, 49, 106, 58, 47, 89, 65, 85, 54, 53, 62, 74, 76, 48, 57, 58, 65, 55, 92, 68, 90, 80, 89, 75, 92, 54, 68, 58, 66, 74, 142, 57, 58, 45, 52, 53, 43, 64, 52, 51, 68, 87, 86, 38, 74, 51, 71, 60, 57, 63, 55, 68, 81, 48, 58, 60, 110, 65, 75, 56, 61, 70, 77, 78, 66, 74, 136, 67, 34, 83, 71, 71, 79, 61, 76, 50, 71, 90, 66, 46, 50, 47, 68, 83, 68, 56, 48, 68, 86, 79, 69, 64, 72, 74, 93, 71, 113, 118, 66, 57, 68, 74, 69, 62, 69, 76, 81, 51, 69, 66, 65, 98, 68, 79, 85, 37, 76, 61, 55, 71, 72, 50, 90, 76, 77, 54, 60, 53, 56, 53, 75, 64, 54, 46, 83, 45, 64, 93, 40, 66, 67, 77, 73, 56, 54, 66, 62, 69, 72, 72, 80, 90, 63, 120, 66, 63, 52, 68, 73, 63, 61, 55, 101, 68, 70, 62, 74, 90, 43, 69, 61, 53, 70, 64, 67, 60, 58, 59, 113, 59, 71, 42, 71, 27, 85, 58, 71, 60, 48, 57, 62, 86, 62, 55, 54, 102, 38, 78, 70, 79, 74, 63, 86, 60, 72, 51, 58, 67, 43, 89, 78, 59, 47, 61, 79, 50, 51, 89, 53, 60, 56, 58, 61, 87, 75, 52, 64, 68, 53, 107, 92, 33, 76, 84, 66, 56, 65, 85, 60, 63, 65, 73, 58, 42, 59, 70, 47, 79, 69, 41, 58, 96, 58, 76, 55, 32, 72, 70, 58, 80, 58, 61, 79, 57, 69, 44, 62, 72, 66, 42, 71, 63, 60, 77, 67, 54, 68, 52, 87, 70, 74, 43, 60, 99, 53, 51, 64, 49, 50, 61, 69, 56, 73, 88, 56, 74, 54, 59, 77, 98, 57, 38, 46, 54, 51, 58, 61, 56, 58, 51, 78, 46, 53, 61, 79, 57, 81, 54, 67, 67, 91, 63, 70, 63, 84, 67, 63, 76, 67, 72, 104, 71, 45, 72, 71, 54, 64, 59, 82, 79, 47, 66, 67, 42, 58, 61, 45, 78, 63, 44, 48, 68, 58, 56, 69, 76, 58, 57, 97, 42, 52, 86, 45, 50, 67, 69, 69, 63, 59, 59, 80, 77, 57, 50, 65, 63, 70, 53, 76, 48, 61, 66, 62, 49, 60, 79, 84, 57, 77, 71, 90, 51, 64, 87, 38, 50, 63, 52, 59, 52, 77, 149, 64, 60, 51, 83, 93, 62, 59, 91, 45, 62, 61, 41, 63, 86, 94, 71, 77, 31, 64, 65, 93, 55, 47, 74, 92, 53, 55, 73, 42, 57, 62, 64, 76, 56, 63, 58, 75, 72, 84, 75, 66, 81, 57, 75, 76, 102, 52, 67, 65, 77, 45, 55, 104, 54, 59, 69, 106, 46, 58, 105, 75, 58, 72, 65, 73, 77, 73, 58, 58, 61, 46, 91, 74, 74, 77, 70, 65, 97, 57, 100, 60, 61, 68, 93, 63, 47, 45, 48, 61, 89, 50, 64, 51, 56, 103, 77, 67, 50, 55, 73, 64, 93, 97, 91, 42, 72, 79, 69, 61, 70, 94, 55, 61, 63, 52, 68, 60, 49, 63, 63, 49, 62, 74, 54, 70, 105, 56, 79, 81, 76, 73, 62, 119, 59, 57, 42, 60, 60, 63, 62, 47, 67, 68, 55, 64, 102, 65, 69, 68, 78, 80, 46, 47, 55, 68, 55, 48, 73, 59, 64, 92, 69, 52, 61, 67, 89, 65, 79, 76, 74, 71, 93, 38, 60, 59, 73, 80, 69, 59, 72, 64, 65, 79, 101, 38, 57, 73, 83, 95, 75, 71, 71, 46, 75, 59, 60, 55, 68, 64, 80, 60, 60, 47, 76, 57, 88, 62, 60, 60, 56, 72, 65, 61, 62, 75, 51, 50, 80, 57, 58, 90, 47, 82, 68, 99, 46, 54, 52, 78, 60, 86, 62, 67, 57, 61, 60, 56, 85, 54, 68, 56, 43, 70, 99, 47, 62, 48, 63, 98, 59, 67, 56, 58, 72, 76, 58, 66, 77, 50, 51, 68, 85, 44, 65, 62, 56, 80, 61, 53, 80, 62, 36, 55, 66, 54, 84, 43, 72, 65, 69, 76, 86, 85, 81, 49, 61, 87, 55, 108, 51, 47, 79, 48, 84, 62, 84, 46, 64, 68, 68, 58, 43, 60, 51, 63, 80, 75, 107, 69, 61, 61, 64, 53, 64, 105, 50, 94, 67, 46, 57, 53, 56, 62, 61, 58, 53, 79, 70, 71, 58, 93, 61, 50, 78, 76, 55, 55, 62, 70, 58, 64, 76, 76, 97, 62, 44, 67, 95, 73, 59, 51, 52, 71, 45, 63, 38, 64, 61, 64, 66, 63, 62, 65, 64, 66, 71, 66, 71, 85, 54, 66, 82, 80, 86, 83, 67, 64, 46, 44, 75, 60, 71, 67, 89, 66, 67, 103, 47, 89, 54, 37, 60, 91, 54, 54, 65, 66, 66, 75, 58, 61, 61, 50, 60, 54, 73, 80, 59, 65, 96, 59, 58, 81, 51, 85, 54, 57, 39, 82, 75, 76, 58, 58, 55, 62, 48, 90, 48, 48, 61, 66, 62, 61, 39, 71, 70, 64, 45, 55, 65, 88, 67, 79, 72, 79, 58, 58, 64, 61, 101, 59, 55, 51, 86, 40, 57, 76, 43, 61, 68, 59, 59, 51, 94, 81, 71, 67, 61, 70, 59, 65, 59, 57, 64, 56, 44, 62, 60, 83, 49, 55, 57, 34, 44, 49, 73, 53, 80, 60, 76, 78, 64, 89, 51, 70, 39, 65, 56, 70, 47, 50, 71, 65, 57, 75, 63, 42, 110, 69, 58, 59, 67, 41, 83, 61, 64, 104, 92, 53, 85, 62, 56, 71, 35, 48, 55, 76, 60, 63, 76, 96, 70, 57, 71, 86, 79, 70, 64, 66, 52, 88, 54, 63, 61, 55, 60, 85, 63, 54, 51, 72, 59, 91, 71, 69, 48, 52, 55, 86, 87, 60, 87, 39, 72, 82, 65, 121, 54, 75, 62, 122, 104, 68, 64, 65, 94, 82, 62, 55, 52, 67, 55, 59, 62, 70, 65, 64, 77, 62, 43, 89, 44, 74, 80, 57, 63, 48, 48, 60, 69, 57, 74, 57, 64, 70, 50, 83, 32, 80, 72, 67, 68, 61, 84, 52, 73, 68, 90, 73, 71, 57, 58, 48, 52, 69, 57, 56, 62, 82, 69, 60, 75, 77, 77, 82, 67, 74, 73, 57, 56, 53, 51, 70, 85, 79, 58, 76, 72, 70, 76, 56, 76, 68, 72, 65, 72, 81, 62, 55, 47, 87, 59, 75, 95, 51, 69, 83, 81, 49, 81, 55, 80, 58, 90, 54, 100, 79, 60, 74, 39, 36, 69, 78, 54, 88, 51, 62, 101, 54, 42, 80, 72, 67, 67, 41, 51, 65, 70, 65, 67, 75, 50, 45, 63, 67, 91, 71, 61, 60, 61, 60, 88, 60, 64, 62, 54, 98, 73, 57, 77, 81, 70, 38, 51, 69, 76, 48, 56, 91, 58, 42, 59, 49, 76, 60, 62, 101, 81, 72, 73, 70, 65, 67, 38, 61, 85, 76, 49, 70, 96, 48, 55, 48, 78, 57, 60, 50, 84, 86, 44, 57, 57, 52, 67, 59, 68, 63, 44, 104, 78, 78, 58, 54, 50, 56, 53, 72, 56, 65, 61, 59, 58, 68, 72, 48, 71, 67, 81, 66, 64, 41, 61, 91, 63, 51, 58, 59, 91, 64, 56, 66, 58, 56, 50, 61, 53, 81, 72, 75, 61, 73, 110, 88, 68, 58, 87, 59, 66, 79, 57, 61, 54, 68, 69, 72, 65, 73, 47, 48, 45, 64, 59, 64, 62, 59, 72, 69, 76, 65, 58, 65, 34, 64, 83, 63, 55, 63, 70, 82, 54, 68, 60, 55, 54, 67, 60, 81, 71, 64, 79, 73, 44, 75, 51, 66, 77, 57, 71, 53, 72, 66, 103, 70, 33, 46, 79, 82, 96, 125, 58, 53, 68, 62, 85, 51, 66, 73, 92, 55, 67, 45, 50, 58, 67, 59, 44, 73, 53, 70, 82, 46, 60, 74, 54, 68, 63, 56, 44, 69, 78, 89, 67, 67, 58, 69, 62, 70, 76, 52, 87, 83, 82, 61, 69, 68, 76, 75, 59, 47, 71, 59, 50, 60, 61, 75, 125, 101, 59, 53, 67, 86, 66, 71, 67, 75, 64, 64, 60, 53, 60, 56, 60, 58, 96, 74, 58, 69, 65, 60, 86, 68, 57, 76, 70, 94, 86, 63, 88, 59, 58, 54, 83, 50, 39, 67, 52, 75, 63, 69, 43, 62, 60, 49, 78, 72, 72, 63, 64, 81, 83, 89, 48, 57, 54, 70, 52, 78, 66, 66, 66, 35, 75, 37, 73, 79, 64, 78, 41, 75, 49, 63, 63, 57, 61, 54, 51, 58, 64, 63, 92, 61, 69, 59, 92, 49, 65, 52, 50, 75, 62, 82, 55, 58, 82, 70, 73, 36, 68, 89, 59, 52, 118, 59, 72, 46, 70, 65, 60, 85, 62, 69, 84, 70, 84, 47, 85, 75, 61, 74, 44, 80, 69, 74, 67, 96, 58, 64, 61, 132, 58, 52, 57, 78, 57, 53, 89, 137, 70, 98, 64, 78, 60, 68, 60, 68, 50, 54, 59, 54, 65, 39, 82, 59, 79, 36, 64, 72, 84, 79, 67, 67, 69, 57, 52, 75, 50, 68, 74, 60, 48, 67, 42, 58, 51, 70, 58, 75, 60, 52, 32, 57, 70, 62, 50, 84, 63, 78, 69, 86, 66, 65, 56, 94, 59, 98, 49, 77, 74, 72, 36, 52, 82, 74, 46, 53, 82, 68, 72, 45, 60, 64, 81, 90, 39, 57, 75, 82, 62, 69, 68, 55, 65, 56, 67, 62, 68, 75, 69, 83, 71, 64, 68, 64, 61, 62, 110, 43, 76, 59, 48, 65, 67, 73, 63, 76, 57, 63, 76, 52, 63, 103, 56, 45, 88, 65, 77, 78, 63, 75, 59, 44, 44, 54, 84, 66, 91, 60, 55, 86, 69, 73, 57, 41, 52, 53, 43, 87, 108, 71, 59, 57, 55, 53, 80, 79, 82, 75, 61, 64, 73, 74, 53, 73, 70, 72, 53, 93, 74, 60, 58, 81, 59, 70, 92, 68, 53, 68, 94, 69, 37, 80, 53, 66, 68, 56, 96, 60, 70, 55, 48, 60, 72, 49, 46, 72, 45, 75, 46, 61, 66, 61, 80, 80, 67, 52, 65, 63, 59, 60, 61, 62, 76, 52, 78, 80, 81, 52, 71, 63, 84, 61, 38, 78, 49, 75, 72, 70, 73, 74, 67, 66, 50, 53, 95, 57, 45, 64, 62, 62, 53, 42, 63, 79, 84, 57, 60, 61, 66, 69, 63, 71, 70, 98, 79, 39, 66, 55, 32, 47, 63, 62, 42, 62, 76, 40, 61, 51, 60, 47, 55, 87, 74, 68, 66, 45, 60, 48, 56, 62, 80, 68, 59, 58, 61, 51, 72, 41, 60, 54, 57, 72, 66, 50, 58, 76, 83, 79, 49, 76, 77, 65, 119, 70, 78, 78, 55, 56, 76, 79, 71, 56, 85, 60, 70, 60, 81, 50, 50, 61, 50, 70, 59, 68, 66, 64, 62, 87, 69, 64, 64, 71, 67, 58, 63, 64, 62, 65, 66, 96, 58, 94, 84, 53, 58, 48, 75, 61, 58, 57, 62, 53, 66, 61, 72, 43, 59, 50, 74, 71, 52, 74, 88, 56, 67, 71, 74, 63, 85, 72, 64, 61, 59, 54, 75, 83, 69, 58, 58, 63, 50, 55, 61, 141, 92, 60, 63, 69, 70, 53, 70, 59, 57, 112, 73, 51, 79, 74, 47, 66, 72, 69, 64, 54, 66, 100, 58, 58, 53, 90, 73, 64, 36, 85, 88, 69, 55, 62, 117, 56, 41, 62, 73, 49, 61, 55, 66, 51, 87, 67, 53, 73, 43, 75, 65, 62, 58, 32, 70, 68, 44, 63, 48, 62, 65, 64, 72, 62, 55, 87, 83, 47, 36, 72, 81, 79, 50, 36, 73, 51, 63, 76, 81, 58, 54, 88, 43, 114, 64, 56, 72, 49, 82, 62, 82, 49, 56, 62, 66, 61, 63, 94, 59, 54, 68, 93, 120, 69, 51, 67, 63, 50, 75, 53, 52, 62, 73, 47, 77, 50, 79, 60, 67, 43, 73, 57, 57, 77, 67, 36, 64, 64, 58, 62, 107, 67, 85, 62, 71, 75, 55, 60, 81, 69, 84, 84, 54, 72, 40, 48, 79, 80, 82, 91, 64, 110, 76, 63, 37, 144, 64, 87, 65, 49, 49, 69, 76, 59, 74, 137, 53, 67, 63, 57, 81, 69, 41, 78, 74, 57, 75, 75, 97, 57, 69, 66, 65, 74, 80, 43, 60, 74, 79, 80, 73, 57, 61, 45, 69, 59, 77, 43, 49, 97, 61, 71, 55, 54, 82, 58, 59, 97, 52, 61, 112, 74, 92, 54, 95, 55, 76, 71, 44, 65, 70, 63, 66, 65, 67, 45, 47, 55, 66, 50, 89, 70, 70, 103, 110, 54, 67, 71, 75, 61, 52, 65, 66, 74, 51, 82, 72, 63, 74, 78, 58, 79, 54, 68, 85, 67, 63, 61, 69, 46, 70, 57, 57, 88, 65, 76, 57, 63, 61, 68, 70, 120, 71, 64, 67, 66, 39, 69, 58, 56, 75, 42, 62, 53, 65, 85, 55, 54, 90, 65, 50, 70, 66, 88, 55, 64, 73, 55, 70, 86, 50, 65, 71, 59, 59, 56, 58, 66, 56, 81, 49, 52, 78, 48, 61, 77, 75, 58, 73, 77, 75, 55, 73, 54, 46, 51, 64, 88, 86, 67, 62, 68, 62, 66, 93, 86, 64, 69, 67, 47, 70, 72, 78, 64, 54, 48, 66, 77, 61, 62, 70, 89, 54, 56, 107, 57, 71, 49, 55, 54, 84, 55, 64, 84, 101, 67, 70, 46, 100, 51, 66, 59, 68, 92, 76, 49, 54, 68, 64, 58, 61, 61, 60, 86, 68, 58, 38, 64, 50, 60, 40, 105, 62, 63, 43, 47, 41, 63, 58, 50, 67, 64, 51, 70, 63, 52, 81, 82, 88, 82, 67, 64, 88, 70, 52, 84, 59, 140, 49, 78, 65, 83, 68, 57, 62, 25, 89, 63, 69, 48, 49, 79, 81, 70, 69, 74, 42, 64, 52, 56, 72, 50, 54, 80, 64, 60, 55, 44, 73, 67, 74, 60, 60, 93, 78, 74, 61, 76, 61, 68, 76, 70, 56, 81, 53, 65, 83, 63, 82, 62, 52, 70, 61, 52, 52, 52, 92, 62, 68, 87, 69, 72, 60, 81, 48, 71, 89, 36, 81, 67, 70, 68, 64, 72, 56, 68, 66, 68, 72, 74, 84, 69, 68, 57, 42, 52, 64, 64, 58, 78, 55, 54, 60, 75, 90, 50, 70, 76, 78, 49, 65, 48, 71, 67, 68, 74, 75, 61, 44, 63, 57, 64, 64, 78, 81, 52, 128, 59, 65, 67, 88, 57, 59, 63, 67, 65, 44, 72, 66, 62, 60, 49, 91, 61, 62, 88, 86, 82, 76, 54, 102, 67, 49, 53, 72, 78, 76, 80, 63, 65, 43, 65, 54, 49, 62, 105, 62, 56, 79, 65, 62, 76, 91, 49, 55, 55, 67, 54, 58, 64, 79, 54, 59, 60, 52, 66, 46, 86, 47, 57, 55, 79, 67, 62, 50, 75, 67, 65, 67, 80, 84, 75, 67, 48, 88, 73, 74, 73, 56, 71, 69, 71, 72, 85, 55, 84, 67, 50, 77, 139, 65, 70, 52, 63, 82, 88, 83, 70, 59, 69, 57, 83, 77, 60, 64, 63, 80, 88, 53, 49, 67, 84, 53, 52, 52, 94, 83, 60, 54, 67, 49, 34, 54, 83, 97, 56, 59, 83, 51, 67, 130, 57, 65, 58, 59, 66, 66, 62, 47, 51, 64, 64, 57, 59, 71, 68, 66, 67, 59, 66, 55, 54, 71, 60, 68, 64, 71, 55, 56, 51, 53, 60, 49, 63, 36, 52, 49, 77, 70, 57, 63, 64, 64, 38, 75, 73, 67, 54, 67, 63, 64, 70, 63, 70, 56, 71, 62, 68, 74, 79, 69, 65, 69, 71, 71, 61, 56, 59, 80, 59, 68, 60, 63, 64, 68, 48, 87, 56, 79, 50, 75, 68, 67, 80, 47, 59, 61, 83, 55, 69, 57, 63, 66, 68, 67, 51, 55, 60, 67, 56, 54, 55, 56, 102, 50, 51, 71, 87, 63, 52, 65, 95, 70, 65, 51, 76, 82, 89, 79, 67, 69, 52, 53, 67, 74, 53, 54, 83, 66, 78, 59, 78, 47, 58, 48, 63, 64, 51, 80, 61, 59, 69, 66, 92, 59, 59, 40, 75, 59, 63, 67, 56, 55, 70, 69, 87, 77, 67, 52, 53, 51, 61, 62, 74, 66, 72, 63, 46, 57, 66, 81, 63, 66, 58, 42, 83, 69, 78, 83, 39, 71, 66, 63, 75, 127, 77, 61, 73, 55, 57, 62, 71, 63, 87, 62, 85, 89, 68, 76, 47, 63, 60, 71, 68, 75, 65, 40, 106, 54, 71, 72, 69, 54, 73, 109, 47, 60, 60, 45, 57, 71, 54, 59, 50, 79, 98, 68, 102, 90, 49, 54, 54, 47, 75, 60, 62, 63, 63, 84, 69, 63, 52, 68, 77, 59, 78, 86, 52, 57, 58, 113, 59, 55, 64, 73, 45, 50, 68, 69, 54, 88, 63, 72, 66, 51, 69, 63, 60, 64, 81, 60, 56, 62, 86, 64, 69, 57, 76, 84, 63, 70, 65, 83, 85, 63, 59, 62, 62, 45, 90, 70, 66, 55, 59, 66, 68, 55, 67, 60, 58, 65, 66, 68, 73, 51, 65, 57, 62, 96, 62, 49, 71, 48, 100, 64, 87, 64, 64, 61, 63, 75, 49, 73, 65, 55, 65, 57, 59, 54, 76, 67, 77, 62, 63, 66, 58, 75, 79, 64, 57, 94, 74, 48, 65, 44, 80, 67, 49, 79, 80, 61, 75, 59, 85, 71, 88, 50, 65, 120, 60, 60, 48, 93, 71, 61, 58, 74, 50, 82, 60, 86, 67, 63, 57, 52, 62, 61, 52, 56, 74, 71, 64, 58, 62, 71, 58, 93, 47, 65, 75, 55, 64, 72, 71, 54, 56, 80, 46, 42, 70, 59, 60, 52, 78, 67, 52, 88, 65, 96, 57, 74, 63, 48, 68, 53, 47, 65, 53, 72, 60, 94, 69, 61, 48, 66, 59, 63, 72, 101, 75, 64, 68, 61, 60, 58, 67, 59, 71, 55, 74, 73, 66, 72, 63, 63, 60, 57, 58, 58, 68, 73, 49, 82, 42, 87, 53, 65, 83, 51, 67, 68, 113, 66, 57, 49, 61, 53, 80, 68, 88, 62, 46, 118, 59, 77, 96, 62, 64, 74, 57, 66, 59, 67, 81, 58, 56, 55, 77, 61, 72, 52, 71, 70, 67, 70, 57, 80, 81, 59, 90, 63, 74, 69, 58, 72, 44, 64, 49, 66, 57, 83, 41, 63, 56, 57, 79, 106, 75, 91, 64, 43, 56, 60, 40, 64, 86, 63, 58, 86, 68, 66, 74, 83, 56, 83, 87, 108, 57, 66, 69, 59, 54, 72, 54, 63, 71, 67, 69, 60, 118, 50, 54, 37, 58, 47, 86, 56, 44, 40, 43, 58, 58, 66, 54, 69, 54, 109, 127, 55, 43, 69, 69, 58, 78, 86, 47, 91, 58, 71, 64, 68, 59, 60, 56, 49, 54, 51, 60, 93, 66, 64, 70, 66, 68, 56, 57, 68, 74, 63, 53, 67, 95, 80, 85, 45, 52, 76, 69, 65, 62, 70, 95, 51, 69, 58, 64, 95, 73, 73, 67, 62, 83, 41, 81, 65, 62, 75, 63, 61, 60, 66, 57, 44, 65, 55, 64, 58, 57, 51, 67, 64, 77, 68, 51, 51, 57, 52, 57, 63, 70, 43, 59, 52, 62, 84, 73, 78, 45, 56, 57, 73, 89, 64, 66, 60, 66, 63, 65, 70, 68, 55, 65, 62, 55, 66, 53, 56, 64, 54, 60, 52, 60, 74, 83, 61, 82, 58, 102, 57, 66, 43, 73, 73, 84, 56, 76, 57, 58, 71, 60, 49, 70, 56, 61, 72, 49, 71, 66, 64, 76, 50, 72, 62, 92, 59, 62, 63, 58, 51, 52, 86, 66, 46, 166, 66, 68, 72, 54, 47, 66, 75, 43, 86, 67, 57, 68, 64, 44, 57, 65, 116, 70, 57, 77, 95, 70, 56, 55, 71, 181, 73, 49, 45, 54, 61, 69, 53, 49, 56, 67, 60, 56, 64, 50, 69, 89, 57, 59, 61, 70, 55, 67, 63, 62, 62, 68, 57, 52, 95, 68, 67, 79, 70, 70, 45, 54, 60, 60, 59, 55, 75, 71, 55, 74, 106, 66, 67, 48, 58, 48, 91, 62, 41, 79, 66, 80, 53, 61, 52, 80, 66, 57, 57, 45, 84, 61, 91, 97, 66, 54, 68, 49, 82, 95, 69, 59, 53, 79, 78, 77, 53, 54, 59, 65, 70, 70, 48, 73, 57, 55, 68, 66, 68, 66, 70, 60, 72, 75, 42, 74, 63, 55, 99, 74, 127, 107, 64, 51, 63, 55, 57, 62, 100, 69, 56, 56, 62, 59, 74, 87, 80, 60, 69, 68, 93, 46, 61, 77, 80, 68, 47, 75, 57, 64, 63, 102, 70, 71, 59, 55, 59, 83, 79, 51, 60, 67, 48, 67, 47, 78, 54, 43, 61, 58, 74, 65, 72, 52, 74, 73, 62, 62, 53, 90, 59, 104, 74, 55, 84, 56, 67, 52, 100, 58, 82, 51, 57, 59, 52, 71, 55, 69, 85, 62, 64, 54, 45, 64, 55, 85, 74, 56, 77, 78, 60, 80, 53, 77, 60, 75, 74, 128, 66, 56, 86, 63, 68, 95, 59, 78, 60, 84, 50, 74, 85, 84, 74, 53, 37, 65, 62, 68, 73, 71, 69, 100, 64, 94, 60, 94, 54, 58, 64, 43, 59, 51, 62, 71, 79, 53, 55, 70, 67, 82, 66, 66, 104, 52, 56, 66, 71, 68, 71, 65, 64, 59, 50, 72, 59, 73, 71, 57, 70, 69, 71, 73, 63, 55, 61, 52, 62, 77, 69, 51, 46, 50, 59, 66, 48, 61, 66, 76, 64, 72, 98, 61, 58, 70, 44, 59, 58, 65, 67, 58, 65, 74, 67, 148, 70, 52, 68, 51, 57, 71, 70, 76, 50, 51, 60, 84, 78, 51, 65, 76, 55, 75, 112, 62, 56, 64, 79, 71, 70, 60, 45, 57, 75, 83, 64, 49, 71, 66, 60, 92, 63, 57, 68, 55, 69, 69, 66, 84, 55, 71, 64, 65, 55, 62, 64, 63, 75, 83, 68, 64, 60, 92, 76, 70, 65, 72, 57, 77, 62, 72, 67, 62, 65, 84, 63, 106, 64, 55, 58, 56, 70, 62, 58, 84, 45, 68, 53, 66, 65, 58, 57, 68, 60, 79, 71, 86, 53, 57, 54, 61, 92, 68, 37, 59, 50, 60, 66, 68, 63, 30, 72, 71, 65, 60, 76, 61, 55, 51, 40, 47, 72, 71, 47, 71, 64, 60, 61, 56, 68, 64, 51, 72, 65, 50, 69, 72, 65, 63, 58, 67, 90, 70, 50, 60, 58, 67, 61, 68, 67, 56, 86, 72, 62, 61, 72, 57, 75, 69, 99, 62, 75, 72, 50, 71, 57, 64, 75, 69, 78, 81, 82, 62, 63, 113, 64, 49, 100, 43, 61, 70, 54, 74, 58, 50, 63, 58, 60, 54, 79, 66, 63, 77, 65, 85, 64, 37, 59, 72, 61, 59, 73, 83, 81, 75, 77, 71, 70, 71, 44, 48, 54, 65, 40, 85, 71, 54, 59, 65, 49, 70, 76, 83, 64, 87, 57, 57, 80, 55, 98, 67, 53, 82, 52, 51, 81, 68, 134, 72, 39, 76, 72, 78, 56, 88, 73, 62, 46, 58, 41, 98, 53, 52, 70, 47, 65, 70, 91, 73, 79, 57, 56, 50, 77, 71, 53, 64, 81, 75, 78, 75, 71, 69, 75, 63, 62, 85, 56, 64, 52, 65, 71, 64, 60, 60, 66, 67, 52, 70, 74, 77, 62, 65, 62, 70, 73, 75, 64, 67, 80, 68, 58, 81, 61, 90, 85, 66, 61, 84, 53, 70, 69, 66, 68, 66, 54, 80, 64, 79, 59, 49, 62, 53, 66, 60, 79, 71, 57, 62, 58, 53, 71, 62, 78, 75, 48, 76, 74, 60, 55, 75, 90, 53, 91, 73, 75, 70, 60, 65, 71, 67, 79, 88, 68, 63, 60, 61, 62, 61, 62, 55, 57, 73, 52, 71, 63, 80, 68, 62, 74, 86, 73, 59, 77, 40, 47, 57, 68, 61, 42, 77, 74, 51, 107, 47, 71, 57, 76, 88, 80, 61, 62, 64, 55, 81, 62, 73, 70, 63, 84, 86, 57, 85, 60, 77, 77, 89, 64, 74, 79, 74, 72, 71, 56, 55, 53, 65, 74, 71, 69, 73, 75, 54, 73, 50, 73, 64, 48, 72, 52, 59, 75, 63, 69, 75, 76, 52, 57, 89, 61, 51, 62, 70, 63, 77, 75, 72, 57, 65, 85, 70, 53, 69, 68, 47, 77, 62, 52, 82, 72, 56, 94, 90, 65, 58, 62, 72, 63, 51, 58, 60, 59, 97, 73, 57, 80, 76, 100, 79, 84, 70, 55, 69, 52, 63, 65, 82, 105, 51, 60, 85, 67, 69, 72, 76, 93, 68, 54, 68, 58, 76, 71, 67, 57, 63, 76, 75, 83, 52, 59, 62, 58, 56, 69, 66, 79, 54, 69, 55, 57, 75, 111, 82, 81, 63, 67, 57, 50, 64, 70, 39, 59, 88, 63, 64, 51, 70, 74, 80, 48, 45, 57, 108, 74, 50, 54, 60, 72, 63, 54, 37, 63, 79, 35, 52, 63, 69, 56, 39, 73, 55, 66, 54, 89, 65, 63, 40, 79, 60, 67, 54, 40, 74, 65, 69, 60, 68, 62, 76, 80, 60, 47, 54, 77, 76, 52, 62, 58, 70, 59, 75, 49, 44, 68, 62, 62, 38, 59, 73, 108, 77, 82, 82, 64, 78, 92, 74, 44, 54, 74, 54, 54, 80, 57, 55, 55, 71, 48, 53, 130, 52, 42, 56, 66, 61, 58, 73, 46, 83, 61, 37, 65, 84, 66, 81, 41, 70, 66, 56, 69, 55, 47, 69, 72, 60, 58, 56, 54, 85, 93, 65, 81, 54, 56, 66, 53, 71, 60, 61, 70, 40, 54, 68, 119, 63, 88, 47, 60, 61, 72, 81, 64, 62, 39, 65, 67, 65, 47, 64, 82, 68, 77, 84, 45, 83, 53, 51, 62, 53, 60, 39, 63, 65, 53, 56, 48, 49, 36, 55, 46, 59, 73, 44, 60, 58, 96, 76, 63, 69, 52, 72, 62, 78, 79, 49, 84, 35, 101, 53, 39, 91, 88, 24, 50, 74, 75, 65, 53, 59, 63, 38, 51, 47, 49, 75, 68, 79, 81, 76, 66, 40, 50, 73, 74, 47, 50, 64, 64, 67, 70, 68, 72, 48, 58, 56, 71, 53, 60, 134, 78, 48, 61, 65, 79, 54, 56, 72, 51, 72, 85, 68, 69, 60, 78, 55, 70, 97, 81, 70, 52, 60, 49, 123, 52, 58, 89, 58, 52, 68, 78, 65, 57, 85, 67, 93, 59, 87, 78, 59, 97, 52, 58, 40, 68, 70, 83, 45, 53, 69, 58, 86, 61, 73, 55, 54, 46, 76, 62, 48, 69, 73, 60, 75, 71, 75, 61, 72, 72, 35, 68, 66, 68, 77, 83, 87, 75, 86, 53, 105, 63, 51, 58, 63, 61, 57, 66, 51, 63, 93, 75, 60, 50, 72, 145, 58, 46, 58, 66, 71, 103, 48, 52, 59, 49, 95, 62, 40, 59, 66, 55, 68, 62, 45, 55, 85, 51, 78, 74, 33, 55, 78, 74, 76, 80, 66, 63, 70, 56, 51, 92, 72, 59, 74, 65, 84, 74, 79, 39, 84, 111, 101, 59, 76, 64, 62, 63, 83, 66, 50, 60, 56, 67, 71, 46, 73, 90, 122, 62, 73, 61, 71, 55, 92, 59, 53, 50, 60, 68, 55, 67, 46, 65, 57, 68, 97, 74, 74, 64, 90, 69, 65, 71, 70, 72, 71, 55, 60, 68, 50, 60, 51, 66, 67, 57, 87, 56, 86, 56, 52, 58, 70, 55, 62, 50, 65, 57, 73, 43, 62, 56, 81, 77, 64, 91, 68, 52, 70, 56, 45, 43, 68, 61, 65, 80, 46, 59, 80, 61, 54, 57, 51, 60, 66, 75, 72, 64, 49, 71, 58, 73, 56, 94, 77, 77, 73, 60, 41, 57, 53, 86, 53, 50, 80, 38, 55, 71, 89, 123, 78, 70, 52, 53, 66, 50, 46, 69, 45, 80, 99, 63, 49, 68, 53, 74, 73, 65, 89, 71, 74, 79, 74, 63, 54, 71, 67, 68, 71, 68, 70, 66, 44, 47, 67, 67, 59, 60, 76, 62, 52, 42, 74, 53, 80, 45, 58, 102, 61, 64, 52, 55, 96, 50, 72, 55, 52, 70, 55, 56, 48, 99, 57, 56, 50, 59, 68, 55, 67, 38, 77, 45, 73, 53, 83, 69, 54, 69, 54, 69, 66, 53, 45, 63, 80, 65, 50, 63, 50, 43, 68, 56, 61, 90, 43, 53, 58, 50, 85, 88, 61, 85, 75, 60, 78, 64, 43, 61, 59, 76, 50, 56, 65, 56, 81, 68, 66, 102, 52, 59, 51, 66, 70, 79, 51, 85, 83, 68, 57, 70, 52, 82, 55, 75, 90, 73, 55, 61, 59, 79, 64, 60, 68, 84, 76, 75, 63, 56, 60, 54, 56, 69, 64, 80, 62, 45, 80, 60, 73, 49, 65, 54, 60, 67, 71, 60, 95, 60, 60, 55, 63, 60, 90, 68, 66, 67, 65, 68, 40, 72, 69, 68, 74, 70, 56, 84, 69, 47, 82, 54, 84, 65, 59, 70, 50, 76, 78, 56, 71, 65, 66, 70, 56, 69, 68, 48, 61, 60, 66, 41, 54, 67, 79, 67, 67, 81, 60, 64, 78, 48, 62, 59, 51, 53, 36, 56, 93, 55, 93, 70, 58, 59, 70, 48, 52, 78, 78, 66, 66, 76, 50, 85, 57, 56, 94, 63, 65, 58, 72, 78, 78, 45, 63, 51, 86, 79, 94, 72, 61, 69, 63, 51, 60, 59, 69, 69, 73, 68, 55, 41, 71, 59, 56, 62, 66, 65, 55, 57, 96, 65, 76, 75, 55, 85, 101, 75, 70, 72, 47, 55, 59, 71, 92, 88, 74, 50, 95, 84, 62, 92, 64, 76, 68, 53, 76, 78, 48, 63, 45, 82, 51, 54, 63, 78, 77, 45, 40, 63, 62, 84, 58, 78, 72, 57, 72, 58, 46, 62, 88, 71, 60, 53, 89, 79, 55, 57, 46, 107, 52, 52, 94, 82, 60, 73, 55, 64, 91, 50, 64, 77, 50, 58, 77, 65, 73, 106, 52, 53, 69, 60, 60, 95, 58, 65, 58, 60, 58, 55, 72, 60, 43, 79, 81, 68, 69, 108, 83, 50, 66, 63, 53, 77, 50, 58, 74, 86, 77, 71, 75, 77, 91, 63, 70, 82, 53, 79, 64, 51, 71, 79, 82, 50, 87, 57, 77, 63, 62, 85, 88, 59, 95, 82, 45, 65, 48, 67, 106, 55, 49, 82, 57, 47, 103, 54, 119, 45, 69, 63, 68, 50, 71, 44, 63, 73, 96, 64, 79, 41, 86, 77, 86, 61, 60, 71, 92, 55, 43, 57, 56, 45, 64, 69, 56, 57, 56, 70, 63, 62, 93, 56, 72, 57, 57, 50, 71, 71, 86, 115, 50, 85, 59, 87, 56, 61, 62, 50, 64, 54, 58, 57, 66, 76, 77, 52, 60, 54, 61, 76, 68, 54, 48, 79, 103, 42, 72, 58, 73, 63, 68, 64, 64, 46, 51, 61, 82, 73, 59, 60, 83, 89, 61, 84, 57, 74, 78, 85, 60, 62, 66, 62, 66, 45, 75, 57, 60, 39, 73, 95, 99, 68, 56, 54, 54, 66, 90, 68, 66, 75, 48, 86, 52, 83, 123, 61, 82, 55, 67, 50, 52, 64, 70, 73, 52, 68, 84, 55, 59, 45, 66, 82, 60, 89, 62, 74, 36, 52, 76, 72, 74, 82, 60, 48, 55, 85, 73, 73, 74, 62, 73, 62, 70, 65, 46, 73, 65, 56, 52, 88, 70, 72, 79, 66, 86, 68, 75, 65, 50, 77, 58, 72, 105, 62, 56, 71, 73, 54, 94, 63, 59, 55, 66, 62, 72, 94, 65, 53, 80, 65, 79, 49, 57, 30, 60, 62, 99, 37, 57, 75, 45, 74, 44, 69, 90, 50, 63, 68, 68, 55, 105, 57, 131, 65, 60, 53, 60, 82, 53, 73, 78, 52, 89, 94, 60, 49, 51, 40, 84, 59, 83, 40, 55, 74, 59, 70, 66, 87, 42, 60, 64, 83, 53, 70, 58, 53, 79, 49, 61, 44, 51, 43, 61, 97, 53, 60, 61, 74, 65, 56, 95, 94, 54, 69, 43, 63, 71, 56, 94, 68, 80, 75, 41, 62, 67, 60, 64, 74, 63, 55, 90, 55, 76, 66, 71, 117, 60, 39, 71, 50, 57, 53, 91, 41, 113, 57, 67, 47, 61, 51, 96, 49, 57, 59, 71, 46, 61, 56, 58, 89, 82, 111, 58, 63, 78, 48, 93, 61, 64, 69, 49, 53, 67, 46, 75, 56, 63, 55, 70, 75, 48, 82, 75, 67, 66, 37, 75, 81, 69, 64, 83, 83, 69, 57, 94, 52, 72, 80, 37, 51, 69, 70, 50, 118, 57, 88, 63, 72, 64, 60, 73, 75, 72, 55, 54, 62, 61, 60, 61, 77, 39, 57, 75, 59, 89, 63, 72, 59, 45, 57, 60, 69, 64, 100, 83, 74, 58, 51, 72, 74, 53, 51, 68, 53, 61, 61, 64, 67, 89, 60, 84, 76, 65, 75, 60, 68, 128, 58, 56, 106, 47, 55, 54, 97, 56, 56, 82, 53, 58, 73, 96, 57, 50, 89, 61, 74, 60, 103, 68, 118, 71, 57, 55, 59, 84, 80, 70, 58, 58, 64, 61, 66, 71, 70, 92, 73, 70, 58, 75, 76, 55, 74, 82, 59, 55, 71, 70, 56, 65, 90, 83, 62, 54, 77, 51, 58, 67, 62, 57, 54, 79, 66, 60, 128, 67, 53, 90, 84, 114, 48, 65, 46, 54, 78, 95, 66, 63, 81, 52, 70, 68, 67, 83, 43, 154, 68, 71, 65, 82, 105, 65, 68, 85, 51, 51, 33, 64, 68, 55, 53, 56, 71, 36, 65, 61, 52, 53, 54, 65, 87, 72, 68, 61, 77, 63, 60, 70, 60, 46, 147, 55, 46, 84, 92, 67, 70, 61, 55, 59, 69, 74, 117, 48, 62, 46, 76, 99, 58, 48, 58, 57, 67, 70, 69, 82, 90, 51, 47, 92, 75, 71, 89, 53, 61, 51, 66, 54, 62, 57, 53, 89, 54, 84, 62, 55, 51, 93, 53, 103, 114, 60, 91, 57, 91, 58, 49, 55, 52, 53, 65, 45, 68, 63, 45, 68, 56, 61, 63, 59, 49, 54, 57, 75, 79, 61, 40, 74, 82, 64, 102, 51, 59, 84, 74, 56, 56, 69, 77, 65, 55, 65, 57, 66, 73, 74, 33, 63, 82, 52, 88, 73, 80, 63, 81, 53, 72, 94, 48, 92, 56, 41, 80, 45, 81, 39, 61, 45, 80, 68, 63, 68, 47, 58, 67, 56, 50, 53, 34, 101, 81, 72, 50, 80, 74, 69, 55, 80, 72, 63, 92, 40, 49, 50, 64, 70, 79, 63, 72, 103, 116, 68, 55, 63, 78, 76, 70, 60, 59, 73, 81, 67, 79, 69, 76, 98, 56, 37, 93, 66, 70, 66, 74, 89, 81, 57, 79, 42, 89, 68, 104, 48, 56, 52, 58, 36, 46, 57, 63, 48, 91, 66, 25, 64, 62, 97, 84, 84, 53, 88, 69, 70, 56, 83, 85, 62, 54, 86, 77, 50, 58, 104, 48, 83, 50, 67, 29, 59, 59, 62, 86, 68, 38, 67, 61, 48, 42, 53, 59, 60, 58, 79, 48, 58, 87, 60, 118, 60, 58, 71, 59, 58, 78, 67, 63, 110, 50, 35, 52, 26, 61, 64, 47, 70, 71, 109, 68, 45, 67, 119, 85, 53, 51, 47, 48, 51, 41, 53, 84, 41, 84, 83, 108, 78, 75, 67, 56, 66, 72, 82, 44, 132, 85, 73, 74, 53, 55, 77, 123, 63, 68, 72, 68, 56, 82, 59, 70, 92, 53, 47, 89, 63, 84, 54, 43, 47, 73, 62, 50, 64, 85, 46, 78, 41, 48, 70, 60, 64, 48, 71, 59, 49, 102, 88, 51, 95, 60, 65, 66, 82, 81, 58, 61, 62, 78, 57, 62, 47, 52, 78, 86, 46, 81, 59, 65, 67, 66, 65, 93, 44, 69, 63, 78, 35, 43, 54, 46, 50, 60, 64, 28, 63, 82, 65, 71, 78, 62, 78, 61, 57, 69, 66, 60, 58, 54, 75, 56, 67, 66, 54, 77, 99, 53, 72, 83, 42, 41, 40, 74, 82, 61, 84, 79, 61, 59, 58, 67, 53, 68, 61, 82, 85, 63, 72, 63, 99, 59, 47, 61, 50, 87, 78, 95, 102, 51, 52, 52, 88, 93, 110, 70, 50, 53, 91, 66, 52, 50, 143, 78, 67, 40, 86, 71, 62, 95, 81, 58, 47, 56, 56, 55, 79, 70, 60, 51, 62, 43, 54, 59, 77, 73, 78, 43, 83, 69, 66, 60, 47, 62, 93, 61, 77, 61, 43, 86, 50, 91, 65, 64, 74, 81, 42, 72, 77, 75, 58, 99, 47, 56, 46, 65, 63, 60, 61, 75, 77, 75, 54, 68, 52, 85, 57, 87, 43, 52, 44, 62, 53, 37, 93, 73, 100, 58, 40, 51, 69, 70, 47, 54, 86, 62, 57, 69, 74, 66, 53, 78, 83, 51, 62, 60, 51, 62, 78, 96, 41, 54, 36, 88, 63, 73, 72, 59, 62, 99, 84, 52, 49, 70, 58, 41, 62, 139, 37, 64, 83, 87, 60, 60, 67, 57, 50, 52, 63, 64, 63, 62, 93, 91, 115, 84, 51, 83, 52, 59, 68, 58, 58, 63, 75, 40, 74, 73, 68, 62, 64, 90, 55, 49, 32, 72, 58, 70, 56, 62, 63, 63, 49, 50, 47, 51, 56, 63, 75, 49, 76, 52, 56, 90, 52, 46, 76, 76, 46, 53, 43, 58, 90, 82, 49, 73, 79, 71, 84, 66, 67, 132, 46, 69, 77, 65, 45, 65, 78, 49, 76, 41, 59, 33, 69, 75, 52, 43, 43, 56, 99, 47, 58, 118, 64, 61, 29, 73, 73, 94, 79, 58, 104, 40, 62, 45, 44, 88, 68, 67, 152, 47, 133, 63, 74, 67, 109, 78, 47, 48, 49, 60, 88, 95, 65, 51, 74, 39, 64, 69, 55, 57, 68, 57, 47, 70, 64, 54, 63, 54, 57, 105, 62, 61, 76, 95, 60, 53, 78, 74, 52, 61, 61, 74, 72, 48, 60, 68, 81, 55, 64, 58, 62, 81, 67, 59, 57, 70, 56, 66, 67, 63, 66, 97, 61, 59, 67, 47, 55, 84, 71, 101, 95, 56, 84, 65, 77, 70, 61, 65, 48, 60, 75, 70, 51, 70, 64, 74, 78, 76, 66, 77, 63, 74, 61, 66, 49, 69, 62, 57, 57, 94, 74, 68, 50, 57, 70, 45, 53, 77, 62, 70, 55, 67, 73, 46, 58, 56, 89, 65, 59, 71, 57, 65, 71, 57, 52, 55, 50, 49, 53, 63, 61, 75, 58, 66, 47, 64, 77, 82, 73, 82, 59, 72, 65, 52, 75, 56, 68, 67, 41, 58, 61, 55, 58, 56, 62, 61, 55, 74, 54, 66, 57, 63, 66, 62, 63, 87, 45, 47, 65, 68, 63, 58, 61, 69, 72, 55, 75, 84, 69, 53, 59, 59, 68, 66, 51, 64, 67, 85, 66, 62, 80, 76, 50, 89, 64, 61, 72, 52, 71, 44, 75, 53, 68, 117, 53, 74, 60, 77, 64, 53, 56, 49, 61, 65, 63, 72, 62, 74, 71, 65, 53, 46, 70, 88, 93, 56, 63, 55, 68, 52, 88, 89, 59, 60, 63, 59, 66, 56, 65, 56, 58, 61, 46, 77, 63, 76, 57, 68, 50, 70, 76, 62, 54, 57, 61, 48, 73, 81, 58, 49, 61, 57, 66, 97, 52, 62, 54, 48, 52, 65, 68, 81, 66, 53, 111, 75, 66, 58, 58, 93, 65, 53, 59, 66, 46, 51, 45, 63, 138, 61, 61, 68, 66, 69, 85, 57, 68, 59, 65, 117, 82, 51, 68, 68, 68, 61, 73, 67, 71, 69, 79, 56, 63, 81, 66, 64, 70, 69, 55, 130, 61, 62, 74, 65, 56, 78, 72, 50, 79, 56, 49, 62, 59, 72, 58, 71, 50, 58, 48, 69, 70, 65, 59, 66, 65, 70, 74, 73, 49, 67, 68, 62, 75, 56, 65, 41, 71, 54, 73, 52, 57, 80, 76, 60, 80, 75, 64, 68, 71, 57, 60, 56, 59, 70, 54, 74, 58, 64, 62, 57, 66, 94, 58, 118, 56, 69, 44, 71, 52, 65, 66, 64, 69, 78, 62, 58, 63, 62, 77, 82, 55, 113, 57, 64, 63, 55, 54, 72, 76, 67, 55, 50, 54, 65, 57, 61, 61, 71, 57, 55, 66, 73, 50, 80, 96, 56, 81, 79, 69, 71, 59, 46, 66, 63, 72, 61, 63, 62, 51, 67, 67, 105, 80, 63, 55, 63, 70, 65, 61, 68, 80, 61, 57, 61, 90, 69, 66, 57, 61, 55, 73, 68, 63, 52, 69, 53, 70, 62, 92, 87, 62, 67, 69, 37, 62, 65, 72, 83, 49, 110, 78, 44, 62, 39, 68, 90, 74, 46, 70, 72, 53, 72, 69, 63, 47, 68, 60, 61, 64, 74, 61, 61, 66, 67, 55, 58, 48, 94, 66, 69, 85, 81, 63, 54, 72, 98, 67, 55, 53, 50, 62, 74, 70, 63, 68, 66, 63, 62, 72, 67, 76, 53, 60, 83, 66, 44, 72, 50, 72, 46, 81, 65, 83, 68, 57, 61, 53, 71, 76, 72, 72, 69, 54, 75, 54, 55, 61, 73, 71, 60, 56, 60, 76, 70, 48, 50, 58, 63, 59, 59, 67, 68, 70, 57, 80, 58, 62, 69, 46, 54, 79, 53, 107, 47, 88, 54, 57, 81, 52, 55, 65, 56, 68, 56, 55, 69, 56, 53, 60, 60, 92, 62, 62, 52, 71, 67, 56, 87, 67, 147, 88, 56, 84, 54, 57, 138, 65, 97, 77, 95, 64, 48, 66, 71, 86, 112, 55, 84, 76, 87, 77, 58, 69, 72, 62, 66, 61, 81, 69, 54, 59, 151, 51, 61, 105, 47, 75, 41, 56, 75, 81, 65, 57, 49, 64, 92, 62, 56, 76, 74, 58, 98, 68, 54, 66, 74, 59, 65, 82, 68, 64, 71, 63, 94, 61, 68, 74, 80, 70, 67, 74, 84, 61, 64, 68, 62, 62, 67, 56, 66, 85, 98, 71, 55, 82, 73, 54, 79, 70, 51, 60, 63, 74, 51, 61, 67, 83, 69, 58, 80, 55, 60, 60, 50, 41, 50, 79, 53, 59, 63, 63, 79, 62, 69, 68, 79, 59, 69, 89, 55, 72, 87, 68, 61, 60, 73, 61, 75, 64, 53, 69, 60, 65, 61, 70, 69, 73, 71, 53, 58, 63, 58, 77, 62, 55, 56, 60, 63, 57, 49, 67, 61, 41, 66, 57, 73, 84, 82, 56, 66, 63, 91, 56, 38, 51, 74, 56, 84, 58, 70, 58, 93, 56, 61, 59, 56, 70, 64, 63, 62, 51, 55, 67, 65, 66, 69, 58, 60, 80, 51, 66, 70, 70, 124, 117, 58, 61, 64, 63, 55, 54, 72, 59, 57, 67, 75, 94, 66, 57, 64, 61, 59, 95, 63, 81, 55, 57, 68, 75, 64, 51, 68, 79, 59, 61, 62, 58, 66, 62, 54, 75, 94, 61, 67, 68, 66, 60, 76, 77, 67, 63, 98, 60, 64, 62, 53, 57, 99, 59, 85, 83, 83, 56, 72, 69, 57, 51, 112, 55, 68, 58, 73, 71, 67, 49, 36, 71, 57, 58, 65, 64, 42, 53, 69, 64, 54, 55, 62, 59, 89, 84, 70, 65, 82, 63, 61, 55, 92, 95, 58, 55, 51, 45, 51, 57, 76, 56, 55, 68, 60, 50, 57, 40, 57, 62, 77, 56, 65, 62, 62, 59, 73, 54, 55, 76, 57, 62, 65, 71, 64, 55, 77, 74, 70, 58, 65, 68, 52, 63, 64, 53, 56, 66, 69, 75, 52, 94, 93, 67, 66, 64, 63, 69, 52, 69, 61, 52, 47, 53, 61, 75, 62, 50, 64, 68, 75, 64, 81, 51, 83, 55, 69, 68, 70, 67, 67, 82, 48, 64, 73, 80, 58, 59, 67, 77, 72, 77, 82, 61, 51, 59, 69, 70, 68, 60, 68, 45, 67, 60, 64, 50, 59, 78, 83, 62, 66, 53, 48, 59, 57, 67, 85, 66, 50, 67, 71, 53, 72, 64, 78, 70, 55, 78, 63, 69, 52, 137, 43, 70, 81, 49, 49, 83, 44, 67, 67, 113, 52, 58, 57, 78, 64, 80, 55, 71, 49, 55, 71, 49, 58, 74, 69, 54, 87, 84, 64, 73, 58, 48, 60, 69, 63, 62, 65, 62, 64, 74, 69, 62, 43, 59, 81, 60, 83, 52, 65, 57, 79, 60, 67, 94, 61, 77, 53, 72, 61, 64, 48, 51, 69, 65, 55, 42, 61, 64, 77, 61, 59, 86, 52, 47, 52, 70, 72, 60, 79, 72, 49, 58, 96, 63, 56, 64, 77, 43, 57, 69, 56, 64, 70, 71, 81, 44, 79, 54, 68, 62, 64, 52, 74, 62, 65, 65, 58, 69, 62, 61, 72, 103, 84, 52, 65, 61, 69, 48, 57, 58, 93, 79, 49, 68, 75, 53, 70, 68, 55, 65, 54, 67, 72, 64, 65, 58, 124, 59, 77, 50, 110, 67, 59, 69, 90, 68, 49, 86, 56, 83, 67, 78, 70, 67, 52, 51, 80, 59, 63, 69, 58, 65, 67, 89, 58, 60, 57, 72, 76, 67, 64, 91, 69, 77, 66, 46, 54, 64, 53, 53, 63, 63, 57, 67, 75, 54, 55, 76, 68, 57, 70, 58, 65, 68, 76, 83, 49, 68, 64, 61, 73, 66, 70, 75, 75, 58, 74, 78, 65, 64, 56, 79, 57, 51, 73, 50, 60, 57, 58, 80, 55, 63, 57, 54, 50, 63, 65, 73, 65, 60, 71, 65, 74, 77, 122, 77, 75, 63, 53, 45, 69, 63, 76, 63, 62, 50, 78, 86, 54, 84, 100, 73, 89, 75, 63, 59, 79, 68, 48, 71, 48, 64, 116, 69, 91, 63, 67, 69, 62, 54, 53, 54, 68, 52, 63, 50, 57, 57, 74, 64, 64, 51, 65, 99, 58, 71, 65, 69, 63, 59, 51, 81, 80, 69, 60, 55, 53, 88, 67, 70, 55, 60, 58, 46, 61, 54, 60, 54, 61, 60, 64, 59, 71, 58, 138, 59, 76, 54, 53, 70, 53, 66, 63, 62, 75, 60, 53, 70, 61, 58, 54, 57, 61, 55, 55, 70, 78, 69, 54, 74, 60, 57, 93, 66, 59, 52, 61, 63, 60, 56, 93, 65, 62, 58, 50, 72, 72, 95, 70, 120, 54, 65, 60, 56, 79, 65, 78, 69, 66, 62, 59, 80, 67, 63, 72, 65, 46, 76, 67, 54, 58, 77, 69, 42, 62, 57, 52, 83, 70, 71, 87, 61, 67, 57, 66, 64, 45, 46, 69, 74, 69, 68, 75, 67, 87, 46, 81, 58, 80, 59, 72, 63, 66, 69, 67, 62, 58, 69, 77, 66, 73, 45, 65, 68, 57, 70, 66, 58, 61, 58, 76, 59, 62, 65, 55, 54, 63, 55, 58, 68, 70, 77, 63, 79, 54, 58, 71, 74, 69, 57, 70, 52, 57, 86, 66, 70, 68, 58, 53, 65, 69, 83, 50, 56, 84, 62, 61, 64, 55, 51, 67, 86, 65, 68, 54, 73, 59, 65, 83, 55, 95, 68, 62, 64, 55, 48, 63, 71, 60, 69, 68, 55, 64, 77, 67, 59, 63, 85, 61, 66, 67, 44, 41, 63, 54, 57, 59, 89, 56, 65, 76, 65, 67, 64, 61, 66, 67, 63, 57, 62, 49, 67, 69, 56, 61, 92, 76, 56, 60, 71, 80, 70, 65, 69, 75, 79, 57, 74, 61, 66, 66, 69, 69, 56, 52, 67, 73, 60, 71, 79, 35, 66, 65, 60, 58, 47, 57, 69, 63, 66, 82, 61, 79, 62, 55, 65, 60, 72, 79, 76, 65, 57, 64, 82, 60, 73, 46, 58, 65, 58, 70, 66, 63, 64, 65, 45, 58, 70, 59, 46, 69, 55, 65, 125, 66, 81, 49, 70, 58, 66, 56, 49, 60, 57, 60, 72, 62, 55, 52, 54, 80, 66, 78, 56, 57, 54, 60, 59, 67, 85, 63, 64, 76, 69, 63, 54, 68, 70, 61, 77, 62, 73, 106, 71, 61, 53, 86, 78, 60, 71, 54, 64, 62, 46, 71, 88, 78, 63, 103, 49, 72, 50, 51, 60, 60, 47, 76, 65, 73, 60, 78, 58, 63, 88, 75, 67, 69, 50, 93, 68, 57, 72, 58, 68, 62, 58, 63, 60, 54, 68, 42, 45, 76, 111, 68, 75, 66, 68, 69, 54, 84, 89, 65, 66, 64, 89, 67, 68, 65, 74, 81, 72, 60, 108, 76, 67, 63, 47, 61, 76, 62, 58, 64, 45, 71, 75, 63, 74, 78, 59, 59, 58, 67, 68, 61, 73, 65, 65, 76, 62, 83, 62, 83, 61, 62, 68, 54, 66, 71, 71, 66, 64, 59, 69, 65, 71, 67, 77, 64, 61, 66, 67, 63, 76, 62, 66, 56, 63, 65, 62, 58, 60, 58, 94, 66, 53, 88, 61, 57, 68, 63, 64, 71, 79, 67, 67, 62, 67, 58, 73, 52, 50, 62, 74, 57, 84, 66, 63, 59, 71, 66, 57, 69, 60, 65, 59, 58, 49, 74, 69, 70, 72, 67, 68, 53, 70, 104, 63, 74, 60, 65, 56, 62, 73, 68, 54, 70, 116, 80, 53, 75, 72, 62, 58, 72, 88, 47, 79, 93, 57, 58, 71, 67, 59, 72, 67, 48, 66, 70, 60, 78, 68, 71, 54, 60, 49, 71, 64, 58, 69, 77, 51, 71, 65, 59, 67, 65, 62, 71, 66, 67, 61, 54, 64, 78, 61, 88, 65, 60, 55, 56, 69, 76, 105, 87, 74, 63, 91, 60, 59, 66, 62, 60, 50, 70, 103, 78, 77, 56, 73, 76, 80, 58, 68, 67, 72, 49, 87, 66, 71, 66, 60, 81, 77, 46, 66, 59, 66, 71, 58, 85, 97, 62, 65, 95, 56, 84, 50, 44, 58, 73, 69, 54, 60, 61, 72, 64, 42, 54, 56, 68, 72, 61, 66, 52, 67, 74, 70, 64, 75, 50, 77, 71, 66, 56, 56, 64, 60, 61, 74, 56, 54, 77, 71, 56, 84, 76, 75, 70, 77, 75, 58, 76, 74, 94, 92, 68, 61, 63, 51, 63, 60, 55, 78, 66, 63, 74, 55, 65, 56, 83, 69, 55, 64, 87, 70, 60, 65, 66, 71, 60, 53, 60, 67, 82, 78, 62, 71, 42, 61, 74, 80, 62, 71, 51, 50, 44, 48, 69, 62, 131, 68, 44, 69, 60, 70, 55, 73, 77, 78, 82, 68, 45, 77, 53, 70, 80, 68, 59, 56, 79, 70, 57, 65, 59, 50, 60, 70, 62, 33, 62, 74, 61, 96, 49, 78, 42, 58, 71, 60, 114, 48, 43, 61, 60, 56, 62, 72, 85, 67, 77, 60, 62, 67, 69, 69, 54, 59, 72, 74, 87, 55, 69, 58, 88, 92, 65, 79, 69, 54, 62, 65, 61, 62, 62, 92, 56, 107, 49, 63, 70, 67, 67, 52, 51, 63, 91, 72, 59, 61, 59, 53, 67, 92, 63, 54, 51, 60, 63, 99, 59, 60, 58, 63, 56, 52, 52, 82, 52, 105, 64, 69, 52, 94, 71, 55, 67, 63, 73, 60, 63, 56, 62, 65, 55, 35, 64, 57, 55, 74, 63, 46, 57, 76, 59, 52, 67, 53, 64, 71, 55, 57, 76, 47, 44, 60, 57, 85, 53, 87, 76, 56, 70, 65, 84, 66, 76, 61, 62, 63, 82, 47, 49, 66, 84, 53, 69, 67, 65, 63, 68, 59, 65, 62, 69, 59, 90, 56, 60, 67, 41, 61, 87, 62, 58, 60, 94, 87, 65, 90, 75, 61, 67, 103, 58, 70, 59, 58, 86, 63, 62, 54, 63, 66, 66, 63, 88, 48, 87, 63, 84, 57, 54, 53, 71, 62, 53, 57, 58, 55, 64, 65, 68, 58, 59, 49, 56, 73, 66, 61, 54, 44, 63, 62, 59, 57, 58, 56, 58, 78, 66, 59, 72, 58, 51, 72, 69, 71, 62, 57, 82, 59, 65, 71, 57, 61, 66, 60, 56, 71, 71, 55, 55, 67, 96, 78, 69, 76, 73, 61, 47, 40, 60, 60, 78, 55, 61, 49, 52, 61, 59, 52, 57, 64, 57, 40, 75, 58, 56, 91, 74, 66, 56, 74, 47, 74, 57, 66, 63, 42, 81, 79, 59, 63, 71, 66, 81, 55, 74, 103, 95, 74, 70, 48, 49, 64, 55, 67, 60, 70, 64, 65, 89, 49, 76, 60, 83, 89, 61, 51, 56, 66, 83, 70, 59, 68, 47, 62, 59, 74, 69, 59, 84, 54, 64, 70, 65, 107, 50, 47, 60, 56, 63, 75, 56, 90, 57, 61, 97, 50, 68, 59, 69, 58, 41, 71, 84, 82, 75, 64, 51, 61, 85, 66, 56, 65, 75, 65, 64, 79, 98, 54, 58, 54, 81, 58, 74, 70, 64, 56, 80, 50, 70, 71, 61, 61, 70, 61, 64, 81, 54, 62, 70, 71, 62, 57, 59, 74, 72, 62, 80, 109, 71, 54, 61, 70, 61, 79, 64, 67, 56, 66, 60, 62, 60, 69, 59, 59, 58, 101, 64, 46, 67, 68, 52, 74, 60, 53, 60, 61, 67, 79, 77, 61, 58, 63, 62, 57, 60, 58, 70, 58, 73, 50, 67, 63, 80, 56, 57, 57, 60, 57, 82, 60, 57, 58, 67, 58, 66, 52, 51, 61, 59, 77, 57, 70, 87, 73, 53, 80, 45, 58, 69, 97, 74, 67, 60, 75, 61, 52, 56, 68, 67, 65, 53, 61, 60, 64, 63, 57, 59, 70, 50, 65, 57, 56, 51, 57, 70, 60, 84, 56, 54, 59, 55, 61, 49, 57, 63, 64, 65, 62, 55, 59, 62, 52, 62, 66, 70, 49, 57, 75, 69, 68, 57, 115, 59, 48, 74, 61, 66, 55, 56, 64, 65, 64, 66, 62, 76, 63, 57, 64, 43, 60, 77, 60, 45, 107, 64, 61, 65, 78, 58, 66, 65, 57, 66, 44, 75, 51, 73, 61, 53, 119, 78, 59, 72, 64, 57, 62, 60, 72, 57, 65, 75, 90, 92, 64, 72, 89, 52, 54, 56, 56, 52, 72, 66, 70, 73, 66, 65, 72, 65, 64, 42, 69, 67, 55, 91, 68, 57, 60, 53, 46, 77, 61, 67, 51, 69, 52, 75, 74, 68, 77, 60, 59, 72, 57, 61, 68, 62, 49, 44, 83, 53, 68, 64, 62, 60, 68, 98, 59, 65, 72, 63, 84, 49, 55, 71, 59, 79, 64, 80, 63, 75, 44, 64, 58, 65, 63, 51, 93, 69, 54, 59, 97, 66, 58, 62, 83, 69, 68, 75, 68, 80, 75, 64, 56, 59, 46, 78, 59, 63, 58, 123, 73, 69, 69, 70, 70, 57, 88, 73, 55, 55, 62, 65, 56, 107, 58, 51, 47, 75, 64, 52, 83, 51, 56, 60, 65, 59, 109, 64, 66, 57, 52, 58, 97, 66, 63, 50, 92, 49, 90, 66, 66, 83, 63, 72, 68, 60, 59, 62, 65, 73, 59, 49, 78, 39, 73, 82, 57, 70, 72, 52, 65, 85, 77, 49, 53, 71, 53, 72, 78, 63, 72, 55, 59, 51, 87, 69, 57, 66, 67, 56, 68, 62, 64, 52, 62, 69, 42, 60, 58, 81, 67, 52, 114, 95, 101, 60, 62, 68, 68, 96, 56, 55, 84, 56, 67, 54, 64, 50, 67, 41, 57, 79, 57, 62, 68, 82, 72, 54, 54, 78, 61, 42, 65, 53, 94, 56, 68, 73, 85, 59, 80, 61, 66, 79, 61, 61, 74, 58, 61, 48, 57, 65, 83, 76, 62, 59, 118, 53, 69, 63, 59, 53, 69, 81, 57, 74, 65, 58, 56, 62, 58, 80, 85, 54, 70, 88, 56, 64, 59, 63, 63, 52, 49, 90, 67, 90, 70, 63, 64, 63, 69, 53, 64, 61, 64, 55, 56, 100, 67, 67, 51, 61, 59, 64, 76, 118, 67, 74, 50, 65, 86, 51, 72, 65, 60, 60, 72, 61, 47, 52, 57, 59, 69, 67, 79, 79, 54, 65, 73, 74, 69, 52, 60, 65, 67, 142, 72, 61, 62, 61, 56, 57, 67, 61, 59, 66, 57, 58, 70, 57, 51, 91, 62, 51, 74, 65, 68, 83, 70, 85, 52, 63, 63, 69, 68, 60, 60, 103, 60, 93, 64, 64, 59, 69, 69, 46, 62, 68, 60, 87, 72, 59, 64, 83, 105, 64, 66, 74, 61, 53, 55, 49, 59, 70, 58, 64, 64, 69, 57, 59, 106, 57, 83, 101, 58, 48, 52, 52, 86, 77, 63, 64, 59, 74, 70, 67, 103, 67, 49, 54, 84, 84, 90, 93, 54, 66, 73, 79, 59, 76, 63, 69, 66, 52, 62, 64, 66, 74, 80, 51, 73, 62, 69, 82, 71, 68, 64, 56, 62, 80, 73, 98, 117, 63, 83, 60, 67, 63, 56, 61, 65, 64, 79, 59, 65, 60, 92, 79, 69, 75, 67, 76, 87, 73, 48, 93, 69, 68, 73, 62, 66, 58, 75, 77, 71, 73, 81, 72, 63, 50, 44, 54, 49, 55, 48, 68, 66, 58, 65, 82, 64, 73, 72, 62, 72, 60, 56, 82, 88, 53, 64, 83, 60, 65, 70, 76, 56, 60, 66, 59, 80, 50, 66, 73, 60, 72, 106, 84, 80, 110, 68, 60, 64, 78, 100, 65, 58, 73, 77, 62, 63, 67, 71, 50, 79, 76, 46, 55, 70, 57, 69, 64, 47, 62, 77, 61, 75, 87, 67, 68, 70, 48, 64, 49, 58, 80, 102, 66, 56, 59, 52, 59, 62, 88, 60, 71, 58, 54, 66, 43, 35, 71, 39, 66, 56, 47, 70, 75, 70, 68, 64, 68, 83, 63, 58, 104, 88, 57, 76, 70, 64, 55, 69, 82, 67, 89, 48, 78, 54, 63, 85, 81, 62, 47, 61, 51, 72, 53, 76, 67, 64, 53, 67, 59, 65, 58, 61, 73, 73, 62, 66, 43, 75, 59, 61, 66, 59, 72, 74, 82, 59, 69, 55, 61, 58, 83, 51, 80, 62, 73, 70, 71, 40, 69, 73, 67, 55, 61, 60, 63, 43, 62, 50, 55, 51, 45, 87, 66, 66, 65, 100, 66, 61, 54, 75, 58, 77, 48, 59, 63, 102, 83, 58, 74, 58, 95, 69, 62, 55, 64, 66, 56, 57, 70, 78, 46, 59, 59, 65, 40, 59, 63, 61, 50, 85, 83, 83, 70, 50, 88, 74, 66, 64, 61, 53, 58, 54, 59, 70, 75, 71, 72, 65, 64, 56, 67, 72, 70, 63, 49, 65, 46, 59, 72, 66, 63, 69, 64, 55, 52, 81, 92, 65, 57, 54, 52, 70, 55, 84, 55, 72, 58, 72, 50, 82, 62, 64, 57, 77, 122, 73, 74, 55, 54, 86, 64, 75, 66, 83, 77, 62, 56, 60, 64, 76, 63, 60, 49, 62, 68, 53, 58, 67, 47, 51, 51, 76, 48, 44, 63, 78, 54, 66, 63, 68, 74, 60, 80, 57, 74, 63, 59, 65, 81, 55, 57, 70, 55, 37, 73, 78, 52, 60, 59, 65, 77, 71, 61, 68, 78, 64, 66, 55, 59, 63, 64, 46, 51, 76, 51, 50, 70, 72, 73, 62, 62, 69, 53, 79, 61, 59, 49, 78, 80, 59, 84, 101, 68, 84, 88, 60, 80, 61, 64, 53, 96, 62, 72, 63, 64, 74, 84, 64, 73, 84, 52, 38, 59, 67, 74, 61, 56, 59, 84, 72, 58, 59, 75, 59, 58, 77, 72, 59, 65, 69, 53, 81, 65, 64, 111, 69, 53, 68, 54, 83, 60, 64, 58, 52, 54, 86, 71, 64, 51, 63, 60, 59, 65, 52, 71, 71, 77, 87, 83, 62, 63, 58, 67, 55, 64, 69, 81, 64, 59, 71, 71, 71, 56, 55, 77, 51, 62, 74, 72, 59, 69, 65, 69, 69, 54, 74, 65, 86, 50, 62, 73, 62, 60, 58, 49, 70, 58, 72, 66, 49, 75, 79, 71, 80, 114, 55, 60, 68, 62, 73, 65, 74, 67, 51, 66, 85, 76, 68, 56, 56, 74, 79, 38, 53, 59, 80, 73, 54, 70, 83, 63, 65, 73, 54, 70, 55, 68, 54, 47, 63, 63, 71, 41, 64, 67, 73, 78, 65, 53, 69, 62, 71, 73, 80, 70, 71, 50, 68, 63, 88, 70, 66, 48, 45, 65, 67, 49, 46, 71, 53, 68, 54, 49, 49, 53, 90, 69, 98, 75, 77, 80, 63, 76, 79, 59, 67, 77, 65, 74, 60, 84, 61, 61, 50, 59, 79, 52, 102, 82, 64, 92, 54, 84, 62, 59, 74, 51, 52, 77, 59, 56, 59, 68, 60, 61, 58, 65, 59, 53, 65, 54, 48, 54, 70, 46, 80, 45, 69, 62, 74, 54, 58, 66, 55, 62, 89, 67, 66, 65, 63, 62, 60, 64, 70, 51, 89, 75, 64, 52, 63, 67, 59, 44, 61, 58, 47, 91, 78, 44, 53, 57, 54, 61, 66, 67, 64, 87, 63, 52, 80, 59, 72, 56, 61, 76, 64, 68, 61, 54, 74, 62, 68, 57, 61, 77, 100, 50, 58, 63, 62, 75, 71, 54, 63, 70, 66, 63, 57, 58, 49, 67, 57, 63, 63, 57, 76, 92, 78, 54, 86, 82, 77, 68, 82, 79, 56, 65, 64, 45, 61, 61, 87, 73, 52, 35, 73, 78, 60, 83, 69, 76, 81, 68, 55, 62, 65, 45, 53, 73, 75, 37, 70, 79, 58, 62, 65, 59, 111, 64, 55, 75, 74, 58, 61, 66, 79, 75, 57, 55, 49, 56, 72, 67, 103, 81, 57, 72, 81, 77, 51, 78, 84, 59, 65, 53, 72, 51, 75, 60, 57, 74, 68, 59, 59, 72, 44, 69, 55, 63, 60, 81, 61, 58, 46, 67, 69, 58, 67, 52, 68, 64, 61, 66, 72, 78, 70, 83, 72, 67, 50, 52, 48, 46, 51, 68, 47, 82, 66, 51, 81, 117, 76, 51, 80, 61, 104, 77, 62, 63, 65, 73, 66, 98, 70, 29, 63, 68, 70, 54, 57, 76, 65, 69, 65, 201, 60, 84, 50, 50, 49, 56, 76, 64, 71, 64, 68, 65, 87, 55, 67, 78, 49, 48, 72, 65, 82, 79, 61, 69, 64, 65, 74, 68, 89, 60, 70, 44, 56, 74, 68, 58, 70, 60, 64, 66, 103, 78, 60, 64, 54, 49, 67, 73, 62, 66, 54, 43, 80, 59, 68, 38, 55, 57, 90, 70, 58, 64, 68, 69, 58, 79, 87, 62, 63, 83, 73, 78, 85, 66, 76, 86, 69, 52, 56, 46, 50, 69, 59, 65, 54, 69, 70, 69, 63, 68, 64, 57, 87, 77, 71, 40, 81, 55, 84, 65, 59, 59, 98, 76, 59, 53, 47, 66, 57, 59, 61, 69, 49, 80, 77, 60, 45, 76, 75, 56, 65, 75, 86, 67, 84, 76, 64, 48, 56, 64, 85, 51, 105, 61, 57, 79, 64, 53, 81, 56, 60, 58, 76, 77, 69, 40, 66, 59, 66, 81, 106, 66, 67, 56, 62, 76, 73, 68, 50, 68, 50, 84, 63, 43, 52, 58, 61, 59, 61, 79, 50, 71, 62, 54, 98, 55, 83, 82, 50, 59, 77, 73, 67, 68, 70, 52, 82, 58, 96, 66, 68, 68, 83, 76, 82, 64, 85, 75, 70, 79, 53, 61, 69, 79, 58, 69, 48, 114, 53, 70, 75, 63, 69, 49, 66, 56, 71, 72, 70, 82, 71, 72, 50, 48, 50, 92, 55, 79, 60, 47, 74, 73, 62, 92, 49, 100, 57, 67, 68, 53, 77, 71, 73, 73, 52, 70, 68, 68, 62, 96, 80, 78, 60, 105, 53, 64, 70, 73, 51, 44, 72, 53, 100, 72, 84, 86, 72, 72, 81, 57, 64, 57, 66, 59, 63, 53, 49, 67, 62, 68, 63, 49, 59, 53, 88, 71, 52, 64, 61, 52, 63, 80, 67, 81, 61, 96, 61, 89, 70, 53, 75, 90, 85, 39, 73, 52, 68, 48, 61, 40, 70, 50, 69, 62, 83, 75, 55, 91, 57, 80, 103, 71, 52, 61, 76, 97, 63, 35, 74, 55, 46, 63, 86, 69, 70, 82, 47, 43, 47, 83, 50, 57, 80, 71, 46, 77, 49, 55, 66, 67, 62, 66, 49, 51, 68, 53, 60, 84, 76, 68, 93, 66, 65, 55, 75, 67, 62, 76, 55, 61, 64, 50, 82, 58, 66, 63, 62, 86, 63, 53, 75, 68, 72, 62, 75, 64, 96, 60, 67, 67, 52, 59, 75, 56, 68, 56, 38, 66, 46, 59, 65, 48, 64, 48, 78, 50, 58, 75, 91, 50, 84, 41, 57, 63, 61, 38, 95, 53, 77, 42, 94, 64, 67, 68, 43, 57, 55, 52, 86, 54, 66, 49, 44, 48, 67, 40, 81, 50, 65, 78, 73, 49, 55, 56, 78, 65, 50, 58, 48, 74, 49, 62, 47, 60, 98, 80, 64, 119, 67, 62, 59, 44, 70, 74, 75, 96, 64, 59, 75, 58, 68, 71, 79, 64, 67, 44, 77, 57, 86, 83, 49, 67, 86, 65, 72, 103, 43, 85, 79, 97, 72, 49, 95, 58, 75, 83, 79, 66, 79, 87, 34, 71, 63, 77, 82, 40, 66, 63, 69, 48, 43, 49, 59, 73, 76, 66, 51, 71, 43, 50, 67, 63, 94, 57, 54, 70, 63, 55, 78, 62, 59, 65, 42, 63, 97, 49, 93, 37, 58, 82, 53, 107, 86, 118, 64, 68, 49, 48, 56, 61, 61, 72, 48, 53, 61, 79, 47, 48, 55, 57, 75, 104, 93, 65, 56, 62, 57, 94, 59, 60, 60, 41, 50, 60, 74, 55, 69, 46, 104, 63, 65, 71, 77, 88, 61, 68, 58, 56, 60, 61, 69, 52, 66, 58, 63, 56, 64, 69, 68, 58, 69, 85, 40, 60, 125, 66, 56, 72, 52, 73, 75, 82, 61, 68, 74, 73, 97, 59, 48, 56, 49, 82, 64, 54, 71, 51, 74, 52, 116, 77, 41, 54, 55, 64, 81, 61, 89, 75, 74, 65, 61, 61, 44, 80, 62, 62, 90, 90, 86, 56, 66, 52, 57, 49, 58, 71, 55, 77, 86, 58, 57, 49, 76, 49, 50, 44, 71, 84, 66, 62, 63, 94, 43, 55, 56, 71, 58, 76, 73, 74, 55, 85, 80, 68, 62, 82, 52, 68, 54, 36, 70, 52, 117, 68, 56, 50, 38, 40, 82, 58, 49, 58, 53, 60, 47, 62, 52, 60, 55, 63, 69, 44, 66, 80, 91, 63, 58, 90, 74, 69, 56, 66, 91, 63, 77, 68, 74, 64, 52, 64, 78, 70, 66, 62, 56, 99, 67, 62, 59, 64, 49, 54, 62, 62, 98, 65, 91, 84, 62, 58, 76, 51, 57, 76, 80, 60, 59, 60, 79, 68, 43, 60, 66, 51, 83, 75, 49, 75, 67, 94, 63, 62, 46, 61, 56, 75, 69, 63, 84, 106, 65, 56, 72, 69, 57, 71, 82, 56, 73, 46, 65, 64, 73, 66, 79, 89, 81, 68, 51, 66, 91, 67, 47, 56, 81, 62, 66, 67, 79, 84, 55, 67, 76, 47, 59, 57, 49, 76, 65, 63, 75, 55, 84, 74, 73, 68, 76, 54, 86, 67, 63, 66, 131, 63, 85, 52, 70, 78, 60, 49, 52, 73, 57, 42, 117, 59, 57, 62, 53, 119, 58, 48, 62, 45, 62, 85, 87, 55, 57, 59, 76, 56, 63, 70, 56, 58, 56, 78, 58, 69, 70, 54, 50, 133, 65, 74, 83, 80, 57, 53, 57, 64, 65, 56, 75, 65, 59, 87, 72, 82, 48, 65, 36, 73, 48, 57, 79, 57, 95, 76, 58, 112, 72, 61, 61, 65, 76, 47, 76, 51, 65, 74, 54, 65, 67, 62, 44, 68, 61, 77, 76, 71, 65, 59, 75, 74, 80, 92, 61, 98, 64, 99, 58, 76, 65, 73, 62, 95, 81, 83, 75, 55, 64, 48, 48, 67, 55, 64, 64, 74, 68, 78, 55, 62, 84, 81, 66, 50, 73, 58, 71, 90, 66, 84, 53, 57, 71, 53, 70, 91, 46, 48, 51, 37, 105, 49, 60, 90, 54, 68, 65, 72, 64, 84, 55, 83, 65, 48, 64, 67, 47, 56, 80, 65, 86, 57, 41, 59, 78, 53, 57, 62, 67, 60, 82, 64, 54, 80, 55, 110, 55, 72, 52, 92, 51, 75, 75, 50, 61, 59, 46, 69, 67, 56, 65, 56, 77, 67, 57, 50, 82, 50, 64, 67, 64, 81, 71, 101, 48, 53, 38, 66, 50, 70, 45, 77, 50, 65, 53, 51, 59, 49, 76, 55, 52, 57, 58, 63, 43, 89, 73, 67, 31, 73, 84, 62, 80, 52, 56, 67, 51, 76, 84, 82, 54, 75, 54, 62, 65, 40, 63, 42, 53, 53, 88, 74, 56, 109, 55, 89, 58, 68, 96, 69, 79, 84, 59, 94, 65, 55, 91, 82, 52, 65, 56, 45, 79, 80, 48, 59, 52, 60, 60, 64, 60, 66, 69, 73, 53, 57, 79, 86, 78, 66, 44, 59, 67, 55, 63, 59, 72, 87, 86, 84, 59, 61, 64, 76, 76, 68, 100, 64, 72, 72, 80, 82, 68, 81, 34, 53, 54, 70, 106, 63, 62, 62, 64, 52, 70, 50, 73, 47, 77, 73, 76, 64, 73, 97, 113, 69, 74, 75, 65, 61, 93, 74, 62, 58, 65, 58, 67, 87, 100, 46, 61, 63, 71, 81, 76, 91, 77, 56, 67, 65, 68, 56, 80, 70, 67, 67, 46, 56, 43, 54, 68, 80, 55, 55, 67, 70, 42, 56, 61, 83, 56, 105, 74, 112, 65, 90, 66, 54, 69, 68, 69, 59, 70, 46, 67, 72, 59, 65, 60, 89, 56, 88, 37, 74, 58, 77, 68, 81, 88, 55, 60, 70, 46, 55, 66, 71, 71, 94, 65, 84, 52, 77, 70, 65, 44, 16, 69, 58, 80, 78, 52, 56, 66, 69, 48, 78, 121, 69, 61, 129, 45, 61, 84, 108, 69, 77, 59, 84, 59, 51, 68, 43, 59, 57, 67, 60, 41, 75, 57, 68, 68, 63, 61, 56, 73, 57, 50, 53, 71, 54, 40, 70, 77, 74, 81, 58, 58, 91, 62, 88, 69, 71, 69, 89, 86, 72, 69, 88, 66, 55, 66, 76, 56, 59, 79, 69, 60, 59, 49, 80, 59, 49, 87, 72, 89, 104, 63, 69, 61, 62, 81, 59, 80, 76, 50, 76, 64, 47, 63, 48, 56, 55, 56, 73, 65, 59, 74, 57, 78, 61, 87, 75, 56, 51, 43, 46, 89, 74, 77, 53, 76, 45, 66, 60, 78, 53, 46, 64, 84, 77, 64, 63, 44, 37, 68, 49, 70, 62, 43, 65, 46, 61, 84, 70, 97, 71, 62, 70, 54, 71, 64, 107, 95, 60, 50, 77, 59, 63, 66, 45, 95, 75, 59, 52, 78, 40, 65, 73, 96, 66, 69, 64, 84, 45, 69, 47, 71, 65, 72, 50, 74, 46, 59, 58, 71, 79, 62, 57, 43, 50, 82, 54, 61, 69, 46, 65, 58, 83, 77, 62, 61, 65, 77, 57, 60, 64, 77, 72, 73, 74, 56, 70, 66, 53, 51, 58, 43, 80, 50, 64, 54, 57, 63, 73, 51, 77, 75, 73, 71, 92, 51, 74, 86, 78, 68, 66, 87, 69, 83, 99, 100, 75, 66, 58, 64, 50, 88, 95, 84, 74, 67, 42, 49, 73, 38, 79, 82, 48, 55, 72, 56, 62, 57, 63, 64, 70, 68, 60, 77, 56, 59, 59, 91, 43, 47, 59, 61, 66, 74, 78, 58, 64, 83, 137, 57, 82, 59, 74, 60, 80, 37, 65, 74, 79, 78, 47, 46, 47, 68, 51, 76, 60, 58, 82, 66, 78, 62, 56, 78, 79, 55, 90, 82, 54, 61, 70, 43, 80, 64, 65, 87, 93, 60, 66, 60, 58, 70, 42, 53, 78, 82, 90, 72, 55, 64, 63, 55, 49, 50, 64, 52, 73, 68, 90, 71, 49, 45, 61, 85, 58, 61, 60, 63, 75, 98, 60, 65, 69, 92, 57, 52, 67, 45, 77, 86, 51, 51, 49, 58, 79, 91, 74, 65, 60, 66, 63, 72, 68, 81, 57, 54, 66, 60, 61, 71, 75, 85, 56, 52, 69, 56, 64, 58, 77, 82, 66, 60, 65, 48, 72, 74, 66, 57, 58, 55, 95, 59, 51, 44, 67, 77, 70, 72, 66, 91, 75, 48, 77, 55, 42, 54, 59, 59, 73, 62, 63, 57, 69, 97, 75, 93, 61, 72, 59, 64, 65, 70, 56, 65, 93, 73, 63, 76, 88, 113, 87, 64, 38, 66, 69, 83, 66, 83, 84, 70, 66, 72, 81, 67, 79, 59, 55, 83, 123, 47, 68, 44, 67, 35, 57, 57, 60, 65, 77, 57, 53, 59, 68, 65, 82, 81, 46, 55, 43, 81, 50, 70, 80, 74, 46, 63, 69, 56, 56, 59, 72, 55, 67, 77, 85, 61, 58, 78, 53, 60, 117, 70, 61, 78, 57, 60, 93, 60, 53, 98, 58, 78, 55, 71, 63, 61, 74, 48, 62, 80, 33, 51, 39, 81, 70, 67, 71, 55, 53, 69, 91, 110, 61, 50, 86, 56, 64, 40, 81, 60, 74, 95, 39, 99, 72, 70, 89, 82, 72, 42, 60, 80, 61, 71, 66, 75, 89, 79, 152, 82, 74, 52, 60, 96, 51, 68, 51, 61, 47, 55, 71, 60, 68, 56, 73, 79, 71, 67, 90, 86, 55, 71, 86, 96, 65, 86, 35, 65, 65, 63, 51, 68, 77, 78, 67, 62, 90, 87, 85, 55, 96, 52, 67, 66, 64, 65, 64, 84, 69, 87, 57, 63, 84, 65, 81, 59, 73, 63, 60, 70, 74, 98, 51, 79, 68, 56, 78, 66, 49, 47, 54, 69, 59, 55, 51, 60, 88, 48, 67, 89, 53, 62, 64, 77, 60, 62, 62, 52, 56, 58, 57, 52, 51, 93, 79, 67, 68, 79, 62, 58, 72, 96, 96, 71, 60, 62, 87, 54, 60, 65, 58, 54, 45, 59, 50, 59, 63, 81, 72, 68, 86, 79, 59, 84, 55, 42, 55, 58, 62, 63, 79, 56, 75, 67, 86, 56, 100, 112, 69, 23, 72, 78, 59, 78, 98, 68, 62, 78, 76, 78, 78, 52, 78, 54, 64, 62, 95, 54, 64, 71, 54, 68, 67, 76, 66, 62, 48, 81, 58, 55, 70, 74, 42, 71, 70, 84, 71, 57, 38, 102, 63, 61, 68, 67, 77, 57, 70, 108, 88, 64, 82, 58, 73, 69, 53, 45, 69, 78, 72, 59, 41, 70, 71, 58, 49, 86, 57, 50, 70, 63, 54, 67, 52, 56, 66, 57, 53, 51, 52, 76, 52, 56, 53, 92, 52, 68, 63, 82, 54, 74, 54, 59, 54, 92, 79, 81, 77, 52, 61, 52, 61, 61, 90, 65, 59, 90, 46, 42, 84, 82, 73, 49, 70, 93, 52, 66, 36, 60, 87, 55, 59, 65, 62, 69, 87, 58, 55, 64, 78, 46, 85, 55, 49, 65, 41, 46, 65, 74, 65, 34, 58, 42, 67, 53, 50, 66, 61, 68, 48, 78, 96, 27, 49, 74, 54, 75, 109, 58, 55, 48, 73, 81, 82, 62, 52, 59, 71, 47, 51, 62, 66, 32, 70, 71, 69, 75, 54, 55, 63, 64, 83, 73, 85, 60, 65, 91, 78, 60, 79, 70, 79, 73, 66, 68, 90, 41, 62, 65, 81, 53, 51, 68, 99, 90, 77, 74, 85, 47, 64, 44, 87, 36, 56, 55, 78, 67, 65, 66, 57, 60, 56, 72, 81, 64, 74, 63, 36, 61, 72, 66, 81, 50, 52, 116, 77, 61, 48, 61, 73, 47, 78, 109, 92, 78, 79, 73, 52, 107, 65, 60, 74, 57, 47, 69, 68, 68, 47, 56, 64, 70, 64, 54, 57, 53, 71, 96, 51, 58, 62, 51, 70, 57, 78, 86, 57, 73, 45, 66, 62, 72, 89, 56, 61, 130, 60, 54, 66, 60, 45, 58, 61, 98, 62, 59, 56, 60, 69, 64, 50, 54, 64, 62, 41, 59, 67, 71, 51, 42, 114, 53, 76, 52, 72, 75, 73, 64, 58, 73, 60, 55, 49, 67, 104, 47, 55, 63, 50, 59, 84, 43, 82, 50, 70, 64, 82, 81, 62, 60, 79, 57, 48, 77, 61, 65, 57, 79, 90, 74, 68, 51, 61, 62, 49, 86, 52, 60, 51, 60, 59, 48, 89, 65, 66, 67, 81, 59, 50, 76, 67, 54, 73, 80, 55, 47, 51, 54, 66, 65, 56, 66, 69, 99, 50, 53, 60, 57, 63, 59, 42, 82, 66, 46, 74, 54, 80, 36, 51, 62, 75, 57, 84, 51, 67, 63, 46, 69, 94, 57, 73, 43, 81, 63, 49, 70, 50, 73, 81, 58, 64, 73, 57, 53, 52, 57, 64, 71, 72, 72, 54, 63, 75, 56, 67, 43, 54, 62, 95, 57, 76, 41, 50, 70, 54, 89, 82, 56, 72, 53, 55, 55, 64, 69, 50, 50, 64, 75, 75, 72, 74, 64, 59, 60, 51, 74, 79, 65, 88, 70, 47, 54, 63, 88, 64, 60, 73, 64, 59, 77, 40, 53, 63, 69, 70, 86, 90, 66, 67, 68, 63, 85, 43, 84, 51, 78, 68, 38, 62, 68, 61, 72, 80, 75, 58, 39, 53, 68, 86, 69, 51, 54, 51, 56, 60, 55, 66, 67, 95, 60, 66, 43, 75, 106, 57, 100, 72, 63, 56, 73, 77, 79, 54, 87, 74, 59, 53, 59, 70, 54, 54, 67, 68, 49, 56, 55, 102, 67, 104, 64, 49, 50, 78, 59, 53, 64, 47, 60, 68, 62, 63, 57, 62, 82, 70, 54, 76, 55, 68, 64, 45, 60, 76, 58, 77, 69, 66, 67, 66, 58, 51, 179, 73, 46, 78, 78, 72, 77, 59, 90, 55, 53, 61, 76, 72, 65, 63, 75, 54, 56, 48, 58, 71, 76, 62, 79, 79, 117, 64, 80, 92, 47, 55, 112, 77, 112, 68, 64, 81, 64, 63, 52, 48, 78, 67, 44, 54, 78, 62, 76, 54, 79, 64, 68, 65, 114, 54, 68, 97, 49, 68, 74, 80, 55, 68, 75, 66, 60, 65, 78, 65, 60, 53, 47, 64, 67, 64, 64, 58, 74, 80, 60, 62, 81, 59, 59, 66, 65, 72, 64, 59, 56, 46, 57, 95, 66, 64, 87, 49, 64, 83, 63, 47, 73, 60, 66, 55, 59, 64, 37, 51, 82, 56, 94, 57, 83, 51, 77, 59, 53, 67, 60, 95, 67, 46, 82, 66, 48, 63, 61, 74, 71, 57, 54, 79, 60, 43, 99, 72, 52, 66, 55, 66, 56, 48, 49, 51, 62, 92, 57, 76, 73, 74, 57, 76, 82, 46, 73, 57, 72, 73, 65, 60, 61, 58, 76, 68, 73, 61, 96, 75, 69, 73, 66, 58, 122, 60, 71, 56, 62, 54, 52, 73, 61, 50, 66, 64, 50, 49, 51, 73, 80, 69, 82, 58, 62, 75, 57, 66, 56, 60, 37, 62, 70, 49, 69, 70, 78, 77, 78, 76, 66, 57, 59, 63, 70, 60, 56, 82, 42, 79, 50, 78, 71, 78, 77, 55, 84, 47, 57, 125, 49, 79, 62, 73, 66, 53, 72, 58, 52, 64, 66, 51, 70, 84, 67, 58, 98, 88, 75, 74, 68, 67, 82, 54, 92, 67, 60, 57, 47, 72, 66, 62, 68, 62, 68, 71, 71, 77, 69, 84, 68, 57, 71, 57, 59, 108, 55, 87, 31, 39, 58, 68, 71, 48, 66, 55, 69, 67, 38, 111, 52, 85, 78, 53, 63, 76, 83, 99, 65, 83, 69, 59, 77, 68, 72, 71, 69, 71, 56, 83, 62, 58, 39, 56, 60, 53, 68, 44, 93, 55, 51, 101, 61, 74, 48, 77, 70, 52, 56, 64, 87, 83, 61, 59, 49, 71, 131, 57, 49, 73, 90, 57, 53, 65, 51, 81, 58, 60, 62, 75, 83, 50, 89, 53, 78, 67, 65, 49, 69, 58, 64, 75, 85, 65, 44, 83, 63, 69, 73, 84, 145, 66, 70, 65, 90, 62, 50, 71, 61, 59, 86, 44, 88, 68, 75, 64, 56, 67, 88, 61, 58, 49, 85, 63, 76, 68, 66, 71, 50, 49, 82, 83, 62, 53, 70, 71, 72, 73, 75, 49, 61, 70, 66, 75, 64, 59, 53, 72, 60, 59, 48, 66, 94, 50, 47, 57, 57, 68, 69, 72, 65, 46, 58, 60, 58, 55, 52, 60, 121, 50, 74, 81, 82, 74, 58, 77, 57, 37, 75, 76, 127, 76, 58, 61, 99, 56, 56, 67, 77, 49, 58, 48, 69, 67, 66, 80, 45, 58, 69, 75, 57, 67, 57, 55, 59, 40, 48, 65, 67, 58, 74, 62, 63, 92, 77, 63, 61, 73, 75, 68, 83, 48, 71, 54, 78, 87, 53, 115, 67, 50, 64, 53, 65, 70, 76, 74, 53, 65, 72, 82, 48, 35, 86, 51, 66, 79, 67, 62, 88, 62, 47, 75, 57, 62, 66, 66, 58, 66, 56, 64, 60, 65, 59, 62, 58, 83, 57, 56, 71, 66, 59, 46, 69, 44, 50, 68, 66, 84, 37, 61, 46, 65, 50, 58, 67, 95, 88, 52, 56, 66, 57, 66, 81, 57, 59, 71, 59, 53, 55, 92, 74, 60, 52, 68, 55, 66, 59, 63, 66, 60, 60, 53, 84, 69, 57, 61, 67, 83, 51, 48, 65, 76, 67, 76, 74, 56, 72, 60, 83, 74, 73, 56, 63, 74, 36, 70, 59, 37, 57, 64, 67, 65, 62, 73, 70, 93, 66, 39, 52, 73, 93, 46, 64, 55, 63, 63, 78, 53, 76, 68, 45, 62, 65, 85, 58, 69, 83, 46, 48, 55, 38, 75, 71, 80, 72, 56, 49, 53, 75, 48, 60, 81, 64, 78, 54, 61, 70, 42, 51, 82, 48, 79, 55, 59, 100, 64, 47, 62, 69, 66, 88, 55, 70, 63, 65, 65, 93, 78, 60, 128, 59, 71, 80, 79, 82, 65, 73, 84, 58, 73, 65, 67, 63, 22, 59, 65, 59, 66, 64, 67, 61, 69, 93, 80, 89, 61, 77, 71, 60, 74, 63, 63, 52, 71, 68, 68, 62, 74, 77, 65, 72, 62, 65, 77, 89, 52, 58, 50, 93, 68, 83, 52, 48, 74, 60, 65, 71, 75, 63, 63, 70, 81, 62, 58, 72, 46, 56, 49, 71, 64, 61, 55, 49, 73, 70, 58, 61, 66, 63, 85, 73, 70, 68, 85, 79, 82, 87, 65, 67, 72, 47, 50, 57, 63, 64, 71, 49, 58, 61, 72, 62, 54, 52, 56, 79, 63, 56, 87, 52, 21, 76, 99, 73, 75, 78, 67, 60, 95, 70, 64, 47, 51, 63, 51, 56, 73, 86, 67, 104, 68, 57, 72, 72, 68, 51, 65, 48, 53, 51, 67, 82, 86, 71, 63, 78, 67, 63, 52, 61, 55, 48, 114, 58, 60, 74, 55, 50, 106, 71, 74, 57, 81, 72, 55, 90, 62, 66, 58, 69, 44, 52, 58, 58, 93, 66, 96, 70, 104, 68, 65, 56, 74, 52, 66, 62, 92, 71, 93, 45, 63, 47, 81, 66, 75, 115, 75, 63, 65, 53, 50, 47, 83, 58, 55, 67, 67, 65, 73, 69, 60, 98, 97, 73, 67, 57, 58, 76, 50, 64, 89, 58, 70, 57, 53, 65, 60, 49, 98, 69, 104, 49, 83, 56, 65, 93, 74, 54, 78, 69, 79, 55, 73, 71, 63, 68, 56, 89, 57, 57, 56, 67, 72, 47, 61, 48, 45, 67, 71, 67, 107, 47, 90, 53, 53, 65, 85, 65, 63, 64, 76, 55, 86, 57, 63, 91, 60, 55, 58, 61, 92, 51, 53, 109, 54, 64, 49, 59, 103, 94, 72, 71, 53, 61, 82, 62, 52, 76, 74, 70, 60, 66, 72, 73, 50, 71, 43, 47, 74, 55, 69, 68, 94, 83, 68, 59, 55, 66, 40, 67, 81, 86, 51, 69, 64, 71, 69, 62, 37, 49, 55, 71, 55, 81, 77, 65, 54, 67, 49, 58, 126, 83, 55, 60, 61, 58, 69, 96, 59, 76, 66, 66, 95, 48, 89, 77, 50, 63, 51, 64, 42, 68, 56, 38, 99, 58, 48, 55, 94, 64, 49, 57, 62, 36, 79, 62, 67, 63, 69, 44, 41, 40, 78, 49, 65, 63, 62, 69, 54, 62, 63, 42, 45, 83, 64, 83, 123, 50, 52, 63, 77, 59, 92, 64, 51, 78, 70, 57, 59, 45, 60, 60, 40, 52, 50, 47, 58, 42, 46, 66, 59, 87, 66, 74, 58, 73, 60, 74, 36, 78, 80, 69, 81, 54, 47, 84, 74, 63, 96, 53, 67, 71, 63, 62, 53, 67, 75, 87, 69, 101, 55, 59, 55, 84, 88, 72, 98, 84, 38, 81, 60, 53, 77, 116, 51, 65, 76, 25, 74, 46, 66, 78, 70, 66, 58, 55, 66, 56, 56, 47, 109, 56, 32, 76, 50, 67, 60, 80, 60, 86, 65, 74, 62, 145, 85, 77, 51, 52, 59, 64, 88, 102, 55, 87, 50, 108, 74, 53, 63, 68, 56, 57, 65, 80, 60, 58, 63, 82, 36, 50, 53, 81, 54, 54, 77, 69, 57, 49, 81, 73, 73, 57, 62, 65, 54, 108, 66, 44, 49, 68, 63, 64, 60, 75, 81, 57, 49, 42, 62, 75, 51, 62, 60, 85, 92, 57, 72, 62, 49, 92, 69, 71, 55, 76, 109, 73, 61, 42, 57, 101, 53, 84, 49, 57, 54, 87, 63, 52, 71, 52, 64, 97, 100, 69, 52, 68, 116, 74, 56, 93, 59, 65, 66, 97, 51, 58, 62, 61, 48, 56, 52, 69, 56, 62, 54, 66, 81, 64, 60, 50, 58, 38, 34, 53, 73, 55, 67, 76, 58, 119, 65, 49, 41, 59, 62, 67, 69, 60, 80, 52, 71, 60, 60, 71, 52, 60, 46, 100, 74, 48, 55, 70, 48, 57, 59, 85, 114, 63, 38, 87, 90, 117, 63, 64, 54, 68, 57, 57, 78, 65, 51, 59, 59, 67, 51, 76, 46, 57, 67, 44, 75, 51, 41, 65, 70, 64, 68, 80, 87, 56, 82, 59, 62, 55, 77, 80, 76, 53, 68, 64, 69, 48, 72, 61, 65, 47, 55, 52, 35, 67, 65, 44, 53, 45, 57, 53, 46, 62, 68, 51, 60, 92, 51, 58, 57, 69, 65, 62, 63, 73, 63, 62, 47, 65, 58, 56, 79, 86, 73, 57, 60, 63, 57, 61, 71, 74, 56, 55, 53, 74, 71, 56, 77, 54, 54, 42, 67, 61, 78, 53, 77, 62, 63, 77, 105, 63, 96, 56, 53, 54, 54, 87, 76, 63, 78, 28, 82, 60, 79, 66, 94, 69, 49, 72, 46, 55, 67, 63, 94, 67, 64, 131, 53, 60, 63, 68, 61, 62, 70, 69, 84, 47, 67, 71, 83, 53, 51, 89, 52, 95, 68, 79, 68, 56, 59, 56, 80, 54, 78, 65, 184, 81, 60, 48, 56, 50, 49, 64, 51, 65, 66, 53, 66, 96, 64, 63, 70, 60, 74, 66, 60, 47, 83, 62, 78, 59, 82, 81, 63, 83, 77, 63, 59, 56, 50, 51, 70, 80, 85, 71, 91, 66, 54, 89, 48, 70, 48, 83, 55, 53, 70, 64, 123, 66, 66, 54, 69, 69, 48, 39, 65, 79, 64, 77, 65, 81, 71, 118, 50, 101, 64, 60, 59, 62, 64, 66, 64, 51, 72, 55, 61, 71, 69, 69, 77, 67, 58, 58, 57, 90, 88, 62, 104, 65, 83, 86, 69, 78, 64, 96, 52, 79, 66, 61, 82, 66, 71, 121, 43, 76, 83, 64, 62, 64, 57, 60, 67, 68, 52, 57, 67, 59, 59, 85, 61, 52, 53, 46, 74, 72, 121, 84, 60, 68, 53, 87, 67, 84, 85, 75, 51, 34, 69, 60, 69, 61, 66, 57, 46, 76, 62, 63, 73, 49, 68, 63, 91, 49, 60, 53, 53, 67, 77, 49, 70, 72, 92, 51, 58, 50, 59, 68, 69, 51, 65, 68, 78, 83, 65, 79, 67, 53, 69, 72, 90, 63, 84, 47, 54, 58, 70, 61, 70, 80, 75, 47, 82, 63, 52, 56, 51, 43, 60, 50, 119, 57, 115, 69, 77, 69, 68, 83, 83, 54, 32, 62, 82, 59, 55, 57, 72, 59, 47, 62, 58, 104, 76, 67, 71, 50, 60, 105, 54, 51, 55, 71, 70, 61, 70, 51, 58, 101, 71, 79, 78, 53, 51, 89, 48, 68, 62, 58, 76, 73, 52, 100, 57, 104, 51, 63, 69, 56, 50, 59, 58, 42, 83, 61, 54, 55, 58, 71, 62, 43, 75, 93, 49, 53, 48, 68, 47, 56, 62, 62, 72, 35, 53, 65, 98, 51, 64, 57, 65, 47, 66, 102, 80, 60, 54, 53, 59, 76, 71, 70, 44, 84, 74, 72, 45, 73, 77, 50, 78, 59, 65, 44, 59, 82, 78, 75, 67, 57, 69, 53, 53, 48, 57, 78, 92, 56, 78, 97, 74, 73, 49, 64, 72, 73, 48, 65, 72, 50, 64, 59, 73, 84, 67, 58, 51, 77, 71, 75, 71, 96, 87, 74, 56, 62, 78, 59, 71, 79, 49, 69, 75, 53, 52, 97, 62, 69, 58, 75, 57, 77, 94, 73, 81, 110, 97, 76, 100, 64, 74, 61, 67, 63, 75, 79, 81, 54, 104, 68, 52, 46, 48, 78, 49, 60, 71, 56, 64, 62, 82, 54, 62, 85, 54, 46, 61, 112, 66, 36, 65, 47, 65, 60, 56, 45, 68, 44, 61, 74, 50, 64, 91, 68, 51, 79, 57, 55, 83, 70, 40, 61, 48, 58, 73, 59, 84, 44, 55, 45, 44, 62, 69, 46, 57, 99, 63, 37, 84, 72, 63, 62, 68, 61, 46, 49, 60, 52, 80, 80, 58, 109, 45, 77, 68, 45, 82, 77, 90, 54, 74, 63, 66, 81, 52, 88, 85, 46, 70, 56, 51, 54, 81, 41, 68, 69, 46, 76, 63, 81, 66, 58, 57, 69, 50, 82, 69, 111, 88, 102, 51, 55, 78, 62, 73, 60, 68, 55, 68, 65, 57, 82, 93, 68, 61, 50, 54, 54, 64, 66, 89, 73, 71, 65, 67, 82, 82, 49, 64, 60, 81, 56, 32, 74, 59, 71, 38, 67, 78, 37, 50, 63, 54, 75, 74, 66, 81, 57, 56, 63, 86, 66, 58, 47, 53, 53, 72, 63, 84, 62, 63, 90, 70, 53, 96, 78, 135, 61, 53, 60, 57, 55, 62, 50, 61, 101, 71, 72, 72, 57, 39, 58, 64, 59, 49, 56, 63, 83, 69, 81, 72, 46, 44, 67, 73, 32, 72, 62, 103, 47, 56, 64, 66, 78, 74, 66, 70, 75, 71, 61, 53, 43, 70, 65, 82, 57, 61, 51, 56, 76, 56, 75, 51, 57, 71, 58, 52, 93, 92, 70, 49, 55, 70, 57, 48, 49, 86, 75, 73, 94, 72, 57, 74, 47, 94, 51, 54, 84, 62, 83, 51, 47, 67, 64, 60, 66, 95, 77, 69, 55, 84, 50, 124, 57, 74, 67, 64, 73, 54, 106, 72, 84, 58, 51, 93, 63, 62, 66, 63, 78, 59, 81, 65, 73, 202, 65, 55, 62, 82, 68, 66, 73, 65, 76, 72, 74, 62, 75, 56, 53, 82, 80, 55, 67, 76, 52, 63, 71, 67, 79, 90, 56, 78, 92, 87, 61, 91, 61, 55, 105, 66, 35, 62, 75, 57, 49, 47, 68, 68, 62, 68, 63, 61, 66, 73, 64, 78, 76, 38, 65, 83, 62, 94, 52, 77, 77, 71, 61, 50, 62, 78, 50, 48, 68, 70, 106, 63, 76, 71, 56, 66, 56, 70, 55, 51, 103, 47, 83, 53, 85, 51, 69, 75, 77, 75, 93, 63, 87, 130, 45, 67, 39, 57, 66, 92, 61, 87, 52, 59, 51, 66, 35, 57, 45, 48, 35, 46, 55, 40, 66, 57, 74, 79, 57, 54, 50, 73, 62, 63, 30, 71, 44, 70, 53, 119, 68, 46, 69, 117, 77, 62, 55, 70, 81, 48, 60, 66, 74, 78, 53, 59, 83, 56, 60, 62, 52, 76, 65, 87, 54, 43, 70, 49, 54, 70, 55, 53, 65, 64, 61, 77, 110, 72, 58, 76, 58, 91, 90, 62, 37, 64, 66, 64, 59, 101, 44, 76, 110, 47, 57, 54, 68, 73, 87, 81, 70, 53, 88, 77, 58, 72, 57, 69, 53, 67, 48, 52, 108, 50, 58, 59, 77, 68, 46, 62, 104, 68, 79, 57, 93, 75, 55, 71, 67, 52, 89, 58, 58, 61, 65, 83, 73, 74, 68, 67, 69, 61, 62, 62, 87, 69, 45, 76, 55, 54, 57, 61, 66, 79, 71, 54, 62, 74, 46, 59, 41, 69, 43, 63, 69, 102, 97, 57, 62, 58, 57, 55, 59, 53, 61, 63, 61, 52, 51, 80, 68, 52, 64, 88, 117, 72, 84, 64, 74, 85, 90, 52, 38, 67, 86, 57, 83, 67, 68, 55, 65, 45, 64, 50, 66, 61, 70, 56, 55, 68, 59, 44, 88, 64, 77, 86, 47, 70, 54, 62, 64, 70, 75, 44, 78, 67, 51, 72, 70, 66, 70, 72, 47, 83, 71, 72, 63, 68, 58, 62, 47, 57, 73, 91, 67, 67, 68, 59, 61, 65, 73, 50, 74, 61, 73, 72, 85, 53, 75, 50, 63, 97, 76, 69, 74, 61, 109, 44, 57, 65, 55, 56, 67, 74, 66, 110, 138, 51, 64, 67, 48, 77, 80, 79, 50, 80, 131, 43, 78, 77, 78, 82, 67, 60, 53, 66, 103, 54, 66, 112, 62, 59, 51, 80, 61, 62, 64, 70, 58, 60, 58, 89, 68, 65, 90, 61, 45, 92, 63, 71, 88, 62, 59, 85, 43, 46, 96, 63, 94, 64, 82, 52, 61, 61, 79, 76, 51, 73, 69, 40, 66, 72, 80, 73, 65, 63, 70, 67, 81, 73, 63, 67, 73, 61, 58, 74, 73, 63, 31, 88, 70, 54, 76, 65, 80, 75, 59, 105, 71, 63, 54, 37, 44, 60, 86, 66, 76, 80, 76, 66, 66, 52, 61, 61, 72, 71, 61, 67, 71, 69, 61, 63, 106, 76, 68, 70, 70, 55, 63, 75, 52, 41, 50, 60, 78, 45, 99, 48, 50, 80, 49, 56, 83, 61, 77, 55, 56, 56, 69, 95, 74, 104, 44, 56, 61, 57, 50, 91, 72, 79, 65, 71, 74, 39, 55, 72, 60, 64, 55, 66, 67, 58, 92, 62, 58, 64, 60, 68, 68, 80, 66, 56, 83, 58, 62, 92, 51, 79, 112, 55, 98, 44, 62, 60, 68, 66, 54, 50, 62, 75, 74, 76, 63, 87, 53, 77, 63, 72, 43, 80, 82, 62, 58, 78, 62, 84, 86, 60, 57, 61, 67, 68, 70, 63, 40, 42, 59, 74, 68, 90, 65, 63, 57, 50, 67, 57, 44, 73, 39, 76, 61, 56, 82, 81, 82, 55, 53, 67, 57, 66, 96, 58, 71, 73, 57, 61, 40, 74, 57, 55, 62, 74, 61, 80, 53, 51, 68, 58, 66, 60, 64, 79, 75, 69, 64, 74, 67, 69, 67, 59, 110, 66, 51, 50, 55, 65, 63, 77, 74, 62, 50, 71, 51, 76, 46, 64, 69, 79, 72, 55, 56, 96, 71, 95, 68, 76, 60, 51, 50, 66, 64, 63, 65, 73, 57, 66, 51, 79, 47, 61, 149, 55, 43, 55, 151, 54, 65, 67, 87, 74, 60, 60, 75, 87, 47, 66, 72, 77, 61, 107, 53, 95, 66, 57, 64, 45, 72, 55, 55, 80, 58, 54, 50, 49, 59, 74, 73, 62, 68, 59, 41, 73, 84, 92, 81, 68, 42, 62, 69, 74, 63, 65, 70, 62, 80, 61, 64, 78, 104, 72, 78, 81, 58, 76, 62, 54, 64, 57, 58, 41, 90, 51, 70, 53, 52, 62, 62, 80, 78, 50, 64, 80, 59, 57, 65, 44, 65, 61, 67, 75, 72, 74, 67, 46, 66, 43, 45, 59, 70, 40, 92, 92, 82, 55, 66, 44, 55, 83, 53, 85, 75, 61, 71, 72, 56, 66, 66, 69, 78, 52, 74, 57, 72, 57, 63, 62, 67, 71, 52, 57, 56, 48, 64, 53, 36, 51, 62, 72, 56, 73, 77, 85, 75, 58, 63, 53, 66, 68, 99, 76, 62, 80, 63, 60, 48, 89, 39, 72, 57, 62, 70, 78, 49, 59, 67, 74, 55, 102, 74, 90, 51, 60, 73, 84, 69, 61, 46, 67, 69, 67, 68, 60, 50, 71, 52, 71, 56, 66, 66, 62, 63, 69, 68, 64, 49, 46, 65, 53, 55, 57, 67, 65, 90, 85, 58, 74, 78, 55, 59, 76, 29, 55, 68, 53, 57, 64, 65, 41, 50, 63, 86, 81, 53, 63, 63, 67, 58, 54, 60, 73, 59, 106, 78, 58, 82, 55, 74, 53, 46, 57, 72, 64, 74, 56, 52, 66, 58, 67, 91, 62, 76, 84, 82, 71, 88, 58, 65, 36, 44, 65, 56, 78, 67, 84, 59, 67, 73, 59, 73, 38, 61, 70, 81, 85, 62, 68, 84, 68, 54, 60, 47, 72, 47, 68, 68, 128, 59, 66, 50, 59, 60, 42, 70, 63, 83, 79, 57, 66, 75, 60, 86, 110, 75, 58, 48, 70, 77, 56, 142, 67, 68, 72, 86, 40, 53, 55, 70, 77, 55, 52, 80, 60, 75, 69, 109, 73, 58, 54, 56, 74, 48, 87, 69, 83, 51, 52, 73, 90, 60, 62, 64, 66, 74, 52, 67, 59, 68, 60, 55, 53, 62, 50, 60, 59, 71, 85, 51, 66, 59, 60, 63, 98, 71, 67, 65, 57, 69, 50, 81, 55, 46, 65, 74, 62, 77, 52, 107, 54, 68, 56, 56, 60, 52, 86, 76, 64, 76, 66, 63, 62, 74, 50, 74, 54, 74, 64, 87, 84, 53, 45, 75, 72, 54, 51, 67, 60, 70, 55, 57, 69, 75, 74, 61, 67, 57, 58, 101, 57, 76, 68, 77, 51, 76, 77, 58, 54, 75, 71, 54, 83, 48, 78, 61, 76, 62, 33, 57, 63, 44, 76, 64, 70, 62, 59, 66, 51, 57, 47, 123, 90, 71, 63, 98, 68, 60, 51, 90, 61, 82, 59, 77, 60, 45, 50, 52, 76, 56, 69, 76, 75, 40, 54, 86, 61, 62, 73, 60, 84, 80, 87, 70, 58, 80, 88, 88, 68, 62, 87, 56, 69, 60, 50, 59, 58, 52, 59, 64, 44, 48, 78, 53, 75, 52, 70, 73, 64, 38, 72, 79, 107, 57, 53, 76, 68, 55, 63, 67, 76, 76, 76, 53, 52, 70, 74, 54, 89, 71, 58, 54, 49, 77, 63, 59, 57, 63, 62, 98, 50, 61, 62, 64, 81, 92, 50, 62, 48, 40, 57, 81, 76, 64, 78, 77, 69, 44, 67, 75, 82, 61, 54, 78, 68, 57, 60, 69, 65, 70, 56, 79, 76, 75, 35, 60, 62, 69, 68, 46, 70, 65, 73, 39, 73, 79, 69, 65, 49, 94, 55, 58, 74, 63, 61, 59, 77, 76, 70, 64, 72, 62, 70, 72, 60, 71, 72, 67, 60, 74, 50, 60, 53, 78, 67, 63, 50, 43, 66, 74, 68, 55, 67, 47, 59, 79, 77, 71, 56, 69, 65, 78, 70, 92, 73, 59, 49, 53, 77, 65, 73, 79, 64, 65, 56, 107, 68, 50, 69, 83, 45, 60, 62, 55, 86, 67, 53, 67, 54, 66, 61, 58, 65, 54, 79, 80, 57, 56, 73, 89, 65, 39, 76, 69, 72, 79, 80, 57, 59, 49, 92, 66, 61, 62, 52, 63, 42, 103, 76, 39, 55, 58, 66, 59, 53, 70, 56, 164, 62, 55, 89, 65, 54, 52, 71, 79, 66, 62, 47, 76, 48, 65, 47, 68, 86, 53, 57, 60, 76, 58, 63, 76, 110, 49, 53, 66, 58, 39, 69, 89, 60, 49, 78, 54, 54, 60, 85, 87, 76, 65, 69, 55, 50, 66, 48, 59, 54, 65, 63, 63, 57, 45, 63, 62, 39, 67, 68, 97, 63, 58, 42, 66, 59, 59, 63, 69, 68, 65, 67, 58, 71, 73, 80, 72, 59, 70, 62, 66, 62, 59, 62, 65, 84, 77, 57, 72, 81, 64, 46, 78, 51, 81, 61, 49, 59, 67, 59, 79, 59, 64, 42, 51, 73, 85, 61, 73, 61, 61, 40, 76, 71, 73, 73, 67, 75, 54, 59, 59, 76, 55, 53, 46, 55, 123, 53, 61, 113, 46, 73, 55, 52, 70, 60, 54, 62, 61, 78, 61, 89, 108, 90, 67, 51, 118, 48, 82, 66, 66, 70, 100, 48, 57, 73, 123, 63, 75, 63, 76, 67, 80, 74, 62, 54, 71, 78, 79, 52, 73, 64, 46, 62, 49, 75, 65, 65, 57, 64, 104, 57, 64, 67, 69, 66, 59, 39, 66, 62, 89, 51, 72, 63, 53, 66, 71, 66, 54, 77, 67, 82, 124, 73, 51, 73, 59, 62, 63, 72, 69, 67, 71, 57, 64, 64, 55, 42, 82, 56, 76, 52, 51, 62, 131, 73, 45, 48, 68, 90, 72, 67, 71, 111, 70, 50, 49, 48, 69, 73, 94, 64, 40, 69, 86, 64, 54, 60, 98, 73, 67, 47, 45, 57, 87, 64, 78, 98, 64, 59, 54, 55, 109, 70, 51, 65, 68, 69, 67, 62, 57, 96, 67, 61, 58, 66, 52, 69, 65, 102, 77, 64, 60, 50, 70, 54, 61, 75, 65, 61, 68, 83, 69, 48, 75, 39, 68, 58, 84, 106, 86, 63, 44, 64, 59, 64, 93, 66, 75, 64, 65, 60, 49, 46, 71, 79, 65, 85, 74, 63, 60, 85, 65, 60, 50, 65, 87, 66, 69, 56, 63, 58, 65, 62, 59, 53, 52, 70, 43, 49, 69, 60, 96, 53, 48, 62, 70, 50, 68, 122, 61, 59, 74, 65, 69, 66, 67, 54, 57, 76, 81, 61, 58, 68, 61, 65, 58, 87, 65, 104, 72, 60, 82, 65, 71, 78, 59, 45, 69, 58, 64, 71, 80, 69, 58, 90, 58, 61, 52, 87, 47, 63, 72, 61, 63, 58, 62, 66, 72, 67, 71, 64, 84, 55, 65, 67, 61, 59, 70, 78, 72, 66, 97, 76, 57, 59, 65, 51, 75, 74, 52, 64, 74, 58, 69, 49, 58, 60, 89, 48, 63, 65, 83, 59, 83, 86, 68, 93, 55, 78, 64, 62, 67, 61, 52, 59, 64, 138, 89, 66, 61, 69, 53, 41, 71, 82, 78, 59, 56, 69, 65, 56, 49, 50, 53, 56, 54, 68, 81, 68, 64, 71, 60, 58, 79, 60, 65, 64, 63, 94, 67, 64, 72, 73, 76, 56, 67, 69, 54, 57, 61, 51, 56, 61, 73, 61, 74, 70, 95, 48, 49, 54, 45, 71, 52, 48, 109, 76, 63, 87, 68, 61, 82, 100, 72, 62, 56, 52, 94, 65, 62, 60, 73, 68, 49, 55, 93, 64, 63, 89, 47, 76, 77, 67, 70, 67, 50, 78, 57, 114, 56, 63, 60, 116, 58, 124, 63, 62, 63, 61, 62, 75, 57, 75, 55, 54, 47, 69, 71, 67, 88, 105, 78, 66, 85, 69, 65, 79, 56, 66, 44, 55, 84, 88, 102, 59, 66, 57, 57, 75, 61, 65, 82, 74, 64, 63, 52, 64, 62, 75, 58, 53, 73, 64, 65, 70, 77, 79, 53, 60, 60, 65, 64, 57, 68, 74, 81, 76, 38, 84, 70, 63, 50, 66, 66, 42, 51, 68, 81, 75, 66, 62, 52, 75, 69, 78, 57, 67, 51, 78, 56, 61, 60, 43, 61, 67, 61, 57, 76, 88, 67, 84, 60, 59, 114, 69, 89, 68, 80, 61, 59, 58, 62, 64, 60, 74, 69, 53, 56, 69, 63, 59, 45, 57, 77, 60, 46, 129, 51, 72, 50, 74, 72, 75, 54, 65, 54, 58, 75, 83, 61, 63, 62, 68, 50, 63, 90, 57, 62, 61, 64, 59, 44, 66, 58, 64, 72, 58, 65, 85, 61, 66, 57, 59, 58, 59, 64, 90, 67, 53, 65, 60, 67, 84, 78, 65, 66, 85, 58, 84, 68, 44, 59, 59, 74, 58, 64, 62, 63, 73, 81, 78, 69, 63, 65, 53, 53, 42, 67, 81, 72, 58, 63, 79, 56, 44, 59, 63, 57, 56, 63, 75, 60, 78, 51, 49, 61, 60, 85, 76, 62, 63, 52, 70, 71, 72, 58, 59, 68, 67, 72, 77, 73, 68, 51, 69, 72, 88, 69, 61, 60, 75, 75, 80, 75, 50, 63, 84, 57, 52, 89, 61, 60, 49, 58, 55, 76, 87, 57, 83, 65, 84, 83, 66, 65, 59, 70, 64, 72, 54, 57, 53, 74, 65, 84, 77, 92, 83, 58, 53, 62, 59, 61, 56, 59, 83, 66, 70, 75, 60, 63, 56, 79, 66, 72, 74, 111, 88, 64, 67, 75, 51, 59, 71, 55, 78, 67, 67, 70, 60, 69, 69, 76, 61, 65, 65, 64, 46, 65, 81, 68, 75, 67, 54, 70, 58, 65, 59, 70, 70, 63, 77, 74, 45, 79, 53, 68, 62, 70, 56, 48, 57, 62, 77, 67, 65, 76, 77, 66, 71, 61, 68, 66, 45, 81, 56, 62, 66, 69, 55, 51, 81, 73, 64, 100, 67, 56, 86, 68, 64, 76, 64, 65, 73, 82, 48, 58, 55, 62, 76, 79, 77, 68, 64, 68, 59, 79, 85, 52, 79, 71, 75, 52, 42, 60, 56, 67, 79, 66, 56, 80, 48, 59, 72, 71, 58, 47, 73, 52, 65, 60, 62, 87, 56, 73, 85, 74, 63, 51, 57, 54, 65, 67, 60, 47, 61, 75, 62, 65, 66, 58, 63, 62, 74, 70, 52, 67, 43, 50, 56, 57, 116, 81, 54, 87, 34, 69, 48, 58, 68, 71, 75, 69, 74, 68, 63, 61, 76, 71, 64, 80, 70, 50, 69, 56, 54, 77, 48, 75, 68, 55, 61, 61, 63, 57, 54, 70, 69, 49, 69, 55, 89, 74, 58, 63, 42, 73, 51, 69, 74, 59, 45, 52, 61, 62, 69, 62, 64, 56, 63, 62, 74, 85, 51, 73, 73, 58, 64, 66, 64, 58, 84, 69, 55, 81, 63, 71, 99, 60, 66, 77, 44, 70, 61, 76, 39, 89, 89, 52, 57, 60, 73, 65, 55, 60, 58, 57, 52, 64, 69, 103, 54, 71, 85, 75, 56, 62, 78, 73, 78, 57, 72, 66, 74, 71, 77, 61, 57, 54, 62, 78, 56, 64, 65, 85, 59, 79, 73, 67, 52, 57, 81, 64, 60, 66, 73, 65, 70, 61, 71, 65, 60, 65, 85, 66, 50, 66, 72, 73, 52, 66, 78, 71, 61, 69, 102, 64, 61, 75, 64, 72, 60, 63, 58, 52, 46, 68, 74, 71, 51, 55, 71, 64, 86, 67, 71, 80, 55, 51, 71, 80, 90, 64, 93, 65, 66, 54, 66, 56, 82, 56, 61, 71, 66, 48, 70, 64, 61, 93, 62, 78, 62, 48, 91, 55, 55, 85, 59, 77, 57, 53, 54, 59, 60, 81, 74, 76, 65, 54, 52, 66, 74, 58, 79, 72, 82, 53, 84, 51, 61, 53, 57, 80, 77, 77, 61, 64, 115, 62, 68, 81, 65, 71, 72, 66, 58, 56, 64, 57, 73, 77, 56, 63, 70, 63, 95, 65, 52, 60, 83, 62, 74, 64, 47, 61, 60, 65, 71, 74, 66, 69, 58, 60, 85, 63, 69, 55, 71, 51, 59, 85, 57, 62, 69, 67, 57, 59, 64, 52, 61, 59, 68, 57, 65, 65, 63, 73, 66, 55, 55, 57, 77, 52, 55, 49, 55, 65, 52, 87, 75, 73, 49, 58, 82, 74, 65, 45, 91, 83, 54, 104, 51, 87, 91, 62, 67, 49, 62, 41, 84, 90, 68, 54, 47, 117, 73, 42, 88, 66, 71, 55, 47, 66, 56, 71, 109, 55, 50, 71, 55, 62, 58, 54, 41, 65, 61, 60, 56, 74, 74, 37, 51, 78, 93, 61, 105, 57, 61, 70, 116, 70, 52, 51, 66, 68, 57, 53, 59, 94, 59, 69, 70, 95, 51, 60, 54, 47, 70, 68, 52, 90, 65, 60, 62, 54, 90, 50, 82, 44, 55, 42, 55, 62, 66, 57, 48, 63, 52, 58, 52, 67, 55, 49, 54, 57, 66, 64, 80, 61, 57, 46, 98, 48, 54, 56, 78, 107, 51, 75, 50, 56, 76, 99, 41, 62, 58, 52, 74, 83, 70, 99, 53, 95, 54, 63, 75, 59, 71, 67, 69, 60, 69, 76, 75, 67, 68, 63, 65, 46, 54, 70, 61, 76, 126, 60, 76, 61, 58, 76, 50, 95, 72, 53, 44, 70, 86, 63, 54, 37, 54, 46, 60, 50, 78, 57, 54, 79, 84, 75, 55, 77, 59, 71, 62, 45, 79, 65, 86, 51, 60, 74, 46, 60, 68, 57, 44, 70, 50, 48, 56, 65, 84, 61, 60, 67, 64, 57, 70, 64, 69, 61, 62, 56, 60, 55, 52, 62, 59, 61, 61, 60, 82, 80, 74, 62, 67, 60, 76, 79, 63, 67, 52, 67, 57, 70, 44, 77, 107, 109, 81, 70, 56, 67, 65, 58, 76, 64, 56, 74, 43, 50, 51, 121, 52, 72, 48, 84, 74, 63, 45, 64, 38, 114, 73, 95, 70, 66, 58, 81, 59, 64, 61, 123, 73, 43, 66, 58, 63, 46, 76, 64, 34, 74, 73, 92, 54, 78, 100, 58, 73, 77, 61, 56, 82, 65, 61, 76, 60, 63, 112, 70, 54, 60, 116, 73, 37, 68, 61, 62, 50, 49, 59, 61, 68, 79, 58, 74, 63, 64, 56, 51, 50, 61, 63, 57, 92, 55, 34, 54, 91, 62, 63, 158, 83, 68, 76, 63, 51, 63, 63, 60, 66, 81, 62, 91, 62, 83, 51, 63, 61, 57, 89, 78, 77, 56, 40, 69, 57, 47, 87, 61, 52, 64, 44, 38, 54, 53, 75, 52, 62, 71, 69, 93, 56, 71, 74, 47, 84, 81, 81, 61, 76, 69, 59, 53, 68, 57, 47, 91, 51, 68, 75, 81, 75, 47, 66, 75, 68, 67, 91, 81, 79, 68, 76, 73, 58, 54, 65, 75, 70, 44, 72, 65, 73, 66, 57, 39, 70, 53, 52, 95, 86, 56, 49, 81, 38, 71, 53, 77, 49, 64, 57, 54, 71, 69, 59, 56, 57, 75, 67, 43, 46, 63, 93, 76, 54, 49, 68, 63, 77, 93, 68, 80, 58, 69, 75, 68, 77, 77, 61, 78, 151, 75, 80, 56, 62, 47, 58, 64, 65, 43, 60, 59, 67, 64, 55, 65, 53, 53, 44, 76, 60, 71, 61, 45, 97, 64, 58, 47, 66, 74, 35, 70, 53, 68, 80, 59, 129, 93, 71, 54, 72, 64, 54, 49, 84, 55, 51, 61, 118, 73, 61, 83, 77, 77, 79, 81, 67, 62, 61, 66, 77, 62, 91, 71, 85, 79, 60, 55, 79, 50, 76, 62, 59, 64, 64, 66, 55, 76, 77, 91, 60, 66, 71, 62, 58, 75, 66, 62, 41, 62, 72, 54, 45, 72, 51, 53, 82, 61, 46, 72, 66, 64, 61, 75, 54, 81, 58, 78, 82, 72, 57, 63, 69, 59, 72, 65, 72, 72, 78, 83, 100, 45, 75, 82, 76, 59, 66, 82, 60, 63, 86, 48, 57, 93, 60, 50, 49, 59, 57, 71, 43, 71, 50, 74, 93, 43, 99, 59, 51, 57, 55, 83, 63, 53, 116, 51, 54, 52, 59, 68, 56, 75, 59, 43, 79, 55, 73, 67, 53, 84, 68, 62, 56, 63, 51, 75, 65, 52, 62, 55, 80, 92, 71, 60, 52, 61, 70, 51, 63, 70, 75, 73, 84, 49, 72, 74, 50, 58, 85, 51, 56, 50, 71, 51, 104, 48, 45, 49, 59, 101, 86, 60, 74, 111, 81, 67, 69, 59, 59, 76, 56, 66, 56, 46, 52, 40, 52, 56, 49, 78, 71, 54, 53, 51, 54, 102, 62, 59, 68, 65, 53, 39, 74, 52, 82, 92, 62, 76, 73, 73, 61, 80, 77, 56, 65, 67, 68, 61, 94, 48, 65, 41, 60, 61, 85, 62, 36, 55, 60, 80, 41, 44, 100, 43, 66, 50, 67, 50, 71, 83, 129, 57, 70, 72, 71, 84, 87, 96, 58, 75, 86, 65, 97, 80, 64, 67, 71, 64, 55, 85, 103, 52, 61, 57, 79, 60, 60, 69, 48, 79, 48, 54, 55, 62, 68, 51, 59, 44, 86, 61, 59, 81, 69, 72, 103, 71, 62, 49, 69, 69, 59, 83, 53, 42, 71, 83, 53, 59, 66, 71, 71, 59, 69, 73, 95, 58, 57, 53, 104, 84, 72, 65, 91, 92, 71, 65, 71, 84, 70, 73, 72, 70, 78, 96, 53, 59, 75, 56, 74, 78, 52, 63, 84, 87, 61, 60, 58, 101, 68, 72, 65, 98, 63, 53, 53, 57, 46, 94, 65, 94, 139, 49, 67, 46, 63, 84, 74, 79, 60, 61, 63, 85, 51, 60, 35, 94, 94, 56, 62, 58, 59, 69, 40, 47, 78, 49, 54, 44, 57, 61, 62, 67, 59, 80, 82, 70, 51, 72, 71, 51, 61, 80, 94, 64, 79, 102, 60, 62, 71, 81, 64, 86, 72, 98, 90, 52, 47, 61, 59, 63, 79, 62, 48, 83, 81, 60, 80, 60, 88, 54, 64, 64, 64, 67, 69, 60, 66, 65, 59, 69, 62, 49, 64, 88, 47, 83, 50, 139, 64, 63, 67, 63, 53, 61, 41, 60, 73, 87, 78, 44, 74, 50, 50, 66, 85, 114, 78, 47, 56, 67, 74, 78, 53, 54, 89, 45, 78, 70, 78, 69, 67, 48, 50, 59, 81, 44, 84, 109, 84, 58, 58, 43, 82, 55, 56, 60, 65, 79, 40, 53, 91, 73, 63, 55, 64, 51, 68, 60, 78, 71, 86, 47, 70, 76, 56, 72, 73, 123, 78, 70, 39, 57, 61, 38, 62, 82, 98, 65, 55, 84, 74, 74, 64, 69, 48, 64, 87, 69, 77, 49, 69, 48, 65, 78, 66, 64, 51, 64, 82, 60, 79, 75, 71, 51, 60, 36, 65, 78, 57, 73, 88, 46, 48, 77, 62, 52, 79, 81, 109, 76, 69, 56, 71, 52, 62, 90, 47, 93, 71, 51, 68, 61, 58, 64, 86, 77, 66, 50, 82, 66, 64, 61, 87, 66, 91, 55, 83, 55, 48, 72, 48, 75, 59, 68, 76, 75, 58, 67, 48, 56, 57, 68, 74, 74, 51, 57, 67, 66, 85, 80, 83, 62, 64, 56, 79, 70, 67, 65, 73, 45, 54, 54, 61, 71, 57, 59, 55, 60, 73, 60, 70, 64, 48, 53, 94, 66, 72, 62, 72, 97, 80, 48, 52, 72, 71, 100, 59, 77, 51, 48, 61, 89, 71, 80, 75, 76, 76, 73, 69, 84, 96, 74, 86, 55, 66, 69, 66, 72, 57, 71, 90, 55, 93, 51, 52, 71, 93, 74, 70, 45, 47, 90, 46, 58, 97, 64, 68, 61, 42, 52, 65, 50, 75, 60, 36, 61, 44, 53, 58, 87, 68, 57, 40, 60, 67, 67, 59, 48, 58, 55, 76, 57, 65, 64, 60, 56, 74, 52, 52, 81, 52, 81, 67, 71, 77, 55, 75, 46, 83, 51, 68, 61, 45, 69, 44, 64, 58, 53, 56, 98, 62, 40, 67, 65, 56, 44, 83, 87, 64, 51, 41, 64, 52, 70, 52, 74, 68, 73, 73, 51, 69, 75, 69, 75, 58, 50, 70, 74, 57, 44, 42, 71, 64, 61, 60, 113, 68, 71, 60, 66, 52, 79, 53, 55, 51, 95, 95, 59, 66, 78, 93, 69, 87, 63, 65, 93, 71, 60, 66, 80, 63, 60, 58, 71, 57, 81, 58, 86, 47, 67, 56, 85, 56, 56, 62, 83, 78, 64, 48, 56, 79, 85, 106, 66, 83, 53, 122, 100, 83, 54, 58, 45, 61, 64, 52, 71, 94, 60, 65, 58, 93, 55, 68, 81, 42, 52, 53, 80, 75, 58, 63, 56, 77, 45, 60, 103, 76, 67, 59, 64, 75, 57, 85, 85, 54, 78, 90, 36, 64, 59, 76, 58, 67, 62, 59, 65, 98, 56, 78, 44, 71, 60, 48, 58, 60, 41, 68, 66, 57, 78, 66, 68, 55, 77, 49, 123, 39, 62, 80, 56, 72, 76, 60, 78, 61, 61, 65, 68, 74, 66, 53, 74, 68, 66, 96, 60, 74, 79, 67, 67, 79, 57, 67, 87, 75, 63, 52, 50, 67, 65, 77, 65, 75, 60, 100, 53, 71, 82, 51, 46, 80, 62, 71, 81, 58, 45, 66, 75, 63, 55, 58, 93, 78, 41, 57, 42, 73, 79, 62, 57, 67, 88, 53, 75, 67, 83, 87, 61, 43, 72, 52, 62, 63, 40, 50, 60, 43, 85, 87, 71, 47, 63, 53, 65, 140, 51, 57, 54, 50, 55, 38, 78, 67, 65, 57, 65, 89, 67, 47, 78, 72, 65, 56, 72, 64, 39, 73, 79, 64, 57, 94, 66, 65, 74, 56, 71, 51, 74, 58, 66, 56, 78, 56, 59, 55, 54, 50, 66, 98, 43, 62, 83, 151, 66, 69, 83, 70, 64, 56, 84, 63, 69, 39, 55, 61, 46, 61, 75, 74, 89, 91, 47, 93, 80, 71, 58, 70, 68, 65, 57, 62, 59, 53, 66, 72, 48, 55, 55, 55, 68, 79, 60, 80, 57, 87, 57, 60, 77, 40, 64, 84, 57, 70, 85, 47, 50, 60, 62, 56, 49, 68, 46, 71, 68, 66, 50, 57, 59, 60, 58, 75, 87, 55, 80, 75, 74, 63, 64, 62, 53, 42, 86, 63, 58, 64, 57, 52, 57, 77, 46, 63, 71, 67, 52, 66, 76, 82, 83, 97, 70, 88, 87, 71, 91, 53, 77, 49, 68, 101, 59, 67, 86, 60, 58, 78, 51, 57, 60, 104, 49, 51, 70, 53, 56, 46, 71, 64, 80, 30, 70, 75, 70, 99, 61, 48, 69, 49, 63, 67, 58, 78, 56, 67, 63, 81, 76, 79, 71, 50, 69, 71, 95, 82, 68, 56, 64, 47, 63, 73, 64, 60, 67, 49, 72, 68, 64, 59, 65, 83, 80, 48, 59, 56, 77, 92, 54, 53, 64, 54, 43, 49, 78, 34, 88, 72, 70, 67, 73, 86, 70, 59, 47, 65, 73, 70, 59, 53, 49, 78, 81, 45, 60, 68, 61, 74, 74, 57, 74, 59, 89, 94, 97, 93, 59, 78, 69, 56, 71, 70, 58, 49, 79, 62, 81, 78, 90, 63, 57, 68, 58, 64, 65, 74, 99, 69, 58, 87, 88, 85, 53, 67, 58, 57, 70, 82, 61, 53, 56, 58, 93, 77, 63, 55, 81, 62, 57, 46, 75, 79, 51, 57, 77, 79, 81, 62, 68, 77, 64, 84, 76, 66, 37, 56, 53, 78, 58, 49, 54, 73, 64, 71, 47, 65, 61, 52, 55, 57, 58, 59, 75, 56, 59, 57, 106, 60, 86, 60, 67, 44, 59, 53, 70, 61, 77, 71, 72, 52, 107, 116, 52, 69, 31, 48, 105, 58, 69, 71, 53, 80, 53, 65, 76, 39, 51, 57, 52, 66, 65, 55, 80, 77, 68, 66, 119, 73, 80, 44, 67, 53, 67, 83, 57, 58, 61, 62, 39, 67, 53, 59, 66, 85, 72, 63, 58, 77, 72, 42, 102, 47, 65, 81, 83, 96, 69, 83, 65, 69, 58, 58, 68, 73, 60, 58, 58, 70, 59, 67, 60, 62, 52, 71, 33, 56, 55, 67, 59, 128, 53, 98, 42, 50, 89, 69, 67, 66, 49, 72, 62, 65, 78, 52, 62, 49, 51, 87, 63, 51, 61, 61, 48, 79, 77, 44, 70, 82, 89, 58, 71, 54, 58, 55, 65, 74, 52, 58, 61, 42, 53, 61, 86, 69, 98, 80, 51, 101, 70, 42, 91, 60, 63, 64, 94, 50, 61, 79, 67, 54, 55, 66, 81, 77, 74, 69, 81, 72, 120, 70, 69, 98, 48, 84, 54, 84, 54, 51, 66, 70, 62, 54, 53, 49, 69, 48, 77, 60, 91, 63, 59, 61, 64, 59, 68, 78, 103, 71, 65, 57, 54, 68, 65, 73, 67, 79, 53, 56, 66, 51, 73, 63, 50, 52, 97, 68, 63, 82, 60, 59, 77, 70, 58, 46, 50, 73, 91, 91, 65, 84, 72, 86, 57, 51, 51, 59, 66, 110, 83, 81, 69, 61, 67, 72, 41, 59, 70, 71, 68, 47, 57, 62, 80, 61, 57, 51, 46, 72, 49, 66, 77, 52, 64, 82, 56, 90, 79, 55, 60, 143, 47, 75, 92, 69, 72, 78, 51, 58, 68, 35, 83, 57, 57, 88, 53, 69, 75, 62, 74, 57, 81, 47, 66, 58, 54, 91, 54, 81, 65, 93, 100, 65, 35, 63, 85, 192, 72, 58, 46, 67, 72, 54, 89, 69, 81, 64, 59, 68, 83, 61, 65, 89, 71, 54, 49, 79, 65, 65, 46, 82, 58, 79, 83, 55, 88, 128, 46, 57, 39, 50, 56, 87, 62, 60, 67, 54, 66, 75, 66, 51, 96, 90, 59, 90, 80, 37, 74, 74, 66, 74, 45, 37, 74, 95, 56, 54, 58, 67, 56, 61, 71, 66, 69, 54, 73, 47, 46, 54, 76, 40, 81, 86, 69, 111, 77, 60, 51, 51, 76, 73, 67, 76, 53, 70, 53, 74, 59, 70, 86, 42, 63, 48, 62, 56, 57, 69, 65, 67, 47, 55, 52, 74, 52, 47, 46, 66, 62, 87, 72, 57, 70, 63, 69, 59, 48, 69, 64, 83, 100, 69, 71, 77, 58, 63, 60, 44, 54, 61, 69, 64, 46, 57, 32, 54, 55, 63, 81, 50, 97, 50, 99, 65, 86, 81, 71, 62, 44, 69, 125, 53, 75, 69, 68, 84, 58, 70, 60, 61, 64, 53, 73, 85, 60, 80, 96, 48, 70, 52, 57, 60, 73, 51, 64, 65, 70, 48, 82, 60, 94, 76, 73, 56, 69, 97, 51, 66, 66, 74, 71, 58, 76, 86, 72, 73, 90, 49, 59, 63, 110, 107, 54, 75, 70, 62, 80, 66, 51, 43, 85, 54, 76, 44, 77, 69, 48, 99, 54, 63, 58, 69, 75, 57, 95, 51, 71, 102, 54, 61, 77, 61, 85, 81, 87, 74, 61, 41, 67, 53, 66, 67, 53, 70, 54, 51, 57, 54, 46, 45, 43, 105, 72, 78, 111, 38, 71, 63, 65, 92, 76, 53, 61, 73, 65, 62, 81, 56, 80, 68, 140, 65, 84, 64, 50, 58, 72, 57, 74, 50, 57, 73, 80, 78, 66, 45, 21, 61, 42, 55, 88, 53, 101, 115, 54, 40, 72, 75, 82, 59, 57, 91, 77, 60, 57, 73, 50, 73, 61, 48, 63, 62, 74, 60, 80, 51, 40, 68, 54, 67, 79, 66, 72, 80, 51, 70, 69, 77, 86, 112, 64, 64, 52, 66, 34, 87, 55, 58, 45, 51, 54, 61, 69, 34, 57, 69, 57, 68, 79, 54, 59, 59, 71, 57, 79, 67, 73, 58, 70, 50, 77, 58, 66, 79, 53, 71, 61, 65, 50, 54, 67, 52, 87, 59, 57, 37, 47, 75, 75, 83, 71, 66, 83, 64, 60, 95, 79, 58, 59, 53, 55, 57, 73, 84, 83, 86, 61, 60, 69, 69, 44, 95, 82, 53, 58, 48, 79, 70, 82, 69, 61, 93, 42, 62, 72, 65, 48, 50, 93, 61, 68, 57, 51, 64, 73, 62, 51, 42, 77, 54, 64, 61, 83, 58, 69, 74, 78, 58, 85, 97, 68, 69, 52, 78, 59, 53, 50, 59, 68, 62, 63, 44, 82, 66, 68, 51, 72, 62, 75, 69, 110, 55, 61, 49, 60, 65, 63, 33, 68, 55, 81, 61, 71, 67, 59, 54, 101, 76, 42, 47, 64, 115, 61, 61, 73, 75, 50, 79, 49, 62, 50, 55, 62, 78, 82, 46, 45, 49, 95, 60, 48, 63, 81, 76, 53, 71, 58, 73, 70, 34, 103, 84, 65, 73, 76, 51, 66, 65, 55, 55, 80, 67, 71, 80, 64, 49, 54, 61, 65, 61, 72, 56, 86, 58, 64, 84, 68, 47, 66, 46, 60, 56, 56, 82, 64, 69, 59, 71, 67, 77, 57, 72, 65, 55, 65, 76, 42, 65, 65, 68, 82, 71, 51, 58, 67, 41, 61, 65, 56, 82, 96, 92, 75, 89, 54, 79, 62, 41, 82, 66, 121, 50, 51, 58, 81, 51, 63, 71, 80, 73, 71, 49, 77, 94, 60, 71, 68, 57, 75, 71, 56, 95, 65, 64, 65, 45, 74, 55, 77, 58, 81, 55, 77, 33, 55, 78, 70, 174, 66, 75, 97, 63, 67, 70, 68, 75, 56, 67, 65, 70, 94, 62, 59, 63, 67, 39, 75, 49, 45, 59, 95, 56, 58, 104, 76, 68, 65, 61, 53, 78, 72, 63, 65, 63, 63, 67, 40, 67, 66, 51, 66, 47, 58, 68, 39, 81, 80, 79, 46, 61, 87, 80, 84, 89, 83, 88, 81, 69, 63, 54, 115, 56, 77, 56, 63, 48, 96, 65, 84, 55, 66, 63, 61, 75, 46, 61, 67, 30, 84, 57, 92, 44, 60, 81, 74, 49, 72, 41, 68, 58, 61, 78, 59, 31, 58, 55, 55, 94, 75, 65, 72, 77, 65, 70, 50, 105, 39, 47, 67, 51, 60, 58, 68, 52, 48, 58, 71, 64, 53, 95, 51, 76, 76, 70, 47, 73, 97, 84, 68, 66, 50, 58, 101, 71, 57, 77, 69, 56, 66, 73, 63, 67, 36, 96, 58, 73, 63, 66, 57, 63, 70, 75, 75, 51, 60, 62, 53, 57, 45, 66, 76, 66, 75, 35, 58, 64, 84, 60, 76, 44, 51, 72, 46, 66, 63, 54, 78, 75, 64, 62, 81, 70, 53, 68, 70, 44, 47, 62, 58, 50, 52, 57, 81, 104, 58, 79, 76, 73, 59, 101, 73, 64, 96, 59, 50, 67, 86, 50, 49, 65, 66, 71, 75, 53, 51, 94, 46, 84, 60, 69, 67, 89, 68, 65, 52, 61, 72, 74, 58, 54, 71, 60, 66, 44, 30, 46, 78, 69, 46, 57, 74, 57, 71, 39, 68, 60, 81, 82, 69, 65, 47, 68, 54, 80, 72, 46, 64, 69, 57, 84, 43, 47, 63, 87, 50, 65, 63, 66, 82, 79, 78, 39, 57, 44, 80, 71, 75, 79, 69, 72, 67, 67, 60, 69, 62, 62, 55, 70, 63, 67, 63, 65, 96, 77, 60, 94, 73, 65, 44, 67, 55, 48, 62, 73, 63, 66, 66, 81, 83, 63, 113, 71, 74, 85, 50, 65, 68, 71, 93, 59, 77, 58, 61, 62, 59, 46, 60, 71, 69, 49, 79, 57, 70, 50, 61, 68, 70, 42, 52, 62, 56, 63, 57, 59, 49, 65, 72, 69, 66, 62, 70, 65, 60, 56, 55, 72, 94, 59, 57, 128, 51, 87, 69, 65, 57, 63, 44, 59, 94, 75, 63, 59, 60, 99, 78, 52, 73, 52, 56, 77, 72, 76, 76, 71, 46, 98, 60, 67, 63, 51, 57, 87, 37, 42, 54, 71, 41, 63, 56, 65, 67, 60, 81, 54, 73, 63, 71, 80, 59, 83, 65, 66, 58, 114, 64, 73, 70, 49, 71, 45, 70, 78, 47, 69, 67, 79, 59, 56, 84, 59, 62, 66, 59, 80, 54, 56, 64, 72, 59, 66, 63, 67, 70, 48, 57, 65, 61, 61, 76, 60, 53, 77, 57, 66, 70, 86, 59, 49, 64, 54, 67, 60, 73, 51, 70, 82, 74, 89, 79, 63, 43, 85, 83, 65, 61, 51, 73, 69, 65, 51, 54, 86, 66, 60, 57, 56, 80, 54, 54, 54, 40, 60, 78, 75, 52, 49, 72, 123, 69, 125, 32, 80, 68, 124, 59, 53, 71, 65, 67, 48, 69, 80, 59, 57, 61, 81, 96, 62, 60, 70, 78, 59, 75, 62, 61, 62, 74, 95, 59, 82, 71, 50, 86, 57, 64, 60, 55, 56, 71, 68, 52, 87, 76, 67, 98, 81, 54, 65, 54, 73, 93, 66, 64, 57, 57, 37, 70, 62, 64, 58, 65, 43, 62, 56, 54, 51, 75, 60, 67, 56, 60, 77, 62, 91, 78, 53, 61, 68, 72, 59, 58, 80, 59, 90, 74, 48, 52, 59, 63, 96, 53, 72, 64, 51, 64, 44, 86, 82, 63, 79, 54, 60, 61, 56, 56, 79, 90, 54, 62, 59, 81, 64, 56, 61, 81, 60, 58, 61, 169, 60, 54, 61, 73, 74, 84, 85, 67, 72, 59, 51, 51, 67, 63, 53, 40, 71, 51, 51, 84, 61, 85, 50, 56, 72, 60, 67, 65, 62, 72, 79, 74, 70, 54, 57, 57, 63, 58, 65, 64, 60, 69, 74, 71, 70, 79, 79, 68, 51, 48, 65, 78, 70, 73, 51, 75, 49, 79, 43, 53, 62, 105, 55, 66, 66, 57, 43, 69, 62, 66, 70, 55, 64, 59, 62, 52, 66, 67, 83, 57, 52, 76, 69, 89, 76, 104, 66, 70, 67, 64, 77, 75, 57, 89, 69, 85, 75, 82, 65, 69, 65, 48, 86, 62, 55, 60, 61, 66, 51, 49, 52, 59, 68, 49, 56, 70, 75, 60, 44, 65, 56, 69, 56, 58, 57, 73, 69, 71, 53, 66, 101, 69, 61, 78, 54, 56, 63, 80, 69, 91, 62, 72, 52, 65, 69, 68, 79, 60, 59, 79, 67, 75, 59, 69, 50, 63, 141, 66, 67, 114, 64, 55, 66, 77, 68, 139, 58, 51, 65, 63, 81, 62, 72, 87, 57, 58, 62, 75, 62, 67, 58, 66, 59, 58, 89, 52, 58, 58, 56, 47, 57, 65, 53, 58, 84, 92, 71, 54, 68, 83, 83, 71, 60, 52, 69, 74, 72, 61, 69, 54, 56, 55, 70, 77, 75, 62, 61, 74, 104, 58, 100, 64, 81, 57, 81, 95, 69, 44, 62, 52, 63, 68, 57, 71, 62, 74, 61, 65, 69, 72, 68, 66, 71, 103, 52, 77, 56, 64, 84, 76, 59, 60, 61, 56, 50, 80, 68, 61, 45, 58, 63, 65, 71, 70, 72, 78, 72, 74, 68, 85, 78, 59, 63, 64, 45, 71, 80, 79, 45, 68, 67, 56, 62, 61, 52, 93, 91, 64, 94, 61, 55, 56, 56, 71, 51, 55, 57, 62, 109, 53, 62, 52, 66, 64, 79, 66, 64, 65, 62, 98, 60, 63, 45, 60, 56, 68, 59, 49, 49, 60, 76, 69, 51, 67, 58, 83, 60, 53, 72, 72, 54, 55, 55, 51, 82, 67, 78, 64, 66, 82, 91, 48, 67, 60, 69, 62, 56, 58, 77, 90, 76, 57, 82, 74, 68, 56, 56, 80, 66, 66, 49, 55, 66, 128, 71, 69, 63, 62, 74, 57, 72, 64, 66, 55, 66, 55, 85, 64, 46, 74, 100, 66, 59, 58, 60, 44, 57, 60, 70, 59, 89, 94, 64, 48, 49, 63, 65, 69, 67, 44, 68, 62, 53, 62, 61, 81, 59, 52, 66, 49, 88, 40, 62, 39, 64, 91, 45, 57, 69, 71, 61, 52, 60, 61, 74, 56, 73, 54, 58, 65, 51, 45, 66, 64, 60, 60, 73, 81, 49, 83, 69, 71, 59, 65, 65, 68, 89, 77, 62, 67, 59, 70, 60, 56, 62, 67, 61, 88, 77, 68, 52, 61, 58, 61, 128, 63, 60, 87, 65, 45, 56, 114, 89, 53, 74, 64, 68, 76, 92, 61, 88, 58, 81, 75, 68, 73, 91, 64, 72, 51, 86, 50, 68, 39, 54, 68, 83, 83, 69, 74, 67, 53, 50, 54, 63, 76, 73, 75, 78, 74, 69, 58, 59, 71, 63, 64, 69, 52, 77, 70, 53, 70, 58, 53, 74, 75, 63, 86, 48, 63, 54, 55, 180, 53, 76, 58, 61, 73, 52, 60, 67, 55, 56, 50, 58, 59, 67, 58, 49, 58, 60, 59, 77, 54, 63, 80, 52, 70, 91, 70, 58, 56, 65, 47, 64, 54, 46, 64, 59, 73, 42, 49, 97, 69, 53, 72, 59, 96, 45, 85, 58, 62, 61, 66, 45, 67, 62, 50, 43, 79, 81, 71, 51, 67, 81, 59, 56, 27, 65, 47, 52, 56, 68, 67, 49, 64, 52, 56, 97, 67, 63, 42, 71, 75, 63, 57, 63, 63, 73, 62, 70, 64, 70, 61, 107, 60, 92, 69, 72, 54, 81, 113, 60, 64, 77, 60, 72, 75, 56, 73, 58, 72, 62, 71, 60, 44, 64, 65, 68, 63, 70, 50, 47, 60, 73, 72, 64, 64, 65, 33, 72, 84, 60, 56, 49, 54, 90, 52, 65, 80, 46, 65, 70, 53, 70, 64, 74, 68, 66, 64, 64, 61, 66, 61, 54, 125, 90, 82, 74, 91, 94, 66, 60, 53, 64, 56, 57, 63, 85, 69, 69, 65, 59, 65, 59, 47, 67, 64, 59, 70, 77, 44, 97, 77, 71, 62, 50, 65, 67, 97, 70, 54, 77, 66, 86, 52, 39, 118, 94, 67, 66, 69, 82, 54, 68, 61, 59, 42, 72, 50, 58, 70, 76, 68, 138, 50, 67, 83, 66, 64, 67, 57, 81, 69, 73, 65, 74, 50, 55, 50, 63, 69, 75, 50, 102, 61, 46, 59, 67, 65, 57, 60, 51, 63, 54, 48, 77, 71, 151, 71, 54, 70, 54, 51, 44, 51, 51, 58, 70, 56, 50, 49, 63, 59, 75, 74, 97, 55, 65, 89, 55, 60, 73, 56, 76, 66, 59, 85, 78, 81, 44, 83, 36, 69, 111, 73, 61, 63, 62, 47, 65, 76, 49, 64, 49, 71, 74, 75, 51, 80, 55, 69, 46, 75, 73, 69, 51, 85, 64, 60, 90, 81, 58, 75, 67, 67, 68, 55, 100, 96, 45, 74, 52, 58, 40, 74, 82, 94, 53, 59, 62, 70, 71, 62, 61, 86, 69, 68, 68, 62, 79, 62, 60, 130, 57, 70, 55, 95, 55, 76, 55, 73, 60, 56, 77, 63, 54, 55, 68, 62, 59, 55, 37, 75, 78, 52, 79, 66, 92, 61, 75, 71, 78, 70, 65, 59, 40, 46, 56, 54, 41, 48, 61, 60, 60, 73, 81, 73, 56, 51, 52, 71, 93, 58, 42, 60, 64, 72, 58, 68, 74, 50, 95, 55, 55, 62, 64, 71, 65, 61, 56, 64, 65, 50, 87, 51, 67, 66, 69, 65, 58, 44, 59, 55, 61, 115, 80, 90, 60, 55, 53, 55, 63, 62, 81, 63, 70, 57, 67, 58, 65, 60, 40, 61, 69, 62, 112, 69, 52, 54, 54, 88, 67, 64, 74, 76, 55, 73, 76, 91, 75, 79, 79, 55, 63, 43, 65, 60, 57, 83, 63, 60, 70, 67, 69, 67, 68, 64, 81, 72, 57, 52, 74, 43, 57, 65, 47, 44, 66, 109, 86, 140, 57, 57, 63, 46, 64, 76, 89, 69, 82, 48, 66, 55, 49, 56, 58, 54, 71, 71, 46, 64, 62, 77, 57, 67, 64, 69, 55, 62, 47, 68, 55, 76, 65, 61, 48, 57, 69, 50, 49, 76, 66, 85, 48, 61, 63, 84, 62, 65, 62, 61, 70, 68, 69, 71, 72, 49, 75, 68, 68, 64, 58, 80, 72, 75, 62, 61, 58, 93, 76, 51, 57, 68, 87, 71, 75, 83, 85, 58, 88, 61, 60, 52, 85, 62, 50, 130, 56, 65, 59, 77, 73, 46, 76, 86, 63, 117, 60, 61, 52, 54, 50, 83, 65, 56, 57, 70, 42, 51, 80, 73, 61, 86, 59, 65, 72, 48, 45, 59, 52, 66, 59, 56, 68, 58, 53, 66, 42, 73, 66, 88, 67, 57, 78, 78, 62, 89, 65, 84, 68, 69, 49, 81, 53, 61, 75, 66, 55, 59, 41, 61, 46, 63, 65, 69, 60, 72, 47, 59, 63, 68, 98, 72, 66, 65, 57, 79, 53, 64, 71, 51, 52, 60, 63, 57, 79, 61, 58, 69, 69, 64, 80, 66, 50, 99, 63, 53, 61, 83, 61, 68, 61, 64, 68, 74, 59, 70, 69, 73, 68, 59, 54, 69, 69, 76, 68, 59, 95, 73, 59, 64, 70, 43, 56, 56, 58, 42, 54, 55, 43, 71, 61, 86, 86, 48, 49, 54, 53, 67, 75, 76, 43, 58, 65, 74, 72, 65, 65, 72, 67, 75, 97, 46, 54, 73, 68, 64, 73, 84, 58, 82, 71, 69, 73, 82, 56, 60, 76, 70, 74, 70, 88, 48, 66, 60, 105, 72, 65, 51, 71, 48, 63, 61, 67, 52, 71, 55, 66, 51, 75, 64, 53, 89, 63, 61, 68, 79, 77, 72, 75, 68, 48, 64, 61, 51, 56, 52, 69, 79, 45, 55, 70, 61, 57, 60, 53, 65, 67, 63, 61, 72, 61, 66, 63, 75, 63, 58, 67, 67, 75, 51, 58, 51, 102, 73, 70, 65, 73, 38, 58, 40, 49, 80, 52, 55, 60, 61, 47, 74, 59, 65, 77, 53, 82, 45, 69, 73, 45, 58, 72, 59, 46, 58, 101, 54, 78, 79, 63, 76, 68, 45, 59, 71, 60, 62, 60, 75, 73, 70, 55, 79, 54, 68, 62, 52, 95, 69, 57, 58, 57, 82, 53, 66, 81, 82, 77, 36, 112, 65, 57, 76, 57, 56, 55, 57, 54, 49, 69, 79, 76, 98, 75, 81, 92, 65, 75, 63, 89, 75, 63, 64, 70, 82, 80, 61, 66, 77, 64, 65, 52, 67, 64, 48, 54, 50, 46, 76, 40, 54, 76, 82, 62, 52, 82, 68, 78, 64, 63, 64, 81, 66, 56, 40, 57, 89, 88, 55, 66, 63, 79, 91, 85, 40, 92, 76, 62, 78, 53, 63, 78, 63, 79, 68, 52, 51, 72, 77, 46, 57, 65, 49, 62, 60, 71, 83, 80, 66, 110, 66, 49, 49, 52, 97, 88, 45, 77, 63, 42, 51, 84, 68, 69, 58, 54, 47, 73, 64, 55, 51, 54, 69, 67, 64, 57, 75, 73, 67, 51, 53, 73, 38, 48, 46, 140, 64, 86, 56, 55, 60, 67, 70, 56, 64, 67, 73, 80, 65, 50, 47, 62, 63, 42, 61, 74, 84, 55, 56, 34, 71, 57, 76, 54, 79, 59, 108, 50, 73, 62, 55, 65, 71, 80, 77, 74, 84, 70, 73, 52, 88, 86, 73, 53, 51, 65, 102, 61, 33, 62, 47, 47, 63, 74, 67, 70, 49, 74, 75, 59, 74, 110, 98, 57, 89, 88, 99, 83, 56, 57, 63, 83, 59, 52, 51, 75, 45, 64, 89, 81, 61, 73, 60, 45, 60, 88, 47, 68, 77, 55, 81, 89, 55, 81, 70, 60, 54, 54, 61, 94, 55, 60, 61, 39, 45, 60, 73, 62, 40, 107, 63, 68, 68, 75, 58, 48, 83, 83, 54, 92, 62, 83, 34, 61, 58, 56, 86, 70, 64, 51, 51, 80, 51, 39, 76, 49, 65, 66, 87, 60, 79, 51, 63, 50, 74, 71, 73, 57, 73, 77, 79, 54, 46, 57, 49, 80, 62, 72, 67, 59, 87, 54, 63, 64, 84, 84, 45, 60, 52, 54, 61, 83, 72, 59, 63, 40, 62, 60, 61, 64, 66, 69, 62, 66, 55, 100, 73, 58, 69, 53, 62, 75, 88, 63, 67, 57, 114, 87, 81, 69, 74, 79, 76, 56, 92, 57, 61, 69, 62, 60, 75, 72, 79, 61, 52, 90, 66, 50, 68, 72, 57, 89, 59, 64, 69, 48, 42, 69, 58, 67, 58, 56, 86, 77, 66, 100, 61, 61, 86, 56, 103, 77, 67, 58, 94, 63, 71, 50, 60, 77, 59, 67, 39, 60, 44, 90, 34, 85, 105, 68, 84, 55, 59, 65, 55, 62, 109, 63, 88, 73, 56, 79, 67, 79, 57, 55, 70, 73, 60, 108, 83, 66, 56, 56, 80, 58, 101, 53, 82, 90, 53, 60, 62, 48, 69, 82, 37, 71, 76, 81, 66, 55, 57, 56, 59, 55, 50, 67, 62, 56, 48, 93, 62, 45, 103, 60, 69, 68, 65, 63, 54, 114, 64, 60, 62, 65, 77, 123, 57, 53, 62, 98, 63, 54, 64, 51, 69, 110, 62, 64, 67, 49, 76, 57, 62, 63, 55, 72, 73, 129, 53, 60, 58, 68, 56, 53, 62, 59, 56, 56, 52, 113, 67, 64, 119, 67, 72, 42, 47, 49, 68, 52, 49, 58, 76, 41, 57, 53, 80, 47, 56, 64, 65, 85, 70, 77, 69, 84, 65, 69, 85, 76, 50, 72, 68, 82, 65, 60, 37, 57, 67, 84, 60, 59, 59, 64, 61, 65, 67, 64, 50, 55, 66, 53, 101, 61, 65, 51, 66, 54, 49, 81, 71, 56, 53, 83, 74, 69, 74, 83, 80, 49, 48, 69, 61, 80, 91, 65, 57, 91, 73, 68, 60, 77, 67, 75, 56, 70, 68, 76, 79, 65, 57, 62, 48, 71, 81, 56, 62, 160, 53, 56, 72, 47, 80, 58, 64, 80, 62, 71, 71, 50, 83, 68, 71, 60, 82, 52, 55, 72, 98, 54, 60, 101, 53, 58, 69, 77, 56, 43, 61, 59, 68, 55, 90, 71, 54, 63, 56, 67, 91, 59, 76, 44, 84, 70, 65, 63, 57, 68, 69, 66, 51, 60, 54, 63, 53, 61, 64, 99, 50, 64, 54, 87, 51, 59, 125, 75, 75, 60, 65, 72, 65, 62, 76, 59, 67, 85, 91, 65, 87, 58, 82, 58, 64, 67, 65, 78, 76, 65, 63, 56, 71, 63, 64, 61, 64, 56, 51, 71, 65, 54, 39, 73, 67, 48, 68, 62, 53, 69, 61, 69, 80, 49, 52, 58, 73, 37, 74, 66, 116, 69, 38, 70, 82, 45, 75, 55, 86, 65, 75, 64, 42, 95, 59, 47, 62, 51, 67, 56, 70, 71, 64, 61, 79, 68, 52, 50, 47, 60, 59, 59, 46, 87, 73, 71, 70, 79, 58, 68, 80, 101, 78, 107, 47, 96, 55, 72, 59, 89, 59, 65, 69, 75, 54, 82, 51, 77, 61, 63, 48, 68, 86, 57, 73, 59, 52, 57, 66, 66, 53, 56, 74, 50, 57, 61, 98, 64, 52, 75, 59, 81, 69, 58, 58, 76, 58, 47, 83, 77, 62, 47, 70, 61, 54, 70, 54, 73, 60, 61, 71, 59, 72, 51, 60, 80, 53, 85, 64, 71, 64, 53, 66, 69, 80, 75, 65, 77, 61, 79, 63, 50, 75, 54, 58, 60, 48, 62, 66, 61, 51, 68, 58, 51, 47, 58, 64, 63, 60, 75, 66, 57, 69, 86, 63, 62, 51, 71, 72, 74, 130, 73, 73, 67, 69, 58, 53, 82, 59, 63, 73, 43, 93, 44, 78, 63, 64, 56, 56, 54, 46, 67, 70, 64, 53, 46, 70, 51, 63, 47, 71, 58, 58, 70, 80, 51, 92, 64, 72, 50, 79, 64, 51, 63, 102, 83, 82, 71, 52, 58, 57, 48, 71, 46, 50, 94, 61, 94, 89, 73, 69, 74, 69, 63, 81, 56, 55, 60, 65, 70, 43, 59, 80, 76, 57, 61, 71, 45, 54, 66, 58, 69, 74, 60, 86, 75, 40, 74, 55, 58, 44, 53, 67, 45, 71, 67, 88, 57, 84, 66, 76, 81, 67, 73, 53, 81, 67, 69, 61, 89, 68, 57, 57, 60, 63, 76, 63, 66, 49, 74, 50, 56, 60, 54, 76, 67, 119, 127, 65, 80, 57, 67, 62, 63, 52, 72, 67, 42, 51, 49, 78, 62, 63, 74, 44, 65, 86, 51, 63, 58, 83, 70, 51, 54, 49, 64, 70, 54, 56, 59, 80, 75, 75, 72, 73, 70, 74, 68, 68, 66, 38, 54, 51, 73, 65, 61, 93, 50, 42, 74, 72, 144, 76, 78, 96, 67, 61, 69, 65, 67, 63, 69, 86, 98, 71, 44, 60, 65, 73, 60, 69, 70, 58, 81, 77, 94, 67, 53, 74, 53, 65, 71, 57, 58, 74, 55, 77, 58, 68, 59, 70, 76, 45, 51, 58, 50, 62, 84, 58, 69, 72, 55, 57, 82, 45, 53, 64, 61, 62, 76, 64, 57, 49, 112, 70, 69, 74, 70, 62, 69, 95, 63, 67, 79, 61, 54, 61, 55, 62, 63, 91, 79, 109, 76, 56, 71, 63, 50, 50, 66, 43, 68, 62, 69, 115, 56, 70, 64, 73, 57, 52, 62, 67, 38, 64, 69, 52, 70, 53, 26, 83, 69, 61, 89, 59, 49, 86, 61, 75, 64, 48, 50, 62, 63, 76, 59, 77, 66, 65, 69, 62, 61, 60, 75, 69, 61, 65, 67, 49, 48, 76, 63, 76, 59, 71, 67, 53, 56, 52, 59, 82, 72, 69, 71, 84, 97, 67, 89, 43, 74, 55, 67, 69, 46, 68, 51, 57, 47, 72, 79, 57, 64, 67, 45, 88, 57, 53, 74, 67, 65, 52, 107, 85, 57, 67, 57, 45, 74, 54, 57, 97, 52, 65, 52, 47, 71, 61, 65, 82, 80, 62, 68, 49, 50, 76, 61, 73, 51, 44, 62, 90, 69, 52, 77, 60, 69, 49, 62, 67, 72, 87, 57, 86, 82, 84, 71, 81, 62, 56, 81, 51, 66, 58, 53, 63, 77, 84, 82, 59, 86, 78, 55, 64, 95, 50, 61, 53, 35, 66, 66, 74, 59, 61, 64, 49, 71, 60, 56, 88, 46, 71, 68, 74, 57, 63, 78, 97, 47, 63, 61, 46, 61, 79, 127, 85, 62, 80, 57, 51, 69, 68, 77, 55, 74, 64, 66, 58, 53, 91, 51, 52, 48, 74, 84, 71, 77, 63, 66, 72, 45, 46, 55, 68, 71, 72, 78, 58, 62, 68, 73, 66, 59, 58, 57, 82, 54, 94, 58, 66, 67, 96, 67, 90, 61, 45, 66, 79, 69, 62, 49, 70, 93, 66, 63, 81, 60, 66, 63, 73, 43, 59, 68, 71, 66, 53, 62, 88, 80, 54, 62, 59, 59, 71, 50, 67, 46, 68, 44, 117, 59, 58, 44, 54, 88, 45, 39, 57, 55, 83, 64, 56, 78, 83, 60, 73, 63, 80, 65, 57, 54, 49, 71, 80, 75, 62, 93, 79, 70, 53, 60, 58, 74, 57, 62, 98, 78, 101, 91, 78, 64, 55, 55, 68, 58, 72, 80, 81, 52, 65, 75, 74, 75, 91, 83, 58, 57, 57, 63, 73, 71, 64, 117, 52, 46, 70, 101, 78, 61, 89, 60, 71, 66, 58, 55, 60, 113, 40, 57, 77, 64, 71, 124, 57, 65, 78, 67, 50, 67, 72, 79, 56, 104, 68, 75, 67, 49, 96, 53, 67, 72, 65, 60, 79, 82, 71, 62, 52, 68, 62, 59, 63, 51, 57, 67, 36, 71, 84, 61, 67, 53, 65, 60, 77, 55, 51, 52, 91, 72, 67, 63, 78, 56, 61, 57, 33, 58, 56, 44, 74, 55, 73, 80, 62, 52, 61, 48, 67, 57, 64, 62, 68, 58, 116, 63, 67, 122, 65, 55, 59, 56, 92, 74, 51, 40, 55, 80, 52, 52, 92, 60, 62, 58, 59, 43, 67, 57, 66, 69, 69, 80, 71, 58, 90, 84, 62, 72, 65, 54, 64, 75, 49, 64, 86, 72, 89, 49, 74, 55, 74, 65, 58, 60, 66, 66, 69, 59, 58, 52, 66, 52, 70, 47, 70, 56, 79, 60, 54, 67, 60, 57, 60, 53, 67, 89, 66, 63, 70, 63, 87, 53, 66, 54, 63, 73, 66, 48, 70, 69, 68, 46, 67, 74, 58, 64, 83, 84, 73, 61, 66, 78, 87, 55, 74, 70, 93, 56, 56, 57, 74, 73, 63, 58, 151, 64, 43, 45, 57, 60, 28, 74, 74, 63, 96, 82, 67, 74, 81, 52, 50, 70, 51, 109, 69, 68, 59, 88, 66, 61, 95, 65, 90, 63, 58, 40, 62, 74, 54, 48, 74, 57, 81, 65, 78, 74, 61, 62, 57, 43, 55, 61, 58, 63, 72, 64, 55, 92, 58, 61, 48, 86, 81, 121, 58, 69, 67, 51, 43, 71, 48, 70, 74, 62, 64, 50, 95, 63, 50, 71, 59, 53, 74, 68, 75, 57, 62, 68, 57, 63, 61, 67, 60, 76, 38, 81, 60, 74, 70, 70, 82, 52, 57, 59, 65, 54, 41, 52, 53, 46, 65, 69, 55, 68, 57, 72, 70, 75, 55, 74, 61, 78, 67, 60, 60, 81, 59, 68, 63, 84, 75, 71, 89, 66, 65, 51, 59, 58, 42, 56, 71, 69, 61, 69, 66, 61, 57, 72, 57, 39, 85, 82, 66, 50, 50, 61, 79, 45, 61, 83, 56, 54, 61, 55, 56, 83, 100, 63, 81, 75, 87, 82, 85, 64, 159, 60, 66, 64, 70, 76, 68, 60, 59, 81, 76, 74, 73, 49, 68, 59, 76, 57, 104, 68, 91, 53, 77, 61, 49, 70, 55, 57, 67, 64, 76, 80, 68, 58, 56, 81, 81, 88, 100, 70, 60, 93, 52, 38, 98, 67, 78, 65, 56, 68, 66, 46, 97, 69, 73, 67, 80, 73, 56, 65, 65, 58, 54, 78, 90, 53, 79, 83, 51, 47, 49, 61, 59, 62, 66, 67, 69, 60, 60, 52, 59, 60, 70, 69, 73, 74, 62, 73, 64, 92, 58, 53, 52, 66, 60, 66, 82, 69, 77, 73, 72, 61, 57, 56, 69, 66, 63, 63, 60, 85, 68, 71, 62, 53, 74, 79, 65, 68, 56, 61, 70, 68, 58, 65, 65, 53, 68, 60, 81, 58, 69, 60, 60, 49, 54, 49, 61, 63, 59, 138, 66, 61, 60, 52, 58, 65, 60, 42, 93, 69, 60, 53, 58, 71, 47, 56, 66, 59, 60, 62, 67, 66, 57, 58, 64, 58, 98, 68, 61, 79, 82, 84, 67, 61, 54, 58, 55, 53, 127, 87, 59, 92, 62, 64, 69, 61, 57, 84, 78, 74, 62, 76, 71, 58, 49, 108, 56, 55, 71, 56, 59, 56, 92, 66, 51, 69, 47, 47, 92, 49, 77, 43, 90, 78, 92, 55, 59, 63, 101, 56, 80, 72, 47, 81, 66, 51, 54, 66, 51, 52, 59, 68, 101, 129, 38, 62, 67, 56, 81, 49, 55, 73, 52, 57, 48, 95, 87, 67, 72, 55, 61, 62, 74, 83, 57, 50, 77, 86, 75, 51, 40, 66, 69, 84, 51, 70, 71, 83, 80, 58, 69, 92, 58, 66, 71, 67, 70, 58, 69, 70, 58, 61, 125, 64, 74, 69, 88, 72, 66, 60, 60, 63, 77, 57, 71, 78, 47, 59, 87, 95, 59, 43, 98, 56, 55, 79, 71, 81, 64, 80, 76, 64, 62, 55, 81, 74, 80, 64, 81, 59, 74, 74, 69, 74, 68, 49, 93, 73, 71, 75, 61, 57, 67, 57, 63, 76, 54, 58, 97, 67, 50, 58, 70, 58, 62, 81, 79, 67, 63, 63, 54, 57, 42, 55, 56, 54, 68, 84, 71, 85, 42, 58, 62, 124, 73, 52, 52, 54, 66, 54, 64, 80, 70, 52, 53, 78, 65, 67, 61, 69, 59, 64, 50, 74, 74, 63, 67, 66, 71, 65, 79, 59, 76, 68, 91, 79, 51, 58, 73, 57, 71, 69, 45, 50, 65, 97, 54, 61, 50, 60, 65, 65, 60, 66, 68, 58, 76, 82, 77, 75, 66, 62, 72, 73, 70, 69, 46, 44, 59, 68, 62, 64, 59, 52, 65, 57, 98, 65, 52, 62, 73, 56, 56, 57, 35, 62, 61, 73, 59, 61, 81, 46, 73, 79, 54, 79, 66, 61, 79, 80, 69, 64, 59, 47, 49, 75, 64, 80, 54, 65, 49, 66, 62, 61, 58, 73, 78, 50, 49, 64, 51, 73, 81, 56, 48, 56, 62, 62, 74, 76, 85, 54, 48, 84, 70, 58, 72, 85, 64, 62, 85, 58, 58, 83, 50, 70, 87, 56, 72, 65, 73, 63, 61, 92, 61, 62, 54, 43, 68, 74, 65, 48, 70, 65, 59, 66, 68, 94, 83, 63, 111, 96, 65, 61, 53, 55, 69, 88, 59, 59, 63, 51, 107, 87, 81, 71, 88, 61, 54, 81, 65, 83, 90, 45, 61, 72, 66, 70, 69, 71, 56, 80, 69, 77, 87, 72, 78, 76, 66, 56, 55, 42, 47, 55, 80, 68, 63, 81, 64, 77, 47, 62, 54, 61, 45, 60, 81, 64, 55, 41, 50, 98, 62, 76, 59, 82, 62, 45, 52, 61, 44, 61, 61, 70, 69, 64, 84, 63, 68, 86, 92, 101, 66, 68, 60, 81, 58, 55, 52, 51, 38, 76, 68, 75, 58, 40, 85, 85, 56, 68, 49, 82, 73, 63, 68, 63, 65, 58, 122, 61, 62, 47, 54, 51, 62, 86, 52, 66, 58, 82, 77, 82, 52, 82, 52, 82, 69, 80, 58, 67, 58, 85, 51, 62, 61, 65, 93, 60, 59, 82, 79, 61, 73, 74, 45, 49, 76, 53, 67, 73, 56, 55, 58, 59, 62, 73, 58, 64, 73, 65, 75, 74, 51, 73, 73, 86, 76, 49, 60, 82, 76, 75, 88, 56, 92, 54, 61, 79, 117, 71, 65, 59, 103, 77, 70, 54, 92, 65, 58, 68, 42, 72, 51, 62, 46, 48, 50, 60, 59, 74, 54, 46, 40, 95, 62, 83, 75, 81, 48, 62, 65, 85, 63, 81, 61, 55, 68, 61, 68, 52, 83, 116, 78, 132, 67, 87, 74, 63, 63, 50, 78, 50, 44, 37, 58, 65, 54, 71, 78, 54, 57, 54, 73, 60, 90, 67, 45, 56, 86, 65, 100, 66, 49, 62, 78, 34, 69, 87, 88, 61, 71, 44, 79, 56, 69, 54, 66, 83, 59, 53, 55, 69, 60, 65, 73, 92, 54, 94, 67, 60, 57, 56, 72, 67, 76, 104, 102, 49, 61, 70, 70, 59, 63, 72, 69, 69, 59, 70, 90, 71, 61, 73, 80, 93, 53, 63, 63, 51, 56, 51, 57, 59, 67, 93, 59, 71, 82, 69, 62, 53, 72, 65, 55, 80, 70, 61, 63, 80, 52, 57, 53, 98, 65, 64, 90, 57, 62, 75, 63, 69, 43, 80, 49, 88, 75, 43, 45, 70, 53, 71, 60, 54, 75, 56, 66, 60, 49, 61, 58, 61, 44, 64, 65, 59, 56, 62, 44, 78, 79, 82, 72, 54, 64, 46, 66, 64, 56, 67, 60, 48, 107, 52, 74, 83, 66, 60, 118, 67, 77, 62, 47, 97, 76, 61, 90, 83, 81, 69, 62, 50, 45, 61, 58, 71, 68, 70, 60, 61, 30, 40, 91, 66, 81, 64, 50, 124, 62, 70, 38, 67, 66, 53, 87, 41, 34, 70, 69, 72, 55, 94, 54, 55, 84, 39, 59, 54, 66, 58, 64, 54, 60, 87, 55, 58, 63, 74, 58, 53, 56, 68, 60, 95, 85, 56, 46, 72, 67, 40, 70, 54, 71, 68, 76, 50, 65, 51, 75, 53, 50, 91, 63, 55, 72, 91, 48, 90, 54, 70, 60, 70, 39, 81, 63, 51, 85, 73, 128, 59, 87, 53, 99, 88, 88, 71, 58, 70, 68, 70, 68, 53, 42, 80, 67, 71, 68, 66, 67, 56, 57, 57, 54, 52, 94, 68, 60, 66, 52, 59, 70, 40, 66, 95, 64, 69, 55, 74, 57, 75, 79, 64, 58, 64, 62, 52, 55, 61, 54, 62, 96, 52, 72, 48, 46, 45, 43, 56, 61, 76, 70, 70, 67, 61, 53, 84, 57, 60, 87, 67, 74, 50, 77, 112, 78, 62, 88, 57, 68, 57, 77, 37, 49, 76, 71, 82, 81, 62, 75, 61, 44, 53, 74, 45, 78, 54, 53, 77, 70, 73, 55, 53, 54, 60, 83, 64, 61, 57, 65, 47, 81, 69, 88, 72, 82, 50, 70, 66, 58, 78, 60, 87, 85, 83, 53, 60, 65, 106, 63, 58, 64, 48, 35, 87, 49, 65, 75, 65, 49, 51, 56, 84, 50, 65, 72, 55, 59, 57, 61, 67, 93, 60, 58, 68, 54, 76, 57, 71, 65, 60, 54, 77, 79, 88, 79, 53, 46, 49, 63, 58, 67, 31, 63, 58, 59, 63, 93, 53, 41, 51, 58, 60, 64, 66, 70, 84, 61, 83, 40, 51, 63, 48, 54, 115, 60, 54, 42, 94, 62, 39, 61, 58, 69, 70, 72, 71, 47, 61, 44, 75, 78, 62, 44, 65, 73, 59, 55, 71, 83, 45, 101, 68, 71, 65, 72, 67, 72, 55, 69, 68, 67, 86, 74, 122, 51, 59, 43, 38, 75, 68, 56, 39, 67, 70, 97, 62, 94, 64, 59, 56, 60, 67, 89, 61, 63, 68, 107, 54, 67, 47, 53, 68, 72, 61, 53, 47, 42, 64, 69, 57, 79, 60, 50, 36, 62, 74, 95, 73, 55, 51, 71, 53, 71, 89, 79, 61, 64, 81, 60, 50, 86, 63, 89, 75, 61, 70, 69, 65, 70, 61, 115, 78, 69, 73, 101, 72, 64, 75, 50, 78, 57, 63, 66, 51, 71, 39, 75, 56, 54, 110, 79, 87, 50, 69, 74, 88, 59, 63, 57, 55, 54, 44, 61, 66, 68, 68, 65, 56, 61, 48, 63, 65, 88, 78, 84, 44, 60, 73, 56, 65, 45, 66, 53, 82, 48, 69, 53, 73, 88, 52, 77, 77, 63, 72, 55, 56, 67, 76, 50, 65, 68, 74, 46, 59, 59, 84, 65, 92, 66, 63, 108, 52, 89, 71, 64, 64, 62, 66, 45, 38, 57, 64, 55, 83, 71, 72, 57, 71, 55, 62, 54, 64, 74, 72, 58, 61, 67, 54, 78, 51, 118, 109, 45, 78, 63, 86, 78, 65, 65, 62, 57, 105, 84, 62, 79, 74, 83, 70, 58, 60, 65, 57, 55, 33, 55, 56, 54, 79, 55, 71, 60, 57, 57, 77, 71, 65, 65, 67, 72, 65, 40, 95, 43, 61, 53, 71, 66, 72, 69, 44, 78, 77, 44, 64, 81, 57, 76, 70, 85, 90, 58, 62, 69, 62, 61, 83, 79, 55, 56, 67, 73, 77, 76, 55, 74, 59, 80, 70, 70, 61, 78, 61, 66, 62, 66, 47, 90, 46, 53, 68, 48, 59, 60, 75, 70, 59, 60, 54, 61, 56, 43, 34, 50, 57, 78, 61, 62, 70, 56, 75, 56, 53, 96, 79, 52, 54, 52, 77, 38, 63, 59, 58, 51, 81, 72, 77, 46, 57, 43, 66, 72, 75, 52, 68, 64, 50, 72, 48, 75, 77, 69, 67, 76, 75, 75, 75, 61, 69, 56, 77, 63, 95, 61, 83, 60, 53, 63, 61, 59, 83, 65, 85, 56, 55, 61, 60, 52, 109, 68, 86, 56, 68, 76, 52, 84, 113, 42, 85, 57, 45, 89, 80, 81, 82, 72, 67, 68, 52, 62, 58, 58, 73, 56, 63, 80, 58, 65, 63, 93, 76, 89, 82, 57, 48, 49, 66, 60, 67, 73, 80, 66, 78, 59, 76, 61, 74, 61, 70, 70, 64, 67, 84, 62, 69, 66, 77, 56, 60, 60, 64, 51, 58, 82, 66, 53, 72, 72, 64, 60, 101, 53, 59, 61, 60, 50, 55, 64, 70, 53, 52, 47, 66, 50, 71, 56, 62, 53, 60, 69, 56, 50, 71, 59, 65, 39, 62, 68, 84, 100, 80, 77, 71, 52, 59, 57, 67, 56, 71, 55, 66, 65, 56, 85, 88, 63, 57, 84, 71, 83, 66, 84, 62, 52, 52, 49, 67, 63, 64, 66, 65, 61, 72, 69, 72, 52, 60, 63, 76, 82, 53, 56, 61, 56, 50, 84, 66, 89, 56, 56, 54, 54, 86, 65, 63, 118, 74, 62, 84, 89, 48, 85, 52, 79, 88, 48, 70, 59, 52, 59, 49, 74, 63, 80, 60, 73, 63, 64, 70, 62, 54, 54, 61, 49, 72, 58, 53, 72, 49, 70, 65, 58, 74, 61, 58, 68, 60, 75, 64, 56, 59, 68, 72, 62, 55, 57, 133, 51, 72, 62, 73, 62, 60, 65, 64, 68, 75, 67, 65, 66, 62, 69, 68, 67, 54, 52, 58, 49, 64, 56, 73, 50, 96, 95, 69, 64, 55, 57, 54, 61, 63, 53, 65, 55, 66, 65, 47, 61, 46, 60, 52, 51, 61, 92, 65, 44, 78, 53, 69, 64, 70, 55, 62, 60, 63, 65, 58, 50, 75, 90, 53, 53, 61, 78, 58, 68, 61, 64, 78, 81, 62, 56, 70, 59, 54, 83, 64, 59, 46, 55, 57, 78, 77, 42, 52, 91, 117, 77, 70, 79, 76, 80, 54, 78, 62, 66, 69, 60, 61, 57, 65, 64, 72, 45, 70, 55, 67, 72, 51, 65, 45, 72, 65, 70, 68, 38, 83, 68, 51, 72, 51, 66, 53, 63, 46, 70, 54, 71, 66, 77, 61, 66, 70, 59, 69, 48, 57, 67, 73, 75, 71, 66, 133, 69, 64, 68, 90, 57, 51, 58, 54, 58, 57, 56, 55, 71, 64, 70, 69, 61, 46, 70, 61, 64, 54, 61, 60, 58, 63, 104, 73, 64, 75, 53, 56, 56, 67, 83, 69, 46, 48, 53, 64, 68, 63, 44, 78, 57, 45, 54, 66, 52, 65, 65, 64, 62, 62, 54, 96, 55, 62, 69, 54, 53, 55, 50, 52, 76, 67, 65, 59, 76, 59, 76, 95, 72, 61, 72, 56, 67, 71, 58, 47, 64, 62, 55, 67, 52, 67, 96, 64, 62, 69, 62, 47, 52, 58, 63, 70, 72, 53, 61, 85, 44, 69, 54, 62, 62, 89, 65, 113, 50, 58, 60, 59, 50, 85, 46, 69, 83, 50, 51, 57, 57, 59, 53, 63, 59, 56, 49, 58, 53, 57, 87, 48, 58, 64, 57, 71, 64, 70, 70, 49, 68, 65, 69, 71, 55, 73, 63, 72, 46, 50, 70, 56, 53, 63, 79, 71, 53, 82, 70, 54, 56, 51, 57, 56, 68, 64, 52, 43, 46, 51, 61, 67, 60, 58, 74, 45, 65, 56, 58, 52, 63, 60, 72, 43, 60, 56, 61, 87, 72, 59, 63, 64, 61, 54, 46, 93, 78, 52, 95, 67, 65, 50, 88, 49, 101, 58, 55, 81, 59, 50, 78, 61, 55, 63, 60, 62, 63, 63, 85, 71, 84, 91, 74, 70, 62, 78, 62, 57, 61, 83, 69, 51, 99, 66, 92, 52, 64, 66, 52, 80, 70, 58, 85, 66, 49, 70, 65, 47, 52, 93, 54, 56, 76, 57, 67, 109, 79, 80, 79, 53, 61, 82, 47, 83, 58, 90, 97, 60, 55, 71, 58, 65, 59, 77, 90, 52, 51, 87, 87, 58, 65, 67, 69, 56, 55, 68, 60, 55, 68, 57, 46, 66, 71, 74, 54, 45, 64, 80, 91, 90, 79, 61, 86, 50, 58, 50, 79, 80, 54, 53, 66, 81, 50, 57, 50, 53, 63, 64, 99, 73, 42, 59, 89, 58, 81, 75, 44, 60, 70, 52, 45, 58, 56, 62, 61, 69, 82, 78, 67, 60, 52, 67, 68, 58, 56, 45, 55, 62, 58, 78, 52, 81, 109, 53, 50, 72, 62, 95, 73, 63, 71, 47, 70, 66, 59, 62, 96, 82, 55, 62, 63, 50, 53, 76, 58, 76, 62, 84, 114, 56, 47, 59, 71, 62, 66, 72, 69, 65, 42, 47, 56, 85, 51, 63, 62, 85, 72, 59, 64, 90, 59, 64, 47, 71, 113, 77, 71, 70, 60, 55, 70, 48, 71, 64, 46, 59, 69, 55, 61, 76, 51, 46, 63, 48, 63, 65, 70, 83, 67, 64, 87, 91, 91, 54, 59, 43, 130, 57, 55, 71, 60, 69, 67, 65, 59, 58, 94, 65, 59, 40, 67, 64, 64, 63, 57, 65, 66, 67, 54, 81, 51, 69, 54, 65, 69, 59, 43, 61, 66, 67, 56, 55, 61, 55, 62, 56, 67, 71, 121, 59, 50, 65, 76, 72, 59, 60, 82, 65, 70, 71, 69, 54, 50, 51, 79, 73, 50, 43, 65, 69, 55, 101, 65, 60, 48, 48, 67, 59, 66, 73, 74, 43, 73, 73, 57, 63, 64, 88, 65, 62, 86, 60, 68, 57, 57, 64, 73, 62, 71, 65, 64, 61, 66, 67, 64, 64, 99, 66, 63, 55, 64, 73, 57, 67, 66, 66, 58, 74, 100, 77, 86, 69, 56, 64, 63, 61, 95, 94, 94, 68, 70, 63, 63, 62, 88, 55, 75, 54, 89, 66, 51, 89, 57, 51, 67, 157, 65, 80, 78, 62, 63, 66, 88, 54, 62, 102, 72, 55, 57, 60, 68, 76, 73, 50, 54, 59, 55, 53, 80, 58, 66, 55, 71, 59, 65, 71, 65, 55, 58, 84, 79, 62, 75, 63, 65, 59, 57, 110, 81, 52, 54, 67, 78, 63, 52, 63, 62, 72, 64, 75, 51, 70, 91, 66, 71, 61, 78, 69, 73, 60, 61, 64, 65, 57, 75, 67, 62, 60, 70, 69, 65, 76, 57, 72, 86, 63, 109, 51, 65, 66, 64, 65, 52, 61, 66, 74, 54, 58, 56, 49, 78, 49, 69, 70, 62, 80, 51, 59, 53, 76, 62, 91, 55, 36, 55, 64, 78, 60, 73, 62, 68, 69, 71, 88, 94, 72, 66, 77, 84, 61, 76, 69, 73, 59, 77, 48, 71, 52, 55, 99, 70, 81, 61, 53, 52, 61, 58, 58, 81, 83, 62, 61, 60, 47, 68, 62, 65, 52, 82, 74, 73, 72, 51, 58, 45, 71, 80, 73, 56, 75, 70, 56, 74, 78, 74, 50, 58, 74, 64, 75, 36, 81, 69, 60, 54, 69, 74, 71, 85, 55, 85, 68, 54, 108, 66, 59, 55, 85, 50, 67, 70, 65, 63, 68, 63, 84, 42, 78, 47, 66, 58, 67, 52, 60, 61, 69, 56, 65, 90, 71, 54, 52, 60, 64, 63, 60, 99, 65, 65, 57, 55, 55, 62, 67, 51, 75, 81, 53, 70, 64, 63, 45, 69, 53, 50, 73, 60, 46, 77, 50, 55, 61, 73, 44, 47, 49, 45, 75, 80, 66, 56, 71, 63, 65, 60, 59, 60, 75, 61, 94, 65, 105, 69, 68, 73, 52, 56, 52, 68, 65, 60, 67, 60, 68, 59, 81, 50, 56, 70, 74, 54, 67, 73, 61, 52, 43, 49, 70, 75, 55, 63, 45, 58, 98, 61, 63, 93, 64, 58, 52, 58, 58, 56, 79, 59, 69, 86, 59, 66, 50, 83, 56, 71, 89, 66, 71, 58, 58, 87, 69, 106, 68, 66, 81, 57, 53, 67, 93, 54, 61, 62, 53, 51, 72, 71, 53, 55, 62, 89, 78, 67, 73, 105, 63, 60, 73, 90, 49, 81, 61, 65, 63, 65, 134, 66, 59, 55, 85, 66, 93, 61, 79, 63, 72, 73, 62, 51, 67, 76, 66, 86, 47, 59, 52, 68, 65, 52, 62, 61, 59, 71, 66, 78, 48, 83, 69, 61, 68, 82, 65, 64, 71, 84, 50, 66, 55, 74, 64, 59, 46, 70, 56, 68, 71, 82, 68, 64, 72, 43, 54, 61, 63, 56, 54, 56, 75, 63, 65, 63, 63, 83, 80, 54, 56, 48, 64, 62, 70, 65, 54, 71, 66, 52, 65, 75, 52, 62, 51, 59, 81, 55, 69, 72, 50, 58, 100, 62, 71, 61, 65, 67, 42, 68, 78, 62, 72, 44, 60, 116, 81, 77, 55, 60, 65, 67, 60, 65, 67, 58, 51, 45, 80, 72, 59, 56, 67, 83, 89, 59, 68, 71, 92, 52, 64, 46, 68, 70, 61, 55, 47, 71, 65, 82, 74, 71, 69, 58, 66, 38, 68, 77, 59, 56, 78, 49, 51, 54, 38, 69, 71, 81, 64, 83, 58, 56, 46, 61, 71, 53, 95, 61, 72, 74, 85, 60, 64, 79, 67, 61, 64, 84, 67, 56, 81, 80, 74, 53, 57, 57, 95, 72, 37, 68, 83, 83, 63, 58, 50, 71, 57, 70, 46, 46, 72, 65, 63, 52, 65, 60, 93, 47, 76, 64, 49, 75, 85, 53, 46, 66, 58, 63, 59, 108, 55, 59, 55, 68, 64, 66, 72, 74, 87, 54, 53, 66, 79, 77, 63, 77, 79, 38, 60, 60, 66, 68, 73, 78, 76, 51, 70, 57, 65, 74, 70, 89, 68, 66, 56, 107, 89, 40, 61, 73, 59, 63, 59, 59, 111, 73, 77, 93, 78, 65, 66, 64, 45, 65, 73, 54, 70, 87, 64, 58, 68, 58, 56, 89, 53, 64, 61, 52, 76, 92, 89, 72, 61, 40, 57, 68, 60, 64, 79, 69, 76, 63, 63, 30, 44, 87, 59, 65, 56, 62, 67, 78, 54, 64, 65, 57, 66, 57, 57, 58, 84, 65, 76, 51, 64, 71, 49, 76, 61, 60, 58, 68, 61, 69, 60, 67, 94, 60, 49, 69, 92, 66, 86, 73, 82, 79, 45, 69, 66, 46, 87, 54, 57, 66, 76, 56, 80, 66, 43, 59, 61, 74, 76, 67, 82, 64, 81, 73, 69, 67, 76, 56, 76, 63, 55, 46, 76, 43, 68, 56, 68, 35, 59, 53, 82, 76, 56, 69, 88, 61, 62, 54, 84, 84, 65, 59, 79, 63, 83, 64, 57, 62, 52, 52, 96, 41, 70, 52, 74, 49, 83, 47, 74, 48, 64, 76, 71, 65, 70, 44, 76, 106, 73, 65, 73, 73, 62, 43, 66, 57, 76, 58, 63, 73, 71, 57, 77, 54, 67, 51, 79, 66, 88, 79, 47, 64, 61, 59, 60, 61, 57, 73, 55, 88, 68, 52, 63, 64, 47, 75, 69, 73, 67, 67, 70, 61, 105, 31, 57, 54, 54, 55, 84, 74, 66, 66, 78, 76, 55, 52, 45, 44, 63, 51, 61, 79, 45, 66, 40, 85, 90, 98, 97, 65, 51, 62, 63, 63, 51, 67, 59, 56, 63, 65, 80, 70, 73, 64, 58, 47, 89, 60, 48, 64, 63, 55, 49, 89, 66, 68, 64, 66, 52, 67, 80, 70, 68, 78, 66, 78, 81, 72, 60, 78, 93, 61, 65, 69, 57, 50, 83, 74, 41, 81, 60, 71, 65, 66, 36, 58, 85, 77, 45, 66, 71, 43, 63, 55, 57, 74, 80, 109, 64, 63, 47, 54, 67, 74, 61, 69, 66, 67, 83, 54, 56, 66, 99, 77, 56, 55, 57, 45, 76, 71, 110, 65, 64, 62, 55, 56, 52, 48, 76, 50, 74, 49, 93, 75, 55, 59, 53, 57, 63, 55, 55, 59, 66, 75, 68, 75, 57, 53, 61, 61, 70, 84, 48, 51, 60, 68, 66, 84, 63, 65, 104, 49, 63, 77, 77, 70, 73, 64, 73, 58, 68, 72, 54, 47, 35, 69, 58, 51, 57, 90, 82, 74, 54, 75, 76, 53, 59, 51, 59, 50, 118, 59, 80, 75, 57, 59, 77, 62, 77, 70, 57, 76, 79, 42, 51, 62, 78, 61, 65, 53, 72, 59, 59, 59, 84, 65, 62, 65, 49, 60, 69, 67, 94, 55, 61, 67, 66, 60, 58, 66, 58, 51, 78, 68, 98, 56, 77, 57, 55, 74, 81, 64, 47, 60, 64, 79, 58, 65, 44, 49, 87, 88, 49, 66, 72, 68, 68, 78, 48, 77, 55, 64, 58, 73, 67, 67, 56, 49, 71, 61, 55, 79, 89, 102, 56, 81, 56, 90, 67, 63, 69, 58, 54, 61, 57, 86, 48, 61, 64, 67, 58, 74, 66, 70, 61, 58, 58, 65, 56, 59, 48, 52, 49, 110, 82, 55, 56, 72, 60, 68, 63, 97, 69, 55, 79, 52, 41, 68, 51, 79, 64, 59, 61, 73, 69, 65, 58, 101, 78, 49, 62, 69, 53, 65, 63, 64, 62, 54, 73, 56, 56, 68, 57, 57, 38, 82, 55, 68, 55, 46, 67, 59, 59, 70, 82, 64, 73, 70, 95, 61, 55, 53, 64, 61, 67, 67, 65, 75, 63, 78, 55, 41, 62, 58, 55, 63, 59, 56, 56, 77, 69, 57, 59, 69, 55, 62, 59, 57, 61, 50, 58, 89, 67, 73, 52, 58, 73, 57, 64, 62, 46, 55, 83, 72, 76, 85, 76, 67, 67, 70, 88, 89, 74, 72, 66, 50, 85, 116, 63, 77, 55, 51, 53, 70, 58, 63, 52, 66, 63, 78, 50, 69, 53, 61, 67, 63, 108, 59, 60, 64, 71, 57, 102, 66, 82, 58, 70, 59, 70, 57, 69, 105, 65, 63, 68, 81, 78, 47, 60, 68, 78, 75, 69, 72, 53, 58, 59, 66, 59, 58, 58, 66, 61, 58, 94, 52, 57, 69, 50, 66, 57, 80, 55, 67, 48, 56, 109, 57, 70, 68, 61, 76, 66, 60, 131, 75, 71, 54, 60, 63, 81, 64, 68, 67, 63, 59, 81, 56, 57, 74, 55, 85, 82, 79, 67, 66, 65, 46, 67, 68, 47, 66, 78, 48, 66, 73, 61, 71, 48, 63, 65, 60, 67, 64, 59, 72, 64, 62, 68, 38, 57, 43, 77, 54, 62, 56, 58, 61, 58, 82, 52, 69, 72, 62, 70, 65, 75, 52, 67, 75, 42, 75, 62, 65, 59, 60, 93, 56, 56, 60, 63, 59, 57, 48, 96, 64, 52, 58, 56, 65, 53, 63, 65, 80, 65, 71, 61, 49, 75, 66, 65, 65, 68, 76, 61, 70, 71, 79, 64, 68, 64, 65, 64, 62, 112, 62, 61, 66, 68, 66, 72, 76, 72, 62, 101, 70, 61, 57, 95, 62, 54, 60, 80, 74, 66, 55, 63, 76, 59, 55, 72, 59, 102, 72, 37, 54, 67, 76, 63, 41, 56, 67, 46, 83, 63, 60, 92, 75, 56, 55, 55, 62, 106, 74, 75, 58, 57, 68, 73, 60, 77, 109, 64, 59, 70, 66, 81, 55, 58, 57, 69, 65, 57, 51, 68, 125, 67, 74, 86, 69, 59, 65, 60, 62, 64, 53, 60, 101, 67, 71, 51, 72, 81, 51, 61, 58, 55, 55, 89, 54, 63, 83, 62, 96, 59, 72, 59, 57, 70, 56, 56, 66, 78, 76, 55, 56, 49, 56, 60, 69, 58, 55, 70, 71, 60, 61, 70, 38, 79, 64, 61, 51, 59, 71, 86, 77, 72, 71, 67, 100, 96, 70, 79, 82, 56, 64, 80, 71, 44, 79, 58, 52, 65, 50, 61, 72, 68, 58, 72, 62, 65, 49, 64, 60, 60, 59, 79, 79, 76, 66, 55, 67, 62, 54, 108, 67, 70, 87, 53, 61, 54, 64, 96, 50, 59, 68, 71, 55, 48, 56, 76, 60, 48, 53, 47, 44, 69, 64, 90, 62, 49, 57, 55, 57, 90, 62, 57, 77, 79, 63, 68, 60, 59, 73, 75, 71, 79, 57, 69, 56, 57, 63, 65, 61, 61, 64, 81, 66, 71, 58, 58, 61, 60, 62, 95, 61, 139, 81, 75, 57, 60, 68, 46, 59, 54, 60, 82, 91, 55, 55, 49, 56, 68, 66, 65, 49, 63, 61, 64, 72, 60, 72, 56, 51, 68, 98, 63, 100, 69, 66, 63, 60, 58, 80, 61, 44, 72, 65, 70, 75, 58, 55, 101, 77, 69, 88, 101, 65, 62, 68, 172, 68, 48, 70, 60, 93, 67, 54, 72, 64, 51, 79, 146, 89, 61, 104, 58, 66, 46, 61, 74, 97, 66, 59, 63, 69, 61, 53, 64, 97, 105, 56, 69, 86, 73, 65, 51, 49, 58, 46, 51, 50, 64, 52, 44, 63, 76, 86, 69, 59, 65, 63, 59, 56, 54, 63, 47, 80, 77, 69, 78, 55, 51, 76, 57, 55, 60, 65, 75, 68, 57, 63, 94, 56, 71, 62, 65, 47, 71, 67, 94, 54, 63, 67, 48, 73, 51, 55, 85, 66, 54, 64, 67, 67, 45, 72, 57, 61, 60, 65, 71, 70, 57, 42, 65, 67, 63, 53, 63, 63, 62, 65, 53, 53, 68, 66, 60, 63, 89, 60, 64, 61, 79, 72, 62, 53, 66, 103, 63, 102, 60, 56, 98, 47, 68, 50, 94, 59, 86, 57, 65, 81, 58, 54, 61, 56, 77, 77, 52, 59, 60, 65, 66, 70, 61, 64, 54, 51, 57, 52, 74, 52, 57, 54, 65, 88, 55, 57, 61, 66, 64, 65, 39, 62, 64, 48, 93, 60, 79, 59, 62, 58, 69, 56, 64, 50, 55, 105, 55, 63, 58, 62, 53, 47, 59, 56, 68, 60, 63, 67, 68, 79, 58, 67, 61, 67, 63, 51, 64, 58, 113, 57, 52, 66, 81, 90, 93, 39, 69, 61, 60, 56, 86, 84, 60, 59, 50, 74, 64, 57, 57, 58, 101, 99, 88, 78, 50, 78, 57, 73, 59, 57, 58, 94, 61, 60, 61, 63, 55, 60, 41, 65, 88, 72, 49, 61, 76, 71, 71, 65, 69, 68, 64, 60, 63, 73, 60, 49, 69, 70, 87, 61, 84, 78, 58, 57, 74, 72, 44, 58, 113, 59, 61, 66, 90, 72, 62, 71, 70, 77, 77, 76, 60, 60, 41, 57, 56, 55, 51, 58, 77, 58, 56, 75, 56, 58, 68, 52, 57, 77, 51, 59, 56, 53, 68, 80, 64, 106, 69, 80, 63, 55, 79, 66, 47, 61, 90, 62, 57, 58, 65, 64, 55, 59, 56, 68, 77, 58, 61, 59, 61, 51, 54, 74, 54, 60, 62, 64, 65, 67, 72, 93, 93, 60, 55, 47, 75, 56, 75, 61, 62, 81, 77, 62, 86, 93, 56, 44, 65, 54, 73, 69, 81, 58, 68, 63, 56, 73, 67, 96, 80, 62, 77, 76, 78, 53, 75, 81, 87, 70, 50, 65, 51, 60, 74, 74, 96, 96, 70, 53, 62, 83, 53, 69, 62, 73, 67, 48, 93, 36, 73, 71, 68, 69, 67, 44, 88, 63, 66, 54, 73, 56, 66, 64, 49, 71, 68, 66, 57, 52, 54, 70, 72, 74, 80, 54, 64, 55, 53, 62, 55, 47, 65, 89, 54, 76, 58, 56, 76, 111, 59, 57, 75, 62, 73, 60, 99, 95, 53, 73, 101, 68, 55, 66, 39, 50, 62, 53, 63, 87, 68, 103, 45, 70, 91, 87, 100, 71, 53, 60, 60, 59, 60, 76, 59, 103, 55, 42, 66, 65, 75, 55, 59, 81, 64, 80, 63, 46, 79, 56, 64, 83, 62, 77, 73, 73, 81, 57, 62, 61, 41, 67, 110, 54, 59, 48, 46, 52, 56, 60, 69, 73, 46, 56, 80, 70, 73, 59, 74, 68, 58, 69, 77, 58, 71, 120, 107, 62, 65, 59, 40, 71, 35, 64, 36, 105, 72, 87, 64, 52, 79, 54, 44, 78, 111, 64, 64, 60, 60, 53, 73, 68, 80, 66, 63, 51, 67, 68, 63, 58, 59, 73, 63, 69, 66, 105, 82, 73, 48, 55, 69, 48, 43, 55, 70, 37, 54, 62, 56, 55, 79, 68, 77, 67, 77, 57, 90, 55, 85, 96, 44, 62, 45, 65, 61, 57, 70, 48, 59, 74, 80, 70, 62, 67, 55, 60, 60, 60, 66, 41, 53, 61, 68, 43, 64, 78, 59, 57, 64, 58, 61, 50, 85, 57, 66, 65, 84, 79, 58, 54, 69, 69, 58, 81, 70, 90, 74, 60, 58, 82, 56, 44, 57, 68, 70, 45, 81, 59, 66, 55, 61, 71, 70, 55, 71, 67, 66, 48, 57, 65, 68, 106, 79, 45, 81, 76, 63, 62, 98, 74, 64, 56, 68, 63, 46, 78, 60, 73, 60, 55, 42, 60, 52, 66, 58, 55, 86, 89, 57, 51, 49, 56, 76, 71, 60, 64, 62, 75, 67, 76, 93, 62, 93, 55, 67, 60, 51, 61, 84, 90, 67, 67, 30, 71, 69, 69, 85, 47, 58, 70, 35, 53, 41, 86, 60, 65, 59, 62, 53, 79, 63, 68, 54, 59, 63, 89, 64, 63, 59, 62, 67, 59, 91, 67, 65, 55, 64, 76, 67, 95, 64, 69, 47, 71, 87, 65, 68, 46, 70, 77, 74, 102, 96, 68, 61, 89, 61, 55, 38, 70, 56, 54, 57, 54, 62, 62, 56, 61, 79, 53, 67, 60, 106, 63, 63, 59, 63, 78, 48, 97, 73, 57, 69, 75, 41, 65, 54, 123, 67, 55, 57, 136, 48, 61, 59, 67, 107, 98, 86, 83, 64, 54, 58, 72, 61, 62, 52, 68, 57, 72, 59, 62, 56, 53, 55, 72, 48, 69, 87, 63, 65, 60, 58, 73, 72, 76, 64, 49, 73, 79, 63, 54, 93, 100, 46, 50, 60, 62, 71, 65, 60, 48, 49, 65, 76, 67, 47, 83, 44, 82, 100, 60, 48, 79, 67, 57, 55, 65, 60, 64, 66, 86, 81, 81, 62, 58, 69, 62, 60, 60, 75, 50, 86, 78, 57, 55, 46, 40, 72, 49, 51, 65, 66, 98, 54, 60, 70, 64, 61, 51, 60, 42, 54, 77, 63, 62, 68, 63, 69, 61, 47, 59, 72, 79, 57, 70, 64, 66, 99, 61, 68, 67, 60, 72, 112, 47, 51, 62, 80, 92, 75, 65, 63, 81, 63, 83, 70, 66, 38, 53, 90, 110, 54, 61, 77, 66, 73, 63, 63, 66, 55, 60, 84, 49, 56, 95, 107, 61, 83, 71, 69, 88, 82, 70, 53, 65, 85, 49, 74, 58, 62, 70, 61, 91, 51, 71, 73, 50, 80, 65, 72, 84, 60, 68, 64, 56, 53, 44, 79, 65, 71, 53, 70, 55, 70, 58, 56, 74, 75, 80, 48, 68, 57, 49, 45, 79, 54, 58, 55, 82, 47, 65, 107, 91, 51, 76, 60, 69, 51, 72, 66, 95, 53, 56, 64, 90, 75, 73, 70, 56, 56, 52, 78, 70, 66, 59, 71, 45, 45, 71, 81, 75, 42, 56, 58, 62, 79, 59, 75, 70, 49, 62, 80, 69, 98, 63, 51, 66, 69, 59, 56, 65, 55, 70, 84, 58, 53, 49, 56, 50, 70, 66, 69, 87, 45, 75, 58, 48, 79, 80, 46, 53, 77, 68, 50, 77, 49, 69, 74, 65, 53, 88, 42, 68, 56, 67, 69, 59, 49, 68, 71, 58, 73, 74, 64, 76, 49, 49, 67, 51, 70, 57, 49, 52, 47, 54, 76, 57, 63, 64, 44, 71, 77, 115, 44, 59, 53, 73, 65, 57, 45, 85, 71, 44, 44, 66, 74, 70, 84, 73, 62, 62, 60, 62, 40, 55, 70, 55, 77, 64, 50, 98, 70, 52, 77, 50, 73, 66, 73, 127, 75, 123, 84, 55, 82, 60, 50, 60, 149, 64, 71, 55, 47, 67, 46, 120, 84, 95, 54, 54, 52, 63, 77, 72, 69, 86, 73, 107, 54, 34, 62, 67, 54, 72, 51, 61, 77, 64, 62, 55, 58, 48, 63, 60, 65, 79, 60, 132, 65, 86, 101, 67, 87, 58, 49, 80, 63, 65, 52, 71, 53, 55, 68, 71, 95, 76, 69, 48, 46, 70, 48, 60, 59, 60, 54, 47, 50, 57, 55, 76, 74, 68, 79, 56, 62, 80, 35, 45, 64, 55, 64, 77, 70, 60, 53, 68, 55, 78, 74, 103, 43, 102, 62, 58, 84, 50, 73, 60, 56, 76, 80, 62, 70, 92, 64, 74, 60, 52, 54, 62, 59, 74, 47, 59, 33, 48, 59, 54, 76, 57, 76, 61, 93, 62, 54, 73, 61, 66, 41, 87, 78, 54, 30, 75, 77, 85, 56, 78, 74, 83, 72, 75, 60, 46, 36, 75, 110, 51, 50, 59, 89, 70, 56, 58, 74, 65, 95, 86, 71, 93, 72, 62, 45, 70, 53, 57, 78, 82, 97, 85, 63, 85, 58, 52, 57, 70, 73, 58, 50, 60, 50, 62, 64, 64, 50, 115, 67, 67, 53, 68, 75, 54, 51, 89, 54, 101, 68, 43, 58, 50, 43, 60, 62, 96, 56, 72, 86, 51, 63, 44, 78, 77, 57, 44, 67, 72, 68, 74, 55, 95, 84, 82, 59, 68, 77, 60, 46, 56, 78, 71, 69, 57, 53, 72, 65, 72, 79, 62, 92, 66, 73, 55, 69, 79, 71, 50, 78, 52, 66, 54, 71, 56, 100, 39, 76, 42, 55, 102, 78, 67, 55, 55, 77, 60, 72, 58, 57, 76, 56, 72, 61, 47, 62, 52, 63, 76, 71, 61, 60, 55, 45, 67, 69, 68, 66, 62, 84, 62, 64, 55, 58, 66, 51, 65, 53, 64, 50, 66, 66, 52, 50, 61, 71, 67, 63, 53, 41, 57, 63, 64, 74, 70, 49, 76, 75, 76, 74, 65, 69, 58, 57, 66, 82, 45, 74, 75, 73, 64, 89, 92, 75, 44, 49, 71, 55, 57, 60, 62, 61, 48, 65, 59, 63, 64, 63, 58, 48, 45, 56, 89, 91, 59, 59, 49, 62, 76, 82, 59, 50, 57, 78, 76, 94, 67, 78, 68, 74, 90, 59, 73, 60, 80, 56, 73, 62, 67, 72, 56, 51, 68, 51, 67, 61, 71, 66, 64, 48, 73, 62, 69, 70, 72, 61, 67, 59, 56, 67, 89, 92, 55, 52, 61, 64, 53, 58, 57, 69, 60, 63, 48, 122, 67, 63, 102, 99, 67, 69, 65, 74, 66, 63, 53, 79, 68, 61, 62, 58, 44, 64, 56, 67, 65, 51, 67, 56, 65, 64, 56, 56, 61, 61, 60, 52, 55, 78, 74, 50, 112, 67, 68, 79, 69, 47, 78, 50, 91, 56, 79, 73, 87, 60, 65, 46, 138, 77, 54, 70, 61, 63, 65, 61, 63, 67, 56, 61, 90, 52, 63, 49, 66, 63, 63, 70, 61, 62, 73, 59, 66, 84, 55, 77, 64, 60, 52, 75, 62, 56, 79, 99, 60, 81, 57, 67, 58, 79, 55, 84, 41, 61, 60, 55, 60, 76, 48, 56, 74, 53, 59, 76, 58, 50, 56, 58, 76, 63, 64, 51, 67, 63, 68, 63, 75, 52, 49, 65, 57, 38, 55, 61, 100, 67, 72, 56, 81, 64, 55, 67, 60, 57, 44, 57, 68, 71, 65, 71, 73, 74, 58, 75, 78, 69, 66, 51, 66, 54, 64, 72, 61, 104, 67, 62, 55, 101, 63, 57, 44, 63, 86, 66, 56, 74, 71, 68, 74, 58, 67, 72, 54, 55, 78, 56, 62, 61, 69, 52, 61, 54, 36, 65, 48, 61, 68, 90, 99, 70, 60, 55, 46, 69, 55, 73, 44, 74, 62, 70, 67, 59, 71, 92, 63, 70, 60, 74, 70, 58, 63, 116, 57, 57, 72, 67, 66, 87, 66, 58, 62, 52, 129, 60, 66, 53, 49, 59, 58, 58, 54, 59, 65, 64, 78, 60, 75, 58, 78, 57, 53, 62, 62, 86, 55, 44, 58, 62, 58, 60, 75, 62, 56, 61, 68, 60, 75, 55, 62, 68, 52, 77, 59, 81, 60, 81, 70, 76, 70, 51, 52, 62, 60, 73, 63, 96, 60, 57, 67, 49, 58, 73, 61, 64, 58, 54, 55, 80, 65, 77, 97, 65, 48, 70, 62, 61, 65, 50, 53, 64, 67, 74, 108, 57, 55, 73, 59, 70, 55, 73, 84, 60, 57, 61, 47, 53, 71, 64, 51, 64, 53, 55, 57, 84, 97, 58, 52, 79, 65, 60, 60, 83, 65, 55, 74, 61, 68, 69, 66, 87, 86, 59, 75, 60, 66, 64, 59, 59, 70, 65, 90, 60, 75, 55, 108, 53, 82, 59, 54, 61, 59, 61, 75, 43, 123, 61, 68, 62, 81, 47, 69, 63, 52, 68, 55, 68, 50, 85, 55, 74, 51, 62, 63, 82, 76, 56, 106, 50, 61, 57, 57, 64, 74, 56, 54, 66, 63, 60, 64, 105, 60, 68, 62, 48, 66, 82, 61, 57, 89, 58, 74, 65, 74, 57, 60, 85, 47, 48, 52, 73, 69, 48, 66, 56, 53, 59, 73, 66, 77, 56, 56, 60, 61, 73, 63, 56, 74, 54, 53, 86, 48, 75, 71, 76, 66, 56, 71, 76, 64, 66, 51, 78, 64, 60, 48, 70, 75, 61, 66, 76, 73, 59, 58, 54, 68, 66, 62, 83, 52, 66, 57, 75, 87, 66, 62, 64, 78, 75, 77, 72, 63, 63, 69, 71, 67, 56, 64, 62, 83, 63, 130, 122, 57, 69, 58, 75, 59, 36, 60, 74, 61, 59, 67, 51, 81, 67, 69, 73, 72, 85, 57, 60, 105, 63, 77, 56, 64, 52, 66, 64, 40, 58, 66, 62, 63, 56, 68, 66, 61, 76, 50, 79, 72, 51, 56, 58, 43, 90, 56, 64, 74, 56, 53, 59, 60, 149, 77, 53, 53, 75, 54, 52, 50, 65, 51, 73, 64, 60, 50, 59, 106, 82, 61, 60, 68, 50, 90, 61, 130, 49, 96, 66, 72, 58, 76, 66, 60, 50, 66, 50, 59, 86, 58, 55, 35, 64, 48, 55, 53, 49, 50, 73, 72, 57, 57, 71, 66, 81, 67, 79, 64, 63, 72, 54, 63, 69, 75, 116, 77, 66, 70, 60, 65, 65, 70, 67, 69, 52, 54, 52, 57, 44, 64, 52, 76, 65, 71, 70, 64, 58, 72, 77, 59, 65, 70, 61, 65, 82, 50, 60, 66, 54, 83, 61, 82, 54, 65, 55, 86, 68, 63, 63, 61, 56, 58, 62, 58, 84, 50, 61, 77, 64, 55, 56, 58, 49, 57, 57, 61, 90, 72, 77, 110, 66, 59, 70, 87, 70, 55, 62, 50, 82, 88, 79, 71, 60, 70, 76, 76, 63, 52, 70, 62, 69, 69, 71, 68, 67, 47, 80, 58, 65, 46, 79, 107, 49, 63, 92, 69, 67, 60, 56, 152, 59, 56, 67, 52, 52, 58, 75, 67, 54, 70, 66, 82, 63, 64, 70, 82, 83, 73, 56, 60, 58, 83, 75, 56, 68, 67, 52, 54, 53, 66, 57, 68, 66, 52, 55, 74, 63, 63, 58, 57, 64, 59, 62, 72, 44, 45, 68, 61, 49, 62, 109, 79, 50, 45, 53, 47, 60, 75, 61, 54, 102, 54, 47, 68, 53, 83, 63, 73, 70, 73, 60, 70, 51, 68, 70, 88, 68, 39, 50, 61, 62, 73, 52, 51, 80, 63, 59, 73, 64, 99, 53, 62, 56, 78, 66, 60, 79, 53, 67, 51, 60, 48, 63, 57, 60, 74, 72, 66, 60, 75, 71, 57, 58, 67, 61, 52, 72, 58, 61, 66, 71, 75, 72, 58, 88, 53, 76, 61, 72, 60, 49, 60, 81, 68, 63, 50, 73, 88, 62, 67, 77, 54, 73, 64, 83, 46, 60, 76, 80, 53, 73, 97, 59, 84, 79, 69, 77, 64, 64, 66, 59, 62, 50, 64, 93, 47, 64, 49, 76, 68, 62, 65, 53, 63, 57, 59, 56, 72, 55, 51, 76, 50, 69, 77, 105, 58, 69, 66, 51, 56, 55, 60, 60, 56, 72, 54, 47, 52, 60, 57, 59, 62, 76, 81, 70, 77, 69, 86, 49, 55, 86, 73, 72, 51, 90, 69, 76, 56, 62, 71, 39, 64, 72, 55, 70, 54, 59, 55, 49, 77, 73, 74, 55, 45, 55, 81, 70, 62, 47, 87, 117, 73, 65, 69, 65, 55, 82, 56, 53, 53, 64, 60, 62, 85, 68, 43, 58, 80, 103, 70, 70, 63, 62, 43, 56, 72, 70, 97, 60, 59, 69, 64, 62, 75, 74, 66, 65, 61, 65, 66, 58, 59, 60, 46, 70, 108, 64, 69, 44, 72, 78, 100, 43, 56, 70, 73, 69, 64, 67, 67, 64, 53, 82, 65, 63, 69, 70, 72, 57, 77, 58, 51, 65, 78, 38, 73, 52, 57, 62, 55, 57, 40, 56, 62, 50, 76, 79, 67, 62, 59, 47, 60, 43, 48, 54, 52, 68, 69, 64, 60, 66, 63, 57, 54, 53, 55, 52, 67, 64, 98, 61, 55, 71, 75, 78, 67, 52, 53, 73, 135, 60, 65, 63, 60, 60, 55, 67, 67, 73, 90, 75, 46, 53, 57, 58, 57, 65, 61, 55, 66, 72, 62, 65, 57, 68, 64, 59, 57, 54, 71, 73, 56, 52, 51, 51, 70, 53, 49, 74, 51, 73, 55, 62, 59, 59, 74, 54, 64, 73, 86, 60, 68, 110, 65, 56, 75, 85, 72, 61, 60, 79, 63, 52, 64, 50, 53, 52, 56, 64, 86, 54, 64, 55, 59, 59, 86, 53, 80, 63, 114, 62, 87, 59, 54, 67, 82, 63, 61, 82, 56, 58, 53, 70, 55, 90, 49, 62, 73, 74, 54, 60, 64, 69, 74, 81, 61, 151, 58, 77, 72, 55, 51, 69, 46, 99, 98, 64, 61, 76, 47, 74, 67, 60, 61, 65, 67, 60, 61, 64, 68, 75, 58, 64, 77, 75, 65, 67, 50, 38, 59, 64, 90, 54, 81, 65, 80, 76, 94, 99, 89, 64, 59, 77, 91, 44, 76, 71, 80, 56, 54, 56, 66, 92, 50, 60, 85, 50, 47, 60, 61, 67, 69, 88, 87, 84, 61, 72, 51, 62, 56, 69, 62, 67, 51, 70, 73, 64, 59, 69, 46, 55, 63, 98, 50, 57, 56, 57, 67, 57, 67, 57, 52, 53, 63, 54, 62, 58, 62, 78, 71, 57, 66, 70, 71, 59, 59, 70, 60, 79, 58, 77, 57, 51, 55, 101, 61, 48, 95, 78, 53, 59, 61, 64, 57, 64, 67, 64, 53, 61, 51, 50, 93, 58, 63, 69, 76, 53, 42, 75, 49, 60, 51, 73, 71, 51, 65, 51, 48, 63, 63, 88, 65, 64, 62, 87, 58, 67, 59, 58, 68, 43, 59, 47, 81, 71, 101, 59, 68, 57, 76, 43, 55, 116, 60, 59, 67, 67, 58, 96, 106, 68, 60, 67, 75, 58, 67, 60, 63, 55, 51, 83, 65, 93, 66, 49, 85, 49, 60, 101, 50, 64, 57, 72, 59, 55, 122, 62, 105, 50, 64, 54, 66, 74, 69, 62, 64, 64, 86, 68, 58, 66, 77, 58, 47, 51, 78, 59, 88, 71, 50, 63, 55, 57, 57, 63, 63, 59, 62, 69, 83, 56, 65, 50, 61, 42, 94, 58, 58, 66, 90, 52, 77, 57, 51, 70, 64, 75, 73, 80, 51, 66, 54, 61, 91, 77, 71, 55, 72, 69, 62, 64, 61, 50, 63, 93, 56, 61, 58, 50, 69, 98, 67, 61, 63, 105, 79, 50, 84, 49, 44, 66, 54, 87, 64, 69, 55, 65, 83, 66, 98, 56, 83, 91, 88, 87, 82, 76, 64, 60, 70, 58, 58, 71, 66, 53, 63, 61, 58, 97, 60, 41, 69, 55, 72, 71, 44, 40, 84, 57, 63, 56, 90, 85, 50, 68, 53, 59, 66, 87, 62, 67, 64, 69, 75, 65, 70, 67, 85, 83, 113, 62, 59, 71, 89, 64, 65, 47, 69, 59, 69, 52, 75, 53, 57, 66, 60, 60, 48, 68, 60, 47, 88, 60, 63, 49, 53, 58, 56, 68, 50, 91, 90, 49, 50, 71, 56, 151, 53, 58, 57, 61, 51, 101, 61, 66, 54, 58, 89, 61, 65, 77, 71, 75, 56, 78, 65, 67, 58, 53, 57, 58, 60, 56, 71, 67, 57, 79, 67, 57, 71, 56, 65, 68, 64, 56, 62, 51, 60, 67, 66, 59, 68, 70, 80, 59, 64, 100, 69, 55, 66, 83, 70, 85, 64, 61, 76, 51, 47, 49, 76, 60, 100, 70, 54, 59, 56, 88, 63, 53, 50, 56, 63, 62, 49, 80, 62, 58, 93, 114, 100, 58, 61, 68, 54, 52, 62, 80, 67, 91, 64, 62, 40, 62, 51, 58, 91, 59, 53, 52, 66, 79, 64, 59, 51, 44, 65, 49, 91, 99, 66, 57, 55, 67, 79, 75, 65, 62, 70, 81, 82, 53, 56, 69, 57, 54, 46, 77, 76, 57, 55, 70, 52, 49, 84, 66, 74, 63, 48, 55, 68, 76, 74, 126, 53, 63, 67, 54, 55, 44, 53, 65, 63, 61, 83, 80, 60, 56, 54, 86, 66, 55, 59, 66, 88, 66, 51, 63, 61, 57, 48, 45, 49, 65, 54, 61, 69, 71, 63, 64, 59, 59, 67, 63, 48, 60, 50, 73, 59, 55, 53, 80, 64, 79, 58, 71, 46, 102, 59, 51, 65, 60, 60, 51, 77, 55, 62, 63, 48, 84, 65, 52, 53, 92, 58, 110, 52, 55, 66, 69, 61, 65, 54, 78, 66, 38, 60, 74, 70, 50, 66, 72, 72, 81, 57, 61, 65, 64, 76, 54, 62, 65, 34, 63, 50, 69, 50, 59, 91, 67, 56, 68, 57, 69, 79, 56, 62, 64, 58, 72, 55, 69, 71, 57, 70, 70, 73, 58, 67, 84, 104, 57, 93, 78, 75, 52, 66, 69, 85, 66, 60, 79, 78, 52, 69, 62, 61, 67, 54, 67, 68, 54, 55, 50, 59, 75, 62, 61, 79, 68, 53, 66, 69, 98, 54, 62, 65, 86, 66, 55, 65, 52, 96, 48, 76, 46, 70, 52, 101, 53, 68, 86, 56, 61, 48, 78, 61, 79, 82, 52, 58, 50, 65, 65, 80, 54, 71, 126, 63, 72, 84, 73, 49, 61, 66, 77, 61, 69, 65, 66, 80, 58, 71, 51, 95, 59, 57, 80, 49, 95, 42, 48, 86, 72, 62, 55, 64, 63, 81, 74, 55, 57, 72, 156, 77, 62, 67, 56, 60, 38, 41, 67, 53, 65, 79, 71, 52, 47, 39, 53, 51, 67, 52, 72, 52, 93, 59, 50, 56, 91, 106, 56, 56, 62, 57, 69, 65, 59, 47, 57, 69, 60, 66, 71, 66, 51, 50, 80, 62, 85, 47, 53, 66, 71, 85, 63, 56, 52, 61, 83, 60, 34, 76, 54, 74, 61, 60, 73, 49, 53, 50, 87, 67, 94, 58, 62, 80, 67, 60, 87, 49, 79, 42, 65, 78, 73, 55, 55, 50, 73, 52, 66, 45, 85, 69, 59, 74, 64, 103, 75, 61, 84, 93, 73, 44, 57, 61, 77, 70, 83, 57, 79, 61, 94, 60, 56, 48, 61, 67, 45, 62, 69, 48, 48, 66, 57, 80, 81, 50, 55, 76, 92, 75, 67, 107, 47, 69, 67, 73, 72, 57, 83, 86, 65, 57, 74, 96, 48, 65, 61, 64, 99, 60, 68, 55, 72, 74, 64, 46, 63, 59, 52, 34, 86, 87, 56, 80, 64, 53, 55, 59, 69, 61, 56, 48, 81, 47, 91, 50, 62, 53, 71, 54, 50, 62, 62, 59, 58, 69, 73, 58, 56, 68, 59, 54, 73, 50, 60, 54, 94, 46, 68, 61, 71, 45, 55, 58, 68, 47, 68, 70, 104, 49, 86, 99, 72, 89, 60, 117, 57, 58, 46, 73, 54, 44, 78, 69, 59, 43, 69, 40, 78, 90, 78, 63, 75, 73, 75, 92, 67, 61, 41, 60, 92, 108, 105, 68, 51, 39, 59, 69, 70, 66, 63, 40, 85, 61, 67, 54, 85, 65, 91, 84, 78, 72, 118, 48, 77, 50, 54, 42, 58, 55, 70, 49, 115, 56, 58, 52, 61, 88, 107, 65, 46, 84, 51, 63, 48, 105, 61, 48, 75, 47, 70, 74, 89, 96, 69, 71, 67, 57, 78, 76, 54, 94, 44, 48, 62, 64, 41, 50, 43, 59, 56, 85, 105, 65, 47, 73, 55, 74, 113, 64, 59, 86, 69, 63, 59, 68, 67, 47, 50, 93, 46, 59, 80, 90, 49, 66, 53, 89, 53, 57, 55, 80, 72, 54, 86, 74, 55, 74, 47, 40, 101, 52, 88, 84, 41, 48, 68, 78, 97, 90, 58, 69, 73, 48, 51, 72, 42, 89, 54, 71, 58, 81, 65, 65, 54, 58, 47, 107, 94, 65, 70, 69, 54, 47, 48, 49, 71, 57, 79, 68, 62, 71, 62, 48, 62, 59, 61, 96, 65, 56, 56, 94, 67, 51, 77, 67, 61, 62, 89, 50, 84, 50, 54, 89, 40, 86, 60, 91, 78, 59, 66, 46, 101, 84, 55, 75, 57, 56, 82, 73, 70, 78, 78, 53, 48, 64, 75, 80, 53, 52, 82, 67, 68, 66, 98, 63, 63, 46, 71, 53, 67, 98, 102, 65, 75, 73, 89, 55, 74, 42, 85, 76, 63, 68, 69, 43, 86, 58, 62, 73, 92, 86, 58, 63, 50, 67, 59, 48, 53, 62, 79, 73, 76, 54, 74, 61, 45, 68, 71, 70, 72, 55, 67, 76, 68, 96, 63, 65, 35, 69, 52, 78, 49, 125, 81, 83, 45, 57, 70, 70, 54, 59, 44, 47, 44, 65, 79, 68, 60, 76, 53, 88, 54, 65, 70, 62, 47, 60, 62, 59, 72, 65, 75, 94, 70, 82, 53, 69, 60, 84, 68, 85, 64, 50, 70, 61, 34, 51, 50, 69, 69, 46, 62, 88, 62, 68, 43, 64, 33, 96, 70, 60, 48, 68, 70, 72, 66, 62, 83, 72, 71, 81, 69, 61, 63, 73, 66, 78, 43, 53, 103, 75, 73, 43, 71, 64, 68, 72, 58, 45, 82, 79, 51, 55, 43, 72, 56, 72, 61, 83, 59, 94, 63, 45, 55, 74, 67, 63, 60, 64, 71, 71, 62, 53, 73, 61, 54, 59, 75, 64, 60, 64, 54, 57, 77, 75, 66, 58, 63, 91, 61, 62, 56, 64, 58, 75, 65, 55, 84, 65, 50, 69, 42, 58, 84, 79, 48, 55, 60, 74, 58, 62, 96, 79, 80, 55, 72, 68, 47, 95, 49, 86, 56, 54, 80, 67, 123, 50, 64, 89, 79, 42, 56, 93, 61, 54, 50, 49, 71, 87, 71, 56, 110, 57, 46, 49, 72, 75, 78, 63, 42, 68, 67, 79, 60, 72, 56, 64, 62, 150, 73, 30, 105, 64, 60, 55, 75, 42, 55, 55, 36, 63, 98, 56, 61, 73, 64, 94, 79, 73, 109, 53, 73, 67, 79, 67, 60, 48, 70, 141, 62, 61, 60, 44, 76, 53, 44, 87, 69, 87, 50, 70, 66, 64, 68, 80, 75, 76, 58, 71, 48, 58, 65, 82, 61, 60, 71, 75, 52, 56, 57, 66, 72, 36, 78, 90, 62, 101, 34, 56, 47, 52, 61, 41, 60, 115, 76, 80, 70, 54, 107, 69, 56, 50, 76, 63, 56, 55, 66, 67, 70, 66, 63, 56, 52, 59, 89, 56, 84, 57, 57, 58, 56, 53, 63, 86, 75, 87, 48, 107, 81, 38, 55, 56, 78, 46, 44, 60, 65, 54, 71, 76, 69, 124, 48, 58, 65, 74, 60, 76, 55, 73, 102, 73, 58, 43, 95, 79, 45, 91, 67, 61, 45, 75, 93, 55, 48, 59, 55, 64, 66, 56, 61, 63, 101, 99, 51, 67, 54, 42, 79, 57, 140, 104, 50, 52, 50, 73, 76, 68, 108, 31, 72, 53, 69, 53, 59, 72, 61, 91, 57, 61, 49, 54, 51, 64, 50, 65, 88, 55, 38, 71, 69, 59, 63, 67, 74, 58, 47, 57, 67, 77, 64, 67, 73, 56, 52, 60, 83, 81, 66, 71, 61, 53, 64, 53, 43, 59, 43, 66, 61, 55, 49, 105, 50, 62, 47, 64, 86, 72, 59, 59, 74, 50, 74, 71, 81, 70, 71, 69, 54, 76, 70, 74, 51, 80, 71, 59, 82, 61, 59, 86, 106, 65, 50, 90, 74, 89, 70, 50, 53, 88, 86, 45, 47, 89, 69, 55, 55, 77, 64, 81, 80, 56, 82, 64, 46, 51, 51, 50, 64, 78, 76, 59, 69, 48, 37, 41, 75, 49, 70, 55, 58, 68, 52, 53, 90, 75, 86, 68, 55, 52, 71, 83, 71, 68, 43, 70, 83, 37, 54, 63, 65, 47, 49, 60, 42, 63, 60, 67, 63, 54, 72, 60, 51, 68, 54, 105, 60, 59, 43, 52, 68, 55, 98, 55, 64, 64, 63, 67, 83, 99, 59, 58, 65, 62, 64, 73, 63, 70, 45, 63, 58, 62, 58, 65, 60, 70, 91, 59, 59, 72, 61, 88, 69, 67, 75, 91, 68, 66, 62, 67, 61, 66, 52, 55, 39, 58, 51, 63, 77, 66, 47, 62, 69, 50, 52, 70, 35, 46, 57, 58, 70, 68, 66, 61, 53, 54, 60, 57, 72, 48, 71, 63, 65, 69, 60, 60, 73, 60, 45, 62, 61, 61, 58, 68, 65, 69, 62, 48, 67, 66, 97, 59, 63, 86, 69, 79, 67, 53, 59, 73, 88, 56, 123, 56, 124, 70, 78, 60, 69, 58, 49, 79, 65, 73, 66, 62, 78, 73, 50, 66, 62, 54, 66, 66, 72, 62, 64, 60, 48, 54, 97, 59, 53, 60, 66, 103, 57, 60, 75, 87, 78, 55, 86, 62, 65, 78, 54, 67, 58, 56, 69, 57, 70, 68, 63, 70, 72, 63, 75, 59, 47, 115, 69, 59, 55, 112, 90, 54, 74, 55, 81, 46, 75, 46, 49, 56, 96, 73, 91, 48, 52, 52, 64, 42, 62, 60, 62, 69, 70, 32, 58, 66, 42, 55, 31, 81, 77, 110, 75, 67, 71, 91, 97, 90, 55, 55, 39, 49, 89, 58, 50, 67, 51, 62, 61, 43, 83, 52, 53, 39, 63, 64, 60, 73, 61, 64, 76, 72, 61, 86, 59, 48, 66, 65, 56, 64, 75, 55, 81, 60, 75, 55, 50, 107, 78, 65, 58, 68, 60, 81, 82, 55, 42, 69, 119, 76, 61, 32, 51, 52, 76, 74, 71, 91, 67, 58, 104, 53, 82, 58, 60, 59, 40, 53, 57, 66, 65, 55, 78, 49, 63, 70, 71, 48, 60, 52, 97, 51, 73, 42, 75, 62, 52, 71, 70, 93, 67, 68, 69, 64, 49, 51, 126, 66, 53, 48, 48, 107, 75, 89, 80, 81, 70, 56, 63, 90, 76, 76, 29, 68, 77, 85, 62, 55, 88, 77, 75, 76, 83, 67, 74, 47, 57, 77, 62, 91, 44, 46, 65, 49, 132, 62, 91, 52, 67, 55, 76, 106, 56, 67, 70, 71, 48, 48, 112, 79, 57, 52, 77, 80, 92, 50, 61, 83, 69, 54, 70, 70, 55, 55, 72, 63, 47, 71, 57, 103, 94, 60, 61, 72, 72, 75, 49, 52, 42, 83, 69, 80, 46, 61, 76, 52, 90, 60, 65, 71, 79, 47, 62, 69, 68, 56, 55, 58, 68, 46, 119, 46, 54, 74, 48, 85, 77, 50, 72, 69, 61, 59, 62, 61, 62, 68, 73, 61, 56, 52, 76, 69, 64, 83, 67, 40, 71, 83, 50, 71, 52, 51, 48, 84, 71, 69, 60, 96, 72, 63, 74, 64, 33, 72, 85, 64, 49, 77, 59, 67, 69, 65, 91, 64, 53, 70, 60, 71, 47, 90, 69, 61, 70, 78, 51, 66, 59, 116, 86, 59, 63, 67, 56, 52, 61, 62, 69, 72, 49, 72, 76, 68, 61, 73, 53, 62, 58, 71, 66, 54, 54, 73, 96, 42, 95, 77, 60, 82, 46, 64, 43, 79, 48, 38, 64, 69, 65, 74, 63, 90, 73, 59, 76, 57, 110, 52, 64, 47, 64, 59, 74, 82, 62, 63, 60, 63, 51, 77, 93, 85, 77, 69, 71, 84, 44, 94, 92, 51, 66, 65, 41, 93, 59, 82, 71, 56, 75, 51, 79, 66, 56, 76, 56, 79, 45, 67, 72, 43, 63, 66, 57, 68, 64, 80, 58, 76, 82, 45, 63, 64, 49, 72, 66, 60, 82, 53, 45, 53, 69, 50, 52, 59, 51, 69, 57, 64, 65, 79, 47, 84, 50, 65, 54, 57, 61, 47, 75, 63, 91, 52, 67, 58, 87, 57, 61, 68, 80, 70, 66, 80, 86, 54, 51, 70, 52, 49, 55, 70, 57, 68, 54, 64, 47, 62, 52, 76, 62, 60, 57, 86, 52, 48, 73, 43, 54, 74, 90, 55, 67, 69, 50, 62, 84, 70, 73, 51, 63, 56, 88, 72, 90, 66, 58, 85, 81, 64, 48, 76, 48, 36, 50, 61, 74, 57, 68, 65, 45, 59, 60, 113, 62, 66, 59, 55, 71, 66, 56, 57, 60, 58, 61, 55, 41, 66, 89, 51, 57, 118, 70, 58, 65, 78, 50, 80, 75, 58, 51, 84, 70, 75, 60, 64, 42, 91, 65, 74, 52, 55, 48, 63, 48, 77, 92, 73, 54, 79, 67, 66, 76, 52, 64, 121, 62, 61, 56, 91, 50, 143, 72, 53, 87, 85, 64, 62, 56, 52, 80, 47, 72, 71, 94, 66, 71, 76, 72, 72, 57, 50, 71, 63, 73, 98, 75, 60, 106, 52, 49, 72, 55, 81, 67, 67, 65, 113, 47, 45, 60, 74, 82, 78, 147, 50, 67, 56, 92, 77, 56, 70, 79, 71, 68, 58, 64, 41, 58, 87, 65, 46, 67, 54, 58, 50, 60, 81, 60, 59, 69, 73, 43, 62, 33, 63, 69, 69, 68, 53, 54, 42, 67, 69, 140, 52, 57, 92, 71, 68, 83, 66, 82, 58, 54, 124, 121, 56, 58, 59, 66, 53, 60, 66, 70, 64, 47, 70, 89, 67, 78, 49, 119, 72, 57, 57, 63, 82, 65, 56, 69, 68, 54, 62, 70, 55, 45, 63, 82, 71, 46, 50, 60, 63, 55, 59, 65, 67, 53, 59, 61, 59, 54, 72, 59, 74, 101, 50, 74, 62, 61, 61, 69, 96, 57, 59, 67, 75, 89, 78, 72, 56, 55, 56, 59, 45, 60, 67, 77, 71, 65, 63, 58, 55, 87, 71, 93, 65, 54, 38, 63, 70, 46, 68, 53, 61, 65, 62, 65, 64, 55, 64, 41, 57, 57, 73, 57, 52, 73, 75, 51, 53, 83, 77, 98, 59, 48, 51, 56, 76, 50, 62, 66, 73, 85, 110, 79, 58, 66, 75, 50, 59, 68, 63, 95, 58, 77, 117, 70, 45, 67, 98, 61, 87, 63, 65, 61, 90, 82, 43, 68, 56, 70, 62, 73, 66, 68, 96, 58, 56, 68, 55, 81, 73, 56, 62, 69, 60, 53, 64, 80, 64, 65, 53, 77, 54, 83, 74, 58, 63, 66, 75, 70, 55, 77, 66, 47, 50, 72, 64, 58, 66, 78, 57, 60, 78, 78, 64, 76, 113, 63, 62, 57, 62, 59, 69, 87, 44, 72, 76, 87, 118, 85, 60, 62, 52, 74, 52, 69, 61, 70, 45, 61, 66, 80, 70, 65, 60, 71, 87, 67, 65, 61, 61, 72, 71, 63, 64, 53, 47, 130, 64, 69, 70, 56, 84, 62, 68, 69, 60, 73, 51, 77, 69, 103, 69, 73, 62, 64, 59, 63, 62, 44, 69, 53, 64, 51, 60, 65, 54, 56, 63, 55, 50, 62, 43, 52, 59, 65, 64, 54, 65, 60, 66, 62, 90, 70, 76, 70, 77, 65, 53, 88, 59, 65, 75, 73, 63, 55, 72, 55, 55, 68, 58, 85, 55, 57, 56, 49, 63, 90, 69, 64, 74, 44, 54, 71, 51, 61, 73, 73, 78, 76, 85, 68, 63, 54, 82, 72, 66, 56, 65, 75, 65, 41, 59, 73, 67, 56, 77, 55, 50, 53, 69, 71, 74, 40, 75, 77, 68, 71, 61, 89, 71, 56, 55, 59, 70, 66, 74, 70, 58, 69, 76, 50, 50, 71, 52, 48, 69, 70, 70, 53, 58, 59, 65, 74, 68, 82, 75, 63, 69, 67, 55, 56, 74, 59, 86, 57, 55, 45, 45, 69, 63, 77, 83, 42, 59, 52, 57, 56, 69, 57, 55, 61, 53, 64, 68, 71, 70, 44, 64, 68, 55, 65, 72, 46, 65, 49, 81, 67, 65, 53, 59, 57, 52, 64, 91, 46, 58, 52, 65, 56, 58, 70, 61, 64, 78, 61, 115, 64, 62, 69, 88, 70, 67, 61, 90, 85, 60, 76, 64, 75, 54, 69, 68, 60, 79, 69, 65, 82, 87, 86, 71, 59, 71, 61, 77, 70, 63, 60, 59, 65, 96, 73, 63, 56, 65, 52, 62, 79, 72, 60, 71, 66, 60, 60, 48, 68, 80, 81, 87, 57, 57, 74, 94, 64, 50, 61, 61, 52, 53, 72, 72, 59, 56, 62, 85, 65, 86, 70, 150, 82, 68, 55, 77, 61, 147, 68, 83, 73, 66, 63, 68, 58, 70, 61, 70, 108, 76, 54, 62, 83, 68, 60, 53, 78, 53, 80, 59, 54, 61, 69, 58, 67, 62, 69, 67, 107, 60, 75, 67, 64, 53, 67, 67, 65, 58, 69, 52, 96, 72, 70, 63, 86, 43, 63, 70, 60, 57, 55, 52, 51, 49, 61, 70, 69, 57, 41, 61, 72, 66, 76, 81, 46, 52, 65, 81, 55, 50, 75, 90, 59, 58, 63, 52, 60, 49, 64, 57, 53, 56, 58, 66, 55, 55, 62, 44, 40, 72, 63, 61, 83, 72, 68, 61, 91, 99, 75, 76, 66, 67, 69, 70, 46, 103, 62, 75, 64, 78, 79, 52, 54, 52, 62, 58, 67, 76, 67, 58, 65, 110, 61, 71, 33, 66, 64, 78, 67, 92, 99, 58, 70, 73, 61, 62, 49, 63, 49, 54, 114, 73, 71, 61, 83, 86, 65, 65, 59, 60, 74, 81, 67, 54, 78, 80, 51, 55, 73, 76, 60, 45, 78, 58, 61, 66, 60, 65, 57, 75, 62, 82, 46, 61, 52, 50, 69, 71, 56, 55, 69, 69, 96, 55, 72, 65, 62, 58, 51, 60, 65, 55, 50, 64, 61, 67, 65, 62, 72, 64, 61, 78, 61, 90, 88, 54, 70, 54, 48, 63, 65, 62, 83, 80, 48, 62, 89, 56, 50, 62, 79, 63, 71, 60, 56, 75, 51, 85, 68, 64, 57, 69, 51, 127, 52, 75, 73, 57, 59, 100, 63, 73, 60, 66, 47, 65, 54, 61, 47, 81, 61, 61, 84, 53, 44, 89, 63, 59, 73, 70, 55, 62, 60, 50, 70, 60, 67, 63, 67, 52, 57, 61, 57, 94, 64, 55, 69, 61, 53, 71, 63, 74, 75, 45, 64, 63, 64, 73, 61, 65, 55, 87, 54, 77, 86, 68, 70, 105, 74, 57, 75, 66, 74, 66, 65, 56, 59, 55, 58, 68, 50, 56, 65, 75, 64, 64, 73, 60, 67, 69, 71, 67, 62, 56, 74, 70, 63, 85, 61, 79, 87, 50, 53, 66, 95, 69, 65, 70, 58, 60, 65, 50, 65, 62, 62, 75, 60, 64, 57, 55, 75, 62, 144, 56, 89, 52, 66, 73, 60, 54, 72, 73, 98, 58, 57, 73, 52, 73, 77, 62, 81, 100, 50, 67, 69, 69, 52, 73, 77, 54, 53, 70, 60, 56, 55, 75, 65, 60, 134, 61, 104, 64, 61, 52, 82, 65, 64, 59, 58, 57, 60, 56, 70, 68, 53, 75, 54, 64, 41, 66, 95, 66, 66, 46, 57, 75, 73, 47, 69, 60, 56, 58, 119, 52, 70, 57, 107, 82, 69, 59, 95, 106, 53, 58, 68, 49, 67, 64, 76, 86, 67, 73, 73, 66, 51, 69, 64, 65, 55, 61, 68, 48, 55, 61, 78, 70, 74, 46, 50, 53, 57, 71, 49, 63, 55, 58, 58, 44, 51, 68, 58, 62, 49, 65, 57, 69, 59, 62, 54, 62, 62, 57, 83, 63, 70, 54, 79, 50, 65, 73, 57, 62, 61, 80, 56, 73, 67, 62, 59, 87, 74, 65, 55, 37, 56, 61, 89, 75, 68, 52, 70, 80, 52, 46, 61, 63, 46, 67, 69, 65, 54, 88, 84, 62, 63, 64, 56, 74, 75, 72, 75, 89, 69, 83, 56, 55, 66, 68, 60, 96, 75, 117, 74, 93, 72, 54, 81, 67, 83, 74, 56, 49, 77, 63, 101, 69, 57, 67, 98, 71, 69, 47, 65, 53, 74, 68, 57, 58, 60, 81, 75, 63, 58, 77, 45, 63, 81, 70, 67, 94, 75, 68, 61, 54, 60, 56, 80, 61, 103, 70, 81, 53, 88, 59, 69, 63, 67, 73, 45, 65, 42, 47, 49, 57, 82, 59, 74, 78, 77, 90, 71, 48, 56, 55, 69, 47, 57, 61, 61, 71, 56, 68, 67, 65, 58, 57, 96, 77, 65, 60, 60, 75, 97, 63, 84, 54, 92, 56, 59, 59, 72, 72, 62, 77, 49, 72, 62, 80, 55, 59, 55, 54, 76, 54, 66, 47, 73, 70, 43, 73, 45, 52, 85, 59, 101, 62, 54, 70, 72, 83, 66, 64, 82, 73, 66, 64, 51, 58, 50, 54, 59, 62, 56, 87, 97, 74, 44, 81, 64, 89, 63, 59, 65, 75, 52, 76, 72, 78, 53, 60, 76, 62, 72, 68, 62, 61, 71, 47, 83, 69, 62, 60, 67, 63, 85, 70, 63, 62, 49, 49, 66, 60, 49, 63, 65, 69, 82, 50, 79, 52, 64, 83, 65, 60, 112, 66, 55, 52, 65, 42, 89, 54, 55, 54, 52, 102, 57, 70, 45, 49, 58, 62, 68, 42, 51, 66, 53, 55, 54, 49, 49, 90, 102, 76, 64, 74, 81, 60, 92, 74, 56, 73, 96, 48, 58, 57, 72, 70, 45, 93, 54, 56, 72, 67, 47, 47, 41, 59, 72, 57, 68, 76, 67, 62, 78, 68, 46, 52, 88, 87, 47, 59, 97, 84, 72, 52, 63, 47, 64, 60, 67, 50, 79, 52, 65, 52, 51, 89, 63, 77, 91, 54, 60, 64, 91, 68, 72, 79, 63, 59, 79, 63, 63, 65, 59, 47, 55, 53, 65, 61, 89, 85, 71, 48, 75, 65, 63, 49, 43, 94, 68, 66, 48, 69, 53, 64, 71, 77, 67, 58, 57, 59, 103, 78, 40, 73, 70, 60, 65, 79, 54, 78, 64, 64, 63, 45, 77, 89, 116, 68, 48, 71, 72, 51, 60, 68, 58, 36, 95, 46, 74, 67, 128, 48, 74, 60, 62, 45, 103, 83, 59, 57, 78, 47, 79, 78, 61, 39, 58, 52, 66, 74, 50, 73, 128, 55, 74, 59, 64, 93, 62, 63, 101, 47, 74, 106, 68, 68, 77, 70, 64, 50, 51, 98, 60, 47, 53, 52, 57, 72, 109, 64, 36, 57, 43, 71, 58, 69, 61, 71, 44, 55, 60, 56, 69, 98, 52, 58, 72, 90, 66, 79, 43, 66, 57, 97, 59, 80, 60, 62, 77, 49, 92, 55, 77, 69, 73, 51, 34, 73, 50, 78, 69, 50, 76, 59, 42, 63, 62, 57, 88, 64, 79, 90, 58, 68, 53, 65, 70, 77, 66, 74, 55, 61, 68, 65, 53, 71, 54, 63, 80, 67, 54, 65, 73, 65, 74, 84, 46, 55, 76, 63, 55, 53, 52, 72, 54, 60, 72, 81, 91, 47, 68, 61, 92, 60, 65, 75, 46, 57, 57, 66, 64, 82, 86, 65, 54, 68, 44, 97, 73, 55, 73, 57, 64, 70, 68, 59, 69, 91, 67, 56, 79, 63, 72, 64, 50, 65, 69, 58, 75, 74, 78, 71, 101, 61, 76, 83, 58, 66, 50, 70, 66, 71, 76, 50, 66, 74, 59, 88, 63, 55, 65, 81, 59, 65, 55, 41, 54, 73, 49, 58, 55, 66, 68, 52, 73, 72, 85, 63, 60, 79, 37, 65, 94, 69, 65, 56, 60, 59, 78, 59, 74, 75, 71, 55, 61, 63, 68, 68, 62, 83, 61, 65, 83, 64, 77, 62, 59, 84, 77, 112, 56, 83, 50, 67, 89, 60, 47, 53, 50, 60, 45, 82, 71, 49, 80, 70, 81, 93, 55, 67, 49, 91, 63, 80, 67, 48, 76, 85, 63, 57, 46, 55, 73, 47, 51, 62, 59, 49, 69, 51, 90, 58, 72, 65, 47, 65, 115, 57, 70, 55, 52, 58, 73, 60, 54, 73, 56, 109, 37, 88, 72, 55, 50, 67, 57, 55, 66, 122, 51, 81, 61, 69, 78, 58, 56, 60, 56, 46, 75, 77, 51, 56, 59, 69, 52, 45, 57, 69, 56, 64, 60, 83, 67, 71, 51, 88, 55, 62, 65, 67, 70, 37, 65, 44, 56, 142, 57, 74, 65, 60, 84, 66, 69, 45, 74, 103, 61, 63, 49, 68, 54, 66, 61, 73, 48, 52, 47, 82, 109, 67, 62, 68, 47, 71, 58, 47, 56, 66, 86, 56, 66, 58, 63, 87, 87, 80, 81, 63, 81, 67, 45, 79, 50, 73, 68, 57, 125, 63, 77, 73, 50, 55, 59, 60, 51, 58, 47, 80, 69, 77, 55, 61, 52, 72, 55, 70, 57, 66, 55, 59, 55, 67, 72, 74, 55, 58, 66, 53, 61, 64, 53, 101, 61, 64, 51, 60, 74, 64, 103, 82, 58, 58, 76, 54, 74, 63, 65, 72, 73, 67, 58, 39, 52, 77, 39, 49, 94, 59, 56, 60, 86, 60, 75, 48, 61, 52, 66, 86, 69, 50, 47, 65, 61, 65, 40, 67, 49, 52, 55, 51, 62, 56, 40, 72, 64, 61, 72, 50, 71, 54, 72, 53, 66, 58, 74, 65, 71, 60, 69, 76, 59, 59, 81, 69, 59, 58, 58, 61, 63, 63, 89, 112, 59, 79, 50, 83, 69, 80, 76, 53, 55, 72, 63, 53, 45, 55, 70, 86, 61, 66, 82, 71, 51, 63, 67, 65, 74, 72, 50, 48, 86, 66, 49, 81, 55, 35, 71, 73, 71, 75, 77, 56, 65, 70, 101, 61, 54, 58, 56, 65, 56, 62, 91, 107, 76, 63, 69, 70, 54, 89, 59, 79, 41, 54, 69, 78, 86, 82, 69, 60, 72, 39, 39, 57, 71, 61, 71, 52, 116, 66, 49, 77, 82, 71, 73, 64, 64, 73, 84, 66, 105, 61, 75, 71, 55, 51, 50, 49, 53, 78, 64, 62, 70, 54, 166, 53, 88, 50, 93, 68, 58, 68, 68, 64, 56, 69, 66, 68, 81, 61, 66, 79, 58, 65, 48, 74, 73, 62, 62, 92, 57, 80, 60, 61, 56, 70, 92, 54, 83, 82, 86, 63, 58, 54, 83, 64, 93, 89, 51, 58, 56, 74, 48, 61, 66, 60, 58, 56, 84, 60, 77, 53, 68, 62, 60, 59, 60, 63, 74, 69, 55, 69, 65, 69, 45, 83, 55, 86, 53, 78, 117, 50, 74, 94, 54, 88, 66, 51, 90, 83, 79, 60, 115, 46, 67, 59, 62, 69, 84, 70, 97, 50, 80, 49, 68, 66, 71, 45, 59, 42, 59, 99, 57, 63, 78, 48, 51, 55, 59, 63, 116, 71, 78, 73, 73, 77, 65, 115, 63, 51, 61, 41, 63, 44, 72, 72, 55, 69, 100, 58, 62, 66, 67, 60, 68, 67, 52, 68, 47, 72, 64, 47, 58, 78, 70, 71, 65, 60, 55, 56, 58, 51, 59, 65, 79, 49, 51, 55, 56, 56, 74, 60, 52, 57, 74, 58, 65, 69, 67, 45, 63, 87, 63, 54, 52, 90, 82, 85, 49, 58, 144, 85, 76, 77, 68, 73, 64, 70, 91, 72, 66, 88, 53, 51, 69, 80, 64, 50, 90, 68, 92, 83, 62, 69, 59, 85, 75, 53, 66, 48, 74, 65, 67, 57, 99, 71, 64, 74, 63, 64, 90, 45, 62, 89, 58, 53, 76, 62, 99, 58, 68, 60, 71, 57, 77, 54, 58, 77, 78, 60, 51, 42, 78, 55, 73, 48, 60, 57, 99, 74, 45, 68, 79, 87, 73, 58, 69, 53, 65, 68, 70, 60, 52, 48, 73, 58, 59, 72, 60, 60, 73, 59, 77, 51, 53, 70, 53, 73, 55, 59, 65, 70, 59, 65, 47, 55, 66, 78, 96, 55, 55, 60, 108, 66, 68, 53, 58, 85, 82, 59, 56, 79, 59, 69, 63, 62, 53, 56, 51, 82, 64, 70, 57, 62, 51, 79, 46, 49, 77, 49, 90, 72, 48, 67, 91, 62, 42, 40, 68, 53, 71, 87, 44, 74, 55, 78, 43, 70, 58, 87, 62, 59, 63, 73, 71, 63, 57, 51, 58, 68, 66, 66, 64, 97, 79, 37, 74, 64, 52, 74, 54, 68, 72, 80, 70, 68, 66, 73, 54, 77, 84, 67, 55, 67, 79, 68, 78, 86, 53, 64, 98, 68, 58, 72, 69, 67, 61, 65, 63, 68, 59, 58, 69, 55, 73, 51, 43, 71, 62, 71, 63, 51, 62, 70, 77, 68, 58, 63, 49, 76, 65, 58, 60, 51, 62, 69, 83, 76, 75, 66, 52, 68, 59, 65, 84, 103, 69, 52, 60, 70, 59, 53, 57, 70, 102, 69, 56, 62, 78, 52, 48, 64, 64, 70, 57, 43, 87, 63, 63, 73, 56, 60, 56, 80, 66, 66, 71, 77, 65, 71, 75, 43, 110, 57, 77, 54, 62, 65, 65, 78, 63, 73, 63, 57, 70, 78, 78, 45, 73, 60, 74, 77, 57, 86, 49, 75, 46, 86, 61, 67, 95, 49, 68, 67, 68, 70, 67, 65, 52, 66, 80, 59, 47, 79, 60, 79, 87, 78, 66, 69, 85, 70, 75, 87, 73, 58, 59, 44, 63, 73, 35, 70, 57, 61, 85, 60, 61, 57, 69, 53, 81, 49, 72, 63, 77, 66, 62, 56, 50, 61, 65, 129, 71, 70, 47, 77, 143, 55, 69, 70, 56, 53, 89, 52, 43, 53, 61, 80, 63, 72, 93, 76, 53, 73, 64, 67, 79, 74, 61, 87, 45, 69, 51, 56, 72, 60, 54, 71, 54, 67, 57, 67, 71, 70, 62, 60, 130, 65, 70, 87, 59, 71, 88, 79, 67, 75, 71, 98, 47, 52, 73, 71, 54, 63, 83, 57, 66, 79, 69, 79, 70, 81, 61, 80, 58, 51, 45, 58, 63, 63, 62, 56, 60, 66, 66, 58, 50, 77, 69, 62, 50, 51, 80, 78, 64, 81, 71, 61, 62, 66, 56, 59, 83, 78, 81, 65, 61, 71, 61, 52, 71, 79, 53, 40, 54, 78, 56, 48, 73, 64, 65, 74, 55, 72, 61, 111, 67, 66, 69, 62, 63, 78, 82, 57, 62, 61, 58, 79, 64, 61, 52, 74, 81, 49, 58, 57, 55, 52, 52, 65, 61, 77, 45, 49, 63, 66, 69, 59, 77, 89, 64, 55, 61, 56, 103, 75, 59, 61, 72, 54, 87, 58, 70, 73, 81, 72, 56, 53, 54, 46, 64, 67, 61, 46, 59, 43, 69, 48, 72, 63, 70, 64, 97, 52, 66, 80, 59, 82, 95, 53, 75, 47, 58, 53, 75, 42, 74, 102, 60, 45, 110, 74, 67, 75, 46, 73, 56, 73, 54, 85, 67, 41, 66, 65, 65, 93, 65, 47, 77, 48, 66, 82, 77, 55, 40, 99, 71, 64, 45, 73, 62, 71, 85, 61, 51, 79, 74, 54, 62, 91, 47, 79, 57, 59, 64, 64, 72, 64, 59, 53, 67, 51, 64, 67, 87, 74, 61, 70, 47, 86, 93, 60, 69, 62, 59, 57, 60, 87, 68, 80, 70, 80, 66, 95, 73, 63, 97, 55, 73, 61, 56, 63, 62, 60, 60, 73, 72, 51, 62, 67, 73, 73, 57, 55, 75, 72, 55, 34, 68, 64, 58, 78, 65, 67, 79, 57, 42, 215, 63, 105, 73, 65, 53, 54, 70, 67, 79, 63, 58, 55, 64, 58, 47, 73, 68, 81, 89, 61, 66, 64, 74, 58, 65, 69, 50, 83, 59, 86, 81, 74, 61, 59, 80, 73, 47, 67, 62, 76, 62, 104, 42, 66, 67, 74, 60, 73, 59, 68, 75, 67, 77, 82, 70, 71, 78, 77, 62, 61, 64, 57, 67, 76, 90, 78, 68, 61, 63, 66, 82, 74, 76, 94, 70, 54, 63, 61, 62, 56, 47, 60, 51, 68, 66, 79, 73, 49, 56, 58, 63, 74, 65, 85, 82, 54, 71, 44, 66, 59, 91, 54, 68, 61, 81, 70, 45, 71, 73, 65, 79, 53, 51, 82, 86, 66, 60, 64, 61, 62, 102, 55, 85, 46, 55, 54, 47, 41, 74, 77, 81, 51, 58, 72, 70, 60, 57, 52, 59, 58, 74, 145, 81, 85, 55, 68, 73, 71, 73, 63, 63, 70, 61, 56, 66, 54, 65, 75, 55, 50, 128, 70, 69, 47, 71, 80, 100, 66, 44, 56, 52, 60, 83, 107, 56, 75, 62, 78, 81, 51, 50, 102, 93, 53, 66, 53, 66, 53, 55, 47, 56, 69, 70, 61, 55, 56, 55, 69, 63, 60, 61, 63, 62, 81, 59, 60, 50, 86, 92, 56, 80, 58, 59, 81, 63, 88, 71, 67, 68, 84, 74, 62, 62, 85, 84, 79, 55, 48, 46, 66, 80, 74, 71, 58, 55, 46, 55, 65, 75, 70, 39, 56, 72, 70, 58, 72, 66, 67, 80, 67, 77, 54, 42, 75, 56, 77, 66, 62, 68, 52, 70, 52, 76, 74, 53, 62, 65, 48, 50, 73, 60, 72, 103, 76, 80, 65, 65, 50, 105, 59, 66, 63, 52, 61, 67, 66, 65, 65, 56, 70, 75, 113, 80, 72, 60, 64, 55, 63, 64, 82, 70, 48, 73, 65, 69, 46, 84, 67, 85, 66, 62, 61, 71, 66, 81, 49, 75, 67, 71, 100, 99, 62, 50, 74, 71, 75, 77, 132, 84, 74, 51, 69, 50, 52, 83, 83, 86, 51, 56, 79, 57, 108, 70, 75, 64, 104, 57, 69, 81, 48, 68, 45, 49, 57, 58, 69, 69, 85, 88, 72, 69, 70, 62, 60, 113, 61, 64, 65, 43, 65, 75, 83, 52, 62, 76, 48, 77, 58, 106, 51, 71, 109, 62, 87, 74, 77, 82, 65, 68, 66, 50, 53, 68, 57, 68, 62, 63, 68, 45, 56, 70, 62, 71, 76, 77, 48, 54, 57, 58, 54, 63, 60, 88, 65, 52, 69, 58, 74, 99, 73, 50, 62, 60, 45, 75, 96, 69, 62, 50, 65, 56, 63, 64, 48, 77, 62, 64, 53, 70, 79, 53, 55, 53, 58, 81, 71, 67, 82, 64, 49, 51, 73, 54, 56, 119, 68, 65, 49, 64, 56, 49, 67, 51, 67, 65, 62, 59, 73, 48, 67, 79, 50, 62, 73, 53, 61, 80, 63, 42, 70, 60, 68, 72, 55, 60, 51, 61, 70, 76, 57, 82, 85, 58, 89, 69, 68, 52, 73, 58, 55, 61, 69, 75, 74, 88, 58, 128, 51, 57, 71, 66, 68, 58, 49, 61, 91, 69, 51, 94, 59, 56, 66, 58, 44, 89, 69, 60, 59, 53, 84, 69, 59, 82, 51, 53, 65, 56, 82, 83, 48, 59, 73, 60, 59, 54, 49, 55, 75, 64, 81, 66, 65, 74, 74, 70, 52, 62, 45, 63, 66, 80, 63, 72, 78, 80, 35, 61, 66, 82, 74, 66, 55, 79, 64, 53, 72, 58, 58, 76, 44, 65, 63, 62, 65, 67, 68, 75, 65, 69, 46, 62, 67, 60, 45, 84, 75, 56, 37, 70, 58, 63, 65, 75, 41, 79, 91, 55, 49, 81, 63, 69, 56, 78, 47, 54, 88, 70, 73, 78, 88, 50, 50, 44, 62, 55, 81, 87, 73, 43, 73, 62, 80, 70, 72, 74, 65, 59, 62, 122, 50, 62, 59, 64, 74, 68, 103, 94, 77, 67, 70, 45, 95, 63, 59, 75, 54, 66, 58, 67, 63, 67, 72, 61, 101, 55, 71, 75, 65, 76, 63, 84, 67, 99, 62, 61, 75, 53, 66, 106, 68, 67, 59, 68, 47, 92, 54, 70, 63, 90, 60, 55, 48, 57, 50, 50, 70, 70, 67, 56, 33, 62, 51, 50, 63, 63, 51, 66, 88, 49, 64, 73, 72, 60, 75, 59, 82, 59, 54, 56, 61, 57, 67, 133, 47, 88, 76, 77, 60, 83, 67, 107, 71, 76, 91, 68, 66, 60, 61, 50, 50, 67, 60, 65, 85, 55, 80, 67, 60, 62, 88, 121, 71, 72, 80, 68, 61, 51, 60, 78, 70, 76, 74, 55, 73, 70, 57, 62, 93, 75, 55, 87, 52, 78, 57, 47, 55, 71, 64, 63, 48, 81, 52, 75, 47, 61, 70, 44, 55, 78, 66, 88, 50, 73, 75, 68, 43, 74, 55, 48, 84, 77, 55, 67, 64, 86, 71, 78, 58, 51, 46, 99, 56, 61, 64, 73, 74, 50, 60, 61, 64, 60, 54, 56, 78, 60, 44, 65, 80, 78, 89, 104, 74, 30, 59, 69, 56, 63, 69, 88, 51, 57, 46, 100, 68, 65, 62, 60, 59, 74, 63, 76, 81, 60, 79, 62, 72, 80, 70, 59, 43, 63, 87, 80, 53, 77, 70, 48, 73, 71, 69, 55, 56, 65, 55, 57, 63, 73, 63, 76, 61, 109, 52, 47, 75, 54, 36, 54, 80, 53, 56, 71, 58, 74, 69, 53, 56, 56, 30, 56, 50, 59, 52, 54, 92, 70, 58, 53, 47, 62, 82, 57, 56, 66, 50, 62, 56, 53, 81, 67, 77, 71, 40, 42, 66, 88, 53, 89, 70, 75, 66, 64, 50, 55, 57, 76, 48, 58, 59, 50, 60, 67, 77, 62, 73, 63, 73, 50, 74, 53, 60, 64, 68, 59, 66, 98, 63, 67, 62, 71, 56, 73, 72, 90, 67, 66, 50, 57, 86, 65, 72, 46, 36, 76, 61, 74, 62, 66, 48, 65, 58, 74, 66, 58, 77, 56, 66, 59, 54, 60, 73, 72, 95, 58, 67, 81, 78, 64, 75, 73, 57, 65, 71, 60, 52, 84, 76, 70, 82, 62, 53, 74, 64, 62, 61, 57, 73, 57, 72, 57, 83, 80, 66, 49, 64, 57, 71, 55, 47, 50, 48, 73, 57, 65, 49, 67, 58, 79, 54, 73, 68, 51, 66, 46, 104, 61, 29, 56, 50, 71, 51, 71, 82, 79, 78, 45, 56, 88, 64, 67, 62, 87, 51, 62, 59, 73, 43, 63, 65, 54, 67, 68, 62, 55, 59, 61, 77, 68, 77, 72, 61, 49, 83, 85, 58, 75, 60, 73, 54, 56, 51, 58, 88, 95, 85, 60, 51, 76, 58, 69, 60, 59, 68, 58, 58, 64, 68, 69, 72, 98, 59, 61, 72, 57, 75, 54, 84, 64, 56, 76, 71, 57, 65, 61, 67, 64, 54, 63, 57, 49, 60, 48, 69, 72, 63, 75, 73, 83, 85, 65, 60, 55, 79, 63, 70, 89, 68, 76, 62, 67, 89, 86, 71, 79, 62, 69, 73, 57, 71, 62, 66, 65, 63, 58, 66, 58, 57, 53, 66, 72, 77, 99, 56, 68, 47, 81, 55, 64, 76, 65, 71, 65, 51, 49, 75, 110, 57, 90, 70, 38, 98, 62, 56, 54, 65, 61, 61, 65, 66, 72, 93, 95, 57, 44, 90, 56, 91, 69, 85, 88, 62, 71, 57, 62, 60, 63, 53, 67, 73, 77, 62, 67, 61, 104, 88, 54, 64, 55, 59, 56, 52, 63, 82, 81, 53, 72, 67, 56, 66, 75, 63, 54, 52, 39, 80, 47, 56, 54, 56, 63, 59, 55, 61, 73, 74, 69, 57, 70, 58, 78, 62, 47, 71, 77, 59, 72, 67, 57, 74, 70, 73, 52, 55, 51, 75, 86, 62, 67, 94, 53, 81, 74, 65, 75, 53, 68, 51, 91, 56, 72, 79, 61, 61, 52, 93, 44, 68, 43, 53, 70, 67, 55, 73, 48, 56, 50, 62, 79, 63, 82, 53, 56, 49, 65, 74, 81, 93, 63, 75, 57, 68, 56, 66, 79, 80, 78, 61, 76, 59, 68, 69, 91, 66, 66, 63, 77, 57, 49, 78, 53, 50, 61, 56, 66, 62, 68, 74, 71, 50, 68, 68, 51, 61, 59, 65, 66, 57, 74, 70, 45, 50, 117, 61, 60, 74, 88, 85, 50, 61, 89, 52, 70, 58, 42, 68, 50, 73, 54, 74, 57, 71, 51, 69, 58, 50, 87, 72, 73, 69, 53, 53, 73, 66, 64, 68, 78, 59, 81, 70, 53, 73, 53, 77, 53, 93, 58, 54, 74, 42, 88, 53, 73, 58, 61, 59, 59, 47, 68, 70, 78, 61, 73, 60, 86, 93, 62, 59, 69, 65, 64, 61, 70, 83, 75, 62, 48, 75, 49, 57, 53, 72, 105, 59, 67, 70, 60, 51, 93, 67, 63, 83, 63, 68, 71, 58, 71, 160, 49, 63, 63, 72, 70, 62, 100, 63, 62, 75, 79, 62, 53, 62, 62, 72, 74, 100, 43, 55, 57, 105, 72, 54, 71, 63, 76, 67, 73, 58, 67, 57, 75, 55, 79, 48, 66, 73, 70, 57, 83, 73, 49, 66, 62, 61, 58, 63, 60, 58, 93, 70, 64, 54, 58, 93, 117, 63, 66, 63, 77, 67, 62, 60, 65, 67, 56, 68, 74, 75, 76, 99, 80, 65, 66, 87, 74, 59, 56, 66, 68, 62, 119, 69, 69, 67, 61, 62, 67, 75, 56, 58, 54, 65, 81, 64, 58, 71, 55, 46, 62, 67, 60, 62, 59, 92, 101, 53, 68, 58, 56, 69, 63, 73, 65, 76, 65, 67, 76, 78, 61, 66, 52, 62, 68, 69, 87, 82, 68, 70, 62, 60, 47, 70, 112, 68, 62, 58, 64, 61, 64, 61, 65, 78, 61, 53, 65, 73, 63, 74, 59, 79, 62, 97, 74, 118, 54, 68, 64, 54, 69, 50, 65, 58, 81, 58, 63, 78, 53, 78, 67, 77, 55, 60, 60, 66, 69, 61, 74, 69, 55, 65, 69, 49, 68, 74, 58, 63, 72, 60, 84, 60, 71, 69, 74, 31, 75, 57, 57, 67, 60, 62, 60, 60, 94, 67, 59, 82, 51, 65, 38, 62, 58, 60, 55, 71, 44, 108, 94, 62, 54, 54, 51, 67, 83, 62, 43, 50, 68, 66, 62, 65, 62, 58, 70, 53, 68, 54, 80, 45, 49, 55, 58, 63, 61, 56, 54, 68, 66, 73, 92, 78, 70, 68, 63, 53, 66, 63, 54, 87, 75, 66, 53, 74, 61, 80, 70, 63, 62, 82, 68, 64, 59, 57, 61, 92, 66, 74, 60, 62, 67, 61, 51, 59, 60, 57, 68, 57, 77, 60, 63, 48, 52, 70, 59, 72, 53, 58, 57, 68, 76, 71, 55, 72, 67, 66, 83, 81, 58, 80, 65, 62, 64, 50, 79, 74, 55, 58, 57, 70, 55, 52, 74, 89, 57, 82, 69, 53, 65, 77, 51, 59, 75, 62, 53, 67, 57, 67, 41, 60, 65, 60, 45, 65, 81, 61, 55, 61, 55, 65, 69, 55, 69, 63, 65, 107, 50, 89, 95, 48, 113, 63, 57, 69, 53, 84, 75, 60, 80, 51, 65, 97, 69, 55, 83, 54, 75, 79, 57, 68, 65, 60, 62, 59, 102, 58, 59, 67, 63, 61, 76, 100, 65, 76, 93, 96, 67, 74, 65, 56, 74, 61, 57, 50, 61, 49, 66, 59, 70, 86, 61, 66, 62, 59, 60, 64, 61, 55, 78, 60, 71, 78, 63, 43, 61, 66, 67, 108, 46, 57, 46, 52, 88, 72, 93, 67, 60, 53, 71, 94, 66, 77, 59, 65, 60, 64, 61, 72, 63, 66, 60, 59, 59, 73, 73, 81, 85, 64, 62, 59, 98, 58, 72, 57, 81, 68, 48, 66, 76, 76, 70, 71, 51, 67, 56, 50, 66, 72, 67, 64, 65, 41, 61, 65, 52, 86, 80, 70, 76, 82, 104, 61, 61, 57, 60, 62, 45, 60, 54, 87, 66, 54, 85, 51, 74, 69, 62, 59, 62, 65, 60, 60, 95, 70, 69, 62, 63, 64, 59, 62, 42, 75, 43, 58, 58, 71, 72, 61, 74, 66, 74, 65, 76, 43, 51, 57, 72, 66, 77, 54, 64, 68, 52, 59, 68, 65, 45, 81, 76, 81, 72, 47, 83, 73, 58, 62, 56, 70, 81, 63, 64, 73, 68, 55, 70, 71, 83, 57, 54, 72, 85, 68, 53, 73, 62, 52, 60, 55, 75, 60, 55, 59, 56, 74, 56, 64, 55, 56, 51, 46, 43, 68, 65, 70, 62, 58, 72, 58, 55, 61, 83, 59, 52, 87, 54, 65, 55, 55, 69, 59, 85, 78, 85, 86, 65, 55, 85, 52, 52, 68, 96, 60, 61, 66, 57, 91, 58, 56, 90, 54, 69, 50, 61, 67, 46, 65, 71, 72, 73, 63, 73, 59, 66, 46, 72, 65, 103, 79, 61, 65, 71, 61, 50, 66, 80, 94, 67, 66, 50, 66, 59, 79, 69, 68, 63, 56, 69, 54, 64, 60, 67, 57, 53, 59, 55, 89, 68, 72, 68, 60, 52, 64, 53, 52, 70, 60, 65, 74, 70, 98, 58, 73, 57, 82, 54, 67, 75, 51, 93, 45, 84, 59, 51, 62, 70, 64, 77, 56, 50, 72, 72, 59, 49, 76, 41, 57, 73, 61, 75, 59, 65, 93, 58, 62, 89, 53, 75, 58, 48, 151, 59, 80, 68, 51, 58, 52, 81, 66, 51, 152, 64, 50, 60, 70, 55, 70, 54, 51, 57, 79, 65, 71, 64, 70, 68, 59, 85, 56, 54, 56, 67, 82, 117, 72, 49, 68, 65, 104, 70, 67, 68, 105, 62, 90, 72, 60, 61, 44, 53, 55, 60, 57, 50, 84, 54, 58, 56, 79, 55, 42, 73, 74, 72, 71, 55, 57, 59, 68, 58, 85, 59, 53, 61, 90, 47, 52, 87, 52, 47, 55, 94, 62, 54, 60, 73, 50, 54, 54, 41, 72, 70, 63, 78, 62, 49, 71, 47, 69, 76, 59, 63, 50, 58, 91, 56, 72, 64, 68, 59, 47, 69, 85, 69, 60, 56, 106, 43, 67, 77, 61, 67, 71, 59, 70, 59, 63, 78, 63, 62, 68, 100, 73, 64, 74, 65, 56, 45, 51, 57, 52, 64, 59, 62, 50, 75, 87, 73, 54, 82, 66, 73, 69, 52, 59, 59, 52, 59, 37, 93, 71, 46, 52, 64, 64, 80, 42, 72, 63, 62, 60, 89, 69, 65, 126, 58, 63, 58, 76, 66, 62, 66, 73, 72, 53, 74, 37, 76, 77, 57, 53, 69, 58, 55, 60, 59, 84, 91, 84, 52, 71, 69, 74, 52, 49, 90, 58, 72, 41, 41, 73, 100, 55, 75, 61, 85, 91, 55, 97, 57, 60, 55, 60, 64, 40, 100, 55, 48, 58, 53, 92, 52, 73, 44, 62, 78, 50, 57, 68, 67, 77, 62, 66, 70, 68, 62, 94, 88, 58, 41, 70, 84, 80, 77, 57, 54, 78, 58, 80, 63, 48, 91, 92, 57, 63, 98, 51, 59, 74, 58, 52, 60, 47, 85, 93, 96, 66, 53, 49, 59, 68, 43, 63, 55, 62, 54, 45, 52, 48, 62, 62, 81, 51, 64, 82, 60, 68, 50, 122, 91, 48, 77, 53, 68, 74, 50, 45, 51, 57, 61, 58, 73, 95, 47, 60, 60, 72, 58, 62, 99, 99, 88, 79, 71, 52, 64, 64, 60, 68, 68, 66, 53, 63, 62, 74, 57, 72, 50, 64, 69, 67, 62, 58, 60, 52, 59, 57, 28, 79, 69, 77, 52, 65, 62, 66, 69, 65, 57, 76, 73, 51, 59, 72, 98, 87, 55, 81, 75, 53, 55, 60, 69, 40, 61, 60, 61, 85, 50, 61, 45, 85, 49, 49, 53, 66, 59, 49, 81, 36, 86, 70, 71, 61, 61, 75, 107, 56, 73, 49, 93, 60, 69, 57, 91, 66, 49, 69, 85, 63, 74, 45, 90, 69, 126, 105, 79, 81, 71, 109, 67, 62, 56, 56, 49, 76, 85, 57, 50, 66, 64, 54, 52, 71, 60, 63, 66, 50, 108, 58, 49, 75, 58, 71, 87, 62, 51, 63, 71, 85, 50, 83, 73, 57, 82, 80, 69, 63, 59, 63, 64, 55, 57, 63, 60, 70, 79, 64, 56, 55, 89, 94, 63, 102, 70, 56, 79, 73, 59, 90, 61, 69, 42, 48, 74, 71, 56, 45, 106, 53, 44, 44, 72, 58, 104, 51, 69, 83, 57, 62, 78, 56, 53, 61, 45, 93, 102, 85, 66, 60, 74, 56, 52, 56, 81, 86, 110, 70, 55, 59, 62, 39, 59, 88, 67, 60, 75, 53, 62, 53, 85, 55, 66, 64, 53, 74, 74, 59, 63, 67, 71, 48, 54, 74, 83, 55, 69, 67, 50, 87, 53, 47, 52, 65, 50, 68, 80, 62, 55, 57, 53, 57, 71, 65, 37, 38, 60, 71, 50, 51, 70, 66, 79, 78, 57, 58, 64, 73, 53, 55, 53, 52, 95, 54, 81, 50, 94, 70, 62, 71, 66, 67, 59, 81, 41, 87, 52, 63, 79, 51, 43, 45, 103, 85, 81, 58, 67, 55, 58, 61, 81, 62, 78, 52, 51, 59, 65, 65, 83, 64, 49, 48, 67, 71, 65, 60, 83, 51, 93, 49, 58, 62, 65, 60, 51, 75, 66, 71, 85, 60, 67, 60, 53, 74, 56, 80, 66, 67, 73, 82, 53, 74, 62, 110, 61, 82, 62, 72, 58, 44, 58, 78, 61, 105, 69, 55, 54, 46, 55, 73, 70, 80, 82, 85, 79, 103, 57, 64, 76, 83, 58, 88, 55, 74, 55, 53, 70, 85, 61, 90, 72, 71, 69, 75, 39, 76, 49, 61, 73, 57, 76, 57, 46, 64, 64, 71, 58, 65, 56, 53, 55, 130, 67, 64, 73, 49, 88, 45, 49, 71, 64, 81, 77, 86, 60, 69, 57, 79, 50, 58, 37, 80, 53, 64, 60, 57, 100, 93, 78, 68, 67, 79, 55, 59, 81, 54, 83, 90, 83, 102, 65, 73, 105, 79, 86, 51, 79, 54, 86, 70, 54, 99, 56, 50, 92, 70, 87, 56, 64, 77, 62, 63, 91, 64, 63, 57, 75, 47, 43, 83, 57, 61, 62, 63, 54, 67, 92, 72, 69, 85, 56, 87, 52, 48, 66, 69, 91, 89, 80, 68, 41, 82, 65, 55, 74, 47, 70, 65, 82, 101, 61, 85, 64, 74, 80, 115, 51, 58, 81, 79, 61, 63, 105, 68, 48, 103, 76, 59, 54, 85, 69, 64, 59, 64, 63, 67, 60, 54, 55, 87, 40, 87, 60, 60, 59, 65, 66, 57, 63, 68, 44, 75, 54, 67, 43, 53, 49, 71, 117, 105, 60, 90, 62, 65, 56, 61, 49, 70, 73, 53, 54, 68, 78, 60, 92, 57, 73, 62, 50, 40, 71, 74, 65, 86, 67, 83, 70, 60, 70, 65, 54, 104, 87, 69, 83, 56, 50, 56, 48, 63, 77, 72, 52, 66, 49, 52, 67, 49, 50, 72, 50, 71, 78, 95, 56, 100, 53, 56, 85, 77, 44, 85, 80, 52, 80, 58, 43, 105, 50, 55, 83, 47, 73, 55, 57, 55, 76, 67, 47, 68, 70, 58, 39, 72, 81, 67, 46, 85, 60, 67, 43, 51, 83, 88, 90, 85, 61, 37, 99, 75, 55, 51, 63, 64, 51, 62, 49, 69, 50, 48, 60, 58, 65, 67, 68, 33, 87, 86, 66, 71, 61, 69, 78, 72, 71, 53, 74, 63, 92, 73, 70, 86, 59, 50, 66, 96, 50, 90, 64, 71, 64, 58, 73, 64, 66, 121, 46, 51, 57, 92, 56, 85, 44, 56, 89, 93, 57, 88, 43, 90, 83, 75, 50, 67, 72, 76, 77, 54, 52, 49, 51, 58, 73, 85, 72, 62, 55, 66, 64, 65, 63, 69, 86, 63, 43, 67, 68, 91, 75, 61, 42, 60, 56, 57, 67, 78, 86, 69, 60, 74, 43, 83, 69, 68, 48, 52, 73, 71, 61, 80, 76, 71, 67, 73, 61, 74, 48, 59, 42, 65, 84, 50, 88, 85, 60, 72, 59, 49, 50, 60, 69, 63, 62, 71, 84, 47, 90, 74, 75, 93, 70, 57, 71, 33, 55, 94, 73, 35, 72, 77, 54, 76, 63, 55, 54, 73, 47, 63, 67, 87, 45, 69, 98, 55, 76, 58, 47, 44, 54, 75, 56, 79, 59, 46, 77, 75, 68, 39, 69, 80, 75, 100, 58, 52, 59, 62, 74, 64, 65, 52, 65, 61, 69, 64, 53, 57, 95, 73, 66, 69, 48, 80, 60, 65, 88, 70, 46, 48, 112, 67, 61, 142, 63, 37, 61, 60, 80, 96, 84, 62, 78, 54, 52, 59, 79, 65, 89, 91, 65, 79, 61, 73, 45, 54, 54, 64, 74, 58, 90, 62, 46, 59, 40, 65, 57, 55, 54, 60, 68, 57, 65, 63, 33, 56, 81, 83, 65, 55, 66, 64, 62, 59, 58, 65, 72, 75, 58, 68, 64, 60, 100, 79, 65, 54, 68, 83, 60, 84, 49, 61, 61, 42, 75, 54, 69, 53, 52, 61, 71, 89, 48, 61, 66, 69, 77, 62, 101, 83, 54, 63, 61, 73, 76, 64, 62, 86, 49, 68, 56, 63, 82, 71, 54, 70, 59, 62, 70, 39, 62, 53, 65, 97, 66, 59, 53, 71, 47, 64, 57, 59, 65, 45, 60, 54, 42, 82, 54, 72, 68, 57, 66, 56, 76, 51, 50, 45, 51, 76, 56, 75, 59, 72, 70, 45, 67, 65, 35, 74, 57, 54, 61, 65, 62, 79, 101, 67, 57, 54, 100, 55, 94, 51, 52, 83, 79, 65, 66, 77, 64, 55, 56, 66, 82, 60, 82, 58, 60, 72, 76, 86, 69, 58, 75, 64, 94, 61, 47, 53, 66, 99, 69, 60, 57, 50, 57, 50, 50, 65, 84, 49, 69, 54, 39, 71, 45, 66, 62, 92, 59, 68, 43, 52, 39, 93, 96, 96, 58, 80, 57, 57, 68, 57, 65, 60, 56, 64, 57, 94, 73, 73, 68, 63, 101, 75, 62, 85, 61, 52, 69, 98, 46, 54, 69, 64, 60, 54, 78, 81, 132, 50, 69, 57, 62, 102, 74, 51, 55, 64, 71, 46, 93, 61, 49, 57, 73, 68, 136, 83, 60, 67, 48, 55, 117, 67, 36, 56, 39, 67, 48, 67, 60, 45, 46, 64, 75, 165, 65, 59, 67, 86, 75, 36, 93, 42, 50, 88, 45, 99, 61, 68, 52, 46, 67, 91, 50, 71, 75, 88, 61, 60, 85, 71, 56, 64, 76, 68, 46, 94, 73, 46, 67, 65, 65, 84, 60, 44, 63, 74, 59, 72, 55, 60, 70, 64, 62, 115, 60, 58, 84, 87, 67, 48, 57, 48, 85, 43, 62, 78, 62, 52, 62, 61, 99, 45, 53, 57, 61, 62, 69, 52, 84, 103, 80, 54, 59, 62, 45, 80, 66, 39, 62, 56, 52, 89, 61, 50, 86, 68, 62, 72, 77, 53, 80, 80, 84, 78, 52, 52, 84, 52, 61, 87, 52, 61, 51, 63, 63, 58, 57, 52, 56, 117, 54, 97, 55, 47, 62, 73, 43, 78, 71, 64, 45, 69, 71, 57, 94, 58, 75, 83, 63, 74, 54, 68, 88, 71, 71, 54, 52, 56, 76, 51, 56, 67, 44, 118, 68, 73, 66, 28, 75, 82, 75, 67, 62, 79, 44, 53, 68, 56, 81, 72, 55, 59, 65, 58, 76, 61, 41, 62, 52, 65, 56, 47, 56, 65, 51, 78, 54, 56, 65, 59, 63, 42, 63, 47, 53, 85, 131, 70, 57, 66, 49, 72, 132, 70, 49, 44, 56, 62, 75, 45, 47, 46, 84, 52, 50, 71, 56, 89, 62, 82, 76, 47, 75, 51, 85, 126, 58, 113, 105, 79, 55, 55, 51, 37, 70, 76, 70, 71, 62, 53, 59, 98, 50, 51, 46, 70, 57, 65, 71, 87, 63, 60, 58, 61, 86, 66, 58, 104, 83, 67, 51, 54, 85, 59, 50, 66, 92, 63, 57, 79, 88, 30, 77, 52, 57, 71, 58, 70, 60, 60, 76, 63, 74, 54, 42, 86, 59, 67, 53, 67, 56, 52, 72, 60, 56, 45, 69, 93, 76, 88, 65, 57, 45, 84, 55, 74, 46, 73, 60, 63, 63, 55, 82, 67, 52, 51, 45, 75, 54, 66, 70, 88, 53, 54, 63, 40, 70, 61, 66, 63, 67, 61, 53, 54, 50, 67, 121, 66, 45, 77, 56, 68, 35, 52, 67, 87, 55, 51, 60, 89, 63, 41, 43, 98, 55, 50, 65, 49, 87, 71, 95, 42, 58, 59, 72, 110, 71, 50, 62, 58, 89, 54, 69, 63, 63, 45, 51, 52, 57, 74, 67, 71, 64, 68, 50, 74, 75, 65, 66, 40, 45, 124, 108, 41, 43, 66, 80, 78, 114, 66, 52, 78, 60, 61, 64, 77, 77, 56, 41, 88, 60, 57, 83, 47, 64, 52, 68, 76, 73, 82, 57, 45, 47, 73, 76, 83, 59, 56, 59, 66, 46, 69, 46, 54, 58, 60, 69, 91, 56, 49, 61, 74, 52, 69, 37, 66, 89, 54, 44, 86, 67, 50, 70, 65, 39, 54, 62, 60, 46, 74, 68, 97, 37, 76, 68, 55, 85, 84, 79, 65, 56, 65, 72, 65, 67, 56, 112, 33, 50, 29, 73, 70, 70, 85, 54, 50, 116, 66, 64, 61, 57, 67, 82, 60, 56, 67, 41, 92, 52, 55, 67, 95, 57, 55, 90, 78, 80, 65, 40, 51, 68, 73, 46, 49, 61, 52, 61, 54, 53, 61, 71, 39, 60, 96, 49, 60, 72, 66, 59, 87, 51, 92, 52, 75, 66, 92, 71, 71, 71, 95, 64, 52, 42, 60, 59, 61, 47, 72, 70, 100, 51, 44, 67, 41, 56, 77, 61, 57, 67, 86, 49, 63, 65, 67, 47, 45, 46, 73, 82, 87, 72, 62, 122, 71, 53, 102, 76, 57, 79, 55, 61, 86, 42, 66, 54, 65, 64, 70, 76, 68, 50, 57, 52, 62, 77, 77, 55, 77, 93, 71, 72, 77, 55, 73, 68, 78, 68, 48, 118, 81, 57, 61, 47, 73, 62, 59, 59, 65, 153, 70, 93, 49, 70, 73, 59, 74, 58, 80, 91, 126, 75, 56, 63, 59, 70, 66, 63, 65, 49, 55, 69, 63, 62, 89, 72, 63, 56, 73, 55, 45, 63, 96, 67, 53, 53, 75, 71, 60, 53, 55, 98, 54, 53, 54, 39, 53, 43, 53, 61, 83, 52, 65, 60, 63, 52, 70, 116, 63, 58, 61, 58, 63, 83, 46, 85, 61, 67, 68, 65, 56, 81, 53, 65, 63, 63, 68, 57, 50, 52, 65, 59, 80, 86, 67, 81, 53, 67, 47, 118, 68, 62, 79, 74, 61, 71, 105, 58, 78, 51, 36, 97, 59, 58, 63, 81, 53, 54, 87, 78, 63, 78, 107, 89, 56, 63, 85, 58, 68, 62, 70, 82, 53, 57, 68, 78, 54, 78, 59, 45, 81, 102, 72, 104, 58, 80, 82, 59, 71, 42, 60, 51, 69, 49, 59, 51, 108, 102, 71, 88, 98, 58, 65, 50, 74, 54, 50, 45, 56, 77, 54, 90, 57, 57, 58, 49, 72, 71, 112, 63, 73, 60, 48, 79, 53, 79, 70, 52, 70, 67, 58, 57, 44, 65, 51, 96, 58, 69, 65, 72, 95, 67, 61, 69, 56, 74, 100, 35, 54, 75, 54, 80, 80, 91, 61, 93, 56, 86, 93, 75, 54, 74, 52, 65, 62, 80, 54, 62, 52, 61, 57, 69, 94, 73, 59, 63, 52, 69, 46, 47, 60, 44, 68, 57, 73, 135, 50, 57, 58, 49, 46, 67, 89, 58, 38, 80, 52, 91, 42, 78, 53, 73, 51, 64, 53, 49, 69, 54, 67, 85, 68, 80, 96, 59, 94, 128, 72, 57, 53, 61, 54, 56, 49, 91, 61, 71, 85, 58, 67, 64, 85, 51, 59, 60, 68, 50, 86, 88, 58, 69, 48, 86, 71, 58, 98, 89, 61, 56, 56, 45, 60, 75, 57, 67, 81, 68, 70, 59, 77, 74, 119, 83, 61, 89, 83, 89, 59, 47, 78, 48, 53, 69, 72, 68, 86, 48, 91, 45, 103, 80, 72, 95, 77, 69, 66, 82, 73, 78, 66, 71, 58, 78, 71, 90, 81, 92, 60, 89, 46, 47, 78, 59, 61, 109, 50, 57, 56, 64, 75, 88, 70, 100, 66, 75, 44, 88, 75, 61, 58, 56, 61, 64, 56, 64, 43, 65, 59, 76, 78, 56, 73, 80, 113, 63, 61, 90, 50, 61, 88, 54, 55, 55, 55, 103, 68, 51, 53, 44, 62, 54, 78, 99, 57, 78, 60, 81, 84, 68, 71, 69, 56, 61, 73, 47, 65, 63, 63, 40, 70, 72, 126, 137, 63, 47, 75, 77, 83, 104, 83, 52, 63, 79, 63, 70, 73, 55, 81, 66, 81, 57, 72, 59, 71, 55, 92, 85, 34, 68, 67, 73, 66, 65, 114, 59, 50, 64, 62, 47, 51, 59, 91, 60, 67, 53, 65, 64, 77, 82, 91, 81, 84, 57, 88, 33, 64, 52, 64, 70, 50, 63, 73, 69, 65, 45, 54, 85, 48, 51, 51, 43, 59, 99, 72, 99, 66, 63, 56, 72, 57, 65, 55, 74, 52, 52, 34, 50, 63, 52, 118, 84, 93, 63, 57, 51, 86, 64, 70, 55, 62, 61, 44, 66, 77, 41, 70, 66, 47, 47, 74, 69, 71, 83, 90, 33, 66, 50, 67, 48, 65, 73, 49, 55, 52, 69, 34, 78, 73, 62, 62, 68, 78, 42, 74, 62, 54, 63, 59, 68, 87, 51, 61, 61, 78, 68, 66, 77, 92, 45, 53, 76, 78, 79, 84, 86, 46, 110, 66, 76, 67, 84, 60, 84, 56, 64, 64, 90, 75, 66, 47, 50, 48, 62, 44, 81, 67, 67, 72, 58, 69, 65, 46, 57, 57, 46, 54, 44, 67, 47, 75, 71, 76, 60, 83, 63, 73, 67, 71, 50, 89, 73, 68, 68, 56, 96, 81, 72, 61, 58, 55, 63, 56, 69, 47, 78, 58, 75, 90, 63, 65, 48, 75, 63, 69, 65, 68, 37, 92, 82, 37, 61, 53, 126, 51, 75, 64, 49, 116, 61, 58, 60, 43, 42, 47, 76, 61, 55, 64, 53, 75, 55, 49, 105, 43, 59, 75, 68, 70, 95, 53, 63, 42, 49, 54, 78, 80, 93, 66, 70, 73, 68, 53, 94, 65, 55, 60, 82, 56, 76, 65, 47, 97, 40, 59, 80, 71, 109, 55, 69, 64, 62, 61, 65, 48, 56, 92, 74, 58, 77, 50, 64, 57, 70, 62, 83, 63, 72, 97, 74, 59, 75, 49, 56, 85, 78, 60, 74, 75, 61, 60, 74, 74, 64, 71, 74, 86, 74, 56, 90, 67, 45, 59, 66, 46, 86, 85, 71, 60, 41, 47, 71, 81, 62, 52, 65, 60, 44, 60, 60, 49, 60, 76, 90, 52, 55, 63, 68, 105, 76, 61, 47, 98, 63, 74, 39, 72, 87, 64, 62, 67, 75, 75, 64, 66, 75, 48, 70, 54, 73, 41, 35, 65, 51, 59, 63, 49, 68, 71, 69, 71, 38, 76, 51, 73, 62, 52, 57, 84, 83, 85, 45, 45, 55, 45, 63, 64, 59, 80, 57, 69, 41, 59, 90, 62, 50, 78, 59, 73, 61, 81, 56, 46, 72, 72, 61, 61, 84, 92, 45, 71, 65, 71, 66, 71, 59, 49, 50, 64, 78, 89, 75, 65, 59, 65, 55, 70, 66, 78, 55, 46, 64, 49, 73, 55, 66, 60, 68, 37, 55, 70, 61, 67, 128, 78, 49, 56, 60, 66, 66, 67, 62, 61, 63, 80, 59, 65, 69, 59, 60, 112, 59, 47, 42, 57, 61, 55, 66, 67, 58, 65, 89, 102, 54, 67, 64, 62, 71, 75, 66, 58, 85, 70, 57, 56, 76, 80, 59, 46, 55, 75, 82, 52, 68, 79, 120, 29, 42, 67, 48, 65, 30, 66, 75, 58, 54, 73, 69, 48, 66, 75, 113, 70, 52, 68, 60, 56, 82, 72, 65, 62, 78, 87, 47, 52, 67, 75, 65, 61, 81, 60, 64, 107, 65, 44, 63, 91, 45, 43, 50, 60, 48, 68, 38, 61, 65, 58, 54, 107, 88, 59, 74, 95, 87, 69, 71, 57, 80, 64, 62, 68, 85, 80, 53, 80, 45, 46, 77, 76, 50, 60, 76, 88, 57, 76, 74, 75, 65, 58, 57, 48, 57, 53, 44, 63, 89, 76, 68, 66, 49, 67, 70, 65, 56, 47, 70, 98, 53, 45, 62, 65, 55, 52, 68, 84, 56, 67, 54, 55, 66, 66, 68, 60, 79, 54, 81, 34, 80, 56, 51, 60, 58, 54, 69, 84, 114, 120, 50, 40, 58, 47, 65, 101, 67, 55, 61, 38, 57, 67, 81, 60, 75, 64, 70, 72, 88, 49, 49, 56, 65, 108, 67, 82, 75, 49, 78, 91, 55, 59, 58, 87, 75, 60, 67, 77, 54, 62, 47, 58, 76, 82, 89, 50, 54, 82, 55, 87, 76, 72, 69, 72, 86, 48, 83, 46, 70, 69, 69, 81, 55, 48, 56, 53, 59, 48, 71, 74, 61, 64, 59, 66, 60, 68, 58, 69, 57, 67, 48, 50, 77, 76, 74, 62, 55, 74, 66, 80, 73, 73, 69, 59, 65, 81, 55, 68, 57, 64, 78, 54, 58, 93, 67, 61, 78, 77, 65, 64, 43, 38, 73, 57, 57, 56, 57, 83, 65, 53, 76, 60, 87, 64, 68, 66, 52, 58, 60, 52, 67, 70, 71, 61, 59, 66, 51, 62, 69, 70, 52, 60, 59, 64, 68, 61, 78, 73, 60, 55, 63, 64, 63, 57, 59, 55, 77, 71, 62, 61, 61, 90, 56, 85, 73, 56, 59, 51, 66, 93, 64, 65, 68, 66, 102, 63, 58, 74, 114, 57, 76, 78, 86, 73, 46, 68, 57, 44, 60, 61, 56, 64, 75, 71, 58, 53, 68, 61, 90, 64, 70, 50, 82, 86, 66, 51, 62, 56, 51, 62, 61, 81, 58, 52, 48, 71, 79, 72, 66, 65, 67, 61, 63, 47, 68, 67, 42, 82, 65, 53, 76, 59, 54, 78, 71, 71, 58, 38, 77, 57, 55, 66, 72, 59, 60, 69, 49, 43, 78, 70, 62, 60, 88, 49, 63, 60, 76, 67, 48, 62, 100, 62, 60, 70, 77, 56, 62, 106, 62, 77, 61, 49, 61, 71, 58, 62, 83, 69, 53, 50, 65, 64, 56, 58, 57, 86, 60, 59, 65, 58, 87, 62, 59, 72, 65, 70, 58, 55, 61, 63, 67, 58, 63, 78, 66, 69, 58, 86, 61, 80, 60, 69, 57, 76, 90, 76, 61, 60, 64, 51, 66, 83, 45, 81, 60, 58, 74, 53, 65, 62, 101, 63, 51, 52, 67, 62, 64, 58, 57, 71, 60, 66, 53, 65, 50, 59, 79, 60, 70, 63, 45, 73, 60, 72, 59, 49, 73, 56, 69, 83, 94, 67, 63, 43, 54, 70, 59, 75, 65, 64, 56, 66, 77, 72, 55, 54, 94, 71, 70, 83, 60, 86, 99, 64, 60, 57, 92, 94, 58, 68, 40, 79, 57, 84, 100, 76, 60, 72, 60, 49, 67, 66, 62, 59, 60, 57, 83, 60, 69, 67, 149, 63, 63, 61, 47, 66, 60, 59, 63, 58, 55, 46, 61, 62, 66, 70, 57, 63, 43, 63, 68, 52, 61, 70, 63, 70, 74, 69, 60, 66, 71, 62, 49, 73, 56, 61, 72, 57, 64, 66, 90, 49, 48, 54, 53, 53, 63, 67, 73, 69, 70, 72, 61, 78, 78, 59, 84, 51, 47, 69, 59, 51, 67, 56, 42, 46, 62, 67, 70, 68, 69, 62, 50, 71, 70, 69, 46, 51, 75, 63, 68, 94, 42, 75, 53, 49, 63, 60, 54, 55, 72, 76, 58, 72, 60, 57, 62, 58, 65, 55, 50, 72, 71, 60, 71, 66, 56, 73, 76, 72, 64, 56, 45, 62, 62, 60, 50, 69, 67, 53, 62, 65, 48, 67, 67, 74, 81, 63, 52, 64, 66, 59, 44, 60, 81, 52, 56, 65, 73, 58, 43, 80, 63, 72, 67, 55, 72, 53, 76, 84, 90, 73, 46, 65, 54, 74, 51, 68, 58, 52, 68, 101, 71, 74, 69, 61, 79, 58, 65, 50, 69, 65, 60, 64, 73, 70, 52, 55, 68, 93, 63, 49, 79, 104, 82, 67, 52, 72, 79, 71, 66, 53, 66, 74, 68, 75, 70, 73, 72, 68, 57, 68, 70, 51, 56, 64, 52, 74, 63, 65, 59, 83, 55, 99, 66, 74, 62, 55, 57, 59, 67, 96, 70, 69, 63, 72, 63, 58, 57, 52, 60, 63, 62, 79, 69, 79, 47, 53, 48, 79, 51, 42, 92, 91, 61, 62, 60, 64, 86, 66, 61, 59, 55, 55, 85, 101, 69, 51, 83, 66, 66, 51, 44, 78, 51, 68, 72, 79, 62, 56, 71, 70, 58, 62, 64, 66, 38, 84, 70, 47, 61, 48, 60, 70, 58, 72, 60, 58, 53, 75, 59, 54, 64, 58, 57, 52, 61, 53, 56, 56, 62, 53, 101, 83, 53, 68, 68, 99, 77, 64, 58, 62, 69, 80, 77, 56, 60, 59, 116, 80, 80, 57, 110, 76, 72, 54, 88, 80, 97, 66, 53, 74, 52, 58, 65, 54, 78, 61, 66, 83, 62, 67, 63, 60, 77, 61, 74, 64, 70, 73, 65, 67, 61, 57, 49, 60, 78, 58, 51, 62, 59, 67, 50, 54, 59, 63, 74, 69, 107, 82, 78, 99, 56, 68, 61, 61, 58, 114, 65, 59, 70, 59, 81, 47, 55, 66, 50, 54, 58, 80, 71, 75, 66, 106, 70, 53, 64, 61, 71, 104, 77, 83, 62, 64, 62, 63, 66, 64, 64, 79, 50, 72, 57, 79, 104, 59, 56, 59, 58, 86, 66, 51, 63, 56, 81, 56, 71, 60, 50, 72, 73, 76, 62, 68, 82, 53, 77, 64, 63, 55, 56, 55, 76, 52, 59, 46, 58, 42, 45, 82, 79, 62, 70, 66, 55, 69, 70, 56, 80, 66, 67, 66, 94, 78, 53, 47, 65, 58, 78, 76, 70, 87, 70, 68, 91, 65, 85, 75, 98, 69, 57, 68, 52, 66, 89, 97, 71, 88, 49, 63, 64, 78, 69, 73, 56, 47, 90, 93, 67, 54, 61, 97, 62, 117, 49, 73, 51, 57, 58, 70, 65, 62, 61, 58, 81, 58, 62, 56, 59, 57, 69, 68, 64, 78, 60, 58, 61, 50, 60, 80, 54, 67, 64, 50, 75, 74, 77, 94, 70, 62, 103, 57, 70, 54, 52, 60, 46, 69, 68, 60, 75, 58, 61, 70, 58, 56, 49, 65, 62, 66, 69, 63, 46, 74, 74, 57, 91, 72, 56, 62, 73, 106, 78, 66, 93, 68, 80, 81, 46, 100, 64, 82, 58, 74, 65, 73, 67, 40, 66, 53, 74, 65, 52, 65, 65, 50, 64, 77, 97, 62, 86, 70, 58, 59, 64, 74, 44, 65, 62, 47, 54, 54, 65, 69, 50, 45, 77, 53, 79, 63, 42, 62, 96, 50, 71, 76, 57, 69, 97, 56, 77, 52, 88, 65, 81, 60, 55, 89, 63, 68, 88, 63, 54, 73, 54, 63, 67, 56, 67, 61, 58, 57, 101, 99, 49, 62, 54, 49, 60, 71, 63, 66, 70, 58, 69, 50, 72, 62, 65, 54, 62, 62, 54, 61, 62, 52, 52, 80, 72, 86, 68, 77, 53, 71, 78, 71, 59, 86, 59, 55, 57, 72, 60, 61, 63, 72, 71, 50, 73, 66, 67, 61, 61, 56, 61, 59, 56, 99, 70, 55, 52, 61, 54, 76, 82, 63, 68, 60, 67, 61, 80, 54, 66, 84, 61, 92, 65, 70, 77, 94, 64, 54, 78, 69, 55, 54, 74, 56, 66, 55, 81, 77, 58, 66, 65, 70, 58, 54, 67, 71, 67, 85, 49, 77, 58, 74, 77, 72, 53, 67, 67, 79, 52, 55, 51, 52, 83, 56, 68, 73, 52, 53, 62, 88, 90, 69, 52, 91, 73, 57, 60, 54, 62, 53, 71, 63, 56, 78, 54, 66, 80, 82, 62, 64, 73, 55, 70, 65, 79, 75, 92, 57, 47, 85, 68, 72, 59, 47, 76, 67, 62, 89, 58, 75, 53, 49, 62, 61, 70, 65, 72, 62, 44, 56, 74, 68, 54, 77, 59, 75, 45, 68, 74, 77, 64, 72, 52, 54, 54, 54, 69, 68, 69, 67, 70, 65, 46, 48, 58, 50, 63, 89, 77, 78, 76, 64, 63, 76, 70, 68, 68, 76, 68, 66, 42, 86, 74, 110, 54, 133, 52, 55, 90, 78, 59, 70, 50, 61, 70, 56, 61, 59, 74, 65, 65, 56, 77, 61, 61, 78, 48, 71, 84, 57, 58, 78, 80, 62, 66, 66, 72, 59, 97, 56, 55, 54, 65, 66, 79, 57, 58, 103, 62, 82, 77, 61, 79, 74, 49, 87, 44, 53, 73, 52, 76, 57, 74, 69, 67, 56, 47, 78, 53, 55, 74, 58, 84, 80, 82, 69, 63, 52, 75, 53, 62, 71, 69, 107, 75, 89, 51, 77, 68, 77, 60, 69, 62, 56, 78, 67, 55, 60, 57, 57, 48, 66, 54, 68, 61, 57, 68, 69, 67, 69, 68, 57, 83, 73, 83, 73, 70, 55, 53, 112, 71, 62, 55, 48, 59, 78, 65, 72, 65, 62, 60, 63, 69, 56, 69, 58, 62, 74, 63, 63, 56, 47, 65, 74, 63, 69, 59, 81, 51, 68, 55, 59, 58, 67, 55, 51, 71, 93, 79, 78, 59, 70, 62, 73, 40, 54, 53, 64, 56, 72, 80, 62, 76, 41, 65, 48, 45, 65, 61, 51, 80, 64, 62, 63, 69, 61, 75, 66, 54, 58, 66, 48, 58, 63, 61, 47, 67, 60, 72, 58, 58, 73, 74, 71, 75, 54, 64, 53, 76, 42, 58, 59, 64, 56, 54, 89, 94, 55, 60, 60, 73, 62, 52, 51, 85, 57, 54, 50, 62, 48, 73, 59, 74, 53, 75, 64, 69, 93, 91, 71, 48, 64, 60, 54, 74, 71, 64, 81, 48, 39, 73, 82, 42, 65, 60, 93, 46, 60, 58, 51, 93, 61, 64, 70, 70, 54, 63, 62, 71, 86, 55, 63, 61, 64, 57, 53, 67, 51, 44, 70, 67, 77, 54, 66, 64, 62, 71, 62, 70, 55, 57, 74, 84, 65, 57, 72, 60, 51, 72, 104, 64, 70, 74, 89, 74, 205, 60, 68, 67, 65, 62, 62, 53, 44, 60, 72, 65, 79, 51, 49, 85, 65, 60, 61, 74, 49, 61, 55, 56, 50, 55, 61, 74, 61, 49, 83, 50, 72, 65, 64, 53, 60, 66, 55, 66, 81, 51, 71, 60, 79, 78, 48, 101, 56, 100, 54, 57, 68, 63, 55, 75, 77, 54, 88, 55, 75, 55, 61, 62, 57, 81, 68, 59, 57, 57, 57, 65, 64, 89, 72, 59, 71, 58, 68, 60, 71, 65, 63, 40, 71, 59, 75, 67, 61, 65, 62, 73, 48, 68, 78, 79, 85, 57, 86, 141, 66, 54, 72, 63, 55, 67, 49, 72, 52, 61, 69, 65, 72, 49, 63, 65, 85, 50, 70, 68, 67, 69, 58, 69, 66, 56, 56, 75, 54, 75, 51, 53, 53, 63, 65, 69, 54, 64, 64, 72, 54, 49, 78, 70, 44, 73, 81, 72, 72, 51, 57, 61, 63, 48, 66, 73, 82, 87, 74, 60, 104, 77, 71, 69, 58, 42, 59, 64, 77, 58, 56, 83, 52, 57, 64, 100, 56, 67, 61, 66, 63, 62, 66, 74, 69, 60, 84, 54, 53, 79, 89, 51, 61, 51, 89, 55, 66, 57, 62, 77, 60, 58, 65, 54, 75, 62, 80, 59, 90, 76, 67, 71, 67, 60, 50, 55, 64, 53, 63, 68, 77, 91, 65, 57, 66, 98, 57, 82, 66, 74, 53, 37, 71, 71, 61, 66, 65, 60, 61, 87, 67, 75, 66, 83, 57, 66, 46, 63, 80, 71, 67, 59, 58, 77, 81, 84, 61, 60, 70, 56, 44, 49, 53, 56, 70, 54, 47, 64, 50, 69, 79, 55, 56, 79, 55, 62, 55, 78, 67, 57, 58, 80, 65, 67, 86, 65, 58, 66, 79, 58, 47, 68, 83, 81, 62, 74, 43, 67, 70, 63, 66, 72, 71, 90, 78, 76, 64, 88, 91, 60, 58, 53, 69, 53, 50, 63, 54, 46, 73, 67, 79, 57, 82, 65, 66, 55, 69, 74, 60, 53, 65, 59, 64, 57, 63, 80, 57, 81, 63, 60, 56, 65, 57, 59, 58, 48, 68, 58, 80, 60, 57, 50, 68, 65, 63, 61, 69, 61, 51, 51, 64, 65, 87, 55, 65, 88, 58, 85, 62, 86, 55, 62, 92, 63, 80, 49, 58, 68, 61, 65, 58, 55, 63, 53, 68, 52, 64, 84, 55, 59, 51, 77, 81, 65, 82, 70, 69, 62, 56, 52, 59, 46, 71, 71, 76, 57, 64, 69, 50, 72, 87, 69, 53, 72, 62, 74, 52, 74, 43, 64, 62, 52, 67, 51, 71, 62, 60, 68, 73, 66, 49, 56, 66, 72, 64, 67, 67, 62, 58, 63, 62, 72, 60, 79, 54, 67, 67, 71, 68, 89, 56, 59, 67, 62, 52, 58, 71, 66, 48, 67, 73, 71, 58, 74, 58, 64, 73, 64, 61, 53, 55, 97, 76, 61, 58, 60, 51, 68, 51, 66, 72, 68, 67, 67, 57, 69, 61, 63, 53, 62, 101, 70, 67, 72, 51, 92, 67, 77, 62, 58, 60, 61, 53, 62, 58, 105, 60, 56, 76, 59, 70, 73, 50, 79, 66, 61, 54, 68, 65, 57, 64, 58, 71, 87, 62, 58, 61, 68, 78, 67, 71, 50, 79, 64, 60, 73, 86, 58, 83, 47, 76, 64, 69, 62, 65, 59, 43, 50, 74, 112, 69, 72, 67, 67, 83, 56, 61, 58, 56, 66, 73, 81, 53, 54, 45, 61, 56, 67, 51, 57, 91, 71, 55, 81, 70, 47, 66, 48, 90, 54, 57, 71, 68, 66, 77, 46, 55, 56, 76, 80, 65, 64, 57, 56, 62, 55, 78, 103, 67, 77, 73, 71, 67, 81, 49, 57, 71, 63, 90, 66, 47, 73, 55, 59, 58, 78, 74, 53, 71, 54, 70, 69, 68, 39, 56, 67, 59, 85, 62, 76, 73, 58, 50, 52, 84, 52, 71, 53, 53, 76, 91, 86, 83, 75, 52, 89, 59, 61, 63, 46, 48, 66, 73, 96, 64, 61, 38, 73, 53, 73, 91, 61, 127, 48, 68, 59, 68, 53, 82, 75, 63, 62, 39, 60, 60, 51, 49, 48, 65, 68, 58, 83, 72, 65, 63, 82, 50, 69, 55, 110, 73, 76, 55, 125, 81, 93, 68, 66, 81, 56, 56, 70, 46, 39, 61, 57, 68, 42, 49, 73, 97, 85, 88, 61, 50, 54, 66, 69, 69, 64, 78, 52, 56, 39, 119, 90, 51, 45, 69, 54, 86, 56, 51, 48, 51, 59, 73, 62, 46, 70, 69, 72, 69, 44, 74, 61, 54, 52, 68, 84, 61, 82, 66, 118, 63, 46, 117, 61, 79, 58, 65, 61, 96, 59, 55, 48, 71, 66, 59, 59, 66, 88, 69, 50, 52, 66, 73, 69, 76, 66, 67, 47, 63, 57, 137, 63, 54, 51, 88, 82, 51, 62, 69, 95, 97, 69, 54, 55, 106, 49, 70, 48, 55, 104, 97, 61, 47, 71, 82, 51, 73, 54, 61, 48, 53, 79, 117, 57, 55, 52, 66, 63, 55, 44, 46, 65, 78, 85, 71, 46, 54, 91, 78, 84, 50, 88, 69, 71, 66, 39, 60, 47, 74, 60, 37, 68, 77, 66, 57, 43, 63, 68, 63, 55, 61, 73, 66, 54, 79, 75, 81, 71, 62, 75, 51, 64, 50, 77, 75, 76, 53, 71, 49, 88, 99, 52, 43, 44, 57, 67, 88, 57, 56, 74, 77, 55, 83, 85, 69, 64, 46, 69, 78, 71, 51, 40, 73, 65, 50, 49, 68, 62, 70, 60, 83, 65, 75, 67, 47, 58, 50, 66, 72, 68, 102, 66, 81, 60, 71, 68, 60, 76, 73, 67, 57, 61, 72, 44, 74, 60, 57, 53, 42, 76, 62, 68, 95, 57, 53, 81, 93, 69, 80, 69, 68, 53, 73, 63, 68, 59, 74, 58, 49, 62, 78, 56, 70, 70, 61, 69, 43, 73, 71, 57, 75, 71, 46, 52, 59, 72, 67, 52, 62, 53, 64, 44, 87, 69, 55, 53, 63, 60, 107, 63, 51, 73, 74, 50, 58, 57, 86, 61, 53, 83, 47, 63, 67, 78, 57, 87, 62, 82, 74, 79, 67, 56, 48, 49, 84, 63, 56, 59, 70, 62, 52, 50, 51, 63, 77, 64, 66, 67, 52, 62, 67, 93, 62, 117, 78, 62, 79, 55, 87, 54, 82, 70, 51, 73, 55, 59, 68, 46, 50, 81, 73, 74, 68, 70, 84, 57, 45, 61, 70, 47, 58, 47, 69, 67, 60, 51, 77, 55, 62, 67, 61, 74, 43, 73, 68, 48, 110, 93, 54, 68, 64, 50, 89, 61, 63, 75, 62, 71, 59, 48, 59, 54, 69, 55, 63, 35, 82, 77, 53, 58, 61, 98, 63, 60, 73, 53, 61, 65, 68, 64, 72, 53, 70, 75, 68, 43, 66, 94, 79, 72, 71, 49, 79, 58, 72, 97, 64, 54, 55, 61, 74, 63, 85, 71, 74, 58, 67, 81, 80, 72, 108, 53, 68, 48, 75, 78, 73, 78, 75, 45, 73, 90, 59, 131, 55, 63, 54, 44, 54, 60, 52, 62, 64, 53, 70, 63, 42, 62, 60, 52, 73, 46, 48, 57, 51, 54, 75, 67, 68, 72, 60, 70, 79, 88, 75, 78, 57, 66, 72, 53, 62, 65, 58, 113, 81, 67, 63, 59, 73, 56, 69, 70, 63, 49, 65, 53, 66, 50, 62, 58, 45, 48, 67, 72, 61, 62, 50, 83, 73, 61, 48, 62, 72, 74, 63, 50, 56, 42, 46, 68, 71, 74, 76, 64, 68, 61, 59, 69, 62, 68, 41, 59, 79, 46, 65, 79, 51, 72, 51, 83, 65, 78, 59, 65, 57, 72, 79, 100, 62, 72, 59, 79, 70, 66, 71, 49, 79, 96, 41, 66, 65, 47, 52, 73, 51, 74, 40, 52, 69, 81, 60, 50, 126, 56, 90, 68, 81, 74, 78, 65, 70, 69, 79, 62, 60, 129, 77, 69, 52, 69, 53, 49, 55, 69, 56, 84, 57, 95, 55, 54, 64, 73, 88, 93, 69, 65, 47, 49, 44, 109, 74, 74, 47, 99, 86, 57, 54, 71, 65, 102, 80, 69, 58, 70, 52, 59, 76, 70, 76, 68, 61, 66, 62, 45, 75, 62, 67, 58, 116, 53, 94, 64, 61, 67, 67, 123, 78, 71, 68, 55, 94, 42, 35, 65, 59, 102, 45, 57, 71, 65, 97, 61, 70, 62, 48, 64, 78, 86, 72, 57, 72, 89, 55, 45, 60, 42, 81, 68, 79, 69, 67, 62, 92, 60, 36, 45, 58, 90, 60, 67, 47, 60, 63, 75, 67, 55, 85, 45, 57, 66, 51, 72, 65, 75, 67, 69, 70, 92, 75, 78, 88, 80, 146, 56, 61, 59, 79, 60, 72, 58, 84, 66, 59, 65, 58, 63, 74, 53, 69, 54, 54, 48, 64, 58, 71, 69, 52, 91, 71, 84, 73, 68, 45, 50, 52, 50, 53, 80, 63, 111, 90, 62, 74, 53, 68, 84, 83, 68, 56, 77, 47, 90, 61, 51, 68, 100, 83, 57, 88, 46, 76, 50, 73, 47, 48, 70, 64, 47, 53, 48, 63, 59, 53, 68, 52, 62, 88, 63, 59, 51, 51, 63, 67, 52, 60, 80, 88, 87, 61, 74, 83, 64, 56, 64, 77, 57, 71, 82, 110, 57, 47, 57, 55, 52, 85, 87, 64, 45, 79, 89, 78, 84, 63, 57, 62, 64, 83, 51, 75, 63, 64, 64, 47, 96, 79, 73, 59, 64, 77, 54, 96, 59, 35, 60, 53, 69, 74, 70, 107, 69, 60, 65, 53, 83, 62, 39, 50, 54, 68, 59, 47, 57, 87, 55, 73, 67, 76, 83, 53, 72, 89, 81, 55, 44, 59, 61, 113, 50, 87, 70, 57, 56, 84, 58, 49, 55, 70, 49, 60, 59, 69, 43, 78, 69, 49, 62, 70, 58, 60, 60, 33, 62, 52, 86, 64, 60, 89, 60, 76, 51, 71, 75, 59, 73, 78, 69, 60, 54, 57, 70, 78, 57, 68, 73, 45, 68, 71, 73, 64, 64, 69, 51, 73, 57, 60, 82, 68, 65, 59, 52, 61, 67, 63, 58, 45, 68, 47, 63, 70, 72, 61, 61, 61, 65, 64, 72, 60, 70, 94, 62, 50, 65, 73, 54, 57, 68, 75, 86, 52, 60, 55, 65, 102, 65, 64, 62, 69, 60, 79, 64, 66, 63, 61, 58, 55, 50, 67, 85, 54, 48, 64, 58, 77, 59, 47, 79, 54, 103, 100, 54, 109, 63, 52, 61, 79, 58, 67, 72, 65, 84, 54, 51, 52, 55, 54, 63, 64, 70, 61, 42, 52, 84, 44, 58, 71, 69, 67, 70, 72, 59, 79, 54, 83, 86, 64, 60, 76, 65, 77, 54, 71, 59, 72, 63, 69, 57, 58, 57, 59, 56, 57, 57, 67, 96, 84, 69, 64, 70, 69, 65, 69, 80, 51, 51, 52, 69, 57, 59, 56, 90, 67, 57, 49, 42, 77, 76, 58, 66, 62, 57, 55, 65, 52, 54, 68, 81, 56, 61, 86, 61, 67, 66, 63, 70, 80, 99, 94, 60, 96, 62, 57, 73, 51, 93, 56, 58, 70, 55, 54, 50, 54, 55, 62, 80, 53, 72, 53, 49, 80, 55, 66, 61, 60, 73, 56, 67, 57, 68, 70, 59, 75, 65, 68, 68, 62, 62, 58, 47, 77, 62, 71, 57, 77, 75, 52, 47, 57, 75, 59, 81, 60, 58, 51, 49, 67, 66, 69, 59, 59, 65, 63, 56, 53, 58, 55, 63, 50, 80, 54, 60, 145, 87, 56, 68, 51, 56, 95, 57, 78, 73, 69, 64, 59, 62, 56, 50, 58, 62, 55, 49, 72, 53, 39, 61, 56, 64, 66, 89, 56, 58, 61, 76, 56, 70, 63, 53, 53, 60, 66, 69, 51, 55, 69, 87, 55, 66, 91, 54, 69, 64, 83, 74, 74, 67, 67, 73, 63, 61, 57, 76, 59, 69, 87, 77, 73, 64, 52, 81, 54, 52, 52, 48, 59, 67, 76, 92, 77, 59, 75, 58, 76, 74, 52, 63, 72, 69, 55, 53, 63, 66, 71, 74, 83, 74, 52, 82, 79, 79, 69, 76, 64, 51, 82, 89, 65, 64, 64, 57, 75, 73, 57, 113, 74, 49, 70, 58, 60, 71, 62, 48, 57, 71, 68, 72, 62, 79, 50, 49, 43, 68, 51, 45, 68, 70, 44, 55, 69, 75, 62, 65, 64, 49, 58, 70, 37, 76, 77, 69, 59, 60, 56, 76, 51, 75, 77, 69, 60, 68, 63, 66, 70, 59, 71, 93, 68, 60, 50, 50, 60, 61, 43, 53, 74, 38, 66, 57, 71, 58, 58, 76, 56, 62, 52, 59, 67, 84, 65, 63, 55, 68, 82, 76, 72, 53, 67, 59, 59, 56, 70, 66, 49, 72, 53, 55, 59, 50, 77, 67, 60, 61, 58, 83, 63, 71, 51, 49, 66, 75, 64, 97, 58, 56, 44, 80, 73, 66, 58, 69, 72, 59, 69, 63, 59, 57, 66, 54, 71, 52, 63, 60, 74, 76, 104, 63, 56, 74, 56, 62, 72, 47, 55, 57, 62, 58, 59, 50, 52, 68, 100, 84, 65, 81, 60, 80, 76, 65, 47, 46, 45, 70, 47, 51, 57, 51, 78, 41, 81, 83, 93, 88, 56, 68, 71, 44, 64, 73, 73, 80, 63, 71, 57, 71, 56, 48, 74, 71, 57, 66, 48, 58, 57, 72, 56, 46, 88, 50, 59, 54, 71, 104, 53, 67, 67, 67, 57, 66, 81, 69, 60, 48, 65, 86, 59, 58, 85, 70, 72, 52, 58, 58, 56, 61, 69, 80, 101, 63, 60, 64, 61, 70, 84, 84, 79, 61, 100, 57, 58, 59, 69, 119, 71, 56, 64, 80, 70, 76, 98, 60, 62, 63, 61, 70, 66, 59, 53, 68, 58, 63, 61, 59, 94, 62, 72, 62, 56, 65, 51, 66, 90, 81, 38, 70, 67, 93, 58, 63, 57, 60, 108, 51, 87, 67, 64, 83, 53, 56, 57, 56, 66, 72, 97, 59, 65, 61, 78, 58, 66, 73, 59, 65, 41, 61, 64, 70, 57, 78, 66, 61, 67, 72, 85, 50, 96, 64, 49, 58, 51, 64, 70, 56, 65, 72, 81, 64, 51, 74, 62, 79, 48, 64, 65, 89, 55, 65, 61, 44, 53, 88, 106, 47, 66, 58, 55, 87, 68, 102, 64, 53, 70, 69, 81, 70, 85, 56, 73, 55, 62, 55, 61, 68, 27, 66, 60, 61, 78, 63, 61, 72, 79, 62, 46, 66, 58, 44, 58, 64, 61, 83, 68, 75, 65, 60, 60, 73, 89, 61, 87, 70, 45, 62, 55, 53, 70, 77, 55, 81, 55, 62, 40, 63, 77, 82, 105, 65, 59, 67, 76, 58, 77, 78, 51, 60, 59, 59, 77, 55, 84, 52, 77, 84, 92, 50, 100, 63, 82, 70, 71, 55, 73, 88, 76, 75, 64, 68, 49, 59, 55, 56, 57, 49, 66, 71, 79, 69, 58, 63, 60, 67, 57, 66, 57, 56, 71, 47, 82, 65, 74, 60, 67, 65, 54, 52, 55, 60, 71, 51, 76, 112, 73, 66, 64, 89, 50, 72, 73, 58, 54, 57, 68, 68, 73, 59, 66, 56, 50, 56, 67, 66, 84, 59, 71, 66, 87, 55, 53, 69, 78, 60, 71, 76, 73, 57, 74, 63, 76, 66, 72, 44, 48, 49, 76, 54, 61, 53, 88, 73, 69, 73, 55, 74, 75, 82, 68, 62, 86, 68, 54, 43, 86, 51, 64, 67, 68, 68, 128, 38, 54, 60, 60, 96, 68, 158, 60, 75, 80, 64, 61, 68, 55, 71, 58, 49, 58, 58, 64, 74, 88, 82, 92, 67, 72, 63, 65, 47, 46, 67, 70, 71, 90, 56, 52, 63, 74, 54, 64, 84, 68, 58, 66, 44, 86, 61, 47, 51, 48, 47, 67, 62, 51, 59, 60, 78, 45, 47, 74, 56, 66, 83, 84, 59, 57, 61, 62, 102, 77, 52, 56, 51, 58, 70, 53, 65, 60, 45, 49, 59, 66, 77, 57, 67, 60, 51, 55, 64, 77, 75, 76, 59, 55, 93, 76, 66, 78, 55, 69, 72, 59, 71, 48, 80, 74, 50, 94, 72, 77, 107, 77, 57, 58, 61, 61, 52, 61, 103, 66, 61, 73, 52, 68, 62, 82, 97, 50, 66, 53, 56, 61, 47, 56, 75, 76, 64, 53, 74, 42, 67, 62, 65, 74, 47, 80, 49, 48, 40, 58, 48, 82, 50, 72, 72, 60, 53, 51, 72, 66, 48, 99, 85, 72, 75, 96, 36, 53, 64, 77, 60, 89, 80, 59, 87, 74, 33, 74, 81, 39, 98, 60, 54, 66, 72, 54, 79, 75, 35, 49, 57, 62, 86, 70, 66, 58, 77, 68, 68, 78, 76, 69, 56, 64, 81, 59, 65, 64, 54, 108, 69, 55, 50, 66, 83, 71, 64, 73, 68, 61, 69, 44, 62, 79, 65, 59, 66, 75, 92, 70, 41, 70, 92, 54, 70, 63, 89, 63, 75, 47, 77, 72, 78, 57, 99, 61, 68, 86, 77, 78, 56, 72, 68, 64, 54, 45, 38, 64, 63, 53, 89, 56, 61, 65, 95, 58, 56, 68, 77, 88, 68, 90, 36, 48, 68, 68, 53, 50, 85, 60, 56, 47, 80, 55, 83, 49, 23, 69, 44, 72, 89, 74, 67, 59, 48, 58, 54, 138, 73, 36, 64, 95, 70, 67, 42, 59, 51, 93, 42, 58, 94, 44, 46, 50, 76, 79, 62, 92, 59, 70, 41, 52, 69, 70, 65, 73, 62, 62, 86, 70, 74, 63, 62, 55, 69, 54, 47, 55, 56, 69, 60, 68, 109, 48, 72, 72, 62, 71, 55, 106, 60, 81, 62, 74, 72, 60, 63, 81, 41, 39, 62, 93, 85, 75, 112, 61, 70, 53, 78, 69, 77, 74, 49, 54, 86, 67, 31, 78, 56, 87, 72, 58, 63, 76, 46, 53, 45, 74, 62, 82, 58, 60, 82, 63, 61, 62, 64, 55, 76, 90, 94, 77, 62, 70, 73, 64, 71, 108, 66, 90, 59, 64, 87, 116, 60, 69, 45, 46, 52, 79, 97, 71, 40, 53, 77, 58, 62, 61, 78, 56, 61, 59, 69, 79, 36, 62, 74, 63, 67, 93, 65, 76, 73, 66, 51, 35, 66, 39, 84, 63, 64, 42, 62, 65, 73, 66, 67, 64, 62, 56, 51, 48, 60, 75, 66, 81, 68, 51, 80, 110, 59, 55, 59, 62, 80, 60, 53, 78, 64, 69, 75, 74, 84, 65, 56, 61, 50, 53, 63, 79, 72, 63, 61, 65, 70, 92, 97, 61, 29, 89, 49, 67, 44, 67, 85, 79, 64, 68, 62, 80, 83, 62, 63, 59, 42, 98, 92, 66, 47, 61, 61, 56, 74, 47, 55, 58, 63, 46, 62, 49, 85, 70, 58, 77, 54, 64, 64, 62, 63, 56, 63, 59, 71, 71, 59, 54, 65, 59, 51, 68, 90, 79, 81, 75, 50, 69, 91, 52, 73, 61, 48, 59, 62, 73, 76, 62, 44, 79, 80, 70, 53, 77, 69, 66, 35, 53, 50, 88, 40, 81, 65, 78, 62, 56, 67, 80, 57, 63, 54, 75, 71, 52, 58, 47, 82, 75, 93, 51, 81, 65, 48, 76, 78, 78, 92, 75, 55, 102, 54, 58, 58, 53, 58, 63, 61, 88, 49, 117, 34, 49, 56, 65, 65, 79, 60, 56, 83, 65, 52, 56, 28, 74, 56, 98, 64, 80, 55, 57, 57, 89, 61, 78, 64, 77, 59, 52, 68, 60, 59, 60, 65, 68, 65, 71, 54, 58, 73, 76, 49, 152, 98, 63, 57, 96, 45, 105, 77, 34, 54, 76, 61, 85, 71, 64, 78, 95, 58, 61, 71, 66, 77, 57, 53, 69, 55, 97, 95, 69, 71, 48, 70, 90, 66, 70, 57, 64, 63, 60, 67, 54, 73, 93, 67, 74, 81, 59, 53, 51, 69, 73, 83, 50, 49, 62, 65, 67, 66, 59, 53, 56, 66, 56, 82, 78, 53, 106, 38, 68, 51, 63, 52, 63, 40, 45, 80, 104, 51, 64, 71, 68, 74, 55, 91, 54, 72, 68, 57, 45, 58, 71, 99, 82, 49, 71, 98, 72, 45, 50, 54, 42, 61, 92, 53, 68, 58, 43, 67, 102, 45, 80, 63, 85, 69, 81, 91, 81, 66, 99, 76, 65, 57, 38, 62, 54, 62, 50, 52, 61, 59, 57, 71, 54, 94, 54, 76, 47, 78, 80, 80, 51, 76, 65, 98, 61, 57, 67, 84, 53, 68, 90, 86, 58, 69, 62, 92, 70, 81, 46, 42, 69, 61, 88, 97, 83, 84, 117, 62, 73, 73, 76, 70, 55, 61, 76, 56, 83, 100, 112, 62, 85, 80, 59, 82, 74, 60, 78, 53, 36, 71, 87, 60, 39, 54, 65, 72, 62, 79, 68, 69, 54, 41, 51, 93, 64, 54, 107, 80, 56, 64, 83, 47, 39, 67, 55, 66, 54, 46, 75, 56, 60, 57, 64, 66, 81, 70, 45, 58, 52, 58, 92, 46, 54, 53, 85, 80, 79, 66, 83, 51, 68, 74, 64, 74, 37, 53, 63, 82, 50, 68, 101, 67, 62, 53, 48, 75, 88, 97, 55, 62, 66, 110, 64, 69, 48, 55, 55, 42, 43, 85, 71, 76, 46, 74, 65, 70, 72, 53, 58, 87, 79, 57, 74, 86, 67, 96, 63, 68, 63, 78, 94, 59, 50, 53, 52, 49, 71, 57, 51, 56, 56, 105, 59, 63, 45, 54, 76, 96, 74, 24, 69, 90, 90, 57, 74, 68, 54, 48, 94, 59, 57, 70, 97, 72, 75, 49, 77, 61, 69, 63, 60, 88, 69, 46, 45, 26, 84, 59, 56, 58, 80, 61, 65, 59, 56, 63, 74, 72, 134, 45, 51, 57, 52, 71, 69, 69, 49, 66, 63, 61, 84, 57, 71, 48, 68, 66, 62, 55, 48, 64, 63, 81, 77, 44, 67, 61, 73, 64, 56, 94, 61, 55, 45, 45, 45, 87, 63, 51, 71, 91, 170, 66, 71, 58, 47, 60, 63, 64, 60, 63, 58, 37, 34, 62, 61, 57, 67, 62, 69, 51, 58, 78, 69, 79, 91, 58, 59, 68, 53, 70, 48, 40, 80, 48, 74, 50, 56, 61, 52, 62, 66, 54, 55, 79, 84, 57, 75, 66, 50, 54, 60, 90, 64, 60, 57, 55, 96, 56, 73, 59, 48, 74, 82, 74, 62, 60, 89, 78, 62, 59, 94, 69, 70, 59, 53, 107, 57, 81, 58, 56, 92, 78, 61, 68, 74, 67, 55, 75, 40, 55, 75, 63, 74, 72, 60, 65, 62, 58, 51, 44, 84, 53, 72, 56, 57, 59, 84, 58, 74, 60, 52, 66, 69, 89, 62, 73, 66, 66, 68, 70, 52, 49, 34, 63, 92, 62, 101, 81, 66, 53, 64, 47, 46, 53, 88, 86, 63, 55, 60, 59, 76, 82, 46, 55, 56, 58, 72, 64, 63, 44, 76, 53, 65, 87, 85, 93, 66, 50, 81, 48, 30, 58, 96, 50, 78, 60, 71, 52, 83, 84, 56, 69, 69, 82, 60, 43, 84, 62, 55, 55, 76, 53, 73, 64, 65, 61, 87, 61, 70, 67, 73, 58, 71, 81, 73, 52, 63, 73, 77, 72, 67, 56, 78, 75, 63, 71, 89, 57, 68, 88, 64, 64, 62, 61, 51, 55, 44, 54, 71, 128, 78, 77, 75, 66, 58, 30, 95, 48, 64, 59, 53, 56, 44, 64, 64, 58, 77, 79, 68, 62, 82, 48, 58, 45, 69, 65, 111, 52, 78, 63, 60, 78, 57, 61, 64, 45, 76, 76, 62, 66, 69, 58, 56, 79, 62, 71, 65, 56, 52, 57, 67, 45, 87, 48, 60, 53, 65, 70, 59, 57, 96, 56, 86, 70, 58, 53, 63, 66, 62, 55, 58, 79, 66, 71, 64, 47, 52, 77, 68, 41, 68, 55, 50, 61, 58, 61, 74, 58, 71, 72, 62, 59, 49, 95, 61, 67, 62, 70, 83, 59, 73, 56, 62, 63, 79, 83, 71, 58, 53, 64, 68, 60, 82, 65, 86, 57, 52, 149, 64, 71, 81, 68, 70, 74, 54, 70, 48, 66, 33, 83, 92, 51, 54, 74, 62, 44, 72, 59, 41, 81, 70, 73, 59, 49, 60, 58, 51, 40, 69, 66, 52, 67, 44, 41, 111, 65, 49, 106, 56, 61, 49, 71, 106, 59, 79, 67, 50, 84, 70, 56, 51, 50, 61, 70, 55, 84, 65, 106, 53, 50, 54, 63, 66, 61, 75, 62, 69, 60, 70, 52, 71, 56, 47, 48, 128, 68, 61, 59, 77, 50, 78, 62, 81, 63, 98, 71, 78, 52, 74, 51, 73, 75, 61, 54, 79, 60, 73, 54, 85, 65, 77, 68, 80, 72, 64, 46, 60, 76, 57, 61, 61, 54, 67, 54, 69, 114, 48, 78, 63, 69, 67, 61, 49, 45, 55, 71, 70, 70, 64, 99, 68, 72, 55, 58, 61, 62, 52, 53, 85, 63, 95, 65, 63, 54, 44, 58, 74, 81, 57, 80, 51, 59, 78, 81, 67, 49, 44, 79, 38, 60, 53, 68, 65, 58, 63, 60, 55, 90, 56, 74, 93, 54, 41, 57, 68, 63, 80, 61, 52, 58, 61, 63, 75, 73, 57, 62, 78, 48, 84, 96, 62, 100, 78, 86, 61, 50, 67, 63, 52, 40, 81, 65, 72, 87, 60, 81, 70, 68, 57, 74, 81, 73, 61, 59, 57, 62, 56, 86, 64, 63, 99, 52, 68, 46, 76, 62, 68, 74, 69, 69, 57, 72, 57, 59, 69, 63, 85, 39, 68, 99, 96, 61, 72, 65, 63, 97, 63, 51, 56, 71, 62, 80, 72, 38, 35, 85, 66, 67, 80, 62, 58, 61, 55, 43, 53, 69, 58, 70, 59, 62, 48, 60, 78, 70, 59, 80, 75, 72, 71, 60, 40, 51, 76, 59, 39, 65, 61, 63, 63, 61, 81, 71, 72, 47, 102, 73, 37, 66, 65, 49, 76, 68, 59, 59, 74, 49, 67, 57, 49, 72, 88, 67, 68, 69, 71, 54, 59, 48, 43, 88, 64, 64, 97, 55, 70, 100, 62, 63, 50, 57, 44, 54, 56, 66, 68, 57, 73, 57, 64, 111, 70, 85, 49, 65, 56, 62, 61, 67, 76, 64, 87, 100, 74, 44, 73, 56, 62, 59, 50, 65, 87, 47, 74, 60, 51, 56, 75, 52, 71, 53, 35, 57, 46, 63, 65, 44, 54, 54, 56, 59, 55, 67, 65, 61, 56, 62, 86, 56, 80, 48, 55, 66, 61, 89, 73, 83, 76, 53, 74, 85, 48, 47, 57, 75, 61, 45, 114, 58, 51, 75, 63, 68, 126, 72, 68, 64, 99, 81, 70, 59, 75, 46, 52, 65, 68, 69, 63, 52, 63, 74, 85, 54, 85, 53, 44, 66, 59, 71, 62, 64, 84, 53, 72, 98, 68, 52, 85, 72, 54, 48, 67, 78, 76, 52, 99, 65, 66, 47, 102, 69, 48, 54, 56, 53, 101, 52, 54, 83, 78, 55, 68, 79, 80, 50, 88, 80, 44, 70, 56, 56, 56, 76, 91, 59, 45, 60, 58, 83, 65, 92, 70, 69, 64, 89, 75, 63, 55, 59, 64, 82, 48, 43, 59, 68, 70, 67, 64, 61, 62, 51, 70, 65, 52, 61, 79, 50, 50, 45, 69, 60, 70, 55, 52, 49, 77, 64, 54, 50, 84, 52, 61, 69, 72, 83, 76, 77, 59, 77, 56, 64, 46, 44, 71, 85, 80, 58, 52, 85, 69, 47, 62, 56, 71, 55, 70, 92, 66, 58, 48, 71, 62, 75, 63, 66, 74, 67, 52, 75, 71, 52, 93, 89, 95, 93, 48, 79, 76, 63, 67, 62, 85, 51, 45, 59, 51, 72, 63, 77, 79, 56, 51, 65, 61, 56, 87, 81, 65, 100, 58, 58, 65, 73, 69, 39, 91, 68, 63, 77, 77, 74, 78, 60, 83, 65, 85, 66, 85, 90, 71, 69, 62, 36, 51, 44, 66, 71, 57, 61, 77, 59, 88, 46, 69, 75, 47, 75, 55, 52, 54, 41, 59, 91, 56, 69, 57, 81, 72, 67, 59, 54, 52, 62, 54, 112, 61, 43, 61, 83, 96, 83, 64, 66, 46, 60, 90, 57, 74, 55, 76, 64, 49, 73, 56, 125, 105, 67, 61, 73, 51, 27, 96, 55, 48, 58, 60, 65, 62, 93, 51, 91, 93, 65, 46, 70, 78, 74, 67, 54, 80, 67, 78, 69, 52, 66, 84, 108, 63, 73, 62, 52, 57, 101, 71, 94, 58, 43, 44, 87, 57, 66, 60, 102, 61, 71, 59, 47, 62, 57, 57, 64, 52, 51, 75, 69, 63, 52, 46, 55, 64, 72, 64, 53, 124, 52, 104, 70, 62, 62, 56, 104, 72, 89, 63, 71, 64, 80, 61, 68, 75, 78, 91, 63, 102, 79, 94, 67, 98, 60, 64, 53, 123, 58, 60, 73, 65, 71, 63, 59, 69, 56, 61, 62, 57, 66, 67, 60, 96, 122, 56, 58, 65, 64, 74, 53, 61, 66, 63, 74, 57, 41, 68, 59, 64, 60, 77, 59, 56, 68, 72, 49, 59, 59, 65, 49, 62, 68, 47, 65, 60, 104, 60, 51, 63, 51, 59, 62, 66, 81, 55, 47, 67, 70, 69, 53, 82, 54, 59, 66, 90, 80, 75, 57, 65, 63, 73, 62, 44, 56, 63, 73, 62, 60, 65, 69, 63, 82, 67, 66, 61, 48, 44, 59, 53, 64, 71, 68, 67, 79, 50, 68, 70, 65, 75, 112, 70, 56, 65, 144, 58, 66, 82, 62, 67, 72, 61, 60, 68, 71, 57, 71, 77, 56, 69, 91, 63, 64, 74, 53, 66, 138, 55, 56, 92, 54, 73, 76, 61, 47, 57, 79, 60, 60, 72, 46, 60, 55, 74, 62, 53, 58, 64, 94, 65, 70, 65, 55, 67, 67, 66, 70, 54, 62, 61, 59, 70, 71, 62, 55, 55, 54, 67, 36, 57, 95, 60, 62, 62, 58, 64, 66, 71, 81, 77, 82, 70, 48, 62, 61, 65, 70, 59, 60, 62, 62, 104, 65, 53, 72, 81, 65, 62, 58, 62, 49, 64, 61, 56, 59, 50, 70, 59, 63, 46, 98, 92, 60, 63, 81, 65, 66, 60, 66, 115, 58, 60, 65, 46, 77, 71, 57, 51, 55, 83, 76, 58, 72, 55, 57, 61, 44, 59, 71, 58, 68, 59, 66, 71, 74, 67, 72, 56, 70, 62, 57, 82, 62, 66, 47, 57, 62, 62, 77, 78, 59, 109, 69, 64, 56, 68, 65, 68, 56, 53, 64, 62, 70, 70, 55, 61, 62, 69, 57, 73, 59, 74, 61, 55, 67, 52, 60, 56, 59, 69, 70, 51, 69, 58, 68, 61, 54, 94, 64, 57, 65, 50, 58, 70, 59, 58, 66, 81, 54, 60, 68, 62, 55, 57, 57, 65, 48, 58, 58, 49, 57, 59, 56, 63, 71, 56, 58, 55, 59, 64, 63, 63, 66, 71, 54, 51, 53, 60, 73, 75, 123, 75, 75, 80, 55, 76, 51, 67, 63, 79, 55, 61, 61, 64, 93, 99, 60, 64, 70, 59, 52, 69, 45, 58, 68, 58, 78, 61, 60, 92, 100, 56, 58, 58, 51, 56, 71, 83, 65, 73, 56, 54, 66, 57, 44, 67, 60, 58, 71, 62, 72, 65, 66, 71, 67, 59, 66, 59, 56, 62, 47, 69, 46, 57, 61, 65, 56, 78, 67, 59, 67, 61, 71, 68, 59, 74, 49, 66, 60, 77, 62, 72, 62, 62, 57, 59, 88, 65, 60, 70, 66, 51, 75, 65, 70, 61, 62, 67, 80, 82, 63, 59, 55, 67, 78, 71, 65, 67, 68, 90, 83, 63, 58, 74, 66, 73, 79, 55, 70, 61, 48, 57, 64, 56, 62, 60, 61, 47, 53, 66, 54, 61, 54, 51, 56, 66, 63, 55, 65, 66, 62, 58, 66, 55, 75, 63, 68, 81, 67, 69, 68, 77, 71, 57, 54, 53, 68, 101, 59, 70, 64, 78, 75, 70, 67, 90, 71, 72, 55, 49, 49, 62, 51, 59, 61, 65, 57, 164, 49, 80, 64, 64, 56, 70, 78, 48, 76, 53, 58, 75, 85, 50, 93, 65, 64, 72, 64, 77, 65, 64, 81, 60, 100, 58, 110, 60, 55, 56, 75, 57, 65, 101, 49, 64, 56, 78, 74, 70, 59, 74, 60, 70, 57, 59, 64, 53, 49, 69, 60, 50, 67, 55, 73, 66, 85, 65, 63, 65, 61, 66, 59, 56, 69, 58, 63, 56, 74, 75, 59, 70, 54, 62, 52, 59, 77, 64, 89, 59, 55, 67, 66, 66, 66, 65, 55, 62, 63, 53, 94, 55, 88, 51, 65, 64, 94, 51, 66, 68, 64, 50, 67, 57, 60, 63, 49, 57, 67, 61, 58, 58, 59, 59, 61, 62, 65, 62, 87, 84, 51, 57, 74, 68, 75, 83, 57, 42, 66, 64, 76, 64, 103, 64, 83, 48, 79, 62, 52, 50, 58, 65, 61, 91, 63, 58, 68, 74, 49, 82, 55, 62, 70, 53, 68, 55, 63, 56, 68, 74, 69, 52, 53, 60, 61, 101, 68, 63, 71, 68, 54, 52, 91, 70, 72, 67, 76, 63, 75, 56, 66, 87, 69, 81, 67, 65, 90, 74, 62, 59, 59, 88, 71, 57, 61, 51, 54, 71, 108, 74, 61, 78, 55, 62, 65, 64, 65, 60, 69, 71, 62, 61, 56, 51, 76, 62, 71, 56, 71, 74, 67, 50, 74, 65, 64, 65, 100, 76, 55, 61, 61, 60, 60, 69, 74, 66, 55, 64, 57, 59, 81, 83, 74, 58, 60, 63, 83, 64, 69, 48, 64, 66, 65, 68, 73, 61, 66, 55, 57, 77, 48, 70, 96, 57, 73, 75, 83, 72, 56, 58, 68, 60, 71, 85, 64, 61, 67, 52, 57, 69, 86, 56, 55, 47, 71, 61, 64, 69, 56, 69, 70, 62, 61, 58, 61, 53, 66, 74, 58, 59, 73, 62, 80, 50, 70, 54, 106, 55, 69, 61, 85, 66, 69, 57, 61, 54, 48, 69, 91, 64, 57, 73, 58, 87, 76, 70, 87, 72, 60, 58, 68, 60, 68, 62, 66, 66, 60, 78, 83, 58, 71, 77, 75, 69, 62, 57, 56, 65, 76, 73, 76, 62, 65, 61, 66, 61, 82, 49, 62, 72, 84, 61, 71, 59, 72, 60, 54, 55, 57, 50, 56, 56, 71, 61, 57, 84, 52, 46, 82, 62, 50, 60, 67, 63, 62, 64, 83, 63, 52, 52, 67, 86, 69, 55, 73, 69, 47, 61, 83, 56, 53, 53, 71, 74, 72, 78, 125, 61, 89, 67, 71, 65, 74, 50, 56, 68, 69, 48, 69, 60, 61, 56, 61, 70, 75, 71, 81, 75, 64, 66, 59, 73, 60, 62, 49, 61, 61, 65, 77, 57, 67, 68, 52, 60, 63, 67, 66, 64, 65, 56, 64, 81, 68, 42, 88, 61, 88, 64, 67, 59, 62, 116, 62, 54, 77, 63, 59, 65, 60, 67, 65, 60, 62, 58, 81, 109, 52, 72, 60, 68, 59, 76, 72, 62, 50, 71, 64, 49, 71, 54, 56, 58, 83, 62, 70, 113, 136, 80, 80, 74, 57, 94, 50, 75, 83, 79, 58, 56, 66, 68, 55, 62, 92, 68, 58, 64, 78, 53, 72, 58, 49, 57, 56, 61, 76, 55, 81, 56, 64, 51, 67, 52, 53, 81, 82, 60, 54, 58, 68, 75, 55, 74, 67, 48, 78, 74, 64, 53, 66, 67, 74, 55, 65, 54, 99, 75, 76, 54, 56, 53, 76, 59, 66, 62, 68, 71, 61, 64, 62, 64, 73, 61, 86, 47, 64, 63, 61, 62, 58, 60, 75, 61, 57, 54, 66, 45, 51, 80, 53, 70, 65, 74, 79, 49, 67, 67, 53, 110, 55, 78, 55, 73, 66, 65, 108, 53, 49, 54, 62, 65, 63, 116, 58, 71, 61, 70, 58, 49, 73, 88, 54, 70, 80, 73, 65, 60, 47, 75, 71, 58, 69, 64, 64, 55, 75, 54, 64, 80, 117, 45, 69, 67, 72, 75, 67, 63, 69, 62, 81, 65, 52, 66, 78, 52, 85, 58, 77, 68, 75, 66, 50, 93, 83, 57, 45, 55, 79, 67, 59, 56, 80, 58, 71, 61, 69, 66, 68, 63, 67, 62, 49, 59, 57, 57, 69, 63, 78, 59, 84, 58, 62, 58, 78, 88, 52, 70, 74, 51, 103, 57, 49, 60, 40, 75, 62, 61, 67, 47, 74, 57, 63, 147, 60, 74, 67, 66, 62, 67, 62, 62, 56, 65, 63, 70, 79, 55, 58, 58, 60, 97, 75, 58, 66, 53, 58, 69, 81, 62, 78, 54, 61, 68, 75, 54, 57, 50, 71, 80, 72, 74, 55, 58, 58, 67, 82, 68, 62, 68, 66, 66, 51, 74, 64, 128, 71, 85, 66, 63, 73, 53, 72, 70, 74, 77, 52, 67, 79, 54, 64, 46, 72, 90, 41, 67, 59, 64, 74, 74, 57, 71, 65, 116, 61, 64, 65, 57, 58, 62, 59, 62, 80, 60, 62, 65, 58, 62, 68, 64, 64, 62, 98, 63, 45, 61, 79, 66, 58, 72, 65, 64, 76, 68, 64, 53, 69, 77, 57, 64, 64, 52, 54, 67, 61, 61, 52, 67, 81, 65, 40, 80, 55, 64, 61, 73, 59, 71, 66, 65, 48, 71, 69, 59, 74, 62, 60, 86, 60, 65, 68, 60, 54, 66, 55, 62, 65, 58, 74, 79, 62, 61, 67, 60, 63, 50, 61, 65, 72, 74, 61, 72, 57, 57, 57, 72, 61, 47, 54, 94, 67, 67, 53, 52, 63, 68, 78, 68, 49, 55, 55, 51, 62, 48, 71, 57, 61, 63, 63, 49, 65, 61, 77, 63, 66, 72, 62, 62, 61, 67, 69, 61, 61, 58, 63, 54, 55, 66, 54, 77, 55, 63, 64, 68, 53, 66, 65, 45, 66, 70, 76, 65, 65, 61, 69, 65, 46, 50, 64, 49, 60, 73, 76, 79, 44, 63, 62, 89, 72, 63, 68, 66, 68, 55, 68, 82, 77, 65, 52, 65, 66, 64, 50, 75, 67, 56, 69, 92, 64, 74, 86, 56, 60, 60, 75, 66, 65, 46, 57, 77, 72, 76, 60, 62, 54, 58, 80, 104, 53, 57, 105, 52, 59, 75, 52, 63, 51, 75, 52, 64, 63, 59, 63, 63, 56, 62, 60, 63, 93, 67, 82, 83, 67, 62, 53, 80, 68, 81, 76, 86, 70, 53, 85, 56, 68, 82, 70, 70, 93, 59, 61, 39, 64, 57, 66, 61, 80, 50, 79, 76, 128, 60, 59, 61, 72, 61, 82, 74, 75, 53, 69, 73, 74, 66, 58, 59, 67, 62, 67, 76, 52, 71, 60, 62, 49, 54, 60, 96, 70, 55, 64, 87, 68, 75, 65, 60, 62, 55, 59, 66, 54, 57, 58, 65, 65, 63, 70, 78, 65, 66, 51, 69, 67, 67, 91, 57, 73, 44, 61, 79, 67, 69, 68, 55, 70, 81, 58, 66, 69, 57, 76, 60, 64, 57, 58, 66, 58, 71, 69, 58, 56, 96, 54, 54, 50, 55, 65, 55, 74, 67, 57, 71, 52, 63, 49, 66, 78, 74, 91, 68, 50, 58, 64, 74, 63, 80, 60, 51, 122, 53, 63, 59, 57, 74, 58, 64, 63, 60, 47, 75, 92, 84, 45, 64, 72, 55, 68, 56, 61, 115, 52, 70, 66, 63, 75, 64, 58, 61, 66, 65, 55, 76, 63, 100, 68, 61, 76, 56, 63, 64, 72, 69, 57, 66, 105, 50, 48, 56, 66, 65, 67, 62, 79, 59, 55, 59, 79, 74, 52, 70, 80, 64, 55, 75, 62, 74, 65, 50, 57, 62, 54, 73, 93, 61, 67, 86, 56, 63, 65, 71, 57, 56, 76, 51, 68, 73, 67, 71, 58, 52, 55, 67, 63, 72, 46, 63, 52, 68, 52, 41, 51, 49, 59, 73, 75, 57, 77, 72, 61, 56, 65, 73, 55, 70, 69, 70, 80, 49, 54, 63, 70, 66, 75, 75, 62, 58, 60, 84, 64, 95, 68, 72, 86, 66, 67, 54, 67, 61, 91, 66, 71, 73, 70, 66, 68, 83, 58, 81, 53, 50, 63, 67, 81, 59, 77, 97, 46, 61, 80, 77, 93, 69, 56, 63, 63, 40, 67, 56, 66, 41, 70, 63, 49, 70, 58, 56, 63, 70, 67, 54, 61, 56, 51, 47, 75, 68, 54, 69, 54, 66, 62, 73, 79, 52, 53, 53, 50, 65, 71, 61, 58, 72, 87, 75, 58, 63, 70, 91, 67, 58, 64, 65, 74, 82, 95, 72, 66, 67, 56, 62, 64, 66, 48, 72, 60, 55, 80, 57, 60, 58, 82, 54, 77, 54, 61, 64, 67, 66, 66, 94, 66, 60, 54, 99, 67, 64, 62, 53, 94, 55, 80, 69, 108, 47, 62, 62, 100, 69, 62, 67, 73, 59, 71, 52, 70, 55, 63, 90, 58, 62, 53, 68, 69, 64, 76, 68, 68, 53, 53, 61, 72, 73, 64, 81, 50, 60, 59, 79, 56, 58, 49, 48, 146, 58, 68, 101, 53, 66, 60, 59, 63, 68, 65, 51, 66, 52, 54, 96, 65, 71, 86, 53, 70, 65, 67, 89, 56, 69, 58, 82, 64, 90, 73, 68, 63, 81, 66, 81, 61, 90, 66, 52, 43, 57, 70, 47, 60, 60, 79, 70, 64, 51, 56, 60, 76, 57, 61, 125, 61, 59, 57, 98, 67, 56, 62, 62, 59, 63, 75, 63, 80, 73, 59, 57, 68, 99, 65, 68, 58, 49, 73, 53, 52, 93, 70, 60, 65, 58, 63, 67, 65, 107, 77, 162, 74, 72, 85, 56, 56, 56, 60, 58, 69, 67, 103, 56, 62, 63, 50, 64, 74, 48, 69, 65, 48, 51, 64, 51, 72, 75, 58, 61, 72, 93, 55, 76, 95, 57, 49, 81, 58, 65, 62, 43, 68, 47, 41, 82, 51, 79, 44, 58, 61, 47, 70, 65, 47, 57, 56, 84, 95, 49, 57, 69, 59, 68, 61, 96, 80, 66, 66, 68, 87, 61, 122, 66, 59, 83, 53, 63, 60, 54, 65, 65, 53, 87, 67, 63, 60, 67, 66, 60, 67, 89, 58, 67, 71, 73, 70, 50, 81, 54, 63, 73, 49, 52, 77, 55, 72, 64, 65, 69, 91, 57, 63, 68, 73, 97, 50, 67, 57, 65, 89, 81, 75, 69, 73, 60, 56, 76, 48, 65, 49, 64, 72, 53, 60, 71, 62, 46, 61, 62, 74, 90, 86, 50, 45, 53, 62, 56, 68, 74, 68, 73, 57, 60, 78, 67, 55, 55, 69, 63, 79, 83, 60, 65, 85, 60, 55, 69, 59, 57, 52, 60, 41, 48, 49, 59, 62, 77, 96, 59, 54, 64, 66, 54, 64, 72, 73, 75, 56, 76, 63, 65, 62, 59, 69, 54, 75, 84, 58, 60, 60, 58, 47, 66, 75, 56, 60, 52, 62, 88, 57, 52, 75, 44, 63, 75, 63, 66, 103, 53, 84, 66, 61, 90, 74, 70, 84, 87, 145, 74, 53, 49, 53, 64, 72, 40, 53, 70, 69, 49, 42, 68, 54, 62, 65, 58, 66, 64, 59, 66, 58, 64, 50, 78, 58, 72, 77, 92, 60, 67, 62, 47, 64, 59, 70, 73, 79, 73, 56, 82, 59, 60, 81, 60, 56, 74, 56, 73, 72, 67, 56, 74, 99, 76, 66, 55, 63, 64, 75, 46, 59, 56, 62, 74, 54, 75, 58, 54, 60, 73, 76, 74, 51, 60, 65, 47, 59, 48, 59, 56, 72, 76, 68, 60, 69, 122, 50, 53, 52, 70, 62, 67, 82, 51, 48, 84, 53, 64, 61, 72, 44, 71, 53, 66, 51, 64, 57, 68, 64, 46, 61, 63, 51, 89, 87, 84, 67, 46, 55, 58, 90, 60, 79, 79, 53, 57, 45, 55, 59, 74, 51, 56, 65, 57, 86, 59, 59, 71, 50, 70, 76, 61, 73, 74, 74, 56, 79, 56, 60, 60, 64, 83, 62, 81, 59, 50, 69, 92, 68, 65, 56, 64, 54, 69, 79, 64, 59, 78, 61, 63, 84, 69, 162, 55, 50, 55, 74, 79, 62, 62, 69, 96, 46, 66, 54, 61, 55, 128, 49, 64, 59, 59, 65, 53, 61, 55, 68, 87, 51, 75, 46, 54, 69, 71, 47, 67, 65, 67, 63, 55, 57, 54, 65, 60, 81, 89, 111, 48, 36, 54, 64, 59, 59, 54, 45, 55, 56, 42, 55, 62, 52, 87, 58, 59, 86, 74, 102, 78, 58, 82, 72, 66, 80, 70, 64, 68, 68, 72, 49, 69, 58, 67, 76, 133, 75, 56, 71, 61, 77, 51, 73, 88, 60, 53, 63, 57, 61, 47, 65, 59, 65, 69, 79, 69, 57, 65, 56, 53, 54, 73, 53, 65, 73, 56, 54, 66, 51, 63, 86, 67, 59, 61, 67, 50, 88, 82, 50, 64, 59, 59, 59, 63, 80, 77, 75, 56, 58, 58, 72, 68, 75, 99, 92, 69, 71, 66, 45, 56, 62, 51, 71, 63, 58, 78, 87, 56, 75, 56, 63, 77, 71, 62, 84, 87, 55, 85, 64, 57, 53, 62, 61, 93, 67, 74, 80, 96, 83, 50, 61, 52, 52, 82, 76, 93, 48, 44, 52, 66, 119, 36, 71, 111, 67, 52, 84, 57, 51, 63, 69, 60, 83, 73, 86, 42, 91, 62, 57, 70, 61, 37, 59, 75, 74, 74, 83, 58, 70, 58, 64, 89, 52, 62, 70, 61, 53, 53, 87, 59, 74, 52, 62, 44, 57, 49, 120, 76, 47, 66, 105, 55, 69, 90, 61, 43, 45, 76, 55, 68, 73, 59, 64, 57, 65, 52, 97, 73, 69, 41, 77, 57, 65, 64, 70, 85, 78, 55, 65, 56, 70, 67, 73, 63, 52, 69, 61, 74, 104, 63, 61, 54, 60, 56, 62, 70, 64, 70, 68, 57, 75, 79, 67, 64, 47, 64, 62, 60, 55, 61, 60, 52, 54, 83, 55, 60, 72, 39, 66, 49, 33, 35, 57, 102, 56, 50, 56, 79, 93, 76, 58, 68, 65, 68, 58, 65, 67, 96, 69, 57, 77, 68, 67, 46, 51, 117, 72, 61, 80, 44, 89, 64, 69, 56, 78, 77, 73, 54, 55, 63, 56, 72, 73, 70, 71, 63, 70, 56, 64, 94, 64, 67, 61, 61, 69, 77, 98, 76, 55, 75, 57, 75, 58, 47, 61, 51, 50, 57, 66, 66, 57, 77, 56, 95, 87, 50, 66, 72, 40, 67, 72, 59, 51, 71, 105, 64, 69, 39, 80, 48, 72, 52, 50, 65, 70, 51, 55, 72, 54, 68, 70, 72, 84, 89, 72, 46, 77, 61, 50, 74, 64, 155, 50, 68, 69, 65, 86, 71, 70, 75, 83, 66, 72, 49, 77, 75, 73, 64, 53, 73, 43, 69, 65, 58, 53, 45, 60, 56, 75, 77, 65, 68, 58, 101, 65, 75, 55, 71, 75, 67, 79, 56, 62, 52, 91, 62, 60, 67, 54, 93, 53, 77, 61, 61, 61, 58, 76, 73, 54, 50, 63, 66, 101, 65, 69, 93, 59, 91, 75, 64, 69, 69, 72, 62, 58, 50, 58, 54, 44, 63, 63, 75, 83, 61, 71, 76, 51, 75, 54, 70, 86, 84, 54, 75, 77, 71, 88, 55, 73, 126, 48, 98, 52, 85, 75, 45, 53, 66, 59, 64, 55, 38, 53, 65, 78, 55, 60, 74, 54, 82, 71, 62, 64, 63, 60, 76, 86, 60, 54, 58, 40, 46, 68, 70, 66, 60, 92, 54, 58, 66, 91, 71, 48, 52, 60, 85, 47, 58, 76, 38, 81, 51, 61, 83, 53, 60, 89, 64, 87, 79, 66, 50, 59, 72, 72, 50, 62, 65, 73, 58, 53, 66, 60, 74, 73, 70, 61, 57, 60, 67, 62, 56, 66, 93, 73, 66, 113, 45, 69, 49, 60, 73, 52, 70, 74, 68, 61, 54, 74, 75, 67, 111, 66, 53, 57, 74, 80, 46, 78, 66, 62, 60, 78, 59, 72, 54, 72, 55, 56, 47, 76, 58, 64, 70, 54, 70, 49, 74, 66, 71, 86, 94, 72, 53, 87, 53, 61, 59, 111, 64, 45, 77, 94, 55, 59, 69, 70, 85, 77, 69, 58, 54, 59, 67, 53, 58, 78, 70, 69, 62, 68, 73, 69, 58, 76, 90, 106, 65, 47, 36, 60, 80, 50, 61, 70, 102, 64, 66, 50, 82, 100, 77, 54, 65, 56, 58, 51, 73, 83, 61, 62, 85, 101, 43, 94, 67, 79, 72, 69, 71, 74, 67, 63, 64, 34, 61, 42, 53, 48, 62, 78, 77, 64, 63, 93, 47, 64, 56, 70, 121, 45, 66, 47, 67, 69, 62, 76, 63, 72, 46, 76, 66, 54, 61, 43, 80, 58, 66, 82, 67, 79, 67, 58, 92, 64, 69, 42, 41, 110, 91, 30, 81, 102, 60, 55, 63, 62, 51, 49, 69, 64, 66, 97, 93, 99, 100, 80, 54, 81, 81, 49, 62, 65, 97, 68, 54, 74, 44, 69, 78, 34, 65, 55, 51, 84, 65, 93, 57, 78, 70, 59, 75, 76, 76, 58, 74, 55, 69, 67, 64, 70, 57, 79, 54, 129, 92, 73, 68, 53, 81, 64, 55, 70, 69, 95, 61, 57, 82, 68, 52, 45, 61, 63, 77, 52, 65, 63, 84, 63, 65, 61, 60, 53, 49, 68, 49, 57, 44, 50, 56, 56, 79, 54, 94, 64, 41, 77, 56, 63, 58, 53, 71, 55, 71, 73, 79, 63, 53, 74, 68, 69, 63, 88, 58, 55, 59, 46, 69, 71, 62, 62, 63, 54, 40, 68, 53, 52, 65, 49, 71, 59, 62, 91, 48, 56, 54, 59, 54, 102, 59, 68, 86, 68, 54, 56, 69, 53, 50, 91, 74, 63, 51, 88, 49, 42, 53, 61, 72, 37, 56, 58, 80, 60, 66, 60, 59, 77, 61, 58, 63, 49, 56, 72, 77, 38, 67, 59, 100, 67, 68, 60, 66, 42, 70, 56, 64, 100, 72, 58, 55, 84, 73, 81, 112, 74, 53, 57, 57, 68, 88, 71, 53, 77, 74, 71, 106, 115, 98, 67, 35, 56, 55, 63, 43, 52, 62, 78, 69, 54, 69, 63, 55, 41, 61, 75, 75, 71, 69, 58, 63, 71, 44, 57, 75, 61, 75, 56, 51, 58, 90, 64, 47, 93, 95, 74, 71, 76, 81, 49, 59, 93, 67, 52, 62, 64, 105, 76, 69, 49, 58, 60, 47, 55, 63, 46, 60, 65, 51, 64, 51, 65, 77, 75, 117, 72, 61, 68, 68, 86, 67, 65, 56, 42, 67, 41, 81, 41, 57, 63, 60, 62, 55, 52, 56, 73, 62, 46, 63, 62, 60, 101, 78, 55, 109, 58, 74, 59, 56, 67, 66, 73, 50, 81, 76, 79, 44, 55, 77, 70, 86, 95, 69, 63, 70, 109, 40, 60, 46, 93, 66, 35, 43, 39, 53, 76, 59, 77, 54, 63, 55, 60, 72, 51, 68, 71, 58, 44, 92, 77, 64, 73, 70, 50, 67, 56, 57, 39, 61, 58, 48, 61, 28, 103, 52, 61, 69, 65, 73, 53, 50, 130, 106, 57, 59, 64, 52, 74, 51, 73, 49, 88, 52, 102, 54, 40, 76, 61, 65, 84, 55, 52, 58, 71, 66, 47, 75, 60, 45, 70, 44, 70, 73, 72, 59, 64, 53, 51, 67, 43, 61, 73, 59, 62, 53, 67, 61, 79, 70, 23, 68, 49, 66, 67, 49, 69, 50, 89, 73, 93, 111, 77, 59, 36, 74, 62, 70, 34, 61, 79, 59, 121, 63, 76, 50, 90, 54, 74, 107, 82, 73, 67, 65, 72, 59, 74, 83, 33, 76, 58, 65, 48, 57, 84, 86, 60, 76, 68, 44, 37, 75, 74, 67, 57, 65, 85, 45, 72, 93, 63, 56, 61, 76, 57, 91, 50, 52, 89, 118, 62, 41, 37, 59, 54, 50, 67, 76, 50, 58, 67, 65, 70, 94, 69, 89, 62, 59, 61, 78, 62, 64, 49, 52, 55, 76, 67, 77, 49, 54, 50, 67, 68, 54, 56, 64, 57, 58, 60, 63, 76, 89, 74, 59, 41, 54, 47, 77, 71, 72, 72, 79, 81, 67, 53, 70, 91, 63, 81, 83, 34, 59, 62, 52, 69, 66, 54, 52, 72, 88, 65, 57, 87, 62, 63, 61, 74, 81, 48, 36, 70, 66, 61, 80, 78, 41, 64, 99, 31, 32, 70, 61, 54, 74, 53, 72, 53, 54, 40, 49, 62, 37, 67, 61, 58, 66, 65, 73, 52, 58, 63, 57, 77, 81, 74, 76, 49, 45, 57, 59, 67, 68, 87, 96, 64, 80, 78, 69, 63, 36, 117, 68, 70, 42, 63, 66, 65, 62, 52, 79, 59, 66, 61, 118, 62, 58, 57, 63, 54, 52, 82, 87, 54, 66, 58, 53, 54, 66, 63, 101, 69, 72, 73, 86, 59, 66, 44, 57, 56, 69, 67, 46, 91, 87, 66, 67, 67, 57, 79, 58, 73, 74, 40, 53, 80, 51, 51, 55, 46, 78, 60, 98, 62, 39, 73, 67, 78, 67, 66, 87, 93, 67, 69, 50, 98, 56, 58, 75, 47, 89, 49, 89, 74, 60, 79, 61, 72, 61, 96, 82, 52, 61, 58, 51, 47, 55, 44, 63, 67, 67, 53, 75, 70, 77, 86, 48, 87, 47, 52, 52, 72, 84, 100, 39, 51, 82, 52, 76, 96, 60, 57, 76, 59, 67, 47, 50, 77, 118, 57, 131, 56, 54, 76, 58, 60, 90, 77, 38, 57, 55, 70, 78, 71, 59, 73, 62, 62, 46, 80, 67, 66, 55, 80, 58, 68, 55, 81, 75, 69, 70, 57, 64, 69, 72, 66, 44, 70, 40, 82, 74, 102, 46, 63, 75, 62, 38, 58, 96, 45, 55, 46, 68, 67, 54, 47, 102, 44, 64, 86, 50, 63, 89, 89, 67, 73, 63, 38, 78, 107, 69, 51, 56, 69, 80, 100, 67, 81, 73, 60, 69, 59, 71, 33, 74, 75, 51, 102, 54, 67, 101, 44, 69, 68, 90, 65, 71, 49, 49, 86, 103, 59, 66, 66, 37, 62, 61, 71, 76, 36, 130, 78, 69, 60, 70, 70, 88, 52, 66, 78, 80, 85, 123, 60, 57, 46, 81, 60, 55, 71, 95, 56, 42, 49, 61, 66, 59, 90, 71, 104, 59, 52, 52, 75, 44, 53, 88, 74, 76, 67, 77, 50, 76, 69, 58, 70, 63, 74, 61, 75, 75, 87, 59, 66, 43, 50, 56, 72, 57, 61, 86, 77, 62, 66, 69, 82, 66, 67, 91, 55, 67, 53, 44, 59, 60, 80, 60, 77, 54, 50, 60, 65, 45, 51, 72, 62, 36, 78, 57, 80, 60, 67, 69, 68, 81, 57, 49, 110, 121, 59, 52, 80, 61, 66, 71, 68, 59, 87, 59, 102, 56, 73, 65, 83, 57, 40, 68, 78, 78, 68, 58, 34, 79, 96, 68, 63, 62, 60, 31, 72, 50, 63, 69, 76, 65, 53, 61, 79, 72, 66, 67, 64, 88, 57, 48, 60, 66, 62, 90, 72, 63, 62, 75, 71, 74, 78, 58, 54, 78, 58, 68, 77, 88, 51, 54, 51, 65, 47, 70, 51, 44, 54, 80, 61, 64, 61, 59, 82, 59, 81, 62, 49, 66, 47, 57, 52, 62, 51, 59, 73, 62, 60, 48, 49, 59, 81, 70, 73, 123, 68, 77, 79, 65, 71, 59, 50, 45, 53, 65, 74, 74, 58, 65, 67, 70, 57, 89, 80, 56, 99, 54, 55, 87, 75, 57, 59, 57, 56, 84, 47, 44, 73, 64, 59, 93, 52, 86, 83, 82, 65, 141, 67, 86, 64, 44, 64, 88, 69, 48, 53, 60, 64, 56, 54, 65, 64, 63, 50, 67, 78, 54, 68, 49, 46, 72, 54, 83, 61, 62, 68, 65, 71, 41, 54, 43, 79, 66, 57, 70, 65, 54, 36, 71, 60, 56, 43, 60, 62, 61, 74, 64, 68, 78, 88, 82, 51, 72, 55, 89, 70, 75, 57, 78, 51, 58, 51, 47, 64, 76, 73, 79, 74, 97, 47, 63, 51, 97, 49, 46, 72, 92, 64, 45, 62, 62, 57, 46, 66, 48, 70, 75, 74, 83, 70, 83, 63, 47, 70, 68, 77, 67, 64, 87, 54, 69, 52, 62, 73, 47, 51, 115, 59, 56, 73, 62, 72, 63, 46, 48, 47, 67, 68, 73, 58, 62, 64, 68, 79, 66, 64, 65, 58, 48, 58, 76, 68, 92, 73, 51, 80, 104, 67, 64, 69, 36, 47, 62, 58, 80, 57, 76, 56, 55, 50, 46, 83, 62, 93, 61, 68, 65, 79, 21, 67, 73, 86, 57, 59, 80, 63, 74, 43, 64, 64, 58, 67, 65, 66, 73, 60, 59, 60, 54, 62, 67, 70, 60, 87, 46, 73, 59, 57, 75, 44, 80, 78, 48, 50, 46, 66, 71, 75, 62, 59, 58, 73, 65, 57, 54, 51, 55, 48, 55, 66, 59, 69, 69, 62, 50, 71, 81, 59, 80, 60, 91, 53, 70, 84, 59, 55, 61, 61, 73, 56, 89, 82, 80, 68, 61, 105, 54, 79, 52, 55, 48, 62, 88, 70, 49, 77, 46, 69, 70, 57, 90, 59, 53, 63, 64, 61, 76, 57, 50, 56, 50, 79, 72, 74, 68, 65, 69, 86, 54, 49, 90, 51, 69, 79, 69, 47, 62, 58, 63, 43, 53, 81, 73, 67, 50, 63, 53, 66, 68, 67, 48, 54, 55, 56, 30, 48, 62, 46, 116, 68, 95, 47, 75, 73, 56, 73, 48, 92, 119, 64, 86, 55, 48, 59, 72, 67, 66, 74, 57, 70, 73, 72, 60, 101, 49, 55, 53, 85, 63, 85, 54, 58, 72, 57, 71, 71, 58, 64, 52, 60, 70, 66, 89, 76, 73, 81, 60, 92, 117, 85, 64, 109, 74, 54, 52, 61, 71, 64, 48, 47, 76, 74, 76, 79, 67, 46, 56, 50, 40, 84, 77, 62, 56, 58, 55, 56, 62, 48, 86, 75, 89, 61, 73, 53, 76, 74, 60, 83, 76, 60, 50, 72, 86, 41, 65, 86, 44, 51, 55, 60, 52, 43, 58, 52, 72, 61, 55, 79, 62, 64, 72, 78, 80, 75, 62, 62, 71, 84, 60, 45, 58, 101, 66, 79, 66, 53, 63, 76, 59, 109, 89, 74, 55, 67, 94, 62, 93, 90, 47, 37, 64, 51, 57, 60, 55, 81, 92, 50, 79, 42, 70, 68, 58, 63, 76, 50, 72, 68, 98, 78, 46, 74, 56, 64, 59, 46, 64, 66, 53, 71, 86, 60, 68, 47, 68, 65, 54, 84, 73, 78, 70, 54, 74, 78, 71, 70, 68, 69, 73, 69, 74, 41, 76, 40, 53, 55, 51, 74, 58, 66, 81, 50, 55, 98, 86, 100, 90, 93, 59, 48, 56, 95, 49, 57, 54, 81, 87, 68, 54, 58, 66, 66, 50, 64, 41, 65, 75, 37, 80, 55, 61, 63, 57, 135, 58, 117, 53, 49, 75, 70, 70, 61, 66, 63, 55, 73, 54, 80, 74, 66, 70, 53, 59, 119, 75, 73, 65, 64, 76, 59, 74, 58, 56, 84, 68, 53, 51, 81, 94, 55, 47, 62, 74, 49, 60, 62, 62, 69, 42, 69, 66, 62, 61, 69, 79, 59, 47, 76, 67, 78, 76, 85, 53, 58, 76, 88, 61, 57, 57, 51, 65, 80, 70, 64, 65, 57, 74, 80, 78, 41, 71, 56, 53, 57, 51, 43, 75, 69, 100, 50, 70, 48, 85, 52, 62, 65, 59, 70, 98, 58, 36, 71, 88, 47, 58, 68, 57, 59, 65, 64, 91, 74, 67, 68, 59, 68, 72, 62, 61, 66, 75, 82, 68, 71, 46, 84, 69, 68, 49, 70, 66, 56, 72, 91, 75, 59, 61, 46, 81, 72, 77, 63, 60, 78, 70, 56, 54, 66, 59, 55, 63, 51, 70, 74, 38, 80, 60, 99, 67, 70, 56, 60, 61, 79, 60, 55, 64, 69, 70, 80, 73, 81, 58, 72, 62, 73, 87, 60, 55, 87, 87, 68, 64, 71, 51, 60, 63, 70, 53, 76, 52, 65, 92, 69, 66, 64, 68, 62, 61, 63, 78, 54, 55, 80, 58, 72, 67, 51, 72, 57, 57, 44, 61, 44, 51, 78, 76, 73, 61, 66, 94, 46, 49, 60, 75, 70, 56, 57, 84, 64, 57, 59, 65, 97, 66, 52, 51, 92, 81, 98, 38, 75, 57, 49, 86, 60, 59, 51, 77, 66, 63, 75, 77, 56, 54, 56, 47, 80, 52, 66, 65, 61, 74, 101, 51, 49, 64, 65, 54, 51, 63, 72, 63, 71, 62, 58, 46, 93, 74, 68, 70, 65, 59, 66, 73, 64, 51, 51, 79, 49, 49, 66, 72, 78, 41, 66, 57, 65, 64, 46, 55, 56, 64, 85, 107, 62, 57, 55, 82, 64, 75, 65, 52, 72, 54, 63, 58, 69, 87, 66, 63, 61, 68, 78, 61, 65, 103, 60, 66, 72, 65, 81, 68, 58, 81, 69, 112, 70, 67, 71, 75, 86, 49, 71, 61, 66, 58, 58, 75, 62, 71, 62, 69, 61, 75, 64, 53, 59, 57, 66, 60, 63, 66, 64, 99, 67, 57, 78, 79, 61, 122, 54, 61, 59, 67, 82, 55, 51, 66, 69, 85, 58, 54, 65, 87, 68, 71, 57, 55, 59, 71, 70, 59, 67, 75, 65, 61, 127, 72, 63, 45, 61, 83, 65, 60, 64, 77, 62, 74, 61, 60, 52, 65, 72, 56, 66, 58, 61, 69, 81, 60, 71, 68, 65, 65, 57, 62, 74, 96, 76, 63, 80, 67, 43, 63, 49, 47, 58, 63, 63, 46, 59, 55, 70, 62, 115, 63, 57, 68, 79, 50, 86, 73, 59, 66, 49, 65, 62, 76, 99, 142, 71, 75, 54, 63, 79, 64, 64, 62, 92, 58, 64, 51, 65, 77, 49, 71, 66, 56, 55, 75, 65, 85, 59, 56, 58, 72, 68, 51, 64, 67, 65, 62, 52, 53, 62, 65, 57, 58, 55, 60, 50, 51, 79, 65, 59, 54, 69, 54, 64, 57, 60, 57, 61, 54, 52, 67, 63, 60, 91, 77, 64, 67, 58, 70, 53, 72, 68, 57, 57, 61, 59, 58, 56, 64, 45, 69, 60, 61, 67, 69, 61, 58, 75, 72, 61, 72, 65, 80, 62, 64, 64, 73, 83, 67, 66, 62, 54, 71, 66, 90, 77, 55, 70, 64, 63, 72, 61, 63, 61, 78, 62, 53, 58, 62, 63, 61, 63, 60, 57, 58, 55, 64, 56, 58, 56, 67, 68, 58, 54, 55, 68, 67, 63, 62, 69, 79, 70, 74, 51, 75, 69, 59, 58, 48, 65, 67, 76, 91, 92, 62, 71, 44, 66, 60, 127, 53, 54, 61, 54, 57, 58, 57, 68, 61, 64, 60, 69, 60, 71, 68, 59, 59, 67, 43, 77, 69, 91, 67, 66, 56, 104, 61, 44, 64, 63, 56, 52, 61, 71, 60, 52, 76, 59, 66, 55, 67, 64, 69, 62, 73, 67, 48, 57, 67, 61, 102, 63, 58, 61, 72, 63, 58, 61, 108, 69, 66, 57, 54, 80, 64, 65, 57, 71, 49, 78, 67, 58, 59, 58, 62, 57, 63, 69, 67, 88, 60, 51, 67, 48, 52, 57, 59, 90, 66, 69, 67, 64, 56, 55, 71, 80, 67, 59, 72, 55, 56, 59, 89, 63, 80, 65, 71, 66, 65, 59, 69, 63, 50, 66, 67, 67, 58, 58, 57, 68, 69, 68, 62, 77, 62, 58, 59, 65, 53, 59, 63, 68, 63, 58, 62, 86, 76, 62, 62, 69, 54, 77, 46, 50, 55, 69, 81, 69, 65, 58, 58, 65, 79, 61, 62, 59, 82, 71, 74, 58, 64, 69, 50, 75, 50, 52, 70, 89, 34, 56, 73, 60, 59, 75, 72, 67, 49, 88, 69, 57, 64, 70, 57, 62, 57, 82, 56, 58, 75, 106, 65, 67, 62, 62, 66, 62, 68, 52, 75, 59, 62, 62, 58, 63, 49, 44, 58, 102, 64, 54, 61, 67, 64, 52, 51, 74, 84, 84, 54, 60, 71, 59, 79, 61, 69, 58, 86, 64, 73, 60, 54, 80, 56, 61, 93, 73, 73, 59, 58, 61, 64, 54, 94, 58, 67, 64, 65, 82, 52, 62, 59, 61, 59, 58, 49, 67, 66, 75, 37, 48, 74, 68, 121, 66, 63, 58, 59, 67, 48, 73, 78, 63, 61, 68, 46, 59, 55, 77, 58, 59, 71, 59, 61, 59, 55, 48, 57, 54, 73, 72, 67, 63, 59, 58, 69, 60, 61, 93, 59, 94, 46, 57, 52, 88, 67, 61, 62, 72, 81, 81, 61, 64, 54, 63, 46, 58, 88, 54, 50, 49, 71, 58, 74, 103, 73, 58, 53, 59, 98, 52, 59, 60, 60, 60, 64, 60, 61, 52, 66, 54, 71, 60, 111, 70, 79, 101, 57, 66, 79, 59, 54, 62, 53, 53, 64, 52, 62, 68, 63, 67, 53, 60, 75, 68, 97, 50, 79, 58, 55, 83, 52, 78, 74, 63, 79, 60, 65, 67, 66, 65, 68, 66, 59, 81, 62, 66, 71, 56, 72, 67, 60, 58, 88, 71, 65, 75, 68, 63, 65, 55, 68, 64, 71, 50, 66, 70, 65, 57, 60, 52, 77, 76, 59, 65, 66, 58, 77, 47, 69, 64, 63, 78, 52, 50, 58, 63, 64, 65, 65, 81, 46, 93, 54, 57, 61, 62, 53, 58, 60, 77, 52, 59, 63, 39, 44, 61, 70, 78, 67, 57, 66, 73, 59, 50, 75, 61, 61, 62, 51, 52, 103, 63, 62, 56, 66, 72, 71, 64, 48, 49, 82, 58, 62, 66, 60, 61, 63, 69, 55, 76, 68, 63, 53, 62, 67, 55, 54, 115, 71, 49, 67, 62, 66, 63, 50, 52, 63, 54, 69, 57, 66, 65, 72, 66, 47, 61, 55, 70, 67, 64, 57, 112, 59, 62, 63, 49, 58, 57, 79, 83, 54, 90, 70, 62, 78, 65, 69, 64, 58, 61, 59, 69, 74, 70, 57, 65, 63, 77, 52, 52, 53, 81, 62, 65, 70, 79, 53, 55, 62, 62, 88, 57, 54, 69, 66, 50, 50, 67, 69, 52, 62, 85, 61, 74, 61, 71, 81, 59, 73, 81, 65, 59, 56, 59, 57, 69, 61, 58, 57, 70, 67, 68, 69, 65, 68, 56, 65, 49, 71, 65, 116, 68, 83, 67, 81, 87, 44, 72, 49, 44, 52, 79, 48, 62, 62, 53, 74, 73, 70, 75, 67, 49, 40, 57, 53, 58, 78, 59, 71, 67, 54, 83, 88, 59, 68, 68, 62, 55, 96, 51, 63, 65, 79, 42, 69, 91, 96, 68, 64, 56, 72, 50, 56, 44, 66, 50, 81, 66, 49, 43, 57, 67, 66, 56, 60, 68, 102, 56, 63, 65, 59, 50, 51, 56, 83, 63, 58, 89, 67, 61, 59, 65, 81, 51, 52, 66, 64, 34, 56, 51, 70, 50, 87, 115, 53, 82, 46, 58, 66, 65, 70, 85, 65, 61, 49, 76, 57, 60, 74, 73, 67, 63, 65, 60, 60, 76, 60, 65, 75, 71, 70, 64, 68, 61, 68, 86, 47, 79, 66, 73, 56, 64, 96, 60, 78, 64, 66, 60, 53, 71, 57, 56, 75, 69, 59, 77, 68, 83, 44, 85, 73, 55, 48, 53, 75, 47, 76, 60, 73, 70, 71, 56, 60, 65, 56, 86, 66, 60, 67, 57, 59, 68, 86, 102, 75, 64, 42, 58, 71, 68, 53, 65, 59, 67, 74, 61, 54, 69, 57, 62, 59, 72, 61, 56, 76, 46, 77, 69, 55, 70, 72, 87, 59, 94, 80, 57, 48, 98, 64, 95, 103, 52, 71, 70, 76, 102, 63, 64, 65, 51, 71, 43, 64, 100, 85, 53, 45, 58, 46, 54, 64, 46, 54, 49, 55, 67, 73, 69, 57, 75, 94, 85, 71, 74, 48, 78, 76, 63, 76, 90, 70, 63, 66, 66, 68, 105, 49, 103, 53, 63, 63, 80, 65, 53, 53, 57, 67, 68, 56, 82, 59, 74, 57, 48, 45, 52, 53, 79, 49, 53, 55, 66, 66, 74, 60, 78, 76, 67, 55, 88, 53, 46, 61, 62, 115, 54, 81, 45, 65, 52, 65, 60, 63, 63, 72, 62, 84, 63, 74, 58, 72, 68, 61, 84, 51, 57, 69, 58, 57, 48, 62, 61, 66, 57, 75, 60, 88, 53, 43, 54, 49, 56, 51, 50, 59, 50, 47, 102, 75, 76, 75, 57, 47, 63, 74, 61, 78, 64, 56, 60, 64, 72, 68, 59, 61, 59, 55, 57, 42, 35, 66, 67, 44, 109, 58, 58, 55, 52, 81, 74, 71, 95, 65, 71, 62, 72, 59, 61, 75, 53, 65, 49, 62, 59, 56, 46, 111, 50, 56, 70, 47, 90, 57, 78, 77, 56, 91, 77, 60, 54, 56, 63, 105, 70, 57, 87, 50, 82, 52, 78, 60, 77, 63, 49, 56, 76, 65, 50, 75, 63, 54, 56, 41, 42, 45, 53, 50, 55, 79, 60, 68, 69, 47, 57, 91, 56, 85, 72, 57, 50, 58, 99, 67, 51, 44, 77, 69, 53, 53, 66, 61, 55, 84, 80, 73, 85, 55, 41, 77, 40, 75, 45, 87, 49, 51, 54, 60, 54, 68, 73, 67, 68, 63, 60, 137, 91, 69, 66, 89, 69, 62, 52, 71, 43, 68, 62, 61, 55, 87, 69, 63, 63, 59, 104, 66, 63, 67, 65, 128, 89, 70, 58, 70, 35, 73, 65, 65, 47, 76, 64, 50, 64, 70, 57, 64, 58, 60, 63, 61, 67, 71, 96, 57, 95, 60, 79, 84, 61, 56, 72, 53, 57, 89, 62, 84, 60, 60, 74, 67, 94, 64, 57, 65, 74, 141, 98, 97, 62, 56, 62, 52, 42, 71, 52, 85, 80, 50, 55, 66, 52, 47, 48, 64, 82, 56, 64, 77, 50, 49, 59, 60, 93, 102, 62, 51, 58, 51, 94, 90, 57, 51, 79, 36, 71, 69, 59, 59, 65, 94, 52, 53, 39, 51, 65, 43, 55, 66, 66, 50, 47, 53, 62, 57, 59, 54, 133, 84, 56, 42, 62, 78, 81, 54, 58, 66, 69, 59, 53, 71, 73, 76, 56, 66, 50, 74, 76, 86, 68, 71, 79, 51, 56, 77, 84, 70, 49, 74, 57, 76, 52, 67, 66, 68, 60, 71, 45, 47, 68, 97, 73, 87, 66, 99, 97, 54, 68, 53, 71, 76, 63, 63, 97, 82, 84, 101, 64, 74, 84, 76, 66, 70, 65, 47, 49, 57, 76, 54, 56, 71, 74, 114, 65, 55, 63, 66, 63, 60, 95, 65, 63, 64, 60, 59, 54, 53, 97, 79, 92, 66, 81, 83, 72, 59, 56, 72, 73, 65, 46, 75, 71, 57, 83, 82, 78, 65, 49, 74, 53, 74, 71, 64, 88, 54, 79, 76, 57, 63, 77, 54, 56, 44, 68, 51, 62, 75, 86, 57, 64, 65, 71, 53, 50, 58, 50, 67, 75, 54, 122, 62, 68, 77, 44, 65, 60, 68, 64, 79, 65, 69, 54, 62, 61, 76, 63, 97, 71, 90, 68, 65, 66, 74, 92, 58, 54, 61, 60, 58, 49, 62, 62, 64, 53, 59, 50, 60, 51, 71, 69, 60, 34, 56, 54, 81, 77, 61, 61, 48, 108, 59, 80, 70, 91, 61, 55, 81, 70, 91, 49, 50, 54, 73, 77, 48, 49, 85, 34, 74, 84, 55, 82, 49, 106, 82, 62, 60, 75, 85, 52, 65, 65, 53, 47, 101, 57, 89, 57, 60, 80, 79, 63, 63, 65, 83, 97, 69, 65, 61, 53, 87, 61, 92, 73, 88, 63, 56, 57, 137, 60, 69, 61, 62, 50, 60, 84, 59, 50, 92, 52, 71, 43, 79, 78, 56, 79, 124, 73, 59, 50, 79, 75, 66, 48, 101, 60, 90, 65, 65, 74, 66, 58, 60, 63, 64, 56, 61, 67, 85, 85, 63, 58, 58, 87, 66, 53, 58, 52, 68, 57, 80, 50, 64, 58, 52, 64, 60, 93, 52, 65, 59, 75, 78, 59, 84, 70, 49, 66, 68, 79, 67, 92, 59, 50, 90, 80, 52, 63, 70, 67, 55, 56, 59, 77, 50, 59, 94, 67, 59, 62, 58, 82, 58, 73, 53, 73, 54, 53, 72, 74, 58, 75, 62, 63, 57, 64, 57, 73, 42, 81, 69, 66, 47, 56, 71, 55, 78, 62, 68, 77, 60, 46, 71, 74, 72, 67, 85, 53, 76, 57, 64, 61, 69, 70, 66, 69, 80, 58, 74, 62, 72, 76, 68, 68, 62, 58, 52, 54, 60, 52, 61, 65, 75, 84, 81, 58, 62, 65, 81, 65, 67, 97, 77, 67, 61, 85, 64, 72, 106, 65, 65, 59, 52, 53, 56, 43, 52, 48, 65, 39, 78, 70, 51, 55, 64, 62, 61, 58, 67, 76, 55, 49, 58, 58, 58, 67, 65, 54, 63, 66, 55, 54, 92, 49, 56, 61, 65, 68, 72, 69, 76, 73, 72, 72, 74, 84, 44, 54, 71, 81, 51, 53, 70, 75, 88, 71, 47, 63, 112, 79, 41, 67, 68, 108, 75, 44, 58, 93, 70, 90, 70, 77, 58, 61, 58, 66, 58, 55, 58, 56, 66, 50, 49, 41, 63, 99, 112, 53, 92, 49, 57, 53, 63, 45, 62, 77, 72, 48, 56, 55, 65, 30, 75, 89, 68, 52, 56, 54, 66, 52, 53, 55, 63, 70, 82, 51, 64, 62, 72, 90, 49, 55, 75, 90, 34, 38, 54, 67, 47, 55, 60, 37, 63, 49, 102, 59, 44, 92, 67, 49, 76, 42, 121, 65, 58, 71, 50, 51, 52, 73, 75, 68, 58, 45, 63, 49, 107, 61, 42, 72, 83, 66, 64, 77, 61, 73, 44, 49, 73, 75, 56, 66, 72, 66, 73, 61, 74, 79, 74, 138, 118, 67, 91, 64, 68, 53, 79, 67, 69, 79, 62, 55, 75, 43, 73, 67, 120, 86, 43, 113, 87, 65, 52, 77, 76, 59, 64, 54, 54, 68, 55, 52, 59, 76, 63, 57, 59, 101, 73, 55, 80, 69, 53, 55, 51, 77, 87, 118, 71, 59, 54, 55, 53, 77, 45, 71, 41, 49, 92, 50, 51, 49, 62, 54, 63, 49, 50, 43, 62, 103, 114, 61, 49, 55, 58, 77, 69, 57, 56, 86, 64, 64, 77, 47, 61, 42, 75, 56, 60, 99, 53, 88, 68, 56, 107, 64, 38, 82, 79, 66, 59, 84, 74, 54, 58, 70, 60, 101, 109, 67, 89, 85, 53, 68, 59, 50, 55, 49, 70, 64, 66, 67, 73, 70, 60, 68, 66, 55, 83, 59, 63, 59, 65, 60, 54, 74, 55, 50, 68, 47, 49, 72, 58, 60, 72, 72, 74, 50, 75, 47, 62, 59, 56, 61, 76, 104, 74, 50, 80, 44, 37, 58, 74, 67, 57, 59, 56, 78, 124, 68, 62, 76, 70, 62, 112, 71, 41, 67, 52, 61, 42, 64, 71, 68, 61, 74, 47, 70, 85, 87, 66, 61, 52, 63, 66, 63, 92, 65, 78, 63, 65, 82, 66, 80, 51, 55, 66, 43, 57, 53, 85, 52, 71, 59, 61, 75, 57, 50, 55, 72, 63, 51, 59, 87, 103, 54, 51, 44, 54, 70, 74, 89, 61, 44, 46, 51, 52, 97, 57, 59, 57, 102, 76, 59, 104, 98, 54, 49, 91, 80, 57, 55, 63, 39, 54, 68, 49, 83, 62, 35, 68, 77, 85, 55, 66, 60, 86, 60, 48, 56, 57, 57, 48, 76, 62, 51, 48, 69, 55, 83, 81, 74, 52, 57, 68, 46, 87, 58, 64, 54, 103, 60, 73, 68, 59, 62, 50, 59, 61, 53, 53, 72, 85, 39, 47, 77, 67, 81, 53, 78, 74, 79, 62, 75, 69, 75, 125, 62, 77, 68, 54, 72, 65, 66, 87, 81, 69, 64, 106, 73, 66, 78, 74, 67, 77, 73, 74, 69, 88, 56, 60, 65, 50, 42, 72, 82, 59, 84, 78, 64, 47, 51, 66, 60, 56, 71, 69, 53, 53, 51, 55, 94, 55, 94, 62, 57, 75, 53, 92, 57, 52, 66, 89, 56, 73, 85, 72, 62, 72, 61, 64, 44, 66, 61, 76, 72, 60, 71, 74, 70, 76, 141, 64, 38, 54, 76, 71, 67, 74, 86, 89, 59, 60, 59, 52, 66, 79, 65, 55, 73, 64, 72, 57, 69, 95, 57, 58, 71, 57, 69, 87, 89, 83, 60, 103, 60, 66, 68, 60, 54, 54, 70, 71, 60, 67, 69, 55, 68, 67, 91, 50, 74, 48, 42, 78, 48, 56, 102, 60, 74, 75, 56, 74, 56, 91, 66, 52, 62, 42, 64, 72, 41, 64, 87, 82, 69, 72, 57, 68, 55, 69, 50, 72, 66, 60, 68, 56, 53, 47, 53, 83, 68, 72, 66, 88, 83, 79, 62, 65, 64, 84, 64, 74, 69, 52, 57, 73, 79, 76, 63, 61, 56, 70, 70, 92, 49, 69, 39, 106, 52, 67, 64, 40, 76, 72, 60, 58, 40, 64, 65, 56, 47, 74, 67, 83, 76, 135, 87, 69, 56, 57, 55, 46, 65, 73, 75, 65, 100, 74, 74, 67, 47, 62, 61, 54, 55, 76, 59, 69, 90, 44, 59, 83, 50, 63, 67, 73, 67, 109, 55, 61, 63, 65, 75, 59, 64, 66, 53, 49, 72, 78, 82, 66, 68, 64, 128, 121, 59, 49, 114, 55, 78, 97, 61, 70, 92, 55, 60, 39, 79, 61, 80, 64, 64, 95, 65, 63, 68, 87, 70, 105, 42, 50, 50, 71, 50, 56, 43, 63, 77, 88, 62, 81, 71, 40, 64, 63, 69, 61, 68, 53, 89, 52, 52, 72, 62, 78, 58, 67, 44, 83, 60, 81, 52, 70, 61, 72, 63, 88, 44, 66, 61, 54, 40, 93, 72, 62, 45, 56, 67, 66, 72, 71, 62, 56, 59, 69, 90, 89, 76, 61, 57, 83, 60, 58, 71, 77, 68, 65, 77, 72, 63, 109, 53, 49, 30, 68, 81, 55, 67, 43, 56, 59, 58, 55, 72, 47, 60, 53, 62, 104, 65, 49, 81, 39, 70, 49, 45, 72, 54, 79, 75, 40, 40, 77, 64, 60, 71, 90, 74, 50, 60, 66, 57, 83, 60, 49, 55, 57, 70, 68, 57, 95, 56, 71, 50, 115, 75, 59, 63, 81, 114, 76, 52, 98, 94, 70, 83, 48, 51, 78, 78, 60, 83, 93, 54, 83, 61, 55, 79, 61, 40, 45, 60, 54, 51, 58, 52, 70, 57, 67, 64, 58, 65, 61, 71, 59, 50, 78, 75, 72, 60, 45, 40, 53, 68, 56, 77, 61, 71, 58, 45, 70, 54, 52, 39, 55, 81, 65, 63, 59, 92, 63, 81, 63, 46, 53, 73, 71, 45, 77, 96, 66, 77, 59, 83, 71, 66, 56, 51, 109, 60, 55, 59, 64, 77, 71, 67, 54, 49, 81, 56, 59, 60, 56, 78, 65, 58, 62, 50, 64, 47, 60, 50, 61, 54, 47, 57, 65, 60, 60, 64, 81, 58, 58, 57, 65, 65, 69, 75, 91, 92, 59, 66, 90, 83, 65, 46, 73, 61, 71, 72, 39, 62, 51, 72, 52, 56, 65, 52, 49, 50, 68, 109, 50, 82, 67, 83, 68, 99, 62, 60, 61, 70, 105, 84, 100, 57, 83, 40, 67, 69, 82, 64, 67, 76, 48, 65, 52, 73, 62, 107, 69, 75, 66, 94, 88, 60, 91, 85, 43, 88, 80, 56, 40, 56, 52, 62, 53, 74, 56, 67, 73, 59, 71, 83, 62, 63, 47, 67, 83, 103, 124, 65, 67, 95, 79, 83, 75, 96, 70, 81, 76, 82, 64, 71, 57, 62, 79, 53, 47, 60, 83, 89, 53, 75, 58, 60, 67, 54, 73, 53, 67, 58, 57, 70, 56, 69, 65, 87, 57, 99, 54, 89, 40, 48, 60, 90, 94, 72, 37, 74, 71, 70, 77, 59, 71, 73, 92, 75, 76, 102, 72, 40, 47, 87, 51, 61, 65, 63, 58, 51, 60, 78, 67, 72, 57, 48, 77, 55, 52, 88, 83, 62, 70, 76, 76, 38, 88, 53, 82, 114, 51, 66, 80, 73, 73, 48, 35, 95, 84, 43, 66, 65, 60, 78, 67, 60, 40, 73, 65, 57, 77, 57, 74, 77, 60, 66, 87, 77, 56, 119, 78, 67, 73, 60, 93, 81, 51, 60, 62, 68, 60, 61, 82, 56, 48, 61, 56, 67, 83, 83, 55, 59, 127, 73, 64, 83, 59, 73, 93, 76, 71, 62, 69, 55, 57, 51, 58, 70, 61, 70, 69, 69, 50, 63, 75, 61, 77, 71, 62, 61, 72, 57, 63, 70, 67, 60, 78, 54, 55, 82, 55, 61, 57, 64, 80, 71, 58, 60, 78, 66, 39, 124, 58, 54, 55, 58, 59, 57, 103, 62, 55, 44, 59, 48, 55, 85, 64, 64, 85, 64, 54, 74, 55, 64, 82, 56, 86, 41, 62, 69, 64, 64, 60, 56, 58, 53, 85, 76, 64, 65, 63, 82, 64, 66, 63, 66, 59, 71, 97, 57, 81, 86, 59, 63, 56, 57, 54, 48, 94, 88, 76, 91, 57, 67, 71, 69, 52, 58, 85, 50, 54, 57, 62, 56, 61, 51, 61, 66, 77, 78, 75, 44, 60, 56, 43, 55, 62, 65, 84, 57, 56, 79, 77, 41, 53, 50, 70, 78, 72, 54, 79, 66, 53, 84, 63, 71, 86, 60, 53, 57, 84, 74, 50, 88, 76, 53, 76, 47, 70, 96, 63, 83, 44, 77, 50, 62, 79, 95, 84, 83, 67, 48, 55, 78, 86, 74, 72, 62, 52, 44, 53, 64, 80, 103, 60, 55, 84, 50, 55, 63, 81, 73, 108, 42, 60, 74, 66, 67, 56, 64, 84, 59, 76, 62, 51, 46, 57, 66, 57, 42, 63, 98, 83, 56, 48, 53, 51, 55, 72, 51, 62, 68, 70, 58, 60, 58, 71, 70, 64, 49, 68, 70, 71, 54, 72, 38, 59, 79, 31, 74, 48, 72, 62, 39, 56, 84, 64, 94, 85, 93, 58, 81, 69, 54, 45, 64, 51, 92, 47, 59, 77, 87, 71, 72, 62, 91, 91, 62, 64, 76, 25, 84, 119, 96, 61, 60, 76, 75, 61, 58, 54, 68, 53, 63, 66, 46, 64, 46, 64, 44, 75, 45, 52, 37, 81, 70, 50, 68, 109, 48, 62, 48, 69, 85, 67, 48, 47, 47, 60, 59, 61, 68, 68, 46, 65, 57, 77, 36, 82, 48, 55, 78, 70, 76, 57, 46, 50, 61, 71, 62, 70, 69, 92, 90, 51, 58, 65, 59, 106, 98, 71, 61, 66, 46, 42, 49, 55, 64, 64, 73, 69, 55, 102, 90, 69, 61, 59, 45, 45, 79, 128, 64, 65, 44, 77, 54, 64, 69, 77, 52, 91, 51, 72, 87, 60, 94, 75, 87, 74, 51, 62, 46, 76, 81, 89, 62, 51, 94, 52, 67, 67, 53, 78, 72, 66, 54, 50, 103, 65, 61, 79, 61, 58, 65, 37, 71, 58, 71, 35, 63, 74, 84, 73, 34, 68, 69, 87, 56, 54, 66, 55, 65, 68, 58, 63, 66, 82, 60, 48, 71, 51, 57, 80, 60, 64, 59, 84, 86, 66, 48, 78, 35, 89, 41, 70, 69, 68, 42, 43, 96, 92, 74, 65, 86, 70, 53, 67, 87, 95, 65, 50, 56, 74, 53, 80, 74, 53, 106, 67, 64, 55, 61, 57, 61, 57, 74, 43, 51, 72, 101, 77, 80, 71, 57, 61, 67, 48, 66, 67, 68, 96, 53, 74, 67, 91, 61, 58, 38, 79, 49, 70, 68, 54, 45, 57, 86, 52, 46, 83, 49, 66, 46, 71, 58, 60, 62, 57, 67, 56, 82, 74, 70, 49, 69, 60, 46, 57, 55, 51, 48, 67, 59, 59, 95, 59, 41, 93, 73, 92, 59, 78, 52, 72, 68, 109, 69, 102, 94, 69, 73, 82, 91, 59, 62, 79, 78, 60, 63, 51, 72, 71, 75, 71, 87, 83, 65, 64, 60, 57, 70, 68, 66, 69, 90, 56, 69, 53, 30, 59, 44, 55, 67, 91, 68, 62, 89, 122, 68, 58, 85, 73, 77, 55, 73, 55, 75, 78, 51, 64, 99, 34, 67, 73, 60, 53, 46, 64, 59, 60, 72, 62, 83, 51, 34, 61, 112, 61, 63, 71, 57, 64, 92, 59, 51, 67, 52, 80, 61, 56, 77, 58, 116, 50, 70, 64, 56, 42, 68, 65, 62, 49, 62, 56, 50, 69, 90, 97, 110, 67, 79, 75, 120, 76, 65, 71, 62, 78, 64, 64, 70, 72, 61, 52, 56, 37, 78, 69, 84, 88, 61, 57, 71, 77, 70, 63, 66, 61, 29, 46, 82, 77, 78, 53, 58, 76, 70, 59, 66, 81, 65, 52, 63, 68, 51, 53, 48, 48, 54, 60, 96, 99, 64, 55, 76, 45, 44, 45, 61, 74, 64, 46, 65, 86, 93, 60, 40, 57, 80, 56, 54, 88, 56, 73, 88, 37, 56, 70, 67, 93, 86, 87, 45, 82, 60, 56, 75, 70, 52, 44, 60, 52, 62, 68, 68, 75, 98, 70, 60, 68, 66, 55, 119, 127, 49, 73, 65, 57, 53, 41, 83, 60, 79, 72, 74, 50, 81, 37, 39, 51, 93, 76, 46, 76, 72, 91, 57, 72, 88, 98, 55, 96, 53, 55, 60, 68, 57, 55, 33, 58, 65, 46, 72, 80, 67, 80, 63, 92, 41, 64, 66, 73, 51, 53, 61, 50, 85, 90, 64, 27, 53, 51, 76, 74, 53, 100, 65, 56, 57, 61, 59, 80, 89, 60, 52, 56, 69, 38, 83, 75, 59, 105, 70, 53, 78, 64, 73, 59, 59, 59, 45, 75, 67, 72, 60, 41, 51, 66, 51, 77, 58, 81, 45, 61, 63, 71, 70, 52, 64, 46, 65, 67, 67, 53, 65, 38, 68, 80, 61, 67, 132, 58, 53, 64, 66, 62, 71, 119, 72, 89, 56, 70, 55, 70, 62, 52, 60, 66, 43, 55, 57, 58, 74, 85, 49, 57, 64, 70, 67, 52, 65, 64, 56, 70, 78, 73, 79, 56, 49, 67, 104, 80, 75, 67, 63, 55, 58, 68, 65, 68, 70, 66, 47, 74, 57, 67, 69, 73, 61, 48, 48, 52, 61, 64, 71, 67, 63, 75, 80, 58, 100, 57, 62, 51, 49, 69, 71, 69, 63, 57, 70, 71, 52, 63, 98, 85, 74, 88, 63, 49, 73, 82, 79, 50, 51, 66, 65, 75, 72, 64, 83, 74, 55, 40, 64, 62, 58, 57, 74, 89, 57, 67, 50, 59, 55, 65, 59, 63, 58, 72, 60, 52, 57, 96, 82, 80, 80, 68, 66, 65, 73, 52, 64, 68, 48, 60, 61, 62, 63, 77, 48, 78, 84, 53, 52, 57, 62, 50, 45, 52, 58, 57, 64, 81, 65, 53, 63, 65, 57, 58, 60, 68, 58, 62, 56, 64, 58, 66, 63, 67, 70, 57, 65, 63, 92, 62, 68, 90, 65, 59, 64, 82, 57, 99, 47, 96, 58, 72, 64, 65, 73, 59, 72, 73, 57, 64, 65, 60, 60, 70, 54, 67, 60, 56, 97, 62, 57, 90, 57, 69, 58, 60, 59, 81, 64, 55, 47, 75, 56, 68, 93, 67, 53, 64, 87, 79, 50, 75, 69, 72, 58, 39, 80, 56, 49, 80, 84, 72, 54, 73, 90, 44, 67, 66, 66, 91, 70, 60, 54, 68, 67, 78, 76, 72, 53, 50, 92, 60, 55, 90, 51, 66, 67, 72, 60, 69, 64, 66, 61, 76, 76, 59, 59, 70, 58, 54, 57, 67, 86, 59, 61, 67, 54, 64, 70, 63, 77, 67, 49, 61, 69, 60, 66, 74, 65, 78, 78, 53, 119, 65, 70, 69, 57, 54, 70, 56, 67, 60, 54, 72, 64, 62, 58, 67, 78, 71, 72, 59, 68, 55, 52, 49, 54, 62, 58, 71, 88, 62, 64, 57, 53, 69, 71, 53, 68, 49, 79, 86, 40, 40, 59, 50, 60, 87, 63, 49, 46, 65, 69, 64, 88, 98, 45, 84, 86, 66, 62, 51, 73, 55, 83, 55, 46, 68, 66, 55, 54, 77, 71, 58, 63, 67, 116, 73, 55, 64, 52, 61, 61, 66, 66, 61, 60, 82, 62, 63, 42, 62, 90, 67, 47, 59, 56, 78, 65, 78, 62, 60, 77, 56, 58, 57, 90, 62, 57, 62, 50, 59, 56, 76, 81, 62, 93, 67, 53, 67, 60, 51, 62, 76, 72, 76, 65, 73, 96, 82, 71, 61, 80, 92, 55, 74, 74, 64, 66, 61, 75, 73, 82, 84, 59, 72, 55, 63, 74, 57, 51, 64, 67, 64, 104, 72, 84, 71, 64, 69, 50, 57, 65, 61, 64, 66, 63, 63, 61, 60, 62, 69, 55, 55, 65, 63, 68, 67, 56, 83, 76, 64, 62, 61, 75, 103, 65, 55, 96, 61, 54, 76, 66, 57, 92, 70, 62, 47, 51, 107, 53, 73, 60, 62, 59, 64, 60, 72, 78, 69, 67, 52, 58, 62, 65, 129, 66, 91, 84, 54, 65, 61, 93, 79, 69, 68, 80, 65, 68, 49, 55, 71, 66, 58, 60, 59, 55, 63, 58, 64, 85, 76, 77, 61, 65, 63, 52, 67, 70, 62, 116, 88, 63, 47, 61, 47, 65, 67, 74, 36, 70, 75, 53, 71, 99, 63, 67, 47, 53, 44, 48, 52, 46, 37, 52, 54, 55, 68, 61, 47, 53, 54, 73, 68, 64, 65, 82, 97, 68, 78, 45, 62, 107, 93, 108, 72, 77, 79, 57, 59, 54, 82, 47, 48, 53, 59, 53, 57, 54, 75, 55, 80, 82, 62, 71, 62, 97, 70, 116, 79, 58, 82, 93, 67, 76, 87, 61, 74, 50, 69, 70, 64, 66, 71, 123, 63, 76, 61, 47, 55, 64, 68, 69, 17, 66, 93, 73, 60, 81, 57, 66, 56, 70, 85, 59, 59, 65, 66, 64, 63, 55, 68, 50, 54, 70, 52, 91, 56, 48, 58, 72, 62, 117, 58, 65, 74, 68, 66, 60, 63, 53, 118, 73, 56, 90, 62, 63, 65, 86, 57, 67, 74, 55, 63, 72, 51, 73, 58, 64, 65, 65, 62, 40, 72, 63, 56, 61, 65, 73, 52, 85, 50, 67, 67, 49, 59, 52, 76, 55, 63, 60, 68, 51, 74, 77, 44, 56, 73, 52, 67, 47, 72, 62, 60, 65, 63, 79, 83, 89, 65, 66, 52, 70, 60, 59, 61, 45, 56, 83, 58, 62, 43, 64, 71, 65, 69, 68, 77, 66, 94, 69, 49, 67, 88, 73, 68, 84, 74, 57, 65, 56, 63, 67, 66, 67, 61, 60, 74, 124, 91, 62, 58, 68, 61, 80, 58, 76, 66, 46, 71, 54, 49, 94, 59, 52, 114, 63, 76, 61, 66, 62, 53, 67, 63, 72, 62, 62, 45, 81, 66, 55, 76, 75, 48, 53, 71, 87, 60, 59, 73, 68, 41, 70, 66, 75, 65, 73, 60, 60, 73, 60, 60, 55, 55, 88, 56, 66, 69, 56, 65, 63, 45, 89, 67, 72, 74, 70, 58, 66, 55, 91, 64, 60, 46, 57, 63, 51, 52, 58, 64, 71, 66, 69, 79, 89, 59, 61, 58, 57, 65, 64, 74, 51, 52, 81, 60, 58, 64, 64, 42, 117, 59, 52, 57, 72, 72, 68, 56, 71, 49, 86, 65, 57, 79, 71, 69, 59, 56, 49, 65, 61, 65, 66, 62, 79, 62, 60, 58, 65, 62, 58, 61, 57, 52, 58, 70, 71, 51, 53, 69, 50, 71, 75, 75, 70, 79, 67, 74, 55, 69, 79, 75, 49, 68, 64, 85, 77, 51, 47, 61, 65, 61, 80, 71, 100, 60, 63, 76, 61, 60, 64, 72, 44, 66, 74, 53, 65, 51, 66, 63, 71, 69, 67, 65, 73, 62, 73, 62, 56, 48, 80, 63, 68, 73, 67, 68, 59, 61, 58, 65, 64, 72, 55, 65, 68, 63, 83, 87, 56, 57, 64, 57, 61, 54, 74, 66, 64, 55, 53, 63, 66, 74, 79, 76, 65, 61, 70, 63, 76, 72, 63, 118, 55, 52, 64, 78, 53, 57, 62, 79, 61, 76, 55, 81, 53, 58, 63, 92, 100, 61, 51, 48, 63, 64, 66, 70, 50, 51, 94, 86, 61, 69, 47, 66, 77, 57, 72, 50, 54, 46, 41, 60, 65, 46, 75, 65, 69, 68, 62, 83, 64, 80, 69, 62, 69, 64, 63, 75, 86, 53, 70, 66, 65, 51, 74, 93, 54, 56, 110, 56, 83, 85, 75, 82, 48, 53, 59, 57, 71, 75, 58, 81, 55, 71, 61, 75, 93, 50, 56, 60, 75, 97, 47, 68, 81, 65, 45, 67, 45, 57, 61, 55, 77, 40, 58, 68, 59, 80, 68, 59, 62, 41, 65, 49, 51, 47, 46, 63, 77, 53, 55, 73, 67, 56, 50, 68, 45, 76, 64, 70, 41, 45, 68, 52, 39, 70, 58, 66, 51, 73, 62, 88, 53, 61, 36, 63, 77, 74, 74, 61, 66, 65, 64, 65, 64, 74, 61, 58, 52, 57, 80, 62, 50, 89, 69, 65, 80, 94, 141, 75, 89, 62, 67, 53, 59, 48, 63, 48, 48, 56, 68, 54, 65, 52, 77, 63, 52, 97, 91, 73, 68, 71, 54, 69, 63, 51, 68, 67, 69, 76, 99, 44, 71, 112, 126, 68, 111, 53, 65, 62, 51, 50, 58, 47, 54, 73, 76, 62, 57, 82, 55, 74, 61, 55, 56, 96, 54, 54, 52, 41, 103, 84, 88, 65, 78, 52, 47, 76, 74, 41, 43, 59, 62, 56, 59, 77, 63, 114, 71, 48, 55, 65, 86, 36, 76, 51, 78, 60, 107, 52, 50, 68, 55, 98, 50, 66, 72, 90, 109, 103, 52, 98, 55, 75, 67, 55, 71, 69, 86, 87, 71, 82, 42, 71, 74, 67, 103, 60, 51, 84, 52, 67, 42, 58, 59, 67, 80, 93, 75, 110, 52, 65, 60, 80, 68, 78, 54, 87, 44, 74, 71, 53, 49, 69, 47, 61, 76, 59, 84, 69, 55, 81, 64, 78, 58, 56, 59, 60, 95, 84, 55, 64, 73, 68, 60, 45, 75, 80, 43, 44, 68, 54, 73, 89, 72, 56, 45, 49, 55, 76, 61, 50, 68, 96, 53, 115, 50, 71, 48, 48, 68, 61, 56, 61, 39, 88, 55, 73, 112, 53, 77, 53, 76, 106, 77, 53, 92, 79, 100, 75, 63, 57, 60, 47, 56, 72, 38, 71, 62, 60, 64, 69, 79, 65, 49, 66, 75, 60, 87, 69, 54, 39, 55, 39, 59, 56, 57, 47, 66, 63, 90, 63, 66, 79, 76, 75, 86, 56, 47, 51, 83, 50, 92, 57, 63, 60, 45, 72, 52, 46, 74, 60, 72, 69, 97, 75, 53, 75, 74, 59, 65, 49, 80, 73, 74, 57, 68, 51, 61, 71, 65, 54, 49, 86, 68, 90, 64, 85, 62, 79, 56, 67, 94, 63, 101, 57, 63, 48, 54, 86, 56, 63, 63, 72, 114, 85, 67, 64, 72, 61, 78, 78, 52, 87, 108, 121, 56, 64, 70, 67, 50, 62, 90, 51, 51, 58, 111, 66, 50, 78, 62, 71, 38, 48, 97, 84, 88, 75, 54, 75, 62, 52, 63, 56, 56, 56, 79, 73, 73, 57, 63, 89, 70, 64, 73, 62, 46, 43, 61, 54, 66, 85, 82, 71, 64, 56, 86, 68, 66, 69, 52, 41, 74, 32, 33, 49, 68, 60, 63, 80, 58, 56, 80, 67, 83, 62, 53, 61, 51, 59, 60, 63, 87, 67, 56, 63, 64, 61, 54, 61, 67, 67, 57, 68, 44, 51, 70, 65, 39, 55, 56, 76, 90, 62, 76, 59, 52, 66, 35, 54, 84, 54, 74, 66, 62, 60, 59, 96, 63, 70, 44, 74, 68, 89, 82, 65, 80, 79, 41, 39, 61, 55, 54, 86, 61, 56, 67, 58, 64, 59, 74, 79, 50, 45, 55, 78, 61, 73, 88, 85, 105, 62, 64, 53, 88, 78, 65, 86, 61, 61, 93, 57, 48, 50, 69, 53, 72, 114, 63, 55, 60, 55, 50, 97, 60, 64, 49, 65, 54, 50, 35, 51, 49, 74, 88, 46, 75, 48, 91, 67, 53, 42, 55, 59, 35, 52, 55, 86, 65, 65, 70, 65, 84, 58, 56, 65, 79, 50, 68, 65, 88, 57, 84, 76, 66, 79, 100, 61, 50, 70, 58, 89, 64, 73, 82, 61, 60, 74, 68, 67, 77, 67, 47, 50, 72, 63, 72, 92, 67, 72, 50, 76, 97, 74, 79, 73, 56, 58, 56, 46, 55, 83, 54, 57, 59, 68, 78, 62, 49, 71, 58, 65, 79, 61, 71, 53, 77, 69, 57, 62, 86, 61, 53, 60, 75, 75, 68, 73, 49, 60, 70, 59, 64, 76, 75, 71, 58, 85, 63, 60, 65, 96, 82, 71, 85, 61, 53, 42, 57, 88, 45, 54, 81, 56, 59, 75, 64, 59, 53, 57, 95, 72, 76, 81, 55, 71, 69, 37, 71, 68, 43, 54, 67, 46, 53, 44, 75, 61, 59, 48, 61, 51, 117, 84, 87, 60, 61, 73, 80, 53, 51, 69, 67, 68, 59, 102, 62, 55, 68, 83, 58, 46, 58, 68, 75, 44, 98, 56, 68, 83, 72, 49, 72, 56, 71, 110, 56, 50, 100, 49, 74, 73, 47, 74, 67, 80, 48, 57, 69, 92, 60, 54, 71, 69, 69, 55, 54, 46, 81, 70, 62, 76, 63, 85, 50, 54, 74, 91, 67, 61, 46, 91, 78, 56, 39, 41, 91, 88, 77, 64, 40, 101, 54, 76, 59, 50, 52, 71, 76, 40, 71, 59, 110, 72, 65, 75, 69, 77, 166, 63, 49, 56, 43, 59, 60, 79, 50, 58, 71, 57, 59, 68, 89, 89, 61, 50, 65, 65, 72, 57, 53, 59, 73, 60, 90, 64, 85, 52, 72, 67, 50, 71, 97, 47, 53, 64, 61, 50, 53, 107, 47, 76, 102, 96, 56, 63, 69, 50, 70, 57, 73, 54, 65, 69, 51, 61, 86, 45, 58, 62, 71, 53, 77, 58, 91, 78, 64, 44, 63, 70, 34, 62, 54, 69, 57, 51, 54, 71, 58, 50, 85, 58, 57, 47, 71, 62, 68, 50, 83, 64, 76, 55, 27, 57, 80, 65, 74, 69, 56, 68, 80, 80, 63, 66, 70, 66, 70, 64, 82, 55, 68, 84, 66, 82, 66, 78, 88, 66, 58, 78, 70, 60, 93, 41, 70, 57, 73, 61, 61, 75, 67, 78, 60, 72, 89, 60, 72, 55, 65, 82, 61, 88, 83, 67, 69, 91, 67, 45, 76, 66, 57, 85, 63, 56, 100, 66, 71, 49, 66, 41, 75, 52, 56, 65, 48, 69, 65, 43, 51, 69, 61, 99, 76, 63, 82, 67, 86, 84, 83, 59, 70, 84, 64, 57, 60, 42, 48, 57, 60, 63, 77, 63, 65, 62, 71, 78, 61, 93, 81, 71, 57, 71, 75, 110, 54, 152, 82, 72, 61, 85, 79, 85, 53, 60, 61, 70, 75, 42, 76, 89, 58, 52, 74, 63, 84, 77, 63, 67, 76, 56, 70, 59, 76, 64, 44, 101, 60, 72, 77, 74, 52, 62, 87, 66, 62, 77, 106, 67, 76, 54, 49, 65, 49, 81, 80, 53, 61, 58, 75, 48, 80, 79, 52, 56, 67, 47, 50, 58, 88, 62, 75, 55, 56, 81, 53, 83, 67, 60, 58, 51, 60, 66, 63, 86, 53, 58, 56, 48, 70, 66, 53, 50, 81, 41, 64, 44, 43, 89, 90, 51, 66, 71, 54, 56, 74, 53, 49, 84, 63, 83, 78, 83, 54, 46, 77, 73, 63, 55, 64, 55, 68, 69, 77, 60, 74, 69, 58, 65, 92, 55, 75, 64, 84, 77, 68, 57, 41, 66, 53, 62, 53, 55, 62, 66, 56, 65, 65, 58, 71, 63, 76, 79, 81, 69, 84, 75, 81, 59, 60, 51, 62, 69, 57, 59, 54, 61, 56, 53, 43, 58, 63, 57, 75, 55, 75, 57, 113, 61, 53, 71, 68, 56, 69, 79, 65, 61, 51, 69, 81, 61, 69, 69, 65, 78, 58, 91, 44, 68, 60, 76, 101, 86, 58, 60, 56, 57, 64, 69, 78, 60, 83, 66, 64, 63, 74, 72, 62, 77, 65, 79, 62, 65, 82, 55, 68, 51, 58, 57, 71, 80, 68, 50, 54, 67, 83, 60, 83, 62, 57, 49, 69, 56, 76, 101, 89, 57, 70, 76, 52, 106, 63, 65, 50, 60, 69, 62, 68, 40, 49, 42, 54, 51, 57, 56, 59, 69, 64, 61, 53, 79, 63, 56, 80, 54, 53, 63, 67, 58, 64, 68, 58, 72, 74, 72, 49, 64, 45, 65, 61, 66, 82, 61, 85, 57, 62, 75, 55, 61, 77, 65, 60, 62, 152, 58, 87, 86, 65, 71, 72, 84, 100, 71, 83, 56, 98, 61, 59, 72, 75, 60, 76, 71, 74, 64, 64, 68, 68, 71, 77, 70, 66, 60, 48, 64, 91, 67, 69, 55, 73, 70, 51, 83, 59, 75, 55, 88, 76, 66, 125, 86, 46, 57, 70, 71, 63, 75, 70, 62, 68, 69, 59, 67, 67, 62, 70, 59, 93, 62, 68, 74, 70, 52, 56, 56, 67, 60, 77, 75, 79, 61, 85, 60, 96, 63, 63, 76, 47, 62, 65, 74, 81, 55, 58, 69, 63, 64, 51, 52, 61, 61, 75, 54, 62, 93, 58, 52, 78, 68, 62, 53, 56, 53, 56, 57, 67, 84, 67, 77, 90, 64, 61, 34, 67, 74, 72, 63, 91, 51, 71, 55, 61, 56, 81, 61, 68, 63, 31, 61, 72, 54, 38, 59, 53, 41, 75, 64, 64, 75, 58, 69, 53, 64, 55, 64, 58, 48, 58, 68, 58, 74, 75, 87, 71, 58, 65, 61, 74, 67, 70, 74, 51, 78, 52, 50, 69, 59, 94, 75, 64, 44, 55, 57, 78, 67, 77, 52, 74, 40, 61, 60, 70, 59, 69, 77, 55, 99, 69, 58, 55, 68, 88, 59, 75, 62, 61, 53, 45, 81, 54, 51, 50, 70, 54, 70, 85, 68, 61, 60, 63, 59, 64, 70, 75, 68, 42, 57, 78, 65, 60, 68, 71, 46, 55, 62, 87, 72, 52, 91, 56, 56, 58, 49, 71, 65, 70, 71, 53, 64, 83, 74, 59, 94, 72, 74, 69, 69, 61, 52, 52, 52, 65, 64, 73, 72, 53, 76, 66, 96, 100, 53, 66, 53, 62, 68, 59, 57, 70, 59, 99, 74, 57, 48, 89, 57, 45, 60, 57, 89, 69, 77, 50, 62, 75, 62, 71, 63, 62, 67, 50, 64, 59, 46, 73, 64, 86, 58, 76, 53, 66, 57, 113, 56, 81, 62, 71, 81, 56, 67, 93, 75, 56, 56, 68, 54, 50, 60, 59, 71, 71, 74, 64, 64, 65, 54, 41, 63, 61, 68, 52, 78, 62, 59, 63, 48, 83, 76, 58, 83, 51, 44, 73, 59, 54, 62, 58, 88, 56, 74, 54, 85, 71, 49, 87, 57, 57, 85, 54, 76, 59, 56, 66, 83, 81, 60, 51, 74, 61, 61, 88, 58, 51, 64, 55, 64, 55, 68, 77, 60, 82, 75, 69, 54, 51, 51, 60, 64, 71, 50, 74, 67, 64, 63, 53, 48, 82, 85, 65, 83, 61, 57, 91, 65, 60, 52, 74, 50, 64, 61, 51, 60, 63, 61, 52, 64, 70, 70, 65, 59, 64, 119, 42, 68, 63, 68, 75, 62, 71, 57, 93, 83, 59, 77, 51, 67, 72, 66, 64, 53, 76, 85, 58, 63, 53, 61, 48, 75, 56, 65, 80, 72, 51, 67, 81, 117, 70, 90, 60, 53, 74, 67, 61, 65, 87, 48, 80, 65, 59, 45, 51, 49, 59, 63, 66, 51, 76, 85, 53, 57, 74, 55, 53, 66, 56, 93, 65, 54, 73, 51, 86, 67, 72, 89, 62, 69, 48, 63, 64, 70, 79, 65, 58, 69, 66, 62, 59, 60, 66, 79, 119, 73, 45, 76, 74, 70, 72, 57, 63, 69, 72, 58, 39, 54, 60, 57, 49, 63, 53, 77, 74, 76, 78, 41, 82, 63, 68, 77, 50, 76, 68, 81, 59, 76, 65, 74, 72, 56, 89, 45, 68, 52, 71, 53, 60, 62, 59, 58, 58, 58, 60, 47, 69, 61, 93, 56, 61, 79, 58, 60, 64, 67, 86, 74, 70, 66, 67, 72, 107, 84, 74, 48, 39, 73, 65, 66, 71, 59, 59, 53, 55, 49, 74, 46, 66, 76, 76, 62, 70, 49, 86, 61, 41, 49, 54, 84, 73, 68, 59, 77, 58, 61, 68, 56, 62, 83, 82, 58, 70, 72, 70, 57, 66, 74, 68, 65, 65, 49, 45, 59, 85, 57, 52, 64, 77, 66, 62, 88, 73, 86, 78, 53, 71, 62, 72, 62, 73, 62, 36, 63, 73, 59, 63, 57, 63, 62, 78, 62, 61, 50, 52, 68, 59, 82, 66, 78, 75, 76, 59, 98, 57, 56, 106, 90, 81, 71, 67, 87, 52, 74, 62, 51, 87, 68, 63, 55, 52, 69, 56, 61, 62, 73, 56, 56, 51, 36, 80, 68, 63, 77, 69, 82, 54, 59, 50, 59, 81, 64, 83, 63, 65, 71, 70, 61, 72, 71, 68, 70, 66, 75, 61, 65, 55, 78, 53, 55, 50, 61, 56, 56, 81, 49, 64, 72, 68, 52, 98, 68, 54, 58, 62, 71, 52, 136, 47, 52, 64, 74, 69, 90, 54, 105, 81, 67, 60, 56, 62, 70, 57, 54, 45, 32, 58, 73, 80, 52, 82, 56, 78, 113, 50, 56, 65, 47, 109, 62, 60, 64, 89, 48, 54, 59, 66, 62, 68, 70, 54, 45, 75, 75, 73, 75, 65, 56, 85, 57, 64, 50, 68, 65, 57, 66, 60, 62, 72, 62, 68, 51, 61, 58, 81, 73, 67, 58, 54, 71, 75, 60, 72, 72, 63, 61, 72, 111, 52, 60, 62, 55, 89, 55, 73, 40, 58, 71, 46, 67, 58, 83, 76, 99, 61, 59, 72, 49, 54, 56, 53, 118, 50, 83, 72, 65, 65, 70, 60, 51, 65, 56, 53, 54, 69, 54, 50, 63, 63, 63, 80, 54, 55, 66, 82, 81, 122, 56, 69, 54, 57, 68, 60, 81, 60, 53, 80, 74, 73, 52, 61, 82, 71, 67, 57, 61, 67, 55, 57, 70, 104, 80, 78, 75, 70, 57, 57, 67, 74, 55, 57, 53, 51, 79, 48, 47, 56, 65, 57, 61, 69, 70, 67, 76, 88, 55, 56, 55, 60, 69, 57, 45, 55, 77, 110, 63, 60, 56, 70, 59, 69, 51, 61, 73, 46, 74, 48, 58, 91, 67, 56, 66, 61, 74, 78, 68, 57, 62, 61, 78, 60, 52, 56, 60, 57, 72, 55, 63, 62, 59, 55, 64, 71, 69, 111, 52, 110, 53, 66, 50, 53, 81, 71, 76, 72, 116, 60, 69, 44, 61, 50, 79, 72, 66, 57, 53, 53, 76, 90, 76, 62, 65, 89, 66, 47, 68, 58, 53, 67, 67, 73, 61, 72, 69, 73, 111, 80, 66, 64, 59, 72, 68, 61, 94, 64, 83, 66, 65, 56, 53, 68, 62, 69, 54, 76, 53, 64, 82, 67, 60, 71, 74, 58, 76, 71, 69, 65, 69, 51, 62, 68, 58, 73, 70, 53, 60, 74, 69, 70, 66, 65, 60, 47, 56, 58, 75, 48, 66, 54, 65, 62, 75, 64, 59, 69, 58, 64, 77, 116, 69, 69, 65, 74, 53, 69, 78, 72, 53, 104, 131, 87, 68, 65, 76, 81, 68, 55, 45, 57, 56, 68, 67, 78, 67, 50, 86, 49, 53, 70, 70, 62, 66, 67, 56, 58, 58, 58, 48, 51, 69, 72, 71, 52, 59, 58, 48, 65, 110, 45, 65, 55, 82, 74, 65, 76, 62, 68, 73, 57, 49, 61, 73, 49, 91, 62, 56, 77, 60, 62, 57, 66, 95, 67, 53, 57, 53, 74, 54, 57, 69, 67, 71, 63, 69, 58, 57, 68, 69, 63, 73, 54, 69, 61, 58, 54, 78, 71, 61, 56, 69, 74, 56, 66, 42, 74, 57, 79, 47, 67, 82, 55, 63, 63, 63, 63, 118, 45, 50, 39, 60, 64, 72, 62, 76, 68, 78, 77, 86, 77, 63, 60, 53, 63, 52, 66, 52, 61, 59, 56, 61, 82, 57, 60, 61, 51, 42, 62, 58, 55, 62, 66, 51, 50, 77, 67, 69, 53, 61, 74, 46, 67, 87, 56, 65, 66, 114, 55, 59, 73, 88, 72, 73, 70, 61, 69, 68, 62, 74, 47, 73, 67, 56, 62, 67, 66, 66, 39, 66, 62, 54, 47, 71, 54, 61, 60, 87, 59, 66, 57, 53, 54, 59, 67, 73, 63, 61, 81, 73, 68, 62, 83, 68, 56, 90, 76, 55, 64, 71, 77, 54, 68, 60, 65, 65, 52, 53, 100, 63, 56, 60, 64, 79, 77, 64, 114, 64, 57, 48, 53, 79, 54, 48, 81, 56, 63, 77, 49, 51, 65, 98, 87, 62, 56, 48, 58, 58, 56, 71, 72, 59, 99, 55, 43, 79, 89, 90, 66, 76, 104, 74, 59, 78, 86, 91, 58, 69, 52, 60, 58, 55, 102, 55, 65, 61, 75, 69, 60, 54, 79, 93, 81, 90, 73, 75, 58, 57, 72, 65, 88, 53, 83, 74, 56, 81, 95, 63, 52, 64, 72, 56, 66, 70, 71, 50, 62, 58, 56, 73, 83, 58, 49, 55, 56, 57, 81, 63, 72, 61, 72, 79, 50, 55, 65, 60, 75, 69, 66, 63, 46, 55, 80, 51, 63, 63, 82, 61, 76, 86, 73, 57, 86, 59, 78, 61, 56, 55, 61, 58, 75, 66, 52, 57, 54, 81, 71, 55, 54, 60, 58, 53, 58, 59, 61, 47, 65, 61, 69, 74, 69, 92, 110, 77, 64, 58, 72, 69, 74, 66, 70, 49, 50, 64, 71, 59, 72, 66, 67, 66, 60, 50, 60, 70, 77, 45, 66, 63, 64, 68, 75, 58, 63, 62, 57, 67, 89, 77, 69, 63, 65, 60, 78, 115, 104, 71, 68, 63, 61, 65, 54, 46, 90, 67, 66, 64, 60, 63, 48, 65, 78, 58, 58, 59, 55, 82, 80, 52, 71, 80, 94, 60, 57, 81, 65, 73, 56, 60, 79, 58, 88, 83, 61, 66, 62, 70, 62, 72, 57, 60, 53, 64, 51, 66, 48, 57, 86, 67, 46, 64, 69, 57, 77, 104, 101, 61, 66, 68, 54, 71, 52, 49, 52, 74, 84, 71, 64, 56, 87, 57, 62, 77, 59, 56, 73, 71, 58, 53, 96, 87, 76, 66, 64, 78, 54, 55, 87, 73, 65, 64, 56, 58, 61, 60, 64, 66, 72, 46, 77, 70, 47, 46, 65, 56, 77, 69, 68, 73, 58, 70, 60, 61, 85, 79, 65, 88, 73, 82, 114, 68, 68, 64, 67, 65, 56, 64, 65, 70, 69, 70, 79, 60, 69, 58, 45, 62, 87, 69, 73, 60, 88, 41, 60, 65, 51, 56, 76, 75, 64, 65, 60, 52, 76, 80, 61, 116, 63, 55, 71, 79, 64, 58, 64, 65, 50, 63, 57, 76, 104, 57, 48, 71, 75, 73, 57, 68, 60, 51, 44, 57, 54, 66, 67, 54, 63, 61, 67, 74, 51, 58, 65, 68, 68, 65, 64, 87, 59, 80, 42, 62, 58, 82, 60, 63, 58, 62, 83, 86, 69, 68, 85, 85, 65, 70, 66, 72, 31, 52, 63, 86, 90, 89, 53, 94, 64, 74, 44, 69, 42, 63, 53, 72, 62, 71, 70, 75, 52, 60, 68, 64, 68, 54, 82, 72, 60, 63, 52, 62, 64, 65, 54, 64, 71, 68, 65, 101, 65, 64, 55, 59, 62, 67, 64, 81, 46, 82, 57, 62, 54, 73, 63, 66, 51, 61, 57, 80, 69, 53, 71, 78, 60, 62, 63, 79, 77, 67, 73, 54, 104, 41, 58, 92, 98, 50, 61, 56, 58, 87, 97, 57, 52, 63, 64, 56, 71, 79, 52, 72, 41, 53, 56, 64, 61, 87, 62, 76, 80, 70, 70, 58, 63, 87, 54, 48, 59, 64, 110, 57, 62, 53, 62, 54, 62, 71, 60, 61, 78, 70, 63, 72, 74, 51, 64, 66, 54, 72, 50, 54, 67, 66, 68, 44, 59, 88, 58, 85, 118, 49, 61, 62, 63, 66, 50, 57, 53, 52, 78, 49, 69, 59, 62, 54, 72, 83, 60, 80, 128, 61, 56, 70, 62, 73, 53, 66, 61, 45, 65, 68, 64, 55, 51, 58, 49, 56, 66, 54, 62, 45, 64, 67, 129, 47, 91, 64, 60, 74, 62, 57, 68, 60, 50, 52, 107, 72, 66, 49, 69, 59, 50, 69, 91, 101, 41, 102, 99, 76, 57, 62, 69, 49, 72, 77, 82, 62, 66, 68, 123, 80, 55, 78, 69, 66, 60, 67, 61, 63, 58, 58, 63, 84, 61, 60, 88, 48, 59, 75, 156, 65, 46, 60, 65, 47, 70, 83, 67, 61, 102, 72, 81, 51, 123, 54, 68, 67, 66, 58, 57, 55, 63, 61, 56, 59, 65, 71, 66, 70, 74, 66, 70, 71, 76, 60, 58, 52, 60, 77, 70, 46, 64, 63, 62, 103, 69, 77, 71, 65, 52, 42, 67, 51, 35, 66, 56, 66, 49, 55, 66, 57, 55, 64, 80, 60, 51, 51, 79, 69, 78, 76, 57, 49, 66, 51, 65, 59, 61, 67, 61, 77, 87, 53, 65, 55, 68, 59, 54, 69, 58, 59, 58, 99, 58, 58, 65, 76, 68, 58, 60, 56, 57, 54, 68, 77, 55, 95, 55, 51, 71, 67, 57, 54, 69, 59, 83, 70, 48, 68, 88, 77, 59, 70, 51, 61, 67, 65, 60, 82, 56, 56, 88, 54, 52, 69, 56, 50, 77, 64, 84, 48, 70, 50, 68, 70, 56, 68, 56, 83, 90, 60, 97, 68, 83, 72, 111, 71, 53, 58, 59, 69, 69, 54, 84, 69, 57, 54, 43, 101, 65, 97, 97, 78, 58, 60, 62, 63, 64, 55, 51, 58, 82, 73, 61, 70, 71, 46, 56, 50, 45, 50, 78, 45, 68, 59, 48, 74, 66, 63, 67, 70, 45, 76, 61, 61, 55, 74, 53, 55, 81, 77, 79, 71, 69, 60, 78, 57, 64, 62, 78, 47, 72, 125, 74, 75, 71, 50, 62, 97, 49, 68, 63, 83, 75, 63, 56, 53, 84, 90, 71, 55, 79, 53, 68, 73, 73, 69, 74, 61, 74, 52, 63, 53, 61, 69, 49, 65, 66, 51, 46, 49, 71, 68, 50, 65, 68, 72, 52, 65, 66, 96, 69, 71, 71, 53, 106, 63, 61, 64, 54, 58, 64, 55, 52, 59, 57, 62, 52, 80, 68, 42, 49, 59, 65, 39, 74, 78, 68, 60, 56, 47, 89, 69, 87, 79, 69, 56, 52, 84, 76, 82, 49, 65, 102, 64, 55, 64, 108, 99, 68, 62, 48, 58, 76, 62, 96, 57, 79, 70, 56, 74, 80, 54, 83, 67, 69, 64, 69, 73, 65, 53, 100, 74, 71, 78, 109, 84, 54, 46, 81, 72, 70, 62, 59, 69, 59, 80, 74, 77, 68, 69, 52, 75, 67, 69, 59, 58, 82, 67, 48, 77, 49, 69, 69, 56, 65, 105, 61, 65, 69, 48, 85, 76, 77, 49, 54, 60, 67, 106, 68, 79, 45, 69, 65, 55, 57, 76, 82, 66, 100, 63, 69, 76, 63, 63, 58, 65, 53, 54, 60, 64, 64, 57, 115, 64, 68, 73, 51, 89, 57, 107, 92, 52, 46, 45, 51, 59, 62, 59, 81, 64, 68, 92, 64, 56, 69, 67, 64, 56, 58, 53, 62, 61, 63, 65, 63, 63, 89, 54, 65, 65, 54, 55, 65, 69, 60, 66, 63, 46, 64, 52, 75, 49, 51, 83, 76, 51, 62, 53, 69, 42, 68, 68, 48, 80, 70, 57, 105, 58, 58, 69, 53, 69, 56, 76, 71, 47, 69, 58, 77, 53, 68, 74, 41, 77, 64, 63, 63, 47, 65, 62, 63, 103, 105, 59, 57, 60, 80, 68, 73, 70, 52, 54, 112, 55, 72, 79, 61, 48, 77, 51, 71, 64, 66, 52, 48, 42, 72, 67, 68, 62, 65, 66, 59, 64, 52, 76, 80, 49, 51, 61, 66, 51, 56, 56, 52, 57, 55, 58, 53, 80, 71, 58, 57, 64, 73, 67, 50, 55, 46, 59, 69, 58, 63, 62, 56, 65, 87, 62, 72, 87, 73, 56, 70, 58, 63, 70, 66, 64, 55, 56, 68, 76, 113, 49, 88, 57, 49, 66, 48, 60, 59, 60, 68, 57, 61, 68, 54, 57, 68, 57, 70, 73, 48, 58, 61, 53, 53, 82, 59, 65, 58, 77, 66, 82, 113, 61, 66, 70, 51, 46, 54, 59, 69, 84, 74, 72, 83, 60, 89, 76, 54, 66, 59, 65, 57, 68, 61, 55, 57, 63, 62, 49, 80, 68, 63, 71, 69, 60, 62, 89, 56, 74, 61, 67, 73, 50, 58, 65, 52, 66, 65, 58, 51, 63, 56, 48, 61, 55, 61, 88, 62, 55, 81, 61, 83, 67, 82, 72, 66, 67, 60, 54, 86, 103, 69, 73, 78, 54, 61, 80, 58, 62, 54, 56, 52, 70, 86, 54, 63, 61, 74, 59, 66, 90, 100, 71, 63, 78, 51, 55, 53, 58, 59, 56, 64, 49, 73, 60, 82, 56, 93, 52, 53, 70, 54, 90, 88, 52, 68, 63, 75, 68, 120, 79, 75, 80, 74, 66, 69, 62, 73, 53, 64, 70, 61, 84, 62, 65, 61, 55, 73, 72, 60, 53, 84, 46, 50, 52, 54, 62, 66, 70, 61, 64, 69, 67, 83, 53, 64, 55, 73, 68, 53, 59, 59, 67, 63, 55, 60, 77, 46, 71, 41, 78, 75, 67, 70, 61, 65, 71, 72, 62, 55, 51, 75, 69, 84, 49, 67, 57, 83, 53, 67, 61, 61, 60, 72, 71, 54, 59, 72, 46, 33, 71, 76, 73, 70, 74, 53, 96, 58, 76, 60, 61, 65, 50, 62, 94, 60, 56, 73, 75, 55, 87, 77, 75, 59, 53, 68, 72, 62, 67, 87, 74, 71, 73, 54, 77, 58, 89, 60, 67, 45, 69, 67, 65, 56, 71, 70, 62, 73, 58, 87, 60, 79, 62, 63, 68, 64, 67, 56, 86, 57, 68, 79, 79, 50, 68, 60, 70, 55, 67, 56, 63, 49, 76, 62, 59, 64, 42, 64, 69, 89, 64, 78, 85, 59, 50, 76, 71, 64, 59, 75, 76, 81, 57, 54, 58, 59, 77, 71, 68, 62, 64, 58, 63, 96, 68, 57, 50, 70, 61, 61, 64, 70, 57, 60, 64, 69, 47, 62, 45, 71, 63, 64, 62, 69, 56, 68, 43, 60, 66, 47, 60, 69, 57, 53, 73, 68, 61, 58, 54, 107, 73, 116, 45, 87, 72, 60, 64, 58, 66, 67, 67, 57, 74, 61, 65, 65, 62, 57, 59, 109, 56, 68, 78, 64, 58, 72, 55, 63, 75, 60, 61, 81, 57, 59, 52, 73, 90, 54, 57, 41, 79, 72, 55, 68, 91, 76, 53, 61, 75, 80, 65, 76, 65, 84, 67, 68, 51, 59, 79, 72, 72, 78, 68, 75, 73, 67, 75, 53, 61, 85, 72, 70, 55, 55, 60, 68, 71, 63, 66, 72, 52, 67, 53, 52, 74, 50, 68, 72, 61, 78, 50, 58, 68, 78, 46, 106, 60, 45, 66, 64, 60, 71, 59, 54, 53, 73, 86, 78, 83, 57, 59, 70, 106, 57, 54, 64, 72, 70, 65, 52, 64, 52, 55, 61, 96, 75, 50, 70, 87, 56, 57, 60, 50, 82, 36, 58, 57, 69, 88, 60, 62, 58, 57, 57, 73, 65, 55, 55, 61, 78, 58, 58, 60, 64, 83, 74, 84, 85, 75, 87, 58, 57, 47, 57, 64, 66, 54, 63, 73, 56, 75, 53, 64, 49, 66, 72, 56, 73, 61, 73, 51, 63, 64, 54, 72, 56, 67, 48, 54, 63, 44, 48, 68, 58, 52, 75, 53, 55, 73, 68, 52, 60, 74, 71, 63, 47, 52, 82, 63, 51, 63, 65, 60, 56, 65, 59, 58, 66, 64, 55, 67, 68, 88, 65, 64, 71, 62, 56, 50, 80, 63, 64, 72, 69, 66, 61, 41, 72, 84, 47, 68, 81, 66, 57, 61, 59, 64, 55, 57, 79, 57, 56, 60, 63, 62, 43, 67, 63, 72, 71, 51, 51, 55, 62, 57, 70, 70, 58, 66, 60, 53, 66, 82, 68, 64, 81, 60, 69, 66, 80, 54, 80, 83, 53, 68, 65, 58, 69, 60, 53, 64, 69, 51, 70, 50, 62, 39, 58, 62, 68, 74, 66, 70, 93, 75, 52, 80, 63, 53, 58, 65, 70, 55, 69, 101, 72, 76, 67, 54, 62, 60, 61, 50, 77, 72, 66, 58, 53, 51, 47, 58, 45, 57, 75, 72, 72, 70, 58, 55, 61, 68, 77, 67, 59, 58, 61, 85, 56, 70, 74, 53, 74, 59, 63, 53, 86, 55, 130, 78, 58, 54, 72, 67, 76, 65, 69, 46, 63, 82, 71, 64, 60, 73, 59, 59, 109, 53, 61, 51, 59, 78, 65, 54, 65, 69, 53, 62, 71, 48, 54, 73, 64, 57, 68, 96, 87, 59, 61, 59, 61, 36, 59, 64, 55, 59, 64, 98, 59, 53, 62, 65, 80, 51, 62, 55, 63, 62, 77, 53, 88, 69, 58, 63, 98, 70, 68, 49, 81, 77, 49, 68, 71, 67, 64, 60, 55, 59, 63, 69, 66, 70, 71, 131, 62, 70, 72, 70, 63, 74, 74, 69, 62, 87, 60, 28, 66, 83, 58, 66, 65, 71, 68, 59, 72, 63, 86, 76, 81, 90, 65, 62, 53, 65, 41, 70, 63, 75, 61, 100, 58, 77, 63, 64, 69, 61, 82, 76, 65, 81, 70, 94, 45, 66, 74, 80, 55, 89, 57, 62, 78, 88, 69, 59, 42, 75, 67, 82, 49, 77, 82, 63, 50, 52, 71, 66, 48, 61, 85, 55, 70, 81, 67, 58, 59, 45, 65, 52, 62, 63, 57, 57, 45, 90, 61, 59, 66, 64, 51, 63, 71, 60, 75, 49, 78, 57, 70, 55, 78, 61, 65, 61, 58, 56, 59, 67, 107, 76, 69, 103, 89, 67, 80, 80, 68, 52, 59, 66, 88, 79, 67, 56, 66, 52, 56, 53, 70, 64, 89, 84, 123, 62, 70, 77, 62, 61, 55, 54, 68, 64, 71, 48, 68, 72, 75, 56, 50, 99, 105, 65, 56, 62, 91, 78, 69, 64, 74, 61, 75, 61, 62, 64, 50, 68, 44, 48, 54, 59, 55, 74, 55, 48, 75, 79, 72, 48, 50, 56, 93, 78, 44, 62, 74, 38, 56, 48, 77, 68, 59, 73, 62, 59, 92, 79, 73, 87, 80, 60, 65, 63, 80, 44, 58, 55, 61, 43, 52, 58, 89, 68, 44, 54, 48, 56, 70, 78, 73, 66, 68, 52, 73, 88, 65, 59, 60, 76, 75, 67, 86, 49, 63, 69, 58, 57, 94, 83, 66, 56, 62, 60, 62, 42, 76, 70, 50, 59, 61, 34, 72, 80, 79, 84, 60, 54, 46, 61, 69, 71, 60, 71, 98, 64, 55, 50, 73, 57, 87, 86, 53, 72, 55, 81, 62, 75, 103, 65, 55, 57, 56, 41, 53, 67, 88, 54, 74, 93, 71, 57, 76, 68, 107, 75, 42, 66, 66, 68, 54, 68, 73, 63, 62, 54, 94, 70, 93, 78, 63, 85, 51, 68, 53, 83, 60, 64, 87, 51, 76, 75, 45, 74, 76, 61, 82, 55, 32, 67, 81, 52, 39, 67, 70, 74, 74, 59, 59, 91, 60, 62, 63, 67, 37, 71, 73, 52, 53, 70, 78, 75, 62, 69, 79, 54, 51, 63, 67, 59, 73, 75, 84, 89, 52, 80, 93, 60, 94, 61, 60, 58, 73, 62, 55, 76, 44, 77, 71, 69, 80, 53, 60, 72, 61, 67, 72, 83, 85, 68, 71, 67, 77, 72, 63, 63, 59, 73, 52, 62, 58, 74, 112, 76, 69, 54, 62, 95, 88, 50, 60, 58, 57, 86, 57, 84, 79, 89, 74, 68, 85, 63, 66, 76, 80, 60, 52, 84, 65, 76, 51, 70, 58, 73, 64, 55, 74, 71, 65, 51, 68, 63, 58, 66, 48, 47, 45, 55, 41, 50, 66, 68, 65, 50, 74, 64, 126, 82, 54, 53, 52, 70, 61, 70, 58, 53, 62, 77, 68, 60, 70, 58, 50, 60, 70, 75, 61, 81, 67, 60, 79, 43, 53, 82, 89, 63, 95, 56, 53, 84, 46, 61, 66, 67, 50, 64, 70, 94, 57, 47, 58, 55, 53, 61, 53, 71, 45, 57, 65, 57, 52, 66, 46, 70, 77, 45, 62, 53, 96, 70, 65, 64, 71, 51, 52, 87, 62, 64, 72, 56, 52, 63, 73, 59, 54, 68, 64, 58, 26, 72, 49, 114, 68, 41, 74, 54, 101, 65, 66, 86, 51, 105, 60, 60, 58, 104, 56, 73, 74, 65, 66, 69, 82, 56, 69, 57, 55, 110, 70, 83, 55, 67, 56, 68, 80, 95, 57, 105, 74, 42, 66, 57, 67, 70, 72, 79, 89, 71, 83, 54, 50, 87, 63, 71, 64, 50, 84, 69, 74, 59, 57, 75, 73, 75, 44, 54, 83, 66, 66, 53, 61, 102, 71, 76, 63, 64, 77, 46, 51, 45, 58, 86, 58, 46, 65, 67, 79, 61, 66, 75, 82, 64, 51, 55, 65, 62, 78, 59, 75, 71, 89, 68, 86, 49, 84, 66, 61, 75, 59, 63, 62, 82, 86, 69, 52, 119, 62, 84, 44, 60, 44, 66, 63, 65, 82, 72, 52, 62, 76, 67, 53, 57, 69, 89, 44, 56, 49, 58, 56, 73, 54, 59, 59, 59, 75, 51, 84, 43, 57, 55, 73, 73, 51, 66, 77, 65, 76, 44, 45, 81, 59, 68, 97, 70, 59, 81, 57, 70, 68, 77, 72, 71, 71, 84, 88, 47, 62, 63, 61, 52, 78, 71, 54, 86, 68, 49, 59, 63, 61, 52, 59, 58, 37, 59, 81, 50, 91, 72, 68, 70, 55, 73, 73, 55, 46, 73, 51, 71, 86, 106, 60, 46, 49, 68, 61, 105, 64, 96, 62, 69, 62, 65, 86, 64, 51, 66, 63, 63, 53, 61, 98, 107, 68, 59, 87, 58, 65, 43, 66, 96, 57, 78, 68, 51, 48, 65, 62, 74, 62, 68, 84, 59, 73, 67, 78, 114, 45, 60, 75, 62, 102, 64, 71, 71, 80, 42, 67, 103, 64, 81, 61, 92, 58, 54, 77, 63, 50, 70, 42, 55, 58, 52, 68, 68, 55, 59, 59, 51, 82, 56, 71, 45, 60, 62, 89, 103, 57, 76, 63, 68, 112, 57, 72, 57, 94, 43, 71, 44, 66, 62, 55, 50, 69, 64, 56, 48, 49, 62, 48, 91, 52, 52, 59, 57, 86, 62, 132, 74, 63, 59, 76, 50, 78, 53, 62, 53, 58, 77, 56, 63, 54, 70, 69, 73, 54, 42, 53, 58, 72, 54, 69, 59, 62, 57, 84, 70, 84, 89, 60, 61, 68, 55, 95, 78, 58, 60, 78, 50, 88, 56, 58, 84, 66, 62, 69, 110, 51, 90, 49, 47, 53, 53, 61, 63, 57, 54, 69, 58, 46, 65, 49, 74, 55, 60, 64, 56, 59, 72, 63, 66, 57, 61, 81, 77, 55, 58, 55, 73, 50, 55, 65, 52, 52, 95, 111, 73, 88, 98, 68, 61, 51, 53, 59, 89, 67, 53, 44, 54, 69, 45, 68, 62, 54, 62, 75, 57, 58, 87, 62, 49, 64, 62, 104, 59, 66, 62, 59, 42, 47, 59, 65, 61, 57, 54, 80, 98, 73, 67, 92, 53, 76, 95, 87, 62, 71, 58, 65, 67, 87, 73, 57, 59, 64, 79, 70, 51, 67, 43, 53, 67, 115, 53, 62, 71, 50, 94, 57, 83, 39, 84, 79, 75, 73, 66, 84, 70, 66, 85, 56, 55, 74, 107, 64, 76, 43, 57, 57, 51, 66, 96, 58, 85, 46, 81, 67, 46, 61, 74, 51, 82, 54, 49, 60, 66, 41, 75, 71, 64, 41, 75, 86, 56, 58, 73, 63, 95, 53, 81, 76, 97, 80, 52, 65, 83, 67, 54, 63, 82, 61, 45, 77, 65, 56, 75, 136, 85, 58, 55, 75, 48, 62, 84, 74, 63, 76, 73, 89, 75, 75, 70, 41, 62, 71, 44, 63, 63, 55, 59, 48, 79, 53, 69, 59, 61, 90, 69, 63, 74, 74, 60, 48, 76, 52, 66, 47, 67, 83, 58, 35, 59, 88, 62, 69, 63, 55, 55, 95, 54, 65, 58, 66, 96, 42, 60, 53, 60, 58, 76, 92, 69, 102, 75, 83, 59, 77, 71, 70, 50, 48, 72, 73, 71, 59, 57, 89, 50, 87, 51, 60, 55, 72, 78, 58, 62, 102, 39, 50, 65, 79, 101, 61, 60, 57, 58, 58, 51, 63, 53, 62, 78, 71, 87, 64, 102, 73, 62, 70, 90, 94, 74, 46, 41, 60, 36, 61, 65, 56, 61, 65, 54, 60, 60, 80, 53, 75, 64, 107, 69, 52, 66, 55, 76, 75, 60, 48, 66, 72, 54, 83, 58, 43, 67, 70, 49, 62, 50, 71, 57, 66, 52, 54, 47, 43, 84, 71, 69, 62, 55, 50, 62, 45, 74, 55, 49, 66, 59, 58, 60, 63, 84, 54, 45, 64, 76, 41, 65, 97, 77, 76, 54, 70, 54, 70, 81, 54, 62, 55, 61, 55, 65, 51, 73, 58, 73, 49, 72, 74, 90, 85, 75, 51, 85, 59, 92, 63, 104, 50, 67, 71, 80, 71, 64, 61, 85, 68, 41, 64, 116, 62, 49, 55, 69, 69, 73, 60, 59, 60, 58, 135, 90, 78, 79, 79, 60, 66, 94, 64, 57, 74, 74, 69, 77, 75, 99, 70, 76, 57, 58, 77, 80, 61, 57, 71, 93, 61, 68, 68, 73, 51, 65, 67, 61, 98, 90, 59, 61, 64, 58, 42, 53, 65, 72, 57, 67, 71, 66, 56, 69, 77, 58, 34, 59, 77, 69, 78, 77, 52, 57, 87, 57, 79, 84, 82, 63, 57, 73, 114, 92, 45, 69, 63, 53, 57, 104, 65, 93, 53, 67, 66, 65, 62, 68, 48, 70, 54, 74, 66, 44, 76, 57, 68, 80, 70, 62, 75, 64, 49, 64, 64, 67, 59, 84, 54, 62, 58, 215, 90, 73, 71, 72, 55, 57, 45, 67, 97, 88, 68, 77, 69, 102, 65, 68, 50, 57, 68, 64, 74, 75, 59, 64, 72, 47, 89, 60, 81, 53, 63, 62, 66, 58, 54, 65, 85, 71, 75, 53, 91, 61, 58, 67, 66, 63, 51, 64, 59, 71, 69, 68, 54, 67, 82, 69, 91, 71, 62, 51, 71, 64, 76, 55, 67, 67, 59, 43, 42, 62, 78, 70, 47, 54, 63, 56, 55, 74, 56, 54, 67, 59, 47, 70, 54, 47, 60, 53, 54, 69, 70, 79, 71, 69, 61, 71, 79, 84, 100, 73, 58, 62, 82, 54, 85, 59, 69, 75, 66, 86, 66, 65, 63, 55, 47, 51, 73, 68, 51, 80, 56, 66, 92, 88, 63, 67, 64, 81, 65, 57, 78, 57, 111, 57, 70, 73, 78, 57, 68, 63, 49, 54, 70, 51, 56, 83, 77, 76, 80, 66, 46, 71, 80, 63, 69, 65, 55, 72, 59, 59, 81, 68, 90, 60, 70, 68, 74, 61, 58, 106, 80, 73, 70, 46, 60, 64, 61, 64, 66, 58, 43, 43, 71, 80, 72, 80, 65, 61, 52, 71, 52, 82, 76, 87, 64, 61, 73, 88, 76, 56, 63, 77, 71, 60, 52, 78, 97, 79, 45, 63, 48, 60, 63, 55, 62, 47, 83, 64, 64, 54, 79, 74, 65, 59, 59, 80, 80, 85, 61, 87, 85, 51, 62, 53, 78, 60, 85, 64, 60, 61, 67, 72, 52, 87, 58, 75, 86, 67, 58, 43, 80, 56, 69, 46, 104, 73, 48, 55, 63, 46, 67, 77, 76, 79, 62, 74, 79, 94, 56, 69, 41, 84, 51, 75, 56, 76, 67, 63, 69, 55, 67, 63, 83, 60, 68, 47, 49, 52, 65, 75, 68, 70, 92, 71, 61, 63, 83, 43, 59, 48, 74, 64, 72, 51, 54, 62, 97, 57, 53, 62, 79, 68, 70, 73, 47, 66, 86, 57, 71, 52, 81, 70, 91, 58, 54, 71, 78, 58, 42, 49, 68, 61, 61, 66, 67, 91, 51, 60, 92, 65, 94, 78, 61, 54, 53, 47, 85, 60, 93, 88, 87, 63, 67, 58, 55, 87, 51, 54, 71, 78, 53, 70, 97, 51, 58, 46, 76, 62, 64, 106, 47, 53, 80, 62, 60, 58, 71, 61, 48, 48, 51, 47, 72, 85, 80, 56, 61, 94, 63, 55, 59, 36, 58, 79, 49, 60, 62, 44, 59, 73, 53, 67, 53, 93, 73, 52, 62, 88, 89, 80, 79, 73, 52, 68, 63, 70, 80, 68, 70, 66, 67, 45, 53, 64, 54, 63, 52, 59, 72, 68, 58, 118, 56, 64, 47, 75, 55, 49, 41, 64, 67, 48, 77, 80, 77, 76, 54, 69, 66, 74, 74, 66, 45, 59, 75, 59, 46, 94, 80, 66, 52, 66, 65, 55, 67, 63, 72, 75, 81, 69, 86, 56, 46, 62, 66, 61, 135, 100, 90, 70, 57, 91, 79, 76, 70, 63, 72, 48, 72, 69, 154, 63, 76, 61, 61, 60, 39, 50, 52, 73, 83, 52, 69, 75, 70, 77, 65, 51, 40, 57, 69, 101, 52, 78, 70, 68, 59, 54, 87, 47, 59, 72, 68, 57, 103, 36, 67, 77, 64, 67, 55, 55, 70, 72, 59, 70, 68, 42, 73, 65, 61, 57, 74, 94, 60, 81, 110, 94, 47, 62, 34, 59, 69, 74, 81, 74, 81, 60, 75, 61, 59, 80, 61, 61, 63, 71, 76, 56, 60, 73, 47, 70, 69, 89, 74, 68, 39, 53, 40, 75, 88, 61, 55, 57, 77, 54, 64, 59, 72, 69, 135, 64, 87, 56, 43, 52, 52, 78, 70, 87, 75, 64, 47, 53, 70, 72, 66, 42, 70, 60, 72, 54, 56, 73, 51, 75, 55, 81, 68, 64, 59, 72, 66, 54, 65, 83, 78, 58, 71, 43, 60, 97, 60, 74, 70, 67, 72, 66, 52, 68, 84, 59, 61, 65, 73, 54, 72, 47, 92, 82, 75, 82, 78, 99, 59, 73, 60, 66, 67, 47, 51, 73, 62, 61, 77, 60, 72, 61, 48, 60, 59, 74, 71, 61, 47, 61, 42, 28, 59, 79, 65, 55, 80, 59, 82, 39, 73, 57, 53, 65, 78, 61, 65, 78, 35, 55, 79, 78, 95, 54, 61, 62, 98, 75, 66, 80, 70, 53, 57, 75, 83, 87, 61, 76, 85, 65, 70, 50, 51, 80, 53, 61, 67, 73, 61, 74, 80, 67, 82, 47, 74, 62, 53, 61, 63, 59, 70, 64, 45, 56, 76, 55, 53, 69, 77, 53, 70, 54, 62, 54, 57, 55, 75, 67, 64, 57, 91, 75, 69, 74, 69, 56, 59, 63, 75, 54, 55, 49, 57, 57, 57, 52, 65, 66, 51, 44, 61, 50, 59, 43, 49, 68, 61, 42, 63, 64, 46, 54, 62, 41, 66, 62, 62, 50, 81, 62, 84, 91, 55, 49, 64, 66, 58, 51, 65, 64, 60, 74, 54, 63, 66, 76, 45, 66, 79, 74, 43, 51, 85, 59, 65, 63, 54, 66, 50, 67, 83, 59, 90, 53, 46, 57, 60, 60, 58, 75, 66, 60, 58, 57, 61, 54, 90, 71, 68, 90, 84, 70, 64, 76, 63, 67, 66, 61, 73, 76, 65, 55, 97, 83, 57, 79, 86, 56, 55, 70, 55, 75, 62, 69, 82, 54, 57, 48, 52, 78, 63, 49, 63, 66, 76, 79, 64, 69, 54, 66, 72, 63, 76, 104, 69, 75, 74, 75, 63, 42, 72, 69, 58, 91, 82, 72, 78, 71, 87, 65, 77, 66, 105, 56, 79, 70, 66, 53, 64, 63, 69, 67, 53, 58, 109, 78, 62, 48, 63, 50, 68, 58, 65, 60, 61, 56, 69, 61, 59, 95, 75, 61, 61, 69, 71, 56, 78, 83, 55, 44, 56, 53, 50, 66, 70, 65, 77, 59, 48, 56, 79, 73, 59, 50, 84, 66, 70, 46, 68, 64, 55, 60, 69, 55, 95, 62, 68, 61, 54, 54, 95, 63, 71, 63, 78, 59, 72, 58, 113, 104, 71, 46, 75, 68, 73, 95, 60, 99, 61, 57, 49, 84, 58, 46, 55, 71, 79, 54, 53, 43, 58, 58, 52, 74, 65, 52, 66, 80, 60, 74, 65, 47, 62, 67, 54, 64, 60, 218, 79, 49, 70, 57, 54, 58, 76, 98, 68, 93, 43, 77, 60, 79, 57, 81, 60, 79, 57, 58, 69, 64, 44, 67, 76, 70, 86, 69, 66, 37, 50, 37, 76, 71, 68, 87, 53, 62, 79, 81, 66, 50, 59, 48, 60, 79, 63, 75, 60, 57, 50, 77, 77, 56, 57, 64, 98, 66, 72, 55, 47, 58, 67, 56, 53, 61, 52, 65, 44, 56, 67, 72, 55, 60, 59, 60, 56, 65, 58, 49, 45, 66, 63, 88, 77, 59, 60, 51, 60, 81, 68, 54, 48, 72, 42, 80, 86, 76, 80, 67, 62, 62, 95, 85, 69, 63, 59, 66, 54, 96, 80, 65, 66, 54, 71, 62, 78, 43, 65, 66, 42, 50, 82, 83, 54, 64, 62, 65, 66, 70, 76, 56, 89, 54, 74, 78, 77, 62, 70, 77, 64, 62, 72, 63, 50, 68, 44, 60, 62, 61, 53, 75, 71, 66, 52, 53, 78, 79, 70, 51, 82, 85, 74, 59, 58, 62, 84, 75, 56, 96, 74, 78, 71, 57, 60, 63, 61, 64, 51, 69, 75, 63, 54, 83, 66, 87, 65, 52, 60, 60, 54, 73, 72, 76, 75, 59, 49, 85, 58, 73, 76, 76, 84, 68, 64, 52, 51, 66, 52, 63, 80, 66, 69, 57, 53, 51, 58, 49, 59, 50, 65, 57, 61, 63, 55, 90, 69, 76, 54, 64, 72, 71, 65, 54, 67, 58, 81, 62, 85, 71, 71, 59, 53, 59, 96, 64, 80, 41, 56, 66, 67, 70, 52, 62, 98, 67, 82, 69, 57, 68, 81, 53, 73, 81, 51, 82, 76, 88, 42, 78, 35, 74, 51, 52, 72, 83, 41, 68, 50, 73, 61, 57, 86, 72, 43, 69, 63, 62, 64, 50, 64, 71, 86, 78, 79, 62, 73, 82, 70, 74, 67, 52, 72, 74, 63, 67, 76, 58, 75, 58, 59, 63, 51, 87, 58, 75, 98, 67, 61, 78, 46, 66, 83, 59, 44, 62, 45, 60, 64, 69, 49, 67, 73, 60, 70, 75, 58, 47, 84, 70, 62, 78, 47, 61, 65, 55, 67, 71, 84, 79, 81, 92, 76, 66, 59, 58, 75, 48, 56, 67, 58, 78, 97, 59, 55, 63, 61, 67, 61, 96, 63, 63, 82, 71, 49, 83, 67, 56, 41, 70, 54, 64, 61, 58, 65, 67, 56, 70, 79, 60, 56, 67, 61, 78, 71, 61, 52, 59, 58, 84, 54, 77, 61, 80, 69, 51, 72, 98, 68, 71, 75, 74, 48, 34, 70, 58, 75, 77, 64, 47, 72, 39, 57, 58, 56, 76, 64, 41, 73, 68, 49, 94, 75, 85, 69, 96, 75, 80, 66, 58, 71, 73, 73, 90, 48, 74, 78, 71, 62, 72, 58, 55, 64, 77, 66, 54, 56, 97, 72, 41, 71, 63, 54, 47, 89, 44, 88, 71, 80, 89, 62, 65, 49, 75, 59, 66, 135, 84, 70, 45, 82, 80, 59, 73, 68, 61, 51, 40, 61, 72, 167, 58, 37, 47, 56, 61, 49, 69, 80, 70, 97, 66, 68, 61, 70, 50, 69, 62, 72, 63, 62, 46, 68, 78, 77, 88, 62, 46, 88, 69, 63, 64, 69, 79, 110, 61, 56, 72, 58, 56, 55, 66, 67, 67, 56, 60, 69, 61, 52, 58, 64, 68, 67, 83, 45, 67, 92, 79, 73, 61, 52, 63, 70, 56, 65, 73, 65, 48, 71, 70, 64, 101, 48, 67, 60, 73, 80, 48, 65, 59, 57, 73, 48, 85, 80, 60, 73, 61, 61, 75, 89, 46, 54, 79, 82, 45, 79, 56, 64, 77, 116, 59, 70, 59, 62, 71, 72, 46, 59, 108, 72, 59, 49, 58, 74, 84, 58, 66, 66, 64, 59, 56, 66, 70, 59, 76, 72, 81, 73, 60, 29, 59, 87, 78, 66, 71, 68, 56, 68, 84, 72, 51, 55, 52, 53, 61, 57, 85, 45, 68, 60, 49, 78, 54, 62, 55, 54, 69, 88, 83, 62, 70, 63, 40, 56, 59, 50, 53, 54, 54, 81, 70, 39, 58, 53, 66, 75, 65, 54, 70, 72, 56, 81, 53, 63, 75, 41, 58, 71, 68, 71, 57, 78, 64, 90, 67, 74, 54, 63, 53, 88, 57, 75, 74, 37, 61, 50, 79, 93, 60, 61, 82, 81, 69, 92, 64, 108, 68, 55, 70, 103, 79, 47, 74, 74, 78, 65, 52, 44, 92, 62, 67, 64, 86, 83, 85, 48, 73, 72, 69, 75, 75, 57, 68, 86, 69, 71, 63, 58, 33, 84, 72, 82, 56, 85, 78, 61, 79, 57, 56, 49, 66, 79, 92, 46, 56, 91, 68, 52, 70, 80, 59, 60, 64, 77, 76, 50, 55, 59, 52, 50, 65, 56, 73, 57, 46, 42, 54, 48, 70, 57, 55, 73, 86, 89, 46, 61, 62, 48, 44, 81, 63, 48, 55, 83, 58, 84, 67, 73, 61, 66, 72, 78, 57, 65, 50, 61, 75, 67, 63, 59, 77, 61, 55, 64, 72, 58, 70, 95, 51, 51, 70, 58, 67, 70, 57, 77, 72, 96, 60, 59, 65, 50, 47, 76, 66, 50, 50, 61, 50, 68, 48, 73, 69, 71, 73, 82, 71, 51, 79, 96, 65, 48, 60, 79, 67, 70, 77, 90, 56, 51, 68, 80, 64, 72, 69, 53, 78, 77, 92, 71, 58, 64, 67, 46, 74, 60, 73, 49, 65, 65, 65, 59, 59, 75, 69, 82, 55, 65, 98, 65, 71, 54, 48, 50, 54, 51, 70, 49, 77, 74, 75, 66, 30, 82, 59, 79, 72, 104, 48, 70, 88, 75, 68, 72, 59, 75, 77, 45, 68, 52, 60, 55, 81, 68, 65, 64, 69, 56, 72, 68, 68, 74, 56, 75, 70, 68, 47, 48, 68, 72, 58, 76, 85, 59, 65, 76, 75, 67, 60, 69, 85, 72, 69, 63, 50, 64, 63, 70, 65, 65, 64, 55, 65, 55, 66, 73, 54, 108, 56, 58, 68, 52, 63, 56, 57, 80, 47, 73, 81, 69, 84, 66, 84, 65, 81, 86, 80, 77, 59, 59, 95, 90, 80, 116, 121, 53, 64, 46, 64, 47, 54, 42, 42, 55, 94, 72, 81, 57, 71, 56, 71, 76, 56, 71, 78, 50, 117, 70, 55, 52, 57, 60, 68, 59, 64, 77, 65, 73, 60, 63, 63, 60, 66, 80, 72, 52, 59, 100, 74, 51, 69, 78, 91, 77, 60, 56, 43, 72, 66, 63, 75, 55, 52, 62, 46, 93, 54, 80, 79, 65, 57, 69, 53, 55, 80, 57, 87, 62, 75, 67, 73, 64, 53, 54, 61, 65, 77, 72, 37, 50, 63, 80, 52, 98, 56, 73, 63, 86, 61, 59, 65, 74, 56, 46, 66, 45, 66, 75, 71, 78, 89, 70, 76, 72, 55, 82, 44, 62, 59, 51, 47, 110, 78, 57, 53, 69, 63, 74, 45, 59, 55, 80, 57, 48, 59, 71, 56, 69, 66, 59, 71, 59, 74, 74, 129, 65, 76, 71, 73, 60, 75, 58, 70, 90, 61, 77, 92, 88, 63, 53, 71, 68, 63, 65, 50, 61, 53, 113, 60, 58, 73, 77, 60, 55, 40, 70, 67, 62, 71, 114, 43, 54, 49, 68, 76, 58, 70, 56, 72, 67, 79, 45, 55, 85, 62, 48, 66, 64, 85, 66, 60, 81, 54, 47, 97, 66, 64, 60, 77, 74, 66, 75, 71, 77, 45, 58, 67, 50, 41, 41, 70, 79, 56, 78, 62, 72, 40, 56, 53, 88, 56, 100, 49, 77, 43, 67, 65, 74, 84, 65, 71, 72, 71, 53, 55, 67, 73, 78, 56, 49, 103, 41, 49, 77, 72, 52, 65, 75, 65, 91, 58, 67, 64, 84, 62, 62, 52, 54, 58, 77, 89, 59, 64, 62, 60, 57, 59, 64, 66, 56, 46, 74, 40, 43, 84, 59, 71, 74, 99, 60, 77, 77, 49, 84, 64, 55, 39, 52, 37, 65, 108, 99, 63, 82, 51, 54, 63, 65, 74, 50, 61, 67, 64, 56, 47, 61, 92, 63, 52, 46, 48, 52, 63, 84, 53, 72, 74, 70, 110, 73, 50, 64, 71, 63, 107, 73, 62, 57, 43, 61, 46, 55, 66, 79, 58, 80, 76, 77, 45, 112, 56, 47, 72, 55, 110, 61, 60, 44, 68, 62, 56, 81, 67, 63, 93, 62, 45, 69, 45, 58, 67, 113, 86, 73, 90, 100, 60, 63, 19, 64, 54, 54, 66, 54, 50, 62, 56, 88, 52, 63, 58, 69, 70, 64, 61, 77, 50, 67, 53, 74, 54, 91, 38, 68, 71, 64, 47, 46, 44, 67, 84, 62, 56, 70, 56, 60, 35, 55, 51, 70, 50, 96, 65, 51, 55, 41, 51, 74, 67, 39, 62, 92, 84, 46, 60, 50, 60, 38, 62, 54, 53, 62, 67, 79, 69, 68, 59, 61, 53, 57, 89, 69, 106, 74, 49, 54, 73, 47, 76, 57, 71, 58, 52, 45, 67, 79, 52, 39, 62, 73, 62, 45, 60, 59, 57, 63, 58, 41, 77, 96, 80, 57, 42, 53, 69, 67, 71, 77, 51, 76, 57, 99, 58, 48, 64, 51, 81, 55, 89, 78, 38, 41, 98, 48, 56, 65, 85, 57, 59, 59, 94, 72, 83, 57, 50, 56, 98, 65, 71, 75, 99, 81, 48, 70, 40, 64, 59, 55, 89, 58, 62, 50, 53, 109, 79, 47, 85, 68, 55, 46, 53, 57, 57, 44, 89, 54, 57, 59, 73, 62, 60, 60, 74, 54, 45, 108, 87, 77, 65, 70, 56, 56, 53, 68, 52, 42, 64, 70, 55, 58, 72, 53, 81, 62, 45, 58, 51, 56, 71, 86, 151, 67, 67, 78, 82, 53, 45, 87, 80, 82, 64, 81, 83, 52, 68, 80, 59, 42, 62, 54, 51, 67, 61, 41, 65, 49, 115, 63, 72, 86, 74, 61, 79, 77, 62, 86, 61, 44, 72, 75, 92, 42, 51, 75, 73, 57, 67, 60, 64, 50, 63, 57, 60, 79, 87, 77, 65, 53, 51, 42, 50, 48, 46, 66, 53, 57, 78, 55, 78, 68, 76, 69, 78, 62, 81, 63, 67, 64, 53, 57, 50, 50, 79, 49, 60, 60, 45, 63, 82, 76, 73, 62, 69, 56, 77, 90, 71, 80, 58, 63, 85, 59, 54, 76, 54, 77, 92, 64, 77, 69, 41, 62, 42, 73, 69, 71, 54, 66, 57, 39, 84, 57, 53, 103, 57, 92, 60, 78, 53, 65, 38, 48, 58, 60, 57, 67, 47, 43, 70, 68, 53, 73, 99, 46, 65, 84, 51, 79, 91, 76, 61, 79, 44, 51, 56, 67, 52, 57, 60, 79, 79, 85, 57, 55, 58, 68, 56, 116, 78, 63, 79, 74, 54, 76, 79, 62, 64, 72, 68, 65, 63, 54, 50, 56, 45, 65, 53, 92, 86, 61, 75, 59, 52, 67, 102, 78, 82, 72, 71, 55, 70, 55, 49, 56, 61, 71, 64, 38, 69, 74, 70, 61, 74, 59, 71, 55, 64, 62, 77, 69, 82, 48, 76, 78, 76, 83, 60, 58, 67, 103, 77, 46, 58, 93, 75, 70, 102, 86, 57, 67, 69, 68, 62, 81, 45, 59, 45, 49, 58, 72, 76, 66, 35, 48, 82, 49, 68, 72, 111, 58, 90, 56, 69, 52, 85, 58, 79, 76, 82, 74, 77, 46, 72, 42, 62, 51, 80, 61, 61, 56, 81, 54, 65, 61, 103, 89, 67, 67, 44, 59, 56, 62, 64, 81, 67, 63, 50, 76, 63, 51, 49, 70, 49, 64, 63, 44, 50, 82, 61, 76, 60, 42, 94, 69, 69, 102, 88, 44, 70, 67, 77, 67, 65, 54, 81, 93, 90, 82, 65, 60, 80, 98, 67, 20, 60, 47, 55, 83, 86, 69, 60, 67, 118, 85, 62, 66, 68, 90, 58, 73, 83, 68, 76, 58, 71, 59, 53, 84, 53, 83, 65, 74, 78, 84, 60, 74, 57, 65, 57, 44, 67, 62, 69, 56, 58, 53, 51, 53, 64, 45, 95, 70, 62, 60, 64, 82, 77, 66, 49, 63, 63, 72, 86, 65, 73, 82, 59, 78, 53, 68, 57, 80, 88, 72, 77, 58, 59, 72, 66, 67, 83, 56, 60, 64, 66, 61, 71, 63, 69, 56, 44, 52, 62, 58, 64, 72, 70, 57, 84, 53, 59, 50, 85, 62, 72, 55, 57, 73, 98, 81, 76, 80, 45, 70, 57, 64, 62, 59, 67, 60, 80, 54, 56, 57, 39, 54, 83, 55, 79, 61, 51, 75, 63, 64, 55, 54, 86, 72, 71, 75, 67, 58, 54, 76, 50, 65, 70, 50, 92, 75, 95, 53, 52, 62, 63, 65, 39, 57, 63, 53, 67, 62, 59, 73, 62, 38, 59, 67, 62, 63, 78, 63, 55, 88, 65, 69, 66, 63, 54, 49, 100, 60, 55, 48, 60, 57, 77, 53, 53, 60, 87, 58, 55, 67, 101, 66, 56, 65, 73, 60, 60, 86, 69, 57, 71, 79, 55, 72, 57, 65, 55, 84, 77, 74, 69, 39, 75, 55, 69, 58, 106, 84, 53, 84, 70, 102, 55, 58, 69, 81, 61, 66, 66, 47, 61, 65, 62, 60, 59, 55, 76, 78, 82, 51, 65, 55, 89, 73, 69, 70, 91, 58, 50, 60, 63, 58, 70, 56, 63, 42, 40, 61, 77, 73, 74, 79, 63, 73, 68, 72, 68, 109, 67, 52, 48, 83, 98, 63, 62, 52, 79, 63, 60, 67, 74, 62, 69, 42, 57, 55, 66, 63, 55, 62, 106, 64, 66, 61, 55, 81, 59, 40, 71, 49, 60, 56, 52, 75, 70, 72, 58, 61, 76, 85, 65, 57, 58, 45, 49, 60, 74, 87, 55, 74, 74, 44, 35, 63, 42, 120, 95, 84, 78, 57, 77, 68, 60, 64, 51, 74, 51, 58, 54, 105, 61, 89, 136, 46, 78, 60, 70, 73, 56, 55, 71, 53, 58, 51, 46, 74, 56, 70, 62, 72, 73, 51, 57, 46, 62, 54, 60, 69, 68, 91, 96, 65, 63, 79, 75, 55, 63, 59, 110, 62, 72, 43, 63, 86, 55, 70, 84, 69, 62, 91, 56, 63, 83, 72, 65, 63, 57, 67, 48, 68, 72, 84, 49, 71, 99, 77, 43, 68, 61, 58, 62, 61, 63, 66, 62, 101, 62, 87, 74, 62, 82, 68, 95, 60, 51, 73, 63, 62, 59, 75, 68, 66, 74, 47, 54, 53, 72, 71, 70, 99, 75, 70, 65, 61, 69, 61, 54, 75, 56, 67, 62, 61, 63, 67, 79, 70, 60, 62, 56, 53, 67, 72, 71, 77, 90, 78, 85, 57, 64, 51, 74, 72, 88, 55, 66, 63, 51, 71, 57, 76, 83, 60, 70, 62, 51, 61, 76, 48, 53, 68, 62, 63, 56, 67, 87, 70, 66, 69, 65, 60, 46, 36, 64, 59, 66, 56, 56, 71, 54, 71, 48, 55, 44, 60, 56, 74, 64, 48, 75, 69, 78, 72, 75, 60, 84, 64, 68, 47, 74, 89, 70, 60, 66, 84, 88, 70, 57, 53, 74, 53, 77, 67, 65, 41, 59, 31, 55, 92, 68, 66, 65, 73, 67, 68, 55, 38, 71, 85, 66, 78, 56, 56, 57, 72, 67, 73, 70, 65, 55, 59, 59, 52, 60, 67, 57, 69, 58, 50, 72, 67, 51, 67, 63, 59, 52, 66, 52, 78, 69, 53, 115, 97, 69, 63, 47, 96, 44, 69, 71, 89, 74, 74, 68, 82, 68, 73, 67, 67, 66, 75, 71, 60, 59, 71, 83, 79, 50, 72, 67, 73, 97, 74, 60, 53, 91, 72, 68, 102, 63, 81, 63, 58, 58, 55, 63, 84, 53, 57, 79, 55, 80, 48, 58, 53, 59, 79, 60, 75, 50, 58, 59, 68, 59, 49, 56, 94, 56, 73, 72, 75, 60, 75, 80, 74, 51, 58, 59, 39, 51, 62, 64, 68, 66, 58, 73, 56, 73, 74, 68, 87, 90, 89, 77, 62, 81, 64, 85, 63, 77, 73, 60, 75, 64, 86, 47, 90, 83, 88, 68, 73, 50, 67, 99, 60, 62, 46, 67, 56, 91, 63, 44, 48, 47, 59, 48, 79, 99, 67, 59, 78, 60, 72, 46, 71, 87, 75, 85, 46, 86, 49, 61, 64, 83, 50, 66, 95, 70, 57, 81, 65, 61, 60, 66, 71, 86, 66, 67, 58, 68, 65, 116, 69, 64, 66, 78, 67, 104, 58, 57, 36, 66, 57, 58, 43, 82, 75, 57, 69, 47, 78, 50, 57, 52, 67, 50, 58, 59, 70, 74, 66, 79, 68, 44, 78, 51, 54, 78, 53, 57, 63, 74, 62, 72, 54, 70, 76, 57, 96, 84, 47, 66, 63, 76, 70, 68, 64, 60, 44, 58, 75, 49, 60, 55, 61, 72, 53, 61, 59, 67, 65, 67, 63, 53, 69, 67, 55, 54, 81, 59, 44, 69, 57, 71, 49, 70, 61, 54, 65, 60, 46, 54, 71, 42, 76, 70, 61, 67, 65, 53, 73, 82, 66, 54, 88, 80, 56, 68, 65, 57, 77, 43, 53, 75, 55, 87, 66, 76, 46, 42, 61, 72, 68, 64, 72, 64, 71, 59, 68, 62, 62, 50, 53, 99, 48, 55, 55, 50, 47, 54, 57, 45, 83, 92, 65, 52, 66, 69, 47, 74, 48, 55, 77, 74, 93, 59, 94, 59, 48, 68, 53, 76, 54, 61, 47, 63, 82, 49, 85, 54, 55, 64, 49, 51, 61, 56, 57, 58, 56, 70, 56, 63, 75, 53, 48, 44, 68, 79, 97, 73, 73, 65, 69, 102, 69, 76, 63, 55, 58, 61, 76, 46, 62, 80, 52, 74, 59, 62, 34, 64, 52, 69, 61, 44, 85, 66, 66, 56, 66, 46, 57, 54, 55, 57, 59, 62, 58, 145, 69, 57, 67, 66, 63, 77, 67, 49, 60, 71, 70, 76, 94, 51, 67, 68, 70, 66, 73, 59, 86, 54, 81, 56, 68, 66, 61, 64, 64, 62, 57, 76, 74, 91, 58, 61, 57, 67, 61, 79, 57, 66, 62, 81, 57, 60, 63, 61, 55, 63, 67, 41, 155, 65, 53, 67, 56, 60, 65, 77, 62, 54, 56, 67, 41, 68, 55, 66, 73, 46, 63, 51, 76, 105, 66, 99, 67, 59, 91, 54, 48, 71, 63, 90, 65, 46, 37, 66, 84, 94, 55, 90, 51, 60, 56, 77, 97, 72, 84, 65, 71, 52, 72, 53, 50, 65, 69, 122, 68, 59, 70, 75, 72, 52, 52, 61, 59, 83, 79, 67, 75, 53, 54, 76, 70, 85, 59, 42, 51, 62, 49, 64, 72, 69, 57, 80, 73, 76, 52, 75, 78, 86, 76, 75, 61, 67, 62, 60, 79, 74, 72, 80, 55, 67, 66, 58, 77, 56, 79, 56, 34, 69, 64, 49, 62, 71, 71, 69, 96, 86, 73, 66, 50, 57, 87, 66, 51, 106, 57, 56, 77, 75, 78, 57, 58, 54, 79, 38, 114, 80, 62, 55, 71, 77, 77, 77, 65, 57, 83, 65, 51, 53, 52, 83, 75, 64, 108, 68, 59, 87, 41, 69, 45, 71, 70, 47, 100, 77, 72, 55, 66, 64, 95, 43, 75, 70, 57, 50, 72, 55, 60, 61, 81, 69, 56, 78, 66, 58, 62, 81, 121, 64, 63, 44, 62, 54, 72, 67, 84, 62, 75, 58, 81, 53, 39, 65, 121, 65, 101, 90, 53, 68, 59, 84, 73, 71, 60, 79, 60, 67, 82, 69, 73, 67, 57, 95, 62, 45, 63, 53, 47, 57, 45, 79, 87, 59, 43, 73, 68, 66, 51, 49, 56, 77, 47, 53, 52, 60, 56, 61, 60, 56, 79, 78, 36, 57, 78, 59, 51, 87, 50, 52, 83, 65, 47, 93, 64, 55, 54, 68, 61, 59, 93, 68, 59, 60, 61, 50, 66, 89, 49, 33, 117, 75, 59, 99, 86, 80, 39, 70, 56, 76, 86, 78, 54, 84, 56, 62, 83, 42, 68, 73, 73, 105, 67, 84, 95, 83, 71, 98, 77, 50, 64, 117, 40, 69, 40, 82, 69, 69, 67, 60, 72, 67, 52, 71, 66, 91, 70, 58, 66, 102, 60, 95, 64, 59, 50, 88, 48, 69, 58, 84, 94, 86, 54, 82, 57, 67, 108, 72, 58, 56, 57, 73, 61, 91, 89, 67, 79, 87, 57, 70, 65, 63, 43, 76, 50, 55, 73, 60, 47, 142, 65, 78, 71, 70, 42, 154, 85, 53, 91, 55, 58, 55, 61, 113, 76, 78, 54, 67, 75, 56, 59, 61, 35, 52, 83, 91, 91, 68, 71, 80, 59, 74, 41, 66, 63, 55, 50, 56, 56, 82, 67, 88, 97, 52, 71, 88, 52, 59, 82, 80, 70, 71, 50, 59, 56, 63, 84, 66, 68, 78, 50, 95, 58, 76, 45, 70, 40, 92, 52, 79, 41, 58, 65, 70, 83, 81, 86, 57, 63, 71, 52, 71, 65, 26, 50, 56, 58, 57, 81, 58, 53, 72, 61, 60, 74, 62, 28, 77, 51, 62, 62, 85, 51, 84, 88, 82, 51, 41, 67, 70, 54, 88, 77, 100, 71, 49, 46, 55, 40, 56, 102, 69, 57, 36, 79, 58, 87, 51, 72, 65, 54, 83, 81, 129, 32, 82, 68, 75, 69, 62, 64, 70, 45, 45, 90, 67, 63, 73, 71, 71, 52, 64, 63, 58, 63, 82, 72, 66, 69, 64, 63, 88, 60, 65, 56, 43, 52, 38, 60, 65, 61, 84, 66, 104, 87, 42, 89, 88, 88, 64, 45, 57, 51, 53, 77, 77, 52, 92, 49, 74, 66, 58, 123, 66, 72, 41, 64, 51, 69, 61, 57, 59, 61, 64, 47, 48, 66, 57, 72, 78, 80, 50, 58, 53, 62, 62, 74, 88, 50, 60, 66, 75, 77, 42, 79, 69, 52, 52, 63, 53, 45, 56, 84, 85, 60, 65, 38, 88, 73, 91, 40, 72, 47, 63, 54, 41, 72, 46, 62, 73, 57, 59, 58, 75, 66, 63, 64, 53, 70, 53, 49, 52, 66, 50, 59, 68, 50, 79, 51, 62, 63, 60, 92, 71, 87, 100, 70, 75, 57, 45, 63, 65, 78, 62, 58, 70, 64, 55, 59, 137, 66, 77, 82, 36, 52, 73, 70, 66, 89, 82, 63, 72, 59, 42, 66, 38, 52, 67, 76, 50, 62, 81, 70, 97, 80, 88, 76, 53, 63, 58, 58, 55, 48, 74, 57, 63, 58, 52, 77, 45, 57, 65, 73, 50, 70, 84, 91, 62, 52, 76, 44, 55, 106, 53, 66, 62, 86, 61, 64, 50, 107, 74, 55, 68, 63, 67, 99, 73, 61, 76, 50, 91, 45, 78, 77, 56, 71, 71, 57, 92, 55, 55, 84, 84, 84, 46, 58, 50, 50, 62, 58, 61, 60, 61, 89, 60, 44, 72, 63, 68, 61, 81, 57, 70, 70, 56, 59, 62, 56, 62, 49, 56, 82, 71, 98, 56, 79, 57, 46, 77, 75, 41, 55, 68, 60, 82, 78, 53, 69, 77, 64, 134, 64, 68, 67, 53, 65, 42, 58, 72, 84, 79, 71, 49, 62, 75, 54, 58, 88, 78, 59, 77, 70, 70, 65, 65, 60, 91, 56, 77, 94, 64, 71, 54, 58, 63, 97, 68, 57, 66, 69, 119, 68, 54, 52, 75, 61, 70, 51, 67, 52, 84, 55, 61, 87, 56, 54, 80, 80, 60, 68, 53, 48, 60, 67, 64, 49, 64, 99, 61, 65, 47, 47, 80, 51, 76, 59, 84, 53, 63, 60, 50, 78, 59, 57, 67, 87, 58, 83, 68, 44, 69, 65, 67, 46, 45, 96, 70, 43, 52, 71, 45, 56, 56, 50, 64, 87, 102, 63, 78, 65, 77, 49, 59, 77, 43, 99, 66, 59, 67, 55, 107, 54, 36, 75, 83, 38, 90, 44, 58, 65, 78, 82, 79, 50, 70, 56, 70, 113, 57, 54, 81, 64, 128, 86, 59, 72, 54, 77, 75, 71, 69, 54, 65, 93, 54, 77, 82, 58, 45, 48, 70, 64, 53, 76, 76, 62, 53, 63, 50, 81, 61, 72, 53, 74, 82, 57, 60, 55, 59, 77, 78, 79, 57, 65, 51, 62, 62, 84, 89, 81, 40, 81, 91, 64, 64, 59, 61, 81, 71, 62, 56, 88, 90, 80, 38, 57, 56, 75, 52, 76, 85, 124, 87, 56, 70, 56, 71, 70, 55, 82, 65, 38, 56, 59, 54, 53, 90, 63, 72, 54, 83, 64, 53, 55, 63, 46, 58, 45, 68, 55, 76, 40, 68, 58, 73, 77, 56, 78, 73, 63, 62, 59, 83, 103, 71, 78, 45, 56, 52, 126, 45, 65, 71, 82, 43, 40, 75, 44, 52, 49, 70, 79, 73, 61, 55, 64, 44, 60, 78, 54, 48, 89, 55, 60, 63, 59, 60, 47, 71, 61, 69, 65, 81, 50, 68, 67, 85, 140, 55, 51, 94, 77, 70, 91, 94, 79, 59, 62, 56, 90, 57, 96, 52, 67, 58, 82, 85, 79, 107, 66, 81, 57, 89, 87, 67, 85, 68, 66, 70, 92, 50, 59, 56, 72, 80, 56, 57, 74, 54, 91, 71, 61, 67, 72, 74, 63, 65, 62, 68, 59, 72, 62, 48, 74, 85, 94, 41, 73, 51, 64, 61, 71, 79, 92, 64, 59, 66, 91, 72, 85, 64, 56, 63, 89, 63, 61, 84, 66, 78, 72, 82, 61, 63, 77, 58, 79, 58, 52, 64, 88, 58, 66, 107, 58, 60, 67, 56, 77, 71, 57, 81, 63, 59, 76, 73, 67, 70, 80, 53, 72, 50, 80, 44, 58, 86, 55, 54, 53, 49, 57, 73, 73, 62, 84, 67, 62, 53, 92, 60, 107, 61, 54, 85, 55, 68, 60, 56, 51, 81, 62, 60, 63, 101, 58, 61, 60, 62, 78, 51, 65, 60, 52, 66, 55, 90, 65, 76, 65, 75, 62, 75, 79, 74, 72, 88, 65, 85, 59, 87, 62, 81, 70, 51, 52, 76, 69, 63, 63, 44, 61, 55, 56, 68, 66, 58, 59, 57, 66, 51, 71, 87, 37, 62, 63, 57, 56, 56, 61, 76, 64, 71, 123, 61, 55, 57, 66, 56, 79, 70, 91, 67, 63, 64, 72, 59, 84, 50, 60, 55, 61, 59, 63, 59, 56, 65, 50, 80, 53, 88, 84, 55, 74, 69, 49, 82, 56, 89, 63, 81, 79, 81, 73, 42, 48, 75, 64, 62, 80, 56, 67, 67, 59, 66, 55, 51, 72, 55, 62, 66, 83, 59, 58, 79, 51, 56, 57, 61, 78, 58, 62, 54, 60, 61, 54, 62, 83, 56, 51, 57, 45, 52, 57, 68, 70, 57, 75, 52, 68, 57, 61, 61, 40, 45, 44, 66, 68, 52, 67, 66, 81, 61, 60, 59, 64, 84, 51, 71, 70, 58, 67, 55, 72, 66, 63, 58, 65, 80, 63, 70, 70, 56, 67, 68, 58, 49, 107, 54, 83, 65, 58, 79, 94, 56, 66, 61, 76, 94, 67, 87, 62, 92, 73, 64, 62, 61, 55, 57, 57, 68, 53, 84, 59, 73, 70, 58, 66, 60, 72, 61, 51, 48, 79, 65, 56, 64, 65, 51, 82, 61, 81, 31, 63, 70, 59, 73, 98, 67, 50, 73, 58, 63, 65, 58, 48, 58, 67, 67, 57, 84, 70, 63, 56, 59, 42, 75, 45, 44, 105, 66, 62, 69, 64, 69, 52, 62, 88, 69, 61, 94, 34, 57, 40, 65, 69, 59, 51, 56, 97, 64, 61, 71, 64, 69, 40, 72, 61, 62, 65, 63, 68, 84, 61, 66, 83, 70, 72, 62, 114, 58, 54, 68, 54, 58, 64, 55, 49, 42, 60, 54, 53, 70, 53, 85, 54, 77, 58, 75, 71, 67, 56, 57, 61, 67, 79, 60, 75, 85, 72, 80, 78, 78, 53, 68, 60, 94, 67, 65, 59, 50, 57, 54, 71, 80, 59, 64, 48, 64, 96, 67, 64, 63, 69, 62, 44, 57, 80, 74, 43, 61, 61, 76, 62, 45, 85, 45, 75, 46, 63, 59, 52, 85, 50, 65, 76, 58, 62, 68, 56, 67, 45, 58, 64, 44, 57, 76, 76, 63, 67, 61, 49, 87, 56, 80, 56, 75, 61, 69, 67, 75, 75, 67, 66, 62, 67, 91, 56, 66, 51, 84, 75, 60, 64, 73, 40, 76, 62, 60, 55, 65, 64, 84, 74, 52, 53, 64, 50, 76, 48, 37, 62, 82, 58, 63, 74, 58, 60, 68, 58, 73, 79, 61, 75, 105, 68, 65, 70, 78, 61, 69, 67, 58, 59, 48, 105, 67, 144, 57, 108, 66, 61, 51, 95, 69, 82, 60, 67, 71, 41, 60, 58, 71, 74, 64, 75, 46, 60, 64, 59, 51, 53, 51, 70, 56, 74, 63, 72, 60, 141, 59, 99, 47, 68, 68, 74, 71, 55, 81, 61, 98, 62, 50, 67, 55, 53, 83, 74, 63, 68, 75, 116, 61, 69, 76, 59, 42, 58, 51, 70, 52, 53, 75, 74, 58, 71, 56, 94, 48, 61, 80, 72, 107, 62, 70, 62, 59, 65, 59, 64, 69, 55, 92, 84, 51, 67, 67, 52, 80, 58, 59, 57, 43, 66, 114, 63, 73, 70, 72, 48, 64, 54, 52, 62, 62, 60, 76, 69, 68, 72, 92, 85, 61, 75, 77, 79, 71, 80, 55, 58, 68, 62, 85, 71, 75, 58, 61, 60, 68, 75, 89, 62, 62, 51, 48, 58, 57, 67, 55, 60, 38, 59, 68, 67, 55, 70, 58, 71, 86, 63, 71, 53, 48, 55, 52, 61, 72, 53, 50, 63, 60, 55, 75, 57, 58, 68, 60, 73, 49, 97, 52, 71, 67, 62, 92, 70, 67, 54, 77, 55, 61, 65, 63, 79, 47, 70, 73, 61, 59, 84, 71, 85, 50, 87, 60, 52, 84, 71, 56, 64, 73, 83, 40, 55, 50, 62, 81, 110, 71, 86, 61, 72, 47, 68, 47, 68, 54, 73, 66, 51, 57, 71, 61, 82, 62, 54, 61, 83, 46, 48, 81, 60, 63, 86, 51, 135, 51, 90, 49, 84, 56, 84, 49, 75, 48, 63, 66, 61, 53, 42, 64, 78, 72, 36, 77, 58, 47, 56, 59, 65, 56, 62, 72, 52, 77, 40, 85, 66, 76, 86, 60, 70, 60, 63, 73, 63, 95, 44, 64, 56, 70, 72, 87, 70, 90, 64, 64, 69, 80, 78, 66, 74, 80, 64, 68, 53, 84, 53, 67, 57, 67, 63, 62, 63, 64, 50, 62, 59, 47, 56, 48, 53, 60, 73, 65, 57, 56, 60, 47, 76, 58, 51, 46, 66, 74, 65, 50, 78, 68, 62, 85, 68, 63, 77, 60, 72, 49, 68, 74, 61, 63, 61, 93, 71, 47, 63, 72, 79, 46, 75, 64, 50, 37, 74, 59, 78, 60, 49, 71, 57, 59, 58, 63, 72, 61, 109, 61, 49, 62, 63, 53, 83, 65, 68, 55, 47, 48, 62, 50, 57, 44, 61, 57, 70, 68, 70, 47, 77, 56, 59, 72, 51, 65, 66, 57, 55, 117, 54, 75, 45, 77, 58, 67, 73, 54, 64, 64, 69, 70, 58, 74, 75, 60, 58, 98, 72, 71, 128, 79, 54, 64, 61, 56, 60, 75, 59, 50, 52, 92, 94, 40, 73, 89, 64, 68, 89, 51, 52, 56, 96, 72, 82, 73, 69, 68, 62, 65, 72, 71, 58, 88, 64, 74, 64, 54, 55, 96, 52, 68, 74, 71, 70, 49, 60, 66, 56, 76, 56, 45, 61, 65, 66, 56, 56, 58, 78, 54, 82, 48, 62, 70, 51, 79, 58, 87, 57, 59, 58, 74, 71, 56, 57, 52, 60, 91, 96, 69, 96, 81, 67, 74, 71, 61, 84, 58, 60, 87, 85, 64, 54, 39, 51, 78, 47, 71, 62, 77, 43, 79, 75, 68, 86, 85, 47, 65, 77, 51, 91, 64, 75, 62, 73, 62, 52, 47, 73, 65, 61, 65, 61, 65, 66, 64, 55, 50, 65, 57, 54, 73, 55, 47, 58, 74, 46, 73, 66, 60, 76, 77, 54, 67, 67, 48, 60, 47, 58, 69, 63, 61, 55, 59, 87, 69, 69, 54, 99, 69, 55, 76, 59, 50, 82, 52, 66, 87, 69, 38, 51, 60, 63, 75, 65, 67, 63, 62, 51, 63, 50, 39, 43, 53, 56, 59, 42, 58, 56, 43, 79, 62, 78, 70, 50, 50, 82, 62, 75, 49, 59, 77, 63, 49, 57, 74, 61, 50, 77, 73, 121, 78, 76, 61, 57, 51, 60, 60, 50, 58, 54, 84, 68, 48, 65, 42, 110, 67, 90, 64, 48, 74, 54, 77, 60, 60, 72, 55, 56, 66, 49, 55, 67, 109, 52, 85, 105, 46, 57, 38, 73, 50, 58, 69, 42, 47, 58, 66, 70, 68, 55, 59, 76, 81, 73, 59, 60, 52, 48, 68, 47, 86, 52, 71, 73, 76, 74, 87, 56, 62, 54, 76, 115, 60, 67, 60, 86, 55, 80, 64, 75, 64, 49, 65, 59, 50, 46, 56, 74, 56, 72, 71, 68, 70, 80, 55, 56, 76, 42, 61, 69, 67, 49, 65, 73, 84, 77, 77, 50, 81, 36, 63, 88, 60, 72, 60, 59, 75, 59, 79, 92, 95, 65, 77, 56, 90, 80, 69, 56, 77, 27, 86, 69, 66, 78, 55, 44, 74, 56, 84, 45, 65, 62, 72, 45, 61, 49, 86, 56, 50, 56, 64, 67, 73, 74, 53, 49, 66, 64, 83, 46, 80, 77, 54, 63, 82, 61, 68, 54, 109, 76, 28, 45, 56, 49, 79, 44, 59, 50, 83, 60, 57, 63, 68, 49, 44, 129, 54, 68, 65, 59, 61, 47, 54, 78, 66, 77, 65, 74, 69, 62, 75, 60, 71, 68, 47, 58, 59, 48, 62, 130, 65, 71, 58, 94, 63, 61, 83, 69, 58, 72, 60, 39, 55, 47, 57, 80, 61, 67, 83, 64, 51, 86, 72, 77, 50, 70, 77, 57, 76, 71, 82, 57, 66, 62, 64, 68, 50, 78, 54, 69, 72, 69, 62, 62, 53, 75, 60, 83, 46, 72, 68, 72, 73, 59, 81, 77, 71, 72, 57, 47, 66, 86, 45, 72, 56, 70, 66, 67, 59, 60, 83, 63, 60, 68, 52, 79, 85, 76, 66, 65, 57, 76, 57, 72, 52, 70, 75, 72, 85, 57, 60, 69, 55, 75, 61, 66, 70, 74, 57, 67, 62, 60, 83, 64, 54, 59, 75, 39, 62, 75, 57, 79, 65, 71, 62, 70, 78, 105, 55, 73, 73, 56, 81, 62, 68, 70, 57, 63, 75, 56, 54, 66, 68, 65, 79, 60, 52, 66, 70, 51, 51, 67, 91, 84, 57, 55, 48, 54, 82, 77, 88, 71, 47, 77, 64, 65, 71, 57, 68, 56, 74, 50, 93, 74, 55, 47, 83, 78, 57, 56, 66, 65, 96, 61, 67, 60, 63, 54, 60, 75, 59, 56, 43, 130, 57, 65, 60, 66, 59, 38, 60, 55, 71, 70, 69, 61, 67, 58, 90, 57, 62, 57, 71, 59, 72, 59, 168, 60, 59, 74, 69, 77, 42, 90, 51, 46, 52, 87, 71, 50, 57, 61, 66, 76, 50, 63, 90, 69, 67, 45, 65, 56, 107, 62, 51, 60, 44, 44, 65, 96, 75, 65, 74, 66, 66, 62, 64, 71, 77, 62, 44, 80, 75, 92, 80, 70, 70, 69, 42, 62, 58, 40, 52, 54, 69, 66, 62, 66, 78, 65, 55, 66, 77, 89, 105, 66, 58, 98, 73, 65, 54, 57, 58, 65, 66, 88, 77, 81, 77, 75, 61, 65, 58, 70, 55, 55, 83, 64, 52, 68, 62, 67, 64, 61, 90, 55, 79, 199, 56, 73, 55, 54, 73, 74, 72, 61, 79, 57, 54, 57, 53, 75, 101, 60, 47, 68, 55, 68, 62, 64, 95, 52, 65, 61, 73, 67, 52, 59, 55, 71, 62, 42, 55, 57, 60, 69, 77, 59, 64, 50, 46, 73, 73, 62, 82, 147, 59, 74, 60, 73, 93, 55, 63, 61, 88, 55, 87, 54, 52, 60, 65, 70, 59, 85, 57, 62, 78, 66, 60, 65, 66, 46, 67, 62, 83, 62, 40, 84, 75, 57, 70, 69, 71, 61, 67, 76, 55, 49, 53, 50, 82, 51, 75, 72, 72, 62, 73, 83, 71, 69, 57, 70, 59, 60, 66, 70, 75, 65, 83, 83, 55, 61, 54, 70, 70, 62, 67, 44, 66, 38, 55, 58, 62, 68, 73, 75, 46, 56, 62, 65, 59, 67, 64, 61, 72, 45, 58, 70, 82, 86, 75, 62, 91, 92, 105, 85, 53, 84, 63, 70, 113, 52, 58, 62, 77, 66, 79, 62, 59, 78, 79, 51, 74, 81, 101, 66, 62, 83, 54, 54, 66, 53, 72, 72, 67, 63, 66, 69, 75, 59, 61, 79, 73, 54, 55, 65, 72, 70, 67, 73, 67, 56, 79, 71, 63, 74, 53, 59, 59, 50, 77, 70, 71, 69, 51, 78, 56, 59, 77, 63, 57, 69, 87, 73, 76, 71, 69, 80, 61, 58, 63, 82, 46, 73, 71, 101, 70, 49, 53, 77, 46, 59, 54, 90, 70, 69, 79, 64, 76, 72, 51, 40, 50, 63, 78, 44, 50, 46, 42, 48, 85, 53, 51, 61, 56, 130, 82, 49, 59, 83, 53, 66, 73, 103, 57, 59, 67, 43, 74, 85, 62, 75, 67, 76, 78, 75, 52, 104, 81, 80, 73, 80, 65, 98, 58, 81, 41, 74, 60, 68, 89, 58, 41, 80, 50, 61, 64, 54, 80, 102, 78, 62, 58, 43, 52, 108, 44, 48, 56, 61, 75, 55, 42, 58, 49, 89, 59, 60, 79, 66, 71, 54, 51, 60, 56, 71, 71, 64, 57, 71, 68, 64, 51, 80, 68, 71, 63, 79, 64, 73, 47, 65, 71, 46, 67, 72, 138, 82, 45, 62, 69, 41, 103, 104, 92, 59, 58, 46, 64, 67, 66, 43, 114, 93, 54, 54, 81, 70, 96, 53, 58, 59, 68, 79, 65, 60, 67, 85, 65, 60, 50, 63, 62, 61, 52, 67, 123, 68, 77, 53, 65, 56, 56, 65, 55, 66, 82, 48, 88, 68, 84, 54, 54, 44, 58, 74, 54, 58, 88, 55, 61, 54, 71, 68, 53, 45, 88, 56, 63, 49, 62, 41, 86, 52, 83, 62, 62, 80, 46, 71, 59, 68, 66, 72, 82, 54, 71, 49, 72, 77, 41, 72, 62, 49, 74, 70, 70, 51, 65, 55, 71, 62, 69, 54, 91, 65, 54, 66, 69, 66, 58, 48, 75, 57, 67, 61, 81, 60, 59, 70, 59, 55, 72, 66, 74, 58, 63, 52, 46, 15, 61, 59, 99, 63, 62, 49, 111, 76, 51, 56, 82, 22, 87, 51, 58, 61, 61, 63, 36, 96, 45, 79, 71, 65, 56, 52, 62, 73, 93, 61, 68, 89, 54, 48, 63, 76, 52, 96, 58, 71, 94, 58, 76, 60, 59, 72, 59, 46, 47, 64, 102, 61, 44, 75, 50, 87, 70, 62, 72, 89, 108, 55, 93, 113, 60, 74, 117, 59, 68, 52, 73, 60, 70, 58, 58, 83, 79, 179, 77, 57, 69, 54, 78, 62, 72, 67, 60, 89, 59, 73, 167, 49, 71, 64, 107, 72, 64, 79, 64, 71, 45, 46, 81, 82, 90, 79, 38, 67, 67, 76, 82, 73, 85, 59, 58, 58, 61, 55, 69, 68, 42, 54, 69, 54, 55, 60, 74, 59, 96, 72, 57, 55, 69, 111, 57, 77, 62, 84, 75, 42, 60, 66, 107, 75, 52, 68, 64, 71, 76, 70, 80, 54, 80, 98, 65, 97, 58, 75, 73, 71, 86, 56, 49, 67, 53, 66, 40, 60, 66, 52, 94, 64, 61, 53, 80, 55, 55, 59, 75, 51, 105, 56, 39, 74, 68, 112, 66, 65, 79, 66, 51, 56, 61, 54, 75, 63, 71, 51, 64, 36, 62, 74, 76, 68, 97, 61, 56, 66, 118, 94, 76, 65, 60, 58, 78, 80, 116, 67, 77, 93, 92, 66, 68, 44, 52, 56, 63, 69, 69, 86, 87, 59, 72, 67, 64, 126, 63, 44, 67, 47, 78, 83, 73, 49, 66, 90, 57, 58, 54, 67, 63, 80, 74, 62, 63, 63, 81, 79, 68, 52, 45, 84, 59, 59, 83, 55, 48, 77, 70, 71, 89, 43, 67, 69, 67, 65, 70, 88, 67, 52, 63, 88, 71, 65, 90, 70, 105, 57, 54, 66, 52, 81, 61, 64, 69, 74, 81, 96, 43, 86, 72, 54, 52, 69, 66, 57, 53, 71, 79, 55, 96, 64, 42, 43, 50, 58, 60, 59, 49, 62, 59, 63, 77, 68, 66, 62, 71, 90, 70, 75, 58, 72, 82, 72, 54, 86, 76, 56, 76, 46, 64, 29, 64, 66, 49, 44, 64, 65, 57, 42, 66, 71, 48, 80, 52, 61, 57, 57, 71, 57, 54, 54, 107, 59, 84, 69, 55, 79, 90, 70, 85, 88, 51, 59, 64, 68, 75, 37, 67, 74, 68, 72, 62, 57, 35, 55, 54, 70, 88, 68, 76, 40, 86, 66, 52, 62, 48, 51, 78, 62, 50, 69, 60, 53, 42, 59, 32, 58, 56, 71, 55, 79, 61, 60, 74, 60, 68, 50, 61, 61, 67, 79, 69, 65, 80, 97, 88, 75, 57, 74, 58, 69, 68, 55, 73, 59, 83, 47, 44, 57, 60, 70, 75, 65, 57, 49, 58, 87, 64, 73, 42, 59, 104, 82, 51, 81, 67, 77, 99, 92, 68, 59, 53, 95, 72, 66, 63, 90, 70, 63, 59, 60, 73, 65, 60, 69, 83, 53, 67, 93, 53, 89, 67, 60, 49, 80, 57, 62, 48, 68, 56, 75, 62, 67, 64, 44, 76, 54, 77, 80, 40, 71, 53, 65, 75, 61, 46, 63, 54, 45, 74, 46, 67, 52, 72, 54, 54, 73, 85, 110, 49, 66, 66, 78, 59, 68, 69, 120, 71, 63, 90, 60, 70, 63, 52, 63, 59, 59, 58, 68, 73, 73, 53, 81, 74, 59, 62, 61, 65, 55, 74, 65, 57, 73, 49, 66, 78, 60, 63, 79, 34, 50, 82, 62, 92, 56, 53, 79, 58, 73, 50, 74, 75, 64, 62, 57, 59, 64, 54, 74, 56, 49, 62, 66, 70, 72, 47, 57, 45, 70, 83, 69, 71, 84, 76, 107, 77, 51, 59, 62, 103, 50, 67, 58, 65, 43, 58, 54, 50, 52, 61, 64, 67, 65, 63, 48, 74, 44, 78, 44, 100, 68, 71, 48, 53, 70, 67, 62, 58, 56, 67, 72, 61, 47, 63, 56, 63, 111, 55, 68, 75, 36, 92, 80, 63, 74, 57, 58, 55, 60, 51, 56, 70, 66, 72, 53, 60, 50, 56, 36, 71, 45, 61, 45, 55, 56, 92, 65, 59, 57, 75, 84, 57, 67, 56, 81, 50, 67, 67, 63, 68, 62, 69, 57, 51, 65, 49, 72, 33, 107, 47, 95, 89, 56, 49, 49, 62, 50, 71, 60, 71, 64, 48, 62, 72, 57, 71, 63, 61, 65, 53, 71, 80, 85, 116, 54, 55, 52, 48, 76, 57, 69, 64, 58, 47, 37, 69, 60, 52, 65, 68, 66, 73, 40, 60, 68, 88, 54, 62, 43, 50, 57, 62, 86, 74, 62, 61, 62, 38, 69, 61, 66, 84, 73, 60, 41, 76, 61, 54, 64, 52, 67, 59, 58, 57, 76, 62, 69, 70, 57, 51, 63, 64, 51, 69, 83, 64, 75, 104, 67, 56, 79, 64, 59, 39, 55, 66, 64, 85, 84, 102, 45, 58, 61, 51, 123, 67, 82, 69, 59, 50, 59, 91, 64, 56, 65, 59, 82, 89, 87, 57, 62, 70, 44, 69, 60, 69, 61, 71, 58, 66, 73, 66, 80, 63, 75, 64, 80, 80, 58, 67, 56, 63, 66, 59, 72, 69, 62, 79, 70, 66, 92, 64, 60, 74, 69, 56, 62, 95, 54, 58, 54, 72, 69, 78, 78, 79, 56, 81, 104, 80, 26, 53, 65, 56, 63, 66, 55, 57, 57, 58, 100, 50, 69, 74, 50, 66, 64, 53, 88, 51, 59, 53, 75, 77, 73, 58, 67, 55, 68, 59, 66, 63, 55, 80, 94, 27, 51, 92, 47, 36, 49, 69, 78, 79, 101, 65, 65, 62, 110, 40, 69, 88, 48, 59, 82, 59, 84, 53, 60, 87, 84, 71, 56, 66, 28, 67, 71, 80, 58, 58, 85, 58, 59, 90, 63, 85, 50, 54, 60, 55, 69, 61, 78, 89, 55, 54, 73, 44, 74, 69, 115, 73, 69, 43, 61, 60, 59, 63, 99, 74, 81, 105, 56, 64, 99, 61, 80, 99, 77, 62, 123, 77, 64, 67, 53, 62, 78, 60, 81, 52, 64, 55, 73, 60, 85, 77, 74, 47, 62, 61, 77, 49, 45, 61, 66, 49, 63, 82, 59, 85, 47, 81, 72, 56, 86, 87, 59, 63, 83, 52, 83, 71, 50, 38, 65, 68, 45, 60, 55, 46, 51, 74, 72, 90, 57, 51, 61, 51, 60, 66, 74, 62, 54, 75, 77, 76, 106, 66, 53, 82, 66, 84, 57, 43, 62, 72, 66, 46, 57, 43, 80, 69, 69, 70, 67, 74, 61, 60, 86, 67, 55, 96, 58, 63, 53, 60, 78, 91, 43, 76, 56, 78, 73, 81, 85, 57, 63, 61, 73, 73, 68, 52, 104, 54, 84, 60, 35, 55, 85, 63, 59, 65, 47, 55, 63, 73, 48, 46, 23, 50, 68, 60, 71, 50, 34, 63, 61, 54, 83, 74, 65, 53, 56, 90, 49, 90, 97, 69, 53, 87, 63, 58, 68, 71, 67, 86, 82, 97, 34, 70, 57, 86, 55, 91, 58, 61, 82, 85, 83, 72, 62, 85, 72, 77, 66, 69, 64, 82, 60, 73, 68, 50, 83, 70, 77, 57, 52, 71, 52, 92, 94, 57, 57, 90, 66, 88, 60, 62, 90, 66, 86, 51, 56, 57, 63, 59, 60, 60, 61, 73, 44, 58, 59, 44, 100, 60, 71, 69, 69, 56, 77, 39, 65, 67, 74, 53, 53, 59, 99, 43, 62, 98, 68, 51, 59, 43, 68, 76, 83, 76, 53, 49, 69, 49, 89, 59, 57, 73, 75, 62, 80, 65, 113, 45, 64, 44, 82, 67, 72, 49, 57, 60, 51, 72, 47, 59, 43, 67, 49, 66, 55, 64, 100, 79, 70, 49, 70, 57, 52, 46, 66, 52, 91, 87, 65, 64, 59, 69, 62, 53, 69, 73, 52, 66, 72, 68, 73, 66, 71, 55, 49, 52, 105, 62, 62, 45, 40, 105, 56, 66, 68, 54, 83, 53, 70, 90, 91, 41, 64, 70, 65, 49, 51, 71, 101, 72, 75, 61, 68, 37, 80, 51, 45, 68, 58, 55, 50, 62, 78, 71, 46, 93, 66, 36, 81, 71, 55, 109, 60, 45, 66, 62, 55, 86, 81, 67, 82, 68, 59, 80, 56, 50, 59, 87, 58, 73, 62, 64, 51, 48, 69, 55, 81, 53, 63, 88, 51, 53, 67, 62, 82, 50, 59, 62, 71, 64, 58, 63, 52, 81, 50, 50, 74, 47, 79, 89, 59, 65, 63, 44, 72, 64, 38, 89, 63, 53, 79, 53, 102, 73, 65, 75, 53, 68, 61, 60, 60, 78, 54, 60, 62, 77, 58, 56, 46, 79, 47, 64, 82, 62, 76, 78, 71, 54, 55, 79, 81, 61, 40, 63, 68, 62, 53, 64, 48, 113, 78, 50, 50, 86, 47, 66, 70, 62, 89, 52, 54, 71, 60, 82, 46, 52, 70, 53, 72, 62, 53, 72, 35, 63, 69, 101, 69, 35, 108, 53, 56, 90, 55, 88, 64, 43, 54, 54, 47, 72, 38, 57, 74, 101, 67, 49, 57, 72, 96, 73, 70, 67, 70, 87, 70, 61, 67, 61, 103, 67, 92, 54, 65, 107, 44, 66, 81, 112, 57, 96, 65, 71, 61, 58, 64, 86, 56, 60, 95, 97, 47, 77, 110, 43, 64, 63, 66, 65, 42, 53, 71, 80, 53, 66, 55, 48, 73, 74, 50, 65, 63, 55, 91, 87, 71, 75, 79, 111, 108, 48, 78, 47, 72, 54, 47, 44, 52, 59, 82, 80, 77, 49, 68, 82, 70, 46, 63, 63, 52, 51, 64, 46, 64, 95, 52, 70, 77, 69, 65, 50, 51, 61, 59, 45, 45, 83, 81, 60, 68, 74, 67, 81, 85, 98, 64, 60, 80, 68, 71, 75, 67, 61, 84, 35, 33, 59, 40, 69, 79, 63, 61, 59, 47, 84, 74, 46, 72, 47, 42, 82, 70, 65, 66, 52, 58, 57, 75, 69, 53, 38, 54, 74, 72, 62, 90, 73, 60, 79, 58, 83, 40, 71, 54, 53, 62, 81, 62, 76, 72, 98, 74, 68, 53, 80, 107, 66, 54, 60, 59, 90, 51, 68, 76, 60, 59, 88, 50, 89, 59, 75, 46, 56, 59, 43, 46, 70, 56, 52, 71, 68, 86, 49, 71, 61, 81, 92, 64, 47, 76, 39, 74, 75, 47, 78, 45, 63, 59, 124, 71, 33, 37, 48, 57, 44, 79, 64, 42, 108, 77, 61, 66, 65, 56, 62, 43, 61, 77, 72, 60, 39, 50, 45, 78, 78, 54, 49, 57, 98, 93, 48, 78, 64, 54, 72, 74, 57, 47, 66, 71, 109, 57, 51, 44, 54, 62, 57, 58, 57, 57, 76, 57, 58, 63, 62, 55, 66, 59, 68, 58, 55, 124, 56, 54, 69, 82, 58, 60, 77, 80, 60, 41, 84, 67, 59, 83, 59, 58, 54, 70, 60, 50, 70, 44, 54, 58, 88, 55, 85, 59, 55, 48, 50, 39, 68, 72, 65, 48, 60, 62, 49, 53, 47, 57, 62, 57, 85, 58, 79, 67, 71, 45, 83, 65, 43, 58, 60, 54, 74, 74, 44, 48, 63, 59, 68, 49, 83, 80, 54, 41, 35, 53, 54, 56, 62, 103, 51, 61, 62, 74, 112, 66, 92, 68, 81, 58, 85, 64, 59, 93, 75, 88, 42, 82, 59, 50, 79, 85, 51, 76, 85, 63, 58, 69, 57, 75, 71, 75, 67, 61, 76, 79, 90, 52, 87, 60, 84, 59, 49, 96, 107, 63, 78, 66, 57, 77, 73, 51, 48, 64, 50, 80, 77, 119, 33, 84, 42, 55, 69, 70, 77, 71, 88, 55, 63, 63, 64, 71, 61, 67, 62, 112, 71, 61, 49, 54, 64, 51, 66, 56, 34, 76, 66, 64, 69, 41, 53, 68, 85, 37, 44, 68, 69, 57, 40, 64, 90, 49, 86, 54, 64, 51, 68, 68, 44, 52, 157, 79, 78, 132, 54, 63, 88, 45, 81, 51, 67, 87, 81, 69, 74, 59, 80, 55, 82, 65, 87, 62, 89, 74, 55, 57, 52, 60, 69, 59, 72, 75, 58, 57, 67, 63, 70, 65, 106, 61, 70, 78, 65, 76, 55, 96, 70, 50, 67, 52, 68, 115, 68, 74, 52, 76, 57, 83, 73, 65, 69, 68, 58, 50, 89, 66, 54, 58, 68, 81, 68, 66, 63, 73, 71, 68, 46, 56, 66, 65, 54, 70, 43, 73, 73, 85, 88, 90, 96, 64, 114, 59, 62, 76, 63, 56, 68, 66, 77, 68, 62, 61, 79, 65, 98, 71, 39, 67, 77, 76, 59, 45, 69, 63, 46, 50, 87, 61, 73, 65, 66, 63, 92, 54, 60, 69, 55, 68, 86, 49, 89, 60, 40, 51, 141, 57, 89, 61, 77, 59, 74, 92, 63, 48, 66, 71, 58, 48, 48, 50, 65, 70, 63, 74, 58, 60, 68, 55, 81, 57, 73, 43, 62, 69, 82, 73, 66, 57, 78, 89, 24, 50, 64, 59, 72, 68, 77, 78, 74, 68, 53, 66, 70, 68, 52, 57, 80, 57, 97, 51, 76, 59, 53, 69, 73, 59, 64, 48, 57, 95, 59, 65, 50, 50, 93, 53, 66, 60, 81, 47, 56, 65, 74, 75, 38, 82, 59, 66, 55, 57, 73, 53, 68, 65, 56, 98, 71, 70, 95, 65, 75, 62, 56, 60, 50, 49, 36, 61, 72, 85, 95, 70, 62, 71, 66, 56, 57, 64, 51, 69, 90, 84, 72, 118, 80, 69, 85, 58, 64, 71, 75, 47, 80, 49, 68, 83, 73, 100, 90, 54, 80, 82, 74, 65, 39, 74, 60, 67, 76, 49, 59, 72, 63, 65, 53, 59, 72, 61, 73, 83, 74, 75, 77, 75, 70, 47, 45, 44, 86, 49, 62, 45, 67, 79, 79, 81, 65, 44, 76, 79, 66, 56, 76, 60, 57, 53, 53, 39, 68, 63, 72, 69, 113, 57, 60, 88, 52, 48, 64, 114, 65, 67, 84, 72, 68, 90, 60, 63, 66, 73, 58, 63, 58, 60, 47, 86, 81, 76, 93, 75, 62, 64, 63, 69, 65, 79, 72, 62, 50, 67, 51, 66, 84, 67, 66, 85, 85, 52, 64, 29, 25, 57, 57, 44, 57, 65, 65, 53, 53, 75, 66, 70, 75, 62, 70, 69, 81, 54, 69, 82, 67, 85, 86, 52, 47, 44, 64, 44, 117, 49, 70, 55, 50, 54, 59, 78, 65, 71, 62, 51, 47, 40, 83, 52, 53, 69, 51, 86, 74, 89, 79, 63, 90, 88, 72, 82, 67, 84, 74, 67, 57, 73, 65, 46, 54, 43, 75, 72, 73, 45, 64, 72, 74, 74, 96, 48, 97, 95, 71, 37, 60, 51, 38, 55, 51, 79, 84, 51, 84, 47, 56, 73, 61, 73, 72, 70, 55, 58, 49, 50, 88, 68, 87, 48, 56, 69, 54, 69, 72, 75, 62, 50, 56, 60, 59, 85, 105, 60, 94, 63, 65, 94, 78, 58, 69, 70, 49, 57, 77, 65, 75, 70, 67, 58, 77, 46, 59, 49, 75, 33, 61, 50, 55, 54, 64, 56, 54, 49, 60, 77, 49, 71, 55, 61, 58, 73, 63, 78, 83, 62, 51, 70, 69, 57, 64, 53, 72, 72, 75, 63, 53, 52, 76, 67, 82, 62, 78, 57, 61, 64, 88, 49, 115, 52, 82, 67, 68, 66, 61, 54, 94, 66, 56, 61, 44, 62, 60, 61, 80, 49, 68, 49, 63, 69, 69, 52, 55, 70, 86, 50, 70, 72, 64, 59, 73, 64, 49, 71, 65, 58, 56, 96, 74, 71, 88, 53, 64, 56, 111, 77, 87, 111, 69, 67, 58, 59, 71, 101, 53, 70, 129, 67, 55, 63, 78, 85, 57, 88, 70, 55, 86, 61, 58, 69, 77, 53, 43, 79, 58, 77, 43, 53, 49, 58, 55, 76, 55, 58, 66, 71, 65, 59, 56, 63, 74, 75, 56, 60, 66, 63, 72, 79, 61, 63, 57, 126, 95, 81, 75, 68, 81, 81, 62, 52, 62, 100, 73, 83, 66, 56, 102, 62, 40, 66, 50, 73, 62, 70, 52, 70, 36, 68, 71, 125, 50, 29, 98, 57, 58, 63, 87, 63, 69, 71, 49, 74, 65, 81, 52, 44, 61, 65, 51, 80, 46, 55, 66, 67, 78, 74, 73, 58, 65, 35, 37, 71, 63, 48, 65, 59, 74, 74, 59, 52, 50, 52, 43, 57, 87, 55, 55, 61, 67, 72, 55, 68, 57, 68, 66, 97, 54, 61, 63, 68, 64, 77, 70, 86, 68, 58, 65, 52, 94, 78, 53, 63, 54, 81, 76, 51, 74, 60, 50, 100, 72, 88, 52, 66, 51, 76, 66, 58, 39, 66, 65, 96, 62, 70, 69, 57, 51, 52, 66, 61, 79, 69, 50, 38, 63, 54, 77, 82, 86, 76, 77, 76, 66, 69, 57, 81, 64, 71, 74, 60, 63, 56, 75, 69, 56, 73, 63, 74, 72, 73, 42, 42, 87, 66, 79, 75, 69, 59, 59, 78, 52, 70, 65, 64, 63, 61, 71, 55, 91, 40, 56, 89, 46, 64, 93, 58, 63, 43, 65, 51, 77, 95, 79, 43, 54, 50, 87, 52, 49, 62, 66, 68, 55, 87, 75, 66, 71, 52, 76, 63, 75, 44, 87, 86, 58, 65, 68, 73, 51, 51, 84, 64, 56, 74, 50, 106, 68, 75, 54, 53, 64, 45, 74, 88, 53, 69, 68, 75, 120, 59, 56, 68, 52, 68, 54, 101, 69, 75, 73, 92, 54, 51, 66, 83, 55, 68, 57, 62, 58, 132, 61, 51, 41, 87, 67, 86, 65, 45, 85, 81, 80, 55, 69, 51, 61, 49, 75, 77, 42, 93, 54, 60, 73, 61, 61, 56, 58, 52, 57, 64, 67, 49, 75, 69, 51, 53, 62, 35, 72, 95, 57, 74, 60, 64, 82, 66, 61, 94, 52, 39, 57, 62, 66, 78, 93, 69, 79, 76, 72, 43, 52, 62, 53, 61, 48, 75, 59, 64, 50, 84, 64, 58, 79, 50, 79, 100, 79, 51, 90, 67, 78, 81, 60, 55, 87, 84, 41, 82, 71, 61, 70, 52, 167, 59, 91, 66, 61, 69, 64, 88, 60, 83, 62, 85, 49, 55, 58, 80, 82, 61, 62, 61, 46, 70, 64, 89, 72, 92, 55, 91, 66, 61, 105, 70, 37, 63, 74, 58, 75, 76, 57, 59, 53, 43, 47, 54, 58, 74, 68, 54, 63, 72, 61, 80, 51, 61, 66, 86, 63, 95, 97, 67, 56, 59, 64, 83, 63, 77, 80, 54, 60, 74, 66, 75, 78, 95, 73, 58, 63, 72, 46, 67, 56, 60, 82, 55, 94, 80, 62, 86, 91, 53, 53, 80, 47, 49, 52, 68, 86, 79, 61, 67, 52, 57, 62, 63, 67, 70, 83, 44, 52, 49, 93, 69, 72, 74, 60, 54, 63, 50, 44, 61, 56, 50, 64, 58, 77, 51, 49, 44, 63, 52, 59, 54, 64, 58, 73, 84, 68, 57, 71, 73, 67, 62, 49, 43, 72, 51, 63, 60, 63, 76, 57, 53, 55, 82, 61, 59, 61, 88, 85, 59, 62, 67, 84, 59, 55, 81, 48, 75, 90, 71, 72, 67, 97, 85, 63, 73, 76, 55, 62, 65, 73, 52, 58, 66, 42, 54, 57, 72, 72, 71, 61, 68, 67, 70, 46, 84, 67, 74, 68, 59, 75, 60, 51, 43, 56, 53, 43, 75, 58, 58, 75, 86, 88, 61, 63, 54, 60, 68, 65, 71, 78, 73, 80, 91, 59, 78, 91, 52, 50, 104, 81, 36, 69, 83, 61, 58, 56, 85, 62, 62, 63, 69, 87, 78, 63, 73, 63, 58, 86, 52, 54, 68, 58, 68, 51, 78, 40, 62, 77, 62, 58, 68, 65, 54, 81, 83, 47, 79, 68, 88, 60, 61, 84, 69, 47, 60, 57, 55, 81, 56, 80, 64, 50, 70, 56, 55, 62, 75, 76, 84, 44, 54, 64, 76, 72, 58, 67, 60, 89, 57, 60, 78, 65, 68, 44, 65, 57, 83, 66, 89, 56, 63, 54, 42, 66, 77, 57, 69, 74, 46, 60, 65, 50, 55, 75, 49, 62, 69, 69, 69, 88, 78, 47, 82, 79, 73, 51, 77, 59, 72, 76, 73, 62, 60, 55, 62, 79, 83, 63, 79, 52, 71, 46, 65, 54, 91, 77, 51, 67, 46, 48, 75, 53, 70, 55, 53, 46, 67, 67, 68, 60, 88, 66, 79, 77, 72, 81, 65, 53, 54, 69, 91, 79, 73, 76, 66, 57, 74, 56, 43, 68, 71, 60, 84, 61, 60, 70, 83, 82, 69, 68, 47, 69, 77, 50, 66, 74, 102, 63, 57, 92, 53, 80, 64, 49, 96, 64, 65, 76, 68, 52, 85, 64, 61, 53, 80, 70, 61, 59, 63, 62, 56, 52, 74, 52, 53, 63, 61, 58, 82, 59, 46, 58, 43, 68, 75, 69, 67, 58, 58, 57, 54, 74, 54, 76, 77, 80, 49, 70, 80, 82, 92, 55, 45, 56, 56, 48, 45, 55, 79, 81, 58, 70, 59, 90, 54, 60, 72, 73, 66, 69, 92, 80, 60, 56, 65, 59, 65, 71, 52, 60, 61, 58, 60, 74, 58, 63, 43, 68, 60, 81, 69, 48, 62, 76, 72, 66, 57, 54, 53, 102, 61, 51, 80, 46, 80, 66, 64, 61, 57, 85, 42, 81, 66, 77, 77, 76, 84, 110, 85, 50, 60, 78, 75, 44, 60, 57, 68, 76, 59, 65, 51, 91, 60, 63, 75, 64, 82, 95, 52, 42, 72, 124, 53, 47, 66, 68, 64, 57, 54, 57, 65, 70, 56, 73, 69, 52, 69, 62, 63, 63, 69, 49, 67, 62, 57, 90, 60, 85, 94, 69, 70, 77, 64, 48, 51, 57, 55, 89, 58, 91, 59, 45, 52, 51, 49, 48, 64, 72, 69, 50, 48, 58, 71, 60, 74, 51, 51, 63, 73, 73, 58, 52, 58, 52, 67, 69, 56, 51, 76, 73, 67, 62, 80, 64, 62, 58, 59, 74, 55, 73, 62, 68, 77, 69, 44, 59, 67, 125, 77, 74, 45, 87, 67, 79, 88, 53, 56, 59, 62, 58, 72, 78, 59, 72, 66, 60, 91, 58, 65, 76, 63, 64, 61, 80, 66, 51, 76, 60, 74, 67, 110, 59, 80, 59, 59, 56, 66, 76, 39, 68, 69, 69, 59, 55, 57, 52, 56, 75, 74, 74, 55, 57, 62, 62, 66, 57, 102, 85, 39, 59, 50, 75, 58, 86, 58, 47, 71, 81, 83, 57, 59, 69, 67, 78, 50, 56, 60, 61, 73, 57, 65, 49, 57, 59, 61, 64, 58, 69, 53, 55, 58, 77, 93, 65, 53, 58, 58, 64, 54, 75, 57, 73, 72, 87, 46, 68, 63, 120, 47, 78, 75, 86, 55, 55, 60, 41, 68, 53, 51, 70, 61, 50, 52, 85, 51, 69, 88, 71, 77, 88, 71, 63, 48, 112, 62, 72, 69, 63, 82, 71, 71, 81, 52, 78, 55, 52, 55, 66, 65, 66, 62, 79, 65, 62, 65, 65, 52, 74, 65, 79, 62, 57, 56, 51, 59, 54, 42, 65, 102, 76, 72, 58, 76, 82, 43, 124, 59, 51, 67, 74, 64, 77, 62, 56, 116, 75, 78, 73, 66, 75, 78, 84, 35, 71, 59, 68, 60, 54, 64, 67, 61, 65, 63, 49, 64, 70, 82, 54, 96, 74, 57, 54, 51, 68, 93, 50, 73, 57, 55, 71, 72, 85, 78, 54, 62, 64, 81, 41, 68, 76, 51, 76, 65, 59, 70, 49, 76, 53, 75, 56, 70, 69, 72, 73, 67, 58, 53, 88, 71, 75, 69, 52, 72, 50, 69, 62, 70, 62, 91, 68, 44, 81, 47, 61, 75, 74, 72, 69, 73, 54, 64, 77, 51, 59, 49, 52, 76, 68, 74, 64, 53, 52, 49, 90, 66, 57, 49, 70, 57, 71, 65, 74, 97, 82, 80, 66, 50, 95, 80, 67, 80, 67, 131, 44, 45, 58, 80, 84, 61, 70, 71, 47, 56, 74, 73, 47, 71, 55, 71, 57, 95, 59, 54, 63, 99, 74, 58, 68, 70, 82, 62, 61, 60, 82, 42, 66, 112, 49, 77, 70, 58, 80, 62, 99, 88, 84, 54, 63, 49, 80, 69, 71, 54, 64, 57, 65, 68, 62, 53, 45, 64, 50, 61, 76, 72, 64, 64, 56, 80, 48, 61, 53, 71, 62, 68, 52, 95, 69, 62, 74, 71, 57, 85, 85, 61, 59, 68, 51, 58, 68, 61, 62, 62, 68, 54, 68, 57, 71, 64, 67, 59, 64, 72, 56, 50, 62, 72, 88, 85, 57, 61, 48, 59, 81, 85, 87, 81, 74, 76, 67, 54, 81, 47, 74, 63, 69, 63, 84, 61, 87, 54, 65, 52, 68, 53, 58, 65, 77, 53, 74, 63, 62, 53, 74, 67, 75, 62, 54, 73, 55, 71, 53, 79, 87, 54, 68, 84, 38, 70, 63, 71, 71, 75, 59, 69, 70, 77, 79, 61, 83, 81, 60, 64, 65, 55, 67, 51, 55, 55, 76, 56, 75, 69, 58, 54, 85, 62, 64, 101, 69, 68, 66, 66, 64, 77, 84, 71, 67, 77, 51, 62, 56, 84, 52, 58, 54, 45, 66, 66, 64, 91, 73, 74, 82, 57, 60, 77, 59, 81, 58, 71, 58, 64, 51, 69, 68, 101, 72, 45, 62, 58, 70, 63, 61, 65, 70, 60, 86, 58, 72, 52, 68, 77, 74, 63, 63, 66, 72, 82, 70, 68, 63, 59, 64, 50, 62, 73, 54, 48, 59, 56, 71, 70, 66, 74, 70, 77, 66, 55, 68, 56, 58, 54, 40, 68, 120, 83, 60, 59, 58, 51, 64, 57, 59, 55, 69, 62, 63, 73, 55, 56, 72, 67, 66, 49, 59, 83, 63, 66, 99, 83, 61, 45, 60, 65, 57, 74, 49, 44, 50, 72, 57, 54, 73, 45, 67, 96, 68, 51, 61, 86, 69, 66, 122, 50, 66, 55, 52, 52, 65, 65, 57, 75, 55, 58, 66, 64, 67, 72, 83, 61, 54, 74, 88, 60, 70, 73, 84, 60, 72, 64, 63, 115, 66, 55, 47, 68, 67, 77, 78, 53, 52, 58, 71, 72, 70, 70, 77, 51, 51, 61, 74, 57, 66, 62, 65, 64, 71, 60, 58, 67, 49, 63, 64, 65, 56, 81, 49, 82, 55, 73, 80, 49, 64, 61, 65, 70, 76, 51, 62, 67, 79, 48, 66, 63, 52, 61, 112, 57, 48, 59, 71, 50, 84, 68, 73, 79, 63, 87, 56, 61, 52, 69, 47, 58, 58, 61, 65, 66, 56, 68, 59, 83, 74, 50, 74, 43, 79, 74, 70, 62, 46, 61, 73, 66, 59, 77, 67, 74, 94, 63, 59, 68, 45, 51, 69, 54, 57, 74, 60, 69, 52, 52, 66, 66, 49, 74, 71, 53, 64, 76, 62, 68, 70, 69, 56, 62, 59, 97, 58, 69, 78, 56, 60, 57, 84, 68, 49, 85, 59, 85, 63, 63, 82, 77, 61, 66, 67, 53, 71, 61, 59, 65, 68, 57, 83, 61, 54, 71, 66, 61, 60, 80, 65, 57, 44, 54, 55, 76, 54, 55, 67, 62, 62, 50, 74, 55, 70, 59, 41, 91, 50, 68, 73, 61, 39, 71, 69, 91, 85, 63, 64, 124, 68, 67, 65, 89, 61, 74, 37, 53, 90, 69, 85, 74, 41, 57, 69, 66, 73, 67, 61, 69, 59, 59, 59, 51, 94, 41, 85, 56, 66, 66, 54, 50, 47, 49, 63, 65, 90, 61, 72, 58, 71, 49, 72, 61, 56, 71, 92, 73, 58, 84, 52, 100, 54, 82, 64, 76, 72, 68, 73, 60, 67, 104, 60, 57, 65, 53, 56, 88, 70, 75, 59, 58, 44, 59, 51, 46, 88, 69, 57, 65, 63, 89, 61, 51, 66, 79, 67, 99, 57, 74, 56, 71, 66, 57, 84, 58, 66, 70, 77, 64, 56, 59, 79, 48, 73, 81, 79, 68, 72, 57, 72, 59, 76, 68, 55, 58, 72, 72, 55, 50, 50, 59, 66, 49, 80, 74, 50, 84, 51, 73, 72, 55, 67, 71, 49, 53, 47, 66, 71, 75, 121, 67, 74, 67, 60, 56, 55, 64, 66, 80, 65, 66, 71, 61, 67, 47, 102, 49, 47, 76, 93, 50, 79, 50, 68, 56, 56, 68, 69, 97, 73, 81, 83, 65, 95, 57, 60, 61, 71, 64, 67, 68, 65, 75, 89, 83, 55, 99, 63, 55, 57, 66, 56, 55, 87, 88, 53, 78, 68, 64, 62, 81, 83, 64, 57, 56, 68, 61, 56, 58, 73, 47, 78, 65, 64, 59, 66, 56, 52, 64, 49, 79, 60, 88, 67, 56, 96, 42, 70, 110, 49, 62, 77, 68, 66, 67, 70, 59, 62, 77, 65, 62, 52, 50, 53, 57, 64, 81, 67, 64, 71, 86, 62, 55, 66, 94, 63, 55, 56, 74, 64, 65, 93, 65, 64, 68, 60, 71, 56, 48, 66, 119, 77, 63, 83, 63, 66, 68, 59, 75, 59, 80, 76, 42, 51, 70, 65, 63, 62, 48, 61, 63, 79, 64, 70, 63, 66, 72, 65, 65, 60, 65, 101, 40, 63, 44, 54, 69, 55, 48, 53, 73, 68, 79, 70, 68, 85, 64, 56, 55, 59, 53, 59, 53, 76, 64, 62, 59, 51, 69, 82, 60, 58, 62, 73, 59, 67, 78, 64, 56, 86, 70, 64, 99, 49, 56, 71, 66, 74, 51, 59, 67, 68, 52, 60, 51, 92, 53, 81, 72, 68, 70, 72, 143, 84, 60, 55, 91, 58, 78, 48, 58, 70, 73, 60, 75, 69, 54, 61, 65, 64, 52, 87, 75, 56, 89, 85, 61, 78, 56, 70, 71, 52, 52, 64, 71, 49, 68, 62, 63, 56, 69, 48, 90, 64, 59, 77, 58, 75, 76, 48, 67, 58, 50, 57, 75, 94, 69, 48, 76, 66, 62, 75, 53, 65, 54, 77, 71, 93, 62, 52, 45, 76, 71, 54, 80, 64, 58, 58, 75, 73, 109, 48, 100, 46, 175, 64, 75, 66, 51, 45, 54, 68, 48, 73, 61, 72, 79, 36, 67, 58, 59, 61, 63, 61, 61, 68, 50, 70, 74, 57, 72, 67, 44, 66, 67, 62, 58, 67, 91, 68, 80, 71, 78, 78, 74, 62, 67, 43, 59, 55, 64, 83, 63, 73, 52, 54, 73, 84, 71, 49, 74, 65, 48, 48, 68, 96, 52, 59, 78, 61, 72, 40, 49, 56, 53, 63, 49, 60, 64, 56, 72, 50, 75, 59, 68, 54, 82, 56, 59, 63, 76, 83, 57, 45, 64, 66, 55, 67, 69, 57, 71, 59, 55, 62, 48, 68, 55, 57, 45, 59, 76, 48, 74, 53, 81, 102, 58, 104, 61, 57, 60, 59, 83, 49, 54, 57, 46, 77, 45, 56, 42, 51, 51, 47, 61, 48, 62, 57, 64, 53, 64, 70, 65, 39, 59, 87, 88, 75, 102, 53, 53, 71, 69, 80, 57, 73, 47, 69, 71, 102, 64, 42, 73, 51, 59, 83, 58, 74, 58, 98, 58, 81, 48, 52, 98, 61, 76, 71, 47, 73, 51, 62, 70, 60, 66, 76, 69, 59, 97, 55, 58, 67, 65, 54, 48, 65, 53, 78, 61, 76, 51, 81, 49, 79, 84, 64, 63, 51, 71, 77, 69, 76, 77, 84, 72, 76, 72, 79, 68, 76, 62, 92, 85, 59, 81, 73, 60, 67, 47, 71, 67, 111, 51, 64, 60, 96, 68, 79, 59, 49, 57, 86, 44, 67, 77, 54, 57, 69, 53, 72, 75, 66, 67, 53, 77, 66, 66, 82, 77, 54, 54, 74, 71, 58, 63, 53, 59, 58, 63, 62, 52, 90, 66, 62, 72, 65, 60, 62, 60, 73, 78, 44, 60, 64, 58, 66, 66, 52, 74, 44, 67, 64, 63, 79, 61, 59, 50, 69, 51, 67, 76, 76, 57, 60, 69, 55, 80, 73, 59, 57, 71, 66, 61, 91, 66, 83, 60, 65, 58, 47, 55, 73, 61, 90, 99, 79, 71, 53, 69, 75, 83, 65, 81, 79, 46, 57, 61, 71, 62, 69, 53, 56, 81, 75, 66, 62, 112, 85, 70, 81, 59, 81, 42, 77, 66, 52, 65, 86, 58, 45, 126, 58, 55, 58, 52, 45, 41, 62, 69, 92, 58, 81, 66, 82, 63, 71, 59, 64, 66, 61, 72, 60, 64, 53, 48, 90, 59, 71, 74, 49, 60, 81, 79, 53, 57, 101, 49, 73, 75, 63, 72, 69, 64, 67, 52, 72, 100, 73, 105, 62, 66, 75, 55, 53, 93, 58, 69, 41, 41, 61, 58, 79, 73, 73, 64, 50, 52, 69, 60, 80, 66, 57, 53, 71, 62, 62, 79, 35, 82, 56, 61, 63, 61, 59, 76, 73, 65, 68, 46, 71, 82, 74, 77, 57, 64, 72, 59, 51, 94, 63, 70, 58, 86, 89, 84, 59, 73, 63, 57, 59, 70, 64, 74, 59, 68, 50, 60, 44, 59, 68, 70, 61, 68, 54, 67, 46, 89, 68, 54, 70, 70, 48, 46, 59, 61, 71, 67, 79, 72, 64, 58, 54, 73, 105, 69, 65, 60, 61, 65, 58, 56, 59, 69, 57, 53, 59, 37, 55, 73, 56, 77, 118, 66, 53, 51, 63, 77, 45, 54, 71, 83, 60, 70, 49, 71, 105, 58, 69, 84, 112, 75, 80, 77, 70, 74, 55, 75, 66, 58, 72, 60, 66, 56, 60, 58, 73, 63, 60, 56, 79, 62, 58, 59, 57, 69, 46, 65, 73, 81, 46, 55, 50, 46, 92, 63, 57, 60, 54, 71, 50, 49, 62, 74, 76, 69, 70, 77, 57, 52, 59, 53, 66, 50, 62, 69, 62, 65, 58, 67, 68, 55, 42, 85, 51, 87, 65, 65, 49, 61, 68, 85, 64, 78, 71, 74, 59, 58, 49, 34, 65, 58, 46, 71, 71, 58, 69, 100, 40, 71, 79, 47, 82, 71, 91, 95, 51, 66, 54, 80, 68, 43, 97, 58, 50, 56, 91, 57, 51, 61, 83, 48, 50, 103, 64, 71, 58, 51, 79, 68, 85, 59, 56, 64, 67, 58, 71, 65, 78, 75, 47, 66, 48, 62, 77, 100, 49, 56, 57, 79, 52, 72, 64, 87, 96, 68, 67, 57, 58, 70, 60, 66, 58, 73, 69, 59, 49, 69, 55, 59, 54, 71, 56, 53, 78, 56, 56, 63, 60, 101, 53, 67, 67, 79, 48, 47, 57, 67, 62, 60, 68, 64, 76, 99, 62, 49, 70, 67, 63, 49, 97, 53, 76, 69, 72, 77, 56, 57, 55, 67, 59, 76, 64, 60, 49, 61, 87, 72, 76, 112, 62, 76, 63, 52, 72, 69, 98, 72, 85, 64, 59, 59, 72, 49, 79, 57, 62, 56, 71, 71, 60, 57, 71, 60, 54, 48, 52, 86, 60, 63, 66, 67, 64, 74, 64, 70, 74, 55, 68, 67, 55, 57, 45, 66, 78, 67, 54, 46, 49, 63, 46, 81, 70, 55, 63, 55, 80, 58, 84, 61, 81, 91, 57, 83, 72, 61, 71, 64, 78, 67, 60, 85, 67, 64, 74, 50, 50, 54, 63, 77, 67, 67, 69, 46, 50, 68, 67, 56, 72, 42, 70, 60, 69, 74, 65, 58, 72, 75, 61, 67, 44, 79, 58, 66, 66, 85, 64, 50, 66, 72, 52, 59, 59, 62, 60, 88, 73, 77, 73, 60, 99, 63, 95, 57, 75, 70, 55, 58, 61, 31, 41, 67, 49, 65, 56, 65, 52, 80, 71, 59, 66, 39, 59, 78, 43, 73, 106, 53, 68, 61, 74, 60, 81, 66, 74, 61, 76, 63, 70, 57, 55, 58, 80, 60, 60, 57, 69, 48, 68, 47, 49, 65, 66, 76, 55, 60, 76, 140, 83, 66, 63, 61, 65, 60, 62, 64, 69, 65, 79, 64, 76, 69, 62, 59, 49, 72, 48, 66, 93, 58, 94, 71, 59, 69, 82, 51, 64, 57, 56, 65, 63, 50, 68, 71, 63, 70, 55, 47, 64, 62, 63, 104, 63, 56, 72, 71, 56, 55, 67, 64, 53, 59, 49, 54, 48, 67, 91, 73, 48, 72, 68, 68, 94, 53, 55, 77, 64, 49, 64, 65, 40, 56, 76, 62, 76, 69, 61, 58, 65, 34, 57, 82, 87, 75, 51, 71, 96, 79, 72, 55, 57, 55, 106, 76, 81, 53, 83, 73, 75, 61, 64, 72, 59, 45, 62, 51, 62, 63, 87, 59, 59, 69, 46, 72, 89, 87, 63, 66, 68, 60, 50, 47, 72, 79, 55, 60, 55, 59, 61, 103, 74, 70, 66, 50, 62, 91, 92, 84, 45, 43, 80, 55, 69, 56, 55, 37, 111, 75, 52, 85, 75, 93, 75, 53, 64, 39, 75, 59, 59, 66, 76, 119, 52, 58, 76, 52, 78, 60, 58, 73, 55, 62, 54, 72, 110, 66, 91, 75, 52, 52, 71, 65, 64, 49, 73, 64, 77, 61, 76, 72, 66, 80, 60, 53, 52, 83, 68, 55, 70, 42, 62, 75, 71, 53, 72, 66, 86, 71, 48, 79, 48, 59, 75, 68, 77, 81, 49, 61, 53, 72, 82, 59, 63, 85, 64, 67, 62, 68, 61, 79, 69, 80, 69, 68, 76, 50, 66, 69, 51, 57, 79, 75, 73, 82, 57, 51, 67, 63, 40, 65, 84, 60, 68, 52, 95, 60, 83, 69, 56, 81, 57, 56, 40, 70, 63, 48, 67, 70, 65, 63, 57, 37, 66, 62, 75, 70, 87, 60, 53, 68, 66, 60, 75, 69, 96, 73, 59, 67, 64, 64, 70, 89, 65, 73, 53, 64, 65, 60, 74, 68, 81, 58, 75, 58, 66, 64, 91, 101, 81, 60, 69, 67, 72, 67, 61, 70, 67, 49, 71, 91, 89, 63, 73, 39, 61, 46, 69, 67, 74, 164, 98, 61, 63, 62, 73, 75, 60, 71, 72, 52, 66, 52, 80, 61, 60, 78, 75, 51, 63, 77, 62, 84, 57, 90, 70, 47, 60, 65, 74, 57, 61, 50, 75, 62, 30, 90, 48, 81, 56, 75, 57, 80, 77, 62, 57, 56, 62, 82, 72, 58, 68, 38, 59, 54, 85, 48, 74, 66, 45, 54, 77, 65, 55, 79, 75, 53, 58, 59, 72, 99, 75, 72, 61, 53, 74, 59, 53, 62, 55, 59, 67, 61, 64, 101, 61, 54, 92, 64, 68, 61, 65, 68, 112, 63, 78, 52, 56, 59, 93, 49, 63, 60, 58, 62, 54, 61, 68, 72, 138, 62, 87, 54, 57, 55, 85, 49, 61, 82, 77, 64, 68, 56, 65, 58, 56, 66, 64, 79, 93, 68, 55, 52, 68, 40, 59, 66, 54, 59, 57, 79, 64, 52, 51, 49, 74, 75, 110, 68, 67, 67, 73, 63, 62, 64, 55, 78, 70, 69, 55, 62, 77, 57, 59, 59, 58, 68, 43, 55, 69, 79, 80, 52, 54, 78, 66, 68, 52, 71, 55, 60, 66, 55, 36, 64, 85, 70, 52, 57, 63, 149, 61, 52, 66, 52, 65, 50, 56, 72, 56, 76, 61, 68, 58, 98, 66, 60, 63, 70, 75, 89, 85, 62, 80, 65, 86, 65, 65, 40, 48, 84, 72, 55, 59, 68, 98, 56, 59, 62, 65, 78, 70, 52, 56, 63, 55, 82, 61, 60, 54, 77, 98, 69, 53, 72, 59, 69, 59, 70, 65, 72, 74, 71, 46, 47, 57, 67, 39, 66, 100, 78, 41, 65, 93, 77, 67, 58, 55, 93, 59, 55, 55, 65, 77, 95, 64, 68, 57, 66, 79, 73, 60, 53, 57, 64, 73, 75, 56, 42, 71, 79, 63, 73, 43, 67, 81, 66, 65, 69, 83, 88, 79, 60, 78, 90, 70, 73, 63, 50, 69, 59, 52, 73, 64, 68, 84, 62, 74, 53, 71, 82, 68, 54, 68, 91, 70, 49, 87, 62, 59, 61, 90, 47, 73, 74, 78, 60, 59, 69, 59, 58, 56, 58, 53, 75, 119, 68, 64, 96, 59, 49, 51, 57, 66, 55, 72, 73, 41, 72, 74, 60, 53, 84, 59, 56, 62, 74, 53, 61, 66, 101, 80, 73, 64, 62, 77, 58, 50, 63, 69, 63, 46, 100, 83, 69, 48, 76, 66, 60, 54, 43, 71, 75, 53, 55, 83, 51, 77, 63, 55, 55, 74, 59, 67, 82, 63, 63, 71, 64, 72, 51, 84, 54, 64, 55, 81, 90, 57, 68, 71, 73, 70, 102, 47, 52, 94, 56, 67, 48, 47, 57, 55, 50, 81, 59, 64, 53, 50, 71, 69, 70, 60, 60, 51, 67, 52, 84, 55, 51, 50, 62, 57, 63, 57, 60, 110, 48, 58, 73, 85, 61, 68, 59, 55, 68, 46, 79, 98, 99, 54, 74, 83, 68, 66, 49, 67, 40, 61, 40, 70, 65, 66, 58, 63, 55, 90, 64, 72, 73, 48, 64, 43, 60, 37, 68, 79, 50, 69, 64, 58, 66, 64, 49, 62, 71, 76, 72, 77, 52, 92, 49, 51, 79, 57, 56, 68, 64, 63, 74, 114, 54, 67, 60, 78, 76, 55, 80, 56, 46, 45, 61, 63, 85, 60, 83, 70, 65, 72, 62, 58, 53, 84, 60, 85, 74, 65, 73, 50, 92, 69, 58, 63, 84, 56, 62, 70, 57, 48, 74, 77, 70, 59, 77, 69, 70, 72, 55, 51, 71, 50, 49, 46, 73, 73, 53, 48, 61, 74, 73, 62, 64, 67, 71, 54, 72, 70, 82, 53, 69, 65, 46, 81, 53, 50, 49, 83, 59, 64, 44, 64, 73, 54, 62, 83, 64, 82, 71, 67, 55, 57, 73, 99, 62, 46, 78, 66, 82, 67, 65, 42, 57, 85, 60, 81, 78, 63, 84, 62, 64, 69, 40, 68, 76, 65, 61, 62, 69, 51, 63, 59, 71, 67, 52, 84, 83, 66, 67, 59, 85, 63, 89, 64, 52, 84, 87, 53, 68, 96, 60, 79, 61, 63, 61, 92, 67, 43, 65, 54, 52, 96, 68, 53, 54, 56, 60, 66, 84, 68, 50, 69, 67, 77, 47, 64, 63, 86, 69, 56, 121, 51, 63, 78, 61, 41, 56, 59, 82, 61, 55, 71, 71, 63, 88, 79, 71, 68, 63, 120, 67, 55, 65, 52, 66, 78, 77, 57, 66, 78, 69, 76, 55, 50, 83, 69, 68, 58, 61, 61, 64, 69, 53, 70, 73, 72, 62, 64, 64, 72, 60, 39, 58, 54, 59, 39, 56, 47, 58, 62, 67, 65, 74, 56, 76, 76, 64, 67, 58, 80, 55, 72, 78, 84, 59, 75, 55, 71, 67, 69, 52, 64, 66, 74, 53, 26, 88, 53, 66, 61, 51, 54, 65, 81, 63, 79, 101, 57, 61, 75, 97, 84, 45, 64, 69, 64, 60, 73, 51, 71, 83, 54, 68, 52, 68, 62, 49, 96, 121, 67, 60, 60, 71, 61, 56, 52, 62, 62, 65, 54, 56, 69, 52, 47, 54, 61, 52, 94, 66, 72, 53, 64, 39, 51, 59, 69, 104, 79, 62, 82, 68, 62, 49, 55, 64, 69, 58, 79, 40, 63, 74, 76, 50, 57, 80, 80, 71, 69, 55, 99, 63, 68, 80, 66, 54, 62, 55, 72, 71, 62, 64, 77, 49, 52, 86, 85, 51, 66, 79, 67, 53, 50, 75, 43, 67, 70, 67, 67, 69, 70, 51, 62, 103, 57, 78, 51, 71, 75, 61, 89, 69, 69, 63, 78, 68, 46, 47, 63, 70, 52, 80, 83, 62, 49, 59, 65, 68, 60, 55, 84, 87, 52, 55, 58, 64, 74, 73, 62, 124, 67, 65, 75, 89, 72, 82, 80, 61, 77, 59, 56, 55, 73, 65, 103, 87, 75, 59, 63, 79, 73, 78, 68, 59, 75, 63, 57, 53, 58, 54, 50, 71, 68, 84, 96, 67, 53, 51, 67, 57, 72, 57, 58, 53, 57, 57, 65, 71, 84, 69, 98, 55, 48, 83, 100, 66, 55, 57, 101, 49, 78, 82, 72, 57, 71, 48, 55, 60, 63, 106, 56, 65, 57, 55, 71, 61, 49, 73, 68, 83, 56, 72, 44, 53, 55, 59, 60, 80, 66, 58, 80, 69, 63, 120, 63, 87, 51, 79, 55, 58, 52, 52, 67, 63, 72, 57, 72, 64, 60, 77, 59, 50, 79, 78, 57, 61, 56, 62, 70, 50, 53, 69, 63, 47, 73, 56, 49, 53, 48, 68, 70, 73, 64, 80, 72, 50, 57, 79, 54, 68, 64, 49, 70, 75, 57, 56, 71, 56, 80, 76, 102, 43, 39, 60, 75, 67, 73, 51, 117, 65, 91, 54, 91, 59, 66, 69, 62, 73, 41, 61, 69, 84, 74, 77, 99, 81, 76, 76, 55, 89, 82, 71, 64, 71, 71, 61, 46, 57, 76, 94, 83, 49, 73, 68, 67, 52, 46, 89, 72, 65, 85, 66, 51, 79, 53, 65, 65, 61, 83, 70, 58, 62, 58, 62, 70, 77, 68, 88, 54, 76, 67, 86, 62, 69, 79, 98, 56, 86, 55, 76, 72, 58, 68, 94, 40, 67, 70, 47, 55, 87, 96, 64, 68, 49, 52, 70, 64, 45, 54, 69, 93, 57, 90, 66, 80, 77, 55, 46, 52, 55, 97, 62, 66, 54, 45, 65, 51, 98, 49, 62, 85, 53, 64, 70, 83, 59, 72, 94, 58, 59, 69, 74, 90, 62, 74, 63, 69, 78, 61, 59, 54, 62, 55, 56, 76, 83, 53, 70, 56, 49, 57, 83, 83, 53, 55, 65, 64, 41, 62, 65, 69, 63, 72, 73, 62, 55, 50, 72, 62, 82, 60, 65, 49, 67, 67, 56, 67, 70, 46, 55, 69, 54, 79, 76, 78, 58, 49, 64, 82, 59, 61, 63, 40, 81, 49, 42, 65, 75, 57, 61, 60, 66, 69, 59, 73, 51, 75, 64, 70, 77, 55, 50, 56, 82, 78, 76, 66, 52, 78, 58, 89, 45, 50, 69, 62, 89, 48, 47, 76, 107, 52, 70, 75, 74, 79, 61, 60, 54, 45, 68, 58, 90, 54, 68, 63, 88, 53, 78, 66, 73, 51, 95, 69, 69, 65, 61, 68, 42, 49, 58, 80, 59, 78, 67, 75, 81, 67, 53, 56, 71, 68, 77, 64, 84, 58, 66, 74, 51, 56, 65, 99, 59, 65, 54, 61, 54, 77, 51, 67, 58, 70, 67, 58, 80, 72, 71, 70, 54, 77, 77, 72, 60, 71, 51, 50, 54, 72, 63, 65, 77, 75, 81, 101, 78, 89, 48, 84, 138, 67, 54, 67, 101, 73, 56, 56, 49, 58, 61, 73, 71, 72, 80, 74, 63, 47, 61, 69, 73, 55, 68, 66, 75, 37, 52, 107, 76, 63, 64, 66, 72, 85, 72, 62, 64, 66, 60, 78, 73, 64, 59, 54, 51, 68, 56, 59, 56, 83, 61, 68, 50, 59, 55, 76, 97, 60, 73, 74, 64, 44, 95, 90, 71, 59, 100, 50, 65, 66, 60, 46, 64, 62, 82, 58, 102, 64, 65, 66, 108, 71, 66, 61, 60, 70, 82, 73, 48, 60, 63, 100, 52, 76, 50, 62, 74, 66, 74, 57, 88, 93, 65, 64, 57, 76, 72, 55, 48, 74, 52, 62, 55, 73, 49, 53, 64, 81, 76, 54, 78, 77, 64, 83, 51, 75, 60, 63, 66, 53, 60, 89, 74, 95, 74, 51, 46, 63, 71, 47, 59, 59, 54, 87, 77, 52, 57, 68, 71, 73, 53, 53, 60, 66, 72, 53, 46, 51, 53, 55, 49, 79, 71, 59, 56, 73, 54, 65, 56, 56, 102, 69, 86, 45, 72, 107, 52, 58, 60, 79, 64, 86, 74, 58, 73, 69, 65, 63, 70, 63, 71, 58, 52, 61, 56, 50, 63, 73, 70, 67, 53, 53, 47, 71, 62, 74, 70, 74, 65, 38, 59, 58, 84, 70, 64, 43, 70, 53, 49, 61, 80, 85, 52, 51, 64, 79, 82, 64, 65, 46, 90, 53, 38, 78, 59, 71, 55, 57, 49, 60, 72, 64, 64, 102, 67, 69, 54, 81, 44, 76, 54, 67, 70, 53, 79, 72, 63, 57, 59, 61, 79, 91, 66, 72, 91, 70, 70, 113, 63, 75, 55, 54, 64, 67, 58, 86, 62, 46, 60, 79, 40, 68, 53, 68, 63, 46, 93, 62, 62, 60, 90, 44, 53, 52, 56, 38, 70, 52, 58, 64, 56, 61, 82, 67, 91, 70, 67, 64, 76, 56, 58, 76, 69, 67, 84, 69, 62, 48, 49, 55, 80, 72, 60, 60, 69, 52, 53, 72, 66, 50, 57, 47, 72, 62, 69, 54, 80, 60, 56, 64, 52, 86, 67, 52, 62, 63, 97, 71, 70, 76, 59, 51, 83, 65, 67, 61, 58, 73, 60, 72, 71, 78, 71, 64, 56, 62, 63, 57, 53, 99, 58, 75, 66, 72, 71, 57, 46, 64, 73, 73, 71, 59, 73, 82, 66, 84, 72, 67, 46, 63, 56, 56, 56, 80, 52, 80, 66, 56, 70, 59, 67, 65, 47, 47, 41, 51, 60, 82, 74, 75, 89, 61, 64, 102, 63, 106, 59, 56, 42, 63, 55, 61, 61, 63, 50, 47, 61, 58, 51, 59, 59, 58, 90, 58, 75, 61, 51, 63, 92, 76, 87, 60, 60, 87, 92, 67, 64, 59, 55, 50, 52, 69, 51, 90, 77, 75, 69, 55, 104, 53, 67, 73, 60, 82, 61, 58, 76, 58, 58, 57, 65, 47, 80, 51, 69, 69, 44, 93, 53, 46, 70, 77, 80, 75, 90, 75, 80, 67, 47, 57, 54, 57, 72, 74, 67, 71, 78, 58, 57, 59, 45, 48, 55, 81, 77, 90, 57, 62, 54, 60, 77, 47, 65, 69, 70, 80, 91, 77, 55, 73, 57, 54, 56, 46, 95, 58, 57, 59, 59, 64, 66, 62, 60, 78, 73, 79, 63, 82, 81, 61, 50, 56, 75, 68, 75, 62, 59, 74, 62, 79, 47, 58, 70, 64, 69, 66, 58, 54, 40, 71, 64, 61, 71, 50, 92, 74, 52, 74, 108, 78, 63, 51, 66, 60, 83, 93, 96, 70, 67, 67, 71, 77, 57, 70, 70, 50, 65, 50, 55, 74, 71, 68, 68, 54, 66, 67, 103, 71, 55, 63, 71, 90, 41, 68, 84, 115, 76, 73, 71, 67, 65, 74, 77, 74, 53, 57, 39, 74, 67, 55, 67, 75, 61, 53, 74, 69, 44, 58, 99, 50, 64, 76, 58, 66, 45, 69, 49, 63, 56, 54, 83, 81, 87, 58, 84, 62, 81, 72, 75, 73, 87, 54, 52, 78, 102, 66, 84, 76, 72, 62, 48, 69, 56, 80, 66, 64, 59, 66, 67, 72, 50, 83, 72, 67, 68, 43, 61, 67, 51, 67, 60, 58, 54, 74, 80, 56, 55, 61, 98, 71, 52, 44, 65, 71, 50, 55, 70, 57, 44, 59, 83, 55, 53, 56, 64, 76, 55, 98, 61, 111, 66, 49, 52, 74, 65, 55, 64, 78, 56, 79, 80, 48, 54, 61, 64, 67, 62, 57, 76, 53, 65, 54, 52, 89, 57, 75, 59, 68, 77, 59, 79, 47, 65, 51, 58, 77, 44, 62, 93, 53, 74, 47, 47, 42, 57, 58, 72, 64, 41, 81, 76, 52, 67, 48, 75, 95, 47, 62, 51, 71, 55, 52, 80, 56, 66, 54, 59, 70, 81, 81, 99, 111, 79, 70, 66, 68, 71, 83, 55, 70, 57, 68, 50, 82, 55, 54, 57, 59, 109, 75, 59, 55, 67, 68, 65, 78, 50, 54, 55, 54, 68, 57, 81, 92, 65, 65, 39, 69, 87, 74, 53, 66, 51, 77, 70, 47, 81, 43, 59, 71, 55, 53, 64, 65, 64, 65, 55, 37, 80, 67, 52, 80, 89, 47, 51, 76, 60, 83, 68, 63, 67, 52, 49, 68, 96, 56, 57, 63, 73, 82, 59, 71, 42, 68, 66, 58, 60, 55, 59, 70, 80, 71, 64, 63, 89, 78, 67, 86, 76, 58, 57, 51, 70, 59, 122, 70, 87, 73, 59, 50, 80, 68, 74, 59, 52, 52, 55, 62, 69, 67, 77, 76, 67, 67, 71, 71, 62, 64, 58, 58, 70, 61, 46, 73, 50, 71, 130, 76, 81, 77, 80, 52, 64, 100, 71, 72, 63, 58, 79, 60, 62, 69, 61, 69, 65, 74, 73, 58, 75, 61, 44, 56, 72, 66, 80, 43, 67, 59, 79, 106, 69, 73, 59, 76, 36, 52, 73, 45, 68, 70, 76, 66, 65, 78, 80, 66, 62, 64, 61, 59, 63, 43, 81, 57, 58, 49, 55, 68, 66, 51, 71, 58, 70, 64, 61, 63, 42, 62, 64, 54, 55, 51, 72, 56, 69, 55, 54, 64, 47, 72, 51, 61, 45, 75, 60, 77, 74, 62, 76, 64, 66, 72, 48, 53, 43, 84, 60, 74, 59, 75, 51, 63, 62, 74, 79, 60, 68, 43, 80, 69, 58, 83, 81, 44, 70, 87, 49, 71, 73, 64, 67, 55, 69, 70, 68, 51, 48, 65, 67, 82, 62, 48, 71, 106, 74, 65, 61, 53, 89, 62, 67, 71, 70, 46, 57, 53, 54, 64, 53, 99, 72, 100, 67, 58, 94, 54, 54, 49, 75, 51, 87, 72, 67, 77, 52, 58, 57, 46, 79, 108, 56, 63, 71, 56, 78, 68, 59, 49, 80, 66, 60, 63, 103, 54, 58, 65, 39, 53, 77, 48, 67, 55, 60, 71, 53, 66, 46, 73, 75, 63, 52, 73, 79, 101, 55, 73, 61, 65, 83, 77, 55, 84, 63, 47, 59, 52, 59, 61, 76, 58, 91, 60, 56, 69, 69, 56, 82, 68, 48, 50, 77, 53, 65, 69, 91, 70, 76, 65, 78, 84, 55, 62, 65, 64, 53, 72, 74, 49, 67, 64, 55, 56, 55, 53, 63, 71, 47, 39, 64, 143, 69, 63, 81, 66, 80, 85, 54, 83, 62, 71, 58, 69, 64, 66, 72, 56, 73, 81, 74, 59, 81, 51, 75, 50, 84, 88, 77, 64, 72, 89, 83, 73, 56, 58, 73, 77, 97, 77, 64, 67, 58, 69, 46, 74, 72, 94, 72, 56, 53, 59, 68, 63, 74, 87, 48, 65, 58, 57, 52, 66, 70, 57, 69, 65, 71, 89, 57, 63, 117, 73, 71, 72, 55, 61, 63, 61, 71, 80, 81, 76, 65, 89, 61, 64, 62, 83, 46, 77, 65, 63, 66, 69, 74, 51, 61, 52, 57, 66, 56, 59, 70, 66, 55, 63, 61, 65, 72, 48, 53, 63, 55, 63, 61, 70, 51, 51, 64, 84, 76, 75, 67, 70, 82, 73, 48, 70, 67, 41, 54, 65, 52, 75, 51, 66, 45, 51, 79, 72, 75, 94, 54, 71, 61, 58, 71, 57, 78, 57, 69, 75, 60, 65, 56, 61, 49, 55, 74, 57, 195, 50, 73, 56, 48, 68, 69, 61, 94, 58, 69, 64, 72, 81, 63, 53, 74, 54, 66, 57, 46, 98, 63, 60, 84, 70, 67, 49, 59, 69, 84, 90, 81, 79, 61, 66, 55, 79, 71, 48, 63, 68, 53, 63, 50, 66, 58, 76, 46, 59, 67, 62, 47, 75, 79, 65, 62, 64, 56, 53, 70, 70, 71, 75, 54, 56, 80, 56, 47, 69, 60, 56, 66, 55, 76, 63, 63, 60, 53, 70, 69, 60, 59, 53, 40, 60, 51, 71, 51, 78, 80, 48, 77, 122, 84, 70, 63, 61, 54, 67, 65, 67, 49, 122, 72, 76, 72, 83, 68, 69, 57, 69, 82, 63, 86, 72, 52, 65, 61, 88, 75, 44, 52, 53, 56, 76, 87, 74, 67, 45, 83, 82, 60, 89, 53, 86, 63, 62, 94, 59, 71, 71, 74, 44, 55, 56, 71, 77, 80, 60, 118, 81, 60, 68, 74, 61, 67, 78, 59, 71, 82, 81, 73, 58, 53, 95, 61, 67, 70, 70, 73, 53, 82, 74, 51, 97, 90, 68, 56, 52, 80, 80, 71, 63, 56, 62, 49, 78, 75, 88, 78, 63, 54, 74, 69, 60, 57, 74, 53, 63, 96, 73, 60, 74, 81, 67, 64, 39, 82, 44, 54, 62, 70, 73, 69, 80, 53, 80, 43, 77, 60, 37, 89, 47, 63, 52, 68, 52, 61, 67, 70, 58, 52, 65, 74, 58, 50, 50, 50, 52, 60, 67, 95, 70, 72, 52, 63, 78, 58, 49, 59, 44, 55, 58, 44, 64, 57, 60, 85, 66, 41, 49, 50, 67, 57, 67, 66, 61, 76, 53, 44, 68, 49, 66, 87, 47, 54, 60, 84, 54, 55, 94, 64, 61, 43, 73, 76, 81, 50, 34, 78, 77, 166, 42, 84, 87, 85, 31, 56, 41, 64, 77, 61, 50, 59, 46, 74, 66, 87, 69, 59, 98, 81, 70, 83, 81, 78, 49, 61, 48, 47, 56, 66, 70, 68, 52, 73, 50, 72, 53, 70, 55, 59, 58, 57, 53, 62, 53, 82, 54, 71, 78, 72, 52, 69, 49, 65, 62, 94, 95, 73, 72, 43, 66, 72, 48, 53, 57, 77, 78, 64, 89, 41, 65, 77, 64, 65, 42, 126, 54, 72, 95, 72, 65, 58, 51, 56, 53, 70, 59, 70, 73, 63, 51, 60, 58, 68, 74, 62, 69, 64, 76, 68, 72, 46, 69, 82, 62, 58, 58, 76, 124, 49, 101, 57, 66, 58, 73, 83, 69, 84, 84, 47, 62, 56, 46, 64, 70, 62, 73, 56, 63, 66, 44, 69, 54, 57, 59, 69, 65, 90, 76, 61, 54, 62, 56, 73, 55, 68, 57, 76, 62, 67, 65, 70, 65, 63, 66, 58, 62, 89, 86, 62, 57, 56, 37, 73, 75, 48, 47, 90, 61, 73, 67, 51, 48, 52, 50, 100, 63, 59, 65, 47, 69, 121, 57, 73, 75, 91, 60, 73, 33, 49, 73, 86, 52, 81, 43, 55, 54, 75, 73, 41, 83, 61, 65, 47, 81, 47, 68, 63, 55, 60, 45, 69, 66, 57, 53, 83, 52, 70, 58, 66, 111, 72, 66, 82, 65, 56, 62, 73, 71, 66, 88, 58, 91, 79, 54, 110, 49, 85, 54, 109, 73, 89, 54, 33, 58, 41, 46, 76, 45, 67, 52, 51, 84, 103, 81, 70, 39, 47, 67, 78, 62, 67, 77, 75, 67, 78, 68, 79, 131, 50, 81, 67, 76, 84, 59, 120, 49, 50, 75, 37, 63, 67, 50, 87, 58, 33, 79, 58, 61, 98, 69, 56, 44, 53, 70, 64, 66, 64, 63, 65, 64, 40, 71, 54, 62, 43, 48, 88, 78, 67, 75, 91, 66, 77, 94, 58, 50, 77, 95, 75, 72, 51, 78, 64, 98, 59, 53, 78, 117, 42, 78, 98, 59, 54, 56, 68, 55, 53, 71, 96, 63, 51, 50, 66, 60, 68, 59, 60, 34, 66, 77, 58, 101, 71, 79, 54, 49, 83, 72, 60, 34, 58, 50, 60, 49, 69, 56, 84, 72, 51, 88, 71, 47, 76, 63, 102, 84, 65, 57, 108, 67, 46, 59, 35, 68, 76, 78, 73, 69, 81, 83, 58, 58, 67, 65, 72, 55, 83, 57, 85, 100, 47, 51, 70, 69, 89, 102, 85, 67, 58, 56, 70, 77, 56, 97, 62, 24, 64, 62, 76, 38, 59, 65, 100, 52, 67, 82, 59, 70, 39, 75, 56, 74, 73, 67, 70, 75, 58, 88, 50, 59, 108, 67, 51, 52, 38, 107, 71, 57, 68, 46, 75, 65, 95, 49, 70, 88, 59, 69, 76, 64, 58, 54, 57, 62, 78, 44, 70, 84, 81, 79, 96, 67, 77, 56, 69, 55, 54, 71, 82, 89, 70, 71, 36, 38, 58, 62, 81, 76, 62, 61, 34, 53, 77, 60, 47, 75, 64, 60, 78, 79, 76, 102, 69, 66, 89, 51, 78, 73, 78, 92, 85, 79, 103, 60, 56, 71, 100, 87, 59, 51, 64, 80, 49, 57, 74, 57, 58, 57, 62, 82, 61, 51, 63, 60, 72, 41, 57, 82, 63, 63, 83, 86, 85, 50, 58, 61, 69, 71, 74, 84, 87, 56, 74, 69, 78, 63, 61, 74, 48, 112, 66, 65, 98, 60, 73, 62, 85, 74, 56, 50, 45, 60, 56, 75, 72, 68, 69, 85, 56, 53, 55, 61, 66, 39, 88, 72, 61, 76, 90, 82, 69, 69, 47, 66, 42, 57, 80, 63, 54, 61, 59, 87, 134, 71, 63, 73, 60, 81, 50, 82, 75, 34, 58, 38, 85, 65, 83, 85, 95, 72, 72, 55, 62, 64, 64, 117, 64, 102, 52, 74, 51, 61, 52, 66, 72, 63, 71, 84, 63, 67, 78, 46, 142, 45, 69, 57, 41, 59, 59, 55, 59, 73, 42, 72, 62, 71, 79, 76, 86, 107, 90, 75, 67, 50, 65, 51, 49, 40, 63, 63, 57, 56, 70, 66, 59, 69, 50, 45, 58, 62, 67, 55, 75, 58, 64, 73, 58, 88, 51, 72, 80, 59, 69, 63, 62, 45, 34, 60, 51, 91, 71, 74, 64, 43, 71, 67, 69, 63, 122, 42, 77, 59, 62, 69, 72, 66, 63, 72, 68, 60, 102, 73, 62, 76, 78, 49, 52, 51, 47, 121, 63, 65, 44, 54, 57, 59, 62, 68, 65, 69, 55, 100, 73, 67, 55, 44, 62, 45, 60, 78, 82, 76, 148, 89, 63, 69, 48, 53, 65, 74, 82, 53, 66, 70, 54, 64, 81, 83, 100, 41, 59, 61, 53, 77, 69, 66, 80, 85, 49, 47, 88, 54, 55, 77, 59, 75, 46, 45, 64, 61, 90, 55, 77, 76, 81, 67, 44, 51, 63, 67, 66, 45, 40, 86, 53, 52, 77, 54, 62, 61, 112, 78, 92, 73, 48, 63, 61, 43, 74, 63, 116, 75, 44, 61, 67, 39, 62, 65, 73, 75, 53, 76, 72, 72, 66, 48, 59, 78, 62, 90, 70, 58, 59, 63, 52, 61, 58, 47, 96, 67, 59, 59, 71, 52, 43, 55, 54, 76, 91, 64, 78, 63, 80, 77, 50, 53, 69, 46, 90, 65, 67, 97, 67, 58, 51, 63, 62, 50, 57, 40, 53, 59, 84, 75, 59, 69, 55, 58, 85, 91, 56, 59, 65, 83, 53, 50, 79, 48, 62, 40, 76, 74, 71, 92, 62, 73, 78, 92, 79, 63, 87, 83, 64, 69, 54, 40, 46, 82, 96, 54, 43, 72, 66, 55, 69, 56, 75, 68, 54, 71, 75, 100, 83, 58, 43, 130, 57, 57, 44, 67, 47, 43, 65, 59, 49, 55, 104, 67, 62, 49, 78, 100, 76, 75, 87, 63, 53, 66, 63, 60, 53, 69, 51, 78, 90, 68, 65, 69, 72, 72, 66, 43, 52, 50, 65, 88, 78, 61, 64, 65, 72, 71, 71, 56, 48, 67, 77, 56, 64, 63, 64, 57, 79, 78, 91, 51, 62, 67, 58, 97, 65, 62, 68, 50, 62, 51, 58, 73, 54, 82, 58, 48, 66, 53, 114, 83, 64, 78, 69, 88, 79, 56, 61, 82, 82, 67, 70, 65, 57, 85, 77, 65, 103, 57, 62, 78, 61, 62, 60, 85, 56, 66, 63, 72, 66, 96, 59, 58, 53, 45, 49, 70, 65, 59, 44, 54, 60, 62, 63, 73, 58, 90, 58, 72, 54, 78, 66, 59, 62, 60, 81, 72, 76, 40, 57, 64, 55, 60, 71, 60, 68, 53, 63, 48, 66, 59, 71, 59, 85, 73, 61, 60, 66, 78, 65, 66, 69, 71, 56, 70, 54, 51, 42, 51, 63, 67, 82, 60, 40, 78, 62, 55, 56, 67, 84, 61, 71, 67, 75, 74, 78, 64, 63, 66, 53, 59, 63, 71, 79, 79, 64, 58, 54, 57, 122, 50, 64, 58, 57, 37, 55, 57, 58, 77, 60, 95, 71, 51, 72, 79, 57, 60, 71, 66, 79, 56, 65, 77, 65, 62, 60, 122, 61, 70, 66, 62, 68, 60, 65, 78, 53, 66, 65, 72, 49, 58, 60, 53, 74, 54, 88, 73, 54, 56, 68, 54, 69, 99, 68, 69, 65, 69, 60, 48, 70, 56, 73, 73, 73, 58, 73, 66, 53, 64, 64, 76, 60, 57, 72, 66, 46, 55, 69, 63, 47, 55, 56, 69, 52, 68, 59, 72, 65, 45, 56, 62, 40, 43, 63, 66, 78, 53, 65, 53, 61, 101, 66, 62, 56, 54, 68, 63, 47, 73, 60, 73, 57, 73, 46, 53, 56, 58, 61, 72, 68, 61, 63, 71, 54, 63, 55, 57, 72, 50, 76, 54, 68, 66, 38, 70, 72, 53, 70, 78, 53, 66, 63, 85, 60, 54, 63, 85, 67, 60, 113, 70, 58, 74, 61, 54, 69, 52, 75, 56, 55, 75, 55, 71, 64, 54, 55, 54, 56, 72, 62, 71, 61, 101, 62, 62, 56, 62, 60, 62, 82, 60, 55, 52, 61, 55, 51, 82, 91, 65, 65, 61, 54, 53, 69, 59, 76, 70, 59, 72, 73, 54, 60, 56, 56, 44, 66, 116, 69, 56, 63, 66, 51, 57, 61, 93, 61, 58, 42, 63, 64, 60, 73, 81, 204, 66, 82, 75, 60, 41, 48, 54, 50, 67, 64, 72, 70, 60, 55, 58, 47, 57, 55, 55, 56, 71, 116, 48, 50, 76, 63, 68, 71, 73, 71, 78, 52, 57, 60, 61, 49, 49, 71, 53, 52, 62, 65, 87, 54, 55, 59, 51, 65, 56, 62, 48, 61, 60, 64, 70, 58, 50, 57, 80, 50, 67, 55, 57, 61, 61, 64, 59, 78, 77, 61, 61, 71, 65, 63, 66, 85, 55, 48, 84, 107, 55, 73, 54, 77, 79, 74, 62, 60, 66, 53, 74, 58, 55, 57, 62, 62, 63, 84, 86, 58, 75, 49, 53, 61, 60, 64, 58, 72, 90, 79, 76, 83, 60, 61, 83, 57, 64, 71, 51, 70, 51, 58, 54, 75, 60, 69, 59, 78, 68, 67, 65, 51, 73, 76, 76, 49, 55, 53, 67, 67, 59, 85, 62, 54, 51, 56, 70, 72, 94, 71, 63, 54, 74, 77, 54, 63, 51, 59, 59, 74, 65, 61, 70, 64, 57, 70, 73, 61, 64, 61, 64, 57, 58, 52, 51, 64, 66, 52, 73, 47, 67, 65, 61, 49, 58, 59, 54, 112, 58, 60, 87, 90, 76, 67, 101, 68, 78, 59, 62, 55, 78, 72, 76, 73, 72, 71, 60, 72, 70, 66, 78, 68, 54, 70, 64, 57, 71, 65, 64, 62, 102, 77, 54, 66, 62, 60, 82, 64, 74, 98, 76, 82, 57, 65, 57, 51, 47, 41, 89, 83, 74, 82, 55, 67, 95, 97, 63, 60, 56, 82, 62, 63, 50, 79, 63, 107, 63, 71, 72, 65, 53, 92, 67, 68, 52, 54, 79, 55, 57, 67, 52, 85, 61, 73, 73, 86, 59, 77, 59, 53, 61, 68, 60, 61, 55, 57, 71, 82, 57, 69, 63, 67, 59, 70, 76, 77, 84, 72, 70, 60, 64, 79, 55, 48, 62, 61, 74, 72, 64, 60, 67, 58, 73, 50, 60, 74, 57, 60, 69, 64, 65, 65, 65, 57, 71, 82, 64, 58, 63, 50, 62, 58, 47, 80, 62, 59, 68, 53, 113, 64, 52, 43, 62, 73, 53, 66, 62, 58, 45, 57, 73, 76, 55, 66, 66, 63, 53, 63, 65, 63, 74, 71, 78, 96, 53, 63, 60, 75, 53, 66, 51, 59, 64, 73, 70, 82, 58, 74, 58, 84, 56, 72, 68, 83, 74, 74, 83, 41, 65, 65, 66, 45, 63, 64, 61, 63, 83, 56, 84, 67, 71, 75, 58, 64, 74, 52, 56, 48, 55, 75, 101, 59, 58, 62, 68, 55, 75, 68, 56, 69, 51, 60, 62, 72, 74, 48, 65, 81, 75, 67, 63, 49, 59, 95, 68, 66, 38, 62, 58, 60, 59, 63, 71, 80, 72, 62, 91, 61, 57, 68, 67, 89, 62, 64, 48, 55, 67, 60, 72, 63, 74, 60, 66, 56, 51, 73, 53, 58, 74, 71, 80, 55, 56, 63, 69, 80, 141, 73, 67, 149, 54, 78, 85, 62, 67, 58, 61, 74, 70, 61, 72, 74, 53, 86, 78, 56, 48, 54, 53, 78, 68, 55, 71, 65, 91, 72, 60, 59, 54, 52, 46, 62, 80, 60, 56, 58, 64, 65, 62, 72, 62, 82, 52, 68, 83, 58, 106, 63, 59, 91, 84, 62, 80, 69, 66, 72, 58, 65, 52, 52, 60, 54, 77, 77, 80, 55, 82, 56, 65, 75, 53, 62, 68, 56, 75, 54, 51, 86, 70, 112, 82, 42, 71, 74, 86, 60, 63, 73, 54, 61, 64, 68, 69, 73, 72, 64, 78, 55, 55, 56, 59, 78, 61, 63, 86, 51, 44, 66, 85, 63, 66, 70, 85, 79, 69, 56, 54, 128, 63, 64, 63, 64, 67, 77, 60, 63, 63, 46, 64, 62, 53, 80, 68, 59, 54, 54, 78, 56, 61, 66, 53, 64, 70, 59, 46, 79, 50, 61, 77, 77, 112, 77, 77, 86, 68, 40, 56, 61, 95, 95, 82, 75, 63, 68, 57, 70, 71, 70, 68, 84, 55, 62, 68, 53, 74, 60, 50, 53, 67, 77, 48, 59, 63, 64, 96, 66, 80, 67, 53, 71, 57, 61, 65, 77, 56, 44, 67, 76, 59, 71, 62, 78, 91, 70, 63, 64, 57, 73, 69, 44, 51, 54, 62, 49, 63, 62, 61, 96, 75, 103, 76, 67, 62, 52, 53, 57, 41, 67, 96, 70, 67, 58, 70, 75, 48, 60, 57, 53, 79, 68, 65, 51, 76, 104, 53, 109, 62, 66, 57, 59, 62, 61, 52, 113, 43, 58, 65, 49, 57, 60, 82, 54, 74, 53, 55, 51, 91, 59, 91, 66, 72, 73, 62, 67, 67, 70, 74, 63, 59, 71, 54, 59, 64, 67, 54, 66, 56, 68, 46, 68, 65, 44, 53, 55, 65, 86, 72, 61, 62, 65, 81, 52, 52, 71, 50, 85, 81, 28, 54, 88, 58, 70, 42, 61, 65, 64, 57, 84, 59, 66, 72, 64, 53, 61, 64, 66, 75, 63, 70, 57, 61, 64, 56, 42, 56, 56, 53, 56, 68, 92, 63, 47, 57, 84, 68, 83, 62, 62, 69, 79, 75, 74, 57, 80, 52, 70, 58, 56, 69, 56, 77, 60, 55, 49, 48, 59, 76, 64, 60, 54, 46, 77, 58, 78, 67, 79, 62, 57, 67, 59, 73, 52, 54, 66, 59, 55, 64, 46, 74, 61, 84, 52, 53, 51, 68, 77, 52, 73, 55, 53, 60, 53, 49, 79, 60, 63, 62, 72, 59, 56, 61, 64, 60, 87, 71, 74, 58, 74, 64, 60, 52, 67, 105, 62, 57, 62, 63, 64, 60, 70, 74, 79, 65, 55, 56, 71, 62, 70, 60, 67, 60, 66, 70, 82, 67, 68, 77, 60, 72, 58, 61, 86, 61, 74, 64, 59, 67, 67, 83, 53, 69, 75, 73, 49, 59, 67, 50, 63, 61, 61, 65, 51, 63, 66, 53, 90, 45, 66, 67, 78, 78, 45, 62, 55, 62, 70, 56, 62, 63, 78, 55, 65, 65, 72, 46, 64, 48, 61, 58, 63, 76, 54, 50, 60, 72, 82, 63, 53, 55, 75, 63, 47, 61, 71, 107, 76, 77, 71, 65, 85, 51, 53, 55, 88, 80, 67, 56, 88, 56, 50, 59, 76, 65, 60, 66, 62, 55, 67, 56, 50, 72, 67, 51, 68, 61, 71, 76, 72, 67, 79, 62, 61, 80, 76, 81, 61, 68, 80, 74, 52, 69, 52, 80, 57, 65, 66, 58, 83, 68, 52, 73, 69, 54, 67, 43, 60, 45, 64, 55, 91, 60, 65, 59, 68, 64, 73, 64, 59, 54, 63, 57, 62, 66, 64, 86, 61, 54, 81, 71, 68, 49, 53, 52, 59, 102, 72, 43, 75, 66, 63, 80, 52, 69, 96, 59, 36, 68, 67, 56, 76, 68, 58, 59, 96, 63, 52, 72, 62, 55, 60, 65, 49, 60, 72, 65, 80, 70, 48, 73, 69, 72, 63, 51, 61, 70, 58, 81, 73, 72, 63, 76, 61, 88, 60, 41, 58, 62, 57, 57, 63, 47, 58, 76, 59, 96, 73, 64, 59, 83, 61, 66, 69, 61, 77, 77, 82, 51, 108, 88, 55, 51, 61, 52, 60, 53, 75, 60, 73, 65, 57, 52, 52, 91, 61, 79, 75, 33, 66, 59, 96, 88, 57, 61, 65, 51, 105, 55, 82, 68, 71, 61, 65, 61, 69, 68, 82, 55, 56, 61, 75, 61, 56, 67, 54, 60, 47, 96, 66, 69, 67, 54, 50, 67, 49, 76, 59, 52, 83, 76, 66, 54, 66, 68, 72, 54, 67, 60, 93, 79, 60, 57, 64, 81, 52, 70, 58, 69, 66, 63, 49, 66, 68, 63, 62, 50, 63, 69, 57, 57, 81, 57, 45, 82, 76, 56, 56, 75, 58, 73, 53, 90, 55, 47, 76, 37, 68, 106, 61, 61, 62, 93, 59, 73, 52, 72, 42, 75, 46, 73, 67, 63, 73, 70, 164, 55, 52, 56, 89, 86, 87, 72, 64, 84, 66, 47, 51, 68, 61, 43, 55, 90, 54, 63, 61, 59, 58, 109, 95, 45, 70, 84, 58, 58, 60, 77, 56, 64, 55, 80, 60, 55, 76, 76, 77, 50, 84, 64, 73, 71, 45, 41, 69, 76, 63, 57, 57, 73, 71, 118, 77, 61, 63, 64, 69, 60, 51, 84, 62, 61, 63, 55, 62, 75, 62, 74, 65, 61, 61, 54, 52, 56, 68, 69, 64, 50, 79, 73, 63, 57, 74, 60, 60, 68, 62, 57, 55, 59, 62, 108, 67, 55, 63, 64, 65, 90, 76, 61, 75, 61, 88, 55, 74, 68, 62, 67, 79, 66, 62, 65, 63, 70, 64, 61, 75, 77, 63, 70, 70, 79, 115, 67, 85, 61, 73, 76, 69, 58, 57, 64, 81, 61, 84, 78, 69, 64, 75, 78, 55, 79, 73, 65, 87, 72, 60, 77, 65, 52, 83, 71, 71, 97, 98, 73, 65, 58, 75, 70, 75, 58, 78, 87, 128, 71, 51, 56, 80, 75, 66, 57, 59, 128, 78, 48, 75, 56, 63, 66, 54, 63, 58, 119, 70, 82, 71, 61, 38, 59, 56, 71, 57, 77, 62, 67, 66, 62, 62, 47, 59, 71, 74, 62, 64, 74, 59, 64, 65, 71, 63, 60, 69, 67, 56, 63, 58, 41, 46, 72, 115, 56, 65, 56, 67, 100, 79, 69, 58, 62, 66, 47, 55, 79, 62, 72, 39, 56, 73, 80, 76, 74, 60, 94, 60, 60, 66, 71, 67, 59, 62, 57, 78, 61, 60, 50, 67, 65, 53, 50, 78, 74, 72, 71, 66, 90, 67, 66, 70, 75, 48, 66, 69, 54, 62, 53, 78, 75, 67, 61, 51, 72, 70, 62, 84, 68, 76, 45, 72, 54, 69, 69, 63, 64, 85, 90, 100, 59, 101, 63, 82, 67, 43, 67, 54, 55, 57, 72, 77, 101, 68, 60, 96, 61, 35, 48, 62, 53, 73, 83, 75, 54, 67, 75, 79, 92, 52, 57, 60, 52, 55, 62, 54, 85, 59, 84, 54, 81, 103, 78, 58, 59, 47, 66, 59, 68, 95, 61, 76, 148, 45, 87, 102, 70, 54, 73, 70, 76, 99, 78, 83, 69, 60, 52, 73, 72, 69, 68, 47, 65, 92, 50, 96, 68, 44, 72, 57, 56, 68, 83, 53, 66, 63, 67, 59, 40, 53, 72, 72, 70, 36, 83, 59, 63, 54, 93, 57, 84, 71, 76, 64, 65, 87, 65, 81, 69, 43, 53, 86, 82, 64, 62, 50, 53, 65, 52, 84, 83, 60, 60, 57, 58, 80, 57, 44, 66, 95, 69, 72, 65, 63, 95, 62, 61, 91, 70, 51, 51, 57, 65, 52, 59, 76, 74, 59, 53, 63, 45, 97, 69, 44, 125, 66, 60, 69, 51, 79, 75, 99, 52, 57, 44, 65, 74, 66, 56, 46, 74, 60, 61, 70, 114, 66, 57, 50, 64, 59, 44, 65, 67, 79, 63, 44, 59, 70, 73, 69, 62, 85, 55, 67, 76, 60, 57, 79, 59, 42, 63, 84, 47, 58, 82, 51, 59, 71, 72, 88, 44, 75, 78, 60, 66, 70, 78, 86, 70, 58, 86, 56, 75, 80, 46, 59, 57, 74, 70, 45, 69, 64, 76, 72, 55, 69, 57, 72, 55, 62, 71, 73, 74, 62, 59, 57, 67, 75, 52, 73, 58, 71, 65, 84, 68, 48, 69, 82, 63, 78, 56, 48, 78, 51, 74, 69, 52, 74, 61, 69, 56, 55, 55, 57, 46, 62, 54, 57, 43, 70, 70, 59, 40, 64, 89, 79, 64, 73, 60, 48, 58, 57, 63, 89, 44, 100, 71, 62, 63, 55, 46, 35, 107, 60, 60, 73, 72, 68, 52, 62, 92, 60, 84, 68, 48, 76, 106, 53, 102, 67, 49, 71, 47, 56, 60, 65, 77, 71, 115, 58, 77, 75, 76, 68, 69, 87, 79, 57, 89, 68, 68, 59, 58, 65, 62, 58, 59, 95, 82, 70, 65, 58, 78, 59, 63, 82, 50, 79, 61, 56, 78, 54, 59, 64, 46, 65, 68, 55, 61, 64, 89, 70, 75, 68, 67, 67, 76, 80, 62, 61, 56, 60, 62, 69, 53, 60, 75, 59, 55, 61, 75, 68, 53, 72, 55, 48, 79, 53, 88, 55, 54, 68, 79, 77, 70, 40, 72, 82, 81, 68, 24, 55, 52, 55, 104, 75, 46, 54, 92, 90, 77, 52, 53, 74, 53, 80, 88, 82, 90, 71, 69, 76, 76, 80, 63, 48, 69, 59, 56, 84, 62, 60, 52, 97, 64, 76, 65, 53, 82, 62, 92, 84, 57, 69, 48, 84, 65, 51, 60, 67, 88, 86, 47, 86, 54, 90, 48, 91, 61, 46, 81, 56, 56, 50, 77, 73, 82, 39, 53, 57, 71, 63, 54, 72, 78, 93, 78, 69, 62, 76, 65, 86, 53, 55, 76, 51, 58, 93, 53, 70, 60, 85, 86, 56, 54, 64, 77, 36, 74, 49, 81, 94, 72, 75, 51, 65, 65, 55, 86, 62, 55, 68, 85, 65, 80, 45, 78, 55, 67, 75, 60, 67, 43, 72, 97, 79, 52, 92, 53, 46, 52, 59, 53, 33, 89, 73, 77, 54, 72, 129, 64, 52, 65, 69, 86, 52, 75, 48, 103, 66, 59, 64, 60, 54, 56, 33, 78, 66, 79, 57, 52, 75, 81, 61, 54, 58, 62, 77, 63, 99, 73, 52, 52, 62, 52, 61, 79, 77, 79, 91, 72, 64, 56, 77, 41, 73, 84, 53, 46, 65, 52, 88, 36, 61, 66, 70, 66, 40, 54, 59, 47, 60, 42, 57, 82, 59, 58, 57, 69, 118, 52, 65, 55, 43, 89, 68, 61, 72, 66, 62, 92, 77, 65, 76, 43, 66, 68, 51, 59, 64, 89, 114, 45, 77, 59, 72, 75, 67, 70, 87, 52, 58, 83, 48, 87, 60, 69, 80, 44, 69, 66, 90, 55, 52, 50, 58, 59, 71, 53, 70, 89, 57, 64, 68, 43, 54, 62, 82, 40, 59, 37, 59, 63, 62, 93, 76, 57, 69, 50, 72, 59, 60, 82, 58, 65, 72, 60, 59, 78, 74, 71, 50, 93, 55, 63, 52, 66, 46, 43, 69, 50, 58, 68, 70, 61, 51, 44, 31, 48, 65, 80, 50, 45, 62, 71, 46, 58, 58, 79, 70, 53, 109, 55, 62, 58, 67, 65, 117, 71, 60, 79, 72, 103, 37, 46, 70, 67, 79, 92, 75, 83, 54, 57, 66, 83, 96, 50, 72, 59, 70, 58, 70, 53, 70, 75, 83, 46, 77, 57, 129, 68, 118, 80, 76, 53, 100, 58, 79, 59, 69, 68, 80, 73, 67, 59, 78, 66, 65, 57, 40, 63, 62, 70, 73, 61, 68, 54, 60, 70, 46, 74, 51, 81, 79, 71, 63, 66, 60, 69, 54, 58, 49, 60, 58, 76, 46, 45, 67, 62, 54, 60, 67, 47, 54, 45, 67, 66, 58, 85, 87, 140, 57, 73, 47, 63, 63, 55, 76, 88, 66, 62, 63, 82, 45, 63, 73, 57, 42, 79, 72, 54, 96, 65, 81, 71, 67, 61, 66, 59, 59, 50, 63, 75, 56, 63, 76, 92, 64, 50, 65, 65, 64, 58, 81, 101, 62, 95, 35, 78, 59, 54, 71, 55, 78, 81, 85, 79, 49, 65, 49, 75, 73, 70, 44, 68, 60, 62, 63, 72, 47, 86, 58, 69, 64, 61, 59, 50, 68, 72, 50, 62, 57, 64, 65, 58, 51, 53, 51, 80, 56, 53, 80, 53, 86, 127, 50, 98, 92, 49, 80, 61, 67, 102, 55, 52, 56, 126, 64, 67, 73, 57, 47, 55, 62, 86, 57, 46, 53, 53, 46, 69, 64, 63, 68, 53, 67, 75, 74, 88, 58, 71, 73, 53, 43, 66, 50, 101, 62, 72, 65, 63, 64, 59, 54, 42, 68, 69, 58, 65, 59, 58, 56, 55, 42, 93, 74, 95, 55, 70, 54, 61, 51, 68, 51, 60, 91, 56, 72, 49, 86, 63, 45, 55, 57, 79, 56, 63, 74, 63, 59, 71, 68, 66, 86, 85, 71, 77, 85, 73, 65, 72, 66, 60, 64, 80, 57, 61, 58, 50, 66, 68, 65, 50, 50, 66, 64, 52, 73, 68, 71, 57, 102, 69, 51, 84, 47, 56, 59, 81, 73, 80, 74, 37, 71, 64, 131, 66, 45, 96, 63, 56, 55, 66, 58, 58, 59, 56, 90, 60, 58, 60, 67, 67, 53, 63, 92, 61, 64, 54, 55, 81, 66, 59, 58, 57, 66, 54, 62, 64, 75, 76, 67, 63, 86, 82, 80, 55, 39, 51, 49, 82, 57, 72, 56, 67, 48, 62, 69, 77, 57, 66, 67, 57, 70, 61, 84, 63, 70, 70, 60, 66, 51, 59, 96, 68, 47, 69, 77, 48, 56, 79, 80, 79, 76, 73, 57, 52, 64, 47, 62, 65, 75, 50, 79, 65, 42, 50, 45, 72, 76, 93, 51, 57, 47, 58, 83, 59, 109, 38, 53, 58, 96, 63, 70, 72, 63, 71, 115, 62, 49, 50, 69, 52, 56, 48, 64, 57, 45, 88, 56, 69, 88, 66, 67, 57, 66, 47, 84, 66, 67, 56, 88, 69, 87, 54, 81, 51, 56, 53, 60, 95, 58, 74, 59, 78, 78, 62, 80, 58, 74, 63, 72, 71, 94, 63, 73, 70, 69, 82, 60, 49, 97, 96, 65, 72, 57, 54, 51, 58, 59, 54, 59, 57, 49, 68, 61, 67, 80, 57, 74, 79, 65, 66, 58, 61, 70, 57, 74, 51, 64, 55, 61, 55, 65, 66, 54, 70, 78, 81, 66, 51, 62, 57, 73, 57, 62, 59, 48, 75, 60, 62, 78, 63, 56, 58, 83, 61, 121, 94, 52, 103, 79, 59, 57, 60, 42, 57, 52, 63, 59, 86, 50, 79, 63, 82, 58, 66, 60, 66, 110, 58, 62, 57, 60, 53, 76, 46, 68, 49, 77, 42, 68, 55, 65, 50, 71, 64, 65, 80, 62, 82, 103, 56, 63, 62, 62, 81, 61, 73, 52, 128, 60, 61, 60, 57, 59, 52, 81, 69, 61, 53, 61, 83, 44, 98, 50, 66, 63, 68, 63, 47, 63, 68, 56, 49, 54, 92, 66, 66, 78, 76, 74, 51, 77, 71, 70, 62, 82, 59, 79, 54, 84, 83, 63, 55, 74, 52, 64, 60, 85, 87, 49, 57, 63, 90, 76, 63, 63, 84, 43, 64, 69, 62, 73, 69, 49, 55, 54, 70, 78, 67, 51, 47, 51, 67, 79, 82, 59, 61, 89, 83, 49, 75, 55, 56, 87, 64, 77, 70, 48, 58, 82, 121, 52, 34, 82, 67, 68, 49, 73, 67, 89, 69, 62, 59, 48, 46, 55, 53, 53, 59, 39, 79, 81, 69, 99, 61, 68, 59, 53, 70, 60, 45, 61, 62, 49, 61, 68, 69, 69, 74, 87, 39, 49, 50, 62, 70, 48, 74, 53, 56, 78, 72, 70, 54, 60, 52, 69, 74, 75, 60, 67, 56, 79, 51, 91, 50, 52, 64, 65, 75, 78, 73, 66, 68, 85, 64, 58, 84, 72, 81, 54, 50, 87, 70, 82, 70, 70, 55, 38, 61, 58, 96, 68, 63, 65, 57, 65, 60, 61, 57, 39, 53, 77, 64, 81, 54, 60, 82, 84, 80, 69, 63, 55, 75, 46, 81, 61, 108, 71, 53, 56, 56, 43, 81, 64, 63, 67, 68, 60, 77, 94, 50, 63, 71, 65, 63, 68, 75, 86, 61, 62, 69, 62, 75, 49, 63, 58, 72, 61, 69, 59, 68, 49, 90, 67, 64, 97, 65, 53, 74, 67, 56, 58, 88, 62, 66, 55, 60, 65, 59, 89, 64, 56, 64, 60, 89, 111, 37, 62, 53, 62, 73, 54, 70, 79, 58, 58, 73, 130, 91, 92, 51, 65, 68, 67, 63, 62, 59, 58, 75, 73, 51, 73, 115, 55, 70, 85, 87, 77, 49, 61, 49, 50, 58, 54, 85, 73, 52, 60, 69, 46, 48, 78, 63, 65, 51, 62, 61, 67, 58, 77, 50, 82, 49, 72, 46, 57, 68, 100, 71, 63, 47, 61, 58, 77, 80, 74, 68, 68, 53, 36, 71, 76, 74, 123, 83, 93, 72, 54, 42, 89, 79, 52, 40, 55, 66, 64, 67, 63, 82, 71, 82, 66, 60, 70, 76, 30, 57, 93, 57, 67, 54, 72, 57, 52, 88, 76, 86, 59, 75, 69, 99, 67, 53, 67, 55, 86, 66, 65, 99, 52, 82, 84, 67, 60, 49, 75, 68, 57, 50, 64, 113, 73, 56, 90, 61, 56, 82, 61, 38, 62, 72, 87, 59, 59, 47, 80, 59, 58, 64, 70, 75, 54, 52, 72, 52, 57, 73, 139, 61, 82, 31, 46, 54, 51, 55, 60, 75, 58, 58, 87, 75, 50, 65, 59, 60, 66, 80, 51, 82, 77, 77, 70, 67, 78, 82, 69, 86, 74, 64, 70, 73, 77, 84, 46, 76, 78, 59, 70, 55, 66, 60, 67, 58, 56, 73, 60, 62, 66, 64, 66, 65, 69, 70, 53, 88, 67, 65, 26, 68, 64, 67, 62, 38, 84, 49, 69, 48, 61, 91, 78, 62, 59, 54, 60, 52, 60, 71, 70, 56, 71, 63, 61, 68, 74, 77, 76, 43, 84, 82, 70, 59, 46, 75, 55, 54, 51, 60, 80, 63, 65, 53, 65, 69, 105, 59, 91, 52, 74, 72, 51, 80, 62, 77, 56, 53, 54, 68, 62, 65, 58, 78, 62, 59, 73, 55, 79, 56, 65, 68, 71, 63, 54, 55, 73, 65, 61, 80, 71, 76, 47, 93, 63, 76, 81, 68, 45, 53, 67, 77, 121, 70, 56, 75, 98, 63, 38, 50, 48, 54, 62, 79, 61, 46, 75, 84, 78, 51, 55, 73, 46, 52, 80, 69, 61, 65, 52, 68, 73, 71, 76, 66, 76, 80, 87, 62, 73, 59, 84, 73, 67, 98, 62, 64, 75, 64, 90, 58, 65, 66, 71, 54, 69, 107, 40, 80, 116, 60, 57, 57, 72, 54, 59, 68, 71, 61, 56, 51, 55, 51, 66, 66, 66, 72, 59, 52, 58, 69, 66, 67, 96, 57, 71, 70, 110, 47, 39, 71, 52, 64, 53, 69, 65, 87, 65, 88, 55, 59, 61, 107, 74, 72, 60, 50, 53, 93, 59, 51, 47, 87, 76, 77, 66, 60, 64, 72, 67, 65, 66, 65, 67, 74, 59, 57, 37, 60, 65, 64, 71, 72, 49, 67, 63, 74, 68, 63, 77, 58, 62, 65, 79, 54, 67, 65, 51, 70, 67, 83, 45, 90, 56, 77, 64, 62, 58, 66, 68, 53, 72, 57, 66, 53, 47, 82, 79, 74, 75, 99, 62, 57, 94, 86, 64, 47, 68, 111, 71, 75, 94, 67, 72, 73, 68, 73, 64, 60, 62, 44, 73, 66, 82, 62, 58, 62, 70, 59, 46, 49, 58, 75, 63, 70, 70, 68, 63, 54, 52, 114, 74, 78, 115, 60, 59, 65, 59, 59, 100, 60, 52, 65, 73, 64, 60, 59, 67, 59, 48, 58, 63, 53, 55, 50, 61, 57, 67, 73, 56, 62, 60, 78, 57, 58, 65, 56, 62, 58, 84, 41, 69, 77, 55, 66, 71, 85, 80, 72, 51, 58, 62, 93, 84, 79, 57, 53, 61, 59, 48, 62, 60, 52, 64, 94, 62, 55, 62, 62, 55, 69, 68, 62, 55, 53, 63, 63, 64, 77, 86, 70, 50, 57, 74, 62, 51, 82, 69, 53, 53, 77, 57, 61, 94, 55, 68, 61, 86, 56, 84, 76, 72, 108, 64, 90, 76, 63, 77, 76, 50, 108, 57, 56, 61, 58, 45, 69, 54, 63, 70, 76, 94, 73, 61, 53, 74, 64, 52, 67, 60, 59, 53, 45, 49, 69, 68, 67, 67, 69, 56, 53, 60, 75, 51, 66, 64, 62, 79, 62, 71, 52, 80, 69, 57, 59, 50, 70, 60, 66, 72, 58, 81, 57, 70, 56, 50, 58, 69, 52, 67, 49, 59, 69, 54, 65, 88, 55, 63, 64, 52, 49, 63, 81, 71, 59, 75, 48, 49, 81, 61, 55, 62, 74, 84, 67, 65, 54, 89, 110, 76, 77, 83, 59, 70, 55, 74, 59, 58, 96, 64, 62, 63, 68, 56, 48, 59, 82, 52, 61, 56, 60, 62, 57, 54, 63, 74, 72, 88, 62, 60, 59, 48, 54, 75, 84, 78, 80, 56, 48, 46, 73, 70, 59, 60, 47, 105, 64, 66, 77, 53, 58, 60, 86, 81, 89, 60, 49, 56, 67, 53, 72, 87, 37, 33, 62, 63, 42, 85, 82, 62, 55, 75, 84, 62, 68, 58, 74, 68, 57, 60, 61, 71, 64, 80, 72, 50, 79, 81, 73, 78, 77, 76, 54, 81, 48, 49, 56, 75, 45, 62, 60, 65, 47, 71, 55, 51, 79, 41, 57, 64, 58, 65, 46, 60, 75, 62, 60, 44, 55, 45, 65, 76, 64, 73, 54, 62, 45, 66, 67, 102, 63, 82, 62, 50, 64, 60, 82, 89, 56, 59, 77, 73, 142, 64, 57, 51, 75, 54, 67, 97, 77, 94, 85, 92, 53, 79, 41, 55, 41, 60, 51, 53, 72, 60, 89, 74, 64, 78, 71, 79, 70, 52, 65, 99, 62, 47, 82, 57, 50, 53, 57, 69, 65, 68, 56, 76, 94, 69, 67, 52, 45, 47, 68, 82, 79, 60, 61, 73, 78, 58, 60, 71, 73, 69, 68, 88, 41, 64, 60, 77, 59, 66, 68, 58, 67, 96, 82, 62, 63, 70, 66, 74, 87, 68, 54, 65, 68, 54, 59, 92, 54, 47, 61, 64, 67, 60, 81, 52, 85, 93, 59, 65, 57, 59, 68, 74, 59, 52, 56, 66, 56, 57, 59, 68, 139, 60, 58, 54, 59, 61, 59, 55, 67, 100, 79, 96, 100, 61, 70, 67, 66, 78, 77, 68, 62, 90, 79, 64, 62, 70, 56, 48, 67, 67, 61, 73, 74, 56, 66, 74, 73, 52, 59, 47, 93, 68, 61, 53, 51, 61, 58, 64, 88, 62, 37, 65, 63, 59, 72, 67, 59, 56, 63, 58, 60, 54, 65, 87, 52, 62, 72, 50, 62, 76, 76, 48, 67, 72, 68, 54, 65, 52, 84, 54, 48, 70, 55, 73, 69, 76, 68, 81, 74, 61, 59, 67, 58, 75, 64, 98, 88, 65, 67, 69, 85, 72, 59, 89, 68, 63, 70, 51, 68, 52, 63, 69, 87, 64, 57, 50, 55, 64, 82, 60, 47, 70, 108, 61, 65, 86, 60, 62, 39, 76, 61, 60, 53, 71, 59, 73, 58, 63, 61, 58, 51, 49, 82, 75, 83, 63, 52, 59, 81, 71, 75, 61, 68, 67, 66, 89, 44, 60, 88, 79, 60, 72, 63, 60, 65, 66, 51, 90, 53, 70, 59, 67, 50, 64, 58, 54, 48, 57, 55, 59, 67, 58, 75, 62, 76, 75, 74, 52, 65, 62, 65, 51, 61, 73, 47, 59, 79, 51, 83, 83, 66, 67, 46, 135, 61, 43, 59, 53, 70, 72, 80, 73, 63, 69, 64, 82, 67, 56, 92, 68, 70, 73, 96, 71, 58, 60, 71, 55, 67, 42, 79, 55, 89, 45, 58, 62, 68, 91, 78, 71, 58, 67, 77, 63, 73, 58, 53, 71, 128, 67, 71, 75, 81, 64, 78, 48, 53, 65, 53, 66, 55, 65, 63, 65, 68, 63, 61, 56, 87, 70, 62, 72, 69, 57, 74, 51, 54, 64, 71, 69, 72, 51, 74, 49, 62, 64, 60, 65, 67, 51, 73, 70, 97, 60, 75, 50, 54, 58, 80, 44, 144, 93, 65, 57, 57, 64, 97, 95, 75, 63, 64, 79, 69, 77, 60, 62, 48, 51, 68, 70, 65, 73, 31, 76, 54, 79, 75, 76, 61, 75, 78, 66, 80, 58, 72, 47, 69, 55, 65, 56, 76, 61, 55, 66, 73, 57, 56, 78, 53, 61, 75, 93, 65, 64, 53, 78, 93, 77, 47, 81, 69, 65, 62, 36, 90, 60, 51, 92, 77, 62, 59, 54, 54, 54, 84, 69, 71, 65, 43, 60, 66, 60, 74, 75, 65, 66, 50, 64, 64, 94, 64, 60, 90, 84, 73, 60, 63, 96, 49, 65, 63, 76, 59, 67, 56, 75, 54, 51, 70, 38, 62, 87, 78, 70, 64, 51, 83, 95, 77, 85, 55, 57, 65, 88, 77, 65, 62, 79, 107, 60, 73, 48, 73, 59, 76, 47, 62, 56, 60, 63, 70, 53, 85, 64, 61, 82, 62, 61, 66, 72, 87, 67, 70, 58, 59, 67, 58, 64, 74, 81, 52, 75, 55, 61, 74, 61, 32, 65, 86, 62, 66, 49, 52, 76, 70, 73, 49, 74, 59, 124, 50, 69, 65, 56, 66, 83, 65, 68, 50, 71, 87, 65, 47, 70, 52, 62, 66, 49, 51, 109, 47, 72, 60, 91, 63, 70, 67, 67, 77, 59, 64, 99, 72, 83, 63, 63, 59, 66, 53, 62, 75, 70, 71, 59, 64, 61, 54, 52, 56, 60, 61, 53, 48, 68, 93, 52, 61, 58, 91, 79, 93, 77, 56, 81, 60, 66, 53, 56, 62, 55, 72, 96, 61, 69, 44, 82, 54, 65, 62, 137, 64, 52, 64, 45, 71, 76, 51, 76, 68, 69, 62, 62, 69, 66, 80, 54, 74, 54, 68, 66, 57, 57, 56, 68, 66, 55, 58, 52, 63, 50, 62, 64, 68, 70, 58, 72, 52, 53, 101, 83, 47, 57, 51, 68, 112, 47, 128, 72, 54, 53, 59, 58, 52, 70, 59, 70, 62, 55, 72, 74, 47, 67, 60, 75, 47, 71, 57, 58, 66, 90, 74, 54, 51, 70, 95, 82, 72, 110, 98, 59, 51, 52, 54, 65, 71, 60, 52, 65, 58, 58, 105, 63, 55, 61, 57, 64, 58, 50, 83, 69, 48, 51, 99, 90, 50, 100, 69, 60, 59, 73, 62, 79, 69, 69, 73, 67, 54, 69, 55, 67, 46, 50, 61, 67, 65, 55, 69, 63, 91, 73, 66, 62, 106, 73, 71, 70, 59, 52, 63, 70, 56, 57, 74, 67, 69, 62, 57, 79, 79, 53, 62, 78, 59, 47, 43, 84, 36, 58, 86, 67, 51, 75, 60, 75, 60, 79, 59, 83, 89, 65, 80, 67, 72, 56, 66, 56, 39, 65, 59, 78, 48, 59, 77, 79, 51, 62, 62, 46, 74, 90, 73, 49, 56, 56, 55, 69, 60, 58, 94, 62, 47, 76, 68, 81, 37, 52, 80, 71, 51, 64, 84, 73, 60, 55, 47, 76, 72, 66, 71, 41, 81, 55, 53, 101, 70, 76, 60, 42, 59, 47, 61, 53, 76, 98, 74, 63, 43, 84, 43, 60, 53, 63, 57, 58, 42, 68, 69, 63, 52, 78, 64, 63, 80, 65, 80, 95, 56, 72, 48, 77, 78, 61, 54, 75, 43, 86, 61, 58, 76, 59, 59, 70, 34, 75, 58, 63, 61, 61, 63, 83, 70, 67, 69, 64, 72, 54, 92, 77, 54, 66, 123, 59, 53, 75, 76, 56, 54, 71, 59, 66, 63, 87, 62, 44, 67, 64, 64, 99, 67, 54, 63, 88, 68, 46, 54, 72, 63, 64, 81, 61, 55, 62, 80, 67, 62, 52, 70, 62, 63, 63, 44, 76, 45, 81, 66, 50, 65, 82, 60, 109, 49, 80, 65, 58, 57, 31, 72, 57, 60, 51, 52, 64, 56, 57, 74, 62, 66, 67, 73, 52, 49, 77, 89, 82, 62, 77, 76, 74, 70, 46, 73, 84, 51, 62, 67, 85, 60, 76, 71, 66, 62, 60, 63, 79, 62, 66, 94, 57, 52, 74, 52, 52, 91, 62, 75, 64, 67, 57, 54, 52, 73, 61, 54, 111, 59, 79, 66, 57, 52, 46, 65, 62, 66, 70, 71, 63, 64, 75, 60, 49, 76, 71, 59, 61, 56, 69, 70, 74, 35, 52, 60, 82, 74, 56, 53, 73, 56, 105, 64, 80, 69, 58, 58, 60, 77, 54, 65, 59, 60, 55, 83, 61, 63, 63, 52, 49, 71, 91, 63, 68, 76, 60, 47, 61, 102, 68, 83, 68, 59, 64, 61, 86, 60, 49, 63, 80, 53, 107, 72, 77, 62, 70, 54, 105, 43, 73, 69, 93, 92, 50, 59, 63, 56, 82, 64, 73, 83, 52, 118, 76, 65, 52, 62, 70, 52, 58, 96, 62, 55, 68, 74, 42, 44, 62, 51, 70, 64, 65, 85, 68, 72, 90, 60, 52, 68, 58, 65, 53, 57, 57, 54, 52, 58, 83, 60, 72, 68, 158, 44, 54, 58, 64, 44, 55, 91, 75, 55, 35, 53, 69, 69, 67, 54, 51, 44, 56, 62, 57, 107, 61, 84, 54, 60, 68, 75, 49, 54, 59, 47, 58, 56, 60, 70, 67, 106, 61, 64, 59, 64, 52, 78, 63, 88, 59, 52, 59, 68, 44, 74, 67, 41, 67, 101, 45, 57, 58, 52, 79, 118, 57, 55, 46, 60, 61, 47, 50, 63, 79, 82, 68, 49, 70, 71, 65, 75, 69, 78, 51, 77, 80, 101, 78, 88, 82, 52, 97, 55, 50, 67, 61, 97, 62, 76, 124, 76, 68, 73, 61, 64, 45, 58, 60, 52, 54, 78, 59, 47, 66, 81, 51, 77, 89, 71, 78, 70, 51, 73, 69, 102, 64, 44, 56, 62, 71, 52, 50, 49, 65, 71, 68, 48, 65, 101, 66, 49, 70, 53, 72, 75, 75, 77, 58, 67, 81, 65, 72, 75, 70, 63, 58, 60, 62, 47, 99, 74, 58, 54, 58, 52, 57, 57, 71, 45, 79, 58, 88, 58, 60, 71, 75, 61, 50, 45, 70, 48, 65, 40, 74, 50, 62, 67, 55, 67, 56, 86, 55, 74, 58, 55, 64, 48, 72, 62, 56, 76, 78, 57, 61, 46, 60, 49, 60, 54, 48, 69, 55, 81, 91, 74, 68, 57, 50, 57, 72, 49, 66, 62, 57, 64, 44, 71, 62, 57, 68, 58, 67, 59, 71, 60, 78, 57, 73, 60, 69, 54, 63, 79, 64, 56, 58, 82, 80, 67, 83, 68, 56, 56, 72, 49, 66, 90, 87, 66, 51, 51, 41, 54, 49, 49, 52, 72, 67, 62, 64, 67, 54, 72, 78, 72, 72, 55, 62, 75, 78, 57, 63, 112, 65, 122, 50, 54, 49, 58, 63, 65, 70, 81, 81, 75, 50, 84, 59, 65, 78, 51, 51, 74, 72, 70, 56, 61, 70, 58, 58, 66, 58, 61, 60, 67, 90, 60, 58, 58, 57, 64, 85, 55, 72, 70, 49, 101, 73, 61, 58, 49, 58, 58, 76, 82, 64, 42, 66, 51, 59, 58, 73, 65, 60, 70, 58, 90, 73, 52, 84, 75, 52, 56, 53, 64, 55, 44, 47, 63, 71, 58, 75, 63, 71, 55, 67, 59, 86, 67, 62, 57, 43, 67, 82, 51, 76, 69, 64, 60, 49, 41, 61, 79, 40, 49, 63, 83, 55, 64, 81, 88, 52, 47, 71, 86, 59, 98, 74, 77, 55, 91, 71, 76, 68, 88, 75, 48, 93, 57, 73, 135, 76, 64, 59, 65, 78, 58, 66, 79, 63, 54, 72, 81, 62, 84, 69, 75, 41, 55, 84, 77, 64, 52, 71, 48, 42, 68, 84, 61, 69, 51, 67, 35, 76, 54, 73, 38, 83, 48, 63, 58, 87, 91, 57, 75, 77, 50, 88, 89, 65, 55, 58, 64, 63, 68, 57, 80, 67, 63, 95, 70, 60, 64, 76, 64, 81, 49, 54, 65, 52, 78, 55, 49, 66, 42, 61, 82, 56, 127, 54, 68, 66, 65, 55, 69, 92, 42, 66, 55, 136, 55, 41, 42, 63, 61, 95, 72, 89, 86, 74, 88, 55, 163, 89, 51, 27, 84, 75, 60, 108, 52, 59, 41, 80, 77, 48, 39, 54, 67, 69, 53, 48, 51, 63, 42, 54, 118, 62, 47, 64, 84, 64, 41, 65, 92, 55, 59, 114, 68, 60, 58, 72, 57, 55, 67, 66, 87, 42, 57, 58, 111, 78, 73, 58, 61, 63, 64, 45, 41, 68, 89, 54, 70, 64, 58, 82, 87, 115, 83, 56, 80, 49, 64, 63, 56, 57, 59, 69, 119, 74, 58, 56, 42, 77, 66, 84, 70, 85, 69, 64, 44, 73, 47, 66, 46, 41, 65, 66, 50, 47, 83, 67, 49, 62, 81, 49, 59, 61, 62, 66, 57, 67, 103, 141, 52, 60, 66, 77, 86, 40, 46, 102, 69, 52, 65, 53, 60, 63, 79, 69, 44, 71, 63, 67, 69, 53, 59, 80, 47, 71, 55, 56, 69, 67, 98, 49, 64, 45, 88, 62, 67, 63, 61, 74, 73, 63, 93, 48, 73, 67, 54, 124, 63, 48, 71, 67, 78, 77, 76, 56, 75, 46, 44, 59, 79, 66, 75, 78, 59, 79, 53, 69, 65, 83, 51, 71, 55, 88, 76, 61, 64, 61, 80, 52, 72, 47, 47, 62, 57, 80, 32, 74, 45, 52, 72, 51, 74, 62, 68, 102, 67, 44, 73, 65, 60, 46, 60, 42, 85, 50, 55, 119, 77, 71, 55, 61, 72, 53, 80, 58, 61, 85, 50, 29, 85, 64, 74, 52, 75, 58, 70, 57, 63, 56, 79, 39, 57, 60, 78, 56, 74, 54, 56, 78, 102, 43, 83, 68, 78, 66, 55, 85, 52, 55, 56, 98, 87, 77, 56, 96, 80, 97, 71, 51, 81, 54, 65, 81, 48, 58, 51, 45, 53, 51, 55, 72, 61, 40, 47, 34, 18, 54, 65, 54, 68, 36, 82, 75, 78, 82, 73, 70, 58, 66, 69, 54, 62, 51, 47, 58, 65, 61, 80, 103, 61, 67, 63, 79, 88, 54, 67, 52, 72, 126, 74, 73, 85, 69, 52, 74, 64, 84, 66, 51, 63, 64, 66, 58, 54, 90, 84, 48, 51, 67, 57, 71, 49, 62, 51, 65, 69, 48, 65, 68, 54, 86, 62, 79, 91, 80, 64, 68, 57, 99, 54, 99, 68, 50, 66, 90, 48, 88, 62, 59, 53, 61, 71, 42, 60, 61, 59, 119, 63, 55, 84, 38, 56, 48, 57, 53, 95, 91, 73, 51, 48, 48, 72, 63, 66, 71, 82, 39, 62, 56, 73, 62, 44, 147, 55, 65, 68, 68, 76, 52, 78, 70, 72, 47, 55, 56, 71, 64, 90, 86, 61, 80, 67, 63, 60, 90, 73, 83, 46, 60, 78, 66, 91, 85, 30, 71, 95, 67, 71, 54, 62, 97, 63, 78, 43, 60, 74, 45, 72, 53, 66, 35, 85, 74, 44, 85, 55, 63, 54, 51, 80, 99, 65, 58, 59, 76, 65, 36, 65, 85, 69, 71, 68, 72, 76, 85, 51, 70, 46, 54, 58, 77, 65, 53, 81, 67, 106, 80, 61, 67, 87, 46, 71, 68, 52, 88, 63, 69, 53, 51, 52, 75, 75, 47, 60, 61, 61, 82, 56, 53, 84, 60, 55, 80, 39, 56, 80, 62, 65, 61, 61, 52, 71, 54, 42, 65, 83, 63, 58, 64, 69, 74, 64, 60, 52, 67, 46, 53, 45, 63, 95, 70, 81, 38, 55, 72, 92, 76, 68, 91, 42, 73, 68, 67, 54, 79, 73, 55, 63, 79, 71, 45, 72, 78, 52, 81, 58, 71, 46, 51, 86, 66, 62, 114, 62, 61, 93, 88, 61, 43, 54, 67, 74, 64, 61, 54, 46, 70, 71, 67, 50, 39, 65, 64, 46, 84, 53, 45, 54, 65, 81, 81, 64, 66, 47, 72, 64, 75, 60, 61, 64, 31, 64, 63, 68, 70, 66, 53, 84, 46, 65, 44, 64, 68, 80, 80, 70, 58, 87, 73, 60, 82, 51, 44, 80, 93, 70, 114, 49, 73, 94, 54, 60, 99, 67, 54, 58, 54, 75, 93, 66, 39, 51, 69, 69, 67, 50, 62, 63, 75, 78, 72, 105, 64, 74, 90, 60, 71, 58, 80, 68, 48, 51, 60, 60, 53, 67, 50, 54, 61, 61, 54, 45, 69, 53, 90, 54, 71, 65, 76, 46, 41, 65, 66, 43, 78, 72, 83, 65, 67, 67, 49, 78, 72, 56, 61, 76, 51, 66, 60, 24, 72, 88, 60, 62, 72, 63, 62, 55, 66, 71, 45, 55, 48, 74, 55, 104, 80, 83, 71, 97, 55, 64, 68, 84, 47, 76, 68, 56, 128, 59, 79, 72, 75, 77, 69, 56, 70, 53, 48, 36, 61, 37, 57, 64, 64, 70, 68, 52, 59, 73, 50, 119, 74, 80, 70, 57, 42, 70, 59, 62, 60, 85, 59, 76, 59, 89, 61, 60, 94, 53, 67, 73, 36, 114, 64, 50, 60, 72, 83, 55, 95, 64, 73, 65, 69, 76, 76, 41, 54, 62, 141, 78, 58, 62, 67, 66, 61, 81, 68, 86, 77, 67, 62, 84, 69, 75, 57, 85, 78, 101, 74, 54, 55, 74, 66, 94, 52, 72, 53, 57, 66, 49, 63, 41, 67, 71, 41, 35, 66, 80, 63, 73, 48, 51, 82, 72, 59, 97, 59, 58, 51, 65, 72, 92, 65, 50, 59, 51, 81, 70, 63, 81, 53, 85, 98, 54, 66, 62, 75, 44, 57, 111, 82, 74, 50, 53, 77, 89, 96, 82, 51, 50, 68, 66, 55, 70, 67, 60, 69, 53, 70, 58, 72, 42, 68, 82, 55, 64, 53, 48, 62, 61, 68, 66, 93, 70, 49, 59, 69, 69, 66, 41, 50, 57, 56, 69, 82, 55, 68, 118, 71, 68, 53, 66, 65, 61, 57, 55, 65, 93, 59, 59, 69, 54, 87, 60, 70, 76, 72, 57, 94, 60, 71, 80, 85, 63, 90, 66, 69, 72, 72, 86, 86, 48, 46, 47, 66, 66, 38, 97, 66, 54, 63, 93, 52, 92, 67, 73, 68, 76, 75, 80, 48, 60, 65, 72, 76, 66, 66, 55, 73, 44, 78, 55, 53, 61, 59, 51, 61, 86, 76, 80, 51, 51, 60, 73, 70, 75, 89, 60, 51, 68, 80, 69, 46, 64, 48, 61, 64, 98, 105, 74, 61, 76, 65, 60, 70, 94, 85, 57, 58, 67, 56, 67, 53, 85, 59, 50, 64, 63, 56, 57, 58, 49, 54, 60, 57, 78, 60, 76, 62, 57, 57, 71, 62, 61, 45, 68, 59, 69, 69, 64, 64, 108, 76, 58, 62, 90, 66, 55, 76, 61, 70, 61, 79, 79, 78, 71, 114, 62, 40, 81, 97, 55, 49, 70, 85, 65, 65, 49, 64, 62, 64, 60, 47, 72, 56, 63, 71, 58, 77, 79, 59, 66, 56, 74, 56, 51, 81, 50, 70, 68, 105, 70, 59, 78, 59, 151, 59, 62, 64, 68, 59, 74, 49, 65, 70, 48, 51, 77, 74, 67, 44, 59, 52, 83, 66, 67, 68, 43, 78, 84, 45, 69, 62, 75, 57, 52, 67, 49, 83, 58, 57, 37, 47, 57, 46, 67, 68, 82, 113, 102, 58, 51, 97, 47, 64, 62, 38, 48, 62, 64, 87, 55, 59, 42, 71, 56, 56, 60, 64, 49, 73, 56, 72, 69, 69, 61, 64, 49, 59, 83, 55, 57, 67, 55, 56, 75, 99, 71, 75, 79, 95, 80, 71, 63, 57, 65, 46, 63, 58, 72, 66, 71, 110, 38, 81, 60, 63, 65, 67, 73, 65, 53, 110, 74, 54, 85, 52, 84, 53, 62, 85, 66, 65, 59, 73, 67, 69, 50, 82, 60, 67, 78, 61, 84, 66, 65, 66, 58, 54, 88, 57, 54, 66, 71, 69, 65, 57, 69, 76, 41, 57, 55, 70, 58, 91, 94, 71, 77, 77, 69, 51, 65, 64, 81, 53, 61, 53, 61, 55, 44, 63, 70, 45, 58, 76, 65, 55, 67, 90, 79, 78, 72, 51, 62, 57, 93, 103, 75, 77, 48, 41, 55, 72, 73, 62, 72, 53, 51, 67, 82, 91, 97, 72, 62, 63, 76, 65, 83, 72, 78, 59, 82, 63, 88, 51, 74, 95, 75, 36, 85, 65, 56, 46, 69, 62, 76, 65, 66, 59, 59, 73, 62, 52, 72, 47, 40, 69, 75, 76, 48, 67, 63, 71, 70, 74, 64, 59, 60, 95, 61, 42, 64, 68, 63, 59, 70, 53, 56, 78, 68, 60, 60, 61, 83, 49, 53, 63, 66, 86, 63, 77, 108, 92, 68, 50, 77, 61, 76, 63, 78, 76, 32, 65, 64, 53, 57, 65, 59, 67, 104, 70, 67, 66, 54, 90, 55, 87, 83, 60, 80, 74, 87, 98, 69, 58, 66, 60, 61, 64, 59, 57, 72, 62, 85, 53, 69, 70, 67, 64, 63, 64, 49, 86, 81, 69, 54, 49, 59, 53, 59, 84, 68, 53, 53, 65, 46, 71, 61, 112, 76, 56, 69, 93, 86, 56, 63, 70, 61, 60, 65, 50, 76, 56, 55, 93, 63, 56, 70, 85, 64, 69, 80, 79, 59, 46, 62, 62, 66, 59, 67, 57, 60, 68, 78, 88, 63, 81, 65, 57, 68, 89, 62, 50, 57, 96, 48, 53, 48, 60, 60, 66, 69, 54, 106, 80, 75, 79, 63, 66, 92, 57, 43, 79, 83, 57, 67, 42, 83, 69, 68, 63, 55, 86, 57, 78, 26, 55, 60, 46, 75, 56, 98, 42, 64, 75, 88, 45, 67, 51, 67, 61, 40, 75, 52, 92, 63, 50, 58, 65, 54, 63, 52, 86, 67, 63, 107, 49, 65, 70, 87, 72, 67, 73, 52, 64, 44, 80, 63, 74, 50, 91, 75, 65, 70, 73, 72, 71, 71, 63, 54, 59, 54, 80, 74, 63, 59, 88, 52, 72, 78, 61, 56, 69, 74, 72, 68, 61, 58, 55, 65, 64, 69, 55, 60, 56, 37, 68, 64, 86, 73, 81, 55, 66, 56, 43, 78, 56, 64, 55, 72, 79, 55, 55, 66, 64, 55, 63, 94, 69, 55, 58, 66, 81, 63, 66, 53, 70, 73, 78, 77, 74, 62, 51, 47, 69, 82, 57, 60, 62, 58, 46, 69, 62, 55, 83, 60, 58, 93, 70, 81, 70, 49, 65, 75, 68, 57, 57, 78, 72, 60, 66, 80, 65, 83, 61, 77, 69, 49, 58, 62, 58, 59, 59, 61, 49, 90, 62, 65, 60, 62, 58, 83, 62, 65, 60, 62, 69, 66, 54, 51, 74, 75, 55, 66, 75, 65, 81, 42, 81, 55, 75, 73, 63, 54, 76, 95, 78, 66, 67, 70, 60, 60, 59, 64, 56, 73, 73, 88, 75, 58, 75, 75, 77, 69, 58, 49, 59, 61, 53, 45, 73, 89, 83, 55, 65, 60, 55, 80, 66, 64, 73, 80, 51, 75, 54, 54, 41, 50, 90, 54, 49, 67, 54, 70, 77, 69, 62, 63, 66, 63, 74, 70, 69, 51, 75, 63, 61, 47, 71, 60, 62, 43, 45, 100, 51, 64, 58, 62, 48, 60, 65, 72, 51, 67, 76, 104, 39, 78, 48, 57, 77, 65, 47, 48, 70, 46, 54, 61, 68, 82, 63, 49, 66, 59, 87, 75, 53, 52, 76, 86, 66, 77, 74, 86, 73, 71, 72, 62, 85, 72, 65, 67, 53, 95, 63, 70, 60, 82, 71, 48, 66, 66, 50, 55, 68, 66, 53, 55, 49, 74, 62, 82, 65, 60, 55, 61, 37, 64, 65, 67, 72, 61, 79, 78, 47, 62, 82, 94, 78, 38, 61, 81, 63, 67, 55, 64, 79, 75, 56, 89, 66, 71, 49, 47, 51, 65, 58, 66, 66, 66, 78, 67, 67, 72, 121, 69, 58, 60, 66, 66, 65, 62, 54, 70, 57, 58, 55, 93, 80, 72, 53, 58, 46, 116, 66, 69, 63, 69, 53, 66, 52, 62, 61, 47, 72, 69, 83, 67, 68, 59, 73, 83, 62, 61, 83, 52, 55, 61, 60, 67, 62, 47, 68, 60, 71, 59, 75, 72, 65, 68, 68, 88, 71, 139, 68, 49, 52, 53, 74, 71, 62, 74, 87, 58, 61, 52, 70, 105, 94, 62, 73, 94, 49, 56, 41, 71, 69, 68, 52, 82, 68, 65, 56, 40, 96, 87, 67, 78, 59, 36, 72, 70, 64, 94, 53, 51, 69, 67, 45, 65, 59, 67, 84, 63, 78, 79, 61, 68, 97, 92, 77, 80, 59, 84, 58, 45, 61, 49, 55, 52, 71, 69, 68, 80, 53, 37, 38, 56, 53, 57, 48, 51, 43, 70, 78, 78, 58, 70, 57, 62, 69, 62, 40, 72, 70, 98, 65, 86, 74, 67, 67, 47, 91, 65, 55, 70, 60, 54, 61, 86, 59, 59, 84, 94, 138, 60, 61, 69, 61, 57, 62, 52, 69, 118, 77, 53, 95, 70, 74, 46, 48, 69, 114, 73, 72, 63, 88, 59, 83, 75, 74, 55, 55, 57, 79, 60, 57, 48, 51, 64, 69, 88, 62, 55, 76, 89, 83, 72, 55, 51, 50, 58, 74, 62, 56, 57, 73, 52, 59, 70, 61, 72, 61, 65, 63, 56, 58, 66, 65, 58, 82, 63, 81, 44, 71, 49, 54, 55, 51, 83, 55, 60, 65, 61, 73, 93, 51, 79, 78, 60, 64, 64, 65, 80, 66, 61, 61, 37, 63, 77, 82, 63, 58, 84, 78, 60, 68, 57, 51, 62, 89, 59, 46, 61, 112, 85, 58, 54, 86, 31, 89, 59, 92, 63, 66, 90, 72, 61, 66, 65, 104, 50, 86, 42, 59, 51, 59, 57, 46, 69, 61, 95, 42, 66, 62, 63, 58, 66, 71, 43, 67, 68, 47, 39, 66, 61, 52, 69, 59, 46, 78, 67, 61, 53, 76, 68, 62, 64, 62, 80, 67, 86, 86, 83, 47, 73, 59, 65, 107, 81, 74, 84, 71, 78, 64, 51, 69, 51, 70, 98, 101, 68, 69, 72, 72, 68, 62, 72, 86, 76, 51, 70, 53, 68, 56, 59, 147, 60, 56, 59, 70, 93, 55, 70, 75, 89, 63, 99, 71, 50, 53, 80, 50, 63, 76, 75, 63, 76, 50, 62, 64, 88, 92, 75, 61, 70, 88, 56, 67, 73, 78, 91, 81, 59, 77, 136, 80, 74, 59, 61, 74, 63, 69, 93, 74, 82, 74, 63, 58, 53, 58, 73, 81, 71, 65, 69, 75, 65, 48, 135, 51, 55, 54, 87, 76, 61, 54, 50, 60, 55, 56, 84, 66, 65, 54, 54, 67, 56, 70, 50, 53, 76, 57, 68, 48, 81, 77, 88, 71, 50, 63, 59, 115, 63, 50, 61, 55, 60, 53, 77, 88, 56, 42, 71, 60, 76, 59, 67, 46, 50, 63, 84, 100, 45, 53, 53, 72, 36, 51, 66, 93, 78, 54, 106, 50, 68, 62, 58, 49, 70, 52, 60, 104, 59, 59, 81, 74, 89, 67, 73, 66, 49, 61, 69, 48, 71, 69, 72, 80, 47, 69, 70, 45, 75, 47, 85, 61, 62, 63, 53, 66, 81, 52, 57, 67, 80, 54, 96, 68, 63, 54, 101, 68, 65, 57, 73, 71, 49, 65, 64, 95, 96, 51, 63, 84, 59, 61, 47, 46, 83, 48, 70, 48, 54, 61, 62, 55, 57, 62, 66, 65, 65, 42, 92, 69, 45, 63, 66, 66, 72, 57, 71, 70, 60, 75, 52, 73, 76, 91, 67, 38, 68, 52, 55, 84, 70, 46, 50, 91, 40, 52, 56, 65, 59, 68, 90, 72, 71, 58, 62, 56, 56, 63, 60, 78, 53, 54, 61, 83, 79, 66, 74, 105, 60, 71, 77, 57, 76, 58, 63, 60, 47, 83, 65, 85, 64, 63, 65, 65, 61, 58, 76, 65, 54, 61, 57, 58, 68, 75, 48, 62, 71, 53, 64, 69, 54, 62, 98, 75, 102, 51, 51, 45, 70, 79, 42, 79, 38, 48, 67, 53, 97, 58, 62, 53, 75, 54, 59, 58, 59, 70, 57, 60, 54, 68, 31, 84, 66, 84, 53, 43, 65, 66, 59, 73, 57, 65, 63, 61, 78, 43, 71, 50, 77, 66, 74, 73, 71, 85, 93, 52, 65, 56, 68, 53, 64, 65, 58, 89, 52, 64, 59, 53, 60, 58, 75, 58, 68, 79, 50, 77, 94, 74, 80, 44, 95, 48, 63, 74, 59, 59, 61, 89, 56, 52, 78, 50, 78, 46, 65, 73, 69, 56, 67, 56, 49, 67, 39, 29, 52, 59, 65, 58, 75, 67, 55, 71, 60, 64, 77, 45, 61, 47, 64, 59, 79, 64, 58, 44, 55, 57, 85, 68, 61, 68, 71, 76, 64, 58, 77, 67, 63, 79, 69, 66, 63, 66, 49, 85, 60, 53, 66, 59, 70, 58, 94, 50, 80, 89, 46, 75, 65, 66, 58, 72, 63, 73, 77, 72, 56, 92, 84, 76, 66, 85, 104, 39, 58, 71, 84, 66, 62, 58, 84, 47, 57, 72, 79, 59, 62, 54, 57, 65, 55, 60, 64, 47, 63, 78, 79, 66, 76, 84, 79, 65, 62, 70, 52, 65, 67, 71, 74, 93, 62, 70, 46, 61, 52, 66, 64, 53, 62, 75, 54, 67, 72, 85, 74, 76, 55, 48, 34, 74, 61, 67, 56, 55, 73, 76, 42, 76, 58, 81, 52, 60, 97, 99, 71, 67, 52, 48, 75, 68, 42, 65, 78, 130, 56, 45, 91, 65, 36, 66, 50, 75, 59, 74, 74, 59, 81, 73, 39, 76, 54, 76, 55, 34, 65, 77, 48, 63, 96, 62, 52, 54, 76, 55, 80, 75, 67, 51, 93, 75, 58, 79, 62, 85, 46, 84, 69, 75, 75, 65, 74, 77, 78, 55, 54, 69, 71, 92, 37, 81, 58, 87, 68, 77, 45, 76, 51, 50, 42, 53, 83, 60, 59, 61, 63, 81, 52, 69, 65, 111, 41, 65, 53, 78, 58, 57, 81, 48, 59, 65, 65, 60, 88, 51, 58, 59, 84, 78, 72, 46, 79, 98, 65, 56, 74, 83, 58, 55, 79, 63, 110, 80, 111, 52, 43, 41, 49, 38, 122, 58, 66, 57, 62, 57, 55, 56, 63, 60, 83, 58, 53, 109, 67, 83, 98, 73, 45, 67, 79, 55, 88, 67, 66, 54, 84, 43, 62, 70, 101, 74, 59, 42, 70, 70, 53, 70, 43, 47, 66, 59, 79, 52, 66, 63, 67, 62, 73, 74, 50, 65, 72, 59, 50, 58, 52, 55, 73, 99, 41, 75, 60, 75, 66, 50, 86, 61, 63, 52, 69, 81, 60, 27, 48, 67, 47, 71, 100, 68, 62, 70, 63, 68, 61, 82, 86, 57, 63, 64, 78, 75, 60, 86, 70, 71, 89, 54, 102, 78, 84, 89, 86, 33, 66, 89, 71, 64, 94, 61, 60, 62, 62, 93, 75, 59, 56, 60, 71, 73, 56, 110, 71, 69, 66, 43, 77, 59, 66, 106, 68, 73, 78, 70, 78, 76, 68, 74, 117, 73, 59, 83, 63, 85, 69, 95, 78, 55, 70, 47, 53, 55, 65, 58, 56, 49, 71, 51, 56, 74, 81, 74, 92, 47, 80, 63, 47, 57, 64, 97, 53, 65, 59, 60, 55, 55, 56, 75, 65, 54, 45, 62, 75, 70, 42, 68, 49, 67, 77, 81, 72, 68, 65, 49, 58, 56, 69, 59, 84, 70, 53, 103, 64, 56, 73, 66, 62, 61, 51, 80, 80, 68, 66, 51, 49, 84, 86, 66, 68, 114, 68, 56, 85, 41, 67, 100, 72, 69, 65, 66, 57, 51, 47, 53, 69, 77, 66, 54, 71, 59, 92, 55, 66, 87, 64, 59, 51, 55, 49, 58, 81, 71, 53, 62, 75, 54, 77, 71, 94, 74, 64, 65, 60, 30, 62, 51, 70, 64, 62, 63, 74, 70, 70, 71, 96, 69, 58, 51, 72, 47, 57, 101, 86, 43, 61, 62, 86, 39, 73, 59, 39, 79, 73, 65, 75, 86, 68, 67, 49, 35, 54, 95, 66, 51, 85, 84, 89, 62, 79, 62, 61, 65, 62, 59, 109, 54, 69, 65, 80, 90, 55, 87, 89, 73, 41, 67, 84, 31, 51, 54, 50, 74, 59, 71, 54, 68, 70, 47, 45, 63, 67, 61, 66, 111, 67, 89, 115, 70, 70, 49, 65, 56, 73, 42, 60, 59, 67, 56, 44, 65, 37, 54, 57, 56, 52, 55, 54, 62, 70, 91, 50, 97, 71, 59, 70, 57, 71, 67, 69, 65, 67, 49, 79, 66, 50, 56, 88, 59, 61, 53, 85, 66, 73, 45, 61, 65, 53, 55, 109, 73, 57, 59, 88, 94, 76, 86, 56, 64, 58, 69, 53, 67, 65, 69, 49, 55, 57, 60, 57, 49, 64, 72, 63, 71, 59, 65, 64, 76, 67, 65, 116, 77, 92, 64, 63, 63, 65, 61, 49, 54, 71, 57, 63, 68, 43, 66, 66, 59, 69, 81, 61, 69, 73, 68, 49, 51, 64, 72, 58, 57, 69, 60, 62, 53, 51, 54, 92, 94, 56, 57, 65, 119, 68, 53, 69, 50, 80, 52, 71, 54, 64, 72, 84, 53, 91, 53, 97, 54, 70, 57, 75, 70, 70, 56, 62, 74, 58, 58, 85, 68, 55, 74, 66, 70, 80, 52, 54, 73, 96, 74, 92, 69, 88, 76, 90, 81, 81, 59, 78, 86, 52, 54, 68, 57, 45, 45, 64, 65, 77, 59, 55, 90, 57, 109, 61, 54, 74, 73, 97, 70, 64, 49, 41, 70, 73, 91, 60, 51, 47, 74, 83, 46, 60, 61, 77, 62, 56, 59, 88, 54, 76, 62, 113, 57, 53, 49, 71, 54, 64, 53, 64, 60, 67, 40, 75, 46, 65, 63, 58, 87, 55, 60, 61, 73, 49, 73, 62, 58, 55, 104, 81, 61, 57, 56, 61, 57, 63, 49, 85, 64, 34, 88, 61, 69, 71, 48, 82, 57, 76, 59, 62, 53, 66, 66, 83, 64, 59, 59, 73, 80, 88, 72, 71, 46, 74, 65, 60, 120, 100, 148, 102, 57, 77, 65, 65, 59, 99, 77, 54, 61, 62, 63, 119, 66, 71, 63, 60, 53, 54, 64, 55, 75, 48, 68, 95, 55, 80, 72, 41, 76, 75, 50, 116, 80, 48, 90, 56, 52, 73, 53, 70, 67, 50, 65, 90, 58, 60, 81, 67, 69, 85, 49, 67, 99, 84, 66, 73, 76, 87, 77, 59, 53, 54, 40, 64, 58, 54, 74, 41, 67, 64, 60, 108, 73, 56, 55, 67, 71, 51, 40, 63, 104, 67, 75, 75, 82, 91, 75, 48, 57, 62, 56, 78, 66, 58, 51, 76, 54, 131, 75, 61, 84, 65, 72, 63, 54, 70, 81, 64, 68, 73, 101, 55, 83, 70, 57, 59, 45, 73, 94, 55, 61, 53, 71, 90, 69, 84, 69, 57, 70, 57, 61, 51, 78, 78, 46, 71, 62, 57, 84, 102, 57, 83, 64, 65, 46, 48, 51, 50, 75, 95, 66, 101, 47, 35, 51, 52, 50, 86, 92, 53, 50, 55, 77, 77, 59, 37, 50, 54, 60, 64, 49, 57, 65, 94, 77, 63, 79, 55, 53, 25, 35, 61, 62, 67, 74, 47, 120, 50, 73, 55, 66, 77, 65, 60, 54, 78, 75, 60, 55, 35, 69, 91, 55, 47, 54, 59, 51, 45, 45, 93, 54, 78, 75, 63, 57, 85, 45, 60, 65, 44, 100, 109, 64, 85, 47, 66, 68, 65, 57, 79, 60, 57, 43, 57, 61, 72, 47, 88, 53, 58, 59, 88, 70, 67, 70, 83, 87, 75, 56, 63, 41, 46, 80, 100, 43, 49, 64, 56, 51, 53, 83, 104, 54, 67, 92, 51, 53, 63, 76, 57, 73, 64, 49, 87, 70, 69, 49, 61, 76, 50, 108, 72, 55, 76, 73, 69, 53, 58, 76, 41, 64, 52, 45, 67, 52, 62, 69, 51, 72, 68, 62, 53, 53, 73, 72, 84, 55, 61, 96, 71, 56, 85, 86, 75, 76, 81, 74, 62, 60, 53, 79, 89, 68, 79, 48, 98, 46, 59, 60, 60, 55, 51, 75, 81, 55, 60, 68, 59, 96, 85, 69, 70, 78, 59, 61, 69, 66, 89, 58, 62, 81, 77, 70, 57, 60, 65, 72, 66, 82, 62, 74, 67, 70, 42, 108, 131, 60, 57, 68, 49, 80, 62, 53, 62, 52, 61, 72, 58, 75, 67, 72, 68, 79, 57, 47, 49, 58, 47, 70, 68, 55, 108, 66, 72, 84, 45, 80, 75, 49, 52, 85, 74, 66, 74, 57, 70, 64, 58, 54, 81, 64, 51, 61, 56, 56, 64, 42, 59, 81, 69, 48, 84, 70, 74, 47, 63, 61, 64, 79, 62, 67, 61, 54, 50, 45, 58, 61, 43, 84, 70, 59, 70, 68, 100, 65, 68, 51, 63, 64, 80, 59, 55, 53, 67, 68, 56, 54, 108, 65, 61, 70, 56, 57, 108, 62, 59, 82, 66, 63, 68, 64, 57, 44, 70, 60, 56, 54, 84, 96, 85, 49, 64, 71, 64, 86, 84, 66, 68, 67, 67, 71, 76, 112, 59, 60, 68, 85, 74, 64, 35, 91, 57, 46, 95, 54, 63, 54, 117, 66, 44, 71, 56, 49, 60, 65, 92, 70, 56, 59, 69, 60, 51, 59, 70, 83, 67, 63, 51, 50, 77, 52, 76, 62, 58, 64, 58, 76, 77, 60, 75, 61, 83, 86, 74, 63, 71, 86, 60, 85, 57, 64, 61, 58, 49, 80, 55, 66, 67, 51, 55, 52, 55, 76, 91, 63, 80, 66, 52, 69, 59, 60, 71, 51, 80, 58, 67, 75, 67, 61, 49, 71, 55, 52, 53, 58, 88, 76, 53, 62, 80, 60, 52, 55, 59, 67, 65, 60, 65, 52, 76, 53, 64, 83, 53, 82, 78, 56, 66, 56, 60, 44, 101, 64, 65, 59, 59, 78, 59, 85, 56, 54, 56, 53, 57, 77, 69, 60, 77, 54, 62, 38, 39, 67, 62, 53, 49, 62, 108, 62, 53, 64, 36, 58, 60, 72, 64, 72, 71, 61, 64, 60, 80, 65, 102, 74, 59, 51, 48, 80, 70, 72, 116, 59, 63, 77, 58, 59, 56, 62, 79, 57, 57, 74, 68, 60, 45, 57, 70, 68, 56, 50, 64, 66, 61, 56, 49, 56, 75, 76, 42, 115, 71, 74, 55, 76, 69, 52, 62, 74, 47, 61, 66, 46, 111, 98, 57, 49, 65, 61, 67, 63, 92, 51, 45, 59, 60, 59, 71, 54, 62, 82, 52, 74, 68, 65, 67, 64, 64, 48, 74, 73, 58, 60, 88, 102, 62, 55, 61, 57, 51, 66, 70, 56, 50, 59, 66, 57, 61, 58, 66, 40, 67, 60, 48, 53, 86, 66, 79, 66, 64, 58, 62, 71, 62, 58, 67, 82, 47, 61, 55, 63, 104, 49, 84, 54, 61, 59, 62, 62, 91, 65, 71, 49, 74, 50, 48, 55, 70, 62, 60, 63, 60, 58, 57, 64, 75, 64, 53, 62, 68, 56, 63, 69, 58, 69, 80, 63, 89, 80, 59, 57, 83, 72, 79, 76, 98, 57, 57, 67, 57, 66, 67, 72, 144, 54, 65, 68, 69, 82, 118, 52, 90, 52, 77, 66, 39, 66, 74, 74, 53, 68, 53, 51, 80, 74, 73, 74, 56, 57, 97, 67, 56, 63, 79, 59, 65, 59, 66, 52, 55, 48, 54, 52, 70, 116, 77, 77, 68, 85, 56, 69, 52, 75, 79, 71, 51, 81, 59, 60, 53, 69, 39, 54, 44, 72, 73, 70, 71, 51, 49, 56, 61, 82, 63, 61, 72, 58, 52, 56, 63, 63, 66, 61, 51, 85, 85, 55, 62, 77, 60, 62, 54, 54, 88, 73, 64, 83, 64, 63, 60, 46, 64, 60, 57, 49, 62, 73, 96, 65, 59, 53, 59, 65, 64, 62, 79, 80, 63, 69, 73, 70, 65, 55, 66, 66, 88, 64, 54, 66, 66, 49, 76, 59, 67, 77, 43, 68, 52, 64, 97, 111, 44, 65, 59, 83, 64, 58, 70, 77, 69, 60, 52, 76, 84, 68, 82, 73, 59, 58, 62, 57, 52, 77, 48, 52, 53, 55, 66, 75, 55, 61, 53, 57, 86, 70, 84, 71, 75, 65, 62, 49, 56, 69, 47, 50, 61, 76, 55, 62, 63, 52, 72, 63, 78, 70, 94, 70, 84, 63, 59, 74, 53, 54, 70, 57, 59, 64, 57, 71, 96, 61, 71, 84, 66, 56, 58, 68, 52, 70, 61, 60, 71, 60, 64, 63, 59, 69, 63, 70, 85, 69, 119, 65, 52, 44, 51, 53, 79, 59, 64, 71, 84, 98, 55, 57, 53, 43, 69, 60, 53, 57, 70, 78, 75, 59, 72, 52, 69, 64, 49, 55, 53, 81, 69, 72, 66, 97, 65, 73, 54, 54, 86, 75, 55, 75, 59, 73, 60, 93, 75, 67, 65, 50, 57, 54, 78, 96, 62, 74, 62, 71, 63, 57, 99, 100, 58, 62, 72, 69, 63, 65, 67, 47, 51, 45, 53, 66, 72, 67, 81, 71, 64, 49, 60, 53, 65, 79, 58, 73, 61, 66, 71, 82, 56, 65, 61, 52, 62, 64, 77, 63, 85, 58, 91, 79, 69, 73, 83, 59, 67, 64, 63, 73, 50, 60, 80, 64, 55, 53, 59, 57, 71, 83, 73, 65, 60, 67, 77, 61, 70, 81, 65, 64, 69, 67, 70, 77, 56, 68, 56, 78, 78, 55, 79, 84, 54, 60, 72, 54, 61, 74, 69, 63, 69, 69, 81, 58, 66, 62, 58, 116, 73, 61, 70, 50, 49, 79, 61, 56, 62, 87, 51, 80, 69, 83, 61, 51, 72, 67, 66, 57, 45, 59, 67, 65, 115, 54, 70, 82, 76, 69, 71, 79, 45, 67, 83, 61, 67, 78, 70, 65, 67, 51, 59, 48, 47, 73, 56, 81, 66, 54, 80, 88, 78, 59, 54, 56, 62, 70, 60, 54, 78, 56, 87, 46, 61, 50, 51, 108, 50, 66, 83, 63, 70, 65, 52, 56, 64, 65, 104, 64, 84, 50, 102, 76, 51, 70, 45, 58, 76, 67, 52, 60, 64, 71, 56, 49, 88, 66, 58, 75, 48, 59, 75, 73, 69, 51, 50, 45, 53, 89, 58, 50, 63, 69, 65, 63, 77, 78, 68, 50, 55, 78, 56, 58, 75, 54, 49, 56, 64, 66, 62, 66, 74, 67, 82, 58, 67, 62, 60, 62, 74, 66, 74, 65, 73, 57, 63, 65, 101, 54, 56, 65, 63, 67, 73, 65, 57, 81, 55, 59, 57, 57, 54, 134, 62, 61, 65, 71, 57, 79, 54, 100, 67, 55, 80, 59, 62, 59, 58, 47, 71, 84, 55, 72, 62, 55, 64, 82, 64, 62, 63, 76, 54, 63, 57, 67, 59, 68, 47, 53, 48, 75, 81, 76, 48, 57, 61, 64, 73, 64, 60, 64, 56, 60, 71, 70, 60, 79, 56, 70, 69, 66, 71, 60, 52, 53, 60, 79, 47, 51, 67, 73, 82, 49, 66, 79, 54, 70, 70, 48, 74, 67, 91, 69, 61, 69, 74, 73, 103, 52, 73, 58, 59, 56, 78, 71, 56, 66, 86, 79, 71, 70, 64, 64, 53, 69, 79, 66, 69, 65, 67, 51, 56, 66, 61, 39, 60, 55, 64, 119, 66, 81, 68, 68, 114, 52, 60, 66, 84, 56, 59, 61, 62, 95, 89, 69, 65, 88, 65, 47, 56, 57, 67, 59, 64, 71, 54, 76, 57, 64, 51, 53, 42, 62, 63, 52, 88, 54, 63, 83, 85, 50, 59, 79, 61, 72, 56, 55, 64, 88, 63, 41, 73, 65, 54, 69, 66, 69, 79, 70, 80, 62, 80, 81, 58, 74, 51, 37, 47, 49, 56, 38, 61, 59, 70, 65, 55, 57, 70, 62, 63, 43, 84, 85, 60, 61, 58, 93, 80, 88, 62, 92, 72, 66, 66, 70, 82, 58, 50, 98, 62, 64, 90, 71, 74, 47, 58, 55, 62, 78, 69, 71, 59, 67, 67, 57, 36, 78, 51, 55, 51, 58, 53, 56, 58, 62, 58, 63, 54, 61, 51, 60, 67, 74, 37, 76, 67, 60, 84, 63, 56, 51, 81, 79, 63, 55, 61, 67, 55, 68, 70, 62, 63, 61, 48, 63, 60, 69, 62, 54, 64, 68, 65, 56, 64, 48, 73, 71, 77, 63, 126, 74, 58, 54, 49, 85, 72, 48, 58, 75, 58, 60, 64, 57, 72, 72, 53, 53, 68, 58, 74, 103, 59, 63, 68, 48, 74, 79, 70, 70, 66, 53, 48, 63, 76, 69, 68, 77, 54, 65, 67, 68, 64, 55, 59, 70, 59, 63, 57, 50, 47, 55, 51, 76, 63, 66, 46, 65, 55, 57, 76, 55, 57, 65, 116, 71, 51, 49, 63, 59, 47, 55, 69, 71, 87, 64, 56, 66, 56, 55, 64, 59, 66, 106, 66, 71, 117, 58, 56, 55, 54, 81, 53, 44, 62, 52, 55, 61, 62, 109, 65, 48, 50, 59, 55, 82, 69, 80, 57, 74, 82, 76, 61, 88, 55, 85, 72, 69, 67, 40, 69, 59, 56, 67, 79, 50, 61, 124, 58, 59, 64, 52, 53, 60, 80, 65, 74, 65, 150, 78, 85, 65, 69, 62, 67, 69, 67, 69, 70, 62, 104, 82, 44, 58, 69, 72, 70, 90, 81, 70, 66, 61, 56, 53, 66, 59, 46, 58, 62, 47, 49, 74, 58, 49, 47, 65, 54, 61, 74, 58, 63, 34, 60, 76, 65, 62, 105, 71, 53, 65, 62, 55, 69, 47, 76, 84, 60, 82, 91, 55, 72, 83, 61, 79, 60, 71, 58, 47, 68, 88, 56, 52, 50, 66, 61, 67, 111, 54, 60, 60, 53, 53, 61, 69, 59, 62, 49, 64, 74, 75, 53, 61, 72, 61, 65, 87, 89, 76, 56, 68, 62, 66, 55, 60, 57, 59, 61, 70, 57, 51, 57, 61, 105, 67, 66, 41, 64, 47, 65, 54, 90, 51, 60, 64, 50, 70, 55, 82, 66, 63, 54, 60, 54, 53, 58, 75, 76, 55, 54, 57, 54, 90, 58, 46, 81, 62, 46, 59, 67, 51, 55, 66, 91, 38, 71, 65, 61, 60, 54, 95, 53, 98, 73, 77, 50, 58, 62, 65, 76, 48, 101, 78, 42, 62, 54, 70, 71, 66, 51, 83, 65, 57, 69, 71, 55, 65, 74, 69, 71, 65, 48, 54, 48, 59, 62, 95, 65, 61, 79, 72, 68, 73, 67, 52, 46, 73, 89, 47, 41, 90, 70, 65, 111, 84, 57, 49, 56, 92, 62, 62, 54, 60, 71, 63, 84, 81, 61, 61, 51, 79, 86, 76, 57, 57, 64, 47, 76, 54, 61, 49, 83, 55, 64, 113, 56, 69, 69, 65, 65, 55, 56, 90, 70, 47, 62, 76, 61, 70, 48, 68, 73, 60, 60, 71, 46, 72, 77, 54, 59, 63, 56, 63, 51, 45, 62, 60, 72, 57, 72, 62, 55, 72, 66, 72, 93, 72, 68, 80, 78, 59, 62, 53, 50, 80, 60, 69, 63, 59, 48, 72, 65, 68, 38, 63, 54, 84, 62, 71, 77, 66, 86, 53, 79, 72, 54, 58, 62, 70, 62, 92, 49, 75, 78, 59, 66, 93, 60, 56, 84, 64, 45, 82, 62, 61, 70, 55, 64, 83, 59, 70, 76, 95, 69, 67, 71, 47, 83, 105, 61, 73, 66, 87, 70, 69, 84, 55, 78, 111, 75, 61, 55, 63, 68, 54, 47, 55, 65, 63, 66, 53, 67, 68, 124, 57, 43, 60, 58, 67, 87, 69, 59, 64, 63, 104, 68, 54, 83, 70, 68, 45, 68, 52, 59, 63, 97, 71, 74, 57, 108, 65, 78, 54, 71, 55, 64, 53, 67, 70, 67, 58, 59, 67, 55, 51, 50, 54, 95, 63, 54, 61, 64, 77, 73, 77, 65, 103, 55, 43, 54, 79, 71, 75, 79, 71, 61, 71, 50, 82, 72, 64, 58, 74, 66, 60, 86, 112, 70, 62, 66, 60, 57, 72, 64, 56, 63, 73, 72, 93, 77, 67, 76, 58, 70, 56, 67, 63, 80, 50, 68, 80, 76, 48, 69, 64, 69, 46, 70, 51, 61, 54, 65, 94, 65, 63, 53, 107, 72, 81, 74, 55, 80, 100, 51, 50, 91, 57, 62, 71, 73, 63, 42, 48, 66, 60, 46, 68, 56, 61, 57, 77, 32, 71, 88, 70, 75, 53, 55, 75, 60, 73, 58, 49, 70, 43, 60, 74, 69, 60, 38, 38, 77, 61, 48, 47, 60, 56, 70, 54, 86, 55, 73, 66, 56, 71, 60, 61, 55, 57, 77, 90, 63, 90, 52, 72, 73, 83, 64, 68, 63, 59, 68, 67, 51, 61, 64, 106, 55, 63, 71, 54, 67, 66, 56, 81, 73, 106, 66, 120, 77, 77, 48, 65, 57, 59, 64, 80, 50, 60, 68, 56, 60, 75, 67, 59, 52, 49, 56, 56, 70, 57, 62, 61, 56, 56, 76, 53, 72, 88, 80, 65, 56, 92, 53, 78, 82, 49, 66, 60, 62, 57, 61, 61, 63, 62, 69, 82, 58, 39, 71, 97, 88, 84, 68, 72, 55, 51, 59, 67, 68, 71, 67, 72, 59, 58, 54, 70, 42, 77, 66, 67, 57, 61, 49, 55, 69, 55, 59, 80, 58, 78, 61, 53, 65, 55, 90, 58, 45, 58, 68, 68, 67, 67, 71, 55, 66, 52, 53, 79, 53, 81, 70, 69, 41, 65, 58, 62, 69, 62, 60, 47, 75, 68, 56, 70, 67, 100, 62, 51, 44, 65, 70, 58, 53, 72, 121, 56, 105, 63, 68, 77, 66, 80, 106, 53, 66, 46, 75, 64, 65, 72, 56, 69, 86, 57, 57, 54, 44, 69, 76, 69, 66, 66, 74, 62, 83, 69, 64, 63, 54, 58, 63, 57, 35, 69, 60, 69, 91, 72, 63, 83, 71, 70, 70, 73, 52, 55, 72, 71, 52, 55, 68, 67, 73, 61, 78, 106, 72, 74, 67, 59, 77, 46, 51, 59, 99, 43, 80, 42, 79, 66, 66, 76, 75, 69, 100, 57, 59, 74, 85, 85, 68, 95, 77, 58, 52, 88, 51, 85, 80, 79, 63, 67, 58, 66, 65, 64, 70, 45, 58, 66, 73, 45, 83, 79, 68, 55, 58, 69, 49, 74, 68, 68, 70, 71, 47, 66, 80, 49, 107, 53, 47, 69, 68, 54, 44, 55, 62, 68, 60, 73, 95, 63, 68, 104, 66, 67, 89, 117, 61, 63, 76, 63, 67, 70, 54, 85, 69, 72, 61, 73, 55, 102, 64, 82, 51, 66, 69, 81, 69, 71, 69, 54, 64, 68, 62, 64, 61, 73, 76, 67, 62, 89, 135, 63, 59, 83, 80, 80, 56, 81, 50, 86, 59, 51, 67, 55, 78, 76, 80, 68, 59, 66, 54, 67, 100, 67, 74, 67, 61, 70, 63, 49, 70, 75, 64, 63, 72, 74, 54, 71, 60, 58, 59, 66, 83, 43, 74, 46, 62, 75, 56, 64, 62, 50, 49, 63, 68, 78, 47, 52, 57, 64, 87, 52, 60, 87, 89, 55, 67, 58, 98, 74, 62, 52, 66, 49, 56, 60, 51, 74, 52, 67, 77, 68, 67, 55, 47, 106, 91, 56, 64, 54, 65, 66, 57, 56, 68, 50, 39, 71, 37, 96, 52, 57, 64, 71, 55, 54, 84, 83, 63, 60, 89, 65, 61, 64, 46, 84, 72, 69, 65, 66, 78, 56, 46, 58, 69, 66, 77, 80, 62, 90, 78, 78, 61, 55, 85, 90, 66, 56, 59, 49, 50, 57, 68, 85, 56, 65, 56, 84, 74, 74, 52, 86, 36, 83, 52, 88, 81, 46, 37, 64, 65, 61, 70, 48, 65, 64, 55, 59, 66, 60, 78, 70, 69, 84, 50, 64, 77, 120, 75, 71, 80, 81, 68, 58, 75, 39, 65, 75, 64, 50, 81, 59, 54, 56, 60, 62, 103, 54, 55, 43, 81, 76, 59, 69, 61, 77, 73, 64, 57, 63, 72, 55, 81, 56, 57, 63, 80, 58, 53, 77, 52, 80, 55, 65, 70, 74, 69, 97, 59, 68, 51, 74, 61, 74, 64, 73, 63, 82, 62, 56, 91, 60, 55, 74, 79, 60, 42, 69, 59, 50, 96, 64, 53, 75, 49, 78, 68, 77, 53, 66, 77, 52, 48, 87, 54, 68, 130, 65, 59, 48, 64, 81, 56, 61, 75, 108, 44, 68, 68, 80, 72, 62, 59, 64, 63, 68, 75, 51, 69, 37, 58, 93, 74, 73, 76, 42, 77, 62, 73, 55, 53, 85, 54, 60, 79, 74, 59, 57, 44, 69, 69, 55, 73, 64, 83, 62, 54, 74, 57, 69, 77, 45, 69, 63, 71, 76, 55, 59, 55, 58, 71, 78, 64, 82, 61, 57, 79, 83, 68, 62, 78, 54, 84, 78, 66, 57, 63, 68, 60, 42, 62, 66, 74, 55, 67, 66, 72, 68, 56, 71, 74, 65, 51, 84, 75, 73, 52, 35, 78, 75, 53, 70, 79, 53, 76, 64, 58, 70, 56, 58, 53, 103, 75, 73, 34, 75, 58, 80, 48, 90, 56, 90, 58, 65, 87, 69, 70, 60, 64, 74, 58, 75, 60, 66, 95, 59, 35, 68, 63, 83, 62, 70, 70, 68, 59, 75, 57, 65, 71, 87, 61, 63, 68, 49, 88, 58, 87, 93, 63, 73, 83, 62, 52, 64, 62, 70, 64, 66, 57, 59, 72, 54, 68, 74, 65, 60, 57, 64, 78, 53, 63, 64, 55, 73, 81, 65, 69, 46, 66, 55, 74, 68, 67, 52, 59, 65, 68, 54, 58, 48, 53, 67, 89, 50, 66, 62, 47, 54, 72, 70, 74, 69, 51, 72, 56, 73, 49, 44, 98, 80, 52, 75, 54, 83, 77, 50, 51, 67, 69, 48, 65, 85, 73, 50, 53, 79, 79, 58, 69, 74, 91, 52, 74, 67, 65, 49, 59, 63, 60, 61, 69, 84, 34, 70, 63, 61, 67, 71, 76, 51, 62, 64, 61, 57, 48, 44, 60, 57, 69, 57, 60, 63, 59, 61, 70, 57, 65, 61, 60, 65, 61, 69, 82, 54, 67, 90, 98, 57, 63, 63, 55, 47, 91, 53, 72, 76, 57, 60, 56, 52, 83, 49, 112, 58, 53, 54, 63, 82, 72, 53, 57, 66, 73, 68, 110, 85, 56, 80, 65, 52, 48, 67, 54, 83, 64, 64, 57, 67, 54, 73, 71, 73, 74, 81, 72, 63, 63, 112, 85, 61, 40, 66, 44, 103, 53, 76, 69, 65, 77, 40, 74, 50, 65, 76, 69, 67, 58, 69, 69, 68, 54, 62, 55, 57, 58, 73, 63, 74, 71, 50, 60, 47, 66, 58, 64, 55, 58, 53, 56, 54, 57, 40, 69, 55, 42, 70, 47, 97, 70, 77, 62, 78, 55, 70, 101, 65, 70, 66, 73, 43, 71, 81, 85, 61, 59, 68, 63, 62, 44, 91, 73, 71, 83, 57, 69, 51, 76, 68, 60, 55, 66, 67, 77, 52, 64, 62, 75, 65, 82, 50, 60, 55, 71, 63, 70, 55, 59, 74, 49, 59, 61, 90, 78, 84, 81, 57, 68, 67, 58, 89, 67, 81, 55, 60, 59, 61, 62, 61, 91, 68, 79, 67, 58, 61, 49, 44, 72, 58, 66, 52, 56, 62, 63, 44, 51, 61, 101, 77, 72, 60, 68, 62, 56, 77, 64, 73, 59, 69, 52, 55, 65, 68, 70, 68, 73, 67, 65, 71, 67, 60, 72, 67, 55, 65, 71, 59, 59, 57, 54, 83, 69, 63, 58, 55, 50, 56, 66, 77, 83, 56, 68, 76, 58, 70, 56, 39, 71, 58, 48, 86, 66, 70, 49, 54, 61, 49, 92, 56, 59, 60, 65, 66, 80, 48, 63, 72, 67, 50, 54, 81, 88, 76, 45, 54, 57, 61, 56, 71, 59, 79, 74, 74, 82, 46, 64, 101, 63, 55, 114, 58, 50, 61, 54, 75, 64, 59, 59, 72, 49, 66, 67, 67, 60, 119, 59, 44, 77, 83, 77, 81, 71, 80, 62, 54, 70, 57, 71, 60, 81, 91, 76, 51, 80, 71, 62, 63, 67, 71, 139, 63, 66, 48, 69, 64, 59, 73, 62, 52, 56, 61, 120, 53, 68, 123, 86, 52, 64, 71, 56, 68, 67, 48, 58, 45, 43, 62, 53, 64, 63, 78, 64, 57, 66, 68, 63, 65, 81, 52, 48, 90, 42, 69, 67, 56, 62, 78, 62, 55, 60, 56, 68, 63, 62, 61, 72, 59, 55, 73, 69, 49, 60, 71, 44, 76, 65, 79, 71, 76, 70, 57, 77, 79, 51, 50, 57, 77, 74, 76, 59, 55, 57, 64, 75, 68, 58, 79, 87, 61, 63, 76, 63, 57, 69, 76, 62, 64, 62, 65, 53, 69, 78, 87, 62, 57, 68, 58, 67, 70, 67, 86, 64, 78, 87, 64, 69, 59, 56, 65, 57, 112, 84, 59, 65, 59, 69, 63, 53, 48, 82, 58, 74, 70, 52, 57, 44, 63, 72, 54, 72, 57, 67, 67, 70, 33, 85, 81, 71, 61, 73, 75, 71, 68, 91, 52, 75, 64, 79, 79, 65, 59, 52, 73, 66, 57, 54, 52, 60, 83, 50, 78, 69, 65, 61, 62, 108, 89, 59, 48, 58, 55, 66, 57, 68, 56, 85, 73, 68, 68, 51, 90, 54, 57, 70, 68, 60, 44, 67, 70, 57, 71, 59, 69, 51, 74, 37, 20, 50, 62, 54, 73, 74, 41, 64, 61, 69, 92, 76, 53, 54, 80, 86, 62, 47, 58, 55, 51, 78, 67, 72, 114, 56, 49, 86, 64, 64, 62, 49, 59, 45, 58, 52, 78, 63, 72, 92, 63, 60, 55, 63, 80, 85, 105, 63, 70, 59, 62, 60, 84, 54, 69, 50, 44, 91, 63, 67, 37, 72, 61, 52, 71, 74, 83, 67, 60, 57, 71, 67, 64, 97, 65, 50, 61, 61, 47, 79, 41, 70, 60, 63, 74, 93, 57, 66, 67, 60, 73, 98, 68, 55, 74, 66, 64, 50, 97, 71, 50, 62, 76, 56, 68, 55, 65, 92, 62, 61, 66, 54, 65, 64, 65, 67, 64, 65, 82, 81, 71, 63, 72, 54, 63, 75, 59, 74, 73, 72, 82, 85, 67, 69, 77, 69, 72, 63, 73, 74, 72, 61, 51, 72, 58, 48, 68, 65, 73, 65, 59, 65, 93, 71, 67, 50, 65, 59, 71, 101, 71, 87, 76, 75, 63, 60, 70, 49, 57, 149, 66, 66, 36, 55, 75, 60, 64, 42, 81, 55, 58, 58, 62, 72, 70, 62, 71, 54, 73, 71, 55, 63, 64, 48, 56, 63, 46, 70, 46, 44, 77, 68, 56, 51, 61, 50, 52, 74, 100, 59, 64, 75, 58, 78, 90, 46, 74, 71, 64, 61, 88, 64, 73, 59, 54, 107, 53, 58, 46, 53, 66, 72, 89, 67, 34, 69, 67, 53, 70, 59, 93, 52, 66, 83, 63, 72, 75, 58, 62, 58, 79, 73, 56, 54, 75, 62, 61, 46, 61, 59, 54, 48, 81, 76, 76, 67, 75, 55, 79, 62, 67, 73, 76, 63, 76, 55, 81, 72, 44, 71, 48, 67, 69, 73, 61, 87, 69, 71, 77, 63, 65, 70, 65, 54, 77, 59, 57, 82, 125, 49, 69, 66, 75, 66, 89, 101, 89, 86, 60, 55, 59, 63, 71, 56, 63, 59, 62, 74, 75, 76, 68, 117, 67, 89, 99, 72, 68, 65, 56, 55, 45, 101, 60, 74, 91, 66, 72, 62, 88, 64, 62, 87, 80, 64, 75, 52, 50, 60, 46, 96, 59, 59, 65, 61, 50, 64, 88, 63, 66, 60, 63, 53, 82, 69, 52, 74, 61, 64, 61, 63, 57, 77, 69, 45, 64, 75, 58, 52, 59, 82, 51, 78, 72, 55, 66, 73, 72, 78, 68, 73, 75, 80, 64, 69, 70, 65, 49, 40, 80, 73, 59, 62, 66, 53, 80, 60, 91, 45, 69, 66, 83, 68, 52, 69, 58, 57, 55, 59, 47, 65, 70, 64, 84, 55, 77, 46, 64, 52, 102, 99, 53, 73, 91, 50, 84, 67, 70, 57, 64, 69, 61, 81, 63, 71, 57, 61, 61, 63, 56, 72, 71, 70, 66, 69, 73, 54, 64, 61, 82, 81, 49, 69, 48, 71, 62, 51, 55, 53, 101, 78, 73, 50, 51, 67, 83, 76, 67, 66, 52, 95, 43, 65, 78, 52, 44, 63, 56, 65, 77, 62, 71, 70, 63, 73, 58, 60, 66, 60, 59, 64, 58, 73, 63, 62, 48, 53, 94, 75, 71, 71, 77, 72, 65, 69, 71, 68, 57, 54, 106, 80, 57, 51, 61, 56, 88, 71, 54, 58, 67, 75, 71, 80, 63, 51, 87, 57, 59, 56, 72, 52, 75, 69, 67, 52, 61, 56, 65, 54, 69, 65, 60, 49, 57, 56, 72, 44, 55, 81, 61, 54, 60, 55, 78, 50, 50, 61, 43, 87, 91, 80, 63, 59, 86, 55, 48, 72, 57, 108, 94, 46, 73, 73, 87, 60, 58, 71, 75, 65, 94, 61, 57, 67, 60, 99, 68, 43, 81, 90, 79, 60, 68, 55, 59, 66, 52, 64, 73, 55, 82, 64, 71, 66, 88, 57, 104, 46, 68, 50, 69, 62, 58, 57, 78, 70, 57, 69, 69, 67, 59, 81, 64, 57, 61, 55, 57, 89, 89, 52, 66, 53, 62, 67, 56, 77, 62, 66, 63, 59, 59, 86, 69, 66, 59, 68, 59, 49, 70, 49, 138, 75, 59, 51, 81, 67, 66, 59, 66, 43, 60, 49, 60, 80, 71, 61, 87, 71, 79, 60, 68, 80, 75, 52, 65, 53, 62, 65, 71, 72, 92, 88, 74, 58, 67, 64, 69, 54, 62, 58, 57, 66, 57, 42, 58, 50, 72, 43, 61, 61, 81, 59, 32, 69, 113, 60, 68, 63, 54, 54, 64, 48, 58, 82, 70, 48, 63, 56, 53, 59, 73, 54, 71, 72, 57, 70, 39, 76, 57, 55, 69, 79, 63, 51, 86, 54, 64, 74, 42, 82, 64, 62, 65, 64, 60, 68, 56, 66, 59, 81, 65, 63, 44, 88, 64, 64, 84, 59, 81, 67, 41, 77, 61, 68, 92, 56, 78, 80, 64, 53, 57, 74, 46, 49, 70, 66, 95, 57, 58, 88, 55, 70, 73, 63, 85, 100, 88, 67, 82, 54, 48, 40, 73, 68, 91, 79, 50, 63, 58, 75, 62, 52, 43, 68, 70, 63, 63, 52, 67, 61, 48, 63, 77, 67, 86, 58, 56, 42, 70, 68, 84, 57, 59, 68, 58, 111, 71, 81, 55, 85, 61, 79, 54, 69, 59, 57, 108, 63, 42, 55, 81, 63, 56, 36, 81, 73, 64, 51, 67, 63, 93, 55, 73, 72, 63, 56, 65, 61, 64, 62, 56, 48, 64, 60, 63, 50, 61, 72, 57, 71, 59, 59, 55, 64, 70, 77, 77, 53, 66, 64, 71, 57, 67, 58, 65, 50, 69, 55, 58, 71, 50, 78, 66, 76, 61, 88, 89, 67, 71, 47, 58, 57, 57, 59, 67, 67, 79, 82, 54, 55, 68, 71, 69, 66, 50, 88, 65, 78, 47, 57, 37, 50, 46, 58, 52, 47, 56, 58, 86, 75, 63, 68, 67, 85, 70, 89, 49, 55, 65, 71, 52, 42, 61, 87, 50, 57, 80, 61, 55, 58, 135, 58, 63, 67, 62, 50, 71, 94, 76, 53, 89, 53, 41, 62, 102, 52, 76, 71, 62, 89, 63, 63, 43, 43, 50, 73, 62, 65, 71, 54, 61, 58, 44, 71, 66, 109, 56, 51, 49, 47, 54, 75, 54, 61, 102, 64, 49, 78, 59, 52, 70, 49, 47, 71, 58, 63, 83, 58, 54, 75, 86, 50, 58, 56, 63, 53, 80, 59, 47, 82, 68, 69, 72, 53, 67, 64, 65, 54, 67, 51, 47, 94, 65, 64, 73, 62, 71, 68, 68, 51, 88, 70, 66, 79, 53, 54, 60, 62, 56, 62, 61, 61, 71, 70, 67, 80, 71, 51, 55, 63, 65, 74, 76, 58, 86, 56, 78, 74, 74, 49, 84, 57, 55, 67, 51, 72, 67, 46, 72, 66, 53, 71, 45, 60, 60, 56, 53, 64, 71, 50, 62, 88, 67, 81, 57, 134, 55, 96, 55, 53, 83, 63, 68, 69, 55, 74, 52, 87, 57, 78, 86, 63, 60, 81, 71, 57, 61, 58, 71, 57, 57, 61, 60, 49, 61, 59, 79, 65, 66, 42, 64, 76, 65, 69, 101, 65, 56, 49, 78, 70, 76, 65, 62, 97, 61, 57, 71, 52, 63, 57, 66, 54, 76, 59, 52, 58, 54, 63, 62, 60, 55, 56, 70, 48, 53, 74, 87, 69, 75, 67, 79, 55, 70, 103, 69, 53, 80, 68, 78, 56, 69, 58, 65, 75, 52, 81, 62, 75, 69, 69, 74, 66, 81, 52, 58, 70, 50, 67, 66, 100, 59, 64, 72, 72, 64, 74, 56, 110, 70, 71, 56, 62, 71, 63, 50, 72, 69, 74, 76, 56, 54, 57, 86, 45, 44, 65, 80, 74, 63, 49, 65, 45, 54, 67, 58, 58, 65, 74, 49, 70, 59, 78, 56, 61, 65, 58, 68, 64, 62, 63, 56, 58, 57, 65, 71, 63, 112, 62, 54, 50, 55, 70, 68, 71, 47, 57, 62, 59, 67, 75, 45, 59, 54, 50, 68, 54, 60, 66, 59, 57, 77, 66, 62, 53, 77, 71, 65, 61, 59, 60, 68, 53, 52, 62, 69, 58, 66, 61, 56, 56, 76, 68, 73, 98, 53, 54, 78, 65, 51, 56, 47, 53, 73, 59, 105, 77, 63, 67, 70, 73, 53, 69, 39, 61, 68, 56, 59, 73, 56, 60, 49, 76, 55, 88, 42, 93, 68, 78, 54, 61, 64, 82, 73, 57, 54, 77, 58, 93, 64, 61, 75, 67, 61, 56, 78, 60, 59, 106, 71, 58, 80, 49, 79, 55, 58, 56, 51, 63, 58, 88, 58, 60, 81, 64, 68, 55, 61, 68, 50, 53, 83, 88, 39, 71, 53, 44, 65, 67, 72, 60, 83, 81, 73, 49, 70, 61, 59, 62, 52, 80, 76, 69, 86, 67, 83, 61, 90, 70, 58, 55, 54, 63, 60, 63, 109, 103, 98, 71, 61, 85, 93, 53, 114, 53, 55, 75, 86, 48, 109, 60, 53, 76, 63, 84, 92, 66, 83, 46, 109, 107, 85, 99, 56, 67, 94, 76, 72, 120, 55, 58, 88, 72, 68, 50, 56, 44, 42, 50, 61, 53, 48, 58, 103, 75, 64, 57, 42, 57, 63, 86, 74, 66, 49, 49, 69, 69, 82, 56, 48, 70, 69, 71, 71, 85, 60, 89, 65, 82, 73, 68, 63, 88, 68, 66, 79, 71, 60, 65, 60, 56, 70, 53, 48, 62, 69, 74, 62, 52, 68, 47, 77, 54, 80, 74, 73, 78, 58, 92, 73, 62, 64, 55, 62, 66, 73, 56, 48, 70, 83, 67, 59, 55, 65, 47, 74, 57, 52, 55, 63, 78, 82, 54, 127, 60, 93, 74, 75, 58, 63, 49, 68, 67, 57, 49, 66, 53, 81, 76, 67, 63, 71, 49, 64, 56, 50, 63, 46, 61, 67, 93, 39, 65, 88, 63, 59, 43, 66, 65, 102, 50, 60, 73, 133, 59, 77, 55, 57, 60, 77, 73, 69, 50, 68, 77, 59, 67, 66, 45, 78, 60, 57, 65, 56, 77, 63, 62, 78, 67, 83, 82, 86, 73, 65, 71, 84, 58, 66, 67, 54, 74, 91, 65, 77, 53, 87, 58, 70, 108, 75, 63, 59, 57, 60, 82, 55, 59, 65, 39, 49, 55, 105, 59, 58, 62, 74, 73, 72, 75, 70, 66, 74, 39, 64, 91, 59, 44, 84, 71, 75, 63, 50, 59, 95, 51, 77, 50, 59, 70, 71, 58, 46, 67, 57, 58, 141, 103, 69, 74, 107, 49, 69, 58, 81, 77, 56, 66, 55, 53, 65, 68, 74, 55, 49, 50, 56, 56, 75, 53, 62, 61, 65, 71, 34, 67, 63, 92, 53, 59, 75, 74, 81, 55, 51, 68, 48, 47, 77, 46, 51, 92, 50, 65, 46, 51, 57, 64, 68, 78, 91, 49, 79, 61, 64, 55, 66, 54, 66, 63, 64, 91, 79, 59, 59, 81, 36, 53, 71, 66, 57, 70, 62, 89, 62, 44, 89, 70, 53, 50, 55, 63, 55, 83, 54, 74, 71, 73, 67, 72, 58, 54, 62, 80, 76, 65, 48, 57, 63, 96, 59, 73, 83, 63, 60, 58, 45, 83, 74, 68, 64, 86, 54, 67, 98, 86, 50, 56, 63, 48, 65, 72, 85, 119, 69, 100, 69, 78, 62, 55, 89, 96, 74, 62, 72, 90, 67, 48, 72, 77, 56, 50, 85, 66, 57, 47, 71, 62, 42, 57, 63, 63, 47, 53, 77, 80, 57, 66, 64, 63, 58, 59, 59, 58, 58, 61, 74, 73, 71, 59, 66, 64, 52, 92, 66, 75, 69, 67, 69, 81, 68, 61, 48, 81, 70, 61, 97, 71, 77, 81, 49, 39, 48, 61, 56, 98, 61, 65, 63, 69, 64, 94, 74, 49, 43, 77, 56, 50, 83, 67, 95, 68, 81, 80, 66, 50, 52, 57, 64, 84, 81, 65, 58, 53, 86, 53, 51, 52, 93, 53, 65, 91, 51, 68, 54, 56, 84, 91, 42, 47, 70, 27, 75, 74, 93, 72, 38, 58, 62, 81, 83, 56, 53, 60, 52, 86, 57, 76, 53, 72, 90, 73, 62, 91, 69, 45, 80, 65, 57, 46, 50, 62, 73, 119, 95, 75, 72, 73, 62, 78, 94, 69, 65, 71, 58, 86, 59, 88, 63, 47, 48, 89, 65, 69, 72, 61, 65, 67, 66, 63, 63, 77, 59, 68, 37, 59, 66, 74, 60, 66, 81, 71, 54, 73, 77, 72, 53, 57, 79, 62, 84, 92, 47, 64, 65, 72, 86, 62, 52, 42, 57, 55, 59, 79, 58, 77, 37, 75, 59, 92, 83, 60, 80, 55, 64, 62, 71, 87, 59, 23, 52, 35, 63, 60, 82, 51, 66, 71, 51, 57, 46, 55, 81, 89, 35, 70, 58, 63, 71, 36, 71, 54, 47, 69, 61, 55, 57, 81, 64, 75, 66, 79, 101, 62, 43, 25, 57, 43, 51, 43, 60, 72, 78, 68, 76, 43, 47, 104, 79, 48, 70, 74, 42, 53, 52, 67, 72, 50, 61, 51, 37, 78, 81, 72, 38, 33, 54, 59, 66, 59, 53, 82, 63, 52, 79, 81, 66, 79, 97, 87, 33, 81, 88, 54, 59, 74, 72, 88, 80, 51, 45, 72, 67, 59, 95, 70, 72, 67, 94, 96, 48, 75, 95, 50, 42, 84, 30, 70, 75, 60, 51, 82, 31, 65, 83, 57, 125, 60, 78, 68, 64, 63, 78, 53, 65, 91, 62, 70, 90, 54, 40, 62, 91, 52, 75, 53, 70, 98, 53, 61, 65, 30, 67, 60, 71, 70, 55, 42, 109, 66, 51, 74, 52, 90, 65, 46, 29, 72, 91, 49, 73, 57, 78, 61, 91, 51, 59, 69, 75, 56, 49, 68, 45, 89, 62, 59, 37, 68, 80, 83, 37, 72, 70, 53, 47, 69, 56, 67, 51, 73, 65, 47, 81, 47, 78, 66, 68, 39, 66, 51, 73, 70, 68, 73, 54, 82, 59, 63, 50, 83, 106, 61, 57, 70, 52, 53, 76, 40, 104, 85, 80, 75, 69, 72, 91, 58, 121, 52, 59, 78, 65, 62, 109, 63, 80, 66, 61, 55, 72, 58, 95, 56, 49, 87, 61, 39, 60, 56, 126, 78, 75, 80, 47, 75, 43, 83, 54, 60, 75, 90, 43, 55, 82, 54, 46, 75, 64, 87, 71, 67, 68, 65, 72, 48, 66, 47, 42, 52, 63, 76, 42, 78, 73, 71, 84, 81, 57, 58, 71, 60, 93, 34, 73, 65, 59, 51, 71, 72, 71, 52, 66, 66, 50, 59, 66, 127, 101, 63, 79, 64, 50, 44, 62, 65, 93, 91, 43, 60, 69, 69, 121, 71, 55, 30, 65, 72, 69, 95, 63, 55, 71, 68, 48, 47, 61, 52, 72, 57, 65, 89, 71, 66, 75, 66, 55, 42, 43, 67, 67, 64, 50, 73, 72, 48, 66, 109, 98, 81, 59, 70, 82, 81, 75, 56, 76, 58, 74, 89, 47, 79, 72, 79, 70, 63, 62, 59, 73, 77, 86, 41, 81, 75, 45, 61, 68, 69, 95, 47, 63, 81, 64, 76, 77, 64, 51, 27, 86, 66, 70, 79, 74, 60, 69, 86, 60, 60, 35, 42, 77, 68, 92, 57, 40, 101, 59, 76, 71, 88, 28, 69, 67, 46, 79, 78, 62, 52, 77, 54, 50, 53, 74, 72, 46, 52, 41, 51, 80, 70, 60, 73, 101, 60, 47, 84, 79, 64, 61, 50, 53, 64, 45, 116, 65, 63, 100, 45, 70, 62, 72, 37, 76, 101, 55, 57, 66, 53, 95, 89, 67, 60, 55, 54, 73, 53, 68, 68, 58, 56, 57, 91, 74, 68, 86, 85, 56, 60, 72, 64, 55, 86, 74, 44, 64, 74, 76, 63, 53, 58, 46, 38, 93, 58, 65, 33, 67, 49, 95, 102, 56, 46, 64, 50, 85, 92, 44, 74, 69, 70, 88, 74, 75, 105, 46, 65, 73, 69, 46, 58, 79, 42, 93, 69, 61, 62, 62, 85, 70, 55, 89, 61, 56, 47, 44, 66, 87, 59, 50, 58, 41, 56, 59, 50, 42, 87, 58, 47, 77, 62, 50, 59, 73, 64, 67, 67, 71, 59, 48, 56, 81, 37, 52, 59, 46, 65, 75, 129, 63, 68, 78, 36, 74, 55, 103, 66, 49, 62, 92, 58, 71, 58, 60, 82, 67, 62, 69, 59, 54, 60, 79, 66, 42, 48, 84, 71, 38, 50, 47, 86, 75, 49, 80, 50, 71, 70, 107, 60, 69, 65, 63, 64, 97, 74, 93, 71, 57, 93, 79, 31, 81, 43, 73, 109, 76, 80, 62, 51, 52, 67, 51, 70, 47, 78, 63, 92, 68, 47, 67, 36, 49, 73, 58, 56, 53, 64, 101, 89, 71, 59, 65, 77, 44, 63, 97, 48, 87, 69, 53, 91, 64, 49, 64, 83, 67, 97, 78, 85, 42, 82, 20, 104, 40, 62, 64, 65, 57, 61, 70, 70, 73, 83, 53, 43, 76, 59, 84, 83, 54, 69, 36, 62, 54, 60, 82, 60, 78, 114, 54, 59, 54, 66, 85, 75, 85, 74, 70, 69, 60, 65, 87, 73, 54, 78, 52, 45, 57, 83, 83, 42, 34, 130, 75, 80, 89, 98, 74, 48, 100, 57, 49, 74, 68, 67, 88, 46, 64, 67, 71, 70, 114, 28, 48, 83, 70, 74, 81, 32, 38, 75, 84, 74, 46, 59, 73, 58, 97, 62, 77, 40, 50, 48, 50, 70, 58, 75, 54, 56, 53, 62, 42, 51, 89, 58, 93, 77, 71, 56, 72, 69, 57, 67, 52, 44, 71, 69, 54, 47, 79, 104, 79, 71, 69, 39, 76, 63, 51, 58, 92, 58, 104, 54, 66, 78, 71, 95, 79, 38, 35, 75, 59, 38, 70, 72, 59, 57, 51, 67, 67, 63, 81, 68, 46, 107, 61, 75, 88, 55, 61, 60, 66, 71, 71, 58, 57, 63, 52, 37, 84, 44, 66, 56, 52, 53, 49, 80, 75, 68, 93, 61, 62, 68, 79, 54, 81, 49, 64, 70, 102, 49, 62, 65, 65, 68, 59, 67, 68, 60, 36, 105, 76, 59, 51, 82, 70, 61, 59, 51, 61, 64, 58, 61, 64, 63, 74, 67, 61, 74, 71, 73, 63, 57, 75, 74, 67, 44, 70, 67, 70, 74, 58, 50, 56, 55, 65, 50, 78, 63, 100, 65, 90, 71, 55, 82, 64, 65, 66, 71, 64, 46, 75, 80, 59, 67, 70, 61, 81, 64, 50, 77, 51, 47, 65, 89, 73, 72, 76, 68, 84, 67, 75, 100, 56, 62, 68, 74, 58, 55, 83, 67, 66, 64, 88, 54, 48, 55, 48, 63, 70, 55, 57, 77, 50, 70, 50, 64, 58, 82, 61, 49, 77, 53, 78, 52, 69, 72, 63, 64, 66, 63, 59, 67, 60, 74, 55, 64, 95, 75, 61, 116, 68, 84, 66, 53, 55, 76, 66, 67, 59, 64, 61, 46, 66, 57, 70, 61, 73, 51, 70, 61, 60, 60, 93, 72, 59, 60, 80, 72, 65, 69, 60, 69, 43, 104, 52, 68, 61, 105, 55, 62, 95, 64, 51, 58, 65, 68, 88, 64, 87, 56, 58, 66, 68, 67, 56, 36, 65, 51, 58, 68, 80, 69, 56, 73, 57, 65, 69, 35, 57, 62, 63, 61, 87, 69, 72, 67, 96, 71, 75, 67, 72, 53, 74, 68, 75, 63, 59, 59, 67, 72, 76, 63, 54, 64, 46, 61, 61, 67, 72, 50, 50, 65, 94, 81, 52, 59, 53, 71, 76, 52, 72, 56, 66, 78, 77, 53, 66, 92, 71, 60, 64, 94, 49, 66, 57, 63, 53, 71, 61, 70, 69, 60, 63, 61, 43, 72, 74, 70, 68, 70, 72, 46, 59, 73, 60, 50, 68, 55, 80, 64, 77, 53, 57, 63, 67, 75, 59, 70, 57, 68, 78, 82, 58, 82, 65, 52, 57, 63, 94, 57, 47, 66, 56, 57, 70, 60, 62, 53, 62, 63, 60, 59, 53, 89, 72, 67, 63, 57, 52, 69, 51, 54, 57, 54, 73, 71, 50, 60, 67, 69, 63, 108, 57, 67, 50, 104, 74, 57, 58, 69, 68, 66, 56, 72, 55, 78, 74, 74, 64, 59, 67, 61, 66, 54, 60, 68, 79, 66, 73, 62, 61, 88, 71, 47, 94, 76, 69, 61, 74, 76, 58, 63, 58, 51, 68, 61, 42, 72, 61, 55, 19, 61, 73, 51, 77, 41, 79, 59, 69, 61, 63, 51, 60, 76, 61, 60, 73, 60, 52, 54, 62, 57, 62, 76, 62, 81, 88, 55, 69, 68, 53, 69, 62, 70, 61, 71, 66, 55, 71, 64, 86, 61, 68, 54, 48, 63, 58, 74, 77, 76, 64, 69, 68, 60, 53, 39, 90, 90, 60, 62, 54, 61, 53, 45, 54, 73, 68, 71, 68, 69, 89, 65, 66, 77, 55, 57, 129, 73, 53, 48, 98, 47, 114, 62, 64, 65, 70, 47, 55, 56, 49, 68, 62, 55, 73, 56, 50, 44, 58, 60, 60, 66, 60, 71, 64, 91, 65, 58, 66, 67, 64, 65, 71, 66, 45, 93, 63, 52, 62, 67, 77, 74, 67, 64, 54, 68, 72, 55, 64, 59, 56, 83, 78, 81, 102, 67, 55, 74, 72, 68, 49, 90, 65, 51, 56, 61, 56, 54, 56, 67, 76, 68, 59, 61, 61, 66, 68, 70, 66, 70, 76, 52, 46, 59, 81, 69, 56, 61, 61, 63, 53, 113, 63, 69, 69, 85, 68, 69, 81, 61, 66, 63, 77, 67, 141, 72, 54, 91, 65, 58, 68, 59, 59, 53, 59, 112, 75, 59, 70, 76, 66, 52, 82, 49, 55, 66, 61, 57, 59, 67, 67, 61, 64, 61, 77, 70, 57, 72, 67, 77, 72, 83, 79, 89, 74, 54, 56, 73, 68, 67, 63, 72, 62, 72, 44, 65, 53, 54, 64, 64, 60, 58, 63, 62, 66, 61, 90, 56, 78, 60, 88, 60, 67, 63, 70, 75, 56, 56, 69, 92, 47, 56, 65, 49, 60, 69, 55, 74, 73, 58, 50, 61, 61, 86, 61, 81, 69, 64, 58, 124, 61, 60, 74, 61, 61, 66, 45, 55, 76, 68, 67, 51, 60, 64, 64, 75, 79, 73, 63, 64, 71, 69, 66, 64, 58, 66, 61, 87, 52, 73, 67, 71, 133, 56, 62, 73, 59, 80, 56, 52, 61, 80, 70, 70, 65, 72, 70, 45, 59, 73, 51, 58, 75, 66, 78, 69, 71, 77, 65, 73, 69, 62, 71, 70, 85, 54, 51, 54, 62, 67, 53, 64, 70, 64, 61, 56, 86, 48, 56, 67, 70, 74, 46, 77, 59, 55, 75, 68, 54, 66, 86, 45, 66, 56, 65, 63, 91, 61, 57, 65, 80, 62, 76, 58, 60, 72, 57, 75, 97, 58, 54, 64, 62, 69, 51, 55, 54, 81, 97, 59, 68, 78, 55, 57, 55, 68, 101, 92, 46, 69, 60, 72, 69, 54, 75, 55, 75, 73, 70, 91, 76, 78, 87, 81, 160, 73, 65, 64, 72, 51, 68, 88, 67, 56, 53, 79, 62, 58, 63, 72, 32, 62, 61, 49, 60, 90, 66, 64, 71, 75, 57, 57, 60, 82, 66, 47, 54, 49, 52, 61, 56, 59, 78, 74, 61, 46, 64, 47, 59, 57, 44, 93, 54, 67, 67, 57, 73, 60, 75, 64, 58, 52, 63, 64, 83, 65, 73, 69, 60, 59, 49, 59, 62, 72, 74, 81, 63, 76, 76, 61, 62, 52, 62, 59, 65, 67, 78, 65, 55, 53, 77, 74, 58, 54, 59, 68, 73, 66, 91, 63, 69, 52, 79, 47, 54, 78, 65, 74, 52, 62, 69, 69, 68, 67, 85, 72, 72, 64, 64, 39, 65, 62, 93, 61, 66, 69, 47, 118, 77, 71, 72, 46, 64, 62, 57, 104, 63, 47, 64, 70, 65, 61, 71, 63, 74, 66, 78, 99, 61, 65, 66, 79, 70, 64, 71, 70, 62, 57, 82, 50, 78, 64, 77, 59, 48, 49, 56, 83, 56, 52, 58, 76, 42, 71, 57, 56, 77, 71, 60, 75, 96, 78, 101, 67, 46, 65, 56, 62, 63, 75, 67, 75, 94, 59, 64, 60, 76, 73, 73, 55, 66, 57, 57, 48, 57, 84, 65, 53, 66, 69, 48, 53, 74, 44, 57, 56, 70, 66, 47, 53, 67, 81, 70, 71, 52, 49, 58, 68, 57, 52, 58, 58, 57, 60, 59, 67, 70, 57, 53, 72, 79, 63, 92, 71, 123, 66, 74, 69, 58, 70, 58, 109, 51, 74, 61, 61, 67, 67, 66, 43, 55, 63, 72, 77, 53, 72, 67, 59, 55, 66, 70, 41, 56, 73, 46, 47, 106, 57, 57, 84, 56, 51, 71, 84, 79, 62, 64, 61, 43, 91, 68, 54, 91, 65, 93, 52, 80, 63, 78, 75, 78, 63, 54, 76, 63, 71, 83, 66, 54, 60, 67, 57, 58, 80, 70, 108, 51, 62, 69, 66, 82, 66, 68, 70, 77, 56, 78, 50, 57, 54, 82, 86, 62, 68, 81, 68, 83, 67, 64, 64, 75, 78, 44, 81, 45, 72, 61, 54, 54, 40, 75, 50, 68, 43, 78, 56, 74, 44, 64, 54, 59, 130, 102, 70, 66, 61, 62, 71, 70, 63, 100, 59, 74, 74, 68, 58, 64, 55, 62, 69, 78, 55, 61, 56, 59, 75, 65, 56, 59, 55, 63, 54, 79, 73, 56, 47, 54, 74, 46, 65, 56, 69, 78, 62, 72, 64, 92, 67, 82, 79, 74, 64, 69, 73, 80, 67, 84, 91, 60, 87, 67, 53, 55, 61, 69, 56, 62, 58, 78, 110, 86, 64, 40, 65, 75, 57, 85, 65, 50, 64, 68, 72, 67, 58, 56, 64, 65, 112, 65, 93, 68, 57, 66, 64, 50, 70, 51, 63, 125, 69, 72, 62, 67, 59, 67, 108, 71, 86, 51, 61, 59, 104, 75, 61, 53, 52, 74, 54, 73, 65, 64, 81, 65, 51, 60, 65, 73, 79, 59, 58, 48, 76, 65, 57, 72, 66, 82, 60, 61, 64, 66, 61, 71, 73, 89, 31, 72, 62, 77, 64, 83, 54, 53, 73, 71, 33, 72, 61, 70, 92, 64, 115, 58, 80, 68, 64, 67, 61, 77, 59, 74, 66, 55, 66, 59, 59, 66, 40, 70, 52, 77, 70, 61, 55, 63, 49, 85, 72, 65, 59, 75, 69, 76, 112, 51, 93, 79, 57, 57, 61, 39, 58, 50, 69, 73, 48, 74, 65, 56, 71, 112, 72, 49, 83, 78, 98, 70, 54, 59, 52, 68, 103, 61, 57, 76, 51, 64, 67, 47, 63, 70, 72, 67, 62, 51, 70, 63, 49, 79, 57, 90, 63, 62, 93, 59, 57, 112, 57, 51, 94, 69, 85, 40, 52, 68, 42, 52, 63, 53, 73, 59, 66, 56, 132, 65, 70, 56, 78, 59, 110, 63, 56, 53, 69, 87, 70, 50, 36, 69, 106, 44, 61, 60, 51, 62, 60, 98, 103, 55, 66, 76, 55, 63, 53, 55, 40, 54, 52, 67, 64, 81, 61, 50, 63, 106, 61, 92, 50, 21, 74, 63, 72, 59, 61, 58, 88, 68, 81, 63, 45, 55, 52, 47, 61, 58, 68, 67, 33, 56, 57, 120, 63, 65, 69, 71, 71, 48, 76, 48, 79, 59, 70, 48, 49, 49, 66, 69, 65, 51, 48, 53, 66, 74, 63, 80, 62, 59, 56, 72, 58, 67, 61, 80, 87, 60, 68, 65, 68, 41, 59, 70, 68, 61, 68, 57, 78, 50, 72, 84, 68, 73, 68, 65, 52, 55, 66, 65, 80, 75, 52, 82, 57, 73, 73, 66, 49, 59, 72, 53, 77, 66, 44, 88, 68, 59, 57, 57, 48, 55, 78, 58, 64, 81, 58, 60, 58, 57, 68, 47, 69, 54, 72, 61, 70, 60, 89, 57, 54, 50, 68, 71, 69, 73, 44, 54, 50, 89, 56, 49, 46, 66, 79, 72, 55, 77, 74, 52, 55, 79, 46, 79, 43, 69, 60, 74, 69, 59, 60, 64, 62, 51, 77, 44, 67, 51, 50, 71, 47, 40, 71, 74, 51, 76, 64, 96, 72, 66, 69, 101, 75, 62, 67, 55, 73, 60, 56, 67, 54, 66, 38, 79, 75, 71, 66, 61, 68, 61, 73, 54, 70, 75, 65, 70, 65, 72, 64, 77, 65, 68, 62, 63, 84, 71, 71, 69, 57, 51, 50, 50, 70, 55, 68, 56, 61, 63, 58, 62, 65, 59, 86, 92, 61, 70, 71, 61, 51, 60, 59, 66, 58, 33, 66, 78, 80, 70, 56, 74, 83, 56, 61, 56, 82, 58, 51, 60, 68, 59, 64, 76, 57, 58, 50, 68, 76, 49, 70, 79, 76, 68, 79, 65, 58, 65, 62, 56, 88, 96, 69, 181, 75, 81, 90, 57, 54, 55, 50, 71, 71, 73, 73, 64, 47, 58, 70, 57, 67, 51, 81, 53, 49, 94, 70, 62, 74, 60, 71, 85, 59, 56, 86, 61, 76, 58, 64, 104, 90, 55, 67, 62, 74, 54, 75, 66, 57, 55, 78, 78, 65, 78, 52, 82, 69, 42, 45, 44, 75, 58, 62, 91, 67, 55, 87, 86, 64, 73, 73, 82, 138, 97, 76, 71, 57, 88, 58, 79, 65, 52, 84, 70, 71, 46, 101, 58, 70, 93, 69, 89, 55, 64, 83, 51, 65, 72, 70, 54, 50, 52, 69, 63, 86, 53, 79, 94, 75, 57, 52, 60, 61, 65, 60, 55, 64, 55, 80, 65, 70, 66, 56, 48, 39, 65, 43, 76, 75, 60, 71, 71, 92, 55, 51, 40, 72, 60, 60, 58, 61, 70, 31, 73, 75, 93, 56, 47, 46, 62, 76, 54, 56, 56, 54, 69, 88, 80, 57, 75, 56, 39, 77, 56, 53, 56, 47, 83, 62, 67, 68, 78, 90, 66, 59, 65, 61, 65, 81, 67, 83, 71, 90, 85, 71, 65, 69, 84, 65, 58, 64, 55, 87, 58, 52, 45, 75, 61, 65, 82, 58, 99, 64, 57, 61, 44, 69, 56, 46, 58, 98, 51, 76, 47, 57, 50, 59, 46, 62, 83, 63, 66, 79, 76, 67, 70, 78, 76, 66, 70, 80, 71, 62, 52, 66, 94, 98, 57, 38, 90, 70, 66, 73, 53, 57, 63, 68, 55, 71, 57, 76, 43, 67, 83, 53, 62, 59, 57, 55, 53, 63, 75, 53, 50, 90, 63, 78, 76, 54, 74, 62, 65, 68, 51, 55, 65, 76, 80, 62, 62, 65, 85, 56, 64, 84, 50, 82, 60, 94, 67, 79, 46, 67, 65, 59, 53, 66, 65, 60, 54, 60, 81, 70, 55, 55, 65, 62, 67, 56, 45, 62, 56, 71, 61, 62, 62, 52, 66, 57, 79, 61, 71, 68, 80, 71, 81, 56, 58, 64, 55, 76, 56, 68, 62, 68, 69, 70, 108, 42, 57, 104, 71, 113, 90, 55, 84, 66, 74, 71, 69, 57, 72, 65, 94, 61, 58, 67, 49, 67, 74, 58, 82, 86, 75, 47, 54, 69, 72, 50, 70, 61, 57, 58, 58, 67, 58, 67, 77, 52, 44, 72, 58, 98, 53, 56, 55, 41, 66, 56, 72, 45, 58, 63, 69, 89, 49, 55, 59, 78, 51, 60, 55, 65, 61, 68, 48, 72, 77, 63, 61, 59, 101, 62, 78, 69, 78, 72, 52, 56, 89, 75, 63, 57, 62, 62, 83, 78, 63, 72, 77, 60, 75, 65, 58, 48, 97, 61, 61, 83, 61, 77, 51, 68, 87, 63, 56, 69, 42, 50, 60, 71, 70, 73, 46, 67, 48, 74, 71, 77, 97, 65, 51, 56, 70, 66, 54, 76, 69, 57, 59, 82, 51, 81, 69, 70, 56, 60, 63, 52, 58, 47, 64, 50, 51, 64, 81, 52, 40, 64, 81, 77, 50, 54, 77, 44, 62, 73, 58, 65, 60, 65, 50, 56, 69, 52, 48, 50, 50, 84, 122, 60, 62, 78, 61, 64, 79, 56, 66, 61, 62, 58, 48, 55, 55, 63, 49, 75, 75, 44, 56, 53, 69, 56, 67, 58, 52, 70, 79, 54, 60, 64, 74, 64, 58, 72, 71, 50, 66, 65, 48, 80, 73, 74, 66, 61, 83, 76, 75, 60, 47, 69, 51, 72, 54, 84, 63, 59, 56, 55, 66, 67, 72, 129, 80, 78, 66, 62, 56, 73, 53, 83, 47, 57, 76, 68, 49, 73, 76, 38, 166, 59, 44, 82, 72, 73, 70, 49, 55, 66, 61, 74, 84, 66, 86, 63, 58, 58, 60, 43, 71, 64, 66, 59, 72, 63, 59, 65, 81, 42, 50, 83, 51, 65, 58, 75, 71, 58, 107, 62, 44, 68, 76, 65, 63, 97, 81, 47, 63, 62, 67, 52, 56, 69, 84, 59, 81, 64, 68, 71, 70, 69, 48, 74, 85, 61, 53, 41, 61, 55, 89, 60, 61, 70, 78, 61, 64, 61, 66, 60, 75, 71, 61, 64, 43, 59, 65, 53, 47, 65, 69, 63, 84, 69, 64, 71, 99, 62, 58, 50, 70, 54, 73, 66, 67, 61, 54, 47, 82, 76, 42, 60, 56, 60, 71, 53, 68, 54, 51, 60, 64, 77, 84, 62, 68, 69, 82, 56, 54, 68, 53, 56, 62, 57, 84, 57, 75, 69, 59, 71, 55, 70, 57, 57, 76, 65, 75, 73, 85, 103, 91, 46, 59, 47, 69, 66, 71, 67, 76, 78, 75, 68, 55, 64, 66, 76, 63, 54, 56, 35, 60, 58, 63, 55, 55, 55, 60, 70, 70, 68, 64, 71, 103, 86, 74, 53, 64, 56, 83, 54, 47, 50, 88, 72, 69, 63, 53, 68, 60, 70, 56, 64, 61, 77, 81, 64, 59, 69, 60, 54, 67, 99, 77, 80, 52, 63, 58, 73, 70, 59, 56, 66, 55, 56, 55, 96, 53, 73, 55, 61, 78, 66, 64, 68, 66, 49, 57, 55, 60, 60, 46, 61, 72, 71, 72, 55, 75, 87, 46, 57, 67, 86, 58, 56, 61, 56, 63, 50, 85, 131, 58, 68, 57, 49, 50, 57, 64, 65, 67, 60, 61, 42, 55, 52, 58, 82, 38, 65, 69, 78, 44, 50, 60, 65, 66, 56, 63, 47, 59, 73, 68, 81, 62, 70, 55, 60, 63, 54, 68, 73, 46, 62, 58, 80, 71, 57, 55, 62, 56, 66, 58, 57, 57, 51, 60, 51, 63, 62, 94, 91, 70, 63, 59, 103, 74, 79, 59, 74, 67, 81, 77, 56, 94, 60, 56, 47, 52, 61, 90, 89, 61, 59, 56, 62, 63, 58, 78, 60, 63, 84, 63, 63, 56, 63, 65, 57, 58, 61, 62, 75, 61, 57, 70, 51, 67, 63, 67, 63, 94, 75, 59, 81, 66, 62, 86, 54, 74, 102, 54, 83, 52, 48, 57, 44, 58, 74, 62, 97, 68, 86, 53, 60, 56, 56, 60, 60, 51, 66, 74, 65, 58, 65, 61, 70, 77, 59, 76, 50, 71, 60, 54, 70, 76, 58, 65, 66, 64, 55, 87, 109, 86, 83, 71, 64, 68, 107, 73, 35, 76, 60, 71, 74, 71, 93, 60, 65, 94, 60, 64, 67, 107, 64, 46, 80, 67, 64, 73, 67, 57, 67, 51, 57, 61, 73, 63, 58, 71, 64, 59, 65, 62, 65, 54, 73, 73, 71, 56, 76, 59, 73, 59, 52, 48, 62, 54, 57, 81, 55, 62, 98, 56, 61, 60, 87, 84, 82, 63, 67, 63, 65, 59, 66, 75, 58, 55, 62, 72, 59, 75, 55, 49, 71, 66, 96, 55, 75, 69, 57, 102, 55, 65, 71, 43, 67, 48, 64, 80, 72, 63, 52, 63, 69, 68, 64, 96, 61, 71, 63, 45, 62, 63, 53, 54, 82, 64, 55, 65, 78, 42, 70, 65, 56, 53, 78, 55, 68, 73, 48, 76, 65, 64, 54, 67, 64, 75, 58, 52, 68, 66, 93, 66, 77, 85, 84, 62, 62, 62, 65, 72, 55, 76, 130, 79, 44, 61, 60, 77, 53, 49, 94, 66, 64, 58, 73, 51, 73, 57, 72, 52, 84, 97, 66, 49, 64, 76, 65, 58, 89, 87, 69, 92, 59, 68, 49, 87, 66, 46, 67, 49, 61, 68, 60, 53, 57, 64, 86, 67, 66, 70, 59, 82, 73, 53, 72, 63, 79, 62, 67, 103, 45, 58, 60, 75, 53, 53, 61, 58, 49, 59, 71, 85, 78, 52, 62, 70, 72, 67, 57, 69, 47, 129, 66, 82, 77, 66, 81, 84, 58, 65, 49, 60, 65, 61, 55, 57, 82, 65, 60, 58, 54, 111, 68, 53, 63, 66, 45, 95, 67, 75, 130, 54, 57, 62, 71, 57, 66, 68, 91, 64, 65, 67, 66, 63, 58, 64, 64, 75, 65, 78, 58, 54, 69, 63, 63, 53, 98, 61, 52, 79, 96, 60, 66, 58, 48, 67, 70, 58, 59, 75, 48, 67, 55, 65, 70, 57, 72, 70, 91, 77, 70, 64, 48, 68, 75, 44, 58, 66, 60, 67, 60, 53, 60, 82, 62, 66, 54, 85, 74, 76, 58, 96, 61, 76, 55, 84, 59, 60, 48, 83, 47, 64, 71, 69, 65, 95, 49, 61, 101, 76, 72, 54, 70, 70, 55, 94, 89, 50, 65, 43, 54, 94, 115, 69, 66, 77, 62, 93, 63, 58, 61, 69, 50, 70, 46, 71, 70, 111, 67, 68, 60, 55, 82, 62, 77, 81, 60, 78, 34, 61, 56, 54, 84, 92, 66, 57, 55, 70, 46, 57, 59, 72, 65, 68, 55, 79, 62, 53, 58, 62, 107, 57, 72, 63, 87, 53, 73, 73, 62, 61, 53, 84, 66, 59, 72, 101, 69, 79, 63, 38, 44, 81, 53, 69, 68, 106, 81, 104, 79, 61, 74, 62, 63, 51, 53, 121, 63, 85, 54, 69, 78, 63, 74, 65, 86, 64, 52, 68, 62, 64, 73, 92, 65, 69, 58, 56, 57, 67, 67, 63, 52, 67, 58, 56, 58, 65, 63, 84, 72, 55, 44, 59, 76, 53, 82, 75, 52, 85, 70, 95, 51, 51, 67, 80, 60, 55, 61, 57, 51, 92, 67, 59, 55, 73, 77, 79, 59, 76, 73, 54, 82, 61, 63, 62, 78, 53, 75, 75, 61, 61, 62, 48, 70, 54, 58, 52, 96, 65, 57, 62, 52, 61, 51, 71, 84, 73, 63, 51, 70, 79, 65, 73, 105, 58, 56, 50, 42, 68, 50, 55, 52, 70, 50, 76, 97, 47, 59, 78, 62, 67, 70, 101, 86, 69, 51, 63, 80, 71, 57, 79, 53, 71, 79, 43, 52, 56, 41, 80, 73, 56, 64, 50, 106, 49, 64, 72, 58, 44, 85, 44, 62, 38, 64, 59, 70, 60, 86, 71, 88, 74, 64, 67, 69, 61, 64, 66, 65, 63, 84, 120, 58, 78, 64, 66, 62, 33, 56, 56, 96, 51, 45, 67, 61, 81, 53, 65, 115, 49, 71, 85, 69, 44, 52, 42, 57, 56, 113, 103, 59, 66, 60, 81, 53, 48, 50, 101, 88, 70, 79, 63, 70, 103, 58, 73, 51, 64, 64, 74, 86, 47, 100, 71, 66, 63, 67, 87, 72, 56, 69, 64, 79, 46, 45, 60, 50, 68, 50, 57, 74, 80, 78, 55, 59, 64, 47, 52, 61, 56, 65, 56, 72, 62, 87, 86, 64, 52, 85, 72, 100, 50, 55, 59, 69, 68, 104, 60, 76, 70, 87, 45, 55, 55, 78, 103, 73, 68, 47, 65, 69, 33, 99, 66, 73, 68, 56, 65, 52, 76, 66, 66, 47, 48, 50, 46, 72, 71, 59, 51, 49, 42, 67, 57, 68, 51, 54, 57, 75, 67, 60, 64, 64, 59, 70, 53, 72, 75, 58, 82, 62, 49, 69, 88, 52, 67, 66, 62, 54, 70, 59, 59, 106, 97, 54, 145, 71, 59, 69, 87, 61, 78, 80, 58, 73, 69, 80, 69, 73, 44, 59, 81, 66, 42, 65, 85, 55, 58, 70, 78, 52, 46, 72, 64, 73, 68, 87, 50, 55, 57, 76, 66, 28, 59, 84, 94, 56, 49, 79, 88, 71, 68, 81, 79, 74, 80, 56, 56, 90, 64, 37, 78, 57, 73, 60, 81, 66, 95, 50, 66, 42, 64, 41, 64, 80, 53, 74, 74, 63, 62, 73, 74, 73, 43, 59, 73, 69, 69, 58, 72, 79, 56, 68, 82, 65, 50, 75, 49, 59, 70, 71, 59, 67, 104, 90, 94, 80, 60, 68, 79, 75, 55, 85, 49, 81, 100, 66, 48, 66, 67, 74, 49, 68, 67, 69, 55, 56, 52, 65, 77, 76, 84, 59, 52, 53, 75, 117, 67, 79, 86, 52, 34, 93, 55, 75, 51, 64, 67, 61, 73, 58, 64, 46, 58, 83, 79, 57, 68, 78, 68, 73, 77, 125, 82, 52, 65, 78, 91, 93, 81, 57, 44, 75, 47, 49, 67, 58, 63, 53, 57, 69, 55, 66, 108, 75, 89, 91, 118, 60, 72, 74, 42, 91, 74, 56, 83, 58, 63, 77, 75, 69, 55, 52, 81, 56, 60, 55, 53, 78, 60, 72, 59, 57, 58, 63, 53, 64, 72, 60, 76, 42, 48, 65, 67, 61, 66, 73, 63, 67, 105, 76, 49, 66, 75, 89, 69, 51, 74, 55, 77, 70, 62, 50, 53, 91, 53, 86, 58, 65, 67, 58, 52, 58, 71, 49, 72, 56, 87, 55, 61, 81, 63, 64, 55, 43, 120, 60, 65, 68, 71, 65, 67, 66, 52, 56, 112, 75, 64, 38, 58, 61, 53, 59, 77, 64, 59, 35, 65, 60, 38, 60, 66, 76, 56, 66, 64, 46, 56, 75, 113, 63, 69, 85, 55, 56, 60, 53, 63, 92, 68, 48, 72, 56, 47, 71, 68, 54, 62, 63, 53, 79, 72, 82, 59, 74, 69, 79, 61, 61, 55, 55, 60, 55, 60, 80, 48, 51, 72, 42, 64, 57, 58, 75, 62, 73, 65, 75, 71, 64, 69, 73, 80, 77, 62, 44, 62, 76, 61, 52, 59, 72, 62, 85, 61, 98, 64, 86, 72, 61, 55, 65, 57, 58, 69, 59, 47, 54, 40, 67, 69, 69, 56, 70, 50, 74, 45, 50, 50, 75, 59, 48, 80, 68, 67, 62, 52, 71, 95, 82, 53, 84, 63, 52, 48, 71, 56, 46, 54, 58, 57, 65, 63, 69, 57, 63, 65, 68, 63, 70, 83, 77, 59, 76, 51, 45, 75, 65, 78, 53, 63, 65, 66, 60, 41, 83, 55, 72, 66, 54, 55, 49, 68, 41, 73, 53, 52, 59, 60, 65, 50, 44, 78, 57, 51, 67, 78, 60, 69, 47, 84, 62, 55, 74, 79, 109, 67, 75, 48, 58, 74, 41, 58, 53, 63, 52, 59, 81, 64, 53, 79, 58, 45, 71, 59, 41, 72, 56, 50, 77, 53, 64, 58, 87, 58, 70, 64, 79, 61, 75, 54, 55, 60, 47, 47, 79, 60, 54, 47, 66, 54, 64, 65, 61, 72, 45, 76, 95, 59, 76, 78, 82, 78, 68, 47, 70, 58, 70, 49, 54, 73, 55, 86, 69, 76, 100, 46, 60, 72, 89, 50, 60, 84, 73, 42, 62, 74, 70, 66, 63, 96, 46, 59, 65, 116, 109, 71, 57, 77, 56, 66, 42, 57, 85, 59, 85, 65, 58, 62, 69, 56, 70, 55, 62, 55, 60, 48, 72, 70, 63, 71, 62, 71, 57, 69, 63, 71, 72, 67, 65, 66, 78, 65, 66, 64, 86, 79, 65, 67, 82, 69, 68, 58, 48, 55, 52, 60, 62, 62, 74, 63, 62, 65, 59, 68, 71, 53, 61, 76, 64, 54, 70, 75, 60, 60, 79, 60, 74, 67, 87, 59, 62, 60, 86, 73, 54, 56, 58, 51, 70, 54, 65, 62, 62, 51, 64, 64, 79, 61, 54, 60, 80, 89, 60, 58, 64, 97, 53, 60, 70, 59, 71, 75, 54, 57, 86, 75, 64, 62, 59, 62, 65, 59, 46, 75, 66, 52, 59, 59, 67, 58, 63, 55, 65, 79, 51, 79, 56, 86, 79, 59, 64, 69, 70, 64, 59, 69, 72, 70, 111, 65, 104, 71, 69, 55, 56, 60, 64, 60, 56, 73, 49, 61, 65, 72, 56, 55, 62, 54, 55, 30, 67, 73, 64, 77, 62, 66, 60, 55, 61, 44, 60, 92, 63, 78, 70, 64, 61, 55, 61, 63, 64, 76, 55, 68, 56, 59, 65, 57, 47, 57, 67, 62, 63, 69, 64, 54, 68, 53, 110, 50, 50, 70, 62, 76, 82, 58, 68, 68, 64, 71, 60, 68, 156, 65, 75, 60, 65, 55, 73, 59, 70, 67, 67, 60, 71, 70, 64, 72, 70, 65, 76, 91, 51, 73, 63, 60, 53, 69, 68, 61, 59, 75, 54, 118, 48, 56, 70, 66, 79, 72, 73, 62, 49, 65, 54, 62, 48, 64, 67, 63, 56, 75, 86, 77, 122, 63, 54, 52, 67, 73, 70, 57, 67, 73, 47, 51, 83, 64, 60, 55, 65, 55, 75, 54, 58, 58, 60, 72, 51, 66, 53, 54, 63, 67, 61, 49, 57, 76, 60, 56, 104, 62, 73, 71, 53, 63, 55, 58, 99, 63, 71, 72, 49, 62, 56, 60, 66, 51, 49, 75, 66, 60, 54, 59, 54, 53, 93, 64, 58, 71, 70, 68, 59, 69, 68, 67, 57, 64, 55, 57, 55, 58, 54, 83, 66, 63, 68, 60, 57, 57, 113, 77, 42, 53, 61, 60, 72, 89, 58, 77, 107, 98, 76, 47, 70, 63, 67, 65, 62, 68, 57, 56, 55, 76, 61, 50, 77, 47, 61, 67, 65, 65, 62, 62, 48, 48, 62, 65, 52, 87, 85, 64, 68, 68, 56, 71, 64, 59, 61, 64, 62, 52, 80, 83, 61, 62, 61, 54, 91, 67, 84, 60, 68, 61, 63, 50, 66, 63, 52, 58, 70, 50, 64, 68, 58, 63, 66, 69, 64, 70, 62, 61, 61, 61, 64, 60, 80, 59, 78, 120, 54, 65, 51, 65, 63, 63, 51, 65, 75, 60, 111, 52, 82, 78, 67, 62, 54, 58, 67, 68, 60, 48, 71, 41, 58, 54, 70, 78, 63, 64, 67, 68, 52, 67, 72, 50, 51, 71, 109, 60, 67, 87, 67, 56, 54, 75, 76, 75, 138, 75, 78, 58, 58, 64, 48, 73, 51, 70, 59, 67, 59, 61, 49, 56, 57, 51, 66, 84, 61, 81, 58, 64, 100, 73, 56, 61, 69, 101, 77, 61, 56, 57, 50, 67, 68, 59, 48, 58, 66, 67, 74, 65, 84, 66, 76, 55, 82, 52, 48, 72, 59, 65, 59, 56, 66, 70, 71, 82, 47, 70, 66, 51, 62, 56, 60, 55, 57, 79, 52, 86, 78, 64, 58, 65, 60, 46, 53, 75, 94, 71, 62, 65, 53, 64, 66, 74, 68, 62, 63, 55, 72, 58, 57, 98, 41, 62, 64, 76, 64, 61, 63, 80, 63, 70, 60, 52, 66, 49, 79, 58, 61, 64, 43, 56, 64, 103, 58, 61, 58, 57, 83, 57, 56, 80, 66, 73, 51, 61, 75, 42, 59, 66, 63, 56, 62, 55, 58, 82, 60, 54, 44, 54, 65, 58, 59, 62, 62, 59, 61, 49, 60, 60, 64, 76, 43, 72, 67, 81, 67, 88, 61, 73, 61, 59, 71, 69, 66, 77, 70, 92, 64, 77, 77, 58, 60, 60, 73, 71, 70, 75, 62, 47, 52, 68, 68, 79, 77, 52, 51, 118, 65, 80, 53, 67, 65, 53, 67, 81, 59, 62, 83, 49, 61, 68, 52, 63, 70, 63, 72, 60, 53, 67, 67, 125, 55, 69, 76, 64, 72, 59, 78, 47, 70, 61, 62, 63, 76, 52, 56, 97, 79, 73, 63, 72, 89, 68, 89, 54, 59, 73, 60, 65, 52, 75, 59, 57, 67, 62, 59, 62, 71, 72, 88, 58, 60, 61, 61, 80, 62, 60, 58, 61, 67, 68, 57, 51, 62, 59, 62, 61, 72, 60, 68, 64, 62, 45, 54, 66, 63, 60, 60, 66, 42, 105, 63, 94, 53, 71, 79, 47, 65, 60, 65, 57, 83, 76, 83, 54, 90, 66, 56, 76, 63, 72, 76, 74, 64, 74, 66, 82, 55, 65, 66, 70, 60, 72, 59, 54, 55, 61, 59, 55, 60, 63, 95, 70, 62, 85, 66, 84, 61, 76, 65, 53, 74, 74, 57, 79, 71, 77, 61, 50, 58, 47, 55, 64, 55, 55, 55, 66, 65, 61, 62, 67, 44, 73, 78, 61, 56, 54, 83, 69, 67, 89, 81, 98, 73, 58, 82, 71, 71, 81, 71, 54, 62, 81, 69, 53, 58, 50, 77, 99, 71, 69, 64, 65, 62, 69, 60, 77, 64, 83, 64, 58, 59, 61, 71, 72, 59, 75, 62, 84, 59, 62, 53, 68, 65, 65, 56, 65, 91, 58, 51, 61, 45, 64, 56, 61, 68, 60, 51, 79, 62, 63, 78, 66, 74, 59, 66, 64, 58, 60, 59, 56, 70, 59, 49, 71, 71, 61, 56, 88, 83, 61, 57, 68, 63, 44, 61, 72, 69, 63, 63, 68, 69, 68, 58, 71, 77, 85, 72, 88, 60, 69, 69, 62, 64, 71, 61, 60, 67, 62, 64, 69, 58, 59, 69, 58, 68, 62, 75, 53, 62, 98, 66, 59, 58, 49, 68, 60, 63, 82, 67, 79, 56, 57, 66, 119, 77, 59, 72, 103, 53, 63, 64, 53, 62, 63, 60, 75, 68, 70, 49, 77, 78, 76, 75, 67, 64, 60, 102, 63, 67, 58, 63, 90, 63, 40, 64, 67, 60, 73, 100, 79, 54, 48, 64, 65, 57, 67, 64, 60, 85, 55, 55, 62, 57, 79, 53, 68, 59, 76, 64, 61, 52, 65, 64, 65, 75, 71, 69, 51, 65, 45, 78, 67, 50, 87, 80, 89, 56, 89, 57, 55, 69, 56, 69, 59, 81, 72, 60, 73, 72, 67, 53, 75, 59, 134, 85, 54, 71, 62, 56, 61, 60, 111, 61, 64, 66, 68, 77, 46, 51, 78, 65, 55, 47, 47, 76, 69, 53, 58, 73, 61, 56, 66, 63, 90, 70, 66, 52, 64, 68, 66, 86, 57, 68, 51, 66, 74, 92, 76, 63, 66, 67, 56, 71, 60, 54, 70, 41, 60, 80, 60, 92, 67, 56, 59, 70, 62, 72, 58, 70, 68, 76, 69, 82, 59, 58, 58, 61, 55, 56, 69, 65, 78, 89, 59, 46, 72, 69, 46, 77, 120, 62, 75, 54, 76, 80, 60, 72, 74, 69, 58, 65, 58, 71, 57, 58, 75, 67, 76, 52, 57, 64, 60, 60, 69, 68, 91, 89, 53, 57, 66, 58, 89, 70, 53, 68, 62, 67, 65, 56, 62, 46, 48, 54, 61, 72, 54, 69, 131, 54, 64, 55, 63, 63, 58, 67, 55, 93, 66, 77, 52, 60, 58, 58, 53, 55, 69, 67, 66, 74, 49, 57, 59, 36, 69, 60, 77, 63, 92, 66, 61, 60, 69, 58, 57, 65, 65, 48, 66, 59, 76, 63, 48, 56, 85, 64, 58, 71, 77, 68, 67, 72, 57, 86, 56, 73, 89, 55, 54, 60, 90, 61, 75, 75, 87, 100, 65, 73, 51, 87, 66, 65, 69, 101, 69, 63, 61, 77, 58, 75, 54, 71, 57, 94, 54, 70, 66, 63, 66, 50, 68, 54, 68, 60, 85, 58, 61, 67, 65, 57, 63, 48, 49, 53, 66, 67, 60, 69, 107, 69, 59, 67, 56, 59, 90, 67, 78, 66, 62, 73, 73, 76, 94, 66, 58, 82, 55, 55, 56, 56, 71, 95, 65, 36, 96, 51, 65, 66, 68, 63, 54, 57, 63, 90, 73, 58, 61, 62, 95, 59, 109, 56, 70, 68, 59, 60, 70, 77, 61, 70, 89, 79, 58, 75, 57, 63, 59, 68, 55, 58, 66, 50, 58, 64, 71, 58, 84, 45, 104, 71, 60, 69, 66, 69, 64, 63, 33, 55, 79, 67, 61, 58, 55, 51, 105, 69, 121, 74, 55, 70, 59, 69, 62, 61, 74, 65, 65, 82, 60, 51, 56, 59, 64, 56, 65, 56, 57, 66, 63, 77, 63, 72, 64, 59, 60, 60, 96, 66, 61, 59, 63, 55, 47, 80, 72, 61, 64, 86, 51, 58, 59, 64, 64, 61, 90, 65, 76, 55, 71, 82, 56, 61, 70, 57, 61, 66, 55, 58, 67, 55, 66, 67, 69, 65, 52, 68, 64, 61, 80, 57, 67, 45, 54, 66, 97, 59, 73, 63, 60, 60, 86, 62, 52, 53, 49, 52, 56, 65, 57, 70, 69, 91, 76, 55, 66, 49, 71, 85, 58, 56, 82, 61, 72, 52, 73, 98, 61, 67, 79, 58, 42, 49, 64, 61, 99, 62, 65, 63, 68, 71, 39, 63, 66, 50, 64, 70, 53, 66, 46, 67, 53, 77, 61, 61, 61, 117, 55, 79, 63, 64, 83, 64, 90, 81, 46, 54, 59, 52, 58, 48, 61, 57, 63, 63, 63, 52, 73, 49, 83, 68, 64, 59, 66, 63, 62, 67, 61, 63, 96, 81, 71, 65, 76, 65, 55, 60, 49, 95, 63, 41, 62, 61, 56, 54, 56, 48, 54, 63, 56, 51, 49, 49, 66, 103, 47, 90, 61, 75, 80, 71, 52, 55, 52, 71, 76, 66, 63, 79, 74, 61, 54, 62, 89, 68, 61, 85, 74, 74, 66, 59, 75, 85, 44, 74, 60, 67, 69, 59, 67, 61, 56, 97, 85, 56, 43, 53, 85, 61, 85, 92, 58, 63, 51, 66, 54, 63, 55, 53, 60, 57, 85, 64, 54, 57, 96, 66, 58, 50, 63, 60, 74, 77, 86, 89, 76, 53, 62, 66, 90, 60, 68, 54, 74, 57, 54, 64, 82, 56, 73, 64, 56, 68, 69, 60, 62, 65, 105, 83, 64, 42, 61, 63, 103, 66, 63, 48, 87, 54, 52, 58, 64, 119, 59, 57, 60, 51, 53, 68, 61, 71, 70, 85, 70, 63, 51, 47, 95, 68, 64, 61, 62, 53, 65, 62, 67, 61, 73, 63, 67, 65, 116, 72, 60, 72, 58, 61, 64, 61, 50, 66, 68, 68, 66, 57, 76, 68, 54, 64, 53, 63, 64, 84, 65, 68, 69, 91, 59, 57, 101, 59, 51, 53, 94, 76, 58, 58, 58, 60, 75, 71, 71, 46, 53, 60, 59, 58, 60, 73, 65, 59, 62, 55, 72, 69, 60, 70, 78, 67, 66, 96, 58, 60, 59, 72, 55, 59, 57, 46, 130, 83, 64, 61, 76, 65, 55, 68, 55, 64, 81, 66, 74, 68, 68, 69, 75, 106, 57, 76, 57, 58, 59, 63, 58, 63, 56, 63, 77, 60, 55, 78, 58, 59, 55, 72, 62, 65, 117, 66, 61, 67, 56, 50, 61, 47, 83, 70, 55, 62, 70, 62, 68, 62, 55, 71, 93, 63, 65, 67, 63, 66, 92, 59, 106, 78, 55, 61, 56, 59, 66, 76, 80, 65, 61, 55, 59, 59, 66, 51, 63, 61, 63, 42, 65, 89, 67, 59, 56, 60, 62, 62, 70, 63, 51, 69, 61, 64, 64, 58, 62, 68, 102, 62, 60, 56, 54, 57, 64, 57, 54, 60, 71, 54, 51, 65, 79, 61, 60, 70, 55, 61, 61, 70, 59, 55, 52, 73, 55, 66, 68, 54, 60, 60, 59, 64, 56, 57, 63, 68, 66, 58, 57, 85, 53, 59, 67, 58, 54, 77, 66, 57, 74, 65, 64, 70, 62, 78, 71, 51, 68, 48, 83, 56, 81, 63, 97, 92, 63, 57, 68, 73, 60, 58, 66, 78, 57, 73, 66, 66, 53, 69, 66, 67, 47, 56, 76, 72, 65, 67, 67, 54, 54, 73, 42, 63, 61, 81, 64, 71, 56, 67, 62, 73, 56, 60, 65, 58, 63, 65, 93, 60, 61, 56, 64, 68, 75, 64, 67, 59, 59, 66, 72, 81, 67, 65, 61, 68, 53, 54, 62, 87, 60, 121, 63, 59, 62, 71, 61, 58, 59, 74, 60, 62, 48, 62, 53, 64, 67, 68, 50, 58, 69, 71, 49, 88, 33, 65, 59, 65, 62, 61, 54, 50, 55, 60, 119, 55, 54, 51, 56, 77, 81, 76, 69, 66, 58, 60, 67, 35, 56, 69, 80, 81, 61, 62, 66, 65, 54, 61, 81, 60, 63, 60, 55, 60, 62, 69, 62, 58, 49, 84, 56, 58, 83, 87, 75, 54, 53, 53, 67, 59, 72, 88, 54, 63, 71, 70, 52, 83, 49, 73, 77, 58, 91, 60, 75, 59, 67, 72, 76, 67, 61, 63, 54, 69, 38, 70, 78, 61, 50, 90, 61, 76, 89, 48, 56, 57, 103, 61, 151, 68, 88, 66, 71, 62, 56, 60, 64, 89, 60, 65, 83, 66, 71, 62, 69, 124, 74, 61, 59, 58, 68, 74, 57, 101, 51, 56, 51, 65, 64, 55, 69, 81, 54, 56, 66, 60, 67, 71, 39, 63, 84, 60, 56, 81, 80, 102, 59, 65, 71, 59, 53, 59, 79, 70, 45, 46, 71, 80, 97, 76, 65, 62, 83, 63, 38, 59, 81, 70, 72, 61, 61, 64, 70, 58, 53, 78, 71, 62, 59, 50, 80, 58, 79, 40, 88, 74, 68, 64, 71, 81, 49, 57, 44, 74, 57, 85, 86, 52, 58, 63, 82, 61, 58, 95, 66, 61, 70, 51, 68, 54, 69, 75, 79, 56, 45, 77, 54, 53, 82, 50, 103, 83, 61, 50, 62, 82, 75, 73, 72, 65, 50, 50, 41, 62, 45, 59, 85, 60, 104, 64, 84, 68, 58, 82, 54, 69, 90, 81, 55, 52, 58, 79, 62, 72, 62, 75, 80, 71, 77, 75, 54, 72, 63, 102, 58, 75, 57, 74, 59, 57, 71, 79, 59, 65, 75, 56, 55, 25, 47, 82, 61, 50, 76, 55, 62, 98, 68, 71, 73, 45, 58, 61, 66, 72, 60, 75, 46, 67, 72, 85, 61, 70, 83, 66, 63, 95, 63, 55, 73, 96, 52, 64, 48, 78, 47, 72, 65, 99, 65, 46, 59, 62, 92, 55, 67, 73, 72, 56, 51, 90, 73, 55, 59, 59, 47, 74, 56, 62, 61, 58, 70, 60, 60, 71, 80, 86, 66, 56, 81, 65, 70, 71, 59, 58, 47, 70, 59, 66, 70, 100, 63, 49, 82, 44, 70, 73, 68, 85, 44, 98, 85, 122, 63, 44, 66, 62, 98, 46, 83, 106, 41, 62, 54, 64, 54, 73, 60, 42, 62, 56, 68, 39, 52, 56, 43, 56, 39, 98, 64, 66, 189, 57, 85, 60, 54, 63, 56, 58, 68, 40, 75, 96, 45, 139, 69, 51, 93, 80, 84, 60, 51, 82, 60, 66, 69, 67, 85, 61, 64, 59, 78, 79, 68, 77, 71, 68, 59, 99, 64, 59, 57, 61, 77, 69, 60, 58, 64, 58, 48, 46, 49, 61, 50, 94, 79, 49, 69, 56, 82, 81, 64, 59, 80, 71, 48, 56, 68, 82, 68, 59, 69, 70, 58, 56, 96, 61, 74, 70, 53, 72, 66, 66, 65, 88, 68, 110, 41, 54, 64, 64, 70, 71, 69, 66, 47, 83, 67, 77, 82, 64, 60, 77, 80, 57, 56, 88, 57, 59, 69, 60, 50, 74, 56, 81, 69, 60, 63, 57, 66, 47, 58, 63, 76, 65, 57, 85, 67, 75, 53, 57, 69, 67, 60, 43, 47, 57, 71, 81, 79, 51, 79, 73, 72, 56, 66, 73, 55, 72, 50, 94, 73, 52, 63, 51, 99, 75, 65, 58, 61, 70, 54, 43, 63, 61, 68, 69, 50, 46, 72, 64, 53, 78, 74, 61, 69, 76, 81, 62, 69, 62, 80, 53, 67, 50, 69, 71, 79, 55, 61, 57, 66, 55, 57, 123, 75, 60, 55, 67, 51, 53, 75, 35, 47, 50, 64, 75, 86, 40, 74, 68, 61, 61, 63, 67, 50, 88, 75, 61, 124, 51, 47, 65, 66, 63, 68, 75, 60, 53, 61, 84, 51, 68, 54, 63, 77, 79, 86, 77, 58, 72, 59, 67, 52, 53, 83, 74, 123, 59, 45, 46, 51, 69, 62, 85, 55, 99, 64, 53, 59, 134, 77, 76, 62, 57, 52, 75, 72, 65, 52, 63, 70, 48, 81, 52, 60, 66, 96, 91, 66, 67, 47, 71, 63, 41, 55, 68, 63, 65, 48, 69, 56, 72, 49, 58, 69, 56, 67, 78, 59, 105, 65, 63, 62, 77, 52, 65, 67, 76, 66, 50, 52, 52, 64, 60, 61, 60, 89, 64, 68, 63, 68, 61, 51, 72, 57, 76, 69, 86, 34, 55, 59, 52, 70, 69, 61, 55, 58, 79, 79, 50, 87, 85, 47, 60, 55, 108, 59, 66, 70, 53, 56, 80, 62, 80, 71, 55, 71, 71, 73, 52, 56, 39, 62, 63, 60, 87, 49, 60, 46, 48, 69, 65, 41, 67, 57, 63, 85, 57, 68, 72, 69, 59, 62, 52, 66, 40, 64, 92, 58, 55, 67, 59, 68, 52, 94, 67, 71, 86, 63, 62, 90, 70, 52, 56, 73, 65, 78, 67, 68, 71, 61, 56, 75, 113, 80, 68, 68, 55, 64, 55, 73, 82, 68, 82, 72, 57, 102, 46, 58, 65, 53, 56, 60, 70, 60, 63, 55, 59, 47, 58, 75, 69, 77, 64, 67, 67, 38, 91, 83, 84, 66, 61, 50, 62, 45, 61, 58, 82, 73, 71, 94, 75, 74, 44, 54, 71, 46, 57, 82, 71, 73, 96, 72, 62, 67, 60, 97, 115, 47, 78, 86, 63, 75, 69, 84, 77, 89, 96, 63, 91, 55, 79, 42, 70, 60, 70, 82, 58, 56, 56, 46, 58, 62, 70, 45, 78, 51, 60, 71, 62, 76, 73, 71, 70, 81, 70, 73, 36, 55, 68, 86, 55, 45, 80, 59, 56, 60, 55, 55, 85, 120, 55, 74, 63, 55, 72, 63, 68, 64, 72, 64, 91, 68, 65, 84, 68, 68, 74, 59, 57, 64, 56, 55, 48, 61, 95, 66, 64, 49, 54, 56, 64, 82, 51, 64, 68, 64, 63, 67, 68, 69, 99, 73, 57, 56, 66, 71, 75, 73, 50, 72, 65, 61, 67, 50, 58, 83, 72, 59, 73, 69, 69, 49, 56, 65, 57, 52, 64, 61, 78, 80, 66, 86, 131, 67, 60, 83, 75, 86, 87, 63, 66, 50, 46, 62, 94, 55, 58, 64, 51, 75, 59, 60, 77, 65, 83, 48, 91, 61, 57, 70, 52, 76, 77, 58, 82, 66, 71, 81, 67, 76, 85, 77, 45, 49, 56, 47, 53, 70, 57, 60, 68, 59, 80, 61, 55, 76, 48, 64, 60, 41, 66, 70, 78, 83, 55, 142, 68, 75, 69, 57, 81, 46, 60, 85, 60, 63, 76, 111, 65, 54, 68, 71, 64, 215, 81, 53, 68, 71, 56, 68, 49, 43, 66, 69, 70, 64, 57, 52, 55, 48, 60, 68, 70, 72, 56, 58, 64, 80, 67, 52, 68, 66, 74, 71, 62, 60, 73, 71, 70, 74, 65, 68, 55, 98, 74, 89, 74, 77, 70, 70, 59, 57, 56, 50, 76, 68, 53, 57, 63, 57, 39, 81, 64, 63, 72, 87, 88, 50, 49, 62, 47, 70, 81, 56, 67, 53, 69, 59, 65, 65, 51, 56, 89, 54, 85, 70, 63, 47, 49, 65, 48, 56, 77, 47, 56, 82, 54, 65, 62, 59, 48, 45, 85, 71, 41, 48, 51, 71, 75, 78, 64, 71, 63, 64, 57, 70, 56, 71, 38, 97, 68, 61, 52, 68, 60, 67, 63, 58, 60, 91, 55, 69, 41, 64, 74, 84, 75, 61, 69, 59, 77, 71, 60, 60, 81, 51, 60, 69, 77, 56, 63, 62, 53, 91, 44, 53, 69, 40, 75, 60, 69, 54, 121, 73, 74, 49, 51, 74, 84, 82, 110, 67, 77, 79, 64, 42, 52, 73, 89, 52, 79, 67, 62, 66, 49, 67, 76, 67, 76, 78, 78, 76, 57, 76, 85, 85, 68, 83, 58, 62, 50, 104, 56, 67, 43, 55, 42, 78, 85, 61, 63, 58, 124, 74, 61, 74, 55, 85, 71, 80, 74, 76, 82, 45, 82, 82, 100, 56, 77, 54, 45, 73, 61, 76, 77, 60, 50, 52, 85, 61, 57, 76, 69, 65, 78, 55, 61, 43, 64, 63, 63, 49, 81, 62, 53, 61, 57, 55, 75, 46, 63, 52, 98, 69, 64, 64, 52, 78, 81, 63, 84, 51, 62, 60, 78, 60, 68, 59, 66, 59, 48, 63, 61, 36, 53, 69, 57, 60, 59, 68, 72, 78, 48, 47, 51, 68, 69, 58, 68, 63, 57, 36, 54, 67, 61, 53, 59, 73, 60, 69, 56, 82, 53, 64, 78, 56, 82, 60, 66, 75, 87, 64, 62, 70, 129, 63, 61, 47, 59, 57, 67, 57, 93, 96, 71, 52, 58, 50, 49, 65, 74, 95, 55, 73, 41, 66, 68, 72, 69, 80, 74, 66, 60, 70, 92, 57, 76, 55, 81, 67, 68, 53, 112, 54, 59, 65, 58, 58, 53, 77, 84, 67, 76, 64, 56, 54, 61, 68, 71, 62, 83, 62, 76, 65, 44, 50, 64, 72, 71, 63, 61, 83, 70, 85, 51, 61, 60, 65, 69, 109, 52, 82, 74, 43, 62, 70, 68, 86, 49, 73, 83, 46, 85, 58, 68, 64, 84, 64, 70, 53, 88, 55, 86, 44, 72, 80, 75, 61, 65, 66, 67, 59, 79, 46, 53, 56, 74, 91, 69, 76, 48, 77, 45, 47, 63, 56, 60, 60, 73, 48, 78, 86, 67, 52, 67, 67, 59, 74, 74, 67, 47, 68, 80, 64, 69, 71, 41, 87, 67, 59, 90, 80, 50, 60, 53, 61, 80, 66, 58, 47, 55, 60, 82, 73, 61, 73, 58, 54, 65, 55, 49, 65, 56, 57, 64, 63, 66, 51, 73, 62, 60, 47, 65, 66, 42, 59, 59, 60, 63, 61, 67, 55, 54, 76, 61, 43, 72, 90, 53, 67, 66, 68, 68, 64, 61, 69, 61, 58, 56, 70, 95, 74, 64, 56, 59, 68, 94, 67, 107, 71, 113, 55, 44, 66, 76, 55, 63, 61, 44, 66, 73, 96, 110, 68, 54, 51, 80, 44, 73, 40, 55, 53, 52, 60, 76, 76, 56, 51, 54, 78, 62, 66, 44, 80, 34, 68, 59, 70, 67, 80, 78, 73, 47, 65, 77, 82, 95, 48, 46, 68, 31, 63, 84, 70, 61, 70, 86, 49, 48, 60, 60, 53, 52, 85, 72, 69, 63, 57, 71, 51, 62, 94, 75, 58, 69, 60, 59, 41, 75, 73, 60, 75, 107, 59, 59, 46, 60, 55, 67, 72, 55, 78, 68, 87, 62, 61, 73, 82, 55, 54, 81, 70, 57, 51, 70, 56, 95, 31, 49, 69, 103, 45, 50, 71, 101, 74, 72, 65, 68, 63, 47, 85, 60, 43, 48, 48, 67, 62, 48, 58, 72, 71, 60, 73, 65, 60, 61, 67, 65, 82, 56, 75, 50, 61, 52, 58, 69, 61, 114, 70, 63, 39, 52, 57, 54, 67, 61, 64, 81, 62, 81, 84, 53, 62, 57, 87, 42, 54, 63, 67, 60, 66, 66, 65, 95, 65, 80, 57, 55, 68, 65, 74, 91, 67, 64, 63, 44, 101, 56, 40, 58, 76, 107, 73, 104, 40, 46, 64, 88, 79, 105, 93, 67, 60, 53, 61, 65, 60, 69, 57, 67, 69, 72, 58, 82, 56, 53, 53, 64, 65, 66, 82, 71, 61, 64, 76, 67, 68, 64, 78, 67, 59, 104, 58, 92, 65, 69, 66, 64, 74, 80, 79, 55, 63, 60, 70, 67, 86, 65, 58, 68, 69, 58, 69, 55, 69, 82, 52, 64, 58, 79, 63, 55, 51, 58, 65, 74, 93, 137, 72, 51, 51, 70, 81, 70, 56, 68, 59, 68, 77, 63, 66, 54, 92, 72, 84, 77, 141, 80, 81, 76, 81, 86, 56, 51, 59, 80, 60, 93, 51, 34, 72, 75, 48, 67, 109, 61, 51, 49, 83, 79, 68, 66, 62, 43, 89, 61, 110, 74, 54, 51, 75, 77, 70, 74, 68, 57, 46, 91, 68, 91, 64, 48, 59, 81, 75, 58, 76, 56, 55, 70, 79, 76, 50, 81, 85, 75, 57, 45, 89, 66, 66, 86, 51, 44, 86, 51, 66, 66, 54, 62, 75, 67, 68, 69, 51, 46, 77, 64, 64, 43, 81, 69, 57, 90, 68, 73, 63, 60, 61, 48, 68, 60, 48, 77, 64, 77, 77, 84, 43, 60, 77, 67, 65, 64, 61, 68, 66, 65, 64, 97, 65, 77, 44, 60, 51, 45, 71, 73, 61, 69, 73, 67, 64, 103, 64, 80, 55, 90, 51, 53, 68, 48, 67, 66, 65, 76, 58, 82, 73, 76, 53, 71, 53, 55, 39, 62, 84, 78, 71, 73, 67, 56, 64, 61, 76, 67, 95, 59, 62, 76, 60, 60, 58, 67, 62, 60, 56, 67, 81, 78, 99, 71, 54, 74, 93, 51, 53, 63, 62, 51, 53, 84, 57, 66, 70, 70, 52, 58, 58, 68, 55, 63, 50, 73, 39, 67, 61, 67, 65, 58, 80, 87, 145, 76, 46, 60, 49, 67, 53, 79, 65, 72, 86, 63, 64, 72, 46, 59, 94, 63, 51, 69, 53, 49, 61, 61, 60, 139, 60, 61, 54, 88, 66, 78, 80, 68, 58, 56, 53, 85, 63, 69, 61, 64, 52, 57, 60, 108, 73, 48, 49, 75, 68, 90, 79, 43, 73, 74, 77, 51, 50, 68, 70, 62, 52, 68, 63, 72, 50, 53, 53, 41, 72, 60, 71, 70, 55, 52, 51, 53, 83, 67, 81, 58, 45, 56, 69, 63, 64, 120, 62, 63, 63, 63, 64, 45, 55, 57, 96, 53, 66, 57, 55, 67, 61, 48, 55, 78, 72, 68, 80, 78, 70, 62, 66, 77, 65, 48, 61, 51, 150, 63, 77, 69, 89, 58, 51, 62, 80, 51, 69, 41, 69, 85, 57, 61, 55, 55, 80, 36, 61, 48, 38, 66, 89, 47, 55, 55, 87, 64, 69, 56, 47, 55, 62, 56, 73, 49, 76, 61, 62, 52, 49, 70, 72, 61, 90, 76, 58, 59, 64, 67, 99, 57, 38, 60, 71, 61, 64, 82, 53, 52, 68, 57, 79, 96, 70, 62, 67, 68, 67, 79, 63, 50, 68, 71, 48, 58, 46, 70, 36, 55, 54, 49, 64, 75, 63, 47, 87, 80, 48, 87, 87, 130, 74, 42, 82, 73, 58, 105, 61, 90, 52, 71, 63, 79, 92, 62, 39, 68, 51, 44, 70, 70, 49, 72, 71, 67, 82, 100, 76, 71, 54, 115, 58, 50, 50, 45, 52, 63, 73, 47, 45, 64, 51, 51, 62, 72, 71, 72, 66, 72, 39, 66, 57, 84, 56, 74, 53, 50, 76, 80, 69, 80, 76, 86, 59, 67, 79, 81, 50, 50, 57, 60, 54, 59, 85, 66, 71, 59, 49, 66, 65, 75, 54, 78, 103, 60, 73, 59, 55, 70, 58, 72, 61, 59, 63, 81, 67, 74, 93, 67, 66, 59, 57, 66, 75, 66, 66, 53, 85, 48, 72, 39, 84, 56, 74, 70, 65, 61, 58, 61, 85, 52, 75, 64, 92, 96, 54, 48, 62, 76, 73, 59, 88, 64, 53, 46, 66, 69, 49, 115, 58, 66, 62, 75, 123, 66, 55, 44, 64, 67, 55, 67, 55, 59, 74, 53, 39, 70, 59, 64, 70, 90, 67, 58, 67, 59, 110, 51, 67, 70, 52, 83, 87, 72, 94, 62, 55, 51, 42, 51, 55, 68, 78, 66, 64, 58, 54, 59, 68, 49, 55, 105, 57, 51, 44, 50, 61, 79, 58, 118, 58, 56, 79, 84, 46, 63, 49, 55, 58, 85, 59, 56, 97, 61, 58, 52, 75, 70, 50, 78, 69, 70, 97, 76, 58, 59, 68, 83, 59, 81, 72, 67, 92, 80, 83, 82, 75, 62, 82, 74, 75, 46, 53, 60, 79, 59, 71, 55, 78, 67, 56, 78, 47, 62, 51, 74, 45, 75, 76, 101, 48, 56, 56, 50, 63, 74, 54, 65, 71, 65, 69, 62, 72, 87, 64, 61, 76, 75, 71, 82, 59, 61, 57, 63, 57, 74, 60, 58, 61, 76, 95, 54, 48, 43, 74, 77, 66, 61, 63, 91, 75, 80, 70, 49, 88, 71, 54, 71, 69, 130, 74, 64, 49, 53, 101, 78, 53, 64, 68, 102, 58, 69, 54, 63, 60, 67, 57, 56, 55, 60, 60, 61, 68, 59, 98, 152, 91, 79, 71, 54, 64, 56, 66, 75, 69, 52, 77, 47, 63, 70, 68, 53, 75, 66, 29, 81, 73, 80, 67, 71, 51, 58, 109, 62, 64, 63, 95, 59, 54, 58, 102, 81, 79, 87, 60, 71, 63, 56, 74, 104, 91, 66, 65, 74, 49, 50, 63, 40, 90, 55, 117, 51, 67, 62, 148, 100, 62, 51, 57, 61, 57, 46, 114, 61, 81, 77, 60, 72, 58, 73, 72, 64, 69, 91, 70, 54, 67, 56, 80, 45, 56, 65, 59, 63, 68, 86, 64, 79, 68, 64, 68, 91, 61, 61, 61, 51, 57, 72, 67, 58, 79, 68, 54, 77, 60, 71, 76, 67, 62, 61, 61, 62, 55, 70, 67, 63, 74, 62, 101, 86, 62, 56, 74, 64, 49, 72, 52, 44, 54, 62, 50, 64, 80, 63, 66, 91, 66, 83, 59, 71, 65, 45, 56, 70, 120, 55, 69, 72, 52, 51, 70, 78, 65, 59, 68, 67, 51, 46, 59, 43, 56, 56, 75, 42, 53, 61, 67, 59, 55, 63, 95, 46, 68, 63, 88, 62, 78, 65, 109, 63, 48, 76, 51, 49, 79, 55, 66, 68, 89, 88, 60, 63, 64, 73, 72, 55, 73, 65, 73, 43, 81, 59, 61, 59, 64, 66, 81, 62, 62, 53, 53, 60, 70, 64, 63, 66, 62, 60, 59, 78, 66, 77, 74, 56, 69, 61, 62, 54, 66, 68, 67, 51, 64, 59, 74, 71, 74, 76, 61, 68, 66, 61, 64, 66, 63, 63, 83, 54, 64, 59, 63, 58, 78, 60, 56, 75, 74, 64, 63, 38, 53, 57, 60, 87, 66, 61, 75, 43, 51, 58, 62, 64, 39, 58, 71, 61, 49, 68, 53, 62, 65, 62, 49, 59, 74, 46, 64, 51, 58, 61, 119, 66, 58, 71, 47, 85, 52, 53, 59, 60, 68, 60, 73, 62, 63, 66, 69, 70, 77, 46, 45, 55, 68, 86, 57, 53, 66, 117, 60, 47, 57, 66, 55, 62, 49, 47, 82, 71, 63, 68, 90, 85, 48, 60, 70, 73, 50, 62, 71, 70, 57, 91, 65, 74, 62, 51, 66, 58, 55, 82, 53, 81, 43, 24, 63, 69, 61, 68, 80, 68, 70, 62, 65, 49, 42, 71, 65, 60, 65, 56, 44, 68, 83, 70, 66, 69, 65, 51, 69, 40, 64, 44, 56, 53, 49, 67, 52, 90, 60, 56, 96, 84, 56, 69, 59, 90, 50, 52, 57, 50, 55, 61, 79, 68, 69, 61, 72, 56, 63, 65, 55, 55, 71, 48, 73, 62, 62, 67, 80, 61, 127, 68, 89, 72, 82, 70, 58, 46, 70, 43, 76, 61, 54, 69, 58, 68, 83, 44, 60, 58, 68, 76, 64, 71, 100, 71, 73, 43, 85, 47, 89, 59, 66, 55, 54, 76, 76, 62, 59, 95, 62, 69, 67, 56, 68, 63, 77, 64, 46, 67, 80, 60, 55, 63, 64, 51, 56, 57, 72, 57, 75, 60, 77, 91, 75, 68, 73, 56, 65, 58, 66, 85, 75, 54, 84, 78, 59, 55, 64, 58, 91, 67, 65, 60, 63, 70, 65, 72, 60, 75, 56, 54, 73, 99, 80, 163, 64, 69, 78, 91, 71, 75, 119, 52, 78, 55, 94, 65, 66, 49, 55, 64, 68, 111, 64, 46, 58, 90, 55, 50, 82, 66, 59, 70, 72, 69, 63, 66, 59, 57, 61, 53, 64, 68, 39, 57, 76, 52, 49, 57, 54, 55, 64, 58, 61, 79, 82, 82, 77, 68, 57, 72, 95, 62, 47, 65, 86, 64, 73, 60, 58, 61, 68, 57, 63, 61, 58, 47, 93, 68, 53, 69, 64, 60, 47, 66, 60, 65, 106, 68, 77, 60, 49, 52, 78, 60, 64, 67, 64, 53, 55, 81, 58, 68, 69, 58, 88, 62, 89, 64, 71, 100, 91, 64, 63, 53, 68, 60, 63, 86, 60, 65, 84, 52, 83, 68, 78, 97, 71, 57, 55, 58, 80, 63, 60, 70, 63, 52, 64, 75, 95, 59, 68, 53, 59, 63, 51, 48, 70, 71, 49, 69, 60, 83, 67, 71, 67, 71, 58, 36, 79, 120, 73, 73, 58, 45, 55, 58, 75, 48, 78, 60, 59, 57, 66, 69, 59, 57, 59, 58, 75, 56, 75, 60, 83, 50, 67, 72, 53, 63, 61, 57, 52, 76, 60, 67, 86, 47, 56, 73, 66, 48, 82, 60, 65, 56, 59, 55, 82, 73, 77, 61, 72, 76, 60, 74, 29, 77, 70, 67, 53, 67, 77, 108, 90, 61, 58, 55, 55, 65, 72, 57, 53, 54, 64, 67, 73, 93, 74, 62, 63, 57, 55, 63, 78, 85, 55, 65, 66, 63, 61, 58, 48, 85, 70, 64, 93, 75, 65, 63, 62, 58, 56, 69, 53, 73, 63, 63, 70, 68, 55, 54, 51, 48, 53, 61, 57, 87, 64, 64, 61, 88, 52, 53, 60, 59, 86, 104, 58, 69, 57, 71, 65, 57, 60, 53, 70, 59, 57, 64, 72, 86, 70, 51, 80, 51, 65, 74, 67, 58, 67, 63, 69, 68, 61, 47, 56, 68, 66, 59, 62, 55, 45, 50, 68, 79, 59, 75, 46, 97, 61, 71, 60, 74, 67, 55, 73, 48, 54, 57, 55, 57, 62, 51, 86, 70, 75, 49, 74, 47, 58, 72, 60, 57, 73, 72, 53, 72, 52, 58, 69, 95, 78, 93, 110, 56, 110, 61, 60, 58, 57, 67, 87, 61, 67, 46, 54, 79, 59, 55, 65, 75, 87, 69, 51, 63, 57, 72, 55, 70, 87, 65, 48, 70, 69, 54, 53, 93, 59, 69, 73, 79, 53, 51, 56, 79, 75, 61, 69, 75, 74, 80, 59, 67, 45, 77, 68, 55, 64, 73, 51, 58, 57, 62, 81, 80, 74, 74, 71, 55, 81, 72, 48, 96, 66, 70, 72, 58, 72, 60, 88, 51, 65, 63, 78, 93, 51, 58, 65, 52, 56, 58, 78, 98, 67, 81, 57, 57, 60, 91, 74, 79, 90, 46, 49, 80, 98, 70, 68, 54, 68, 65, 56, 80, 70, 67, 61, 72, 65, 63, 60, 51, 61, 51, 63, 62, 66, 56, 60, 69, 56, 62, 82, 86, 66, 48, 100, 66, 82, 50, 55, 64, 74, 59, 73, 75, 83, 83, 70, 60, 68, 60, 41, 60, 60, 66, 60, 51, 94, 82, 51, 69, 75, 54, 55, 53, 63, 59, 52, 73, 75, 63, 69, 67, 47, 44, 68, 60, 80, 60, 55, 60, 73, 49, 54, 44, 62, 60, 58, 46, 62, 75, 51, 57, 77, 86, 87, 50, 51, 61, 51, 59, 62, 87, 80, 67, 66, 51, 89, 62, 67, 87, 61, 69, 68, 59, 89, 62, 61, 47, 66, 71, 77, 56, 57, 74, 52, 70, 46, 59, 67, 47, 63, 60, 67, 47, 59, 74, 92, 74, 56, 69, 56, 67, 87, 61, 75, 63, 56, 102, 77, 61, 57, 69, 62, 61, 77, 51, 81, 83, 47, 46, 79, 62, 54, 68, 84, 66, 56, 57, 63, 71, 69, 61, 98, 66, 72, 80, 65, 61, 65, 52, 64, 67, 77, 59, 57, 74, 67, 63, 69, 77, 100, 70, 49, 52, 71, 66, 78, 56, 51, 70, 57, 70, 78, 77, 54, 82, 88, 53, 56, 56, 47, 75, 52, 48, 69, 66, 63, 57, 71, 79, 68, 46, 60, 43, 62, 57, 57, 39, 81, 52, 82, 80, 63, 94, 62, 46, 56, 60, 63, 72, 93, 69, 79, 63, 62, 82, 58, 62, 61, 56, 43, 55, 60, 42, 41, 52, 52, 66, 67, 75, 74, 67, 77, 53, 71, 43, 47, 59, 62, 55, 82, 73, 50, 142, 49, 65, 72, 57, 54, 64, 52, 49, 72, 148, 54, 63, 60, 66, 52, 73, 52, 67, 52, 59, 65, 70, 69, 60, 57, 53, 60, 68, 53, 56, 68, 56, 100, 59, 69, 79, 62, 95, 66, 72, 50, 81, 50, 83, 64, 62, 56, 54, 75, 60, 70, 71, 55, 60, 66, 70, 75, 66, 82, 59, 73, 65, 52, 62, 54, 44, 80, 66, 59, 72, 61, 53, 66, 67, 70, 77, 61, 66, 70, 56, 84, 65, 58, 75, 52, 55, 69, 61, 64, 48, 49, 51, 60, 54, 64, 70, 63, 73, 56, 66, 50, 50, 61, 94, 56, 64, 67, 52, 67, 51, 62, 83, 63, 56, 62, 103, 57, 65, 76, 76, 56, 66, 70, 58, 54, 55, 65, 54, 59, 62, 88, 77, 74, 93, 67, 67, 63, 54, 55, 84, 79, 88, 50, 59, 53, 111, 69, 58, 64, 75, 71, 63, 64, 73, 78, 63, 87, 73, 73, 94, 61, 68, 74, 70, 74, 62, 88, 68, 65, 61, 77, 63, 75, 117, 64, 67, 73, 46, 85, 62, 56, 64, 86, 43, 73, 86, 79, 63, 92, 75, 51, 76, 77, 54, 68, 39, 69, 44, 70, 128, 53, 63, 48, 60, 71, 86, 65, 50, 79, 69, 58, 58, 56, 74, 80, 65, 117, 48, 67, 67, 78, 59, 60, 76, 65, 69, 60, 58, 72, 85, 57, 43, 66, 59, 53, 54, 70, 60, 65, 71, 59, 82, 207, 84, 71, 69, 58, 65, 71, 61, 64, 92, 67, 61, 81, 65, 48, 84, 77, 73, 46, 73, 78, 73, 69, 108, 50, 66, 65, 64, 74, 70, 66, 92, 68, 67, 79, 60, 48, 53, 90, 70, 65, 56, 72, 89, 87, 64, 80, 71, 59, 54, 58, 74, 52, 54, 76, 60, 83, 59, 62, 84, 43, 116, 82, 87, 56, 97, 71, 71, 59, 63, 73, 73, 51, 68, 70, 66, 71, 56, 57, 65, 62, 71, 73, 70, 77, 54, 43, 69, 69, 49, 89, 63, 63, 68, 92, 63, 63, 90, 68, 50, 69, 45, 48, 46, 60, 56, 55, 72, 69, 71, 87, 71, 70, 47, 60, 57, 73, 66, 54, 72, 58, 79, 56, 77, 59, 59, 50, 95, 62, 88, 90, 57, 57, 106, 78, 73, 54, 56, 59, 69, 73, 83, 87, 56, 76, 64, 93, 71, 59, 51, 57, 55, 74, 36, 75, 83, 75, 75, 72, 86, 72, 67, 77, 110, 58, 61, 52, 86, 44, 52, 43, 80, 59, 45, 79, 61, 70, 81, 81, 99, 63, 46, 106, 47, 97, 53, 70, 63, 79, 69, 51, 51, 50, 51, 72, 94, 57, 80, 73, 49, 70, 74, 87, 65, 69, 89, 45, 79, 53, 62, 47, 53, 66, 50, 62, 55, 47, 66, 54, 94, 57, 67, 66, 79, 77, 86, 47, 79, 63, 67, 101, 71, 83, 58, 52, 57, 60, 63, 82, 64, 59, 64, 68, 86, 81, 51, 62, 45, 98, 63, 80, 63, 56, 90, 70, 68, 46, 60, 56, 50, 39, 85, 56, 85, 43, 74, 75, 49, 93, 59, 63, 84, 45, 57, 55, 63, 54, 46, 57, 89, 75, 83, 69, 60, 73, 62, 63, 81, 61, 88, 53, 60, 74, 72, 58, 84, 65, 56, 47, 41, 74, 75, 82, 57, 54, 49, 54, 70, 54, 59, 62, 59, 43, 54, 60, 91, 88, 71, 76, 68, 135, 61, 98, 61, 61, 66, 64, 85, 67, 71, 55, 66, 49, 57, 61, 63, 55, 61, 64, 63, 51, 54, 50, 60, 96, 87, 73, 68, 59, 61, 71, 70, 51, 76, 65, 52, 52, 59, 69, 65, 70, 60, 72, 59, 93, 95, 49, 75, 75, 61, 58, 73, 59, 71, 91, 59, 65, 74, 72, 86, 46, 86, 61, 45, 50, 71, 59, 75, 39, 62, 67, 35, 47, 92, 59, 77, 63, 63, 74, 83, 65, 69, 63, 95, 54, 52, 69, 88, 74, 76, 81, 83, 99, 68, 63, 72, 53, 92, 68, 57, 56, 70, 79, 59, 54, 60, 78, 33, 38, 72, 43, 57, 52, 51, 66, 45, 70, 86, 55, 46, 73, 67, 72, 68, 67, 79, 67, 60, 73, 62, 42, 80, 57, 50, 89, 109, 68, 40, 55, 68, 64, 35, 73, 70, 63, 63, 74, 47, 58, 70, 92, 85, 97, 76, 53, 63, 45, 72, 40, 45, 75, 70, 54, 60, 54, 62, 74, 63, 48, 46, 45, 73, 53, 73, 87, 49, 58, 99, 80, 61, 55, 81, 81, 63, 63, 48, 69, 65, 85, 169, 53, 55, 58, 53, 61, 75, 67, 73, 79, 53, 38, 70, 78, 74, 44, 58, 90, 96, 78, 71, 56, 53, 67, 58, 57, 127, 101, 74, 75, 76, 39, 64, 66, 62, 90, 62, 56, 44, 74, 58, 30, 64, 57, 79, 64, 55, 76, 54, 66, 72, 80, 61, 62, 54, 69, 76, 72, 68, 71, 34, 55, 56, 44, 53, 63, 49, 65, 62, 58, 67, 64, 74, 59, 68, 60, 66, 46, 74, 51, 51, 62, 47, 70, 53, 48, 53, 79, 62, 63, 71, 64, 54, 78, 73, 70, 60, 47, 87, 74, 68, 50, 49, 93, 72, 72, 63, 55, 74, 89, 56, 53, 48, 63, 56, 51, 51, 63, 62, 40, 55, 74, 65, 46, 65, 70, 60, 68, 54, 66, 66, 46, 72, 84, 43, 40, 92, 83, 51, 72, 74, 85, 71, 84, 58, 45, 52, 73, 56, 92, 57, 40, 57, 68, 68, 82, 63, 54, 46, 97, 57, 41, 44, 53, 89, 71, 66, 84, 61, 76, 79, 60, 70, 49, 53, 79, 99, 57, 67, 51, 47, 101, 44, 59, 52, 79, 76, 64, 73, 48, 54, 48, 57, 48, 78, 106, 43, 73, 59, 54, 63, 92, 58, 61, 52, 64, 83, 72, 117, 83, 81, 64, 64, 93, 64, 84, 63, 62, 48, 74, 68, 41, 40, 72, 48, 64, 69, 60, 73, 83, 68, 59, 86, 87, 84, 85, 58, 47, 57, 49, 64, 59, 56, 80, 81, 102, 71, 74, 81, 60, 56, 71, 84, 66, 80, 92, 52, 76, 105, 85, 64, 70, 58, 52, 81, 57, 40, 41, 63, 60, 64, 56, 58, 56, 51, 74, 79, 48, 74, 90, 75, 71, 81, 77, 46, 68, 67, 86, 47, 99, 64, 60, 56, 81, 68, 82, 67, 45, 98, 62, 57, 94, 61, 60, 72, 83, 55, 62, 68, 50, 56, 60, 87, 62, 46, 65, 70, 41, 79, 80, 63, 79, 71, 67, 56, 77, 70, 44, 64, 76, 50, 54, 59, 65, 52, 60, 59, 68, 71, 105, 76, 84, 52, 35, 59, 48, 37, 78, 51, 77, 66, 55, 70, 49, 44, 102, 74, 75, 78, 104, 80, 43, 53, 74, 77, 61, 76, 53, 100, 74, 79, 60, 85, 71, 41, 64, 63, 101, 47, 72, 91, 54, 67, 54, 71, 99, 84, 76, 56, 67, 63, 80, 64, 49, 72, 64, 60, 71, 93, 71, 40, 70, 92, 48, 66, 50, 60, 73, 45, 66, 59, 67, 35, 64, 47, 55, 74, 40, 50, 56, 71, 68, 46, 71, 48, 61, 74, 82, 96, 75, 66, 69, 81, 50, 63, 65, 45, 69, 83, 73, 51, 68, 68, 81, 50, 70, 69, 49, 48, 69, 71, 77, 56, 59, 75, 58, 64, 54, 66, 70, 67, 48, 57, 63, 74, 53, 84, 55, 70, 91, 61, 62, 58, 81, 59, 74, 83, 59, 68, 58, 56, 64, 64, 74, 91, 72, 68, 90, 68, 58, 65, 46, 69, 81, 54, 66, 86, 65, 68, 57, 63, 82, 67, 72, 76, 69, 67, 63, 69, 51, 61, 68, 53, 51, 60, 52, 75, 67, 76, 48, 71, 153, 62, 67, 68, 54, 53, 87, 65, 60, 55, 93, 65, 64, 51, 91, 59, 61, 49, 78, 77, 54, 66, 57, 54, 60, 78, 64, 41, 83, 67, 86, 66, 74, 46, 57, 58, 61, 97, 97, 56, 58, 72, 64, 75, 99, 60, 78, 59, 79, 63, 66, 68, 61, 45, 61, 67, 68, 65, 56, 83, 77, 64, 86, 71, 90, 76, 94, 47, 52, 50, 65, 66, 50, 71, 57, 53, 75, 20, 77, 60, 64, 55, 67, 56, 48, 94, 61, 72, 85, 67, 66, 70, 113, 58, 56, 59, 65, 60, 66, 77, 67, 61, 65, 59, 74, 40, 67, 64, 55, 106, 51, 76, 100, 89, 81, 40, 57, 106, 69, 60, 71, 63, 50, 69, 87, 68, 75, 73, 55, 69, 75, 66, 46, 102, 64, 65, 80, 61, 68, 44, 64, 63, 55, 68, 57, 107, 56, 60, 74, 91, 50, 60, 69, 66, 75, 62, 79, 49, 63, 66, 56, 64, 50, 58, 66, 108, 67, 70, 70, 74, 48, 51, 53, 46, 64, 62, 74, 50, 47, 69, 58, 66, 110, 48, 61, 63, 82, 71, 53, 83, 83, 94, 60, 59, 71, 85, 65, 52, 57, 73, 63, 65, 73, 60, 65, 56, 69, 58, 51, 53, 72, 70, 50, 85, 61, 62, 82, 73, 73, 71, 80, 61, 55, 64, 63, 60, 56, 65, 67, 64, 58, 53, 71, 74, 61, 56, 56, 75, 76, 50, 68, 67, 65, 105, 51, 54, 73, 57, 79, 95, 59, 53, 62, 62, 90, 77, 58, 60, 49, 55, 73, 58, 76, 59, 70, 56, 51, 70, 50, 46, 61, 99, 78, 68, 53, 108, 75, 61, 88, 87, 40, 69, 53, 81, 63, 51, 40, 56, 56, 45, 77, 57, 82, 75, 50, 70, 62, 64, 66, 73, 68, 60, 59, 76, 64, 44, 73, 49, 67, 69, 76, 70, 54, 59, 74, 55, 70, 57, 56, 53, 71, 72, 66, 69, 74, 57, 50, 68, 99, 73, 85, 58, 61, 79, 60, 87, 68, 81, 65, 54, 68, 83, 58, 61, 61, 81, 60, 121, 63, 60, 78, 71, 77, 102, 53, 72, 73, 63, 65, 59, 65, 56, 70, 62, 63, 54, 67, 61, 84, 74, 69, 75, 47, 74, 59, 82, 104, 60, 60, 77, 72, 92, 75, 67, 38, 77, 79, 59, 99, 72, 69, 66, 96, 56, 72, 53, 49, 60, 56, 83, 60, 63, 51, 70, 50, 66, 78, 77, 73, 56, 55, 71, 120, 86, 71, 60, 52, 74, 73, 72, 39, 71, 75, 59, 65, 69, 60, 47, 56, 74, 63, 71, 73, 79, 80, 57, 67, 64, 54, 58, 75, 61, 72, 58, 63, 59, 100, 71, 61, 80, 36, 57, 57, 78, 76, 85, 60, 54, 64, 56, 87, 43, 72, 58, 69, 56, 66, 54, 70, 52, 56, 51, 72, 68, 75, 57, 74, 78, 42, 64, 66, 62, 94, 63, 62, 73, 58, 84, 55, 59, 58, 87, 58, 106, 62, 48, 55, 48, 59, 69, 67, 59, 44, 60, 60, 49, 57, 52, 55, 90, 57, 67, 104, 119, 74, 75, 79, 77, 59, 50, 77, 56, 71, 52, 80, 58, 78, 64, 72, 85, 61, 58, 60, 68, 71, 61, 68, 54, 72, 67, 61, 65, 64, 63, 70, 17, 52, 67, 49, 46, 61, 59, 46, 50, 97, 54, 54, 66, 100, 64, 72, 50, 85, 60, 59, 77, 50, 42, 84, 69, 76, 53, 59, 57, 73, 85, 54, 83, 58, 75, 79, 72, 61, 55, 74, 75, 50, 66, 64, 64, 63, 58, 43, 62, 51, 71, 49, 72, 70, 53, 42, 58, 62, 74, 40, 95, 61, 60, 83, 52, 80, 69, 79, 125, 28, 65, 54, 52, 59, 60, 74, 54, 58, 58, 65, 59, 53, 87, 51, 64, 85, 57, 59, 49, 75, 39, 59, 52, 51, 58, 90, 72, 77, 55, 64, 67, 57, 67, 72, 64, 61, 65, 62, 53, 55, 58, 52, 61, 54, 67, 84, 59, 61, 96, 55, 80, 60, 45, 87, 66, 58, 70, 70, 112, 57, 49, 50, 62, 76, 74, 65, 71, 48, 78, 48, 34, 54, 47, 79, 75, 91, 61, 63, 67, 82, 70, 45, 69, 75, 76, 87, 53, 73, 40, 67, 68, 60, 74, 57, 86, 82, 65, 78, 59, 56, 65, 41, 65, 64, 73, 67, 54, 63, 62, 85, 65, 63, 59, 85, 65, 22, 112, 83, 65, 45, 117, 86, 62, 82, 61, 63, 58, 95, 77, 62, 66, 63, 61, 71, 54, 70, 69, 56, 56, 76, 90, 58, 79, 78, 52, 66, 76, 57, 51, 62, 51, 60, 72, 75, 71, 41, 58, 67, 51, 62, 66, 83, 42, 63, 77, 79, 73, 78, 0, 56, 53, 66, 75, 73, 76, 57, 63, 61, 83, 86, 66, 64, 72, 53, 52, 104, 46, 68, 50, 116, 55, 55, 73, 67, 66, 55, 64, 75, 41, 71, 72, 60, 58, 110, 61, 66, 55, 65, 67, 77, 61, 94, 70, 46, 67, 70, 65, 60, 68, 84, 73, 65, 67, 30, 93, 59, 43, 61, 69, 92, 60, 73, 86, 61, 69, 86, 63, 76, 78, 76, 56, 72, 64, 77, 50, 73, 76, 79, 62, 62, 68, 78, 54, 36, 77, 77, 85, 66, 42, 78, 59, 53, 71, 66, 67, 67, 58, 69, 61, 69, 68, 63, 79, 54, 76, 52, 69, 59, 90, 87, 65, 66, 51, 55, 53, 37, 71, 59, 71, 51, 69, 54, 59, 44, 66, 85, 73, 51, 58, 72, 55, 66, 54, 51, 49, 85, 63, 70, 54, 77, 55, 85, 66, 70, 63, 53, 62, 52, 66, 74, 74, 81, 74, 71, 55, 71, 86, 56, 58, 87, 60, 66, 55, 81, 68, 58, 47, 63, 58, 59, 61, 63, 54, 54, 57, 63, 79, 43, 66, 38, 52, 59, 112, 59, 77, 83, 82, 62, 61, 68, 60, 49, 63, 105, 102, 60, 60, 75, 69, 60, 54, 78, 66, 62, 49, 76, 53, 83, 99, 50, 64, 68, 84, 69, 54, 48, 62, 70, 61, 67, 67, 72, 54, 68, 71, 74, 60, 63, 74, 65, 64, 60, 72, 67, 71, 55, 55, 67, 74, 67, 35, 68, 50, 79, 78, 49, 67, 70, 74, 55, 51, 74, 77, 64, 52, 55, 47, 59, 60, 50, 59, 76, 67, 57, 48, 62, 62, 57, 61, 58, 73, 44, 57, 76, 55, 64, 51, 64, 33, 91, 66, 68, 85, 65, 91, 73, 65, 47, 58, 68, 69, 100, 60, 75, 67, 88, 66, 74, 53, 71, 78, 55, 75, 59, 68, 51, 66, 63, 62, 60, 74, 77, 59, 48, 62, 56, 68, 58, 67, 40, 72, 79, 66, 68, 48, 47, 60, 83, 62, 54, 54, 63, 59, 66, 81, 85, 110, 85, 70, 104, 68, 105, 59, 63, 54, 64, 72, 72, 54, 47, 63, 62, 83, 95, 59, 58, 59, 52, 56, 62, 57, 70, 55, 65, 64, 55, 64, 70, 64, 51, 55, 107, 62, 70, 64, 60, 64, 71, 56, 84, 131, 57, 71, 53, 44, 72, 66, 65, 85, 55, 44, 39, 78, 70, 57, 58, 59, 73, 48, 50, 64, 84, 61, 58, 87, 83, 66, 60, 60, 71, 78, 51, 73, 75, 66, 88, 79, 78, 48, 83, 64, 75, 64, 57, 62, 64, 83, 84, 71, 64, 71, 49, 84, 58, 69, 67, 81, 65, 51, 103, 78, 47, 68, 59, 56, 65, 93, 54, 63, 70, 64, 67, 69, 43, 71, 65, 66, 74, 63, 94, 92, 52, 56, 78, 63, 71, 68, 67, 78, 77, 69, 76, 63, 65, 66, 49, 60, 53, 76, 52, 80, 57, 72, 64, 54, 67, 62, 70, 92, 48, 68, 58, 62, 73, 79, 59, 71, 66, 54, 60, 83, 62, 66, 50, 59, 43, 50, 82, 82, 70, 55, 50, 89, 87, 75, 67, 59, 95, 55, 53, 62, 55, 66, 63, 61, 47, 55, 64, 69, 63, 59, 59, 70, 68, 69, 134, 48, 64, 96, 78, 54, 60, 80, 66, 55, 78, 59, 92, 97, 72, 62, 84, 44, 107, 71, 77, 68, 52, 52, 64, 61, 119, 68, 87, 90, 64, 56, 57, 79, 62, 84, 56, 89, 72, 55, 61, 70, 81, 69, 58, 49, 67, 59, 59, 57, 48, 53, 52, 86, 74, 62, 62, 59, 52, 71, 65, 82, 50, 62, 68, 110, 63, 55, 66, 50, 76, 48, 63, 83, 80, 80, 68, 61, 140, 57, 64, 56, 65, 63, 53, 43, 75, 87, 56, 95, 74, 71, 64, 73, 73, 62, 46, 66, 79, 57, 56, 53, 58, 67, 59, 70, 55, 63, 85, 62, 49, 59, 49, 66, 57, 78, 67, 65, 54, 62, 66, 48, 61, 45, 91, 73, 76, 82, 75, 52, 59, 76, 58, 68, 81, 58, 106, 63, 93, 64, 63, 61, 57, 73, 56, 46, 82, 79, 68, 70, 75, 73, 76, 50, 76, 53, 59, 73, 62, 58, 66, 98, 71, 59, 68, 90, 88, 46, 62, 60, 57, 75, 56, 55, 59, 59, 77, 74, 67, 46, 70, 59, 64, 73, 77, 64, 60, 92, 84, 86, 58, 50, 70, 62, 63, 57, 77, 80, 70, 72, 75, 54, 57, 74, 79, 61, 58, 76, 65, 82, 75, 62, 61, 40, 61, 74, 45, 47, 75, 69, 44, 42, 76, 60, 62, 59, 118, 63, 69, 64, 32, 71, 56, 53, 67, 71, 65, 83, 65, 52, 42, 65, 62, 55, 68, 44, 73, 58, 84, 66, 42, 59, 62, 56, 57, 70, 52, 66, 73, 64, 54, 56, 51, 49, 53, 50, 59, 50, 52, 57, 77, 67, 48, 81, 57, 71, 89, 67, 63, 68, 65, 63, 81, 75, 64, 53, 61, 55, 73, 66, 67, 63, 59, 64, 54, 89, 49, 72, 53, 64, 64, 59, 64, 52, 67, 66, 57, 48, 81, 47, 54, 40, 92, 46, 53, 65, 59, 58, 54, 76, 155, 86, 63, 53, 65, 70, 69, 53, 70, 62, 71, 58, 68, 64, 56, 67, 72, 83, 71, 61, 62, 86, 66, 61, 53, 64, 84, 52, 71, 64, 72, 59, 97, 86, 71, 85, 68, 85, 59, 52, 45, 63, 68, 33, 61, 68, 66, 76, 54, 86, 60, 48, 71, 57, 70, 73, 116, 56, 65, 71, 59, 68, 64, 67, 71, 69, 71, 64, 57, 57, 56, 67, 56, 56, 89, 63, 57, 63, 76, 48, 114, 70, 56, 57, 59, 50, 70, 64, 74, 57, 68, 73, 78, 62, 64, 85, 69, 50, 65, 67, 60, 82, 66, 59, 66, 84, 59, 69, 39, 51, 74, 61, 51, 60, 83, 58, 63, 72, 60, 58, 71, 84, 58, 73, 78, 48, 63, 99, 74, 63, 59, 59, 45, 71, 57, 82, 67, 49, 69, 77, 66, 73, 71, 66, 68, 54, 77, 84, 54, 57, 58, 54, 55, 51, 71, 53, 50, 57, 68, 66, 83, 73, 127, 73, 42, 59, 68, 58, 53, 76, 66, 63, 62, 51, 59, 66, 62, 76, 48, 67, 70, 70, 54, 61, 64, 56, 82, 46, 68, 64, 56, 82, 78, 75, 82, 67, 71, 68, 63, 64, 64, 62, 63, 41, 77, 63, 74, 58, 66, 64, 63, 63, 60, 50, 76, 71, 55, 44, 81, 57, 47, 64, 57, 99, 97, 61, 63, 60, 43, 60, 85, 65, 66, 67, 69, 61, 53, 115, 73, 70, 67, 57, 52, 58, 72, 56, 59, 82, 55, 60, 72, 68, 74, 58, 48, 55, 83, 62, 65, 76, 45, 65, 78, 62, 65, 74, 67, 50, 98, 56, 72, 77, 63, 61, 52, 80, 59, 52, 66, 71, 57, 61, 55, 65, 60, 65, 80, 66, 67, 60, 69, 56, 86, 41, 82, 86, 60, 73, 46, 74, 75, 62, 54, 40, 61, 81, 68, 56, 68, 66, 71, 78, 59, 80, 72, 64, 58, 73, 60, 60, 67, 71, 71, 83, 67, 73, 64, 76, 79, 58, 136, 66, 72, 69, 55, 69, 52, 63, 77, 62, 77, 64, 76, 75, 59, 55, 74, 70, 50, 47, 53, 53, 71, 64, 66, 60, 83, 43, 70, 72, 58, 65, 120, 60, 47, 59, 65, 83, 56, 58, 58, 60, 75, 67, 74, 89, 61, 72, 75, 77, 107, 80, 44, 84, 56, 59, 64, 71, 63, 122, 53, 73, 68, 67, 52, 63, 63, 63, 65, 60, 56, 49, 65, 55, 68, 110, 68, 45, 65, 66, 106, 71, 71, 65, 67, 56, 49, 77, 60, 61, 49, 62, 43, 74, 86, 77, 72, 66, 48, 56, 78, 64, 63, 65, 65, 69, 83, 56, 51, 84, 74, 58, 54, 52, 61, 78, 88, 50, 77, 60, 59, 37, 58, 51, 61, 59, 57, 74, 47, 52, 80, 57, 101, 79, 52, 71, 42, 75, 72, 60, 85, 88, 65, 74, 41, 75, 66, 77, 97, 67, 71, 49, 68, 50, 65, 45, 53, 45, 99, 67, 56, 91, 74, 60, 85, 67, 85, 53, 71, 65, 58, 47, 55, 67, 105, 59, 63, 64, 70, 70, 58, 49, 69, 80, 69, 70, 51, 59, 49, 60, 66, 116, 50, 54, 70, 59, 48, 66, 79, 73, 50, 60, 89, 52, 69, 79, 74, 54, 56, 63, 56, 60, 54, 57, 54, 55, 62, 53, 119, 76, 58, 37, 52, 68, 75, 52, 73, 60, 54, 94, 72, 66, 95, 81, 65, 52, 73, 68, 54, 96, 76, 47, 68, 82, 89, 51, 101, 58, 60, 94, 67, 94, 44, 92, 82, 62, 64, 71, 78, 97, 61, 42, 62, 67, 41, 50, 109, 63, 58, 70, 45, 72, 84, 85, 110, 58, 85, 70, 54, 68, 59, 68, 53, 59, 55, 70, 63, 88, 64, 65, 54, 61, 49, 80, 81, 56, 62, 65, 76, 63, 65, 50, 67, 55, 76, 48, 59, 66, 61, 65, 108, 50, 63, 71, 49, 83, 90, 57, 68, 54, 63, 55, 41, 93, 64, 67, 60, 58, 76, 70, 43, 34, 51, 54, 78, 93, 57, 56, 52, 52, 95, 51, 74, 69, 56, 82, 60, 71, 36, 61, 58, 74, 61, 43, 54, 62, 58, 95, 63, 69, 69, 55, 66, 65, 73, 72, 59, 52, 72, 49, 74, 77, 99, 62, 58, 62, 68, 78, 75, 42, 63, 46, 70, 77, 86, 62, 69, 52, 81, 91, 67, 51, 47, 67, 52, 70, 74, 67, 54, 65, 68, 67, 68, 67, 62, 71, 66, 78, 73, 67, 88, 52, 96, 58, 52, 61, 58, 39, 63, 51, 68, 73, 60, 65, 72, 53, 85, 54, 57, 67, 61, 81, 40, 81, 84, 59, 84, 54, 89, 45, 79, 48, 70, 70, 70, 50, 35, 65, 79, 47, 71, 61, 81, 45, 68, 57, 66, 60, 68, 76, 61, 71, 64, 57, 58, 62, 46, 76, 59, 63, 89, 58, 96, 63, 85, 72, 59, 65, 44, 66, 64, 46, 60, 61, 71, 63, 72, 65, 67, 66, 112, 73, 82, 73, 72, 73, 71, 74, 83, 58, 79, 68, 40, 74, 76, 78, 71, 63, 65, 50, 52, 76, 55, 58, 79, 137, 63, 58, 49, 72, 67, 57, 62, 84, 54, 61, 62, 61, 77, 67, 54, 68, 80, 57, 60, 65, 66, 60, 64, 91, 56, 61, 55, 63, 106, 72, 68, 65, 65, 104, 69, 78, 35, 43, 59, 69, 57, 45, 62, 73, 57, 65, 52, 68, 70, 90, 73, 66, 70, 70, 80, 48, 70, 51, 84, 58, 66, 44, 59, 72, 100, 55, 69, 61, 67, 60, 38, 69, 55, 71, 67, 80, 69, 89, 90, 68, 50, 105, 57, 69, 81, 48, 73, 40, 48, 112, 54, 75, 69, 86, 45, 70, 56, 77, 82, 61, 76, 64, 93, 66, 56, 82, 53, 110, 47, 73, 66, 67, 76, 46, 88, 46, 67, 54, 92, 57, 60, 39, 45, 49, 94, 60, 72, 61, 66, 49, 51, 65, 78, 78, 83, 40, 62, 48, 66, 74, 57, 69, 60, 74, 66, 67, 67, 98, 64, 61, 80, 80, 67, 57, 62, 64, 48, 83, 54, 72, 59, 50, 55, 68, 99, 50, 64, 69, 69, 58, 55, 81, 72, 60, 54, 64, 65, 42, 59, 70, 60, 76, 156, 44, 70, 56, 52, 73, 60, 102, 66, 66, 89, 75, 56, 67, 55, 60, 75, 66, 68, 52, 49, 73, 70, 103, 70, 52, 64, 45, 66, 64, 64, 66, 90, 55, 68, 70, 68, 57, 64, 62, 54, 60, 61, 94, 39, 52, 47, 76, 71, 44, 76, 60, 72, 73, 58, 63, 69, 76, 64, 66, 41, 85, 70, 56, 72, 63, 68, 73, 64, 73, 68, 69, 57, 64, 62, 59, 56, 97, 73, 54, 54, 83, 64, 61, 50, 46, 89, 45, 84, 66, 53, 81, 72, 53, 65, 98, 48, 48, 46, 56, 93, 58, 72, 46, 62, 71, 74, 71, 99, 70, 56, 80, 67, 54, 66, 93, 82, 61, 84, 68, 73, 61, 50, 52, 75, 70, 72, 54, 72, 60, 85, 65, 84, 58, 50, 96, 75, 76, 46, 83, 50, 59, 99, 59, 78, 74, 63, 62, 71, 65, 66, 67, 68, 61, 64, 111, 71, 74, 65, 68, 50, 111, 75, 86, 71, 67, 71, 60, 61, 71, 64, 81, 42, 61, 72, 34, 64, 78, 52, 50, 67, 60, 77, 34, 48, 81, 61, 79, 82, 90, 48, 78, 63, 52, 57, 63, 52, 77, 50, 118, 65, 50, 80, 60, 69, 62, 56, 70, 52, 88, 70, 81, 60, 84, 77, 48, 65, 76, 32, 72, 62, 52, 74, 79, 86, 78, 69, 57, 61, 36, 100, 53, 65, 77, 48, 52, 48, 50, 57, 65, 85, 68, 74, 77, 51, 59, 54, 67, 59, 58, 51, 69, 52, 51, 48, 55, 72, 57, 57, 54, 56, 69, 68, 60, 83, 95, 42, 73, 55, 81, 73, 46, 41, 63, 88, 89, 58, 44, 71, 63, 126, 67, 91, 52, 88, 54, 58, 51, 63, 53, 46, 57, 59, 72, 67, 56, 84, 50, 73, 56, 95, 76, 92, 76, 84, 67, 75, 66, 81, 49, 72, 89, 46, 75, 56, 75, 55, 65, 65, 58, 77, 101, 24, 66, 73, 55, 50, 88, 69, 54, 67, 55, 105, 68, 59, 68, 47, 57, 81, 61, 57, 56, 78, 92, 62, 96, 75, 89, 99, 76, 74, 89, 64, 84, 68, 87, 48, 79, 58, 84, 47, 54, 61, 124, 41, 45, 129, 64, 86, 66, 89, 68, 63, 51, 46, 74, 52, 41, 82, 67, 60, 48, 92, 73, 60, 51, 78, 94, 56, 72, 45, 74, 70, 71, 67, 58, 85, 69, 60, 59, 57, 77, 73, 76, 66, 63, 90, 78, 60, 59, 37, 46, 62, 86, 73, 72, 62, 66, 77, 43, 57, 70, 73, 69, 77, 75, 60, 64, 81, 59, 49, 61, 61, 79, 57, 53, 76, 68, 69, 76, 80, 54, 94, 92, 50, 63, 61, 81, 61, 58, 54, 71, 83, 73, 49, 74, 59, 67, 61, 63, 57, 88, 74, 64, 58, 42, 77, 97, 41, 82, 62, 66, 81, 66, 42, 67, 74, 64, 71, 85, 58, 67, 71, 59, 72, 54, 66, 51, 70, 63, 45, 52, 91, 68, 61, 39, 66, 74, 45, 65, 75, 55, 60, 61, 70, 57, 54, 44, 72, 62, 65, 68, 85, 79, 64, 67, 52, 65, 68, 83, 69, 79, 52, 48, 65, 67, 59, 69, 79, 70, 70, 46, 51, 66, 61, 58, 68, 53, 55, 69, 59, 57, 78, 72, 79, 63, 72, 62, 73, 64, 68, 62, 74, 80, 55, 51, 62, 55, 49, 57, 71, 70, 64, 101, 44, 51, 55, 58, 58, 80, 48, 104, 40, 70, 87, 68, 76, 80, 63, 70, 99, 51, 73, 58, 63, 60, 52, 70, 80, 79, 63, 62, 57, 79, 47, 73, 59, 91, 55, 71, 67, 46, 68, 58, 60, 71, 64, 65, 58, 90, 64, 58, 70, 63, 59, 79, 130, 65, 50, 56, 57, 55, 79, 42, 73, 57, 41, 45, 51, 79, 59, 84, 56, 53, 59, 68, 52, 44, 60, 60, 77, 58, 70, 75, 59, 88, 43, 79, 78, 58, 61, 86, 43, 65, 66, 77, 121, 69, 55, 45, 62, 60, 61, 78, 49, 73, 81, 69, 56, 97, 71, 36, 67, 84, 48, 124, 70, 59, 85, 80, 62, 73, 70, 73, 58, 84, 58, 67, 67, 44, 69, 67, 50, 72, 86, 94, 61, 73, 63, 64, 57, 89, 65, 58, 60, 63, 41, 64, 76, 48, 55, 63, 74, 51, 67, 53, 92, 57, 64, 73, 84, 66, 74, 64, 80, 62, 71, 65, 66, 87, 67, 70, 41, 61, 59, 60, 72, 71, 55, 63, 69, 67, 68, 46, 65, 73, 69, 54, 71, 51, 66, 95, 73, 72, 44, 52, 61, 61, 79, 78, 56, 73, 72, 89, 70, 61, 81, 64, 81, 46, 104, 59, 59, 55, 81, 64, 60, 60, 68, 64, 60, 105, 67, 59, 73, 69, 61, 72, 103, 61, 65, 56, 78, 79, 74, 45, 75, 76, 58, 81, 78, 47, 43, 68, 51, 73, 69, 73, 49, 55, 72, 68, 79, 79, 55, 92, 98, 75, 67, 79, 62, 71, 52, 44, 68, 67, 52, 60, 60, 61, 52, 58, 51, 55, 50, 60, 118, 63, 75, 90, 66, 59, 62, 65, 70, 75, 50, 92, 82, 83, 87, 61, 59, 68, 64, 65, 83, 52, 69, 87, 86, 43, 88, 76, 73, 77, 57, 73, 88, 65, 78, 54, 48, 95, 61, 73, 63, 52, 85, 82, 60, 42, 60, 77, 52, 67, 57, 85, 34, 39, 54, 65, 61, 53, 47, 68, 63, 46, 66, 42, 64, 56, 62, 80, 55, 50, 55, 53, 62, 64, 59, 46, 42, 83, 38, 80, 63, 42, 75, 62, 78, 87, 78, 74, 61, 59, 69, 61, 106, 43, 58, 53, 56, 83, 85, 59, 67, 68, 58, 45, 61, 48, 78, 57, 67, 64, 59, 54, 87, 70, 62, 62, 76, 64, 80, 68, 68, 51, 53, 89, 62, 80, 71, 38, 98, 90, 50, 57, 56, 58, 80, 68, 49, 47, 54, 80, 78, 59, 69, 75, 63, 64, 55, 55, 58, 101, 51, 55, 49, 69, 49, 58, 50, 76, 73, 70, 59, 82, 60, 66, 68, 63, 89, 60, 60, 47, 51, 75, 68, 84, 51, 72, 60, 82, 62, 84, 66, 53, 83, 72, 64, 65, 62, 54, 62, 61, 51, 45, 54, 50, 88, 42, 63, 64, 54, 53, 72, 71, 58, 83, 67, 55, 56, 64, 64, 79, 56, 83, 59, 59, 76, 40, 83, 58, 83, 63, 72, 61, 74, 53, 56, 108, 64, 70, 62, 74, 66, 91, 59, 72, 53, 69, 66, 67, 64, 46, 67, 71, 72, 61, 62, 64, 50, 70, 50, 74, 42, 58, 53, 87, 69, 57, 42, 68, 60, 68, 75, 84, 74, 72, 60, 40, 42, 63, 57, 56, 74, 55, 71, 49, 50, 47, 73, 43, 73, 54, 61, 59, 69, 74, 62, 91, 73, 83, 41, 65, 71, 59, 67, 97, 78, 66, 78, 66, 81, 67, 75, 51, 70, 76, 69, 70, 88, 60, 95, 66, 78, 62, 63, 71, 62, 87, 99, 84, 69, 69, 65, 49, 62, 40, 89, 67, 67, 64, 91, 75, 77, 86, 86, 78, 58, 105, 41, 91, 74, 71, 74, 51, 57, 84, 59, 71, 65, 65, 67, 44, 90, 154, 46, 60, 68, 62, 37, 86, 59, 80, 62, 74, 51, 55, 77, 61, 89, 59, 121, 101, 76, 42, 50, 43, 50, 66, 59, 57, 50, 90, 68, 59, 73, 55, 57, 94, 67, 82, 44, 78, 55, 66, 90, 66, 60, 66, 50, 62, 57, 65, 75, 82, 64, 71, 67, 72, 70, 57, 54, 84, 61, 60, 55, 59, 75, 53, 82, 84, 38, 90, 77, 84, 61, 58, 48, 60, 72, 65, 65, 59, 123, 56, 70, 60, 53, 65, 78, 62, 71, 55, 60, 58, 54, 49, 59, 56, 71, 71, 75, 67, 48, 44, 69, 74, 63, 49, 66, 69, 65, 73, 51, 56, 70, 50, 66, 59, 55, 83, 70, 64, 57, 63, 58, 58, 53, 57, 43, 90, 88, 80, 58, 64, 78, 63, 86, 67, 64, 56, 56, 64, 67, 48, 66, 88, 59, 73, 95, 59, 68, 51, 89, 63, 71, 57, 87, 71, 62, 71, 43, 65, 44, 51, 59, 78, 54, 65, 69, 54, 69, 55, 65, 55, 79, 51, 63, 75, 51, 62, 56, 53, 82, 55, 45, 54, 77, 73, 62, 59, 81, 53, 67, 49, 77, 58, 61, 64, 64, 66, 67, 64, 67, 56, 83, 78, 76, 46, 55, 86, 74, 78, 63, 49, 61, 77, 71, 52, 61, 60, 67, 60, 62, 57, 54, 56, 60, 57, 59, 54, 62, 65, 68, 55, 64, 99, 56, 62, 113, 68, 58, 52, 73, 47, 53, 48, 58, 59, 84, 88, 60, 46, 60, 95, 63, 76, 66, 51, 55, 49, 52, 65, 68, 63, 54, 69, 75, 68, 90, 81, 64, 54, 74, 58, 59, 70, 57, 68, 65, 54, 71, 68, 65, 76, 62, 64, 62, 60, 44, 56, 45, 64, 60, 88, 57, 64, 69, 70, 66, 57, 96, 56, 79, 116, 70, 57, 97, 61, 71, 58, 72, 59, 62, 64, 53, 66, 72, 66, 64, 60, 75, 62, 56, 64, 57, 64, 62, 64, 54, 72, 57, 70, 73, 66, 56, 71, 66, 51, 42, 86, 73, 64, 55, 60, 70, 46, 55, 45, 68, 45, 76, 74, 72, 76, 66, 67, 63, 75, 83, 64, 69, 68, 61, 91, 65, 73, 57, 65, 54, 77, 73, 81, 50, 53, 71, 59, 62, 66, 55, 131, 73, 60, 82, 61, 59, 48, 60, 63, 59, 63, 71, 61, 53, 71, 60, 62, 54, 64, 74, 59, 60, 58, 90, 58, 71, 72, 56, 70, 44, 101, 57, 100, 50, 66, 82, 72, 73, 49, 68, 55, 55, 70, 65, 54, 48, 65, 64, 58, 50, 62, 60, 100, 63, 63, 85, 48, 62, 59, 63, 51, 59, 56, 76, 68, 53, 75, 65, 64, 76, 71, 47, 52, 66, 61, 84, 77, 67, 75, 115, 60, 43, 88, 50, 64, 79, 98, 69, 70, 69, 67, 64, 64, 81, 71, 52, 85, 74, 61, 94, 96, 69, 73, 72, 78, 61, 49, 64, 67, 77, 68, 69, 56, 62, 38, 63, 54, 60, 62, 56, 55, 58, 76, 85, 60, 81, 72, 58, 49, 54, 73, 48, 39, 57, 68, 68, 60, 58, 86, 64, 58, 66, 49, 60, 64, 77, 63, 51, 55, 78, 74, 61, 57, 67, 44, 57, 61, 68, 49, 65, 58, 59, 70, 67, 87, 58, 84, 62, 62, 50, 59, 84, 68, 60, 72, 68, 75, 82, 86, 62, 57, 48, 61, 84, 50, 61, 58, 72, 84, 53, 88, 79, 58, 54, 60, 72, 66, 61, 68, 64, 82, 76, 41, 90, 98, 53, 57, 90, 66, 61, 61, 45, 67, 60, 66, 76, 56, 62, 70, 56, 51, 76, 61, 60, 65, 52, 66, 88, 67, 62, 50, 66, 65, 45, 64, 56, 38, 69, 51, 73, 58, 72, 72, 70, 52, 70, 58, 61, 62, 64, 57, 54, 68, 76, 61, 90, 48, 73, 64, 78, 54, 67, 85, 68, 49, 57, 57, 66, 58, 65, 54, 69, 64, 65, 68, 59, 134, 72, 72, 55, 63, 55, 72, 74, 88, 85, 63, 87, 59, 62, 60, 77, 70, 52, 67, 86, 50, 77, 79, 53, 72, 71, 62, 64, 64, 62, 70, 72, 68, 37, 49, 59, 60, 69, 72, 61, 81, 78, 47, 73, 46, 64, 59, 63, 99, 54, 55, 96, 55, 68, 72, 60, 67, 75, 50, 55, 55, 72, 68, 71, 48, 63, 85, 72, 66, 66, 64, 100, 39, 49, 71, 65, 61, 59, 71, 69, 87, 51, 95, 58, 57, 69, 42, 65, 60, 51, 66, 59, 98, 67, 54, 80, 54, 78, 68, 67, 89, 51, 63, 69, 59, 76, 45, 61, 69, 57, 59, 71, 63, 56, 60, 70, 58, 67, 79, 56, 50, 73, 81, 51, 70, 71, 67, 72, 76, 62, 90, 57, 47, 69, 72, 61, 65, 53, 53, 57, 49, 64, 69, 70, 67, 64, 56, 67, 46, 61, 66, 78, 81, 69, 64, 69, 63, 79, 55, 67, 38, 62, 53, 54, 79, 70, 40, 72, 69, 69, 60, 56, 80, 52, 84, 56, 79, 72, 61, 82, 60, 83, 70, 76, 85, 82, 59, 60, 72, 77, 65, 74, 73, 59, 67, 86, 65, 104, 76, 88, 56, 68, 73, 55, 74, 73, 54, 57, 56, 62, 67, 73, 96, 60, 66, 50, 93, 46, 81, 67, 90, 76, 61, 73, 67, 72, 66, 65, 71, 91, 63, 88, 72, 67, 64, 67, 74, 94, 74, 69, 59, 67, 57, 69, 74, 77, 80, 56, 81, 72, 51, 70, 67, 86, 67, 67, 87, 52, 70, 60, 55, 77, 67, 67, 62, 64, 74, 66, 76, 61, 63, 75, 60, 90, 92, 46, 63, 64, 59, 45, 62, 63, 86, 70, 72, 109, 68, 100, 63, 85, 75, 78, 77, 54, 76, 69, 57, 61, 67, 56, 77, 74, 58, 57, 65, 53, 59, 67, 61, 59, 58, 65, 72, 68, 57, 78, 70, 68, 59, 75, 51, 69, 36, 94, 51, 87, 87, 92, 46, 73, 66, 87, 56, 70, 55, 50, 67, 86, 63, 74, 63, 63, 59, 65, 67, 67, 58, 77, 67, 98, 63, 57, 68, 59, 55, 66, 64, 43, 66, 66, 54, 64, 62, 69, 72, 82, 68, 83, 81, 60, 56, 55, 64, 61, 79, 64, 60, 60, 72, 68, 53, 49, 65, 100, 54, 80, 103, 62, 58, 63, 66, 39, 70, 72, 66, 65, 54, 74, 56, 57, 43, 47, 62, 71, 53, 55, 48, 55, 71, 65, 42, 58, 80, 70, 61, 58, 65, 69, 58, 84, 60, 78, 56, 57, 68, 58, 70, 62, 76, 60, 60, 67, 79, 75, 78, 54, 72, 62, 88, 61, 64, 61, 61, 70, 68, 68, 50, 59, 67, 48, 67, 72, 80, 69, 55, 54, 80, 66, 53, 66, 69, 77, 63, 67, 65, 62, 88, 56, 70, 82, 72, 77, 62, 62, 72, 65, 64, 71, 72, 71, 69, 62, 51, 54, 59, 69, 71, 68, 55, 53, 67, 58, 54, 78, 65, 58, 87, 74, 75, 144, 60, 58, 66, 74, 68, 46, 86, 56, 58, 67, 56, 70, 44, 79, 49, 64, 73, 87, 79, 77, 63, 61, 68, 66, 60, 63, 53, 76, 69, 62, 69, 58, 67, 75, 112, 52, 82, 61, 53, 74, 49, 94, 92, 56, 52, 67, 57, 89, 76, 51, 80, 45, 50, 67, 56, 84, 54, 46, 70, 73, 84, 58, 59, 52, 66, 76, 66, 67, 80, 60, 100, 119, 72, 66, 89, 51, 57, 72, 62, 67, 76, 65, 36, 55, 46, 45, 65, 59, 86, 68, 63, 86, 60, 44, 59, 71, 69, 54, 83, 64, 55, 55, 59, 48, 74, 68, 182, 55, 45, 71, 64, 57, 65, 57, 56, 50, 60, 54, 72, 77, 51, 95, 87, 95, 60, 72, 53, 80, 71, 55, 57, 53, 59, 80, 73, 72, 58, 75, 75, 98, 66, 66, 55, 60, 65, 65, 60, 57, 74, 64, 55, 45, 44, 70, 69, 60, 57, 76, 43, 64, 70, 44, 66, 73, 58, 64, 75, 58, 50, 79, 56, 76, 51, 78, 85, 70, 68, 42, 58, 50, 58, 62, 89, 72, 79, 85, 47, 60, 79, 53, 107, 74, 70, 62, 46, 98, 58, 44, 50, 62, 60, 55, 68, 59, 70, 86, 49, 55, 41, 58, 63, 66, 51, 71, 54, 69, 69, 68, 67, 53, 75, 76, 53, 56, 77, 67, 60, 50, 82, 61, 52, 47, 73, 53, 49, 72, 57, 61, 79, 70, 63, 57, 68, 62, 72, 78, 65, 80, 64, 64, 77, 80, 76, 45, 66, 61, 61, 92, 87, 80, 59, 74, 73, 82, 96, 56, 63, 94, 85, 64, 95, 59, 70, 56, 51, 73, 60, 63, 76, 64, 76, 73, 50, 76, 72, 56, 60, 70, 80, 72, 49, 58, 69, 85, 72, 57, 70, 49, 92, 57, 76, 49, 45, 62, 61, 67, 62, 75, 67, 70, 53, 72, 65, 53, 63, 53, 76, 80, 48, 46, 72, 54, 63, 67, 62, 74, 68, 38, 65, 64, 70, 85, 64, 49, 69, 64, 68, 62, 64, 60, 53, 53, 45, 46, 77, 71, 83, 66, 84, 52, 78, 69, 62, 62, 53, 73, 77, 66, 55, 72, 57, 76, 77, 94, 64, 68, 67, 55, 41, 67, 56, 81, 62, 39, 55, 53, 49, 69, 42, 56, 45, 71, 57, 49, 50, 75, 62, 54, 63, 53, 49, 56, 97, 49, 73, 55, 76, 69, 46, 74, 61, 63, 85, 63, 68, 58, 123, 85, 59, 69, 62, 43, 84, 61, 40, 78, 61, 59, 74, 74, 49, 57, 95, 63, 55, 65, 80, 80, 69, 70, 52, 58, 45, 49, 78, 107, 83, 77, 65, 79, 51, 61, 53, 67, 69, 68, 49, 77, 55, 67, 58, 64, 66, 71, 56, 87, 72, 46, 59, 89, 62, 65, 80, 49, 57, 86, 45, 67, 59, 58, 80, 54, 76, 76, 52, 79, 60, 78, 71, 57, 70, 56, 83, 46, 56, 76, 57, 75, 51, 70, 61, 62, 81, 63, 59, 46, 96, 78, 78, 78, 42, 53, 91, 73, 66, 52, 46, 60, 59, 52, 56, 72, 94, 63, 65, 75, 47, 85, 67, 56, 58, 36, 55, 67, 71, 75, 65, 44, 66, 66, 63, 52, 65, 97, 49, 80, 61, 74, 62, 76, 60, 62, 73, 79, 55, 95, 81, 67, 54, 49, 50, 64, 87, 73, 83, 54, 56, 60, 69, 64, 73, 60, 58, 69, 55, 69, 61, 47, 58, 69, 89, 71, 53, 62, 75, 58, 66, 48, 62, 57, 51, 55, 73, 101, 75, 69, 46, 52, 65, 58, 57, 48, 61, 67, 47, 56, 77, 55, 68, 54, 55, 78, 61, 52, 58, 70, 93, 73, 66, 52, 61, 64, 93, 56, 80, 50, 66, 53, 74, 82, 59, 58, 46, 63, 73, 97, 78, 60, 54, 54, 68, 94, 43, 72, 65, 62, 79, 76, 81, 67, 66, 56, 57, 53, 65, 75, 96, 52, 81, 67, 81, 57, 58, 71, 76, 56, 64, 79, 65, 47, 68, 58, 78, 74, 58, 73, 83, 51, 75, 60, 55, 46, 49, 78, 59, 42, 50, 62, 62, 82, 65, 67, 46, 79, 73, 54, 47, 70, 60, 60, 53, 80, 55, 77, 51, 73, 74, 66, 68, 56, 45, 54, 59, 88, 54, 84, 59, 63, 78, 54, 69, 74, 72, 55, 55, 47, 102, 44, 68, 46, 72, 59, 80, 93, 67, 69, 61, 99, 105, 49, 57, 53, 43, 49, 57, 69, 80, 87, 64, 81, 95, 100, 61, 65, 50, 67, 86, 84, 88, 67, 71, 60, 79, 56, 69, 59, 64, 67, 84, 68, 58, 80, 69, 75, 63, 54, 59, 45, 47, 39, 61, 91, 85, 81, 72, 71, 62, 55, 52, 63, 92, 50, 62, 65, 63, 106, 68, 58, 43, 60, 69, 67, 66, 61, 69, 61, 70, 84, 101, 25, 53, 70, 86, 60, 54, 62, 89, 64, 40, 79, 62, 73, 48, 63, 65, 91, 75, 85, 50, 64, 56, 62, 70, 58, 85, 99, 106, 78, 72, 52, 45, 72, 72, 54, 63, 70, 50, 62, 57, 72, 54, 46, 55, 65, 78, 61, 57, 94, 93, 74, 51, 62, 56, 55, 61, 60, 49, 60, 53, 76, 62, 56, 63, 79, 63, 115, 67, 64, 55, 44, 96, 61, 78, 57, 54, 58, 70, 61, 63, 92, 88, 54, 72, 60, 67, 77, 73, 65, 66, 52, 54, 96, 58, 54, 75, 53, 91, 84, 90, 61, 106, 59, 75, 73, 49, 57, 60, 54, 77, 52, 83, 62, 77, 73, 63, 65, 53, 63, 55, 77, 47, 62, 40, 63, 48, 39, 72, 65, 59, 59, 50, 71, 50, 55, 60, 103, 74, 51, 85, 68, 41, 60, 74, 57, 54, 44, 78, 80, 65, 48, 73, 70, 63, 65, 43, 65, 36, 91, 46, 69, 67, 99, 67, 46, 56, 66, 67, 58, 49, 49, 82, 68, 66, 86, 34, 58, 58, 109, 80, 46, 58, 65, 57, 84, 70, 62, 87, 54, 80, 60, 60, 64, 79, 77, 49, 42, 93, 52, 66, 83, 62, 75, 70, 85, 72, 45, 61, 84, 69, 72, 66, 69, 64, 58, 56, 72, 42, 50, 96, 84, 44, 66, 65, 51, 80, 57, 84, 80, 69, 76, 82, 77, 50, 66, 56, 43, 60, 77, 71, 77, 110, 60, 82, 71, 62, 90, 53, 68, 69, 55, 60, 86, 104, 46, 56, 55, 64, 60, 64, 72, 46, 99, 64, 88, 45, 72, 74, 56, 51, 59, 83, 69, 62, 65, 56, 72, 87, 64, 74, 74, 50, 59, 71, 56, 47, 56, 84, 71, 69, 58, 79, 47, 81, 72, 69, 71, 94, 54, 80, 85, 75, 72, 53, 77, 77, 63, 67, 55, 73, 53, 69, 84, 59, 66, 84, 56, 48, 44, 50, 84, 55, 59, 55, 64, 89, 61, 57, 79, 67, 57, 62, 63, 81, 64, 72, 69, 54, 82, 67, 63, 62, 74, 80, 65, 61, 66, 51, 70, 67, 125, 82, 78, 53, 61, 64, 51, 68, 107, 66, 50, 58, 67, 48, 65, 72, 65, 52, 57, 52, 60, 64, 67, 67, 71, 70, 61, 55, 90, 67, 68, 57, 68, 57, 44, 70, 75, 111, 81, 62, 82, 60, 62, 78, 65, 62, 68, 67, 70, 59, 54, 52, 51, 59, 67, 64, 63, 64, 48, 57, 49, 60, 51, 90, 65, 75, 90, 49, 83, 58, 84, 71, 59, 66, 60, 57, 66, 63, 76, 45, 96, 61, 69, 55, 75, 63, 68, 47, 78, 61, 56, 77, 54, 63, 66, 65, 69, 61, 69, 72, 56, 50, 64, 62, 54, 63, 70, 56, 63, 53, 88, 66, 65, 70, 63, 62, 53, 70, 65, 79, 54, 79, 51, 65, 50, 72, 73, 65, 60, 102, 57, 53, 64, 53, 61, 58, 65, 93, 64, 55, 99, 56, 60, 73, 76, 55, 81, 72, 103, 58, 75, 60, 44, 90, 111, 78, 70, 66, 40, 51, 61, 66, 58, 65, 69, 68, 70, 53, 59, 70, 78, 66, 60, 45, 55, 64, 106, 68, 74, 75, 46, 59, 53, 57, 66, 90, 57, 45, 56, 61, 47, 65, 67, 84, 130, 56, 52, 60, 82, 62, 59, 60, 42, 59, 62, 59, 65, 43, 83, 82, 66, 54, 49, 53, 72, 60, 56, 70, 55, 75, 74, 57, 69, 58, 56, 84, 69, 54, 60, 81, 71, 77, 61, 70, 63, 62, 70, 45, 62, 74, 64, 56, 50, 41, 51, 55, 71, 53, 50, 64, 66, 103, 68, 49, 52, 62, 80, 71, 57, 59, 57, 67, 63, 65, 71, 94, 69, 78, 65, 54, 75, 67, 64, 103, 54, 63, 70, 67, 66, 64, 57, 62, 69, 74, 54, 56, 109, 52, 62, 55, 50, 54, 54, 68, 75, 68, 42, 59, 67, 71, 69, 68, 63, 62, 65, 68, 65, 61, 65, 104, 67, 56, 71, 88, 60, 62, 59, 104, 72, 62, 64, 74, 101, 57, 51, 70, 66, 81, 56, 56, 66, 50, 73, 57, 68, 62, 66, 57, 62, 59, 58, 64, 66, 55, 52, 62, 100, 65, 58, 53, 50, 68, 61, 107, 59, 53, 54, 60, 62, 51, 94, 50, 70, 54, 72, 58, 61, 66, 61, 97, 66, 73, 64, 63, 69, 58, 89, 116, 72, 60, 65, 53, 74, 76, 78, 87, 77, 69, 58, 75, 58, 58, 62, 53, 58, 51, 77, 69, 67, 57, 79, 76, 47, 53, 58, 76, 54, 56, 85, 56, 63, 75, 66, 62, 55, 55, 73, 44, 64, 93, 53, 65, 75, 58, 66, 59, 48, 52, 62, 60, 71, 66, 70, 94, 50, 73, 53, 80, 94, 57, 70, 63, 76, 67, 63, 62, 72, 68, 69, 55, 121, 71, 67, 65, 57, 54, 61, 83, 70, 44, 78, 118, 67, 74, 68, 69, 62, 72, 48, 83, 88, 89, 78, 34, 60, 65, 63, 61, 69, 65, 63, 63, 52, 115, 51, 55, 53, 48, 68, 53, 74, 74, 79, 55, 56, 50, 62, 50, 90, 88, 79, 92, 67, 72, 77, 56, 82, 107, 67, 115, 77, 66, 81, 72, 50, 71, 71, 79, 66, 78, 72, 59, 70, 62, 62, 65, 102, 55, 75, 71, 58, 58, 55, 80, 88, 64, 132, 55, 58, 117, 68, 59, 67, 56, 43, 51, 64, 62, 53, 73, 80, 67, 58, 65, 79, 84, 52, 62, 55, 76, 89, 79, 68, 53, 88, 55, 61, 54, 63, 46, 64, 59, 67, 62, 73, 64, 70, 55, 64, 57, 60, 74, 41, 62, 61, 68, 58, 60, 61, 66, 50, 58, 71, 48, 58, 48, 95, 67, 58, 68, 67, 67, 58, 72, 55, 52, 69, 54, 55, 63, 67, 63, 70, 76, 76, 57, 60, 69, 78, 48, 74, 59, 55, 89, 56, 61, 63, 75, 74, 76, 65, 87, 63, 61, 61, 64, 49, 52, 65, 74, 56, 63, 49, 64, 81, 71, 98, 62, 71, 60, 46, 53, 71, 57, 59, 61, 96, 70, 47, 53, 82, 65, 92, 69, 59, 94, 47, 68, 68, 61, 59, 56, 52, 48, 59, 61, 55, 57, 64, 57, 94, 53, 64, 72, 44, 63, 54, 69, 50, 57, 52, 63, 79, 110, 62, 62, 36, 56, 54, 61, 88, 71, 78, 54, 66, 56, 48, 51, 76, 53, 54, 56, 66, 48, 62, 78, 63, 60, 66, 62, 65, 64, 70, 68, 62, 56, 56, 64, 70, 63, 72, 59, 59, 65, 81, 67, 94, 65, 48, 59, 74, 54, 72, 69, 61, 64, 68, 69, 78, 57, 56, 77, 55, 62, 59, 58, 75, 62, 79, 84, 56, 68, 63, 74, 56, 56, 65, 69, 53, 56, 74, 62, 68, 55, 59, 64, 55, 48, 56, 71, 93, 50, 60, 62, 52, 54, 48, 52, 59, 49, 99, 60, 58, 59, 68, 55, 61, 70, 60, 57, 62, 84, 63, 48, 75, 66, 58, 91, 79, 48, 70, 71, 51, 65, 62, 70, 84, 63, 46, 52, 65, 47, 54, 60, 123, 64, 79, 88, 72, 60, 67, 54, 55, 62, 53, 59, 66, 81, 77, 73, 45, 114, 54, 74, 46, 55, 55, 62, 49, 65, 74, 65, 53, 52, 75, 49, 62, 64, 62, 84, 69, 59, 67, 58, 71, 63, 59, 47, 62, 68, 49, 62, 59, 63, 64, 78, 52, 63, 71, 103, 126, 94, 73, 63, 54, 67, 87, 79, 94, 70, 66, 47, 51, 70, 62, 64, 56, 59, 77, 75, 71, 55, 71, 59, 94, 71, 68, 79, 77, 80, 54, 52, 73, 73, 68, 50, 62, 62, 51, 77, 108, 70, 52, 75, 56, 93, 56, 64, 60, 57, 75, 54, 68, 64, 68, 64, 82, 77, 57, 77, 90, 60, 61, 73, 58, 64, 73, 50, 55, 63, 56, 57, 42, 64, 70, 76, 55, 72, 80, 80, 56, 76, 73, 75, 48, 95, 61, 50, 82, 78, 54, 49, 61, 118, 109, 73, 65, 66, 67, 51, 76, 58, 59, 59, 71, 64, 67, 46, 51, 67, 59, 57, 77, 66, 78, 53, 61, 67, 110, 58, 89, 53, 93, 71, 89, 81, 51, 64, 68, 62, 58, 74, 56, 50, 62, 65, 91, 76, 43, 56, 75, 101, 81, 61, 67, 73, 45, 54, 68, 87, 83, 80, 40, 91, 56, 71, 56, 51, 118, 60, 94, 70, 58, 56, 58, 52, 65, 78, 68, 61, 65, 72, 52, 53, 94, 50, 60, 62, 81, 77, 73, 51, 51, 48, 54, 70, 41, 53, 85, 61, 78, 103, 77, 65, 79, 52, 73, 62, 66, 72, 54, 63, 68, 64, 35, 84, 60, 94, 57, 61, 72, 59, 75, 53, 101, 95, 64, 75, 66, 66, 71, 47, 57, 102, 57, 58, 101, 68, 58, 43, 55, 92, 102, 54, 84, 56, 81, 77, 91, 54, 61, 54, 36, 65, 68, 66, 63, 73, 69, 59, 53, 64, 53, 67, 105, 85, 49, 88, 82, 78, 66, 54, 66, 47, 55, 33, 73, 71, 54, 74, 61, 51, 64, 52, 58, 81, 76, 42, 59, 61, 62, 60, 45, 92, 57, 72, 43, 103, 52, 48, 72, 61, 55, 79, 71, 62, 67, 82, 60, 81, 47, 59, 60, 57, 82, 55, 70, 60, 87, 59, 57, 76, 58, 71, 57, 92, 66, 60, 54, 50, 66, 71, 44, 54, 68, 52, 59, 81, 68, 61, 70, 59, 48, 46, 81, 55, 53, 90, 72, 48, 78, 73, 90, 53, 84, 60, 58, 57, 55, 64, 63, 64, 67, 76, 67, 64, 59, 66, 53, 72, 69, 64, 66, 84, 62, 67, 64, 54, 64, 68, 62, 58, 59, 60, 56, 90, 76, 65, 66, 56, 78, 72, 83, 58, 64, 68, 60, 60, 58, 68, 85, 61, 93, 143, 61, 68, 60, 49, 70, 91, 79, 49, 65, 66, 57, 67, 50, 41, 63, 52, 49, 43, 62, 70, 52, 37, 57, 57, 65, 54, 58, 64, 73, 61, 85, 92, 55, 77, 72, 66, 56, 88, 52, 58, 86, 44, 52, 41, 67, 68, 66, 50, 66, 73, 71, 59, 79, 56, 77, 65, 68, 59, 63, 113, 76, 84, 68, 72, 68, 57, 58, 56, 60, 68, 69, 71, 68, 66, 60, 56, 74, 49, 59, 58, 78, 53, 66, 72, 65, 57, 55, 61, 61, 63, 67, 54, 47, 48, 64, 54, 56, 64, 87, 70, 56, 84, 61, 72, 68, 60, 60, 54, 63, 60, 53, 56, 64, 68, 66, 51, 56, 56, 77, 46, 56, 42, 111, 87, 79, 71, 64, 52, 65, 93, 53, 66, 65, 60, 58, 90, 80, 66, 62, 33, 58, 89, 72, 63, 78, 87, 75, 54, 79, 90, 65, 99, 57, 61, 62, 52, 72, 58, 81, 67, 79, 90, 68, 82, 59, 74, 72, 56, 64, 90, 79, 63, 63, 62, 46, 61, 65, 69, 78, 69, 69, 59, 49, 74, 58, 61, 55, 70, 53, 57, 42, 61, 57, 72, 62, 63, 54, 40, 53, 75, 42, 55, 64, 48, 69, 56, 68, 68, 52, 74, 54, 51, 68, 98, 55, 66, 68, 70, 62, 72, 56, 74, 62, 85, 47, 58, 47, 41, 66, 63, 81, 74, 83, 64, 58, 67, 62, 68, 58, 46, 51, 66, 70, 72, 102, 64, 65, 71, 57, 74, 111, 60, 61, 57, 53, 70, 51, 74, 87, 37, 46, 49, 77, 60, 62, 58, 70, 80, 62, 88, 71, 84, 53, 53, 56, 60, 77, 56, 58, 60, 74, 48, 76, 57, 74, 43, 53, 65, 70, 78, 46, 97, 77, 87, 78, 47, 73, 57, 64, 74, 74, 68, 64, 50, 86, 72, 92, 53, 80, 65, 74, 51, 66, 73, 67, 69, 53, 67, 71, 48, 50, 49, 66, 50, 50, 58, 55, 64, 57, 56, 32, 65, 50, 58, 77, 75, 54, 43, 50, 59, 73, 60, 73, 64, 50, 64, 73, 95, 82, 73, 49, 65, 70, 68, 103, 40, 64, 63, 78, 69, 57, 63, 76, 75, 75, 57, 74, 76, 56, 74, 57, 77, 66, 61, 67, 67, 64, 65, 35, 75, 56, 55, 67, 70, 66, 52, 74, 81, 63, 75, 85, 53, 53, 97, 59, 68, 88, 47, 95, 64, 54, 60, 98, 109, 58, 78, 76, 53, 66, 62, 56, 95, 53, 75, 68, 84, 51, 34, 74, 61, 70, 60, 86, 54, 67, 65, 90, 77, 48, 57, 47, 71, 44, 63, 86, 79, 54, 75, 56, 55, 51, 53, 78, 67, 50, 67, 46, 71, 61, 68, 79, 70, 75, 77, 63, 54, 101, 61, 53, 64, 65, 62, 80, 60, 48, 65, 66, 70, 66, 55, 64, 58, 39, 58, 73, 62, 62, 62, 82, 62, 61, 67, 74, 54, 56, 60, 86, 63, 86, 71, 67, 82, 51, 73, 147, 103, 74, 64, 63, 64, 49, 73, 58, 48, 61, 81, 60, 101, 54, 74, 61, 82, 55, 54, 61, 45, 72, 83, 71, 58, 52, 55, 87, 66, 79, 80, 62, 62, 50, 73, 70, 60, 44, 50, 70, 67, 67, 79, 80, 58, 73, 62, 71, 66, 84, 89, 86, 94, 75, 49, 76, 46, 49, 75, 57, 46, 79, 78, 89, 65, 69, 59, 72, 107, 61, 63, 74, 55, 59, 67, 71, 94, 68, 61, 54, 57, 55, 52, 81, 57, 66, 92, 70, 59, 55, 63, 50, 45, 70, 70, 81, 81, 65, 75, 72, 82, 77, 86, 45, 65, 60, 62, 71, 61, 83, 78, 78, 63, 76, 46, 110, 55, 64, 52, 80, 65, 58, 81, 58, 62, 82, 129, 64, 71, 95, 62, 81, 60, 86, 77, 51, 65, 58, 48, 81, 60, 57, 53, 67, 78, 46, 73, 105, 52, 90, 83, 67, 66, 82, 61, 52, 61, 69, 49, 68, 57, 47, 61, 70, 59, 73, 81, 62, 94, 81, 65, 116, 69, 86, 52, 48, 68, 66, 68, 51, 65, 74, 89, 47, 71, 65, 64, 62, 93, 61, 68, 54, 40, 45, 69, 48, 67, 65, 79, 54, 63, 66, 65, 73, 55, 57, 76, 58, 67, 53, 54, 63, 59, 106, 61, 52, 65, 59, 71, 57, 76, 72, 67, 80, 59, 57, 58, 49, 77, 61, 73, 64, 69, 43, 54, 76, 79, 55, 55, 80, 78, 65, 64, 62, 76, 45, 74, 60, 60, 60, 64, 83, 66, 68, 76, 69, 56, 59, 100, 59, 65, 71, 72, 83, 71, 58, 61, 70, 51, 56, 60, 82, 86, 63, 50, 72, 53, 57, 72, 65, 68, 67, 54, 59, 60, 56, 58, 72, 88, 62, 62, 55, 53, 72, 72, 112, 54, 65, 69, 56, 57, 68, 89, 48, 70, 59, 58, 53, 85, 64, 50, 55, 65, 66, 54, 73, 58, 73, 96, 70, 59, 52, 69, 73, 63, 77, 69, 43, 131, 67, 92, 59, 56, 84, 58, 65, 91, 48, 59, 42, 53, 54, 52, 58, 59, 44, 60, 68, 64, 67, 94, 59, 65, 50, 61, 77, 61, 65, 65, 62, 62, 84, 67, 62, 66, 55, 60, 63, 44, 64, 72, 50, 70, 69, 52, 53, 67, 53, 71, 58, 55, 72, 58, 62, 84, 52, 59, 64, 54, 63, 53, 55, 56, 35, 53, 58, 62, 76, 70, 81, 61, 64, 88, 85, 56, 60, 58, 64, 55, 58, 64, 80, 56, 57, 54, 67, 67, 79, 68, 69, 58, 65, 68, 59, 64, 53, 64, 47, 73, 68, 91, 76, 78, 57, 74, 51, 57, 72, 50, 90, 76, 79, 64, 55, 68, 52, 81, 64, 73, 64, 61, 64, 69, 109, 143, 79, 80, 79, 54, 61, 44, 62, 87, 65, 70, 72, 69, 74, 78, 50, 61, 63, 66, 57, 72, 57, 62, 63, 69, 49, 68, 66, 81, 59, 69, 71, 71, 81, 68, 52, 87, 71, 58, 60, 60, 75, 64, 62, 59, 64, 78, 53, 62, 72, 48, 61, 55, 48, 50, 77, 61, 61, 59, 43, 61, 72, 77, 53, 77, 68, 58, 54, 52, 56, 56, 59, 55, 58, 61, 75, 63, 61, 89, 80, 71, 69, 72, 55, 59, 74, 78, 64, 69, 81, 65, 68, 61, 54, 79, 54, 55, 89, 66, 67, 59, 64, 56, 65, 72, 67, 55, 59, 70, 65, 61, 59, 64, 61, 65, 64, 71, 56, 65, 54, 71, 63, 62, 56, 64, 62, 69, 73, 64, 68, 69, 83, 61, 74, 64, 56, 57, 70, 55, 67, 52, 57, 60, 63, 45, 71, 99, 52, 62, 59, 66, 98, 61, 66, 48, 71, 71, 65, 73, 62, 55, 51, 85, 74, 61, 50, 44, 56, 64, 65, 61, 50, 71, 68, 64, 92, 61, 60, 65, 45, 63, 62, 64, 54, 68, 74, 66, 81, 58, 72, 69, 69, 93, 45, 74, 61, 73, 49, 76, 54, 52, 74, 55, 72, 61, 66, 62, 61, 59, 54, 66, 50, 70, 63, 47, 44, 76, 50, 59, 61, 58, 78, 59, 54, 74, 65, 62, 67, 58, 68, 87, 78, 68, 69, 58, 81, 69, 62, 61, 62, 65, 61, 62, 61, 68, 71, 66, 58, 110, 62, 58, 63, 51, 48, 59, 47, 52, 69, 62, 57, 91, 61, 89, 63, 41, 56, 64, 64, 68, 74, 63, 64, 53, 103, 75, 63, 57, 77, 62, 60, 58, 87, 63, 93, 62, 119, 57, 70, 63, 71, 71, 105, 68, 77, 86, 63, 68, 78, 52, 68, 64, 58, 67, 67, 73, 76, 78, 85, 49, 86, 69, 65, 52, 64, 65, 61, 46, 60, 74, 66, 40, 61, 62, 58, 56, 54, 55, 62, 70, 76, 61, 76, 79, 54, 74, 61, 67, 68, 76, 55, 55, 66, 50, 58, 60, 53, 69, 59, 62, 57, 64, 63, 84, 63, 55, 57, 70, 63, 68, 58, 68, 66, 69, 77, 65, 65, 66, 62, 65, 75, 52, 66, 57, 66, 63, 63, 58, 61, 73, 64, 74, 54, 48, 54, 66, 73, 58, 56, 61, 51, 84, 63, 68, 104, 64, 55, 60, 60, 70, 59, 90, 68, 57, 63, 49, 74, 68, 49, 46, 65, 60, 69, 80, 56, 53, 72, 70, 61, 71, 56, 56, 47, 63, 54, 55, 58, 63, 53, 71, 55, 50, 60, 62, 65, 59, 51, 106, 51, 74, 83, 62, 75, 72, 64, 97, 57, 78, 52, 73, 62, 64, 65, 72, 53, 67, 95, 58, 58, 65, 64, 57, 50, 78, 52, 62, 82, 70, 70, 53, 57, 60, 63, 75, 66, 71, 49, 68, 72, 57, 61, 80, 72, 65, 56, 73, 53, 66, 67, 61, 69, 71, 94, 55, 70, 64, 68, 55, 62, 56, 61, 70, 54, 69, 59, 74, 64, 60, 69, 68, 70, 67, 102, 56, 63, 76, 60, 60, 61, 53, 58, 66, 62, 89, 85, 83, 70, 72, 104, 64, 72, 69, 54, 51, 75, 72, 59, 67, 55, 66, 63, 65, 81, 62, 71, 62, 61, 60, 81, 59, 61, 148, 69, 57, 72, 70, 54, 88, 91, 61, 69, 56, 73, 85, 60, 56, 49, 60, 76, 43, 64, 53, 57, 82, 59, 60, 61, 53, 71, 72, 59, 58, 71, 64, 51, 60, 56, 61, 97, 56, 61, 53, 69, 62, 72, 73, 70, 56, 55, 75, 52, 77, 58, 76, 46, 56, 74, 68, 96, 73, 81, 62, 74, 55, 69, 82, 65, 61, 75, 46, 57, 71, 76, 67, 67, 67, 75, 69, 75, 60, 67, 62, 65, 66, 62, 98, 48, 87, 74, 80, 66, 56, 51, 58, 75, 62, 58, 58, 81, 63, 67, 78, 66, 54, 65, 56, 70, 66, 99, 59, 60, 73, 65, 95, 51, 48, 66, 85, 76, 68, 66, 62, 60, 71, 54, 57, 65, 81, 59, 58, 59, 66, 70, 66, 56, 97, 66, 75, 127, 43, 62, 71, 71, 49, 101, 49, 66, 71, 59, 60, 72, 62, 52, 90, 69, 54, 58, 62, 68, 50, 71, 85, 51, 84, 61, 68, 44, 69, 59, 49, 53, 64, 47, 73, 111, 61, 64, 61, 49, 63, 67, 63, 70, 59, 63, 73, 62, 64, 67, 56, 49, 70, 97, 109, 74, 55, 61, 127, 87, 64, 56, 64, 64, 61, 70, 72, 54, 83, 73, 55, 64, 54, 60, 75, 64, 64, 50, 57, 76, 66, 58, 50, 66, 47, 64, 68, 49, 52, 52, 86, 50, 65, 58, 72, 67, 83, 58, 81, 77, 59, 71, 62, 57, 59, 85, 64, 51, 77, 54, 59, 51, 63, 69, 74, 78, 61, 81, 59, 87, 71, 94, 72, 84, 72, 59, 65, 60, 69, 62, 85, 66, 56, 55, 75, 60, 76, 71, 58, 87, 87, 52, 60, 121, 52, 84, 119, 54, 62, 41, 53, 52, 74, 55, 74, 44, 64, 63, 58, 84, 60, 48, 73, 63, 71, 70, 64, 57, 69, 62, 62, 58, 82, 47, 49, 90, 53, 70, 79, 62, 70, 94, 49, 62, 71, 62, 45, 63, 52, 55, 53, 75, 83, 75, 43, 69, 59, 83, 72, 56, 57, 64, 45, 60, 51, 90, 57, 56, 43, 59, 108, 56, 56, 69, 67, 45, 78, 60, 74, 63, 63, 63, 61, 82, 62, 50, 68, 49, 45, 43, 55, 75, 60, 53, 71, 60, 53, 69, 54, 52, 41, 71, 57, 53, 65, 100, 82, 105, 48, 62, 53, 94, 85, 64, 53, 73, 98, 63, 64, 53, 66, 56, 91, 65, 66, 57, 56, 65, 55, 80, 65, 58, 63, 47, 58, 39, 77, 78, 60, 53, 73, 88, 65, 50, 52, 72, 75, 64, 63, 70, 68, 62, 65, 56, 60, 75, 74, 70, 69, 71, 47, 60, 53, 69, 61, 77, 87, 101, 63, 55, 102, 74, 69, 53, 54, 57, 53, 48, 45, 59, 90, 71, 51, 75, 60, 59, 71, 81, 47, 65, 81, 69, 66, 59, 53, 30, 61, 55, 74, 54, 41, 44, 37, 40, 77, 70, 78, 63, 50, 66, 91, 53, 80, 63, 66, 68, 52, 73, 60, 60, 52, 57, 70, 60, 86, 74, 52, 73, 68, 70, 74, 63, 37, 66, 60, 64, 68, 67, 82, 66, 75, 53, 57, 48, 49, 86, 50, 50, 49, 63, 73, 69, 70, 47, 39, 65, 52, 88, 82, 68, 58, 62, 74, 64, 97, 65, 64, 54, 93, 56, 71, 82, 71, 70, 75, 80, 71, 62, 70, 57, 41, 60, 43, 79, 54, 70, 71, 74, 45, 66, 60, 118, 89, 49, 79, 75, 88, 67, 65, 73, 55, 60, 49, 94, 65, 126, 62, 62, 55, 137, 59, 55, 83, 78, 71, 55, 56, 64, 68, 80, 86, 65, 55, 66, 66, 55, 161, 49, 49, 45, 70, 107, 77, 64, 76, 54, 62, 70, 69, 48, 87, 48, 57, 44, 122, 48, 62, 108, 50, 88, 53, 51, 59, 61, 60, 109, 55, 89, 61, 56, 92, 75, 58, 53, 51, 47, 72, 60, 88, 49, 76, 69, 52, 45, 49, 67, 64, 50, 50, 93, 54, 57, 65, 71, 74, 73, 63, 54, 70, 47, 37, 51, 89, 68, 52, 53, 58, 62, 58, 78, 78, 68, 51, 88, 78, 75, 87, 84, 71, 54, 79, 84, 62, 64, 74, 73, 60, 91, 64, 70, 70, 59, 38, 79, 75, 65, 61, 57, 51, 70, 79, 62, 55, 56, 62, 57, 51, 57, 52, 56, 75, 61, 74, 65, 63, 66, 80, 47, 77, 71, 45, 68, 61, 55, 62, 73, 62, 77, 55, 67, 50, 62, 71, 55, 66, 72, 68, 76, 52, 58, 63, 74, 56, 65, 72, 62, 46, 78, 61, 60, 52, 58, 56, 79, 64, 49, 66, 57, 75, 47, 70, 77, 47, 73, 61, 73, 61, 75, 80, 77, 55, 62, 74, 56, 62, 58, 69, 51, 42, 64, 55, 54, 49, 70, 56, 69, 79, 57, 77, 71, 44, 76, 69, 68, 66, 69, 74, 60, 83, 89, 56, 75, 70, 93, 65, 77, 73, 57, 63, 68, 110, 58, 74, 71, 67, 67, 51, 63, 65, 43, 78, 57, 68, 82, 47, 62, 46, 61, 80, 50, 53, 80, 70, 101, 66, 130, 59, 56, 54, 50, 70, 90, 81, 59, 61, 74, 31, 87, 58, 76, 59, 53, 74, 59, 60, 112, 73, 42, 57, 62, 68, 63, 56, 76, 84, 59, 77, 65, 67, 65, 70, 55, 76, 62, 43, 45, 91, 74, 69, 72, 67, 30, 67, 90, 57, 74, 56, 59, 72, 69, 55, 49, 70, 69, 65, 77, 67, 49, 83, 79, 114, 77, 39, 38, 79, 69, 47, 62, 57, 66, 90, 64, 87, 63, 59, 66, 53, 52, 50, 74, 53, 65, 54, 77, 59, 72, 48, 62, 66, 53, 75, 70, 55, 74, 86, 63, 51, 79, 66, 76, 44, 69, 67, 59, 89, 59, 48, 59, 50, 74, 55, 57, 76, 47, 64, 66, 63, 53, 75, 68, 71, 69, 71, 65, 66, 89, 70, 58, 61, 74, 50, 56, 98, 66, 63, 85, 75, 67, 70, 65, 72, 73, 66, 70, 50, 49, 62, 61, 73, 72, 74, 106, 69, 64, 52, 87, 71, 56, 62, 71, 80, 52, 67, 43, 42, 58, 69, 66, 60, 77, 77, 70, 77, 37, 44, 77, 63, 79, 68, 67, 55, 46, 77, 50, 45, 54, 68, 71, 70, 68, 81, 73, 53, 57, 59, 86, 62, 62, 62, 42, 63, 55, 58, 69, 84, 76, 62, 70, 65, 75, 57, 59, 59, 62, 57, 81, 69, 73, 58, 66, 58, 53, 53, 74, 95, 88, 85, 76, 64, 66, 58, 58, 68, 58, 68, 55, 52, 49, 68, 85, 80, 80, 52, 68, 77, 48, 47, 44, 77, 65, 67, 51, 44, 108, 61, 57, 80, 52, 68, 78, 54, 67, 63, 62, 44, 73, 51, 62, 72, 67, 47, 56, 77, 57, 62, 58, 141, 86, 118, 55, 63, 86, 70, 60, 52, 63, 63, 72, 55, 73, 85, 47, 64, 94, 67, 49, 59, 57, 60, 56, 76, 66, 54, 69, 64, 63, 28, 66, 54, 65, 62, 51, 60, 52, 53, 70, 78, 78, 62, 84, 67, 76, 66, 67, 84, 62, 65, 86, 58, 73, 46, 57, 73, 78, 74, 78, 52, 67, 97, 76, 70, 64, 83, 59, 91, 77, 69, 56, 65, 55, 51, 77, 75, 82, 63, 62, 54, 49, 57, 79, 80, 58, 65, 93, 132, 65, 61, 68, 71, 162, 59, 68, 91, 57, 41, 71, 66, 79, 85, 59, 91, 79, 74, 53, 78, 77, 79, 55, 58, 71, 57, 75, 70, 62, 70, 74, 49, 46, 49, 63, 54, 98, 45, 62, 47, 44, 80, 63, 67, 49, 45, 80, 72, 74, 58, 54, 55, 66, 72, 55, 73, 55, 68, 48, 55, 60, 90, 51, 53, 59, 90, 71, 76, 59, 54, 70, 72, 74, 57, 57, 70, 58, 73, 67, 46, 64, 88, 59, 53, 79, 79, 48, 70, 70, 50, 58, 70, 50, 60, 42, 76, 63, 58, 56, 70, 80, 63, 50, 103, 59, 53, 50, 52, 65, 62, 63, 49, 82, 74, 69, 100, 60, 66, 68, 61, 89, 51, 63, 60, 59, 69, 69, 63, 74, 61, 81, 81, 59, 55, 65, 55, 66, 48, 86, 118, 79, 65, 44, 71, 46, 69, 75, 45, 61, 62, 53, 58, 67, 53, 72, 59, 58, 51, 66, 74, 77, 89, 62, 62, 95, 59, 63, 82, 72, 53, 69, 70, 73, 53, 64, 56, 64, 69, 93, 66, 55, 88, 97, 74, 54, 56, 63, 65, 120, 76, 71, 66, 96, 59, 53, 73, 67, 54, 49, 93, 61, 53, 98, 75, 54, 66, 56, 69, 76, 79, 77, 91, 65, 56, 57, 68, 129, 73, 56, 65, 58, 67, 72, 80, 80, 50, 55, 55, 54, 58, 50, 65, 65, 61, 68, 57, 53, 39, 66, 53, 75, 48, 59, 66, 117, 63, 51, 75, 74, 73, 58, 70, 70, 52, 42, 87, 68, 57, 80, 59, 59, 71, 58, 60, 74, 66, 62, 57, 66, 54, 78, 58, 60, 57, 54, 64, 81, 65, 56, 71, 63, 68, 113, 78, 68, 70, 61, 51, 69, 52, 48, 58, 68, 39, 73, 56, 88, 54, 101, 46, 63, 75, 55, 60, 69, 73, 58, 58, 63, 72, 54, 61, 54, 55, 68, 63, 58, 69, 54, 58, 58, 57, 62, 59, 70, 65, 83, 44, 68, 61, 43, 53, 61, 82, 77, 63, 57, 78, 55, 63, 105, 103, 68, 59, 60, 45, 90, 83, 75, 78, 54, 51, 96, 70, 82, 63, 83, 62, 45, 60, 66, 48, 75, 71, 76, 58, 61, 90, 67, 60, 53, 67, 63, 47, 59, 71, 76, 60, 106, 66, 51, 120, 79, 55, 52, 42, 43, 92, 94, 59, 77, 60, 49, 85, 49, 88, 69, 89, 117, 59, 67, 56, 111, 66, 54, 68, 59, 68, 67, 75, 64, 41, 49, 49, 76, 65, 67, 82, 59, 60, 74, 71, 54, 68, 65, 69, 163, 66, 60, 50, 64, 53, 53, 91, 43, 64, 65, 48, 73, 59, 102, 69, 48, 77, 99, 64, 53, 68, 62, 73, 53, 51, 54, 52, 46, 54, 76, 77, 77, 57, 88, 47, 75, 45, 81, 59, 59, 73, 36, 66, 55, 65, 81, 90, 73, 57, 54, 60, 90, 70, 89, 54, 61, 66, 49, 47, 69, 71, 63, 49, 56, 52, 69, 46, 42, 66, 63, 75, 58, 49, 87, 90, 89, 52, 38, 74, 49, 63, 63, 88, 60, 101, 68, 52, 64, 82, 68, 70, 59, 80, 111, 50, 58, 56, 76, 95, 54, 75, 59, 56, 91, 59, 78, 85, 38, 69, 69, 70, 54, 57, 75, 61, 44, 79, 101, 46, 91, 51, 52, 58, 60, 126, 47, 45, 65, 47, 57, 67, 46, 50, 57, 63, 47, 55, 109, 51, 65, 57, 83, 55, 76, 70, 119, 73, 64, 59, 65, 56, 69, 85, 77, 92, 88, 70, 57, 48, 90, 65, 71, 87, 52, 82, 68, 83, 44, 56, 64, 52, 60, 41, 76, 91, 66, 47, 41, 73, 59, 73, 49, 59, 61, 66, 52, 49, 64, 53, 61, 50, 59, 75, 70, 45, 89, 54, 52, 68, 56, 66, 83, 47, 77, 44, 61, 85, 60, 56, 40, 66, 61, 68, 50, 51, 38, 69, 51, 79, 66, 50, 78, 100, 68, 58, 52, 62, 90, 67, 60, 94, 53, 77, 67, 59, 76, 79, 55, 67, 34, 67, 69, 56, 63, 78, 90, 81, 47, 61, 56, 67, 82, 69, 78, 50, 64, 49, 51, 64, 69, 76, 55, 54, 53, 75, 83, 65, 47, 95, 78, 80, 52, 56, 81, 86, 53, 60, 54, 59, 71, 65, 57, 60, 61, 76, 66, 68, 76, 64, 59, 55, 82, 56, 70, 62, 89, 61, 55, 73, 48, 67, 61, 62, 100, 65, 50, 62, 66, 60, 58, 73, 49, 88, 72, 65, 58, 53, 57, 55, 59, 50, 69, 53, 58, 64, 71, 69, 58, 43, 88, 56, 90, 66, 82, 69, 49, 87, 55, 69, 69, 56, 57, 53, 60, 65, 69, 69, 62, 62, 59, 63, 58, 58, 58, 65, 92, 82, 58, 52, 50, 66, 59, 72, 64, 71, 58, 32, 56, 56, 52, 60, 49, 72, 66, 69, 70, 68, 67, 50, 50, 81, 64, 52, 42, 64, 72, 99, 75, 69, 77, 62, 62, 88, 43, 64, 137, 93, 69, 120, 67, 73, 66, 39, 125, 69, 79, 65, 94, 92, 48, 56, 53, 77, 47, 55, 56, 94, 75, 75, 92, 59, 61, 39, 36, 68, 70, 66, 97, 120, 64, 63, 61, 59, 56, 51, 88, 60, 54, 59, 127, 55, 72, 72, 55, 55, 68, 68, 45, 78, 97, 59, 44, 71, 57, 61, 53, 52, 63, 60, 68, 56, 58, 60, 53, 63, 61, 74, 60, 68, 82, 55, 54, 79, 50, 62, 63, 61, 100, 47, 59, 64, 66, 70, 58, 40, 68, 77, 62, 45, 68, 66, 71, 79, 66, 78, 62, 69, 51, 63, 81, 54, 95, 58, 101, 59, 52, 69, 55, 65, 65, 65, 56, 52, 86, 74, 63, 68, 71, 64, 60, 64, 98, 54, 54, 106, 88, 68, 63, 65, 47, 90, 50, 99, 65, 60, 69, 65, 49, 51, 70, 71, 64, 45, 57, 40, 87, 66, 69, 67, 74, 56, 47, 66, 68, 74, 61, 53, 48, 49, 42, 125, 64, 68, 77, 67, 86, 63, 78, 75, 56, 57, 60, 70, 63, 42, 37, 75, 58, 81, 58, 72, 55, 57, 47, 53, 82, 52, 47, 64, 72, 66, 64, 64, 101, 84, 50, 43, 73, 58, 57, 81, 46, 78, 68, 69, 60, 85, 75, 73, 57, 61, 46, 60, 47, 47, 81, 53, 61, 64, 66, 60, 62, 89, 62, 59, 77, 59, 49, 42, 71, 73, 54, 54, 60, 73, 62, 60, 70, 68, 59, 55, 71, 56, 84, 75, 51, 61, 42, 49, 76, 73, 89, 56, 85, 74, 48, 65, 92, 58, 83, 57, 74, 65, 61, 71, 98, 69, 54, 77, 78, 54, 108, 61, 65, 66, 78, 93, 83, 67, 66, 60, 61, 53, 58, 70, 81, 69, 56, 77, 60, 52, 53, 73, 61, 61, 78, 51, 55, 60, 50, 81, 49, 77, 60, 47, 70, 62, 47, 54, 57, 68, 86, 69, 74, 53, 54, 69, 80, 64, 72, 65, 81, 67, 79, 65, 102, 67, 65, 57, 48, 74, 55, 91, 89, 60, 73, 71, 70, 72, 54, 105, 84, 62, 80, 35, 75, 62, 48, 53, 60, 69, 75, 38, 101, 76, 58, 74, 63, 42, 69, 66, 61, 86, 86, 63, 46, 51, 68, 55, 60, 68, 52, 64, 54, 120, 61, 57, 53, 51, 83, 73, 87, 59, 91, 86, 83, 78, 68, 43, 52, 47, 63, 69, 60, 76, 52, 53, 79, 72, 63, 66, 36, 54, 83, 65, 64, 54, 66, 72, 77, 75, 91, 69, 66, 64, 82, 59, 60, 71, 62, 69, 61, 45, 129, 56, 47, 71, 105, 79, 76, 63, 55, 73, 38, 59, 71, 60, 71, 55, 46, 78, 67, 49, 63, 55, 52, 62, 122, 64, 52, 51, 56, 68, 61, 63, 54, 57, 60, 48, 58, 53, 92, 25, 84, 53, 52, 89, 83, 69, 57, 80, 63, 82, 68, 50, 43, 70, 80, 63, 65, 69, 70, 71, 77, 60, 64, 80, 70, 100, 52, 87, 61, 74, 69, 72, 79, 94, 68, 60, 62, 69, 46, 78, 50, 81, 54, 99, 66, 59, 74, 83, 77, 77, 71, 50, 82, 63, 68, 61, 74, 64, 50, 58, 64, 94, 71, 49, 69, 75, 79, 77, 84, 68, 74, 64, 51, 69, 66, 72, 64, 90, 39, 65, 47, 57, 91, 64, 82, 50, 61, 59, 80, 44, 95, 66, 76, 76, 60, 77, 98, 92, 51, 64, 52, 61, 56, 86, 74, 87, 51, 57, 58, 100, 51, 78, 66, 82, 74, 61, 49, 56, 114, 61, 91, 53, 72, 65, 62, 77, 59, 48, 76, 51, 75, 71, 56, 72, 45, 41, 58, 72, 103, 61, 42, 56, 55, 58, 55, 134, 82, 64, 64, 59, 55, 55, 79, 49, 50, 84, 49, 50, 75, 60, 61, 74, 66, 91, 89, 57, 71, 61, 66, 60, 67, 101, 66, 72, 131, 61, 62, 50, 68, 71, 73, 62, 61, 80, 75, 84, 76, 73, 68, 59, 52, 46, 50, 46, 70, 66, 55, 66, 49, 77, 44, 61, 91, 50, 60, 65, 62, 59, 64, 57, 62, 63, 81, 57, 58, 39, 38, 81, 61, 76, 36, 61, 69, 61, 64, 65, 53, 58, 86, 50, 66, 60, 59, 87, 81, 84, 37, 69, 73, 66, 56, 90, 53, 76, 48, 61, 89, 67, 58, 63, 50, 99, 48, 61, 65, 60, 92, 61, 48, 58, 45, 140, 70, 81, 53, 61, 38, 60, 58, 77, 72, 65, 83, 83, 69, 56, 103, 52, 71, 57, 72, 54, 71, 75, 99, 40, 35, 61, 68, 57, 73, 48, 58, 72, 57, 79, 47, 52, 58, 50, 66, 64, 70, 63, 69, 128, 52, 56, 43, 61, 61, 44, 93, 78, 53, 70, 50, 103, 59, 131, 70, 81, 56, 59, 68, 46, 54, 49, 97, 56, 49, 82, 60, 46, 83, 64, 56, 59, 36, 78, 69, 47, 38, 59, 59, 58, 68, 68, 62, 54, 69, 82, 64, 64, 80, 65, 65, 49, 62, 42, 56, 61, 59, 66, 60, 62, 57, 44, 95, 57, 74, 60, 57, 102, 59, 48, 55, 32, 56, 67, 66, 104, 43, 57, 59, 71, 47, 64, 62, 78, 122, 75, 56, 38, 74, 57, 74, 69, 77, 73, 66, 91, 69, 102, 67, 58, 74, 60, 65, 58, 53, 30, 58, 90, 52, 83, 66, 35, 94, 68, 64, 38, 54, 90, 67, 60, 74, 57, 78, 90, 67, 62, 61, 62, 64, 77, 63, 69, 80, 65, 40, 64, 80, 72, 67, 67, 71, 72, 84, 66, 64, 53, 141, 57, 72, 66, 69, 63, 71, 71, 68, 57, 66, 66, 63, 87, 49, 58, 71, 71, 70, 50, 58, 91, 76, 76, 73, 59, 48, 50, 75, 79, 59, 51, 68, 60, 62, 49, 38, 53, 63, 51, 70, 78, 26, 67, 49, 62, 64, 65, 63, 53, 78, 32, 49, 51, 45, 83, 67, 63, 36, 67, 55, 65, 87, 74, 58, 55, 70, 58, 63, 59, 56, 67, 92, 67, 71, 65, 58, 70, 58, 64, 65, 71, 75, 40, 65, 61, 67, 67, 56, 71, 68, 81, 65, 62, 50, 72, 86, 79, 67, 67, 64, 69, 64, 57, 53, 74, 72, 54, 61, 55, 69, 57, 48, 80, 51, 63, 50, 64, 45, 71, 68, 71, 42, 86, 46, 71, 56, 71, 43, 86, 52, 56, 64, 66, 54, 133, 58, 63, 65, 108, 56, 61, 59, 54, 76, 83, 49, 62, 60, 91, 63, 63, 89, 53, 49, 53, 61, 62, 68, 89, 52, 53, 68, 63, 83, 74, 69, 67, 54, 59, 78, 52, 62, 66, 54, 70, 75, 81, 84, 53, 50, 57, 66, 94, 40, 87, 71, 63, 102, 56, 41, 70, 66, 85, 67, 63, 68, 65, 69, 47, 77, 70, 58, 74, 82, 56, 77, 49, 67, 104, 59, 61, 37, 68, 71, 54, 93, 86, 65, 24, 57, 42, 53, 112, 61, 121, 64, 49, 60, 77, 116, 79, 59, 67, 49, 67, 87, 52, 78, 60, 74, 41, 70, 72, 62, 65, 58, 65, 43, 50, 44, 94, 78, 80, 71, 76, 59, 64, 57, 49, 88, 67, 53, 65, 35, 87, 75, 76, 174, 73, 83, 91, 54, 55, 147, 79, 81, 80, 72, 69, 52, 62, 69, 76, 70, 59, 90, 48, 63, 82, 56, 72, 89, 61, 89, 67, 76, 64, 59, 78, 70, 69, 63, 80, 45, 57, 64, 70, 53, 68, 52, 93, 78, 69, 97, 50, 68, 97, 51, 98, 51, 64, 95, 40, 71, 71, 60, 60, 60, 41, 53, 48, 65, 100, 70, 71, 61, 75, 75, 59, 75, 74, 63, 60, 66, 75, 87, 76, 71, 77, 67, 69, 35, 65, 60, 65, 55, 62, 45, 67, 76, 69, 88, 81, 80, 71, 74, 65, 68, 33, 89, 49, 51, 52, 72, 70, 55, 67, 68, 63, 65, 52, 57, 58, 70, 62, 87, 72, 67, 83, 54, 63, 57, 51, 51, 85, 62, 70, 63, 72, 49, 76, 69, 66, 88, 60, 45, 80, 55, 84, 77, 59, 41, 75, 76, 63, 60, 63, 67, 104, 84, 52, 58, 57, 79, 69, 68, 67, 51, 73, 61, 65, 105, 59, 67, 45, 82, 68, 54, 66, 62, 53, 56, 60, 45, 63, 65, 62, 46, 49, 72, 60, 60, 71, 71, 74, 41, 59, 44, 90, 96, 65, 80, 114, 59, 71, 50, 49, 47, 66, 60, 57, 62, 47, 64, 53, 87, 95, 71, 79, 62, 78, 46, 55, 53, 56, 70, 51, 59, 61, 54, 52, 84, 107, 53, 69, 81, 50, 62, 60, 83, 79, 85, 45, 56, 78, 58, 50, 61, 66, 54, 58, 70, 51, 62, 71, 67, 130, 77, 54, 67, 93, 91, 72, 69, 57, 60, 68, 86, 76, 78, 76, 55, 64, 75, 65, 72, 78, 60, 72, 64, 59, 73, 78, 84, 55, 61, 93, 67, 43, 63, 62, 78, 68, 67, 96, 49, 49, 67, 70, 70, 63, 67, 44, 98, 67, 56, 47, 47, 57, 84, 67, 87, 55, 69, 74, 52, 85, 61, 58, 53, 49, 97, 73, 61, 65, 88, 53, 64, 49, 76, 85, 74, 78, 65, 63, 57, 60, 65, 62, 61, 63, 45, 119, 62, 69, 77, 51, 52, 54, 73, 55, 74, 47, 57, 65, 70, 56, 55, 65, 63, 50, 60, 66, 96, 78, 39, 57, 58, 68, 73, 88, 52, 63, 66, 53, 51, 77, 69, 51, 63, 74, 63, 59, 73, 93, 78, 71, 53, 58, 69, 62, 61, 64, 73, 71, 74, 73, 56, 71, 61, 58, 59, 65, 99, 48, 70, 55, 45, 72, 55, 63, 74, 54, 85, 69, 64, 78, 36, 71, 70, 49, 70, 62, 27, 74, 67, 57, 77, 78, 81, 54, 64, 68, 130, 61, 48, 46, 101, 53, 86, 65, 66, 104, 66, 57, 67, 70, 59, 61, 68, 89, 42, 76, 52, 74, 77, 39, 46, 79, 61, 69, 57, 60, 54, 78, 67, 113, 81, 88, 69, 80, 63, 58, 66, 89, 57, 87, 51, 93, 58, 54, 50, 75, 48, 58, 67, 74, 61, 53, 58, 85, 64, 50, 72, 74, 76, 47, 73, 83, 64, 70, 51, 70, 67, 79, 70, 61, 77, 54, 66, 57, 66, 83, 59, 51, 81, 67, 76, 51, 95, 62, 44, 62, 77, 71, 66, 75, 64, 50, 71, 51, 74, 63, 43, 55, 70, 51, 58, 59, 57, 67, 59, 55, 58, 63, 72, 82, 65, 104, 80, 72, 82, 51, 80, 108, 65, 69, 53, 52, 72, 59, 74, 35, 58, 52, 78, 61, 49, 74, 62, 54, 60, 75, 61, 48, 87, 83, 83, 71, 64, 56, 66, 71, 74, 52, 56, 70, 51, 71, 73, 79, 71, 39, 40, 49, 49, 46, 84, 66, 70, 60, 60, 55, 49, 78, 54, 54, 82, 56, 42, 61, 54, 57, 58, 60, 72, 80, 59, 77, 59, 92, 51, 81, 61, 63, 72, 39, 61, 70, 63, 68, 59, 52, 59, 30, 58, 48, 77, 57, 89, 64, 58, 82, 63, 97, 37, 63, 40, 40, 86, 89, 57, 49, 85, 51, 83, 61, 52, 124, 57, 64, 50, 59, 62, 52, 67, 103, 69, 53, 62, 61, 63, 80, 51, 71, 68, 80, 59, 53, 64, 66, 69, 40, 72, 54, 49, 62, 59, 80, 54, 43, 61, 72, 76, 60, 67, 47, 65, 74, 55, 62, 65, 51, 56, 32, 70, 69, 52, 62, 86, 49, 90, 85, 46, 62, 66, 55, 49, 55, 41, 50, 66, 87, 66, 48, 70, 60, 54, 82, 44, 60, 50, 73, 52, 79, 99, 77, 68, 71, 113, 60, 59, 61, 54, 61, 68, 57, 58, 49, 52, 74, 84, 57, 69, 51, 68, 98, 72, 51, 74, 48, 49, 71, 75, 78, 46, 63, 86, 68, 59, 55, 59, 74, 100, 66, 69, 76, 97, 67, 60, 83, 54, 79, 66, 101, 128, 81, 67, 84, 69, 57, 61, 86, 80, 53, 75, 84, 60, 115, 78, 76, 56, 60, 67, 73, 62, 67, 58, 47, 61, 59, 59, 62, 142, 63, 60, 52, 60, 84, 45, 68, 49, 72, 63, 48, 62, 48, 72, 54, 78, 88, 66, 57, 47, 70, 78, 55, 61, 82, 50, 94, 58, 51, 69, 50, 66, 62, 79, 51, 53, 63, 58, 44, 58, 51, 67, 66, 83, 66, 65, 112, 88, 70, 57, 66, 64, 61, 69, 74, 67, 74, 42, 66, 61, 59, 66, 94, 66, 68, 112, 67, 73, 66, 72, 69, 66, 52, 66, 46, 71, 77, 48, 79, 86, 61, 53, 60, 71, 55, 45, 60, 63, 70, 59, 70, 49, 59, 77, 45, 83, 84, 83, 73, 55, 73, 80, 68, 50, 73, 76, 50, 76, 72, 54, 77, 72, 73, 85, 61, 47, 44, 62, 55, 55, 61, 62, 91, 73, 64, 80, 85, 87, 59, 51, 70, 61, 57, 85, 76, 93, 70, 48, 74, 66, 50, 102, 62, 55, 110, 61, 63, 75, 85, 93, 62, 46, 40, 49, 46, 67, 55, 71, 48, 94, 77, 61, 77, 60, 73, 58, 73, 54, 80, 46, 74, 61, 67, 53, 44, 69, 73, 45, 41, 74, 67, 83, 84, 62, 61, 58, 56, 77, 60, 65, 47, 59, 63, 46, 96, 76, 49, 53, 77, 73, 76, 41, 54, 70, 111, 60, 53, 60, 53, 58, 66, 59, 58, 63, 56, 82, 116, 68, 43, 69, 107, 76, 83, 66, 69, 79, 79, 44, 80, 67, 75, 73, 65, 73, 79, 126, 87, 76, 78, 47, 66, 78, 59, 85, 72, 77, 112, 59, 67, 58, 78, 59, 75, 95, 73, 74, 75, 57, 59, 89, 90, 61, 75, 59, 119, 65, 68, 69, 60, 42, 56, 45, 78, 80, 64, 48, 44, 31, 47, 65, 60, 73, 89, 68, 67, 27, 60, 65, 61, 62, 56, 43, 58, 71, 76, 89, 60, 55, 69, 60, 55, 66, 66, 67, 78, 63, 51, 67, 97, 77, 57, 55, 72, 69, 57, 46, 50, 64, 61, 29, 62, 54, 58, 63, 53, 46, 48, 82, 58, 94, 81, 55, 66, 69, 61, 65, 60, 56, 94, 86, 55, 84, 43, 39, 66, 66, 71, 55, 62, 50, 75, 50, 73, 88, 54, 49, 65, 73, 67, 56, 54, 64, 63, 64, 60, 65, 104, 51, 47, 50, 66, 51, 62, 54, 66, 70, 63, 87, 81, 85, 72, 75, 55, 77, 53, 82, 67, 64, 76, 68, 75, 58, 36, 82, 51, 70, 70, 62, 45, 56, 73, 69, 73, 57, 57, 56, 54, 52, 67, 67, 63, 77, 62, 74, 99, 78, 67, 58, 62, 53, 47, 82, 50, 77, 62, 78, 68, 68, 71, 40, 60, 87, 51, 69, 72, 69, 73, 66, 73, 70, 48, 83, 85, 68, 84, 82, 41, 73, 59, 40, 63, 78, 121, 84, 74, 83, 61, 82, 73, 75, 82, 70, 74, 60, 60, 56, 55, 60, 76, 59, 76, 68, 45, 48, 73, 51, 53, 48, 54, 79, 56, 67, 66, 58, 56, 56, 64, 62, 63, 71, 44, 63, 88, 58, 77, 52, 61, 56, 38, 64, 61, 71, 101, 95, 99, 66, 58, 65, 76, 47, 66, 84, 61, 61, 44, 63, 47, 61, 77, 61, 38, 49, 49, 53, 59, 56, 95, 52, 55, 62, 89, 46, 25, 64, 41, 65, 57, 69, 61, 60, 60, 63, 62, 80, 52, 57, 73, 61, 68, 66, 69, 58, 70, 50, 44, 80, 60, 61, 55, 98, 40, 69, 71, 64, 62, 89, 91, 64, 74, 81, 61, 88, 53, 55, 51, 61, 57, 66, 87, 61, 61, 53, 59, 63, 59, 123, 61, 40, 93, 78, 72, 70, 59, 69, 80, 47, 74, 64, 66, 53, 52, 50, 59, 66, 52, 48, 67, 63, 69, 46, 58, 60, 55, 79, 64, 52, 68, 54, 76, 54, 62, 75, 52, 77, 44, 60, 62, 51, 84, 77, 62, 76, 53, 67, 35, 69, 86, 77, 78, 90, 63, 82, 63, 90, 77, 75, 68, 74, 71, 60, 65, 61, 46, 58, 80, 59, 69, 56, 56, 96, 85, 62, 118, 66, 52, 61, 80, 81, 101, 57, 44, 70, 59, 53, 54, 78, 68, 53, 72, 80, 68, 70, 66, 60, 68, 107, 56, 47, 59, 58, 113, 53, 69, 51, 69, 47, 56, 56, 61, 77, 64, 41, 76, 78, 74, 87, 55, 66, 64, 63, 67, 68, 84, 48, 74, 48, 99, 67, 47, 81, 48, 59, 50, 71, 79, 77, 71, 86, 56, 65, 56, 66, 44, 64, 70, 67, 85, 84, 71, 64, 51, 53, 58, 67, 69, 66, 50, 48, 76, 51, 44, 57, 82, 68, 59, 51, 69, 53, 78, 65, 90, 64, 55, 54, 64, 40, 60, 42, 61, 63, 135, 52, 59, 51, 66, 76, 73, 104, 51, 100, 82, 66, 66, 106, 51, 68, 57, 93, 60, 56, 45, 86, 73, 47, 103, 73, 74, 57, 58, 90, 42, 71, 75, 68, 66, 77, 62, 68, 77, 59, 60, 58, 85, 47, 53, 76, 59, 94, 75, 65, 32, 56, 83, 61, 78, 101, 52, 78, 50, 62, 61, 52, 68, 67, 75, 71, 54, 72, 60, 50, 87, 62, 71, 57, 55, 54, 65, 66, 56, 72, 54, 67, 52, 76, 120, 67, 82, 93, 74, 68, 50, 76, 61, 83, 68, 63, 63, 62, 55, 60, 85, 86, 42, 59, 61, 81, 74, 72, 56, 49, 80, 89, 70, 47, 77, 85, 64, 57, 74, 84, 65, 40, 65, 56, 66, 61, 54, 58, 70, 52, 91, 80, 78, 88, 70, 75, 61, 63, 49, 64, 62, 71, 81, 51, 60, 51, 69, 59, 68, 78, 58, 64, 62, 72, 57, 91, 74, 86, 61, 58, 49, 79, 67, 63, 66, 115, 45, 84, 60, 32, 66, 63, 62, 86, 65, 37, 47, 64, 49, 45, 54, 72, 115, 81, 69, 54, 40, 88, 74, 59, 86, 60, 60, 60, 66, 69, 56, 73, 86, 53, 86, 64, 84, 65, 72, 63, 61, 55, 66, 72, 73, 49, 54, 62, 56, 73, 92, 107, 79, 70, 80, 67, 75, 66, 56, 74, 47, 49, 55, 74, 48, 65, 57, 41, 66, 41, 56, 54, 56, 68, 50, 62, 80, 86, 65, 87, 44, 55, 64, 73, 86, 76, 44, 39, 54, 76, 52, 70, 61, 52, 65, 51, 53, 80, 65, 85, 62, 86, 86, 78, 69, 67, 55, 55, 66, 63, 66, 75, 48, 61, 66, 43, 65, 58, 63, 91, 47, 67, 74, 62, 72, 76, 55, 61, 62, 75, 53, 73, 65, 73, 58, 75, 65, 58, 49, 72, 74, 66, 61, 70, 82, 56, 127, 72, 55, 84, 49, 31, 72, 68, 62, 94, 68, 79, 50, 58, 62, 71, 49, 71, 65, 45, 65, 48, 53, 67, 69, 56, 77, 57, 73, 48, 40, 48, 59, 55, 60, 45, 81, 46, 51, 49, 68, 67, 68, 60, 62, 77, 71, 70, 81, 38, 81, 58, 76, 62, 37, 64, 58, 48, 69, 47, 48, 80, 53, 47, 69, 63, 67, 53, 60, 60, 98, 80, 73, 75, 71, 58, 101, 70, 60, 65, 52, 70, 57, 79, 74, 75, 92, 68, 57, 68, 44, 49, 71, 58, 82, 50, 62, 82, 59, 73, 46, 50, 77, 79, 113, 67, 36, 52, 63, 53, 75, 93, 57, 72, 76, 102, 80, 81, 40, 61, 80, 56, 53, 76, 89, 53, 78, 64, 47, 65, 113, 39, 92, 72, 55, 49, 60, 78, 65, 77, 45, 61, 51, 65, 60, 72, 98, 52, 60, 78, 50, 86, 65, 61, 58, 78, 56, 57, 73, 99, 105, 49, 75, 71, 67, 80, 65, 68, 58, 61, 62, 53, 86, 72, 59, 60, 77, 46, 63, 74, 60, 63, 58, 80, 64, 87, 63, 77, 59, 63, 60, 76, 64, 46, 74, 56, 76, 62, 52, 41, 59, 68, 61, 53, 69, 75, 62, 59, 66, 81, 88, 71, 72, 82, 65, 52, 70, 92, 60, 80, 64, 91, 74, 51, 96, 84, 70, 63, 105, 53, 63, 76, 74, 60, 62, 68, 49, 61, 60, 53, 65, 58, 52, 59, 97, 53, 61, 74, 59, 70, 59, 47, 75, 61, 62, 52, 68, 82, 94, 60, 48, 124, 91, 50, 61, 67, 50, 61, 33, 68, 67, 59, 49, 55, 56, 41, 56, 81, 66, 74, 66, 64, 65, 67, 49, 60, 42, 57, 47, 61, 75, 77, 88, 61, 69, 60, 69, 62, 53, 64, 50, 58, 68, 59, 106, 64, 51, 83, 114, 56, 56, 85, 55, 58, 74, 73, 75, 71, 67, 49, 55, 70, 61, 62, 77, 62, 85, 58, 62, 57, 71, 82, 70, 50, 66, 164, 66, 79, 49, 45, 68, 84, 68, 64, 62, 97, 56, 62, 51, 52, 69, 51, 59, 65, 96, 44, 93, 73, 50, 51, 50, 58, 62, 59, 83, 54, 60, 68, 74, 44, 66, 50, 88, 79, 58, 74, 50, 67, 66, 77, 62, 76, 53, 85, 65, 63, 56, 49, 51, 66, 63, 54, 42, 74, 70, 79, 52, 80, 68, 48, 66, 80, 68, 69, 70, 69, 58, 61, 78, 53, 50, 49, 58, 77, 59, 68, 60, 78, 54, 73, 60, 68, 38, 51, 62, 46, 51, 63, 69, 54, 46, 54, 59, 63, 59, 72, 113, 56, 42, 57, 65, 87, 57, 65, 55, 69, 71, 61, 52, 103, 52, 58, 66, 60, 74, 65, 61, 89, 56, 73, 76, 67, 55, 47, 56, 63, 62, 55, 89, 42, 62, 77, 70, 53, 67, 76, 67, 66, 71, 56, 67, 88, 68, 64, 56, 50, 39, 73, 60, 72, 57, 52, 60, 66, 76, 72, 67, 60, 60, 70, 52, 81, 54, 64, 69, 67, 66, 89, 62, 56, 54, 69, 80, 95, 60, 122, 68, 61, 58, 72, 62, 57, 57, 66, 79, 51, 59, 78, 60, 81, 63, 70, 84, 55, 71, 62, 45, 69, 59, 58, 46, 50, 65, 70, 72, 63, 55, 48, 79, 51, 56, 64, 74, 84, 68, 76, 50, 57, 52, 61, 66, 67, 81, 72, 67, 53, 75, 44, 81, 87, 49, 91, 67, 54, 61, 61, 62, 87, 81, 57, 74, 72, 62, 74, 72, 60, 69, 116, 43, 53, 51, 82, 59, 78, 66, 71, 56, 64, 71, 39, 61, 111, 64, 46, 72, 54, 81, 62, 80, 94, 72, 72, 71, 71, 68, 66, 48, 71, 45, 58, 62, 53, 66, 68, 48, 96, 91, 43, 66, 99, 66, 63, 48, 66, 52, 68, 75, 65, 65, 54, 68, 62, 55, 61, 72, 49, 52, 52, 53, 56, 63, 59, 54, 62, 57, 73, 73, 65, 49, 70, 63, 54, 41, 59, 80, 63, 62, 52, 80, 79, 80, 56, 69, 68, 55, 63, 80, 70, 65, 57, 62, 79, 103, 42, 58, 74, 68, 123, 63, 84, 76, 70, 79, 74, 58, 52, 66, 59, 70, 66, 71, 64, 66, 62, 52, 72, 79, 66, 64, 74, 68, 51, 82, 85, 61, 41, 57, 80, 66, 69, 66, 65, 59, 73, 73, 80, 74, 65, 64, 58, 83, 36, 70, 61, 79, 92, 56, 44, 67, 32, 56, 67, 73, 59, 69, 60, 62, 69, 63, 49, 80, 61, 84, 91, 87, 49, 62, 56, 75, 72, 51, 59, 65, 70, 66, 60, 56, 59, 73, 72, 49, 65, 34, 57, 57, 86, 53, 78, 80, 77, 53, 41, 50, 77, 69, 60, 77, 69, 50, 62, 74, 52, 58, 59, 65, 57, 72, 67, 63, 60, 58, 125, 75, 67, 40, 56, 72, 65, 49, 70, 66, 47, 65, 57, 66, 53, 66, 63, 62, 62, 52, 61, 67, 52, 54, 56, 59, 68, 76, 69, 57, 54, 69, 74, 71, 61, 57, 52, 57, 68, 56, 45, 83, 76, 47, 58, 66, 71, 90, 62, 56, 88, 37, 71, 54, 92, 82, 77, 75, 65, 62, 91, 54, 72, 61, 66, 62, 53, 53, 77, 62, 61, 42, 94, 69, 72, 83, 49, 53, 73, 70, 43, 74, 73, 81, 50, 85, 62, 80, 57, 60, 117, 75, 65, 74, 68, 67, 63, 58, 74, 77, 62, 81, 82, 63, 83, 53, 61, 40, 84, 54, 70, 39, 55, 90, 65, 73, 70, 54, 58, 52, 111, 68, 56, 49, 59, 49, 71, 76, 46, 66, 55, 54, 56, 76, 47, 86, 54, 76, 69, 65, 56, 52, 120, 76, 65, 62, 60, 72, 71, 56, 55, 64, 63, 75, 63, 63, 69, 68, 55, 54, 57, 69, 68, 49, 68, 66, 129, 86, 64, 55, 57, 76, 61, 76, 75, 58, 57, 58, 66, 48, 58, 74, 150, 70, 60, 69, 79, 51, 51, 51, 98, 54, 67, 57, 55, 61, 79, 63, 61, 71, 75, 61, 114, 70, 58, 74, 68, 73, 60, 70, 73, 62, 45, 57, 75, 74, 49, 67, 52, 52, 84, 71, 53, 69, 47, 58, 75, 115, 88, 64, 83, 68, 60, 58, 58, 51, 74, 74, 50, 70, 46, 60, 76, 63, 54, 59, 83, 65, 58, 43, 72, 56, 52, 72, 93, 65, 50, 52, 57, 83, 65, 82, 54, 75, 72, 57, 59, 53, 63, 65, 66, 54, 65, 70, 53, 63, 64, 54, 57, 62, 60, 66, 68, 57, 79, 58, 60, 66, 74, 80, 104, 79, 49, 63, 49, 65, 66, 49, 55, 69, 49, 52, 98, 52, 64, 67, 75, 59, 64, 62, 62, 104, 86, 45, 95, 55, 77, 64, 70, 68, 66, 64, 46, 41, 58, 75, 100, 54, 82, 87, 77, 85, 72, 81, 39, 71, 82, 59, 53, 63, 76, 83, 58, 89, 77, 44, 85, 118, 72, 67, 56, 86, 74, 48, 101, 72, 40, 91, 67, 62, 73, 67, 64, 68, 72, 82, 68, 63, 50, 68, 80, 63, 67, 51, 81, 50, 69, 60, 132, 58, 83, 68, 100, 65, 67, 64, 67, 43, 71, 61, 65, 58, 50, 82, 67, 48, 56, 73, 106, 69, 91, 71, 58, 72, 94, 60, 86, 54, 75, 87, 77, 47, 59, 53, 46, 50, 62, 63, 55, 58, 51, 107, 50, 63, 58, 62, 71, 59, 77, 98, 48, 45, 117, 61, 80, 57, 65, 71, 52, 97, 66, 83, 71, 49, 72, 48, 49, 81, 56, 60, 55, 56, 70, 48, 70, 52, 53, 49, 68, 69, 73, 59, 90, 69, 62, 63, 72, 64, 76, 52, 72, 65, 54, 52, 69, 65, 54, 56, 76, 61, 46, 65, 74, 71, 65, 91, 57, 69, 69, 39, 55, 62, 58, 70, 50, 47, 85, 52, 54, 73, 77, 84, 57, 57, 61, 75, 66, 67, 77, 96, 48, 69, 52, 79, 61, 65, 58, 69, 54, 63, 71, 63, 62, 71, 53, 57, 76, 47, 69, 56, 70, 68, 76, 46, 69, 94, 50, 52, 87, 50, 53, 67, 91, 77, 60, 69, 60, 92, 57, 60, 66, 67, 66, 75, 62, 53, 67, 68, 63, 83, 74, 71, 71, 70, 55, 62, 50, 70, 65, 81, 51, 72, 58, 59, 74, 88, 64, 84, 64, 61, 79, 84, 71, 60, 80, 70, 67, 79, 77, 55, 72, 80, 67, 73, 53, 64, 83, 66, 80, 101, 50, 76, 77, 70, 67, 74, 63, 49, 71, 70, 54, 62, 90, 63, 69, 63, 70, 54, 69, 52, 60, 58, 47, 112, 74, 53, 81, 95, 77, 58, 54, 69, 75, 49, 97, 71, 49, 77, 46, 67, 62, 75, 73, 53, 56, 51, 64, 67, 57, 76, 66, 45, 65, 61, 62, 46, 51, 48, 70, 56, 72, 107, 135, 53, 76, 60, 72, 67, 78, 64, 60, 45, 59, 58, 79, 54, 68, 76, 52, 58, 99, 69, 61, 56, 69, 49, 80, 73, 81, 54, 67, 91, 81, 49, 64, 59, 58, 61, 60, 61, 65, 63, 55, 94, 64, 71, 75, 84, 47, 102, 73, 69, 62, 99, 53, 74, 51, 93, 67, 69, 68, 62, 67, 68, 50, 67, 82, 76, 68, 68, 60, 65, 67, 61, 74, 61, 82, 73, 60, 54, 77, 73, 101, 74, 63, 77, 56, 46, 69, 78, 53, 52, 68, 59, 69, 62, 72, 66, 71, 83, 56, 55, 54, 72, 87, 64, 81, 48, 66, 60, 53, 62, 76, 48, 51, 58, 61, 57, 65, 69, 67, 81, 73, 44, 72, 63, 47, 131, 85, 61, 76, 61, 56, 84, 86, 77, 87, 82, 61, 52, 74, 56, 75, 58, 59, 65, 75, 56, 82, 56, 73, 81, 87, 63, 47, 89, 67, 74, 47, 54, 59, 88, 57, 89, 52, 69, 59, 63, 56, 51, 50, 53, 93, 95, 49, 93, 66, 62, 58, 63, 70, 65, 43, 51, 61, 64, 75, 61, 66, 74, 60, 70, 55, 65, 46, 72, 71, 56, 56, 78, 64, 57, 53, 85, 63, 66, 69, 65, 91, 66, 79, 68, 61, 53, 72, 65, 74, 48, 50, 76, 56, 56, 71, 66, 65, 50, 59, 84, 61, 70, 81, 84, 81, 68, 51, 68, 53, 66, 136, 53, 52, 71, 47, 64, 81, 73, 93, 62, 52, 57, 50, 58, 72, 61, 52, 60, 55, 73, 53, 66, 47, 58, 49, 76, 72, 91, 80, 51, 58, 59, 64, 59, 79, 55, 83, 74, 70, 66, 60, 72, 95, 86, 58, 65, 58, 71, 63, 70, 51, 51, 50, 74, 52, 97, 58, 64, 48, 61, 86, 37, 56, 55, 73, 65, 82, 60, 120, 76, 77, 63, 46, 103, 79, 77, 53, 64, 57, 54, 40, 46, 59, 57, 62, 70, 58, 101, 58, 56, 55, 75, 88, 57, 116, 62, 58, 52, 92, 70, 57, 70, 45, 67, 70, 64, 60, 87, 48, 55, 48, 105, 53, 52, 59, 64, 40, 99, 64, 43, 57, 57, 65, 83, 70, 56, 46, 48, 65, 67, 61, 78, 44, 77, 68, 49, 57, 55, 55, 54, 53, 73, 57, 90, 60, 49, 48, 59, 68, 70, 68, 56, 59, 60, 61, 64, 63, 60, 99, 76, 84, 59, 55, 151, 78, 52, 72, 63, 51, 66, 76, 62, 57, 60, 55, 90, 73, 64, 60, 83, 52, 55, 63, 82, 64, 79, 57, 62, 64, 55, 99, 68, 54, 44, 74, 60, 72, 59, 58, 48, 74, 63, 95, 79, 63, 70, 50, 50, 64, 64, 60, 36, 56, 73, 69, 69, 74, 79, 62, 56, 62, 68, 47, 52, 60, 62, 57, 81, 44, 58, 73, 55, 57, 66, 65, 53, 50, 70, 71, 59, 65, 81, 51, 70, 48, 75, 63, 72, 69, 53, 63, 55, 53, 50, 74, 62, 73, 65, 78, 62, 83, 53, 52, 97, 71, 67, 58, 70, 55, 60, 62, 49, 54, 47, 63, 88, 68, 90, 57, 66, 72, 81, 79, 46, 79, 65, 62, 63, 67, 55, 61, 62, 79, 67, 77, 77, 68, 59, 83, 53, 79, 63, 60, 63, 77, 64, 66, 67, 69, 45, 75, 51, 65, 80, 65, 79, 62, 73, 40, 49, 35, 67, 68, 68, 74, 64, 62, 50, 64, 89, 77, 64, 62, 73, 62, 68, 59, 56, 67, 58, 63, 63, 59, 53, 73, 72, 51, 86, 55, 80, 69, 64, 70, 65, 54, 49, 98, 71, 66, 74, 64, 58, 88, 52, 60, 52, 64, 62, 84, 69, 64, 79, 66, 64, 77, 66, 75, 78, 59, 69, 55, 70, 54, 70, 83, 52, 70, 79, 52, 64, 47, 77, 76, 69, 62, 93, 62, 74, 60, 72, 55, 65, 63, 58, 51, 61, 75, 64, 55, 79, 64, 68, 51, 51, 80, 58, 91, 85, 73, 38, 65, 92, 65, 67, 74, 124, 85, 81, 65, 66, 64, 61, 53, 52, 66, 58, 49, 60, 65, 38, 74, 69, 64, 64, 76, 70, 83, 84, 69, 53, 61, 60, 69, 61, 56, 74, 65, 62, 71, 95, 59, 59, 81, 67, 73, 78, 84, 62, 61, 94, 51, 65, 89, 52, 93, 75, 82, 61, 91, 68, 52, 77, 56, 63, 54, 77, 62, 72, 53, 75, 45, 69, 63, 64, 46, 47, 57, 62, 58, 73, 72, 59, 64, 42, 68, 84, 80, 58, 61, 71, 62, 78, 60, 57, 58, 63, 68, 80, 75, 75, 63, 78, 66, 71, 61, 77, 59, 69, 41, 81, 71, 61, 75, 60, 60, 72, 57, 59, 42, 63, 80, 47, 55, 52, 63, 60, 54, 55, 54, 77, 64, 63, 65, 39, 74, 54, 60, 60, 66, 70, 59, 70, 58, 93, 64, 44, 63, 71, 52, 66, 54, 71, 80, 69, 65, 57, 59, 48, 52, 67, 57, 66, 72, 57, 62, 93, 57, 56, 66, 72, 68, 64, 72, 68, 49, 40, 65, 50, 45, 75, 55, 67, 74, 73, 59, 55, 73, 56, 50, 49, 105, 64, 68, 75, 76, 74, 59, 85, 75, 74, 67, 45, 80, 65, 120, 66, 53, 62, 66, 53, 37, 64, 101, 45, 50, 72, 77, 67, 64, 67, 52, 78, 129, 60, 58, 49, 51, 52, 62, 68, 50, 79, 77, 78, 55, 56, 50, 95, 77, 54, 57, 79, 74, 45, 59, 64, 55, 58, 69, 88, 74, 62, 64, 57, 64, 78, 45, 57, 60, 66, 59, 47, 61, 118, 56, 82, 83, 44, 65, 56, 53, 68, 68, 64, 65, 68, 62, 64, 65, 44, 66, 57, 77, 50, 50, 85, 64, 56, 61, 58, 71, 72, 59, 44, 46, 70, 76, 81, 69, 45, 61, 74, 84, 72, 41, 69, 58, 72, 59, 55, 94, 75, 67, 65, 59, 61, 59, 57, 53, 56, 61, 73, 70, 58, 51, 72, 72, 68, 86, 57, 55, 72, 88, 43, 47, 55, 83, 47, 65, 74, 89, 74, 54, 83, 51, 52, 78, 69, 67, 71, 53, 83, 66, 63, 64, 60, 64, 53, 63, 64, 56, 69, 54, 57, 60, 72, 58, 85, 78, 78, 57, 49, 65, 61, 68, 73, 51, 61, 62, 72, 49, 58, 62, 80, 73, 56, 76, 74, 54, 119, 52, 84, 64, 52, 48, 64, 50, 88, 80, 39, 42, 69, 46, 74, 66, 36, 95, 68, 60, 81, 58, 65, 66, 94, 69, 61, 82, 57, 55, 91, 50, 61, 70, 84, 51, 56, 80, 61, 70, 58, 71, 48, 89, 85, 59, 70, 93, 72, 54, 93, 83, 76, 56, 52, 94, 121, 95, 78, 63, 61, 55, 68, 69, 84, 57, 51, 87, 77, 53, 67, 44, 85, 63, 51, 63, 54, 62, 61, 65, 90, 53, 97, 57, 91, 50, 48, 102, 76, 71, 62, 70, 86, 75, 60, 38, 59, 66, 41, 90, 54, 56, 58, 69, 57, 80, 58, 51, 70, 61, 67, 57, 60, 68, 52, 38, 68, 72, 41, 73, 41, 45, 68, 45, 59, 42, 76, 54, 41, 59, 69, 58, 48, 65, 76, 80, 45, 61, 75, 76, 83, 73, 59, 65, 79, 68, 58, 86, 61, 92, 63, 51, 112, 60, 111, 63, 52, 65, 52, 77, 74, 83, 73, 78, 44, 89, 52, 85, 106, 67, 57, 78, 63, 107, 104, 58, 58, 76, 70, 56, 51, 48, 62, 75, 73, 58, 87, 56, 52, 88, 53, 67, 128, 66, 67, 76, 91, 65, 80, 47, 52, 76, 76, 64, 82, 58, 49, 53, 88, 58, 56, 72, 57, 72, 58, 76, 91, 53, 51, 60, 71, 88, 82, 77, 31, 83, 55, 85, 67, 82, 69, 44, 65, 68, 67, 58, 55, 69, 61, 66, 59, 52, 52, 86, 72, 57, 69, 54, 73, 69, 55, 53, 74, 45, 63, 79, 70, 68, 58, 95, 50, 55, 53, 62, 47, 85, 105, 62, 69, 55, 75, 80, 90, 62, 63, 60, 50, 77, 68, 76, 61, 44, 64, 77, 71, 68, 37, 74, 72, 60, 64, 61, 89, 73, 79, 60, 60, 71, 56, 63, 63, 69, 58, 67, 60, 50, 60, 63, 74, 63, 81, 63, 59, 51, 37, 76, 130, 76, 48, 70, 64, 50, 63, 78, 78, 84, 54, 56, 58, 62, 68, 54, 69, 63, 70, 70, 54, 53, 68, 38, 59, 44, 71, 65, 70, 57, 40, 53, 80, 87, 55, 60, 63, 78, 43, 62, 67, 54, 63, 83, 66, 50, 54, 78, 74, 49, 64, 74, 87, 67, 66, 67, 66, 51, 86, 62, 86, 65, 63, 91, 51, 77, 70, 94, 63, 63, 64, 39, 52, 46, 82, 65, 68, 58, 42, 78, 50, 64, 65, 42, 74, 54, 77, 57, 59, 58, 70, 70, 49, 56, 106, 74, 63, 74, 100, 44, 78, 59, 55, 62, 86, 60, 63, 65, 72, 45, 43, 44, 42, 67, 70, 50, 60, 56, 68, 68, 61, 61, 76, 68, 51, 72, 61, 69, 67, 66, 81, 72, 59, 64, 69, 53, 36, 77, 57, 62, 65, 58, 67, 73, 69, 45, 66, 70, 67, 62, 51, 77, 53, 43, 70, 66, 74, 65, 61, 69, 99, 89, 70, 95, 60, 63, 66, 96, 105, 68, 68, 70, 81, 48, 73, 60, 108, 69, 48, 54, 70, 49, 57, 49, 78, 68, 74, 75, 47, 50, 58, 72, 54, 38, 60, 53, 54, 72, 66, 69, 52, 71, 57, 76, 86, 61, 81, 45, 58, 47, 48, 63, 52, 64, 57, 87, 69, 77, 71, 86, 57, 68, 63, 60, 60, 78, 52, 52, 86, 43, 57, 73, 52, 62, 53, 59, 90, 55, 98, 88, 64, 56, 54, 63, 64, 57, 91, 63, 59, 50, 55, 87, 77, 58, 75, 74, 68, 88, 58, 68, 79, 87, 91, 70, 47, 56, 92, 63, 53, 77, 45, 80, 70, 46, 43, 97, 87, 54, 80, 90, 82, 90, 58, 66, 48, 67, 76, 54, 82, 79, 55, 91, 70, 76, 69, 110, 79, 49, 61, 50, 59, 46, 63, 64, 59, 81, 52, 77, 60, 51, 59, 71, 55, 70, 70, 44, 73, 95, 64, 51, 44, 78, 128, 72, 68, 75, 60, 70, 59, 60, 68, 79, 74, 66, 63, 42, 90, 80, 76, 94, 78, 106, 60, 69, 48, 56, 52, 57, 53, 57, 83, 68, 82, 90, 80, 57, 70, 75, 42, 93, 66, 130, 76, 49, 57, 47, 70, 62, 52, 71, 62, 128, 91, 65, 54, 57, 93, 56, 76, 65, 75, 77, 56, 58, 61, 51, 58, 55, 84, 68, 68, 88, 58, 55, 63, 64, 43, 55, 74, 68, 50, 78, 69, 73, 75, 58, 66, 70, 96, 60, 51, 50, 42, 60, 70, 53, 62, 75, 56, 53, 68, 65, 72, 81, 53, 36, 52, 38, 51, 73, 57, 63, 92, 60, 56, 57, 69, 73, 77, 71, 63, 60, 79, 67, 47, 66, 43, 51, 58, 44, 87, 87, 48, 62, 79, 89, 120, 65, 88, 52, 59, 74, 87, 48, 89, 63, 69, 56, 69, 54, 78, 79, 65, 65, 55, 92, 58, 64, 57, 61, 71, 60, 47, 55, 99, 59, 67, 53, 58, 56, 82, 46, 77, 71, 65, 55, 67, 91, 66, 59, 65, 76, 62, 56, 65, 77, 74, 66, 53, 55, 96, 83, 69, 46, 52, 59, 91, 46, 86, 90, 61, 56, 69, 87, 56, 50, 65, 67, 68, 70, 55, 75, 71, 67, 56, 66, 47, 59, 68, 57, 65, 69, 66, 40, 51, 78, 56, 66, 62, 48, 55, 60, 70, 55, 70, 56, 70, 63, 64, 58, 78, 71, 49, 106, 61, 66, 71, 86, 49, 65, 54, 80, 54, 57, 60, 63, 157, 127, 50, 68, 61, 63, 84, 67, 46, 75, 64, 81, 55, 60, 52, 52, 56, 56, 60, 47, 74, 64, 75, 50, 49, 65, 97, 55, 67, 52, 63, 60, 58, 57, 89, 45, 50, 77, 59, 66, 67, 82, 63, 64, 65, 72, 77, 67, 62, 41, 73, 57, 71, 74, 58, 57, 74, 61, 52, 69, 62, 58, 72, 48, 71, 61, 51, 65, 64, 68, 45, 62, 48, 55, 68, 68, 65, 54, 55, 49, 91, 61, 72, 59, 76, 51, 73, 55, 58, 57, 42, 62, 60, 68, 43, 44, 62, 53, 82, 62, 64, 82, 62, 50, 62, 109, 70, 68, 58, 64, 73, 50, 76, 63, 55, 69, 54, 56, 66, 61, 65, 97, 83, 62, 73, 50, 51, 63, 69, 48, 63, 83, 122, 74, 109, 80, 70, 60, 53, 66, 88, 52, 62, 67, 50, 71, 66, 73, 43, 118, 56, 51, 61, 82, 56, 95, 75, 73, 84, 67, 62, 52, 78, 49, 61, 51, 63, 71, 95, 49, 55, 77, 57, 62, 82, 111, 68, 55, 58, 59, 123, 66, 59, 77, 91, 52, 71, 81, 149, 93, 60, 63, 71, 76, 71, 70, 57, 52, 68, 88, 84, 83, 53, 62, 98, 74, 102, 62, 82, 41, 83, 78, 49, 69, 67, 74, 60, 68, 73, 50, 47, 55, 53, 68, 40, 60, 76, 60, 56, 81, 64, 101, 61, 68, 79, 64, 65, 53, 64, 59, 61, 71, 59, 63, 45, 63, 64, 63, 58, 49, 48, 81, 53, 82, 67, 67, 61, 55, 79, 57, 64, 56, 58, 78, 53, 69, 66, 57, 52, 46, 71, 74, 81, 56, 67, 80, 52, 66, 72, 87, 70, 68, 56, 69, 50, 55, 61, 75, 62, 65, 62, 72, 89, 61, 44, 72, 66, 60, 75, 52, 83, 90, 76, 60, 64, 70, 58, 69, 64, 74, 65, 51, 57, 61, 62, 62, 119, 42, 63, 60, 72, 67, 75, 76, 89, 115, 51, 60, 71, 70, 45, 104, 58, 79, 54, 65, 111, 59, 79, 63, 90, 62, 70, 54, 61, 87, 76, 64, 77, 104, 47, 60, 73, 73, 61, 59, 80, 53, 68, 85, 58, 102, 46, 50, 79, 54, 79, 58, 70, 53, 93, 76, 68, 62, 97, 87, 53, 73, 51, 61, 72, 92, 55, 51, 82, 92, 43, 66, 80, 78, 60, 51, 49, 53, 61, 59, 62, 63, 72, 63, 79, 85, 73, 74, 50, 88, 68, 68, 57, 59, 39, 38, 62, 76, 70, 48, 64, 120, 64, 77, 78, 46, 100, 65, 111, 56, 71, 57, 67, 102, 71, 70, 62, 64, 79, 60, 70, 66, 73, 68, 81, 74, 59, 53, 55, 37, 50, 81, 76, 48, 94, 64, 53, 59, 45, 66, 74, 54, 44, 61, 63, 54, 43, 58, 65, 74, 47, 76, 46, 55, 80, 62, 74, 84, 87, 71, 76, 76, 98, 58, 57, 67, 77, 60, 81, 67, 75, 67, 101, 68, 75, 85, 77, 59, 68, 110, 72, 77, 53, 53, 112, 61, 76, 51, 64, 67, 39, 67, 71, 58, 57, 52, 86, 71, 90, 69, 58, 70, 88, 48, 58, 102, 73, 48, 67, 76, 57, 58, 62, 51, 67, 77, 66, 64, 54, 72, 63, 62, 66, 60, 51, 69, 50, 70, 71, 86, 63, 75, 69, 58, 63, 56, 100, 63, 81, 60, 59, 62, 47, 63, 40, 73, 46, 54, 75, 70, 55, 61, 58, 54, 60, 83, 66, 49, 51, 85, 89, 70, 70, 75, 52, 59, 61, 54, 66, 67, 61, 63, 62, 74, 82, 63, 63, 60, 51, 71, 39, 60, 99, 51, 71, 73, 75, 76, 75, 95, 62, 80, 84, 105, 65, 54, 59, 69, 58, 59, 65, 83, 63, 68, 80, 85, 41, 77, 59, 64, 69, 50, 62, 72, 86, 54, 55, 84, 64, 45, 58, 87, 64, 59, 43, 42, 73, 71, 70, 58, 52, 52, 68, 43, 53, 50, 61, 41, 59, 66, 63, 49, 74, 78, 53, 57, 60, 55, 70, 76, 62, 73, 108, 52, 68, 70, 62, 79, 56, 76, 54, 43, 59, 65, 65, 43, 63, 84, 64, 59, 59, 41, 76, 56, 37, 71, 83, 50, 49, 62, 51, 61, 66, 69, 88, 72, 59, 63, 65, 56, 59, 73, 37, 105, 64, 93, 52, 60, 64, 76, 63, 64, 66, 52, 63, 77, 61, 66, 63, 71, 92, 67, 55, 77, 72, 101, 49, 71, 66, 84, 76, 61, 53, 48, 79, 59, 89, 52, 42, 66, 78, 59, 60, 73, 72, 66, 56, 58, 74, 73, 73, 51, 60, 53, 83, 89, 41, 68, 89, 49, 51, 74, 45, 68, 62, 77, 65, 59, 62, 65, 76, 73, 104, 85, 66, 69, 50, 62, 50, 71, 68, 97, 53, 68, 83, 37, 50, 67, 68, 69, 53, 75, 52, 68, 63, 50, 60, 51, 76, 64, 72, 43, 56, 56, 67, 91, 53, 55, 64, 81, 67, 110, 63, 79, 65, 67, 61, 56, 72, 60, 61, 73, 64, 71, 61, 75, 83, 57, 149, 69, 53, 88, 52, 51, 57, 60, 60, 58, 46, 48, 67, 57, 51, 65, 63, 60, 74, 64, 61, 68, 77, 62, 41, 57, 83, 73, 87, 68, 99, 68, 83, 81, 67, 69, 114, 55, 61, 51, 65, 50, 76, 60, 57, 101, 65, 71, 38, 70, 91, 61, 86, 62, 101, 89, 64, 73, 75, 47, 56, 51, 50, 58, 73, 51, 126, 54, 85, 74, 78, 71, 84, 72, 50, 57, 48, 58, 55, 65, 56, 74, 67, 70, 63, 60, 56, 80, 81, 102, 73, 47, 70, 76, 36, 75, 103, 62, 76, 54, 47, 38, 72, 56, 72, 92, 84, 95, 55, 69, 46, 76, 48, 91, 73, 40, 123, 70, 77, 31, 57, 58, 75, 86, 58, 55, 67, 41, 52, 48, 53, 49, 63, 70, 71, 74, 74, 78, 93, 79, 51, 49, 58, 74, 62, 56, 51, 91, 69, 65, 72, 48, 59, 105, 64, 75, 82, 57, 51, 90, 78, 61, 90, 65, 92, 53, 56, 72, 68, 66, 50, 51, 47, 44, 65, 82, 50, 58, 47, 49, 41, 77, 61, 84, 56, 39, 69, 61, 55, 60, 70, 82, 63, 53, 49, 67, 78, 54, 52, 61, 68, 83, 57, 77, 71, 90, 79, 82, 50, 54, 87, 41, 96, 63, 80, 41, 81, 66, 63, 88, 66, 72, 65, 70, 63, 76, 75, 80, 65, 63, 65, 66, 99, 30, 76, 79, 48, 99, 67, 69, 50, 74, 66, 86, 58, 117, 45, 45, 89, 59, 51, 76, 70, 59, 63, 48, 32, 59, 73, 79, 52, 75, 67, 75, 64, 46, 65, 110, 62, 87, 55, 67, 69, 56, 35, 62, 72, 35, 65, 81, 70, 74, 65, 78, 75, 65, 64, 59, 62, 62, 81, 66, 54, 58, 55, 89, 87, 56, 60, 50, 50, 54, 60, 103, 60, 59, 77, 64, 55, 76, 83, 60, 91, 73, 63, 61, 38, 42, 44, 70, 65, 70, 63, 62, 73, 69, 68, 91, 36, 82, 70, 74, 57, 74, 62, 73, 61, 66, 57, 61, 58, 38, 48, 66, 64, 56, 77, 96, 61, 75, 52, 50, 57, 69, 69, 66, 75, 45, 57, 58, 63, 59, 75, 51, 54, 48, 92, 44, 59, 66, 80, 67, 61, 70, 65, 66, 55, 68, 47, 93, 61, 59, 125, 71, 90, 74, 47, 69, 50, 81, 50, 43, 60, 76, 56, 80, 51, 92, 51, 63, 67, 56, 75, 83, 46, 80, 88, 57, 35, 83, 70, 71, 57, 66, 78, 83, 56, 106, 61, 54, 72, 80, 43, 75, 55, 63, 75, 73, 52, 60, 77, 54, 80, 72, 52, 75, 71, 70, 76, 61, 88, 63, 58, 65, 65, 57, 69, 71, 69, 68, 47, 79, 57, 73, 62, 92, 61, 78, 65, 55, 76, 103, 55, 73, 59, 56, 74, 53, 75, 97, 82, 57, 64, 69, 61, 56, 77, 57, 44, 61, 65, 71, 91, 54, 68, 76, 78, 86, 71, 78, 50, 78, 52, 49, 77, 63, 60, 73, 62, 67, 57, 52, 61, 70, 42, 61, 46, 70, 49, 51, 67, 79, 65, 75, 58, 68, 68, 59, 66, 70, 56, 55, 53, 66, 103, 61, 41, 72, 144, 66, 56, 54, 84, 73, 73, 72, 53, 71, 49, 67, 67, 77, 88, 74, 53, 72, 66, 49, 73, 51, 74, 55, 75, 69, 64, 66, 43, 73, 51, 76, 71, 58, 85, 93, 56, 63, 68, 59, 64, 71, 47, 52, 72, 57, 71, 61, 76, 79, 47, 73, 60, 67, 70, 55, 59, 62, 62, 54, 99, 96, 45, 90, 70, 51, 83, 59, 52, 52, 57, 77, 51, 54, 93, 70, 64, 65, 84, 62, 53, 120, 61, 85, 54, 50, 50, 65, 62, 90, 73, 142, 55, 83, 51, 68, 54, 60, 75, 65, 53, 80, 61, 84, 54, 55, 69, 36, 68, 46, 92, 75, 68, 88, 69, 87, 55, 83, 42, 62, 59, 51, 61, 67, 62, 71, 80, 62, 54, 67, 72, 69, 89, 68, 71, 81, 70, 79, 56, 60, 79, 68, 56, 60, 46, 97, 61, 82, 65, 54, 72, 53, 63, 82, 67, 69, 63, 65, 58, 47, 74, 80, 52, 67, 69, 62, 78, 54, 63, 52, 86, 61, 64, 57, 67, 62, 71, 52, 58, 60, 77, 68, 76, 67, 39, 54, 49, 64, 55, 67, 55, 89, 58, 54, 72, 59, 103, 80, 65, 54, 62, 73, 92, 94, 68, 84, 73, 52, 57, 56, 69, 74, 64, 78, 72, 105, 73, 68, 76, 117, 42, 69, 64, 70, 67, 60, 93, 53, 50, 53, 69, 50, 92, 75, 59, 51, 54, 75, 43, 60, 55, 59, 65, 70, 58, 73, 67, 94, 69, 83, 60, 63, 55, 95, 70, 62, 64, 59, 73, 48, 57, 96, 76, 72, 66, 96, 60, 54, 99, 85, 87, 50, 63, 74, 68, 68, 62, 92, 61, 56, 62, 66, 59, 67, 91, 59, 80, 82, 62, 64, 61, 64, 59, 82, 60, 66, 62, 107, 60, 72, 56, 75, 62, 79, 47, 92, 57, 60, 88, 84, 59, 46, 47, 44, 71, 92, 61, 49, 78, 60, 52, 56, 61, 91, 57, 60, 75, 75, 71, 76, 55, 57, 82, 61, 74, 88, 68, 60, 53, 75, 79, 82, 69, 74, 99, 62, 69, 59, 53, 69, 85, 72, 76, 43, 50, 51, 48, 51, 85, 67, 117, 69, 60, 49, 67, 46, 69, 57, 76, 61, 65, 38, 71, 98, 60, 68, 49, 51, 45, 89, 58, 45, 50, 51, 61, 61, 84, 54, 58, 93, 69, 84, 61, 101, 56, 42, 62, 66, 133, 62, 79, 76, 63, 74, 51, 52, 57, 58, 67, 63, 76, 79, 73, 40, 66, 86, 65, 67, 62, 68, 73, 63, 88, 61, 64, 57, 85, 72, 47, 99, 57, 81, 63, 61, 56, 79, 71, 56, 54, 72, 42, 56, 86, 65, 78, 65, 77, 40, 111, 63, 60, 80, 84, 57, 75, 69, 71, 92, 87, 65, 45, 49, 84, 68, 48, 74, 49, 61, 56, 76, 63, 73, 64, 55, 37, 68, 56, 82, 59, 80, 64, 61, 68, 67, 68, 48, 54, 53, 70, 60, 54, 68, 84, 64, 58, 52, 82, 50, 52, 46, 53, 85, 68, 79, 46, 49, 58, 61, 65, 60, 59, 85, 63, 51, 92, 57, 72, 69, 73, 59, 65, 71, 59, 59, 77, 51, 59, 52, 81, 63, 53, 73, 61, 68, 57, 66, 71, 61, 65, 60, 67, 61, 89, 44, 34, 61, 69, 40, 49, 58, 106, 40, 54, 70, 87, 71, 59, 65, 53, 74, 67, 62, 68, 71, 65, 74, 72, 83, 96, 53, 66, 61, 69, 67, 68, 68, 74, 55, 61, 52, 58, 105, 64, 85, 54, 79, 57, 75, 60, 77, 63, 51, 78, 102, 84, 58, 56, 57, 90, 66, 69, 80, 93, 82, 57, 53, 119, 91, 40, 70, 90, 57, 95, 51, 70, 61, 68, 85, 53, 62, 80, 88, 71, 54, 46, 61, 75, 75, 57, 83, 84, 60, 61, 81, 59, 50, 46, 51, 46, 65, 63, 77, 72, 58, 82, 76, 61, 48, 58, 71, 79, 61, 60, 54, 49, 97, 54, 62, 85, 61, 64, 34, 73, 75, 59, 59, 61, 63, 40, 56, 94, 94, 30, 87, 62, 63, 64, 56, 63, 55, 64, 58, 46, 66, 69, 72, 60, 92, 60, 68, 73, 65, 79, 60, 65, 51, 59, 81, 57, 122, 39, 78, 60, 81, 63, 81, 92, 61, 68, 64, 65, 68, 78, 67, 82, 112, 79, 57, 45, 65, 57, 44, 50, 61, 53, 38, 55, 77, 120, 86, 66, 54, 87, 80, 60, 54, 84, 63, 57, 78, 67, 97, 62, 57, 59, 74, 75, 94, 54, 84, 53, 65, 75, 51, 58, 69, 50, 80, 58, 94, 74, 62, 58, 89, 52, 75, 62, 56, 78, 81, 72, 55, 57, 52, 72, 75, 78, 62, 49, 53, 70, 79, 54, 63, 64, 79, 62, 58, 48, 44, 80, 65, 85, 72, 71, 84, 55, 96, 80, 96, 69, 38, 61, 69, 61, 57, 96, 71, 81, 66, 63, 80, 68, 52, 42, 53, 28, 82, 57, 70, 77, 117, 59, 70, 94, 61, 86, 72, 49, 48, 73, 49, 53, 71, 62, 42, 62, 64, 56, 71, 74, 73, 53, 82, 59, 60, 48, 63, 79, 98, 66, 55, 80, 50, 58, 62, 65, 59, 74, 50, 89, 76, 119, 34, 63, 111, 49, 72, 81, 67, 63, 84, 63, 43, 80, 48, 71, 38, 69, 65, 59, 39, 46, 72, 68, 89, 46, 49, 75, 77, 65, 63, 54, 63, 77, 79, 64, 57, 75, 73, 76, 77, 66, 80, 49, 132, 50, 71, 68, 55, 61, 65, 68, 64, 66, 51, 79, 61, 54, 61, 66, 47, 46, 64, 69, 83, 69, 59, 69, 54, 91, 52, 75, 57, 105, 78, 82, 81, 46, 61, 73, 61, 43, 50, 105, 76, 44, 44, 81, 70, 69, 45, 61, 69, 77, 71, 72, 101, 93, 45, 47, 65, 55, 78, 58, 64, 92, 54, 75, 52, 69, 68, 61, 60, 63, 77, 52, 57, 70, 51, 82, 82, 64, 63, 59, 87, 87, 65, 76, 66, 68, 90, 87, 69, 48, 55, 56, 63, 38, 60, 63, 54, 52, 55, 57, 67, 49, 66, 94, 72, 85, 65, 64, 75, 50, 76, 94, 45, 59, 87, 57, 50, 72, 59, 99, 81, 54, 33, 67, 90, 98, 81, 52, 45, 51, 75, 83, 65, 62, 94, 53, 41, 61, 74, 61, 82, 40, 70, 68, 56, 45, 66, 88, 66, 71, 60, 91, 53, 80, 79, 96, 47, 82, 70, 36, 79, 53, 55, 47, 49, 50, 55, 78, 53, 94, 84, 71, 74, 61, 47, 69, 68, 75, 54, 59, 99, 55, 90, 69, 51, 75, 66, 84, 60, 54, 52, 51, 67, 89, 50, 63, 47, 76, 67, 80, 84, 69, 86, 65, 53, 84, 78, 58, 91, 89, 79, 70, 72, 79, 55, 78, 56, 48, 48, 64, 56, 70, 70, 58, 73, 61, 71, 68, 82, 60, 48, 97, 64, 47, 42, 56, 63, 64, 60, 55, 67, 51, 67, 51, 64, 63, 42, 64, 75, 51, 89, 52, 80, 58, 58, 89, 67, 60, 68, 95, 73, 70, 74, 51, 80, 75, 65, 76, 76, 45, 81, 68, 99, 68, 60, 72, 67, 88, 59, 77, 52, 54, 63, 73, 54, 73, 74, 68, 68, 69, 59, 58, 67, 63, 63, 39, 67, 82, 56, 66, 65, 59, 54, 64, 51, 67, 83, 55, 63, 67, 112, 66, 67, 70, 49, 89, 46, 77, 73, 79, 60, 53, 54, 76, 89, 79, 84, 43, 66, 99, 78, 85, 53, 84, 51, 51, 79, 78, 74, 61, 53, 52, 92, 57, 69, 54, 59, 71, 55, 52, 59, 61, 82, 72, 94, 70, 73, 60, 112, 73, 63, 65, 60, 74, 74, 63, 74, 87, 95, 79, 68, 61, 75, 56, 85, 67, 55, 40, 65, 57, 78, 67, 77, 69, 65, 74, 85, 93, 61, 67, 58, 58, 50, 53, 65, 68, 78, 54, 64, 71, 62, 74, 45, 64, 66, 68, 73, 53, 66, 54, 40, 93, 60, 113, 46, 58, 82, 69, 77, 67, 67, 63, 61, 49, 77, 65, 49, 94, 66, 48, 58, 71, 57, 80, 78, 47, 55, 60, 62, 65, 58, 77, 61, 60, 92, 70, 62, 70, 67, 51, 50, 65, 50, 77, 79, 62, 63, 56, 56, 71, 62, 44, 34, 67, 51, 118, 79, 67, 56, 74, 71, 55, 49, 104, 59, 100, 73, 98, 55, 71, 73, 65, 81, 62, 51, 60, 72, 62, 64, 81, 53, 60, 78, 67, 72, 76, 64, 77, 54, 48, 65, 81, 47, 68, 46, 76, 41, 63, 77, 58, 74, 79, 69, 62, 56, 98, 87, 79, 79, 60, 57, 61, 79, 69, 54, 59, 47, 61, 58, 72, 53, 75, 72, 75, 51, 61, 69, 52, 92, 82, 73, 57, 62, 48, 52, 61, 69, 64, 94, 50, 63, 71, 70, 37, 63, 57, 53, 75, 64, 70, 44, 81, 67, 51, 71, 54, 63, 95, 91, 74, 63, 82, 84, 47, 73, 73, 45, 57, 65, 68, 44, 71, 72, 68, 77, 47, 56, 39, 82, 62, 58, 85, 56, 47, 57, 63, 65, 68, 94, 63, 59, 58, 58, 61, 46, 79, 48, 66, 66, 65, 91, 60, 90, 65, 66, 71, 58, 65, 57, 75, 58, 56, 62, 40, 77, 57, 54, 81, 109, 65, 64, 79, 76, 50, 30, 55, 53, 75, 93, 71, 80, 45, 56, 66, 102, 64, 87, 73, 49, 62, 55, 65, 68, 81, 75, 68, 96, 51, 62, 55, 74, 49, 52, 69, 68, 62, 50, 116, 56, 91, 36, 71, 28, 50, 59, 59, 88, 64, 82, 70, 99, 51, 78, 87, 81, 81, 60, 67, 67, 88, 40, 60, 67, 86, 54, 64, 67, 62, 56, 69, 75, 70, 70, 70, 62, 57, 52, 55, 96, 58, 72, 56, 68, 65, 51, 65, 57, 59, 53, 60, 42, 59, 66, 65, 85, 77, 60, 48, 80, 62, 57, 88, 50, 69, 67, 68, 74, 81, 56, 69, 73, 65, 52, 60, 65, 56, 53, 59, 60, 76, 62, 65, 60, 48, 60, 74, 57, 67, 59, 88, 67, 51, 77, 77, 59, 61, 56, 71, 77, 69, 64, 71, 62, 64, 65, 55, 59, 68, 47, 75, 64, 68, 56, 55, 63, 85, 63, 64, 63, 91, 59, 68, 83, 77, 52, 65, 87, 58, 61, 78, 53, 58, 63, 63, 66, 62, 58, 81, 62, 69, 61, 67, 81, 71, 82, 84, 63, 65, 49, 70, 59, 80, 108, 55, 59, 53, 70, 74, 76, 48, 76, 62, 68, 113, 62, 59, 67, 48, 71, 95, 62, 54, 74, 56, 71, 101, 63, 59, 90, 77, 57, 71, 58, 59, 81, 77, 65, 51, 69, 68, 70, 76, 82, 86, 52, 64, 100, 92, 61, 65, 63, 54, 65, 64, 45, 55, 55, 59, 61, 101, 71, 66, 60, 61, 51, 56, 111, 63, 68, 99, 88, 110, 68, 54, 77, 57, 64, 63, 66, 56, 61, 58, 38, 87, 65, 75, 66, 119, 62, 58, 62, 55, 65, 66, 56, 39, 114, 58, 50, 56, 66, 73, 72, 53, 57, 47, 53, 62, 73, 70, 61, 66, 47, 64, 74, 77, 56, 56, 61, 70, 62, 49, 125, 51, 60, 67, 63, 66, 63, 71, 86, 87, 43, 57, 68, 58, 61, 103, 54, 64, 62, 84, 79, 61, 64, 78, 51, 71, 63, 69, 55, 73, 62, 74, 69, 68, 87, 77, 46, 67, 60, 59, 60, 67, 55, 52, 54, 91, 69, 69, 44, 71, 88, 49, 61, 31, 68, 62, 51, 67, 80, 49, 65, 64, 58, 65, 67, 114, 59, 57, 71, 54, 61, 48, 92, 54, 56, 70, 68, 79, 52, 79, 69, 79, 63, 58, 66, 66, 70, 48, 58, 70, 83, 70, 53, 50, 58, 60, 75, 82, 62, 67, 71, 75, 52, 84, 55, 66, 88, 82, 70, 59, 57, 77, 72, 66, 91, 61, 53, 57, 66, 42, 56, 56, 81, 56, 53, 60, 67, 49, 76, 65, 121, 69, 65, 70, 59, 60, 63, 94, 57, 71, 57, 65, 53, 66, 59, 61, 56, 56, 61, 70, 61, 60, 54, 64, 76, 52, 59, 82, 63, 63, 56, 81, 69, 72, 61, 46, 73, 62, 70, 88, 67, 73, 86, 55, 56, 58, 66, 59, 53, 70, 55, 62, 58, 59, 73, 63, 67, 79, 52, 71, 71, 83, 64, 77, 50, 67, 56, 61, 51, 55, 63, 85, 61, 63, 61, 52, 65, 61, 64, 66, 61, 52, 70, 66, 61, 68, 85, 57, 43, 69, 67, 63, 72, 70, 60, 73, 56, 59, 52, 57, 53, 117, 65, 74, 60, 49, 62, 66, 79, 58, 59, 66, 72, 61, 46, 60, 56, 44, 69, 69, 68, 70, 74, 50, 64, 60, 60, 77, 62, 78, 65, 78, 92, 63, 70, 95, 58, 64, 58, 64, 55, 63, 66, 65, 62, 66, 60, 80, 65, 96, 56, 87, 78, 67, 83, 61, 61, 80, 53, 69, 73, 101, 60, 76, 75, 52, 59, 94, 52, 60, 52, 65, 62, 69, 74, 68, 50, 50, 60, 73, 59, 66, 65, 85, 63, 55, 57, 70, 64, 58, 73, 88, 82, 57, 56, 48, 54, 70, 65, 59, 65, 57, 75, 113, 66, 75, 70, 60, 59, 63, 61, 74, 68, 52, 66, 74, 54, 75, 63, 73, 65, 73, 63, 69, 49, 74, 84, 61, 70, 75, 80, 76, 81, 70, 53, 65, 65, 70, 96, 54, 54, 66, 55, 65, 75, 63, 56, 72, 59, 53, 59, 54, 63, 95, 58, 57, 50, 68, 47, 53, 50, 47, 54, 60, 65, 66, 65, 66, 81, 71, 66, 57, 56, 66, 75, 58, 58, 79, 69, 77, 124, 79, 54, 67, 72, 59, 61, 48, 54, 79, 57, 69, 57, 62, 59, 56, 48, 66, 74, 70, 55, 40, 95, 55, 81, 69, 62, 63, 56, 53, 70, 58, 77, 112, 69, 58, 83, 74, 112, 51, 77, 60, 72, 59, 77, 69, 60, 89, 60, 72, 57, 78, 45, 78, 73, 53, 87, 61, 57, 64, 67, 45, 68, 58, 47, 66, 66, 56, 60, 63, 61, 56, 71, 64, 67, 65, 62, 75, 54, 52, 58, 66, 64, 53, 77, 66, 55, 70, 60, 86, 58, 62, 60, 73, 52, 58, 62, 54, 68, 50, 59, 57, 64, 84, 47, 56, 73, 80, 68, 112, 52, 53, 64, 49, 57, 62, 67, 62, 71, 99, 72, 68, 62, 66, 61, 91, 51, 51, 68, 58, 70, 60, 57, 60, 56, 56, 46, 73, 64, 74, 75, 95, 68, 65, 49, 61, 64, 83, 77, 73, 59, 68, 70, 77, 52, 73, 80, 108, 106, 54, 99, 77, 57, 63, 70, 83, 64, 37, 82, 68, 79, 58, 54, 69, 48, 57, 79, 57, 77, 72, 93, 62, 58, 62, 95, 60, 63, 58, 74, 66, 64, 55, 63, 61, 70, 49, 67, 49, 77, 73, 75, 58, 69, 58, 68, 54, 57, 74, 60, 59, 88, 62, 56, 56, 61, 54, 63, 50, 73, 91, 62, 59, 75, 66, 90, 59, 99, 63, 63, 49, 66, 57, 72, 62, 49, 62, 72, 51, 73, 57, 70, 59, 64, 92, 61, 53, 55, 56, 74, 74, 67, 57, 55, 58, 81, 60, 50, 77, 54, 68, 66, 62, 54, 61, 63, 64, 64, 50, 59, 39, 73, 50, 57, 63, 68, 74, 60, 77, 64, 56, 84, 63, 76, 59, 69, 61, 60, 55, 51, 64, 46, 69, 66, 61, 104, 67, 64, 73, 51, 68, 82, 59, 52, 55, 45, 59, 54, 58, 55, 49, 55, 66, 72, 84, 55, 78, 67, 81, 77, 63, 90, 68, 75, 87, 72, 60, 57, 62, 48, 87, 83, 56, 55, 69, 66, 57, 70, 57, 56, 59, 49, 62, 59, 59, 70, 66, 93, 64, 121, 57, 65, 75, 76, 71, 57, 82, 54, 55, 58, 70, 64, 88, 70, 47, 102, 52, 59, 85, 69, 58, 65, 75, 99, 58, 62, 69, 56, 64, 51, 63, 38, 48, 79, 97, 55, 58, 70, 62, 65, 74, 53, 76, 55, 95, 67, 65, 50, 109, 58, 58, 60, 49, 83, 149, 59, 71, 98, 59, 84, 66, 73, 75, 61, 69, 62, 83, 72, 52, 89, 71, 57, 64, 73, 52, 68, 78, 78, 62, 77, 59, 51, 71, 82, 74, 71, 90, 99, 47, 59, 69, 57, 79, 71, 68, 51, 64, 123, 53, 57, 85, 85, 55, 67, 65, 53, 61, 63, 75, 78, 58, 86, 75, 66, 46, 67, 75, 57, 56, 100, 68, 57, 63, 53, 51, 60, 50, 48, 63, 80, 58, 69, 60, 72, 83, 61, 78, 61, 66, 78, 82, 65, 47, 67, 88, 44, 63, 53, 79, 58, 75, 81, 73, 66, 63, 47, 73, 99, 81, 101, 92, 63, 61, 59, 56, 71, 63, 63, 65, 68, 63, 128, 63, 75, 64, 71, 80, 66, 60, 57, 54, 78, 52, 49, 62, 55, 62, 63, 75, 54, 58, 66, 59, 76, 78, 66, 60, 61, 74, 63, 55, 63, 53, 65, 75, 137, 49, 66, 58, 57, 100, 82, 50, 59, 78, 51, 71, 75, 77, 62, 67, 83, 54, 53, 74, 61, 67, 90, 62, 48, 61, 68, 67, 45, 83, 78, 63, 63, 67, 64, 54, 70, 55, 61, 71, 68, 68, 58, 81, 56, 76, 86, 59, 67, 81, 68, 61, 63, 88, 72, 81, 73, 81, 76, 65, 55, 79, 73, 92, 70, 63, 73, 44, 46, 53, 46, 63, 56, 47, 57, 65, 70, 45, 53, 71, 45, 75, 70, 72, 62, 61, 103, 73, 57, 69, 58, 66, 64, 66, 67, 65, 64, 84, 76, 126, 48, 48, 107, 76, 53, 60, 72, 59, 57, 50, 63, 68, 60, 67, 54, 71, 75, 54, 65, 63, 59, 56, 53, 59, 63, 74, 82, 71, 59, 64, 78, 52, 58, 47, 39, 54, 68, 47, 61, 72, 70, 52, 117, 70, 62, 56, 74, 49, 78, 57, 61, 67, 54, 72, 57, 62, 68, 56, 55, 73, 55, 80, 57, 87, 59, 64, 58, 107, 43, 61, 56, 86, 74, 60, 64, 51, 62, 67, 56, 67, 55, 92, 87, 78, 67, 52, 62, 40, 58, 61, 55, 60, 57, 46, 57, 56, 63, 63, 59, 95, 80, 49, 90, 79, 65, 70, 82, 73, 55, 72, 62, 70, 45, 68, 90, 64, 55, 71, 60, 63, 71, 66, 84, 52, 53, 65, 70, 79, 92, 61, 54, 58, 84, 52, 84, 51, 50, 66, 86, 68, 57, 72, 72, 80, 97, 89, 75, 83, 52, 74, 74, 61, 83, 91, 74, 57, 67, 61, 77, 62, 48, 61, 82, 62, 56, 60, 58, 70, 94, 51, 55, 82, 79, 89, 59, 67, 62, 85, 53, 63, 100, 56, 74, 103, 74, 74, 94, 46, 61, 62, 66, 69, 69, 69, 47, 66, 55, 81, 66, 74, 76, 66, 85, 84, 53, 54, 66, 73, 69, 40, 49, 68, 77, 78, 81, 59, 53, 46, 60, 65, 44, 64, 95, 75, 79, 64, 84, 85, 45, 73, 55, 49, 75, 65, 84, 75, 58, 80, 62, 52, 51, 72, 35, 72, 73, 56, 57, 51, 77, 56, 60, 69, 106, 51, 64, 49, 77, 50, 47, 46, 59, 51, 56, 36, 64, 83, 97, 72, 94, 89, 60, 61, 52, 77, 50, 68, 63, 69, 67, 54, 54, 61, 59, 73, 53, 72, 58, 66, 61, 81, 64, 74, 45, 60, 71, 61, 60, 61, 53, 51, 74, 75, 72, 73, 79, 62, 80, 102, 50, 47, 57, 67, 67, 59, 57, 75, 59, 60, 57, 64, 63, 76, 66, 75, 66, 56, 83, 68, 77, 55, 58, 74, 44, 77, 71, 72, 71, 56, 66, 98, 52, 67, 56, 62, 63, 72, 55, 56, 75, 46, 76, 104, 63, 63, 85, 70, 91, 60, 66, 81, 69, 57, 56, 53, 56, 91, 50, 45, 83, 55, 52, 95, 57, 57, 75, 47, 62, 54, 57, 78, 55, 57, 60, 81, 64, 68, 68, 56, 75, 50, 52, 56, 64, 56, 78, 72, 63, 57, 67, 64, 72, 54, 71, 62, 67, 52, 75, 56, 82, 55, 54, 71, 62, 51, 53, 55, 76, 66, 65, 92, 53, 63, 81, 70, 70, 56, 53, 84, 82, 76, 77, 41, 61, 49, 51, 61, 73, 50, 89, 58, 63, 52, 67, 53, 58, 68, 60, 64, 106, 69, 53, 66, 59, 66, 93, 51, 78, 64, 60, 59, 74, 51, 74, 78, 84, 66, 56, 62, 53, 79, 62, 60, 48, 70, 51, 64, 58, 60, 76, 63, 70, 66, 60, 69, 80, 60, 65, 61, 60, 76, 51, 88, 86, 59, 65, 68, 78, 57, 59, 66, 54, 66, 75, 65, 52, 56, 58, 93, 75, 69, 46, 79, 50, 55, 60, 68, 61, 59, 57, 59, 70, 71, 49, 63, 60, 67, 58, 52, 49, 56, 52, 44, 44, 64, 61, 85, 63, 69, 68, 74, 60, 77, 72, 78, 74, 62, 74, 44, 55, 62, 64, 56, 80, 64, 79, 72, 57, 69, 93, 61, 67, 74, 80, 50, 61, 60, 67, 71, 68, 57, 56, 84, 68, 58, 67, 56, 68, 63, 62, 86, 92, 57, 82, 58, 52, 65, 59, 54, 63, 81, 76, 73, 61, 44, 51, 75, 65, 50, 89, 74, 58, 109, 64, 59, 55, 58, 51, 52, 56, 92, 74, 53, 62, 70, 73, 53, 55, 53, 59, 86, 69, 74, 76, 76, 69, 75, 48, 58, 63, 72, 49, 59, 63, 63, 65, 63, 57, 81, 67, 48, 43, 43, 61, 73, 52, 58, 59, 57, 59, 73, 81, 56, 75, 68, 72, 69, 54, 68, 55, 64, 71, 57, 57, 68, 61, 36, 54, 66, 64, 75, 94, 84, 77, 54, 63, 77, 69, 58, 79, 71, 53, 67, 67, 56, 64, 68, 100, 63, 74, 60, 67, 62, 62, 57, 61, 59, 58, 62, 81, 83, 76, 69, 65, 59, 50, 61, 70, 75, 59, 99, 57, 72, 87, 51, 66, 69, 63, 70, 96, 57, 50, 62, 67, 60, 53, 87, 74, 73, 61, 65, 62, 55, 51, 68, 82, 96, 66, 53, 50, 57, 62, 52, 69, 66, 75, 61, 53, 80, 75, 69, 61, 82, 52, 69, 92, 62, 119, 64, 72, 54, 44, 64, 71, 72, 41, 62, 59, 59, 74, 42, 56, 58, 81, 67, 53, 71, 52, 71, 65, 64, 52, 48, 83, 134, 41, 66, 51, 59, 55, 77, 57, 88, 52, 61, 61, 65, 82, 74, 61, 53, 38, 95, 50, 55, 66, 57, 51, 47, 56, 64, 60, 56, 69, 72, 79, 60, 41, 70, 76, 79, 49, 94, 62, 41, 53, 67, 59, 51, 73, 44, 73, 78, 55, 57, 106, 89, 61, 64, 71, 37, 62, 59, 56, 107, 56, 55, 48, 57, 74, 65, 41, 68, 65, 47, 86, 47, 72, 59, 86, 59, 64, 79, 73, 42, 93, 68, 72, 116, 56, 74, 78, 74, 54, 59, 88, 103, 61, 62, 43, 64, 75, 45, 25, 63, 65, 55, 52, 79, 64, 66, 78, 96, 63, 82, 87, 47, 82, 100, 69, 62, 58, 54, 68, 69, 39, 67, 45, 66, 53, 58, 64, 78, 67, 83, 79, 85, 100, 60, 65, 27, 65, 85, 46, 72, 66, 84, 69, 83, 60, 66, 46, 89, 60, 59, 100, 96, 67, 75, 85, 53, 50, 70, 50, 71, 66, 67, 77, 73, 109, 39, 68, 79, 67, 100, 90, 59, 65, 55, 65, 83, 62, 58, 66, 57, 42, 46, 43, 83, 51, 60, 60, 81, 72, 78, 68, 40, 66, 58, 58, 76, 89, 76, 50, 58, 72, 48, 95, 62, 71, 58, 103, 40, 72, 73, 46, 49, 49, 72, 81, 79, 63, 77, 59, 67, 95, 81, 91, 95, 53, 59, 80, 81, 73, 59, 36, 62, 63, 81, 42, 64, 65, 47, 80, 92, 58, 55, 113, 58, 61, 74, 91, 93, 106, 135, 68, 53, 47, 87, 64, 78, 68, 55, 56, 63, 56, 53, 74, 70, 42, 80, 45, 62, 44, 62, 45, 74, 62, 61, 51, 53, 66, 51, 66, 66, 63, 70, 66, 64, 62, 128, 62, 91, 67, 58, 57, 93, 86, 67, 51, 64, 81, 59, 65, 53, 78, 63, 93, 38, 74, 65, 51, 70, 47, 54, 75, 56, 67, 79, 51, 48, 66, 80, 46, 62, 73, 69, 81, 67, 53, 103, 73, 74, 74, 65, 55, 57, 45, 79, 63, 85, 62, 80, 67, 76, 58, 33, 74, 72, 73, 76, 83, 78, 67, 62, 51, 62, 50, 98, 59, 66, 74, 48, 73, 54, 44, 45, 58, 69, 69, 53, 54, 110, 46, 97, 74, 53, 54, 59, 69, 46, 51, 48, 70, 48, 53, 57, 86, 41, 52, 65, 64, 56, 77, 78, 59, 38, 85, 76, 64, 55, 55, 65, 70, 44, 78, 62, 79, 53, 68, 119, 60, 64, 55, 69, 56, 131, 48, 64, 81, 50, 72, 89, 79, 46, 60, 89, 75, 72, 77, 67, 74, 54, 67, 80, 67, 37, 73, 52, 61, 89, 81, 70, 74, 51, 54, 62, 60, 86, 54, 80, 47, 65, 52, 132, 66, 65, 74, 83, 54, 52, 55, 73, 51, 64, 91, 75, 66, 56, 71, 63, 62, 140, 55, 59, 60, 75, 64, 104, 83, 66, 47, 52, 62, 64, 41, 62, 77, 63, 90, 67, 42, 74, 79, 67, 53, 53, 57, 56, 52, 80, 74, 112, 44, 46, 46, 75, 61, 87, 75, 58, 105, 56, 74, 64, 67, 56, 69, 69, 75, 55, 52, 57, 68, 76, 70, 68, 83, 59, 75, 47, 44, 52, 51, 101, 67, 75, 61, 62, 51, 65, 35, 46, 74, 58, 69, 68, 67, 74, 63, 60, 41, 81, 52, 58, 57, 65, 78, 51, 69, 66, 63, 48, 74, 70, 60, 84, 60, 69, 67, 60, 100, 66, 49, 95, 59, 55, 50, 63, 100, 46, 44, 64, 66, 56, 65, 64, 53, 50, 83, 80, 100, 59, 73, 81, 50, 92, 84, 69, 72, 74, 78, 105, 75, 83, 100, 85, 51, 75, 46, 69, 56, 58, 73, 65, 51, 84, 58, 68, 105, 93, 63, 61, 59, 76, 60, 83, 60, 71, 56, 66, 67, 71, 64, 74, 79, 47, 85, 70, 60, 40, 66, 96, 52, 88, 40, 73, 63, 98, 85, 61, 70, 45, 58, 79, 62, 97, 39, 79, 56, 94, 81, 72, 73, 60, 66, 51, 59, 78, 53, 88, 69, 70, 81, 50, 85, 72, 80, 115, 98, 50, 59, 40, 54, 57, 83, 72, 97, 60, 84, 110, 49, 45, 92, 69, 54, 46, 55, 57, 46, 87, 71, 66, 110, 56, 56, 57, 60, 53, 62, 47, 60, 62, 57, 63, 82, 70, 56, 66, 100, 58, 77, 67, 43, 55, 62, 47, 68, 47, 44, 70, 58, 74, 46, 79, 64, 58, 72, 60, 75, 57, 61, 72, 44, 67, 67, 54, 76, 58, 60, 150, 82, 48, 35, 82, 73, 101, 65, 83, 69, 65, 70, 31, 52, 94, 59, 73, 77, 42, 53, 83, 76, 70, 57, 48, 74, 79, 60, 82, 50, 102, 87, 68, 43, 77, 55, 75, 74, 57, 71, 87, 41, 64, 49, 68, 77, 59, 59, 72, 75, 66, 72, 57, 84, 60, 60, 51, 73, 43, 106, 87, 74, 61, 55, 66, 58, 98, 60, 70, 53, 83, 39, 75, 62, 69, 65, 94, 51, 53, 69, 69, 80, 50, 59, 87, 78, 67, 60, 51, 77, 59, 68, 78, 97, 77, 58, 63, 83, 48, 66, 52, 87, 70, 60, 53, 68, 65, 70, 60, 76, 87, 103, 54, 50, 64, 44, 92, 72, 54, 73, 51, 33, 48, 93, 83, 56, 54, 67, 79, 47, 61, 47, 73, 37, 48, 68, 70, 63, 54, 72, 52, 73, 66, 65, 58, 81, 86, 66, 76, 46, 64, 95, 76, 94, 58, 64, 54, 96, 86, 51, 49, 52, 91, 44, 71, 76, 68, 91, 51, 50, 45, 70, 87, 64, 32, 70, 71, 74, 55, 77, 63, 103, 57, 62, 81, 60, 64, 69, 83, 69, 46, 102, 85, 54, 58, 69, 48, 99, 59, 72, 58, 66, 44, 61, 64, 50, 70, 77, 68, 36, 85, 70, 89, 50, 71, 63, 74, 90, 39, 48, 50, 76, 43, 72, 69, 89, 90, 48, 56, 69, 92, 54, 55, 71, 64, 52, 52, 68, 73, 50, 66, 61, 78, 113, 58, 67, 51, 66, 79, 80, 51, 55, 67, 90, 59, 67, 58, 59, 67, 76, 65, 48, 73, 62, 36, 48, 82, 68, 71, 57, 60, 68, 60, 69, 62, 48, 75, 61, 50, 52, 65, 66, 51, 58, 57, 63, 91, 59, 48, 79, 60, 63, 73, 69, 68, 55, 60, 57, 61, 63, 55, 49, 53, 59, 47, 56, 62, 70, 80, 61, 61, 65, 83, 76, 62, 39, 59, 62, 73, 78, 71, 57, 74, 65, 82, 74, 62, 50, 59, 67, 62, 116, 49, 61, 60, 82, 68, 94, 64, 46, 51, 65, 72, 124, 73, 72, 67, 58, 53, 81, 65, 82, 78, 52, 71, 58, 71, 74, 62, 57, 86, 85, 59, 73, 102, 62, 54, 73, 71, 111, 55, 65, 61, 63, 74, 46, 62, 57, 67, 65, 62, 77, 38, 45, 58, 78, 81, 51, 81, 58, 77, 82, 61, 58, 61, 62, 65, 93, 82, 70, 59, 46, 67, 60, 52, 87, 81, 87, 59, 79, 51, 48, 49, 72, 57, 54, 84, 44, 75, 84, 75, 46, 61, 59, 53, 58, 88, 71, 64, 49, 56, 60, 78, 66, 76, 63, 50, 63, 62, 52, 73, 66, 69, 66, 56, 52, 47, 80, 102, 87, 63, 59, 67, 66, 77, 69, 59, 67, 67, 65, 81, 74, 50, 75, 63, 58, 123, 56, 88, 67, 62, 53, 68, 66, 70, 61, 60, 69, 58, 58, 60, 70, 87, 67, 76, 49, 59, 54, 93, 66, 64, 55, 81, 73, 58, 100, 61, 64, 35, 102, 57, 59, 66, 64, 66, 39, 75, 45, 65, 53, 57, 58, 62, 43, 59, 83, 57, 60, 66, 67, 75, 31, 50, 65, 52, 85, 68, 93, 108, 66, 62, 62, 56, 77, 84, 61, 57, 78, 62, 62, 79, 50, 57, 54, 51, 73, 81, 80, 72, 65, 91, 75, 73, 79, 69, 64, 65, 72, 63, 94, 77, 67, 74, 61, 61, 71, 42, 72, 79, 69, 58, 62, 63, 56, 61, 59, 66, 85, 58, 51, 60, 51, 53, 60, 65, 47, 46, 61, 62, 62, 76, 60, 84, 54, 64, 62, 66, 55, 77, 54, 68, 63, 99, 62, 76, 54, 77, 56, 81, 48, 71, 62, 70, 49, 64, 68, 68, 96, 70, 55, 72, 72, 69, 64, 68, 76, 62, 73, 70, 53, 76, 59, 56, 72, 74, 69, 63, 63, 121, 71, 89, 71, 65, 57, 71, 66, 68, 63, 49, 65, 59, 45, 63, 36, 60, 50, 54, 54, 61, 61, 50, 54, 60, 74, 75, 56, 56, 63, 64, 67, 57, 72, 72, 84, 62, 51, 44, 66, 77, 66, 69, 79, 58, 61, 102, 68, 63, 71, 55, 67, 76, 68, 62, 66, 66, 76, 70, 65, 55, 61, 77, 80, 91, 59, 94, 46, 79, 72, 60, 54, 61, 68, 75, 63, 71, 70, 61, 64, 49, 78, 52, 58, 44, 60, 84, 70, 63, 66, 59, 71, 69, 64, 48, 66, 76, 41, 81, 64, 61, 79, 59, 85, 65, 51, 70, 95, 72, 65, 52, 55, 44, 74, 52, 99, 69, 68, 57, 77, 87, 55, 60, 67, 60, 67, 74, 52, 60, 79, 72, 49, 77, 54, 69, 53, 66, 70, 50, 67, 84, 71, 68, 62, 71, 63, 85, 88, 101, 51, 58, 60, 51, 66, 54, 52, 65, 36, 51, 58, 69, 78, 63, 75, 57, 62, 63, 67, 74, 68, 59, 88, 68, 61, 72, 52, 62, 94, 79, 69, 54, 29, 80, 94, 59, 59, 61, 71, 76, 55, 73, 51, 62, 70, 66, 58, 62, 70, 66, 56, 75, 75, 61, 64, 61, 118, 83, 63, 70, 93, 67, 68, 59, 63, 60, 67, 40, 73, 61, 62, 74, 81, 54, 55, 61, 124, 71, 56, 84, 70, 59, 58, 88, 76, 52, 62, 60, 51, 61, 55, 59, 55, 70, 65, 50, 69, 55, 61, 57, 75, 58, 74, 47, 63, 49, 56, 85, 36, 77, 82, 113, 76, 82, 50, 75, 80, 69, 76, 72, 48, 66, 61, 51, 50, 58, 66, 79, 71, 57, 56, 63, 73, 58, 60, 62, 67, 61, 55, 50, 50, 76, 68, 66, 75, 64, 61, 66, 61, 60, 69, 88, 46, 65, 54, 66, 71, 33, 68, 57, 52, 80, 91, 101, 61, 63, 67, 85, 91, 44, 67, 66, 61, 58, 53, 57, 47, 74, 91, 40, 55, 54, 72, 73, 65, 68, 57, 83, 64, 72, 77, 75, 69, 87, 70, 74, 71, 49, 52, 81, 68, 51, 63, 54, 49, 98, 57, 64, 61, 71, 59, 63, 88, 73, 64, 72, 68, 57, 76, 73, 94, 78, 66, 57, 94, 72, 59, 60, 59, 63, 61, 66, 53, 67, 59, 38, 69, 63, 83, 80, 55, 62, 65, 55, 89, 75, 59, 83, 65, 57, 67, 58, 62, 73, 56, 57, 73, 79, 54, 61, 58, 61, 96, 68, 65, 56, 67, 53, 70, 87, 62, 72, 68, 81, 76, 43, 53, 61, 67, 57, 112, 53, 67, 52, 58, 59, 63, 64, 75, 57, 66, 67, 60, 53, 60, 78, 63, 63, 52, 66, 48, 85, 55, 55, 63, 74, 71, 78, 34, 105, 80, 78, 53, 58, 65, 60, 62, 60, 53, 61, 58, 77, 57, 81, 52, 36, 66, 77, 48, 64, 51, 88, 70, 59, 52, 64, 50, 63, 88, 49, 71, 63, 67, 65, 58, 54, 58, 60, 71, 73, 59, 81, 62, 56, 66, 71, 54, 77, 46, 77, 55, 73, 62, 41, 55, 63, 68, 62, 69, 56, 70, 62, 93, 62, 54, 62, 69, 58, 91, 138, 75, 55, 56, 85, 72, 65, 63, 54, 58, 70, 64, 57, 74, 77, 68, 60, 71, 75, 99, 53, 60, 61, 55, 63, 67, 55, 58, 60, 83, 80, 56, 61, 63, 62, 97, 66, 105, 72, 67, 63, 69, 57, 67, 74, 71, 65, 63, 80, 76, 62, 49, 71, 56, 56, 52, 50, 81, 68, 66, 77, 73, 55, 83, 56, 48, 58, 152, 58, 56, 62, 79, 72, 70, 43, 66, 82, 59, 70, 46, 72, 48, 55, 77, 51, 106, 56, 65, 71, 53, 64, 73, 42, 63, 66, 58, 70, 89, 65, 61, 49, 52, 75, 87, 49, 74, 59, 72, 59, 81, 62, 61, 53, 93, 61, 66, 83, 47, 56, 68, 83, 67, 69, 87, 39, 62, 67, 74, 83, 60, 52, 76, 50, 104, 42, 68, 59, 64, 72, 60, 69, 63, 85, 63, 71, 56, 80, 57, 78, 72, 60, 75, 58, 50, 64, 65, 55, 50, 105, 67, 63, 79, 39, 83, 46, 63, 57, 63, 72, 72, 73, 60, 54, 73, 46, 75, 82, 72, 61, 83, 88, 55, 58, 85, 70, 74, 65, 82, 66, 79, 56, 67, 56, 66, 78, 45, 61, 62, 63, 49, 62, 57, 82, 93, 71, 45, 71, 54, 70, 71, 67, 63, 86, 55, 40, 61, 50, 56, 80, 77, 51, 39, 68, 55, 65, 52, 56, 82, 89, 60, 50, 58, 57, 63, 71, 50, 48, 56, 68, 77, 48, 64, 62, 71, 59, 75, 67, 58, 68, 54, 65, 65, 59, 70, 63, 83, 68, 69, 65, 72, 75, 55, 62, 40, 75, 61, 71, 68, 55, 57, 87, 55, 75, 61, 57, 66, 56, 78, 88, 66, 68, 131, 65, 69, 70, 53, 68, 68, 80, 84, 72, 67, 56, 53, 81, 60, 67, 77, 86, 63, 81, 73, 87, 64, 48, 80, 63, 69, 70, 85, 57, 58, 71, 82, 90, 66, 61, 52, 70, 63, 49, 61, 48, 69, 48, 61, 72, 49, 59, 50, 56, 48, 48, 66, 58, 62, 73, 78, 56, 67, 87, 87, 65, 73, 64, 67, 63, 69, 50, 86, 79, 69, 68, 62, 58, 50, 66, 57, 71, 69, 45, 45, 61, 80, 49, 63, 69, 69, 87, 77, 57, 54, 65, 148, 62, 60, 65, 78, 55, 82, 96, 76, 89, 86, 63, 45, 55, 51, 87, 68, 66, 46, 75, 55, 66, 84, 97, 62, 73, 65, 62, 93, 61, 69, 69, 58, 69, 79, 57, 79, 52, 77, 69, 53, 59, 61, 61, 60, 69, 68, 69, 60, 84, 63, 42, 65, 55, 65, 61, 88, 59, 70, 62, 86, 55, 58, 66, 59, 60, 90, 45, 64, 60, 54, 56, 68, 67, 60, 65, 54, 88, 61, 62, 61, 65, 80, 81, 54, 52, 58, 57, 71, 66, 62, 44, 47, 66, 52, 48, 83, 62, 52, 64, 54, 48, 55, 53, 51, 97, 61, 58, 76, 75, 68, 64, 62, 105, 55, 44, 61, 55, 88, 87, 59, 57, 93, 73, 48, 70, 74, 73, 83, 61, 81, 49, 64, 53, 51, 64, 58, 61, 66, 53, 79, 61, 66, 56, 51, 56, 80, 82, 70, 41, 79, 71, 44, 115, 75, 69, 58, 58, 74, 71, 68, 67, 60, 49, 63, 76, 64, 81, 68, 47, 52, 48, 56, 50, 66, 61, 62, 67, 63, 70, 90, 64, 78, 71, 73, 57, 72, 53, 78, 57, 65, 84, 74, 85, 70, 55, 84, 69, 64, 77, 62, 72, 79, 57, 47, 92, 62, 66, 50, 46, 86, 88, 57, 62, 57, 73, 48, 55, 50, 77, 57, 56, 82, 66, 78, 56, 74, 68, 43, 53, 68, 63, 73, 65, 62, 64, 71, 54, 51, 68, 72, 69, 52, 75, 65, 98, 93, 75, 59, 31, 75, 59, 47, 71, 60, 60, 70, 117, 65, 72, 74, 147, 98, 54, 76, 58, 65, 84, 66, 60, 58, 82, 64, 72, 61, 83, 84, 73, 54, 48, 59, 69, 83, 61, 61, 76, 64, 100, 63, 69, 73, 60, 58, 42, 61, 61, 64, 77, 63, 65, 56, 83, 47, 61, 61, 90, 53, 77, 54, 60, 59, 71, 73, 67, 69, 66, 63, 72, 78, 37, 91, 69, 67, 53, 58, 86, 77, 49, 69, 82, 51, 50, 51, 79, 74, 65, 62, 54, 58, 60, 44, 105, 61, 72, 73, 43, 71, 91, 58, 55, 64, 60, 82, 80, 59, 70, 98, 63, 54, 66, 64, 55, 83, 66, 68, 66, 77, 58, 60, 76, 52, 73, 68, 63, 74, 64, 70, 60, 66, 58, 57, 65, 73, 79, 68, 67, 63, 64, 103, 58, 79, 51, 51, 56, 57, 46, 66, 77, 61, 62, 56, 66, 55, 61, 102, 51, 64, 52, 71, 58, 53, 49, 69, 56, 67, 56, 91, 80, 69, 51, 78, 68, 54, 50, 68, 78, 73, 70, 62, 157, 57, 70, 64, 65, 84, 77, 75, 66, 57, 51, 58, 59, 48, 71, 74, 51, 71, 67, 76, 58, 86, 82, 62, 58, 65, 70, 65, 82, 58, 64, 58, 67, 66, 80, 41, 64, 87, 75, 89, 38, 67, 90, 49, 71, 49, 54, 79, 56, 77, 73, 67, 57, 71, 59, 57, 70, 67, 54, 56, 90, 73, 64, 82, 66, 65, 63, 72, 65, 69, 69, 82, 68, 74, 49, 69, 56, 112, 54, 60, 48, 49, 53, 74, 68, 45, 53, 63, 69, 83, 64, 74, 64, 61, 58, 61, 59, 63, 64, 53, 63, 51, 47, 74, 69, 66, 62, 67, 65, 69, 50, 76, 85, 46, 70, 52, 48, 63, 56, 52, 71, 76, 81, 55, 60, 74, 64, 57, 55, 64, 54, 60, 100, 76, 75, 65, 69, 64, 62, 67, 77, 80, 74, 55, 54, 42, 64, 62, 93, 57, 46, 61, 82, 87, 72, 67, 74, 55, 59, 46, 64, 53, 72, 76, 68, 81, 70, 114, 70, 62, 74, 56, 63, 49, 67, 59, 51, 67, 74, 71, 58, 61, 55, 66, 60, 73, 54, 46, 54, 61, 101, 67, 55, 80, 65, 92, 68, 67, 65, 77, 58, 69, 63, 57, 74, 98, 51, 51, 69, 79, 83, 52, 72, 75, 76, 47, 48, 74, 53, 71, 65, 62, 51, 81, 80, 109, 64, 70, 49, 69, 76, 64, 62, 92, 62, 54, 69, 72, 72, 53, 63, 75, 69, 49, 85, 75, 57, 63, 65, 101, 69, 59, 71, 50, 54, 65, 67, 78, 82, 61, 58, 57, 55, 85, 67, 63, 67, 54, 89, 68, 65, 78, 77, 102, 58, 77, 69, 63, 48, 77, 82, 52, 69, 59, 58, 68, 89, 54, 60, 52, 55, 53, 40, 77, 70, 56, 43, 52, 60, 56, 74, 60, 82, 51, 68, 52, 66, 62, 78, 53, 66, 69, 72, 74, 57, 69, 84, 63, 92, 61, 59, 46, 53, 86, 54, 53, 54, 100, 46, 103, 58, 60, 70, 55, 52, 74, 80, 51, 79, 50, 63, 66, 69, 53, 74, 112, 78, 63, 51, 67, 80, 55, 70, 62, 72, 115, 56, 49, 76, 68, 54, 53, 76, 58, 69, 72, 48, 62, 60, 87, 85, 64, 53, 65, 69, 66, 69, 72, 73, 44, 101, 60, 97, 75, 62, 66, 59, 60, 48, 56, 76, 62, 83, 60, 63, 56, 55, 94, 112, 44, 52, 57, 72, 44, 74, 94, 72, 54, 52, 54, 66, 64, 71, 57, 60, 73, 65, 72, 72, 68, 74, 63, 62, 78, 90, 59, 60, 72, 79, 51, 61, 73, 57, 67, 54, 62, 51, 76, 91, 93, 76, 96, 62, 67, 44, 55, 70, 64, 57, 76, 94, 64, 58, 60, 66, 52, 59, 61, 59, 58, 64, 51, 81, 56, 93, 68, 65, 62, 87, 51, 62, 75, 66, 60, 54, 65, 70, 79, 67, 55, 73, 63, 58, 40, 75, 60, 87, 57, 56, 73, 63, 73, 67, 55, 70, 49, 62, 65, 61, 68, 106, 51, 63, 173, 66, 61, 54, 67, 86, 65, 64, 60, 53, 57, 69, 48, 82, 57, 66, 76, 60, 52, 67, 67, 82, 90, 62, 77, 54, 66, 36, 87, 56, 49, 58, 52, 52, 56, 58, 89, 70, 81, 59, 58, 59, 52, 85, 66, 57, 69, 68, 70, 59, 66, 63, 81, 31, 60, 54, 63, 102, 69, 71, 55, 69, 72, 69, 92, 53, 73, 68, 62, 53, 55, 55, 69, 49, 57, 66, 44, 54, 69, 55, 75, 49, 71, 67, 72, 63, 75, 58, 55, 53, 64, 72, 117, 46, 60, 53, 66, 73, 38, 70, 65, 56, 72, 64, 54, 65, 62, 65, 44, 74, 57, 50, 69, 67, 81, 87, 68, 51, 60, 51, 58, 70, 66, 52, 69, 57, 110, 90, 70, 46, 77, 55, 70, 77, 59, 70, 52, 58, 50, 70, 64, 61, 74, 62, 89, 68, 90, 62, 108, 74, 53, 60, 98, 58, 52, 65, 66, 73, 63, 95, 57, 48, 71, 53, 87, 67, 50, 66, 74, 84, 48, 61, 82, 61, 87, 63, 61, 74, 60, 55, 69, 53, 59, 48, 51, 71, 61, 32, 59, 62, 48, 56, 97, 61, 59, 88, 51, 44, 80, 48, 66, 61, 66, 65, 47, 66, 68, 56, 65, 54, 62, 96, 51, 74, 67, 70, 67, 73, 77, 93, 95, 77, 61, 70, 62, 62, 59, 59, 58, 50, 39, 51, 94, 62, 78, 73, 69, 67, 91, 59, 59, 76, 72, 47, 72, 63, 58, 81, 34, 61, 65, 79, 65, 58, 52, 48, 59, 63, 59, 68, 70, 50, 56, 67, 71, 59, 63, 85, 59, 79, 58, 74, 113, 57, 65, 65, 59, 65, 77, 44, 54, 71, 66, 56, 64, 55, 49, 56, 90, 83, 46, 77, 68, 88, 79, 75, 59, 91, 57, 30, 70, 60, 59, 78, 79, 58, 68, 61, 86, 65, 61, 69, 73, 45, 77, 77, 74, 64, 69, 67, 57, 62, 45, 73, 67, 73, 62, 66, 54, 60, 60, 72, 73, 58, 61, 72, 61, 99, 46, 93, 47, 61, 55, 62, 64, 69, 48, 70, 79, 101, 87, 35, 69, 64, 75, 51, 70, 70, 81, 93, 51, 54, 72, 62, 60, 58, 85, 71, 64, 67, 94, 45, 68, 53, 73, 70, 60, 38, 76, 63, 75, 63, 64, 67, 67, 86, 65, 60, 69, 62, 67, 60, 76, 80, 52, 91, 67, 85, 118, 67, 53, 57, 72, 70, 64, 52, 69, 60, 74, 45, 39, 56, 60, 63, 96, 72, 59, 58, 88, 60, 50, 51, 60, 60, 58, 99, 54, 63, 83, 75, 52, 60, 65, 71, 47, 65, 89, 48, 67, 80, 90, 54, 47, 66, 59, 47, 64, 64, 65, 58, 50, 61, 51, 63, 81, 64, 56, 68, 64, 59, 55, 58, 75, 58, 72, 48, 49, 63, 82, 64, 56, 56, 58, 40, 65, 66, 78, 82, 58, 58, 70, 49, 72, 66, 63, 67, 55, 63, 77, 71, 60, 67, 76, 76, 69, 71, 90, 46, 66, 87, 77, 58, 83, 37, 72, 71, 72, 38, 71, 87, 89, 63, 72, 84, 56, 43, 56, 60, 71, 84, 61, 60, 59, 71, 68, 62, 68, 75, 55, 69, 55, 72, 60, 65, 69, 87, 76, 66, 63, 85, 64, 45, 61, 84, 73, 62, 68, 50, 48, 56, 90, 64, 53, 63, 75, 74, 60, 68, 61, 68, 55, 62, 57, 57, 54, 62, 56, 56, 61, 63, 68, 55, 61, 67, 67, 47, 57, 79, 65, 67, 63, 63, 85, 74, 72, 77, 57, 55, 75, 65, 63, 86, 54, 72, 63, 59, 64, 55, 102, 70, 76, 69, 55, 49, 64, 67, 59, 57, 58, 79, 60, 46, 65, 48, 69, 49, 60, 63, 80, 83, 71, 63, 99, 73, 75, 55, 51, 96, 98, 66, 67, 76, 78, 69, 53, 68, 61, 56, 63, 59, 63, 69, 67, 73, 88, 73, 53, 60, 59, 63, 64, 46, 65, 158, 51, 56, 75, 55, 66, 89, 54, 73, 101, 50, 56, 71, 61, 68, 112, 85, 70, 60, 79, 61, 72, 56, 62, 63, 55, 61, 75, 54, 46, 87, 70, 54, 64, 63, 75, 72, 70, 69, 72, 69, 57, 59, 54, 45, 89, 83, 65, 41, 85, 79, 68, 62, 60, 69, 40, 41, 60, 80, 48, 52, 53, 77, 64, 59, 66, 65, 88, 78, 61, 49, 50, 92, 76, 66, 67, 54, 77, 66, 61, 69, 68, 49, 56, 82, 56, 57, 68, 63, 82, 51, 52, 59, 66, 67, 63, 60, 61, 83, 44, 57, 63, 63, 67, 90, 93, 66, 84, 64, 87, 73, 47, 64, 78, 63, 56, 68, 70, 95, 63, 57, 58, 51, 69, 86, 61, 61, 76, 54, 77, 50, 69, 53, 80, 64, 64, 52, 71, 61, 116, 51, 97, 72, 60, 50, 56, 38, 77, 75, 74, 78, 54, 54, 104, 86, 76, 41, 65, 56, 66, 78, 74, 70, 72, 47, 88, 61, 52, 85, 49, 60, 63, 75, 67, 54, 90, 66, 76, 44, 64, 52, 85, 91, 62, 69, 113, 93, 56, 51, 66, 72, 78, 50, 59, 73, 61, 67, 57, 65, 121, 81, 50, 43, 54, 67, 64, 65, 68, 53, 66, 102, 61, 45, 66, 72, 101, 78, 67, 55, 60, 65, 51, 68, 71, 51, 90, 56, 53, 95, 61, 76, 78, 41, 56, 57, 79, 62, 67, 64, 96, 60, 77, 48, 57, 81, 64, 55, 76, 51, 73, 67, 64, 64, 46, 96, 80, 58, 85, 59, 62, 50, 72, 60, 69, 66, 75, 90, 73, 55, 60, 89, 79, 41, 80, 59, 67, 49, 61, 89, 57, 53, 68, 66, 68, 55, 65, 68, 56, 64, 59, 62, 56, 55, 72, 50, 85, 55, 85, 44, 52, 49, 57, 73, 67, 54, 62, 56, 56, 74, 72, 61, 63, 46, 79, 42, 84, 43, 63, 56, 76, 52, 98, 54, 60, 51, 53, 62, 80, 69, 60, 146, 74, 90, 55, 42, 65, 82, 59, 79, 51, 105, 65, 46, 56, 63, 66, 60, 55, 71, 48, 53, 70, 48, 95, 70, 70, 67, 78, 60, 67, 66, 44, 75, 91, 63, 59, 49, 56, 68, 75, 48, 70, 52, 62, 53, 53, 64, 85, 63, 120, 50, 52, 71, 64, 41, 66, 57, 48, 65, 68, 56, 73, 49, 60, 60, 98, 51, 60, 77, 59, 73, 52, 82, 66, 58, 70, 90, 92, 88, 66, 45, 94, 89, 111, 49, 81, 75, 57, 84, 39, 69, 62, 49, 41, 68, 49, 50, 65, 71, 56, 88, 78, 55, 67, 53, 52, 68, 55, 57, 58, 56, 63, 40, 37, 43, 56, 60, 36, 58, 57, 56, 55, 65, 68, 39, 56, 80, 91, 49, 42, 89, 79, 92, 57, 72, 102, 63, 71, 54, 73, 81, 68, 46, 44, 49, 75, 53, 55, 66, 72, 47, 82, 103, 57, 58, 58, 68, 63, 67, 64, 81, 92, 62, 90, 73, 69, 41, 66, 74, 81, 60, 77, 61, 53, 77, 84, 72, 102, 81, 50, 60, 61, 65, 56, 56, 62, 81, 78, 107, 57, 101, 60, 51, 64, 161, 59, 55, 62, 68, 57, 64, 68, 68, 86, 74, 63, 73, 54, 53, 63, 70, 67, 40, 68, 75, 56, 64, 74, 93, 68, 70, 63, 75, 57, 58, 58, 60, 71, 61, 56, 65, 60, 42, 70, 53, 73, 58, 66, 72, 73, 97, 62, 53, 54, 57, 93, 85, 57, 72, 69, 53, 58, 55, 44, 43, 54, 67, 69, 57, 70, 51, 69, 77, 59, 64, 60, 54, 56, 52, 45, 54, 57, 73, 74, 71, 51, 46, 68, 63, 110, 40, 63, 49, 58, 63, 48, 59, 49, 50, 86, 51, 75, 54, 65, 73, 65, 63, 74, 65, 72, 69, 67, 49, 51, 68, 101, 56, 54, 51, 66, 35, 94, 76, 62, 90, 58, 46, 57, 52, 66, 64, 81, 72, 70, 88, 76, 63, 51, 60, 85, 71, 76, 71, 51, 90, 63, 65, 52, 65, 67, 70, 55, 54, 50, 53, 58, 64, 56, 63, 77, 58, 69, 59, 51, 70, 89, 42, 68, 73, 66, 57, 80, 48, 89, 67, 57, 77, 84, 66, 51, 56, 72, 69, 73, 56, 59, 53, 54, 47, 55, 65, 63, 88, 60, 49, 86, 63, 69, 53, 62, 53, 75, 53, 68, 57, 64, 83, 66, 56, 58, 69, 62, 54, 66, 59, 75, 75, 49, 64, 54, 46, 60, 74, 57, 86, 80, 77, 56, 62, 47, 46, 69, 65, 58, 53, 60, 82, 66, 66, 62, 64, 72, 62, 52, 57, 63, 57, 90, 60, 111, 52, 65, 41, 59, 66, 54, 68, 87, 66, 76, 74, 57, 64, 66, 66, 59, 60, 92, 46, 51, 53, 64, 73, 66, 58, 58, 48, 45, 71, 52, 54, 47, 55, 65, 76, 63, 87, 61, 51, 53, 61, 61, 66, 74, 75, 36, 52, 58, 64, 73, 47, 66, 74, 71, 55, 65, 54, 50, 47, 68, 60, 66, 39, 74, 68, 63, 50, 62, 61, 81, 70, 54, 65, 66, 62, 85, 69, 57, 77, 55, 85, 61, 75, 79, 115, 56, 57, 47, 53, 70, 70, 75, 62, 53, 75, 57, 66, 80, 80, 59, 35, 57, 66, 72, 63, 63, 62, 57, 61, 47, 70, 48, 66, 76, 79, 42, 55, 75, 56, 46, 78, 76, 82, 89, 61, 51, 58, 57, 75, 72, 56, 101, 63, 71, 60, 77, 62, 61, 67, 43, 67, 84, 119, 74, 66, 75, 101, 74, 69, 44, 66, 63, 71, 55, 84, 69, 80, 51, 64, 68, 74, 70, 69, 62, 63, 65, 66, 74, 89, 56, 72, 58, 55, 67, 74, 71, 43, 54, 57, 77, 54, 68, 77, 84, 58, 90, 63, 55, 71, 59, 59, 52, 60, 54, 49, 66, 55, 75, 80, 47, 88, 83, 70, 60, 49, 52, 65, 74, 48, 67, 63, 87, 71, 69, 61, 72, 59, 61, 51, 72, 67, 115, 57, 68, 70, 59, 58, 75, 57, 76, 58, 125, 84, 66, 56, 78, 76, 46, 82, 81, 67, 66, 67, 79, 68, 68, 52, 70, 59, 66, 84, 55, 64, 55, 66, 69, 49, 63, 50, 49, 59, 55, 51, 69, 92, 73, 80, 58, 52, 83, 90, 67, 63, 68, 77, 52, 74, 102, 50, 70, 70, 61, 55, 58, 77, 66, 55, 79, 51, 66, 65, 62, 67, 73, 92, 76, 73, 62, 88, 118, 63, 59, 78, 70, 45, 91, 61, 64, 59, 60, 63, 78, 51, 66, 64, 77, 77, 55, 57, 54, 60, 41, 86, 60, 39, 109, 63, 41, 66, 77, 74, 78, 49, 70, 64, 51, 84, 72, 47, 68, 70, 68, 76, 76, 82, 68, 45, 85, 61, 76, 65, 94, 54, 116, 87, 58, 43, 71, 66, 64, 54, 73, 77, 92, 69, 68, 75, 61, 45, 61, 69, 56, 71, 56, 82, 93, 83, 49, 68, 54, 44, 104, 57, 52, 80, 51, 54, 48, 122, 44, 71, 85, 82, 69, 52, 57, 50, 69, 52, 68, 49, 33, 66, 63, 66, 56, 64, 59, 80, 59, 61, 68, 75, 56, 48, 57, 77, 80, 60, 82, 57, 49, 70, 70, 60, 55, 59, 62, 71, 71, 65, 62, 65, 78, 81, 50, 66, 59, 72, 58, 76, 50, 59, 82, 61, 70, 72, 55, 51, 70, 79, 49, 60, 58, 73, 78, 81, 73, 77, 73, 73, 128, 75, 67, 66, 48, 56, 77, 56, 58, 137, 78, 67, 58, 67, 52, 53, 69, 55, 69, 35, 64, 61, 71, 69, 135, 53, 66, 77, 65, 67, 61, 56, 62, 57, 58, 61, 72, 68, 61, 39, 67, 59, 82, 64, 54, 66, 71, 62, 62, 49, 38, 57, 58, 83, 68, 98, 57, 81, 49, 74, 77, 79, 84, 72, 47, 60, 92, 63, 64, 68, 46, 76, 77, 55, 72, 50, 86, 59, 48, 72, 68, 79, 62, 57, 89, 65, 59, 77, 92, 65, 85, 63, 68, 99, 57, 57, 57, 71, 58, 78, 89, 52, 65, 89, 43, 56, 77, 71, 71, 63, 71, 56, 71, 57, 65, 74, 66, 71, 58, 59, 45, 64, 65, 58, 68, 98, 116, 63, 60, 58, 63, 75, 70, 51, 75, 48, 68, 78, 61, 70, 59, 44, 49, 47, 70, 63, 55, 56, 94, 87, 57, 61, 70, 70, 75, 81, 58, 82, 80, 49, 110, 42, 74, 79, 62, 70, 74, 68, 50, 71, 53, 45, 75, 46, 87, 73, 43, 84, 67, 57, 77, 45, 66, 71, 50, 50, 78, 58, 109, 71, 62, 39, 47, 53, 60, 82, 95, 57, 39, 60, 95, 71, 64, 61, 60, 57, 71, 47, 66, 68, 66, 42, 77, 149, 60, 63, 61, 65, 78, 46, 60, 74, 76, 69, 63, 73, 51, 61, 65, 76, 68, 79, 46, 54, 55, 54, 52, 61, 85, 60, 61, 61, 77, 64, 46, 68, 60, 88, 57, 71, 53, 81, 51, 53, 65, 65, 66, 72, 48, 138, 48, 64, 61, 79, 50, 68, 45, 78, 93, 97, 62, 47, 68, 66, 61, 61, 60, 56, 71, 45, 60, 65, 93, 52, 67, 59, 54, 54, 83, 66, 67, 67, 73, 54, 59, 80, 69, 73, 63, 69, 66, 78, 87, 76, 47, 48, 68, 75, 83, 49, 80, 65, 68, 74, 64, 44, 66, 48, 89, 66, 84, 55, 87, 67, 62, 62, 44, 62, 52, 51, 80, 85, 69, 49, 61, 60, 55, 47, 51, 90, 74, 127, 63, 85, 90, 56, 55, 77, 67, 72, 40, 65, 70, 104, 67, 63, 60, 73, 52, 61, 54, 49, 100, 65, 62, 72, 64, 48, 55, 83, 67, 57, 68, 52, 81, 69, 85, 59, 70, 74, 75, 55, 61, 56, 61, 91, 78, 64, 66, 71, 68, 76, 84, 62, 91, 60, 88, 67, 69, 65, 94, 87, 63, 53, 64, 56, 58, 75, 50, 73, 62, 59, 50, 85, 73, 52, 63, 87, 48, 84, 49, 80, 59, 81, 92, 56, 68, 61, 94, 61, 37, 75, 49, 85, 73, 67, 85, 52, 80, 54, 60, 52, 69, 51, 68, 65, 86, 72, 57, 54, 59, 57, 68, 77, 77, 56, 73, 78, 61, 67, 71, 66, 101, 83, 51, 68, 42, 60, 53, 77, 60, 65, 49, 62, 75, 59, 65, 37, 63, 83, 66, 63, 67, 61, 56, 49, 68, 61, 70, 56, 33, 65, 98, 43, 74, 103, 65, 52, 78, 63, 75, 89, 39, 102, 71, 57, 57, 46, 85, 65, 67, 76, 88, 48, 90, 42, 47, 80, 45, 73, 64, 51, 73, 53, 69, 60, 72, 65, 82, 71, 73, 52, 52, 80, 75, 78, 34, 66, 65, 65, 65, 61, 67, 84, 82, 84, 45, 70, 64, 53, 70, 75, 92, 55, 74, 84, 75, 75, 72, 63, 93, 67, 44, 42, 64, 53, 63, 70, 58, 60, 60, 73, 82, 76, 85, 75, 59, 58, 51, 54, 51, 76, 55, 83, 64, 50, 57, 70, 94, 82, 94, 85, 72, 62, 66, 92, 48, 53, 70, 40, 72, 66, 73, 42, 67, 62, 75, 62, 63, 58, 67, 65, 69, 65, 70, 51, 114, 98, 51, 61, 56, 51, 93, 69, 54, 62, 63, 74, 69, 88, 65, 52, 61, 56, 59, 52, 79, 63, 65, 49, 76, 72, 81, 74, 79, 46, 83, 73, 56, 77, 64, 64, 81, 57, 90, 54, 69, 50, 55, 81, 44, 61, 47, 60, 56, 60, 111, 62, 98, 53, 53, 88, 69, 82, 52, 66, 48, 74, 72, 98, 49, 38, 55, 72, 56, 74, 106, 61, 55, 96, 63, 49, 53, 65, 56, 98, 55, 78, 90, 67, 40, 61, 30, 57, 67, 93, 73, 77, 55, 82, 75, 73, 113, 88, 48, 72, 63, 74, 75, 54, 73, 49, 59, 57, 49, 69, 48, 85, 87, 84, 74, 63, 66, 77, 51, 91, 84, 78, 62, 61, 61, 72, 56, 73, 56, 61, 77, 69, 66, 80, 69, 60, 69, 75, 64, 50, 48, 39, 80, 79, 86, 71, 51, 48, 75, 56, 43, 64, 68, 68, 55, 37, 66, 69, 60, 59, 52, 78, 71, 59, 53, 69, 72, 58, 60, 68, 72, 93, 49, 48, 65, 70, 83, 60, 77, 75, 28, 80, 74, 69, 58, 87, 92, 51, 57, 74, 62, 44, 57, 44, 54, 50, 63, 57, 88, 96, 58, 73, 74, 54, 56, 169, 69, 59, 50, 44, 72, 47, 65, 78, 46, 59, 62, 70, 60, 51, 64, 75, 76, 100, 58, 51, 55, 69, 69, 60, 50, 59, 81, 59, 95, 60, 69, 62, 84, 71, 64, 44, 70, 39, 53, 62, 39, 52, 93, 67, 69, 73, 64, 59, 75, 81, 75, 56, 92, 51, 78, 54, 60, 78, 81, 55, 59, 88, 57, 87, 56, 60, 66, 71, 69, 68, 77, 65, 69, 78, 74, 76, 87, 74, 62, 58, 87, 93, 58, 55, 89, 40, 51, 53, 74, 47, 47, 61, 56, 84, 73, 77, 44, 77, 77, 69, 47, 50, 73, 64, 50, 60, 42, 45, 68, 74, 85, 60, 86, 83, 63, 79, 71, 39, 64, 88, 59, 66, 64, 80, 82, 81, 63, 66, 56, 58, 61, 71, 51, 49, 87, 79, 32, 51, 58, 60, 54, 51, 70, 61, 73, 75, 68, 67, 56, 62, 62, 76, 80, 80, 71, 51, 84, 62, 85, 73, 68, 50, 59, 70, 87, 77, 64, 71, 77, 52, 62, 65, 76, 57, 56, 62, 64, 41, 68, 47, 57, 77, 70, 59, 66, 55, 55, 57, 92, 60, 66, 50, 55, 71, 53, 55, 57, 58, 46, 74, 52, 60, 62, 72, 60, 59, 77, 50, 76, 59, 57, 57, 62, 49, 58, 55, 76, 52, 71, 107, 88, 71, 83, 55, 47, 57, 73, 96, 50, 29, 110, 67, 33, 60, 60, 66, 78, 60, 75, 59, 79, 72, 55, 72, 59, 88, 67, 76, 121, 64, 63, 57, 61, 53, 63, 43, 41, 76, 71, 53, 54, 71, 69, 59, 81, 71, 68, 50, 71, 82, 61, 66, 63, 71, 100, 66, 46, 51, 52, 77, 77, 68, 81, 67, 67, 63, 84, 65, 70, 66, 64, 47, 51, 64, 68, 93, 67, 56, 60, 62, 63, 47, 63, 83, 60, 66, 58, 72, 61, 83, 73, 48, 49, 84, 62, 64, 68, 51, 97, 96, 61, 67, 95, 56, 69, 63, 57, 58, 65, 57, 90, 55, 71, 65, 69, 62, 69, 93, 61, 67, 66, 74, 54, 49, 77, 60, 88, 53, 69, 65, 66, 66, 50, 64, 63, 50, 53, 90, 51, 69, 84, 74, 60, 71, 51, 60, 73, 50, 74, 111, 53, 60, 61, 74, 86, 54, 81, 66, 43, 52, 52, 67, 44, 57, 59, 80, 62, 44, 73, 38, 65, 58, 74, 69, 72, 89, 135, 49, 64, 73, 51, 81, 104, 60, 61, 64, 70, 70, 86, 75, 46, 56, 62, 67, 106, 57, 69, 51, 55, 58, 93, 52, 62, 57, 73, 84, 78, 45, 67, 58, 59, 62, 77, 61, 87, 53, 60, 97, 45, 55, 90, 72, 66, 84, 50, 55, 69, 86, 58, 64, 61, 78, 61, 85, 90, 48, 62, 82, 82, 56, 75, 67, 58, 65, 57, 84, 85, 54, 47, 66, 66, 62, 66, 124, 53, 74, 57, 62, 76, 66, 55, 59, 54, 57, 62, 64, 78, 54, 83, 82, 80, 44, 117, 69, 77, 76, 60, 65, 69, 67, 53, 78, 52, 59, 60, 53, 71, 56, 72, 54, 64, 52, 39, 71, 47, 51, 72, 66, 81, 38, 51, 110, 73, 47, 71, 37, 61, 64, 53, 48, 75, 58, 48, 60, 69, 42, 59, 64, 70, 62, 65, 59, 61, 60, 65, 66, 84, 67, 66, 92, 69, 56, 61, 53, 61, 104, 78, 74, 61, 68, 60, 46, 56, 53, 48, 54, 87, 107, 75, 48, 55, 55, 59, 53, 61, 71, 68, 53, 64, 57, 60, 90, 69, 64, 54, 38, 68, 75, 83, 63, 65, 64, 64, 46, 60, 60, 74, 61, 76, 79, 54, 56, 71, 63, 63, 65, 59, 52, 74, 66, 63, 65, 72, 67, 77, 57, 64, 74, 50, 59, 55, 78, 71, 59, 51, 95, 89, 67, 61, 56, 82, 78, 116, 47, 69, 76, 57, 66, 87, 97, 89, 82, 76, 58, 53, 66, 59, 90, 57, 66, 64, 62, 52, 56, 51, 73, 65, 57, 99, 107, 74, 59, 57, 77, 42, 54, 58, 46, 57, 58, 84, 64, 64, 73, 76, 54, 56, 64, 60, 72, 68, 66, 59, 52, 51, 76, 64, 113, 66, 57, 65, 74, 92, 82, 67, 53, 75, 74, 62, 76, 97, 78, 72, 52, 78, 70, 85, 102, 72, 60, 61, 54, 60, 55, 66, 84, 64, 68, 54, 71, 63, 61, 66, 71, 77, 67, 62, 51, 58, 51, 73, 76, 65, 71, 80, 72, 62, 54, 70, 73, 50, 63, 73, 99, 46, 55, 72, 65, 46, 108, 44, 48, 58, 42, 68, 58, 63, 83, 69, 71, 65, 69, 42, 53, 62, 45, 71, 70, 49, 59, 65, 68, 66, 56, 65, 67, 53, 73, 63, 75, 72, 94, 70, 42, 57, 44, 75, 56, 42, 67, 79, 81, 75, 100, 43, 158, 66, 55, 71, 56, 59, 62, 64, 74, 98, 68, 63, 68, 61, 61, 51, 64, 53, 57, 70, 80, 52, 62, 59, 64, 67, 74, 95, 83, 74, 61, 66, 75, 60, 47, 67, 69, 73, 61, 65, 63, 71, 68, 51, 98, 63, 70, 84, 46, 63, 81, 43, 71, 70, 76, 76, 55, 54, 56, 55, 48, 51, 58, 45, 70, 59, 48, 85, 60, 46, 63, 54, 49, 62, 66, 69, 45, 50, 56, 75, 74, 62, 55, 72, 60, 86, 62, 60, 53, 70, 55, 78, 56, 61, 42, 49, 68, 71, 52, 63, 56, 69, 74, 56, 43, 77, 59, 61, 64, 65, 39, 82, 56, 66, 84, 77, 73, 56, 71, 75, 70, 63, 57, 69, 71, 58, 63, 58, 67, 52, 53, 53, 62, 60, 82, 53, 69, 60, 68, 49, 72, 96, 64, 70, 62, 40, 64, 54, 75, 104, 66, 65, 87, 68, 76, 50, 65, 73, 67, 79, 59, 70, 49, 93, 79, 49, 79, 97, 51, 50, 68, 50, 84, 72, 68, 56, 49, 73, 53, 86, 55, 61, 70, 70, 92, 62, 74, 78, 52, 72, 55, 45, 67, 84, 79, 65, 56, 62, 46, 68, 76, 61, 63, 63, 52, 87, 63, 88, 89, 71, 79, 66, 68, 71, 67, 75, 58, 60, 66, 68, 60, 92, 58, 62, 72, 60, 67, 54, 70, 73, 64, 74, 73, 58, 63, 54, 83, 60, 59, 119, 53, 47, 64, 55, 81, 72, 61, 66, 71, 49, 62, 57, 63, 69, 56, 63, 60, 96, 79, 47, 42, 52, 122, 53, 71, 67, 86, 80, 60, 92, 65, 58, 66, 47, 54, 60, 79, 55, 68, 52, 51, 52, 59, 66, 38, 80, 55, 59, 66, 58, 64, 54, 48, 56, 60, 61, 50, 91, 64, 66, 54, 61, 71, 85, 55, 70, 81, 54, 52, 75, 49, 119, 69, 51, 64, 102, 68, 63, 82, 46, 62, 61, 51, 55, 89, 67, 95, 59, 68, 55, 88, 81, 60, 68, 70, 59, 64, 97, 62, 77, 54, 72, 111, 72, 74, 58, 79, 57, 75, 50, 66, 63, 77, 73, 59, 54, 56, 77, 57, 75, 81, 57, 56, 42, 51, 59, 83, 72, 75, 64, 69, 57, 60, 58, 55, 71, 50, 70, 67, 53, 62, 38, 55, 58, 85, 58, 85, 80, 53, 48, 64, 55, 80, 74, 68, 64, 69, 63, 61, 63, 65, 68, 85, 64, 81, 66, 77, 64, 73, 44, 57, 96, 58, 64, 47, 74, 53, 47, 52, 53, 57, 76, 141, 52, 55, 59, 65, 55, 56, 67, 67, 73, 73, 58, 59, 62, 114, 58, 78, 67, 65, 49, 81, 75, 68, 48, 46, 49, 61, 60, 63, 47, 67, 70, 83, 41, 46, 84, 80, 88, 58, 68, 98, 69, 64, 66, 73, 61, 67, 55, 73, 63, 53, 75, 46, 72, 68, 76, 59, 43, 67, 77, 92, 71, 71, 65, 60, 51, 62, 72, 52, 77, 59, 69, 72, 66, 71, 55, 59, 55, 85, 64, 51, 41, 52, 46, 63, 85, 64, 59, 72, 74, 56, 69, 78, 79, 53, 66, 76, 109, 111, 47, 62, 57, 56, 53, 60, 64, 65, 44, 65, 66, 59, 57, 85, 66, 84, 71, 78, 63, 55, 75, 69, 61, 49, 58, 57, 56, 74, 80, 51, 61, 54, 93, 53, 87, 79, 86, 70, 63, 79, 58, 65, 56, 50, 73, 84, 103, 112, 88, 36, 79, 59, 55, 72, 63, 55, 53, 75, 65, 77, 66, 79, 84, 61, 66, 50, 57, 59, 53, 44, 78, 85, 86, 68, 66, 70, 75, 56, 69, 91, 108, 52, 53, 69, 61, 74, 69, 88, 62, 65, 60, 65, 77, 95, 62, 65, 51, 61, 82, 89, 68, 61, 50, 47, 81, 67, 43, 76, 54, 59, 57, 61, 60, 54, 55, 77, 80, 56, 69, 81, 82, 64, 60, 52, 71, 47, 57, 71, 78, 55, 84, 81, 66, 76, 92, 42, 52, 86, 64, 103, 98, 87, 62, 75, 84, 55, 59, 63, 79, 78, 32, 100, 55, 59, 63, 69, 83, 62, 75, 76, 66, 75, 57, 55, 38, 76, 61, 68, 65, 73, 57, 58, 55, 76, 97, 66, 71, 71, 80, 88, 72, 70, 96, 70, 69, 71, 62, 62, 64, 58, 51, 81, 58, 53, 90, 69, 65, 80, 83, 82, 62, 76, 76, 63, 76, 82, 59, 61, 78, 84, 79, 44, 66, 51, 48, 72, 80, 68, 93, 71, 37, 66, 65, 61, 93, 64, 64, 61, 77, 57, 68, 61, 58, 49, 76, 48, 60, 86, 54, 62, 58, 86, 68, 67, 58, 67, 42, 69, 50, 51, 59, 74, 57, 66, 75, 53, 56, 45, 69, 71, 62, 59, 102, 59, 63, 80, 60, 48, 79, 63, 52, 81, 51, 68, 48, 52, 72, 61, 52, 48, 62, 78, 70, 68, 63, 60, 79, 65, 55, 75, 58, 78, 46, 49, 74, 65, 63, 64, 92, 86, 64, 51, 42, 65, 119, 50, 61, 75, 72, 82, 69, 83, 63, 57, 63, 40, 63, 84, 62, 79, 65, 74, 71, 73, 93, 56, 71, 82, 44, 94, 49, 69, 54, 53, 43, 63, 71, 65, 63, 73, 85, 60, 51, 74, 69, 66, 61, 55, 54, 55, 70, 50, 54, 80, 51, 66, 90, 57, 52, 65, 51, 69, 45, 50, 67, 83, 74, 103, 59, 53, 69, 60, 71, 100, 66, 61, 53, 72, 53, 98, 69, 69, 75, 60, 92, 58, 47, 55, 65, 70, 70, 47, 70, 57, 51, 57, 56, 61, 70, 61, 63, 57, 58, 54, 90, 59, 57, 78, 76, 63, 68, 71, 61, 44, 59, 62, 101, 78, 58, 64, 59, 49, 68, 56, 72, 52, 48, 41, 60, 70, 57, 58, 61, 80, 85, 63, 65, 38, 62, 79, 65, 67, 86, 58, 50, 54, 55, 71, 47, 65, 75, 49, 84, 73, 80, 68, 60, 72, 77, 59, 53, 50, 73, 58, 66, 63, 64, 65, 63, 70, 85, 63, 53, 63, 105, 106, 69, 93, 82, 62, 62, 66, 52, 72, 58, 49, 62, 75, 58, 82, 63, 79, 33, 64, 60, 60, 58, 72, 52, 68, 67, 67, 56, 60, 64, 68, 53, 113, 61, 67, 67, 78, 87, 96, 64, 71, 70, 68, 65, 49, 43, 52, 71, 71, 48, 93, 78, 56, 77, 74, 70, 60, 56, 64, 32, 90, 57, 62, 66, 72, 48, 61, 46, 82, 67, 85, 83, 63, 63, 57, 39, 59, 63, 64, 68, 57, 64, 62, 54, 54, 57, 70, 65, 53, 68, 63, 54, 58, 74, 74, 57, 56, 58, 56, 58, 35, 66, 70, 68, 69, 72, 69, 67, 71, 41, 81, 57, 95, 56, 85, 74, 85, 53, 88, 61, 49, 86, 76, 77, 55, 58, 73, 49, 41, 53, 51, 84, 61, 58, 50, 79, 63, 62, 51, 56, 71, 52, 79, 64, 66, 61, 90, 51, 61, 58, 95, 49, 98, 51, 50, 39, 82, 68, 63, 65, 66, 77, 60, 53, 68, 54, 61, 67, 79, 56, 50, 74, 71, 66, 55, 68, 47, 70, 73, 56, 46, 71, 86, 75, 45, 83, 54, 70, 57, 59, 73, 179, 78, 58, 72, 50, 79, 51, 47, 54, 75, 58, 59, 40, 50, 51, 78, 60, 81, 65, 80, 63, 60, 93, 70, 50, 53, 74, 71, 85, 66, 52, 63, 87, 54, 74, 47, 57, 68, 67, 58, 67, 75, 63, 72, 56, 77, 88, 74, 81, 71, 57, 91, 55, 178, 80, 98, 67, 134, 71, 59, 68, 62, 54, 94, 57, 66, 55, 73, 70, 65, 63, 77, 65, 56, 66, 80, 33, 70, 78, 68, 76, 49, 80, 89, 72, 52, 57, 83, 63, 66, 65, 61, 93, 76, 64, 80, 60, 55, 43, 45, 69, 75, 81, 72, 59, 45, 66, 39, 75, 55, 61, 89, 89, 62, 97, 53, 47, 54, 71, 68, 91, 67, 77, 45, 45, 61, 66, 73, 66, 40, 109, 80, 60, 31, 71, 55, 118, 107, 65, 90, 72, 67, 83, 75, 108, 33, 60, 81, 51, 63, 105, 68, 64, 58, 60, 73, 68, 73, 71, 65, 63, 83, 82, 88, 62, 82, 59, 58, 67, 63, 67, 56, 58, 57, 70, 58, 71, 69, 56, 47, 61, 43, 60, 64, 70, 75, 48, 48, 84, 74, 80, 71, 59, 59, 61, 62, 65, 50, 63, 50, 59, 60, 54, 65, 63, 67, 84, 72, 75, 63, 76, 48, 57, 47, 90, 62, 69, 70, 86, 65, 54, 65, 55, 57, 80, 75, 61, 66, 77, 45, 73, 89, 67, 45, 81, 59, 46, 51, 63, 91, 51, 62, 62, 73, 80, 61, 68, 58, 57, 70, 79, 73, 83, 71, 67, 66, 86, 84, 76, 123, 76, 52, 78, 79, 80, 49, 81, 63, 55, 74, 63, 104, 56, 60, 47, 82, 47, 70, 75, 73, 83, 103, 70, 85, 80, 66, 70, 69, 58, 58, 91, 57, 63, 93, 75, 59, 71, 46, 68, 49, 57, 50, 74, 88, 63, 68, 74, 39, 44, 79, 54, 65, 85, 124, 57, 33, 88, 63, 83, 48, 72, 69, 64, 62, 63, 117, 103, 74, 49, 42, 69, 47, 80, 83, 57, 49, 80, 64, 74, 57, 58, 47, 61, 78, 46, 52, 59, 51, 58, 75, 80, 60, 62, 83, 66, 62, 113, 69, 74, 62, 68, 59, 49, 63, 62, 59, 60, 68, 62, 42, 57, 79, 45, 53, 60, 69, 43, 53, 94, 55, 56, 64, 55, 51, 50, 76, 70, 68, 54, 74, 63, 77, 72, 73, 62, 82, 67, 86, 85, 63, 62, 108, 63, 79, 72, 48, 77, 60, 68, 70, 64, 51, 64, 51, 49, 71, 91, 85, 71, 128, 78, 61, 66, 79, 50, 106, 76, 55, 81, 68, 74, 68, 71, 45, 94, 37, 85, 65, 89, 59, 87, 64, 70, 72, 81, 67, 74, 98, 61, 56, 123, 68, 65, 63, 52, 50, 112, 48, 90, 71, 61, 56, 53, 76, 94, 52, 64, 78, 49, 62, 73, 47, 60, 62, 61, 58, 47, 64, 57, 58, 40, 67, 70, 72, 70, 57, 59, 45, 53, 81, 70, 49, 96, 56, 79, 66, 96, 117, 53, 67, 60, 60, 61, 79, 67, 59, 58, 55, 45, 68, 59, 74, 80, 79, 59, 71, 62, 71, 80, 62, 57, 44, 59, 38, 75, 90, 85, 66, 72, 68, 71, 61, 94, 38, 53, 74, 72, 70, 66, 67, 59, 71, 54, 95, 68, 55, 90, 47, 56, 57, 87, 70, 50, 48, 93, 55, 55, 108, 49, 59, 54, 80, 81, 75, 81, 78, 53, 60, 69, 69, 77, 56, 57, 51, 47, 66, 73, 59, 44, 72, 69, 59, 68, 68, 69, 74, 60, 79, 71, 91, 55, 63, 67, 55, 48, 80, 65, 61, 55, 64, 71, 59, 63, 62, 45, 90, 79, 52, 45, 60, 65, 51, 57, 49, 69, 78, 65, 46, 76, 49, 75, 61, 83, 68, 54, 75, 80, 66, 60, 85, 61, 55, 63, 42, 75, 69, 62, 53, 54, 68, 79, 55, 67, 86, 74, 74, 54, 61, 60, 76, 54, 64, 44, 55, 72, 46, 67, 100, 86, 68, 47, 44, 98, 52, 109, 70, 75, 68, 69, 73, 62, 52, 51, 95, 78, 78, 67, 67, 61, 62, 78, 60, 43, 56, 80, 49, 67, 64, 44, 54, 63, 57, 54, 66, 76, 56, 56, 58, 53, 72, 54, 63, 68, 80, 46, 59, 83, 75, 82, 65, 56, 67, 63, 64, 92, 47, 71, 52, 52, 53, 55, 88, 52, 68, 87, 57, 83, 114, 57, 46, 44, 99, 66, 52, 47, 64, 52, 81, 72, 45, 80, 65, 72, 49, 59, 99, 52, 80, 78, 41, 69, 57, 76, 54, 66, 74, 70, 49, 57, 70, 48, 69, 147, 72, 47, 73, 51, 57, 73, 66, 58, 61, 77, 83, 69, 87, 77, 72, 66, 52, 52, 47, 82, 70, 22, 84, 59, 60, 54, 68, 44, 60, 49, 89, 86, 67, 96, 54, 49, 56, 57, 88, 91, 85, 67, 63, 86, 71, 55, 53, 89, 57, 85, 69, 54, 61, 75, 38, 82, 75, 40, 51, 59, 47, 68, 44, 75, 56, 83, 59, 51, 35, 64, 85, 68, 81, 68, 41, 79, 49, 67, 78, 68, 65, 74, 94, 74, 67, 51, 47, 98, 62, 54, 63, 51, 60, 74, 70, 33, 57, 45, 47, 53, 87, 49, 84, 50, 96, 49, 53, 78, 114, 42, 66, 56, 49, 69, 75, 69, 94, 81, 70, 56, 55, 64, 74, 69, 65, 65, 54, 80, 68, 56, 67, 72, 61, 86, 74, 50, 99, 79, 61, 129, 63, 66, 70, 48, 69, 81, 70, 62, 66, 70, 72, 61, 63, 75, 62, 56, 57, 63, 72, 59, 65, 22, 63, 56, 92, 53, 73, 55, 54, 64, 67, 70, 38, 78, 74, 50, 59, 81, 75, 61, 80, 61, 66, 59, 54, 71, 101, 82, 66, 61, 62, 62, 103, 63, 48, 50, 49, 66, 58, 59, 63, 64, 81, 60, 50, 50, 60, 78, 76, 109, 73, 67, 62, 77, 63, 68, 94, 54, 65, 71, 59, 64, 67, 69, 61, 82, 71, 76, 60, 46, 76, 79, 73, 62, 64, 60, 22, 68, 92, 40, 67, 64, 58, 53, 82, 57, 86, 57, 25, 72, 68, 63, 74, 82, 39, 67, 65, 88, 58, 88, 51, 106, 46, 95, 72, 91, 83, 52, 52, 75, 75, 55, 52, 77, 92, 55, 55, 98, 81, 57, 43, 75, 54, 65, 53, 62, 53, 60, 70, 48, 63, 65, 70, 53, 63, 49, 58, 76, 81, 70, 56, 56, 69, 32, 58, 87, 62, 56, 58, 48, 66, 77, 70, 55, 92, 31, 54, 50, 81, 99, 80, 55, 65, 66, 94, 48, 62, 77, 67, 61, 60, 47, 53, 63, 111, 54, 62, 53, 46, 63, 58, 74, 64, 64, 71, 47, 62, 48, 65, 60, 83, 75, 65, 68, 62, 60, 77, 82, 58, 52, 65, 75, 69, 63, 56, 46, 59, 76, 61, 65, 66, 61, 53, 86, 64, 61, 64, 51, 63, 68, 79, 67, 70, 62, 30, 64, 58, 75, 43, 61, 75, 99, 117, 61, 91, 66, 64, 44, 106, 58, 103, 48, 72, 60, 70, 80, 56, 77, 74, 78, 74, 75, 58, 44, 52, 59, 58, 88, 107, 76, 66, 56, 73, 58, 86, 66, 59, 62, 64, 63, 66, 64, 55, 51, 62, 60, 80, 69, 48, 52, 85, 57, 82, 46, 69, 50, 51, 80, 67, 56, 47, 97, 47, 51, 94, 85, 67, 62, 83, 71, 67, 61, 66, 56, 58, 50, 48, 65, 83, 59, 105, 80, 65, 50, 67, 57, 44, 89, 48, 112, 62, 61, 59, 60, 82, 82, 65, 63, 53, 54, 82, 79, 33, 83, 76, 60, 80, 68, 45, 54, 55, 58, 45, 49, 54, 76, 75, 68, 85, 74, 53, 65, 75, 67, 55, 73, 79, 36, 57, 101, 50, 101, 65, 62, 94, 96, 78, 85, 69, 64, 57, 47, 85, 67, 64, 63, 57, 51, 59, 61, 126, 80, 59, 68, 63, 69, 60, 65, 65, 65, 81, 65, 40, 68, 67, 60, 79, 59, 59, 67, 34, 73, 58, 67, 112, 69, 39, 65, 59, 67, 48, 53, 109, 63, 75, 48, 69, 86, 50, 58, 55, 62, 67, 63, 68, 60, 83, 78, 73, 78, 69, 78, 60, 74, 119, 68, 63, 56, 66, 42, 109, 73, 33, 83, 53, 76, 57, 70, 50, 49, 55, 76, 62, 114, 63, 60, 57, 40, 65, 79, 60, 98, 81, 56, 64, 56, 47, 46, 68, 76, 55, 59, 70, 82, 79, 79, 39, 55, 29, 80, 43, 76, 57, 61, 76, 59, 71, 38, 79, 69, 79, 65, 65, 93, 76, 64, 80, 44, 58, 61, 48, 71, 85, 50, 41, 74, 41, 47, 62, 63, 60, 80, 53, 65, 64, 55, 54, 38, 68, 55, 50, 65, 72, 87, 68, 61, 128, 67, 85, 85, 59, 70, 55, 58, 74, 43, 82, 57, 58, 62, 54, 76, 68, 76, 63, 92, 71, 54, 118, 67, 37, 57, 61, 73, 53, 72, 55, 63, 78, 61, 75, 59, 59, 92, 71, 95, 57, 54, 89, 55, 75, 58, 63, 100, 74, 83, 91, 68, 62, 46, 51, 78, 69, 58, 77, 65, 75, 67, 63, 61, 74, 74, 60, 89, 53, 85, 64, 71, 76, 60, 51, 68, 88, 88, 60, 68, 58, 74, 38, 67, 62, 68, 79, 40, 42, 55, 54, 55, 55, 44, 59, 71, 58, 72, 109, 57, 58, 52, 52, 68, 50, 40, 67, 62, 58, 63, 61, 60, 112, 69, 68, 63, 65, 62, 95, 76, 54, 91, 62, 61, 76, 64, 69, 66, 61, 72, 89, 58, 50, 57, 69, 93, 63, 51, 61, 87, 66, 78, 67, 72, 72, 77, 68, 66, 40, 80, 45, 70, 65, 34, 84, 56, 48, 44, 67, 56, 72, 55, 77, 71, 58, 58, 55, 89, 57, 51, 69, 53, 65, 64, 70, 81, 53, 64, 65, 85, 87, 49, 66, 77, 67, 80, 66, 63, 57, 60, 84, 72, 74, 48, 56, 58, 77, 66, 70, 76, 61, 70, 53, 65, 54, 71, 65, 107, 78, 62, 68, 72, 60, 79, 76, 80, 53, 51, 52, 87, 56, 66, 64, 76, 66, 78, 52, 44, 43, 72, 81, 62, 63, 74, 56, 44, 72, 39, 46, 78, 61, 52, 76, 82, 55, 93, 55, 62, 63, 50, 53, 57, 54, 46, 72, 77, 69, 63, 63, 70, 60, 51, 66, 50, 56, 87, 77, 71, 43, 60, 73, 58, 59, 52, 73, 80, 62, 91, 73, 65, 69, 50, 62, 79, 106, 56, 73, 57, 54, 73, 58, 68, 43, 72, 49, 71, 63, 73, 49, 76, 45, 55, 64, 48, 74, 52, 67, 38, 90, 51, 51, 73, 76, 73, 61, 100, 61, 53, 74, 74, 67, 43, 94, 108, 67, 76, 71, 59, 68, 50, 62, 46, 66, 37, 64, 66, 62, 54, 70, 75, 57, 73, 53, 52, 67, 68, 73, 65, 68, 55, 61, 53, 87, 77, 54, 41, 64, 63, 57, 51, 35, 61, 92, 78, 103, 46, 72, 62, 51, 66, 66, 59, 69, 63, 79, 71, 51, 68, 55, 54, 65, 84, 59, 53, 61, 53, 59, 72, 53, 68, 46, 59, 74, 74, 79, 66, 49, 56, 34, 69, 70, 55, 100, 83, 58, 105, 56, 39, 67, 66, 69, 93, 61, 71, 63, 75, 68, 58, 69, 59, 69, 66, 76, 81, 51, 56, 71, 71, 57, 71, 51, 70, 71, 70, 78, 56, 61, 64, 72, 79, 67, 46, 42, 71, 44, 88, 65, 80, 89, 63, 87, 80, 58, 77, 54, 48, 82, 47, 93, 106, 66, 65, 62, 62, 52, 56, 67, 72, 144, 56, 43, 57, 67, 54, 48, 93, 46, 31, 65, 84, 60, 63, 84, 92, 62, 95, 83, 82, 96, 63, 82, 46, 40, 52, 48, 53, 92, 80, 84, 81, 59, 60, 72, 59, 55, 69, 55, 52, 56, 67, 86, 60, 67, 70, 51, 62, 80, 71, 85, 63, 75, 53, 62, 37, 60, 42, 68, 70, 78, 70, 78, 75, 72, 82, 88, 67, 53, 64, 71, 80, 43, 54, 68, 70, 77, 69, 70, 43, 81, 76, 58, 105, 65, 66, 66, 88, 69, 77, 62, 76, 79, 75, 97, 68, 61, 92, 93, 75, 49, 60, 68, 57, 70, 61, 77, 78, 70, 67, 68, 60, 76, 64, 71, 75, 67, 91, 84, 121, 49, 85, 56, 54, 85, 80, 61, 46, 71, 47, 60, 71, 71, 50, 61, 88, 61, 78, 76, 53, 62, 64, 45, 75, 64, 67, 57, 71, 57, 57, 87, 74, 56, 63, 89, 83, 62, 69, 70, 97, 52, 56, 67, 76, 71, 100, 89, 98, 56, 58, 46, 64, 70, 69, 62, 79, 51, 99, 75, 71, 62, 66, 58, 84, 56, 63, 141, 63, 64, 79, 50, 62, 83, 65, 69, 66, 74, 64, 73, 55, 66, 69, 74, 72, 93, 74, 59, 43, 45, 57, 91, 66, 91, 69, 71, 56, 70, 47, 63, 57, 53, 67, 49, 57, 70, 65, 83, 60, 50, 56, 53, 68, 44, 59, 55, 34, 78, 54, 69, 68, 39, 82, 86, 59, 52, 71, 72, 86, 54, 85, 60, 70, 65, 68, 59, 63, 97, 75, 77, 54, 77, 87, 64, 48, 72, 56, 52, 39, 53, 59, 81, 59, 62, 74, 85, 42, 49, 51, 70, 56, 66, 66, 112, 46, 69, 58, 30, 58, 57, 84, 58, 60, 81, 64, 62, 89, 46, 67, 70, 55, 70, 48, 68, 62, 54, 80, 63, 60, 69, 67, 53, 76, 53, 57, 51, 66, 53, 69, 50, 84, 63, 65, 65, 43, 79, 71, 74, 56, 76, 80, 93, 71, 69, 73, 56, 53, 78, 68, 103, 76, 61, 59, 56, 67, 67, 73, 65, 66, 66, 71, 58, 33, 92, 78, 64, 80, 42, 79, 48, 53, 62, 58, 99, 58, 69, 44, 64, 67, 66, 98, 52, 57, 60, 71, 50, 41, 66, 70, 85, 64, 48, 54, 41, 58, 60, 34, 75, 71, 62, 54, 64, 55, 62, 72, 54, 78, 72, 74, 93, 55, 56, 116, 87, 65, 54, 45, 57, 83, 70, 59, 76, 100, 64, 66, 62, 80, 74, 47, 74, 66, 67, 59, 74, 72, 53, 36, 66, 107, 76, 62, 67, 81, 75, 69, 64, 58, 65, 51, 54, 50, 67, 65, 60, 87, 64, 67, 49, 75, 38, 74, 84, 68, 138, 56, 74, 57, 62, 59, 51, 72, 65, 72, 58, 68, 66, 89, 54, 67, 83, 57, 96, 49, 44, 55, 67, 61, 77, 73, 55, 65, 69, 102, 76, 48, 78, 78, 126, 58, 79, 76, 61, 72, 63, 64, 84, 61, 61, 75, 47, 54, 60, 64, 57, 65, 53, 44, 92, 57, 49, 73, 77, 56, 69, 142, 65, 54, 41, 46, 65, 55, 63, 85, 80, 62, 63, 85, 65, 47, 61, 74, 68, 47, 53, 58, 76, 91, 73, 59, 72, 59, 122, 53, 87, 67, 116, 77, 45, 67, 53, 61, 68, 55, 49, 55, 47, 60, 68, 74, 58, 75, 61, 81, 94, 48, 58, 101, 67, 61, 69, 75, 41, 61, 47, 79, 58, 103, 57, 55, 74, 99, 113, 63, 49, 93, 46, 86, 53, 76, 60, 60, 54, 72, 61, 85, 64, 56, 85, 73, 72, 74, 52, 60, 59, 51, 54, 52, 45, 74, 56, 61, 81, 70, 65, 49, 55, 66, 67, 62, 64, 93, 68, 56, 46, 59, 86, 65, 63, 98, 47, 56, 52, 46, 82, 69, 40, 70, 49, 49, 76, 80, 54, 45, 58, 60, 65, 75, 59, 77, 50, 64, 60, 56, 67, 63, 67, 78, 114, 70, 51, 67, 50, 54, 68, 50, 78, 57, 72, 65, 77, 68, 67, 48, 41, 53, 65, 68, 60, 82, 67, 67, 63, 69, 77, 58, 68, 74, 74, 63, 86, 60, 54, 44, 69, 61, 74, 100, 78, 44, 43, 60, 91, 72, 62, 76, 59, 50, 66, 64, 59, 65, 82, 56, 81, 61, 73, 71, 67, 61, 71, 73, 45, 99, 64, 81, 47, 68, 56, 79, 59, 69, 67, 68, 48, 67, 63, 69, 56, 97, 65, 63, 52, 71, 61, 55, 80, 63, 62, 57, 56, 50, 72, 84, 64, 57, 88, 73, 60, 74, 73, 46, 83, 71, 65, 66, 86, 51, 57, 68, 69, 81, 69, 96, 66, 64, 52, 56, 78, 69, 68, 75, 65, 65, 86, 61, 55, 64, 83, 58, 71, 62, 118, 66, 72, 48, 55, 51, 49, 53, 82, 46, 84, 80, 53, 65, 62, 77, 56, 47, 59, 61, 47, 91, 57, 54, 81, 72, 58, 68, 45, 84, 49, 64, 47, 72, 68, 57, 89, 90, 82, 49, 83, 46, 62, 35, 63, 67, 81, 105, 64, 59, 59, 61, 45, 49, 69, 87, 68, 62, 62, 75, 69, 71, 79, 62, 65, 48, 59, 77, 70, 56, 81, 62, 75, 51, 48, 55, 66, 75, 65, 66, 69, 78, 57, 49, 47, 60, 72, 52, 53, 62, 70, 79, 61, 69, 61, 64, 48, 66, 67, 79, 83, 64, 60, 70, 48, 56, 98, 61, 65, 71, 64, 74, 49, 69, 64, 56, 65, 65, 64, 84, 34, 63, 46, 86, 71, 61, 86, 83, 71, 61, 55, 62, 68, 61, 53, 56, 65, 73, 79, 72, 48, 64, 67, 83, 59, 74, 51, 46, 70, 78, 87, 66, 76, 47, 65, 82, 66, 48, 88, 67, 57, 56, 75, 175, 63, 56, 51, 68, 80, 73, 72, 49, 88, 76, 74, 85, 49, 63, 45, 52, 76, 67, 68, 67, 69, 103, 70, 68, 71, 58, 73, 63, 53, 71, 48, 57, 62, 107, 62, 117, 48, 48, 75, 57, 90, 90, 61, 52, 70, 64, 89, 61, 75, 82, 56, 72, 63, 61, 82, 40, 63, 65, 73, 63, 51, 60, 53, 47, 75, 64, 51, 50, 75, 55, 65, 64, 50, 45, 52, 103, 67, 63, 55, 54, 75, 54, 59, 66, 63, 76, 41, 81, 55, 49, 88, 69, 70, 45, 72, 61, 68, 86, 86, 60, 65, 66, 54, 51, 64, 54, 53, 62, 68, 59, 103, 55, 104, 50, 92, 63, 81, 55, 74, 74, 39, 58, 70, 81, 84, 57, 47, 78, 50, 57, 75, 64, 56, 59, 66, 66, 58, 61, 59, 83, 66, 76, 85, 65, 50, 79, 58, 57, 47, 48, 81, 67, 84, 68, 75, 54, 64, 56, 57, 66, 50, 79, 60, 75, 37, 57, 71, 65, 83, 63, 61, 47, 79, 53, 52, 43, 66, 45, 84, 51, 45, 62, 55, 78, 72, 60, 72, 90, 54, 66, 63, 77, 58, 59, 57, 75, 47, 45, 97, 89, 73, 42, 52, 63, 69, 68, 72, 45, 72, 97, 63, 75, 63, 43, 58, 61, 61, 64, 57, 65, 57, 67, 77, 87, 41, 71, 44, 71, 74, 72, 73, 57, 80, 86, 58, 57, 91, 82, 92, 74, 79, 75, 103, 74, 91, 37, 69, 73, 59, 64, 64, 60, 59, 66, 67, 106, 63, 97, 48, 76, 63, 65, 88, 52, 65, 78, 59, 62, 54, 51, 55, 56, 67, 57, 67, 53, 101, 36, 68, 87, 63, 54, 65, 48, 42, 86, 68, 62, 60, 82, 64, 57, 61, 51, 65, 72, 79, 68, 67, 90, 52, 67, 117, 66, 62, 61, 68, 66, 74, 64, 69, 108, 80, 55, 51, 82, 59, 72, 63, 48, 63, 49, 71, 55, 57, 75, 70, 55, 66, 91, 84, 67, 48, 75, 46, 52, 50, 52, 59, 78, 86, 38, 63, 93, 74, 54, 47, 60, 79, 71, 76, 119, 72, 71, 79, 65, 72, 61, 115, 70, 64, 81, 56, 65, 61, 71, 83, 72, 120, 73, 60, 44, 70, 42, 64, 67, 98, 86, 69, 82, 69, 43, 66, 56, 61, 61, 58, 35, 73, 64, 53, 61, 67, 57, 53, 56, 58, 53, 79, 56, 68, 70, 58, 86, 66, 71, 71, 42, 60, 73, 79, 46, 39, 88, 60, 57, 96, 58, 73, 50, 46, 68, 84, 66, 74, 77, 48, 85, 71, 67, 64, 79, 56, 56, 82, 53, 60, 59, 71, 74, 52, 66, 76, 72, 108, 73, 78, 65, 59, 87, 69, 86, 56, 56, 66, 66, 58, 76, 53, 71, 64, 40, 43, 54, 66, 77, 56, 49, 70, 57, 51, 112, 58, 59, 47, 56, 55, 52, 70, 61, 58, 64, 63, 51, 70, 49, 68, 58, 64, 73, 65, 74, 59, 49, 73, 50, 53, 117, 58, 69, 60, 94, 84, 57, 54, 78, 77, 78, 56, 65, 96, 78, 81, 87, 90, 45, 60, 64, 63, 72, 83, 58, 87, 75, 44, 69, 46, 64, 62, 74, 51, 55, 53, 88, 91, 41, 49, 151, 60, 45, 55, 63, 52, 60, 46, 71, 74, 73, 76, 53, 61, 103, 45, 64, 60, 59, 93, 64, 55, 52, 46, 50, 58, 70, 81, 82, 162, 76, 60, 61, 40, 60, 57, 104, 42, 69, 51, 50, 67, 44, 50, 61, 60, 77, 68, 70, 65, 57, 105, 73, 69, 115, 45, 73, 59, 58, 68, 80, 52, 62, 46, 80, 73, 60, 53, 62, 86, 59, 84, 67, 89, 70, 65, 64, 69, 57, 57, 138, 66, 59, 60, 65, 62, 72, 58, 81, 69, 66, 47, 61, 57, 64, 59, 78, 61, 52, 79, 57, 62, 65, 133, 56, 68, 36, 62, 64, 52, 60, 65, 98, 54, 46, 64, 58, 53, 57, 74, 48, 65, 34, 89, 59, 59, 106, 60, 64, 62, 61, 86, 58, 66, 54, 55, 36, 66, 63, 78, 69, 54, 97, 72, 64, 74, 89, 60, 75, 83, 84, 45, 63, 51, 74, 64, 50, 55, 40, 70, 58, 64, 47, 54, 66, 80, 80, 61, 66, 35, 65, 65, 76, 58, 43, 63, 57, 87, 70, 76, 73, 67, 59, 55, 62, 81, 77, 103, 37, 76, 62, 58, 74, 59, 57, 56, 76, 62, 68, 84, 46, 57, 101, 53, 74, 87, 105, 56, 59, 84, 47, 52, 73, 54, 51, 78, 66, 61, 71, 76, 61, 59, 82, 73, 65, 89, 57, 54, 87, 63, 77, 57, 62, 55, 63, 65, 54, 48, 56, 62, 47, 69, 61, 49, 104, 58, 67, 78, 72, 49, 56, 64, 53, 68, 55, 71, 72, 112, 71, 52, 63, 45, 58, 76, 86, 60, 76, 96, 74, 61, 41, 65, 53, 72, 54, 59, 55, 71, 67, 70, 74, 50, 89, 57, 72, 56, 77, 79, 72, 60, 91, 70, 64, 60, 50, 57, 67, 52, 67, 70, 62, 62, 46, 58, 41, 52, 67, 59, 72, 89, 66, 62, 65, 60, 64, 67, 70, 57, 71, 53, 73, 51, 69, 67, 61, 63, 89, 60, 41, 51, 64, 50, 54, 76, 50, 40, 77, 70, 95, 69, 81, 67, 51, 47, 67, 61, 68, 72, 55, 71, 55, 49, 67, 59, 70, 73, 92, 59, 55, 70, 65, 80, 49, 43, 51, 78, 68, 74, 51, 58, 82, 50, 102, 68, 65, 66, 65, 72, 48, 65, 57, 61, 67, 66, 58, 77, 59, 79, 79, 65, 63, 70, 72, 49, 70, 62, 46, 62, 82, 45, 58, 55, 58, 59, 59, 79, 64, 59, 57, 67, 58, 69, 64, 89, 78, 65, 47, 107, 47, 74, 72, 62, 70, 67, 49, 48, 68, 56, 77, 80, 66, 41, 80, 56, 77, 74, 51, 71, 62, 74, 52, 56, 47, 53, 72, 94, 51, 54, 72, 59, 63, 46, 87, 79, 88, 55, 49, 60, 70, 69, 47, 60, 54, 87, 57, 81, 65, 47, 63, 76, 93, 61, 55, 91, 62, 70, 72, 71, 52, 64, 62, 49, 83, 95, 64, 84, 53, 67, 68, 49, 54, 49, 70, 75, 54, 65, 49, 65, 64, 50, 70, 74, 80, 85, 52, 75, 50, 67, 87, 76, 58, 73, 70, 60, 57, 52, 66, 63, 57, 78, 98, 57, 66, 53, 109, 95, 61, 69, 48, 69, 63, 56, 77, 87, 77, 84, 50, 78, 73, 56, 74, 57, 56, 67, 57, 77, 63, 65, 63, 69, 61, 71, 85, 57, 72, 69, 96, 55, 62, 79, 60, 86, 75, 69, 53, 48, 79, 65, 63, 69, 64, 66, 79, 55, 89, 94, 60, 77, 62, 50, 75, 106, 58, 109, 71, 69, 58, 59, 72, 68, 52, 79, 66, 50, 58, 104, 54, 79, 46, 63, 70, 63, 75, 66, 52, 40, 80, 55, 52, 74, 53, 74, 60, 53, 65, 59, 77, 45, 73, 58, 72, 101, 64, 59, 58, 80, 66, 88, 58, 53, 46, 55, 56, 72, 72, 64, 44, 63, 53, 55, 75, 57, 75, 62, 75, 51, 66, 52, 70, 53, 56, 46, 56, 64, 51, 51, 52, 63, 52, 75, 73, 63, 65, 68, 55, 99, 80, 70, 66, 71, 68, 56, 81, 73, 69, 53, 64, 72, 65, 62, 43, 100, 62, 68, 61, 57, 72, 47, 62, 64, 60, 73, 49, 73, 63, 77, 84, 61, 111, 63, 56, 60, 48, 75, 75, 54, 66, 65, 52, 115, 71, 58, 55, 47, 50, 68, 74, 48, 71, 41, 86, 59, 50, 67, 71, 51, 65, 57, 67, 57, 51, 58, 67, 52, 47, 40, 68, 53, 52, 61, 60, 67, 56, 58, 61, 53, 73, 57, 58, 51, 60, 69, 83, 58, 50, 64, 89, 74, 44, 57, 65, 74, 58, 55, 60, 81, 74, 72, 59, 68, 75, 58, 45, 74, 64, 75, 98, 44, 70, 54, 56, 75, 66, 79, 53, 48, 65, 86, 48, 38, 96, 53, 71, 67, 80, 62, 76, 77, 58, 49, 64, 52, 61, 95, 102, 82, 57, 56, 72, 57, 58, 49, 133, 53, 60, 59, 49, 49, 54, 62, 72, 83, 68, 50, 56, 72, 98, 66, 69, 78, 62, 69, 70, 68, 99, 92, 60, 54, 58, 52, 57, 63, 47, 74, 76, 107, 51, 62, 53, 76, 62, 48, 47, 60, 56, 64, 82, 64, 54, 60, 44, 92, 67, 111, 73, 76, 50, 59, 71, 58, 56, 43, 75, 82, 58, 76, 60, 63, 76, 88, 62, 78, 56, 68, 58, 81, 57, 66, 69, 51, 70, 62, 62, 49, 71, 46, 59, 71, 51, 65, 64, 72, 50, 59, 57, 73, 60, 60, 61, 78, 53, 82, 73, 69, 75, 60, 57, 55, 59, 59, 64, 101, 53, 62, 66, 61, 72, 95, 74, 84, 64, 66, 48, 111, 67, 63, 48, 75, 73, 67, 50, 80, 73, 57, 62, 76, 71, 86, 55, 70, 63, 71, 54, 64, 65, 57, 65, 58, 62, 57, 51, 63, 63, 55, 81, 66, 65, 57, 65, 75, 60, 54, 54, 73, 69, 58, 71, 51, 60, 56, 63, 58, 61, 74, 66, 59, 67, 55, 58, 76, 81, 64, 91, 58, 109, 65, 66, 71, 107, 55, 76, 67, 67, 70, 61, 60, 63, 72, 60, 66, 56, 62, 71, 67, 61, 56, 88, 51, 80, 67, 45, 74, 61, 63, 59, 57, 56, 78, 59, 79, 67, 63, 62, 57, 67, 76, 65, 93, 48, 54, 66, 57, 68, 59, 70, 69, 73, 69, 58, 66, 57, 58, 146, 70, 81, 59, 70, 73, 64, 73, 94, 61, 55, 72, 68, 80, 70, 85, 50, 61, 68, 50, 71, 68, 57, 93, 74, 58, 34, 59, 62, 57, 53, 57, 68, 66, 63, 53, 51, 72, 82, 59, 59, 51, 65, 62, 59, 62, 49, 58, 95, 55, 63, 68, 72, 61, 52, 59, 64, 66, 83, 60, 77, 59, 72, 62, 61, 56, 64, 69, 64, 56, 61, 65, 72, 51, 62, 43, 57, 65, 95, 55, 61, 59, 66, 66, 51, 70, 62, 64, 51, 47, 69, 59, 70, 61, 77, 48, 57, 76, 133, 54, 66, 56, 62, 55, 82, 48, 59, 63, 98, 65, 61, 67, 71, 65, 108, 64, 80, 61, 68, 65, 61, 60, 64, 59, 79, 50, 87, 53, 64, 58, 76, 71, 72, 68, 65, 64, 67, 70, 49, 66, 52, 90, 76, 68, 74, 72, 45, 60, 56, 63, 49, 70, 61, 68, 62, 84, 59, 62, 71, 57, 64, 79, 73, 71, 63, 72, 59, 50, 95, 52, 68, 59, 55, 59, 81, 55, 57, 53, 158, 61, 55, 56, 71, 62, 76, 54, 57, 65, 51, 73, 72, 71, 68, 63, 76, 49, 66, 63, 55, 64, 76, 66, 66, 58, 62, 70, 51, 62, 58, 59, 58, 58, 59, 68, 68, 65, 87, 59, 71, 60, 52, 61, 65, 99, 56, 59, 61, 86, 75, 68, 72, 54, 65, 55, 70, 56, 74, 64, 59, 63, 69, 55, 66, 80, 65, 65, 62, 72, 67, 57, 69, 61, 56, 62, 64, 61, 65, 55, 63, 70, 62, 65, 85, 72, 58, 45, 73, 84, 61, 70, 85, 64, 51, 61, 65, 64, 77, 66, 81, 64, 70, 61, 57, 54, 67, 60, 64, 58, 57, 82, 57, 49, 77, 70, 67, 82, 51, 59, 67, 67, 87, 59, 70, 58, 63, 78, 60, 68, 50, 53, 75, 61, 74, 57, 78, 57, 61, 87, 75, 55, 74, 75, 51, 74, 65, 66, 69, 75, 112, 54, 77, 71, 62, 75, 69, 60, 53, 64, 59, 72, 65, 59, 56, 57, 70, 59, 58, 63, 51, 62, 62, 56, 55, 60, 54, 61, 71, 102, 85, 88, 56, 105, 46, 52, 60, 65, 71, 70, 63, 57, 86, 53, 60, 48, 74, 64, 78, 87, 56, 61, 52, 64, 58, 67, 61, 61, 55, 60, 54, 73, 63, 70, 56, 52, 66, 53, 56, 74, 53, 61, 62, 60, 42, 69, 66, 61, 51, 69, 65, 69, 69, 79, 78, 69, 70, 57, 63, 58, 78, 59, 77, 71, 70, 62, 63, 65, 57, 73, 52, 76, 84, 59, 69, 97, 59, 60, 67, 102, 64, 48, 63, 73, 54, 63, 54, 77, 72, 53, 56, 53, 62, 70, 59, 68, 61, 48, 45, 96, 62, 76, 65, 59, 57, 55, 60, 63, 73, 52, 59, 63, 63, 63, 64, 69, 54, 51, 60, 59, 61, 57, 56, 66, 59, 67, 56, 72, 71, 50, 56, 51, 57, 78, 58, 79, 66, 57, 86, 70, 58, 65, 85, 91, 55, 57, 52, 63, 53, 68, 76, 81, 75, 59, 74, 63, 55, 50, 63, 70, 60, 55, 67, 61, 60, 54, 58, 38, 68, 79, 94, 65, 63, 62, 57, 53, 66, 65, 58, 52, 68, 68, 76, 59, 64, 45, 72, 70, 67, 61, 78, 79, 58, 52, 60, 80, 74, 91, 60, 65, 43, 98, 58, 55, 69, 62, 51, 74, 67, 105, 66, 84, 65, 54, 60, 86, 66, 59, 65, 64, 44, 64, 64, 64, 62, 56, 69, 66, 80, 63, 64, 58, 41, 66, 57, 51, 71, 51, 93, 45, 72, 74, 67, 69, 54, 71, 70, 62, 61, 52, 54, 82, 71, 55, 65, 59, 74, 52, 56, 49, 98, 60, 54, 66, 68, 68, 93, 60, 60, 68, 57, 51, 77, 61, 66, 49, 51, 65, 61, 64, 73, 51, 55, 66, 54, 84, 52, 79, 54, 72, 57, 85, 61, 68, 56, 56, 77, 52, 46, 56, 85, 53, 62, 44, 48, 51, 73, 58, 66, 60, 58, 55, 84, 67, 70, 61, 64, 65, 66, 62, 84, 65, 60, 117, 61, 74, 77, 48, 54, 67, 83, 74, 53, 83, 61, 66, 64, 53, 59, 57, 76, 63, 69, 81, 44, 68, 69, 52, 48, 61, 59, 57, 76, 77, 53, 59, 50, 74, 63, 57, 73, 71, 90, 57, 56, 58, 46, 58, 66, 60, 60, 67, 63, 58, 65, 51, 74, 68, 67, 109, 85, 88, 56, 62, 64, 57, 64, 60, 52, 51, 55, 127, 67, 68, 70, 68, 57, 87, 66, 62, 72, 61, 56, 99, 57, 106, 65, 70, 67, 91, 47, 57, 61, 61, 88, 96, 99, 80, 60, 70, 83, 62, 78, 67, 62, 99, 97, 67, 56, 58, 48, 67, 66, 52, 68, 48, 78, 58, 68, 66, 74, 71, 70, 57, 56, 85, 63, 58, 75, 61, 68, 54, 45, 83, 60, 78, 66, 52, 72, 48, 90, 94, 66, 59, 67, 58, 91, 54, 52, 70, 82, 74, 99, 73, 56, 62, 56, 65, 80, 66, 74, 55, 64, 53, 64, 68, 50, 56, 61, 63, 107, 59, 73, 73, 64, 68, 62, 74, 74, 68, 62, 71, 61, 96, 81, 56, 42, 82, 54, 57, 52, 75, 48, 73, 53, 56, 98, 83, 69, 54, 69, 55, 61, 61, 46, 90, 61, 67, 87, 51, 65, 62, 60, 62, 57, 58, 65, 61, 53, 72, 57, 62, 64, 62, 56, 78, 72, 73, 89, 59, 77, 61, 61, 80, 67, 69, 69, 54, 56, 61, 91, 53, 64, 128, 80, 70, 64, 63, 48, 67, 52, 94, 84, 67, 59, 69, 60, 65, 54, 68, 92, 72, 53, 99, 49, 71, 66, 141, 71, 58, 62, 50, 58, 58, 65, 69, 68, 60, 87, 63, 57, 67, 62, 75, 66, 70, 99, 78, 68, 56, 58, 52, 74, 62, 67, 62, 70, 59, 68, 74, 74, 54, 66, 50, 76, 67, 130, 74, 59, 121, 54, 79, 54, 66, 72, 56, 64, 86, 68, 66, 55, 52, 82, 64, 115, 60, 55, 43, 53, 52, 52, 111, 77, 58, 58, 67, 59, 78, 56, 87, 75, 49, 59, 53, 60, 65, 67, 54, 53, 72, 58, 64, 73, 58, 74, 54, 42, 53, 66, 62, 60, 58, 148, 43, 60, 62, 81, 64, 62, 50, 65, 58, 61, 75, 61, 61, 66, 71, 63, 50, 90, 62, 73, 87, 72, 70, 65, 61, 71, 63, 63, 73, 66, 61, 100, 68, 44, 58, 63, 76, 77, 50, 59, 65, 68, 77, 83, 62, 52, 56, 99, 49, 79, 85, 96, 54, 59, 62, 66, 52, 68, 54, 66, 63, 73, 65, 79, 67, 66, 64, 60, 97, 56, 47, 62, 68, 61, 82, 71, 64, 55, 55, 59, 82, 51, 65, 74, 61, 78, 51, 57, 58, 75, 54, 73, 62, 60, 54, 77, 69, 81, 61, 58, 78, 66, 67, 63, 65, 58, 57, 59, 62, 70, 42, 67, 57, 80, 59, 74, 86, 85, 68, 66, 50, 52, 55, 78, 71, 76, 51, 63, 62, 68, 57, 68, 63, 54, 73, 72, 38, 58, 47, 67, 71, 58, 71, 58, 71, 67, 61, 60, 68, 68, 53, 99, 57, 68, 74, 63, 67, 68, 50, 64, 65, 63, 61, 63, 70, 92, 68, 67, 52, 104, 68, 66, 60, 62, 70, 49, 61, 71, 62, 59, 70, 58, 65, 59, 52, 58, 49, 57, 79, 61, 60, 47, 58, 59, 58, 75, 55, 71, 61, 61, 62, 50, 60, 66, 73, 47, 89, 60, 54, 55, 64, 63, 64, 92, 67, 54, 73, 62, 55, 54, 64, 69, 66, 55, 68, 67, 51, 55, 50, 56, 36, 67, 73, 64, 71, 48, 71, 75, 51, 65, 61, 69, 72, 64, 57, 91, 64, 80, 81, 54, 56, 57, 67, 115, 59, 56, 65, 61, 58, 66, 84, 108, 41, 73, 72, 64, 54, 72, 58, 68, 80, 78, 54, 65, 61, 80, 67, 69, 140, 65, 62, 69, 67, 78, 75, 62, 75, 105, 45, 50, 59, 70, 63, 73, 62, 68, 56, 51, 82, 59, 80, 79, 76, 55, 54, 61, 52, 75, 82, 87, 76, 46, 72, 71, 77, 67, 112, 50, 58, 69, 74, 66, 78, 81, 47, 56, 68, 52, 68, 56, 61, 58, 75, 67, 58, 59, 51, 61, 67, 67, 68, 56, 65, 66, 59, 57, 69, 78, 45, 58, 57, 49, 59, 61, 51, 79, 97, 61, 105, 64, 101, 62, 57, 48, 71, 59, 79, 66, 86, 49, 67, 67, 78, 75, 60, 59, 71, 76, 65, 82, 67, 49, 71, 68, 83, 57, 40, 58, 84, 51, 54, 53, 66, 55, 86, 63, 68, 50, 71, 68, 64, 51, 79, 64, 45, 57, 80, 71, 54, 49, 69, 116, 50, 54, 65, 59, 59, 72, 59, 46, 76, 79, 49, 58, 59, 58, 64, 61, 74, 89, 83, 57, 57, 49, 62, 65, 53, 64, 74, 61, 134, 73, 67, 49, 60, 56, 51, 58, 69, 51, 61, 76, 74, 69, 53, 65, 63, 71, 50, 79, 65, 71, 64, 52, 84, 52, 70, 71, 64, 62, 76, 77, 59, 69, 69, 98, 43, 83, 98, 66, 78, 66, 80, 71, 50, 62, 54, 35, 77, 61, 64, 61, 64, 60, 58, 51, 75, 60, 59, 65, 61, 74, 64, 55, 71, 86, 65, 72, 54, 60, 69, 78, 63, 60, 62, 49, 54, 97, 68, 104, 70, 46, 51, 76, 87, 66, 62, 57, 122, 54, 62, 71, 60, 48, 63, 63, 63, 78, 69, 58, 75, 42, 62, 65, 79, 79, 72, 78, 55, 69, 60, 49, 57, 56, 54, 64, 61, 59, 59, 81, 46, 51, 58, 57, 49, 85, 63, 67, 66, 54, 58, 59, 67, 61, 55, 63, 60, 82, 65, 50, 71, 61, 73, 57, 75, 70, 59, 61, 64, 77, 60, 71, 68, 82, 57, 67, 83, 53, 62, 72, 70, 68, 75, 69, 64, 77, 79, 54, 74, 112, 64, 50, 61, 68, 58, 54, 51, 55, 56, 57, 57, 94, 57, 61, 54, 53, 85, 64, 71, 71, 64, 53, 77, 61, 48, 49, 54, 57, 78, 55, 67, 74, 60, 72, 64, 89, 81, 111, 65, 63, 77, 68, 83, 61, 52, 49, 52, 53, 73, 63, 69, 74, 56, 57, 95, 56, 52, 62, 68, 66, 55, 63, 49, 69, 54, 65, 59, 58, 76, 48, 77, 80, 65, 53, 81, 63, 58, 61, 56, 56, 55, 57, 49, 82, 58, 62, 60, 65, 64, 56, 58, 84, 63, 55, 51, 68, 62, 66, 60, 52, 77, 78, 59, 60, 57, 66, 64, 62, 64, 64, 57, 80, 107, 58, 78, 67, 54, 68, 70, 68, 75, 58, 63, 63, 74, 82, 73, 56, 54, 78, 58, 78, 82, 56, 73, 68, 63, 60, 74, 88, 71, 69, 53, 59, 62, 59, 54, 73, 57, 86, 54, 69, 68, 87, 46, 71, 55, 115, 72, 60, 55, 105, 59, 52, 57, 83, 74, 58, 70, 53, 52, 65, 58, 75, 70, 64, 67, 55, 53, 67, 80, 56, 87, 60, 69, 45, 62, 60, 71, 61, 69, 58, 52, 52, 45, 48, 58, 72, 66, 59, 76, 17, 62, 69, 99, 60, 72, 96, 63, 63, 62, 74, 65, 45, 63, 66, 99, 54, 64, 62, 43, 49, 66, 90, 61, 53, 63, 60, 79, 60, 55, 68, 66, 47, 60, 60, 74, 123, 61, 57, 46, 46, 39, 86, 75, 76, 63, 67, 60, 66, 65, 47, 62, 68, 61, 56, 55, 71, 71, 54, 66, 77, 65, 57, 73, 74, 59, 58, 50, 66, 106, 91, 93, 60, 56, 64, 99, 69, 114, 69, 56, 68, 67, 61, 78, 76, 65, 61, 74, 88, 56, 78, 67, 61, 63, 62, 55, 61, 65, 58, 66, 81, 80, 57, 68, 70, 58, 75, 65, 64, 57, 69, 57, 61, 64, 55, 49, 49, 69, 54, 51, 68, 51, 61, 90, 67, 73, 82, 62, 60, 63, 75, 96, 61, 65, 61, 69, 67, 69, 85, 65, 67, 72, 64, 63, 59, 67, 51, 68, 54, 63, 81, 71, 58, 55, 61, 87, 77, 57, 66, 55, 56, 67, 60, 81, 53, 63, 71, 52, 68, 50, 95, 69, 79, 63, 74, 79, 59, 62, 87, 64, 53, 58, 63, 80, 51, 61, 61, 76, 62, 82, 85, 55, 83, 80, 56, 69, 75, 51, 80, 67, 66, 77, 84, 55, 65, 84, 71, 65, 76, 45, 70, 61, 64, 136, 68, 75, 61, 81, 54, 73, 68, 74, 62, 64, 74, 64, 53, 53, 50, 70, 50, 69, 67, 74, 72, 69, 57, 62, 84, 52, 73, 84, 77, 58, 56, 55, 118, 93, 54, 63, 66, 66, 80, 92, 56, 61, 57, 80, 50, 68, 63, 73, 55, 77, 85, 63, 58, 69, 71, 64, 58, 62, 80, 71, 72, 60, 67, 74, 58, 59, 55, 62, 54, 48, 57, 64, 63, 56, 65, 59, 60, 67, 57, 62, 61, 69, 57, 62, 58, 57, 69, 54, 69, 69, 56, 66, 55, 75, 76, 123, 83, 60, 47, 80, 58, 53, 102, 55, 57, 63, 64, 57, 64, 144, 85, 61, 59, 56, 66, 64, 59, 63, 51, 61, 61, 54, 51, 78, 70, 42, 48, 54, 66, 72, 59, 54, 62, 79, 47, 68, 75, 104, 57, 70, 53, 72, 70, 78, 66, 61, 60, 60, 54, 66, 57, 58, 70, 68, 67, 67, 54, 46, 72, 61, 71, 64, 75, 72, 64, 59, 59, 78, 62, 68, 63, 71, 56, 55, 54, 51, 73, 63, 76, 82, 53, 60, 64, 62, 70, 60, 80, 63, 65, 53, 71, 57, 58, 72, 51, 56, 59, 74, 71, 72, 53, 66, 70, 59, 68, 94, 65, 66, 64, 79, 56, 74, 68, 58, 60, 68, 72, 54, 60, 68, 60, 66, 73, 61, 59, 108, 66, 68, 82, 68, 65, 64, 67, 55, 80, 76, 74, 56, 74, 64, 65, 62, 61, 53, 58, 71, 53, 53, 67, 79, 65, 57, 64, 62, 68, 50, 59, 52, 62, 70, 57, 72, 56, 63, 60, 72, 48, 64, 77, 66, 85, 68, 60, 84, 69, 66, 72, 56, 59, 66, 79, 61, 68, 83, 51, 79, 80, 62, 64, 65, 56, 61, 57, 58, 70, 79, 65, 56, 63, 65, 57, 67, 65, 65, 54, 60, 51, 66, 80, 84, 66, 70, 62, 70, 61, 61, 44, 68, 57, 70, 55, 71, 73, 56, 62, 64, 54, 59, 73, 57, 54, 61, 67, 61, 54, 73, 62, 77, 70, 103, 62, 98, 105, 90, 55, 67, 62, 66, 66, 59, 59, 69, 71, 70, 61, 50, 64, 59, 75, 65, 51, 63, 66, 67, 74, 66, 67, 54, 70, 65, 71, 60, 54, 60, 53, 59, 60, 66, 52, 78, 54, 62, 59, 65, 81, 52, 75, 62, 64, 58, 67, 70, 58, 59, 62, 61, 55, 66, 67, 55, 59, 74, 64, 62, 67, 86, 59, 70, 66, 60, 66, 69, 68, 70, 62, 65, 58, 75, 94, 58, 112, 56, 62, 66, 74, 90, 61, 95, 77, 58, 60, 66, 59, 53, 73, 80, 61, 61, 51, 64, 48, 65, 57, 63, 62, 61, 91, 62, 64, 79, 87, 53, 54, 65, 64, 61, 64, 54, 73, 49, 72, 54, 56, 72, 59, 71, 68, 54, 79, 58, 65, 56, 80, 57, 77, 68, 64, 77, 70, 55, 69, 61, 73, 70, 54, 70, 56, 76, 69, 61, 54, 66, 71, 55, 59, 69, 58, 59, 79, 58, 77, 54, 65, 56, 81, 53, 55, 68, 55, 64, 91, 70, 58, 67, 84, 61, 67, 56, 72, 53, 71, 67, 55, 99, 58, 61, 62, 63, 62, 49, 61, 66, 63, 70, 60, 71, 65, 63, 62, 58, 68, 82, 60, 48, 59, 85, 59, 65, 59, 65, 64, 56, 85, 65, 67, 58, 63, 64, 58, 67, 72, 70, 61, 84, 81, 79, 57, 73, 58, 50, 80, 75, 49, 58, 73, 72, 45, 86, 63, 60, 52, 62, 62, 62, 57, 66, 63, 55, 57, 74, 90, 68, 71, 72, 67, 69, 62, 59, 64, 55, 51, 81, 60, 73, 65, 60, 53, 79, 75, 68, 50, 73, 53, 76, 58, 55, 81, 60, 66, 64, 73, 74, 76, 58, 60, 58, 71, 55, 62, 62, 68, 64, 68, 58, 59, 63, 62, 66, 63, 60, 67, 82, 54, 69, 75, 63, 66, 60, 67, 66, 77, 68, 54, 73, 91, 58, 66, 66, 78, 74, 47, 69, 74, 85, 69, 65, 78, 64, 61, 74, 62, 54, 69, 55, 67, 83, 59, 66, 71, 66, 102, 55, 115, 65, 53, 62, 53, 68, 73, 65, 77, 60, 63, 56, 67, 66, 58, 71, 56, 56, 51, 60, 53, 72, 67, 65, 69, 53, 64, 52, 67, 77, 52, 99, 66, 58, 79, 69, 73, 63, 62, 64, 56, 57, 67, 59, 72, 62, 86, 64, 69, 63, 55, 74, 56, 66, 65, 56, 55, 59, 62, 71, 108, 66, 62, 74, 61, 63, 68, 94, 56, 66, 83, 87, 60, 63, 67, 59, 45, 61, 59, 74, 67, 70, 75, 61, 55, 70, 80, 48, 73, 62, 67, 60, 48, 84, 79, 56, 65, 72, 56, 55, 73, 54, 58, 56, 58, 72, 67, 55, 50, 65, 55, 76, 57, 64, 73, 70, 58, 60, 79, 89, 64, 70, 71, 67, 63, 60, 64, 54, 71, 66, 74, 54, 66, 85, 89, 66, 63, 73, 69, 59, 78, 70, 65, 55, 63, 58, 74, 87, 51, 65, 66, 53, 61, 56, 77, 55, 72, 68, 89, 63, 49, 70, 64, 56, 63, 63, 94, 41, 55, 56, 63, 49, 63, 81, 69, 74, 59, 59, 73, 71, 64, 64, 63, 76, 62, 77, 71, 78, 64, 75, 53, 46, 67, 62, 69, 65, 52, 56, 64, 56, 61, 90, 65, 63, 70, 60, 74, 90, 69, 63, 69, 61, 79, 72, 68, 79, 77, 59, 61, 81, 48, 85, 62, 61, 52, 63, 56, 63, 59, 83, 68, 73, 53, 65, 68, 85, 69, 68, 61, 92, 64, 66, 62, 56, 51, 49, 64, 66, 50, 74, 57, 63, 59, 57, 76, 51, 52, 61, 66, 80, 68, 75, 52, 100, 52, 52, 75, 62, 66, 67, 62, 54, 74, 57, 61, 52, 78, 64, 60, 95, 61, 69, 56, 73, 54, 66, 65, 68, 67, 72, 51, 133, 69, 59, 105, 74, 60, 55, 61, 68, 70, 50, 61, 65, 71, 60, 90, 77, 67, 57, 53, 61, 69, 70, 65, 65, 55, 58, 75, 73, 83, 94, 68, 65, 73, 73, 58, 57, 41, 70, 74, 65, 73, 127, 53, 45, 67, 63, 79, 61, 63, 96, 103, 85, 86, 71, 60, 80, 55, 51, 59, 64, 62, 69, 58, 51, 48, 64, 80, 67, 82, 47, 61, 60, 56, 96, 59, 70, 64, 46, 66, 57, 46, 49, 96, 49, 70, 72, 68, 86, 64, 53, 44, 59, 51, 100, 65, 66, 47, 82, 42, 79, 51, 83, 64, 64, 73, 68, 93, 69, 54, 85, 71, 55, 59, 74, 51, 50, 60, 63, 54, 58, 78, 60, 54, 60, 92, 72, 95, 91, 71, 67, 52, 66, 74, 74, 64, 37, 58, 82, 73, 55, 81, 76, 73, 70, 83, 83, 59, 67, 50, 60, 73, 69, 92, 78, 55, 58, 66, 74, 60, 76, 96, 56, 72, 63, 56, 67, 76, 71, 48, 75, 55, 56, 59, 61, 66, 63, 50, 67, 50, 76, 69, 64, 58, 106, 65, 65, 86, 66, 82, 69, 63, 60, 80, 60, 73, 65, 54, 49, 70, 62, 76, 61, 57, 76, 68, 75, 69, 50, 55, 49, 68, 60, 78, 74, 44, 51, 71, 93, 89, 51, 59, 75, 70, 71, 67, 73, 51, 47, 62, 93, 59, 82, 76, 75, 72, 65, 64, 51, 59, 67, 71, 51, 54, 85, 60, 61, 65, 57, 42, 84, 47, 56, 48, 61, 64, 73, 56, 61, 68, 61, 48, 54, 59, 50, 71, 61, 51, 53, 75, 50, 72, 68, 73, 50, 62, 50, 53, 68, 64, 48, 64, 81, 58, 69, 76, 59, 72, 69, 59, 57, 46, 66, 56, 82, 79, 58, 56, 47, 86, 59, 79, 76, 51, 57, 69, 81, 59, 101, 66, 52, 58, 138, 52, 61, 86, 65, 75, 78, 64, 48, 73, 65, 64, 82, 53, 67, 49, 61, 81, 50, 88, 54, 57, 61, 72, 68, 66, 66, 61, 62, 75, 55, 73, 59, 58, 77, 62, 52, 48, 58, 72, 59, 60, 49, 62, 61, 75, 51, 69, 63, 74, 60, 54, 67, 65, 56, 91, 62, 79, 70, 127, 65, 63, 72, 71, 66, 82, 75, 93, 52, 46, 66, 62, 62, 70, 68, 52, 75, 65, 62, 74, 82, 58, 63, 69, 60, 71, 64, 87, 39, 60, 66, 51, 66, 78, 58, 63, 53, 54, 63, 53, 60, 74, 72, 55, 76, 61, 76, 51, 75, 57, 55, 63, 60, 59, 63, 57, 102, 75, 78, 82, 56, 90, 70, 83, 70, 65, 46, 58, 73, 61, 84, 43, 60, 68, 61, 54, 82, 84, 59, 67, 57, 66, 55, 57, 40, 62, 61, 72, 52, 76, 59, 72, 66, 51, 68, 64, 71, 86, 60, 90, 58, 59, 63, 65, 60, 77, 57, 75, 48, 70, 70, 65, 67, 52, 82, 64, 84, 72, 61, 62, 61, 65, 88, 62, 60, 63, 59, 61, 60, 74, 70, 88, 47, 72, 57, 86, 82, 73, 53, 37, 50, 55, 78, 59, 53, 68, 64, 58, 87, 90, 81, 78, 61, 59, 63, 56, 65, 63, 62, 65, 67, 67, 85, 80, 56, 111, 65, 59, 70, 83, 49, 65, 67, 58, 62, 61, 77, 68, 54, 66, 72, 43, 67, 91, 53, 68, 68, 58, 59, 69, 56, 63, 53, 70, 61, 61, 80, 59, 76, 56, 65, 74, 59, 63, 61, 67, 52, 90, 98, 68, 65, 53, 75, 79, 59, 60, 72, 62, 47, 78, 61, 61, 60, 76, 66, 59, 58, 53, 57, 57, 82, 61, 55, 63, 82, 66, 63, 57, 73, 69, 116, 114, 55, 69, 87, 67, 72, 61, 57, 65, 57, 62, 70, 59, 69, 83, 34, 49, 76, 64, 63, 55, 61, 62, 77, 67, 54, 58, 59, 88, 68, 65, 35, 71, 71, 89, 57, 73, 81, 67, 59, 52, 67, 76, 57, 53, 61, 53, 69, 69, 64, 70, 65, 61, 60, 73, 70, 54, 74, 95, 68, 55, 55, 74, 84, 64, 49, 61, 55, 62, 79, 59, 63, 91, 93, 61, 56, 70, 68, 38, 79, 55, 46, 66, 54, 65, 48, 74, 73, 88, 61, 65, 68, 87, 94, 96, 50, 76, 59, 48, 85, 71, 68, 58, 82, 78, 63, 58, 82, 55, 64, 74, 78, 55, 62, 79, 79, 59, 58, 54, 66, 50, 57, 76, 69, 49, 57, 86, 64, 74, 67, 64, 55, 50, 75, 67, 57, 53, 74, 55, 81, 47, 57, 65, 66, 72, 65, 61, 81, 56, 66, 68, 78, 66, 58, 113, 68, 41, 73, 56, 74, 65, 57, 71, 52, 57, 49, 72, 73, 68, 64, 76, 89, 68, 80, 63, 58, 62, 52, 82, 75, 96, 72, 53, 57, 53, 59, 72, 65, 64, 55, 48, 78, 63, 51, 57, 54, 84, 85, 58, 54, 60, 81, 43, 90, 65, 61, 69, 57, 50, 56, 43, 57, 72, 89, 96, 52, 55, 75, 87, 69, 56, 60, 66, 65, 68, 69, 57, 56, 61, 75, 60, 76, 107, 59, 50, 117, 48, 64, 59, 67, 59, 65, 58, 82, 78, 64, 66, 57, 66, 99, 75, 53, 44, 53, 48, 62, 44, 52, 52, 56, 153, 60, 59, 57, 43, 65, 55, 69, 79, 64, 54, 50, 74, 67, 57, 80, 61, 43, 65, 66, 62, 74, 89, 63, 65, 62, 58, 62, 73, 70, 66, 85, 49, 56, 51, 60, 165, 65, 74, 79, 99, 58, 65, 59, 49, 80, 94, 128, 83, 62, 86, 65, 53, 58, 66, 81, 46, 50, 75, 75, 59, 79, 73, 73, 62, 60, 67, 67, 65, 63, 44, 66, 79, 62, 46, 37, 66, 61, 65, 79, 66, 40, 71, 66, 62, 66, 67, 76, 72, 46, 49, 65, 102, 48, 70, 47, 69, 68, 49, 79, 71, 53, 86, 59, 74, 96, 58, 71, 54, 72, 73, 94, 52, 65, 45, 62, 59, 66, 57, 85, 67, 90, 57, 73, 85, 62, 48, 72, 56, 59, 58, 81, 50, 68, 58, 60, 56, 58, 63, 57, 64, 63, 57, 102, 57, 70, 66, 73, 61, 58, 68, 68, 45, 60, 71, 49, 57, 63, 68, 64, 68, 60, 62, 61, 53, 44, 59, 64, 70, 66, 76, 62, 65, 61, 60, 53, 67, 56, 54, 72, 94, 90, 59, 79, 58, 61, 62, 67, 74, 63, 61, 64, 67, 57, 68, 55, 49, 43, 56, 82, 79, 76, 91, 134, 59, 46, 72, 66, 77, 75, 78, 41, 62, 61, 65, 66, 75, 72, 62, 65, 57, 57, 57, 52, 51, 52, 57, 37, 72, 67, 57, 62, 58, 70, 103, 73, 68, 76, 71, 62, 69, 74, 61, 58, 67, 77, 71, 54, 56, 73, 63, 70, 72, 76, 62, 57, 61, 57, 87, 60, 54, 66, 84, 75, 58, 56, 48, 74, 57, 54, 71, 49, 78, 72, 55, 59, 65, 67, 68, 62, 47, 80, 76, 65, 108, 57, 56, 53, 65, 87, 43, 68, 72, 65, 57, 70, 48, 81, 68, 59, 66, 66, 63, 65, 58, 53, 66, 61, 57, 97, 52, 77, 61, 64, 63, 61, 51, 56, 75, 60, 61, 57, 62, 68, 65, 65, 59, 85, 52, 56, 70, 62, 66, 59, 69, 85, 65, 100, 71, 50, 135, 69, 64, 56, 63, 77, 71, 71, 54, 69, 99, 93, 78, 59, 68, 55, 70, 68, 58, 55, 82, 68, 79, 61, 58, 57, 87, 50, 61, 54, 50, 70, 59, 72, 51, 39, 66, 65, 58, 80, 60, 78, 67, 76, 70, 76, 63, 103, 51, 67, 69, 63, 57, 96, 67, 56, 74, 64, 45, 74, 66, 59, 65, 54, 81, 55, 66, 56, 64, 70, 62, 66, 123, 56, 71, 65, 49, 54, 48, 58, 57, 65, 64, 60, 54, 55, 63, 63, 57, 83, 60, 60, 64, 51, 40, 54, 57, 85, 53, 59, 66, 65, 64, 61, 60, 57, 76, 62, 52, 86, 72, 58, 62, 89, 77, 58, 65, 99, 59, 48, 69, 62, 62, 68, 64, 53, 61, 74, 57, 58, 69, 52, 78, 84, 86, 74, 66, 68, 61, 61, 52, 55, 54, 62, 57, 56, 55, 62, 58, 60, 63, 71, 78, 69, 63, 67, 60, 79, 68, 56, 79, 87, 68, 80, 54, 49, 62, 69, 58, 113, 71, 63, 137, 51, 64, 62, 74, 70, 58, 79, 60, 59, 62, 61, 69, 90, 80, 55, 57, 62, 62, 76, 81, 50, 67, 84, 58, 77, 62, 54, 58, 60, 137, 70, 70, 70, 58, 73, 71, 62, 74, 68, 72, 70, 91, 61, 54, 60, 67, 74, 52, 66, 66, 63, 122, 70, 66, 63, 57, 62, 75, 56, 45, 66, 60, 57, 52, 70, 61, 85, 62, 65, 96, 74, 63, 57, 46, 78, 74, 73, 60, 50, 96, 60, 55, 65, 66, 67, 54, 107, 79, 69, 84, 68, 74, 75, 69, 74, 67, 54, 58, 70, 66, 64, 60, 61, 70, 66, 52, 80, 59, 57, 64, 58, 74, 68, 66, 74, 73, 67, 92, 67, 53, 98, 78, 67, 85, 55, 48, 73, 58, 57, 69, 61, 63, 48, 76, 66, 87, 76, 47, 96, 67, 63, 61, 63, 57, 59, 53, 47, 66, 66, 59, 62, 72, 58, 53, 46, 45, 66, 70, 84, 73, 79, 50, 66, 72, 80, 83, 69, 80, 70, 59, 53, 68, 66, 68, 88, 63, 82, 62, 83, 70, 61, 65, 72, 69, 64, 92, 56, 67, 62, 63, 60, 69, 59, 71, 72, 78, 67, 64, 59, 51, 75, 60, 61, 57, 99, 70, 66, 78, 78, 58, 75, 79, 72, 60, 73, 67, 57, 73, 53, 75, 60, 70, 90, 92, 79, 65, 64, 71, 62, 72, 59, 65, 94, 67, 78, 68, 62, 53, 87, 66, 63, 84, 69, 72, 99, 58, 55, 79, 72, 81, 109, 55, 73, 66, 61, 72, 75, 61, 63, 70, 66, 80, 75, 61, 47, 58, 65, 59, 67, 50, 64, 61, 56, 63, 86, 69, 66, 61, 59, 72, 73, 60, 63, 64, 53, 90, 49, 47, 88, 59, 91, 61, 74, 63, 57, 76, 55, 117, 59, 56, 61, 66, 61, 52, 53, 72, 72, 77, 58, 53, 73, 64, 69, 59, 59, 61, 60, 109, 72, 91, 49, 54, 64, 62, 65, 53, 44, 46, 57, 55, 73, 68, 57, 66, 49, 61, 67, 73, 65, 60, 43, 65, 61, 67, 60, 61, 58, 57, 60, 53, 81, 56, 57, 71, 68, 51, 69, 86, 79, 58, 62, 61, 80, 45, 62, 74, 64, 66, 56, 84, 58, 47, 86, 66, 100, 64, 79, 65, 80, 56, 54, 106, 53, 65, 63, 54, 76, 66, 69, 74, 62, 67, 65, 75, 68, 58, 57, 66, 63, 65, 71, 53, 52, 72, 95, 64, 61, 66, 71, 90, 70, 74, 62, 73, 58, 63, 78, 51, 58, 57, 79, 66, 57, 73, 72, 64, 65, 63, 50, 53, 82, 96, 76, 63, 47, 60, 56, 68, 122, 122, 54, 84, 57, 57, 62, 71, 71, 53, 69, 55, 68, 58, 55, 62, 71, 51, 53, 62, 64, 66, 88, 81, 70, 54, 77, 52, 51, 70, 67, 67, 111, 71, 59, 71, 90, 68, 70, 62, 64, 75, 76, 58, 79, 48, 61, 75, 78, 65, 57, 69, 83, 76, 74, 130, 66, 66, 59, 54, 71, 58, 66, 72, 72, 71, 45, 89, 44, 111, 62, 63, 72, 54, 93, 70, 52, 68, 46, 88, 60, 88, 66, 83, 58, 58, 58, 63, 63, 58, 60, 61, 57, 63, 48, 52, 46, 57, 74, 55, 74, 67, 62, 62, 64, 61, 71, 39, 62, 85, 57, 64, 58, 76, 73, 62, 63, 58, 57, 93, 60, 62, 55, 70, 73, 71, 66, 52, 63, 79, 63, 67, 53, 61, 56, 64, 43, 66, 70, 63, 71, 72, 61, 59, 59, 65, 68, 69, 62, 76, 71, 46, 60, 54, 65, 42, 59, 82, 63, 60, 53, 65, 102, 59, 68, 53, 53, 59, 77, 64, 102, 55, 72, 81, 52, 69, 58, 73, 72, 69, 60, 75, 76, 62, 51, 63, 51, 59, 96, 58, 63, 48, 64, 54, 63, 70, 95, 58, 73, 71, 51, 44, 60, 65, 61, 68, 55, 63, 66, 61, 51, 71, 63, 48, 55, 47, 143, 75, 100, 86, 59, 40, 66, 85, 48, 60, 63, 61, 58, 63, 68, 72, 73, 60, 73, 63, 70, 68, 75, 68, 67, 60, 71, 64, 65, 64, 61, 77, 57, 70, 57, 75, 62, 61, 50, 113, 73, 90, 70, 67, 71, 88, 47, 60, 73, 60, 121, 70, 96, 109, 68, 41, 68, 72, 50, 76, 67, 65, 64, 57, 60, 70, 59, 49, 63, 45, 55, 64, 50, 80, 62, 75, 77, 59, 93, 63, 61, 56, 55, 70, 60, 58, 75, 66, 65, 75, 68, 52, 60, 55, 53, 61, 72, 60, 58, 54, 56, 82, 60, 72, 49, 63, 67, 67, 52, 52, 57, 72, 65, 62, 69, 69, 68, 59, 85, 88, 69, 74, 74, 66, 53, 68, 73, 63, 59, 71, 80, 70, 58, 65, 51, 58, 39, 64, 69, 64, 63, 73, 59, 58, 52, 82, 60, 61, 61, 68, 68, 59, 55, 58, 46, 49, 90, 75, 58, 66, 66, 69, 62, 57, 51, 62, 69, 66, 66, 80, 49, 78, 54, 64, 86, 64, 72, 78, 63, 49, 82, 47, 54, 48, 49, 63, 74, 70, 66, 67, 92, 53, 64, 56, 76, 83, 84, 78, 57, 67, 66, 53, 59, 56, 64, 59, 86, 57, 47, 65, 61, 63, 78, 47, 66, 90, 71, 85, 66, 48, 62, 87, 58, 63, 53, 64, 64, 59, 80, 48, 52, 72, 78, 59, 58, 56, 50, 51, 62, 66, 90, 65, 54, 72, 74, 54, 67, 54, 67, 75, 56, 65, 65, 74, 54, 64, 69, 101, 65, 43, 80, 61, 58, 61, 64, 44, 61, 78, 77, 59, 84, 74, 51, 59, 55, 71, 69, 71, 65, 79, 65, 68, 49, 77, 59, 72, 63, 75, 58, 65, 57, 66, 63, 82, 88, 66, 53, 91, 58, 74, 61, 60, 100, 61, 65, 70, 64, 60, 58, 53, 54, 59, 62, 94, 61, 70, 71, 49, 59, 64, 64, 86, 61, 61, 65, 56, 73, 66, 67, 64, 72, 64, 60, 70, 60, 59, 68, 46, 70, 69, 66, 82, 80, 54, 63, 73, 56, 75, 65, 54, 62, 55, 66, 82, 66, 54, 64, 59, 47, 61, 50, 59, 65, 68, 45, 82, 69, 81, 66, 66, 81, 70, 67, 65, 76, 66, 62, 65, 65, 57, 60, 72, 61, 117, 62, 83, 60, 85, 72, 58, 66, 66, 59, 65, 55, 72, 60, 64, 64, 72, 63, 61, 60, 49, 68, 57, 73, 68, 51, 66, 63, 60, 59, 76, 53, 55, 73, 55, 65, 60, 62, 43, 62, 68, 65, 65, 65, 60, 60, 77, 81, 51, 43, 65, 79, 60, 66, 67, 72, 57, 67, 56, 72, 76, 130, 56, 60, 117, 54, 61, 54, 61, 58, 59, 70, 59, 45, 57, 64, 82, 57, 72, 60, 77, 82, 59, 83, 46, 69, 36, 60, 64, 60, 71, 76, 78, 59, 61, 65, 64, 66, 58, 101, 50, 71, 68, 84, 74, 66, 75, 44, 69, 66, 61, 58, 61, 74, 64, 53, 65, 62, 69, 61, 57, 68, 67, 57, 60, 59, 93, 67, 71, 75, 59, 85, 63, 92, 54, 73, 71, 63, 54, 52, 61, 64, 57, 70, 50, 51, 63, 55, 69, 55, 77, 46, 42, 81, 50, 77, 78, 62, 99, 63, 56, 60, 61, 97, 59, 52, 74, 49, 81, 36, 58, 58, 57, 54, 58, 70, 67, 68, 66, 84, 72, 74, 61, 70, 67, 67, 62, 58, 72, 78, 62, 59, 49, 62, 53, 74, 80, 64, 61, 65, 61, 57, 74, 75, 60, 59, 84, 60, 70, 71, 61, 69, 66, 66, 70, 64, 59, 74, 77, 77, 85, 51, 63, 58, 84, 110, 82, 56, 88, 70, 68, 58, 60, 66, 78, 75, 71, 93, 70, 67, 72, 70, 74, 71, 70, 76, 87, 60, 46, 56, 47, 60, 80, 50, 80, 75, 82, 76, 54, 66, 56, 51, 66, 75, 61, 73, 81, 63, 51, 54, 59, 57, 60, 60, 62, 73, 61, 71, 66, 73, 70, 49, 94, 62, 67, 55, 61, 67, 60, 60, 53, 57, 53, 69, 61, 80, 84, 73, 57, 53, 57, 62, 74, 62, 80, 75, 50, 70, 53, 54, 78, 56, 55, 60, 56, 61, 63, 79, 76, 88, 71, 64, 62, 91, 48, 75, 73, 69, 54, 76, 51, 54, 65, 53, 68, 89, 78, 81, 63, 87, 67, 57, 58, 51, 73, 70, 91, 54, 55, 76, 57, 56, 96, 54, 60, 75, 72, 45, 67, 69, 96, 60, 49, 73, 70, 59, 57, 70, 72, 72, 73, 67, 76, 68, 57, 56, 61, 70, 69, 70, 50, 63, 87, 57, 74, 66, 58, 88, 82, 70, 68, 58, 79, 54, 77, 54, 72, 46, 61, 61, 70, 76, 64, 58, 67, 66, 76, 63, 63, 59, 72, 66, 85, 59, 88, 60, 56, 70, 128, 67, 55, 77, 52, 71, 128, 56, 59, 64, 49, 70, 63, 66, 59, 58, 69, 59, 52, 55, 51, 57, 79, 62, 52, 67, 65, 72, 60, 70, 61, 52, 85, 67, 63, 63, 59, 56, 62, 82, 59, 53, 60, 56, 61, 64, 68, 68, 55, 72, 59, 68, 68, 65, 59, 77, 76, 58, 93, 45, 87, 61, 61, 57, 48, 105, 51, 68, 86, 84, 64, 62, 63, 55, 64, 62, 49, 63, 65, 60, 78, 122, 71, 96, 52, 58, 57, 122, 65, 54, 63, 70, 61, 61, 41, 55, 68, 63, 73, 66, 67, 62, 72, 58, 58, 62, 61, 61, 59, 63, 64, 80, 56, 78, 76, 69, 39, 77, 62, 64, 80, 71, 40, 63, 67, 43, 56, 106, 68, 83, 88, 53, 68, 58, 74, 60, 55, 75, 70, 74, 52, 54, 65, 59, 58, 65, 66, 74, 53, 50, 65, 93, 60, 55, 69, 72, 53, 63, 63, 97, 64, 63, 68, 64, 83, 45, 58, 112, 56, 48, 50, 69, 73, 61, 74, 63, 50, 68, 57, 60, 73, 49, 68, 67, 49, 63, 62, 85, 70, 62, 56, 61, 81, 65, 49, 84, 55, 62, 66, 50, 60, 74, 69, 72, 62, 61, 74, 57, 53, 58, 53, 56, 50, 59, 85, 58, 57, 77, 49, 60, 58, 51, 64, 91, 94, 66, 98, 56, 79, 50, 65, 56, 69, 58, 68, 54, 66, 64, 53, 57, 65, 59, 47, 64, 54, 56, 72, 59, 56, 65, 57, 70, 67, 79, 69, 70, 64, 49, 77, 49, 65, 69, 134, 54, 62, 84, 61, 63, 76, 64, 66, 55, 78, 65, 77, 72, 59, 61, 45, 55, 61, 49, 42, 50, 63, 69, 60, 76, 74, 55, 53, 57, 60, 56, 79, 40, 73, 72, 64, 63, 61, 73, 78, 104, 67, 66, 80, 67, 91, 66, 60, 85, 93, 68, 55, 46, 63, 61, 67, 54, 67, 57, 55, 74, 53, 71, 79, 69, 62, 62, 49, 45, 42, 72, 56, 58, 38, 41, 70, 82, 56, 58, 68, 82, 55, 79, 71, 52, 58, 62, 75, 56, 56, 79, 59, 52, 65, 63, 66, 77, 61, 56, 51, 63, 77, 62, 69, 56, 56, 59, 65, 51, 75, 52, 62, 67, 56, 64, 65, 83, 83, 63, 73, 54, 58, 51, 56, 58, 93, 53, 61, 55, 72, 52, 71, 62, 54, 70, 64, 53, 83, 51, 87, 90, 89, 52, 63, 47, 70, 120, 80, 59, 51, 102, 52, 69, 54, 109, 84, 70, 92, 70, 69, 61, 63, 88, 78, 41, 75, 45, 54, 72, 49, 46, 44, 77, 69, 69, 84, 69, 52, 109, 41, 55, 80, 52, 52, 105, 67, 58, 51, 81, 66, 60, 69, 50, 60, 77, 84, 44, 84, 70, 62, 103, 91, 47, 65, 69, 67, 94, 46, 55, 104, 66, 48, 56, 69, 57, 82, 59, 73, 61, 85, 80, 63, 57, 75, 62, 75, 61, 125, 103, 61, 70, 58, 47, 46, 91, 50, 62, 64, 51, 94, 69, 63, 61, 69, 58, 75, 67, 82, 64, 119, 75, 60, 86, 91, 62, 45, 40, 63, 50, 60, 52, 68, 63, 60, 85, 51, 61, 60, 59, 60, 76, 57, 63, 63, 48, 58, 44, 59, 44, 66, 102, 84, 69, 52, 61, 75, 114, 40, 44, 56, 72, 80, 61, 68, 49, 61, 73, 59, 73, 52, 64, 82, 65, 58, 65, 51, 67, 58, 65, 71, 68, 75, 61, 82, 78, 77, 68, 61, 61, 69, 49, 53, 55, 96, 72, 62, 63, 75, 63, 52, 62, 83, 84, 72, 82, 54, 51, 52, 51, 52, 64, 70, 66, 56, 57, 71, 57, 55, 59, 67, 68, 72, 60, 61, 54, 57, 55, 69, 61, 54, 132, 62, 77, 74, 65, 54, 60, 63, 71, 71, 53, 45, 70, 86, 68, 61, 99, 71, 51, 53, 63, 68, 49, 46, 54, 57, 54, 60, 90, 70, 92, 57, 63, 61, 63, 73, 53, 51, 64, 58, 66, 39, 100, 75, 155, 68, 63, 87, 62, 58, 79, 67, 62, 68, 58, 61, 66, 56, 60, 41, 66, 82, 65, 77, 29, 92, 64, 67, 55, 55, 71, 61, 71, 52, 82, 47, 55, 80, 47, 52, 50, 50, 78, 95, 65, 73, 77, 59, 70, 68, 61, 60, 98, 63, 63, 66, 39, 69, 38, 78, 71, 55, 88, 61, 75, 68, 58, 71, 39, 62, 68, 87, 72, 95, 73, 60, 60, 41, 42, 98, 60, 76, 50, 58, 56, 52, 92, 69, 89, 51, 64, 78, 60, 49, 91, 56, 120, 46, 72, 102, 50, 66, 72, 73, 50, 62, 75, 67, 52, 73, 62, 50, 58, 79, 70, 53, 62, 55, 69, 61, 62, 65, 57, 62, 55, 60, 73, 56, 57, 67, 67, 57, 79, 82, 59, 83, 57, 59, 78, 60, 65, 57, 73, 56, 68, 65, 54, 60, 81, 87, 77, 72, 69, 74, 59, 73, 63, 58, 54, 77, 59, 58, 65, 73, 57, 45, 55, 64, 112, 67, 76, 75, 79, 80, 62, 91, 58, 74, 54, 76, 66, 39, 69, 82, 99, 58, 59, 62, 113, 62, 48, 70, 81, 54, 61, 57, 54, 103, 66, 71, 56, 61, 50, 67, 67, 57, 68, 60, 59, 54, 62, 45, 102, 51, 54, 55, 61, 54, 47, 82, 63, 64, 58, 54, 54, 61, 63, 83, 62, 81, 62, 42, 92, 68, 57, 39, 65, 69, 61, 56, 72, 59, 51, 70, 72, 50, 76, 71, 81, 49, 84, 84, 53, 96, 45, 51, 52, 70, 59, 56, 62, 82, 76, 60, 126, 37, 97, 45, 69, 70, 77, 64, 68, 51, 62, 62, 45, 61, 46, 63, 57, 69, 71, 54, 60, 68, 48, 103, 84, 85, 76, 52, 77, 89, 58, 54, 57, 89, 48, 56, 45, 69, 79, 117, 54, 51, 85, 68, 60, 61, 113, 66, 51, 89, 80, 38, 61, 44, 68, 52, 68, 54, 59, 71, 51, 72, 69, 65, 59, 66, 68, 76, 64, 67, 45, 72, 64, 62, 58, 59, 44, 66, 69, 75, 74, 38, 66, 61, 73, 67, 59, 75, 63, 53, 57, 86, 59, 53, 58, 60, 98, 156, 73, 50, 64, 64, 60, 73, 51, 77, 78, 63, 60, 66, 66, 73, 69, 56, 55, 73, 59, 56, 45, 48, 71, 67, 53, 64, 62, 56, 69, 57, 75, 54, 86, 59, 61, 40, 62, 67, 76, 53, 87, 83, 50, 46, 60, 62, 54, 92, 44, 55, 59, 49, 60, 42, 56, 81, 70, 56, 82, 71, 55, 63, 60, 73, 84, 93, 59, 82, 44, 73, 41, 54, 78, 69, 49, 70, 57, 53, 82, 69, 65, 84, 104, 73, 72, 57, 83, 59, 48, 53, 87, 64, 73, 71, 56, 61, 58, 64, 74, 60, 73, 45, 62, 55, 55, 60, 61, 41, 68, 56, 69, 68, 67, 85, 116, 57, 67, 81, 74, 86, 69, 71, 45, 95, 55, 70, 70, 81, 66, 58, 66, 51, 65, 70, 52, 84, 69, 52, 50, 56, 53, 54, 70, 64, 76, 71, 67, 53, 70, 55, 72, 82, 57, 78, 91, 71, 46, 52, 67, 81, 56, 48, 61, 68, 54, 56, 71, 86, 97, 49, 63, 52, 42, 75, 64, 88, 67, 67, 64, 70, 40, 63, 60, 45, 69, 59, 65, 69, 65, 54, 66, 64, 59, 69, 40, 64, 60, 51, 50, 74, 81, 96, 100, 72, 64, 79, 68, 61, 44, 43, 72, 66, 78, 50, 65, 72, 58, 62, 62, 103, 84, 45, 70, 57, 116, 63, 66, 74, 70, 69, 149, 69, 63, 66, 90, 61, 61, 65, 89, 74, 46, 36, 76, 58, 62, 59, 52, 55, 64, 83, 77, 65, 75, 66, 76, 60, 55, 56, 50, 93, 55, 74, 70, 71, 94, 73, 78, 81, 48, 74, 58, 82, 78, 58, 67, 55, 39, 65, 71, 75, 72, 60, 108, 60, 66, 72, 61, 62, 64, 66, 67, 61, 62, 71, 68, 49, 65, 67, 64, 61, 62, 40, 68, 58, 113, 59, 53, 61, 34, 78, 68, 52, 78, 105, 50, 78, 94, 71, 77, 100, 60, 50, 54, 59, 62, 98, 69, 74, 77, 52, 64, 53, 87, 68, 54, 77, 59, 60, 65, 63, 65, 70, 52, 61, 59, 67, 68, 50, 67, 58, 66, 56, 57, 57, 54, 89, 78, 58, 73, 59, 65, 76, 55, 62, 60, 68, 55, 70, 95, 55, 53, 96, 48, 64, 82, 49, 97, 56, 49, 72, 80, 53, 45, 70, 76, 86, 56, 62, 80, 55, 99, 78, 75, 55, 67, 81, 83, 98, 69, 48, 66, 56, 69, 57, 60, 106, 71, 69, 42, 51, 85, 64, 46, 71, 89, 57, 73, 55, 67, 87, 56, 64, 83, 90, 60, 69, 59, 54, 57, 72, 52, 59, 62, 45, 54, 62, 70, 73, 63, 42, 61, 71, 72, 62, 69, 73, 68, 74, 96, 67, 84, 66, 55, 70, 49, 72, 66, 85, 59, 59, 81, 97, 60, 59, 62, 61, 64, 55, 61, 65, 58, 52, 65, 66, 81, 60, 65, 78, 75, 68, 65, 57, 70, 92, 76, 61, 77, 73, 69, 72, 65, 54, 57, 61, 72, 78, 71, 60, 53, 86, 75, 70, 71, 88, 79, 57, 76, 67, 52, 59, 50, 64, 70, 62, 52, 66, 77, 76, 51, 77, 63, 49, 56, 73, 87, 69, 65, 82, 52, 73, 59, 85, 49, 54, 78, 69, 66, 61, 55, 86, 52, 69, 103, 65, 77, 74, 75, 76, 71, 68, 48, 41, 70, 56, 63, 66, 76, 58, 65, 74, 54, 85, 68, 40, 67, 73, 50, 48, 78, 69, 57, 58, 50, 55, 64, 18, 77, 59, 72, 74, 83, 54, 55, 44, 45, 90, 69, 78, 70, 47, 73, 76, 52, 70, 69, 73, 67, 58, 54, 47, 74, 77, 88, 57, 65, 48, 54, 81, 77, 75, 61, 50, 78, 75, 63, 73, 65, 56, 69, 78, 59, 53, 90, 77, 46, 59, 67, 61, 62, 43, 90, 48, 67, 53, 56, 70, 63, 53, 72, 29, 51, 60, 76, 81, 87, 61, 68, 80, 65, 64, 60, 102, 73, 43, 54, 58, 71, 53, 101, 59, 100, 56, 77, 48, 54, 72, 54, 62, 73, 61, 81, 84, 86, 56, 51, 56, 72, 61, 74, 62, 70, 53, 52, 49, 55, 59, 54, 72, 74, 67, 56, 59, 66, 74, 84, 83, 76, 65, 83, 93, 77, 74, 61, 46, 63, 71, 65, 65, 56, 47, 66, 56, 70, 72, 60, 46, 66, 66, 119, 57, 72, 53, 86, 73, 54, 73, 57, 58, 93, 78, 63, 92, 60, 78, 66, 76, 72, 82, 64, 76, 58, 40, 58, 91, 83, 76, 69, 62, 63, 57, 66, 95, 84, 60, 66, 50, 80, 56, 54, 65, 70, 49, 74, 37, 119, 66, 89, 68, 72, 46, 85, 102, 50, 66, 73, 88, 75, 69, 65, 67, 49, 65, 68, 70, 61, 63, 63, 49, 76, 69, 67, 78, 58, 48, 60, 60, 35, 71, 69, 67, 79, 62, 73, 75, 63, 43, 57, 55, 56, 52, 67, 81, 66, 63, 68, 72, 48, 66, 67, 71, 70, 81, 52, 63, 70, 81, 84, 66, 74, 51, 92, 61, 78, 48, 58, 55, 82, 52, 52, 65, 63, 61, 65, 77, 64, 71, 80, 39, 68, 51, 44, 72, 75, 56, 39, 31, 82, 69, 28, 49, 67, 58, 54, 53, 56, 79, 49, 70, 72, 80, 54, 73, 70, 64, 59, 75, 81, 60, 87, 85, 56, 59, 57, 84, 62, 57, 53, 85, 82, 66, 63, 66, 86, 70, 66, 70, 55, 52, 40, 70, 54, 90, 72, 60, 66, 66, 60, 74, 57, 91, 71, 56, 79, 82, 40, 87, 57, 58, 60, 49, 79, 62, 98, 55, 79, 89, 62, 46, 73, 65, 69, 68, 56, 64, 63, 87, 67, 50, 74, 61, 38, 61, 70, 70, 75, 45, 97, 75, 60, 72, 68, 60, 71, 63, 68, 56, 61, 58, 72, 69, 68, 59, 71, 37, 66, 72, 63, 50, 66, 72, 56, 68, 46, 75, 68, 51, 71, 59, 61, 50, 61, 49, 78, 71, 57, 41, 75, 53, 77, 68, 60, 38, 87, 60, 105, 67, 72, 106, 43, 50, 62, 50, 65, 39, 74, 69, 70, 80, 66, 71, 45, 57, 48, 64, 60, 66, 70, 53, 49, 39, 60, 60, 62, 62, 44, 58, 56, 42, 57, 66, 81, 57, 64, 70, 74, 83, 63, 84, 64, 52, 49, 70, 65, 74, 59, 93, 63, 50, 65, 53, 59, 72, 61, 76, 61, 92, 58, 66, 57, 74, 68, 54, 71, 80, 56, 66, 92, 65, 56, 61, 71, 71, 67, 77, 79, 45, 70, 58, 90, 75, 66, 60, 69, 79, 47, 68, 53, 74, 98, 59, 78, 54, 82, 69, 62, 50, 59, 87, 74, 54, 81, 59, 55, 178, 65, 63, 57, 63, 70, 74, 49, 75, 62, 49, 61, 64, 57, 70, 103, 74, 46, 53, 71, 59, 57, 102, 50, 76, 61, 35, 55, 62, 96, 51, 63, 53, 64, 71, 89, 152, 66, 51, 80, 107, 58, 63, 50, 47, 63, 50, 92, 73, 63, 66, 72, 66, 49, 61, 59, 63, 76, 52, 110, 54, 56, 82, 63, 69, 61, 60, 100, 61, 61, 74, 65, 65, 61, 56, 78, 54, 68, 59, 65, 73, 55, 51, 65, 90, 70, 66, 68, 77, 82, 62, 64, 66, 62, 72, 90, 72, 66, 72, 61, 76, 64, 72, 66, 55, 77, 72, 61, 63, 54, 67, 123, 78, 69, 56, 86, 63, 62, 77, 55, 74, 68, 67, 64, 56, 96, 90, 64, 65, 51, 53, 51, 81, 79, 54, 79, 62, 50, 100, 66, 57, 77, 53, 89, 73, 61, 69, 69, 66, 56, 73, 77, 62, 79, 73, 57, 63, 64, 57, 55, 60, 55, 61, 61, 72, 56, 68, 47, 70, 60, 67, 68, 58, 68, 58, 64, 53, 83, 48, 56, 79, 114, 56, 80, 80, 61, 73, 43, 84, 76, 65, 57, 44, 82, 78, 71, 61, 66, 51, 70, 63, 50, 49, 107, 58, 67, 68, 62, 78, 64, 48, 56, 69, 59, 62, 85, 49, 93, 52, 69, 66, 49, 68, 62, 59, 55, 60, 67, 69, 63, 68, 63, 53, 61, 153, 54, 71, 53, 53, 91, 74, 76, 71, 67, 64, 61, 70, 53, 67, 62, 51, 66, 69, 56, 72, 68, 65, 67, 90, 72, 120, 65, 54, 66, 64, 69, 60, 47, 75, 66, 57, 63, 63, 69, 57, 79, 61, 66, 57, 66, 60, 64, 64, 68, 73, 63, 62, 67, 67, 75, 52, 57, 64, 61, 45, 59, 59, 108, 70, 63, 58, 96, 66, 59, 66, 54, 71, 53, 60, 69, 62, 77, 95, 68, 58, 58, 57, 60, 83, 59, 67, 51, 58, 66, 64, 54, 55, 61, 96, 63, 66, 69, 56, 64, 61, 66, 57, 80, 63, 61, 87, 64, 61, 75, 83, 44, 88, 93, 58, 51, 60, 61, 63, 53, 63, 90, 84, 63, 75, 60, 60, 64, 52, 67, 70, 66, 73, 67, 63, 68, 70, 79, 60, 64, 54, 63, 71, 67, 75, 84, 51, 62, 65, 61, 63, 83, 73, 69, 64, 48, 77, 55, 50, 72, 57, 85, 62, 70, 50, 56, 103, 60, 66, 66, 70, 53, 108, 72, 61, 72, 54, 65, 70, 65, 70, 62, 50, 61, 60, 68, 92, 67, 55, 81, 63, 70, 66, 76, 67, 92, 69, 58, 67, 66, 65, 60, 78, 73, 54, 51, 78, 59, 47, 65, 73, 61, 59, 57, 66, 109, 54, 56, 59, 99, 60, 63, 64, 71, 66, 67, 66, 40, 61, 90, 41, 55, 50, 57, 66, 56, 70, 61, 97, 62, 87, 74, 83, 68, 60, 57, 86, 60, 79, 58, 68, 69, 61, 73, 68, 61, 47, 65, 72, 56, 60, 75, 53, 61, 48, 62, 71, 68, 58, 68, 66, 50, 66, 67, 62, 78, 59, 69, 53, 54, 65, 56, 64, 60, 80, 70, 60, 60, 53, 70, 93, 58, 54, 104, 51, 58, 50, 57, 51, 72, 67, 59, 51, 63, 47, 96, 64, 82, 81, 67, 67, 61, 57, 75, 59, 65, 71, 67, 67, 54, 58, 64, 75, 63, 60, 64, 47, 66, 61, 56, 78, 91, 64, 41, 62, 47, 57, 66, 74, 74, 55, 74, 61, 53, 64, 56, 84, 72, 75, 65, 75, 62, 79, 81, 68, 71, 91, 67, 56, 76, 81, 75, 60, 69, 56, 54, 77, 60, 80, 56, 65, 61, 51, 86, 62, 64, 110, 51, 65, 68, 62, 61, 63, 60, 57, 96, 84, 65, 62, 89, 52, 74, 38, 82, 55, 47, 57, 70, 61, 64, 53, 58, 49, 59, 58, 89, 60, 62, 71, 67, 53, 79, 89, 77, 55, 56, 68, 55, 85, 50, 61, 71, 57, 55, 60, 77, 98, 65, 64, 64, 63, 68, 74, 62, 65, 60, 75, 69, 58, 68, 56, 68, 76, 54, 54, 59, 76, 54, 63, 62, 76, 74, 89, 66, 48, 76, 51, 78, 63, 77, 56, 69, 94, 63, 65, 58, 45, 59, 101, 73, 73, 72, 55, 59, 64, 79, 59, 57, 47, 88, 79, 65, 64, 75, 70, 67, 70, 119, 63, 61, 62, 67, 56, 53, 58, 53, 50, 56, 63, 64, 58, 66, 59, 69, 54, 62, 72, 74, 73, 58, 58, 84, 59, 69, 60, 77, 63, 69, 63, 56, 97, 53, 63, 57, 65, 64, 57, 59, 66, 56, 59, 67, 56, 54, 64, 58, 74, 67, 76, 65, 50, 67, 57, 74, 46, 55, 65, 72, 58, 47, 58, 55, 103, 72, 64, 64, 80, 69, 68, 54, 42, 70, 63, 70, 100, 74, 69, 59, 75, 96, 56, 76, 54, 62, 74, 81, 75, 72, 74, 83, 59, 98, 79, 71, 48, 40, 73, 61, 71, 76, 90, 67, 65, 62, 65, 58, 87, 59, 78, 63, 74, 51, 61, 62, 63, 57, 68, 61, 71, 50, 56, 60, 54, 73, 57, 54, 100, 65, 66, 59, 55, 69, 77, 60, 55, 61, 86, 71, 57, 74, 50, 54, 62, 85, 103, 61, 69, 37, 65, 86, 61, 68, 55, 50, 67, 50, 63, 78, 63, 54, 71, 74, 66, 57, 59, 79, 53, 61, 58, 65, 68, 68, 75, 74, 55, 55, 51, 113, 64, 69, 71, 58, 75, 66, 75, 62, 60, 40, 70, 65, 58, 34, 53, 49, 75, 56, 61, 58, 61, 59, 63, 57, 52, 61, 70, 53, 49, 58, 61, 62, 55, 51, 60, 44, 63, 61, 72, 65, 59, 62, 90, 52, 74, 65, 73, 54, 59, 78, 71, 54, 59, 61, 68, 62, 60, 69, 58, 77, 62, 75, 63, 62, 54, 59, 82, 63, 64, 63, 56, 56, 109, 55, 63, 72, 82, 56, 59, 73, 44, 84, 59, 68, 60, 63, 94, 93, 52, 59, 70, 68, 52, 54, 74, 48, 49, 80, 82, 55, 74, 51, 56, 86, 86, 76, 68, 111, 70, 62, 53, 42, 80, 53, 54, 73, 79, 65, 82, 62, 63, 55, 83, 52, 55, 76, 63, 69, 55, 65, 74, 60, 69, 72, 63, 63, 51, 75, 51, 46, 64, 56, 46, 54, 42, 57, 73, 46, 97, 53, 65, 63, 53, 69, 71, 89, 76, 51, 77, 48, 65, 68, 77, 78, 89, 44, 67, 76, 56, 67, 58, 69, 62, 51, 60, 41, 58, 60, 69, 74, 60, 69, 89, 53, 65, 63, 64, 63, 68, 54, 72, 73, 91, 61, 57, 65, 59, 74, 75, 73, 71, 59, 82, 56, 60, 81, 70, 54, 78, 58, 65, 75, 59, 75, 60, 64, 73, 49, 71, 76, 61, 68, 92, 61, 70, 75, 61, 62, 37, 56, 65, 68, 63, 74, 78, 80, 68, 58, 56, 61, 80, 65, 65, 77, 51, 82, 70, 55, 62, 68, 84, 57, 65, 49, 58, 67, 52, 47, 84, 57, 86, 52, 51, 69, 69, 60, 61, 60, 59, 85, 53, 57, 67, 68, 81, 74, 83, 59, 74, 62, 70, 45, 55, 57, 71, 54, 67, 59, 71, 102, 59, 58, 70, 101, 70, 56, 78, 68, 71, 87, 60, 70, 82, 42, 56, 66, 68, 51, 90, 75, 70, 52, 69, 50, 40, 89, 64, 56, 58, 85, 38, 86, 60, 61, 72, 77, 43, 66, 128, 81, 70, 61, 48, 68, 82, 66, 55, 77, 61, 73, 58, 76, 59, 65, 75, 41, 63, 73, 60, 79, 64, 76, 55, 62, 69, 64, 70, 50, 54, 62, 59, 73, 72, 59, 91, 62, 65, 54, 68, 51, 53, 75, 71, 61, 64, 68, 81, 69, 67, 72, 94, 46, 59, 66, 47, 88, 53, 53, 65, 68, 83, 57, 74, 69, 58, 57, 69, 65, 73, 46, 58, 60, 53, 83, 63, 68, 92, 64, 57, 71, 68, 78, 86, 48, 72, 71, 48, 56, 44, 71, 75, 67, 67, 53, 71, 58, 63, 62, 75, 72, 50, 65, 68, 74, 92, 64, 58, 60, 56, 80, 60, 63, 92, 48, 67, 56, 68, 63, 63, 45, 58, 66, 59, 85, 62, 74, 70, 71, 101, 52, 60, 64, 67, 66, 64, 75, 68, 45, 65, 80, 91, 98, 49, 39, 61, 70, 52, 82, 80, 99, 71, 70, 67, 61, 70, 67, 77, 71, 61, 64, 64, 69, 64, 78, 65, 67, 43, 59, 54, 70, 65, 69, 72, 58, 76, 42, 67, 51, 56, 71, 65, 60, 80, 74, 55, 58, 64, 52, 66, 84, 51, 102, 57, 49, 59, 50, 85, 74, 78, 51, 69, 65, 74, 64, 69, 54, 62, 69, 53, 46, 72, 73, 87, 49, 57, 68, 64, 66, 59, 58, 83, 86, 49, 59, 82, 63, 59, 53, 86, 64, 64, 50, 112, 64, 65, 82, 56, 75, 61, 67, 57, 78, 66, 62, 67, 104, 61, 58, 64, 86, 52, 82, 64, 90, 68, 65, 53, 70, 90, 74, 65, 75, 55, 57, 71, 52, 101, 66, 68, 81, 61, 53, 90, 69, 68, 60, 61, 79, 66, 69, 62, 48, 48, 41, 67, 63, 97, 83, 54, 73, 63, 54, 56, 67, 73, 41, 65, 41, 52, 81, 70, 70, 87, 52, 60, 44, 55, 47, 75, 64, 59, 49, 67, 77, 86, 84, 60, 65, 53, 52, 48, 56, 53, 59, 59, 89, 77, 67, 62, 56, 70, 56, 60, 95, 40, 60, 67, 50, 69, 87, 93, 73, 78, 99, 70, 62, 78, 57, 58, 75, 82, 82, 49, 67, 104, 65, 72, 56, 49, 65, 72, 78, 52, 57, 50, 63, 66, 86, 50, 70, 72, 61, 56, 66, 93, 66, 69, 58, 68, 77, 54, 61, 59, 54, 63, 58, 88, 53, 61, 67, 64, 49, 58, 73, 73, 76, 85, 52, 73, 45, 46, 43, 78, 68, 57, 72, 50, 52, 77, 68, 44, 70, 76, 71, 59, 61, 56, 46, 50, 74, 87, 61, 62, 62, 68, 57, 83, 59, 66, 57, 54, 64, 70, 60, 56, 48, 58, 84, 64, 61, 70, 36, 80, 60, 73, 70, 76, 61, 61, 72, 60, 97, 64, 72, 67, 68, 56, 77, 57, 51, 77, 65, 70, 44, 60, 71, 69, 75, 100, 62, 68, 60, 60, 44, 75, 65, 60, 65, 58, 50, 73, 61, 71, 65, 78, 71, 84, 62, 101, 49, 69, 66, 57, 72, 77, 77, 59, 47, 85, 60, 65, 50, 70, 67, 63, 80, 67, 89, 65, 90, 58, 62, 63, 99, 66, 59, 84, 69, 60, 80, 43, 62, 61, 66, 67, 87, 49, 73, 61, 64, 70, 60, 60, 58, 59, 62, 75, 45, 75, 75, 64, 77, 55, 68, 64, 60, 67, 75, 62, 82, 72, 78, 60, 62, 77, 54, 68, 75, 95, 38, 60, 65, 71, 42, 52, 72, 63, 90, 57, 38, 57, 77, 59, 82, 74, 69, 61, 66, 62, 81, 62, 61, 42, 60, 55, 92, 59, 91, 70, 45, 88, 64, 44, 60, 79, 97, 79, 62, 64, 46, 73, 91, 49, 50, 71, 64, 40, 59, 52, 72, 55, 71, 65, 74, 57, 46, 75, 46, 59, 61, 55, 52, 64, 68, 60, 53, 90, 58, 61, 54, 61, 66, 72, 57, 71, 68, 102, 62, 56, 56, 64, 94, 61, 48, 84, 46, 66, 69, 68, 83, 79, 86, 72, 71, 57, 65, 77, 75, 48, 89, 63, 71, 56, 50, 94, 106, 77, 74, 68, 48, 54, 59, 86, 73, 52, 53, 71, 76, 62, 58, 67, 56, 86, 63, 91, 56, 70, 61, 76, 61, 67, 62, 47, 90, 74, 55, 60, 63, 86, 43, 68, 83, 77, 63, 61, 59, 60, 56, 69, 61, 77, 52, 61, 65, 76, 68, 62, 76, 74, 70, 47, 64, 57, 64, 59, 53, 59, 80, 105, 67, 70, 81, 54, 78, 58, 69, 63, 80, 62, 69, 88, 66, 82, 77, 73, 53, 61, 82, 70, 74, 90, 58, 48, 86, 54, 73, 47, 55, 79, 60, 71, 69, 51, 85, 60, 57, 104, 63, 45, 48, 61, 57, 66, 93, 52, 90, 50, 75, 75, 61, 48, 75, 86, 67, 59, 66, 64, 81, 68, 52, 43, 44, 85, 53, 54, 72, 69, 77, 83, 83, 77, 66, 73, 53, 72, 79, 53, 68, 44, 55, 88, 86, 66, 58, 66, 61, 43, 94, 74, 58, 69, 74, 72, 53, 68, 62, 71, 68, 56, 75, 67, 73, 53, 54, 75, 82, 77, 73, 77, 66, 79, 67, 89, 79, 72, 73, 67, 41, 61, 65, 55, 71, 63, 61, 72, 57, 62, 33, 48, 51, 56, 75, 53, 69, 62, 47, 57, 73, 62, 71, 52, 67, 57, 44, 74, 46, 53, 67, 81, 64, 58, 65, 48, 54, 63, 70, 99, 49, 63, 59, 62, 90, 52, 83, 69, 57, 88, 59, 69, 106, 85, 65, 94, 61, 66, 65, 52, 56, 63, 65, 73, 61, 62, 72, 85, 58, 53, 65, 66, 72, 60, 82, 54, 61, 75, 60, 50, 63, 62, 66, 63, 52, 66, 50, 56, 77, 89, 73, 54, 69, 60, 66, 56, 54, 76, 74, 59, 58, 63, 91, 67, 77, 64, 65, 61, 61, 70, 63, 59, 69, 67, 48, 72, 51, 59, 54, 64, 67, 58, 69, 59, 66, 63, 59, 104, 54, 62, 54, 71, 64, 111, 77, 83, 65, 58, 46, 69, 63, 47, 48, 55, 85, 66, 77, 75, 69, 59, 69, 56, 59, 79, 45, 66, 65, 51, 45, 67, 66, 51, 77, 72, 65, 66, 72, 108, 60, 74, 57, 70, 46, 65, 51, 117, 63, 83, 55, 61, 75, 80, 70, 50, 74, 56, 51, 64, 66, 64, 59, 68, 52, 68, 63, 72, 48, 83, 56, 78, 68, 56, 51, 51, 54, 70, 66, 48, 69, 72, 77, 50, 56, 65, 68, 57, 63, 60, 78, 62, 60, 66, 60, 66, 63, 65, 85, 86, 64, 70, 69, 61, 78, 62, 63, 66, 88, 70, 54, 67, 70, 88, 62, 87, 75, 66, 50, 57, 59, 51, 74, 48, 56, 56, 67, 74, 69, 61, 84, 80, 65, 56, 60, 55, 68, 54, 67, 67, 73, 58, 65, 63, 59, 61, 76, 77, 60, 62, 73, 59, 63, 47, 57, 92, 61, 70, 104, 54, 75, 85, 66, 63, 80, 71, 38, 56, 55, 66, 60, 65, 58, 56, 63, 69, 60, 83, 56, 70, 57, 67, 58, 53, 65, 54, 43, 59, 71, 58, 96, 52, 74, 57, 65, 68, 42, 78, 61, 91, 84, 48, 69, 57, 67, 59, 62, 55, 78, 53, 99, 68, 108, 68, 60, 56, 59, 64, 75, 80, 53, 66, 48, 58, 95, 74, 96, 61, 83, 77, 55, 70, 51, 48, 64, 54, 63, 87, 87, 78, 67, 74, 77, 63, 78, 77, 59, 98, 65, 78, 89, 41, 66, 63, 74, 64, 79, 59, 53, 59, 88, 87, 73, 66, 77, 66, 63, 66, 66, 64, 92, 52, 63, 59, 72, 66, 52, 79, 61, 76, 53, 109, 57, 58, 57, 80, 75, 73, 53, 59, 42, 63, 50, 64, 79, 53, 66, 74, 59, 52, 62, 61, 56, 65, 54, 49, 66, 67, 80, 56, 63, 54, 50, 70, 77, 83, 75, 75, 67, 61, 52, 63, 61, 63, 64, 56, 63, 57, 63, 73, 50, 55, 71, 73, 66, 64, 63, 63, 62, 62, 60, 70, 54, 62, 57, 57, 63, 74, 58, 62, 57, 76, 63, 62, 62, 75, 44, 67, 106, 62, 57, 62, 69, 44, 57, 80, 67, 70, 72, 59, 57, 62, 57, 62, 70, 54, 56, 48, 66, 66, 66, 69, 86, 81, 51, 62, 82, 65, 115, 89, 65, 75, 97, 92, 83, 62, 60, 79, 55, 84, 52, 54, 64, 76, 62, 76, 67, 51, 135, 60, 71, 70, 86, 72, 58, 73, 44, 69, 48, 63, 57, 59, 65, 121, 64, 82, 42, 48, 83, 66, 70, 73, 68, 66, 85, 46, 60, 60, 57, 65, 62, 74, 52, 59, 75, 67, 73, 65, 60, 74, 56, 60, 57, 65, 69, 71, 49, 85, 46, 85, 54, 52, 67, 56, 75, 46, 66, 48, 83, 54, 58, 71, 79, 87, 67, 50, 60, 65, 62, 63, 83, 65, 72, 54, 65, 50, 76, 58, 79, 61, 82, 52, 62, 79, 56, 83, 78, 114, 62, 67, 74, 72, 82, 64, 44, 64, 89, 51, 80, 51, 50, 60, 49, 48, 63, 61, 74, 59, 97, 65, 64, 67, 67, 84, 45, 52, 46, 76, 59, 64, 85, 66, 118, 74, 63, 64, 74, 73, 61, 103, 74, 57, 55, 88, 68, 67, 67, 55, 52, 56, 70, 67, 53, 60, 86, 71, 68, 66, 70, 63, 48, 67, 77, 64, 65, 83, 69, 51, 65, 44, 55, 48, 66, 76, 60, 64, 72, 64, 81, 75, 65, 55, 92, 70, 82, 69, 61, 58, 47, 55, 65, 67, 53, 59, 76, 56, 72, 64, 80, 74, 55, 65, 53, 67, 62, 58, 77, 58, 53, 61, 45, 65, 69, 57, 76, 65, 79, 51, 55, 57, 38, 43, 74, 98, 103, 58, 56, 69, 84, 71, 60, 37, 51, 55, 63, 51, 84, 51, 52, 94, 65, 72, 71, 36, 80, 63, 76, 53, 61, 69, 41, 66, 55, 64, 82, 66, 52, 53, 89, 87, 61, 55, 89, 64, 86, 71, 63, 68, 76, 50, 66, 39, 62, 69, 55, 70, 67, 59, 59, 59, 58, 63, 58, 45, 72, 61, 72, 55, 49, 80, 50, 49, 66, 70, 51, 57, 66, 64, 65, 70, 55, 56, 72, 68, 64, 52, 70, 74, 60, 60, 74, 56, 55, 67, 57, 35, 83, 63, 58, 73, 64, 104, 61, 33, 72, 63, 74, 61, 81, 60, 70, 82, 59, 56, 59, 56, 64, 75, 67, 90, 67, 55, 129, 83, 69, 66, 66, 60, 67, 71, 69, 69, 59, 61, 59, 72, 71, 72, 54, 56, 68, 72, 63, 133, 65, 63, 112, 67, 63, 68, 93, 65, 66, 58, 64, 57, 56, 103, 53, 73, 81, 56, 59, 52, 63, 72, 41, 68, 66, 47, 46, 67, 110, 62, 68, 73, 79, 60, 61, 64, 89, 65, 78, 77, 81, 66, 66, 72, 47, 53, 95, 47, 60, 64, 62, 78, 64, 60, 63, 66, 58, 65, 70, 76, 59, 68, 71, 72, 58, 61, 64, 66, 61, 60, 64, 65, 55, 68, 47, 58, 70, 75, 66, 51, 103, 65, 63, 79, 92, 55, 59, 63, 54, 75, 75, 69, 70, 61, 66, 66, 60, 61, 51, 57, 62, 63, 78, 85, 73, 51, 56, 51, 59, 67, 83, 97, 55, 75, 56, 84, 66, 95, 64, 74, 78, 76, 68, 52, 56, 67, 70, 53, 88, 57, 77, 80, 61, 47, 67, 76, 53, 80, 66, 62, 52, 64, 56, 65, 69, 74, 43, 69, 60, 70, 86, 60, 69, 60, 102, 72, 57, 74, 70, 82, 39, 68, 56, 64, 51, 52, 66, 54, 78, 73, 67, 68, 73, 71, 63, 65, 65, 68, 79, 51, 113, 50, 55, 49, 74, 53, 65, 85, 69, 59, 64, 55, 62, 71, 49, 63, 61, 69, 114, 71, 53, 72, 58, 76, 62, 57, 53, 70, 70, 66, 67, 73, 54, 49, 68, 55, 58, 78, 65, 67, 74, 99, 54, 55, 63, 60, 70, 63, 40, 85, 62, 85, 58, 65, 100, 44, 66, 107, 59, 80, 69, 67, 75, 48, 53, 56, 68, 78, 76, 68, 50, 65, 61, 83, 70, 57, 71, 57, 89, 63, 64, 75, 55, 67, 58, 79, 54, 74, 75, 75, 71, 84, 73, 76, 51, 83, 56, 74, 67, 67, 86, 73, 52, 63, 73, 61, 64, 47, 60, 52, 69, 65, 68, 54, 60, 46, 64, 56, 83, 65, 71, 50, 71, 66, 89, 55, 53, 135, 90, 74, 65, 58, 59, 66, 76, 61, 70, 54, 66, 56, 64, 60, 62, 64, 62, 74, 62, 55, 59, 60, 72, 59, 82, 63, 50, 61, 52, 75, 62, 56, 78, 68, 51, 59, 56, 66, 49, 58, 54, 61, 64, 54, 52, 63, 62, 57, 85, 72, 70, 121, 65, 44, 58, 78, 72, 54, 61, 56, 67, 58, 70, 61, 69, 54, 81, 52, 58, 79, 50, 57, 50, 53, 61, 87, 73, 120, 59, 51, 63, 59, 84, 56, 60, 52, 57, 43, 78, 53, 79, 61, 70, 55, 63, 62, 60, 44, 74, 67, 51, 81, 79, 68, 63, 90, 64, 68, 46, 52, 44, 70, 54, 78, 52, 73, 50, 64, 64, 50, 57, 59, 74, 71, 75, 59, 48, 64, 65, 73, 57, 58, 49, 64, 81, 60, 51, 63, 59, 99, 83, 71, 41, 59, 80, 50, 57, 59, 85, 68, 90, 96, 53, 67, 61, 59, 73, 84, 95, 56, 72, 60, 91, 54, 71, 57, 75, 62, 64, 64, 75, 81, 75, 61, 80, 63, 63, 69, 75, 57, 66, 68, 53, 104, 68, 57, 54, 41, 46, 43, 93, 71, 68, 52, 62, 69, 56, 61, 73, 76, 58, 62, 80, 72, 65, 50, 64, 60, 81, 77, 56, 61, 58, 69, 66, 48, 50, 82, 61, 58, 53, 95, 90, 46, 65, 73, 75, 47, 52, 84, 74, 68, 36, 91, 61, 47, 68, 77, 36, 53, 80, 55, 51, 62, 76, 57, 72, 68, 58, 67, 89, 64, 90, 77, 67, 78, 53, 55, 63, 60, 88, 58, 57, 60, 67, 66, 76, 139, 60, 64, 63, 66, 60, 79, 52, 89, 63, 65, 64, 63, 52, 72, 48, 66, 63, 72, 91, 91, 75, 65, 61, 58, 61, 58, 59, 106, 63, 60, 54, 70, 75, 78, 55, 74, 60, 44, 55, 65, 65, 47, 54, 49, 53, 67, 41, 72, 49, 70, 56, 68, 64, 56, 73, 59, 64, 79, 91, 70, 60, 67, 68, 79, 47, 62, 84, 50, 81, 63, 81, 73, 58, 72, 67, 73, 78, 71, 75, 72, 70, 62, 71, 68, 71, 56, 75, 100, 49, 68, 62, 93, 63, 66, 54, 79, 58, 77, 47, 40, 70, 59, 61, 69, 65, 50, 48, 76, 55, 48, 65, 91, 59, 55, 73, 73, 54, 44, 73, 71, 54, 61, 52, 58, 56, 65, 47, 48, 59, 78, 60, 52, 82, 66, 54, 61, 68, 90, 98, 76, 57, 76, 82, 74, 57, 98, 78, 58, 54, 53, 51, 53, 42, 52, 90, 51, 73, 133, 76, 58, 62, 61, 86, 68, 101, 71, 78, 66, 72, 78, 85, 77, 69, 58, 65, 42, 66, 78, 67, 27, 62, 54, 85, 63, 56, 57, 67, 79, 61, 61, 58, 55, 55, 78, 63, 38, 46, 55, 57, 58, 56, 105, 71, 64, 61, 62, 74, 69, 48, 55, 48, 65, 75, 62, 64, 69, 84, 66, 66, 62, 74, 75, 67, 58, 89, 62, 68, 81, 69, 70, 70, 58, 49, 83, 65, 59, 60, 61, 47, 90, 67, 47, 87, 67, 62, 65, 88, 54, 70, 74, 63, 52, 61, 74, 61, 59, 59, 66, 61, 72, 63, 57, 71, 69, 66, 61, 78, 61, 72, 65, 55, 70, 79, 73, 77, 52, 63, 70, 86, 69, 68, 77, 57, 65, 86, 58, 55, 64, 56, 61, 64, 48, 83, 53, 74, 72, 67, 82, 58, 69, 81, 62, 63, 66, 85, 75, 45, 75, 39, 62, 59, 48, 73, 57, 54, 59, 82, 64, 71, 73, 87, 80, 71, 78, 50, 67, 60, 72, 72, 87, 66, 49, 71, 60, 68, 61, 58, 102, 56, 51, 69, 83, 36, 79, 62, 65, 78, 65, 65, 61, 49, 78, 64, 60, 90, 80, 78, 61, 64, 100, 67, 69, 71, 63, 49, 70, 59, 38, 64, 93, 63, 61, 52, 64, 60, 53, 59, 67, 56, 49, 67, 61, 109, 80, 52, 65, 69, 67, 63, 62, 51, 66, 73, 70, 52, 65, 51, 65, 92, 65, 60, 71, 57, 56, 46, 53, 61, 47, 63, 56, 62, 56, 61, 67, 73, 63, 59, 56, 63, 65, 64, 60, 89, 79, 54, 57, 102, 92, 70, 51, 72, 58, 59, 84, 62, 57, 73, 67, 68, 48, 61, 85, 62, 76, 77, 73, 73, 111, 62, 60, 73, 66, 52, 63, 60, 69, 89, 65, 61, 68, 58, 104, 55, 79, 79, 61, 95, 60, 56, 84, 59, 73, 70, 83, 79, 59, 65, 85, 46, 53, 97, 77, 83, 63, 69, 58, 69, 56, 73, 51, 56, 63, 71, 71, 63, 53, 79, 65, 72, 73, 67, 75, 57, 68, 49, 58, 59, 77, 52, 54, 53, 70, 67, 75, 86, 54, 60, 72, 59, 53, 78, 55, 58, 54, 58, 64, 52, 56, 73, 65, 64, 81, 49, 72, 57, 68, 75, 62, 63, 57, 52, 68, 58, 77, 77, 54, 60, 62, 56, 46, 77, 61, 63, 57, 67, 76, 51, 64, 73, 88, 61, 61, 57, 71, 46, 63, 75, 74, 77, 56, 72, 73, 50, 63, 52, 63, 55, 48, 60, 52, 69, 64, 65, 71, 73, 68, 62, 60, 64, 59, 62, 64, 61, 78, 73, 61, 60, 67, 76, 72, 47, 43, 65, 68, 65, 54, 62, 56, 51, 66, 69, 56, 77, 54, 59, 58, 68, 45, 58, 71, 76, 81, 53, 54, 50, 80, 75, 60, 143, 68, 56, 64, 78, 67, 63, 97, 68, 59, 74, 59, 94, 80, 53, 72, 68, 77, 69, 56, 66, 67, 62, 59, 59, 58, 63, 69, 78, 65, 54, 81, 69, 65, 52, 52, 77, 80, 63, 63, 68, 60, 56, 66, 77, 65, 56, 82, 61, 72, 61, 88, 76, 75, 93, 75, 77, 61, 81, 88, 64, 71, 79, 63, 58, 63, 59, 67, 58, 50, 59, 75, 61, 76, 62, 70, 75, 68, 69, 39, 56, 40, 53, 59, 59, 60, 67, 77, 71, 96, 50, 100, 56, 92, 69, 50, 71, 74, 90, 39, 71, 64, 51, 61, 93, 60, 58, 64, 63, 60, 65, 60, 75, 68, 60, 67, 64, 59, 55, 77, 65, 68, 69, 49, 60, 66, 79, 132, 75, 63, 57, 55, 66, 69, 72, 69, 63, 49, 82, 63, 53, 61, 68, 66, 36, 96, 80, 73, 59, 84, 65, 49, 57, 59, 43, 87, 63, 66, 55, 54, 78, 65, 52, 70, 58, 68, 61, 61, 63, 57, 84, 57, 66, 58, 64, 59, 77, 58, 98, 138, 51, 70, 59, 54, 51, 57, 65, 76, 57, 69, 49, 64, 64, 47, 67, 65, 53, 67, 58, 62, 54, 54, 61, 68, 65, 69, 73, 62, 70, 61, 65, 64, 57, 78, 61, 57, 62, 62, 60, 55, 71, 63, 73, 66, 47, 55, 73, 76, 58, 72, 83, 68, 72, 85, 57, 57, 68, 63, 50, 69, 59, 73, 73, 76, 57, 89, 58, 87, 57, 64, 79, 79, 66, 51, 52, 71, 70, 81, 60, 76, 55, 58, 63, 62, 69, 58, 84, 94, 71, 82, 54, 80, 74, 66, 62, 57, 54, 60, 77, 77, 69, 59, 55, 49, 68, 73, 51, 65, 89, 46, 73, 70, 73, 64, 61, 80, 60, 62, 69, 57, 80, 59, 68, 54, 81, 50, 81, 61, 84, 65, 71, 51, 55, 55, 56, 64, 47, 84, 97, 75, 63, 71, 53, 54, 63, 63, 76, 81, 56, 83, 84, 72, 74, 77, 65, 64, 114, 51, 64, 57, 79, 82, 56, 52, 79, 73, 52, 57, 61, 88, 76, 66, 41, 71, 62, 57, 68, 79, 46, 65, 51, 87, 68, 56, 76, 57, 61, 66, 64, 58, 57, 67, 74, 56, 64, 56, 59, 50, 63, 74, 115, 78, 56, 57, 56, 53, 58, 55, 84, 70, 75, 71, 66, 74, 77, 87, 77, 88, 69, 61, 57, 79, 63, 93, 68, 87, 102, 80, 64, 70, 57, 58, 40, 66, 78, 59, 74, 74, 60, 49, 55, 72, 68, 78, 65, 66, 70, 63, 40, 40, 45, 81, 56, 71, 44, 57, 77, 62, 61, 59, 67, 59, 72, 63, 63, 74, 67, 92, 60, 65, 67, 57, 65, 74, 64, 68, 71, 78, 71, 58, 80, 73, 82, 70, 60, 59, 56, 72, 58, 87, 59, 75, 108, 54, 56, 55, 55, 102, 52, 81, 63, 73, 89, 92, 64, 54, 61, 57, 66, 82, 62, 59, 63, 63, 72, 54, 66, 57, 54, 55, 57, 64, 69, 85, 69, 85, 92, 58, 67, 64, 59, 44, 65, 63, 62, 100, 70, 54, 63, 65, 59, 53, 72, 68, 47, 55, 52, 64, 83, 52, 51, 50, 51, 73, 67, 64, 49, 68, 76, 42, 46, 57, 70, 83, 46, 52, 75, 67, 74, 57, 56, 66, 64, 117, 66, 61, 59, 62, 105, 55, 50, 75, 68, 63, 51, 62, 52, 52, 80, 57, 62, 60, 51, 33, 81, 80, 69, 69, 62, 60, 65, 67, 57, 39, 43, 53, 59, 52, 101, 52, 65, 49, 49, 40, 76, 73, 47, 110, 55, 49, 61, 57, 62, 60, 67, 58, 46, 66, 73, 68, 62, 53, 98, 56, 69, 91, 71, 81, 73, 63, 71, 61, 69, 71, 74, 51, 60, 70, 66, 53, 87, 71, 64, 60, 69, 83, 70, 56, 46, 59, 54, 64, 86, 38, 46, 77, 59, 67, 50, 64, 64, 61, 62, 48, 54, 71, 69, 48, 56, 65, 49, 68, 71, 89, 77, 54, 61, 65, 60, 50, 44, 60, 59, 70, 85, 63, 76, 74, 66, 78, 66, 52, 66, 74, 63, 58, 70, 50, 68, 74, 45, 63, 69, 68, 58, 55, 63, 59, 61, 52, 75, 77, 63, 47, 40, 69, 53, 70, 75, 61, 62, 57, 82, 57, 59, 72, 65, 58, 55, 74, 63, 57, 70, 49, 99, 82, 57, 62, 55, 76, 58, 67, 63, 81, 56, 55, 89, 75, 72, 73, 71, 103, 78, 58, 69, 85, 58, 46, 57, 68, 50, 73, 65, 64, 70, 59, 86, 52, 58, 83, 64, 52, 55, 84, 57, 135, 46, 70, 60, 58, 65, 75, 56, 67, 69, 75, 84, 99, 63, 52, 60, 57, 58, 59, 69, 49, 55, 40, 47, 76, 70, 63, 70, 88, 91, 73, 54, 68, 73, 98, 74, 63, 70, 59, 62, 55, 58, 59, 71, 76, 52, 53, 74, 54, 98, 71, 64, 72, 139, 68, 64, 65, 117, 71, 56, 81, 61, 62, 86, 65, 74, 56, 59, 69, 70, 61, 64, 77, 56, 78, 71, 60, 73, 86, 64, 64, 86, 69, 68, 59, 81, 54, 106, 58, 60, 58, 58, 105, 72, 72, 68, 63, 86, 38, 71, 45, 62, 65, 61, 91, 81, 67, 59, 62, 67, 70, 63, 65, 66, 68, 71, 70, 55, 62, 54, 66, 50, 57, 51, 57, 69, 79, 70, 59, 70, 107, 81, 53, 75, 94, 66, 58, 87, 63, 62, 59, 66, 76, 72, 55, 50, 51, 60, 85, 59, 49, 52, 65, 50, 61, 53, 44, 66, 56, 84, 62, 53, 88, 83, 70, 71, 89, 63, 55, 58, 70, 66, 60, 53, 80, 71, 60, 52, 52, 62, 54, 55, 78, 77, 85, 63, 56, 53, 59, 67, 57, 59, 57, 77, 66, 57, 66, 53, 59, 56, 89, 94, 58, 57, 70, 77, 62, 52, 73, 101, 70, 69, 62, 91, 53, 72, 72, 54, 71, 58, 66, 66, 67, 59, 72, 68, 63, 63, 70, 81, 64, 65, 61, 72, 82, 87, 48, 66, 67, 82, 69, 48, 48, 47, 67, 50, 51, 48, 59, 64, 66, 77, 61, 60, 54, 93, 89, 126, 47, 71, 69, 57, 54, 46, 64, 75, 68, 69, 60, 77, 55, 55, 71, 71, 67, 63, 64, 78, 105, 58, 58, 59, 48, 54, 66, 70, 55, 63, 53, 64, 66, 79, 78, 47, 59, 55, 64, 63, 49, 70, 101, 51, 56, 60, 62, 72, 60, 70, 44, 70, 71, 66, 62, 56, 75, 92, 66, 87, 69, 67, 53, 67, 50, 62, 59, 75, 66, 66, 73, 52, 72, 74, 58, 68, 63, 51, 74, 82, 58, 66, 56, 62, 69, 72, 47, 66, 70, 71, 55, 68, 78, 72, 48, 66, 68, 54, 55, 65, 60, 92, 67, 57, 66, 58, 57, 45, 48, 67, 66, 62, 67, 75, 57, 64, 83, 65, 68, 70, 69, 54, 72, 61, 84, 65, 82, 67, 115, 62, 88, 57, 66, 62, 49, 63, 52, 64, 70, 75, 65, 71, 55, 63, 48, 59, 85, 48, 66, 64, 85, 66, 61, 56, 74, 81, 48, 85, 52, 63, 48, 50, 68, 62, 68, 74, 71, 42, 49, 75, 74, 100, 62, 58, 63, 55, 91, 63, 70, 67, 81, 81, 52, 98, 51, 77, 67, 54, 57, 133, 56, 61, 64, 87, 56, 53, 162, 72, 81, 74, 55, 47, 69, 60, 71, 60, 79, 60, 51, 51, 58, 60, 65, 67, 62, 57, 60, 62, 58, 66, 67, 62, 53, 91, 73, 63, 85, 75, 64, 62, 59, 55, 52, 51, 49, 49, 65, 68, 76, 53, 65, 60, 67, 54, 58, 74, 51, 61, 75, 62, 97, 71, 64, 94, 69, 69, 65, 76, 47, 63, 74, 64, 57, 71, 70, 61, 53, 58, 79, 91, 60, 119, 40, 67, 46, 59, 46, 51, 62, 71, 47, 56, 54, 65, 57, 45, 60, 44, 58, 72, 77, 108, 97, 60, 67, 63, 59, 51, 62, 69, 68, 55, 61, 52, 72, 73, 56, 68, 60, 90, 84, 97, 94, 74, 62, 56, 64, 68, 97, 73, 65, 67, 61, 67, 64, 58, 70, 58, 55, 76, 71, 79, 58, 72, 61, 74, 61, 66, 55, 67, 52, 69, 81, 58, 70, 46, 54, 61, 61, 69, 55, 104, 57, 70, 67, 55, 68, 62, 79, 68, 59, 61, 47, 66, 57, 55, 51, 66, 60, 64, 67, 71, 66, 59, 70, 63, 63, 71, 59, 76, 59, 85, 73, 66, 56, 61, 42, 74, 70, 55, 57, 62, 51, 69, 67, 60, 66, 60, 70, 63, 64, 76, 95, 62, 62, 57, 77, 84, 63, 52, 76, 63, 51, 71, 78, 51, 59, 61, 46, 68, 62, 51, 65, 82, 59, 74, 65, 44, 55, 70, 73, 57, 102, 55, 85, 76, 69, 69, 101, 63, 57, 60, 69, 44, 57, 51, 48, 71, 76, 92, 62, 55, 59, 83, 50, 60, 79, 49, 56, 54, 55, 71, 68, 81, 59, 70, 69, 67, 63, 75, 66, 69, 64, 63, 70, 89, 75, 59, 55, 53, 65, 60, 56, 70, 97, 55, 60, 62, 76, 69, 58, 70, 57, 54, 47, 53, 59, 74, 62, 71, 58, 62, 66, 53, 103, 77, 74, 76, 77, 64, 58, 71, 63, 60, 61, 62, 57, 75, 62, 48, 49, 82, 59, 59, 75, 65, 68, 72, 56, 62, 69, 50, 71, 75, 67, 97, 58, 64, 110, 70, 62, 59, 57, 92, 55, 59, 57, 56, 88, 74, 62, 60, 62, 84, 59, 53, 68, 61, 55, 62, 55, 90, 73, 64, 77, 49, 59, 60, 46, 83, 70, 111, 59, 63, 74, 73, 58, 66, 62, 62, 65, 72, 49, 53, 80, 58, 64, 69, 54, 69, 61, 72, 55, 57, 63, 50, 72, 51, 73, 65, 62, 75, 61, 58, 73, 55, 64, 45, 83, 56, 80, 54, 62, 57, 72, 65, 66, 63, 87, 58, 72, 73, 62, 67, 90, 52, 78, 71, 67, 52, 65, 66, 71, 69, 68, 54, 70, 59, 62, 80, 58, 69, 66, 81, 55, 59, 63, 71, 68, 59, 58, 54, 59, 61, 60, 69, 72, 79, 78, 63, 64, 60, 60, 75, 60, 59, 78, 57, 69, 75, 69, 60, 66, 64, 67, 70, 60, 86, 64, 61, 53, 72, 57, 61, 73, 62, 77, 83, 85, 45, 48, 73, 53, 45, 62, 62, 75, 81, 63, 46, 65, 61, 51, 49, 76, 59, 51, 61, 67, 72, 74, 52, 51, 74, 66, 61, 67, 78, 50, 44, 74, 66, 73, 79, 57, 122, 67, 72, 58, 60, 57, 45, 64, 57, 95, 77, 54, 57, 61, 93, 84, 60, 49, 80, 54, 69, 51, 60, 55, 63, 60, 97, 79, 83, 59, 63, 83, 73, 74, 72, 51, 65, 56, 56, 80, 77, 95, 42, 53, 61, 76, 45, 54, 65, 76, 79, 65, 60, 65, 74, 44, 84, 62, 65, 60, 65, 61, 67, 50, 65, 57, 52, 64, 59, 70, 71, 68, 53, 53, 65, 49, 62, 51, 49, 64, 66, 63, 65, 65, 56, 58, 67, 65, 67, 55, 60, 54, 69, 70, 80, 79, 71, 67, 50, 74, 75, 77, 80, 82, 63, 99, 62, 73, 75, 60, 57, 61, 57, 89, 59, 73, 53, 51, 64, 82, 61, 61, 70, 49, 62, 56, 63, 65, 78, 69, 49, 70, 50, 114, 61, 63, 102, 67, 43, 51, 72, 50, 76, 65, 61, 77, 72, 74, 62, 57, 80, 50, 77, 117, 40, 54, 87, 72, 65, 62, 53, 67, 65, 52, 87, 58, 57, 54, 82, 58, 75, 114, 83, 70, 64, 77, 54, 68, 72, 73, 50, 61, 61, 63, 68, 75, 81, 71, 67, 49, 70, 56, 81, 68, 63, 83, 77, 72, 52, 58, 61, 58, 70, 63, 83, 75, 73, 77, 67, 71, 53, 57, 64, 49, 60, 73, 64, 44, 60, 61, 61, 71, 72, 83, 82, 129, 72, 60, 55, 56, 59, 63, 62, 55, 66, 90, 82, 62, 61, 71, 61, 88, 64, 61, 59, 63, 60, 50, 65, 128, 85, 54, 56, 69, 55, 70, 58, 61, 63, 44, 59, 55, 52, 41, 55, 68, 85, 58, 62, 92, 54, 60, 110, 60, 55, 65, 64, 77, 71, 76, 52, 56, 68, 62, 58, 63, 87, 64, 55, 36, 57, 116, 56, 83, 49, 56, 70, 67, 110, 94, 78, 87, 58, 58, 78, 70, 74, 81, 63, 71, 47, 66, 81, 56, 70, 56, 84, 61, 70, 66, 61, 66, 62, 92, 61, 69, 61, 80, 77, 70, 44, 71, 80, 64, 95, 80, 63, 59, 53, 57, 64, 105, 72, 50, 50, 63, 54, 67, 69, 50, 51, 52, 65, 75, 72, 49, 73, 65, 76, 57, 90, 51, 73, 49, 56, 61, 76, 67, 64, 58, 51, 67, 80, 71, 62, 70, 42, 90, 83, 85, 63, 50, 55, 77, 54, 84, 72, 61, 69, 78, 80, 71, 90, 83, 55, 76, 92, 87, 73, 59, 57, 92, 88, 48, 94, 68, 54, 52, 78, 30, 52, 43, 68, 60, 91, 60, 72, 62, 69, 76, 58, 72, 55, 91, 66, 51, 79, 104, 79, 71, 76, 66, 75, 71, 44, 55, 59, 75, 64, 50, 84, 64, 53, 68, 79, 64, 67, 57, 46, 69, 72, 64, 68, 68, 60, 46, 80, 75, 50, 67, 64, 68, 68, 63, 57, 55, 73, 51, 60, 82, 80, 54, 47, 51, 57, 44, 74, 96, 66, 63, 49, 61, 79, 70, 59, 49, 64, 65, 87, 56, 49, 70, 62, 69, 57, 72, 53, 70, 58, 44, 76, 50, 65, 51, 53, 82, 48, 75, 61, 73, 85, 86, 53, 42, 55, 58, 59, 65, 72, 62, 67, 71, 89, 69, 64, 36, 75, 54, 71, 56, 96, 78, 96, 73, 72, 64, 44, 116, 63, 65, 63, 91, 71, 77, 67, 50, 86, 52, 32, 105, 61, 71, 58, 58, 87, 65, 40, 78, 69, 63, 67, 77, 59, 50, 111, 63, 48, 68, 75, 52, 123, 31, 71, 57, 64, 66, 56, 63, 66, 63, 44, 58, 79, 62, 64, 64, 75, 55, 49, 76, 84, 66, 110, 49, 75, 65, 57, 60, 49, 108, 51, 56, 80, 59, 84, 35, 70, 50, 77, 68, 72, 71, 53, 59, 59, 73, 84, 89, 54, 68, 57, 52, 61, 50, 103, 77, 46, 58, 55, 79, 101, 58, 64, 65, 56, 52, 77, 80, 62, 70, 60, 49, 75, 45, 61, 58, 56, 62, 72, 90, 76, 65, 62, 80, 57, 65, 58, 56, 70, 55, 69, 49, 70, 75, 51, 54, 66, 74, 67, 60, 43, 65, 77, 84, 85, 54, 39, 53, 77, 59, 54, 101, 53, 48, 92, 75, 65, 58, 73, 80, 65, 52, 76, 83, 69, 76, 53, 80, 70, 66, 81, 88, 77, 59, 52, 88, 62, 71, 57, 47, 85, 58, 57, 63, 59, 48, 87, 70, 66, 63, 71, 64, 76, 83, 83, 76, 41, 63, 64, 56, 64, 65, 57, 46, 73, 60, 42, 84, 54, 77, 65, 51, 70, 67, 57, 37, 82, 54, 71, 66, 48, 77, 69, 66, 67, 67, 87, 63, 63, 57, 52, 99, 68, 49, 57, 52, 68, 57, 63, 77, 65, 74, 113, 60, 55, 79, 58, 72, 56, 58, 48, 59, 71, 138, 53, 56, 53, 91, 83, 56, 67, 66, 52, 82, 90, 57, 69, 58, 64, 66, 64, 77, 47, 109, 72, 44, 56, 68, 71, 56, 50, 59, 58, 69, 69, 52, 73, 67, 65, 58, 65, 72, 47, 72, 75, 51, 54, 72, 72, 59, 55, 58, 72, 87, 95, 58, 45, 95, 60, 42, 66, 100, 79, 80, 81, 51, 71, 80, 62, 58, 60, 66, 66, 69, 86, 58, 52, 55, 48, 61, 87, 61, 76, 50, 63, 83, 57, 73, 84, 107, 71, 45, 77, 72, 79, 62, 65, 56, 60, 58, 73, 55, 82, 90, 52, 82, 57, 55, 64, 72, 62, 59, 60, 71, 31, 80, 65, 64, 46, 59, 70, 56, 51, 54, 36, 61, 62, 96, 61, 81, 59, 50, 59, 73, 58, 56, 57, 65, 59, 86, 97, 64, 93, 77, 67, 79, 66, 55, 57, 68, 62, 61, 52, 78, 60, 74, 47, 45, 83, 64, 86, 78, 118, 40, 76, 68, 44, 84, 45, 76, 63, 53, 76, 67, 53, 68, 66, 50, 81, 71, 57, 62, 88, 72, 66, 91, 47, 54, 63, 74, 73, 82, 68, 58, 47, 46, 40, 83, 49, 48, 66, 70, 58, 74, 76, 86, 69, 64, 55, 60, 55, 68, 61, 100, 73, 70, 88, 55, 49, 63, 49, 47, 74, 59, 79, 73, 60, 58, 83, 56, 45, 57, 54, 80, 66, 62, 74, 73, 54, 68, 50, 72, 60, 77, 87, 61, 78, 84, 59, 52, 76, 55, 61, 59, 114, 44, 75, 86, 68, 61, 55, 67, 43, 67, 86, 70, 75, 46, 48, 61, 45, 63, 61, 52, 63, 84, 69, 65, 61, 71, 73, 66, 71, 75, 63, 100, 56, 54, 73, 35, 87, 67, 85, 61, 75, 70, 54, 70, 73, 68, 90, 68, 48, 69, 74, 78, 58, 59, 51, 69, 54, 63, 40, 51, 64, 60, 50, 62, 68, 57, 55, 61, 54, 76, 64, 59, 95, 67, 48, 67, 88, 58, 61, 46, 46, 59, 56, 85, 53, 59, 44, 54, 64, 85, 43, 48, 48, 60, 70, 101, 94, 61, 101, 62, 63, 69, 71, 63, 71, 36, 60, 77, 77, 89, 62, 73, 50, 64, 61, 62, 93, 48, 59, 53, 66, 75, 75, 101, 60, 100, 80, 57, 55, 51, 59, 55, 82, 66, 53, 88, 62, 65, 83, 56, 54, 69, 56, 106, 56, 43, 45, 66, 77, 68, 54, 68, 67, 46, 77, 46, 62, 60, 54, 53, 78, 83, 78, 62, 62, 53, 63, 76, 62, 74, 72, 54, 55, 77, 59, 69, 108, 48, 65, 56, 68, 63, 64, 84, 67, 54, 55, 68, 69, 80, 86, 64, 52, 68, 84, 82, 52, 80, 53, 61, 48, 60, 62, 43, 55, 63, 93, 61, 58, 45, 46, 89, 77, 77, 87, 110, 74, 69, 57, 82, 77, 112, 61, 53, 71, 95, 71, 65, 41, 84, 55, 85, 87, 45, 67, 56, 84, 61, 86, 85, 51, 83, 88, 52, 51, 105, 57, 68, 57, 56, 89, 55, 45, 59, 72, 63, 64, 55, 43, 52, 83, 42, 80, 48, 61, 53, 63, 53, 72, 113, 47, 62, 75, 77, 55, 68, 61, 82, 59, 49, 72, 112, 57, 74, 61, 59, 50, 44, 71, 96, 68, 99, 87, 84, 50, 122, 68, 70, 76, 78, 60, 56, 46, 68, 58, 64, 69, 49, 69, 72, 55, 55, 77, 66, 75, 64, 55, 91, 98, 70, 73, 73, 44, 47, 127, 53, 72, 59, 76, 64, 71, 75, 76, 61, 36, 54, 67, 61, 64, 86, 71, 52, 59, 66, 46, 53, 67, 68, 69, 70, 52, 68, 68, 63, 46, 62, 56, 70, 52, 91, 68, 59, 72, 82, 53, 74, 48, 51, 66, 90, 67, 58, 72, 69, 52, 60, 71, 43, 57, 87, 53, 102, 88, 66, 70, 52, 66, 83, 53, 58, 80, 81, 66, 48, 47, 90, 66, 60, 56, 58, 86, 79, 47, 62, 55, 81, 97, 80, 39, 93, 56, 52, 70, 79, 62, 54, 58, 68, 58, 99, 50, 55, 65, 57, 72, 47, 55, 68, 81, 37, 63, 55, 63, 60, 44, 62, 67, 48, 61, 52, 60, 44, 70, 64, 67, 64, 110, 47, 57, 78, 71, 75, 48, 69, 57, 89, 73, 64, 36, 61, 70, 57, 59, 64, 71, 50, 86, 73, 56, 74, 76, 77, 63, 58, 46, 55, 55, 53, 107, 66, 55, 86, 70, 87, 59, 61, 61, 63, 65, 53, 58, 58, 74, 43, 77, 58, 48, 63, 83, 127, 71, 63, 89, 76, 118, 70, 75, 79, 76, 49, 40, 66, 80, 68, 49, 82, 52, 59, 77, 75, 70, 47, 80, 63, 64, 57, 59, 76, 45, 83, 79, 80, 53, 61, 53, 68, 63, 68, 66, 77, 87, 100, 59, 86, 68, 67, 42, 73, 69, 55, 46, 87, 67, 64, 80, 70, 46, 55, 113, 54, 60, 61, 67, 56, 48, 72, 61, 52, 58, 48, 69, 67, 42, 68, 71, 49, 63, 60, 61, 67, 54, 78, 107, 56, 65, 59, 62, 78, 62, 61, 82, 72, 63, 93, 48, 59, 46, 54, 53, 78, 77, 57, 65, 79, 92, 74, 66, 64, 59, 46, 70, 67, 95, 51, 70, 58, 77, 72, 81, 64, 59, 72, 49, 62, 52, 59, 66, 60, 74, 71, 100, 56, 87, 53, 63, 69, 69, 68, 61, 84, 69, 68, 45, 74, 37, 59, 54, 64, 87, 81, 65, 42, 40, 97, 63, 86, 79, 49, 67, 59, 53, 67, 97, 96, 68, 73, 53, 52, 81, 48, 56, 88, 83, 46, 70, 43, 62, 88, 87, 79, 44, 52, 51, 43, 57, 63, 67, 73, 59, 58, 66, 112, 69, 102, 54, 81, 69, 66, 63, 62, 68, 71, 62, 57, 58, 64, 89, 59, 78, 69, 70, 96, 63, 46, 62, 72, 70, 58, 63, 84, 49, 97, 49, 60, 82, 82, 60, 60, 57, 68, 96, 41, 71, 77, 42, 61, 56, 71, 61, 60, 85, 74, 68, 106, 82, 79, 80, 90, 70, 50, 76, 65, 69, 82, 60, 64, 82, 49, 51, 81, 52, 66, 84, 65, 52, 69, 53, 67, 66, 98, 50, 80, 48, 62, 51, 64, 61, 45, 75, 70, 85, 52, 66, 86, 69, 64, 46, 69, 53, 91, 77, 59, 53, 91, 71, 80, 62, 76, 86, 76, 61, 43, 49, 54, 49, 69, 67, 59, 48, 58, 63, 67, 58, 64, 88, 53, 47, 65, 62, 60, 93, 59, 69, 64, 75, 75, 58, 81, 54, 77, 77, 64, 77, 58, 98, 61, 67, 78, 49, 63, 62, 34, 62, 69, 53, 60, 64, 52, 51, 76, 70, 70, 83, 71, 68, 59, 55, 59, 49, 56, 82, 91, 45, 81, 42, 57, 82, 69, 51, 68, 79, 66, 61, 51, 48, 63, 62, 60, 61, 55, 54, 66, 77, 84, 89, 55, 47, 60, 58, 70, 53, 76, 51, 87, 55, 60, 63, 67, 90, 60, 61, 58, 64, 87, 53, 61, 63, 77, 64, 47, 60, 59, 75, 53, 52, 62, 74, 82, 68, 61, 51, 59, 65, 52, 47, 82, 66, 75, 100, 74, 68, 53, 93, 63, 67, 76, 71, 74, 67, 77, 62, 62, 58, 83, 45, 79, 62, 60, 79, 56, 57, 75, 72, 83, 53, 51, 70, 59, 64, 60, 82, 73, 61, 60, 63, 61, 85, 108, 52, 63, 81, 75, 49, 86, 86, 58, 72, 66, 49, 70, 39, 58, 41, 63, 56, 67, 62, 83, 76, 90, 39, 74, 44, 59, 55, 58, 60, 39, 59, 47, 76, 54, 55, 48, 46, 65, 61, 62, 91, 74, 89, 41, 49, 43, 56, 47, 83, 75, 60, 48, 52, 78, 39, 67, 59, 48, 66, 60, 57, 89, 56, 62, 81, 65, 61, 71, 57, 56, 57, 92, 49, 62, 60, 59, 62, 59, 77, 64, 53, 75, 54, 50, 67, 75, 61, 54, 52, 76, 52, 49, 72, 77, 76, 63, 98, 60, 58, 77, 70, 58, 51, 80, 68, 58, 67, 49, 56, 58, 68, 73, 56, 72, 52, 77, 71, 49, 46, 38, 70, 61, 60, 63, 70, 70, 91, 81, 69, 52, 63, 55, 53, 67, 65, 48, 69, 60, 73, 56, 51, 107, 62, 71, 70, 52, 77, 84, 44, 99, 71, 65, 71, 73, 75, 86, 67, 51, 60, 69, 66, 47, 58, 69, 55, 47, 74, 71, 49, 95, 71, 69, 83, 57, 58, 44, 72, 95, 61, 65, 49, 68, 114, 89, 49, 80, 67, 44, 136, 53, 61, 71, 59, 50, 50, 68, 65, 77, 61, 89, 56, 71, 65, 77, 38, 50, 62, 54, 69, 60, 69, 64, 69, 76, 80, 108, 49, 90, 69, 77, 60, 43, 68, 37, 47, 81, 82, 80, 74, 77, 79, 84, 54, 65, 57, 78, 66, 55, 81, 54, 69, 76, 80, 43, 109, 63, 52, 68, 68, 61, 65, 68, 59, 115, 104, 59, 65, 64, 87, 59, 62, 86, 65, 107, 59, 49, 61, 61, 117, 68, 71, 66, 90, 114, 66, 65, 71, 65, 65, 85, 86, 73, 73, 82, 63, 78, 60, 68, 58, 51, 59, 56, 47, 61, 63, 72, 69, 57, 76, 77, 63, 66, 32, 69, 68, 48, 56, 48, 54, 76, 68, 53, 48, 72, 71, 59, 68, 41, 45, 58, 61, 64, 51, 70, 76, 75, 99, 80, 65, 81, 60, 74, 63, 88, 75, 55, 53, 69, 74, 60, 76, 51, 100, 86, 61, 57, 41, 77, 84, 50, 92, 48, 59, 79, 51, 56, 66, 53, 49, 71, 70, 73, 64, 48, 60, 73, 53, 80, 73, 57, 71, 54, 60, 71, 69, 50, 84, 66, 48, 77, 70, 63, 73, 77, 68, 53, 93, 64, 58, 50, 58, 76, 71, 67, 88, 77, 63, 56, 84, 65, 87, 83, 66, 68, 59, 64, 69, 82, 63, 54, 69, 60, 57, 70, 52, 51, 56, 64, 54, 67, 57, 73, 65, 54, 55, 66, 57, 70, 52, 96, 89, 84, 66, 55, 68, 78, 69, 47, 71, 53, 76, 75, 82, 71, 83, 73, 53, 52, 65, 53, 90, 62, 55, 61, 85, 50, 76, 72, 58, 47, 91, 55, 60, 59, 53, 61, 65, 45, 72, 62, 70, 37, 68, 113, 89, 93, 57, 61, 76, 68, 71, 51, 56, 58, 92, 57, 70, 55, 85, 57, 50, 65, 71, 58, 96, 64, 62, 52, 61, 55, 48, 49, 55, 87, 86, 65, 70, 60, 55, 73, 81, 69, 50, 50, 59, 74, 74, 77, 48, 65, 68, 67, 65, 79, 67, 87, 73, 106, 62, 78, 83, 58, 67, 44, 79, 37, 55, 59, 65, 66, 50, 63, 56, 55, 65, 69, 72, 63, 61, 54, 53, 79, 51, 64, 71, 72, 79, 78, 53, 57, 73, 54, 60, 53, 64, 70, 66, 67, 62, 58, 60, 86, 55, 71, 55, 49, 90, 62, 50, 62, 48, 103, 66, 58, 66, 73, 51, 93, 51, 59, 76, 55, 63, 80, 56, 76, 75, 56, 68, 70, 76, 65, 65, 83, 60, 59, 61, 57, 69, 66, 116, 74, 57, 79, 74, 83, 127, 120, 67, 75, 65, 62, 67, 51, 36, 64, 64, 53, 63, 57, 75, 62, 60, 52, 71, 66, 61, 70, 75, 65, 85, 54, 75, 77, 88, 71, 70, 46, 66, 63, 85, 68, 61, 49, 50, 86, 63, 53, 75, 76, 61, 57, 57, 77, 58, 76, 80, 57, 58, 65, 77, 69, 70, 84, 67, 73, 64, 51, 53, 83, 63, 48, 67, 53, 53, 63, 77, 42, 63, 59, 78, 61, 81, 62, 63, 70, 88, 65, 49, 34, 53, 75, 67, 50, 75, 76, 48, 103, 69, 78, 69, 77, 57, 64, 62, 69, 69, 69, 76, 62, 75, 79, 67, 60, 62, 70, 82, 72, 44, 71, 75, 68, 82, 56, 75, 58, 61, 67, 60, 77, 63, 78, 66, 63, 48, 76, 49, 72, 55, 38, 71, 74, 57, 67, 66, 61, 80, 94, 61, 62, 51, 63, 77, 70, 50, 68, 54, 52, 85, 62, 58, 73, 63, 59, 71, 38, 69, 85, 45, 88, 60, 44, 64, 74, 52, 73, 73, 63, 51, 50, 65, 61, 49, 70, 65, 99, 50, 64, 82, 73, 73, 76, 83, 61, 59, 53, 63, 48, 51, 57, 61, 64, 58, 62, 102, 56, 45, 62, 60, 75, 73, 49, 55, 71, 62, 64, 65, 64, 65, 78, 68, 61, 77, 58, 65, 69, 41, 55, 60, 85, 48, 61, 69, 67, 46, 57, 34, 67, 83, 77, 52, 65, 66, 88, 72, 68, 52, 72, 52, 55, 46, 73, 45, 106, 79, 53, 79, 80, 62, 66, 82, 56, 48, 74, 63, 52, 73, 65, 53, 69, 60, 55, 82, 61, 67, 49, 68, 57, 43, 58, 80, 61, 59, 53, 58, 78, 43, 73, 43, 71, 66, 53, 70, 60, 84, 46, 52, 67, 59, 57, 67, 58, 61, 43, 65, 67, 79, 60, 50, 52, 65, 53, 72, 59, 66, 60, 58, 72, 48, 71, 42, 82, 105, 63, 87, 71, 57, 58, 75, 65, 76, 57, 66, 75, 83, 47, 74, 55, 57, 58, 72, 63, 50, 69, 67, 69, 61, 78, 53, 66, 64, 65, 64, 60, 58, 100, 79, 46, 59, 74, 73, 54, 68, 55, 55, 57, 66, 59, 65, 59, 63, 60, 48, 52, 58, 69, 75, 64, 71, 66, 52, 66, 58, 119, 64, 64, 61, 74, 70, 71, 51, 70, 54, 84, 61, 69, 54, 61, 81, 59, 45, 128, 64, 71, 70, 61, 139, 76, 80, 69, 72, 79, 78, 75, 79, 55, 70, 67, 81, 50, 51, 76, 72, 64, 48, 76, 74, 57, 89, 54, 47, 52, 64, 57, 77, 58, 65, 67, 62, 99, 56, 72, 44, 58, 62, 63, 58, 72, 63, 51, 59, 89, 57, 61, 54, 69, 84, 55, 55, 55, 63, 74, 56, 63, 51, 74, 74, 69, 64, 61, 86, 54, 69, 72, 66, 75, 70, 67, 53, 53, 75, 53, 61, 69, 81, 67, 80, 67, 93, 53, 65, 84, 70, 62, 61, 90, 69, 76, 38, 82, 56, 83, 48, 55, 89, 63, 69, 65, 61, 69, 95, 60, 54, 74, 58, 61, 75, 66, 58, 71, 77, 68, 69, 77, 53, 69, 64, 44, 57, 74, 75, 54, 54, 49, 63, 58, 63, 53, 64, 72, 55, 62, 80, 64, 58, 60, 80, 71, 48, 56, 47, 57, 66, 72, 60, 72, 59, 51, 73, 56, 70, 64, 68, 115, 54, 66, 68, 70, 90, 72, 63, 59, 57, 78, 55, 48, 61, 65, 58, 72, 63, 71, 74, 64, 60, 69, 68, 57, 66, 66, 68, 73, 66, 52, 70, 54, 65, 77, 43, 64, 57, 67, 80, 59, 57, 63, 59, 66, 86, 63, 79, 72, 72, 73, 57, 71, 58, 44, 85, 64, 79, 81, 54, 101, 74, 77, 61, 48, 68, 55, 57, 139, 60, 63, 53, 65, 49, 76, 78, 92, 70, 46, 116, 72, 58, 66, 61, 72, 59, 72, 67, 56, 80, 59, 48, 69, 60, 65, 79, 75, 73, 52, 64, 63, 61, 76, 59, 47, 54, 59, 66, 61, 70, 58, 52, 48, 50, 55, 73, 81, 80, 64, 79, 64, 69, 85, 89, 61, 55, 62, 51, 69, 80, 68, 89, 72, 62, 83, 54, 60, 69, 60, 66, 81, 58, 58, 64, 87, 71, 70, 121, 82, 71, 36, 50, 69, 64, 72, 58, 84, 66, 60, 66, 58, 81, 62, 46, 64, 52, 49, 68, 70, 51, 49, 51, 78, 63, 79, 61, 68, 50, 59, 67, 60, 55, 77, 54, 41, 68, 73, 67, 90, 65, 58, 50, 53, 110, 69, 71, 94, 50, 75, 74, 65, 95, 66, 44, 85, 61, 64, 49, 59, 56, 52, 60, 60, 83, 80, 59, 61, 80, 50, 40, 78, 63, 60, 74, 79, 63, 56, 115, 62, 63, 79, 84, 66, 63, 58, 48, 58, 66, 43, 74, 56, 80, 67, 74, 61, 107, 139, 57, 85, 69, 73, 66, 53, 63, 55, 74, 76, 63, 70, 54, 54, 83, 80, 60, 45, 74, 59, 58, 63, 51, 79, 49, 66, 61, 56, 82, 53, 58, 54, 65, 92, 53, 53, 63, 81, 54, 69, 60, 61, 72, 70, 73, 53, 52, 61, 74, 65, 54, 56, 80, 70, 51, 74, 42, 42, 74, 71, 76, 61, 73, 58, 84, 51, 67, 77, 72, 76, 58, 53, 51, 64, 66, 58, 53, 128, 73, 83, 52, 82, 54, 69, 72, 74, 63, 67, 59, 81, 60, 60, 74, 60, 56, 63, 56, 55, 59, 70, 48, 68, 62, 64, 68, 78, 62, 70, 90, 62, 48, 82, 64, 63, 46, 63, 71, 62, 68, 63, 78, 81, 68, 71, 71, 65, 70, 67, 51, 65, 63, 68, 74, 64, 67, 45, 61, 62, 76, 60, 67, 49, 59, 79, 50, 80, 77, 49, 56, 69, 56, 57, 81, 69, 57, 77, 56, 63, 59, 59, 94, 93, 53, 72, 62, 76, 65, 80, 49, 77, 54, 73, 59, 71, 59, 73, 45, 67, 75, 74, 72, 56, 79, 65, 56, 59, 96, 53, 58, 70, 60, 69, 72, 63, 68, 50, 65, 48, 54, 74, 68, 56, 67, 70, 64, 71, 56, 83, 56, 55, 63, 64, 58, 55, 64, 63, 65, 56, 59, 66, 110, 87, 62, 75, 70, 58, 79, 108, 44, 61, 51, 64, 52, 56, 77, 61, 119, 49, 64, 78, 48, 64, 119, 56, 84, 51, 67, 59, 62, 74, 56, 63, 54, 78, 92, 51, 52, 51, 53, 66, 78, 64, 70, 58, 70, 55, 66, 121, 56, 67, 57, 59, 64, 75, 63, 60, 56, 84, 56, 71, 67, 74, 59, 44, 68, 57, 84, 52, 59, 64, 56, 67, 52, 58, 54, 52, 36, 65, 77, 99, 72, 59, 63, 74, 52, 61, 70, 79, 52, 97, 56, 84, 76, 60, 64, 56, 62, 70, 64, 60, 77, 61, 84, 62, 46, 73, 61, 54, 76, 44, 70, 54, 50, 63, 71, 64, 52, 75, 55, 51, 59, 54, 51, 62, 62, 64, 70, 52, 59, 57, 58, 71, 60, 100, 56, 59, 56, 57, 61, 47, 56, 52, 45, 65, 120, 66, 79, 42, 59, 61, 59, 73, 85, 77, 54, 65, 74, 71, 67, 102, 50, 69, 66, 63, 70, 56, 62, 57, 67, 73, 69, 77, 56, 66, 64, 71, 47, 62, 90, 61, 76, 58, 53, 68, 49, 120, 76, 55, 52, 55, 50, 70, 63, 61, 50, 54, 70, 58, 70, 80, 61, 50, 60, 83, 69, 73, 57, 70, 66, 66, 96, 61, 66, 97, 59, 64, 66, 68, 53, 58, 40, 56, 53, 84, 73, 62, 58, 64, 55, 70, 66, 77, 76, 80, 53, 57, 70, 67, 64, 69, 66, 63, 68, 57, 74, 94, 69, 84, 55, 64, 77, 72, 69, 69, 62, 55, 68, 48, 82, 63, 58, 62, 65, 57, 74, 54, 103, 56, 56, 59, 60, 54, 63, 75, 69, 51, 57, 59, 68, 81, 64, 54, 62, 78, 54, 66, 58, 46, 59, 72, 77, 71, 53, 66, 67, 62, 57, 56, 45, 56, 85, 59, 43, 96, 88, 49, 109, 65, 61, 64, 66, 58, 56, 100, 40, 59, 83, 76, 62, 39, 69, 79, 88, 42, 50, 64, 70, 61, 59, 61, 55, 63, 64, 57, 74, 67, 45, 83, 81, 58, 96, 53, 42, 58, 69, 62, 138, 65, 74, 109, 49, 69, 51, 62, 71, 51, 65, 61, 73, 72, 54, 52, 65, 53, 56, 50, 63, 58, 44, 79, 81, 58, 92, 104, 49, 56, 64, 42, 102, 56, 58, 57, 65, 92, 54, 66, 69, 77, 100, 69, 64, 74, 76, 74, 53, 112, 87, 59, 48, 87, 81, 58, 60, 55, 76, 55, 51, 59, 88, 74, 70, 71, 61, 75, 71, 86, 102, 68, 89, 64, 59, 92, 58, 67, 68, 67, 47, 78, 72, 52, 73, 55, 55, 80, 84, 101, 60, 54, 60, 27, 57, 56, 62, 59, 64, 78, 42, 65, 109, 72, 88, 70, 58, 64, 43, 65, 51, 62, 61, 71, 66, 66, 58, 55, 91, 43, 74, 62, 63, 71, 87, 71, 57, 72, 86, 51, 105, 64, 70, 56, 83, 80, 88, 41, 55, 64, 63, 80, 61, 48, 68, 73, 38, 74, 68, 82, 50, 55, 62, 74, 66, 62, 52, 56, 70, 52, 65, 35, 62, 56, 61, 62, 46, 77, 85, 54, 71, 67, 74, 70, 72, 55, 49, 62, 55, 67, 63, 51, 76, 74, 83, 65, 62, 65, 54, 47, 80, 41, 58, 56, 72, 88, 76, 75, 75, 63, 72, 51, 80, 59, 60, 53, 56, 37, 70, 67, 57, 80, 60, 72, 49, 45, 92, 74, 61, 64, 72, 40, 62, 29, 30, 62, 49, 88, 73, 49, 55, 54, 77, 70, 51, 53, 65, 53, 64, 75, 71, 47, 72, 87, 72, 71, 63, 55, 71, 79, 60, 57, 65, 52, 73, 63, 65, 54, 109, 68, 83, 87, 51, 63, 74, 60, 55, 59, 62, 74, 69, 72, 48, 67, 85, 42, 55, 69, 112, 137, 70, 59, 52, 69, 65, 84, 82, 38, 66, 65, 57, 98, 54, 72, 68, 94, 75, 77, 65, 63, 84, 54, 53, 70, 65, 56, 61, 60, 63, 69, 72, 72, 58, 47, 77, 92, 54, 81, 67, 53, 68, 62, 84, 67, 66, 90, 80, 68, 77, 55, 52, 54, 54, 85, 66, 90, 63, 63, 54, 90, 60, 60, 82, 85, 78, 79, 62, 52, 61, 72, 62, 45, 61, 61, 56, 92, 86, 75, 77, 59, 76, 54, 83, 53, 62, 72, 48, 56, 64, 61, 81, 62, 57, 65, 60, 59, 63, 98, 64, 60, 61, 80, 67, 58, 72, 65, 50, 66, 94, 63, 54, 50, 61, 52, 84, 65, 58, 51, 59, 93, 54, 69, 72, 62, 91, 48, 69, 71, 66, 73, 59, 66, 70, 55, 63, 70, 101, 51, 76, 40, 56, 57, 71, 63, 85, 53, 75, 58, 57, 53, 54, 81, 55, 61, 60, 60, 66, 59, 75, 54, 63, 56, 72, 70, 97, 67, 61, 74, 52, 83, 69, 62, 84, 64, 102, 43, 165, 94, 61, 55, 54, 74, 87, 64, 73, 55, 68, 42, 68, 67, 66, 61, 70, 68, 57, 60, 72, 47, 60, 91, 80, 57, 58, 55, 57, 80, 96, 52, 56, 68, 74, 68, 44, 58, 57, 57, 54, 43, 72, 83, 84, 73, 74, 67, 63, 47, 68, 45, 77, 56, 55, 59, 108, 64, 54, 64, 56, 63, 52, 53, 60, 50, 105, 52, 74, 62, 57, 89, 66, 63, 72, 58, 67, 66, 66, 91, 55, 97, 57, 62, 81, 80, 70, 44, 67, 67, 69, 59, 75, 69, 51, 56, 85, 56, 59, 50, 62, 48, 107, 44, 51, 85, 65, 80, 72, 60, 55, 64, 61, 73, 64, 63, 73, 68, 65, 58, 71, 79, 60, 64, 75, 83, 49, 54, 67, 51, 67, 75, 68, 54, 51, 61, 60, 66, 53, 52, 46, 30, 55, 59, 57, 50, 55, 69, 76, 62, 60, 67, 79, 52, 42, 53, 54, 64, 67, 62, 54, 58, 94, 78, 76, 62, 62, 64, 79, 68, 64, 70, 89, 74, 62, 61, 53, 61, 45, 73, 85, 54, 71, 55, 65, 67, 67, 50, 40, 64, 68, 58, 39, 76, 45, 63, 44, 71, 61, 46, 58, 87, 51, 73, 71, 46, 80, 68, 81, 46, 68, 69, 81, 56, 43, 54, 82, 77, 66, 84, 78, 74, 51, 66, 56, 58, 61, 59, 84, 55, 53, 68, 64, 77, 78, 79, 67, 62, 88, 50, 50, 55, 64, 61, 82, 59, 51, 76, 72, 54, 65, 80, 52, 56, 82, 55, 66, 55, 77, 71, 87, 40, 114, 55, 82, 79, 76, 48, 60, 107, 43, 57, 52, 65, 58, 53, 63, 60, 80, 78, 81, 49, 61, 41, 59, 55, 57, 60, 100, 44, 63, 69, 44, 71, 86, 62, 92, 65, 42, 58, 71, 87, 61, 72, 55, 66, 51, 54, 82, 64, 66, 68, 54, 72, 59, 79, 67, 59, 47, 108, 61, 62, 60, 63, 85, 51, 73, 60, 58, 60, 78, 61, 90, 61, 57, 53, 81, 65, 86, 61, 73, 52, 49, 69, 57, 48, 70, 80, 63, 58, 58, 68, 59, 82, 46, 67, 65, 48, 58, 51, 56, 49, 100, 68, 74, 63, 85, 97, 73, 72, 46, 71, 56, 80, 70, 82, 80, 95, 77, 71, 84, 94, 61, 70, 66, 51, 87, 60, 36, 52, 67, 75, 79, 45, 59, 70, 80, 88, 77, 63, 60, 79, 70, 71, 36, 56, 70, 130, 62, 71, 68, 62, 62, 61, 63, 59, 61, 53, 70, 46, 50, 58, 71, 67, 64, 66, 80, 46, 59, 56, 45, 63, 54, 70, 68, 111, 57, 63, 53, 65, 82, 56, 59, 68, 56, 107, 57, 69, 56, 55, 49, 44, 77, 90, 52, 72, 60, 72, 82, 54, 72, 72, 61, 87, 93, 66, 84, 73, 69, 60, 75, 59, 58, 55, 56, 69, 59, 39, 89, 44, 75, 72, 49, 69, 66, 63, 73, 75, 58, 53, 54, 50, 60, 68, 76, 62, 76, 48, 66, 79, 83, 90, 49, 57, 65, 46, 65, 54, 70, 56, 50, 44, 91, 65, 62, 60, 37, 76, 67, 60, 56, 76, 89, 43, 78, 60, 60, 96, 91, 75, 72, 67, 85, 70, 66, 80, 42, 71, 63, 67, 55, 48, 60, 75, 80, 51, 55, 67, 44, 72, 72, 59, 62, 65, 56, 82, 98, 56, 87, 69, 60, 65, 44, 60, 68, 71, 62, 90, 141, 81, 78, 89, 82, 79, 50, 51, 48, 65, 50, 78, 54, 56, 45, 106, 59, 61, 59, 76, 59, 58, 88, 74, 65, 93, 66, 43, 53, 30, 51, 49, 60, 51, 54, 60, 50, 79, 63, 51, 80, 76, 75, 68, 68, 97, 59, 66, 67, 113, 122, 49, 78, 93, 89, 46, 78, 62, 67, 90, 82, 59, 56, 57, 100, 76, 66, 75, 60, 74, 79, 52, 74, 65, 78, 46, 59, 58, 95, 87, 74, 68, 59, 60, 66, 64, 77, 95, 68, 107, 54, 48, 58, 82, 76, 46, 64, 55, 51, 46, 55, 67, 86, 61, 50, 68, 97, 74, 72, 72, 52, 77, 75, 55, 74, 64, 63, 66, 70, 72, 71, 79, 64, 50, 93, 86, 47, 72, 67, 56, 83, 53, 71, 90, 68, 60, 78, 74, 60, 67, 66, 84, 58, 55, 60, 63, 58, 67, 62, 88, 66, 67, 58, 51, 63, 110, 83, 58, 93, 76, 86, 58, 68, 82, 62, 77, 75, 44, 71, 70, 64, 70, 79, 97, 68, 60, 63, 64, 98, 63, 65, 52, 52, 40, 94, 63, 50, 57, 59, 54, 81, 68, 67, 69, 81, 60, 53, 52, 52, 65, 68, 50, 69, 59, 58, 51, 67, 75, 90, 76, 73, 87, 57, 79, 53, 61, 101, 75, 51, 59, 56, 47, 53, 58, 76, 71, 55, 72, 74, 34, 55, 50, 62, 74, 45, 73, 67, 53, 60, 104, 78, 52, 64, 79, 60, 58, 52, 74, 54, 66, 65, 56, 68, 58, 66, 62, 86, 75, 163, 50, 60, 76, 54, 70, 81, 59, 60, 55, 86, 49, 62, 82, 107, 56, 142, 44, 45, 66, 83, 108, 53, 56, 54, 45, 50, 56, 55, 63, 62, 58, 57, 87, 64, 57, 54, 61, 51, 67, 65, 58, 79, 68, 53, 47, 59, 57, 64, 62, 54, 57, 70, 57, 61, 72, 70, 64, 67, 74, 55, 68, 67, 71, 62, 62, 90, 65, 85, 51, 83, 70, 70, 42, 65, 52, 74, 43, 58, 76, 56, 53, 78, 58, 65, 71, 65, 71, 74, 82, 65, 68, 69, 57, 60, 76, 73, 72, 116, 70, 74, 71, 73, 73, 64, 66, 57, 74, 60, 60, 69, 79, 57, 57, 66, 54, 71, 72, 71, 52, 73, 63, 66, 61, 72, 80, 70, 54, 59, 61, 60, 55, 70, 68, 64, 72, 73, 58, 61, 55, 59, 123, 80, 74, 73, 66, 109, 68, 90, 78, 42, 63, 53, 57, 81, 58, 51, 92, 76, 76, 57, 64, 59, 56, 76, 109, 59, 67, 65, 71, 71, 49, 67, 63, 61, 58, 68, 54, 60, 66, 80, 71, 93, 59, 71, 57, 69, 65, 68, 66, 49, 54, 64, 60, 86, 55, 62, 60, 56, 108, 60, 75, 83, 67, 43, 59, 71, 45, 81, 62, 58, 73, 84, 60, 68, 62, 66, 62, 76, 55, 55, 62, 77, 50, 61, 56, 67, 49, 51, 62, 64, 71, 64, 102, 53, 66, 63, 64, 60, 79, 58, 48, 84, 63, 67, 58, 74, 64, 75, 56, 62, 44, 51, 52, 82, 71, 64, 68, 62, 58, 65, 76, 64, 57, 71, 73, 59, 46, 64, 54, 70, 69, 46, 63, 54, 61, 61, 129, 67, 84, 60, 64, 58, 50, 64, 56, 71, 75, 84, 54, 61, 62, 58, 76, 66, 66, 73, 83, 45, 92, 72, 50, 61, 65, 67, 72, 52, 59, 74, 76, 66, 76, 68, 70, 57, 55, 56, 74, 71, 73, 56, 63, 72, 54, 60, 58, 88, 73, 91, 59, 71, 52, 71, 68, 67, 66, 62, 57, 99, 62, 55, 68, 68, 79, 70, 75, 67, 49, 69, 53, 58, 47, 58, 59, 43, 90, 70, 43, 57, 66, 82, 90, 52, 58, 47, 62, 72, 59, 69, 63, 56, 80, 67, 62, 74, 58, 63, 62, 55, 59, 82, 62, 65, 67, 69, 61, 64, 69, 68, 71, 65, 81, 77, 80, 68, 64, 84, 65, 64, 56, 59, 63, 60, 74, 51, 55, 70, 151, 61, 58, 60, 60, 75, 58, 80, 63, 69, 75, 79, 64, 84, 57, 66, 53, 64, 53, 55, 87, 56, 61, 66, 52, 60, 63, 80, 64, 72, 64, 68, 55, 49, 72, 107, 67, 105, 58, 98, 77, 83, 62, 60, 72, 67, 49, 64, 65, 54, 44, 73, 88, 55, 75, 85, 59, 56, 56, 44, 106, 102, 68, 55, 64, 47, 49, 64, 48, 67, 89, 67, 58, 91, 69, 72, 84, 74, 64, 84, 51, 69, 52, 75, 99, 70, 61, 79, 130, 68, 68, 53, 58, 72, 62, 46, 65, 59, 67, 60, 78, 56, 71, 50, 78, 58, 64, 59, 64, 86, 57, 55, 54, 51, 51, 80, 55, 67, 74, 66, 45, 57, 60, 73, 55, 60, 60, 53, 75, 57, 65, 54, 65, 67, 63, 55, 74, 57, 45, 55, 48, 61, 62, 68, 85, 61, 86, 59, 54, 71, 55, 70, 63, 79, 64, 58, 89, 55, 54, 62, 66, 60, 60, 58, 54, 75, 84, 67, 74, 55, 58, 55, 58, 62, 53, 63, 62, 72, 55, 66, 55, 48, 74, 67, 80, 58, 50, 44, 77, 76, 57, 60, 67, 92, 55, 56, 70, 76, 85, 76, 54, 67, 58, 57, 54, 65, 66, 65, 59, 63, 66, 92, 63, 55, 86, 77, 127, 68, 67, 57, 51, 62, 73, 60, 65, 60, 80, 61, 108, 63, 55, 71, 52, 76, 65, 47, 80, 56, 72, 67, 69, 50, 84, 49, 71, 71, 105, 63, 80, 61, 58, 79, 57, 52, 52, 70, 58, 67, 77, 64, 64, 66, 65, 50, 61, 81, 52, 47, 65, 68, 59, 89, 54, 64, 58, 62, 60, 43, 60, 33, 87, 72, 70, 54, 62, 70, 78, 66, 52, 64, 64, 85, 44, 56, 59, 64, 76, 56, 75, 62, 75, 55, 59, 67, 64, 77, 60, 70, 77, 59, 53, 61, 80, 91, 70, 60, 75, 49, 71, 82, 47, 74, 59, 68, 56, 54, 69, 69, 56, 76, 55, 58, 54, 60, 78, 83, 71, 61, 59, 63, 45, 38, 57, 56, 61, 59, 66, 78, 75, 66, 78, 67, 68, 68, 72, 67, 65, 58, 57, 58, 83, 70, 128, 61, 66, 72, 83, 67, 63, 60, 72, 55, 66, 62, 55, 68, 60, 43, 65, 47, 62, 70, 50, 59, 64, 92, 71, 61, 48, 59, 63, 90, 69, 55, 52, 59, 47, 69, 64, 74, 52, 43, 102, 72, 55, 76, 66, 85, 93, 73, 49, 69, 59, 96, 42, 58, 65, 54, 77, 47, 72, 62, 67, 72, 61, 43, 78, 51, 49, 140, 59, 65, 64, 69, 81, 71, 72, 60, 60, 50, 68, 66, 52, 64, 58, 84, 65, 46, 74, 59, 66, 70, 81, 52, 62, 53, 60, 65, 59, 62, 75, 86, 79, 45, 62, 69, 48, 76, 67, 68, 49, 58, 71, 77, 53, 59, 56, 73, 49, 67, 65, 79, 73, 68, 53, 75, 65, 50, 52, 74, 57, 61, 53, 75, 70, 92, 62, 73, 56, 66, 55, 61, 74, 60, 59, 50, 54, 53, 79, 49, 56, 79, 79, 83, 92, 41, 62, 64, 59, 70, 79, 87, 53, 52, 60, 110, 66, 54, 86, 65, 62, 91, 60, 64, 70, 64, 60, 45, 55, 74, 74, 58, 51, 58, 80, 52, 66, 61, 56, 79, 73, 70, 75, 64, 54, 49, 69, 52, 56, 70, 81, 55, 65, 73, 64, 109, 52, 57, 58, 57, 86, 75, 69, 62, 48, 81, 67, 57, 66, 43, 63, 48, 52, 53, 73, 64, 76, 56, 53, 64, 63, 63, 54, 39, 58, 51, 66, 62, 86, 60, 63, 74, 63, 82, 54, 58, 62, 62, 70, 58, 68, 61, 74, 59, 69, 113, 62, 59, 66, 77, 59, 70, 65, 62, 59, 50, 81, 52, 70, 63, 73, 61, 90, 61, 47, 55, 69, 114, 104, 53, 70, 51, 55, 58, 67, 59, 47, 67, 71, 64, 80, 58, 73, 92, 67, 51, 61, 60, 53, 65, 68, 55, 66, 69, 63, 72, 50, 46, 75, 65, 68, 44, 64, 63, 88, 64, 58, 66, 65, 68, 55, 58, 64, 66, 69, 58, 58, 58, 65, 65, 92, 72, 68, 48, 56, 68, 63, 67, 68, 57, 86, 51, 72, 86, 74, 71, 58, 65, 60, 81, 59, 63, 57, 50, 77, 55, 64, 70, 61, 51, 62, 63, 55, 60, 81, 53, 88, 58, 63, 58, 58, 69, 60, 85, 71, 68, 81, 58, 68, 94, 68, 53, 57, 52, 62, 57, 59, 69, 58, 60, 50, 63, 72, 69, 62, 49, 64, 81, 84, 62, 62, 88, 72, 72, 58, 58, 67, 59, 63, 61, 59, 76, 72, 74, 80, 73, 59, 69, 79, 58, 44, 69, 78, 71, 63, 65, 57, 63, 48, 55, 111, 61, 57, 76, 55, 46, 71, 67, 53, 59, 60, 83, 54, 89, 68, 64, 65, 61, 111, 52, 65, 70, 54, 89, 48, 54, 82, 54, 67, 62, 88, 88, 80, 77, 55, 49, 65, 83, 69, 72, 63, 48, 62, 62, 52, 85, 77, 63, 74, 70, 66, 43, 67, 66, 36, 52, 75, 58, 78, 58, 67, 69, 64, 62, 49, 66, 49, 64, 82, 78, 57, 55, 58, 52, 50, 52, 59, 55, 48, 70, 49, 101, 74, 55, 65, 59, 52, 55, 52, 59, 64, 73, 83, 72, 61, 58, 49, 66, 63, 72, 73, 67, 53, 54, 94, 70, 65, 57, 58, 61, 98, 82, 58, 64, 62, 92, 57, 87, 51, 59, 38, 53, 68, 97, 61, 51, 65, 68, 45, 48, 76, 59, 63, 70, 67, 70, 59, 77, 62, 50, 85, 61, 70, 52, 67, 58, 66, 76, 59, 49, 61, 69, 63, 60, 62, 53, 50, 95, 62, 53, 72, 66, 81, 72, 74, 125, 62, 66, 71, 65, 84, 64, 55, 64, 51, 67, 72, 72, 69, 60, 63, 76, 86, 39, 56, 47, 52, 63, 79, 63, 54, 46, 63, 57, 75, 66, 62, 75, 69, 49, 43, 67, 89, 74, 63, 60, 67, 89, 65, 54, 78, 82, 65, 53, 56, 72, 98, 63, 66, 48, 70, 64, 63, 61, 62, 58, 76, 65, 71, 39, 65, 67, 52, 51, 74, 43, 72, 65, 43, 68, 51, 61, 67, 63, 85, 68, 52, 80, 86, 54, 47, 78, 63, 64, 92, 67, 49, 42, 65, 78, 69, 62, 73, 40, 54, 64, 54, 70, 61, 68, 66, 93, 79, 52, 89, 73, 89, 77, 64, 70, 73, 61, 59, 54, 72, 69, 79, 77, 73, 113, 58, 78, 61, 46, 107, 67, 43, 53, 66, 74, 58, 77, 60, 72, 105, 65, 65, 106, 43, 75, 58, 60, 62, 91, 63, 66, 63, 62, 80, 82, 65, 54, 62, 61, 54, 60, 50, 64, 61, 52, 69, 78, 133, 67, 75, 78, 57, 53, 108, 54, 69, 61, 50, 65, 62, 65, 51, 66, 56, 75, 61, 49, 57, 56, 70, 44, 61, 71, 41, 73, 58, 72, 63, 51, 58, 91, 42, 60, 66, 52, 72, 61, 69, 58, 51, 58, 64, 62, 91, 65, 64, 47, 56, 65, 63, 71, 62, 95, 75, 65, 53, 60, 60, 77, 67, 60, 52, 60, 60, 73, 46, 92, 53, 67, 61, 55, 60, 59, 60, 55, 95, 65, 68, 58, 49, 45, 66, 78, 69, 83, 56, 85, 78, 83, 56, 60, 57, 71, 57, 53, 53, 143, 89, 52, 55, 60, 60, 61, 76, 63, 53, 45, 62, 75, 69, 67, 59, 50, 66, 83, 65, 60, 51, 65, 60, 72, 58, 54, 51, 63, 91, 74, 63, 54, 62, 61, 58, 62, 64, 68, 117, 68, 68, 76, 61, 37, 78, 74, 67, 77, 78, 69, 64, 63, 76, 74, 62, 64, 89, 71, 61, 66, 49, 48, 58, 75, 62, 47, 62, 72, 62, 59, 49, 71, 70, 43, 55, 68, 72, 64, 79, 67, 68, 53, 77, 61, 62, 61, 67, 55, 76, 56, 70, 59, 70, 70, 55, 63, 66, 59, 112, 54, 71, 54, 61, 48, 79, 61, 71, 91, 52, 51, 52, 79, 71, 74, 61, 63, 64, 58, 66, 53, 48, 71, 49, 59, 65, 111, 63, 64, 67, 44, 54, 59, 68, 64, 60, 54, 101, 58, 56, 60, 59, 69, 75, 72, 64, 58, 51, 59, 51, 56, 80, 49, 77, 67, 71, 79, 76, 77, 71, 69, 55, 50, 76, 49, 120, 70, 51, 78, 60, 98, 57, 74, 54, 59, 74, 60, 86, 54, 58, 62, 68, 53, 48, 63, 59, 56, 49, 103, 66, 69, 57, 74, 46, 83, 78, 62, 66, 54, 83, 58, 61, 95, 77, 57, 96, 61, 69, 69, 103, 43, 72, 70, 53, 82, 68, 110, 64, 85, 65, 69, 93, 56, 79, 57, 65, 74, 51, 52, 78, 81, 76, 81, 66, 45, 68, 67, 69, 68, 65, 67, 63, 59, 59, 66, 63, 54, 62, 60, 107, 58, 67, 56, 68, 64, 68, 70, 55, 48, 69, 56, 57, 56, 55, 57, 93, 75, 64, 71, 66, 55, 58, 66, 63, 46, 71, 68, 64, 62, 76, 69, 60, 44, 62, 71, 86, 61, 44, 44, 53, 63, 62, 47, 66, 69, 67, 61, 85, 95, 65, 53, 64, 57, 68, 59, 97, 60, 63, 58, 61, 50, 63, 70, 90, 54, 66, 53, 60, 62, 55, 60, 71, 62, 67, 70, 82, 39, 104, 60, 68, 39, 76, 51, 58, 84, 58, 61, 72, 62, 72, 62, 61, 63, 60, 67, 45, 57, 60, 62, 50, 54, 76, 77, 69, 70, 78, 64, 69, 70, 70, 62, 63, 78, 47, 57, 54, 84, 69, 93, 54, 66, 81, 79, 125, 52, 62, 64, 58, 101, 64, 56, 69, 50, 63, 56, 62, 73, 88, 72, 67, 86, 74, 52, 56, 60, 66, 63, 70, 49, 44, 65, 90, 62, 64, 67, 63, 109, 87, 55, 70, 64, 84, 75, 64, 81, 109, 63, 59, 101, 66, 66, 51, 71, 112, 69, 56, 58, 69, 74, 76, 60, 47, 59, 67, 54, 70, 73, 63, 63, 69, 73, 94, 99, 61, 47, 80, 67, 50, 54, 49, 72, 68, 81, 111, 66, 68, 40, 65, 45, 84, 72, 44, 84, 52, 46, 50, 72, 66, 50, 67, 77, 66, 60, 78, 61, 72, 63, 77, 58, 66, 48, 88, 79, 53, 69, 51, 57, 67, 73, 57, 66, 83, 58, 99, 74, 73, 66, 74, 73, 57, 63, 76, 51, 78, 91, 69, 98, 89, 60, 63, 54, 66, 98, 66, 61, 52, 53, 81, 62, 60, 67, 76, 56, 69, 60, 54, 57, 65, 81, 64, 56, 67, 58, 59, 91, 59, 106, 53, 62, 54, 68, 61, 58, 44, 72, 73, 55, 52, 65, 78, 77, 59, 70, 67, 58, 65, 57, 65, 60, 60, 67, 73, 64, 70, 56, 49, 61, 50, 58, 79, 56, 64, 49, 54, 57, 73, 61, 84, 55, 75, 73, 61, 84, 78, 64, 81, 58, 69, 78, 67, 63, 78, 54, 43, 61, 52, 45, 40, 71, 50, 75, 86, 56, 82, 60, 68, 54, 67, 62, 76, 93, 76, 61, 61, 82, 69, 55, 68, 84, 60, 61, 103, 66, 72, 92, 64, 64, 75, 88, 62, 52, 60, 69, 60, 54, 58, 74, 59, 52, 60, 51, 72, 66, 63, 71, 67, 55, 58, 54, 75, 57, 63, 62, 88, 56, 71, 55, 61, 61, 75, 45, 112, 67, 93, 66, 60, 76, 75, 78, 49, 48, 73, 57, 74, 73, 74, 78, 62, 57, 69, 53, 69, 84, 68, 71, 81, 62, 56, 74, 56, 62, 71, 68, 53, 45, 54, 83, 123, 48, 63, 65, 60, 78, 100, 82, 71, 66, 61, 83, 61, 68, 72, 59, 54, 55, 79, 58, 50, 60, 66, 60, 56, 48, 51, 55, 63, 69, 65, 67, 59, 63, 59, 61, 57, 55, 73, 63, 54, 65, 70, 57, 73, 65, 60, 47, 64, 75, 68, 79, 84, 58, 63, 57, 63, 82, 67, 49, 68, 95, 60, 53, 69, 55, 84, 54, 75, 53, 59, 49, 68, 60, 55, 70, 54, 77, 57, 43, 50, 68, 58, 84, 80, 48, 69, 67, 53, 61, 65, 60, 67, 60, 56, 70, 79, 57, 68, 58, 59, 56, 60, 72, 61, 67, 72, 59, 62, 62, 70, 67, 65, 68, 77, 52, 67, 79, 74, 65, 48, 50, 66, 65, 60, 47, 54, 57, 68, 72, 73, 57, 72, 72, 68, 58, 71, 69, 84, 64, 62, 76, 67, 99, 46, 52, 62, 58, 66, 41, 70, 67, 49, 56, 59, 67, 66, 50, 61, 90, 61, 81, 72, 66, 64, 96, 78, 67, 71, 46, 57, 60, 84, 84, 71, 62, 80, 86, 100, 65, 62, 68, 64, 77, 67, 68, 57, 60, 64, 64, 54, 126, 74, 55, 51, 53, 59, 54, 72, 61, 71, 62, 68, 59, 62, 60, 66, 63, 60, 82, 54, 75, 57, 69, 64, 66, 58, 70, 59, 87, 64, 61, 63, 56, 58, 52, 73, 73, 87, 59, 83, 73, 60, 50, 103, 78, 71, 66, 61, 67, 44, 74, 62, 66, 62, 70, 77, 75, 60, 63, 66, 72, 67, 57, 68, 57, 63, 68, 62, 52, 54, 67, 60, 59, 64, 66, 78, 67, 69, 60, 69, 96, 75, 59, 112, 50, 97, 65, 55, 65, 60, 61, 57, 59, 48, 67, 66, 72, 64, 76, 65, 53, 63, 65, 70, 45, 111, 74, 65, 54, 64, 70, 66, 48, 82, 57, 58, 39, 65, 62, 82, 63, 64, 61, 58, 70, 62, 63, 69, 78, 75, 59, 56, 57, 70, 50, 68, 84, 76, 64, 63, 82, 57, 66, 70, 60, 69, 46, 69, 66, 70, 116, 80, 57, 93, 51, 83, 74, 83, 62, 58, 77, 60, 75, 65, 102, 100, 47, 53, 56, 53, 100, 83, 47, 57, 66, 62, 52, 57, 67, 60, 63, 70, 81, 52, 80, 113, 59, 75, 70, 61, 68, 66, 57, 69, 64, 59, 69, 60, 62, 72, 69, 62, 90, 58, 69, 73, 79, 62, 75, 58, 67, 60, 54, 56, 64, 71, 84, 69, 79, 66, 68, 72, 61, 47, 62, 47, 69, 59, 62, 60, 76, 79, 53, 58, 68, 65, 67, 59, 57, 73, 86, 60, 60, 59, 65, 61, 58, 67, 105, 55, 52, 63, 45, 67, 62, 79, 63, 49, 47, 59, 62, 54, 94, 61, 60, 66, 58, 50, 74, 65, 70, 60, 73, 68, 66, 60, 60, 58, 94, 70, 54, 58, 53, 70, 52, 71, 71, 72, 64, 52, 65, 56, 68, 64, 82, 67, 69, 67, 59, 87, 56, 109, 62, 64, 64, 50, 61, 49, 56, 58, 57, 59, 60, 51, 61, 62, 70, 71, 66, 55, 63, 69, 54, 64, 81, 66, 69, 69, 51, 81, 44, 66, 49, 55, 42, 68, 54, 64, 75, 49, 53, 57, 72, 73, 51, 68, 63, 66, 61, 66, 58, 67, 88, 55, 57, 58, 72, 71, 48, 84, 76, 51, 62, 56, 51, 69, 59, 72, 70, 53, 56, 59, 52, 73, 56, 70, 65, 60, 89, 70, 62, 62, 75, 58, 100, 49, 65, 69, 56, 59, 65, 68, 60, 65, 55, 65, 76, 72, 60, 66, 51, 73, 67, 67, 63, 101, 78, 74, 65, 69, 57, 83, 129, 55, 61, 93, 122, 61, 65, 55, 83, 60, 70, 65, 63, 76, 98, 66, 64, 58, 56, 67, 71, 62, 66, 62, 61, 69, 64, 66, 58, 50, 68, 66, 58, 71, 64, 99, 72, 67, 101, 45, 67, 54, 63, 76, 62, 57, 63, 51, 53, 63, 67, 48, 72, 62, 63, 87, 62, 64, 87, 53, 62, 70, 53, 61, 65, 125, 71, 67, 54, 71, 74, 73, 65, 83, 60, 72, 62, 56, 64, 68, 66, 64, 62, 54, 70, 65, 59, 49, 74, 84, 80, 69, 81, 69, 40, 64, 68, 71, 55, 70, 119, 56, 62, 56, 67, 67, 57, 63, 66, 63, 73, 63, 68, 77, 60, 48, 58, 68, 81, 62, 82, 61, 76, 61, 60, 76, 41, 107, 80, 76, 69, 66, 67, 69, 64, 62, 89, 67, 45, 86, 64, 58, 80, 51, 61, 67, 63, 71, 62, 60, 75, 70, 65, 56, 55, 64, 67, 69, 67, 57, 58, 59, 89, 63, 73, 107, 66, 61, 65, 86, 62, 54, 63, 55, 72, 61, 59, 52, 64, 86, 78, 79, 74, 55, 57, 83, 75, 64, 67, 63, 71, 82, 61, 61, 68, 52, 63, 65, 75, 72, 56, 62, 58, 58, 74, 52, 54, 71, 73, 81, 51, 71, 55, 49, 59, 65, 57, 74, 80, 76, 79, 48, 62, 70, 63, 106, 73, 55, 69, 87, 50, 47, 61, 67, 59, 78, 65, 64, 65, 65, 59, 62, 108, 77, 69, 56, 54, 55, 50, 77, 64, 66, 49, 72, 70, 59, 58, 61, 59, 71, 58, 63, 57, 63, 79, 49, 68, 60, 57, 63, 60, 56, 57, 115, 43, 58, 56, 66, 70, 60, 59, 125, 34, 52, 64, 61, 58, 55, 60, 62, 58, 62, 46, 71, 60, 66, 79, 64, 60, 49, 69, 48, 71, 53, 56, 69, 77, 48, 63, 74, 67, 54, 91, 55, 52, 63, 83, 92, 64, 62, 69, 56, 59, 59, 78, 65, 61, 68, 52, 62, 75, 63, 52, 82, 61, 70, 61, 58, 60, 50, 69, 56, 51, 60, 70, 85, 97, 73, 104, 61, 60, 74, 70, 68, 60, 62, 86, 88, 53, 60, 56, 64, 70, 67, 55, 72, 89, 63, 53, 59, 63, 65, 59, 96, 64, 66, 36, 48, 58, 71, 58, 53, 65, 58, 47, 62, 65, 86, 40, 56, 49, 69, 54, 68, 61, 67, 65, 57, 70, 65, 96, 74, 61, 58, 53, 60, 58, 64, 77, 67, 66, 69, 71, 88, 53, 74, 91, 68, 62, 67, 53, 108, 73, 72, 59, 65, 79, 53, 67, 55, 61, 65, 107, 80, 58, 55, 72, 50, 75, 54, 56, 80, 54, 72, 63, 53, 64, 84, 58, 58, 83, 62, 87, 60, 60, 71, 57, 75, 54, 68, 76, 72, 62, 64, 60, 76, 67, 59, 61, 84, 54, 54, 87, 86, 81, 64, 113, 67, 67, 63, 77, 70, 90, 49, 58, 81, 71, 53, 56, 51, 58, 63, 73, 46, 57, 37, 66, 60, 63, 84, 61, 78, 81, 61, 64, 62, 41, 65, 67, 58, 62, 53, 67, 91, 51, 59, 90, 59, 64, 71, 65, 65, 60, 69, 59, 61, 59, 53, 45, 77, 58, 130, 63, 64, 52, 60, 65, 57, 71, 79, 75, 47, 66, 64, 72, 54, 82, 47, 53, 71, 62, 52, 64, 66, 62, 81, 86, 73, 86, 51, 71, 48, 58, 83, 100, 68, 70, 58, 84, 76, 66, 54, 74, 69, 59, 60, 57, 71, 44, 57, 64, 74, 73, 60, 86, 55, 79, 62, 92, 100, 80, 69, 81, 77, 81, 89, 72, 70, 106, 84, 45, 65, 67, 56, 63, 63, 61, 68, 61, 54, 69, 93, 71, 44, 69, 63, 62, 67, 51, 58, 61, 114, 48, 63, 51, 112, 68, 81, 72, 56, 53, 50, 50, 45, 65, 75, 70, 82, 48, 38, 64, 58, 64, 67, 52, 40, 69, 63, 61, 64, 51, 59, 65, 62, 36, 112, 61, 65, 51, 67, 57, 46, 58, 80, 75, 46, 60, 82, 74, 97, 62, 63, 65, 78, 59, 74, 57, 66, 104, 61, 58, 64, 49, 62, 83, 63, 93, 57, 59, 65, 60, 73, 64, 57, 60, 67, 57, 59, 73, 59, 64, 59, 69, 67, 80, 58, 69, 52, 86, 68, 65, 46, 55, 69, 52, 51, 50, 57, 59, 58, 57, 54, 79, 87, 53, 59, 55, 55, 65, 66, 41, 61, 65, 67, 77, 112, 109, 54, 56, 56, 60, 72, 55, 70, 74, 65, 69, 62, 67, 56, 58, 74, 71, 51, 72, 68, 59, 67, 75, 63, 70, 66, 87, 69, 55, 63, 61, 66, 66, 58, 67, 63, 76, 65, 63, 65, 85, 69, 50, 73, 66, 67, 43, 58, 88, 64, 67, 58, 67, 62, 66, 69, 128, 54, 54, 66, 66, 107, 57, 57, 72, 60, 59, 64, 71, 50, 122, 64, 66, 64, 52, 52, 59, 134, 75, 95, 65, 61, 72, 44, 59, 48, 60, 61, 61, 75, 75, 73, 111, 53, 70, 54, 53, 69, 72, 58, 63, 63, 70, 45, 71, 55, 73, 70, 58, 67, 75, 72, 56, 77, 61, 54, 71, 83, 65, 58, 65, 64, 72, 73, 105, 68, 91, 71, 67, 102, 70, 74, 57, 48, 69, 59, 78, 53, 80, 85, 54, 64, 74, 79, 63, 62, 63, 80, 55, 50, 64, 46, 60, 52, 60, 85, 41, 71, 69, 52, 60, 78, 82, 73, 74, 70, 64, 63, 54, 56, 86, 54, 57, 58, 70, 70, 63, 67, 55, 60, 67, 74, 55, 52, 51, 46, 54, 45, 63, 94, 66, 64, 102, 70, 125, 68, 67, 82, 68, 60, 57, 66, 53, 86, 75, 64, 63, 89, 44, 62, 40, 65, 60, 65, 56, 60, 50, 48, 55, 67, 55, 75, 62, 67, 66, 61, 65, 82, 92, 66, 70, 48, 63, 64, 52, 70, 70, 63, 79, 71, 77, 59, 84, 80, 43, 66, 45, 57, 54, 64, 72, 70, 66, 79, 65, 54, 66, 69, 93, 52, 57, 71, 64, 53, 60, 62, 53, 80, 74, 69, 64, 68, 76, 65, 82, 58, 55, 54, 59, 73, 49, 64, 70, 57, 60, 60, 61, 66, 71, 56, 59, 61, 87, 74, 63, 66, 81, 68, 72, 58, 94, 51, 69, 64, 76, 50, 56, 48, 52, 46, 88, 89, 68, 70, 44, 57, 51, 60, 62, 49, 45, 76, 62, 99, 76, 54, 65, 63, 65, 40, 77, 54, 37, 56, 93, 66, 78, 71, 58, 60, 56, 61, 107, 21, 66, 53, 47, 85, 71, 63, 61, 63, 60, 68, 56, 46, 68, 83, 71, 49, 70, 104, 60, 64, 66, 68, 58, 69, 86, 48, 58, 66, 71, 53, 56, 80, 79, 51, 49, 62, 106, 55, 57, 44, 54, 68, 67, 56, 98, 63, 71, 69, 72, 58, 59, 76, 46, 77, 75, 76, 72, 125, 55, 56, 67, 61, 69, 53, 67, 68, 82, 57, 57, 65, 63, 66, 59, 60, 78, 62, 57, 65, 71, 75, 43, 61, 58, 76, 51, 67, 66, 55, 63, 64, 72, 78, 54, 74, 69, 59, 72, 49, 60, 68, 62, 51, 59, 45, 49, 99, 52, 68, 75, 89, 68, 68, 50, 66, 64, 67, 77, 76, 57, 59, 57, 63, 66, 93, 81, 74, 71, 62, 64, 67, 109, 59, 81, 59, 60, 58, 58, 73, 56, 55, 61, 66, 71, 57, 59, 61, 53, 73, 60, 64, 58, 61, 63, 51, 55, 46, 62, 73, 76, 76, 72, 57, 84, 67, 64, 68, 56, 69, 53, 83, 56, 57, 53, 70, 66, 65, 57, 100, 71, 63, 67, 67, 60, 37, 137, 72, 78, 46, 84, 56, 67, 57, 54, 52, 62, 66, 109, 65, 79, 67, 79, 64, 74, 66, 67, 88, 64, 51, 69, 55, 104, 97, 99, 60, 64, 84, 60, 61, 56, 68, 54, 67, 66, 62, 90, 59, 76, 55, 79, 67, 55, 62, 77, 50, 72, 67, 80, 78, 73, 57, 61, 67, 78, 101, 61, 79, 58, 70, 62, 70, 59, 69, 60, 67, 51, 53, 60, 68, 77, 63, 69, 54, 64, 50, 66, 60, 61, 66, 78, 77, 56, 54, 78, 61, 59, 71, 60, 66, 87, 65, 53, 76, 65, 67, 56, 80, 65, 92, 60, 48, 65, 87, 80, 67, 62, 83, 76, 55, 48, 72, 53, 53, 53, 62, 54, 53, 55, 47, 69, 52, 53, 72, 70, 58, 101, 44, 89, 63, 62, 58, 72, 65, 53, 49, 48, 65, 71, 78, 48, 57, 65, 64, 67, 70, 59, 65, 65, 63, 61, 82, 54, 62, 58, 65, 66, 61, 45, 46, 87, 63, 145, 57, 58, 58, 58, 58, 69, 93, 66, 62, 56, 58, 58, 59, 63, 63, 58, 61, 51, 60, 65, 60, 76, 71, 60, 68, 83, 62, 56, 78, 67, 59, 69, 80, 36, 83, 49, 60, 52, 80, 80, 45, 50, 72, 71, 59, 79, 66, 75, 79, 56, 78, 55, 49, 59, 70, 66, 53, 48, 52, 82, 56, 55, 95, 80, 91, 65, 84, 53, 61, 54, 55, 69, 57, 95, 62, 105, 40, 45, 58, 54, 68, 54, 81, 36, 58, 80, 63, 65, 60, 68, 53, 58, 63, 56, 52, 68, 62, 79, 46, 54, 61, 51, 62, 51, 65, 74, 81, 53, 72, 53, 65, 59, 76, 74, 67, 85, 63, 59, 51, 58, 90, 60, 59, 61, 57, 74, 57, 45, 97, 84, 61, 89, 49, 77, 67, 60, 65, 64, 83, 75, 67, 61, 70, 56, 54, 53, 66, 71, 62, 63, 58, 66, 70, 48, 77, 77, 85, 99, 50, 60, 57, 61, 57, 65, 71, 85, 90, 50, 85, 68, 69, 72, 48, 96, 55, 68, 61, 47, 71, 79, 52, 55, 71, 48, 57, 73, 73, 100, 74, 59, 90, 60, 61, 65, 63, 72, 72, 112, 63, 79, 58, 58, 53, 66, 62, 100, 63, 55, 70, 62, 66, 98, 69, 49, 86, 63, 75, 52, 110, 69, 78, 57, 62, 59, 75, 71, 53, 81, 80, 78, 66, 57, 75, 54, 60, 53, 64, 91, 61, 48, 64, 54, 57, 56, 84, 46, 89, 72, 126, 71, 54, 58, 71, 64, 59, 73, 45, 42, 73, 62, 88, 57, 48, 85, 58, 86, 78, 59, 73, 63, 59, 75, 82, 61, 72, 66, 69, 66, 55, 46, 57, 67, 79, 63, 56, 67, 60, 63, 82, 62, 67, 76, 47, 68, 76, 63, 62, 70, 62, 53, 58, 38, 66, 68, 63, 64, 61, 65, 76, 66, 75, 64, 51, 65, 64, 80, 62, 67, 44, 55, 66, 57, 53, 65, 63, 55, 67, 123, 77, 92, 60, 54, 79, 72, 60, 53, 69, 73, 60, 69, 80, 66, 83, 62, 69, 74, 64, 70, 61, 51, 56, 61, 54, 61, 54, 74, 80, 63, 47, 55, 79, 54, 47, 62, 73, 59, 59, 66, 48, 64, 63, 57, 54, 63, 58, 87, 61, 61, 68, 59, 74, 52, 66, 68, 66, 137, 48, 46, 64, 68, 129, 74, 80, 66, 60, 69, 79, 56, 65, 78, 62, 69, 106, 53, 53, 66, 62, 91, 63, 65, 80, 57, 50, 76, 62, 68, 83, 51, 77, 61, 64, 61, 72, 83, 106, 66, 56, 70, 57, 59, 51, 84, 55, 61, 66, 88, 77, 68, 54, 66, 54, 67, 64, 73, 60, 71, 63, 88, 59, 46, 62, 67, 95, 77, 82, 71, 74, 50, 58, 63, 104, 58, 73, 67, 53, 74, 56, 57, 56, 46, 93, 42, 75, 56, 66, 64, 58, 65, 72, 92, 74, 71, 54, 60, 79, 51, 61, 66, 62, 54, 64, 83, 67, 54, 72, 78, 66, 52, 54, 103, 66, 65, 53, 64, 58, 64, 74, 66, 71, 47, 47, 60, 63, 76, 62, 49, 82, 66, 51, 61, 59, 77, 55, 186, 65, 103, 102, 67, 75, 74, 68, 58, 62, 54, 74, 71, 73, 51, 61, 50, 72, 52, 89, 72, 69, 74, 60, 62, 73, 57, 61, 118, 66, 73, 53, 66, 60, 70, 60, 57, 69, 59, 55, 52, 70, 60, 69, 70, 66, 72, 63, 71, 63, 74, 71, 54, 70, 65, 67, 61, 62, 71, 66, 83, 65, 65, 69, 81, 78, 94, 62, 74, 71, 53, 54, 78, 96, 55, 104, 52, 74, 92, 64, 37, 66, 66, 62, 49, 62, 64, 57, 67, 85, 60, 59, 55, 70, 92, 60, 51, 60, 65, 78, 68, 70, 53, 67, 75, 54, 71, 68, 52, 64, 67, 63, 47, 64, 56, 63, 76, 63, 68, 55, 60, 65, 66, 58, 57, 79, 60, 67, 70, 132, 59, 62, 58, 61, 54, 35, 58, 66, 70, 60, 61, 67, 61, 84, 71, 79, 68, 57, 52, 95, 58, 63, 86, 50, 56, 56, 67, 65, 70, 55, 47, 51, 54, 71, 60, 60, 75, 59, 58, 54, 78, 51, 111, 64, 49, 68, 67, 76, 64, 61, 71, 82, 82, 70, 55, 64, 87, 65, 74, 59, 50, 66, 77, 55, 63, 46, 64, 63, 60, 92, 72, 57, 52, 66, 63, 66, 77, 58, 61, 59, 54, 72, 60, 60, 77, 60, 56, 54, 57, 72, 67, 74, 45, 71, 93, 40, 51, 64, 55, 67, 73, 53, 54, 50, 38, 68, 63, 57, 61, 65, 103, 62, 59, 47, 57, 67, 123, 72, 65, 74, 143, 73, 61, 54, 67, 66, 71, 68, 65, 94, 67, 55, 61, 52, 61, 62, 83, 60, 67, 58, 67, 44, 67, 98, 67, 69, 50, 78, 54, 81, 69, 65, 55, 58, 61, 73, 62, 74, 61, 62, 58, 54, 72, 73, 56, 70, 61, 72, 80, 62, 55, 60, 71, 61, 59, 66, 72, 82, 61, 66, 70, 64, 79, 87, 41, 61, 75, 68, 67, 62, 60, 57, 70, 94, 61, 86, 58, 44, 40, 65, 62, 44, 61, 48, 100, 76, 97, 49, 71, 64, 48, 55, 59, 58, 74, 56, 39, 47, 69, 71, 72, 64, 62, 61, 74, 57, 63, 70, 62, 72, 87, 69, 67, 62, 59, 73, 61, 71, 68, 64, 54, 75, 55, 63, 63, 81, 80, 49, 54, 44, 70, 60, 70, 63, 69, 60, 69, 58, 93, 68, 74, 75, 64, 90, 58, 102, 69, 54, 69, 63, 51, 57, 58, 89, 61, 67, 65, 69, 69, 105, 65, 62, 60, 71, 53, 53, 64, 66, 107, 73, 55, 58, 71, 67, 67, 62, 57, 66, 76, 63, 57, 60, 67, 61, 57, 53, 58, 59, 71, 65, 60, 65, 99, 68, 70, 77, 86, 60, 72, 57, 45, 63, 82, 64, 62, 61, 54, 77, 63, 65, 66, 72, 58, 52, 65, 56, 91, 64, 57, 74, 68, 44, 83, 82, 69, 78, 76, 63, 48, 67, 73, 105, 79, 56, 51, 60, 60, 70, 62, 70, 75, 61, 62, 68, 69, 51, 62, 72, 63, 57, 81, 54, 89, 60, 82, 53, 55, 72, 62, 59, 65, 76, 57, 53, 82, 83, 77, 69, 69, 65, 58, 110, 42, 52, 57, 70, 86, 61, 69, 73, 60, 55, 64, 66, 49, 75, 62, 77, 69, 66, 58, 61, 61, 74, 83, 67, 64, 56, 73, 73, 71, 53, 54, 55, 78, 71, 65, 78, 81, 49, 76, 60, 48, 98, 67, 75, 74, 99, 56, 70, 67, 69, 61, 60, 83, 53, 89, 72, 57, 64, 59, 76, 56, 57, 55, 61, 56, 75, 63, 58, 60, 58, 55, 57, 53, 66, 92, 66, 72, 50, 59, 67, 58, 62, 63, 57, 62, 74, 54, 65, 61, 67, 53, 74, 68, 71, 60, 64, 74, 81, 66, 63, 78, 64, 58, 66, 39, 63, 63, 86, 56, 71, 68, 96, 62, 69, 63, 70, 68, 72, 66, 63, 74, 52, 71, 51, 60, 56, 60, 57, 88, 60, 58, 62, 60, 64, 57, 86, 100, 63, 62, 51, 65, 73, 73, 59, 80, 78, 52, 61, 63, 66, 88, 56, 60, 60, 75, 59, 70, 66, 75, 63, 51, 61, 52, 66, 90, 116, 88, 65, 69, 42, 64, 67, 56, 60, 56, 64, 82, 60, 51, 63, 78, 63, 56, 64, 69, 81, 60, 63, 67, 62, 59, 49, 45, 79, 60, 62, 76, 77, 54, 94, 71, 48, 78, 69, 98, 50, 56, 94, 52, 72, 56, 132, 49, 66, 59, 72, 67, 68, 55, 67, 67, 59, 67, 56, 67, 74, 65, 78, 58, 72, 51, 64, 66, 57, 64, 56, 62, 68, 54, 74, 55, 76, 73, 62, 57, 66, 73, 70, 70, 75, 64, 68, 71, 46, 68, 71, 65, 73, 57, 70, 57, 75, 53, 59, 67, 66, 66, 73, 67, 57, 57, 68, 74, 50, 70, 66, 55, 68, 70, 68, 56, 62, 83, 66, 64, 66, 61, 75, 80, 103, 53, 34, 55, 61, 82, 58, 62, 56, 56, 89, 81, 68, 60, 62, 49, 65, 54, 129, 94, 60, 69, 74, 58, 75, 72, 77, 63, 52, 54, 60, 65, 61, 75, 64, 97, 59, 69, 71, 54, 65, 58, 64, 65, 54, 69, 73, 55, 64, 65, 59, 57, 60, 62, 67, 66, 63, 45, 65, 55, 67, 78, 67, 50, 84, 64, 59, 67, 82, 60, 73, 63, 62, 67, 52, 177, 60, 76, 74, 74, 135, 45, 69, 63, 64, 66, 77, 61, 70, 90, 64, 66, 63, 71, 66, 62, 89, 69, 66, 61, 49, 73, 51, 93, 60, 66, 72, 67, 76, 75, 66, 70, 59, 52, 89, 58, 56, 67, 59, 87, 58, 74, 49, 66, 72, 71, 80, 48, 69, 64, 52, 61, 64, 64, 65, 83, 53, 71, 58, 58, 67, 45, 92, 99, 74, 47, 57, 74, 65, 52, 103, 62, 56, 69, 55, 73, 53, 69, 58, 55, 68, 65, 55, 62, 67, 54, 90, 67, 70, 61, 91, 70, 61, 57, 90, 73, 46, 81, 57, 63, 60, 79, 69, 78, 59, 65, 99, 55, 58, 70, 57, 73, 54, 71, 71, 76, 107, 58, 64, 63, 70, 75, 63, 65, 47, 70, 56, 66, 63, 58, 60, 79, 64, 141, 62, 85, 60, 79, 63, 52, 49, 60, 99, 79, 70, 60, 60, 57, 65, 57, 72, 64, 61, 69, 69, 67, 68, 61, 61, 49, 60, 88, 36, 72, 73, 66, 58, 74, 53, 56, 62, 72, 57, 37, 52, 70, 53, 60, 67, 83, 60, 61, 62, 61, 61, 81, 65, 49, 80, 63, 55, 66, 59, 68, 67, 61, 53, 71, 58, 73, 62, 65, 71, 48, 57, 60, 91, 60, 63, 54, 61, 61, 57, 54, 68, 60, 61, 53, 72, 62, 71, 72, 60, 60, 91, 63, 59, 56, 78, 66, 81, 88, 55, 57, 71, 81, 47, 74, 67, 70, 66, 62, 53, 50, 56, 65, 65, 61, 57, 64, 78, 56, 51, 66, 69, 59, 69, 56, 66, 57, 62, 72, 106, 73, 49, 48, 65, 53, 55, 73, 80, 68, 59, 88, 78, 71, 62, 72, 55, 76, 60, 80, 107, 68, 64, 57, 83, 65, 67, 91, 59, 62, 101, 76, 53, 55, 79, 70, 69, 65, 50, 60, 62, 67, 66, 75, 69, 75, 44, 61, 56, 69, 55, 75, 72, 71, 56, 46, 68, 80, 72, 65, 62, 59, 65, 60, 60, 106, 57, 58, 65, 59, 65, 99, 57, 68, 40, 54, 64, 58, 69, 64, 52, 69, 65, 49, 64, 61, 55, 63, 49, 59, 64, 71, 75, 78, 50, 117, 59, 65, 65, 65, 69, 79, 65, 65, 55, 55, 62, 54, 75, 54, 72, 37, 53, 66, 54, 78, 62, 92, 66, 61, 58, 84, 57, 63, 58, 69, 100, 70, 68, 60, 134, 56, 57, 65, 51, 62, 56, 62, 68, 65, 61, 62, 69, 56, 74, 46, 60, 57, 62, 63, 68, 67, 64, 81, 58, 62, 57, 73, 69, 67, 68, 59, 60, 75, 51, 61, 68, 57, 77, 67, 56, 67, 76, 55, 76, 57, 72, 65, 53, 76, 68, 61, 52, 70, 63, 56, 75, 56, 49, 63, 51, 68, 55, 50, 65, 60, 90, 60, 70, 61, 68, 61, 52, 51, 53, 106, 71, 126, 69, 54, 56, 59, 64, 65, 47, 72, 60, 75, 57, 66, 61, 65, 72, 67, 69, 72, 70, 63, 63, 65, 64, 70, 83, 92, 75, 65, 53, 60, 117, 47, 68, 62, 67, 62, 70, 59, 44, 62, 56, 64, 65, 71, 68, 53, 59, 66, 58, 73, 70, 49, 72, 103, 77, 57, 91, 60, 68, 55, 73, 48, 74, 74, 62, 61, 65, 71, 77, 85, 64, 69, 54, 67, 64, 77, 59, 75, 49, 52, 58, 59, 73, 47, 75, 82, 54, 64, 71, 56, 58, 85, 59, 46, 73, 119, 56, 65, 54, 67, 78, 50, 58, 75, 53, 72, 56, 50, 81, 51, 78, 57, 93, 82, 90, 52, 47, 51, 43, 57, 114, 212, 61, 66, 77, 74, 59, 64, 45, 74, 69, 58, 47, 55, 54, 64, 69, 55, 50, 48, 57, 58, 61, 68, 38, 64, 57, 82, 87, 83, 70, 68, 67, 72, 52, 71, 63, 54, 106, 52, 46, 72, 54, 58, 65, 67, 63, 71, 43, 62, 64, 59, 54, 53, 50, 48, 63, 77, 86, 90, 68, 65, 54, 59, 86, 51, 71, 65, 67, 61, 60, 55, 55, 57, 85, 83, 64, 40, 55, 60, 69, 97, 55, 56, 63, 52, 71, 64, 49, 71, 58, 61, 77, 62, 52, 52, 60, 67, 68, 66, 67, 74, 70, 54, 62, 62, 66, 67, 50, 74, 102, 67, 81, 76, 104, 58, 63, 62, 71, 92, 50, 54, 55, 70, 61, 55, 70, 54, 55, 72, 66, 65, 41, 51, 63, 63, 60, 83, 80, 41, 62, 65, 64, 80, 64, 88, 66, 54, 58, 61, 66, 69, 64, 62, 50, 64, 82, 42, 76, 71, 58, 66, 66, 59, 76, 70, 79, 85, 58, 69, 52, 75, 81, 53, 80, 54, 49, 68, 65, 55, 53, 75, 78, 56, 46, 58, 58, 71, 77, 82, 43, 71, 50, 59, 75, 66, 69, 61, 62, 84, 65, 115, 108, 98, 54, 37, 82, 79, 68, 98, 51, 70, 104, 50, 52, 64, 64, 64, 56, 79, 48, 66, 65, 56, 55, 33, 55, 73, 88, 61, 63, 73, 91, 64, 64, 56, 67, 97, 51, 43, 62, 63, 52, 45, 58, 64, 58, 64, 64, 74, 57, 62, 74, 44, 81, 49, 79, 64, 148, 61, 84, 90, 37, 77, 72, 63, 56, 66, 48, 52, 77, 87, 99, 76, 50, 75, 56, 76, 68, 73, 51, 61, 74, 78, 60, 100, 124, 81, 52, 71, 47, 59, 103, 73, 56, 79, 99, 49, 64, 49, 64, 58, 51, 56, 82, 51, 91, 61, 61, 66, 70, 68, 49, 86, 65, 60, 67, 77, 68, 59, 66, 69, 54, 55, 67, 57, 73, 65, 48, 79, 66, 48, 63, 64, 64, 54, 90, 60, 65, 70, 54, 66, 66, 55, 59, 101, 56, 83, 66, 46, 55, 76, 50, 67, 55, 70, 68, 75, 79, 61, 51, 52, 45, 62, 63, 60, 71, 97, 63, 70, 51, 53, 52, 76, 70, 66, 73, 62, 58, 64, 67, 57, 67, 56, 82, 84, 67, 69, 72, 71, 59, 71, 77, 57, 95, 65, 78, 83, 70, 74, 109, 66, 66, 77, 51, 66, 58, 52, 63, 62, 64, 51, 60, 64, 95, 71, 62, 74, 61, 69, 74, 65, 71, 53, 74, 53, 52, 55, 51, 56, 86, 108, 76, 62, 103, 48, 80, 57, 67, 49, 73, 74, 76, 112, 59, 62, 107, 69, 71, 75, 61, 82, 49, 47, 54, 103, 62, 92, 70, 81, 45, 57, 76, 57, 58, 68, 74, 87, 56, 47, 60, 44, 77, 74, 59, 82, 50, 57, 52, 63, 56, 60, 47, 59, 61, 61, 59, 54, 59, 71, 55, 76, 67, 69, 69, 63, 74, 88, 58, 43, 92, 63, 74, 53, 72, 62, 77, 78, 59, 55, 68, 74, 62, 83, 75, 56, 57, 75, 72, 68, 57, 66, 70, 92, 58, 69, 55, 115, 54, 43, 64, 71, 46, 68, 48, 94, 66, 56, 62, 65, 63, 69, 64, 81, 78, 49, 72, 54, 88, 49, 61, 82, 72, 67, 46, 59, 64, 76, 71, 70, 59, 68, 83, 56, 57, 77, 66, 138, 59, 36, 51, 41, 70, 73, 63, 68, 88, 72, 77, 70, 95, 54, 51, 57, 52, 66, 59, 55, 60, 95, 118, 72, 70, 65, 60, 62, 53, 69, 58, 63, 72, 80, 64, 52, 72, 44, 93, 51, 85, 91, 58, 70, 61, 49, 53, 58, 84, 62, 59, 64, 67, 48, 75, 65, 53, 66, 71, 81, 56, 43, 59, 65, 63, 71, 79, 78, 69, 56, 62, 64, 59, 57, 74, 63, 55, 66, 62, 72, 82, 56, 43, 78, 65, 81, 107, 51, 61, 62, 57, 52, 53, 43, 68, 51, 57, 50, 60, 47, 61, 61, 74, 62, 93, 52, 61, 56, 80, 71, 77, 79, 57, 54, 131, 95, 59, 71, 63, 63, 72, 70, 60, 64, 67, 57, 68, 73, 71, 55, 64, 48, 62, 75, 49, 57, 57, 67, 64, 56, 53, 52, 53, 57, 72, 52, 66, 61, 61, 41, 65, 56, 63, 61, 85, 61, 59, 87, 51, 62, 63, 60, 65, 67, 60, 60, 74, 74, 52, 60, 65, 98, 81, 70, 50, 63, 69, 61, 55, 75, 53, 66, 60, 60, 54, 84, 77, 71, 70, 60, 59, 68, 86, 94, 72, 71, 55, 55, 54, 75, 71, 85, 50, 60, 57, 65, 62, 81, 53, 67, 55, 81, 59, 78, 52, 109, 56, 92, 68, 68, 56, 65, 67, 67, 68, 49, 74, 48, 68, 66, 76, 64, 84, 58, 78, 65, 85, 73, 75, 50, 47, 54, 55, 48, 67, 66, 54, 63, 50, 114, 56, 70, 68, 83, 129, 91, 64, 53, 111, 53, 67, 58, 68, 48, 65, 96, 79, 65, 63, 97, 83, 92, 62, 72, 59, 72, 61, 62, 88, 61, 55, 79, 66, 75, 67, 71, 60, 84, 61, 61, 52, 50, 66, 70, 51, 52, 59, 74, 51, 79, 63, 83, 81, 67, 48, 64, 67, 79, 63, 59, 71, 63, 67, 65, 62, 76, 65, 42, 64, 62, 69, 89, 65, 61, 71, 60, 74, 66, 80, 51, 63, 57, 68, 69, 72, 79, 95, 95, 33, 57, 67, 48, 45, 60, 76, 62, 70, 86, 64, 54, 59, 99, 56, 56, 66, 53, 66, 61, 53, 73, 72, 46, 50, 65, 86, 54, 80, 71, 66, 75, 61, 73, 51, 51, 51, 74, 51, 52, 83, 59, 84, 45, 66, 47, 54, 41, 54, 60, 84, 87, 60, 69, 58, 70, 78, 63, 84, 56, 64, 48, 53, 59, 63, 54, 84, 53, 56, 65, 43, 112, 50, 56, 70, 67, 67, 94, 75, 59, 79, 89, 66, 97, 72, 61, 64, 73, 68, 53, 54, 45, 54, 81, 47, 86, 54, 64, 64, 71, 45, 64, 62, 114, 48, 62, 64, 69, 71, 49, 103, 78, 68, 68, 58, 77, 66, 71, 57, 153, 100, 71, 83, 92, 67, 53, 45, 57, 57, 48, 72, 52, 61, 55, 65, 68, 64, 52, 58, 48, 69, 60, 77, 43, 48, 60, 66, 83, 62, 99, 58, 61, 65, 68, 46, 51, 68, 59, 38, 62, 55, 44, 72, 53, 59, 40, 59, 86, 69, 76, 56, 57, 54, 68, 54, 81, 100, 38, 61, 39, 55, 81, 58, 53, 108, 73, 58, 141, 73, 49, 68, 58, 63, 59, 61, 42, 79, 68, 80, 50, 64, 57, 61, 61, 61, 56, 58, 67, 60, 72, 58, 62, 67, 59, 79, 56, 61, 56, 93, 61, 63, 82, 68, 67, 45, 59, 59, 41, 80, 64, 61, 61, 75, 76, 48, 79, 51, 70, 55, 49, 73, 67, 24, 76, 60, 68, 49, 70, 64, 52, 65, 58, 68, 86, 84, 57, 83, 54, 58, 66, 75, 76, 66, 74, 55, 49, 77, 57, 65, 67, 80, 67, 69, 61, 64, 61, 98, 52, 54, 63, 62, 53, 48, 92, 52, 66, 64, 60, 56, 65, 65, 49, 78, 63, 68, 66, 61, 53, 56, 53, 67, 66, 58, 78, 56, 84, 65, 55, 60, 75, 63, 77, 57, 53, 60, 73, 69, 71, 64, 139, 85, 64, 60, 64, 54, 56, 85, 144, 49, 54, 51, 48, 54, 58, 63, 56, 64, 57, 65, 61, 61, 88, 44, 48, 64, 53, 57, 51, 35, 57, 82, 57, 69, 81, 95, 115, 73, 53, 63, 68, 78, 48, 57, 56, 59, 60, 81, 61, 64, 69, 57, 73, 65, 64, 63, 60, 100, 59, 62, 83, 52, 56, 50, 60, 71, 67, 52, 64, 51, 84, 71, 65, 64, 65, 70, 39, 59, 59, 79, 57, 104, 92, 56, 73, 61, 72, 63, 66, 72, 68, 101, 54, 94, 57, 49, 58, 46, 69, 57, 74, 74, 64, 63, 71, 57, 63, 60, 56, 61, 66, 81, 60, 46, 60, 100, 53, 63, 65, 62, 66, 73, 81, 70, 78, 74, 71, 80, 78, 56, 63, 131, 76, 91, 62, 54, 52, 53, 74, 58, 55, 68, 86, 87, 110, 68, 62, 66, 72, 57, 56, 49, 46, 88, 80, 40, 76, 69, 48, 81, 56, 53, 66, 51, 67, 36, 57, 89, 57, 58, 51, 91, 99, 59, 68, 80, 89, 79, 67, 108, 66, 64, 78, 69, 62, 52, 67, 61, 72, 62, 62, 67, 50, 74, 59, 80, 56, 75, 55, 68, 71, 60, 54, 63, 63, 64, 47, 73, 91, 53, 70, 83, 82, 71, 52, 60, 69, 68, 75, 83, 47, 72, 64, 71, 68, 49, 51, 68, 90, 75, 59, 62, 66, 95, 64, 55, 59, 49, 69, 66, 51, 68, 91, 64, 55, 76, 65, 61, 55, 68, 71, 52, 94, 71, 81, 62, 46, 55, 72, 74, 77, 93, 75, 59, 68, 58, 49, 60, 107, 64, 60, 56, 70, 51, 60, 63, 54, 48, 49, 67, 57, 48, 54, 129, 70, 65, 61, 56, 97, 80, 54, 70, 53, 61, 91, 66, 75, 70, 64, 65, 74, 67, 62, 65, 67, 95, 43, 72, 66, 65, 90, 66, 65, 70, 67, 54, 103, 66, 66, 62, 54, 86, 63, 65, 65, 99, 50, 62, 89, 66, 69, 65, 67, 48, 62, 44, 93, 82, 59, 62, 85, 48, 68, 82, 71, 59, 66, 72, 59, 74, 62, 57, 73, 47, 82, 56, 61, 93, 64, 87, 51, 45, 58, 64, 106, 69, 110, 53, 71, 63, 76, 60, 73, 105, 51, 98, 42, 55, 60, 80, 67, 62, 65, 86, 48, 45, 53, 60, 76, 89, 72, 60, 66, 61, 72, 81, 106, 76, 82, 64, 62, 69, 54, 70, 96, 62, 55, 103, 93, 82, 75, 61, 63, 70, 52, 60, 69, 61, 52, 61, 63, 49, 57, 67, 62, 68, 112, 65, 76, 69, 77, 68, 45, 69, 71, 60, 64, 55, 62, 86, 59, 69, 58, 64, 73, 52, 75, 73, 63, 70, 100, 69, 74, 67, 74, 49, 76, 69, 79, 63, 104, 67, 59, 61, 54, 59, 68, 56, 100, 65, 67, 78, 71, 64, 66, 79, 75, 86, 64, 61, 80, 77, 145, 75, 56, 65, 62, 72, 68, 68, 70, 60, 66, 68, 87, 66, 68, 37, 44, 66, 78, 67, 67, 69, 46, 45, 67, 78, 72, 66, 45, 62, 57, 62, 77, 58, 85, 61, 45, 59, 67, 57, 51, 74, 49, 45, 72, 76, 52, 61, 69, 64, 60, 59, 72, 46, 76, 52, 71, 43, 52, 52, 55, 66, 60, 70, 66, 43, 62, 71, 49, 64, 64, 74, 66, 50, 50, 68, 61, 63, 54, 79, 74, 50, 52, 62, 55, 63, 81, 55, 69, 48, 61, 84, 59, 43, 84, 69, 65, 73, 93, 53, 84, 72, 64, 59, 76, 56, 75, 57, 99, 63, 66, 72, 42, 82, 62, 56, 59, 51, 49, 56, 74, 65, 60, 61, 82, 74, 61, 59, 71, 56, 43, 47, 59, 54, 75, 76, 51, 69, 76, 118, 63, 71, 55, 108, 71, 69, 65, 78, 52, 66, 79, 71, 46, 58, 73, 30, 53, 69, 84, 90, 84, 58, 45, 69, 78, 52, 68, 71, 68, 59, 61, 67, 56, 67, 76, 40, 55, 58, 50, 54, 53, 63, 73, 54, 70, 41, 49, 62, 53, 70, 61, 46, 66, 53, 49, 64, 55, 78, 68, 79, 63, 77, 64, 96, 54, 86, 95, 59, 68, 74, 65, 50, 50, 74, 63, 72, 85, 61, 70, 77, 46, 73, 75, 54, 50, 93, 69, 63, 54, 68, 75, 68, 74, 66, 79, 64, 75, 75, 76, 65, 63, 54, 54, 76, 72, 61, 54, 55, 58, 76, 64, 56, 44, 58, 60, 55, 69, 68, 70, 58, 56, 79, 59, 87, 47, 72, 65, 61, 52, 53, 81, 76, 44, 62, 98, 64, 81, 72, 75, 65, 78, 55, 68, 65, 52, 66, 85, 69, 60, 54, 81, 50, 76, 76, 67, 75, 70, 61, 86, 68, 91, 64, 62, 60, 64, 120, 46, 77, 57, 64, 59, 62, 47, 44, 51, 54, 99, 56, 76, 54, 87, 66, 66, 87, 71, 59, 135, 62, 68, 68, 86, 54, 64, 76, 48, 69, 79, 55, 60, 76, 69, 69, 191, 53, 65, 81, 60, 65, 89, 57, 48, 35, 54, 59, 64, 34, 64, 74, 46, 61, 59, 69, 77, 65, 59, 69, 64, 51, 87, 67, 68, 60, 76, 59, 68, 75, 70, 49, 60, 68, 51, 71, 62, 54, 62, 47, 77, 56, 75, 67, 63, 53, 61, 69, 66, 46, 69, 50, 69, 79, 40, 56, 77, 75, 73, 62, 68, 68, 63, 58, 118, 65, 55, 59, 61, 71, 65, 63, 45, 70, 63, 90, 80, 54, 62, 66, 44, 48, 64, 49, 83, 96, 86, 86, 70, 90, 54, 58, 68, 67, 76, 62, 69, 68, 65, 64, 75, 53, 64, 67, 65, 74, 54, 49, 67, 115, 62, 61, 68, 50, 76, 59, 59, 66, 49, 57, 55, 48, 54, 59, 65, 59, 57, 48, 60, 64, 59, 89, 68, 104, 59, 54, 78, 77, 52, 67, 43, 73, 73, 64, 69, 69, 59, 60, 66, 71, 72, 57, 43, 67, 51, 49, 61, 65, 53, 67, 124, 52, 59, 71, 67, 53, 52, 75, 57, 69, 60, 42, 51, 58, 61, 39, 66, 72, 76, 64, 80, 48, 50, 49, 68, 58, 76, 62, 82, 77, 65, 71, 42, 81, 82, 46, 137, 104, 68, 58, 62, 55, 59, 88, 101, 75, 72, 72, 56, 52, 57, 139, 61, 59, 63, 54, 100, 73, 79, 53, 62, 60, 49, 74, 69, 51, 53, 81, 62, 72, 85, 63, 110, 64, 90, 64, 64, 71, 58, 57, 47, 54, 65, 77, 66, 61, 56, 70, 62, 59, 78, 64, 73, 105, 54, 51, 65, 83, 64, 73, 50, 55, 62, 60, 58, 66, 79, 75, 67, 62, 86, 63, 57, 47, 71, 43, 79, 127, 51, 65, 67, 51, 39, 79, 66, 80, 73, 74, 54, 59, 63, 54, 46, 59, 70, 77, 76, 64, 82, 64, 75, 70, 69, 53, 62, 54, 54, 55, 62, 62, 58, 94, 59, 63, 104, 73, 62, 54, 53, 58, 67, 60, 71, 69, 78, 64, 72, 78, 64, 116, 56, 59, 44, 54, 82, 62, 57, 65, 74, 73, 71, 77, 69, 66, 53, 65, 61, 63, 51, 77, 56, 51, 72, 55, 64, 74, 63, 70, 58, 65, 69, 56, 69, 50, 64, 50, 56, 68, 74, 69, 58, 69, 63, 75, 78, 77, 59, 58, 71, 93, 52, 55, 74, 58, 66, 63, 45, 48, 62, 73, 69, 65, 66, 59, 96, 67, 52, 52, 73, 71, 67, 52, 58, 68, 57, 42, 47, 45, 71, 112, 53, 60, 63, 45, 73, 61, 75, 89, 77, 47, 67, 75, 62, 62, 114, 69, 60, 68, 68, 92, 61, 82, 54, 56, 65, 50, 66, 74, 94, 56, 51, 90, 79, 54, 51, 65, 71, 51, 82, 49, 57, 57, 29, 58, 60, 90, 56, 56, 62, 64, 65, 67, 56, 58, 36, 59, 64, 59, 59, 89, 79, 57, 72, 65, 57, 60, 51, 74, 55, 86, 60, 60, 50, 51, 67, 52, 81, 54, 64, 74, 85, 56, 91, 60, 54, 56, 47, 66, 58, 52, 60, 131, 59, 53, 84, 56, 90, 82, 60, 57, 84, 62, 102, 73, 81, 58, 70, 77, 66, 55, 63, 68, 68, 75, 79, 73, 62, 61, 61, 78, 52, 72, 71, 60, 59, 68, 55, 64, 76, 52, 66, 64, 70, 54, 61, 90, 57, 59, 52, 65, 88, 57, 77, 62, 67, 76, 79, 47, 64, 63, 86, 61, 98, 62, 79, 81, 64, 67, 84, 65, 64, 91, 60, 67, 55, 76, 58, 58, 53, 72, 68, 64, 41, 60, 79, 111, 60, 61, 93, 58, 81, 49, 69, 66, 83, 55, 89, 60, 67, 49, 75, 64, 53, 117, 68, 65, 96, 63, 62, 73, 41, 81, 53, 68, 60, 53, 56, 61, 68, 55, 66, 64, 147, 56, 54, 56, 76, 67, 53, 72, 45, 50, 74, 69, 73, 97, 59, 81, 57, 57, 56, 65, 102, 61, 57, 98, 70, 57, 69, 77, 86, 55, 51, 53, 79, 63, 96, 66, 73, 92, 64, 70, 75, 60, 67, 60, 67, 82, 83, 57, 49, 61, 60, 62, 83, 58, 64, 114, 140, 65, 77, 75, 60, 51, 67, 72, 59, 68, 66, 51, 65, 84, 64, 63, 56, 58, 55, 63, 62, 60, 59, 50, 86, 88, 71, 68, 75, 83, 70, 62, 98, 47, 70, 54, 55, 83, 94, 77, 62, 56, 54, 67, 66, 87, 74, 54, 60, 68, 60, 64, 59, 56, 89, 64, 61, 61, 73, 53, 61, 68, 56, 67, 66, 64, 58, 51, 59, 58, 74, 40, 64, 74, 57, 52, 48, 73, 72, 69, 54, 50, 75, 63, 66, 69, 54, 71, 69, 66, 70, 59, 58, 55, 69, 71, 72, 55, 91, 63, 79, 57, 55, 61, 62, 58, 66, 58, 71, 75, 73, 51, 56, 42, 56, 61, 61, 42, 82, 55, 55, 50, 62, 64, 74, 61, 51, 53, 71, 73, 61, 78, 69, 70, 64, 54, 60, 76, 75, 135, 51, 57, 63, 112, 62, 62, 57, 74, 66, 72, 77, 90, 59, 42, 69, 77, 63, 63, 104, 46, 71, 58, 60, 61, 98, 60, 44, 75, 49, 62, 73, 72, 59, 51, 70, 64, 57, 73, 63, 59, 69, 78, 74, 85, 65, 58, 49, 61, 76, 55, 61, 60, 72, 61, 87, 68, 71, 78, 79, 61, 62, 44, 69, 62, 66, 44, 55, 53, 47, 53, 58, 66, 64, 59, 78, 70, 71, 59, 72, 60, 75, 57, 83, 64, 67, 77, 61, 63, 59, 59, 76, 72, 93, 67, 73, 49, 64, 66, 50, 58, 57, 59, 76, 79, 62, 67, 34, 40, 67, 39, 44, 73, 51, 80, 67, 68, 59, 84, 67, 62, 54, 58, 58, 59, 79, 85, 69, 51, 57, 55, 77, 60, 70, 68, 96, 72, 59, 86, 100, 84, 64, 46, 60, 59, 64, 80, 75, 43, 64, 50, 51, 66, 68, 54, 95, 72, 60, 64, 67, 76, 102, 65, 53, 70, 68, 47, 81, 69, 62, 60, 73, 73, 86, 78, 60, 64, 79, 64, 95, 77, 92, 61, 54, 83, 77, 65, 133, 60, 69, 65, 64, 56, 51, 50, 63, 65, 61, 57, 68, 68, 75, 64, 165, 79, 85, 80, 58, 48, 78, 55, 70, 46, 66, 62, 48, 66, 60, 64, 60, 55, 59, 57, 86, 72, 63, 66, 74, 58, 43, 73, 60, 80, 79, 80, 52, 62, 49, 80, 60, 63, 54, 52, 58, 56, 71, 65, 64, 76, 71, 72, 71, 60, 64, 69, 63, 73, 80, 49, 69, 87, 48, 53, 58, 65, 52, 77, 77, 86, 62, 49, 135, 69, 61, 49, 57, 55, 60, 62, 63, 66, 55, 62, 60, 69, 72, 73, 51, 62, 60, 42, 75, 49, 72, 106, 39, 47, 57, 56, 55, 62, 49, 97, 59, 59, 61, 73, 64, 60, 52, 69, 35, 93, 56, 83, 59, 65, 60, 58, 58, 65, 62, 47, 57, 66, 60, 60, 57, 74, 47, 59, 70, 76, 64, 70, 64, 75, 69, 74, 59, 65, 65, 67, 76, 68, 53, 67, 60, 64, 60, 48, 48, 77, 57, 48, 66, 69, 71, 52, 75, 45, 56, 53, 61, 68, 50, 86, 79, 68, 94, 65, 62, 79, 58, 72, 47, 57, 54, 70, 57, 69, 58, 59, 54, 61, 67, 49, 61, 59, 58, 51, 50, 74, 60, 67, 76, 48, 60, 70, 47, 76, 68, 64, 99, 89, 69, 57, 53, 62, 67, 54, 95, 70, 58, 57, 62, 44, 66, 178, 68, 55, 47, 52, 63, 44, 76, 46, 48, 68, 41, 88, 64, 28, 84, 68, 43, 57, 65, 68, 103, 69, 68, 75, 48, 86, 54, 50, 56, 61, 59, 62, 55, 78, 72, 59, 62, 60, 56, 61, 56, 58, 62, 52, 52, 62, 54, 57, 70, 63, 67, 56, 50, 51, 71, 69, 76, 44, 87, 54, 59, 71, 77, 47, 67, 82, 69, 48, 64, 87, 151, 67, 46, 74, 69, 89, 50, 78, 47, 64, 64, 58, 55, 47, 66, 73, 74, 76, 55, 69, 82, 67, 52, 61, 62, 59, 54, 61, 62, 60, 57, 82, 55, 67, 43, 59, 68, 49, 76, 56, 70, 51, 84, 63, 62, 102, 62, 65, 50, 60, 62, 58, 55, 58, 97, 86, 79, 66, 134, 79, 69, 50, 67, 60, 63, 72, 37, 60, 55, 52, 74, 69, 47, 68, 57, 48, 45, 73, 57, 52, 57, 52, 54, 88, 85, 61, 81, 64, 65, 54, 63, 100, 67, 74, 67, 59, 57, 73, 53, 67, 56, 71, 97, 49, 44, 77, 59, 58, 61, 67, 62, 87, 73, 56, 63, 71, 102, 71, 61, 83, 56, 54, 92, 64, 75, 62, 43, 80, 56, 56, 63, 57, 57, 53, 79, 86, 61, 70, 61, 81, 51, 68, 118, 74, 58, 46, 57, 108, 74, 60, 65, 57, 50, 73, 53, 75, 91, 65, 52, 61, 61, 54, 60, 63, 61, 59, 69, 62, 49, 75, 43, 49, 51, 63, 69, 101, 66, 56, 62, 85, 120, 44, 69, 57, 60, 67, 63, 64, 79, 60, 58, 47, 79, 61, 55, 56, 46, 86, 60, 55, 65, 73, 68, 60, 73, 71, 56, 60, 84, 57, 59, 60, 78, 68, 72, 53, 79, 93, 66, 76, 81, 44, 54, 72, 85, 59, 61, 65, 88, 47, 85, 79, 60, 55, 77, 76, 81, 54, 81, 52, 57, 100, 90, 75, 57, 71, 48, 71, 61, 61, 77, 73, 76, 65, 64, 51, 79, 76, 45, 48, 84, 59, 54, 93, 58, 53, 75, 64, 91, 53, 62, 78, 48, 77, 53, 70, 58, 63, 79, 65, 106, 64, 79, 60, 67, 54, 61, 128, 54, 71, 48, 68, 87, 55, 61, 66, 56, 65, 64, 61, 72, 48, 69, 85, 73, 46, 72, 62, 97, 55, 75, 68, 88, 55, 82, 62, 57, 78, 70, 56, 56, 85, 99, 54, 76, 57, 61, 62, 48, 59, 66, 59, 92, 65, 68, 82, 54, 56, 68, 72, 104, 68, 59, 62, 77, 55, 69, 70, 79, 55, 60, 56, 53, 62, 49, 75, 69, 64, 75, 65, 83, 102, 61, 66, 103, 56, 63, 52, 62, 66, 59, 57, 69, 70, 68, 72, 54, 72, 53, 61, 99, 65, 91, 47, 65, 70, 65, 65, 55, 48, 69, 43, 61, 57, 75, 93, 110, 71, 64, 90, 52, 61, 69, 78, 52, 59, 60, 51, 57, 89, 61, 55, 38, 49, 73, 48, 58, 60, 63, 47, 57, 65, 81, 76, 68, 54, 69, 62, 90, 43, 71, 59, 65, 70, 68, 61, 56, 65, 73, 61, 54, 54, 62, 45, 73, 83, 65, 57, 50, 59, 75, 72, 68, 82, 62, 54, 63, 65, 57, 60, 58, 62, 63, 90, 61, 64, 91, 61, 104, 55, 73, 74, 71, 73, 90, 89, 58, 65, 57, 68, 63, 57, 64, 55, 63, 64, 65, 75, 61, 93, 70, 55, 88, 68, 96, 54, 48, 62, 79, 57, 51, 66, 81, 84, 74, 64, 72, 62, 58, 77, 84, 66, 53, 79, 44, 59, 39, 81, 50, 54, 84, 77, 57, 80, 51, 70, 75, 60, 57, 65, 48, 62, 57, 60, 92, 121, 97, 63, 57, 114, 79, 57, 43, 66, 62, 57, 77, 75, 66, 60, 85, 53, 64, 70, 71, 41, 66, 60, 56, 76, 62, 42, 64, 77, 66, 70, 59, 70, 60, 75, 55, 56, 54, 48, 70, 71, 68, 73, 90, 58, 80, 63, 64, 44, 56, 65, 54, 68, 46, 80, 121, 97, 60, 77, 90, 82, 73, 60, 55, 95, 46, 69, 67, 84, 77, 64, 52, 57, 73, 64, 67, 66, 91, 66, 78, 54, 71, 91, 53, 67, 41, 86, 68, 66, 75, 43, 71, 58, 46, 56, 86, 92, 61, 83, 61, 65, 59, 56, 48, 51, 78, 56, 51, 73, 62, 53, 50, 77, 75, 60, 50, 53, 47, 60, 81, 72, 69, 73, 49, 54, 69, 51, 69, 81, 58, 63, 60, 60, 50, 74, 73, 88, 89, 83, 53, 86, 63, 83, 63, 99, 54, 66, 73, 52, 73, 62, 63, 63, 78, 105, 46, 69, 56, 67, 60, 41, 73, 64, 67, 75, 56, 58, 60, 58, 45, 40, 70, 54, 69, 40, 60, 52, 125, 57, 58, 52, 72, 79, 45, 68, 60, 54, 69, 62, 69, 70, 82, 64, 77, 67, 66, 82, 69, 66, 78, 71, 55, 121, 165, 42, 75, 46, 45, 58, 76, 86, 52, 99, 58, 51, 52, 81, 40, 73, 47, 51, 47, 67, 59, 49, 48, 69, 51, 61, 64, 61, 57, 66, 50, 44, 61, 59, 69, 68, 59, 74, 52, 53, 69, 68, 36, 88, 76, 62, 52, 57, 63, 76, 61, 54, 63, 68, 57, 56, 55, 106, 80, 57, 70, 61, 72, 58, 63, 68, 65, 71, 37, 59, 70, 54, 61, 66, 58, 61, 73, 59, 61, 66, 82, 41, 51, 50, 79, 68, 51, 71, 60, 79, 70, 77, 71, 55, 52, 54, 65, 66, 102, 58, 90, 82, 57, 91, 60, 52, 60, 70, 71, 102, 80, 72, 55, 95, 48, 56, 73, 58, 105, 64, 52, 56, 68, 81, 51, 71, 55, 56, 54, 58, 53, 86, 61, 58, 67, 66, 83, 69, 54, 85, 64, 60, 89, 66, 69, 91, 87, 62, 58, 91, 67, 75, 56, 48, 55, 71, 68, 83, 65, 60, 102, 69, 83, 75, 55, 77, 47, 54, 77, 76, 46, 84, 65, 82, 66, 63, 79, 69, 65, 74, 50, 59, 60, 57, 68, 57, 66, 77, 84, 47, 72, 58, 51, 47, 47, 76, 47, 70, 58, 58, 113, 119, 62, 50, 66, 69, 67, 68, 87, 56, 65, 81, 74, 66, 45, 75, 74, 79, 60, 57, 50, 69, 76, 61, 70, 64, 59, 78, 62, 60, 60, 71, 62, 50, 52, 66, 106, 55, 64, 58, 48, 74, 45, 82, 53, 64, 52, 65, 62, 54, 57, 70, 65, 47, 67, 56, 67, 154, 58, 56, 69, 61, 53, 70, 55, 57, 67, 62, 66, 76, 106, 89, 82, 57, 75, 71, 51, 60, 81, 54, 64, 55, 66, 62, 85, 104, 59, 86, 63, 67, 55, 101, 62, 60, 76, 86, 57, 70, 69, 57, 69, 59, 67, 51, 54, 43, 48, 52, 53, 45, 90, 65, 91, 67, 86, 65, 77, 68, 52, 55, 72, 67, 87, 59, 70, 44, 73, 60, 95, 70, 54, 57, 69, 81, 67, 42, 65, 72, 50, 50, 56, 74, 68, 53, 116, 87, 69, 67, 51, 68, 52, 77, 59, 60, 53, 63, 75, 69, 67, 59, 59, 61, 56, 49, 54, 63, 66, 77, 62, 60, 49, 39, 61, 60, 69, 64, 74, 92, 77, 68, 53, 68, 52, 92, 71, 58, 57, 56, 72, 50, 53, 81, 78, 82, 61, 66, 66, 47, 69, 102, 53, 76, 61, 68, 68, 76, 84, 51, 54, 53, 72, 61, 64, 94, 76, 70, 54, 115, 58, 53, 49, 70, 50, 59, 56, 44, 61, 59, 84, 71, 95, 50, 75, 89, 39, 85, 62, 56, 88, 56, 48, 64, 122, 61, 77, 72, 48, 55, 63, 57, 56, 94, 55, 68, 77, 59, 56, 53, 71, 57, 55, 66, 58, 57, 98, 63, 94, 63, 69, 59, 84, 68, 68, 58, 65, 57, 59, 51, 52, 57, 56, 49, 60, 44, 42, 75, 69, 59, 63, 56, 81, 63, 65, 75, 53, 62, 80, 59, 77, 87, 64, 66, 56, 45, 63, 53, 76, 60, 67, 66, 97, 63, 60, 70, 75, 70, 84, 72, 62, 54, 94, 65, 127, 60, 58, 80, 86, 68, 84, 83, 50, 76, 63, 83, 85, 62, 78, 63, 65, 48, 60, 85, 102, 69, 76, 54, 53, 52, 57, 72, 58, 67, 49, 72, 60, 62, 73, 53, 84, 50, 69, 60, 60, 66, 59, 44, 100, 54, 72, 54, 64, 65, 64, 59, 60, 89, 77, 67, 60, 122, 69, 58, 54, 64, 59, 41, 54, 66, 77, 86, 76, 53, 69, 61, 63, 56, 57, 76, 81, 55, 83, 60, 49, 64, 55, 71, 58, 103, 66, 69, 76, 58, 76, 72, 63, 48, 60, 58, 75, 49, 63, 70, 53, 69, 57, 67, 76, 75, 61, 49, 60, 75, 82, 85, 75, 54, 79, 62, 71, 46, 66, 51, 64, 51, 69, 83, 65, 59, 73, 65, 70, 52, 56, 116, 53, 66, 72, 54, 78, 50, 67, 67, 45, 70, 55, 57, 75, 60, 97, 55, 76, 65, 62, 74, 61, 59, 85, 56, 60, 51, 68, 73, 86, 76, 59, 63, 67, 60, 81, 55, 61, 47, 41, 72, 57, 77, 62, 70, 68, 46, 59, 63, 58, 56, 56, 59, 65, 62, 56, 52, 77, 71, 73, 81, 60, 84, 58, 72, 97, 79, 62, 56, 62, 50, 70, 47, 63, 68, 43, 89, 52, 78, 66, 94, 58, 52, 60, 61, 86, 72, 74, 61, 54, 61, 64, 87, 66, 81, 59, 53, 59, 71, 93, 63, 73, 70, 56, 65, 58, 51, 102, 61, 79, 62, 80, 58, 57, 78, 57, 55, 70, 81, 67, 70, 68, 36, 46, 76, 63, 55, 78, 61, 143, 79, 62, 79, 75, 67, 76, 57, 64, 80, 48, 63, 77, 60, 62, 60, 52, 77, 47, 70, 81, 65, 67, 86, 78, 89, 53, 53, 51, 67, 67, 54, 72, 59, 85, 62, 50, 49, 83, 90, 57, 62, 53, 91, 65, 61, 55, 52, 64, 67, 77, 63, 60, 64, 86, 87, 88, 65, 47, 75, 58, 71, 55, 77, 86, 69, 76, 62, 57, 66, 63, 52, 90, 71, 67, 61, 64, 45, 47, 65, 64, 66, 76, 72, 64, 66, 60, 64, 78, 51, 44, 56, 108, 79, 64, 88, 84, 80, 94, 68, 66, 87, 79, 38, 89, 57, 69, 60, 57, 54, 51, 59, 53, 76, 61, 67, 66, 84, 49, 102, 51, 63, 115, 64, 68, 64, 55, 45, 54, 82, 76, 72, 48, 64, 57, 64, 77, 65, 51, 55, 52, 61, 76, 49, 57, 82, 62, 64, 73, 69, 51, 58, 44, 53, 59, 42, 68, 52, 56, 77, 50, 60, 80, 44, 58, 78, 70, 57, 62, 95, 65, 63, 70, 78, 44, 92, 61, 68, 62, 69, 81, 55, 59, 54, 67, 65, 70, 101, 62, 59, 62, 106, 52, 75, 65, 67, 51, 63, 60, 55, 61, 59, 59, 54, 68, 66, 49, 57, 64, 66, 55, 44, 67, 44, 68, 58, 70, 74, 57, 60, 57, 63, 58, 58, 85, 64, 61, 91, 53, 74, 71, 62, 70, 60, 74, 69, 63, 58, 71, 71, 55, 60, 67, 56, 49, 74, 55, 78, 59, 58, 108, 63, 60, 57, 68, 65, 66, 82, 63, 60, 59, 68, 79, 76, 53, 55, 124, 64, 59, 71, 52, 55, 55, 59, 54, 54, 61, 65, 50, 41, 66, 82, 70, 74, 66, 64, 78, 57, 103, 60, 63, 68, 63, 53, 85, 58, 59, 57, 70, 95, 61, 63, 59, 61, 80, 67, 64, 64, 50, 68, 57, 70, 56, 83, 77, 72, 64, 65, 61, 65, 59, 76, 63, 57, 50, 64, 74, 58, 67, 62, 62, 54, 66, 75, 56, 60, 55, 65, 73, 58, 56, 73, 78, 58, 50, 62, 56, 107, 69, 85, 116, 73, 57, 70, 89, 58, 51, 54, 88, 56, 62, 49, 63, 104, 67, 71, 78, 53, 51, 47, 68, 72, 59, 79, 57, 64, 71, 77, 92, 95, 63, 58, 69, 57, 63, 67, 55, 66, 81, 75, 70, 64, 61, 66, 81, 84, 72, 63, 46, 65, 74, 72, 55, 66, 48, 68, 58, 65, 71, 51, 77, 65, 67, 78, 72, 93, 75, 77, 64, 52, 70, 68, 63, 54, 69, 64, 62, 66, 73, 54, 84, 45, 57, 68, 56, 61, 59, 57, 62, 61, 64, 68, 58, 85, 48, 63, 71, 69, 56, 53, 54, 54, 60, 65, 51, 61, 59, 63, 60, 60, 44, 51, 86, 53, 83, 70, 81, 67, 68, 61, 55, 56, 86, 67, 69, 59, 92, 68, 57, 49, 71, 65, 64, 88, 60, 70, 48, 59, 72, 81, 55, 63, 65, 66, 78, 58, 73, 89, 69, 98, 67, 70, 74, 119, 65, 82, 50, 67, 55, 84, 52, 73, 74, 56, 50, 61, 61, 59, 57, 56, 71, 69, 73, 60, 73, 66, 45, 72, 68, 69, 54, 91, 65, 96, 68, 71, 48, 73, 62, 118, 64, 45, 65, 53, 59, 61, 61, 39, 70, 59, 60, 44, 74, 61, 60, 58, 52, 54, 58, 67, 73, 52, 82, 82, 67, 62, 65, 63, 60, 65, 107, 51, 57, 84, 59, 63, 72, 59, 44, 69, 59, 61, 50, 54, 65, 47, 73, 65, 84, 58, 64, 52, 64, 48, 71, 61, 67, 47, 70, 57, 64, 47, 62, 56, 58, 71, 56, 65, 56, 84, 69, 66, 71, 70, 74, 82, 51, 59, 73, 59, 59, 60, 69, 69, 60, 76, 61, 55, 68, 49, 71, 48, 100, 48, 65, 62, 60, 56, 63, 53, 58, 101, 80, 66, 48, 68, 47, 55, 66, 113, 60, 54, 67, 69, 51, 108, 65, 62, 65, 46, 75, 83, 87, 46, 61, 52, 75, 53, 74, 55, 70, 55, 68, 72, 64, 98, 59, 59, 64, 73, 69, 61, 65, 79, 99, 62, 63, 85, 64, 68, 62, 57, 73, 81, 66, 70, 83, 50, 39, 48, 60, 61, 84, 57, 60, 59, 51, 73, 71, 53, 62, 72, 71, 55, 74, 57, 65, 57, 72, 55, 73, 49, 75, 59, 71, 58, 56, 55, 65, 58, 78, 52, 92, 67, 58, 73, 80, 57, 94, 72, 67, 65, 36, 77, 60, 74, 68, 63, 56, 53, 70, 55, 68, 75, 66, 64, 73, 61, 55, 61, 52, 111, 60, 58, 88, 66, 47, 68, 65, 81, 63, 41, 47, 56, 58, 60, 43, 65, 67, 63, 110, 69, 58, 80, 73, 76, 64, 62, 64, 75, 78, 79, 47, 60, 62, 61, 48, 73, 62, 69, 71, 60, 49, 63, 64, 62, 66, 66, 87, 47, 62, 62, 49, 72, 63, 71, 65, 94, 43, 71, 76, 52, 56, 74, 59, 60, 65, 71, 56, 70, 96, 81, 61, 55, 88, 54, 72, 48, 56, 65, 82, 61, 75, 57, 63, 52, 59, 61, 57, 49, 65, 64, 85, 65, 58, 57, 56, 61, 49, 62, 60, 55, 72, 76, 63, 80, 53, 60, 81, 59, 68, 105, 67, 69, 78, 65, 54, 53, 85, 60, 54, 59, 82, 75, 63, 67, 81, 59, 65, 63, 96, 65, 84, 53, 65, 53, 74, 55, 70, 56, 66, 63, 64, 57, 64, 52, 70, 45, 52, 69, 72, 78, 85, 63, 108, 73, 57, 64, 79, 82, 58, 72, 83, 57, 62, 85, 64, 76, 49, 63, 57, 66, 61, 53, 72, 51, 60, 85, 71, 64, 63, 71, 74, 44, 61, 41, 69, 68, 73, 55, 81, 71, 64, 58, 51, 56, 112, 68, 70, 79, 89, 108, 57, 59, 56, 47, 39, 61, 59, 56, 43, 89, 71, 84, 60, 61, 62, 149, 68, 51, 93, 69, 49, 64, 56, 61, 70, 63, 59, 58, 70, 73, 109, 62, 124, 67, 95, 66, 62, 92, 72, 60, 94, 57, 61, 64, 72, 51, 48, 76, 62, 91, 54, 67, 64, 61, 55, 60, 63, 70, 47, 62, 130, 52, 59, 69, 54, 69, 54, 74, 49, 53, 82, 81, 54, 63, 61, 69, 63, 68, 62, 57, 63, 58, 77, 77, 59, 75, 65, 51, 63, 74, 54, 64, 71, 81, 47, 72, 69, 64, 57, 82, 65, 120, 58, 55, 62, 84, 69, 65, 57, 67, 80, 61, 93, 58, 48, 56, 49, 77, 62, 64, 123, 60, 69, 64, 75, 55, 76, 33, 70, 76, 61, 51, 57, 47, 66, 61, 60, 72, 74, 70, 73, 62, 55, 68, 84, 55, 56, 96, 56, 59, 94, 61, 60, 76, 54, 49, 70, 71, 70, 50, 55, 59, 66, 54, 57, 87, 101, 54, 72, 69, 68, 55, 52, 74, 70, 82, 64, 50, 60, 61, 136, 74, 95, 49, 90, 81, 55, 42, 63, 66, 62, 64, 66, 51, 88, 71, 77, 58, 63, 74, 50, 60, 61, 66, 74, 51, 75, 53, 96, 88, 64, 78, 59, 59, 71, 81, 67, 56, 75, 75, 62, 68, 65, 55, 68, 85, 75, 41, 59, 63, 62, 50, 63, 54, 69, 78, 78, 44, 62, 60, 67, 113, 61, 51, 63, 59, 43, 65, 76, 62, 64, 57, 66, 61, 68, 54, 72, 63, 43, 66, 72, 65, 62, 63, 88, 84, 48, 62, 73, 73, 51, 62, 61, 64, 55, 69, 61, 60, 73, 52, 72, 65, 61, 71, 59, 84, 73, 59, 61, 72, 61, 63, 56, 54, 71, 62, 47, 50, 63, 55, 63, 117, 63, 60, 73, 67, 52, 67, 56, 60, 84, 51, 51, 104, 75, 70, 58, 76, 54, 62, 75, 42, 65, 82, 67, 61, 68, 61, 77, 120, 54, 67, 67, 70, 64, 61, 70, 52, 70, 51, 60, 51, 74, 61, 99, 51, 61, 64, 63, 67, 65, 60, 59, 89, 57, 65, 66, 78, 67, 53, 51, 80, 52, 69, 64, 73, 50, 46, 64, 59, 75, 58, 127, 76, 64, 70, 66, 50, 67, 69, 94, 58, 48, 66, 59, 57, 68, 58, 54, 55, 61, 55, 70, 75, 63, 64, 67, 67, 55, 68, 61, 69, 53, 70, 65, 59, 49, 71, 48, 46, 56, 57, 47, 93, 64, 63, 69, 78, 76, 55, 59, 55, 62, 47, 61, 63, 68, 91, 58, 64, 85, 52, 64, 66, 51, 77, 62, 59, 55, 54, 94, 53, 49, 64, 68, 57, 63, 56, 64, 69, 57, 51, 65, 69, 70, 68, 58, 49, 55, 71, 66, 54, 74, 63, 86, 43, 68, 63, 92, 61, 42, 77, 49, 81, 62, 72, 48, 48, 40, 53, 56, 59, 82, 76, 62, 68, 61, 47, 76, 59, 57, 50, 79, 51, 60, 75, 82, 50, 65, 60, 60, 83, 66, 59, 107, 91, 54, 57, 57, 89, 65, 68, 69, 47, 66, 60, 70, 58, 47, 81, 74, 59, 56, 70, 111, 54, 71, 47, 67, 70, 56, 68, 60, 72, 61, 63, 68, 61, 53, 64, 131, 60, 55, 70, 65, 93, 61, 64, 64, 67, 55, 87, 66, 46, 54, 59, 77, 56, 52, 66, 57, 136, 48, 59, 53, 117, 77, 82, 80, 59, 56, 43, 66, 64, 78, 69, 70, 69, 79, 57, 57, 53, 57, 63, 53, 74, 71, 69, 94, 76, 58, 63, 54, 97, 70, 73, 66, 58, 50, 59, 65, 51, 53, 59, 52, 63, 47, 67, 66, 77, 57, 57, 61, 66, 77, 79, 48, 67, 50, 56, 72, 52, 66, 78, 68, 49, 71, 63, 59, 58, 67, 87, 74, 70, 59, 40, 58, 99, 66, 64, 62, 81, 61, 63, 52, 62, 64, 59, 85, 67, 68, 65, 77, 57, 61, 78, 65, 78, 58, 82, 60, 72, 71, 69, 64, 38, 63, 67, 84, 66, 68, 56, 64, 71, 59, 57, 60, 70, 62, 60, 53, 80, 54, 60, 57, 68, 40, 79, 75, 62, 71, 59, 52, 56, 64, 61, 68, 64, 60, 71, 64, 69, 73, 47, 75, 59, 51, 67, 71, 68, 53, 74, 66, 53, 64, 57, 65, 69, 51, 80, 52, 64, 62, 60, 49, 91, 75, 98, 65, 75, 69, 57, 141, 49, 65, 80, 61, 115, 82, 59, 63, 68, 74, 49, 68, 69, 69, 72, 57, 60, 56, 56, 46, 66, 82, 57, 50, 50, 62, 50, 74, 54, 53, 74, 55, 52, 73, 66, 69, 70, 77, 85, 75, 58, 66, 63, 56, 83, 57, 45, 56, 55, 67, 58, 65, 62, 50, 49, 68, 71, 66, 56, 92, 49, 91, 69, 68, 73, 50, 55, 52, 69, 56, 73, 52, 66, 58, 71, 66, 102, 79, 68, 41, 59, 79, 64, 63, 79, 72, 60, 59, 75, 56, 77, 97, 60, 103, 60, 81, 78, 65, 56, 61, 72, 48, 70, 57, 99, 70, 75, 68, 67, 42, 60, 71, 51, 103, 75, 57, 75, 83, 62, 64, 51, 92, 63, 54, 84, 77, 47, 66, 69, 57, 74, 62, 73, 62, 64, 36, 52, 79, 51, 70, 64, 57, 63, 61, 47, 42, 103, 56, 61, 77, 108, 57, 53, 97, 90, 56, 82, 42, 65, 63, 105, 58, 80, 56, 57, 75, 67, 82, 61, 87, 49, 51, 52, 61, 69, 70, 63, 60, 108, 57, 74, 64, 61, 76, 66, 69, 52, 58, 56, 92, 61, 57, 72, 62, 44, 58, 62, 83, 62, 50, 66, 74, 62, 78, 85, 81, 62, 73, 73, 75, 123, 52, 58, 57, 65, 52, 71, 89, 57, 93, 80, 53, 67, 51, 56, 38, 50, 60, 73, 71, 52, 79, 59, 51, 94, 57, 71, 89, 67, 84, 63, 57, 57, 93, 70, 55, 49, 70, 65, 51, 43, 75, 84, 126, 65, 75, 67, 61, 81, 75, 61, 63, 61, 63, 52, 67, 87, 63, 67, 58, 42, 53, 59, 51, 66, 78, 44, 90, 65, 47, 62, 73, 58, 70, 58, 49, 57, 50, 71, 53, 56, 57, 56, 57, 60, 58, 54, 47, 53, 64, 41, 59, 67, 71, 55, 64, 63, 78, 58, 34, 51, 67, 90, 68, 59, 60, 64, 56, 47, 69, 56, 51, 73, 96, 71, 55, 50, 46, 63, 42, 76, 77, 73, 67, 50, 71, 53, 70, 52, 59, 42, 64, 70, 61, 67, 61, 84, 59, 67, 81, 55, 128, 75, 59, 54, 55, 58, 57, 58, 66, 68, 74, 81, 53, 66, 60, 64, 79, 59, 58, 90, 54, 54, 55, 77, 87, 60, 61, 72, 62, 58, 68, 66, 65, 45, 70, 73, 56, 75, 60, 66, 59, 80, 90, 50, 77, 97, 62, 55, 48, 58, 64, 66, 71, 74, 76, 60, 58, 114, 58, 69, 85, 74, 57, 56, 85, 74, 74, 87, 81, 56, 56, 93, 77, 79, 80, 61, 80, 71, 57, 92, 54, 70, 54, 55, 59, 58, 56, 58, 56, 67, 59, 80, 70, 52, 65, 62, 65, 59, 72, 72, 64, 71, 73, 72, 73, 76, 85, 61, 82, 86, 69, 71, 58, 70, 50, 51, 59, 73, 62, 60, 75, 138, 79, 52, 75, 38, 55, 48, 64, 67, 63, 62, 67, 50, 65, 54, 75, 64, 62, 67, 93, 57, 60, 73, 81, 65, 76, 76, 68, 60, 85, 71, 75, 66, 66, 61, 74, 55, 60, 50, 50, 53, 64, 61, 66, 67, 59, 54, 70, 68, 56, 72, 66, 65, 50, 51, 48, 91, 53, 64, 40, 58, 77, 56, 75, 64, 86, 62, 54, 89, 62, 94, 54, 92, 59, 60, 64, 69, 66, 54, 58, 67, 60, 68, 68, 64, 66, 55, 57, 65, 70, 75, 58, 56, 62, 65, 61, 71, 77, 67, 48, 63, 59, 68, 57, 62, 83, 46, 55, 73, 60, 59, 74, 57, 53, 59, 75, 71, 70, 53, 69, 71, 66, 65, 52, 66, 58, 84, 56, 97, 68, 64, 60, 58, 71, 58, 65, 73, 63, 69, 64, 74, 67, 69, 74, 65, 82, 53, 120, 65, 63, 72, 60, 65, 65, 68, 75, 74, 57, 68, 57, 55, 75, 72, 71, 53, 56, 60, 65, 73, 89, 73, 70, 62, 59, 60, 84, 65, 65, 56, 80, 57, 54, 84, 58, 66, 69, 75, 58, 62, 54, 59, 53, 60, 65, 76, 60, 66, 58, 64, 56, 69, 62, 75, 77, 67, 65, 71, 86, 50, 53, 50, 51, 59, 68, 55, 56, 66, 57, 70, 65, 57, 73, 57, 59, 65, 66, 75, 60, 88, 55, 69, 84, 59, 62, 57, 67, 62, 56, 61, 71, 67, 51, 67, 60, 65, 63, 70, 67, 62, 56, 72, 65, 65, 60, 61, 71, 57, 65, 56, 127, 62, 46, 62, 53, 45, 52, 60, 59, 67, 61, 66, 61, 64, 70, 69, 63, 65, 53, 68, 61, 60, 71, 72, 62, 70, 70, 78, 63, 69, 58, 80, 65, 49, 65, 65, 82, 76, 67, 62, 59, 55, 54, 62, 63, 51, 89, 76, 59, 66, 90, 66, 61, 76, 67, 62, 60, 60, 88, 73, 80, 56, 59, 74, 59, 65, 59, 51, 59, 61, 58, 52, 76, 56, 58, 62, 61, 64, 61, 49, 57, 66, 65, 52, 86, 66, 82, 70, 82, 60, 51, 59, 82, 50, 86, 63, 66, 62, 54, 74, 50, 58, 67, 59, 78, 84, 72, 73, 64, 61, 70, 80, 63, 73, 58, 58, 58, 66, 62, 81, 52, 67, 46, 55, 58, 123, 64, 63, 67, 53, 58, 82, 62, 66, 65, 53, 49, 54, 65, 61, 57, 61, 64, 56, 90, 67, 64, 64, 54, 68, 57, 64, 58, 65, 52, 116, 75, 61, 63, 60, 69, 86, 61, 48, 55, 58, 63, 66, 60, 66, 60, 66, 52, 56, 58, 60, 69, 63, 39, 63, 64, 64, 72, 49, 66, 62, 67, 58, 64, 52, 63, 66, 84, 62, 64, 54, 67, 58, 50, 56, 57, 71, 59, 58, 65, 55, 65, 63, 76, 70, 55, 62, 59, 64, 72, 59, 73, 65, 62, 49, 58, 59, 78, 70, 67, 85, 58, 56, 71, 64, 74, 69, 80, 72, 55, 75, 101, 115, 80, 57, 56, 67, 66, 55, 62, 61, 61, 62, 63, 56, 54, 67, 65, 87, 84, 74, 60, 53, 62, 67, 55, 61, 65, 67, 97, 80, 65, 61, 79, 71, 73, 97, 61, 55, 56, 65, 69, 53, 62, 65, 52, 47, 79, 78, 60, 63, 56, 59, 75, 68, 64, 70, 103, 73, 80, 53, 59, 58, 56, 63, 63, 76, 58, 60, 80, 64, 76, 58, 55, 67, 64, 86, 71, 85, 63, 95, 55, 71, 91, 61, 69, 56, 63, 56, 55, 62, 64, 60, 72, 66, 54, 60, 51, 63, 72, 71, 82, 45, 47, 58, 59, 66, 67, 70, 69, 63, 41, 81, 58, 70, 76, 60, 78, 63, 49, 59, 73, 71, 64, 59, 67, 64, 75, 54, 65, 59, 60, 70, 58, 66, 56, 67, 71, 64, 73, 65, 70, 73, 56, 65, 53, 59, 55, 96, 69, 58, 68, 61, 64, 57, 69, 73, 58, 69, 64, 49, 63, 75, 47, 58, 60, 57, 94, 63, 63, 51, 48, 80, 55, 61, 64, 58, 83, 55, 56, 65, 77, 69, 49, 70, 52, 67, 52, 70, 59, 48, 84, 49, 66, 51, 93, 81, 97, 66, 56, 72, 63, 64, 63, 95, 74, 69, 82, 60, 71, 50, 68, 70, 62, 60, 55, 52, 88, 75, 59, 58, 75, 63, 71, 60, 65, 70, 82, 67, 60, 72, 55, 59, 72, 68, 75, 62, 79, 50, 64, 68, 60, 71, 58, 54, 65, 54, 64, 63, 60, 77, 60, 62, 69, 62, 58, 60, 61, 75, 59, 60, 65, 83, 57, 70, 81, 61, 55, 70, 59, 67, 67, 51, 65, 81, 86, 73, 65, 46, 95, 63, 54, 56, 66, 75, 85, 87, 58, 72, 74, 67, 74, 68, 60, 58, 53, 77, 69, 61, 68, 82, 80, 71, 74, 66, 72, 81, 77, 77, 97, 59, 55, 72, 84, 62, 65, 49, 57, 61, 62, 66, 87, 54, 68, 57, 66, 61, 57, 59, 63, 69, 63, 63, 51, 58, 65, 53, 60, 71, 69, 68, 62, 58, 107, 71, 54, 89, 60, 88, 52, 57, 69, 58, 62, 76, 57, 75, 73, 72, 63, 74, 56, 78, 51, 147, 57, 68, 86, 77, 74, 60, 69, 56, 67, 65, 60, 52, 79, 67, 103, 69, 79, 63, 56, 60, 62, 72, 56, 63, 48, 55, 67, 79, 68, 60, 79, 86, 58, 90, 52, 71, 54, 58, 66, 51, 55, 71, 58, 77, 105, 61, 73, 73, 72, 51, 46, 69, 60, 56, 90, 98, 68, 78, 61, 54, 52, 59, 58, 77, 66, 69, 73, 65, 72, 63, 46, 67, 58, 64, 72, 61, 79, 67, 55, 60, 82, 59, 56, 77, 58, 131, 49, 63, 47, 77, 78, 68, 60, 60, 96, 59, 61, 56, 60, 66, 72, 67, 65, 58, 87, 69, 74, 70, 62, 61, 86, 39, 77, 73, 63, 58, 74, 63, 60, 59, 70, 63, 73, 62, 62, 60, 60, 68, 77, 54, 76, 76, 56, 62, 51, 65, 67, 61, 68, 56, 64, 62, 63, 54, 73, 53, 72, 63, 55, 67, 68, 62, 47, 57, 96, 69, 61, 68, 75, 49, 60, 67, 57, 62, 117, 62, 67, 75, 79, 74, 80, 46, 65, 60, 63, 67, 62, 68, 62, 58, 84, 68, 66, 69, 68, 58, 65, 66, 62, 76, 48, 62, 64, 60, 55, 73, 75, 67, 54, 68, 52, 56, 97, 59, 66, 56, 48, 89, 56, 68, 56, 70, 57, 65, 60, 87, 72, 68, 72, 63, 77, 66, 65, 57, 75, 84, 71, 54, 95, 61, 78, 61, 70, 79, 65, 51, 62, 72, 50, 86, 68, 64, 90, 62, 64, 56, 53, 61, 78, 67, 81, 47, 66, 61, 70, 77, 63, 51, 63, 80, 52, 71, 70, 65, 80, 68, 59, 56, 60, 75, 55, 91, 97, 79, 75, 63, 91, 70, 66, 66, 63, 64, 41, 68, 86, 85, 71, 56, 70, 73, 62, 59, 79, 70, 74, 56, 76, 73, 57, 72, 61, 55, 79, 75, 61, 62, 46, 77, 79, 76, 57, 70, 87, 55, 58, 48, 75, 84, 63, 74, 62, 47, 79, 75, 87, 66, 78, 61, 73, 83, 59, 70, 73, 47, 78, 73, 62, 58, 64, 71, 46, 53, 68, 76, 54, 77, 52, 45, 50, 72, 75, 70, 42, 79, 57, 70, 51, 73, 73, 52, 71, 74, 84, 59, 56, 82, 80, 75, 56, 61, 63, 58, 98, 68, 57, 86, 64, 51, 57, 64, 59, 85, 67, 67, 75, 52, 89, 64, 66, 73, 71, 73, 49, 61, 59, 72, 45, 81, 72, 60, 69, 53, 51, 64, 63, 64, 77, 69, 64, 65, 49, 42, 65, 83, 64, 88, 55, 61, 50, 47, 80, 56, 79, 84, 83, 70, 48, 57, 71, 79, 77, 51, 85, 82, 56, 58, 48, 73, 70, 88, 60, 53, 80, 61, 62, 62, 68, 65, 64, 58, 93, 67, 72, 49, 66, 80, 71, 64, 61, 71, 58, 42, 56, 55, 89, 56, 60, 63, 55, 74, 39, 79, 57, 92, 86, 98, 48, 55, 59, 62, 64, 65, 49, 78, 55, 61, 55, 61, 83, 55, 56, 77, 84, 56, 52, 72, 59, 68, 63, 60, 67, 46, 87, 68, 60, 54, 47, 55, 76, 64, 80, 56, 73, 67, 51, 47, 75, 69, 84, 77, 49, 74, 59, 72, 68, 54, 74, 61, 70, 55, 47, 62, 69, 57, 65, 58, 100, 41, 63, 67, 59, 70, 77, 72, 45, 71, 67, 66, 70, 56, 70, 61, 61, 58, 64, 69, 67, 77, 55, 71, 62, 91, 61, 95, 54, 73, 59, 71, 37, 50, 54, 76, 49, 51, 58, 83, 69, 72, 78, 80, 62, 81, 38, 58, 69, 68, 56, 51, 71, 84, 99, 74, 36, 61, 59, 48, 45, 68, 64, 62, 80, 52, 58, 57, 86, 44, 78, 65, 61, 65, 91, 85, 80, 82, 63, 52, 80, 66, 78, 70, 61, 75, 54, 89, 67, 44, 47, 59, 83, 67, 55, 66, 91, 43, 62, 66, 53, 58, 53, 65, 82, 79, 90, 70, 56, 62, 66, 53, 72, 75, 51, 56, 66, 71, 67, 78, 61, 53, 55, 76, 72, 85, 47, 62, 62, 77, 75, 83, 51, 59, 79, 81, 58, 59, 72, 68, 62, 68, 67, 77, 67, 67, 71, 63, 44, 70, 73, 85, 52, 82, 90, 62, 66, 75, 66, 53, 72, 68, 65, 63, 51, 73, 42, 59, 59, 55, 90, 96, 57, 68, 72, 51, 70, 65, 55, 59, 45, 62, 51, 94, 62, 73, 70, 69, 63, 82, 69, 57, 98, 78, 60, 53, 55, 80, 76, 69, 61, 79, 63, 66, 69, 48, 138, 63, 78, 83, 50, 56, 63, 39, 43, 80, 85, 52, 72, 70, 75, 55, 51, 58, 67, 78, 63, 48, 63, 83, 85, 57, 66, 64, 64, 75, 61, 76, 72, 85, 37, 64, 50, 61, 73, 54, 58, 59, 86, 64, 84, 71, 60, 58, 66, 59, 68, 53, 77, 47, 63, 70, 56, 55, 48, 60, 158, 59, 77, 67, 70, 74, 66, 98, 93, 67, 43, 58, 58, 97, 43, 52, 79, 97, 62, 68, 60, 57, 68, 42, 70, 49, 70, 69, 72, 61, 64, 60, 44, 57, 52, 86, 61, 48, 66, 63, 48, 61, 53, 75, 62, 52, 64, 74, 54, 58, 74, 52, 56, 53, 69, 50, 57, 51, 67, 92, 55, 75, 76, 59, 111, 76, 54, 43, 56, 78, 56, 66, 45, 63, 86, 98, 46, 72, 58, 54, 57, 80, 56, 75, 56, 70, 68, 64, 47, 54, 70, 55, 46, 66, 85, 65, 59, 63, 73, 79, 93, 63, 95, 57, 70, 60, 74, 55, 43, 58, 49, 65, 65, 65, 73, 49, 60, 71, 59, 52, 61, 165, 39, 54, 76, 82, 56, 80, 74, 66, 43, 66, 47, 44, 76, 56, 69, 59, 56, 67, 66, 63, 63, 66, 63, 62, 77, 58, 41, 54, 57, 70, 58, 66, 82, 43, 68, 87, 70, 65, 61, 68, 98, 84, 48, 62, 77, 86, 73, 68, 68, 75, 40, 62, 67, 82, 56, 53, 72, 69, 61, 85, 50, 60, 60, 68, 71, 66, 65, 54, 62, 66, 81, 81, 52, 45, 86, 53, 71, 49, 58, 69, 73, 61, 66, 53, 74, 59, 45, 76, 68, 79, 87, 77, 77, 73, 55, 71, 72, 71, 50, 66, 72, 43, 77, 73, 44, 71, 75, 71, 79, 61, 66, 83, 78, 85, 81, 53, 83, 66, 63, 53, 74, 74, 52, 41, 68, 68, 40, 48, 61, 63, 59, 62, 68, 83, 55, 48, 58, 69, 65, 51, 78, 69, 52, 56, 81, 50, 68, 86, 62, 78, 77, 59, 58, 57, 90, 67, 67, 66, 75, 79, 57, 53, 62, 88, 64, 61, 55, 52, 71, 67, 74, 75, 66, 52, 58, 62, 75, 50, 63, 69, 65, 60, 76, 76, 62, 61, 59, 65, 54, 92, 76, 58, 50, 62, 53, 46, 73, 61, 55, 61, 70, 54, 61, 57, 83, 59, 61, 79, 83, 75, 55, 79, 74, 44, 60, 58, 45, 62, 79, 72, 54, 49, 75, 70, 62, 52, 82, 53, 69, 68, 72, 56, 59, 57, 76, 83, 59, 56, 64, 63, 52, 59, 82, 85, 57, 51, 59, 79, 41, 62, 67, 86, 76, 61, 97, 95, 67, 78, 58, 56, 58, 46, 79, 56, 71, 77, 77, 30, 60, 70, 51, 59, 60, 59, 76, 56, 82, 60, 65, 59, 88, 78, 59, 56, 60, 63, 44, 86, 98, 63, 52, 72, 90, 59, 63, 57, 71, 73, 69, 56, 72, 65, 54, 76, 60, 53, 58, 82, 43, 66, 66, 45, 64, 71, 84, 87, 64, 73, 53, 49, 52, 67, 68, 63, 44, 65, 59, 85, 63, 37, 52, 59, 66, 54, 64, 56, 67, 52, 61, 62, 67, 89, 71, 53, 71, 68, 50, 52, 92, 60, 69, 52, 66, 67, 88, 64, 53, 89, 55, 59, 67, 59, 90, 70, 78, 74, 70, 87, 64, 69, 90, 61, 58, 54, 74, 54, 86, 58, 66, 63, 76, 84, 65, 62, 65, 68, 53, 49, 72, 60, 66, 72, 79, 61, 85, 46, 58, 81, 75, 68, 77, 71, 67, 67, 59, 69, 63, 61, 73, 59, 68, 71, 52, 79, 62, 68, 62, 57, 41, 71, 64, 72, 98, 54, 63, 72, 52, 73, 53, 70, 69, 57, 58, 63, 55, 65, 60, 70, 49, 50, 48, 62, 47, 59, 56, 77, 64, 80, 75, 69, 57, 61, 58, 96, 73, 54, 55, 76, 44, 61, 50, 67, 65, 57, 61, 52, 60, 76, 51, 76, 51, 53, 50, 65, 68, 58, 83, 45, 66, 58, 74, 59, 58, 64, 72, 47, 67, 67, 117, 72, 79, 63, 70, 55, 57, 67, 73, 74, 62, 65, 51, 61, 62, 61, 40, 54, 103, 66, 76, 70, 54, 58, 52, 70, 91, 35, 76, 78, 50, 106, 52, 60, 77, 79, 42, 70, 62, 58, 59, 76, 74, 73, 56, 74, 75, 58, 70, 52, 59, 69, 66, 55, 69, 64, 87, 73, 64, 63, 62, 44, 71, 60, 54, 69, 107, 71, 68, 61, 42, 81, 61, 66, 73, 72, 50, 62, 63, 84, 65, 64, 76, 68, 58, 56, 75, 77, 60, 79, 70, 66, 67, 63, 56, 63, 66, 84, 60, 75, 108, 75, 75, 53, 63, 97, 75, 62, 56, 65, 61, 42, 45, 63, 61, 47, 51, 57, 61, 61, 44, 75, 72, 62, 63, 59, 61, 66, 63, 78, 54, 62, 72, 72, 74, 63, 101, 73, 61, 65, 74, 94, 55, 66, 61, 67, 70, 81, 48, 53, 42, 66, 48, 62, 50, 68, 68, 149, 53, 52, 66, 141, 66, 59, 67, 65, 68, 60, 52, 62, 75, 78, 91, 61, 61, 64, 54, 50, 52, 71, 68, 80, 54, 54, 75, 57, 71, 71, 76, 112, 66, 77, 62, 71, 75, 64, 56, 70, 60, 83, 52, 57, 43, 68, 79, 46, 68, 55, 59, 47, 67, 73, 60, 64, 73, 81, 74, 64, 82, 68, 54, 57, 77, 58, 61, 55, 52, 51, 47, 57, 45, 74, 58, 71, 55, 42, 68, 84, 79, 56, 67, 57, 52, 62, 127, 65, 59, 62, 74, 60, 55, 85, 55, 91, 61, 50, 49, 48, 79, 88, 78, 51, 51, 56, 63, 68, 72, 78, 49, 51, 70, 61, 62, 66, 51, 90, 53, 92, 66, 118, 50, 61, 94, 96, 58, 61, 65, 39, 46, 66, 66, 58, 57, 80, 73, 72, 64, 59, 84, 93, 48, 60, 79, 53, 86, 77, 62, 68, 57, 85, 70, 88, 53, 100, 60, 67, 61, 64, 63, 64, 49, 72, 65, 80, 59, 56, 48, 74, 98, 93, 73, 71, 52, 76, 56, 71, 60, 47, 65, 65, 61, 68, 72, 58, 57, 47, 83, 64, 68, 57, 88, 44, 82, 63, 74, 53, 92, 59, 70, 71, 54, 63, 45, 67, 86, 62, 80, 63, 68, 59, 67, 61, 71, 65, 54, 49, 60, 77, 48, 73, 59, 73, 73, 80, 52, 54, 52, 57, 55, 65, 89, 56, 71, 56, 50, 52, 73, 79, 66, 68, 53, 73, 58, 80, 66, 64, 64, 53, 74, 47, 53, 65, 52, 75, 46, 75, 72, 62, 51, 99, 78, 94, 98, 54, 58, 77, 52, 59, 67, 58, 59, 53, 65, 85, 61, 63, 63, 70, 102, 60, 69, 64, 56, 65, 60, 70, 51, 72, 54, 82, 65, 67, 64, 63, 69, 58, 67, 74, 55, 48, 71, 60, 65, 62, 97, 57, 35, 69, 72, 59, 63, 57, 75, 68, 65, 51, 79, 57, 63, 90, 63, 52, 57, 67, 72, 80, 75, 64, 54, 110, 57, 65, 69, 73, 74, 57, 76, 69, 74, 69, 78, 57, 70, 81, 70, 61, 72, 66, 68, 50, 93, 77, 64, 75, 71, 73, 73, 79, 111, 69, 63, 66, 54, 68, 61, 49, 54, 78, 89, 58, 85, 56, 67, 51, 103, 51, 52, 79, 50, 45, 61, 89, 56, 56, 68, 61, 71, 55, 67, 74, 85, 56, 70, 59, 71, 80, 61, 67, 60, 98, 65, 53, 68, 84, 70, 58, 73, 59, 43, 91, 54, 85, 56, 63, 45, 53, 66, 77, 67, 56, 51, 69, 56, 63, 67, 49, 60, 59, 59, 54, 60, 64, 49, 59, 77, 85, 80, 63, 57, 65, 52, 63, 66, 67, 59, 74, 72, 59, 51, 53, 68, 72, 56, 61, 74, 72, 72, 43, 99, 73, 54, 61, 78, 53, 60, 69, 50, 120, 54, 69, 64, 57, 70, 48, 109, 70, 59, 67, 50, 67, 68, 53, 61, 57, 58, 49, 60, 53, 68, 59, 88, 60, 79, 63, 127, 62, 54, 89, 73, 102, 41, 106, 70, 59, 50, 66, 61, 58, 71, 83, 60, 73, 57, 91, 58, 66, 67, 75, 84, 57, 104, 52, 69, 57, 52, 75, 62, 64, 53, 66, 77, 63, 53, 56, 31, 93, 66, 86, 46, 70, 63, 60, 58, 75, 60, 61, 79, 89, 57, 50, 69, 67, 67, 80, 50, 54, 56, 70, 63, 53, 79, 33, 99, 67, 63, 122, 44, 71, 59, 66, 51, 63, 63, 63, 75, 53, 75, 50, 70, 61, 76, 76, 61, 65, 62, 94, 63, 52, 66, 59, 71, 73, 77, 72, 73, 67, 73, 80, 43, 75, 60, 78, 61, 52, 68, 62, 63, 75, 77, 76, 79, 67, 58, 50, 82, 66, 76, 93, 54, 70, 50, 70, 75, 51, 70, 51, 47, 73, 83, 62, 56, 79, 63, 54, 86, 66, 60, 74, 77, 55, 39, 59, 81, 67, 77, 59, 64, 58, 53, 67, 60, 35, 80, 63, 70, 48, 92, 68, 64, 49, 56, 61, 70, 67, 81, 59, 90, 80, 56, 72, 39, 74, 52, 49, 57, 59, 79, 63, 60, 71, 73, 81, 69, 66, 58, 54, 116, 67, 49, 64, 87, 68, 70, 60, 86, 67, 68, 76, 67, 68, 74, 79, 58, 68, 65, 62, 62, 65, 45, 54, 50, 81, 60, 69, 53, 73, 63, 66, 50, 64, 53, 65, 66, 62, 47, 74, 71, 59, 62, 63, 58, 62, 71, 50, 68, 118, 54, 59, 72, 59, 62, 68, 71, 55, 83, 67, 60, 61, 57, 47, 64, 70, 53, 61, 75, 57, 57, 61, 67, 72, 63, 84, 68, 67, 87, 48, 50, 62, 63, 73, 77, 67, 61, 68, 62, 58, 82, 72, 57, 78, 47, 69, 62, 62, 69, 74, 71, 72, 85, 45, 55, 63, 50, 64, 90, 60, 63, 61, 52, 60, 68, 52, 60, 69, 61, 52, 49, 69, 100, 84, 67, 63, 62, 90, 82, 78, 55, 69, 90, 64, 55, 100, 42, 58, 65, 56, 67, 85, 67, 46, 58, 74, 75, 49, 78, 49, 52, 52, 77, 62, 53, 65, 45, 62, 69, 47, 60, 71, 58, 43, 68, 46, 56, 63, 57, 55, 63, 51, 56, 86, 87, 66, 61, 61, 95, 71, 58, 65, 56, 70, 66, 49, 85, 92, 59, 61, 64, 69, 58, 53, 53, 62, 102, 45, 59, 52, 66, 69, 67, 81, 56, 75, 54, 47, 73, 75, 62, 63, 71, 49, 93, 79, 52, 51, 74, 68, 64, 67, 50, 72, 66, 60, 64, 70, 64, 66, 72, 79, 64, 60, 90, 65, 75, 73, 83, 77, 66, 77, 77, 67, 66, 77, 65, 82, 48, 90, 47, 63, 58, 74, 63, 67, 85, 94, 63, 63, 61, 71, 71, 59, 58, 66, 65, 67, 68, 55, 70, 50, 94, 72, 72, 59, 83, 49, 52, 58, 66, 51, 44, 50, 64, 65, 64, 64, 75, 67, 65, 56, 59, 55, 68, 54, 80, 78, 57, 56, 96, 54, 63, 74, 63, 58, 71, 59, 71, 54, 55, 78, 59, 45, 65, 83, 69, 68, 36, 84, 72, 53, 52, 57, 73, 79, 59, 51, 36, 85, 61, 70, 47, 65, 72, 88, 47, 56, 62, 84, 61, 62, 67, 63, 68, 66, 62, 74, 66, 70, 49, 72, 65, 66, 75, 70, 65, 70, 91, 38, 61, 66, 45, 69, 56, 69, 40, 61, 91, 79, 83, 64, 54, 67, 77, 62, 57, 47, 58, 62, 114, 83, 60, 53, 65, 61, 70, 69, 100, 78, 59, 69, 47, 74, 60, 75, 48, 74, 65, 65, 79, 53, 60, 38, 71, 73, 55, 69, 62, 53, 101, 68, 47, 66, 61, 91, 59, 70, 66, 85, 53, 60, 57, 59, 69, 79, 74, 77, 56, 86, 83, 69, 52, 59, 59, 65, 57, 72, 66, 100, 61, 75, 79, 63, 49, 60, 63, 63, 60, 47, 35, 71, 64, 58, 69, 103, 76, 111, 64, 69, 82, 85, 60, 66, 56, 48, 68, 56, 72, 69, 68, 52, 56, 62, 60, 78, 91, 67, 48, 79, 69, 52, 64, 63, 60, 63, 48, 84, 68, 74, 69, 76, 57, 81, 57, 71, 81, 47, 50, 66, 64, 90, 62, 75, 77, 61, 81, 65, 67, 89, 68, 77, 54, 53, 71, 63, 68, 56, 73, 57, 69, 59, 65, 71, 71, 64, 56, 63, 65, 74, 66, 65, 77, 87, 67, 67, 69, 57, 77, 59, 82, 61, 98, 59, 63, 90, 54, 84, 66, 48, 56, 69, 60, 52, 59, 104, 96, 66, 85, 65, 64, 61, 55, 73, 68, 53, 89, 61, 94, 61, 58, 60, 47, 49, 85, 73, 63, 87, 71, 68, 73, 87, 56, 63, 49, 71, 59, 59, 71, 68, 63, 90, 79, 56, 58, 64, 59, 120, 60, 75, 110, 68, 78, 62, 58, 60, 62, 73, 66, 48, 67, 95, 57, 68, 72, 63, 67, 91, 63, 74, 53, 78, 64, 74, 57, 40, 70, 63, 93, 68, 63, 56, 68, 72, 61, 58, 57, 59, 67, 38, 60, 57, 64, 73, 95, 56, 88, 57, 48, 67, 75, 49, 66, 87, 56, 70, 76, 116, 60, 57, 53, 58, 58, 63, 92, 56, 81, 91, 72, 65, 60, 65, 63, 72, 116, 74, 78, 56, 41, 42, 53, 47, 71, 62, 62, 75, 65, 70, 66, 64, 104, 57, 50, 67, 80, 80, 128, 56, 53, 54, 54, 67, 55, 73, 62, 68, 50, 58, 56, 66, 81, 55, 55, 83, 66, 50, 65, 74, 52, 61, 65, 60, 54, 68, 100, 51, 46, 78, 106, 74, 66, 69, 59, 68, 82, 65, 45, 58, 50, 62, 56, 80, 45, 81, 59, 69, 102, 66, 72, 70, 62, 50, 69, 70, 47, 56, 60, 64, 60, 49, 57, 65, 57, 55, 62, 79, 65, 53, 62, 71, 48, 82, 76, 72, 54, 50, 57, 60, 53, 54, 56, 65, 68, 51, 68, 61, 75, 64, 61, 70, 61, 62, 81, 66, 61, 58, 80, 83, 64, 58, 71, 51, 54, 48, 55, 48, 48, 61, 67, 36, 56, 76, 55, 47, 58, 85, 84, 61, 68, 51, 66, 71, 60, 62, 64, 66, 63, 67, 54, 58, 39, 82, 67, 59, 52, 80, 61, 56, 63, 67, 62, 77, 74, 62, 69, 61, 48, 51, 71, 71, 64, 89, 70, 55, 53, 61, 61, 64, 75, 57, 72, 65, 75, 58, 84, 77, 42, 68, 50, 75, 53, 53, 56, 64, 92, 58, 49, 90, 55, 51, 58, 86, 68, 42, 80, 94, 72, 68, 58, 65, 47, 57, 54, 85, 85, 54, 70, 60, 72, 62, 71, 73, 44, 148, 83, 54, 61, 54, 77, 60, 88, 68, 58, 57, 53, 68, 49, 64, 92, 77, 62, 61, 67, 53, 53, 89, 54, 71, 56, 84, 54, 65, 55, 49, 69, 59, 66, 62, 59, 73, 59, 70, 76, 60, 68, 79, 63, 67, 61, 51, 54, 60, 83, 44, 58, 101, 63, 105, 75, 63, 63, 76, 70, 50, 92, 61, 63, 65, 93, 80, 54, 62, 55, 65, 74, 73, 65, 53, 86, 83, 63, 78, 69, 61, 59, 67, 67, 75, 56, 57, 54, 61, 77, 65, 57, 50, 68, 46, 53, 58, 65, 67, 83, 56, 69, 69, 57, 53, 86, 93, 65, 54, 60, 67, 67, 64, 72, 56, 63, 88, 53, 69, 64, 77, 85, 63, 61, 64, 110, 78, 66, 87, 82, 68, 63, 65, 56, 73, 66, 88, 65, 76, 60, 61, 68, 57, 53, 90, 65, 60, 59, 59, 52, 62, 57, 51, 65, 69, 49, 57, 82, 69, 59, 59, 85, 52, 72, 70, 82, 78, 69, 53, 62, 59, 64, 62, 89, 64, 63, 91, 47, 65, 54, 75, 77, 49, 55, 69, 66, 71, 79, 57, 65, 75, 73, 58, 56, 78, 53, 55, 57, 69, 42, 51, 60, 78, 70, 60, 60, 81, 69, 54, 65, 78, 68, 69, 75, 64, 54, 60, 57, 69, 58, 86, 96, 48, 102, 54, 54, 58, 75, 72, 54, 74, 59, 78, 55, 54, 62, 51, 51, 66, 61, 67, 57, 55, 87, 53, 89, 70, 89, 61, 73, 46, 52, 55, 56, 64, 66, 79, 67, 75, 70, 58, 66, 74, 54, 100, 66, 60, 121, 53, 57, 51, 67, 60, 75, 55, 48, 59, 60, 81, 73, 59, 51, 61, 68, 69, 50, 50, 54, 75, 69, 68, 64, 58, 80, 69, 68, 63, 61, 68, 88, 63, 69, 80, 67, 57, 65, 70, 56, 64, 67, 62, 71, 73, 60, 57, 55, 60, 87, 53, 61, 72, 56, 46, 74, 70, 87, 72, 69, 62, 78, 80, 61, 54, 76, 75, 57, 110, 55, 44, 72, 66, 60, 48, 59, 59, 64, 78, 74, 64, 72, 76, 57, 81, 68, 66, 56, 57, 64, 72, 56, 66, 70, 65, 67, 64, 65, 96, 55, 80, 100, 87, 62, 52, 62, 51, 72, 65, 71, 105, 62, 76, 54, 51, 62, 46, 63, 72, 48, 65, 75, 70, 66, 63, 76, 54, 55, 61, 70, 50, 25, 71, 70, 54, 56, 58, 87, 84, 58, 56, 60, 79, 80, 62, 72, 97, 43, 56, 46, 43, 62, 62, 133, 66, 64, 52, 68, 87, 50, 48, 66, 70, 78, 52, 70, 64, 128, 52, 59, 71, 75, 78, 57, 65, 76, 60, 57, 68, 50, 54, 50, 76, 66, 54, 65, 78, 61, 118, 80, 68, 74, 80, 56, 47, 74, 60, 58, 59, 57, 60, 54, 48, 87, 57, 55, 101, 85, 60, 66, 98, 62, 66, 60, 63, 67, 58, 57, 81, 66, 56, 52, 73, 57, 84, 69, 63, 64, 77, 60, 62, 65, 61, 51, 74, 89, 79, 59, 58, 63, 67, 82, 64, 88, 56, 72, 64, 63, 58, 60, 57, 82, 65, 75, 65, 55, 51, 58, 77, 80, 57, 66, 49, 63, 68, 59, 64, 47, 84, 74, 60, 41, 64, 60, 70, 49, 53, 58, 61, 68, 54, 57, 86, 65, 68, 71, 80, 73, 67, 55, 63, 54, 70, 60, 76, 43, 63, 63, 64, 60, 68, 57, 73, 74, 72, 59, 86, 73, 93, 66, 143, 60, 59, 56, 76, 79, 69, 75, 73, 121, 55, 61, 84, 54, 59, 63, 78, 77, 70, 93, 67, 59, 80, 62, 67, 62, 54, 66, 67, 52, 80, 71, 85, 70, 72, 57, 84, 58, 67, 87, 53, 52, 63, 58, 72, 66, 57, 47, 57, 67, 70, 55, 49, 74, 64, 55, 60, 64, 43, 78, 65, 59, 76, 41, 45, 51, 94, 55, 75, 66, 56, 44, 74, 52, 56, 49, 67, 67, 74, 71, 72, 75, 72, 57, 64, 92, 62, 63, 47, 111, 46, 73, 56, 59, 72, 59, 43, 56, 57, 47, 51, 57, 59, 57, 78, 64, 73, 58, 56, 40, 62, 89, 70, 59, 63, 63, 55, 40, 50, 54, 53, 66, 57, 55, 68, 45, 58, 62, 52, 50, 69, 83, 66, 79, 76, 42, 55, 69, 57, 55, 76, 50, 69, 60, 76, 83, 92, 71, 65, 65, 70, 71, 61, 67, 55, 80, 53, 59, 60, 59, 74, 85, 91, 42, 83, 58, 61, 75, 58, 48, 78, 53, 60, 73, 47, 83, 79, 71, 55, 70, 68, 73, 69, 56, 59, 94, 82, 56, 86, 62, 63, 59, 61, 68, 78, 54, 104, 55, 51, 43, 75, 76, 59, 64, 53, 52, 59, 55, 61, 56, 76, 58, 58, 55, 64, 54, 61, 80, 54, 65, 58, 54, 71, 70, 47, 65, 60, 67, 65, 61, 51, 86, 74, 49, 67, 72, 74, 45, 71, 59, 61, 61, 58, 62, 59, 73, 70, 85, 58, 124, 68, 46, 61, 45, 88, 57, 67, 59, 67, 62, 55, 66, 74, 66, 54, 64, 80, 82, 65, 46, 75, 105, 51, 72, 59, 71, 51, 68, 58, 63, 74, 61, 60, 46, 77, 42, 55, 90, 62, 102, 77, 59, 62, 65, 59, 80, 73, 76, 69, 54, 74, 90, 68, 73, 67, 63, 63, 72, 73, 70, 74, 52, 66, 50, 59, 68, 70, 67, 63, 70, 63, 77, 55, 57, 68, 78, 67, 69, 64, 59, 62, 57, 57, 55, 65, 72, 57, 44, 60, 52, 59, 67, 62, 63, 54, 47, 60, 51, 107, 63, 58, 64, 70, 88, 86, 86, 55, 70, 64, 75, 55, 79, 69, 49, 68, 54, 47, 52, 80, 52, 64, 97, 63, 76, 67, 100, 59, 63, 72, 61, 59, 63, 51, 78, 61, 73, 61, 71, 87, 49, 61, 67, 68, 65, 60, 59, 53, 65, 67, 76, 70, 103, 59, 63, 55, 54, 77, 75, 66, 56, 62, 53, 78, 73, 48, 46, 87, 70, 56, 60, 82, 59, 71, 62, 66, 66, 75, 88, 74, 49, 61, 59, 72, 43, 62, 51, 54, 61, 68, 75, 78, 64, 48, 67, 53, 81, 125, 52, 61, 62, 86, 54, 62, 66, 70, 73, 51, 50, 86, 61, 78, 73, 64, 75, 58, 61, 62, 67, 76, 81, 41, 60, 71, 64, 79, 61, 94, 43, 47, 62, 60, 60, 109, 50, 48, 85, 68, 76, 82, 67, 60, 66, 69, 67, 85, 87, 58, 75, 58, 89, 70, 55, 62, 75, 66, 62, 69, 59, 66, 74, 64, 91, 144, 57, 39, 62, 59, 82, 52, 63, 66, 56, 82, 88, 76, 50, 71, 65, 80, 72, 58, 57, 57, 68, 60, 42, 77, 55, 58, 61, 69, 67, 58, 73, 57, 81, 56, 71, 99, 59, 62, 57, 67, 83, 87, 61, 61, 85, 44, 58, 79, 82, 52, 64, 66, 42, 51, 65, 56, 51, 60, 96, 46, 59, 89, 70, 90, 72, 57, 42, 47, 89, 104, 57, 85, 67, 80, 68, 72, 74, 70, 74, 76, 65, 73, 47, 60, 88, 55, 45, 82, 64, 71, 62, 72, 79, 47, 82, 63, 61, 63, 69, 62, 64, 90, 60, 76, 52, 57, 82, 59, 50, 78, 70, 81, 71, 48, 69, 62, 41, 57, 66, 56, 55, 76, 66, 54, 60, 80, 61, 61, 70, 76, 71, 45, 42, 48, 55, 73, 63, 64, 64, 83, 62, 50, 65, 71, 86, 57, 59, 43, 67, 74, 55, 41, 63, 85, 69, 67, 80, 46, 69, 69, 69, 64, 43, 62, 57, 51, 74, 67, 54, 57, 62, 53, 50, 53, 49, 74, 68, 80, 53, 97, 51, 70, 62, 67, 60, 51, 57, 57, 62, 78, 55, 66, 81, 53, 51, 66, 51, 96, 62, 69, 121, 78, 76, 65, 64, 69, 80, 70, 58, 65, 54, 81, 86, 59, 55, 54, 89, 67, 42, 47, 62, 64, 63, 75, 80, 79, 55, 78, 48, 60, 71, 63, 82, 58, 58, 53, 58, 63, 67, 66, 71, 71, 62, 64, 61, 67, 65, 70, 63, 58, 93, 66, 70, 89, 57, 48, 56, 58, 85, 47, 66, 64, 76, 97, 74, 51, 65, 75, 49, 95, 57, 81, 38, 52, 63, 62, 68, 73, 57, 63, 61, 53, 56, 69, 65, 64, 67, 54, 68, 59, 66, 59, 83, 68, 90, 55, 64, 54, 73, 102, 70, 54, 116, 96, 77, 69, 41, 66, 46, 68, 65, 76, 53, 78, 71, 59, 63, 56, 58, 78, 78, 61, 69, 58, 74, 53, 82, 59, 99, 61, 105, 63, 57, 59, 57, 69, 59, 61, 62, 67, 56, 62, 47, 51, 78, 63, 64, 64, 74, 61, 57, 72, 50, 71, 132, 62, 81, 66, 70, 69, 64, 63, 60, 84, 64, 53, 56, 62, 119, 68, 68, 67, 64, 111, 52, 68, 71, 61, 60, 56, 50, 49, 81, 67, 78, 56, 39, 54, 59, 145, 64, 63, 97, 88, 58, 80, 71, 56, 68, 56, 57, 72, 57, 52, 97, 70, 74, 110, 70, 52, 55, 90, 63, 73, 60, 72, 43, 66, 63, 57, 57, 60, 75, 52, 49, 79, 69, 81, 66, 65, 89, 64, 94, 54, 79, 67, 86, 65, 60, 62, 75, 65, 84, 54, 87, 58, 61, 58, 65, 52, 53, 43, 61, 55, 98, 70, 64, 54, 66, 62, 78, 71, 77, 60, 62, 65, 67, 69, 65, 69, 58, 69, 55, 49, 48, 46, 79, 61, 58, 69, 52, 60, 62, 90, 69, 86, 63, 61, 66, 66, 69, 64, 61, 81, 66, 60, 67, 88, 73, 61, 66, 68, 58, 58, 65, 68, 61, 76, 68, 99, 52, 129, 66, 65, 63, 86, 70, 80, 62, 64, 106, 53, 56, 49, 62, 53, 83, 65, 70, 79, 92, 65, 55, 72, 71, 59, 61, 44, 50, 60, 60, 92, 63, 65, 79, 62, 69, 47, 54, 73, 70, 70, 59, 82, 55, 66, 51, 53, 51, 71, 91, 69, 73, 76, 52, 76, 46, 68, 78, 51, 83, 55, 68, 68, 46, 67, 60, 79, 61, 59, 57, 64, 70, 97, 62, 67, 56, 56, 63, 61, 57, 42, 52, 54, 43, 61, 102, 77, 73, 62, 130, 68, 102, 62, 75, 62, 72, 80, 68, 54, 58, 56, 70, 57, 67, 71, 57, 68, 67, 52, 81, 63, 75, 60, 65, 65, 58, 63, 57, 67, 63, 79, 73, 54, 54, 62, 60, 63, 63, 67, 81, 65, 56, 88, 56, 77, 66, 58, 65, 69, 58, 56, 63, 68, 88, 62, 68, 78, 78, 44, 71, 63, 65, 68, 63, 48, 71, 55, 65, 62, 75, 72, 84, 68, 54, 54, 83, 62, 49, 84, 66, 77, 81, 60, 53, 63, 90, 86, 78, 54, 69, 70, 47, 66, 61, 57, 110, 57, 74, 77, 71, 63, 59, 55, 68, 76, 63, 81, 58, 65, 72, 70, 63, 61, 75, 51, 56, 81, 77, 67, 43, 81, 74, 50, 75, 61, 49, 71, 68, 52, 81, 59, 91, 76, 55, 56, 58, 72, 73, 80, 65, 75, 82, 66, 65, 57, 44, 70, 42, 62, 47, 70, 49, 67, 54, 72, 72, 69, 83, 65, 95, 63, 71, 60, 46, 72, 79, 67, 60, 62, 57, 47, 65, 63, 65, 56, 56, 102, 84, 64, 54, 82, 85, 39, 76, 69, 71, 69, 61, 66, 63, 80, 50, 71, 58, 87, 64, 77, 46, 56, 81, 59, 70, 62, 49, 50, 52, 69, 61, 64, 66, 78, 81, 41, 72, 67, 61, 80, 56, 62, 63, 69, 52, 80, 72, 50, 68, 91, 46, 61, 50, 55, 68, 74, 53, 65, 52, 69, 68, 64, 73, 70, 58, 76, 55, 57, 63, 60, 64, 67, 78, 52, 55, 64, 60, 67, 73, 85, 77, 93, 81, 122, 76, 63, 73, 53, 86, 49, 77, 57, 81, 62, 84, 58, 50, 57, 59, 52, 59, 63, 51, 57, 92, 60, 68, 67, 80, 62, 49, 83, 68, 82, 76, 60, 58, 65, 83, 59, 46, 76, 65, 75, 57, 74, 53, 67, 65, 63, 56, 66, 60, 63, 106, 60, 87, 65, 66, 67, 72, 55, 76, 70, 76, 75, 64, 63, 61, 78, 77, 53, 69, 63, 68, 49, 70, 68, 61, 77, 95, 54, 55, 52, 65, 58, 50, 64, 105, 86, 62, 51, 55, 60, 80, 31, 60, 77, 69, 131, 57, 70, 62, 70, 64, 52, 68, 61, 66, 56, 59, 80, 59, 60, 89, 90, 50, 55, 60, 67, 67, 84, 52, 70, 71, 93, 62, 64, 74, 72, 62, 70, 64, 70, 55, 90, 68, 81, 68, 52, 65, 60, 75, 66, 57, 55, 60, 59, 82, 58, 97, 61, 67, 59, 60, 74, 58, 58, 53, 76, 62, 61, 66, 66, 82, 146, 53, 74, 75, 65, 60, 39, 57, 56, 63, 64, 64, 49, 72, 57, 49, 72, 61, 45, 59, 57, 69, 58, 48, 52, 56, 79, 73, 73, 79, 65, 69, 65, 62, 66, 56, 98, 53, 52, 64, 52, 46, 80, 66, 53, 90, 45, 74, 44, 60, 75, 70, 71, 63, 96, 84, 62, 49, 63, 61, 64, 61, 74, 71, 80, 69, 46, 57, 45, 92, 85, 45, 58, 76, 76, 75, 51, 49, 62, 56, 56, 71, 61, 47, 57, 57, 120, 55, 60, 65, 64, 54, 63, 78, 59, 54, 82, 70, 63, 54, 54, 63, 70, 55, 74, 65, 52, 94, 67, 61, 54, 79, 51, 67, 67, 44, 92, 49, 66, 60, 66, 80, 63, 75, 65, 70, 54, 62, 68, 59, 65, 71, 51, 136, 52, 69, 63, 45, 77, 74, 49, 88, 83, 67, 67, 58, 55, 70, 55, 73, 78, 48, 56, 83, 62, 83, 55, 84, 50, 88, 90, 75, 76, 69, 53, 63, 71, 63, 71, 66, 86, 69, 82, 56, 54, 80, 60, 74, 73, 79, 75, 80, 46, 69, 70, 53, 57, 57, 60, 77, 68, 47, 40, 78, 54, 54, 54, 58, 48, 41, 65, 82, 61, 60, 50, 65, 59, 128, 73, 81, 59, 58, 75, 69, 73, 62, 58, 87, 64, 59, 53, 148, 66, 55, 68, 57, 61, 58, 66, 77, 53, 73, 59, 85, 69, 55, 37, 66, 70, 63, 80, 49, 85, 67, 56, 51, 78, 56, 70, 79, 58, 121, 70, 73, 80, 58, 47, 67, 76, 84, 81, 70, 49, 56, 111, 68, 53, 68, 69, 81, 62, 66, 65, 75, 64, 66, 52, 78, 61, 47, 64, 66, 65, 68, 56, 67, 52, 81, 62, 33, 57, 56, 69, 42, 88, 53, 56, 96, 57, 63, 92, 52, 78, 66, 98, 102, 94, 61, 73, 54, 64, 78, 44, 70, 68, 66, 47, 61, 67, 62, 59, 66, 65, 51, 83, 57, 52, 63, 52, 44, 46, 78, 67, 80, 94, 66, 53, 72, 58, 64, 65, 39, 55, 58, 59, 46, 58, 61, 60, 57, 58, 57, 48, 54, 76, 60, 73, 55, 77, 68, 66, 71, 73, 86, 61, 64, 57, 49, 57, 91, 58, 57, 50, 69, 57, 66, 72, 64, 60, 55, 78, 46, 58, 65, 65, 64, 60, 73, 64, 52, 107, 61, 57, 77, 117, 55, 96, 54, 54, 65, 72, 51, 67, 54, 75, 89, 85, 60, 63, 94, 62, 49, 78, 46, 54, 89, 67, 60, 59, 64, 88, 61, 72, 59, 44, 59, 64, 49, 59, 60, 46, 59, 57, 78, 62, 100, 66, 67, 50, 65, 61, 64, 53, 89, 57, 49, 55, 60, 61, 80, 74, 79, 54, 57, 50, 78, 70, 47, 52, 61, 49, 85, 56, 60, 39, 51, 83, 54, 101, 60, 62, 67, 74, 58, 64, 53, 61, 100, 70, 73, 62, 62, 61, 65, 57, 66, 50, 71, 53, 72, 70, 98, 71, 63, 67, 65, 59, 56, 67, 64, 100, 48, 61, 60, 69, 94, 50, 50, 60, 76, 68, 62, 61, 74, 65, 76, 102, 72, 68, 59, 59, 69, 60, 74, 66, 55, 62, 47, 52, 74, 64, 57, 68, 78, 56, 80, 59, 58, 48, 69, 62, 67, 62, 60, 79, 55, 81, 60, 55, 71, 81, 77, 57, 42, 72, 88, 57, 50, 62, 53, 62, 109, 64, 35, 76, 74, 48, 73, 67, 51, 55, 84, 52, 62, 74, 123, 58, 71, 131, 81, 42, 55, 74, 64, 86, 49, 78, 72, 43, 77, 61, 61, 107, 50, 71, 69, 93, 140, 102, 53, 88, 81, 74, 53, 60, 58, 61, 51, 70, 67, 69, 112, 65, 63, 70, 69, 67, 51, 40, 60, 71, 83, 71, 94, 69, 62, 67, 65, 72, 88, 65, 71, 84, 61, 61, 62, 52, 59, 90, 46, 62, 70, 56, 73, 72, 64, 68, 58, 53, 57, 54, 75, 45, 68, 56, 79, 52, 65, 66, 52, 83, 74, 65, 62, 51, 58, 48, 63, 73, 52, 53, 51, 54, 53, 100, 37, 90, 66, 55, 53, 71, 55, 61, 63, 63, 82, 55, 47, 81, 94, 64, 71, 54, 53, 71, 51, 62, 97, 55, 47, 80, 83, 61, 87, 57, 76, 92, 50, 61, 65, 82, 71, 72, 64, 65, 57, 81, 71, 75, 61, 71, 78, 72, 59, 58, 60, 60, 72, 47, 84, 65, 62, 68, 90, 74, 60, 51, 83, 69, 55, 95, 87, 52, 71, 59, 57, 59, 81, 67, 81, 53, 51, 74, 52, 76, 64, 64, 56, 66, 82, 52, 88, 68, 68, 64, 73, 74, 86, 49, 72, 68, 83, 69, 61, 59, 54, 60, 59, 66, 72, 50, 37, 111, 94, 52, 61, 70, 52, 52, 94, 40, 64, 54, 88, 56, 90, 80, 50, 69, 108, 47, 65, 91, 63, 55, 91, 57, 65, 49, 92, 58, 69, 60, 66, 88, 59, 70, 51, 52, 61, 86, 54, 59, 50, 65, 71, 84, 49, 69, 63, 52, 58, 52, 72, 64, 69, 64, 53, 71, 75, 64, 95, 66, 63, 65, 72, 50, 52, 59, 60, 48, 48, 64, 63, 53, 56, 58, 48, 67, 55, 76, 61, 56, 60, 60, 45, 91, 83, 51, 59, 56, 65, 62, 49, 53, 57, 56, 55, 65, 47, 81, 55, 58, 85, 60, 80, 62, 64, 70, 71, 71, 63, 59, 49, 64, 69, 58, 71, 51, 59, 69, 58, 62, 70, 71, 63, 61, 59, 42, 56, 58, 50, 63, 148, 77, 73, 64, 50, 63, 58, 68, 56, 47, 87, 79, 72, 59, 65, 75, 52, 64, 70, 50, 67, 55, 54, 60, 50, 70, 62, 93, 65, 58, 52, 81, 50, 87, 48, 63, 70, 66, 61, 59, 54, 66, 63, 62, 49, 135, 77, 51, 53, 67, 79, 74, 68, 75, 68, 62, 58, 66, 62, 67, 111, 57, 57, 64, 67, 72, 105, 73, 75, 66, 58, 79, 67, 79, 71, 72, 49, 64, 59, 64, 76, 63, 82, 92, 87, 53, 65, 65, 55, 75, 66, 61, 64, 65, 62, 71, 52, 77, 70, 94, 36, 75, 67, 45, 69, 68, 57, 78, 91, 39, 61, 56, 55, 62, 59, 62, 69, 66, 55, 72, 62, 56, 76, 70, 84, 62, 70, 56, 69, 57, 64, 60, 61, 73, 59, 51, 54, 71, 46, 59, 62, 73, 65, 59, 92, 67, 46, 53, 64, 66, 70, 78, 47, 82, 54, 64, 59, 53, 55, 49, 43, 60, 53, 61, 75, 54, 59, 48, 61, 76, 48, 57, 79, 79, 62, 63, 79, 122, 46, 78, 53, 56, 64, 57, 61, 67, 93, 51, 69, 110, 76, 63, 62, 61, 76, 66, 58, 64, 69, 61, 67, 60, 60, 59, 64, 65, 64, 71, 67, 54, 82, 82, 51, 59, 71, 89, 57, 58, 65, 66, 69, 63, 71, 79, 60, 67, 101, 64, 53, 55, 54, 86, 72, 62, 67, 66, 62, 56, 76, 53, 72, 74, 53, 63, 73, 63, 61, 61, 68, 66, 57, 98, 48, 83, 57, 70, 75, 60, 62, 60, 53, 60, 58, 63, 70, 72, 75, 62, 67, 70, 58, 66, 69, 77, 60, 70, 54, 65, 58, 74, 65, 58, 50, 61, 151, 64, 55, 68, 82, 69, 59, 61, 74, 99, 64, 58, 85, 64, 78, 52, 66, 85, 43, 81, 82, 54, 71, 86, 69, 76, 60, 55, 132, 65, 85, 65, 68, 53, 55, 55, 74, 66, 38, 75, 80, 55, 61, 70, 52, 45, 70, 51, 54, 61, 79, 77, 54, 66, 59, 67, 52, 63, 56, 71, 72, 49, 60, 61, 66, 80, 69, 56, 102, 77, 56, 67, 59, 63, 67, 54, 42, 49, 119, 57, 66, 56, 67, 81, 72, 67, 45, 60, 72, 60, 79, 35, 62, 56, 65, 70, 73, 105, 45, 67, 52, 63, 56, 64, 79, 61, 47, 99, 59, 53, 52, 74, 66, 71, 71, 65, 84, 66, 69, 60, 76, 58, 60, 75, 80, 71, 68, 60, 62, 68, 73, 99, 42, 45, 68, 54, 66, 55, 85, 70, 61, 59, 50, 49, 66, 57, 73, 63, 61, 47, 78, 58, 71, 45, 69, 86, 72, 64, 66, 62, 45, 74, 68, 59, 84, 66, 80, 88, 39, 53, 55, 67, 82, 57, 68, 70, 58, 76, 62, 51, 93, 56, 87, 68, 67, 64, 50, 67, 73, 60, 63, 66, 66, 68, 82, 68, 95, 69, 56, 72, 48, 69, 60, 61, 56, 59, 63, 53, 52, 55, 51, 65, 53, 53, 81, 47, 62, 101, 63, 77, 74, 64, 56, 52, 69, 52, 55, 53, 65, 70, 79, 48, 64, 64, 76, 65, 78, 60, 53, 55, 70, 74, 65, 58, 62, 64, 66, 110, 43, 73, 80, 64, 57, 72, 64, 70, 63, 81, 68, 71, 69, 61, 58, 57, 67, 46, 53, 61, 81, 117, 86, 61, 73, 65, 74, 74, 55, 61, 58, 56, 52, 59, 41, 50, 58, 74, 73, 89, 80, 64, 52, 75, 58, 83, 58, 61, 80, 67, 57, 55, 64, 54, 58, 69, 65, 61, 69, 59, 73, 56, 66, 85, 55, 54, 73, 45, 59, 70, 64, 68, 74, 66, 54, 66, 70, 61, 70, 63, 49, 66, 77, 59, 62, 162, 59, 55, 63, 69, 39, 72, 65, 71, 68, 63, 60, 47, 51, 74, 57, 50, 64, 69, 66, 53, 65, 90, 61, 79, 95, 55, 64, 55, 76, 66, 69, 64, 66, 116, 55, 69, 77, 72, 60, 74, 46, 60, 58, 61, 85, 68, 60, 67, 46, 50, 49, 77, 50, 60, 64, 97, 62, 67, 66, 85, 65, 74, 63, 73, 61, 69, 56, 68, 70, 76, 62, 90, 50, 85, 62, 67, 69, 103, 64, 46, 69, 97, 44, 64, 47, 69, 54, 53, 64, 56, 50, 68, 51, 68, 70, 68, 69, 60, 74, 65, 47, 53, 56, 57, 93, 55, 70, 65, 57, 57, 68, 55, 61, 56, 58, 88, 76, 59, 47, 71, 40, 59, 66, 72, 51, 68, 69, 60, 55, 77, 67, 52, 53, 67, 49, 69, 59, 68, 75, 60, 63, 70, 66, 48, 50, 116, 69, 70, 56, 76, 61, 63, 54, 47, 69, 72, 82, 67, 63, 52, 60, 55, 66, 70, 83, 71, 59, 69, 28, 59, 52, 61, 60, 81, 55, 101, 76, 55, 56, 53, 78, 60, 65, 62, 55, 68, 53, 62, 57, 62, 89, 62, 62, 59, 63, 67, 61, 57, 60, 75, 72, 81, 62, 61, 36, 79, 52, 84, 54, 68, 58, 77, 47, 55, 77, 68, 56, 57, 68, 61, 48, 74, 83, 66, 47, 60, 71, 60, 63, 64, 58, 74, 54, 75, 64, 60, 67, 68, 69, 56, 52, 66, 66, 67, 115, 70, 51, 67, 66, 63, 77, 72, 75, 57, 82, 44, 57, 73, 54, 79, 56, 72, 74, 62, 62, 50, 65, 58, 63, 66, 61, 65, 66, 62, 43, 64, 151, 67, 57, 80, 59, 77, 76, 59, 74, 72, 63, 61, 80, 65, 57, 59, 60, 49, 94, 63, 64, 125, 68, 76, 57, 57, 86, 53, 71, 59, 58, 74, 66, 58, 72, 78, 66, 69, 54, 67, 54, 66, 71, 73, 71, 87, 75, 62, 71, 64, 64, 38, 64, 57, 71, 68, 62, 70, 71, 57, 57, 56, 59, 59, 58, 102, 65, 98, 73, 86, 75, 47, 67, 59, 54, 76, 50, 64, 47, 54, 55, 69, 65, 56, 60, 66, 66, 50, 88, 65, 73, 45, 65, 77, 58, 56, 70, 66, 58, 75, 53, 56, 72, 51, 79, 90, 68, 57, 78, 50, 56, 56, 76, 62, 78, 55, 67, 59, 97, 68, 68, 67, 72, 71, 80, 50, 75, 61, 63, 61, 70, 60, 80, 52, 68, 81, 87, 78, 61, 69, 78, 104, 67, 71, 56, 79, 81, 59, 72, 76, 56, 72, 70, 59, 58, 56, 52, 68, 53, 75, 78, 59, 63, 58, 65, 53, 76, 60, 64, 67, 59, 76, 66, 58, 69, 138, 69, 53, 40, 61, 72, 62, 73, 71, 54, 67, 66, 70, 65, 65, 79, 63, 72, 70, 68, 82, 42, 54, 58, 84, 57, 58, 77, 53, 55, 67, 83, 53, 71, 55, 67, 63, 56, 67, 74, 55, 61, 139, 54, 55, 59, 66, 62, 56, 63, 51, 69, 61, 84, 107, 53, 87, 69, 64, 68, 80, 81, 73, 56, 76, 60, 67, 58, 56, 63, 66, 59, 55, 57, 66, 179, 60, 41, 83, 57, 65, 100, 57, 57, 54, 62, 61, 55, 76, 74, 60, 63, 54, 61, 63, 64, 58, 64, 71, 69, 49, 99, 66, 66, 69, 69, 62, 72, 75, 58, 62, 67, 58, 89, 70, 78, 79, 73, 94, 67, 69, 58, 54, 49, 57, 95, 79, 58, 75, 71, 53, 68, 68, 86, 65, 39, 64, 60, 66, 52, 65, 68, 62, 75, 53, 82, 59, 64, 50, 60, 33, 56, 52, 52, 64, 59, 55, 48, 56, 55, 60, 80, 63, 86, 69, 60, 65, 63, 86, 66, 74, 62, 65, 58, 54, 63, 57, 58, 73, 66, 74, 61, 71, 43, 46, 46, 67, 69, 56, 86, 87, 42, 58, 73, 79, 90, 65, 55, 57, 56, 72, 66, 64, 61, 56, 60, 79, 57, 75, 58, 70, 70, 75, 49, 36, 51, 75, 62, 62, 109, 55, 72, 78, 63, 62, 75, 60, 60, 54, 55, 107, 64, 45, 65, 74, 57, 55, 71, 81, 87, 67, 64, 66, 113, 50, 70, 51, 60, 57, 68, 51, 76, 71, 57, 53, 89, 83, 63, 65, 71, 86, 76, 42, 65, 109, 54, 51, 77, 46, 68, 88, 65, 53, 74, 58, 42, 51, 63, 48, 67, 57, 55, 54, 30, 68, 51, 53, 47, 63, 83, 96, 53, 58, 58, 74, 65, 77, 60, 75, 118, 89, 58, 65, 77, 82, 68, 49, 44, 75, 68, 81, 52, 70, 66, 61, 63, 61, 116, 58, 42, 60, 58, 89, 69, 109, 93, 75, 57, 58, 67, 74, 56, 62, 87, 85, 52, 132, 66, 92, 55, 56, 55, 62, 56, 61, 70, 68, 60, 52, 76, 48, 48, 93, 66, 44, 59, 68, 50, 51, 97, 83, 79, 72, 58, 61, 54, 62, 61, 69, 128, 98, 64, 62, 55, 40, 85, 58, 91, 76, 56, 48, 76, 50, 64, 68, 52, 97, 69, 45, 53, 61, 55, 57, 76, 64, 57, 71, 61, 76, 52, 84, 50, 51, 74, 53, 68, 84, 63, 59, 52, 66, 75, 61, 71, 51, 61, 85, 64, 53, 69, 75, 113, 61, 43, 61, 54, 70, 66, 98, 72, 74, 56, 64, 91, 43, 122, 56, 71, 64, 68, 65, 50, 113, 51, 63, 60, 69, 28, 60, 48, 52, 66, 72, 65, 62, 53, 103, 105, 58, 56, 85, 70, 74, 61, 57, 60, 54, 70, 66, 58, 62, 63, 68, 64, 67, 62, 63, 46, 74, 65, 69, 92, 53, 44, 97, 71, 94, 64, 104, 60, 66, 86, 79, 53, 89, 45, 95, 59, 68, 61, 60, 66, 73, 45, 42, 54, 60, 68, 61, 92, 43, 68, 63, 66, 60, 69, 52, 81, 47, 64, 56, 66, 71, 67, 61, 55, 57, 106, 79, 64, 98, 56, 58, 54, 60, 57, 70, 81, 54, 45, 68, 52, 70, 65, 54, 55, 55, 49, 71, 63, 74, 79, 55, 60, 71, 42, 54, 84, 65, 76, 60, 64, 58, 59, 54, 70, 72, 46, 54, 85, 56, 62, 58, 61, 80, 58, 70, 79, 75, 90, 63, 46, 78, 83, 66, 62, 82, 68, 49, 61, 90, 54, 81, 56, 68, 74, 60, 88, 71, 63, 85, 63, 70, 84, 54, 49, 73, 60, 74, 57, 55, 53, 86, 59, 69, 70, 62, 97, 61, 62, 63, 67, 71, 70, 47, 65, 64, 75, 52, 51, 61, 83, 72, 63, 54, 54, 45, 56, 67, 57, 65, 65, 48, 78, 89, 67, 53, 62, 61, 55, 53, 56, 97, 57, 78, 67, 55, 53, 71, 54, 74, 56, 68, 102, 57, 58, 51, 75, 65, 83, 45, 66, 61, 64, 50, 53, 77, 83, 61, 89, 46, 81, 76, 64, 74, 67, 62, 53, 59, 85, 62, 48, 47, 61, 82, 67, 68, 60, 73, 56, 56, 62, 87, 51, 67, 61, 48, 70, 58, 52, 36, 47, 43, 63, 60, 56, 57, 46, 66, 43, 86, 92, 78, 71, 78, 89, 88, 67, 64, 49, 64, 60, 48, 63, 60, 53, 76, 82, 46, 47, 71, 42, 52, 59, 61, 67, 72, 53, 82, 60, 59, 71, 55, 79, 49, 69, 56, 100, 76, 51, 59, 69, 63, 64, 64, 58, 84, 63, 81, 65, 49, 90, 71, 73, 104, 54, 69, 72, 58, 79, 56, 64, 57, 76, 43, 49, 72, 77, 87, 59, 67, 61, 77, 62, 45, 58, 69, 38, 65, 43, 68, 58, 87, 43, 75, 54, 66, 75, 46, 52, 75, 102, 61, 73, 75, 76, 66, 92, 68, 55, 77, 79, 67, 71, 62, 66, 68, 68, 115, 70, 55, 61, 77, 54, 58, 67, 52, 69, 81, 79, 70, 53, 59, 77, 68, 88, 58, 56, 85, 98, 76, 59, 72, 49, 58, 57, 54, 63, 66, 62, 58, 50, 55, 66, 83, 67, 54, 89, 62, 63, 105, 46, 63, 32, 71, 89, 58, 60, 90, 70, 88, 91, 53, 51, 64, 65, 48, 75, 72, 54, 49, 76, 64, 86, 66, 63, 69, 69, 61, 72, 61, 66, 62, 68, 82, 71, 35, 95, 52, 53, 104, 71, 53, 55, 45, 45, 87, 66, 91, 72, 50, 51, 51, 60, 64, 64, 76, 67, 57, 58, 72, 66, 87, 69, 77, 59, 71, 82, 49, 87, 73, 60, 72, 86, 54, 67, 83, 69, 55, 40, 59, 75, 70, 76, 61, 77, 63, 57, 49, 69, 68, 65, 71, 64, 59, 65, 85, 52, 59, 79, 81, 67, 57, 67, 83, 61, 68, 71, 63, 113, 49, 86, 58, 60, 89, 178, 51, 39, 51, 83, 79, 57, 48, 61, 74, 49, 57, 46, 73, 37, 73, 47, 55, 47, 39, 74, 83, 64, 54, 78, 59, 67, 62, 52, 73, 63, 67, 76, 66, 99, 71, 62, 69, 75, 122, 45, 53, 58, 55, 65, 53, 47, 76, 108, 68, 56, 79, 54, 90, 129, 71, 56, 61, 63, 96, 62, 60, 64, 55, 61, 53, 65, 61, 50, 68, 80, 50, 75, 86, 70, 102, 50, 70, 58, 72, 82, 83, 61, 58, 48, 77, 58, 53, 59, 76, 62, 47, 63, 97, 62, 83, 59, 74, 77, 87, 67, 67, 61, 65, 84, 90, 63, 57, 69, 57, 71, 47, 61, 67, 53, 65, 84, 113, 64, 61, 51, 42, 68, 69, 68, 61, 46, 48, 49, 58, 95, 54, 119, 142, 88, 71, 76, 54, 72, 124, 86, 75, 55, 71, 61, 76, 57, 62, 66, 65, 75, 47, 46, 71, 62, 35, 92, 81, 102, 54, 108, 59, 67, 59, 81, 71, 56, 64, 59, 57, 73, 59, 66, 62, 49, 63, 57, 61, 52, 61, 58, 54, 70, 56, 67, 57, 75, 89, 60, 54, 59, 65, 37, 51, 71, 69, 78, 59, 94, 57, 73, 56, 84, 57, 108, 65, 75, 56, 66, 79, 58, 53, 68, 48, 71, 72, 98, 64, 64, 60, 69, 76, 66, 51, 64, 79, 72, 60, 87, 77, 51, 68, 62, 56, 61, 84, 59, 96, 52, 63, 72, 74, 69, 57, 52, 75, 74, 89, 54, 72, 57, 62, 65, 65, 69, 86, 46, 67, 63, 54, 62, 54, 69, 57, 52, 83, 52, 59, 59, 94, 58, 78, 61, 63, 69, 73, 87, 51, 92, 57, 80, 69, 89, 68, 60, 53, 80, 45, 56, 65, 51, 60, 68, 61, 53, 95, 54, 71, 63, 63, 73, 81, 60, 56, 65, 72, 150, 59, 59, 83, 67, 80, 70, 64, 64, 59, 59, 63, 57, 73, 44, 70, 73, 52, 61, 47, 66, 56, 71, 75, 54, 72, 79, 64, 63, 73, 67, 74, 73, 57, 59, 58, 62, 91, 69, 65, 66, 84, 67, 63, 73, 57, 87, 64, 66, 56, 95, 77, 58, 102, 55, 46, 73, 50, 123, 66, 59, 55, 63, 93, 67, 54, 72, 55, 52, 68, 52, 63, 66, 56, 51, 55, 77, 55, 55, 81, 51, 75, 54, 67, 60, 92, 66, 66, 62, 55, 53, 63, 63, 86, 68, 64, 49, 56, 71, 58, 61, 57, 51, 72, 62, 75, 63, 61, 49, 68, 63, 59, 75, 47, 60, 71, 66, 58, 54, 44, 63, 56, 50, 53, 86, 49, 61, 54, 70, 70, 51, 56, 53, 47, 89, 67, 64, 56, 60, 71, 54, 53, 56, 61, 59, 61, 80, 54, 64, 44, 76, 65, 46, 55, 74, 63, 82, 58, 56, 62, 81, 51, 61, 56, 67, 57, 78, 69, 94, 64, 72, 68, 79, 69, 52, 43, 75, 51, 67, 77, 56, 57, 63, 63, 56, 72, 60, 59, 67, 131, 69, 81, 118, 104, 62, 115, 85, 51, 64, 85, 64, 63, 80, 70, 98, 53, 68, 74, 67, 62, 59, 91, 69, 65, 70, 78, 51, 56, 88, 60, 58, 64, 41, 65, 62, 104, 55, 77, 64, 46, 91, 84, 79, 58, 139, 55, 61, 60, 70, 104, 81, 60, 95, 60, 72, 59, 57, 64, 66, 88, 56, 53, 67, 57, 121, 64, 66, 59, 69, 64, 64, 68, 61, 72, 84, 72, 51, 56, 60, 76, 60, 68, 57, 59, 68, 59, 63, 43, 61, 72, 51, 67, 66, 77, 56, 120, 73, 40, 42, 78, 55, 71, 58, 60, 53, 64, 49, 65, 73, 56, 56, 50, 67, 63, 76, 53, 65, 62, 70, 76, 66, 61, 53, 80, 77, 81, 69, 54, 58, 47, 71, 46, 55, 70, 68, 57, 58, 57, 55, 65, 92, 63, 66, 60, 64, 50, 71, 60, 70, 70, 69, 48, 62, 53, 66, 54, 76, 72, 70, 87, 97, 105, 65, 58, 58, 65, 53, 59, 61, 57, 77, 56, 65, 60, 64, 65, 55, 73, 56, 55, 54, 56, 85, 73, 69, 63, 75, 90, 69, 74, 49, 48, 50, 53, 73, 60, 91, 73, 55, 61, 57, 62, 74, 69, 76, 53, 81, 66, 56, 63, 92, 66, 48, 55, 58, 63, 76, 55, 53, 53, 70, 53, 58, 48, 82, 64, 67, 59, 64, 72, 70, 78, 57, 51, 57, 80, 52, 93, 47, 88, 64, 85, 83, 64, 65, 78, 61, 69, 62, 52, 58, 69, 73, 59, 60, 70, 72, 50, 82, 57, 56, 64, 63, 64, 69, 61, 63, 53, 85, 77, 50, 75, 74, 66, 56, 57, 79, 64, 69, 79, 59, 50, 91, 87, 56, 59, 61, 87, 57, 73, 67, 84, 69, 66, 68, 55, 47, 64, 63, 57, 63, 56, 69, 88, 60, 64, 80, 67, 56, 78, 132, 65, 51, 53, 78, 52, 66, 67, 58, 56, 90, 61, 64, 62, 51, 63, 54, 62, 70, 50, 94, 52, 71, 59, 45, 74, 56, 58, 74, 72, 92, 65, 70, 68, 60, 70, 59, 53, 58, 75, 55, 84, 59, 57, 62, 58, 57, 66, 39, 57, 74, 75, 72, 63, 69, 79, 69, 55, 88, 63, 114, 63, 66, 61, 71, 59, 66, 85, 62, 52, 58, 56, 52, 46, 58, 59, 64, 60, 60, 79, 66, 69, 62, 51, 43, 66, 53, 59, 67, 44, 62, 56, 67, 75, 66, 56, 79, 52, 75, 71, 56, 47, 80, 122, 65, 63, 71, 65, 81, 50, 70, 71, 70, 76, 105, 70, 62, 60, 54, 65, 72, 54, 60, 64, 59, 56, 73, 39, 66, 61, 59, 59, 80, 60, 71, 57, 57, 60, 69, 64, 68, 66, 57, 71, 62, 60, 73, 85, 54, 67, 101, 76, 60, 74, 54, 58, 55, 58, 71, 68, 48, 110, 67, 50, 56, 79, 65, 84, 52, 57, 62, 66, 66, 62, 60, 82, 59, 69, 66, 53, 59, 58, 60, 74, 82, 64, 59, 64, 60, 87, 49, 55, 54, 48, 81, 64, 53, 60, 63, 76, 50, 82, 51, 76, 70, 64, 57, 62, 74, 72, 71, 72, 108, 60, 78, 71, 69, 75, 78, 67, 54, 69, 67, 74, 65, 68, 60, 79, 60, 57, 68, 57, 55, 57, 76, 44, 59, 65, 72, 66, 48, 91, 66, 64, 60, 63, 89, 55, 153, 45, 57, 57, 58, 76, 86, 70, 89, 102, 60, 61, 72, 70, 57, 54, 62, 69, 50, 68, 66, 61, 58, 56, 60, 73, 63, 58, 58, 54, 91, 64, 64, 68, 67, 82, 56, 57, 61, 73, 67, 58, 40, 60, 61, 57, 56, 69, 86, 67, 60, 130, 52, 68, 49, 61, 58, 69, 55, 63, 64, 52, 92, 122, 66, 55, 75, 67, 81, 64, 55, 50, 122, 60, 45, 71, 51, 80, 57, 62, 47, 72, 62, 59, 57, 54, 85, 64, 69, 58, 62, 72, 70, 63, 70, 60, 52, 57, 48, 55, 91, 55, 52, 58, 69, 59, 57, 58, 67, 59, 113, 58, 59, 62, 58, 63, 62, 69, 61, 64, 57, 67, 56, 43, 83, 47, 59, 69, 81, 61, 73, 63, 48, 66, 69, 62, 62, 58, 72, 68, 65, 82, 78, 74, 48, 85, 51, 49, 75, 91, 59, 55, 57, 88, 69, 69, 44, 60, 71, 61, 73, 53, 66, 54, 65, 46, 54, 58, 123, 65, 55, 58, 68, 69, 77, 66, 47, 74, 63, 62, 69, 64, 93, 67, 54, 61, 58, 52, 62, 56, 73, 89, 37, 55, 63, 75, 47, 55, 69, 69, 49, 50, 60, 70, 57, 82, 62, 60, 46, 61, 81, 93, 46, 66, 69, 57, 61, 79, 47, 95, 46, 60, 52, 98, 65, 57, 76, 74, 83, 67, 77, 67, 55, 52, 52, 73, 65, 72, 68, 89, 60, 66, 48, 61, 57, 67, 65, 59, 81, 64, 60, 64, 66, 67, 69, 71, 52, 77, 60, 77, 87, 55, 84, 58, 58, 104, 81, 50, 55, 75, 67, 57, 64, 63, 49, 68, 47, 63, 68, 82, 88, 65, 72, 70, 63, 54, 66, 57, 66, 58, 53, 65, 62, 100, 70, 59, 51, 52, 66, 64, 63, 69, 56, 60, 83, 64, 58, 62, 86, 51, 56, 52, 60, 103, 87, 79, 128, 43, 65, 62, 61, 84, 56, 50, 86, 49, 111, 63, 64, 59, 75, 68, 51, 57, 126, 71, 58, 77, 57, 136, 56, 64, 58, 67, 77, 90, 57, 62, 57, 53, 64, 48, 56, 59, 77, 66, 77, 88, 61, 63, 60, 57, 59, 68, 69, 62, 59, 61, 66, 75, 71, 65, 77, 61, 61, 83, 56, 62, 77, 87, 44, 56, 72, 80, 53, 64, 71, 84, 58, 49, 67, 76, 63, 71, 59, 49, 53, 70, 55, 64, 103, 54, 62, 55, 74, 63, 58, 64, 35, 128, 55, 55, 52, 50, 62, 93, 55, 66, 57, 68, 55, 60, 82, 66, 63, 63, 84, 76, 52, 57, 79, 57, 55, 63, 52, 79, 72, 72, 55, 59, 64, 78, 67, 68, 83, 59, 59, 69, 52, 68, 66, 71, 61, 67, 61, 72, 51, 66, 59, 58, 76, 66, 75, 97, 67, 120, 67, 64, 49, 112, 76, 72, 66, 64, 73, 58, 76, 80, 55, 54, 64, 51, 65, 66, 70, 63, 76, 73, 64, 63, 52, 56, 50, 58, 65, 60, 70, 51, 69, 111, 60, 69, 77, 57, 70, 97, 58, 80, 61, 42, 92, 56, 68, 84, 59, 68, 59, 77, 95, 49, 75, 74, 57, 67, 62, 67, 53, 61, 69, 66, 69, 61, 56, 57, 61, 56, 110, 71, 73, 43, 47, 60, 55, 85, 63, 64, 74, 52, 70, 68, 60, 70, 71, 55, 66, 74, 55, 59, 59, 84, 58, 102, 69, 45, 52, 65, 58, 63, 57, 63, 58, 51, 57, 66, 85, 58, 52, 64, 63, 48, 55, 53, 69, 60, 67, 101, 79, 41, 64, 58, 53, 75, 77, 62, 72, 51, 56, 81, 75, 62, 70, 69, 74, 63, 60, 61, 82, 77, 60, 59, 67, 75, 58, 74, 59, 108, 52, 41, 52, 52, 52, 87, 55, 58, 48, 75, 122, 64, 57, 66, 69, 59, 64, 64, 54, 56, 98, 60, 59, 88, 70, 74, 50, 54, 60, 65, 62, 85, 60, 66, 65, 60, 70, 71, 62, 63, 59, 71, 59, 42, 54, 55, 60, 63, 51, 70, 83, 74, 51, 71, 68, 80, 57, 71, 70, 75, 61, 64, 70, 57, 68, 72, 67, 58, 59, 77, 70, 53, 49, 52, 76, 60, 67, 82, 53, 62, 82, 67, 83, 61, 55, 67, 63, 58, 92, 65, 73, 61, 77, 56, 62, 64, 52, 68, 57, 63, 58, 61, 103, 67, 60, 47, 57, 63, 52, 59, 74, 83, 63, 121, 50, 58, 59, 81, 62, 63, 69, 60, 59, 53, 45, 48, 71, 80, 53, 60, 65, 71, 94, 64, 57, 60, 60, 48, 81, 54, 59, 100, 61, 59, 72, 67, 65, 60, 89, 56, 50, 64, 65, 56, 57, 64, 88, 51, 74, 82, 78, 68, 54, 52, 72, 66, 48, 83, 65, 67, 57, 37, 66, 62, 67, 51, 57, 59, 60, 70, 72, 62, 48, 56, 69, 73, 58, 33, 65, 69, 68, 60, 70, 65, 67, 65, 71, 70, 54, 88, 78, 50, 67, 62, 68, 67, 67, 61, 49, 69, 70, 66, 76, 51, 56, 67, 67, 56, 69, 62, 78, 49, 73, 71, 66, 61, 56, 66, 69, 69, 67, 107, 50, 65, 53, 61, 62, 73, 59, 56, 61, 58, 64, 60, 74, 68, 70, 76, 83, 44, 57, 67, 78, 57, 71, 74, 75, 70, 55, 106, 92, 70, 67, 118, 68, 56, 62, 63, 103, 74, 65, 61, 81, 67, 60, 66, 47, 89, 71, 68, 61, 59, 62, 64, 82, 50, 57, 72, 71, 75, 63, 54, 51, 74, 59, 73, 79, 69, 53, 52, 88, 69, 57, 74, 60, 59, 68, 101, 61, 62, 55, 93, 52, 74, 55, 65, 46, 66, 69, 88, 75, 66, 67, 58, 53, 97, 86, 54, 52, 74, 70, 58, 75, 44, 63, 65, 50, 61, 73, 56, 57, 62, 58, 64, 46, 57, 55, 70, 65, 114, 65, 60, 80, 70, 67, 64, 57, 66, 68, 54, 63, 66, 73, 68, 57, 82, 56, 58, 43, 73, 61, 55, 143, 67, 100, 76, 61, 66, 80, 60, 73, 61, 56, 74, 68, 84, 55, 67, 91, 67, 72, 73, 51, 52, 76, 48, 76, 94, 90, 61, 54, 82, 85, 58, 87, 76, 59, 59, 68, 69, 63, 50, 54, 51, 55, 59, 81, 108, 81, 66, 57, 56, 68, 55, 62, 58, 57, 64, 64, 65, 75, 73, 105, 84, 75, 66, 63, 61, 59, 84, 68, 59, 60, 59, 68, 56, 67, 69, 61, 55, 73, 47, 49, 53, 55, 66, 77, 61, 60, 66, 61, 48, 75, 52, 72, 86, 61, 68, 53, 56, 74, 103, 60, 72, 64, 63, 65, 50, 60, 54, 77, 85, 47, 50, 68, 48, 63, 53, 65, 83, 72, 55, 125, 58, 101, 49, 106, 64, 74, 71, 66, 101, 58, 60, 68, 70, 43, 49, 53, 61, 55, 74, 69, 66, 63, 61, 66, 68, 126, 56, 68, 53, 73, 71, 73, 65, 65, 56, 68, 60, 69, 53, 68, 62, 64, 119, 62, 86, 50, 69, 60, 56, 68, 65, 73, 71, 101, 69, 46, 86, 39, 39, 81, 51, 58, 45, 58, 72, 81, 56, 61, 82, 69, 61, 56, 66, 58, 58, 76, 70, 64, 57, 70, 59, 40, 52, 92, 55, 53, 73, 57, 48, 71, 69, 51, 61, 55, 48, 77, 67, 58, 50, 134, 57, 49, 62, 73, 60, 67, 61, 27, 42, 62, 84, 68, 44, 59, 72, 59, 61, 70, 59, 72, 84, 65, 58, 79, 49, 70, 66, 58, 70, 79, 42, 44, 62, 86, 102, 56, 72, 57, 93, 67, 62, 67, 62, 56, 58, 70, 70, 120, 61, 66, 69, 70, 52, 71, 57, 65, 56, 95, 65, 42, 53, 61, 78, 74, 69, 62, 74, 83, 64, 72, 76, 71, 70, 70, 79, 57, 64, 77, 55, 57, 89, 63, 61, 67, 50, 48, 89, 57, 130, 63, 53, 64, 57, 63, 62, 63, 57, 74, 60, 60, 61, 70, 71, 59, 64, 52, 55, 75, 73, 58, 71, 78, 61, 62, 58, 60, 78, 65, 69, 70, 53, 74, 65, 65, 64, 55, 74, 63, 60, 99, 54, 53, 73, 113, 58, 38, 60, 67, 66, 75, 57, 113, 57, 70, 57, 60, 87, 69, 66, 87, 47, 66, 72, 56, 114, 60, 82, 65, 77, 73, 69, 49, 57, 76, 133, 62, 57, 50, 59, 55, 89, 56, 67, 65, 57, 69, 76, 59, 58, 56, 56, 54, 61, 69, 96, 47, 57, 82, 58, 82, 119, 59, 78, 55, 81, 94, 63, 51, 56, 52, 75, 55, 94, 51, 59, 67, 56, 79, 65, 66, 57, 49, 83, 71, 66, 67, 50, 42, 72, 49, 57, 55, 48, 98, 86, 67, 71, 55, 57, 58, 94, 38, 60, 59, 61, 59, 57, 66, 71, 48, 66, 47, 54, 65, 60, 58, 62, 83, 54, 75, 47, 60, 47, 57, 69, 52, 70, 76, 73, 85, 69, 56, 76, 122, 72, 58, 66, 56, 58, 51, 85, 52, 65, 73, 58, 45, 50, 57, 46, 55, 86, 60, 52, 63, 91, 55, 89, 60, 70, 73, 58, 69, 58, 57, 43, 53, 61, 108, 88, 62, 55, 47, 87, 68, 71, 73, 46, 64, 63, 60, 56, 55, 62, 49, 30, 55, 52, 52, 65, 75, 62, 66, 56, 68, 57, 64, 46, 71, 63, 70, 58, 69, 43, 61, 64, 60, 69, 59, 66, 64, 69, 97, 71, 65, 77, 75, 56, 64, 63, 73, 73, 80, 64, 65, 50, 68, 69, 65, 42, 67, 71, 63, 75, 82, 70, 71, 54, 53, 58, 62, 56, 55, 51, 55, 78, 51, 50, 74, 62, 54, 60, 50, 70, 68, 95, 59, 63, 94, 50, 60, 71, 75, 55, 46, 52, 68, 83, 68, 70, 60, 96, 45, 108, 80, 94, 86, 66, 63, 50, 67, 58, 65, 84, 59, 54, 69, 57, 53, 62, 89, 56, 85, 65, 80, 74, 60, 70, 67, 55, 73, 91, 50, 60, 59, 61, 45, 67, 62, 62, 58, 58, 75, 52, 59, 68, 58, 66, 62, 49, 78, 49, 55, 82, 61, 60, 72, 54, 71, 51, 60, 79, 66, 56, 56, 66, 56, 64, 61, 61, 81, 56, 55, 69, 54, 74, 60, 61, 59, 50, 62, 65, 51, 64, 70, 68, 88, 60, 82, 64, 59, 87, 82, 85, 84, 58, 55, 53, 99, 61, 54, 60, 109, 50, 56, 58, 59, 109, 51, 63, 54, 115, 55, 57, 78, 54, 58, 66, 66, 45, 59, 77, 59, 52, 64, 68, 54, 101, 66, 51, 56, 81, 68, 85, 65, 67, 70, 103, 81, 54, 49, 66, 50, 103, 59, 74, 67, 48, 67, 67, 91, 77, 52, 63, 65, 56, 54, 71, 78, 81, 78, 80, 70, 58, 68, 66, 66, 79, 68, 74, 73, 64, 65, 75, 57, 57, 51, 55, 54, 73, 55, 49, 61, 62, 59, 70, 61, 72, 116, 54, 57, 55, 108, 63, 66, 56, 75, 117, 68, 70, 51, 63, 64, 50, 60, 58, 54, 61, 61, 80, 74, 56, 106, 59, 50, 65, 70, 62, 99, 56, 50, 63, 83, 55, 60, 76, 76, 56, 50, 67, 52, 80, 87, 68, 97, 56, 57, 70, 63, 59, 61, 60, 94, 71, 60, 68, 68, 59, 48, 49, 66, 66, 48, 77, 59, 68, 76, 79, 61, 44, 52, 71, 61, 64, 53, 62, 88, 65, 64, 75, 78, 60, 71, 72, 60, 64, 62, 53, 68, 83, 47, 45, 57, 75, 64, 64, 47, 95, 59, 59, 77, 65, 100, 63, 59, 60, 66, 63, 86, 62, 70, 75, 56, 48, 81, 67, 73, 65, 54, 80, 57, 66, 62, 77, 59, 62, 59, 102, 66, 61, 87, 60, 57, 57, 59, 62, 54, 70, 44, 62, 79, 67, 76, 66, 86, 63, 66, 60, 51, 71, 87, 69, 72, 52, 77, 58, 58, 68, 52, 51, 50, 96, 59, 67, 72, 74, 59, 65, 58, 69, 78, 79, 91, 67, 82, 43, 74, 79, 65, 61, 58, 64, 48, 56, 59, 67, 58, 59, 85, 60, 60, 68, 82, 70, 48, 47, 72, 61, 68, 51, 58, 83, 64, 45, 68, 71, 53, 58, 61, 69, 75, 48, 49, 57, 113, 70, 41, 64, 64, 67, 80, 78, 72, 58, 51, 77, 85, 64, 63, 61, 62, 58, 53, 78, 60, 66, 80, 67, 69, 53, 81, 79, 50, 65, 58, 61, 58, 78, 69, 52, 69, 49, 56, 58, 76, 54, 88, 71, 56, 149, 57, 55, 56, 54, 60, 60, 65, 81, 72, 65, 63, 88, 70, 61, 96, 61, 64, 60, 57, 63, 40, 71, 90, 79, 56, 47, 64, 65, 63, 45, 65, 51, 90, 61, 84, 93, 50, 77, 81, 52, 63, 65, 53, 85, 56, 71, 61, 60, 62, 74, 69, 79, 69, 89, 64, 93, 78, 54, 64, 37, 72, 62, 71, 66, 49, 71, 63, 61, 82, 59, 58, 50, 90, 64, 72, 85, 101, 83, 54, 82, 64, 56, 83, 67, 63, 63, 40, 61, 71, 67, 52, 59, 80, 64, 71, 55, 56, 46, 64, 62, 80, 76, 58, 79, 69, 50, 70, 77, 49, 62, 62, 66, 63, 56, 114, 85, 68, 78, 58, 50, 50, 70, 53, 70, 111, 65, 51, 81, 73, 58, 51, 77, 56, 55, 60, 69, 56, 54, 73, 61, 57, 70, 71, 69, 78, 62, 59, 83, 60, 60, 66, 63, 75, 57, 54, 52, 74, 63, 65, 74, 64, 64, 60, 57, 51, 68, 55, 56, 72, 61, 55, 60, 75, 63, 52, 69, 68, 64, 81, 69, 69, 72, 50, 95, 54, 68, 67, 66, 49, 57, 74, 61, 63, 78, 76, 50, 56, 64, 70, 67, 57, 67, 98, 73, 58, 81, 55, 64, 65, 54, 67, 68, 57, 76, 53, 57, 66, 64, 67, 66, 57, 64, 66, 52, 51, 51, 71, 65, 74, 64, 49, 57, 79, 58, 51, 55, 62, 102, 77, 58, 61, 66, 60, 64, 77, 77, 57, 68, 59, 65, 66, 63, 94, 61, 66, 62, 57, 51, 61, 64, 55, 69, 84, 60, 86, 59, 72, 66, 70, 60, 57, 110, 72, 48, 78, 42, 52, 67, 55, 69, 62, 97, 67, 62, 81, 66, 59, 62, 61, 72, 80, 81, 77, 66, 61, 71, 60, 77, 54, 77, 67, 54, 60, 71, 80, 62, 57, 68, 61, 66, 63, 66, 76, 87, 70, 62, 102, 65, 49, 71, 64, 55, 57, 55, 49, 51, 57, 74, 61, 57, 76, 63, 86, 61, 82, 65, 82, 58, 65, 71, 134, 72, 62, 61, 101, 64, 77, 64, 65, 63, 84, 61, 67, 53, 108, 71, 52, 57, 63, 79, 90, 56, 61, 56, 65, 57, 61, 58, 59, 65, 68, 64, 63, 82, 87, 63, 74, 60, 51, 64, 64, 74, 77, 66, 68, 66, 66, 61, 66, 49, 59, 55, 75, 59, 83, 50, 59, 59, 78, 58, 51, 91, 55, 61, 53, 67, 125, 54, 72, 43, 49, 61, 64, 52, 73, 67, 94, 56, 58, 55, 62, 57, 47, 71, 52, 46, 72, 74, 61, 66, 63, 63, 75, 88, 66, 89, 69, 79, 57, 67, 60, 57, 61, 71, 54, 64, 73, 61, 57, 65, 46, 57, 64, 60, 61, 68, 107, 72, 69, 59, 73, 66, 61, 78, 57, 50, 64, 59, 70, 44, 74, 73, 120, 46, 57, 69, 75, 69, 70, 104, 66, 70, 63, 50, 60, 59, 74, 56, 78, 60, 49, 73, 72, 53, 64, 74, 65, 53, 60, 48, 64, 62, 80, 52, 71, 76, 61, 61, 49, 84, 64, 103, 71, 57, 74, 77, 61, 65, 62, 67, 57, 62, 79, 59, 56, 69, 59, 82, 91, 49, 71, 83, 73, 86, 75, 61, 87, 110, 64, 55, 62, 64, 71, 65, 71, 58, 53, 54, 55, 81, 66, 54, 67, 45, 67, 51, 79, 75, 59, 64, 47, 58, 63, 67, 70, 55, 61, 54, 74, 70, 75, 68, 88, 65, 66, 74, 58, 73, 72, 63, 63, 69, 67, 51, 62, 72, 52, 83, 53, 65, 62, 88, 56, 52, 64, 62, 74, 69, 50, 90, 47, 78, 66, 64, 78, 59, 55, 54, 74, 60, 70, 58, 74, 71, 69, 68, 69, 65, 63, 70, 64, 70, 103, 69, 65, 60, 69, 64, 59, 59, 63, 57, 55, 68, 60, 59, 70, 60, 67, 64, 97, 72, 65, 72, 83, 61, 60, 65, 59, 63, 71, 71, 78, 57, 48, 76, 71, 66, 74, 69, 84, 53, 77, 54, 70, 60, 58, 61, 61, 57, 68, 63, 72, 57, 52, 57, 59, 78, 107, 76, 75, 60, 84, 55, 59, 72, 57, 51, 58, 44, 49, 66, 42, 63, 70, 56, 46, 73, 54, 70, 63, 66, 62, 73, 124, 77, 63, 72, 51, 72, 78, 64, 83, 81, 86, 61, 57, 68, 62, 57, 48, 73, 74, 71, 72, 56, 78, 55, 62, 38, 61, 71, 93, 61, 67, 65, 69, 54, 51, 54, 59, 53, 49, 70, 64, 67, 63, 65, 74, 64, 63, 51, 58, 66, 58, 65, 59, 55, 80, 65, 63, 64, 131, 69, 59, 56, 57, 100, 59, 71, 62, 67, 86, 64, 81, 68, 57, 62, 66, 99, 53, 72, 60, 65, 58, 41, 49, 57, 51, 86, 66, 55, 51, 90, 70, 64, 63, 67, 66, 52, 78, 62, 69, 58, 54, 51, 75, 54, 56, 85, 85, 74, 52, 50, 54, 65, 57, 54, 82, 58, 95, 103, 60, 54, 68, 52, 62, 60, 62, 59, 65, 64, 77, 51, 59, 67, 59, 57, 93, 75, 52, 66, 61, 84, 61, 55, 52, 61, 49, 91, 62, 50, 61, 63, 54, 55, 62, 67, 61, 60, 54, 55, 83, 78, 81, 85, 75, 73, 65, 71, 84, 72, 59, 70, 68, 122, 71, 86, 67, 59, 55, 72, 55, 67, 51, 81, 52, 51, 83, 72, 73, 79, 62, 53, 70, 70, 95, 64, 68, 53, 57, 77, 76, 63, 67, 69, 71, 66, 57, 74, 64, 67, 73, 66, 65, 102, 56, 90, 70, 58, 62, 69, 68, 52, 53, 81, 61, 75, 67, 78, 90, 62, 65, 70, 56, 81, 59, 49, 93, 80, 89, 62, 56, 66, 63, 64, 66, 53, 69, 65, 68, 58, 57, 65, 52, 75, 66, 65, 59, 85, 53, 102, 63, 68, 50, 100, 83, 45, 54, 59, 65, 65, 72, 96, 63, 82, 68, 49, 54, 75, 65, 89, 76, 63, 66, 68, 58, 66, 69, 76, 73, 97, 54, 49, 71, 56, 66, 61, 67, 61, 60, 58, 62, 74, 57, 56, 62, 55, 64, 70, 57, 92, 66, 76, 78, 83, 67, 80, 81, 69, 58, 57, 71, 62, 46, 46, 85, 62, 64, 56, 53, 62, 61, 90, 59, 57, 71, 64, 64, 52, 59, 86, 50, 52, 58, 68, 54, 61, 59, 59, 61, 64, 60, 60, 59, 68, 79, 58, 88, 72, 110, 55, 93, 75, 78, 64, 63, 83, 57, 50, 61, 61, 72, 78, 63, 56, 63, 122, 73, 60, 67, 57, 64, 55, 65, 58, 62, 79, 62, 54, 70, 62, 59, 73, 88, 46, 63, 76, 41, 68, 55, 68, 56, 62, 75, 65, 56, 56, 60, 63, 101, 51, 58, 71, 67, 65, 66, 59, 67, 50, 50, 55, 60, 58, 77, 75, 68, 74, 53, 75, 72, 54, 66, 67, 79, 67, 57, 72, 83, 66, 49, 68, 60, 44, 63, 77, 44, 54, 70, 72, 62, 76, 60, 67, 68, 71, 60, 58, 62, 69, 68, 59, 71, 63, 59, 67, 57, 58, 65, 58, 59, 60, 52, 70, 58, 60, 67, 58, 58, 70, 72, 65, 71, 67, 60, 74, 68, 71, 59, 52, 61, 69, 81, 59, 57, 62, 58, 65, 63, 48, 63, 67, 50, 50, 82, 66, 100, 76, 63, 81, 74, 77, 62, 57, 68, 62, 59, 52, 67, 56, 75, 68, 55, 73, 55, 83, 71, 64, 67, 55, 59, 104, 61, 54, 68, 75, 55, 58, 52, 54, 59, 74, 67, 85, 61, 59, 48, 59, 63, 78, 70, 56, 70, 73, 61, 64, 86, 63, 61, 65, 64, 61, 54, 69, 71, 63, 59, 61, 60, 67, 63, 82, 82, 53, 56, 63, 112, 52, 52, 121, 70, 61, 59, 62, 62, 75, 70, 60, 74, 70, 112, 58, 65, 61, 58, 58, 69, 67, 55, 69, 58, 80, 59, 81, 57, 66, 62, 62, 65, 74, 59, 65, 73, 58, 57, 114, 68, 74, 62, 61, 68, 68, 84, 56, 60, 63, 58, 67, 65, 70, 86, 68, 73, 51, 58, 70, 120, 64, 61, 62, 75, 65, 65, 81, 68, 66, 67, 72, 61, 79, 72, 66, 58, 60, 57, 60, 66, 77, 72, 62, 66, 62, 69, 80, 63, 58, 65, 55, 50, 70, 63, 71, 69, 56, 65, 53, 71, 70, 50, 62, 61, 71, 70, 74, 76, 74, 59, 65, 65, 85, 73, 75, 67, 47, 70, 58, 61, 71, 63, 56, 62, 66, 69, 64, 59, 60, 54, 68, 69, 56, 60, 69, 63, 73, 62, 66, 76, 60, 60, 58, 84, 59, 116, 58, 53, 57, 63, 57, 54, 29, 79, 76, 50, 63, 68, 62, 70, 73, 65, 53, 79, 66, 58, 53, 89, 66, 61, 63, 56, 55, 74, 67, 71, 59, 60, 58, 81, 77, 78, 64, 66, 63, 76, 93, 54, 60, 51, 58, 70, 93, 65, 67, 64, 68, 83, 63, 66, 61, 65, 74, 58, 74, 73, 57, 66, 58, 61, 64, 106, 57, 62, 42, 103, 55, 63, 68, 74, 81, 51, 64, 65, 65, 70, 56, 64, 68, 59, 59, 65, 79, 49, 75, 52, 141, 63, 51, 63, 63, 68, 83, 59, 65, 58, 64, 59, 56, 63, 64, 62, 55, 75, 69, 70, 64, 60, 66, 54, 65, 64, 58, 57, 60, 77, 65, 51, 96, 73, 85, 64, 58, 61, 76, 52, 124, 77, 49, 72, 76, 69, 59, 56, 67, 64, 65, 66, 70, 67, 89, 81, 53, 47, 66, 53, 67, 68, 90, 92, 61, 46, 80, 83, 49, 56, 71, 59, 53, 66, 68, 61, 75, 61, 61, 90, 63, 90, 68, 60, 65, 66, 66, 58, 42, 63, 65, 81, 71, 66, 70, 62, 62, 49, 55, 52, 61, 58, 64, 69, 62, 58, 74, 71, 95, 81, 96, 70, 68, 68, 54, 64, 59, 87, 54, 70, 68, 73, 69, 64, 71, 67, 50, 88, 60, 72, 71, 69, 58, 64, 76, 60, 59, 63, 62, 77, 63, 65, 71, 62, 77, 58, 61, 70, 68, 63, 68, 73, 66, 63, 103, 54, 68, 67, 65, 69, 65, 71, 84, 75, 74, 70, 67, 71, 59, 70, 63, 86, 67, 77, 60, 66, 63, 66, 61, 53, 73, 69, 67, 73, 71, 50, 57, 83, 57, 65, 63, 59, 78, 81, 59, 54, 58, 55, 64, 76, 68, 65, 59, 59, 50, 75, 71, 73, 58, 73, 71, 60, 64, 68, 65, 64, 62, 57, 69, 93, 75, 63, 80, 60, 59, 66, 79, 71, 76, 63, 53, 80, 62, 61, 62, 65, 93, 70, 63, 71, 58, 63, 56, 55, 61, 73, 74, 63, 59, 82, 55, 80, 74, 63, 70, 72, 111, 57, 64, 69, 62, 63, 73, 43, 75, 73, 118, 89, 71, 61, 67, 76, 72, 89, 58, 56, 61, 84, 63, 61, 58, 84, 62, 56, 66, 73, 60, 48, 45, 62, 59, 58, 74, 75, 58, 65, 50, 57, 79, 70, 69, 70, 63, 73, 68, 64, 64, 83, 61, 56, 54, 59, 65, 64, 61, 74, 67, 84, 63, 53, 64, 59, 61, 57, 65, 78, 69, 64, 64, 61, 68, 94, 65, 72, 79, 98, 56, 53, 67, 77, 55, 59, 59, 62, 74, 61, 67, 58, 97, 77, 57, 53, 64, 66, 50, 62, 67, 56, 70, 59, 71, 70, 53, 110, 73, 83, 49, 66, 65, 54, 61, 66, 60, 65, 65, 56, 69, 81, 79, 67, 63, 69, 65, 63, 68, 72, 83, 94, 56, 52, 69, 44, 74, 66, 73, 60, 52, 64, 57, 58, 52, 63, 44, 58, 106, 55, 45, 81, 62, 56, 52, 71, 71, 70, 62, 47, 76, 69, 66, 75, 70, 62, 62, 77, 52, 69, 75, 91, 65, 64, 68, 62, 71, 73, 54, 70, 63, 59, 69, 77, 65, 63, 62, 53, 65, 81, 54, 67, 74, 78, 61, 60, 70, 62, 60, 61, 80, 73, 69, 63, 62, 108, 58, 52, 52, 66, 69, 58, 42, 82, 62, 53, 73, 55, 65, 60, 86, 62, 59, 69, 72, 66, 56, 60, 55, 52, 54, 63, 68, 69, 58, 69, 58, 57, 58, 68, 115, 50, 66, 123, 58, 78, 74, 60, 72, 42, 69, 52, 52, 53, 65, 86, 71, 57, 58, 81, 68, 65, 65, 67, 65, 73, 56, 71, 50, 69, 55, 57, 51, 57, 84, 68, 57, 66, 107, 69, 56, 66, 53, 61, 63, 79, 68, 70, 65, 51, 62, 61, 78, 58, 68, 65, 73, 68, 69, 60, 56, 63, 51, 61, 73, 72, 52, 51, 66, 46, 59, 71, 51, 61, 54, 61, 66, 79, 70, 61, 77, 65, 74, 55, 70, 55, 55, 60, 57, 57, 82, 48, 53, 59, 55, 63, 55, 73, 70, 56, 56, 65, 65, 58, 89, 61, 79, 66, 69, 55, 78, 54, 63, 63, 69, 84, 63, 70, 62, 55, 72, 56, 58, 64, 69, 69, 66, 69, 65, 60, 61, 59, 64, 61, 66, 67, 53, 65, 60, 69, 46, 57, 68, 86, 77, 58, 71, 65, 70, 80, 76, 61, 56, 55, 49, 55, 67, 62, 86, 61, 79, 48, 47, 49, 54, 78, 69, 81, 52, 58, 68, 111, 74, 88, 72, 62, 78, 47, 54, 76, 51, 62, 80, 70, 60, 99, 72, 52, 48, 70, 64, 75, 55, 56, 55, 80, 62, 86, 61, 48, 61, 81, 63, 64, 74, 45, 50, 63, 110, 51, 46, 67, 51, 62, 60, 64, 57, 88, 67, 88, 49, 17, 65, 45, 58, 77, 66, 70, 68, 62, 73, 46, 41, 101, 73, 64, 114, 46, 45, 67, 65, 78, 59, 50, 69, 59, 41, 53, 62, 83, 82, 52, 74, 84, 64, 71, 69, 72, 121, 83, 44, 48, 77, 92, 87, 60, 54, 77, 60, 65, 57, 129, 83, 61, 57, 74, 55, 57, 56, 81, 75, 110, 72, 46, 60, 47, 61, 67, 46, 56, 46, 84, 59, 81, 74, 92, 43, 83, 34, 56, 69, 51, 70, 83, 43, 54, 50, 72, 53, 63, 70, 67, 52, 71, 45, 59, 53, 55, 80, 59, 58, 63, 63, 61, 57, 76, 49, 72, 74, 65, 63, 57, 55, 57, 64, 64, 118, 97, 58, 63, 60, 52, 62, 94, 68, 43, 72, 51, 56, 75, 62, 57, 73, 45, 74, 80, 43, 58, 57, 84, 55, 76, 63, 52, 66, 84, 76, 56, 52, 59, 59, 68, 73, 48, 70, 50, 62, 81, 57, 63, 51, 65, 68, 65, 66, 67, 74, 59, 58, 138, 64, 41, 54, 66, 57, 77, 72, 103, 57, 78, 72, 81, 80, 56, 102, 77, 63, 53, 85, 57, 67, 79, 78, 68, 63, 44, 53, 61, 69, 91, 62, 74, 74, 53, 55, 48, 77, 39, 89, 56, 52, 75, 58, 64, 58, 72, 71, 132, 39, 54, 79, 55, 44, 84, 84, 71, 60, 64, 50, 80, 54, 60, 55, 68, 60, 55, 86, 97, 65, 107, 59, 69, 66, 78, 33, 69, 45, 55, 53, 52, 57, 65, 58, 52, 51, 78, 74, 96, 77, 57, 53, 56, 65, 91, 45, 41, 86, 62, 73, 54, 57, 62, 86, 70, 43, 54, 55, 115, 79, 72, 74, 68, 56, 89, 50, 49, 73, 77, 43, 45, 68, 61, 38, 61, 59, 63, 90, 78, 54, 71, 74, 61, 55, 74, 60, 77, 52, 36, 31, 62, 65, 51, 56, 58, 69, 85, 51, 59, 74, 57, 64, 91, 59, 81, 66, 51, 63, 58, 99, 84, 48, 79, 51, 66, 60, 101, 81, 32, 89, 75, 86, 88, 121, 62, 84, 69, 62, 59, 58, 67, 63, 50, 75, 88, 66, 70, 52, 92, 53, 64, 58, 83, 54, 110, 75, 59, 64, 55, 68, 66, 75, 53, 69, 58, 39, 69, 68, 64, 66, 45, 71, 96, 47, 50, 74, 49, 58, 56, 73, 69, 64, 67, 124, 64, 79, 66, 71, 41, 59, 60, 92, 64, 67, 100, 81, 65, 52, 41, 56, 72, 71, 52, 44, 61, 63, 64, 66, 54, 99, 65, 67, 74, 59, 51, 56, 63, 80, 45, 72, 60, 180, 71, 52, 62, 46, 59, 63, 72, 73, 68, 76, 65, 66, 69, 52, 62, 63, 72, 63, 69, 113, 53, 53, 54, 60, 73, 70, 69, 79, 59, 63, 58, 50, 48, 32, 65, 52, 59, 81, 72, 65, 59, 63, 84, 86, 75, 74, 91, 60, 68, 81, 68, 88, 47, 122, 84, 55, 33, 83, 120, 66, 57, 70, 50, 72, 57, 62, 58, 61, 74, 61, 60, 84, 60, 56, 65, 54, 82, 56, 67, 56, 50, 68, 79, 57, 70, 44, 69, 66, 82, 59, 54, 66, 76, 72, 81, 37, 70, 93, 64, 87, 46, 52, 53, 83, 63, 75, 55, 77, 54, 71, 68, 45, 73, 59, 64, 65, 65, 55, 50, 69, 57, 72, 43, 77, 72, 64, 74, 64, 36, 63, 68, 64, 71, 52, 53, 71, 74, 58, 95, 74, 77, 76, 75, 57, 62, 72, 47, 63, 65, 61, 60, 79, 43, 46, 62, 69, 65, 78, 67, 51, 51, 62, 73, 87, 59, 64, 58, 53, 51, 70, 95, 59, 62, 66, 40, 88, 54, 56, 99, 66, 56, 70, 50, 55, 58, 70, 60, 68, 75, 72, 89, 56, 57, 47, 55, 33, 78, 54, 59, 64, 60, 75, 78, 60, 86, 61, 67, 85, 86, 69, 48, 76, 99, 81, 51, 71, 88, 85, 94, 68, 66, 66, 52, 56, 85, 47, 64, 58, 72, 71, 74, 70, 60, 69, 47, 81, 72, 70, 76, 58, 60, 81, 63, 36, 80, 91, 92, 49, 55, 54, 68, 66, 62, 77, 60, 52, 69, 80, 56, 60, 58, 50, 52, 48, 64, 37, 67, 71, 89, 54, 47, 62, 42, 70, 74, 51, 85, 126, 55, 70, 54, 91, 49, 71, 61, 64, 60, 64, 58, 97, 78, 54, 64, 53, 60, 52, 86, 50, 59, 73, 68, 87, 70, 55, 93, 79, 87, 49, 50, 37, 51, 78, 62, 67, 63, 74, 67, 66, 74, 66, 66, 60, 77, 58, 62, 76, 72, 77, 60, 50, 55, 69, 58, 58, 64, 62, 71, 67, 72, 93, 64, 55, 60, 85, 56, 99, 83, 58, 70, 63, 50, 67, 54, 69, 47, 64, 59, 64, 54, 69, 79, 58, 51, 70, 57, 48, 79, 71, 73, 58, 57, 65, 81, 90, 82, 71, 72, 56, 53, 46, 79, 54, 73, 64, 74, 77, 95, 56, 70, 72, 75, 61, 60, 78, 87, 62, 60, 60, 53, 51, 59, 78, 56, 84, 74, 56, 97, 50, 59, 48, 63, 95, 61, 66, 51, 62, 52, 43, 74, 82, 85, 53, 58, 87, 80, 80, 79, 60, 58, 58, 74, 67, 72, 50, 79, 45, 53, 75, 42, 58, 50, 56, 67, 77, 93, 92, 68, 67, 48, 63, 58, 64, 58, 51, 58, 82, 66, 63, 61, 61, 71, 50, 90, 66, 60, 95, 67, 56, 69, 55, 73, 96, 65, 41, 80, 71, 59, 74, 62, 100, 76, 61, 68, 67, 58, 59, 55, 75, 89, 105, 75, 81, 88, 64, 72, 97, 80, 87, 64, 73, 52, 36, 57, 55, 69, 61, 65, 51, 49, 63, 70, 64, 84, 47, 57, 65, 70, 69, 69, 87, 53, 62, 49, 64, 76, 91, 64, 68, 63, 59, 44, 90, 58, 53, 69, 65, 95, 63, 65, 61, 95, 72, 57, 58, 86, 57, 50, 84, 78, 72, 68, 59, 36, 54, 58, 81, 64, 52, 83, 55, 77, 61, 103, 63, 92, 59, 57, 66, 66, 68, 70, 71, 95, 51, 78, 79, 76, 61, 70, 44, 50, 57, 57, 44, 72, 65, 65, 80, 82, 41, 76, 76, 67, 64, 75, 74, 65, 85, 48, 63, 58, 79, 35, 64, 56, 69, 59, 84, 60, 44, 53, 69, 70, 87, 69, 65, 50, 52, 72, 82, 55, 62, 52, 61, 72, 75, 61, 53, 63, 52, 66, 45, 40, 54, 67, 66, 62, 56, 71, 55, 63, 51, 59, 61, 75, 72, 75, 96, 65, 50, 63, 73, 55, 57, 62, 53, 68, 47, 68, 84, 56, 64, 75, 36, 61, 110, 62, 121, 71, 71, 66, 65, 64, 66, 63, 65, 67, 64, 85, 76, 56, 60, 61, 70, 53, 62, 73, 75, 52, 80, 51, 63, 61, 69, 62, 61, 60, 50, 62, 59, 69, 97, 80, 70, 61, 50, 51, 46, 83, 78, 57, 71, 59, 50, 68, 46, 79, 69, 64, 70, 76, 69, 88, 61, 73, 43, 49, 70, 72, 57, 61, 72, 116, 77, 59, 80, 66, 64, 49, 69, 59, 61, 53, 54, 57, 72, 45, 80, 73, 68, 65, 78, 47, 74, 70, 46, 60, 56, 71, 66, 62, 73, 67, 47, 61, 61, 65, 76, 53, 62, 51, 62, 73, 64, 60, 95, 57, 62, 111, 95, 51, 80, 43, 75, 69, 67, 55, 85, 74, 70, 80, 96, 73, 56, 80, 62, 55, 77, 57, 50, 67, 65, 49, 60, 60, 68, 110, 50, 70, 62, 86, 58, 69, 54, 57, 81, 93, 76, 99, 55, 84, 71, 62, 74, 81, 69, 76, 61, 78, 70, 52, 85, 91, 60, 65, 51, 61, 71, 85, 76, 84, 54, 62, 60, 71, 64, 56, 91, 67, 76, 67, 60, 65, 57, 59, 64, 57, 77, 65, 84, 89, 83, 73, 103, 70, 57, 80, 60, 61, 66, 60, 68, 55, 114, 49, 44, 75, 42, 72, 71, 101, 50, 74, 70, 43, 87, 73, 76, 68, 63, 53, 45, 60, 55, 75, 75, 66, 51, 88, 62, 46, 46, 65, 63, 63, 78, 48, 75, 59, 58, 45, 55, 75, 76, 69, 67, 52, 56, 56, 65, 69, 75, 66, 82, 73, 58, 68, 51, 51, 67, 58, 71, 54, 88, 83, 62, 63, 57, 48, 71, 64, 94, 70, 64, 83, 91, 43, 66, 69, 55, 67, 114, 71, 77, 89, 70, 72, 68, 62, 56, 62, 52, 55, 76, 69, 80, 68, 77, 81, 48, 58, 71, 51, 58, 54, 66, 57, 61, 64, 62, 52, 54, 74, 63, 51, 60, 68, 56, 91, 62, 58, 61, 79, 77, 74, 65, 52, 64, 54, 71, 62, 59, 58, 69, 48, 53, 77, 46, 61, 77, 56, 57, 87, 56, 87, 73, 53, 58, 56, 54, 78, 51, 78, 74, 60, 61, 78, 90, 69, 71, 79, 50, 57, 86, 64, 69, 41, 61, 52, 85, 71, 56, 73, 107, 71, 54, 75, 67, 75, 62, 81, 90, 84, 63, 80, 52, 52, 71, 80, 52, 73, 104, 63, 65, 70, 59, 76, 51, 72, 48, 67, 81, 60, 58, 69, 59, 68, 62, 76, 62, 53, 64, 59, 57, 72, 55, 62, 64, 77, 51, 67, 77, 51, 61, 75, 60, 66, 59, 47, 74, 76, 60, 71, 47, 54, 66, 100, 47, 56, 58, 68, 56, 56, 53, 57, 77, 75, 70, 59, 53, 71, 46, 75, 75, 50, 58, 86, 65, 73, 64, 69, 77, 56, 64, 60, 70, 52, 58, 45, 50, 61, 45, 72, 62, 65, 70, 65, 95, 81, 70, 78, 62, 40, 55, 62, 52, 69, 72, 44, 111, 70, 59, 58, 83, 77, 42, 78, 88, 65, 54, 66, 52, 65, 46, 122, 78, 44, 69, 71, 59, 66, 62, 67, 66, 50, 42, 74, 105, 68, 77, 68, 52, 58, 79, 54, 64, 51, 64, 59, 71, 74, 67, 69, 57, 54, 110, 48, 62, 69, 104, 136, 83, 56, 67, 67, 51, 60, 55, 86, 47, 64, 62, 69, 45, 48, 70, 78, 58, 56, 54, 85, 69, 66, 66, 57, 65, 54, 52, 66, 56, 33, 56, 38, 51, 88, 69, 50, 64, 79, 86, 54, 61, 80, 69, 76, 84, 65, 73, 88, 68, 93, 96, 53, 46, 74, 71, 78, 54, 74, 63, 58, 67, 68, 58, 114, 62, 65, 74, 60, 52, 54, 105, 65, 77, 85, 39, 80, 56, 63, 58, 84, 69, 70, 59, 60, 67, 51, 89, 45, 49, 58, 51, 31, 42, 53, 95, 70, 71, 65, 64, 65, 66, 61, 52, 67, 65, 64, 52, 58, 56, 59, 64, 53, 73, 66, 93, 65, 58, 55, 53, 41, 69, 58, 72, 65, 70, 78, 66, 61, 67, 53, 84, 80, 85, 55, 64, 71, 51, 56, 59, 60, 73, 57, 71, 58, 68, 79, 70, 85, 60, 64, 53, 102, 96, 76, 57, 78, 79, 48, 66, 62, 89, 56, 81, 50, 66, 59, 63, 57, 51, 70, 59, 57, 58, 63, 50, 55, 65, 63, 64, 88, 55, 76, 60, 75, 55, 63, 78, 74, 57, 87, 61, 78, 55, 55, 73, 68, 69, 72, 53, 46, 65, 73, 63, 84, 60, 56, 61, 50, 75, 87, 58, 84, 54, 53, 61, 50, 68, 81, 65, 80, 67, 65, 62, 72, 104, 62, 56, 54, 62, 62, 49, 110, 69, 38, 74, 109, 79, 61, 76, 55, 71, 89, 45, 64, 69, 93, 57, 58, 65, 67, 64, 58, 69, 85, 68, 76, 63, 52, 52, 61, 52, 52, 65, 54, 59, 46, 65, 59, 100, 97, 64, 53, 63, 63, 74, 67, 78, 65, 50, 70, 66, 41, 71, 69, 119, 48, 76, 69, 76, 67, 49, 66, 101, 45, 88, 64, 45, 61, 56, 59, 40, 100, 72, 51, 48, 42, 71, 62, 58, 60, 67, 54, 72, 66, 74, 86, 67, 57, 47, 75, 76, 60, 68, 70, 58, 67, 63, 69, 66, 53, 71, 76, 94, 65, 49, 66, 67, 60, 89, 56, 69, 57, 58, 62, 88, 62, 64, 47, 61, 105, 40, 74, 71, 61, 65, 70, 64, 143, 56, 63, 86, 56, 64, 64, 67, 51, 74, 58, 97, 60, 60, 59, 63, 76, 74, 71, 60, 64, 68, 63, 58, 78, 64, 89, 62, 76, 55, 63, 52, 58, 70, 50, 66, 76, 68, 57, 62, 74, 54, 62, 68, 58, 64, 67, 68, 83, 53, 100, 84, 53, 84, 82, 68, 54, 61, 66, 50, 57, 77, 68, 42, 62, 62, 47, 85, 47, 69, 48, 59, 50, 79, 40, 90, 55, 78, 55, 91, 90, 52, 74, 54, 64, 76, 61, 86, 64, 78, 82, 79, 84, 65, 76, 68, 56, 72, 42, 70, 67, 46, 62, 73, 70, 86, 67, 69, 75, 55, 53, 91, 57, 79, 67, 66, 59, 69, 66, 71, 58, 61, 114, 141, 58, 64, 67, 54, 74, 74, 72, 72, 67, 56, 52, 55, 67, 48, 52, 60, 58, 55, 62, 86, 75, 67, 69, 70, 63, 52, 60, 69, 57, 62, 58, 58, 59, 47, 65, 59, 46, 111, 62, 50, 59, 58, 78, 56, 63, 54, 61, 62, 68, 67, 61, 89, 70, 84, 55, 50, 77, 64, 47, 53, 80, 54, 56, 66, 81, 97, 70, 97, 70, 64, 53, 68, 59, 56, 52, 56, 68, 76, 70, 76, 59, 53, 77, 65, 47, 86, 55, 65, 62, 71, 60, 87, 59, 61, 85, 71, 67, 55, 76, 59, 78, 67, 63, 66, 73, 82, 36, 68, 55, 62, 68, 67, 59, 82, 52, 53, 74, 64, 65, 52, 56, 72, 52, 54, 77, 60, 75, 71, 64, 70, 59, 54, 81, 62, 79, 62, 72, 68, 56, 64, 69, 90, 112, 55, 79, 50, 54, 57, 58, 63, 61, 79, 78, 76, 74, 71, 74, 53, 41, 57, 74, 49, 40, 71, 98, 60, 63, 64, 88, 60, 65, 64, 76, 60, 50, 53, 60, 56, 74, 70, 64, 67, 67, 79, 51, 58, 59, 52, 65, 67, 105, 73, 75, 89, 64, 60, 62, 70, 45, 71, 66, 68, 65, 74, 79, 63, 57, 56, 76, 70, 48, 56, 64, 51, 72, 54, 72, 75, 87, 54, 46, 89, 70, 51, 55, 75, 63, 70, 49, 69, 76, 60, 68, 100, 64, 66, 67, 58, 72, 73, 50, 75, 48, 73, 58, 62, 86, 56, 48, 55, 68, 68, 62, 88, 64, 63, 55, 75, 50, 69, 68, 55, 66, 64, 59, 65, 58, 76, 76, 75, 76, 66, 62, 62, 51, 78, 53, 60, 77, 60, 57, 67, 69, 52, 70, 65, 55, 52, 66, 41, 54, 61, 50, 72, 64, 75, 77, 70, 50, 78, 56, 83, 50, 78, 59, 76, 56, 50, 39, 78, 65, 78, 60, 60, 61, 75, 60, 63, 62, 69, 32, 36, 58, 63, 61, 70, 70, 68, 57, 73, 50, 48, 77, 73, 58, 56, 46, 61, 67, 46, 100, 75, 55, 63, 63, 73, 72, 54, 56, 78, 84, 63, 61, 72, 58, 102, 57, 82, 71, 65, 80, 66, 47, 51, 46, 67, 44, 74, 68, 73, 68, 67, 62, 52, 93, 113, 52, 69, 56, 62, 66, 57, 63, 77, 58, 59, 69, 64, 50, 51, 69, 52, 75, 71, 60, 63, 69, 76, 59, 62, 69, 61, 71, 101, 59, 62, 62, 68, 50, 65, 90, 67, 42, 55, 70, 68, 64, 55, 55, 60, 110, 79, 55, 56, 61, 81, 71, 68, 59, 69, 78, 60, 65, 70, 61, 73, 49, 79, 94, 60, 52, 39, 92, 51, 56, 65, 70, 62, 56, 93, 54, 67, 102, 80, 67, 81, 57, 74, 83, 57, 66, 62, 72, 72, 56, 66, 68, 70, 56, 53, 72, 60, 65, 57, 62, 59, 99, 71, 77, 67, 67, 66, 69, 51, 95, 61, 63, 62, 67, 69, 57, 111, 60, 68, 71, 77, 63, 61, 75, 64, 54, 68, 61, 65, 66, 80, 60, 63, 59, 75, 59, 65, 70, 60, 71, 40, 57, 48, 59, 91, 58, 51, 59, 59, 64, 105, 71, 58, 70, 80, 67, 89, 58, 56, 56, 63, 68, 60, 71, 78, 67, 72, 81, 55, 73, 53, 77, 66, 90, 66, 75, 60, 59, 50, 76, 63, 65, 71, 74, 61, 67, 59, 67, 68, 65, 46, 68, 66, 81, 52, 52, 64, 76, 71, 87, 71, 44, 56, 53, 56, 63, 86, 62, 78, 60, 67, 61, 68, 59, 72, 56, 87, 61, 57, 66, 72, 77, 66, 60, 64, 73, 73, 110, 55, 61, 73, 60, 53, 118, 52, 79, 70, 48, 64, 77, 53, 59, 67, 66, 70, 61, 53, 70, 66, 64, 82, 39, 80, 57, 73, 55, 64, 69, 56, 58, 82, 67, 86, 63, 65, 71, 64, 64, 53, 72, 90, 80, 56, 53, 102, 64, 47, 54, 67, 80, 61, 67, 65, 51, 49, 76, 53, 62, 53, 65, 70, 71, 81, 59, 70, 47, 77, 72, 48, 59, 45, 67, 52, 97, 68, 64, 57, 66, 56, 59, 62, 50, 56, 63, 60, 71, 80, 64, 61, 77, 69, 42, 43, 55, 104, 67, 87, 107, 54, 75, 61, 70, 72, 64, 62, 57, 65, 76, 52, 66, 70, 57, 55, 62, 58, 68, 58, 65, 58, 66, 71, 69, 53, 77, 83, 54, 53, 84, 78, 55, 70, 56, 67, 123, 59, 62, 91, 56, 68, 59, 64, 68, 54, 72, 44, 60, 66, 74, 63, 76, 49, 76, 64, 63, 83, 70, 61, 70, 75, 93, 58, 64, 109, 78, 68, 62, 92, 63, 65, 80, 60, 49, 47, 43, 70, 75, 90, 52, 80, 57, 64, 66, 89, 92, 45, 53, 62, 62, 52, 55, 65, 70, 55, 62, 66, 64, 62, 75, 71, 62, 71, 67, 56, 69, 68, 57, 78, 68, 68, 48, 48, 60, 79, 64, 93, 63, 107, 75, 75, 62, 66, 70, 56, 59, 53, 68, 67, 57, 75, 64, 87, 35, 60, 57, 52, 64, 69, 56, 54, 80, 72, 82, 56, 71, 49, 46, 75, 65, 71, 56, 66, 58, 61, 60, 68, 69, 64, 68, 64, 53, 69, 81, 54, 54, 67, 45, 62, 73, 79, 58, 85, 65, 60, 60, 71, 67, 101, 74, 59, 59, 57, 58, 71, 71, 62, 64, 69, 113, 83, 76, 57, 49, 66, 61, 52, 50, 73, 62, 52, 62, 65, 73, 65, 52, 59, 58, 111, 63, 57, 57, 63, 60, 74, 47, 55, 58, 71, 51, 62, 82, 62, 54, 60, 70, 57, 66, 61, 51, 64, 62, 63, 65, 101, 56, 54, 64, 64, 114, 83, 62, 65, 57, 70, 82, 111, 99, 51, 80, 64, 71, 66, 63, 54, 57, 65, 59, 69, 65, 64, 71, 65, 64, 59, 59, 47, 68, 70, 55, 64, 100, 71, 70, 57, 60, 93, 58, 75, 62, 64, 60, 59, 57, 68, 63, 64, 65, 62, 57, 60, 65, 72, 72, 63, 53, 64, 50, 70, 56, 56, 72, 56, 57, 67, 60, 59, 61, 69, 73, 63, 75, 55, 62, 72, 63, 59, 49, 64, 71, 105, 77, 60, 55, 60, 54, 65, 75, 62, 55, 60, 77, 71, 79, 62, 56, 76, 71, 65, 70, 73, 57, 73, 63, 60, 60, 74, 64, 51, 64, 59, 72, 49, 74, 62, 61, 49, 70, 67, 64, 59, 66, 71, 72, 62, 65, 57, 61, 70, 105, 57, 63, 88, 62, 58, 70, 62, 68, 51, 55, 67, 119, 71, 71, 58, 57, 53, 78, 102, 71, 58, 56, 74, 73, 57, 52, 60, 58, 77, 64, 64, 61, 67, 118, 57, 56, 63, 68, 53, 73, 56, 65, 83, 57, 56, 62, 72, 63, 96, 65, 72, 63, 63, 59, 62, 74, 59, 91, 59, 51, 71, 45, 80, 72, 90, 82, 56, 94, 61, 70, 99, 53, 71, 64, 68, 51, 61, 69, 57, 50, 66, 54, 56, 49, 47, 68, 57, 55, 50, 68, 66, 71, 55, 101, 85, 79, 73, 71, 70, 88, 101, 46, 54, 94, 69, 45, 61, 95, 70, 51, 68, 71, 56, 87, 59, 53, 66, 54, 52, 108, 84, 65, 51, 61, 59, 64, 88, 73, 54, 54, 56, 57, 77, 71, 64, 63, 57, 68, 56, 90, 89, 73, 65, 65, 57, 68, 62, 61, 69, 71, 75, 62, 68, 46, 63, 66, 46, 64, 52, 68, 67, 64, 61, 67, 80, 64, 63, 58, 60, 60, 73, 60, 68, 66, 65, 67, 67, 60, 60, 57, 57, 57, 66, 63, 84, 57, 60, 71, 62, 62, 60, 63, 76, 90, 59, 61, 65, 67, 49, 67, 62, 83, 61, 67, 59, 73, 68, 61, 63, 69, 49, 51, 76, 59, 78, 55, 74, 59, 79, 64, 52, 59, 70, 62, 111, 74, 72, 50, 59, 74, 62, 71, 62, 74, 62, 61, 58, 49, 61, 64, 65, 72, 57, 62, 71, 59, 67, 73, 54, 83, 70, 65, 50, 72, 66, 60, 66, 72, 59, 80, 71, 71, 67, 66, 62, 52, 98, 57, 97, 61, 64, 73, 62, 44, 67, 97, 46, 71, 87, 66, 69, 56, 50, 60, 69, 66, 60, 54, 60, 51, 72, 60, 64, 54, 59, 64, 64, 67, 75, 63, 106, 48, 47, 58, 54, 73, 85, 63, 70, 65, 67, 136, 84, 58, 67, 72, 104, 53, 57, 57, 56, 63, 60, 60, 66, 67, 93, 56, 56, 67, 71, 64, 76, 68, 78, 63, 63, 80, 116, 61, 67, 63, 66, 72, 69, 51, 59, 44, 82, 83, 63, 71, 65, 61, 80, 47, 51, 85, 57, 66, 52, 71, 60, 44, 77, 58, 47, 47, 66, 67, 57, 96, 63, 60, 50, 67, 84, 54, 57, 58, 78, 51, 70, 47, 72, 61, 66, 49, 51, 67, 75, 69, 51, 48, 64, 61, 50, 71, 56, 59, 79, 59, 62, 86, 67, 83, 51, 35, 60, 48, 66, 98, 59, 60, 67, 65, 65, 68, 60, 71, 59, 65, 60, 70, 63, 66, 68, 44, 69, 67, 81, 63, 65, 84, 92, 73, 51, 57, 72, 55, 80, 51, 72, 60, 61, 66, 72, 91, 64, 60, 85, 63, 57, 57, 64, 64, 53, 53, 90, 67, 56, 74, 63, 65, 74, 55, 62, 66, 65, 41, 76, 61, 53, 63, 66, 55, 57, 61, 73, 63, 58, 77, 95, 64, 74, 61, 72, 53, 58, 62, 80, 65, 55, 79, 63, 59, 78, 55, 62, 74, 60, 80, 71, 72, 58, 70, 66, 57, 67, 70, 68, 56, 60, 90, 54, 81, 56, 65, 65, 55, 69, 76, 56, 54, 69, 84, 67, 44, 51, 52, 59, 57, 79, 69, 81, 61, 58, 60, 62, 62, 58, 77, 83, 91, 87, 63, 51, 130, 61, 50, 70, 63, 56, 55, 69, 80, 52, 48, 59, 46, 65, 95, 67, 53, 81, 49, 91, 62, 56, 66, 82, 74, 62, 64, 96, 63, 76, 67, 56, 64, 66, 56, 89, 64, 63, 53, 68, 85, 62, 71, 61, 70, 61, 57, 46, 58, 69, 67, 62, 60, 87, 44, 57, 50, 62, 78, 58, 59, 53, 67, 69, 72, 60, 66, 70, 48, 80, 79, 58, 72, 64, 54, 68, 62, 53, 56, 69, 57, 58, 65, 64, 76, 68, 66, 61, 58, 66, 76, 68, 68, 75, 75, 58, 61, 60, 92, 67, 55, 60, 64, 74, 76, 74, 73, 57, 57, 68, 52, 68, 65, 45, 74, 69, 59, 65, 58, 47, 67, 66, 68, 67, 63, 63, 50, 55, 61, 57, 57, 54, 60, 94, 77, 65, 48, 66, 59, 51, 78, 70, 88, 60, 67, 66, 69, 70, 109, 54, 82, 56, 103, 67, 65, 66, 49, 59, 74, 70, 80, 81, 62, 52, 64, 41, 70, 65, 41, 66, 51, 109, 74, 53, 65, 94, 65, 57, 72, 65, 73, 73, 55, 84, 61, 68, 55, 77, 60, 71, 74, 51, 54, 81, 56, 60, 72, 88, 56, 50, 69, 54, 62, 79, 72, 73, 70, 81, 53, 65, 61, 65, 55, 64, 68, 47, 64, 66, 58, 48, 60, 51, 56, 65, 73, 46, 44, 63, 59, 80, 65, 65, 61, 57, 55, 61, 72, 63, 64, 82, 56, 59, 85, 45, 52, 72, 65, 90, 88, 58, 72, 46, 63, 70, 65, 86, 71, 85, 54, 52, 58, 61, 70, 65, 77, 57, 62, 64, 66, 59, 65, 64, 63, 71, 60, 67, 65, 50, 67, 58, 62, 62, 69, 64, 53, 92, 67, 51, 53, 69, 76, 86, 53, 90, 42, 52, 128, 105, 88, 59, 69, 75, 85, 63, 48, 76, 72, 77, 59, 57, 54, 61, 55, 63, 50, 82, 68, 47, 54, 82, 65, 72, 73, 60, 78, 81, 70, 64, 71, 50, 66, 86, 62, 54, 56, 59, 56, 64, 79, 68, 80, 63, 65, 52, 51, 50, 62, 52, 71, 70, 74, 88, 84, 52, 99, 55, 74, 67, 57, 61, 62, 66, 48, 53, 55, 52, 81, 60, 87, 47, 54, 47, 74, 78, 58, 63, 52, 67, 86, 102, 57, 62, 60, 100, 57, 50, 88, 72, 56, 77, 70, 62, 77, 89, 67, 50, 63, 63, 56, 68, 47, 62, 69, 56, 63, 68, 57, 75, 85, 68, 49, 51, 75, 63, 48, 51, 60, 63, 86, 76, 78, 72, 57, 54, 36, 63, 88, 131, 45, 64, 56, 62, 66, 72, 60, 57, 57, 63, 90, 68, 63, 55, 60, 67, 41, 61, 71, 60, 80, 68, 59, 67, 61, 79, 62, 81, 61, 61, 28, 65, 76, 56, 63, 71, 67, 73, 55, 67, 61, 59, 52, 56, 56, 58, 61, 75, 69, 71, 123, 113, 69, 70, 63, 46, 62, 54, 54, 65, 75, 47, 52, 56, 56, 70, 42, 92, 55, 79, 65, 65, 53, 59, 71, 50, 76, 93, 46, 69, 54, 70, 73, 65, 47, 56, 83, 51, 54, 66, 64, 68, 56, 60, 63, 60, 65, 65, 64, 61, 69, 55, 90, 60, 68, 73, 85, 45, 63, 63, 72, 55, 75, 57, 68, 62, 65, 48, 62, 84, 65, 73, 56, 61, 70, 46, 80, 51, 67, 53, 58, 61, 80, 58, 63, 43, 53, 56, 49, 93, 68, 65, 79, 78, 77, 59, 63, 56, 54, 95, 45, 100, 82, 53, 72, 56, 69, 58, 67, 62, 84, 57, 57, 68, 74, 61, 55, 57, 70, 64, 61, 72, 55, 51, 57, 58, 83, 79, 63, 57, 62, 64, 48, 78, 69, 57, 46, 64, 36, 93, 66, 72, 59, 77, 64, 64, 77, 69, 81, 80, 60, 72, 65, 74, 81, 60, 64, 65, 71, 60, 79, 70, 69, 58, 54, 62, 72, 84, 57, 47, 55, 59, 74, 54, 53, 64, 70, 50, 65, 60, 66, 68, 46, 92, 54, 65, 58, 61, 66, 62, 78, 53, 85, 61, 86, 80, 66, 76, 62, 60, 73, 65, 69, 87, 87, 72, 68, 58, 53, 62, 107, 62, 58, 89, 59, 60, 63, 72, 69, 72, 73, 81, 72, 83, 54, 70, 64, 50, 76, 75, 60, 81, 60, 81, 72, 58, 61, 65, 71, 55, 78, 55, 56, 58, 47, 71, 51, 47, 103, 64, 71, 63, 64, 80, 50, 65, 57, 57, 68, 89, 68, 63, 46, 91, 62, 51, 73, 75, 60, 57, 59, 82, 61, 65, 67, 51, 44, 80, 56, 67, 92, 51, 69, 85, 66, 71, 62, 58, 57, 55, 100, 76, 51, 55, 66, 106, 56, 64, 58, 70, 56, 50, 60, 54, 65, 85, 70, 81, 64, 59, 95, 70, 82, 44, 61, 55, 60, 62, 59, 63, 55, 105, 60, 69, 63, 89, 53, 63, 77, 84, 76, 57, 74, 63, 58, 70, 65, 80, 64, 71, 59, 58, 67, 72, 56, 57, 54, 67, 67, 56, 62, 61, 64, 81, 61, 52, 77, 61, 84, 105, 83, 67, 73, 53, 60, 57, 75, 65, 64, 63, 58, 57, 62, 55, 56, 75, 75, 60, 58, 79, 65, 82, 58, 53, 64, 62, 63, 58, 61, 60, 71, 73, 75, 69, 38, 41, 69, 71, 94, 63, 68, 62, 96, 57, 90, 81, 56, 59, 62, 54, 56, 51, 72, 108, 44, 69, 61, 80, 60, 107, 44, 56, 55, 64, 62, 63, 41, 58, 54, 76, 74, 64, 67, 52, 93, 63, 54, 66, 92, 74, 65, 67, 59, 54, 75, 106, 65, 71, 74, 78, 53, 73, 60, 59, 58, 65, 62, 58, 84, 64, 82, 63, 60, 61, 85, 79, 59, 65, 65, 66, 46, 37, 66, 73, 69, 68, 62, 88, 54, 56, 59, 66, 61, 63, 55, 62, 65, 64, 64, 72, 81, 79, 143, 76, 105, 78, 81, 47, 67, 70, 74, 65, 77, 54, 70, 53, 65, 52, 92, 56, 68, 65, 78, 67, 56, 58, 65, 59, 83, 64, 47, 66, 57, 58, 53, 71, 64, 63, 62, 61, 65, 66, 61, 57, 53, 67, 69, 55, 71, 50, 51, 82, 49, 67, 51, 60, 94, 59, 78, 51, 65, 66, 59, 62, 72, 74, 61, 60, 77, 51, 74, 75, 60, 75, 60, 70, 116, 55, 62, 57, 79, 62, 44, 82, 70, 54, 68, 93, 51, 70, 55, 74, 62, 59, 49, 57, 60, 78, 72, 62, 67, 53, 60, 58, 50, 77, 80, 78, 78, 110, 65, 52, 50, 52, 58, 52, 76, 62, 54, 57, 68, 52, 54, 70, 62, 56, 64, 53, 62, 56, 56, 49, 74, 89, 53, 77, 56, 62, 64, 52, 71, 61, 78, 120, 65, 61, 55, 77, 66, 79, 90, 75, 53, 59, 65, 70, 65, 52, 68, 65, 53, 68, 68, 59, 59, 54, 54, 58, 54, 69, 59, 69, 78, 70, 58, 106, 72, 55, 55, 71, 56, 68, 61, 58, 76, 59, 66, 60, 65, 82, 88, 64, 80, 71, 69, 85, 45, 66, 54, 65, 67, 49, 80, 68, 80, 60, 50, 64, 59, 67, 49, 54, 104, 64, 62, 72, 77, 71, 62, 53, 58, 48, 75, 45, 68, 63, 44, 103, 93, 54, 62, 69, 52, 62, 60, 94, 65, 68, 61, 78, 53, 68, 57, 46, 67, 59, 64, 73, 73, 63, 60, 59, 53, 69, 78, 78, 70, 63, 46, 53, 60, 54, 60, 56, 61, 60, 66, 62, 52, 56, 55, 72, 63, 72, 60, 75, 56, 74, 84, 55, 58, 59, 86, 75, 68, 62, 69, 70, 67, 66, 68, 93, 49, 71, 56, 66, 56, 69, 79, 90, 55, 63, 66, 76, 84, 50, 95, 58, 72, 62, 54, 56, 69, 81, 62, 63, 72, 66, 58, 65, 77, 54, 65, 60, 56, 61, 88, 70, 67, 63, 59, 73, 65, 67, 53, 66, 50, 58, 54, 86, 79, 115, 72, 78, 72, 34, 55, 110, 68, 68, 73, 57, 74, 101, 67, 77, 48, 57, 71, 60, 55, 71, 52, 66, 64, 63, 47, 53, 87, 54, 57, 120, 71, 60, 66, 59, 51, 57, 64, 71, 56, 68, 70, 52, 63, 64, 72, 67, 68, 62, 64, 50, 75, 44, 41, 73, 61, 86, 67, 53, 55, 59, 56, 74, 59, 74, 41, 75, 59, 72, 93, 58, 60, 68, 71, 68, 69, 55, 71, 59, 53, 65, 45, 57, 70, 76, 48, 92, 38, 48, 54, 54, 74, 67, 75, 67, 80, 64, 55, 139, 65, 84, 93, 73, 80, 62, 79, 62, 73, 46, 73, 80, 57, 64, 81, 73, 43, 75, 69, 55, 64, 63, 55, 72, 87, 64, 59, 84, 38, 67, 73, 67, 53, 74, 64, 63, 56, 82, 61, 80, 64, 71, 65, 114, 29, 50, 71, 69, 72, 81, 82, 57, 56, 77, 59, 68, 93, 64, 69, 63, 64, 61, 89, 56, 75, 73, 39, 57, 52, 68, 57, 75, 80, 68, 89, 64, 48, 58, 72, 47, 48, 66, 76, 51, 78, 79, 61, 60, 81, 69, 70, 74, 68, 89, 46, 85, 70, 71, 63, 77, 122, 62, 79, 52, 96, 62, 67, 45, 73, 65, 76, 65, 58, 59, 87, 68, 48, 48, 69, 61, 68, 77, 59, 53, 72, 61, 65, 80, 39, 62, 66, 46, 52, 60, 72, 70, 76, 72, 57, 54, 54, 63, 66, 61, 59, 60, 43, 58, 59, 66, 58, 105, 53, 67, 66, 54, 51, 99, 68, 53, 69, 47, 42, 71, 49, 65, 67, 71, 69, 64, 66, 61, 54, 52, 65, 52, 59, 69, 67, 65, 71, 68, 46, 72, 68, 98, 100, 43, 48, 54, 60, 76, 65, 85, 75, 58, 95, 69, 66, 65, 79, 63, 46, 62, 79, 64, 74, 62, 60, 53, 60, 59, 67, 62, 69, 70, 67, 56, 55, 56, 79, 44, 78, 63, 105, 84, 59, 54, 81, 63, 74, 64, 72, 74, 44, 65, 72, 61, 84, 54, 75, 70, 45, 87, 69, 61, 45, 42, 52, 51, 57, 67, 103, 88, 59, 115, 76, 67, 73, 70, 53, 40, 57, 56, 54, 81, 52, 60, 70, 55, 70, 74, 53, 65, 44, 63, 81, 106, 49, 63, 57, 118, 64, 56, 54, 53, 64, 77, 56, 56, 67, 61, 70, 62, 55, 63, 52, 51, 51, 46, 70, 60, 67, 57, 80, 60, 69, 63, 59, 53, 51, 79, 62, 50, 63, 59, 58, 89, 48, 67, 78, 54, 55, 46, 63, 71, 34, 98, 62, 75, 47, 55, 88, 50, 80, 56, 52, 79, 119, 88, 95, 61, 75, 79, 76, 55, 75, 83, 53, 83, 53, 56, 65, 69, 72, 75, 97, 99, 89, 52, 72, 116, 65, 71, 69, 40, 104, 62, 84, 55, 92, 40, 64, 61, 61, 55, 70, 62, 60, 72, 49, 58, 55, 76, 112, 72, 61, 62, 88, 83, 75, 60, 61, 48, 80, 75, 43, 58, 66, 97, 94, 51, 93, 57, 76, 65, 62, 61, 56, 37, 54, 55, 64, 63, 51, 61, 72, 58, 56, 116, 89, 56, 50, 44, 51, 64, 56, 70, 58, 70, 64, 80, 47, 63, 75, 57, 63, 60, 53, 50, 57, 64, 37, 58, 43, 58, 88, 96, 67, 78, 70, 58, 57, 103, 64, 69, 65, 52, 62, 67, 76, 52, 60, 58, 78, 59, 57, 66, 58, 91, 73, 85, 47, 73, 44, 63, 65, 63, 64, 55, 56, 57, 48, 73, 67, 54, 106, 73, 48, 76, 61, 80, 50, 63, 42, 69, 94, 66, 65, 75, 51, 66, 86, 60, 59, 77, 58, 36, 31, 56, 65, 57, 58, 99, 64, 58, 49, 57, 74, 62, 50, 73, 63, 85, 56, 59, 83, 56, 67, 59, 58, 55, 47, 65, 63, 127, 54, 54, 64, 56, 77, 84, 46, 56, 59, 64, 69, 64, 55, 62, 45, 98, 51, 64, 82, 58, 70, 57, 116, 79, 57, 64, 62, 107, 68, 46, 57, 53, 56, 51, 45, 63, 77, 68, 74, 95, 69, 54, 121, 96, 55, 21, 68, 74, 89, 58, 128, 63, 78, 75, 49, 68, 67, 54, 101, 56, 67, 58, 76, 73, 49, 68, 40, 65, 53, 61, 54, 54, 81, 80, 66, 74, 57, 71, 58, 63, 59, 64, 53, 93, 60, 50, 86, 61, 51, 97, 73, 43, 69, 67, 54, 58, 89, 65, 79, 96, 85, 68, 62, 41, 84, 49, 53, 60, 63, 55, 69, 60, 56, 58, 71, 59, 48, 50, 86, 68, 57, 72, 65, 49, 80, 68, 64, 63, 62, 61, 66, 56, 45, 68, 57, 76, 57, 65, 49, 54, 60, 84, 56, 50, 68, 68, 68, 68, 68, 90, 50, 54, 64, 56, 60, 53, 80, 106, 60, 56, 80, 55, 62, 70, 70, 54, 79, 57, 64, 57, 58, 51, 86, 87, 77, 57, 57, 65, 62, 44, 73, 78, 66, 74, 64, 67, 99, 54, 79, 76, 58, 81, 59, 52, 66, 58, 54, 58, 54, 64, 66, 64, 109, 53, 75, 67, 72, 66, 47, 75, 83, 54, 108, 61, 63, 55, 59, 72, 80, 61, 69, 58, 61, 83, 89, 57, 56, 56, 94, 66, 54, 79, 92, 50, 71, 66, 70, 90, 64, 87, 91, 56, 66, 63, 60, 83, 61, 74, 68, 75, 73, 61, 104, 56, 45, 53, 73, 84, 58, 52, 69, 45, 57, 60, 90, 62, 53, 66, 51, 48, 60, 32, 91, 86, 53, 76, 47, 66, 66, 55, 54, 56, 78, 61, 59, 61, 75, 68, 60, 72, 63, 61, 55, 64, 74, 71, 79, 57, 42, 55, 61, 57, 48, 52, 69, 56, 60, 81, 88, 49, 53, 68, 56, 75, 73, 69, 64, 69, 47, 62, 67, 76, 49, 62, 65, 57, 87, 75, 65, 52, 63, 66, 68, 59, 63, 74, 59, 93, 67, 53, 75, 65, 62, 58, 62, 54, 87, 42, 54, 54, 65, 65, 69, 48, 70, 78, 63, 72, 54, 73, 64, 77, 61, 54, 66, 81, 88, 62, 72, 75, 66, 58, 67, 63, 74, 75, 77, 74, 58, 66, 67, 54, 72, 75, 62, 52, 60, 98, 52, 66, 49, 59, 44, 71, 82, 65, 70, 60, 75, 67, 67, 62, 45, 59, 88, 57, 64, 61, 99, 64, 87, 83, 68, 99, 83, 92, 46, 62, 74, 53, 40, 63, 122, 85, 61, 64, 76, 49, 74, 65, 57, 41, 54, 66, 46, 55, 54, 150, 56, 62, 57, 54, 66, 59, 68, 95, 59, 58, 88, 51, 65, 80, 62, 79, 56, 73, 64, 76, 75, 76, 76, 66, 51, 45, 56, 87, 65, 55, 96, 62, 98, 56, 78, 99, 58, 79, 57, 65, 69, 56, 47, 79, 60, 48, 77, 79, 55, 58, 74, 70, 78, 73, 39, 54, 76, 48, 54, 52, 64, 73, 67, 99, 48, 59, 58, 68, 70, 70, 55, 78, 88, 54, 78, 89, 54, 60, 56, 63, 60, 85, 78, 58, 80, 67, 37, 55, 59, 64, 74, 56, 59, 82, 72, 59, 46, 60, 62, 62, 81, 120, 68, 53, 56, 66, 65, 67, 55, 58, 60, 81, 48, 77, 67, 81, 58, 66, 60, 67, 76, 86, 59, 79, 82, 59, 54, 59, 54, 108, 81, 50, 64, 70, 56, 133, 62, 59, 77, 48, 69, 67, 92, 78, 47, 85, 54, 98, 59, 93, 67, 73, 84, 81, 47, 77, 67, 65, 73, 52, 76, 63, 85, 64, 75, 38, 47, 62, 75, 61, 66, 101, 43, 61, 70, 52, 64, 91, 63, 60, 60, 65, 78, 31, 82, 63, 50, 72, 118, 60, 59, 62, 52, 91, 60, 63, 62, 67, 95, 74, 65, 65, 56, 61, 75, 48, 66, 51, 59, 68, 52, 41, 70, 64, 31, 34, 74, 78, 71, 65, 68, 59, 73, 74, 81, 58, 62, 87, 70, 58, 68, 59, 53, 64, 153, 56, 94, 39, 53, 60, 73, 63, 69, 77, 77, 64, 62, 54, 71, 52, 65, 73, 72, 82, 62, 59, 77, 53, 58, 79, 48, 40, 75, 80, 56, 75, 65, 80, 53, 68, 40, 55, 85, 64, 76, 85, 65, 83, 70, 58, 43, 57, 94, 72, 48, 51, 68, 75, 62, 75, 68, 60, 65, 67, 73, 66, 75, 67, 69, 84, 60, 60, 54, 49, 56, 47, 70, 55, 78, 74, 49, 69, 65, 74, 67, 60, 153, 74, 68, 54, 49, 53, 73, 56, 52, 50, 56, 102, 68, 55, 59, 71, 60, 50, 69, 53, 64, 82, 54, 43, 92, 63, 55, 58, 74, 62, 48, 59, 64, 54, 88, 68, 72, 72, 86, 66, 66, 73, 60, 83, 156, 78, 73, 76, 97, 49, 63, 63, 45, 93, 54, 56, 51, 54, 71, 103, 76, 57, 65, 68, 54, 87, 78, 70, 48, 67, 47, 44, 88, 67, 70, 77, 70, 51, 74, 43, 81, 54, 49, 74, 73, 51, 46, 74, 62, 42, 72, 44, 85, 65, 63, 70, 66, 82, 53, 43, 81, 66, 69, 53, 66, 69, 88, 58, 64, 46, 67, 65, 70, 56, 55, 72, 56, 64, 89, 57, 72, 80, 62, 43, 59, 56, 65, 46, 41, 87, 50, 48, 65, 75, 58, 36, 76, 55, 86, 74, 79, 61, 44, 73, 72, 74, 68, 66, 51, 51, 50, 82, 48, 80, 85, 57, 50, 61, 57, 69, 88, 42, 77, 71, 73, 63, 88, 69, 63, 69, 46, 76, 71, 78, 47, 63, 53, 51, 92, 65, 54, 66, 55, 100, 81, 61, 60, 90, 51, 73, 55, 50, 66, 59, 63, 79, 60, 58, 62, 63, 42, 47, 69, 85, 68, 26, 64, 75, 44, 59, 58, 47, 58, 67, 71, 53, 81, 78, 53, 83, 70, 74, 48, 66, 64, 62, 72, 69, 39, 64, 51, 61, 62, 108, 56, 59, 51, 68, 77, 69, 56, 51, 69, 64, 60, 67, 71, 85, 75, 59, 87, 57, 68, 72, 78, 40, 50, 58, 81, 96, 64, 59, 61, 60, 56, 70, 73, 66, 78, 57, 74, 46, 73, 90, 65, 91, 89, 51, 53, 61, 73, 49, 47, 58, 47, 70, 70, 65, 85, 69, 61, 66, 62, 85, 68, 57, 70, 54, 43, 84, 69, 67, 84, 66, 61, 89, 56, 53, 64, 42, 79, 64, 70, 80, 63, 59, 33, 71, 74, 65, 82, 62, 51, 69, 69, 115, 76, 111, 68, 64, 66, 45, 78, 47, 81, 59, 58, 61, 81, 54, 71, 32, 62, 82, 92, 123, 88, 62, 62, 71, 54, 80, 54, 61, 52, 66, 46, 75, 84, 67, 51, 54, 52, 76, 60, 59, 88, 43, 72, 72, 58, 94, 67, 39, 89, 63, 66, 51, 50, 71, 53, 61, 61, 52, 77, 52, 80, 55, 47, 61, 62, 69, 73, 60, 84, 79, 62, 52, 51, 67, 67, 71, 69, 83, 55, 59, 63, 51, 69, 46, 57, 81, 61, 59, 52, 54, 55, 57, 52, 97, 45, 64, 67, 49, 81, 44, 76, 95, 104, 52, 70, 54, 76, 54, 71, 64, 47, 69, 65, 59, 62, 77, 58, 90, 52, 75, 86, 66, 50, 47, 60, 58, 82, 74, 54, 71, 71, 69, 62, 69, 56, 63, 71, 43, 52, 61, 44, 36, 53, 70, 93, 74, 58, 98, 77, 65, 74, 84, 60, 60, 136, 55, 69, 66, 54, 64, 70, 65, 45, 47, 78, 88, 77, 75, 57, 63, 67, 56, 61, 75, 51, 60, 54, 66, 69, 65, 46, 109, 64, 62, 63, 76, 90, 79, 62, 66, 54, 54, 52, 55, 44, 48, 64, 50, 82, 73, 77, 58, 77, 75, 81, 62, 67, 62, 69, 72, 58, 65, 66, 66, 73, 29, 72, 86, 64, 88, 94, 59, 53, 49, 59, 58, 68, 61, 70, 82, 57, 87, 71, 60, 44, 64, 72, 63, 51, 67, 79, 84, 102, 69, 47, 49, 78, 47, 52, 55, 66, 48, 76, 93, 69, 71, 74, 51, 73, 74, 47, 60, 58, 64, 69, 106, 46, 55, 66, 76, 58, 83, 53, 56, 85, 73, 57, 65, 82, 72, 69, 58, 54, 53, 78, 69, 77, 79, 45, 82, 91, 74, 50, 59, 60, 95, 63, 34, 61, 64, 73, 62, 45, 87, 59, 61, 60, 67, 82, 54, 51, 61, 50, 81, 86, 65, 54, 77, 55, 82, 63, 81, 62, 44, 63, 80, 53, 84, 61, 28, 70, 64, 48, 65, 72, 62, 67, 75, 63, 51, 54, 112, 72, 60, 76, 72, 77, 86, 98, 70, 75, 53, 104, 59, 55, 92, 69, 58, 62, 87, 87, 64, 46, 44, 68, 57, 125, 50, 91, 56, 57, 100, 60, 65, 67, 69, 87, 73, 78, 72, 79, 79, 83, 64, 63, 48, 62, 51, 77, 83, 50, 50, 62, 71, 66, 54, 43, 120, 82, 52, 57, 76, 55, 54, 46, 58, 50, 64, 59, 64, 57, 80, 62, 67, 76, 79, 61, 65, 53, 50, 79, 62, 63, 66, 58, 60, 62, 42, 69, 54, 58, 96, 53, 73, 66, 53, 75, 81, 69, 74, 85, 59, 68, 72, 63, 79, 92, 87, 65, 52, 67, 66, 87, 97, 67, 50, 64, 74, 72, 97, 81, 70, 66, 114, 60, 56, 68, 68, 82, 60, 56, 56, 61, 61, 86, 96, 60, 64, 62, 58, 63, 71, 68, 64, 69, 51, 36, 62, 66, 73, 65, 64, 57, 61, 58, 99, 61, 55, 43, 59, 59, 55, 69, 104, 69, 91, 93, 50, 66, 62, 65, 53, 61, 60, 49, 67, 79, 30, 67, 73, 47, 57, 87, 53, 55, 47, 51, 79, 62, 48, 38, 64, 75, 53, 75, 66, 112, 68, 58, 55, 70, 60, 52, 83, 72, 76, 72, 69, 61, 53, 65, 80, 72, 115, 76, 62, 65, 65, 63, 53, 77, 62, 59, 63, 66, 62, 57, 54, 76, 63, 85, 71, 79, 58, 46, 74, 52, 53, 64, 59, 69, 61, 49, 60, 37, 58, 44, 68, 55, 71, 57, 55, 50, 71, 60, 54, 54, 67, 68, 60, 52, 69, 74, 34, 71, 55, 66, 69, 63, 68, 69, 59, 71, 51, 54, 64, 123, 62, 65, 59, 68, 69, 77, 51, 53, 75, 52, 77, 56, 65, 79, 65, 59, 89, 74, 58, 80, 71, 49, 89, 69, 89, 94, 83, 61, 70, 54, 61, 52, 74, 69, 82, 78, 74, 52, 59, 54, 65, 60, 129, 56, 61, 53, 62, 58, 65, 53, 65, 57, 66, 67, 124, 67, 48, 67, 47, 67, 72, 82, 69, 59, 58, 53, 56, 89, 53, 55, 66, 72, 66, 62, 65, 83, 77, 54, 65, 72, 65, 72, 46, 55, 53, 55, 62, 56, 83, 60, 69, 57, 37, 57, 51, 57, 63, 57, 54, 80, 60, 63, 63, 107, 68, 68, 81, 48, 61, 60, 57, 81, 86, 76, 51, 59, 65, 81, 55, 65, 55, 63, 60, 65, 73, 102, 147, 87, 58, 85, 53, 68, 67, 58, 70, 54, 52, 44, 67, 51, 73, 72, 59, 52, 74, 67, 70, 109, 60, 52, 53, 49, 83, 65, 129, 65, 56, 66, 59, 71, 41, 62, 92, 60, 67, 64, 78, 49, 80, 52, 60, 69, 55, 63, 63, 55, 55, 63, 85, 82, 70, 76, 54, 60, 53, 64, 70, 75, 64, 95, 50, 76, 42, 66, 70, 54, 58, 78, 89, 82, 34, 58, 102, 59, 67, 59, 61, 47, 60, 47, 81, 82, 50, 72, 74, 47, 53, 56, 51, 60, 81, 68, 54, 56, 66, 75, 50, 88, 63, 58, 81, 83, 60, 70, 71, 95, 51, 57, 86, 62, 69, 66, 49, 53, 75, 40, 55, 59, 67, 51, 57, 61, 56, 65, 69, 64, 48, 51, 67, 87, 54, 41, 58, 61, 51, 111, 66, 61, 47, 72, 65, 53, 75, 92, 58, 78, 60, 58, 65, 76, 59, 41, 74, 56, 56, 57, 65, 73, 68, 50, 67, 77, 51, 71, 51, 55, 54, 101, 64, 70, 92, 57, 66, 67, 56, 67, 50, 128, 54, 54, 80, 50, 78, 55, 71, 43, 50, 51, 55, 56, 37, 60, 101, 76, 59, 87, 57, 57, 62, 70, 77, 58, 81, 70, 58, 88, 76, 70, 76, 68, 81, 72, 67, 50, 67, 60, 67, 65, 59, 63, 72, 97, 69, 60, 75, 45, 52, 57, 51, 42, 91, 63, 48, 70, 51, 49, 92, 61, 55, 77, 66, 76, 70, 107, 49, 44, 62, 49, 60, 67, 64, 53, 62, 61, 65, 64, 73, 61, 72, 67, 61, 64, 56, 56, 77, 59, 53, 58, 55, 87, 58, 86, 78, 64, 86, 55, 97, 57, 102, 70, 50, 69, 60, 79, 39, 75, 62, 66, 41, 71, 68, 77, 50, 72, 81, 70, 74, 106, 67, 51, 60, 45, 53, 52, 97, 69, 55, 53, 54, 61, 78, 58, 61, 55, 81, 65, 68, 53, 58, 62, 73, 55, 73, 61, 63, 46, 70, 64, 47, 80, 85, 70, 82, 94, 70, 67, 56, 55, 80, 43, 51, 45, 51, 54, 81, 55, 51, 59, 60, 43, 54, 63, 75, 74, 51, 66, 58, 54, 59, 66, 46, 58, 74, 57, 66, 53, 83, 93, 72, 68, 49, 62, 61, 64, 64, 60, 64, 65, 51, 82, 68, 59, 91, 72, 62, 64, 79, 51, 80, 59, 58, 51, 61, 65, 73, 59, 58, 59, 57, 76, 74, 66, 80, 69, 79, 49, 78, 95, 56, 57, 64, 63, 66, 56, 76, 67, 44, 67, 54, 43, 64, 66, 54, 37, 80, 92, 72, 55, 45, 60, 86, 64, 73, 43, 56, 62, 94, 62, 56, 64, 57, 51, 65, 57, 79, 64, 34, 51, 65, 58, 71, 66, 56, 64, 52, 70, 52, 54, 91, 50, 47, 44, 60, 90, 49, 66, 81, 50, 58, 67, 47, 50, 73, 91, 57, 54, 71, 65, 67, 77, 68, 69, 35, 68, 57, 76, 67, 59, 75, 49, 50, 93, 63, 56, 72, 83, 100, 95, 59, 51, 54, 50, 65, 82, 93, 75, 69, 66, 77, 78, 49, 54, 74, 59, 89, 66, 69, 78, 66, 59, 49, 71, 59, 76, 56, 43, 70, 58, 59, 91, 80, 64, 73, 60, 63, 70, 81, 63, 85, 55, 49, 70, 67, 46, 83, 68, 89, 68, 60, 76, 49, 63, 71, 64, 68, 52, 88, 61, 68, 55, 93, 63, 73, 64, 73, 67, 66, 55, 53, 64, 66, 53, 63, 53, 83, 83, 56, 65, 56, 105, 64, 53, 51, 67, 71, 42, 58, 76, 42, 61, 56, 79, 70, 50, 60, 109, 71, 69, 60, 71, 68, 59, 66, 68, 82, 91, 51, 69, 103, 62, 59, 71, 115, 75, 60, 64, 66, 58, 88, 64, 75, 67, 68, 90, 66, 101, 68, 74, 82, 67, 79, 57, 86, 70, 68, 85, 53, 68, 66, 76, 68, 69, 64, 116, 45, 52, 101, 69, 77, 65, 52, 60, 53, 82, 64, 54, 79, 73, 63, 72, 62, 56, 72, 69, 51, 56, 48, 47, 69, 85, 62, 45, 61, 68, 72, 74, 64, 62, 58, 91, 51, 62, 58, 66, 59, 46, 59, 54, 50, 67, 70, 69, 59, 67, 65, 77, 63, 65, 63, 52, 41, 67, 68, 69, 58, 60, 64, 69, 90, 67, 62, 74, 33, 51, 69, 67, 82, 91, 53, 88, 78, 54, 52, 90, 55, 88, 83, 69, 62, 83, 112, 77, 77, 63, 66, 71, 70, 89, 71, 70, 50, 61, 74, 61, 76, 73, 56, 84, 75, 71, 54, 71, 99, 62, 67, 74, 61, 59, 70, 82, 74, 56, 59, 69, 74, 76, 58, 65, 61, 67, 57, 68, 34, 67, 93, 59, 58, 53, 62, 82, 64, 58, 70, 80, 69, 54, 86, 65, 62, 78, 46, 88, 66, 57, 70, 48, 70, 74, 79, 69, 50, 69, 49, 47, 74, 41, 78, 66, 62, 49, 62, 69, 51, 84, 69, 43, 86, 74, 90, 67, 90, 38, 73, 75, 62, 59, 56, 57, 69, 68, 102, 63, 53, 107, 62, 68, 73, 57, 50, 46, 60, 77, 61, 58, 51, 67, 49, 92, 61, 67, 66, 56, 59, 82, 61, 81, 60, 77, 72, 72, 61, 52, 30, 52, 80, 55, 99, 63, 50, 75, 61, 58, 47, 105, 49, 79, 58, 72, 58, 40, 64, 76, 65, 71, 51, 43, 67, 66, 55, 81, 63, 60, 71, 91, 87, 76, 56, 49, 76, 78, 83, 64, 68, 49, 75, 62, 51, 77, 65, 73, 53, 57, 55, 40, 61, 65, 97, 69, 64, 58, 76, 55, 66, 66, 67, 89, 73, 98, 64, 61, 117, 56, 60, 55, 61, 54, 129, 64, 62, 66, 71, 61, 81, 62, 64, 67, 67, 77, 58, 64, 71, 57, 47, 57, 60, 66, 87, 88, 72, 70, 52, 84, 70, 56, 57, 78, 53, 69, 56, 68, 78, 58, 61, 46, 57, 95, 117, 73, 53, 80, 66, 58, 56, 56, 73, 75, 65, 67, 56, 63, 63, 44, 76, 75, 86, 55, 60, 70, 55, 80, 72, 50, 62, 46, 62, 55, 60, 59, 63, 82, 61, 61, 70, 73, 47, 67, 75, 55, 64, 81, 110, 46, 49, 76, 67, 50, 77, 64, 91, 62, 67, 36, 65, 62, 85, 51, 83, 52, 56, 57, 63, 110, 62, 72, 70, 55, 74, 106, 85, 61, 56, 67, 46, 58, 62, 56, 88, 63, 70, 89, 62, 53, 81, 57, 67, 59, 66, 69, 55, 62, 78, 56, 74, 80, 71, 56, 52, 76, 79, 79, 87, 73, 68, 98, 64, 64, 66, 65, 45, 55, 63, 109, 67, 76, 118, 85, 67, 53, 55, 62, 58, 92, 68, 54, 112, 56, 65, 85, 76, 64, 67, 66, 82, 48, 66, 67, 83, 73, 89, 78, 63, 74, 55, 59, 53, 58, 67, 68, 80, 102, 47, 81, 93, 63, 61, 79, 51, 51, 72, 66, 65, 84, 52, 49, 56, 58, 58, 57, 83, 76, 81, 67, 64, 76, 50, 65, 58, 82, 79, 83, 79, 57, 80, 66, 47, 99, 80, 82, 69, 55, 60, 63, 79, 58, 77, 76, 62, 79, 71, 63, 69, 55, 61, 34, 54, 71, 59, 61, 58, 78, 48, 74, 74, 64, 65, 61, 69, 60, 48, 57, 71, 104, 72, 68, 59, 68, 67, 74, 93, 64, 64, 69, 69, 74, 54, 87, 66, 72, 77, 61, 61, 68, 69, 55, 55, 85, 66, 72, 48, 93, 62, 52, 71, 45, 59, 56, 56, 59, 42, 80, 75, 52, 84, 67, 79, 90, 66, 73, 61, 50, 54, 45, 59, 81, 82, 73, 54, 61, 74, 65, 78, 61, 84, 71, 58, 79, 64, 118, 59, 41, 56, 80, 56, 75, 51, 53, 57, 68, 53, 57, 67, 76, 82, 57, 56, 60, 82, 67, 79, 87, 54, 63, 68, 64, 77, 72, 80, 61, 80, 65, 85, 60, 79, 67, 80, 53, 63, 81, 61, 69, 63, 70, 75, 71, 61, 61, 60, 53, 46, 56, 55, 81, 48, 75, 56, 71, 59, 61, 70, 52, 60, 54, 84, 55, 76, 78, 59, 58, 58, 63, 84, 81, 57, 38, 65, 47, 75, 69, 77, 62, 72, 73, 86, 50, 75, 53, 58, 39, 78, 60, 68, 66, 65, 67, 65, 49, 68, 87, 48, 56, 66, 45, 58, 57, 63, 62, 50, 59, 71, 104, 85, 52, 75, 63, 66, 71, 89, 52, 84, 90, 82, 86, 66, 44, 63, 70, 87, 58, 66, 55, 65, 84, 67, 63, 48, 59, 94, 49, 69, 84, 45, 59, 74, 52, 48, 77, 68, 64, 57, 75, 106, 65, 64, 69, 60, 67, 59, 52, 71, 50, 80, 83, 60, 51, 44, 90, 63, 64, 66, 81, 54, 71, 51, 65, 29, 44, 60, 58, 79, 86, 59, 66, 66, 39, 71, 39, 51, 63, 86, 76, 59, 82, 73, 61, 67, 77, 73, 64, 66, 63, 45, 66, 64, 53, 61, 67, 54, 66, 60, 56, 49, 51, 99, 81, 84, 56, 63, 63, 55, 73, 90, 62, 69, 73, 56, 65, 59, 77, 83, 52, 55, 64, 59, 97, 48, 68, 44, 95, 38, 52, 49, 70, 77, 66, 59, 70, 77, 60, 67, 72, 78, 43, 53, 66, 80, 54, 62, 68, 75, 67, 100, 65, 83, 66, 58, 62, 59, 63, 49, 92, 57, 48, 86, 61, 61, 59, 56, 60, 53, 63, 57, 40, 71, 97, 64, 53, 76, 56, 52, 97, 80, 57, 73, 51, 33, 47, 59, 52, 50, 67, 65, 66, 56, 60, 68, 84, 56, 54, 52, 78, 84, 90, 82, 62, 83, 83, 51, 59, 68, 62, 54, 45, 55, 62, 70, 64, 77, 58, 74, 51, 78, 74, 59, 100, 49, 72, 62, 83, 72, 68, 71, 70, 47, 59, 56, 72, 56, 84, 69, 115, 76, 77, 70, 70, 79, 70, 60, 69, 52, 54, 71, 49, 87, 55, 68, 32, 55, 57, 55, 70, 73, 52, 112, 59, 54, 79, 76, 79, 70, 103, 60, 95, 57, 72, 50, 66, 82, 59, 63, 76, 58, 53, 53, 53, 53, 86, 86, 103, 47, 55, 70, 50, 59, 66, 62, 54, 56, 88, 84, 55, 50, 74, 47, 65, 76, 56, 65, 57, 81, 55, 83, 51, 53, 56, 59, 60, 37, 68, 54, 61, 86, 62, 64, 75, 69, 73, 86, 55, 50, 58, 54, 76, 71, 81, 69, 80, 44, 53, 53, 66, 50, 80, 51, 80, 82, 54, 55, 80, 60, 54, 69, 73, 79, 79, 58, 56, 57, 78, 72, 86, 70, 79, 89, 76, 54, 61, 68, 63, 79, 68, 51, 61, 64, 60, 105, 56, 74, 65, 64, 43, 67, 76, 55, 84, 65, 65, 87, 46, 65, 55, 66, 80, 82, 73, 46, 59, 116, 66, 41, 60, 55, 56, 53, 62, 79, 40, 71, 78, 74, 35, 61, 57, 74, 53, 69, 55, 67, 46, 58, 71, 53, 57, 64, 54, 81, 69, 50, 94, 63, 78, 69, 55, 54, 75, 67, 41, 54, 62, 133, 85, 57, 94, 56, 61, 59, 68, 69, 60, 76, 75, 69, 69, 54, 74, 76, 39, 59, 70, 70, 63, 67, 102, 66, 72, 137, 65, 62, 67, 59, 54, 69, 44, 56, 64, 96, 74, 71, 71, 63, 66, 62, 55, 55, 70, 77, 64, 59, 71, 65, 60, 65, 75, 88, 73, 92, 61, 83, 66, 68, 99, 62, 60, 65, 61, 58, 67, 84, 64, 54, 63, 70, 77, 69, 77, 87, 70, 62, 50, 61, 62, 65, 90, 67, 66, 57, 69, 71, 69, 51, 61, 56, 79, 68, 69, 75, 97, 87, 122, 64, 67, 75, 79, 63, 58, 51, 52, 49, 50, 51, 49, 63, 63, 59, 63, 62, 75, 67, 115, 83, 71, 87, 64, 70, 56, 103, 69, 83, 58, 105, 56, 56, 59, 76, 54, 73, 78, 71, 45, 73, 71, 96, 56, 61, 73, 65, 60, 71, 65, 85, 66, 67, 50, 48, 70, 59, 55, 68, 52, 67, 74, 61, 65, 51, 68, 52, 83, 61, 53, 49, 92, 48, 56, 59, 42, 68, 61, 61, 73, 37, 99, 73, 57, 58, 48, 69, 63, 100, 72, 66, 70, 56, 61, 54, 80, 63, 56, 67, 77, 74, 77, 71, 59, 57, 79, 65, 66, 78, 68, 49, 70, 67, 69, 57, 111, 44, 65, 50, 86, 51, 53, 54, 73, 64, 79, 92, 58, 79, 67, 61, 68, 120, 48, 64, 49, 71, 60, 85, 76, 55, 56, 54, 70, 89, 88, 52, 83, 80, 50, 54, 55, 91, 71, 61, 73, 61, 41, 73, 66, 66, 47, 79, 66, 65, 71, 63, 57, 103, 61, 70, 92, 69, 56, 47, 55, 75, 57, 43, 53, 58, 54, 59, 80, 49, 63, 76, 81, 81, 67, 57, 49, 56, 47, 81, 47, 69, 75, 65, 68, 93, 53, 72, 53, 56, 73, 72, 52, 54, 77, 118, 59, 80, 68, 56, 56, 59, 78, 90, 48, 71, 54, 52, 52, 100, 55, 75, 71, 63, 55, 58, 55, 91, 61, 75, 65, 60, 64, 74, 75, 77, 97, 102, 60, 58, 39, 58, 62, 72, 50, 54, 58, 47, 59, 63, 60, 67, 58, 48, 83, 55, 95, 65, 51, 79, 79, 93, 53, 73, 62, 61, 56, 52, 109, 75, 79, 50, 55, 71, 60, 56, 50, 68, 79, 84, 63, 83, 57, 54, 105, 53, 89, 65, 57, 54, 68, 58, 82, 49, 55, 86, 92, 59, 59, 69, 49, 75, 86, 55, 77, 43, 49, 56, 75, 76, 42, 65, 67, 58, 64, 81, 70, 62, 69, 64, 61, 63, 52, 83, 57, 62, 75, 58, 43, 65, 77, 59, 56, 76, 60, 55, 56, 49, 56, 73, 63, 55, 61, 69, 89, 64, 82, 56, 64, 64, 45, 66, 71, 50, 80, 102, 67, 57, 49, 47, 73, 114, 78, 87, 48, 67, 56, 81, 86, 49, 72, 73, 59, 53, 76, 65, 52, 60, 61, 72, 74, 66, 52, 60, 69, 51, 66, 56, 62, 66, 46, 61, 69, 63, 79, 58, 87, 64, 53, 34, 90, 66, 53, 103, 47, 68, 71, 44, 62, 40, 64, 94, 69, 72, 58, 90, 73, 91, 55, 60, 59, 66, 78, 67, 63, 56, 66, 39, 59, 61, 66, 65, 48, 89, 82, 93, 51, 69, 73, 58, 52, 51, 65, 81, 55, 100, 57, 74, 75, 137, 93, 66, 73, 66, 73, 61, 58, 67, 62, 46, 39, 41, 75, 79, 62, 81, 72, 93, 52, 48, 70, 55, 54, 78, 52, 54, 65, 77, 56, 61, 62, 63, 70, 64, 51, 58, 62, 95, 55, 47, 69, 95, 58, 65, 70, 51, 61, 46, 67, 40, 83, 69, 55, 72, 84, 64, 72, 51, 52, 59, 48, 69, 69, 49, 58, 81, 68, 53, 46, 68, 67, 91, 49, 63, 59, 59, 38, 60, 63, 48, 60, 49, 82, 63, 79, 76, 69, 58, 65, 64, 73, 52, 44, 73, 74, 116, 74, 45, 75, 91, 106, 79, 80, 75, 63, 83, 89, 105, 88, 64, 63, 75, 88, 74, 68, 53, 71, 54, 64, 119, 64, 65, 45, 75, 85, 55, 46, 76, 70, 55, 47, 65, 66, 94, 75, 52, 80, 53, 74, 75, 58, 108, 80, 81, 74, 56, 47, 64, 86, 59, 63, 65, 55, 84, 41, 61, 69, 48, 60, 45, 63, 68, 52, 91, 96, 65, 82, 53, 57, 57, 85, 103, 59, 50, 59, 49, 82, 65, 58, 70, 74, 72, 57, 32, 42, 71, 61, 75, 62, 58, 72, 65, 49, 72, 58, 58, 53, 45, 52, 90, 79, 53, 75, 64, 98, 63, 73, 61, 67, 60, 69, 68, 54, 57, 56, 41, 58, 60, 58, 58, 61, 63, 74, 50, 80, 77, 83, 70, 56, 52, 59, 85, 75, 66, 44, 61, 75, 68, 87, 77, 73, 101, 59, 78, 61, 43, 68, 72, 71, 69, 59, 68, 59, 51, 67, 75, 83, 56, 63, 67, 69, 62, 59, 83, 69, 85, 88, 46, 47, 70, 60, 71, 106, 60, 51, 73, 47, 63, 60, 75, 68, 63, 70, 78, 57, 56, 66, 69, 73, 43, 54, 55, 73, 56, 53, 85, 72, 82, 65, 68, 52, 66, 56, 67, 66, 50, 53, 65, 59, 57, 56, 60, 82, 59, 87, 60, 57, 70, 56, 81, 62, 67, 40, 59, 61, 49, 48, 74, 83, 68, 60, 60, 62, 59, 46, 64, 63, 67, 59, 69, 54, 74, 75, 95, 64, 69, 70, 62, 64, 64, 99, 57, 65, 60, 83, 101, 55, 61, 94, 49, 79, 69, 56, 70, 78, 46, 61, 86, 72, 67, 81, 70, 74, 72, 51, 63, 68, 45, 48, 78, 90, 67, 44, 75, 72, 62, 63, 66, 81, 59, 129, 72, 58, 57, 97, 62, 79, 49, 75, 55, 61, 68, 67, 69, 77, 79, 47, 65, 73, 61, 79, 72, 76, 73, 80, 58, 67, 78, 79, 61, 68, 75, 68, 64, 64, 149, 62, 67, 69, 55, 60, 69, 56, 65, 72, 61, 75, 63, 59, 62, 58, 67, 72, 69, 75, 62, 80, 49, 59, 69, 53, 69, 41, 37, 66, 77, 55, 63, 62, 73, 63, 63, 58, 76, 61, 130, 70, 75, 71, 63, 71, 72, 55, 59, 59, 60, 69, 49, 62, 46, 70, 70, 44, 63, 48, 92, 48, 49, 71, 42, 105, 67, 75, 66, 77, 67, 82, 75, 70, 77, 72, 50, 84, 63, 63, 58, 82, 70, 76, 57, 60, 60, 52, 60, 69, 56, 64, 60, 75, 98, 78, 58, 53, 62, 70, 68, 75, 74, 59, 83, 78, 57, 59, 68, 49, 62, 37, 60, 65, 64, 65, 104, 60, 61, 67, 65, 81, 47, 76, 58, 61, 79, 75, 67, 75, 61, 79, 55, 65, 49, 58, 65, 74, 88, 60, 70, 66, 60, 74, 56, 76, 63, 67, 61, 45, 70, 82, 57, 90, 53, 67, 74, 53, 62, 79, 56, 74, 46, 58, 81, 69, 62, 58, 69, 58, 62, 61, 62, 70, 73, 52, 64, 77, 75, 65, 70, 64, 78, 56, 63, 47, 53, 77, 78, 76, 67, 67, 59, 51, 46, 65, 66, 83, 60, 76, 72, 50, 61, 102, 64, 102, 61, 80, 49, 71, 92, 97, 53, 68, 68, 72, 67, 57, 65, 65, 60, 95, 63, 61, 70, 67, 64, 64, 46, 61, 58, 89, 62, 79, 68, 51, 55, 63, 96, 64, 78, 80, 75, 52, 77, 72, 64, 64, 74, 50, 62, 70, 69, 52, 55, 52, 77, 49, 56, 54, 61, 75, 68, 64, 80, 64, 67, 76, 63, 54, 54, 61, 51, 62, 67, 70, 96, 66, 52, 68, 59, 97, 63, 61, 48, 60, 57, 45, 62, 65, 53, 63, 79, 75, 56, 62, 36, 50, 63, 58, 47, 54, 62, 68, 71, 53, 80, 67, 81, 60, 51, 78, 54, 82, 62, 54, 78, 60, 72, 43, 55, 56, 98, 75, 59, 72, 99, 82, 69, 61, 69, 63, 51, 65, 68, 71, 73, 65, 72, 57, 63, 53, 86, 66, 69, 48, 83, 82, 60, 55, 61, 55, 74, 66, 71, 68, 43, 67, 58, 74, 74, 68, 57, 57, 66, 44, 46, 75, 51, 61, 62, 75, 52, 69, 76, 56, 80, 44, 78, 69, 73, 93, 55, 77, 57, 71, 65, 93, 49, 94, 69, 87, 63, 68, 63, 65, 66, 67, 67, 93, 71, 55, 85, 90, 76, 62, 71, 65, 68, 58, 55, 57, 56, 72, 70, 84, 71, 44, 64, 64, 62, 68, 72, 71, 72, 103, 58, 57, 68, 60, 58, 59, 73, 65, 42, 41, 78, 59, 65, 59, 59, 69, 67, 73, 63, 72, 69, 58, 66, 71, 78, 47, 51, 55, 75, 58, 59, 55, 57, 40, 63, 63, 58, 63, 75, 62, 50, 38, 80, 77, 62, 68, 41, 73, 70, 60, 36, 92, 72, 65, 67, 53, 54, 64, 39, 58, 70, 65, 57, 81, 81, 56, 70, 63, 48, 58, 47, 75, 57, 55, 74, 56, 56, 50, 58, 53, 59, 96, 102, 59, 53, 66, 64, 66, 107, 51, 52, 87, 72, 79, 91, 87, 60, 65, 86, 85, 50, 67, 67, 73, 63, 60, 84, 55, 50, 44, 77, 74, 58, 55, 74, 77, 49, 65, 87, 69, 84, 57, 59, 71, 56, 48, 74, 56, 78, 81, 64, 60, 52, 81, 87, 69, 125, 62, 57, 60, 60, 79, 59, 75, 53, 59, 79, 76, 70, 63, 60, 69, 123, 57, 55, 86, 77, 78, 75, 74, 73, 66, 57, 63, 58, 74, 66, 51, 72, 74, 53, 53, 56, 74, 56, 67, 61, 62, 71, 58, 64, 60, 77, 62, 68, 69, 56, 55, 71, 63, 61, 72, 54, 55, 62, 53, 70, 57, 84, 57, 62, 56, 61, 66, 84, 72, 55, 54, 85, 66, 53, 52, 65, 84, 67, 56, 88, 85, 68, 56, 61, 53, 62, 68, 59, 68, 66, 53, 69, 83, 55, 64, 60, 55, 63, 83, 53, 68, 79, 95, 65, 87, 58, 74, 60, 74, 55, 53, 90, 64, 62, 64, 62, 69, 68, 57, 73, 75, 62, 82, 67, 54, 52, 81, 51, 71, 88, 64, 77, 61, 67, 67, 54, 63, 71, 68, 59, 56, 52, 67, 65, 61, 53, 58, 75, 64, 85, 60, 73, 73, 56, 52, 90, 65, 66, 53, 70, 69, 55, 70, 53, 57, 90, 72, 71, 50, 59, 62, 60, 71, 60, 70, 88, 74, 60, 70, 62, 77, 78, 55, 48, 70, 57, 49, 62, 61, 69, 71, 44, 79, 76, 61, 40, 65, 67, 67, 66, 64, 50, 65, 63, 59, 64, 57, 64, 71, 62, 65, 91, 68, 51, 65, 69, 60, 59, 55, 62, 60, 57, 102, 67, 61, 60, 55, 68, 65, 40, 60, 59, 69, 57, 60, 67, 79, 84, 60, 56, 57, 57, 60, 46, 98, 73, 64, 59, 83, 68, 75, 81, 66, 78, 59, 66, 79, 72, 60, 66, 71, 40, 65, 56, 67, 54, 73, 80, 70, 71, 65, 84, 54, 74, 63, 65, 72, 63, 68, 66, 53, 43, 63, 57, 60, 67, 65, 66, 40, 68, 72, 60, 64, 57, 64, 58, 69, 53, 76, 51, 57, 56, 60, 46, 85, 67, 55, 54, 61, 66, 55, 86, 68, 55, 73, 77, 66, 71, 88, 68, 64, 46, 54, 58, 46, 60, 49, 72, 69, 85, 41, 76, 60, 78, 74, 64, 78, 55, 78, 71, 58, 67, 49, 55, 45, 40, 47, 60, 57, 84, 57, 57, 77, 52, 57, 49, 59, 98, 96, 64, 65, 89, 85, 52, 60, 47, 67, 47, 115, 73, 110, 98, 88, 68, 62, 68, 55, 62, 65, 50, 63, 63, 93, 74, 57, 60, 53, 61, 46, 62, 68, 94, 54, 97, 53, 101, 54, 66, 78, 59, 49, 61, 78, 62, 61, 63, 61, 83, 62, 52, 72, 62, 96, 41, 60, 55, 66, 50, 70, 72, 112, 74, 67, 49, 73, 50, 52, 63, 85, 68, 102, 70, 63, 70, 70, 61, 59, 59, 49, 48, 60, 54, 36, 56, 81, 87, 63, 45, 56, 80, 88, 47, 87, 69, 59, 65, 55, 48, 41, 62, 50, 50, 43, 57, 74, 73, 74, 58, 67, 65, 64, 67, 71, 61, 72, 49, 65, 67, 80, 61, 83, 57, 55, 87, 61, 75, 55, 56, 51, 87, 92, 59, 66, 46, 58, 85, 71, 71, 66, 79, 71, 86, 58, 74, 44, 71, 67, 53, 61, 74, 76, 65, 67, 66, 76, 57, 66, 74, 37, 52, 50, 58, 87, 54, 71, 95, 45, 68, 89, 53, 86, 63, 54, 52, 89, 51, 63, 55, 63, 66, 55, 58, 77, 68, 50, 66, 68, 73, 83, 63, 63, 65, 106, 78, 57, 71, 67, 49, 76, 76, 56, 45, 75, 81, 63, 66, 58, 93, 106, 30, 64, 56, 67, 60, 77, 68, 70, 100, 151, 79, 66, 72, 67, 67, 90, 47, 74, 76, 68, 42, 54, 46, 61, 64, 94, 76, 59, 56, 71, 71, 61, 64, 68, 80, 121, 58, 54, 73, 46, 54, 74, 56, 60, 56, 56, 64, 50, 45, 72, 47, 50, 64, 78, 47, 59, 63, 49, 58, 82, 53, 47, 61, 96, 51, 52, 65, 51, 62, 94, 67, 65, 63, 62, 68, 87, 69, 87, 74, 71, 69, 97, 78, 60, 60, 70, 67, 54, 60, 68, 42, 76, 77, 64, 60, 68, 42, 84, 70, 57, 80, 67, 65, 88, 52, 55, 72, 60, 47, 104, 98, 50, 86, 53, 83, 77, 46, 160, 55, 44, 73, 72, 58, 89, 69, 62, 92, 54, 54, 77, 72, 88, 64, 66, 70, 69, 61, 81, 64, 59, 73, 44, 83, 74, 68, 68, 65, 58, 53, 71, 53, 86, 59, 59, 94, 54, 82, 57, 54, 46, 63, 58, 51, 68, 43, 73, 72, 60, 71, 66, 61, 57, 52, 57, 45, 69, 28, 56, 58, 61, 60, 65, 99, 68, 46, 68, 59, 73, 62, 45, 82, 64, 94, 44, 64, 90, 59, 98, 61, 63, 83, 98, 79, 60, 57, 53, 57, 83, 84, 65, 65, 53, 60, 53, 48, 65, 59, 76, 46, 52, 41, 100, 61, 116, 81, 56, 71, 45, 58, 54, 81, 61, 56, 57, 43, 81, 70, 93, 38, 70, 57, 83, 70, 69, 58, 77, 72, 61, 84, 79, 65, 61, 66, 65, 66, 66, 62, 54, 83, 81, 79, 73, 58, 59, 72, 56, 61, 65, 65, 52, 39, 76, 58, 51, 92, 56, 61, 53, 59, 62, 49, 52, 58, 62, 40, 58, 65, 50, 85, 63, 83, 55, 56, 51, 61, 54, 94, 76, 86, 63, 116, 44, 65, 79, 51, 61, 72, 74, 69, 60, 65, 71, 76, 52, 146, 49, 42, 79, 75, 85, 84, 80, 61, 70, 63, 66, 58, 76, 57, 74, 54, 44, 69, 75, 66, 58, 51, 53, 57, 55, 48, 97, 57, 90, 69, 63, 38, 71, 64, 52, 108, 78, 73, 59, 56, 46, 48, 66, 70, 62, 74, 60, 61, 56, 65, 48, 83, 55, 55, 63, 109, 47, 68, 50, 41, 82, 74, 54, 77, 71, 78, 56, 76, 61, 58, 43, 63, 71, 76, 63, 56, 60, 76, 90, 82, 53, 53, 55, 78, 67, 60, 62, 61, 82, 55, 62, 72, 55, 66, 61, 63, 60, 41, 99, 89, 64, 82, 47, 48, 47, 53, 69, 75, 80, 79, 54, 59, 74, 73, 52, 47, 63, 68, 67, 60, 74, 67, 86, 45, 101, 71, 62, 73, 75, 83, 79, 79, 66, 62, 64, 66, 97, 66, 75, 56, 54, 92, 64, 65, 77, 65, 55, 71, 56, 68, 99, 74, 58, 78, 71, 47, 76, 55, 63, 68, 49, 62, 73, 54, 63, 51, 59, 62, 53, 72, 47, 62, 77, 86, 52, 71, 40, 57, 55, 122, 44, 66, 66, 68, 44, 69, 69, 84, 74, 70, 81, 85, 54, 76, 50, 79, 70, 76, 48, 70, 64, 65, 60, 57, 61, 70, 49, 82, 67, 64, 58, 56, 35, 60, 48, 69, 71, 103, 63, 74, 60, 70, 104, 78, 68, 101, 67, 54, 62, 57, 76, 80, 60, 94, 51, 59, 130, 56, 54, 71, 89, 61, 52, 63, 50, 71, 65, 76, 60, 60, 70, 80, 51, 78, 54, 62, 94, 70, 87, 68, 37, 67, 45, 56, 53, 76, 66, 64, 74, 48, 51, 61, 73, 74, 58, 70, 86, 57, 60, 44, 66, 57, 71, 84, 64, 52, 79, 64, 59, 59, 58, 49, 72, 96, 57, 103, 57, 61, 54, 58, 57, 50, 70, 77, 64, 56, 56, 51, 61, 77, 66, 60, 47, 53, 73, 72, 63, 40, 77, 58, 45, 66, 67, 72, 45, 86, 107, 74, 85, 69, 42, 81, 54, 62, 45, 94, 59, 82, 65, 62, 54, 62, 75, 68, 67, 55, 64, 71, 71, 66, 59, 53, 62, 56, 41, 61, 73, 62, 63, 103, 45, 55, 79, 50, 72, 70, 83, 67, 75, 67, 81, 50, 59, 39, 95, 66, 65, 56, 86, 54, 61, 40, 49, 84, 90, 58, 63, 80, 56, 48, 76, 48, 61, 63, 54, 58, 74, 64, 59, 79, 138, 62, 72, 75, 69, 51, 50, 74, 41, 64, 64, 55, 47, 63, 55, 63, 68, 71, 154, 58, 92, 54, 56, 59, 56, 90, 75, 61, 71, 63, 50, 64, 67, 72, 67, 89, 78, 76, 68, 48, 68, 57, 60, 74, 58, 76, 52, 79, 51, 53, 67, 79, 59, 59, 59, 49, 82, 49, 54, 81, 64, 60, 115, 53, 60, 77, 69, 64, 58, 72, 63, 71, 64, 93, 68, 60, 65, 63, 62, 81, 81, 91, 62, 57, 56, 58, 63, 55, 73, 61, 63, 61, 53, 46, 70, 57, 32, 68, 84, 68, 64, 53, 49, 62, 53, 67, 78, 64, 53, 62, 67, 66, 72, 61, 58, 53, 57, 58, 55, 95, 79, 65, 47, 57, 57, 66, 125, 63, 77, 64, 65, 69, 68, 84, 72, 60, 93, 63, 50, 104, 76, 91, 84, 61, 62, 73, 83, 66, 59, 59, 80, 63, 56, 64, 63, 59, 126, 85, 59, 71, 71, 58, 61, 95, 87, 51, 76, 68, 64, 68, 79, 60, 69, 80, 67, 62, 63, 50, 66, 86, 78, 74, 62, 59, 41, 75, 72, 54, 47, 83, 72, 55, 66, 60, 82, 58, 43, 58, 53, 67, 68, 122, 61, 70, 82, 46, 57, 85, 68, 59, 69, 76, 73, 63, 91, 56, 70, 86, 75, 61, 58, 41, 44, 49, 69, 58, 58, 61, 75, 69, 55, 55, 60, 68, 68, 62, 61, 63, 48, 69, 78, 111, 55, 78, 74, 72, 81, 94, 66, 36, 60, 64, 69, 93, 53, 59, 88, 62, 65, 69, 68, 59, 66, 76, 76, 57, 64, 56, 76, 65, 59, 73, 88, 77, 62, 56, 79, 69, 55, 75, 75, 54, 73, 56, 65, 47, 57, 57, 66, 46, 44, 42, 65, 77, 60, 71, 76, 52, 61, 57, 62, 69, 57, 54, 46, 44, 62, 76, 68, 44, 60, 64, 53, 62, 53, 73, 41, 61, 68, 65, 66, 69, 117, 78, 65, 52, 56, 71, 76, 46, 65, 82, 80, 47, 64, 59, 54, 52, 73, 64, 65, 47, 59, 60, 57, 71, 70, 58, 49, 70, 55, 63, 53, 58, 59, 63, 47, 73, 51, 97, 55, 90, 80, 72, 92, 65, 54, 58, 59, 75, 57, 52, 51, 68, 61, 67, 65, 53, 55, 64, 67, 84, 68, 76, 73, 55, 53, 69, 50, 74, 68, 50, 58, 69, 79, 71, 49, 57, 67, 77, 73, 56, 70, 72, 113, 67, 78, 54, 57, 48, 88, 73, 58, 62, 74, 71, 62, 63, 51, 55, 55, 69, 101, 72, 68, 71, 57, 64, 75, 67, 77, 68, 58, 86, 68, 62, 70, 68, 75, 85, 67, 67, 86, 89, 71, 78, 68, 64, 61, 73, 50, 80, 41, 62, 57, 67, 64, 57, 63, 53, 75, 70, 56, 97, 61, 67, 52, 73, 70, 56, 62, 101, 61, 51, 53, 63, 74, 67, 62, 64, 59, 56, 67, 65, 51, 71, 75, 67, 58, 58, 76, 48, 68, 49, 62, 62, 60, 73, 72, 59, 84, 65, 61, 52, 57, 57, 66, 53, 74, 95, 62, 76, 63, 49, 96, 73, 62, 60, 66, 63, 65, 54, 37, 77, 51, 47, 63, 93, 54, 60, 49, 73, 57, 67, 57, 54, 46, 62, 55, 60, 55, 49, 71, 59, 51, 59, 80, 58, 31, 64, 67, 58, 70, 72, 54, 61, 53, 72, 51, 57, 66, 57, 62, 55, 70, 57, 61, 68, 81, 47, 92, 50, 71, 99, 83, 61, 56, 55, 46, 50, 54, 71, 72, 71, 62, 46, 88, 57, 47, 70, 46, 71, 54, 65, 86, 77, 61, 66, 57, 66, 78, 68, 54, 90, 69, 67, 71, 65, 58, 45, 63, 63, 45, 59, 67, 59, 60, 54, 83, 66, 69, 53, 62, 72, 47, 90, 96, 55, 61, 65, 67, 68, 69, 69, 47, 49, 86, 59, 65, 53, 45, 65, 59, 55, 68, 50, 59, 70, 55, 53, 53, 71, 63, 42, 63, 90, 71, 68, 77, 78, 48, 52, 89, 57, 76, 70, 55, 63, 69, 55, 48, 64, 95, 83, 71, 49, 55, 110, 75, 61, 64, 70, 70, 57, 61, 68, 59, 50, 62, 63, 38, 78, 52, 61, 57, 68, 70, 62, 62, 55, 71, 92, 67, 81, 57, 53, 65, 50, 63, 68, 73, 52, 79, 64, 43, 105, 61, 79, 59, 69, 59, 71, 62, 59, 56, 79, 59, 50, 94, 40, 70, 68, 44, 61, 75, 62, 115, 51, 78, 49, 61, 108, 91, 97, 63, 60, 83, 64, 79, 61, 55, 51, 60, 64, 64, 74, 46, 62, 77, 53, 60, 70, 62, 52, 69, 60, 71, 65, 65, 66, 55, 71, 71, 91, 81, 58, 62, 67, 75, 74, 69, 68, 81, 63, 72, 64, 72, 77, 67, 57, 56, 52, 79, 66, 49, 66, 82, 93, 85, 46, 61, 56, 60, 58, 47, 60, 71, 43, 72, 79, 69, 71, 63, 62, 65, 82, 71, 75, 50, 66, 101, 69, 50, 79, 66, 70, 78, 53, 50, 50, 77, 53, 52, 44, 68, 50, 73, 85, 74, 47, 80, 66, 51, 69, 54, 62, 66, 74, 64, 99, 64, 78, 70, 74, 60, 58, 59, 71, 61, 61, 59, 58, 72, 51, 66, 68, 77, 71, 79, 60, 63, 53, 61, 55, 75, 106, 63, 56, 85, 66, 76, 61, 61, 65, 60, 55, 59, 75, 74, 58, 71, 57, 69, 77, 71, 54, 56, 57, 83, 58, 54, 65, 56, 67, 59, 63, 61, 66, 72, 98, 50, 63, 70, 54, 65, 91, 62, 72, 57, 55, 50, 88, 79, 67, 79, 49, 56, 53, 69, 119, 66, 50, 68, 55, 59, 95, 71, 48, 57, 49, 74, 60, 62, 76, 107, 44, 59, 56, 92, 52, 62, 51, 56, 52, 58, 77, 78, 83, 51, 95, 64, 73, 60, 60, 69, 62, 66, 70, 59, 60, 51, 56, 49, 42, 61, 59, 73, 65, 65, 77, 54, 56, 70, 59, 57, 58, 78, 69, 68, 48, 58, 73, 65, 63, 69, 79, 66, 48, 60, 56, 43, 60, 56, 56, 58, 61, 58, 70, 66, 59, 46, 69, 74, 74, 45, 71, 56, 82, 60, 58, 68, 61, 58, 68, 62, 85, 64, 53, 69, 48, 58, 76, 60, 80, 67, 69, 58, 63, 63, 79, 52, 59, 91, 66, 54, 55, 78, 68, 87, 53, 72, 48, 52, 82, 61, 61, 57, 77, 75, 63, 54, 69, 61, 70, 36, 68, 79, 53, 55, 65, 65, 69, 69, 69, 61, 60, 58, 77, 74, 85, 103, 92, 69, 66, 67, 70, 65, 56, 70, 61, 64, 57, 77, 51, 59, 53, 72, 62, 74, 63, 52, 50, 59, 51, 58, 57, 59, 62, 73, 58, 71, 59, 77, 72, 68, 56, 60, 62, 63, 65, 56, 64, 64, 60, 62, 53, 47, 84, 56, 68, 77, 57, 73, 82, 57, 62, 74, 67, 63, 61, 62, 74, 81, 59, 56, 65, 65, 82, 65, 90, 56, 72, 79, 59, 73, 56, 64, 68, 74, 60, 49, 59, 48, 52, 46, 73, 49, 67, 61, 59, 46, 58, 47, 61, 74, 56, 57, 84, 62, 61, 68, 66, 78, 45, 89, 97, 80, 51, 82, 66, 62, 59, 74, 69, 98, 72, 54, 62, 69, 64, 48, 68, 67, 71, 67, 69, 141, 71, 71, 57, 78, 70, 55, 76, 71, 59, 55, 69, 56, 65, 50, 52, 80, 44, 79, 96, 64, 58, 53, 72, 66, 64, 59, 73, 73, 63, 57, 59, 74, 79, 69, 61, 60, 61, 76, 85, 74, 58, 72, 70, 91, 70, 66, 70, 70, 90, 63, 50, 55, 65, 54, 53, 60, 51, 68, 83, 82, 64, 75, 61, 69, 59, 53, 55, 61, 53, 66, 58, 84, 75, 65, 61, 62, 48, 73, 50, 69, 57, 74, 66, 56, 72, 63, 79, 54, 54, 62, 67, 62, 55, 69, 56, 48, 83, 61, 56, 64, 59, 71, 54, 67, 62, 61, 53, 54, 58, 74, 58, 66, 69, 68, 59, 73, 59, 73, 53, 67, 75, 40, 51, 66, 62, 64, 69, 64, 63, 53, 42, 86, 62, 72, 70, 129, 90, 71, 48, 69, 79, 57, 61, 54, 81, 99, 57, 58, 80, 57, 60, 55, 83, 59, 58, 88, 45, 66, 60, 96, 58, 59, 58, 72, 67, 62, 57, 60, 53, 76, 62, 94, 65, 58, 71, 66, 60, 61, 57, 59, 60, 68, 76, 75, 46, 62, 65, 70, 52, 87, 73, 76, 52, 71, 68, 51, 71, 64, 61, 42, 57, 56, 60, 93, 54, 48, 58, 74, 67, 52, 64, 62, 59, 59, 50, 47, 60, 84, 84, 68, 65, 60, 54, 79, 56, 65, 53, 93, 73, 57, 81, 73, 70, 39, 84, 67, 59, 54, 80, 64, 48, 64, 69, 65, 70, 61, 66, 79, 76, 49, 72, 73, 62, 88, 63, 79, 64, 57, 57, 59, 86, 65, 63, 63, 71, 96, 53, 64, 69, 40, 67, 58, 66, 76, 68, 70, 65, 45, 80, 79, 77, 69, 72, 62, 64, 52, 63, 73, 65, 68, 85, 54, 81, 66, 49, 70, 75, 58, 52, 60, 69, 48, 47, 48, 81, 60, 58, 58, 64, 57, 57, 73, 53, 87, 81, 63, 58, 66, 77, 67, 54, 57, 71, 70, 74, 57, 63, 58, 68, 83, 71, 118, 74, 77, 54, 101, 74, 71, 75, 69, 66, 66, 67, 66, 84, 39, 63, 63, 71, 68, 68, 65, 63, 45, 58, 61, 47, 63, 78, 83, 57, 88, 54, 56, 67, 64, 58, 57, 72, 55, 82, 83, 69, 43, 67, 72, 64, 72, 70, 59, 58, 66, 80, 57, 70, 72, 47, 85, 79, 59, 75, 56, 63, 59, 74, 76, 71, 73, 69, 70, 80, 57, 58, 83, 67, 79, 68, 52, 78, 59, 97, 54, 61, 63, 60, 98, 72, 85, 58, 72, 62, 61, 88, 62, 77, 65, 57, 54, 67, 69, 59, 73, 39, 65, 63, 92, 75, 84, 53, 57, 70, 73, 71, 96, 52, 55, 47, 101, 70, 69, 78, 69, 70, 67, 67, 79, 55, 60, 63, 79, 78, 105, 64, 70, 54, 59, 56, 74, 64, 60, 74, 76, 73, 56, 50, 61, 31, 36, 72, 73, 56, 62, 51, 55, 49, 60, 75, 53, 78, 78, 52, 55, 53, 52, 80, 123, 61, 84, 62, 53, 52, 89, 66, 69, 69, 65, 60, 75, 77, 80, 83, 67, 91, 47, 82, 45, 67, 63, 59, 55, 71, 59, 90, 77, 58, 55, 51, 70, 84, 88, 94, 57, 74, 69, 53, 50, 66, 64, 75, 81, 65, 80, 100, 54, 59, 83, 91, 52, 68, 67, 61, 54, 62, 88, 47, 57, 54, 87, 62, 77, 61, 68, 57, 52, 42, 67, 71, 59, 59, 37, 76, 70, 58, 54, 77, 61, 73, 35, 76, 79, 50, 59, 69, 56, 72, 48, 50, 69, 58, 56, 68, 67, 61, 52, 63, 70, 51, 79, 108, 42, 59, 71, 71, 69, 54, 63, 68, 74, 73, 79, 85, 51, 50, 69, 113, 66, 66, 50, 65, 65, 72, 55, 68, 74, 66, 72, 78, 66, 79, 49, 52, 59, 49, 60, 56, 97, 51, 54, 61, 97, 63, 45, 79, 64, 81, 62, 63, 73, 46, 65, 61, 60, 51, 53, 63, 54, 56, 42, 83, 81, 59, 75, 54, 75, 74, 80, 72, 50, 61, 56, 75, 86, 78, 43, 63, 52, 65, 60, 60, 78, 58, 81, 85, 63, 65, 50, 72, 61, 59, 70, 64, 82, 61, 77, 79, 64, 59, 73, 64, 64, 66, 77, 48, 63, 64, 69, 72, 66, 52, 77, 63, 60, 54, 54, 69, 60, 65, 76, 54, 70, 73, 56, 65, 60, 59, 53, 71, 58, 45, 51, 76, 81, 81, 60, 55, 67, 54, 64, 73, 58, 62, 62, 63, 75, 69, 68, 67, 68, 66, 64, 57, 72, 63, 88, 76, 58, 66, 70, 64, 59, 69, 61, 60, 58, 54, 68, 59, 49, 64, 51, 64, 68, 58, 56, 57, 59, 75, 75, 64, 93, 67, 75, 71, 56, 98, 59, 59, 69, 72, 51, 54, 63, 64, 63, 54, 57, 54, 58, 66, 61, 60, 59, 60, 96, 65, 63, 49, 57, 66, 57, 82, 56, 60, 69, 82, 58, 59, 55, 68, 54, 62, 74, 45, 65, 64, 56, 52, 87, 57, 86, 75, 60, 80, 65, 70, 54, 63, 74, 56, 65, 60, 66, 68, 71, 62, 68, 62, 64, 71, 49, 81, 82, 74, 68, 58, 66, 74, 65, 57, 62, 98, 54, 59, 76, 75, 82, 83, 55, 66, 69, 56, 51, 71, 78, 79, 87, 62, 64, 57, 46, 64, 74, 57, 61, 55, 69, 61, 44, 48, 59, 91, 86, 54, 49, 63, 59, 68, 78, 66, 90, 74, 69, 61, 64, 55, 70, 84, 58, 74, 69, 73, 66, 59, 72, 85, 68, 61, 55, 61, 68, 111, 51, 61, 61, 62, 62, 67, 63, 68, 62, 63, 52, 60, 55, 70, 59, 64, 73, 59, 65, 65, 60, 62, 60, 107, 62, 69, 55, 64, 56, 62, 76, 61, 83, 74, 70, 59, 62, 56, 58, 137, 59, 53, 104, 97, 68, 61, 42, 53, 73, 59, 142, 108, 62, 62, 58, 62, 57, 65, 92, 55, 63, 75, 78, 77, 59, 69, 69, 68, 66, 70, 69, 58, 67, 73, 59, 52, 57, 48, 58, 58, 67, 67, 74, 62, 82, 59, 68, 75, 61, 76, 90, 62, 97, 55, 62, 59, 66, 97, 83, 57, 62, 105, 90, 55, 61, 70, 68, 61, 57, 69, 64, 66, 49, 61, 62, 61, 52, 51, 66, 74, 64, 106, 65, 62, 63, 67, 62, 59, 56, 56, 64, 69, 56, 66, 60, 66, 76, 62, 73, 62, 76, 54, 61, 62, 71, 78, 65, 50, 68, 62, 70, 70, 70, 68, 64, 56, 63, 62, 50, 54, 76, 71, 61, 67, 58, 61, 59, 68, 64, 61, 65, 57, 64, 62, 72, 58, 90, 62, 66, 58, 47, 67, 74, 66, 60, 59, 71, 70, 87, 64, 52, 87, 57, 60, 63, 64, 59, 58, 60, 112, 57, 60, 59, 65, 64, 108, 58, 63, 67, 61, 65, 67, 61, 58, 79, 77, 57, 56, 66, 73, 50, 88, 65, 64, 64, 60, 59, 63, 65, 60, 64, 63, 58, 59, 59, 53, 58, 67, 75, 64, 60, 67, 80, 71, 63, 66, 62, 79, 83, 65, 74, 59, 64, 59, 75, 56, 60, 65, 67, 65, 61, 65, 120, 69, 56, 65, 74, 73, 56, 107, 60, 76, 76, 68, 65, 68, 53, 60, 69, 62, 77, 64, 71, 70, 66, 63, 72, 63, 55, 62, 62, 68, 74, 50, 63, 57, 66, 62, 64, 85, 64, 69, 56, 66, 61, 59, 65, 62, 74, 50, 69, 70, 60, 68, 68, 60, 68, 65, 57, 66, 66, 63, 59, 55, 62, 63, 61, 66, 69, 71, 101, 62, 62, 69, 74, 60, 56, 53, 82, 79, 55, 64, 45, 79, 79, 68, 60, 58, 66, 75, 64, 63, 65, 52, 78, 67, 74, 66, 71, 38, 73, 63, 63, 62, 54, 63, 65, 69, 58, 72, 60, 53, 86, 66, 60, 62, 51, 61, 59, 66, 65, 66, 59, 69, 61, 63, 66, 56, 61, 61, 59, 50, 56, 61, 57, 59, 65, 61, 72, 51, 65, 58, 61, 62, 87, 54, 60, 68, 50, 65, 67, 62, 55, 64, 57, 69, 72, 45, 62, 86, 62, 58, 50, 58, 67, 52, 92, 63, 70, 72, 65, 86, 67, 62, 70, 63, 66, 65, 58, 77, 60, 67, 61, 66, 88, 82, 63, 64, 56, 65, 61, 68, 61, 66, 59, 56, 67, 61, 61, 55, 75, 47, 74, 68, 67, 60, 76, 66, 61, 62, 65, 61, 56, 84, 90, 59, 59, 65, 50, 60, 72, 61, 60, 61, 55, 62, 58, 64, 57, 57, 70, 50, 57, 36, 56, 58, 71, 60, 63, 55, 54, 55, 87, 72, 66, 53, 94, 66, 55, 58, 65, 59, 68, 56, 57, 59, 61, 73, 55, 56, 77, 73, 59, 76, 62, 55, 81, 71, 66, 58, 67, 60, 61, 65, 63, 61, 60, 71, 74, 67, 53, 47, 58, 62, 70, 52, 114, 62, 57, 57, 68, 68, 70, 60, 75, 75, 53, 60, 55, 61, 60, 59, 69, 69, 54, 65, 65, 56, 65, 61, 53, 55, 62, 58, 59, 60, 70, 67, 65, 59, 59, 56, 77, 60, 72, 76, 62, 58, 77, 72, 91, 62, 56, 71, 60, 62, 56, 57, 64, 66, 67, 69, 61, 62, 61, 61, 72, 48, 57, 65, 64, 60, 68, 61, 60, 72, 82, 63, 60, 70, 66, 53, 67, 69, 58, 60, 67, 60, 125, 67, 64, 63, 50, 59, 77, 54, 62, 59, 60, 77, 72, 64, 79, 80, 66, 83, 76, 58, 67, 77, 65, 57, 72, 78, 84, 57, 45, 66, 60, 67, 64, 93, 79, 58, 71, 71, 67, 80, 51, 66, 82, 65, 63, 65, 71, 74, 64, 65, 114, 57, 90, 60, 58, 71, 65, 81, 59, 68, 68, 57, 71, 67, 60, 50, 58, 59, 69, 64, 65, 59, 74, 66, 92, 54, 58, 66, 54, 61, 61, 61, 65, 65, 62, 65, 70, 66, 65, 63, 62, 63, 73, 61, 67, 63, 62, 64, 72, 74, 56, 105, 74, 57, 62, 63, 60, 55, 62, 95, 76, 59, 67, 75, 66, 51, 62, 68, 56, 67, 66, 69, 69, 66, 65, 76, 68, 57, 60, 81, 58, 72, 86, 77, 53, 61, 73, 65, 77, 60, 58, 59, 66, 64, 73, 62, 63, 71, 53, 79, 71, 62, 67, 67, 62, 55, 61, 71, 63, 64, 66, 59, 65, 75, 64, 64, 56, 106, 77, 62, 71, 62, 69, 65, 61, 65, 59, 61, 61, 53, 57, 60, 63, 70, 91, 74, 69, 58, 57, 61, 64, 70, 58, 71, 85, 72, 60, 76, 58, 74, 83, 51, 69, 56, 84, 61, 68, 68, 62, 62, 58, 59, 71, 81, 82, 75, 106, 67, 63, 48, 59, 52, 75, 58, 56, 66, 64, 57, 52, 60, 66, 88, 58, 68, 71, 60, 71, 53, 55, 58, 59, 59, 64, 58, 60, 97, 64, 55, 103, 73, 56, 64, 61, 63, 63, 61, 62, 65, 57, 63, 61, 58, 61, 68, 65, 88, 75, 62, 56, 58, 59, 51, 63, 59, 70, 72, 65, 64, 59, 73, 52, 82, 65, 65, 61, 54, 60, 84, 64, 54, 75, 47, 65, 55, 57, 60, 64, 58, 60, 60, 51, 58, 72, 60, 78, 68, 65, 71, 74, 67, 55, 70, 63, 54, 61, 57, 55, 76, 58, 56, 68, 103, 50, 78, 60, 67, 61, 60, 59, 69, 56, 94, 60, 63, 71, 82, 50, 60, 53, 57, 56, 51, 60, 59, 63, 68, 66, 56, 62, 63, 52, 61, 66, 63, 70, 66, 65, 56, 69, 69, 62, 70, 59, 52, 65, 58, 53, 63, 68, 86, 54, 122, 122, 58, 97, 63, 66, 76, 55, 65, 56, 89, 88, 59, 64, 57, 50, 64, 77, 83, 75, 75, 74, 70, 65, 80, 74, 53, 64, 69, 79, 46, 80, 63, 76, 60, 51, 63, 54, 78, 69, 55, 60, 59, 80, 68, 49, 54, 76, 74, 50, 64, 58, 74, 82, 46, 69, 56, 78, 42, 56, 79, 62, 50, 53, 86, 68, 57, 61, 88, 47, 69, 73, 86, 64, 49, 61, 69, 73, 77, 68, 60, 76, 57, 81, 68, 75, 69, 60, 53, 56, 65, 63, 54, 58, 69, 62, 67, 60, 79, 64, 64, 101, 85, 50, 42, 48, 62, 59, 70, 66, 72, 64, 65, 79, 52, 63, 60, 88, 62, 66, 51, 66, 64, 54, 59, 68, 54, 51, 74, 83, 59, 75, 63, 71, 47, 56, 71, 79, 74, 49, 90, 80, 72, 56, 69, 47, 106, 75, 65, 62, 91, 75, 67, 47, 67, 57, 59, 60, 69, 51, 40, 56, 54, 87, 63, 54, 56, 50, 61, 50, 79, 83, 54, 85, 37, 52, 78, 60, 47, 87, 56, 69, 76, 79, 70, 67, 103, 49, 68, 56, 73, 79, 51, 54, 106, 61, 57, 78, 60, 66, 56, 81, 65, 63, 71, 40, 111, 99, 56, 72, 62, 74, 67, 41, 72, 77, 73, 62, 48, 66, 61, 66, 59, 60, 65, 57, 51, 70, 65, 82, 65, 52, 55, 64, 64, 58, 47, 78, 54, 85, 84, 51, 68, 77, 75, 66, 53, 69, 54, 54, 65, 86, 91, 55, 90, 81, 62, 66, 82, 57, 89, 68, 60, 77, 53, 73, 69, 71, 74, 57, 59, 52, 65, 74, 56, 46, 53, 66, 58, 47, 71, 51, 78, 69, 78, 65, 48, 85, 58, 49, 64, 55, 64, 71, 53, 77, 63, 52, 53, 72, 89, 62, 56, 63, 104, 62, 66, 72, 47, 59, 77, 55, 58, 72, 82, 74, 60, 70, 54, 58, 61, 77, 68, 77, 48, 61, 73, 56, 59, 50, 68, 70, 69, 49, 69, 49, 62, 72, 58, 57, 50, 60, 42, 69, 45, 68, 67, 80, 63, 97, 66, 59, 58, 93, 57, 90, 80, 64, 88, 64, 72, 65, 74, 34, 67, 60, 50, 49, 57, 58, 79, 69, 83, 72, 62, 56, 89, 62, 64, 56, 61, 64, 69, 96, 92, 69, 68, 64, 64, 66, 46, 101, 58, 56, 53, 65, 68, 59, 51, 54, 74, 54, 55, 47, 78, 52, 83, 65, 65, 65, 64, 76, 54, 54, 72, 69, 60, 69, 51, 56, 60, 51, 62, 52, 53, 73, 67, 52, 73, 66, 82, 65, 67, 55, 81, 80, 48, 50, 70, 91, 54, 59, 85, 64, 53, 76, 71, 55, 54, 62, 57, 47, 75, 74, 59, 66, 115, 68, 68, 68, 58, 71, 69, 69, 58, 57, 70, 79, 66, 53, 49, 54, 64, 65, 73, 70, 40, 63, 53, 65, 93, 64, 44, 41, 73, 50, 60, 65, 45, 38, 62, 65, 79, 63, 50, 47, 60, 57, 86, 72, 65, 67, 80, 71, 48, 73, 49, 70, 50, 85, 74, 59, 72, 86, 76, 65, 69, 58, 68, 58, 69, 58, 78, 91, 48, 77, 56, 79, 67, 62, 72, 56, 67, 96, 55, 61, 67, 68, 58, 52, 76, 61, 63, 65, 65, 94, 69, 72, 84, 69, 66, 58, 76, 73, 63, 90, 49, 56, 56, 59, 73, 36, 78, 68, 78, 58, 64, 65, 58, 49, 80, 100, 67, 56, 66, 64, 63, 54, 65, 74, 65, 52, 84, 53, 56, 66, 101, 64, 81, 53, 55, 62, 69, 57, 80, 59, 71, 54, 58, 72, 64, 62, 70, 67, 58, 72, 96, 79, 58, 53, 72, 56, 73, 63, 55, 51, 70, 42, 59, 57, 65, 65, 144, 76, 59, 68, 75, 60, 55, 61, 65, 66, 65, 72, 50, 59, 60, 67, 70, 61, 59, 63, 47, 79, 70, 72, 67, 66, 90, 55, 88, 56, 50, 98, 55, 51, 49, 59, 65, 60, 93, 92, 55, 81, 67, 66, 75, 100, 71, 54, 92, 80, 72, 82, 47, 72, 45, 52, 56, 67, 70, 123, 63, 64, 100, 63, 62, 66, 61, 57, 66, 84, 88, 61, 45, 71, 62, 66, 72, 79, 71, 65, 86, 61, 82, 79, 70, 62, 53, 46, 70, 58, 63, 41, 62, 74, 58, 65, 70, 62, 57, 58, 84, 65, 68, 52, 57, 62, 61, 81, 58, 67, 78, 63, 63, 78, 65, 61, 69, 80, 51, 69, 74, 46, 73, 50, 74, 94, 65, 52, 67, 60, 42, 61, 72, 64, 52, 47, 59, 65, 77, 55, 67, 65, 73, 51, 68, 66, 79, 82, 62, 53, 56, 69, 77, 69, 65, 59, 61, 72, 69, 49, 69, 56, 50, 60, 68, 53, 57, 58, 50, 82, 72, 64, 72, 57, 69, 62, 78, 67, 61, 48, 69, 65, 65, 51, 49, 101, 86, 60, 74, 77, 64, 53, 58, 63, 68, 72, 67, 61, 59, 76, 55, 87, 36, 63, 58, 59, 74, 64, 68, 72, 61, 72, 53, 63, 58, 75, 46, 61, 63, 91, 57, 60, 55, 70, 66, 82, 61, 69, 103, 78, 71, 65, 53, 74, 61, 55, 37, 56, 59, 56, 79, 61, 74, 87, 56, 75, 63, 53, 70, 77, 82, 49, 57, 65, 71, 50, 66, 69, 85, 72, 83, 62, 87, 49, 48, 70, 51, 77, 64, 45, 63, 64, 72, 55, 61, 58, 86, 50, 47, 118, 49, 43, 45, 62, 56, 50, 71, 57, 47, 72, 77, 75, 54, 70, 65, 66, 92, 91, 67, 61, 57, 47, 62, 68, 85, 58, 55, 45, 55, 59, 84, 71, 73, 66, 85, 52, 96, 61, 44, 59, 58, 64, 48, 67, 67, 69, 72, 66, 56, 78, 58, 54, 47, 53, 62, 63, 74, 53, 67, 59, 46, 52, 64, 59, 65, 55, 63, 63, 67, 60, 75, 64, 62, 61, 69, 66, 60, 66, 50, 53, 84, 69, 62, 40, 70, 58, 87, 60, 65, 69, 67, 48, 80, 81, 66, 56, 73, 93, 79, 67, 60, 42, 102, 64, 80, 90, 74, 67, 59, 75, 70, 103, 113, 66, 57, 53, 62, 73, 62, 64, 76, 53, 94, 60, 61, 48, 57, 72, 70, 44, 66, 59, 62, 49, 69, 74, 66, 66, 79, 58, 89, 79, 66, 57, 73, 62, 79, 68, 66, 61, 60, 63, 54, 67, 60, 53, 52, 61, 64, 70, 83, 66, 56, 71, 64, 62, 51, 84, 73, 76, 69, 59, 68, 63, 55, 62, 55, 72, 64, 89, 61, 68, 65, 64, 58, 67, 104, 78, 63, 69, 63, 64, 55, 103, 61, 60, 73, 77, 74, 59, 102, 66, 51, 65, 56, 55, 72, 54, 105, 58, 76, 50, 84, 84, 51, 51, 69, 78, 65, 82, 69, 67, 68, 90, 74, 73, 52, 62, 76, 74, 54, 65, 58, 59, 58, 54, 58, 79, 67, 87, 75, 59, 67, 49, 61, 65, 62, 57, 73, 52, 77, 63, 57, 58, 58, 66, 59, 50, 60, 52, 45, 49, 72, 65, 50, 51, 62, 73, 129, 52, 61, 87, 63, 63, 97, 76, 63, 60, 63, 68, 57, 64, 54, 66, 76, 75, 49, 92, 71, 40, 63, 68, 66, 80, 57, 74, 44, 66, 60, 62, 60, 56, 62, 69, 80, 63, 48, 70, 112, 71, 65, 68, 64, 70, 56, 69, 47, 70, 45, 52, 64, 61, 61, 71, 67, 59, 70, 66, 82, 81, 53, 53, 59, 42, 53, 57, 64, 86, 77, 54, 65, 71, 62, 54, 54, 57, 99, 66, 63, 67, 54, 52, 51, 59, 61, 48, 54, 57, 46, 56, 64, 59, 75, 56, 62, 54, 66, 54, 78, 72, 51, 65, 70, 60, 73, 37, 60, 53, 61, 68, 58, 69, 46, 51, 67, 63, 73, 49, 73, 123, 84, 68, 83, 59, 79, 79, 67, 68, 84, 62, 55, 82, 68, 67, 56, 78, 68, 61, 44, 74, 71, 46, 64, 63, 60, 54, 105, 49, 65, 85, 68, 75, 59, 64, 76, 65, 80, 53, 70, 63, 53, 69, 77, 76, 69, 59, 68, 64, 56, 62, 66, 60, 39, 52, 60, 53, 80, 55, 66, 57, 55, 61, 57, 87, 70, 63, 76, 77, 76, 52, 76, 70, 98, 69, 74, 53, 62, 48, 60, 74, 67, 72, 59, 83, 66, 62, 89, 83, 80, 72, 82, 62, 58, 50, 51, 57, 49, 48, 47, 99, 73, 59, 60, 67, 58, 51, 54, 59, 63, 71, 76, 57, 58, 69, 65, 69, 92, 61, 72, 82, 62, 76, 64, 59, 65, 69, 66, 69, 62, 80, 81, 60, 65, 70, 59, 68, 44, 62, 69, 55, 57, 57, 59, 60, 58, 67, 59, 61, 97, 66, 59, 77, 59, 59, 37, 56, 55, 61, 67, 61, 57, 62, 64, 62, 72, 51, 58, 65, 66, 67, 66, 72, 74, 62, 50, 52, 68, 57, 70, 55, 61, 54, 66, 64, 57, 77, 89, 68, 104, 60, 55, 54, 58, 91, 104, 83, 84, 74, 65, 79, 65, 79, 52, 49, 63, 70, 62, 53, 70, 73, 55, 70, 73, 62, 74, 60, 65, 75, 48, 68, 67, 45, 81, 73, 65, 64, 56, 54, 61, 69, 72, 71, 67, 78, 97, 64, 65, 65, 64, 67, 63, 75, 56, 49, 65, 80, 67, 82, 65, 50, 70, 36, 73, 62, 61, 55, 53, 56, 66, 66, 58, 91, 58, 64, 65, 47, 48, 58, 67, 62, 59, 63, 61, 54, 55, 69, 72, 59, 66, 61, 78, 71, 67, 53, 77, 75, 56, 68, 66, 56, 67, 68, 70, 65, 65, 88, 64, 65, 71, 48, 63, 62, 104, 108, 65, 55, 64, 73, 78, 64, 64, 81, 82, 88, 64, 89, 81, 70, 57, 63, 62, 59, 70, 62, 60, 61, 71, 65, 51, 63, 64, 65, 65, 47, 48, 57, 58, 60, 66, 43, 64, 56, 66, 63, 53, 67, 70, 70, 58, 44, 102, 73, 50, 59, 119, 87, 62, 81, 36, 63, 53, 70, 55, 58, 55, 43, 72, 69, 72, 50, 43, 75, 62, 52, 64, 65, 47, 54, 77, 61, 63, 84, 44, 59, 69, 70, 105, 67, 57, 76, 55, 76, 83, 65, 65, 58, 65, 62, 82, 66, 54, 51, 87, 41, 74, 90, 57, 61, 62, 71, 72, 64, 63, 114, 61, 58, 65, 60, 86, 57, 56, 66, 55, 53, 50, 57, 52, 80, 63, 57, 56, 65, 55, 69, 66, 57, 64, 54, 69, 70, 56, 61, 51, 61, 58, 56, 65, 51, 55, 74, 90, 64, 71, 60, 54, 58, 54, 64, 64, 66, 61, 71, 67, 67, 64, 66, 67, 68, 54, 71, 72, 64, 68, 85, 58, 62, 66, 53, 52, 75, 60, 53, 55, 65, 75, 80, 60, 69, 54, 59, 77, 48, 55, 56, 83, 67, 53, 56, 66, 70, 94, 53, 59, 68, 70, 63, 58, 70, 48, 57, 55, 61, 63, 66, 86, 56, 76, 67, 62, 66, 76, 70, 75, 60, 66, 49, 84, 68, 88, 64, 80, 63, 65, 47, 61, 48, 59, 56, 70, 126, 55, 59, 55, 62, 68, 68, 58, 57, 63, 34, 56, 86, 79, 71, 56, 97, 62, 58, 43, 68, 68, 57, 71, 73, 74, 54, 55, 57, 56, 60, 62, 57, 85, 40, 76, 69, 64, 61, 74, 61, 49, 58, 57, 60, 57, 90, 71, 56, 79, 66, 64, 59, 76, 59, 63, 50, 54, 68, 60, 53, 76, 58, 55, 67, 61, 66, 105, 49, 76, 59, 72, 67, 76, 61, 67, 51, 84, 76, 66, 54, 71, 60, 65, 67, 55, 66, 65, 60, 62, 65, 61, 65, 71, 98, 77, 63, 73, 61, 61, 69, 61, 60, 60, 64, 74, 55, 55, 66, 56, 67, 72, 67, 64, 65, 70, 62, 109, 52, 52, 92, 73, 54, 62, 90, 73, 63, 73, 62, 69, 60, 71, 70, 60, 49, 70, 43, 72, 56, 51, 67, 59, 60, 62, 58, 58, 82, 73, 65, 75, 90, 80, 66, 65, 55, 70, 90, 52, 68, 41, 61, 70, 61, 58, 62, 53, 68, 40, 59, 79, 54, 83, 63, 67, 53, 59, 78, 64, 60, 60, 39, 81, 71, 59, 86, 57, 75, 72, 54, 58, 77, 69, 62, 76, 60, 60, 69, 85, 69, 65, 70, 59, 76, 61, 50, 69, 75, 62, 66, 54, 72, 59, 69, 61, 59, 60, 45, 63, 51, 70, 45, 67, 70, 67, 52, 64, 67, 57, 50, 62, 69, 60, 62, 55, 86, 68, 73, 70, 58, 68, 42, 85, 54, 69, 70, 51, 55, 59, 54, 68, 83, 61, 52, 58, 87, 60, 77, 51, 73, 63, 65, 58, 50, 65, 60, 59, 64, 58, 68, 58, 78, 80, 114, 59, 41, 89, 55, 69, 57, 67, 71, 91, 53, 65, 83, 72, 61, 67, 54, 61, 80, 50, 73, 68, 91, 93, 69, 51, 45, 59, 54, 64, 63, 98, 53, 65, 78, 73, 73, 56, 50, 76, 85, 60, 56, 81, 66, 67, 57, 69, 60, 63, 51, 81, 70, 52, 79, 75, 68, 48, 57, 49, 57, 67, 77, 64, 63, 66, 88, 57, 80, 50, 71, 55, 92, 81, 76, 58, 56, 46, 61, 64, 74, 55, 72, 62, 55, 79, 71, 63, 93, 55, 70, 68, 37, 69, 66, 73, 53, 68, 72, 68, 65, 79, 73, 62, 60, 64, 75, 80, 69, 70, 70, 51, 81, 58, 66, 61, 64, 82, 51, 92, 61, 60, 57, 82, 70, 59, 66, 60, 61, 84, 71, 88, 66, 63, 72, 76, 62, 55, 54, 72, 69, 67, 81, 64, 87, 75, 73, 67, 55, 69, 68, 69, 43, 68, 66, 68, 59, 61, 65, 61, 63, 45, 73, 59, 70, 77, 62, 60, 57, 90, 55, 66, 51, 56, 65, 57, 50, 59, 49, 65, 60, 83, 90, 61, 77, 82, 76, 61, 65, 65, 54, 72, 69, 76, 52, 55, 53, 80, 54, 70, 79, 81, 53, 80, 57, 64, 71, 62, 80, 67, 81, 70, 81, 62, 37, 58, 51, 63, 77, 70, 68, 65, 65, 65, 62, 51, 72, 61, 57, 54, 72, 91, 65, 73, 71, 57, 54, 76, 78, 87, 68, 63, 46, 67, 84, 67, 45, 68, 71, 90, 50, 66, 65, 51, 75, 77, 63, 73, 54, 75, 53, 90, 57, 62, 61, 80, 78, 67, 66, 58, 60, 78, 59, 53, 60, 72, 53, 62, 56, 68, 66, 56, 58, 63, 59, 55, 60, 59, 65, 63, 68, 62, 59, 55, 90, 70, 55, 66, 79, 51, 126, 59, 49, 62, 77, 60, 48, 46, 73, 54, 72, 50, 68, 61, 53, 68, 59, 63, 53, 55, 85, 68, 74, 55, 65, 47, 62, 71, 75, 83, 86, 60, 55, 77, 72, 83, 46, 72, 123, 69, 56, 54, 78, 62, 71, 49, 57, 86, 63, 78, 86, 72, 80, 99, 50, 67, 79, 63, 67, 78, 65, 87, 66, 61, 63, 58, 55, 50, 59, 71, 73, 72, 72, 55, 72, 94, 73, 82, 74, 69, 55, 57, 59, 64, 61, 60, 72, 73, 56, 59, 71, 72, 53, 65, 65, 58, 66, 66, 82, 65, 80, 139, 48, 92, 71, 56, 75, 60, 47, 69, 86, 68, 90, 61, 55, 62, 71, 77, 58, 73, 66, 55, 78, 66, 58, 43, 82, 60, 50, 65, 69, 56, 80, 61, 49, 68, 43, 72, 62, 59, 65, 60, 63, 56, 67, 81, 49, 58, 65, 61, 65, 76, 54, 65, 98, 70, 54, 73, 73, 75, 69, 50, 56, 80, 45, 70, 61, 68, 68, 80, 68, 72, 77, 65, 80, 47, 69, 52, 51, 58, 52, 47, 86, 64, 59, 59, 78, 77, 72, 68, 76, 93, 81, 75, 57, 64, 66, 44, 66, 68, 70, 62, 61, 62, 66, 65, 83, 73, 70, 66, 48, 57, 65, 65, 64, 64, 107, 72, 82, 57, 110, 65, 76, 60, 77, 62, 86, 77, 91, 55, 96, 71, 60, 75, 71, 68, 59, 70, 65, 69, 64, 65, 77, 52, 72, 48, 44, 62, 54, 83, 76, 109, 77, 70, 59, 65, 66, 81, 62, 67, 99, 59, 76, 66, 52, 52, 54, 124, 84, 40, 50, 80, 65, 46, 56, 65, 76, 46, 66, 61, 73, 51, 44, 53, 65, 71, 58, 64, 74, 68, 59, 61, 56, 83, 44, 50, 41, 75, 67, 83, 40, 60, 55, 65, 57, 91, 62, 62, 78, 57, 69, 74, 81, 53, 70, 132, 60, 72, 58, 124, 53, 69, 55, 66, 64, 51, 104, 55, 66, 54, 79, 58, 59, 54, 59, 67, 62, 63, 50, 77, 71, 55, 45, 68, 70, 55, 62, 61, 60, 43, 68, 80, 52, 64, 53, 54, 53, 81, 55, 52, 71, 57, 53, 88, 58, 69, 68, 52, 59, 47, 31, 50, 87, 56, 71, 70, 88, 58, 60, 56, 54, 83, 72, 56, 73, 82, 65, 71, 39, 79, 53, 58, 47, 72, 78, 57, 68, 47, 82, 47, 70, 77, 60, 49, 73, 63, 62, 75, 79, 70, 106, 58, 49, 63, 75, 53, 59, 65, 64, 57, 67, 68, 69, 57, 52, 59, 59, 52, 56, 74, 70, 58, 58, 56, 89, 57, 49, 65, 58, 58, 69, 59, 62, 51, 53, 59, 84, 74, 71, 56, 57, 68, 107, 53, 71, 61, 70, 71, 71, 71, 60, 80, 46, 79, 74, 85, 63, 53, 97, 87, 62, 67, 53, 59, 76, 45, 54, 55, 66, 68, 63, 64, 96, 59, 54, 46, 71, 55, 61, 89, 75, 63, 70, 54, 59, 82, 63, 59, 58, 60, 56, 54, 44, 83, 53, 55, 82, 56, 60, 79, 74, 71, 71, 65, 63, 78, 62, 60, 62, 83, 90, 55, 57, 63, 59, 54, 58, 44, 77, 74, 74, 77, 59, 57, 76, 70, 58, 45, 80, 76, 76, 61, 57, 59, 81, 65, 107, 51, 69, 69, 77, 59, 74, 80, 63, 88, 56, 80, 61, 70, 62, 69, 61, 85, 61, 63, 52, 53, 35, 68, 59, 53, 88, 75, 59, 49, 80, 83, 50, 49, 40, 64, 66, 77, 41, 48, 44, 48, 65, 67, 51, 45, 59, 59, 67, 68, 69, 46, 31, 54, 59, 73, 105, 58, 34, 107, 85, 71, 82, 64, 84, 61, 62, 52, 63, 67, 75, 45, 77, 74, 57, 68, 61, 53, 60, 87, 72, 77, 85, 79, 78, 69, 70, 78, 49, 62, 75, 64, 79, 69, 66, 61, 73, 62, 53, 65, 61, 54, 65, 50, 49, 76, 94, 64, 46, 63, 96, 55, 62, 71, 61, 37, 68, 64, 63, 61, 51, 54, 79, 63, 47, 50, 70, 65, 89, 63, 61, 63, 45, 75, 52, 73, 51, 43, 58, 84, 62, 67, 76, 70, 61, 56, 54, 85, 55, 78, 59, 67, 71, 69, 60, 58, 49, 61, 55, 69, 71, 72, 78, 70, 77, 62, 66, 62, 53, 71, 78, 61, 56, 59, 68, 66, 91, 58, 60, 60, 90, 77, 64, 73, 56, 56, 65, 81, 66, 55, 67, 53, 58, 58, 86, 77, 76, 77, 65, 72, 72, 89, 62, 57, 68, 53, 68, 43, 63, 87, 55, 65, 75, 65, 72, 64, 52, 66, 73, 61, 57, 60, 56, 78, 95, 53, 42, 63, 54, 64, 69, 91, 65, 72, 61, 56, 77, 64, 57, 42, 73, 73, 58, 54, 70, 77, 81, 54, 74, 84, 54, 61, 72, 60, 71, 86, 70, 60, 54, 50, 63, 82, 59, 64, 68, 47, 68, 52, 79, 110, 76, 68, 63, 77, 58, 61, 54, 71, 41, 69, 68, 64, 66, 57, 55, 50, 57, 68, 62, 70, 55, 71, 66, 69, 64, 59, 76, 46, 53, 76, 46, 61, 61, 56, 67, 73, 49, 61, 62, 108, 57, 60, 43, 60, 65, 64, 66, 67, 60, 52, 72, 68, 67, 73, 82, 63, 62, 64, 65, 61, 71, 53, 65, 82, 30, 51, 56, 60, 93, 69, 88, 68, 80, 64, 62, 85, 64, 84, 60, 62, 56, 57, 60, 61, 81, 64, 65, 71, 60, 57, 76, 68, 82, 61, 69, 53, 71, 77, 63, 67, 61, 64, 62, 65, 66, 87, 92, 61, 72, 79, 69, 70, 58, 34, 63, 60, 83, 53, 61, 57, 73, 48, 61, 58, 49, 58, 67, 56, 69, 83, 69, 62, 56, 58, 72, 61, 87, 62, 64, 58, 84, 57, 62, 70, 71, 60, 65, 65, 68, 49, 51, 66, 73, 58, 75, 66, 71, 73, 72, 73, 58, 64, 59, 63, 70, 71, 62, 71, 57, 70, 55, 71, 54, 68, 74, 54, 85, 67, 69, 85, 61, 59, 77, 59, 49, 58, 62, 64, 53, 72, 62, 59, 71, 75, 60, 62, 61, 49, 52, 57, 64, 56, 92, 67, 81, 49, 69, 75, 135, 56, 61, 86, 76, 83, 54, 69, 74, 58, 69, 70, 77, 64, 87, 67, 74, 61, 62, 58, 57, 60, 72, 56, 58, 54, 63, 84, 56, 115, 66, 59, 58, 51, 66, 57, 53, 65, 77, 71, 73, 74, 82, 57, 79, 61, 70, 92, 58, 57, 85, 51, 66, 92, 59, 63, 64, 64, 72, 59, 72, 52, 54, 70, 58, 61, 45, 46, 73, 59, 67, 58, 55, 66, 53, 67, 73, 103, 71, 51, 52, 64, 61, 87, 67, 69, 58, 109, 63, 75, 76, 67, 92, 70, 48, 71, 80, 82, 85, 80, 70, 93, 52, 64, 46, 62, 75, 90, 71, 84, 84, 46, 60, 68, 67, 85, 56, 62, 65, 65, 59, 108, 60, 60, 55, 73, 68, 62, 70, 81, 50, 95, 79, 72, 59, 55, 69, 88, 59, 71, 63, 63, 50, 66, 69, 80, 50, 78, 57, 62, 72, 68, 59, 60, 58, 50, 70, 60, 87, 63, 86, 41, 65, 71, 67, 64, 54, 62, 72, 48, 64, 63, 80, 73, 54, 67, 56, 56, 56, 60, 74, 60, 67, 73, 50, 57, 51, 53, 66, 65, 84, 59, 61, 95, 38, 77, 56, 73, 75, 58, 62, 56, 53, 61, 69, 57, 73, 71, 90, 63, 55, 69, 59, 73, 56, 94, 108, 64, 65, 63, 125, 82, 59, 61, 64, 76, 89, 56, 79, 72, 50, 83, 86, 73, 72, 56, 44, 66, 64, 57, 62, 68, 63, 57, 62, 63, 60, 49, 54, 54, 51, 74, 75, 42, 54, 58, 62, 70, 48, 47, 103, 60, 59, 50, 77, 52, 95, 141, 79, 65, 86, 68, 60, 50, 55, 69, 71, 72, 50, 75, 69, 56, 50, 60, 62, 61, 59, 61, 48, 79, 65, 66, 75, 79, 60, 72, 65, 60, 44, 98, 64, 57, 79, 65, 70, 67, 62, 68, 50, 48, 65, 84, 62, 66, 68, 109, 62, 62, 82, 82, 78, 54, 48, 88, 69, 59, 112, 48, 70, 73, 78, 76, 53, 50, 36, 59, 57, 60, 68, 58, 84, 51, 39, 48, 101, 71, 48, 62, 58, 69, 64, 65, 59, 53, 50, 73, 71, 73, 67, 58, 73, 42, 68, 75, 62, 63, 61, 61, 77, 66, 46, 58, 65, 75, 65, 61, 80, 84, 68, 61, 50, 84, 65, 47, 59, 76, 61, 67, 64, 70, 67, 63, 84, 83, 57, 73, 84, 57, 61, 56, 69, 53, 64, 69, 63, 49, 54, 74, 77, 49, 63, 48, 70, 79, 77, 66, 69, 63, 69, 54, 75, 78, 78, 61, 63, 43, 65, 102, 69, 62, 68, 54, 62, 44, 68, 39, 59, 63, 71, 71, 52, 63, 60, 86, 54, 89, 53, 75, 59, 55, 85, 78, 128, 68, 74, 62, 81, 76, 65, 72, 75, 82, 52, 61, 66, 79, 49, 53, 104, 67, 71, 58, 53, 65, 64, 46, 61, 57, 59, 54, 72, 46, 66, 50, 57, 56, 82, 66, 61, 72, 57, 65, 50, 78, 64, 82, 64, 56, 78, 60, 78, 73, 68, 75, 65, 63, 62, 55, 76, 70, 61, 59, 51, 69, 50, 75, 74, 71, 57, 50, 87, 45, 74, 77, 62, 49, 46, 44, 65, 70, 67, 51, 81, 62, 73, 54, 58, 58, 66, 58, 58, 62, 60, 45, 67, 43, 98, 69, 62, 66, 53, 58, 72, 73, 59, 44, 58, 54, 51, 47, 55, 59, 59, 78, 83, 92, 65, 64, 53, 75, 72, 62, 90, 69, 56, 68, 87, 88, 57, 53, 62, 61, 50, 79, 71, 79, 61, 60, 89, 40, 78, 57, 62, 64, 55, 72, 59, 65, 39, 61, 52, 76, 112, 38, 65, 84, 83, 58, 71, 84, 62, 70, 70, 64, 61, 70, 79, 36, 69, 64, 78, 66, 53, 86, 55, 67, 62, 66, 57, 47, 57, 54, 60, 97, 50, 67, 93, 83, 68, 63, 54, 67, 86, 59, 74, 75, 62, 61, 87, 71, 65, 61, 67, 66, 83, 61, 66, 62, 109, 66, 53, 109, 52, 65, 66, 43, 49, 67, 66, 75, 41, 78, 77, 59, 86, 66, 61, 78, 60, 36, 65, 61, 70, 73, 73, 48, 70, 78, 72, 51, 60, 62, 66, 63, 62, 64, 63, 61, 68, 59, 62, 59, 54, 62, 62, 61, 89, 62, 68, 56, 67, 69, 63, 65, 62, 45, 64, 81, 59, 71, 78, 63, 64, 57, 61, 61, 91, 79, 64, 48, 59, 62, 71, 79, 67, 69, 74, 95, 57, 51, 94, 58, 75, 66, 56, 81, 54, 87, 54, 60, 80, 73, 61, 111, 56, 65, 56, 74, 56, 59, 89, 48, 62, 62, 76, 55, 68, 85, 81, 56, 102, 65, 49, 49, 51, 66, 78, 72, 69, 52, 120, 55, 46, 65, 64, 71, 73, 66, 70, 61, 68, 58, 73, 52, 60, 76, 69, 70, 47, 63, 96, 71, 68, 67, 59, 60, 47, 57, 72, 66, 48, 59, 68, 85, 65, 142, 57, 58, 66, 73, 61, 96, 72, 45, 72, 65, 60, 53, 66, 61, 79, 52, 70, 65, 82, 60, 59, 57, 68, 55, 66, 51, 51, 70, 66, 52, 58, 78, 58, 50, 53, 58, 72, 55, 72, 122, 60, 69, 77, 55, 61, 75, 60, 61, 71, 59, 75, 63, 68, 58, 78, 65, 74, 64, 58, 83, 90, 60, 70, 68, 74, 91, 59, 56, 73, 57, 66, 64, 65, 56, 61, 54, 60, 72, 60, 67, 71, 66, 59, 46, 52, 65, 65, 54, 55, 77, 69, 55, 66, 64, 62, 70, 56, 67, 135, 55, 59, 61, 49, 75, 58, 67, 68, 78, 67, 64, 52, 56, 67, 87, 64, 56, 69, 51, 58, 67, 99, 65, 64, 69, 73, 73, 79, 57, 46, 66, 47, 60, 62, 70, 57, 73, 80, 91, 59, 52, 75, 72, 59, 70, 76, 71, 51, 107, 73, 65, 72, 51, 65, 65, 63, 63, 63, 78, 56, 79, 70, 62, 72, 69, 77, 60, 89, 61, 74, 54, 51, 62, 78, 81, 58, 72, 60, 64, 63, 62, 71, 61, 58, 54, 70, 63, 60, 55, 76, 71, 51, 59, 83, 62, 72, 75, 71, 55, 57, 55, 63, 71, 109, 65, 63, 50, 60, 109, 62, 87, 74, 77, 89, 82, 64, 74, 54, 62, 54, 58, 64, 61, 62, 59, 70, 60, 45, 70, 68, 79, 73, 58, 64, 63, 57, 82, 85, 63, 61, 62, 59, 63, 57, 69, 60, 67, 70, 75, 72, 91, 73, 77, 51, 75, 68, 64, 56, 43, 63, 70, 56, 73, 61, 57, 61, 68, 76, 54, 66, 57, 61, 64, 66, 60, 66, 52, 70, 56, 83, 59, 67, 68, 67, 69, 59, 62, 60, 56, 63, 79, 65, 52, 61, 58, 68, 101, 68, 55, 68, 51, 74, 50, 64, 51, 61, 66, 74, 65, 68, 50, 60, 84, 114, 48, 56, 84, 57, 76, 66, 61, 71, 70, 66, 55, 63, 83, 69, 53, 59, 68, 65, 60, 70, 54, 58, 59, 58, 58, 60, 54, 61, 70, 63, 70, 59, 76, 72, 62, 53, 50, 50, 76, 63, 48, 63, 60, 57, 73, 70, 61, 65, 65, 52, 73, 72, 67, 57, 58, 52, 59, 80, 55, 47, 56, 56, 50, 81, 58, 72, 61, 60, 65, 57, 63, 62, 53, 93, 66, 59, 62, 60, 48, 59, 71, 53, 76, 54, 68, 84, 78, 59, 75, 66, 62, 70, 75, 65, 68, 68, 50, 58, 61, 72, 57, 82, 59, 57, 67, 53, 64, 64, 60, 63, 67, 78, 74, 87, 52, 72, 87, 74, 56, 74, 76, 49, 56, 61, 68, 53, 66, 61, 63, 56, 69, 90, 64, 67, 57, 58, 87, 54, 61, 63, 56, 53, 83, 57, 66, 50, 75, 69, 77, 69, 62, 52, 65, 66, 69, 70, 56, 44, 74, 77, 49, 48, 57, 92, 50, 52, 75, 53, 58, 61, 68, 80, 71, 56, 57, 64, 64, 55, 62, 63, 72, 69, 59, 56, 52, 72, 85, 70, 67, 81, 79, 50, 53, 78, 65, 72, 62, 94, 60, 56, 115, 56, 61, 65, 65, 70, 52, 97, 70, 58, 94, 54, 79, 67, 78, 58, 61, 51, 59, 64, 56, 52, 55, 49, 60, 46, 75, 72, 67, 78, 59, 72, 63, 65, 45, 76, 53, 59, 60, 83, 83, 60, 47, 53, 59, 87, 63, 64, 71, 50, 70, 63, 56, 54, 60, 60, 65, 76, 49, 63, 74, 79, 65, 80, 77, 57, 63, 94, 63, 69, 61, 74, 71, 52, 60, 62, 69, 43, 81, 57, 58, 55, 67, 67, 64, 66, 65, 81, 66, 65, 65, 66, 65, 72, 52, 71, 48, 57, 53, 70, 51, 60, 90, 52, 54, 50, 68, 68, 68, 70, 61, 68, 64, 63, 67, 62, 68, 53, 81, 54, 53, 64, 70, 69, 52, 55, 60, 63, 76, 69, 75, 71, 50, 79, 71, 64, 75, 65, 45, 51, 65, 55, 64, 59, 61, 70, 77, 83, 54, 52, 72, 74, 67, 63, 62, 65, 66, 58, 76, 70, 88, 72, 60, 81, 53, 68, 60, 54, 52, 81, 66, 64, 59, 52, 57, 62, 66, 49, 51, 62, 91, 57, 56, 75, 67, 68, 68, 56, 60, 66, 60, 65, 56, 63, 62, 60, 50, 65, 70, 57, 81, 65, 76, 71, 76, 64, 78, 57, 65, 63, 59, 59, 68, 58, 57, 68, 63, 52, 50, 68, 42, 65, 61, 62, 91, 64, 59, 70, 53, 77, 67, 55, 62, 68, 68, 64, 56, 59, 70, 52, 63, 120, 63, 59, 56, 67, 56, 75, 54, 53, 50, 63, 76, 64, 51, 58, 70, 61, 77, 58, 78, 67, 59, 58, 90, 67, 55, 48, 76, 93, 59, 73, 56, 52, 65, 63, 64, 65, 91, 58, 57, 51, 59, 65, 46, 74, 46, 69, 56, 59, 59, 55, 54, 70, 48, 72, 82, 79, 70, 65, 86, 65, 77, 61, 87, 55, 52, 58, 56, 51, 74, 73, 63, 56, 48, 56, 76, 93, 60, 68, 69, 52, 75, 65, 76, 51, 63, 72, 66, 60, 71, 58, 63, 65, 45, 59, 60, 66, 83, 67, 60, 55, 61, 74, 58, 51, 54, 61, 74, 61, 71, 59, 62, 69, 89, 73, 91, 69, 60, 49, 65, 66, 78, 64, 67, 62, 70, 70, 71, 60, 61, 51, 51, 47, 72, 50, 75, 57, 60, 61, 69, 57, 66, 65, 68, 75, 74, 58, 83, 60, 66, 62, 57, 53, 66, 95, 63, 68, 59, 82, 81, 70, 55, 61, 66, 68, 65, 60, 56, 61, 57, 76, 77, 69, 56, 71, 62, 77, 54, 64, 66, 55, 75, 66, 63, 56, 66, 73, 93, 78, 64, 55, 72, 56, 55, 79, 64, 90, 52, 111, 80, 61, 78, 57, 56, 49, 54, 62, 52, 68, 82, 87, 63, 68, 63, 106, 69, 63, 69, 81, 50, 128, 44, 73, 56, 66, 73, 67, 77, 82, 62, 77, 69, 70, 64, 86, 109, 72, 94, 117, 65, 82, 66, 61, 54, 47, 50, 65, 50, 60, 44, 70, 64, 63, 74, 61, 87, 79, 62, 59, 55, 74, 61, 59, 78, 72, 67, 73, 101, 71, 174, 71, 63, 77, 79, 57, 71, 56, 74, 60, 54, 49, 54, 69, 68, 58, 62, 64, 72, 55, 63, 78, 43, 62, 53, 66, 58, 54, 64, 38, 83, 72, 56, 60, 59, 62, 54, 58, 70, 59, 50, 58, 60, 65, 55, 71, 59, 54, 54, 59, 64, 63, 52, 63, 60, 103, 65, 63, 64, 57, 110, 74, 53, 51, 50, 50, 54, 54, 60, 88, 68, 71, 68, 69, 58, 69, 65, 71, 110, 71, 62, 48, 67, 71, 66, 69, 61, 53, 65, 47, 67, 56, 69, 63, 57, 55, 60, 58, 53, 67, 68, 67, 62, 60, 56, 58, 65, 61, 101, 70, 60, 58, 61, 81, 72, 65, 63, 54, 72, 61, 72, 50, 62, 57, 50, 59, 102, 88, 52, 70, 72, 71, 63, 62, 54, 55, 59, 63, 78, 79, 69, 100, 56, 76, 78, 62, 62, 48, 95, 53, 64, 81, 57, 63, 47, 73, 64, 55, 58, 64, 55, 79, 44, 58, 61, 50, 58, 63, 66, 54, 62, 77, 61, 56, 98, 63, 68, 67, 105, 58, 41, 49, 41, 77, 61, 68, 62, 68, 49, 53, 57, 56, 69, 78, 71, 65, 62, 104, 63, 59, 65, 57, 49, 73, 64, 45, 62, 64, 53, 70, 61, 66, 57, 69, 56, 68, 72, 61, 64, 49, 62, 120, 63, 71, 61, 54, 62, 51, 61, 68, 71, 56, 65, 86, 79, 45, 58, 68, 85, 56, 58, 54, 68, 66, 82, 68, 53, 69, 70, 64, 56, 77, 75, 72, 98, 79, 79, 63, 71, 89, 75, 57, 80, 63, 58, 57, 69, 72, 61, 59, 69, 64, 77, 60, 52, 72, 57, 61, 60, 64, 63, 58, 58, 72, 69, 59, 46, 60, 57, 64, 51, 61, 61, 64, 56, 64, 70, 67, 61, 54, 62, 60, 55, 67, 80, 68, 78, 83, 63, 79, 63, 58, 75, 64, 67, 53, 60, 91, 66, 44, 65, 62, 58, 47, 74, 77, 56, 53, 62, 75, 72, 57, 69, 64, 54, 64, 62, 72, 66, 62, 64, 50, 67, 58, 74, 64, 71, 60, 77, 63, 60, 76, 52, 70, 67, 71, 71, 63, 72, 49, 70, 60, 59, 62, 66, 60, 75, 86, 59, 90, 61, 45, 64, 62, 63, 72, 63, 68, 65, 50, 65, 80, 71, 79, 53, 77, 65, 48, 57, 64, 53, 79, 77, 81, 85, 59, 49, 56, 51, 68, 60, 79, 84, 67, 56, 51, 78, 53, 112, 57, 52, 61, 78, 62, 69, 47, 55, 43, 73, 69, 68, 59, 50, 58, 67, 79, 70, 87, 54, 66, 58, 61, 83, 45, 60, 44, 70, 47, 58, 63, 89, 85, 58, 89, 42, 79, 55, 54, 70, 93, 79, 60, 60, 63, 59, 65, 60, 60, 67, 57, 89, 70, 54, 61, 46, 54, 52, 73, 73, 52, 64, 81, 82, 74, 54, 84, 63, 49, 61, 65, 60, 70, 53, 82, 65, 74, 56, 58, 78, 46, 71, 72, 58, 82, 52, 74, 70, 58, 58, 74, 44, 82, 70, 62, 72, 42, 52, 51, 71, 76, 68, 86, 69, 80, 61, 54, 61, 64, 57, 64, 50, 95, 69, 50, 54, 69, 62, 90, 63, 79, 55, 55, 66, 50, 58, 76, 72, 54, 57, 56, 69, 58, 82, 59, 68, 48, 136, 59, 54, 89, 59, 61, 80, 69, 65, 57, 56, 53, 59, 106, 58, 57, 56, 53, 77, 59, 59, 71, 53, 77, 61, 55, 77, 66, 65, 66, 65, 83, 61, 55, 80, 62, 68, 63, 76, 60, 82, 65, 72, 73, 57, 75, 51, 60, 58, 93, 57, 59, 59, 81, 85, 65, 56, 59, 60, 84, 52, 66, 96, 63, 68, 89, 49, 70, 77, 62, 42, 52, 67, 93, 61, 53, 80, 61, 89, 57, 77, 59, 67, 53, 62, 52, 53, 44, 65, 60, 68, 58, 51, 72, 65, 76, 67, 67, 63, 65, 49, 66, 92, 66, 66, 93, 51, 82, 71, 57, 112, 76, 63, 64, 55, 52, 60, 65, 73, 70, 72, 66, 73, 72, 62, 54, 64, 63, 101, 64, 66, 60, 67, 54, 56, 50, 93, 52, 54, 77, 61, 53, 61, 61, 60, 52, 74, 61, 49, 70, 53, 51, 64, 67, 66, 60, 61, 61, 60, 58, 54, 60, 62, 53, 64, 92, 75, 55, 53, 73, 60, 63, 80, 91, 69, 60, 55, 62, 57, 71, 49, 57, 52, 72, 76, 58, 61, 62, 78, 67, 69, 58, 88, 85, 57, 64, 65, 69, 77, 58, 63, 55, 53, 61, 71, 55, 76, 66, 66, 67, 46, 65, 60, 83, 72, 60, 72, 59, 54, 69, 84, 65, 57, 58, 64, 53, 75, 61, 86, 47, 53, 65, 85, 59, 72, 66, 71, 65, 56, 85, 57, 76, 62, 61, 73, 69, 61, 86, 66, 68, 53, 84, 61, 59, 67, 56, 60, 49, 58, 70, 61, 61, 52, 61, 51, 119, 41, 74, 77, 62, 55, 89, 52, 63, 84, 59, 65, 49, 57, 68, 64, 72, 51, 60, 62, 44, 64, 60, 65, 66, 76, 54, 72, 66, 61, 61, 70, 60, 60, 59, 60, 64, 64, 54, 55, 78, 71, 61, 45, 52, 63, 69, 72, 68, 61, 57, 66, 50, 58, 46, 78, 61, 61, 74, 57, 59, 99, 58, 70, 62, 64, 58, 120, 83, 71, 71, 62, 70, 70, 60, 56, 71, 94, 80, 100, 81, 81, 66, 68, 63, 79, 63, 87, 58, 50, 79, 58, 59, 57, 96, 87, 60, 66, 66, 41, 66, 66, 65, 54, 45, 59, 53, 69, 89, 49, 64, 61, 55, 47, 65, 66, 49, 63, 55, 61, 80, 65, 56, 73, 75, 52, 58, 61, 60, 77, 82, 78, 54, 51, 51, 59, 59, 89, 76, 62, 64, 78, 45, 92, 72, 58, 71, 55, 71, 60, 54, 74, 58, 93, 59, 79, 62, 73, 59, 56, 54, 107, 72, 61, 63, 54, 69, 71, 62, 65, 59, 70, 58, 52, 60, 65, 79, 62, 58, 84, 43, 64, 45, 73, 71, 86, 72, 82, 75, 63, 52, 80, 53, 65, 53, 55, 53, 57, 52, 63, 73, 70, 90, 56, 69, 65, 70, 62, 62, 67, 75, 44, 65, 62, 71, 58, 72, 69, 58, 60, 60, 55, 68, 69, 62, 131, 61, 71, 70, 59, 73, 64, 57, 55, 68, 49, 61, 67, 56, 61, 51, 149, 72, 39, 58, 67, 53, 71, 73, 57, 52, 63, 45, 75, 63, 59, 66, 81, 70, 73, 86, 64, 61, 64, 65, 111, 56, 60, 64, 49, 74, 78, 60, 50, 50, 64, 57, 70, 56, 55, 104, 93, 61, 57, 53, 68, 63, 75, 69, 61, 66, 73, 83, 43, 78, 52, 72, 62, 70, 51, 54, 53, 72, 86, 54, 53, 63, 70, 89, 62, 66, 87, 64, 49, 64, 61, 71, 59, 69, 74, 91, 71, 81, 64, 44, 80, 58, 50, 44, 43, 51, 73, 90, 69, 57, 59, 117, 68, 95, 58, 67, 60, 57, 73, 79, 62, 61, 56, 63, 91, 64, 58, 67, 87, 68, 81, 59, 63, 72, 57, 69, 52, 49, 80, 64, 69, 65, 58, 54, 53, 54, 60, 62, 68, 64, 69, 66, 73, 57, 45, 51, 57, 62, 57, 83, 64, 50, 58, 57, 71, 101, 54, 77, 79, 43, 57, 78, 36, 50, 64, 66, 97, 70, 59, 65, 69, 66, 83, 86, 51, 50, 54, 78, 62, 71, 68, 52, 58, 70, 59, 51, 44, 100, 48, 65, 67, 68, 77, 77, 75, 81, 56, 54, 71, 54, 71, 53, 59, 52, 70, 86, 54, 74, 68, 70, 65, 73, 69, 56, 62, 81, 51, 49, 69, 80, 73, 65, 48, 62, 110, 68, 63, 37, 48, 60, 47, 56, 55, 79, 56, 88, 69, 61, 57, 87, 54, 61, 53, 62, 52, 72, 48, 70, 65, 66, 80, 70, 49, 64, 55, 55, 66, 64, 73, 67, 66, 79, 68, 64, 66, 45, 84, 65, 52, 63, 77, 83, 60, 59, 48, 64, 58, 82, 61, 60, 68, 66, 67, 70, 67, 56, 58, 44, 68, 62, 70, 66, 65, 72, 77, 103, 45, 67, 49, 76, 52, 60, 71, 71, 64, 69, 58, 60, 64, 62, 73, 84, 62, 63, 82, 88, 81, 59, 73, 48, 57, 57, 61, 64, 45, 49, 70, 67, 63, 43, 50, 58, 59, 84, 50, 46, 68, 61, 62, 103, 68, 69, 71, 86, 64, 66, 68, 74, 64, 73, 67, 65, 74, 61, 76, 69, 72, 75, 52, 63, 67, 75, 57, 53, 75, 90, 62, 44, 58, 73, 52, 71, 40, 58, 77, 72, 59, 56, 72, 65, 68, 88, 58, 67, 68, 59, 83, 69, 63, 65, 92, 56, 75, 59, 102, 62, 72, 82, 44, 61, 60, 68, 56, 54, 83, 90, 72, 111, 74, 60, 56, 65, 54, 81, 63, 66, 68, 63, 55, 79, 81, 66, 52, 61, 84, 91, 81, 69, 68, 68, 74, 73, 96, 60, 50, 73, 48, 59, 84, 40, 48, 60, 70, 63, 57, 72, 49, 53, 61, 56, 50, 62, 83, 67, 65, 73, 74, 51, 56, 67, 87, 67, 61, 45, 54, 65, 52, 53, 53, 60, 70, 60, 65, 76, 66, 60, 67, 62, 68, 81, 61, 63, 79, 74, 56, 68, 30, 56, 74, 53, 59, 68, 80, 60, 59, 69, 78, 58, 72, 65, 52, 50, 66, 57, 72, 56, 60, 68, 52, 62, 73, 67, 70, 62, 63, 67, 67, 67, 103, 43, 61, 62, 52, 72, 82, 52, 71, 70, 66, 56, 58, 69, 86, 62, 48, 52, 51, 47, 40, 61, 60, 61, 81, 72, 70, 54, 61, 87, 85, 88, 70, 70, 77, 78, 64, 65, 67, 78, 81, 67, 64, 77, 67, 85, 72, 76, 70, 56, 49, 61, 65, 71, 45, 64, 53, 70, 71, 49, 63, 53, 37, 57, 88, 66, 57, 127, 58, 46, 70, 60, 53, 90, 62, 67, 76, 68, 67, 104, 63, 58, 31, 85, 64, 75, 67, 66, 67, 67, 73, 118, 46, 64, 80, 54, 76, 54, 59, 67, 60, 55, 77, 105, 62, 59, 58, 74, 69, 57, 66, 59, 66, 70, 66, 90, 62, 64, 55, 75, 78, 78, 81, 89, 73, 61, 65, 65, 121, 54, 68, 89, 67, 61, 56, 47, 58, 67, 57, 80, 60, 79, 85, 46, 45, 70, 64, 71, 79, 64, 82, 146, 91, 70, 60, 66, 67, 58, 65, 65, 43, 64, 88, 60, 65, 67, 67, 74, 67, 66, 94, 68, 63, 63, 60, 60, 36, 79, 66, 94, 70, 66, 58, 48, 57, 60, 51, 69, 62, 41, 86, 51, 85, 100, 77, 63, 50, 55, 60, 78, 76, 62, 67, 119, 60, 90, 83, 74, 57, 66, 62, 42, 56, 63, 81, 48, 66, 50, 56, 89, 69, 85, 50, 88, 65, 48, 70, 65, 95, 51, 61, 71, 80, 71, 47, 64, 50, 67, 51, 91, 91, 69, 55, 65, 47, 42, 76, 56, 60, 73, 82, 61, 84, 67, 66, 72, 55, 47, 50, 59, 75, 47, 49, 55, 120, 50, 47, 126, 81, 55, 67, 44, 60, 68, 69, 52, 77, 45, 59, 66, 78, 76, 83, 54, 75, 65, 84, 53, 50, 68, 52, 54, 82, 58, 61, 88, 69, 60, 57, 59, 53, 61, 55, 71, 63, 41, 70, 72, 55, 85, 44, 62, 82, 72, 81, 59, 88, 70, 58, 102, 53, 79, 74, 66, 75, 70, 75, 71, 60, 39, 71, 74, 60, 31, 41, 49, 67, 76, 61, 80, 65, 60, 76, 62, 73, 71, 71, 61, 108, 61, 74, 55, 134, 54, 42, 75, 67, 47, 45, 60, 57, 45, 50, 72, 75, 83, 64, 69, 67, 62, 62, 59, 67, 52, 71, 95, 63, 60, 75, 64, 88, 80, 64, 74, 66, 108, 50, 63, 56, 58, 62, 118, 57, 54, 52, 53, 59, 59, 50, 53, 90, 88, 73, 53, 82, 60, 74, 53, 76, 84, 65, 51, 61, 56, 54, 67, 56, 80, 62, 52, 48, 77, 59, 67, 69, 45, 76, 60, 43, 96, 61, 71, 33, 67, 77, 96, 54, 67, 55, 66, 42, 77, 54, 70, 152, 68, 60, 114, 72, 50, 71, 57, 52, 102, 68, 66, 69, 68, 69, 77, 83, 55, 46, 62, 55, 72, 59, 52, 53, 70, 64, 52, 58, 40, 49, 54, 63, 57, 58, 52, 78, 58, 47, 56, 57, 78, 73, 60, 56, 57, 54, 61, 97, 54, 68, 70, 56, 59, 61, 58, 54, 62, 68, 66, 67, 86, 77, 54, 70, 70, 79, 56, 60, 74, 59, 86, 54, 57, 68, 57, 50, 60, 73, 74, 62, 74, 56, 69, 98, 30, 58, 72, 53, 78, 62, 70, 94, 79, 72, 68, 59, 72, 60, 57, 61, 59, 60, 65, 64, 75, 55, 44, 66, 76, 80, 50, 67, 63, 61, 86, 59, 74, 66, 68, 48, 57, 55, 50, 59, 55, 71, 69, 87, 71, 96, 81, 86, 36, 66, 57, 55, 52, 61, 77, 47, 66, 28, 56, 77, 74, 66, 101, 95, 60, 63, 71, 51, 70, 57, 61, 47, 66, 66, 55, 76, 69, 61, 68, 49, 74, 64, 60, 84, 110, 68, 57, 70, 61, 71, 68, 65, 72, 68, 55, 62, 74, 106, 64, 61, 65, 58, 49, 78, 65, 60, 56, 115, 73, 56, 68, 64, 67, 82, 47, 42, 70, 72, 66, 54, 72, 54, 72, 59, 75, 62, 85, 59, 51, 111, 80, 48, 65, 63, 69, 54, 65, 92, 58, 96, 57, 47, 60, 63, 58, 71, 67, 60, 78, 66, 54, 52, 47, 60, 58, 61, 134, 68, 73, 68, 74, 71, 63, 49, 62, 52, 42, 56, 96, 50, 80, 46, 80, 62, 57, 63, 87, 71, 72, 74, 76, 54, 71, 47, 72, 62, 74, 77, 72, 65, 67, 60, 59, 61, 56, 78, 56, 80, 78, 95, 73, 69, 82, 78, 75, 45, 81, 51, 82, 77, 84, 71, 57, 71, 67, 65, 63, 70, 66, 65, 75, 64, 44, 82, 62, 55, 51, 70, 58, 62, 58, 80, 61, 67, 60, 61, 61, 76, 57, 78, 74, 58, 62, 57, 54, 72, 61, 54, 56, 39, 75, 102, 85, 62, 65, 81, 54, 64, 54, 62, 44, 56, 55, 76, 56, 68, 53, 61, 80, 54, 58, 78, 50, 105, 68, 68, 47, 58, 54, 66, 78, 86, 68, 85, 47, 69, 56, 59, 60, 64, 69, 68, 76, 78, 69, 68, 39, 60, 78, 89, 73, 57, 52, 75, 50, 57, 64, 79, 71, 70, 61, 53, 74, 71, 51, 59, 70, 59, 65, 73, 54, 53, 74, 61, 63, 97, 60, 67, 60, 61, 61, 71, 82, 34, 56, 50, 59, 59, 67, 59, 65, 83, 84, 63, 68, 61, 69, 69, 37, 46, 56, 50, 68, 64, 52, 66, 52, 51, 44, 59, 65, 70, 69, 68, 48, 51, 51, 78, 61, 56, 67, 74, 62, 61, 78, 57, 63, 44, 64, 55, 68, 66, 75, 67, 63, 78, 65, 68, 50, 70, 49, 59, 80, 65, 62, 61, 69, 56, 76, 83, 78, 56, 82, 49, 48, 66, 61, 57, 51, 53, 60, 65, 65, 123, 70, 63, 62, 72, 77, 76, 67, 69, 50, 47, 80, 53, 67, 67, 54, 65, 70, 70, 51, 67, 85, 78, 50, 76, 85, 73, 58, 52, 71, 71, 59, 57, 74, 62, 63, 88, 71, 71, 60, 64, 65, 70, 84, 63, 70, 67, 56, 75, 73, 57, 81, 78, 80, 63, 61, 74, 57, 68, 117, 49, 64, 50, 54, 53, 74, 50, 77, 50, 71, 59, 48, 57, 147, 64, 66, 62, 63, 69, 58, 88, 62, 81, 70, 66, 66, 101, 66, 81, 85, 59, 48, 67, 83, 73, 63, 59, 51, 80, 94, 87, 61, 61, 78, 42, 64, 81, 65, 46, 68, 59, 73, 62, 60, 68, 62, 79, 52, 61, 59, 61, 86, 50, 57, 68, 54, 74, 53, 53, 51, 61, 79, 76, 78, 53, 46, 87, 42, 77, 25, 65, 57, 54, 84, 90, 56, 62, 55, 82, 57, 52, 77, 60, 52, 69, 100, 98, 58, 72, 50, 66, 86, 44, 57, 99, 72, 47, 65, 60, 46, 42, 64, 72, 54, 84, 76, 69, 55, 67, 56, 100, 71, 63, 73, 83, 75, 83, 80, 73, 53, 91, 45, 53, 55, 97, 68, 54, 67, 82, 60, 45, 65, 71, 67, 56, 73, 69, 62, 78, 60, 59, 65, 80, 64, 41, 57, 57, 65, 50, 78, 60, 54, 72, 72, 53, 76, 51, 76, 59, 58, 67, 63, 67, 74, 66, 65, 61, 59, 74, 85, 65, 68, 45, 78, 56, 81, 61, 69, 85, 65, 61, 60, 57, 73, 80, 71, 45, 52, 56, 57, 47, 66, 82, 77, 64, 50, 58, 82, 71, 78, 89, 37, 64, 70, 61, 66, 62, 63, 65, 53, 56, 53, 74, 72, 53, 64, 60, 51, 60, 69, 72, 70, 63, 71, 64, 59, 89, 80, 74, 61, 76, 80, 70, 58, 61, 57, 68, 60, 65, 60, 74, 65, 54, 58, 82, 70, 98, 63, 90, 49, 64, 57, 77, 57, 65, 66, 64, 74, 56, 88, 65, 54, 56, 88, 48, 51, 61, 80, 44, 37, 41, 65, 51, 59, 81, 65, 55, 67, 76, 69, 74, 46, 87, 74, 89, 56, 58, 54, 87, 98, 69, 54, 53, 69, 67, 66, 101, 66, 73, 64, 46, 59, 75, 75, 59, 67, 74, 71, 79, 80, 75, 53, 95, 72, 40, 74, 88, 63, 48, 64, 56, 43, 94, 51, 92, 60, 119, 73, 59, 50, 78, 53, 61, 43, 98, 64, 63, 88, 48, 61, 72, 55, 61, 62, 51, 45, 60, 61, 61, 54, 55, 50, 57, 65, 54, 67, 69, 49, 80, 74, 109, 59, 73, 60, 76, 66, 62, 56, 85, 59, 72, 72, 52, 61, 65, 60, 63, 57, 60, 63, 59, 68, 65, 64, 58, 69, 59, 60, 63, 66, 57, 80, 65, 57, 61, 51, 63, 60, 69, 83, 52, 59, 74, 60, 73, 59, 86, 71, 62, 63, 76, 95, 87, 103, 58, 61, 53, 68, 72, 70, 64, 76, 51, 57, 66, 60, 67, 73, 65, 65, 74, 60, 63, 65, 78, 70, 60, 51, 50, 50, 86, 59, 69, 60, 61, 78, 66, 63, 81, 69, 59, 61, 68, 76, 85, 85, 67, 66, 43, 83, 64, 50, 64, 93, 61, 45, 63, 66, 70, 66, 99, 82, 55, 55, 75, 58, 62, 157, 63, 66, 81, 56, 86, 72, 72, 60, 79, 61, 62, 63, 69, 54, 74, 56, 57, 75, 95, 73, 55, 54, 51, 60, 72, 64, 80, 70, 64, 105, 70, 60, 77, 66, 70, 56, 71, 74, 77, 71, 60, 67, 52, 54, 76, 57, 43, 45, 51, 56, 46, 62, 89, 64, 57, 56, 85, 68, 59, 75, 75, 54, 77, 61, 71, 55, 69, 72, 75, 76, 75, 56, 66, 86, 60, 54, 44, 49, 62, 65, 55, 65, 52, 78, 52, 67, 75, 68, 59, 68, 83, 68, 65, 79, 69, 59, 59, 71, 52, 56, 85, 68, 60, 61, 53, 78, 66, 66, 71, 73, 85, 69, 66, 61, 60, 65, 51, 71, 65, 54, 93, 80, 68, 71, 71, 53, 56, 68, 63, 76, 59, 66, 77, 80, 64, 103, 86, 52, 82, 74, 74, 74, 66, 82, 76, 86, 72, 50, 75, 64, 62, 75, 52, 54, 73, 70, 79, 74, 66, 63, 85, 77, 71, 66, 62, 55, 71, 64, 59, 64, 50, 64, 63, 59, 76, 82, 75, 67, 51, 60, 56, 73, 97, 50, 67, 74, 74, 73, 68, 86, 86, 58, 60, 71, 60, 56, 62, 91, 57, 75, 68, 58, 67, 80, 63, 65, 50, 64, 61, 78, 60, 67, 50, 50, 61, 77, 67, 63, 53, 63, 82, 58, 57, 120, 64, 76, 59, 58, 77, 81, 61, 76, 57, 50, 62, 65, 82, 75, 62, 72, 44, 60, 63, 66, 43, 60, 66, 75, 52, 60, 72, 55, 69, 48, 79, 73, 54, 75, 73, 53, 84, 61, 45, 81, 77, 54, 77, 70, 56, 67, 53, 80, 82, 63, 75, 64, 61, 68, 63, 58, 66, 51, 76, 54, 52, 72, 60, 40, 47, 82, 60, 70, 81, 58, 59, 55, 68, 62, 51, 64, 75, 60, 76, 58, 66, 51, 57, 63, 116, 61, 64, 64, 41, 61, 84, 62, 57, 82, 92, 69, 59, 56, 79, 57, 80, 67, 66, 74, 71, 58, 59, 93, 74, 56, 57, 65, 57, 51, 58, 65, 53, 76, 64, 37, 86, 79, 77, 57, 60, 57, 66, 57, 57, 57, 58, 58, 63, 75, 73, 83, 56, 60, 56, 59, 67, 61, 66, 50, 53, 69, 70, 80, 56, 68, 89, 54, 54, 94, 72, 78, 65, 69, 60, 69, 66, 82, 62, 70, 58, 75, 68, 55, 57, 64, 49, 87, 72, 73, 68, 58, 82, 48, 56, 78, 56, 64, 70, 58, 76, 49, 66, 49, 57, 52, 83, 89, 62, 58, 67, 63, 58, 66, 64, 66, 62, 62, 81, 48, 80, 71, 76, 60, 61, 68, 71, 58, 63, 51, 49, 76, 89, 69, 59, 93, 67, 64, 77, 58, 55, 74, 65, 53, 56, 54, 62, 60, 57, 52, 61, 60, 62, 62, 87, 74, 75, 59, 84, 64, 67, 60, 62, 56, 55, 57, 62, 73, 51, 72, 86, 81, 74, 65, 55, 69, 61, 63, 76, 59, 62, 58, 71, 51, 64, 64, 90, 122, 59, 57, 63, 59, 61, 79, 58, 67, 89, 68, 55, 65, 64, 73, 77, 78, 72, 65, 68, 68, 73, 58, 59, 58, 63, 69, 65, 64, 70, 48, 53, 70, 74, 67, 65, 74, 82, 42, 59, 69, 61, 62, 73, 71, 80, 64, 68, 50, 58, 113, 84, 73, 52, 77, 62, 61, 77, 98, 67, 63, 59, 61, 65, 88, 62, 63, 60, 62, 58, 60, 62, 45, 56, 57, 73, 59, 104, 45, 61, 71, 49, 70, 53, 55, 69, 89, 74, 65, 64, 65, 67, 65, 52, 74, 59, 53, 73, 59, 57, 83, 52, 107, 70, 59, 50, 45, 65, 51, 68, 91, 67, 71, 58, 76, 75, 70, 67, 79, 70, 58, 86, 47, 69, 62, 57, 72, 67, 60, 56, 75, 56, 59, 88, 60, 65, 60, 51, 77, 70, 104, 65, 66, 82, 76, 62, 52, 110, 65, 52, 53, 66, 68, 58, 74, 77, 125, 58, 49, 72, 68, 85, 51, 60, 68, 53, 71, 54, 50, 61, 66, 91, 63, 72, 41, 72, 87, 62, 54, 63, 75, 57, 57, 63, 55, 64, 82, 60, 73, 86, 51, 69, 54, 57, 80, 71, 72, 63, 64, 66, 57, 71, 71, 64, 73, 60, 62, 76, 71, 69, 63, 66, 74, 55, 100, 69, 71, 68, 75, 72, 70, 55, 77, 52, 50, 61, 59, 49, 97, 64, 60, 89, 60, 59, 52, 70, 78, 68, 84, 63, 68, 69, 80, 72, 56, 54, 65, 61, 64, 54, 51, 52, 134, 81, 54, 38, 63, 47, 60, 54, 51, 59, 57, 65, 70, 75, 46, 62, 68, 49, 62, 72, 74, 54, 79, 68, 58, 58, 75, 63, 52, 59, 69, 66, 64, 87, 71, 65, 52, 66, 56, 65, 53, 65, 59, 65, 61, 75, 66, 67, 59, 55, 67, 68, 59, 69, 65, 68, 98, 65, 61, 81, 49, 76, 52, 77, 60, 69, 79, 53, 61, 100, 57, 63, 42, 57, 70, 63, 54, 65, 54, 65, 63, 69, 74, 69, 66, 58, 71, 69, 59, 61, 62, 71, 64, 58, 82, 68, 69, 74, 55, 66, 64, 61, 72, 79, 91, 79, 48, 72, 67, 58, 60, 61, 64, 41, 61, 58, 72, 89, 75, 59, 80, 77, 75, 64, 64, 67, 90, 56, 62, 72, 59, 74, 60, 65, 69, 69, 46, 68, 59, 86, 48, 61, 60, 62, 66, 93, 61, 65, 76, 86, 79, 58, 61, 56, 67, 51, 50, 66, 54, 62, 67, 66, 56, 73, 59, 77, 75, 58, 67, 129, 75, 51, 61, 87, 58, 60, 91, 61, 64, 65, 75, 64, 66, 64, 69, 80, 71, 60, 69, 69, 64, 79, 54, 64, 80, 50, 70, 55, 63, 72, 53, 59, 65, 66, 54, 61, 49, 69, 73, 59, 64, 57, 72, 75, 61, 57, 71, 78, 55, 80, 79, 63, 64, 69, 75, 83, 59, 59, 77, 69, 65, 61, 55, 67, 69, 57, 62, 68, 58, 75, 63, 73, 52, 57, 62, 63, 48, 53, 65, 60, 79, 80, 50, 61, 54, 56, 64, 66, 75, 65, 50, 66, 70, 67, 97, 70, 79, 59, 61, 59, 74, 75, 90, 58, 61, 61, 69, 58, 54, 57, 50, 51, 62, 63, 56, 59, 65, 66, 59, 130, 57, 63, 61, 70, 69, 41, 66, 62, 72, 54, 57, 73, 74, 74, 59, 66, 75, 64, 61, 60, 72, 56, 59, 66, 71, 65, 68, 59, 64, 50, 75, 60, 77, 81, 100, 60, 84, 56, 56, 58, 59, 65, 61, 59, 63, 76, 69, 70, 64, 75, 67, 65, 58, 67, 67, 76, 59, 76, 63, 53, 65, 67, 72, 82, 59, 74, 65, 62, 68, 76, 76, 70, 65, 58, 50, 57, 50, 73, 54, 57, 66, 55, 67, 67, 74, 53, 113, 84, 66, 69, 63, 70, 80, 61, 56, 66, 74, 64, 66, 45, 59, 73, 63, 82, 66, 40, 63, 59, 61, 80, 55, 64, 65, 71, 55, 62, 53, 66, 76, 57, 56, 67, 67, 59, 59, 53, 74, 60, 54, 58, 67, 83, 73, 73, 77, 62, 61, 70, 58, 71, 69, 69, 59, 69, 59, 71, 64, 69, 57, 59, 73, 58, 71, 66, 63, 54, 39, 56, 67, 76, 57, 58, 74, 75, 61, 185, 69, 63, 72, 67, 61, 58, 68, 65, 60, 62, 59, 63, 69, 77, 70, 64, 64, 57, 59, 65, 79, 65, 54, 57, 44, 70, 54, 73, 73, 65, 63, 55, 51, 74, 65, 67, 56, 65, 65, 51, 77, 112, 58, 70, 93, 82, 73, 59, 87, 85, 64, 76, 65, 58, 56, 58, 49, 67, 66, 61, 64, 80, 80, 72, 79, 68, 72, 66, 73, 98, 65, 67, 55, 49, 83, 50, 66, 72, 75, 73, 63, 68, 56, 73, 66, 68, 58, 59, 86, 48, 57, 92, 64, 59, 64, 49, 61, 63, 62, 73, 71, 94, 68, 55, 61, 73, 96, 70, 49, 49, 62, 59, 67, 65, 82, 86, 66, 66, 58, 65, 72, 53, 74, 64, 67, 53, 79, 71, 66, 73, 56, 70, 64, 67, 71, 99, 70, 55, 67, 63, 60, 57, 64, 56, 53, 50, 70, 69, 45, 51, 68, 68, 60, 59, 68, 71, 86, 58, 104, 71, 68, 99, 65, 52, 99, 57, 55, 62, 57, 52, 58, 61, 57, 48, 58, 78, 65, 56, 58, 65, 60, 75, 68, 62, 68, 72, 64, 59, 68, 64, 89, 68, 63, 67, 82, 65, 66, 57, 60, 68, 68, 64, 56, 59, 46, 56, 71, 59, 100, 58, 58, 71, 64, 59, 58, 49, 64, 54, 66, 60, 86, 58, 60, 60, 59, 75, 68, 57, 83, 66, 69, 54, 54, 55, 49, 58, 73, 81, 94, 80, 69, 48, 69, 72, 78, 73, 58, 54, 78, 71, 76, 76, 71, 55, 71, 69, 66, 64, 82, 43, 59, 56, 57, 54, 94, 60, 86, 64, 52, 95, 58, 56, 57, 63, 64, 65, 55, 59, 68, 56, 51, 65, 81, 73, 57, 62, 59, 71, 69, 68, 54, 59, 62, 65, 58, 60, 63, 90, 56, 81, 77, 64, 69, 46, 57, 59, 61, 76, 78, 54, 62, 70, 71, 50, 55, 39, 72, 68, 91, 68, 57, 62, 77, 57, 76, 61, 64, 57, 69, 64, 71, 81, 60, 72, 68, 60, 58, 50, 58, 51, 70, 67, 71, 63, 74, 59, 67, 67, 63, 58, 121, 63, 83, 114, 61, 67, 56, 69, 81, 48, 63, 64, 67, 93, 62, 74, 88, 57, 68, 67, 55, 57, 62, 61, 72, 56, 61, 100, 55, 65, 60, 52, 57, 78, 65, 50, 55, 58, 73, 50, 57, 58, 62, 69, 66, 81, 69, 59, 65, 64, 65, 60, 59, 69, 54, 74, 65, 60, 70, 54, 55, 68, 40, 75, 70, 71, 66, 74, 62, 76, 56, 64, 72, 60, 67, 66, 62, 61, 60, 72, 80, 82, 64, 64, 63, 65, 63, 56, 73, 72, 59, 49, 55, 50, 59, 58, 52, 113, 68, 50, 61, 59, 73, 63, 70, 62, 59, 51, 74, 62, 56, 139, 61, 70, 57, 67, 49, 58, 59, 60, 62, 58, 61, 62, 66, 62, 67, 71, 71, 52, 67, 63, 77, 125, 50, 61, 69, 119, 74, 64, 54, 66, 68, 71, 59, 80, 60, 56, 75, 105, 68, 53, 83, 67, 69, 58, 54, 68, 66, 84, 71, 57, 67, 78, 54, 64, 95, 56, 59, 68, 60, 46, 85, 62, 66, 55, 60, 56, 68, 58, 53, 52, 60, 61, 61, 63, 61, 79, 60, 57, 78, 69, 73, 81, 66, 65, 74, 62, 54, 62, 61, 54, 56, 63, 69, 52, 68, 83, 70, 67, 110, 70, 83, 81, 83, 68, 57, 68, 53, 64, 66, 53, 58, 62, 75, 51, 59, 38, 73, 63, 67, 60, 62, 58, 63, 58, 72, 96, 53, 72, 74, 50, 63, 56, 58, 64, 59, 44, 63, 61, 58, 64, 64, 64, 65, 51, 60, 68, 58, 62, 51, 64, 46, 67, 59, 57, 53, 59, 58, 58, 66, 53, 63, 59, 58, 62, 47, 70, 68, 66, 59, 113, 65, 61, 75, 65, 68, 56, 66, 70, 59, 54, 56, 74, 71, 73, 142, 63, 84, 62, 66, 61, 62, 74, 63, 46, 61, 57, 58, 69, 65, 75, 47, 73, 65, 55, 78, 60, 63, 58, 62, 61, 100, 64, 58, 75, 59, 60, 51, 61, 62, 50, 62, 67, 38, 57, 86, 96, 78, 70, 45, 80, 72, 65, 63, 71, 72, 50, 56, 64, 69, 66, 61, 71, 64, 64, 70, 60, 61, 83, 55, 55, 61, 58, 60, 59, 68, 58, 56, 61, 62, 84, 65, 67, 64, 57, 79, 59, 72, 56, 55, 65, 63, 59, 79, 74, 88, 53, 51, 60, 65, 81, 64, 67, 55, 82, 48, 65, 96, 58, 63, 64, 52, 59, 58, 81, 53, 94, 62, 89, 61, 65, 69, 84, 51, 71, 62, 59, 71, 61, 61, 64, 61, 61, 92, 67, 70, 65, 61, 64, 56, 59, 63, 53, 58, 62, 63, 65, 69, 58, 56, 67, 59, 72, 74, 52, 84, 67, 71, 78, 63, 82, 53, 61, 63, 83, 73, 60, 72, 71, 61, 92, 71, 91, 82, 57, 66, 49, 69, 63, 73, 53, 68, 65, 60, 71, 65, 66, 60, 62, 76, 60, 69, 64, 59, 69, 76, 56, 60, 58, 65, 64, 65, 88, 79, 60, 54, 51, 84, 70, 73, 84, 61, 57, 57, 76, 55, 41, 58, 69, 61, 66, 64, 68, 50, 87, 61, 95, 54, 57, 66, 72, 62, 60, 57, 68, 75, 59, 97, 52, 58, 53, 63, 60, 43, 62, 50, 75, 82, 68, 67, 58, 99, 67, 60, 56, 80, 61, 57, 57, 52, 63, 65, 69, 59, 52, 62, 62, 118, 57, 54, 75, 59, 64, 76, 90, 60, 73, 68, 70, 61, 68, 87, 51, 58, 60, 74, 70, 55, 52, 64, 115, 48, 103, 57, 84, 68, 71, 75, 75, 64, 63, 66, 81, 119, 67, 67, 63, 63, 58, 63, 59, 80, 74, 72, 61, 62, 54, 79, 63, 72, 61, 65, 57, 69, 60, 65, 66, 69, 70, 63, 67, 67, 52, 56, 63, 76, 58, 59, 48, 42, 72, 76, 50, 61, 60, 82, 51, 64, 55, 86, 66, 61, 60, 54, 68, 58, 72, 69, 64, 81, 56, 52, 63, 64, 62, 61, 59, 54, 64, 85, 67, 45, 62, 55, 48, 50, 68, 72, 55, 65, 63, 76, 76, 57, 69, 64, 58, 70, 59, 79, 67, 62, 57, 78, 62, 76, 68, 68, 66, 64, 56, 68, 50, 72, 93, 65, 80, 90, 70, 64, 63, 62, 57, 63, 67, 79, 53, 58, 63, 58, 65, 77, 68, 73, 80, 81, 61, 66, 64, 69, 63, 79, 65, 57, 70, 66, 64, 54, 61, 55, 69, 63, 62, 76, 59, 69, 56, 62, 58, 61, 73, 59, 62, 69, 93, 63, 59, 68, 73, 60, 74, 64, 60, 63, 75, 59, 54, 81, 59, 52, 63, 43, 60, 61, 60, 55, 77, 71, 66, 77, 53, 61, 59, 54, 57, 55, 61, 49, 60, 112, 52, 73, 60, 61, 70, 81, 58, 60, 53, 60, 67, 58, 60, 56, 62, 63, 49, 72, 70, 67, 70, 70, 65, 60, 71, 61, 65, 62, 69, 77, 82, 64, 49, 93, 62, 54, 61, 63, 58, 71, 52, 63, 63, 57, 64, 61, 65, 42, 70, 79, 78, 81, 65, 58, 78, 52, 69, 61, 61, 62, 66, 62, 65, 65, 60, 61, 65, 59, 62, 109, 84, 79, 60, 77, 60, 59, 55, 85, 79, 68, 70, 66, 70, 72, 56, 64, 81, 74, 72, 59, 57, 58, 59, 67, 67, 69, 91, 50, 61, 62, 64, 85, 50, 70, 62, 68, 75, 57, 69, 64, 63, 80, 60, 71, 61, 53, 68, 73, 56, 80, 60, 60, 57, 59, 72, 67, 65, 63, 66, 86, 75, 87, 69, 58, 51, 66, 56, 69, 63, 60, 63, 84, 67, 57, 73, 70, 69, 65, 59, 52, 54, 80, 67, 65, 69, 77, 61, 64, 61, 84, 62, 56, 62, 97, 76, 77, 73, 57, 65, 68, 64, 61, 56, 61, 60, 54, 71, 66, 63, 56, 70, 70, 70, 64, 77, 62, 64, 53, 63, 82, 67, 74, 67, 66, 61, 53, 76, 68, 67, 56, 63, 59, 58, 64, 56, 56, 78, 119, 58, 59, 66, 53, 57, 83, 51, 58, 60, 50, 66, 62, 63, 53, 56, 58, 59, 83, 62, 72, 63, 81, 54, 78, 60, 53, 72, 62, 93, 68, 57, 58, 59, 69, 69, 97, 46, 129, 62, 52, 53, 53, 56, 59, 100, 59, 67, 79, 63, 64, 50, 60, 63, 59, 65, 70, 60, 71, 81, 58, 56, 73, 68, 74, 54, 72, 73, 50, 73, 72, 65, 57, 67, 74, 73, 97, 53, 51, 71, 65, 59, 90, 77, 75, 78, 67, 61, 86, 57, 70, 53, 60, 78, 60, 80, 75, 63, 88, 72, 65, 65, 57, 61, 65, 80, 60, 69, 58, 67, 59, 100, 69, 63, 49, 61, 126, 65, 67, 48, 77, 69, 61, 49, 55, 49, 69, 47, 57, 60, 53, 64, 57, 85, 64, 72, 60, 60, 53, 55, 60, 59, 56, 61, 59, 95, 60, 83, 56, 58, 71, 63, 61, 68, 50, 87, 55, 73, 71, 56, 57, 63, 67, 60, 73, 62, 67, 59, 60, 61, 71, 75, 59, 57, 58, 55, 53, 62, 63, 67, 72, 109, 58, 66, 109, 87, 61, 63, 63, 66, 64, 66, 52, 47, 57, 77, 64, 44, 53, 58, 61, 63, 54, 71, 56, 46, 60, 71, 91, 65, 70, 60, 66, 68, 64, 79, 69, 70, 66, 62, 63, 52, 63, 61, 70, 53, 67, 48, 62, 59, 51, 68, 55, 60, 82, 89, 61, 78, 55, 48, 58, 68, 62, 90, 65, 59, 58, 63, 67, 63, 54, 55, 83, 69, 67, 63, 55, 79, 56, 64, 69, 75, 69, 61, 64, 60, 65, 63, 68, 51, 53, 72, 78, 63, 59, 62, 46, 69, 67, 52, 61, 64, 65, 62, 59, 60, 65, 59, 65, 57, 69, 96, 71, 68, 72, 75, 77, 76, 61, 72, 81, 64, 63, 65, 66, 74, 76, 61, 64, 64, 67, 58, 89, 69, 62, 62, 72, 75, 62, 64, 53, 88, 70, 69, 60, 61, 57, 59, 64, 60, 70, 62, 65, 64, 68, 77, 59, 108, 64, 88, 52, 53, 61, 59, 79, 62, 67, 62, 66, 62, 63, 74, 62, 54, 60, 57, 80, 62, 52, 68, 75, 66, 69, 60, 67, 59, 55, 65, 54, 58, 76, 59, 57, 65, 77, 79, 51, 60, 66, 66, 59, 56, 84, 54, 76, 56, 52, 64, 52, 65, 62, 56, 58, 61, 58, 60, 64, 63, 66, 64, 60, 69, 66, 53, 63, 89, 63, 65, 59, 54, 69, 77, 53, 66, 60, 65, 81, 81, 68, 60, 59, 70, 67, 50, 75, 67, 69, 53, 69, 64, 66, 77, 77, 56, 52, 57, 114, 66, 52, 61, 53, 67, 60, 52, 67, 61, 62, 55, 69, 66, 47, 61, 67, 49, 68, 64, 63, 62, 65, 58, 90, 57, 59, 56, 63, 50, 61, 62, 65, 51, 69, 64, 76, 61, 61, 82, 69, 64, 71, 59, 57, 68, 55, 69, 75, 57, 64, 57, 60, 64, 67, 59, 62, 60, 95, 49, 62, 73, 69, 73, 60, 45, 63, 78, 74, 90, 50, 56, 43, 45, 53, 58, 54, 75, 84, 82, 103, 62, 56, 63, 61, 80, 66, 65, 52, 64, 65, 58, 79, 58, 69, 69, 60, 58, 126, 83, 54, 62, 61, 63, 73, 67, 65, 66, 67, 52, 56, 67, 69, 77, 75, 56, 89, 45, 67, 66, 56, 78, 52, 55, 72, 59, 81, 59, 59, 51, 62, 51, 54, 59, 62, 71, 76, 48, 70, 61, 62, 53, 91, 70, 54, 68, 58, 64, 65, 59, 60, 60, 60, 68, 59, 64, 56, 52, 133, 63, 52, 66, 63, 59, 68, 71, 81, 57, 62, 57, 132, 55, 60, 58, 49, 51, 55, 52, 68, 117, 53, 64, 65, 72, 45, 65, 54, 66, 74, 59, 55, 57, 56, 67, 123, 61, 51, 76, 64, 74, 61, 53, 63, 57, 52, 66, 64, 65, 80, 56, 73, 54, 62, 64, 64, 57, 69, 54, 137, 100, 65, 63, 116, 60, 57, 87, 64, 60, 62, 64, 64, 75, 58, 68, 65, 65, 56, 82, 56, 56, 63, 50, 62, 73, 63, 62, 67, 75, 59, 59, 64, 80, 53, 65, 65, 58, 63, 53, 70, 77, 84, 60, 71, 58, 61, 66, 51, 67, 63, 60, 67, 61, 59, 57, 64, 73, 77, 77, 49, 65, 108, 49, 54, 63, 58, 58, 62, 69, 68, 66, 58, 67, 59, 57, 127, 48, 55, 52, 52, 77, 64, 69, 74, 64, 57, 57, 73, 59, 72, 63, 80, 62, 61, 69, 61, 86, 59, 64, 116, 70, 57, 48, 61, 72, 59, 56, 63, 90, 77, 55, 74, 75, 53, 74, 64, 67, 69, 79, 69, 59, 87, 54, 66, 66, 58, 87, 64, 62, 62, 76, 58, 59, 81, 65, 60, 58, 52, 56, 66, 49, 77, 55, 53, 57, 68, 55, 87, 64, 58, 56, 55, 64, 67, 69, 60, 76, 52, 66, 70, 59, 101, 58, 80, 66, 67, 54, 55, 59, 55, 95, 71, 71, 59, 67, 54, 57, 60, 69, 66, 55, 59, 61, 67, 58, 61, 53, 62, 62, 71, 62, 42, 81, 61, 63, 90, 64, 62, 88, 59, 57, 64, 62, 59, 59, 60, 68, 90, 72, 58, 68, 64, 58, 58, 65, 90, 49, 75, 63, 85, 60, 68, 59, 68, 62, 55, 65, 66, 60, 62, 57, 61, 67, 70, 57, 66, 73, 67, 85, 66, 77, 57, 72, 55, 67, 67, 68, 64, 60, 71, 59, 64, 60, 64, 62, 58, 52, 68, 78, 57, 56, 64, 64, 60, 53, 69, 62, 98, 80, 59, 90, 60, 62, 56, 53, 64, 64, 55, 56, 84, 56, 57, 62, 54, 68, 57, 52, 57, 83, 63, 63, 74, 48, 73, 47, 96, 63, 80, 61, 55, 57, 65, 53, 70, 70, 94, 70, 85, 71, 61, 62, 56, 90, 82, 59, 68, 67, 55, 64, 77, 60, 73, 62, 62, 69, 64, 61, 79, 64, 55, 60, 59, 74, 57, 53, 61, 57, 48, 80, 54, 92, 57, 67, 68, 79, 50, 51, 64, 68, 71, 73, 60, 60, 91, 59, 58, 62, 67, 61, 62, 54, 57, 62, 68, 52, 68, 63, 52, 85, 61, 92, 54, 74, 62, 60, 71, 58, 69, 79, 61, 58, 45, 64, 61, 110, 61, 61, 69, 88, 52, 59, 62, 64, 65, 52, 56, 71, 65, 64, 60, 60, 68, 61, 71, 52, 82, 53, 64, 59, 48, 61, 53, 67, 58, 88, 55, 57, 53, 93, 68, 59, 65, 61, 54, 56, 62, 67, 66, 67, 57, 63, 66, 59, 52, 63, 88, 55, 143, 61, 88, 64, 60, 65, 97, 64, 71, 74, 67, 78, 68, 61, 62, 53, 59, 63, 60, 61, 62, 58, 60, 109, 63, 61, 61, 59, 76, 64, 43, 63, 60, 57, 67, 80, 89, 79, 85, 76, 58, 65, 56, 56, 60, 60, 55, 51, 85, 66, 61, 70, 68, 52, 63, 62, 66, 56, 54, 63, 60, 69, 64, 65, 74, 69, 65, 69, 72, 61, 117, 58, 66, 63, 69, 53, 53, 62, 65, 91, 54, 59, 62, 66, 70, 67, 81, 73, 51, 67, 86, 68, 59, 67, 63, 52, 68, 81, 52, 60, 57, 51, 72, 58, 55, 64, 85, 62, 66, 50, 72, 61, 59, 46, 67, 71, 87, 49, 65, 71, 67, 65, 63, 57, 61, 55, 62, 60, 60, 62, 60, 69, 77, 95, 66, 65, 102, 57, 59, 59, 99, 59, 61, 56, 59, 64, 69, 50, 66, 56, 64, 70, 62, 57, 48, 62, 59, 62, 61, 81, 61, 60, 54, 60, 60, 66, 59, 68, 75, 59, 70, 74, 67, 56, 63, 55, 57, 52, 77, 62, 85, 74, 61, 66, 65, 72, 54, 52, 64, 67, 87, 60, 47, 73, 55, 62, 56, 68, 65, 59, 63, 59, 61, 60, 53, 69, 58, 59, 40, 85, 58, 54, 59, 61, 54, 58, 66, 59, 50, 69, 61, 49, 83, 72, 69, 74, 102, 121, 54, 54, 65, 52, 65, 51, 64, 68, 64, 54, 52, 58, 64, 65, 78, 64, 57, 64, 58, 51, 61, 93, 74, 65, 62, 69, 68, 60, 57, 86, 68, 51, 62, 57, 79, 63, 62, 60, 60, 56, 57, 61, 60, 64, 61, 56, 59, 55, 60, 57, 65, 69, 83, 54, 57, 63, 64, 51, 51, 66, 59, 61, 65, 64, 64, 50, 57, 52, 72, 60, 64, 69, 59, 62, 80, 63, 62, 51, 101, 58, 75, 94, 85, 47, 66, 66, 80, 68, 73, 65, 53, 84, 74, 65, 76, 65, 60, 62, 53, 71, 59, 57, 66, 69, 61, 65, 68, 60, 62, 60, 67, 61, 75, 51, 67, 51, 46, 69, 68, 55, 79, 56, 71, 69, 73, 101, 89, 80, 74, 77, 62, 68, 65, 82, 83, 64, 65, 74, 68, 68, 71, 104, 82, 82, 75, 81, 65, 58, 68, 77, 76, 64, 57, 67, 49, 72, 59, 65, 68, 63, 74, 53, 71, 58, 54, 72, 73, 67, 67, 55, 61, 52, 57, 65, 78, 46, 71, 65, 51, 83, 39, 75, 119, 56, 57, 80, 57, 47, 81, 89, 59, 63, 65, 70, 60, 79, 65, 55, 47, 62, 57, 69, 79, 63, 73, 99, 61, 91, 63, 112, 58, 75, 50, 51, 55, 66, 34, 71, 42, 75, 56, 59, 99, 75, 60, 49, 66, 69, 95, 64, 80, 73, 79, 46, 62, 62, 57, 66, 175, 72, 66, 44, 63, 71, 59, 56, 61, 87, 89, 49, 57, 80, 62, 57, 52, 137, 51, 67, 56, 52, 44, 55, 46, 47, 54, 63, 107, 53, 64, 68, 60, 68, 62, 50, 92, 68, 64, 60, 82, 48, 67, 66, 59, 49, 52, 84, 51, 53, 51, 57, 67, 63, 46, 57, 46, 69, 74, 57, 57, 93, 59, 75, 69, 42, 43, 45, 58, 90, 76, 71, 63, 48, 119, 48, 55, 66, 99, 77, 53, 46, 75, 58, 58, 75, 65, 55, 71, 57, 67, 69, 71, 59, 51, 70, 56, 52, 55, 68, 87, 100, 54, 77, 61, 72, 66, 65, 66, 80, 48, 65, 62, 81, 66, 71, 59, 70, 59, 52, 63, 80, 58, 75, 75, 61, 57, 83, 64, 63, 51, 92, 82, 63, 69, 76, 45, 64, 79, 48, 60, 63, 81, 57, 59, 70, 67, 57, 43, 78, 45, 58, 75, 77, 41, 68, 61, 78, 57, 74, 101, 88, 63, 75, 62, 49, 63, 66, 75, 74, 75, 82, 62, 65, 56, 33, 67, 53, 76, 37, 56, 74, 65, 72, 42, 64, 40, 43, 91, 92, 86, 51, 81, 59, 88, 69, 72, 74, 65, 52, 60, 63, 84, 58, 88, 91, 76, 78, 61, 71, 65, 78, 79, 68, 76, 47, 71, 114, 61, 62, 68, 73, 44, 67, 74, 72, 69, 74, 47, 66, 76, 61, 66, 62, 76, 64, 56, 63, 71, 54, 54, 58, 79, 67, 43, 119, 62, 64, 48, 62, 55, 69, 43, 84, 56, 80, 84, 55, 62, 40, 99, 72, 65, 53, 90, 65, 63, 42, 44, 68, 68, 63, 60, 65, 75, 53, 63, 55, 72, 80, 59, 50, 60, 62, 51, 82, 57, 78, 40, 62, 54, 58, 73, 67, 64, 75, 66, 58, 65, 59, 38, 86, 45, 70, 60, 69, 79, 84, 67, 63, 71, 80, 64, 54, 55, 52, 73, 76, 69, 56, 63, 68, 66, 75, 65, 64, 57, 72, 58, 58, 79, 63, 45, 85, 82, 74, 67, 74, 83, 65, 76, 66, 57, 71, 75, 64, 52, 82, 66, 72, 50, 70, 47, 83, 60, 55, 75, 45, 84, 63, 43, 58, 62, 54, 54, 70, 90, 73, 76, 79, 62, 74, 60, 73, 60, 52, 65, 61, 70, 76, 70, 61, 83, 67, 57, 49, 52, 64, 83, 61, 63, 112, 75, 96, 59, 77, 56, 39, 72, 62, 62, 47, 50, 54, 57, 94, 57, 94, 57, 65, 64, 77, 46, 57, 68, 47, 89, 62, 44, 68, 65, 52, 84, 56, 94, 59, 46, 68, 81, 61, 57, 73, 99, 65, 76, 61, 63, 61, 49, 73, 68, 62, 52, 67, 66, 51, 77, 68, 72, 72, 74, 56, 66, 71, 62, 75, 63, 66, 68, 61, 67, 53, 50, 99, 55, 54, 64, 53, 49, 67, 71, 69, 86, 73, 59, 54, 84, 41, 69, 78, 77, 80, 55, 48, 63, 90, 72, 88, 55, 59, 59, 73, 80, 48, 106, 42, 72, 48, 73, 68, 60, 88, 63, 94, 61, 59, 62, 70, 85, 92, 65, 72, 65, 58, 129, 56, 54, 61, 70, 57, 63, 55, 61, 70, 31, 62, 53, 55, 65, 68, 50, 64, 66, 62, 69, 69, 60, 65, 70, 103, 62, 67, 82, 62, 67, 65, 80, 63, 61, 53, 57, 52, 58, 81, 60, 52, 57, 61, 67, 62, 57, 54, 56, 62, 79, 63, 53, 49, 83, 82, 83, 79, 77, 69, 86, 66, 40, 58, 69, 71, 78, 79, 56, 85, 61, 63, 79, 74, 61, 53, 74, 47, 60, 50, 64, 57, 56, 56, 73, 62, 74, 69, 62, 65, 72, 83, 56, 53, 72, 57, 47, 43, 62, 72, 54, 76, 64, 56, 80, 50, 83, 78, 57, 71, 53, 76, 100, 60, 76, 91, 70, 62, 49, 56, 67, 59, 66, 113, 47, 90, 61, 57, 69, 58, 87, 68, 59, 86, 61, 69, 63, 65, 81, 34, 87, 65, 51, 65, 75, 54, 64, 45, 76, 73, 78, 67, 61, 49, 56, 59, 89, 80, 72, 72, 73, 98, 57, 177, 58, 66, 58, 49, 65, 72, 88, 62, 66, 65, 54, 60, 68, 34, 57, 59, 56, 68, 57, 54, 71, 72, 55, 53, 69, 67, 64, 69, 71, 73, 63, 70, 66, 71, 70, 44, 80, 61, 58, 63, 64, 49, 94, 47, 64, 56, 71, 45, 59, 68, 74, 57, 53, 50, 73, 77, 68, 52, 79, 63, 73, 78, 83, 51, 51, 67, 48, 93, 41, 72, 64, 59, 65, 57, 86, 77, 65, 64, 58, 58, 56, 50, 89, 57, 68, 88, 57, 87, 84, 35, 53, 79, 80, 52, 54, 80, 54, 79, 42, 69, 79, 69, 70, 129, 51, 78, 88, 115, 64, 53, 58, 65, 52, 62, 65, 74, 78, 64, 74, 68, 52, 63, 51, 80, 58, 71, 69, 63, 63, 56, 61, 61, 48, 37, 79, 93, 66, 65, 71, 57, 66, 79, 66, 114, 85, 60, 69, 57, 71, 54, 79, 67, 72, 64, 72, 74, 78, 64, 87, 92, 67, 57, 102, 70, 81, 62, 54, 74, 59, 64, 80, 73, 70, 56, 54, 63, 46, 58, 50, 54, 40, 61, 34, 58, 97, 79, 80, 79, 47, 61, 69, 58, 55, 71, 78, 57, 50, 65, 70, 56, 58, 68, 36, 66, 75, 68, 66, 46, 67, 49, 74, 78, 65, 71, 70, 55, 58, 78, 73, 82, 49, 44, 76, 73, 65, 67, 55, 60, 49, 48, 73, 54, 61, 63, 62, 55, 70, 77, 62, 55, 74, 52, 98, 64, 91, 67, 71, 56, 90, 56, 79, 87, 63, 60, 67, 52, 58, 52, 60, 84, 52, 57, 71, 48, 58, 57, 69, 72, 81, 60, 69, 57, 62, 61, 84, 71, 59, 76, 57, 57, 47, 52, 61, 55, 82, 61, 57, 69, 79, 66, 80, 60, 58, 58, 80, 64, 53, 74, 62, 61, 55, 74, 62, 55, 69, 63, 70, 82, 50, 70, 53, 58, 94, 78, 63, 70, 51, 54, 72, 73, 43, 86, 67, 55, 76, 102, 53, 55, 74, 59, 78, 69, 57, 55, 64, 57, 67, 59, 71, 67, 76, 56, 74, 69, 57, 61, 82, 45, 46, 73, 57, 63, 49, 84, 44, 62, 78, 77, 67, 76, 90, 65, 44, 111, 65, 72, 65, 49, 83, 67, 59, 67, 56, 71, 58, 56, 60, 73, 59, 72, 86, 83, 71, 61, 59, 86, 43, 58, 66, 70, 100, 62, 54, 102, 57, 56, 70, 40, 80, 69, 68, 58, 77, 77, 40, 58, 75, 60, 52, 56, 47, 76, 67, 47, 101, 69, 65, 66, 60, 62, 51, 86, 76, 71, 81, 59, 83, 60, 56, 80, 55, 77, 89, 68, 52, 53, 82, 126, 73, 56, 54, 61, 81, 53, 59, 49, 63, 73, 79, 64, 53, 45, 73, 56, 60, 42, 62, 63, 78, 62, 60, 63, 83, 55, 56, 54, 63, 70, 69, 60, 65, 69, 61, 66, 73, 73, 47, 56, 83, 104, 76, 57, 63, 78, 93, 59, 55, 70, 63, 48, 61, 53, 53, 94, 70, 56, 60, 72, 72, 58, 58, 69, 53, 92, 54, 56, 62, 69, 51, 65, 63, 53, 59, 57, 53, 53, 49, 59, 65, 75, 104, 67, 62, 68, 90, 39, 63, 62, 57, 71, 53, 65, 65, 60, 71, 58, 58, 98, 60, 56, 78, 62, 73, 59, 59, 65, 69, 64, 72, 59, 57, 62, 45, 56, 67, 56, 59, 44, 81, 53, 60, 47, 77, 85, 71, 69, 57, 61, 62, 47, 59, 74, 87, 67, 60, 54, 66, 66, 63, 71, 47, 38, 74, 60, 72, 61, 76, 89, 63, 91, 60, 69, 50, 56, 47, 76, 85, 59, 58, 58, 75, 52, 70, 52, 43, 57, 82, 69, 62, 65, 80, 47, 62, 59, 81, 101, 82, 50, 69, 62, 61, 54, 73, 94, 69, 61, 63, 61, 78, 62, 62, 65, 57, 60, 75, 63, 57, 43, 71, 66, 68, 72, 66, 79, 73, 65, 53, 59, 47, 76, 113, 59, 54, 67, 55, 57, 67, 56, 62, 67, 56, 58, 102, 48, 73, 55, 61, 59, 62, 64, 55, 55, 73, 58, 63, 70, 74, 71, 106, 65, 67, 65, 69, 78, 51, 75, 71, 62, 73, 75, 68, 63, 39, 74, 71, 64, 57, 80, 51, 64, 75, 66, 58, 70, 102, 63, 68, 64, 84, 61, 63, 52, 54, 72, 65, 78, 63, 43, 40, 64, 39, 65, 79, 66, 57, 58, 52, 92, 68, 88, 69, 70, 80, 44, 60, 65, 68, 55, 65, 53, 59, 81, 77, 54, 81, 71, 62, 60, 139, 59, 74, 66, 52, 82, 50, 51, 52, 62, 69, 68, 82, 91, 82, 60, 61, 61, 57, 78, 74, 88, 90, 70, 37, 85, 88, 79, 40, 64, 81, 68, 54, 62, 50, 61, 83, 62, 65, 54, 48, 49, 78, 62, 70, 71, 69, 119, 110, 65, 61, 40, 81, 41, 146, 77, 91, 57, 83, 53, 68, 46, 70, 68, 138, 101, 51, 70, 60, 57, 85, 77, 77, 45, 51, 82, 42, 97, 63, 82, 70, 54, 61, 64, 57, 54, 79, 70, 69, 67, 70, 60, 54, 49, 61, 53, 63, 67, 78, 58, 88, 60, 49, 86, 64, 52, 56, 83, 71, 64, 95, 64, 72, 91, 62, 61, 60, 77, 56, 63, 56, 66, 56, 59, 86, 71, 66, 63, 78, 69, 63, 71, 61, 63, 69, 64, 59, 88, 66, 79, 74, 86, 55, 64, 54, 54, 64, 68, 63, 52, 55, 67, 53, 72, 58, 56, 87, 49, 58, 85, 68, 58, 56, 61, 82, 151, 57, 60, 74, 73, 73, 109, 78, 60, 109, 81, 63, 52, 48, 98, 94, 41, 63, 72, 47, 57, 86, 59, 71, 57, 58, 57, 69, 74, 46, 54, 76, 81, 63, 65, 50, 74, 44, 61, 61, 68, 72, 69, 52, 29, 54, 57, 64, 47, 55, 50, 72, 54, 64, 72, 70, 61, 51, 48, 72, 92, 48, 57, 37, 52, 45, 89, 61, 65, 110, 53, 65, 58, 58, 64, 84, 68, 100, 60, 48, 65, 71, 55, 77, 71, 68, 53, 74, 66, 66, 63, 57, 59, 59, 52, 64, 52, 62, 63, 67, 56, 105, 61, 65, 54, 72, 61, 51, 69, 65, 53, 51, 61, 72, 55, 59, 60, 63, 52, 57, 60, 67, 57, 72, 53, 52, 46, 37, 69, 58, 89, 132, 50, 47, 78, 75, 74, 54, 55, 62, 54, 45, 56, 60, 64, 67, 72, 92, 59, 72, 87, 68, 72, 59, 59, 61, 57, 61, 75, 55, 55, 77, 82, 61, 69, 72, 86, 59, 68, 57, 53, 65, 65, 126, 83, 50, 80, 53, 62, 55, 67, 68, 60, 78, 58, 37, 52, 82, 96, 60, 69, 52, 80, 66, 56, 56, 70, 65, 56, 60, 52, 58, 54, 70, 67, 92, 64, 65, 52, 51, 61, 62, 85, 61, 101, 74, 72, 71, 103, 110, 59, 77, 66, 64, 61, 56, 67, 77, 53, 85, 59, 83, 54, 99, 65, 54, 80, 58, 93, 79, 100, 57, 61, 73, 36, 76, 61, 54, 57, 61, 68, 113, 51, 69, 69, 73, 63, 73, 60, 64, 95, 60, 57, 64, 97, 63, 64, 67, 95, 42, 79, 71, 85, 48, 52, 79, 59, 60, 58, 67, 84, 101, 70, 43, 43, 57, 73, 60, 54, 62, 49, 68, 62, 95, 53, 61, 50, 78, 56, 74, 67, 47, 60, 55, 61, 67, 42, 66, 69, 68, 58, 76, 79, 57, 59, 60, 51, 55, 63, 62, 33, 42, 52, 97, 67, 75, 71, 57, 53, 62, 64, 59, 51, 59, 87, 57, 75, 57, 80, 58, 66, 59, 67, 52, 70, 60, 83, 73, 66, 86, 69, 61, 50, 86, 74, 71, 64, 61, 58, 109, 63, 61, 54, 61, 58, 68, 67, 56, 64, 65, 50, 58, 65, 64, 67, 58, 70, 36, 68, 61, 58, 80, 80, 76, 53, 68, 46, 57, 70, 66, 66, 56, 68, 72, 54, 78, 64, 59, 70, 68, 62, 67, 87, 39, 47, 75, 67, 80, 61, 67, 55, 62, 48, 87, 87, 61, 69, 74, 69, 58, 70, 54, 57, 95, 66, 46, 101, 75, 72, 78, 64, 82, 72, 67, 55, 65, 70, 67, 61, 69, 65, 67, 72, 71, 73, 68, 56, 82, 64, 65, 52, 77, 45, 59, 32, 59, 63, 66, 63, 65, 70, 60, 66, 61, 91, 62, 77, 53, 48, 65, 76, 56, 46, 55, 58, 84, 77, 56, 68, 45, 52, 74, 78, 82, 63, 65, 60, 59, 60, 66, 59, 64, 63, 61, 65, 56, 66, 66, 52, 58, 77, 127, 47, 66, 57, 63, 45, 50, 53, 42, 62, 75, 58, 69, 57, 54, 71, 75, 55, 54, 80, 67, 78, 60, 56, 41, 61, 70, 53, 43, 66, 78, 75, 59, 63, 80, 55, 61, 70, 57, 35, 46, 63, 56, 82, 56, 53, 88, 110, 62, 53, 50, 60, 107, 57, 71, 61, 61, 53, 61, 61, 58, 76, 55, 81, 55, 43, 84, 60, 70, 61, 66, 64, 77, 65, 67, 68, 85, 73, 77, 52, 80, 65, 72, 70, 82, 64, 70, 48, 69, 97, 62, 64, 66, 65, 57, 56, 68, 78, 69, 60, 54, 53, 58, 91, 62, 53, 70, 59, 51, 70, 74, 59, 70, 61, 72, 61, 57, 61, 64, 50, 62, 64, 53, 53, 78, 84, 80, 56, 67, 59, 76, 45, 55, 77, 68, 62, 64, 47, 91, 60, 52, 56, 61, 55, 74, 60, 66, 56, 59, 64, 59, 66, 82, 69, 54, 60, 54, 60, 54, 64, 54, 61, 111, 79, 53, 55, 51, 66, 59, 82, 55, 64, 65, 89, 70, 69, 45, 58, 67, 70, 58, 76, 56, 71, 84, 47, 84, 67, 81, 52, 58, 61, 81, 61, 58, 119, 87, 51, 65, 55, 82, 67, 45, 68, 66, 70, 76, 56, 67, 56, 47, 53, 73, 68, 60, 56, 56, 57, 70, 56, 81, 75, 74, 53, 108, 44, 73, 62, 62, 58, 77, 52, 56, 59, 58, 77, 65, 67, 86, 43, 67, 54, 62, 79, 109, 70, 63, 59, 87, 86, 59, 56, 62, 62, 58, 64, 70, 53, 73, 48, 71, 67, 48, 57, 65, 56, 55, 67, 71, 80, 53, 54, 78, 65, 59, 76, 63, 69, 75, 61, 59, 64, 63, 69, 81, 61, 52, 58, 49, 87, 59, 56, 78, 78, 52, 112, 91, 56, 73, 56, 87, 61, 55, 57, 59, 78, 59, 60, 53, 57, 66, 67, 67, 86, 85, 76, 55, 72, 59, 62, 55, 58, 76, 64, 81, 58, 105, 76, 60, 52, 62, 74, 54, 61, 64, 51, 63, 91, 50, 68, 67, 61, 74, 61, 70, 71, 61, 51, 67, 55, 63, 58, 58, 68, 75, 59, 57, 62, 47, 74, 58, 67, 65, 62, 63, 84, 62, 51, 54, 81, 102, 58, 104, 69, 68, 55, 70, 58, 76, 83, 68, 47, 83, 78, 73, 58, 59, 54, 74, 63, 70, 54, 56, 64, 93, 59, 63, 64, 81, 59, 53, 79, 63, 72, 66, 57, 56, 50, 61, 59, 62, 64, 45, 62, 113, 63, 65, 67, 58, 88, 65, 47, 49, 61, 67, 54, 62, 67, 68, 72, 81, 61, 57, 60, 51, 60, 62, 79, 93, 75, 83, 68, 73, 73, 64, 84, 69, 67, 57, 76, 81, 62, 74, 62, 61, 78, 66, 81, 76, 68, 69, 57, 56, 51, 78, 51, 57, 51, 111, 69, 70, 82, 68, 81, 63, 80, 63, 54, 88, 59, 66, 57, 103, 87, 51, 65, 68, 68, 53, 72, 51, 91, 50, 63, 51, 65, 63, 70, 70, 67, 62, 72, 59, 52, 73, 48, 64, 52, 55, 66, 84, 54, 63, 62, 76, 60, 60, 63, 68, 64, 60, 49, 47, 82, 58, 105, 63, 67, 63, 74, 42, 79, 104, 102, 78, 54, 59, 68, 60, 61, 75, 72, 58, 56, 44, 60, 60, 59, 38, 65, 52, 66, 51, 58, 67, 87, 74, 75, 57, 56, 67, 61, 89, 68, 55, 77, 121, 58, 59, 62, 79, 60, 102, 63, 53, 59, 84, 64, 59, 97, 65, 70, 68, 66, 85, 53, 52, 44, 70, 54, 62, 64, 58, 74, 74, 48, 63, 65, 74, 64, 63, 65, 58, 65, 96, 51, 63, 63, 81, 71, 90, 61, 55, 56, 68, 53, 56, 62, 68, 58, 56, 56, 41, 85, 107, 69, 104, 69, 59, 64, 48, 79, 52, 73, 55, 51, 101, 57, 70, 75, 70, 70, 61, 60, 57, 56, 79, 64, 55, 63, 89, 66, 61, 70, 72, 56, 41, 67, 60, 78, 78, 55, 49, 85, 66, 57, 62, 59, 58, 54, 75, 58, 59, 51, 68, 68, 59, 52, 82, 50, 59, 81, 83, 94, 60, 61, 53, 54, 69, 68, 55, 61, 58, 53, 66, 70, 136, 58, 66, 61, 51, 80, 50, 60, 57, 61, 65, 62, 72, 68, 55, 68, 83, 68, 96, 65, 58, 60, 65, 51, 70, 77, 71, 100, 57, 65, 76, 56, 52, 72, 63, 69, 50, 57, 51, 54, 66, 66, 76, 60, 72, 150, 58, 49, 67, 59, 93, 51, 59, 59, 65, 56, 46, 64, 54, 64, 88, 58, 72, 71, 63, 77, 57, 95, 78, 68, 56, 66, 58, 57, 52, 76, 69, 72, 106, 69, 48, 62, 59, 61, 126, 68, 69, 54, 61, 61, 59, 66, 57, 60, 55, 58, 50, 61, 69, 68, 75, 54, 63, 49, 57, 57, 71, 65, 60, 60, 84, 55, 57, 85, 71, 92, 84, 48, 57, 65, 98, 57, 56, 61, 57, 60, 51, 81, 86, 63, 58, 52, 45, 87, 49, 52, 59, 57, 61, 65, 96, 65, 69, 61, 70, 72, 68, 122, 79, 67, 61, 46, 67, 54, 64, 70, 83, 61, 61, 78, 66, 70, 66, 83, 58, 45, 47, 67, 64, 56, 67, 66, 54, 48, 80, 68, 67, 98, 107, 63, 62, 65, 84, 85, 57, 62, 94, 68, 66, 75, 81, 66, 59, 61, 63, 44, 61, 88, 88, 54, 60, 64, 64, 55, 49, 65, 50, 64, 54, 60, 80, 63, 75, 77, 60, 37, 44, 58, 69, 55, 90, 55, 68, 39, 62, 75, 72, 89, 43, 35, 63, 60, 94, 51, 55, 51, 63, 53, 58, 97, 75, 87, 67, 45, 61, 45, 57, 66, 67, 62, 46, 76, 56, 47, 67, 70, 56, 69, 63, 84, 69, 40, 64, 58, 77, 55, 67, 54, 62, 88, 60, 53, 57, 59, 74, 50, 63, 56, 64, 50, 68, 84, 55, 64, 51, 60, 50, 47, 62, 80, 53, 52, 59, 75, 51, 59, 81, 65, 67, 76, 70, 100, 64, 69, 70, 75, 68, 43, 46, 50, 82, 55, 39, 53, 57, 67, 58, 57, 48, 68, 80, 49, 45, 78, 67, 66, 129, 82, 58, 39, 56, 144, 53, 72, 49, 59, 71, 58, 55, 54, 81, 66, 51, 53, 54, 69, 72, 78, 57, 59, 53, 72, 48, 61, 58, 69, 58, 79, 56, 69, 51, 95, 121, 54, 54, 60, 56, 48, 59, 54, 86, 73, 58, 49, 58, 135, 37, 63, 63, 91, 107, 34, 33, 46, 68, 70, 54, 53, 52, 62, 53, 50, 68, 71, 76, 81, 73, 57, 68, 62, 97, 57, 52, 52, 72, 87, 89, 60, 58, 60, 57, 62, 72, 105, 66, 52, 58, 123, 80, 53, 65, 44, 64, 53, 62, 64, 63, 49, 68, 52, 70, 87, 52, 54, 57, 72, 93, 87, 65, 58, 69, 47, 68, 55, 61, 83, 63, 70, 63, 80, 65, 84, 82, 68, 54, 58, 81, 74, 46, 68, 64, 81, 52, 64, 62, 79, 59, 53, 85, 58, 71, 51, 50, 79, 75, 64, 56, 71, 53, 71, 58, 44, 60, 52, 78, 59, 75, 88, 50, 66, 59, 85, 58, 54, 54, 74, 65, 63, 65, 43, 78, 82, 70, 56, 44, 80, 74, 64, 68, 75, 70, 85, 77, 55, 72, 64, 71, 127, 138, 68, 62, 55, 40, 92, 61, 63, 77, 78, 54, 59, 74, 55, 66, 80, 80, 98, 45, 69, 66, 61, 63, 58, 48, 62, 87, 62, 64, 65, 51, 83, 43, 51, 65, 50, 80, 52, 69, 68, 61, 76, 72, 80, 64, 63, 66, 67, 86, 71, 67, 61, 53, 46, 78, 70, 60, 63, 69, 73, 50, 52, 61, 61, 68, 60, 42, 51, 59, 54, 91, 57, 55, 79, 55, 68, 70, 105, 59, 72, 62, 80, 88, 51, 64, 64, 53, 109, 61, 47, 68, 70, 51, 62, 49, 52, 68, 52, 100, 50, 57, 79, 68, 64, 77, 79, 93, 49, 70, 96, 65, 71, 90, 74, 50, 99, 50, 51, 69, 65, 79, 62, 51, 72, 49, 40, 56, 66, 64, 79, 53, 56, 99, 62, 71, 59, 58, 44, 100, 45, 50, 45, 51, 80, 69, 63, 67, 64, 65, 75, 87, 75, 58, 58, 69, 71, 51, 83, 54, 69, 61, 56, 65, 55, 80, 52, 51, 59, 94, 49, 54, 55, 85, 83, 66, 63, 89, 57, 77, 52, 96, 62, 84, 63, 56, 48, 59, 59, 58, 86, 92, 57, 86, 63, 60, 73, 49, 60, 60, 72, 55, 60, 51, 74, 88, 57, 50, 48, 86, 55, 76, 76, 62, 54, 53, 71, 112, 59, 66, 60, 44, 78, 103, 65, 62, 65, 59, 66, 76, 77, 85, 51, 77, 48, 58, 59, 66, 56, 87, 64, 92, 69, 46, 65, 66, 75, 66, 68, 65, 62, 66, 48, 71, 54, 93, 44, 52, 58, 57, 60, 92, 59, 50, 59, 58, 87, 66, 63, 98, 40, 62, 58, 75, 67, 69, 109, 48, 46, 62, 49, 66, 67, 70, 65, 55, 59, 54, 91, 65, 63, 56, 78, 77, 67, 77, 95, 61, 45, 55, 70, 55, 83, 63, 85, 70, 68, 64, 50, 63, 72, 56, 66, 60, 59, 112, 88, 53, 35, 65, 65, 57, 39, 85, 72, 76, 59, 91, 72, 62, 58, 71, 65, 83, 71, 49, 63, 67, 60, 52, 70, 100, 59, 70, 69, 93, 58, 47, 78, 100, 53, 47, 73, 77, 52, 72, 64, 83, 54, 59, 65, 66, 66, 46, 68, 73, 47, 52, 58, 52, 51, 77, 64, 99, 58, 63, 81, 40, 42, 51, 65, 59, 80, 66, 43, 66, 72, 64, 51, 66, 67, 65, 59, 60, 70, 42, 60, 73, 60, 66, 75, 42, 44, 66, 32, 72, 59, 88, 64, 93, 60, 67, 50, 54, 69, 73, 66, 70, 58, 62, 71, 62, 60, 63, 62, 61, 59, 69, 54, 59, 56, 75, 62, 78, 62, 80, 65, 103, 61, 54, 61, 43, 107, 63, 75, 53, 74, 64, 56, 53, 83, 62, 59, 55, 56, 64, 50, 46, 69, 61, 69, 46, 64, 65, 128, 129, 54, 91, 60, 83, 83, 68, 62, 60, 65, 60, 46, 80, 64, 69, 58, 79, 67, 69, 81, 80, 65, 57, 55, 62, 56, 61, 60, 61, 86, 38, 62, 52, 50, 60, 87, 54, 83, 59, 73, 65, 50, 129, 40, 95, 50, 49, 91, 53, 50, 60, 59, 70, 68, 56, 57, 44, 57, 79, 65, 64, 76, 60, 50, 61, 48, 67, 55, 37, 91, 56, 58, 69, 70, 39, 85, 59, 59, 49, 42, 76, 67, 48, 55, 87, 57, 104, 117, 77, 62, 65, 70, 58, 60, 69, 72, 84, 58, 64, 109, 55, 62, 70, 54, 40, 77, 63, 58, 73, 81, 78, 54, 50, 51, 48, 70, 77, 47, 67, 49, 103, 100, 68, 58, 75, 49, 98, 52, 62, 96, 63, 75, 60, 96, 56, 61, 68, 42, 63, 59, 75, 74, 67, 77, 70, 70, 79, 58, 46, 65, 61, 43, 45, 65, 69, 57, 105, 71, 61, 74, 41, 81, 87, 53, 80, 44, 79, 32, 82, 68, 76, 55, 54, 63, 81, 58, 66, 55, 57, 75, 63, 51, 62, 67, 60, 65, 63, 52, 65, 99, 76, 69, 66, 56, 62, 58, 59, 78, 45, 64, 71, 58, 66, 61, 76, 53, 58, 60, 69, 54, 56, 58, 51, 70, 61, 79, 57, 65, 79, 61, 60, 63, 69, 65, 72, 63, 86, 68, 64, 81, 59, 57, 69, 71, 60, 50, 58, 68, 78, 49, 85, 44, 62, 69, 58, 56, 76, 64, 60, 69, 79, 75, 72, 51, 73, 58, 59, 61, 57, 79, 58, 58, 54, 61, 66, 51, 59, 69, 83, 80, 70, 56, 67, 71, 75, 52, 62, 57, 71, 59, 61, 70, 58, 84, 58, 49, 74, 55, 57, 69, 79, 63, 72, 80, 78, 61, 68, 91, 72, 52, 92, 46, 67, 63, 68, 72, 74, 77, 58, 66, 94, 56, 70, 63, 51, 69, 53, 65, 59, 62, 62, 83, 82, 77, 63, 74, 67, 52, 53, 67, 62, 76, 74, 59, 64, 67, 61, 89, 73, 65, 49, 74, 70, 66, 69, 75, 62, 71, 74, 59, 57, 59, 72, 66, 78, 55, 54, 59, 71, 61, 69, 56, 58, 57, 83, 80, 72, 81, 69, 55, 63, 63, 53, 58, 71, 69, 76, 75, 59, 44, 62, 70, 57, 59, 65, 55, 60, 68, 58, 54, 55, 74, 56, 92, 63, 83, 60, 72, 77, 75, 77, 62, 74, 78, 64, 72, 53, 70, 61, 71, 62, 98, 62, 65, 65, 53, 64, 65, 67, 64, 63, 70, 92, 64, 72, 55, 62, 49, 54, 66, 67, 61, 62, 61, 62, 46, 59, 60, 60, 61, 52, 62, 65, 61, 66, 64, 68, 48, 53, 63, 72, 69, 67, 73, 94, 61, 71, 60, 75, 82, 51, 80, 67, 63, 65, 63, 66, 67, 71, 55, 59, 60, 69, 90, 57, 63, 56, 54, 80, 80, 60, 62, 54, 59, 60, 54, 106, 61, 64, 47, 69, 58, 62, 55, 84, 56, 47, 66, 76, 58, 70, 75, 55, 58, 77, 73, 56, 50, 60, 70, 61, 76, 73, 59, 73, 60, 69, 60, 59, 55, 59, 80, 74, 58, 71, 59, 104, 75, 58, 51, 58, 63, 58, 58, 97, 64, 57, 56, 92, 51, 52, 73, 63, 61, 61, 76, 78, 58, 50, 72, 60, 64, 54, 64, 70, 67, 66, 61, 61, 54, 62, 74, 75, 60, 79, 73, 68, 67, 76, 57, 70, 70, 77, 55, 56, 64, 63, 79, 61, 43, 60, 65, 56, 67, 71, 51, 68, 55, 74, 78, 71, 54, 52, 79, 71, 61, 56, 56, 56, 65, 83, 76, 64, 56, 67, 55, 67, 69, 67, 74, 75, 60, 54, 64, 62, 62, 64, 59, 59, 68, 67, 61, 65, 63, 58, 44, 61, 49, 61, 63, 76, 66, 63, 97, 73, 64, 61, 81, 61, 56, 79, 56, 95, 59, 59, 44, 62, 79, 56, 77, 62, 50, 60, 72, 98, 62, 85, 56, 94, 64, 56, 52, 58, 63, 57, 45, 56, 58, 65, 53, 69, 79, 49, 68, 51, 79, 67, 64, 70, 64, 73, 72, 68, 63, 114, 64, 76, 57, 79, 74, 57, 76, 66, 69, 68, 74, 62, 56, 73, 64, 62, 71, 62, 54, 71, 74, 65, 47, 63, 54, 92, 61, 63, 68, 50, 85, 44, 63, 70, 72, 65, 68, 69, 63, 52, 67, 86, 55, 76, 66, 52, 87, 63, 51, 73, 45, 63, 60, 88, 81, 134, 68, 77, 61, 70, 58, 63, 53, 58, 70, 73, 61, 67, 61, 74, 61, 76, 63, 66, 84, 109, 56, 62, 57, 91, 61, 54, 55, 67, 55, 71, 55, 78, 52, 37, 54, 53, 61, 73, 54, 75, 64, 88, 60, 70, 59, 80, 54, 60, 81, 55, 93, 66, 54, 67, 66, 56, 67, 63, 60, 162, 63, 73, 58, 58, 68, 64, 66, 53, 63, 70, 60, 61, 57, 51, 61, 54, 66, 65, 60, 57, 94, 60, 59, 52, 65, 52, 80, 54, 94, 63, 66, 54, 61, 67, 64, 83, 56, 49, 52, 83, 64, 66, 52, 65, 74, 57, 58, 65, 68, 73, 59, 71, 55, 84, 62, 53, 59, 67, 65, 60, 85, 54, 73, 82, 73, 52, 57, 61, 66, 73, 64, 47, 51, 76, 100, 61, 48, 83, 57, 66, 71, 116, 65, 65, 53, 73, 60, 59, 50, 65, 51, 72, 58, 67, 53, 62, 62, 39, 61, 69, 111, 64, 53, 52, 60, 83, 74, 61, 70, 83, 61, 63, 49, 68, 58, 64, 57, 80, 57, 66, 131, 53, 58, 68, 109, 76, 103, 64, 72, 69, 63, 84, 67, 58, 68, 72, 72, 59, 57, 59, 69, 63, 61, 70, 57, 73, 64, 59, 69, 110, 69, 49, 52, 62, 67, 64, 62, 68, 56, 49, 65, 68, 66, 57, 76, 75, 62, 71, 86, 54, 85, 73, 73, 47, 52, 51, 75, 87, 68, 53, 92, 121, 52, 52, 49, 58, 56, 67, 66, 71, 71, 81, 59, 77, 55, 65, 65, 56, 68, 70, 60, 65, 89, 67, 80, 70, 84, 62, 61, 77, 86, 66, 68, 70, 60, 78, 60, 64, 59, 58, 67, 59, 76, 78, 64, 60, 64, 63, 62, 60, 72, 67, 63, 60, 73, 54, 63, 74, 59, 53, 57, 74, 56, 54, 66, 59, 61, 56, 63, 62, 54, 55, 58, 69, 123, 55, 57, 79, 71, 64, 55, 63, 67, 54, 63, 79, 67, 53, 90, 64, 77, 64, 70, 62, 80, 111, 46, 62, 50, 62, 62, 70, 63, 51, 57, 60, 48, 55, 54, 63, 62, 48, 83, 75, 54, 64, 72, 59, 57, 50, 67, 78, 68, 56, 72, 54, 78, 57, 67, 76, 57, 73, 61, 67, 59, 63, 61, 53, 64, 65, 61, 66, 75, 78, 58, 75, 65, 72, 57, 58, 73, 57, 63, 73, 57, 83, 59, 86, 59, 52, 63, 56, 48, 60, 52, 69, 83, 53, 57, 59, 75, 45, 40, 64, 73, 62, 60, 63, 69, 64, 84, 71, 63, 70, 58, 73, 56, 54, 58, 62, 67, 62, 70, 66, 61, 50, 92, 58, 60, 65, 56, 65, 53, 71, 59, 77, 47, 111, 89, 58, 47, 63, 64, 55, 59, 58, 53, 71, 61, 58, 54, 65, 67, 70, 91, 65, 68, 67, 67, 63, 76, 56, 56, 74, 68, 61, 76, 46, 57, 62, 63, 61, 78, 66, 60, 58, 60, 76, 51, 63, 74, 73, 72, 57, 65, 68, 80, 66, 60, 70, 59, 66, 64, 69, 62, 75, 64, 65, 56, 92, 60, 54, 58, 55, 86, 59, 62, 48, 81, 61, 74, 65, 72, 88, 58, 53, 56, 45, 65, 57, 58, 71, 60, 72, 60, 86, 61, 71, 63, 76, 66, 53, 59, 64, 54, 85, 69, 77, 62, 71, 94, 73, 94, 95, 94, 70, 62, 77, 72, 66, 66, 59, 71, 46, 68, 41, 76, 55, 67, 60, 55, 66, 57, 55, 54, 65, 81, 79, 75, 57, 52, 83, 69, 73, 89, 57, 52, 57, 87, 54, 78, 59, 56, 105, 69, 59, 63, 68, 69, 49, 68, 60, 63, 64, 69, 73, 90, 74, 62, 60, 56, 55, 68, 58, 63, 75, 68, 65, 50, 50, 71, 63, 52, 73, 73, 56, 99, 59, 61, 50, 51, 65, 70, 62, 71, 61, 68, 66, 65, 61, 66, 53, 55, 64, 73, 55, 101, 66, 96, 69, 54, 62, 70, 92, 61, 61, 67, 60, 72, 78, 74, 57, 66, 53, 66, 59, 54, 61, 56, 48, 57, 61, 70, 58, 69, 70, 54, 67, 80, 74, 70, 70, 66, 63, 66, 63, 64, 73, 76, 63, 55, 59, 52, 64, 95, 70, 56, 52, 68, 59, 54, 69, 72, 71, 72, 84, 82, 76, 65, 68, 96, 72, 63, 77, 73, 63, 59, 66, 75, 61, 69, 74, 58, 76, 61, 56, 68, 64, 63, 49, 56, 56, 58, 76, 59, 61, 68, 63, 64, 72, 60, 68, 49, 77, 61, 66, 56, 53, 55, 48, 59, 68, 63, 60, 72, 62, 75, 47, 67, 65, 72, 65, 80, 67, 58, 56, 64, 64, 71, 77, 70, 52, 66, 82, 53, 63, 78, 63, 59, 65, 64, 65, 60, 71, 78, 77, 57, 68, 60, 53, 59, 75, 67, 62, 58, 64, 53, 76, 62, 62, 59, 63, 67, 71, 58, 67, 61, 82, 64, 66, 58, 66, 45, 78, 57, 49, 64, 76, 68, 55, 60, 83, 73, 61, 70, 73, 78, 57, 59, 79, 55, 68, 66, 57, 57, 71, 57, 65, 52, 72, 69, 59, 55, 85, 81, 50, 69, 62, 80, 68, 67, 72, 77, 60, 70, 56, 106, 64, 64, 67, 71, 65, 58, 61, 63, 79, 74, 66, 71, 68, 73, 90, 66, 53, 67, 69, 76, 61, 68, 61, 54, 57, 52, 45, 88, 56, 62, 51, 65, 60, 67, 83, 70, 50, 75, 54, 64, 46, 58, 78, 47, 71, 85, 74, 47, 45, 86, 58, 62, 86, 66, 61, 66, 80, 78, 71, 75, 56, 56, 63, 72, 81, 58, 66, 72, 89, 75, 64, 69, 58, 89, 64, 50, 62, 62, 59, 72, 69, 59, 57, 75, 48, 71, 67, 75, 61, 64, 56, 94, 60, 60, 80, 59, 51, 48, 72, 62, 79, 73, 65, 65, 72, 50, 47, 67, 52, 58, 72, 59, 64, 71, 64, 59, 52, 85, 63, 63, 64, 80, 55, 67, 61, 77, 72, 74, 59, 55, 50, 105, 68, 57, 69, 64, 68, 70, 50, 53, 68, 68, 75, 89, 63, 60, 56, 57, 67, 54, 63, 64, 93, 65, 68, 73, 64, 92, 59, 89, 56, 74, 58, 82, 84, 57, 123, 63, 75, 54, 55, 54, 54, 58, 62, 60, 87, 64, 62, 74, 78, 67, 58, 54, 92, 78, 58, 60, 48, 77, 91, 60, 60, 63, 101, 79, 53, 80, 45, 67, 65, 57, 83, 68, 67, 64, 60, 62, 82, 49, 60, 54, 59, 58, 59, 65, 67, 54, 65, 80, 59, 69, 62, 67, 65, 76, 168, 59, 50, 65, 56, 82, 58, 82, 59, 63, 64, 70, 59, 92, 50, 56, 56, 83, 52, 67, 63, 55, 57, 66, 74, 55, 47, 65, 78, 58, 60, 69, 57, 70, 56, 62, 55, 64, 70, 67, 56, 60, 58, 70, 57, 71, 60, 67, 60, 62, 72, 65, 75, 61, 77, 71, 62, 53, 58, 53, 64, 102, 67, 64, 98, 78, 45, 53, 67, 46, 61, 70, 62, 62, 113, 106, 67, 68, 61, 72, 62, 81, 58, 65, 61, 60, 74, 68, 63, 61, 49, 53, 71, 61, 74, 64, 90, 64, 54, 87, 60, 55, 130, 61, 102, 69, 65, 72, 58, 49, 51, 77, 63, 63, 82, 54, 66, 66, 68, 54, 72, 159, 54, 64, 64, 62, 67, 75, 68, 66, 57, 68, 55, 65, 54, 69, 61, 83, 66, 62, 55, 45, 67, 59, 64, 69, 65, 68, 54, 78, 45, 51, 87, 68, 89, 58, 60, 66, 68, 65, 67, 64, 86, 84, 78, 51, 70, 87, 52, 53, 57, 82, 62, 47, 67, 65, 58, 59, 72, 64, 55, 64, 59, 63, 65, 59, 58, 71, 59, 64, 64, 67, 56, 65, 60, 62, 89, 57, 55, 62, 65, 74, 67, 84, 59, 57, 71, 53, 70, 70, 58, 66, 58, 86, 62, 90, 63, 65, 63, 65, 60, 78, 49, 65, 68, 59, 62, 66, 74, 66, 68, 56, 56, 77, 49, 94, 73, 67, 58, 65, 69, 63, 71, 51, 50, 79, 62, 53, 61, 68, 65, 56, 65, 75, 68, 107, 59, 64, 52, 68, 60, 45, 62, 60, 46, 64, 73, 56, 59, 71, 62, 94, 65, 76, 79, 60, 47, 46, 47, 71, 68, 64, 86, 62, 55, 74, 53, 69, 57, 62, 71, 58, 61, 80, 64, 80, 51, 62, 62, 58, 65, 55, 61, 63, 75, 70, 60, 58, 68, 64, 72, 91, 75, 56, 54, 51, 70, 53, 67, 64, 48, 66, 86, 69, 60, 62, 70, 53, 69, 60, 74, 69, 65, 93, 74, 63, 59, 72, 79, 71, 50, 62, 47, 62, 66, 60, 73, 74, 82, 70, 69, 52, 58, 81, 57, 72, 65, 81, 61, 42, 69, 77, 59, 87, 85, 52, 57, 49, 57, 75, 82, 47, 56, 108, 51, 74, 134, 106, 66, 63, 45, 56, 52, 39, 56, 68, 85, 79, 67, 70, 66, 65, 54, 80, 71, 55, 55, 54, 75, 65, 52, 61, 62, 80, 64, 57, 89, 66, 61, 56, 77, 71, 73, 72, 75, 59, 60, 66, 64, 75, 63, 59, 87, 48, 65, 65, 63, 61, 77, 78, 65, 99, 113, 68, 63, 75, 54, 73, 74, 71, 74, 74, 66, 57, 52, 64, 74, 73, 67, 64, 64, 65, 62, 60, 58, 78, 68, 69, 58, 61, 55, 73, 53, 69, 105, 57, 59, 72, 62, 59, 58, 56, 60, 52, 64, 56, 59, 65, 62, 57, 62, 78, 51, 48, 74, 55, 79, 63, 78, 59, 61, 58, 61, 77, 86, 55, 66, 68, 70, 69, 84, 57, 72, 59, 66, 73, 68, 83, 60, 63, 64, 77, 66, 63, 79, 84, 55, 48, 83, 71, 66, 55, 63, 67, 60, 100, 78, 57, 55, 81, 55, 61, 60, 53, 94, 60, 64, 79, 56, 45, 50, 55, 62, 70, 69, 82, 73, 54, 69, 65, 48, 75, 60, 65, 59, 67, 55, 77, 63, 44, 57, 60, 52, 72, 77, 77, 60, 49, 71, 50, 81, 51, 62, 77, 63, 64, 65, 60, 74, 53, 59, 63, 51, 72, 69, 66, 80, 66, 71, 67, 57, 47, 86, 57, 50, 86, 53, 62, 62, 66, 79, 56, 63, 58, 68, 68, 69, 73, 56, 58, 75, 66, 64, 64, 66, 58, 60, 51, 112, 83, 63, 65, 58, 56, 72, 65, 56, 71, 71, 53, 68, 62, 56, 71, 66, 96, 78, 56, 57, 56, 59, 61, 53, 67, 76, 68, 84, 72, 49, 57, 49, 96, 66, 64, 64, 70, 62, 79, 66, 55, 62, 63, 57, 63, 58, 54, 52, 57, 64, 57, 78, 62, 62, 67, 85, 64, 58, 72, 82, 65, 61, 76, 50, 49, 57, 91, 66, 62, 64, 57, 64, 73, 71, 64, 63, 76, 56, 101, 66, 66, 55, 61, 67, 59, 65, 67, 77, 60, 59, 57, 91, 63, 61, 56, 76, 56, 62, 79, 93, 63, 64, 60, 67, 56, 73, 67, 70, 57, 75, 75, 76, 51, 70, 52, 54, 65, 48, 71, 73, 60, 72, 55, 53, 61, 72, 67, 64, 61, 102, 65, 97, 69, 63, 76, 79, 64, 60, 41, 89, 66, 67, 55, 91, 60, 60, 66, 63, 53, 57, 57, 76, 80, 56, 65, 56, 65, 60, 76, 71, 56, 67, 50, 81, 58, 63, 65, 55, 56, 76, 59, 59, 48, 68, 58, 60, 71, 62, 56, 75, 57, 105, 89, 68, 67, 55, 62, 67, 99, 65, 81, 58, 77, 102, 74, 57, 77, 69, 56, 61, 67, 70, 62, 70, 66, 62, 61, 89, 69, 75, 76, 56, 72, 59, 53, 66, 56, 63, 65, 86, 53, 59, 79, 31, 65, 70, 56, 57, 60, 59, 58, 63, 73, 65, 75, 63, 52, 68, 61, 50, 69, 52, 54, 65, 72, 84, 59, 65, 80, 52, 64, 63, 69, 64, 76, 67, 61, 54, 71, 73, 58, 56, 72, 68, 70, 54, 88, 59, 60, 57, 70, 79, 64, 66, 65, 75, 75, 67, 57, 61, 77, 61, 74, 62, 75, 64, 59, 54, 67, 124, 50, 67, 62, 73, 60, 58, 57, 59, 61, 46, 66, 64, 58, 69, 68, 70, 64, 63, 70, 63, 77, 52, 67, 58, 48, 57, 72, 62, 60, 68, 76, 63, 54, 71, 56, 60, 51, 65, 55, 64, 70, 87, 58, 46, 62, 58, 62, 63, 62, 59, 66, 68, 63, 54, 60, 88, 70, 73, 61, 69, 60, 62, 68, 62, 61, 72, 60, 55, 92, 60, 54, 63, 65, 75, 63, 81, 56, 88, 55, 101, 84, 70, 57, 60, 44, 65, 57, 55, 65, 83, 63, 66, 64, 59, 57, 51, 67, 122, 57, 76, 60, 59, 65, 61, 84, 59, 69, 55, 58, 57, 62, 72, 70, 58, 48, 124, 70, 60, 63, 51, 71, 61, 74, 75, 76, 73, 62, 45, 87, 66, 69, 56, 60, 56, 57, 61, 64, 56, 56, 52, 54, 67, 56, 48, 63, 65, 68, 91, 70, 56, 73, 60, 67, 82, 57, 52, 61, 67, 58, 61, 57, 55, 62, 67, 57, 77, 60, 79, 56, 64, 51, 62, 114, 66, 61, 44, 66, 56, 56, 75, 70, 66, 74, 90, 62, 49, 55, 63, 59, 74, 86, 60, 59, 90, 64, 70, 69, 67, 59, 82, 63, 67, 69, 56, 44, 89, 56, 63, 67, 60, 60, 66, 61, 56, 60, 56, 61, 86, 56, 58, 67, 60, 63, 60, 69, 76, 74, 71, 70, 54, 58, 53, 64, 52, 53, 61, 159, 78, 51, 51, 149, 60, 63, 65, 63, 58, 62, 62, 57, 65, 88, 69, 65, 63, 72, 76, 62, 57, 55, 70, 55, 90, 56, 55, 79, 46, 53, 58, 48, 71, 70, 67, 86, 69, 49, 68, 58, 85, 68, 55, 61, 77, 73, 88, 54, 71, 65, 66, 70, 63, 59, 65, 70, 92, 81, 51, 78, 61, 56, 62, 53, 59, 65, 62, 54, 52, 61, 82, 61, 60, 57, 68, 56, 79, 56, 55, 81, 57, 57, 62, 69, 63, 68, 64, 59, 61, 51, 71, 61, 54, 91, 60, 74, 69, 50, 65, 55, 56, 59, 66, 65, 62, 64, 79, 55, 54, 62, 63, 74, 67, 90, 54, 67, 93, 68, 52, 53, 69, 73, 41, 84, 75, 63, 90, 62, 68, 60, 75, 60, 65, 152, 67, 59, 60, 79, 62, 61, 77, 60, 76, 63, 91, 56, 66, 61, 59, 60, 57, 66, 59, 63, 69, 88, 57, 56, 68, 58, 88, 59, 97, 59, 63, 63, 60, 59, 47, 63, 80, 78, 58, 59, 61, 63, 74, 85, 75, 53, 68, 65, 54, 64, 53, 56, 59, 56, 70, 64, 81, 60, 47, 60, 68, 60, 54, 59, 62, 56, 80, 75, 53, 61, 71, 73, 60, 57, 63, 77, 54, 69, 85, 53, 54, 61, 67, 47, 62, 61, 51, 57, 89, 81, 59, 55, 66, 65, 60, 59, 63, 66, 67, 75, 62, 55, 55, 69, 56, 81, 56, 70, 65, 67, 59, 58, 57, 99, 58, 61, 67, 78, 57, 62, 56, 72, 62, 82, 52, 58, 54, 84, 55, 62, 77, 53, 101, 65, 59, 70, 75, 70, 76, 54, 63, 64, 91, 68, 54, 74, 67, 70, 91, 53, 70, 52, 61, 63, 54, 68, 76, 58, 65, 69, 58, 66, 70, 77, 53, 81, 62, 57, 66, 66, 52, 61, 69, 55, 70, 94, 93, 53, 59, 75, 68, 81, 68, 71, 50, 66, 79, 86, 65, 63, 56, 48, 74, 62, 72, 66, 69, 85, 63, 79, 63, 65, 62, 69, 54, 49, 52, 75, 90, 48, 53, 54, 50, 60, 67, 76, 62, 70, 66, 78, 54, 60, 59, 66, 65, 70, 52, 55, 52, 56, 54, 59, 69, 77, 63, 57, 75, 58, 86, 62, 80, 50, 51, 53, 90, 62, 72, 73, 73, 68, 73, 83, 47, 55, 75, 82, 65, 36, 42, 56, 86, 86, 80, 57, 57, 64, 89, 55, 73, 142, 91, 59, 119, 70, 60, 95, 57, 74, 80, 65, 79, 82, 50, 62, 48, 66, 59, 52, 69, 64, 62, 62, 75, 52, 72, 63, 55, 62, 59, 55, 60, 53, 61, 68, 55, 61, 58, 77, 82, 67, 68, 61, 75, 50, 64, 71, 79, 76, 57, 86, 56, 58, 75, 64, 51, 75, 70, 73, 79, 47, 65, 53, 62, 75, 119, 70, 84, 56, 62, 69, 59, 76, 57, 86, 70, 68, 45, 62, 76, 68, 59, 63, 105, 68, 64, 61, 63, 58, 60, 55, 54, 58, 87, 62, 66, 71, 50, 75, 69, 63, 56, 49, 49, 79, 69, 56, 53, 71, 62, 62, 44, 62, 64, 54, 72, 47, 57, 67, 56, 80, 98, 65, 57, 74, 71, 59, 68, 77, 54, 48, 54, 49, 67, 66, 54, 66, 77, 57, 54, 53, 81, 64, 45, 58, 88, 49, 42, 62, 76, 49, 60, 76, 66, 50, 59, 72, 46, 68, 57, 78, 53, 53, 59, 51, 66, 59, 69, 60, 67, 62, 63, 94, 63, 65, 67, 53, 70, 71, 62, 49, 64, 58, 80, 58, 101, 64, 57, 46, 54, 52, 74, 59, 57, 52, 72, 84, 58, 59, 86, 59, 71, 53, 65, 80, 47, 60, 77, 58, 76, 75, 52, 70, 68, 55, 58, 74, 54, 77, 49, 68, 62, 65, 52, 77, 86, 74, 61, 70, 60, 81, 83, 58, 83, 58, 62, 66, 93, 61, 52, 81, 80, 55, 56, 60, 74, 56, 69, 71, 61, 43, 73, 72, 73, 57, 52, 95, 66, 49, 76, 51, 63, 66, 57, 69, 66, 54, 72, 68, 59, 72, 58, 82, 58, 79, 91, 64, 60, 53, 55, 63, 59, 60, 57, 57, 51, 64, 96, 61, 46, 73, 48, 86, 89, 66, 67, 48, 58, 54, 42, 74, 69, 82, 77, 48, 56, 74, 54, 61, 55, 51, 52, 52, 58, 51, 65, 82, 51, 72, 62, 52, 56, 72, 59, 74, 77, 62, 49, 64, 65, 69, 50, 80, 75, 59, 63, 87, 116, 70, 60, 93, 74, 60, 68, 58, 64, 123, 74, 64, 64, 51, 61, 65, 61, 54, 58, 65, 53, 91, 52, 54, 61, 61, 75, 107, 81, 67, 95, 51, 66, 55, 69, 63, 61, 63, 71, 130, 50, 67, 60, 71, 69, 50, 75, 52, 71, 76, 45, 63, 62, 64, 66, 56, 78, 70, 65, 63, 79, 76, 52, 46, 59, 66, 48, 54, 64, 54, 60, 57, 41, 64, 61, 65, 84, 73, 55, 98, 84, 56, 53, 67, 63, 63, 47, 56, 76, 63, 57, 49, 64, 96, 52, 71, 74, 52, 56, 70, 75, 54, 93, 53, 97, 63, 59, 58, 55, 99, 57, 97, 62, 76, 77, 54, 95, 53, 88, 58, 71, 60, 79, 60, 72, 62, 70, 51, 76, 57, 72, 79, 74, 59, 56, 55, 72, 45, 72, 57, 82, 54, 67, 97, 76, 76, 77, 71, 67, 54, 48, 85, 84, 82, 69, 52, 57, 67, 78, 54, 70, 75, 167, 61, 71, 59, 68, 60, 81, 70, 56, 73, 63, 72, 98, 55, 57, 66, 54, 64, 62, 67, 53, 55, 47, 57, 53, 81, 41, 46, 89, 68, 73, 62, 72, 65, 56, 67, 53, 60, 95, 49, 85, 66, 49, 69, 65, 54, 62, 70, 62, 59, 77, 60, 55, 71, 51, 63, 56, 62, 56, 72, 73, 67, 67, 63, 95, 71, 54, 48, 50, 69, 92, 54, 48, 61, 75, 114, 71, 62, 70, 58, 91, 104, 66, 62, 91, 49, 70, 90, 86, 63, 92, 65, 60, 82, 58, 67, 71, 57, 60, 74, 52, 56, 74, 62, 65, 62, 61, 94, 63, 63, 56, 68, 71, 73, 81, 51, 63, 67, 58, 50, 66, 101, 41, 54, 70, 133, 56, 73, 66, 72, 62, 71, 69, 51, 61, 60, 110, 75, 62, 71, 68, 69, 57, 101, 49, 94, 59, 69, 71, 56, 59, 70, 40, 75, 53, 78, 69, 50, 72, 79, 82, 63, 90, 78, 65, 61, 43, 68, 81, 77, 53, 63, 66, 68, 70, 66, 53, 60, 70, 61, 69, 64, 81, 51, 74, 57, 65, 77, 75, 55, 71, 82, 59, 52, 56, 68, 80, 52, 72, 65, 81, 71, 60, 55, 63, 63, 93, 62, 68, 59, 56, 65, 111, 71, 52, 63, 58, 63, 49, 40, 50, 58, 52, 63, 74, 83, 61, 49, 52, 63, 62, 80, 52, 57, 53, 105, 60, 55, 74, 57, 77, 51, 64, 63, 53, 55, 109, 70, 82, 57, 67, 70, 69, 67, 71, 118, 68, 69, 65, 61, 75, 59, 61, 61, 70, 53, 83, 53, 110, 66, 71, 85, 82, 60, 56, 66, 89, 57, 51, 65, 60, 57, 83, 65, 59, 79, 80, 62, 73, 71, 82, 65, 89, 97, 55, 62, 53, 65, 66, 51, 82, 68, 44, 67, 78, 69, 81, 73, 57, 61, 51, 71, 72, 64, 62, 46, 60, 62, 68, 46, 57, 59, 100, 71, 62, 53, 68, 50, 62, 64, 52, 74, 66, 70, 68, 58, 73, 74, 103, 63, 75, 69, 71, 57, 53, 106, 59, 60, 60, 56, 51, 57, 47, 70, 71, 80, 58, 89, 51, 74, 56, 76, 66, 57, 66, 63, 57, 56, 63, 83, 65, 78, 59, 60, 59, 57, 76, 54, 62, 74, 67, 69, 95, 68, 67, 59, 86, 59, 53, 64, 62, 63, 71, 77, 59, 66, 69, 53, 80, 47, 74, 71, 60, 92, 67, 53, 63, 76, 51, 70, 56, 56, 54, 60, 49, 67, 68, 51, 64, 62, 40, 68, 67, 57, 56, 61, 52, 82, 59, 77, 61, 65, 72, 47, 67, 61, 62, 92, 68, 54, 62, 85, 37, 88, 51, 47, 85, 65, 67, 56, 77, 58, 90, 61, 64, 58, 66, 66, 66, 64, 61, 79, 61, 83, 89, 50, 63, 82, 62, 63, 75, 61, 71, 62, 74, 83, 76, 59, 61, 64, 60, 67, 71, 71, 50, 54, 54, 55, 100, 57, 40, 56, 70, 57, 75, 68, 58, 50, 81, 61, 51, 69, 77, 72, 57, 81, 65, 73, 64, 61, 58, 55, 71, 71, 62, 77, 68, 90, 58, 60, 79, 68, 52, 61, 90, 70, 75, 66, 96, 79, 66, 56, 61, 68, 81, 65, 70, 69, 71, 65, 56, 77, 65, 69, 51, 69, 82, 50, 83, 59, 61, 54, 51, 48, 61, 58, 59, 75, 63, 75, 49, 63, 66, 66, 58, 54, 70, 77, 95, 54, 61, 48, 58, 52, 57, 105, 62, 71, 56, 73, 74, 65, 61, 74, 60, 66, 68, 59, 82, 50, 62, 58, 86, 66, 79, 51, 68, 75, 49, 61, 67, 54, 56, 47, 62, 72, 58, 60, 67, 51, 91, 65, 48, 83, 108, 64, 68, 80, 86, 97, 64, 70, 68, 40, 65, 63, 50, 54, 76, 62, 77, 62, 63, 56, 49, 87, 59, 68, 54, 62, 71, 77, 68, 71, 67, 71, 91, 58, 72, 67, 44, 64, 55, 89, 57, 68, 64, 96, 68, 68, 65, 57, 58, 67, 53, 54, 69, 49, 63, 59, 88, 71, 49, 61, 68, 73, 81, 45, 90, 71, 74, 92, 56, 81, 67, 76, 74, 58, 51, 59, 71, 51, 92, 59, 56, 66, 87, 115, 58, 49, 71, 74, 75, 77, 67, 51, 62, 68, 54, 72, 72, 83, 61, 64, 80, 56, 47, 82, 58, 48, 56, 48, 57, 68, 72, 55, 75, 50, 67, 63, 82, 60, 80, 57, 70, 63, 47, 48, 58, 70, 71, 92, 65, 52, 62, 68, 65, 68, 55, 65, 82, 64, 50, 77, 66, 76, 52, 81, 68, 64, 59, 67, 66, 53, 65, 81, 76, 58, 71, 72, 79, 74, 69, 64, 62, 75, 72, 61, 68, 57, 61, 36, 56, 71, 83, 83, 64, 63, 80, 81, 55, 47, 81, 62, 60, 62, 58, 68, 77, 49, 79, 77, 60, 63, 58, 48, 65, 58, 68, 54, 68, 68, 69, 45, 69, 58, 50, 55, 49, 56, 77, 64, 80, 57, 73, 65, 65, 75, 50, 57, 84, 62, 68, 57, 60, 62, 49, 71, 71, 63, 58, 65, 68, 46, 67, 62, 83, 57, 72, 55, 59, 75, 68, 55, 72, 79, 77, 65, 63, 54, 69, 69, 70, 69, 55, 66, 83, 82, 53, 54, 75, 68, 56, 79, 56, 64, 53, 71, 53, 83, 42, 73, 58, 86, 55, 67, 59, 83, 64, 109, 62, 52, 72, 81, 55, 48, 67, 69, 68, 95, 54, 58, 68, 60, 60, 64, 55, 66, 61, 62, 50, 70, 52, 59, 65, 82, 66, 79, 51, 52, 71, 79, 45, 90, 38, 60, 77, 63, 62, 94, 60, 47, 48, 57, 78, 77, 86, 72, 67, 67, 51, 56, 60, 60, 61, 70, 59, 68, 65, 65, 95, 68, 67, 65, 50, 74, 67, 78, 69, 87, 45, 52, 70, 50, 85, 69, 71, 63, 59, 59, 62, 54, 48, 73, 67, 77, 53, 67, 109, 72, 71, 51, 63, 84, 96, 66, 63, 49, 66, 63, 71, 57, 78, 54, 58, 62, 64, 61, 74, 40, 74, 61, 53, 60, 75, 47, 119, 147, 76, 76, 72, 65, 56, 58, 87, 55, 78, 84, 51, 61, 65, 62, 107, 59, 139, 70, 60, 62, 66, 110, 60, 81, 67, 48, 68, 87, 56, 67, 39, 60, 75, 69, 63, 73, 81, 65, 65, 56, 65, 51, 70, 86, 62, 52, 64, 68, 74, 81, 64, 76, 60, 55, 59, 59, 57, 60, 64, 71, 55, 70, 66, 82, 77, 52, 76, 62, 78, 53, 56, 68, 57, 60, 56, 90, 52, 71, 58, 83, 88, 67, 73, 50, 86, 81, 68, 59, 79, 55, 53, 100, 62, 70, 70, 64, 65, 77, 60, 58, 49, 49, 95, 98, 74, 57, 91, 81, 77, 52, 57, 94, 64, 78, 53, 72, 51, 67, 97, 63, 61, 59, 56, 113, 75, 53, 77, 60, 55, 68, 71, 75, 58, 67, 65, 92, 59, 114, 51, 63, 58, 69, 61, 41, 68, 56, 66, 76, 80, 61, 76, 88, 78, 34, 68, 66, 70, 51, 69, 59, 61, 54, 72, 60, 67, 49, 57, 62, 60, 82, 48, 49, 53, 60, 98, 63, 65, 61, 82, 64, 61, 62, 71, 65, 42, 54, 65, 73, 59, 46, 70, 74, 60, 73, 86, 57, 64, 91, 92, 75, 70, 53, 76, 72, 55, 68, 55, 59, 67, 62, 105, 59, 68, 65, 58, 68, 64, 78, 70, 66, 60, 55, 64, 55, 68, 68, 66, 77, 47, 102, 63, 78, 78, 48, 68, 75, 54, 71, 68, 59, 63, 67, 47, 59, 75, 61, 46, 62, 65, 50, 52, 87, 73, 52, 94, 64, 68, 67, 79, 59, 117, 53, 64, 65, 80, 58, 53, 66, 76, 77, 78, 136, 56, 59, 68, 61, 53, 110, 88, 51, 58, 61, 60, 56, 50, 46, 73, 84, 71, 56, 61, 58, 65, 80, 68, 74, 57, 62, 61, 51, 53, 62, 52, 52, 66, 69, 70, 69, 59, 72, 60, 61, 77, 66, 75, 71, 49, 59, 62, 61, 52, 68, 73, 80, 62, 65, 67, 79, 62, 57, 79, 74, 72, 71, 73, 56, 65, 58, 53, 64, 62, 56, 98, 73, 71, 64, 54, 66, 66, 87, 79, 51, 63, 52, 62, 64, 48, 56, 51, 66, 61, 64, 72, 58, 81, 64, 53, 80, 57, 44, 50, 64, 80, 60, 54, 68, 76, 64, 69, 90, 45, 71, 62, 58, 60, 70, 52, 76, 56, 73, 57, 54, 61, 101, 59, 63, 84, 56, 68, 101, 64, 56, 58, 66, 70, 45, 78, 66, 71, 69, 85, 57, 73, 64, 66, 60, 74, 57, 82, 53, 61, 54, 49, 69, 71, 67, 76, 40, 48, 63, 69, 54, 57, 58, 62, 82, 42, 76, 68, 70, 67, 72, 48, 65, 65, 64, 60, 59, 77, 66, 56, 59, 55, 98, 62, 62, 65, 90, 57, 86, 60, 66, 80, 71, 80, 81, 60, 57, 86, 52, 55, 64, 65, 73, 66, 69, 58, 78, 47, 68, 94, 71, 65, 83, 76, 59, 74, 69, 65, 79, 72, 55, 78, 65, 64, 56, 51, 91, 56, 65, 55, 60, 93, 60, 50, 52, 68, 57, 94, 60, 68, 53, 80, 71, 75, 57, 70, 52, 68, 64, 48, 62, 80, 70, 64, 65, 75, 70, 75, 53, 72, 65, 56, 71, 80, 68, 77, 61, 90, 68, 64, 47, 64, 51, 62, 90, 73, 73, 58, 67, 70, 53, 47, 62, 67, 59, 60, 78, 71, 63, 90, 65, 74, 89, 78, 57, 57, 49, 62, 55, 81, 64, 72, 72, 66, 43, 59, 60, 72, 62, 56, 76, 63, 69, 51, 64, 59, 78, 62, 56, 50, 58, 61, 62, 77, 73, 61, 67, 67, 71, 69, 74, 58, 76, 80, 52, 58, 61, 59, 56, 86, 62, 55, 52, 89, 72, 88, 53, 62, 64, 50, 62, 66, 72, 64, 63, 91, 63, 58, 51, 69, 78, 60, 55, 76, 78, 71, 53, 46, 55, 91, 57, 49, 74, 77, 58, 63, 53, 58, 57, 62, 82, 53, 73, 62, 62, 53, 53, 64, 63, 108, 81, 72, 71, 63, 58, 79, 79, 69, 64, 62, 57, 55, 59, 57, 87, 64, 59, 63, 54, 102, 88, 71, 65, 65, 70, 73, 71, 56, 70, 67, 60, 62, 81, 65, 67, 60, 71, 63, 61, 54, 91, 58, 67, 69, 62, 63, 68, 101, 66, 67, 69, 61, 103, 52, 62, 67, 58, 83, 69, 92, 56, 77, 72, 72, 81, 103, 59, 69, 66, 67, 55, 71, 58, 57, 71, 73, 68, 55, 76, 46, 73, 80, 77, 60, 59, 104, 64, 55, 59, 90, 70, 59, 63, 78, 65, 65, 60, 45, 70, 64, 77, 72, 51, 80, 63, 68, 56, 46, 55, 60, 56, 76, 60, 65, 65, 67, 59, 82, 65, 55, 57, 63, 60, 57, 74, 64, 82, 66, 69, 64, 65, 57, 60, 58, 66, 65, 94, 61, 56, 44, 94, 123, 69, 59, 70, 72, 55, 82, 52, 56, 58, 56, 41, 65, 58, 80, 90, 51, 50, 57, 74, 49, 84, 54, 107, 51, 42, 82, 75, 49, 65, 65, 62, 62, 74, 52, 61, 70, 58, 61, 85, 63, 51, 54, 55, 62, 62, 57, 89, 65, 79, 70, 58, 60, 52, 60, 71, 67, 58, 64, 70, 57, 50, 52, 50, 64, 69, 67, 59, 90, 62, 70, 62, 49, 70, 62, 54, 56, 54, 72, 41, 77, 69, 66, 61, 71, 61, 62, 71, 69, 49, 76, 63, 57, 64, 79, 101, 70, 82, 79, 67, 69, 76, 71, 76, 49, 77, 70, 86, 79, 80, 60, 64, 68, 71, 72, 54, 57, 63, 61, 53, 64, 57, 97, 56, 46, 61, 64, 72, 63, 71, 50, 79, 57, 64, 57, 60, 72, 80, 56, 57, 65, 58, 53, 82, 55, 49, 77, 52, 49, 61, 61, 58, 63, 58, 65, 68, 73, 96, 66, 66, 61, 90, 59, 61, 82, 73, 79, 54, 72, 74, 69, 66, 55, 98, 82, 72, 60, 66, 115, 63, 61, 53, 58, 67, 69, 70, 51, 69, 68, 64, 67, 45, 84, 57, 45, 75, 61, 79, 84, 52, 63, 55, 107, 63, 64, 63, 88, 72, 61, 52, 79, 90, 71, 71, 67, 58, 62, 56, 56, 72, 93, 48, 105, 62, 59, 65, 55, 71, 77, 62, 60, 66, 70, 71, 70, 49, 57, 62, 132, 79, 56, 59, 69, 69, 66, 77, 75, 59, 48, 67, 64, 76, 58, 63, 63, 68, 73, 61, 84, 69, 63, 51, 59, 66, 44, 73, 65, 74, 60, 61, 70, 86, 69, 73, 78, 66, 68, 90, 76, 65, 76, 62, 54, 58, 60, 66, 69, 60, 75, 89, 73, 59, 75, 40, 82, 89, 69, 92, 72, 74, 61, 54, 101, 62, 43, 66, 60, 70, 66, 57, 49, 64, 76, 71, 44, 62, 87, 64, 75, 71, 70, 73, 54, 60, 56, 54, 70, 67, 79, 45, 64, 60, 61, 48, 68, 63, 61, 61, 72, 75, 98, 69, 48, 55, 87, 60, 72, 55, 67, 75, 70, 67, 73, 65, 63, 55, 71, 51, 64, 169, 51, 61, 75, 66, 62, 73, 69, 62, 57, 55, 76, 65, 85, 67, 68, 63, 66, 71, 57, 82, 64, 70, 77, 52, 44, 51, 53, 49, 83, 55, 54, 47, 57, 56, 70, 114, 69, 47, 62, 53, 85, 48, 61, 69, 83, 84, 65, 84, 55, 71, 62, 60, 60, 75, 64, 82, 70, 69, 66, 89, 61, 77, 47, 60, 79, 67, 62, 65, 44, 69, 76, 70, 66, 47, 74, 58, 57, 79, 69, 65, 71, 57, 73, 63, 61, 80, 62, 66, 52, 71, 71, 55, 78, 77, 59, 66, 61, 63, 60, 65, 64, 73, 88, 60, 86, 66, 66, 68, 63, 54, 65, 48, 56, 84, 62, 69, 78, 60, 69, 55, 74, 68, 70, 64, 53, 78, 67, 49, 49, 63, 74, 66, 73, 114, 61, 41, 67, 63, 56, 74, 98, 59, 62, 60, 80, 65, 61, 94, 58, 72, 64, 72, 57, 66, 82, 71, 69, 67, 71, 80, 78, 63, 61, 50, 57, 71, 79, 65, 64, 70, 76, 48, 64, 67, 49, 56, 94, 50, 57, 76, 58, 64, 67, 55, 49, 59, 55, 66, 79, 76, 58, 50, 64, 85, 43, 52, 61, 59, 40, 61, 38, 62, 66, 60, 100, 58, 68, 56, 73, 72, 53, 73, 75, 48, 62, 52, 77, 67, 37, 56, 59, 49, 80, 81, 52, 68, 63, 50, 37, 65, 64, 48, 64, 75, 86, 59, 74, 96, 60, 56, 62, 56, 87, 65, 73, 69, 55, 77, 66, 51, 53, 52, 76, 78, 84, 102, 73, 57, 65, 67, 62, 87, 71, 69, 97, 61, 108, 77, 80, 55, 75, 72, 58, 66, 70, 53, 70, 59, 96, 57, 82, 58, 65, 63, 58, 64, 42, 67, 57, 57, 85, 62, 87, 64, 71, 59, 55, 55, 54, 59, 53, 69, 67, 92, 65, 99, 55, 90, 71, 73, 93, 79, 53, 65, 75, 113, 73, 73, 79, 67, 65, 54, 66, 58, 70, 60, 60, 57, 85, 65, 53, 63, 56, 96, 55, 60, 50, 48, 74, 74, 67, 66, 59, 51, 71, 63, 59, 54, 113, 67, 61, 64, 73, 58, 72, 48, 77, 61, 67, 65, 77, 55, 67, 57, 65, 55, 51, 57, 63, 74, 56, 82, 46, 72, 90, 54, 106, 56, 73, 73, 51, 52, 65, 57, 56, 77, 55, 69, 74, 70, 64, 59, 48, 63, 66, 53, 105, 47, 63, 81, 77, 63, 74, 67, 53, 65, 58, 80, 59, 89, 63, 57, 93, 74, 36, 55, 55, 54, 74, 59, 50, 58, 63, 81, 70, 70, 61, 67, 60, 63, 70, 66, 63, 51, 59, 49, 67, 75, 50, 76, 58, 86, 93, 58, 67, 74, 49, 80, 71, 70, 62, 62, 56, 66, 51, 50, 94, 66, 53, 58, 63, 50, 68, 45, 58, 64, 72, 59, 69, 51, 40, 53, 63, 85, 58, 119, 55, 72, 85, 71, 45, 52, 42, 63, 66, 58, 54, 60, 39, 80, 68, 75, 60, 65, 65, 53, 56, 92, 56, 63, 76, 61, 69, 63, 37, 68, 76, 71, 63, 52, 57, 64, 72, 81, 85, 45, 64, 57, 60, 65, 57, 61, 108, 64, 76, 55, 47, 54, 76, 50, 79, 65, 69, 71, 70, 53, 82, 52, 63, 50, 61, 77, 63, 55, 72, 68, 58, 51, 71, 72, 57, 71, 74, 64, 61, 44, 84, 70, 51, 101, 85, 59, 58, 77, 75, 73, 53, 55, 53, 67, 76, 62, 55, 70, 60, 97, 71, 64, 63, 70, 71, 51, 57, 56, 55, 67, 71, 77, 65, 76, 53, 83, 63, 64, 56, 75, 54, 64, 66, 55, 53, 59, 50, 72, 53, 59, 63, 76, 58, 70, 94, 68, 62, 73, 49, 54, 74, 78, 44, 72, 60, 76, 51, 57, 65, 68, 74, 59, 56, 68, 73, 62, 56, 47, 71, 82, 85, 73, 60, 64, 49, 52, 52, 74, 77, 74, 66, 68, 67, 77, 62, 65, 53, 47, 91, 58, 66, 56, 65, 88, 82, 68, 71, 82, 56, 54, 52, 64, 55, 38, 78, 59, 42, 63, 62, 65, 72, 65, 90, 82, 57, 58, 57, 75, 62, 50, 51, 63, 49, 71, 96, 68, 69, 76, 56, 60, 71, 72, 57, 66, 56, 81, 55, 57, 73, 60, 59, 80, 53, 60, 81, 59, 71, 58, 46, 73, 86, 54, 65, 78, 74, 56, 62, 64, 56, 49, 64, 74, 71, 62, 72, 60, 89, 55, 61, 56, 76, 55, 67, 56, 83, 74, 62, 64, 81, 69, 61, 69, 75, 82, 55, 62, 79, 64, 93, 72, 72, 64, 81, 80, 65, 86, 55, 67, 74, 76, 65, 103, 60, 49, 66, 63, 78, 55, 89, 58, 54, 95, 71, 59, 54, 50, 58, 63, 56, 73, 70, 71, 56, 67, 85, 62, 89, 81, 63, 50, 51, 76, 51, 43, 75, 77, 70, 98, 68, 61, 47, 83, 59, 38, 46, 63, 65, 61, 42, 62, 50, 83, 51, 80, 64, 75, 55, 52, 56, 62, 63, 65, 67, 57, 81, 81, 57, 55, 45, 48, 54, 63, 69, 67, 89, 54, 121, 46, 77, 81, 58, 60, 54, 60, 68, 93, 65, 73, 65, 74, 80, 53, 57, 58, 71, 74, 71, 53, 49, 52, 75, 58, 58, 57, 61, 49, 81, 56, 54, 66, 91, 68, 80, 63, 69, 46, 75, 58, 94, 55, 57, 73, 49, 49, 53, 89, 60, 73, 64, 60, 75, 57, 66, 76, 49, 46, 152, 59, 52, 48, 50, 71, 70, 84, 68, 59, 49, 64, 70, 84, 78, 58, 83, 63, 53, 49, 62, 63, 60, 50, 55, 49, 49, 71, 56, 56, 59, 62, 55, 48, 73, 118, 65, 50, 89, 57, 52, 65, 60, 73, 55, 56, 53, 81, 74, 60, 64, 57, 78, 55, 55, 81, 52, 60, 69, 78, 50, 82, 72, 90, 90, 87, 68, 59, 55, 76, 50, 58, 57, 58, 118, 81, 68, 72, 107, 62, 63, 100, 48, 70, 53, 61, 71, 60, 57, 53, 72, 57, 53, 89, 104, 66, 110, 56, 66, 61, 36, 60, 60, 57, 72, 64, 100, 52, 55, 63, 71, 62, 87, 88, 72, 68, 51, 60, 61, 67, 81, 125, 43, 62, 67, 75, 80, 69, 69, 62, 57, 40, 58, 50, 58, 66, 63, 61, 79, 69, 64, 68, 51, 71, 63, 99, 98, 59, 66, 45, 67, 50, 45, 68, 79, 61, 58, 72, 74, 67, 76, 57, 91, 56, 67, 87, 75, 79, 93, 77, 60, 56, 63, 68, 66, 78, 60, 53, 67, 79, 56, 50, 53, 66, 68, 76, 76, 56, 64, 68, 56, 49, 49, 87, 67, 53, 41, 56, 81, 63, 67, 56, 86, 57, 57, 45, 68, 63, 53, 75, 54, 57, 79, 70, 59, 76, 76, 68, 62, 57, 74, 67, 63, 62, 85, 49, 73, 61, 82, 54, 73, 72, 64, 57, 58, 113, 65, 54, 55, 60, 75, 54, 80, 77, 32, 67, 71, 67, 67, 69, 68, 60, 46, 82, 66, 121, 54, 62, 58, 56, 54, 67, 53, 61, 70, 52, 72, 50, 76, 71, 62, 73, 62, 77, 54, 53, 79, 70, 52, 62, 50, 66, 43, 68, 49, 61, 59, 52, 78, 61, 93, 52, 85, 85, 56, 62, 49, 48, 57, 86, 69, 52, 73, 69, 57, 55, 63, 67, 81, 95, 64, 67, 67, 54, 69, 57, 77, 56, 59, 78, 49, 58, 57, 62, 61, 70, 69, 45, 63, 59, 63, 66, 57, 66, 79, 52, 61, 52, 54, 51, 60, 74, 55, 59, 69, 52, 58, 65, 57, 71, 68, 55, 77, 85, 54, 72, 69, 82, 78, 78, 63, 59, 60, 63, 87, 75, 61, 77, 57, 83, 48, 64, 48, 58, 68, 69, 70, 79, 61, 65, 60, 64, 53, 72, 83, 69, 73, 85, 82, 52, 84, 62, 60, 84, 91, 73, 66, 79, 83, 65, 86, 57, 65, 90, 55, 59, 79, 54, 56, 67, 81, 66, 88, 71, 66, 58, 61, 62, 70, 70, 65, 61, 50, 77, 67, 76, 60, 70, 67, 57, 64, 84, 84, 41, 75, 66, 86, 71, 67, 51, 72, 83, 58, 88, 67, 74, 79, 63, 63, 76, 78, 52, 82, 93, 57, 84, 65, 58, 56, 79, 62, 61, 77, 61, 78, 71, 43, 73, 42, 56, 78, 64, 69, 63, 94, 65, 52, 74, 82, 55, 76, 72, 54, 59, 63, 56, 44, 45, 59, 69, 62, 49, 62, 72, 86, 80, 51, 55, 51, 62, 97, 77, 63, 77, 64, 58, 59, 49, 42, 46, 83, 71, 56, 61, 71, 61, 70, 91, 45, 55, 66, 96, 56, 94, 48, 48, 64, 71, 57, 76, 69, 57, 72, 65, 87, 44, 45, 64, 65, 68, 81, 59, 63, 57, 63, 76, 49, 66, 52, 69, 200, 62, 71, 66, 66, 53, 73, 43, 70, 93, 57, 54, 45, 69, 60, 53, 53, 129, 73, 68, 64, 50, 55, 84, 78, 71, 51, 60, 109, 57, 75, 85, 71, 63, 55, 61, 51, 59, 52, 61, 72, 61, 59, 59, 80, 70, 71, 84, 59, 58, 65, 41, 57, 67, 61, 61, 69, 68, 74, 47, 57, 62, 66, 65, 54, 43, 65, 48, 50, 77, 85, 68, 59, 71, 100, 67, 56, 53, 89, 55, 63, 76, 59, 47, 49, 69, 65, 57, 94, 79, 64, 63, 59, 64, 65, 75, 62, 53, 53, 66, 84, 101, 78, 74, 75, 50, 69, 62, 64, 65, 64, 54, 67, 75, 59, 76, 70, 69, 78, 68, 67, 74, 60, 93, 67, 56, 66, 55, 59, 52, 42, 88, 79, 68, 76, 46, 50, 42, 55, 61, 71, 55, 63, 66, 71, 62, 61, 67, 65, 78, 79, 91, 72, 57, 50, 73, 77, 81, 68, 81, 68, 65, 69, 59, 57, 67, 77, 58, 69, 65, 62, 71, 69, 86, 62, 63, 84, 50, 73, 60, 68, 85, 61, 70, 52, 63, 54, 66, 106, 71, 80, 47, 79, 60, 96, 60, 69, 71, 48, 64, 64, 48, 85, 77, 71, 60, 53, 59, 59, 75, 64, 88, 78, 59, 52, 58, 49, 129, 53, 72, 72, 83, 70, 94, 40, 78, 71, 91, 59, 60, 63, 70, 57, 45, 65, 41, 69, 62, 60, 59, 69, 88, 78, 70, 53, 131, 50, 43, 77, 70, 65, 76, 59, 78, 64, 62, 51, 59, 67, 60, 71, 46, 75, 58, 54, 65, 40, 53, 42, 64, 50, 79, 69, 71, 72, 73, 68, 77, 67, 77, 76, 46, 61, 55, 57, 59, 70, 63, 67, 42, 62, 63, 58, 65, 76, 59, 58, 48, 54, 61, 52, 72, 70, 51, 72, 71, 68, 76, 96, 60, 80, 70, 70, 69, 51, 57, 53, 68, 91, 61, 65, 68, 43, 60, 88, 60, 47, 64, 60, 66, 81, 57, 45, 73, 76, 77, 64, 59, 61, 45, 75, 54, 56, 85, 63, 72, 45, 84, 89, 66, 58, 86, 58, 74, 58, 61, 73, 59, 80, 69, 62, 63, 57, 46, 40, 70, 76, 58, 68, 88, 55, 59, 81, 84, 60, 66, 66, 53, 68, 58, 64, 60, 66, 78, 84, 55, 68, 61, 108, 65, 67, 113, 74, 106, 69, 77, 59, 51, 66, 55, 65, 59, 38, 48, 68, 85, 66, 80, 44, 65, 79, 82, 60, 61, 73, 61, 69, 76, 62, 58, 75, 47, 82, 72, 94, 71, 76, 58, 69, 51, 66, 59, 76, 59, 65, 49, 61, 79, 65, 61, 75, 65, 55, 81, 63, 59, 82, 65, 59, 71, 61, 54, 75, 63, 61, 68, 85, 41, 56, 65, 74, 78, 56, 78, 77, 66, 76, 44, 62, 64, 75, 50, 71, 74, 87, 95, 77, 56, 34, 61, 78, 63, 55, 63, 63, 53, 66, 91, 56, 62, 69, 63, 64, 64, 109, 52, 63, 64, 96, 46, 65, 86, 79, 86, 64, 80, 54, 83, 97, 93, 73, 86, 65, 47, 124, 57, 60, 61, 79, 56, 52, 60, 67, 57, 53, 66, 66, 48, 60, 68, 79, 61, 75, 56, 70, 66, 63, 74, 68, 86, 57, 72, 84, 66, 87, 60, 80, 42, 69, 71, 58, 68, 61, 56, 50, 54, 71, 62, 59, 44, 69, 73, 64, 72, 104, 81, 55, 60, 77, 64, 82, 92, 54, 75, 70, 68, 59, 59, 69, 61, 54, 78, 83, 66, 62, 50, 80, 72, 52, 81, 61, 68, 75, 78, 58, 49, 57, 49, 78, 49, 51, 69, 44, 48, 57, 106, 66, 68, 79, 77, 63, 64, 61, 82, 68, 55, 50, 55, 79, 69, 71, 71, 49, 42, 77, 86, 90, 74, 64, 77, 63, 74, 85, 52, 75, 85, 67, 115, 51, 55, 55, 53, 80, 61, 60, 48, 69, 49, 74, 76, 44, 44, 79, 64, 83, 57, 60, 57, 65, 60, 54, 59, 56, 70, 73, 46, 71, 82, 58, 77, 98, 60, 72, 69, 85, 88, 47, 141, 54, 78, 63, 75, 75, 66, 64, 50, 61, 72, 59, 49, 65, 49, 55, 63, 69, 59, 65, 66, 71, 66, 59, 58, 69, 83, 71, 61, 63, 58, 59, 72, 77, 66, 64, 57, 81, 59, 52, 76, 77, 65, 81, 61, 52, 68, 87, 67, 61, 63, 81, 61, 56, 64, 84, 67, 63, 68, 57, 69, 66, 78, 63, 58, 70, 57, 80, 82, 75, 66, 75, 60, 69, 64, 67, 77, 59, 64, 60, 58, 69, 59, 90, 55, 76, 61, 70, 61, 76, 60, 59, 65, 62, 75, 65, 66, 54, 56, 68, 59, 80, 78, 52, 135, 58, 63, 73, 114, 67, 62, 47, 63, 67, 54, 58, 59, 81, 55, 72, 76, 43, 73, 74, 61, 49, 68, 67, 92, 69, 57, 39, 54, 52, 78, 85, 77, 55, 57, 67, 53, 57, 86, 78, 108, 76, 70, 65, 52, 81, 55, 68, 49, 57, 66, 64, 62, 68, 86, 65, 83, 73, 56, 96, 45, 73, 59, 66, 60, 86, 57, 61, 56, 63, 57, 72, 51, 52, 44, 61, 76, 48, 53, 57, 83, 47, 76, 76, 75, 53, 67, 56, 54, 62, 60, 72, 50, 87, 56, 64, 64, 35, 60, 56, 74, 44, 71, 67, 68, 67, 55, 92, 73, 62, 57, 71, 71, 47, 65, 64, 67, 63, 44, 67, 86, 59, 66, 82, 54, 61, 77, 62, 64, 72, 28, 107, 64, 54, 62, 72, 48, 61, 90, 52, 80, 48, 73, 66, 69, 86, 71, 68, 71, 69, 66, 98, 54, 82, 73, 86, 73, 67, 79, 93, 84, 66, 73, 40, 58, 50, 63, 39, 35, 63, 76, 73, 114, 45, 44, 86, 73, 61, 38, 60, 49, 79, 135, 59, 54, 60, 75, 69, 74, 56, 52, 59, 65, 74, 58, 74, 70, 60, 86, 67, 67, 57, 57, 76, 60, 54, 52, 77, 62, 65, 51, 53, 58, 73, 57, 56, 71, 56, 88, 78, 68, 96, 55, 77, 65, 55, 65, 66, 80, 67, 69, 58, 52, 72, 43, 66, 71, 59, 69, 71, 64, 67, 96, 67, 69, 78, 55, 101, 50, 88, 51, 55, 80, 70, 69, 67, 75, 96, 50, 49, 58, 69, 65, 53, 67, 66, 70, 93, 68, 79, 60, 68, 103, 76, 69, 54, 56, 71, 72, 55, 55, 55, 54, 60, 83, 57, 58, 52, 68, 50, 76, 65, 71, 57, 78, 78, 39, 72, 74, 74, 74, 61, 120, 81, 70, 61, 55, 77, 63, 60, 60, 55, 64, 63, 74, 65, 67, 56, 67, 76, 64, 67, 41, 50, 74, 84, 77, 54, 69, 54, 90, 55, 58, 62, 66, 46, 66, 63, 84, 74, 60, 52, 58, 78, 73, 68, 115, 55, 75, 56, 71, 46, 48, 44, 91, 52, 70, 69, 77, 83, 82, 61, 50, 36, 72, 64, 74, 67, 52, 65, 67, 60, 74, 49, 54, 43, 76, 68, 79, 56, 55, 74, 86, 103, 78, 50, 69, 69, 60, 59, 57, 67, 84, 84, 68, 35, 70, 72, 61, 62, 61, 62, 68, 79, 69, 49, 69, 78, 85, 67, 57, 65, 67, 128, 70, 80, 61, 87, 44, 45, 62, 49, 59, 77, 84, 62, 53, 61, 58, 79, 78, 103, 117, 85, 121, 55, 61, 87, 67, 68, 89, 76, 62, 44, 56, 65, 66, 57, 83, 70, 53, 75, 51, 73, 58, 59, 102, 75, 76, 60, 68, 83, 68, 59, 53, 30, 82, 62, 47, 57, 58, 74, 102, 49, 67, 54, 91, 54, 59, 66, 49, 77, 71, 50, 105, 60, 65, 57, 84, 69, 95, 56, 76, 67, 46, 74, 64, 66, 59, 74, 59, 116, 67, 85, 45, 68, 61, 77, 68, 55, 85, 91, 64, 86, 45, 58, 62, 60, 57, 58, 79, 55, 64, 60, 68, 74, 72, 97, 57, 65, 69, 56, 64, 58, 44, 43, 42, 59, 57, 78, 53, 51, 61, 73, 104, 76, 69, 80, 45, 87, 71, 62, 57, 64, 66, 113, 54, 77, 90, 76, 62, 70, 76, 72, 95, 51, 43, 94, 76, 60, 57, 62, 53, 49, 68, 76, 68, 57, 49, 55, 51, 71, 70, 76, 56, 55, 62, 62, 82, 70, 67, 77, 48, 64, 33, 49, 53, 52, 65, 64, 56, 53, 56, 90, 64, 86, 79, 54, 58, 63, 69, 46, 65, 149, 84, 65, 53, 55, 50, 50, 67, 73, 44, 49, 82, 60, 84, 51, 80, 61, 76, 60, 64, 78, 53, 43, 72, 95, 77, 64, 69, 43, 75, 59, 109, 72, 62, 71, 65, 72, 69, 66, 65, 75, 60, 93, 63, 73, 56, 54, 52, 67, 68, 92, 75, 90, 70, 67, 51, 56, 65, 109, 70, 101, 88, 67, 66, 56, 61, 71, 65, 69, 38, 65, 70, 80, 78, 64, 75, 46, 66, 39, 66, 70, 63, 70, 53, 59, 44, 45, 54, 79, 84, 102, 64, 87, 66, 58, 49, 74, 47, 61, 69, 62, 75, 62, 90, 59, 43, 60, 40, 55, 79, 66, 61, 51, 69, 54, 107, 46, 51, 69, 54, 67, 51, 57, 55, 62, 61, 61, 75, 63, 59, 62, 77, 78, 87, 56, 94, 64, 61, 57, 80, 64, 69, 58, 82, 64, 47, 93, 39, 53, 47, 74, 56, 72, 58, 68, 43, 55, 60, 72, 63, 85, 66, 54, 71, 61, 55, 65, 65, 103, 61, 68, 80, 103, 81, 60, 56, 66, 93, 80, 77, 53, 55, 107, 52, 47, 56, 65, 99, 56, 54, 80, 65, 43, 74, 54, 62, 50, 35, 50, 72, 100, 50, 69, 42, 50, 69, 38, 60, 52, 63, 83, 63, 41, 57, 63, 66, 63, 74, 54, 66, 66, 54, 54, 65, 68, 65, 59, 64, 109, 58, 67, 38, 72, 68, 59, 67, 48, 94, 79, 86, 122, 82, 83, 60, 55, 96, 58, 60, 57, 52, 65, 69, 29, 61, 64, 57, 73, 87, 42, 81, 68, 62, 52, 54, 71, 42, 63, 55, 57, 52, 46, 72, 44, 52, 64, 65, 73, 70, 52, 57, 42, 55, 50, 49, 52, 55, 45, 126, 43, 68, 54, 58, 56, 53, 62, 64, 53, 61, 43, 71, 54, 85, 79, 68, 69, 88, 59, 52, 91, 54, 75, 64, 63, 51, 72, 79, 85, 67, 84, 66, 63, 63, 75, 57, 64, 78, 93, 80, 81, 68, 56, 54, 60, 84, 43, 79, 105, 61, 44, 47, 55, 78, 85, 68, 87, 69, 49, 66, 52, 72, 40, 104, 77, 59, 64, 87, 60, 56, 67, 53, 56, 84, 78, 90, 61, 55, 58, 63, 74, 58, 40, 55, 50, 51, 50, 66, 42, 91, 73, 48, 87, 76, 88, 83, 19, 61, 66, 69, 42, 79, 68, 43, 70, 62, 73, 63, 34, 66, 87, 67, 81, 74, 86, 64, 61, 59, 60, 93, 65, 70, 54, 48, 56, 55, 55, 62, 59, 52, 55, 69, 81, 61, 54, 66, 70, 92, 51, 61, 67, 118, 53, 55, 85, 75, 79, 53, 73, 58, 54, 89, 52, 37, 85, 86, 61, 66, 57, 80, 53, 62, 57, 56, 70, 87, 65, 54, 50, 47, 84, 58, 50, 102, 61, 47, 71, 61, 46, 59, 72, 76, 63, 58, 49, 60, 57, 92, 52, 85, 76, 57, 68, 75, 75, 71, 70, 67, 69, 48, 59, 56, 58, 76, 52, 50, 29, 66, 63, 68, 78, 62, 22, 93, 59, 50, 53, 71, 60, 44, 48, 66, 85, 120, 61, 88, 113, 79, 137, 67, 77, 52, 54, 111, 54, 73, 55, 47, 66, 71, 69, 69, 61]) # parameters
i86 = Internal("op86", "TENSOR_QUANT8_ASYMM", "{1, 1001}, 0.14927123487, 69") # intermediate result
i87 = Parameter("op87", "TENSOR_INT32", "{2}, 0, 0", [1, 1001]) # parameters
-model = model.Conv(i88, i2, i1, i104, i105, i106, i107).To(i0)
-model = model.DepthWiseConv(i0, i29, i28, i108, i109, i110, i111, i112).To(i27)
-model = model.Conv(i27, i32, i31, i113, i114, i115, i116).To(i30)
-model = model.DepthWiseConv(i30, i35, i34, i117, i118, i119, i120, i121).To(i33)
-model = model.Conv(i33, i38, i37, i122, i123, i124, i125).To(i36)
-model = model.DepthWiseConv(i36, i41, i40, i126, i127, i128, i129, i130).To(i39)
-model = model.Conv(i39, i44, i43, i131, i132, i133, i134).To(i42)
-model = model.DepthWiseConv(i42, i47, i46, i135, i136, i137, i138, i139).To(i45)
-model = model.Conv(i45, i50, i49, i140, i141, i142, i143).To(i48)
-model = model.DepthWiseConv(i48, i53, i52, i144, i145, i146, i147, i148).To(i51)
-model = model.Conv(i51, i56, i55, i149, i150, i151, i152).To(i54)
-model = model.DepthWiseConv(i54, i59, i58, i153, i154, i155, i156, i157).To(i57)
-model = model.Conv(i57, i62, i61, i158, i159, i160, i161).To(i60)
-model = model.DepthWiseConv(i60, i65, i64, i162, i163, i164, i165, i166).To(i63)
-model = model.Conv(i63, i68, i67, i167, i168, i169, i170).To(i66)
-model = model.DepthWiseConv(i66, i71, i70, i171, i172, i173, i174, i175).To(i69)
-model = model.Conv(i69, i74, i73, i176, i177, i178, i179).To(i72)
-model = model.DepthWiseConv(i72, i77, i76, i180, i181, i182, i183, i184).To(i75)
-model = model.Conv(i75, i80, i79, i185, i186, i187, i188).To(i78)
-model = model.DepthWiseConv(i78, i5, i4, i189, i190, i191, i192, i193).To(i3)
-model = model.Conv(i3, i8, i7, i194, i195, i196, i197).To(i6)
-model = model.DepthWiseConv(i6, i11, i10, i198, i199, i200, i201, i202).To(i9)
-model = model.Conv(i9, i14, i13, i203, i204, i205, i206).To(i12)
-model = model.DepthWiseConv(i12, i17, i16, i207, i208, i209, i210, i211).To(i15)
-model = model.Conv(i15, i20, i19, i212, i213, i214, i215).To(i18)
-model = model.DepthWiseConv(i18, i23, i22, i216, i217, i218, i219, i220).To(i21)
-model = model.Conv(i21, i26, i25, i221, i222, i223, i224).To(i24)
-model = model.AveragePool(i24, i225, i226, i227, i228, i229, i230).To(i81)
-model = model.Conv(i81, i84, i83, i231, i232, i233, i234).To(i82)
-model = model.Reshape(i82, i87).To(i86)
-model = model.SoftMax(i86, i235).To(i85)
+model = model.Operation("CONV_2D", i88, i2, i1, i104, i105, i106, i107).To(i0)
+model = model.Operation("DEPTHWISE_CONV_2D", i0, i29, i28, i108, i109, i110, i111, i112).To(i27)
+model = model.Operation("CONV_2D", i27, i32, i31, i113, i114, i115, i116).To(i30)
+model = model.Operation("DEPTHWISE_CONV_2D", i30, i35, i34, i117, i118, i119, i120, i121).To(i33)
+model = model.Operation("CONV_2D", i33, i38, i37, i122, i123, i124, i125).To(i36)
+model = model.Operation("DEPTHWISE_CONV_2D", i36, i41, i40, i126, i127, i128, i129, i130).To(i39)
+model = model.Operation("CONV_2D", i39, i44, i43, i131, i132, i133, i134).To(i42)
+model = model.Operation("DEPTHWISE_CONV_2D", i42, i47, i46, i135, i136, i137, i138, i139).To(i45)
+model = model.Operation("CONV_2D", i45, i50, i49, i140, i141, i142, i143).To(i48)
+model = model.Operation("DEPTHWISE_CONV_2D", i48, i53, i52, i144, i145, i146, i147, i148).To(i51)
+model = model.Operation("CONV_2D", i51, i56, i55, i149, i150, i151, i152).To(i54)
+model = model.Operation("DEPTHWISE_CONV_2D", i54, i59, i58, i153, i154, i155, i156, i157).To(i57)
+model = model.Operation("CONV_2D", i57, i62, i61, i158, i159, i160, i161).To(i60)
+model = model.Operation("DEPTHWISE_CONV_2D", i60, i65, i64, i162, i163, i164, i165, i166).To(i63)
+model = model.Operation("CONV_2D", i63, i68, i67, i167, i168, i169, i170).To(i66)
+model = model.Operation("DEPTHWISE_CONV_2D", i66, i71, i70, i171, i172, i173, i174, i175).To(i69)
+model = model.Operation("CONV_2D", i69, i74, i73, i176, i177, i178, i179).To(i72)
+model = model.Operation("DEPTHWISE_CONV_2D", i72, i77, i76, i180, i181, i182, i183, i184).To(i75)
+model = model.Operation("CONV_2D", i75, i80, i79, i185, i186, i187, i188).To(i78)
+model = model.Operation("DEPTHWISE_CONV_2D", i78, i5, i4, i189, i190, i191, i192, i193).To(i3)
+model = model.Operation("CONV_2D", i3, i8, i7, i194, i195, i196, i197).To(i6)
+model = model.Operation("DEPTHWISE_CONV_2D", i6, i11, i10, i198, i199, i200, i201, i202).To(i9)
+model = model.Operation("CONV_2D", i9, i14, i13, i203, i204, i205, i206).To(i12)
+model = model.Operation("DEPTHWISE_CONV_2D", i12, i17, i16, i207, i208, i209, i210, i211).To(i15)
+model = model.Operation("CONV_2D", i15, i20, i19, i212, i213, i214, i215).To(i18)
+model = model.Operation("DEPTHWISE_CONV_2D", i18, i23, i22, i216, i217, i218, i219, i220).To(i21)
+model = model.Operation("CONV_2D", i21, i26, i25, i221, i222, i223, i224).To(i24)
+model = model.Operation("AVERAGE_POOL_2D", i24, i225, i226, i227, i228, i229, i230).To(i81)
+model = model.Operation("CONV_2D", i81, i84, i83, i231, i232, i233, i234).To(i82)
+model = model.Operation("RESHAPE", i82, i87).To(i86)
+model = model.Operation("SOFTMAX", i86, i235).To(i85)
input0 = {i88: [132, 137, 131, 144, 155, 144, 119, 126, 110, 128, 137, 121, 110, 120, 103, 105, 114, 99, 133, 145, 129, 124, 136, 118, 124, 136, 120, 112, 124, 111, 121, 132, 119, 125, 137, 121, 133, 140, 126, 133, 139, 128, 124, 129, 112, 117, 123, 110, 88, 95, 79, 96, 103, 87, 105, 113, 101, 83, 90, 74, 99, 106, 92, 103, 109, 100, 88, 94, 83, 86, 93, 80, 73, 76, 68, 59, 64, 56, 17, 19, 9, 17, 19, 9, 0, 0, 0, 20, 21, 12, 55, 56, 49, 105, 106, 97, 99, 99, 86, 116, 113, 103, 129, 126, 116, 135, 132, 121, 121, 118, 107, 120, 120, 109, 111, 108, 100, 117, 114, 106, 101, 96, 89, 110, 107, 99, 92, 86, 79, 96, 95, 86, 96, 93, 83, 94, 89, 80, 109, 106, 96, 140, 134, 125, 130, 125, 116, 126, 121, 111, 146, 138, 129, 163, 156, 145, 159, 152, 140, 181, 175, 166, 175, 167, 159, 181, 173, 164, 174, 171, 161, 151, 148, 138, 167, 164, 154, 153, 152, 141, 148, 141, 132, 162, 157, 147, 153, 148, 136, 161, 156, 144, 156, 153, 140, 138, 136, 123, 131, 135, 123, 115, 112, 100, 123, 128, 112, 118, 117, 106, 104, 106, 94, 120, 121, 112, 112, 112, 100, 120, 122, 110, 112, 114, 100, 102, 105, 90, 109, 112, 97, 106, 107, 91, 127, 129, 115, 130, 128, 113, 110, 108, 93, 121, 119, 103, 99, 96, 81, 87, 85, 70, 112, 113, 95, 118, 119, 100, 106, 107, 89, 131, 129, 114, 113, 111, 93, 129, 120, 107, 122, 120, 105, 111, 111, 95, 96, 95, 84, 90, 90, 76, 96, 98, 72, 85, 87, 75, 80, 82, 72, 13, 13, 0, 24, 23, 12, 6, 6, 0, 52, 51, 40, 104, 103, 94, 118, 120, 107, 125, 124, 115, 133, 135, 123, 120, 121, 114, 136, 139, 131, 150, 153, 145, 144, 145, 138, 148, 151, 143, 154, 155, 148, 130, 133, 126, 138, 142, 134, 149, 152, 144, 150, 153, 145, 156, 159, 151, 159, 165, 156, 151, 157, 148, 145, 151, 142, 149, 155, 147, 161, 167, 158, 159, 165, 156, 146, 152, 143, 150, 153, 147, 166, 165, 154, 227, 223, 206, 249, 245, 226, 255, 251, 234, 255, 253, 236, 255, 255, 239, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 240, 238, 236, 221, 206, 207, 191, 114, 111, 98, 143, 140, 129, 230, 228, 215, 245, 243, 230, 216, 216, 202, 158, 158, 144, 103, 103, 89, 115, 118, 103, 222, 221, 208, 255, 255, 247, 255, 255, 255, 255, 255, 254, 255, 255, 254, 255, 255, 254, 255, 255, 251, 250, 248, 235, 240, 237, 222, 251, 249, 234, 255, 255, 243, 255, 255, 246, 255, 255, 247, 255, 255, 246, 245, 241, 224, 49, 45, 28, 12, 7, 0, 227, 223, 206, 255, 255, 243, 255, 251, 236, 236, 232, 218, 235, 231, 216, 239, 234, 220, 243, 239, 224, 255, 255, 242, 255, 255, 246, 255, 255, 245, 255, 255, 245, 255, 255, 245, 255, 255, 245, 255, 255, 245, 255, 255, 245, 255, 255, 244, 255, 255, 245, 255, 255, 245, 255, 255, 244, 255, 255, 247, 255, 255, 248, 255, 255, 247, 255, 255, 247, 255, 255, 247, 255, 255, 247, 255, 255, 245, 255, 255, 244, 255, 255, 244, 255, 255, 245, 255, 255, 244, 255, 255, 244, 255, 255, 244, 255, 255, 247, 255, 255, 245, 255, 255, 244, 255, 255, 244, 255, 255, 244, 255, 255, 241, 255, 255, 241, 255, 255, 241, 255, 255, 240, 255, 255, 241, 255, 255, 241, 255, 255, 241, 255, 255, 241, 254, 251, 236, 242, 240, 224, 210, 208, 193, 219, 216, 201, 234, 232, 216, 255, 255, 244, 255, 255, 247, 255, 255, 251, 255, 255, 251, 255, 255, 250, 255, 255, 255, 19, 19, 3, 25, 25, 11, 101, 104, 87, 134, 147, 127, 146, 158, 140, 165, 175, 158, 167, 177, 160, 159, 168, 154, 151, 160, 146, 140, 152, 136, 146, 157, 145, 146, 157, 145, 147, 158, 148, 155, 163, 152, 169, 177, 165, 166, 172, 161, 163, 170, 159, 156, 163, 149, 153, 160, 146, 139, 146, 132, 128, 135, 124, 135, 142, 130, 155, 162, 148, 152, 158, 145, 128, 135, 124, 127, 134, 122, 130, 134, 124, 121, 125, 114, 40, 46, 35, 41, 40, 32, 0, 0, 0, 12, 13, 6, 90, 91, 82, 105, 106, 97, 133, 132, 124, 148, 148, 136, 153, 152, 141, 158, 155, 145, 149, 146, 135, 153, 151, 140, 154, 154, 142, 153, 151, 140, 145, 142, 134, 146, 143, 135, 136, 133, 125, 135, 131, 124, 135, 131, 124, 158, 155, 145, 138, 135, 125, 151, 148, 138, 158, 155, 145, 158, 155, 145, 182, 176, 167, 174, 168, 159, 174, 169, 157, 172, 167, 158, 167, 161, 152, 179, 174, 164, 171, 168, 158, 178, 175, 164, 181, 178, 168, 158, 155, 145, 168, 168, 156, 167, 161, 152, 156, 153, 142, 153, 151, 138, 160, 158, 145, 157, 154, 142, 147, 145, 132, 138, 141, 126, 135, 135, 122, 138, 141, 126, 135, 135, 122, 134, 136, 124, 127, 129, 117, 125, 127, 114, 135, 137, 125, 142, 144, 130, 145, 148, 133, 140, 140, 126, 137, 137, 121, 145, 145, 129, 147, 145, 130, 148, 148, 132, 147, 145, 130, 137, 137, 121, 152, 152, 136, 146, 146, 130, 135, 136, 120, 138, 136, 119, 130, 130, 114, 139, 137, 122, 139, 139, 123, 141, 141, 126, 151, 151, 135, 137, 136, 123, 127, 128, 112, 114, 115, 97, 108, 110, 98, 77, 79, 67, 12, 10, 0, 41, 41, 27, 0, 0, 0, 84, 86, 74, 102, 104, 92, 138, 140, 128, 156, 158, 146, 142, 144, 132, 141, 142, 133, 147, 148, 141, 138, 142, 134, 145, 147, 139, 151, 155, 147, 146, 150, 142, 152, 156, 148, 141, 147, 138, 145, 151, 142, 144, 147, 141, 153, 159, 150, 161, 167, 158, 154, 160, 151, 159, 165, 156, 159, 165, 156, 170, 176, 167, 170, 173, 165, 132, 135, 130, 167, 171, 163, 166, 164, 151, 254, 249, 235, 255, 251, 234, 255, 255, 238, 255, 255, 240, 255, 255, 242, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 238, 245, 243, 230, 185, 182, 169, 164, 161, 151, 137, 135, 122, 247, 244, 231, 239, 239, 225, 229, 228, 215, 141, 141, 128, 73, 76, 61, 106, 106, 95, 254, 251, 238, 255, 255, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 250, 248, 235, 244, 242, 229, 255, 255, 240, 255, 255, 250, 255, 255, 250, 255, 255, 251, 255, 255, 250, 42, 38, 21, 28, 26, 8, 180, 178, 161, 255, 255, 248, 255, 255, 249, 252, 247, 233, 240, 235, 221, 242, 238, 223, 245, 240, 228, 255, 255, 245, 255, 255, 250, 255, 255, 251, 255, 255, 251, 255, 255, 251, 255, 255, 250, 255, 255, 250, 255, 255, 250, 255, 255, 250, 255, 255, 250, 255, 255, 249, 255, 255, 252, 255, 255, 252, 255, 255, 252, 255, 255, 252, 255, 255, 253, 255, 255, 253, 255, 255, 252, 255, 255, 251, 255, 255, 250, 255, 255, 249, 255, 255, 249, 255, 255, 249, 255, 255, 247, 255, 255, 246, 255, 255, 247, 255, 255, 249, 255, 255, 247, 255, 255, 246, 255, 255, 247, 255, 255, 247, 255, 255, 249, 255, 255, 247, 255, 255, 247, 255, 255, 247, 255, 255, 246, 255, 255, 247, 255, 255, 246, 255, 255, 242, 241, 238, 223, 214, 212, 197, 227, 223, 208, 243, 241, 226, 255, 255, 245, 255, 255, 254, 255, 255, 253, 255, 255, 253, 255, 255, 254, 182, 180, 165, 18, 16, 3, 30, 29, 16, 255, 255, 245, 162, 168, 161, 163, 171, 162, 165, 174, 162, 161, 172, 160, 163, 172, 160, 151, 162, 149, 153, 164, 152, 154, 162, 152, 157, 167, 157, 165, 173, 164, 166, 175, 165, 170, 178, 169, 176, 182, 173, 167, 173, 164, 170, 177, 165, 160, 167, 153, 164, 171, 160, 161, 167, 156, 166, 172, 161, 168, 174, 163, 168, 172, 162, 155, 158, 148, 157, 159, 149, 145, 147, 137, 130, 134, 124, 31, 33, 23, 15, 17, 7, 3, 2, 0, 100, 102, 92, 116, 115, 106, 135, 135, 126, 146, 145, 134, 149, 149, 138, 168, 168, 156, 168, 166, 155, 161, 159, 148, 165, 162, 152, 153, 152, 141, 151, 148, 140, 156, 153, 145, 155, 154, 146, 163, 159, 152, 152, 149, 141, 153, 150, 142, 159, 156, 146, 159, 156, 146, 170, 167, 156, 161, 159, 148, 183, 178, 168, 184, 179, 169, 163, 158, 148, 161, 156, 146, 168, 162, 153, 167, 164, 154, 170, 167, 156, 168, 166, 155, 157, 154, 144, 160, 158, 147, 167, 164, 154, 167, 164, 154, 161, 159, 148, 161, 159, 148, 157, 154, 142, 156, 153, 142, 156, 156, 143, 146, 145, 134, 131, 131, 117, 141, 141, 128, 131, 130, 119, 140, 140, 128, 142, 142, 131, 137, 136, 125, 133, 135, 123, 134, 136, 124, 145, 148, 133, 145, 148, 133, 146, 146, 132, 140, 142, 128, 145, 145, 129, 145, 145, 129, 145, 145, 129, 154, 154, 138, 135, 138, 121, 152, 152, 136, 154, 154, 138, 142, 145, 128, 148, 148, 132, 144, 144, 128, 151, 149, 134, 151, 151, 135, 154, 154, 138, 151, 151, 135, 151, 148, 136, 145, 145, 131, 144, 144, 128, 130, 133, 118, 109, 111, 99, 22, 24, 10, 45, 45, 31, 20, 20, 8, 98, 100, 88, 112, 112, 100, 156, 158, 146, 147, 149, 136, 149, 151, 141, 154, 155, 148, 152, 156, 148, 143, 146, 138, 145, 149, 141, 144, 147, 139, 138, 142, 134, 131, 134, 129, 135, 141, 132, 133, 139, 130, 149, 155, 149, 154, 160, 153, 160, 165, 159, 161, 167, 160, 163, 169, 162, 175, 179, 171, 170, 173, 165, 171, 174, 166, 156, 159, 151, 184, 187, 177, 222, 220, 207, 255, 252, 237, 255, 253, 236, 255, 255, 240, 255, 255, 243, 255, 255, 244, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 231, 231, 217, 132, 130, 117, 166, 166, 152, 170, 167, 154, 251, 251, 237, 231, 231, 217, 225, 225, 211, 89, 89, 75, 111, 110, 101, 227, 227, 214, 252, 250, 237, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 245, 243, 230, 240, 237, 222, 255, 255, 247, 255, 255, 254, 255, 255, 251, 255, 255, 255, 54, 52, 37, 23, 21, 8, 110, 109, 91, 255, 255, 251, 255, 255, 252, 255, 255, 243, 246, 241, 227, 247, 242, 230, 248, 245, 230, 255, 255, 242, 255, 255, 253, 255, 255, 253, 255, 255, 253, 255, 255, 254, 255, 255, 254, 255, 255, 254, 255, 255, 253, 255, 255, 253, 255, 255, 255, 255, 255, 253, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 254, 255, 255, 255, 255, 255, 254, 255, 255, 254, 255, 255, 254, 255, 255, 254, 255, 255, 253, 255, 255, 254, 255, 255, 253, 255, 255, 250, 255, 255, 251, 255, 255, 251, 255, 255, 251, 255, 255, 251, 255, 255, 250, 255, 255, 250, 255, 255, 250, 255, 255, 251, 255, 255, 252, 255, 255, 251, 255, 255, 251, 255, 255, 252, 255, 255, 249, 255, 255, 246, 244, 242, 227, 225, 223, 208, 229, 227, 214, 251, 249, 236, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 29, 27, 9, 30, 29, 20, 27, 27, 13, 255, 255, 255, 147, 165, 154, 153, 166, 155, 165, 176, 165, 158, 169, 158, 168, 179, 169, 163, 174, 164, 166, 176, 168, 158, 168, 160, 169, 180, 170, 167, 176, 166, 167, 176, 166, 179, 187, 178, 174, 183, 173, 173, 179, 170, 156, 162, 154, 162, 168, 159, 160, 166, 157, 169, 175, 166, 163, 169, 160, 167, 173, 164, 146, 150, 140, 148, 151, 141, 159, 161, 152, 145, 147, 137, 24, 26, 16, 19, 18, 9, 6, 7, 0, 90, 89, 80, 112, 113, 104, 128, 128, 119, 156, 156, 145, 153, 152, 141, 155, 155, 144, 167, 164, 154, 160, 158, 147, 157, 154, 144, 161, 159, 148, 160, 159, 148, 165, 162, 152, 153, 152, 141, 165, 164, 153, 168, 166, 155, 164, 161, 151, 166, 163, 153, 167, 164, 154, 177, 174, 163, 165, 162, 152, 168, 166, 155, 175, 173, 162, 164, 161, 151, 159, 153, 144, 160, 158, 145, 167, 165, 152, 164, 161, 151, 173, 170, 160, 163, 160, 149, 161, 159, 148, 166, 163, 153, 174, 171, 161, 166, 165, 154, 161, 159, 148, 152, 149, 139, 170, 167, 154, 168, 166, 153, 147, 147, 133, 156, 156, 143, 148, 148, 136, 141, 141, 128, 152, 151, 140, 140, 140, 128, 139, 138, 127, 155, 155, 144, 139, 138, 127, 145, 144, 133, 148, 148, 134, 148, 150, 136, 150, 153, 138, 153, 155, 140, 144, 147, 130, 128, 131, 114, 145, 148, 131, 140, 142, 126, 140, 142, 126, 152, 152, 136, 149, 150, 134, 147, 147, 131, 152, 152, 136, 155, 156, 140, 146, 146, 130, 149, 150, 134, 166, 166, 150, 162, 162, 147, 158, 158, 144, 156, 156, 143, 153, 153, 139, 151, 154, 139, 130, 132, 120, 37, 40, 25, 34, 34, 20, 21, 23, 9, 102, 104, 92, 116, 118, 106, 140, 142, 129, 142, 144, 134, 153, 154, 145, 159, 163, 155, 156, 159, 151, 135, 138, 130, 151, 155, 147, 143, 146, 138, 138, 142, 134, 159, 162, 157, 151, 154, 149, 151, 156, 150, 154, 160, 153, 166, 169, 164, 163, 166, 158, 163, 166, 160, 174, 179, 173, 173, 177, 169, 170, 173, 165, 184, 187, 179, 156, 159, 151, 175, 179, 169, 242, 240, 224, 255, 254, 238, 255, 255, 240, 255, 255, 244, 255, 255, 245, 255, 255, 247, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 249, 236, 222, 221, 208, 132, 132, 118, 169, 169, 156, 135, 137, 125, 202, 202, 188, 229, 228, 215, 103, 102, 91, 134, 135, 126, 161, 161, 147, 249, 247, 231, 254, 251, 236, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 248, 235, 244, 242, 227, 249, 246, 233, 255, 255, 252, 255, 255, 255, 255, 255, 255, 38, 36, 21, 31, 31, 17, 110, 108, 93, 255, 255, 255, 255, 255, 255, 255, 255, 253, 248, 245, 232, 249, 244, 232, 249, 246, 233, 255, 255, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 253, 255, 255, 253, 255, 255, 253, 255, 255, 254, 255, 255, 254, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 254, 255, 255, 254, 255, 255, 255, 255, 255, 251, 255, 255, 247, 243, 241, 228, 233, 228, 216, 234, 231, 218, 255, 255, 244, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 226, 209, 21, 20, 12, 31, 34, 19, 221, 224, 207, 255, 255, 255, 154, 167, 158, 148, 159, 151, 157, 167, 159, 158, 168, 160, 157, 167, 159, 167, 177, 169, 159, 169, 161, 162, 173, 165, 168, 179, 171, 171, 179, 172, 176, 184, 176, 176, 182, 175, 175, 181, 174, 174, 179, 173, 178, 184, 178, 161, 167, 158, 176, 182, 173, 171, 177, 169, 169, 175, 164, 170, 177, 165, 160, 164, 154, 153, 157, 147, 155, 156, 147, 144, 148, 137, 37, 39, 29, 16, 18, 8, 2, 4, 0, 123, 125, 115, 107, 109, 99, 149, 149, 138, 168, 168, 156, 156, 156, 145, 168, 166, 155, 171, 168, 158, 158, 155, 145, 158, 155, 145, 158, 155, 145, 153, 151, 140, 173, 170, 160, 165, 162, 152, 171, 168, 158, 180, 177, 167, 180, 177, 167, 173, 170, 160, 172, 169, 159, 174, 171, 161, 171, 168, 158, 164, 161, 151, 173, 170, 160, 158, 155, 145, 164, 161, 151, 161, 159, 146, 161, 159, 146, 160, 158, 145, 161, 159, 146, 161, 159, 146, 170, 167, 154, 165, 162, 150, 163, 160, 149, 156, 156, 145, 148, 148, 136, 165, 164, 153, 174, 174, 160, 177, 177, 166, 173, 173, 159, 170, 170, 157, 167, 167, 153, 152, 152, 138, 158, 157, 146, 146, 145, 134, 146, 145, 134, 140, 140, 128, 149, 149, 138, 142, 142, 131, 142, 142, 131, 140, 140, 126, 141, 141, 128, 147, 149, 134, 145, 148, 131, 150, 153, 136, 136, 139, 122, 145, 148, 131, 149, 152, 135, 152, 152, 136, 155, 158, 141, 161, 163, 147, 160, 160, 144, 140, 140, 124, 140, 140, 124, 151, 151, 135, 151, 151, 135, 162, 162, 147, 180, 180, 164, 167, 167, 153, 164, 166, 152, 168, 168, 154, 146, 145, 134, 61, 61, 47, 32, 31, 20, 27, 29, 17, 95, 97, 85, 94, 96, 84, 153, 155, 142, 142, 144, 134, 149, 153, 142, 160, 164, 156, 143, 146, 138, 143, 146, 138, 150, 153, 145, 166, 170, 162, 166, 170, 162, 165, 168, 162, 135, 141, 132, 159, 165, 156, 163, 169, 162, 167, 172, 166, 166, 171, 165, 181, 186, 180, 186, 191, 183, 173, 179, 170, 174, 180, 171, 181, 187, 178, 151, 157, 148, 178, 182, 171, 241, 238, 223, 255, 255, 243, 255, 255, 241, 255, 255, 245, 255, 255, 247, 255, 255, 248, 255, 255, 249, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 238, 216, 216, 202, 130, 129, 116, 165, 167, 155, 122, 124, 112, 197, 197, 185, 130, 129, 118, 143, 145, 135, 95, 95, 81, 253, 253, 239, 253, 253, 239, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 247, 244, 229, 243, 241, 226, 255, 255, 244, 255, 255, 255, 255, 255, 255, 33, 32, 14, 24, 27, 12, 151, 149, 134, 255, 255, 254, 255, 255, 255, 255, 255, 253, 249, 246, 233, 250, 248, 235, 252, 250, 237, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 249, 244, 242, 229, 234, 231, 218, 240, 237, 224, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 45, 27, 45, 48, 33, 16, 18, 6, 255, 255, 255, 255, 255, 255, 155, 164, 168, 150, 162, 158, 149, 162, 153, 141, 152, 144, 159, 169, 161, 163, 174, 166, 162, 173, 165, 169, 180, 172, 173, 181, 174, 173, 181, 174, 176, 184, 176, 177, 185, 176, 166, 172, 163, 171, 177, 169, 166, 172, 163, 164, 170, 162, 159, 165, 156, 168, 174, 165, 173, 179, 168, 169, 175, 164, 162, 168, 157, 152, 158, 149, 156, 159, 149, 76, 80, 70, 6, 7, 0, 17, 19, 9, 62, 63, 54, 119, 119, 107, 144, 146, 136, 159, 158, 147, 165, 164, 153, 167, 164, 154, 165, 162, 152, 165, 162, 152, 165, 162, 150, 155, 152, 141, 157, 154, 144, 159, 156, 146, 157, 154, 144, 158, 155, 145, 181, 178, 168, 179, 176, 166, 167, 164, 154, 167, 164, 154, 175, 173, 162, 178, 175, 164, 186, 183, 173, 184, 181, 170, 178, 175, 164, 173, 170, 160, 180, 177, 167, 180, 178, 165, 178, 175, 164, 181, 179, 166, 178, 178, 165, 181, 181, 167, 177, 174, 161, 167, 167, 153, 173, 173, 159, 169, 169, 158, 170, 170, 159, 167, 167, 153, 167, 166, 155, 170, 170, 157, 168, 168, 156, 159, 158, 147, 155, 155, 142, 161, 161, 147, 158, 158, 144, 144, 143, 130, 146, 145, 134, 145, 145, 131, 151, 151, 137, 146, 145, 134, 157, 159, 145, 160, 160, 146, 150, 153, 138, 159, 162, 147, 159, 162, 147, 164, 166, 152, 158, 161, 144, 154, 156, 142, 155, 157, 143, 159, 162, 147, 157, 159, 145, 159, 162, 145, 157, 160, 143, 164, 167, 150, 154, 154, 140, 144, 143, 130, 159, 159, 143, 163, 165, 151, 168, 170, 156, 169, 169, 156, 165, 168, 153, 166, 169, 154, 142, 144, 130, 66, 68, 56, 45, 44, 33, 21, 23, 9, 99, 101, 89, 104, 106, 94, 149, 153, 140, 140, 144, 134, 163, 166, 156, 149, 152, 144, 128, 131, 123, 144, 147, 139, 153, 157, 147, 159, 165, 156, 159, 165, 156, 149, 155, 147, 148, 154, 147, 162, 168, 161, 174, 180, 171, 162, 168, 159, 180, 186, 177, 180, 186, 177, 186, 191, 183, 182, 188, 179, 181, 187, 178, 171, 177, 169, 147, 153, 144, 191, 195, 182, 222, 221, 208, 255, 255, 245, 255, 255, 247, 255, 255, 248, 255, 255, 249, 255, 255, 249, 255, 255, 250, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 231, 231, 217, 162, 162, 151, 165, 167, 155, 107, 109, 97, 119, 121, 109, 170, 171, 162, 92, 94, 80, 253, 253, 239, 254, 254, 240, 254, 254, 240, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 248, 233, 245, 243, 228, 243, 241, 226, 255, 255, 255, 255, 255, 255, 18, 18, 2, 18, 18, 4, 210, 210, 194, 255, 255, 255, 255, 255, 255, 255, 255, 251, 252, 250, 237, 254, 251, 238, 255, 255, 243, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 247, 244, 231, 240, 237, 224, 251, 249, 236, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 240, 33, 33, 19, 53, 56, 41, 192, 195, 178, 255, 255, 255, 255, 255, 255, 149, 161, 159, 154, 166, 160, 159, 171, 162, 149, 162, 153, 154, 165, 157, 154, 165, 157, 144, 154, 146, 147, 155, 147, 151, 159, 152, 159, 167, 160, 159, 167, 160, 162, 170, 162, 162, 168, 161, 163, 169, 162, 168, 174, 165, 156, 162, 156, 166, 172, 163, 168, 174, 165, 169, 175, 164, 168, 174, 163, 165, 169, 159, 146, 150, 140, 161, 165, 155, 48, 52, 42, 10, 12, 2, 15, 17, 7, 94, 96, 86, 116, 115, 106, 151, 150, 141, 155, 155, 144, 166, 165, 154, 156, 153, 142, 160, 158, 147, 161, 159, 146, 146, 143, 133, 160, 158, 147, 160, 158, 147, 153, 151, 140, 135, 132, 121, 163, 160, 149, 155, 152, 141, 171, 168, 158, 173, 170, 160, 171, 168, 158, 166, 163, 153, 161, 159, 148, 164, 161, 151, 173, 170, 160, 171, 168, 158, 166, 163, 153, 177, 174, 161, 172, 169, 157, 167, 165, 152, 175, 173, 160, 171, 171, 158, 169, 169, 156, 158, 158, 144, 171, 171, 158, 168, 168, 154, 161, 161, 147, 168, 168, 154, 168, 168, 154, 163, 163, 150, 175, 177, 164, 168, 170, 156, 165, 164, 151, 156, 156, 145, 161, 161, 147, 150, 153, 138, 145, 145, 131, 151, 154, 139, 149, 149, 136, 153, 153, 139, 150, 153, 138, 157, 159, 145, 150, 153, 138, 157, 159, 145, 156, 158, 144, 163, 165, 151, 164, 166, 152, 155, 158, 141, 159, 162, 147, 158, 161, 146, 135, 139, 124, 157, 161, 146, 159, 162, 147, 149, 153, 138, 152, 157, 142, 164, 166, 152, 162, 164, 150, 153, 155, 140, 161, 163, 149, 162, 164, 150, 156, 158, 144, 159, 161, 149, 157, 159, 147, 142, 144, 132, 51, 54, 39, 29, 31, 19, 15, 17, 3, 99, 101, 89, 118, 120, 107, 155, 159, 146, 155, 158, 148, 150, 154, 143, 152, 156, 148, 149, 155, 147, 153, 159, 150, 149, 155, 147, 143, 149, 141, 142, 148, 139, 149, 155, 147, 153, 159, 150, 160, 166, 157, 175, 181, 172, 170, 176, 167, 171, 177, 169, 178, 184, 176, 174, 180, 171, 175, 181, 172, 175, 181, 172, 171, 177, 169, 149, 155, 147, 189, 193, 183, 204, 204, 190, 255, 255, 249, 255, 255, 248, 255, 255, 249, 255, 255, 250, 255, 255, 251, 255, 255, 251, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 240, 240, 228, 188, 187, 176, 155, 157, 145, 152, 151, 140, 165, 167, 155, 133, 133, 119, 255, 255, 246, 255, 255, 242, 255, 255, 245, 255, 255, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 236, 245, 243, 228, 245, 243, 228, 255, 255, 255, 255, 253, 240, 30, 30, 14, 26, 26, 12, 253, 253, 237, 255, 255, 255, 255, 255, 255, 255, 255, 249, 255, 255, 242, 255, 255, 243, 255, 255, 246, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 249, 246, 233, 243, 241, 228, 255, 255, 244, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 106, 106, 93, 27, 27, 15, 27, 29, 17, 255, 255, 255, 255, 255, 255, 255, 255, 255, 145, 156, 145, 146, 157, 149, 151, 161, 153, 153, 164, 156, 163, 174, 168, 162, 170, 162, 166, 174, 167, 156, 164, 157, 165, 173, 166, 147, 155, 147, 163, 171, 164, 164, 172, 165, 163, 169, 162, 146, 152, 145, 141, 147, 140, 140, 146, 139, 155, 161, 154, 158, 163, 155, 170, 173, 165, 159, 165, 154, 148, 151, 143, 150, 154, 143, 146, 150, 140, 29, 33, 22, 14, 16, 6, 20, 21, 12, 105, 105, 94, 117, 116, 107, 170, 172, 160, 175, 174, 163, 171, 171, 160, 170, 167, 154, 165, 162, 150, 156, 153, 140, 167, 165, 152, 168, 166, 153, 155, 152, 139, 155, 152, 139, 156, 153, 142, 160, 158, 147, 165, 162, 152, 179, 176, 166, 184, 181, 170, 179, 176, 166, 165, 162, 152, 167, 164, 154, 187, 184, 174, 179, 176, 166, 177, 174, 161, 174, 172, 159, 178, 175, 162, 185, 185, 172, 181, 180, 169, 173, 173, 159, 169, 169, 156, 165, 164, 151, 162, 162, 149, 170, 170, 157, 167, 166, 155, 165, 164, 153, 167, 166, 155, 169, 169, 158, 175, 177, 164, 174, 173, 162, 166, 165, 154, 159, 158, 147, 149, 149, 138, 159, 162, 147, 154, 154, 140, 153, 153, 139, 149, 151, 137, 158, 161, 146, 151, 153, 141, 153, 155, 140, 149, 151, 137, 166, 168, 156, 158, 163, 147, 159, 164, 149, 151, 154, 139, 151, 154, 139, 159, 164, 149, 160, 165, 150, 146, 151, 136, 139, 144, 129, 157, 161, 146, 145, 150, 134, 151, 156, 140, 146, 151, 136, 140, 145, 130, 166, 171, 156, 167, 172, 157, 163, 167, 154, 151, 156, 140, 149, 153, 140, 155, 159, 146, 151, 155, 142, 120, 122, 110, 49, 51, 39, 48, 53, 40, 19, 24, 11, 108, 112, 99, 131, 135, 123, 153, 158, 145, 156, 160, 147, 157, 161, 150, 151, 155, 145, 148, 151, 141, 145, 151, 142, 135, 141, 132, 148, 154, 145, 145, 151, 142, 153, 159, 150, 153, 159, 148, 163, 170, 159, 167, 173, 162, 169, 175, 164, 168, 174, 163, 175, 181, 170, 176, 182, 171, 176, 182, 171, 173, 179, 168, 170, 177, 165, 155, 161, 150, 186, 192, 181, 184, 186, 172, 255, 255, 250, 255, 255, 249, 255, 255, 251, 255, 255, 251, 255, 255, 251, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 251, 239, 240, 240, 226, 204, 204, 190, 167, 166, 155, 137, 136, 125, 177, 177, 164, 223, 223, 209, 210, 210, 196, 163, 163, 150, 227, 228, 212, 255, 255, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 245, 243, 228, 245, 243, 228, 255, 255, 244, 205, 202, 187, 50, 47, 34, 30, 30, 12, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 255, 255, 244, 255, 255, 246, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 243, 248, 245, 232, 247, 244, 231, 255, 255, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 35, 24, 49, 50, 41, 250, 252, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 166, 158, 157, 167, 159, 160, 171, 162, 167, 175, 168, 158, 166, 159, 144, 155, 144, 134, 142, 132, 165, 173, 166, 147, 155, 147, 158, 163, 157, 143, 151, 144, 135, 143, 136, 122, 130, 123, 131, 136, 130, 134, 140, 131, 125, 131, 122, 132, 136, 128, 148, 151, 143, 149, 152, 144, 152, 156, 146, 149, 153, 142, 136, 143, 132, 132, 136, 126, 59, 63, 52, 0, 0, 0, 72, 74, 64, 123, 125, 113, 145, 144, 133, 171, 173, 161, 174, 173, 162, 181, 179, 166, 174, 172, 159, 164, 161, 151, 169, 164, 154, 175, 173, 162, 170, 165, 153, 170, 167, 156, 178, 175, 164, 174, 171, 161, 180, 178, 165, 184, 181, 168, 185, 182, 171, 188, 185, 175, 177, 174, 163, 174, 171, 161, 186, 183, 173, 191, 188, 177, 182, 182, 168, 175, 173, 160, 170, 167, 156, 171, 171, 158, 180, 178, 165, 178, 175, 162, 178, 178, 165, 173, 173, 159, 169, 169, 158, 165, 164, 153, 174, 173, 162, 162, 162, 151, 166, 165, 154, 176, 176, 164, 171, 171, 160, 183, 183, 171, 167, 166, 155, 160, 159, 148, 155, 155, 144, 176, 176, 162, 168, 168, 154, 164, 166, 152, 155, 155, 142, 165, 164, 151, 165, 168, 153, 155, 157, 143, 168, 170, 156, 157, 161, 146, 157, 159, 145, 161, 163, 149, 166, 171, 156, 150, 154, 139, 145, 150, 134, 156, 160, 147, 163, 167, 152, 152, 156, 144, 164, 166, 154, 159, 164, 149, 157, 161, 146, 159, 164, 149, 157, 161, 146, 160, 165, 150, 164, 168, 153, 158, 162, 149, 159, 163, 151, 152, 156, 144, 144, 148, 135, 141, 143, 131, 154, 156, 144, 129, 131, 119, 16, 18, 6, 38, 40, 28, 27, 29, 17, 102, 104, 92, 142, 144, 132, 158, 162, 149, 171, 175, 162, 159, 163, 151, 153, 157, 147, 163, 170, 159, 162, 168, 157, 148, 155, 143, 163, 170, 159, 159, 165, 154, 161, 167, 156, 171, 178, 167, 170, 177, 165, 171, 178, 167, 173, 179, 168, 177, 184, 172, 168, 174, 163, 166, 172, 161, 169, 175, 164, 164, 171, 160, 167, 173, 162, 171, 175, 164, 186, 190, 179, 178, 180, 166, 255, 255, 248, 255, 255, 250, 255, 255, 251, 255, 255, 252, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 249, 249, 236, 250, 248, 235, 198, 198, 187, 163, 163, 150, 171, 173, 161, 175, 174, 163, 148, 148, 136, 174, 173, 162, 139, 139, 125, 148, 148, 134, 255, 255, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 238, 223, 244, 242, 227, 255, 255, 240, 26, 24, 9, 26, 26, 12, 204, 205, 186, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 245, 255, 255, 246, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 244, 250, 248, 235, 250, 248, 235, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 53, 53, 39, 30, 31, 24, 43, 46, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 173, 162, 154, 167, 156, 159, 169, 161, 163, 174, 166, 159, 170, 159, 144, 153, 143, 152, 161, 151, 144, 152, 145, 133, 141, 133, 149, 157, 148, 149, 157, 150, 143, 151, 144, 140, 146, 139, 127, 133, 126, 133, 139, 132, 131, 134, 129, 136, 139, 131, 147, 148, 141, 160, 164, 156, 155, 156, 147, 155, 156, 147, 168, 173, 160, 130, 134, 121, 44, 46, 36, 9, 8, 0, 68, 67, 58, 113, 113, 102, 156, 156, 145, 162, 162, 151, 181, 179, 166, 168, 166, 153, 179, 176, 166, 175, 169, 160, 174, 168, 159, 175, 169, 160, 177, 172, 160, 184, 179, 167, 173, 171, 158, 187, 185, 172, 193, 191, 178, 193, 191, 178, 192, 189, 179, 178, 175, 164, 184, 181, 170, 180, 177, 167, 180, 177, 167, 192, 189, 179, 153, 152, 141, 168, 166, 155, 168, 168, 156, 169, 169, 156, 173, 173, 159, 177, 174, 163, 176, 176, 162, 173, 172, 161, 174, 173, 162, 169, 169, 156, 165, 164, 151, 168, 168, 156, 175, 174, 163, 177, 177, 166, 184, 184, 173, 188, 187, 176, 167, 166, 155, 159, 158, 147, 156, 156, 145, 165, 164, 153, 165, 164, 151, 154, 156, 142, 159, 159, 145, 163, 163, 150, 169, 169, 156, 164, 166, 152, 169, 171, 157, 170, 174, 159, 171, 173, 159, 171, 175, 160, 158, 163, 147, 157, 161, 146, 156, 158, 144, 159, 161, 149, 162, 164, 152, 151, 155, 142, 165, 169, 156, 165, 170, 154, 152, 157, 142, 155, 159, 146, 152, 157, 142, 163, 167, 152, 166, 170, 158, 159, 163, 151, 156, 160, 147, 148, 152, 139, 142, 146, 133, 143, 145, 133, 134, 136, 124, 63, 65, 53, 36, 38, 26, 24, 26, 14, 60, 64, 52, 113, 117, 104, 174, 178, 166, 160, 164, 152, 161, 166, 153, 161, 168, 154, 158, 164, 151, 156, 163, 152, 163, 170, 159, 168, 174, 163, 170, 177, 165, 173, 179, 168, 173, 179, 168, 180, 186, 175, 168, 174, 163, 167, 173, 162, 168, 174, 163, 161, 167, 156, 158, 164, 153, 162, 169, 155, 158, 164, 151, 164, 171, 158, 164, 171, 158, 163, 167, 154, 157, 161, 148, 159, 159, 145, 255, 255, 251, 255, 255, 251, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 248, 248, 235, 238, 238, 224, 220, 220, 207, 106, 106, 93, 170, 170, 159, 161, 161, 149, 156, 158, 146, 175, 174, 163, 128, 128, 117, 152, 152, 138, 255, 255, 255, 255, 255, 255, 255, 255, 252, 235, 233, 218, 241, 238, 223, 221, 219, 203, 23, 21, 6, 25, 23, 8, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 249, 255, 255, 249, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 255, 255, 243, 255, 252, 239, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 220, 207, 51, 54, 39, 41, 40, 32, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 163, 176, 165, 168, 181, 170, 174, 184, 176, 169, 180, 170, 165, 176, 165, 162, 170, 160, 164, 172, 165, 170, 173, 167, 157, 160, 154, 153, 156, 151, 163, 166, 160, 164, 167, 161, 161, 161, 157, 150, 151, 144, 150, 151, 144, 142, 141, 133, 140, 139, 130, 134, 130, 122, 132, 129, 121, 127, 124, 113, 121, 118, 107, 118, 115, 107, 121, 118, 107, 118, 115, 107, 163, 156, 149, 155, 149, 142, 171, 166, 159, 185, 182, 174, 185, 182, 174, 199, 195, 188, 202, 196, 189, 202, 199, 191, 201, 198, 190, 201, 198, 190, 201, 198, 190, 202, 195, 191, 196, 193, 187, 195, 191, 188, 193, 189, 186, 191, 187, 183, 198, 194, 190, 191, 190, 186, 196, 192, 189, 190, 189, 183, 198, 197, 191, 192, 191, 185, 196, 195, 188, 194, 192, 186, 195, 192, 186, 196, 193, 185, 194, 193, 184, 196, 193, 185, 195, 194, 185, 205, 201, 193, 184, 183, 175, 183, 182, 174, 171, 171, 162, 174, 173, 164, 165, 164, 155, 156, 156, 145, 147, 146, 137, 135, 135, 126, 137, 134, 124, 134, 134, 123, 127, 127, 116, 128, 128, 117, 140, 140, 128, 145, 144, 133, 151, 151, 137, 167, 167, 153, 173, 173, 159, 162, 162, 149, 165, 168, 153, 178, 180, 166, 165, 170, 154, 176, 178, 164, 171, 175, 160, 171, 175, 160, 169, 171, 157, 168, 170, 156, 168, 170, 156, 165, 170, 154, 173, 177, 164, 164, 168, 153, 168, 173, 158, 151, 155, 142, 157, 161, 148, 160, 164, 152, 173, 177, 164, 153, 158, 145, 150, 154, 141, 143, 147, 134, 136, 140, 127, 130, 134, 121, 142, 146, 133, 125, 130, 117, 16, 18, 6, 24, 28, 15, 22, 26, 13, 99, 103, 90, 156, 160, 147, 157, 161, 148, 159, 165, 152, 162, 169, 155, 158, 164, 151, 164, 171, 158, 162, 169, 155, 164, 171, 158, 178, 185, 171, 171, 178, 167, 168, 174, 163, 167, 177, 162, 164, 171, 158, 166, 172, 159, 153, 160, 146, 148, 155, 141, 146, 153, 139, 151, 157, 144, 158, 162, 149, 152, 158, 145, 157, 161, 146, 149, 153, 138, 166, 171, 156, 133, 135, 121, 174, 174, 160, 255, 255, 254, 255, 255, 254, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 248, 235, 245, 244, 233, 212, 212, 199, 146, 146, 132, 128, 128, 117, 116, 115, 104, 120, 120, 109, 100, 100, 89, 99, 96, 83, 200, 197, 185, 255, 255, 252, 255, 255, 252, 255, 255, 242, 232, 227, 213, 246, 242, 225, 83, 81, 66, 45, 43, 28, 123, 121, 104, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 250, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 255, 255, 243, 255, 252, 239, 255, 255, 251, 255, 255, 255, 255, 255, 255, 241, 241, 228, 38, 41, 26, 26, 28, 15, 154, 155, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 187, 175, 187, 196, 186, 170, 176, 167, 176, 182, 173, 183, 189, 180, 187, 191, 183, 170, 171, 164, 141, 140, 134, 144, 142, 136, 127, 123, 115, 143, 139, 134, 160, 157, 151, 188, 185, 179, 192, 188, 183, 209, 206, 198, 215, 212, 202, 212, 207, 197, 219, 214, 204, 214, 209, 199, 218, 213, 201, 219, 214, 202, 217, 212, 200, 220, 215, 203, 217, 209, 201, 209, 201, 192, 210, 202, 194, 205, 198, 187, 202, 197, 185, 198, 193, 181, 192, 187, 175, 205, 200, 188, 205, 200, 188, 197, 192, 180, 191, 186, 174, 184, 179, 169, 183, 178, 168, 181, 176, 164, 186, 181, 169, 179, 174, 162, 181, 176, 164, 184, 179, 165, 181, 176, 164, 185, 181, 166, 184, 181, 168, 180, 178, 165, 182, 180, 167, 186, 183, 173, 181, 179, 166, 182, 180, 167, 180, 178, 165, 180, 178, 165, 177, 174, 161, 180, 178, 165, 182, 180, 167, 182, 180, 167, 186, 183, 171, 182, 180, 169, 185, 182, 169, 190, 187, 174, 190, 187, 174, 190, 187, 174, 194, 192, 179, 192, 189, 177, 193, 191, 178, 195, 193, 180, 202, 200, 187, 198, 195, 182, 196, 194, 181, 196, 194, 183, 206, 203, 192, 208, 205, 195, 210, 207, 199, 203, 202, 193, 204, 205, 198, 191, 192, 185, 177, 178, 171, 165, 164, 155, 146, 145, 136, 131, 130, 121, 124, 123, 112, 125, 125, 113, 130, 132, 120, 162, 164, 150, 156, 160, 147, 164, 168, 155, 164, 168, 153, 171, 175, 162, 165, 169, 156, 173, 177, 164, 157, 161, 148, 153, 158, 145, 145, 149, 136, 146, 150, 138, 150, 154, 141, 144, 148, 135, 51, 55, 42, 29, 31, 19, 14, 18, 5, 67, 71, 59, 120, 124, 111, 164, 168, 155, 157, 161, 148, 146, 153, 139, 160, 167, 153, 164, 171, 158, 174, 180, 167, 174, 180, 167, 167, 173, 160, 174, 180, 167, 167, 173, 160, 154, 161, 145, 153, 160, 144, 153, 158, 143, 152, 157, 142, 156, 160, 145, 152, 157, 142, 145, 150, 134, 157, 159, 145, 162, 164, 150, 164, 167, 150, 168, 170, 156, 158, 161, 144, 167, 167, 151, 165, 165, 149, 255, 255, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 238, 247, 247, 233, 241, 241, 230, 185, 185, 172, 108, 105, 93, 126, 126, 114, 165, 164, 153, 160, 159, 148, 130, 127, 117, 243, 241, 228, 255, 255, 250, 255, 255, 248, 240, 235, 221, 222, 218, 203, 212, 209, 194, 36, 34, 18, 35, 33, 17, 255, 255, 247, 255, 255, 255, 255, 255, 254, 255, 255, 252, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 247, 255, 255, 244, 255, 252, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 52, 55, 40, 56, 56, 45, 28, 28, 17, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 142, 144, 132, 149, 148, 140, 158, 157, 148, 183, 182, 174, 212, 208, 200, 229, 226, 218, 227, 222, 212, 247, 242, 232, 249, 246, 233, 255, 252, 239, 255, 255, 245, 255, 255, 245, 255, 250, 238, 255, 251, 239, 249, 244, 232, 247, 242, 230, 243, 238, 226, 241, 236, 224, 240, 235, 223, 241, 236, 224, 240, 235, 223, 247, 242, 230, 252, 245, 233, 245, 238, 226, 253, 246, 235, 245, 240, 228, 220, 216, 201, 196, 191, 179, 188, 183, 171, 153, 148, 134, 129, 124, 112, 113, 108, 96, 91, 88, 77, 83, 77, 68, 120, 114, 107, 80, 75, 65, 75, 69, 62, 76, 70, 63, 77, 71, 64, 72, 67, 57, 79, 74, 62, 67, 64, 54, 72, 69, 59, 78, 78, 67, 67, 64, 54, 61, 61, 47, 66, 65, 54, 73, 70, 60, 71, 68, 55, 63, 60, 47, 86, 83, 70, 86, 84, 68, 111, 109, 96, 109, 107, 92, 135, 133, 117, 143, 141, 124, 159, 157, 142, 172, 170, 155, 178, 176, 159, 193, 191, 176, 190, 188, 170, 205, 203, 185, 214, 212, 195, 207, 205, 188, 209, 207, 190, 203, 202, 184, 203, 201, 186, 198, 195, 180, 209, 204, 190, 207, 203, 188, 209, 204, 192, 210, 205, 191, 214, 209, 197, 211, 206, 194, 217, 212, 200, 217, 212, 200, 214, 209, 197, 221, 216, 204, 219, 216, 203, 223, 221, 208, 210, 208, 195, 216, 213, 203, 220, 220, 209, 211, 211, 199, 216, 215, 206, 217, 216, 207, 208, 207, 198, 187, 189, 179, 175, 176, 167, 149, 151, 141, 118, 119, 110, 114, 116, 104, 111, 113, 100, 114, 118, 105, 109, 111, 99, 47, 49, 34, 37, 39, 27, 30, 32, 20, 110, 114, 102, 153, 160, 146, 160, 164, 152, 162, 169, 155, 158, 164, 151, 180, 186, 173, 170, 177, 163, 174, 180, 167, 167, 173, 160, 154, 161, 145, 158, 165, 149, 154, 161, 145, 158, 163, 147, 171, 173, 159, 171, 174, 157, 163, 164, 148, 159, 159, 143, 153, 154, 135, 153, 153, 137, 149, 150, 132, 149, 150, 134, 180, 178, 163, 192, 193, 177, 222, 222, 206, 241, 242, 226, 251, 251, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 239, 241, 241, 228, 230, 230, 216, 99, 99, 88, 156, 156, 145, 158, 157, 146, 166, 165, 156, 172, 169, 159, 255, 255, 244, 255, 255, 245, 255, 255, 245, 214, 212, 197, 207, 203, 188, 18, 16, 1, 53, 51, 36, 124, 122, 107, 255, 255, 255, 255, 255, 254, 255, 255, 249, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 255, 255, 245, 255, 255, 242, 255, 255, 249, 255, 255, 255, 255, 255, 255, 174, 172, 159, 105, 106, 99, 40, 37, 31, 242, 244, 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 238, 223, 242, 240, 224, 242, 239, 226, 245, 243, 230, 250, 248, 235, 255, 255, 247, 255, 255, 255, 255, 255, 251, 255, 255, 255, 222, 220, 207, 162, 157, 145, 70, 65, 53, 56, 51, 39, 56, 51, 39, 80, 75, 64, 110, 105, 93, 126, 121, 109, 129, 124, 112, 135, 130, 118, 122, 117, 105, 134, 129, 117, 134, 129, 117, 127, 120, 109, 126, 121, 109, 130, 126, 114, 120, 113, 102, 120, 115, 103, 118, 113, 101, 111, 106, 94, 112, 107, 95, 98, 93, 81, 113, 108, 96, 104, 102, 91, 108, 103, 96, 106, 100, 93, 105, 99, 92, 94, 89, 82, 98, 92, 85, 93, 88, 80, 91, 85, 78, 74, 71, 63, 83, 80, 72, 82, 79, 71, 77, 76, 68, 92, 92, 83, 89, 88, 79, 85, 85, 76, 88, 87, 78, 97, 95, 84, 89, 88, 79, 99, 96, 85, 94, 91, 81, 89, 86, 76, 82, 81, 70, 92, 92, 79, 77, 77, 65, 82, 81, 70, 78, 78, 67, 94, 91, 81, 91, 88, 77, 92, 89, 78, 92, 89, 78, 94, 92, 79, 99, 96, 85, 97, 95, 84, 91, 88, 77, 103, 100, 90, 104, 102, 91, 91, 88, 77, 91, 85, 78, 94, 89, 82, 79, 74, 66, 72, 67, 57, 62, 62, 48, 86, 83, 70, 122, 119, 107, 150, 148, 132, 196, 194, 179, 228, 226, 211, 245, 241, 224, 247, 245, 227, 254, 250, 233, 248, 245, 230, 243, 239, 224, 237, 235, 220, 233, 230, 215, 235, 230, 218, 227, 224, 211, 228, 226, 211, 229, 227, 214, 230, 228, 215, 235, 232, 220, 233, 230, 217, 233, 230, 217, 225, 223, 210, 227, 224, 211, 223, 221, 208, 220, 217, 206, 210, 209, 198, 202, 201, 190, 184, 186, 174, 157, 161, 148, 136, 140, 127, 120, 124, 111, 117, 121, 109, 124, 129, 114, 142, 146, 131, 148, 152, 137, 161, 163, 147, 169, 171, 155, 188, 189, 170, 213, 214, 196, 244, 244, 226, 255, 255, 239, 255, 255, 245, 255, 255, 250, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 242, 239, 226, 239, 238, 227, 214, 211, 199, 147, 145, 134, 94, 91, 81, 145, 143, 130, 255, 255, 247, 255, 255, 247, 252, 250, 235, 222, 220, 207, 42, 40, 24, 56, 54, 38, 52, 50, 35, 255, 255, 255, 255, 255, 255, 255, 255, 250, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 250, 255, 255, 245, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 253, 53, 52, 41, 63, 65, 53, 107, 105, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 161, 163, 151, 89, 88, 77, 52, 49, 39, 50, 47, 39, 106, 103, 92, 114, 111, 100, 149, 146, 135, 147, 141, 132, 149, 144, 134, 136, 131, 119, 136, 131, 119, 151, 146, 134, 143, 138, 126, 142, 137, 125, 136, 131, 119, 142, 137, 125, 137, 132, 121, 141, 136, 124, 134, 129, 117, 144, 139, 128, 154, 149, 137, 127, 120, 109, 120, 115, 103, 130, 123, 111, 119, 112, 101, 121, 116, 104, 119, 114, 102, 121, 117, 102, 113, 108, 96, 113, 108, 96, 106, 101, 89, 107, 102, 92, 112, 106, 99, 98, 92, 85, 107, 102, 94, 110, 107, 99, 106, 100, 93, 105, 99, 92, 106, 100, 93, 106, 100, 93, 103, 97, 90, 97, 94, 86, 92, 88, 80, 102, 99, 91, 100, 96, 91, 91, 87, 81, 92, 91, 85, 89, 88, 81, 92, 92, 83, 91, 90, 82, 82, 81, 70, 95, 94, 83, 84, 84, 72, 85, 85, 74, 92, 92, 81, 96, 95, 84, 88, 88, 74, 84, 84, 70, 90, 90, 78, 84, 84, 70, 87, 87, 73, 81, 81, 67, 83, 81, 68, 88, 86, 73, 77, 74, 61, 94, 92, 79, 88, 86, 73, 93, 88, 76, 99, 96, 83, 93, 88, 76, 99, 94, 82, 91, 86, 74, 102, 100, 87, 103, 101, 88, 102, 100, 87, 114, 111, 98, 107, 104, 92, 115, 112, 100, 135, 132, 119, 132, 130, 117, 123, 121, 108, 121, 118, 105, 118, 116, 103, 106, 103, 90, 89, 87, 74, 67, 65, 52, 68, 66, 53, 79, 76, 64, 153, 151, 136, 214, 212, 197, 250, 248, 233, 251, 249, 234, 255, 255, 242, 255, 255, 243, 252, 250, 237, 249, 247, 231, 245, 243, 230, 242, 242, 229, 238, 238, 224, 234, 234, 221, 236, 235, 222, 236, 239, 224, 237, 237, 223, 234, 234, 221, 233, 233, 220, 229, 232, 217, 227, 229, 215, 222, 224, 212, 220, 222, 210, 212, 211, 203, 183, 183, 171, 168, 167, 159, 162, 162, 151, 174, 174, 160, 208, 207, 194, 240, 242, 228, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 240, 242, 239, 228, 237, 235, 222, 135, 132, 121, 99, 96, 85, 115, 112, 100, 255, 255, 242, 255, 255, 247, 225, 223, 208, 82, 80, 67, 65, 63, 48, 51, 49, 34, 245, 244, 226, 255, 255, 255, 255, 255, 249, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 247, 255, 255, 246, 255, 255, 252, 255, 255, 255, 255, 255, 255, 141, 141, 128, 19, 24, 18, 69, 69, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 136, 120, 149, 150, 134, 153, 151, 138, 151, 148, 136, 136, 133, 121, 144, 141, 129, 149, 146, 133, 146, 144, 131, 150, 147, 134, 147, 142, 130, 148, 143, 131, 156, 151, 139, 154, 149, 137, 144, 139, 128, 147, 142, 130, 141, 136, 124, 149, 144, 134, 146, 140, 131, 141, 136, 124, 133, 128, 118, 137, 132, 123, 132, 126, 117, 96, 90, 81, 89, 86, 76, 76, 70, 61, 69, 64, 52, 91, 86, 76, 113, 108, 96, 61, 55, 46, 72, 67, 57, 63, 58, 48, 65, 60, 50, 81, 78, 70, 79, 74, 66, 60, 54, 45, 70, 64, 57, 66, 61, 54, 53, 47, 40, 85, 80, 70, 68, 62, 53, 72, 67, 57, 71, 68, 57, 79, 76, 65, 77, 74, 63, 70, 69, 61, 64, 64, 55, 61, 60, 51, 61, 60, 53, 63, 62, 54, 48, 47, 39, 73, 72, 63, 62, 62, 50, 74, 73, 62, 77, 77, 65, 69, 69, 57, 54, 53, 42, 68, 67, 56, 69, 69, 55, 64, 64, 53, 68, 66, 53, 77, 74, 63, 80, 77, 67, 74, 71, 61, 80, 77, 67, 86, 83, 72, 89, 86, 76, 92, 89, 78, 93, 90, 80, 105, 100, 86, 90, 85, 71, 94, 92, 77, 94, 90, 76, 112, 107, 95, 101, 98, 86, 103, 101, 88, 101, 98, 86, 104, 102, 89, 104, 102, 89, 99, 96, 83, 110, 108, 95, 112, 107, 95, 111, 106, 94, 116, 114, 101, 124, 119, 107, 118, 116, 103, 122, 119, 107, 130, 128, 115, 123, 121, 108, 114, 111, 98, 123, 121, 108, 118, 116, 103, 124, 122, 107, 127, 124, 111, 113, 110, 97, 93, 90, 78, 77, 74, 61, 86, 83, 70, 83, 83, 69, 98, 98, 84, 151, 151, 137, 210, 210, 196, 240, 240, 226, 255, 255, 242, 255, 255, 243, 255, 255, 242, 255, 255, 240, 245, 245, 231, 242, 242, 229, 244, 244, 230, 245, 245, 231, 242, 242, 229, 241, 241, 228, 236, 235, 222, 237, 237, 223, 239, 239, 225, 234, 234, 221, 234, 234, 223, 234, 234, 223, 223, 222, 211, 211, 210, 201, 197, 196, 190, 177, 178, 169, 166, 168, 159, 166, 168, 159, 179, 181, 171, 213, 215, 205, 237, 239, 229, 253, 254, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 244, 251, 249, 236, 225, 223, 212, 168, 166, 153, 215, 213, 200, 255, 255, 245, 252, 250, 237, 123, 121, 108, 57, 54, 41, 36, 33, 20, 191, 189, 173, 255, 255, 255, 255, 255, 249, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 255, 255, 247, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 23, 22, 9, 42, 41, 33, 222, 225, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 158, 158, 142, 158, 156, 143, 150, 147, 134, 149, 146, 133, 166, 163, 153, 158, 155, 145, 134, 131, 120, 126, 121, 111, 124, 118, 109, 165, 160, 151, 193, 189, 177, 255, 255, 255, 255, 255, 255, 114, 109, 99, 135, 130, 120, 97, 91, 82, 129, 126, 116, 78, 73, 63, 80, 75, 65, 94, 91, 81, 96, 90, 81, 79, 74, 64, 93, 88, 78, 93, 88, 78, 77, 72, 62, 57, 54, 43, 68, 62, 53, 83, 81, 70, 89, 83, 74, 74, 68, 59, 84, 79, 69, 93, 88, 78, 98, 92, 85, 77, 71, 64, 86, 81, 71, 65, 60, 52, 87, 82, 72, 121, 116, 106, 75, 72, 64, 73, 70, 62, 82, 79, 69, 61, 60, 51, 61, 60, 49, 71, 71, 62, 63, 62, 54, 80, 79, 70, 60, 59, 50, 71, 71, 62, 131, 130, 121, 69, 68, 60, 83, 82, 73, 62, 62, 50, 59, 58, 47, 92, 92, 81, 84, 84, 70, 57, 57, 44, 57, 57, 44, 77, 77, 64, 70, 70, 57, 68, 68, 54, 67, 65, 52, 56, 53, 40, 75, 73, 60, 53, 51, 38, 63, 60, 47, 72, 69, 57, 67, 65, 52, 68, 63, 51, 71, 66, 54, 75, 73, 60, 78, 75, 62, 74, 72, 59, 83, 81, 68, 75, 73, 58, 78, 79, 63, 75, 75, 61, 84, 84, 70, 85, 85, 72, 82, 80, 65, 109, 107, 92, 117, 115, 102, 120, 117, 104, 118, 116, 103, 120, 117, 104, 125, 120, 108, 117, 115, 102, 120, 117, 104, 132, 130, 117, 121, 118, 105, 128, 123, 111, 129, 127, 112, 117, 115, 100, 113, 110, 97, 124, 122, 107, 136, 134, 119, 121, 119, 103, 121, 118, 105, 130, 128, 115, 116, 116, 102, 124, 124, 110, 121, 121, 108, 123, 123, 109, 126, 126, 112, 119, 119, 105, 130, 129, 116, 133, 133, 119, 99, 99, 86, 78, 78, 65, 63, 63, 50, 60, 60, 46, 92, 93, 75, 153, 154, 135, 204, 205, 186, 240, 241, 223, 252, 253, 234, 253, 253, 237, 255, 255, 241, 254, 254, 242, 254, 254, 240, 247, 247, 235, 246, 245, 234, 249, 249, 238, 244, 246, 234, 249, 249, 238, 248, 248, 237, 248, 248, 237, 247, 247, 235, 238, 237, 228, 240, 239, 231, 239, 238, 229, 232, 231, 223, 234, 234, 225, 230, 232, 223, 215, 217, 207, 211, 212, 205, 200, 201, 194, 187, 186, 177, 178, 178, 169, 167, 166, 157, 173, 172, 163, 170, 169, 163, 168, 167, 159, 186, 188, 178, 202, 204, 192, 218, 220, 207, 235, 237, 225, 248, 249, 240, 255, 255, 252, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 246, 255, 255, 249, 255, 255, 254, 255, 255, 245, 151, 148, 136, 68, 68, 54, 49, 46, 33, 215, 213, 200, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 253, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 78, 65, 32, 30, 17, 46, 40, 31, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 85, 76, 91, 90, 82, 95, 94, 85, 91, 90, 82, 109, 106, 98, 107, 104, 94, 108, 105, 95, 104, 102, 91, 122, 119, 109, 132, 126, 117, 191, 186, 174, 255, 255, 255, 206, 201, 191, 137, 132, 123, 108, 103, 94, 108, 103, 94, 126, 121, 111, 119, 114, 104, 92, 87, 77, 97, 91, 82, 109, 106, 96, 108, 103, 94, 122, 117, 107, 157, 152, 142, 175, 169, 160, 203, 197, 188, 122, 117, 107, 174, 168, 159, 208, 205, 195, 205, 201, 193, 213, 210, 199, 213, 209, 201, 215, 212, 204, 225, 222, 216, 228, 224, 219, 225, 223, 222, 227, 226, 222, 232, 230, 228, 232, 230, 226, 232, 230, 228, 232, 230, 228, 236, 234, 232, 233, 231, 230, 233, 232, 228, 233, 232, 228, 234, 235, 230, 229, 230, 225, 227, 228, 223, 225, 225, 221, 228, 229, 224, 229, 231, 223, 145, 147, 135, 45, 47, 37, 121, 123, 111, 106, 108, 96, 113, 115, 103, 89, 89, 75, 66, 65, 52, 105, 105, 92, 68, 68, 54, 83, 83, 69, 82, 82, 68, 70, 70, 57, 114, 111, 98, 78, 75, 62, 85, 82, 69, 101, 98, 86, 83, 81, 70, 77, 74, 61, 93, 90, 78, 107, 104, 92, 75, 73, 60, 94, 92, 79, 85, 82, 69, 92, 92, 79, 95, 93, 78, 73, 71, 58, 87, 85, 72, 88, 86, 73, 75, 75, 61, 99, 96, 83, 83, 81, 68, 85, 82, 69, 101, 98, 86, 89, 87, 74, 107, 104, 94, 99, 96, 85, 109, 106, 96, 125, 123, 112, 134, 131, 120, 146, 144, 131, 150, 148, 132, 155, 152, 139, 158, 156, 143, 146, 144, 131, 122, 119, 107, 121, 121, 108, 119, 119, 105, 110, 110, 96, 120, 120, 107, 125, 123, 110, 130, 127, 117, 123, 122, 111, 124, 123, 112, 131, 131, 117, 128, 125, 112, 134, 134, 121, 130, 129, 116, 132, 130, 117, 135, 135, 122, 138, 137, 126, 135, 135, 124, 140, 140, 128, 144, 143, 132, 130, 127, 117, 124, 124, 110, 94, 93, 82, 90, 90, 78, 59, 58, 47, 42, 42, 31, 50, 50, 39, 88, 87, 76, 146, 146, 130, 195, 195, 181, 222, 221, 208, 247, 247, 231, 240, 240, 224, 253, 253, 239, 255, 255, 244, 255, 255, 245, 251, 250, 239, 249, 249, 238, 249, 249, 238, 244, 243, 232, 244, 243, 232, 241, 241, 230, 240, 240, 228, 238, 237, 226, 236, 235, 224, 238, 238, 224, 236, 233, 223, 234, 234, 223, 229, 228, 217, 226, 226, 215, 227, 227, 218, 229, 228, 219, 227, 227, 218, 224, 223, 216, 224, 221, 215, 227, 223, 218, 230, 227, 221, 227, 226, 220, 225, 222, 216, 220, 219, 215, 220, 216, 210, 209, 207, 203, 208, 206, 202, 203, 201, 197, 205, 204, 200, 185, 184, 180, 187, 185, 181, 180, 178, 172, 169, 168, 162, 169, 168, 162, 160, 159, 150, 168, 167, 159, 155, 156, 147, 148, 149, 142, 145, 147, 139, 150, 151, 144, 153, 152, 145, 145, 147, 139, 145, 143, 137, 148, 149, 142, 140, 141, 134, 140, 141, 134, 135, 136, 129, 141, 140, 134, 144, 142, 136, 138, 136, 130, 144, 142, 136, 146, 145, 138, 142, 141, 135, 136, 137, 130, 134, 135, 128, 140, 141, 134, 141, 142, 135, 134, 135, 128, 130, 132, 124, 130, 132, 124, 131, 132, 128, 134, 135, 128, 134, 135, 130, 138, 136, 130, 133, 131, 128, 131, 129, 125, 126, 125, 119, 125, 124, 117, 127, 126, 120, 130, 129, 120, 131, 128, 120, 125, 122, 114, 125, 123, 112, 129, 126, 116, 127, 124, 113, 129, 126, 116, 123, 120, 110, 118, 116, 105, 115, 110, 100, 128, 123, 113, 126, 121, 111, 131, 128, 118, 153, 147, 138, 150, 145, 135, 150, 145, 137, 159, 153, 146, 167, 161, 154, 165, 161, 156, 177, 173, 165, 179, 176, 168, 182, 179, 171, 190, 186, 178, 186, 183, 173, 198, 198, 187, 102, 99, 91, 92, 88, 80, 131, 128, 118, 116, 113, 103, 93, 90, 80, 102, 99, 89, 96, 93, 83, 97, 91, 82, 105, 100, 90, 125, 119, 110, 179, 174, 164, 175, 173, 162, 191, 186, 176, 205, 200, 190, 205, 200, 190, 216, 213, 203, 215, 212, 202, 220, 215, 205, 221, 218, 207, 224, 221, 211, 221, 218, 207, 227, 224, 213, 229, 224, 215, 231, 225, 216, 223, 220, 210, 233, 230, 219, 58, 55, 45, 237, 234, 224, 233, 230, 219, 234, 231, 220, 235, 232, 224, 235, 232, 222, 231, 230, 221, 237, 236, 227, 233, 232, 224, 234, 230, 224, 232, 231, 223, 230, 228, 222, 230, 228, 222, 234, 234, 225, 232, 231, 224, 229, 231, 223, 231, 230, 223, 230, 229, 220, 230, 228, 222, 228, 229, 222, 230, 229, 220, 228, 229, 222, 228, 229, 222, 230, 232, 223, 229, 231, 221, 115, 118, 103, 223, 222, 211, 228, 230, 218, 229, 228, 217, 227, 227, 216, 226, 226, 215, 224, 223, 212, 226, 226, 215, 231, 230, 219, 226, 226, 215, 233, 230, 219, 227, 227, 216, 227, 227, 216, 227, 226, 220, 231, 230, 223, 233, 232, 226, 233, 232, 228, 236, 234, 228, 232, 230, 226, 229, 227, 223, 217, 215, 211, 222, 220, 216, 212, 211, 205, 194, 192, 186, 181, 180, 173, 177, 176, 172, 160, 159, 150, 167, 166, 155, 130, 130, 114, 130, 129, 118, 132, 131, 120, 112, 112, 100, 113, 112, 104, 108, 107, 96, 97, 94, 86, 94, 93, 84, 95, 94, 85, 106, 105, 97, 100, 100, 91, 106, 105, 97, 130, 129, 118, 119, 119, 107, 142, 142, 131, 147, 147, 135, 134, 134, 123, 127, 127, 116, 145, 144, 133, 139, 138, 127, 147, 147, 135, 140, 140, 128, 123, 122, 113, 119, 119, 107, 124, 123, 112, 128, 128, 115, 132, 130, 117, 136, 133, 121, 138, 138, 124, 136, 133, 121, 145, 145, 131, 139, 139, 125, 141, 141, 128, 153, 153, 139, 147, 147, 133, 144, 143, 130, 141, 141, 128, 138, 137, 126, 142, 139, 128, 144, 143, 130, 145, 144, 133, 148, 148, 136, 149, 149, 138, 148, 148, 136, 151, 150, 139, 142, 142, 131, 138, 137, 126, 151, 150, 141, 156, 156, 145, 133, 133, 121, 126, 125, 117, 94, 93, 84, 77, 77, 65, 67, 66, 57, 56, 56, 45, 59, 58, 47, 50, 47, 36, 52, 49, 39, 87, 84, 74, 110, 107, 97, 152, 150, 137, 186, 183, 173, 215, 215, 199, 231, 231, 217, 233, 233, 218, 234, 231, 218, 238, 236, 223, 244, 244, 230, 245, 243, 230, 244, 241, 231, 247, 244, 233, 247, 244, 233, 244, 241, 231, 243, 240, 230, 241, 241, 230, 240, 240, 228, 236, 235, 224, 234, 234, 223, 236, 235, 224, 239, 238, 227, 236, 235, 224, 232, 232, 220, 236, 235, 224, 233, 233, 222, 230, 229, 218, 226, 226, 215, 226, 226, 215, 224, 223, 214, 222, 224, 212, 224, 223, 214, 224, 223, 214, 223, 222, 213, 222, 221, 212, 223, 222, 213, 222, 219, 211, 223, 220, 212, 221, 218, 210, 227, 223, 216, 227, 223, 216, 227, 223, 216, 228, 225, 217, 222, 218, 213, 228, 225, 217, 229, 226, 218, 224, 223, 216, 222, 220, 214, 227, 223, 216, 227, 227, 218, 226, 225, 219, 227, 227, 218, 225, 224, 216, 222, 221, 212, 224, 223, 214, 227, 226, 220, 230, 228, 222, 229, 227, 221, 227, 226, 220, 225, 224, 218, 234, 230, 223, 236, 232, 227, 235, 231, 226, 234, 230, 223, 236, 233, 225, 238, 235, 227, 240, 236, 228, 238, 235, 225, 233, 230, 219, 236, 233, 223, 238, 235, 225, 245, 239, 230, 246, 240, 231, 247, 242, 232, 245, 239, 230, 243, 238, 228, 248, 243, 233, 250, 245, 238, 252, 246, 239, 247, 241, 234, 254, 248, 241, 253, 247, 240, 254, 249, 239, 250, 245, 235, 255, 251, 241, 255, 251, 241, 255, 251, 241, 181, 180, 169, 201, 200, 189, 239, 238, 227, 135, 132, 121, 192, 192, 181, 203, 201, 190, 208, 205, 195, 209, 206, 196, 210, 208, 197, 219, 216, 205, 220, 217, 206, 227, 224, 213, 225, 223, 212, 217, 211, 202, 228, 225, 215, 234, 231, 220, 234, 229, 219, 233, 230, 219, 235, 232, 222, 239, 233, 224, 239, 234, 222, 242, 237, 227, 242, 237, 225, 241, 236, 224, 229, 224, 213, 152, 150, 137, 203, 198, 186, 241, 238, 225, 240, 237, 224, 240, 237, 224, 240, 237, 224, 240, 237, 224, 238, 236, 223, 234, 231, 218, 234, 235, 219, 233, 233, 218, 233, 233, 218, 231, 231, 217, 230, 230, 216, 234, 234, 221, 231, 231, 217, 231, 231, 217, 230, 230, 216, 230, 230, 216, 230, 230, 216, 230, 230, 216, 227, 227, 214, 229, 228, 215, 230, 230, 216, 230, 230, 214, 230, 230, 214, 81, 85, 65, 255, 255, 241, 227, 228, 212, 230, 230, 214, 231, 231, 215, 231, 231, 215, 231, 231, 215, 229, 229, 213, 232, 232, 216, 234, 232, 216, 233, 233, 220, 235, 232, 220, 236, 234, 221, 236, 234, 221, 236, 235, 222, 213, 210, 199, 237, 234, 224, 238, 237, 226, 238, 235, 225, 237, 236, 225, 237, 236, 225, 236, 235, 226, 236, 235, 226, 237, 236, 227, 237, 236, 227, 237, 236, 227, 237, 236, 227, 241, 241, 232, 0, 0, 0, 239, 238, 231, 237, 235, 229, 233, 232, 226, 226, 225, 219, 217, 216, 209, 187, 186, 177, 171, 170, 164, 180, 179, 170, 185, 185, 176, 166, 165, 156, 192, 192, 183, 209, 208, 199, 195, 194, 183, 181, 180, 171, 187, 186, 177, 154, 153, 145, 130, 129, 120, 135, 135, 126, 147, 146, 137, 154, 153, 145, 160, 159, 150, 118, 117, 108, 106, 105, 97, 106, 106, 95, 94, 93, 80, 128, 125, 112, 132, 130, 117, 147, 145, 132, 142, 139, 126, 126, 126, 112, 143, 140, 128, 147, 147, 133, 154, 154, 140, 152, 150, 137, 153, 153, 139, 143, 140, 128, 149, 146, 133, 145, 145, 131, 151, 151, 137, 149, 149, 136, 148, 148, 134, 151, 150, 139, 153, 152, 141, 155, 155, 144, 144, 143, 134, 165, 164, 155, 146, 145, 136, 148, 148, 136, 145, 144, 133, 148, 148, 136, 147, 147, 135, 145, 144, 133, 153, 152, 141, 146, 145, 134, 141, 141, 129, 144, 143, 132, 143, 140, 129, 141, 138, 127, 137, 134, 124, 143, 140, 129, 139, 136, 126, 132, 131, 120, 137, 136, 125, 127, 127, 116, 131, 130, 119, 114, 114, 103, 109, 108, 97, 95, 92, 82, 88, 85, 75, 86, 83, 72, 74, 71, 61, 68, 67, 58, 55, 54, 46, 49, 48, 40, 47, 46, 37, 48, 47, 39, 47, 46, 37, 48, 47, 39, 36, 36, 27, 42, 41, 33, 38, 37, 28, 48, 48, 36, 35, 35, 24, 60, 59, 48, 35, 35, 24, 61, 60, 49, 51, 53, 41, 52, 54, 42, 76, 78, 65, 92, 94, 82, 99, 99, 88, 105, 105, 94, 121, 121, 112, 109, 108, 99, 128, 128, 119, 126, 125, 117, 139, 138, 129, 139, 138, 129, 145, 144, 135, 155, 154, 146, 160, 159, 150, 161, 160, 152, 160, 159, 150, 165, 164, 155, 161, 158, 150, 165, 164, 155, 163, 162, 154, 161, 160, 152, 159, 158, 149, 162, 161, 153, 161, 162, 153, 162, 163, 154, 167, 166, 157, 160, 159, 150, 163, 162, 154, 166, 165, 156, 166, 165, 156, 162, 161, 153, 167, 166, 157, 168, 167, 159, 160, 159, 150, 154, 153, 145, 142, 141, 133, 145, 144, 135, 138, 137, 126, 131, 130, 119, 132, 129, 119, 128, 125, 114, 131, 128, 118, 111, 109, 98, 128, 123, 113, 103, 97, 88, 112, 107, 97, 97, 91, 82, 98, 91, 82, 82, 76, 67, 78, 73, 63, 77, 72, 62, 58, 53, 43, 48, 43, 33, 41, 36, 26, 37, 32, 20, 46, 37, 26, 70, 53, 45, 226, 226, 215, 234, 234, 223, 214, 211, 201, 203, 201, 188, 224, 222, 209, 227, 224, 211, 233, 230, 217, 240, 237, 224, 242, 237, 225, 247, 244, 231, 244, 242, 229, 252, 250, 237, 242, 239, 226, 255, 255, 246, 255, 255, 247, 255, 255, 247, 255, 255, 252, 255, 255, 251, 255, 255, 247, 255, 255, 247, 255, 255, 249, 255, 255, 247, 255, 255, 246, 255, 252, 239, 244, 242, 229, 91, 88, 75, 255, 255, 255, 254, 251, 238, 251, 249, 234, 250, 248, 233, 250, 248, 233, 248, 245, 230, 245, 243, 228, 242, 243, 225, 240, 241, 223, 240, 240, 224, 241, 242, 224, 238, 239, 220, 239, 240, 221, 238, 239, 220, 237, 237, 219, 238, 239, 220, 237, 237, 219, 237, 237, 219, 237, 237, 219, 236, 236, 218, 237, 237, 219, 236, 237, 216, 237, 238, 217, 237, 238, 217, 238, 239, 218, 67, 68, 47, 255, 255, 255, 240, 241, 220, 240, 238, 220, 241, 239, 221, 242, 240, 223, 243, 241, 224, 244, 242, 225, 247, 245, 227, 242, 240, 223, 245, 243, 228, 245, 243, 228, 243, 241, 226, 244, 242, 227, 217, 215, 202, 221, 219, 203, 252, 250, 237, 249, 246, 233, 245, 245, 231, 244, 243, 232, 246, 245, 234, 248, 248, 237, 248, 248, 237, 248, 248, 237, 249, 249, 238, 251, 250, 239, 249, 249, 238, 253, 252, 241, 7, 7, 0, 255, 255, 246, 248, 248, 239, 246, 245, 236, 245, 244, 237, 245, 244, 237, 242, 243, 236, 236, 238, 230, 240, 241, 234, 237, 239, 231, 234, 233, 227, 237, 235, 229, 236, 234, 228, 236, 234, 228, 232, 233, 226, 211, 212, 205, 192, 191, 185, 177, 176, 170, 184, 185, 176, 183, 182, 174, 232, 231, 223, 255, 255, 250, 215, 214, 205, 116, 115, 104, 94, 93, 82, 97, 95, 82, 91, 88, 75, 114, 114, 101, 144, 143, 130, 141, 138, 125, 147, 145, 132, 152, 152, 138, 149, 149, 136, 151, 151, 137, 152, 152, 138, 152, 152, 138, 154, 154, 140, 236, 234, 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 211, 210, 201, 190, 189, 183, 149, 148, 140, 162, 161, 153, 160, 159, 150, 160, 159, 148, 154, 154, 142, 160, 159, 148, 148, 148, 136, 151, 151, 137, 152, 152, 138, 151, 150, 139, 140, 140, 128, 141, 141, 129, 144, 141, 131, 144, 141, 131, 132, 129, 119, 139, 136, 126, 134, 131, 120, 134, 134, 123, 132, 129, 119, 138, 137, 126, 139, 136, 126, 139, 136, 126, 133, 133, 121, 135, 132, 121, 125, 123, 112, 128, 125, 117, 125, 122, 114, 121, 118, 110, 119, 118, 110, 124, 123, 114, 119, 119, 107, 114, 114, 103, 112, 112, 100, 113, 113, 102, 109, 108, 97, 111, 110, 101, 114, 114, 105, 114, 114, 105, 112, 111, 103, 113, 113, 102, 109, 108, 97, 110, 109, 100, 108, 107, 98, 116, 115, 106, 110, 109, 100, 110, 109, 100, 112, 111, 103, 105, 104, 96, 109, 108, 99, 110, 109, 98, 113, 110, 99, 108, 105, 97, 113, 112, 104, 112, 111, 103, 108, 105, 97, 109, 108, 99, 102, 101, 92, 111, 110, 103, 113, 109, 101, 123, 119, 114, 116, 112, 107, 116, 112, 107, 116, 115, 106, 120, 119, 111, 112, 111, 103, 119, 118, 110, 121, 121, 112, 116, 115, 106, 128, 127, 121, 111, 110, 103, 117, 116, 109, 114, 113, 107, 124, 123, 116, 120, 119, 113, 128, 127, 121, 126, 125, 117, 130, 129, 120, 117, 116, 107, 126, 125, 117, 128, 128, 119, 128, 128, 119, 128, 128, 119, 121, 121, 112, 138, 135, 125, 145, 142, 132, 131, 128, 118, 133, 128, 118, 134, 129, 119, 141, 136, 126, 142, 137, 127, 134, 129, 119, 149, 144, 134, 154, 149, 139, 148, 143, 133, 148, 143, 131, 159, 153, 144, 156, 151, 141, 169, 164, 152, 157, 152, 140, 162, 157, 145, 255, 255, 249, 255, 255, 245, 86, 81, 69, 255, 255, 242, 255, 255, 251, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 30, 29, 16, 255, 255, 255, 255, 255, 254, 255, 255, 254, 255, 255, 252, 255, 255, 253, 255, 255, 249, 255, 255, 247, 255, 255, 249, 255, 255, 245, 255, 255, 245, 255, 255, 244, 255, 255, 242, 255, 255, 240, 246, 246, 230, 248, 249, 233, 249, 250, 234, 246, 246, 230, 242, 243, 225, 245, 246, 227, 246, 247, 228, 246, 247, 228, 247, 248, 229, 246, 247, 226, 248, 250, 229, 252, 253, 232, 77, 78, 57, 255, 255, 252, 252, 251, 231, 255, 253, 233, 255, 254, 236, 255, 254, 236, 255, 255, 238, 255, 255, 239, 255, 255, 240, 255, 255, 239, 255, 255, 239, 255, 255, 245, 255, 255, 242, 255, 255, 240, 255, 255, 245, 255, 255, 245, 255, 255, 246, 255, 255, 247, 255, 255, 248, 255, 255, 248, 255, 255, 250, 255, 255, 249, 255, 255, 253, 255, 255, 253, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 14, 15, 0, 255, 255, 255, 255, 255, 249, 255, 255, 249, 255, 255, 254, 255, 255, 253, 255, 255, 252, 255, 255, 250, 251, 253, 243, 255, 255, 249, 255, 255, 247, 255, 255, 248, 247, 246, 238, 246, 247, 238, 252, 251, 244, 251, 253, 245, 248, 249, 242, 246, 247, 240, 244, 246, 238, 244, 246, 238, 241, 242, 235, 244, 242, 236, 245, 244, 237, 243, 245, 235, 188, 187, 178, 82, 81, 72, 77, 77, 65, 75, 74, 63, 117, 116, 105, 141, 141, 128, 139, 138, 127, 147, 147, 135, 148, 148, 136, 144, 143, 132, 147, 145, 134, 128, 128, 117, 81, 80, 69, 82, 81, 70, 113, 110, 99, 102, 101, 90, 155, 156, 147, 197, 198, 191, 255, 255, 255, 142, 143, 136, 128, 129, 122, 131, 133, 126, 138, 136, 130, 146, 145, 138, 144, 143, 134, 137, 136, 127, 134, 133, 125, 109, 108, 99, 110, 109, 100, 116, 115, 104, 120, 119, 111, 106, 106, 95, 109, 108, 97, 124, 121, 111, 124, 121, 111, 117, 114, 104, 142, 139, 128, 122, 119, 109, 144, 141, 131, 145, 142, 132, 131, 130, 119, 137, 136, 125, 134, 134, 123, 133, 132, 124, 134, 134, 123, 131, 130, 121, 127, 127, 116, 124, 123, 112, 124, 123, 114, 123, 122, 113, 131, 130, 121, 112, 111, 103, 113, 113, 102, 112, 112, 100, 110, 109, 100, 111, 110, 101, 112, 111, 103, 104, 103, 94, 106, 105, 97, 109, 108, 99, 109, 108, 99, 109, 108, 97, 108, 107, 96, 103, 102, 91, 135, 135, 124, 102, 101, 92, 114, 114, 105, 95, 94, 83, 105, 104, 96, 105, 104, 96, 104, 103, 94, 109, 108, 99, 110, 109, 100, 109, 106, 98, 108, 107, 98, 109, 108, 99, 108, 107, 98, 109, 106, 98, 110, 107, 99, 114, 111, 103, 121, 118, 110, 118, 115, 107, 117, 114, 106, 122, 119, 111, 108, 107, 98, 108, 107, 98, 110, 107, 99, 117, 116, 107, 131, 130, 121, 111, 110, 101, 114, 113, 107, 114, 114, 105, 125, 124, 117, 118, 117, 110, 114, 113, 107, 119, 118, 112, 123, 121, 115, 113, 112, 106, 124, 123, 114, 117, 116, 107, 112, 111, 103, 125, 124, 115, 145, 144, 135, 128, 128, 119, 127, 126, 118, 129, 126, 116, 137, 134, 126, 130, 125, 116, 142, 137, 127, 147, 141, 132, 139, 133, 124, 151, 146, 136, 151, 146, 136, 156, 151, 141, 161, 156, 144, 155, 150, 138, 150, 145, 133, 155, 152, 139, 172, 167, 156, 163, 158, 146, 163, 160, 147, 255, 255, 255, 255, 255, 249, 126, 121, 109, 255, 255, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 245, 245, 231, 227, 227, 214, 225, 225, 211, 223, 223, 209, 224, 224, 210, 215, 214, 201, 215, 213, 200, 219, 219, 205, 152, 152, 138, 182, 180, 167, 217, 217, 203, 218, 218, 204, 213, 213, 200, 217, 217, 203, 215, 214, 201, 210, 210, 194, 211, 211, 195, 204, 204, 188, 208, 208, 192, 195, 198, 181, 205, 206, 190, 204, 204, 188, 203, 203, 187, 199, 200, 184, 199, 200, 184, 194, 194, 178, 195, 195, 177, 191, 192, 174, 190, 191, 173, 184, 185, 164, 189, 190, 169, 185, 187, 166, 180, 181, 160, 180, 179, 159, 130, 129, 107, 229, 227, 210, 179, 178, 156, 173, 172, 150, 184, 180, 161, 181, 177, 156, 183, 179, 160, 181, 177, 158, 186, 183, 163, 204, 200, 181, 213, 209, 190, 233, 231, 211, 245, 244, 224, 255, 255, 240, 255, 255, 244, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 19, 21, 7, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 253, 255, 255, 249, 255, 255, 248, 255, 255, 250, 255, 255, 247, 246, 245, 236, 206, 206, 197, 78, 78, 67, 124, 123, 112, 83, 83, 71, 142, 142, 131, 140, 140, 128, 145, 144, 133, 135, 135, 124, 146, 145, 134, 155, 155, 144, 68, 67, 56, 109, 108, 97, 78, 78, 65, 89, 88, 77, 94, 93, 84, 141, 142, 135, 180, 182, 174, 191, 192, 185, 183, 184, 177, 194, 196, 188, 209, 211, 203, 175, 176, 169, 165, 163, 157, 153, 152, 143, 142, 141, 135, 137, 135, 129, 118, 117, 108, 110, 109, 102, 126, 125, 117, 110, 109, 100, 118, 117, 108, 109, 108, 99, 113, 113, 102, 114, 114, 103, 91, 88, 77, 92, 89, 78, 102, 99, 89, 103, 100, 90, 106, 102, 94, 110, 107, 97, 113, 112, 104, 112, 111, 103, 108, 107, 98, 102, 101, 92, 103, 102, 93, 104, 103, 94, 126, 126, 114, 106, 108, 98, 113, 114, 105, 109, 108, 97, 96, 95, 86, 101, 103, 93, 103, 102, 93, 98, 97, 89, 98, 97, 89, 97, 96, 87, 98, 97, 89, 98, 97, 89, 100, 100, 91, 94, 93, 84, 97, 96, 85, 108, 107, 98, 106, 105, 97, 104, 104, 92, 90, 90, 78, 104, 103, 94, 109, 108, 99, 104, 103, 94, 97, 96, 87, 105, 104, 96, 87, 86, 77, 102, 101, 92, 99, 98, 90, 95, 94, 85, 96, 95, 86, 108, 105, 97, 95, 94, 85, 107, 104, 96, 108, 105, 97, 97, 95, 84, 108, 105, 95, 109, 106, 96, 107, 104, 94, 103, 100, 92, 114, 111, 103, 109, 106, 98, 114, 114, 105, 126, 125, 117, 118, 117, 108, 108, 106, 100, 108, 106, 100, 118, 117, 110, 111, 110, 103, 120, 119, 113, 111, 110, 103, 116, 115, 106, 106, 105, 99, 108, 107, 98, 94, 93, 84, 97, 96, 87, 103, 102, 93, 119, 118, 110, 135, 135, 126, 126, 125, 117, 134, 130, 122, 141, 138, 127, 129, 126, 116, 149, 146, 135, 134, 131, 120, 144, 139, 129, 153, 147, 138, 154, 149, 139, 162, 157, 145, 162, 157, 145, 157, 152, 140, 164, 159, 147, 171, 166, 154, 170, 165, 153, 163, 159, 144, 171, 167, 152, 255, 255, 255, 255, 255, 255, 147, 142, 130, 255, 255, 252, 255, 255, 246, 247, 247, 233, 213, 213, 200, 208, 206, 193, 195, 195, 181, 196, 196, 182, 191, 191, 178, 199, 199, 186, 196, 196, 182, 202, 202, 188, 183, 183, 169, 187, 185, 172, 178, 178, 165, 153, 153, 139, 119, 119, 105, 108, 107, 94, 112, 112, 98, 78, 78, 67, 75, 74, 63, 74, 73, 62, 57, 57, 46, 40, 39, 28, 0, 0, 0, 59, 58, 47, 55, 55, 43, 52, 51, 40, 61, 60, 51, 41, 41, 27, 116, 116, 102, 76, 76, 62, 94, 93, 80, 59, 58, 45, 92, 92, 79, 60, 60, 44, 80, 80, 64, 67, 70, 53, 93, 96, 79, 67, 70, 53, 64, 65, 49, 47, 49, 32, 53, 56, 39, 50, 51, 35, 47, 48, 29, 94, 95, 74, 43, 45, 24, 62, 63, 42, 56, 54, 36, 63, 61, 43, 66, 64, 49, 64, 62, 44, 96, 95, 77, 77, 75, 57, 70, 68, 50, 89, 88, 70, 103, 99, 80, 110, 109, 89, 127, 125, 105, 128, 127, 106, 137, 136, 116, 137, 136, 116, 144, 143, 123, 149, 147, 127, 139, 138, 118, 149, 150, 129, 156, 158, 137, 151, 152, 131, 155, 156, 135, 173, 174, 153, 170, 171, 151, 170, 171, 155, 167, 168, 149, 171, 172, 156, 178, 179, 163, 183, 185, 169, 204, 206, 192, 50, 53, 36, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 242, 242, 231, 47, 46, 35, 73, 76, 61, 69, 69, 55, 139, 138, 127, 142, 142, 131, 142, 142, 131, 140, 140, 128, 145, 144, 133, 126, 126, 114, 84, 84, 72, 116, 115, 104, 120, 120, 109, 191, 191, 180, 236, 235, 226, 236, 238, 230, 243, 245, 237, 243, 245, 237, 239, 240, 233, 241, 242, 235, 236, 238, 230, 234, 235, 228, 233, 234, 227, 230, 232, 224, 230, 232, 224, 214, 215, 208, 209, 211, 203, 189, 190, 183, 137, 139, 129, 95, 94, 85, 106, 106, 93, 95, 95, 79, 97, 97, 81, 118, 118, 104, 100, 97, 84, 92, 90, 74, 100, 98, 82, 96, 94, 81, 107, 104, 94, 125, 124, 115, 154, 153, 145, 138, 137, 128, 130, 128, 122, 108, 107, 98, 104, 103, 96, 108, 107, 98, 134, 133, 125, 102, 104, 94, 109, 111, 101, 100, 102, 92, 104, 105, 96, 99, 100, 91, 90, 91, 82, 84, 85, 76, 91, 90, 82, 91, 90, 82, 89, 88, 79, 95, 94, 85, 107, 104, 94, 105, 105, 94, 130, 129, 118, 131, 130, 119, 127, 127, 116, 145, 144, 133, 125, 125, 113, 114, 114, 103, 120, 120, 109, 120, 119, 111, 85, 85, 76, 84, 83, 75, 71, 71, 62, 87, 86, 77, 92, 92, 83, 92, 92, 83, 84, 84, 72, 78, 78, 67, 83, 81, 70, 128, 125, 114, 100, 97, 86, 111, 109, 96, 109, 106, 96, 94, 91, 81, 94, 91, 81, 95, 92, 82, 93, 90, 80, 96, 93, 85, 97, 96, 87, 98, 97, 89, 102, 101, 92, 128, 128, 119, 98, 97, 89, 117, 116, 109, 110, 109, 102, 103, 102, 93, 105, 104, 98, 92, 92, 83, 100, 100, 91, 111, 110, 101, 111, 110, 101, 103, 102, 93, 91, 90, 82, 87, 86, 77, 134, 133, 125, 128, 128, 117, 144, 141, 131, 130, 127, 117, 130, 129, 118, 136, 133, 123, 132, 129, 119, 149, 144, 134, 151, 146, 136, 156, 151, 141, 150, 145, 133, 163, 158, 146, 151, 146, 134, 165, 160, 149, 172, 167, 156, 174, 169, 157, 175, 173, 160, 165, 160, 149, 173, 173, 157, 177, 178, 162, 42, 37, 25, 169, 169, 156, 177, 174, 161, 175, 175, 161, 160, 160, 146, 161, 159, 146, 123, 123, 109, 117, 117, 103, 82, 80, 67, 66, 64, 49, 74, 69, 55, 51, 47, 32, 55, 50, 38, 70, 65, 51, 100, 95, 83, 138, 136, 121, 134, 131, 116, 207, 204, 192, 146, 144, 129, 152, 150, 137, 139, 137, 124, 144, 141, 129, 102, 102, 88, 119, 119, 107, 135, 135, 124, 110, 109, 100, 113, 112, 104, 133, 134, 127, 143, 144, 137, 151, 153, 145, 154, 155, 148, 151, 153, 145, 165, 166, 159, 142, 143, 136, 143, 144, 137, 104, 103, 94, 136, 138, 128, 144, 146, 136, 155, 156, 149, 149, 150, 143, 161, 159, 156, 159, 161, 154, 144, 145, 140, 134, 135, 130, 135, 136, 129, 137, 133, 128, 121, 120, 114, 113, 112, 104, 120, 119, 113, 100, 100, 91, 181, 180, 171, 106, 105, 97, 119, 118, 110, 102, 101, 92, 91, 87, 79, 70, 69, 61, 75, 74, 65, 73, 72, 63, 72, 69, 61, 72, 69, 59, 71, 68, 55, 70, 67, 54, 59, 57, 42, 81, 79, 64, 40, 40, 24, 48, 48, 32, 40, 40, 24, 34, 34, 18, 41, 42, 23, 54, 54, 38, 80, 80, 64, 74, 74, 58, 82, 82, 68, 118, 118, 104, 112, 114, 100, 112, 114, 100, 151, 154, 139, 60, 63, 48, 168, 170, 156, 158, 158, 142, 178, 179, 163, 169, 171, 155, 170, 173, 156, 181, 181, 165, 180, 183, 168, 199, 201, 187, 213, 215, 203, 243, 245, 233, 255, 255, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 237, 223, 84, 84, 70, 88, 87, 76, 78, 80, 68, 138, 137, 126, 139, 138, 127, 144, 143, 132, 152, 151, 140, 147, 147, 135, 132, 131, 122, 73, 72, 63, 78, 78, 69, 81, 80, 69, 242, 242, 231, 234, 236, 226, 244, 246, 238, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 251, 246, 247, 240, 218, 219, 212, 247, 248, 241, 251, 253, 245, 249, 250, 243, 248, 249, 242, 250, 252, 244, 246, 245, 236, 199, 199, 188, 70, 71, 55, 101, 99, 84, 103, 101, 86, 108, 106, 91, 99, 96, 81, 107, 105, 90, 106, 103, 90, 165, 162, 150, 92, 89, 78, 187, 184, 176, 231, 230, 221, 238, 237, 228, 224, 223, 214, 226, 225, 219, 221, 222, 215, 223, 225, 218, 218, 219, 212, 205, 206, 199, 207, 208, 201, 200, 201, 194, 198, 199, 192, 197, 198, 191, 180, 182, 174, 180, 182, 174, 194, 193, 184, 170, 169, 161, 173, 172, 163, 100, 100, 89, 195, 194, 185, 198, 197, 189, 188, 187, 178, 177, 176, 168, 175, 174, 165, 175, 174, 163, 177, 176, 168, 165, 164, 153, 174, 173, 162, 153, 152, 143, 161, 160, 152, 168, 167, 159, 151, 150, 141, 139, 138, 129, 141, 140, 132, 123, 122, 113, 127, 127, 116, 71, 71, 60, 94, 91, 81, 108, 105, 93, 107, 104, 92, 101, 98, 86, 121, 118, 107, 107, 104, 94, 96, 93, 83, 99, 96, 85, 129, 126, 116, 121, 118, 110, 111, 110, 101, 133, 132, 124, 133, 132, 124, 155, 154, 148, 135, 134, 128, 155, 154, 148, 133, 132, 126, 138, 137, 128, 149, 148, 142, 140, 141, 132, 168, 167, 160, 156, 155, 149, 163, 162, 154, 106, 105, 97, 102, 99, 91, 85, 85, 76, 89, 88, 79, 81, 80, 71, 145, 144, 133, 149, 146, 135, 142, 142, 131, 146, 143, 133, 151, 148, 138, 151, 146, 136, 153, 147, 138, 157, 152, 142, 157, 152, 142, 161, 156, 144, 163, 160, 147, 170, 165, 153, 172, 167, 156, 170, 167, 154, 167, 162, 148, 160, 158, 143, 101, 97, 80, 96, 94, 79, 90, 85, 73, 0, 0, 0, 57, 54, 41, 59, 57, 44, 82, 80, 67, 135, 131, 116, 164, 159, 147, 174, 169, 155, 181, 176, 162, 188, 181, 167, 194, 187, 173, 192, 188, 173, 191, 186, 174, 185, 180, 168, 170, 163, 152, 144, 139, 128, 139, 134, 122, 139, 134, 122, 134, 131, 120, 131, 128, 118, 125, 125, 113, 131, 130, 119, 129, 131, 119, 101, 103, 93, 125, 126, 117, 114, 116, 106, 121, 123, 113, 114, 115, 108, 121, 122, 115, 128, 130, 120, 109, 111, 103, 125, 125, 121, 111, 111, 107, 114, 115, 110, 120, 121, 116, 121, 122, 117, 114, 115, 110, 101, 102, 99, 119, 119, 117, 116, 116, 116, 118, 121, 120, 101, 101, 101, 110, 113, 110, 97, 100, 97, 111, 111, 109, 112, 112, 110, 106, 107, 102, 112, 113, 106, 118, 116, 112, 111, 109, 105, 106, 105, 101, 111, 110, 103, 104, 104, 100, 103, 101, 95, 95, 93, 87, 105, 104, 98, 96, 95, 88, 137, 135, 129, 121, 120, 114, 109, 107, 101, 134, 133, 127, 144, 142, 138, 143, 144, 139, 134, 135, 130, 122, 123, 118, 128, 129, 124, 123, 124, 119, 98, 98, 94, 105, 106, 101, 105, 104, 100, 84, 83, 77, 126, 125, 119, 119, 120, 113, 130, 129, 120, 108, 110, 100, 102, 104, 94, 74, 76, 68, 115, 116, 111, 48, 49, 40, 70, 71, 62, 58, 60, 48, 74, 77, 62, 69, 71, 59, 88, 88, 74, 86, 89, 74, 106, 108, 96, 125, 127, 112, 141, 143, 129, 138, 141, 126, 163, 165, 151, 159, 162, 147, 170, 172, 158, 170, 172, 158, 165, 168, 151, 173, 176, 161, 175, 177, 162, 180, 183, 168, 197, 199, 185, 214, 216, 202, 255, 255, 243, 255, 255, 255, 209, 212, 197, 118, 120, 103, 41, 43, 31, 100, 101, 96, 90, 91, 84, 143, 145, 135, 133, 134, 125, 145, 144, 133, 151, 150, 141, 142, 142, 131, 147, 146, 137, 108, 107, 98, 112, 111, 105, 64, 64, 55, 247, 246, 238, 241, 242, 233, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 238, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 245, 244, 233, 52, 52, 36, 105, 105, 92, 110, 111, 92, 101, 99, 84, 95, 93, 78, 94, 92, 75, 107, 105, 90, 47, 45, 32, 216, 214, 201, 240, 237, 226, 239, 238, 229, 247, 246, 238, 247, 246, 238, 251, 249, 243, 248, 247, 241, 242, 243, 236, 242, 243, 236, 244, 246, 238, 239, 240, 233, 225, 226, 219, 236, 238, 230, 236, 238, 228, 235, 237, 227, 236, 238, 228, 237, 236, 227, 234, 234, 225, 239, 238, 229, 40, 40, 26, 239, 238, 229, 240, 239, 231, 234, 234, 223, 234, 234, 223, 236, 235, 224, 234, 234, 223, 232, 232, 220, 235, 232, 222, 239, 238, 227, 229, 228, 217, 229, 228, 217, 240, 236, 228, 233, 233, 222, 234, 234, 225, 232, 232, 220, 232, 232, 220, 232, 232, 220, 233, 230, 217, 82, 79, 69, 103, 100, 90, 89, 86, 76, 86, 83, 70, 100, 97, 86, 93, 90, 80, 96, 93, 83, 130, 127, 117, 118, 116, 105, 216, 213, 205, 223, 220, 212, 229, 228, 219, 224, 223, 214, 229, 227, 221, 229, 227, 221, 230, 228, 222, 232, 231, 224, 224, 223, 216, 231, 230, 223, 227, 227, 218, 229, 228, 219, 230, 229, 220, 233, 232, 224, 239, 238, 229, 212, 211, 203, 77, 76, 68, 68, 67, 58, 81, 80, 69, 112, 112, 100, 137, 136, 125, 137, 136, 125, 145, 142, 132, 146, 143, 133, 145, 142, 132, 150, 145, 135, 169, 164, 154, 163, 158, 146, 168, 162, 153, 169, 164, 152, 170, 165, 153, 174, 169, 157, 171, 166, 154, 169, 164, 150, 151, 147, 132, 133, 129, 110, 112, 108, 91, 139, 134, 120, 150, 145, 133, 141, 138, 125, 135, 132, 119, 143, 138, 126, 153, 148, 134, 148, 143, 129, 140, 135, 121, 161, 156, 142, 151, 147, 132, 149, 144, 130, 142, 138, 123, 147, 140, 129, 147, 142, 130, 144, 139, 128, 142, 139, 126, 132, 130, 117, 128, 125, 117, 128, 125, 117, 135, 131, 124, 102, 101, 92, 114, 113, 107, 154, 155, 148, 115, 116, 109, 119, 120, 111, 119, 120, 113, 112, 113, 104, 135, 136, 129, 135, 137, 127, 116, 118, 108, 145, 143, 137, 112, 111, 105, 125, 123, 119, 124, 122, 118, 119, 118, 114, 123, 124, 119, 127, 128, 123, 122, 123, 118, 114, 115, 108, 119, 120, 115, 115, 116, 111, 116, 117, 112, 129, 130, 125, 119, 120, 113, 108, 109, 102, 123, 124, 119, 104, 104, 100, 120, 121, 116, 144, 142, 138, 111, 112, 105, 116, 117, 112, 108, 106, 102, 114, 113, 109, 135, 136, 131, 113, 112, 108, 112, 111, 105, 111, 110, 103, 119, 118, 112, 106, 105, 99, 116, 114, 108, 113, 112, 106, 123, 121, 115, 110, 108, 104, 105, 106, 101, 105, 104, 100, 123, 124, 121, 107, 108, 105, 104, 104, 102, 108, 109, 106, 109, 110, 107, 121, 119, 118, 113, 113, 111, 127, 127, 125, 133, 133, 131, 129, 129, 127, 150, 151, 148, 135, 135, 133, 151, 152, 149, 143, 144, 139, 150, 151, 144, 157, 159, 149, 150, 152, 140, 127, 129, 117, 133, 134, 125, 141, 143, 131, 136, 138, 126, 147, 149, 136, 144, 146, 134, 142, 142, 131, 119, 119, 107, 97, 96, 85, 80, 79, 68, 59, 59, 43, 57, 58, 42, 88, 88, 74, 67, 70, 53, 74, 77, 60, 102, 106, 86, 94, 97, 82, 116, 119, 102, 127, 129, 115, 100, 102, 88, 66, 68, 56, 105, 105, 103, 129, 129, 129, 127, 128, 123, 141, 142, 135, 149, 148, 140, 146, 145, 136, 148, 147, 139, 142, 141, 133, 146, 145, 136, 114, 113, 107, 127, 126, 122, 71, 71, 62, 255, 255, 247, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 112, 112, 98, 93, 91, 76, 148, 148, 132, 113, 110, 95, 106, 104, 88, 91, 88, 73, 109, 109, 93, 163, 161, 145, 244, 244, 230, 236, 235, 222, 249, 249, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 246, 226, 227, 218, 255, 255, 255, 255, 255, 248, 255, 255, 249, 255, 255, 248, 255, 255, 246, 254, 254, 242, 255, 255, 249, 59, 57, 44, 255, 254, 244, 255, 255, 246, 255, 255, 247, 255, 255, 244, 255, 255, 244, 255, 255, 245, 255, 253, 240, 247, 244, 231, 223, 221, 208, 240, 237, 224, 235, 232, 220, 255, 255, 245, 255, 253, 242, 254, 254, 242, 255, 252, 241, 252, 251, 240, 255, 255, 249, 255, 255, 243, 168, 166, 153, 64, 61, 48, 100, 97, 84, 87, 84, 76, 88, 87, 76, 84, 84, 72, 121, 118, 107, 143, 140, 129, 177, 174, 161, 229, 226, 216, 230, 229, 220, 240, 239, 231, 249, 249, 240, 251, 250, 239, 251, 250, 239, 218, 217, 208, 255, 255, 247, 247, 246, 238, 227, 227, 218, 230, 229, 220, 255, 255, 247, 251, 250, 241, 255, 255, 245, 255, 255, 249, 246, 245, 234, 144, 143, 134, 64, 64, 55, 71, 71, 60, 100, 100, 89, 145, 144, 133, 152, 149, 139, 147, 145, 132, 146, 144, 131, 160, 158, 145, 151, 148, 138, 155, 150, 140, 142, 137, 125, 167, 164, 154, 169, 164, 152, 165, 160, 149, 174, 169, 157, 170, 165, 153, 171, 166, 154, 162, 157, 145, 114, 113, 92, 127, 123, 106, 144, 137, 123, 126, 119, 108, 141, 136, 122, 141, 136, 124, 140, 135, 123, 143, 139, 124, 135, 131, 116, 161, 156, 142, 149, 144, 130, 141, 134, 121, 146, 139, 126, 151, 147, 132, 133, 128, 116, 133, 128, 116, 143, 138, 126, 149, 144, 134, 128, 125, 114, 137, 134, 126, 148, 147, 141, 132, 131, 122, 125, 124, 115, 123, 121, 115, 120, 121, 114, 123, 122, 113, 112, 111, 105, 119, 118, 112, 121, 122, 115, 113, 112, 104, 62, 61, 54, 81, 80, 71, 89, 88, 79, 76, 75, 66, 70, 69, 63, 82, 81, 72, 67, 66, 57, 68, 67, 58, 61, 60, 51, 79, 76, 68, 87, 84, 76, 76, 75, 66, 82, 79, 73, 67, 64, 58, 74, 71, 65, 88, 86, 80, 73, 75, 65, 116, 118, 110, 108, 109, 104, 119, 118, 114, 111, 109, 105, 114, 113, 109, 114, 113, 109, 123, 121, 117, 121, 120, 116, 106, 105, 99, 104, 105, 98, 113, 112, 106, 113, 112, 106, 109, 107, 101, 106, 105, 99, 126, 125, 119, 118, 117, 110, 105, 104, 98, 109, 107, 101, 119, 118, 114, 106, 107, 102, 100, 101, 96, 105, 106, 101, 113, 114, 109, 106, 107, 102, 119, 119, 117, 118, 118, 116, 115, 116, 113, 123, 124, 121, 116, 114, 112, 113, 113, 111, 126, 126, 124, 130, 131, 126, 127, 128, 123, 123, 124, 119, 128, 129, 122, 125, 126, 119, 135, 136, 129, 133, 134, 127, 131, 133, 126, 127, 128, 121, 135, 136, 129, 151, 153, 145, 148, 149, 142, 153, 154, 147, 161, 160, 154, 155, 156, 147, 156, 158, 148, 142, 144, 134, 140, 141, 132, 144, 143, 134, 168, 170, 158, 161, 163, 151, 161, 163, 151, 155, 157, 145, 135, 137, 125, 111, 113, 100, 81, 83, 75, 108, 109, 102, 130, 131, 128, 135, 135, 135, 142, 143, 136, 141, 142, 133, 151, 150, 141, 152, 151, 142, 148, 147, 139, 148, 147, 139, 146, 145, 138, 135, 134, 128, 140, 139, 132, 145, 143, 137, 44, 46, 36, 213, 215, 203, 187, 190, 175, 166, 168, 156, 189, 191, 179, 212, 214, 202, 239, 240, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 223, 209, 98, 98, 84, 61, 61, 45, 71, 71, 58, 116, 116, 102, 81, 81, 67, 64, 64, 53, 123, 122, 111, 91, 91, 78, 240, 240, 228, 255, 255, 248, 255, 255, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 58, 42, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 254, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 166, 164, 151, 56, 53, 42, 93, 90, 82, 110, 109, 102, 130, 128, 122, 113, 112, 104, 119, 118, 110, 134, 134, 121, 181, 179, 166, 240, 237, 224, 234, 234, 221, 255, 255, 244, 255, 255, 249, 255, 255, 250, 255, 255, 250, 255, 255, 252, 255, 255, 253, 255, 255, 251, 255, 255, 252, 255, 255, 254, 255, 255, 254, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 131, 130, 119, 74, 73, 64, 88, 87, 76, 87, 86, 75, 165, 162, 152, 153, 151, 140, 153, 151, 138, 153, 151, 140, 160, 158, 147, 157, 154, 142, 164, 161, 149, 160, 158, 145, 168, 166, 153, 168, 162, 153, 170, 165, 153, 167, 162, 150, 176, 171, 159, 160, 155, 143, 170, 165, 153, 136, 128, 110, 139, 130, 115, 146, 139, 126, 126, 119, 108, 128, 123, 111, 139, 134, 122, 135, 130, 118, 141, 136, 122, 147, 142, 128, 137, 133, 119, 143, 139, 124, 126, 121, 107, 160, 155, 141, 143, 138, 126, 126, 121, 109, 135, 130, 118, 164, 159, 147, 150, 147, 136, 131, 128, 118, 141, 140, 132, 127, 123, 115, 127, 126, 118, 125, 124, 115, 113, 112, 104, 134, 133, 125, 118, 117, 108, 108, 107, 96, 66, 65, 56, 81, 80, 69, 76, 76, 64, 73, 72, 63, 60, 59, 50, 85, 81, 73, 89, 86, 80, 99, 95, 87, 81, 80, 71, 73, 70, 62, 81, 79, 73, 99, 98, 90, 66, 63, 55, 91, 91, 80, 88, 85, 77, 91, 87, 83, 81, 78, 70, 91, 88, 77, 94, 91, 83, 67, 64, 56, 71, 68, 57, 101, 98, 90, 115, 111, 108, 113, 112, 108, 106, 105, 101, 114, 113, 109, 114, 113, 109, 112, 111, 107, 123, 121, 115, 111, 110, 103, 113, 112, 106, 112, 111, 105, 120, 119, 113, 124, 121, 115, 115, 111, 106, 120, 119, 113, 119, 118, 112, 113, 112, 108, 117, 115, 111, 109, 107, 103, 109, 107, 103, 112, 111, 107, 113, 113, 111, 104, 104, 102, 107, 108, 105, 119, 120, 115, 121, 121, 119, 119, 119, 117, 132, 130, 126, 121, 121, 119, 129, 130, 125, 128, 129, 124, 131, 132, 128, 131, 132, 128, 129, 130, 123, 135, 136, 129, 138, 140, 132, 135, 136, 129, 134, 135, 128, 134, 135, 128, 134, 135, 128, 133, 132, 126, 134, 133, 127, 134, 135, 128, 138, 137, 128, 142, 143, 136, 146, 145, 138, 142, 141, 133, 142, 141, 135, 141, 140, 132, 142, 143, 136, 148, 149, 142, 155, 154, 148, 157, 158, 151, 151, 153, 145, 149, 150, 145, 135, 136, 131, 136, 137, 132, 137, 139, 131, 148, 149, 144, 143, 144, 137, 137, 139, 129, 151, 149, 143, 148, 147, 141, 148, 147, 141, 148, 147, 141, 145, 144, 135, 149, 148, 142, 135, 134, 128, 151, 149, 143, 152, 151, 144, 76, 77, 68, 70, 71, 62, 88, 90, 80, 112, 111, 103, 118, 120, 107, 126, 128, 116, 140, 140, 128, 148, 150, 138, 150, 152, 140, 150, 153, 138, 159, 162, 147, 161, 163, 149, 154, 156, 140, 161, 163, 147, 138, 141, 124, 122, 125, 108, 0, 0, 0, 118, 119, 110, 101, 102, 95, 99, 100, 93, 119, 120, 115, 78, 79, 72, 114, 116, 106, 30, 32, 20, 212, 214, 202, 222, 224, 212, 212, 212, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 46, 30, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 242, 229, 157, 154, 144, 81, 78, 70, 114, 110, 105, 101, 102, 95, 99, 100, 93, 98, 97, 91, 121, 120, 114, 59, 61, 49, 212, 212, 199, 244, 244, 230, 247, 247, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 177, 166, 118, 117, 106, 100, 100, 89, 116, 114, 108, 109, 108, 99, 135, 132, 121, 161, 161, 149, 149, 146, 133, 153, 151, 140, 157, 154, 142, 156, 153, 140, 154, 149, 137, 163, 158, 148, 165, 160, 149, 165, 160, 151, 167, 161, 152, 177, 170, 159, 167, 160, 149, 161, 154, 143, 167, 160, 147, 142, 136, 118, 132, 126, 110, 139, 134, 120, 120, 113, 102, 133, 128, 116, 140, 135, 123, 141, 136, 122, 132, 130, 117, 136, 131, 119, 150, 145, 133, 142, 139, 126, 138, 136, 123, 134, 131, 118, 135, 132, 119, 142, 139, 126, 149, 146, 133, 162, 157, 147, 153, 151, 140, 128, 125, 114, 135, 131, 124, 138, 137, 128, 135, 134, 128, 127, 126, 120, 131, 129, 123, 127, 126, 118, 113, 112, 104, 59, 58, 45, 75, 75, 61, 83, 83, 71, 91, 90, 82, 112, 111, 105, 137, 135, 131, 140, 138, 136, 175, 173, 171, 160, 158, 156, 169, 167, 166, 176, 174, 173, 168, 166, 166, 161, 159, 159, 162, 160, 159, 170, 168, 167, 166, 164, 162, 148, 148, 146, 133, 131, 129, 63, 62, 54, 80, 77, 67, 111, 109, 96, 80, 75, 65, 79, 76, 65, 78, 77, 71, 113, 112, 108, 113, 109, 105, 114, 113, 109, 114, 113, 109, 120, 119, 115, 128, 127, 121, 114, 113, 107, 116, 114, 108, 117, 116, 109, 104, 101, 95, 130, 127, 121, 121, 117, 112, 127, 123, 117, 120, 116, 110, 114, 113, 109, 116, 114, 110, 109, 107, 103, 110, 108, 104, 117, 115, 113, 114, 112, 111, 115, 116, 111, 133, 133, 131, 128, 128, 126, 125, 125, 121, 131, 132, 128, 123, 124, 119, 123, 121, 117, 133, 133, 129, 127, 126, 122, 127, 128, 123, 119, 120, 115, 126, 127, 122, 129, 130, 123, 133, 134, 127, 131, 133, 126, 135, 136, 129, 134, 135, 128, 145, 143, 137, 139, 138, 131, 139, 138, 131, 133, 132, 126, 163, 162, 154, 142, 141, 133, 132, 131, 124, 142, 141, 133, 142, 141, 133, 140, 139, 130, 152, 151, 144, 139, 138, 131, 146, 145, 138, 137, 135, 129, 146, 145, 138, 142, 141, 135, 145, 143, 137, 142, 141, 135, 153, 152, 145, 148, 147, 141, 148, 147, 141, 144, 142, 136, 146, 145, 138, 149, 148, 142, 146, 145, 138, 151, 149, 143, 151, 149, 143, 152, 151, 144, 148, 147, 141, 149, 148, 142, 149, 148, 142, 175, 174, 167, 170, 171, 166, 165, 166, 159, 164, 165, 160, 154, 155, 150, 144, 145, 140, 135, 136, 131, 108, 109, 102, 111, 111, 107, 106, 105, 99, 85, 84, 78, 75, 74, 67, 62, 63, 56, 77, 78, 69, 76, 77, 70, 83, 83, 79, 127, 127, 125, 114, 116, 113, 111, 114, 111, 122, 125, 121, 120, 122, 121, 110, 113, 110, 116, 119, 116, 118, 118, 116, 64, 65, 60, 51, 53, 43, 113, 115, 103, 123, 125, 115, 133, 135, 123, 125, 127, 114, 119, 121, 109, 129, 131, 119, 129, 131, 117, 128, 130, 118, 133, 135, 123, 134, 137, 120, 133, 135, 121, 130, 133, 116, 136, 139, 122, 136, 139, 122, 138, 138, 122, 144, 144, 128, 165, 165, 147, 33, 33, 17, 168, 168, 152, 160, 161, 142, 159, 160, 139, 158, 159, 138, 144, 144, 126, 153, 152, 134, 150, 149, 128, 159, 155, 135, 146, 141, 125, 153, 149, 129, 162, 158, 139, 157, 153, 136, 157, 155, 138, 149, 147, 129, 161, 157, 140, 167, 166, 148, 174, 172, 157, 135, 132, 121, 38, 34, 29, 104, 102, 98, 120, 119, 115, 122, 123, 118, 122, 123, 118, 116, 114, 110, 108, 106, 102, 109, 111, 103, 59, 58, 45, 155, 156, 140, 160, 160, 144, 155, 155, 142, 160, 160, 144, 165, 165, 149, 168, 168, 152, 166, 166, 150, 189, 189, 175, 187, 187, 173, 189, 191, 177, 191, 193, 179, 188, 188, 174, 187, 190, 175, 192, 194, 182, 156, 158, 146, 70, 72, 58, 73, 72, 63, 128, 127, 123, 129, 130, 125, 148, 147, 139, 156, 156, 145, 145, 144, 133, 155, 152, 139, 146, 144, 131, 158, 156, 143, 156, 153, 140, 167, 162, 150, 167, 161, 152, 165, 160, 149, 162, 157, 145, 170, 165, 155, 168, 163, 151, 172, 167, 156, 175, 170, 158, 162, 157, 145, 137, 134, 114, 135, 131, 114, 126, 119, 106, 137, 133, 119, 146, 139, 126, 130, 126, 112, 137, 132, 121, 150, 147, 134, 147, 145, 134, 144, 141, 131, 155, 152, 141, 130, 127, 117, 152, 149, 139, 143, 140, 128, 135, 132, 121, 156, 153, 142, 139, 136, 126, 139, 136, 126, 136, 133, 125, 144, 141, 133, 134, 133, 127, 142, 141, 135, 128, 127, 121, 132, 131, 124, 114, 113, 107, 67, 66, 55, 66, 65, 52, 83, 83, 71, 206, 206, 193, 233, 232, 226, 237, 235, 231, 237, 235, 229, 234, 233, 229, 236, 234, 230, 236, 234, 230, 234, 233, 229, 201, 199, 195, 238, 236, 232, 232, 230, 228, 234, 232, 233, 234, 232, 231, 236, 234, 232, 230, 228, 226, 241, 236, 235, 242, 241, 237, 212, 208, 202, 0, 0, 0, 110, 107, 97, 88, 85, 77, 74, 71, 65, 117, 113, 110, 117, 115, 111, 116, 114, 110, 117, 113, 110, 127, 126, 120, 114, 113, 107, 117, 114, 108, 123, 119, 114, 125, 122, 116, 115, 111, 106, 116, 112, 107, 125, 122, 116, 121, 117, 114, 114, 113, 109, 121, 120, 116, 128, 127, 123, 126, 125, 121, 113, 112, 108, 135, 134, 130, 114, 115, 110, 126, 127, 122, 127, 128, 123, 128, 129, 124, 130, 131, 126, 126, 127, 122, 123, 124, 119, 133, 131, 128, 151, 149, 145, 125, 123, 119, 133, 131, 128, 134, 133, 129, 133, 131, 128, 138, 136, 130, 133, 132, 126, 138, 136, 130, 135, 134, 128, 135, 134, 128, 139, 138, 131, 134, 133, 127, 138, 136, 130, 142, 141, 133, 144, 141, 133, 153, 152, 143, 206, 200, 193, 153, 150, 142, 152, 151, 142, 146, 143, 137, 146, 143, 135, 145, 144, 135, 150, 146, 141, 152, 151, 142, 148, 147, 141, 153, 152, 145, 147, 146, 139, 145, 143, 137, 151, 149, 143, 149, 148, 142, 155, 154, 148, 158, 156, 150, 151, 149, 143, 155, 156, 149, 146, 145, 138, 148, 147, 141, 154, 153, 147, 154, 153, 147, 146, 145, 138, 147, 146, 139, 146, 145, 138, 144, 142, 136, 146, 145, 138, 146, 144, 140, 145, 143, 139, 146, 144, 140, 157, 158, 151, 145, 146, 141, 147, 147, 143, 148, 149, 144, 157, 158, 153, 150, 151, 146, 143, 144, 139, 151, 152, 147, 150, 151, 148, 155, 155, 155, 156, 158, 159, 150, 152, 151, 144, 146, 145, 151, 153, 155, 158, 160, 161, 143, 145, 146, 135, 140, 138, 139, 144, 142, 142, 144, 143, 143, 145, 142, 137, 140, 136, 83, 86, 83, 88, 91, 86, 81, 84, 79, 82, 85, 80, 68, 71, 66, 66, 69, 62, 55, 56, 51, 55, 59, 53, 59, 60, 55, 60, 62, 54, 59, 61, 51, 66, 65, 54, 52, 54, 42, 49, 51, 39, 62, 62, 48, 49, 49, 36, 77, 77, 64, 28, 28, 15, 53, 53, 37, 42, 43, 27, 48, 49, 30, 49, 50, 32, 58, 56, 39, 44, 42, 25, 54, 53, 35, 52, 50, 33, 58, 54, 37, 54, 49, 33, 66, 62, 48, 84, 79, 65, 70, 66, 49, 39, 37, 22, 67, 65, 48, 60, 59, 41, 70, 67, 52, 132, 131, 122, 130, 128, 124, 131, 132, 129, 131, 132, 129, 136, 137, 132, 134, 135, 130, 141, 142, 137, 140, 140, 136, 137, 138, 133, 138, 140, 132, 125, 124, 115, 78, 78, 65, 57, 58, 42, 50, 51, 35, 42, 43, 27, 46, 44, 31, 47, 47, 33, 50, 50, 37, 48, 48, 34, 63, 63, 50, 62, 62, 50, 43, 43, 30, 68, 67, 56, 71, 71, 60, 99, 99, 88, 105, 104, 96, 131, 129, 125, 147, 145, 141, 128, 128, 119, 163, 162, 154, 149, 149, 138, 152, 149, 139, 151, 148, 138, 152, 150, 137, 153, 151, 138, 157, 154, 142, 169, 164, 152, 164, 161, 149, 166, 163, 153, 159, 153, 144, 155, 150, 140, 165, 160, 151, 165, 160, 151, 177, 170, 159, 175, 168, 157, 127, 125, 107, 117, 115, 100, 131, 129, 116, 127, 122, 110, 125, 120, 108, 112, 107, 97, 138, 135, 127, 137, 134, 126, 156, 153, 145, 117, 114, 104, 144, 141, 131, 136, 133, 123, 145, 142, 132, 131, 128, 118, 159, 156, 146, 130, 127, 117, 125, 123, 112, 133, 132, 124, 140, 139, 130, 123, 122, 113, 132, 131, 122, 148, 147, 139, 130, 128, 122, 134, 133, 127, 91, 90, 84, 64, 64, 55, 83, 83, 71, 189, 189, 175, 250, 248, 235, 241, 241, 228, 237, 236, 225, 238, 235, 225, 236, 235, 224, 237, 236, 225, 244, 242, 229, 201, 199, 186, 208, 206, 193, 228, 225, 213, 238, 235, 225, 234, 234, 225, 236, 233, 225, 234, 234, 225, 236, 235, 226, 239, 238, 227, 250, 247, 239, 255, 255, 250, 136, 133, 123, 0, 0, 0, 124, 121, 113, 112, 111, 105, 97, 95, 91, 120, 119, 115, 114, 113, 109, 119, 118, 114, 130, 128, 122, 118, 117, 110, 117, 116, 109, 124, 123, 116, 122, 118, 113, 119, 118, 112, 120, 116, 112, 128, 124, 121, 118, 114, 111, 128, 126, 125, 126, 124, 123, 117, 115, 113, 127, 125, 124, 113, 111, 110, 116, 117, 114, 119, 119, 117, 124, 127, 124, 143, 143, 141, 127, 127, 125, 120, 120, 118, 121, 121, 119, 129, 130, 125, 124, 122, 120, 123, 121, 119, 127, 126, 122, 123, 121, 117, 130, 128, 124, 138, 136, 132, 130, 128, 124, 137, 135, 129, 147, 146, 139, 137, 135, 129, 140, 139, 132, 137, 135, 129, 142, 141, 135, 147, 146, 137, 141, 140, 132, 144, 141, 133, 143, 140, 132, 145, 142, 134, 149, 145, 137, 152, 149, 141, 152, 149, 141, 147, 146, 139, 144, 142, 136, 147, 146, 139, 146, 145, 138, 149, 145, 137, 149, 148, 142, 151, 149, 143, 156, 155, 149, 147, 146, 139, 146, 145, 138, 147, 146, 139, 149, 148, 142, 153, 152, 145, 144, 142, 136, 151, 149, 143, 151, 149, 143, 142, 141, 135, 146, 145, 138, 154, 153, 147, 145, 143, 137, 144, 142, 136, 141, 140, 134, 144, 142, 136, 139, 137, 133, 145, 143, 139, 145, 146, 141, 143, 144, 137, 131, 129, 125, 138, 136, 132, 136, 137, 132, 137, 135, 129, 125, 124, 117, 140, 139, 132, 139, 138, 131, 141, 140, 134, 141, 140, 134, 137, 135, 131, 136, 137, 132, 144, 145, 142, 142, 142, 140, 131, 132, 129, 136, 136, 134, 144, 145, 142, 144, 145, 142, 152, 155, 152, 145, 148, 145, 151, 154, 151, 155, 157, 154, 159, 161, 161, 157, 159, 158, 157, 159, 158, 151, 153, 153, 144, 146, 145, 151, 153, 153, 142, 142, 144, 147, 146, 149, 138, 138, 138, 125, 125, 123, 108, 109, 102, 135, 136, 129, 101, 102, 95, 112, 113, 106, 110, 109, 100, 99, 100, 91, 105, 106, 97, 111, 110, 101, 93, 95, 83, 120, 120, 107, 104, 104, 88, 134, 134, 119, 131, 129, 116, 106, 103, 90, 126, 121, 109, 112, 107, 95, 130, 126, 114, 114, 109, 97, 103, 98, 86, 96, 91, 77, 99, 96, 85, 112, 107, 93, 141, 138, 123, 91, 88, 75, 83, 82, 73, 87, 85, 79, 73, 74, 69, 87, 85, 81, 77, 76, 72, 74, 75, 70, 68, 66, 62, 83, 83, 79, 73, 74, 67, 95, 93, 87, 98, 97, 91, 81, 80, 71, 137, 134, 126, 114, 111, 103, 147, 146, 137, 118, 117, 106, 100, 100, 87, 109, 109, 95, 98, 98, 86, 109, 108, 97, 129, 131, 119, 97, 96, 87, 103, 102, 93, 84, 83, 75, 137, 135, 129, 153, 152, 145, 142, 141, 135, 140, 139, 132, 146, 145, 136, 146, 145, 136, 148, 148, 136, 146, 143, 133, 156, 153, 140, 150, 147, 136, 151, 148, 136, 157, 154, 142, 161, 159, 148, 165, 162, 152, 164, 161, 153, 167, 164, 156, 158, 155, 147, 166, 163, 155, 167, 161, 152, 168, 162, 153, 167, 162, 150, 133, 134, 115, 108, 107, 94, 112, 112, 100, 120, 116, 108, 139, 138, 129, 123, 122, 113, 114, 114, 105, 107, 104, 96, 113, 109, 101, 129, 126, 118, 134, 134, 123, 140, 140, 128, 151, 148, 138, 147, 145, 134, 142, 139, 128, 145, 142, 132, 137, 134, 124, 156, 153, 145, 134, 130, 122, 126, 125, 117, 133, 132, 124, 126, 125, 117, 138, 136, 130, 130, 128, 122, 135, 134, 130, 124, 123, 116, 170, 169, 161, 211, 211, 197, 255, 255, 255, 252, 252, 236, 246, 246, 230, 240, 240, 224, 243, 241, 226, 243, 241, 224, 236, 236, 218, 229, 227, 210, 238, 237, 219, 205, 203, 185, 238, 237, 219, 236, 234, 219, 238, 236, 221, 236, 234, 219, 237, 235, 220, 245, 243, 228, 255, 255, 248, 219, 216, 201, 138, 136, 123, 0, 0, 0, 166, 164, 158, 123, 121, 117, 131, 129, 125, 112, 111, 107, 121, 120, 116, 121, 120, 114, 119, 118, 112, 126, 125, 119, 118, 117, 110, 120, 119, 113, 122, 118, 113, 127, 126, 120, 122, 117, 117, 118, 115, 116, 114, 112, 113, 124, 121, 124, 126, 125, 128, 123, 123, 125, 122, 121, 126, 113, 112, 117, 117, 118, 125, 124, 125, 132, 144, 145, 151, 127, 128, 132, 133, 135, 137, 123, 124, 121, 123, 124, 119, 125, 123, 119, 124, 122, 118, 128, 127, 123, 125, 123, 119, 128, 127, 123, 128, 128, 126, 125, 125, 123, 126, 127, 122, 137, 138, 135, 142, 142, 140, 142, 143, 138, 135, 135, 133, 136, 136, 134, 137, 138, 133, 140, 140, 140, 132, 130, 126, 141, 140, 134, 148, 147, 139, 146, 143, 133, 131, 130, 121, 149, 148, 140, 145, 142, 134, 144, 142, 136, 148, 147, 141, 142, 141, 135, 151, 149, 143, 147, 146, 139, 154, 153, 147, 152, 151, 144, 162, 163, 156, 152, 151, 144, 152, 151, 144, 154, 155, 148, 153, 153, 149, 151, 152, 147, 145, 147, 139, 147, 147, 143, 153, 151, 147, 148, 147, 141, 143, 144, 137, 148, 147, 141, 135, 134, 128, 137, 135, 129, 147, 146, 139, 151, 149, 145, 144, 142, 138, 144, 142, 138, 142, 141, 137, 149, 148, 144, 142, 143, 138, 139, 137, 133, 137, 138, 133, 135, 134, 130, 135, 134, 128, 140, 139, 132, 144, 142, 136, 140, 139, 132, 142, 141, 135, 135, 134, 128, 133, 132, 126, 133, 131, 128, 139, 137, 133, 132, 131, 124, 142, 141, 137, 139, 137, 133, 145, 143, 139, 138, 139, 134, 142, 143, 138, 127, 128, 123, 133, 136, 133, 131, 134, 131, 130, 133, 129, 127, 129, 126, 142, 144, 141, 125, 128, 125, 133, 136, 133, 135, 137, 134, 125, 125, 125, 122, 122, 122, 124, 126, 126, 127, 127, 125, 125, 125, 123, 133, 133, 131, 118, 118, 116, 116, 117, 114, 122, 123, 118, 121, 121, 119, 116, 117, 114, 125, 123, 119, 138, 139, 134, 118, 117, 108, 120, 120, 109, 136, 133, 123, 128, 125, 114, 129, 126, 118, 130, 127, 119, 127, 123, 115, 128, 128, 119, 127, 126, 118, 125, 124, 117, 122, 118, 113, 138, 135, 127, 134, 130, 124, 127, 126, 118, 123, 125, 117, 130, 131, 128, 127, 127, 125, 122, 123, 120, 122, 123, 118, 127, 126, 122, 133, 131, 128, 133, 133, 129, 137, 138, 133, 131, 132, 128, 131, 132, 128, 141, 140, 136, 134, 135, 130, 133, 133, 129, 129, 130, 125, 134, 135, 130, 130, 128, 122, 137, 139, 131, 119, 120, 115, 131, 132, 128, 129, 130, 125, 129, 130, 125, 135, 136, 131, 129, 130, 125, 133, 134, 127, 143, 144, 137, 135, 134, 128, 138, 136, 130, 151, 150, 141, 140, 139, 130, 151, 148, 138, 150, 147, 136, 157, 154, 144, 146, 144, 131, 166, 163, 153, 158, 155, 147, 163, 157, 150, 157, 153, 148, 163, 162, 156, 156, 155, 149, 161, 160, 154, 147, 146, 139, 165, 163, 157, 163, 160, 149, 166, 163, 153, 111, 109, 98, 128, 128, 119, 125, 125, 121, 125, 126, 119, 121, 122, 115, 120, 119, 113, 112, 113, 106, 124, 123, 116, 120, 119, 113, 99, 98, 92, 62, 62, 58, 135, 134, 128, 142, 138, 130, 158, 155, 147, 139, 136, 128, 143, 140, 132, 135, 131, 124, 137, 134, 126, 139, 136, 128, 128, 125, 117, 133, 132, 124, 126, 125, 117, 125, 124, 117, 124, 123, 116, 141, 140, 136, 160, 158, 156, 141, 140, 136, 182, 182, 168, 255, 255, 255, 255, 255, 248, 253, 253, 237, 253, 253, 237, 251, 251, 233, 251, 251, 233, 251, 251, 233, 249, 250, 232, 252, 251, 233, 254, 252, 234, 254, 252, 234, 250, 248, 231, 250, 248, 231, 248, 246, 226, 250, 249, 229, 255, 255, 249, 255, 255, 250, 194, 193, 173, 125, 123, 108, 93, 90, 82, 138, 139, 134, 127, 126, 122, 124, 122, 118, 119, 118, 114, 114, 113, 109, 121, 120, 114, 114, 113, 107, 116, 114, 108, 156, 155, 149, 115, 111, 106, 127, 126, 120, 114, 113, 107, 131, 129, 127, 125, 124, 127, 126, 125, 130, 121, 118, 124, 121, 120, 125, 120, 121, 125, 121, 121, 130, 119, 122, 130, 116, 118, 129, 117, 120, 128, 120, 120, 131, 118, 121, 131, 123, 126, 134, 85, 85, 83, 123, 121, 117, 123, 121, 117, 123, 121, 117, 128, 127, 123, 125, 123, 119, 90, 88, 84, 136, 138, 139, 129, 130, 134, 124, 126, 130, 125, 127, 131, 121, 122, 126, 116, 119, 125, 123, 126, 132, 119, 123, 128, 116, 120, 123, 121, 125, 130, 113, 117, 120, 122, 124, 123, 111, 114, 109, 149, 148, 140, 141, 137, 129, 147, 144, 136, 140, 139, 130, 155, 151, 145, 149, 148, 142, 115, 116, 113, 116, 116, 116, 122, 122, 122, 118, 118, 118, 131, 131, 131, 130, 132, 131, 141, 141, 141, 151, 151, 151, 143, 143, 141, 131, 133, 133, 149, 149, 147, 134, 135, 130, 156, 156, 154, 156, 155, 151, 141, 140, 134, 146, 145, 138, 149, 148, 142, 152, 150, 146, 148, 146, 145, 136, 137, 132, 135, 135, 133, 147, 147, 145, 162, 162, 160, 146, 144, 142, 144, 145, 142, 138, 139, 136, 142, 140, 139, 140, 140, 138, 140, 140, 136, 138, 140, 132, 138, 136, 130, 135, 134, 128, 138, 136, 130, 142, 138, 130, 137, 135, 129, 127, 126, 120, 134, 133, 129, 135, 134, 130, 142, 143, 138, 142, 140, 139, 131, 132, 129, 137, 134, 133, 140, 140, 138, 142, 144, 141, 135, 137, 134, 127, 129, 126, 124, 127, 124, 118, 121, 118, 127, 129, 126, 128, 128, 126, 126, 126, 124, 128, 128, 126, 131, 132, 129, 123, 123, 123, 132, 135, 134, 122, 124, 123, 124, 126, 128, 125, 128, 127, 125, 128, 127, 115, 117, 118, 121, 121, 121, 114, 116, 117, 107, 109, 110, 99, 100, 102, 109, 109, 109, 107, 107, 107, 121, 122, 117, 118, 117, 110, 121, 118, 110, 132, 129, 123, 118, 115, 107, 131, 128, 122, 95, 93, 87, 113, 114, 109, 97, 97, 93, 104, 104, 102, 115, 116, 113, 111, 109, 107, 112, 110, 109, 114, 114, 114, 104, 104, 104, 102, 102, 102, 102, 102, 102, 104, 104, 104, 111, 111, 109, 128, 127, 123, 130, 128, 122, 132, 131, 124, 135, 134, 128, 136, 137, 132, 128, 129, 124, 96, 99, 96, 114, 116, 113, 110, 112, 112, 111, 114, 111, 106, 108, 107, 108, 110, 109, 102, 104, 104, 100, 102, 101, 96, 98, 98, 96, 98, 98, 104, 107, 106, 101, 103, 102, 102, 105, 102, 136, 137, 132, 128, 129, 122, 138, 136, 130, 135, 135, 126, 148, 147, 139, 142, 141, 133, 155, 152, 141, 159, 156, 146, 156, 153, 142, 153, 151, 140, 156, 153, 142, 165, 161, 156, 66, 64, 60, 134, 135, 130, 116, 117, 112, 126, 127, 122, 132, 130, 126, 130, 131, 126, 124, 122, 118, 133, 133, 129, 127, 126, 122, 114, 115, 108, 118, 119, 112, 123, 121, 115, 163, 162, 156, 129, 130, 123, 111, 112, 105, 126, 127, 120, 120, 121, 114, 122, 123, 116, 108, 109, 102, 58, 59, 54, 64, 65, 60, 79, 75, 70, 61, 58, 52, 15, 12, 4, 78, 74, 66, 147, 144, 136, 135, 131, 124, 134, 130, 122, 146, 145, 138, 134, 133, 127, 134, 133, 127, 130, 132, 124, 134, 135, 130, 127, 128, 123, 149, 149, 147, 162, 162, 162, 0, 0, 0, 182, 182, 168, 237, 237, 221, 222, 222, 206, 224, 224, 208, 218, 219, 200, 219, 220, 201, 223, 221, 206, 212, 210, 192, 213, 211, 193, 210, 209, 191, 203, 202, 184, 209, 204, 188, 209, 208, 188, 205, 203, 183, 205, 201, 182, 185, 184, 163, 198, 196, 176, 117, 116, 96, 75, 74, 63, 159, 157, 153, 133, 133, 129, 125, 125, 121, 118, 118, 114, 123, 121, 117, 119, 118, 114, 120, 119, 115, 112, 111, 105, 118, 117, 110, 119, 118, 112, 120, 119, 111, 130, 128, 122, 97, 96, 89, 130, 127, 130, 127, 126, 131, 126, 125, 132, 187, 186, 193, 200, 199, 204, 207, 208, 212, 136, 137, 143, 127, 128, 134, 114, 118, 124, 120, 124, 131, 121, 121, 130, 120, 124, 131, 118, 121, 129, 65, 67, 64, 16, 14, 8, 0, 0, 0, 0, 0, 0, 40, 39, 32, 84, 85, 78, 92, 93, 88, 131, 133, 137, 137, 138, 144, 142, 142, 151, 133, 135, 141, 126, 130, 135, 126, 129, 137, 120, 125, 132, 119, 124, 131, 113, 118, 126, 119, 125, 129, 113, 118, 126, 113, 118, 126, 116, 122, 129, 157, 159, 149, 151, 150, 141, 146, 145, 136, 151, 150, 141, 90, 89, 82, 120, 121, 114, 123, 125, 125, 122, 123, 127, 127, 128, 134, 125, 127, 133, 127, 128, 134, 123, 126, 134, 125, 128, 136, 133, 136, 144, 131, 134, 142, 120, 124, 131, 121, 125, 132, 124, 127, 135, 109, 111, 113, 145, 143, 141, 160, 158, 154, 159, 158, 151, 146, 145, 138, 85, 84, 80, 107, 107, 109, 120, 119, 124, 128, 129, 135, 132, 133, 140, 132, 134, 138, 134, 133, 140, 131, 131, 135, 130, 130, 134, 125, 127, 131, 122, 123, 127, 117, 119, 123, 119, 123, 124, 151, 153, 143, 140, 139, 132, 138, 136, 130, 140, 139, 132, 126, 125, 119, 99, 98, 94, 116, 117, 114, 113, 112, 115, 119, 119, 119, 121, 121, 123, 121, 121, 123, 122, 122, 124, 116, 118, 120, 115, 117, 118, 118, 120, 122, 110, 112, 114, 109, 111, 115, 89, 92, 89, 126, 127, 122, 116, 119, 114, 123, 124, 119, 126, 127, 122, 122, 123, 120, 51, 52, 49, 123, 125, 125, 118, 121, 120, 133, 135, 137, 120, 121, 123, 137, 139, 140, 121, 123, 124, 127, 126, 131, 115, 116, 120, 114, 115, 119, 109, 110, 117, 106, 107, 111, 113, 113, 113, 91, 92, 87, 127, 126, 118, 124, 123, 114, 119, 118, 110, 78, 77, 71, 59, 57, 51, 84, 85, 80, 115, 116, 111, 115, 116, 113, 116, 119, 116, 112, 112, 110, 115, 116, 113, 112, 112, 110, 106, 108, 107, 102, 104, 104, 107, 109, 108, 109, 109, 111, 101, 103, 104, 102, 103, 100, 124, 123, 116, 119, 118, 112, 118, 117, 110, 130, 128, 122, 62, 61, 54, 55, 56, 51, 87, 90, 86, 116, 119, 116, 100, 105, 104, 116, 120, 119, 109, 113, 112, 117, 121, 120, 106, 111, 109, 98, 105, 102, 96, 101, 99, 106, 111, 109, 99, 104, 102, 93, 100, 98, 100, 102, 99, 133, 133, 129, 125, 126, 119, 132, 131, 122, 127, 126, 118, 139, 138, 129, 146, 143, 135, 151, 148, 140, 156, 153, 145, 156, 156, 145, 165, 164, 155, 54, 53, 44, 53, 54, 49, 48, 52, 46, 130, 131, 126, 120, 121, 116, 218, 218, 214, 231, 230, 223, 226, 225, 219, 255, 252, 247, 218, 217, 210, 196, 195, 188, 120, 120, 118, 126, 127, 120, 134, 133, 127, 215, 213, 207, 183, 184, 177, 197, 196, 190, 184, 183, 177, 118, 119, 112, 115, 116, 109, 113, 114, 107, 63, 64, 57, 64, 65, 60, 54, 52, 48, 75, 71, 68, 82, 79, 73, 0, 0, 0, 0, 0, 0, 132, 129, 121, 135, 131, 124, 138, 136, 130, 137, 135, 129, 146, 145, 138, 138, 136, 132, 136, 137, 132, 129, 131, 128, 138, 139, 136, 190, 190, 190, 200, 201, 198, 112, 111, 103, 109, 109, 93, 167, 168, 147, 100, 101, 83, 91, 94, 75, 62, 65, 46, 91, 92, 74, 82, 82, 66, 74, 72, 57, 79, 77, 60, 94, 92, 75, 81, 79, 64, 71, 69, 53, 104, 103, 85, 70, 66, 49, 85, 83, 65, 118, 118, 104, 149, 150, 143, 158, 159, 154, 134, 135, 130, 113, 114, 109, 120, 121, 116, 119, 118, 114, 119, 118, 114, 118, 118, 114, 119, 120, 115, 111, 110, 103, 117, 116, 109, 104, 105, 98, 0, 0, 0, 88, 90, 82, 71, 72, 67, 121, 121, 123, 125, 124, 128, 129, 128, 133, 244, 244, 248, 161, 160, 165, 238, 240, 244, 180, 182, 184, 215, 216, 220, 203, 204, 211, 204, 208, 213, 107, 107, 116, 113, 116, 124, 112, 115, 123, 102, 104, 104, 23, 21, 17, 0, 0, 0, 0, 0, 0, 57, 58, 51, 63, 64, 57, 58, 59, 52, 131, 133, 135, 136, 137, 141, 133, 135, 139, 208, 209, 213, 255, 255, 255, 216, 220, 223, 192, 196, 201, 192, 196, 199, 253, 255, 255, 133, 137, 142, 109, 113, 116, 115, 121, 126, 113, 117, 122, 32, 36, 28, 0, 0, 0, 11, 10, 1, 88, 87, 78, 80, 81, 74, 70, 71, 66, 64, 66, 65, 113, 114, 118, 132, 133, 140, 119, 123, 128, 208, 211, 217, 164, 168, 174, 140, 143, 151, 127, 130, 138, 171, 175, 183, 134, 137, 145, 120, 123, 133, 126, 129, 137, 94, 95, 101, 138, 139, 134, 135, 136, 131, 135, 136, 131, 63, 64, 59, 76, 76, 72, 84, 84, 82, 123, 125, 128, 124, 125, 132, 138, 139, 146, 138, 140, 144, 131, 132, 139, 137, 138, 144, 125, 128, 134, 131, 134, 140, 140, 144, 149, 124, 127, 133, 120, 126, 130, 140, 144, 138, 165, 164, 155, 154, 153, 145, 110, 107, 99, 71, 71, 62, 55, 53, 49, 129, 129, 129, 124, 126, 130, 122, 121, 126, 128, 129, 131, 135, 136, 140, 127, 128, 132, 125, 129, 132, 123, 125, 128, 131, 133, 137, 121, 122, 128, 118, 119, 126, 93, 95, 92, 144, 145, 138, 143, 144, 137, 112, 113, 106, 116, 118, 110, 59, 60, 55, 55, 55, 53, 125, 128, 127, 125, 128, 127, 122, 124, 123, 116, 118, 120, 179, 181, 182, 137, 139, 140, 125, 127, 129, 128, 129, 131, 135, 136, 138, 110, 112, 116, 104, 106, 110, 104, 106, 108, 112, 112, 110, 90, 89, 80, 23, 21, 15, 43, 42, 36, 54, 53, 46, 64, 63, 59, 59, 60, 55, 122, 123, 118, 116, 117, 112, 106, 107, 102, 229, 230, 227, 209, 210, 207, 191, 191, 189, 194, 195, 192, 171, 173, 170, 193, 193, 193, 108, 108, 110, 102, 104, 104, 101, 104, 100, 129, 130, 123, 0, 0, 0, 42, 41, 35, 63, 64, 57, 51, 52, 45, 60, 61, 56, 60, 63, 60, 114, 114, 112, 160, 163, 160, 172, 175, 171, 144, 147, 143, 110, 113, 110, 118, 121, 118, 203, 206, 203, 158, 161, 158, 200, 202, 199, 202, 205, 202, 97, 100, 97, 109, 112, 109, 81, 82, 77, 107, 108, 101, 129, 130, 123, 134, 133, 125, 138, 136, 130, 132, 131, 122, 136, 133, 125, 21, 18, 7, 42, 41, 33, 56, 57, 48, 50, 51, 44, 48, 52, 44, 41, 47, 40, 110, 113, 108, 123, 125, 117, 131, 132, 128, 133, 132, 126, 148, 147, 141, 138, 136, 130, 169, 168, 162, 121, 121, 112, 121, 122, 115, 144, 145, 140, 124, 123, 116, 110, 109, 102, 135, 136, 129, 118, 119, 110, 112, 113, 104, 113, 114, 107, 116, 120, 112, 58, 59, 52, 44, 45, 38, 57, 56, 52, 53, 51, 47, 54, 52, 48, 74, 72, 66, 66, 64, 58, 0, 0, 0, 0, 0, 0, 131, 130, 121, 146, 145, 138, 137, 139, 131, 139, 137, 133, 133, 133, 129, 140, 140, 136, 130, 133, 129, 136, 138, 135, 135, 137, 134, 132, 135, 132, 137, 138, 135, 145, 146, 141, 138, 139, 134, 139, 137, 133, 130, 131, 128, 125, 125, 121, 119, 120, 115, 116, 117, 114, 115, 115, 115, 125, 125, 125, 135, 135, 137, 142, 140, 141, 151, 148, 149, 151, 148, 149, 146, 143, 144, 130, 130, 130, 126, 126, 124, 122, 123, 120, 122, 123, 118, 123, 124, 119, 122, 123, 118, 125, 125, 121, 116, 117, 112, 122, 123, 118, 118, 116, 112, 130, 128, 124, 121, 120, 114, 98, 99, 92, 0, 0, 0, 96, 95, 84, 82, 81, 72, 83, 84, 77, 133, 133, 131, 125, 124, 128, 123, 123, 127, 130, 130, 134, 120, 121, 125, 117, 119, 123, 124, 125, 132, 116, 117, 124, 120, 121, 127, 125, 128, 134, 128, 132, 139, 118, 121, 131, 129, 133, 141, 131, 133, 135, 30, 28, 24, 0, 0, 0, 18, 17, 8, 36, 36, 27, 53, 55, 46, 44, 45, 38, 75, 78, 77, 132, 134, 138, 133, 134, 143, 128, 129, 135, 138, 139, 146, 136, 137, 143, 140, 144, 149, 166, 169, 175, 128, 132, 137, 237, 240, 246, 119, 123, 128, 117, 123, 130, 112, 116, 121, 36, 39, 33, 0, 0, 0, 60, 62, 54, 56, 55, 47, 76, 75, 68, 67, 69, 62, 43, 43, 41, 131, 133, 137, 118, 119, 126, 118, 119, 126, 187, 189, 193, 118, 119, 126, 214, 218, 223, 191, 195, 200, 175, 179, 184, 124, 127, 133, 128, 132, 139, 123, 126, 134, 128, 132, 139, 0, 0, 0, 69, 69, 65, 66, 67, 62, 64, 65, 60, 64, 65, 60, 50, 50, 50, 130, 130, 134, 124, 126, 130, 128, 129, 133, 191, 195, 198, 187, 189, 193, 225, 227, 231, 212, 216, 219, 224, 228, 231, 244, 248, 251, 123, 127, 130, 113, 117, 120, 114, 119, 118, 0, 0, 0, 58, 60, 50, 54, 53, 44, 59, 58, 49, 48, 49, 44, 135, 135, 133, 127, 127, 129, 125, 125, 125, 171, 171, 173, 192, 192, 192, 223, 223, 225, 223, 225, 227, 209, 211, 213, 195, 197, 197, 127, 128, 130, 111, 113, 115, 115, 117, 116, 115, 118, 112, 0, 0, 0, 38, 40, 32, 45, 47, 39, 42, 43, 36, 43, 44, 39, 95, 97, 97, 127, 129, 128, 125, 128, 127, 124, 126, 126, 210, 213, 212, 216, 218, 218, 160, 163, 162, 203, 206, 205, 196, 198, 200, 97, 99, 101, 100, 102, 103, 102, 104, 106, 89, 92, 91, 108, 110, 100, 0, 0, 0, 22, 23, 16, 33, 34, 27, 41, 42, 37, 22, 23, 18, 120, 121, 116, 114, 117, 111, 116, 117, 114, 144, 145, 142, 95, 96, 93, 104, 107, 104, 141, 141, 139, 111, 114, 111, 115, 117, 114, 99, 101, 100, 96, 98, 98, 102, 105, 102, 74, 76, 68, 0, 0, 0, 9, 10, 5, 29, 30, 25, 33, 34, 27, 22, 25, 19, 42, 44, 41, 110, 113, 110, 113, 115, 112, 99, 101, 98, 104, 107, 104, 103, 108, 102, 106, 111, 107, 99, 104, 100, 91, 97, 90, 99, 101, 98, 87, 90, 86, 92, 97, 95, 114, 116, 113, 106, 107, 102, 19, 19, 15, 130, 129, 120, 137, 135, 129, 152, 151, 144, 141, 140, 132, 68, 67, 58, 0, 0, 0, 41, 42, 33, 38, 41, 34, 44, 47, 39, 36, 39, 31, 39, 43, 35, 58, 61, 55, 124, 127, 122, 125, 125, 121, 168, 167, 160, 206, 206, 197, 245, 244, 235, 226, 225, 217, 247, 246, 238, 125, 129, 119, 116, 118, 108, 118, 119, 110, 140, 139, 132, 169, 170, 163, 118, 119, 110, 108, 110, 100, 114, 116, 106, 74, 78, 70, 51, 52, 45, 62, 63, 56, 57, 58, 53, 50, 51, 46, 58, 59, 54, 60, 62, 54, 57, 58, 53, 0, 0, 0, 0, 0, 0, 137, 136, 127, 131, 133, 126, 134, 135, 128, 130, 132, 124, 135, 136, 131, 137, 138, 133, 133, 136, 133, 135, 135, 133, 138, 141, 138, 131, 134, 131, 130, 133, 129, 133, 133, 131, 131, 131, 131, 128, 128, 126, 132, 135, 134, 127, 127, 129, 124, 126, 128, 127, 128, 132, 127, 127, 129, 125, 127, 129, 127, 126, 131, 131, 131, 133, 133, 130, 133, 130, 130, 132, 133, 132, 135, 128, 130, 129, 131, 132, 129, 131, 132, 129, 129, 130, 125, 122, 123, 120, 121, 122, 117, 129, 130, 125, 120, 121, 116, 125, 125, 121, 136, 137, 132, 132, 131, 124, 145, 143, 137, 0, 0, 0, 0, 0, 0, 85, 85, 74, 90, 90, 78, 83, 83, 71, 121, 121, 110, 121, 121, 119, 119, 116, 120, 123, 123, 127, 119, 118, 125, 117, 119, 123, 119, 118, 125, 127, 128, 134, 122, 123, 129, 121, 121, 130, 118, 119, 128, 116, 118, 129, 111, 114, 122, 124, 126, 130, 17, 18, 15, 55, 54, 48, 0, 0, 0, 30, 29, 20, 13, 12, 4, 42, 43, 36, 48, 48, 48, 138, 138, 140, 137, 137, 141, 141, 140, 147, 130, 131, 137, 129, 130, 134, 121, 122, 126, 123, 124, 130, 116, 119, 125, 112, 116, 121, 118, 122, 127, 117, 120, 126, 119, 123, 126, 99, 101, 100, 33, 37, 29, 0, 2, 0, 43, 43, 34, 55, 56, 47, 76, 77, 70, 34, 35, 30, 132, 134, 138, 124, 126, 130, 133, 135, 141, 125, 127, 133, 131, 132, 139, 123, 126, 132, 124, 127, 135, 127, 130, 138, 125, 128, 136, 134, 137, 147, 126, 129, 137, 124, 125, 134, 104, 107, 106, 22, 22, 20, 41, 42, 37, 29, 30, 25, 49, 49, 47, 34, 34, 34, 138, 140, 142, 128, 129, 135, 125, 127, 133, 127, 128, 134, 136, 140, 144, 139, 143, 146, 128, 132, 137, 120, 124, 127, 121, 125, 128, 117, 120, 126, 117, 120, 126, 136, 138, 139, 29, 30, 23, 17, 21, 13, 12, 13, 6, 28, 29, 22, 52, 53, 48, 120, 120, 118, 131, 131, 133, 128, 128, 130, 125, 124, 127, 130, 130, 132, 182, 181, 184, 123, 125, 127, 112, 116, 117, 117, 119, 121, 118, 120, 124, 120, 121, 125, 116, 118, 120, 83, 87, 79, 7, 10, 2, 12, 13, 6, 30, 31, 24, 41, 42, 35, 24, 25, 20, 74, 77, 74, 130, 132, 131, 122, 124, 123, 117, 119, 119, 120, 122, 121, 121, 123, 122, 109, 111, 113, 107, 112, 113, 108, 109, 113, 100, 101, 105, 100, 101, 105, 97, 99, 103, 109, 112, 109, 103, 102, 93, 0, 0, 0, 6, 7, 2, 21, 22, 17, 21, 24, 18, 22, 23, 18, 116, 119, 114, 111, 114, 109, 114, 117, 111, 115, 117, 114, 108, 111, 107, 108, 110, 109, 109, 111, 113, 109, 111, 111, 109, 111, 113, 102, 104, 106, 101, 103, 104, 106, 108, 107, 57, 57, 55, 0, 0, 0, 0, 0, 0, 10, 11, 6, 26, 29, 24, 9, 12, 6, 18, 21, 18, 117, 120, 117, 107, 109, 106, 111, 114, 111, 122, 125, 121, 113, 115, 114, 107, 109, 108, 102, 106, 105, 100, 102, 101, 105, 110, 108, 101, 103, 102, 103, 106, 105, 101, 104, 100, 90, 90, 86, 0, 0, 0, 137, 135, 129, 134, 133, 127, 142, 141, 133, 146, 145, 136, 116, 115, 106, 0, 0, 0, 68, 67, 58, 61, 65, 55, 60, 64, 56, 18, 22, 14, 32, 36, 28, 33, 37, 29, 128, 129, 122, 133, 132, 126, 131, 129, 123, 153, 152, 145, 130, 128, 122, 130, 128, 122, 130, 129, 120, 127, 134, 120, 130, 132, 120, 134, 134, 123, 128, 130, 118, 119, 119, 107, 103, 102, 93, 72, 74, 64, 102, 104, 94, 148, 149, 142, 51, 52, 45, 44, 45, 38, 47, 48, 41, 79, 80, 75, 52, 53, 48, 55, 56, 51, 69, 69, 65, 0, 0, 0, 77, 78, 71, 138, 137, 128, 133, 132, 126, 145, 143, 137, 131, 133, 126, 134, 135, 128, 136, 137, 132, 132, 135, 132, 124, 127, 124, 132, 135, 134, 131, 133, 133, 129, 131, 130, 135, 135, 135, 135, 135, 135, 133, 133, 133, 128, 129, 131, 127, 128, 132, 132, 134, 138, 133, 135, 139, 135, 136, 138, 125, 127, 131, 125, 127, 131, 129, 131, 132, 129, 129, 131, 129, 131, 132, 131, 133, 135, 129, 131, 130, 128, 130, 127, 125, 125, 121, 114, 115, 110, 129, 130, 125, 118, 118, 114, 119, 120, 115, 119, 120, 115, 122, 123, 118, 120, 121, 116, 135, 134, 128, 126, 125, 119, 0, 0, 0, 0, 0, 0, 84, 84, 72, 91, 92, 74, 102, 100, 83, 112, 112, 96, 69, 69, 53, 147, 146, 128, 144, 144, 128, 149, 149, 138, 131, 133, 124, 133, 134, 127, 125, 126, 119, 120, 119, 115, 123, 121, 119, 125, 123, 121, 119, 120, 115, 133, 133, 129, 116, 117, 112, 13, 12, 8, 56, 57, 50, 0, 0, 0, 12, 11, 2, 0, 0, 0, 59, 57, 51, 44, 45, 40, 94, 91, 90, 144, 144, 144, 140, 138, 138, 136, 136, 138, 131, 131, 133, 134, 133, 136, 111, 113, 115, 125, 127, 129, 124, 128, 129, 114, 119, 120, 116, 120, 121, 118, 123, 121, 115, 118, 112, 26, 30, 22, 0, 0, 0, 52, 54, 44, 55, 56, 49, 88, 90, 82, 49, 50, 43, 108, 111, 103, 123, 126, 123, 131, 133, 133, 117, 119, 121, 119, 123, 124, 120, 124, 127, 123, 126, 132, 124, 127, 135, 120, 124, 131, 126, 129, 137, 117, 120, 128, 126, 130, 133, 68, 71, 70, 0, 0, 0, 55, 53, 51, 21, 21, 19, 59, 60, 57, 37, 37, 37, 52, 52, 52, 122, 124, 125, 117, 119, 123, 128, 132, 135, 134, 138, 141, 135, 139, 142, 132, 135, 141, 128, 132, 135, 129, 133, 137, 126, 130, 133, 119, 123, 126, 117, 122, 118, 53, 57, 49, 14, 17, 9, 0, 0, 0, 44, 45, 38, 30, 31, 28, 94, 95, 90, 130, 131, 128, 123, 125, 125, 129, 129, 129, 128, 128, 130, 133, 132, 135, 127, 128, 132, 127, 128, 132, 124, 126, 128, 124, 126, 130, 121, 122, 126, 120, 122, 121, 47, 51, 43, 71, 72, 65, 0, 0, 0, 0, 0, 0, 42, 43, 36, 36, 39, 31, 22, 25, 19, 116, 119, 116, 122, 125, 121, 121, 123, 120, 116, 118, 118, 129, 131, 130, 114, 116, 115, 111, 113, 115, 109, 111, 113, 100, 101, 105, 99, 100, 102, 100, 102, 101, 110, 113, 110, 80, 81, 74, 0, 0, 0, 0, 0, 0, 17, 19, 11, 12, 12, 8, 12, 12, 8, 106, 107, 102, 120, 121, 116, 113, 114, 109, 112, 112, 110, 111, 111, 109, 106, 106, 104, 100, 102, 99, 111, 111, 111, 109, 110, 107, 103, 106, 105, 104, 104, 104, 97, 100, 97, 51, 52, 49, 1, 2, 0, 0, 0, 0, 5, 9, 3, 35, 38, 32, 14, 17, 11, 0, 0, 0, 118, 121, 116, 125, 128, 123, 117, 120, 115, 113, 116, 110, 109, 112, 107, 111, 114, 109, 97, 100, 97, 103, 106, 103, 103, 106, 103, 108, 111, 107, 95, 98, 95, 86, 89, 83, 66, 67, 60, 3, 5, 0, 121, 121, 112, 141, 140, 132, 146, 145, 136, 148, 147, 139, 119, 118, 110, 0, 0, 0, 30, 32, 22, 46, 50, 42, 35, 38, 28, 22, 25, 17, 25, 29, 21, 40, 44, 36, 138, 136, 130, 148, 147, 141, 135, 134, 128, 134, 133, 127, 134, 133, 125, 130, 129, 120, 130, 129, 120, 78, 75, 64, 71, 71, 60, 78, 78, 67, 74, 76, 64, 78, 80, 68, 74, 76, 64, 107, 109, 99, 87, 89, 79, 93, 95, 85, 81, 83, 73, 55, 56, 49, 58, 59, 52, 57, 58, 51, 52, 53, 48, 38, 41, 34, 0, 0, 0, 0, 0, 0, 130, 129, 120, 134, 135, 128, 130, 132, 124, 135, 136, 129, 125, 124, 117, 137, 138, 133, 131, 132, 128, 130, 131, 128, 137, 139, 138, 121, 123, 122, 131, 133, 133, 124, 126, 126, 124, 126, 126, 132, 135, 134, 131, 133, 133, 129, 131, 132, 125, 127, 129, 124, 126, 128, 130, 131, 135, 123, 125, 127, 137, 139, 140, 125, 127, 129, 129, 131, 132, 133, 132, 135, 125, 127, 129, 129, 131, 132, 128, 129, 131, 123, 125, 125, 118, 121, 118, 121, 121, 119, 123, 124, 121, 127, 127, 125, 133, 133, 129, 130, 131, 126, 120, 121, 116, 124, 122, 118, 125, 126, 119, 133, 132, 126, 0, 0, 0, 40, 39, 28, 59, 58, 47, 82, 81, 70, 88, 85, 75, 43, 43, 30, 77, 77, 64, 53, 50, 40, 53, 52, 41, 49, 49, 38, 53, 52, 41, 60, 59, 48, 43, 43, 30, 59, 58, 45, 63, 60, 49, 74, 73, 62, 50, 49, 43, 57, 57, 48, 67, 66, 57, 61, 60, 51, 45, 44, 35, 0, 0, 0, 60, 59, 50, 5, 4, 0, 54, 53, 44, 132, 131, 122, 62, 61, 52, 73, 72, 63, 73, 71, 65, 69, 68, 62, 70, 69, 63, 60, 62, 54, 52, 54, 46, 57, 58, 51, 48, 52, 44, 61, 65, 57, 61, 65, 57, 67, 71, 63, 73, 76, 68, 7, 10, 2, 0, 0, 0, 52, 54, 44, 37, 39, 29, 79, 81, 71, 56, 57, 48, 59, 61, 51, 72, 74, 64, 65, 66, 59, 76, 80, 72, 92, 93, 86, 81, 85, 77, 102, 106, 98, 118, 118, 114, 108, 109, 104, 111, 111, 109, 101, 102, 97, 83, 83, 81, 10, 11, 8, 0, 0, 0, 27, 27, 25, 27, 28, 23, 45, 46, 41, 45, 46, 41, 95, 96, 91, 88, 91, 88, 76, 79, 76, 100, 102, 101, 115, 117, 116, 138, 140, 140, 135, 137, 136, 163, 165, 162, 138, 140, 140, 136, 138, 135, 128, 131, 125, 132, 135, 130, 38, 40, 32, 42, 43, 36, 0, 0, 0, 13, 14, 7, 37, 38, 31, 105, 106, 99, 138, 140, 132, 150, 151, 144, 137, 139, 131, 137, 139, 131, 140, 139, 132, 140, 138, 134, 133, 131, 128, 123, 121, 117, 125, 126, 119, 104, 105, 98, 114, 116, 106, 40, 41, 32, 95, 97, 89, 0, 0, 0, 7, 10, 2, 43, 44, 37, 23, 24, 17, 51, 52, 45, 74, 76, 68, 116, 115, 106, 121, 121, 112, 125, 126, 117, 120, 119, 111, 114, 114, 103, 105, 106, 97, 98, 99, 92, 83, 87, 81, 71, 74, 66, 64, 65, 58, 73, 74, 67, 55, 54, 46, 0, 0, 0, 0, 1, 0, 8, 9, 2, 17, 19, 11, 37, 38, 31, 58, 59, 52, 63, 64, 57, 62, 63, 56, 59, 61, 53, 49, 50, 45, 53, 54, 49, 52, 54, 46, 49, 50, 43, 51, 52, 45, 52, 54, 46, 63, 64, 57, 55, 56, 51, 56, 57, 52, 48, 49, 44, 0, 0, 0, 0, 0, 0, 30, 33, 27, 11, 14, 9, 110, 114, 106, 45, 48, 41, 52, 55, 48, 52, 55, 48, 45, 49, 39, 48, 52, 44, 55, 56, 47, 42, 45, 37, 53, 56, 51, 51, 54, 48, 53, 56, 51, 61, 65, 57, 59, 63, 52, 40, 44, 34, 35, 36, 27, 126, 125, 117, 144, 143, 134, 140, 139, 130, 145, 144, 135, 131, 130, 121, 0, 0, 0, 0, 2, 0, 48, 52, 42, 23, 25, 15, 28, 31, 23, 15, 17, 7, 102, 104, 94, 77, 76, 68, 88, 85, 77, 83, 84, 75, 90, 89, 80, 85, 85, 76, 92, 92, 81, 77, 77, 65, 75, 73, 60, 89, 87, 74, 72, 69, 59, 70, 70, 59, 74, 76, 64, 72, 74, 62, 64, 66, 54, 88, 90, 78, 65, 67, 55, 98, 99, 90, 48, 49, 42, 53, 57, 49, 70, 71, 64, 59, 62, 54, 31, 35, 27, 0, 0, 0, 94, 96, 88, 116, 118, 110, 131, 133, 126, 123, 125, 117, 140, 141, 134, 143, 144, 137, 133, 133, 131, 136, 136, 134, 128, 130, 127, 122, 125, 121, 131, 133, 133, 133, 136, 135, 136, 138, 137, 139, 141, 141, 138, 140, 140, 137, 139, 140, 131, 133, 135, 127, 128, 130, 129, 131, 132, 135, 136, 138, 136, 138, 139, 137, 139, 140, 125, 127, 129, 127, 128, 132, 137, 137, 139, 128, 129, 131, 125, 127, 129, 157, 157, 159, 120, 120, 120, 119, 119, 117, 127, 127, 125, 123, 124, 121, 128, 128, 126, 125, 125, 123, 133, 133, 129, 120, 121, 116, 123, 124, 119, 119, 120, 115, 127, 126, 120, 0, 0, 0, 0, 0, 0, 83, 83, 71, 86, 83, 70, 155, 152, 141, 53, 50, 40, 50, 47, 34, 54, 52, 41, 61, 60, 49, 43, 43, 32, 52, 51, 40, 53, 53, 39, 234, 231, 218, 162, 162, 149, 143, 140, 128, 54, 53, 42, 66, 65, 56, 59, 58, 49, 56, 55, 47, 62, 61, 52, 6, 5, 0, 0, 0, 0, 38, 37, 28, 47, 46, 37, 42, 42, 31, 81, 80, 69, 66, 65, 56, 56, 55, 47, 73, 72, 63, 63, 62, 54, 57, 57, 48, 123, 122, 113, 109, 111, 101, 109, 111, 101, 71, 73, 63, 68, 72, 62, 53, 57, 47, 74, 78, 68, 69, 73, 65, 17, 21, 13, 0, 0, 0, 56, 57, 48, 42, 43, 34, 59, 61, 51, 131, 133, 124, 78, 80, 70, 72, 74, 64, 78, 80, 70, 77, 78, 69, 72, 74, 64, 88, 90, 80, 81, 83, 73, 90, 91, 82, 68, 72, 64, 73, 76, 68, 67, 69, 62, 70, 71, 66, 64, 65, 60, 49, 50, 45, 30, 31, 26, 27, 28, 23, 53, 55, 48, 47, 48, 41, 106, 107, 102, 77, 78, 73, 65, 68, 62, 50, 53, 47, 66, 69, 64, 66, 69, 64, 68, 71, 66, 67, 71, 63, 61, 64, 59, 59, 62, 54, 64, 67, 59, 64, 65, 60, 50, 51, 44, 12, 13, 6, 9, 10, 3, 6, 7, 0, 2, 4, 0, 131, 130, 121, 78, 80, 70, 81, 80, 71, 70, 71, 62, 77, 76, 68, 84, 83, 75, 83, 83, 71, 87, 86, 75, 82, 81, 70, 84, 84, 72, 81, 83, 71, 62, 64, 52, 81, 83, 71, 58, 60, 50, 0, 0, 0, 3, 7, 0, 31, 33, 23, 8, 10, 0, 122, 124, 114, 65, 67, 55, 76, 77, 68, 82, 81, 70, 75, 74, 63, 84, 84, 72, 88, 87, 76, 78, 78, 67, 71, 73, 61, 73, 75, 65, 69, 70, 61, 66, 68, 58, 67, 69, 62, 48, 49, 40, 17, 19, 11, 0, 0, 0, 0, 0, 0, 7, 8, 1, 91, 92, 85, 66, 67, 60, 63, 62, 54, 63, 62, 54, 61, 60, 51, 96, 95, 86, 62, 61, 52, 67, 66, 57, 77, 79, 67, 58, 60, 50, 65, 67, 57, 64, 66, 56, 58, 60, 50, 74, 76, 68, 66, 67, 62, 0, 0, 0, 7, 10, 4, 9, 12, 4, 30, 33, 27, 35, 38, 32, 55, 59, 51, 55, 59, 51, 55, 59, 51, 57, 61, 50, 57, 61, 50, 56, 57, 48, 57, 59, 49, 57, 61, 50, 59, 61, 51, 54, 58, 48, 59, 63, 52, 46, 50, 40, 60, 62, 52, 88, 87, 78, 102, 101, 92, 146, 145, 136, 149, 148, 140, 147, 148, 139, 141, 140, 132, 70, 69, 61, 0, 0, 0, 22, 26, 15, 35, 34, 26, 34, 33, 25, 128, 128, 119, 67, 64, 54, 77, 76, 68, 87, 86, 77, 78, 78, 69, 75, 74, 63, 80, 79, 70, 78, 78, 67, 81, 80, 69, 88, 81, 69, 69, 62, 51, 138, 135, 125, 255, 255, 243, 66, 69, 54, 72, 74, 62, 76, 76, 64, 74, 76, 64, 67, 69, 57, 109, 111, 101, 144, 146, 136, 59, 61, 51, 60, 64, 56, 38, 40, 32, 17, 19, 11, 40, 41, 34, 111, 112, 105, 122, 123, 116, 131, 133, 126, 141, 142, 135, 141, 142, 135, 133, 133, 129, 132, 135, 132, 130, 131, 128, 141, 141, 139, 133, 136, 133, 121, 123, 122, 132, 135, 134, 129, 131, 130, 132, 135, 134, 139, 141, 141, 137, 139, 140, 130, 132, 133, 135, 136, 138, 135, 136, 138, 127, 128, 130, 135, 136, 140, 125, 127, 129, 124, 126, 128, 125, 127, 131, 131, 131, 133, 128, 129, 131, 129, 131, 132, 127, 128, 130, 126, 125, 128, 129, 129, 129, 119, 119, 119, 126, 126, 126, 127, 127, 125, 139, 137, 135, 128, 126, 125, 128, 126, 125, 124, 122, 118, 120, 119, 115, 140, 139, 132, 13, 12, 4, 0, 0, 0, 59, 56, 46, 93, 90, 78, 32, 30, 17, 43, 40, 27, 50, 47, 36, 74, 68, 59, 57, 54, 43, 54, 52, 41, 53, 50, 40, 56, 53, 40, 217, 215, 202, 255, 255, 245, 253, 252, 241, 64, 64, 53, 62, 61, 52, 66, 65, 56, 67, 66, 57, 54, 53, 44, 48, 48, 36, 42, 42, 31, 10, 9, 0, 73, 72, 61, 94, 93, 82, 59, 58, 49, 71, 71, 62, 62, 61, 52, 55, 54, 46, 63, 62, 54, 62, 61, 52, 202, 204, 194, 60, 62, 52, 223, 225, 216, 65, 69, 58, 61, 65, 55, 60, 64, 56, 68, 72, 64, 60, 64, 56, 60, 64, 56, 1, 3, 0, 37, 39, 29, 44, 46, 36, 38, 40, 30, 81, 83, 73, 70, 71, 62, 70, 71, 64, 66, 68, 58, 69, 70, 61, 72, 74, 64, 249, 251, 241, 176, 177, 168, 255, 255, 254, 65, 69, 58, 66, 69, 62, 62, 66, 56, 76, 80, 70, 69, 70, 63, 60, 62, 54, 9, 10, 3, 30, 31, 24, 38, 40, 32, 118, 119, 112, 76, 77, 70, 65, 66, 61, 65, 68, 62, 62, 62, 58, 62, 65, 60, 46, 50, 42, 210, 214, 206, 206, 210, 199, 106, 109, 99, 54, 58, 50, 64, 65, 58, 62, 63, 56, 67, 69, 62, 51, 52, 45, 3, 5, 0, 21, 22, 15, 77, 76, 68, 82, 81, 72, 75, 74, 65, 76, 76, 64, 71, 71, 60, 83, 83, 69, 226, 226, 213, 167, 167, 153, 178, 178, 165, 240, 240, 226, 66, 69, 54, 74, 76, 64, 73, 75, 63, 79, 81, 69, 64, 66, 54, 0, 0, 0, 0, 0, 0, 23, 27, 16, 44, 48, 37, 69, 70, 61, 76, 77, 68, 74, 73, 64, 78, 78, 67, 72, 74, 62, 239, 238, 227, 170, 170, 159, 159, 158, 147, 148, 148, 136, 62, 63, 54, 63, 64, 55, 73, 74, 67, 69, 70, 63, 72, 74, 64, 66, 67, 60, 0, 0, 0, 0, 0, 0, 69, 70, 61, 52, 54, 44, 53, 55, 46, 59, 58, 49, 70, 69, 61, 41, 40, 32, 189, 188, 179, 131, 130, 121, 71, 71, 62, 158, 157, 146, 64, 64, 55, 50, 52, 42, 50, 51, 44, 55, 56, 47, 70, 71, 64, 77, 78, 73, 0, 0, 0, 17, 20, 15, 14, 17, 9, 107, 110, 104, 47, 50, 45, 48, 52, 44, 48, 52, 44, 61, 65, 57, 44, 47, 39, 57, 61, 50, 37, 41, 30, 59, 62, 54, 55, 59, 49, 55, 59, 49, 55, 56, 47, 74, 78, 68, 59, 61, 51, 59, 61, 51, 76, 77, 68, 33, 32, 23, 135, 135, 126, 131, 130, 119, 148, 149, 140, 183, 182, 174, 87, 86, 77, 0, 0, 0, 20, 21, 12, 21, 20, 12, 53, 50, 40, 60, 59, 48, 80, 79, 68, 76, 75, 66, 67, 69, 57, 66, 68, 56, 74, 73, 62, 73, 72, 61, 65, 67, 55, 73, 75, 63, 91, 86, 72, 61, 59, 44, 166, 164, 151, 102, 99, 89, 77, 74, 63, 71, 71, 60, 81, 80, 69, 70, 70, 59, 76, 77, 68, 66, 68, 56, 83, 85, 72, 94, 98, 87, 59, 61, 51, 0, 0, 0, 0, 0, 0, 153, 154, 147, 115, 116, 109, 118, 119, 112, 130, 132, 124, 131, 133, 126, 130, 133, 128, 138, 139, 134, 137, 138, 135, 141, 141, 139, 130, 133, 129, 136, 138, 135, 137, 140, 136, 131, 133, 133, 136, 138, 137, 135, 137, 136, 132, 135, 134, 136, 138, 139, 128, 129, 131, 137, 139, 140, 132, 134, 136, 153, 155, 157, 125, 127, 129, 127, 128, 130, 125, 127, 129, 125, 127, 129, 131, 133, 135, 130, 132, 133, 129, 131, 132, 123, 125, 127, 123, 123, 125, 126, 126, 126, 130, 130, 130, 120, 120, 120, 128, 128, 128, 126, 124, 123, 118, 116, 114, 123, 121, 119, 144, 142, 138, 131, 129, 125, 151, 153, 145, 41, 42, 33, 0, 0, 0, 91, 91, 80, 162, 162, 151, 58, 55, 45, 64, 61, 50, 37, 34, 24, 56, 53, 42, 58, 55, 45, 54, 52, 41, 67, 64, 54, 52, 51, 40, 49, 49, 36, 48, 50, 36, 58, 60, 48, 55, 55, 43, 44, 46, 34, 60, 62, 52, 60, 59, 50, 56, 55, 47, 67, 66, 57, 33, 32, 23, 0, 0, 0, 47, 46, 35, 113, 113, 102, 61, 58, 50, 57, 57, 48, 61, 60, 51, 61, 60, 51, 56, 55, 47, 53, 52, 43, 85, 87, 77, 64, 66, 56, 50, 54, 43, 61, 65, 55, 51, 54, 46, 58, 61, 53, 55, 59, 51, 29, 33, 22, 29, 32, 24, 8, 9, 2, 0, 0, 0, 38, 40, 30, 133, 134, 125, 58, 59, 52, 65, 67, 57, 66, 68, 58, 67, 69, 60, 80, 82, 72, 58, 60, 50, 229, 231, 221, 232, 233, 226, 248, 249, 242, 75, 79, 71, 72, 76, 65, 69, 70, 61, 63, 64, 57, 63, 64, 57, 53, 55, 48, 0, 0, 0, 28, 29, 22, 10, 12, 4, 92, 93, 86, 45, 47, 39, 57, 58, 53, 55, 59, 51, 56, 57, 50, 51, 54, 46, 51, 55, 44, 157, 161, 150, 220, 223, 213, 96, 100, 90, 79, 82, 74, 52, 55, 48, 60, 64, 56, 51, 52, 45, 59, 61, 51, 5, 6, 0, 31, 33, 23, 118, 117, 108, 61, 60, 51, 67, 66, 55, 82, 81, 70, 70, 69, 61, 77, 77, 65, 234, 234, 221, 69, 69, 55, 222, 221, 208, 232, 232, 218, 66, 68, 56, 81, 83, 71, 76, 77, 68, 70, 71, 62, 80, 82, 72, 50, 52, 42, 0, 0, 0, 14, 17, 7, 111, 115, 105, 69, 70, 61, 59, 61, 51, 55, 57, 45, 61, 60, 49, 54, 53, 42, 174, 173, 162, 71, 71, 60, 64, 64, 53, 61, 60, 49, 69, 68, 60, 63, 64, 55, 86, 88, 78, 71, 73, 63, 76, 77, 68, 69, 70, 61, 0, 0, 0, 0, 0, 0, 64, 66, 56, 61, 60, 51, 54, 53, 44, 55, 54, 46, 61, 60, 51, 73, 72, 63, 35, 34, 26, 94, 93, 82, 124, 124, 110, 41, 41, 29, 50, 52, 42, 41, 42, 33, 47, 48, 41, 40, 41, 32, 44, 45, 38, 64, 65, 58, 0, 0, 0, 0, 2, 0, 118, 124, 117, 37, 40, 32, 52, 55, 49, 58, 61, 53, 51, 54, 46, 52, 55, 48, 50, 54, 43, 36, 40, 29, 62, 66, 56, 59, 63, 52, 55, 59, 49, 47, 51, 41, 65, 67, 57, 57, 61, 50, 62, 63, 56, 67, 69, 60, 71, 73, 63, 11, 10, 1, 125, 124, 115, 133, 132, 124, 144, 146, 136, 147, 146, 137, 117, 116, 107, 0, 0, 0, 37, 39, 29, 33, 30, 22, 72, 69, 59, 77, 74, 63, 63, 60, 49, 73, 72, 61, 68, 67, 58, 66, 65, 54, 66, 65, 54, 73, 72, 61, 75, 74, 63, 64, 64, 53, 97, 97, 83, 67, 67, 53, 97, 96, 85, 68, 68, 54, 71, 71, 58, 67, 69, 57, 80, 82, 70, 58, 60, 48, 58, 62, 49, 72, 76, 65, 64, 68, 55, 91, 92, 83, 31, 35, 25, 0, 0, 0, 72, 75, 67, 81, 83, 73, 122, 123, 116, 136, 137, 130, 120, 121, 114, 129, 132, 124, 139, 142, 137, 131, 134, 129, 140, 143, 140, 127, 129, 126, 128, 130, 127, 139, 142, 139, 125, 128, 125, 131, 133, 133, 132, 135, 134, 138, 140, 140, 129, 129, 129, 133, 132, 135, 141, 140, 143, 141, 140, 143, 136, 136, 138, 135, 135, 137, 133, 132, 135, 134, 133, 138, 129, 131, 132, 128, 129, 131, 129, 131, 132, 128, 129, 131, 131, 133, 135, 125, 127, 129, 127, 128, 130, 125, 127, 129, 129, 129, 129, 130, 130, 130, 126, 126, 126, 126, 124, 125, 134, 132, 131, 131, 132, 129, 131, 129, 125, 130, 128, 124, 126, 125, 121, 65, 66, 59, 0, 0, 0, 75, 74, 65, 51, 53, 41, 60, 59, 48, 41, 41, 29, 40, 40, 26, 46, 44, 31, 65, 62, 52, 49, 46, 35, 80, 77, 67, 64, 64, 51, 81, 81, 67, 57, 59, 45, 55, 57, 45, 67, 69, 60, 57, 59, 49, 42, 43, 34, 47, 48, 39, 54, 53, 44, 53, 55, 43, 37, 39, 29, 0, 0, 0, 85, 87, 77, 43, 45, 33, 53, 52, 41, 57, 57, 48, 52, 51, 42, 50, 49, 43, 50, 51, 44, 45, 43, 37, 52, 54, 44, 38, 40, 30, 51, 55, 44, 55, 59, 49, 50, 54, 43, 57, 60, 52, 25, 29, 19, 42, 45, 37, 46, 50, 42, 48, 52, 44, 0, 0, 0, 50, 52, 42, 79, 81, 71, 67, 69, 60, 55, 56, 47, 55, 56, 47, 77, 78, 69, 50, 52, 42, 53, 55, 46, 64, 66, 56, 72, 74, 64, 73, 75, 65, 70, 71, 64, 78, 81, 71, 60, 64, 54, 58, 59, 52, 65, 66, 59, 47, 51, 43, 0, 0, 0, 27, 28, 21, 104, 105, 98, 53, 55, 48, 52, 54, 46, 50, 51, 46, 51, 52, 45, 60, 64, 56, 54, 58, 50, 51, 54, 46, 46, 50, 42, 48, 52, 42, 54, 58, 50, 62, 66, 58, 68, 72, 64, 44, 47, 39, 55, 59, 51, 66, 68, 58, 13, 14, 5, 122, 124, 114, 70, 71, 62, 80, 79, 70, 64, 64, 55, 61, 60, 49, 94, 93, 82, 69, 69, 57, 63, 63, 50, 59, 58, 45, 67, 67, 53, 64, 66, 52, 71, 73, 61, 77, 79, 67, 72, 74, 62, 77, 79, 67, 87, 89, 77, 63, 64, 57, 0, 0, 0, 10, 12, 2, 50, 54, 43, 62, 63, 54, 59, 61, 51, 63, 64, 55, 74, 76, 66, 57, 57, 48, 62, 62, 50, 62, 62, 50, 52, 51, 42, 61, 60, 49, 86, 88, 78, 55, 56, 47, 66, 68, 58, 60, 62, 52, 45, 47, 37, 64, 66, 56, 0, 0, 0, 108, 110, 100, 48, 47, 39, 50, 50, 41, 61, 60, 51, 56, 55, 47, 45, 44, 35, 55, 54, 46, 47, 48, 39, 54, 53, 44, 44, 46, 36, 36, 40, 27, 50, 52, 42, 51, 52, 45, 74, 76, 66, 67, 69, 60, 69, 70, 61, 58, 61, 53, 0, 0, 0, 38, 41, 34, 59, 64, 56, 44, 47, 39, 45, 48, 41, 39, 43, 33, 39, 43, 35, 40, 44, 36, 54, 58, 48, 51, 55, 44, 46, 50, 40, 44, 46, 36, 42, 45, 35, 55, 56, 47, 54, 58, 50, 57, 61, 50, 56, 57, 50, 63, 64, 55, 72, 74, 64, 0, 0, 0, 119, 118, 110, 129, 131, 121, 121, 123, 113, 146, 145, 136, 149, 148, 140, 3, 2, 0, 18, 17, 8, 117, 114, 104, 63, 59, 51, 70, 67, 56, 66, 63, 53, 68, 66, 55, 50, 50, 41, 67, 66, 57, 54, 53, 44, 64, 64, 55, 69, 69, 57, 64, 64, 53, 10, 14, 6, 35, 36, 27, 0, 0, 0, 2, 4, 0, 7, 9, 0, 3, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74, 76, 66, 93, 96, 88, 114, 117, 109, 122, 123, 116, 130, 133, 126, 130, 133, 128, 133, 139, 132, 133, 137, 131, 132, 135, 130, 131, 134, 131, 137, 140, 134, 132, 135, 132, 133, 136, 133, 144, 147, 143, 132, 135, 134, 135, 137, 136, 135, 135, 137, 126, 125, 128, 140, 139, 142, 137, 137, 139, 128, 128, 130, 143, 143, 145, 137, 137, 139, 131, 131, 133, 129, 129, 131, 131, 133, 135, 129, 131, 132, 125, 127, 129, 125, 127, 129, 130, 130, 132, 139, 141, 143, 121, 123, 124, 128, 129, 131, 128, 130, 129, 128, 128, 128, 128, 128, 128, 121, 121, 121, 127, 125, 124, 126, 126, 124, 131, 129, 125, 132, 130, 126, 130, 131, 126, 140, 140, 136, 0, 0, 0, 8, 9, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 3, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 16, 9, 12, 13, 6, 9, 11, 1, 10, 12, 2, 20, 21, 14, 15, 16, 9, 30, 31, 24, 16, 19, 11, 10, 14, 6, 26, 30, 22, 52, 55, 48, 45, 48, 41, 33, 37, 29, 26, 30, 22, 28, 31, 23, 33, 37, 29, 23, 26, 18, 0, 0, 0, 47, 51, 43, 31, 35, 27, 46, 49, 44, 51, 54, 46, 42, 45, 37, 43, 46, 38, 51, 54, 46, 53, 57, 49, 60, 64, 56, 61, 65, 57, 67, 71, 61, 53, 57, 49, 58, 60, 50, 76, 80, 70, 65, 69, 58, 42, 45, 35, 65, 66, 59, 6, 7, 0, 0, 0, 0, 35, 36, 29, 55, 56, 49, 50, 51, 44, 64, 65, 58, 58, 61, 53, 61, 65, 57, 59, 63, 52, 61, 65, 57, 55, 59, 49, 72, 76, 65, 62, 66, 56, 76, 80, 70, 45, 49, 39, 51, 54, 46, 59, 63, 52, 65, 69, 58, 12, 13, 4, 85, 87, 77, 55, 56, 47, 64, 64, 55, 52, 51, 42, 63, 62, 54, 75, 74, 65, 66, 65, 56, 53, 55, 43, 56, 58, 46, 56, 58, 46, 57, 61, 48, 58, 60, 48, 66, 68, 58, 53, 55, 46, 53, 55, 46, 62, 63, 54, 52, 55, 48, 0, 0, 0, 82, 86, 76, 45, 48, 41, 45, 48, 41, 35, 38, 30, 26, 30, 20, 45, 47, 39, 31, 29, 23, 48, 47, 39, 35, 34, 26, 16, 15, 6, 20, 21, 12, 17, 19, 9, 20, 19, 11, 27, 28, 19, 13, 12, 4, 6, 7, 0, 0, 0, 0, 0, 0, 0, 16, 18, 8, 24, 26, 16, 10, 12, 2, 9, 11, 1, 12, 11, 4, 0, 0, 0, 0, 0, 0, 4, 3, 0, 0, 0, 0, 90, 69, 60, 3, 0, 0, 39, 36, 28, 2, 0, 0, 0, 0, 0, 0, 0, 0, 4, 7, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 7, 0, 1, 4, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 8, 11, 3, 2, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 105, 96, 135, 137, 127, 122, 124, 114, 132, 131, 122, 152, 151, 142, 59, 58, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 130, 115, 113, 112, 104, 125, 128, 123, 112, 120, 110, 111, 117, 108, 118, 119, 110, 124, 123, 114, 127, 126, 120, 112, 111, 105, 108, 106, 100, 130, 128, 122, 113, 114, 105, 113, 112, 104, 108, 106, 100, 114, 115, 108, 127, 128, 121, 127, 130, 122, 136, 139, 131, 129, 132, 126, 127, 133, 126, 131, 136, 130, 126, 132, 125, 132, 135, 130, 129, 131, 128, 135, 137, 134, 130, 133, 129, 132, 135, 132, 134, 134, 134, 127, 127, 127, 123, 123, 123, 130, 130, 130, 141, 141, 141, 129, 129, 131, 127, 127, 129, 140, 139, 142, 134, 133, 136, 135, 135, 137, 134, 133, 136, 136, 136, 138, 128, 129, 131, 177, 176, 179, 125, 124, 127, 136, 138, 139, 128, 128, 130, 118, 120, 122, 132, 134, 136, 126, 125, 128, 126, 126, 126, 126, 126, 126, 120, 120, 120, 137, 134, 135, 127, 127, 127, 129, 129, 129, 125, 123, 121, 119, 119, 117, 144, 147, 143, 122, 125, 121, 133, 136, 135, 107, 107, 107, 92, 93, 88, 89, 87, 83, 103, 102, 93, 106, 105, 99, 92, 91, 85, 111, 110, 103, 109, 107, 101, 135, 134, 130, 102, 100, 94, 115, 116, 109, 112, 113, 108, 108, 109, 102, 86, 87, 82, 108, 109, 102, 111, 109, 105, 124, 122, 118, 119, 119, 117, 136, 136, 134, 131, 133, 135, 121, 123, 124, 107, 108, 105, 102, 105, 100, 96, 100, 92, 97, 98, 91, 81, 82, 77, 85, 86, 81, 67, 70, 65, 66, 69, 64, 67, 70, 65, 55, 56, 51, 56, 57, 52, 39, 42, 37, 47, 48, 41, 38, 41, 34, 23, 26, 18, 40, 44, 36, 52, 55, 49, 0, 1, 0, 9, 12, 8, 8, 10, 7, 29, 34, 33, 3, 6, 3, 0, 0, 0, 21, 26, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 4, 0, 0, 1, 0, 9, 12, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 0, 16, 17, 10, 8, 11, 3, 0, 3, 0, 5, 9, 3, 14, 17, 9, 0, 0, 0, 2, 5, 0, 0, 0, 0, 5, 9, 1, 0, 2, 0, 7, 10, 4, 7, 10, 4, 29, 32, 26, 17, 18, 13, 26, 29, 24, 17, 20, 15, 19, 23, 15, 27, 28, 23, 33, 33, 29, 50, 51, 44, 66, 68, 58, 51, 53, 43, 52, 54, 44, 66, 68, 58, 65, 67, 57, 98, 99, 92, 100, 101, 94, 95, 96, 91, 97, 97, 93, 113, 114, 107, 94, 96, 88, 81, 83, 73, 78, 79, 72, 77, 78, 69, 94, 92, 86, 95, 96, 91, 92, 92, 90, 90, 90, 88, 71, 71, 69, 69, 74, 72, 86, 86, 86, 83, 83, 83, 81, 81, 81, 92, 92, 92, 101, 103, 102, 103, 107, 108, 116, 120, 121, 109, 116, 118, 96, 103, 103, 72, 79, 79, 77, 84, 81, 77, 82, 80, 85, 90, 88, 76, 81, 79, 78, 83, 81, 98, 103, 101, 95, 100, 96, 93, 98, 97, 76, 81, 77, 76, 81, 77, 93, 95, 92, 80, 82, 81, 109, 111, 113, 128, 128, 126, 129, 129, 127, 142, 143, 136, 140, 144, 136, 140, 141, 134, 136, 137, 130, 129, 131, 121, 137, 136, 127, 138, 137, 128, 140, 139, 130, 132, 131, 122, 121, 118, 110, 152, 149, 139, 125, 123, 110, 124, 122, 109, 137, 132, 121, 134, 131, 116, 115, 110, 98, 127, 124, 113, 131, 128, 118, 131, 128, 120, 123, 120, 112, 97, 97, 93, 121, 122, 117, 93, 99, 95, 88, 96, 93, 91, 98, 95, 96, 100, 101, 103, 107, 108, 116, 118, 120, 128, 129, 133, 94, 96, 97, 125, 125, 123, 126, 126, 124, 120, 121, 114, 122, 123, 116, 133, 134, 127, 142, 145, 139, 127, 133, 126, 125, 130, 124, 124, 129, 123, 126, 132, 125, 125, 128, 123, 121, 124, 118, 131, 134, 131, 134, 135, 130, 128, 128, 126, 135, 135, 133, 140, 140, 140, 134, 134, 134, 127, 127, 127, 134, 133, 136, 126, 125, 128, 128, 128, 128, 131, 131, 133, 176, 175, 178, 135, 135, 137, 131, 131, 133, 127, 127, 129, 125, 124, 127, 129, 129, 131, 138, 140, 142, 139, 141, 143, 124, 126, 128, 135, 135, 137, 117, 119, 121, 117, 119, 123, 123, 125, 127, 119, 118, 121, 125, 124, 127, 120, 119, 122, 135, 135, 137, 127, 127, 129, 121, 121, 123, 129, 129, 131, 121, 121, 121, 118, 117, 120, 130, 132, 133, 121, 122, 126, 124, 126, 130, 118, 120, 124, 111, 113, 117, 109, 111, 115, 109, 111, 115, 120, 119, 124, 118, 117, 122, 114, 115, 119, 108, 109, 113, 107, 108, 112, 119, 118, 123, 107, 108, 112, 107, 108, 112, 100, 100, 102, 127, 125, 124, 121, 121, 119, 123, 121, 119, 125, 123, 121, 133, 133, 133, 135, 135, 137, 51, 52, 56, 130, 131, 139, 128, 129, 135, 130, 131, 139, 128, 128, 137, 123, 124, 132, 115, 116, 124, 109, 110, 119, 109, 110, 117, 107, 111, 117, 103, 106, 112, 99, 103, 106, 101, 103, 104, 97, 100, 99, 123, 124, 121, 130, 132, 124, 116, 117, 112, 142, 143, 138, 161, 161, 157, 137, 139, 131, 31, 34, 31, 144, 146, 147, 139, 141, 143, 138, 140, 144, 136, 137, 141, 129, 133, 137, 125, 127, 131, 116, 120, 123, 119, 123, 128, 116, 119, 125, 113, 116, 124, 119, 122, 130, 114, 118, 124, 99, 104, 104, 136, 139, 133, 135, 136, 129, 143, 144, 137, 137, 138, 133, 138, 140, 132, 105, 106, 101, 111, 114, 111, 104, 107, 106, 102, 105, 102, 109, 111, 111, 114, 116, 115, 132, 135, 130, 117, 120, 115, 104, 107, 104, 111, 114, 111, 106, 108, 105, 110, 113, 108, 104, 107, 102, 133, 133, 129, 137, 138, 133, 138, 140, 132, 136, 137, 130, 123, 125, 117, 123, 125, 117, 81, 82, 77, 99, 99, 97, 114, 114, 112, 109, 109, 109, 111, 111, 111, 106, 108, 107, 118, 121, 120, 102, 104, 104, 96, 98, 100, 103, 105, 107, 102, 104, 104, 111, 113, 115, 103, 105, 107, 136, 138, 139, 135, 137, 136, 129, 131, 130, 113, 115, 112, 120, 120, 118, 123, 126, 123, 86, 88, 87, 101, 103, 102, 113, 114, 116, 102, 104, 106, 102, 104, 106, 101, 103, 104, 110, 112, 114, 99, 100, 104, 130, 131, 135, 103, 105, 109, 99, 100, 106, 88, 90, 94, 99, 100, 104, 132, 135, 134, 125, 125, 121, 104, 104, 102, 107, 108, 103, 113, 112, 108, 97, 97, 93, 28, 28, 26, 124, 126, 126, 124, 128, 129, 125, 129, 132, 124, 128, 131, 123, 127, 130, 124, 127, 133, 128, 132, 137, 124, 127, 133, 116, 122, 127, 120, 126, 130, 121, 127, 134, 120, 125, 132, 122, 130, 136, 128, 133, 141, 123, 129, 136, 115, 121, 128, 123, 129, 134, 121, 127, 132, 114, 120, 125, 119, 125, 129, 113, 119, 124, 110, 116, 121, 116, 122, 127, 117, 120, 128, 113, 117, 122, 113, 117, 122, 109, 112, 118, 114, 118, 124, 113, 117, 122, 108, 110, 111, 113, 118, 114, 85, 88, 80, 137, 140, 132, 134, 135, 128, 136, 137, 130, 136, 137, 130, 137, 136, 127, 134, 133, 127, 117, 114, 106, 151, 148, 140, 146, 143, 135, 143, 140, 132, 153, 151, 140, 165, 160, 153, 38, 35, 27, 123, 119, 116, 98, 96, 93, 116, 112, 109, 121, 117, 114, 126, 119, 117, 116, 117, 114, 86, 86, 86, 90, 94, 95, 84, 90, 90, 88, 92, 93, 93, 95, 96, 96, 98, 100, 97, 99, 103, 96, 98, 102, 90, 92, 98, 132, 134, 138, 51, 52, 58, 128, 130, 129, 131, 132, 129, 125, 128, 123, 131, 134, 129, 119, 125, 118, 118, 123, 119, 119, 125, 118, 121, 127, 123, 113, 118, 114, 118, 124, 117, 128, 130, 127, 130, 133, 128, 122, 125, 121, 130, 131, 128, 123, 123, 123, 134, 134, 134, 130, 130, 130, 129, 129, 129, 125, 125, 125, 133, 133, 133, 133, 132, 135, 134, 133, 136, 126, 125, 128, 129, 128, 133, 127, 126, 131, 131, 131, 135, 126, 125, 128, 131, 131, 133, 133, 132, 135, 138, 138, 140, 121, 123, 124, 115, 116, 120, 116, 118, 122, 115, 116, 120, 116, 118, 122, 108, 109, 113, 117, 121, 124, 120, 124, 127, 112, 116, 119, 98, 102, 105, 104, 108, 111, 102, 106, 109, 102, 106, 109, 98, 102, 105, 97, 101, 104, 100, 104, 110, 107, 108, 114, 101, 102, 108, 102, 103, 112, 96, 97, 106, 95, 96, 105, 97, 98, 107, 101, 102, 110, 106, 106, 115, 106, 107, 113, 109, 110, 117, 107, 108, 114, 106, 110, 115, 128, 129, 135, 81, 82, 79, 129, 129, 127, 162, 161, 157, 119, 120, 115, 121, 121, 119, 35, 35, 33, 25, 28, 27, 136, 137, 143, 127, 127, 136, 124, 125, 136, 122, 123, 131, 120, 120, 131, 111, 112, 123, 115, 115, 126, 102, 104, 115, 99, 102, 112, 95, 97, 108, 99, 102, 112, 92, 96, 103, 100, 99, 104, 116, 116, 116, 133, 133, 129, 141, 142, 135, 147, 148, 141, 134, 135, 130, 37, 38, 33, 14, 16, 13, 123, 125, 127, 130, 132, 133, 135, 136, 140, 135, 136, 140, 130, 131, 135, 126, 130, 135, 120, 124, 129, 125, 128, 136, 113, 116, 126, 113, 116, 126, 109, 111, 122, 105, 108, 118, 113, 117, 122, 146, 149, 146, 140, 144, 136, 145, 148, 143, 146, 149, 144, 113, 114, 107, 45, 47, 39, 108, 110, 111, 100, 101, 105, 111, 112, 119, 114, 115, 119, 124, 126, 130, 116, 118, 122, 110, 112, 116, 117, 121, 124, 114, 118, 122, 113, 114, 118, 109, 111, 113, 103, 106, 105, 99, 101, 98, 145, 148, 143, 143, 144, 139, 138, 140, 132, 119, 120, 113, 21, 22, 17, 64, 64, 62, 113, 113, 113, 121, 121, 123, 129, 129, 131, 133, 135, 139, 125, 127, 133, 121, 121, 130, 118, 119, 126, 114, 118, 126, 110, 111, 120, 108, 109, 115, 105, 108, 116, 101, 102, 108, 120, 121, 125, 139, 142, 139, 131, 132, 128, 135, 135, 133, 116, 117, 112, 38, 39, 36, 60, 62, 62, 128, 129, 131, 129, 130, 134, 121, 125, 130, 111, 115, 120, 117, 120, 126, 103, 106, 112, 106, 110, 115, 102, 105, 111, 100, 104, 110, 94, 95, 103, 90, 94, 99, 90, 92, 98, 82, 84, 86, 116, 117, 114, 120, 121, 116, 112, 112, 110, 56, 57, 52, 21, 21, 19, 13, 13, 13, 123, 125, 127, 120, 124, 127, 121, 127, 130, 120, 124, 127, 116, 122, 127, 121, 127, 134, 123, 129, 136, 122, 130, 136, 119, 127, 134, 116, 122, 131, 113, 121, 130, 117, 125, 133, 117, 123, 132, 120, 125, 134, 119, 124, 133, 117, 123, 132, 116, 122, 131, 110, 118, 126, 113, 118, 128, 112, 117, 126, 110, 115, 127, 112, 120, 131, 109, 114, 126, 109, 114, 126, 109, 115, 124, 113, 118, 126, 106, 112, 117, 108, 114, 119, 110, 113, 119, 112, 116, 119, 106, 113, 109, 75, 80, 76, 131, 135, 127, 128, 129, 122, 127, 128, 121, 137, 135, 129, 138, 136, 130, 138, 136, 130, 144, 143, 134, 153, 152, 143, 152, 149, 141, 160, 158, 147, 54, 52, 41, 12, 11, 2, 25, 24, 17, 97, 97, 93, 98, 98, 94, 111, 109, 105, 113, 114, 109, 120, 121, 116, 67, 64, 65, 89, 92, 91, 79, 84, 85, 81, 85, 86, 89, 94, 92, 89, 91, 93, 104, 106, 108, 255, 255, 255, 78, 79, 83, 85, 89, 92, 91, 95, 100, 166, 169, 175, 35, 40, 40, 137, 138, 135, 159, 160, 156, 130, 133, 126, 107, 113, 107, 120, 126, 119, 110, 115, 109, 106, 112, 105, 116, 121, 117, 104, 109, 105, 118, 121, 118, 127, 129, 126, 134, 134, 132, 134, 134, 132, 119, 119, 119, 125, 125, 125, 126, 126, 126, 129, 129, 129, 119, 119, 119, 138, 138, 138, 130, 130, 132, 127, 127, 129, 130, 130, 132, 121, 121, 123, 123, 123, 127, 123, 123, 127, 128, 127, 132, 127, 127, 129, 133, 132, 135, 122, 122, 124, 119, 118, 121, 123, 125, 128, 120, 121, 125, 114, 118, 122, 114, 118, 122, 124, 128, 131, 105, 109, 112, 107, 111, 115, 105, 109, 112, 100, 104, 108, 97, 101, 104, 96, 100, 103, 93, 97, 101, 99, 103, 106, 90, 92, 96, 227, 228, 230, 93, 94, 98, 107, 108, 114, 96, 97, 104, 94, 95, 103, 106, 106, 115, 97, 98, 107, 99, 99, 110, 98, 101, 111, 102, 105, 113, 100, 104, 112, 102, 105, 113, 96, 99, 105, 107, 111, 117, 70, 70, 68, 162, 163, 158, 133, 132, 124, 118, 118, 114, 51, 52, 47, 94, 95, 92, 47, 49, 51, 131, 132, 139, 131, 132, 141, 125, 126, 135, 123, 124, 132, 115, 116, 124, 113, 113, 124, 255, 255, 255, 118, 121, 129, 104, 107, 115, 98, 101, 109, 95, 97, 108, 93, 96, 107, 92, 93, 99, 66, 66, 66, 166, 164, 160, 150, 151, 144, 114, 115, 108, 42, 41, 35, 44, 45, 38, 29, 31, 28, 100, 102, 103, 131, 133, 135, 133, 135, 137, 133, 135, 137, 128, 129, 131, 123, 127, 130, 148, 152, 155, 111, 115, 118, 114, 118, 126, 111, 114, 124, 109, 112, 120, 106, 109, 119, 111, 114, 124, 156, 158, 157, 148, 149, 144, 136, 139, 133, 37, 40, 34, 53, 57, 49, 35, 36, 29, 88, 90, 92, 109, 111, 115, 108, 109, 113, 109, 112, 118, 119, 123, 126, 121, 122, 126, 210, 214, 217, 121, 122, 126, 116, 118, 122, 116, 118, 122, 109, 111, 115, 106, 107, 109, 102, 104, 104, 145, 148, 143, 144, 145, 140, 42, 43, 38, 26, 26, 22, 24, 25, 22, 16, 17, 14, 127, 127, 127, 116, 116, 120, 128, 128, 130, 130, 132, 133, 129, 130, 134, 113, 114, 120, 123, 124, 130, 115, 116, 122, 106, 110, 115, 108, 109, 115, 101, 102, 110, 106, 107, 113, 76, 78, 82, 144, 147, 141, 113, 116, 108, 72, 75, 69, 9, 12, 6, 29, 31, 28, 29, 31, 30, 125, 127, 131, 128, 129, 135, 121, 125, 128, 120, 124, 127, 113, 117, 122, 103, 106, 112, 158, 161, 167, 109, 112, 118, 98, 102, 107, 90, 94, 99, 92, 92, 101, 89, 91, 95, 53, 56, 53, 69, 71, 59, 24, 26, 18, 22, 23, 18, 8, 9, 4, 24, 25, 20, 22, 22, 20, 118, 121, 120, 123, 127, 130, 119, 125, 127, 120, 124, 129, 121, 127, 132, 119, 125, 129, 117, 123, 130, 114, 120, 127, 116, 122, 129, 117, 123, 130, 114, 120, 127, 113, 118, 126, 117, 123, 130, 107, 113, 120, 122, 128, 135, 119, 124, 131, 102, 108, 115, 115, 121, 128, 115, 121, 128, 117, 123, 130, 110, 116, 123, 116, 122, 129, 106, 111, 119, 113, 118, 126, 112, 118, 122, 110, 113, 119, 112, 118, 120, 112, 118, 120, 113, 117, 120, 111, 115, 116, 110, 114, 113, 110, 113, 108, 55, 59, 51, 121, 122, 115, 113, 114, 107, 125, 126, 119, 128, 127, 121, 142, 141, 135, 138, 137, 128, 69, 68, 60, 15, 17, 5, 20, 22, 10, 7, 14, 0, 15, 18, 10, 16, 19, 13, 80, 83, 77, 93, 96, 90, 106, 107, 102, 116, 114, 110, 117, 115, 111, 72, 74, 75, 75, 78, 77, 80, 82, 83, 82, 86, 87, 79, 84, 85, 88, 90, 92, 76, 78, 80, 92, 94, 95, 72, 73, 77, 64, 68, 71, 75, 79, 82, 123, 130, 132, 27, 31, 32, 50, 52, 51, 90, 93, 90, 12, 16, 10, 0, 0, 0, 51, 54, 50, 103, 106, 101, 114, 120, 116, 111, 114, 111, 110, 113, 110, 118, 121, 118, 117, 120, 117, 136, 136, 134, 125, 125, 123, 123, 124, 121, 120, 120, 120, 127, 127, 127, 113, 113, 113, 129, 129, 129, 141, 140, 143, 119, 118, 121, 133, 132, 137, 123, 123, 127, 123, 123, 127, 122, 121, 126, 141, 140, 145, 127, 126, 131, 126, 125, 130, 126, 125, 128, 123, 123, 125, 123, 123, 125, 127, 128, 130, 135, 139, 142, 123, 127, 130, 126, 130, 133, 95, 99, 102, 104, 108, 111, 104, 108, 111, 99, 103, 106, 88, 92, 95, 96, 100, 103, 95, 99, 102, 93, 97, 101, 95, 99, 102, 95, 99, 102, 167, 169, 173, 255, 255, 255, 90, 92, 96, 89, 91, 95, 95, 96, 105, 97, 98, 107, 96, 97, 106, 92, 96, 103, 95, 98, 106, 93, 96, 107, 97, 100, 108, 97, 100, 110, 97, 100, 110, 90, 93, 101, 5, 8, 7, 45, 48, 45, 0, 0, 0, 15, 16, 11, 1, 3, 0, 38, 41, 38, 55, 58, 57, 110, 113, 119, 131, 134, 142, 128, 128, 137, 120, 120, 129, 118, 121, 129, 114, 118, 126, 106, 106, 115, 106, 109, 117, 95, 98, 106, 97, 100, 108, 99, 103, 110, 92, 96, 103, 89, 92, 98, 45, 49, 50, 2, 5, 1, 0, 0, 0, 50, 51, 44, 28, 31, 25, 8, 11, 5, 0, 0, 0, 23, 25, 26, 133, 135, 137, 133, 135, 137, 136, 138, 139, 131, 133, 137, 132, 134, 138, 106, 107, 111, 175, 179, 180, 119, 123, 126, 111, 114, 122, 109, 112, 120, 106, 109, 119, 102, 104, 115, 36, 41, 41, 0, 0, 0, 17, 19, 11, 11, 14, 9, 21, 24, 18, 19, 19, 15, 0, 0, 0, 120, 121, 123, 114, 115, 119, 114, 115, 119, 123, 127, 130, 128, 132, 135, 106, 110, 113, 135, 140, 140, 121, 122, 126, 114, 115, 119, 111, 113, 117, 109, 111, 115, 108, 110, 111, 0, 0, 0, 0, 0, 0, 4, 7, 4, 17, 20, 17, 14, 16, 13, 10, 13, 10, 121, 121, 121, 121, 121, 123, 123, 123, 125, 125, 127, 129, 120, 121, 125, 142, 143, 145, 133, 135, 139, 120, 121, 125, 122, 123, 129, 111, 112, 119, 104, 106, 112, 102, 103, 110, 87, 89, 90, 0, 0, 0, 59, 62, 56, 10, 13, 8, 2, 5, 0, 0, 1, 0, 0, 0, 0, 131, 133, 137, 131, 135, 138, 126, 130, 133, 117, 121, 124, 110, 114, 117, 93, 97, 101, 201, 205, 208, 102, 105, 111, 96, 99, 105, 95, 98, 104, 93, 97, 103, 89, 91, 95, 32, 34, 36, 0, 0, 0, 0, 0, 0, 1, 3, 0, 0, 0, 0, 0, 1, 0, 8, 8, 8, 100, 102, 103, 120, 124, 127, 120, 126, 128, 121, 125, 130, 119, 123, 128, 117, 120, 126, 116, 122, 129, 114, 120, 127, 114, 120, 127, 114, 120, 127, 110, 116, 123, 110, 116, 123, 110, 116, 123, 194, 198, 201, 204, 209, 207, 166, 171, 165, 252, 255, 250, 229, 232, 224, 216, 219, 214, 213, 216, 210, 185, 188, 182, 225, 229, 223, 252, 255, 250, 234, 236, 233, 241, 246, 242, 211, 216, 214, 239, 244, 240, 242, 249, 247, 248, 253, 251, 104, 109, 107, 111, 116, 114, 124, 127, 124, 0, 0, 0, 79, 80, 75, 97, 100, 97, 118, 118, 114, 121, 122, 117, 125, 126, 119, 37, 39, 29, 0, 0, 0, 18, 22, 14, 11, 17, 8, 6, 12, 3, 23, 26, 20, 14, 17, 11, 22, 28, 22, 109, 112, 107, 100, 101, 96, 156, 155, 151, 191, 187, 181, 78, 85, 85, 83, 87, 88, 85, 90, 90, 72, 77, 78, 78, 83, 83, 104, 107, 106, 79, 81, 80, 71, 76, 76, 61, 63, 67, 71, 75, 78, 74, 78, 81, 102, 106, 109, 50, 55, 55, 29, 31, 32, 62, 65, 64, 57, 60, 54, 54, 57, 52, 0, 0, 0, 0, 0, 0, 111, 116, 112, 118, 123, 119, 108, 111, 107, 113, 113, 111, 116, 119, 116, 122, 123, 120, 121, 121, 119, 119, 119, 117, 113, 113, 113, 115, 115, 115, 123, 123, 123, 125, 125, 125, 123, 123, 125, 133, 132, 137, 130, 130, 134, 123, 123, 127, 128, 127, 134, 121, 120, 127, 121, 120, 127, 123, 123, 127, 121, 120, 125, 125, 124, 128, 126, 125, 130, 123, 125, 127, 148, 149, 153, 136, 141, 142, 111, 115, 118, 100, 104, 108, 103, 107, 110, 104, 108, 111, 106, 110, 113, 102, 106, 109, 96, 99, 105, 93, 97, 101, 96, 100, 103, 93, 97, 101, 86, 90, 96, 96, 100, 103, 102, 106, 109, 114, 115, 119, 92, 93, 97, 97, 99, 103, 95, 98, 104, 95, 96, 105, 95, 98, 106, 95, 97, 108, 93, 97, 105, 97, 100, 110, 90, 93, 103, 93, 96, 107, 95, 97, 108, 96, 99, 107, 0, 0, 0, 1, 3, 0, 0, 0, 0, 1, 4, 0, 0, 0, 0, 1, 3, 0, 32, 37, 35, 99, 100, 104, 136, 137, 143, 131, 132, 141, 128, 128, 137, 120, 120, 129, 118, 119, 126, 146, 150, 155, 159, 162, 168, 96, 99, 105, 105, 109, 114, 89, 92, 98, 96, 99, 107, 90, 94, 99, 109, 113, 116, 8, 10, 7, 0, 0, 0, 38, 41, 34, 0, 0, 0, 7, 9, 6, 0, 0, 0, 0, 0, 0, 145, 147, 149, 133, 135, 137, 136, 138, 139, 133, 135, 137, 131, 133, 135, 146, 148, 150, 195, 197, 199, 129, 131, 132, 109, 110, 117, 113, 117, 122, 106, 109, 119, 108, 108, 119, 96, 99, 105, 0, 0, 0, 0, 0, 0, 4, 7, 2, 0, 0, 0, 28, 31, 25, 0, 0, 0, 123, 125, 127, 108, 109, 113, 121, 122, 126, 124, 126, 130, 129, 130, 134, 115, 116, 120, 148, 149, 151, 116, 120, 121, 109, 111, 115, 115, 116, 120, 108, 110, 111, 102, 104, 106, 7, 9, 8, 23, 26, 22, 0, 0, 0, 0, 0, 0, 9, 12, 8, 0, 0, 0, 66, 68, 67, 117, 119, 121, 121, 121, 123, 125, 127, 129, 125, 127, 129, 127, 128, 130, 131, 133, 135, 116, 118, 120, 120, 121, 127, 107, 111, 117, 104, 105, 114, 101, 102, 108, 117, 119, 123, 64, 66, 63, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 119, 129, 130, 134, 128, 132, 135, 121, 125, 128, 106, 110, 115, 114, 118, 122, 104, 108, 111, 98, 102, 107, 98, 102, 107, 93, 97, 103, 88, 91, 97, 86, 91, 94, 62, 66, 67, 17, 20, 17, 0, 0, 0, 0, 0, 0, 2, 5, 1, 0, 0, 0, 0, 0, 0, 82, 84, 86, 127, 128, 132, 123, 126, 132, 119, 123, 128, 117, 123, 128, 114, 118, 124, 120, 124, 131, 114, 120, 127, 114, 120, 127, 112, 117, 124, 112, 117, 124, 112, 115, 123, 118, 121, 129, 138, 142, 145, 253, 255, 255, 146, 148, 152, 246, 250, 251, 180, 184, 185, 250, 252, 253, 202, 204, 206, 220, 225, 223, 255, 255, 255, 255, 255, 255, 192, 197, 195, 234, 239, 239, 189, 194, 192, 214, 219, 218, 118, 123, 121, 196, 201, 199, 111, 116, 114, 106, 113, 113, 114, 119, 118, 43, 45, 44, 31, 34, 31, 103, 106, 101, 105, 106, 101, 114, 115, 110, 122, 123, 116, 59, 61, 53, 0, 0, 0, 17, 20, 15, 15, 18, 12, 19, 22, 17, 24, 27, 22, 16, 19, 13, 14, 17, 11, 113, 113, 111, 100, 101, 96, 118, 115, 109, 173, 171, 165, 80, 82, 81, 80, 82, 81, 85, 87, 86, 88, 88, 90, 225, 225, 225, 128, 130, 127, 69, 72, 69, 61, 66, 64, 62, 66, 67, 63, 68, 68, 78, 83, 83, 95, 99, 102, 29, 34, 35, 0, 0, 0, 17, 22, 18, 53, 54, 49, 57, 59, 56, 32, 35, 32, 0, 0, 0, 0, 0, 0, 116, 119, 116, 116, 119, 116, 113, 115, 112, 116, 119, 116, 111, 111, 109, 142, 142, 142, 115, 115, 115, 133, 133, 133, 130, 130, 130, 121, 121, 121, 126, 125, 128, 125, 124, 127, 128, 127, 132, 116, 116, 120, 128, 127, 132, 135, 134, 141, 125, 123, 130, 121, 120, 127, 122, 121, 128, 122, 121, 128, 123, 122, 129, 140, 139, 144, 145, 147, 149, 112, 112, 110, 63, 68, 68, 105, 109, 110, 103, 107, 110, 98, 102, 105, 104, 108, 111, 98, 102, 105, 100, 104, 108, 86, 90, 96, 98, 102, 107, 100, 101, 105, 92, 96, 101, 91, 95, 98, 92, 96, 99, 86, 91, 92, 216, 220, 221, 110, 112, 116, 88, 92, 95, 94, 95, 101, 91, 94, 102, 91, 94, 102, 93, 97, 105, 93, 96, 107, 93, 97, 105, 95, 98, 106, 95, 97, 108, 95, 95, 107, 95, 95, 107, 60, 64, 67, 0, 0, 0, 0, 0, 0, 14, 17, 11, 0, 1, 0, 0, 0, 0, 71, 77, 72, 33, 37, 40, 128, 132, 137, 127, 127, 136, 125, 127, 133, 121, 122, 128, 122, 123, 129, 225, 227, 231, 184, 185, 189, 105, 109, 112, 103, 106, 112, 93, 97, 101, 91, 94, 102, 95, 98, 104, 113, 117, 120, 0, 0, 0, 0, 0, 0, 31, 36, 30, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 132, 135, 134, 137, 139, 138, 133, 135, 137, 133, 135, 137, 129, 131, 132, 172, 174, 173, 161, 164, 163, 255, 255, 255, 125, 127, 131, 113, 114, 120, 110, 111, 120, 100, 104, 112, 132, 133, 140, 0, 0, 0, 1, 4, 0, 0, 0, 0, 0, 0, 0, 38, 41, 36, 0, 0, 0, 108, 110, 109, 116, 118, 122, 117, 119, 121, 123, 125, 127, 124, 126, 128, 206, 208, 209, 113, 114, 116, 227, 228, 230, 124, 126, 128, 111, 113, 117, 109, 111, 113, 106, 107, 109, 86, 88, 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 24, 21, 0, 2, 0, 0, 0, 0, 123, 125, 125, 113, 113, 113, 131, 133, 135, 128, 129, 131, 118, 121, 120, 121, 123, 124, 144, 146, 147, 108, 109, 113, 114, 115, 119, 104, 106, 112, 101, 102, 108, 105, 104, 111, 29, 31, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94, 96, 97, 128, 129, 133, 127, 132, 132, 124, 128, 131, 114, 118, 122, 206, 211, 211, 235, 237, 238, 234, 239, 239, 111, 115, 118, 96, 100, 103, 89, 92, 98, 86, 91, 94, 101, 102, 106, 50, 52, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 29, 31, 121, 122, 126, 123, 125, 128, 117, 121, 124, 119, 123, 128, 118, 122, 127, 116, 117, 124, 116, 119, 125, 114, 118, 124, 114, 118, 124, 118, 122, 127, 113, 116, 124, 122, 123, 131, 114, 118, 124, 114, 118, 126, 120, 124, 131, 111, 114, 124, 117, 120, 130, 118, 121, 131, 117, 120, 130, 111, 114, 124, 110, 113, 121, 109, 112, 118, 114, 118, 124, 113, 117, 120, 116, 120, 123, 109, 113, 116, 111, 115, 118, 111, 115, 116, 107, 112, 113, 113, 120, 120, 113, 118, 116, 46, 49, 46, 0, 0, 0, 106, 109, 103, 105, 106, 101, 106, 107, 100, 138, 140, 132, 102, 104, 96, 0, 0, 0, 5, 9, 3, 11, 14, 9, 14, 16, 13, 7, 13, 6, 5, 9, 3, 19, 22, 17, 123, 124, 119, 110, 108, 104, 106, 102, 98, 124, 120, 117, 72, 77, 76, 76, 79, 78, 87, 87, 87, 86, 86, 88, 182, 182, 180, 221, 221, 219, 78, 78, 78, 68, 71, 70, 62, 64, 66, 68, 71, 70, 79, 81, 82, 103, 106, 105, 25, 28, 27, 25, 30, 28, 28, 33, 29, 15, 17, 14, 50, 52, 49, 53, 56, 53, 32, 35, 32, 0, 0, 0, 17, 20, 17, 120, 122, 119, 110, 113, 110, 113, 113, 111, 118, 118, 116, 126, 126, 126, 120, 120, 120, 120, 120, 120, 123, 123, 125, 118, 117, 120, 126, 125, 128, 128, 128, 130, 112, 111, 116, 118, 117, 122, 121, 120, 125, 125, 123, 130, 121, 120, 127, 120, 121, 127, 114, 115, 121, 127, 126, 133, 137, 137, 141, 129, 129, 129, 70, 71, 66, 10, 12, 4, 52, 56, 55, 99, 104, 102, 104, 108, 111, 104, 108, 111, 104, 106, 110, 104, 106, 110, 97, 99, 103, 97, 99, 103, 96, 97, 104, 95, 97, 101, 96, 98, 102, 93, 97, 101, 96, 98, 102, 94, 95, 99, 206, 211, 209, 97, 99, 101, 95, 97, 101, 95, 96, 105, 94, 95, 103, 91, 94, 102, 90, 93, 101, 92, 95, 105, 89, 92, 102, 95, 98, 106, 95, 96, 105, 99, 99, 110, 96, 97, 106, 127, 128, 132, 0, 1, 0, 22, 25, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 86, 82, 0, 0, 0, 127, 128, 134, 127, 127, 136, 118, 119, 126, 122, 123, 129, 113, 114, 120, 149, 150, 154, 200, 202, 201, 255, 255, 255, 105, 109, 114, 98, 102, 107, 98, 101, 109, 85, 89, 94, 91, 95, 98, 0, 0, 0, 0, 0, 0, 10, 15, 9, 0, 0, 0, 0, 0, 0, 18, 23, 19, 0, 0, 0, 94, 97, 93, 133, 136, 135, 136, 138, 139, 138, 140, 140, 132, 135, 134, 123, 123, 123, 238, 241, 240, 235, 237, 238, 127, 128, 132, 116, 117, 124, 114, 114, 123, 105, 108, 116, 109, 110, 117, 36, 38, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 34, 29, 1, 3, 0, 19, 22, 21, 116, 118, 120, 115, 117, 118, 124, 126, 128, 127, 128, 130, 113, 115, 114, 211, 214, 213, 255, 255, 255, 137, 139, 140, 111, 113, 115, 104, 106, 110, 108, 110, 111, 118, 121, 120, 0, 0, 0, 2, 5, 1, 0, 0, 0, 1, 3, 0, 0, 0, 0, 0, 2, 1, 104, 107, 106, 114, 116, 115, 120, 121, 123, 123, 125, 127, 125, 127, 129, 113, 114, 116, 103, 105, 107, 117, 119, 123, 111, 113, 117, 108, 109, 117, 104, 102, 110, 99, 100, 106, 19, 19, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 40, 40, 131, 135, 138, 123, 127, 128, 120, 124, 127, 113, 117, 120, 113, 117, 120, 97, 99, 101, 103, 105, 109, 104, 106, 110, 95, 97, 101, 95, 97, 101, 88, 90, 94, 93, 94, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113, 114, 116, 117, 119, 121, 125, 127, 129, 124, 126, 128, 123, 125, 128, 117, 119, 123, 121, 122, 126, 120, 121, 125, 121, 122, 126, 118, 122, 125, 117, 118, 125, 120, 121, 127, 117, 120, 126, 117, 120, 128, 116, 119, 127, 118, 121, 129, 117, 120, 128, 117, 120, 128, 118, 121, 131, 114, 120, 127, 110, 116, 121, 110, 117, 117, 110, 117, 119, 112, 118, 118, 109, 116, 116, 108, 115, 115, 109, 116, 114, 112, 119, 116, 109, 113, 112, 105, 112, 109, 110, 118, 113, 79, 87, 82, 0, 0, 0, 90, 94, 88, 109, 110, 105, 109, 107, 103, 109, 107, 101, 114, 113, 107, 0, 0, 0, 3, 4, 0, 8, 14, 8, 1, 7, 3, 22, 28, 24, 0, 6, 0, 0, 0, 0, 91, 91, 89, 108, 106, 102, 102, 98, 97, 120, 116, 112, 82, 78, 77, 82, 80, 78, 86, 87, 84, 83, 83, 83, 77, 77, 75, 70, 70, 68, 72, 73, 70, 73, 76, 72, 67, 68, 67, 69, 72, 69, 101, 102, 99, 22, 24, 21, 21, 23, 20, 36, 38, 37, 33, 36, 33, 18, 21, 18, 36, 38, 35, 38, 41, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 103, 106, 103, 103, 106, 103, 108, 111, 107, 112, 112, 110, 115, 116, 113, 113, 113, 111, 127, 127, 127, 116, 116, 116, 123, 123, 125, 126, 125, 128, 122, 122, 124, 118, 117, 122, 121, 120, 125, 119, 118, 123, 121, 120, 127, 114, 113, 120, 119, 118, 125, 122, 121, 128, 129, 128, 135, 128, 128, 128, 26, 26, 22, 0, 0, 0, 76, 76, 74, 43, 45, 42, 97, 100, 99, 103, 105, 107, 107, 109, 110, 101, 103, 104, 97, 99, 101, 103, 105, 107, 101, 102, 106, 100, 101, 105, 96, 97, 104, 97, 101, 106, 91, 95, 100, 93, 94, 98, 86, 87, 93, 81, 83, 87, 92, 96, 99, 94, 95, 101, 94, 95, 101, 94, 95, 101, 89, 92, 98, 92, 96, 103, 95, 98, 104, 91, 95, 100, 92, 96, 101, 95, 96, 103, 93, 94, 100, 94, 95, 99, 115, 117, 118, 0, 0, 0, 52, 55, 49, 0, 0, 0, 3, 6, 3, 0, 0, 0, 4, 9, 5, 0, 0, 0, 128, 132, 135, 127, 131, 136, 131, 133, 137, 120, 121, 125, 116, 120, 123, 114, 118, 122, 109, 111, 113, 105, 109, 110, 97, 101, 104, 99, 103, 106, 97, 101, 106, 90, 94, 97, 83, 87, 90, 45, 50, 46, 5, 11, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 30, 26, 0, 0, 0, 55, 58, 55, 135, 137, 134, 132, 135, 132, 133, 136, 135, 133, 136, 133, 135, 137, 136, 125, 128, 127, 123, 125, 125, 122, 124, 125, 114, 115, 119, 111, 112, 119, 104, 108, 113, 104, 108, 111, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 18, 21, 16, 0, 0, 0, 122, 124, 123, 115, 117, 116, 116, 118, 118, 122, 124, 123, 123, 125, 125, 115, 117, 116, 131, 133, 133, 123, 125, 127, 113, 115, 114, 111, 114, 113, 113, 115, 114, 106, 108, 107, 31, 34, 31, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 0, 50, 52, 49, 110, 112, 112, 117, 119, 119, 123, 125, 125, 125, 128, 127, 122, 124, 123, 122, 124, 123, 116, 118, 120, 114, 115, 119, 107, 109, 110, 104, 106, 110, 95, 96, 103, 94, 97, 93, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 135, 140, 140, 128, 129, 131, 127, 128, 130, 118, 120, 122, 115, 117, 118, 106, 108, 107, 103, 105, 107, 103, 105, 109, 96, 98, 102, 92, 93, 97, 93, 94, 98, 86, 88, 89, 0, 0, 0, 2, 5, 0, 0, 0, 0, 0, 0, 0, 3, 6, 1, 0, 0, 0, 0, 0, 0, 77, 77, 75, 125, 128, 127, 123, 126, 123, 117, 120, 117, 127, 127, 125, 117, 120, 117, 129, 129, 129, 121, 123, 122, 122, 124, 125, 123, 125, 127, 120, 121, 123, 118, 120, 124, 123, 127, 130, 111, 115, 118, 120, 124, 127, 114, 118, 122, 110, 114, 117, 117, 121, 122, 118, 122, 125, 120, 124, 127, 115, 122, 122, 114, 119, 120, 119, 123, 124, 115, 122, 122, 118, 122, 123, 109, 113, 112, 113, 118, 116, 102, 110, 107, 112, 117, 115, 109, 116, 114, 107, 113, 109, 115, 123, 116, 3, 8, 2, 86, 87, 82, 114, 113, 109, 112, 111, 107, 110, 109, 102, 104, 103, 96, 35, 34, 28, 0, 0, 0, 14, 15, 10, 0, 4, 0, 3, 6, 1, 0, 0, 0, 0, 0, 0, 30, 31, 26, 100, 101, 96, 98, 96, 93, 108, 106, 102, 77, 75, 74, 76, 74, 72, 72, 73, 68, 75, 73, 69, 77, 78, 73, 75, 73, 69, 63, 64, 59, 67, 68, 64, 53, 54, 49, 59, 60, 55, 95, 96, 91, 28, 29, 22, 31, 32, 29, 33, 36, 33, 21, 26, 22, 33, 36, 35, 52, 57, 53, 25, 30, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97, 102, 98, 103, 108, 104, 109, 112, 109, 113, 113, 111, 122, 123, 120, 113, 113, 111, 111, 111, 111, 113, 112, 115, 112, 111, 114, 106, 106, 108, 118, 117, 120, 113, 112, 115, 116, 116, 118, 120, 119, 126, 115, 114, 119, 119, 118, 125, 113, 112, 119, 129, 128, 135, 126, 125, 128, 71, 71, 69, 0, 0, 0, 91, 92, 85, 56, 57, 50, 44, 47, 41, 100, 102, 101, 100, 102, 101, 97, 100, 99, 107, 109, 108, 115, 117, 118, 106, 108, 107, 104, 106, 108, 107, 109, 110, 100, 101, 105, 94, 95, 99, 91, 95, 98, 90, 94, 95, 90, 94, 97, 92, 94, 95, 94, 96, 97, 94, 96, 97, 93, 94, 98, 96, 98, 102, 92, 93, 97, 84, 88, 91, 92, 96, 99, 89, 93, 96, 89, 91, 95, 86, 88, 89, 86, 88, 89, 90, 93, 92, 97, 100, 99, 0, 0, 0, 23, 26, 20, 0, 0, 0, 0, 2, 0, 0, 0, 0, 31, 36, 32, 20, 25, 23, 70, 75, 73, 126, 131, 129, 135, 140, 138, 118, 123, 121, 113, 118, 114, 109, 113, 112, 106, 111, 107, 98, 103, 99, 98, 103, 99, 91, 96, 94, 85, 90, 88, 90, 94, 95, 96, 101, 99, 113, 118, 114, 0, 0, 0, 0, 0, 0, 11, 15, 7, 0, 0, 0, 46, 51, 45, 0, 0, 0, 54, 59, 53, 173, 178, 172, 121, 127, 121, 131, 136, 132, 133, 139, 132, 138, 141, 138, 136, 138, 135, 127, 129, 128, 128, 130, 129, 127, 129, 128, 115, 117, 116, 110, 114, 113, 100, 102, 101, 64, 66, 63, 35, 38, 32, 8, 11, 5, 0, 0, 0, 0, 0, 0, 25, 28, 23, 0, 0, 0, 100, 102, 99, 107, 109, 108, 116, 118, 118, 117, 119, 119, 122, 125, 121, 127, 129, 128, 116, 118, 118, 118, 121, 120, 113, 115, 114, 113, 115, 114, 123, 125, 125, 108, 111, 107, 51, 54, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 7, 9, 6, 135, 137, 134, 111, 114, 111, 114, 116, 113, 125, 128, 125, 125, 128, 127, 128, 130, 129, 117, 119, 119, 120, 122, 121, 110, 112, 112, 110, 112, 112, 99, 100, 102, 118, 121, 118, 15, 18, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 115, 117, 114, 143, 145, 142, 137, 140, 136, 125, 128, 125, 118, 121, 120, 114, 116, 115, 103, 106, 105, 107, 109, 110, 97, 99, 101, 92, 94, 95, 65, 67, 66, 81, 84, 81, 0, 0, 0, 16, 19, 13, 0, 0, 0, 0, 0, 0, 2, 3, 0, 0, 0, 0, 75, 78, 73, 17, 20, 15, 37, 40, 36, 22, 24, 21, 22, 24, 23, 38, 41, 38, 24, 27, 24, 12, 15, 12, 21, 23, 20, 21, 23, 20, 33, 36, 33, 29, 31, 28, 26, 29, 26, 40, 45, 39, 42, 48, 41, 71, 77, 70, 47, 52, 46, 53, 58, 52, 68, 73, 67, 60, 65, 59, 100, 106, 100, 62, 67, 63, 43, 49, 45, 52, 56, 55, 56, 61, 57, 54, 59, 55, 41, 46, 42, 35, 40, 36, 24, 31, 29, 10, 18, 13, 24, 32, 27, 14, 21, 17, 30, 38, 33, 13, 18, 14, 48, 52, 46, 114, 113, 109, 116, 114, 110, 108, 106, 100, 108, 106, 100, 61, 60, 53, 0, 0, 0, 1, 2, 0, 0, 3, 0, 16, 19, 13, 0, 0, 0, 0, 0, 0, 99, 102, 96, 42, 45, 39, 130, 133, 118, 209, 210, 189, 21, 22, 17, 30, 31, 24, 40, 41, 34, 62, 63, 56, 73, 74, 67, 66, 67, 60, 58, 59, 52, 49, 50, 43, 33, 34, 27, 44, 45, 38, 21, 22, 17, 37, 38, 33, 33, 33, 31, 48, 51, 48, 48, 51, 48, 67, 70, 67, 65, 67, 64, 38, 43, 39, 0, 0, 0, 0, 0, 0, 28, 30, 27, 89, 94, 90, 102, 105, 102, 107, 110, 104, 103, 106, 103, 107, 108, 105, 109, 110, 107, 109, 111, 111, 105, 105, 105, 109, 109, 111, 115, 115, 117, 108, 108, 110, 113, 112, 117, 114, 114, 116, 112, 111, 116, 112, 111, 116, 114, 113, 118, 115, 116, 120, 122, 122, 124, 120, 120, 118, 0, 0, 0, 50, 49, 43, 66, 68, 58, 57, 58, 51, 37, 38, 31, 7, 8, 3, 72, 73, 68, 91, 92, 85, 105, 106, 101, 93, 96, 90, 93, 96, 90, 93, 96, 90, 90, 94, 88, 96, 99, 94, 85, 88, 82, 86, 89, 83, 86, 89, 83, 82, 85, 80, 83, 87, 81, 96, 99, 94, 108, 111, 103, 113, 116, 108, 114, 117, 109, 106, 109, 101, 101, 104, 96, 71, 74, 66, 32, 38, 29, 10, 14, 6, 9, 12, 4, 0, 5, 0, 8, 14, 8, 29, 32, 26, 0, 3, 0, 3, 6, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 48, 54, 47, 6, 12, 5, 34, 40, 33, 31, 37, 28, 26, 32, 23, 17, 23, 14, 25, 31, 22, 17, 23, 14, 18, 24, 15, 22, 28, 20, 26, 32, 25, 35, 41, 34, 21, 27, 20, 41, 47, 40, 34, 39, 35, 0, 0, 0, 0, 0, 0, 24, 28, 20, 0, 0, 0, 32, 37, 31, 0, 6, 0, 116, 122, 113, 46, 51, 45, 48, 54, 47, 28, 36, 29, 40, 45, 41, 36, 43, 39, 46, 51, 45, 36, 42, 38, 45, 50, 46, 50, 56, 51, 41, 46, 44, 43, 49, 45, 43, 49, 45, 14, 19, 15, 83, 87, 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 21, 16, 85, 88, 82, 17, 20, 15, 18, 21, 16, 22, 25, 19, 30, 33, 27, 19, 22, 17, 19, 22, 17, 22, 25, 19, 29, 32, 26, 21, 24, 18, 9, 12, 6, 12, 16, 10, 17, 20, 15, 9, 12, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 8, 2, 0, 2, 0, 113, 116, 110, 32, 37, 31, 29, 35, 31, 27, 32, 28, 19, 24, 18, 18, 23, 19, 21, 27, 20, 29, 35, 31, 20, 25, 21, 37, 40, 36, 28, 31, 25, 30, 33, 27, 28, 31, 25, 45, 48, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 106, 100, 34, 40, 33, 31, 36, 30, 27, 33, 26, 14, 20, 13, 23, 26, 20, 23, 26, 22, 21, 24, 18, 19, 22, 17, 32, 35, 30, 26, 29, 24, 29, 31, 28, 17, 20, 15, 13, 14, 9, 35, 38, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 12, 16, 10, 36, 36, 34, 34, 34, 32, 33, 36, 33, 39, 42, 39, 29, 35, 31, 26, 31, 27, 32, 35, 32, 35, 37, 34, 31, 34, 29, 28, 34, 25, 33, 36, 31, 24, 28, 20, 29, 35, 27, 29, 35, 27, 26, 32, 23, 20, 26, 19, 28, 34, 27, 34, 40, 33, 32, 37, 33, 29, 37, 32, 28, 33, 29, 31, 36, 32, 27, 34, 31, 35, 40, 38, 38, 43, 39, 29, 35, 31, 29, 35, 31, 32, 37, 33, 31, 35, 34, 37, 45, 40, 28, 35, 31, 45, 53, 48, 32, 35, 30, 0, 0, 0, 116, 117, 112, 116, 117, 112, 113, 114, 107, 100, 99, 93, 87, 89, 81, 0, 0, 0, 1, 4, 0, 0, 0, 0, 5, 9, 3, 0, 0, 0, 81, 84, 81, 33, 36, 31, 52, 55, 49, 47, 50, 45, 49, 50, 45, 41, 40, 32, 42, 41, 33, 35, 36, 27, 47, 48, 39, 35, 36, 27, 44, 47, 39, 29, 32, 24, 47, 51, 43, 45, 48, 41, 43, 44, 39, 47, 47, 43, 23, 24, 17, 39, 42, 37, 63, 64, 59, 50, 53, 47, 84, 85, 80, 67, 70, 65, 11, 16, 10, 0, 0, 0, 0, 0, 0, 73, 76, 70, 97, 100, 95, 97, 100, 97, 103, 106, 103, 107, 109, 106, 105, 105, 103, 104, 104, 102, 106, 108, 107, 106, 106, 106, 107, 107, 109, 104, 103, 106, 109, 109, 111, 112, 111, 114, 112, 111, 114, 115, 114, 119, 109, 109, 111, 113, 112, 115, 121, 121, 123, 115, 115, 115, 108, 109, 106, 0, 0, 0, 83, 84, 77, 94, 96, 88, 55, 56, 49, 102, 104, 96, 23, 24, 19, 0, 0, 0, 2, 5, 0, 11, 14, 9, 3, 6, 1, 9, 12, 8, 8, 11, 5, 15, 18, 12, 11, 14, 9, 10, 15, 9, 5, 11, 4, 7, 13, 6, 10, 16, 7, 13, 19, 12, 11, 17, 8, 11, 17, 8, 23, 26, 18, 23, 26, 18, 14, 17, 7, 22, 26, 15, 22, 28, 20, 11, 17, 6, 12, 18, 7, 28, 34, 25, 31, 37, 28, 34, 40, 31, 11, 17, 8, 19, 25, 16, 11, 14, 9, 1, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, 121, 115, 28, 34, 27, 33, 39, 32, 27, 35, 27, 29, 35, 29, 43, 51, 44, 26, 32, 23, 41, 47, 40, 38, 47, 37, 31, 37, 28, 35, 41, 32, 31, 37, 28, 29, 35, 29, 28, 34, 27, 38, 43, 37, 0, 0, 0, 0, 0, 0, 9, 12, 4, 0, 0, 0, 0, 0, 0, 118, 124, 115, 28, 34, 25, 39, 44, 38, 35, 41, 34, 38, 46, 39, 39, 44, 38, 35, 43, 36, 29, 37, 30, 36, 42, 36, 40, 45, 39, 47, 52, 46, 21, 26, 22, 36, 42, 36, 42, 48, 41, 32, 37, 31, 3, 6, 1, 0, 0, 0, 4, 7, 2, 0, 0, 0, 8, 14, 8, 38, 43, 37, 29, 35, 27, 24, 28, 20, 28, 31, 23, 35, 41, 34, 26, 30, 22, 26, 29, 24, 35, 38, 30, 33, 36, 31, 29, 32, 26, 28, 31, 25, 28, 31, 25, 29, 32, 26, 21, 24, 18, 1, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 120, 116, 40, 45, 41, 26, 32, 25, 20, 25, 21, 31, 36, 30, 33, 39, 32, 25, 30, 24, 20, 26, 19, 32, 37, 31, 27, 33, 26, 28, 34, 27, 42, 45, 39, 21, 24, 18, 28, 31, 25, 2, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 10, 4, 17, 20, 15, 37, 40, 34, 47, 51, 43, 38, 41, 34, 48, 52, 44, 46, 50, 42, 50, 53, 45, 45, 48, 41, 36, 38, 28, 51, 54, 46, 41, 42, 35, 50, 51, 44, 8, 11, 3, 19, 19, 15, 42, 43, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94, 95, 90, 35, 38, 32, 38, 41, 36, 42, 44, 41, 22, 25, 19, 23, 26, 22, 18, 21, 18, 46, 49, 46, 40, 43, 40, 19, 22, 17, 36, 39, 33, 28, 31, 25, 32, 35, 30, 30, 33, 25, 17, 20, 15, 28, 31, 23, 33, 39, 32, 40, 44, 36, 43, 46, 40, 31, 36, 32, 32, 37, 33, 26, 31, 27, 36, 42, 38, 18, 23, 19, 15, 21, 17, 19, 24, 22, 23, 31, 26, 8, 14, 8, 12, 17, 13, 4, 9, 3, 19, 24, 20, 16, 24, 17, 32, 40, 33, 36, 44, 37, 33, 36, 31, 0, 0, 0, 117, 115, 111, 117, 115, 113, 114, 113, 109, 110, 109, 102, 97, 96, 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 4, 0, 30, 33, 27, 15, 18, 12, 44, 45, 40, 53, 54, 49, 50, 50, 48, 55, 53, 49, 11, 14, 9, 31, 34, 29, 21, 22, 17, 15, 18, 10, 29, 30, 25, 42, 43, 38, 38, 39, 34, 44, 45, 38, 64, 65, 58, 47, 48, 41, 49, 50, 43, 55, 56, 49, 41, 42, 35, 57, 58, 51, 73, 74, 67, 97, 98, 91, 76, 77, 70, 0, 0, 0, 22, 25, 19, 8, 11, 5, 86, 89, 83, 92, 95, 89, 100, 103, 97, 100, 103, 97, 97, 100, 97, 96, 99, 96, 102, 102, 102, 102, 102, 102, 112, 112, 112, 107, 107, 109, 105, 104, 107, 102, 102, 104, 111, 110, 113, 111, 110, 115, 111, 108, 113, 111, 110, 113, 104, 103, 106, 108, 108, 108, 116, 117, 114, 50, 51, 46, 0, 1, 0, 95, 97, 89, 62, 63, 54, 45, 47, 39, 37, 38, 31, 24, 26, 18, 11, 15, 7, 11, 14, 9, 11, 14, 9, 3, 8, 2, 4, 9, 3, 5, 11, 4, 13, 19, 12, 3, 8, 2, 24, 29, 23, 8, 14, 8, 0, 0, 0, 4, 9, 5, 0, 0, 0, 0, 2, 0, 5, 11, 4, 18, 22, 14, 18, 22, 14, 42, 45, 37, 28, 31, 21, 33, 37, 29, 15, 21, 13, 21, 28, 16, 7, 13, 4, 3, 9, 0, 0, 6, 0, 5, 11, 4, 0, 0, 0, 18, 21, 16, 4, 7, 2, 4, 9, 3, 4, 9, 3, 97, 102, 96, 0, 0, 0, 0, 0, 0, 0, 8, 1, 0, 2, 0, 55, 63, 55, 30, 38, 29, 31, 40, 28, 36, 44, 35, 28, 34, 25, 24, 30, 21, 12, 18, 9, 0, 0, 0, 0, 2, 0, 0, 4, 0, 0, 1, 0, 4, 7, 2, 54, 58, 50, 0, 0, 0, 12, 16, 6, 46, 50, 42, 6, 12, 3, 0, 5, 1, 0, 1, 0, 0, 0, 0, 27, 32, 28, 45, 50, 46, 36, 42, 36, 50, 56, 49, 32, 37, 31, 26, 32, 25, 0, 2, 0, 0, 1, 0, 0, 0, 0, 1, 7, 3, 0, 5, 0, 0, 2, 0, 0, 6, 0, 6, 12, 5, 19, 22, 17, 91, 97, 88, 4, 10, 1, 8, 11, 5, 8, 14, 8, 14, 17, 11, 24, 30, 21, 31, 34, 29, 36, 39, 33, 30, 33, 27, 23, 26, 20, 9, 12, 4, 5, 9, 3, 10, 13, 8, 10, 13, 8, 3, 6, 1, 17, 20, 15, 0, 0, 0, 1, 7, 1, 110, 115, 109, 10, 15, 9, 25, 30, 24, 15, 21, 15, 15, 21, 15, 21, 27, 20, 42, 48, 41, 38, 43, 39, 35, 41, 34, 39, 45, 36, 27, 33, 24, 21, 24, 18, 16, 19, 11, 25, 29, 21, 48, 52, 46, 17, 20, 15, 10, 13, 8, 0, 0, 0, 2, 5, 1, 76, 80, 74, 17, 20, 15, 16, 19, 11, 50, 53, 45, 35, 38, 30, 30, 33, 25, 35, 38, 30, 39, 43, 33, 38, 42, 32, 73, 77, 66, 42, 45, 35, 80, 82, 72, 24, 26, 16, 29, 31, 21, 21, 22, 15, 47, 48, 41, 0, 0, 0, 2, 3, 0, 99, 100, 95, 10, 11, 6, 16, 17, 12, 4, 7, 2, 19, 19, 17, 24, 27, 24, 26, 29, 26, 28, 30, 27, 12, 16, 10, 51, 54, 48, 50, 53, 47, 50, 53, 47, 22, 25, 19, 47, 51, 43, 23, 26, 18, 18, 21, 16, 1, 4, 0, 16, 19, 13, 14, 17, 9, 19, 22, 17, 2, 5, 1, 7, 9, 8, 1, 6, 5, 8, 10, 9, 7, 9, 6, 5, 10, 6, 12, 17, 15, 34, 39, 37, 13, 18, 14, 18, 23, 19, 20, 25, 21, 12, 17, 15, 15, 20, 19, 17, 22, 18, 48, 55, 50, 43, 49, 43, 0, 0, 0, 97, 97, 93, 112, 113, 108, 119, 118, 114, 114, 115, 110, 107, 108, 101, 0, 0, 0, 5, 9, 3, 0, 3, 0, 26, 29, 24, 11, 14, 9, 7, 10, 4, 17, 18, 13, 16, 17, 12, 22, 22, 20, 24, 27, 22, 8, 9, 6, 0, 0, 0, 0, 2, 0, 4, 7, 2, 8, 11, 5, 4, 7, 2, 15, 18, 12, 25, 29, 21, 23, 24, 17, 22, 23, 16, 23, 24, 19, 7, 8, 1, 83, 84, 77, 60, 62, 54, 91, 92, 85, 108, 109, 102, 22, 25, 17, 0, 0, 0, 0, 0, 0, 89, 92, 87, 85, 88, 82, 96, 99, 94, 97, 100, 95, 101, 104, 98, 101, 104, 100, 100, 100, 98, 107, 108, 105, 101, 101, 101, 104, 104, 104, 130, 130, 130, 108, 108, 108, 119, 116, 120, 109, 109, 111, 123, 120, 123, 116, 113, 116, 111, 108, 111, 110, 107, 108, 113, 111, 110, 114, 115, 110, 36, 35, 29, 0, 0, 0, 77, 78, 71, 55, 54, 46, 121, 123, 113, 0, 1, 0, 19, 19, 15, 8, 9, 4, 7, 7, 5, 5, 8, 5, 2, 5, 1, 0, 4, 0, 0, 0, 0, 0, 3, 0, 0, 5, 1, 0, 0, 0, 5, 10, 8, 0, 1, 0, 0, 0, 0, 0, 0, 0, 8, 14, 10, 0, 4, 0, 7, 10, 4, 22, 25, 17, 39, 43, 35, 32, 38, 29, 37, 40, 32, 28, 35, 23, 7, 14, 2, 4, 10, 1, 0, 0, 0, 0, 3, 1, 4, 9, 7, 0, 2, 0, 0, 5, 1, 13, 18, 14, 0, 0, 0, 34, 40, 33, 10, 15, 11, 0, 0, 0, 0, 0, 0, 0, 2, 7, 0, 0, 0, 0, 0, 0, 25, 30, 24, 32, 38, 29, 49, 56, 44, 34, 40, 31, 28, 34, 25, 0, 3, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 1, 3, 0, 9, 12, 8, 0, 0, 0, 30, 33, 27, 42, 45, 37, 19, 22, 19, 0, 0, 0, 0, 5, 5, 0, 2, 0, 0, 0, 0, 32, 37, 33, 33, 39, 32, 33, 39, 30, 22, 28, 22, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 7, 6, 7, 12, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 36, 33, 0, 4, 0, 0, 0, 0, 0, 2, 0, 0, 3, 0, 12, 17, 13, 10, 15, 9, 26, 29, 26, 42, 45, 39, 30, 33, 27, 21, 24, 18, 3, 7, 0, 3, 6, 1, 7, 10, 4, 2, 5, 0, 7, 9, 6, 8, 10, 7, 0, 0, 0, 36, 38, 35, 10, 15, 11, 0, 2, 0, 4, 9, 5, 0, 5, 1, 0, 5, 3, 0, 5, 1, 0, 0, 0, 34, 39, 35, 32, 37, 31, 44, 47, 39, 26, 30, 22, 35, 36, 29, 17, 21, 13, 15, 18, 12, 22, 25, 19, 24, 27, 24, 50, 52, 49, 7, 9, 8, 67, 69, 69, 38, 40, 40, 45, 47, 47, 40, 43, 42, 60, 62, 62, 44, 46, 45, 28, 30, 29, 61, 64, 63, 75, 78, 75, 43, 46, 38, 37, 39, 29, 23, 27, 16, 40, 41, 34, 29, 30, 23, 12, 13, 4, 30, 31, 24, 111, 111, 107, 99, 101, 98, 93, 94, 91, 89, 92, 89, 72, 74, 71, 79, 81, 80, 86, 88, 89, 79, 81, 80, 95, 97, 99, 95, 97, 99, 101, 103, 104, 115, 117, 118, 117, 119, 119, 23, 26, 22, 30, 33, 27, 14, 17, 11, 9, 12, 4, 24, 27, 22, 14, 17, 11, 0, 0, 0, 86, 88, 87, 72, 74, 73, 61, 64, 63, 73, 75, 74, 65, 67, 66, 47, 49, 51, 46, 48, 50, 79, 81, 82, 77, 82, 82, 78, 82, 85, 99, 103, 106, 82, 86, 87, 93, 97, 101, 105, 109, 112, 107, 111, 115, 113, 117, 122, 110, 114, 117, 104, 108, 109, 58, 61, 57, 0, 0, 0, 64, 65, 60, 125, 123, 119, 120, 119, 115, 109, 110, 105, 111, 110, 103, 12, 16, 8, 0, 0, 0, 0, 0, 0, 44, 47, 41, 12, 15, 12, 11, 14, 9, 18, 21, 16, 16, 19, 15, 1, 2, 0, 3, 7, 0, 12, 12, 10, 10, 11, 8, 5, 5, 3, 13, 13, 11, 5, 5, 1, 26, 26, 24, 49, 50, 45, 78, 81, 75, 0, 0, 0, 0, 0, 0, 7, 8, 3, 0, 0, 0, 0, 0, 0, 76, 77, 68, 126, 127, 118, 69, 70, 63, 0, 0, 0, 0, 0, 0, 30, 33, 27, 87, 90, 84, 90, 94, 88, 106, 107, 102, 100, 101, 96, 105, 106, 101, 101, 102, 99, 97, 97, 95, 101, 102, 99, 102, 102, 102, 104, 104, 104, 105, 105, 105, 112, 112, 112, 114, 112, 113, 118, 115, 118, 121, 119, 122, 126, 123, 127, 131, 128, 129, 113, 113, 113, 109, 107, 105, 204, 202, 198, 55, 56, 49, 0, 0, 0, 87, 89, 81, 113, 114, 107, 17, 19, 11, 23, 26, 18, 35, 37, 34, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0, 4, 8, 9, 21, 26, 26, 63, 67, 70, 82, 86, 89, 96, 100, 103, 106, 111, 111, 112, 116, 117, 102, 107, 103, 10, 14, 6, 18, 22, 12, 17, 21, 11, 24, 28, 20, 11, 17, 6, 8, 12, 1, 3, 9, 0, 100, 106, 102, 128, 132, 137, 125, 128, 138, 135, 138, 148, 145, 147, 158, 126, 129, 137, 126, 129, 139, 112, 115, 125, 113, 116, 126, 113, 116, 126, 113, 116, 126, 107, 110, 121, 106, 109, 119, 99, 103, 110, 46, 51, 47, 31, 34, 29, 35, 41, 32, 53, 59, 48, 6, 12, 3, 0, 0, 0, 3, 8, 2, 53, 58, 54, 139, 144, 140, 142, 147, 145, 144, 146, 145, 133, 135, 137, 135, 136, 138, 131, 133, 133, 127, 128, 130, 124, 126, 130, 117, 119, 123, 110, 114, 117, 110, 114, 117, 99, 103, 106, 131, 133, 135, 39, 44, 38, 34, 40, 31, 15, 21, 13, 0, 0, 0, 0, 0, 0, 11, 16, 10, 15, 21, 17, 148, 152, 155, 142, 146, 149, 153, 157, 162, 142, 146, 151, 139, 143, 146, 136, 140, 146, 135, 139, 144, 132, 135, 143, 121, 125, 130, 119, 122, 130, 111, 114, 122, 113, 117, 122, 109, 111, 113, 42, 45, 39, 22, 23, 16, 5, 9, 1, 2, 5, 0, 0, 0, 0, 9, 12, 6, 125, 128, 125, 121, 123, 122, 121, 123, 122, 139, 141, 141, 139, 141, 141, 140, 143, 142, 134, 139, 137, 138, 142, 143, 134, 139, 139, 133, 135, 137, 121, 122, 126, 113, 114, 118, 120, 121, 123, 16, 19, 15, 25, 29, 21, 7, 10, 2, 5, 9, 1, 28, 31, 23, 40, 43, 38, 73, 76, 72, 130, 132, 131, 135, 136, 138, 131, 133, 135, 127, 128, 132, 124, 126, 130, 121, 122, 126, 110, 112, 116, 111, 112, 119, 106, 107, 113, 107, 108, 114, 100, 100, 109, 100, 101, 105, 78, 80, 79, 24, 26, 18, 0, 0, 0, 0, 0, 0, 63, 64, 57, 63, 64, 55, 47, 48, 41, 137, 138, 133, 130, 133, 129, 131, 134, 131, 127, 129, 126, 125, 128, 127, 115, 117, 116, 151, 153, 153, 108, 110, 111, 107, 109, 110, 103, 105, 107, 102, 104, 106, 102, 104, 108, 102, 102, 106, 36, 41, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 17, 11, 22, 24, 21, 31, 33, 33, 124, 126, 128, 125, 124, 127, 124, 126, 128, 127, 128, 130, 122, 124, 125, 119, 123, 124, 115, 116, 120, 111, 115, 118, 175, 179, 180, 132, 136, 139, 103, 107, 110, 110, 114, 117, 104, 108, 113, 96, 99, 105, 99, 103, 108, 97, 100, 108, 98, 102, 107, 100, 101, 105, 13, 13, 11, 0, 0, 0, 33, 31, 27, 117, 115, 111, 120, 119, 113, 119, 118, 112, 118, 117, 110, 79, 80, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 13, 8, 0, 0, 0, 79, 81, 78, 74, 77, 72, 81, 84, 79, 65, 68, 62, 62, 65, 60, 72, 73, 68, 64, 64, 62, 66, 67, 62, 62, 60, 58, 84, 83, 79, 75, 73, 69, 117, 115, 111, 88, 86, 82, 102, 100, 96, 98, 99, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 93, 94, 87, 87, 89, 81, 102, 103, 98, 102, 104, 96, 104, 104, 100, 102, 103, 98, 153, 153, 149, 113, 113, 111, 100, 100, 98, 105, 105, 103, 111, 111, 109, 110, 108, 106, 116, 114, 112, 112, 110, 111, 128, 126, 127, 134, 132, 133, 125, 123, 123, 121, 119, 120, 142, 142, 142, 118, 116, 114, 116, 114, 112, 31, 32, 27, 0, 0, 0, 3, 7, 0, 5, 9, 1, 17, 21, 13, 54, 57, 52, 95, 99, 100, 102, 105, 111, 103, 106, 112, 96, 99, 105, 97, 101, 106, 98, 102, 107, 89, 92, 98, 90, 94, 97, 95, 99, 102, 95, 99, 102, 93, 97, 101, 97, 101, 106, 92, 96, 101, 90, 94, 97, 88, 91, 97, 93, 97, 103, 99, 104, 102, 14, 19, 15, 64, 67, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 33, 25, 54, 60, 51, 62, 67, 63, 119, 123, 128, 127, 130, 140, 126, 128, 141, 121, 121, 134, 116, 116, 129, 116, 118, 131, 105, 108, 120, 102, 104, 117, 99, 102, 114, 98, 100, 113, 97, 99, 112, 96, 98, 111, 93, 96, 107, 131, 135, 138, 1, 3, 0, 0, 0, 0, 0, 0, 0, 50, 53, 45, 33, 37, 29, 34, 40, 31, 22, 24, 21, 149, 151, 150, 143, 145, 144, 138, 140, 142, 133, 135, 137, 129, 131, 132, 122, 123, 127, 117, 119, 123, 110, 111, 118, 114, 113, 118, 115, 116, 122, 107, 107, 116, 102, 103, 110, 104, 106, 112, 0, 0, 0, 75, 81, 72, 0, 0, 0, 53, 58, 52, 48, 54, 45, 63, 69, 62, 32, 37, 33, 121, 125, 128, 143, 147, 153, 145, 148, 154, 142, 146, 151, 141, 145, 150, 136, 140, 146, 133, 137, 142, 125, 128, 136, 119, 122, 130, 118, 121, 129, 113, 116, 124, 104, 107, 115, 121, 125, 132, 26, 29, 28, 0, 0, 0, 87, 90, 84, 93, 96, 88, 37, 40, 32, 60, 63, 58, 83, 83, 81, 106, 108, 107, 120, 122, 121, 125, 128, 127, 130, 130, 130, 132, 134, 136, 130, 132, 133, 130, 132, 133, 127, 128, 132, 121, 122, 126, 107, 108, 112, 109, 110, 117, 106, 107, 111, 43, 45, 46, 57, 60, 52, 46, 50, 42, 65, 69, 58, 80, 83, 77, 44, 47, 39, 32, 35, 32, 138, 140, 142, 135, 136, 140, 135, 136, 140, 133, 135, 139, 130, 131, 135, 127, 128, 132, 255, 255, 255, 123, 124, 130, 110, 111, 118, 102, 103, 112, 102, 102, 114, 97, 98, 105, 115, 116, 120, 81, 83, 73, 0, 0, 0, 38, 40, 30, 80, 82, 72, 70, 71, 64, 22, 23, 16, 119, 120, 115, 132, 135, 132, 133, 136, 133, 130, 133, 129, 123, 126, 123, 117, 119, 119, 174, 177, 176, 179, 181, 180, 115, 117, 118, 107, 109, 110, 106, 107, 109, 99, 100, 102, 99, 100, 104, 71, 73, 74, 35, 35, 33, 47, 47, 43, 19, 19, 15, 40, 40, 36, 24, 25, 22, 3, 5, 5, 129, 131, 132, 125, 124, 128, 125, 127, 131, 123, 125, 127, 122, 123, 127, 121, 122, 126, 120, 121, 123, 111, 113, 117, 123, 125, 125, 152, 154, 156, 110, 114, 115, 106, 107, 111, 105, 109, 114, 104, 108, 113, 99, 103, 108, 99, 103, 108, 96, 99, 105, 96, 99, 105, 30, 32, 33, 37, 37, 37, 0, 0, 0, 102, 100, 96, 124, 123, 116, 125, 122, 116, 117, 114, 108, 101, 98, 90, 0, 0, 0, 0, 0, 0, 14, 17, 11, 0, 3, 0, 0, 0, 0, 0, 0, 0, 12, 15, 12, 76, 80, 74, 87, 88, 83, 64, 65, 58, 56, 57, 52, 69, 69, 67, 68, 71, 68, 62, 65, 62, 79, 80, 77, 59, 60, 57, 123, 121, 117, 95, 93, 87, 89, 86, 78, 114, 111, 103, 145, 142, 132, 127, 124, 113, 135, 135, 126, 106, 107, 100, 0, 0, 0, 0, 0, 0, 49, 50, 43, 98, 99, 92, 99, 100, 93, 105, 106, 99, 108, 109, 102, 109, 110, 105, 105, 106, 101, 108, 109, 104, 127, 128, 123, 105, 106, 101, 121, 122, 117, 102, 103, 98, 116, 117, 114, 118, 118, 116, 120, 120, 118, 115, 115, 115, 120, 118, 119, 121, 119, 120, 117, 114, 115, 117, 114, 115, 116, 114, 112, 118, 116, 114, 74, 71, 65, 0, 0, 0, 60, 62, 54, 78, 81, 75, 53, 57, 49, 52, 55, 49, 96, 100, 101, 105, 108, 116, 97, 101, 106, 97, 101, 106, 95, 98, 104, 95, 98, 104, 91, 95, 100, 91, 95, 100, 91, 95, 100, 92, 96, 99, 91, 95, 98, 93, 97, 103, 91, 95, 98, 92, 96, 99, 97, 99, 103, 88, 92, 95, 92, 96, 99, 0, 0, 0, 13, 19, 12, 38, 41, 34, 0, 0, 0, 55, 59, 51, 14, 17, 9, 32, 36, 28, 44, 47, 43, 125, 127, 133, 128, 128, 139, 128, 128, 139, 121, 121, 132, 115, 115, 126, 115, 115, 126, 108, 108, 121, 103, 103, 117, 100, 100, 113, 98, 100, 113, 95, 97, 108, 95, 97, 108, 93, 96, 109, 107, 111, 119, 0, 0, 0, 47, 51, 43, 0, 0, 0, 24, 28, 20, 18, 22, 14, 23, 26, 18, 15, 18, 12, 120, 122, 119, 143, 145, 144, 138, 138, 140, 136, 138, 139, 127, 128, 130, 120, 119, 124, 118, 117, 122, 115, 114, 119, 109, 110, 117, 106, 107, 113, 103, 104, 111, 101, 102, 108, 95, 96, 103, 122, 124, 125, 17, 21, 13, 0, 0, 0, 8, 14, 8, 43, 49, 41, 54, 60, 51, 10, 15, 11, 84, 89, 89, 140, 144, 149, 132, 135, 141, 145, 149, 152, 140, 144, 147, 144, 145, 151, 125, 128, 134, 120, 124, 129, 116, 119, 125, 113, 117, 122, 110, 113, 119, 109, 112, 120, 103, 104, 113, 7, 12, 12, 0, 0, 0, 38, 41, 36, 7, 10, 4, 36, 39, 33, 23, 26, 20, 45, 48, 45, 117, 119, 119, 118, 118, 118, 127, 127, 127, 129, 131, 130, 133, 136, 135, 132, 135, 134, 120, 121, 123, 125, 127, 131, 117, 119, 123, 114, 115, 119, 108, 109, 113, 107, 108, 112, 111, 113, 115, 123, 126, 121, 0, 0, 0, 10, 13, 8, 29, 32, 26, 50, 52, 49, 18, 21, 20, 125, 127, 129, 135, 136, 140, 136, 137, 141, 132, 134, 138, 130, 131, 135, 127, 128, 132, 237, 239, 243, 121, 122, 126, 107, 108, 114, 104, 106, 112, 104, 105, 114, 99, 99, 108, 94, 95, 101, 13, 14, 9, 12, 13, 4, 10, 12, 4, 63, 64, 55, 51, 52, 45, 21, 22, 15, 87, 88, 83, 138, 139, 134, 133, 136, 133, 127, 129, 126, 130, 132, 131, 122, 124, 123, 115, 117, 116, 223, 224, 223, 111, 113, 115, 107, 108, 112, 101, 102, 106, 101, 100, 105, 96, 98, 102, 103, 105, 107, 31, 34, 29, 0, 0, 0, 19, 19, 15, 15, 16, 11, 14, 14, 12, 0, 2, 1, 99, 100, 102, 129, 128, 133, 124, 126, 130, 123, 125, 128, 123, 125, 128, 120, 121, 125, 117, 119, 123, 120, 121, 125, 96, 98, 100, 209, 211, 215, 100, 104, 108, 105, 109, 112, 100, 104, 110, 100, 104, 110, 99, 103, 108, 99, 100, 106, 96, 99, 105, 88, 91, 97, 55, 57, 59, 28, 28, 28, 0, 0, 0, 103, 99, 96, 132, 129, 123, 125, 122, 116, 118, 115, 109, 123, 120, 112, 0, 0, 0, 0, 0, 0, 14, 20, 13, 0, 3, 0, 1, 7, 1, 22, 24, 21, 7, 9, 6, 109, 112, 107, 76, 77, 70, 50, 52, 42, 52, 54, 46, 57, 59, 56, 58, 59, 56, 76, 76, 74, 77, 77, 75, 92, 90, 89, 94, 92, 86, 81, 80, 71, 95, 94, 83, 128, 129, 113, 156, 154, 136, 166, 164, 149, 155, 156, 147, 0, 0, 0, 0, 1, 0, 0, 0, 0, 98, 99, 92, 92, 93, 86, 91, 92, 85, 112, 113, 106, 106, 107, 100, 107, 108, 101, 142, 143, 136, 114, 115, 108, 106, 107, 100, 112, 113, 108, 106, 107, 102, 102, 103, 98, 133, 131, 129, 121, 119, 118, 124, 122, 120, 115, 116, 113, 119, 117, 118, 119, 117, 118, 124, 121, 122, 111, 109, 109, 104, 104, 104, 110, 108, 106, 52, 50, 46, 0, 0, 0, 90, 90, 86, 79, 80, 73, 65, 68, 60, 44, 47, 41, 91, 96, 94, 95, 99, 102, 100, 104, 110, 96, 99, 105, 95, 98, 104, 93, 97, 101, 91, 95, 98, 95, 97, 101, 82, 84, 88, 103, 105, 109, 95, 97, 101, 93, 94, 98, 99, 100, 106, 93, 94, 98, 92, 93, 97, 91, 95, 98, 93, 97, 101, 0, 0, 0, 40, 45, 41, 11, 16, 10, 0, 0, 0, 0, 0, 0, 32, 35, 30, 0, 0, 0, 0, 0, 0, 118, 119, 126, 129, 129, 140, 128, 128, 139, 120, 120, 131, 118, 116, 128, 211, 212, 223, 107, 107, 118, 107, 107, 118, 208, 208, 219, 104, 105, 116, 96, 96, 108, 96, 96, 108, 98, 101, 111, 91, 94, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 9, 12, 6, 0, 0, 0, 0, 2, 0, 110, 114, 113, 143, 145, 144, 139, 141, 143, 130, 132, 133, 122, 124, 125, 118, 120, 122, 101, 100, 105, 220, 221, 223, 121, 122, 126, 106, 107, 113, 104, 106, 112, 102, 103, 112, 96, 97, 104, 128, 129, 133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 6, 5, 7, 12, 10, 143, 147, 151, 140, 144, 147, 143, 147, 153, 146, 150, 155, 129, 133, 137, 255, 255, 255, 201, 205, 208, 255, 255, 255, 120, 124, 129, 109, 112, 118, 109, 112, 120, 104, 108, 113, 93, 98, 99, 0, 0, 0, 8, 11, 5, 0, 0, 0, 25, 28, 23, 18, 21, 18, 23, 26, 22, 131, 133, 133, 120, 120, 120, 125, 125, 125, 129, 131, 130, 142, 144, 143, 255, 255, 255, 255, 255, 255, 237, 237, 237, 122, 121, 126, 116, 115, 122, 109, 111, 115, 107, 108, 114, 115, 117, 118, 1, 4, 0, 0, 0, 0, 0, 0, 0, 12, 15, 12, 38, 41, 38, 16, 18, 17, 80, 82, 83, 131, 133, 137, 131, 133, 137, 133, 135, 139, 131, 133, 137, 132, 134, 138, 123, 125, 128, 223, 225, 229, 113, 114, 120, 107, 108, 114, 101, 101, 112, 100, 101, 107, 97, 98, 105, 28, 28, 28, 24, 26, 18, 5, 6, 0, 30, 31, 24, 25, 29, 21, 36, 37, 32, 67, 68, 64, 132, 135, 132, 135, 137, 134, 128, 130, 127, 127, 129, 126, 116, 118, 118, 186, 189, 185, 107, 109, 106, 106, 108, 107, 108, 109, 113, 101, 102, 106, 100, 101, 105, 100, 101, 105, 108, 109, 113, 8, 10, 7, 3, 6, 3, 0, 0, 0, 0, 0, 0, 15, 16, 13, 0, 0, 0, 100, 100, 102, 130, 130, 134, 123, 123, 127, 123, 125, 128, 122, 123, 127, 115, 116, 120, 117, 119, 123, 117, 119, 123, 97, 99, 101, 222, 224, 225, 113, 114, 116, 108, 109, 113, 104, 108, 113, 104, 108, 113, 106, 107, 113, 98, 102, 107, 93, 97, 103, 92, 96, 101, 102, 106, 107, 24, 26, 26, 0, 0, 0, 64, 63, 59, 122, 118, 113, 122, 118, 113, 122, 117, 110, 114, 111, 103, 14, 13, 7, 0, 0, 0, 11, 16, 10, 8, 14, 8, 15, 17, 14, 20, 20, 18, 16, 17, 14, 121, 124, 118, 72, 73, 66, 58, 60, 48, 49, 50, 41, 65, 66, 61, 64, 65, 60, 80, 81, 78, 58, 59, 56, 124, 123, 116, 81, 80, 71, 99, 96, 85, 116, 114, 99, 158, 157, 137, 174, 173, 155, 142, 140, 122, 19, 23, 13, 8, 9, 2, 0, 0, 0, 79, 83, 72, 94, 96, 86, 123, 125, 117, 102, 104, 94, 119, 118, 110, 114, 114, 105, 100, 102, 92, 127, 126, 118, 120, 119, 113, 114, 115, 108, 111, 111, 107, 117, 115, 111, 104, 102, 98, 112, 110, 109, 134, 132, 131, 124, 122, 120, 111, 109, 107, 124, 121, 122, 120, 118, 119, 126, 124, 125, 122, 122, 122, 111, 111, 109, 100, 100, 98, 70, 71, 64, 0, 0, 0, 81, 84, 79, 59, 62, 54, 60, 66, 57, 29, 35, 29, 91, 96, 92, 92, 96, 101, 85, 89, 94, 91, 95, 100, 93, 97, 103, 90, 94, 99, 89, 90, 97, 255, 255, 255, 96, 98, 102, 153, 155, 159, 132, 134, 138, 93, 94, 98, 93, 97, 101, 90, 92, 96, 89, 91, 95, 85, 86, 90, 89, 91, 95, 0, 0, 0, 0, 0, 0, 12, 18, 11, 0, 0, 0, 0, 0, 0, 12, 16, 10, 3, 6, 3, 0, 0, 0, 111, 112, 119, 123, 123, 134, 125, 122, 136, 121, 121, 134, 111, 112, 123, 113, 113, 124, 177, 177, 188, 117, 118, 127, 255, 255, 255, 105, 108, 118, 90, 91, 102, 88, 88, 102, 94, 94, 105, 94, 94, 105, 0, 0, 5, 0, 0, 0, 4, 7, 2, 0, 0, 0, 0, 0, 0, 1, 3, 0, 0, 0, 0, 82, 85, 84, 142, 144, 143, 137, 139, 140, 130, 132, 133, 122, 124, 125, 113, 114, 116, 112, 111, 114, 255, 255, 255, 128, 127, 132, 103, 104, 111, 113, 112, 119, 100, 100, 109, 99, 100, 106, 101, 102, 108, 0, 0, 0, 59, 64, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0, 123, 127, 130, 138, 142, 145, 140, 142, 148, 145, 149, 152, 125, 127, 131, 251, 253, 255, 124, 126, 130, 145, 147, 151, 191, 192, 196, 125, 127, 133, 110, 111, 120, 109, 110, 119, 122, 123, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 16, 13, 28, 30, 27, 91, 91, 91, 113, 113, 113, 121, 121, 121, 129, 129, 129, 136, 136, 136, 125, 125, 125, 255, 255, 255, 255, 255, 255, 122, 122, 124, 116, 116, 120, 111, 113, 117, 104, 106, 110, 103, 105, 107, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 4, 7, 6, 8, 10, 9, 142, 143, 145, 133, 135, 137, 136, 138, 139, 135, 136, 140, 132, 134, 138, 122, 123, 127, 255, 255, 255, 122, 123, 129, 109, 110, 117, 107, 107, 116, 94, 95, 101, 95, 96, 103, 89, 92, 91, 7, 9, 6, 0, 0, 0, 0, 3, 0, 5, 9, 3, 5, 9, 3, 5, 8, 5, 123, 126, 123, 131, 134, 131, 131, 134, 131, 128, 130, 127, 122, 124, 123, 152, 155, 152, 255, 255, 255, 113, 115, 114, 109, 111, 115, 103, 105, 109, 101, 100, 105, 96, 98, 102, 102, 104, 108, 9, 12, 8, 12, 15, 12, 0, 0, 0, 0, 0, 0, 23, 26, 22, 2, 4, 3, 74, 76, 78, 130, 131, 135, 128, 128, 130, 126, 125, 130, 124, 126, 130, 120, 121, 125, 120, 121, 123, 122, 124, 125, 206, 208, 209, 148, 149, 151, 108, 110, 111, 113, 114, 116, 98, 102, 105, 103, 106, 112, 99, 100, 106, 93, 97, 103, 99, 100, 106, 95, 97, 101, 106, 108, 107, 32, 35, 32, 4, 7, 2, 22, 23, 16, 113, 112, 106, 123, 119, 114, 123, 119, 114, 123, 120, 112, 99, 95, 87, 0, 0, 0, 8, 14, 8, 3, 8, 4, 10, 15, 11, 19, 22, 19, 18, 23, 19, 82, 85, 80, 75, 78, 73, 52, 54, 42, 62, 63, 54, 58, 59, 52, 56, 57, 52, 63, 64, 57, 149, 150, 145, 81, 80, 71, 87, 86, 75, 101, 98, 86, 135, 133, 117, 159, 158, 138, 161, 157, 140, 144, 142, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 112, 105, 115, 116, 109, 97, 98, 89, 108, 107, 98, 127, 128, 119, 114, 116, 106, 104, 105, 96, 112, 113, 106, 118, 119, 112, 107, 108, 101, 120, 119, 113, 113, 112, 108, 104, 102, 98, 108, 105, 104, 134, 132, 131, 113, 111, 110, 110, 108, 106, 117, 114, 115, 120, 118, 117, 118, 116, 114, 117, 115, 113, 109, 110, 107, 112, 112, 110, 62, 62, 58, 0, 0, 0, 93, 96, 90, 61, 65, 57, 79, 82, 74, 40, 43, 38, 106, 111, 107, 96, 100, 103, 93, 97, 103, 93, 97, 103, 90, 94, 99, 94, 95, 101, 90, 92, 96, 87, 88, 92, 158, 159, 163, 255, 255, 255, 94, 95, 99, 86, 87, 91, 89, 91, 95, 89, 91, 95, 88, 90, 94, 88, 90, 94, 89, 91, 95, 19, 21, 23, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 99, 100, 104, 124, 125, 134, 120, 118, 130, 120, 120, 133, 121, 119, 131, 104, 102, 112, 255, 255, 255, 202, 203, 212, 255, 255, 255, 109, 110, 119, 100, 100, 109, 94, 94, 105, 94, 94, 105, 94, 95, 103, 96, 97, 104, 0, 0, 0, 24, 27, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 13, 18, 16, 129, 131, 130, 136, 138, 137, 133, 135, 137, 121, 123, 124, 108, 110, 111, 114, 114, 116, 189, 191, 193, 107, 108, 112, 110, 111, 118, 105, 104, 111, 106, 105, 112, 101, 102, 110, 102, 103, 110, 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 0, 0, 0, 86, 91, 92, 134, 138, 141, 136, 137, 141, 138, 142, 145, 146, 148, 152, 127, 128, 132, 204, 208, 211, 168, 170, 174, 122, 123, 127, 118, 120, 124, 113, 113, 122, 113, 114, 120, 106, 107, 111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 5, 1, 12, 15, 12, 30, 33, 29, 129, 129, 129, 122, 122, 122, 129, 129, 129, 134, 134, 134, 125, 125, 125, 253, 253, 253, 148, 148, 148, 127, 127, 129, 113, 112, 115, 116, 116, 120, 108, 109, 113, 97, 99, 103, 71, 73, 72, 29, 31, 28, 0, 0, 0, 0, 1, 0, 0, 1, 0, 11, 14, 13, 12, 17, 15, 136, 138, 139, 125, 127, 129, 135, 136, 138, 135, 136, 138, 132, 134, 136, 124, 126, 128, 248, 250, 249, 123, 125, 128, 111, 113, 117, 106, 107, 113, 97, 98, 105, 90, 92, 98, 120, 121, 123, 23, 25, 24, 0, 0, 0, 0, 0, 0, 3, 6, 1, 65, 68, 62, 0, 0, 0, 131, 134, 131, 132, 135, 132, 129, 131, 128, 130, 133, 129, 118, 121, 120, 120, 122, 119, 230, 231, 226, 111, 114, 111, 103, 105, 107, 102, 104, 108, 100, 101, 105, 92, 93, 97, 97, 99, 103, 0, 2, 1, 14, 16, 13, 0, 0, 0, 5, 8, 5, 29, 29, 29, 0, 0, 0, 53, 55, 57, 121, 123, 124, 122, 124, 125, 125, 127, 129, 127, 128, 130, 115, 117, 118, 121, 123, 124, 115, 117, 118, 111, 114, 113, 255, 255, 255, 138, 140, 140, 99, 100, 102, 97, 101, 104, 99, 103, 108, 96, 99, 105, 93, 97, 101, 93, 97, 103, 85, 89, 92, 93, 95, 94, 25, 30, 26, 23, 26, 18, 0, 0, 0, 113, 112, 104, 121, 118, 110, 124, 121, 113, 118, 115, 107, 110, 107, 99, 0, 0, 0, 31, 36, 30, 0, 3, 0, 0, 1, 0, 0, 0, 0, 5, 10, 6, 29, 35, 29, 101, 104, 96, 53, 57, 45, 52, 54, 44, 62, 63, 54, 90, 90, 86, 60, 59, 50, 90, 90, 78, 97, 96, 85, 117, 115, 102, 113, 110, 95, 149, 144, 130, 161, 160, 140, 165, 163, 146, 33, 35, 22, 0, 0, 0, 0, 0, 0, 111, 112, 105, 70, 71, 64, 87, 89, 79, 129, 131, 121, 101, 103, 93, 120, 121, 112, 112, 111, 103, 116, 114, 108, 118, 117, 108, 113, 112, 106, 128, 127, 121, 110, 109, 102, 116, 114, 110, 111, 109, 105, 103, 101, 99, 174, 172, 170, 98, 96, 95, 108, 105, 106, 104, 102, 102, 105, 103, 102, 104, 102, 100, 110, 108, 106, 101, 102, 99, 104, 104, 100, 62, 60, 56, 0, 0, 0, 83, 87, 79, 69, 73, 65, 68, 72, 64, 32, 35, 30, 107, 113, 109, 94, 95, 99, 93, 94, 98, 95, 96, 103, 93, 94, 100, 95, 97, 101, 99, 100, 104, 95, 96, 103, 82, 84, 88, 255, 255, 255, 92, 93, 97, 92, 93, 97, 88, 90, 94, 87, 88, 92, 85, 86, 90, 88, 90, 94, 83, 85, 89, 115, 117, 118, 0, 0, 0, 0, 0, 0, 93, 99, 95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 36, 38, 39, 131, 132, 141, 127, 125, 137, 121, 119, 131, 118, 116, 128, 112, 110, 122, 106, 106, 117, 106, 106, 115, 103, 104, 113, 101, 102, 110, 100, 100, 109, 95, 95, 107, 95, 96, 105, 97, 98, 107, 124, 125, 132, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 3, 1, 0, 0, 0, 109, 113, 112, 139, 141, 143, 132, 134, 136, 127, 128, 130, 116, 118, 120, 113, 114, 118, 113, 114, 118, 107, 108, 114, 109, 108, 115, 108, 107, 114, 106, 106, 115, 102, 103, 112, 93, 94, 100, 134, 139, 137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 6, 5, 22, 27, 28, 136, 141, 142, 133, 135, 139, 136, 140, 144, 143, 144, 148, 144, 145, 149, 133, 137, 140, 121, 125, 128, 109, 111, 115, 115, 116, 120, 111, 113, 117, 109, 110, 117, 109, 111, 113, 107, 109, 108, 21, 26, 22, 16, 19, 15, 0, 0, 0, 1, 7, 3, 8, 10, 7, 11, 14, 11, 111, 114, 113, 115, 117, 116, 119, 119, 119, 129, 129, 129, 131, 131, 131, 137, 137, 137, 136, 136, 136, 128, 128, 128, 121, 121, 123, 118, 117, 120, 109, 109, 113, 103, 105, 109, 120, 122, 121, 11, 14, 13, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 4, 2, 17, 21, 20, 103, 106, 105, 118, 120, 122, 137, 139, 140, 133, 135, 137, 132, 135, 134, 128, 130, 129, 255, 255, 255, 122, 124, 125, 108, 109, 113, 108, 110, 111, 99, 100, 106, 92, 93, 97, 96, 98, 100, 0, 0, 0, 17, 19, 19, 0, 0, 0, 5, 11, 4, 11, 14, 9, 10, 13, 8, 125, 128, 123, 135, 138, 132, 132, 135, 132, 130, 133, 129, 125, 128, 125, 118, 121, 118, 144, 147, 143, 135, 137, 134, 108, 110, 109, 104, 106, 110, 106, 107, 109, 95, 97, 101, 92, 94, 95, 14, 16, 15, 24, 27, 24, 0, 0, 0, 4, 7, 2, 5, 8, 5, 0, 1, 0, 1, 3, 2, 114, 116, 115, 128, 130, 129, 125, 128, 127, 121, 121, 121, 116, 118, 120, 119, 119, 119, 110, 112, 114, 113, 114, 116, 107, 109, 108, 230, 232, 232, 122, 124, 123, 111, 116, 114, 100, 105, 106, 95, 99, 100, 93, 98, 99, 90, 94, 97, 88, 92, 95, 77, 82, 80, 38, 43, 39, 42, 45, 39, 5, 6, 0, 95, 93, 87, 125, 124, 115, 128, 128, 119, 130, 127, 119, 132, 129, 121, 15, 12, 4, 14, 17, 11, 8, 14, 10, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 7, 1, 104, 110, 101, 48, 52, 42, 57, 59, 49, 71, 71, 62, 45, 43, 37, 158, 157, 146, 83, 81, 68, 91, 88, 75, 156, 152, 137, 127, 122, 110, 160, 155, 141, 151, 150, 129, 120, 122, 108, 0, 0, 0, 0, 0, 0, 13, 14, 7, 81, 83, 75, 131, 133, 126, 95, 97, 87, 100, 102, 92, 112, 113, 104, 112, 113, 104, 93, 95, 85, 106, 105, 97, 120, 121, 112, 149, 148, 142, 102, 100, 96, 116, 114, 110, 108, 105, 104, 109, 107, 105, 108, 105, 104, 95, 96, 93, 104, 104, 102, 105, 103, 102, 109, 110, 107, 105, 105, 103, 109, 110, 107, 100, 100, 98, 107, 108, 103, 92, 93, 88, 60, 62, 54, 0, 0, 0, 88, 90, 82, 73, 76, 68, 80, 84, 73, 32, 36, 28, 110, 113, 108, 92, 94, 95, 92, 93, 99, 95, 96, 103, 93, 94, 98, 92, 93, 97, 90, 92, 96, 88, 90, 94, 90, 92, 96, 83, 85, 89, 82, 84, 88, 86, 87, 91, 88, 90, 92, 86, 88, 89, 89, 91, 93, 89, 91, 93, 85, 86, 90, 107, 109, 110, 0, 0, 0, 0, 0, 0, 31, 34, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 7, 8, 128, 129, 135, 129, 128, 137, 126, 124, 136, 120, 118, 130, 115, 113, 125, 111, 112, 123, 110, 111, 122, 102, 102, 114, 101, 102, 110, 95, 96, 105, 93, 92, 101, 92, 93, 99, 90, 92, 98, 108, 109, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 110, 113, 110, 137, 139, 138, 133, 136, 135, 129, 131, 130, 124, 126, 126, 122, 122, 124, 117, 119, 123, 113, 112, 117, 112, 111, 118, 108, 107, 114, 108, 107, 114, 103, 104, 113, 97, 98, 105, 116, 118, 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 14, 19, 17, 139, 143, 144, 129, 133, 137, 132, 136, 137, 135, 139, 142, 139, 143, 146, 136, 140, 144, 126, 130, 133, 125, 129, 132, 113, 114, 118, 116, 117, 124, 114, 115, 119, 107, 109, 108, 129, 131, 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 9, 5, 16, 19, 15, 52, 55, 51, 107, 109, 106, 116, 117, 114, 126, 126, 126, 133, 133, 133, 139, 137, 135, 137, 134, 133, 128, 128, 128, 120, 120, 120, 122, 122, 124, 113, 113, 113, 108, 110, 111, 106, 108, 107, 9, 12, 8, 1, 3, 0, 0, 0, 0, 0, 3, 0, 4, 9, 7, 4, 9, 7, 41, 46, 44, 126, 131, 129, 129, 131, 128, 132, 135, 132, 131, 134, 131, 129, 135, 129, 99, 102, 96, 102, 104, 104, 105, 110, 108, 98, 102, 103, 98, 103, 101, 89, 92, 91, 90, 92, 94, 16, 18, 17, 25, 28, 25, 0, 0, 0, 10, 13, 8, 22, 25, 19, 15, 18, 12, 88, 91, 86, 143, 146, 140, 138, 141, 136, 128, 130, 127, 120, 122, 119, 114, 116, 113, 114, 117, 111, 114, 116, 113, 109, 111, 111, 101, 103, 102, 104, 106, 108, 102, 104, 104, 95, 97, 99, 54, 57, 54, 7, 9, 6, 0, 0, 0, 0, 0, 0, 8, 10, 7, 12, 15, 12, 0, 1, 0, 117, 120, 117, 126, 126, 124, 124, 126, 126, 125, 125, 125, 117, 119, 119, 118, 120, 122, 121, 123, 122, 114, 116, 115, 111, 111, 111, 111, 114, 113, 101, 103, 102, 106, 111, 109, 98, 103, 101, 98, 103, 101, 96, 100, 101, 91, 96, 96, 94, 96, 97, 73, 75, 74, 131, 135, 134, 29, 32, 26, 0, 0, 0, 76, 77, 70, 118, 117, 108, 128, 128, 119, 131, 130, 121, 141, 137, 129, 47, 46, 37, 0, 0, 0, 0, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, 124, 113, 56, 62, 53, 57, 58, 51, 63, 62, 56, 81, 78, 70, 109, 106, 96, 89, 84, 72, 104, 102, 89, 130, 126, 110, 150, 146, 129, 155, 150, 136, 161, 160, 140, 6, 8, 0, 0, 0, 0, 0, 0, 0, 99, 100, 91, 92, 93, 86, 95, 94, 85, 91, 92, 83, 111, 112, 103, 100, 100, 89, 117, 116, 107, 110, 109, 98, 99, 100, 91, 111, 112, 105, 117, 116, 109, 91, 90, 86, 112, 111, 107, 104, 104, 102, 108, 105, 104, 98, 98, 96, 100, 100, 98, 99, 97, 96, 95, 96, 93, 105, 105, 103, 100, 100, 98, 113, 113, 111, 105, 105, 103, 114, 115, 110, 95, 96, 91, 76, 77, 70, 0, 0, 0, 87, 89, 81, 83, 87, 79, 75, 79, 71, 33, 37, 29, 114, 117, 111, 87, 88, 92, 92, 93, 99, 90, 92, 98, 90, 92, 96, 89, 91, 95, 90, 92, 98, 89, 91, 95, 88, 90, 94, 86, 87, 91, 91, 90, 95, 85, 86, 90, 87, 89, 90, 83, 85, 87, 89, 91, 93, 75, 77, 79, 80, 82, 83, 95, 97, 99, 0, 0, 0, 0, 0, 0, 5, 10, 6, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 4, 0, 121, 123, 124, 130, 130, 134, 119, 118, 125, 121, 120, 129, 119, 117, 127, 111, 112, 121, 113, 113, 122, 102, 102, 114, 103, 104, 113, 99, 100, 106, 97, 98, 105, 96, 98, 100, 89, 91, 93, 86, 88, 87, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 95, 98, 93, 138, 141, 138, 137, 140, 134, 131, 134, 131, 128, 130, 127, 118, 120, 122, 117, 119, 121, 115, 116, 120, 106, 107, 111, 100, 101, 107, 107, 108, 114, 102, 104, 108, 96, 98, 102, 100, 102, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 6, 11, 7, 0, 5, 1, 52, 57, 53, 66, 70, 69, 114, 121, 119, 139, 146, 146, 142, 147, 147, 145, 149, 150, 126, 132, 132, 121, 128, 128, 117, 124, 124, 111, 116, 114, 112, 117, 115, 100, 106, 102, 171, 179, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 12, 8, 3, 8, 4, 16, 19, 15, 125, 128, 125, 107, 109, 106, 128, 128, 126, 127, 127, 125, 126, 126, 124, 133, 133, 131, 137, 138, 135, 118, 118, 116, 115, 116, 113, 113, 113, 111, 108, 109, 106, 100, 102, 99, 0, 0, 0, 2, 5, 1, 0, 0, 0, 0, 0, 0, 1, 7, 3, 1, 7, 3, 158, 163, 157, 85, 91, 84, 113, 119, 112, 171, 177, 171, 178, 181, 175, 206, 209, 201, 167, 171, 163, 155, 158, 152, 139, 144, 138, 142, 144, 141, 142, 147, 143, 72, 78, 74, 21, 26, 24, 37, 40, 36, 21, 26, 22, 0, 5, 0, 10, 15, 9, 67, 72, 66, 1, 7, 1, 58, 61, 55, 22, 28, 22, 26, 32, 25, 51, 54, 50, 90, 93, 90, 115, 118, 112, 92, 98, 91, 85, 90, 86, 76, 81, 77, 49, 54, 52, 28, 33, 29, 12, 17, 13, 33, 36, 33, 54, 57, 54, 8, 11, 5, 0, 0, 0, 0, 4, 0, 3, 6, 1, 5, 9, 3, 37, 40, 36, 0, 0, 0, 32, 35, 32, 51, 54, 50, 66, 69, 65, 104, 107, 104, 102, 107, 101, 102, 105, 102, 99, 101, 98, 110, 113, 108, 103, 108, 104, 100, 106, 102, 95, 100, 96, 69, 74, 72, 41, 46, 44, 25, 29, 30, 32, 39, 39, 35, 40, 38, 29, 34, 33, 42, 47, 45, 10, 13, 10, 0, 0, 0, 48, 49, 42, 131, 129, 123, 131, 130, 121, 134, 130, 122, 129, 126, 118, 84, 83, 75, 0, 0, 0, 12, 15, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 158, 164, 151, 53, 62, 52, 94, 96, 86, 63, 59, 51, 184, 179, 167, 86, 81, 71, 101, 96, 84, 121, 117, 102, 154, 150, 131, 159, 154, 138, 156, 152, 135, 60, 60, 44, 0, 0, 0, 0, 0, 0, 83, 87, 79, 87, 89, 81, 103, 102, 93, 103, 101, 95, 85, 85, 76, 100, 100, 91, 113, 112, 104, 112, 111, 103, 95, 94, 85, 139, 138, 129, 108, 107, 98, 131, 129, 123, 118, 116, 112, 109, 107, 103, 98, 96, 93, 105, 104, 100, 125, 123, 121, 99, 99, 97, 99, 99, 97, 109, 107, 105, 102, 103, 100, 104, 104, 102, 104, 104, 100, 106, 107, 102, 104, 104, 100, 94, 95, 90, 71, 72, 67, 0, 0, 0, 90, 91, 84, 72, 75, 67, 115, 119, 108, 39, 43, 35, 106, 109, 101, 80, 82, 83, 94, 96, 97, 97, 99, 103, 87, 88, 92, 92, 91, 96, 91, 90, 95, 88, 90, 94, 93, 93, 95, 90, 89, 92, 93, 93, 95, 88, 90, 92, 90, 90, 90, 89, 92, 91, 76, 79, 78, 76, 76, 76, 51, 53, 52, 135, 137, 136, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57, 63, 54, 0, 4, 0, 44, 48, 37, 143, 147, 134, 189, 194, 179, 210, 215, 202, 207, 211, 198, 182, 186, 178, 166, 169, 164, 195, 199, 191, 185, 186, 179, 170, 173, 165, 177, 180, 170, 68, 72, 64, 24, 26, 18, 16, 19, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 1, 13, 19, 10, 59, 63, 52, 32, 35, 30, 35, 38, 32, 20, 26, 19, 26, 32, 25, 11, 14, 9, 9, 12, 6, 21, 24, 18, 18, 21, 16, 4, 7, 2, 0, 5, 1, 14, 19, 15, 29, 35, 31, 42, 47, 43, 21, 26, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 181, 186, 182, 31, 36, 32, 50, 57, 55, 42, 52, 49, 34, 44, 41, 33, 43, 40, 33, 43, 40, 44, 53, 52, 35, 42, 41, 39, 48, 47, 34, 41, 38, 38, 45, 43, 45, 52, 52, 37, 44, 42, 27, 34, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 19, 15, 5, 11, 4, 93, 99, 93, 49, 55, 48, 31, 36, 30, 39, 42, 39, 35, 38, 32, 40, 45, 39, 30, 33, 25, 35, 38, 32, 34, 40, 31, 33, 37, 29, 43, 46, 40, 39, 42, 37, 40, 43, 40, 36, 38, 35, 15, 17, 14, 0, 0, 0, 0, 0, 0, 13, 18, 14, 53, 58, 54, 26, 32, 25, 42, 48, 41, 54, 59, 53, 46, 51, 45, 46, 51, 45, 41, 47, 40, 57, 63, 56, 39, 44, 40, 48, 53, 49, 53, 58, 54, 48, 53, 49, 55, 60, 56, 49, 54, 52, 47, 52, 50, 19, 24, 20, 0, 0, 0, 15, 21, 15, 17, 23, 14, 100, 106, 100, 46, 51, 45, 50, 56, 49, 54, 59, 53, 48, 54, 47, 50, 56, 51, 32, 40, 33, 42, 48, 41, 42, 49, 45, 39, 44, 40, 47, 52, 48, 35, 40, 36, 38, 43, 39, 36, 42, 38, 38, 43, 39, 32, 37, 33, 0, 0, 0, 18, 21, 18, 12, 15, 12, 10, 13, 10, 25, 28, 23, 22, 28, 24, 30, 33, 29, 24, 27, 24, 25, 30, 28, 26, 31, 29, 31, 35, 34, 19, 24, 22, 33, 38, 36, 37, 39, 38, 28, 33, 31, 29, 36, 34, 31, 35, 34, 28, 33, 31, 25, 33, 28, 32, 36, 37, 36, 43, 41, 38, 42, 41, 36, 42, 38, 32, 40, 37, 68, 71, 68, 25, 28, 25, 0, 0, 0, 109, 107, 101, 132, 131, 122, 141, 140, 132, 138, 135, 127, 121, 120, 114, 0, 0, 0, 11, 14, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 163, 171, 164, 42, 50, 43, 60, 66, 57, 150, 154, 143, 159, 156, 148, 83, 78, 66, 99, 94, 84, 118, 113, 101, 140, 135, 121, 147, 143, 124, 159, 154, 140, 153, 148, 134, 8, 10, 0, 0, 0, 0, 0, 0, 0, 79, 80, 73, 92, 94, 84, 98, 99, 90, 120, 119, 111, 105, 105, 94, 121, 121, 110, 120, 117, 106, 117, 114, 104, 89, 83, 74, 141, 140, 132, 113, 109, 101, 108, 106, 100, 98, 97, 91, 108, 106, 102, 103, 101, 97, 98, 96, 93, 103, 101, 99, 93, 94, 91, 111, 109, 107, 105, 103, 102, 102, 103, 100, 101, 102, 97, 101, 102, 97, 104, 104, 100, 104, 105, 98, 94, 95, 90, 70, 71, 66, 0, 0, 0, 87, 89, 81, 66, 70, 60, 76, 77, 68, 22, 26, 15, 123, 127, 117, 57, 57, 55, 74, 75, 74, 72, 72, 74, 84, 83, 86, 73, 73, 75, 77, 77, 77, 80, 80, 80, 85, 87, 86, 72, 72, 72, 64, 64, 62, 63, 63, 61, 74, 77, 74, 67, 70, 65, 38, 39, 36, 19, 19, 17, 25, 28, 25, 10, 13, 10, 46, 49, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 15, 21, 13, 117, 125, 104, 17, 21, 11, 26, 30, 20, 24, 28, 20, 28, 31, 25, 39, 42, 37, 33, 36, 31, 35, 38, 32, 31, 34, 29, 39, 42, 37, 36, 39, 31, 38, 41, 34, 30, 33, 25, 37, 40, 32, 25, 28, 23, 33, 36, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 159, 163, 155, 24, 28, 20, 35, 41, 34, 38, 43, 37, 52, 55, 49, 40, 46, 37, 29, 37, 28, 38, 47, 37, 45, 50, 44, 35, 42, 38, 27, 34, 29, 41, 48, 45, 41, 48, 45, 38, 45, 43, 37, 45, 40, 27, 32, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 75, 68, 17, 22, 16, 37, 45, 38, 39, 47, 44, 28, 36, 29, 41, 52, 44, 31, 42, 31, 60, 71, 60, 26, 36, 31, 40, 53, 44, 32, 42, 36, 38, 46, 41, 42, 49, 45, 41, 51, 48, 31, 40, 37, 29, 36, 34, 0, 4, 0, 0, 0, 0, 0, 0, 0, 13, 19, 12, 132, 137, 131, 46, 51, 45, 36, 42, 36, 38, 43, 37, 33, 37, 29, 14, 21, 9, 18, 24, 15, 95, 99, 89, 35, 38, 30, 36, 42, 36, 35, 41, 32, 57, 63, 54, 33, 36, 31, 45, 50, 46, 32, 37, 33, 21, 26, 22, 0, 0, 0, 0, 0, 0, 21, 27, 20, 76, 82, 75, 56, 62, 55, 48, 54, 47, 48, 54, 47, 52, 57, 51, 55, 61, 54, 36, 42, 36, 38, 43, 37, 34, 40, 33, 61, 66, 62, 31, 36, 32, 42, 47, 43, 45, 50, 46, 38, 43, 39, 40, 45, 41, 41, 46, 42, 0, 0, 0, 42, 48, 41, 125, 130, 124, 36, 42, 34, 50, 58, 51, 49, 55, 48, 51, 59, 52, 43, 49, 43, 56, 64, 56, 43, 49, 43, 45, 50, 46, 24, 29, 23, 22, 28, 24, 20, 26, 19, 21, 27, 20, 25, 30, 24, 18, 23, 17, 26, 29, 26, 51, 54, 48, 0, 1, 0, 18, 21, 16, 12, 16, 10, 103, 106, 101, 18, 21, 16, 16, 19, 15, 10, 13, 10, 14, 16, 15, 14, 19, 17, 12, 15, 12, 20, 25, 23, 21, 26, 24, 4, 9, 7, 27, 32, 30, 10, 14, 13, 8, 15, 13, 0, 4, 2, 15, 20, 19, 10, 17, 15, 14, 21, 21, 8, 13, 12, 15, 20, 19, 37, 40, 36, 42, 42, 40, 45, 45, 45, 35, 33, 32, 0, 0, 0, 110, 109, 102, 125, 124, 115, 135, 135, 126, 144, 141, 133, 142, 141, 133, 0, 0, 0, 5, 9, 3, 0, 3, 0, 0, 0, 0, 162, 167, 163, 24, 32, 27, 59, 68, 65, 61, 67, 58, 54, 58, 50, 95, 97, 87, 114, 114, 105, 95, 92, 84, 121, 118, 105, 143, 141, 126, 159, 155, 135, 157, 155, 138, 24, 24, 10, 0, 0, 0, 0, 0, 0, 138, 142, 134, 84, 85, 76, 93, 95, 85, 113, 114, 105, 109, 108, 99, 98, 98, 86, 125, 122, 114, 103, 102, 91, 85, 85, 74, 115, 112, 102, 139, 138, 127, 105, 104, 96, 103, 101, 95, 109, 107, 101, 123, 121, 115, 94, 92, 88, 99, 98, 94, 97, 95, 93, 100, 100, 98, 96, 94, 90, 94, 95, 90, 109, 110, 105, 102, 100, 96, 108, 109, 104, 102, 100, 96, 102, 104, 96, 88, 90, 82, 71, 72, 67, 0, 0, 0, 89, 93, 85, 74, 78, 68, 90, 91, 82, 68, 72, 64, 0, 1, 0, 10, 12, 4, 20, 21, 16, 1, 2, 0, 7, 8, 3, 19, 19, 15, 17, 18, 13, 7, 8, 1, 12, 13, 6, 20, 21, 14, 10, 12, 4, 16, 17, 12, 27, 28, 21, 38, 39, 34, 31, 32, 27, 45, 46, 41, 28, 31, 25, 37, 40, 34, 29, 32, 26, 53, 56, 51, 7, 10, 4, 0, 0, 0, 0, 0, 0, 0, 2, 0, 152, 158, 149, 48, 52, 42, 53, 57, 47, 111, 116, 103, 255, 255, 255, 18, 22, 10, 229, 233, 220, 58, 62, 47, 61, 66, 51, 52, 57, 41, 75, 80, 65, 51, 56, 40, 90, 95, 80, 67, 71, 59, 22, 26, 15, 36, 42, 34, 40, 46, 37, 48, 52, 44, 0, 0, 0, 0, 0, 0, 3, 9, 0, 124, 130, 119, 37, 41, 30, 51, 55, 42, 36, 43, 29, 81, 87, 74, 221, 225, 212, 242, 246, 231, 26, 31, 16, 181, 186, 171, 142, 146, 131, 48, 54, 36, 192, 196, 181, 222, 227, 211, 18, 21, 16, 40, 45, 39, 20, 25, 21, 24, 27, 24, 25, 30, 26, 59, 64, 60, 0, 0, 0, 52, 57, 53, 25, 33, 26, 40, 45, 39, 48, 53, 49, 37, 45, 38, 212, 221, 206, 229, 239, 220, 0, 2, 0, 0, 4, 0, 65, 75, 56, 0, 0, 0, 205, 214, 197, 124, 133, 121, 198, 206, 198, 6, 13, 8, 0, 6, 3, 8, 13, 12, 32, 37, 33, 45, 48, 45, 11, 14, 9, 136, 139, 133, 61, 65, 57, 44, 47, 39, 39, 43, 35, 25, 32, 18, 214, 218, 205, 175, 177, 162, 16, 19, 4, 21, 25, 12, 7, 11, 0, 181, 186, 171, 122, 126, 113, 36, 40, 29, 12, 16, 10, 35, 37, 34, 25, 30, 26, 32, 37, 33, 0, 0, 0, 0, 0, 0, 140, 146, 139, 29, 35, 29, 57, 63, 56, 71, 77, 70, 67, 72, 66, 64, 70, 64, 55, 61, 54, 40, 45, 39, 17, 22, 16, 41, 46, 42, 27, 32, 28, 10, 14, 13, 7, 12, 10, 3, 7, 6, 22, 27, 28, 4, 9, 7, 29, 34, 33, 6, 11, 7, 103, 108, 104, 86, 92, 88, 39, 44, 40, 21, 26, 22, 34, 39, 35, 40, 45, 41, 42, 48, 41, 49, 55, 48, 47, 50, 45, 22, 25, 19, 12, 15, 12, 15, 17, 14, 25, 28, 25, 14, 19, 15, 2, 4, 3, 6, 11, 7, 12, 17, 15, 12, 17, 15, 0, 2, 0, 4, 7, 4, 33, 36, 33, 2, 5, 1, 0, 0, 0, 4, 9, 7, 16, 18, 17, 9, 11, 12, 4, 8, 9, 9, 11, 10, 6, 11, 9, 6, 11, 9, 0, 2, 0, 12, 16, 17, 18, 20, 22, 9, 11, 10, 11, 16, 14, 28, 33, 31, 12, 17, 15, 7, 12, 12, 15, 20, 19, 7, 12, 10, 17, 19, 19, 23, 23, 23, 47, 47, 45, 50, 50, 48, 0, 0, 0, 70, 71, 64, 125, 124, 115, 148, 147, 139, 138, 137, 128, 127, 126, 118, 21, 22, 15, 11, 14, 9, 0, 0, 0, 155, 161, 154, 36, 42, 38, 63, 70, 65, 55, 62, 59, 48, 54, 45, 51, 54, 46, 58, 59, 52, 74, 73, 64, 115, 112, 104, 144, 142, 127, 144, 142, 127, 157, 156, 135, 156, 154, 138, 0, 0, 0, 0, 0, 0, 33, 37, 29, 88, 92, 82, 109, 111, 103, 104, 105, 96, 94, 96, 86, 120, 121, 112, 125, 125, 113, 103, 102, 91, 103, 102, 91, 118, 117, 106, 99, 98, 90, 151, 148, 140, 103, 100, 92, 111, 110, 103, 97, 96, 87, 94, 92, 86, 100, 99, 93, 128, 127, 123, 100, 98, 97, 101, 102, 99, 102, 100, 96, 95, 93, 89, 103, 101, 97, 127, 126, 122, 103, 101, 97, 110, 108, 104, 105, 104, 98, 93, 94, 87, 72, 73, 66, 0, 0, 0, 91, 92, 85, 79, 82, 74, 83, 84, 77, 96, 100, 90, 21, 23, 13, 24, 26, 18, 19, 23, 15, 15, 16, 11, 93, 95, 85, 64, 66, 56, 31, 33, 21, 108, 111, 96, 47, 49, 34, 91, 93, 79, 122, 125, 108, 149, 151, 137, 194, 197, 182, 6, 7, 2, 24, 25, 22, 33, 33, 31, 19, 22, 19, 26, 29, 26, 16, 19, 15, 7, 10, 4, 17, 20, 15, 0, 0, 0, 0, 0, 0, 81, 85, 77, 29, 32, 24, 30, 32, 22, 60, 62, 50, 163, 167, 154, 243, 247, 225, 100, 104, 82, 237, 243, 220, 94, 99, 79, 214, 220, 197, 222, 228, 205, 64, 69, 49, 143, 148, 130, 61, 66, 51, 208, 212, 201, 121, 124, 116, 12, 16, 10, 16, 19, 13, 18, 21, 16, 28, 31, 25, 0, 0, 0, 34, 40, 31, 20, 26, 15, 46, 50, 38, 52, 56, 43, 47, 53, 42, 49, 56, 42, 65, 69, 54, 40, 45, 32, 19, 26, 12, 9, 13, 0, 166, 170, 158, 29, 33, 22, 157, 160, 152, 177, 178, 173, 14, 15, 10, 4, 7, 4, 15, 17, 16, 14, 16, 15, 28, 30, 27, 90, 95, 93, 0, 0, 0, 142, 147, 145, 10, 15, 11, 56, 62, 55, 54, 60, 51, 42, 48, 39, 18, 24, 13, 31, 40, 28, 2, 11, 1, 0, 0, 0, 100, 107, 96, 0, 4, 0, 1, 7, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 10, 7, 9, 8, 2, 4, 3, 18, 20, 22, 14, 16, 15, 60, 63, 60, 48, 54, 47, 29, 30, 23, 21, 23, 13, 35, 37, 23, 0, 2, 0, 12, 13, 4, 83, 83, 79, 77, 77, 75, 63, 63, 61, 50, 52, 51, 65, 67, 68, 69, 71, 75, 75, 77, 81, 78, 79, 83, 101, 102, 106, 96, 98, 102, 109, 110, 117, 137, 138, 144, 132, 136, 139, 49, 54, 54, 26, 29, 24, 15, 18, 12, 3, 6, 1, 0, 0, 0, 0, 1, 0, 13, 18, 14, 154, 158, 159, 148, 152, 155, 154, 158, 161, 146, 150, 153, 146, 150, 153, 140, 144, 147, 131, 134, 140, 131, 135, 138, 125, 129, 132, 114, 118, 124, 116, 119, 125, 106, 107, 113, 100, 104, 110, 121, 125, 128, 61, 66, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 36, 34, 52, 55, 51, 49, 49, 47, 110, 112, 112, 125, 128, 127, 129, 131, 132, 128, 129, 131, 131, 133, 135, 138, 138, 140, 131, 131, 135, 135, 136, 140, 131, 132, 139, 137, 138, 144, 132, 134, 138, 136, 137, 141, 143, 144, 148, 127, 128, 132, 134, 138, 141, 142, 146, 149, 134, 138, 141, 132, 136, 139, 133, 135, 139, 142, 143, 145, 139, 141, 143, 138, 140, 142, 138, 140, 142, 125, 127, 129, 133, 135, 137, 139, 143, 144, 136, 138, 137, 138, 140, 140, 120, 122, 121, 86, 87, 84, 0, 0, 0, 0, 0, 0, 58, 59, 52, 127, 128, 119, 144, 141, 131, 133, 132, 124, 132, 131, 120, 114, 113, 107, 0, 0, 0, 80, 83, 75, 67, 71, 63, 53, 58, 52, 71, 78, 74, 66, 76, 68, 24, 36, 18, 27, 36, 21, 26, 27, 20, 23, 24, 17, 63, 62, 54, 62, 62, 50, 154, 154, 140, 155, 156, 140, 9, 11, 1, 2, 4, 0, 0, 0, 0, 113, 114, 107, 84, 85, 78, 86, 87, 80, 104, 103, 94, 102, 101, 92, 109, 108, 99, 130, 129, 118, 108, 107, 98, 113, 112, 104, 107, 104, 96, 107, 104, 96, 102, 101, 92, 102, 99, 91, 116, 115, 106, 88, 86, 80, 124, 121, 115, 98, 96, 93, 99, 98, 94, 98, 96, 95, 102, 100, 96, 96, 94, 90, 90, 88, 84, 100, 99, 95, 102, 103, 98, 104, 102, 98, 99, 98, 94, 110, 108, 104, 100, 101, 94, 52, 54, 46, 0, 0, 0, 101, 104, 96, 85, 88, 80, 120, 123, 113, 22, 25, 17, 31, 34, 29, 26, 29, 24, 15, 18, 10, 0, 0, 0, 121, 122, 115, 133, 134, 127, 0, 0, 0, 6, 8, 0, 64, 67, 48, 111, 114, 92, 215, 219, 197, 155, 158, 137, 149, 153, 131, 0, 0, 0, 19, 19, 15, 3, 4, 3, 11, 14, 13, 9, 9, 9, 16, 16, 16, 16, 18, 17, 8, 10, 9, 0, 0, 0, 93, 95, 92, 85, 88, 82, 26, 29, 24, 30, 33, 25, 36, 40, 29, 47, 51, 41, 38, 42, 29, 59, 63, 52, 18, 22, 12, 3, 7, 0, 39, 41, 43, 43, 44, 50, 24, 25, 32, 12, 14, 18, 17, 19, 23, 26, 28, 32, 33, 34, 41, 31, 33, 37, 35, 36, 40, 40, 42, 46, 53, 55, 57, 74, 76, 78, 94, 96, 97, 140, 143, 142, 2, 5, 0, 17, 21, 13, 33, 37, 27, 12, 16, 6, 0, 1, 0, 0, 0, 0, 17, 21, 11, 48, 52, 44, 151, 152, 147, 149, 149, 149, 154, 153, 156, 149, 149, 151, 155, 154, 157, 150, 150, 152, 150, 149, 154, 150, 149, 154, 149, 150, 156, 138, 139, 148, 136, 136, 147, 123, 124, 132, 120, 120, 129, 62, 66, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 29, 22, 50, 56, 49, 164, 166, 165, 136, 138, 139, 143, 144, 148, 145, 147, 151, 144, 145, 149, 138, 139, 146, 131, 132, 139, 125, 127, 131, 121, 122, 128, 122, 123, 127, 114, 113, 118, 116, 118, 122, 111, 112, 119, 92, 94, 95, 0, 0, 0, 0, 0, 0, 59, 61, 49, 94, 97, 82, 92, 94, 82, 78, 80, 68, 128, 129, 122, 121, 121, 121, 134, 133, 136, 133, 132, 137, 136, 135, 140, 135, 134, 139, 138, 139, 146, 135, 136, 142, 131, 132, 141, 125, 126, 135, 124, 125, 134, 121, 121, 132, 114, 114, 125, 132, 133, 144, 37, 40, 36, 40, 43, 38, 79, 82, 76, 89, 93, 85, 80, 83, 75, 45, 50, 44, 102, 104, 104, 129, 130, 134, 136, 140, 146, 134, 138, 141, 133, 137, 140, 130, 131, 135, 128, 129, 133, 110, 114, 117, 124, 128, 131, 117, 118, 125, 111, 112, 119, 109, 110, 117, 106, 107, 113, 114, 115, 121, 6, 11, 11, 0, 0, 0, 0, 0, 0, 53, 56, 51, 70, 71, 66, 58, 61, 55, 28, 28, 26, 94, 96, 95, 121, 123, 124, 128, 129, 131, 130, 130, 132, 129, 131, 132, 130, 130, 134, 131, 131, 135, 129, 130, 136, 124, 125, 132, 125, 127, 133, 125, 123, 130, 129, 130, 136, 125, 127, 133, 124, 125, 132, 117, 118, 125, 118, 119, 126, 121, 122, 128, 121, 122, 126, 116, 116, 120, 119, 118, 123, 116, 116, 118, 118, 117, 120, 115, 115, 117, 114, 114, 116, 113, 112, 115, 108, 110, 111, 110, 112, 112, 109, 111, 111, 115, 117, 116, 122, 124, 123, 10, 13, 10, 2, 5, 0, 67, 65, 59, 120, 121, 112, 125, 122, 114, 139, 136, 126, 141, 138, 127, 127, 126, 118, 134, 133, 125, 92, 92, 81, 80, 79, 68, 60, 62, 50, 39, 39, 25, 54, 54, 40, 93, 99, 95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 21, 12, 13, 14, 7, 0, 0, 0, 0, 0, 0, 72, 73, 66, 80, 81, 74, 71, 72, 65, 89, 88, 79, 114, 114, 105, 124, 123, 114, 104, 103, 94, 113, 112, 104, 108, 107, 98, 120, 116, 110, 109, 108, 99, 114, 110, 105, 113, 109, 103, 147, 145, 141, 105, 104, 100, 113, 112, 108, 136, 132, 129, 108, 106, 102, 126, 124, 123, 113, 111, 110, 95, 93, 91, 96, 94, 92, 97, 95, 91, 103, 101, 97, 91, 90, 86, 99, 98, 94, 99, 98, 94, 103, 101, 97, 123, 121, 115, 81, 83, 75, 0, 0, 0, 137, 141, 130, 106, 109, 99, 53, 57, 49, 17, 21, 13, 9, 12, 6, 12, 16, 17, 18, 23, 19, 28, 29, 33, 50, 51, 57, 59, 59, 70, 48, 49, 58, 87, 88, 96, 103, 104, 111, 116, 117, 124, 136, 137, 143, 159, 158, 165, 156, 155, 162, 153, 151, 159, 144, 145, 151, 141, 139, 149, 129, 130, 138, 116, 117, 126, 111, 112, 121, 118, 119, 128, 116, 117, 126, 114, 114, 123, 106, 106, 115, 107, 108, 114, 69, 71, 73, 30, 33, 29, 38, 41, 34, 0, 0, 0, 0, 0, 0, 37, 41, 28, 61, 65, 57, 31, 34, 31, 102, 103, 110, 142, 142, 155, 133, 133, 149, 127, 127, 140, 133, 133, 147, 122, 122, 135, 117, 117, 131, 118, 119, 130, 117, 118, 129, 117, 118, 129, 113, 113, 122, 113, 113, 122, 110, 111, 120, 108, 109, 115, 124, 125, 132, 11, 14, 11, 46, 50, 40, 0, 0, 0, 84, 91, 77, 100, 104, 91, 102, 106, 96, 40, 44, 36, 151, 152, 149, 143, 143, 145, 137, 137, 139, 142, 142, 144, 140, 139, 144, 138, 134, 142, 137, 133, 141, 131, 130, 139, 131, 130, 139, 122, 122, 133, 123, 123, 134, 122, 122, 133, 118, 118, 132, 142, 142, 151, 0, 2, 3, 62, 68, 61, 19, 25, 16, 71, 77, 70, 76, 82, 73, 50, 56, 49, 86, 88, 87, 133, 135, 139, 145, 146, 153, 146, 147, 154, 148, 149, 155, 135, 136, 142, 136, 137, 143, 130, 131, 137, 124, 125, 132, 121, 120, 127, 121, 120, 127, 115, 114, 121, 108, 107, 116, 121, 120, 127, 1, 3, 2, 0, 0, 0, 60, 62, 50, 77, 79, 65, 88, 90, 78, 74, 76, 64, 92, 93, 86, 123, 124, 121, 125, 124, 127, 133, 132, 137, 137, 137, 141, 141, 140, 147, 134, 133, 138, 118, 116, 124, 131, 130, 139, 129, 129, 140, 127, 127, 138, 120, 120, 133, 117, 117, 131, 125, 126, 137, 2, 4, 5, 17, 20, 17, 18, 21, 16, 79, 82, 74, 81, 84, 79, 80, 83, 77, 50, 52, 49, 127, 128, 132, 132, 136, 139, 134, 138, 141, 133, 135, 139, 131, 133, 137, 110, 112, 116, 175, 179, 180, 124, 126, 130, 116, 117, 124, 114, 113, 120, 111, 112, 119, 108, 107, 114, 103, 104, 111, 25, 27, 29, 25, 28, 27, 0, 0, 0, 4, 7, 2, 40, 43, 40, 31, 34, 31, 36, 36, 34, 54, 57, 56, 126, 126, 126, 134, 133, 136, 130, 130, 132, 130, 130, 132, 130, 130, 134, 128, 127, 132, 128, 127, 132, 125, 123, 130, 127, 126, 131, 125, 123, 130, 121, 120, 127, 121, 120, 127, 121, 120, 127, 121, 120, 127, 110, 112, 116, 118, 120, 124, 114, 113, 118, 119, 118, 123, 122, 122, 124, 116, 116, 118, 116, 116, 118, 114, 114, 116, 116, 116, 118, 114, 114, 116, 116, 116, 118, 114, 114, 114, 111, 114, 113, 113, 113, 113, 114, 114, 114, 24, 24, 24, 28, 28, 26, 0, 0, 0, 114, 114, 105, 125, 122, 114, 144, 141, 131, 139, 136, 126, 149, 146, 135, 137, 134, 124, 138, 135, 125, 137, 135, 122, 132, 130, 117, 134, 132, 114, 134, 130, 113, 78, 78, 69, 109, 111, 101, 121, 122, 115, 107, 108, 101, 109, 110, 105, 138, 139, 134, 25, 28, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 95, 97, 89, 90, 89, 82, 92, 92, 83, 100, 100, 91, 110, 109, 100, 94, 93, 84, 106, 105, 97, 106, 105, 97, 110, 109, 102, 123, 121, 115, 138, 136, 130, 142, 141, 135, 141, 137, 133, 139, 137, 133, 145, 143, 139, 144, 141, 140, 121, 119, 118, 131, 129, 127, 140, 138, 138, 121, 119, 120, 120, 118, 119, 105, 103, 104, 114, 112, 111, 98, 96, 95, 98, 96, 95, 102, 100, 96, 99, 98, 94, 111, 110, 103, 106, 105, 99, 71, 74, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 88, 94, 83, 54, 60, 51, 79, 85, 81, 102, 105, 113, 104, 107, 117, 118, 120, 133, 104, 106, 119, 99, 102, 114, 107, 107, 120, 106, 106, 119, 102, 102, 116, 104, 105, 116, 112, 110, 122, 108, 106, 118, 99, 97, 109, 108, 107, 116, 107, 105, 117, 108, 107, 116, 109, 109, 121, 113, 111, 123, 111, 109, 121, 113, 113, 124, 107, 107, 118, 110, 111, 122, 111, 112, 123, 109, 110, 119, 155, 155, 164, 4, 6, 8, 48, 51, 48, 0, 0, 0, 117, 121, 111, 85, 88, 78, 73, 76, 68, 26, 29, 26, 59, 60, 64, 140, 140, 156, 138, 138, 154, 132, 132, 148, 126, 128, 143, 123, 123, 138, 117, 119, 134, 113, 113, 126, 109, 109, 123, 107, 107, 120, 103, 103, 117, 103, 104, 115, 102, 102, 114, 101, 101, 112, 117, 118, 125, 0, 0, 0, 5, 11, 4, 0, 0, 0, 55, 59, 49, 55, 60, 47, 62, 66, 56, 52, 55, 48, 114, 116, 113, 144, 144, 146, 142, 141, 146, 145, 141, 147, 140, 139, 144, 138, 138, 142, 137, 136, 143, 135, 134, 141, 131, 130, 139, 128, 127, 136, 126, 124, 134, 121, 121, 132, 120, 120, 131, 120, 120, 131, 0, 0, 4, 14, 19, 15, 0, 0, 0, 13, 19, 12, 43, 49, 43, 53, 58, 52, 48, 51, 50, 156, 157, 161, 137, 138, 142, 143, 144, 148, 145, 147, 151, 144, 143, 150, 133, 135, 141, 130, 131, 137, 131, 132, 139, 120, 119, 126, 119, 118, 125, 116, 115, 122, 112, 111, 118, 111, 109, 117, 20, 19, 22, 49, 50, 45, 0, 0, 0, 77, 79, 67, 76, 78, 65, 73, 75, 65, 62, 63, 54, 137, 138, 135, 122, 122, 124, 128, 127, 132, 140, 137, 142, 142, 141, 148, 140, 138, 146, 255, 255, 255, 129, 128, 135, 132, 133, 142, 125, 126, 137, 121, 121, 132, 115, 115, 128, 114, 114, 125, 31, 33, 37, 23, 25, 24, 0, 0, 0, 39, 43, 35, 28, 31, 25, 36, 39, 33, 23, 25, 24, 131, 133, 137, 129, 130, 134, 135, 136, 140, 137, 138, 142, 131, 133, 137, 127, 128, 134, 127, 128, 132, 116, 117, 124, 119, 118, 125, 113, 112, 119, 111, 109, 117, 109, 108, 115, 109, 108, 115, 86, 87, 91, 2, 4, 3, 0, 0, 0, 0, 0, 0, 19, 22, 19, 39, 42, 39, 15, 17, 14, 10, 10, 10, 118, 117, 120, 125, 124, 127, 131, 131, 133, 129, 129, 131, 129, 128, 133, 126, 125, 130, 126, 125, 130, 128, 127, 132, 124, 125, 132, 119, 118, 125, 127, 126, 133, 119, 118, 125, 121, 120, 127, 119, 118, 125, 116, 118, 122, 113, 114, 120, 113, 112, 117, 104, 103, 108, 255, 255, 255, 215, 215, 217, 109, 109, 111, 114, 114, 116, 144, 144, 144, 115, 115, 115, 112, 111, 114, 114, 114, 114, 107, 107, 107, 116, 116, 118, 115, 115, 115, 71, 71, 71, 27, 27, 27, 0, 0, 0, 103, 100, 94, 141, 138, 127, 135, 132, 121, 138, 136, 123, 131, 129, 116, 137, 135, 120, 138, 136, 123, 136, 133, 121, 143, 141, 126, 137, 135, 120, 146, 145, 127, 93, 95, 83, 148, 148, 136, 135, 135, 126, 116, 118, 108, 89, 88, 81, 83, 83, 79, 99, 100, 93, 19, 20, 13, 0, 0, 0, 114, 115, 108, 71, 72, 65, 100, 100, 91, 94, 93, 84, 113, 112, 104, 103, 100, 92, 118, 117, 108, 130, 129, 120, 136, 133, 125, 144, 142, 136, 149, 148, 144, 161, 159, 156, 156, 155, 151, 157, 153, 150, 151, 149, 147, 147, 145, 143, 161, 159, 158, 141, 139, 138, 159, 156, 159, 168, 166, 166, 160, 157, 160, 140, 137, 140, 135, 133, 136, 121, 116, 120, 110, 107, 108, 98, 96, 95, 97, 95, 91, 100, 99, 95, 95, 97, 89, 102, 106, 96, 61, 65, 57, 0, 0, 0, 95, 101, 90, 79, 86, 75, 61, 67, 56, 42, 48, 39, 83, 88, 84, 100, 104, 112, 103, 106, 116, 106, 109, 121, 99, 102, 112, 103, 106, 116, 102, 102, 114, 106, 106, 117, 104, 105, 116, 103, 104, 115, 100, 100, 111, 103, 104, 113, 104, 105, 116, 104, 105, 116, 104, 105, 116, 106, 106, 117, 104, 105, 116, 103, 104, 115, 109, 109, 121, 107, 107, 118, 107, 107, 118, 107, 107, 118, 107, 107, 118, 110, 111, 122, 118, 119, 126, 0, 2, 3, 29, 31, 30, 18, 21, 16, 0, 0, 0, 17, 21, 13, 50, 53, 47, 12, 17, 15, 3, 7, 10, 137, 137, 150, 135, 135, 148, 131, 131, 147, 125, 125, 139, 122, 122, 135, 118, 118, 132, 114, 114, 127, 113, 113, 126, 104, 104, 118, 106, 106, 117, 101, 101, 112, 100, 100, 111, 99, 99, 108, 97, 98, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 9, 1, 95, 99, 89, 66, 69, 62, 48, 52, 44, 64, 67, 61, 144, 144, 144, 142, 139, 145, 145, 141, 147, 145, 141, 147, 145, 141, 147, 204, 200, 208, 159, 156, 161, 206, 205, 212, 130, 129, 138, 128, 126, 138, 123, 122, 133, 124, 125, 136, 115, 115, 126, 33, 37, 42, 0, 0, 0, 0, 0, 0, 5, 10, 6, 49, 55, 48, 28, 33, 29, 46, 49, 46, 115, 117, 118, 143, 142, 147, 143, 142, 149, 145, 144, 151, 143, 142, 147, 115, 114, 121, 244, 243, 250, 140, 138, 146, 118, 116, 124, 118, 116, 124, 118, 116, 124, 113, 112, 119, 107, 106, 113, 121, 122, 126, 18, 21, 18, 0, 0, 0, 33, 37, 29, 55, 56, 47, 56, 57, 48, 49, 50, 43, 111, 111, 107, 128, 128, 130, 130, 130, 134, 137, 137, 141, 145, 144, 151, 140, 138, 146, 141, 140, 145, 142, 141, 148, 130, 129, 138, 124, 125, 136, 118, 119, 130, 121, 121, 134, 114, 114, 125, 106, 106, 115, 12, 16, 17, 0, 0, 0, 62, 68, 61, 32, 35, 30, 14, 16, 15, 15, 20, 19, 82, 84, 88, 136, 137, 141, 131, 135, 138, 132, 134, 138, 132, 134, 138, 127, 128, 132, 124, 126, 130, 125, 123, 130, 118, 116, 124, 114, 113, 120, 112, 111, 118, 108, 107, 114, 107, 106, 113, 128, 129, 133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 17, 14, 39, 42, 39, 18, 21, 20, 13, 13, 13, 115, 115, 117, 123, 123, 125, 127, 127, 129, 130, 130, 134, 128, 127, 132, 126, 125, 130, 126, 125, 132, 123, 122, 129, 123, 122, 129, 116, 115, 122, 120, 119, 126, 119, 118, 125, 116, 115, 122, 115, 114, 121, 114, 113, 120, 108, 107, 114, 114, 113, 118, 98, 97, 102, 255, 255, 255, 143, 143, 143, 213, 214, 209, 255, 255, 255, 238, 236, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 119, 119, 108, 108, 108, 111, 111, 111, 106, 106, 106, 19, 22, 19, 0, 0, 0, 87, 83, 78, 129, 126, 118, 143, 140, 129, 142, 137, 125, 143, 141, 126, 149, 144, 130, 149, 144, 130, 147, 145, 130, 137, 135, 120, 139, 138, 120, 145, 143, 126, 126, 126, 112, 148, 148, 134, 100, 100, 89, 93, 95, 85, 92, 93, 86, 107, 108, 101, 0, 0, 0, 0, 0, 0, 6, 5, 0, 89, 88, 79, 119, 119, 107, 104, 103, 94, 94, 93, 84, 106, 105, 97, 122, 119, 111, 146, 143, 135, 127, 123, 115, 129, 125, 120, 141, 137, 131, 132, 131, 124, 139, 138, 131, 111, 110, 103, 118, 117, 110, 105, 104, 98, 118, 117, 110, 130, 128, 124, 162, 160, 159, 168, 166, 164, 160, 155, 159, 164, 159, 163, 168, 163, 167, 172, 167, 171, 159, 154, 158, 145, 140, 144, 125, 120, 124, 105, 103, 102, 116, 114, 112, 112, 113, 106, 109, 113, 103, 37, 40, 32, 0, 0, 0, 114, 121, 110, 93, 99, 91, 66, 72, 61, 57, 63, 54, 84, 89, 85, 102, 105, 111, 95, 98, 106, 102, 104, 115, 102, 104, 115, 102, 104, 115, 93, 96, 107, 96, 99, 109, 99, 99, 110, 101, 101, 112, 103, 104, 113, 103, 104, 111, 99, 99, 108, 102, 103, 112, 102, 103, 110, 103, 104, 113, 104, 105, 114, 103, 104, 113, 105, 103, 115, 106, 104, 116, 106, 104, 116, 103, 104, 115, 104, 105, 116, 102, 102, 114, 95, 96, 105, 0, 0, 0, 0, 3, 1, 95, 100, 94, 0, 0, 0, 0, 2, 0, 66, 70, 69, 6, 11, 11, 3, 6, 12, 127, 130, 142, 136, 135, 151, 127, 126, 142, 122, 121, 137, 118, 118, 134, 116, 116, 129, 118, 118, 132, 158, 158, 169, 96, 96, 108, 111, 112, 123, 99, 99, 110, 100, 100, 111, 96, 97, 106, 96, 97, 106, 101, 102, 106, 0, 0, 0, 0, 1, 0, 0, 0, 0, 17, 20, 15, 30, 33, 25, 28, 31, 23, 26, 30, 22, 150, 150, 150, 144, 140, 146, 146, 143, 148, 145, 141, 147, 146, 143, 148, 155, 152, 158, 255, 255, 255, 140, 138, 146, 128, 127, 134, 126, 124, 134, 125, 123, 134, 123, 122, 133, 114, 114, 125, 139, 140, 149, 0, 5, 5, 0, 0, 0, 31, 34, 31, 6, 11, 7, 21, 26, 22, 40, 43, 40, 60, 62, 62, 138, 140, 142, 142, 141, 146, 147, 145, 153, 140, 138, 146, 138, 137, 144, 255, 255, 255, 130, 130, 134, 114, 113, 120, 115, 114, 121, 115, 114, 121, 114, 113, 120, 112, 111, 118, 112, 111, 116, 0, 0, 0, 24, 27, 24, 0, 0, 0, 43, 44, 39, 52, 55, 49, 47, 47, 43, 62, 62, 60, 129, 129, 131, 133, 132, 137, 131, 128, 133, 140, 139, 144, 141, 138, 144, 130, 126, 132, 128, 127, 134, 119, 118, 125, 127, 125, 137, 123, 122, 133, 120, 118, 130, 115, 115, 126, 123, 124, 132, 11, 13, 15, 0, 0, 0, 0, 0, 0, 24, 27, 24, 26, 29, 28, 16, 18, 17, 21, 22, 24, 132, 134, 138, 131, 133, 137, 133, 135, 139, 131, 133, 137, 131, 131, 135, 118, 117, 122, 255, 255, 255, 115, 114, 119, 116, 115, 122, 112, 111, 116, 109, 108, 115, 107, 106, 113, 107, 108, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 7, 4, 28, 33, 29, 6, 11, 9, 7, 7, 7, 109, 109, 109, 136, 136, 138, 128, 128, 130, 128, 128, 130, 131, 131, 135, 126, 125, 130, 127, 126, 131, 128, 127, 132, 122, 121, 126, 125, 124, 128, 122, 121, 128, 116, 116, 120, 115, 114, 121, 111, 110, 115, 114, 113, 118, 109, 111, 115, 112, 111, 116, 100, 99, 104, 105, 104, 107, 111, 110, 113, 115, 115, 117, 100, 100, 100, 102, 102, 102, 111, 111, 111, 102, 102, 102, 104, 104, 104, 105, 105, 105, 105, 105, 105, 106, 106, 106, 125, 125, 125, 22, 22, 20, 8, 9, 4, 26, 25, 18, 130, 127, 117, 145, 143, 130, 149, 144, 132, 146, 144, 129, 149, 147, 131, 159, 154, 140, 153, 151, 136, 144, 142, 127, 146, 145, 127, 141, 142, 124, 148, 141, 130, 141, 136, 124, 110, 109, 98, 92, 92, 83, 90, 91, 84, 44, 45, 38, 10, 12, 4, 0, 0, 0, 99, 98, 90, 78, 78, 69, 88, 85, 77, 117, 116, 105, 199, 199, 190, 106, 102, 94, 119, 118, 112, 152, 149, 141, 147, 144, 136, 100, 96, 91, 166, 164, 158, 168, 167, 160, 141, 140, 134, 128, 127, 121, 124, 122, 118, 124, 123, 116, 120, 121, 116, 137, 139, 131, 171, 170, 166, 183, 182, 178, 0, 0, 0, 155, 150, 149, 160, 155, 159, 163, 158, 161, 161, 156, 160, 161, 156, 160, 152, 147, 151, 128, 123, 127, 102, 100, 98, 106, 107, 102, 99, 100, 91, 50, 53, 45, 0, 0, 0, 92, 99, 87, 83, 89, 80, 79, 86, 75, 29, 36, 25, 74, 79, 73, 96, 99, 105, 100, 103, 114, 91, 94, 104, 92, 95, 105, 91, 94, 104, 93, 96, 107, 91, 94, 104, 98, 101, 111, 101, 101, 112, 98, 101, 109, 101, 102, 108, 118, 119, 126, 96, 97, 104, 178, 179, 185, 92, 92, 101, 102, 103, 112, 101, 102, 110, 104, 102, 114, 105, 103, 115, 105, 103, 115, 105, 103, 115, 105, 103, 115, 103, 104, 115, 106, 106, 115, 22, 23, 27, 0, 5, 3, 14, 19, 15, 0, 0, 0, 0, 0, 0, 0, 5, 1, 3, 7, 8, 6, 10, 15, 106, 109, 121, 138, 138, 154, 133, 133, 149, 121, 121, 134, 118, 118, 132, 115, 115, 128, 121, 121, 134, 109, 109, 121, 97, 95, 107, 116, 117, 126, 90, 91, 102, 93, 94, 102, 94, 95, 103, 96, 97, 104, 113, 114, 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 16, 19, 13, 25, 30, 24, 31, 36, 32, 142, 142, 142, 141, 138, 144, 146, 143, 148, 142, 139, 145, 141, 138, 144, 123, 123, 127, 183, 182, 187, 255, 255, 255, 137, 136, 143, 140, 138, 148, 123, 122, 131, 121, 119, 131, 115, 115, 126, 118, 119, 128, 0, 0, 0, 3, 5, 5, 0, 0, 0, 0, 4, 2, 21, 26, 22, 22, 24, 21, 35, 35, 35, 148, 147, 150, 136, 135, 140, 140, 139, 144, 141, 140, 145, 136, 135, 142, 120, 119, 124, 255, 255, 255, 232, 231, 236, 130, 130, 134, 119, 118, 125, 114, 113, 120, 112, 111, 118, 102, 102, 106, 28, 28, 30, 0, 0, 0, 0, 0, 0, 6, 6, 4, 29, 30, 25, 40, 43, 40, 37, 37, 37, 138, 135, 138, 118, 117, 122, 127, 124, 130, 131, 131, 135, 146, 143, 148, 134, 133, 138, 255, 255, 255, 127, 126, 133, 136, 135, 144, 125, 123, 134, 117, 117, 131, 115, 115, 128, 115, 116, 124, 55, 57, 63, 8, 10, 9, 0, 0, 0, 3, 6, 3, 11, 14, 13, 15, 17, 16, 14, 15, 17, 130, 132, 133, 129, 130, 134, 132, 134, 138, 131, 133, 137, 130, 131, 135, 126, 125, 130, 125, 124, 128, 123, 123, 127, 115, 114, 121, 114, 113, 120, 109, 109, 113, 105, 104, 111, 102, 104, 108, 12, 15, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 21, 17, 0, 4, 2, 0, 1, 0, 88, 90, 92, 128, 128, 130, 128, 128, 130, 128, 128, 130, 129, 129, 131, 130, 130, 132, 126, 125, 130, 128, 127, 132, 122, 121, 126, 123, 123, 127, 121, 120, 127, 115, 116, 122, 111, 113, 117, 113, 114, 118, 111, 113, 117, 109, 111, 115, 110, 112, 116, 107, 109, 110, 112, 111, 114, 109, 109, 111, 111, 110, 115, 106, 106, 108, 107, 107, 109, 108, 108, 110, 109, 109, 111, 108, 108, 110, 100, 100, 100, 113, 113, 113, 109, 109, 109, 115, 116, 113, 16, 17, 12, 16, 17, 10, 0, 0, 0, 131, 130, 119, 139, 136, 126, 141, 138, 123, 169, 164, 150, 149, 144, 130, 152, 151, 133, 139, 138, 120, 145, 143, 126, 144, 142, 125, 149, 147, 127, 146, 144, 129, 124, 122, 107, 105, 105, 94, 95, 94, 83, 122, 124, 114, 0, 0, 0, 0, 0, 0, 67, 69, 60, 73, 72, 61, 88, 87, 78, 128, 125, 114, 110, 109, 98, 96, 95, 86, 100, 99, 93, 32, 31, 24, 134, 133, 127, 117, 116, 109, 77, 76, 68, 11, 10, 1, 9, 8, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 36, 36, 25, 57, 57, 44, 126, 128, 114, 219, 219, 207, 179, 174, 176, 178, 173, 175, 45, 41, 38, 160, 155, 159, 151, 146, 150, 156, 150, 157, 141, 135, 139, 121, 119, 122, 104, 102, 100, 95, 93, 89, 102, 104, 96, 69, 69, 65, 0, 0, 0, 93, 97, 86, 80, 84, 73, 104, 110, 99, 34, 40, 31, 69, 75, 66, 92, 98, 103, 94, 99, 109, 97, 100, 110, 96, 98, 111, 96, 99, 109, 93, 96, 107, 96, 99, 109, 97, 100, 110, 98, 101, 111, 97, 100, 108, 90, 92, 98, 255, 255, 255, 85, 85, 94, 111, 112, 119, 146, 147, 154, 104, 105, 114, 92, 92, 101, 109, 108, 117, 104, 102, 112, 104, 105, 114, 103, 104, 113, 104, 105, 114, 102, 103, 112, 97, 98, 107, 142, 146, 151, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 5, 9, 12, 95, 97, 110, 138, 138, 152, 129, 129, 142, 118, 118, 132, 120, 120, 133, 117, 117, 131, 118, 119, 130, 107, 107, 118, 122, 123, 131, 100, 100, 109, 96, 96, 108, 95, 96, 105, 95, 96, 105, 94, 95, 103, 92, 93, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 26, 19, 20, 26, 19, 19, 24, 20, 72, 74, 75, 140, 137, 140, 138, 138, 142, 140, 137, 142, 142, 141, 146, 135, 132, 138, 136, 135, 142, 135, 134, 141, 128, 127, 136, 129, 127, 139, 123, 122, 131, 121, 121, 132, 118, 119, 130, 113, 113, 122, 26, 28, 30, 0, 2, 1, 42, 47, 45, 0, 0, 0, 10, 15, 11, 10, 12, 12, 31, 33, 33, 107, 107, 109, 140, 138, 146, 137, 136, 143, 140, 138, 146, 140, 139, 144, 131, 130, 137, 133, 132, 137, 120, 119, 124, 115, 114, 119, 118, 116, 124, 115, 114, 121, 114, 113, 120, 112, 111, 118, 131, 133, 133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 23, 20, 18, 21, 16, 33, 36, 33, 91, 91, 89, 120, 119, 122, 125, 122, 127, 133, 132, 137, 137, 133, 139, 139, 136, 141, 129, 128, 133, 130, 129, 136, 130, 129, 138, 123, 123, 134, 121, 121, 132, 116, 116, 128, 110, 111, 118, 132, 136, 139, 5, 10, 8, 0, 4, 0, 0, 0, 0, 42, 44, 43, 12, 15, 14, 14, 16, 13, 62, 67, 65, 130, 132, 131, 129, 131, 132, 128, 129, 133, 130, 130, 134, 125, 124, 128, 125, 124, 128, 120, 119, 124, 120, 119, 124, 114, 113, 118, 109, 109, 113, 104, 106, 110, 96, 98, 100, 65, 67, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 12, 8, 10, 15, 11, 6, 11, 7, 57, 59, 58, 128, 130, 127, 127, 129, 128, 130, 130, 130, 132, 135, 134, 130, 130, 130, 125, 127, 129, 121, 123, 124, 122, 122, 124, 122, 123, 127, 123, 125, 128, 122, 123, 127, 120, 121, 125, 115, 117, 118, 116, 118, 120, 111, 113, 115, 108, 108, 110, 108, 108, 110, 109, 109, 111, 112, 111, 114, 111, 110, 113, 109, 109, 111, 108, 108, 108, 111, 111, 111, 108, 108, 108, 111, 111, 111, 111, 111, 111, 108, 108, 108, 104, 107, 104, 100, 103, 97, 26, 29, 24, 27, 28, 23, 0, 0, 0, 114, 114, 105, 141, 138, 127, 139, 134, 122, 143, 139, 124, 150, 146, 131, 149, 145, 128, 144, 142, 125, 156, 154, 136, 165, 163, 146, 139, 138, 118, 157, 154, 134, 115, 113, 98, 103, 103, 89, 103, 102, 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, 78, 67, 83, 83, 71, 96, 93, 83, 95, 93, 78, 109, 109, 95, 81, 80, 69, 18, 17, 10, 145, 143, 137, 104, 103, 96, 28, 27, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188, 184, 183, 198, 192, 196, 110, 107, 101, 128, 123, 127, 145, 140, 144, 143, 138, 142, 123, 118, 122, 113, 107, 111, 103, 100, 101, 75, 74, 67, 91, 92, 85, 59, 60, 55, 0, 0, 0, 90, 94, 86, 92, 95, 87, 74, 80, 69, 39, 45, 36, 76, 82, 75, 90, 94, 99, 96, 99, 107, 95, 97, 108, 93, 96, 107, 92, 95, 105, 99, 102, 112, 91, 94, 104, 93, 96, 107, 97, 100, 110, 95, 98, 106, 99, 103, 110, 167, 168, 175, 102, 103, 110, 96, 97, 104, 106, 107, 113, 100, 100, 109, 101, 102, 110, 104, 102, 112, 104, 102, 112, 105, 103, 115, 107, 107, 118, 102, 102, 114, 103, 104, 115, 106, 106, 115, 122, 123, 131, 0, 0, 0, 0, 0, 0, 57, 63, 58, 0, 0, 0, 0, 0, 0, 0, 6, 3, 0, 0, 0, 33, 36, 46, 130, 130, 143, 128, 127, 143, 129, 129, 142, 114, 114, 127, 116, 116, 128, 117, 118, 129, 116, 114, 126, 109, 109, 121, 111, 112, 123, 103, 104, 113, 100, 100, 109, 94, 94, 105, 94, 95, 103, 96, 97, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 20, 13, 15, 21, 17, 21, 27, 20, 12, 15, 14, 141, 140, 143, 142, 139, 145, 143, 142, 147, 140, 137, 142, 136, 135, 142, 131, 130, 137, 133, 131, 141, 133, 129, 139, 127, 125, 137, 125, 123, 134, 127, 125, 137, 118, 119, 130, 117, 118, 127, 143, 145, 146, 0, 0, 0, 1, 7, 3, 0, 0, 0, 0, 0, 0, 15, 20, 19, 13, 18, 16, 66, 68, 69, 135, 134, 139, 135, 134, 139, 137, 137, 141, 138, 138, 142, 137, 137, 141, 129, 128, 133, 126, 125, 130, 122, 121, 126, 116, 116, 120, 114, 113, 120, 112, 111, 118, 111, 109, 117, 106, 107, 109, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 24, 18, 25, 28, 23, 29, 30, 25, 42, 43, 36, 127, 127, 125, 127, 127, 129, 136, 135, 140, 138, 134, 140, 135, 134, 139, 135, 134, 139, 135, 134, 139, 131, 130, 137, 127, 126, 133, 124, 125, 132, 116, 117, 124, 115, 116, 120, 114, 116, 115, 0, 0, 0, 0, 0, 0, 0, 2, 1, 24, 27, 24, 35, 37, 34, 5, 8, 5, 31, 34, 31, 128, 133, 129, 112, 117, 113, 124, 128, 127, 123, 125, 125, 121, 123, 122, 120, 119, 122, 115, 117, 118, 112, 111, 114, 109, 109, 111, 100, 102, 103, 97, 99, 101, 78, 80, 79, 126, 131, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 15, 11, 32, 37, 33, 3, 8, 4, 16, 19, 15, 108, 111, 107, 132, 135, 132, 137, 137, 137, 133, 133, 133, 124, 126, 126, 129, 129, 129, 130, 130, 130, 124, 126, 126, 124, 126, 128, 120, 121, 123, 121, 123, 122, 117, 119, 119, 120, 122, 121, 114, 116, 115, 109, 111, 111, 116, 118, 120, 117, 119, 121, 109, 111, 113, 108, 108, 110, 109, 109, 109, 111, 111, 111, 113, 113, 113, 111, 111, 111, 113, 113, 113, 108, 108, 108, 108, 108, 108, 109, 110, 107, 106, 108, 105, 110, 113, 108, 88, 91, 86, 21, 22, 17, 0, 0, 0, 98, 97, 91, 137, 134, 126, 150, 147, 136, 147, 142, 128, 144, 140, 126, 157, 153, 136, 159, 158, 140, 158, 156, 139, 157, 156, 135, 142, 143, 123, 140, 136, 117, 117, 115, 100, 106, 106, 93, 113, 113, 102, 2, 1, 0, 0, 0, 0, 85, 87, 77, 73, 71, 58, 81, 81, 67, 125, 123, 110, 116, 116, 100, 83, 83, 69, 9, 7, 1, 113, 112, 106, 146, 145, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 6, 0, 0, 0, 0, 6, 7, 0, 57, 58, 53, 51, 52, 45, 14, 15, 8, 3, 5, 0, 57, 58, 51, 29, 30, 23, 17, 15, 13, 207, 202, 204, 202, 197, 199, 36, 31, 31, 118, 114, 115, 134, 129, 130, 135, 130, 131, 130, 125, 127, 102, 98, 97, 91, 89, 88, 81, 79, 73, 94, 96, 88, 58, 59, 52, 0, 0, 0, 81, 85, 75, 83, 87, 77, 76, 82, 71, 29, 35, 27, 69, 75, 68, 88, 94, 99, 88, 94, 101, 91, 96, 105, 93, 96, 109, 92, 95, 105, 97, 100, 110, 95, 97, 108, 93, 96, 107, 88, 91, 101, 95, 97, 108, 93, 97, 105, 92, 96, 103, 99, 99, 108, 96, 97, 106, 99, 99, 108, 96, 97, 106, 99, 99, 108, 101, 100, 109, 102, 101, 110, 99, 99, 108, 102, 103, 112, 106, 106, 117, 102, 103, 112, 101, 102, 110, 92, 96, 101, 0, 0, 0, 0, 0, 0, 28, 34, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 0, 0, 0, 132, 135, 143, 130, 130, 141, 129, 129, 140, 128, 128, 139, 121, 121, 130, 113, 112, 119, 101, 102, 108, 97, 98, 105, 100, 101, 107, 99, 100, 104, 106, 107, 113, 99, 100, 106, 92, 93, 99, 95, 97, 101, 95, 98, 95, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 14, 20, 13, 14, 19, 15, 6, 11, 7, 142, 144, 143, 134, 134, 134, 140, 137, 140, 139, 136, 139, 137, 137, 141, 133, 132, 137, 133, 132, 137, 130, 129, 136, 128, 127, 136, 125, 123, 132, 122, 121, 130, 120, 120, 129, 118, 119, 126, 107, 111, 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 18, 14, 18, 23, 19, 13, 18, 14, 128, 130, 129, 125, 127, 129, 130, 130, 134, 131, 131, 133, 130, 130, 132, 127, 127, 127, 127, 127, 129, 122, 122, 124, 119, 119, 119, 114, 114, 114, 112, 112, 112, 107, 109, 108, 105, 105, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 16, 8, 28, 29, 22, 58, 60, 50, 48, 49, 42, 38, 39, 34, 62, 62, 60, 59, 60, 55, 120, 122, 119, 136, 139, 133, 179, 182, 174, 196, 200, 190, 197, 201, 191, 148, 151, 141, 113, 120, 108, 20, 26, 17, 31, 36, 30, 15, 17, 14, 8, 10, 7, 0, 0, 0, 12, 15, 12, 38, 41, 36, 7, 10, 4, 151, 154, 151, 35, 40, 36, 39, 44, 38, 17, 22, 18, 28, 33, 29, 25, 30, 26, 21, 23, 20, 22, 24, 21, 35, 37, 34, 17, 22, 18, 25, 30, 26, 37, 40, 36, 33, 38, 34, 34, 39, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 7, 4, 16, 19, 15, 0, 0, 0, 134, 139, 135, 24, 27, 24, 31, 33, 33, 28, 33, 31, 17, 22, 18, 10, 15, 11, 21, 26, 22, 28, 33, 31, 42, 45, 39, 64, 67, 61, 72, 75, 69, 102, 105, 100, 89, 92, 87, 81, 84, 79, 114, 117, 111, 97, 100, 97, 100, 102, 99, 99, 101, 100, 100, 102, 99, 104, 104, 102, 102, 105, 102, 101, 102, 99, 98, 98, 96, 91, 91, 89, 86, 88, 85, 95, 98, 95, 78, 80, 77, 99, 102, 96, 118, 121, 116, 161, 165, 159, 76, 80, 72, 26, 26, 22, 0, 0, 0, 60, 58, 52, 146, 143, 135, 147, 141, 132, 160, 158, 143, 145, 143, 126, 163, 159, 142, 161, 160, 142, 171, 170, 149, 171, 170, 149, 171, 170, 147, 121, 120, 99, 118, 116, 101, 132, 132, 118, 0, 0, 0, 0, 0, 0, 19, 19, 7, 118, 117, 106, 83, 83, 69, 139, 140, 121, 110, 109, 91, 74, 72, 57, 90, 90, 78, 64, 60, 54, 161, 160, 154, 0, 0, 0, 0, 0, 0, 44, 45, 38, 145, 147, 139, 82, 81, 74, 108, 106, 102, 98, 96, 93, 73, 71, 67, 57, 56, 52, 83, 81, 79, 141, 140, 136, 128, 128, 126, 126, 124, 123, 85, 83, 82, 181, 177, 178, 116, 111, 113, 89, 85, 84, 114, 109, 109, 114, 110, 107, 110, 106, 103, 132, 129, 123, 86, 82, 77, 91, 90, 84, 92, 91, 85, 111, 110, 103, 53, 55, 48, 0, 0, 0, 82, 86, 78, 87, 91, 80, 91, 97, 86, 28, 34, 25, 59, 64, 58, 86, 90, 96, 95, 97, 108, 90, 93, 103, 92, 95, 107, 95, 97, 108, 88, 91, 101, 96, 98, 111, 91, 94, 104, 92, 95, 105, 92, 95, 105, 95, 97, 108, 96, 96, 108, 97, 98, 107, 93, 94, 102, 97, 98, 107, 94, 95, 103, 96, 97, 106, 97, 98, 105, 100, 99, 106, 97, 98, 105, 97, 98, 105, 100, 101, 107, 97, 101, 106, 95, 99, 102, 98, 102, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 2, 0, 0, 0, 84, 91, 88, 118, 120, 122, 126, 125, 130, 121, 122, 126, 123, 125, 127, 109, 111, 113, 121, 123, 120, 110, 113, 110, 106, 111, 107, 111, 116, 112, 95, 100, 96, 84, 89, 85, 78, 83, 79, 61, 66, 62, 55, 60, 56, 0, 0, 0, 0, 0, 0, 27, 33, 26, 0, 2, 0, 33, 39, 30, 31, 37, 28, 52, 57, 51, 21, 27, 18, 118, 124, 115, 140, 144, 138, 166, 169, 164, 164, 167, 159, 136, 139, 131, 157, 160, 152, 148, 151, 143, 167, 171, 161, 152, 156, 146, 152, 158, 147, 111, 117, 106, 38, 44, 33, 35, 41, 34, 22, 28, 22, 0, 0, 0, 0, 2, 0, 0, 0, 0, 19, 24, 18, 69, 75, 68, 62, 68, 61, 22, 28, 22, 25, 30, 26, 17, 22, 18, 17, 22, 18, 17, 22, 18, 19, 22, 19, 3, 8, 2, 17, 20, 15, 10, 13, 8, 31, 34, 29, 29, 32, 26, 31, 36, 30, 33, 39, 32, 39, 42, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 26, 20, 15, 18, 10, 0, 3, 0, 32, 36, 28, 37, 40, 32, 43, 46, 38, 42, 45, 37, 42, 45, 37, 37, 40, 32, 27, 33, 26, 42, 48, 39, 45, 51, 42, 40, 46, 37, 42, 48, 39, 39, 44, 38, 42, 48, 41, 52, 57, 53, 14, 19, 15, 0, 0, 0, 0, 1, 0, 14, 17, 11, 153, 156, 151, 45, 48, 43, 47, 52, 46, 46, 51, 45, 49, 54, 50, 61, 66, 62, 46, 51, 47, 42, 47, 43, 41, 46, 42, 35, 41, 34, 43, 49, 43, 42, 48, 41, 41, 47, 40, 48, 52, 46, 50, 56, 49, 46, 51, 45, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 2, 0, 136, 142, 138, 19, 24, 20, 45, 50, 46, 35, 40, 38, 29, 36, 34, 42, 49, 47, 36, 43, 41, 29, 36, 34, 34, 41, 38, 21, 28, 26, 22, 27, 26, 27, 32, 30, 32, 37, 33, 22, 28, 24, 28, 33, 29, 34, 39, 35, 30, 33, 27, 29, 42, 35, 29, 35, 31, 31, 36, 32, 32, 37, 33, 31, 35, 34, 35, 40, 38, 35, 40, 38, 33, 38, 36, 31, 35, 34, 35, 40, 38, 34, 39, 37, 34, 39, 35, 38, 43, 39, 35, 40, 36, 42, 47, 43, 25, 28, 25, 0, 0, 0, 16, 14, 8, 163, 160, 149, 164, 160, 145, 159, 158, 140, 164, 162, 145, 168, 164, 147, 159, 158, 138, 177, 175, 155, 174, 173, 151, 174, 173, 151, 121, 120, 99, 123, 123, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94, 93, 82, 77, 77, 65, 83, 81, 66, 142, 140, 122, 83, 81, 66, 104, 102, 87, 50, 47, 39, 153, 151, 147, 35, 34, 30, 0, 0, 0, 0, 0, 0, 108, 109, 102, 142, 143, 138, 136, 137, 132, 144, 142, 138, 141, 140, 136, 99, 98, 94, 145, 143, 139, 149, 145, 141, 137, 134, 133, 158, 156, 154, 154, 152, 151, 165, 161, 160, 142, 137, 138, 0, 0, 0, 107, 103, 100, 81, 77, 76, 85, 81, 75, 102, 98, 93, 129, 126, 118, 85, 81, 75, 77, 76, 70, 94, 92, 86, 92, 93, 86, 84, 85, 78, 0, 0, 0, 88, 94, 85, 79, 85, 77, 95, 101, 90, 26, 32, 23, 59, 64, 56, 78, 82, 87, 92, 96, 103, 91, 94, 104, 93, 97, 105, 92, 96, 103, 90, 93, 101, 90, 93, 103, 88, 91, 99, 89, 92, 100, 89, 92, 100, 92, 96, 103, 91, 94, 102, 93, 94, 100, 95, 96, 103, 93, 94, 100, 99, 100, 104, 99, 100, 104, 94, 96, 97, 92, 94, 95, 79, 81, 82, 68, 73, 71, 52, 57, 53, 49, 56, 51, 107, 115, 108, 164, 170, 164, 1, 9, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 3, 0, 56, 63, 58, 3, 8, 2, 15, 21, 17, 1, 7, 1, 0, 1, 0, 10, 15, 9, 33, 39, 30, 45, 51, 42, 17, 23, 14, 7, 13, 4, 13, 21, 11, 11, 16, 10, 24, 32, 25, 37, 45, 40, 33, 38, 34, 40, 45, 41, 7, 12, 8, 0, 0, 0, 0, 0, 0, 0, 4, 0, 13, 19, 10, 13, 21, 11, 171, 177, 171, 36, 42, 36, 42, 48, 39, 41, 47, 40, 40, 46, 37, 33, 39, 30, 40, 46, 37, 39, 45, 36, 35, 41, 32, 42, 48, 39, 46, 52, 43, 38, 44, 35, 42, 48, 41, 45, 51, 42, 40, 45, 39, 35, 41, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 13, 6, 36, 42, 36, 33, 39, 32, 29, 35, 29, 39, 44, 38, 38, 43, 37, 39, 47, 40, 33, 38, 34, 32, 37, 33, 38, 43, 37, 35, 41, 34, 38, 43, 37, 53, 58, 52, 35, 41, 34, 33, 39, 32, 35, 41, 34, 33, 39, 32, 1, 7, 1, 0, 0, 0, 0, 0, 0, 54, 58, 48, 94, 98, 87, 35, 38, 28, 31, 35, 27, 69, 73, 63, 48, 54, 43, 42, 45, 35, 43, 50, 39, 41, 47, 38, 38, 44, 35, 32, 38, 29, 35, 41, 32, 28, 34, 25, 26, 32, 23, 43, 49, 43, 29, 35, 29, 29, 35, 31, 10, 13, 8, 0, 0, 0, 8, 11, 5, 130, 133, 128, 24, 27, 22, 23, 26, 22, 5, 10, 6, 17, 22, 18, 8, 14, 10, 21, 26, 22, 34, 39, 35, 39, 44, 40, 36, 42, 36, 43, 49, 43, 55, 61, 54, 51, 54, 48, 33, 39, 30, 24, 29, 23, 18, 23, 17, 24, 27, 22, 28, 31, 23, 0, 0, 0, 1, 7, 1, 113, 119, 112, 3, 6, 3, 13, 19, 12, 45, 48, 45, 5, 10, 6, 12, 17, 15, 8, 13, 12, 7, 12, 10, 10, 14, 13, 24, 31, 29, 10, 14, 13, 19, 24, 22, 49, 54, 50, 74, 79, 73, 10, 15, 11, 11, 16, 12, 24, 29, 25, 40, 45, 39, 28, 33, 29, 54, 59, 55, 30, 33, 29, 21, 23, 20, 40, 43, 40, 35, 37, 36, 37, 39, 38, 31, 33, 33, 25, 30, 28, 25, 28, 25, 14, 16, 13, 48, 51, 48, 29, 31, 28, 53, 56, 53, 30, 32, 31, 53, 56, 53, 7, 9, 6, 0, 0, 0, 134, 131, 120, 141, 138, 123, 153, 148, 132, 162, 158, 141, 168, 167, 149, 170, 166, 147, 164, 163, 142, 165, 162, 140, 177, 174, 152, 127, 124, 111, 75, 75, 61, 0, 0, 0, 0, 0, 0, 75, 74, 63, 71, 71, 62, 84, 84, 72, 138, 138, 122, 115, 113, 98, 85, 83, 65, 35, 33, 17, 85, 81, 73, 117, 116, 109, 0, 0, 0, 70, 71, 64, 106, 107, 100, 107, 108, 101, 100, 101, 94, 141, 142, 135, 115, 116, 109, 106, 107, 102, 113, 112, 108, 118, 116, 112, 120, 118, 117, 134, 132, 131, 163, 161, 160, 89, 87, 85, 87, 83, 82, 79, 74, 74, 29, 24, 24, 53, 49, 46, 61, 57, 54, 71, 67, 62, 96, 95, 88, 145, 144, 135, 73, 71, 65, 78, 78, 69, 91, 90, 82, 92, 91, 85, 80, 82, 72, 0, 0, 0, 82, 86, 78, 77, 83, 74, 84, 90, 81, 33, 39, 30, 55, 61, 52, 61, 65, 66, 69, 73, 74, 62, 66, 69, 76, 80, 85, 69, 73, 78, 71, 75, 78, 68, 72, 75, 69, 73, 76, 67, 71, 74, 52, 56, 59, 36, 41, 41, 33, 37, 38, 49, 54, 52, 52, 57, 53, 79, 85, 81, 113, 116, 110, 100, 103, 97, 37, 40, 34, 25, 28, 23, 12, 16, 10, 12, 18, 11, 27, 33, 26, 25, 33, 26, 25, 30, 24, 25, 33, 26, 36, 42, 38, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 4, 0, 1, 9, 2, 36, 42, 36, 39, 47, 40, 23, 31, 22, 37, 45, 36, 34, 40, 31, 29, 37, 28, 43, 51, 42, 25, 31, 22, 25, 34, 24, 63, 71, 62, 34, 42, 34, 29, 37, 30, 46, 54, 49, 30, 38, 33, 44, 52, 47, 46, 51, 47, 0, 0, 0, 0, 0, 0, 14, 17, 9, 27, 33, 24, 99, 105, 96, 29, 35, 27, 40, 46, 37, 38, 44, 35, 38, 43, 37, 55, 63, 53, 39, 45, 36, 42, 48, 39, 67, 73, 64, 38, 44, 35, 39, 45, 36, 22, 28, 20, 19, 25, 16, 19, 24, 18, 19, 25, 16, 20, 26, 19, 31, 36, 30, 33, 39, 32, 14, 17, 11, 32, 35, 30, 0, 0, 0, 140, 146, 137, 24, 29, 23, 8, 14, 6, 20, 26, 19, 33, 39, 32, 32, 37, 31, 36, 42, 36, 40, 45, 39, 52, 57, 51, 32, 35, 30, 25, 28, 23, 8, 14, 8, 20, 26, 19, 26, 32, 25, 21, 27, 20, 29, 35, 31, 14, 20, 13, 42, 48, 41, 0, 0, 0, 151, 157, 148, 25, 29, 21, 25, 29, 21, 42, 45, 37, 26, 30, 22, 31, 34, 29, 16, 19, 11, 43, 46, 38, 36, 42, 34, 42, 48, 39, 48, 54, 45, 32, 38, 29, 22, 28, 20, 41, 47, 38, 5, 11, 4, 11, 16, 12, 10, 15, 11, 18, 21, 18, 0, 0, 0, 75, 78, 75, 10, 13, 10, 4, 7, 4, 18, 21, 20, 15, 17, 16, 4, 7, 6, 4, 7, 6, 3, 5, 5, 6, 11, 9, 20, 25, 23, 15, 21, 17, 34, 40, 33, 48, 54, 47, 74, 80, 71, 19, 25, 16, 53, 57, 49, 37, 40, 32, 0, 3, 0, 0, 0, 0, 0, 0, 0, 72, 74, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 3, 0, 0, 0, 0, 0, 0, 0, 4, 4, 0, 4, 2, 0, 0, 0, 2, 9, 9, 11, 16, 14, 26, 31, 29, 5, 10, 8, 15, 20, 19, 11, 16, 14, 0, 2, 0, 0, 4, 0, 34, 39, 37, 12, 17, 13, 23, 25, 24, 29, 35, 31, 8, 10, 7, 15, 17, 16, 5, 7, 9, 11, 13, 15, 12, 14, 18, 0, 1, 0, 3, 5, 5, 12, 15, 12, 15, 17, 14, 7, 9, 8, 0, 0, 0, 52, 55, 51, 45, 48, 45, 36, 39, 33, 0, 0, 0, 113, 110, 99, 146, 141, 127, 151, 147, 130, 146, 145, 125, 172, 169, 149, 165, 162, 142, 157, 154, 134, 179, 176, 154, 175, 171, 150, 139, 139, 123, 9, 8, 0, 0, 0, 0, 0, 0, 0, 84, 84, 72, 66, 65, 54, 84, 84, 70, 131, 131, 113, 81, 80, 60, 95, 93, 76, 47, 45, 32, 110, 107, 99, 13, 14, 7, 95, 96, 91, 99, 100, 93, 84, 85, 78, 77, 78, 71, 80, 81, 74, 77, 78, 69, 78, 80, 70, 79, 81, 71, 84, 85, 76, 95, 97, 89, 114, 115, 110, 63, 62, 58, 26, 24, 20, 109, 105, 102, 101, 97, 94, 0, 0, 0, 122, 118, 113, 56, 52, 46, 59, 55, 52, 56, 55, 49, 88, 85, 79, 136, 133, 125, 95, 94, 85, 78, 74, 66, 90, 89, 80, 113, 112, 104, 87, 86, 77, 0, 0, 0, 72, 75, 67, 76, 80, 72, 79, 82, 74, 12, 18, 9, 195, 201, 192, 0, 0, 0, 0, 1, 0, 7, 12, 8, 18, 23, 21, 0, 4, 2, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 28, 34, 27, 7, 12, 8, 14, 20, 13, 5, 11, 4, 7, 13, 6, 18, 23, 19, 13, 18, 14, 19, 24, 18, 22, 28, 24, 19, 24, 20, 28, 34, 27, 25, 30, 26, 27, 33, 26, 22, 30, 25, 27, 34, 29, 31, 36, 30, 24, 32, 27, 21, 26, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149, 157, 150, 31, 39, 32, 15, 23, 16, 31, 39, 32, 7, 15, 8, 28, 34, 25, 33, 39, 30, 50, 56, 48, 45, 51, 42, 39, 45, 36, 61, 67, 58, 13, 19, 10, 3, 11, 4, 0, 7, 0, 10, 18, 11, 17, 25, 20, 0, 6, 1, 0, 5, 0, 22, 30, 25, 25, 30, 24, 10, 16, 7, 28, 34, 25, 60, 66, 57, 10, 16, 7, 13, 19, 12, 15, 21, 15, 14, 20, 13, 19, 24, 18, 32, 38, 29, 38, 44, 35, 42, 48, 39, 38, 44, 35, 15, 21, 13, 24, 30, 21, 13, 19, 12, 25, 31, 22, 13, 19, 10, 23, 26, 20, 15, 18, 12, 21, 24, 18, 30, 31, 26, 2, 3, 0, 131, 134, 129, 0, 2, 0, 4, 7, 2, 4, 9, 5, 11, 16, 12, 1, 7, 3, 22, 28, 24, 20, 25, 21, 25, 30, 24, 38, 43, 37, 14, 20, 13, 11, 14, 9, 14, 20, 13, 13, 19, 10, 13, 19, 12, 1, 7, 3, 0, 2, 1, 3, 8, 4, 29, 31, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 15, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 18, 21, 16, 106, 107, 109, 132, 134, 138, 136, 135, 142, 137, 136, 143, 138, 138, 142, 140, 138, 146, 144, 145, 151, 158, 157, 166, 152, 153, 162, 158, 157, 166, 149, 148, 157, 161, 159, 169, 150, 149, 158, 140, 142, 148, 104, 106, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 28, 20, 67, 70, 65, 69, 73, 67, 73, 75, 74, 152, 154, 158, 153, 152, 157, 155, 154, 161, 150, 151, 157, 153, 151, 160, 144, 145, 153, 149, 150, 156, 153, 151, 159, 148, 148, 157, 148, 148, 157, 143, 143, 152, 143, 146, 157, 140, 143, 153, 131, 134, 144, 141, 144, 154, 151, 151, 162, 152, 153, 164, 149, 152, 162, 151, 153, 164, 148, 151, 159, 158, 158, 169, 159, 159, 171, 156, 156, 165, 153, 154, 163, 151, 152, 159, 164, 165, 169, 168, 169, 176, 158, 159, 165, 156, 157, 163, 158, 159, 165, 163, 164, 168, 157, 156, 161, 142, 143, 147, 144, 145, 149, 142, 143, 147, 121, 121, 123, 12, 15, 14, 0, 0, 0, 0, 0, 0, 86, 83, 72, 137, 135, 120, 167, 162, 146, 161, 157, 140, 157, 153, 136, 159, 155, 135, 177, 173, 154, 172, 169, 147, 183, 180, 156, 61, 55, 46, 0, 0, 0, 0, 0, 0, 90, 90, 78, 64, 60, 52, 63, 60, 49, 139, 137, 124, 81, 80, 62, 80, 78, 61, 60, 58, 43, 87, 84, 74, 145, 144, 135, 0, 0, 0, 112, 113, 106, 107, 108, 101, 120, 121, 114, 106, 107, 100, 118, 119, 112, 114, 118, 107, 113, 116, 106, 109, 113, 103, 109, 111, 101, 98, 99, 92, 100, 101, 94, 10, 12, 4, 0, 0, 0, 97, 96, 87, 123, 120, 112, 0, 0, 0, 99, 95, 87, 35, 31, 25, 35, 31, 25, 57, 53, 46, 102, 101, 92, 144, 141, 133, 78, 74, 66, 78, 78, 69, 109, 108, 99, 108, 107, 98, 70, 71, 62, 0, 0, 0, 74, 78, 70, 68, 72, 62, 58, 62, 51, 131, 137, 128, 11, 17, 8, 1, 7, 1, 17, 20, 15, 8, 14, 8, 10, 15, 11, 15, 18, 12, 0, 5, 1, 0, 5, 1, 18, 23, 19, 8, 14, 10, 4, 9, 5, 0, 2, 0, 15, 21, 17, 13, 18, 14, 17, 22, 16, 14, 19, 15, 18, 23, 19, 22, 28, 22, 25, 30, 26, 16, 24, 19, 33, 38, 34, 24, 32, 25, 43, 49, 43, 34, 40, 33, 25, 33, 26, 33, 39, 32, 15, 23, 18, 3, 8, 4, 34, 39, 35, 8, 10, 7, 0, 0, 0, 39, 44, 40, 0, 8, 1, 0, 6, 1, 0, 4, 0, 63, 69, 62, 9, 17, 10, 32, 38, 29, 50, 56, 48, 63, 69, 60, 56, 63, 51, 41, 47, 38, 20, 26, 17, 0, 6, 0, 0, 3, 0, 0, 5, 0, 0, 1, 0, 0, 3, 0, 0, 2, 0, 0, 5, 1, 0, 0, 0, 32, 37, 33, 0, 0, 0, 163, 166, 160, 0, 0, 0, 2, 5, 1, 3, 6, 3, 11, 14, 11, 19, 22, 17, 22, 24, 21, 7, 10, 4, 35, 41, 32, 36, 42, 34, 35, 41, 32, 26, 32, 23, 15, 21, 13, 10, 16, 7, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 25, 28, 7, 6, 11, 21, 21, 23, 62, 61, 66, 78, 77, 82, 120, 121, 127, 155, 156, 162, 152, 153, 160, 151, 152, 159, 142, 143, 149, 158, 159, 163, 8, 10, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 5, 0, 32, 35, 30, 99, 102, 96, 101, 102, 99, 107, 109, 110, 127, 127, 129, 138, 138, 140, 147, 144, 149, 147, 142, 146, 150, 144, 151, 149, 143, 151, 153, 147, 156, 149, 142, 153, 143, 136, 148, 144, 139, 152, 133, 131, 141, 147, 144, 149, 6, 6, 4, 0, 0, 0, 43, 44, 37, 88, 90, 82, 90, 91, 84, 66, 67, 64, 48, 48, 46, 150, 149, 156, 123, 122, 131, 134, 132, 144, 138, 137, 146, 135, 133, 143, 141, 139, 149, 177, 175, 185, 246, 244, 254, 140, 136, 146, 134, 132, 144, 136, 134, 146, 131, 130, 141, 123, 123, 134, 147, 150, 158, 0, 0, 0, 19, 24, 20, 0, 0, 0, 79, 82, 74, 79, 82, 74, 55, 59, 53, 36, 38, 37, 125, 124, 128, 150, 149, 158, 153, 151, 160, 158, 156, 168, 153, 151, 162, 148, 146, 156, 151, 149, 161, 150, 148, 160, 148, 145, 160, 144, 144, 157, 145, 145, 160, 148, 147, 163, 140, 140, 156, 140, 140, 156, 139, 139, 155, 136, 135, 151, 137, 136, 152, 138, 138, 152, 137, 136, 152, 138, 138, 154, 136, 139, 152, 136, 136, 149, 136, 136, 149, 137, 137, 150, 136, 136, 149, 138, 138, 150, 135, 135, 146, 135, 135, 144, 132, 133, 142, 137, 138, 146, 130, 131, 139, 129, 130, 138, 130, 131, 139, 137, 138, 146, 128, 128, 137, 133, 135, 141, 104, 103, 106, 7, 9, 6, 0, 0, 0, 66, 65, 54, 139, 137, 122, 166, 165, 147, 164, 160, 143, 152, 151, 133, 160, 156, 137, 159, 155, 135, 163, 160, 138, 176, 173, 151, 0, 2, 0, 0, 0, 0, 23, 22, 13, 71, 71, 62, 51, 48, 38, 99, 96, 83, 168, 166, 151, 87, 85, 68, 95, 93, 78, 49, 46, 31, 63, 60, 47, 7, 7, 0, 77, 78, 69, 100, 102, 92, 58, 60, 50, 51, 53, 43, 57, 58, 51, 56, 57, 48, 45, 47, 37, 48, 52, 42, 42, 45, 35, 40, 41, 29, 100, 102, 90, 95, 97, 85, 0, 1, 0, 8, 10, 0, 67, 67, 53, 36, 33, 22, 24, 22, 9, 49, 46, 35, 67, 64, 56, 40, 37, 29, 61, 60, 51, 88, 85, 77, 130, 127, 117, 80, 77, 67, 87, 84, 74, 101, 98, 88, 108, 107, 96, 92, 92, 83, 0, 0, 0, 79, 83, 72, 74, 78, 68, 157, 161, 150, 15, 18, 10, 28, 31, 25, 4, 7, 2, 12, 16, 10, 16, 19, 13, 18, 21, 18, 1, 3, 0, 0, 0, 0, 4, 9, 5, 7, 12, 10, 0, 4, 2, 6, 11, 9, 3, 7, 6, 3, 7, 6, 5, 10, 8, 0, 2, 0, 7, 12, 10, 0, 2, 0, 0, 3, 1, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 2, 4, 5, 1, 6, 9, 0, 2, 3, 0, 0, 0, 0, 0, 0, 2, 3, 9, 11, 12, 19, 0, 4, 11, 0, 1, 9, 53, 54, 65, 80, 80, 91, 111, 112, 119, 145, 147, 151, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 13, 8, 165, 166, 163, 176, 175, 178, 163, 162, 167, 170, 167, 173, 170, 167, 173, 177, 174, 182, 171, 168, 176, 160, 156, 166, 154, 150, 160, 149, 142, 153, 144, 140, 150, 134, 130, 143, 130, 125, 138, 128, 126, 138, 136, 135, 144, 0, 0, 1, 15, 18, 12, 0, 0, 0, 47, 53, 44, 82, 86, 78, 93, 96, 90, 64, 67, 61, 149, 151, 150, 143, 142, 151, 150, 148, 160, 143, 141, 155, 147, 145, 157, 154, 152, 164, 146, 141, 156, 143, 141, 155, 144, 142, 156, 141, 138, 153, 133, 130, 145, 129, 126, 143, 127, 124, 141, 127, 127, 140, 0, 0, 0, 82, 85, 84, 0, 0, 0, 106, 107, 100, 107, 108, 101, 83, 84, 77, 71, 72, 67, 114, 112, 111, 110, 107, 110, 113, 110, 118, 135, 129, 137, 146, 140, 149, 156, 150, 159, 188, 183, 189, 190, 184, 192, 171, 164, 176, 156, 149, 162, 155, 147, 163, 144, 137, 153, 139, 134, 149, 149, 145, 160, 0, 0, 8, 0, 0, 0, 0, 0, 0, 62, 63, 56, 55, 56, 51, 52, 53, 50, 47, 47, 47, 126, 125, 130, 129, 128, 137, 136, 134, 146, 143, 142, 151, 149, 145, 156, 149, 145, 158, 255, 255, 255, 121, 117, 128, 139, 135, 147, 139, 135, 147, 135, 133, 145, 134, 130, 143, 128, 126, 138, 127, 127, 138, 7, 8, 14, 24, 27, 24, 0, 0, 0, 14, 17, 11, 24, 27, 22, 32, 35, 30, 37, 37, 39, 66, 65, 72, 150, 149, 158, 153, 151, 160, 151, 150, 159, 150, 149, 158, 148, 146, 158, 145, 144, 155, 149, 147, 161, 154, 151, 166, 150, 148, 162, 145, 143, 159, 142, 141, 157, 149, 148, 164, 145, 145, 160, 142, 141, 157, 140, 140, 156, 143, 142, 158, 140, 142, 157, 141, 143, 158, 132, 134, 149, 134, 136, 151, 133, 135, 150, 133, 133, 147, 132, 132, 146, 138, 138, 152, 136, 136, 149, 131, 131, 143, 128, 128, 137, 125, 126, 135, 133, 131, 139, 128, 129, 135, 128, 127, 134, 130, 131, 139, 136, 137, 145, 131, 130, 139, 131, 132, 141, 137, 138, 144, 32, 34, 36, 24, 25, 22, 45, 44, 35, 118, 116, 103, 136, 132, 117, 157, 153, 136, 157, 154, 134, 185, 181, 162, 155, 151, 132, 177, 173, 154, 151, 148, 128, 0, 0, 0, 0, 0, 0, 108, 107, 98, 85, 81, 73, 63, 60, 49, 123, 121, 106, 120, 118, 100, 96, 95, 77, 177, 175, 155, 70, 68, 50, 59, 58, 45, 0, 0, 0, 104, 108, 98, 98, 99, 90, 92, 95, 85, 104, 108, 98, 101, 105, 94, 101, 105, 94, 90, 94, 84, 82, 87, 74, 94, 98, 85, 99, 101, 89, 92, 94, 80, 85, 87, 75, 0, 0, 0, 184, 185, 164, 188, 189, 168, 0, 0, 0, 79, 76, 64, 53, 50, 40, 42, 38, 30, 31, 28, 20, 79, 76, 68, 106, 103, 92, 129, 126, 116, 87, 84, 74, 91, 88, 77, 110, 108, 95, 107, 104, 92, 100, 100, 91, 0, 0, 0, 86, 88, 78, 163, 165, 153, 9, 13, 2, 25, 29, 21, 25, 28, 25, 6, 11, 9, 12, 17, 13, 6, 11, 7, 1, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 5, 12, 54, 55, 62, 93, 94, 100, 117, 118, 125, 148, 147, 154, 171, 169, 181, 169, 167, 179, 159, 159, 173, 164, 163, 179, 156, 155, 171, 151, 149, 165, 143, 142, 158, 145, 144, 163, 143, 142, 160, 144, 143, 162, 142, 140, 161, 144, 143, 164, 143, 141, 162, 147, 143, 165, 142, 139, 158, 138, 135, 157, 142, 140, 154, 50, 51, 55, 7, 9, 8, 38, 41, 34, 0, 0, 0, 0, 0, 0, 89, 93, 85, 56, 62, 53, 53, 56, 51, 69, 69, 67, 168, 170, 174, 160, 156, 164, 166, 162, 170, 158, 152, 163, 155, 151, 162, 140, 136, 146, 133, 129, 141, 139, 132, 148, 136, 129, 145, 132, 127, 142, 131, 126, 141, 127, 122, 140, 126, 121, 138, 125, 123, 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 87, 79, 83, 87, 79, 71, 77, 68, 62, 65, 60, 78, 79, 81, 141, 138, 153, 138, 136, 150, 150, 148, 162, 154, 151, 166, 153, 150, 164, 157, 155, 169, 162, 159, 174, 255, 255, 255, 138, 136, 150, 133, 130, 147, 138, 136, 152, 129, 126, 143, 123, 121, 137, 152, 153, 162, 3, 5, 7, 0, 0, 0, 59, 61, 53, 83, 84, 77, 72, 73, 66, 60, 61, 56, 53, 54, 51, 104, 101, 104, 109, 105, 113, 135, 132, 140, 151, 145, 154, 168, 162, 171, 159, 153, 162, 168, 162, 171, 255, 255, 255, 173, 166, 180, 156, 149, 164, 145, 140, 153, 140, 135, 150, 141, 136, 154, 158, 153, 168, 12, 11, 14, 0, 0, 0, 57, 58, 51, 50, 51, 46, 43, 43, 41, 37, 39, 38, 28, 28, 30, 143, 142, 151, 131, 130, 139, 144, 140, 150, 146, 142, 152, 148, 144, 157, 141, 137, 148, 125, 121, 133, 146, 141, 154, 141, 137, 150, 139, 135, 147, 133, 129, 141, 128, 126, 138, 123, 122, 133, 60, 60, 72, 8, 10, 9, 0, 0, 0, 0, 0, 0, 42, 48, 41, 17, 22, 18, 36, 38, 39, 2, 3, 7, 151, 152, 159, 148, 146, 156, 153, 149, 159, 151, 150, 159, 153, 151, 162, 151, 149, 161, 148, 145, 160, 150, 148, 162, 147, 144, 159, 148, 145, 162, 144, 143, 159, 137, 136, 152, 139, 139, 155, 142, 141, 157, 142, 141, 157, 140, 140, 156, 142, 141, 157, 140, 140, 156, 135, 137, 152, 136, 138, 154, 132, 132, 146, 133, 135, 148, 133, 133, 149, 131, 131, 145, 132, 132, 146, 130, 131, 139, 186, 187, 193, 144, 143, 150, 151, 151, 155, 128, 129, 135, 131, 131, 135, 164, 163, 170, 217, 218, 225, 116, 117, 126, 129, 130, 138, 125, 126, 135, 25, 26, 33, 20, 20, 20, 0, 0, 0, 109, 106, 96, 157, 153, 138, 149, 145, 128, 156, 152, 133, 156, 152, 133, 149, 145, 126, 159, 155, 135, 168, 164, 145, 0, 0, 0, 58, 61, 53, 66, 65, 56, 79, 76, 68, 83, 78, 66, 143, 141, 124, 147, 146, 128, 135, 133, 115, 103, 102, 84, 75, 74, 54, 60, 60, 44, 0, 0, 0, 121, 123, 113, 100, 104, 93, 92, 95, 85, 118, 119, 110, 93, 95, 85, 85, 88, 78, 94, 98, 87, 94, 96, 84, 97, 99, 86, 108, 110, 98, 98, 100, 88, 66, 69, 54, 0, 0, 0, 111, 115, 90, 181, 182, 163, 0, 0, 0, 113, 110, 95, 44, 41, 29, 31, 28, 18, 28, 25, 14, 61, 59, 48, 152, 150, 137, 117, 115, 102, 108, 105, 95, 82, 80, 67, 113, 110, 97, 102, 102, 88, 102, 99, 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 5, 0, 145, 148, 154, 167, 168, 179, 155, 158, 168, 153, 154, 165, 148, 148, 159, 146, 147, 158, 124, 125, 136, 138, 138, 150, 138, 138, 150, 133, 134, 145, 136, 136, 147, 136, 134, 146, 143, 141, 153, 143, 141, 153, 143, 141, 153, 146, 141, 156, 140, 135, 150, 144, 139, 154, 147, 142, 157, 146, 141, 156, 146, 141, 158, 144, 138, 158, 147, 143, 163, 141, 137, 159, 141, 137, 159, 143, 140, 161, 151, 148, 169, 153, 149, 173, 149, 145, 169, 144, 140, 164, 144, 140, 164, 143, 139, 163, 142, 138, 162, 140, 136, 160, 138, 135, 159, 142, 138, 162, 136, 133, 154, 182, 180, 191, 6, 5, 8, 19, 22, 17, 0, 0, 0, 0, 0, 0, 46, 50, 42, 81, 87, 78, 43, 49, 43, 44, 45, 42, 138, 138, 142, 167, 163, 171, 163, 159, 170, 165, 159, 170, 162, 158, 169, 151, 147, 157, 144, 137, 151, 139, 135, 145, 130, 125, 140, 131, 126, 141, 126, 121, 136, 126, 121, 136, 125, 122, 138, 116, 114, 128, 140, 141, 152, 3, 5, 7, 0, 4, 0, 0, 0, 0, 18, 24, 15, 62, 68, 59, 28, 34, 27, 15, 20, 19, 161, 159, 171, 142, 140, 154, 145, 143, 157, 154, 151, 166, 155, 153, 167, 136, 134, 148, 130, 125, 140, 255, 255, 255, 161, 158, 173, 147, 144, 159, 133, 130, 145, 129, 126, 143, 126, 123, 140, 116, 114, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 48, 37, 66, 67, 60, 43, 44, 39, 48, 48, 46, 133, 131, 131, 113, 110, 116, 118, 112, 121, 138, 132, 141, 157, 151, 160, 166, 160, 171, 161, 155, 166, 153, 147, 158, 163, 156, 169, 157, 150, 166, 151, 144, 160, 144, 139, 154, 135, 130, 148, 149, 144, 162, 0, 0, 0, 0, 0, 0, 15, 16, 11, 20, 21, 16, 21, 23, 20, 24, 24, 24, 26, 28, 30, 151, 150, 159, 121, 117, 130, 142, 140, 152, 147, 143, 155, 149, 147, 159, 151, 147, 157, 147, 143, 155, 140, 136, 148, 144, 139, 152, 139, 135, 147, 130, 128, 140, 123, 122, 133, 125, 123, 134, 149, 147, 159, 0, 0, 0, 45, 48, 45, 0, 0, 0, 23, 26, 20, 1, 7, 3, 0, 2, 1, 3, 5, 9, 124, 125, 132, 150, 151, 159, 150, 148, 160, 152, 147, 160, 150, 148, 160, 151, 146, 161, 149, 147, 161, 148, 145, 160, 145, 143, 159, 147, 144, 160, 143, 140, 157, 143, 142, 158, 140, 140, 156, 142, 141, 157, 141, 143, 158, 137, 136, 152, 140, 142, 157, 136, 138, 154, 135, 137, 152, 133, 135, 150, 133, 133, 149, 135, 134, 150, 135, 135, 148, 133, 133, 147, 128, 128, 139, 127, 125, 137, 155, 154, 161, 255, 255, 255, 242, 241, 246, 255, 255, 255, 255, 254, 255, 248, 247, 252, 255, 255, 255, 131, 130, 139, 126, 124, 136, 130, 129, 138, 80, 81, 87, 25, 28, 27, 0, 0, 0, 71, 67, 60, 144, 140, 126, 142, 138, 123, 163, 159, 140, 159, 155, 135, 155, 151, 132, 152, 151, 131, 150, 149, 128, 0, 0, 0, 91, 92, 83, 95, 92, 82, 80, 77, 67, 101, 99, 84, 174, 173, 155, 129, 127, 110, 129, 127, 110, 18, 17, 0, 91, 89, 71, 150, 153, 136, 0, 0, 0, 73, 75, 65, 98, 100, 88, 98, 100, 88, 117, 121, 111, 109, 113, 100, 111, 113, 100, 106, 110, 97, 102, 106, 94, 105, 107, 95, 88, 91, 76, 60, 65, 50, 0, 0, 0, 2, 5, 0, 58, 62, 40, 255, 255, 233, 0, 0, 0, 101, 99, 82, 42, 39, 26, 57, 54, 41, 62, 56, 47, 91, 88, 75, 163, 160, 147, 107, 103, 88, 84, 79, 67, 89, 87, 74, 94, 92, 77, 124, 122, 109, 108, 105, 95, 0, 0, 0, 130, 129, 118, 115, 117, 105, 81, 85, 72, 67, 71, 63, 44, 47, 41, 114, 114, 123, 136, 136, 149, 134, 136, 151, 136, 135, 151, 129, 129, 142, 136, 136, 149, 142, 142, 155, 137, 137, 150, 137, 137, 150, 137, 135, 149, 144, 142, 156, 141, 139, 151, 141, 138, 153, 141, 138, 153, 142, 140, 154, 142, 138, 153, 144, 139, 154, 141, 136, 154, 140, 135, 152, 138, 132, 150, 140, 135, 152, 140, 134, 155, 139, 133, 156, 142, 136, 159, 146, 140, 162, 141, 137, 161, 140, 136, 160, 145, 142, 166, 141, 137, 161, 142, 138, 162, 142, 138, 162, 142, 138, 162, 137, 133, 158, 141, 137, 161, 141, 137, 161, 146, 139, 164, 140, 136, 158, 145, 143, 159, 0, 0, 2, 0, 1, 0, 21, 24, 18, 0, 0, 0, 15, 18, 12, 69, 75, 66, 28, 31, 25, 43, 46, 40, 78, 78, 80, 160, 156, 164, 165, 161, 171, 166, 160, 171, 163, 156, 167, 150, 143, 155, 231, 225, 236, 158, 152, 163, 143, 136, 148, 255, 255, 255, 144, 139, 154, 130, 123, 139, 123, 118, 133, 118, 115, 129, 118, 118, 132, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 16, 10, 25, 30, 26, 22, 27, 28, 106, 104, 116, 145, 144, 155, 149, 147, 161, 149, 147, 161, 155, 151, 166, 158, 156, 172, 144, 142, 156, 150, 148, 162, 141, 138, 153, 137, 135, 151, 139, 134, 149, 128, 125, 142, 125, 122, 138, 119, 116, 131, 107, 106, 113, 0, 0, 0, 0, 0, 0, 23, 24, 17, 27, 28, 23, 15, 16, 11, 28, 29, 24, 35, 35, 35, 123, 119, 125, 123, 117, 126, 132, 126, 135, 146, 140, 151, 159, 153, 164, 165, 157, 169, 164, 155, 169, 166, 159, 173, 156, 149, 162, 151, 144, 160, 139, 134, 149, 134, 129, 147, 131, 129, 145, 105, 103, 115, 10, 10, 10, 0, 0, 0, 9, 12, 8, 9, 12, 8, 9, 11, 10, 14, 15, 17, 80, 79, 86, 136, 134, 146, 130, 128, 140, 141, 137, 148, 147, 145, 157, 152, 148, 158, 163, 159, 170, 126, 122, 132, 142, 138, 151, 139, 135, 147, 132, 128, 140, 128, 126, 138, 126, 124, 136, 134, 132, 144, 15, 17, 18, 23, 26, 22, 0, 0, 0, 0, 2, 0, 0, 4, 0, 0, 4, 2, 1, 6, 7, 38, 42, 45, 144, 144, 155, 154, 152, 164, 150, 148, 160, 153, 151, 162, 149, 147, 159, 149, 147, 161, 148, 145, 160, 147, 144, 159, 145, 143, 159, 143, 142, 158, 143, 142, 158, 144, 143, 159, 143, 142, 158, 138, 140, 155, 142, 144, 159, 139, 141, 156, 136, 138, 154, 135, 137, 152, 134, 137, 149, 135, 138, 150, 132, 134, 147, 137, 137, 150, 135, 135, 148, 133, 134, 145, 132, 133, 142, 129, 130, 138, 137, 138, 144, 130, 129, 136, 127, 126, 133, 130, 129, 136, 121, 120, 127, 128, 128, 137, 125, 127, 133, 128, 128, 137, 131, 132, 141, 144, 143, 152, 21, 26, 26, 0, 0, 0, 39, 36, 28, 157, 150, 136, 142, 138, 123, 162, 158, 141, 154, 150, 133, 160, 156, 137, 147, 146, 126, 171, 170, 149, 118, 119, 112, 97, 96, 87, 77, 74, 63, 92, 89, 76, 138, 136, 121, 115, 111, 95, 87, 83, 66, 99, 97, 79, 0, 0, 0, 126, 127, 108, 121, 124, 107, 0, 0, 0, 0, 0, 0, 20, 22, 10, 59, 61, 49, 79, 81, 71, 69, 74, 61, 88, 92, 80, 83, 85, 72, 67, 69, 57, 33, 35, 22, 23, 25, 13, 0, 0, 0, 0, 0, 0, 84, 85, 66, 60, 61, 40, 182, 183, 160, 0, 0, 0, 63, 61, 43, 54, 52, 37, 43, 39, 24, 74, 69, 57, 87, 82, 70, 183, 178, 164, 83, 81, 66, 96, 94, 81, 103, 101, 88, 135, 133, 117, 115, 112, 100, 112, 112, 100, 0, 0, 0, 154, 154, 140, 101, 106, 90, 68, 73, 60, 69, 73, 63, 45, 48, 43, 124, 125, 132, 139, 142, 152, 138, 138, 154, 137, 136, 152, 137, 137, 150, 137, 136, 152, 137, 136, 152, 140, 140, 154, 144, 144, 157, 142, 140, 154, 145, 143, 157, 144, 142, 156, 140, 137, 152, 133, 130, 145, 138, 136, 150, 138, 133, 148, 139, 134, 149, 135, 131, 146, 140, 135, 150, 141, 136, 154, 140, 135, 152, 159, 153, 173, 139, 133, 156, 135, 129, 152, 134, 128, 151, 136, 132, 156, 136, 132, 156, 136, 132, 156, 137, 133, 158, 141, 137, 161, 142, 138, 162, 138, 135, 159, 137, 133, 158, 140, 136, 160, 138, 135, 157, 138, 135, 157, 137, 134, 156, 136, 133, 152, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 47, 40, 20, 26, 19, 24, 27, 22, 48, 51, 50, 166, 165, 172, 161, 158, 165, 165, 159, 170, 155, 148, 159, 134, 128, 136, 255, 255, 255, 234, 227, 238, 136, 130, 139, 117, 111, 122, 132, 128, 140, 126, 121, 136, 120, 117, 134, 122, 119, 136, 117, 117, 133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 1, 3, 8, 4, 6, 11, 11, 19, 21, 27, 165, 164, 173, 150, 148, 162, 155, 151, 166, 154, 149, 164, 151, 149, 163, 148, 145, 160, 143, 140, 157, 143, 140, 157, 141, 138, 155, 131, 129, 145, 133, 130, 147, 127, 124, 141, 122, 120, 134, 130, 129, 138, 0, 0, 0, 0, 0, 0, 0, 2, 0, 8, 11, 5, 21, 24, 18, 18, 21, 16, 12, 15, 12, 146, 143, 146, 120, 117, 125, 124, 118, 127, 149, 142, 153, 156, 149, 160, 161, 155, 168, 161, 155, 168, 168, 162, 175, 160, 154, 167, 153, 146, 162, 147, 142, 157, 140, 135, 152, 135, 132, 149, 158, 156, 170, 0, 0, 0, 24, 25, 20, 10, 11, 8, 5, 8, 5, 5, 5, 3, 7, 8, 10, 3, 2, 9, 142, 140, 150, 119, 117, 129, 137, 133, 143, 139, 135, 145, 148, 144, 155, 255, 255, 255, 130, 126, 134, 140, 136, 146, 140, 136, 148, 134, 130, 143, 129, 127, 139, 127, 125, 137, 118, 116, 128, 33, 35, 37, 5, 8, 5, 0, 0, 0, 4, 9, 5, 0, 0, 0, 0, 0, 0, 1, 6, 7, 0, 0, 0, 142, 142, 153, 145, 144, 155, 149, 147, 159, 147, 145, 157, 151, 149, 163, 148, 145, 160, 148, 145, 160, 144, 144, 157, 143, 142, 158, 143, 142, 158, 140, 140, 156, 142, 141, 157, 136, 135, 151, 141, 143, 158, 136, 138, 154, 133, 135, 150, 136, 138, 154, 134, 136, 151, 133, 135, 150, 131, 133, 148, 132, 134, 147, 132, 132, 146, 136, 136, 149, 128, 128, 139, 129, 129, 140, 125, 126, 135, 133, 134, 143, 129, 130, 138, 125, 126, 135, 131, 132, 141, 128, 128, 137, 132, 133, 142, 128, 128, 137, 125, 126, 135, 129, 130, 138, 125, 126, 135, 42, 47, 47, 5, 8, 5, 21, 20, 12, 151, 147, 132, 157, 150, 136, 151, 147, 130, 165, 161, 145, 161, 157, 140, 174, 170, 151, 144, 143, 123, 88, 85, 77, 70, 70, 59, 86, 83, 70, 87, 85, 70, 242, 240, 223, 136, 134, 117, 107, 105, 88, 94, 92, 75, 22, 20, 5, 55, 56, 37, 42, 45, 28, 0, 0, 0, 1, 3, 0, 13, 15, 3, 15, 17, 5, 29, 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 16, 4, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 158, 159, 138, 64, 62, 42, 93, 92, 69, 21, 19, 1, 58, 56, 39, 54, 53, 35, 134, 130, 113, 87, 83, 68, 134, 129, 115, 142, 138, 121, 80, 75, 64, 105, 100, 86, 117, 115, 100, 125, 123, 108, 95, 93, 78, 105, 105, 92, 0, 0, 0, 132, 137, 122, 102, 106, 94, 77, 83, 72, 72, 79, 68, 86, 92, 86, 128, 132, 139, 132, 132, 146, 135, 134, 150, 139, 139, 155, 140, 137, 152, 136, 134, 148, 138, 136, 152, 134, 132, 146, 137, 135, 149, 135, 133, 147, 144, 142, 156, 139, 134, 149, 133, 130, 145, 135, 133, 147, 134, 132, 146, 131, 126, 141, 133, 128, 143, 135, 131, 146, 255, 255, 255, 163, 159, 174, 149, 145, 160, 225, 220, 235, 139, 133, 154, 134, 128, 151, 131, 125, 147, 133, 127, 152, 131, 124, 149, 133, 129, 153, 135, 131, 155, 134, 130, 154, 135, 131, 155, 135, 131, 155, 134, 130, 154, 129, 125, 149, 138, 135, 157, 137, 131, 153, 135, 131, 153, 135, 132, 149, 111, 112, 123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 23, 14, 11, 16, 10, 14, 19, 15, 17, 21, 20, 136, 135, 142, 156, 153, 161, 153, 147, 158, 155, 148, 159, 145, 139, 150, 201, 195, 206, 155, 148, 159, 255, 255, 255, 138, 131, 145, 255, 255, 255, 147, 142, 157, 125, 120, 137, 118, 113, 130, 118, 115, 131, 152, 153, 164, 0, 0, 0, 10, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 9, 7, 1, 6, 9, 107, 108, 114, 150, 148, 160, 153, 148, 163, 153, 150, 164, 155, 151, 166, 151, 149, 163, 149, 145, 160, 144, 142, 156, 149, 147, 161, 135, 133, 147, 128, 126, 140, 128, 126, 140, 123, 121, 135, 119, 117, 129, 33, 32, 35, 72, 74, 71, 0, 0, 0, 0, 0, 0, 10, 13, 8, 10, 13, 10, 16, 19, 15, 21, 21, 23, 147, 144, 149, 124, 118, 129, 134, 127, 138, 147, 141, 152, 156, 147, 161, 155, 148, 161, 145, 138, 152, 152, 146, 159, 150, 143, 159, 145, 140, 155, 137, 131, 149, 136, 133, 150, 133, 130, 145, 42, 41, 46, 71, 72, 67, 0, 0, 0, 5, 8, 5, 2, 5, 1, 3, 6, 3, 3, 5, 9, 140, 141, 150, 123, 122, 131, 125, 121, 131, 137, 136, 145, 127, 123, 134, 147, 143, 151, 128, 125, 135, 140, 136, 146, 139, 135, 145, 134, 132, 142, 135, 133, 143, 125, 123, 132, 122, 121, 130, 135, 134, 139, 14, 16, 15, 0, 0, 0, 0, 0, 0, 11, 14, 11, 0, 0, 0, 0, 4, 2, 0, 0, 0, 115, 116, 122, 143, 142, 149, 147, 145, 155, 145, 144, 153, 145, 144, 153, 151, 149, 161, 147, 145, 157, 148, 148, 161, 143, 143, 156, 142, 142, 155, 145, 145, 160, 140, 140, 154, 139, 141, 154, 134, 137, 149, 134, 137, 149, 133, 135, 148, 133, 135, 148, 132, 134, 147, 129, 132, 145, 132, 134, 147, 132, 133, 144, 131, 131, 143, 128, 128, 141, 130, 130, 141, 130, 131, 139, 128, 128, 137, 125, 126, 135, 127, 127, 136, 127, 127, 136, 128, 128, 137, 130, 131, 139, 127, 127, 136, 127, 127, 136, 125, 126, 135, 124, 125, 134, 121, 122, 128, 103, 107, 108, 21, 26, 22, 0, 0, 0, 94, 92, 79, 132, 127, 113, 152, 145, 129, 159, 152, 138, 155, 151, 134, 153, 149, 129, 160, 156, 135, 74, 72, 66, 70, 69, 61, 125, 125, 111, 118, 117, 99, 177, 175, 157, 111, 110, 92, 108, 106, 89, 85, 83, 65, 58, 56, 39, 62, 62, 46, 6, 9, 0, 0, 0, 0, 23, 25, 13, 49, 51, 39, 101, 104, 89, 149, 151, 139, 93, 96, 81, 70, 72, 60, 41, 43, 31, 34, 36, 22, 43, 45, 33, 43, 45, 31, 102, 105, 88, 109, 109, 91, 182, 183, 160, 87, 86, 66, 22, 21, 0, 78, 76, 58, 91, 89, 69, 60, 59, 41, 93, 91, 76, 120, 116, 99, 168, 164, 147, 121, 119, 101, 96, 94, 79, 89, 87, 72, 97, 95, 80, 116, 114, 99, 137, 135, 120, 109, 109, 95, 0, 0, 0, 138, 142, 129, 91, 98, 84, 68, 72, 62, 71, 74, 66, 48, 51, 48, 118, 119, 128, 132, 132, 146, 137, 135, 151, 136, 133, 150, 133, 130, 145, 135, 133, 147, 129, 127, 141, 135, 133, 147, 133, 130, 145, 133, 130, 145, 134, 132, 146, 134, 129, 145, 133, 130, 145, 137, 135, 149, 133, 130, 145, 131, 126, 141, 126, 121, 136, 139, 134, 149, 255, 255, 255, 127, 123, 138, 255, 255, 255, 255, 255, 255, 148, 143, 163, 130, 124, 146, 133, 127, 150, 123, 120, 144, 130, 123, 148, 133, 129, 153, 131, 128, 152, 131, 128, 152, 131, 128, 152, 135, 131, 155, 134, 130, 154, 131, 128, 152, 133, 129, 153, 134, 130, 152, 130, 127, 149, 133, 130, 147, 158, 158, 171, 0, 0, 0, 0, 0, 0, 82, 87, 81, 0, 0, 0, 12, 18, 11, 1, 7, 3, 8, 10, 7, 6, 11, 9, 99, 100, 104, 153, 151, 159, 151, 145, 156, 153, 147, 158, 147, 143, 153, 132, 126, 137, 131, 125, 136, 138, 131, 145, 134, 130, 143, 121, 117, 130, 125, 120, 137, 121, 117, 132, 121, 116, 134, 113, 110, 127, 122, 120, 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 1, 151, 152, 160, 143, 141, 155, 156, 154, 168, 153, 150, 166, 155, 153, 167, 142, 140, 154, 255, 255, 255, 131, 129, 143, 133, 130, 145, 134, 131, 148, 129, 126, 143, 128, 126, 140, 121, 119, 131, 143, 142, 149, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 10, 4, 1, 2, 0, 1, 3, 0, 0, 0, 0, 94, 94, 98, 111, 107, 115, 131, 125, 136, 139, 133, 144, 149, 142, 153, 151, 144, 158, 161, 155, 166, 160, 154, 165, 153, 149, 161, 147, 142, 157, 141, 138, 155, 140, 137, 154, 134, 132, 144, 151, 150, 157, 58, 59, 54, 12, 16, 10, 0, 0, 0, 11, 14, 11, 21, 23, 20, 0, 0, 0, 14, 15, 17, 130, 131, 135, 122, 123, 129, 126, 125, 132, 127, 126, 131, 141, 140, 145, 141, 140, 147, 141, 140, 147, 138, 138, 142, 132, 134, 138, 131, 133, 137, 129, 128, 133, 129, 130, 134, 130, 130, 132, 4, 7, 6, 0, 0, 0, 0, 0, 0, 7, 13, 6, 13, 18, 14, 9, 11, 10, 0, 0, 0, 100, 103, 97, 136, 139, 131, 225, 229, 219, 196, 200, 190, 167, 171, 163, 164, 167, 161, 158, 161, 158, 141, 145, 146, 132, 136, 139, 134, 138, 143, 126, 130, 135, 128, 132, 137, 138, 141, 147, 133, 137, 142, 134, 138, 141, 136, 140, 146, 136, 140, 146, 129, 133, 139, 124, 127, 133, 128, 129, 135, 133, 135, 141, 131, 132, 141, 132, 133, 142, 129, 130, 138, 131, 132, 139, 128, 129, 133, 125, 129, 132, 125, 127, 131, 122, 123, 127, 130, 131, 137, 129, 130, 136, 129, 130, 134, 128, 129, 135, 124, 126, 130, 127, 128, 132, 128, 129, 131, 131, 135, 134, 29, 31, 28, 16, 17, 10, 82, 82, 68, 147, 140, 127, 142, 138, 121, 148, 144, 127, 149, 145, 126, 185, 182, 160, 179, 176, 154, 62, 63, 54, 92, 92, 81, 106, 104, 88, 150, 146, 129, 137, 135, 120, 101, 99, 84, 94, 90, 76, 44, 41, 29, 80, 78, 63, 64, 64, 51, 32, 32, 16, 0, 0, 0, 31, 33, 21, 53, 55, 43, 52, 55, 40, 85, 87, 73, 93, 96, 81, 98, 98, 82, 92, 93, 77, 95, 98, 81, 74, 77, 60, 77, 80, 63, 112, 113, 95, 59, 59, 41, 141, 142, 121, 78, 76, 56, 3, 2, 0, 112, 108, 89, 98, 94, 75, 83, 82, 64, 80, 76, 60, 125, 121, 102, 176, 172, 155, 130, 126, 112, 106, 103, 90, 94, 92, 79, 101, 98, 86, 132, 133, 114, 108, 108, 90, 116, 118, 106, 0, 0, 0, 115, 119, 108, 76, 82, 71, 54, 58, 48, 97, 101, 93, 39, 44, 38, 120, 120, 131, 131, 131, 147, 133, 130, 147, 131, 129, 145, 130, 128, 142, 134, 131, 148, 136, 134, 148, 134, 129, 145, 135, 131, 146, 132, 127, 142, 133, 128, 143, 133, 128, 143, 131, 126, 141, 129, 127, 141, 123, 118, 133, 127, 123, 138, 127, 123, 138, 142, 138, 153, 225, 220, 235, 134, 129, 145, 131, 126, 143, 219, 214, 229, 133, 128, 148, 126, 123, 142, 126, 120, 143, 131, 128, 152, 131, 125, 147, 122, 118, 142, 130, 127, 151, 128, 124, 148, 131, 128, 152, 131, 128, 152, 133, 129, 153, 133, 129, 153, 134, 130, 154, 134, 130, 154, 125, 121, 143, 127, 124, 143, 131, 131, 145, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 4, 9, 5, 1, 7, 3, 0, 3, 0, 16, 17, 21, 141, 140, 145, 153, 147, 158, 151, 145, 156, 140, 136, 146, 139, 135, 147, 139, 133, 146, 131, 126, 141, 134, 129, 145, 128, 123, 141, 126, 121, 138, 127, 122, 140, 123, 120, 140, 119, 116, 135, 122, 120, 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 1, 6, 5, 0, 0, 0, 156, 160, 165, 138, 137, 148, 144, 142, 156, 141, 138, 153, 147, 144, 159, 147, 144, 159, 147, 144, 159, 138, 133, 148, 134, 132, 144, 134, 132, 144, 129, 127, 141, 123, 122, 133, 121, 119, 131, 120, 119, 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 68, 71, 66, 50, 56, 49, 2, 5, 1, 0, 2, 0, 121, 121, 121, 98, 95, 101, 123, 119, 125, 138, 134, 142, 141, 140, 147, 155, 154, 161, 137, 136, 143, 141, 140, 147, 142, 141, 148, 125, 123, 130, 129, 128, 135, 130, 130, 132, 191, 191, 191, 10, 11, 6, 16, 19, 11, 0, 0, 0, 0, 3, 0, 15, 18, 12, 0, 1, 0, 149, 152, 146, 24, 29, 23, 8, 14, 8, 27, 33, 26, 34, 40, 33, 60, 66, 57, 81, 86, 80, 81, 86, 80, 85, 91, 84, 60, 65, 61, 35, 41, 34, 14, 17, 11, 0, 0, 0, 19, 22, 17, 0, 0, 0, 19, 22, 17, 58, 59, 52, 3, 5, 0, 7, 9, 6, 57, 63, 58, 15, 21, 17, 0, 0, 0, 13, 18, 14, 5, 10, 6, 4, 9, 3, 15, 21, 17, 0, 5, 1, 0, 3, 1, 10, 14, 13, 4, 9, 7, 6, 11, 9, 12, 17, 15, 26, 31, 29, 5, 10, 8, 15, 20, 19, 17, 21, 20, 1, 6, 5, 14, 19, 15, 1, 6, 5, 0, 0, 0, 14, 16, 13, 26, 29, 28, 32, 35, 34, 38, 41, 38, 39, 42, 39, 36, 42, 38, 36, 41, 40, 45, 50, 46, 57, 63, 58, 43, 49, 45, 42, 47, 45, 35, 40, 38, 38, 42, 41, 43, 48, 47, 45, 49, 48, 39, 44, 40, 27, 32, 30, 25, 30, 26, 18, 21, 18, 63, 64, 57, 59, 56, 48, 153, 148, 134, 159, 152, 138, 153, 146, 130, 159, 153, 134, 163, 160, 138, 195, 191, 170, 87, 84, 74, 96, 94, 81, 175, 173, 158, 149, 147, 129, 144, 142, 127, 116, 114, 99, 73, 71, 56, 28, 25, 12, 103, 103, 89, 54, 54, 40, 10, 10, 0, 0, 0, 0, 35, 37, 25, 71, 73, 61, 66, 69, 54, 85, 85, 72, 94, 97, 82, 109, 112, 97, 98, 98, 82, 94, 94, 76, 80, 80, 62, 92, 93, 75, 77, 78, 60, 93, 91, 74, 83, 84, 63, 123, 122, 102, 0, 0, 0, 118, 117, 97, 119, 115, 96, 73, 72, 50, 97, 93, 72, 149, 146, 124, 126, 122, 103, 107, 103, 86, 103, 101, 86, 78, 76, 60, 95, 93, 78, 122, 120, 103, 126, 127, 108, 137, 136, 125, 0, 0, 0, 108, 112, 101, 69, 75, 64, 76, 80, 70, 61, 65, 57, 36, 39, 33, 113, 113, 122, 130, 129, 145, 131, 129, 145, 130, 128, 142, 131, 129, 143, 133, 130, 145, 132, 127, 142, 132, 127, 142, 134, 129, 145, 132, 127, 142, 128, 124, 139, 132, 127, 142, 128, 124, 139, 128, 126, 140, 126, 123, 138, 128, 124, 139, 130, 125, 140, 127, 123, 138, 124, 119, 134, 128, 123, 141, 125, 120, 137, 127, 122, 140, 127, 122, 142, 126, 123, 142, 130, 124, 146, 132, 126, 151, 130, 123, 148, 122, 118, 142, 128, 124, 148, 130, 127, 151, 131, 128, 152, 133, 127, 152, 137, 133, 158, 133, 129, 153, 133, 129, 153, 134, 130, 152, 134, 130, 152, 136, 133, 152, 129, 129, 142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 37, 31, 42, 48, 41, 12, 18, 11, 0, 4, 0, 0, 0, 0, 147, 146, 149, 149, 143, 151, 142, 136, 144, 142, 138, 149, 144, 138, 149, 137, 131, 142, 137, 132, 145, 131, 126, 139, 131, 126, 141, 126, 121, 136, 126, 121, 136, 126, 123, 138, 121, 119, 133, 116, 114, 126, 164, 163, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 3, 0, 0, 0, 56, 61, 59, 142, 143, 149, 142, 142, 151, 143, 141, 153, 140, 138, 150, 141, 139, 151, 137, 136, 145, 130, 129, 138, 121, 120, 127, 126, 124, 134, 127, 128, 134, 149, 150, 154, 187, 190, 187, 88, 91, 88, 0, 0, 0, 78, 81, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 19, 23, 15, 151, 155, 147, 23, 26, 20, 8, 14, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 1, 0, 0, 0, 8, 14, 10, 10, 13, 10, 8, 10, 7, 4, 7, 4, 3, 6, 1, 0, 0, 0, 0, 2, 0, 74, 78, 70, 23, 26, 18, 0, 0, 0, 4, 10, 1, 124, 130, 121, 3, 9, 0, 0, 0, 0, 4, 10, 1, 18, 24, 15, 41, 47, 38, 29, 35, 27, 45, 51, 42, 0, 0, 0, 13, 19, 10, 57, 63, 54, 38, 41, 34, 1, 4, 0, 17, 21, 13, 24, 28, 20, 32, 35, 30, 5, 9, 1, 83, 84, 75, 58, 61, 53, 15, 18, 10, 37, 40, 32, 8, 11, 3, 21, 24, 18, 14, 17, 11, 8, 14, 6, 10, 14, 6, 5, 11, 2, 20, 26, 19, 8, 11, 5, 0, 0, 0, 0, 2, 0, 12, 18, 11, 0, 5, 0, 0, 4, 0, 0, 6, 0, 34, 40, 33, 6, 12, 5, 1, 7, 1, 35, 41, 34, 55, 61, 54, 1, 7, 1, 0, 2, 0, 10, 15, 9, 0, 6, 0, 0, 1, 0, 37, 40, 34, 0, 4, 0, 13, 19, 12, 0, 0, 0, 88, 93, 87, 1, 7, 1, 0, 0, 0, 24, 29, 25, 6, 11, 7, 0, 0, 0, 4, 9, 3, 44, 47, 41, 35, 37, 34, 33, 36, 33, 2, 5, 0, 29, 30, 23, 23, 21, 8, 137, 133, 119, 144, 140, 124, 150, 147, 127, 162, 156, 138, 160, 156, 135, 190, 185, 164, 91, 91, 78, 92, 89, 76, 142, 140, 124, 185, 181, 164, 102, 100, 85, 75, 73, 58, 65, 62, 50, 114, 111, 98, 116, 114, 101, 50, 51, 35, 0, 0, 0, 0, 0, 0, 40, 41, 29, 33, 32, 21, 87, 89, 77, 95, 95, 81, 50, 50, 37, 125, 125, 109, 89, 89, 73, 78, 79, 63, 108, 108, 92, 84, 85, 66, 79, 77, 60, 81, 80, 62, 50, 48, 28, 95, 94, 74, 6, 4, 0, 156, 155, 132, 127, 124, 102, 141, 138, 116, 139, 135, 114, 162, 159, 137, 97, 96, 76, 75, 73, 58, 83, 81, 66, 91, 88, 73, 93, 91, 76, 122, 120, 103, 132, 131, 113, 121, 123, 111, 0, 0, 0, 79, 82, 74, 76, 80, 72, 61, 65, 55, 54, 58, 50, 46, 49, 44, 97, 98, 107, 124, 124, 138, 129, 126, 143, 127, 127, 140, 128, 126, 140, 128, 126, 140, 129, 126, 143, 129, 127, 141, 131, 126, 141, 128, 124, 139, 126, 121, 136, 128, 124, 139, 128, 124, 139, 124, 119, 134, 127, 125, 139, 131, 126, 141, 130, 124, 142, 127, 122, 140, 127, 122, 140, 128, 123, 141, 132, 126, 147, 130, 124, 144, 128, 123, 143, 126, 123, 142, 124, 118, 140, 127, 123, 145, 131, 125, 147, 128, 124, 148, 129, 125, 149, 136, 132, 156, 133, 127, 152, 135, 131, 155, 133, 129, 151, 127, 123, 145, 131, 128, 148, 136, 133, 150, 129, 128, 147, 133, 134, 145, 106, 106, 115, 57, 62, 62, 0, 0, 0, 0, 0, 0, 1, 7, 1, 0, 0, 0, 109, 112, 107, 47, 52, 46, 7, 13, 6, 4, 7, 4, 120, 122, 119, 142, 139, 143, 141, 138, 142, 144, 140, 146, 137, 133, 141, 135, 132, 138, 133, 129, 137, 132, 128, 136, 130, 126, 134, 121, 118, 126, 108, 107, 112, 98, 97, 102, 93, 94, 98, 142, 144, 143, 54, 57, 56, 0, 0, 0, 0, 1, 0, 0, 0, 0, 6, 11, 7, 0, 0, 0, 0, 0, 0, 0, 1, 0, 142, 147, 143, 0, 5, 1, 28, 33, 29, 11, 14, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 6, 1, 0, 0, 0, 3, 6, 1, 0, 3, 0, 2, 5, 0, 0, 0, 0, 29, 32, 26, 10, 13, 8, 0, 0, 0, 11, 14, 9, 0, 0, 0, 0, 3, 0, 146, 150, 140, 1, 5, 0, 4, 8, 0, 16, 19, 11, 51, 54, 46, 0, 6, 0, 42, 48, 39, 0, 2, 0, 2, 5, 0, 0, 1, 0, 0, 6, 0, 104, 108, 100, 40, 44, 36, 37, 40, 32, 29, 32, 24, 38, 41, 34, 0, 0, 0, 133, 137, 129, 38, 41, 34, 135, 138, 130, 12, 16, 8, 18, 22, 12, 90, 94, 84, 51, 54, 46, 5, 9, 0, 18, 24, 15, 3, 9, 0, 60, 64, 54, 32, 38, 27, 41, 47, 38, 0, 2, 0, 30, 33, 25, 15, 18, 10, 50, 53, 45, 36, 37, 30, 7, 8, 1, 80, 81, 74, 45, 47, 37, 9, 11, 1, 28, 29, 22, 66, 69, 62, 40, 44, 36, 29, 32, 24, 57, 60, 52, 106, 109, 101, 9, 12, 4, 40, 44, 36, 61, 66, 60, 25, 30, 24, 0, 0, 0, 0, 1, 0, 3, 8, 2, 7, 13, 6, 7, 13, 6, 57, 63, 54, 0, 0, 0, 6, 12, 3, 24, 29, 23, 16, 19, 13, 3, 6, 1, 2, 5, 0, 32, 35, 30, 21, 24, 18, 18, 21, 16, 0, 0, 0, 2, 5, 1, 1, 4, 0, 0, 0, 0, 6, 11, 7, 24, 27, 22, 0, 3, 0, 4, 9, 5, 4, 9, 5, 8, 11, 5, 86, 92, 88, 73, 76, 70, 9, 12, 6, 0, 3, 0, 16, 19, 13, 28, 31, 25, 13, 14, 7, 0, 0, 0, 135, 131, 116, 141, 135, 119, 160, 154, 135, 173, 167, 148, 175, 169, 149, 176, 171, 150, 92, 89, 76, 114, 111, 98, 129, 127, 112, 191, 187, 170, 101, 99, 84, 75, 73, 60, 77, 74, 61, 98, 98, 84, 134, 131, 118, 48, 48, 34, 124, 124, 110, 58, 60, 48, 21, 23, 11, 27, 29, 17, 47, 48, 36, 88, 91, 76, 87, 90, 75, 187, 187, 173, 85, 86, 70, 82, 82, 66, 81, 81, 65, 95, 95, 77, 90, 91, 72, 151, 150, 129, 66, 65, 45, 161, 158, 136, 134, 131, 109, 175, 171, 150, 147, 144, 120, 155, 152, 130, 185, 182, 160, 133, 130, 106, 97, 93, 76, 80, 76, 62, 100, 98, 82, 92, 90, 74, 91, 88, 75, 111, 110, 92, 97, 96, 78, 135, 137, 125, 0, 0, 0, 78, 81, 71, 67, 71, 61, 61, 65, 55, 72, 76, 65, 42, 45, 39, 108, 109, 115, 117, 117, 131, 124, 124, 138, 129, 127, 141, 128, 126, 140, 128, 126, 140, 125, 122, 136, 127, 123, 138, 127, 123, 138, 131, 126, 139, 124, 119, 134, 130, 128, 142, 129, 127, 139, 127, 125, 139, 127, 125, 139, 131, 129, 143, 129, 127, 141, 128, 125, 142, 125, 122, 138, 129, 126, 143, 128, 125, 142, 128, 125, 142, 134, 131, 148, 129, 126, 143, 129, 126, 143, 129, 127, 141, 128, 126, 140, 129, 127, 139, 113, 111, 123, 102, 101, 108, 94, 94, 98, 97, 96, 99, 144, 146, 145, 75, 78, 77, 19, 22, 21, 15, 21, 17, 4, 9, 7, 1, 7, 3, 14, 20, 13, 18, 23, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 11, 3, 58, 61, 53, 21, 24, 18, 0, 0, 0, 1, 4, 0, 7, 10, 4, 8, 11, 5, 0, 2, 0, 1, 4, 0, 2, 5, 0, 0, 0, 0, 1, 4, 0, 10, 13, 8, 23, 26, 20, 23, 26, 20, 0, 0, 0, 8, 11, 5, 50, 53, 47, 48, 52, 46, 15, 17, 14, 0, 0, 0, 0, 0, 0, 9, 12, 8, 0, 0, 0, 36, 42, 38, 86, 92, 88, 0, 4, 0, 0, 0, 0, 48, 54, 47, 18, 21, 16, 0, 3, 0, 0, 0, 0, 0, 0, 0, 67, 70, 65, 0, 0, 0, 50, 53, 45, 0, 3, 0, 42, 45, 37, 16, 19, 11, 0, 0, 0, 1, 4, 0, 7, 10, 2, 0, 0, 0, 14, 17, 9, 43, 46, 38, 100, 104, 93, 43, 47, 36, 36, 40, 29, 28, 31, 21, 18, 22, 12, 52, 56, 46, 47, 51, 43, 38, 44, 35, 4, 8, 0, 7, 10, 2, 21, 24, 14, 8, 11, 3, 0, 4, 0, 57, 63, 54, 0, 0, 0, 38, 41, 34, 33, 37, 27, 3, 7, 0, 19, 23, 13, 51, 55, 44, 28, 31, 21, 1, 4, 0, 21, 24, 16, 16, 19, 11, 14, 17, 9, 22, 25, 17, 25, 31, 22, 1, 7, 0, 17, 21, 13, 49, 55, 46, 0, 0, 0, 57, 60, 52, 26, 30, 22, 16, 17, 10, 38, 40, 30, 12, 13, 4, 27, 28, 19, 40, 41, 32, 0, 0, 0, 37, 38, 31, 15, 19, 8, 30, 33, 25, 48, 49, 42, 50, 53, 45, 26, 30, 22, 11, 15, 7, 38, 41, 34, 32, 38, 29, 9, 12, 4, 0, 0, 0, 25, 29, 21, 5, 9, 1, 36, 39, 31, 23, 26, 18, 0, 0, 0, 48, 52, 44, 51, 55, 44, 42, 45, 35, 0, 0, 0, 2, 6, 0, 34, 35, 28, 14, 15, 8, 99, 100, 93, 31, 35, 27, 21, 24, 16, 3, 7, 0, 40, 46, 37, 6, 12, 3, 38, 44, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 14, 6, 0, 0, 0, 3, 5, 0, 8, 9, 2, 0, 3, 0, 7, 8, 1, 27, 28, 21, 34, 35, 28, 20, 21, 12, 0, 0, 0, 101, 97, 82, 141, 135, 117, 180, 174, 153, 174, 168, 147, 188, 182, 161, 179, 173, 152, 104, 104, 88, 138, 136, 119, 123, 122, 102, 171, 168, 148, 108, 106, 91, 78, 75, 62, 60, 59, 48, 139, 139, 125, 49, 46, 33, 66, 65, 52, 45, 47, 35, 35, 37, 25, 0, 0, 0, 33, 35, 22, 23, 25, 13, 86, 89, 74, 84, 86, 72, 87, 90, 75, 81, 84, 67, 88, 91, 74, 61, 61, 45, 85, 88, 69, 138, 138, 120, 70, 68, 48, 117, 116, 96, 6, 4, 0, 111, 107, 88, 182, 178, 157, 168, 164, 143, 174, 170, 149, 148, 145, 123, 110, 106, 85, 75, 70, 54, 126, 121, 107, 79, 77, 62, 86, 84, 68, 99, 96, 81, 124, 123, 105, 114, 112, 95, 124, 124, 110, 0, 0, 0, 99, 102, 92, 57, 61, 48, 51, 55, 44, 50, 54, 43, 39, 43, 35, 107, 109, 110, 110, 112, 116, 124, 125, 132, 117, 118, 127, 122, 123, 131, 111, 112, 121, 120, 120, 129, 130, 129, 138, 120, 118, 128, 125, 126, 135, 118, 119, 128, 120, 120, 129, 125, 126, 135, 128, 127, 136, 125, 127, 133, 126, 125, 132, 115, 116, 122, 117, 119, 123, 80, 81, 85, 87, 88, 92, 67, 69, 73, 55, 57, 59, 76, 78, 80, 95, 95, 97, 45, 45, 47, 12, 15, 14, 2, 4, 3, 3, 6, 3, 14, 16, 13, 31, 34, 31, 2, 5, 0, 25, 28, 23, 15, 21, 15, 5, 11, 4, 18, 23, 17, 25, 30, 24, 39, 44, 38, 13, 19, 12, 15, 18, 12, 31, 36, 30, 8, 14, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 20, 15, 19, 23, 15, 35, 38, 30, 99, 102, 94, 23, 26, 18, 23, 26, 18, 108, 111, 103, 50, 53, 45, 11, 15, 7, 35, 38, 30, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 43, 37, 0, 0, 0, 42, 45, 39, 3, 6, 1, 19, 22, 19, 11, 16, 10, 0, 0, 0, 0, 0, 0, 25, 30, 24, 103, 108, 102, 0, 0, 0, 0, 2, 0, 0, 1, 0, 0, 6, 0, 17, 20, 15, 5, 9, 3, 0, 0, 0, 2, 5, 0, 0, 0, 0, 5, 9, 3, 0, 2, 0, 0, 0, 0, 7, 10, 2, 0, 0, 0, 0, 0, 0, 25, 29, 21, 3, 7, 0, 23, 24, 17, 0, 0, 0, 50, 53, 45, 29, 33, 22, 19, 23, 13, 48, 54, 43, 18, 22, 12, 18, 22, 12, 0, 0, 0, 22, 28, 20, 0, 0, 0, 5, 11, 2, 18, 24, 15, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 16, 10, 12, 16, 8, 25, 28, 23, 59, 62, 56, 83, 87, 81, 104, 107, 102, 126, 132, 123, 125, 129, 121, 146, 150, 142, 128, 131, 123, 148, 154, 145, 141, 147, 138, 140, 144, 134, 138, 144, 133, 142, 145, 137, 138, 142, 132, 144, 146, 136, 150, 152, 142, 156, 158, 146, 149, 151, 139, 164, 166, 156, 176, 178, 166, 165, 167, 155, 156, 158, 146, 87, 89, 79, 4, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 87, 79, 111, 115, 107, 129, 133, 122, 141, 143, 131, 149, 151, 139, 144, 146, 134, 147, 149, 136, 147, 149, 136, 147, 149, 136, 148, 149, 140, 138, 140, 130, 135, 137, 125, 148, 150, 138, 154, 156, 144, 149, 151, 139, 154, 156, 144, 151, 155, 145, 153, 158, 145, 160, 164, 152, 156, 160, 147, 145, 150, 134, 158, 162, 149, 135, 137, 125, 131, 133, 121, 116, 118, 106, 105, 107, 95, 92, 92, 79, 91, 91, 78, 83, 83, 69, 60, 62, 50, 45, 44, 33, 62, 63, 54, 41, 42, 33, 21, 24, 14, 0, 0, 0, 65, 62, 52, 151, 147, 130, 183, 179, 160, 166, 160, 141, 195, 189, 170, 189, 183, 164, 100, 98, 80, 110, 109, 89, 136, 133, 111, 186, 183, 163, 144, 142, 125, 101, 98, 88, 116, 116, 102, 165, 164, 151, 31, 29, 14, 108, 108, 92, 63, 63, 50, 51, 53, 41, 135, 137, 125, 142, 144, 132, 67, 69, 57, 66, 68, 56, 40, 41, 29, 57, 61, 46, 57, 59, 45, 71, 74, 57, 95, 98, 81, 72, 75, 58, 52, 52, 36, 82, 81, 63, 0, 0, 0, 96, 95, 75, 108, 105, 83, 150, 147, 125, 154, 151, 127, 150, 147, 125, 112, 109, 87, 119, 115, 96, 90, 86, 69, 96, 94, 79, 80, 78, 61, 92, 90, 74, 97, 95, 80, 109, 107, 90, 114, 112, 96, 120, 120, 107, 0, 0, 0, 109, 113, 100, 72, 76, 63, 54, 59, 46, 48, 52, 42, 45, 48, 41, 40, 45, 41, 42, 47, 43, 37, 39, 38, 33, 36, 35, 45, 47, 47, 27, 32, 30, 27, 32, 30, 43, 45, 44, 17, 19, 19, 26, 28, 30, 2, 4, 3, 0, 0, 0, 0, 2, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 10, 13, 8, 16, 19, 11, 21, 24, 16, 14, 17, 9, 7, 10, 2, 2, 5, 0, 40, 44, 36, 15, 18, 10, 18, 22, 14, 23, 26, 20, 3, 7, 0, 46, 50, 42, 2, 5, 0, 28, 31, 25, 53, 56, 51, 10, 13, 8, 0, 2, 0, 3, 8, 2, 3, 6, 1, 7, 13, 6, 0, 3, 0, 0, 0, 0, 0, 6, 0, 49, 55, 48, 12, 18, 11, 14, 20, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 39, 31, 79, 82, 76, 4, 8, 0, 8, 11, 3, 31, 35, 27, 10, 14, 6, 39, 43, 35, 8, 11, 3, 47, 48, 41, 25, 29, 21, 16, 19, 11, 21, 24, 16, 52, 55, 48, 18, 21, 16, 26, 29, 24, 15, 18, 12, 0, 2, 0, 14, 17, 11, 0, 0, 0, 31, 34, 29, 0, 0, 0, 11, 14, 9, 22, 25, 19, 23, 26, 20, 0, 0, 0, 7, 10, 4, 0, 3, 0, 24, 27, 22, 12, 16, 10, 0, 0, 0, 32, 36, 28, 19, 23, 15, 15, 18, 12, 60, 64, 56, 18, 22, 14, 66, 70, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 23, 16, 58, 59, 52, 98, 99, 92, 120, 121, 114, 150, 152, 142, 24, 28, 18, 28, 31, 21, 2, 6, 0, 19, 23, 15, 0, 3, 0, 0, 6, 0, 0, 4, 0, 0, 0, 0, 64, 70, 62, 128, 131, 121, 139, 143, 133, 148, 151, 141, 123, 127, 117, 152, 156, 146, 140, 144, 134, 137, 141, 130, 125, 129, 119, 144, 148, 137, 137, 141, 130, 130, 134, 124, 132, 136, 126, 114, 118, 107, 137, 141, 130, 135, 138, 128, 131, 135, 125, 125, 129, 119, 132, 136, 126, 135, 138, 128, 139, 143, 133, 133, 137, 127, 141, 142, 133, 150, 152, 142, 161, 163, 151, 155, 157, 145, 130, 132, 120, 159, 162, 147, 143, 145, 133, 156, 158, 144, 164, 166, 154, 155, 156, 147, 36, 39, 31, 0, 0, 0, 42, 45, 37, 14, 17, 9, 12, 16, 8, 30, 33, 25, 17, 21, 13, 95, 98, 91, 100, 104, 93, 141, 143, 131, 149, 151, 137, 137, 140, 125, 153, 155, 138, 138, 141, 124, 135, 138, 121, 137, 140, 123, 140, 142, 126, 138, 141, 124, 140, 140, 124, 130, 133, 116, 134, 137, 120, 144, 147, 132, 142, 145, 128, 143, 146, 129, 143, 146, 129, 147, 149, 134, 136, 139, 122, 146, 146, 130, 157, 160, 143, 153, 155, 138, 142, 145, 128, 148, 148, 132, 151, 151, 133, 153, 154, 135, 162, 162, 147, 166, 166, 148, 175, 173, 158, 174, 175, 156, 184, 181, 168, 202, 201, 190, 26, 28, 15, 6, 5, 0, 54, 53, 42, 159, 158, 140, 153, 148, 132, 190, 186, 167, 181, 177, 158, 181, 177, 158, 122, 121, 100, 138, 137, 115, 144, 143, 119, 172, 169, 147, 185, 184, 163, 131, 129, 114, 139, 137, 122, 157, 155, 138, 185, 183, 165, 100, 101, 83, 0, 0, 0, 121, 122, 106, 66, 69, 54, 60, 62, 50, 58, 60, 48, 84, 86, 72, 53, 56, 41, 58, 61, 46, 53, 56, 41, 60, 63, 46, 74, 77, 60, 39, 39, 23, 0, 0, 0, 82, 81, 63, 135, 133, 115, 127, 125, 105, 107, 106, 85, 124, 123, 103, 136, 135, 114, 97, 96, 76, 80, 79, 59, 92, 90, 72, 88, 87, 69, 89, 88, 70, 83, 82, 64, 87, 85, 68, 125, 124, 106, 106, 104, 86, 115, 113, 98, 131, 131, 117, 0, 0, 0, 79, 81, 69, 99, 103, 90, 55, 60, 47, 42, 45, 37, 59, 62, 54, 5, 11, 4, 3, 8, 4, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 2, 0, 0, 0, 0, 11, 16, 12, 0, 0, 0, 0, 6, 0, 32, 37, 31, 0, 2, 0, 30, 33, 27, 3, 7, 0, 0, 0, 0, 9, 13, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145, 149, 136, 0, 0, 0, 8, 12, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, 48, 43, 38, 41, 36, 0, 0, 0, 17, 20, 15, 0, 0, 0, 7, 12, 8, 0, 3, 0, 15, 21, 15, 69, 73, 67, 0, 0, 0, 3, 6, 1, 0, 1, 0, 0, 0, 0, 1, 4, 0, 0, 5, 0, 24, 27, 22, 0, 0, 0, 10, 14, 6, 62, 66, 58, 0, 0, 0, 11, 15, 7, 3, 7, 0, 9, 12, 4, 35, 38, 30, 37, 40, 32, 31, 35, 27, 0, 1, 0, 14, 17, 9, 0, 2, 0, 0, 0, 0, 12, 16, 8, 5, 9, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 36, 33, 111, 114, 111, 156, 158, 155, 159, 162, 159, 164, 166, 165, 156, 158, 155, 144, 147, 143, 123, 126, 123, 128, 131, 125, 132, 135, 130, 118, 121, 116, 122, 125, 117, 120, 121, 114, 125, 126, 117, 129, 131, 121, 137, 141, 130, 118, 122, 112, 134, 135, 126, 142, 144, 134, 150, 152, 140, 144, 146, 134, 143, 145, 133, 148, 150, 136, 142, 144, 132, 44, 48, 37, 44, 48, 37, 0, 0, 0, 71, 75, 64, 54, 58, 48, 22, 28, 20, 75, 81, 70, 48, 54, 45, 125, 131, 120, 164, 168, 157, 133, 137, 127, 139, 143, 131, 123, 127, 117, 139, 143, 131, 136, 140, 129, 128, 131, 121, 130, 134, 124, 132, 138, 127, 135, 138, 128, 132, 138, 127, 135, 138, 128, 133, 137, 127, 135, 138, 128, 133, 137, 127, 140, 144, 134, 140, 144, 134, 135, 138, 128, 130, 134, 124, 133, 134, 125, 136, 140, 127, 121, 125, 112, 132, 137, 124, 137, 141, 128, 129, 133, 120, 134, 136, 124, 136, 138, 126, 138, 142, 129, 139, 143, 131, 141, 143, 131, 148, 152, 139, 16, 20, 9, 22, 25, 17, 29, 32, 24, 0, 3, 0, 52, 55, 48, 57, 60, 52, 1, 4, 0, 52, 55, 48, 100, 102, 92, 134, 136, 122, 142, 144, 130, 141, 143, 127, 134, 134, 119, 135, 136, 120, 140, 140, 124, 135, 136, 120, 139, 139, 123, 131, 131, 115, 137, 137, 119, 140, 141, 122, 135, 136, 118, 138, 139, 118, 140, 141, 122, 145, 145, 127, 140, 140, 124, 139, 139, 123, 145, 145, 129, 152, 152, 136, 146, 146, 130, 147, 147, 131, 151, 151, 135, 151, 151, 135, 153, 153, 137, 151, 151, 133, 154, 155, 136, 166, 166, 150, 167, 167, 151, 174, 174, 158, 195, 195, 179, 192, 192, 179, 18, 17, 6, 26, 25, 18, 35, 35, 24, 165, 163, 146, 184, 180, 163, 182, 178, 159, 180, 174, 155, 176, 170, 152, 110, 111, 88, 187, 186, 164, 175, 171, 150, 169, 166, 144, 188, 184, 162, 190, 186, 167, 174, 170, 151, 187, 186, 166, 159, 158, 138, 146, 145, 127, 123, 123, 105, 111, 112, 93, 120, 123, 106, 81, 81, 67, 0, 0, 0, 0, 0, 0, 33, 33, 19, 0, 0, 0, 0, 0, 0, 34, 36, 20, 80, 83, 66, 77, 80, 63, 77, 78, 60, 75, 75, 59, 80, 80, 62, 88, 88, 70, 82, 83, 64, 96, 95, 77, 120, 121, 100, 78, 76, 58, 113, 111, 93, 81, 80, 62, 80, 78, 61, 115, 113, 96, 79, 77, 60, 92, 90, 72, 109, 107, 90, 145, 143, 126, 130, 128, 111, 132, 132, 116, 0, 0, 0, 105, 107, 95, 74, 76, 64, 50, 54, 41, 123, 127, 119, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 23, 19, 0, 3, 0, 0, 0, 0, 0, 0, 0, 4, 9, 3, 24, 29, 23, 0, 0, 0, 14, 20, 13, 27, 33, 26, 0, 1, 0, 2, 5, 0, 0, 0, 0, 0, 3, 0, 167, 171, 163, 156, 160, 147, 0, 0, 0, 155, 159, 144, 173, 178, 160, 129, 134, 116, 12, 14, 0, 166, 171, 156, 167, 172, 157, 0, 1, 0, 21, 24, 18, 18, 21, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 5, 0, 0, 0, 0, 0, 0, 0, 29, 31, 28, 10, 13, 8, 14, 17, 11, 0, 2, 0, 29, 32, 26, 9, 12, 6, 10, 13, 8, 0, 0, 0, 23, 24, 19, 30, 31, 24, 1, 2, 0, 0, 0, 0, 0, 0, 0, 5, 9, 1, 0, 0, 0, 18, 22, 14, 9, 12, 4, 7, 10, 4, 7, 10, 2, 8, 11, 5, 6, 12, 5, 0, 3, 0, 53, 56, 51, 109, 110, 105, 129, 129, 127, 115, 118, 112, 142, 143, 138, 127, 128, 123, 131, 132, 128, 126, 127, 122, 128, 129, 124, 137, 138, 133, 130, 132, 124, 140, 141, 134, 133, 134, 127, 134, 135, 128, 138, 142, 134, 140, 141, 132, 143, 145, 135, 133, 135, 123, 145, 149, 136, 144, 148, 135, 149, 153, 140, 150, 152, 140, 142, 144, 132, 156, 158, 146, 155, 157, 145, 140, 142, 129, 140, 142, 129, 143, 145, 131, 145, 148, 133, 151, 151, 137, 136, 138, 126, 158, 161, 146, 127, 131, 118, 44, 48, 35, 0, 0, 0, 21, 24, 14, 47, 53, 42, 67, 73, 62, 32, 36, 26, 10, 16, 5, 35, 42, 30, 125, 129, 119, 138, 142, 132, 124, 128, 116, 155, 159, 146, 135, 139, 126, 127, 131, 118, 129, 133, 122, 117, 121, 111, 107, 114, 103, 127, 130, 120, 134, 141, 129, 121, 125, 114, 125, 129, 119, 123, 127, 117, 127, 130, 120, 133, 137, 127, 137, 141, 128, 117, 121, 109, 130, 134, 121, 135, 139, 126, 133, 138, 125, 127, 131, 118, 126, 128, 116, 128, 132, 119, 124, 128, 116, 129, 131, 119, 138, 140, 128, 121, 123, 111, 133, 135, 123, 137, 141, 128, 131, 135, 123, 40, 44, 34, 110, 114, 104, 0, 0, 0, 0, 3, 0, 40, 44, 36, 2, 5, 0, 15, 18, 10, 0, 0, 0, 73, 75, 65, 135, 137, 125, 132, 132, 118, 138, 141, 126, 139, 139, 125, 127, 129, 115, 131, 131, 115, 137, 137, 121, 137, 137, 121, 142, 143, 127, 135, 138, 121, 138, 138, 120, 136, 139, 120, 137, 140, 121, 142, 143, 125, 146, 146, 128, 147, 148, 129, 144, 147, 130, 142, 143, 127, 144, 144, 128, 149, 150, 134, 135, 136, 120, 154, 154, 138, 125, 125, 109, 162, 163, 145, 153, 153, 137, 144, 144, 128, 146, 146, 130, 160, 160, 144, 154, 155, 136, 187, 187, 171, 183, 183, 167, 32, 31, 20, 39, 38, 31, 0, 0, 0, 106, 104, 88, 176, 172, 155, 181, 177, 158, 180, 174, 155, 191, 187, 168, 122, 121, 96, 136, 135, 110, 154, 151, 127, 150, 147, 125, 160, 159, 137, 186, 183, 161, 185, 184, 161, 180, 179, 159, 172, 170, 153, 150, 149, 128, 106, 107, 89, 112, 113, 95, 102, 102, 84, 111, 112, 93, 98, 99, 80, 138, 138, 120, 98, 98, 82, 83, 83, 67, 63, 65, 49, 76, 76, 60, 73, 76, 59, 65, 68, 51, 63, 64, 46, 73, 73, 55, 80, 80, 62, 71, 72, 54, 83, 82, 64, 115, 113, 96, 67, 65, 48, 100, 98, 80, 89, 88, 70, 87, 85, 70, 87, 83, 66, 83, 79, 62, 136, 132, 115, 124, 119, 105, 127, 123, 106, 137, 134, 114, 128, 124, 107, 123, 121, 106, 0, 0, 0, 101, 104, 89, 58, 60, 48, 122, 124, 114, 23, 26, 18, 19, 22, 17, 0, 2, 0, 32, 35, 30, 7, 9, 6, 13, 18, 14, 6, 11, 7, 0, 0, 0, 19, 24, 20, 0, 0, 0, 11, 16, 10, 0, 0, 0, 28, 34, 27, 0, 5, 0, 12, 18, 11, 0, 3, 0, 4, 9, 3, 1, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 9, 3, 8, 11, 3, 15, 18, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 10, 7, 50, 52, 49, 86, 88, 85, 136, 138, 135, 149, 151, 148, 166, 169, 166, 152, 155, 152, 151, 154, 151, 140, 143, 140, 130, 133, 129, 122, 125, 119, 121, 122, 117, 121, 122, 117, 118, 118, 114, 106, 107, 102, 119, 120, 115, 120, 121, 114, 115, 116, 109, 118, 119, 112, 0, 0, 0, 28, 31, 23, 0, 0, 0, 0, 0, 0, 24, 28, 20, 29, 32, 24, 9, 12, 4, 7, 10, 2, 51, 54, 46, 131, 133, 124, 151, 153, 143, 131, 133, 121, 134, 135, 126, 128, 130, 120, 126, 127, 120, 129, 131, 121, 136, 138, 128, 136, 138, 128, 130, 132, 122, 127, 129, 117, 134, 135, 126, 129, 131, 121, 121, 123, 111, 135, 137, 125, 135, 137, 125, 132, 137, 124, 129, 131, 117, 132, 137, 122, 135, 138, 121, 131, 136, 121, 129, 133, 118, 129, 131, 117, 119, 121, 109, 127, 129, 115, 120, 122, 108, 122, 125, 110, 134, 136, 122, 150, 153, 138, 147, 149, 134, 155, 157, 143, 162, 164, 150, 0, 0, 0, 0, 0, 0, 60, 64, 54, 35, 38, 28, 110, 114, 104, 29, 36, 25, 68, 74, 63, 0, 6, 0, 55, 59, 49, 136, 140, 127, 110, 114, 102, 117, 121, 109, 121, 125, 112, 122, 126, 113, 123, 127, 117, 120, 123, 113, 116, 122, 111, 120, 123, 113, 118, 122, 112, 117, 123, 112, 119, 125, 114, 115, 119, 108, 116, 120, 110, 121, 125, 114, 115, 119, 106, 114, 118, 105, 129, 131, 119, 124, 128, 116, 122, 124, 112, 122, 124, 112, 120, 122, 110, 119, 121, 109, 128, 130, 118, 121, 123, 111, 122, 126, 113, 119, 121, 109, 127, 131, 118, 132, 137, 124, 132, 137, 124, 80, 84, 73, 93, 97, 86, 11, 15, 5, 0, 0, 0, 37, 40, 32, 12, 16, 8, 19, 23, 15, 26, 30, 22, 77, 78, 69, 127, 128, 119, 123, 122, 111, 121, 121, 108, 120, 120, 107, 123, 123, 109, 124, 124, 108, 125, 125, 109, 132, 132, 116, 142, 143, 125, 128, 129, 111, 137, 137, 119, 142, 143, 125, 146, 146, 128, 132, 133, 114, 142, 143, 125, 134, 135, 117, 127, 128, 110, 255, 255, 255, 158, 158, 142, 155, 156, 138, 128, 129, 113, 255, 255, 255, 152, 152, 134, 244, 244, 228, 255, 255, 255, 255, 255, 255, 242, 243, 225, 153, 153, 137, 168, 166, 151, 163, 164, 146, 173, 173, 157, 40, 39, 28, 38, 36, 32, 0, 0, 0, 101, 99, 84, 168, 164, 147, 175, 171, 152, 150, 147, 127, 165, 162, 142, 130, 127, 105, 111, 111, 88, 122, 119, 97, 142, 139, 117, 125, 121, 100, 126, 123, 101, 134, 131, 109, 163, 159, 140, 141, 139, 119, 135, 133, 113, 128, 129, 111, 94, 94, 76, 81, 81, 63, 97, 98, 79, 123, 123, 105, 95, 93, 76, 100, 98, 80, 82, 83, 64, 74, 74, 56, 90, 91, 72, 73, 73, 55, 70, 71, 53, 87, 87, 69, 102, 102, 84, 66, 66, 50, 67, 67, 51, 49, 50, 34, 69, 69, 53, 68, 66, 51, 77, 74, 59, 103, 101, 86, 93, 91, 76, 73, 71, 56, 83, 81, 66, 191, 187, 170, 83, 79, 62, 122, 118, 101, 175, 171, 154, 103, 98, 82, 67, 65, 50, 0, 0, 0, 91, 93, 79, 144, 146, 134, 5, 9, 0, 8, 11, 5, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 4, 0, 3, 8, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 33, 26, 62, 68, 61, 146, 152, 145, 146, 152, 145, 152, 155, 150, 142, 144, 141, 116, 119, 116, 85, 87, 84, 93, 95, 92, 68, 71, 68, 67, 70, 67, 75, 78, 77, 74, 77, 74, 97, 97, 95, 101, 104, 100, 101, 104, 100, 103, 106, 103, 103, 106, 103, 109, 112, 109, 108, 111, 107, 110, 113, 110, 110, 113, 110, 106, 108, 105, 121, 123, 120, 115, 117, 114, 113, 115, 112, 118, 121, 118, 122, 125, 119, 116, 119, 114, 120, 123, 117, 114, 116, 113, 121, 122, 117, 121, 122, 117, 119, 120, 115, 113, 114, 107, 114, 115, 108, 118, 119, 112, 120, 121, 114, 122, 123, 116, 120, 121, 114, 22, 25, 17, 44, 45, 38, 0, 0, 0, 0, 0, 0, 38, 41, 34, 23, 26, 18, 26, 30, 22, 57, 60, 52, 148, 151, 141, 151, 153, 141, 138, 140, 128, 130, 132, 120, 134, 136, 124, 143, 145, 133, 131, 133, 121, 133, 135, 123, 131, 133, 121, 134, 136, 124, 138, 137, 126, 137, 139, 127, 135, 137, 125, 128, 130, 118, 130, 132, 120, 130, 133, 118, 127, 129, 115, 130, 133, 118, 149, 151, 137, 129, 131, 117, 133, 135, 121, 133, 135, 121, 136, 138, 126, 123, 125, 113, 121, 123, 111, 124, 124, 110, 127, 127, 114, 135, 135, 122, 132, 132, 118, 130, 129, 116, 114, 115, 99, 154, 156, 140, 144, 147, 132, 102, 105, 90, 60, 62, 50, 0, 0, 0, 30, 34, 23, 25, 29, 19, 24, 30, 19, 36, 43, 32, 42, 49, 37, 120, 123, 113, 149, 153, 140, 121, 125, 112, 111, 118, 104, 120, 124, 111, 120, 124, 111, 117, 123, 110, 127, 134, 120, 123, 127, 117, 110, 116, 105, 118, 122, 112, 114, 121, 110, 104, 110, 99, 111, 115, 105, 120, 124, 111, 124, 128, 116, 124, 128, 116, 111, 116, 103, 130, 134, 121, 116, 120, 107, 118, 123, 110, 124, 128, 116, 121, 125, 112, 120, 124, 111, 120, 122, 110, 117, 121, 109, 125, 130, 117, 114, 118, 105, 115, 119, 106, 124, 128, 116, 132, 137, 124, 101, 105, 92, 79, 83, 70, 0, 0, 0, 0, 1, 0, 11, 15, 7, 25, 29, 21, 53, 57, 49, 4, 8, 0, 64, 68, 57, 114, 116, 104, 110, 109, 98, 121, 121, 108, 121, 121, 108, 123, 123, 109, 127, 127, 114, 123, 123, 109, 128, 129, 111, 138, 138, 120, 119, 120, 101, 134, 135, 117, 133, 134, 115, 135, 136, 118, 135, 136, 118, 147, 148, 129, 138, 138, 120, 255, 255, 255, 138, 138, 122, 120, 121, 105, 255, 255, 242, 255, 255, 255, 237, 237, 221, 149, 150, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 150, 148, 132, 161, 159, 144, 151, 151, 135, 170, 171, 155, 39, 38, 27, 28, 27, 21, 0, 0, 0, 49, 49, 38, 167, 165, 150, 167, 166, 148, 177, 173, 154, 164, 163, 140, 109, 104, 80, 122, 119, 95, 117, 113, 92, 105, 102, 80, 107, 106, 83, 128, 127, 106, 116, 115, 95, 113, 111, 91, 88, 87, 69, 113, 111, 93, 90, 91, 72, 82, 83, 64, 87, 85, 70, 96, 97, 78, 96, 97, 78, 92, 90, 72, 96, 95, 77, 79, 77, 60, 84, 85, 66, 75, 75, 59, 68, 68, 52, 83, 84, 65, 70, 71, 53, 62, 63, 44, 61, 61, 45, 64, 65, 49, 64, 62, 46, 78, 76, 60, 86, 84, 68, 77, 74, 59, 68, 66, 51, 121, 119, 103, 94, 92, 77, 119, 114, 102, 94, 90, 76, 104, 100, 83, 174, 169, 155, 125, 121, 102, 92, 88, 71, 99, 96, 83, 0, 0, 0, 56, 58, 46, 0, 0, 0, 0, 0, 0, 90, 93, 90, 144, 147, 143, 109, 112, 109, 87, 90, 86, 64, 70, 65, 69, 74, 70, 61, 66, 62, 79, 85, 81, 68, 73, 67, 64, 67, 61, 73, 76, 70, 63, 69, 62, 81, 85, 77, 68, 71, 66, 72, 78, 72, 82, 87, 81, 88, 91, 86, 87, 90, 84, 86, 87, 82, 98, 98, 94, 93, 94, 89, 165, 166, 161, 97, 100, 95, 90, 94, 88, 117, 120, 115, 115, 116, 111, 107, 110, 104, 115, 116, 113, 114, 114, 112, 124, 127, 124, 119, 119, 117, 124, 127, 124, 117, 120, 117, 113, 115, 112, 111, 114, 111, 113, 115, 112, 117, 120, 117, 123, 126, 121, 116, 119, 114, 116, 119, 114, 114, 117, 111, 122, 125, 119, 115, 118, 110, 123, 127, 119, 122, 123, 116, 133, 134, 127, 119, 120, 111, 120, 121, 114, 121, 122, 115, 122, 124, 114, 121, 123, 113, 120, 121, 114, 113, 114, 107, 2, 4, 0, 0, 1, 0, 0, 0, 0, 5, 9, 1, 0, 0, 0, 67, 71, 63, 25, 29, 21, 67, 71, 63, 123, 125, 115, 130, 132, 120, 133, 133, 119, 137, 139, 127, 128, 130, 118, 153, 152, 141, 140, 142, 128, 127, 129, 115, 138, 141, 126, 133, 133, 119, 133, 135, 123, 140, 142, 129, 128, 130, 118, 127, 129, 115, 148, 150, 136, 144, 147, 132, 136, 138, 124, 126, 128, 114, 131, 134, 119, 136, 138, 124, 135, 137, 123, 136, 138, 124, 140, 142, 128, 141, 143, 129, 128, 130, 116, 147, 149, 132, 144, 144, 128, 126, 128, 112, 141, 143, 127, 130, 133, 116, 122, 125, 108, 156, 159, 142, 163, 165, 151, 64, 66, 52, 0, 0, 0, 0, 0, 0, 4, 8, 0, 15, 19, 8, 14, 17, 7, 13, 19, 8, 67, 73, 62, 145, 151, 140, 131, 137, 124, 142, 149, 135, 140, 147, 133, 133, 138, 125, 130, 134, 121, 135, 139, 126, 129, 136, 125, 125, 132, 118, 140, 144, 134, 117, 123, 112, 117, 123, 110, 118, 123, 110, 111, 116, 101, 139, 144, 129, 161, 166, 151, 202, 207, 192, 235, 239, 224, 140, 145, 130, 128, 132, 119, 121, 125, 112, 120, 122, 110, 122, 126, 113, 122, 126, 113, 122, 124, 112, 120, 122, 110, 122, 124, 112, 127, 129, 117, 127, 129, 117, 128, 132, 119, 128, 132, 119, 68, 72, 62, 0, 0, 0, 12, 16, 8, 8, 11, 3, 40, 44, 36, 16, 19, 11, 0, 1, 0, 95, 99, 89, 116, 118, 106, 130, 129, 116, 120, 120, 107, 124, 123, 112, 121, 121, 108, 119, 119, 105, 118, 118, 104, 119, 119, 103, 124, 124, 108, 124, 124, 108, 125, 125, 109, 132, 132, 116, 141, 141, 126, 148, 149, 130, 140, 141, 122, 138, 138, 120, 124, 124, 106, 255, 255, 247, 197, 198, 179, 140, 141, 122, 132, 133, 114, 127, 128, 110, 141, 139, 121, 139, 140, 121, 147, 148, 129, 244, 244, 226, 148, 149, 130, 151, 151, 133, 161, 162, 143, 173, 173, 155, 169, 169, 154, 61, 60, 49, 19, 17, 13, 17, 18, 13, 10, 9, 0, 142, 143, 127, 161, 160, 140, 154, 150, 131, 140, 142, 118, 118, 114, 95, 99, 96, 74, 126, 123, 101, 107, 103, 84, 108, 105, 85, 97, 93, 76, 99, 95, 78, 85, 83, 65, 88, 87, 69, 110, 109, 91, 91, 88, 73, 86, 84, 68, 108, 108, 92, 94, 92, 75, 103, 102, 84, 78, 76, 58, 80, 78, 61, 91, 89, 71, 77, 75, 57, 82, 82, 66, 76, 76, 60, 108, 108, 92, 78, 79, 63, 75, 75, 59, 63, 60, 45, 61, 59, 44, 61, 59, 46, 67, 65, 52, 73, 71, 58, 56, 53, 40, 63, 60, 47, 79, 76, 64, 168, 166, 153, 92, 89, 76, 90, 85, 73, 151, 146, 134, 98, 93, 79, 113, 110, 95, 128, 126, 110, 0, 0, 0, 0, 0, 0, 148, 150, 138, 88, 90, 82, 95, 96, 91, 120, 123, 117, 81, 84, 81, 101, 104, 100, 102, 105, 102, 99, 101, 98, 93, 96, 90, 102, 105, 102, 110, 113, 108, 106, 109, 103, 109, 112, 107, 100, 103, 97, 107, 110, 102, 109, 113, 105, 111, 115, 107, 113, 116, 108, 109, 112, 107, 106, 107, 102, 122, 123, 118, 111, 111, 107, 115, 116, 111, 107, 108, 101, 116, 117, 112, 109, 112, 107, 104, 107, 102, 117, 120, 115, 115, 116, 111, 114, 115, 110, 113, 114, 109, 121, 124, 118, 112, 113, 108, 115, 116, 111, 109, 112, 107, 122, 125, 119, 127, 130, 124, 124, 127, 122, 117, 120, 115, 118, 121, 116, 118, 121, 116, 122, 125, 119, 120, 123, 115, 123, 127, 119, 123, 127, 119, 117, 121, 113, 130, 134, 124, 129, 131, 121, 122, 124, 114, 122, 124, 114, 120, 121, 112, 122, 124, 114, 127, 128, 119, 120, 121, 112, 120, 121, 112, 136, 139, 131, 46, 50, 42, 54, 58, 50, 0, 0, 0, 9, 12, 4, 23, 26, 18, 0, 0, 0, 0, 2, 0, 21, 24, 16, 59, 63, 52, 141, 143, 131, 134, 136, 122, 145, 148, 133, 110, 110, 96, 151, 151, 137, 123, 123, 109, 141, 141, 128, 150, 153, 138, 138, 137, 126, 149, 149, 136, 141, 141, 128, 129, 131, 117, 121, 121, 108, 141, 141, 126, 164, 166, 152, 129, 131, 117, 140, 142, 128, 163, 165, 151, 130, 133, 118, 138, 141, 126, 135, 137, 123, 130, 133, 118, 131, 134, 119, 134, 136, 122, 133, 135, 119, 122, 125, 108, 138, 141, 124, 139, 139, 123, 147, 148, 129, 136, 139, 122, 151, 154, 137, 149, 152, 133, 1, 4, 0, 0, 0, 0, 21, 23, 13, 16, 20, 9, 47, 51, 41, 45, 49, 39, 5, 11, 2, 8, 14, 6, 64, 71, 57, 119, 126, 112, 133, 140, 126, 125, 132, 118, 117, 123, 110, 135, 139, 126, 121, 125, 112, 140, 145, 132, 114, 121, 107, 118, 123, 110, 123, 127, 114, 119, 126, 112, 127, 131, 118, 116, 121, 105, 255, 255, 255, 255, 255, 255, 255, 255, 255, 132, 137, 122, 255, 255, 251, 117, 122, 107, 115, 117, 105, 115, 119, 106, 121, 125, 110, 130, 133, 118, 125, 127, 112, 129, 131, 117, 130, 133, 118, 120, 122, 108, 122, 125, 110, 119, 121, 109, 138, 140, 128, 38, 40, 30, 8, 12, 1, 0, 0, 0, 0, 2, 0, 26, 30, 22, 9, 12, 4, 0, 3, 0, 110, 114, 104, 119, 121, 109, 113, 113, 100, 121, 123, 109, 119, 119, 105, 123, 123, 109, 121, 121, 108, 128, 128, 115, 125, 125, 111, 118, 118, 102, 118, 118, 102, 127, 128, 112, 135, 136, 120, 131, 131, 115, 149, 150, 132, 135, 136, 118, 139, 140, 121, 144, 144, 126, 140, 141, 122, 147, 148, 129, 140, 141, 122, 153, 152, 134, 151, 149, 132, 156, 154, 136, 149, 150, 132, 153, 152, 134, 155, 153, 135, 149, 147, 129, 153, 152, 134, 156, 154, 136, 160, 161, 142, 159, 159, 143, 56, 56, 45, 24, 26, 18, 0, 0, 0, 13, 13, 2, 144, 144, 128, 178, 176, 159, 174, 170, 149, 190, 189, 166, 114, 111, 89, 112, 108, 89, 107, 103, 84, 97, 93, 74, 86, 83, 63, 106, 102, 85, 79, 75, 58, 82, 80, 65, 94, 92, 77, 89, 87, 72, 94, 92, 77, 87, 85, 70, 91, 88, 73, 101, 99, 82, 91, 89, 71, 107, 105, 88, 89, 88, 70, 79, 77, 60, 89, 88, 70, 103, 101, 86, 80, 78, 63, 80, 80, 64, 62, 62, 46, 66, 64, 49, 71, 69, 53, 74, 72, 57, 67, 65, 52, 64, 61, 48, 74, 72, 59, 67, 65, 52, 95, 95, 81, 108, 105, 93, 75, 73, 62, 81, 78, 68, 91, 88, 77, 144, 141, 131, 94, 91, 81, 97, 96, 85, 0, 0, 0, 121, 121, 108, 112, 112, 100, 122, 124, 114, 70, 71, 64, 115, 118, 112, 83, 87, 81, 87, 90, 86, 95, 98, 93, 93, 96, 90, 95, 98, 93, 96, 99, 94, 99, 102, 96, 95, 98, 93, 99, 102, 94, 99, 102, 94, 99, 102, 94, 97, 101, 93, 94, 97, 89, 103, 107, 99, 96, 100, 92, 105, 106, 99, 97, 98, 91, 107, 108, 101, 112, 113, 106, 111, 112, 105, 108, 109, 102, 113, 114, 107, 110, 114, 106, 110, 114, 106, 110, 113, 108, 113, 114, 109, 115, 118, 112, 111, 112, 105, 115, 116, 109, 115, 116, 109, 116, 117, 112, 116, 117, 112, 118, 121, 116, 116, 119, 114, 118, 121, 116, 117, 121, 113, 122, 125, 119, 120, 123, 115, 113, 116, 108, 122, 125, 117, 130, 134, 124, 122, 124, 114, 130, 132, 122, 122, 124, 114, 122, 124, 114, 126, 127, 118, 122, 124, 114, 120, 121, 112, 127, 128, 119, 123, 125, 115, 125, 126, 117, 126, 127, 118, 125, 129, 119, 7, 10, 2, 48, 52, 44, 0, 0, 0, 19, 23, 15, 48, 52, 44, 3, 7, 0, 14, 17, 9, 8, 11, 3, 42, 45, 35, 144, 146, 134, 134, 134, 121, 151, 151, 137, 147, 147, 133, 125, 125, 111, 134, 134, 121, 152, 152, 138, 156, 156, 143, 160, 160, 146, 145, 145, 131, 148, 148, 134, 154, 156, 140, 116, 119, 102, 158, 161, 144, 147, 149, 132, 142, 145, 128, 161, 163, 149, 123, 126, 111, 150, 153, 138, 137, 140, 125, 147, 149, 134, 143, 145, 131, 120, 122, 108, 125, 127, 110, 133, 135, 119, 145, 148, 131, 135, 138, 121, 150, 153, 134, 153, 154, 135, 130, 130, 112, 157, 160, 141, 153, 156, 136, 69, 71, 55, 60, 64, 52, 0, 0, 0, 11, 15, 7, 15, 18, 10, 18, 24, 15, 10, 16, 7, 28, 34, 25, 103, 109, 98, 131, 137, 124, 127, 134, 120, 129, 133, 120, 136, 140, 127, 124, 128, 116, 125, 130, 117, 121, 125, 112, 112, 119, 105, 118, 123, 110, 123, 127, 114, 120, 124, 111, 129, 133, 120, 129, 133, 118, 255, 255, 255, 113, 117, 102, 74, 79, 64, 113, 117, 102, 255, 255, 255, 117, 122, 107, 122, 127, 111, 111, 113, 98, 127, 131, 116, 130, 133, 118, 133, 135, 121, 126, 128, 114, 128, 130, 116, 125, 127, 112, 123, 126, 111, 122, 124, 112, 142, 144, 132, 19, 20, 11, 51, 55, 44, 0, 0, 0, 2, 5, 0, 58, 61, 53, 15, 18, 10, 19, 23, 15, 79, 83, 72, 101, 103, 91, 120, 120, 107, 118, 120, 105, 117, 117, 103, 120, 122, 108, 123, 123, 109, 119, 119, 105, 121, 121, 108, 124, 124, 110, 125, 125, 111, 124, 124, 108, 134, 134, 119, 139, 139, 123, 144, 144, 126, 141, 141, 126, 141, 142, 124, 141, 142, 124, 142, 143, 125, 149, 150, 132, 127, 128, 110, 151, 149, 132, 155, 153, 135, 152, 151, 131, 153, 152, 134, 149, 147, 127, 137, 136, 116, 152, 151, 133, 149, 150, 132, 162, 163, 145, 167, 168, 149, 156, 159, 142, 38, 40, 28, 12, 13, 6, 16, 17, 10, 0, 0, 0, 152, 150, 135, 164, 162, 145, 166, 165, 143, 178, 177, 154, 87, 84, 64, 99, 95, 76, 91, 87, 70, 115, 111, 95, 92, 90, 72, 93, 89, 74, 93, 88, 76, 104, 102, 89, 87, 85, 72, 86, 83, 70, 88, 86, 73, 91, 88, 75, 94, 92, 79, 99, 96, 83, 93, 91, 76, 97, 95, 80, 78, 76, 60, 79, 76, 64, 75, 73, 60, 81, 79, 66, 78, 75, 62, 74, 72, 59, 63, 60, 47, 78, 76, 60, 81, 79, 64, 66, 64, 51, 68, 66, 53, 77, 74, 61, 74, 71, 61, 73, 70, 60, 83, 81, 70, 81, 78, 68, 88, 85, 77, 106, 102, 94, 97, 94, 86, 82, 79, 71, 59, 58, 49, 0, 0, 0, 111, 110, 99, 108, 107, 96, 124, 123, 114, 85, 86, 81, 106, 107, 102, 76, 76, 72, 78, 81, 75, 87, 90, 86, 93, 96, 90, 83, 87, 81, 94, 97, 91, 88, 91, 86, 99, 102, 96, 97, 100, 95, 96, 99, 94, 99, 102, 94, 89, 93, 85, 100, 103, 95, 100, 101, 94, 101, 102, 95, 112, 113, 106, 102, 104, 96, 101, 102, 95, 104, 105, 96, 106, 107, 100, 109, 111, 103, 114, 115, 108, 113, 114, 107, 114, 115, 108, 104, 105, 98, 108, 109, 104, 111, 112, 105, 112, 113, 108, 114, 115, 108, 116, 118, 110, 116, 118, 110, 118, 118, 114, 115, 116, 109, 121, 122, 115, 121, 122, 115, 121, 122, 115, 122, 125, 117, 123, 125, 117, 123, 125, 117, 122, 123, 116, 118, 119, 112, 120, 121, 112, 122, 124, 114, 130, 132, 122, 127, 128, 119, 127, 128, 119, 125, 126, 117, 120, 121, 112, 119, 120, 111, 123, 125, 115, 128, 130, 118, 119, 120, 111, 121, 123, 113, 120, 121, 112, 12, 16, 6, 14, 17, 7, 0, 0, 0, 0, 0, 0, 3, 7, 0, 55, 59, 51, 11, 15, 7, 52, 55, 48, 121, 125, 114, 134, 136, 124, 144, 143, 130, 138, 138, 124, 135, 135, 122, 151, 151, 137, 147, 147, 133, 148, 148, 134, 158, 158, 144, 142, 142, 129, 137, 136, 123, 154, 154, 138, 147, 149, 134, 140, 142, 126, 158, 161, 144, 128, 130, 116, 107, 109, 95, 125, 127, 112, 255, 255, 255, 130, 133, 118, 123, 126, 111, 153, 155, 140, 155, 158, 141, 161, 163, 147, 163, 166, 149, 165, 168, 151, 154, 155, 136, 139, 140, 121, 141, 142, 124, 143, 146, 127, 151, 151, 133, 147, 150, 130, 147, 150, 130, 114, 117, 100, 71, 73, 63, 0, 0, 0, 7, 10, 2, 1, 4, 0, 0, 0, 0, 10, 15, 9, 21, 27, 20, 124, 130, 119, 149, 156, 142, 136, 140, 125, 138, 143, 128, 139, 144, 129, 127, 131, 118, 124, 128, 116, 125, 130, 115, 128, 132, 119, 114, 118, 105, 115, 119, 106, 125, 130, 115, 114, 118, 103, 127, 131, 116, 182, 187, 172, 170, 174, 159, 194, 199, 183, 231, 236, 221, 255, 255, 255, 144, 149, 131, 133, 135, 121, 131, 134, 119, 133, 135, 119, 131, 134, 119, 120, 123, 106, 125, 127, 110, 134, 136, 122, 134, 136, 122, 120, 122, 108, 138, 140, 128, 119, 121, 109, 44, 46, 36, 123, 127, 117, 0, 0, 0, 0, 2, 0, 58, 61, 53, 1, 4, 0, 54, 58, 50, 46, 50, 42, 106, 108, 96, 121, 123, 109, 124, 124, 110, 119, 119, 105, 120, 120, 107, 125, 125, 111, 131, 131, 117, 127, 127, 114, 121, 121, 108, 125, 125, 109, 130, 130, 114, 123, 123, 107, 130, 130, 114, 138, 138, 122, 140, 141, 122, 141, 142, 124, 141, 142, 124, 146, 146, 128, 140, 141, 122, 149, 147, 129, 161, 160, 142, 145, 143, 126, 145, 143, 126, 152, 151, 133, 158, 156, 139, 151, 149, 132, 153, 152, 134, 161, 162, 143, 167, 168, 149, 160, 160, 144, 120, 122, 110, 6, 7, 0, 12, 12, 8, 23, 24, 17, 0, 0, 0, 147, 147, 133, 164, 162, 147, 152, 151, 129, 158, 157, 135, 66, 62, 57, 92, 87, 77, 77, 72, 60, 96, 94, 81, 89, 87, 72, 86, 81, 71, 104, 101, 93, 100, 97, 86, 95, 92, 82, 91, 88, 77, 97, 95, 84, 83, 80, 72, 99, 95, 87, 82, 79, 71, 85, 81, 73, 87, 84, 76, 67, 64, 56, 75, 72, 64, 74, 71, 63, 79, 76, 68, 71, 67, 60, 85, 81, 73, 67, 64, 56, 74, 71, 63, 54, 51, 43, 86, 83, 72, 80, 77, 69, 80, 79, 70, 66, 65, 56, 77, 73, 65, 82, 79, 73, 87, 85, 79, 80, 78, 72, 109, 106, 98, 92, 88, 80, 134, 134, 123, 0, 0, 0, 135, 137, 127, 131, 133, 124, 97, 96, 89, 94, 95, 90, 104, 104, 100, 67, 68, 64, 72, 75, 69, 71, 74, 68, 89, 92, 87, 89, 92, 87, 89, 92, 87, 95, 98, 93, 86, 92, 86, 88, 93, 87, 88, 92, 84, 94, 97, 89, 93, 96, 88, 94, 97, 89, 97, 101, 93, 92, 95, 87, 88, 92, 84, 98, 99, 92, 101, 104, 96, 100, 103, 95, 102, 104, 94, 105, 106, 99, 112, 113, 106, 109, 111, 103, 98, 99, 92, 105, 106, 99, 114, 115, 108, 113, 114, 107, 107, 108, 101, 114, 115, 108, 109, 111, 103, 114, 117, 109, 119, 120, 111, 120, 121, 114, 121, 122, 115, 121, 122, 115, 120, 121, 114, 123, 125, 115, 126, 127, 118, 115, 117, 107, 122, 124, 114, 123, 125, 115, 119, 120, 111, 127, 128, 119, 134, 136, 124, 120, 122, 110, 130, 134, 121, 121, 123, 111, 131, 133, 121, 122, 124, 112, 127, 129, 117, 121, 123, 111, 131, 133, 121, 127, 129, 117, 129, 131, 121, 133, 135, 123, 87, 91, 80, 7, 10, 0, 22, 25, 17, 140, 144, 134, 18, 22, 14, 15, 18, 10, 53, 57, 49, 9, 12, 4, 90, 94, 84, 140, 145, 132, 148, 150, 136, 135, 135, 122, 152, 152, 138, 139, 139, 125, 146, 146, 132, 154, 154, 138, 148, 148, 132, 139, 139, 123, 159, 159, 143, 148, 148, 132, 140, 142, 126, 135, 138, 121, 150, 153, 136, 126, 128, 112, 254, 255, 240, 235, 237, 223, 118, 118, 104, 125, 127, 112, 161, 163, 149, 154, 156, 142, 164, 167, 150, 148, 148, 132, 121, 124, 105, 159, 162, 145, 149, 150, 132, 144, 144, 126, 135, 136, 118, 149, 150, 132, 152, 152, 134, 151, 151, 133, 138, 138, 120, 138, 141, 124, 14, 16, 6, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 6, 12, 5, 14, 20, 13, 11, 17, 8, 98, 105, 91, 132, 137, 122, 130, 135, 119, 130, 133, 118, 126, 128, 114, 125, 127, 114, 138, 141, 126, 129, 131, 117, 125, 130, 117, 128, 130, 116, 118, 123, 108, 114, 118, 103, 129, 133, 118, 120, 124, 109, 131, 136, 121, 132, 137, 122, 128, 133, 115, 129, 134, 116, 130, 135, 117, 129, 132, 115, 128, 130, 116, 144, 147, 130, 137, 140, 123, 143, 146, 129, 129, 132, 115, 123, 126, 109, 136, 138, 124, 129, 131, 117, 135, 137, 123, 126, 128, 116, 80, 82, 72, 58, 62, 51, 0, 0, 0, 11, 15, 7, 66, 67, 60, 58, 61, 53, 14, 17, 9, 17, 21, 13, 82, 87, 74, 120, 122, 110, 125, 127, 112, 122, 125, 110, 127, 128, 112, 127, 128, 112, 123, 123, 107, 127, 128, 112, 129, 132, 115, 120, 123, 106, 125, 125, 109, 125, 125, 109, 132, 132, 116, 132, 132, 116, 135, 136, 120, 138, 138, 122, 141, 141, 126, 142, 143, 127, 149, 150, 132, 144, 142, 127, 143, 141, 124, 149, 147, 129, 142, 140, 120, 147, 148, 129, 155, 153, 133, 156, 154, 136, 146, 145, 125, 163, 161, 141, 170, 171, 153, 177, 177, 164, 43, 44, 37, 5, 5, 1, 7, 8, 3, 9, 10, 3, 0, 0, 0, 144, 143, 132, 137, 135, 118, 149, 147, 127, 166, 165, 143, 80, 76, 75, 82, 78, 75, 79, 75, 70, 77, 73, 67, 71, 68, 57, 82, 79, 71, 101, 97, 92, 83, 80, 74, 83, 80, 72, 96, 93, 87, 82, 79, 71, 86, 82, 77, 86, 82, 77, 79, 76, 68, 94, 90, 85, 77, 73, 67, 88, 85, 79, 74, 71, 65, 83, 80, 74, 88, 85, 79, 92, 88, 82, 83, 80, 74, 85, 81, 75, 85, 81, 75, 87, 83, 78, 91, 87, 81, 88, 84, 81, 88, 84, 81, 91, 87, 81, 98, 97, 91, 88, 86, 80, 106, 105, 99, 100, 96, 91, 96, 93, 85, 40, 39, 30, 50, 50, 41, 100, 100, 91, 79, 80, 73, 70, 71, 64, 99, 100, 95, 97, 97, 93, 79, 80, 75, 75, 78, 73, 82, 85, 80, 81, 84, 79, 83, 87, 81, 90, 94, 86, 83, 87, 81, 89, 92, 87, 89, 95, 86, 100, 103, 95, 94, 97, 89, 88, 92, 84, 93, 96, 88, 95, 98, 91, 90, 94, 84, 94, 96, 86, 97, 98, 91, 86, 90, 79, 100, 104, 93, 102, 104, 94, 101, 103, 93, 102, 104, 94, 101, 103, 93, 105, 106, 97, 108, 109, 102, 106, 107, 100, 113, 114, 107, 111, 112, 105, 109, 111, 103, 108, 110, 100, 122, 124, 114, 107, 109, 99, 111, 112, 103, 127, 128, 119, 119, 120, 111, 118, 119, 110, 114, 116, 106, 120, 121, 112, 125, 126, 117, 126, 127, 118, 125, 126, 117, 109, 111, 101, 126, 127, 118, 125, 126, 117, 127, 129, 117, 133, 135, 123, 126, 128, 116, 125, 127, 114, 126, 128, 116, 128, 130, 118, 129, 131, 119, 126, 128, 116, 127, 129, 117, 134, 136, 124, 123, 127, 114, 132, 137, 124, 161, 165, 155, 7, 10, 2, 78, 81, 73, 0, 0, 0, 0, 2, 0, 0, 0, 0, 38, 41, 34, 25, 28, 23, 38, 42, 32, 96, 100, 88, 138, 141, 126, 145, 145, 131, 134, 134, 121, 160, 160, 146, 147, 147, 131, 139, 139, 123, 156, 157, 141, 148, 148, 132, 141, 141, 126, 177, 178, 162, 153, 153, 137, 166, 166, 150, 167, 167, 151, 126, 128, 114, 255, 255, 255, 131, 134, 119, 255, 255, 255, 214, 217, 200, 251, 254, 237, 134, 137, 120, 154, 156, 140, 141, 144, 125, 147, 150, 130, 159, 163, 143, 165, 165, 147, 141, 142, 124, 132, 133, 114, 137, 137, 119, 146, 146, 128, 144, 144, 126, 159, 159, 141, 145, 145, 129, 21, 23, 13, 59, 63, 52, 0, 0, 0, 62, 68, 61, 0, 0, 0, 13, 19, 12, 29, 35, 29, 35, 41, 34, 69, 75, 64, 138, 144, 131, 131, 134, 119, 133, 135, 121, 140, 142, 128, 138, 141, 126, 131, 134, 119, 134, 136, 122, 126, 128, 114, 140, 142, 128, 130, 133, 118, 130, 135, 119, 131, 136, 121, 132, 137, 122, 127, 131, 116, 128, 132, 117, 140, 145, 128, 118, 123, 106, 132, 137, 120, 131, 136, 119, 131, 134, 117, 128, 131, 114, 133, 135, 119, 140, 142, 126, 138, 138, 122, 134, 137, 120, 129, 132, 115, 136, 139, 122, 138, 141, 126, 129, 131, 117, 118, 120, 107, 72, 73, 66, 0, 0, 0, 0, 0, 0, 42, 43, 36, 25, 29, 21, 52, 55, 48, 15, 18, 10, 68, 72, 62, 129, 131, 119, 123, 126, 111, 127, 129, 115, 137, 140, 125, 129, 132, 115, 128, 130, 116, 127, 129, 115, 126, 128, 114, 126, 128, 114, 123, 126, 111, 124, 124, 108, 118, 118, 104, 126, 126, 112, 128, 129, 113, 141, 141, 126, 141, 141, 126, 138, 138, 122, 137, 137, 121, 142, 143, 127, 144, 144, 128, 145, 143, 126, 142, 143, 125, 147, 148, 129, 138, 138, 120, 137, 135, 118, 166, 165, 147, 155, 156, 140, 170, 172, 158, 65, 68, 62, 10, 13, 8, 10, 13, 8, 10, 11, 6, 0, 0, 0, 0, 0, 0, 144, 146, 134, 141, 142, 124, 149, 147, 127, 171, 173, 150, 82, 77, 81, 95, 91, 90, 88, 84, 81, 93, 90, 82, 77, 73, 65, 83, 80, 74, 85, 81, 75, 81, 77, 74, 75, 72, 66, 84, 83, 77, 90, 89, 82, 81, 79, 75, 85, 84, 78, 81, 79, 73, 78, 74, 70, 84, 83, 79, 82, 80, 76, 81, 77, 74, 89, 85, 82, 96, 92, 89, 89, 85, 82, 104, 102, 98, 87, 85, 81, 88, 84, 81, 97, 95, 91, 91, 90, 86, 93, 88, 88, 96, 94, 92, 96, 94, 90, 70, 69, 63, 49, 48, 42, 83, 82, 75, 0, 0, 0, 57, 56, 52, 92, 91, 87, 104, 104, 100, 97, 97, 93, 87, 88, 83, 114, 117, 111, 88, 91, 86, 78, 79, 74, 85, 88, 82, 87, 90, 84, 81, 84, 79, 81, 84, 79, 78, 81, 75, 79, 82, 76, 83, 87, 79, 85, 88, 80, 87, 90, 82, 85, 88, 80, 88, 92, 84, 95, 98, 91, 89, 93, 85, 93, 97, 86, 94, 97, 89, 94, 97, 89, 94, 97, 89, 87, 90, 82, 100, 102, 92, 93, 96, 88, 94, 98, 87, 106, 109, 99, 101, 103, 93, 105, 106, 97, 107, 108, 101, 94, 96, 88, 109, 111, 103, 108, 110, 100, 101, 103, 93, 109, 111, 101, 111, 112, 103, 116, 118, 108, 116, 118, 108, 115, 117, 107, 114, 116, 106, 121, 123, 113, 119, 120, 111, 120, 121, 112, 125, 127, 114, 123, 125, 113, 127, 129, 117, 128, 130, 118, 120, 122, 110, 119, 121, 109, 123, 125, 113, 129, 131, 119, 128, 130, 118, 140, 142, 129, 126, 128, 116, 122, 124, 112, 119, 121, 109, 128, 130, 118, 129, 131, 119, 125, 127, 114, 125, 127, 114, 138, 142, 129, 163, 166, 156, 0, 2, 0, 0, 3, 0, 0, 0, 0, 14, 17, 11, 0, 0, 0, 54, 57, 52, 4, 7, 2, 10, 14, 6, 52, 56, 46, 149, 151, 137, 149, 149, 136, 131, 131, 117, 145, 145, 131, 173, 173, 157, 141, 141, 126, 146, 146, 130, 131, 131, 115, 140, 140, 124, 165, 165, 149, 159, 159, 143, 149, 150, 134, 154, 154, 138, 134, 137, 120, 125, 127, 110, 152, 152, 136, 160, 160, 144, 152, 152, 136, 168, 168, 152, 134, 137, 120, 162, 163, 145, 130, 130, 112, 173, 173, 155, 145, 145, 129, 141, 142, 124, 140, 141, 122, 140, 141, 122, 151, 151, 133, 139, 140, 121, 135, 136, 118, 156, 157, 139, 141, 141, 126, 112, 114, 102, 81, 85, 75, 0, 0, 0, 22, 25, 19, 9, 12, 6, 0, 2, 0, 33, 39, 32, 41, 47, 40, 109, 115, 104, 156, 163, 149, 137, 142, 126, 131, 134, 119, 140, 142, 128, 138, 141, 126, 134, 136, 122, 134, 136, 122, 134, 136, 122, 130, 133, 118, 142, 144, 130, 125, 130, 115, 133, 135, 121, 128, 133, 115, 123, 128, 112, 131, 136, 119, 133, 138, 121, 132, 137, 120, 131, 136, 119, 134, 137, 120, 141, 143, 127, 133, 135, 119, 131, 131, 115, 145, 145, 129, 150, 153, 136, 142, 145, 128, 145, 148, 131, 144, 147, 130, 147, 149, 132, 144, 147, 132, 120, 122, 110, 60, 62, 52, 7, 8, 1, 29, 32, 24, 55, 59, 51, 34, 35, 28, 40, 44, 36, 28, 31, 23, 88, 90, 80, 123, 125, 113, 131, 134, 119, 131, 134, 119, 130, 133, 118, 134, 136, 122, 136, 138, 124, 124, 124, 110, 122, 125, 108, 125, 127, 112, 125, 125, 111, 131, 134, 119, 129, 132, 115, 128, 129, 113, 138, 138, 122, 144, 144, 128, 141, 143, 127, 145, 148, 131, 145, 148, 131, 145, 148, 131, 137, 140, 123, 159, 162, 145, 148, 151, 132, 150, 153, 134, 172, 175, 156, 205, 207, 193, 137, 140, 123, 23, 27, 14, 19, 22, 17, 17, 22, 16, 15, 21, 15, 7, 9, 6, 28, 31, 25, 0, 0, 0, 23, 25, 13, 155, 155, 142, 151, 151, 135, 151, 152, 131, 149, 150, 129, 93, 98, 69, 171, 174, 144, 156, 155, 134, 108, 106, 91, 111, 109, 98, 87, 86, 75, 77, 73, 65, 86, 83, 75, 85, 85, 74, 76, 75, 66, 88, 86, 80, 77, 76, 70, 81, 79, 73, 83, 82, 75, 71, 70, 64, 77, 76, 72, 77, 76, 72, 81, 79, 75, 83, 81, 77, 77, 72, 69, 87, 85, 81, 94, 92, 88, 68, 66, 62, 50, 49, 43, 68, 67, 60, 49, 48, 42, 53, 51, 47, 60, 58, 52, 34, 33, 27, 19, 17, 13, 6, 5, 1, 98, 96, 95, 90, 88, 86, 87, 85, 83, 84, 84, 82, 88, 89, 86, 121, 122, 117, 95, 98, 93, 82, 85, 80, 90, 94, 88, 71, 74, 66, 83, 87, 79, 80, 83, 75, 86, 89, 81, 83, 87, 79, 85, 88, 80, 82, 86, 78, 85, 88, 80, 87, 90, 82, 87, 90, 82, 89, 93, 85, 86, 90, 79, 99, 102, 92, 90, 94, 84, 93, 97, 86, 92, 95, 85, 95, 97, 87, 92, 95, 85, 94, 97, 89, 94, 98, 87, 97, 101, 91, 100, 104, 93, 90, 91, 82, 105, 106, 97, 105, 106, 97, 106, 108, 98, 109, 111, 103, 112, 113, 104, 115, 117, 107, 119, 120, 111, 113, 114, 105, 111, 112, 103, 115, 117, 107, 107, 109, 99, 121, 125, 114, 111, 112, 103, 115, 119, 108, 117, 121, 111, 120, 121, 112, 117, 121, 109, 124, 128, 116, 120, 124, 111, 118, 120, 107, 133, 135, 123, 121, 123, 111, 128, 130, 116, 125, 127, 112, 134, 136, 122, 134, 136, 124, 130, 132, 120, 147, 149, 134, 125, 127, 112, 130, 133, 118, 131, 133, 121, 135, 137, 125, 144, 147, 132, 129, 131, 119, 132, 136, 126, 19, 23, 13, 33, 34, 27, 0, 0, 0, 97, 100, 95, 0, 0, 0, 42, 45, 39, 17, 20, 15, 30, 33, 27, 61, 65, 57, 145, 147, 135, 138, 138, 124, 137, 136, 123, 144, 143, 130, 145, 145, 129, 167, 167, 151, 133, 133, 117, 161, 161, 145, 139, 139, 123, 156, 157, 141, 187, 187, 171, 155, 156, 140, 154, 155, 136, 165, 165, 147, 155, 156, 138, 149, 150, 132, 142, 145, 126, 155, 156, 138, 168, 169, 150, 182, 183, 164, 159, 159, 143, 167, 168, 149, 160, 160, 144, 174, 175, 156, 167, 168, 149, 156, 157, 139, 166, 166, 148, 153, 154, 135, 142, 143, 125, 138, 138, 120, 135, 136, 118, 154, 154, 138, 119, 121, 109, 19, 20, 13, 0, 0, 0, 25, 28, 23, 32, 35, 30, 0, 0, 0, 24, 29, 23, 35, 41, 34, 173, 177, 169, 99, 102, 92, 128, 132, 119, 129, 131, 117, 130, 133, 118, 131, 134, 119, 128, 130, 116, 135, 137, 123, 141, 143, 129, 137, 140, 125, 134, 136, 122, 130, 133, 118, 128, 131, 114, 142, 147, 129, 150, 155, 137, 140, 142, 126, 143, 146, 129, 133, 135, 119, 137, 142, 124, 131, 134, 117, 144, 147, 130, 135, 138, 121, 140, 142, 126, 147, 147, 131, 141, 141, 126, 141, 143, 127, 144, 147, 130, 141, 143, 127, 149, 152, 135, 154, 156, 140, 141, 143, 131, 26, 27, 18, 60, 62, 54, 1, 4, 0, 0, 0, 0, 31, 35, 27, 33, 37, 29, 33, 37, 29, 99, 100, 91, 121, 123, 111, 138, 141, 126, 134, 136, 122, 131, 134, 119, 136, 138, 124, 129, 131, 117, 130, 133, 118, 121, 123, 109, 121, 123, 109, 120, 122, 108, 106, 108, 94, 137, 136, 123, 153, 153, 139, 166, 169, 154, 205, 208, 191, 200, 204, 189, 149, 153, 138, 83, 88, 75, 46, 52, 41, 20, 26, 15, 26, 32, 21, 17, 23, 12, 48, 52, 44, 45, 48, 41, 46, 50, 42, 44, 47, 39, 32, 38, 29, 35, 41, 34, 38, 43, 37, 14, 20, 13, 26, 32, 25, 13, 18, 14, 0, 0, 0, 80, 83, 68, 141, 141, 126, 147, 148, 129, 134, 135, 114, 136, 140, 118, 92, 89, 95, 80, 77, 80, 81, 81, 81, 87, 87, 87, 45, 45, 45, 28, 26, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 31, 31, 31, 33, 80, 77, 80, 100, 98, 101, 100, 98, 101, 90, 87, 90, 90, 87, 90, 94, 91, 92, 90, 88, 88, 81, 81, 81, 110, 113, 110, 104, 107, 104, 72, 75, 69, 76, 80, 74, 80, 83, 75, 85, 88, 80, 182, 186, 178, 88, 92, 84, 82, 86, 78, 88, 92, 84, 85, 88, 80, 82, 86, 78, 83, 87, 79, 88, 92, 84, 78, 81, 73, 86, 89, 81, 88, 92, 84, 87, 90, 82, 95, 99, 89, 87, 91, 80, 136, 140, 129, 90, 94, 84, 93, 97, 86, 73, 77, 66, 88, 92, 82, 97, 101, 91, 95, 99, 89, 104, 108, 98, 102, 104, 94, 105, 106, 97, 105, 106, 97, 106, 108, 98, 106, 108, 98, 111, 112, 103, 113, 114, 105, 114, 116, 106, 121, 123, 113, 113, 116, 106, 109, 113, 103, 118, 122, 112, 123, 127, 117, 108, 112, 99, 117, 121, 109, 123, 127, 114, 118, 123, 110, 120, 124, 111, 128, 132, 119, 128, 130, 118, 125, 127, 114, 122, 124, 112, 119, 121, 109, 127, 129, 115, 138, 140, 128, 129, 131, 119, 134, 136, 124, 137, 140, 125, 134, 136, 122, 129, 131, 117, 148, 150, 136, 137, 140, 125, 138, 141, 126, 135, 137, 123, 131, 133, 121, 117, 121, 109, 95, 99, 89, 25, 29, 21, 18, 21, 16, 0, 0, 0, 0, 0, 0, 53, 56, 51, 22, 25, 19, 23, 26, 20, 158, 161, 156, 156, 158, 146, 141, 141, 129, 152, 152, 138, 142, 143, 127, 147, 147, 131, 151, 151, 135, 131, 131, 115, 140, 140, 124, 137, 137, 121, 158, 158, 142, 147, 147, 131, 163, 164, 148, 174, 175, 156, 176, 176, 160, 180, 180, 162, 140, 141, 122, 158, 158, 140, 148, 149, 130, 171, 172, 154, 152, 152, 134, 176, 177, 159, 153, 154, 135, 152, 152, 134, 144, 144, 126, 155, 156, 138, 153, 154, 135, 149, 150, 132, 133, 134, 115, 147, 148, 129, 167, 168, 149, 153, 154, 135, 148, 149, 130, 143, 146, 129, 2, 4, 0, 26, 27, 20, 0, 0, 0, 62, 65, 60, 0, 0, 0, 30, 33, 27, 32, 35, 30, 97, 100, 95, 79, 83, 72, 143, 145, 133, 147, 149, 134, 135, 137, 123, 126, 128, 112, 138, 141, 126, 131, 134, 119, 144, 147, 132, 133, 135, 119, 138, 141, 124, 140, 142, 126, 136, 139, 122, 137, 140, 123, 142, 145, 128, 130, 133, 116, 135, 138, 121, 133, 135, 119, 137, 140, 123, 135, 138, 121, 147, 149, 132, 137, 140, 123, 140, 142, 126, 162, 165, 146, 136, 139, 122, 142, 145, 128, 157, 160, 143, 150, 153, 136, 158, 161, 144, 147, 149, 132, 140, 145, 130, 23, 24, 17, 85, 87, 77, 0, 3, 0, 8, 11, 3, 55, 59, 51, 50, 53, 45, 19, 23, 15, 120, 121, 112, 141, 143, 131, 131, 136, 121, 141, 143, 129, 144, 148, 135, 165, 170, 154, 149, 153, 138, 113, 117, 104, 55, 60, 47, 19, 23, 13, 31, 35, 25, 46, 50, 40, 40, 44, 34, 47, 52, 39, 51, 55, 44, 40, 44, 34, 48, 52, 44, 38, 41, 34, 48, 54, 45, 39, 44, 38, 42, 48, 41, 39, 47, 40, 45, 50, 44, 44, 52, 45, 49, 57, 49, 55, 61, 54, 41, 47, 40, 41, 49, 41, 38, 43, 37, 33, 39, 32, 32, 37, 31, 33, 39, 32, 0, 0, 0, 0, 0, 0, 113, 113, 100, 147, 147, 131, 171, 172, 154, 165, 166, 145, 144, 148, 126, 78, 77, 84, 81, 82, 91, 75, 76, 85, 78, 78, 87, 74, 75, 84, 83, 81, 91, 83, 81, 91, 92, 90, 100, 86, 85, 92, 88, 87, 94, 88, 88, 92, 90, 89, 94, 85, 84, 89, 88, 88, 92, 87, 87, 91, 86, 85, 90, 95, 95, 99, 100, 99, 104, 79, 79, 81, 84, 83, 86, 94, 94, 96, 81, 81, 83, 88, 88, 92, 92, 91, 96, 79, 78, 83, 90, 89, 94, 87, 83, 89, 97, 94, 99, 103, 100, 105, 84, 82, 83, 89, 86, 87, 130, 131, 128, 124, 122, 120, 87, 87, 87, 74, 77, 74, 81, 84, 79, 83, 87, 81, 83, 87, 79, 100, 103, 95, 79, 85, 77, 76, 80, 72, 72, 78, 70, 76, 82, 73, 96, 100, 92, 88, 92, 84, 83, 87, 79, 85, 88, 80, 85, 88, 80, 85, 88, 80, 89, 93, 83, 88, 94, 83, 79, 83, 72, 88, 94, 83, 88, 94, 83, 89, 93, 83, 92, 95, 85, 93, 97, 86, 92, 95, 85, 95, 99, 89, 93, 97, 86, 89, 93, 83, 102, 106, 96, 103, 107, 97, 107, 109, 99, 109, 111, 101, 107, 109, 99, 107, 109, 99, 104, 105, 96, 111, 112, 103, 116, 118, 108, 114, 116, 106, 113, 116, 106, 115, 119, 108, 114, 116, 106, 117, 121, 109, 121, 125, 112, 120, 124, 111, 111, 116, 103, 120, 124, 111, 124, 128, 116, 123, 127, 114, 118, 120, 107, 125, 130, 117, 126, 128, 114, 130, 133, 118, 128, 130, 116, 130, 133, 118, 129, 131, 117, 133, 135, 121, 128, 130, 116, 131, 134, 119, 129, 131, 117, 131, 134, 119, 127, 129, 115, 131, 134, 119, 130, 133, 118, 140, 142, 128, 131, 135, 123, 150, 154, 143, 42, 45, 37, 12, 16, 10, 0, 0, 0, 38, 41, 36, 59, 62, 56, 22, 25, 19, 19, 22, 17, 82, 85, 80, 165, 167, 157, 151, 151, 137, 140, 140, 126, 160, 160, 144, 154, 154, 138, 156, 157, 141, 152, 152, 136, 141, 141, 126, 134, 134, 119, 166, 166, 150, 162, 162, 147, 171, 172, 156, 158, 158, 140, 174, 175, 156, 145, 145, 127, 152, 152, 134, 155, 156, 138, 171, 172, 154, 173, 173, 155, 158, 158, 140, 173, 173, 155, 161, 162, 143, 141, 144, 125, 148, 151, 132, 134, 135, 117, 148, 149, 130, 145, 149, 129, 169, 170, 152, 151, 154, 135, 145, 149, 129, 155, 158, 139, 157, 160, 141, 147, 149, 132, 51, 53, 41, 78, 79, 72, 0, 0, 0, 40, 40, 36, 0, 0, 0, 46, 49, 44, 33, 36, 31, 72, 75, 67, 128, 131, 121, 149, 153, 140, 149, 151, 137, 136, 138, 124, 135, 137, 123, 134, 136, 122, 134, 137, 120, 140, 142, 128, 138, 141, 124, 112, 114, 98, 148, 150, 134, 142, 145, 128, 137, 140, 123, 154, 156, 140, 141, 143, 129, 158, 161, 144, 138, 141, 124, 142, 145, 128, 149, 152, 135, 136, 139, 122, 142, 145, 128, 137, 140, 125, 148, 150, 136, 147, 149, 134, 153, 158, 143, 142, 147, 129, 132, 137, 120, 146, 151, 136, 143, 150, 136, 143, 147, 136, 42, 45, 37, 37, 40, 32, 0, 0, 0, 1, 4, 0, 0, 0, 0, 43, 47, 36, 36, 40, 29, 70, 71, 62, 58, 62, 51, 44, 48, 37, 51, 55, 44, 55, 61, 50, 52, 58, 47, 46, 52, 43, 49, 56, 44, 40, 46, 35, 36, 42, 34, 45, 51, 42, 43, 49, 41, 55, 61, 52, 39, 45, 36, 44, 47, 39, 42, 48, 41, 43, 49, 41, 41, 47, 38, 52, 57, 51, 46, 51, 45, 41, 47, 40, 59, 64, 58, 42, 48, 41, 56, 62, 53, 54, 60, 51, 52, 57, 49, 69, 75, 68, 39, 44, 38, 43, 49, 43, 50, 56, 49, 53, 58, 52, 0, 0, 0, 0, 0, 0, 103, 102, 93, 153, 153, 139, 141, 141, 128, 159, 159, 143, 128, 129, 113, 133, 135, 119, 80, 80, 84, 81, 80, 89, 84, 82, 94, 93, 91, 103, 90, 88, 100, 91, 89, 101, 87, 85, 99, 91, 89, 101, 94, 94, 105, 92, 90, 102, 86, 84, 96, 90, 88, 100, 102, 101, 110, 78, 77, 84, 88, 87, 94, 87, 86, 93, 88, 87, 94, 94, 93, 100, 91, 90, 97, 85, 84, 91, 92, 91, 96, 85, 84, 91, 81, 80, 87, 79, 78, 85, 83, 81, 89, 74, 74, 76, 97, 96, 101, 123, 120, 123, 131, 128, 129, 106, 106, 104, 100, 100, 98, 77, 78, 73, 73, 74, 69, 102, 103, 98, 85, 86, 81, 82, 86, 78, 83, 87, 81, 75, 79, 71, 77, 83, 74, 89, 93, 85, 97, 103, 94, 76, 82, 73, 84, 90, 81, 81, 87, 78, 80, 83, 75, 88, 92, 84, 81, 87, 78, 87, 90, 82, 82, 86, 78, 84, 90, 81, 84, 90, 81, 83, 89, 80, 76, 82, 71, 82, 88, 79, 93, 97, 86, 87, 91, 80, 90, 94, 84, 92, 95, 85, 97, 101, 91, 97, 101, 91, 102, 104, 94, 97, 101, 91, 97, 101, 91, 116, 118, 106, 108, 110, 100, 104, 105, 96, 105, 106, 97, 116, 118, 108, 109, 111, 101, 114, 116, 106, 115, 117, 107, 113, 116, 106, 109, 113, 103, 115, 119, 108, 123, 127, 117, 117, 121, 109, 121, 125, 112, 117, 121, 109, 122, 126, 115, 118, 123, 110, 121, 125, 112, 122, 126, 113, 127, 131, 118, 128, 130, 118, 128, 130, 118, 127, 129, 115, 128, 130, 116, 131, 133, 121, 143, 145, 131, 129, 131, 117, 127, 129, 115, 135, 137, 123, 136, 138, 124, 136, 138, 124, 135, 139, 124, 138, 141, 126, 137, 140, 125, 137, 141, 128, 143, 147, 136, 2, 5, 0, 26, 29, 24, 0, 0, 0, 44, 47, 41, 13, 14, 9, 15, 18, 12, 8, 11, 5, 40, 43, 38, 95, 97, 89, 159, 162, 147, 139, 139, 125, 140, 140, 124, 146, 146, 130, 159, 159, 143, 153, 153, 137, 158, 158, 142, 170, 171, 155, 149, 150, 134, 158, 158, 142, 167, 167, 151, 158, 158, 142, 151, 151, 133, 163, 164, 146, 173, 173, 155, 180, 180, 162, 158, 158, 140, 146, 146, 128, 138, 138, 120, 152, 152, 134, 153, 154, 135, 145, 145, 127, 143, 146, 127, 130, 130, 112, 173, 177, 157, 147, 150, 130, 158, 161, 142, 144, 147, 128, 142, 145, 126, 137, 140, 121, 144, 147, 128, 143, 146, 129, 141, 143, 131, 33, 37, 29, 0, 0, 0, 0, 0, 0, 53, 57, 49, 29, 32, 24, 43, 46, 38, 62, 66, 56, 145, 149, 136, 153, 158, 143, 138, 143, 128, 126, 128, 114, 128, 131, 114, 136, 139, 122, 144, 147, 132, 137, 140, 123, 156, 159, 142, 143, 146, 129, 130, 133, 116, 145, 148, 131, 144, 147, 130, 138, 143, 128, 140, 145, 130, 135, 137, 123, 135, 139, 124, 138, 143, 128, 150, 154, 139, 144, 149, 133, 166, 171, 156, 149, 151, 137, 102, 106, 94, 45, 49, 36, 49, 56, 42, 77, 83, 72, 52, 58, 47, 45, 51, 42, 54, 60, 51, 54, 60, 51, 55, 61, 52, 67, 73, 64, 0, 0, 0, 47, 51, 43, 66, 70, 60, 35, 39, 26, 139, 143, 131, 66, 68, 58, 65, 69, 56, 59, 63, 52, 55, 61, 50, 65, 69, 56, 66, 70, 57, 51, 55, 42, 55, 59, 49, 52, 56, 46, 61, 65, 55, 61, 65, 55, 44, 48, 37, 54, 58, 48, 57, 63, 54, 57, 60, 52, 55, 59, 51, 48, 54, 45, 47, 51, 43, 58, 61, 55, 55, 59, 51, 52, 57, 49, 47, 52, 46, 47, 52, 46, 64, 70, 64, 42, 48, 41, 59, 62, 56, 53, 58, 52, 60, 68, 61, 45, 53, 46, 0, 6, 0, 0, 0, 0, 0, 0, 0, 100, 100, 89, 162, 162, 149, 146, 146, 132, 156, 153, 140, 144, 143, 130, 146, 146, 132, 135, 135, 122, 111, 108, 111, 119, 116, 120, 120, 119, 124, 112, 111, 116, 120, 119, 124, 120, 119, 126, 129, 128, 135, 125, 123, 130, 129, 128, 135, 127, 128, 134, 128, 127, 134, 127, 126, 133, 123, 122, 129, 136, 135, 142, 131, 131, 135, 129, 128, 133, 122, 121, 126, 127, 127, 129, 122, 122, 124, 121, 121, 123, 130, 130, 132, 134, 133, 136, 123, 123, 125, 115, 117, 118, 114, 114, 116, 98, 98, 98, 88, 89, 86, 85, 86, 81, 81, 83, 75, 80, 81, 74, 85, 86, 79, 69, 70, 63, 91, 92, 85, 87, 89, 81, 87, 90, 84, 85, 88, 80, 81, 84, 79, 86, 89, 81, 65, 68, 60, 78, 84, 75, 78, 84, 75, 82, 88, 79, 83, 89, 80, 76, 82, 73, 77, 83, 74, 79, 85, 77, 84, 90, 81, 78, 84, 75, 79, 85, 77, 83, 89, 80, 84, 90, 81, 82, 88, 79, 81, 87, 78, 86, 93, 82, 82, 86, 76, 97, 101, 91, 101, 105, 94, 99, 102, 92, 102, 106, 96, 82, 86, 76, 96, 100, 90, 93, 97, 86, 92, 96, 83, 107, 109, 97, 101, 103, 91, 119, 121, 109, 106, 108, 96, 116, 118, 106, 107, 109, 97, 118, 119, 110, 120, 121, 112, 115, 117, 107, 122, 126, 113, 115, 119, 108, 121, 125, 114, 117, 121, 109, 110, 114, 102, 128, 132, 119, 121, 125, 112, 124, 128, 116, 118, 123, 110, 140, 145, 132, 129, 133, 120, 129, 131, 119, 128, 130, 116, 129, 131, 119, 130, 133, 118, 125, 127, 112, 127, 129, 115, 136, 138, 124, 131, 134, 119, 138, 141, 126, 143, 145, 131, 123, 126, 111, 138, 141, 126, 132, 137, 124, 113, 117, 104, 142, 145, 135, 155, 156, 147, 36, 39, 31, 57, 60, 54, 0, 0, 0, 31, 34, 29, 0, 0, 0, 54, 57, 52, 28, 30, 27, 22, 25, 19, 28, 30, 20, 148, 150, 136, 151, 151, 135, 152, 152, 136, 149, 150, 134, 144, 144, 128, 151, 151, 135, 149, 150, 134, 159, 159, 143, 141, 141, 126, 152, 152, 136, 159, 159, 141, 166, 166, 148, 165, 165, 147, 128, 129, 111, 160, 161, 142, 131, 131, 113, 151, 154, 135, 161, 164, 145, 157, 160, 141, 152, 152, 134, 148, 148, 132, 147, 150, 130, 145, 149, 129, 154, 157, 138, 147, 150, 130, 147, 150, 130, 144, 144, 126, 144, 147, 128, 157, 160, 141, 157, 160, 141, 148, 151, 132, 142, 145, 128, 160, 165, 150, 3, 7, 0, 0, 0, 0, 0, 0, 0, 30, 33, 25, 25, 29, 21, 71, 75, 62, 89, 94, 81, 138, 143, 128, 103, 107, 95, 155, 157, 143, 143, 147, 132, 143, 145, 131, 135, 137, 123, 121, 123, 109, 134, 136, 122, 137, 140, 125, 144, 147, 132, 142, 144, 130, 164, 166, 152, 167, 171, 159, 136, 140, 127, 97, 101, 91, 45, 51, 40, 74, 80, 69, 26, 32, 21, 63, 69, 60, 45, 51, 40, 50, 57, 46, 62, 68, 57, 80, 84, 73, 55, 61, 52, 48, 54, 45, 60, 66, 57, 43, 51, 42, 56, 64, 54, 45, 54, 44, 58, 66, 57, 55, 61, 52, 30, 33, 25, 16, 19, 11, 9, 13, 2, 11, 16, 3, 99, 103, 90, 67, 71, 59, 68, 73, 60, 92, 96, 83, 64, 68, 55, 71, 75, 64, 60, 64, 52, 67, 71, 59, 61, 65, 55, 59, 63, 52, 53, 57, 47, 74, 78, 68, 67, 71, 61, 78, 81, 71, 82, 86, 76, 66, 70, 60, 78, 81, 71, 58, 62, 51, 71, 75, 64, 68, 72, 64, 59, 62, 54, 74, 78, 70, 76, 82, 73, 81, 85, 77, 69, 73, 65, 107, 110, 102, 79, 82, 76, 73, 76, 70, 22, 25, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 52, 40, 161, 161, 147, 158, 158, 144, 156, 153, 140, 159, 157, 144, 148, 148, 134, 144, 143, 130, 152, 152, 138, 125, 125, 111, 105, 105, 94, 99, 99, 88, 93, 95, 83, 84, 86, 74, 85, 87, 77, 106, 107, 100, 98, 99, 92, 88, 91, 86, 106, 107, 102, 97, 97, 93, 86, 89, 83, 90, 93, 90, 85, 87, 84, 81, 84, 79, 75, 78, 75, 83, 86, 83, 78, 81, 75, 74, 75, 70, 87, 88, 83, 83, 83, 79, 76, 76, 72, 85, 86, 81, 80, 83, 75, 82, 86, 78, 81, 84, 79, 78, 81, 73, 81, 83, 75, 76, 77, 70, 93, 95, 85, 79, 83, 72, 86, 89, 81, 86, 89, 81, 85, 86, 79, 85, 88, 80, 93, 96, 88, 79, 82, 74, 79, 82, 74, 71, 77, 68, 76, 80, 72, 82, 86, 78, 77, 83, 74, 79, 85, 77, 83, 89, 80, 53, 59, 50, 75, 81, 72, 79, 85, 77, 88, 94, 85, 78, 84, 75, 82, 88, 79, 79, 85, 77, 82, 88, 79, 82, 88, 79, 86, 92, 84, 86, 90, 79, 93, 97, 86, 83, 87, 77, 95, 99, 89, 94, 98, 87, 87, 91, 80, 99, 102, 92, 104, 109, 96, 99, 103, 90, 104, 109, 96, 97, 99, 86, 105, 107, 95, 102, 104, 92, 109, 111, 99, 114, 116, 104, 116, 118, 106, 105, 107, 95, 115, 117, 105, 114, 116, 104, 118, 120, 107, 108, 110, 98, 114, 116, 104, 120, 124, 111, 121, 125, 114, 123, 127, 114, 118, 123, 110, 121, 125, 112, 122, 124, 112, 123, 125, 113, 128, 130, 118, 125, 127, 114, 122, 124, 112, 138, 140, 128, 137, 139, 127, 136, 138, 124, 136, 138, 124, 135, 137, 123, 137, 140, 125, 143, 145, 131, 131, 134, 119, 134, 136, 122, 143, 145, 131, 138, 140, 128, 131, 135, 123, 133, 138, 125, 133, 138, 125, 44, 48, 37, 9, 12, 4, 18, 21, 16, 7, 10, 2, 0, 0, 0, 50, 53, 45, 39, 42, 37, 28, 31, 25, 66, 68, 58, 170, 170, 157, 155, 156, 140, 161, 161, 145, 146, 146, 130, 156, 157, 141, 149, 150, 134, 149, 150, 134, 146, 146, 130, 173, 173, 157, 135, 136, 120, 174, 175, 156, 138, 138, 120, 166, 166, 148, 151, 151, 133, 170, 171, 153, 157, 160, 141, 149, 152, 133, 151, 154, 135, 162, 163, 145, 154, 155, 136, 163, 166, 147, 147, 147, 131, 161, 164, 145, 151, 154, 135, 140, 143, 124, 137, 140, 121, 145, 149, 129, 141, 144, 125, 147, 150, 130, 140, 143, 124, 135, 138, 119, 137, 140, 123, 138, 143, 128, 17, 21, 13, 81, 85, 77, 0, 0, 0, 17, 21, 13, 34, 40, 29, 62, 67, 54, 88, 92, 80, 116, 120, 107, 81, 85, 72, 150, 154, 139, 130, 134, 121, 107, 111, 98, 69, 73, 63, 39, 43, 33, 42, 49, 37, 47, 51, 43, 55, 59, 49, 45, 51, 40, 55, 61, 50, 63, 70, 58, 64, 71, 60, 54, 60, 51, 60, 66, 57, 55, 61, 52, 56, 62, 53, 63, 71, 62, 69, 75, 66, 53, 59, 48, 50, 58, 49, 67, 73, 64, 57, 63, 54, 60, 66, 57, 68, 74, 65, 61, 67, 58, 71, 77, 68, 69, 75, 66, 70, 76, 67, 65, 69, 58, 61, 65, 55, 57, 61, 50, 0, 0, 0, 33, 37, 27, 111, 116, 103, 101, 103, 91, 105, 107, 95, 122, 124, 112, 89, 94, 81, 90, 95, 82, 110, 114, 102, 84, 86, 74, 83, 85, 72, 109, 111, 99, 104, 109, 96, 113, 116, 106, 124, 128, 116, 95, 99, 86, 102, 106, 96, 106, 109, 99, 121, 123, 113, 98, 99, 90, 91, 90, 82, 57, 59, 49, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 17, 8, 140, 142, 128, 9, 8, 0, 67, 67, 53, 126, 126, 112, 168, 166, 153, 163, 160, 147, 160, 158, 143, 157, 155, 140, 145, 143, 130, 151, 148, 136, 147, 147, 133, 130, 129, 116, 124, 124, 110, 122, 125, 110, 108, 105, 93, 104, 104, 90, 101, 103, 91, 106, 108, 96, 100, 102, 90, 105, 106, 97, 101, 103, 91, 94, 96, 86, 95, 97, 87, 93, 97, 86, 93, 95, 85, 90, 94, 86, 88, 92, 84, 85, 86, 79, 86, 89, 81, 90, 91, 84, 87, 91, 80, 85, 88, 78, 81, 83, 73, 88, 92, 82, 93, 94, 87, 99, 100, 93, 82, 86, 76, 81, 85, 77, 82, 86, 78, 82, 86, 76, 76, 77, 68, 87, 89, 79, 79, 81, 71, 79, 82, 74, 85, 88, 78, 78, 81, 73, 80, 83, 75, 71, 74, 66, 88, 92, 84, 82, 86, 78, 76, 80, 72, 72, 78, 70, 81, 85, 77, 78, 81, 73, 76, 80, 72, 77, 83, 74, 84, 90, 81, 83, 87, 79, 78, 84, 75, 75, 80, 74, 74, 80, 71, 81, 87, 78, 82, 88, 79, 82, 88, 79, 82, 88, 79, 88, 94, 85, 86, 92, 84, 74, 80, 71, 83, 87, 77, 93, 97, 86, 100, 104, 93, 97, 101, 91, 102, 106, 96, 100, 104, 93, 96, 100, 88, 101, 105, 92, 99, 103, 90, 106, 110, 97, 106, 108, 96, 105, 107, 95, 108, 110, 98, 107, 109, 97, 119, 121, 109, 105, 107, 95, 113, 115, 103, 114, 116, 104, 112, 114, 102, 112, 114, 102, 137, 139, 129, 126, 128, 116, 124, 128, 116, 116, 120, 107, 123, 127, 114, 117, 121, 109, 124, 128, 116, 128, 130, 118, 137, 139, 127, 133, 135, 123, 150, 152, 140, 138, 140, 128, 128, 130, 118, 131, 134, 119, 143, 145, 131, 123, 126, 111, 121, 123, 109, 131, 134, 119, 131, 134, 119, 135, 137, 123, 141, 143, 129, 136, 138, 124, 137, 140, 125, 139, 143, 131, 135, 137, 125, 101, 105, 94, 4, 8, 0, 67, 71, 63, 0, 0, 0, 0, 0, 0, 32, 36, 28, 40, 43, 38, 21, 24, 18, 164, 166, 154, 172, 175, 158, 159, 159, 143, 189, 190, 171, 162, 162, 147, 132, 132, 116, 160, 160, 144, 156, 157, 141, 158, 158, 142, 156, 157, 141, 154, 154, 138, 175, 175, 159, 134, 135, 117, 178, 179, 161, 153, 154, 135, 184, 187, 168, 161, 164, 145, 162, 165, 146, 162, 165, 146, 149, 152, 133, 137, 140, 121, 168, 171, 152, 122, 125, 108, 144, 147, 128, 143, 146, 127, 141, 144, 125, 150, 153, 134, 156, 159, 140, 141, 144, 125, 141, 144, 125, 126, 129, 110, 125, 127, 110, 138, 143, 128, 132, 137, 124, 61, 65, 57, 32, 36, 28, 0, 0, 0, 0, 0, 0, 15, 21, 13, 56, 63, 51, 67, 73, 60, 163, 170, 156, 79, 86, 72, 59, 65, 54, 59, 65, 54, 64, 71, 60, 49, 55, 46, 59, 64, 56, 91, 97, 88, 69, 75, 66, 56, 62, 53, 98, 104, 95, 57, 63, 54, 74, 80, 69, 48, 54, 45, 49, 55, 46, 74, 80, 69, 76, 82, 73, 60, 66, 57, 68, 74, 63, 72, 79, 68, 66, 71, 63, 68, 74, 63, 78, 85, 73, 71, 77, 68, 72, 78, 70, 52, 57, 49, 93, 99, 91, 73, 76, 68, 88, 92, 84, 73, 76, 68, 87, 91, 80, 88, 92, 80, 67, 71, 61, 0, 0, 0, 131, 135, 123, 116, 118, 106, 121, 123, 111, 101, 103, 91, 107, 111, 98, 93, 97, 84, 123, 127, 114, 92, 96, 83, 118, 123, 110, 113, 117, 104, 104, 106, 94, 72, 74, 62, 11, 15, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 10, 71, 71, 60, 94, 93, 80, 141, 138, 125, 161, 159, 144, 147, 145, 132, 147, 145, 130, 164, 162, 147, 149, 147, 131, 152, 150, 135, 167, 165, 150, 159, 157, 142, 144, 142, 127, 150, 147, 134, 143, 140, 128, 129, 126, 114, 149, 146, 133, 147, 145, 134, 102, 101, 90, 100, 100, 87, 92, 92, 79, 101, 103, 91, 99, 101, 89, 90, 92, 80, 99, 100, 91, 101, 103, 93, 90, 91, 82, 97, 98, 89, 90, 94, 84, 109, 111, 103, 81, 85, 77, 73, 76, 68, 81, 85, 77, 81, 85, 75, 78, 81, 71, 92, 95, 85, 83, 84, 75, 82, 86, 76, 87, 91, 80, 83, 87, 77, 81, 83, 73, 86, 90, 79, 72, 76, 65, 85, 88, 78, 83, 87, 77, 87, 91, 80, 82, 86, 76, 80, 84, 73, 79, 83, 72, 79, 83, 72, 79, 82, 74, 78, 81, 73, 86, 89, 81, 75, 79, 71, 78, 81, 73, 81, 85, 77, 78, 81, 73, 75, 79, 71, 81, 85, 77, 78, 81, 73, 74, 78, 70, 82, 86, 78, 80, 83, 75, 77, 83, 74, 79, 85, 79, 85, 91, 82, 79, 85, 77, 81, 87, 78, 83, 89, 80, 85, 88, 80, 96, 100, 92, 95, 99, 89, 83, 87, 77, 90, 94, 84, 86, 90, 79, 94, 98, 87, 99, 102, 92, 92, 95, 85, 90, 94, 84, 95, 99, 89, 103, 107, 95, 107, 109, 97, 104, 109, 96, 109, 111, 99, 106, 108, 96, 111, 113, 100, 112, 114, 102, 109, 111, 99, 113, 115, 103, 114, 116, 104, 116, 118, 106, 114, 116, 104, 119, 120, 111, 115, 117, 107, 119, 121, 109, 118, 120, 107, 122, 124, 112, 121, 125, 112, 116, 120, 107, 121, 123, 111, 140, 142, 129, 123, 125, 113, 131, 133, 121, 155, 157, 145, 115, 117, 105, 138, 140, 128, 137, 139, 127, 141, 143, 129, 142, 144, 130, 135, 137, 123, 133, 135, 121, 135, 137, 123, 137, 140, 125, 135, 137, 123, 144, 147, 132, 140, 142, 128, 141, 143, 131, 146, 150, 138, 151, 155, 142, 22, 25, 17, 55, 59, 51, 0, 0, 0, 130, 133, 126, 48, 49, 42, 26, 29, 24, 40, 43, 38, 173, 175, 163, 175, 177, 160, 152, 152, 136, 165, 165, 149, 137, 137, 121, 159, 159, 143, 155, 156, 140, 160, 160, 144, 177, 178, 162, 144, 144, 126, 154, 155, 136, 159, 163, 143, 162, 165, 146, 136, 139, 120, 150, 153, 134, 144, 147, 128, 137, 140, 121, 154, 157, 138, 154, 157, 138, 153, 156, 136, 135, 138, 119, 168, 171, 152, 157, 160, 143, 149, 154, 136, 158, 163, 147, 147, 154, 138, 141, 148, 132, 125, 132, 118, 106, 113, 99, 93, 97, 84, 69, 75, 64, 43, 50, 39, 43, 50, 39, 57, 60, 52, 43, 49, 41, 4, 10, 1, 89, 93, 85, 0, 0, 0, 28, 31, 21, 88, 94, 83, 129, 136, 123, 69, 75, 64, 67, 73, 62, 60, 66, 55, 70, 77, 65, 60, 66, 55, 77, 83, 74, 75, 81, 72, 56, 63, 51, 86, 92, 84, 59, 65, 54, 75, 81, 70, 136, 143, 132, 71, 78, 66, 82, 88, 79, 93, 96, 88, 69, 73, 65, 71, 74, 66, 65, 68, 60, 62, 68, 57, 81, 87, 78, 87, 90, 82, 80, 83, 75, 97, 101, 91, 92, 99, 87, 92, 95, 87, 87, 90, 82, 86, 90, 79, 96, 100, 90, 109, 111, 103, 108, 110, 100, 117, 121, 111, 103, 107, 97, 105, 106, 99, 0, 0, 0, 11, 15, 5, 71, 73, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 25, 15, 69, 71, 59, 107, 109, 97, 146, 145, 134, 150, 147, 136, 147, 145, 134, 150, 147, 136, 139, 138, 127, 142, 139, 126, 137, 135, 122, 173, 171, 158, 168, 167, 149, 150, 148, 130, 131, 129, 112, 146, 145, 127, 139, 138, 120, 159, 158, 140, 163, 161, 143, 161, 159, 144, 146, 144, 129, 156, 154, 138, 168, 166, 151, 142, 139, 126, 158, 155, 145, 147, 145, 134, 142, 139, 128, 123, 121, 108, 127, 124, 113, 131, 128, 118, 113, 113, 100, 104, 104, 90, 106, 108, 94, 98, 100, 88, 95, 97, 85, 94, 96, 84, 92, 94, 84, 107, 109, 99, 90, 91, 82, 90, 91, 82, 90, 91, 84, 102, 104, 94, 87, 90, 82, 69, 73, 65, 96, 100, 92, 86, 90, 79, 85, 87, 77, 84, 85, 76, 81, 83, 73, 87, 89, 79, 83, 84, 75, 69, 73, 63, 88, 90, 80, 79, 83, 72, 79, 83, 72, 80, 84, 73, 81, 85, 75, 69, 73, 63, 81, 85, 75, 80, 84, 73, 78, 81, 71, 79, 82, 74, 83, 87, 79, 76, 80, 72, 76, 80, 72, 76, 82, 73, 81, 85, 77, 73, 76, 68, 82, 86, 78, 80, 83, 75, 79, 82, 74, 81, 85, 77, 71, 74, 66, 80, 83, 75, 83, 87, 79, 66, 69, 62, 79, 85, 77, 81, 87, 78, 76, 82, 73, 79, 85, 77, 81, 87, 78, 89, 93, 85, 85, 88, 80, 88, 92, 82, 90, 94, 84, 94, 98, 87, 88, 92, 82, 94, 98, 87, 93, 97, 86, 102, 106, 96, 102, 106, 96, 101, 105, 94, 111, 112, 103, 104, 106, 94, 107, 111, 100, 108, 110, 98, 101, 103, 91, 108, 110, 98, 121, 123, 111, 112, 114, 102, 115, 117, 105, 118, 120, 107, 112, 114, 102, 114, 116, 104, 116, 118, 108, 114, 116, 104, 119, 121, 109, 120, 122, 110, 131, 133, 121, 122, 126, 113, 121, 125, 112, 136, 140, 127, 126, 128, 116, 133, 135, 123, 134, 136, 124, 125, 127, 114, 128, 130, 118, 134, 136, 124, 134, 136, 124, 127, 129, 117, 137, 140, 125, 141, 143, 129, 141, 143, 129, 140, 142, 128, 134, 136, 122, 130, 133, 118, 148, 150, 136, 140, 142, 128, 133, 135, 123, 131, 133, 121, 153, 155, 142, 4, 8, 0, 7, 10, 2, 2, 4, 0, 18, 22, 14, 54, 58, 50, 17, 20, 15, 39, 43, 35, 86, 90, 79, 125, 127, 112, 152, 152, 136, 191, 192, 174, 155, 156, 140, 151, 151, 135, 160, 161, 142, 161, 161, 145, 168, 168, 152, 174, 175, 156, 161, 164, 145, 165, 168, 149, 157, 160, 141, 172, 175, 156, 153, 159, 139, 164, 169, 149, 150, 155, 137, 150, 154, 139, 170, 174, 159, 158, 163, 147, 135, 139, 124, 101, 105, 92, 90, 97, 83, 71, 78, 66, 36, 43, 32, 52, 57, 49, 50, 57, 46, 47, 53, 42, 41, 47, 38, 54, 60, 51, 55, 61, 52, 70, 76, 67, 59, 64, 56, 67, 71, 63, 51, 54, 46, 53, 57, 49, 33, 37, 29, 0, 0, 0, 31, 35, 27, 75, 79, 69, 79, 86, 75, 82, 88, 77, 95, 101, 90, 90, 96, 85, 112, 118, 107, 82, 88, 77, 64, 70, 62, 70, 77, 65, 71, 78, 66, 72, 78, 70, 105, 111, 102, 70, 77, 65, 71, 77, 68, 84, 90, 81, 86, 92, 84, 85, 88, 80, 97, 101, 93, 100, 103, 95, 109, 113, 105, 100, 103, 95, 93, 96, 88, 93, 96, 88, 95, 97, 89, 144, 147, 139, 75, 79, 71, 107, 110, 102, 89, 93, 85, 55, 56, 49, 8, 9, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 66, 57, 80, 79, 70, 124, 123, 116, 137, 136, 127, 133, 132, 124, 156, 156, 147, 146, 145, 136, 154, 154, 142, 153, 152, 141, 149, 149, 138, 163, 160, 149, 138, 135, 125, 155, 152, 141, 139, 133, 124, 143, 140, 129, 136, 133, 123, 141, 138, 127, 136, 131, 121, 131, 128, 118, 137, 135, 122, 142, 139, 126, 149, 146, 133, 130, 128, 115, 143, 140, 128, 144, 141, 129, 142, 139, 126, 127, 124, 111, 137, 135, 122, 137, 135, 122, 129, 126, 116, 125, 123, 112, 134, 131, 120, 144, 141, 131, 157, 154, 144, 165, 162, 152, 164, 161, 151, 150, 147, 136, 101, 98, 90, 29, 26, 18, 104, 106, 90, 92, 94, 80, 100, 102, 90, 99, 101, 89, 101, 103, 91, 98, 100, 88, 95, 99, 89, 89, 93, 83, 87, 89, 79, 88, 92, 82, 87, 91, 80, 89, 93, 85, 80, 84, 73, 90, 94, 84, 89, 93, 83, 85, 87, 77, 74, 76, 66, 93, 95, 85, 88, 90, 80, 83, 84, 75, 81, 83, 73, 80, 84, 73, 83, 87, 77, 83, 87, 77, 76, 80, 70, 75, 79, 69, 82, 86, 76, 88, 92, 82, 81, 85, 75, 74, 78, 68, 79, 83, 72, 71, 74, 66, 74, 78, 70, 75, 81, 72, 72, 75, 67, 74, 80, 71, 72, 78, 70, 78, 81, 73, 74, 78, 70, 80, 83, 75, 79, 82, 74, 76, 80, 72, 79, 82, 74, 80, 83, 75, 74, 78, 70, 78, 84, 75, 75, 81, 72, 82, 88, 79, 79, 85, 77, 79, 85, 77, 84, 90, 81, 83, 87, 79, 87, 91, 80, 90, 94, 84, 88, 92, 82, 95, 99, 89, 92, 95, 85, 104, 108, 98, 94, 98, 85, 95, 99, 89, 106, 108, 96, 100, 104, 93, 99, 102, 92, 99, 100, 91, 105, 106, 97, 109, 111, 101, 114, 116, 104, 109, 111, 101, 114, 116, 106, 111, 113, 100, 118, 120, 107, 114, 116, 104, 111, 113, 100, 122, 124, 112, 119, 121, 109, 120, 122, 110, 116, 118, 106, 114, 116, 104, 116, 120, 107, 122, 126, 113, 123, 125, 113, 123, 127, 114, 127, 131, 118, 129, 131, 119, 136, 138, 126, 131, 133, 121, 133, 135, 123, 137, 139, 127, 128, 130, 116, 135, 137, 123, 142, 144, 130, 138, 141, 126, 138, 141, 126, 141, 143, 129, 142, 144, 130, 137, 140, 125, 138, 141, 126, 135, 137, 123, 135, 137, 125, 141, 143, 131, 15, 19, 8, 15, 18, 10, 51, 54, 46, 2, 4, 0, 21, 24, 16, 24, 28, 20, 42, 45, 37, 87, 91, 80, 76, 78, 65, 175, 175, 159, 149, 150, 134, 176, 176, 160, 137, 137, 121, 156, 157, 141, 165, 165, 149, 155, 156, 140, 184, 186, 172, 159, 162, 147, 168, 170, 156, 151, 156, 140, 109, 114, 98, 90, 95, 80, 79, 86, 72, 64, 71, 57, 67, 73, 62, 53, 59, 48, 56, 63, 51, 48, 56, 46, 56, 64, 54, 42, 48, 39, 63, 70, 58, 51, 59, 50, 59, 64, 56, 47, 53, 44, 62, 70, 60, 54, 60, 51, 50, 56, 48, 53, 59, 50, 120, 126, 117, 80, 83, 75, 132, 136, 126, 93, 100, 89, 62, 66, 58, 72, 76, 65, 0, 0, 0, 0, 0, 0, 81, 87, 76, 111, 117, 106, 75, 81, 70, 93, 100, 89, 75, 81, 70, 73, 77, 66, 108, 112, 101, 88, 94, 85, 92, 98, 89, 120, 126, 117, 91, 97, 86, 79, 85, 77, 98, 104, 95, 90, 96, 87, 88, 94, 85, 76, 82, 73, 103, 109, 100, 106, 109, 101, 92, 95, 87, 71, 74, 68, 28, 31, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 57, 51, 122, 123, 116, 162, 161, 155, 161, 159, 156, 159, 157, 153, 151, 149, 145, 163, 162, 158, 171, 167, 162, 139, 136, 130, 156, 152, 147, 160, 157, 151, 146, 143, 137, 156, 152, 147, 128, 127, 121, 173, 169, 164, 149, 145, 137, 127, 123, 115, 160, 157, 149, 155, 151, 143, 149, 145, 137, 150, 147, 139, 159, 156, 148, 133, 127, 120, 123, 120, 110, 129, 126, 118, 130, 127, 117, 134, 131, 120, 124, 121, 113, 127, 124, 113, 122, 119, 109, 130, 127, 117, 151, 148, 138, 178, 175, 164, 152, 149, 141, 75, 72, 64, 32, 29, 21, 0, 0, 0, 40, 37, 29, 71, 67, 62, 36, 32, 27, 42, 38, 32, 161, 158, 154, 147, 143, 140, 202, 199, 193, 236, 232, 227, 222, 219, 211, 221, 218, 210, 223, 220, 212, 95, 98, 83, 98, 100, 88, 104, 106, 94, 100, 102, 90, 91, 92, 83, 98, 99, 90, 93, 97, 86, 93, 97, 86, 92, 95, 85, 83, 87, 79, 87, 91, 80, 87, 91, 80, 89, 93, 85, 87, 91, 80, 98, 99, 90, 86, 88, 78, 91, 92, 83, 87, 89, 79, 84, 85, 76, 82, 86, 76, 82, 86, 76, 85, 88, 78, 78, 81, 71, 83, 87, 77, 94, 98, 87, 75, 79, 69, 83, 87, 77, 71, 75, 64, 79, 83, 72, 82, 86, 76, 72, 76, 65, 69, 75, 64, 64, 70, 62, 75, 81, 72, 69, 75, 66, 75, 79, 71, 63, 69, 60, 89, 93, 85, 75, 79, 71, 79, 82, 74, 83, 87, 79, 83, 87, 79, 75, 79, 71, 72, 75, 67, 87, 90, 82, 81, 87, 78, 71, 77, 68, 75, 81, 72, 84, 90, 81, 86, 92, 84, 82, 88, 79, 110, 116, 105, 86, 92, 84, 88, 92, 82, 86, 89, 81, 97, 101, 93, 87, 91, 80, 89, 93, 83, 92, 95, 85, 110, 114, 104, 106, 109, 99, 103, 107, 97, 100, 104, 93, 101, 103, 93, 106, 108, 98, 105, 106, 97, 102, 104, 94, 115, 117, 107, 112, 113, 104, 108, 110, 100, 116, 118, 108, 116, 118, 108, 117, 121, 111, 118, 119, 110, 116, 118, 108, 118, 119, 110, 123, 125, 113, 127, 129, 117, 128, 130, 118, 123, 125, 113, 130, 132, 120, 126, 128, 116, 127, 129, 117, 131, 133, 121, 133, 135, 123, 151, 153, 141, 141, 143, 129, 131, 134, 119, 131, 134, 119, 155, 157, 145, 142, 144, 130, 135, 137, 123, 140, 142, 128, 128, 130, 116, 148, 150, 136, 142, 144, 130, 141, 143, 129, 143, 145, 131, 145, 147, 135, 131, 133, 121, 50, 54, 43, 12, 16, 8, 35, 38, 30, 0, 0, 0, 0, 0, 0, 40, 44, 36, 39, 43, 35, 90, 94, 86, 42, 43, 34, 207, 209, 197, 191, 192, 176, 175, 175, 161, 166, 166, 152, 135, 135, 122, 91, 93, 81, 45, 47, 35, 51, 55, 44, 59, 63, 52, 59, 63, 52, 41, 47, 36, 48, 54, 43, 72, 79, 68, 50, 56, 48, 62, 68, 57, 56, 62, 53, 55, 61, 52, 59, 64, 56, 61, 67, 58, 56, 62, 53, 59, 65, 54, 61, 67, 56, 68, 74, 63, 53, 59, 48, 64, 71, 60, 72, 79, 68, 71, 78, 66, 66, 72, 61, 90, 94, 84, 72, 76, 65, 109, 113, 103, 85, 88, 78, 109, 113, 103, 93, 97, 86, 92, 95, 85, 19, 23, 13, 0, 0, 0, 114, 118, 107, 116, 120, 110, 125, 129, 119, 117, 123, 112, 109, 113, 103, 89, 95, 84, 109, 115, 104, 99, 102, 94, 82, 88, 79, 76, 80, 72, 26, 32, 23, 31, 35, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 0, 91, 90, 86, 139, 138, 131, 157, 153, 148, 143, 139, 134, 151, 147, 142, 153, 150, 144, 153, 146, 142, 152, 149, 143, 131, 128, 122, 144, 142, 136, 144, 142, 136, 149, 148, 142, 150, 146, 143, 142, 141, 137, 153, 149, 148, 157, 152, 152, 141, 137, 133, 145, 141, 138, 150, 146, 143, 151, 147, 144, 139, 135, 134, 166, 162, 161, 142, 137, 136, 142, 137, 136, 144, 139, 139, 137, 133, 130, 132, 128, 125, 130, 126, 123, 139, 135, 132, 142, 138, 132, 170, 166, 159, 177, 174, 163, 110, 108, 95, 44, 41, 29, 0, 0, 0, 220, 218, 202, 106, 101, 87, 102, 99, 89, 196, 190, 185, 252, 249, 243, 245, 242, 236, 249, 245, 240, 242, 238, 233, 233, 229, 223, 236, 232, 227, 229, 225, 222, 235, 231, 228, 235, 231, 228, 233, 229, 225, 234, 230, 226, 233, 229, 225, 227, 223, 220, 233, 229, 225, 231, 227, 224, 227, 223, 218, 224, 221, 215, 221, 217, 212, 108, 112, 99, 105, 107, 95, 99, 101, 89, 100, 102, 90, 97, 101, 91, 89, 93, 83, 97, 101, 91, 89, 93, 83, 87, 90, 82, 85, 88, 80, 90, 91, 84, 82, 86, 78, 91, 92, 85, 87, 89, 81, 88, 90, 80, 80, 82, 72, 79, 83, 72, 82, 86, 76, 80, 82, 72, 80, 84, 73, 69, 70, 61, 60, 62, 52, 76, 80, 70, 74, 78, 68, 73, 75, 65, 80, 84, 73, 80, 84, 73, 73, 77, 66, 71, 75, 64, 74, 78, 68, 81, 85, 75, 64, 67, 59, 101, 104, 96, 82, 86, 78, 68, 74, 65, 71, 77, 68, 75, 79, 71, 76, 82, 73, 89, 93, 85, 81, 85, 77, 82, 86, 78, 76, 80, 72, 74, 78, 70, 80, 83, 75, 81, 85, 77, 82, 86, 78, 81, 85, 77, 85, 88, 80, 78, 84, 75, 90, 96, 87, 89, 95, 86, 92, 98, 89, 85, 91, 82, 88, 94, 83, 90, 96, 87, 86, 89, 81, 94, 98, 87, 100, 104, 93, 107, 111, 100, 100, 104, 93, 101, 105, 94, 100, 104, 93, 104, 108, 98, 106, 109, 99, 107, 111, 98, 114, 116, 104, 113, 114, 105, 111, 112, 103, 113, 115, 103, 115, 117, 107, 112, 113, 104, 118, 122, 112, 118, 122, 112, 122, 124, 114, 123, 125, 115, 119, 121, 109, 136, 138, 126, 123, 125, 113, 116, 118, 106, 126, 128, 116, 126, 128, 116, 127, 129, 117, 133, 135, 123, 125, 130, 117, 133, 135, 123, 134, 136, 122, 131, 134, 119, 141, 143, 129, 127, 129, 115, 136, 138, 124, 131, 134, 119, 143, 145, 131, 137, 140, 125, 147, 149, 134, 143, 145, 131, 138, 141, 126, 143, 145, 131, 143, 145, 131, 140, 142, 128, 144, 147, 132, 103, 107, 97, 17, 21, 13, 48, 52, 44, 0, 0, 0, 4, 8, 0, 101, 104, 96, 44, 47, 39, 87, 91, 80, 140, 141, 132, 66, 68, 58, 56, 57, 48, 64, 66, 56, 57, 61, 50, 61, 65, 57, 44, 48, 37, 67, 71, 63, 48, 54, 45, 55, 61, 52, 78, 85, 73, 55, 61, 52, 66, 71, 63, 61, 67, 56, 84, 91, 79, 52, 58, 47, 48, 54, 43, 48, 54, 43, 66, 72, 61, 68, 74, 63, 60, 66, 55, 69, 75, 64, 71, 78, 66, 69, 75, 64, 68, 74, 63, 81, 87, 76, 85, 92, 80, 76, 82, 71, 95, 101, 90, 76, 80, 70, 90, 94, 84, 97, 101, 91, 107, 111, 100, 108, 112, 101, 111, 115, 105, 83, 87, 77, 89, 93, 83, 0, 0, 0, 36, 40, 29, 72, 76, 65, 29, 33, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 6, 0, 103, 101, 95, 147, 146, 139, 152, 150, 146, 151, 149, 145, 123, 121, 117, 152, 150, 146, 134, 133, 129, 155, 151, 147, 145, 141, 138, 139, 135, 132, 156, 150, 147, 144, 138, 136, 155, 149, 146, 147, 140, 138, 148, 142, 137, 150, 144, 139, 139, 132, 130, 143, 139, 136, 145, 141, 138, 147, 143, 140, 144, 140, 137, 141, 136, 135, 135, 130, 129, 149, 144, 143, 141, 136, 135, 142, 137, 136, 136, 131, 131, 146, 142, 141, 152, 148, 145, 190, 186, 182, 180, 176, 173, 113, 109, 105, 32, 30, 26, 52, 48, 45, 58, 54, 49, 25, 22, 14, 186, 183, 171, 200, 197, 187, 250, 246, 241, 227, 221, 216, 233, 229, 223, 225, 222, 216, 215, 211, 206, 222, 218, 213, 228, 224, 219, 224, 220, 217, 220, 216, 212, 221, 217, 214, 223, 219, 216, 224, 220, 217, 213, 209, 205, 235, 231, 228, 234, 230, 226, 233, 229, 225, 235, 231, 228, 228, 224, 221, 231, 227, 224, 230, 226, 223, 229, 225, 222, 231, 227, 224, 230, 226, 223, 229, 225, 222, 225, 222, 218, 228, 224, 219, 227, 223, 218, 102, 106, 94, 106, 108, 96, 94, 98, 87, 97, 102, 89, 96, 100, 90, 92, 95, 85, 90, 94, 86, 87, 90, 82, 87, 90, 82, 89, 93, 85, 85, 88, 80, 88, 92, 84, 86, 87, 80, 84, 85, 78, 84, 85, 78, 76, 77, 68, 80, 82, 72, 87, 89, 79, 84, 85, 76, 83, 84, 75, 80, 82, 72, 80, 82, 72, 80, 82, 72, 74, 78, 68, 66, 68, 58, 74, 78, 68, 88, 90, 80, 85, 87, 77, 74, 78, 68, 73, 75, 65, 74, 78, 68, 80, 83, 75, 72, 78, 70, 77, 83, 74, 78, 81, 73, 68, 74, 65, 75, 81, 72, 73, 76, 68, 75, 79, 71, 78, 81, 73, 75, 79, 71, 87, 90, 82, 87, 90, 82, 80, 83, 75, 89, 93, 85, 88, 92, 84, 82, 86, 78, 85, 88, 80, 78, 84, 75, 86, 92, 84, 84, 90, 81, 76, 82, 73, 84, 90, 81, 91, 97, 88, 90, 94, 84, 92, 95, 85, 93, 97, 86, 97, 101, 91, 97, 101, 91, 97, 101, 91, 99, 102, 92, 100, 104, 93, 106, 109, 99, 94, 98, 87, 110, 114, 102, 104, 109, 96, 107, 109, 97, 113, 115, 103, 113, 114, 105, 107, 109, 99, 112, 113, 104, 121, 123, 113, 120, 121, 112, 120, 121, 112, 115, 117, 107, 126, 128, 116, 128, 130, 118, 128, 130, 118, 133, 135, 123, 128, 130, 118, 130, 132, 120, 131, 133, 121, 131, 133, 121, 127, 129, 115, 134, 136, 124, 136, 138, 124, 130, 133, 118, 149, 151, 137, 119, 121, 107, 125, 127, 112, 135, 137, 123, 149, 151, 137, 150, 153, 138, 168, 170, 156, 154, 156, 142, 150, 153, 138, 144, 147, 132, 130, 133, 118, 124, 129, 114, 138, 140, 128, 114, 118, 107, 7, 10, 0, 65, 66, 59, 0, 0, 0, 2, 4, 0, 58, 61, 53, 50, 53, 45, 71, 73, 63, 73, 75, 65, 51, 55, 44, 55, 59, 51, 61, 65, 55, 83, 87, 77, 62, 66, 56, 61, 65, 57, 62, 68, 59, 55, 61, 52, 78, 85, 73, 103, 109, 98, 67, 73, 62, 59, 65, 54, 92, 99, 85, 74, 80, 69, 93, 100, 86, 120, 123, 113, 75, 79, 69, 92, 99, 87, 82, 88, 77, 155, 161, 150, 90, 97, 83, 103, 110, 96, 93, 100, 86, 114, 118, 105, 89, 94, 81, 86, 93, 82, 114, 118, 107, 81, 85, 75, 103, 107, 97, 87, 91, 80, 88, 92, 82, 23, 27, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 92, 91, 85, 149, 148, 140, 159, 158, 149, 170, 169, 163, 133, 132, 126, 165, 161, 156, 178, 177, 171, 141, 137, 131, 159, 156, 150, 173, 169, 166, 142, 138, 134, 144, 140, 137, 134, 130, 126, 139, 135, 134, 142, 137, 136, 146, 139, 139, 136, 130, 128, 132, 125, 123, 134, 130, 126, 140, 133, 131, 142, 135, 135, 149, 143, 140, 161, 154, 152, 175, 169, 164, 139, 133, 128, 144, 138, 134, 129, 125, 120, 158, 154, 149, 174, 171, 165, 138, 134, 131, 37, 33, 30, 39, 35, 32, 18, 14, 13, 15, 10, 10, 82, 78, 79, 168, 164, 165, 235, 230, 232, 251, 246, 250, 241, 239, 240, 243, 238, 242, 238, 236, 236, 236, 233, 234, 238, 234, 235, 213, 208, 209, 235, 230, 232, 221, 216, 218, 227, 222, 223, 220, 215, 214, 234, 229, 230, 225, 221, 220, 225, 223, 222, 228, 223, 223, 225, 222, 218, 223, 219, 216, 229, 225, 222, 224, 220, 217, 231, 227, 224, 228, 224, 221, 219, 215, 209, 224, 220, 217, 229, 225, 222, 236, 232, 229, 234, 230, 226, 234, 230, 226, 231, 227, 224, 233, 229, 225, 228, 224, 221, 230, 226, 223, 231, 227, 224, 230, 226, 223, 229, 225, 222, 229, 225, 222, 222, 218, 215, 219, 215, 211, 105, 106, 97, 100, 102, 92, 96, 100, 90, 100, 104, 93, 102, 106, 96, 104, 108, 100, 92, 95, 87, 94, 96, 88, 90, 94, 86, 87, 89, 81, 87, 89, 81, 86, 88, 78, 84, 85, 78, 87, 89, 81, 81, 83, 75, 87, 89, 79, 88, 90, 82, 79, 81, 71, 90, 91, 82, 91, 92, 83, 75, 79, 69, 81, 83, 73, 73, 75, 65, 71, 75, 64, 72, 74, 64, 68, 72, 62, 69, 70, 61, 87, 89, 79, 48, 52, 42, 76, 77, 68, 68, 72, 64, 71, 74, 66, 71, 74, 66, 68, 72, 64, 68, 72, 64, 83, 87, 79, 72, 75, 67, 97, 101, 93, 78, 81, 73, 80, 83, 75, 79, 82, 74, 81, 85, 77, 78, 81, 73, 82, 86, 78, 83, 87, 79, 87, 90, 82, 74, 78, 70, 81, 85, 77, 81, 87, 78, 83, 87, 79, 83, 89, 80, 83, 89, 80, 91, 97, 88, 97, 101, 93, 93, 96, 88, 92, 95, 87, 100, 103, 95, 90, 94, 86, 94, 98, 87, 97, 101, 91, 102, 106, 96, 102, 106, 96, 103, 107, 97, 102, 104, 94, 98, 100, 88, 111, 112, 103, 101, 103, 91, 112, 114, 102, 113, 114, 105, 113, 115, 103, 113, 114, 105, 123, 125, 115, 121, 123, 111, 116, 118, 108, 127, 127, 116, 118, 117, 106, 100, 102, 90, 138, 137, 126, 128, 130, 118, 137, 136, 123, 126, 128, 114, 145, 147, 135, 168, 168, 154, 164, 166, 152, 169, 171, 157, 178, 178, 165, 182, 184, 169, 158, 161, 146, 158, 161, 146, 128, 130, 116, 127, 129, 115, 113, 115, 101, 102, 105, 90, 91, 93, 79, 102, 105, 90, 69, 71, 57, 79, 81, 67, 88, 90, 78, 79, 81, 69, 90, 92, 80, 73, 77, 66, 65, 69, 58, 31, 35, 25, 45, 48, 41, 0, 0, 0, 48, 49, 42, 75, 79, 69, 105, 107, 95, 63, 65, 53, 63, 65, 53, 64, 68, 57, 92, 95, 85, 66, 70, 60, 69, 73, 63, 72, 76, 65, 63, 70, 58, 61, 67, 56, 78, 85, 73, 57, 64, 52, 68, 74, 63, 90, 96, 85, 96, 102, 91, 114, 121, 107, 99, 103, 90, 117, 121, 109, 116, 120, 107, 94, 98, 85, 86, 93, 80, 86, 93, 80, 68, 75, 61, 96, 102, 89, 136, 143, 129, 70, 77, 65, 14, 21, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 23, 13, 148, 149, 140, 170, 169, 161, 154, 153, 145, 169, 168, 160, 193, 190, 182, 167, 166, 157, 138, 135, 127, 149, 145, 137, 153, 152, 143, 163, 162, 154, 146, 143, 135, 147, 144, 138, 142, 138, 132, 145, 142, 136, 157, 153, 150, 155, 150, 149, 147, 143, 140, 128, 123, 123, 141, 136, 135, 134, 129, 128, 131, 127, 126, 131, 127, 126, 136, 129, 129, 131, 126, 128, 130, 124, 124, 126, 119, 119, 157, 151, 149, 191, 185, 182, 143, 137, 134, 16, 11, 4, 137, 115, 100, 33, 19, 8, 124, 116, 110, 153, 146, 144, 206, 201, 200, 251, 247, 246, 255, 251, 251, 248, 243, 244, 237, 232, 234, 236, 231, 233, 240, 235, 236, 240, 235, 236, 223, 220, 221, 237, 234, 235, 235, 230, 234, 213, 207, 211, 224, 221, 224, 233, 230, 234, 239, 236, 239, 242, 237, 241, 255, 255, 255, 209, 204, 206, 218, 216, 216, 232, 230, 230, 223, 220, 221, 231, 229, 227, 211, 209, 207, 212, 210, 209, 220, 218, 217, 224, 222, 218, 217, 215, 211, 218, 216, 212, 220, 216, 212, 217, 213, 210, 230, 226, 223, 228, 224, 221, 228, 224, 221, 229, 225, 222, 231, 227, 224, 233, 229, 225, 233, 229, 225, 233, 229, 225, 230, 226, 223, 230, 226, 223, 231, 227, 224, 223, 219, 216, 227, 223, 220, 222, 218, 215, 223, 219, 216, 225, 222, 218, 221, 217, 214, 106, 109, 101, 96, 100, 92, 90, 94, 86, 97, 101, 93, 93, 97, 86, 93, 96, 88, 90, 91, 84, 87, 90, 82, 89, 93, 85, 90, 91, 84, 81, 83, 75, 88, 90, 82, 84, 85, 78, 81, 83, 75, 84, 85, 78, 80, 81, 74, 85, 86, 79, 78, 80, 70, 80, 82, 72, 73, 75, 65, 78, 80, 70, 76, 77, 68, 79, 81, 71, 80, 82, 72, 73, 75, 65, 79, 81, 71, 81, 83, 73, 83, 84, 75, 82, 86, 76, 86, 87, 80, 73, 76, 68, 76, 80, 72, 74, 78, 70, 75, 79, 71, 72, 75, 67, 71, 74, 66, 78, 81, 73, 75, 79, 71, 80, 83, 75, 61, 65, 57, 74, 78, 70, 79, 82, 74, 76, 80, 72, 75, 79, 69, 85, 88, 78, 79, 82, 74, 78, 84, 75, 82, 88, 79, 83, 89, 80, 81, 85, 77, 82, 88, 79, 86, 92, 84, 86, 92, 84, 86, 92, 84, 94, 98, 87, 94, 98, 87, 96, 100, 90, 96, 100, 90, 93, 97, 86, 101, 105, 94, 101, 103, 93, 95, 97, 87, 102, 104, 94, 104, 105, 96, 107, 109, 99, 108, 110, 98, 113, 115, 103, 120, 122, 110, 105, 107, 95, 129, 131, 119, 130, 129, 118, 128, 128, 117, 156, 156, 145, 165, 164, 153, 156, 156, 143, 147, 147, 133, 171, 171, 158, 178, 178, 165, 146, 146, 132, 147, 147, 133, 123, 123, 109, 146, 146, 132, 123, 123, 109, 106, 106, 95, 99, 99, 86, 105, 105, 92, 79, 81, 69, 84, 86, 72, 102, 105, 90, 86, 89, 74, 83, 85, 70, 83, 85, 70, 91, 93, 79, 73, 75, 63, 101, 103, 91, 100, 102, 88, 87, 89, 77, 85, 87, 75, 88, 90, 78, 78, 80, 68, 76, 80, 70, 93, 97, 86, 47, 51, 41, 51, 55, 44, 0, 0, 0, 73, 77, 66, 121, 123, 113, 102, 104, 92, 74, 76, 64, 100, 102, 90, 75, 80, 67, 74, 78, 65, 111, 116, 103, 113, 117, 104, 111, 116, 103, 92, 96, 83, 95, 99, 89, 119, 126, 112, 100, 107, 94, 111, 118, 104, 105, 112, 98, 112, 119, 103, 116, 121, 105, 107, 111, 98, 119, 121, 109, 106, 110, 97, 37, 41, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 125, 113, 145, 144, 133, 153, 152, 141, 158, 156, 143, 191, 188, 175, 182, 180, 167, 167, 165, 152, 178, 175, 164, 160, 158, 147, 174, 171, 161, 145, 142, 134, 159, 156, 148, 146, 143, 135, 153, 150, 142, 170, 166, 160, 143, 139, 134, 156, 152, 147, 145, 142, 136, 145, 141, 140, 146, 141, 143, 147, 142, 146, 136, 131, 133, 144, 139, 139, 144, 139, 139, 143, 138, 138, 143, 138, 138, 182, 178, 177, 172, 168, 167, 63, 58, 57, 7, 2, 1, 54, 50, 49, 17, 13, 12, 104, 100, 99, 219, 212, 214, 248, 241, 241, 252, 245, 245, 245, 238, 238, 240, 233, 235, 238, 231, 231, 238, 230, 233, 235, 228, 228, 242, 235, 235, 241, 236, 237, 237, 232, 234, 236, 232, 231, 240, 235, 236, 238, 234, 235, 241, 236, 237, 240, 234, 238, 240, 234, 238, 240, 234, 238, 238, 235, 238, 237, 234, 237, 237, 234, 237, 242, 240, 243, 242, 240, 243, 239, 237, 237, 234, 232, 233, 237, 234, 235, 234, 232, 233, 237, 234, 235, 225, 223, 223, 229, 226, 227, 224, 222, 220, 224, 222, 220, 205, 203, 202, 227, 226, 222, 217, 215, 211, 192, 191, 187, 215, 213, 209, 224, 222, 218, 222, 220, 216, 229, 227, 223, 226, 225, 221, 230, 228, 224, 230, 228, 224, 222, 218, 215, 224, 222, 218, 239, 237, 233, 242, 241, 237, 255, 254, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 201, 197, 114, 110, 107, 54, 50, 47, 113, 116, 110, 99, 100, 93, 94, 97, 89, 90, 94, 86, 98, 99, 90, 94, 97, 89, 95, 99, 89, 88, 90, 80, 101, 103, 93, 93, 95, 85, 83, 84, 75, 79, 82, 74, 81, 83, 75, 78, 79, 72, 86, 87, 80, 77, 78, 71, 80, 81, 74, 78, 79, 72, 78, 79, 72, 78, 79, 72, 71, 73, 63, 81, 83, 73, 81, 83, 73, 77, 78, 69, 72, 74, 64, 72, 74, 64, 76, 77, 68, 76, 77, 68, 74, 78, 68, 73, 74, 67, 69, 73, 65, 72, 75, 67, 81, 85, 77, 94, 97, 89, 76, 80, 72, 83, 87, 81, 73, 76, 68, 84, 85, 78, 71, 74, 66, 76, 80, 72, 74, 78, 70, 81, 85, 77, 81, 85, 77, 80, 83, 75, 87, 90, 82, 80, 83, 75, 83, 87, 79, 80, 83, 75, 88, 92, 84, 85, 88, 80, 87, 90, 82, 88, 92, 84, 59, 63, 52, 85, 88, 80, 76, 80, 72, 85, 88, 78, 85, 88, 78, 76, 80, 70, 90, 94, 84, 94, 98, 87, 101, 103, 93, 119, 120, 111, 99, 100, 91, 88, 90, 80, 70, 70, 59, 95, 97, 85, 69, 71, 59, 63, 65, 53, 80, 82, 70, 80, 79, 68, 89, 88, 77, 80, 79, 68, 76, 76, 64, 87, 87, 73, 95, 95, 81, 83, 83, 69, 77, 77, 64, 85, 85, 72, 116, 116, 102, 103, 103, 89, 90, 90, 76, 101, 104, 89, 98, 100, 86, 105, 105, 92, 92, 94, 80, 109, 112, 97, 109, 112, 97, 107, 109, 95, 125, 127, 112, 104, 106, 92, 99, 101, 87, 87, 90, 75, 105, 107, 93, 107, 109, 95, 105, 107, 93, 105, 107, 93, 85, 87, 73, 95, 97, 85, 113, 115, 103, 84, 86, 74, 131, 135, 123, 132, 137, 124, 100, 104, 93, 12, 16, 6, 0, 0, 0, 59, 63, 52, 78, 80, 70, 122, 124, 112, 99, 101, 89, 116, 118, 106, 137, 140, 125, 114, 116, 104, 122, 127, 111, 106, 110, 95, 106, 110, 95, 125, 132, 116, 111, 116, 103, 95, 99, 86, 82, 89, 75, 19, 23, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 30, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 36, 24, 118, 120, 105, 159, 162, 145, 148, 150, 134, 183, 183, 167, 161, 161, 145, 189, 190, 171, 154, 155, 136, 153, 154, 135, 151, 150, 129, 165, 163, 146, 168, 166, 151, 163, 160, 147, 142, 139, 126, 171, 168, 156, 156, 153, 140, 142, 139, 128, 177, 174, 161, 142, 138, 130, 153, 150, 142, 156, 152, 147, 137, 133, 128, 138, 135, 129, 146, 142, 139, 132, 128, 125, 155, 151, 147, 165, 161, 156, 120, 116, 110, 25, 21, 18, 30, 26, 23, 79, 74, 74, 66, 62, 61, 208, 204, 203, 254, 249, 250, 252, 248, 249, 241, 236, 237, 240, 235, 236, 235, 230, 232, 236, 231, 233, 234, 229, 230, 236, 231, 233, 234, 229, 230, 233, 228, 229, 237, 232, 234, 237, 232, 234, 240, 233, 235, 239, 232, 234, 241, 234, 236, 240, 235, 236, 237, 232, 234, 237, 232, 234, 237, 232, 234, 238, 234, 235, 240, 235, 236, 240, 234, 238, 238, 234, 235, 237, 232, 236, 239, 236, 239, 236, 233, 236, 236, 233, 236, 236, 233, 236, 213, 211, 214, 220, 218, 221, 224, 221, 224, 231, 229, 229, 227, 225, 226, 230, 227, 228, 224, 221, 222, 226, 224, 225, 230, 227, 228, 230, 227, 228, 231, 229, 227, 231, 229, 227, 236, 234, 232, 247, 246, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 211, 205, 82, 81, 74, 55, 54, 48, 60, 58, 52, 53, 52, 45, 57, 56, 50, 62, 60, 56, 56, 55, 51, 64, 63, 59, 71, 70, 66, 71, 70, 66, 73, 71, 67, 66, 64, 60, 75, 73, 69, 75, 73, 71, 74, 72, 70, 78, 73, 72, 68, 66, 64, 123, 127, 117, 116, 120, 110, 103, 107, 97, 103, 107, 97, 102, 106, 96, 99, 102, 92, 102, 104, 94, 97, 98, 89, 94, 96, 86, 85, 87, 77, 88, 90, 80, 87, 89, 79, 86, 87, 80, 84, 85, 78, 77, 78, 71, 76, 77, 68, 74, 76, 68, 70, 71, 62, 83, 84, 75, 76, 77, 68, 72, 74, 64, 78, 79, 72, 65, 67, 57, 70, 71, 62, 77, 78, 69, 78, 80, 70, 67, 69, 60, 72, 74, 64, 69, 70, 61, 65, 66, 59, 73, 74, 67, 66, 67, 60, 65, 66, 59, 65, 66, 59, 53, 57, 49, 68, 72, 64, 62, 63, 56, 63, 64, 57, 49, 50, 43, 55, 56, 49, 56, 57, 50, 55, 59, 51, 49, 50, 43, 184, 185, 178, 43, 44, 37, 42, 43, 36, 57, 58, 51, 53, 57, 49, 42, 43, 36, 29, 30, 23, 41, 42, 35, 48, 49, 42, 40, 41, 34, 44, 45, 38, 43, 44, 37, 45, 49, 39, 37, 41, 30, 37, 41, 30, 39, 43, 33, 44, 46, 36, 47, 48, 39, 44, 46, 36, 31, 33, 23, 33, 34, 25, 47, 46, 35, 29, 31, 21, 47, 48, 36, 52, 54, 42, 60, 62, 50, 72, 74, 62, 69, 69, 57, 102, 101, 90, 92, 92, 81, 89, 89, 75, 88, 88, 74, 94, 93, 80, 78, 78, 65, 99, 99, 86, 111, 111, 97, 109, 109, 95, 100, 100, 87, 95, 95, 81, 84, 84, 70, 119, 119, 105, 113, 113, 100, 126, 126, 112, 136, 138, 124, 106, 108, 94, 108, 111, 96, 126, 128, 114, 147, 149, 134, 130, 133, 118, 113, 115, 101, 107, 109, 95, 112, 114, 100, 136, 138, 124, 129, 131, 117, 131, 134, 119, 125, 127, 112, 126, 128, 116, 133, 138, 125, 118, 123, 110, 129, 131, 121, 104, 105, 96, 0, 0, 0, 121, 123, 113, 163, 165, 153, 128, 130, 118, 113, 115, 101, 135, 137, 123, 142, 146, 131, 108, 112, 99, 73, 77, 64, 1, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 8, 0, 28, 30, 18, 134, 134, 123, 184, 184, 171, 189, 189, 175, 180, 180, 164, 177, 178, 162, 156, 157, 141, 181, 181, 165, 172, 170, 155, 193, 191, 176, 175, 173, 158, 160, 158, 143, 170, 168, 150, 159, 158, 140, 156, 154, 136, 156, 154, 138, 164, 162, 147, 136, 134, 119, 156, 153, 140, 152, 150, 137, 182, 180, 167, 155, 152, 139, 141, 138, 127, 134, 131, 120, 139, 136, 128, 178, 175, 167, 180, 177, 169, 36, 33, 25, 6, 3, 0, 35, 32, 19, 222, 220, 207, 207, 204, 196, 233, 229, 225, 241, 236, 235, 227, 222, 223, 236, 231, 233, 238, 234, 235, 240, 234, 238, 233, 228, 229, 238, 234, 235, 236, 231, 233, 238, 234, 235, 238, 234, 235, 236, 231, 233, 235, 230, 232, 235, 230, 232, 235, 230, 232, 236, 231, 233, 236, 231, 233, 236, 231, 233, 237, 233, 232, 234, 229, 230, 230, 225, 227, 236, 232, 231, 235, 230, 230, 236, 232, 231, 236, 231, 233, 236, 231, 233, 236, 231, 233, 237, 232, 234, 237, 232, 234, 234, 229, 230, 236, 231, 233, 237, 234, 235, 236, 233, 234, 236, 233, 234, 234, 232, 233, 229, 226, 227, 224, 221, 222, 238, 236, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 235, 231, 158, 156, 152, 119, 118, 114, 59, 57, 53, 60, 58, 54, 52, 50, 48, 52, 53, 48, 64, 63, 59, 59, 57, 53, 66, 64, 60, 67, 65, 61, 61, 59, 55, 83, 81, 77, 83, 81, 77, 70, 69, 65, 85, 86, 81, 78, 77, 73, 82, 80, 76, 80, 78, 74, 80, 78, 76, 85, 84, 80, 89, 87, 85, 77, 76, 72, 88, 86, 84, 83, 81, 77, 94, 92, 88, 82, 80, 76, 80, 78, 74, 94, 95, 90, 101, 105, 92, 120, 124, 111, 105, 106, 97, 116, 118, 108, 109, 111, 101, 128, 130, 120, 104, 105, 96, 109, 111, 101, 112, 113, 104, 105, 106, 97, 109, 111, 101, 83, 84, 75, 86, 88, 78, 66, 68, 58, 84, 85, 76, 72, 74, 64, 81, 83, 73, 80, 82, 72, 67, 69, 60, 64, 66, 56, 64, 66, 56, 59, 61, 51, 59, 61, 51, 62, 63, 54, 62, 63, 54, 57, 59, 49, 57, 59, 49, 55, 56, 47, 55, 56, 47, 84, 85, 78, 77, 78, 71, 53, 55, 48, 61, 60, 53, 38, 40, 32, 50, 51, 44, 58, 59, 52, 59, 61, 53, 47, 48, 41, 55, 56, 49, 29, 30, 23, 36, 35, 29, 38, 40, 32, 32, 31, 24, 31, 33, 25, 35, 34, 28, 31, 33, 25, 24, 26, 18, 49, 50, 43, 19, 20, 13, 33, 32, 25, 42, 43, 36, 35, 36, 29, 37, 38, 31, 35, 36, 29, 34, 35, 28, 47, 51, 43, 25, 29, 19, 38, 40, 30, 31, 33, 23, 44, 46, 36, 87, 86, 77, 43, 43, 34, 53, 52, 43, 53, 52, 43, 52, 51, 40, 42, 42, 31, 61, 60, 49, 75, 74, 63, 74, 73, 62, 76, 76, 64, 82, 82, 68, 103, 103, 89, 120, 117, 104, 145, 145, 131, 111, 109, 96, 122, 119, 107, 113, 114, 98, 130, 130, 114, 116, 116, 100, 96, 96, 80, 109, 109, 93, 113, 114, 98, 123, 123, 109, 131, 131, 115, 142, 143, 127, 126, 126, 112, 139, 139, 125, 121, 121, 108, 142, 143, 127, 159, 159, 145, 131, 134, 119, 125, 127, 112, 133, 135, 121, 125, 125, 111, 144, 143, 130, 144, 147, 132, 147, 149, 134, 135, 137, 125, 140, 142, 129, 137, 139, 127, 142, 144, 130, 140, 145, 132, 140, 142, 129, 168, 169, 160, 21, 24, 14, 0, 0, 0, 55, 56, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 67, 55, 144, 146, 134, 184, 186, 172, 194, 194, 180, 159, 159, 143, 191, 192, 176, 161, 161, 145, 160, 161, 142, 163, 164, 148, 165, 163, 146, 170, 168, 150, 172, 170, 153, 181, 179, 164, 182, 181, 163, 134, 131, 116, 147, 145, 130, 141, 138, 123, 152, 150, 135, 149, 147, 131, 188, 186, 171, 153, 151, 136, 157, 154, 142, 136, 133, 121, 155, 152, 139, 172, 169, 157, 190, 187, 174, 89, 87, 74, 14, 11, 0, 83, 80, 72, 22, 18, 13, 175, 171, 170, 255, 255, 254, 252, 248, 249, 236, 231, 233, 238, 234, 235, 238, 233, 237, 238, 233, 237, 240, 234, 238, 240, 234, 238, 234, 228, 232, 238, 233, 237, 236, 231, 235, 230, 225, 229, 236, 231, 233, 236, 231, 233, 237, 232, 234, 235, 230, 232, 238, 234, 235, 236, 231, 233, 236, 231, 233, 235, 230, 232, 235, 230, 232, 237, 232, 234, 234, 229, 230, 234, 229, 230, 236, 231, 233, 234, 229, 230, 235, 230, 232, 234, 229, 230, 235, 230, 230, 236, 232, 231, 236, 232, 231, 237, 233, 232, 241, 236, 235, 236, 232, 231, 228, 223, 223, 229, 225, 224, 255, 251, 251, 255, 255, 255, 255, 255, 255, 216, 214, 212, 88, 86, 82, 96, 94, 90, 68, 66, 62, 66, 64, 62, 62, 60, 60, 69, 67, 67, 70, 68, 69, 77, 75, 74, 70, 68, 67, 75, 72, 73, 76, 74, 74, 66, 67, 64, 73, 74, 71, 73, 71, 69, 78, 76, 75, 70, 68, 67, 82, 80, 76, 99, 98, 94, 95, 93, 87, 89, 88, 81, 76, 75, 68, 99, 98, 92, 91, 90, 86, 96, 95, 88, 78, 77, 73, 104, 102, 98, 92, 93, 88, 103, 101, 97, 92, 91, 87, 95, 93, 89, 91, 90, 86, 105, 106, 101, 91, 92, 85, 102, 100, 94, 78, 79, 72, 95, 97, 89, 79, 83, 72, 117, 117, 103, 120, 122, 110, 120, 120, 109, 112, 114, 102, 111, 113, 100, 113, 115, 103, 113, 114, 105, 118, 120, 107, 102, 104, 94, 91, 92, 83, 95, 97, 87, 86, 88, 76, 90, 91, 82, 91, 92, 83, 85, 87, 77, 67, 69, 60, 73, 75, 65, 78, 80, 70, 69, 70, 61, 71, 73, 63, 83, 84, 75, 72, 74, 64, 55, 56, 47, 81, 83, 73, 64, 66, 56, 62, 63, 54, 57, 59, 49, 53, 55, 46, 44, 45, 38, 45, 47, 39, 97, 98, 91, 72, 73, 66, 60, 62, 54, 43, 42, 36, 52, 54, 46, 47, 48, 41, 37, 38, 31, 60, 62, 54, 40, 41, 34, 33, 34, 27, 49, 50, 43, 52, 54, 46, 35, 34, 28, 51, 52, 45, 66, 64, 58, 46, 45, 38, 46, 45, 38, 46, 45, 38, 51, 52, 45, 98, 97, 91, 39, 38, 31, 49, 50, 43, 45, 47, 39, 48, 47, 41, 47, 48, 39, 36, 38, 28, 56, 57, 48, 52, 54, 44, 66, 68, 56, 63, 65, 53, 49, 49, 38, 92, 92, 83, 90, 90, 78, 96, 95, 84, 90, 90, 78, 90, 90, 78, 108, 107, 94, 113, 113, 102, 104, 104, 90, 104, 104, 90, 128, 125, 112, 106, 103, 90, 127, 124, 111, 117, 115, 102, 145, 143, 128, 108, 108, 92, 153, 153, 139, 193, 191, 176, 134, 134, 121, 135, 135, 122, 130, 129, 116, 147, 147, 133, 142, 142, 129, 151, 151, 137, 160, 160, 146, 171, 171, 158, 149, 149, 136, 160, 160, 146, 141, 141, 128, 153, 153, 139, 130, 129, 116, 155, 157, 143, 162, 164, 150, 165, 168, 153, 153, 155, 140, 162, 164, 150, 114, 116, 102, 158, 160, 148, 164, 166, 154, 113, 115, 103, 90, 91, 82, 13, 14, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 6, 0, 78, 80, 68, 145, 148, 133, 190, 192, 176, 153, 153, 137, 162, 162, 147, 190, 191, 173, 191, 192, 174, 137, 137, 119, 179, 177, 160, 149, 147, 129, 175, 174, 154, 149, 147, 127, 147, 146, 128, 174, 173, 153, 167, 166, 148, 187, 185, 168, 175, 174, 156, 167, 166, 148, 153, 151, 136, 164, 162, 147, 135, 132, 119, 165, 162, 150, 157, 154, 144, 174, 171, 161, 158, 155, 145, 178, 175, 164, 54, 51, 43, 92, 88, 80, 0, 0, 0, 77, 73, 67, 217, 213, 210, 255, 251, 247, 245, 241, 238, 237, 233, 232, 236, 232, 229, 233, 228, 227, 240, 235, 236, 237, 232, 234, 238, 234, 235, 238, 234, 235, 239, 236, 239, 238, 233, 237, 234, 228, 232, 238, 233, 237, 242, 237, 241, 241, 235, 239, 240, 234, 238, 237, 232, 236, 236, 231, 235, 236, 231, 233, 235, 230, 234, 231, 227, 228, 235, 230, 232, 237, 232, 234, 236, 231, 233, 234, 229, 230, 234, 229, 230, 234, 229, 230, 234, 229, 230, 235, 230, 230, 235, 230, 230, 234, 230, 226, 217, 213, 210, 230, 228, 224, 229, 227, 223, 246, 245, 238, 255, 255, 255, 255, 255, 255, 212, 208, 202, 99, 95, 89, 66, 62, 59, 63, 59, 55, 73, 69, 68, 67, 63, 62, 70, 68, 67, 73, 71, 69, 77, 75, 74, 82, 80, 78, 82, 80, 78, 84, 82, 81, 89, 87, 85, 76, 76, 74, 87, 85, 83, 85, 83, 84, 81, 78, 79, 102, 100, 98, 92, 90, 89, 76, 74, 72, 89, 87, 83, 104, 104, 100, 100, 101, 96, 87, 88, 83, 90, 88, 84, 86, 87, 80, 87, 85, 79, 104, 103, 96, 97, 96, 87, 89, 88, 79, 91, 90, 82, 103, 102, 93, 91, 90, 84, 89, 88, 81, 97, 96, 89, 91, 90, 84, 81, 83, 75, 83, 82, 73, 98, 97, 89, 90, 91, 82, 96, 95, 84, 77, 76, 68, 87, 89, 79, 81, 83, 73, 84, 85, 76, 80, 82, 70, 95, 99, 86, 141, 141, 128, 148, 148, 136, 127, 129, 117, 122, 124, 114, 115, 117, 105, 113, 115, 103, 111, 113, 100, 107, 109, 97, 98, 100, 88, 109, 111, 101, 112, 113, 104, 100, 102, 92, 91, 93, 81, 95, 97, 87, 99, 100, 91, 84, 85, 76, 87, 89, 79, 98, 99, 90, 87, 89, 79, 64, 66, 56, 78, 80, 70, 85, 87, 77, 79, 81, 71, 63, 64, 55, 66, 68, 58, 65, 67, 57, 67, 69, 62, 67, 69, 62, 57, 59, 49, 73, 74, 67, 58, 59, 52, 69, 68, 60, 45, 47, 39, 74, 76, 68, 43, 44, 37, 45, 47, 39, 53, 55, 48, 48, 49, 42, 55, 56, 49, 35, 36, 29, 50, 51, 44, 35, 36, 29, 47, 46, 39, 47, 48, 41, 47, 48, 41, 46, 45, 38, 43, 42, 36, 63, 62, 56, 33, 34, 27, 54, 53, 46, 56, 55, 49, 56, 57, 50, 48, 49, 42, 49, 50, 41, 50, 52, 42, 50, 52, 42, 62, 63, 54, 63, 64, 55, 70, 70, 59, 71, 71, 60, 60, 59, 48, 60, 59, 48, 83, 83, 71, 81, 80, 69, 81, 80, 69, 95, 94, 83, 82, 81, 70, 99, 99, 86, 100, 100, 87, 104, 104, 90, 111, 111, 97, 128, 128, 115, 121, 118, 105, 109, 107, 94, 104, 104, 88, 138, 136, 121, 151, 151, 135, 151, 149, 134, 155, 152, 137, 158, 158, 142, 168, 168, 152, 147, 147, 131, 138, 138, 122, 141, 141, 126, 158, 158, 142, 138, 138, 122, 178, 179, 163, 163, 163, 150, 158, 158, 144, 167, 167, 153, 165, 164, 151, 162, 164, 150, 142, 144, 130, 81, 81, 67, 31, 33, 21, 0, 0, 0, 0, 0, 0, 12, 13, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90, 89, 82, 144, 143, 134, 136, 133, 123, 153, 151, 136, 182, 181, 163, 167, 166, 148, 174, 173, 155, 165, 163, 146, 161, 162, 143, 187, 187, 169, 174, 175, 156, 113, 111, 93, 174, 173, 153, 163, 161, 141, 153, 152, 132, 188, 187, 167, 166, 165, 147, 150, 149, 128, 155, 156, 138, 155, 153, 135, 167, 166, 148, 172, 170, 153, 153, 151, 136, 151, 149, 134, 143, 140, 128, 159, 157, 142, 195, 192, 182, 146, 143, 135, 0, 0, 0, 0, 0, 0, 71, 67, 64, 227, 223, 220, 255, 254, 251, 248, 244, 240, 234, 230, 226, 237, 233, 230, 241, 237, 233, 240, 235, 234, 238, 234, 233, 237, 233, 232, 236, 232, 231, 238, 234, 235, 238, 234, 235, 237, 232, 234, 237, 232, 234, 238, 234, 235, 237, 232, 234, 237, 232, 234, 238, 234, 235, 237, 232, 236, 237, 232, 236, 238, 233, 237, 237, 232, 236, 235, 230, 234, 236, 231, 235, 236, 231, 235, 237, 232, 236, 234, 229, 230, 234, 228, 232, 235, 230, 232, 231, 227, 228, 237, 232, 234, 230, 226, 225, 229, 225, 224, 227, 226, 222, 225, 223, 220, 255, 255, 255, 255, 255, 255, 188, 187, 180, 89, 88, 81, 54, 52, 48, 71, 70, 66, 66, 64, 62, 71, 69, 68, 75, 71, 70, 72, 67, 67, 79, 74, 74, 82, 78, 77, 85, 80, 79, 74, 70, 69, 85, 83, 82, 85, 83, 82, 76, 74, 72, 77, 75, 74, 99, 98, 94, 80, 78, 74, 89, 87, 83, 77, 76, 72, 76, 74, 70, 89, 87, 83, 90, 88, 84, 87, 85, 81, 76, 74, 72, 97, 95, 91, 83, 81, 79, 84, 84, 82, 86, 87, 82, 76, 76, 72, 90, 89, 82, 91, 92, 85, 91, 92, 85, 144, 142, 136, 83, 82, 73, 92, 92, 83, 88, 87, 78, 84, 83, 75, 131, 130, 121, 87, 86, 77, 118, 117, 108, 84, 83, 75, 92, 92, 83, 88, 87, 78, 83, 83, 71, 81, 80, 69, 87, 86, 75, 88, 87, 78, 73, 72, 61, 104, 104, 92, 81, 83, 71, 86, 88, 76, 85, 87, 75, 80, 84, 71, 146, 145, 134, 121, 121, 110, 114, 116, 104, 112, 113, 104, 113, 115, 103, 120, 120, 109, 114, 116, 106, 118, 119, 110, 120, 121, 112, 104, 105, 96, 100, 102, 92, 95, 97, 87, 84, 86, 74, 92, 94, 84, 93, 95, 83, 90, 91, 82, 83, 84, 75, 80, 82, 72, 79, 81, 71, 102, 104, 94, 65, 69, 58, 67, 69, 60, 72, 74, 64, 69, 70, 61, 69, 70, 61, 59, 61, 53, 67, 69, 62, 79, 81, 71, 71, 73, 63, 52, 54, 46, 84, 83, 77, 49, 50, 41, 81, 79, 73, 166, 164, 158, 58, 59, 52, 62, 63, 56, 83, 84, 77, 52, 54, 46, 69, 70, 63, 60, 62, 54, 60, 62, 54, 89, 88, 81, 53, 52, 45, 52, 54, 46, 49, 50, 43, 60, 58, 52, 88, 90, 82, 49, 50, 43, 47, 48, 41, 42, 43, 36, 74, 76, 66, 57, 57, 48, 58, 60, 50, 76, 77, 68, 70, 69, 61, 60, 62, 52, 80, 79, 70, 74, 73, 62, 102, 101, 90, 77, 77, 65, 66, 65, 54, 74, 73, 62, 94, 93, 82, 102, 101, 90, 108, 107, 96, 130, 129, 116, 120, 120, 107, 114, 114, 101, 126, 126, 112, 120, 117, 104, 131, 129, 116, 117, 115, 102, 150, 148, 132, 125, 125, 109, 155, 152, 137, 167, 165, 150, 163, 161, 145, 175, 175, 159, 148, 148, 134, 147, 147, 133, 176, 176, 162, 165, 164, 151, 168, 168, 154, 147, 147, 133, 131, 131, 117, 117, 117, 103, 20, 20, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 11, 4, 56, 55, 47, 113, 113, 102, 109, 111, 99, 136, 138, 124, 158, 161, 146, 158, 158, 142, 151, 149, 134, 167, 165, 150, 157, 155, 138, 152, 151, 133, 139, 138, 120, 142, 140, 122, 150, 149, 128, 172, 171, 151, 173, 172, 152, 138, 137, 117, 191, 189, 169, 152, 151, 131, 172, 170, 153, 149, 147, 129, 155, 153, 135, 139, 138, 120, 150, 148, 132, 139, 137, 122, 143, 141, 126, 162, 162, 149, 191, 188, 175, 74, 72, 59, 2, 0, 0, 26, 24, 13, 92, 88, 80, 181, 178, 172, 251, 247, 244, 244, 240, 235, 233, 229, 225, 233, 229, 225, 237, 233, 232, 238, 234, 233, 238, 234, 233, 236, 232, 231, 237, 233, 232, 241, 236, 235, 237, 233, 232, 231, 227, 226, 237, 233, 232, 237, 233, 232, 240, 235, 234, 233, 228, 227, 235, 230, 232, 238, 234, 235, 238, 234, 235, 238, 234, 235, 238, 234, 235, 237, 234, 235, 238, 233, 237, 238, 233, 237, 235, 230, 234, 236, 231, 235, 236, 231, 235, 234, 232, 235, 236, 231, 233, 236, 231, 233, 236, 231, 233, 233, 228, 229, 222, 217, 219, 245, 241, 242, 255, 255, 255, 255, 255, 255, 123, 121, 117, 70, 69, 65, 74, 72, 68, 62, 60, 56, 68, 66, 62, 77, 76, 72, 76, 75, 68, 76, 74, 70, 80, 78, 72, 71, 70, 64, 81, 79, 75, 81, 79, 75, 81, 79, 75, 91, 87, 83, 88, 84, 81, 94, 90, 87, 94, 90, 87, 94, 90, 87, 89, 85, 82, 82, 80, 76, 98, 96, 93, 91, 90, 86, 105, 104, 100, 92, 91, 87, 81, 79, 75, 100, 99, 93, 96, 95, 88, 81, 79, 73, 85, 85, 76, 94, 92, 86, 88, 86, 80, 90, 89, 82, 89, 88, 81, 89, 88, 81, 91, 90, 84, 83, 84, 77, 87, 85, 79, 71, 70, 64, 94, 93, 84, 90, 89, 80, 95, 94, 85, 75, 74, 65, 88, 87, 78, 77, 76, 68, 82, 81, 72, 98, 97, 89, 92, 92, 83, 84, 83, 75, 91, 90, 82, 84, 83, 75, 111, 110, 99, 82, 81, 72, 89, 88, 77, 95, 94, 83, 95, 94, 83, 110, 109, 98, 84, 84, 72, 109, 111, 99, 77, 79, 67, 104, 106, 94, 85, 85, 74, 122, 119, 107, 130, 129, 118, 120, 120, 109, 119, 119, 107, 116, 115, 104, 106, 108, 96, 105, 106, 97, 102, 104, 94, 95, 97, 87, 121, 123, 113, 96, 100, 90, 106, 109, 99, 93, 95, 85, 102, 104, 94, 95, 97, 87, 87, 89, 79, 92, 94, 84, 85, 88, 78, 83, 87, 77, 73, 75, 65, 73, 77, 66, 69, 73, 63, 76, 77, 68, 71, 72, 65, 82, 86, 78, 71, 72, 65, 70, 71, 62, 62, 63, 56, 80, 81, 74, 99, 100, 93, 63, 64, 57, 79, 80, 73, 71, 72, 65, 78, 79, 72, 81, 83, 75, 70, 71, 64, 62, 66, 58, 68, 72, 64, 99, 100, 93, 71, 72, 65, 72, 73, 66, 55, 56, 49, 57, 58, 51, 67, 69, 62, 56, 57, 50, 55, 56, 49, 64, 65, 58, 70, 71, 64, 69, 70, 63, 64, 63, 57, 47, 48, 41, 51, 52, 45, 64, 66, 56, 51, 53, 43, 70, 71, 62, 66, 68, 58, 90, 89, 80, 88, 87, 78, 70, 70, 59, 59, 58, 47, 100, 100, 89, 100, 100, 89, 133, 133, 121, 108, 107, 96, 82, 81, 70, 131, 131, 117, 132, 131, 120, 149, 149, 138, 135, 132, 121, 166, 166, 152, 147, 147, 133, 152, 152, 138, 165, 164, 151, 170, 170, 157, 169, 169, 156, 142, 142, 129, 113, 113, 102, 68, 67, 56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 30, 19, 104, 104, 92, 123, 122, 111, 125, 125, 113, 132, 132, 118, 146, 146, 132, 139, 139, 125, 139, 139, 125, 140, 140, 124, 152, 152, 136, 140, 140, 124, 140, 140, 124, 141, 141, 126, 138, 138, 120, 166, 165, 147, 168, 167, 149, 143, 142, 121, 154, 150, 133, 131, 129, 112, 168, 167, 149, 159, 158, 140, 170, 168, 150, 161, 159, 144, 159, 157, 142, 167, 165, 150, 156, 154, 138, 153, 151, 136, 178, 176, 160, 93, 91, 76, 3, 0, 0, 181, 179, 164, 69, 67, 64, 135, 134, 128, 255, 255, 251, 240, 239, 235, 238, 234, 231, 238, 234, 231, 236, 232, 231, 240, 235, 234, 231, 227, 226, 235, 230, 230, 235, 230, 230, 238, 234, 233, 236, 232, 231, 240, 235, 234, 236, 232, 229, 237, 233, 232, 236, 232, 231, 229, 225, 224, 237, 233, 232, 236, 232, 231, 237, 233, 232, 236, 232, 231, 236, 232, 231, 234, 229, 228, 238, 234, 233, 234, 229, 230, 235, 230, 232, 236, 231, 233, 240, 235, 236, 238, 236, 236, 231, 228, 231, 233, 230, 234, 237, 234, 237, 233, 227, 231, 238, 235, 238, 241, 236, 237, 255, 255, 255, 255, 255, 255, 108, 104, 103, 102, 100, 98, 70, 65, 64, 67, 65, 63, 71, 69, 68, 70, 68, 67, 77, 75, 74, 80, 78, 76, 80, 78, 76, 88, 86, 84, 84, 83, 79, 75, 73, 69, 82, 80, 76, 88, 86, 80, 84, 83, 79, 85, 84, 78, 88, 86, 80, 98, 97, 91, 87, 83, 78, 93, 89, 84, 93, 89, 84, 100, 96, 91, 86, 82, 77, 93, 89, 86, 93, 89, 86, 98, 96, 93, 94, 92, 88, 109, 107, 101, 95, 93, 87, 85, 84, 78, 95, 93, 87, 87, 85, 79, 94, 92, 86, 87, 86, 77, 97, 96, 87, 83, 82, 73, 95, 94, 85, 87, 86, 77, 91, 90, 82, 92, 92, 83, 103, 102, 93, 87, 89, 79, 84, 83, 75, 97, 96, 87, 85, 85, 76, 84, 83, 75, 81, 80, 71, 95, 94, 85, 98, 97, 89, 78, 78, 69, 88, 87, 76, 83, 82, 73, 114, 114, 105, 133, 132, 124, 91, 90, 82, 87, 86, 77, 84, 83, 75, 91, 91, 80, 76, 75, 66, 66, 65, 56, 97, 96, 85, 111, 110, 99, 76, 75, 66, 74, 73, 62, 113, 113, 102, 82, 81, 70, 76, 76, 64, 131, 129, 116, 127, 127, 116, 117, 116, 105, 116, 115, 104, 114, 114, 103, 104, 105, 96, 98, 99, 90, 100, 102, 92, 103, 107, 99, 107, 109, 99, 96, 100, 90, 85, 88, 78, 95, 97, 87, 88, 92, 82, 91, 92, 83, 88, 92, 82, 114, 118, 107, 92, 94, 84, 82, 86, 76, 83, 84, 77, 75, 79, 69, 74, 78, 70, 71, 72, 65, 73, 74, 67, 78, 81, 75, 65, 68, 60, 67, 69, 62, 57, 60, 52, 77, 78, 71, 72, 73, 66, 71, 72, 65, 67, 69, 62, 95, 97, 89, 67, 69, 62, 77, 78, 71, 59, 61, 53, 69, 70, 63, 66, 69, 62, 74, 75, 70, 173, 175, 167, 73, 74, 67, 58, 59, 52, 57, 58, 51, 80, 81, 74, 71, 72, 65, 45, 47, 39, 59, 61, 53, 67, 69, 62, 58, 59, 52, 65, 66, 59, 84, 85, 76, 57, 59, 49, 71, 73, 63, 70, 71, 62, 67, 69, 60, 63, 62, 54, 85, 85, 76, 75, 74, 65, 96, 95, 86, 105, 104, 96, 94, 93, 82, 104, 104, 92, 124, 123, 112, 134, 134, 123, 105, 105, 94, 99, 99, 88, 41, 41, 29, 18, 17, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 12, 6, 73, 71, 65, 130, 129, 120, 111, 110, 99, 137, 136, 125, 145, 145, 131, 137, 136, 123, 141, 141, 128, 147, 147, 133, 152, 152, 138, 140, 140, 126, 144, 143, 130, 180, 180, 164, 144, 142, 127, 140, 140, 124, 136, 134, 119, 129, 127, 112, 131, 131, 113, 152, 152, 134, 156, 157, 139, 137, 135, 118, 140, 141, 122, 122, 120, 103, 144, 142, 125, 142, 140, 122, 135, 133, 113, 130, 128, 111, 123, 121, 106, 155, 152, 139, 179, 176, 164, 97, 95, 84, 0, 0, 0, 54, 51, 43, 114, 111, 103, 168, 165, 159, 237, 234, 228, 254, 250, 246, 235, 231, 228, 236, 234, 230, 238, 236, 234, 233, 231, 230, 235, 230, 230, 233, 231, 230, 237, 235, 233, 233, 228, 227, 237, 233, 232, 238, 234, 233, 237, 233, 232, 237, 233, 232, 237, 233, 232, 236, 232, 229, 235, 231, 228, 235, 231, 228, 237, 233, 232, 236, 232, 231, 234, 229, 228, 235, 230, 230, 236, 232, 231, 236, 232, 231, 234, 229, 228, 233, 228, 227, 235, 230, 230, 235, 230, 230, 234, 229, 230, 231, 227, 228, 231, 227, 228, 236, 233, 234, 230, 227, 228, 248, 246, 247, 255, 255, 255, 255, 255, 255, 133, 131, 129, 121, 119, 118, 68, 66, 64, 71, 69, 70, 66, 63, 64, 69, 67, 67, 76, 74, 74, 80, 77, 78, 84, 82, 83, 83, 81, 81, 82, 80, 78, 88, 85, 86, 89, 87, 85, 75, 73, 71, 92, 90, 89, 87, 85, 81, 78, 77, 73, 88, 86, 80, 102, 100, 94, 89, 88, 81, 100, 99, 93, 88, 86, 80, 98, 97, 91, 90, 89, 82, 96, 93, 87, 86, 83, 75, 110, 107, 99, 117, 114, 106, 99, 95, 87, 88, 85, 77, 87, 84, 76, 89, 86, 78, 91, 90, 82, 95, 94, 85, 87, 85, 79, 85, 84, 78, 84, 83, 77, 83, 82, 75, 99, 98, 92, 89, 88, 79, 82, 81, 72, 96, 95, 86, 76, 76, 64, 88, 87, 78, 96, 95, 86, 94, 93, 84, 95, 94, 85, 86, 88, 78, 91, 90, 82, 85, 87, 77, 84, 83, 75, 85, 85, 76, 89, 88, 79, 87, 86, 77, 88, 87, 78, 110, 109, 98, 74, 73, 64, 90, 90, 78, 110, 109, 98, 84, 83, 75, 116, 115, 104, 91, 91, 80, 92, 92, 81, 89, 88, 77, 97, 96, 85, 67, 66, 55, 105, 104, 96, 102, 101, 92, 92, 92, 83, 91, 92, 83, 81, 80, 71, 67, 66, 57, 99, 98, 90, 112, 112, 100, 120, 120, 109, 112, 113, 104, 122, 124, 114, 120, 121, 112, 119, 120, 111, 99, 100, 93, 105, 106, 99, 93, 94, 87, 97, 98, 91, 74, 76, 68, 111, 115, 105, 91, 92, 83, 93, 97, 86, 98, 99, 90, 100, 102, 92, 91, 92, 83, 79, 80, 73, 76, 80, 72, 77, 78, 71, 78, 81, 73, 67, 68, 64, 77, 78, 71, 69, 73, 65, 80, 81, 76, 60, 64, 56, 81, 83, 75, 70, 71, 64, 107, 108, 101, 73, 74, 67, 67, 69, 62, 67, 69, 62, 65, 66, 59, 87, 89, 81, 74, 78, 70, 58, 61, 53, 51, 54, 46, 58, 61, 53, 67, 69, 62, 67, 69, 62, 70, 71, 64, 69, 70, 63, 57, 58, 51, 70, 71, 64, 72, 73, 66, 67, 69, 62, 65, 66, 59, 66, 67, 60, 59, 61, 53, 58, 59, 52, 19, 20, 13, 17, 19, 9, 14, 16, 6, 0, 0, 0, 0, 0, 0, 14, 14, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 32, 20, 76, 75, 66, 105, 107, 95, 102, 104, 92, 111, 110, 99, 103, 102, 91, 100, 100, 89, 117, 117, 103, 119, 119, 107, 116, 115, 104, 128, 128, 117, 162, 162, 151, 165, 164, 151, 146, 146, 132, 133, 133, 119, 125, 125, 111, 120, 120, 107, 113, 113, 100, 196, 196, 180, 116, 116, 100, 126, 126, 110, 123, 123, 107, 134, 134, 119, 143, 141, 126, 159, 159, 143, 120, 117, 102, 147, 145, 130, 124, 124, 106, 138, 136, 121, 134, 134, 119, 116, 116, 100, 134, 131, 118, 178, 178, 165, 81, 79, 66, 21, 18, 5, 225, 223, 208, 210, 208, 197, 145, 142, 136, 245, 241, 238, 255, 251, 247, 250, 246, 243, 238, 234, 231, 241, 237, 233, 245, 241, 238, 241, 236, 235, 241, 236, 235, 237, 233, 232, 237, 235, 233, 236, 234, 232, 239, 237, 235, 233, 231, 230, 232, 230, 228, 238, 236, 234, 236, 234, 232, 237, 233, 232, 237, 233, 232, 241, 236, 235, 236, 232, 229, 233, 228, 227, 234, 229, 228, 234, 229, 228, 233, 228, 227, 233, 228, 227, 233, 228, 227, 233, 228, 227, 233, 228, 227, 235, 230, 230, 236, 232, 231, 236, 232, 231, 236, 232, 231, 231, 227, 224, 235, 230, 230, 255, 251, 247, 255, 255, 255, 210, 206, 203, 35, 30, 29, 68, 66, 64, 63, 58, 59, 64, 62, 63, 62, 60, 60, 74, 71, 72, 81, 78, 79, 91, 88, 92, 90, 88, 88, 97, 94, 97, 87, 84, 87, 88, 85, 86, 103, 100, 101, 102, 99, 100, 84, 82, 83, 74, 72, 70, 83, 81, 79, 100, 98, 97, 99, 99, 97, 83, 81, 77, 84, 85, 78, 103, 101, 95, 89, 88, 79, 84, 83, 75, 108, 107, 98, 111, 110, 103, 104, 103, 94, 76, 75, 68, 73, 72, 63, 89, 88, 79, 82, 79, 71, 101, 98, 90, 104, 102, 91, 94, 91, 81, 97, 95, 84, 85, 82, 71, 88, 85, 77, 107, 104, 96, 91, 91, 80, 94, 93, 84, 90, 89, 80, 92, 91, 85, 83, 82, 73, 99, 98, 90, 88, 87, 78, 102, 101, 90, 98, 97, 89, 83, 83, 71, 95, 94, 83, 80, 79, 70, 91, 90, 82, 95, 94, 83, 88, 87, 76, 88, 87, 76, 95, 94, 83, 83, 83, 71, 77, 76, 68, 87, 86, 77, 95, 94, 83, 103, 102, 91, 83, 83, 71, 85, 85, 74, 91, 91, 80, 103, 102, 91, 92, 92, 81, 90, 90, 78, 80, 79, 68, 110, 109, 98, 81, 80, 69, 104, 104, 92, 94, 93, 82, 74, 73, 62, 74, 73, 64, 119, 118, 110, 69, 68, 60, 74, 73, 64, 82, 81, 72, 102, 101, 92, 91, 90, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 12, 6, 11, 14, 9, 35, 38, 32, 31, 32, 27, 33, 34, 27, 32, 36, 28, 77, 78, 71, 49, 50, 43, 41, 42, 35, 48, 49, 42, 54, 58, 50, 38, 40, 32, 51, 54, 46, 26, 29, 24, 33, 37, 29, 33, 37, 29, 25, 28, 23, 14, 17, 11, 11, 14, 9, 5, 9, 3, 5, 9, 1, 3, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 62, 50, 99, 100, 91, 95, 94, 83, 90, 92, 80, 97, 96, 85, 67, 69, 57, 87, 90, 75, 103, 102, 91, 95, 94, 83, 106, 106, 95, 123, 126, 111, 88, 88, 74, 195, 195, 181, 113, 113, 100, 117, 117, 103, 130, 129, 116, 123, 123, 109, 104, 104, 90, 128, 128, 117, 90, 90, 76, 124, 124, 110, 88, 88, 74, 113, 113, 102, 133, 133, 119, 139, 139, 125, 141, 141, 126, 141, 141, 128, 112, 112, 96, 119, 119, 103, 102, 102, 88, 108, 107, 94, 116, 116, 102, 134, 134, 121, 113, 113, 100, 137, 135, 122, 143, 140, 128, 144, 144, 128, 147, 145, 132, 74, 72, 57, 17, 17, 3, 6, 6, 0, 253, 252, 243, 106, 105, 97, 241, 240, 234, 247, 246, 240, 247, 243, 237, 243, 239, 236, 241, 237, 231, 239, 237, 233, 238, 236, 234, 239, 237, 233, 241, 236, 235, 238, 236, 234, 239, 237, 235, 237, 233, 232, 238, 234, 233, 240, 238, 237, 234, 232, 231, 238, 234, 233, 238, 234, 233, 236, 234, 232, 233, 231, 230, 223, 221, 219, 235, 230, 230, 235, 230, 230, 235, 230, 230, 233, 228, 227, 233, 228, 227, 234, 229, 228, 229, 225, 224, 229, 225, 224, 230, 226, 225, 227, 223, 220, 229, 225, 222, 229, 225, 222, 235, 231, 228, 235, 231, 228, 249, 245, 242, 255, 255, 255, 243, 239, 238, 75, 71, 70, 58, 53, 53, 68, 66, 64, 63, 61, 60, 67, 64, 65, 75, 72, 73, 87, 84, 85, 83, 81, 81, 94, 89, 91, 90, 88, 88, 103, 100, 103, 103, 100, 103, 110, 107, 110, 90, 87, 90, 97, 95, 95, 104, 101, 104, 99, 97, 98, 99, 97, 98, 88, 85, 86, 98, 96, 97, 80, 78, 76, 91, 89, 90, 83, 83, 81, 84, 85, 80, 104, 105, 98, 109, 108, 99, 104, 103, 94, 85, 85, 76, 92, 92, 83, 95, 94, 85, 102, 99, 91, 83, 82, 73, 110, 109, 100, 111, 108, 100, 108, 107, 98, 102, 101, 92, 106, 106, 95, 79, 76, 68, 96, 95, 84, 102, 99, 89, 86, 83, 72, 100, 97, 86, 88, 85, 75, 93, 90, 80, 91, 90, 82, 91, 88, 77, 87, 86, 77, 99, 95, 87, 95, 92, 84, 80, 79, 70, 90, 89, 80, 83, 83, 71, 91, 91, 80, 96, 95, 84, 84, 84, 72, 71, 71, 60, 87, 86, 75, 102, 101, 90, 91, 91, 80, 89, 88, 77, 98, 98, 86, 97, 96, 85, 92, 92, 81, 90, 90, 78, 81, 80, 69, 90, 90, 78, 92, 92, 81, 95, 94, 83, 88, 87, 76, 95, 94, 83, 95, 94, 83, 71, 71, 60, 87, 86, 75, 96, 95, 84, 81, 80, 69, 94, 93, 82, 98, 98, 86, 83, 82, 73, 85, 85, 76, 96, 95, 86, 82, 81, 72, 68, 67, 58, 91, 90, 82, 74, 73, 64, 100, 100, 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113, 114, 107, 0, 0, 0, 10, 12, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 23, 16, 55, 54, 48, 77, 76, 70, 84, 83, 77, 88, 86, 80, 83, 84, 77, 85, 86, 79, 71, 72, 65, 69, 70, 61, 73, 75, 65, 59, 61, 51, 56, 57, 48, 40, 41, 32, 83, 85, 72, 66, 68, 56, 70, 70, 59, 66, 65, 54, 64, 64, 55, 62, 62, 50, 71, 71, 60, 83, 83, 71, 92, 94, 80, 70, 72, 58, 71, 73, 59, 105, 105, 92, 91, 93, 79, 90, 90, 76, 85, 87, 73, 100, 100, 87, 89, 89, 75, 124, 124, 110, 116, 116, 100, 96, 96, 82, 110, 110, 94, 187, 187, 173, 90, 90, 76, 118, 118, 104, 90, 90, 76, 127, 127, 114, 120, 120, 109, 99, 99, 86, 109, 109, 95, 109, 109, 95, 110, 110, 96, 127, 127, 114, 127, 127, 114, 104, 104, 88, 109, 109, 95, 127, 127, 114, 125, 125, 109, 142, 143, 127, 130, 129, 116, 45, 44, 33, 27, 27, 15, 6, 6, 0, 69, 69, 57, 141, 141, 128, 225, 223, 212, 242, 239, 228, 245, 242, 234, 236, 233, 225, 241, 237, 231, 237, 234, 228, 233, 232, 228, 233, 232, 228, 236, 234, 230, 238, 236, 232, 241, 237, 233, 236, 234, 230, 234, 232, 231, 237, 235, 231, 238, 236, 234, 239, 237, 235, 238, 236, 234, 242, 240, 239, 234, 232, 231, 240, 238, 237, 234, 232, 231, 236, 234, 232, 236, 234, 232, 234, 232, 231, 232, 230, 228, 231, 229, 227, 235, 230, 230, 233, 228, 227, 231, 227, 226, 234, 229, 228, 230, 226, 225, 231, 227, 226, 230, 226, 225, 225, 221, 220, 242, 238, 235, 255, 255, 255, 255, 255, 255, 145, 141, 138, 35, 30, 29, 57, 53, 49, 67, 63, 60, 72, 67, 67, 82, 78, 77, 78, 73, 74, 80, 75, 77, 100, 95, 97, 98, 96, 97, 96, 93, 94, 92, 90, 93, 96, 93, 94, 95, 92, 93, 91, 89, 90, 106, 104, 105, 94, 91, 92, 78, 76, 75, 102, 100, 98, 67, 64, 65, 110, 108, 106, 80, 78, 74, 78, 77, 73, 100, 99, 95, 116, 114, 110, 99, 97, 96, 99, 97, 96, 91, 89, 88, 84, 83, 79, 112, 111, 105, 104, 103, 94, 102, 104, 94, 112, 112, 100, 78, 80, 68, 105, 104, 96, 109, 108, 99, 92, 92, 83, 124, 121, 111, 90, 90, 78, 89, 86, 78, 110, 107, 99, 90, 89, 80, 100, 97, 89, 81, 78, 70, 99, 96, 85, 87, 84, 74, 85, 82, 71, 85, 82, 71, 83, 81, 70, 96, 93, 83, 81, 78, 68, 102, 99, 89, 87, 84, 74, 85, 81, 73, 89, 86, 78, 100, 97, 86, 85, 81, 73, 112, 112, 100, 102, 101, 90, 84, 84, 72, 82, 81, 70, 87, 86, 75, 97, 96, 85, 89, 88, 77, 91, 91, 80, 90, 90, 78, 87, 86, 75, 98, 98, 86, 95, 94, 83, 81, 80, 69, 84, 84, 72, 87, 86, 75, 80, 79, 68, 78, 78, 67, 87, 86, 75, 85, 85, 74, 80, 79, 68, 104, 104, 92, 98, 98, 86, 84, 84, 72, 82, 81, 70, 83, 83, 71, 103, 102, 91, 102, 101, 92, 87, 86, 77, 91, 90, 82, 91, 90, 82, 105, 104, 96, 59, 58, 49, 91, 90, 82, 87, 89, 77, 78, 80, 68, 87, 86, 77, 83, 82, 73, 98, 99, 90, 64, 65, 58, 74, 76, 68, 62, 63, 56, 53, 55, 48, 69, 70, 63, 69, 70, 63, 60, 62, 54, 60, 62, 54, 62, 63, 56, 73, 74, 67, 60, 62, 54, 67, 69, 62, 58, 59, 52, 58, 59, 52, 49, 50, 43, 62, 63, 56, 62, 63, 56, 66, 68, 58, 59, 61, 51, 47, 48, 41, 56, 57, 50, 55, 56, 49, 52, 54, 46, 62, 63, 56, 62, 63, 56, 63, 64, 57, 67, 66, 57, 68, 67, 60, 61, 60, 51, 60, 62, 52, 66, 68, 58, 64, 65, 58, 66, 67, 60, 66, 64, 58, 60, 58, 52, 48, 47, 41, 52, 51, 42, 78, 78, 69, 60, 59, 50, 53, 52, 43, 62, 61, 52, 57, 59, 49, 94, 96, 86, 66, 65, 54, 68, 67, 56, 66, 65, 54, 66, 68, 56, 65, 67, 55, 54, 53, 42, 87, 86, 75, 108, 107, 94, 73, 72, 61, 67, 66, 55, 144, 143, 132, 96, 95, 84, 80, 82, 70, 81, 80, 69, 66, 65, 52, 82, 82, 68, 69, 69, 55, 85, 85, 72, 68, 68, 54, 90, 90, 76, 89, 89, 75, 88, 88, 72, 108, 107, 94, 96, 96, 82, 100, 100, 87, 112, 112, 96, 110, 110, 96, 108, 107, 94, 133, 133, 119, 113, 113, 102, 119, 119, 107, 104, 104, 92, 97, 97, 83, 120, 120, 109, 118, 117, 106, 135, 135, 122, 141, 141, 129, 74, 73, 62, 114, 114, 103, 28, 28, 17, 89, 88, 77, 75, 74, 63, 155, 154, 146, 239, 238, 229, 234, 234, 225, 230, 228, 222, 237, 235, 229, 239, 238, 229, 233, 232, 226, 242, 241, 235, 234, 233, 227, 237, 235, 231, 236, 234, 230, 236, 234, 230, 237, 235, 231, 238, 236, 232, 238, 236, 232, 240, 239, 235, 238, 236, 232, 237, 235, 231, 238, 236, 232, 237, 235, 231, 239, 237, 233, 237, 235, 231, 238, 234, 231, 238, 234, 231, 237, 233, 232, 240, 235, 234, 237, 233, 232, 231, 227, 226, 236, 232, 231, 233, 228, 227, 231, 227, 226, 234, 229, 228, 235, 230, 230, 232, 230, 228, 235, 230, 230, 233, 228, 227, 255, 255, 255, 255, 255, 255, 215, 211, 208, 156, 152, 149, 56, 52, 48, 70, 65, 62, 77, 72, 71, 79, 74, 74, 77, 72, 71, 88, 84, 81, 108, 105, 104, 99, 94, 93, 85, 80, 81, 97, 93, 94, 88, 85, 86, 106, 104, 105, 94, 91, 90, 78, 76, 77, 104, 102, 100, 87, 85, 83, 92, 90, 89, 82, 80, 78, 97, 95, 93, 105, 103, 102, 99, 97, 96, 105, 104, 100, 106, 105, 101, 89, 87, 83, 104, 102, 98, 96, 95, 88, 104, 103, 96, 89, 88, 81, 103, 101, 95, 92, 91, 85, 99, 98, 94, 77, 76, 72, 88, 86, 80, 105, 104, 96, 76, 76, 64, 92, 92, 83, 91, 91, 80, 80, 79, 68, 111, 110, 101, 88, 87, 78, 78, 78, 67, 111, 110, 99, 78, 78, 67, 87, 86, 75, 95, 94, 83, 97, 96, 87, 95, 92, 84, 77, 77, 65, 84, 84, 72, 95, 92, 82, 77, 74, 63, 89, 86, 76, 91, 88, 75, 89, 88, 77, 102, 99, 89, 95, 92, 82, 73, 70, 60, 99, 96, 85, 91, 87, 79, 96, 93, 83, 100, 97, 86, 92, 89, 78, 104, 104, 92, 102, 101, 90, 95, 94, 83, 87, 84, 74, 97, 96, 85, 88, 87, 76, 90, 90, 78, 98, 98, 86, 66, 65, 54, 90, 90, 78, 81, 80, 69, 92, 92, 81, 109, 108, 97, 94, 93, 82, 94, 93, 82, 97, 95, 84, 87, 86, 75, 94, 93, 82, 89, 88, 77, 84, 84, 72, 109, 108, 97, 77, 77, 65, 87, 86, 75, 82, 81, 72, 89, 88, 77, 96, 95, 84, 87, 86, 75, 100, 100, 89, 75, 74, 65, 72, 74, 64, 111, 112, 103, 92, 94, 84, 84, 84, 72, 73, 72, 61, 92, 88, 80, 108, 105, 97, 88, 85, 77, 85, 81, 73, 82, 81, 72, 78, 78, 69, 60, 62, 54, 94, 96, 88, 70, 71, 64, 68, 67, 60, 69, 70, 63, 77, 78, 71, 56, 57, 50, 62, 63, 54, 66, 68, 58, 64, 64, 55, 77, 76, 70, 66, 65, 56, 66, 67, 60, 64, 63, 57, 49, 50, 41, 63, 64, 55, 53, 55, 46, 57, 59, 49, 62, 61, 52, 49, 50, 41, 62, 63, 54, 72, 74, 64, 64, 66, 56, 43, 43, 34, 45, 44, 35, 57, 57, 48, 64, 64, 55, 68, 67, 58, 64, 64, 55, 77, 76, 68, 72, 69, 61, 70, 66, 58, 102, 99, 89, 71, 68, 57, 82, 81, 70, 89, 88, 77, 64, 64, 53, 99, 99, 88, 63, 63, 52, 63, 63, 52, 77, 79, 67, 60, 59, 48, 84, 84, 72, 71, 71, 60, 70, 72, 60, 69, 69, 57, 82, 81, 70, 76, 76, 62, 97, 95, 84, 71, 68, 55, 74, 73, 62, 108, 105, 95, 83, 83, 71, 103, 102, 91, 102, 102, 88, 90, 90, 76, 76, 76, 64, 73, 72, 59, 104, 104, 90, 94, 93, 80, 69, 69, 55, 85, 85, 72, 105, 105, 92, 110, 110, 96, 104, 104, 90, 95, 95, 79, 132, 132, 118, 132, 131, 120, 105, 105, 94, 53, 52, 43, 0, 0, 0, 0, 0, 0, 38, 37, 28, 46, 45, 36, 100, 102, 92, 197, 196, 190, 245, 244, 237, 238, 237, 230, 219, 218, 212, 228, 229, 222, 227, 228, 221, 222, 223, 216, 227, 228, 221, 234, 233, 227, 232, 233, 226, 233, 234, 227, 234, 233, 227, 232, 231, 224, 234, 233, 229, 232, 230, 226, 234, 233, 229, 232, 230, 226, 236, 234, 230, 236, 234, 230, 236, 234, 230, 237, 235, 231, 239, 237, 233, 236, 234, 230, 236, 234, 230, 236, 234, 230, 233, 232, 228, 233, 231, 230, 234, 233, 229, 236, 234, 232, 236, 232, 231, 236, 234, 232, 236, 232, 231, 236, 232, 231, 238, 234, 233, 225, 221, 220, 235, 230, 230, 225, 222, 218, 242, 238, 235, 255, 255, 255, 255, 255, 255, 95, 91, 88, 75, 71, 68, 71, 67, 64, 83, 79, 78, 71, 66, 65, 85, 80, 79, 82, 78, 77, 93, 88, 88, 89, 85, 84, 89, 85, 84, 88, 84, 81, 96, 92, 91, 103, 99, 98, 88, 86, 82, 102, 100, 98, 93, 88, 88, 89, 87, 85, 89, 87, 85, 80, 78, 76, 97, 95, 93, 88, 86, 82, 96, 94, 90, 89, 88, 81, 90, 89, 82, 90, 89, 80, 104, 103, 96, 98, 97, 91, 112, 111, 105, 102, 100, 94, 104, 103, 96, 97, 96, 89, 100, 100, 91, 105, 104, 96, 68, 67, 58, 69, 68, 60, 91, 90, 82, 90, 89, 80, 111, 110, 101, 85, 85, 76, 88, 87, 78, 85, 85, 74, 104, 104, 92, 106, 106, 95, 88, 87, 76, 99, 99, 88, 82, 81, 70, 88, 87, 76, 73, 72, 61, 94, 91, 81, 82, 81, 70, 87, 84, 74, 97, 95, 84, 88, 87, 76, 87, 86, 75, 83, 83, 71, 91, 88, 77, 99, 99, 88, 91, 88, 77, 89, 86, 76, 99, 99, 88, 102, 99, 89, 83, 81, 68, 87, 85, 72, 95, 92, 82, 100, 97, 86, 92, 89, 78, 95, 92, 82, 94, 91, 81, 100, 100, 89, 80, 79, 68, 69, 69, 57, 100, 100, 89, 92, 92, 79, 104, 104, 92, 95, 94, 83, 80, 79, 68, 102, 99, 89, 105, 105, 94, 79, 76, 65, 90, 90, 78, 82, 81, 70, 88, 85, 75, 111, 109, 98, 77, 77, 65, 95, 92, 82, 88, 85, 75, 82, 81, 70, 98, 98, 86, 96, 95, 84, 73, 72, 61, 94, 93, 82, 102, 101, 90, 71, 71, 60, 88, 87, 76, 60, 59, 48, 97, 96, 87, 88, 87, 78, 96, 95, 84, 88, 87, 78, 76, 75, 66, 91, 90, 82, 75, 74, 63, 69, 69, 57, 114, 108, 101, 78, 74, 66, 87, 86, 77, 73, 72, 63, 109, 108, 99, 73, 72, 63, 71, 71, 62, 71, 70, 64, 113, 112, 106, 91, 90, 84, 76, 77, 68, 59, 61, 51, 70, 69, 61, 73, 75, 65, 78, 78, 69, 67, 65, 59, 77, 76, 70, 70, 69, 61, 59, 57, 51, 62, 61, 52, 74, 73, 64, 67, 69, 60, 56, 57, 48, 67, 69, 60, 59, 61, 51, 83, 84, 75, 70, 71, 62, 55, 56, 47, 80, 78, 72, 61, 60, 51, 56, 55, 47, 99, 98, 90, 82, 79, 69, 88, 85, 75, 84, 83, 75, 49, 49, 38, 89, 88, 77, 63, 60, 49, 61, 58, 50, 70, 70, 59, 68, 67, 58, 70, 70, 59, 63, 63, 52, 70, 70, 59, 106, 106, 95, 68, 67, 56, 77, 77, 65, 103, 102, 91, 80, 79, 68, 71, 71, 60, 91, 91, 80, 84, 84, 72, 80, 77, 67, 77, 77, 64, 83, 81, 68, 94, 92, 79, 83, 83, 71, 89, 88, 77, 84, 84, 72, 75, 74, 63, 73, 72, 61, 94, 93, 82, 94, 93, 82, 82, 81, 70, 25, 24, 13, 0, 0, 0, 0, 0, 0, 2, 0, 0, 31, 28, 18, 202, 202, 188, 123, 122, 111, 192, 192, 183, 245, 244, 237, 232, 231, 224, 239, 238, 231, 211, 209, 205, 226, 225, 221, 222, 220, 216, 236, 234, 230, 222, 223, 218, 222, 223, 218, 226, 224, 223, 220, 221, 216, 220, 221, 216, 223, 224, 220, 227, 228, 223, 225, 225, 221, 228, 229, 224, 221, 222, 217, 229, 230, 225, 232, 230, 226, 236, 234, 230, 234, 233, 229, 232, 230, 226, 233, 232, 228, 233, 232, 228, 233, 232, 228, 238, 236, 232, 237, 235, 231, 233, 232, 228, 234, 233, 229, 233, 232, 228, 234, 233, 229, 234, 233, 229, 238, 236, 232, 234, 233, 229, 237, 235, 231, 230, 228, 224, 233, 232, 228, 237, 235, 231, 231, 229, 227, 229, 227, 223, 255, 255, 255, 255, 255, 255, 193, 189, 186, 248, 244, 240, 97, 94, 90, 77, 72, 73, 83, 79, 80, 79, 74, 76, 75, 70, 74, 75, 70, 74, 101, 96, 100, 94, 89, 91, 75, 71, 72, 106, 101, 102, 99, 97, 96, 107, 103, 100, 81, 77, 74, 88, 86, 82, 100, 99, 95, 100, 96, 91, 95, 92, 86, 84, 83, 77, 91, 90, 84, 97, 96, 89, 98, 96, 93, 75, 73, 69, 108, 104, 101, 85, 84, 78, 94, 92, 86, 90, 89, 80, 88, 87, 78, 83, 82, 73, 97, 96, 87, 88, 87, 78, 97, 96, 87, 110, 109, 100, 100, 99, 93, 89, 88, 81, 85, 84, 78, 100, 102, 92, 68, 67, 58, 113, 112, 104, 91, 90, 82, 89, 88, 79, 89, 88, 79, 110, 109, 100, 111, 110, 101, 80, 79, 70, 81, 80, 71, 99, 99, 88, 104, 104, 92, 105, 105, 94, 75, 74, 63, 100, 100, 89, 97, 96, 85, 104, 104, 92, 70, 70, 59, 92, 92, 81, 106, 106, 95, 95, 92, 82, 74, 73, 62, 91, 91, 80, 85, 82, 71, 86, 83, 72, 94, 92, 79, 91, 91, 80, 94, 92, 79, 101, 98, 88, 98, 98, 84, 104, 102, 89, 106, 103, 90, 96, 94, 81, 77, 74, 63, 82, 79, 69, 91, 88, 77, 114, 111, 100, 100, 97, 86, 94, 92, 79, 97, 97, 83, 104, 104, 90, 63, 63, 50, 95, 95, 81, 97, 96, 85, 85, 85, 74, 114, 114, 103, 92, 89, 78, 106, 106, 95, 88, 87, 76, 80, 79, 68, 90, 90, 78, 86, 83, 72, 96, 93, 83, 95, 92, 82, 99, 99, 88, 124, 121, 113, 68, 67, 58, 117, 116, 107, 83, 82, 73, 84, 83, 75, 74, 73, 64, 105, 104, 96, 80, 79, 68, 100, 100, 91, 96, 95, 86, 98, 97, 89, 106, 105, 97, 92, 92, 83, 83, 82, 73, 71, 71, 62, 89, 88, 79, 78, 80, 68, 77, 79, 67, 92, 86, 79, 87, 84, 76, 89, 86, 76, 90, 90, 78, 83, 82, 73, 85, 85, 76, 76, 75, 66, 75, 74, 67, 96, 95, 88, 85, 84, 78, 81, 80, 71, 74, 73, 64, 87, 86, 77, 67, 66, 55, 90, 89, 80, 69, 68, 60, 70, 69, 61, 74, 73, 64, 74, 73, 64, 61, 60, 51, 125, 125, 113, 48, 47, 39, 63, 63, 52, 63, 62, 54, 68, 67, 58, 69, 68, 60, 71, 71, 62, 74, 73, 64, 78, 78, 69, 79, 76, 68, 79, 76, 68, 72, 69, 59, 77, 74, 63, 82, 79, 69, 72, 69, 59, 74, 71, 61, 88, 87, 76, 73, 70, 60, 77, 74, 63, 85, 82, 71, 194, 191, 181, 96, 93, 83, 80, 79, 68, 75, 74, 65, 75, 74, 63, 70, 70, 59, 71, 71, 60, 91, 91, 80, 97, 96, 85, 89, 88, 77, 102, 101, 90, 78, 78, 65, 42, 42, 29, 33, 31, 18, 80, 77, 67, 0, 0, 0, 91, 91, 80, 19, 17, 6, 6, 6, 0, 20, 20, 8, 103, 102, 91, 174, 173, 162, 230, 229, 218, 232, 232, 220, 227, 227, 216, 225, 225, 213, 215, 214, 203, 218, 217, 208, 217, 216, 207, 225, 224, 216, 218, 217, 210, 223, 221, 215, 223, 221, 217, 222, 223, 218, 223, 221, 217, 213, 214, 209, 223, 224, 220, 226, 226, 224, 236, 237, 232, 223, 224, 220, 226, 226, 224, 223, 224, 222, 225, 225, 223, 226, 226, 224, 225, 225, 223, 226, 226, 224, 226, 227, 222, 222, 223, 218, 229, 230, 225, 230, 231, 226, 227, 226, 222, 233, 232, 228, 232, 230, 226, 230, 228, 224, 227, 226, 222, 234, 233, 229, 232, 230, 226, 232, 230, 226, 233, 232, 228, 232, 230, 226, 230, 228, 224, 236, 234, 230, 234, 233, 229, 233, 232, 228, 231, 229, 225, 229, 225, 222, 253, 251, 247, 255, 255, 255, 210, 206, 205, 46, 42, 41, 54, 50, 49, 70, 65, 66, 71, 69, 70, 73, 70, 71, 85, 83, 84, 96, 93, 94, 90, 87, 90, 91, 85, 89, 104, 101, 104, 85, 83, 86, 97, 95, 95, 99, 97, 98, 104, 102, 100, 94, 91, 90, 104, 102, 100, 96, 94, 92, 100, 98, 97, 93, 89, 86, 100, 96, 93, 77, 73, 67, 94, 90, 85, 75, 72, 64, 102, 99, 91, 110, 107, 99, 92, 92, 83, 97, 96, 89, 104, 103, 96, 98, 97, 91, 95, 92, 84, 95, 93, 87, 97, 96, 87, 95, 94, 85, 96, 95, 84, 89, 88, 77, 90, 89, 80, 108, 107, 98, 78, 78, 67, 90, 89, 80, 95, 94, 85, 106, 105, 97, 114, 114, 105, 102, 101, 92, 92, 92, 83, 103, 102, 91, 77, 76, 68, 89, 88, 79, 78, 78, 67, 77, 77, 65, 83, 82, 73, 85, 85, 74, 102, 101, 90, 83, 83, 71, 76, 76, 64, 71, 71, 58, 78, 78, 65, 108, 107, 96, 95, 94, 83, 91, 91, 80, 87, 87, 73, 95, 95, 81, 108, 107, 94, 90, 90, 76, 76, 76, 62, 89, 89, 75, 102, 100, 87, 89, 87, 74, 84, 84, 70, 107, 104, 92, 103, 101, 88, 99, 96, 83, 93, 90, 78, 87, 85, 72, 100, 97, 84, 86, 83, 70, 71, 68, 57, 109, 106, 96, 109, 106, 96, 108, 105, 95, 85, 82, 69, 108, 107, 94, 120, 117, 106, 113, 113, 102, 99, 99, 88, 83, 83, 71, 100, 100, 89, 117, 116, 107, 116, 115, 106, 100, 97, 86, 98, 98, 86, 110, 107, 99, 125, 122, 114, 117, 114, 104, 96, 93, 83, 89, 86, 76, 95, 92, 82, 80, 77, 67, 97, 94, 86, 104, 103, 94, 78, 78, 69, 104, 103, 94, 97, 96, 87, 88, 87, 78, 100, 100, 91, 83, 83, 71, 92, 92, 83, 91, 91, 80, 97, 96, 85, 99, 98, 90, 112, 111, 103, 87, 86, 77, 78, 78, 69, 84, 83, 75, 85, 85, 74, 82, 81, 70, 104, 102, 91, 102, 99, 89, 91, 88, 77, 95, 92, 82, 89, 86, 76, 88, 87, 78, 95, 94, 85, 106, 105, 97, 114, 114, 105, 89, 88, 79, 100, 100, 91, 64, 64, 55, 88, 85, 75, 85, 81, 73, 89, 86, 78, 80, 79, 70, 81, 80, 71, 84, 83, 75, 78, 78, 69, 95, 94, 85, 83, 83, 71, 74, 73, 64, 98, 98, 86, 68, 67, 56, 74, 73, 62, 73, 72, 61, 85, 85, 74, 85, 85, 74, 72, 69, 59, 99, 96, 85, 108, 105, 97, 80, 77, 67, 83, 81, 70, 87, 84, 74, 84, 83, 75, 74, 73, 64, 62, 62, 50, 32, 31, 20, 21, 20, 12, 0, 0, 0, 14, 10, 2, 93, 90, 82, 0, 0, 0, 0, 0, 0, 2, 1, 0, 70, 70, 59, 43, 43, 32, 87, 86, 75, 123, 122, 111, 131, 130, 119, 184, 184, 173, 215, 214, 203, 222, 219, 209, 209, 207, 194, 219, 216, 205, 210, 209, 198, 207, 204, 194, 209, 206, 196, 205, 205, 194, 208, 207, 196, 209, 208, 197, 211, 211, 199, 209, 208, 197, 218, 218, 206, 213, 213, 202, 216, 215, 206, 222, 219, 211, 218, 217, 208, 219, 218, 212, 219, 218, 212, 225, 224, 218, 223, 224, 220, 221, 222, 217, 220, 219, 215, 221, 222, 217, 226, 226, 224, 220, 220, 218, 225, 225, 223, 222, 223, 220, 222, 223, 220, 222, 223, 220, 224, 222, 220, 223, 224, 222, 229, 230, 227, 222, 223, 220, 226, 226, 224, 225, 225, 223, 226, 227, 222, 225, 225, 221, 226, 227, 222, 227, 226, 222, 227, 226, 222, 229, 227, 223, 233, 232, 228, 231, 229, 225, 233, 232, 228, 232, 230, 226, 234, 233, 229, 237, 235, 231, 234, 233, 227, 238, 236, 232, 255, 255, 255, 255, 255, 255, 71, 70, 66, 55, 53, 49, 82, 78, 77, 88, 86, 84, 74, 71, 72, 87, 84, 85, 90, 87, 90, 95, 92, 95, 96, 91, 95, 98, 95, 99, 97, 93, 94, 96, 93, 94, 106, 104, 105, 100, 95, 95, 104, 102, 102, 97, 95, 95, 99, 97, 96, 103, 101, 99, 92, 87, 86, 92, 88, 84, 87, 83, 80, 94, 90, 87, 91, 87, 83, 90, 88, 84, 95, 93, 87, 95, 92, 86, 93, 90, 82, 97, 94, 86, 78, 74, 66, 97, 94, 86, 103, 100, 92, 87, 84, 76, 79, 76, 68, 103, 102, 93, 82, 79, 71, 81, 80, 71, 80, 77, 69, 101, 98, 90, 100, 100, 91, 89, 86, 76, 109, 108, 97, 92, 89, 78, 83, 82, 73, 71, 71, 62, 110, 109, 100, 95, 94, 85, 103, 102, 93, 85, 85, 74, 83, 83, 71, 95, 94, 83, 98, 98, 86, 104, 104, 92, 77, 77, 65, 89, 88, 77, 105, 105, 94, 89, 88, 77, 91, 91, 80, 105, 105, 94, 97, 96, 85, 103, 102, 91, 87, 86, 75, 103, 102, 91, 82, 82, 68, 68, 67, 56, 90, 90, 78, 94, 93, 80, 88, 87, 76, 84, 84, 70, 104, 104, 90, 98, 98, 84, 88, 88, 74, 105, 105, 92, 78, 75, 62, 89, 89, 75, 92, 89, 76, 88, 88, 74, 82, 80, 67, 77, 74, 61, 85, 82, 69, 81, 79, 66, 99, 96, 83, 91, 88, 75, 91, 88, 77, 89, 86, 76, 104, 102, 91, 93, 90, 80, 116, 113, 103, 100, 97, 86, 99, 99, 88, 74, 73, 62, 85, 85, 74, 98, 98, 86, 87, 86, 75, 89, 88, 79, 118, 117, 108, 87, 86, 75, 89, 86, 78, 77, 76, 68, 116, 113, 105, 72, 69, 59, 95, 92, 84, 78, 78, 67, 75, 73, 62, 88, 85, 77, 73, 72, 63, 108, 107, 98, 95, 94, 85, 92, 92, 83, 91, 90, 82, 99, 98, 90, 82, 81, 72, 64, 64, 55, 98, 97, 89, 92, 92, 83, 94, 93, 84, 100, 100, 91, 94, 93, 84, 84, 83, 75, 83, 82, 73, 74, 73, 64, 92, 92, 83, 221, 216, 204, 209, 204, 192, 170, 165, 153, 147, 145, 134, 101, 98, 90, 78, 74, 66, 74, 71, 63, 92, 88, 80, 83, 80, 72, 30, 27, 19, 83, 81, 70, 56, 53, 42, 79, 76, 68, 33, 31, 20, 43, 40, 29, 91, 88, 77, 65, 62, 54, 50, 47, 39, 66, 63, 55, 180, 177, 169, 85, 82, 71, 63, 60, 49, 71, 68, 57, 75, 73, 62, 91, 88, 77, 132, 129, 119, 182, 180, 169, 155, 152, 141, 191, 188, 177, 194, 191, 181, 205, 202, 191, 203, 201, 190, 212, 209, 198, 209, 206, 196, 210, 208, 197, 210, 209, 198, 216, 215, 204, 205, 204, 196, 195, 194, 185, 208, 207, 198, 203, 202, 191, 208, 207, 198, 204, 203, 194, 204, 204, 192, 204, 204, 192, 203, 202, 191, 198, 198, 187, 203, 202, 191, 205, 205, 194, 201, 200, 189, 208, 207, 196, 205, 205, 192, 209, 208, 197, 205, 205, 192, 204, 204, 190, 208, 207, 196, 210, 209, 198, 210, 209, 198, 215, 214, 205, 209, 208, 199, 212, 211, 203, 212, 212, 201, 209, 208, 199, 212, 211, 203, 210, 209, 200, 219, 218, 210, 216, 214, 208, 217, 216, 209, 218, 216, 212, 217, 215, 211, 224, 222, 218, 220, 219, 215, 220, 218, 217, 219, 219, 217, 218, 218, 216, 222, 219, 218, 213, 213, 211, 220, 220, 218, 219, 219, 217, 225, 225, 223, 221, 221, 219, 216, 217, 214, 222, 223, 220, 224, 222, 220, 223, 221, 219, 220, 218, 217, 226, 224, 223, 227, 225, 224, 226, 224, 223, 230, 228, 226, 227, 226, 222, 222, 220, 216, 223, 221, 217, 239, 237, 233, 255, 255, 255, 255, 255, 255, 160, 158, 154, 35, 34, 30, 54, 52, 48, 91, 90, 86, 78, 77, 73, 88, 86, 84, 91, 89, 88, 83, 81, 79, 98, 96, 95, 100, 98, 97, 98, 96, 95, 96, 92, 93, 102, 97, 99, 95, 90, 92, 102, 97, 99, 91, 89, 90, 96, 92, 91, 96, 92, 91, 102, 98, 97, 91, 86, 85, 98, 96, 95, 105, 104, 100, 93, 89, 86, 82, 81, 74, 97, 96, 89, 100, 96, 91, 93, 89, 84, 79, 75, 70, 88, 85, 79, 74, 71, 65, 74, 72, 66, 91, 87, 81, 113, 109, 103, 98, 97, 89, 77, 73, 65, 97, 94, 86, 104, 101, 93, 82, 79, 71, 88, 85, 75, 81, 80, 69, 78, 78, 67, 78, 75, 64, 102, 99, 91, 107, 104, 94, 85, 82, 71, 100, 97, 89, 102, 99, 89, 99, 95, 87, 88, 85, 75, 74, 71, 63, 105, 104, 96, 95, 94, 85, 76, 75, 66, 91, 91, 80, 84, 84, 72, 81, 80, 69, 94, 96, 84, 85, 87, 75, 78, 78, 67, 104, 104, 92, 82, 81, 70, 78, 78, 67, 97, 96, 85, 102, 101, 90, 70, 72, 60, 85, 85, 74, 91, 91, 78, 92, 92, 81, 91, 91, 78, 96, 96, 82, 89, 88, 77, 89, 88, 77, 99, 99, 86, 97, 97, 83, 90, 90, 76, 84, 84, 70, 96, 95, 84, 74, 73, 62, 98, 98, 84, 116, 115, 104, 94, 93, 80, 96, 96, 82, 108, 105, 93, 91, 91, 78, 99, 96, 83, 96, 94, 81, 103, 101, 88, 107, 104, 92, 80, 78, 65, 120, 117, 104, 113, 110, 99, 81, 79, 66, 96, 93, 83, 111, 109, 98, 92, 89, 78, 110, 109, 98, 114, 114, 103, 98, 98, 86, 87, 86, 75, 80, 79, 68, 107, 104, 94, 69, 68, 60, 75, 74, 65, 91, 90, 82, 84, 83, 75, 96, 93, 85, 98, 97, 89, 109, 106, 96, 96, 95, 84, 67, 64, 56, 83, 80, 72, 76, 75, 66, 107, 104, 96, 90, 89, 80, 69, 68, 60, 73, 72, 63, 91, 90, 82, 102, 101, 92, 78, 74, 66, 67, 66, 57, 97, 96, 87, 99, 98, 90, 106, 105, 97, 88, 87, 78, 95, 94, 85, 98, 97, 89, 89, 88, 79, 94, 93, 84, 235, 232, 222, 233, 230, 219, 228, 225, 215, 220, 217, 206, 229, 226, 216, 222, 219, 209, 228, 225, 215, 225, 223, 212, 219, 216, 205, 224, 221, 211, 225, 223, 212, 223, 220, 210, 221, 218, 207, 223, 220, 210, 219, 216, 205, 220, 217, 206, 214, 211, 201, 216, 213, 203, 217, 214, 206, 214, 211, 203, 217, 214, 204, 209, 206, 196, 216, 213, 203, 212, 209, 198, 213, 210, 199, 214, 211, 201, 202, 199, 189, 209, 208, 197, 210, 208, 197, 212, 209, 198, 210, 209, 198, 212, 209, 198, 212, 209, 198, 208, 207, 196, 210, 209, 198, 208, 207, 198, 204, 204, 192, 208, 207, 196, 202, 201, 190, 208, 207, 196, 205, 205, 194, 205, 204, 196, 206, 206, 195, 205, 204, 196, 205, 205, 194, 204, 204, 192, 203, 202, 191, 203, 202, 191, 203, 202, 191, 203, 202, 191, 205, 205, 194, 203, 203, 189, 204, 204, 192, 204, 204, 192, 208, 207, 196, 205, 205, 194, 210, 209, 198, 210, 209, 200, 211, 210, 201, 211, 210, 201, 210, 209, 200, 226, 225, 217, 211, 210, 201, 212, 211, 203, 205, 204, 196, 216, 214, 208, 217, 216, 209, 216, 214, 210, 216, 214, 210, 218, 216, 212, 220, 218, 217, 218, 216, 214, 219, 217, 216, 219, 217, 216, 218, 218, 216, 219, 219, 217, 220, 220, 218, 220, 220, 218, 219, 219, 217, 217, 214, 215, 222, 223, 220, 216, 217, 214, 220, 218, 217, 223, 221, 219, 230, 228, 226, 211, 209, 207, 219, 217, 216, 244, 242, 238, 255, 255, 255, 255, 255, 255, 133, 132, 126, 168, 167, 160, 47, 46, 39, 94, 92, 88, 80, 78, 74, 76, 75, 68, 82, 80, 76, 88, 86, 84, 85, 83, 82, 127, 125, 124, 84, 82, 81, 92, 90, 91, 90, 88, 86, 98, 96, 97, 95, 92, 93, 88, 86, 84, 98, 96, 95, 102, 100, 98, 89, 85, 84, 97, 95, 93, 88, 86, 84, 94, 90, 89, 96, 94, 92, 96, 94, 90, 88, 86, 82, 87, 85, 81, 104, 102, 98, 96, 95, 88, 91, 90, 84, 97, 96, 89, 100, 99, 93, 81, 78, 72, 77, 76, 70, 91, 90, 84, 86, 82, 77, 85, 84, 78, 96, 95, 88, 81, 80, 71, 80, 79, 70, 87, 86, 77, 87, 84, 76, 103, 100, 92, 83, 80, 72, 114, 111, 103, 104, 102, 91, 83, 81, 70, 102, 99, 89, 91, 88, 77, 102, 99, 89, 83, 81, 70, 86, 83, 72, 89, 86, 76, 67, 64, 54, 108, 105, 97, 89, 86, 76, 106, 106, 95, 75, 74, 65, 69, 69, 57, 95, 94, 83, 100, 100, 89, 109, 108, 97, 87, 86, 77, 64, 64, 53, 88, 87, 76, 90, 90, 78, 105, 105, 94, 92, 92, 81, 83, 83, 71, 97, 96, 85, 64, 66, 54, 105, 105, 94, 94, 93, 82, 84, 84, 72, 87, 86, 75, 89, 88, 77, 99, 99, 88, 74, 74, 60, 74, 73, 62, 88, 88, 74, 95, 95, 81, 110, 110, 96, 70, 70, 57, 97, 96, 85, 95, 95, 81, 95, 95, 81, 81, 81, 67, 87, 87, 73, 103, 103, 89, 113, 110, 97, 99, 96, 83, 92, 89, 76, 97, 95, 82, 106, 103, 90, 123, 121, 108, 81, 79, 66, 77, 74, 63, 83, 81, 70, 100, 97, 86, 94, 91, 81, 87, 84, 74, 106, 106, 95, 109, 106, 96, 96, 95, 84, 98, 98, 86, 112, 112, 98, 98, 98, 86, 83, 81, 70, 63, 62, 54, 112, 111, 103, 88, 87, 78, 87, 86, 77, 86, 83, 75, 77, 76, 68, 114, 114, 105, 83, 82, 73, 83, 82, 73, 104, 103, 94, 118, 117, 108, 85, 85, 76, 97, 96, 87, 98, 97, 89, 97, 96, 87, 88, 87, 78, 78, 78, 69, 108, 105, 97, 107, 104, 96, 91, 90, 84, 82, 79, 71, 71, 67, 60, 81, 79, 73, 81, 80, 71, 90, 89, 80, 75, 74, 65, 75, 74, 65, 228, 225, 213, 231, 226, 214, 232, 227, 215, 233, 230, 219, 230, 227, 217, 230, 227, 217, 228, 225, 215, 230, 227, 217, 228, 225, 215, 223, 220, 210, 220, 217, 206, 221, 218, 207, 213, 210, 199, 221, 218, 207, 219, 216, 205, 221, 218, 207, 221, 218, 207, 216, 213, 203, 216, 213, 203, 214, 211, 201, 213, 210, 199, 213, 210, 199, 214, 211, 201, 214, 211, 201, 214, 211, 201, 215, 212, 202, 214, 211, 201, 214, 211, 201, 212, 209, 198, 213, 210, 199, 209, 208, 197, 211, 211, 199, 206, 206, 195, 204, 204, 192, 210, 209, 198, 210, 209, 198, 209, 208, 197, 209, 208, 197, 210, 209, 198, 209, 208, 197, 204, 204, 192, 204, 204, 192, 202, 201, 190, 209, 208, 197, 205, 205, 194, 204, 204, 192, 204, 204, 192, 203, 202, 191, 203, 202, 191, 203, 202, 191, 204, 204, 192, 201, 200, 189, 206, 206, 195, 205, 205, 194, 206, 206, 195, 202, 201, 190, 205, 204, 196, 202, 201, 192, 210, 209, 200, 208, 207, 198, 206, 206, 197, 210, 209, 202, 209, 208, 199, 208, 206, 200, 211, 209, 205, 211, 210, 203, 211, 209, 205, 211, 209, 205, 216, 214, 212, 215, 212, 211, 220, 218, 217, 216, 214, 212, 219, 217, 218, 218, 216, 216, 218, 216, 216, 218, 216, 216, 215, 216, 213, 215, 212, 213, 218, 216, 214, 217, 215, 213, 215, 212, 211, 255, 255, 255, 255, 255, 255, 127, 126, 122, 255, 255, 252, 30, 28, 24, 76, 74, 72, 70, 68, 67, 82, 79, 80, 83, 81, 79, 79, 80, 77, 83, 83, 81, 85, 83, 82, 89, 87, 85, 90, 88, 86, 89, 87, 85, 80, 78, 76, 91, 90, 86, 90, 88, 84, 88, 86, 84, 82, 80, 78, 76, 74, 72, 92, 90, 89, 105, 103, 102, 99, 97, 96, 90, 88, 84, 90, 88, 84, 84, 83, 79, 102, 100, 94, 102, 98, 93, 97, 94, 88, 85, 84, 78, 89, 86, 80, 98, 97, 91, 88, 86, 80, 89, 87, 83, 97, 95, 91, 99, 98, 92, 94, 92, 86, 90, 89, 82, 100, 100, 91, 92, 91, 85, 91, 90, 82, 89, 88, 79, 99, 95, 87, 94, 93, 84, 94, 93, 84, 105, 104, 96, 111, 110, 101, 90, 90, 78, 89, 88, 77, 66, 63, 53, 95, 92, 82, 87, 84, 74, 89, 86, 76, 73, 70, 60, 80, 77, 67, 92, 89, 78, 97, 95, 84, 96, 93, 83, 65, 62, 52, 103, 100, 90, 100, 97, 86, 75, 73, 62, 100, 97, 86, 108, 105, 95, 70, 70, 59, 82, 81, 70, 80, 79, 68, 109, 108, 97, 84, 84, 72, 90, 90, 78, 81, 80, 69, 103, 102, 91, 96, 95, 84, 100, 100, 89, 69, 69, 57, 91, 91, 80, 104, 104, 92, 94, 93, 82, 84, 84, 72, 82, 81, 70, 91, 91, 80, 74, 73, 62, 69, 69, 57, 89, 88, 77, 87, 86, 75, 96, 95, 84, 88, 88, 74, 90, 90, 76, 104, 104, 90, 102, 102, 88, 94, 93, 82, 71, 71, 58, 83, 83, 69, 80, 79, 66, 108, 107, 94, 97, 97, 83, 110, 110, 96, 103, 101, 88, 114, 111, 98, 116, 114, 101, 74, 72, 59, 94, 92, 79, 85, 82, 69, 97, 95, 84, 111, 109, 98, 71, 68, 55, 121, 118, 105, 95, 93, 80, 120, 117, 106, 111, 109, 96, 64, 61, 48, 74, 71, 61, 95, 94, 83, 121, 118, 107, 96, 93, 83, 95, 94, 83, 79, 76, 68, 117, 116, 107, 99, 98, 90, 96, 93, 85, 99, 98, 90, 123, 122, 113, 85, 85, 76, 102, 101, 92, 77, 77, 65, 112, 112, 100, 96, 93, 85, 77, 77, 65, 76, 76, 64, 109, 108, 97, 73, 72, 63, 95, 92, 84, 75, 74, 65, 77, 76, 68, 73, 72, 63, 68, 67, 58, 78, 78, 69, 74, 73, 64, 77, 76, 68, 111, 110, 101, 100, 100, 91, 95, 94, 85, 230, 228, 215, 236, 234, 221, 232, 227, 215, 230, 227, 217, 230, 227, 217, 233, 230, 219, 228, 225, 215, 227, 224, 213, 225, 223, 212, 224, 221, 211, 223, 220, 210, 223, 220, 210, 222, 219, 209, 225, 223, 212, 220, 217, 206, 221, 218, 207, 217, 214, 204, 219, 216, 205, 220, 217, 206, 216, 213, 203, 217, 214, 204, 219, 216, 205, 215, 212, 202, 209, 206, 196, 214, 211, 201, 216, 213, 203, 219, 216, 205, 213, 210, 199, 212, 209, 198, 213, 210, 199, 212, 212, 201, 206, 206, 195, 210, 209, 198, 209, 208, 197, 210, 209, 198, 210, 209, 198, 209, 208, 197, 208, 207, 196, 211, 211, 199, 206, 206, 195, 205, 205, 194, 206, 206, 195, 208, 207, 196, 203, 201, 190, 210, 209, 198, 203, 202, 191, 206, 203, 192, 203, 201, 190, 206, 206, 195, 204, 204, 192, 208, 207, 196, 204, 204, 192, 205, 205, 194, 205, 205, 194, 205, 204, 196, 206, 206, 197, 201, 200, 191, 203, 202, 193, 208, 206, 200, 208, 206, 200, 209, 208, 201, 210, 209, 202, 213, 212, 206, 212, 211, 207, 211, 209, 205, 210, 208, 204, 212, 210, 209, 211, 209, 207, 215, 212, 211, 215, 212, 211, 211, 209, 209, 212, 210, 211, 215, 212, 211, 215, 212, 211, 212, 210, 209, 253, 251, 247, 255, 255, 255, 192, 191, 187, 18, 16, 12, 138, 136, 134, 85, 83, 82, 80, 78, 76, 82, 80, 78, 89, 87, 85, 92, 90, 89, 89, 86, 87, 83, 81, 81, 91, 91, 91, 86, 86, 86, 79, 79, 79, 83, 83, 83, 85, 85, 83, 84, 84, 82, 84, 84, 82, 85, 85, 83, 85, 84, 80, 85, 83, 82, 91, 90, 86, 80, 78, 74, 77, 76, 72, 97, 95, 91, 91, 90, 86, 87, 85, 79, 116, 114, 110, 78, 77, 71, 105, 104, 98, 84, 83, 77, 106, 102, 94, 94, 91, 83, 87, 85, 79, 97, 94, 86, 92, 88, 80, 103, 100, 92, 80, 78, 72, 92, 91, 85, 81, 79, 73, 90, 89, 82, 97, 96, 89, 68, 67, 60, 99, 98, 90, 88, 87, 78, 70, 69, 61, 80, 79, 70, 105, 104, 96, 86, 83, 75, 87, 86, 75, 93, 90, 80, 96, 93, 85, 83, 83, 71, 91, 88, 77, 89, 86, 76, 59, 56, 46, 77, 74, 63, 71, 68, 57, 103, 102, 91, 96, 93, 83, 95, 92, 82, 93, 90, 80, 103, 100, 90, 99, 96, 85, 96, 93, 83, 95, 92, 82, 88, 85, 75, 87, 84, 74, 75, 73, 62, 88, 85, 75, 84, 84, 72, 99, 98, 90, 91, 90, 82, 99, 99, 88, 94, 93, 84, 71, 71, 60, 88, 87, 78, 69, 68, 60, 80, 79, 68, 110, 109, 98, 73, 72, 61, 102, 101, 90, 100, 100, 89, 80, 79, 68, 104, 104, 92, 109, 108, 97, 74, 74, 60, 91, 91, 80, 98, 98, 86, 81, 80, 69, 77, 77, 64, 69, 69, 57, 73, 72, 59, 73, 72, 59, 89, 89, 75, 78, 78, 65, 100, 97, 86, 102, 99, 89, 89, 89, 75, 97, 97, 83, 83, 81, 68, 105, 105, 92, 96, 96, 82, 89, 89, 75, 87, 85, 72, 107, 104, 92, 101, 98, 86, 99, 96, 85, 116, 113, 103, 116, 113, 103, 72, 69, 59, 125, 123, 112, 108, 105, 95, 127, 124, 113, 77, 74, 63, 89, 86, 76, 66, 63, 53, 103, 102, 91, 108, 105, 95, 111, 109, 98, 59, 56, 46, 99, 95, 87, 114, 111, 100, 78, 74, 66, 109, 106, 98, 137, 136, 127, 90, 89, 80, 78, 78, 69, 84, 83, 75, 101, 98, 90, 68, 67, 58, 108, 107, 96, 91, 88, 77, 75, 72, 64, 107, 104, 94, 82, 79, 69, 100, 100, 89, 62, 61, 52, 99, 95, 87, 102, 99, 91, 67, 64, 54, 81, 78, 70, 89, 88, 79, 113, 112, 104, 100, 100, 91, 69, 68, 60, 78, 78, 67, 90, 90, 78, 228, 225, 213, 224, 222, 209, 230, 228, 215, 229, 224, 215, 230, 227, 217, 230, 227, 217, 227, 224, 213, 227, 224, 213, 227, 224, 213, 224, 221, 211, 223, 220, 210, 224, 221, 211, 223, 220, 210, 221, 218, 207, 220, 217, 206, 223, 220, 210, 217, 214, 204, 220, 217, 206, 221, 218, 207, 220, 217, 206, 220, 217, 206, 220, 217, 206, 216, 213, 203, 212, 209, 198, 214, 211, 201, 215, 212, 202, 216, 213, 203, 213, 213, 202, 210, 209, 198, 214, 211, 201, 211, 211, 199, 209, 208, 197, 212, 212, 201, 210, 209, 198, 210, 209, 198, 210, 209, 198, 215, 214, 205, 212, 212, 201, 208, 207, 198, 206, 206, 195, 204, 204, 192, 205, 205, 194, 206, 206, 195, 207, 204, 194, 199, 196, 185, 209, 206, 196, 202, 199, 189, 201, 198, 188, 211, 211, 199, 201, 200, 189, 199, 199, 188, 208, 207, 196, 202, 201, 192, 208, 207, 198, 198, 197, 189, 204, 203, 194, 210, 209, 200, 204, 203, 194, 205, 204, 198, 206, 205, 199, 209, 208, 201, 205, 204, 198, 208, 206, 200, 206, 205, 201, 212, 211, 207, 211, 209, 205, 212, 211, 207, 205, 204, 200, 210, 208, 204, 211, 209, 205, 246, 244, 240, 255, 255, 255, 127, 126, 122, 188, 186, 184, 78, 76, 75, 99, 97, 96, 83, 81, 79, 94, 91, 92, 83, 81, 81, 89, 86, 87, 88, 85, 86, 90, 88, 88, 87, 84, 85, 86, 87, 84, 85, 85, 83, 90, 88, 86, 78, 78, 76, 84, 84, 82, 85, 85, 83, 85, 85, 83, 80, 81, 78, 83, 83, 81, 83, 83, 81, 88, 89, 86, 86, 87, 84, 92, 90, 89, 93, 94, 89, 91, 90, 84, 91, 90, 84, 96, 95, 86, 85, 85, 76, 95, 94, 85, 96, 95, 86, 92, 92, 83, 89, 88, 79, 90, 89, 80, 94, 93, 84, 106, 102, 96, 83, 80, 74, 83, 82, 75, 111, 108, 100, 108, 107, 98, 84, 83, 75, 97, 96, 87, 96, 95, 86, 82, 81, 74, 87, 85, 79, 109, 108, 99, 82, 81, 72, 92, 92, 83, 87, 86, 77, 106, 106, 95, 100, 100, 89, 99, 99, 88, 75, 74, 63, 91, 91, 80, 110, 109, 98, 109, 106, 96, 92, 92, 81, 98, 98, 86, 65, 62, 52, 97, 96, 85, 101, 98, 88, 88, 85, 75, 83, 81, 70, 83, 83, 71, 64, 61, 50, 78, 75, 64, 86, 83, 72, 89, 86, 76, 108, 105, 95, 81, 78, 68, 111, 109, 98, 77, 74, 63, 79, 76, 65, 113, 110, 99, 81, 80, 69, 74, 73, 62, 95, 94, 85, 77, 76, 68, 109, 108, 99, 90, 89, 80, 95, 94, 83, 96, 95, 84, 91, 90, 82, 75, 74, 65, 106, 106, 95, 102, 101, 90, 66, 65, 54, 99, 96, 85, 84, 84, 72, 92, 92, 81, 78, 78, 67, 85, 85, 72, 108, 107, 96, 75, 74, 63, 103, 102, 91, 78, 78, 67, 97, 97, 83, 97, 95, 82, 87, 85, 72, 92, 89, 78, 100, 97, 84, 104, 102, 89, 109, 107, 94, 102, 99, 89, 115, 112, 102, 78, 75, 64, 79, 76, 65, 118, 116, 103, 88, 85, 75, 115, 112, 100, 123, 121, 108, 100, 97, 84, 107, 104, 94, 83, 81, 70, 93, 90, 80, 132, 129, 119, 96, 93, 83, 85, 82, 71, 121, 118, 105, 123, 121, 108, 122, 119, 107, 77, 74, 61, 82, 79, 69, 81, 78, 68, 124, 121, 111, 118, 116, 105, 79, 76, 65, 138, 137, 126, 95, 94, 85, 74, 71, 63, 106, 105, 97, 91, 87, 79, 76, 75, 66, 104, 103, 94, 110, 109, 100, 109, 108, 97, 120, 117, 106, 108, 107, 96, 75, 74, 63, 116, 115, 104, 91, 88, 77, 117, 116, 105, 89, 88, 77, 77, 77, 65, 90, 90, 78, 81, 80, 69, 95, 94, 85, 75, 74, 65, 84, 83, 75, 105, 105, 94, 91, 91, 80, 76, 76, 64, 231, 229, 216, 229, 227, 214, 230, 228, 215, 229, 226, 216, 229, 226, 216, 229, 226, 216, 223, 220, 210, 229, 226, 216, 225, 223, 212, 225, 223, 212, 227, 224, 213, 225, 223, 212, 227, 224, 213, 222, 219, 209, 221, 218, 207, 224, 221, 211, 218, 218, 206, 215, 214, 203, 216, 215, 204, 217, 216, 205, 214, 211, 201, 215, 212, 202, 217, 214, 204, 219, 216, 205, 215, 212, 202, 214, 211, 201, 220, 217, 206, 216, 213, 203, 212, 209, 198, 215, 212, 202, 213, 213, 202, 212, 212, 201, 211, 211, 199, 211, 211, 199, 208, 207, 198, 209, 208, 197, 206, 206, 197, 211, 210, 201, 202, 201, 192, 211, 211, 199, 209, 208, 199, 210, 209, 198, 202, 201, 190, 202, 201, 190, 209, 206, 196, 208, 205, 195, 203, 202, 191, 205, 205, 194, 206, 206, 195, 204, 204, 192, 204, 204, 192, 204, 203, 194, 203, 202, 193, 206, 206, 197, 203, 202, 193, 202, 201, 192, 203, 202, 193, 202, 201, 194, 205, 204, 198, 205, 204, 198, 206, 205, 199, 208, 206, 200, 206, 205, 199, 208, 206, 200, 215, 213, 207, 247, 246, 240, 218, 216, 212, 0, 0, 0, 48, 46, 45, 78, 76, 75, 111, 109, 107, 88, 85, 86, 92, 90, 91, 97, 95, 95, 88, 85, 86, 88, 85, 86, 88, 85, 86, 91, 89, 88, 90, 88, 86, 89, 87, 85, 91, 89, 88, 87, 85, 83, 87, 85, 83, 80, 81, 78, 87, 85, 83, 86, 87, 84, 97, 97, 95, 85, 85, 83, 84, 84, 82, 87, 88, 85, 81, 82, 77, 85, 86, 81, 90, 90, 86, 88, 89, 84, 82, 80, 76, 76, 74, 70, 87, 85, 79, 78, 78, 69, 111, 110, 101, 110, 109, 100, 103, 102, 93, 98, 97, 89, 74, 73, 64, 75, 74, 65, 98, 97, 89, 89, 88, 79, 85, 84, 78, 90, 89, 80, 84, 83, 77, 99, 98, 90, 96, 95, 86, 80, 79, 70, 100, 100, 91, 81, 80, 71, 78, 78, 69, 84, 83, 75, 100, 100, 91, 80, 79, 70, 105, 104, 96, 92, 92, 83, 75, 74, 63, 97, 96, 87, 85, 85, 74, 84, 84, 72, 90, 90, 78, 81, 80, 69, 100, 100, 89, 95, 94, 83, 104, 104, 92, 102, 101, 90, 104, 104, 92, 103, 102, 91, 98, 98, 84, 76, 76, 64, 85, 85, 74, 102, 101, 90, 80, 77, 67, 103, 100, 90, 85, 82, 71, 107, 104, 94, 82, 79, 69, 80, 77, 67, 102, 99, 89, 93, 90, 80, 113, 110, 99, 89, 88, 77, 109, 108, 97, 78, 78, 67, 63, 63, 52, 90, 90, 78, 102, 101, 90, 80, 79, 70, 99, 99, 88, 80, 79, 68, 98, 98, 86, 94, 93, 82, 102, 101, 90, 83, 83, 71, 105, 105, 94, 104, 104, 92, 74, 73, 62, 77, 77, 65, 68, 67, 56, 76, 76, 64, 87, 87, 73, 111, 110, 99, 89, 88, 77, 85, 85, 74, 102, 101, 90, 89, 88, 77, 102, 100, 87, 101, 98, 86, 88, 85, 75, 92, 89, 78, 86, 83, 70, 72, 69, 59, 115, 112, 102, 113, 110, 99, 80, 77, 67, 98, 98, 84, 93, 90, 80, 108, 105, 95, 100, 97, 86, 98, 98, 86, 121, 118, 105, 92, 89, 78, 104, 102, 91, 95, 92, 82, 93, 90, 80, 86, 83, 72, 87, 84, 74, 80, 77, 67, 80, 77, 67, 131, 128, 120, 77, 74, 63, 104, 102, 91, 80, 77, 67, 75, 73, 62, 108, 107, 98, 90, 89, 80, 74, 71, 63, 67, 64, 56, 85, 85, 76, 113, 113, 102, 109, 108, 97, 99, 98, 90, 78, 78, 67, 77, 77, 65, 78, 78, 69, 110, 109, 98, 120, 119, 111, 120, 117, 106, 90, 90, 78, 117, 116, 105, 95, 94, 83, 81, 80, 71, 74, 73, 62, 96, 95, 84, 97, 96, 87, 70, 69, 61, 105, 105, 94, 68, 67, 56, 80, 79, 68, 94, 93, 82, 227, 224, 211, 229, 224, 213, 231, 229, 216, 230, 227, 217, 229, 226, 216, 229, 226, 216, 228, 225, 215, 227, 224, 213, 223, 220, 210, 224, 221, 211, 229, 226, 216, 225, 223, 212, 224, 221, 211, 223, 220, 210, 222, 219, 209, 224, 221, 211, 224, 221, 211, 213, 213, 202, 217, 216, 205, 217, 214, 204, 219, 216, 205, 215, 214, 203, 217, 214, 204, 222, 219, 209, 217, 214, 204, 219, 216, 205, 219, 216, 205, 217, 214, 204, 216, 213, 203, 217, 214, 204, 216, 213, 203, 216, 215, 204, 215, 214, 203, 212, 212, 201, 209, 208, 199, 209, 208, 197, 210, 209, 200, 210, 209, 200, 206, 206, 197, 210, 209, 200, 205, 205, 194, 204, 204, 192, 209, 208, 197, 207, 204, 194, 206, 203, 192, 204, 204, 192, 209, 206, 196, 208, 205, 195, 198, 195, 184, 203, 202, 191, 202, 201, 192, 206, 206, 197, 202, 201, 192, 198, 197, 189, 201, 199, 193, 208, 207, 198, 203, 202, 193, 198, 197, 189, 199, 199, 190, 208, 206, 200, 202, 201, 192, 246, 245, 238, 161, 160, 154, 32, 31, 24, 48, 47, 41, 96, 94, 90, 97, 95, 93, 94, 91, 90, 94, 91, 92, 90, 88, 86, 89, 87, 85, 84, 84, 84, 88, 88, 88, 88, 86, 84, 82, 80, 78, 90, 88, 86, 88, 86, 84, 87, 85, 83, 87, 85, 83, 92, 90, 89, 84, 82, 81, 84, 82, 81, 87, 85, 83, 87, 88, 85, 91, 90, 86, 95, 93, 89, 84, 85, 80, 93, 94, 89, 84, 85, 80, 79, 80, 75, 100, 99, 93, 83, 84, 77, 98, 97, 91, 66, 64, 58, 78, 77, 71, 95, 93, 87, 102, 101, 92, 100, 100, 91, 96, 95, 86, 74, 73, 64, 82, 81, 72, 95, 94, 85, 82, 81, 72, 112, 111, 103, 82, 81, 72, 90, 89, 80, 108, 107, 98, 81, 80, 71, 98, 97, 89, 81, 80, 71, 78, 78, 67, 94, 93, 82, 78, 78, 69, 99, 99, 88, 105, 104, 96, 91, 90, 82, 94, 93, 84, 91, 90, 82, 98, 97, 89, 76, 75, 66, 77, 77, 65, 88, 87, 78, 97, 96, 85, 103, 102, 91, 82, 79, 69, 68, 67, 56, 76, 76, 64, 105, 105, 92, 99, 99, 86, 89, 89, 75, 95, 95, 81, 92, 92, 79, 76, 76, 62, 99, 99, 86, 92, 92, 79, 81, 80, 69, 100, 97, 86, 82, 81, 70, 91, 88, 77, 101, 98, 88, 91, 88, 77, 100, 97, 86, 67, 64, 54, 102, 101, 90, 77, 77, 65, 77, 77, 65, 89, 88, 77, 102, 101, 90, 102, 101, 90, 64, 64, 55, 67, 66, 55, 94, 93, 84, 82, 81, 72, 70, 70, 59, 92, 89, 78, 90, 90, 78, 95, 94, 83, 70, 70, 59, 100, 100, 89, 70, 67, 56, 92, 92, 81, 69, 69, 57, 71, 71, 60, 75, 74, 63, 77, 77, 65, 91, 91, 80, 94, 93, 82, 111, 110, 99, 101, 98, 88, 74, 73, 62, 104, 102, 91, 72, 69, 57, 71, 68, 57, 78, 75, 64, 101, 98, 88, 94, 91, 81, 73, 70, 60, 92, 89, 78, 111, 109, 98, 120, 117, 106, 115, 112, 102, 102, 99, 89, 92, 89, 78, 113, 113, 102, 93, 90, 80, 108, 105, 95, 78, 75, 64, 117, 114, 104, 109, 106, 96, 75, 73, 62, 123, 120, 110, 121, 118, 107, 75, 74, 65, 117, 114, 106, 121, 121, 112, 103, 100, 92, 115, 112, 104, 100, 100, 91, 72, 69, 61, 132, 131, 122, 139, 138, 129, 89, 88, 79, 73, 72, 63, 134, 133, 125, 66, 65, 54, 102, 101, 90, 68, 67, 58, 75, 74, 63, 92, 92, 83, 74, 73, 64, 116, 115, 106, 120, 116, 108, 95, 94, 85, 99, 98, 90, 66, 65, 56, 71, 71, 60, 100, 100, 89, 73, 72, 61, 94, 93, 84, 98, 98, 86, 110, 109, 98, 94, 93, 82, 78, 78, 67, 92, 92, 81, 234, 231, 220, 224, 221, 211, 234, 231, 220, 230, 227, 217, 230, 227, 217, 229, 226, 216, 227, 224, 213, 230, 227, 217, 225, 223, 212, 229, 226, 218, 221, 218, 210, 224, 221, 213, 227, 223, 216, 220, 217, 206, 220, 216, 208, 216, 215, 204, 221, 218, 207, 220, 217, 206, 215, 214, 203, 218, 218, 206, 220, 217, 206, 216, 215, 204, 217, 216, 205, 213, 210, 199, 219, 219, 207, 220, 217, 206, 219, 216, 205, 220, 217, 206, 222, 219, 209, 212, 209, 198, 214, 211, 201, 215, 212, 202, 213, 213, 202, 217, 216, 205, 214, 211, 201, 216, 213, 203, 216, 215, 204, 216, 215, 204, 212, 209, 198, 210, 209, 198, 209, 208, 199, 209, 208, 197, 208, 207, 198, 209, 208, 197, 206, 206, 195, 194, 193, 182, 205, 202, 191, 210, 208, 197, 205, 205, 194, 204, 203, 194, 202, 201, 192, 206, 206, 197, 206, 206, 197, 199, 199, 190, 199, 199, 190, 197, 196, 188, 196, 195, 186, 238, 237, 230, 77, 76, 70, 0, 0, 0, 89, 88, 81, 106, 105, 99, 91, 90, 84, 87, 85, 81, 84, 83, 79, 84, 83, 79, 88, 86, 84, 85, 83, 82, 88, 86, 84, 74, 75, 72, 84, 84, 82, 85, 85, 83, 85, 85, 83, 78, 76, 75, 90, 88, 86, 85, 84, 80, 84, 83, 79, 84, 83, 79, 85, 84, 80, 82, 80, 76, 78, 77, 73, 91, 90, 86, 91, 90, 86, 94, 92, 88, 94, 96, 88, 84, 85, 78, 100, 99, 93, 85, 85, 76, 95, 94, 85, 110, 109, 100, 91, 90, 82, 81, 80, 71, 83, 82, 73, 69, 68, 60, 84, 83, 75, 103, 102, 93, 76, 75, 66, 92, 92, 83, 83, 82, 73, 81, 80, 71, 85, 85, 76, 89, 88, 79, 105, 104, 96, 89, 88, 77, 94, 93, 84, 69, 69, 57, 100, 100, 89, 90, 89, 80, 80, 79, 70, 96, 95, 86, 92, 92, 81, 90, 90, 78, 83, 82, 73, 97, 96, 85, 97, 96, 87, 70, 69, 61, 91, 90, 82, 87, 86, 77, 61, 60, 51, 67, 66, 57, 94, 93, 84, 88, 87, 78, 83, 83, 71, 114, 114, 103, 87, 86, 75, 75, 74, 63, 103, 102, 91, 84, 84, 70, 78, 78, 65, 74, 74, 60, 77, 77, 64, 56, 56, 43, 68, 68, 54, 87, 87, 73, 108, 107, 96, 91, 91, 80, 82, 79, 69, 103, 102, 91, 97, 96, 85, 75, 74, 63, 99, 99, 88, 108, 107, 96, 105, 105, 94, 90, 90, 78, 82, 81, 70, 100, 100, 89, 103, 102, 91, 83, 83, 71, 84, 84, 72, 66, 65, 54, 91, 90, 82, 99, 98, 90, 80, 79, 68, 104, 103, 94, 99, 96, 85, 95, 92, 82, 80, 79, 70, 93, 90, 80, 110, 109, 98, 88, 87, 76, 78, 78, 67, 102, 101, 90, 96, 95, 84, 100, 100, 89, 106, 106, 95, 89, 88, 77, 98, 98, 84, 91, 91, 78, 70, 67, 56, 59, 58, 45, 118, 116, 103, 98, 98, 84, 96, 95, 84, 91, 88, 77, 60, 57, 47, 113, 110, 99, 83, 81, 68, 109, 107, 94, 68, 66, 55, 107, 104, 92, 73, 71, 58, 91, 88, 75, 119, 119, 107, 97, 95, 82, 110, 107, 97, 79, 76, 65, 73, 70, 60, 93, 90, 80, 77, 77, 65, 69, 69, 57, 85, 82, 71, 121, 121, 110, 133, 132, 124, 76, 76, 64, 82, 81, 72, 70, 69, 61, 113, 112, 104, 113, 112, 104, 75, 72, 64, 112, 111, 103, 127, 126, 118, 74, 73, 64, 97, 96, 87, 80, 79, 68, 127, 127, 116, 117, 116, 105, 69, 69, 57, 106, 106, 95, 118, 117, 108, 68, 67, 58, 103, 102, 93, 112, 111, 103, 73, 72, 63, 111, 110, 101, 92, 92, 83, 119, 118, 110, 91, 90, 82, 87, 86, 77, 85, 85, 76, 112, 112, 100, 77, 77, 65, 73, 72, 61, 61, 60, 49, 76, 76, 64, 46, 45, 38, 60, 57, 51, 42, 38, 32, 43, 37, 32, 23, 21, 15, 14, 14, 5, 12, 9, 1, 19, 18, 9, 18, 17, 8, 12, 9, 3, 22, 18, 13, 19, 16, 10, 30, 26, 21, 45, 42, 34, 73, 69, 64, 70, 69, 61, 107, 104, 96, 140, 140, 128, 184, 184, 173, 225, 225, 213, 246, 245, 234, 215, 214, 203, 219, 219, 207, 209, 208, 197, 216, 215, 204, 220, 217, 206, 220, 217, 206, 221, 218, 207, 219, 216, 205, 216, 215, 204, 217, 214, 204, 214, 211, 201, 216, 213, 203, 212, 212, 201, 212, 209, 198, 219, 216, 205, 215, 212, 202, 211, 211, 199, 215, 214, 205, 211, 210, 201, 213, 213, 202, 205, 204, 196, 205, 205, 194, 206, 206, 195, 211, 210, 201, 208, 207, 196, 212, 211, 203, 204, 204, 192, 208, 207, 198, 209, 208, 199, 204, 203, 194, 203, 202, 193, 199, 199, 190, 194, 192, 186, 234, 234, 225, 28, 27, 21, 91, 90, 84, 92, 91, 85, 85, 84, 78, 87, 85, 79, 84, 83, 77, 87, 85, 79, 84, 83, 77, 84, 83, 79, 94, 92, 88, 84, 83, 79, 83, 81, 77, 83, 81, 79, 84, 82, 81, 84, 82, 81, 83, 83, 81, 86, 87, 84, 80, 81, 78, 88, 86, 82, 83, 81, 77, 90, 89, 82, 81, 79, 73, 78, 77, 71, 97, 96, 89, 85, 84, 80, 78, 77, 73, 99, 98, 94, 99, 98, 94, 89, 88, 79, 80, 79, 70, 77, 78, 69, 88, 90, 80, 80, 82, 72, 94, 93, 84, 88, 87, 78, 90, 89, 80, 95, 94, 85, 82, 81, 72, 87, 86, 77, 85, 85, 76, 103, 102, 93, 94, 93, 84, 91, 90, 82, 89, 88, 79, 92, 92, 83, 74, 73, 64, 87, 86, 77, 105, 104, 96, 101, 98, 88, 81, 80, 69, 97, 95, 84, 109, 106, 96, 91, 88, 77, 104, 102, 91, 88, 85, 75, 94, 93, 82, 99, 99, 88, 80, 79, 68, 87, 86, 75, 88, 87, 76, 89, 88, 79, 95, 94, 85, 97, 96, 87, 89, 88, 79, 78, 78, 69, 92, 92, 83, 95, 94, 85, 81, 80, 71, 90, 89, 80, 95, 94, 83, 83, 83, 71, 99, 99, 86, 103, 103, 89, 100, 100, 87, 63, 63, 50, 82, 82, 68, 90, 90, 76, 119, 119, 105, 92, 92, 79, 71, 71, 60, 80, 79, 68, 112, 112, 100, 88, 87, 76, 80, 79, 68, 106, 106, 95, 74, 73, 62, 78, 78, 67, 102, 101, 90, 108, 107, 96, 62, 62, 50, 103, 102, 91, 88, 87, 76, 87, 86, 75, 103, 102, 91, 104, 103, 94, 71, 71, 62, 77, 76, 68, 64, 64, 55, 71, 71, 62, 100, 100, 89, 96, 93, 83, 66, 65, 54, 92, 92, 81, 96, 95, 84, 73, 72, 61, 100, 100, 89, 92, 92, 81, 109, 108, 97, 87, 86, 75, 104, 104, 92, 99, 99, 88, 98, 98, 84, 82, 82, 68, 67, 67, 53, 93, 90, 78, 95, 93, 80, 115, 112, 100, 73, 70, 60, 73, 72, 61, 104, 104, 92, 64, 61, 50, 91, 88, 77, 92, 89, 78, 117, 115, 102, 84, 84, 70, 76, 76, 64, 108, 105, 95, 103, 100, 90, 95, 94, 83, 121, 118, 107, 78, 75, 64, 110, 107, 97, 97, 95, 84, 64, 64, 53, 109, 108, 97, 91, 88, 77, 136, 133, 123, 83, 82, 73, 80, 79, 70, 109, 108, 99, 87, 86, 77, 95, 94, 85, 124, 121, 113, 88, 85, 77, 112, 111, 103, 103, 102, 93, 67, 66, 57, 73, 72, 63, 100, 100, 89, 130, 129, 118, 80, 79, 68, 76, 76, 64, 70, 69, 61, 67, 66, 57, 88, 87, 78, 88, 87, 78, 100, 100, 91, 77, 76, 68, 77, 76, 68, 100, 100, 91, 108, 107, 98, 61, 60, 51, 104, 103, 94, 116, 115, 106, 78, 78, 67, 84, 84, 72, 88, 87, 76, 71, 71, 60, 84, 84, 72, 255, 255, 255, 255, 255, 255, 255, 255, 253, 21, 17, 9, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 240, 236, 230, 218, 217, 210, 195, 194, 185, 156, 156, 147, 183, 182, 174, 60, 59, 50, 33, 32, 23, 0, 0, 0, 0, 0, 0, 47, 46, 35, 119, 121, 109, 244, 243, 232, 210, 209, 198, 219, 216, 205, 224, 223, 212, 221, 218, 207, 219, 219, 207, 216, 215, 204, 222, 221, 210, 219, 216, 205, 215, 212, 202, 220, 217, 206, 221, 218, 207, 217, 214, 204, 214, 211, 201, 221, 218, 207, 212, 212, 201, 216, 215, 204, 209, 208, 197, 216, 215, 204, 188, 187, 176, 212, 212, 201, 209, 208, 199, 212, 211, 203, 210, 209, 200, 208, 207, 198, 205, 204, 196, 203, 202, 193, 201, 200, 191, 236, 235, 226, 39, 38, 29, 153, 152, 145, 84, 83, 77, 92, 91, 85, 90, 89, 82, 89, 88, 81, 85, 84, 78, 81, 79, 73, 90, 89, 82, 83, 82, 75, 82, 81, 74, 83, 83, 79, 81, 79, 75, 81, 79, 75, 78, 79, 74, 74, 75, 70, 83, 81, 79, 80, 78, 76, 81, 82, 79, 80, 81, 76, 84, 85, 80, 85, 86, 81, 85, 84, 78, 85, 84, 78, 82, 81, 74, 83, 82, 75, 92, 91, 85, 91, 90, 84, 91, 90, 84, 94, 92, 86, 95, 93, 87, 71, 73, 63, 84, 85, 76, 83, 84, 75, 80, 79, 70, 91, 91, 80, 91, 92, 83, 91, 91, 80, 84, 84, 72, 89, 88, 79, 90, 90, 78, 94, 93, 84, 103, 102, 93, 99, 98, 90, 90, 89, 80, 81, 80, 71, 100, 100, 91, 81, 80, 69, 90, 90, 78, 73, 70, 60, 87, 86, 75, 82, 81, 70, 83, 83, 71, 100, 100, 89, 87, 86, 75, 71, 68, 57, 79, 76, 65, 91, 88, 77, 92, 92, 81, 85, 85, 74, 100, 100, 91, 73, 72, 61, 80, 79, 68, 87, 86, 77, 92, 92, 83, 105, 104, 96, 88, 87, 78, 95, 94, 85, 100, 100, 91, 88, 87, 78, 85, 85, 74, 71, 71, 60, 104, 104, 92, 85, 85, 74, 81, 80, 69, 68, 68, 54, 64, 64, 51, 108, 107, 94, 74, 74, 60, 64, 64, 51, 99, 99, 86, 80, 79, 66, 77, 77, 65, 64, 64, 53, 89, 88, 77, 94, 93, 82, 96, 95, 84, 71, 68, 57, 82, 81, 70, 109, 106, 96, 106, 106, 95, 74, 71, 61, 103, 102, 91, 105, 105, 94, 70, 70, 59, 110, 109, 98, 100, 100, 89, 82, 81, 70, 64, 64, 53, 88, 87, 76, 110, 109, 98, 109, 106, 96, 68, 65, 57, 114, 111, 100, 114, 114, 105, 104, 104, 92, 88, 85, 75, 64, 64, 53, 106, 106, 95, 103, 102, 91, 104, 104, 92, 78, 78, 67, 83, 83, 71, 62, 62, 50, 82, 82, 68, 71, 71, 58, 105, 105, 92, 109, 109, 95, 80, 78, 65, 114, 114, 101, 114, 114, 101, 69, 69, 57, 85, 85, 72, 94, 93, 82, 89, 88, 77, 80, 79, 66, 108, 107, 94, 81, 81, 67, 117, 114, 104, 118, 118, 104, 74, 74, 60, 116, 116, 102, 61, 59, 46, 78, 78, 67, 83, 81, 70, 58, 55, 45, 120, 116, 108, 85, 82, 71, 131, 128, 118, 89, 88, 79, 126, 126, 114, 113, 112, 104, 89, 88, 79, 76, 75, 66, 132, 131, 122, 110, 109, 100, 111, 108, 100, 53, 52, 41, 94, 93, 84, 96, 95, 84, 103, 102, 91, 69, 69, 57, 116, 115, 104, 130, 129, 118, 99, 99, 88, 78, 78, 67, 119, 119, 107, 108, 105, 97, 118, 117, 108, 96, 93, 85, 116, 115, 106, 100, 100, 89, 118, 117, 108, 70, 69, 61, 110, 109, 100, 90, 90, 78, 99, 98, 90, 100, 100, 91, 87, 84, 76, 96, 93, 85, 70, 67, 56, 77, 71, 64, 255, 255, 247, 254, 253, 245, 255, 255, 250, 18, 15, 9, 255, 255, 255, 251, 250, 241, 251, 250, 241, 249, 249, 240, 253, 252, 243, 252, 251, 242, 251, 250, 241, 251, 250, 241, 253, 252, 243, 251, 250, 241, 254, 253, 245, 253, 252, 243, 253, 252, 241, 254, 253, 245, 253, 252, 243, 247, 249, 237, 251, 253, 243, 255, 255, 247, 62, 64, 52, 0, 0, 0, 255, 255, 245, 220, 220, 209, 219, 219, 207, 222, 219, 209, 225, 223, 212, 219, 219, 207, 220, 217, 206, 217, 214, 204, 219, 216, 205, 212, 209, 196, 217, 214, 204, 214, 211, 201, 217, 214, 204, 220, 217, 206, 217, 214, 204, 212, 212, 201, 217, 216, 205, 215, 214, 203, 213, 213, 204, 212, 212, 201, 210, 209, 198, 217, 216, 205, 206, 206, 197, 198, 197, 189, 218, 217, 208, 40, 39, 30, 97, 96, 89, 88, 86, 80, 89, 88, 81, 88, 86, 80, 82, 80, 76, 83, 81, 77, 81, 79, 75, 83, 81, 77, 77, 78, 71, 81, 82, 77, 77, 78, 71, 79, 80, 73, 82, 81, 74, 79, 80, 73, 77, 78, 73, 80, 78, 72, 76, 76, 72, 74, 75, 70, 77, 76, 72, 79, 80, 75, 78, 79, 74, 78, 79, 74, 84, 85, 78, 80, 81, 74, 87, 89, 81, 84, 83, 75, 92, 92, 83, 82, 81, 74, 81, 79, 73, 88, 86, 80, 92, 91, 85, 80, 78, 72, 97, 96, 89, 84, 83, 75, 83, 82, 73, 81, 80, 69, 85, 85, 76, 91, 90, 82, 99, 98, 90, 83, 83, 71, 99, 99, 88, 82, 81, 70, 76, 75, 66, 75, 74, 65, 81, 80, 71, 84, 83, 75, 71, 71, 62, 92, 92, 83, 95, 94, 85, 96, 95, 84, 82, 81, 72, 80, 79, 70, 104, 104, 92, 91, 91, 80, 83, 83, 71, 97, 95, 84, 99, 99, 88, 85, 85, 74, 72, 69, 59, 88, 85, 75, 70, 70, 59, 91, 91, 80, 82, 81, 72, 84, 83, 75, 100, 100, 91, 92, 92, 83, 97, 96, 87, 111, 110, 101, 82, 81, 72, 94, 93, 82, 63, 63, 52, 92, 92, 81, 92, 92, 81, 81, 78, 68, 62, 62, 50, 75, 74, 63, 92, 92, 79, 81, 81, 67, 112, 112, 98, 116, 116, 102, 59, 58, 45, 60, 60, 46, 99, 99, 86, 117, 117, 103, 90, 90, 78, 98, 98, 86, 99, 99, 88, 82, 81, 70, 94, 93, 82, 63, 63, 52, 88, 87, 76, 74, 73, 62, 91, 91, 80, 99, 99, 88, 66, 65, 54, 70, 70, 59, 91, 91, 80, 111, 110, 99, 87, 86, 75, 79, 76, 65, 84, 84, 72, 112, 112, 100, 96, 95, 84, 79, 76, 65, 104, 104, 92, 102, 99, 89, 86, 83, 72, 89, 86, 76, 80, 77, 67, 92, 89, 78, 68, 66, 55, 97, 96, 85, 80, 77, 67, 82, 79, 69, 91, 91, 80, 115, 112, 102, 102, 100, 87, 96, 94, 81, 104, 102, 89, 109, 107, 94, 109, 107, 94, 92, 89, 78, 89, 86, 76, 124, 123, 112, 89, 88, 77, 111, 110, 99, 67, 66, 55, 57, 57, 44, 109, 108, 97, 77, 77, 64, 108, 107, 96, 83, 81, 70, 95, 92, 82, 73, 72, 61, 60, 57, 47, 74, 71, 61, 69, 69, 57, 114, 111, 100, 73, 72, 61, 55, 55, 43, 100, 100, 89, 95, 94, 85, 85, 85, 74, 125, 125, 113, 127, 127, 116, 109, 108, 97, 84, 83, 75, 106, 105, 97, 96, 93, 85, 114, 114, 105, 68, 67, 56, 108, 107, 96, 135, 135, 124, 111, 110, 99, 103, 102, 91, 89, 88, 77, 54, 53, 42, 78, 78, 67, 91, 91, 80, 104, 101, 93, 76, 75, 66, 103, 100, 92, 105, 104, 96, 75, 72, 64, 83, 80, 72, 128, 128, 119, 84, 83, 75, 130, 129, 118, 96, 95, 86, 108, 105, 97, 110, 107, 99, 92, 88, 80, 80, 77, 69, 107, 102, 92, 234, 232, 231, 236, 234, 232, 173, 171, 169, 35, 34, 30, 238, 236, 234, 241, 240, 236, 242, 241, 237, 239, 237, 233, 238, 236, 232, 245, 243, 239, 244, 242, 238, 246, 245, 238, 244, 242, 236, 246, 245, 238, 246, 245, 238, 245, 244, 237, 243, 245, 237, 243, 245, 235, 242, 244, 234, 249, 251, 241, 249, 251, 241, 251, 253, 241, 249, 251, 239, 168, 170, 158, 0, 0, 0, 255, 255, 252, 220, 220, 209, 222, 219, 209, 222, 219, 209, 222, 219, 209, 222, 219, 209, 220, 217, 206, 216, 213, 203, 227, 224, 213, 223, 220, 210, 221, 218, 205, 217, 214, 204, 224, 221, 211, 223, 220, 210, 224, 221, 211, 221, 218, 207, 220, 217, 206, 218, 218, 206, 217, 214, 204, 215, 214, 205, 206, 206, 197, 230, 229, 220, 34, 33, 25, 69, 68, 60, 76, 75, 68, 82, 81, 74, 83, 82, 75, 83, 82, 75, 84, 83, 79, 83, 81, 77, 88, 86, 82, 82, 80, 76, 77, 76, 70, 74, 76, 68, 77, 78, 71, 73, 74, 67, 74, 76, 68, 81, 83, 75, 76, 77, 70, 70, 71, 64, 76, 77, 70, 84, 83, 77, 75, 74, 67, 76, 75, 68, 84, 85, 78, 74, 76, 68, 74, 76, 68, 77, 78, 71, 81, 83, 75, 83, 82, 73, 84, 83, 75, 91, 90, 82, 80, 79, 70, 100, 100, 91, 90, 89, 82, 83, 82, 73, 77, 76, 68, 92, 92, 83, 108, 107, 98, 89, 88, 77, 99, 99, 88, 77, 77, 65, 102, 101, 90, 87, 86, 75, 80, 79, 68, 71, 71, 60, 75, 74, 63, 104, 104, 92, 88, 87, 78, 64, 64, 55, 88, 87, 78, 102, 101, 92, 103, 102, 93, 87, 86, 75, 95, 94, 83, 92, 92, 81, 94, 93, 84, 77, 77, 65, 95, 94, 83, 70, 70, 59, 78, 75, 64, 99, 96, 85, 88, 85, 75, 114, 111, 100, 106, 103, 92, 89, 88, 77, 94, 91, 81, 100, 100, 91, 91, 87, 79, 73, 70, 62, 84, 83, 75, 85, 85, 76, 66, 65, 56, 96, 95, 84, 97, 96, 85, 106, 106, 95, 71, 71, 60, 82, 81, 70, 90, 90, 78, 75, 74, 63, 96, 95, 84, 112, 112, 98, 119, 119, 105, 108, 107, 96, 83, 83, 69, 90, 90, 76, 78, 78, 67, 106, 106, 93, 110, 109, 98, 88, 88, 74, 77, 77, 65, 73, 72, 61, 73, 72, 61, 67, 66, 55, 100, 100, 89, 103, 100, 90, 75, 73, 62, 97, 96, 85, 70, 70, 59, 106, 106, 95, 103, 102, 91, 111, 109, 98, 78, 78, 67, 80, 77, 67, 106, 106, 95, 117, 114, 104, 80, 79, 68, 64, 64, 53, 110, 107, 97, 68, 66, 55, 84, 84, 72, 104, 104, 92, 102, 99, 89, 78, 78, 67, 54, 53, 42, 95, 94, 83, 113, 113, 102, 88, 87, 76, 100, 100, 89, 64, 64, 53, 109, 108, 97, 106, 103, 90, 68, 66, 53, 89, 87, 74, 113, 110, 97, 114, 111, 98, 68, 66, 53, 78, 75, 64, 96, 95, 84, 67, 67, 53, 90, 90, 78, 113, 113, 102, 116, 116, 102, 116, 116, 102, 85, 85, 72, 87, 87, 73, 68, 67, 56, 106, 106, 95, 128, 125, 114, 92, 89, 78, 90, 90, 78, 89, 88, 77, 121, 118, 107, 117, 116, 105, 112, 111, 103, 98, 98, 86, 83, 83, 71, 117, 116, 107, 74, 71, 61, 78, 78, 67, 70, 66, 58, 106, 105, 97, 108, 107, 96, 132, 129, 119, 97, 96, 87, 120, 119, 111, 151, 150, 139, 112, 112, 100, 135, 135, 124, 78, 78, 67, 88, 87, 76, 113, 113, 102, 81, 78, 68, 86, 83, 72, 72, 69, 59, 71, 67, 60, 110, 107, 99, 80, 79, 70, 92, 92, 83, 110, 109, 100, 114, 114, 105, 84, 83, 75, 88, 87, 78, 87, 86, 77, 74, 73, 64, 101, 98, 90, 61, 58, 50, 77, 73, 65, 111, 108, 100, 241, 239, 242, 255, 255, 255, 11, 8, 13, 252, 249, 254, 247, 244, 250, 245, 242, 247, 247, 244, 250, 245, 242, 247, 246, 243, 246, 245, 242, 247, 245, 242, 245, 242, 240, 243, 242, 240, 243, 216, 213, 216, 244, 241, 242, 240, 240, 240, 243, 243, 243, 249, 250, 247, 255, 255, 253, 244, 246, 238, 232, 233, 226, 253, 255, 242, 255, 255, 245, 243, 245, 233, 31, 33, 21, 0, 0, 0, 217, 216, 205, 221, 218, 207, 222, 219, 209, 224, 221, 211, 216, 213, 203, 221, 218, 207, 221, 218, 207, 222, 219, 209, 221, 218, 207, 224, 222, 209, 221, 218, 205, 225, 223, 212, 228, 225, 215, 221, 218, 207, 225, 223, 212, 223, 220, 210, 218, 218, 206, 218, 218, 206, 219, 218, 210, 188, 187, 178, 68, 67, 58, 85, 84, 78, 75, 74, 67, 81, 79, 73, 81, 79, 73, 85, 84, 78, 83, 82, 75, 87, 85, 79, 82, 81, 74, 80, 78, 72, 76, 75, 68, 78, 79, 72, 74, 76, 68, 69, 69, 65, 76, 77, 70, 71, 72, 65, 76, 77, 70, 75, 74, 65, 91, 90, 84, 70, 69, 61, 80, 78, 72, 81, 80, 71, 72, 74, 64, 82, 81, 72, 81, 83, 73, 77, 78, 69, 83, 84, 75, 92, 94, 84, 88, 87, 78, 90, 91, 82, 89, 88, 77, 82, 81, 72, 98, 97, 89, 81, 80, 71, 90, 89, 80, 71, 71, 62, 80, 79, 70, 64, 64, 53, 95, 94, 83, 90, 90, 78, 81, 80, 69, 106, 106, 95, 92, 92, 81, 71, 71, 60, 102, 101, 90, 98, 98, 86, 78, 78, 67, 89, 88, 79, 81, 80, 71, 103, 102, 93, 102, 101, 92, 74, 73, 64, 95, 94, 83, 98, 98, 86, 81, 80, 69, 82, 81, 70, 92, 92, 81, 68, 67, 56, 102, 101, 90, 94, 93, 82, 95, 94, 83, 82, 81, 70, 97, 95, 84, 62, 62, 50, 90, 90, 78, 76, 75, 66, 104, 104, 92, 104, 103, 94, 98, 97, 89, 81, 80, 69, 64, 61, 50, 64, 64, 53, 85, 85, 74, 114, 111, 100, 105, 105, 94, 74, 73, 62, 68, 67, 56, 92, 92, 81, 76, 76, 64, 66, 65, 52, 88, 88, 74, 87, 87, 73, 103, 103, 89, 60, 60, 46, 76, 76, 62, 87, 86, 75, 99, 99, 86, 66, 65, 54, 82, 82, 68, 102, 102, 88, 55, 55, 43, 97, 97, 83, 82, 81, 70, 102, 101, 90, 83, 83, 71, 75, 74, 63, 105, 105, 94, 81, 80, 69, 61, 60, 49, 83, 83, 71, 96, 95, 84, 68, 66, 55, 115, 112, 102, 89, 88, 77, 66, 65, 54, 78, 78, 69, 62, 62, 50, 62, 61, 52, 92, 92, 81, 106, 106, 95, 96, 95, 84, 75, 74, 63, 67, 66, 55, 73, 72, 61, 71, 71, 60, 80, 79, 68, 100, 100, 89, 88, 87, 76, 109, 106, 96, 110, 109, 98, 102, 99, 89, 75, 73, 60, 80, 78, 65, 96, 94, 81, 78, 75, 62, 117, 115, 102, 91, 88, 75, 88, 85, 75, 102, 102, 88, 112, 112, 98, 95, 95, 81, 110, 109, 98, 110, 110, 96, 134, 134, 121, 77, 77, 64, 113, 113, 102, 113, 113, 102, 83, 83, 71, 89, 86, 76, 116, 113, 103, 142, 142, 131, 118, 116, 105, 70, 67, 56, 81, 80, 69, 76, 76, 64, 82, 81, 70, 61, 60, 51, 122, 119, 111, 60, 59, 50, 118, 115, 107, 80, 79, 70, 108, 107, 98, 80, 77, 67, 121, 118, 107, 71, 68, 57, 105, 105, 94, 57, 57, 46, 84, 84, 72, 127, 127, 116, 111, 109, 98, 82, 81, 70, 73, 70, 60, 68, 66, 55, 99, 95, 87, 73, 70, 62, 78, 74, 66, 102, 99, 91, 78, 78, 69, 114, 114, 105, 70, 69, 61, 77, 76, 68, 97, 96, 87, 76, 75, 66, 91, 90, 82, 97, 96, 87, 110, 109, 100, 103, 100, 92, 69, 63, 56, 247, 246, 240, 76, 75, 66, 251, 250, 241, 252, 251, 244, 254, 253, 245, 253, 252, 243, 251, 250, 241, 253, 252, 243, 254, 253, 247, 252, 251, 244, 251, 249, 243, 250, 252, 244, 250, 252, 244, 247, 248, 241, 244, 246, 238, 242, 243, 238, 239, 240, 233, 240, 241, 234, 251, 253, 245, 255, 255, 255, 255, 255, 255, 237, 239, 227, 255, 255, 246, 255, 255, 247, 226, 228, 216, 0, 0, 0, 247, 247, 235, 219, 216, 205, 227, 224, 213, 223, 220, 210, 219, 216, 205, 221, 218, 205, 225, 223, 212, 227, 224, 211, 230, 228, 215, 233, 230, 217, 227, 224, 213, 230, 227, 217, 230, 227, 217, 231, 228, 218, 224, 221, 211, 227, 223, 216, 220, 220, 211, 0, 0, 0, 77, 78, 71, 78, 77, 71, 82, 81, 74, 80, 78, 72, 83, 82, 75, 85, 84, 78, 82, 81, 74, 81, 79, 73, 74, 72, 66, 83, 84, 77, 83, 84, 77, 72, 73, 66, 76, 77, 70, 79, 80, 73, 72, 73, 66, 74, 76, 68, 71, 73, 63, 69, 70, 61, 73, 72, 63, 82, 81, 72, 82, 81, 72, 75, 74, 65, 82, 81, 72, 70, 70, 59, 83, 83, 71, 78, 78, 67, 75, 74, 63, 87, 89, 77, 80, 82, 70, 79, 81, 69, 81, 83, 73, 80, 79, 68, 84, 84, 72, 105, 105, 94, 87, 86, 75, 80, 79, 68, 90, 90, 78, 73, 72, 61, 75, 74, 63, 96, 95, 84, 67, 67, 53, 89, 88, 77, 82, 81, 70, 84, 84, 72, 89, 88, 77, 77, 77, 65, 103, 102, 91, 88, 87, 76, 76, 76, 64, 84, 83, 75, 100, 100, 91, 99, 98, 90, 91, 90, 82, 89, 88, 79, 87, 86, 75, 83, 83, 71, 85, 85, 76, 81, 80, 69, 81, 80, 69, 88, 87, 76, 98, 98, 86, 73, 72, 61, 77, 77, 65, 73, 72, 61, 89, 88, 79, 80, 79, 68, 92, 92, 81, 71, 71, 60, 89, 88, 77, 97, 96, 85, 71, 71, 60, 84, 84, 72, 94, 93, 82, 71, 71, 60, 68, 67, 56, 102, 101, 90, 96, 95, 84, 100, 100, 89, 63, 63, 52, 54, 53, 42, 90, 90, 78, 99, 99, 86, 73, 72, 59, 71, 71, 58, 113, 113, 100, 75, 75, 61, 91, 91, 78, 106, 106, 95, 106, 106, 93, 95, 95, 81, 95, 94, 83, 73, 72, 59, 99, 99, 86, 102, 101, 90, 75, 74, 63, 78, 78, 67, 68, 67, 56, 87, 86, 75, 95, 94, 83, 84, 84, 72, 85, 85, 76, 103, 102, 91, 110, 107, 97, 74, 73, 64, 101, 98, 88, 98, 98, 86, 118, 117, 106, 109, 108, 97, 71, 71, 60, 78, 78, 67, 104, 104, 92, 81, 80, 69, 69, 69, 57, 111, 110, 99, 87, 86, 75, 60, 59, 48, 90, 90, 78, 95, 94, 83, 76, 76, 64, 65, 62, 52, 124, 121, 111, 75, 73, 62, 71, 68, 57, 71, 68, 55, 70, 67, 54, 108, 105, 93, 109, 107, 94, 83, 81, 68, 102, 100, 87, 65, 62, 50, 81, 78, 68, 99, 99, 86, 54, 53, 42, 96, 94, 81, 78, 78, 65, 94, 91, 81, 102, 102, 88, 121, 121, 110, 89, 88, 77, 77, 74, 63, 113, 110, 99, 127, 127, 116, 105, 105, 94, 83, 81, 70, 100, 97, 86, 92, 92, 81, 59, 56, 46, 79, 76, 65, 110, 109, 100, 68, 67, 58, 116, 115, 106, 128, 125, 117, 114, 114, 105, 88, 87, 78, 120, 117, 106, 73, 70, 62, 77, 77, 65, 116, 115, 104, 96, 95, 84, 65, 62, 52, 109, 106, 96, 123, 120, 110, 114, 111, 100, 110, 107, 97, 130, 127, 117, 127, 124, 113, 82, 79, 71, 128, 125, 117, 74, 71, 63, 108, 107, 98, 89, 88, 79, 95, 94, 85, 78, 78, 69, 71, 71, 62, 81, 80, 71, 66, 65, 56, 76, 75, 66, 113, 112, 104, 102, 99, 89, 97, 95, 84, 249, 249, 238, 11, 10, 0, 255, 255, 255, 255, 255, 249, 255, 255, 246, 255, 255, 246, 255, 255, 246, 255, 255, 246, 255, 255, 246, 255, 255, 246, 255, 255, 247, 255, 255, 249, 255, 255, 248, 255, 255, 248, 255, 255, 248, 255, 255, 247, 255, 255, 247, 242, 243, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 244, 255, 255, 251, 255, 255, 255, 25, 24, 13, 255, 255, 255, 225, 223, 212, 220, 217, 206, 222, 221, 210, 227, 224, 213, 227, 224, 213, 228, 225, 215, 230, 227, 217, 235, 232, 222, 231, 229, 216, 225, 223, 212, 235, 232, 222, 238, 235, 225, 233, 230, 219, 229, 226, 218, 186, 183, 175, 0, 0, 0, 85, 85, 76, 84, 83, 77, 83, 82, 75, 81, 79, 73, 79, 80, 73, 83, 82, 75, 84, 83, 77, 83, 82, 75, 82, 81, 74, 78, 77, 71, 74, 76, 68, 69, 70, 63, 81, 83, 75, 69, 70, 63, 72, 73, 66, 71, 72, 65, 70, 71, 64, 75, 74, 65, 71, 71, 62, 73, 72, 63, 90, 89, 80, 77, 76, 68, 82, 81, 72, 82, 81, 70, 78, 78, 67, 69, 69, 57, 90, 90, 78, 87, 86, 75, 83, 83, 71, 75, 74, 63, 92, 92, 81, 77, 77, 65, 94, 93, 82, 94, 93, 82, 104, 104, 92, 89, 88, 77, 89, 88, 77, 95, 94, 83, 94, 93, 82, 97, 95, 84, 78, 75, 64, 83, 83, 69, 104, 102, 89, 90, 90, 78, 66, 65, 52, 96, 96, 82, 100, 100, 87, 71, 71, 60, 82, 81, 70, 82, 81, 70, 95, 94, 83, 78, 78, 67, 77, 77, 65, 83, 83, 71, 59, 58, 47, 80, 79, 68, 73, 72, 61, 68, 67, 56, 102, 101, 90, 97, 96, 85, 88, 87, 76, 83, 83, 71, 69, 69, 57, 108, 107, 96, 94, 93, 84, 99, 98, 90, 99, 98, 90, 76, 76, 64, 89, 88, 79, 80, 79, 70, 91, 88, 77, 88, 85, 75, 97, 96, 85, 82, 81, 70, 104, 104, 92, 104, 104, 92, 110, 109, 98, 77, 77, 65, 73, 72, 61, 80, 79, 68, 100, 100, 89, 106, 106, 95, 88, 88, 74, 73, 72, 59, 97, 96, 85, 99, 99, 88, 74, 74, 60, 62, 62, 48, 71, 71, 58, 95, 95, 81, 103, 103, 89, 63, 63, 52, 60, 60, 46, 71, 71, 58, 97, 95, 82, 70, 70, 57, 92, 92, 81, 61, 60, 49, 77, 77, 65, 71, 71, 60, 109, 108, 97, 94, 93, 82, 95, 94, 85, 82, 79, 71, 82, 81, 72, 112, 111, 103, 82, 81, 72, 75, 74, 65, 62, 61, 52, 83, 83, 71, 67, 66, 55, 110, 109, 98, 98, 98, 86, 111, 110, 99, 88, 87, 76, 104, 102, 91, 106, 106, 95, 81, 80, 69, 70, 70, 59, 96, 93, 83, 111, 109, 98, 95, 92, 82, 103, 100, 90, 99, 96, 85, 114, 111, 98, 83, 81, 68, 73, 71, 58, 73, 71, 58, 100, 97, 84, 64, 61, 48, 117, 114, 104, 132, 129, 119, 101, 98, 86, 89, 87, 74, 102, 100, 87, 128, 125, 112, 82, 81, 70, 103, 103, 89, 118, 117, 106, 83, 83, 71, 133, 133, 121, 100, 97, 86, 88, 85, 75, 88, 85, 75, 120, 117, 106, 94, 91, 81, 95, 94, 83, 99, 96, 85, 158, 155, 145, 109, 106, 98, 92, 88, 80, 116, 115, 106, 97, 96, 87, 111, 110, 101, 130, 129, 120, 87, 86, 77, 94, 93, 84, 121, 121, 112, 98, 98, 86, 68, 67, 56, 123, 122, 111, 77, 74, 63, 102, 99, 89, 95, 92, 82, 80, 77, 67, 57, 57, 46, 95, 94, 83, 79, 76, 68, 135, 131, 124, 120, 119, 111, 140, 139, 130, 140, 139, 130, 73, 72, 63, 77, 76, 68, 73, 72, 63, 62, 61, 52, 63, 62, 54, 97, 95, 84, 118, 117, 106, 85, 85, 74, 84, 84, 70, 255, 255, 247, 14, 14, 3, 255, 255, 250, 255, 255, 248, 255, 255, 247, 255, 255, 246, 255, 255, 246, 255, 255, 246, 255, 255, 248, 191, 191, 180, 255, 255, 253, 255, 255, 246, 255, 255, 246, 255, 255, 249, 255, 255, 247, 255, 255, 246, 255, 255, 245, 250, 252, 242, 255, 255, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 252, 240, 255, 255, 249, 255, 255, 255, 4, 3, 0, 255, 255, 255, 223, 220, 210, 225, 223, 212, 233, 230, 217, 230, 227, 217, 230, 228, 215, 238, 236, 223, 235, 232, 220, 238, 236, 223, 235, 232, 220, 238, 236, 223, 238, 235, 225, 238, 235, 225, 233, 230, 219, 0, 0, 0, 86, 83, 75, 87, 85, 79, 80, 78, 72, 79, 80, 73, 79, 80, 73, 85, 84, 78, 80, 78, 72, 82, 81, 74, 82, 81, 74, 76, 77, 70, 80, 82, 72, 78, 79, 72, 72, 74, 64, 72, 73, 66, 72, 74, 64, 63, 64, 55, 71, 73, 63, 67, 69, 60, 74, 76, 66, 68, 67, 58, 90, 89, 80, 66, 65, 54, 81, 80, 69, 71, 71, 60, 78, 78, 67, 78, 78, 67, 76, 76, 64, 80, 79, 68, 78, 78, 67, 87, 86, 75, 74, 73, 62, 100, 100, 87, 92, 92, 79, 113, 113, 102, 91, 91, 78, 87, 86, 75, 76, 76, 64, 80, 79, 66, 98, 98, 86, 103, 102, 91, 63, 63, 52, 77, 74, 63, 95, 92, 82, 73, 71, 58, 93, 90, 78, 110, 110, 96, 78, 78, 65, 75, 73, 60, 108, 105, 95, 96, 96, 82, 76, 76, 64, 69, 69, 57, 80, 79, 68, 94, 93, 82, 94, 93, 82, 84, 84, 72, 67, 66, 55, 94, 93, 82, 80, 79, 68, 96, 95, 84, 84, 84, 72, 67, 66, 55, 75, 74, 63, 99, 99, 88, 78, 78, 67, 75, 73, 62, 83, 82, 73, 91, 90, 82, 68, 67, 58, 100, 100, 89, 99, 99, 88, 88, 87, 76, 85, 85, 74, 92, 92, 81, 98, 98, 86, 74, 71, 61, 118, 117, 106, 103, 102, 91, 85, 85, 74, 98, 98, 86, 114, 114, 103, 98, 98, 86, 90, 90, 76, 74, 73, 62, 70, 70, 57, 76, 76, 62, 98, 98, 86, 54, 54, 40, 82, 82, 68, 103, 103, 89, 106, 106, 93, 73, 72, 59, 108, 107, 96, 66, 65, 54, 103, 101, 88, 120, 120, 107, 95, 93, 80, 49, 49, 36, 105, 105, 92, 66, 65, 52, 106, 106, 95, 76, 76, 64, 69, 69, 57, 85, 85, 76, 110, 109, 100, 119, 119, 107, 67, 66, 57, 102, 101, 92, 81, 78, 70, 120, 120, 109, 61, 60, 49, 94, 93, 82, 88, 87, 76, 113, 113, 102, 118, 117, 106, 70, 70, 59, 96, 95, 84, 100, 100, 89, 98, 98, 86, 63, 60, 49, 81, 78, 68, 96, 93, 83, 57, 54, 43, 64, 61, 50, 115, 112, 102, 103, 100, 90, 104, 102, 89, 81, 79, 66, 114, 111, 98, 115, 112, 100, 72, 69, 59, 86, 83, 70, 106, 103, 92, 83, 83, 71, 96, 96, 82, 115, 112, 100, 80, 78, 65, 45, 45, 31, 111, 110, 99, 130, 129, 118, 102, 101, 90, 95, 94, 83, 97, 95, 84, 103, 100, 90, 75, 73, 62, 97, 96, 85, 67, 64, 54, 95, 94, 83, 95, 94, 83, 127, 127, 116, 74, 71, 63, 69, 68, 60, 82, 79, 71, 127, 123, 115, 104, 103, 94, 53, 52, 43, 124, 123, 114, 168, 167, 159, 70, 70, 59, 74, 73, 62, 110, 109, 98, 82, 81, 70, 86, 83, 72, 93, 90, 80, 131, 130, 119, 102, 101, 90, 79, 76, 65, 76, 76, 64, 128, 125, 117, 83, 82, 73, 73, 70, 62, 69, 68, 60, 100, 100, 89, 128, 128, 117, 82, 81, 70, 74, 73, 64, 73, 72, 63, 104, 103, 94, 89, 88, 79, 90, 89, 80, 86, 88, 78, 111, 113, 100, 48, 53, 40, 251, 250, 241, 39, 36, 28, 255, 255, 252, 255, 255, 249, 255, 255, 245, 255, 255, 245, 255, 255, 246, 255, 255, 246, 255, 255, 248, 255, 255, 252, 190, 190, 179, 255, 255, 248, 255, 255, 250, 255, 255, 249, 255, 255, 250, 255, 255, 248, 255, 255, 246, 251, 253, 241, 245, 244, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 255, 255, 249, 255, 255, 255, 0, 0, 0, 255, 255, 245, 227, 224, 213, 227, 224, 213, 230, 227, 217, 233, 233, 220, 233, 233, 222, 235, 232, 222, 235, 232, 222, 241, 241, 228, 240, 237, 224, 242, 239, 226, 237, 234, 224, 235, 232, 222, 0, 0, 0, 82, 81, 72, 89, 88, 81, 87, 85, 79, 81, 79, 73, 81, 83, 75, 83, 84, 77, 76, 77, 70, 70, 71, 64, 80, 78, 72, 81, 83, 75, 71, 72, 65, 78, 80, 70, 71, 73, 63, 69, 70, 61, 75, 74, 65, 74, 73, 64, 70, 71, 62, 62, 63, 54, 71, 71, 62, 70, 69, 61, 70, 69, 61, 68, 67, 58, 68, 67, 56, 73, 72, 61, 90, 90, 78, 75, 74, 63, 74, 73, 62, 76, 76, 64, 91, 91, 80, 83, 83, 71, 78, 78, 67, 76, 76, 64, 77, 77, 64, 104, 104, 92, 95, 94, 83, 75, 75, 61, 76, 76, 64, 74, 74, 60, 105, 105, 94, 75, 74, 63, 90, 90, 78, 120, 117, 106, 111, 109, 98, 102, 99, 89, 68, 66, 53, 74, 72, 59, 88, 86, 73, 75, 75, 61, 94, 93, 80, 68, 68, 54, 89, 89, 75, 70, 70, 59, 89, 88, 77, 81, 80, 69, 92, 92, 81, 98, 98, 86, 85, 85, 74, 85, 85, 74, 94, 91, 81, 80, 79, 68, 81, 80, 69, 74, 73, 62, 64, 64, 53, 87, 86, 75, 81, 80, 69, 99, 99, 88, 76, 76, 64, 91, 91, 80, 96, 95, 84, 99, 98, 90, 82, 81, 70, 68, 67, 58, 63, 63, 52, 75, 74, 63, 98, 98, 86, 92, 92, 81, 83, 83, 71, 75, 74, 63, 75, 74, 63, 66, 65, 54, 76, 76, 64, 108, 107, 96, 103, 102, 91, 76, 76, 64, 74, 74, 60, 104, 104, 90, 85, 85, 72, 64, 64, 51, 85, 85, 72, 111, 111, 97, 77, 77, 64, 78, 78, 65, 69, 69, 57, 74, 73, 62, 113, 113, 100, 115, 112, 100, 96, 96, 82, 70, 70, 57, 105, 105, 92, 97, 97, 83, 73, 72, 59, 98, 98, 84, 118, 117, 106, 71, 71, 60, 99, 99, 88, 103, 102, 91, 67, 66, 55, 92, 92, 83, 88, 87, 78, 99, 98, 90, 69, 68, 60, 86, 83, 75, 111, 110, 101, 105, 105, 94, 55, 55, 43, 84, 84, 72, 70, 70, 59, 95, 94, 83, 117, 114, 104, 90, 90, 78, 108, 105, 95, 60, 57, 47, 85, 82, 71, 94, 91, 81, 78, 75, 64, 115, 112, 102, 88, 85, 75, 117, 114, 104, 110, 108, 95, 121, 118, 105, 118, 116, 103, 78, 75, 62, 105, 105, 92, 102, 100, 87, 61, 61, 47, 76, 76, 62, 81, 79, 66, 132, 130, 117, 85, 82, 71, 85, 85, 74, 116, 115, 104, 133, 133, 121, 94, 93, 82, 82, 79, 69, 83, 81, 70, 112, 112, 100, 115, 112, 102, 123, 120, 110, 144, 143, 132, 106, 106, 95, 127, 126, 118, 95, 94, 85, 87, 84, 76, 101, 98, 90, 110, 107, 99, 61, 58, 50, 72, 69, 61, 83, 82, 73, 115, 112, 104, 88, 87, 76, 95, 94, 83, 114, 114, 103, 87, 86, 75, 67, 64, 54, 60, 59, 48, 126, 126, 114, 85, 82, 71, 107, 104, 94, 162, 161, 153, 89, 86, 76, 73, 70, 62, 102, 99, 91, 75, 73, 62, 81, 80, 69, 80, 79, 70, 74, 73, 62, 100, 100, 89, 120, 120, 109, 87, 86, 77, 111, 112, 103, 109, 108, 99, 73, 75, 65, 91, 93, 81, 109, 111, 99, 168, 166, 155, 206, 202, 194, 255, 255, 252, 255, 255, 249, 255, 255, 246, 255, 255, 246, 255, 255, 246, 255, 255, 246, 255, 255, 255, 189, 189, 177, 255, 255, 255, 255, 255, 247, 255, 255, 248, 255, 255, 248, 255, 255, 250, 255, 255, 248, 255, 255, 246, 251, 250, 239, 253, 252, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 242, 255, 255, 248, 215, 214, 203, 0, 0, 0, 244, 243, 232, 227, 224, 213, 230, 227, 217, 231, 231, 217, 234, 234, 223, 239, 238, 227, 238, 238, 224, 241, 241, 230, 241, 241, 230, 244, 244, 230, 254, 251, 240, 240, 237, 224, 44, 41, 31, 88, 87, 78, 81, 80, 71, 83, 82, 75, 82, 81, 74, 80, 78, 72, 80, 78, 72, 83, 84, 77, 84, 83, 77, 70, 69, 63, 72, 73, 66, 73, 74, 67, 69, 70, 63, 72, 73, 66, 68, 67, 58, 71, 72, 65, 73, 74, 67, 77, 76, 68, 69, 68, 60, 73, 72, 63, 76, 75, 66, 70, 69, 61, 71, 71, 62, 75, 74, 65, 84, 84, 72, 75, 74, 63, 74, 73, 62, 80, 79, 68, 73, 72, 61, 82, 81, 70, 87, 86, 75, 71, 71, 60, 90, 90, 78, 75, 74, 63, 100, 100, 89, 103, 102, 91, 105, 105, 94, 73, 70, 60, 99, 96, 85, 91, 91, 78, 102, 101, 90, 96, 95, 84, 106, 106, 95, 113, 113, 102, 104, 104, 92, 66, 64, 51, 89, 87, 74, 100, 97, 84, 89, 87, 74, 64, 61, 48, 75, 73, 60, 85, 85, 72, 74, 74, 60, 91, 88, 77, 88, 87, 76, 68, 67, 56, 81, 80, 69, 76, 76, 64, 68, 67, 56, 97, 96, 85, 88, 87, 76, 94, 93, 82, 61, 60, 49, 87, 86, 75, 99, 96, 85, 76, 76, 64, 94, 93, 84, 81, 80, 69, 63, 62, 54, 53, 52, 43, 75, 74, 65, 102, 101, 92, 102, 99, 91, 89, 86, 78, 100, 100, 91, 102, 101, 90, 87, 86, 75, 81, 80, 69, 85, 85, 74, 105, 105, 94, 71, 71, 60, 68, 67, 56, 98, 98, 86, 108, 107, 96, 70, 70, 59, 68, 67, 56, 62, 62, 48, 74, 74, 60, 78, 78, 65, 76, 76, 64, 116, 116, 102, 108, 107, 96, 95, 94, 83, 117, 116, 105, 77, 77, 65, 91, 91, 80, 125, 125, 111, 115, 112, 100, 89, 89, 75, 87, 87, 73, 70, 70, 57, 76, 76, 62, 102, 102, 88, 123, 123, 109, 85, 85, 74, 71, 71, 60, 69, 69, 57, 64, 64, 55, 76, 75, 66, 110, 107, 99, 78, 74, 66, 75, 72, 64, 56, 55, 47, 100, 97, 89, 87, 86, 77, 87, 84, 74, 57, 57, 46, 75, 74, 63, 110, 109, 98, 106, 105, 97, 90, 90, 78, 112, 112, 100, 91, 91, 80, 88, 87, 76, 78, 78, 67, 92, 92, 81, 109, 108, 97, 70, 67, 56, 94, 93, 82, 102, 102, 88, 99, 99, 88, 96, 94, 81, 75, 73, 60, 110, 109, 98, 121, 118, 105, 107, 104, 92, 86, 83, 70, 113, 110, 97, 108, 105, 93, 120, 117, 104, 102, 102, 88, 90, 90, 76, 81, 81, 67, 120, 120, 107, 98, 98, 84, 66, 65, 54, 124, 123, 112, 132, 131, 120, 91, 91, 80, 96, 95, 84, 116, 115, 104, 108, 107, 96, 75, 72, 64, 71, 67, 60, 86, 83, 75, 114, 111, 103, 77, 73, 65, 66, 63, 55, 78, 74, 66, 147, 144, 136, 104, 103, 94, 75, 74, 63, 95, 94, 83, 71, 71, 60, 103, 102, 91, 103, 102, 91, 108, 105, 95, 91, 91, 80, 74, 73, 62, 81, 80, 69, 92, 92, 81, 123, 122, 113, 67, 64, 56, 113, 110, 99, 87, 84, 74, 99, 96, 85, 138, 137, 126, 84, 84, 72, 74, 73, 62, 102, 101, 90, 107, 109, 99, 76, 77, 68, 108, 110, 100, 67, 69, 60, 113, 115, 103, 119, 121, 109, 28, 25, 14, 255, 255, 255, 255, 255, 252, 255, 255, 247, 255, 255, 247, 255, 255, 247, 255, 255, 248, 255, 255, 248, 255, 255, 247, 255, 255, 247, 255, 255, 248, 255, 255, 248, 255, 255, 249, 255, 255, 249, 255, 255, 251, 255, 255, 248, 255, 255, 247, 241, 238, 225, 237, 235, 222, 248, 245, 234, 255, 253, 240, 242, 239, 228, 255, 255, 252, 255, 255, 247, 45, 42, 32, 42, 42, 31, 226, 226, 215, 228, 225, 215, 236, 233, 223, 236, 235, 224, 240, 240, 228, 241, 241, 230, 246, 246, 232, 242, 242, 229, 244, 243, 232, 246, 246, 232, 229, 228, 217, 101, 96, 86, 80, 79, 70, 88, 87, 78, 83, 84, 77, 78, 79, 72, 79, 80, 73, 78, 79, 72, 74, 76, 68, 80, 81, 74, 73, 74, 67, 71, 72, 65, 77, 78, 71, 78, 79, 72, 72, 73, 66, 67, 69, 60, 67, 69, 60, 71, 71, 62, 71, 71, 62, 71, 71, 62, 73, 72, 63, 69, 68, 60, 71, 71, 62, 72, 69, 61, 68, 67, 58, 75, 74, 65, 71, 71, 60, 77, 74, 63, 77, 76, 68, 91, 90, 82, 66, 65, 54, 64, 64, 53, 70, 70, 59, 77, 77, 65, 84, 84, 72, 74, 73, 62, 74, 73, 62, 78, 75, 64, 103, 100, 90, 80, 79, 68, 83, 83, 69, 115, 112, 100, 57, 54, 43, 99, 96, 85, 83, 83, 71, 111, 110, 99, 101, 98, 88, 70, 67, 56, 66, 64, 51, 95, 93, 80, 74, 72, 59, 96, 94, 81, 103, 101, 88, 91, 88, 75, 83, 81, 70, 75, 73, 62, 92, 92, 81, 92, 92, 81, 83, 83, 71, 99, 99, 88, 94, 93, 82, 95, 94, 83, 80, 79, 68, 83, 81, 70, 81, 80, 69, 97, 96, 87, 96, 95, 86, 97, 96, 85, 74, 73, 64, 84, 83, 75, 77, 76, 68, 85, 85, 76, 102, 101, 92, 66, 65, 56, 89, 88, 79, 71, 68, 57, 102, 101, 90, 83, 83, 71, 98, 98, 86, 95, 94, 83, 84, 84, 72, 84, 83, 75, 103, 102, 91, 82, 81, 70, 57, 57, 48, 108, 107, 96, 70, 70, 59, 54, 53, 42, 91, 91, 78, 78, 78, 65, 63, 63, 50, 90, 90, 76, 106, 106, 95, 99, 99, 88, 91, 91, 80, 105, 105, 94, 104, 104, 92, 80, 79, 68, 46, 45, 34, 117, 115, 102, 106, 106, 93, 73, 72, 59, 106, 106, 93, 77, 77, 64, 92, 92, 79, 87, 87, 73, 68, 68, 54, 123, 122, 111, 140, 140, 128, 45, 42, 32, 92, 88, 80, 103, 100, 92, 74, 71, 63, 104, 101, 93, 81, 78, 70, 71, 68, 57, 66, 63, 55, 91, 91, 80, 106, 106, 95, 120, 120, 109, 83, 83, 71, 73, 72, 61, 87, 86, 75, 108, 107, 96, 75, 74, 63, 105, 105, 94, 111, 110, 99, 70, 70, 59, 89, 89, 75, 119, 119, 107, 123, 123, 109, 109, 109, 95, 89, 89, 75, 73, 71, 58, 76, 76, 62, 119, 119, 107, 80, 79, 66, 131, 131, 117, 113, 110, 97, 108, 105, 93, 95, 93, 80, 117, 115, 102, 111, 109, 96, 68, 68, 54, 113, 113, 102, 82, 81, 70, 90, 90, 78, 112, 112, 100, 92, 92, 81, 135, 135, 124, 65, 62, 52, 96, 95, 84, 110, 109, 100, 103, 102, 91, 135, 131, 124, 149, 148, 140, 79, 76, 68, 123, 120, 112, 96, 93, 85, 93, 90, 82, 88, 85, 77, 107, 104, 96, 66, 65, 56, 90, 89, 80, 106, 106, 95, 66, 65, 54, 110, 107, 97, 85, 82, 71, 114, 111, 100, 96, 95, 84, 78, 75, 64, 69, 69, 57, 61, 59, 48, 83, 81, 70, 87, 84, 74, 66, 63, 53, 89, 86, 76, 81, 78, 68, 60, 57, 47, 96, 95, 84, 117, 116, 105, 108, 107, 98, 100, 100, 89, 114, 116, 106, 90, 91, 82, 80, 82, 72, 53, 55, 46, 97, 99, 86, 28, 24, 18, 255, 255, 255, 255, 255, 249, 255, 255, 248, 255, 255, 248, 255, 255, 249, 255, 255, 252, 255, 255, 251, 255, 255, 253, 255, 255, 252, 255, 255, 253, 255, 255, 251, 255, 255, 252, 255, 255, 251, 255, 255, 249, 255, 255, 242, 249, 246, 233, 186, 181, 169, 189, 184, 172, 207, 204, 192, 223, 221, 208, 255, 255, 244, 255, 255, 254, 254, 254, 242, 2, 1, 0, 255, 255, 252, 225, 225, 213, 233, 233, 222, 232, 232, 220, 242, 242, 231, 248, 248, 237, 247, 247, 235, 251, 250, 239, 246, 245, 234, 251, 250, 239, 232, 232, 220, 46, 45, 34, 70, 70, 59, 88, 87, 78, 78, 80, 70, 83, 84, 77, 78, 79, 72, 79, 80, 73, 74, 76, 68, 73, 74, 67, 77, 78, 71, 69, 70, 63, 76, 77, 70, 72, 73, 66, 73, 72, 63, 69, 68, 60, 71, 71, 62, 69, 68, 60, 64, 64, 55, 69, 68, 60, 69, 69, 57, 70, 69, 61, 67, 66, 57, 67, 66, 57, 69, 68, 60, 69, 68, 60, 74, 71, 61, 68, 67, 58, 71, 71, 62, 77, 76, 68, 80, 79, 70, 82, 81, 70, 78, 78, 67, 100, 100, 89, 89, 88, 77, 71, 71, 60, 78, 78, 67, 96, 94, 81, 82, 80, 67, 87, 85, 72, 77, 74, 61, 73, 72, 61, 85, 82, 71, 80, 79, 68, 85, 85, 74, 85, 85, 74, 80, 77, 67, 77, 77, 65, 89, 86, 76, 84, 84, 72, 95, 95, 81, 102, 100, 87, 82, 82, 68, 71, 68, 55, 80, 79, 66, 95, 94, 83, 73, 72, 61, 74, 73, 62, 91, 91, 80, 83, 81, 70, 96, 95, 84, 81, 80, 69, 82, 81, 70, 104, 104, 92, 84, 84, 72, 84, 84, 72, 80, 79, 70, 94, 93, 84, 83, 82, 73, 97, 96, 87, 94, 93, 84, 99, 98, 90, 99, 98, 90, 63, 62, 54, 98, 97, 89, 73, 72, 61, 99, 96, 85, 68, 67, 58, 85, 85, 74, 109, 108, 97, 68, 67, 56, 110, 109, 100, 97, 96, 87, 66, 65, 56, 76, 75, 66, 88, 87, 76, 85, 85, 74, 99, 99, 88, 109, 108, 97, 63, 63, 50, 71, 71, 58, 110, 107, 97, 91, 91, 80, 116, 116, 102, 62, 62, 50, 97, 96, 85, 100, 100, 89, 80, 79, 68, 71, 71, 60, 81, 80, 69, 116, 115, 104, 121, 121, 108, 74, 72, 59, 70, 70, 57, 71, 71, 58, 88, 88, 74, 59, 58, 47, 88, 87, 76, 110, 109, 98, 77, 74, 63, 80, 79, 70, 102, 99, 89, 83, 81, 70, 95, 94, 85, 77, 74, 63, 67, 64, 56, 63, 63, 52, 57, 57, 48, 104, 102, 91, 75, 74, 63, 55, 55, 43, 63, 60, 49, 92, 89, 78, 68, 67, 56, 91, 91, 80, 90, 90, 78, 77, 77, 65, 91, 91, 80, 77, 77, 64, 114, 114, 101, 70, 70, 59, 110, 109, 98, 64, 64, 53, 98, 98, 86, 109, 109, 95, 83, 83, 69, 97, 97, 83, 106, 106, 93, 71, 68, 55, 97, 95, 82, 80, 78, 65, 123, 121, 108, 101, 98, 86, 137, 135, 122, 123, 123, 109, 90, 90, 76, 80, 79, 66, 99, 99, 86, 123, 120, 110, 63, 63, 52, 129, 126, 116, 139, 136, 126, 109, 108, 97, 82, 81, 72, 121, 118, 107, 124, 121, 113, 95, 92, 84, 156, 153, 142, 96, 93, 85, 113, 109, 101, 92, 88, 80, 103, 100, 92, 71, 71, 62, 88, 87, 78, 77, 76, 68, 78, 74, 66, 92, 92, 81, 114, 114, 103, 116, 115, 104, 128, 125, 114, 83, 81, 70, 65, 62, 52, 111, 109, 98, 121, 118, 107, 77, 74, 63, 138, 135, 125, 123, 120, 110, 102, 99, 89, 139, 136, 126, 118, 116, 105, 85, 82, 71, 97, 96, 85, 105, 105, 94, 91, 91, 80, 78, 78, 67, 77, 77, 65, 71, 73, 61, 102, 101, 90, 82, 81, 72, 14, 14, 3, 254, 254, 242, 234, 234, 223, 241, 241, 230, 239, 238, 227, 234, 234, 223, 242, 242, 231, 245, 244, 233, 244, 243, 232, 241, 241, 230, 246, 245, 234, 246, 245, 234, 251, 251, 237, 252, 252, 238, 252, 252, 238, 233, 233, 220, 191, 188, 175, 156, 151, 139, 213, 208, 196, 177, 172, 160, 252, 250, 237, 255, 255, 251, 248, 248, 237, 160, 159, 148, 78, 78, 67, 231, 230, 219, 234, 234, 223, 231, 230, 219, 243, 240, 230, 246, 245, 234, 248, 248, 237, 247, 247, 235, 252, 251, 240, 253, 252, 241, 247, 247, 235, 40, 39, 28, 84, 84, 72, 81, 83, 71, 80, 82, 72, 86, 88, 78, 76, 77, 68, 77, 78, 71, 77, 78, 71, 72, 73, 66, 76, 77, 70, 74, 76, 68, 67, 69, 62, 71, 72, 65, 72, 74, 64, 71, 73, 63, 66, 65, 56, 67, 69, 57, 70, 69, 61, 69, 68, 60, 69, 68, 60, 70, 70, 59, 74, 73, 64, 70, 70, 59, 71, 71, 62, 67, 66, 57, 68, 67, 58, 72, 69, 61, 79, 76, 68, 75, 74, 65, 73, 72, 63, 83, 82, 73, 77, 76, 68, 84, 84, 72, 90, 90, 78, 82, 81, 70, 73, 72, 61, 88, 87, 76, 91, 91, 78, 74, 72, 59, 80, 77, 67, 92, 89, 76, 83, 81, 70, 67, 66, 55, 107, 104, 94, 87, 84, 74, 78, 78, 67, 88, 85, 75, 67, 64, 54, 106, 103, 92, 97, 96, 85, 81, 78, 68, 74, 71, 61, 87, 85, 72, 81, 78, 68, 92, 92, 81, 88, 85, 75, 71, 68, 57, 92, 92, 81, 63, 63, 52, 94, 93, 82, 68, 67, 56, 70, 70, 59, 91, 91, 80, 73, 72, 61, 66, 65, 54, 78, 78, 67, 85, 85, 74, 81, 80, 71, 80, 79, 68, 98, 97, 89, 92, 92, 83, 96, 95, 86, 78, 78, 69, 81, 80, 71, 91, 90, 82, 80, 79, 70, 78, 78, 69, 96, 95, 86, 91, 91, 80, 84, 84, 72, 78, 78, 69, 108, 107, 96, 78, 78, 69, 68, 67, 58, 92, 89, 78, 81, 80, 69, 85, 85, 74, 93, 90, 80, 75, 73, 62, 96, 94, 81, 102, 101, 90, 64, 61, 50, 65, 62, 52, 83, 83, 71, 82, 81, 70, 87, 86, 75, 102, 101, 90, 121, 121, 110, 96, 95, 84, 95, 94, 83, 73, 72, 61, 116, 115, 104, 92, 92, 79, 81, 81, 67, 64, 64, 51, 108, 107, 94, 88, 88, 74, 91, 91, 80, 97, 96, 85, 106, 103, 92, 121, 118, 107, 114, 111, 100, 108, 107, 96, 103, 100, 90, 67, 64, 54, 66, 63, 55, 81, 78, 68, 92, 89, 78, 77, 74, 63, 86, 83, 72, 91, 91, 80, 113, 110, 99, 72, 69, 59, 81, 80, 69, 68, 67, 56, 113, 113, 102, 104, 104, 92, 74, 73, 62, 91, 91, 78, 119, 119, 105, 70, 70, 59, 88, 87, 76, 88, 87, 76, 126, 126, 114, 105, 105, 94, 119, 119, 107, 67, 66, 55, 116, 115, 104, 115, 112, 100, 63, 60, 47, 72, 69, 57, 129, 126, 114, 150, 147, 136, 75, 73, 60, 121, 118, 105, 94, 93, 82, 94, 91, 81, 96, 93, 83, 115, 112, 102, 116, 113, 103, 103, 100, 90, 120, 117, 106, 67, 64, 54, 144, 143, 132, 134, 134, 123, 110, 107, 99, 91, 88, 77, 142, 138, 130, 88, 85, 77, 116, 113, 105, 95, 92, 84, 70, 66, 58, 104, 103, 94, 118, 117, 108, 88, 87, 76, 121, 121, 112, 130, 129, 120, 74, 73, 62, 81, 78, 70, 147, 147, 135, 78, 78, 67, 155, 155, 144, 62, 62, 50, 110, 109, 98, 135, 135, 124, 95, 92, 82, 137, 135, 122, 85, 85, 74, 122, 119, 109, 110, 107, 97, 97, 95, 84, 113, 113, 102, 131, 130, 119, 75, 74, 63, 102, 101, 90, 75, 74, 63, 127, 126, 118, 124, 123, 114, 105, 104, 96, 68, 68, 54, 246, 245, 234, 223, 222, 211, 218, 218, 206, 220, 220, 209, 213, 213, 202, 212, 212, 201, 211, 211, 199, 212, 212, 201, 208, 207, 196, 208, 207, 196, 209, 209, 195, 203, 202, 191, 202, 202, 188, 216, 214, 201, 194, 192, 179, 178, 175, 162, 171, 168, 156, 188, 186, 173, 255, 255, 244, 255, 255, 249, 255, 255, 254, 239, 238, 227, 0, 0, 0, 247, 247, 235, 237, 236, 225, 238, 237, 226, 239, 238, 227, 247, 247, 235, 248, 248, 237, 246, 245, 234, 255, 255, 245, 255, 255, 246, 244, 243, 232, 147, 146, 137, 74, 73, 64, 87, 86, 77, 75, 74, 65, 81, 83, 73, 76, 77, 68, 79, 81, 71, 74, 76, 68, 80, 81, 74, 78, 79, 72, 70, 71, 64, 79, 80, 73, 72, 73, 66, 69, 70, 63, 74, 76, 68, 67, 69, 60, 68, 67, 58, 64, 64, 55, 68, 67, 58, 71, 71, 62, 60, 59, 50, 66, 65, 54, 72, 69, 61, 69, 69, 57, 62, 62, 50, 74, 73, 64, 70, 70, 59, 72, 69, 61, 61, 60, 49, 73, 72, 63, 71, 71, 62, 71, 67, 60, 70, 69, 61, 80, 79, 68, 83, 81, 70, 66, 65, 54, 106, 103, 92, 80, 78, 65, 64, 64, 51, 81, 79, 66, 104, 102, 91, 94, 93, 80, 62, 62, 50, 108, 105, 95, 97, 96, 85, 82, 81, 70, 77, 77, 65, 61, 60, 49, 100, 100, 89, 85, 85, 74, 96, 95, 84, 95, 94, 83, 89, 88, 77, 78, 78, 67, 84, 84, 72, 84, 84, 72, 75, 74, 63, 81, 80, 69, 80, 79, 68, 74, 73, 62, 104, 104, 92, 85, 85, 74, 87, 86, 75, 90, 90, 78, 88, 87, 76, 77, 77, 65, 88, 87, 76, 100, 100, 89, 94, 93, 82, 92, 92, 83, 82, 81, 72, 92, 92, 83, 87, 86, 77, 64, 64, 55, 88, 87, 78, 85, 85, 74, 89, 88, 77, 89, 88, 77, 100, 100, 89, 82, 81, 70, 82, 81, 70, 63, 63, 52, 87, 86, 77, 90, 89, 80, 62, 62, 50, 66, 65, 54, 85, 85, 74, 90, 90, 78, 127, 127, 116, 111, 110, 99, 69, 69, 57, 69, 69, 57, 75, 74, 63, 95, 94, 83, 65, 62, 52, 55, 55, 43, 64, 64, 53, 76, 76, 64, 134, 134, 123, 99, 99, 88, 73, 72, 61, 60, 59, 48, 82, 82, 68, 67, 67, 53, 85, 82, 71, 102, 102, 88, 115, 112, 100, 102, 101, 90, 81, 80, 69, 120, 120, 109, 60, 59, 48, 124, 123, 112, 109, 106, 96, 79, 76, 65, 100, 97, 86, 97, 95, 84, 73, 72, 61, 57, 57, 46, 124, 121, 111, 86, 83, 72, 104, 102, 91, 109, 108, 97, 72, 69, 59, 57, 54, 43, 96, 93, 83, 73, 72, 61, 112, 112, 100, 88, 87, 76, 82, 81, 70, 103, 103, 89, 91, 91, 80, 114, 114, 103, 71, 71, 60, 111, 109, 98, 80, 79, 68, 78, 78, 67, 71, 71, 60, 77, 77, 65, 123, 121, 108, 92, 89, 76, 75, 73, 60, 92, 89, 76, 87, 85, 72, 80, 78, 65, 120, 117, 106, 103, 100, 90, 122, 119, 109, 92, 89, 78, 132, 129, 119, 136, 133, 123, 115, 112, 102, 101, 98, 88, 109, 106, 96, 116, 113, 103, 82, 79, 69, 80, 77, 69, 82, 79, 69, 73, 70, 60, 117, 114, 106, 109, 106, 96, 75, 72, 64, 106, 103, 92, 64, 64, 53, 104, 104, 92, 94, 93, 84, 124, 121, 113, 82, 81, 72, 73, 72, 61, 125, 125, 113, 74, 73, 62, 114, 114, 103, 131, 130, 119, 130, 127, 117, 149, 149, 136, 124, 123, 112, 149, 146, 135, 87, 84, 74, 67, 65, 52, 89, 89, 75, 88, 85, 75, 79, 76, 64, 116, 113, 103, 85, 82, 71, 87, 86, 75, 73, 72, 61, 92, 92, 81, 98, 98, 86, 124, 123, 112, 106, 106, 95, 114, 114, 105, 118, 118, 104, 255, 255, 255, 255, 255, 245, 252, 251, 240, 255, 255, 244, 249, 249, 238, 255, 255, 245, 255, 255, 248, 255, 255, 246, 255, 255, 249, 255, 255, 249, 255, 255, 245, 241, 241, 228, 255, 255, 245, 255, 255, 246, 255, 255, 243, 255, 255, 243, 255, 255, 249, 255, 255, 244, 252, 251, 240, 255, 255, 251, 254, 254, 242, 24, 23, 12, 255, 255, 255, 240, 240, 228, 241, 241, 230, 244, 243, 232, 246, 245, 234, 251, 250, 239, 245, 244, 233, 254, 254, 242, 255, 255, 244, 255, 255, 244, 219, 219, 207, 87, 86, 77, 84, 83, 75, 87, 86, 77, 81, 83, 73, 80, 82, 72, 78, 80, 70, 76, 77, 68, 74, 76, 68, 74, 76, 68, 77, 78, 71, 69, 70, 63, 59, 61, 53, 66, 67, 60, 67, 69, 62, 75, 74, 65, 66, 68, 58, 63, 64, 55, 68, 67, 58, 68, 67, 58, 57, 57, 48, 69, 68, 60, 68, 66, 55, 67, 66, 55, 68, 67, 58, 64, 64, 53, 77, 77, 65, 60, 59, 48, 73, 72, 61, 67, 66, 57, 66, 65, 56, 60, 59, 48, 74, 73, 64, 74, 73, 64, 69, 69, 57, 76, 76, 64, 86, 83, 72, 95, 94, 83, 74, 71, 61, 60, 58, 45, 81, 78, 68, 83, 81, 68, 90, 90, 78, 85, 85, 74, 89, 88, 77, 68, 66, 55, 84, 84, 72, 98, 98, 86, 57, 57, 46, 93, 90, 80, 100, 97, 86, 73, 72, 61, 80, 79, 68, 89, 88, 77, 81, 80, 69, 94, 93, 82, 67, 66, 55, 90, 90, 78, 83, 83, 71, 66, 65, 54, 90, 90, 78, 100, 100, 89, 80, 79, 68, 91, 91, 80, 78, 78, 67, 89, 88, 77, 94, 93, 82, 82, 81, 70, 68, 67, 56, 95, 94, 83, 68, 67, 56, 78, 78, 67, 87, 86, 75, 92, 92, 81, 94, 93, 82, 91, 91, 80, 106, 106, 95, 74, 73, 62, 97, 96, 87, 76, 76, 64, 71, 71, 60, 70, 70, 59, 104, 104, 92, 68, 67, 56, 63, 63, 52, 89, 88, 77, 62, 62, 50, 98, 98, 86, 110, 107, 97, 109, 108, 97, 104, 102, 91, 96, 94, 81, 78, 75, 64, 92, 89, 78, 106, 103, 92, 102, 101, 90, 63, 63, 52, 100, 100, 89, 113, 113, 102, 76, 76, 64, 90, 90, 78, 54, 53, 42, 88, 87, 76, 96, 95, 84, 83, 81, 68, 66, 64, 51, 137, 134, 124, 67, 66, 55, 66, 65, 52, 100, 97, 86, 106, 106, 95, 131, 130, 119, 117, 116, 105, 121, 121, 110, 69, 69, 57, 121, 121, 110, 120, 120, 109, 113, 113, 102, 108, 107, 96, 83, 83, 71, 80, 79, 68, 64, 64, 53, 65, 62, 52, 50, 47, 39, 97, 95, 84, 53, 50, 40, 75, 73, 62, 85, 85, 74, 52, 51, 40, 106, 106, 95, 70, 70, 59, 111, 109, 96, 80, 77, 67, 89, 88, 77, 121, 118, 107, 57, 54, 43, 82, 81, 70, 127, 127, 116, 75, 74, 63, 67, 65, 52, 116, 114, 101, 85, 82, 69, 103, 101, 88, 99, 96, 83, 65, 62, 52, 93, 90, 80, 85, 82, 71, 121, 118, 107, 127, 124, 113, 97, 95, 84, 70, 67, 56, 129, 126, 116, 85, 82, 71, 134, 131, 120, 92, 89, 78, 91, 88, 77, 101, 98, 88, 96, 93, 83, 122, 119, 111, 75, 73, 62, 80, 77, 67, 79, 76, 65, 68, 65, 57, 102, 99, 91, 118, 117, 108, 113, 112, 104, 81, 80, 71, 81, 80, 71, 102, 101, 92, 160, 159, 148, 97, 96, 85, 105, 105, 94, 83, 81, 70, 89, 86, 76, 104, 104, 92, 59, 56, 46, 87, 85, 72, 94, 91, 81, 60, 58, 45, 118, 117, 106, 75, 73, 62, 125, 123, 112, 78, 75, 64, 88, 85, 75, 125, 125, 113, 158, 157, 146, 85, 85, 74, 85, 85, 74, 123, 122, 111, 119, 119, 107, 117, 116, 105, 255, 255, 232, 255, 255, 250, 255, 255, 245, 255, 255, 245, 255, 255, 247, 255, 255, 244, 255, 255, 244, 253, 252, 243, 254, 254, 242, 253, 252, 241, 252, 251, 240, 252, 251, 240, 255, 255, 248, 255, 255, 247, 255, 255, 244, 255, 255, 244, 255, 255, 245, 255, 255, 247, 255, 255, 248, 253, 252, 243, 171, 171, 162, 0, 0, 0, 255, 255, 254, 231, 230, 219, 242, 242, 231, 244, 243, 232, 247, 247, 235, 249, 249, 238, 253, 252, 241, 254, 254, 242, 255, 255, 245, 255, 255, 248, 255, 255, 245, 35, 34, 26, 84, 83, 75, 85, 85, 76, 85, 85, 76, 91, 90, 82, 81, 83, 73, 80, 82, 72, 74, 76, 66, 72, 73, 66, 70, 71, 62, 71, 72, 65, 65, 66, 59, 67, 69, 60, 58, 60, 50, 65, 67, 57, 64, 64, 55, 65, 67, 57, 67, 66, 55, 64, 64, 53, 67, 64, 56, 61, 60, 51, 61, 60, 51, 63, 63, 52, 68, 65, 57, 59, 58, 49, 63, 63, 52, 73, 70, 60, 75, 74, 63, 74, 73, 62, 68, 67, 56, 63, 63, 52, 68, 67, 56, 69, 69, 57, 82, 81, 70, 82, 81, 70, 78, 78, 67, 77, 74, 63, 89, 86, 76, 74, 71, 61, 91, 88, 77, 79, 76, 65, 67, 64, 54, 60, 57, 47, 98, 98, 86, 78, 75, 64, 70, 67, 56, 103, 102, 91, 77, 77, 65, 76, 76, 64, 90, 90, 78, 70, 67, 56, 78, 78, 67, 89, 88, 79, 73, 72, 61, 87, 86, 77, 77, 77, 65, 74, 73, 64, 92, 92, 83, 87, 86, 75, 78, 78, 67, 89, 88, 77, 85, 85, 74, 83, 83, 71, 78, 78, 67, 100, 100, 89, 99, 99, 88, 60, 59, 48, 91, 91, 80, 84, 84, 72, 100, 100, 89, 84, 84, 72, 91, 91, 80, 87, 86, 75, 96, 95, 84, 94, 93, 82, 74, 73, 62, 82, 81, 70, 68, 67, 56, 69, 69, 57, 83, 83, 71, 63, 63, 52, 95, 94, 83, 87, 86, 75, 98, 98, 86, 49, 51, 39, 105, 105, 94, 70, 70, 59, 97, 96, 85, 106, 103, 92, 97, 96, 85, 79, 76, 65, 74, 72, 59, 96, 95, 84, 105, 105, 94, 92, 92, 81, 72, 69, 59, 108, 107, 96, 114, 114, 103, 76, 76, 64, 63, 63, 52, 78, 78, 67, 105, 105, 94, 140, 140, 128, 97, 96, 85, 107, 104, 94, 55, 55, 41, 110, 107, 97, 80, 77, 67, 92, 92, 79, 113, 110, 99, 68, 66, 55, 117, 116, 105, 99, 99, 88, 117, 116, 105, 82, 79, 69, 105, 105, 94, 66, 65, 54, 84, 84, 72, 71, 71, 60, 61, 60, 49, 66, 63, 53, 103, 102, 91, 66, 63, 53, 77, 73, 65, 121, 118, 107, 68, 66, 55, 60, 57, 47, 102, 99, 89, 88, 85, 75, 114, 111, 100, 84, 84, 72, 71, 68, 57, 110, 107, 97, 100, 97, 86, 97, 95, 84, 80, 77, 67, 66, 65, 54, 116, 115, 104, 64, 64, 53, 90, 90, 78, 73, 71, 58, 97, 95, 84, 103, 100, 90, 103, 101, 88, 82, 79, 69, 104, 102, 91, 109, 106, 96, 123, 120, 110, 120, 117, 106, 99, 96, 85, 79, 76, 65, 107, 104, 94, 143, 140, 129, 79, 76, 65, 79, 76, 65, 102, 99, 89, 93, 90, 80, 72, 69, 59, 92, 88, 80, 78, 78, 67, 81, 78, 68, 92, 92, 81, 106, 102, 94, 106, 102, 94, 103, 102, 93, 127, 126, 118, 74, 71, 61, 97, 96, 85, 134, 134, 123, 138, 137, 126, 151, 150, 139, 69, 69, 57, 97, 96, 85, 123, 122, 111, 71, 71, 60, 120, 117, 106, 67, 64, 54, 117, 115, 102, 155, 152, 139, 89, 88, 77, 95, 92, 82, 131, 130, 119, 89, 86, 76, 83, 83, 71, 99, 98, 90, 107, 104, 94, 95, 94, 83, 116, 115, 104, 92, 92, 81, 76, 76, 64, 114, 114, 103, 5, 4, 0, 185, 184, 178, 216, 215, 206, 225, 224, 216, 248, 248, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 224, 216, 53, 52, 43, 0, 0, 0, 206, 206, 197, 227, 227, 218, 242, 242, 231, 240, 240, 228, 246, 245, 234, 247, 247, 235, 248, 248, 237, 251, 250, 239, 254, 254, 242, 255, 255, 245, 255, 255, 248, 255, 255, 247, 190, 190, 179, 80, 79, 70, 81, 80, 71, 78, 78, 69, 92, 92, 83, 76, 77, 70, 82, 81, 74, 74, 76, 68, 76, 77, 68, 69, 70, 61, 71, 73, 63, 74, 76, 66, 59, 61, 53, 60, 62, 54, 60, 62, 52, 63, 64, 55, 67, 69, 60, 63, 64, 55, 61, 60, 51, 60, 62, 50, 59, 58, 47, 56, 55, 47, 66, 65, 56, 63, 63, 52, 57, 57, 48, 66, 65, 56, 69, 69, 57, 66, 65, 56, 61, 60, 49, 56, 56, 45, 56, 56, 45, 62, 62, 50, 64, 64, 53, 68, 67, 56, 69, 69, 57, 75, 74, 63, 87, 86, 75, 62, 62, 50, 82, 79, 69, 91, 88, 77, 87, 84, 74, 74, 71, 61, 80, 77, 67, 93, 90, 78, 81, 80, 69, 77, 77, 65, 85, 85, 74, 99, 99, 88, 74, 73, 62, 81, 80, 69, 84, 84, 72, 90, 90, 78, 82, 81, 70, 82, 81, 70, 68, 67, 56, 82, 81, 70, 81, 80, 69, 74, 73, 62, 69, 69, 57, 78, 78, 67, 81, 80, 69, 81, 80, 69, 76, 76, 64, 85, 85, 74, 89, 88, 77, 73, 72, 61, 80, 79, 68, 91, 91, 80, 91, 91, 80, 89, 88, 77, 69, 69, 57, 88, 87, 76, 83, 83, 71, 105, 104, 96, 82, 81, 70, 80, 79, 68, 90, 90, 78, 104, 104, 92, 95, 97, 85, 99, 99, 88, 69, 69, 57, 121, 121, 110, 94, 93, 82, 91, 91, 80, 97, 96, 85, 71, 71, 60, 67, 66, 55, 71, 71, 60, 88, 87, 76, 67, 66, 55, 49, 49, 38, 102, 101, 90, 72, 69, 59, 71, 68, 57, 125, 125, 113, 103, 102, 91, 76, 76, 64, 124, 123, 112, 89, 88, 77, 69, 69, 57, 90, 90, 78, 90, 90, 78, 103, 102, 91, 91, 91, 80, 99, 96, 85, 97, 95, 84, 103, 100, 90, 78, 75, 64, 74, 71, 61, 83, 83, 71, 74, 71, 61, 66, 65, 54, 96, 95, 84, 64, 64, 53, 112, 112, 100, 56, 53, 42, 113, 110, 99, 67, 66, 55, 64, 64, 53, 63, 60, 49, 78, 78, 67, 113, 110, 99, 71, 68, 57, 141, 141, 129, 92, 92, 83, 88, 87, 78, 102, 99, 89, 129, 126, 116, 104, 102, 91, 86, 83, 72, 106, 103, 92, 78, 78, 67, 104, 102, 91, 79, 76, 64, 111, 109, 98, 104, 102, 91, 95, 93, 80, 123, 120, 110, 96, 95, 84, 63, 63, 52, 122, 119, 109, 124, 121, 111, 115, 112, 102, 75, 74, 63, 125, 125, 113, 104, 102, 91, 139, 136, 126, 139, 136, 126, 130, 127, 117, 127, 124, 113, 80, 77, 67, 99, 96, 85, 93, 90, 80, 97, 95, 84, 101, 98, 88, 137, 134, 124, 83, 81, 70, 95, 93, 80, 97, 95, 84, 69, 69, 57, 98, 98, 86, 139, 136, 126, 119, 119, 107, 125, 123, 112, 160, 158, 147, 124, 123, 112, 99, 95, 87, 63, 63, 52, 131, 130, 119, 132, 131, 120, 95, 94, 83, 66, 63, 53, 103, 102, 91, 116, 115, 104, 116, 113, 103, 127, 124, 113, 78, 75, 64, 143, 140, 128, 72, 69, 57, 78, 75, 62, 131, 128, 118, 120, 117, 106, 126, 126, 114, 53, 50, 40, 153, 152, 141, 126, 126, 114, 120, 120, 109, 131, 130, 119, 90, 90, 78, 68, 67, 56, 78, 78, 65, 81, 81, 67, 222, 221, 210, 236, 235, 224, 223, 222, 211, 234, 234, 223, 241, 238, 227, 229, 226, 218, 237, 234, 224, 221, 218, 210, 205, 204, 196, 194, 191, 183, 192, 189, 181, 178, 175, 167, 121, 118, 110, 127, 123, 115, 98, 97, 89, 108, 107, 98, 181, 180, 171, 242, 242, 233, 238, 237, 228, 220, 220, 211, 234, 234, 225, 236, 235, 226, 244, 243, 232, 245, 244, 233, 247, 247, 235, 244, 243, 232, 255, 255, 245, 255, 255, 245, 255, 255, 246, 255, 255, 252, 255, 255, 248, 255, 255, 245, 19, 19, 7, 94, 93, 84, 85, 85, 76, 84, 83, 75, 89, 88, 79, 86, 88, 78, 81, 80, 71, 76, 77, 68, 73, 75, 65, 67, 69, 60, 78, 80, 70, 73, 72, 63, 69, 68, 60, 70, 71, 62, 66, 65, 56, 63, 62, 54, 59, 61, 51, 63, 64, 55, 61, 60, 49, 64, 64, 53, 61, 60, 49, 63, 63, 52, 62, 62, 50, 66, 65, 56, 61, 60, 51, 64, 64, 55, 62, 61, 52, 64, 64, 55, 61, 60, 49, 66, 65, 54, 66, 65, 54, 56, 56, 45, 67, 66, 55, 62, 62, 50, 73, 72, 61, 50, 50, 39, 83, 83, 71, 66, 65, 54, 66, 65, 54, 74, 73, 62, 92, 92, 81, 94, 91, 81, 92, 89, 78, 75, 73, 62, 66, 65, 54, 78, 78, 67, 66, 65, 54, 108, 107, 96, 90, 90, 78, 64, 64, 53, 68, 67, 56, 73, 72, 61, 95, 94, 83, 77, 77, 65, 67, 66, 55, 102, 101, 90, 85, 85, 74, 62, 62, 50, 78, 78, 67, 80, 79, 68, 91, 91, 80, 73, 72, 61, 77, 77, 65, 88, 87, 76, 80, 79, 68, 76, 76, 64, 63, 63, 52, 88, 87, 76, 89, 88, 77, 63, 63, 52, 94, 93, 82, 99, 99, 88, 89, 88, 77, 70, 70, 59, 81, 80, 69, 97, 96, 85, 68, 67, 56, 103, 102, 91, 99, 99, 88, 94, 93, 82, 67, 66, 55, 90, 90, 78, 61, 60, 49, 106, 106, 95, 78, 78, 67, 100, 100, 89, 69, 69, 57, 84, 84, 72, 63, 63, 52, 117, 116, 105, 106, 106, 95, 111, 110, 99, 100, 100, 89, 84, 84, 72, 113, 113, 102, 125, 125, 111, 112, 112, 100, 128, 128, 117, 114, 114, 103, 91, 91, 80, 108, 107, 96, 120, 120, 109, 86, 83, 72, 69, 69, 57, 49, 46, 35, 78, 75, 64, 113, 110, 99, 99, 96, 85, 111, 109, 98, 88, 87, 76, 95, 92, 82, 92, 92, 81, 118, 117, 106, 80, 79, 68, 98, 98, 86, 119, 119, 107, 75, 74, 63, 56, 56, 45, 77, 77, 65, 85, 85, 74, 116, 115, 104, 67, 66, 55, 83, 83, 71, 116, 115, 104, 110, 109, 98, 109, 106, 96, 101, 98, 88, 113, 110, 99, 120, 117, 106, 72, 69, 59, 65, 62, 52, 99, 96, 85, 135, 132, 121, 101, 98, 88, 111, 109, 98, 94, 91, 81, 79, 76, 65, 68, 67, 56, 60, 59, 48, 117, 116, 105, 114, 114, 103, 82, 81, 70, 91, 88, 77, 75, 73, 62, 81, 78, 68, 64, 61, 50, 92, 89, 78, 101, 98, 88, 78, 75, 64, 122, 119, 109, 79, 76, 65, 103, 100, 90, 130, 127, 117, 120, 117, 106, 66, 63, 53, 82, 79, 69, 132, 129, 119, 109, 106, 96, 74, 73, 62, 138, 137, 126, 114, 114, 103, 78, 78, 67, 97, 96, 85, 80, 79, 70, 70, 69, 61, 85, 85, 74, 67, 66, 55, 82, 81, 70, 160, 159, 148, 135, 135, 124, 81, 80, 69, 71, 71, 60, 138, 137, 126, 95, 92, 82, 83, 81, 70, 116, 114, 101, 128, 125, 112, 125, 123, 110, 61, 59, 46, 132, 130, 117, 75, 73, 60, 97, 95, 84, 153, 151, 140, 151, 148, 138, 80, 79, 68, 76, 75, 66, 120, 119, 111, 67, 66, 55, 92, 92, 81, 105, 105, 94, 134, 134, 123, 62, 64, 50, 222, 219, 209, 219, 216, 205, 230, 227, 217, 229, 226, 216, 229, 226, 218, 231, 228, 220, 229, 226, 218, 229, 226, 218, 233, 229, 221, 233, 229, 221, 230, 227, 219, 233, 229, 221, 229, 226, 218, 231, 228, 220, 231, 228, 220, 233, 229, 221, 231, 228, 220, 235, 232, 224, 233, 232, 224, 236, 235, 226, 236, 233, 225, 239, 238, 229, 242, 242, 231, 244, 243, 232, 249, 249, 238, 252, 251, 240, 254, 254, 242, 255, 255, 251, 255, 255, 249, 255, 255, 251, 255, 255, 244, 162, 162, 151, 74, 73, 64, 80, 82, 72, 84, 85, 76, 88, 90, 80, 80, 82, 72, 73, 75, 65, 78, 80, 70, 73, 75, 65, 71, 70, 64, 65, 67, 57, 63, 62, 54, 65, 67, 57, 63, 62, 56, 70, 69, 61, 56, 57, 48, 59, 58, 49, 60, 59, 48, 59, 61, 49, 63, 63, 52, 59, 58, 47, 63, 63, 52, 54, 53, 42, 68, 67, 56, 53, 52, 41, 60, 59, 50, 63, 62, 54, 62, 61, 52, 61, 60, 49, 67, 66, 55, 64, 64, 53, 67, 66, 55, 64, 64, 53, 66, 65, 54, 70, 70, 59, 62, 62, 50, 59, 58, 47, 78, 78, 67, 63, 63, 52, 73, 72, 61, 80, 79, 68, 95, 94, 83, 66, 65, 54, 90, 90, 78, 56, 56, 45, 94, 93, 82, 83, 83, 71, 99, 99, 88, 71, 71, 60, 96, 95, 84, 77, 77, 65, 67, 66, 55, 90, 90, 78, 71, 71, 60, 73, 72, 63, 89, 88, 79, 84, 83, 75, 94, 93, 82, 74, 73, 62, 71, 71, 60, 73, 72, 61, 82, 81, 70, 66, 65, 54, 91, 91, 80, 78, 78, 67, 75, 74, 63, 78, 78, 67, 83, 83, 71, 74, 73, 62, 75, 74, 63, 68, 67, 56, 71, 71, 60, 89, 88, 77, 80, 79, 68, 104, 104, 92, 77, 77, 65, 64, 64, 53, 102, 101, 90, 75, 74, 63, 61, 60, 49, 95, 94, 83, 96, 95, 84, 61, 60, 49, 123, 122, 111, 68, 67, 56, 71, 73, 61, 103, 102, 91, 116, 115, 104, 70, 70, 59, 111, 110, 99, 63, 65, 53, 98, 98, 86, 61, 60, 49, 85, 85, 74, 104, 104, 90, 109, 108, 97, 120, 120, 109, 70, 70, 59, 61, 60, 49, 75, 74, 63, 116, 115, 104, 106, 106, 95, 67, 66, 55, 111, 110, 99, 113, 113, 102, 109, 106, 96, 96, 93, 83, 82, 79, 69, 130, 127, 117, 111, 109, 98, 67, 64, 54, 133, 133, 121, 87, 86, 75, 70, 70, 59, 99, 99, 88, 118, 117, 106, 117, 116, 105, 52, 51, 40, 100, 100, 89, 83, 83, 71, 62, 62, 50, 83, 83, 71, 124, 123, 112, 79, 76, 65, 119, 119, 107, 102, 101, 90, 99, 96, 85, 72, 69, 59, 107, 104, 94, 110, 107, 97, 134, 131, 120, 60, 59, 48, 106, 106, 95, 68, 67, 56, 116, 115, 104, 56, 56, 45, 83, 83, 71, 64, 64, 53, 104, 104, 92, 137, 136, 125, 95, 94, 83, 114, 114, 103, 74, 73, 62, 87, 84, 74, 77, 74, 63, 88, 85, 75, 133, 133, 121, 93, 90, 80, 92, 89, 78, 144, 141, 131, 145, 142, 132, 70, 67, 56, 117, 114, 104, 131, 129, 116, 131, 128, 118, 59, 56, 46, 79, 76, 65, 117, 114, 104, 117, 114, 104, 103, 102, 91, 90, 90, 78, 68, 67, 56, 85, 85, 74, 149, 149, 138, 107, 104, 94, 124, 121, 111, 102, 101, 90, 80, 79, 68, 130, 129, 118, 139, 138, 127, 83, 81, 70, 82, 79, 69, 136, 133, 123, 65, 62, 52, 135, 132, 121, 95, 92, 82, 72, 69, 57, 97, 95, 82, 71, 68, 55, 87, 82, 70, 111, 109, 96, 78, 75, 64, 123, 120, 110, 130, 127, 117, 108, 105, 97, 105, 104, 96, 154, 154, 142, 111, 110, 99, 75, 74, 63, 106, 106, 95, 72, 69, 57, 57, 57, 44, 81, 79, 66, 229, 227, 214, 231, 229, 216, 229, 226, 216, 229, 226, 216, 229, 226, 216, 229, 226, 218, 233, 229, 221, 228, 225, 217, 230, 227, 219, 225, 222, 214, 231, 228, 220, 234, 230, 223, 233, 229, 221, 234, 230, 223, 233, 229, 221, 230, 227, 219, 231, 228, 220, 236, 233, 225, 235, 232, 224, 235, 232, 224, 238, 237, 228, 242, 242, 231, 245, 244, 235, 248, 248, 237, 252, 251, 240, 254, 254, 242, 255, 255, 247, 255, 255, 249, 255, 255, 254, 255, 255, 255, 208, 210, 198, 22, 24, 14, 84, 85, 76, 80, 82, 72, 79, 81, 71, 86, 88, 78, 78, 80, 70, 86, 88, 78, 80, 82, 72, 71, 72, 65, 69, 70, 63, 64, 66, 56, 64, 64, 55, 63, 64, 55, 64, 64, 55, 63, 62, 54, 66, 65, 56, 69, 68, 60, 57, 57, 48, 50, 50, 41, 64, 64, 55, 63, 63, 52, 63, 63, 52, 61, 60, 49, 61, 60, 49, 50, 50, 39, 61, 60, 49, 63, 63, 52, 60, 59, 48, 68, 67, 56, 54, 53, 42, 59, 61, 49, 60, 62, 50, 61, 60, 49, 60, 59, 48, 64, 64, 53, 74, 73, 62, 62, 62, 50, 70, 70, 59, 82, 81, 70, 69, 69, 57, 48, 48, 36, 80, 79, 68, 91, 91, 80, 83, 83, 71, 83, 83, 71, 75, 74, 63, 85, 85, 74, 98, 98, 86, 92, 92, 81, 69, 69, 57, 96, 95, 84, 103, 102, 91, 77, 77, 65, 74, 73, 62, 90, 90, 78, 75, 74, 65, 69, 68, 60, 78, 78, 67, 80, 79, 68, 75, 74, 63, 75, 74, 63, 78, 78, 67, 83, 83, 71, 70, 70, 59, 84, 84, 72, 95, 94, 83, 88, 87, 76, 91, 91, 80, 97, 96, 85, 73, 72, 61, 73, 72, 61, 91, 91, 80, 66, 65, 54, 76, 76, 64, 56, 56, 45, 88, 87, 76, 85, 85, 74, 55, 55, 43, 80, 79, 68, 98, 98, 86, 81, 83, 71, 70, 70, 59, 112, 112, 100, 97, 99, 86, 63, 63, 52, 95, 97, 85, 108, 107, 96, 59, 58, 47, 110, 109, 98, 99, 101, 89, 91, 93, 81, 59, 58, 47, 81, 80, 69, 109, 108, 97, 110, 109, 98, 67, 66, 55, 73, 72, 61, 60, 59, 48, 83, 85, 72, 94, 93, 82, 119, 119, 107, 73, 72, 61, 61, 60, 49, 75, 74, 63, 114, 114, 103, 56, 56, 45, 104, 102, 91, 112, 112, 100, 133, 133, 121, 82, 81, 70, 108, 107, 96, 111, 109, 98, 100, 100, 89, 66, 65, 54, 69, 69, 57, 119, 119, 105, 57, 57, 46, 96, 95, 84, 87, 86, 75, 74, 73, 62, 56, 56, 45, 42, 42, 31, 124, 123, 112, 99, 99, 88, 106, 106, 95, 73, 72, 61, 83, 81, 70, 94, 91, 81, 122, 119, 109, 87, 84, 74, 114, 111, 100, 102, 99, 89, 71, 71, 60, 118, 117, 106, 67, 66, 55, 139, 138, 127, 89, 88, 77, 63, 63, 52, 125, 125, 113, 125, 125, 113, 99, 99, 88, 75, 74, 63, 64, 64, 53, 108, 107, 96, 70, 70, 59, 124, 121, 111, 74, 73, 62, 64, 61, 50, 124, 121, 111, 86, 83, 72, 95, 92, 82, 135, 132, 121, 96, 93, 83, 82, 79, 69, 72, 69, 59, 129, 126, 116, 80, 77, 67, 80, 77, 67, 110, 109, 98, 133, 133, 121, 128, 128, 117, 118, 117, 106, 76, 76, 64, 100, 100, 89, 108, 107, 96, 100, 100, 89, 82, 81, 70, 108, 107, 96, 96, 93, 83, 74, 71, 61, 150, 147, 136, 77, 74, 63, 65, 62, 52, 127, 124, 113, 116, 114, 101, 132, 130, 117, 78, 75, 62, 137, 135, 122, 149, 146, 133, 80, 78, 65, 65, 62, 52, 67, 64, 54, 78, 75, 64, 130, 127, 119, 153, 150, 142, 103, 100, 92, 95, 94, 85, 132, 131, 122, 91, 90, 82, 97, 95, 84, 97, 95, 84, 95, 93, 80, 145, 143, 128, 229, 227, 214, 229, 227, 214, 228, 225, 215, 229, 226, 216, 229, 226, 216, 225, 223, 212, 229, 226, 216, 233, 229, 221, 233, 229, 221, 231, 228, 220, 234, 230, 223, 233, 229, 221, 233, 229, 221, 230, 227, 219, 234, 230, 223, 231, 228, 220, 231, 228, 220, 234, 234, 225, 236, 233, 225, 234, 234, 225, 242, 242, 233, 245, 244, 235, 248, 248, 239, 255, 255, 246, 255, 255, 245, 255, 255, 247, 255, 255, 251, 255, 255, 254, 255, 255, 255, 255, 255, 255, 9, 11, 1, 86, 88, 76, 76, 77, 68, 77, 78, 69, 87, 89, 79, 77, 78, 69, 80, 82, 72, 76, 77, 68, 80, 82, 72, 70, 71, 64, 73, 71, 65, 64, 66, 56, 73, 72, 63, 62, 63, 54, 55, 54, 46, 57, 59, 49, 61, 60, 51, 61, 60, 51, 63, 62, 54, 60, 59, 50, 68, 67, 58, 55, 54, 46, 62, 61, 52, 57, 57, 48, 60, 59, 50, 61, 60, 49, 54, 53, 44, 69, 68, 60, 47, 46, 35, 62, 62, 50, 57, 57, 46, 58, 60, 48, 58, 60, 48, 64, 64, 53, 63, 63, 52, 67, 66, 55, 75, 74, 63, 70, 70, 59, 62, 62, 50, 63, 63, 52, 66, 65, 54, 57, 57, 46, 81, 80, 69, 97, 96, 85, 78, 78, 67, 78, 78, 67, 100, 100, 89, 91, 91, 80, 69, 69, 57, 71, 71, 60, 91, 91, 80, 71, 71, 60, 83, 83, 71, 88, 87, 78, 83, 82, 73, 95, 94, 85, 94, 93, 84, 88, 87, 78, 85, 85, 74, 87, 86, 75, 54, 53, 42, 69, 69, 57, 85, 85, 74, 87, 86, 75, 84, 84, 72, 77, 77, 65, 95, 94, 83, 85, 85, 74, 67, 66, 55, 99, 99, 88, 84, 84, 72, 70, 70, 59, 94, 93, 82, 82, 81, 70, 83, 83, 71, 83, 82, 73, 90, 90, 78, 64, 64, 53, 84, 83, 75, 89, 88, 79, 68, 67, 56, 84, 84, 72, 114, 114, 105, 67, 66, 55, 75, 74, 63, 117, 116, 105, 104, 104, 92, 111, 110, 99, 89, 88, 77, 73, 72, 61, 78, 78, 67, 70, 70, 59, 96, 95, 84, 117, 116, 105, 67, 66, 55, 85, 85, 74, 110, 109, 98, 108, 107, 96, 73, 72, 61, 99, 101, 89, 95, 97, 85, 119, 119, 107, 109, 108, 97, 99, 99, 88, 73, 72, 61, 131, 130, 119, 69, 69, 57, 69, 69, 57, 66, 65, 54, 40, 39, 28, 68, 67, 56, 63, 63, 52, 139, 138, 127, 61, 60, 49, 123, 122, 111, 109, 109, 95, 77, 74, 63, 96, 95, 84, 62, 62, 50, 56, 56, 45, 120, 120, 109, 119, 119, 107, 70, 70, 59, 77, 77, 65, 106, 106, 95, 84, 84, 72, 110, 109, 98, 125, 123, 112, 111, 109, 98, 91, 88, 77, 101, 98, 88, 104, 104, 92, 120, 117, 106, 110, 109, 98, 46, 45, 34, 104, 104, 92, 114, 114, 103, 111, 110, 99, 80, 79, 68, 116, 115, 104, 98, 98, 86, 112, 112, 100, 56, 56, 45, 76, 76, 64, 71, 71, 60, 132, 131, 120, 104, 102, 91, 85, 82, 71, 68, 66, 55, 86, 83, 72, 87, 84, 74, 85, 82, 71, 88, 87, 76, 82, 81, 70, 94, 93, 82, 90, 90, 78, 118, 116, 105, 91, 91, 80, 110, 109, 98, 100, 100, 89, 141, 141, 129, 146, 145, 134, 89, 88, 77, 128, 128, 117, 125, 125, 113, 118, 117, 106, 70, 70, 59, 92, 92, 79, 99, 96, 83, 132, 130, 117, 142, 139, 126, 89, 86, 76, 123, 120, 110, 86, 83, 72, 80, 77, 67, 99, 96, 85, 99, 96, 85, 82, 79, 69, 110, 108, 95, 123, 120, 110, 125, 119, 110, 123, 120, 110, 79, 76, 65, 107, 104, 94, 92, 89, 78, 152, 149, 141, 123, 122, 113, 72, 69, 61, 85, 82, 71, 65, 62, 54, 106, 106, 95, 123, 122, 111, 93, 90, 78, 102, 100, 85, 231, 228, 218, 231, 228, 218, 229, 226, 216, 229, 226, 216, 229, 226, 218, 228, 225, 215, 234, 230, 223, 231, 228, 220, 230, 227, 219, 227, 223, 216, 234, 230, 223, 233, 229, 221, 227, 223, 216, 230, 227, 219, 229, 226, 218, 230, 227, 219, 234, 234, 225, 233, 232, 224, 231, 230, 221, 231, 230, 221, 242, 242, 233, 246, 245, 236, 248, 248, 239, 253, 252, 243, 255, 255, 247, 255, 255, 252, 255, 255, 253, 255, 255, 254, 255, 255, 252, 233, 235, 223, 41, 43, 31, 78, 80, 70, 84, 85, 76, 93, 95, 85, 76, 77, 68, 86, 88, 78, 64, 66, 56, 66, 68, 58, 80, 82, 72, 64, 66, 56, 64, 65, 58, 66, 67, 60, 60, 62, 54, 62, 63, 56, 57, 57, 48, 64, 64, 55, 59, 58, 49, 59, 58, 49, 61, 60, 51, 60, 59, 50, 60, 59, 50, 57, 57, 48, 68, 65, 57, 55, 54, 46, 62, 61, 52, 49, 48, 40, 56, 56, 45, 48, 48, 36, 50, 50, 41, 55, 56, 47, 60, 62, 52, 59, 58, 47, 60, 62, 52, 58, 60, 50, 62, 64, 52, 61, 60, 49, 57, 57, 46, 74, 73, 62, 62, 62, 50, 80, 79, 68, 73, 70, 60, 77, 77, 65, 85, 85, 74, 71, 68, 57, 73, 70, 60, 87, 86, 75, 100, 100, 89, 77, 77, 65, 92, 92, 81, 94, 93, 82, 66, 65, 54, 88, 87, 76, 66, 65, 54, 84, 83, 75, 82, 81, 72, 75, 74, 65, 82, 81, 72, 90, 90, 78, 88, 87, 76, 71, 71, 60, 81, 80, 69, 83, 83, 71, 67, 69, 57, 84, 84, 72, 87, 86, 75, 92, 92, 81, 77, 77, 65, 69, 69, 57, 84, 84, 72, 77, 77, 65, 67, 66, 55, 91, 91, 80, 70, 70, 59, 85, 85, 74, 95, 94, 83, 64, 64, 55, 75, 74, 65, 80, 79, 70, 108, 107, 98, 66, 65, 56, 87, 86, 75, 98, 97, 89, 78, 78, 69, 85, 85, 74, 110, 109, 98, 78, 78, 67, 95, 94, 83, 71, 71, 60, 64, 64, 53, 66, 65, 54, 99, 99, 88, 87, 86, 75, 94, 93, 82, 106, 106, 95, 104, 104, 92, 75, 74, 63, 89, 88, 77, 118, 117, 106, 95, 94, 83, 64, 64, 55, 108, 107, 96, 112, 112, 100, 141, 141, 129, 100, 100, 89, 100, 100, 89, 62, 62, 50, 70, 70, 59, 99, 99, 88, 80, 79, 68, 70, 70, 59, 68, 67, 56, 115, 112, 102, 78, 78, 67, 73, 70, 60, 92, 89, 78, 123, 122, 111, 114, 111, 100, 83, 81, 70, 113, 113, 102, 109, 108, 97, 54, 53, 42, 76, 76, 64, 100, 100, 89, 83, 83, 71, 123, 122, 111, 113, 113, 102, 100, 100, 89, 123, 122, 111, 88, 85, 75, 113, 110, 99, 101, 98, 88, 110, 107, 97, 68, 66, 55, 85, 85, 74, 134, 134, 123, 90, 90, 78, 104, 104, 92, 88, 87, 76, 111, 110, 101, 115, 112, 102, 82, 81, 70, 63, 63, 52, 89, 86, 76, 81, 80, 69, 94, 93, 82, 70, 70, 59, 104, 104, 92, 70, 67, 56, 109, 106, 96, 86, 83, 72, 80, 77, 67, 97, 95, 84, 90, 90, 78, 87, 86, 75, 141, 138, 127, 104, 104, 92, 114, 114, 103, 91, 91, 80, 73, 72, 61, 70, 70, 59, 85, 85, 74, 145, 144, 133, 120, 120, 109, 112, 112, 100, 132, 131, 120, 84, 84, 72, 73, 72, 61, 87, 87, 73, 94, 92, 79, 144, 141, 129, 123, 120, 110, 128, 125, 114, 77, 74, 63, 86, 83, 72, 73, 70, 60, 97, 95, 84, 75, 73, 62, 123, 120, 110, 103, 100, 90, 91, 88, 77, 113, 110, 99, 137, 134, 124, 95, 92, 82, 131, 128, 118, 118, 116, 105, 145, 142, 132, 78, 75, 64, 70, 66, 58, 92, 88, 80, 129, 126, 118, 63, 59, 51, 138, 135, 125, 75, 73, 60, 58, 56, 41, 229, 228, 215, 225, 225, 213, 229, 226, 216, 230, 227, 219, 233, 229, 221, 229, 226, 216, 230, 227, 219, 233, 229, 221, 234, 230, 223, 230, 227, 219, 231, 228, 220, 229, 226, 218, 228, 225, 217, 228, 225, 217, 230, 227, 219, 231, 228, 220, 231, 228, 220, 236, 235, 226, 233, 232, 224, 239, 238, 229, 242, 242, 233, 242, 242, 233, 249, 249, 240, 252, 251, 242, 255, 255, 248, 255, 255, 252, 255, 255, 254, 255, 255, 255, 255, 255, 255, 67, 69, 60, 79, 81, 71, 84, 86, 74, 90, 91, 82, 83, 82, 73, 91, 92, 83, 76, 77, 68, 70, 71, 62, 70, 71, 62, 60, 62, 52, 47, 48, 39, 63, 64, 57, 59, 61, 53, 60, 62, 54, 62, 61, 52, 57, 56, 50, 64, 64, 55, 64, 64, 55, 62, 61, 54, 57, 57, 48, 45, 44, 35, 60, 59, 50, 59, 58, 49, 59, 58, 49, 57, 57, 48, 56, 55, 47, 60, 59, 50, 57, 57, 48, 56, 55, 47, 55, 56, 47, 57, 59, 49, 57, 59, 49, 57, 57, 46, 63, 63, 52, 56, 56, 45, 54, 53, 42, 70, 70, 59, 73, 72, 61, 66, 65, 54, 82, 81, 70, 70, 70, 59, 56, 56, 45, 79, 76, 68, 61, 59, 48, 74, 71, 61, 107, 104, 94, 71, 68, 57, 103, 100, 90, 60, 59, 48, 60, 59, 48, 75, 74, 63, 82, 81, 70, 74, 73, 64, 76, 75, 66, 88, 87, 78, 108, 107, 98, 73, 72, 63, 70, 69, 61, 69, 68, 60, 56, 56, 45, 77, 77, 65, 69, 68, 60, 78, 78, 67, 94, 93, 82, 75, 74, 65, 85, 85, 74, 84, 84, 72, 90, 90, 78, 62, 62, 50, 74, 73, 62, 87, 86, 75, 82, 81, 70, 63, 63, 52, 95, 94, 83, 95, 94, 83, 74, 73, 62, 90, 89, 80, 84, 83, 75, 64, 64, 55, 91, 90, 82, 74, 73, 64, 80, 79, 70, 73, 72, 63, 95, 94, 85, 84, 84, 72, 82, 81, 70, 111, 110, 99, 80, 79, 68, 103, 102, 91, 108, 107, 96, 71, 71, 60, 62, 62, 50, 95, 94, 83, 90, 90, 78, 63, 63, 52, 92, 92, 81, 97, 96, 85, 118, 117, 106, 127, 127, 116, 78, 80, 68, 130, 129, 118, 97, 96, 85, 100, 100, 89, 69, 69, 57, 97, 96, 85, 84, 84, 72, 71, 73, 61, 135, 135, 124, 98, 98, 86, 75, 74, 63, 104, 104, 92, 94, 93, 82, 101, 98, 88, 113, 110, 97, 97, 95, 84, 118, 117, 106, 72, 69, 59, 72, 69, 59, 97, 95, 84, 110, 109, 98, 64, 61, 50, 114, 114, 103, 94, 93, 82, 77, 77, 65, 94, 93, 82, 62, 62, 50, 120, 120, 109, 106, 103, 92, 99, 96, 85, 83, 81, 70, 120, 117, 106, 67, 64, 54, 116, 113, 103, 124, 121, 111, 89, 86, 76, 68, 66, 55, 83, 83, 71, 83, 83, 71, 87, 86, 77, 76, 75, 66, 82, 79, 71, 63, 63, 52, 87, 86, 75, 147, 145, 134, 75, 73, 62, 63, 63, 52, 60, 59, 48, 114, 111, 100, 71, 71, 60, 109, 106, 96, 101, 98, 88, 148, 148, 136, 115, 112, 102, 74, 71, 61, 128, 128, 117, 99, 99, 88, 77, 77, 65, 94, 93, 82, 57, 57, 46, 70, 70, 59, 121, 121, 110, 142, 139, 128, 108, 107, 96, 102, 101, 90, 131, 130, 119, 105, 105, 94, 81, 80, 69, 97, 96, 85, 70, 70, 57, 92, 89, 78, 72, 69, 59, 108, 105, 93, 125, 123, 112, 90, 84, 75, 95, 92, 82, 116, 113, 103, 130, 127, 117, 101, 98, 88, 68, 66, 55, 131, 128, 118, 123, 120, 110, 70, 67, 56, 127, 124, 113, 144, 141, 131, 72, 69, 59, 86, 83, 72, 72, 69, 61, 74, 73, 62, 137, 134, 126, 117, 114, 106, 85, 85, 76, 135, 135, 126, 76, 76, 64, 116, 114, 101, 88, 88, 72, 233, 233, 222, 230, 229, 218, 234, 231, 220, 228, 225, 217, 231, 228, 220, 225, 222, 214, 229, 226, 218, 235, 232, 224, 233, 229, 221, 234, 230, 223, 229, 226, 218, 229, 226, 218, 229, 226, 218, 198, 194, 186, 230, 227, 219, 233, 229, 221, 231, 230, 221, 231, 230, 221, 234, 234, 223, 240, 239, 231, 241, 241, 230, 246, 245, 236, 253, 252, 241, 252, 251, 242, 255, 255, 254, 255, 255, 252, 255, 255, 255, 255, 255, 255, 253, 252, 241, 76, 76, 64, 81, 83, 71, 88, 90, 78, 90, 89, 80, 91, 90, 82, 90, 89, 80, 77, 76, 68, 76, 75, 66, 58, 60, 50, 60, 62, 52, 55, 56, 49, 59, 61, 53, 62, 63, 56, 62, 63, 56, 62, 63, 54, 53, 52, 45, 49, 48, 42, 57, 57, 48, 60, 59, 50, 55, 54, 46, 60, 59, 50, 50, 50, 41, 56, 55, 47, 56, 55, 47, 57, 57, 48, 61, 60, 51, 56, 55, 47, 59, 61, 51, 53, 55, 46, 53, 55, 43, 52, 54, 42, 47, 48, 39, 43, 45, 33, 57, 57, 48, 59, 61, 49, 56, 57, 48, 55, 56, 47, 61, 60, 49, 62, 62, 50, 73, 72, 61, 66, 65, 56, 55, 55, 43, 80, 77, 67, 77, 74, 63, 96, 93, 83, 71, 68, 57, 59, 56, 46, 70, 67, 56, 75, 74, 63, 52, 51, 42, 76, 75, 66, 100, 100, 91, 95, 94, 85, 74, 73, 64, 100, 100, 91, 83, 82, 73, 84, 83, 75, 64, 64, 55, 90, 89, 80, 92, 92, 81, 82, 81, 70, 85, 85, 76, 68, 67, 56, 80, 79, 68, 68, 67, 56, 75, 74, 63, 76, 76, 64, 71, 71, 60, 69, 69, 57, 70, 70, 59, 62, 62, 50, 80, 79, 68, 92, 92, 81, 88, 87, 76, 89, 88, 77, 92, 92, 81, 80, 79, 70, 60, 59, 50, 83, 82, 73, 85, 85, 76, 106, 105, 97, 73, 72, 63, 62, 61, 52, 102, 101, 92, 73, 72, 63, 95, 94, 83, 100, 100, 89, 88, 87, 76, 88, 87, 76, 60, 59, 48, 82, 81, 70, 98, 98, 86, 57, 57, 46, 104, 104, 92, 118, 117, 106, 66, 65, 54, 127, 127, 116, 98, 98, 86, 78, 78, 67, 114, 114, 103, 81, 80, 69, 63, 63, 52, 84, 84, 72, 123, 122, 111, 68, 67, 56, 81, 80, 69, 94, 93, 82, 120, 120, 109, 62, 62, 50, 70, 70, 59, 105, 105, 94, 80, 79, 68, 98, 98, 86, 71, 71, 60, 125, 123, 112, 60, 57, 47, 120, 120, 109, 153, 151, 140, 96, 95, 84, 89, 88, 77, 81, 78, 70, 83, 83, 71, 116, 115, 104, 55, 55, 43, 60, 59, 48, 127, 127, 116, 68, 67, 56, 102, 101, 90, 72, 69, 59, 103, 100, 90, 116, 113, 103, 73, 70, 60, 131, 128, 118, 107, 104, 94, 76, 75, 66, 86, 83, 75, 113, 109, 101, 124, 123, 114, 80, 79, 70, 131, 130, 121, 62, 62, 50, 81, 78, 68, 80, 79, 68, 138, 137, 126, 92, 92, 81, 104, 104, 92, 81, 80, 69, 71, 71, 60, 146, 144, 131, 124, 121, 111, 72, 69, 59, 141, 138, 127, 110, 107, 97, 77, 74, 63, 115, 112, 102, 104, 104, 92, 74, 73, 62, 84, 84, 72, 104, 104, 92, 62, 62, 50, 83, 83, 71, 94, 91, 81, 66, 65, 54, 135, 135, 124, 84, 84, 72, 95, 94, 83, 67, 64, 54, 71, 71, 60, 91, 91, 78, 92, 89, 76, 85, 82, 69, 117, 115, 102, 67, 65, 52, 74, 71, 61, 81, 78, 68, 117, 114, 104, 111, 109, 98, 122, 119, 109, 123, 120, 110, 118, 116, 105, 73, 70, 60, 156, 153, 142, 147, 145, 134, 134, 131, 120, 137, 134, 124, 115, 112, 102, 70, 67, 56, 70, 67, 56, 104, 102, 91, 71, 68, 57, 99, 96, 85, 65, 62, 52, 149, 146, 133, 85, 82, 69, 80, 78, 65, 227, 228, 212, 231, 231, 217, 231, 230, 219, 231, 228, 218, 231, 228, 218, 233, 229, 221, 230, 227, 219, 233, 229, 221, 228, 225, 215, 225, 222, 214, 227, 223, 216, 230, 227, 217, 229, 226, 218, 228, 225, 217, 233, 229, 221, 226, 225, 217, 232, 231, 223, 229, 228, 217, 240, 240, 228, 241, 241, 230, 242, 242, 233, 246, 245, 234, 249, 249, 238, 253, 252, 241, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 119, 107, 76, 77, 68, 87, 89, 79, 81, 83, 73, 76, 77, 68, 87, 86, 77, 70, 69, 61, 81, 80, 71, 77, 78, 69, 63, 64, 55, 63, 64, 55, 65, 66, 59, 51, 52, 45, 53, 55, 46, 56, 57, 50, 57, 58, 51, 48, 47, 39, 64, 64, 55, 63, 62, 54, 59, 58, 49, 57, 57, 48, 57, 57, 48, 57, 57, 48, 62, 61, 52, 49, 48, 40, 62, 61, 52, 61, 60, 51, 63, 63, 52, 60, 59, 50, 55, 54, 46, 54, 53, 42, 55, 54, 46, 49, 48, 40, 63, 62, 54, 56, 55, 47, 50, 50, 41, 68, 67, 58, 66, 68, 58, 63, 63, 52, 67, 66, 55, 63, 62, 54, 69, 68, 60, 73, 75, 65, 94, 93, 82, 73, 70, 60, 87, 84, 76, 72, 69, 59, 91, 88, 77, 66, 63, 53, 103, 100, 90, 77, 73, 65, 63, 62, 54, 94, 93, 82, 53, 52, 43, 70, 70, 59, 99, 99, 88, 92, 92, 83, 74, 73, 64, 78, 78, 69, 80, 79, 68, 77, 76, 68, 69, 68, 60, 66, 65, 54, 85, 87, 75, 81, 80, 69, 81, 80, 69, 78, 78, 67, 81, 80, 69, 76, 76, 64, 68, 67, 56, 73, 72, 63, 69, 69, 57, 77, 77, 65, 73, 72, 63, 92, 92, 81, 87, 86, 77, 91, 91, 80, 60, 59, 48, 88, 87, 76, 84, 83, 75, 85, 85, 76, 99, 98, 90, 63, 63, 52, 80, 79, 70, 95, 94, 83, 91, 91, 80, 105, 105, 94, 73, 72, 61, 74, 73, 62, 99, 99, 88, 103, 102, 91, 96, 95, 84, 56, 56, 45, 71, 71, 60, 97, 96, 85, 64, 64, 53, 79, 76, 65, 105, 105, 94, 90, 90, 78, 61, 60, 49, 70, 70, 59, 114, 114, 103, 102, 101, 90, 75, 74, 63, 85, 85, 74, 62, 62, 50, 127, 127, 116, 92, 92, 81, 68, 67, 56, 127, 127, 116, 97, 96, 85, 50, 50, 39, 125, 125, 113, 123, 122, 111, 97, 95, 84, 65, 62, 50, 62, 62, 50, 96, 95, 84, 63, 60, 49, 55, 55, 43, 118, 117, 106, 103, 100, 90, 58, 55, 45, 87, 84, 74, 63, 63, 52, 63, 60, 49, 78, 78, 67, 83, 83, 71, 67, 64, 54, 65, 62, 52, 121, 118, 107, 145, 142, 132, 70, 67, 56, 58, 55, 45, 82, 79, 71, 146, 143, 133, 111, 109, 98, 136, 133, 123, 70, 66, 58, 79, 76, 68, 110, 107, 99, 130, 127, 119, 71, 71, 62, 136, 133, 125, 130, 127, 117, 103, 100, 90, 74, 71, 61, 96, 95, 84, 125, 123, 110, 103, 101, 88, 92, 89, 76, 165, 162, 152, 99, 99, 86, 101, 98, 88, 87, 86, 75, 101, 98, 88, 134, 134, 123, 135, 135, 122, 87, 84, 74, 93, 90, 80, 116, 113, 103, 73, 72, 61, 78, 78, 67, 85, 85, 74, 143, 140, 129, 99, 96, 85, 128, 128, 117, 87, 87, 73, 113, 110, 97, 157, 154, 142, 109, 106, 96, 68, 66, 53, 77, 74, 63, 113, 110, 99, 61, 59, 48, 145, 142, 132, 77, 74, 63, 142, 139, 128, 143, 140, 132, 123, 120, 110, 76, 70, 63, 82, 76, 69, 164, 159, 152, 94, 89, 80, 101, 98, 88, 96, 93, 83, 122, 119, 109, 122, 119, 109, 63, 60, 49, 96, 93, 83, 109, 106, 96, 127, 124, 113, 111, 109, 98, 94, 91, 81, 122, 119, 107, 72, 69, 57, 232, 232, 218, 237, 236, 225, 232, 232, 220, 231, 230, 221, 230, 229, 220, 232, 232, 220, 230, 229, 218, 233, 229, 221, 229, 226, 216, 230, 227, 217, 227, 224, 213, 229, 226, 218, 230, 227, 219, 229, 226, 218, 225, 222, 214, 233, 229, 221, 233, 229, 221, 236, 233, 223, 239, 238, 227, 239, 238, 227, 245, 244, 235, 244, 243, 232, 249, 249, 238, 255, 255, 246, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 251, 47, 46, 35, 77, 77, 65, 73, 72, 61, 84, 86, 74, 76, 75, 66, 84, 83, 75, 73, 72, 63, 81, 80, 71, 71, 71, 62, 62, 61, 54, 57, 58, 51, 64, 65, 58, 60, 62, 54, 51, 52, 45, 58, 59, 52, 60, 62, 52, 53, 55, 48, 62, 61, 52, 59, 58, 49, 53, 52, 43, 55, 54, 46, 59, 58, 49, 55, 54, 46, 61, 60, 51, 62, 61, 52, 55, 54, 46, 55, 54, 46, 54, 53, 44, 51, 53, 43, 47, 48, 39, 53, 52, 41, 57, 59, 47, 55, 57, 45, 54, 53, 42, 57, 57, 46, 51, 53, 41, 59, 61, 49, 57, 57, 46, 68, 67, 58, 56, 57, 48, 68, 67, 58, 80, 79, 70, 73, 72, 63, 74, 73, 64, 76, 76, 64, 77, 74, 63, 82, 79, 69, 81, 78, 68, 73, 70, 60, 81, 78, 68, 83, 81, 70, 70, 66, 58, 92, 92, 83, 60, 57, 47, 83, 83, 71, 89, 88, 77, 88, 87, 76, 71, 71, 62, 70, 69, 61, 76, 75, 66, 71, 71, 62, 88, 87, 78, 56, 56, 45, 73, 72, 61, 80, 79, 68, 74, 73, 62, 76, 76, 64, 77, 77, 65, 77, 77, 65, 57, 57, 46, 78, 78, 69, 87, 86, 77, 59, 58, 49, 88, 87, 78, 66, 65, 56, 62, 61, 52, 89, 88, 77, 75, 74, 65, 78, 78, 69, 89, 88, 77, 81, 80, 71, 89, 88, 79, 74, 73, 64, 92, 92, 83, 84, 84, 72, 84, 84, 72, 67, 66, 55, 69, 69, 57, 71, 71, 60, 60, 57, 47, 113, 110, 99, 74, 73, 62, 109, 108, 97, 88, 87, 76, 58, 55, 45, 86, 83, 72, 103, 100, 90, 61, 60, 49, 113, 113, 102, 94, 93, 82, 70, 70, 59, 60, 59, 48, 114, 114, 103, 76, 76, 64, 81, 80, 69, 81, 80, 69, 96, 95, 84, 74, 73, 62, 62, 62, 50, 45, 44, 33, 74, 73, 62, 96, 95, 84, 119, 119, 107, 109, 108, 97, 132, 131, 120, 92, 89, 78, 63, 63, 52, 83, 83, 71, 70, 66, 58, 56, 53, 42, 131, 130, 119, 58, 55, 47, 65, 62, 52, 53, 50, 40, 89, 88, 77, 111, 109, 98, 126, 126, 114, 76, 76, 64, 93, 90, 80, 106, 103, 92, 108, 105, 95, 91, 88, 77, 138, 135, 125, 77, 74, 63, 134, 131, 120, 115, 112, 102, 82, 79, 71, 104, 101, 93, 77, 76, 68, 70, 67, 56, 87, 86, 77, 106, 102, 94, 59, 56, 46, 97, 95, 84, 81, 78, 68, 72, 69, 59, 64, 61, 50, 128, 125, 114, 64, 61, 50, 80, 79, 68, 96, 93, 83, 75, 73, 62, 71, 68, 57, 86, 83, 72, 114, 111, 100, 142, 139, 128, 134, 131, 120, 87, 84, 74, 58, 55, 43, 102, 99, 89, 145, 143, 130, 100, 97, 86, 127, 124, 113, 66, 65, 54, 97, 95, 84, 80, 77, 67, 78, 75, 64, 148, 148, 136, 74, 73, 62, 67, 64, 54, 75, 73, 62, 136, 133, 123, 143, 140, 129, 128, 125, 114, 156, 153, 142, 127, 124, 113, 92, 89, 78, 94, 91, 81, 78, 74, 66, 91, 88, 77, 97, 95, 84, 114, 111, 103, 72, 69, 61, 127, 123, 115, 79, 76, 65, 128, 125, 114, 146, 143, 133, 70, 67, 56, 144, 141, 131, 95, 92, 82, 100, 97, 86, 83, 81, 70, 93, 90, 80, 110, 107, 97, 85, 82, 71, 78, 75, 64, 246, 247, 226, 236, 235, 222, 234, 234, 223, 232, 232, 220, 230, 229, 218, 229, 228, 217, 224, 223, 212, 234, 234, 223, 227, 227, 218, 229, 226, 216, 230, 227, 217, 231, 228, 218, 224, 221, 213, 230, 227, 217, 225, 223, 212, 237, 234, 224, 233, 233, 222, 237, 236, 225, 240, 240, 228, 240, 240, 228, 241, 241, 230, 247, 247, 235, 254, 254, 242, 255, 255, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 177, 166, 74, 73, 62, 82, 81, 70, 88, 87, 76, 76, 76, 64, 69, 69, 57, 89, 88, 79, 88, 87, 78, 74, 72, 66, 78, 74, 68, 63, 62, 56, 54, 51, 45, 68, 67, 60, 73, 71, 65, 60, 59, 50, 63, 64, 55, 54, 53, 44, 56, 55, 49, 64, 64, 55, 55, 54, 46, 50, 50, 41, 62, 61, 52, 64, 64, 55, 57, 57, 48, 49, 48, 40, 52, 51, 42, 63, 62, 54, 48, 47, 39, 40, 41, 29, 50, 50, 41, 57, 57, 46, 55, 55, 43, 59, 58, 47, 68, 67, 56, 50, 50, 39, 51, 53, 41, 59, 58, 47, 60, 59, 48, 74, 76, 66, 78, 78, 69, 59, 61, 51, 64, 66, 56, 70, 71, 62, 51, 53, 43, 98, 97, 89, 71, 71, 62, 69, 68, 60, 74, 71, 63, 57, 57, 48, 95, 92, 82, 82, 81, 72, 68, 65, 57, 95, 92, 84, 67, 66, 57, 73, 70, 62, 88, 87, 78, 62, 62, 50, 90, 90, 78, 62, 61, 52, 59, 58, 49, 74, 73, 64, 80, 79, 70, 57, 57, 48, 90, 90, 78, 77, 77, 65, 84, 84, 72, 76, 76, 64, 88, 87, 76, 67, 64, 54, 83, 83, 71, 80, 79, 68, 75, 74, 63, 87, 86, 75, 80, 79, 70, 63, 62, 54, 80, 79, 70, 82, 81, 72, 82, 81, 72, 64, 64, 55, 85, 85, 76, 80, 79, 70, 88, 87, 78, 81, 80, 71, 99, 98, 90, 64, 64, 55, 97, 95, 84, 91, 91, 80, 69, 68, 60, 106, 106, 95, 82, 79, 69, 73, 70, 60, 77, 74, 63, 100, 97, 86, 72, 69, 59, 89, 86, 76, 95, 92, 82, 120, 117, 106, 114, 111, 100, 60, 57, 47, 100, 97, 86, 110, 109, 98, 67, 66, 55, 64, 64, 53, 114, 114, 103, 113, 113, 102, 75, 74, 63, 67, 66, 55, 89, 88, 79, 78, 78, 67, 67, 66, 55, 57, 57, 46, 81, 80, 69, 91, 91, 80, 74, 73, 62, 89, 88, 77, 59, 58, 47, 62, 62, 50, 123, 122, 111, 64, 61, 50, 110, 107, 97, 115, 112, 104, 63, 63, 52, 78, 78, 69, 100, 100, 89, 117, 116, 105, 96, 95, 84, 66, 65, 54, 131, 128, 118, 134, 131, 120, 145, 142, 132, 113, 110, 97, 80, 77, 67, 97, 95, 84, 87, 84, 74, 125, 123, 112, 110, 107, 97, 71, 68, 57, 115, 112, 102, 125, 122, 114, 99, 96, 85, 139, 136, 126, 125, 122, 114, 99, 95, 87, 139, 136, 126, 60, 57, 47, 85, 82, 71, 72, 69, 59, 69, 69, 57, 108, 105, 95, 67, 64, 54, 92, 89, 78, 118, 116, 105, 106, 103, 92, 110, 107, 97, 83, 81, 70, 113, 110, 99, 144, 141, 131, 79, 76, 64, 73, 70, 60, 76, 71, 59, 86, 83, 70, 124, 121, 111, 110, 107, 97, 129, 126, 116, 88, 85, 75, 94, 91, 81, 111, 109, 98, 89, 88, 77, 127, 124, 113, 127, 127, 116, 75, 73, 62, 136, 133, 123, 94, 91, 81, 63, 60, 49, 106, 103, 92, 106, 103, 92, 145, 142, 132, 106, 103, 92, 86, 83, 72, 86, 83, 72, 83, 81, 70, 83, 81, 70, 84, 83, 75, 111, 109, 98, 74, 71, 63, 77, 74, 63, 82, 79, 69, 73, 70, 60, 78, 75, 64, 100, 97, 86, 75, 73, 62, 145, 142, 132, 78, 75, 64, 101, 98, 88, 50, 47, 36, 68, 66, 55, 74, 71, 61, 252, 254, 228, 234, 235, 219, 226, 226, 215, 231, 230, 219, 231, 230, 219, 229, 228, 217, 227, 227, 216, 223, 222, 211, 232, 232, 220, 230, 229, 218, 227, 224, 213, 229, 226, 216, 229, 226, 216, 229, 226, 216, 233, 230, 219, 233, 233, 222, 239, 238, 227, 239, 238, 227, 241, 241, 230, 245, 244, 233, 213, 213, 202, 248, 248, 237, 253, 252, 241, 255, 255, 248, 255, 255, 254, 255, 255, 255, 255, 255, 255, 3, 2, 0, 81, 80, 69, 80, 79, 68, 81, 80, 69, 90, 90, 78, 71, 71, 62, 80, 79, 70, 70, 69, 61, 63, 62, 54, 59, 57, 51, 73, 72, 63, 61, 60, 53, 59, 57, 51, 53, 52, 45, 56, 55, 47, 55, 54, 46, 48, 48, 36, 50, 50, 41, 54, 53, 44, 55, 54, 46, 60, 59, 50, 53, 52, 43, 54, 53, 44, 63, 62, 54, 53, 52, 45, 55, 54, 46, 62, 61, 54, 50, 50, 41, 53, 52, 43, 39, 38, 29, 63, 62, 54, 57, 57, 46, 42, 42, 31, 55, 55, 43, 63, 63, 52, 57, 57, 48, 57, 57, 48, 56, 55, 47, 66, 65, 56, 58, 60, 50, 56, 55, 47, 64, 64, 55, 85, 85, 76, 63, 62, 54, 59, 58, 49, 75, 74, 65, 81, 80, 71, 71, 67, 60, 86, 83, 75, 83, 80, 72, 96, 93, 83, 102, 99, 89, 78, 75, 64, 57, 57, 46, 83, 81, 70, 74, 73, 62, 75, 74, 63, 74, 73, 62, 83, 82, 73, 92, 92, 83, 63, 63, 52, 69, 68, 60, 90, 89, 80, 73, 72, 61, 62, 62, 50, 77, 77, 65, 85, 85, 74, 89, 88, 77, 77, 77, 65, 71, 71, 60, 61, 60, 49, 72, 69, 59, 83, 83, 71, 69, 68, 60, 69, 68, 60, 87, 86, 77, 85, 85, 76, 82, 81, 70, 66, 65, 56, 89, 88, 79, 83, 83, 71, 81, 80, 71, 82, 81, 72, 87, 86, 75, 90, 90, 78, 96, 95, 84, 85, 85, 74, 96, 93, 83, 103, 100, 90, 85, 81, 73, 63, 60, 49, 96, 93, 83, 64, 61, 50, 86, 83, 72, 74, 71, 61, 93, 90, 80, 86, 83, 72, 64, 64, 53, 63, 60, 49, 110, 109, 98, 61, 60, 49, 67, 66, 55, 62, 62, 50, 105, 105, 94, 100, 100, 89, 74, 73, 62, 120, 120, 109, 106, 105, 97, 99, 99, 88, 73, 72, 63, 114, 114, 103, 102, 101, 90, 89, 88, 77, 71, 71, 60, 50, 50, 39, 77, 77, 65, 87, 86, 75, 118, 117, 106, 81, 80, 69, 69, 69, 57, 96, 93, 83, 98, 98, 86, 89, 88, 77, 140, 140, 128, 76, 76, 64, 76, 76, 64, 65, 62, 52, 127, 124, 113, 113, 110, 99, 124, 121, 111, 86, 83, 70, 113, 110, 97, 63, 60, 47, 93, 90, 78, 104, 102, 91, 66, 63, 53, 134, 131, 120, 72, 69, 59, 76, 76, 64, 113, 110, 99, 61, 59, 48, 108, 105, 97, 72, 69, 61, 83, 81, 70, 74, 71, 61, 108, 105, 95, 88, 85, 75, 77, 74, 63, 96, 93, 83, 125, 123, 112, 100, 97, 86, 128, 125, 114, 114, 111, 100, 115, 112, 102, 99, 96, 85, 77, 74, 63, 136, 133, 123, 91, 88, 75, 131, 129, 116, 75, 73, 62, 103, 101, 88, 72, 69, 57, 124, 121, 111, 125, 123, 112, 97, 95, 84, 100, 97, 86, 123, 122, 111, 87, 84, 74, 87, 84, 74, 64, 61, 50, 56, 53, 42, 111, 109, 98, 151, 148, 138, 136, 133, 123, 77, 74, 61, 143, 140, 129, 58, 55, 45, 110, 107, 97, 72, 69, 59, 86, 83, 72, 60, 57, 47, 130, 127, 117, 91, 88, 77, 81, 78, 70, 126, 126, 114, 100, 97, 86, 89, 86, 76, 83, 81, 70, 114, 111, 100, 89, 86, 76, 141, 138, 127, 78, 75, 64, 72, 69, 59, 68, 66, 55, 108, 105, 95, 93, 90, 80, 118, 116, 105, 237, 237, 223, 237, 237, 223, 232, 232, 220, 226, 226, 215, 231, 230, 219, 231, 230, 219, 231, 230, 219, 230, 229, 218, 230, 229, 218, 229, 228, 217, 229, 228, 217, 230, 227, 217, 231, 228, 218, 233, 230, 219, 234, 231, 220, 236, 233, 223, 240, 240, 228, 241, 241, 230, 237, 236, 225, 242, 242, 231, 242, 242, 231, 246, 245, 234, 253, 252, 241, 255, 255, 248, 255, 255, 255, 255, 255, 255, 209, 208, 197, 66, 65, 54, 83, 83, 71, 83, 83, 71, 90, 90, 78, 81, 80, 69, 81, 80, 69, 68, 67, 58, 68, 67, 58, 64, 63, 57, 67, 65, 59, 56, 55, 49, 60, 59, 50, 52, 48, 43, 51, 48, 40, 57, 57, 48, 61, 60, 51, 63, 62, 54, 60, 59, 50, 55, 54, 46, 60, 59, 50, 50, 50, 41, 62, 61, 52, 46, 45, 36, 60, 62, 52, 62, 61, 52, 56, 55, 47, 64, 64, 55, 56, 55, 47, 61, 60, 51, 59, 58, 47, 56, 55, 47, 49, 49, 38, 60, 57, 47, 53, 52, 41, 46, 45, 34, 55, 54, 46, 62, 61, 52, 52, 51, 42, 71, 71, 62, 67, 66, 57, 76, 75, 66, 71, 71, 62, 61, 60, 51, 69, 68, 60, 69, 68, 60, 81, 80, 71, 83, 82, 73, 84, 83, 75, 76, 75, 66, 93, 90, 82, 92, 92, 83, 90, 90, 78, 92, 92, 81, 63, 63, 52, 82, 81, 70, 88, 87, 76, 70, 70, 59, 81, 80, 69, 54, 53, 42, 85, 85, 74, 82, 81, 70, 80, 79, 70, 76, 76, 64, 73, 72, 61, 77, 77, 65, 69, 69, 57, 80, 77, 67, 76, 76, 64, 63, 63, 52, 75, 73, 62, 89, 86, 76, 82, 81, 70, 75, 74, 63, 97, 96, 85, 68, 67, 58, 98, 97, 89, 96, 95, 86, 85, 85, 76, 91, 90, 82, 77, 76, 68, 91, 87, 79, 61, 60, 51, 100, 100, 91, 88, 87, 78, 55, 55, 43, 56, 56, 45, 70, 70, 59, 95, 94, 83, 77, 74, 63, 56, 53, 42, 100, 97, 86, 109, 106, 96, 102, 99, 89, 65, 62, 52, 79, 76, 65, 70, 67, 56, 57, 54, 43, 77, 74, 63, 89, 86, 76, 112, 112, 100, 103, 102, 91, 87, 86, 75, 102, 101, 90, 61, 60, 49, 62, 62, 50, 111, 110, 99, 78, 78, 67, 125, 125, 113, 110, 109, 98, 109, 108, 97, 73, 72, 61, 67, 64, 54, 83, 83, 71, 82, 81, 70, 80, 77, 67, 72, 69, 59, 57, 57, 46, 79, 76, 65, 67, 64, 54, 109, 106, 98, 70, 70, 59, 93, 90, 80, 89, 88, 79, 120, 120, 109, 59, 58, 47, 74, 73, 62, 74, 71, 61, 131, 130, 119, 116, 114, 101, 87, 84, 74, 82, 80, 67, 106, 103, 92, 123, 120, 110, 102, 100, 87, 79, 76, 65, 82, 79, 69, 71, 68, 57, 110, 109, 98, 68, 66, 55, 116, 113, 103, 119, 119, 107, 110, 109, 98, 53, 50, 40, 107, 104, 94, 117, 114, 104, 94, 91, 81, 123, 120, 110, 93, 90, 80, 142, 139, 128, 96, 93, 83, 74, 71, 61, 72, 69, 59, 81, 78, 68, 78, 75, 64, 79, 76, 65, 141, 138, 127, 79, 76, 65, 100, 97, 86, 150, 147, 136, 70, 67, 56, 64, 64, 51, 96, 95, 84, 75, 75, 61, 69, 69, 57, 87, 87, 73, 73, 72, 61, 160, 159, 148, 63, 63, 52, 165, 162, 152, 135, 132, 121, 63, 60, 49, 143, 140, 129, 71, 68, 57, 88, 85, 75, 73, 71, 58, 77, 74, 61, 87, 85, 72, 131, 128, 118, 83, 81, 68, 113, 110, 97, 83, 81, 70, 118, 116, 105, 79, 76, 65, 102, 99, 89, 82, 81, 70, 85, 82, 71, 108, 105, 95, 73, 72, 61, 132, 129, 119, 110, 107, 97, 75, 73, 62, 80, 77, 67, 86, 83, 72, 93, 90, 80, 125, 123, 112, 76, 76, 62, 74, 72, 59, 230, 229, 218, 236, 235, 224, 232, 232, 220, 227, 227, 216, 229, 228, 215, 230, 229, 218, 232, 232, 220, 230, 229, 218, 227, 227, 216, 227, 227, 216, 230, 229, 218, 230, 227, 217, 233, 233, 222, 231, 228, 218, 232, 232, 220, 238, 237, 226, 238, 237, 226, 238, 237, 226, 237, 236, 225, 240, 240, 228, 241, 241, 230, 248, 248, 237, 255, 255, 244, 255, 255, 253, 255, 255, 255, 255, 255, 253, 109, 106, 96, 80, 79, 68, 81, 80, 69, 97, 96, 85, 91, 91, 80, 87, 86, 75, 84, 84, 72, 73, 72, 61, 67, 66, 57, 69, 68, 62, 70, 66, 58, 61, 58, 50, 53, 50, 42, 56, 52, 44, 67, 66, 57, 49, 45, 37, 60, 59, 50, 52, 51, 42, 59, 58, 49, 59, 58, 49, 60, 59, 50, 53, 52, 43, 62, 62, 50, 54, 53, 44, 55, 54, 46, 62, 61, 52, 43, 45, 35, 60, 59, 50, 35, 34, 26, 51, 53, 43, 53, 52, 41, 60, 59, 50, 52, 51, 40, 59, 58, 47, 42, 42, 31, 54, 53, 44, 61, 60, 51, 74, 73, 64, 77, 76, 68, 70, 69, 61, 60, 59, 50, 61, 60, 51, 67, 66, 57, 84, 83, 75, 60, 59, 50, 73, 72, 63, 83, 82, 73, 77, 76, 68, 75, 74, 65, 68, 67, 58, 73, 72, 63, 94, 93, 84, 85, 85, 74, 89, 88, 77, 61, 60, 49, 90, 89, 80, 60, 59, 50, 74, 73, 62, 87, 86, 75, 69, 68, 60, 76, 76, 64, 80, 79, 68, 90, 90, 78, 81, 80, 69, 67, 66, 55, 75, 74, 63, 86, 83, 72, 92, 89, 78, 58, 55, 45, 64, 61, 50, 83, 81, 70, 78, 75, 64, 86, 83, 72, 64, 64, 53, 85, 85, 76, 61, 60, 51, 59, 58, 49, 80, 79, 70, 89, 88, 79, 85, 85, 76, 69, 68, 60, 63, 62, 54, 67, 66, 57, 61, 60, 51, 90, 89, 80, 81, 80, 71, 77, 76, 68, 102, 101, 92, 106, 106, 95, 73, 72, 61, 91, 91, 80, 108, 105, 95, 69, 69, 57, 92, 89, 78, 61, 59, 48, 60, 59, 48, 73, 72, 61, 104, 104, 92, 83, 83, 71, 106, 106, 95, 73, 72, 61, 70, 70, 59, 63, 63, 52, 73, 72, 61, 83, 83, 71, 54, 53, 42, 87, 86, 75, 144, 143, 134, 111, 110, 99, 110, 109, 98, 64, 64, 55, 109, 106, 96, 57, 57, 46, 90, 90, 78, 77, 74, 61, 99, 99, 88, 94, 91, 81, 98, 98, 86, 91, 88, 77, 85, 82, 71, 73, 70, 60, 80, 77, 67, 94, 91, 81, 69, 69, 57, 64, 64, 53, 74, 71, 61, 92, 92, 81, 82, 81, 70, 71, 68, 57, 65, 62, 50, 85, 82, 71, 96, 94, 81, 134, 131, 120, 53, 51, 38, 124, 121, 111, 129, 126, 116, 92, 89, 78, 81, 78, 68, 66, 63, 53, 94, 91, 81, 135, 135, 124, 120, 120, 109, 83, 81, 70, 70, 67, 56, 53, 52, 41, 94, 91, 81, 78, 75, 64, 101, 98, 88, 59, 56, 46, 64, 61, 50, 143, 140, 129, 77, 74, 63, 113, 110, 99, 71, 68, 57, 108, 105, 95, 128, 125, 114, 107, 104, 94, 129, 126, 116, 68, 66, 55, 95, 94, 83, 119, 119, 107, 127, 127, 116, 138, 137, 126, 64, 64, 53, 84, 84, 72, 102, 101, 90, 75, 73, 62, 128, 125, 114, 80, 77, 67, 123, 122, 111, 161, 161, 149, 97, 96, 85, 132, 131, 120, 73, 72, 61, 67, 66, 55, 131, 130, 119, 160, 160, 146, 96, 94, 81, 56, 53, 42, 95, 93, 80, 77, 74, 61, 106, 103, 92, 125, 123, 112, 126, 126, 114, 100, 97, 86, 74, 73, 62, 78, 75, 64, 85, 82, 71, 160, 158, 147, 139, 136, 126, 75, 74, 63, 74, 71, 61, 137, 134, 124, 105, 105, 94, 118, 116, 105, 70, 70, 59, 125, 125, 111, 74, 74, 60, 232, 232, 220, 230, 229, 218, 232, 232, 220, 233, 233, 222, 230, 229, 218, 229, 228, 217, 229, 228, 217, 229, 228, 217, 227, 227, 216, 227, 227, 216, 226, 226, 215, 223, 222, 211, 231, 228, 218, 230, 227, 217, 235, 232, 222, 232, 232, 220, 239, 238, 227, 240, 240, 228, 242, 242, 231, 237, 236, 225, 242, 242, 231, 248, 248, 237, 254, 254, 242, 255, 255, 249, 255, 255, 251, 254, 254, 242, 0, 0, 0, 81, 80, 69, 80, 79, 68, 92, 92, 81, 76, 75, 66, 94, 93, 84, 82, 81, 72, 57, 57, 48, 56, 55, 47, 66, 63, 55, 50, 47, 39, 43, 43, 34, 49, 45, 37, 50, 47, 39, 68, 67, 58, 84, 83, 75, 54, 53, 44, 61, 60, 51, 54, 53, 44, 54, 53, 44, 55, 54, 46, 50, 50, 41, 56, 56, 45, 55, 54, 46, 43, 43, 34, 52, 51, 42, 59, 58, 49, 48, 47, 39, 52, 51, 42, 49, 48, 40, 53, 52, 41, 48, 47, 39, 48, 48, 36, 59, 56, 46, 52, 51, 42, 67, 66, 57, 64, 66, 56, 59, 61, 51, 50, 52, 42, 62, 61, 52, 74, 73, 64, 70, 69, 61, 75, 74, 65, 67, 66, 57, 66, 65, 56, 64, 64, 55, 82, 81, 72, 59, 61, 51, 87, 86, 77, 70, 69, 61, 69, 68, 60, 78, 78, 69, 82, 81, 72, 82, 81, 70, 74, 73, 64, 77, 76, 68, 84, 83, 75, 69, 68, 60, 63, 62, 54, 87, 86, 75, 77, 77, 65, 64, 64, 53, 78, 78, 67, 63, 63, 52, 67, 66, 55, 87, 86, 75, 70, 70, 59, 66, 65, 54, 71, 71, 60, 57, 57, 46, 49, 49, 38, 95, 94, 83, 66, 65, 56, 82, 81, 70, 70, 69, 61, 87, 86, 77, 82, 81, 72, 63, 62, 54, 94, 93, 84, 77, 76, 68, 96, 95, 88, 84, 83, 75, 85, 84, 78, 69, 68, 62, 70, 69, 61, 47, 46, 37, 108, 107, 98, 92, 92, 83, 100, 100, 89, 77, 77, 65, 92, 92, 81, 59, 56, 46, 86, 83, 72, 74, 71, 61, 94, 91, 81, 55, 55, 43, 99, 99, 88, 55, 55, 43, 70, 70, 59, 63, 63, 52, 92, 92, 81, 54, 53, 42, 106, 106, 95, 110, 109, 98, 68, 66, 55, 113, 113, 102, 104, 104, 92, 81, 80, 69, 105, 104, 96, 116, 113, 103, 88, 87, 76, 67, 66, 55, 102, 101, 90, 110, 110, 96, 68, 66, 53, 59, 58, 47, 54, 53, 42, 76, 76, 62, 114, 111, 100, 80, 77, 67, 81, 80, 71, 75, 74, 65, 113, 109, 101, 96, 95, 84, 117, 116, 107, 57, 54, 43, 64, 64, 53, 131, 130, 119, 96, 95, 84, 69, 69, 55, 78, 75, 62, 81, 79, 66, 130, 128, 115, 93, 90, 80, 127, 124, 113, 89, 88, 77, 81, 78, 68, 99, 96, 85, 53, 50, 40, 85, 85, 74, 113, 113, 102, 120, 117, 106, 106, 106, 95, 108, 105, 95, 71, 68, 55, 117, 115, 102, 71, 71, 60, 92, 89, 76, 74, 72, 59, 101, 98, 88, 91, 91, 80, 71, 71, 60, 88, 85, 75, 64, 61, 50, 114, 111, 100, 104, 102, 91, 94, 91, 81, 95, 94, 83, 110, 109, 98, 167, 164, 154, 100, 97, 86, 84, 84, 72, 96, 95, 84, 114, 114, 103, 138, 137, 126, 105, 105, 94, 94, 91, 81, 67, 64, 54, 142, 139, 128, 129, 126, 116, 73, 72, 61, 146, 145, 134, 101, 98, 88, 89, 88, 77, 87, 86, 75, 69, 69, 57, 75, 74, 63, 113, 110, 97, 111, 109, 96, 120, 117, 104, 74, 72, 59, 61, 61, 47, 156, 156, 145, 130, 129, 118, 73, 72, 61, 112, 112, 100, 123, 122, 111, 127, 124, 113, 83, 81, 70, 85, 82, 71, 77, 74, 63, 65, 62, 52, 101, 98, 88, 73, 72, 61, 74, 73, 62, 71, 71, 60, 87, 87, 73, 84, 86, 72, 230, 229, 218, 231, 230, 219, 226, 226, 215, 227, 227, 216, 223, 222, 211, 225, 225, 213, 226, 226, 215, 223, 222, 211, 225, 223, 212, 228, 225, 215, 227, 227, 216, 227, 227, 216, 230, 229, 218, 233, 230, 219, 236, 233, 223, 240, 240, 228, 239, 238, 227, 238, 237, 226, 237, 236, 225, 237, 236, 225, 245, 244, 233, 255, 255, 244, 255, 255, 249, 255, 255, 252, 253, 252, 241, 128, 128, 117, 78, 78, 67, 85, 82, 71, 87, 84, 74, 87, 86, 75, 87, 86, 75, 73, 72, 63, 69, 68, 60, 66, 68, 58, 61, 60, 51, 56, 55, 47, 60, 57, 49, 68, 67, 58, 52, 51, 40, 47, 46, 37, 68, 67, 58, 56, 56, 45, 56, 55, 47, 52, 51, 42, 53, 52, 43, 53, 52, 43, 52, 51, 42, 56, 55, 47, 61, 60, 49, 50, 50, 41, 54, 53, 44, 52, 51, 40, 36, 36, 27, 33, 32, 23, 50, 50, 41, 55, 55, 43, 60, 59, 50, 49, 48, 40, 46, 45, 36, 60, 59, 50, 48, 47, 39, 43, 45, 35, 50, 50, 41, 55, 56, 47, 59, 61, 51, 62, 61, 52, 70, 69, 61, 66, 65, 56, 69, 68, 60, 60, 59, 50, 80, 82, 72, 70, 71, 62, 70, 71, 62, 74, 76, 66, 77, 76, 68, 78, 78, 69, 78, 80, 68, 76, 77, 68, 83, 84, 75, 66, 68, 58, 57, 57, 48, 76, 75, 66, 90, 89, 80, 63, 63, 52, 89, 88, 77, 61, 60, 51, 57, 57, 46, 78, 78, 67, 62, 62, 50, 53, 52, 41, 80, 77, 67, 69, 69, 57, 63, 63, 52, 69, 69, 57, 47, 46, 35, 83, 83, 71, 81, 80, 71, 88, 87, 78, 56, 55, 47, 71, 71, 60, 85, 85, 76, 70, 69, 61, 90, 89, 80, 80, 79, 70, 88, 87, 78, 80, 79, 70, 62, 61, 54, 85, 84, 78, 78, 77, 71, 60, 58, 52, 87, 86, 77, 84, 83, 75, 84, 83, 75, 97, 96, 87, 103, 102, 91, 68, 67, 56, 70, 70, 59, 60, 57, 47, 79, 76, 65, 71, 68, 57, 103, 102, 91, 99, 99, 88, 64, 64, 53, 88, 87, 76, 113, 113, 100, 81, 80, 69, 63, 63, 52, 71, 71, 60, 75, 74, 63, 60, 59, 48, 64, 61, 50, 87, 86, 75, 112, 112, 100, 74, 71, 61, 86, 83, 72, 109, 108, 97, 73, 70, 60, 86, 83, 72, 117, 114, 104, 114, 111, 100, 71, 68, 55, 61, 59, 48, 90, 90, 78, 82, 79, 69, 105, 105, 94, 77, 77, 65, 70, 67, 56, 86, 83, 72, 86, 83, 72, 66, 65, 54, 80, 77, 67, 109, 108, 97, 87, 86, 75, 57, 57, 46, 99, 99, 88, 92, 92, 81, 84, 84, 72, 85, 85, 74, 75, 74, 63, 68, 66, 55, 115, 112, 102, 121, 121, 110, 81, 78, 68, 86, 83, 72, 68, 67, 56, 110, 107, 97, 111, 109, 98, 117, 116, 105, 125, 123, 112, 126, 126, 114, 142, 142, 131, 102, 100, 87, 84, 84, 70, 122, 119, 109, 142, 139, 128, 123, 121, 108, 63, 60, 49, 83, 81, 70, 118, 116, 105, 135, 135, 124, 140, 140, 128, 80, 79, 68, 62, 62, 50, 130, 129, 118, 109, 108, 97, 72, 69, 61, 78, 78, 67, 127, 127, 116, 75, 74, 63, 87, 86, 75, 103, 102, 91, 92, 89, 78, 104, 102, 91, 123, 120, 110, 79, 76, 65, 77, 77, 65, 146, 145, 134, 111, 109, 98, 77, 74, 63, 155, 155, 144, 148, 148, 136, 56, 56, 45, 144, 143, 132, 75, 73, 62, 61, 60, 49, 66, 64, 51, 129, 126, 114, 128, 128, 117, 89, 89, 75, 80, 79, 66, 127, 124, 111, 128, 128, 117, 41, 41, 29, 100, 97, 86, 82, 79, 69, 100, 97, 86, 88, 85, 75, 102, 99, 89, 71, 68, 57, 104, 104, 92, 112, 112, 100, 87, 86, 75, 116, 116, 102, 103, 103, 89, 231, 231, 217, 226, 226, 213, 226, 226, 215, 225, 225, 213, 224, 223, 212, 224, 223, 212, 225, 225, 213, 226, 226, 215, 225, 223, 212, 231, 228, 218, 229, 226, 216, 230, 229, 218, 230, 227, 217, 233, 233, 222, 238, 235, 225, 241, 241, 230, 240, 240, 228, 237, 236, 225, 237, 236, 225, 238, 237, 226, 243, 240, 230, 248, 248, 237, 255, 255, 247, 255, 255, 253, 245, 242, 232, 15, 12, 2, 82, 79, 69, 86, 83, 72, 90, 90, 78, 62, 62, 50, 69, 68, 60, 81, 80, 69, 70, 69, 61, 65, 67, 57, 63, 62, 54, 48, 49, 40, 52, 51, 42, 55, 54, 46, 57, 57, 46, 57, 57, 46, 49, 49, 38, 56, 56, 45, 56, 55, 47, 54, 53, 44, 53, 52, 43, 63, 62, 54, 38, 35, 25, 60, 57, 47, 63, 63, 52, 52, 51, 40, 56, 53, 42, 52, 51, 40, 65, 62, 52, 56, 56, 45, 50, 50, 41, 69, 68, 60, 59, 58, 49, 41, 42, 33, 59, 58, 49, 52, 51, 42, 39, 38, 29, 51, 53, 43, 49, 50, 41, 61, 60, 51, 56, 57, 48, 61, 60, 51, 67, 66, 57, 69, 68, 60, 53, 55, 46, 62, 63, 54, 67, 69, 60, 62, 61, 52, 77, 76, 68, 66, 68, 58, 69, 68, 60, 67, 66, 57, 82, 81, 70, 90, 89, 80, 82, 81, 72, 70, 69, 61, 85, 85, 76, 84, 83, 75, 81, 80, 71, 70, 69, 61, 81, 80, 69, 100, 100, 91, 80, 79, 70, 54, 53, 44, 82, 81, 70, 78, 78, 67, 60, 59, 48, 63, 63, 52, 78, 78, 67, 64, 64, 53, 83, 82, 73, 60, 59, 50, 67, 66, 57, 62, 61, 52, 78, 78, 69, 71, 71, 62, 62, 61, 52, 87, 86, 77, 69, 68, 60, 76, 75, 66, 85, 85, 76, 73, 72, 63, 75, 74, 67, 80, 78, 72, 75, 74, 67, 82, 81, 74, 75, 74, 65, 83, 82, 73, 83, 82, 73, 68, 67, 58, 82, 81, 70, 97, 96, 85, 77, 77, 65, 94, 93, 82, 74, 73, 62, 80, 79, 68, 62, 62, 50, 71, 71, 60, 88, 87, 76, 84, 84, 72, 78, 78, 67, 99, 99, 88, 74, 73, 62, 62, 64, 52, 70, 70, 59, 75, 74, 63, 88, 87, 76, 60, 59, 48, 59, 58, 47, 64, 64, 53, 94, 91, 81, 65, 62, 52, 58, 55, 45, 107, 104, 94, 59, 56, 46, 95, 92, 82, 80, 77, 67, 100, 100, 89, 134, 134, 123, 68, 66, 55, 67, 64, 54, 119, 119, 107, 103, 102, 91, 82, 81, 70, 103, 100, 90, 45, 44, 33, 103, 102, 91, 82, 79, 69, 61, 60, 49, 98, 98, 86, 104, 104, 90, 90, 90, 76, 73, 72, 61, 91, 91, 80, 121, 121, 110, 108, 107, 96, 91, 88, 77, 67, 66, 55, 99, 99, 88, 81, 78, 68, 101, 98, 88, 63, 60, 49, 71, 68, 57, 50, 50, 39, 99, 99, 88, 91, 88, 77, 133, 133, 121, 67, 64, 54, 76, 76, 64, 106, 103, 92, 93, 90, 80, 66, 63, 53, 107, 104, 94, 84, 84, 72, 87, 86, 75, 69, 69, 57, 64, 64, 53, 90, 90, 78, 75, 74, 63, 121, 121, 110, 77, 77, 65, 81, 80, 69, 81, 80, 71, 130, 127, 117, 77, 77, 65, 103, 100, 90, 70, 67, 56, 81, 78, 68, 109, 106, 96, 87, 84, 74, 113, 110, 99, 138, 135, 125, 125, 125, 113, 99, 99, 88, 97, 96, 85, 122, 119, 109, 67, 66, 55, 78, 78, 67, 71, 71, 60, 135, 135, 124, 109, 108, 97, 128, 128, 115, 70, 70, 57, 88, 86, 73, 73, 70, 60, 145, 143, 130, 93, 90, 78, 60, 57, 47, 87, 84, 74, 78, 78, 67, 106, 103, 92, 104, 102, 91, 83, 81, 70, 65, 62, 52, 82, 79, 69, 124, 121, 111, 70, 70, 59, 75, 74, 63, 95, 94, 83, 97, 96, 85, 231, 231, 217, 229, 228, 215, 231, 230, 219, 219, 219, 207, 223, 220, 210, 223, 222, 211, 225, 225, 213, 231, 228, 218, 233, 230, 219, 225, 223, 212, 222, 221, 210, 229, 226, 216, 230, 227, 217, 240, 237, 226, 236, 235, 224, 240, 237, 226, 238, 235, 225, 240, 240, 228, 231, 228, 218, 244, 242, 229, 245, 242, 232, 253, 253, 239, 255, 255, 248, 255, 255, 244, 147, 145, 134, 101, 98, 88, 79, 76, 65, 82, 79, 69, 82, 81, 70, 68, 67, 56, 83, 83, 71, 68, 67, 56, 61, 60, 51, 66, 68, 58, 59, 61, 51, 62, 63, 54, 59, 58, 49, 53, 52, 43, 52, 51, 40, 54, 53, 44, 50, 50, 41, 59, 58, 47, 40, 39, 30, 66, 65, 56, 59, 58, 49, 55, 54, 46, 59, 58, 49, 54, 53, 44, 75, 74, 63, 62, 61, 52, 60, 59, 50, 61, 59, 48, 52, 51, 40, 59, 58, 49, 50, 50, 41, 53, 52, 41, 59, 61, 51, 58, 60, 50, 50, 52, 42, 51, 53, 43, 47, 48, 39, 51, 53, 43, 64, 64, 55, 63, 65, 53, 52, 51, 42, 62, 63, 54, 69, 68, 60, 65, 67, 55, 63, 64, 55, 64, 66, 56, 72, 74, 64, 64, 66, 56, 63, 64, 55, 77, 78, 69, 77, 78, 69, 72, 74, 62, 64, 66, 56, 75, 74, 65, 67, 66, 57, 83, 84, 75, 91, 90, 82, 77, 76, 68, 80, 79, 68, 64, 64, 53, 89, 88, 77, 61, 60, 49, 76, 75, 66, 78, 78, 67, 72, 69, 59, 64, 64, 53, 74, 73, 62, 63, 63, 52, 92, 92, 81, 88, 87, 76, 62, 61, 52, 66, 65, 54, 67, 66, 57, 70, 69, 61, 73, 72, 63, 82, 81, 72, 87, 86, 77, 78, 80, 70, 61, 60, 51, 59, 58, 49, 61, 60, 51, 75, 74, 65, 59, 61, 51, 71, 71, 62, 73, 72, 63, 86, 87, 80, 53, 55, 46, 88, 87, 78, 66, 65, 56, 89, 88, 77, 77, 76, 68, 103, 102, 91, 60, 59, 48, 83, 81, 70, 101, 98, 88, 80, 79, 68, 82, 79, 69, 92, 89, 78, 56, 56, 45, 70, 70, 59, 110, 109, 98, 110, 109, 98, 102, 104, 92, 108, 107, 96, 87, 86, 75, 70, 70, 59, 67, 66, 55, 104, 104, 92, 88, 87, 76, 91, 91, 80, 99, 96, 85, 95, 92, 82, 109, 108, 97, 67, 64, 54, 65, 62, 52, 108, 105, 95, 113, 110, 97, 77, 74, 63, 56, 53, 42, 100, 97, 86, 81, 78, 68, 100, 97, 86, 65, 62, 52, 71, 71, 60, 70, 70, 59, 106, 106, 95, 109, 108, 97, 116, 115, 104, 123, 122, 111, 70, 70, 59, 85, 85, 74, 60, 59, 48, 83, 83, 71, 81, 80, 69, 124, 123, 112, 84, 84, 72, 68, 67, 56, 64, 64, 53, 62, 62, 50, 73, 72, 61, 129, 126, 116, 87, 86, 75, 109, 106, 96, 110, 107, 97, 96, 95, 84, 102, 101, 90, 60, 59, 48, 133, 133, 121, 118, 117, 106, 123, 122, 111, 82, 81, 70, 74, 71, 61, 109, 106, 96, 142, 139, 128, 111, 110, 99, 61, 60, 49, 121, 121, 110, 64, 64, 53, 69, 69, 57, 54, 53, 42, 119, 119, 107, 107, 104, 96, 116, 113, 103, 91, 91, 80, 142, 138, 130, 73, 70, 60, 81, 78, 68, 118, 116, 105, 147, 145, 134, 88, 85, 75, 83, 81, 68, 68, 66, 55, 67, 64, 54, 104, 102, 91, 81, 78, 68, 83, 83, 71, 122, 119, 109, 106, 106, 95, 127, 127, 116, 113, 113, 102, 121, 121, 110, 119, 119, 107, 141, 141, 129, 71, 68, 57, 71, 71, 60, 120, 117, 106, 72, 69, 57, 147, 145, 132, 114, 111, 98, 125, 123, 110, 113, 110, 99, 73, 70, 60, 67, 64, 54, 68, 66, 55, 121, 118, 107, 97, 95, 84, 80, 79, 68, 129, 126, 118, 123, 122, 111, 77, 74, 63, 230, 230, 216, 229, 228, 217, 217, 216, 205, 222, 221, 210, 228, 225, 215, 224, 221, 211, 224, 223, 212, 221, 218, 207, 224, 221, 211, 225, 223, 210, 222, 219, 209, 229, 226, 216, 231, 228, 218, 237, 234, 224, 237, 234, 224, 236, 235, 222, 239, 238, 227, 238, 235, 225, 239, 238, 227, 241, 241, 230, 255, 253, 240, 255, 253, 242, 255, 255, 247, 254, 254, 242, 2, 0, 0, 82, 79, 69, 79, 76, 65, 80, 77, 67, 66, 65, 54, 75, 74, 63, 74, 73, 64, 69, 69, 57, 70, 69, 61, 62, 63, 54, 53, 52, 43, 49, 48, 40, 69, 68, 60, 52, 51, 40, 52, 51, 40, 45, 44, 33, 50, 50, 39, 49, 48, 40, 53, 52, 43, 52, 51, 42, 56, 55, 47, 46, 45, 36, 50, 50, 41, 57, 57, 48, 49, 48, 40, 56, 55, 47, 55, 54, 46, 53, 52, 43, 47, 46, 37, 42, 41, 33, 43, 45, 35, 34, 33, 25, 44, 46, 36, 42, 43, 34, 52, 54, 44, 53, 55, 46, 48, 49, 40, 58, 60, 50, 60, 59, 48, 53, 55, 43, 63, 65, 53, 67, 69, 57, 57, 59, 47, 65, 67, 55, 50, 52, 42, 62, 63, 54, 65, 67, 57, 59, 61, 51, 62, 63, 54, 70, 71, 62, 59, 61, 51, 72, 74, 64, 70, 71, 62, 73, 75, 65, 60, 62, 52, 77, 78, 69, 70, 69, 61, 88, 87, 78, 68, 67, 58, 61, 60, 49, 74, 73, 62, 66, 65, 56, 84, 84, 72, 66, 63, 53, 70, 67, 56, 81, 78, 68, 88, 85, 75, 64, 64, 53, 57, 57, 48, 81, 80, 71, 77, 76, 68, 70, 69, 61, 78, 78, 69, 88, 87, 78, 77, 73, 65, 77, 76, 68, 82, 81, 72, 74, 73, 64, 70, 69, 61, 69, 68, 60, 78, 78, 69, 60, 59, 50, 77, 78, 69, 59, 58, 49, 89, 88, 79, 54, 53, 46, 102, 100, 94, 77, 76, 68, 63, 62, 54, 49, 48, 40, 74, 73, 62, 62, 62, 50, 100, 100, 89, 102, 101, 90, 58, 55, 45, 111, 109, 98, 85, 82, 71, 70, 67, 56, 110, 107, 97, 90, 90, 78, 82, 81, 70, 56, 56, 45, 63, 63, 52, 95, 94, 83, 62, 62, 50, 59, 58, 47, 96, 95, 84, 53, 52, 41, 109, 108, 97, 56, 56, 45, 67, 66, 55, 114, 111, 100, 80, 79, 68, 74, 71, 61, 80, 79, 68, 58, 55, 45, 109, 106, 96, 60, 59, 48, 111, 109, 98, 70, 67, 56, 114, 111, 100, 69, 69, 57, 97, 96, 85, 49, 49, 38, 89, 88, 77, 80, 77, 67, 113, 110, 99, 69, 69, 57, 68, 67, 56, 57, 57, 46, 114, 114, 103, 57, 57, 46, 68, 67, 56, 75, 74, 63, 118, 116, 105, 84, 84, 72, 75, 73, 62, 118, 116, 105, 68, 67, 56, 59, 58, 47, 125, 122, 114, 56, 56, 45, 100, 100, 89, 94, 93, 82, 95, 94, 83, 78, 78, 67, 67, 66, 55, 104, 104, 92, 78, 78, 67, 95, 94, 83, 89, 88, 77, 78, 75, 64, 75, 73, 62, 59, 56, 46, 103, 102, 91, 75, 74, 63, 67, 66, 55, 80, 79, 68, 69, 69, 57, 127, 127, 116, 117, 116, 105, 70, 70, 59, 95, 94, 83, 105, 105, 94, 132, 131, 120, 116, 113, 103, 104, 102, 91, 137, 134, 124, 104, 102, 91, 91, 88, 77, 110, 107, 97, 73, 70, 60, 83, 81, 70, 158, 155, 145, 134, 131, 120, 73, 70, 60, 89, 86, 76, 90, 90, 78, 146, 143, 133, 88, 85, 75, 130, 129, 118, 97, 96, 85, 70, 70, 59, 95, 92, 82, 86, 83, 72, 81, 78, 68, 73, 72, 61, 68, 66, 55, 77, 74, 63, 115, 112, 102, 144, 141, 131, 100, 97, 86, 138, 135, 125, 138, 135, 125, 63, 60, 49, 118, 116, 105, 123, 120, 110, 118, 116, 105, 74, 73, 62, 73, 70, 60, 226, 226, 213, 225, 225, 211, 224, 224, 210, 220, 220, 207, 223, 223, 209, 224, 224, 210, 222, 221, 210, 225, 223, 210, 224, 222, 209, 225, 223, 210, 229, 226, 216, 230, 229, 218, 233, 230, 219, 238, 235, 225, 241, 238, 225, 236, 235, 224, 240, 237, 226, 235, 232, 220, 236, 235, 224, 242, 239, 228, 249, 249, 238, 255, 255, 244, 255, 253, 242, 222, 219, 209, 80, 77, 67, 89, 86, 76, 86, 83, 72, 96, 93, 83, 92, 89, 78, 80, 79, 68, 76, 76, 64, 53, 52, 41, 67, 66, 57, 56, 55, 47, 56, 55, 47, 67, 66, 57, 55, 54, 46, 59, 58, 49, 49, 49, 38, 43, 43, 32, 56, 56, 45, 53, 52, 41, 42, 42, 31, 50, 50, 39, 60, 62, 52, 43, 45, 35, 48, 47, 39, 52, 51, 42, 59, 61, 51, 45, 44, 35, 61, 60, 51, 45, 42, 34, 56, 55, 47, 52, 51, 42, 47, 46, 37, 49, 48, 40, 48, 49, 40, 44, 46, 36, 34, 35, 26, 53, 55, 46, 53, 55, 46, 58, 60, 50, 46, 45, 34, 55, 57, 45, 64, 64, 53, 64, 64, 53, 52, 54, 42, 66, 65, 54, 65, 67, 57, 80, 82, 72, 64, 66, 56, 80, 82, 70, 78, 80, 68, 65, 67, 57, 51, 53, 43, 62, 64, 52, 59, 61, 51, 56, 58, 46, 65, 67, 57, 73, 72, 63, 71, 71, 62, 55, 54, 46, 55, 54, 46, 78, 78, 67, 41, 41, 29, 83, 83, 71, 78, 78, 67, 77, 77, 65, 59, 58, 47, 82, 81, 70, 80, 79, 68, 96, 95, 84, 80, 79, 68, 95, 94, 83, 52, 51, 42, 59, 58, 47, 73, 72, 63, 92, 92, 83, 66, 65, 56, 88, 87, 78, 63, 62, 54, 75, 74, 65, 75, 74, 65, 52, 51, 42, 75, 74, 65, 80, 82, 72, 59, 61, 51, 59, 61, 51, 67, 69, 60, 72, 74, 64, 83, 82, 73, 57, 59, 49, 70, 71, 62, 81, 80, 71, 50, 50, 39, 91, 91, 80, 63, 62, 54, 71, 71, 60, 83, 81, 70, 106, 103, 92, 61, 59, 48, 95, 92, 82, 92, 89, 78, 60, 57, 47, 70, 67, 56, 64, 61, 50, 94, 93, 82, 77, 77, 65, 50, 50, 39, 63, 63, 52, 95, 94, 83, 62, 62, 50, 77, 77, 65, 106, 106, 95, 64, 64, 53, 62, 62, 50, 75, 74, 63, 67, 64, 54, 51, 48, 38, 88, 85, 75, 39, 36, 26, 78, 75, 64, 92, 89, 78, 81, 78, 68, 91, 91, 80, 117, 114, 104, 69, 69, 57, 110, 109, 98, 80, 79, 68, 61, 60, 49, 74, 71, 61, 85, 85, 74, 95, 94, 83, 93, 90, 80, 84, 84, 72, 106, 106, 95, 94, 93, 82, 81, 80, 69, 77, 74, 63, 66, 65, 54, 125, 123, 112, 114, 114, 103, 92, 92, 83, 85, 82, 71, 90, 90, 78, 80, 77, 67, 49, 49, 38, 96, 95, 84, 69, 69, 57, 81, 80, 71, 85, 85, 74, 69, 69, 57, 103, 102, 91, 64, 64, 53, 69, 69, 57, 96, 93, 83, 124, 121, 111, 71, 68, 57, 75, 73, 62, 81, 78, 68, 138, 137, 126, 91, 88, 77, 127, 127, 116, 97, 96, 85, 49, 49, 38, 73, 72, 61, 73, 72, 61, 77, 74, 63, 166, 163, 153, 99, 96, 85, 149, 146, 135, 137, 134, 124, 73, 70, 60, 68, 66, 55, 77, 74, 63, 65, 60, 50, 117, 114, 104, 129, 126, 116, 145, 142, 132, 99, 96, 85, 129, 126, 116, 81, 80, 71, 122, 119, 109, 145, 142, 132, 113, 113, 102, 55, 55, 43, 102, 101, 90, 138, 135, 125, 85, 85, 74, 88, 85, 75, 117, 116, 105, 91, 88, 77, 149, 146, 135, 91, 88, 77, 73, 70, 60, 89, 86, 76, 101, 98, 88, 85, 82, 71, 127, 127, 116, 138, 137, 126, 83, 83, 71, 121, 118, 107, 85, 82, 71, 87, 87, 73, 232, 232, 218, 226, 226, 213, 222, 221, 208, 218, 218, 204, 225, 223, 210, 223, 221, 208, 220, 220, 207, 217, 215, 202, 219, 216, 203, 221, 218, 205, 227, 224, 211, 229, 228, 215, 233, 230, 217, 235, 232, 220, 235, 232, 220, 236, 235, 222, 237, 236, 225, 236, 233, 223, 234, 234, 223, 245, 244, 233, 249, 249, 238, 249, 246, 233, 255, 252, 241, 72, 69, 59, 97, 95, 84, 91, 88, 77, 95, 92, 82, 88, 85, 75, 86, 83, 72, 78, 75, 64, 77, 77, 65, 63, 63, 52, 57, 59, 49, 63, 63, 52, 53, 52, 43, 52, 54, 44, 52, 51, 42, 50, 50, 39, 56, 56, 45, 56, 56, 45, 38, 37, 26, 63, 63, 52, 54, 53, 42, 59, 58, 47, 51, 53, 43, 55, 56, 47, 49, 50, 41, 50, 52, 42, 49, 50, 41, 53, 55, 46, 47, 46, 39, 53, 52, 43, 53, 52, 45, 48, 47, 39, 64, 64, 55, 49, 48, 40, 50, 52, 42, 50, 52, 42, 55, 56, 47, 47, 48, 39, 41, 42, 33, 50, 52, 40, 48, 48, 36, 62, 64, 52, 62, 64, 52, 65, 67, 55, 53, 55, 43, 63, 63, 52, 66, 68, 56, 55, 57, 45, 60, 62, 50, 80, 82, 70, 64, 66, 56, 77, 79, 67, 74, 76, 64, 56, 58, 46, 69, 69, 57, 64, 66, 56, 58, 60, 50, 69, 70, 61, 57, 59, 49, 82, 81, 72, 77, 76, 68, 55, 55, 43, 50, 50, 39, 61, 60, 49, 47, 46, 35, 82, 81, 70, 63, 63, 52, 88, 87, 76, 61, 60, 49, 97, 95, 84, 73, 70, 60, 87, 86, 75, 64, 60, 52, 83, 81, 70, 96, 93, 85, 56, 52, 44, 82, 79, 71, 62, 61, 52, 67, 66, 57, 67, 66, 57, 83, 82, 73, 76, 75, 66, 61, 60, 51, 79, 81, 71, 73, 75, 65, 80, 79, 70, 79, 81, 71, 74, 76, 66, 63, 64, 55, 87, 86, 77, 57, 57, 48, 60, 59, 50, 81, 80, 69, 92, 92, 81, 84, 84, 72, 62, 62, 50, 67, 64, 54, 94, 91, 81, 87, 84, 74, 75, 73, 62, 102, 99, 89, 103, 100, 90, 79, 76, 65, 94, 91, 81, 54, 53, 42, 84, 84, 72, 69, 69, 57, 85, 85, 74, 57, 57, 48, 64, 64, 53, 91, 91, 80, 96, 95, 84, 103, 102, 91, 109, 108, 97, 70, 70, 59, 66, 63, 53, 61, 60, 49, 99, 96, 85, 70, 67, 56, 66, 65, 54, 49, 46, 35, 105, 105, 94, 67, 66, 55, 70, 70, 59, 116, 115, 104, 69, 69, 57, 89, 88, 77, 72, 69, 59, 66, 63, 53, 52, 49, 39, 88, 87, 76, 87, 86, 75, 71, 68, 57, 107, 104, 94, 63, 63, 52, 97, 96, 85, 82, 79, 69, 96, 95, 84, 85, 81, 73, 111, 110, 101, 114, 114, 105, 81, 78, 70, 66, 65, 54, 102, 101, 92, 95, 94, 83, 60, 59, 48, 68, 67, 56, 82, 81, 70, 112, 112, 100, 60, 59, 48, 96, 95, 84, 112, 112, 100, 85, 85, 74, 123, 120, 110, 107, 104, 94, 116, 113, 103, 144, 141, 131, 142, 139, 128, 107, 104, 94, 138, 135, 125, 78, 75, 64, 75, 74, 63, 78, 78, 67, 114, 114, 103, 82, 81, 70, 94, 91, 81, 125, 123, 112, 89, 86, 76, 70, 67, 56, 97, 95, 84, 104, 102, 91, 79, 76, 65, 89, 86, 76, 141, 138, 127, 73, 70, 60, 125, 123, 112, 78, 75, 64, 100, 97, 89, 75, 73, 62, 74, 71, 61, 95, 92, 82, 138, 135, 125, 75, 74, 63, 84, 84, 72, 94, 91, 81, 64, 64, 53, 103, 102, 91, 129, 126, 116, 88, 87, 76, 158, 155, 145, 120, 120, 109, 72, 69, 57, 137, 134, 124, 95, 92, 82, 71, 68, 57, 108, 107, 96, 74, 73, 64, 102, 101, 92, 111, 110, 99, 95, 94, 85, 84, 84, 72, 113, 110, 99, 226, 226, 213, 224, 224, 210, 220, 220, 207, 222, 221, 208, 223, 223, 209, 220, 217, 204, 222, 220, 207, 222, 220, 207, 222, 220, 207, 222, 220, 207, 228, 225, 213, 231, 229, 216, 236, 234, 221, 235, 232, 220, 235, 232, 220, 237, 234, 224, 240, 237, 226, 234, 231, 218, 240, 237, 226, 247, 244, 233, 252, 250, 237, 249, 249, 236, 241, 241, 228, 0, 0, 0, 89, 87, 74, 89, 86, 76, 60, 57, 47, 79, 76, 65, 88, 85, 75, 73, 70, 60, 59, 58, 47, 63, 63, 52, 75, 74, 65, 59, 58, 49, 49, 48, 40, 34, 33, 25, 67, 66, 57, 38, 40, 28, 35, 36, 27, 64, 64, 55, 50, 50, 39, 48, 49, 40, 58, 60, 50, 47, 48, 39, 48, 49, 40, 45, 47, 39, 52, 54, 44, 55, 56, 47, 73, 72, 63, 68, 67, 58, 63, 62, 54, 59, 56, 48, 56, 52, 44, 52, 51, 42, 44, 46, 36, 52, 51, 42, 50, 50, 41, 60, 62, 52, 53, 55, 46, 49, 51, 39, 41, 43, 31, 53, 52, 41, 33, 35, 22, 56, 58, 46, 60, 62, 50, 58, 60, 48, 65, 67, 55, 63, 65, 53, 62, 64, 52, 66, 68, 56, 65, 67, 55, 66, 68, 56, 62, 64, 52, 66, 68, 56, 67, 66, 55, 82, 81, 70, 39, 38, 27, 83, 85, 72, 76, 75, 66, 62, 61, 52, 80, 79, 68, 75, 74, 65, 70, 69, 61, 67, 66, 57, 71, 71, 60, 81, 80, 69, 99, 99, 88, 71, 71, 60, 78, 78, 67, 77, 77, 65, 89, 88, 77, 63, 63, 52, 63, 59, 51, 78, 74, 66, 71, 67, 60, 87, 84, 76, 86, 83, 75, 67, 64, 56, 81, 78, 70, 63, 62, 54, 54, 53, 44, 69, 68, 60, 76, 75, 66, 75, 74, 65, 73, 72, 63, 85, 87, 77, 69, 70, 61, 40, 41, 32, 70, 71, 62, 78, 78, 69, 82, 81, 72, 78, 78, 69, 62, 61, 52, 74, 73, 64, 84, 84, 72, 80, 77, 67, 78, 75, 64, 84, 84, 72, 103, 100, 90, 87, 84, 74, 68, 66, 55, 66, 63, 53, 68, 66, 55, 96, 93, 83, 73, 70, 60, 45, 42, 32, 89, 86, 76, 88, 87, 78, 69, 69, 57, 75, 72, 64, 66, 65, 54, 75, 74, 63, 91, 90, 82, 78, 78, 67, 70, 70, 59, 80, 77, 67, 76, 76, 64, 117, 116, 105, 120, 117, 106, 65, 62, 52, 79, 76, 65, 85, 85, 74, 56, 56, 45, 105, 105, 94, 82, 81, 70, 82, 79, 69, 68, 67, 56, 50, 50, 39, 101, 98, 88, 63, 63, 52, 92, 89, 78, 54, 52, 41, 95, 94, 83, 60, 59, 48, 117, 114, 104, 95, 94, 83, 117, 116, 105, 69, 69, 57, 67, 66, 55, 97, 96, 85, 81, 80, 69, 82, 81, 70, 52, 51, 40, 120, 120, 109, 82, 81, 70, 89, 88, 77, 118, 117, 106, 117, 116, 105, 109, 108, 97, 121, 121, 110, 70, 70, 59, 138, 137, 126, 118, 116, 105, 42, 39, 28, 106, 106, 95, 127, 124, 113, 63, 63, 52, 64, 61, 50, 106, 103, 92, 134, 131, 120, 135, 132, 121, 124, 121, 111, 115, 112, 102, 131, 128, 118, 138, 137, 126, 78, 78, 67, 108, 107, 96, 94, 91, 81, 107, 104, 94, 75, 73, 62, 86, 83, 70, 78, 75, 64, 71, 68, 57, 85, 82, 71, 91, 88, 77, 142, 139, 128, 116, 113, 103, 145, 142, 132, 131, 128, 118, 82, 79, 69, 101, 98, 88, 137, 134, 124, 114, 111, 100, 131, 128, 118, 146, 143, 133, 90, 90, 78, 67, 64, 54, 119, 119, 107, 121, 121, 110, 81, 78, 68, 85, 85, 74, 151, 148, 138, 78, 75, 64, 95, 92, 82, 59, 56, 46, 96, 95, 84, 74, 73, 62, 92, 92, 83, 73, 72, 63, 100, 100, 91, 88, 87, 78, 62, 61, 52, 126, 126, 114, 86, 88, 76, 227, 227, 214, 227, 227, 214, 223, 223, 209, 225, 223, 210, 217, 217, 203, 224, 224, 210, 223, 220, 210, 222, 220, 207, 224, 224, 210, 227, 224, 211, 224, 222, 209, 222, 220, 207, 222, 220, 207, 242, 239, 226, 234, 231, 218, 237, 235, 222, 235, 232, 220, 236, 233, 223, 239, 238, 227, 251, 251, 237, 251, 248, 238, 250, 248, 235, 187, 184, 174, 56, 53, 42, 94, 92, 79, 66, 63, 53, 68, 66, 55, 80, 77, 67, 68, 66, 55, 67, 64, 54, 72, 69, 59, 61, 60, 49, 60, 59, 48, 52, 51, 42, 45, 44, 35, 61, 60, 51, 56, 56, 45, 54, 53, 42, 41, 40, 32, 49, 48, 40, 40, 39, 28, 48, 47, 39, 53, 55, 46, 58, 60, 50, 49, 50, 41, 43, 45, 35, 51, 53, 43, 42, 43, 34, 62, 63, 54, 47, 48, 39, 46, 45, 36, 41, 40, 32, 49, 48, 40, 48, 47, 39, 52, 51, 42, 47, 46, 37, 53, 52, 43, 50, 50, 41, 30, 32, 20, 54, 53, 42, 50, 52, 40, 54, 53, 42, 59, 61, 49, 57, 59, 47, 65, 68, 53, 64, 66, 52, 62, 64, 52, 70, 72, 60, 62, 64, 52, 52, 55, 40, 51, 53, 41, 83, 85, 72, 66, 68, 56, 68, 67, 56, 69, 71, 59, 76, 76, 64, 73, 72, 63, 62, 62, 50, 76, 76, 64, 75, 74, 63, 85, 85, 74, 52, 51, 40, 60, 59, 48, 55, 55, 43, 73, 72, 61, 54, 53, 42, 89, 88, 77, 75, 74, 63, 68, 67, 56, 91, 91, 80, 83, 81, 70, 86, 83, 72, 85, 82, 71, 87, 84, 74, 87, 84, 74, 65, 62, 54, 73, 70, 62, 85, 81, 73, 78, 74, 66, 59, 58, 49, 66, 63, 55, 88, 87, 78, 67, 66, 57, 64, 64, 55, 80, 79, 70, 56, 57, 48, 71, 73, 63, 51, 53, 43, 82, 81, 72, 73, 72, 63, 80, 79, 70, 83, 82, 73, 85, 85, 76, 84, 83, 75, 74, 73, 64, 78, 78, 69, 63, 63, 52, 76, 76, 64, 78, 78, 67, 83, 81, 70, 72, 69, 59, 80, 77, 67, 83, 81, 70, 73, 70, 60, 83, 81, 70, 94, 91, 81, 94, 91, 83, 52, 49, 41, 61, 60, 51, 73, 72, 63, 94, 93, 84, 100, 100, 89, 82, 81, 70, 98, 98, 86, 54, 53, 42, 80, 79, 68, 81, 80, 69, 99, 99, 88, 118, 117, 106, 85, 85, 74, 93, 90, 80, 69, 69, 57, 66, 65, 54, 103, 102, 91, 83, 81, 70, 101, 98, 88, 46, 45, 34, 75, 73, 62, 61, 59, 48, 83, 81, 70, 58, 55, 45, 105, 105, 94, 110, 109, 98, 99, 96, 85, 91, 88, 77, 62, 62, 50, 102, 101, 90, 51, 48, 38, 91, 90, 82, 73, 72, 63, 78, 78, 69, 62, 61, 52, 116, 115, 104, 95, 94, 83, 66, 65, 54, 103, 102, 91, 50, 50, 39, 117, 116, 105, 76, 76, 64, 110, 109, 98, 119, 119, 107, 112, 112, 100, 81, 80, 69, 106, 103, 92, 111, 110, 99, 104, 102, 91, 83, 81, 70, 96, 93, 83, 120, 117, 104, 129, 126, 116, 79, 76, 65, 122, 119, 109, 100, 97, 86, 88, 85, 75, 85, 85, 74, 119, 119, 107, 128, 128, 117, 67, 66, 55, 77, 74, 63, 106, 106, 95, 94, 91, 81, 63, 60, 49, 87, 84, 74, 144, 141, 131, 127, 124, 113, 114, 111, 100, 106, 103, 92, 75, 73, 62, 65, 62, 52, 151, 148, 140, 109, 108, 99, 72, 69, 59, 99, 95, 87, 145, 142, 132, 99, 95, 87, 106, 105, 97, 70, 66, 58, 99, 99, 88, 142, 142, 131, 128, 125, 114, 138, 135, 125, 97, 94, 86, 81, 80, 69, 61, 60, 49, 135, 135, 124, 88, 85, 75, 96, 95, 84, 91, 90, 82, 99, 100, 91, 73, 75, 65, 85, 86, 79, 101, 105, 94, 66, 68, 58, 74, 78, 65, 223, 223, 207, 224, 222, 209, 221, 218, 205, 223, 221, 208, 219, 216, 203, 222, 221, 208, 219, 219, 205, 222, 220, 207, 223, 223, 209, 224, 222, 209, 224, 222, 209, 224, 222, 209, 225, 223, 210, 230, 228, 215, 229, 227, 214, 230, 228, 215, 237, 235, 222, 236, 233, 223, 244, 242, 229, 249, 246, 233, 251, 248, 238, 252, 249, 239, 26, 24, 13, 92, 89, 78, 80, 77, 67, 85, 82, 71, 70, 67, 56, 85, 82, 71, 72, 69, 59, 58, 55, 45, 64, 64, 53, 34, 34, 22, 59, 58, 47, 49, 51, 39, 60, 59, 48, 47, 46, 35, 50, 50, 39, 61, 60, 49, 57, 57, 48, 52, 51, 40, 53, 52, 41, 50, 50, 41, 45, 44, 35, 48, 49, 40, 44, 46, 36, 49, 50, 43, 44, 46, 36, 43, 45, 35, 43, 43, 34, 45, 44, 35, 48, 47, 39, 35, 34, 26, 62, 61, 52, 59, 58, 49, 49, 48, 40, 50, 50, 41, 49, 48, 40, 42, 44, 32, 38, 40, 28, 55, 57, 45, 52, 51, 40, 52, 51, 40, 48, 50, 38, 56, 58, 46, 62, 64, 52, 71, 73, 59, 60, 63, 48, 62, 64, 52, 59, 61, 49, 63, 65, 53, 58, 60, 48, 65, 67, 55, 76, 76, 64, 70, 72, 60, 73, 72, 61, 57, 57, 46, 78, 78, 67, 70, 69, 61, 46, 45, 36, 77, 77, 65, 63, 63, 52, 77, 77, 65, 61, 60, 49, 64, 64, 53, 57, 57, 46, 96, 95, 84, 71, 71, 60, 67, 66, 55, 60, 59, 48, 78, 78, 67, 73, 70, 60, 82, 79, 69, 52, 49, 39, 65, 62, 52, 80, 77, 67, 70, 66, 58, 68, 65, 57, 73, 70, 62, 81, 78, 70, 80, 79, 70, 64, 64, 55, 52, 51, 42, 56, 57, 48, 65, 67, 57, 80, 82, 72, 51, 53, 43, 63, 64, 55, 69, 70, 61, 87, 89, 79, 75, 74, 65, 69, 68, 60, 81, 80, 71, 83, 82, 73, 75, 74, 63, 66, 65, 54, 70, 70, 59, 63, 63, 52, 94, 93, 82, 62, 62, 50, 70, 70, 59, 58, 55, 45, 61, 59, 48, 92, 92, 81, 48, 48, 36, 86, 83, 72, 130, 129, 118, 121, 121, 110, 93, 90, 82, 70, 67, 56, 85, 85, 76, 73, 72, 63, 66, 65, 54, 52, 51, 40, 71, 71, 60, 95, 92, 82, 97, 96, 85, 75, 74, 63, 47, 46, 35, 91, 91, 80, 60, 59, 48, 106, 106, 95, 67, 66, 55, 91, 91, 80, 75, 74, 63, 59, 56, 46, 75, 73, 62, 102, 101, 90, 88, 87, 76, 71, 71, 60, 89, 88, 77, 73, 72, 61, 57, 57, 46, 68, 67, 56, 74, 73, 64, 102, 99, 91, 90, 89, 80, 78, 78, 69, 96, 95, 86, 98, 97, 89, 77, 76, 68, 73, 72, 63, 75, 74, 65, 95, 94, 83, 85, 85, 74, 112, 112, 100, 84, 84, 72, 83, 81, 70, 76, 76, 64, 101, 98, 88, 122, 119, 109, 121, 118, 110, 72, 69, 59, 56, 56, 45, 105, 105, 94, 87, 86, 75, 46, 45, 34, 118, 116, 105, 114, 111, 100, 108, 105, 95, 93, 90, 80, 96, 93, 83, 106, 103, 92, 68, 66, 55, 124, 121, 111, 68, 67, 56, 64, 61, 50, 108, 107, 96, 118, 117, 106, 84, 84, 72, 87, 84, 74, 135, 132, 119, 79, 76, 65, 100, 97, 86, 71, 68, 57, 151, 148, 138, 127, 124, 113, 99, 96, 85, 110, 107, 97, 54, 53, 42, 151, 150, 139, 106, 105, 97, 86, 83, 72, 124, 121, 113, 82, 81, 72, 114, 111, 103, 142, 142, 131, 167, 164, 154, 129, 126, 116, 78, 78, 67, 68, 66, 55, 145, 144, 133, 95, 92, 82, 109, 108, 97, 109, 108, 97, 76, 76, 64, 121, 118, 110, 120, 119, 111, 112, 111, 103, 56, 57, 50, 88, 90, 82, 76, 77, 68, 57, 61, 50, 61, 65, 55, 57, 64, 52, 224, 222, 209, 227, 224, 211, 218, 218, 204, 220, 217, 204, 216, 216, 202, 220, 217, 204, 222, 220, 207, 223, 221, 208, 230, 228, 215, 227, 224, 211, 229, 227, 214, 227, 224, 211, 224, 222, 209, 222, 220, 207, 223, 221, 208, 227, 224, 211, 229, 227, 214, 233, 230, 219, 248, 245, 232, 251, 249, 236, 247, 244, 233, 224, 221, 211, 0, 0, 0, 85, 82, 71, 80, 77, 67, 60, 57, 47, 64, 61, 50, 68, 66, 55, 71, 68, 57, 78, 78, 65, 61, 60, 49, 60, 59, 48, 64, 64, 55, 43, 43, 32, 47, 46, 35, 39, 38, 27, 40, 39, 28, 59, 58, 47, 52, 51, 42, 29, 26, 15, 54, 52, 41, 48, 47, 39, 57, 57, 48, 56, 55, 47, 46, 45, 36, 54, 53, 46, 57, 57, 48, 40, 41, 32, 63, 62, 54, 49, 49, 38, 60, 59, 50, 50, 50, 39, 45, 44, 35, 52, 51, 40, 54, 53, 42, 48, 47, 39, 40, 37, 29, 48, 48, 36, 50, 50, 41, 60, 59, 48, 49, 49, 38, 55, 55, 43, 56, 56, 45, 57, 59, 45, 51, 54, 39, 65, 68, 53, 67, 70, 55, 73, 75, 63, 69, 71, 59, 66, 68, 56, 57, 59, 47, 67, 66, 55, 63, 65, 53, 59, 61, 49, 59, 62, 47, 66, 65, 54, 56, 56, 45, 73, 72, 61, 78, 78, 67, 47, 46, 37, 77, 77, 65, 64, 64, 53, 45, 44, 33, 73, 72, 63, 54, 53, 42, 85, 82, 71, 64, 61, 50, 56, 53, 42, 92, 89, 78, 79, 76, 65, 71, 68, 57, 63, 60, 49, 80, 77, 67, 66, 63, 53, 77, 73, 65, 59, 56, 48, 53, 50, 42, 58, 55, 47, 54, 51, 43, 88, 87, 78, 64, 64, 55, 67, 66, 57, 60, 59, 50, 89, 88, 79, 67, 69, 60, 56, 55, 47, 54, 53, 44, 78, 80, 70, 72, 74, 64, 67, 66, 57, 66, 65, 56, 82, 81, 72, 75, 72, 64, 55, 55, 43, 73, 72, 61, 82, 81, 70, 61, 60, 49, 75, 74, 63, 78, 78, 67, 54, 53, 42, 72, 69, 59, 81, 80, 69, 56, 56, 45, 59, 58, 47, 112, 112, 100, 59, 58, 47, 81, 80, 71, 80, 79, 70, 113, 109, 101, 78, 78, 69, 59, 58, 49, 73, 72, 61, 87, 86, 75, 62, 62, 50, 88, 87, 76, 88, 87, 76, 85, 85, 74, 60, 59, 48, 104, 104, 92, 66, 65, 54, 81, 80, 69, 108, 107, 96, 98, 98, 86, 63, 63, 52, 92, 92, 81, 93, 90, 80, 88, 87, 76, 94, 93, 82, 83, 81, 70, 54, 53, 42, 95, 94, 83, 60, 59, 48, 85, 85, 74, 97, 96, 87, 68, 65, 57, 76, 75, 66, 94, 93, 84, 111, 110, 101, 104, 105, 96, 100, 102, 92, 96, 95, 86, 84, 83, 75, 68, 67, 58, 84, 84, 72, 55, 55, 43, 99, 99, 88, 71, 71, 60, 97, 95, 84, 74, 73, 62, 78, 78, 67, 68, 66, 55, 68, 67, 56, 87, 86, 75, 97, 96, 85, 100, 100, 89, 124, 123, 112, 78, 75, 64, 99, 96, 85, 85, 85, 74, 63, 60, 49, 100, 100, 89, 79, 76, 65, 96, 95, 84, 138, 137, 126, 88, 87, 76, 82, 81, 72, 95, 94, 85, 142, 142, 131, 70, 67, 56, 136, 133, 123, 78, 75, 64, 128, 125, 114, 102, 99, 89, 115, 112, 102, 92, 89, 78, 74, 71, 61, 85, 82, 71, 94, 91, 81, 95, 92, 82, 87, 84, 74, 77, 76, 68, 86, 83, 72, 81, 78, 70, 92, 88, 80, 81, 78, 70, 133, 132, 124, 78, 75, 64, 102, 101, 92, 87, 84, 76, 87, 84, 74, 120, 119, 111, 128, 128, 119, 68, 67, 58, 76, 76, 64, 95, 94, 85, 104, 103, 94, 71, 71, 62, 57, 56, 50, 59, 64, 56, 52, 54, 46, 80, 84, 73, 58, 61, 53, 36, 40, 29, 43, 47, 36, 223, 221, 208, 223, 223, 209, 222, 220, 207, 222, 220, 207, 219, 216, 203, 216, 214, 201, 220, 217, 204, 221, 218, 207, 222, 220, 207, 224, 222, 209, 227, 224, 211, 227, 224, 211, 227, 224, 211, 229, 227, 214, 225, 223, 210, 224, 222, 209, 221, 218, 205, 231, 229, 216, 244, 242, 229, 243, 240, 230, 254, 251, 240, 92, 89, 78, 53, 50, 40, 71, 68, 57, 57, 54, 43, 82, 79, 69, 80, 77, 67, 79, 76, 65, 67, 64, 54, 48, 48, 36, 57, 57, 46, 55, 57, 45, 61, 60, 49, 72, 74, 64, 51, 53, 43, 36, 36, 27, 52, 51, 42, 57, 57, 48, 53, 52, 43, 50, 50, 41, 38, 37, 28, 52, 51, 42, 54, 53, 44, 46, 45, 36, 38, 37, 28, 52, 51, 42, 52, 51, 42, 46, 45, 36, 47, 46, 37, 53, 52, 43, 52, 51, 42, 41, 40, 32, 47, 46, 35, 46, 45, 36, 43, 43, 32, 52, 51, 40, 53, 50, 40, 46, 45, 34, 54, 53, 42, 64, 61, 50, 57, 57, 46, 62, 62, 48, 61, 60, 49, 56, 56, 45, 62, 62, 48, 53, 53, 39, 63, 65, 51, 47, 48, 36, 67, 69, 57, 69, 69, 57, 65, 67, 55, 46, 45, 34, 71, 71, 60, 61, 60, 49, 76, 76, 64, 77, 77, 65, 57, 57, 46, 67, 66, 55, 67, 69, 60, 82, 81, 72, 56, 56, 45, 76, 76, 64, 77, 77, 65, 68, 67, 56, 96, 95, 84, 62, 62, 50, 50, 50, 39, 64, 61, 50, 70, 67, 56, 58, 55, 45, 80, 77, 67, 86, 83, 72, 70, 67, 56, 60, 57, 47, 77, 74, 63, 88, 85, 77, 92, 88, 80, 85, 81, 73, 56, 52, 44, 70, 69, 61, 53, 52, 43, 77, 76, 68, 76, 75, 66, 75, 74, 65, 84, 83, 75, 69, 68, 60, 69, 70, 61, 56, 55, 47, 78, 80, 70, 66, 65, 56, 76, 75, 66, 78, 78, 69, 70, 69, 61, 60, 59, 50, 82, 81, 72, 64, 64, 53, 66, 65, 56, 68, 67, 56, 64, 64, 53, 100, 100, 91, 59, 58, 49, 64, 64, 53, 70, 69, 61, 68, 67, 56, 59, 58, 47, 61, 60, 49, 78, 78, 67, 71, 71, 60, 100, 100, 89, 75, 73, 62, 60, 57, 47, 84, 84, 72, 67, 66, 55, 61, 60, 49, 94, 93, 82, 53, 52, 41, 61, 60, 49, 98, 98, 86, 84, 84, 72, 68, 67, 56, 108, 107, 96, 59, 58, 47, 74, 73, 62, 73, 72, 61, 57, 57, 46, 97, 96, 85, 62, 62, 50, 112, 112, 100, 76, 76, 64, 68, 67, 56, 82, 79, 69, 82, 81, 70, 90, 89, 80, 83, 82, 73, 50, 50, 41, 97, 96, 87, 68, 67, 58, 100, 102, 92, 102, 104, 94, 77, 78, 69, 57, 59, 49, 76, 77, 68, 66, 65, 56, 77, 77, 65, 69, 68, 60, 106, 106, 95, 71, 68, 57, 57, 57, 46, 82, 81, 70, 96, 93, 85, 64, 64, 53, 75, 74, 63, 98, 98, 86, 64, 64, 53, 64, 64, 53, 94, 93, 80, 96, 93, 83, 71, 71, 58, 88, 87, 76, 99, 99, 88, 67, 66, 55, 90, 90, 78, 118, 117, 106, 70, 70, 59, 103, 102, 91, 83, 82, 73, 92, 92, 81, 84, 84, 72, 66, 63, 53, 63, 60, 49, 78, 75, 64, 132, 129, 119, 107, 104, 94, 117, 114, 104, 108, 105, 95, 106, 103, 92, 86, 83, 72, 59, 56, 46, 106, 106, 95, 88, 87, 76, 113, 112, 104, 100, 97, 86, 115, 112, 104, 66, 65, 56, 140, 139, 130, 75, 74, 65, 61, 58, 50, 82, 81, 72, 66, 64, 58, 117, 116, 109, 88, 90, 82, 67, 69, 62, 72, 73, 66, 60, 62, 54, 66, 68, 58, 60, 62, 54, 38, 44, 35, 48, 52, 46, 63, 69, 60, 43, 49, 41, 34, 40, 31, 35, 41, 32, 46, 52, 43, 49, 57, 48, 227, 225, 209, 222, 220, 207, 220, 217, 204, 220, 217, 204, 219, 216, 203, 220, 217, 204, 221, 218, 205, 222, 220, 207, 220, 217, 204, 225, 223, 210, 227, 224, 211, 229, 227, 214, 227, 225, 209, 228, 225, 213, 227, 225, 209, 233, 230, 217, 237, 235, 222, 234, 231, 218, 242, 239, 226, 250, 248, 235, 242, 239, 228, 29, 26, 15, 79, 76, 65, 47, 45, 34, 66, 63, 53, 82, 79, 69, 83, 81, 70, 67, 64, 54, 59, 56, 48, 63, 62, 54, 68, 67, 58, 35, 34, 26, 34, 33, 25, 52, 51, 42, 55, 54, 46, 48, 47, 39, 42, 42, 31, 48, 48, 36, 59, 58, 47, 62, 62, 50, 48, 48, 36, 61, 60, 51, 41, 40, 32, 31, 30, 21, 55, 54, 46, 47, 46, 37, 47, 48, 39, 47, 48, 39, 44, 46, 36, 44, 46, 36, 47, 48, 39, 47, 48, 39, 52, 51, 40, 48, 47, 39, 68, 67, 58, 53, 52, 43, 45, 44, 33, 59, 58, 47, 46, 45, 36, 57, 57, 46, 52, 51, 40, 55, 55, 43, 50, 50, 37, 57, 57, 46, 69, 69, 57, 67, 66, 55, 57, 59, 47, 55, 57, 45, 58, 60, 48, 68, 67, 56, 69, 69, 57, 63, 63, 52, 64, 64, 53, 75, 74, 63, 61, 60, 49, 53, 52, 41, 73, 72, 61, 65, 67, 55, 71, 73, 61, 64, 64, 53, 85, 85, 74, 64, 64, 53, 78, 78, 67, 61, 60, 49, 63, 63, 52, 80, 79, 68, 53, 52, 41, 70, 70, 59, 80, 77, 67, 65, 62, 52, 73, 70, 60, 70, 67, 56, 80, 77, 67, 73, 70, 62, 75, 72, 64, 64, 61, 50, 70, 66, 58, 70, 66, 58, 69, 68, 60, 78, 78, 69, 82, 81, 72, 83, 82, 73, 57, 57, 48, 78, 78, 69, 66, 65, 56, 64, 66, 56, 67, 69, 60, 97, 96, 87, 74, 76, 66, 77, 76, 68, 68, 67, 58, 84, 83, 75, 67, 66, 57, 70, 69, 61, 70, 69, 61, 80, 79, 70, 56, 55, 47, 75, 74, 63, 76, 76, 64, 83, 82, 73, 71, 68, 57, 66, 65, 54, 71, 71, 60, 91, 91, 80, 60, 59, 48, 91, 90, 82, 73, 72, 61, 77, 77, 65, 69, 68, 60, 75, 73, 62, 53, 50, 40, 56, 53, 42, 77, 74, 63, 82, 79, 69, 57, 57, 46, 56, 56, 45, 70, 70, 59, 99, 99, 88, 47, 46, 35, 85, 85, 74, 94, 93, 82, 94, 93, 82, 73, 72, 61, 64, 64, 55, 89, 88, 77, 78, 78, 67, 105, 105, 94, 94, 93, 82, 78, 78, 67, 42, 42, 31, 74, 73, 62, 83, 83, 71, 119, 118, 110, 77, 76, 68, 91, 90, 82, 55, 56, 47, 99, 100, 91, 96, 95, 86, 62, 63, 54, 77, 76, 68, 66, 68, 58, 99, 98, 90, 90, 91, 82, 102, 101, 90, 82, 81, 70, 89, 88, 77, 94, 93, 82, 75, 74, 63, 57, 57, 46, 73, 72, 61, 114, 114, 103, 64, 64, 53, 64, 64, 53, 55, 55, 43, 79, 76, 65, 82, 79, 69, 83, 83, 71, 97, 95, 84, 42, 42, 31, 108, 107, 96, 110, 109, 98, 117, 116, 105, 114, 114, 103, 119, 119, 107, 83, 83, 71, 76, 76, 64, 64, 64, 53, 83, 83, 71, 108, 107, 96, 76, 76, 64, 61, 59, 48, 64, 64, 53, 64, 61, 50, 138, 135, 125, 80, 79, 68, 135, 135, 124, 117, 116, 105, 133, 133, 121, 114, 114, 103, 133, 132, 124, 125, 124, 115, 93, 90, 80, 90, 89, 80, 112, 111, 103, 62, 61, 52, 79, 81, 71, 81, 83, 73, 62, 63, 56, 58, 59, 54, 79, 80, 75, 68, 71, 66, 65, 68, 62, 43, 46, 40, 51, 54, 48, 47, 50, 45, 42, 45, 39, 45, 50, 44, 42, 48, 41, 45, 50, 44, 41, 47, 38, 34, 40, 31, 51, 59, 50, 54, 60, 51, 58, 68, 58, 229, 227, 214, 222, 220, 207, 216, 214, 201, 220, 217, 204, 219, 216, 203, 217, 214, 204, 220, 217, 204, 225, 223, 210, 221, 218, 205, 221, 218, 205, 227, 224, 211, 225, 223, 210, 230, 228, 215, 222, 220, 207, 228, 225, 213, 229, 227, 214, 237, 235, 222, 234, 231, 218, 236, 234, 219, 240, 237, 224, 217, 214, 204, 16, 13, 3, 80, 77, 67, 50, 47, 36, 92, 89, 78, 74, 71, 61, 79, 76, 65, 66, 63, 55, 65, 62, 54, 63, 62, 54, 46, 45, 36, 73, 72, 63, 56, 55, 47, 53, 52, 43, 50, 50, 41, 36, 36, 27, 42, 42, 31, 46, 45, 34, 56, 56, 45, 32, 31, 22, 47, 46, 37, 56, 55, 47, 60, 59, 50, 35, 34, 26, 47, 46, 39, 49, 50, 43, 41, 42, 33, 43, 45, 35, 47, 48, 39, 42, 43, 34, 43, 45, 35, 35, 36, 27, 52, 54, 44, 38, 40, 30, 38, 40, 30, 46, 45, 36, 42, 41, 33, 52, 51, 42, 54, 53, 42, 49, 49, 38, 52, 51, 40, 48, 48, 36, 49, 49, 38, 46, 45, 34, 52, 51, 40, 53, 55, 43, 69, 69, 57, 63, 63, 52, 56, 58, 46, 57, 57, 46, 67, 69, 57, 47, 46, 35, 69, 71, 59, 55, 55, 43, 76, 78, 65, 76, 78, 65, 60, 59, 48, 70, 72, 60, 64, 64, 53, 67, 66, 55, 62, 62, 50, 61, 60, 49, 67, 66, 55, 67, 66, 55, 85, 82, 71, 81, 78, 68, 82, 81, 70, 64, 61, 50, 65, 62, 52, 58, 55, 45, 51, 48, 38, 60, 57, 47, 79, 76, 65, 75, 73, 62, 77, 73, 65, 82, 79, 71, 68, 65, 57, 54, 53, 44, 77, 76, 68, 88, 87, 78, 55, 54, 46, 77, 76, 68, 54, 53, 44, 69, 68, 60, 62, 61, 52, 74, 73, 64, 75, 74, 65, 80, 79, 70, 72, 74, 64, 67, 66, 57, 49, 48, 40, 68, 67, 58, 89, 88, 79, 69, 68, 60, 82, 81, 72, 69, 68, 60, 52, 51, 42, 57, 57, 48, 71, 71, 62, 75, 74, 65, 70, 69, 61, 75, 74, 63, 83, 83, 71, 74, 73, 62, 82, 81, 70, 56, 56, 45, 77, 77, 65, 88, 87, 76, 101, 98, 88, 79, 76, 65, 97, 95, 84, 91, 88, 77, 73, 70, 60, 72, 69, 59, 77, 74, 63, 55, 55, 43, 88, 87, 76, 86, 83, 72, 106, 103, 92, 86, 83, 72, 62, 62, 50, 70, 70, 59, 73, 72, 61, 64, 64, 53, 84, 84, 72, 119, 119, 107, 71, 71, 60, 81, 80, 69, 69, 69, 57, 56, 56, 45, 90, 90, 78, 68, 67, 56, 63, 62, 54, 73, 72, 63, 85, 85, 76, 102, 101, 92, 85, 85, 76, 73, 72, 63, 95, 94, 85, 57, 57, 48, 106, 105, 97, 90, 89, 80, 70, 69, 61, 56, 56, 45, 95, 94, 83, 66, 63, 53, 55, 55, 43, 61, 60, 49, 116, 115, 104, 92, 89, 78, 102, 99, 89, 94, 91, 81, 49, 49, 38, 88, 85, 75, 110, 107, 97, 85, 85, 72, 70, 70, 57, 85, 85, 74, 53, 52, 41, 91, 91, 80, 59, 58, 47, 110, 109, 98, 75, 74, 63, 85, 85, 74, 66, 65, 54, 94, 91, 81, 125, 124, 115, 116, 115, 104, 69, 68, 60, 70, 70, 59, 97, 96, 85, 116, 115, 104, 110, 109, 98, 70, 67, 56, 76, 76, 64, 114, 114, 103, 106, 106, 95, 90, 90, 78, 104, 101, 93, 62, 61, 52, 106, 105, 97, 83, 83, 71, 52, 51, 42, 78, 80, 70, 63, 64, 55, 57, 63, 54, 74, 80, 71, 55, 61, 52, 49, 55, 48, 41, 47, 40, 40, 45, 39, 39, 44, 38, 47, 52, 46, 40, 43, 38, 52, 55, 49, 44, 47, 41, 52, 55, 49, 53, 58, 52, 61, 67, 58, 66, 69, 62, 63, 69, 62, 67, 73, 64, 75, 81, 72, 78, 84, 77, 225, 225, 211, 216, 214, 201, 220, 217, 204, 212, 209, 196, 215, 213, 200, 220, 217, 206, 220, 217, 206, 216, 214, 201, 224, 221, 211, 225, 223, 210, 224, 222, 209, 224, 222, 209, 228, 225, 213, 227, 224, 211, 233, 230, 217, 230, 228, 215, 238, 236, 223, 241, 238, 225, 241, 238, 225, 230, 228, 215, 121, 118, 105, 73, 70, 60, 83, 83, 71, 80, 79, 68, 66, 63, 53, 72, 69, 59, 85, 82, 71, 56, 52, 44, 61, 60, 51, 57, 57, 48, 47, 46, 37, 42, 41, 33, 45, 44, 35, 41, 40, 34, 43, 43, 34, 56, 55, 47, 47, 46, 35, 58, 55, 47, 53, 52, 43, 43, 43, 34, 49, 48, 40, 55, 54, 46, 45, 44, 35, 49, 48, 40, 50, 49, 43, 39, 38, 31, 54, 53, 46, 63, 62, 54, 39, 38, 29, 47, 48, 39, 42, 43, 34, 33, 34, 25, 45, 44, 35, 55, 54, 46, 39, 38, 29, 42, 41, 33, 41, 41, 29, 56, 56, 45, 48, 47, 39, 55, 55, 43, 50, 50, 39, 59, 58, 47, 57, 57, 46, 52, 51, 40, 53, 52, 41, 60, 59, 48, 63, 63, 52, 54, 53, 42, 68, 67, 56, 64, 64, 53, 68, 67, 56, 66, 65, 54, 62, 62, 50, 64, 64, 53, 56, 56, 45, 63, 63, 52, 66, 65, 54, 73, 72, 61, 60, 59, 48, 69, 69, 57, 64, 64, 53, 71, 71, 58, 73, 72, 61, 61, 61, 47, 86, 83, 70, 71, 71, 58, 77, 74, 61, 58, 55, 45, 81, 79, 66, 64, 61, 50, 64, 61, 50, 63, 60, 49, 92, 89, 78, 49, 46, 35, 100, 97, 86, 57, 53, 46, 52, 49, 41, 79, 76, 68, 60, 59, 50, 74, 73, 64, 74, 73, 64, 66, 65, 56, 83, 82, 73, 90, 89, 80, 85, 85, 74, 74, 76, 64, 78, 78, 67, 74, 73, 64, 65, 67, 57, 63, 64, 55, 81, 80, 71, 71, 73, 63, 66, 65, 56, 73, 72, 63, 59, 58, 49, 83, 82, 73, 64, 64, 55, 69, 68, 60, 83, 82, 73, 77, 76, 68, 49, 48, 40, 74, 73, 62, 90, 90, 78, 82, 81, 70, 78, 78, 67, 56, 56, 45, 70, 70, 59, 75, 74, 63, 72, 69, 59, 85, 82, 71, 89, 86, 76, 43, 40, 29, 94, 91, 81, 68, 66, 55, 54, 53, 42, 80, 79, 68, 67, 64, 54, 74, 71, 61, 64, 64, 53, 82, 81, 70, 74, 73, 62, 78, 78, 67, 82, 81, 70, 167, 166, 155, 95, 94, 83, 100, 100, 89, 60, 59, 48, 78, 78, 67, 78, 78, 67, 50, 50, 39, 78, 78, 67, 111, 110, 99, 78, 78, 69, 61, 60, 51, 84, 83, 75, 61, 60, 51, 73, 72, 63, 71, 71, 62, 110, 109, 100, 95, 94, 85, 64, 64, 55, 82, 81, 72, 77, 77, 65, 55, 55, 43, 97, 96, 85, 62, 62, 50, 62, 62, 50, 83, 83, 71, 103, 102, 91, 89, 86, 76, 76, 76, 64, 81, 78, 68, 91, 91, 80, 124, 121, 111, 106, 103, 92, 81, 80, 69, 78, 78, 67, 91, 91, 80, 95, 94, 83, 69, 69, 57, 70, 70, 59, 128, 128, 117, 61, 60, 49, 128, 128, 117, 89, 88, 77, 91, 91, 80, 94, 93, 84, 61, 60, 49, 113, 113, 102, 108, 107, 96, 114, 114, 103, 118, 117, 106, 108, 107, 96, 104, 103, 94, 86, 83, 72, 68, 67, 56, 77, 77, 65, 83, 82, 73, 83, 82, 73, 87, 86, 77, 80, 79, 70, 79, 81, 71, 69, 70, 61, 53, 57, 49, 61, 65, 57, 43, 49, 43, 41, 49, 39, 41, 47, 40, 40, 45, 39, 46, 51, 45, 43, 49, 43, 42, 48, 41, 57, 59, 56, 54, 57, 52, 67, 68, 64, 63, 64, 59, 55, 59, 51, 86, 89, 83, 90, 94, 88, 78, 84, 75, 95, 100, 92, 137, 140, 132, 255, 255, 255, 255, 255, 255, 223, 221, 208, 216, 216, 202, 219, 216, 203, 217, 214, 204, 222, 219, 209, 217, 214, 204, 219, 216, 205, 220, 217, 204, 221, 218, 205, 222, 220, 207, 223, 221, 208, 223, 220, 210, 225, 223, 210, 224, 222, 209, 223, 221, 208, 234, 231, 218, 238, 236, 223, 241, 238, 225, 237, 235, 222, 216, 214, 201, 12, 10, 0, 88, 85, 75, 78, 78, 67, 84, 86, 74, 72, 69, 59, 67, 66, 55, 64, 64, 53, 59, 58, 47, 60, 57, 49, 61, 60, 51, 60, 59, 50, 59, 58, 49, 57, 53, 46, 56, 52, 44, 50, 49, 43, 45, 44, 35, 38, 37, 28, 41, 40, 32, 57, 57, 48, 45, 44, 35, 42, 41, 33, 53, 52, 43, 47, 46, 37, 47, 46, 37, 53, 52, 43, 41, 40, 32, 38, 37, 28, 47, 46, 37, 53, 52, 43, 42, 41, 33, 39, 38, 29, 44, 46, 36, 64, 64, 55, 67, 66, 57, 48, 47, 39, 33, 32, 23, 40, 39, 28, 47, 46, 35, 48, 50, 38, 52, 51, 40, 54, 53, 42, 49, 49, 38, 57, 57, 46, 56, 56, 45, 59, 58, 47, 69, 69, 57, 60, 59, 48, 62, 64, 52, 64, 64, 53, 64, 64, 53, 60, 62, 50, 70, 70, 59, 64, 66, 54, 60, 62, 50, 58, 60, 48, 57, 59, 47, 81, 80, 69, 64, 66, 54, 70, 70, 59, 58, 60, 48, 64, 64, 53, 63, 63, 52, 73, 72, 59, 60, 60, 46, 62, 62, 48, 54, 52, 39, 51, 48, 36, 77, 74, 61, 64, 61, 48, 59, 56, 46, 50, 47, 34, 61, 59, 48, 59, 56, 46, 66, 65, 54, 71, 68, 57, 83, 81, 70, 96, 93, 85, 53, 52, 43, 100, 97, 89, 73, 72, 63, 61, 60, 51, 73, 70, 62, 70, 70, 59, 94, 93, 82, 46, 45, 34, 70, 69, 61, 89, 88, 77, 77, 76, 68, 47, 48, 39, 70, 69, 61, 50, 52, 42, 48, 47, 39, 77, 76, 68, 76, 75, 66, 78, 78, 69, 62, 61, 52, 56, 55, 47, 80, 79, 68, 68, 67, 58, 60, 59, 50, 78, 78, 67, 69, 69, 57, 78, 78, 67, 87, 86, 75, 66, 65, 54, 66, 65, 54, 68, 67, 56, 64, 64, 53, 88, 87, 76, 97, 96, 85, 75, 74, 63, 80, 77, 67, 59, 56, 46, 54, 52, 41, 92, 89, 78, 72, 69, 57, 75, 73, 62, 75, 73, 62, 74, 71, 61, 71, 71, 60, 74, 73, 62, 66, 63, 53, 63, 63, 52, 92, 92, 81, 94, 93, 82, 69, 69, 57, 83, 83, 71, 89, 88, 77, 68, 67, 56, 57, 57, 46, 99, 99, 88, 94, 93, 82, 85, 85, 76, 74, 73, 64, 90, 89, 80, 87, 86, 77, 61, 60, 51, 99, 98, 90, 87, 89, 79, 82, 81, 72, 71, 71, 62, 71, 71, 62, 80, 79, 70, 70, 70, 59, 64, 64, 53, 62, 62, 50, 83, 83, 71, 59, 58, 47, 84, 84, 72, 107, 104, 94, 63, 63, 52, 59, 56, 46, 83, 83, 71, 73, 70, 60, 104, 102, 91, 61, 59, 48, 108, 105, 95, 71, 68, 57, 85, 85, 74, 85, 85, 74, 73, 72, 61, 78, 78, 67, 77, 77, 65, 82, 81, 70, 70, 70, 59, 68, 67, 58, 70, 69, 61, 64, 64, 53, 88, 87, 78, 140, 139, 130, 106, 105, 97, 106, 105, 97, 82, 81, 70, 99, 98, 90, 89, 88, 79, 87, 86, 77, 69, 70, 61, 79, 81, 71, 63, 64, 57, 64, 64, 55, 57, 59, 49, 39, 43, 33, 36, 39, 31, 44, 47, 39, 45, 48, 43, 48, 52, 46, 33, 39, 32, 46, 49, 44, 46, 51, 45, 50, 56, 49, 59, 62, 56, 58, 61, 55, 82, 85, 80, 80, 83, 77, 79, 82, 76, 99, 102, 96, 94, 97, 91, 161, 165, 159, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 223, 210, 224, 222, 209, 221, 218, 205, 220, 217, 204, 217, 215, 202, 217, 214, 204, 220, 217, 206, 219, 216, 203, 219, 216, 205, 228, 225, 213, 223, 221, 208, 217, 216, 205, 222, 221, 208, 222, 221, 208, 226, 226, 213, 230, 230, 216, 234, 234, 221, 237, 235, 222, 236, 234, 221, 142, 142, 129, 17, 14, 4, 83, 83, 71, 72, 74, 62, 87, 89, 77, 71, 73, 63, 77, 78, 69, 65, 67, 57, 71, 73, 63, 60, 62, 52, 51, 52, 45, 62, 61, 52, 52, 50, 44, 57, 53, 48, 47, 46, 37, 46, 45, 38, 55, 54, 48, 59, 57, 51, 44, 45, 38, 53, 55, 48, 45, 47, 37, 36, 38, 28, 31, 33, 23, 49, 50, 43, 42, 43, 36, 34, 35, 26, 38, 36, 30, 45, 44, 35, 50, 52, 42, 50, 50, 41, 41, 40, 32, 43, 45, 35, 62, 63, 54, 47, 48, 39, 43, 43, 34, 41, 40, 32, 36, 38, 28, 70, 70, 59, 41, 41, 29, 38, 40, 28, 57, 57, 46, 44, 46, 36, 55, 55, 43, 55, 55, 43, 56, 55, 47, 62, 64, 52, 57, 57, 46, 66, 65, 54, 66, 68, 56, 70, 70, 59, 60, 62, 50, 69, 71, 59, 42, 44, 32, 67, 69, 57, 42, 44, 32, 48, 50, 38, 55, 57, 45, 62, 62, 50, 56, 58, 46, 62, 64, 52, 77, 77, 64, 79, 76, 65, 68, 68, 54, 72, 69, 59, 68, 66, 53, 61, 59, 46, 65, 62, 52, 68, 66, 55, 80, 77, 67, 64, 61, 48, 82, 79, 69, 79, 76, 65, 59, 56, 46, 67, 64, 54, 60, 57, 47, 81, 78, 68, 53, 50, 40, 51, 48, 38, 73, 70, 62, 67, 64, 56, 86, 83, 72, 88, 85, 77, 95, 92, 84, 53, 50, 40, 67, 64, 54, 64, 64, 53, 66, 65, 54, 64, 64, 53, 62, 64, 52, 53, 55, 46, 85, 87, 77, 69, 70, 61, 85, 87, 77, 68, 67, 58, 53, 52, 43, 78, 78, 69, 66, 65, 56, 57, 57, 46, 56, 56, 45, 82, 81, 70, 70, 67, 56, 80, 79, 68, 75, 73, 62, 63, 63, 52, 49, 49, 38, 63, 60, 49, 84, 84, 72, 62, 62, 50, 81, 80, 69, 50, 50, 39, 64, 64, 53, 55, 55, 43, 58, 55, 45, 81, 80, 69, 63, 60, 49, 82, 81, 70, 74, 74, 60, 91, 88, 77, 63, 63, 50, 72, 69, 57, 84, 84, 72, 59, 58, 47, 57, 54, 43, 85, 82, 71, 63, 60, 49, 71, 71, 60, 82, 81, 70, 92, 92, 81, 64, 64, 53, 81, 80, 69, 55, 55, 43, 91, 91, 80, 73, 72, 61, 66, 65, 54, 80, 79, 70, 83, 82, 73, 71, 71, 62, 74, 73, 64, 84, 83, 75, 91, 90, 82, 81, 80, 71, 61, 60, 51, 96, 95, 86, 83, 82, 73, 76, 76, 64, 96, 95, 84, 110, 109, 98, 100, 100, 89, 78, 78, 69, 88, 87, 78, 95, 92, 82, 82, 81, 70, 120, 117, 106, 96, 95, 84, 67, 66, 55, 91, 88, 77, 92, 89, 78, 73, 70, 60, 99, 96, 85, 80, 77, 67, 64, 64, 53, 77, 77, 65, 75, 73, 62, 108, 107, 96, 63, 63, 52, 78, 78, 67, 111, 110, 101, 75, 74, 65, 66, 65, 54, 78, 78, 67, 99, 98, 90, 60, 58, 52, 60, 58, 52, 83, 82, 75, 80, 78, 72, 94, 92, 86, 49, 50, 43, 67, 72, 66, 58, 61, 53, 44, 47, 41, 45, 48, 43, 31, 35, 27, 42, 45, 37, 39, 45, 36, 46, 50, 42, 54, 57, 52, 62, 66, 58, 71, 77, 68, 88, 92, 84, 83, 87, 79, 80, 83, 75, 85, 88, 80, 94, 97, 89, 114, 117, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 220, 207, 217, 215, 202, 215, 213, 200, 222, 219, 209, 219, 216, 205, 220, 217, 206, 224, 221, 211, 220, 217, 206, 222, 220, 207, 221, 218, 205, 219, 216, 203, 222, 220, 207, 219, 219, 205, 222, 221, 208, 225, 225, 211, 228, 225, 213, 234, 234, 221, 237, 235, 222, 231, 231, 217, 43, 43, 30, 68, 67, 56, 94, 93, 82, 85, 87, 75, 78, 82, 69, 76, 77, 68, 52, 54, 44, 76, 77, 68, 70, 71, 62, 45, 47, 37, 49, 48, 42, 61, 58, 52, 54, 53, 46, 49, 45, 37, 54, 51, 45, 50, 49, 43, 49, 48, 42, 54, 53, 46, 47, 46, 37, 34, 35, 28, 45, 43, 37, 19, 20, 13, 52, 54, 46, 34, 33, 27, 38, 40, 32, 52, 50, 44, 46, 45, 38, 47, 46, 39, 49, 48, 42, 49, 48, 40, 55, 54, 46, 59, 58, 49, 62, 63, 54, 48, 49, 40, 41, 40, 32, 52, 51, 42, 52, 54, 44, 43, 45, 33, 52, 54, 42, 48, 50, 38, 57, 59, 47, 51, 53, 41, 66, 68, 56, 56, 58, 46, 52, 54, 42, 71, 71, 60, 48, 48, 36, 71, 71, 60, 52, 52, 38, 57, 57, 46, 56, 56, 45, 70, 70, 59, 66, 65, 54, 59, 58, 47, 58, 60, 48, 48, 48, 36, 70, 70, 59, 66, 65, 54, 69, 69, 57, 68, 67, 56, 57, 54, 43, 60, 59, 48, 78, 75, 62, 60, 58, 45, 56, 53, 40, 60, 58, 45, 75, 73, 62, 75, 73, 62, 64, 61, 50, 64, 61, 50, 56, 53, 42, 93, 90, 80, 89, 86, 76, 44, 41, 31, 61, 59, 48, 65, 62, 52, 56, 53, 42, 88, 85, 75, 75, 73, 62, 77, 73, 65, 60, 57, 47, 51, 48, 38, 73, 70, 60, 72, 69, 59, 51, 48, 38, 50, 47, 36, 70, 70, 59, 60, 59, 48, 63, 62, 54, 80, 79, 70, 64, 66, 56, 62, 63, 54, 47, 46, 37, 70, 71, 62, 84, 83, 75, 66, 65, 56, 56, 55, 47, 59, 58, 49, 88, 87, 78, 67, 66, 57, 75, 73, 62, 58, 55, 45, 79, 76, 65, 66, 63, 53, 64, 61, 50, 73, 70, 60, 63, 60, 49, 74, 71, 61, 59, 56, 46, 52, 51, 40, 71, 71, 60, 77, 77, 65, 72, 69, 59, 61, 59, 48, 94, 91, 81, 75, 73, 62, 58, 55, 45, 64, 61, 50, 56, 56, 45, 66, 63, 53, 91, 91, 80, 80, 79, 68, 53, 50, 40, 60, 59, 48, 83, 83, 71, 68, 67, 56, 68, 67, 56, 69, 69, 57, 87, 86, 75, 75, 74, 63, 63, 63, 52, 56, 56, 45, 73, 72, 61, 66, 65, 56, 68, 67, 58, 71, 71, 62, 67, 66, 57, 88, 87, 78, 100, 100, 91, 87, 86, 77, 99, 98, 90, 85, 85, 76, 59, 58, 49, 71, 71, 62, 100, 100, 89, 103, 100, 90, 83, 81, 70, 85, 85, 74, 81, 78, 68, 63, 60, 49, 64, 60, 52, 70, 67, 56, 89, 88, 77, 87, 84, 74, 82, 79, 69, 81, 78, 68, 95, 92, 82, 97, 95, 84, 89, 86, 76, 83, 81, 70, 96, 95, 84, 111, 110, 99, 85, 82, 71, 92, 92, 81, 111, 110, 99, 74, 73, 62, 62, 61, 52, 66, 65, 56, 77, 78, 69, 85, 87, 77, 51, 53, 43, 59, 61, 53, 66, 64, 58, 60, 58, 52, 62, 60, 56, 47, 45, 41, 45, 46, 41, 42, 45, 39, 43, 49, 43, 36, 42, 34, 53, 58, 52, 48, 54, 47, 48, 54, 45, 67, 72, 66, 69, 73, 65, 74, 77, 72, 82, 86, 78, 89, 93, 85, 85, 88, 80, 110, 114, 106, 245, 249, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 223, 209, 220, 217, 204, 217, 217, 203, 216, 215, 204, 216, 215, 204, 219, 216, 205, 221, 218, 207, 222, 221, 210, 220, 217, 206, 220, 217, 206, 219, 219, 205, 222, 220, 207, 219, 219, 207, 223, 223, 209, 225, 225, 211, 231, 229, 216, 240, 240, 226, 231, 229, 216, 197, 197, 183, 12, 12, 0, 93, 90, 80, 92, 92, 81, 72, 74, 64, 64, 66, 54, 71, 73, 63, 64, 66, 56, 72, 74, 64, 45, 47, 37, 43, 45, 35, 35, 36, 27, 51, 47, 42, 47, 46, 39, 59, 55, 50, 54, 51, 43, 34, 33, 27, 45, 41, 36, 50, 49, 43, 59, 57, 51, 41, 40, 34, 48, 47, 41, 43, 43, 34, 46, 45, 36, 44, 45, 38, 30, 31, 24, 46, 45, 38, 17, 19, 11, 44, 45, 38, 51, 52, 45, 57, 58, 51, 38, 40, 30, 47, 46, 37, 56, 55, 47, 50, 50, 41, 50, 50, 41, 53, 52, 43, 40, 41, 32, 43, 45, 33, 44, 46, 34, 50, 52, 40, 53, 55, 46, 51, 53, 41, 48, 50, 38, 53, 55, 43, 67, 69, 57, 54, 53, 44, 56, 56, 45, 64, 64, 53, 62, 62, 50, 54, 53, 42, 68, 67, 56, 62, 62, 50, 74, 73, 62, 66, 65, 54, 45, 44, 33, 73, 72, 61, 55, 54, 46, 69, 69, 57, 56, 56, 45, 54, 53, 42, 69, 68, 60, 64, 64, 53, 67, 64, 54, 64, 64, 51, 67, 64, 54, 73, 70, 60, 66, 63, 53, 57, 54, 43, 74, 71, 61, 51, 48, 38, 74, 71, 61, 86, 83, 72, 63, 60, 49, 54, 52, 41, 70, 67, 56, 72, 69, 59, 86, 83, 72, 66, 63, 53, 67, 64, 54, 58, 55, 45, 68, 66, 55, 47, 45, 34, 59, 57, 44, 54, 52, 39, 74, 72, 59, 77, 74, 63, 81, 80, 69, 94, 93, 80, 64, 66, 54, 98, 98, 86, 83, 82, 73, 50, 52, 42, 55, 57, 45, 89, 88, 79, 56, 55, 47, 59, 58, 49, 66, 65, 56, 64, 64, 55, 78, 78, 69, 76, 76, 64, 70, 69, 61, 80, 77, 67, 80, 77, 67, 75, 73, 62, 92, 89, 78, 60, 57, 47, 71, 68, 57, 50, 47, 36, 56, 53, 42, 86, 83, 72, 57, 54, 43, 86, 83, 72, 75, 73, 62, 57, 54, 43, 50, 47, 36, 81, 78, 68, 70, 67, 56, 75, 73, 62, 73, 70, 60, 68, 67, 56, 84, 84, 72, 82, 81, 70, 83, 83, 71, 84, 84, 72, 70, 69, 61, 88, 87, 78, 66, 65, 56, 60, 59, 50, 69, 69, 57, 70, 69, 61, 59, 58, 49, 92, 92, 83, 73, 72, 63, 75, 74, 65, 68, 67, 58, 87, 86, 77, 74, 73, 64, 64, 64, 55, 75, 74, 65, 81, 80, 71, 90, 89, 80, 80, 79, 70, 82, 81, 72, 89, 88, 79, 60, 59, 50, 73, 72, 61, 84, 84, 72, 64, 64, 53, 71, 71, 62, 91, 90, 82, 81, 80, 71, 76, 76, 64, 103, 102, 91, 62, 62, 50, 89, 86, 76, 111, 109, 98, 74, 71, 61, 79, 76, 65, 79, 76, 65, 88, 85, 75, 85, 82, 71, 94, 91, 81, 101, 98, 88, 87, 84, 74, 102, 101, 90, 68, 67, 56, 89, 88, 79, 73, 75, 65, 60, 62, 52, 53, 57, 47, 52, 56, 46, 55, 56, 49, 49, 50, 43, 50, 53, 45, 47, 50, 45, 44, 47, 41, 36, 42, 36, 46, 51, 45, 62, 68, 61, 60, 66, 57, 50, 56, 49, 62, 68, 59, 58, 61, 53, 73, 76, 68, 80, 83, 75, 93, 96, 88, 186, 189, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 221, 205, 219, 219, 205, 220, 217, 204, 219, 216, 203, 217, 216, 205, 213, 213, 202, 215, 212, 202, 215, 214, 203, 219, 219, 207, 215, 214, 203, 219, 219, 205, 218, 218, 204, 219, 219, 207, 219, 219, 205, 224, 224, 210, 230, 230, 216, 233, 233, 220, 231, 231, 217, 134, 134, 123, 55, 55, 43, 75, 74, 63, 85, 85, 74, 79, 81, 71, 74, 76, 64, 74, 76, 66, 74, 76, 66, 64, 66, 56, 53, 55, 46, 63, 62, 54, 56, 55, 47, 45, 43, 37, 51, 47, 42, 45, 41, 36, 63, 59, 53, 63, 59, 53, 47, 46, 39, 47, 46, 39, 23, 24, 17, 28, 27, 21, 43, 44, 37, 53, 52, 45, 28, 30, 20, 56, 55, 49, 41, 42, 35, 49, 48, 42, 53, 52, 45, 35, 36, 29, 50, 51, 44, 51, 52, 45, 50, 52, 42, 53, 52, 43, 38, 40, 30, 36, 38, 28, 35, 37, 25, 34, 36, 24, 38, 40, 28, 45, 47, 35, 41, 43, 31, 47, 48, 36, 55, 57, 45, 56, 58, 46, 45, 47, 35, 47, 48, 36, 61, 60, 51, 55, 55, 43, 62, 62, 50, 60, 59, 48, 60, 59, 48, 57, 57, 46, 53, 52, 41, 77, 77, 65, 66, 65, 54, 61, 60, 49, 56, 56, 45, 48, 47, 39, 68, 67, 56, 71, 71, 62, 43, 43, 32, 62, 62, 50, 56, 56, 45, 61, 60, 49, 66, 63, 53, 64, 61, 50, 65, 62, 52, 60, 57, 47, 71, 68, 57, 51, 48, 38, 45, 42, 32, 44, 41, 31, 68, 66, 55, 49, 46, 35, 53, 50, 40, 82, 79, 69, 59, 56, 46, 63, 60, 49, 87, 84, 74, 80, 77, 67, 81, 78, 68, 59, 56, 46, 75, 73, 62, 58, 55, 45, 59, 57, 44, 66, 63, 53, 57, 54, 43, 66, 63, 53, 72, 69, 59, 56, 56, 43, 73, 72, 61, 61, 60, 49, 68, 67, 56, 87, 86, 75, 57, 57, 46, 69, 71, 59, 62, 62, 50, 59, 58, 47, 73, 72, 63, 71, 71, 62, 61, 60, 51, 73, 72, 63, 70, 69, 61, 56, 55, 47, 85, 82, 71, 93, 90, 80, 66, 63, 53, 56, 53, 42, 61, 60, 49, 59, 58, 47, 52, 51, 40, 57, 54, 43, 62, 62, 50, 71, 68, 57, 82, 79, 69, 65, 62, 52, 83, 81, 70, 63, 60, 49, 52, 49, 39, 71, 68, 57, 79, 76, 65, 77, 74, 63, 75, 74, 63, 49, 49, 38, 55, 54, 46, 95, 94, 83, 60, 59, 50, 81, 80, 69, 55, 54, 46, 71, 71, 60, 81, 80, 71, 68, 67, 58, 73, 72, 63, 68, 67, 58, 91, 90, 82, 52, 51, 42, 81, 80, 71, 63, 62, 54, 92, 92, 83, 85, 85, 76, 73, 72, 63, 81, 80, 71, 105, 104, 96, 87, 86, 77, 82, 81, 72, 85, 85, 76, 93, 95, 83, 71, 73, 61, 69, 69, 57, 82, 81, 72, 95, 94, 83, 95, 94, 83, 82, 81, 72, 83, 83, 71, 87, 86, 75, 81, 80, 69, 92, 92, 81, 94, 93, 82, 67, 64, 54, 87, 84, 76, 76, 76, 64, 92, 89, 78, 63, 63, 52, 59, 58, 47, 80, 79, 68, 70, 69, 61, 69, 71, 59, 51, 55, 44, 55, 57, 45, 50, 52, 42, 52, 56, 46, 39, 43, 33, 46, 50, 42, 46, 50, 42, 42, 45, 37, 43, 46, 40, 68, 71, 66, 53, 56, 51, 60, 63, 58, 45, 50, 44, 69, 75, 68, 94, 97, 91, 88, 92, 84, 115, 118, 110, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 214, 199, 216, 214, 201, 216, 216, 202, 217, 216, 205, 218, 218, 206, 211, 211, 199, 210, 209, 198, 213, 213, 202, 216, 213, 203, 216, 213, 203, 216, 216, 202, 217, 217, 203, 218, 218, 204, 217, 217, 203, 217, 217, 203, 229, 228, 217, 230, 229, 218, 222, 221, 210, 33, 32, 23, 81, 83, 71, 91, 90, 82, 80, 79, 70, 75, 74, 65, 73, 75, 63, 59, 58, 49, 54, 53, 44, 64, 66, 56, 47, 51, 41, 48, 49, 40, 49, 48, 40, 66, 65, 56, 54, 51, 43, 35, 34, 28, 33, 32, 25, 48, 47, 41, 46, 45, 38, 38, 40, 30, 53, 55, 48, 47, 48, 39, 36, 38, 28, 43, 43, 34, 41, 42, 33, 37, 38, 31, 43, 43, 34, 50, 51, 44, 47, 48, 41, 22, 23, 16, 44, 45, 38, 42, 43, 34, 29, 31, 21, 41, 42, 33, 48, 49, 40, 47, 46, 37, 45, 44, 35, 39, 38, 29, 42, 43, 34, 53, 55, 43, 32, 31, 22, 48, 49, 40, 54, 53, 42, 45, 47, 35, 58, 60, 48, 69, 69, 57, 62, 61, 52, 60, 59, 48, 61, 60, 49, 64, 64, 53, 59, 58, 47, 67, 66, 55, 59, 58, 47, 68, 67, 56, 63, 63, 52, 60, 59, 48, 53, 52, 41, 62, 62, 50, 81, 80, 69, 50, 47, 39, 54, 53, 42, 60, 57, 47, 72, 69, 59, 59, 56, 46, 74, 71, 61, 62, 62, 50, 59, 56, 46, 72, 69, 59, 65, 62, 54, 73, 70, 60, 63, 60, 49, 58, 55, 45, 82, 79, 69, 66, 63, 53, 56, 53, 42, 67, 66, 55, 63, 60, 49, 59, 56, 46, 71, 68, 57, 60, 57, 47, 66, 63, 53, 57, 54, 43, 85, 82, 71, 44, 41, 31, 74, 71, 61, 87, 85, 72, 40, 38, 25, 85, 82, 69, 79, 76, 65, 89, 89, 75, 84, 84, 72, 64, 64, 53, 64, 64, 53, 64, 64, 53, 71, 71, 60, 70, 70, 59, 71, 71, 60, 76, 76, 64, 47, 46, 35, 56, 56, 45, 61, 60, 49, 69, 69, 57, 59, 58, 49, 73, 72, 61, 88, 87, 76, 73, 72, 61, 68, 66, 55, 80, 77, 67, 78, 75, 64, 68, 67, 56, 71, 71, 60, 81, 78, 68, 60, 59, 48, 80, 77, 67, 58, 55, 45, 61, 59, 48, 67, 64, 54, 85, 81, 73, 79, 76, 68, 77, 74, 63, 81, 78, 68, 86, 83, 72, 69, 68, 60, 73, 70, 62, 75, 72, 64, 64, 64, 53, 67, 66, 57, 73, 72, 63, 99, 98, 90, 67, 66, 57, 74, 73, 64, 80, 79, 70, 62, 61, 52, 64, 66, 56, 74, 73, 64, 88, 87, 78, 82, 81, 72, 61, 60, 51, 92, 92, 83, 77, 76, 68, 73, 72, 63, 94, 93, 84, 108, 107, 98, 87, 86, 77, 67, 69, 60, 77, 78, 69, 92, 92, 83, 81, 83, 71, 85, 87, 75, 75, 74, 65, 81, 80, 69, 84, 84, 72, 78, 78, 67, 70, 70, 59, 80, 82, 70, 77, 77, 65, 54, 53, 44, 61, 60, 51, 83, 83, 71, 61, 60, 51, 70, 67, 56, 69, 68, 60, 58, 60, 50, 62, 63, 54, 46, 45, 36, 52, 54, 44, 47, 51, 41, 50, 54, 43, 47, 51, 41, 39, 43, 33, 44, 48, 37, 40, 44, 34, 52, 56, 46, 59, 63, 52, 65, 69, 58, 68, 72, 62, 80, 84, 73, 80, 84, 73, 92, 94, 84, 95, 99, 89, 231, 235, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 216, 201, 219, 216, 203, 219, 216, 203, 217, 214, 204, 221, 218, 207, 215, 214, 203, 216, 213, 203, 212, 212, 201, 213, 213, 202, 217, 216, 205, 217, 215, 202, 216, 216, 202, 213, 213, 200, 216, 216, 202, 217, 217, 203, 227, 227, 214, 224, 223, 212, 183, 183, 169, 17, 19, 9, 81, 83, 71, 83, 85, 72, 63, 65, 53, 74, 76, 66, 76, 78, 65, 63, 65, 53, 65, 67, 57, 53, 55, 46, 48, 47, 39, 25, 24, 15, 56, 58, 46, 54, 53, 44, 40, 39, 30, 43, 42, 36, 47, 46, 39, 54, 53, 44, 40, 39, 32, 40, 39, 30, 35, 36, 27, 45, 44, 35, 36, 36, 27, 41, 40, 32, 45, 44, 35, 27, 28, 19, 54, 53, 44, 31, 30, 21, 46, 45, 36, 33, 32, 23, 62, 63, 54, 52, 51, 42, 41, 40, 32, 28, 27, 19, 48, 47, 39, 45, 44, 35, 49, 48, 40, 50, 50, 41, 61, 60, 51, 52, 54, 44, 46, 45, 36, 39, 38, 29, 57, 53, 46, 46, 45, 34, 54, 53, 42, 50, 54, 41, 34, 36, 24, 56, 56, 45, 54, 53, 42, 61, 60, 49, 59, 58, 47, 61, 60, 49, 56, 56, 45, 63, 63, 52, 76, 76, 62, 55, 55, 43, 61, 60, 49, 66, 63, 53, 55, 54, 46, 56, 56, 45, 59, 58, 47, 59, 56, 46, 82, 79, 69, 73, 70, 60, 67, 64, 54, 54, 53, 42, 52, 49, 39, 73, 70, 60, 68, 65, 57, 65, 62, 52, 53, 50, 40, 65, 62, 52, 57, 54, 43, 63, 60, 49, 75, 73, 62, 53, 50, 42, 78, 75, 64, 73, 72, 61, 52, 49, 39, 62, 62, 50, 82, 79, 69, 49, 46, 35, 60, 57, 47, 53, 50, 40, 59, 58, 47, 83, 81, 68, 65, 62, 52, 57, 54, 43, 56, 53, 42, 91, 91, 78, 61, 60, 49, 49, 49, 38, 83, 81, 70, 72, 69, 59, 94, 93, 82, 77, 74, 63, 61, 59, 48, 35, 34, 26, 74, 73, 64, 75, 74, 63, 73, 72, 61, 66, 65, 56, 46, 45, 34, 54, 53, 42, 80, 79, 68, 67, 64, 54, 79, 76, 65, 85, 82, 71, 70, 70, 59, 73, 72, 61, 67, 64, 54, 79, 76, 65, 74, 71, 61, 64, 61, 50, 74, 71, 63, 51, 48, 40, 58, 55, 45, 78, 74, 66, 74, 73, 64, 74, 71, 63, 88, 85, 77, 80, 79, 70, 71, 71, 62, 63, 62, 54, 67, 66, 57, 57, 57, 48, 54, 53, 44, 82, 81, 72, 70, 69, 61, 59, 58, 49, 81, 80, 71, 74, 73, 64, 63, 62, 54, 76, 75, 66, 90, 89, 80, 81, 80, 71, 85, 85, 76, 69, 68, 60, 83, 82, 73, 87, 86, 77, 61, 58, 50, 89, 88, 79, 89, 88, 79, 59, 58, 49, 76, 77, 68, 86, 88, 78, 90, 91, 82, 75, 74, 63, 94, 93, 82, 90, 90, 78, 82, 81, 70, 85, 85, 74, 68, 67, 56, 81, 80, 69, 77, 77, 65, 77, 76, 68, 82, 81, 72, 113, 114, 105, 62, 61, 52, 71, 67, 60, 64, 64, 55, 36, 38, 28, 58, 60, 50, 48, 49, 40, 55, 56, 47, 47, 48, 39, 47, 51, 41, 51, 55, 44, 59, 63, 52, 58, 62, 51, 71, 75, 64, 65, 69, 56, 73, 77, 66, 86, 90, 77, 88, 92, 80, 100, 102, 90, 146, 150, 138, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 211, 195, 220, 218, 202, 215, 213, 200, 216, 216, 202, 212, 209, 198, 210, 208, 197, 212, 209, 198, 212, 212, 201, 214, 211, 201, 215, 212, 202, 217, 216, 205, 213, 213, 202, 210, 210, 196, 219, 219, 205, 222, 221, 208, 222, 221, 210, 219, 219, 207, 108, 107, 96, 66, 68, 58, 85, 85, 74, 83, 85, 72, 62, 64, 52, 59, 61, 49, 63, 64, 55, 60, 62, 52, 62, 63, 54, 58, 60, 50, 51, 53, 43, 51, 53, 43, 53, 52, 41, 34, 33, 25, 50, 50, 39, 50, 50, 39, 48, 48, 36, 41, 41, 29, 56, 55, 47, 53, 52, 43, 34, 35, 26, 38, 37, 28, 40, 39, 30, 42, 41, 33, 46, 45, 36, 38, 40, 30, 45, 47, 37, 54, 53, 44, 35, 34, 26, 35, 36, 27, 33, 34, 25, 61, 60, 51, 58, 55, 47, 42, 41, 33, 44, 41, 33, 50, 50, 41, 49, 48, 40, 39, 38, 29, 48, 47, 39, 52, 51, 42, 60, 62, 52, 42, 41, 33, 49, 48, 40, 55, 55, 43, 52, 51, 40, 58, 60, 48, 56, 58, 46, 55, 57, 45, 56, 58, 46, 44, 46, 34, 59, 58, 47, 44, 46, 34, 55, 55, 43, 53, 52, 41, 59, 58, 47, 60, 59, 48, 63, 63, 52, 61, 60, 49, 50, 50, 39, 59, 58, 47, 64, 64, 53, 60, 59, 48, 57, 53, 46, 82, 81, 70, 51, 48, 38, 57, 53, 46, 68, 66, 55, 57, 57, 46, 53, 52, 43, 71, 71, 60, 61, 60, 49, 70, 67, 56, 54, 53, 42, 53, 52, 41, 71, 71, 60, 67, 66, 55, 61, 60, 49, 43, 43, 32, 57, 54, 43, 85, 82, 71, 83, 81, 68, 78, 75, 64, 91, 88, 77, 80, 77, 67, 71, 68, 55, 56, 56, 43, 45, 44, 33, 82, 81, 70, 60, 59, 48, 36, 36, 25, 64, 64, 53, 64, 64, 53, 92, 89, 78, 70, 67, 56, 57, 57, 46, 66, 63, 53, 73, 70, 60, 85, 85, 74, 82, 81, 70, 49, 49, 38, 77, 77, 65, 59, 58, 47, 48, 48, 36, 91, 91, 80, 78, 78, 67, 88, 87, 76, 78, 78, 67, 83, 82, 73, 78, 75, 64, 50, 50, 39, 61, 59, 48, 63, 60, 49, 77, 74, 63, 71, 68, 57, 77, 74, 63, 68, 65, 57, 77, 74, 63, 79, 76, 68, 66, 63, 55, 74, 71, 63, 75, 73, 62, 80, 77, 67, 82, 81, 70, 67, 66, 55, 61, 60, 51, 82, 81, 70, 80, 79, 70, 82, 81, 70, 63, 62, 54, 69, 68, 60, 78, 78, 69, 80, 79, 70, 76, 77, 68, 64, 64, 55, 91, 90, 82, 75, 74, 65, 88, 87, 78, 88, 87, 78, 68, 67, 58, 63, 62, 54, 85, 85, 76, 83, 82, 73, 70, 69, 61, 76, 75, 66, 83, 84, 75, 77, 78, 69, 84, 85, 76, 65, 67, 57, 73, 75, 65, 77, 79, 67, 71, 73, 61, 77, 78, 69, 86, 88, 78, 76, 78, 65, 71, 73, 61, 73, 72, 63, 72, 74, 64, 64, 66, 56, 55, 56, 47, 45, 49, 39, 56, 57, 48, 42, 43, 34, 45, 47, 37, 58, 60, 50, 62, 63, 54, 65, 69, 58, 70, 71, 62, 81, 83, 73, 86, 88, 76, 94, 96, 86, 94, 96, 84, 95, 97, 85, 244, 246, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 213, 198, 215, 213, 198, 214, 211, 199, 207, 204, 192, 209, 207, 194, 213, 210, 199, 214, 211, 201, 210, 208, 197, 209, 207, 194, 210, 209, 198, 213, 213, 200, 211, 211, 199, 211, 211, 199, 213, 213, 202, 217, 216, 205, 215, 214, 201, 210, 209, 198, 23, 22, 13, 76, 75, 66, 79, 81, 71, 80, 82, 72, 67, 69, 57, 67, 69, 60, 58, 60, 50, 52, 54, 44, 47, 48, 39, 70, 71, 62, 58, 55, 47, 53, 52, 43, 41, 41, 29, 43, 40, 29, 40, 38, 27, 53, 52, 41, 38, 37, 26, 36, 36, 25, 48, 47, 39, 41, 40, 32, 35, 36, 27, 35, 34, 26, 30, 29, 20, 28, 30, 20, 36, 36, 27, 38, 37, 28, 39, 38, 29, 43, 45, 35, 36, 36, 27, 36, 38, 28, 53, 55, 46, 35, 34, 26, 34, 33, 25, 42, 38, 30, 40, 39, 30, 38, 37, 28, 42, 41, 33, 45, 44, 35, 45, 44, 35, 45, 44, 35, 68, 67, 58, 54, 53, 44, 54, 53, 42, 55, 55, 43, 50, 50, 39, 41, 41, 29, 63, 63, 52, 73, 75, 63, 40, 41, 29, 51, 53, 41, 56, 56, 45, 57, 59, 47, 51, 53, 41, 60, 59, 48, 48, 50, 38, 57, 57, 46, 52, 51, 40, 55, 55, 43, 61, 60, 49, 69, 69, 57, 68, 67, 56, 55, 54, 46, 59, 58, 47, 63, 60, 49, 66, 63, 53, 68, 67, 58, 49, 46, 35, 49, 48, 40, 71, 71, 60, 77, 77, 65, 55, 55, 43, 38, 37, 26, 64, 61, 50, 55, 55, 43, 71, 71, 60, 45, 44, 33, 74, 73, 62, 57, 57, 46, 56, 56, 45, 47, 46, 35, 78, 78, 67, 57, 57, 46, 47, 46, 35, 43, 43, 32, 61, 60, 49, 76, 76, 64, 60, 59, 48, 85, 85, 74, 78, 78, 67, 67, 66, 55, 54, 53, 42, 46, 45, 34, 75, 74, 63, 53, 50, 40, 82, 81, 70, 74, 71, 61, 92, 89, 78, 78, 75, 64, 51, 48, 38, 81, 80, 69, 46, 45, 34, 74, 73, 62, 89, 88, 77, 61, 60, 49, 77, 77, 65, 53, 50, 40, 81, 78, 68, 75, 74, 63, 53, 52, 41, 88, 85, 75, 65, 62, 52, 81, 78, 68, 53, 50, 40, 80, 77, 67, 77, 74, 63, 62, 61, 52, 78, 75, 64, 69, 68, 60, 82, 81, 72, 57, 53, 46, 79, 76, 65, 70, 66, 58, 74, 73, 64, 75, 74, 65, 77, 73, 65, 76, 76, 64, 65, 62, 54, 68, 67, 56, 77, 76, 68, 70, 69, 61, 76, 76, 64, 69, 68, 60, 80, 79, 70, 83, 82, 73, 70, 69, 61, 67, 66, 57, 87, 86, 77, 70, 69, 61, 76, 75, 66, 75, 74, 65, 75, 72, 64, 82, 81, 72, 76, 75, 66, 91, 92, 83, 62, 63, 54, 94, 96, 86, 56, 57, 48, 83, 84, 75, 78, 80, 68, 67, 69, 60, 54, 58, 48, 64, 66, 54, 58, 60, 50, 66, 68, 58, 45, 47, 37, 48, 52, 42, 55, 56, 47, 48, 49, 40, 38, 42, 32, 41, 42, 33, 57, 59, 49, 52, 56, 46, 62, 63, 54, 76, 77, 68, 66, 68, 56, 73, 75, 63, 106, 108, 96, 123, 125, 113, 241, 243, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 215, 202, 216, 214, 201, 213, 210, 197, 210, 208, 195, 210, 208, 195, 213, 210, 199, 213, 210, 199, 212, 209, 198, 212, 209, 198, 208, 207, 196, 206, 206, 193, 210, 209, 198, 210, 209, 198, 213, 210, 199, 212, 212, 201, 203, 202, 191, 183, 183, 171, 68, 67, 56, 87, 86, 75, 77, 78, 69, 70, 72, 60, 72, 74, 62, 67, 69, 57, 65, 67, 55, 47, 51, 41, 52, 54, 44, 50, 52, 42, 45, 47, 37, 38, 40, 30, 56, 58, 46, 29, 31, 19, 34, 34, 22, 56, 53, 42, 46, 45, 34, 31, 33, 21, 47, 46, 37, 40, 41, 32, 59, 58, 49, 31, 30, 21, 28, 30, 20, 49, 50, 41, 29, 30, 23, 54, 53, 46, 41, 40, 34, 41, 40, 32, 43, 43, 34, 48, 49, 40, 34, 33, 25, 57, 53, 46, 28, 28, 17, 46, 43, 35, 49, 45, 37, 53, 50, 42, 43, 43, 34, 59, 58, 49, 53, 52, 43, 57, 57, 46, 43, 43, 32, 47, 46, 35, 49, 49, 38, 47, 46, 35, 55, 55, 43, 59, 58, 47, 64, 64, 53, 65, 67, 55, 57, 59, 47, 40, 41, 29, 53, 55, 43, 44, 46, 34, 53, 55, 43, 50, 52, 40, 52, 54, 42, 53, 52, 41, 53, 52, 41, 62, 62, 50, 57, 57, 46, 66, 65, 54, 64, 64, 53, 60, 59, 48, 50, 50, 41, 55, 54, 46, 55, 55, 43, 61, 58, 50, 63, 63, 52, 63, 60, 49, 56, 56, 45, 57, 57, 46, 61, 60, 49, 60, 57, 47, 64, 64, 53, 59, 58, 47, 57, 57, 46, 49, 49, 38, 39, 38, 27, 57, 57, 46, 70, 70, 59, 57, 57, 46, 67, 66, 55, 62, 62, 50, 67, 64, 54, 56, 56, 45, 59, 58, 47, 59, 58, 47, 69, 71, 59, 56, 58, 46, 53, 52, 41, 73, 72, 61, 48, 48, 36, 70, 70, 59, 68, 67, 56, 64, 64, 53, 39, 36, 26, 74, 71, 61, 89, 86, 76, 81, 78, 68, 82, 81, 70, 45, 42, 32, 66, 65, 54, 80, 79, 68, 51, 48, 38, 68, 67, 56, 78, 78, 67, 64, 64, 53, 81, 78, 68, 77, 74, 63, 61, 59, 48, 50, 50, 39, 74, 71, 61, 75, 73, 62, 75, 73, 62, 86, 83, 72, 71, 68, 57, 92, 88, 80, 73, 70, 62, 69, 68, 60, 75, 74, 63, 77, 76, 68, 59, 56, 46, 68, 65, 57, 76, 75, 66, 68, 67, 56, 73, 72, 63, 85, 85, 74, 70, 69, 61, 66, 65, 54, 73, 72, 61, 76, 76, 64, 76, 75, 66, 77, 77, 65, 77, 76, 68, 84, 83, 75, 84, 85, 76, 73, 75, 65, 95, 94, 85, 81, 80, 71, 67, 66, 57, 77, 76, 70, 74, 73, 64, 74, 72, 66, 75, 74, 67, 67, 66, 57, 63, 64, 55, 72, 74, 64, 63, 64, 55, 69, 70, 61, 64, 66, 56, 55, 56, 47, 55, 57, 45, 51, 53, 41, 48, 49, 40, 38, 40, 28, 46, 50, 38, 49, 50, 41, 52, 56, 46, 53, 57, 45, 87, 89, 77, 61, 65, 53, 71, 75, 62, 90, 92, 80, 105, 107, 95, 156, 158, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 208, 195, 210, 208, 195, 212, 209, 196, 213, 210, 197, 209, 207, 194, 209, 206, 196, 212, 212, 201, 213, 210, 199, 207, 204, 194, 212, 209, 196, 208, 206, 193, 207, 204, 194, 206, 203, 192, 208, 206, 193, 205, 205, 194, 206, 206, 195, 110, 109, 98, 62, 61, 52, 80, 79, 70, 78, 78, 69, 68, 67, 58, 57, 57, 48, 63, 64, 55, 57, 59, 49, 58, 60, 50, 60, 62, 52, 45, 47, 37, 45, 44, 35, 41, 40, 32, 50, 50, 41, 55, 54, 46, 46, 55, 43, 45, 42, 32, 35, 35, 24, 42, 42, 31, 35, 35, 24, 49, 48, 40, 38, 40, 30, 43, 43, 34, 42, 41, 33, 43, 43, 34, 53, 52, 43, 52, 51, 42, 34, 36, 24, 50, 50, 41, 49, 48, 40, 35, 37, 25, 38, 40, 28, 41, 43, 31, 35, 35, 24, 40, 39, 30, 37, 34, 24, 24, 21, 13, 42, 41, 33, 57, 57, 46, 43, 43, 32, 60, 59, 48, 52, 51, 40, 43, 43, 32, 52, 51, 40, 53, 52, 41, 61, 60, 49, 59, 58, 47, 56, 56, 45, 44, 46, 34, 55, 57, 45, 48, 50, 38, 50, 52, 40, 69, 71, 59, 59, 61, 49, 56, 58, 46, 55, 55, 43, 57, 57, 46, 56, 56, 45, 59, 58, 47, 63, 62, 54, 61, 60, 51, 57, 57, 48, 68, 67, 58, 75, 72, 64, 62, 61, 52, 60, 57, 47, 54, 51, 43, 63, 60, 49, 50, 50, 39, 66, 65, 54, 53, 52, 41, 63, 63, 52, 54, 53, 42, 45, 44, 33, 50, 50, 39, 62, 62, 50, 75, 74, 63, 57, 57, 46, 40, 39, 28, 47, 46, 35, 55, 55, 43, 53, 52, 41, 68, 67, 56, 58, 55, 45, 61, 60, 49, 65, 62, 52, 59, 58, 47, 66, 65, 54, 47, 46, 35, 57, 57, 46, 87, 86, 77, 54, 53, 42, 68, 67, 56, 76, 76, 64, 54, 53, 42, 64, 64, 53, 74, 71, 61, 95, 92, 82, 84, 84, 72, 71, 71, 60, 70, 70, 59, 61, 60, 49, 63, 63, 52, 105, 105, 94, 63, 63, 52, 59, 58, 47, 85, 82, 71, 49, 49, 38, 96, 95, 84, 68, 67, 56, 73, 70, 60, 87, 84, 74, 58, 55, 45, 72, 69, 59, 81, 78, 68, 83, 80, 72, 73, 70, 62, 85, 82, 71, 66, 63, 55, 71, 71, 60, 80, 79, 70, 70, 70, 59, 77, 77, 65, 83, 82, 73, 77, 77, 65, 66, 65, 54, 87, 86, 75, 63, 63, 52, 75, 74, 63, 75, 74, 63, 60, 59, 50, 57, 57, 48, 55, 54, 46, 74, 73, 62, 70, 69, 61, 79, 81, 71, 79, 81, 71, 73, 72, 63, 62, 63, 54, 72, 74, 64, 59, 57, 51, 84, 83, 77, 73, 71, 65, 67, 65, 59, 63, 62, 54, 65, 66, 59, 69, 70, 61, 57, 59, 49, 64, 66, 56, 43, 45, 35, 42, 43, 36, 47, 48, 41, 49, 50, 41, 58, 60, 50, 60, 62, 54, 58, 60, 50, 72, 74, 64, 72, 74, 62, 99, 101, 89, 97, 99, 84, 127, 129, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 207, 192, 210, 208, 195, 210, 208, 195, 208, 206, 193, 206, 203, 190, 206, 203, 192, 208, 205, 195, 204, 204, 192, 207, 204, 194, 207, 204, 194, 206, 203, 190, 201, 198, 188, 201, 198, 188, 206, 203, 192, 213, 210, 199, 198, 198, 187, 18, 17, 8, 88, 87, 76, 90, 89, 80, 80, 79, 70, 64, 64, 55, 78, 78, 69, 52, 54, 44, 52, 54, 44, 52, 56, 46, 47, 48, 39, 46, 50, 40, 50, 50, 41, 41, 40, 32, 35, 34, 26, 51, 48, 40, 45, 44, 35, 33, 32, 23, 33, 32, 23, 56, 53, 42, 36, 33, 22, 48, 47, 39, 24, 23, 12, 52, 51, 42, 41, 41, 29, 49, 49, 38, 45, 44, 33, 42, 42, 31, 42, 42, 31, 47, 47, 33, 61, 61, 47, 35, 35, 24, 36, 36, 25, 43, 40, 29, 45, 47, 37, 45, 44, 35, 50, 47, 36, 38, 37, 28, 34, 33, 25, 52, 49, 41, 50, 47, 36, 49, 49, 38, 52, 51, 40, 53, 52, 41, 38, 40, 28, 60, 59, 48, 56, 56, 45, 59, 58, 47, 48, 48, 36, 60, 59, 48, 64, 64, 53, 55, 57, 45, 36, 38, 26, 62, 64, 52, 60, 59, 48, 51, 53, 41, 55, 55, 41, 39, 38, 27, 59, 58, 47, 53, 52, 41, 67, 66, 55, 52, 51, 42, 52, 51, 42, 60, 59, 50, 59, 56, 48, 48, 47, 39, 62, 62, 50, 68, 66, 55, 56, 56, 45, 85, 82, 71, 36, 36, 25, 59, 58, 47, 71, 71, 60, 67, 66, 55, 56, 56, 45, 49, 49, 38, 47, 46, 35, 60, 59, 48, 59, 58, 47, 59, 58, 47, 66, 65, 54, 66, 65, 54, 52, 51, 40, 63, 63, 52, 53, 52, 41, 64, 61, 50, 62, 62, 50, 70, 70, 59, 57, 57, 46, 65, 67, 55, 53, 52, 41, 55, 55, 43, 70, 70, 59, 78, 78, 67, 55, 55, 43, 41, 41, 29, 59, 58, 47, 61, 60, 49, 85, 82, 71, 50, 47, 36, 59, 58, 47, 64, 61, 50, 80, 77, 67, 77, 77, 65, 54, 53, 42, 96, 93, 83, 67, 66, 55, 68, 66, 55, 73, 70, 60, 62, 62, 50, 62, 62, 50, 82, 81, 70, 87, 84, 74, 79, 76, 68, 48, 48, 36, 71, 68, 57, 61, 60, 49, 73, 72, 61, 80, 79, 68, 73, 72, 61, 62, 62, 50, 69, 69, 57, 61, 60, 51, 75, 74, 63, 67, 66, 55, 61, 60, 49, 67, 66, 55, 84, 84, 72, 71, 71, 62, 68, 67, 56, 77, 77, 65, 73, 72, 63, 80, 79, 70, 82, 81, 70, 66, 65, 56, 77, 76, 68, 52, 54, 44, 67, 69, 60, 72, 73, 66, 65, 66, 59, 63, 64, 57, 67, 69, 62, 60, 58, 52, 61, 60, 51, 54, 53, 46, 61, 60, 51, 58, 60, 50, 45, 47, 37, 52, 54, 44, 51, 53, 43, 55, 56, 47, 62, 63, 54, 52, 54, 44, 76, 78, 65, 92, 94, 84, 114, 116, 104, 104, 106, 94, 135, 137, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 205, 190, 207, 205, 190, 208, 206, 193, 209, 207, 194, 203, 203, 189, 200, 197, 185, 203, 201, 190, 203, 202, 191, 206, 203, 192, 203, 201, 190, 202, 199, 189, 199, 196, 185, 199, 196, 185, 207, 204, 194, 195, 192, 182, 167, 164, 156, 19, 18, 9, 82, 81, 72, 68, 67, 58, 74, 73, 64, 69, 68, 60, 57, 59, 49, 62, 63, 54, 47, 48, 39, 45, 47, 37, 47, 46, 37, 48, 49, 40, 45, 47, 37, 41, 40, 32, 49, 45, 37, 38, 35, 27, 57, 53, 46, 43, 40, 32, 36, 36, 27, 51, 48, 38, 40, 38, 27, 39, 36, 26, 31, 30, 19, 42, 42, 31, 28, 25, 14, 34, 34, 22, 57, 57, 44, 32, 32, 18, 42, 42, 29, 28, 28, 15, 55, 55, 41, 30, 33, 18, 42, 44, 30, 47, 52, 39, 30, 34, 21, 30, 27, 17, 46, 43, 33, 24, 21, 11, 54, 53, 42, 52, 49, 39, 60, 57, 47, 43, 40, 29, 54, 53, 42, 48, 48, 36, 57, 57, 46, 53, 52, 41, 50, 50, 39, 55, 55, 43, 52, 54, 42, 47, 46, 35, 55, 57, 45, 52, 54, 42, 51, 53, 41, 55, 55, 43, 58, 55, 45, 57, 57, 46, 56, 56, 45, 56, 56, 45, 42, 44, 32, 49, 49, 38, 43, 43, 32, 55, 55, 43, 52, 51, 42, 56, 55, 47, 53, 52, 43, 70, 66, 58, 46, 45, 36, 56, 55, 47, 60, 59, 48, 61, 58, 50, 50, 50, 39, 59, 58, 47, 56, 56, 45, 62, 62, 50, 61, 60, 49, 61, 60, 49, 56, 56, 45, 45, 44, 33, 61, 60, 49, 46, 45, 34, 61, 60, 49, 56, 56, 45, 43, 43, 34, 63, 63, 52, 52, 51, 40, 57, 57, 46, 64, 64, 53, 47, 46, 35, 50, 50, 39, 78, 80, 68, 62, 62, 50, 56, 56, 45, 59, 61, 49, 54, 53, 42, 57, 57, 46, 88, 87, 76, 53, 55, 43, 71, 71, 60, 80, 79, 68, 66, 65, 54, 57, 57, 46, 52, 51, 40, 70, 70, 59, 77, 77, 65, 76, 76, 64, 81, 78, 68, 63, 60, 49, 64, 61, 50, 77, 74, 61, 62, 62, 50, 66, 63, 53, 63, 63, 52, 59, 58, 47, 48, 47, 39, 48, 48, 36, 69, 69, 57, 80, 79, 70, 88, 87, 76, 56, 56, 45, 55, 55, 43, 63, 63, 52, 89, 88, 77, 63, 63, 52, 65, 67, 55, 74, 76, 64, 50, 52, 40, 60, 59, 48, 87, 86, 77, 71, 67, 60, 81, 80, 71, 64, 64, 53, 85, 81, 73, 94, 93, 82, 59, 58, 49, 73, 70, 62, 87, 84, 76, 83, 84, 75, 58, 60, 50, 67, 65, 59, 52, 54, 46, 59, 57, 51, 52, 54, 46, 44, 46, 36, 50, 51, 44, 47, 48, 39, 50, 50, 41, 58, 61, 46, 66, 69, 54, 66, 69, 54, 91, 93, 79, 91, 93, 79, 98, 100, 86, 108, 111, 96, 214, 216, 202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 204, 188, 202, 200, 185, 202, 200, 187, 200, 197, 185, 200, 197, 185, 198, 195, 182, 203, 201, 190, 202, 200, 187, 201, 199, 186, 200, 197, 187, 200, 197, 187, 200, 197, 187, 193, 190, 180, 187, 184, 174, 190, 187, 176, 124, 121, 115, 67, 64, 56, 80, 79, 70, 70, 69, 61, 71, 73, 63, 76, 77, 68, 49, 50, 41, 52, 56, 46, 48, 49, 40, 42, 45, 35, 52, 54, 44, 43, 45, 35, 46, 45, 36, 36, 36, 27, 35, 31, 23, 33, 30, 22, 31, 30, 21, 36, 36, 27, 36, 36, 27, 43, 43, 34, 40, 39, 28, 46, 45, 34, 42, 42, 31, 39, 38, 27, 27, 27, 15, 40, 39, 28, 36, 36, 25, 58, 55, 43, 49, 49, 36, 43, 40, 27, 35, 35, 22, 40, 40, 26, 33, 33, 19, 42, 44, 32, 58, 61, 46, 35, 35, 24, 54, 53, 42, 49, 46, 35, 32, 31, 20, 49, 46, 35, 58, 55, 45, 51, 48, 38, 59, 56, 46, 63, 60, 49, 54, 53, 42, 61, 60, 49, 41, 40, 32, 62, 62, 50, 49, 49, 38, 59, 58, 47, 36, 36, 25, 55, 55, 41, 59, 58, 47, 57, 59, 47, 63, 63, 50, 59, 58, 47, 27, 29, 15, 52, 52, 38, 50, 50, 39, 59, 58, 45, 56, 53, 42, 55, 55, 43, 57, 57, 48, 57, 57, 48, 53, 52, 43, 66, 63, 55, 52, 51, 42, 42, 41, 33, 60, 59, 48, 62, 62, 50, 46, 45, 34, 59, 58, 47, 61, 61, 47, 47, 46, 35, 61, 60, 49, 56, 56, 45, 52, 51, 40, 49, 49, 38, 56, 56, 45, 57, 57, 46, 62, 62, 50, 57, 57, 46, 59, 58, 47, 60, 59, 48, 54, 53, 42, 49, 49, 38, 50, 50, 41, 59, 61, 49, 57, 59, 47, 59, 61, 49, 66, 65, 54, 54, 53, 42, 68, 67, 56, 53, 52, 41, 66, 65, 54, 85, 85, 74, 52, 51, 40, 46, 46, 32, 53, 52, 41, 48, 48, 36, 60, 60, 46, 69, 69, 57, 54, 53, 42, 81, 81, 67, 81, 80, 69, 42, 42, 31, 46, 45, 34, 69, 69, 57, 50, 50, 39, 83, 83, 71, 62, 62, 50, 69, 69, 57, 59, 58, 47, 59, 58, 47, 95, 94, 83, 43, 43, 32, 62, 62, 50, 67, 66, 55, 91, 90, 82, 82, 81, 70, 91, 91, 80, 56, 58, 46, 70, 72, 60, 81, 83, 71, 55, 57, 45, 71, 73, 61, 81, 80, 71, 75, 74, 65, 91, 90, 82, 80, 79, 70, 71, 71, 62, 63, 62, 54, 60, 59, 50, 66, 65, 56, 55, 54, 46, 56, 52, 44, 48, 47, 41, 55, 56, 49, 59, 57, 51, 52, 54, 46, 37, 38, 31, 48, 49, 40, 37, 39, 29, 63, 64, 55, 66, 68, 56, 114, 114, 103, 84, 87, 70, 104, 106, 92, 123, 126, 111, 192, 195, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 203, 187, 200, 197, 185, 201, 199, 186, 196, 194, 181, 198, 195, 182, 196, 194, 181, 199, 196, 185, 198, 195, 182, 196, 194, 181, 198, 195, 182, 191, 188, 175, 191, 188, 175, 187, 185, 172, 187, 184, 174, 187, 184, 174, 22, 18, 15, 73, 72, 63, 57, 57, 48, 70, 69, 61, 65, 67, 57, 56, 57, 48, 47, 51, 41, 43, 50, 39, 40, 44, 34, 56, 57, 48, 43, 47, 36, 50, 52, 42, 44, 46, 36, 45, 44, 35, 18, 17, 8, 44, 41, 33, 39, 36, 28, 25, 22, 14, 36, 36, 25, 39, 36, 26, 48, 48, 36, 25, 24, 13, 52, 51, 40, 49, 49, 38, 35, 35, 24, 48, 48, 36, 42, 42, 29, 40, 40, 26, 43, 43, 30, 42, 44, 32, 35, 37, 25, 37, 40, 25, 36, 38, 24, 38, 42, 29, 31, 33, 23, 38, 37, 26, 47, 46, 35, 38, 37, 26, 41, 41, 29, 47, 45, 34, 47, 45, 34, 52, 50, 37, 52, 49, 39, 46, 43, 33, 51, 48, 38, 75, 73, 62, 53, 52, 41, 56, 56, 45, 55, 55, 43, 51, 48, 38, 65, 62, 52, 47, 46, 35, 68, 67, 56, 54, 53, 42, 57, 59, 45, 61, 60, 49, 48, 48, 34, 42, 42, 31, 49, 49, 38, 62, 62, 48, 56, 56, 45, 56, 56, 45, 58, 55, 47, 56, 52, 44, 53, 52, 43, 57, 57, 48, 47, 46, 37, 53, 52, 43, 44, 46, 34, 54, 53, 42, 42, 42, 31, 53, 52, 41, 64, 64, 53, 47, 46, 35, 49, 49, 38, 47, 46, 35, 59, 58, 47, 61, 60, 49, 47, 46, 35, 41, 41, 29, 62, 62, 50, 57, 57, 46, 52, 51, 40, 71, 71, 60, 63, 63, 52, 56, 56, 45, 73, 72, 61, 66, 65, 54, 61, 60, 49, 62, 62, 50, 57, 57, 46, 59, 58, 47, 64, 64, 53, 57, 57, 46, 53, 52, 41, 54, 53, 42, 64, 64, 53, 53, 52, 41, 55, 55, 43, 82, 81, 70, 67, 66, 55, 71, 71, 60, 88, 87, 76, 66, 65, 54, 70, 67, 56, 59, 58, 47, 47, 46, 35, 78, 78, 65, 67, 67, 53, 57, 57, 46, 50, 50, 37, 55, 57, 45, 96, 95, 84, 80, 79, 68, 48, 50, 38, 67, 66, 55, 50, 50, 39, 55, 55, 43, 85, 85, 74, 62, 63, 54, 97, 96, 85, 74, 76, 64, 57, 59, 47, 57, 59, 49, 45, 47, 35, 53, 55, 46, 54, 58, 48, 62, 63, 54, 60, 62, 52, 61, 65, 55, 50, 52, 42, 67, 66, 57, 52, 54, 44, 51, 53, 43, 59, 57, 51, 50, 46, 41, 52, 51, 42, 55, 54, 48, 55, 54, 48, 71, 71, 62, 71, 71, 62, 94, 93, 80, 110, 109, 98, 117, 117, 103, 132, 132, 118, 251, 254, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 202, 187, 201, 199, 184, 193, 191, 178, 198, 195, 182, 198, 195, 182, 196, 194, 181, 196, 194, 183, 201, 198, 188, 194, 192, 179, 191, 188, 175, 187, 185, 172, 185, 182, 169, 188, 186, 173, 182, 180, 169, 158, 157, 146, 32, 27, 31, 85, 85, 76, 60, 62, 50, 57, 57, 48, 51, 53, 43, 56, 55, 47, 53, 55, 46, 45, 47, 37, 40, 41, 32, 47, 48, 39, 45, 49, 39, 33, 34, 25, 38, 37, 28, 47, 46, 37, 44, 46, 36, 31, 30, 21, 40, 39, 30, 45, 44, 35, 35, 35, 24, 37, 34, 26, 33, 32, 23, 48, 47, 39, 27, 26, 18, 30, 32, 22, 44, 46, 34, 43, 45, 33, 38, 38, 24, 43, 43, 30, 41, 41, 27, 52, 55, 40, 56, 53, 42, 26, 26, 14, 39, 38, 27, 36, 38, 26, 40, 39, 28, 41, 41, 29, 42, 44, 32, 50, 52, 40, 50, 50, 39, 60, 59, 48, 35, 35, 22, 53, 50, 40, 52, 49, 39, 56, 53, 42, 66, 63, 53, 64, 61, 50, 47, 45, 34, 65, 62, 52, 42, 42, 31, 52, 49, 41, 46, 43, 33, 54, 53, 42, 54, 53, 42, 52, 54, 42, 56, 56, 45, 69, 69, 57, 57, 57, 46, 63, 63, 52, 62, 62, 50, 50, 50, 39, 53, 52, 41, 53, 52, 41, 38, 37, 26, 42, 42, 31, 48, 48, 36, 62, 61, 52, 54, 53, 44, 57, 57, 48, 59, 58, 49, 46, 45, 36, 52, 51, 40, 54, 53, 44, 53, 52, 43, 55, 55, 43, 63, 63, 52, 54, 53, 42, 59, 58, 47, 47, 46, 35, 61, 60, 49, 53, 55, 43, 71, 71, 60, 52, 51, 40, 53, 52, 41, 47, 46, 35, 62, 63, 54, 61, 60, 49, 50, 52, 42, 64, 64, 55, 59, 61, 49, 59, 58, 47, 56, 56, 45, 44, 46, 34, 70, 70, 59, 49, 51, 37, 73, 75, 63, 64, 64, 53, 69, 69, 57, 73, 72, 61, 63, 63, 52, 71, 71, 60, 46, 45, 34, 52, 54, 42, 55, 55, 43, 64, 64, 53, 62, 62, 50, 95, 94, 83, 62, 62, 50, 52, 51, 40, 82, 81, 70, 55, 55, 43, 73, 72, 61, 55, 55, 43, 71, 73, 61, 67, 66, 55, 137, 136, 125, 89, 88, 79, 78, 80, 70, 71, 73, 63, 74, 73, 64, 57, 57, 48, 60, 62, 52, 69, 70, 61, 65, 67, 57, 59, 61, 51, 52, 54, 44, 52, 54, 44, 53, 55, 46, 59, 61, 51, 55, 56, 47, 48, 49, 40, 49, 48, 40, 47, 46, 37, 41, 40, 34, 50, 51, 44, 54, 53, 44, 65, 62, 54, 70, 70, 59, 95, 94, 83, 102, 101, 90, 132, 132, 118, 125, 127, 114, 255, 255, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 196, 178, 200, 198, 183, 199, 195, 180, 196, 191, 179, 191, 188, 175, 193, 191, 178, 192, 189, 177, 185, 182, 169, 193, 191, 178, 185, 180, 168, 184, 179, 167, 185, 182, 169, 178, 175, 162, 167, 164, 154, 117, 114, 104, 67, 62, 64, 80, 79, 70, 61, 60, 49, 47, 46, 35, 53, 52, 43, 71, 73, 63, 52, 54, 44, 31, 35, 22, 22, 24, 12, 43, 43, 34, 36, 40, 29, 57, 57, 46, 41, 42, 33, 39, 38, 29, 38, 40, 30, 25, 24, 15, 43, 43, 34, 39, 38, 27, 31, 30, 19, 28, 28, 17, 33, 32, 21, 31, 30, 19, 41, 41, 29, 38, 37, 26, 37, 39, 27, 38, 37, 26, 40, 39, 28, 40, 40, 26, 57, 57, 44, 44, 46, 34, 39, 38, 27, 48, 48, 36, 42, 42, 31, 51, 53, 41, 30, 32, 20, 34, 36, 24, 37, 39, 27, 55, 55, 43, 25, 32, 18, 49, 49, 38, 47, 46, 35, 51, 48, 36, 53, 50, 40, 59, 57, 44, 64, 64, 51, 49, 49, 38, 58, 55, 43, 60, 59, 48, 53, 52, 41, 57, 57, 48, 41, 41, 29, 43, 43, 32, 49, 49, 38, 44, 47, 32, 51, 54, 39, 56, 56, 45, 70, 72, 58, 59, 58, 47, 53, 55, 43, 50, 50, 39, 52, 51, 40, 60, 59, 48, 56, 53, 42, 54, 53, 42, 53, 52, 43, 48, 47, 39, 54, 53, 44, 53, 52, 43, 55, 54, 46, 61, 60, 49, 56, 55, 47, 52, 51, 42, 45, 47, 37, 59, 58, 47, 54, 53, 42, 55, 57, 45, 62, 62, 50, 42, 42, 31, 59, 58, 47, 45, 44, 33, 55, 55, 43, 52, 51, 40, 48, 48, 36, 54, 53, 42, 29, 31, 19, 69, 68, 60, 57, 59, 47, 55, 56, 47, 52, 54, 42, 53, 52, 41, 62, 62, 50, 68, 67, 56, 48, 48, 36, 66, 68, 56, 61, 60, 49, 62, 61, 52, 40, 39, 28, 69, 69, 57, 62, 62, 50, 71, 71, 62, 66, 65, 54, 49, 50, 41, 46, 45, 36, 71, 71, 60, 81, 80, 69, 50, 50, 39, 41, 41, 29, 50, 50, 37, 75, 74, 63, 52, 51, 40, 66, 65, 52, 63, 65, 53, 83, 83, 71, 66, 68, 56, 72, 74, 64, 55, 55, 43, 48, 47, 39, 100, 102, 90, 64, 66, 54, 65, 67, 57, 57, 59, 49, 52, 54, 44, 52, 54, 44, 56, 57, 48, 53, 55, 46, 47, 48, 39, 41, 42, 33, 52, 51, 42, 45, 47, 37, 45, 47, 37, 52, 54, 44, 62, 61, 52, 90, 90, 78, 94, 93, 80, 99, 99, 86, 145, 145, 131, 126, 126, 112, 248, 248, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 189, 171, 193, 189, 175, 192, 188, 173, 191, 187, 172, 190, 185, 173, 187, 185, 172, 188, 186, 173, 182, 180, 167, 183, 178, 166, 182, 177, 165, 179, 174, 162, 176, 171, 159, 171, 166, 154, 165, 160, 149, 52, 49, 39, 83, 80, 72, 74, 73, 64, 64, 64, 53, 33, 32, 23, 60, 62, 52, 57, 59, 49, 53, 55, 43, 40, 45, 32, 24, 26, 14, 39, 38, 27, 36, 40, 27, 30, 27, 17, 42, 41, 33, 27, 27, 15, 24, 26, 14, 52, 51, 42, 40, 39, 30, 42, 39, 28, 39, 36, 26, 37, 34, 24, 30, 29, 18, 49, 49, 38, 38, 37, 26, 39, 36, 26, 35, 35, 24, 45, 44, 33, 29, 26, 13, 34, 34, 20, 45, 44, 33, 47, 49, 34, 39, 38, 27, 36, 38, 26, 38, 40, 28, 31, 33, 21, 36, 36, 25, 23, 27, 14, 37, 39, 27, 37, 39, 27, 62, 64, 52, 64, 64, 53, 48, 48, 36, 45, 44, 33, 53, 53, 39, 53, 53, 39, 50, 50, 39, 33, 32, 21, 43, 43, 30, 61, 60, 49, 41, 41, 29, 57, 57, 48, 57, 57, 48, 56, 56, 45, 53, 52, 41, 48, 49, 40, 45, 47, 35, 54, 53, 42, 54, 54, 40, 57, 57, 46, 48, 48, 36, 52, 51, 40, 46, 43, 33, 54, 52, 41, 61, 58, 50, 47, 45, 34, 52, 49, 39, 56, 52, 44, 50, 50, 41, 70, 66, 58, 55, 54, 46, 57, 57, 48, 43, 43, 34, 48, 47, 39, 48, 48, 36, 52, 51, 40, 57, 59, 47, 47, 48, 36, 68, 67, 56, 50, 52, 40, 53, 52, 41, 44, 46, 34, 73, 72, 61, 55, 55, 43, 52, 51, 40, 54, 53, 44, 50, 52, 42, 56, 55, 47, 50, 52, 42, 50, 50, 41, 41, 43, 31, 59, 58, 47, 57, 57, 48, 60, 59, 50, 66, 65, 56, 62, 64, 52, 56, 58, 46, 57, 59, 49, 50, 52, 40, 57, 59, 49, 69, 70, 61, 69, 71, 59, 48, 50, 38, 65, 67, 57, 66, 68, 58, 67, 66, 57, 57, 57, 48, 66, 65, 54, 71, 71, 60, 75, 74, 65, 67, 66, 55, 57, 59, 47, 66, 68, 56, 56, 56, 45, 69, 71, 59, 42, 44, 32, 65, 67, 57, 74, 76, 64, 69, 71, 59, 43, 45, 33, 47, 48, 39, 36, 40, 29, 51, 53, 43, 43, 45, 35, 64, 64, 55, 42, 41, 33, 43, 43, 32, 60, 60, 46, 75, 75, 61, 85, 85, 72, 95, 95, 81, 108, 108, 92, 119, 119, 103, 127, 128, 112, 223, 223, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 189, 171, 192, 188, 171, 198, 192, 178, 189, 182, 171, 183, 178, 166, 184, 179, 167, 181, 176, 164, 175, 170, 158, 167, 162, 150, 172, 167, 156, 174, 167, 156, 163, 158, 146, 160, 155, 143, 134, 129, 119, 9, 6, 0, 80, 75, 64, 62, 62, 50, 49, 49, 38, 52, 51, 40, 41, 41, 29, 66, 65, 54, 52, 51, 40, 35, 39, 26, 44, 46, 34, 49, 49, 38, 18, 17, 8, 40, 37, 29, 48, 49, 40, 45, 47, 35, 42, 44, 32, 48, 47, 41, 31, 33, 21, 30, 32, 20, 16, 18, 6, 22, 24, 12, 38, 40, 28, 38, 37, 26, 54, 53, 42, 32, 31, 20, 46, 45, 34, 36, 36, 23, 35, 37, 23, 30, 29, 16, 33, 35, 20, 36, 38, 24, 47, 48, 36, 47, 46, 35, 42, 42, 31, 52, 51, 40, 36, 33, 22, 38, 37, 26, 30, 29, 18, 57, 57, 46, 53, 52, 43, 55, 55, 43, 47, 46, 35, 51, 48, 38, 46, 43, 33, 46, 44, 31, 51, 48, 38, 49, 46, 35, 43, 43, 32, 45, 44, 33, 47, 46, 35, 54, 53, 42, 46, 45, 34, 52, 51, 40, 52, 51, 40, 43, 43, 32, 51, 53, 41, 48, 48, 36, 55, 55, 41, 57, 57, 46, 52, 51, 40, 50, 50, 39, 59, 56, 46, 59, 56, 46, 54, 53, 42, 57, 54, 43, 54, 51, 43, 48, 47, 39, 71, 71, 62, 53, 52, 43, 52, 51, 42, 51, 53, 43, 59, 61, 51, 66, 65, 56, 48, 50, 38, 53, 52, 41, 50, 52, 40, 56, 58, 46, 55, 55, 43, 34, 36, 24, 46, 45, 34, 56, 56, 45, 53, 52, 41, 56, 56, 45, 62, 61, 52, 43, 43, 34, 53, 52, 43, 60, 59, 50, 62, 61, 52, 60, 62, 52, 34, 35, 26, 64, 64, 55, 54, 53, 44, 50, 50, 39, 69, 69, 57, 72, 74, 62, 62, 63, 54, 55, 56, 47, 59, 61, 51, 66, 68, 58, 58, 60, 50, 53, 55, 43, 71, 73, 61, 60, 62, 52, 58, 60, 50, 71, 73, 63, 61, 60, 51, 83, 83, 71, 78, 78, 69, 59, 58, 47, 63, 63, 52, 52, 54, 44, 48, 50, 38, 59, 61, 49, 48, 50, 38, 51, 55, 42, 48, 49, 40, 47, 48, 36, 41, 42, 33, 53, 55, 43, 45, 47, 37, 45, 47, 37, 48, 49, 40, 57, 57, 48, 54, 53, 42, 80, 79, 66, 90, 90, 76, 87, 87, 73, 127, 127, 114, 119, 119, 103, 182, 182, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 185, 168, 179, 175, 159, 184, 178, 164, 181, 174, 160, 177, 171, 157, 183, 176, 165, 172, 164, 153, 171, 166, 154, 163, 158, 146, 167, 162, 150, 166, 159, 147, 154, 147, 136, 151, 146, 134, 78, 73, 63, 40, 34, 27, 81, 78, 68, 65, 60, 50, 55, 55, 43, 40, 41, 29, 46, 50, 38, 42, 44, 30, 40, 45, 32, 26, 31, 18, 52, 54, 42, 31, 30, 19, 43, 43, 34, 39, 36, 28, 47, 46, 37, 36, 36, 25, 16, 18, 6, 36, 38, 28, 36, 38, 28, 26, 30, 20, 28, 30, 18, 45, 42, 32, 35, 35, 24, 26, 26, 14, 46, 43, 33, 47, 45, 34, 50, 50, 39, 27, 27, 15, 43, 45, 33, 36, 38, 26, 34, 36, 24, 45, 47, 37, 37, 39, 29, 39, 38, 27, 57, 59, 47, 38, 37, 28, 33, 32, 21, 41, 41, 29, 47, 46, 35, 49, 45, 37, 50, 47, 36, 35, 35, 24, 56, 53, 42, 40, 38, 27, 52, 50, 37, 60, 57, 47, 47, 47, 33, 50, 47, 36, 42, 39, 28, 47, 46, 35, 66, 65, 54, 41, 43, 31, 59, 61, 49, 44, 46, 34, 52, 54, 44, 53, 55, 43, 49, 51, 39, 50, 52, 40, 50, 50, 41, 54, 51, 43, 50, 52, 40, 56, 55, 47, 54, 51, 43, 56, 52, 44, 46, 45, 36, 52, 49, 39, 58, 55, 47, 55, 54, 48, 61, 60, 51, 62, 61, 52, 66, 65, 56, 49, 48, 40, 42, 43, 34, 53, 55, 46, 52, 54, 44, 59, 58, 47, 47, 48, 36, 49, 51, 39, 55, 57, 45, 51, 53, 41, 59, 58, 47, 55, 54, 46, 59, 56, 46, 56, 53, 42, 56, 55, 47, 59, 58, 49, 53, 52, 45, 57, 57, 48, 57, 57, 48, 62, 61, 52, 53, 55, 46, 67, 66, 57, 69, 68, 60, 45, 44, 33, 50, 50, 41, 55, 57, 45, 76, 77, 68, 67, 69, 60, 37, 39, 29, 52, 54, 44, 49, 50, 41, 62, 63, 54, 51, 53, 43, 48, 49, 40, 59, 58, 49, 63, 64, 55, 60, 59, 50, 48, 48, 36, 46, 45, 34, 42, 44, 32, 55, 57, 45, 42, 44, 32, 40, 41, 29, 44, 46, 36, 43, 45, 33, 40, 41, 32, 40, 41, 32, 40, 41, 29, 41, 43, 31, 35, 37, 25, 55, 55, 43, 102, 101, 90, 102, 101, 90, 110, 109, 98, 113, 113, 100, 132, 132, 118, 203, 203, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 166, 149, 164, 160, 143, 169, 163, 147, 174, 167, 154, 162, 156, 140, 166, 159, 145, 158, 150, 139, 159, 152, 140, 156, 151, 139, 146, 139, 128, 147, 140, 129, 154, 147, 136, 140, 133, 124, 0, 0, 0, 88, 85, 75, 56, 56, 45, 59, 56, 46, 54, 53, 44, 55, 57, 45, 43, 47, 32, 42, 44, 32, 37, 41, 28, 26, 28, 15, 41, 41, 29, 39, 36, 26, 46, 45, 34, 38, 37, 26, 36, 36, 27, 42, 39, 28, 35, 34, 26, 33, 32, 23, 32, 31, 22, 32, 31, 22, 29, 31, 21, 45, 42, 32, 45, 42, 32, 26, 24, 11, 29, 26, 13, 40, 38, 25, 26, 26, 12, 43, 45, 31, 46, 51, 36, 33, 35, 22, 43, 45, 33, 35, 39, 26, 40, 41, 29, 37, 39, 27, 31, 33, 21, 48, 48, 36, 56, 53, 42, 43, 43, 32, 45, 42, 32, 56, 53, 42, 56, 53, 42, 42, 42, 29, 49, 46, 33, 59, 58, 47, 56, 53, 40, 61, 59, 46, 59, 58, 47, 39, 39, 25, 52, 51, 40, 47, 46, 35, 34, 34, 22, 52, 54, 42, 60, 59, 48, 40, 39, 30, 47, 48, 36, 50, 50, 41, 55, 54, 46, 53, 52, 43, 52, 51, 40, 51, 48, 38, 49, 49, 38, 55, 54, 46, 65, 62, 54, 44, 41, 33, 49, 45, 37, 48, 47, 39, 64, 60, 52, 56, 52, 44, 57, 56, 50, 57, 56, 50, 54, 53, 44, 46, 45, 36, 75, 74, 65, 50, 52, 42, 56, 58, 46, 63, 63, 52, 67, 69, 57, 53, 55, 46, 60, 59, 50, 60, 59, 50, 55, 54, 46, 78, 78, 69, 63, 59, 51, 70, 69, 61, 58, 55, 47, 63, 59, 51, 61, 60, 51, 53, 52, 43, 61, 60, 51, 66, 65, 56, 52, 54, 44, 70, 69, 61, 68, 67, 58, 48, 47, 39, 45, 44, 35, 56, 58, 46, 69, 68, 60, 59, 61, 51, 51, 53, 43, 59, 61, 51, 48, 49, 40, 38, 42, 32, 55, 56, 47, 50, 52, 42, 45, 47, 37, 45, 47, 37, 49, 50, 41, 41, 40, 32, 40, 39, 30, 37, 39, 29, 41, 42, 33, 36, 38, 28, 27, 28, 19, 33, 35, 22, 37, 39, 27, 66, 68, 56, 72, 74, 62, 88, 91, 76, 118, 118, 104, 106, 108, 94, 117, 117, 103, 190, 190, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 156, 141, 165, 156, 141, 155, 149, 133, 155, 149, 135, 154, 147, 134, 147, 140, 127, 148, 141, 128, 142, 135, 124, 135, 128, 117, 132, 125, 114, 139, 132, 121, 127, 122, 110, 111, 110, 99, 9, 8, 0, 77, 76, 68, 61, 60, 49, 49, 49, 38, 59, 61, 51, 45, 49, 39, 31, 37, 24, 51, 55, 42, 27, 33, 22, 30, 34, 21, 33, 35, 22, 35, 37, 25, 24, 26, 14, 37, 39, 29, 35, 34, 26, 32, 31, 22, 32, 31, 22, 35, 31, 23, 40, 39, 30, 36, 36, 27, 37, 34, 26, 38, 35, 27, 37, 39, 27, 43, 40, 27, 41, 41, 27, 33, 33, 19, 41, 43, 29, 35, 35, 22, 38, 37, 26, 36, 38, 26, 30, 32, 20, 32, 36, 24, 37, 41, 26, 43, 45, 33, 28, 32, 17, 28, 30, 18, 50, 52, 40, 36, 36, 25, 47, 46, 35, 39, 38, 27, 52, 49, 39, 31, 30, 19, 46, 43, 33, 56, 56, 45, 50, 50, 37, 50, 47, 34, 53, 52, 41, 45, 44, 33, 52, 51, 40, 42, 44, 32, 50, 50, 39, 47, 48, 36, 47, 46, 35, 52, 54, 42, 40, 41, 29, 37, 39, 27, 50, 52, 40, 49, 51, 39, 40, 39, 28, 48, 48, 36, 38, 40, 30, 58, 55, 47, 52, 49, 41, 53, 50, 42, 60, 59, 50, 52, 49, 41, 54, 53, 44, 56, 55, 47, 49, 48, 42, 53, 55, 48, 54, 53, 44, 41, 40, 34, 56, 57, 48, 52, 54, 44, 45, 47, 37, 55, 56, 47, 52, 54, 44, 41, 42, 33, 53, 52, 43, 59, 61, 51, 76, 75, 66, 50, 50, 41, 45, 43, 37, 49, 50, 41, 56, 55, 47, 69, 68, 60, 55, 54, 48, 61, 58, 50, 39, 38, 31, 56, 55, 49, 49, 48, 40, 57, 57, 48, 53, 52, 43, 54, 53, 44, 56, 57, 48, 86, 88, 78, 34, 35, 26, 47, 48, 39, 33, 34, 25, 37, 38, 31, 40, 41, 32, 44, 46, 36, 40, 41, 32, 31, 33, 23, 54, 53, 44, 42, 42, 31, 33, 32, 23, 37, 39, 27, 45, 47, 35, 47, 46, 35, 53, 52, 41, 76, 76, 62, 77, 77, 64, 111, 111, 97, 110, 110, 96, 120, 120, 107, 123, 123, 107, 227, 228, 212, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 146, 137, 122, 150, 141, 126, 144, 135, 120, 143, 134, 119, 137, 128, 113, 132, 123, 110, 142, 132, 120, 132, 123, 112, 141, 131, 121, 137, 127, 117, 131, 124, 110, 128, 123, 111, 73, 75, 63, 51, 48, 40, 70, 70, 59, 57, 59, 47, 37, 39, 27, 38, 40, 30, 44, 46, 36, 43, 45, 33, 40, 41, 29, 45, 47, 35, 29, 31, 19, 30, 32, 20, 24, 26, 14, 35, 35, 24, 36, 36, 27, 25, 24, 15, 39, 38, 27, 25, 24, 13, 39, 36, 26, 21, 20, 12, 42, 38, 30, 31, 30, 19, 50, 47, 39, 35, 35, 24, 33, 31, 20, 23, 26, 11, 38, 38, 24, 35, 37, 25, 31, 33, 21, 47, 46, 35, 40, 41, 29, 45, 47, 37, 37, 39, 27, 39, 44, 29, 43, 47, 34, 43, 45, 31, 36, 40, 25, 28, 30, 18, 46, 50, 38, 43, 43, 32, 54, 52, 41, 51, 48, 38, 44, 41, 31, 57, 54, 43, 46, 46, 32, 40, 38, 25, 45, 43, 30, 51, 54, 39, 51, 48, 38, 36, 36, 25, 47, 48, 36, 48, 50, 38, 42, 44, 32, 55, 55, 43, 43, 45, 33, 42, 44, 32, 60, 59, 48, 42, 46, 33, 45, 47, 37, 48, 47, 39, 56, 55, 47, 56, 55, 47, 42, 41, 33, 54, 53, 46, 50, 49, 43, 44, 45, 38, 64, 63, 57, 63, 64, 57, 55, 54, 48, 43, 42, 36, 46, 45, 38, 43, 43, 34, 52, 50, 44, 49, 50, 41, 50, 52, 42, 45, 47, 37, 52, 54, 44, 48, 49, 40, 66, 67, 60, 51, 53, 43, 53, 55, 48, 51, 55, 44, 35, 36, 27, 56, 55, 49, 45, 47, 39, 42, 43, 36, 46, 45, 36, 53, 52, 43, 54, 53, 44, 47, 46, 37, 48, 48, 34, 47, 46, 35, 43, 43, 32, 39, 38, 29, 40, 39, 28, 39, 38, 29, 46, 45, 36, 43, 45, 35, 40, 41, 32, 40, 41, 32, 35, 36, 27, 39, 38, 29, 35, 34, 26, 34, 33, 25, 56, 56, 45, 66, 65, 54, 87, 86, 75, 81, 81, 67, 92, 92, 79, 108, 107, 94, 118, 118, 102, 113, 113, 100, 105, 105, 92, 227, 228, 212, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 142, 133, 118, 136, 127, 112, 134, 125, 110, 134, 124, 112, 134, 124, 112, 128, 118, 106, 129, 119, 109, 129, 119, 109, 135, 125, 115, 126, 116, 103, 115, 107, 96, 120, 113, 102, 34, 36, 24, 48, 50, 38, 57, 59, 47, 49, 51, 39, 55, 55, 43, 48, 49, 40, 43, 45, 33, 40, 42, 27, 35, 37, 25, 39, 43, 33, 24, 28, 15, 29, 31, 19, 33, 38, 25, 30, 29, 18, 27, 26, 18, 36, 36, 27, 34, 34, 22, 56, 52, 44, 39, 33, 24, 47, 44, 36, 23, 22, 11, 25, 24, 13, 36, 36, 27, 47, 48, 36, 31, 30, 19, 42, 42, 29, 23, 22, 11, 35, 39, 26, 42, 44, 32, 23, 27, 14, 28, 31, 21, 32, 36, 26, 37, 41, 30, 28, 31, 21, 36, 38, 26, 28, 30, 18, 38, 40, 28, 67, 64, 54, 50, 47, 36, 71, 66, 56, 48, 43, 31, 50, 50, 39, 60, 59, 48, 42, 39, 28, 36, 38, 26, 45, 44, 33, 61, 59, 48, 24, 26, 14, 55, 55, 43, 41, 41, 29, 55, 55, 43, 48, 47, 39, 49, 48, 40, 53, 52, 45, 51, 53, 43, 55, 56, 49, 47, 48, 41, 51, 52, 45, 51, 52, 45, 48, 49, 42, 50, 49, 43, 49, 48, 42, 52, 50, 44, 41, 40, 34, 56, 57, 50, 47, 48, 41, 47, 46, 39, 54, 53, 46, 54, 53, 46, 50, 50, 41, 54, 53, 46, 56, 55, 47, 45, 44, 35, 48, 49, 42, 35, 36, 27, 55, 56, 47, 45, 47, 37, 50, 52, 42, 48, 52, 44, 49, 50, 43, 65, 66, 59, 43, 46, 38, 48, 49, 42, 50, 53, 45, 48, 49, 42, 35, 38, 28, 43, 47, 36, 49, 50, 41, 42, 45, 35, 38, 40, 30, 58, 60, 50, 31, 33, 23, 44, 46, 36, 41, 42, 33, 47, 46, 35, 37, 39, 27, 39, 38, 27, 52, 51, 40, 33, 34, 25, 56, 56, 45, 77, 74, 61, 83, 81, 68, 80, 78, 65, 86, 83, 70, 87, 85, 72, 93, 90, 78, 95, 93, 80, 111, 109, 96, 128, 125, 112, 255, 255, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127, 121, 105, 134, 124, 112, 130, 121, 108, 121, 111, 99, 120, 110, 98, 128, 118, 106, 123, 113, 103, 128, 118, 108, 119, 112, 101, 120, 110, 100, 112, 105, 94, 99, 92, 81, 0, 0, 0, 74, 76, 64, 57, 61, 46, 44, 46, 34, 51, 53, 43, 39, 43, 33, 37, 41, 28, 43, 47, 36, 44, 48, 35, 33, 37, 27, 40, 45, 32, 29, 33, 20, 34, 36, 24, 34, 36, 24, 36, 36, 25, 43, 43, 32, 27, 29, 17, 33, 32, 21, 34, 29, 19, 42, 42, 31, 25, 24, 13, 26, 26, 14, 28, 27, 19, 33, 34, 25, 42, 38, 32, 41, 40, 32, 40, 39, 28, 27, 28, 21, 43, 45, 35, 25, 29, 17, 42, 43, 36, 46, 45, 36, 40, 39, 30, 41, 42, 33, 36, 38, 28, 33, 35, 22, 44, 46, 36, 40, 35, 23, 60, 51, 40, 42, 42, 31, 51, 46, 36, 56, 53, 40, 46, 45, 34, 49, 48, 40, 49, 49, 38, 45, 44, 33, 48, 48, 36, 59, 61, 49, 53, 55, 43, 29, 31, 19, 51, 53, 41, 50, 52, 40, 45, 47, 35, 41, 42, 33, 47, 48, 39, 48, 49, 40, 41, 42, 33, 39, 43, 33, 49, 50, 43, 44, 46, 36, 43, 44, 37, 45, 47, 39, 49, 50, 43, 63, 62, 56, 35, 36, 29, 50, 51, 44, 52, 54, 46, 41, 42, 35, 47, 48, 41, 43, 42, 36, 37, 38, 31, 40, 41, 34, 45, 47, 39, 48, 49, 40, 43, 44, 37, 42, 43, 36, 44, 46, 36, 50, 52, 42, 39, 43, 35, 44, 45, 38, 36, 37, 30, 40, 44, 36, 43, 49, 41, 43, 46, 38, 27, 33, 24, 46, 52, 41, 37, 38, 31, 34, 35, 26, 40, 41, 32, 38, 37, 28, 24, 23, 12, 33, 32, 21, 34, 34, 22, 32, 31, 20, 92, 92, 81, 59, 58, 47, 109, 109, 95, 88, 86, 73, 97, 95, 82, 121, 119, 103, 156, 153, 140, 113, 110, 95, 149, 147, 131, 129, 126, 114, 230, 228, 213, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 112, 101, 119, 112, 99, 119, 109, 98, 110, 101, 90, 115, 106, 93, 108, 99, 86, 117, 108, 97, 109, 99, 89, 109, 99, 89, 102, 93, 80, 125, 118, 107, 92, 87, 75, 0, 0, 0, 55, 60, 45, 55, 60, 47, 45, 47, 35, 36, 40, 27, 37, 39, 29, 43, 47, 34, 32, 36, 24, 38, 40, 28, 26, 30, 20, 37, 41, 28, 35, 39, 26, 30, 32, 20, 41, 43, 29, 38, 40, 28, 41, 43, 31, 31, 28, 18, 31, 28, 18, 36, 33, 22, 26, 24, 13, 40, 38, 27, 35, 35, 24, 37, 34, 24, 36, 36, 27, 38, 35, 27, 41, 40, 32, 33, 32, 23, 33, 32, 23, 43, 43, 34, 55, 56, 47, 22, 24, 14, 13, 14, 5, 47, 48, 39, 35, 36, 27, 33, 34, 25, 53, 52, 43, 40, 38, 27, 47, 41, 32, 53, 51, 38, 47, 45, 34, 45, 42, 32, 40, 38, 27, 53, 50, 40, 29, 31, 21, 50, 50, 41, 42, 42, 31, 52, 51, 42, 45, 44, 33, 43, 43, 32, 60, 59, 48, 50, 52, 40, 39, 43, 33, 44, 48, 37, 57, 61, 50, 33, 34, 25, 49, 50, 41, 47, 48, 39, 59, 63, 52, 26, 30, 20, 46, 50, 42, 64, 67, 59, 53, 56, 51, 41, 42, 37, 63, 64, 57, 41, 42, 35, 43, 44, 37, 45, 47, 39, 40, 41, 34, 34, 35, 28, 47, 48, 41, 48, 49, 42, 37, 38, 31, 45, 47, 39, 48, 49, 42, 59, 61, 51, 44, 46, 36, 39, 38, 29, 37, 39, 29, 41, 42, 33, 32, 36, 26, 42, 43, 36, 25, 29, 21, 27, 28, 21, 38, 40, 32, 26, 27, 20, 37, 38, 31, 43, 45, 35, 41, 43, 31, 35, 35, 24, 66, 65, 54, 74, 74, 60, 75, 75, 61, 85, 82, 69, 104, 102, 87, 99, 96, 83, 110, 108, 95, 115, 113, 98, 116, 114, 101, 212, 209, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 92, 74, 103, 97, 78, 102, 95, 81, 97, 90, 77, 98, 91, 80, 103, 96, 84, 96, 89, 78, 104, 92, 82, 101, 91, 81, 98, 91, 80, 94, 90, 76, 72, 74, 62, 6, 8, 0, 53, 58, 43, 45, 49, 36, 33, 38, 25, 33, 38, 25, 41, 43, 31, 26, 31, 18, 42, 45, 35, 15, 19, 6, 33, 38, 25, 28, 32, 19, 27, 29, 17, 30, 34, 21, 35, 39, 26, 23, 25, 13, 31, 30, 19, 51, 43, 34, 44, 41, 31, 42, 39, 28, 39, 36, 28, 36, 36, 25, 43, 43, 32, 32, 31, 22, 31, 30, 21, 44, 41, 33, 47, 46, 37, 49, 49, 38, 39, 36, 28, 40, 38, 27, 40, 41, 29, 33, 32, 23, 37, 39, 27, 30, 29, 18, 43, 45, 33, 23, 26, 11, 33, 31, 20, 33, 31, 18, 36, 33, 20, 60, 58, 45, 42, 39, 28, 30, 29, 18, 40, 39, 28, 43, 40, 29, 43, 40, 29, 56, 58, 46, 36, 38, 26, 50, 52, 40, 31, 33, 21, 46, 45, 34, 43, 43, 32, 36, 40, 29, 40, 41, 34, 50, 53, 45, 44, 45, 38, 31, 33, 25, 47, 51, 43, 55, 56, 49, 39, 45, 36, 38, 42, 32, 67, 71, 63, 41, 42, 35, 44, 47, 41, 43, 46, 40, 39, 38, 31, 42, 43, 36, 34, 35, 28, 39, 43, 35, 31, 37, 28, 38, 39, 34, 44, 45, 38, 33, 31, 27, 31, 29, 23, 34, 35, 28, 28, 27, 21, 34, 33, 25, 33, 32, 23, 41, 40, 32, 38, 40, 30, 27, 28, 19, 53, 55, 46, 38, 40, 32, 34, 35, 28, 58, 59, 52, 38, 40, 32, 77, 78, 71, 88, 87, 78, 87, 86, 77, 102, 101, 90, 83, 81, 68, 91, 88, 75, 104, 102, 89, 97, 92, 78, 130, 126, 112, 242, 238, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 91, 79, 95, 88, 76, 87, 85, 72, 96, 89, 76, 103, 98, 86, 84, 77, 66, 97, 90, 79, 89, 89, 75, 91, 86, 76, 86, 83, 70, 85, 82, 71, 41, 43, 31, 57, 61, 48, 48, 53, 38, 26, 33, 19, 51, 53, 41, 38, 40, 30, 48, 48, 36, 34, 36, 24, 30, 32, 22, 36, 36, 25, 30, 32, 20, 33, 34, 25, 36, 38, 26, 37, 39, 27, 44, 41, 31, 23, 22, 11, 17, 21, 8, 44, 27, 21, 31, 33, 21, 36, 36, 25, 49, 45, 37, 26, 25, 16, 29, 31, 19, 39, 36, 28, 32, 31, 20, 42, 39, 28, 46, 43, 35, 32, 31, 20, 35, 34, 26, 40, 37, 29, 32, 36, 24, 26, 27, 18, 29, 33, 22, 33, 32, 21, 22, 29, 15, 49, 49, 36, 58, 43, 36, 31, 29, 16, 47, 37, 29, 35, 39, 26, 21, 23, 11, 33, 38, 25, 38, 42, 29, 39, 46, 30, 57, 59, 47, 35, 39, 26, 48, 50, 38, 40, 41, 29, 32, 37, 22, 45, 49, 36, 41, 41, 29, 45, 44, 33, 35, 36, 27, 50, 54, 43, 32, 36, 28, 31, 33, 25, 40, 44, 36, 38, 41, 34, 31, 34, 29, 52, 54, 46, 38, 41, 36, 52, 55, 49, 57, 60, 54, 38, 43, 37, 55, 56, 51, 38, 41, 36, 45, 46, 41, 34, 35, 30, 44, 47, 39, 37, 38, 31, 45, 43, 37, 42, 41, 35, 48, 47, 39, 34, 35, 28, 40, 39, 32, 82, 81, 72, 68, 67, 58, 70, 69, 61, 90, 89, 80, 84, 84, 72, 86, 83, 75, 91, 90, 82, 88, 85, 77, 108, 107, 96, 104, 102, 91, 102, 99, 89, 115, 112, 100, 186, 181, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 84, 68, 87, 85, 72, 82, 80, 67, 78, 78, 65, 89, 87, 72, 80, 78, 63, 82, 80, 67, 67, 67, 51, 84, 83, 75, 76, 76, 60, 68, 68, 52, 16, 18, 6, 74, 76, 66, 35, 37, 23, 38, 42, 29, 36, 38, 26, 56, 55, 47, 54, 52, 41, 41, 41, 29, 55, 54, 46, 31, 30, 19, 19, 24, 11, 29, 31, 19, 30, 29, 18, 35, 37, 25, 34, 34, 22, 19, 21, 8, 38, 37, 26, 22, 26, 13, 30, 32, 20, 29, 31, 21, 54, 51, 43, 28, 35, 21, 57, 57, 46, 35, 31, 23, 33, 30, 22, 35, 31, 23, 31, 30, 21, 32, 29, 19, 38, 35, 27, 35, 29, 22, 21, 23, 13, 24, 26, 16, 35, 38, 28, 25, 24, 15, 18, 22, 10, 35, 32, 21, 29, 31, 17, 22, 30, 13, 35, 32, 19, 12, 14, 2, 36, 36, 25, 19, 21, 8, 39, 43, 31, 30, 34, 21, 29, 31, 17, 39, 43, 31, 42, 44, 32, 32, 31, 20, 23, 27, 14, 33, 35, 22, 37, 39, 27, 36, 40, 29, 33, 37, 29, 43, 51, 42, 33, 39, 30, 14, 32, 20, 20, 28, 18, 41, 47, 40, 40, 43, 38, 42, 43, 36, 42, 45, 39, 41, 42, 37, 38, 41, 34, 44, 45, 42, 54, 52, 48, 44, 45, 40, 56, 57, 52, 47, 45, 41, 55, 54, 48, 69, 70, 63, 80, 79, 70, 66, 65, 56, 109, 108, 99, 73, 72, 63, 84, 83, 75, 103, 100, 92, 95, 94, 83, 105, 105, 94, 96, 95, 84, 97, 95, 84, 152, 151, 140, 223, 220, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 84, 68, 76, 76, 62, 76, 76, 62, 78, 80, 66, 79, 76, 64, 77, 74, 59, 62, 62, 46, 77, 74, 61, 76, 76, 64, 74, 72, 57, 80, 80, 64, 9, 12, 0, 59, 68, 54, 46, 46, 32, 54, 41, 34, 19, 21, 8, 40, 42, 27, 48, 48, 36, 33, 35, 22, 28, 31, 21, 17, 21, 11, 24, 28, 15, 28, 28, 17, 39, 38, 27, 38, 37, 26, 31, 28, 18, 27, 27, 15, 39, 36, 26, 42, 39, 28, 21, 23, 11, 24, 26, 14, 17, 19, 7, 25, 29, 17, 20, 22, 10, 30, 29, 20, 36, 36, 27, 32, 31, 22, 28, 27, 19, 19, 18, 9, 31, 30, 21, 24, 23, 14, 28, 30, 18, 23, 25, 15, 31, 30, 21, 26, 26, 14, 24, 28, 15, 12, 21, 6, 25, 30, 15, 25, 35, 18, 38, 41, 26, 37, 40, 25, 38, 37, 26, 30, 32, 20, 17, 27, 10, 34, 41, 25, 38, 41, 26, 20, 29, 12, 33, 40, 24, 31, 33, 21, 35, 39, 24, 30, 32, 20, 33, 35, 22, 32, 36, 24, 35, 36, 27, 50, 47, 39, 39, 36, 28, 46, 45, 38, 39, 38, 31, 50, 51, 44, 42, 45, 37, 53, 55, 48, 40, 41, 34, 56, 57, 50, 70, 69, 61, 67, 64, 58, 87, 84, 76, 83, 80, 72, 88, 85, 75, 100, 97, 89, 105, 104, 96, 103, 102, 93, 96, 93, 83, 106, 103, 92, 121, 118, 107, 138, 135, 125, 222, 219, 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, ]}
output0 = {i85: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 245, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ]}
# Instantiate an example
Example((input0, output0))
+"""
diff --git a/tests/nnapi/specs/V1_0/resize_bilinear.mod.py b/tests/nnapi/specs/V1_0/resize_bilinear.mod.py
index c596407ac..17fb34007 100644
--- a/tests/nnapi/specs/V1_0/resize_bilinear.mod.py
+++ b/tests/nnapi/specs/V1_0/resize_bilinear.mod.py
@@ -2,9 +2,9 @@
model = Model()
i1 = Input("op1", "TENSOR_FLOAT32", "{1, 2, 2, 1}")
i2 = Output("op2", "TENSOR_FLOAT32", "{1, 3, 3, 1}")
-h = Int32Scalar("height", 3) # an int32_t scalar bias
w = Int32Scalar("width", 3)
-model = model.Operation("RESIZE_BILINEAR", i1, h, w).To(i2)
+h = Int32Scalar("height", 3)
+model = model.Operation("RESIZE_BILINEAR", i1, w, h).To(i2)
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/V1_0/resize_bilinear_2.mod.py b/tests/nnapi/specs/V1_0/resize_bilinear_2.mod.py
index 06a33b865..4035b4371 100644
--- a/tests/nnapi/specs/V1_0/resize_bilinear_2.mod.py
+++ b/tests/nnapi/specs/V1_0/resize_bilinear_2.mod.py
@@ -18,9 +18,9 @@
model = Model()
i1 = Input("op1", "TENSOR_FLOAT32", "{1, 2, 2, 2}")
i2 = Output("op2", "TENSOR_FLOAT32", "{1, 3, 3, 2}")
-h = Int32Scalar("height", 3) # an int32_t scalar bias
w = Int32Scalar("width", 3)
-model = model.Operation("RESIZE_BILINEAR", i1, h, w).To(i2)
+h = Int32Scalar("height", 3)
+model = model.Operation("RESIZE_BILINEAR", i1, w, h).To(i2)
# Example 1. Input in operand 0,
input0 = {i1: # input 0
diff --git a/tests/nnapi/specs/V1_0/svdf_bias_present.mod.py b/tests/nnapi/specs/V1_0/svdf_bias_present.mod.py
new file mode 100644
index 000000000..ae7d1e7b8
--- /dev/null
+++ b/tests/nnapi/specs/V1_0/svdf_bias_present.mod.py
@@ -0,0 +1,138 @@
+#
+# Copyright (C) 2019 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+batches = 2
+features = 4
+rank = 1
+units = int(features / rank)
+input_size = 3
+memory_size = 10
+
+model = Model()
+
+input = Input("input", "TENSOR_FLOAT32", "{%d, %d}" % (batches, input_size))
+weights_feature = Input("weights_feature", "TENSOR_FLOAT32", "{%d, %d}" % (features, input_size))
+weights_time = Input("weights_time", "TENSOR_FLOAT32", "{%d, %d}" % (features, memory_size))
+bias = Input("bias", "TENSOR_FLOAT32", "{%d}" % (units))
+state_in = Input("state_in", "TENSOR_FLOAT32", "{%d, %d}" % (batches, memory_size*features))
+rank_param = Int32Scalar("rank_param", rank)
+activation_param = Int32Scalar("activation_param", 0)
+state_out = IgnoredOutput("state_out", "TENSOR_FLOAT32", "{%d, %d}" % (batches, memory_size*features))
+output = Output("output", "TENSOR_FLOAT32", "{%d, %d}" % (batches, units))
+
+model = model.Operation("SVDF", input, weights_feature, weights_time, bias, state_in,
+ rank_param, activation_param).To([state_out, output])
+
+input0 = {
+ input: [],
+ weights_feature: [
+ -0.31930989, -0.36118156, 0.0079667, 0.37613347,
+ 0.22197971, 0.12416199, 0.27901134, 0.27557442,
+ 0.3905206, -0.36137494, -0.06634006, -0.10640851
+ ],
+ weights_time: [
+ -0.31930989, 0.37613347, 0.27901134, -0.36137494, -0.36118156,
+ 0.22197971, 0.27557442, -0.06634006, 0.0079667, 0.12416199,
+
+ 0.3905206, -0.10640851, -0.0976817, 0.15294972, 0.39635518,
+ -0.02702999, 0.39296314, 0.15785322, 0.21931258, 0.31053296,
+
+ -0.36916667, 0.38031587, -0.21580373, 0.27072677, 0.23622236,
+ 0.34936687, 0.18174365, 0.35907319, -0.17493086, 0.324846,
+
+ -0.10781813, 0.27201805, 0.14324132, -0.23681851, -0.27115166,
+ -0.01580888, -0.14943552, 0.15465137, 0.09784451, -0.0337657
+ ],
+ bias: [1.0, 2.0, 3.0, 4.0],
+ state_in: [0 for _ in range(batches * memory_size * features)],
+}
+
+test_inputs = [
+ 0.12609188, -0.46347019, -0.89598465,
+ 0.12609188, -0.46347019, -0.89598465,
+
+ 0.14278367, -1.64410412, -0.75222826,
+ 0.14278367, -1.64410412, -0.75222826,
+
+ 0.49837467, 0.19278903, 0.26584083,
+ 0.49837467, 0.19278903, 0.26584083,
+
+ -0.11186574, 0.13164264, -0.05349274,
+ -0.11186574, 0.13164264, -0.05349274,
+
+ -0.68892461, 0.37783599, 0.18263303,
+ -0.68892461, 0.37783599, 0.18263303,
+
+ -0.81299269, -0.86831826, 1.43940818,
+ -0.81299269, -0.86831826, 1.43940818,
+
+ -1.45006323, -0.82251364, -1.69082689,
+ -1.45006323, -0.82251364, -1.69082689,
+
+ 0.03966608, -0.24936394, -0.77526885,
+ 0.03966608, -0.24936394, -0.77526885,
+
+ 0.11771342, -0.23761693, -0.65898693,
+ 0.11771342, -0.23761693, -0.65898693,
+
+ -0.89477462, 1.67204106, -0.53235275,
+ -0.89477462, 1.67204106, -0.53235275
+]
+
+golden_outputs = [
+ 1.014899, 1.9482339, 2.856275, 3.99728117,
+ 1.014899, 1.9482339, 2.856275, 3.99728117,
+
+ 1.068281, 1.837783, 2.847732, 4.00323521,
+ 1.068281, 1.837783, 2.847732, 4.00323521,
+
+ 0.9682179, 1.9666911, 3.0609602, 4.0333759,
+ 0.9682179, 1.9666911, 3.0609602, 4.0333759,
+
+ 0.99376901, 1.922299, 2.608807, 3.9863309,
+ 0.99376901, 1.922299, 2.608807, 3.9863309,
+
+ 1.201551, 1.835393, 2.820538, 3.9407261,
+ 1.201551, 1.835393, 2.820538, 3.9407261,
+
+ 1.0886511, 1.9124599, 2.730717, 4.0281379,
+ 1.0886511, 1.9124599, 2.730717, 4.0281379,
+
+ 0.798826, 1.413855, 2.371376, 3.9669588,
+ 0.798826, 1.413855, 2.371376, 3.9669588,
+
+ 0.9160904, 1.700671, 3.108746, 4.109808,
+ 0.9160904, 1.700671, 3.108746, 4.109808,
+
+ 1.419114, 1.762176, 2.577373, 4.175115,
+ 1.419114, 1.762176, 2.577373, 4.175115,
+
+ 1.36726, 1.477697, 2.543498, 3.824525,
+ 1.36726, 1.477697, 2.543498, 3.824525
+]
+
+output0 = {state_out: [0 for _ in range(batches * memory_size * features)],
+ output: []}
+
+# TODO: enable more data points after fixing the reference issue
+for i in range(1):
+ batch_start = i * input_size * batches
+ batch_end = batch_start + input_size * batches
+ input0[input] = test_inputs[batch_start:batch_end]
+ golden_start = i * units * batches
+ golden_end = golden_start + units * batches
+ output0[output] = golden_outputs[golden_start:golden_end]
+ Example((input0, output0))
diff --git a/tests/nnapi/specs/generate_test.sh b/tests/nnapi/specs/generate_test.sh
index 2d7e5ccf9..2f1afbc66 100755
--- a/tests/nnapi/specs/generate_test.sh
+++ b/tests/nnapi/specs/generate_test.sh
@@ -47,7 +47,7 @@ function generate_one_testcase {
BASENAME=${BASENAME%".mod.py"};
local EXAMPLE="-e $NNAPI_BASE/$TEST_DIR/src/generated/examples/$BASENAME.example.cpp"
- $NNAPI_BASE/externals/nnapi_test_generator/test_generator.py ./`basename $1`\
+ $NNAPI_BASE/$TEST_DIR/nnapi_test_generator/android-p/test_generator.py ./`basename $1`\
-m $NNAPI_BASE/$TEST_DIR/src/generated/models/$BASENAME.model.cpp $EXAMPLE
ret=$?
# Paste these lines into TestGenerated.cpp
diff --git a/tests/nnapi/src/TestValidation.cpp b/tests/nnapi/src/TestValidation.cpp
index 2d605bb7e..19db43800 100644
--- a/tests/nnapi/src/TestValidation.cpp
+++ b/tests/nnapi/src/TestValidation.cpp
@@ -23,6 +23,9 @@
#include <sys/mman.h>
#include <stdio.h>
#include <stdlib.h>
+// Note: neurun is allow to set activation operand constant only,
+// so we change test to set operand #2 to constant. (ANEURALNETWORKS_FUSED_NONE)
+// And model's input is changed: [0, 1, 2] -> [0, 1]
// This file tests all the validations done by the Neural Networks API.
namespace {
@@ -84,6 +87,9 @@ class ValidationTestIdentify : public ValidationTestModel {
ASSERT_EQ(ANeuralNetworksModel_addOperand(mModel, &tensorType), ANEURALNETWORKS_NO_ERROR);
ASSERT_EQ(ANeuralNetworksModel_addOperand(mModel, &scalarType), ANEURALNETWORKS_NO_ERROR);
ASSERT_EQ(ANeuralNetworksModel_addOperand(mModel, &tensorType), ANEURALNETWORKS_NO_ERROR);
+ // neurun is allow to set activation operand constant only
+ int32_t act = ANEURALNETWORKS_FUSED_NONE;
+ ASSERT_EQ(ANeuralNetworksModel_setOperandValue(mModel, 2, &act, sizeof(act)), ANEURALNETWORKS_NO_ERROR);
uint32_t inList[3]{0, 1, 2};
uint32_t outList[1]{3};
ASSERT_EQ(ANeuralNetworksModel_addOperation(mModel, ANEURALNETWORKS_ADD, 3, inList, 1,
@@ -112,12 +118,15 @@ protected:
ASSERT_EQ(ANeuralNetworksModel_addOperand(mModel, &tensorType), ANEURALNETWORKS_NO_ERROR);
ASSERT_EQ(ANeuralNetworksModel_addOperand(mModel, &scalarType), ANEURALNETWORKS_NO_ERROR);
ASSERT_EQ(ANeuralNetworksModel_addOperand(mModel, &tensorType), ANEURALNETWORKS_NO_ERROR);
+ // neurun is allow to set activation operand constant only
+ int32_t act = ANEURALNETWORKS_FUSED_NONE;
+ ASSERT_EQ(ANeuralNetworksModel_setOperandValue(mModel, 2, &act, sizeof(act)), ANEURALNETWORKS_NO_ERROR);
uint32_t inList[3]{0, 1, 2};
uint32_t outList[1]{3};
ASSERT_EQ(ANeuralNetworksModel_addOperation(mModel, ANEURALNETWORKS_ADD, 3, inList, 1,
outList),
ANEURALNETWORKS_NO_ERROR);
- ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 3, inList, 1, outList),
+ ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 2, inList, 1, outList),
ANEURALNETWORKS_NO_ERROR);
ASSERT_EQ(ANeuralNetworksModel_finish(mModel), ANEURALNETWORKS_NO_ERROR);
@@ -390,44 +399,44 @@ TEST_F(ValidationTestModel, CreateCompilation) {
}
TEST_F(ValidationTestIdentify, Ok) {
- uint32_t inList[3]{0, 1, 2};
+ uint32_t inList[2]{0, 1};
uint32_t outList[1]{3};
- ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 3, inList, 1, outList),
+ ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 2, inList, 1, outList),
ANEURALNETWORKS_NO_ERROR);
ASSERT_EQ(ANeuralNetworksModel_finish(mModel), ANEURALNETWORKS_NO_ERROR);
}
TEST_F(ValidationTestIdentify, InputIsOutput) {
- uint32_t inList[3]{0, 1, 2};
+ uint32_t inList[2]{0, 1};
uint32_t outList[2]{3, 0};
- ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 3, inList, 2, outList),
+ ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 2, inList, 2, outList),
ANEURALNETWORKS_BAD_DATA);
}
TEST_F(ValidationTestIdentify, OutputIsInput) {
- uint32_t inList[4]{0, 1, 2, 3};
+ uint32_t inList[3]{0, 1, 3};
uint32_t outList[1]{3};
- ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 4, inList, 1, outList),
+ ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 3, inList, 1, outList),
ANEURALNETWORKS_BAD_DATA);
}
TEST_F(ValidationTestIdentify, DuplicateInputs) {
- uint32_t inList[4]{0, 1, 2, 0};
+ uint32_t inList[3]{0, 1, 0};
uint32_t outList[1]{3};
- ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 4, inList, 1, outList),
+ ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 3, inList, 1, outList),
ANEURALNETWORKS_BAD_DATA);
}
TEST_F(ValidationTestIdentify, DuplicateOutputs) {
- uint32_t inList[3]{0, 1, 2};
+ uint32_t inList[2]{0, 1};
uint32_t outList[2]{3, 3};
- ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 3, inList, 2, outList),
+ ASSERT_EQ(ANeuralNetworksModel_identifyInputsAndOutputs(mModel, 2, inList, 2, outList),
ANEURALNETWORKS_BAD_DATA);
}